@co0ontty/wand 1.60.4 → 1.60.5

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 = "c87a0695286e";
6
+ export const EMBEDDED_WEB_ASSET_VERSION = "eca5e7804cda";
7
7
  export const EMBEDDED_WEB_ASSETS = {
8
- scriptsJs: decode("InVzZSBzdHJpY3QiOygoKT0+e3ZhciBhdT0id2FuZC1sZWdhY3ktcHdhLWNsZWFudXAtdjEiLHdsPVsid2FuZC1zdGF0aWMtIiwid2FuZC1ydW50aW1lLSJdO2Z1bmN0aW9uIGpyKGUpe2lmKCFlKXJldHVybiExO3RyeXtjb25zdCB0PW5ldyBVUkwoZS5zY3JpcHRVUkwsbG9jYXRpb24uaHJlZik7cmV0dXJuIHQub3JpZ2luPT09bG9jYXRpb24ub3JpZ2luJiZ0LnBhdGhuYW1lPT09Ii9zdy5qcyJ9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIENsKGUpe3JldHVybiBqcihlLmluc3RhbGxpbmcpfHxqcihlLndhaXRpbmcpfHxqcihlLmFjdGl2ZSl9ZnVuY3Rpb24gQmwoKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKGF1KT09PSJkb25lIn1jYXRjaHtyZXR1cm4hMX19ZnVuY3Rpb24gRGwoKXt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oYXUsImRvbmUiKX1jYXRjaHt9fWFzeW5jIGZ1bmN0aW9uIGtsKCl7aWYoISgic2VydmljZVdvcmtlciJpbiBuYXZpZ2F0b3IpKXJldHVybiEwO3RyeXtjb25zdCB0PShhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5nZXRSZWdpc3RyYXRpb25zKCkpLmZpbHRlcihDbCk7cmV0dXJuIGF3YWl0IFByb21pc2UuYWxsKHQubWFwKHI9PnIudW5yZWdpc3RlcigpKSksITB9Y2F0Y2h7cmV0dXJuITF9fWFzeW5jIGZ1bmN0aW9uIEFsKCl7aWYoISgiY2FjaGVzImluIHdpbmRvdykpcmV0dXJuITA7dHJ5e2NvbnN0IHQ9KGF3YWl0IGNhY2hlcy5rZXlzKCkpLmZpbHRlcihyPT53bC5zb21lKGk9PnIuc3RhcnRzV2l0aChpKSkpO3JldHVybiBhd2FpdCBQcm9taXNlLmFsbCh0Lm1hcChyPT5jYWNoZXMuZGVsZXRlKHIpKSksITB9Y2F0Y2h7cmV0dXJuITF9fWFzeW5jIGZ1bmN0aW9uIHhsKCl7aWYoQmwoKSlyZXR1cm47Y29uc3QgZT0ic2VydmljZVdvcmtlciJpbiBuYXZpZ2F0b3ImJmpyKG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIpLFt0LHJdPWF3YWl0IFByb21pc2UuYWxsKFtrbCgpLEFsKCldKTshdHx8IXJ8fChEbCgpLGUmJmxvY2F0aW9uLnJlbG9hZCgpKX14bCgpO3ZhciBJbT0iJHtlc2NhcGVIdG1sKGNvbmZpZ1BhdGgpfSIsTGk9IndhbmQtY2hhdC1leHBhbmQtc3RhdGUtdjEiLFJyPVtmdW5jdGlvbigpe31dOyhmdW5jdGlvbigpe3RyeXt2YXIgdD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1scy1zY2hlbWEiKSxyPXQ9PW51bGw/MDpwYXJzZUludCh0LDEwKTtyPj0wfHwocj0wKTtmb3IodmFyIGk9cjtpPFJyLmxlbmd0aDtpKyspdHJ5e1JyW2ldKCl9Y2F0Y2h7fXI8UnIubGVuZ3RoJiZsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1scy1zY2hlbWEiLFN0cmluZyhSci5sZW5ndGgpKX1jYXRjaHt9fSkoKTtmdW5jdGlvbiBNaShlLHQpe3RyeXt2YXIgcj1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKTtyZXR1cm4gcj09PSJ0cnVlIj8hMDpyPT09ImZhbHNlIj8hMTp0fWNhdGNoe3JldHVybiB0fX1mdW5jdGlvbiBTZShlLHQpe3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbShlLFN0cmluZyghIXQpKX1jYXRjaHt9fXZhciBuPXtzZWxlY3RlZElkOihmdW5jdGlvbigpe3RyeXt2YXIgZT1uZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKSx0PWUuc2VhcmNoUGFyYW1zLmdldCgic2Vzc2lvbiIpO2lmKHQpcmV0dXJuIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iLHQpLGUuc2VhcmNoUGFyYW1zLmRlbGV0ZSgic2Vzc2lvbiIpLGhpc3RvcnkucmVwbGFjZVN0YXRlKGhpc3Rvcnkuc3RhdGUsIiIsZS50b1N0cmluZygpKSx0fWNhdGNoe310cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iKXx8bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19KSgpLHBvbGxUaW1lcjpudWxsLGNvbmZpZzpudWxsLHNlc3Npb25zOltdLHN1Z2dlc3Rpb25UaW1lcjpudWxsLHRlcm1pbmFsOm51bGwsdGVybWluYWxGaXRJblByb2dyZXNzOiExLHRlcm1pbmFsU2Vzc2lvbklkOm51bGwsdGVybWluYWxPdXRwdXQ6IiIsdGVybWluYWxPdXRwdXRNYXJrZXI6MCx0ZXJtaW5hbExpdmVTdHJlYW1TZXNzaW9uczp7fSxzeW5jT3V0cHV0QnVmZmVyOm51bGwsc3luY091dHB1dERlYWRsaW5lOjAsc3luY0ZyYW1pbmdSZXNpZHVlOiExLGxhc3RDaHVua0F0OjAsdGVybWluYWxIZWFsdGhUaW1lcjpudWxsLGxhc3RUZXJtaW5hbFJlc3luY0F0OjAsdGVybWluYWxBdXRvRm9sbG93OiEwLHRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw6MCx0ZXJtaW5hbFNjcm9sbElkbGVUaW1lcjpudWxsLHRlcm1pbmFsU2Nyb2xsVGhyZXNob2xkOjEyLHNob3dUZXJtaW5hbEp1bXBUb0JvdHRvbTohMSx0ZXJtaW5hbFZpZXdwb3J0RWw6bnVsbCx0ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcjpudWxsLHRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXI6bnVsbCx0ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXI6bnVsbCx0ZXJtaW5hbFRvdWNoU3RhcnRZOjAsdGVybWluYWxDb21wb3Npbmc6ITEscmVzaXplT2JzZXJ2ZXI6bnVsbCxyZXNpemVIYW5kbGVyOm51bGwscmVzaXplVGltZXI6bnVsbCxpbnB1dFF1ZXVlOlByb21pc2UucmVzb2x2ZSgpLHBlbmRpbmdNZXNzYWdlczpbXSxtZXNzYWdlUXVldWU6W10sY3Jvc3NTZXNzaW9uUXVldWU6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWNyb3NzLXNlc3Npb24tcXVldWUiKSx0PWU/SlNPTi5wYXJzZShlKTpbXTtyZXR1cm4gQXJyYXkuaXNBcnJheSh0KT90OltdfWNhdGNoe3JldHVybltdfX0pKCksc3RydWN0dXJlZElucHV0UXVldWU6W10scXVldWVCYXJIb3ZlckluZGV4Om51bGwscXVldWVCYXJEcmFnOm51bGwsZHJhZnRzOnt9LGlzU3luY2luZ0lucHV0Qm94OiExLGxvZ2luUGVuZGluZzohMSxsb2dpbkNoZWNrZWQ6ITEsYm9vdHN0cmFwcGluZzohMCxzZXNzaW9uc0RyYXdlck9wZW46TWkoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksc2lkZWJhclBpbm5lZDpNaSgid2FuZC1zaWRlYmFyLXBpbm5lZCIsITApLHNpZGViYXJDb2xsYXBzZWQ6TWkoIndhbmQtc2lkZWJhci1jb2xsYXBzZWQiLCExKSxtb2RhbE9wZW46ITEscHJlc2V0VmFsdWU6IiIsY3dkVmFsdWU6IiIsbW9kZVZhbHVlOiJtYW5hZ2VkIixjaGF0TW9kZToibWFuYWdlZCIsY2hhdE1vZGVsOihmdW5jdGlvbigpe3RyeXtyZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtY2hhdC1tb2RlbCIpfHwiIn1jYXRjaHtyZXR1cm4iIn19KSgpLGNoYXRUaGlua2luZzooZnVuY3Rpb24oKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtdGhpbmtpbmctZWZmb3J0Iil8fCJvZmYiO3JldHVybiBlPT09Im9mZiJ8fGU9PT0ic3RhbmRhcmQifHxlPT09ImRlZXAifHxlPT09Im1heCI/ZToib2ZmIn1jYXRjaHtyZXR1cm4ib2ZmIn19KSgpLGF2YWlsYWJsZU1vZGVsczpbXSxhdmFpbGFibGVDb2RleE1vZGVsczpbXSxtb2RlbHNSZWZyZXNoaW5nOiExLHNlc3Npb25DcmVhdGVLaW5kOiJzdHJ1Y3R1cmVkIixzZXNzaW9uQ3JlYXRlV29ya3RyZWU6ITEsc2Vzc2lvblRvb2w6ImNsYXVkZSIsYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZDpudWxsLHdvcmt0cmVlTWVyZ2VDaGVja1Jlc3VsdDpudWxsLHdvcmt0cmVlTWVyZ2VMb2FkaW5nOiExLHdvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nOiExLHdvcmt0cmVlTWVyZ2VFcnJvcjoiIixwcmVmZXJyZWRDb21tYW5kOiJjbGF1ZGUiLHN0cnVjdHVyZWRSdW5uZXI6ImNsYXVkZS1jbGktcHJpbnQiLGxhc3RSZXNpemU6e2NvbHM6MCxyb3dzOjB9LGlzT25saW5lOm5hdmlnYXRvci5vbkxpbmUsd3M6bnVsbCx3c0Nvbm5lY3RlZDohMSxsYXN0V3NNZXNzYWdlQXQ6MCx3c0hlYXJ0YmVhdENoZWNrVGltZXI6bnVsbCxfdXBkYXRlQnViYmxlU2hvd246ITEsbm90aWZpY2F0aW9uSGlzdG9yeTp7fSxkZWxheWVkTm90aWZpY2F0aW9uVGltZXI6bnVsbCxub3RpZlNvdW5kOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1ub3RpZi1zb3VuZCIpO3JldHVybiBlPT09bnVsbD8hMDplPT09InRydWUifWNhdGNoe3JldHVybiEwfX0pKCksbm90aWZWb2x1bWU6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLW5vdGlmLXZvbHVtZSIpO3JldHVybiBlPT09bnVsbD84MDpNYXRoLm1heCgwLE1hdGgubWluKDEwMCxwYXJzZUludChlLDEwKXx8ODApKX1jYXRjaHtyZXR1cm4gODB9fSkoKSxub3RpZkJ1YmJsZTooZnVuY3Rpb24oKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtbm90aWYtYnViYmxlIik7cmV0dXJuIGU9PT1udWxsPyEwOmU9PT0idHJ1ZSJ9Y2F0Y2h7cmV0dXJuITB9fSkoKSx0b29sQ29udGVudENhY2hlOnt9LGxhc3RTZXFCeVNlc3Npb246e30sY3VycmVudFZpZXc6InRlcm1pbmFsIix0ZXJtaW5hbFNjYWxlOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC10ZXJtaW5hbC1zY2FsZSIpO3JldHVybiBlP3BhcnNlRmxvYXQoZSk6MX1jYXRjaHtyZXR1cm4gMX19KSgpLHRlcm1pbmFsQmFzZUZvbnRTaXplOjEzLGtleWJvYXJkUG9wdXBPcGVuOiExLGZpbGVQYW5lbE9wZW46KGZ1bmN0aW9uKCl7dHJ5e3JldHVybiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1maWxlLXBhbmVsLW9wZW4iKT09PSJ0cnVlIn1jYXRjaHtyZXR1cm4hMX19KSgpLHRvcGJhck1vcmVPcGVuOiExLGdpdFN0YXR1czpudWxsLGdpdFN0YXR1c1Nlc3Npb25JZDpudWxsLGdpdFN0YXR1c0xvYWRpbmc6ITEsZ2l0U3RhdHVzSW5mbGlnaHQ6bnVsbCxnaXRTdGF0dXNMYXN0RmV0Y2hBdDowLHF1aWNrQ29tbWl0T3BlbjohMSxxdWlja0NvbW1pdFN1Ym1pdHRpbmc6ITEscXVpY2tDb21taXRHZW5lcmF0aW5nOiExLHF1aWNrQ29tbWl0RXJyb3I6IiIscXVpY2tDb21taXRGb3JtOntjdXN0b21NZXNzYWdlOiIiLHRhZzoiIix0YWdFZGl0ZWQ6ITF9LHF1aWNrQ29tbWl0UHVzaGluZzohMSxxdWlja0NvbW1pdFB1c2hFcnJvcjoiIixxdWlja0NvbW1pdFJlc3VsdDpudWxsLHF1aWNrQ29tbWl0RHJhZ0FjdGlvbjoiY29tbWl0IixxdWlja0NvbW1pdFN1Ym1vZHVsZUludGVudDohMSxjaGF0U3RpY2tUb0JvdHRvbTohMCxjaGF0VW5yZWFkQ291bnQ6MCxjaGF0VW5yZWFkU3RhcnRJbmRleDotMSxjaGF0U2Nyb2xsVGhyZXNob2xkOjE2MCxjaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw6ITEsY2hhdFNjcm9sbEVsZW1lbnQ6bnVsbCxjaGF0U2Nyb2xsSGFuZGxlcjpudWxsLGNoYXRTY3JvbGxXaGVlbEhhbmRsZXI6bnVsbCxjaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXI6bnVsbCxjaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcjpudWxsLGNoYXRUb3VjaFN0YXJ0WTowLGNoYXRJbml0aWFsUmVuZGVyRG9uZTohMSxsYXN0Rm9yZWdyb3VuZFN5bmNBdDowLGZvcmVncm91bmRTeW5jVGltZXI6bnVsbCx3c1JlY29ubmVjdEF0dGVtcHRzOjAsd3NSZWNvbm5lY3RUaW1lcjpudWxsLGN1cnJlbnRNZXNzYWdlczpbXSxsYXN0UmVuZGVyZWRIYXNoOjAsbGFzdFJlbmRlcmVkTXNnQ291bnQ6MCxsYXN0UmVuZGVyZWRFbXB0eTpudWxsLHJlbmRlclBlbmRpbmc6ITEsY2hhdFBhZ2VTaXplOjIwLGNoYXRSZW5kZXJlZENvdW50OjIwLGN1cnJlbnRUYXNrOm51bGwsdGVybWluYWxJbnRlcmFjdGl2ZTohMSxtaW5pS2V5Ym9hcmRWaXNpYmxlOiExLG1vZGlmaWVyczp7Y3RybDohMSxhbHQ6ITEsc2hpZnQ6ITF9LGpveXN0aWNrUG9zOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1iYWxsLXBvcyIpO2lmKCFlKXJldHVybiBudWxsO3ZhciB0PUpTT04ucGFyc2UoZSk7cmV0dXJuIHQmJnR5cGVvZiB0PT0ib2JqZWN0Ij90Om51bGx9Y2F0Y2h7cmV0dXJuIG51bGx9fSkoKSxqb3lzdGlja1Bpbm5lZE9wZW46ITEsam95c3RpY2tSb290RWw6bnVsbCxqb3lzdGlja1BhbmVsRWw6bnVsbCxqb3lzdGlja0JhY2tkcm9wRWw6bnVsbCxqb3lzdGlja0JhbGxFbDpudWxsLGpveXN0aWNrUG9pbnRlcklkOm51bGwsam95c3RpY2tHZXN0dXJlOm51bGwsam95c3RpY2tQcmVzc1N0YXJ0Om51bGwsam95c3RpY2tMb25nUHJlc3NUaW1lcjpudWxsLGpveXN0aWNrTW92ZUhhbmRsZXI6bnVsbCxqb3lzdGlja1VwSGFuZGxlcjpudWxsLGpveXN0aWNrUmVzaXplSGFuZGxlcjpudWxsLGZpbGVTZWFyY2hRdWVyeToiIixmaWxlRXhwbG9yZXJMb2FkaW5nOiExLGFsbEZpbGVzOltdLGZpbGVFeHBsb3JlckN3ZDoiIixmaWxlRXhwbG9yZXJUcnVuY2F0ZWQ6ITEsZmlsZUV4cGxvcmVyVG90YWw6MCxjbGF1ZGVIaXN0b3J5OltdLGNsYXVkZUhpc3RvcnlMb2FkZWQ6ITEsY2xhdWRlSGlzdG9yeUV4cGFuZGVkOiExLGNsYXVkZUhpc3RvcnlFeHBhbmRlZERpcnM6e30sYXJjaGl2ZWRFeHBhbmRlZDohMSxzZXNzaW9uc01hbmFnZU1vZGU6ITEsc2VsZWN0ZWRTZXNzaW9uSWRzOnt9LHNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkczp7fSxjb2RleEhpc3Rvcnk6W10sY29kZXhIaXN0b3J5TG9hZGVkOiExLGNvZGV4SGlzdG9yeUV4cGFuZGVkRGlyczp7fSxzZWxlY3RlZENvZGV4SGlzdG9yeUlkczp7fSxhc2tVc2VyU2VsZWN0aW9uczp7fSxxdWV1ZUVwb2NoOjAscGVuZGluZ0F0dGFjaG1lbnRzOltdLHdvcmtpbmdEaXI6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXdvcmtpbmctZGlyIik7cmV0dXJuIGV8fCIifWNhdGNoe3JldHVybiIifX0pKCl9LHFpPSJcdTRFMkRcdTY1ODciLFdyPXtcdTRFMkRcdTY1ODc6eyJzdWJhZ2VudC50YWciOiJcdTVCNTBcdTRFRTNcdTc0MDYiLCJzdWJhZ2VudC5oYW5kb2ZmIjoie3BhcmVudH0gXHU4QkE5IHtzdWJ9IFx1NUUyRVx1NUZEOSIsInN1YmFnZW50LmhhbmRvZmYud2l0aF9kZXNjIjoie3BhcmVudH0gXHU4QkE5IHtzdWJ9IFx1NUUyRVx1NUZEOVx1RkYxQSIsInN1YmFnZW50LmNvbnRpbnVlZCI6Ilx1N0VFN1x1N0VFRFx1OEY5M1x1NTFGQSIsInN1YmFnZW50LnRhc2suZG9uZSI6Ilx1NEVGQlx1NTJBMVx1NUI4Q1x1NjIxMCIsInN1YmFnZW50LnRhc2suZmFpbGVkIjoiXHU0RUZCXHU1MkExXHU1OTMxXHU4RDI1Iiwic3ViYWdlbnQucnVubmluZyI6Ilx1OEZEMFx1ODg0Q1x1NEUyRCIsInN1YmFnZW50Lm5vX291dHB1dCI6Ilx1RkYwOFx1NjVFMFx1OEY5M1x1NTFGQVx1RkYwOSIsInN1YmFnZW50LmhlbHBlcl9mYWxsYmFja19wcmVmaXgiOiJcdTUzNEZcdTRGNUNcdTczMkJceEI3Iiwic3ViYWdlbnQudGl0bGVfYXJpYSI6Ilx1NzBCOVx1NTFGQlx1NUM1NVx1NUYwMCAvIFx1NjUzNlx1OEQ3N1x1NUI1MFx1NEVFM1x1NzQwNlx1OEY5M1x1NTFGQSIsInN1YmFnZW50LnRhZ190aXRsZSI6Ilx1NUI1MFx1NEVFM1x1NzQwNiAvIHN1YmFnZW50IiwidWkuZXhwYW5kIjoiXHU1QzU1XHU1RjAwIiwidWkuY29sbGFwc2UiOiJcdTY1MzZcdThENzciLCJ1aS5leHBhbmRfcGFuZWxfYXJpYSI6Ilx1NUM1NVx1NUYwMFx1NUI1MFx1NEVFM1x1NzQwNlx1OEY5M1x1NTFGQSIsInVpLmNvbGxhcHNlX3BhbmVsX2FyaWEiOiJcdTY1MzZcdThENzdcdTVCNTBcdTRFRTNcdTc0MDZcdThGOTNcdTUxRkEiLCJzdG9wLmNvbmZpcm0udGl0bGUiOiJcdTUwNUNcdTZCNjJcdTRFRkJcdTUyQTEiLCJzdG9wLmNvbmZpcm0ubWVzc2FnZSI6Ilx1Nzg2RVx1NUI5QVx1ODk4MVx1NTA1Q1x1NkI2Mlx1NUY1M1x1NTI0RFx1NkI2M1x1NTcyOFx1OEZEMFx1ODg0Q1x1NzY4NFx1NEVGQlx1NTJBMVx1NTQxN1x1RkYxRiIsInN0b3AuY29uZmlybS5vayI6Ilx1NTA1Q1x1NkI2MiIsInN0b3AuY29uZmlybS5jYW5jZWwiOiJcdTUzRDZcdTZEODgifSxFbmdsaXNoOnsic3ViYWdlbnQudGFnIjoiU3ViYWdlbnQiLCJzdWJhZ2VudC5oYW5kb2ZmIjoie3BhcmVudH0gYXNrZWQge3N1Yn0gZm9yIGhlbHAiLCJzdWJhZ2VudC5oYW5kb2ZmLndpdGhfZGVzYyI6IntwYXJlbnR9IGFza2VkIHtzdWJ9IGZvciBoZWxwIHdpdGg6ICIsInN1YmFnZW50LmNvbnRpbnVlZCI6ImNvbnRpbnVlZCIsInN1YmFnZW50LnRhc2suZG9uZSI6IlRhc2sgY29tcGxldGUiLCJzdWJhZ2VudC50YXNrLmZhaWxlZCI6IlRhc2sgZmFpbGVkIiwic3ViYWdlbnQucnVubmluZyI6IlJ1bm5pbmciLCJzdWJhZ2VudC5ub19vdXRwdXQiOiIobm8gb3V0cHV0KSIsInN1YmFnZW50LmhlbHBlcl9mYWxsYmFja19wcmVmaXgiOiJIZWxwZXJceEI3Iiwic3ViYWdlbnQudGl0bGVfYXJpYSI6IkNsaWNrIHRvIGV4cGFuZCAvIGNvbGxhcHNlIHN1YmFnZW50IG91dHB1dCIsInN1YmFnZW50LnRhZ190aXRsZSI6IlN1YmFnZW50IiwidWkuZXhwYW5kIjoiRXhwYW5kIiwidWkuY29sbGFwc2UiOiJDb2xsYXBzZSIsInVpLmV4cGFuZF9wYW5lbF9hcmlhIjoiRXhwYW5kIHN1YmFnZW50IG91dHB1dCIsInVpLmNvbGxhcHNlX3BhbmVsX2FyaWEiOiJDb2xsYXBzZSBzdWJhZ2VudCBvdXRwdXQiLCJzdG9wLmNvbmZpcm0udGl0bGUiOiJTdG9wIHRhc2siLCJzdG9wLmNvbmZpcm0ubWVzc2FnZSI6IlN0b3AgdGhlIHRhc2sgdGhhdCdzIGN1cnJlbnRseSBydW5uaW5nPyIsInN0b3AuY29uZmlybS5vayI6IlN0b3AiLCJzdG9wLmNvbmZpcm0uY2FuY2VsIjoiQ2FuY2VsIn19O2Z1bmN0aW9uIHV1KCl7dmFyIGU9bi5jb25maWcmJnR5cGVvZiBuLmNvbmZpZy5sYW5ndWFnZT09InN0cmluZyI/bi5jb25maWcubGFuZ3VhZ2UudHJpbSgpOiIiO2lmKCFlKXJldHVybiBxaTtpZihXcltlXSlyZXR1cm4gZTt2YXIgdD1lLnRvTG93ZXJDYXNlKCk7cmV0dXJuIHQ9PT0iZW5nbGlzaCJ8fHQ9PT0iZW4ifHx0LmluZGV4T2YoImVuZ2xpc2giKT09PTB8fHQuaW5kZXhPZigiXHU4MkYxIik9PT0wPyJFbmdsaXNoIjp0PT09Ilx1NEUyRFx1NjU4NyJ8fHQ9PT0iemgifHx0LmluZGV4T2YoInpoIik9PT0wfHx0LmluZGV4T2YoIlx1NEUyRCIpPT09MHx8dC5pbmRleE9mKCJjaGluZXNlIik9PT0wPyJcdTRFMkRcdTY1ODciOiJFbmdsaXNoIn1mdW5jdGlvbiBNZShlLHQpe3ZhciByPXV1KCksaT1XcltyXXx8V3JbcWldLGE9aSYmZSBpbiBpP2lbZV06bnVsbDtpZihhPT1udWxsKXt2YXIgdT1XcltxaV07YT11JiZlIGluIHU/dVtlXTplfWlmKHQmJnR5cGVvZiBhPT0ic3RyaW5nIilmb3IodmFyIHMgaW4gdClPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwodCxzKSYmKGE9YS5zcGxpdCgieyIrcysifSIpLmpvaW4odFtzXSkpO3JldHVybiBhfXZhciBTbD17c2hpZWxkOic8cGF0aCBkPSJNMTIgMjJzOC00IDgtMTBWNWwtOC0zLTggM3Y3YzAgNiA4IDEwIDggMTB6Ii8+JyxzaGllbGRDaGVjazonPHBhdGggZD0iTTEyIDIyczgtNCA4LTEwVjVsLTgtMy04IDN2N2MwIDYgOCAxMCA4IDEweiIvPjxwb2x5bGluZSBwb2ludHM9IjkgMTIgMTEgMTQgMTUgMTAiLz4nLGtleWJvYXJkOic8cmVjdCB4PSIyIiB5PSI2IiB3aWR0aD0iMjAiIGhlaWdodD0iMTIiIHJ4PSIyIi8+PGxpbmUgeDE9IjYiIHkxPSIxMCIgeDI9IjYiIHkyPSIxMCIvPjxsaW5lIHgxPSIxMCIgeTE9IjEwIiB4Mj0iMTAiIHkyPSIxMCIvPjxsaW5lIHgxPSIxNCIgeTE9IjEwIiB4Mj0iMTQiIHkyPSIxMCIvPjxsaW5lIHgxPSIxOCIgeTE9IjEwIiB4Mj0iMTgiIHkyPSIxMCIvPjxsaW5lIHgxPSI2IiB5MT0iMTQiIHgyPSI2IiB5Mj0iMTQiLz48bGluZSB4MT0iMTgiIHkxPSIxNCIgeDI9IjE4IiB5Mj0iMTQiLz48bGluZSB4MT0iOSIgeTE9IjE0IiB4Mj0iMTUiIHkyPSIxNCIvPicsdGVybWluYWw6Jzxwb2x5bGluZSBwb2ludHM9IjQgNyA5IDEyIDQgMTciLz48bGluZSB4MT0iMTIiIHkxPSIxNyIgeDI9IjIwIiB5Mj0iMTciLz4nLGNoYXQ6JzxwYXRoIGQ9Ik0yMSAxMmE4IDggMCAwIDEtMTIuOSA2LjNMMyAyMGwxLjctNS4xQTggOCAwIDEgMSAyMSAxMnoiLz4nLGZvbGRlcjonPHBhdGggZD0iTTMgN2EyIDIgMCAwIDEgMi0yaDRsMiAyaDhhMiAyIDAgMCAxIDIgMnY4YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yeiIvPicsdHJhc2g6Jzxwb2x5bGluZSBwb2ludHM9IjMgNiA1IDYgMjEgNiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDEzYTIgMiAwIDAgMS0yIDJIOGEyIDIgMCAwIDEtMi0yTDUgNiIvPjxwYXRoIGQ9Ik0xMCAxMXY2Ii8+PHBhdGggZD0iTTE0IDExdjYiLz48cGF0aCBkPSJNOSA2VjRhMSAxIDAgMCAxIDEtMWg0YTEgMSAwIDAgMSAxIDF2MiIvPicsY2hldnJvbkRvd246Jzxwb2x5bGluZSBwb2ludHM9IjYgOSAxMiAxNSAxOCA5Ii8+JyxiZWxsOic8cGF0aCBkPSJNMTggMTZ2LTVhNiA2IDAgMSAwLTEyIDB2NWwtMiAyaDE2eiIvPjxwYXRoIGQ9Ik0xMCAyMWEyIDIgMCAwIDAgNCAwIi8+JyxtdXNpYzonPHBhdGggZD0iTTkgMThWNWwxMi0ydjEzIi8+PGNpcmNsZSBjeD0iNiIgY3k9IjE4IiByPSIzIi8+PGNpcmNsZSBjeD0iMTgiIGN5PSIxNiIgcj0iMyIvPicsdmlicmF0ZTonPHJlY3QgeD0iOSIgeT0iNCIgd2lkdGg9IjYiIGhlaWdodD0iMTYiIHJ4PSIxIi8+PHBhdGggZD0iTTUgOHY4Ii8+PHBhdGggZD0iTTMgMTB2NCIvPjxwYXRoIGQ9Ik0xOSA4djgiLz48cGF0aCBkPSJNMjEgMTB2NCIvPicsZ2xvYmU6JzxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjkiLz48bGluZSB4MT0iMyIgeTE9IjEyIiB4Mj0iMjEiIHkyPSIxMiIvPjxwYXRoIGQ9Ik0xMiAzYTE0IDE0IDAgMCAxIDAgMTgiLz48cGF0aCBkPSJNMTIgM2ExNCAxNCAwIDAgMCAwIDE4Ii8+JyxzbWFydHBob25lOic8cmVjdCB4PSI2IiB5PSIyIiB3aWR0aD0iMTIiIGhlaWdodD0iMjAiIHJ4PSIyLjUiLz48bGluZSB4MT0iMTEiIHkxPSIxOCIgeDI9IjEzIiB5Mj0iMTgiLz4nLGRlc2t0b3A6JzxyZWN0IHg9IjMiIHk9IjQiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxMiIgcng9IjIiLz48bGluZSB4MT0iOCIgeTE9IjIwIiB4Mj0iMTYiIHkyPSIyMCIvPjxsaW5lIHgxPSIxMiIgeTE9IjE2IiB4Mj0iMTIiIHkyPSIyMCIvPicsbGluazonPHBhdGggZD0iTTEwIDE0YTQuNSA0LjUgMCAwIDAgNi4zNiAwbDMtM2E0LjUgNC41IDAgMSAwLTYuMzYtNi4zNmwtMS40MiAxLjQxIi8+PHBhdGggZD0iTTE0IDEwYTQuNSA0LjUgMCAwIDAtNi4zNiAwbC0zIDNhNC41IDQuNSAwIDEgMCA2LjM2IDYuMzZsMS40Mi0xLjQxIi8+JyxwYWxldHRlOic8Y2lyY2xlIGN4PSIxMy41IiBjeT0iNi41IiByPSIxIi8+PGNpcmNsZSBjeD0iMTcuNSIgY3k9IjEwLjUiIHI9IjEiLz48Y2lyY2xlIGN4PSI4LjUiIGN5PSI3LjUiIHI9IjEiLz48Y2lyY2xlIGN4PSI2LjUiIGN5PSIxMi41IiByPSIxIi8+PHBhdGggZD0iTTEyIDNhOSA5IDAgMSAwIDAgMTggMS41IDEuNSAwIDAgMCAxLjEtMi41IDEuNSAxLjUgMCAwIDEgMS4xLTIuNWgyLjNBNC41IDQuNSAwIDAgMCAyMSAxMS41QzIxIDYuOCAxNi45NyAzIDEyIDN6Ii8+JyxwbGF5Oic8cG9seWdvbiBwb2ludHM9IjYgNCAyMCAxMiA2IDIwIDYgNCIvPicsd3JlbmNoOic8cGF0aCBkPSJNMTQuNyA2LjNhNCA0IDAgMSAxIDQgNGwtOSA5LTMuNSAxIDEtMy41IDcuNS03LjV6Ii8+JyxwYXc6JzxjaXJjbGUgY3g9IjcuNSIgY3k9IjkiIHI9IjIiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+PGNpcmNsZSBjeD0iMTIiIGN5PSI2LjgiIHI9IjIiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+PGNpcmNsZSBjeD0iMTYuNSIgY3k9IjkiIHI9IjIiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+PGNpcmNsZSBjeD0iMTgiIGN5PSIxMy4zIiByPSIxLjgiIGZpbGw9ImN1cnJlbnRDb2xvciIgc3Ryb2tlPSJub25lIi8+PHBhdGggZD0iTTcuMiAxNi4zYy41LTIuOSAyLjMtNC44IDQuOC00LjhzNC4zIDEuOSA0LjggNC44Yy4zIDEuOC0uOSAzLjItMi42IDIuNi0uOC0uMy0xLjQtLjYtMi4yLS42cy0xLjQuMy0yLjIuNmMtMS43LjYtMi45LS44LTIuNi0yLjZ6IiBmaWxsPSJjdXJyZW50Q29sb3IiIHN0cm9rZT0ibm9uZSIvPicsZWRpdDonPHBhdGggZD0iTTEyIDIwaDkiLz48cGF0aCBkPSJNMTYuNSAzLjVhMi4xMiAyLjEyIDAgMCAxIDMgM0w3IDE5bC00IDEgMS00eiIvPicsc2lnbmFsOic8cGF0aCBkPSJNMiAxMmExNSAxNSAwIDAgMSAyMCAwIi8+PHBhdGggZD0iTTUgMTZhMTAgMTAgMCAwIDEgMTQgMCIvPjxwYXRoIGQ9Ik05IDIwYTQgNCAwIDAgMSA2IDAiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjIwIiByPSIwLjUiIGZpbGw9ImN1cnJlbnRDb2xvciIvPicsZmlsZTonPHBhdGggZD0iTTE0IDNINmEyIDIgMCAwIDAtMiAydjE0YTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMlY5eiIvPjxwb2x5bGluZSBwb2ludHM9IjE0IDMgMTQgOSAyMCA5Ii8+JyxzaWdtYTonPHBvbHlsaW5lIHBvaW50cz0iMTggNCA2IDQgMTMgMTIgNiAyMCAxOCAyMCIvPicseDonPHBhdGggZD0iTTE4IDYgNiAxOCIvPjxwYXRoIGQ9Ik02IDZsMTIgMTIiLz4nLHBsdXM6JzxsaW5lIHgxPSIxMiIgeTE9IjUiIHgyPSIxMiIgeTI9IjE5Ii8+PGxpbmUgeDE9IjUiIHkxPSIxMiIgeDI9IjE5IiB5Mj0iMTIiLz4nLG1pYzonPHJlY3QgeD0iOSIgeT0iMyIgd2lkdGg9IjYiIGhlaWdodD0iMTEiIHJ4PSIzIi8+PHBhdGggZD0iTTUgMTFhNyA3IDAgMCAwIDE0IDAiLz48bGluZSB4MT0iMTIiIHkxPSIxOCIgeDI9IjEyIiB5Mj0iMjEiLz48bGluZSB4MT0iOSIgeTE9IjIxIiB4Mj0iMTUiIHkyPSIyMSIvPicscGFwZXJjbGlwOic8cGF0aCBkPSJNMjEuNDQgMTEuMDUgMTIuMjUgMjAuMjRhNiA2IDAgMCAxLTguNDktOC40OWw4Ljg0LTguODRhNCA0IDAgMSAxIDUuNjYgNS42Nkw5LjQxIDE3LjQxYTIgMiAwIDEgMS0yLjgzLTIuODNsOC44NC04LjgzIi8+J307ZnVuY3Rpb24gSyhlLHQpe3ZhciByPVNsW2VdO2lmKCFyKXJldHVybiIiO3Q9dHx8e307dmFyIGk9dC5zaXplfHwxNCxhPXQuc3Ryb2tlV2lkdGh8fDEuOCx1PXQuY2xzPycgY2xhc3M9IicrdC5jbHMrJyInOiIiLHM9dC5maWxsfHwibm9uZSI7cmV0dXJuIjxzdmciK3UrJyB3aWR0aD0iJytpKyciIGhlaWdodD0iJytpKyciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iJytzKyciIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IicrYSsnIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj4nK3IrIjwvc3ZnPiJ9ZnVuY3Rpb24gcW4oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC1vdXRwdXQiKTtpZighZSlyZXR1cm4gbi5jaGF0U2Nyb2xsRWxlbWVudD1udWxsLG51bGw7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO3JldHVybiB0PyhuLmNoYXRTY3JvbGxFbGVtZW50PXQsdCk6KG4uY2hhdFNjcm9sbEVsZW1lbnQ9bnVsbCxudWxsKX1mdW5jdGlvbiBPaShlKXt2YXIgdD1lfHxxbigpO3JldHVybiB0P01hdGguYWJzKHQuc2Nyb2xsVG9wKTxuLmNoYXRTY3JvbGxUaHJlc2hvbGQ6ITB9ZnVuY3Rpb24gVG0oZSl7bi5jaGF0U3RpY2tUb0JvdHRvbT0hIWUsbi5jaGF0U3RpY2tUb0JvdHRvbSYmcnIoe3JlbW92ZURpdmlkZXI6ITB9KSxaZSgpfWZ1bmN0aW9uIHJyKGUpe2U9ZXx8e307dmFyIHQ9bi5jaGF0VW5yZWFkQ291bnQ+MHx8bi5jaGF0VW5yZWFkU3RhcnRJbmRleD49MDtpZihuLmNoYXRVbnJlYWRDb3VudD0wLG4uY2hhdFVucmVhZFN0YXJ0SW5kZXg9LTEsZS5yZW1vdmVEaXZpZGVyIT09ITEpe3ZhciByPXFuKCk7aWYocil7dmFyIGk9ci5xdWVyeVNlbGVjdG9yKCIuY2hhdC11bnJlYWQtZGl2aWRlciIpO2kmJmkucGFyZW50Tm9kZSYmaS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGkpfX10JiZaZSgpfWZ1bmN0aW9uIFBpKGUpe2lmKGV8fChlPXFuKCkpLCEhZSl7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC11bnJlYWQtZGl2aWRlciIpO2lmKG4uY2hhdFVucmVhZFN0YXJ0SW5kZXg8MHx8bi5jaGF0VW5yZWFkQ291bnQ8PTApe3QmJnQucGFyZW50Tm9kZSYmdC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHQpO3JldHVybn1mb3IodmFyIHI9bi5jaGF0VW5yZWFkU3RhcnRJbmRleCxpPWUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZSIpLGE9bnVsbCx1PTA7dTxpLmxlbmd0aDt1Kyspe3ZhciBzPWlbdV0uZ2V0QXR0cmlidXRlKCJkYXRhLW1zZy1pbmRleCIpO2lmKHMhPT1udWxsKXt2YXIgbz1wYXJzZUludChzLDEwKTtpZighaXNOYU4obykmJm88cil7YT1pW3VdO2JyZWFrfX19dmFyIGw9bi5jaGF0VW5yZWFkQ291bnQrIiBcdTY3NjFcdTY1QjBcdTZEODhcdTYwNkYiO3R8fCh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHQuY2xhc3NOYW1lPSJjaGF0LXVucmVhZC1kaXZpZGVyIix0LnNldEF0dHJpYnV0ZSgicm9sZSIsInNlcGFyYXRvciIpLHQuaW5uZXJIVE1MPSc8c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtZGl2aWRlci1saW5lIj48L3NwYW4+PHNwYW4gY2xhc3M9ImNoYXQtdW5yZWFkLWRpdmlkZXItbGFiZWwiPjwvc3Bhbj48c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtZGl2aWRlci1saW5lIj48L3NwYW4+JyksdC5xdWVyeVNlbGVjdG9yKCIuY2hhdC11bnJlYWQtZGl2aWRlci1sYWJlbCIpLnRleHRDb250ZW50PWwsYT8odC5uZXh0U2libGluZyE9PWF8fHQucGFyZW50Tm9kZSE9PWUpJiZlLmluc2VydEJlZm9yZSh0LGEpOih0LnBhcmVudE5vZGUhPT1lfHx0Lm5leHRTaWJsaW5nIT09bnVsbCkmJmUuYXBwZW5kQ2hpbGQodCl9fWZ1bmN0aW9uIFplKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtdW5yZWFkLWJ1YmJsZSIpO2lmKGUpe3ZhciB0PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihvKXtyZXR1cm4gby5pZD09PW4uc2VsZWN0ZWRJZH0pLHI9IU9pKCksaT0hIXQmJm4uY3VycmVudFZpZXc9PT0iY2hhdCImJnI7ZS5jbGFzc0xpc3QudG9nZ2xlKCJ2aXNpYmxlIixpKSxlLmNsYXNzTGlzdC50b2dnbGUoImhhcy11bnJlYWQiLG4uY2hhdFVucmVhZENvdW50PjApO3ZhciBhPWUucXVlcnlTZWxlY3RvcigiLmNoYXQtdW5yZWFkLWJ1YmJsZS1jb3VudCIpO2EmJihuLmNoYXRVbnJlYWRDb3VudD4wPyhhLnRleHRDb250ZW50PW4uY2hhdFVucmVhZENvdW50Pjk5PyI5OSsiOlN0cmluZyhuLmNoYXRVbnJlYWRDb3VudCksYS5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIikpOihhLnRleHRDb250ZW50PSIiLGEuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpKSk7dmFyIHU9bi5jaGF0VW5yZWFkQ291bnQ+MD9uLmNoYXRVbnJlYWRDb3VudCsiIFx1Njc2MVx1NjVCMFx1NkQ4OFx1NjA2Rlx1RkYwQ1x1NzBCOVx1NTFGQlx1NjdFNVx1NzcwQiI6Ilx1NTZERVx1NTIzMFx1NjcwMFx1NjVCMFx1NkQ4OFx1NjA2RiI7ZS5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLHUpLGUuc2V0QXR0cmlidXRlKCJ0aXRsZSIsdSk7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0Iik7cyYmcy5jbGFzc0xpc3QudG9nZ2xlKCJoYXMtanVtcC1idG4iLGkpfX1mdW5jdGlvbiBJbChlKXt2YXIgdD1xbigpO2lmKCEoIXR8fCF0LmlzQ29ubmVjdGVkKSl7bi5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITA7dmFyIHI9ZnVuY3Rpb24oKXtuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMSxuLmNoYXRTdGlja1RvQm90dG9tPSEwLHJyKHtyZW1vdmVEaXZpZGVyOiEwfSksWmUoKX07aWYoZSYmdHlwZW9mIHQuc2Nyb2xsVG89PSJmdW5jdGlvbiIpe3Quc2Nyb2xsVG8oe3RvcDowLGJlaGF2aW9yOiJzbW9vdGgifSksc2V0VGltZW91dChyLDI2MCk7cmV0dXJufXQuc2Nyb2xsVG9wPTAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKHIpfX1mdW5jdGlvbiBpcigpe3ZhciBlPXFuKCk7aWYoISghZXx8IWUuaXNDb25uZWN0ZWQpKXtpZihuLmNoYXRTY3JvbGxFbGVtZW50PT09ZSYmbi5jaGF0U2Nyb2xsSGFuZGxlcil7WmUoKTtyZXR1cm59bi5jaGF0U2Nyb2xsRWxlbWVudCYmKG4uY2hhdFNjcm9sbEhhbmRsZXImJm4uY2hhdFNjcm9sbEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixuLmNoYXRTY3JvbGxIYW5kbGVyKSxuLmNoYXRTY3JvbGxXaGVlbEhhbmRsZXImJm4uY2hhdFNjcm9sbEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2hlZWwiLG4uY2hhdFNjcm9sbFdoZWVsSGFuZGxlciksbi5jaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXImJm4uY2hhdFNjcm9sbEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsbi5jaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXIpLG4uY2hhdFNjcm9sbFRvdWNoTW92ZUhhbmRsZXImJm4uY2hhdFNjcm9sbEVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixuLmNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyKSksbi5jaGF0U2Nyb2xsRWxlbWVudD1lLG4uY2hhdFNjcm9sbEhhbmRsZXI9ZnVuY3Rpb24oKXtpZihlLmlzQ29ubmVjdGVkKXtpZihuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbCl7WmUoKTtyZXR1cm59dmFyIHQ9T2koZSk7dD8obi5jaGF0U3RpY2tUb0JvdHRvbT0hMCxycih7cmVtb3ZlRGl2aWRlcjohMH0pKTpuLmNoYXRTdGlja1RvQm90dG9tPSExLFplKCl9fSxuLmNoYXRTY3JvbGxXaGVlbEhhbmRsZXI9ZnVuY3Rpb24odCl7bi5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGx8fHQuZGVsdGFZPDAmJihuLmNoYXRTdGlja1RvQm90dG9tPSExLFplKCkpfSxuLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlcj1mdW5jdGlvbih0KXshdC50b3VjaGVzfHx0LnRvdWNoZXMubGVuZ3RoPT09MHx8KG4uY2hhdFRvdWNoU3RhcnRZPXQudG91Y2hlc1swXS5jbGllbnRZKX0sbi5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcj1mdW5jdGlvbih0KXtpZighbi5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGwmJiEoIXQudG91Y2hlc3x8dC50b3VjaGVzLmxlbmd0aD09PTApKXt2YXIgcj10LnRvdWNoZXNbMF0uY2xpZW50WS1uLmNoYXRUb3VjaFN0YXJ0WTtyPjQmJihuLmNoYXRTdGlja1RvQm90dG9tPSExLFplKCkpfX0sZS5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLG4uY2hhdFNjcm9sbEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxlLmFkZEV2ZW50TGlzdGVuZXIoIndoZWVsIixuLmNoYXRTY3JvbGxXaGVlbEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxlLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLG4uY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyLHtwYXNzaXZlOiEwfSksZS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLG4uY2hhdFNjcm9sbFRvdWNoTW92ZUhhbmRsZXIse3Bhc3NpdmU6ITB9KSxaZSgpfX1mdW5jdGlvbiBzdSgpe24uY2hhdFJlbmRlcmVkQ291bnQ+PW4uY3VycmVudE1lc3NhZ2VzLmxlbmd0aHx8KG4uY2hhdFJlbmRlcmVkQ291bnQrPW4uY2hhdFBhZ2VTaXplLHR0KCEwKSl9dmFyIGFyPW51bGw7ZnVuY3Rpb24gVGwoKXthciYmKGFyLmRpc2Nvbm5lY3QoKSxhcj1udWxsKTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC1sb2FkLW1vcmUtc2VudGluZWwiKTtpZihlKXt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LWxvYWQtbW9yZS1idG4iKTt0JiYodC5vbmNsaWNrPWZ1bmN0aW9uKCl7c3UoKX0pLCEodHlwZW9mIEludGVyc2VjdGlvbk9ic2VydmVyPiJ1IikmJihhcj1uZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoZnVuY3Rpb24ocil7Zm9yKHZhciBpPTA7aTxyLmxlbmd0aDtpKyspaWYocltpXS5pc0ludGVyc2VjdGluZyl7c3UoKTticmVha319LHtyb290OnFuKCkscm9vdE1hcmdpbjoiMjAwcHgifSksYXIub2JzZXJ2ZShlKSl9fWZ1bmN0aW9uIHllKCl7dHJ5e24uc2VsZWN0ZWRJZD9sb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1zZWxlY3RlZC1zZXNzaW9uIixuLnNlbGVjdGVkSWQpOmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iKX1jYXRjaHt9fWZ1bmN0aW9uIEhpKGUpe3JldHVybiBlJiZBcnJheS5pc0FycmF5KGUucXVldWVkTWVzc2FnZXMpP2UucXVldWVkTWVzc2FnZXM6bi5zdHJ1Y3R1cmVkSW5wdXRRdWV1ZX1mdW5jdGlvbiBMbCgpe3ZhciBlPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbih0KXtyZXR1cm4gdC5pZD09PW4uc2VsZWN0ZWRJZH0pO3JldHVybiBIaShlKX1mdW5jdGlvbiB6cihlKXt2YXIgdD1IaShlKTtuLnN0cnVjdHVyZWRJbnB1dFF1ZXVlPUFycmF5LmlzQXJyYXkodCk/dC5zbGljZSgpOltdfWZ1bmN0aW9uIG91KGUsdCl7cmV0dXJuISEoZSYmQXJyYXkuaXNBcnJheShlLmNvbnRlbnQpJiZlLmNvbnRlbnQuc29tZShmdW5jdGlvbihyKXtyZXR1cm4gciYmdHlwZW9mIHI9PSJvYmplY3QiJiZyW3RdfSkpfWZ1bmN0aW9uIE1sKGUpe3JldHVybiEhKGUmJmUucm9sZT09PSJ1c2VyIiYmb3UoZSwiX19xdWV1ZWQiKSl9ZnVuY3Rpb24gcWwoZSl7cmV0dXJuISEoZSYmZS5yb2xlPT09ImFzc2lzdGFudCImJm91KGUsIl9fcHJvY2Vzc2luZyIpKX1mdW5jdGlvbiB1cihlKXtpZighQXJyYXkuaXNBcnJheShlKSlyZXR1cm5bXTtmb3IodmFyIHQ9ITEscj1bXSxpPTA7aTxlLmxlbmd0aDtpKyspe3ZhciBhPWVbaV07aWYoTWwoYSl8fHFsKGEpKXt0PSEwO2NvbnRpbnVlfXIucHVzaChhKX1yZXR1cm4gdD9yOmV9ZnVuY3Rpb24gT2woZSx0KXtpZighZXx8IUFycmF5LmlzQXJyYXkoZS5tZXNzYWdlcykpcmV0dXJuIGU7dmFyIHI9ZS5zZXNzaW9uS2luZHx8dCYmdC5zZXNzaW9uS2luZDtpZihyIT09InN0cnVjdHVyZWQiKXJldHVybiBlO3ZhciBpPXVyKGUubWVzc2FnZXMpO3JldHVybiBpPT09ZS5tZXNzYWdlcz9lOk9iamVjdC5hc3NpZ24oe30sZSx7bWVzc2FnZXM6aX0pfWZ1bmN0aW9uIGx1KCl7dHJ5e3ZhciBlPUxsKCk7aWYoIW4uc2VsZWN0ZWRJZHx8ZS5sZW5ndGg9PT0wKXJldHVybjtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1zdHJ1Y3R1cmVkLXF1ZXVlIixKU09OLnN0cmluZ2lmeSh7c2Vzc2lvbklkOm4uc2VsZWN0ZWRJZCxpdGVtczplfSkpfWNhdGNoe319ZnVuY3Rpb24gY3UoZSl7dHJ5e3ZhciB0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXN0cnVjdHVyZWQtcXVldWUiKTtpZighdClyZXR1cm47dmFyIHI9SlNPTi5wYXJzZSh0KTsoIWV8fCFyfHxyLnNlc3Npb25JZD09PWUpJiZsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1zdHJ1Y3R1cmVkLXF1ZXVlIil9Y2F0Y2h7bG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oIndhbmQtc3RydWN0dXJlZC1xdWV1ZSIpfX1mdW5jdGlvbiBkdSgpe3ZhciBlPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihpKXtyZXR1cm4gaS5pZD09PW4uc2VsZWN0ZWRJZH0pO2lmKGUmJkFycmF5LmlzQXJyYXkoZS5xdWV1ZWRNZXNzYWdlcykpe3pyKGUpLGx1KCk7cmV0dXJufXRyeXt2YXIgdD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1zdHJ1Y3R1cmVkLXF1ZXVlIik7aWYoIXQpcmV0dXJuO3ZhciByPUpTT04ucGFyc2UodCk7aWYoIXJ8fHIuc2Vzc2lvbklkIT09bi5zZWxlY3RlZElkfHwhQXJyYXkuaXNBcnJheShyLml0ZW1zKSlyZXR1cm47bi5zdHJ1Y3R1cmVkSW5wdXRRdWV1ZT1yLml0ZW1zLnNsaWNlKDAsMTApfWNhdGNoe24uc3RydWN0dXJlZElucHV0UXVldWU9W119fWZ1bmN0aW9uIEt0KCl7dHJ5e2lmKG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPT09MCl7bG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oIndhbmQtY3Jvc3Mtc2Vzc2lvbi1xdWV1ZSIpO3JldHVybn1sb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1jcm9zcy1zZXNzaW9uLXF1ZXVlIixKU09OLnN0cmluZ2lmeShuLmNyb3NzU2Vzc2lvblF1ZXVlKSl9Y2F0Y2h7fX1mdW5jdGlvbiB0bigpe3JldHVybiBuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdEN3ZHx8Ii90bXAifWZ1bmN0aW9uIGZ1KCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKExpKTtpZighZSlyZXR1cm57fTt2YXIgdD1KU09OLnBhcnNlKGUpO3JldHVybiB0JiZ0eXBlb2YgdD09Im9iamVjdCI/dDp7fX1jYXRjaHtyZXR1cm57fX19ZnVuY3Rpb24gUGwoZSl7dHJ5e2lmKCFlfHxPYmplY3Qua2V5cyhlKS5sZW5ndGg9PT0wKXtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbShMaSk7cmV0dXJufWxvY2FsU3RvcmFnZS5zZXRJdGVtKExpLEpTT04uc3RyaW5naWZ5KGUpKX1jYXRjaHt9fWZ1bmN0aW9uIEhsKCl7dmFyIGU9bi5zZWxlY3RlZElkO2lmKCFlKXJldHVybnt9O3ZhciB0PWZ1KCkscj10W2VdO3JldHVybiByJiZ0eXBlb2Ygcj09Im9iamVjdCI/cjp7fX1mdW5jdGlvbiBydChlKXtpZighZXx8IW4uc2VsZWN0ZWRJZClyZXR1cm4gbnVsbDt2YXIgdD1IbCgpO3JldHVybiB0eXBlb2YgdFtlXT09ImJvb2xlYW4iP3RbZV06bnVsbH1mdW5jdGlvbiBfbChlLHQpe2lmKCEoIWV8fCFuLnNlbGVjdGVkSWQpKXt2YXIgcj1mdSgpLGk9bi5zZWxlY3RlZElkLGE9cltpXTsoIWF8fHR5cGVvZiBhIT0ib2JqZWN0IikmJihhPXt9KSxhW2VdPSEhdCxyW2ldPWEsUGwocil9fWZ1bmN0aW9uIHB1KGUsdCl7cmV0dXJuIGU/ZS51dWlkPyJtc2c6IitlLnV1aWQ6ZS5pZD8ibXNnOiIrZS5pZDplLm1lc3NhZ2VJZD8ibXNnOiIrZS5tZXNzYWdlSWQ6ZS50dXJuSWQ/Im1zZzoiK2UudHVybklkOiJtc2c6IisodHlwZW9mIHQ9PSJudW1iZXIiP3Q6MCk6Im1zZzp1bmtub3duLSIrKHR5cGVvZiB0PT0ibnVtYmVyIj90OjApfWZ1bmN0aW9uIFl0KGUsdCl7Zm9yKHZhciByPVtdLGk9MDtpPHQubGVuZ3RoO2krKyl7dmFyIGE9dFtpXTthPT1udWxsfHxhPT09IiJ8fHIucHVzaChTdHJpbmcoYSkpfXJldHVybiBlKyI6IityLmpvaW4oIjoiKX1mdW5jdGlvbiBPbihlKXtyZXR1cm4hZXx8IWUuZGF0YXNldD8iIjplLmRhdGFzZXQuZXhwYW5kS2V5fHwiIn1mdW5jdGlvbiBObChlLHQpe2lmKCFlKXJldHVybiExO3N3aXRjaCh0KXtjYXNlInRvb2wtY2FyZCI6Y2FzZSJkaWZmIjpyZXR1cm4hZS5jbGFzc0xpc3QuY29udGFpbnMoImNvbGxhcHNlZCIpO2Nhc2UidGhpbmtpbmciOnJldHVybiBlLmNsYXNzTGlzdC5jb250YWlucygiZXhwYW5kZWQiKSYmIWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb2xsYXBzZWQiKTtjYXNlImlubGluZS10b29sIjpyZXR1cm4gZS5jbGFzc0xpc3QuY29udGFpbnMoImlubGluZS10b29sLW9wZW4iKTtjYXNlInRlcm1pbmFsIjp7dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCIudGVybS1ib2R5Iik7cmV0dXJuIHI/ci5zdHlsZS5kaXNwbGF5IT09Im5vbmUiOmUuZGF0YXNldC5leHBhbmRlZD09PSJ0cnVlIn1jYXNlInRvb2wtZ3JvdXAiOnJldHVybiBlLmdldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIpPT09InRydWUiO2Nhc2Uic3ViYWdlbnQtcmVwbHkiOnJldHVybiBlLmdldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIpPT09InRydWUiO2Nhc2Uic3ViYWdlbnQtcGFuZWwiOnJldHVybiBlLmdldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIpPT09InRydWUiO2RlZmF1bHQ6cmV0dXJuITF9fWZ1bmN0aW9uIF9pKGUsdCxyKXtpZihlKXN3aXRjaCh0KXtjYXNlInRvb2wtY2FyZCI6Y2FzZSJkaWZmIjp7ZS5jbGFzc0xpc3QudG9nZ2xlKCJjb2xsYXBzZWQiLCFyKTticmVha31jYXNlInRoaW5raW5nIjp7ZS5jbGFzc0xpc3QudG9nZ2xlKCJjb2xsYXBzZWQiLCFyKSxlLmNsYXNzTGlzdC50b2dnbGUoImV4cGFuZGVkIiwhIXIpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLWlubGluZS1wcmV2aWV3Iik7aWYoaSl7dmFyIGE9ZS5kYXRhc2V0LnRoaW5raW5nfHwiIix1PWEuc2xpY2UoMCw1NykrKGEubGVuZ3RoPjYwPyJcdTIwMjYiOiIiKTtpLnRleHRDb250ZW50PXI/YTp1fXZhciBzPWUucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLWlubGluZS1hY3Rpb24iKTtzJiYocy50ZXh0Q29udGVudD1yPyJcdTY1MzZcdThENzciOiJcdTVDNTVcdTVGMDAiKTticmVha31jYXNlImlubGluZS10b29sIjp7ZS5jbGFzc0xpc3QudG9nZ2xlKCJpbmxpbmUtdG9vbC1vcGVuIiwhIXIpO3ZhciBvPWUucXVlcnlTZWxlY3RvcigiLmlubGluZS10b29sLWV4cGFuZGVkIik7byYmKG8uc3R5bGUuZGlzcGxheT1yPyJibG9jayI6Im5vbmUiKTticmVha31jYXNlInRlcm1pbmFsIjp7dmFyIGw9ZS5xdWVyeVNlbGVjdG9yKCIudGVybS1ib2R5Iik7bCYmKGwuc3R5bGUuZGlzcGxheT1yPyJibG9jayI6Im5vbmUiKSxlLmRhdGFzZXQuZXhwYW5kZWQ9cj8idHJ1ZSI6ImZhbHNlIjt2YXIgYz1lLnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLXRvZ2dsZS1pY29uIik7YyYmKGMudGV4dENvbnRlbnQ9cj8iXHUyNUJDIjoiXHUyNUI2Iik7YnJlYWt9Y2FzZSJ0b29sLWdyb3VwIjp7ZS5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiLHI/InRydWUiOiJmYWxzZSIpO3ZhciBmPWUucXVlcnlTZWxlY3RvcigiLnRvb2wtZ3JvdXAtYm9keSIpO2YmJihmLnN0eWxlLmRpc3BsYXk9cj8iYmxvY2siOiJub25lIik7dmFyIGQ9ZS5xdWVyeVNlbGVjdG9yKCIudG9vbC1ncm91cC1jaGV2cm9uIik7ZCYmKGQuc3R5bGUudHJhbnNmb3JtPXI/InJvdGF0ZSgxODBkZWcpIjoiIik7YnJlYWt9Y2FzZSJzdWJhZ2VudC1yZXBseSI6e2Uuc2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIixyPyJ0cnVlIjoiZmFsc2UiKTt2YXIgdj1lLnF1ZXJ5U2VsZWN0b3IoIi5zdWJhZ2VudC1yZXBseS10b2dnbGUtbGFiZWwiKTt2JiYodi50ZXh0Q29udGVudD1yPyJcdTY1MzZcdThENzciOiJcdTVDNTVcdTVGMDAiKTt2YXIgZz1lLnF1ZXJ5U2VsZWN0b3IoIi5zdWJhZ2VudC1yZXBseS10b2dnbGUiKTtnJiYoZy5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLHI/InRydWUiOiJmYWxzZSIpLGcuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixyPyJcdTY1MzZcdThENzdcdTVCNTBcdTRFRTNcdTc0MDZcdTU2REVcdTU5MEQiOiJcdTVDNTVcdTVGMDBcdTVCNTBcdTRFRTNcdTc0MDZcdTU2REVcdTU5MERcdTUxNjhcdTY1ODciKSk7YnJlYWt9Y2FzZSJzdWJhZ2VudC1wYW5lbCI6e2Uuc2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIixyPyJ0cnVlIjoiZmFsc2UiKTtmb3IodmFyIGg9ZS5xdWVyeVNlbGVjdG9yQWxsKCIuc3ViYWdlbnQtcGFuZWwtdG9nZ2xlIiksbT0wO208aC5sZW5ndGg7bSsrKXt2YXIgYj1oW21dO2Iuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIixyPyJ0cnVlIjoiZmFsc2UiKSxiLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIscj8iXHU2NTM2XHU4RDc3XHU1QjUwXHU0RUUzXHU3NDA2XHU4RjkzXHU1MUZBIjoiXHU1QzU1XHU1RjAwXHU1QjUwXHU0RUUzXHU3NDA2XHU4RjkzXHU1MUZBIik7dmFyIEY9Yi5xdWVyeVNlbGVjdG9yKCIuc3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWxhYmVsIik7RiYmKEYudGV4dENvbnRlbnQ9cj8iXHU2NTM2XHU4RDc3IjoiXHU1QzU1XHU1RjAwIil9dmFyIHc9ZS5xdWVyeVNlbGVjdG9yKCIuc3ViYWdlbnQtcGFuZWwtYm9keSIpO3cmJihyP3cuc2Nyb2xsVG9wPTA6dy5zY3JvbGxUb3A9dy5zY3JvbGxIZWlnaHQpO2JyZWFrfX19ZnVuY3Rpb24gRm4oZSx0KXt2YXIgcj1PbihlKTtyJiZfbChyLE5sKGUsdCkpfWZ1bmN0aW9uIE5pKGUpeyFlfHwhbi5zZWxlY3RlZElkfHxlLnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLWV4cGFuZC1rZXldIikuZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgcj1Pbih0KSxpPXQuZGF0YXNldC5leHBhbmRLaW5kfHwiIixhPXJ0KHIpO2E9PT1udWxsfHwhaXx8X2kodCxpLGEpfSl9ZnVuY3Rpb24gTmUoKXtyZXR1cm4gd2luZG93LmlubmVyV2lkdGg8PTc2OH1mdW5jdGlvbiB2dSgpe3JldHVybiEhbi5zZXNzaW9uc0RyYXdlck9wZW4mJihOZSgpfHwhbi5zaWRlYmFyUGlubmVkKX1mdW5jdGlvbiBqaShlKXtuLmZpbGVQYW5lbE9wZW49ZTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtZmlsZS1wYW5lbC1vcGVuIixTdHJpbmcobi5maWxlUGFuZWxPcGVuKSl9Y2F0Y2h7fW4uZmlsZVBhbmVsT3BlbiYmTmUoKSYmKG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSExLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITEpKSxubigpLG4uZmlsZVBhbmVsT3BlbiYmcXQoKX1mdW5jdGlvbiBWcigpe2ppKCFuLmZpbGVQYW5lbE9wZW4pfWZ1bmN0aW9uIGpsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtc2lkZS1wYW5lbCIpLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLm1haW4tY29udGVudCIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtcGFuZWwtdG9nZ2xlLWJ0biIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtcGFuZWwtYmFja2Ryb3AiKTtlJiZlLmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iLG4uZmlsZVBhbmVsT3BlbiksdCYmdC5jbGFzc0xpc3QudG9nZ2xlKCJmaWxlLXBhbmVsLW9wZW4iLG4uZmlsZVBhbmVsT3BlbiksaSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIixuLmZpbGVQYW5lbE9wZW4pLHImJnIuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixuLmZpbGVQYW5lbE9wZW4pfWZ1bmN0aW9uIG5uKCl7VHIoKSxqbCgpfWZ1bmN0aW9uIFJsKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLWN3ZCIpO2lmKHQpe3ZhciByPWUmJmUuY3dkP2UuY3dkOnRuKCk7dC50YWdOYW1lPT09IklOUFVUIj9kb2N1bWVudC5hY3RpdmVFbGVtZW50IT09dCYmKHQudmFsdWU9cik6dC50ZXh0Q29udGVudD1yLHQudGl0bGU9cn19ZnVuY3Rpb24gbXUoKXtuLmZpbGVQYW5lbE9wZW4mJmppKCExKX1mdW5jdGlvbiBndShlKXt2YXIgdD1uLnRlcm1pbmFsU2NhbGUrZTtpZih0PU1hdGgubWF4KC41LE1hdGgubWluKDIsdCkpLHQ9TWF0aC5yb3VuZCh0KjQpLzQsdCE9PW4udGVybWluYWxTY2FsZSl7bi50ZXJtaW5hbFNjYWxlPXQ7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXRlcm1pbmFsLXNjYWxlIixTdHJpbmcodCkpfWNhdGNoe31odSgpLFdsKCl9fWZ1bmN0aW9uIGh1KCl7aWYoISghbi50ZXJtaW5hbHx8IW4udGVybWluYWwuZWxlbWVudCkpe3ZhciBlPW4udGVybWluYWxCYXNlRm9udFNpemUqbi50ZXJtaW5hbFNjYWxlLHQ9TWF0aC5tYXgoMSxNYXRoLnJvdW5kKGUpKSxyPU1hdGgubWF4KDEsTWF0aC5yb3VuZChlKjEuNSkpO24udGVybWluYWwuZWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS10ZXJtLWZvbnQtc2l6ZSIsdCsicHgiKSxuLnRlcm1pbmFsLmVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoIi0tdGVybS1yb3ctaGVpZ2h0IixyKyJweCIpLHR5cGVvZiBuLnRlcm1pbmFsLnJlbWVhc3VyZT09ImZ1bmN0aW9uIiYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7bi50ZXJtaW5hbCYmbi50ZXJtaW5hbC5yZW1lYXN1cmUoKX0pfX1mdW5jdGlvbiBXbCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC1zY2FsZS1sYWJlbC10b3AiKTtlJiYoZS50ZXh0Q29udGVudD1NYXRoLnJvdW5kKG4udGVybWluYWxTY2FsZSoxMDApKyIlIil9dmFyIHpsPXsiY2hldnJvbi1sZWZ0IjonPHBhdGggZD0iTTE1IDE4bC02LTYgNi02Ii8+JywiYXJyb3ctdXAiOic8cGF0aCBkPSJNMTIgMTlWNSIvPjxwYXRoIGQ9Ik01IDEybDctNyA3IDciLz4nLHJlZnJlc2g6JzxwYXRoIGQ9Ik0yMSAxMmE5IDkgMCAxIDEtMy02LjciLz48cGF0aCBkPSJNMjEgNHY1aC01Ii8+JyxleWU6JzxwYXRoIGQ9Ik0xIDEyczQtNyAxMS03IDExIDcgMTEgNy00IDctMTEgN1MxIDEyIDEgMTJ6Ii8+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMyIvPicsImV5ZS1vZmYiOic8cGF0aCBkPSJNMTcuOTQgMTcuOTRBMTAuOTQgMTAuOTQgMCAwIDEgMTIgMTljLTcgMC0xMS03LTExLTdhMTkuODYgMTkuODYgMCAwIDEgNC4yMi01LjE4Ii8+PHBhdGggZD0iTTEgMWwyMiAyMiIvPjxwYXRoIGQ9Ik05LjkgNC4yNEExMC45NCAxMC45NCAwIDAgMSAxMiA0YzcgMCAxMSA3IDExIDdhMTkuODMgMTkuODMgMCAwIDEtMy4zNiA0LjI3Ii8+PHBhdGggZD0iTTE0LjEyIDE0LjEyYTMgMyAwIDEgMS00LjI0LTQuMjQiLz4nLHg6JzxwYXRoIGQ9Ik0xOCA2TDYgMTgiLz48cGF0aCBkPSJNNiA2bDEyIDEyIi8+JyxzZWFyY2g6JzxjaXJjbGUgY3g9IjExIiBjeT0iMTEiIHI9IjciLz48cGF0aCBkPSJNMjEgMjFsLTQuMy00LjMiLz4nLGNvcHk6JzxyZWN0IHg9IjkiIHk9IjkiIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgcng9IjIiLz48cGF0aCBkPSJNNSAxNVY1YTIgMiAwIDAgMSAyLTJoMTAiLz4nLGNsaXBib2FyZDonPHJlY3QgeD0iOCIgeT0iMyIgd2lkdGg9IjgiIGhlaWdodD0iNCIgcng9IjEiLz48cGF0aCBkPSJNMTYgNWgyYTIgMiAwIDAgMSAyIDJ2MTJhMiAyIDAgMCAxLTIgMkg2YTIgMiAwIDAgMS0yLTJWN2EyIDIgMCAwIDEgMi0yaDIiLz4nLGRvd25sb2FkOic8cGF0aCBkPSJNMjEgMTV2NGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtNCIvPjxwYXRoIGQ9Ik03IDEwbDUgNSA1LTUiLz48cGF0aCBkPSJNMTIgMTVWMyIvPicsZWRpdDonPHBhdGggZD0iTTEyIDIwaDkiLz48cGF0aCBkPSJNMTYuNSAzLjVhMi4xMjEgMi4xMjEgMCAwIDEgMyAzTDcgMTlsLTQgMSAxLTR6Ii8+JyxzYXZlOic8cGF0aCBkPSJNMTkgMjFINWEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgxMWw1IDV2MTFhMiAyIDAgMCAxLTIgMnoiLz48cGF0aCBkPSJNMTcgMjF2LThIN3Y4Ii8+PHBhdGggZD0iTTcgM3Y1aDgiLz4nLCJyb3RhdGUtY2N3IjonPHBhdGggZD0iTTMgMTJhOSA5IDAgMSAwIDMtNi43Ii8+PHBhdGggZD0iTTMgNHY1aDUiLz4nLCJ3cmFwLXRleHQiOic8cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTMgMTJoMTVhMyAzIDAgMSAxIDAgNmgtNCIvPjxwYXRoIGQ9Ik0xNiAxNmwtMiAyIDIgMiIvPjxwYXRoIGQ9Ik0zIDE4aDYiLz4nLHR5cGU6JzxwYXRoIGQ9Ik00IDdWNGgxNnYzIi8+PHBhdGggZD0iTTkgMjBoNiIvPjxwYXRoIGQ9Ik0xMiA0djE2Ii8+JyxtaW51czonPHBhdGggZD0iTTUgMTJoMTQiLz4nLHBsdXM6JzxwYXRoIGQ9Ik0xMiA1djE0Ii8+PHBhdGggZD0iTTUgMTJoMTQiLz4nLCJzZW5kLXRvLWlucHV0IjonPHBhdGggZD0iTTIyIDJMMTEgMTMiLz48cGF0aCBkPSJNMjIgMmwtNyAyMC00LTktOS00eiIvPicsdGVybWluYWw6Jzxwb2x5bGluZSBwb2ludHM9IjQgMTcgMTAgMTEgNCA1Ii8+PGxpbmUgeDE9IjEyIiB5MT0iMTkiIHgyPSIyMCIgeTI9IjE5Ii8+JywiZm9sZGVyLW9wZW4iOic8cGF0aCBkPSJNNiAxNGwxLjQ1LTIuOUEyIDIgMCAwIDEgOS4yNCAxMEgyMGEyIDIgMCAwIDEgMS45NCAyLjVsLTEuNTUgNmEyIDIgMCAwIDEtMS45NCAxLjVINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmgzLjkzYTIgMiAwIDAgMSAxLjY2LjlsLjgyIDEuMmEyIDIgMCAwIDAgMS42Ni45SDE4YTIgMiAwIDAgMSAyIDJ2MiIvPicsaW5mbzonPGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMTAiLz48bGluZSB4MT0iMTIiIHkxPSIxNiIgeDI9IjEyIiB5Mj0iMTIiLz48bGluZSB4MT0iMTIiIHkxPSI4IiB4Mj0iMTIuMDEiIHkyPSI4Ii8+J307ZnVuY3Rpb24gcWUoZSx0KXt0PXR8fHt9O3ZhciByPXpsW2VdfHwiIixpPXQuc2l6ZXx8MTYsYT10LmNsYXNzTmFtZT8iICIrdC5jbGFzc05hbWU6IiI7cmV0dXJuJzxzdmcgY2xhc3M9IndhbmQtaWNvbiB3YW5kLWljb24tJytlK2ErJyIgd2lkdGg9IicraSsnIiBoZWlnaHQ9IicraSsnIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPicrcisiPC9zdmc+In1mdW5jdGlvbiBWbChlKXt2YXIgdD1lfHx0bigpO3JldHVybiB0Pyc8ZGl2IGNsYXNzPSJmaWxlLXRyZWUiIGlkPSJmaWxlLXRyZWUiIGRhdGEtY3dkPSInK3AodCkrJyI+PGRpdiBjbGFzcz0idHJlZS1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj48L2Rpdj4nOic8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIGVtcHR5Ij5cdTY3MkFcdTkxNERcdTdGNkVcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTVcdTMwMDI8L2Rpdj4nfXZhciBVbD17cG5nOiJcdXsxRjVCQ31cdUZFMEYiLGpwZzoiXHV7MUY1QkN9XHVGRTBGIixqcGVnOiJcdXsxRjVCQ31cdUZFMEYiLGdpZjoiXHV7MUY1QkN9XHVGRTBGIix3ZWJwOiJcdXsxRjVCQ31cdUZFMEYiLHN2ZzoiXHV7MUY1QkN9XHVGRTBGIixhdmlmOiJcdXsxRjVCQ31cdUZFMEYiLGJtcDoiXHV7MUY1QkN9XHVGRTBGIixpY286Ilx1ezFGNUJDfVx1RkUwRiIsaGVpYzoiXHV7MUY1QkN9XHVGRTBGIixoZWlmOiJcdXsxRjVCQ31cdUZFMEYiLHBkZjoiXHV7MUY0RDV9Iixkb2M6Ilx1ezFGNEQ4fSIsZG9jeDoiXHV7MUY0RDh9IixvZHQ6Ilx1ezFGNEQ4fSIseGxzOiJcdXsxRjRDQX0iLHhsc3g6Ilx1ezFGNENBfSIsY3N2OiJcdXsxRjRDQX0iLHRzdjoiXHV7MUY0Q0F9IixwcHQ6Ilx1ezFGNEQ5fSIscHB0eDoiXHV7MUY0RDl9IixtcDQ6Ilx1ezFGM0FDfSIsd2VibToiXHV7MUYzQUN9Iixtb3Y6Ilx1ezFGM0FDfSIsbWt2OiJcdXsxRjNBQ30iLG00djoiXHV7MUYzQUN9IixvZ3Y6Ilx1ezFGM0FDfSIsbXAzOiJcdXsxRjNCNX0iLHdhdjoiXHV7MUYzQjV9IixvZ2c6Ilx1ezFGM0I1fSIsbTRhOiJcdXsxRjNCNX0iLGZsYWM6Ilx1ezFGM0I1fSIsYWFjOiJcdXsxRjNCNX0iLG9wdXM6Ilx1ezFGM0I1fSIsemlwOiJcdXsxRjRFNn0iLHRhcjoiXHV7MUY0RTZ9IixnejoiXHV7MUY0RTZ9Iix0Z3o6Ilx1ezFGNEU2fSIsYnoyOiJcdXsxRjRFNn0iLCI3eiI6Ilx1ezFGNEU2fSIscmFyOiJcdXsxRjRFNn0iLHh6OiJcdXsxRjRFNn0iLG1kOiJcdXsxRjRERH0iLG1hcmtkb3duOiJcdXsxRjRERH0iLG1keDoiXHV7MUY0RER9Iixyc3Q6Ilx1ezFGNEREfSIsdHh0OiJcdXsxRjRERH0iLGxvZzoiXHV7MUY0RER9IixodG1sOiJcdXsxRjMxMH0iLGh0bToiXHV7MUYzMTB9Iix4bWw6Ilx1ezFGMzEwfSIsY3NzOiJcdXsxRjNBOH0iLHNjc3M6Ilx1ezFGM0E4fSIsbGVzczoiXHV7MUYzQTh9Iixqc29uOiJcdTI2OTlcdUZFMEYiLGpzb25jOiJcdTI2OTlcdUZFMEYiLHlhbWw6Ilx1MjY5OVx1RkUwRiIseW1sOiJcdTI2OTlcdUZFMEYiLHRvbWw6Ilx1MjY5OVx1RkUwRiIsaW5pOiJcdTI2OTlcdUZFMEYiLGNmZzoiXHUyNjk5XHVGRTBGIixjb25mOiJcdTI2OTlcdUZFMEYiLGVudjoiXHUyNjk5XHVGRTBGIixlZGl0b3Jjb25maWc6Ilx1MjY5OVx1RkUwRiIsdHM6Ilx1ezFGNERDfSIsdHN4OiJcdXsxRjREQ30iLGpzOiJcdXsxRjREQ30iLGpzeDoiXHV7MUY0REN9IixtanM6Ilx1ezFGNERDfSIsY2pzOiJcdXsxRjREQ30iLHB5OiJcdXsxRjREQ30iLHJiOiJcdXsxRjREQ30iLGdvOiJcdXsxRjREQ30iLHJzOiJcdXsxRjREQ30iLGphdmE6Ilx1ezFGNERDfSIsYzoiXHV7MUY0REN9IixjcHA6Ilx1ezFGNERDfSIsaDoiXHV7MUY0REN9IixocHA6Ilx1ezFGNERDfSIsY3M6Ilx1ezFGNERDfSIsc3dpZnQ6Ilx1ezFGNERDfSIsa3Q6Ilx1ezFGNERDfSIsc2NhbGE6Ilx1ezFGNERDfSIscGhwOiJcdXsxRjREQ30iLHNoOiJcdXsxRjREQ30iLGJhc2g6Ilx1ezFGNERDfSIsenNoOiJcdXsxRjREQ30iLGZpc2g6Ilx1ezFGNERDfSIsbHVhOiJcdXsxRjREQ30iLHNxbDoiXHV7MUY0REN9IixncmFwaHFsOiJcdXsxRjREQ30iLHByb3RvOiJcdXsxRjREQ30iLHZ1ZToiXHV7MUY0REN9IixzdmVsdGU6Ilx1ezFGNERDfSIsZGlmZjoiXHV7MUY0REN9IixwYXRjaDoiXHV7MUY0REN9Iix0dGY6Ilx1ezFGNTI0fSIsb3RmOiJcdXsxRjUyNH0iLHdvZmY6Ilx1ezFGNTI0fSIsd29mZjI6Ilx1ezFGNTI0fSIsZW90OiJcdXsxRjUyNH0ifTtmdW5jdGlvbiB5dShlKXtpZighZSlyZXR1cm4iXHV7MUY0QzR9IjtpZihlLnR5cGU9PT0iZGlyIilyZXR1cm4iXHV7MUY0QzF9Ijt2YXIgdD0oZS5uYW1lfHwiIikudG9Mb3dlckNhc2UoKTtpZih0PT09ImRvY2tlcmZpbGUiKXJldHVybiJcdXsxRjQzM30iO2lmKHQ9PT0ibWFrZWZpbGUiKXJldHVybiJcdXsxRjZFMH1cdUZFMEYiO2lmKHQ9PT0ibGljZW5zZSIpcmV0dXJuIlx1ezFGNERDfSI7aWYodD09PSJyZWFkbWUiKXJldHVybiJcdXsxRjRERH0iO3ZhciByPXQubGFzdEluZGV4T2YoIi4iKTtpZihyPDB8fHI9PT10Lmxlbmd0aC0xKXJldHVybiJcdXsxRjRDNH0iO3ZhciBpPXQuc2xpY2UocisxKTtyZXR1cm4gVWxbaV18fCJcdXsxRjRDNH0ifWZ1bmN0aW9uIFBuKGUpe2lmKHR5cGVvZiBlIT0ibnVtYmVyInx8IWlzRmluaXRlKGUpfHxlPDApcmV0dXJuIiI7aWYoZTwxMDI0KXJldHVybiBlKyIgQiI7dmFyIHQ9ZS8xMDI0O2lmKHQ8MTAyNClyZXR1cm4odD49MTA/TWF0aC5yb3VuZCh0KTp0LnRvRml4ZWQoMSkpKyIgS0IiO3ZhciByPXQvMTAyNDtpZihyPDEwMjQpcmV0dXJuKHI+PTEwP01hdGgucm91bmQocik6ci50b0ZpeGVkKDEpKSsiIE1CIjt2YXIgaT1yLzEwMjQ7cmV0dXJuKGk+PTEwP01hdGgucm91bmQoaSk6aS50b0ZpeGVkKDEpKSsiIEdCIn1mdW5jdGlvbiBLbChlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1EYXRlLnBhcnNlKGUpO3JldHVybiBpc05hTih0KT8iIjpuZXcgRGF0ZSh0KS50b0xvY2FsZVN0cmluZygpfWZ1bmN0aW9uIGJ1KCl7aWYobi5maWxlRXhwbG9yZXJDd2QpcmV0dXJuIG4uZmlsZUV4cGxvcmVyQ3dkO2lmKG4uc2VsZWN0ZWRJZCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkPT09bi5zZWxlY3RlZElkfSk7aWYoZSYmZS5jd2QpcmV0dXJuIGUuY3dkfXJldHVybiB0bigpfWZ1bmN0aW9uIHF0KGUpe2U9ZXx8e307dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXIiKSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLWN3ZCIpO2lmKHQpe3ZhciBpPWUuY3dkfHxidSgpO2lmKCFpKXt0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1leHBsb3JlciBlbXB0eSI+XHU2Q0ExXHU2NzA5XHU1M0VGXHU2NjNFXHU3OTNBXHU3Njg0XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1XHUzMDAyPC9kaXY+JztyZXR1cm59bi5maWxlRXhwbG9yZXJDd2Q9aSxuLmZpbGVFeHBsb3JlckxvYWRpbmc9ITAsbi5hbGxGaWxlcz1bXSxuLmZpbGVFeHBsb3JlclRydW5jYXRlZD0hMSxuLmZpbGVFeHBsb3JlclRvdGFsPTAsdC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIiPjxkaXYgY2xhc3M9InRyZWUtbG9hZGluZyIgc3R5bGU9InBhZGRpbmc6MTJweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6MC44MTI1cmVtOyI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9kaXY+PC9kaXY+JyxyJiYoci50YWdOYW1lPT09IklOUFVUIj9kb2N1bWVudC5hY3RpdmVFbGVtZW50IT09ciYmKHIudmFsdWU9aSk6ci50ZXh0Q29udGVudD1pLHIudGl0bGU9aSk7dmFyIGE9Ii9hcGkvZGlyZWN0b3J5P3E9IitlbmNvZGVVUklDb21wb25lbnQoaSkrIiZnaXRTdGF0dXM9dHJ1ZSI7ZmV0Y2goYSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odSl7aWYoIXUub2spdGhyb3cgbmV3IEVycm9yKCJGYWlsZWQgdG8gbG9hZCBkaXJlY3RvcnkuIik7cmV0dXJuIHUuanNvbigpfSkudGhlbihmdW5jdGlvbih1KXtuLmZpbGVFeHBsb3JlckxvYWRpbmc9ITE7dmFyIHMsbyxsO2lmKEFycmF5LmlzQXJyYXkodSk/KHM9dSxvPSExLGw9dS5sZW5ndGgpOihzPXUmJnUuaXRlbXN8fFtdLG89ISEodSYmdS50cnVuY2F0ZWQpLGw9dSYmdS50b3RhbHx8cy5sZW5ndGgpLCFzfHxzLmxlbmd0aD09PTApe3QuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIGVtcHR5Ij5cdTdBN0FcdTc2RUVcdTVGNTVcdTYyMTZcdTY1RTBcdTZDRDVcdThCQkZcdTk1RUVcdTMwMDI8L2Rpdj4nO3JldHVybn1uLmFsbEZpbGVzPXMsbi5maWxlRXhwbG9yZXJUcnVuY2F0ZWQ9byxuLmZpbGVFeHBsb3JlclRvdGFsPWwsRXUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7bi5maWxlRXhwbG9yZXJMb2FkaW5nPSExLHQuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIGVtcHR5Ij5cdTUyQTBcdThGN0RcdTU5MzFcdThEMjVcdUZGMENcdThCRjdcdTY4QzBcdTY3RTVcdThERUZcdTVGODRcdTYyMTZcdTY3NDNcdTk2NTBcdTMwMDI8L2Rpdj4nfSl9fWZ1bmN0aW9uIEV1KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXIiKTtpZihlKXt2YXIgdD1uLmZpbGVFeHBsb3JlckN3ZHx8IiI7aWYodCl7dmFyIHI9bi5maWxlU2VhcmNoUXVlcnksaT1uLmFsbEZpbGVzfHxbXSxhPWk7aWYocil7dmFyIHU9ci50b0xvd2VyQ2FzZSgpO2E9aS5maWx0ZXIoZnVuY3Rpb24obCl7cmV0dXJuIGwubmFtZS50b0xvd2VyQ2FzZSgpLmluZGV4T2YodSkhPT0tMX0pfWlmKGEubGVuZ3RoPT09MCl7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIgZW1wdHkiPicrKHI/Ilx1NkNBMVx1NjcwOVx1NjI3RVx1NTIzMFx1NTMzOVx1OTE0RFx1NzY4NFx1NjU4N1x1NEVGNiI6Ilx1N0E3QVx1NzZFRVx1NUY1NSIpKyI8L2Rpdj4iO3JldHVybn12YXIgcz0iIjtpZighciYmbi5maWxlRXhwbG9yZXJUcnVuY2F0ZWQpe3ZhciBvPWkubGVuZ3RoO3M9JzxkaXYgY2xhc3M9InRyZWUtdHJ1bmNhdGVkIiB0aXRsZT0iXHU1NDBFXHU3QUVGXHU2MzA5XHU1QjU3XHU2QkNEXHU1RThGXHU2NzAwXHU1OTFBXHU4RkQ0XHU1NkRFICcrbysnIFx1OTg3OSI+XHU2NjNFXHU3OTNBXHU1MjREICcrbysiIFx1OTg3OSAvIFx1NTE3MSAiK24uZmlsZUV4cGxvcmVyVG90YWwrIiBcdTk4Nzk8L2Rpdj4ifWUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXRyZWUiIGlkPSJmaWxlLXRyZWUiIGRhdGEtY3dkPSInK3AodCkrJyI+JythLm1hcChmdW5jdGlvbihsKXtyZXR1cm4gRnUobCl9KS5qb2luKCIiKSsiPC9kaXY+IitzLHd1KCl9fX1mdW5jdGlvbiBGdShlLHQpe3Q9dHx8MDt2YXIgcj1wKGUubmFtZSksaT1lLnR5cGU9PT0iZGlyIixhPXl1KGUpLHU9aT8iXHUyNUI4IjoiIixzPWk/IiI6IiBlbXB0eSIsbz1lLmdpdFN0YXR1cyxsPVlsKG8pLGM9IiI7cmV0dXJuIWkmJnR5cGVvZiBlLnNpemU9PSJudW1iZXIiJiYoYz0nPHNwYW4gY2xhc3M9InRyZWUtbWV0YSIgdGl0bGU9Ilx1NTkyN1x1NUMwRlx1RkYxQScrcChQbihlLnNpemUpKSsoZS5tdGltZT9gClx1NEZFRVx1NjUzOVx1NjVGNlx1OTVGNFx1RkYxQWArcChLbChlLm10aW1lKSk6IiIpKyciPicrcChQbihlLnNpemUpKSsiPC9zcGFuPiIpLCc8ZGl2IGNsYXNzPSJ0cmVlLWl0ZW0iIGRhdGEtcGF0aD0iJytwKGUucGF0aCkrJyIgZGF0YS10eXBlPSInK3AoZS50eXBlKSsnIiBkYXRhLW5hbWU9IicrcChlLm5hbWUpKyciIHRhYmluZGV4PSIwIj48c3BhbiBjbGFzcz0idHJlZS10b2dnbGUnK3MrJyI+Jyt1Kyc8L3NwYW4+PHNwYW4gY2xhc3M9InRyZWUtaWNvbiI+JythKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRyZWUtbmFtZSI+JytyKyI8L3NwYW4+IitjKyhsPyc8c3BhbiBjbGFzcz0iZ2l0LXN0YXR1cy1iYWRnZSAnK2wuY2xhc3MrJyIgdGl0bGU9IicrbC50aXRsZSsnIj4nK2wudGV4dCsiPC9zcGFuPiI6IiIpKyI8L2Rpdj4ifWZ1bmN0aW9uIFlsKGUpe3JldHVybiBlP2Uuc3RhZ2VkPT09ImFkZGVkIj97dGV4dDoiQSIsY2xhc3M6ImdpdC1hZGRlZCIsdGl0bGU6Ilx1NURGMlx1NjY4Mlx1NUI1OFx1RkYwOFx1NjVCMFx1NTg5RVx1RkYwOSJ9OmUuc3RhZ2VkPT09Im1vZGlmaWVkIj97dGV4dDoiTSIsY2xhc3M6ImdpdC1tb2RpZmllZCIsdGl0bGU6Ilx1NURGMlx1NjY4Mlx1NUI1OFx1RkYwOFx1NEZFRVx1NjUzOVx1RkYwOSJ9OmUuc3RhZ2VkPT09ImRlbGV0ZWQiP3t0ZXh0OiJEIixjbGFzczoiZ2l0LWRlbGV0ZWQiLHRpdGxlOiJcdTVERjJcdTY2ODJcdTVCNThcdUZGMDhcdTUyMjBcdTk2NjRcdUZGMDkifTplLnN0YWdlZD09PSJyZW5hbWVkIj97dGV4dDoiUiIsY2xhc3M6ImdpdC1yZW5hbWVkIix0aXRsZToiXHU1REYyXHU2NjgyXHU1QjU4XHVGRjA4XHU5MUNEXHU1NDdEXHU1NDBEXHVGRjA5In06ZS51bnN0YWdlZD09PSJtb2RpZmllZCI/e3RleHQ6Ik0iLGNsYXNzOiJnaXQtdW5zdGFnZWQiLHRpdGxlOiJcdTY3MkFcdTY2ODJcdTVCNThcdUZGMDhcdTRGRUVcdTY1MzlcdUZGMDkifTplLnVuc3RhZ2VkPT09ImRlbGV0ZWQiP3t0ZXh0OiJEIixjbGFzczoiZ2l0LXVuc3RhZ2VkLWRlbGV0ZWQiLHRpdGxlOiJcdTY3MkFcdTY2ODJcdTVCNThcdUZGMDhcdTUyMjBcdTk2NjRcdUZGMDkifTplLnVudHJhY2tlZD97dGV4dDoiPyIsY2xhc3M6ImdpdC11bnRyYWNrZWQiLHRpdGxlOiJcdTY3MkFcdThEREZcdThFMkEifTpudWxsOm51bGx9ZnVuY3Rpb24gd3UoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS10cmVlIik7aWYoZSl7ZS5xdWVyeVNlbGVjdG9yQWxsKCIudHJlZS1pdGVtW2RhdGEtdHlwZT0nZGlyJ10iKS5mb3JFYWNoKGZ1bmN0aW9uKGkpe2kuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe0psKGkpfSl9KSxlLnF1ZXJ5U2VsZWN0b3JBbGwoIi50cmVlLWl0ZW1bZGF0YS10eXBlPSdmaWxlJ10iKS5mb3JFYWNoKGZ1bmN0aW9uKGkpe3ZhciBhPWZ1bmN0aW9uKCl7V2koaS5kYXRhc2V0LnBhdGgpfTtpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixhKSxpLmFkZEV2ZW50TGlzdGVuZXIoImRibGNsaWNrIixhKX0pO3ZhciB0PW51bGwscj0hMTtlLnF1ZXJ5U2VsZWN0b3JBbGwoIi50cmVlLWl0ZW0iKS5mb3JFYWNoKGZ1bmN0aW9uKGkpe2kuYWRkRXZlbnRMaXN0ZW5lcigiY29udGV4dG1lbnUiLGZ1bmN0aW9uKGEpe2EucHJldmVudERlZmF1bHQoKSxDdShhLmNsaWVudFgsYS5jbGllbnRZLGkpfSksaS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixmdW5jdGlvbihhKXtyPSExLHQ9c2V0VGltZW91dChmdW5jdGlvbigpe3I9ITA7dmFyIHU9YS50b3VjaGVzJiZhLnRvdWNoZXNbMF07Q3UodT91LmNsaWVudFg6MCx1P3UuY2xpZW50WTowLGkpfSw1MDApfSx7cGFzc2l2ZTohMH0pLGkuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLGZ1bmN0aW9uKCl7dCYmKGNsZWFyVGltZW91dCh0KSx0PW51bGwpfSksaS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGZ1bmN0aW9uKCl7dCYmKGNsZWFyVGltZW91dCh0KSx0PW51bGwpfSl9KX19ZnVuY3Rpb24gSmwoZSl7dmFyIHQ9ZS5kYXRhc2V0LnBhdGgscj1lLnF1ZXJ5U2VsZWN0b3IoIi50cmVlLXRvZ2dsZSIpLGk9ZS5uZXh0RWxlbWVudFNpYmxpbmc7aWYoaSYmaS5jbGFzc0xpc3QuY29udGFpbnMoInRyZWUtY2hpbGRyZW4iKSl7dmFyIGE9aS5jbGFzc0xpc3QuY29udGFpbnMoIm9wZW4iKTtpLmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iKSxyJiZyLmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iLCFhKTt2YXIgdT1lLnF1ZXJ5U2VsZWN0b3IoIi50cmVlLWljb24iKTt1JiYodS50ZXh0Q29udGVudD1hPyJcdXsxRjRDMX0iOiJcdXsxRjRDMn0iKTtyZXR1cm59ciYmci5jbGFzc0xpc3QuYWRkKCJvcGVuIik7dmFyIHM9ZS5xdWVyeVNlbGVjdG9yKCIudHJlZS1pY29uIik7cyYmKHMudGV4dENvbnRlbnQ9Ilx1ezFGNEMyfSIpO3ZhciBvPSIvYXBpL2RpcmVjdG9yeT9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQpKyImZ2l0U3RhdHVzPXRydWUiO2ZldGNoKG8se2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGwpe3JldHVybiBsLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obCl7dmFyIGM7QXJyYXkuaXNBcnJheShsKT9jPWw6Yz1sJiZsLml0ZW1zfHxbXTt2YXIgZj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtmLmNsYXNzTmFtZT0idHJlZS1jaGlsZHJlbiBvcGVuIiwhY3x8Yy5sZW5ndGg9PT0wP2YuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJ0cmVlLWl0ZW0iIHN0eWxlPSJjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6ZGVmYXVsdDsiPjxzcGFuIGNsYXNzPSJ0cmVlLXRvZ2dsZSBlbXB0eSI+XHUyNUI4PC9zcGFuPjxzcGFuIGNsYXNzPSJ0cmVlLW5hbWUiPlx1RkYwOFx1N0E3QVx1NzZFRVx1NUY1NVx1RkYwOTwvc3Bhbj48L2Rpdj4nOmYuaW5uZXJIVE1MPWMubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBGdShkKX0pLmpvaW4oIiIpLGUucGFyZW50Tm9kZS5pbnNlcnRCZWZvcmUoZixlLm5leHRTaWJsaW5nKSx3dSgpfSkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiBHbCgpe3ZhciBlPWJ1KCk7aWYoZSl7dmFyIHQ9ZS5yZXBsYWNlKC9cLyskLywiIikucmVwbGFjZSgvXC9bXlwvXSskLywiIik7dHx8KHQ9Ii8iKSx0IT09ZSYmcXQoe2N3ZDp0fSl9fWZ1bmN0aW9uIFJpKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZighdClyZXR1cm4hMTt2YXIgcj10LnZhbHVlfHwiIixpPXImJiFyLmVuZHNXaXRoKCIgIikmJiFyLmVuZHNXaXRoKGAKYCk/IiAiOiIiO3QudmFsdWU9citpK2UsdC5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgiaW5wdXQiLHtidWJibGVzOiEwfSkpO3RyeXt0LmZvY3VzKCksdC5zZXRTZWxlY3Rpb25SYW5nZSh0LnZhbHVlLmxlbmd0aCx0LnZhbHVlLmxlbmd0aCl9Y2F0Y2h7fXJldHVybiEwfWZ1bmN0aW9uIFVyKGUpe2lmKG5hdmlnYXRvci5jbGlwYm9hcmQmJm5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KXJldHVybiBuYXZpZ2F0b3IuY2xpcGJvYXJkLndyaXRlVGV4dChlKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuITB9KS5jYXRjaChmdW5jdGlvbigpe3JldHVybiB0KCl9KTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHQoKSk7ZnVuY3Rpb24gdCgpe3RyeXt2YXIgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZXh0YXJlYSIpO3IudmFsdWU9ZSxyLnN0eWxlLnBvc2l0aW9uPSJmaXhlZCIsci5zdHlsZS5sZWZ0PSItOTk5OXB4Iixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHIpLHIuc2VsZWN0KCk7dmFyIGk9ZG9jdW1lbnQuZXhlY0NvbW1hbmQoImNvcHkiKTtyZXR1cm4gZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChyKSxpfWNhdGNoe3JldHVybiExfX19ZnVuY3Rpb24gd3QoZSl7aWYodHlwZW9mIHdpbmRvdy5zaG93VG9hc3Q9PSJmdW5jdGlvbiIpe3dpbmRvdy5zaG93VG9hc3QoZSk7cmV0dXJufXZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuY2xhc3NOYW1lPSJ3YW5kLW1pbmktdG9hc3QiLHQudGV4dENvbnRlbnQ9ZSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmNsYXNzTGlzdC5hZGQoInNob3ciKX0sMTApLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LmNsYXNzTGlzdC5yZW1vdmUoInNob3ciKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dC5yZW1vdmUoKX0sMjIwKX0sMTYwMCl9ZnVuY3Rpb24gSG4oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1jb250ZXh0LW1lbnUiKTtlJiZlLnJlbW92ZSgpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImNsaWNrIixIbiwhMCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixIbiwhMCl9ZnVuY3Rpb24gQ3UoZSx0LHIpe0huKCk7dmFyIGk9ci5kYXRhc2V0LnBhdGh8fCIiLGE9ci5kYXRhc2V0LnR5cGV8fCJmaWxlIix1PW4uZmlsZUV4cGxvcmVyQ3dkfHwiIixzPWk7dSYmaS5pbmRleE9mKHUpPT09MCYmKHM9aS5zbGljZSh1Lmxlbmd0aCkucmVwbGFjZSgvXlwvKy8sIiIpfHwiLiIpO3ZhciBvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO28uaWQ9ImZpbGUtY29udGV4dC1tZW51IixvLmNsYXNzTmFtZT0iZmlsZS1jb250ZXh0LW1lbnUiO3ZhciBsPVtdO2E9PT0iZmlsZSI/bC5wdXNoKHtsYWJlbDoiXHU2MjUzXHU1RjAwXHU5ODg0XHU4OUM4IixpY29uOiJcdXsxRjQ0MX0iLHJ1bjpmdW5jdGlvbigpe1dpKGkpfX0pOmwucHVzaCh7bGFiZWw6Ilx1OEZEQlx1NTE2NVx1NkI2NFx1NzZFRVx1NUY1NSIsaWNvbjoiXHV7MUY0QzJ9IixydW46ZnVuY3Rpb24oKXtxdCh7Y3dkOml9KX19KSxsLnB1c2goe2xhYmVsOiJcdTU5MERcdTUyMzZcdTVCOENcdTY1NzRcdThERUZcdTVGODQiLGljb246Ilx1ezFGNENCfSIscnVuOmZ1bmN0aW9uKCl7VXIoaSkudGhlbihmdW5jdGlvbigpe3d0KCJcdTVERjJcdTU5MERcdTUyMzZcdThERUZcdTVGODQiKX0pfX0pLHMmJnMhPT1pJiZsLnB1c2goe2xhYmVsOiJcdTU5MERcdTUyMzZcdTc2RjhcdTVCRjlcdThERUZcdTVGODQiLGljb246Ilx1ezFGNENCfSIscnVuOmZ1bmN0aW9uKCl7VXIocykudGhlbihmdW5jdGlvbigpe3d0KCJcdTVERjJcdTU5MERcdTUyMzZcdTc2RjhcdTVCRjlcdThERUZcdTVGODQiKX0pfX0pLGwucHVzaCh7bGFiZWw6Ilx1N0M5OFx1OEQzNFx1OERFRlx1NUY4NFx1NTIzMFx1OEY5M1x1NTE2NVx1Njg0NiIsaWNvbjoiXHUyNzBGXHVGRTBGIixydW46ZnVuY3Rpb24oKXtSaShpKSYmd3QoIlx1NURGMlx1N0M5OFx1OEQzNFx1NTIzMFx1OEY5M1x1NTE2NVx1Njg0NiIpfX0pLGE9PT0iZmlsZSImJmwucHVzaCh7bGFiZWw6Ilx1NEUwQlx1OEY3RFx1NjU4N1x1NEVGNiIsaWNvbjoiXHUyQjA3IixydW46ZnVuY3Rpb24oKXt2YXIgaD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7aC5ocmVmPSIvYXBpL2ZpbGUtcmF3P2Rvd25sb2FkPTEmcGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudChpKSxoLnJlbD0ibm9vcGVuZXIiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaCksaC5jbGljaygpLGgucmVtb3ZlKCl9fSksby5pbm5lckhUTUw9bC5tYXAoZnVuY3Rpb24oaCxtKXtyZXR1cm4nPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJmaWxlLWNvbnRleHQtbWVudS1pdGVtIiBkYXRhLWlkeD0iJyttKyciPjxzcGFuIGNsYXNzPSJjdHgtaWNvbiI+JytoLmljb24rJzwvc3Bhbj48c3BhbiBjbGFzcz0iY3R4LWxhYmVsIj4nK3AoaC5sYWJlbCkrIjwvc3Bhbj48L2J1dHRvbj4ifSkuam9pbigiIiksZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChvKTt2YXIgYz13aW5kb3cuaW5uZXJXaWR0aCxmPXdpbmRvdy5pbm5lckhlaWdodCxkPW8uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdj1NYXRoLm1pbihlLGMtZC53aWR0aC04KSxnPU1hdGgubWluKHQsZi1kLmhlaWdodC04KTtvLnN0eWxlLmxlZnQ9TWF0aC5tYXgoOCx2KSsicHgiLG8uc3R5bGUudG9wPU1hdGgubWF4KDgsZykrInB4IixvLnF1ZXJ5U2VsZWN0b3JBbGwoIi5maWxlLWNvbnRleHQtbWVudS1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihoKXtoLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihtKXttLnN0b3BQcm9wYWdhdGlvbigpO3ZhciBiPXBhcnNlSW50KGguZGF0YXNldC5pZHgsMTApO0huKCksbFtiXSYmbFtiXS5ydW4oKX0pfSksc2V0VGltZW91dChmdW5jdGlvbigpe2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixIbiwhMCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixIbiwhMCl9LDApfXZhciBxPW51bGw7ZnVuY3Rpb24gV2koZSl7dmFyIHQ9cSYmcS5vdmVybGF5O2lmKHQpe3EucGF0aD1lLHEuZWRpdGluZz0hMSxxLmRpcnR5PSExO3ZhciBzPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy10aXRsZSIpO3MmJihzLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9ImZpbGUtcHJldmlldy1pY29uIj5cdXsxRjRDNH08L3NwYW4+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LW5hbWUtYmxvY2siPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1uYW1lLXJvdyI+PHNwYW4gY2xhc3M9ImZpbGUtcHJldmlldy1maWxlbmFtZSI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9zcGFuPjwvZGl2PjxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctcGF0aCIgdGl0bGU9IiI+PC9zcGFuPjwvZGl2PicpO3ZhciBvPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy10b29sYmFyIik7byYmKG8uaW5uZXJIVE1MPSIiKTt2YXIgbD10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctcGF0aCIpO2wmJihsLnRleHRDb250ZW50PSIiLGwudGl0bGU9IiIpO3ZhciBjPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7YyYmKGMuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbG9hZGluZyI+XHU1MkEwXHU4RjdEXHU5ODg0XHU4OUM4XHUyMDI2PC9kaXY+Jyl9ZWxzZXt0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLHQuY2xhc3NOYW1lPSJmaWxlLXByZXZpZXctb3ZlcmxheSIsdC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1tb2RhbCIgdGFiaW5kZXg9Ii0xIj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctaGVhZGVyIj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctdGl0bGUiPjxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctaWNvbiI+XHV7MUY0QzR9PC9zcGFuPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1uYW1lLWJsb2NrIj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbmFtZS1yb3ciPjxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctZmlsZW5hbWUiPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvc3Bhbj48L2Rpdj48c3BhbiBjbGFzcz0iZmlsZS1wcmV2aWV3LXBhdGgiIHRpdGxlPSIiPjwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctdG9vbGJhciI+PC9kaXY+PGJ1dHRvbiBjbGFzcz0iZmlsZS1wcmV2aWV3LWNsb3NlIiB0aXRsZT0iXHU1MTczXHU5NUVEIChFc2MpIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPicrcWUoIngiLHtzaXplOjE4fSkrJzwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1ib2R5Ij48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbG9hZGluZyI+XHU1MkEwXHU4RjdEXHU5ODg0XHU4OUM4XHUyMDI2PC9kaXY+PC9kaXY+PC9kaXY+Jyxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpO3ZhciByPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1jbG9zZSIpLGk9ZnVuY3Rpb24oKXtpZihxJiZxLmRpcnR5JiZ0eXBlb2Ygcm49PSJmdW5jdGlvbiIpe3JuKHt0eXBlOiJ3YXJuaW5nIix0aXRsZToiXHU2NTNFXHU1RjAzXHU2NzJBXHU0RkREXHU1QjU4XHU3Njg0XHU0RkVFXHU2NTM5XHVGRjFGIixtZXNzYWdlOiJcdTVGNTNcdTUyNERcdTY1ODdcdTRFRjZcdTY3MDlcdTY3MkFcdTRGRERcdTVCNThcdTc2ODRcdTY1MzlcdTUyQThcdUZGMENcdTUxNzNcdTk1RURcdTU0MEVcdTRGMUFcdTRFMjJcdTU5MzFcdTMwMDIiLGJ1dHRvbnM6W3tsYWJlbDoiXHU3RUU3XHU3RUVEXHU3RjE2XHU4RjkxIix2YWx1ZTohMSxraW5kOiJnaG9zdCJ9LHtsYWJlbDoiXHU2NTNFXHU1RjAzXHU0RkVFXHU2NTM5Iix2YWx1ZTohMCxraW5kOiJkYW5nZXIiLGF1dG9mb2N1czohMH1dLGNhbmNlbFZhbHVlOiExfSkudGhlbihmdW5jdGlvbihkKXtkJiZhKCl9KTtyZXR1cm59YSgpfSxhPWZ1bmN0aW9uKCl7dC5yZW1vdmUoKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIix1KSxxPW51bGx9O3IuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGkpLHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGQpe2QudGFyZ2V0PT09dCYmaSgpfSk7dmFyIHU9ZnVuY3Rpb24oZCl7aWYoKGQua2V5PT09InMifHxkLmtleT09PSJTIikmJihkLmN0cmxLZXl8fGQubWV0YUtleSkmJnEmJnEuZWRpdGluZyl7ZC5wcmV2ZW50RGVmYXVsdCgpLFN1KCk7cmV0dXJufWlmKGQua2V5PT09IkVzY2FwZSIpe2lmKHEmJnEuZWRpdGluZyl7ZC5wcmV2ZW50RGVmYXVsdCgpLHh1KCk7cmV0dXJufWkoKTtyZXR1cm59cSYmKGQudGFyZ2V0JiYoZC50YXJnZXQudGFnTmFtZT09PSJJTlBVVCJ8fGQudGFyZ2V0LnRhZ05hbWU9PT0iVEVYVEFSRUEiKXx8cS5lZGl0aW5nfHwoZC5rZXk9PT0iQXJyb3dMZWZ0Ij8oZC5wcmV2ZW50RGVmYXVsdCgpLEJ1KC0xKSk6ZC5rZXk9PT0iQXJyb3dSaWdodCImJihkLnByZXZlbnREZWZhdWx0KCksQnUoMSkpKSl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHUpLHE9e292ZXJsYXk6dCxjbG9zZTppLHBhdGg6ZSxkYXRhOm51bGwsZWRpdGluZzohMSxkaXJ0eTohMX19dmFyIGY9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXBhdGgiKTtmJiYoZi50ZXh0Q29udGVudD1lLGYudGl0bGU9ZSksZmV0Y2goIi9hcGkvZmlsZS1wcmV2aWV3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQoZSkse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGQpe3JldHVybiBkLmpzb24oKS50aGVuKGZ1bmN0aW9uKHYpe3JldHVybntvazpkLm9rLHN0YXR1czpkLnN0YXR1cyxkYXRhOnZ9fSl9KS50aGVuKGZ1bmN0aW9uKGQpe3ZhciB2PXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7aWYoIWQub2t8fGQuZGF0YSYmZC5kYXRhLmVycm9yKXt2YXIgZz1kLmRhdGEmJmQuZGF0YS5lcnJvcnx8Ilx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNSI7ZC5zdGF0dXM9PT00MTMmJmQuZGF0YSYmZC5kYXRhLnNpemUmJihnKz0iXHVGRjA4XHU2NTg3XHU0RUY2XHU1OTI3XHU1QzBGXHVGRjFBIitQbihkLmRhdGEuc2l6ZSkrIlx1RkYwOSIpLHYuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctZXJyb3IiPjxzcGFuIGNsYXNzPSJwcmV2aWV3LWVycm9yLWljb24iPlx1MjZBMDwvc3Bhbj48c3Bhbj4nK3AoZykrIjwvc3Bhbj48L2Rpdj4iLGQuc3RhdHVzPT09NDEzJiZ6aSh0LHtraW5kOiJiaW5hcnkiLHBhdGg6ZSxuYW1lOmUuc3BsaXQoIi8iKS5wb3AoKXx8ZSxleHQ6IiIsc2l6ZTpkLmRhdGEmJmQuZGF0YS5zaXplfHwwfSk7cmV0dXJufXEuZGF0YT1kLmRhdGEsRHUodCxkLmRhdGEpfSkuY2F0Y2goZnVuY3Rpb24oKXt2YXIgZD10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctYm9keSIpO2QuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctZXJyb3IiPjxzcGFuIGNsYXNzPSJwcmV2aWV3LWVycm9yLWljb24iPlx1MjZBMDwvc3Bhbj48c3Bhbj5cdTUyQTBcdThGN0RcdTk4ODRcdTg5QzhcdTU5MzFcdThEMjU8L3NwYW4+PC9kaXY+J30pfWZ1bmN0aW9uIEJ1KGUpe2lmKHEpe3ZhciB0PShuLmFsbEZpbGVzfHxbXSkuZmlsdGVyKGZ1bmN0aW9uKG8pe3JldHVybiBvLnR5cGU9PT0iZmlsZSJ9KTtpZih0Lmxlbmd0aCl7Zm9yKHZhciByPXEucGF0aCxpPS0xLGE9MDthPHQubGVuZ3RoO2ErKylpZih0W2FdLnBhdGg9PT1yKXtpPWE7YnJlYWt9aWYoIShpPDApKXt2YXIgdT0oaStlK3QubGVuZ3RoKSV0Lmxlbmd0aCxzPXRbdV0ucGF0aDtzJiZzIT09ciYmV2kocyl9fX19ZnVuY3Rpb24gRHUoZSx0KXt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctZmlsZW5hbWUiKTtyJiYoci50ZXh0Q29udGVudD10Lm5hbWUpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1pY29uIik7aSYmKGkudGV4dENvbnRlbnQ9eXUoe25hbWU6dC5uYW1lLHR5cGU6ImZpbGUifSkpO3ZhciBhPWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy10aXRsZSIpLHU9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWxhbmciKTt1JiZ1LnJlbW92ZSgpO3ZhciBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtzLmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LWxhbmciO3ZhciBvPXtpbWFnZToiXHU1NkZFXHU3MjQ3IixwZGY6IlBERiIsdmlkZW86Ilx1ODlDNlx1OTg5MSIsYXVkaW86Ilx1OTdGM1x1OTg5MSIsYmluYXJ5OiJcdTRFOENcdThGREJcdTUyMzYifTt0LmtpbmQ9PT0idGV4dCI/cy50ZXh0Q29udGVudD10Lmxhbmd8fCh0LmV4dHx8IiIpLnJlcGxhY2UoIi4iLCIiKXx8InRleHQiOnMudGV4dENvbnRlbnQ9b1t0LmtpbmRdfHwodC5leHR8fCIiKS5yZXBsYWNlKCIuIiwiIil8fHQua2luZCxhJiZhLmFwcGVuZENoaWxkKHMpLHppKGUsdCk7dmFyIGw9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWJvZHkiKTtsLmlubmVySFRNTD0iIixsLmNsYXNzTGlzdC5yZW1vdmUoImtpbmQtdGV4dCIsImtpbmQtaW1hZ2UiLCJraW5kLXBkZiIsImtpbmQtdmlkZW8iLCJraW5kLWF1ZGlvIiwia2luZC1iaW5hcnkiKSxsLmNsYXNzTGlzdC5hZGQoImtpbmQtIisodC5raW5kfHwidGV4dCIpKSx0LmtpbmQ9PT0iaW1hZ2UiPyRsKGwsdCk6dC5raW5kPT09InBkZiI/WGwobCx0KTp0LmtpbmQ9PT0idmlkZW8iP1psKGwsdCk6dC5raW5kPT09ImF1ZGlvIj9lYyhsLHQpOnQua2luZD09PSJiaW5hcnkiP3RjKGwsdCk6dC5sYW5nPT09Im1hcmtkb3duInx8L1wuKG1kfG1hcmtkb3dufG1keCkkL2kudGVzdCh0Lm5hbWV8fCIiKT9sLmlubmVySFRNTD0nPGRpdiBjbGFzcz0ibWFya2Rvd24tcHJldmlldyI+JythYyh0LmNvbnRlbnR8fCIiKSsiPC9kaXY+IjpRbChsLHQpfWZ1bmN0aW9uIFFsKGUsdCl7dmFyIHI9VHUodC5jb250ZW50fHwiIix0LmxhbmcpLGk9ci5zcGxpdChgCmApLGE9aS5tYXAoZnVuY3Rpb24odSxzKXtyZXR1cm4gcysxfSk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImNvZGUtcHJldmlldy13cmFwcGVyIj48ZGl2IGNsYXNzPSJjb2RlLXByZXZpZXctbGluZXMiPicrYS5qb2luKGAKYCkrJzwvZGl2PjxkaXYgY2xhc3M9ImNvZGUtcHJldmlldy1jb250ZW50Ij48cHJlPicraS5qb2luKGAKYCkrIjwvcHJlPjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gJGwoZSx0KXt2YXIgcj0iL2FwaS9maWxlLXJhdz9wYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQucGF0aCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImltYWdlLXByZXZpZXctd3JhcHBlciI+PGltZyBjbGFzcz0iaW1hZ2UtcHJldmlldy1pbWciIHNyYz0iJytyKyciIGFsdD0iJytwKHQubmFtZSkrJyIgLz48L2Rpdj4nO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLmltYWdlLXByZXZpZXctaW1nIik7aWYoaSl7dmFyIGE9ITE7aS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXthPSFhLGkuY2xhc3NMaXN0LnRvZ2dsZSgiem9vbWVkIixhKX0pfX1mdW5jdGlvbiBYbChlLHQpe3ZhciByPSIvYXBpL2ZpbGUtcmF3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKTtlLmlubmVySFRNTD0nPGlmcmFtZSBjbGFzcz0icGRmLXByZXZpZXctZnJhbWUiIHNyYz0iJytyKyciIHRpdGxlPSInK3AodC5uYW1lKSsnIj48L2lmcmFtZT4nfWZ1bmN0aW9uIFpsKGUsdCl7dmFyIHI9Ii9hcGkvZmlsZS1yYXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnBhdGgpO2UuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJtZWRpYS1wcmV2aWV3LXdyYXBwZXIiPjx2aWRlbyBjbGFzcz0ibWVkaWEtcHJldmlldy12aWRlbyIgY29udHJvbHMgcHJlbG9hZD0ibWV0YWRhdGEiIHNyYz0iJytyKyciPlx1NjBBOFx1NzY4NFx1NkQ0Rlx1ODlDOFx1NTY2OFx1NEUwRFx1NjUyRlx1NjMwMSB2aWRlbyBcdTY4MDdcdTdCN0VcdTMwMDI8L3ZpZGVvPjxkaXYgY2xhc3M9Im1lZGlhLXByZXZpZXctbWV0YSI+JytwKFBuKHQuc2l6ZSkpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIGVjKGUsdCl7dmFyIHI9Ii9hcGkvZmlsZS1yYXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnBhdGgpO2UuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJtZWRpYS1wcmV2aWV3LXdyYXBwZXIgYXVkaW8iPjxkaXYgY2xhc3M9Im1lZGlhLXByZXZpZXctaWNvbiI+XHV7MUYzQjV9PC9kaXY+PGRpdiBjbGFzcz0ibWVkaWEtcHJldmlldy1uYW1lIj4nK3AodC5uYW1lKSsnPC9kaXY+PGF1ZGlvIGNsYXNzPSJtZWRpYS1wcmV2aWV3LWF1ZGlvIiBjb250cm9scyBwcmVsb2FkPSJtZXRhZGF0YSIgc3JjPSInK3IrJyI+XHU2MEE4XHU3Njg0XHU2RDRGXHU4OUM4XHU1NjY4XHU0RTBEXHU2NTJGXHU2MzAxIGF1ZGlvIFx1NjgwN1x1N0I3RVx1MzAwMjwvYXVkaW8+PGRpdiBjbGFzcz0ibWVkaWEtcHJldmlldy1tZXRhIj4nK3AoUG4odC5zaXplKSkrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gdGMoZSx0KXt2YXIgcj0iL2FwaS9maWxlLXJhdz9kb3dubG9hZD0xJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKTtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctY2FyZCI+PGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctaWNvbiI+XHV7MUY0RTZ9PC9kaXY+PGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctbmFtZSI+JytwKHQubmFtZSkrJzwvZGl2PjxkaXYgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LW1ldGEiPjxzcGFuPicrcCgodC5leHR8fCIiKS5yZXBsYWNlKC9eXC4vLCIiKXx8Ilx1NjcyQVx1NzdFNVx1NjgzQ1x1NUYwRiIpKyI8L3NwYW4+PHNwYW4+XHhCNzwvc3Bhbj48c3Bhbj4iK3AoUG4odC5zaXplKSkrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJiaW5hcnktcHJldmlldy1wYXRoIiB0aXRsZT0iJytwKHQucGF0aCkrJyI+JytwKHQucGF0aCkrJzwvZGl2PjxkaXYgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LWFjdGlvbnMiPjxhIGNsYXNzPSJiaW5hcnktcHJldmlldy1idG4iIGhyZWY9IicrcisnIiBkb3dubG9hZD0iJytwKHQubmFtZSkrJyI+XHU0RTBCXHU4RjdEXHU2NTg3XHU0RUY2PC9hPjxidXR0b24gY2xhc3M9ImJpbmFyeS1wcmV2aWV3LWJ0biIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdGlvbj0idmlldy1jYXQiPlx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1NjdFNVx1NzcwQjwvYnV0dG9uPjwvZGl2PjwvZGl2Pic7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCdbZGF0YS1hY3Rpb249InZpZXctY2F0Il0nKTtpJiZpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe1JpKCdjYXQgLS0gIicrdC5wYXRoKyciJykmJnd0KCJcdTU0N0RcdTRFRTRcdTVERjJcdTdDOThcdThEMzRcdTUyMzBcdThGOTNcdTUxNjVcdTY4NDYiKX0pfWZ1bmN0aW9uIHppKGUsdCl7dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXRvb2xiYXIiKTtpZihyKXtpZihyLmlubmVySFRNTD0iIixyLmNsYXNzTGlzdC5yZW1vdmUoImVkaXRpbmciKSxxJiZxLmVkaXRpbmcpe3IuY2xhc3NMaXN0LmFkZCgiZWRpdGluZyIpLHNyKGUsdCk7cmV0dXJufXZhciBpPVtdO3Qua2luZD09PSJ0ZXh0IiYmaS5wdXNoKHtsYWJlbDoiXHU3RjE2XHU4RjkxXHU2NTg3XHU0RUY2IChFKSIsaWNvbjpxZSgiZWRpdCIpLHByaW1hcnk6ITAsYWN0aW9uOmZ1bmN0aW9uKCl7bmMoKX19KSxpLnB1c2goe2xhYmVsOiJcdTU5MERcdTUyMzZcdThERUZcdTVGODQiLGljb246cWUoImNsaXBib2FyZCIpLGFjdGlvbjpmdW5jdGlvbigpe1VyKHQucGF0aCkudGhlbihmdW5jdGlvbigpe3d0KCJcdTVERjJcdTU5MERcdTUyMzZcdThERUZcdTVGODQiKX0pfX0pLGkucHVzaCh7bGFiZWw6Ilx1N0M5OFx1OEQzNFx1NTIzMFx1OEY5M1x1NTE2NVx1Njg0NiIsaWNvbjpxZSgic2VuZC10by1pbnB1dCIpLGFjdGlvbjpmdW5jdGlvbigpe1JpKHQucGF0aCkmJnd0KCJcdTVERjJcdTdDOThcdThEMzRcdTUyMzBcdThGOTNcdTUxNjVcdTY4NDYiKX19KSxpLnB1c2goe2xhYmVsOiJcdTRFMEJcdThGN0QiLGljb246cWUoImRvd25sb2FkIiksYWN0aW9uOmZ1bmN0aW9uKCl7dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYSIpO2EuaHJlZj0iL2FwaS9maWxlLXJhdz9kb3dubG9hZD0xJnBhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKSxhLmRvd25sb2FkPXQubmFtZXx8IiIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKSxhLmNsaWNrKCksYS5yZW1vdmUoKX19KSx0LmtpbmQ9PT0idGV4dCImJihpLnB1c2goe2xhYmVsOiJcdTU5MERcdTUyMzZcdTUxNjhcdTkwRThcdTUxODVcdTVCQjkiLGljb246cWUoImNvcHkiKSxhY3Rpb246ZnVuY3Rpb24oKXtVcih0LmNvbnRlbnR8fCIiKS50aGVuKGZ1bmN0aW9uKCl7d3QoIlx1NURGMlx1NTkwRFx1NTIzNlx1NTE4NVx1NUJCOSIpfSl9fSksaS5wdXNoKHtsYWJlbDoiXHU1MjA3XHU2MzYyXHU4MUVBXHU1MkE4XHU2MzYyXHU4ODRDIixpY29uOnFlKCJ3cmFwLXRleHQiKSx0b2dnbGVDbGFzczoidG9vbGJhci1hY3RpdmUiLGdldEluaXRpYWw6ZnVuY3Rpb24oKXt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLXByZXZpZXctY29udGVudCBwcmUiKTtyZXR1cm4gYSYmYS5jbGFzc0xpc3QuY29udGFpbnMoIndyYXAiKX0sYWN0aW9uOmZ1bmN0aW9uKGEpe3ZhciB1PWUucXVlcnlTZWxlY3RvcigiLmNvZGUtcHJldmlldy1jb250ZW50IHByZSIpO3UmJih1LmNsYXNzTGlzdC50b2dnbGUoIndyYXAiKSxhLmNsYXNzTGlzdC50b2dnbGUoInRvb2xiYXItYWN0aXZlIix1LmNsYXNzTGlzdC5jb250YWlucygid3JhcCIpKSl9fSksaS5wdXNoKHtraW5kOiJncm91cCIsY2xhc3NOYW1lOiJ0b29sYmFyLWdyb3VwLWZvbnRzaXplIixjaGlsZHJlbjpbe2xhYmVsOiJcdTdGMjlcdTVDMEZcdTVCNTdcdTUzRjciLGljb246cWUoIm1pbnVzIiksYWN0aW9uOmZ1bmN0aW9uKCl7SXUoZSwtMSl9fSx7a2luZDoibGFiZWwiLGljb246cWUoInR5cGUiKSxsYWJlbDoiXHU1QjU3XHU1M0Y3In0se2xhYmVsOiJcdTY1M0VcdTU5MjdcdTVCNTdcdTUzRjciLGljb246cWUoInBsdXMiKSxhY3Rpb246ZnVuY3Rpb24oKXtJdShlLDEpfX1dfSkpLGt1KHIsaSxlKX19ZnVuY3Rpb24ga3UoZSx0LHIpe3QuZm9yRWFjaChmdW5jdGlvbihpKXtpZihpLmtpbmQ9PT0iZ3JvdXAiKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTthLmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LXRvb2xiYXItZ3JvdXAiKyhpLmNsYXNzTmFtZT8iICIraS5jbGFzc05hbWU6IiIpLGkuY2hpbGRyZW4uZm9yRWFjaChmdW5jdGlvbih1KXtpZih1LmtpbmQ9PT0ibGFiZWwiKXt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIik7cy5jbGFzc05hbWU9ImZpbGUtcHJldmlldy10b29sYmFyLWdyb3VwbGFiZWwiLHMudGl0bGU9dS5sYWJlbHx8IiIscy5pbm5lckhUTUw9dS5pY29ufHwiIixhLmFwcGVuZENoaWxkKHMpO3JldHVybn1hLmFwcGVuZENoaWxkKEF1KHUpKX0pLGUuYXBwZW5kQ2hpbGQoYSk7cmV0dXJufWUuYXBwZW5kQ2hpbGQoQXUoaSkpfSl9ZnVuY3Rpb24gQXUoZSl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnV0dG9uIik7cmV0dXJuIHQudHlwZT0iYnV0dG9uIix0LmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuIixlLnByaW1hcnkmJnQuY2xhc3NMaXN0LmFkZCgicHJpbWFyeSIpLGUuZGFuZ2VyJiZ0LmNsYXNzTGlzdC5hZGQoImRhbmdlciIpLHQudGl0bGU9ZS5sYWJlbCx0LnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsZS5sYWJlbCksdC5pbm5lckhUTUw9JzxzcGFuIGNsYXNzPSJ0b29sYmFyLWljb24iPicrKGUuaWNvbnx8IiIpKyI8L3NwYW4+IisoZS50ZXh0Pyc8c3BhbiBjbGFzcz0idG9vbGJhci10ZXh0Ij4nK3AoZS50ZXh0KSsiPC9zcGFuPiI6IiIpLGUuZ2V0SW5pdGlhbCYmZS5nZXRJbml0aWFsKCkmJnQuY2xhc3NMaXN0LmFkZCgidG9vbGJhci1hY3RpdmUiKSx0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihyKXtyLnN0b3BQcm9wYWdhdGlvbigpLHR5cGVvZiBlLmFjdGlvbj09ImZ1bmN0aW9uIiYmZS5hY3Rpb24odCl9KSx0fWZ1bmN0aW9uIHNyKGUsdCl7dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXRvb2xiYXIiKTtpZihyKXtyLmlubmVySFRNTD0iIjt2YXIgaT1xJiZxLnNhdmluZyxhPVt7bGFiZWw6Ilx1NEZERFx1NUI1OCAoQ3RybCtTKSIsaWNvbjpxZSgic2F2ZSIpLHRleHQ6Ilx1NEZERFx1NUI1OCIscHJpbWFyeTohMCxhY3Rpb246ZnVuY3Rpb24oKXtTdSgpfX0se2xhYmVsOiJcdTY0QTRcdTk1MDBcdTY1MzlcdTUyQTgiLGljb246cWUoInJvdGF0ZS1jY3ciKSxhY3Rpb246ZnVuY3Rpb24oKXtyYygpfX0se2xhYmVsOiJcdTkwMDBcdTUxRkFcdTdGMTZcdThGOTEgKEVzYykiLGljb246cWUoIngiKSxhY3Rpb246ZnVuY3Rpb24oKXt4dSgpfX1dO2t1KHIsYSxlKSxpJiZyLnF1ZXJ5U2VsZWN0b3JBbGwoIi5maWxlLXByZXZpZXctdG9vbGJhci1idG4iKS5mb3JFYWNoKGZ1bmN0aW9uKHUpe3UuZGlzYWJsZWQ9ITB9KX19ZnVuY3Rpb24gbmMoKXtpZighKCFxfHwhcS5kYXRhKSl7dmFyIGU9cS5kYXRhO2lmKGUua2luZD09PSJ0ZXh0Iil7cS5lZGl0aW5nPSEwLHEuZGlydHk9ITEscS5vcmlnaW5hbENvbnRlbnQ9ZS5jb250ZW50fHwiIjt2YXIgdD1xLm92ZXJsYXkscj10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctYm9keSIpO2lmKHIpe3IuY2xhc3NMaXN0LmFkZCgiZWRpdGluZyIpLHIuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJjb2RlLWVkaXRvci13cmFwcGVyIj48dGV4dGFyZWEgY2xhc3M9ImNvZGUtZWRpdG9yLXRleHRhcmVhIiBzcGVsbGNoZWNrPSJmYWxzZSIgYXV0b2NvbXBsZXRlPSJvZmYiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiIHdyYXA9Im9mZiI+PC90ZXh0YXJlYT48L2Rpdj4nO3ZhciBpPXIucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yLXRleHRhcmVhIik7aSYmKGkudmFsdWU9ZS5jb250ZW50fHwiIixpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe3ZhciBhPWkudmFsdWUhPT0ocS5vcmlnaW5hbENvbnRlbnR8fCIiKTthIT09cS5kaXJ0eSYmKHEuZGlydHk9YSxvcigpKX0pLGkuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oYSl7aWYoYS5rZXk9PT0iVGFiIil7YS5wcmV2ZW50RGVmYXVsdCgpO3ZhciB1PWkuc2VsZWN0aW9uU3RhcnQscz1pLnNlbGVjdGlvbkVuZCxvPSIgICI7aS52YWx1ZT1pLnZhbHVlLnNsaWNlKDAsdSkrbytpLnZhbHVlLnNsaWNlKHMpLGkuc2VsZWN0aW9uU3RhcnQ9aS5zZWxlY3Rpb25FbmQ9dStvLmxlbmd0aCxpLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIpKX19KSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7aS5mb2N1cygpLGkuc2V0U2VsZWN0aW9uUmFuZ2UoMCwwKSxpLnNjcm9sbFRvcD0wfSwzMCkpLHppKHQsZSksb3IoKX19fX1mdW5jdGlvbiB4dSgpe2lmKCEoIXF8fCFxLmVkaXRpbmcpKXt2YXIgZT1mdW5jdGlvbigpe3EuZWRpdGluZz0hMSxxLmRpcnR5PSExO3ZhciB0PXEub3ZlcmxheSxyPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7ciYmci5jbGFzc0xpc3QucmVtb3ZlKCJlZGl0aW5nIiksRHUodCxxLmRhdGEpLG9yKCl9O2lmKHEuZGlydHkmJnR5cGVvZiBybj09ImZ1bmN0aW9uIil7cm4oe3R5cGU6Indhcm5pbmciLHRpdGxlOiJcdTY1M0VcdTVGMDNcdTY3MkFcdTRGRERcdTVCNThcdTc2ODRcdTRGRUVcdTY1MzlcdUZGMUYiLG1lc3NhZ2U6Ilx1NUY1M1x1NTI0RFx1NjU4N1x1NEVGNlx1NjcwOVx1NjcyQVx1NEZERFx1NUI1OFx1NzY4NFx1NjUzOVx1NTJBOFx1RkYwQ1x1OTAwMFx1NTFGQVx1N0YxNlx1OEY5MVx1NTQwRVx1NEYxQVx1NEUyMlx1NTkzMVx1MzAwMiIsYnV0dG9uczpbe2xhYmVsOiJcdTdFRTdcdTdFRURcdTdGMTZcdThGOTEiLHZhbHVlOiExLGtpbmQ6Imdob3N0In0se2xhYmVsOiJcdTY1M0VcdTVGMDNcdTRGRUVcdTY1MzkiLHZhbHVlOiEwLGtpbmQ6ImRhbmdlciIsYXV0b2ZvY3VzOiEwfV0sY2FuY2VsVmFsdWU6ITF9KS50aGVuKGZ1bmN0aW9uKHQpe3QmJmUoKX0pO3JldHVybn1lKCl9fWZ1bmN0aW9uIHJjKCl7aWYoISghcXx8IXEuZWRpdGluZykpe3ZhciBlPXEub3ZlcmxheSx0PWUucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yLXRleHRhcmVhIik7dCYmKHQudmFsdWU9cS5vcmlnaW5hbENvbnRlbnR8fCIiLHEuZGlydHk9ITEsb3IoKSx0LmZvY3VzKCkpfX1mdW5jdGlvbiBTdSgpe2lmKCEoIXF8fCFxLmVkaXRpbmcpJiYhcS5zYXZpbmcpe3ZhciBlPXEub3ZlcmxheSx0PWUucXVlcnlTZWxlY3RvcigiLmNvZGUtZWRpdG9yLXRleHRhcmVhIik7aWYodCl7dmFyIHI9dC52YWx1ZTtpZihyPT09KHEub3JpZ2luYWxDb250ZW50fHwiIikpe3d0KCJcdTZDQTFcdTY3MDlcdTY1MzlcdTUyQTgiKTtyZXR1cm59cS5zYXZpbmc9ITAsc3IoZSxxLmRhdGEpLGZldGNoKCIvYXBpL2ZpbGUtd3JpdGUiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxib2R5OkpTT04uc3RyaW5naWZ5KHtwYXRoOnEucGF0aCxjb250ZW50OnJ9KX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpLnRoZW4oZnVuY3Rpb24oYSl7cmV0dXJue29rOmkub2ssc3RhdHVzOmkuc3RhdHVzLGRhdGE6YX19KX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYocS5zYXZpbmc9ITEsIWkub2t8fGkuZGF0YSYmaS5kYXRhLmVycm9yKXt2YXIgYT1pLmRhdGEmJmkuZGF0YS5lcnJvcnx8Ilx1NEZERFx1NUI1OFx1NTkzMVx1OEQyNSAoIitpLnN0YXR1cysiKSI7d3QoYSksc3IoZSxxLmRhdGEpO3JldHVybn1pZihxLmRhdGEuY29udGVudD1yLHEuZGF0YS5zaXplPWkuZGF0YSYmaS5kYXRhLnNpemV8fHIubGVuZ3RoLHEub3JpZ2luYWxDb250ZW50PXIscS5kaXJ0eT0hMSx3dCgiXHU1REYyXHU0RkREXHU1QjU4Iiksb3IoKSxzcihlLHEuZGF0YSksdHlwZW9mIHF0PT0iZnVuY3Rpb24iKXRyeXtxdCgpfWNhdGNoe319KS5jYXRjaChmdW5jdGlvbihpKXtxLnNhdmluZz0hMSx3dCgiXHU0RkREXHU1QjU4XHU1OTMxXHU4RDI1XHVGRjFBIisoaSYmaS5tZXNzYWdlP2kubWVzc2FnZToiXHU3RjUxXHU3RURDXHU5NTE5XHU4QkVGIikpLHNyKGUscS5kYXRhKX0pfX19ZnVuY3Rpb24gb3IoKXtpZihxKXt2YXIgZT1xLm92ZXJsYXk7aWYoZSl7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LW5hbWUtcm93Iik7aWYodCl7dmFyIHI9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWRpcnR5Iik7aWYocS5kaXJ0eSl7aWYoIXIpe3ZhciBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtpLmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LWRpcnR5IixpLnRpdGxlPSJcdTY3MDlcdTY3MkFcdTRGRERcdTVCNThcdTc2ODRcdTRGRUVcdTY1MzkiLGkudGV4dENvbnRlbnQ9Ilx1MjVDRiBcdTY3MkFcdTRGRERcdTVCNTgiLHQuYXBwZW5kQ2hpbGQoaSl9fWVsc2UgciYmci5yZW1vdmUoKX19fX1mdW5jdGlvbiBJdShlLHQpe3ZhciByPWUucXVlcnlTZWxlY3RvcigiLmNvZGUtcHJldmlldy1jb250ZW50IHByZSIpLGk9ZS5xdWVyeVNlbGVjdG9yKCIuY29kZS1wcmV2aWV3LWxpbmVzIik7aWYocil7dmFyIGE9cGFyc2VGbG9hdChnZXRDb21wdXRlZFN0eWxlKHIpLmZvbnRTaXplKXx8MTMsdT1NYXRoLm1heCgxMCxNYXRoLm1pbigyMixhK3QpKTtyLnN0eWxlLmZvbnRTaXplPXUrInB4IixpJiYoaS5zdHlsZS5mb250U2l6ZT11KyJweCIpfX1mdW5jdGlvbiBUdShlLHQpe3ZhciByPWUucmVwbGFjZSgvJi9nLCImYW1wOyIpLnJlcGxhY2UoLzwvZywiJmx0OyIpLnJlcGxhY2UoLz4vZywiJmd0OyIpLGk9aWMoKTtpZighaSlyZXR1cm4gcjt2YXIgYT1bXTtmb3IodmFyIHUgaW4gaSl7dmFyIHM9aVt1XTtzJiZzLnBhdHRlcm4mJmEucHVzaCh7cGF0dGVybjpzLnBhdHRlcm4sY2xzOnMuY2xzLHByaW9yaXR5OnMucHJpb3JpdHl8fDV9KX1hLnNvcnQoZnVuY3Rpb24oYyxmKXtyZXR1cm4gZi5wcmlvcml0eS1jLnByaW9yaXR5fSk7dmFyIG89YS5tYXAoZnVuY3Rpb24oYyl7cmV0dXJuIigiK2MucGF0dGVybi5zb3VyY2UrIikifSksbD1uZXcgUmVnRXhwKG8uam9pbigifCIpLCJnbSIpO3JldHVybiByLnJlcGxhY2UobCxmdW5jdGlvbihjKXtmb3IodmFyIGY9MDtmPGEubGVuZ3RoO2YrKyl7dmFyIGQ9YVtmXSx2PW5ldyBSZWdFeHAoIl4iK2QucGF0dGVybi5zb3VyY2UrIiQiLCJnbSIpO2lmKHYudGVzdChjKSlyZXR1cm4nPHNwYW4gY2xhc3M9IicrZC5jbHMrJyI+JytjKyI8L3NwYW4+In1yZXR1cm4gY30pfWZ1bmN0aW9uIGljKCl7cmV0dXJue2NvbW1lbnQ6e3BhdHRlcm46L1wvXC8uKnwjW15cbl0qL3ksY2xzOiJzeW50YXgtY29tbWVudCIscHJpb3JpdHk6MX0sc3RyaW5nOntwYXR0ZXJuOi8iKD86W14iXFxdfFxcLikqInwnKD86W14nXFxdfFxcLikqJ3xgKD86W15gXFxdfFxcLikqYC95LGNsczoic3ludGF4LXN0cmluZyIscHJpb3JpdHk6Mn0sa2V5d29yZDp7cGF0dGVybjovXGIoPzphc3luY3xhd2FpdHxicmVha3xjYXNlfGNhdGNofGNsYXNzfGNvbnN0fGNvbnRpbnVlfGRlYnVnZ2VyfGRlY2xhcmV8ZGVmYXVsdHxkZWxldGV8ZG98ZWxzZXxlbnVtfGV4cG9ydHxleHRlbmRzfGZpbmFsbHl8Zm9yfGZyb218ZnVuY3Rpb258Z2V0fGlmfGltcGxlbWVudHN8aW1wb3J0fGlufGluc3RhbmNlb2Z8aW50ZXJmYWNlfGxldHxtb2R1bGV8bmFtZXNwYWNlfG5ld3xudWxsfG9mfG92ZXJyaWRlfHByaXZhdGV8cHJvdGVjdGVkfHB1YmxpY3xyZWFkb25seXxyZXR1cm58c2V0fHN0YXRpY3xzdXBlcnxzd2l0Y2h8dGhpc3x0aHJvd3x0cnl8dHlwZXx0eXBlb2Z8dW5kZWZpbmVkfHZhcnx2b2lkfHdoaWxlfHlpZWxkfGFic3RyYWN0fGFzfGJhc2V8Ym9vbHxieXRlfGNoYXJ8ZGVjaW1hbHxkb3VibGV8ZXZlbnR8ZXhwbGljaXR8ZXh0ZXJufGZhbHNlfGZpeGVkfGZsb2F0fGZvcmVhY2h8Z290b3xpbXBsaWNpdHxpbnxpbnR8aW50ZXJuYWx8aXN8bG9ja3xsb25nfG9iamVjdHxvcGVyYXRvcnxvdXR8cGFyYW1zfHBhcnRpYWx8cmVhZG9ubHl8cmVmfHNieXRlfHNlYWxlZHxzaG9ydHxzaXplb2Z8c3RhY2thbGxvY3xzdHJpbmd8c3RydWN0fHN3aXRjaHx0aHJvd3x0cnVlfHRyeXx1aW50fHVsb25nfHVuY2hlY2tlZHx1bnNhZmV8dXNob3J0fHVzaW5nfHZpcnR1YWx8dm9sYXRpbGV8d2hlcmV8d2hpbGV8d2l0aHx5aWVsZHxkZWZ8ZWxpZnxlbHNlfGV4Y2VwdHxleGVjfGZpbmFsbHl8Zm9yfGZyb218Z2xvYmFsfGlmfGltcG9ydHxsYW1iZGF8bm9ubG9jYWx8bm90fG9yfHBhc3N8cHJpbnR8cmFpc2V8cmV0dXJufHRyeXx3aGlsZXx3aXRofHlpZWxkfFRydWV8RmFsc2V8Tm9uZXxhbmR8aW58aXN8bGFtYmRhfG5vdHxvcnxmbnxwdWJ8dXNlfG1vZHxpbXBsfHRyYWl0fHN0cnVjdHxlbnVtfG1hdGNofGxvb3B8d2hpbGV8Zm9yfGlmfGVsc2V8cmV0dXJufHNlbGZ8c3VwZXJ8Y3JhdGV8d2hlcmV8YXN5bmN8YXdhaXR8bW92ZXxyZWZ8bXV0fHN0YXRpY3xjb25zdHx1bnNhZmV8ZXh0ZXJufHVzZXxhc3xpbXBsfHN0cnVjdHxlbnVtfHR5cGV8Zm58bGV0fGxvb3B8aWZ8ZWxzZXxtYXRjaHxyZXR1cm58c2VsZnxTZWxmfG1vZHxwdWJ8Y3JhdGV8bWFjcm98ZGVyaXZlfHdoZXJlfGFzeW5jfGF3YWl0fGR5bnxzZWxmfHBhY2thZ2V8ZnVuY3xnb3xyZXR1cm58ZGVmZXJ8Z298aWZ8ZWxzZXxzd2l0Y2h8Y2FzZXxkZWZhdWx0fGZvcnxyYW5nZXxzZWxlY3R8YnJlYWt8Y29udGludWV8ZmFsbHRocm91Z2h8Y29uc3R8c3RydWN0fGVudW18dHlwZXxpbnRlcmZhY2V8bWFwfGNoYW58dmFyfG5pbHx0cnVlfGZhbHNlfGlvdGF8bGVufGNhcHxhcHBlbmR8bWFrZXxuZXd8cGFuaWN8cmVjb3ZlcnxzZWxlY3R8ZWxzZXxpZnxlbGlmfGVuZHxmb3J8ZnVuY3Rpb258aWZ8aW58bG9jYWx8bmlsfG5vdHxvcnxyZXBlYXR8cmV0dXJufHRoZW58dHJ1ZXx1bnRpbHx3aGlsZXxlbmR8YW5kfGJlZ2lufGRvfGVuZHxmYWxzZXxmb3J8ZnVuY3Rpb258aWZ8aW58bG9jYWx8bmlsfG5vdHxvcnxyZXBlYXR8cmV0dXJufHRoZW58dHJ1ZXx1bnRpbHx3aGlsZSlcYi95LGNsczoic3ludGF4LWtleXdvcmQiLHByaW9yaXR5OjN9LG51bWJlcjp7cGF0dGVybjovXGIoPzoweFtcZGEtZkEtRl0rfDBiWzAxXSt8MG9bMC03XSt8XGQrXC4/XGQqKD86ZVsrLV0/XGQrKT8pXGIveSxjbHM6InN5bnRheC1udW1iZXIiLHByaW9yaXR5OjJ9LGZ1bmN0aW9uOntwYXR0ZXJuOi9cYltBLVpdW2EtekEtWjAtOV0qW2Etel1cdyooPz1ccypcKCkveSxjbHM6InN5bnRheC1mdW5jdGlvbiIscHJpb3JpdHk6NH0sdHlwZTp7cGF0dGVybjovXGIoPzpzdHJpbmd8bnVtYmVyfGJvb2xlYW58dm9pZHxhbnl8dW5rbm93bnxuZXZlcnxvYmplY3R8c3ltYm9sfGJpZ2ludHxBcnJheXxPYmplY3R8U3RyaW5nfE51bWJlcnxCb29sZWFufE1hcHxTZXR8V2Vha01hcHxXZWFrU2V0fFByb21pc2V8RXJyb3J8VHlwZXxJbnRlcmZhY2V8RW51bXxDbGFzc3xTdHJ1Y3R8SW1wbHxUcmFpdHxmbnxmbmN8ZnVuY3xmdW5jdGlvbnxkZWZ8cHJvY3xmdW58cHVifHN0YXRpY3xjb25zdHxsZXR8dmFyfGludHxmbG9hdHxkb3VibGV8Ym9vbHxjaGFyfGJ5dGV8c3RyaW5nfHU4fHUxNnx1MzJ8dTY0fGk4fGkxNnxpMzJ8aTY0fGYzMnxmNjR8dXNpemV8aXNpemV8c3RyfFZlY3xIYXNoTWFwfE9wdGlvbnxSZXN1bHR8Qm94fFJjfEFyY3xDZWxsfFJlZkNlbGwpXGIveSxjbHM6InN5bnRheC10eXBlIixwcmlvcml0eTo0fSxvcGVyYXRvcjp7cGF0dGVybjovWytcLSovJT08PiEmfF5+PzpdK3xcLlwuXC4/L3ksY2xzOiJzeW50YXgtb3BlcmF0b3IiLHByaW9yaXR5OjV9LHB1bmN0dWF0aW9uOntwYXR0ZXJuOi9be31bXF0oKTssXC5dL3ksY2xzOiJzeW50YXgtcHVuY3R1YXRpb24iLHByaW9yaXR5OjZ9fX1mdW5jdGlvbiBhYyhlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1wKGUpO3Q9dC5yZXBsYWNlKC9gYGAoXHcqKVxuKFtcc1xTXSo/KWBgYC9nLGZ1bmN0aW9uKGksYSx1KXt2YXIgcz1UdSh1LnRyaW0oKSxhKSxvPXMucmVwbGFjZSgvXy9nLCImIzk1OyIpLnJlcGxhY2UoL1wqL2csIiYjNDI7Iik7cmV0dXJuJzxwcmU+PGNvZGUgY2xhc3M9Imxhbmd1YWdlLScrYSsnIj4nK28rIjwvY29kZT48L3ByZT4ifSksdD10LnJlcGxhY2UoL2AoW15gXSspYC9nLGZ1bmN0aW9uKGksYSl7cmV0dXJuIjxjb2RlPiIrYS5yZXBsYWNlKC9fL2csIiYjOTU7IikucmVwbGFjZSgvXCovZywiJiM0MjsiKSsiPC9jb2RlPiJ9KSx0PXQucmVwbGFjZSgvXiMjIyMjI1xzKyguKikkL2dtLCI8aDY+JDE8L2g2PiIpLHQ9dC5yZXBsYWNlKC9eIyMjIyNccysoLiopJC9nbSwiPGg1PiQxPC9oNT4iKSx0PXQucmVwbGFjZSgvXiMjIyNccysoLiopJC9nbSwiPGg0PiQxPC9oND4iKSx0PXQucmVwbGFjZSgvXiMjI1xzKyguKikkL2dtLCI8aDM+JDE8L2gzPiIpLHQ9dC5yZXBsYWNlKC9eIyNccysoLiopJC9nbSwiPGgyPiQxPC9oMj4iKSx0PXQucmVwbGFjZSgvXiNccysoLiopJC9nbSwiPGgxPiQxPC9oMT4iKSx0PXQucmVwbGFjZSgvXCpcKlwqKC4rPylcKlwqXCovZywiPHN0cm9uZz48ZW0+JDE8L2VtPjwvc3Ryb25nPiIpLHQ9dC5yZXBsYWNlKC9cKlwqKC4rPylcKlwqL2csIjxzdHJvbmc+JDE8L3N0cm9uZz4iKSx0PXQucmVwbGFjZSgvXCooLis/KVwqL2csIjxlbT4kMTwvZW0+IiksdD10LnJlcGxhY2UoLyhefFteXHddKV9fXyhcUyg/OlteXG5dKj9cUyk/KV9fXyg/IVx3KS9nLCIkMTxzdHJvbmc+PGVtPiQyPC9lbT48L3N0cm9uZz4iKSx0PXQucmVwbGFjZSgvKF58W15cd10pX18oXFMoPzpbXlxuXSo/XFMpPylfXyg/IVx3KS9nLCIkMTxzdHJvbmc+JDI8L3N0cm9uZz4iKSx0PXQucmVwbGFjZSgvKF58W15cd10pXyhcUyg/OlteXG5fXSo/XFMpPylfKD8hXHcpL2csIiQxPGVtPiQyPC9lbT4iKSx0PXQucmVwbGFjZSgvfn4oLis/KX5+L2csIjxkZWw+JDE8L2RlbD4iKSx0PXQucmVwbGFjZSgvXFsoW15cXV0rKVxdXCgoW14pXSspXCkvZywnPGEgaHJlZj0iJDIiIHRhcmdldD0iX2JsYW5rIiByZWw9Im5vb3BlbmVyIj4kMTwvYT4nKSx0PXQucmVwbGFjZSgvIVxbKFteXF1dKilcXVwoKFteKV0rKVwpL2csJzxpbWcgc3JjPSIkMiIgYWx0PSIkMSI+JyksdD10LnJlcGxhY2UoL14mZ3Q7XHMrKC4qKSQvZ20sIjxibG9ja3F1b3RlPiQxPC9ibG9ja3F1b3RlPiIpLHQ9dC5yZXBsYWNlKC9eLS0tKyQvZ20sIjxocj4iKSx0PXQucmVwbGFjZSgvXlwqXCpcKiskL2dtLCI8aHI+IiksdD10LnJlcGxhY2UoL15bXC1cKl1ccysoLiopJC9nbSwiPGxpPiQxPC9saT4iKSx0PXQucmVwbGFjZSgvKDxsaT4uKjxcL2xpPlxuPykrL2csIjx1bD4kJjwvdWw+IiksdD10LnJlcGxhY2UoL15cZCtcLlxzKyguKikkL2dtLCI8bGk+JDE8L2xpPiIpLHQ9eG8odCk7dmFyIHI9dC5zcGxpdCgvXG57Mix9Lyk7cmV0dXJuIHQ9ci5tYXAoZnVuY3Rpb24oaSl7cmV0dXJuIGk9aS50cmltKCksaT8vXjwoaFsxLTZdfHVsfG9sfGxpfGJsb2NrcXVvdGV8cHJlfHRhYmxlfGhyfGRpdikvLnRlc3QoaSk/aToiPHA+IitpLnJlcGxhY2UoL1xuL2csIjxicj4iKSsiPC9wPiI6IiJ9KS5qb2luKGAKYCksdH1mdW5jdGlvbiBMdSgpe2lmKCFuLnNlbGVjdGVkSWR8fCFuLmdpdFN0YXR1c3x8IW4uZ2l0U3RhdHVzLmlzR2l0fHxuLmdpdFN0YXR1c1Nlc3Npb25JZCE9PW4uc2VsZWN0ZWRJZClyZXR1cm4iIjt2YXIgZT1uLmdpdFN0YXR1cy5icmFuY2h8fCI/Iix0PW4uZ2l0U3RhdHVzLm1vZGlmaWVkQ291bnR8fDAscj1lKyh0PyIgIFx4QjcgICIrdCsiIFx1NEUyQVx1NjU4N1x1NEVGNlx1NUY4NVx1NjNEMFx1NEVBNCI6IiAgXHhCNyAgXHU1REU1XHU0RjVDXHU1MzNBXHU1RTcyXHU1MUMwIik7cmV0dXJuJzxidXR0b24gaWQ9InRvcGJhci1naXQtYmFkZ2UiIGNsYXNzPSJ0b3BiYXItZ2l0LWJhZGdlIiB0eXBlPSJidXR0b24iIHRpdGxlPSInK3AocikrJyIgYXJpYS1sYWJlbD0iXHU1RkVCXHU2Mzc3XHU2M0QwXHU0RUE0Ij48c3ZnIGNsYXNzPSJ0b3BiYXItZ2l0LWljb24iIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48Y2lyY2xlIGN4PSI2IiBjeT0iNiIgcj0iMiIvPjxjaXJjbGUgY3g9IjYiIGN5PSIxOCIgcj0iMiIvPjxjaXJjbGUgY3g9IjE4IiBjeT0iOSIgcj0iMiIvPjxwYXRoIGQ9Ik02IDh2OCIvPjxwYXRoIGQ9Ik0xOCAxMXYxYTMgMyAwIDAgMS0zIDNIOSIvPjwvc3ZnPjxzcGFuIGNsYXNzPSJ0b3BiYXItZ2l0LWJyYW5jaCI+JytwKGUpKyI8L3NwYW4+IisodD4wPyc8c3BhbiBjbGFzcz0idG9wYmFyLWdpdC1jb3VudCI+XHhCNycrdCsiPC9zcGFuPiI6JzxzcGFuIGNsYXNzPSJ0b3BiYXItZ2l0LWNsZWFuIiBhcmlhLWhpZGRlbj0idHJ1ZSI+XHUyNzEzPC9zcGFuPicpKyI8L2J1dHRvbj4ifWZ1bmN0aW9uIFZpKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1naXQtc2xvdCIpO2lmKGUpe2UuaW5uZXJIVE1MPUx1KCk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1naXQtYmFkZ2UiKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihyKXtyLnByZXZlbnREZWZhdWx0KCksTXUoKX0pfX1mdW5jdGlvbiB1YyhlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1uLnRvcGJhck1vcmVPcGVuLHI9ISFlLmNsYXVkZVNlc3Npb25JZCxpPSEhZS5jd2QsYT1lLndvcmt0cmVlRW5hYmxlZCYmZS53b3JrdHJlZSYmZS53b3JrdHJlZS5icmFuY2gmJmUud29ya3RyZWUucGF0aCx1PWUud29ya3RyZWVNZXJnZVN0YXR1cz09PSJtZXJnZWQiJiZlLndvcmt0cmVlTWVyZ2VJbmZvJiZlLndvcmt0cmVlTWVyZ2VJbmZvLmNsZWFudXBEb25lPT09ITEscz1lLnN0YXR1cz09PSJydW5uaW5nInx8ZS53b3JrdHJlZU1lcmdlU3RhdHVzPT09Im1lcmdpbmciLG89YSYmZS53b3JrdHJlZU1lcmdlU3RhdHVzIT09Im1lcmdlZCIsbD11LGM9cnx8aXx8ITAsZj1vfHxsfHwhMCxkPSc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxyZWN0IHg9IjkiIHk9IjkiIHdpZHRoPSIxMyIgaGVpZ2h0PSIxMyIgcng9IjIiIHJ5PSIyIi8+PHBhdGggZD0iTTUgMTVINGEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg5YTIgMiAwIDAgMSAyIDJ2MSIvPjwvc3ZnPicsdj0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTcuNSAxOWE0LjUgNC41IDAgMSAwLTEuNS04Ljc0QTYgNiAwIDEgMCA2IDE0aDExLjV6Ii8+PC9zdmc+JyxnPSc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxOWEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNWwyIDNoOWEyIDIgMCAwIDEgMiAyeiIvPjwvc3ZnPicsaD0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48bGluZSB4MT0iNCIgeTE9IjkiIHgyPSIyMCIgeTI9IjkiLz48bGluZSB4MT0iNCIgeTE9IjE1IiB4Mj0iMjAiIHkyPSIxNSIvPjxsaW5lIHgxPSIxMCIgeTE9IjMiIHgyPSI4IiB5Mj0iMjEiLz48bGluZSB4MT0iMTYiIHkxPSIzIiB4Mj0iMTQiIHkyPSIyMSIvPjwvc3ZnPicsbT0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNyA3aDEwIi8+PHBhdGggZD0iTTcgMTJoMTAiLz48cGF0aCBkPSJNNyAxN2gxMCIvPjxwYXRoIGQ9Ik01IDdsLTIgMiAyIDIiLz48cGF0aCBkPSJNMTkgMTVsMiAyLTIgMiIvPjwvc3ZnPicsYj0nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTggNlY0YTIgMiAwIDAxMi0yaDRhMiAyIDAgMDEyIDJ2MiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDE0YTIgMiAwIDAxLTIgMkg4YTIgMiAwIDAxLTItMkw1IDYiLz48L3N2Zz4nLEY9IiI7aWYocil7dmFyIHc9ZS5wcm92aWRlcj09PSJjb2RleCI/Ilx1NTkwRFx1NTIzNiBDb2RleCB0aHJlYWQgSUQiOiJcdTU5MERcdTUyMzYgQ2xhdWRlIFx1NEYxQVx1OEJERCBJRCI7Ris9JzxidXR0b24gY2xhc3M9InRvcGJhci1tb3JlLWl0ZW0iIGRhdGEtYWN0aW9uPSJjb3B5LWNsYXVkZS1zZXNzaW9uLWlkIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIj4nK3YrIjxzcGFuPiIrdysiPC9zcGFuPjwvYnV0dG9uPiJ9aSYmKEYrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIiBkYXRhLWFjdGlvbj0iY29weS1jd2QiIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iPicrZysiPHNwYW4+XHU1OTBEXHU1MjM2XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1PC9zcGFuPjwvYnV0dG9uPiIpLEYrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIiBkYXRhLWFjdGlvbj0iY29weS1zZXNzaW9uLWlkIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIj4nK2grIjxzcGFuPlx1NTkwRFx1NTIzNlx1NEYxQVx1OEJERCBJRDwvc3Bhbj48L2J1dHRvbj4iO3ZhciBFPSIiO28/RSs9JzxidXR0b24gY2xhc3M9InRvcGJhci1tb3JlLWl0ZW0iIGRhdGEtYWN0aW9uPSJ3b3JrdHJlZS1tZXJnZSIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSInKyhzPyIgZGlzYWJsZWQiOiIiKSsiPiIrbSsiPHNwYW4+XHU1NDA4XHU1RTc2XHU1MjMwXHU0RTNCXHU1MjA2XHU2NTJGXHUyMDI2PC9zcGFuPjwvYnV0dG9uPiI6bCYmKEUrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIiBkYXRhLWFjdGlvbj0id29ya3RyZWUtY2xlYW51cCIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSI+JyttKyI8c3Bhbj5cdTkxQ0RcdThCRDUgd29ya3RyZWUgXHU2RTA1XHU3NDA2PC9zcGFuPjwvYnV0dG9uPiIpLEUrPSc8YnV0dG9uIGNsYXNzPSJ0b3BiYXItbW9yZS1pdGVtIHRvcGJhci1tb3JlLWl0ZW0tZGFuZ2VyIiBkYXRhLWFjdGlvbj0iZGVsZXRlLXNlc3Npb24iIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iPicrYisiPHNwYW4+XHU1MjIwXHU5NjY0XHU1RjUzXHU1MjREXHU0RjFBXHU4QkREPC9zcGFuPjwvYnV0dG9uPiI7dmFyIEE9YyYmZj8nPGRpdiBjbGFzcz0idG9wYmFyLW1vcmUtZGl2aWRlciIgcm9sZT0ic2VwYXJhdG9yIj48L2Rpdj4nOiIiO3JldHVybic8ZGl2IGNsYXNzPSJ0b3BiYXItbW9yZS13cmFwIj48YnV0dG9uIGlkPSJ0b3BiYXItbW9yZS1idXR0b24iIGNsYXNzPSJ0b3BiYXItYnRuIHNxdWFyZScrKHQ/IiBhY3RpdmUiOiIiKSsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NjRDRFx1NEY1QyIgYXJpYS1oYXNwb3B1cD0ibWVudSIgYXJpYS1leHBhbmRlZD0iJysodD8idHJ1ZSI6ImZhbHNlIikrJyIgdGl0bGU9Ilx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NjRDRFx1NEY1QyI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxIi8+PGNpcmNsZSBjeD0iMTIiIGN5PSI1IiByPSIxIi8+PGNpcmNsZSBjeD0iMTIiIGN5PSIxOSIgcj0iMSIvPjwvc3ZnPjwvYnV0dG9uPjxkaXYgaWQ9InRvcGJhci1tb3JlLW1lbnUiIGNsYXNzPSJ0b3BiYXItbW9yZS1tZW51JysodD8iIjoiIGhpZGRlbiIpKyciIHJvbGU9Im1lbnUiIGFyaWEtbGFiZWw9Ilx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERCI+JytGK0ErRSsiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiB3bihlLHQpe2lmKCFlKXJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7dmFyIHI9dCYmdC5mb3JjZSxpPURhdGUubm93KCk7aWYoIXImJm4uZ2l0U3RhdHVzU2Vzc2lvbklkPT09ZSYmbi5naXRTdGF0dXMmJmktbi5naXRTdGF0dXNMYXN0RmV0Y2hBdDwxZTMpcmV0dXJuIFByb21pc2UucmVzb2x2ZShuLmdpdFN0YXR1cyk7aWYobi5naXRTdGF0dXNJbmZsaWdodCYmbi5naXRTdGF0dXNJbmZsaWdodC5zZXNzaW9uSWQ9PT1lKXJldHVybiBuLmdpdFN0YXR1c0luZmxpZ2h0LnByb21pc2U7bi5naXRTdGF0dXNMb2FkaW5nPSEwO3ZhciBhPWZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvZ2l0LXN0YXR1cyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lm9rP3UuanNvbigpOntpc0dpdDohMX19KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiBuLmdpdFN0YXR1cz11fHx7aXNHaXQ6ITF9LG4uZ2l0U3RhdHVzU2Vzc2lvbklkPWUsbi5naXRTdGF0dXNMYXN0RmV0Y2hBdD1EYXRlLm5vdygpLFZpKCksdX0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIG4uZ2l0U3RhdHVzPXtpc0dpdDohMX0sbi5naXRTdGF0dXNTZXNzaW9uSWQ9ZSxuLmdpdFN0YXR1c0xhc3RGZXRjaEF0PURhdGUubm93KCksVmkoKSxudWxsfSkuZmluYWxseShmdW5jdGlvbigpe24uZ2l0U3RhdHVzTG9hZGluZz0hMSxuLmdpdFN0YXR1c0luZmxpZ2h0JiZuLmdpdFN0YXR1c0luZmxpZ2h0LnNlc3Npb25JZD09PWUmJihuLmdpdFN0YXR1c0luZmxpZ2h0PW51bGwpfSk7cmV0dXJuIG4uZ2l0U3RhdHVzSW5mbGlnaHQ9e3Nlc3Npb25JZDplLHByb21pc2U6YX0sYX12YXIgQ249bnVsbCxCbj1udWxsLExtPW51bGw7ZnVuY3Rpb24gc2MoZSl7cmV0dXJuIGU9PT0iY29tbWl0LXRhZyJ8fGU9PT0iY29tbWl0LXRhZy1wdXNoInx8ZT09PSJjb21taXQtcHVzaCI/ZToiY29tbWl0In1mdW5jdGlvbiBvYyhlKXtyZXR1cm4gZT1zYyhlKSxlPT09ImNvbW1pdC10YWctcHVzaCI/e2FjdGlvbjplLGxhYmVsOiJDb21taXQgKyBUYWcgKyBQdXNoIix2ZXJiOiJcdTYzRDBcdTRFQTRcdTMwMDFcdTYyNTMgVGFnIFx1NUU3Nlx1NjNBOFx1OTAwMSIsd2l0aFRhZzohMCxwdXNoOiEwLHRvbmU6ImFsbCJ9OmU9PT0iY29tbWl0LXRhZyI/e2FjdGlvbjplLGxhYmVsOiJDb21taXQgKyBUYWciLHZlcmI6Ilx1NjNEMFx1NEVBNFx1NUU3Nlx1NjI1MyBUYWciLHdpdGhUYWc6ITAscHVzaDohMSx0b25lOiJ0YWcifTplPT09ImNvbW1pdC1wdXNoIj97YWN0aW9uOmUsbGFiZWw6IkNvbW1pdCArIFB1c2giLHZlcmI6Ilx1NjNEMFx1NEVBNFx1NUU3Nlx1NjNBOFx1OTAwMSIsd2l0aFRhZzohMSxwdXNoOiEwLHRvbmU6InB1c2gifTp7YWN0aW9uOiJjb21taXQiLGxhYmVsOiJDb21taXQiLHZlcmI6Ilx1NEVDNVx1NjNEMFx1NEVBNCIsd2l0aFRhZzohMSxwdXNoOiExLHRvbmU6ImNvbW1pdCJ9fWZ1bmN0aW9uIE11KCl7aWYobi5zZWxlY3RlZElkKXtuLnF1aWNrQ29tbWl0T3Blbj0hMCxuLnF1aWNrQ29tbWl0U3VibWl0dGluZz0hMSxuLnF1aWNrQ29tbWl0QXV0b0dlbmVyYXRpbmc9ITEsbi5xdWlja0NvbW1pdEVycm9yPSIiLG4ucXVpY2tDb21taXRGb3JtPXtjdXN0b21NZXNzYWdlOiIiLHRhZzoiIix0YWdFZGl0ZWQ6ITF9LG4ucXVpY2tDb21taXRQdXNoaW5nPSExLG4ucXVpY2tDb21taXRQdXNoRXJyb3I9IiIsbi5xdWlja0NvbW1pdFJlc3VsdD1udWxsLG4ucXVpY2tDb21taXREcmFnQWN0aW9uPSJjb21taXQiLFhuKCksdm4oKSxabigpLE90KCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tb2RhbCIpO2UmJihlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLG4ubGFzdEZvY3VzZWRFbGVtZW50PWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQsRGkoZSkpLENuJiZkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixDbiksQ249ZnVuY3Rpb24odCl7dC5rZXk9PT0iRXNjYXBlIiYmbi5xdWlja0NvbW1pdE9wZW4mJiFuLnF1aWNrQ29tbWl0U3VibWl0dGluZyYmIW4ucXVpY2tDb21taXRQdXNoaW5nJiZfbigpfSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixDbiksd24obi5zZWxlY3RlZElkLHtmb3JjZTohMH0pLnRoZW4oZnVuY3Rpb24oKXtuLnF1aWNrQ29tbWl0T3BlbiYmT3QoKX0pfX1mdW5jdGlvbiBfbigpe24ucXVpY2tDb21taXRPcGVuPSExLG4ucXVpY2tDb21taXRTdWJtaXR0aW5nPSExLG4ucXVpY2tDb21taXRFcnJvcj0iIixuLnF1aWNrQ29tbWl0UmVzdWx0PW51bGwsbi5xdWlja0NvbW1pdERyYWdBY3Rpb249ImNvbW1pdCI7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tb2RhbCIpO2UmJmUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbi5mb2N1c1RyYXBIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsbi5mb2N1c1RyYXBIYW5kbGVyKSxuLmZvY3VzVHJhcEhhbmRsZXI9bnVsbCksQ24mJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixDbiksQ249bnVsbCksQm4mJihCbigpLEJuPW51bGwpLG4ubGFzdEZvY3VzZWRFbGVtZW50JiZ0eXBlb2Ygbi5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXM9PSJmdW5jdGlvbiImJm4ubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzKCl9ZnVuY3Rpb24gT3QoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LW1vZGFsIik7aWYoZSl7Qm4mJihCbigpLEJuPW51bGwpO3ZhciB0PVB1KCkscj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyLmlubmVySFRNTD10O3ZhciBpPXIucXVlcnlTZWxlY3RvcigiI3F1aWNrLWNvbW1pdC1tb2RhbCIpO2kmJihlLmlubmVySFRNTD1pLmlubmVySFRNTCxxdSgpKX19ZnVuY3Rpb24gcXUoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LWNsb3NlLWJ0biIpO2UmJmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLF9uKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LWNhbmNlbC1idG4iKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixfbik7dmFyIHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1haS1idG4iKTtyJiZyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmYyk7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tZXNzYWdlIik7aSYmKGkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKCl7bi5xdWlja0NvbW1pdEZvcm0uY3VzdG9tTWVzc2FnZT1pLnZhbHVlfSksaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbihzKXsocy5tZXRhS2V5fHxzLmN0cmxLZXkpJiZzLmtleT09PSJFbnRlciImJihzLnByZXZlbnREZWZhdWx0KCksTm4oImNvbW1pdCIpKX0pKTt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LXRhZyIpO2EmJihhLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe24ucXVpY2tDb21taXRGb3JtLnRhZz1hLnZhbHVlLG4ucXVpY2tDb21taXRGb3JtLnRhZ0VkaXRlZD0hMH0pLGEuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24ocyl7cy5rZXk9PT0iRW50ZXIiJiYocy5wcmV2ZW50RGVmYXVsdCgpLE5uKCJjb21taXQtdGFnIikpfSkpO3ZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtcHVzaC1hZnRlci1idG4iKTt1JiZ1LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciBzPW4ucXVpY2tDb21taXRSZXN1bHR8fHt9O3BjKHtwdXNoQ29tbWl0czohMCxwdXNoVGFnczohIXMudGFnTmFtZSxjbG9zZU9uU3VjY2VzczohMH0pfSksZGMoKX1mdW5jdGlvbiBsYyhlKXt2YXIgdD0hIShlJiZlLnRhZykscj0hIShlJiZlLnB1c2gpO3JldHVybiB0JiZyPyJjb21taXQtdGFnLXB1c2giOnQ/ImNvbW1pdC10YWciOnI/ImNvbW1pdC1wdXNoIjoiY29tbWl0In12YXIgY2M9NTgsS3I9MTA7ZnVuY3Rpb24gT3UoZSl7cmV0dXJuIGU9PT0idGFnIj97YWN0aW9uOiJjb21taXQtdGFnIixzdWI6ITF9OmU9PT0icHVzaCI/e2FjdGlvbjoiY29tbWl0LXB1c2giLHN1YjohMX06ZT09PSJzdWIiP3thY3Rpb246ImNvbW1pdCIsc3ViOiEwfTp7YWN0aW9uOiJjb21taXQiLHN1YjohMX19ZnVuY3Rpb24gZGMoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicWMtZG9jay1maWVsZCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInFjLWRvY2stc3RhZ2UiKSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxYy1kb2NrLWxhdW5jaCIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInFjLWRvY2stY2x1c3RlciIpO2lmKCFlfHwhdHx8IXJ8fCFpKXJldHVybjt2YXIgYT1bImNvbW1pdCIsInRhZyIsInB1c2giXSx1PXt9O2lmKGEuZm9yRWFjaChmdW5jdGlvbihCKXt1W0JdPWUucXVlcnlTZWxlY3RvcignW2RhdGEtY2hpcD0iJytCKyciXScpfSksIXUuY29tbWl0fHwhdS50YWd8fCF1LnB1c2gpcmV0dXJuO3Uuc3ViPWUucXVlcnlTZWxlY3RvcignW2RhdGEtY2hpcD0ic3ViIl0nKTt2YXIgcz0hIXUuc3ViLG89cz9hLmNvbmNhdChbInN1YiJdKTphO2Z1bmN0aW9uIGwoQil7cmV0dXJuIHVbQl0/dVtCXS5vZmZzZXRXaWR0aDo5MH1mdW5jdGlvbiBjKCl7cmV0dXJuIHUuY29tbWl0P3UuY29tbWl0Lm9mZnNldEhlaWdodDozOH1mdW5jdGlvbiBmKCl7cmV0dXJuIHdpbmRvdy5tYXRjaE1lZGlhJiZ3aW5kb3cubWF0Y2hNZWRpYSgiKG1heC13aWR0aDogNzIwcHgpIikubWF0Y2hlc31mdW5jdGlvbiBkKCl7dmFyIEI9ZS5jbGllbnRXaWR0aCxUPWUuY2xpZW50SGVpZ2h0LE09YygpLGo9bCgiY29tbWl0IiksWj1sKCJ0YWciKSxuZT1sKCJwdXNoIik7aWYoZigpJiZzKXt2YXIgUT1NYXRoLm1heCg4LFQqLjItTS8yKSxzZT1NYXRoLm1pbihULU0tOCxUKi43LU0vMiksZWU9ZnVuY3Rpb24ocmUpe3JldHVybiBNYXRoLm1heCg4LEIqLjI3LXJlLzIpfSxTPWZ1bmN0aW9uKHJlKXtyZXR1cm4gTWF0aC5taW4oQi1yZS04LEIqLjczLXJlLzIpfTtyZXR1cm57Y29tbWl0Ont4OmVlKGopLHk6UX0sdGFnOnt4OlMoWikseTpRfSxwdXNoOnt4OmVlKG5lKSx5OnNlfSxzdWI6e3g6UyhsKCJzdWIiKSkseTpzZX19fXZhciBOPWYoKSxXPU4/TWF0aC5tYXgoOCxUKi4xOC1NLzIpOk1hdGgubWF4KDgsVCouMTIpLEc9Tj9NYXRoLm1pbihULU0tOCxUKi43Mi1NLzIpOk1hdGgubWluKFQtTS04LFQqLjg4LU0pLFU9Tj8uMjQ6LjI4LCQ9Tj8uNzY6LjcyLG9lPXtjb21taXQ6e3g6TWF0aC5tYXgoOCwoQi1qKS8yKSx5Old9LHRhZzp7eDpNYXRoLm1heCg4LEIqVS1aLzIpLHk6R30scHVzaDp7eDpNYXRoLm1pbihCLW5lLTgsQiokLW5lLzIpLHk6R319O2lmKHMpe3ZhciBsZT1sKCJzdWIiKTtvZS5zdWI9e3g6TWF0aC5taW4oQi1sZS04LEIqLjk0LWxlLzIpLHk6TWF0aC5tYXgoOCxNYXRoLm1pbihULU0tOCwoVC1NKS8yKSl9fXJldHVybiBvZX12YXIgdj17fTtmdW5jdGlvbiBnKEIsVCxNKXt1W0JdJiYodVtCXS5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZSgiK1QudG9GaXhlZCgxKSsicHgsIitNLnRvRml4ZWQoMSkrInB4KSIpfWZ1bmN0aW9uIGgoQil7dj1kKCksby5mb3JFYWNoKGZ1bmN0aW9uKFQpe3VbVF0uY2xhc3NMaXN0LnRvZ2dsZSgicWMtY2hpcC0tYW5pbSIsISFCKSxnKFQsdltUXS54LHZbVF0ueSl9KX1oKCExKTt2YXIgbT1udWxsO2Z1bmN0aW9uIGIoQixULE0pe3ZhciBqPWMoKSxaPTUsbmU9by5maWx0ZXIoZnVuY3Rpb24oTil7cmV0dXJuIEIuaW5kZXhPZihOKT49MH0pLFE9bmUucmVkdWNlKGZ1bmN0aW9uKE4sVyl7cmV0dXJuIE4rbChXKX0sMCkrTWF0aC5tYXgoMCxuZS5sZW5ndGgtMSkqWixzZT1lLmNsaWVudEhlaWdodCxlZT1ULVEvMixTPU1hdGgubWF4KDIsTWF0aC5taW4oc2Utai0yLE0tai8yKSk7cmV0dXJuIG5lLmZvckVhY2goZnVuY3Rpb24oTil7ZyhOLGVlLFMpLGVlKz1sKE4pK1p9KSx7eDpULVEvMi03LHk6Uy03LHc6USsxNCxoOmorMTR9fWZ1bmN0aW9uIEYoQil7aS5jbGFzc0xpc3QuYWRkKCJpcy1hY3RpdmUiKSxpLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlKCIrQi54LnRvRml4ZWQoMSkrInB4LCIrQi55LnRvRml4ZWQoMSkrInB4KSIsaS5zdHlsZS53aWR0aD1CLncudG9GaXhlZCgxKSsicHgiLGkuc3R5bGUuaGVpZ2h0PUIuaC50b0ZpeGVkKDEpKyJweCJ9ZnVuY3Rpb24gdygpe2kuY2xhc3NMaXN0LnJlbW92ZSgiaXMtYWN0aXZlIil9ZnVuY3Rpb24gRShCKXtyZXR1cm4gbGMoe2NvbW1pdDohMCx0YWc6Qi5pbmRleE9mKCJ0YWciKT49MCxwdXNoOkIuaW5kZXhPZigicHVzaCIpPj0wfSl9ZnVuY3Rpb24gQShCKXtyZXR1cm4gQi5pbmRleE9mKCJzdWIiKT49MH1mdW5jdGlvbiB4KEIpe3ZhciBUPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxYy1kb2NrLWxhdW5jaC1sYWJlbCIpO1QmJihULnRleHRDb250ZW50PUIpfWZ1bmN0aW9uIEkoQixUKXt2YXIgTT1yLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3JldHVybiBCPj1NLmxlZnQmJkI8PU0ucmlnaHQmJlQ+PU0udG9wJiZUPD1NLmJvdHRvbX1mdW5jdGlvbiBfKEIpe3JldHVybiBmdW5jdGlvbihUKXtpZighKHVbQl0uZGlzYWJsZWR8fFlyKCkpKXttPXthbmNob3I6Qixwb2ludGVySWQ6VC5wb2ludGVySWQsc3RhcnRYOlQuY2xpZW50WCxzdGFydFk6VC5jbGllbnRZLG1vdmVkOiExLG1lbWJlcnM6W0JdfSxvLmZvckVhY2goZnVuY3Rpb24oTSl7dVtNXS5jbGFzc0xpc3QucmVtb3ZlKCJxYy1jaGlwLS1hbmltIil9KSx1W0JdLmNsYXNzTGlzdC5hZGQoImlzLWdyYWJiaW5nIik7dHJ5e3VbQl0uc2V0UG9pbnRlckNhcHR1cmUoVC5wb2ludGVySWQpfWNhdGNoe310LmNsYXNzTGlzdC5hZGQoImlzLWRyYWdnaW5nIiksVC5wcmV2ZW50RGVmYXVsdCgpfX19ZnVuY3Rpb24gVihCKXtpZighKCFtfHxtLnBvaW50ZXJJZCE9PUIucG9pbnRlcklkKSl7KE1hdGguYWJzKEIuY2xpZW50WC1tLnN0YXJ0WCk+M3x8TWF0aC5hYnMoQi5jbGllbnRZLW0uc3RhcnRZKT4zKSYmKG0ubW92ZWQ9ITApO3ZhciBUPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksTT1CLmNsaWVudFgtVC5sZWZ0LGo9Qi5jbGllbnRZLVQudG9wO2lmKGEuZm9yRWFjaChmdW5jdGlvbihOKXtpZighKG0ubWVtYmVycy5pbmRleE9mKE4pPj0wKSl7dmFyIFc9dltOXS54K2woTikvMixHPXZbTl0ueStjKCkvMixVPU0tVywkPWotRztNYXRoLnNxcnQoVSpVKyQqJCk8Y2MmJihtLm1lbWJlcnMucHVzaChOKSx1W05dLmNsYXNzTGlzdC5yZW1vdmUoInFjLWNoaXAtLWFuaW0iKSx1W05dLmNsYXNzTGlzdC5hZGQoImlzLWF0dGFjaGVkIikpfX0pLHMmJm0ubWVtYmVycy5pbmRleE9mKCJzdWIiKTwwKXt2YXIgWj12LnN1Yi54LUtyLG5lPXYuc3ViLnktS3IsUT12LnN1Yi54K2woInN1YiIpK0tyLHNlPXYuc3ViLnkrYygpK0tyO00+PVomJk08PVEmJmo+PW5lJiZqPD1zZSYmKG0ubWVtYmVycy5wdXNoKCJzdWIiKSx1LnN1Yi5jbGFzc0xpc3QucmVtb3ZlKCJxYy1jaGlwLS1hbmltIiksdS5zdWIuY2xhc3NMaXN0LmFkZCgiaXMtYXR0YWNoZWQiKSl9dmFyIGVlPWIobS5tZW1iZXJzLE0saiksUz1JKEIuY2xpZW50WCxCLmNsaWVudFkpO3Quc2V0QXR0cmlidXRlKCJkYXRhLWhvdCIsUz8iMSI6IjAiKSx0LnNldEF0dHJpYnV0ZSgiZGF0YS1hY3Rpb24iLEUobS5tZW1iZXJzKSksbS5tZW1iZXJzLmxlbmd0aD4xP0YoZWUpOncoKSx4KFM/Ilx1Njc3RVx1NjI0Qlx1NjI2N1x1ODg0QyI6Ilx1NjNEMFx1NEVBNCIpfX1mdW5jdGlvbiBZKEIsVCl7aWYoISghbXx8bS5wb2ludGVySWQhPT1CLnBvaW50ZXJJZCkpe3ZhciBNPW07bT1udWxsLHQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtZHJhZ2dpbmciKSx0LnNldEF0dHJpYnV0ZSgiZGF0YS1ob3QiLCIwIikseCgiXHU2M0QwXHU0RUE0IiksdygpLG8uZm9yRWFjaChmdW5jdGlvbihaKXt1W1pdLmNsYXNzTGlzdC5yZW1vdmUoImlzLWdyYWJiaW5nIiwiaXMtYXR0YWNoZWQiKX0pO3RyeXt1W00uYW5jaG9yXS5yZWxlYXNlUG9pbnRlckNhcHR1cmUoTS5wb2ludGVySWQpfWNhdGNoe31pZighVCYmIU0ubW92ZWQpe3ZhciBqPU91KE0uYW5jaG9yKTtObihqLmFjdGlvbixqLnN1Yik7cmV0dXJufWlmKCFUJiZJKEIuY2xpZW50WCxCLmNsaWVudFkpKXtObihFKE0ubWVtYmVycyksQShNLm1lbWJlcnMpKTtyZXR1cm59dC5zZXRBdHRyaWJ1dGUoImRhdGEtYWN0aW9uIiwiY29tbWl0IiksaCghMCl9fXZhciBMPWZ1bmN0aW9uKCl7bi5xdWlja0NvbW1pdE9wZW4mJiFtJiZoKCExKX07d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsTCksby5mb3JFYWNoKGZ1bmN0aW9uKEIpe3ZhciBUPXVbQl07VC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsXyhCKSksVC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsViksVC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLGZ1bmN0aW9uKE0pe1koTSwhMSl9KSxULmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLGZ1bmN0aW9uKE0pe1koTSwhMCl9KSxULmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKE0pe2lmKCEoVC5kaXNhYmxlZHx8WXIoKSkmJihNLmtleT09PSJFbnRlciJ8fE0ua2V5PT09IiAifHxNLmtleT09PSJTcGFjZWJhciIpKXtNLnByZXZlbnREZWZhdWx0KCk7dmFyIGo9T3UoQik7Tm4oai5hY3Rpb24sai5zdWIpfX0pfSksci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtyLmRpc2FibGVkfHxZcigpfHxtfHxObigiY29tbWl0Iil9KSxCbj1mdW5jdGlvbigpe3dpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLEwpLG09bnVsbH19ZnVuY3Rpb24gZmMoKXtpZighKCFuLnNlbGVjdGVkSWR8fG4ucXVpY2tDb21taXRHZW5lcmF0aW5nKSl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tZXNzYWdlIik7ZSYmKG4ucXVpY2tDb21taXRGb3JtLmN1c3RvbU1lc3NhZ2U9ZS52YWx1ZSk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC10YWciKTt0JiYobi5xdWlja0NvbW1pdEZvcm0udGFnPXQudmFsdWUpLG4ucXVpY2tDb21taXRHZW5lcmF0aW5nPSEwLG4ucXVpY2tDb21taXRFcnJvcj0iIixPdCgpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uc2VsZWN0ZWRJZCkrIi9nZW5lcmF0ZS1jb21taXQtbWVzc2FnZSIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe30pfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCkudGhlbihmdW5jdGlvbihpKXtyZXR1cm57b2s6ci5vayxkYXRhOml9fSl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKCFyLm9rKXRocm93IG5ldyBFcnJvcihyLmRhdGEmJnIuZGF0YS5lcnJvcnx8IkFJIFx1NzUxRlx1NjIxMFx1NTkzMVx1OEQyNVx1MzAwMiIpO3ZhciBpPXIuZGF0YXx8e30sYT10eXBlb2YgaS5tZXNzYWdlPT0ic3RyaW5nIj9pLm1lc3NhZ2U6IiIsdT10eXBlb2YgaS5zdWdnZXN0ZWRUYWc9PSJzdHJpbmciP2kuc3VnZ2VzdGVkVGFnLnRyaW0oKToiIixzPShuLnF1aWNrQ29tbWl0Rm9ybS5jdXN0b21NZXNzYWdlfHwiIikudHJpbSgpOyFzJiZhJiYobi5xdWlja0NvbW1pdEZvcm0uY3VzdG9tTWVzc2FnZT1hKSx1JiYobi5xdWlja0NvbW1pdEZvcm0udGFnRWRpdGVkfHwobi5xdWlja0NvbW1pdEZvcm0udGFnPXUpLG4ucXVpY2tDb21taXREcmFnQWN0aW9uPSJjb21taXQtdGFnIil9KS5jYXRjaChmdW5jdGlvbihyKXtuLnF1aWNrQ29tbWl0RXJyb3I9ciYmci5tZXNzYWdlfHwiQUkgXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1XHUzMDAyIn0pLmZpbmFsbHkoZnVuY3Rpb24oKXtuLnF1aWNrQ29tbWl0R2VuZXJhdGluZz0hMSxuLnF1aWNrQ29tbWl0T3BlbiYmT3QoKX0pfX1mdW5jdGlvbiBObihlLHQpe2lmKCEoIW4uc2VsZWN0ZWRJZHx8bi5xdWlja0NvbW1pdFN1Ym1pdHRpbmcpKXt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LW1lc3NhZ2UiKTtyJiYobi5xdWlja0NvbW1pdEZvcm0uY3VzdG9tTWVzc2FnZT1yLnZhbHVlKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LXRhZyIpO2kmJihuLnF1aWNrQ29tbWl0Rm9ybS50YWc9aS52YWx1ZSk7dmFyIGE9bi5xdWlja0NvbW1pdEZvcm18fHt9LHU9b2MoZXx8bi5xdWlja0NvbW1pdERyYWdBY3Rpb258fCJjb21taXQiKSxzPXUud2l0aFRhZyxvPXM/KGEudGFnfHwiIikudHJpbSgpOiIiLGw9KGEuY3VzdG9tTWVzc2FnZXx8IiIpLnRyaW0oKSxjPSFsLGY9e2JyYW5jaDoobi5naXRTdGF0dXN8fHt9KS5icmFuY2h8fCIiLGNvbW1pdEhhc2g6KG4uZ2l0U3RhdHVzfHx7fSkubGFzdENvbW1pdCYmKG4uZ2l0U3RhdHVzfHx7fSkubGFzdENvbW1pdC5zaG9ydEhhc2g/KG4uZ2l0U3RhdHVzfHx7fSkubGFzdENvbW1pdC5zaG9ydEhhc2g6KG4uZ2l0U3RhdHVzfHx7fSkuaGVhZD8obi5naXRTdGF0dXN8fHt9KS5oZWFkLnN1YnN0cmluZygwLDcpOiIiLGNvbW1pdFN1YmplY3Q6KG4uZ2l0U3RhdHVzfHx7fSkubGFzdENvbW1pdCYmKG4uZ2l0U3RhdHVzfHx7fSkubGFzdENvbW1pdC5zdWJqZWN0PyhuLmdpdFN0YXR1c3x8e30pLmxhc3RDb21taXQuc3ViamVjdDoiIix0YWc6KG4uZ2l0U3RhdHVzfHx7fSkubGF0ZXN0VGFnfHwiIn0sZD17YXV0b01lc3NhZ2U6YyxjdXN0b21NZXNzYWdlOmM/IiI6bCx0YWc6byxhdXRvVGFnOiEhKHMmJiFvKSxwdXNoOiEhdS5wdXNoLHN1Ym1vZHVsZTohIXR9O24ucXVpY2tDb21taXRTdWJtaXR0aW5nPSEwLG4ucXVpY2tDb21taXRTdWJtb2R1bGVJbnRlbnQ9ISF0LG4ucXVpY2tDb21taXRBdXRvR2VuZXJhdGluZz1jfHxkLmF1dG9UYWcsbi5xdWlja0NvbW1pdEVycm9yPSIiLG4ucXVpY2tDb21taXRQdXNoRXJyb3I9IiIsbi5xdWlja0NvbW1pdFJlc3VsdD1udWxsLG4ucXVpY2tDb21taXREcmFnQWN0aW9uPXUuYWN0aW9uLE90KCksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQobi5zZWxlY3RlZElkKSsiL3F1aWNrLWNvbW1pdCIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoZCl9KS50aGVuKGZ1bmN0aW9uKHYpe3JldHVybiB2Lmpzb24oKS50aGVuKGZ1bmN0aW9uKGcpe3JldHVybntvazp2Lm9rLGRhdGE6Z319KX0pLnRoZW4oZnVuY3Rpb24odil7aWYoIXYub2spdGhyb3cgbmV3IEVycm9yKHYuZGF0YSYmdi5kYXRhLmVycm9yfHwiXHU1RkVCXHU2Mzc3XHU2M0QwXHU0RUE0XHU1OTMxXHU4RDI1XHUzMDAyIik7dmFyIGc9di5kYXRhfHx7fSxoPWcuY29tbWl0JiZnLmNvbW1pdC5oYXNoP2cuY29tbWl0Lmhhc2guc3Vic3RyaW5nKDAsNyk6IiIsbT1nLnRhZyYmZy50YWcubmFtZT9nLnRhZy5uYW1lOiIiLGI9QXJyYXkuaXNBcnJheShnLnN1Ym1vZHVsZUNvbW1pdHMpP2cuc3VibW9kdWxlQ29tbWl0czpbXSxGPWIubGVuZ3RoPjA/Ilx1NURGMlx1NTE0OFx1NjNEMFx1NEVBNCAiK2IubGVuZ3RoKyIgXHU0RTJBIHN1Ym1vZHVsZVx1RkYwOCIrYi5tYXAoZnVuY3Rpb24oRSl7cmV0dXJuIEUucGF0aH0pLmpvaW4oIlx1MzAwMSIpKyJcdUZGMDlcdUZGMEMiOiIiLHc9RisiXHU1REYyXHU2M0QwXHU0RUE0IisoaD8iICIraDoiIikrKG0/Ilx1RkYwQ1x1NURGMlx1NjI1MyBUYWcgIittOiIiKTtuLnF1aWNrQ29tbWl0UmVzdWx0PXthY3Rpb246dS5hY3Rpb24saW5jbHVkZVN1Ym1vZHVsZTohIXQscHVzaGVkOiEhZy5wdXNoZWQscHVzaEVycm9yOmcucHVzaEVycm9yfHwiIixjb21taXRIYXNoOmgsY29tbWl0TWVzc2FnZTpnLmNvbW1pdCYmZy5jb21taXQubWVzc2FnZT9nLmNvbW1pdC5tZXNzYWdlOmwsdGFnTmFtZTptLG9sZFRhZzpmLnRhZyxvbGRDb21taXRIYXNoOmYuY29tbWl0SGFzaCxvbGRDb21taXRTdWJqZWN0OmYuY29tbWl0U3ViamVjdCxzdWJtb2R1bGVDb3VudDpiLmxlbmd0aH0sdS5wdXNoJiYhZy5wdXNoRXJyb3I/KHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKHcrIlx1RkYwQ1x1NURGMlx1NjNBOFx1OTAwMVx1MzAwMiIsInN1Y2Nlc3MiKSxfbigpKToodHlwZW9mIGs9PSJmdW5jdGlvbiImJmsodysoZy5wdXNoRXJyb3I/Ilx1RkYxQnB1c2ggXHU1OTMxXHU4RDI1XHVGRjFBIitnLnB1c2hFcnJvcjoiXHUzMDAyIiksZy5wdXNoRXJyb3I/ImVycm9yIjoic3VjY2VzcyIpLG4uc2VsZWN0ZWRJZCYmd24obi5zZWxlY3RlZElkLHtmb3JjZTohMH0pLnRoZW4oZnVuY3Rpb24oKXtuLnF1aWNrQ29tbWl0T3BlbiYmT3QoKX0pKX0pLmNhdGNoKGZ1bmN0aW9uKHYpe24ucXVpY2tDb21taXRFcnJvcj12JiZ2Lm1lc3NhZ2V8fCJcdTVGRUJcdTYzNzdcdTYzRDBcdTRFQTRcdTU5MzFcdThEMjVcdTMwMDIifSkuZmluYWxseShmdW5jdGlvbigpe24ucXVpY2tDb21taXRTdWJtaXR0aW5nPSExLG4ucXVpY2tDb21taXRBdXRvR2VuZXJhdGluZz0hMSxuLnF1aWNrQ29tbWl0T3BlbiYmT3QoKX0pfX1mdW5jdGlvbiBwYyhlKXtpZighKCFuLnNlbGVjdGVkSWR8fG4ucXVpY2tDb21taXRQdXNoaW5nKSl7dmFyIHQ9ISEoZSYmZS5wdXNoQ29tbWl0cykscj0hIShlJiZlLnB1c2hUYWdzKSxpPSEhKGUmJmUuY2xvc2VPblN1Y2Nlc3MpO2lmKCEoIXQmJiFyKSl7dmFyIGE9bi5xdWlja0NvbW1pdFJlc3VsdHx8e30sdT0hIWEuaW5jbHVkZVN1Ym1vZHVsZTtuLnF1aWNrQ29tbWl0UHVzaGluZz0hMCxuLnF1aWNrQ29tbWl0UHVzaEVycm9yPSIiLE90KCksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQobi5zZWxlY3RlZElkKSsiL2dpdC9wdXNoIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7cHVzaENvbW1pdHM6dCxwdXNoVGFnczpyLHN1Ym1vZHVsZTp1LHRhZzphLnRhZ05hbWV8fCIifSl9KS50aGVuKGZ1bmN0aW9uKHMpe3JldHVybiBzLmpzb24oKS50aGVuKGZ1bmN0aW9uKG8pe3JldHVybntvazpzLm9rLGRhdGE6b319KX0pLnRoZW4oZnVuY3Rpb24ocyl7dmFyIG89cy5kYXRhfHx7fTtpZighcy5vayl0aHJvdyBuZXcgRXJyb3IobyYmby5lcnJvcnx8Ilx1NjNBOFx1OTAwMVx1NTkzMVx1OEQyNVx1MzAwMiIpO2lmKG8uZXJyb3Ipe24ucXVpY2tDb21taXRQdXNoRXJyb3I9by5lcnJvcix0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmaygiXHU2M0E4XHU5MDAxXHU1OTMxXHU4RDI1XHVGRjFBIitvLmVycm9yLCJlcnJvciIpO3JldHVybn12YXIgbD1bXTtvLnB1c2hlZENvbW1pdHMmJmwucHVzaCgiY29tbWl0cyIpLG8ucHVzaGVkVGFncyYmbC5wdXNoKCJ0YWdzIik7dmFyIGM9bC5sZW5ndGg/bC5qb2luKCIgXHU1NDhDICIpOiJcdUZGMDhcdTY1RTBcdTUxODVcdTVCQjlcdUZGMDkiO3R5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTVERjJcdTYzQThcdTkwMDEgIitjLCJzdWNjZXNzIiksbi5xdWlja0NvbW1pdFJlc3VsdCYmKG4ucXVpY2tDb21taXRSZXN1bHQucHVzaGVkPSEwKSxpPyhfbigpLG4uc2VsZWN0ZWRJZCYmd24obi5zZWxlY3RlZElkLHtmb3JjZTohMH0pKTpuLnNlbGVjdGVkSWQmJnduKG4uc2VsZWN0ZWRJZCx7Zm9yY2U6ITB9KS50aGVuKGZ1bmN0aW9uKCl7bi5xdWlja0NvbW1pdE9wZW4mJk90KCl9KX0pLmNhdGNoKGZ1bmN0aW9uKHMpe24ucXVpY2tDb21taXRQdXNoRXJyb3I9cyYmcy5tZXNzYWdlfHwiXHU2M0E4XHU5MDAxXHU1OTMxXHU4RDI1XHUzMDAyIix0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmayhuLnF1aWNrQ29tbWl0UHVzaEVycm9yLCJlcnJvciIpfSkuZmluYWxseShmdW5jdGlvbigpe24ucXVpY2tDb21taXRQdXNoaW5nPSExLG4ucXVpY2tDb21taXRPcGVuJiZPdCgpfSl9fX1mdW5jdGlvbiB2YyhlKXt2YXIgdD0oZXx8IiIpLnRyaW0oKTtpZih0PT09Ij8/IilyZXR1cm57bGV0dGVyOiJVIixjbHM6InVudHJhY2tlZCIsdGl0bGU6Ilx1NjcyQVx1OERERlx1OEUyQSJ9O2lmKHQ9PT0iISEiKXJldHVybntsZXR0ZXI6IkkiLGNsczoiaWdub3JlZCIsdGl0bGU6Ilx1NURGMlx1NUZGRFx1NzU2NSJ9O2Zvcih2YXIgcj0iIixpPTA7aTxlLmxlbmd0aDtpKyspaWYoZVtpXSYmZVtpXSE9PSIuIiYmZVtpXSE9PSIgIil7cj1lW2ldO2JyZWFrfXI9KHJ8fHRbMF18fCI/IikudG9VcHBlckNhc2UoKTt2YXIgYT17QTp7Y2xzOiJhZGQiLHRpdGxlOiJcdTY1QjBcdTU4OUUifSxNOntjbHM6Im1vZCIsdGl0bGU6Ilx1NEZFRVx1NjUzOSJ9LEQ6e2NsczoiZGVsIix0aXRsZToiXHU1MjIwXHU5NjY0In0sUjp7Y2xzOiJyZW4iLHRpdGxlOiJcdTkxQ0RcdTU0N0RcdTU0MEQifSxDOntjbHM6InJlbiIsdGl0bGU6Ilx1NTkwRFx1NTIzNiJ9LFQ6e2NsczoibW9kIix0aXRsZToiXHU3QzdCXHU1NzhCXHU1M0Q4XHU2NkY0In0sVTp7Y2xzOiJkZWwiLHRpdGxlOiJcdTUxQjJcdTdBODEifX0sdT1hW3JdfHx7Y2xzOiJvdGhlciIsdGl0bGU6Ilx1NURGMlx1NjZGNFx1NjUzOSJ9O3JldHVybntsZXR0ZXI6cixjbHM6dS5jbHMsdGl0bGU6dS50aXRsZX19ZnVuY3Rpb24gTW0oZSl7dmFyIHQ9ZS5tYXAoZnVuY3Rpb24ocil7dmFyIGk9dmMoci5zdGF0dXN8fCIiKSxhPXIucGF0aHx8IiIsdT1hLmxhc3RJbmRleE9mKCIvIikscz11Pj0wP2Euc2xpY2UoMCx1KzEpOiIiLG89dT49MD9hLnNsaWNlKHUrMSk6YSxsPSIiO2lmKHIuaXNTdWJtb2R1bGUpe3ZhciBjPXIuc3VibW9kdWxlU3RhdGV8fHt9LGY9W107Yy5jb21taXRDaGFuZ2VkJiZmLnB1c2goIlx1NjVCMFx1NjMwN1x1OTQ4OCIpLGMuaGFzVHJhY2tlZENoYW5nZXMmJmYucHVzaCgiZGlydHkiKSxjLmhhc1VudHJhY2tlZCYmZi5wdXNoKCJcdTY3MkFcdThEREZcdThFMkEiKTt2YXIgZD1mLmxlbmd0aD8ic3VibW9kdWxlIFx4QjcgIitmLmpvaW4oIiAvICIpOiJzdWJtb2R1bGUiO2w9JzxzcGFuIGNsYXNzPSJxYy1zdWJtb2R1bGUtYmFkZ2UiPicrcChkKSsiPC9zcGFuPiJ9cmV0dXJuJzxkaXYgY2xhc3M9InFjLWZpbGUtcm93IiB0aXRsZT0iJytwKGEpKyciPjxzcGFuIGNsYXNzPSJxYy1maWxlLWJhZGdlIHFjLWJhZGdlLScraS5jbHMrJyIgdGl0bGU9IicrcChpLnRpdGxlKSsnIj4nK3AoaS5sZXR0ZXIpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InFjLWZpbGUtcGF0aCI+Jysocz8nPHNwYW4gY2xhc3M9InFjLWZpbGUtZGlyIj4nK3AocykrIjwvc3Bhbj4iOiIiKSsnPHNwYW4gY2xhc3M9InFjLWZpbGUtbmFtZSI+JytwKG8pKyI8L3NwYW4+PC9zcGFuPiIrbCsiPC9kaXY+In0pLmpvaW4oIiIpO3JldHVybiB0fHwnPGRpdiBjbGFzcz0icWMtZW1wdHkiPlx1NkNBMVx1NjcwOVx1NTNFRlx1NjNEMFx1NEVBNFx1NzY4NFx1NjUzOVx1NTJBOFx1MzAwMjwvZGl2Pid9ZnVuY3Rpb24gWXIoKXtyZXR1cm4gbi5xdWlja0NvbW1pdFN1Ym1pdHRpbmd8fG4ucXVpY2tDb21taXRQdXNoaW5nfWZ1bmN0aW9uIEpyKGUsdCxyLGkpe3JldHVybic8ZGl2IGNsYXNzPSJxYy1wYWlyJysoaT8iICIraToiIikrJyI+PGRpdiBjbGFzcz0icWMtcGFpci1sYWJlbCI+JytwKGUpKyc8L2Rpdj48ZGl2IGNsYXNzPSJxYy1wYWlyLWZsb3ciPjxkaXYgY2xhc3M9InFjLXBhaXItdmFsdWUgcWMtcGFpci12YWx1ZS0tZnJvbSI+Jyt0Kyc8L2Rpdj48ZGl2IGNsYXNzPSJxYy1wYWlyLWFycm93IiBhcmlhLWhpZGRlbj0idHJ1ZSI+XHUyMTkyPC9kaXY+PGRpdiBjbGFzcz0icWMtcGFpci12YWx1ZSBxYy1wYWlyLXZhbHVlLS10byI+JytyKyI8L2Rpdj48L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIG1jKCl7dmFyIGU9bi5naXRTdGF0dXN8fHt9O2lmKGUuaGFzU3VibW9kdWxlPT09ITApcmV0dXJuITA7Zm9yKHZhciB0PWUuZmlsZXN8fFtdLHI9MDtyPHQubGVuZ3RoO3IrKylpZih0W3JdJiZ0W3JdLmlzU3VibW9kdWxlPT09ITApcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gZ2MoZSl7dmFyIHQ9IWV8fFlyKCkscj1tYygpO2lmKG4ucXVpY2tDb21taXRTdWJtaXR0aW5nKXt2YXIgaT1uLnF1aWNrQ29tbWl0U3VibW9kdWxlSW50ZW50PyJcdUZGMDhcdTU0MkIgc3VibW9kdWxlXHVGRjA5IjoiIixhPShuLnF1aWNrQ29tbWl0QXV0b0dlbmVyYXRpbmc/IkFJIFx1NzUxRlx1NjIxMCArIFx1NjNEMFx1NEVBNFx1NEUyRFx1MjAyNiI6Ilx1NjI2N1x1ODg0Q1x1NEUyRFx1MjAyNiIpK2k7cmV0dXJuJzxkaXYgY2xhc3M9InFjLWRvY2std3JhcCI+PGRpdiBjbGFzcz0icWMtZG9jay1idXN5IiByb2xlPSJzdGF0dXMiPjxzcGFuIGNsYXNzPSJxYy1kb2NrLWJ1c3ktZG90Ij48L3NwYW4+JytwKGEpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIHUobyxsLGMpe3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InFjLWNoaXAgcWMtY2hpcC0tJytvKyciIGRhdGEtY2hpcD0iJytvKyciJysoYz8nIHRpdGxlPSInK3AoYykrJyInOiIiKSsodD8iIGRpc2FibGVkIjoiIikrJz48c3BhbiBjbGFzcz0icWMtY2hpcC1kb3QiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PHNwYW4gY2xhc3M9InFjLWNoaXAtbGFiZWwiPicrbCsiPC9zcGFuPjwvYnV0dG9uPiJ9dmFyIHM9dD9lPyIiOiJcdTVERTVcdTRGNUNcdTUzM0FcdTVFNzJcdTUxQzBcdUZGMENcdTY1RTBcdTUzRUZcdTYzRDBcdTRFQTQiOiJcdTYyRDZcdTUyQThcdTc4QzFcdTU0MzhcdTdFQzRcdTU0MDggXHhCNyBcdTRFMjJcdThGREJcdTYzRDBcdTRFQTRcdTUzM0FcdTYyNjdcdTg4NEMgXHhCNyBcdTUzNTVcdTUxRkJcdTc2RjRcdTYzQTVcdTYyNjdcdTg4NENcdThCRTVcdTk4NzkiKyhyPyIgXHhCNyBTdWIgXHU3NDAzXHU1M0VGXHU5MDA5XHVGRjBDXHU3RUIzXHU1MTY1XHU1NDBFXHU5MDEyXHU1RjUyXHU1OTA0XHU3NDA2IHN1Ym1vZHVsZSI6IiIpO3JldHVybic8ZGl2IGNsYXNzPSJxYy1kb2NrLXdyYXAgcWMtZG9jay13cmFwLS1tYWduZXRpYyInKyh0PycgZGF0YS1kaXNhYmxlZD0iMSInOiIiKSsnPjxkaXYgaWQ9InFjLWRvY2stc3RhZ2UiIGNsYXNzPSJxYy1kb2NrLXN0YWdlIiBkYXRhLWFjdGlvbj0iY29tbWl0IiBkYXRhLWhvdD0iMCI+PGRpdiBpZD0icWMtZG9jay1maWVsZCIgY2xhc3M9InFjLWRvY2stZmllbGQiPjxkaXYgaWQ9InFjLWRvY2stY2x1c3RlciIgY2xhc3M9InFjLWRvY2stY2x1c3RlciIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PicrdSgiY29tbWl0IiwiQ29tbWl0IikrdSgidGFnIiwiVGFnIikrdSgicHVzaCIsIlB1c2giKSsocj91KCJzdWIiLCJTdWIiLCJcdTYzRDBcdTRFQTRcdTcyMzZcdTRFRDNcdTVFOTNcdTVFNzZcdTkwMTJcdTVGNTJcdThGREJcdTUxNjUgc3VibW9kdWxlXHVGRjA4Y29tbWl0IC8gdGFnIC8gXHU1MjA2XHU1MjJCXHU2M0E4XHU5MDAxXHVGRjA5Iik6IiIpKyc8L2Rpdj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgaWQ9InFjLWRvY2stbGF1bmNoIiBjbGFzcz0icWMtZG9jay1sYXVuY2giJysodD8iIGRpc2FibGVkIjoiIikrJyBhcmlhLWxhYmVsPSJcdTYyNjdcdTg4NENcdTYzRDBcdTRFQTQiPjxzcGFuIGNsYXNzPSJxYy1kb2NrLWxhdW5jaC1hcnJvdyIgYXJpYS1oaWRkZW49InRydWUiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMjIiIGhlaWdodD0iMjIiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNSAxMmgxMk0xMyA2bDYgNi02IDYiLz48L3N2Zz48L3NwYW4+PHNwYW4gaWQ9InFjLWRvY2stbGF1bmNoLWxhYmVsIiBjbGFzcz0icWMtZG9jay1sYXVuY2gtbGFiZWwiPlx1NjNEMFx1NEVBNDwvc3Bhbj48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJxYy1kb2NrLWhpbnQiPicrcChzKSsiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiBoYygpe3ZhciBlPW4ucXVpY2tDb21taXRSZXN1bHQ7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9ZS5vbGRDb21taXRIYXNoPyI8Y29kZT4iK3AoZS5vbGRDb21taXRIYXNoKSsiPC9jb2RlPiIrKGUub2xkQ29tbWl0U3ViamVjdD8iPHNwYW4+IitwKGUub2xkQ29tbWl0U3ViamVjdCkrIjwvc3Bhbj4iOiIiKTonPHNwYW4gY2xhc3M9InFjLW11dGVkIj5cdTY1RTA8L3NwYW4+JyxyPWUuY29tbWl0SGFzaD8iPGNvZGU+IitwKGUuY29tbWl0SGFzaCkrIjwvY29kZT48c3Bhbj4iK3AoZS5jb21taXRNZXNzYWdlfHwiIikrIjwvc3Bhbj4iOic8c3BhbiBjbGFzcz0icWMtbXV0ZWQiPlx1NjVFMDwvc3Bhbj4nLGk9ZS5vbGRUYWc/Ijxjb2RlPiIrcChlLm9sZFRhZykrIjwvY29kZT4iOic8c3BhbiBjbGFzcz0icWMtbXV0ZWQiPlx1NjVFMCB0YWc8L3NwYW4+JyxhPWUudGFnTmFtZT8iPGNvZGU+IitwKGUudGFnTmFtZSkrIjwvY29kZT4iOic8c3BhbiBjbGFzcz0icWMtbXV0ZWQiPlx1NjcyQVx1NjI1MyB0YWc8L3NwYW4+Jyx1PWUucHVzaGVkPyc8c3BhbiBjbGFzcz0icWMtcmVzdWx0LXB1c2hlZCI+XHU1REYyXHU2M0E4XHU5MDAxPC9zcGFuPic6JzxidXR0b24gaWQ9InF1aWNrLWNvbW1pdC1wdXNoLWFmdGVyLWJ0biIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSBidG4tc20iIHR5cGU9ImJ1dHRvbiInKyhuLnF1aWNrQ29tbWl0UHVzaGluZz8iIGRpc2FibGVkIjoiIikrIj4iKyhuLnF1aWNrQ29tbWl0UHVzaGluZz8iXHU2M0E4XHU5MDAxXHU0RTJELi4uIjoiUHVzaCAmIENsb3NlIikrIjwvYnV0dG9uPiI7cmV0dXJuJzxzZWN0aW9uIGNsYXNzPSJxYy1yZXN1bHQtcGFuZWwiPicrSnIoIkNvbW1pdCIsdCxyLCIiKStKcigiVGFnIixpLGEsInFjLXBhaXItLXRhZyIpKyhlLnB1c2hFcnJvcnx8bi5xdWlja0NvbW1pdFB1c2hFcnJvcj8nPHAgY2xhc3M9ImVycm9yLW1lc3NhZ2UiPicrcChlLnB1c2hFcnJvcnx8bi5xdWlja0NvbW1pdFB1c2hFcnJvcikrIjwvcD4iOiIiKSsnPGRpdiBjbGFzcz0icWMtcmVzdWx0LWFjdGlvbnMiPjxidXR0b24gaWQ9InF1aWNrLWNvbW1pdC1jYW5jZWwtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20iIHR5cGU9ImJ1dHRvbiI+XHU1MTczXHU5NUVEPC9idXR0b24+Jyt1KyI8L2Rpdj48L3NlY3Rpb24+In1mdW5jdGlvbiBQdSgpe3ZhciBlPW4uZ2l0U3RhdHVzfHx7fSx0PW4ucXVpY2tDb21taXRGb3JtfHx7Y3VzdG9tTWVzc2FnZToiIix0YWc6IiIsdGFnRWRpdGVkOiExfSxyPShlLm1vZGlmaWVkQ291bnR8fDApPjAsaT1uLnF1aWNrQ29tbWl0R2VuZXJhdGluZyxhPWUubGFzdENvbW1pdHx8e30sdT1hLnNob3J0SGFzaD8iPGNvZGU+IitwKGEuc2hvcnRIYXNoKSsiPC9jb2RlPjxzcGFuPiIrcChhLnN1YmplY3R8fCIiKSsiPC9zcGFuPiI6ZS5oZWFkPyI8Y29kZT4iK3AoZS5oZWFkLnN1YnN0cmluZygwLDcpKSsiPC9jb2RlPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NUUwIGNvbW1pdDwvc3Bhbj4nLHM9ZS5sYXRlc3RUYWc/Ijxjb2RlPiIrcChlLmxhdGVzdFRhZykrIjwvY29kZT4iOic8c3BhbiBjbGFzcz0icWMtbXV0ZWQiPlx1NjVFMCB0YWc8L3NwYW4+JyxvPSc8aW5wdXQgdHlwZT0idGV4dCIgaWQ9InF1aWNrLWNvbW1pdC10YWciIGNsYXNzPSJmaWVsZC1pbnB1dCBxYy10YWctZmllbGQtaW5wdXQiIHBsYWNlaG9sZGVyPSJcdTc1NTlcdTdBN0FcdTUyMTkgQUkgXHU3NTFGXHU2MjEwIiB2YWx1ZT0iJytwKHQudGFnfHwiIikrJyInKyhuLnF1aWNrQ29tbWl0U3VibWl0dGluZz8iIGRpc2FibGVkIjoiIikrIj4iLGw9Jzx0ZXh0YXJlYSBpZD0icXVpY2stY29tbWl0LW1lc3NhZ2UiIGNsYXNzPSJmaWVsZC1pbnB1dCBxYy1tZXNzYWdlLWlucHV0IiByb3dzPSIzIiBwbGFjZWhvbGRlcj0iTmV3IGNvbW1pdCBtZXNzYWdlIiAnKyhuLnF1aWNrQ29tbWl0U3VibWl0dGluZz8iZGlzYWJsZWQiOiIiKSsiPiIrcCh0LmN1c3RvbU1lc3NhZ2V8fCIiKSsiPC90ZXh0YXJlYT4iLGM9W107Yy5wdXNoKGUuYnJhbmNofHwiKG5vIGJyYW5jaCkiKSxjLnB1c2gocj8oZS5tb2RpZmllZENvdW50fHwwKSsiIFx1NEUyQVx1NjUzOVx1NTJBOCI6Ilx1NURFNVx1NEY1Q1x1NTMzQVx1NUU3Mlx1NTFDMCIpLHR5cGVvZiBlLmFoZWFkPT0ibnVtYmVyIiYmZS5haGVhZD4wJiZjLnB1c2goIlx1MjE5MSIrZS5haGVhZCksdHlwZW9mIGUuYmVoaW5kPT0ibnVtYmVyIiYmZS5iZWhpbmQ+MCYmYy5wdXNoKCJcdTIxOTMiK2UuYmVoaW5kKTt2YXIgZj1uLnF1aWNrQ29tbWl0UmVzdWx0PyIiOic8c2VjdGlvbiBjbGFzcz0icWMtcmVsZWFzZS1wYW5lbCI+PGRpdiBjbGFzcz0icWMtbWVzc2FnZS1oZWFkZXIiPjxzcGFuIGNsYXNzPSJxYy1zZWN0aW9uLXRpdGxlIj5OZXc8L3NwYW4+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGlkPSJxdWljay1jb21taXQtYWktYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gcWMtYWktYnRuIicrKGk/IiBkaXNhYmxlZCI6IiIpKycgdGl0bGU9IkFJIFx1NzUxRlx1NjIxMCBjb21taXQgbWVzc2FnZSBcdTRFMEUgdGFnIj48c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjEzIiBoZWlnaHQ9IjEzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTggMS41bDEuNCAzLjZMMTMgNi41IDkuNCA3LjkgOCAxMS41IDYuNiA3LjkgMyA2LjVsMy42LTEuNEw4IDEuNXpNMTIuNSAxMC41bC43IDEuOCAxLjguNy0xLjguNy0uNyAxLjgtLjctMS44LTEuOC0uNyAxLjgtLjcuNy0xLjh6IiBmaWxsPSJjdXJyZW50Q29sb3IiLz48L3N2Zz48c3Bhbj4nKyhpPyJcdTc1MUZcdTYyMTBcdTRFMkQuLi4iOiJBSSIpKyI8L3NwYW4+PC9idXR0b24+PC9kaXY+IitKcigiQ29tbWl0Iix1LGwsInFjLXBhaXItLWNvbW1pdCIpK0pyKCJUYWciLHMsbywicWMtcGFpci0tdGFnIikrKG4ucXVpY2tDb21taXRFcnJvcj8nPHAgY2xhc3M9ImVycm9yLW1lc3NhZ2UiPicrcChuLnF1aWNrQ29tbWl0RXJyb3IpKyI8L3A+IjoiIikrZ2MocikrJzxkaXYgY2xhc3M9InFjLW1vZGFsLWFjdGlvbnMiPjxidXR0b24gaWQ9InF1aWNrLWNvbW1pdC1jYW5jZWwtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20iIHR5cGU9ImJ1dHRvbiI+XHU1M0Q2XHU2RDg4PC9idXR0b24+PC9kaXY+PC9zZWN0aW9uPicsZD1oYygpO3JldHVybic8c2VjdGlvbiBpZD0icXVpY2stY29tbWl0LW1vZGFsIiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AnKyhuLnF1aWNrQ29tbWl0T3Blbj8iIjoiIGhpZGRlbiIpKyciPjxkaXYgY2xhc3M9Im1vZGFsIHF1aWNrLWNvbW1pdC1tb2RhbCIgcm9sZT0iZGlhbG9nIiBhcmlhLWxhYmVsbGVkYnk9InF1aWNrLWNvbW1pdC10aXRsZSI+PGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj48ZGl2PjxoMiBpZD0icXVpY2stY29tbWl0LXRpdGxlIiBjbGFzcz0ibW9kYWwtdGl0bGUiPlx1NUZFQlx1NjM3N1x1NjNEMFx1NEVBNDwvaDI+PHAgY2xhc3M9Im1vZGFsLXN1YnRpdGxlIj4nK3AoYy5qb2luKCIgXHhCNyAiKSkrJzwvcD48L2Rpdj48YnV0dG9uIGlkPSJxdWljay1jb21taXQtY2xvc2UtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4taWNvbiBtb2RhbC1jbG9zZS1idG4iIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+JytmK2QrIjwvZGl2PjwvZGl2Pjwvc2VjdGlvbj4ifWZ1bmN0aW9uIHljKCl7cmV0dXJuJzxzZWN0aW9uIGlkPSJ3b3JrdHJlZS1tZXJnZS1tb2RhbCIgY2xhc3M9Im1vZGFsLWJhY2tkcm9wIGhpZGRlbiI+PGRpdiBjbGFzcz0ibW9kYWwgd29ya3RyZWUtbWVyZ2UtbW9kYWwiPjxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+PGRpdj48aDIgY2xhc3M9Im1vZGFsLXRpdGxlIj5cdTU0MDhcdTVFNzYgV29ya3RyZWU8L2gyPjxwIGNsYXNzPSJtb2RhbC1zdWJ0aXRsZSI+XHU2OEMwXHU2N0U1XHU1RjUzXHU1MjREXHU0RUZCXHU1MkExXHU1MjA2XHU2NTJGXHU1RTc2XHU1RkVCXHU2Mzc3XHU1NDA4XHU1RTc2XHU1MjMwXHU0RTNCXHU1MjA2XHU2NTJGXHUzMDAyPC9wPjwvZGl2PjxidXR0b24gaWQ9ImNsb3NlLXdvcmt0cmVlLW1lcmdlLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWljb24gbW9kYWwtY2xvc2UtYnRuIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjE4IiB5MT0iNiIgeDI9IjYiIHkyPSIxOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPjxkaXYgaWQ9Indvcmt0cmVlLW1lcmdlLWNvbnRlbnQiIGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1jb250ZW50Ij48L2Rpdj48cCBpZD0id29ya3RyZWUtbWVyZ2UtZXJyb3IiIGNsYXNzPSJlcnJvci1tZXNzYWdlIGhpZGRlbiI+PC9wPjxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLWFjdGlvbnMiPjxidXR0b24gaWQ9Indvcmt0cmVlLW1lcmdlLWNhbmNlbC1idXR0b24iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSI+XHU1M0Q2XHU2RDg4PC9idXR0b24+PGJ1dHRvbiBpZD0id29ya3RyZWUtbWVyZ2UtY29uZmlybS1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkiPlx1Nzg2RVx1OEJBNFx1NTQwOFx1NUU3Nlx1NUU3Nlx1NkUwNVx1NzQwNjwvYnV0dG9uPjwvZGl2PjwvZGl2PjwvZGl2Pjwvc2VjdGlvbj4nfWZ1bmN0aW9uIGJjKCl7cmV0dXJuJzxzZWN0aW9uIGlkPSJzZXR0aW5ncy1tb2RhbCIgY2xhc3M9Im1vZGFsLWJhY2tkcm9wIGhpZGRlbiI+PGRpdiBjbGFzcz0ibW9kYWwgc2V0dGluZ3MtbW9kYWwiPjxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciBzZXR0aW5ncy1tb2RhbC1oZWFkZXIiPjxkaXYgY2xhc3M9InNldHRpbmdzLW1vZGFsLXRpdGxlLWdyb3VwIj48aDIgY2xhc3M9Im1vZGFsLXRpdGxlIj5cdThCQkVcdTdGNkU8L2gyPjxwIGNsYXNzPSJzZXR0aW5ncy1tb2RhbC1zdWJ0aXRsZSI+XHU4QzAzXHU2NTc0XHU1RTk0XHU3NTI4XHU5MTREXHU3RjZFXHUzMDAxXHU5MDFBXHU3N0U1XHUzMDAxXHU1Qjg5XHU1MTY4XHU1NDhDXHU2NjNFXHU3OTNBXHU1MDRGXHU1OTdEPC9wPjwvZGl2PjxidXR0b24gaWQ9ImNsb3NlLXNldHRpbmdzLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWljb24gbW9kYWwtY2xvc2UtYnRuIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjE4IiB5MT0iNiIgeDI9IjYiIHkyPSIxOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9Im1vZGFsLWJvZHkgc2V0dGluZ3MtbW9kYWwtYm9keSI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtbGF5b3V0Ij48YXNpZGUgY2xhc3M9InNldHRpbmdzLXNpZGViYXIiPjxkaXYgY2xhc3M9InNldHRpbmdzLXNpZGViYXItaGVhZGVyIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zaWRlYmFyLXRpdGxlIj5cdTUwNEZcdTU5N0RcdThCQkVcdTdGNkU8L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zaWRlYmFyLWhpbnQiPlx1NURFNlx1NEZBN1x1NTIwN1x1NjM2Mlx1NTIwNlx1NTMzQVx1RkYwQ1x1NTNGM1x1NEZBN1x1NjdFNVx1NzcwQlx1OEJFNlx1N0VDNlx1OEJGNFx1NjYwRVx1NEUwRVx1OTAwOVx1OTg3OVx1MzAwMjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRhYnMiIHJvbGU9InRhYmxpc3QiIGFyaWEtbGFiZWw9Ilx1OEJCRVx1N0Y2RVx1NTIwNlx1N0VDNCIgYXJpYS1vcmllbnRhdGlvbj0idmVydGljYWwiPjxidXR0b24gY2xhc3M9InNldHRpbmdzLXRhYiBhY3RpdmUiIGRhdGEtdGFiPSJhYm91dCIgcm9sZT0idGFiIiBhcmlhLXNlbGVjdGVkPSJ0cnVlIiBhcmlhLWNvbnRyb2xzPSJzZXR0aW5ncy10YWItYWJvdXQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWFpbiI+XHU1MTczXHU0RThFPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWV0YSI+XHU3MjQ4XHU2NzJDXHUzMDAxXHU2NkY0XHU2NUIwXHU0RTBFXHU4RkRFXHU2M0E1XHU2NUI5XHU1RjBGPC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9InNldHRpbmdzLXRhYiIgZGF0YS10YWI9ImdlbmVyYWwiIHJvbGU9InRhYiIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9InNldHRpbmdzLXRhYi1nZW5lcmFsIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1haW4iPlx1NTdGQVx1NjcyQ1x1OTE0RFx1N0Y2RTwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1ldGEiPlx1NEUzQlx1NjczQVx1MzAwMVx1NkEyMVx1NUYwRlx1MzAwMVx1OEJFRFx1OEEwMFx1MzAwMVx1NzZFRVx1NUY1NTwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJzZXR0aW5ncy10YWIiIGRhdGEtdGFiPSJub3RpZmljYXRpb25zIiByb2xlPSJ0YWIiIGFyaWEtc2VsZWN0ZWQ9ImZhbHNlIiBhcmlhLWNvbnRyb2xzPSJzZXR0aW5ncy10YWItbm90aWZpY2F0aW9ucyI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tYWluIj5cdTkwMUFcdTc3RTU8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tZXRhIj5cdTYzRDBcdTc5M0FcdTk3RjNcdTRFMEVcdTZENEZcdTg5QzhcdTU2NjhcdTkwMUFcdTc3RTU8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0ic2V0dGluZ3MtdGFiIiBkYXRhLXRhYj0ic2VjdXJpdHkiIHJvbGU9InRhYiIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9InNldHRpbmdzLXRhYi1zZWN1cml0eSI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tYWluIj5cdTVCODlcdTUxNjg8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRhYi1tZXRhIj5cdTVCQzZcdTc4MDFcdTRFMEVcdThCQzFcdTRFNjY8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0ic2V0dGluZ3MtdGFiIiBkYXRhLXRhYj0icHJlc2V0cyIgcm9sZT0idGFiIiBhcmlhLXNlbGVjdGVkPSJmYWxzZSIgYXJpYS1jb250cm9scz0ic2V0dGluZ3MtdGFiLXByZXNldHMiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWFpbiI+XHU1NDdEXHU0RUU0XHU5ODg0XHU4QkJFPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10YWItbWV0YSI+XHU2N0U1XHU3NzBCXHU1REYyXHU2NzA5XHU5ODg0XHU4QkJFPC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9InNldHRpbmdzLXRhYiIgZGF0YS10YWI9ImRpc3BsYXkiIHJvbGU9InRhYiIgYXJpYS1zZWxlY3RlZD0iZmFsc2UiIGFyaWEtY29udHJvbHM9InNldHRpbmdzLXRhYi1kaXNwbGF5Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1haW4iPlx1NjYzRVx1NzkzQTwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdGFiLW1ldGEiPlx1NTM2MVx1NzI0N1x1OUVEOFx1OEJBNFx1NUM1NVx1NUYwMFx1ODg0Q1x1NEUzQTwvc3Bhbj48L2J1dHRvbj48L2Rpdj48L2FzaWRlPjxkaXYgY2xhc3M9InNldHRpbmdzLWNvbnRlbnQiPjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsIGFjdGl2ZSIgaWQ9InNldHRpbmdzLXRhYi1hYm91dCIgcm9sZT0idGFicGFuZWwiPjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsLWhlYWRlciI+PGgzIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC10aXRsZSI+XHU1MTczXHU0RThFIFdhbmQ8L2gzPjxwIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1kZXNjIj5cdTY3RTVcdTc3MEJcdTcyNDhcdTY3MkNcdTRGRTFcdTYwNkZcdTMwMDFcdTY2RjRcdTY1QjBcdTcyQjZcdTYwMDFcdTU0OEMgQW5kcm9pZCBBcHAgXHU4RkRFXHU2M0E1XHU2NUI5XHU1RjBGXHUzMDAyPC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWFib3V0LWluZm8iPjxkaXYgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTUzMDVcdTU0MEQ8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIiBpZD0ic2V0dGluZ3MtcGtnLW5hbWUiPi08L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NUY1M1x1NTI0RFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy12ZXJzaW9uIj4tPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5Ob2RlLmpzIFx1ODk4MVx1NkM0Mjwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy1ub2RlLXJlcSI+LTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3ciPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU0RUQzXHU1RTkzXHU1NzMwXHU1NzQwPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9InNldHRpbmdzLXJlcG8tdXJsIj48YSBocmVmPSIjIiB0YXJnZXQ9Il9ibGFuayIgcmVsPSJub29wZW5lciI+LTwvYT48L3NwYW4+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24iIGlkPSJ3ZWItdXBkYXRlLXNlY3Rpb24iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytLKCJnbG9iZSIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPldlYiBcdTdBRUY8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU2RDRGXHU4OUM4XHU1NjY4XHU4QkJGXHU5NUVFXHU3Njg0XHU2NzBEXHU1MkExXHU3MjQ4XHU2NzJDPC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTY3MDBcdTY1QjBcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIiBpZD0ic2V0dGluZ3MtbGF0ZXN0LXZlcnNpb24iPi08L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdXBkYXRlLWFjdGlvbnMiPjxidXR0b24gaWQ9ImNoZWNrLXVwZGF0ZS1idXR0b24iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20iPlx1NjhDMFx1NjdFNVx1NjZGNFx1NjVCMDwvYnV0dG9uPjxidXR0b24gaWQ9ImRvLXVwZGF0ZS1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLXNtIGhpZGRlbiI+XHU2NkY0XHU2NUIwXHU1MjMwXHU2NzAwXHU2NUIwXHU3MjQ4PC9idXR0b24+PGJ1dHRvbiBpZD0iZG8tcmVzdGFydC1idXR0b24iIGNsYXNzPSJidG4gYnRuLXN1Y2Nlc3MgYnRuLXNtIGhpZGRlbiI+XHU5MUNEXHU1NDJGXHU3NTFGXHU2NTQ4PC9idXR0b24+PC9kaXY+PHAgaWQ9InVwZGF0ZS1tZXNzYWdlIiBjbGFzcz0iaGludCBoaWRkZW4iPjwvcD48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSI+QmV0YSBcdTkwMUFcdTkwNTM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIj5cdTY2RjRcdTY1QjBcdTUyMzAgbnBtIGJldGEgXHU3MjQ4XHU2NzJDXHVGRjA4dGFnICsgY29tbWl0IFx1NUMzRVx1NjgwN1x1RkYwOVx1RkYwQ1x1NUMxRFx1OUM5Q1x1NjVCMFx1NTI5Rlx1ODBGRFx1RkYwQ1x1NTNFRlx1ODBGRFx1NEUwRFx1N0EzM1x1NUI5QVx1MzAwMjwvc3Bhbj48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iYmV0YS1jaGFubmVsLXRvZ2dsZSIgY2xhc3M9InN3aXRjaC10b2dnbGUiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSI+XHU4MUVBXHU1MkE4XHU2NkY0XHU2NUIwPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyI+XHU2OEMwXHU2RDRCXHU1MjMwXHU2NUIwXHU3MjQ4XHU2NzJDXHU1QzA2XHU4MUVBXHU1MkE4XHU0RTBCXHU4RjdEXHU1Qjg5XHU4OEM1XHU1RTc2XHU5MUNEXHU1NDJGXHU2NzBEXHU1MkExXHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJhdXRvLXVwZGF0ZS13ZWItdG9nZ2xlIiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSI+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uIGhpZGRlbiIgaWQ9ImFuZHJvaWQtYXBrLXNlY3Rpb24iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytLKCJzbWFydHBob25lIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+QW5kcm9pZCBBcHA8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU1MzlGXHU3NTFGXHU1QkEyXHU2MjM3XHU3QUVGXHU3MjQ4XHU2NzJDXHU0RTBFIEFQSyBcdTRFMEJcdThGN0Q8L3A+PC9kaXY+PC9kaXY+PGRpdiBpZD0iYW5kcm9pZC1hcGstY3VycmVudC1yb3ciIGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3cgaGlkZGVuIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NUY1M1x1NTI0RFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy1hbmRyb2lkLWFway1jdXJyZW50Ij4tPC9zcGFuPjwvZGl2PjxkaXYgaWQ9ImFuZHJvaWQtYXBrLWdpdGh1Yi1yb3ciIGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3cgc2V0dGluZ3MtYWJvdXQtcm93LWFjdGlvbiBoaWRkZW4iPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU3RUJGXHU0RTBBXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSBzZXR0aW5ncy12YWx1ZS1mbGV4IiBpZD0ic2V0dGluZ3MtYW5kcm9pZC1hcGstZ2l0aHViIj4tPC9zcGFuPjxidXR0b24gaWQ9ImRvd25sb2FkLWdpdGh1Yi1hcGstYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTRFMEJcdThGN0Q8L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJhbmRyb2lkLWFway1sb2NhbC1yb3ciIGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3cgc2V0dGluZ3MtYWJvdXQtcm93LWFjdGlvbiBoaWRkZW4iPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU2NzJDXHU1NzMwXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSBzZXR0aW5ncy12YWx1ZS1mbGV4IiBpZD0ic2V0dGluZ3MtYW5kcm9pZC1hcGstbG9jYWwiPi08L3NwYW4+PGJ1dHRvbiBpZD0iZG93bmxvYWQtbG9jYWwtYXBrLWJ0biIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSBoaWRkZW4iIHR5cGU9ImJ1dHRvbiI+XHU0RTBCXHU4RjdEPC9idXR0b24+PC9kaXY+PGRpdiBpZD0iYW5kcm9pZC1hdXRvLXVwZGF0ZS1yb3ciIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93IGhpZGRlbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiPlx1ODFFQVx1NTJBOFx1NjZGNFx1NjVCMDwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiIGlkPSJhbmRyb2lkLWF1dG8tdXBkYXRlLWhpbnQiPlx1NjhDMFx1NkQ0Qlx1NTIzMFx1NjVCMFx1NzI0OCBBUEsgXHU2NUY2XHU4MUVBXHU1MkE4XHU2MkM5XHU4RDc3XHU0RTBCXHU4RjdEXHVGRjBDXHU1Qjg5XHU4OEM1XHU0RUNEXHU5NzAwXHU1NzI4XHU3Q0ZCXHU3RURGXHU0RTJEXHU3ODZFXHU4QkE0XHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJhdXRvLXVwZGF0ZS1hcGstdG9nZ2xlIiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSI+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxwIGlkPSJhbmRyb2lkLWFway1tZXNzYWdlIiBjbGFzcz0iaGludCBoaWRkZW4iPjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy11cGRhdGUtc2VjdGlvbiBoaWRkZW4iIGlkPSJtYWNvcy1kbWctc2VjdGlvbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0soImRlc2t0b3AiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5tYWNPUyBBcHA8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU1MzlGXHU3NTFGXHU1QkEyXHU2MjM3XHU3QUVGXHU3MjQ4XHU2NzJDXHU0RTBFIERNRyBcdTRFMEJcdThGN0Q8L3A+PC9kaXY+PC9kaXY+PGRpdiBpZD0ibWFjb3MtZG1nLWN1cnJlbnQtcm93IiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93IGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTVGNTNcdTUyNERcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIiBpZD0ic2V0dGluZ3MtbWFjb3MtZG1nLWN1cnJlbnQiPi08L3NwYW4+PC9kaXY+PGRpdiBpZD0ibWFjb3MtZG1nLWdpdGh1Yi1yb3ciIGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3cgc2V0dGluZ3MtYWJvdXQtcm93LWFjdGlvbiBoaWRkZW4iPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU3RUJGXHU0RTBBXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSBzZXR0aW5ncy12YWx1ZS1mbGV4IiBpZD0ic2V0dGluZ3MtbWFjb3MtZG1nLWdpdGh1YiI+LTwvc3Bhbj48YnV0dG9uIGlkPSJkb3dubG9hZC1naXRodWItZG1nLWJ0biIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSBoaWRkZW4iIHR5cGU9ImJ1dHRvbiI+XHU0RTBCXHU4RjdEPC9idXR0b24+PC9kaXY+PGRpdiBpZD0ibWFjb3MtZG1nLWxvY2FsLXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBzZXR0aW5ncy1hYm91dC1yb3ctYWN0aW9uIGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTY3MkNcdTU3MzBcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIHNldHRpbmdzLXZhbHVlLWZsZXgiIGlkPSJzZXR0aW5ncy1tYWNvcy1kbWctbG9jYWwiPi08L3NwYW4+PGJ1dHRvbiBpZD0iZG93bmxvYWQtbG9jYWwtZG1nLWJ0biIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSBoaWRkZW4iIHR5cGU9ImJ1dHRvbiI+XHU0RTBCXHU4RjdEPC9idXR0b24+PC9kaXY+PGRpdiBpZD0ibWFjb3MtYXV0by11cGRhdGUtcm93IiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyBoaWRkZW4iPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIj5cdTgxRUFcdTUyQThcdTY2RjRcdTY1QjA8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIiBpZD0ibWFjb3MtYXV0by11cGRhdGUtaGludCI+XHU2OEMwXHU2RDRCXHU1MjMwXHU2NUIwXHU3MjQ4IERNRyBcdTVDMDZcdTgxRUFcdTUyQThcdTRFMEJcdThGN0RcdTVFNzZcdTYzMDJcdThGN0RcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImF1dG8tdXBkYXRlLWRtZy10b2dnbGUiIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIj48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PHAgaWQ9Im1hY29zLWRtZy1tZXNzYWdlIiBjbGFzcz0iaGludCBoaWRkZW4iPjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy11cGRhdGUtc2VjdGlvbiIgaWQ9ImFuZHJvaWQtY29ubmVjdC1zZWN0aW9uIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrSygibGluayIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPkFwcCBcdThGREVcdTYzQTVcdTc4MDE8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU3Qzk4XHU4RDM0XHU1MjMwIEFuZHJvaWQgQXBwIFx1NTM3M1x1NTNFRlx1ODFFQVx1NTJBOFx1OEZERVx1NjNBNVx1RkYwQ1x1NjVFMFx1OTcwMFx1NUJDNlx1NzgwMVx1RkYxQlx1NjUzOVx1NUJDNlx1NzgwMVx1NTQwRVx1NTkzMVx1NjU0OFx1MzAwMjwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jb25uZWN0LXVybC1ib3giPjxjb2RlIGlkPSJhbmRyb2lkLWNvbm5lY3QtY29kZSIgY2xhc3M9InNldHRpbmdzLWNvbm5lY3QtdXJsLXRleHQiPi08L2NvZGU+PGJ1dHRvbiBpZD0iY29weS1jb25uZWN0LWNvZGUtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTU5MERcdTUyMzZcdThGREVcdTYzQTVcdTc4MDEiPlx1NTkwRFx1NTIzNjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWNvbm5lY3QtcXItYm94Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jb25uZWN0LXFyLXdyYXAiIGlkPSJhbmRyb2lkLWNvbm5lY3QtcXItd3JhcCIgdGl0bGU9Ilx1NzBCOVx1NTFGQlx1NjUzRVx1NTkyNyI+PGNhbnZhcyBpZD0iYW5kcm9pZC1jb25uZWN0LXFyIiB3aWR0aD0iMTgwIiBoZWlnaHQ9IjE4MCI+PC9jYW52YXM+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC1xci1lbXB0eSIgaWQ9ImFuZHJvaWQtY29ubmVjdC1xci1lbXB0eSI+XHU3NTFGXHU2MjEwXHU0RTJEXHUyMDI2PC9kaXY+PC9kaXY+PHAgY2xhc3M9InNldHRpbmdzLWNvbm5lY3QtcXItaGludCI+XHU3NTI4IFdhbmQgQXBwIFx1NjI2Qlx1NEUwMFx1NjI2Qlx1RkYwQ1x1NTM3M1x1NTNFRlx1NEUwMFx1OTUyRVx1NTg2Qlx1NTE2NVx1NjcwRFx1NTJBMVx1NTY2OFx1NTczMFx1NTc0MFx1NEUwRVx1OEZERVx1NjNBNVx1NzgwMVx1MzAwMjwvcD48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbCIgaWQ9InNldHRpbmdzLXRhYi1ub3RpZmljYXRpb25zIiByb2xlPSJ0YWJwYW5lbCI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtaGVhZGVyIj48aDMgY2xhc3M9InNldHRpbmdzLXBhbmVsLXRpdGxlIj5cdTkwMUFcdTc3RTU8L2gzPjxwIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1kZXNjIj5cdThCQkVcdTdGNkVcdTYzRDBcdTc5M0FcdTk3RjNcdTMwMDFcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTU0OENcdTZENEZcdTg5QzhcdTU2NjhcdTkwMUFcdTc3RTVcdTc2ODRcdTg4NENcdTRFM0FcdTMwMDI8L3A+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytLKCJiZWxsIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+XHU5MDFBXHU3N0U1XHU1MDRGXHU1OTdEPC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1NjNEMFx1NzkzQVx1OTdGM1x1NEUwRVx1NUU5NFx1NzUyOFx1NTE4NVx1OTAxQVx1NzdFNVx1NkMxNFx1NkNFMTwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiIGZvcj0iY2ZnLW5vdGlmLXNvdW5kIj5cdTY0QURcdTY1M0VcdTYzRDBcdTc5M0FcdTk3RjM8L2xhYmVsPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyI+XHU5MUNEXHU4OTgxXHU5MDFBXHU3N0U1XHVGRjA4XHU3MjQ4XHU2NzJDXHU2NkY0XHU2NUIwXHUzMDAxXHU2NzQzXHU5NjUwXHU3QjQ5XHU1Rjg1XHU3QjQ5XHVGRjA5XHU2NUY2XHU2NEFEXHU2NTNFXHU2N0Q0XHU1NDhDXHU2M0QwXHU3OTNBXHU5N0YzXHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgaWQ9ImNmZy1ub3RpZi1zb3VuZCIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1yYW5nZS1yb3ciIGlkPSJub3RpZi12b2x1bWUtZmllbGQiPjxsYWJlbCBjbGFzcz0ic2V0dGluZ3MtcmFuZ2UtbGFiZWwiIGZvcj0iY2ZnLW5vdGlmLXZvbHVtZSI+XHU5N0YzXHU5MUNGPC9sYWJlbD48aW5wdXQgaWQ9ImNmZy1ub3RpZi12b2x1bWUiIHR5cGU9InJhbmdlIiBtaW49IjAiIG1heD0iMTAwIiBzdGVwPSI1IiBjbGFzcz0ic2V0dGluZ3MtcmFuZ2UiIC8+PHNwYW4gaWQ9ImNmZy1ub3RpZi12b2x1bWUtdmFsIiBjbGFzcz0ic2V0dGluZ3MtcmFuZ2UtdmFsdWUiPjgwJTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiIGZvcj0iY2ZnLW5vdGlmLWJ1YmJsZSI+XHU1RTk0XHU3NTI4XHU1MTg1XHU5MDFBXHU3N0U1XHU2QzE0XHU2Q0UxPC9sYWJlbD48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiPlx1NTcyOFx1OTg3NVx1OTc2Mlx1OTg3Nlx1OTBFOFx1NUYzOVx1NTFGQVx1NkQ2RVx1NTJBOFx1OTAxQVx1NzdFNVx1NkMxNFx1NkNFMVx1MzAwMjwvc3Bhbj48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IGlkPSJjZmctbm90aWYtYnViYmxlIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjwvZGl2PjxkaXYgaWQ9Im5hdGl2ZS1zb3VuZC1zZWN0aW9uIiBjbGFzcz0ic2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24gaGlkZGVuIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrSygibXVzaWMiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5cdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTk0QzNcdTU4RjA8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU5MDA5XHU2MkU5IEFuZHJvaWQgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHU0RjdGXHU3NTI4XHU3Njg0XHU5NEMzXHU1OEYwPC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXJvdy13aXRoLWFjdGlvbiI+PHNlbGVjdCBpZD0ibmF0aXZlLXNvdW5kLXNlbGVjdCIgY2xhc3M9ImZpZWxkLWlucHV0IGZpZWxkLXNlbGVjdCI+PC9zZWxlY3Q+PGJ1dHRvbiBpZD0ibmF0aXZlLXNvdW5kLXByZXZpZXciIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20gYnRuLXdpdGgtaWNvbiIgdHlwZT0iYnV0dG9uIj4nK0soInBsYXkiLHtzaXplOjExLHN0cm9rZVdpZHRoOjEuOCxmaWxsOiJjdXJyZW50Q29sb3IifSkrJzxzcGFuPlx1OEJENVx1NTQyQzwvc3Bhbj48L2J1dHRvbj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJuYXRpdmUtaGFwdGljLXNlY3Rpb24iIGNsYXNzPSJzZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiBoaWRkZW4iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytLKCJ2aWJyYXRlIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+XHU4OUU2XHU2MTFGXHU1M0NEXHU5OTg4PC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1NjMwOVx1OTRBRVx1NjRDRFx1NEY1Q1x1NTQ4Q1x1NEVGQlx1NTJBMVx1NUI4Q1x1NjIxMFx1NjVGNlx1NjNEMFx1NEY5Qlx1NjMyRlx1NTJBOFx1NTNDRFx1OTk4ODwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93Ij48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiIGZvcj0iY2ZnLWhhcHRpYy1lbmFibGVkIj5cdTU0MkZcdTc1MjhcdTg5RTZcdTYxMUZcdTUzQ0RcdTk5ODg8L2xhYmVsPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgaWQ9ImNmZy1oYXB0aWMtZW5hYmxlZCIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0soImdsb2JlIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+XHU2RDRGXHU4OUM4XHU1NjY4XHU5MDFBXHU3N0U1PC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1Njc2NVx1ODFFQVx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1NEUyRFx1NUZDM1x1NzY4NFx1NUYzOVx1N0E5NzwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3ciPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU2Mzg4XHU2NzQzXHU3MkI2XHU2MDAxPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9Im5vdGlmaWNhdGlvbi1wZXJtaXNzaW9uLXN0YXR1cyI+LTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy11cGRhdGUtYWN0aW9ucyI+PGJ1dHRvbiBpZD0ibm90aWZpY2F0aW9uLXJlcXVlc3QtYnRuIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbSBoaWRkZW4iIHR5cGU9ImJ1dHRvbiI+XHU2Mzg4XHU2NzQzXHU5MDFBXHU3N0U1PC9idXR0b24+PGJ1dHRvbiBpZD0ibm90aWZpY2F0aW9uLXJlc2V0LWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTkxQ0RcdTY1QjBcdTYzODhcdTY3NDM8L2J1dHRvbj48YnV0dG9uIGlkPSJub3RpZmljYXRpb24tdGVzdC1idG4iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20iIHR5cGU9ImJ1dHRvbiI+XHU1M0QxXHU5MDAxXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1PC9idXR0b24+PGJ1dHRvbiBpZD0ibm90aWZpY2F0aW9uLXRlc3QtZGVsYXktYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20iIHR5cGU9ImJ1dHRvbiI+MTAgXHU3OUQyXHU1NDBFXHU1M0QxXHU5MDAxPC9idXR0b24+PC9kaXY+PHAgaWQ9Im5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsIiBpZD0ic2V0dGluZ3MtdGFiLWdlbmVyYWwiIHJvbGU9InRhYnBhbmVsIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1oZWFkZXIiPjxoMyBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtdGl0bGUiPlx1NTdGQVx1NjcyQ1x1OTE0RFx1N0Y2RTwvaDM+PHAgY2xhc3M9InNldHRpbmdzLXBhbmVsLWRlc2MiPlx1OTE0RFx1N0Y2RVx1NjcwRFx1NTJBMVx1NzZEMVx1NTQyQ1x1NTczMFx1NTc0MFx1MzAwMVx1OUVEOFx1OEJBNFx1NkEyMVx1NUYwRlx1MzAwMVx1OEJFRFx1OEEwMFx1NTQ4Q1x1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NVx1MzAwMjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZC1yb3ciPjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNmZy1ob3N0Ij5cdTc2RDFcdTU0MkNcdTU3MzBcdTU3NDAgKGhvc3QpPC9sYWJlbD48aW5wdXQgaWQ9ImNmZy1ob3N0IiB0eXBlPSJ0ZXh0IiBjbGFzcz0iZmllbGQtaW5wdXQiIHBsYWNlaG9sZGVyPSIxMjcuMC4wLjEiIC8+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2ZnLXBvcnQiPlx1N0FFRlx1NTNFMyAocG9ydCk8L2xhYmVsPjxpbnB1dCBpZD0iY2ZnLXBvcnQiIHR5cGU9Im51bWJlciIgY2xhc3M9ImZpZWxkLWlucHV0IiBwbGFjZWhvbGRlcj0iODQ0MyIgbWluPSIxIiBtYXg9IjY1NTM1IiAvPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48bGFiZWwgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSIgZm9yPSJjZmctaHR0cHMiPlx1NTQyRlx1NzUyOCBIVFRQUzwvbGFiZWw+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIj5cdTRGN0ZcdTc1MjhcdTgxRUFcdTdCN0VcdTU0MERcdThCQzFcdTRFNjZcdTUyQTBcdTVCQzZcdTZENEZcdTg5QzhcdTU2NjhcdTUyMzBcdTY3MERcdTUyQTFcdTc2ODRcdThGREVcdTYzQTVcdUZGMENob3N0IFx1NEUzQVx1OTc1RSAxMjcuMC4wLjEgXHU2NUY2XHU1RUZBXHU4QkFFXHU1RjAwXHU1NDJGXHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgaWQ9ImNmZy1odHRwcyIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZC1yb3ciPjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNmZy1tb2RlIj5cdTlFRDhcdThCQTRcdTYyNjdcdTg4NENcdTZBMjFcdTVGMEY8L2xhYmVsPjxzZWxlY3QgaWQ9ImNmZy1tb2RlIiBjbGFzcz0iZmllbGQtaW5wdXQiPjxvcHRpb24gdmFsdWU9ImRlZmF1bHQiPmRlZmF1bHQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJhc3Npc3QiPmFzc2lzdDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9ImFnZW50Ij5hZ2VudDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9ImFnZW50LW1heCI+YWdlbnQtbWF4PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iYXV0by1lZGl0Ij5hdXRvLWVkaXQ8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJmdWxsLWFjY2VzcyI+ZnVsbC1hY2Nlc3M8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJuYXRpdmUiPm5hdGl2ZTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9Im1hbmFnZWQiPm1hbmFnZWQ8L29wdGlvbj48L3NlbGVjdD48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjZmctbGFuZ3VhZ2UiPlx1NTZERVx1NTkwRFx1OEJFRFx1OEEwMDwvbGFiZWw+PHNlbGVjdCBpZD0iY2ZnLWxhbmd1YWdlIiBjbGFzcz0iZmllbGQtaW5wdXQiPjxvcHRpb24gdmFsdWU9IiI+XHU4MUVBXHU1MkE4XHVGRjA4XHU0RTBEXHU2MzA3XHU1QjlBXHVGRjA5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iXHU0RTJEXHU2NTg3Ij5cdTRFMkRcdTY1ODc8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJFbmdsaXNoIj5FbmdsaXNoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iXHU2NUU1XHU2NzJDXHU4QTlFIj5cdTY1RTVcdTY3MkNcdThBOUU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJcdUQ1NUNcdUFENkRcdUM1QjQiPlx1RDU1Q1x1QUQ2RFx1QzVCNDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9IkVzcGFceEYxb2wiPkVzcGFceEYxb2w8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJGcmFuXHhFN2FpcyI+RnJhblx4RTdhaXM8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJEZXV0c2NoIj5EZXV0c2NoPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iXHUwNDIwXHUwNDQzXHUwNDQxXHUwNDQxXHUwNDNBXHUwNDM4XHUwNDM5Ij5cdTA0MjBcdTA0NDNcdTA0NDFcdTA0NDFcdTA0M0FcdTA0MzhcdTA0Mzk8L29wdGlvbj48L3NlbGVjdD48L2Rpdj48L2Rpdj48cCBjbGFzcz0iZmllbGQtaGludCIgc3R5bGU9Im1hcmdpbi10b3A6LTRweDsiPlx1OEJCRVx1N0Y2RVx1NTZERVx1NTkwRFx1OEJFRFx1OEEwMFx1NTQwRVx1RkYwQ0NsYXVkZSBcdTVDMDZcdTVDM0RcdTkxQ0ZcdTRGN0ZcdTc1MjhcdTYzMDdcdTVCOUFcdThCRURcdThBMDBcdTU2REVcdTU5MERcdTMwMDI8L3A+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2ZnLXN0cnVjdHVyZWQtcnVubmVyIj5cdTdFRDNcdTY3ODRcdTUzMTZcdTRGMUFcdThCREQgUnVubmVyPC9sYWJlbD48c2VsZWN0IGlkPSJjZmctc3RydWN0dXJlZC1ydW5uZXIiIGNsYXNzPSJmaWVsZC1pbnB1dCI+PG9wdGlvbiB2YWx1ZT0ic2RrIj5TREtcdUZGMDhAYW50aHJvcGljLWFpL2NsYXVkZS1hZ2VudC1zZGtcdUZGMENcdTlFRDhcdThCQTRcdUZGMDk8L29wdGlvbj48b3B0aW9uIHZhbHVlPSJjbGkiPkNMSVx1RkYwOHNwYXduIGNsYXVkZSAtcFx1RkYwOTwvb3B0aW9uPjwvc2VsZWN0PjxwIGNsYXNzPSJmaWVsZC1oaW50IiBzdHlsZT0ibWFyZ2luLXRvcDo0cHg7Ij5TREsgXHU2QTIxXHU1RjBGXHU0RjdGXHU3NTI4XHU1Qjk4XHU2NUI5IEFnZW50IFNESyBcdTY2RkZcdTRFRTMgQ0xJIHN1YnByb2Nlc3NcdUZGMENcdTYzQTVcdTUzRTNcdTY2RjRcdTY1NzRcdTZEMDFcdUZGMENcdTUyOUZcdTgwRkRcdTdCNDlcdTRFRjdcdTMwMDJcdTRGRERcdTVCNThcdTU0MEVcdTVCRjlcdTY1QjBcdTVFRkFcdTRGMUFcdThCRERcdTdBQ0JcdTUzNzNcdTc1MUZcdTY1NDhcdTMwMDI8L3A+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXJvdyI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxsYWJlbCBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIiBmb3I9ImNmZy1pbmhlcml0LWVudiI+XHU3RUU3XHU2MjdGXHU3M0FGXHU1ODgzXHU1M0Q4XHU5MUNGPC9sYWJlbD48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiPlx1NTQyRlx1NTJBOCBQVFkgLyBcdTdFRDNcdTY3ODRcdTUzMTZcdTVCNTBcdThGREJcdTdBMEJcdTY1RjZcdUZGMENcdTYyOEFcdTVGNTNcdTUyNERcdTY3MERcdTUyQTFcdThGREJcdTdBMEJcdTc2ODRcdTczQUZcdTU4ODNcdTUzRDhcdTkxQ0ZcdTRGMjBcdTdFRDkgY2xhdWRlIC8gY29kZXhcdTMwMDJcdTUxNzNcdTk1RURcdTU0MEVcdTVCNTBcdThGREJcdTdBMEJcdTRFQzVcdTgzQjdcdTVGOTdcdTY3MDBcdTVDMEZcdTUzRUZcdTc1MjhcdTczQUZcdTU4ODNcdUZGMDhQQVRIL0hPTUUvU0hFTEwvTEFORy9URVJNIFx1N0I0OVx1RkYwOVx1RkYwQ1x1NTNFRlx1NzUyOFx1NEU4RVx1OTY5NFx1NzlCQiBBUEkga2V5IFx1N0I0OVx1NjU0Rlx1NjExRlx1NTFFRFx1NjM2RVx1MzAwMjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtYXNpZGUiPjxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0iY2ZnLXZpZXctZW52LWJ0biIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSIgdGl0bGU9Ilx1NjdFNVx1NzcwQlx1NUI5RVx1OTY0NVx1NEYxQVx1NkNFOFx1NTE2NVx1NTIzMFx1NUI1MFx1OEZEQlx1N0EwQlx1NzY4NFx1NzNBRlx1NTg4M1x1NTNEOFx1OTFDRiI+XHU2N0U1XHU3NzBCPC9idXR0b24+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCBpZD0iY2ZnLWluaGVyaXQtZW52IiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNmZy1kZWZhdWx0LW1vZGVsIj5cdTlFRDhcdThCQTRcdTZBMjFcdTU3OEI8L2xhYmVsPjxkaXYgY2xhc3M9InNldHRpbmdzLXJvdy13aXRoLWFjdGlvbiI+PHNlbGVjdCBpZD0iY2ZnLWRlZmF1bHQtbW9kZWwiIGNsYXNzPSJmaWVsZC1pbnB1dCBmaWVsZC1zZWxlY3QiPjxvcHRpb24gdmFsdWU9IiI+XHU4RERGXHU5NjhGIENsYXVkZSBDb2RlIFx1OUVEOFx1OEJBNDwvb3B0aW9uPjwvc2VsZWN0PjxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0iY2ZnLWRlZmF1bHQtbW9kZWwtcmVmcmVzaCIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSIgdGl0bGU9Ilx1NTIzN1x1NjVCMFx1NkEyMVx1NTc4Qlx1NTIxN1x1ODg2OCI+XHU1MjM3XHU2NUIwPC9idXR0b24+PC9kaXY+PHAgY2xhc3M9ImZpZWxkLWhpbnQiIGlkPSJjZmctZGVmYXVsdC1tb2RlbC12ZXJzaW9uIj5cdTY1QjBcdTVFRkFcdTRGMUFcdThCRERcdTY1RjZcdTlFRDhcdThCQTRcdTRGN0ZcdTc1MjhcdThCRTVcdTZBMjFcdTU3OEJcdUZGMUJcdThGRDBcdTg4NENcdTRFMkRcdTc2ODRcdTRGMUFcdThCRERcdTUzRUZcdTU3MjhcdThGOTNcdTUxNjVcdTY4NDZcdTUyMDdcdTYzNjJcdTMwMDI8L3A+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2ZnLWN3ZCI+XHU5RUQ4XHU4QkE0XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1PC9sYWJlbD48aW5wdXQgaWQ9ImNmZy1jd2QiIHR5cGU9InRleHQiIGNsYXNzPSJmaWVsZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ii9ob21lL3VzZXIiIC8+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0iY2ZnLXNoZWxsIj5TaGVsbDwvbGFiZWw+PGlucHV0IGlkPSJjZmctc2hlbGwiIHR5cGU9InRleHQiIGNsYXNzPSJmaWVsZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ii9iaW4vYmFzaCIgLz48L2Rpdj4nKyh0eXBlb2YgV2FuZE5hdGl2ZTwidSImJnR5cGVvZiBXYW5kTmF0aXZlLmdldEFwcEljb249PSJmdW5jdGlvbiI/JzxkaXYgY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLWJsb2NrIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrSygicGFsZXR0ZSIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPlx1NUU5NFx1NzUyOFx1NTZGRVx1NjgwNzwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTkwMDlcdTYyRTkgQXBwIFx1NTQyRlx1NTJBOFx1NTY2OFx1NTZGRVx1NjgwN1x1RkYwQ1x1OEZENFx1NTZERVx1Njg0Q1x1OTc2Mlx1NTQwRVx1NzUxRlx1NjU0ODwvcD48L2Rpdj48L2Rpdj48ZGl2IGlkPSJhcHAtaWNvbi1waWNrZXIiIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1waWNrZXIiPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tb3B0aW9uIiBkYXRhLWljb249InNob3J0aGFpciI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLXByZXZpZXciPicrRWkudXNlcisnPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1sYWJlbCI+XHU4RDVCXHU1MzVBXHU4NjRFXHU1OTlFPC9zcGFuPjwvYnV0dG9uPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tb3B0aW9uIiBkYXRhLWljb249ImdhcmZpZWxkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tcHJldmlldyI+JytFaS5hc3Npc3RhbnQrJzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tbGFiZWwiPlx1NTJFNFx1NTJCM1x1NTIxRFx1NEU4Qzwvc3Bhbj48L2J1dHRvbj48L2Rpdj48cCBpZD0iYXBwLWljb24tbWVzc2FnZSIgY2xhc3M9ImhpbnQgaGlkZGVuIj48L3A+PC9kaXY+JzoiIikrJzxkaXYgY2xhc3M9InNldHRpbmdzLWFjdGlvbnMgc2V0dGluZ3MtYWN0aW9ucy1zdGlja3kiPjxidXR0b24gaWQ9InNhdmUtY29uZmlnLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSBidG4tYmxvY2siPlx1NEZERFx1NUI1OFx1OTE0RFx1N0Y2RTwvYnV0dG9uPjwvZGl2PjxwIGlkPSJjb25maWctbWVzc2FnZSIgY2xhc3M9ImhpbnQgaGlkZGVuIHNldHRpbmdzLXN0YXR1cy1tZXNzYWdlIj48L3A+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwiIGlkPSJzZXR0aW5ncy10YWItc2VjdXJpdHkiIHJvbGU9InRhYnBhbmVsIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1oZWFkZXIiPjxoMyBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtdGl0bGUiPlx1NUI4OVx1NTE2ODwvaDM+PHAgY2xhc3M9InNldHRpbmdzLXBhbmVsLWRlc2MiPlx1N0JBMVx1NzQwNlx1NzY3Qlx1NUY1NVx1NUJDNlx1NzgwMVx1NEUwRSBTU0wgXHU4QkMxXHU0RTY2XHVGRjBDXHU2NTRGXHU2MTFGXHU1M0Q4XHU2NkY0XHU4QkY3XHU3ODZFXHU4QkE0XHU1NDBFXHU1MThEXHU0RkREXHU1QjU4XHUzMDAyPC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWNhcmQiPjxkaXYgY2xhc3M9InNldHRpbmdzLWNhcmQtaGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWNhcmQtaWNvbiI+XHV7MUY1MTJ9PC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLWNhcmQtaGVhZC10ZXh0Ij48aDMgY2xhc3M9InNldHRpbmdzLWNhcmQtdGl0bGUiPlx1NEZFRVx1NjUzOVx1NUJDNlx1NzgwMTwvaDM+PHAgY2xhc3M9InNldHRpbmdzLWNhcmQtZGVzYyI+XHU4MUYzXHU1QzExIDYgXHU0RTJBXHU1QjU3XHU3QjI2XHVGRjFCXHU0RkREXHU1QjU4XHU1NDBFXHU0RTBCXHU2QjIxXHU3NjdCXHU1RjU1XHU3NTFGXHU2NTQ4XHUzMDAyPC9wPjwvZGl2PjwvZGl2Pjxmb3JtIGlkPSJjaGFuZ2UtcGFzc3dvcmQtZm9ybSIgYXV0b2NvbXBsZXRlPSJvbiIgb25zdWJtaXQ9InJldHVybiBmYWxzZTsiPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VybmFtZSIgYXV0b2NvbXBsZXRlPSJ1c2VybmFtZSIgdmFsdWU9IndhbmQiIHRhYmluZGV4PSItMSIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi05OTk5cHg7d2lkdGg6MXB4O2hlaWdodDoxcHg7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmUiIHJlYWRvbmx5IC8+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiIGZvcj0ibmV3LXBhc3N3b3JkIj5cdTY1QjBcdTVCQzZcdTc4MDE8L2xhYmVsPjxpbnB1dCBpZD0ibmV3LXBhc3N3b3JkIiB0eXBlPSJwYXNzd29yZCIgY2xhc3M9ImZpZWxkLWlucHV0IiBwbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2NUIwXHU1QkM2XHU3ODAxXHVGRjA4XHU4MUYzXHU1QzExIDYgXHU0RTJBXHU1QjU3XHU3QjI2XHVGRjA5IiBhdXRvY29tcGxldGU9Im5ldy1wYXNzd29yZCIgLz48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjb25maXJtLXBhc3N3b3JkIj5cdTc4NkVcdThCQTRcdTVCQzZcdTc4MDE8L2xhYmVsPjxpbnB1dCBpZD0iY29uZmlybS1wYXNzd29yZCIgdHlwZT0icGFzc3dvcmQiIGNsYXNzPSJmaWVsZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ilx1NTE4RFx1NkIyMVx1OEY5M1x1NTE2NVx1NjVCMFx1NUJDNlx1NzgwMSIgYXV0b2NvbXBsZXRlPSJuZXctcGFzc3dvcmQiIC8+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY2FyZC1hY3Rpb25zIj48YnV0dG9uIGlkPSJzYXZlLXBhc3N3b3JkLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSIgdHlwZT0ic3VibWl0Ij5cdTRGRERcdTVCNThcdTVCQzZcdTc4MDE8L2J1dHRvbj48L2Rpdj48cCBpZD0ic2V0dGluZ3MtZXJyb3IiIGNsYXNzPSJlcnJvci1tZXNzYWdlIGhpZGRlbiI+PC9wPjxwIGlkPSJzZXR0aW5ncy1zdWNjZXNzIiBjbGFzcz0iaGludCBzZXR0aW5ncy1zdWNjZXNzLW1lc3NhZ2UgaGlkZGVuIj48L3A+PC9mb3JtPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWNhcmQiPjxkaXYgY2xhc3M9InNldHRpbmdzLWNhcmQtaGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWNhcmQtaWNvbiI+XHV7MUY1MTB9PC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLWNhcmQtaGVhZC10ZXh0Ij48aDMgY2xhc3M9InNldHRpbmdzLWNhcmQtdGl0bGUiPlNTTCBcdThCQzFcdTRFNjY8L2gzPjxwIGNsYXNzPSJzZXR0aW5ncy1jYXJkLWRlc2MiIGlkPSJjZXJ0LXN0YXR1cyI+XHU1MkEwXHU4RjdEXHU0RTJELi4uPC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNlcnQta2V5LWZpbGUiPlx1NzlDMVx1OTRBNVx1NjU4N1x1NEVGNiAoLmtleSk8L2xhYmVsPjxkaXYgY2xhc3M9ImZpbGUtcGlja2VyIj48aW5wdXQgaWQ9ImNlcnQta2V5LWZpbGUiIHR5cGU9ImZpbGUiIGNsYXNzPSJmaWxlLXBpY2tlci1pbnB1dCIgYWNjZXB0PSIua2V5LC5wZW0iIC8+PGxhYmVsIGZvcj0iY2VydC1rZXktZmlsZSIgY2xhc3M9ImZpbGUtcGlja2VyLXRyaWdnZXIiPjxzdmcgY2xhc3M9ImZpbGUtcGlja2VyLWljb24iIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTIxLjQ0IDExLjA1bC05LjE5IDkuMTlhNiA2IDAgMCAxLTguNDktOC40OWw5LjE5LTkuMTlhNCA0IDAgMCAxIDUuNjYgNS42NmwtOS4yIDkuMTlhMiAyIDAgMCAxLTIuODMtMi44M2w4LjQ5LTguNDgiPjwvcGF0aD48L3N2Zz48c3BhbiBjbGFzcz0iZmlsZS1waWNrZXItbGFiZWwiPlx1OTAwOVx1NjJFOVx1NzlDMVx1OTRBNTwvc3Bhbj48L2xhYmVsPjxzcGFuIGNsYXNzPSJmaWxlLXBpY2tlci1uYW1lIiBkYXRhLWRlZmF1bHQ9Ilx1NjcyQVx1OTAwOVx1NjJFOVx1NjU4N1x1NEVGNiI+XHU2NzJBXHU5MDA5XHU2MkU5XHU2NTg3XHU0RUY2PC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImNlcnQtY2VydC1maWxlIj5cdThCQzFcdTRFNjZcdTY1ODdcdTRFRjYgKC5jcnQvLnBlbSk8L2xhYmVsPjxkaXYgY2xhc3M9ImZpbGUtcGlja2VyIj48aW5wdXQgaWQ9ImNlcnQtY2VydC1maWxlIiB0eXBlPSJmaWxlIiBjbGFzcz0iZmlsZS1waWNrZXItaW5wdXQiIGFjY2VwdD0iLmNydCwucGVtLC5jZXJ0IiAvPjxsYWJlbCBmb3I9ImNlcnQtY2VydC1maWxlIiBjbGFzcz0iZmlsZS1waWNrZXItdHJpZ2dlciI+PHN2ZyBjbGFzcz0iZmlsZS1waWNrZXItaWNvbiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMTQgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjh6Ij48L3BhdGg+PHBvbHlsaW5lIHBvaW50cz0iMTQgMiAxNCA4IDIwIDgiPjwvcG9seWxpbmU+PC9zdmc+PHNwYW4gY2xhc3M9ImZpbGUtcGlja2VyLWxhYmVsIj5cdTkwMDlcdTYyRTlcdThCQzFcdTRFNjY8L3NwYW4+PC9sYWJlbD48c3BhbiBjbGFzcz0iZmlsZS1waWNrZXItbmFtZSIgZGF0YS1kZWZhdWx0PSJcdTY3MkFcdTkwMDlcdTYyRTlcdTY1ODdcdTRFRjYiPlx1NjcyQVx1OTAwOVx1NjJFOVx1NjU4N1x1NEVGNjwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jYXJkLWFjdGlvbnMiPjxidXR0b24gaWQ9InVwbG9hZC1jZXJ0LWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSI+XHU0RTBBXHU0RjIwXHU4QkMxXHU0RTY2PC9idXR0b24+PC9kaXY+PHAgaWQ9ImNlcnQtbWVzc2FnZSIgY2xhc3M9ImhpbnQgaGlkZGVuIj48L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtcGFuZWwiIGlkPSJzZXR0aW5ncy10YWItcHJlc2V0cyIgcm9sZT0idGFicGFuZWwiPjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsLWhlYWRlciI+PGgzIGNsYXNzPSJzZXR0aW5ncy1wYW5lbC10aXRsZSI+XHU1NDdEXHU0RUU0XHU5ODg0XHU4QkJFPC9oMz48cCBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtZGVzYyI+XHU1RjUzXHU1MjREXHU1NDdEXHU0RUU0XHU5ODg0XHU4QkJFXHU0RUNFIGNvbmZpZy5qc29uIFx1OEJGQlx1NTNENlx1RkYwQ1x1NTNFRlx1NTcyOFx1OEZEOVx1OTFDQ1x1NUZFQlx1OTAxRlx1NjdFNVx1NzcwQlx1NURGMlx1NjcwOVx1OTE0RFx1N0Y2RVx1MzAwMjwvcD48L2Rpdj48ZGl2IGlkPSJwcmVzZXRzLWxpc3QiIGNsYXNzPSJwcmVzZXRzLWxpc3QiPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsIiBpZD0ic2V0dGluZ3MtdGFiLWRpc3BsYXkiIHJvbGU9InRhYnBhbmVsIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1oZWFkZXIiPjxoMyBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtdGl0bGUiPlx1NjYzRVx1NzkzQTwvaDM+PHAgY2xhc3M9InNldHRpbmdzLXBhbmVsLWRlc2MiPlx1NjNBN1x1NTIzNlx1ODA0QVx1NTkyOVx1ODlDNlx1NTZGRVx1OTFDQ1x1NEUwRFx1NTQwQ1x1NTM2MVx1NzI0N1x1N0M3Qlx1NTc4Qlx1NzY4NFx1OUVEOFx1OEJBNFx1NUM1NVx1NUYwMFx1NzJCNlx1NjAwMVx1MzAwMjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXRpdGxlIj5cdTUzNjFcdTcyNDdcdTlFRDhcdThCQTRcdTVDNTVcdTVGMDBcdTcyQjZcdTYwMDE8L2Rpdj48cCBjbGFzcz0iaGludCBzZXR0aW5ncy1pbmxpbmUtaGludCI+XHU4QkJFXHU3RjZFXHU3RUQzXHU2Nzg0XHU1MzE2XHU4MDRBXHU1OTI5XHU4OUM2XHU1NkZFXHU0RTJEXHU1NDA0XHU3QzdCXHU1MzYxXHU3MjQ3XHU3Njg0XHU5RUQ4XHU4QkE0XHU1QzU1XHU1RjAwL1x1NjI5OFx1NTNFMFx1NzJCNlx1NjAwMVx1MzAwMlx1NjI0Qlx1NTJBOFx1NjRDRFx1NEY1Q1x1NzY4NFx1NUM1NVx1NUYwMFx1NzJCNlx1NjAwMVx1NEYxOFx1NTE0OFx1NEU4RVx1NkI2NFx1OUVEOFx1OEJBNFx1OEJCRVx1N0Y2RVx1MzAwMjwvcD48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1saXN0Ij48bGFiZWwgY2xhc3M9InN3aXRjaC1jYXJkIiBmb3I9ImNmZy1jYXJkLWVkaXQiPjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWhlYWRlciI+PHNwYW4gY2xhc3M9InN3aXRjaC1jYXJkLXRpdGxlIj5cdTdGMTZcdThGOTFcdTUzNjFcdTcyNDcgKEVkaXQvV3JpdGUpPC9zcGFuPjxpbnB1dCBpZD0iY2ZnLWNhcmQtZWRpdCIgdHlwZT0iY2hlY2tib3giIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIiAvPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtZGVzYyI+XHU2NTg3XHU0RUY2XHU3RjE2XHU4RjkxXHU1NDhDXHU1MTk5XHU1MTY1XHU2NENEXHU0RjVDXHU3Njg0IGRpZmYgXHU4OUM2XHU1NkZFPC9kaXY+PC9sYWJlbD48bGFiZWwgY2xhc3M9InN3aXRjaC1jYXJkIiBmb3I9ImNmZy1jYXJkLWlubGluZSI+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtaGVhZGVyIj48c3BhbiBjbGFzcz0ic3dpdGNoLWNhcmQtdGl0bGUiPlx1NTE4NVx1ODA1NFx1NURFNVx1NTE3NyAoUmVhZC9HbG9iL0dyZXApPC9zcGFuPjxpbnB1dCBpZD0iY2ZnLWNhcmQtaW5saW5lIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1kZXNjIj5cdTY1ODdcdTRFRjZcdThCRkJcdTUzRDZcdTMwMDFcdTY0MUNcdTdEMjJcdTdCNDlcdTVERTVcdTUxNzdcdTc2ODRcdTdFRDNcdTY3OUM8L2Rpdj48L2xhYmVsPjxsYWJlbCBjbGFzcz0ic3dpdGNoLWNhcmQiIGZvcj0iY2ZnLWNhcmQtdGVybWluYWwiPjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWhlYWRlciI+PHNwYW4gY2xhc3M9InN3aXRjaC1jYXJkLXRpdGxlIj5cdTdFQzhcdTdBRUZcdThGOTNcdTUxRkEgKEJhc2gpPC9zcGFuPjxpbnB1dCBpZD0iY2ZnLWNhcmQtdGVybWluYWwiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWRlc2MiPlx1NTQ3RFx1NEVFNFx1ODg0Q1x1NjI2N1x1ODg0Q1x1N0VEM1x1Njc5QzwvZGl2PjwvbGFiZWw+PGxhYmVsIGNsYXNzPSJzd2l0Y2gtY2FyZCIgZm9yPSJjZmctY2FyZC10aGlua2luZyI+PGRpdiBjbGFzcz0ic3dpdGNoLWNhcmQtaGVhZGVyIj48c3BhbiBjbGFzcz0ic3dpdGNoLWNhcmQtdGl0bGUiPlx1NjAxRFx1ODAwM1x1OEZDN1x1N0EwQiAoVGhpbmtpbmcpPC9zcGFuPjxpbnB1dCBpZD0iY2ZnLWNhcmQtdGhpbmtpbmciIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InN3aXRjaC1jYXJkLWRlc2MiPkNsYXVkZSBcdTc2ODRcdTYwMURcdTgwMDNcdThGQzdcdTdBMEJcdTU3NTc8L2Rpdj48L2xhYmVsPjxsYWJlbCBjbGFzcz0ic3dpdGNoLWNhcmQiIGZvcj0iY2ZnLWNhcmQtdG9vbGdyb3VwIj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1oZWFkZXIiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtY2FyZC10aXRsZSI+XHU1REU1XHU1MTc3XHU3RUM0PC9zcGFuPjxpbnB1dCBpZD0iY2ZnLWNhcmQtdG9vbGdyb3VwIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzd2l0Y2gtY2FyZC1kZXNjIj5cdThGREVcdTdFRURcdTU0MENcdTdDN0JcdTVERTVcdTUxNzdcdThDMDNcdTc1MjhcdTc2ODRcdTYyOThcdTUzRTBcdTdFQzQ8L2Rpdj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWFjdGlvbnMgc2V0dGluZ3MtYWN0aW9ucy1zdGlja3kiPjxidXR0b24gaWQ9InNhdmUtZGlzcGxheS1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrIj5cdTRGRERcdTVCNThcdTY2M0VcdTc5M0FcdThCQkVcdTdGNkU8L2J1dHRvbj48L2Rpdj48cCBpZD0iZGlzcGxheS1tZXNzYWdlIiBjbGFzcz0iaGludCBoaWRkZW4gc2V0dGluZ3Mtc3RhdHVzLW1lc3NhZ2UiPjwvcD48L2Rpdj48L2Rpdj48L2Rpdj48L3NlY3Rpb24+J31mdW5jdGlvbiBxbShlKXt2YXIgdD1ldCgpO3JldHVybiBlLnNlbGVjdGVkSWQ/IiI6JzxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItY29tcGFjdCIgaWQ9ImZvbGRlci1waWNrZXItY29udGFpbmVyIj48ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWNvbXBhY3Qtcm93Ij48c3BhbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1jb21wYWN0LWljb24iPicrSygiZm9sZGVyIix7c2l6ZToxMyxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iZm9sZGVyLXBpY2tlci1pbnB1dCIgY2xhc3M9ImZvbGRlci1waWNrZXItY29tcGFjdC1pbnB1dCIgdmFsdWU9IicrcCh0KSsnIiBwbGFjZWhvbGRlcj0iXHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1IiBhdXRvY29tcGxldGU9Im9mZiIgLz48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgaWQ9ImZvbGRlci1waWNrZXItdG9nZ2xlIiBjbGFzcz0iZm9sZGVyLXBpY2tlci10b2dnbGUiIHRpdGxlPSJcdTkwMDlcdTYyRTlcdTc2RUVcdTVGNTUiIGFyaWEtbGFiZWw9Ilx1OTAwOVx1NjJFOVx1NzZFRVx1NUY1NSI+JytLKCJjaGV2cm9uRG93biIse3NpemU6MTEsc3Ryb2tlV2lkdGg6Mn0pKyc8L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJmb2xkZXItcGlja2VyLWRyb3Bkb3duIiBjbGFzcz0iZm9sZGVyLXBpY2tlci1kcm9wZG93biBoaWRkZW4iPjxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stcm93Ij48YnV0dG9uIGNsYXNzPSJmb2xkZXItcGlja2VyLXF1aWNrLWJ0biIgZGF0YS1wYXRoPSIvdG1wIj5cdTRFMzRcdTY1RjY8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJmb2xkZXItcGlja2VyLXF1aWNrLWJ0biIgZGF0YS1wYXRoPSIvIj5cdTY4MzlcdTc2RUVcdTVGNTU8L2J1dHRvbj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJmb2xkZXItcGlja2VyLXZhbGlkYXRpb24iIGNsYXNzPSJmb2xkZXItcGlja2VyLXZhbGlkYXRpb24iPjwvZGl2PjwvZGl2Pid9ZnVuY3Rpb24gT20oZSl7dmFyIHQ9ZXQoKSxyPXQ7aWYoZS5zZWxlY3RlZElkKXt2YXIgaT1lLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odSl7cmV0dXJuIHUuaWQ9PT1lLnNlbGVjdGVkSWR9KTtyPWkmJmkuY3dkP2kuY3dkOnR9dmFyIGE9cjtyZXR1cm4gYS5sZW5ndGg+MjgmJihhPSIuLi4iK2Euc2xpY2UoLTI1KSksJzxkaXYgY2xhc3M9IndvcmtpbmctZGlyLWluZGljYXRvciIgaWQ9IndvcmtpbmctZGlyLWluZGljYXRvciIgdGl0bGU9IicrcChyKSsnIiBkYXRhLXBhdGg9IicrcChyKSsnIj48c3BhbiBjbGFzcz0id29ya2luZy1kaXItaW5kaWNhdG9yLWljb24iPicrSygiZm9sZGVyIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ3b3JraW5nLWRpci1pbmRpY2F0b3ItcGF0aCI+JytwKGEpKyI8L3NwYW4+PC9kaXY+In1mdW5jdGlvbiBIdShlKXtpZighZSlyZXR1cm4iIjt2YXIgdD1EYXRlLm5vdygpLHI9bmV3IERhdGUoZSkuZ2V0VGltZSgpLGk9TWF0aC5tYXgoMCx0LXIpLGE9TWF0aC5mbG9vcihpLzFlMyk7aWYoYTw2MClyZXR1cm4iXHU1MjFBXHU1MjFBIjt2YXIgdT1NYXRoLmZsb29yKGEvNjApO2lmKHU8NjApcmV0dXJuIHUrIlx1NTIwNlx1OTQ5Rlx1NTI0RCI7dmFyIHM9TWF0aC5mbG9vcih1LzYwKTtpZihzPDI0KXJldHVybiBzKyJcdTVDMEZcdTY1RjZcdTUyNEQiO3ZhciBvPU1hdGguZmxvb3Iocy8yNCk7cmV0dXJuIG88MzA/bysiXHU1OTI5XHU1MjREIjpNYXRoLmZsb29yKG8vMzApKyJcdTRFMkFcdTY3MDhcdTUyNEQifWZ1bmN0aW9uIF91KGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PURhdGUubm93KCkscj1uZXcgRGF0ZShlKS5nZXRUaW1lKCksaT1NYXRoLm1heCgwLHQtciksYT1NYXRoLmZsb29yKGkvMWUzKSx1PU1hdGguZmxvb3IoYS82MCkscz1NYXRoLmZsb29yKHUvNjApO3JldHVybiBzPjA/cysiaCIrKHUlNjA+MD91JTYwKyJtIjoiIik6dT4wP3UrIm0iOmErInMifWZ1bmN0aW9uIGxyKGUpe2lmKCFlKXJldHVybiIiO2lmKGUuYXJjaGl2ZWQpcmV0dXJuIlx1NURGMlx1NUY1Mlx1Njg2MyI7aWYoZS5wZXJtaXNzaW9uQmxvY2tlZClyZXR1cm4iXHU3QjQ5XHU1Rjg1XHU2Mzg4XHU2NzQzIjtpZih1ZShlKSYmZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0KXJldHVybiJcdTYwMURcdTgwMDNcdTRFMkQiO3ZhciB0PXtpZGxlOiJcdTdBN0FcdTk1RjIiLHN0b3BwZWQ6Ilx1NURGMlx1NTA1Q1x1NkI2MiIscnVubmluZzoiXHU4RkQwXHU4ODRDXHU0RTJEIixleGl0ZWQ6Ilx1NURGMlx1OTAwMFx1NTFGQSIsZmFpbGVkOiJcdTVERjJcdTU5MzFcdThEMjUifTtyZXR1cm4gdFtlLnN0YXR1c118fGUuc3RhdHVzfWZ1bmN0aW9uIE51KGUpe3JldHVybiBlP2UuYXJjaGl2ZWQ/ImFyY2hpdmVkIjplLnBlcm1pc3Npb25CbG9ja2VkPyJwZXJtaXNzaW9uLWJsb2NrZWQiOnVlKGUpJiZlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQ/InJ1bm5pbmciOmUuc3RhdHVzfHwiIjoiIn1mdW5jdGlvbiBFYyhlKXtyZXR1cm4gZT9lLnBlcm1pc3Npb25CbG9ja2VkPyJcdTdCNDlcdTVGODVcdTRGNjBcdTc2ODRcdTYzODhcdTY3NDMiOmUuc3RhdHVzIT09InJ1bm5pbmciPyIiOmUuaWQ9PT1uLnNlbGVjdGVkSWQmJm4uY3VycmVudFRhc2smJm4uY3VycmVudFRhc2sudGl0bGU/bi5jdXJyZW50VGFzay50aXRsZTplLmN1cnJlbnRUYXNrVGl0bGU/ZS5jdXJyZW50VGFza1RpdGxlOiIiOiIifWZ1bmN0aW9uIEZjKGUpe3ZhciB0PWUmJmUubWVzc2FnZXM7aWYoIXR8fHQubGVuZ3RoPT09MClyZXR1cm4iIjtmb3IodmFyIHI9dC5sZW5ndGgtMTtyPj0wO3ItLSl7dmFyIGk9dFtyXTtpZighKCFpfHxpLnJvbGUhPT0idXNlciIpKXt2YXIgYT1pLmNvbnRlbnQ7aWYodHlwZW9mIGE9PSJzdHJpbmciKXt2YXIgdT1hLnRyaW0oKTtpZih1KXJldHVybiB1O2NvbnRpbnVlfWlmKEFycmF5LmlzQXJyYXkoYSkpZm9yKHZhciBzPTA7czxhLmxlbmd0aDtzKyspe3ZhciBvPWFbc107aWYoISghb3x8by50eXBlIT09InRleHQifHwhby50ZXh0KSYmIW8uX19xdWV1ZWQpe3ZhciBsPVN0cmluZyhvLnRleHQpLnRyaW0oKTtpZihsKXJldHVybiBsfX19fXJldHVybiIifWZ1bmN0aW9uIHdjKGUpe3ZhciB0PWUmJmUubWVzc2FnZXM7aWYoIXR8fHQubGVuZ3RoPT09MClyZXR1cm4iIjtmb3IodmFyIHI9dC5sZW5ndGgtMTtyPj0wO3ItLSl7dmFyIGk9dFtyXTtpZihpLnJvbGU9PT0iYXNzaXN0YW50Iil7Zm9yKHZhciBhPWkuY29udGVudHx8W10sdT0wO3U8YS5sZW5ndGg7dSsrKWlmKGFbdV0udHlwZT09PSJ0ZXh0IiYmYVt1XS50ZXh0JiZhW3VdLnRleHQudHJpbSgpKXt2YXIgcz1hW3VdLnRleHQudHJpbSgpO3M9cy5yZXBsYWNlKC9eIytccysvZ20sIiIpLnJlcGxhY2UoL1wqXCovZywiIikucmVwbGFjZSgvYC9nLCIiKTt2YXIgbz1zLnNwbGl0KGAKYClbMF0udHJpbSgpO3JldHVybiBvLnNsaWNlKDAsMTAwKX19fXJldHVybiIifWZ1bmN0aW9uIFVpKGUsdCl7dmFyIHI9ZS5pZD09PW4uc2VsZWN0ZWRJZD8iIGFjdGl2ZSI6IiIsaT1uLnNlc3Npb25zTWFuYWdlTW9kZSYmbi5zZWxlY3RlZFNlc3Npb25JZHNbZS5pZF0/IiBzZWxlY3RlZCI6IiIsYT1scihlKSx1PU51KGUpLHM9IiIsbz1KdSgic2Vzc2lvbnMiLGUuaWQsIlx1OTAwOVx1NjJFOVx1NEYxQVx1OEJERCAiK2UuY29tbWFuZCk7aWYoKGUucHJvdmlkZXI9PT0iY2xhdWRlInx8ZS5wcm92aWRlcj09PSJjb2RleCIpJiZlLmNsYXVkZVNlc3Npb25JZCYmZS5zdGF0dXMhPT0icnVubmluZyImJiFuLnNlc3Npb25zTWFuYWdlTW9kZSYmIXVlKGUpKXt2YXIgbD1lLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHU2MDYyXHU1OTBEIENvZGV4IFx1NEYxQVx1OEJERCI6Ilx1NjA2Mlx1NTkwRCBDbGF1ZGUgXHU0RjFBXHU4QkREIjtzPSc8YnV0dG9uIGNsYXNzPSJzZXNzaW9uLWFjdGlvbi1idG4iIGRhdGEtYWN0aW9uPSJyZXN1bWUiIGRhdGEtc2Vzc2lvbi1pZD0iJytlLmlkKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iJytsKyciIHRpdGxlPSInK2wrJyI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMSA0djZoNiIvPjxwYXRoIGQ9Ik0zLjUxIDE1YTkgOSAwIDEwNS42NC0xMS4zNkwzIDEwIi8+PC9zdmc+PC9idXR0b24+J312YXIgYz0hbi5zZXNzaW9uc01hbmFnZU1vZGUmJmUud29ya3RyZWVFbmFibGVkJiZlLndvcmt0cmVlJiZlLndvcmt0cmVlLmJyYW5jaCYmZS53b3JrdHJlZS5wYXRoLGY9ZS53b3JrdHJlZU1lcmdlU3RhdHVzPT09Im1lcmdlZCImJmUud29ya3RyZWVNZXJnZUluZm8mJmUud29ya3RyZWVNZXJnZUluZm8uY2xlYW51cERvbmU9PT0hMSxkPWUuc3RhdHVzPT09InJ1bm5pbmcifHxlLndvcmt0cmVlTWVyZ2VTdGF0dXM9PT0ibWVyZ2luZyIsdj1mPyJcdTkxQ0RcdThCRDVcdTZFMDVcdTc0MDYgd29ya3RyZWUiOiJcdTU0MDhcdTVFNzZcdTUyMzBcdTRFM0JcdTUyMDZcdTY1MkYiLGc9YyYmZS53b3JrdHJlZU1lcmdlU3RhdHVzIT09Im1lcmdlZCI/JzxidXR0b24gY2xhc3M9InNlc3Npb24tYWN0aW9uLWJ0biBtZXJnZS1idG4iIGRhdGEtYWN0aW9uPSJ3b3JrdHJlZS1tZXJnZSIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSInK3AodikrJyIgdGl0bGU9IicrcCh2KSsnIicrKGQ/IiBkaXNhYmxlZCI6IiIpKyc+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNNyA3aDEwIi8+PHBhdGggZD0iTTcgMTJoMTAiLz48cGF0aCBkPSJNNyAxN2gxMCIvPjxwYXRoIGQ9Ik01IDdsLTIgMiAyIDIiLz48cGF0aCBkPSJNMTkgMTVsMiAyLTIgMiIvPjwvc3ZnPjwvYnV0dG9uPic6Zj8nPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIG1lcmdlLWJ0biIgZGF0YS1hY3Rpb249Indvcmt0cmVlLWNsZWFudXAiIGRhdGEtc2Vzc2lvbi1pZD0iJytlLmlkKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU5MUNEXHU4QkQ1XHU2RTA1XHU3NDA2IHdvcmt0cmVlIiB0aXRsZT0iXHU5MUNEXHU4QkQ1XHU2RTA1XHU3NDA2IHdvcmt0cmVlIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0zIDZoMTgiLz48cGF0aCBkPSJNOCA2VjRhMiAyIDAgMDEyLTJoNGEyIDIgMCAwMTIgMnYyIi8+PHBhdGggZD0iTTE5IDZsLTEgMTRhMiAyIDAgMDEtMiAySDhhMiAyIDAgMDEtMi0yTDUgNiIvPjwvc3ZnPjwvYnV0dG9uPic6IiIsaD1uLnNlc3Npb25zTWFuYWdlTW9kZT8iIjonPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIGRlbGV0ZS1idG4iIGRhdGEtYWN0aW9uPSJkZWxldGUtc2Vzc2lvbiIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUyMjBcdTk2NjRcdTRGMUFcdThCREQiIHRpdGxlPSJcdTUyMjBcdTk2NjRcdTZCNjRcdTRGMUFcdThCREQiPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTMgNmgxOCIvPjxwYXRoIGQ9Ik04IDZWNGEyIDIgMCAwMTItMmg0YTIgMiAwIDAxMiAydjIiLz48cGF0aCBkPSJNMTkgNmwtMSAxNGEyIDIgMCAwMS0yIDJIOGEyIDIgMCAwMS0yLTJMNSA2Ii8+PC9zdmc+PC9idXR0b24+JyxtPSc8c3BhbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb25zIj4nK3MrZytoKyI8L3NwYW4+IixiPWUudGl0bGV8fGUuc3VtbWFyeT8nPGRpdiBjbGFzcz0ic2Vzc2lvbi10aXRsZSI+JytwKGUudGl0bGV8fGUuc3VtbWFyeSkrIjwvZGl2PiI6JzxkaXYgY2xhc3M9InNlc3Npb24tY29tbWFuZCI+JytwKGUucmVzdW1lZEZyb21TZXNzaW9uSWQ/ZS5jb21tYW5kLnJlcGxhY2UoL1xzKy0tcmVzdW1lXHMrXFMrLywiIikucmVwbGFjZSgvXHMrcmVzdW1lXHMrWzAtOWEtZi1dKy8sIiIpOmUuY29tbWFuZCkrIjwvZGl2PiIsRj1FYyhlKSx3PSIiO2Uuc3RhdHVzPT09InJ1bm5pbmciJiZGJiYodz0nPGRpdiBjbGFzcz0ic2Vzc2lvbi1hY3Rpdml0eSI+JytwKEYpKyI8L2Rpdj4iKTt2YXIgRT1lLmRlc2NyaXB0aW9uPyc8ZGl2IGNsYXNzPSJzZXNzaW9uLWRlc2NyaXB0aW9uIj4nK3AoZS5kZXNjcmlwdGlvbikrIjwvZGl2PiI6IiIsQT0iIjtlLnN0YXR1cz09PSJydW5uaW5nIj9BPSc8c3BhbiBjbGFzcz0ic2Vzc2lvbi10aW1lIiB0aXRsZT0iXHU1REYyXHU4RkQwXHU4ODRDICcrcChfdShlLnN0YXJ0ZWRBdCkpKyciPicrcChfdShlLnN0YXJ0ZWRBdCkpKyI8L3NwYW4+IjplLmVuZGVkQXQ/QT0nPHNwYW4gY2xhc3M9InNlc3Npb24tdGltZSIgdGl0bGU9IicrcChuZXcgRGF0ZShlLmVuZGVkQXQpLnRvTG9jYWxlU3RyaW5nKCkpKyciPicrcChIdShlLmVuZGVkQXQpKSsiPC9zcGFuPiI6ZS5zdGFydGVkQXQmJihBPSc8c3BhbiBjbGFzcz0ic2Vzc2lvbi10aW1lIiB0aXRsZT0iJytwKG5ldyBEYXRlKGUuc3RhcnRlZEF0KS50b0xvY2FsZVN0cmluZygpKSsnIj4nK3AoSHUoZS5zdGFydGVkQXQpKSsiPC9zcGFuPiIpO3ZhciB4PWp1KGUpLEk9ZS5hdXRvUmVjb3ZlcmVkPyc8c3BhbiBjbGFzcz0ic2Vzc2lvbi1yZWNvdmVyeS1oaW50Ij5cdTgxRUFcdTUyQThcdTYwNjJcdTU5MEQ8L3NwYW4+JzoiIjtyZXR1cm4nPGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtJytyK2krJyIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtLWNvbnRlbnQiPjxkaXYgY2xhc3M9InNlc3Npb24taXRlbS1yb3ciPicrbysnPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYWluIj48ZGl2IGNsYXNzPSJzZXNzaW9uLXRpdGxlLXJvdyI+JytiK0ErIjwvZGl2PiIrRSt3Kyc8ZGl2IGNsYXNzPSJzZXNzaW9uLW1ldGEiPjxzcGFuIGNsYXNzPSJzZXNzaW9uLXN0YXR1cyAnK3UrJyI+JytwKGEpKyI8L3NwYW4+Iit4K0krIjwvZGl2PjwvZGl2PiIrbSsiPC9kaXY+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBDYyhlKXtpZighZXx8IWUud29ya3RyZWVNZXJnZVN0YXR1cylyZXR1cm4iIjt2YXIgdD17cmVhZHk6Ilx1NTNFRlx1NTQwOFx1NUU3NiIsY2hlY2tpbmc6Ilx1NjhDMFx1NjdFNVx1NEUyRCIsbWVyZ2luZzoiXHU1NDA4XHU1RTc2XHU0RTJEIixtZXJnZWQ6ZS53b3JrdHJlZU1lcmdlSW5mbyYmZS53b3JrdHJlZU1lcmdlSW5mby5jbGVhbnVwRG9uZT09PSExPyJcdTVERjJcdTU0MDhcdTVFNzZcdTVGODVcdTZFMDVcdTc0MDYiOiJcdTVERjJcdTU0MDhcdTVFNzYiLGZhaWxlZDoiXHU1NDA4XHU1RTc2XHU1OTMxXHU4RDI1In07cmV0dXJuIHRbZS53b3JrdHJlZU1lcmdlU3RhdHVzXXx8IiJ9ZnVuY3Rpb24gQmMoZSl7dmFyIHQ9Q2MoZSk7cmV0dXJuIHQ/JzxzcGFuIGNsYXNzPSJzZXNzaW9uLWtpbmQtYmFkZ2Ugd29ya3RyZWUtbWVyZ2UgJytwKGUud29ya3RyZWVNZXJnZVN0YXR1c3x8IiIpKyciPicrcCh0KSsiPC9zcGFuPiI6IiJ9ZnVuY3Rpb24ganUoZSl7aWYoIWV8fCFlLndvcmt0cmVlRW5hYmxlZClyZXR1cm4iIjt2YXIgdD1bXTtlLndvcmt0cmVlJiZlLndvcmt0cmVlLmJyYW5jaCYmdC5wdXNoKCJXb3JrdHJlZTogIitlLndvcmt0cmVlLmJyYW5jaCksZS53b3JrdHJlZSYmZS53b3JrdHJlZS5wYXRoJiZ0LnB1c2goIlBhdGg6ICIrZS53b3JrdHJlZS5wYXRoKTt2YXIgcj10Lmxlbmd0aD4wPycgdGl0bGU9IicrcCh0LmpvaW4oYApgKSkrJyInOiIiO3JldHVybic8c3BhbiBjbGFzcz0ic2Vzc2lvbi1raW5kLWJhZGdlIHdvcmt0cmVlIicrcisiPldvcmt0cmVlPC9zcGFuPiIrQmMoZSl9ZnVuY3Rpb24gUG0oZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9dWUoZSk/JzxzcGFuIGNsYXNzPSJzZXNzaW9uLWtpbmQtYmFkZ2Ugc3RydWN0dXJlZCI+U3RydWN0dXJlZDwvc3Bhbj4nOic8c3BhbiBjbGFzcz0ic2Vzc2lvbi1raW5kLWJhZGdlIHB0eSI+UFRZPC9zcGFuPic7cmV0dXJuIHQranUoZSl9ZnVuY3Rpb24gRGMoZSl7dmFyIHQ9W3tpZDoibWFuYWdlZCIsbGFiZWw6Ilx1NjI1OFx1N0JBMSIsZGVzYzoiXHU1MTY4XHU4MUVBXHU1MkE4XHU1QjhDXHU2MjEwXHU0RUZCXHU1MkExIn0se2lkOiJmdWxsLWFjY2VzcyIsbGFiZWw6Ilx1NTE2OFx1Njc0M1x1OTY1MCIsZGVzYzoiXHU4MUVBXHU1MkE4XHU3ODZFXHU4QkE0XHU2NzQzXHU5NjUwIn0se2lkOiJhdXRvLWVkaXQiLGxhYmVsOiJcdTgxRUFcdTUyQThcdTdGMTZcdThGOTEiLGRlc2M6Ilx1ODFFQVx1NTJBOFx1Nzg2RVx1OEJBNFx1NEZFRVx1NjUzOSJ9LHtpZDoiZGVmYXVsdCIsbGFiZWw6Ilx1NjgwN1x1NTFDNiIsZGVzYzoiXHU5MDEwXHU2QjY1XHU3ODZFXHU4QkE0XHU2NENEXHU0RjVDIn0se2lkOiJuYXRpdmUiLGxhYmVsOiJcdTUzOUZcdTc1MUYiLGRlc2M6Ilx1NTM5Rlx1NzUxRlx1N0VEM1x1Njc4NFx1NTMxNlx1OEY5M1x1NTFGQSJ9XTtyZXR1cm4gdC5tYXAoZnVuY3Rpb24ocil7dmFyIGk9ci5pZD09PWU/IiBhY3RpdmUiOiIiO3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im1vZGUtY2FyZCcraSsnIiBkYXRhLW1vZGU9Iicrci5pZCsnIj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWxhYmVsIj4nK3IubGFiZWwrJzwvc3Bhbj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWRlc2MiPicrci5kZXNjKyI8L3NwYW4+PC9idXR0b24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIGtjKGUpe3ZhciB0PVt7aWQ6ImNsYXVkZSIsbGFiZWw6IkNsYXVkZSIsZGVzYzoiXHU1QjhDXHU2NTc0IENsYXVkZSBcdTRGMUFcdThCRERcdTgwRkRcdTUyOUIifSx7aWQ6ImNvZGV4IixsYWJlbDoiQ29kZXgiLGRlc2M6Ilx1N0VEM1x1Njc4NFx1NTMxNiBKU09OTCBcdTYyMTYgUFRZIFx1NEYxQVx1OEJERCJ9XTtyZXR1cm4gdC5tYXAoZnVuY3Rpb24ocil7dmFyIGk9ci5pZD09PWU/IiBhY3RpdmUiOiIiO3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im1vZGUtY2FyZCBwcm92aWRlci1jYXJkJytpKyciIGRhdGEtcHJvdmlkZXI9Iicrci5pZCsnIj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWxhYmVsIj4nK3IubGFiZWwrJzwvc3Bhbj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWRlc2MiPicrci5kZXNjKyI8L3NwYW4+PC9idXR0b24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIEFjKGUpe3ZhciB0PVt7aWQ6InN0cnVjdHVyZWQiLGxhYmVsOiJcdTdFRDNcdTY3ODRcdTUzMTYiLGRlc2M6Ilx1NjY3QVx1ODBGRFx1NUJGOVx1OEJERFx1NkEyMVx1NUYwRiJ9LHtpZDoicHR5IixsYWJlbDoiUFRZIixkZXNjOiJcdTRFQTRcdTRFOTJcdTVGMEZcdTdFQzhcdTdBRUZcdTRGMUFcdThCREQifV07cmV0dXJuIHQubWFwKGZ1bmN0aW9uKHIpe3ZhciBpPXIuaWQ9PT1lPyIgYWN0aXZlIjoiIixhPSIiO3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9Im1vZGUtY2FyZCBzZXNzaW9uLWtpbmQtY2FyZCcraSthKyciIGRhdGEtc2Vzc2lvbi1raW5kPSInK3IuaWQrJyI+PHNwYW4gY2xhc3M9Im1vZGUtY2FyZC1sYWJlbCI+JytyLmxhYmVsKyc8L3NwYW4+PHNwYW4gY2xhc3M9Im1vZGUtY2FyZC1kZXNjIj4nK3IuZGVzYysiPC9zcGFuPjwvYnV0dG9uPiJ9KS5qb2luKCIiKX1mdW5jdGlvbiBIbShlKXtyZXR1cm4nPGxhYmVsIGNsYXNzPSJzZXNzaW9uLWlubGluZS10b2dnbGUiIGZvcj0ic2Vzc2lvbi13b3JrdHJlZS10b2dnbGUiIHRpdGxlPSJcdTRFM0FcdThCRTVcdTRGMUFcdThCRERcdTUyMUJcdTVFRkFcdTcyRUNcdTdBQ0JcdTc2ODQgZ2l0IHdvcmt0cmVlIFx1NTIwNlx1NjUyRiI+PHN2ZyBjbGFzcz0ic2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWljb24iIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjEzIiBoZWlnaHQ9IjEzIiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48Y2lyY2xlIGN4PSI2IiBjeT0iNiIgcj0iMi4yIi8+PGNpcmNsZSBjeD0iMTgiIGN5PSI2IiByPSIyLjIiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjE4IiByPSIyLjIiLz48cGF0aCBkPSJNNiA4LjJ2My40YTIgMiAwIDAgMCAyIDJoOGEyIDIgMCAwIDAgMi0yVjguMiIvPjxwYXRoIGQ9Ik0xMiAxMy42djIuMiIvPjwvc3ZnPjxzcGFuIGNsYXNzPSJzZXNzaW9uLWlubGluZS10b2dnbGUtbGFiZWwiPldvcmt0cmVlIFx1NkEyMVx1NUYwRjwvc3Bhbj48aW5wdXQgaWQ9InNlc3Npb24td29ya3RyZWUtdG9nZ2xlIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiJysoZT8iIGNoZWNrZWQiOiIiKSsnIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9sYWJlbD4nfWZ1bmN0aW9uIFJ1KGUpe3ZhciB0PW4uc2Vzc2lvblRvb2x8fCJjbGF1ZGUiO3JldHVybiBlPT09InN0cnVjdHVyZWQiP3Q9PT0iY29kZXgiPyJDb2RleCBKU09OTCBcdTdFRDNcdTY3ODRcdTUzMTZcdTgwNEFcdTU5MjlcdTc1NENcdTk3NjJcdUZGMENcdTY1MkZcdTYzMDFcdTU5MUFcdThGNkVcdTVCRjlcdThCRERcdTU0OENcdTVERTVcdTUxNzdcdThDMDNcdTc1MjhcdTVDNTVcdTc5M0FcdTMwMDIiOiJcdTdFRDNcdTY3ODRcdTUzMTZcdTgwNEFcdTU5MjlcdTc1NENcdTk3NjJcdUZGMENcdTY1MkZcdTYzMDFcdTU5MUFcdThGNkVcdTVCRjlcdThCRERcdTMwMDFcdTZENDFcdTVGMEZcdThGOTNcdTUxRkFcdTU0OENcdTVERTVcdTUxNzdcdThDMDNcdTc1MjhcdTVDNTVcdTc5M0FcdTMwMDIiOnQ9PT0iY29kZXgiPyJDb2RleCBQVFkgXHU3RUM4XHU3QUVGXHU0RjFBXHU4QkREXHVGRjFCdGVybWluYWwgXHU2NjJGXHU1MzlGXHU1OUNCXHU4RjkzXHU1MUZBXHVGRjBDY2hhdCBcdTY2MkZcdTg5RTNcdTY3OTBcdTU0MEVcdTc2ODRcdTk2MDVcdThCRkJcdTg5QzZcdTU2RkVcdTMwMDIiOiJcdTUzOUZcdTU5Q0IgUFRZIFx1N0VDOFx1N0FFRlx1NEYxQVx1OEJERFx1RkYwQ1x1NjUyRlx1NjMwMVx1NjMwMVx1N0VFRFx1NEVBNFx1NEU5Mlx1MzAwMVx1N0VDOFx1N0FFRlx1ODlDNlx1NTZGRVx1NTQ4Q1x1Njc0M1x1OTY1MFx1NkQ0MVx1MzAwMiJ9ZnVuY3Rpb24geGMoKXt2YXIgZT1odCgpLHQ9UnQoZSxuLm1vZGVWYWx1ZXx8bi5jaGF0TW9kZXx8ImRlZmF1bHQiKSxyPW4uc2Vzc2lvbkNyZWF0ZUtpbmR8fCJzdHJ1Y3R1cmVkIixpPW4uc2Vzc2lvbkNyZWF0ZVdvcmt0cmVlPT09ITA7cmV0dXJuJzxzZWN0aW9uIGlkPSJzZXNzaW9uLW1vZGFsIiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AgaGlkZGVuIj48ZGl2IGNsYXNzPSJtb2RhbCBzZXNzaW9uLW1vZGFsIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxkaXY+PGgyIGNsYXNzPSJtb2RhbC10aXRsZSI+XHU2NUIwXHU1QkY5XHU4QkREPC9oMj48cCBjbGFzcz0ibW9kYWwtc3VidGl0bGUiPlx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU2MjE2IENvZGV4IFx1NEYxQVx1OEJERFx1RkYwQ1x1OTAwOVx1NjJFOSBwcm92aWRlclx1MzAwMVx1NEYxQVx1OEJERFx1N0M3Qlx1NTc4Qlx1MzAwMVx1NkEyMVx1NUYwRlx1NTQ4Q1x1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NVx1MzAwMjwvcD48L2Rpdj48YnV0dG9uIGlkPSJjbG9zZS1tb2RhbC1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCI+UHJvdmlkZXI8L2xhYmVsPjxkaXYgaWQ9InByb3ZpZGVyLWNhcmRzIiBjbGFzcz0ibW9kZS1jYXJkcyI+JytrYyhlKSsnPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZmllbGQiPjxsYWJlbCBjbGFzcz0iZmllbGQtbGFiZWwiPlx1NEYxQVx1OEJERFx1N0M3Qlx1NTc4QjwvbGFiZWw+PGRpdiBpZD0ic2Vzc2lvbi1raW5kLWNhcmRzIiBjbGFzcz0ibW9kZS1jYXJkcyI+JytBYyhyKSsnPC9kaXY+PGRpdiBjbGFzcz0iZmllbGQtaGludCBzZXNzaW9uLWtpbmQtaGludC1yb3ciPjxzcGFuIGlkPSJzZXNzaW9uLWtpbmQtZGVzY3JpcHRpb24iPicrcChSdShyKSkrJzwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCI+XHU2QTIxXHU1RjBGPC9sYWJlbD48ZGl2IGlkPSJtb2RlLWNhcmRzIiBjbGFzcz0ibW9kZS1jYXJkcyI+JytEYyh0KSsnPC9kaXY+PHAgaWQ9Im1vZGUtZGVzY3JpcHRpb24iIGNsYXNzPSJmaWVsZC1oaW50Ij4nK3AoTG8oZSx0KSkrJzwvcD48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJjd2QiPlx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NTwvbGFiZWw+PGRpdiBjbGFzcz0ic3VnZ2VzdGlvbnMtd3JhcCI+PGlucHV0IGlkPSJjd2QiIHR5cGU9InRleHQiIGNsYXNzPSJmaWVsZC1pbnB1dCIgYXV0b2NvbXBsZXRlPSJvZmYiIHBsYWNlaG9sZGVyPSInK3AoZXQoKSkrJyIgLz48ZGl2IGlkPSJjd2Qtc3VnZ2VzdGlvbnMiIGNsYXNzPSJzdWdnZXN0aW9ucyBoaWRkZW4iPjwvZGl2PjwvZGl2PjxwIGNsYXNzPSJmaWVsZC1oaW50Ij5cdTc1NTlcdTdBN0FcdTUyMTlcdTRGN0ZcdTc1MjhcdTRFMEFcdTY1QjlcdTc2RUVcdTVGNTVcdUZGMENcdTY1MkZcdTYzMDFcdThERUZcdTVGODRcdTgxRUFcdTUyQThcdTg4NjVcdTUxNjhcdTMwMDI8L3A+PGRpdiBpZD0icmVjZW50LXBhdGhzLWJ1YmJsZXMiIGNsYXNzPSJyZWNlbnQtcGF0aHMtYnViYmxlcyI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtZm9vdGVyIj48YnV0dG9uIGlkPSJydW4tYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jayI+XHU1NDJGXHU1MkE4XHU0RjFBXHU4QkREPC9idXR0b24+PHAgaWQ9Im1vZGFsLWVycm9yIiBjbGFzcz0iZXJyb3ItbWVzc2FnZSBoaWRkZW4iPjwvcD48L2Rpdj48L2Rpdj48L3NlY3Rpb24+J31mdW5jdGlvbiBXdSgpe3ZhciBlPURhdGUubm93KCktODY0ZTUsdD1bXTtyZXR1cm4gbi5zZXNzaW9ucy5mb3JFYWNoKGZ1bmN0aW9uKHIpe2lmKCFyLmFyY2hpdmVkKXt2YXIgaT1yLnN0YXJ0ZWRBdD9uZXcgRGF0ZShyLnN0YXJ0ZWRBdCkuZ2V0VGltZSgpOjA7dC5wdXNoKHtraW5kOiJzZXNzaW9uIixyZWY6cix0OmlzRmluaXRlKGkpP2k6MH0pfX0pLG4uY2xhdWRlSGlzdG9yeUxvYWRlZCYmam4oKS5mb3JFYWNoKGZ1bmN0aW9uKHIpe2lmKHIudGltZXN0YW1wKXt2YXIgaT1uZXcgRGF0ZShyLnRpbWVzdGFtcCkuZ2V0VGltZSgpOyFpc0Zpbml0ZShpKXx8aTw9ZXx8dC5wdXNoKHtraW5kOiJoaXN0b3J5IixyZWY6cix0Oml9KX19KSx0LnNvcnQoZnVuY3Rpb24ocixpKXtyZXR1cm4gaS50LXIudH0pLHR9ZnVuY3Rpb24gU2MoKXt2YXIgZT1uLnNlc3Npb25zLmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4gYS5hcmNoaXZlZH0pLHQ9W107dC5wdXNoKHp1KCkpO3ZhciByPVd1KCksaT1PYygpO3JldHVybiByLmxlbmd0aD4wJiZ0LnB1c2goTWMocikpLGUubGVuZ3RoPjAmJnQucHVzaChMYyhlKSksci5sZW5ndGg9PT0wJiZlLmxlbmd0aD09PTAmJiFpP3p1KCkrJzxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlIj48c3Ryb25nPlx1OEZEOFx1NkNBMVx1NjcwOVx1NEYxQVx1OEJERFx1OEJCMFx1NUY1NTwvc3Ryb25nPjxicj5cdTcwQjlcdTUxRkJcdTRFMEFcdTY1QjlcdTMwMENcdTY1QjBcdTVCRjlcdThCRERcdTMwMERcdTVGMDBcdTU5Q0JcdTRGNjBcdTc2ODRcdTdCMkNcdTRFMDBcdTZCMjFcdTVCRjlcdThCRERcdTMwMDI8L2Rpdj4nOihpJiZ0LnB1c2goaSksdC5qb2luKCIiKSl9ZnVuY3Rpb24gSWMoKXtyZXR1cm4hIW4uc2lkZWJhclBpbm5lZCYmISFuLnNpZGViYXJDb2xsYXBzZWR9ZnVuY3Rpb24gVGMoKXt2YXIgZT1XdSgpLHQ9ZS5tYXAoZnVuY3Rpb24oaSxhKXt2YXIgdT1hKzE7aWYoaS5raW5kPT09InNlc3Npb24iKXt2YXIgcz1pLnJlZixvPXMuaWQ9PT1uLnNlbGVjdGVkSWQ/IiBhY3RpdmUiOiIiLGw9cy50aXRsZXx8cy5kZXNjcmlwdGlvbnx8cy5zdW1tYXJ5fHxzLmNvbW1hbmR8fCJcdTRGMUFcdThCREQgIit1O3JldHVybic8YnV0dG9uIGNsYXNzPSJzaWRlYmFyLWNvbGxhcHNlZC10aWxlJytvKyciIHR5cGU9ImJ1dHRvbiIgZGF0YS1jb2xsYXBzZWQtc2Vzc2lvbi1pZD0iJytwKHMuaWQpKyciIHRpdGxlPSInK3AobCkrJyI+Jyt1KyI8L2J1dHRvbj4ifXZhciBjPWkucmVmLGY9Yy5maXJzdFVzZXJNZXNzYWdlfHwiKFx1N0E3QVx1NEYxQVx1OEJERCkiLGQ9ZisiIFx4QjcgIitHdShjLnRpbWVzdGFtcCk7cmV0dXJuJzxidXR0b24gY2xhc3M9InNpZGViYXItY29sbGFwc2VkLXRpbGUgaGlzdG9yeSIgdHlwZT0iYnV0dG9uIiBkYXRhLWNvbGxhcHNlZC1oaXN0b3J5LWlkPSInK3AoYy5jbGF1ZGVTZXNzaW9uSWQpKyciIGRhdGEtY3dkPSInK3AoYy5jd2R8fCIiKSsnIiB0aXRsZT0iJytwKGQpKyciPicrdSsiPC9idXR0b24+In0pLmpvaW4oIiIpLHI9JzxidXR0b24gY2xhc3M9InNpZGViYXItY29sbGFwc2VkLXRpbGUgYWRkIiB0eXBlPSJidXR0b24iIGRhdGEtY29sbGFwc2VkLW5ldy1zZXNzaW9uPSIxIiB0aXRsZT0iXHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREIiBhcmlhLWxhYmVsPSJcdTY1QjBcdTVFRkFcdTRGMUFcdThCREQiPjxzdmcgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjEyIiB5MT0iNSIgeDI9IjEyIiB5Mj0iMTkiLz48bGluZSB4MT0iNSIgeTE9IjEyIiB4Mj0iMTkiIHkyPSIxMiIvPjwvc3ZnPjwvYnV0dG9uPic7cmV0dXJuJzxkaXYgY2xhc3M9InNpZGViYXItY29sbGFwc2VkLXRpbGVzIj4nK3QrcisiPC9kaXY+In1mdW5jdGlvbiBLaSgpe3JldHVybiBJYygpP1RjKCk6U2MoKX1mdW5jdGlvbiB6dSgpe2lmKCFuLnNlc3Npb25zTWFuYWdlTW9kZSlyZXR1cm4nPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2UtYmFyIj48c3BhbiBjbGFzcz0ic2lkZWJhci1pbnRybyI+XHU2NzAwXHU4RkQxXHU3Njg0XHU0RjFBXHU4QkREXHU4QkIwXHU1RjU1PC9zcGFuPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXhzIHNlc3Npb24tbWFuYWdlLXRvZ2dsZSIgZGF0YS1hY3Rpb249InRvZ2dsZS1tYW5hZ2UtbW9kZSIgdHlwZT0iYnV0dG9uIj48c3ZnIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik05IDExbDMgM0wyMiA0Ii8+PHBhdGggZD0iTTIxIDEydjdhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDExIi8+PC9zdmc+PHNwYW4+XHU3QkExXHU3NDA2PC9zcGFuPjwvYnV0dG9uPjwvZGl2Pic7dmFyIGU9VnUoKS5sZW5ndGgsdD1VdSgpLmxlbmd0aCxyPWUrdCxpPXI+MCxhPV9jKCksdT1hPjAmJnI+PWEscz11PyJcdTUzRDZcdTZEODhcdTUxNjhcdTkwMDkiOiJcdTUxNjhcdTkwMDkiLG89dT8iY2xlYXItc2VsZWN0aW9uIjoic2VsZWN0LWFsbC12aXNpYmxlIixsPWE9PT0wPyIgZGlzYWJsZWQiOiIiLGM9JzxidXR0b24gY2xhc3M9InNlc3Npb24tbWFuYWdlLWV4aXQiIGRhdGEtYWN0aW9uPSJ0b2dnbGUtbWFuYWdlLW1vZGUiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU5MDAwXHU1MUZBXHU3QkExXHU3NDA2XHU2QTIxXHU1RjBGIiB0aXRsZT0iXHU5MDAwXHU1MUZBXHU3QkExXHU3NDA2XHU2QTIxXHU1RjBGIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+JyxmPWk/JzxzcGFuIGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1jb3VudCI+JytyKyc8L3NwYW4+PHNwYW4gY2xhc3M9InNlc3Npb24tbWFuYWdlLXN1bW1hcnktbGFiZWwiPlx1NURGMlx1OTAwOVx1NjJFOTwvc3Bhbj4nOic8c3BhbiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeS1sYWJlbCBtdXRlZCI+XHU5MDA5XHU2MkU5XHU4OTgxXHU3QkExXHU3NDA2XHU3Njg0XHU5ODc5XHU3NkVFPC9zcGFuPic7cmV0dXJuJzxkaXYgY2xhc3M9InNlc3Npb24tbWFuYWdlLWJhciBhY3RpdmUiPicrYysnPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeSI+JytmKyc8L2Rpdj48ZGl2IGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1hY3Rpb25zIj48YnV0dG9uIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi14cyIgZGF0YS1hY3Rpb249IicrbysnIiB0eXBlPSJidXR0b24iJytsKyI+IitzKyc8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRhbmdlciBidG4teHMiIGRhdGEtYWN0aW9uPSJkZWxldGUtc2VsZWN0ZWQiIHR5cGU9ImJ1dHRvbiInKyhpPyIiOiIgZGlzYWJsZWQiKSsiPlx1NTIyMFx1OTY2NCIrKGk/IiAiK3I6IiIpKyI8L2J1dHRvbj48L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIF9tKGUsdCxyKXtyZXR1cm4nPHNlY3Rpb24gY2xhc3M9InNlc3Npb24tZ3JvdXAiPjxkaXYgY2xhc3M9InNlc3Npb24tZ3JvdXAtdGl0bGUiPicrcChlKSsiPC9kaXY+Iit0Lm1hcChmdW5jdGlvbihpKXtyZXR1cm4gVWkoaSxyKX0pLmpvaW4oIiIpKyI8L3NlY3Rpb24+In1mdW5jdGlvbiBMYyhlKXt2YXIgdD0hIW4uYXJjaGl2ZWRFeHBhbmRlZCxyPXQ/IiYjOTY2MjsiOiImIzk2NTY7IixpPSc8ZGl2IGNsYXNzPSJzZXNzaW9uLWdyb3VwLXRpdGxlIGNsYXVkZS1oaXN0b3J5LXRvZ2dsZSIgZGF0YS1hY3Rpb249InRvZ2dsZS1hcmNoaXZlZC1ncm91cCI+PHNwYW4gY2xhc3M9ImNoZXZyb24iPicrcisnPC9zcGFuPiBcdTVERjJcdTVGNTJcdTY4NjMgPHNwYW4gY2xhc3M9Imhpc3RvcnktY291bnQiPicrZS5sZW5ndGgrIjwvc3Bhbj48L2Rpdj4iO2lmKCF0KXJldHVybic8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCI+JytpKyI8L3NlY3Rpb24+Ijt2YXIgYT1lLm1hcChmdW5jdGlvbih1KXtyZXR1cm4gVWkodSwic2Vzc2lvbnMiKX0pLmpvaW4oIiIpO3JldHVybic8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCI+JytpK2ErIjwvc2VjdGlvbj4ifWZ1bmN0aW9uIE1jKGUpe3ZhciB0PSc8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCBzZXNzaW9uLWdyb3VwLS1yZWNlbnQiPic7cmV0dXJuIHQrPWUubWFwKGZ1bmN0aW9uKHIpe3JldHVybiByLmtpbmQ9PT0ic2Vzc2lvbiI/VWkoci5yZWYsInNlc3Npb25zIik6WWkoci5yZWYsImhpc3RvcnkiKX0pLmpvaW4oIiIpLHQrPSI8L3NlY3Rpb24+Iix0fWZ1bmN0aW9uIHFjKCl7dmFyIGU9RGF0ZS5ub3coKS04NjRlNTtyZXR1cm4gam4oKS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIXQudGltZXN0YW1wfHxuZXcgRGF0ZSh0LnRpbWVzdGFtcCkuZ2V0VGltZSgpPD1lfSl9ZnVuY3Rpb24gT2MoKXt2YXIgZT1xYygpLHQ9ISFuLmNsYXVkZUhpc3RvcnlMb2FkZWQscj1ZYygpLGk9ISFuLmNvZGV4SGlzdG9yeUxvYWRlZCxhPXQmJmksdT0odD9lLmxlbmd0aDowKSsoaT9yLmxlbmd0aDowKTtpZihhJiZ1PT09MClyZXR1cm4iIjt2YXIgcz0hIW4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkLG89cz8iJiM5NjYyOyI6IiYjOTY1NjsiLGw9YT91Pjk5OT8iOTk5KyI6U3RyaW5nKHUpOiJceEI3XHhCN1x4QjciLGM9JzxkaXYgY2xhc3M9InNlc3Npb24tZ3JvdXAtdGl0bGUgY2xhdWRlLWhpc3RvcnktdG9nZ2xlIHNlc3Npb24taGlzdG9yeS10b2dnbGUiIGlkPSJjbGF1ZGUtaGlzdG9yeS10b2dnbGUiIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGFyaWEtZXhwYW5kZWQ9IicrcysnIiB0aXRsZT0iJysocz8iXHU2NTM2XHU4RDc3XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIjoiXHU1QzU1XHU1RjAwXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIikrJyI+PHNwYW4gY2xhc3M9ImNoZXZyb24iPicrbysnPC9zcGFuPiBcdTUzODZcdTUzRjJcdTRGMUFcdThCREQgPHNwYW4gY2xhc3M9Imhpc3RvcnktY291bnQnKyhhPyIiOiIgbG9hZGluZyIpKyciPicrbCsiPC9zcGFuPjwvZGl2PiIsZj1zPyc8ZGl2IGNsYXNzPSJzZXNzaW9uLWhpc3RvcnktYm9keSI+JytQYyhlKSt6YyhyKSsiPC9kaXY+IjoiIjtyZXR1cm4nPHNlY3Rpb24gY2xhc3M9InNlc3Npb24tZ3JvdXAgc2Vzc2lvbi1ncm91cC0taGlzdG9yeSI+JytjK2YrIjwvc2VjdGlvbj4ifWZ1bmN0aW9uIFBjKGUpe2lmKCFuLmNsYXVkZUhpc3RvcnlMb2FkZWQpcmV0dXJuJzxkaXYgY2xhc3M9ImNsYXVkZS1oaXN0b3J5LWxvYWRpbmciPlx1NjI2Qlx1NjNDRlx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1NEUyRFx1MjAyNjwvZGl2Pic7aWYoZS5sZW5ndGg9PT0wKXJldHVybiIiO3ZhciB0PXt9LHI9W107ZS5mb3JFYWNoKGZ1bmN0aW9uKHUpe3RbdS5jd2RdfHwodFt1LmN3ZF09W10sci5wdXNoKHUuY3dkKSksdFt1LmN3ZF0ucHVzaCh1KX0pO3ZhciBpPSc8ZGl2IGNsYXNzPSJzaWRlYmFyLWhpc3RvcnktdG9vbGJhciI+PGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4teHMgc2lkZWJhci1oaXN0b3J5LWNsZWFyIiBkYXRhLWFjdGlvbj0iY2xlYXItYWxsLWhpc3RvcnkiIHR5cGU9ImJ1dHRvbiI+XHU2RTA1XHU3QTdBXHU1MTY4XHU5MEU4PC9idXR0b24+PC9kaXY+JyxhPSIiO3JldHVybiByLmZvckVhY2goZnVuY3Rpb24odSl7dmFyIHM9dS5zcGxpdCgiLyIpLmZpbHRlcihCb29sZWFuKS5zbGljZSgtMykuam9pbigiLyIpLG89ISFuLmNsYXVkZUhpc3RvcnlFeHBhbmRlZERpcnNbdV07YSs9VmModSxzLHRbdV0ubGVuZ3RoLG8pLG8mJihhKz10W3VdLm1hcChmdW5jdGlvbihsKXtyZXR1cm4gWWkobCwiaGlzdG9yeSIpfSkuam9pbigiIikpfSksaSsnPGRpdiBjbGFzcz0ic2lkZWJhci1oaXN0b3J5LXNjcm9sbCI+JythKyI8L2Rpdj4ifWZ1bmN0aW9uIGpuKCl7dmFyIGU9bmV3IFNldDtyZXR1cm4gbi5zZXNzaW9ucy5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QuY2xhdWRlU2Vzc2lvbklkJiZlLmFkZCh0LmNsYXVkZVNlc3Npb25JZCl9KSxuLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmhhc0NvbnZlcnNhdGlvbiYmIXQubWFuYWdlZEJ5V2FuZCYmIWUuaGFzKHQuY2xhdWRlU2Vzc2lvbklkKX0pfWZ1bmN0aW9uIFZ1KCl7cmV0dXJuIE9iamVjdC5rZXlzKG4uc2VsZWN0ZWRTZXNzaW9uSWRzKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuISFuLnNlbGVjdGVkU2Vzc2lvbklkc1tlXX0pfWZ1bmN0aW9uIFV1KCl7cmV0dXJuIE9iamVjdC5rZXlzKG4uc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzKS5maWx0ZXIoZnVuY3Rpb24oZSl7cmV0dXJuISFuLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkc1tlXX0pfWZ1bmN0aW9uIEdyKCl7bi5zZWxlY3RlZFNlc3Npb25JZHM9e30sbi5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHM9e319ZnVuY3Rpb24gSGMoZSl7bi5zZXNzaW9uc01hbmFnZU1vZGU9dHlwZW9mIGU9PSJib29sZWFuIj9lOiFuLnNlc3Npb25zTWFuYWdlTW9kZSxuLnNlc3Npb25zTWFuYWdlTW9kZSYmIW4uY2xhdWRlSGlzdG9yeUxvYWRlZCYmUXIoKS50aGVuKHBlKSxuLnNlc3Npb25zTWFuYWdlTW9kZXx8KEdyKCksa3IoKSkscGUoKX1mdW5jdGlvbiBLdSgpe3JldHVybiBuLnNlc3Npb25zLnNsaWNlKCl9ZnVuY3Rpb24gX2MoKXtyZXR1cm4gS3UoKS5sZW5ndGgram4oKS5sZW5ndGh9ZnVuY3Rpb24gWXUoKXtpZighbi5jbGF1ZGVIaXN0b3J5TG9hZGVkKXtRcigpLnRoZW4oWXUpO3JldHVybn1uLmNsYXVkZUhpc3RvcnlFeHBhbmRlZD0hMDt2YXIgZT17fTtLdSgpLmZvckVhY2goZnVuY3Rpb24ocil7ZVtyLmlkXT0hMH0pO3ZhciB0PXt9O2puKCkuZm9yRWFjaChmdW5jdGlvbihyKXt0W3IuY2xhdWRlU2Vzc2lvbklkXT0hMH0pLG4uc2VsZWN0ZWRTZXNzaW9uSWRzPWUsbi5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHM9dCxwZSgpfWZ1bmN0aW9uIE5jKCl7R3IoKSxwZSgpfWZ1bmN0aW9uIGNyKGUsdCl7aWYoISghbi5zZXNzaW9uc01hbmFnZU1vZGV8fCF0KSl7dmFyIHI9ZT09PSJoaXN0b3J5Ij9uLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkczpuLnNlbGVjdGVkU2Vzc2lvbklkcztyW3RdP2RlbGV0ZSByW3RdOnJbdF09ITAscGUoKX19ZnVuY3Rpb24gSnUoZSx0LHIpe2lmKCFuLnNlc3Npb25zTWFuYWdlTW9kZSlyZXR1cm4iIjt2YXIgaT1lPT09Imhpc3RvcnkiPyEhbi5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHNbdF06ISFuLnNlbGVjdGVkU2Vzc2lvbklkc1t0XTtyZXR1cm4nPGxhYmVsIGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1jaGVjayI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBkYXRhLWFjdGlvbj0idG9nZ2xlLXNlbGVjdGlvbiIgZGF0YS1raW5kPSInK3AoZSkrJyIgZGF0YS1pZD0iJytwKHQpKyciJysoaT8iIGNoZWNrZWQiOiIiKSsnIGFyaWEtbGFiZWw9IicrcChyKSsnIj48c3Bhbj48L3NwYW4+PC9sYWJlbD4nfWZ1bmN0aW9uIERuKGUsdCl7cmV0dXJuIHR5cGVvZiB3aW5kb3cud2FuZENvbmZpcm09PSJmdW5jdGlvbiI/d2luZG93LndhbmRDb25maXJtKGUsT2JqZWN0LmFzc2lnbih7dHlwZToiZGFuZ2VyIixkYW5nZXI6ITAsb2tMYWJlbDoiXHU1MjIwXHU5NjY0In0sdHx8e30pKTpQcm9taXNlLnJlc29sdmUod2luZG93LmNvbmZpcm0oZSkpfWZ1bmN0aW9uIGpjKCl7dmFyIGU9VnUoKSx0PVV1KCkscj1lLmxlbmd0aCt0Lmxlbmd0aDtyJiZEbigiXHU3ODZFXHU4QkE0XHU1MjIwXHU5NjY0XHU2MjQwXHU5MDA5ICIrcisiIFx1OTg3OVx1NTQxN1x1RkYxRlx1NkI2NFx1NjRDRFx1NEY1Q1x1NjVFMFx1NkNENVx1NjRBNFx1OTUwMFx1MzAwMiIse3RpdGxlOiJcdTUyMjBcdTk2NjRcdTYyNDBcdTkwMDkgIityKyIgXHU5ODc5In0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaSl7dmFyIGE9W107ZS5sZW5ndGg+MCYmYS5wdXNoKGZldGNoKCIvYXBpL3Nlc3Npb25zL2JhdGNoLWRlbGV0ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe3Nlc3Npb25JZHM6ZX0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KSksdC5sZW5ndGg+MCYmYS5wdXNoKGZldGNoKCIvYXBpL2NsYXVkZS1oaXN0b3J5L2JhdGNoLWRlbGV0ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2NsYXVkZVNlc3Npb25JZHM6dH0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KSksUHJvbWlzZS5hbGwoYSkudGhlbihmdW5jdGlvbigpe3JldHVybiBlLmluZGV4T2Yobi5zZWxlY3RlZElkKSE9PS0xJiYobi5zZWxlY3RlZElkPW51bGwseWUoKSksbi5jbGF1ZGVIaXN0b3J5PW4uY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHQuaW5kZXhPZih1LmNsYXVkZVNlc3Npb25JZCk9PT0tMX0pLEdyKCksanQoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjdGlvbi1lcnJvciIpO3plKHUsIlx1NjVFMFx1NkNENVx1NjI3OVx1OTFDRlx1NTIyMFx1OTY2NFx1NjI0MFx1OTAwOVx1OTg3OVx1NzZFRVx1MzAwMiIpfSl9fSl9ZnVuY3Rpb24gUmMoKXt2YXIgZT1EYXRlLm5vdygpLTg2NGU1LHQ9am4oKS5maWx0ZXIoZnVuY3Rpb24ocil7cmV0dXJuIXIudGltZXN0YW1wfHxuZXcgRGF0ZShyLnRpbWVzdGFtcCkuZ2V0VGltZSgpPD1lfSk7aWYodC5sZW5ndGgpcmV0dXJuIERuKCJcdTc4NkVcdThCQTRcdTZFMDVcdTdBN0FcdTVGNTNcdTUyNERcdTY2M0VcdTc5M0FcdTc2ODQgIit0Lmxlbmd0aCsiIFx1Njc2MSBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU1NDE3XHVGRjFGIix7dGl0bGU6Ilx1NkUwNVx1N0E3QSBDbGF1ZGUgXHU1Mzg2XHU1M0YyIixva0xhYmVsOiJcdTZFMDVcdTdBN0EifSkudGhlbihmdW5jdGlvbihyKXtpZihyKXt2YXIgaT10Lm1hcChmdW5jdGlvbihhKXtyZXR1cm4gYS5jbGF1ZGVTZXNzaW9uSWR9KTtyZXR1cm4gZmV0Y2goIi9hcGkvY2xhdWRlLWhpc3RvcnkvYmF0Y2gtZGVsZXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7Y2xhdWRlU2Vzc2lvbklkczppfSl9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoYSYmYS5lcnJvcil0aHJvdyBuZXcgRXJyb3IoYS5lcnJvcik7bi5jbGF1ZGVIaXN0b3J5PW4uY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIGkuaW5kZXhPZih1LmNsYXVkZVNlc3Npb25JZCk9PT0tMX0pLEdyKCkscGUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjdGlvbi1lcnJvciIpO3plKGEsIlx1NjVFMFx1NkNENVx1NkUwNVx1N0E3QVx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1MzAwMiIpfSl9fSl9ZnVuY3Rpb24gV2MoZSx0LHIsaSl7dmFyIGE9aT8iXHUyNUJFIjoiXHUyNUI4IjtyZXR1cm4nPGRpdiBjbGFzcz0iY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciBjb2RleC1oaXN0b3J5LWRpcmVjdG9yeS1oZWFkZXIiIGRhdGEtYWN0aW9uPSJ0b2dnbGUtY29kZXgtaGlzdG9yeS1kaXJlY3RvcnkiIGRhdGEtY3dkPSInK3AoZSkrJyIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1ncm91cC10aXRsZSBjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktdGl0bGUiPjxzcGFuIGNsYXNzPSJjaGV2cm9uIj4nK2ErJzwvc3Bhbj48c3BhbiBjbGFzcz0iY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWxhYmVsIj4nK3AodCkrIiAoIityKyIpPC9zcGFuPjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gemMoZSl7aWYoIW4uY29kZXhIaXN0b3J5TG9hZGVkKXJldHVybic8ZGl2IGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1sb2FkaW5nIj5cdTYyNkJcdTYzQ0YgQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHU0RTJEXHUyMDI2PC9kaXY+JztpZihlLmxlbmd0aD09PTApcmV0dXJuIiI7dmFyIHQ9e30scj1bXTtlLmZvckVhY2goZnVuY3Rpb24oYSl7dFthLmN3ZF18fCh0W2EuY3dkXT1bXSxyLnB1c2goYS5jd2QpKSx0W2EuY3dkXS5wdXNoKGEpfSk7dmFyIGk9JzxkaXYgY2xhc3M9InNpZGViYXItaGlzdG9yeS1zZWN0aW9uLWxhYmVsIj5Db2RleDwvZGl2Pic7cmV0dXJuIHIuZm9yRWFjaChmdW5jdGlvbihhKXt2YXIgdT1hLnNwbGl0KCIvIikuZmlsdGVyKEJvb2xlYW4pLnNsaWNlKC0zKS5qb2luKCIvIikscz0hIW4uY29kZXhIaXN0b3J5RXhwYW5kZWREaXJzW2FdO2krPVdjKGEsdSx0W2FdLmxlbmd0aCxzKSxzJiYoaSs9dFthXS5tYXAoZnVuY3Rpb24obyl7cmV0dXJuIFlpKG8sImNvZGV4Iil9KS5qb2luKCIiKSl9KSwnPGRpdiBjbGFzcz0ic2lkZWJhci1oaXN0b3J5LXNjcm9sbCBjb2RleC1oaXN0b3J5LXNjcm9sbCI+JytpKyI8L2Rpdj4ifWZ1bmN0aW9uIFZjKGUsdCxyLGkpe3ZhciBhPWk/IiYjOTY2MjsiOiImIzk2NTY7IjtyZXR1cm4nPGRpdiBjbGFzcz0iY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciIgZGF0YS1hY3Rpb249InRvZ2dsZS1oaXN0b3J5LWRpcmVjdG9yeSIgZGF0YS1jd2Q9IicrcChlKSsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWdyb3VwLXRpdGxlIGNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS10aXRsZSI+PHNwYW4gY2xhc3M9ImNoZXZyb24iPicrYSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktbGFiZWwiPicrcCh0KSsiICgiK3IrJyk8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1kYW5nZXIgYnRuLXhzIGNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1jbGVhci1idG4iIGRhdGEtYWN0aW9uPSJkZWxldGUtaGlzdG9yeS1kaXJlY3RvcnkiIGRhdGEtY3dkPSInK3AoZSkrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTZFMDVcdTdBN0FcdTZCNjRcdTc2RUVcdTVGNTVcdTc2ODRcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiIHRpdGxlPSJcdTZFMDVcdTdBN0FcdTZCNjRcdTc2RUVcdTVGNTVcdTc2ODRcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiPlx1NkUwNVx1N0E3QVx1NkI2NFx1NzZFRVx1NUY1NTwvYnV0dG9uPjwvZGl2PjwvZGl2Pid9ZnVuY3Rpb24gWWkoZSx0KXt2YXIgcj10PT09ImNvZGV4IixpPXI/InJlc3VtZS1jb2RleC1oaXN0b3J5IjoicmVzdW1lLWhpc3RvcnkiLGE9cj8iZGVsZXRlLWNvZGV4LWhpc3RvcnkiOiJkZWxldGUtaGlzdG9yeSIsdT1yP24uc2VsZWN0ZWRDb2RleEhpc3RvcnlJZHM6bi5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHMscz1lLmNsYXVkZVNlc3Npb25JZC5zbGljZSgwLDgpLG89ZS5maXJzdFVzZXJNZXNzYWdlfHwiKFx1N0E3QVx1NEYxQVx1OEJERCkiLGw9R3UoZS50aW1lc3RhbXApLGM9SnUodCxlLmNsYXVkZVNlc3Npb25JZCwiXHU5MDA5XHU2MkU5XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREICIrbyksZj1uLnNlc3Npb25zTWFuYWdlTW9kZT8iIjonPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIGRlbGV0ZS1idG4iIGRhdGEtYWN0aW9uPSInK2ErJyIgZGF0YS1jbGF1ZGUtc2Vzc2lvbi1pZD0iJytlLmNsYXVkZVNlc3Npb25JZCsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTIyMFx1OTY2NFx1NEYxQVx1OEJERCIgdGl0bGU9Ilx1OTY5MFx1ODVDRlx1NkI2NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTggNlY0YTIgMiAwIDAxMi0yaDRhMiAyIDAgMDEyIDJ2MiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDE0YTIgMiAwIDAxLTIgMkg4YTIgMiAwIDAxLTItMkw1IDYiLz48L3N2Zz48L2J1dHRvbj4nLGQ9bi5zZXNzaW9uc01hbmFnZU1vZGU/IiI6JzxidXR0b24gY2xhc3M9InNlc3Npb24tYWN0aW9uLWJ0biIgZGF0YS1hY3Rpb249IicraSsnIiBkYXRhLWNsYXVkZS1zZXNzaW9uLWlkPSInK2UuY2xhdWRlU2Vzc2lvbklkKyciIGRhdGEtY3dkPSInK3AoZS5jd2QpKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU2MDYyXHU1OTBEXHU0RjFBXHU4QkREIiB0aXRsZT0iJysocj8iXHU2MDYyXHU1OTBEXHU2QjY0IENvZGV4IFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCI6Ilx1NjA2Mlx1NTkwRFx1NkI2NCBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIikrJyI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMSA0djZoNiIvPjxwYXRoIGQ9Ik0zLjUxIDE1YTkgOSAwIDEwNS42NC0xMS4zNkwzIDEwIi8+PC9zdmc+PC9idXR0b24+JztyZXR1cm4nPGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtIGNsYXVkZS1oaXN0b3J5LWl0ZW0nKyhuLnNlc3Npb25zTWFuYWdlTW9kZSYmdVtlLmNsYXVkZVNlc3Npb25JZF0/IiBzZWxlY3RlZCI6IiIpKyciIGRhdGEtY2xhdWRlLWhpc3RvcnktaWQ9IicrZS5jbGF1ZGVTZXNzaW9uSWQrJyIgZGF0YS1jd2Q9IicrcChlLmN3ZCkrJyIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtLWNvbnRlbnQiPjxkaXYgY2xhc3M9InNlc3Npb24taXRlbS1yb3ciPicrYysnPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYWluIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWNvbW1hbmQgY2xhdWRlLWhpc3RvcnktcHJldmlldyI+JytwKG8pKyc8L2Rpdj48ZGl2IGNsYXNzPSJzZXNzaW9uLW1ldGEiPjxzcGFuIGNsYXNzPSJzZXNzaW9uLWlkIiB0aXRsZT0iJytwKGUuY2xhdWRlU2Vzc2lvbklkKSsnIj4nK3AocykrIjwvc3Bhbj48c3Bhbj4iK3AobCkrJzwvc3Bhbj48L2Rpdj48L2Rpdj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb25zIj4nK2QrZisiPC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gR3UoZSl7aWYoIWUpcmV0dXJuIiI7dHJ5e3ZhciB0PW5ldyBEYXRlKGUpLHI9bmV3IERhdGUsaT1yLXQsYT1NYXRoLmZsb29yKGkvNmU0KTtpZihhPDEpcmV0dXJuIlx1NTIxQVx1NTIxQSI7aWYoYTw2MClyZXR1cm4gYSsiIFx1NTIwNlx1OTQ5Rlx1NTI0RCI7dmFyIHU9TWF0aC5mbG9vcihhLzYwKTtpZih1PDI0KXJldHVybiB1KyIgXHU1QzBGXHU2NUY2XHU1MjREIjt2YXIgcz1NYXRoLmZsb29yKHUvMjQpO3JldHVybiBzPDMwP3MrIiBcdTU5MjlcdTUyNEQiOnQudG9Mb2NhbGVEYXRlU3RyaW5nKCl9Y2F0Y2h7cmV0dXJuIiJ9fWZ1bmN0aW9uIFF1KCl7cmV0dXJuIGZldGNoKCIvYXBpL2NsYXVkZS1oaXN0b3J5Iix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUub2s/ZS5qc29uKCk6W119KS50aGVuKGZ1bmN0aW9uKGUpe24uY2xhdWRlSGlzdG9yeT1lfHxbXSxuLmNsYXVkZUhpc3RvcnlMb2FkZWQ9ITAscGUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7bi5jbGF1ZGVIaXN0b3J5TG9hZGVkPSEwLG4uY2xhdWRlSGlzdG9yeT1bXSxwZSgpfSl9dmFyIFJuPW51bGw7ZnVuY3Rpb24gUXIoKXtyZXR1cm4gS2MoKSxuLmNsYXVkZUhpc3RvcnlMb2FkZWQ/UHJvbWlzZS5yZXNvbHZlKCk6Um58fChSbj1RdSgpLnRoZW4oZnVuY3Rpb24oKXtSbj1udWxsfSxmdW5jdGlvbigpe1JuPW51bGx9KSxSbil9ZnVuY3Rpb24gVWMoKXtyZXR1cm4gZmV0Y2goIi9hcGkvY29kZXgtaGlzdG9yeSIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLm9rP2UuanNvbigpOltdfSkudGhlbihmdW5jdGlvbihlKXtuLmNvZGV4SGlzdG9yeT1lfHxbXSxuLmNvZGV4SGlzdG9yeUxvYWRlZD0hMCxwZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtuLmNvZGV4SGlzdG9yeUxvYWRlZD0hMCxuLmNvZGV4SGlzdG9yeT1bXSxwZSgpfSl9dmFyIFduPW51bGw7ZnVuY3Rpb24gS2MoKXtyZXR1cm4gbi5jb2RleEhpc3RvcnlMb2FkZWQ/UHJvbWlzZS5yZXNvbHZlKCk6V258fChXbj1VYygpLnRoZW4oZnVuY3Rpb24oKXtXbj1udWxsfSxmdW5jdGlvbigpe1duPW51bGx9KSxXbil9ZnVuY3Rpb24gWWMoKXt2YXIgZT1uZXcgU2V0O3JldHVybiBuLnNlc3Npb25zLmZvckVhY2goZnVuY3Rpb24odCl7dC5jbGF1ZGVTZXNzaW9uSWQmJmUuYWRkKHQuY2xhdWRlU2Vzc2lvbklkKX0pLG4uY29kZXhIaXN0b3J5LmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4gdC5oYXNDb252ZXJzYXRpb24mJiF0Lm1hbmFnZWRCeVdhbmQmJiFlLmhhcyh0LmNsYXVkZVNlc3Npb25JZCl9KX1mdW5jdGlvbiAkdSgpe3JzKCksISRyKCkmJihuLnBvbGxUaW1lcj1zZXRJbnRlcnZhbChqdCwxNjAwKSl9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2Vzc2lvbi10aW1lIik7ZS5sZW5ndGg+MCYmVWEoKX0sM2U0KTtmdW5jdGlvbiBKaSgpe24ud3NSZWNvbm5lY3RUaW1lciYmKGNsZWFyVGltZW91dChuLndzUmVjb25uZWN0VGltZXIpLG4ud3NSZWNvbm5lY3RUaW1lcj1udWxsKX12YXIgSmM9MWU0LEdjPTRlNDtmdW5jdGlvbiBRYygpe1h1KCksbi53c0hlYXJ0YmVhdENoZWNrVGltZXI9c2V0SW50ZXJ2YWwoWnUsSmMpfWZ1bmN0aW9uIFh1KCl7bi53c0hlYXJ0YmVhdENoZWNrVGltZXImJihjbGVhckludGVydmFsKG4ud3NIZWFydGJlYXRDaGVja1RpbWVyKSxuLndzSGVhcnRiZWF0Q2hlY2tUaW1lcj1udWxsKX1mdW5jdGlvbiBadSgpe2lmKCEoIW4ud3N8fG4ud3MucmVhZHlTdGF0ZSE9PVdlYlNvY2tldC5PUEVOKSYmbi5sYXN0V3NNZXNzYWdlQXQpe3ZhciBlPURhdGUubm93KCktbi5sYXN0V3NNZXNzYWdlQXQ7ZT5HYyYmR2koImhlYXJ0YmVhdC1zdGFsZS0iK01hdGgucm91bmQoZS8xZTMpKyJzIil9fWZ1bmN0aW9uIEdpKGUpe2lmKEppKCksbi53cyl7dmFyIHQ9bi53czt0cnl7dC5vbmNsb3NlPW51bGx9Y2F0Y2h7fXRyeXt0Lm9uZXJyb3I9bnVsbH1jYXRjaHt9dHJ5e3Qub25tZXNzYWdlPW51bGx9Y2F0Y2h7fXRyeXt0LmNsb3NlKCl9Y2F0Y2h7fW4ud3M9bnVsbH1uLndzQ29ubmVjdGVkPSExLG4ud3NSZWNvbm5lY3RBdHRlbXB0cz0wLCRyKGUpfWZ1bmN0aW9uIGVzKCl7aWYoIW4ud3NSZWNvbm5lY3RUaW1lciYmIWRvY3VtZW50LmhpZGRlbil7dmFyIGU9bi53c1JlY29ubmVjdEF0dGVtcHRzfHwwLHQ9WzUwMCwxZTMsMmUzLDRlMyw4ZTNdLHI9dFtlPHQubGVuZ3RoP2U6dC5sZW5ndGgtMV07bi53c1JlY29ubmVjdEF0dGVtcHRzPWUrMSxuLndzUmVjb25uZWN0VGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24ud3NSZWNvbm5lY3RUaW1lcj1udWxsLG4uY29uZmlnJiYhbi53cyYmIWRvY3VtZW50LmhpZGRlbiYmJHIoImJhY2tvZmYiKX0scil9fWZ1bmN0aW9uICRyKGUpe2lmKCF3aW5kb3cuV2ViU29ja2V0KXJldHVybiExO2lmKG4ud3Mpe3RyeXtuLndzLmNsb3NlKCl9Y2F0Y2h7fW4ud3M9bnVsbH12YXIgdD13aW5kb3cubG9jYXRpb24ucHJvdG9jb2w9PT0iaHR0cHM6Ij8id3NzOiI6IndzOiIscj10KyIvLyIrd2luZG93LmxvY2F0aW9uLmhvc3QrIi93cyI7dHJ5e3ZhciBpPW5ldyBXZWJTb2NrZXQocik7cmV0dXJuIGkub25vcGVuPWZ1bmN0aW9uKCl7bi53cz1pLG4ud3NDb25uZWN0ZWQ9ITAsbi5sYXN0V3NNZXNzYWdlQXQ9RGF0ZS5ub3coKSxuLndzUmVjb25uZWN0QXR0ZW1wdHM9MCxKaSgpLG4ubGFzdFNlcUJ5U2Vzc2lvbj17fSxRYygpLFRuKG4uc2VsZWN0ZWRJZCksZ3AoKSxncigid3MtcmVjb25uZWN0Iil9LGkub25tZXNzYWdlPWZ1bmN0aW9uKGEpe24ubGFzdFdzTWVzc2FnZUF0PURhdGUubm93KCk7dHJ5e3ZhciB1PUpTT04ucGFyc2UoYS5kYXRhKTtpZih1JiZ1LnR5cGU9PT0icGluZyIpe2lmKG4ud3MmJm4ud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5PUEVOKXRyeXtuLndzLnNlbmQoSlNPTi5zdHJpbmdpZnkoe3R5cGU6InBvbmciLHQ6dS50fSkpfWNhdGNoe31yZXR1cm59aWYodSYmdS50eXBlPT09InJlc3luY19yZXF1aXJlZCImJnUuc2Vzc2lvbklkKXtpZihuLndzJiZuLndzLnJlYWR5U3RhdGU9PT1XZWJTb2NrZXQuT1BFTil0cnl7bi53cy5zZW5kKEpTT04uc3RyaW5naWZ5KHt0eXBlOiJyZXN5bmMiLHNlc3Npb25JZDp1LnNlc3Npb25JZH0pKX1jYXRjaHt9bi5sYXN0U2VxQnlTZXNzaW9ufHwobi5sYXN0U2VxQnlTZXNzaW9uPXt9KSxuLmxhc3RTZXFCeVNlc3Npb25bdS5zZXNzaW9uSWRdPTA7cmV0dXJufWlmKHUmJih1LnR5cGU9PT0iaW5pdCJ8fHUudHlwZT09PSJvdXRwdXQiKSYmdS5zZXNzaW9uSWQmJnR5cGVvZiB1LnNlcT09Im51bWJlciIpe24ubGFzdFNlcUJ5U2Vzc2lvbnx8KG4ubGFzdFNlcUJ5U2Vzc2lvbj17fSk7dmFyIHM9bi5sYXN0U2VxQnlTZXNzaW9uW3Uuc2Vzc2lvbklkXXx8MDtpZih1LnR5cGU9PT0iaW5pdCIpbi5sYXN0U2VxQnlTZXNzaW9uW3Uuc2Vzc2lvbklkXT11LnNlcTtlbHNlIGlmKHUuc2VxPT09cysxKW4ubGFzdFNlcUJ5U2Vzc2lvblt1LnNlc3Npb25JZF09dS5zZXE7ZWxzZSBpZih1LnNlcT5zKzEmJnM+MCl7aWYobi53cyYmbi53cy5yZWFkeVN0YXRlPT09V2ViU29ja2V0Lk9QRU4pdHJ5e24ud3Muc2VuZChKU09OLnN0cmluZ2lmeSh7dHlwZToicmVzeW5jIixzZXNzaW9uSWQ6dS5zZXNzaW9uSWR9KSl9Y2F0Y2h7fW4ubGFzdFNlcUJ5U2Vzc2lvblt1LnNlc3Npb25JZF09MDtyZXR1cm59ZWxzZXtpZih1LnNlcTxzKXJldHVybjtuLmxhc3RTZXFCeVNlc3Npb25bdS5zZXNzaW9uSWRdPXUuc2VxfX0kYyh1KX1jYXRjaHt9fSxpLm9uY2xvc2U9ZnVuY3Rpb24oKXtuLndzPW51bGwsbi53c0Nvbm5lY3RlZD0hMSxYdSgpLGVzKCl9LGkub25lcnJvcj1mdW5jdGlvbigpe2kuY2xvc2UoKX0sITB9Y2F0Y2h7cmV0dXJuIGVzKCksITF9fWZ1bmN0aW9uICRjKGUpe3N3aXRjaChlLnR5cGUpe2Nhc2Uib3V0cHV0IjppZihlLmRhdGEmJmUuc2Vzc2lvbklkJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJpc1Jlc3BvbmRpbmciKSYmKG4uX2xhc3RJc1Jlc3BvbmRpbmd8fChuLl9sYXN0SXNSZXNwb25kaW5nPXt9KSxuLl9sYXN0SXNSZXNwb25kaW5nW2Uuc2Vzc2lvbklkXT0hIWUuZGF0YS5pc1Jlc3BvbmRpbmcpLGUuZGF0YSYmZS5zZXNzaW9uSWQpe3ZhciB0PSEhZS5kYXRhLmluY3JlbWVudGFsLHI9e2lkOmUuc2Vzc2lvbklkfSxpPSExO2lmKCF0JiZlLmRhdGEub3V0cHV0IT09dm9pZCAwJiYoci5vdXRwdXQ9ZS5kYXRhLm91dHB1dCksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicGVybWlzc2lvbkJsb2NrZWQiKSYmKHIucGVybWlzc2lvbkJsb2NrZWQ9ISFlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQpLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInF1ZXVlZE1lc3NhZ2VzIikmJihyLnF1ZXVlZE1lc3NhZ2VzPWUuZGF0YS5xdWV1ZWRNZXNzYWdlc3x8W10sbi5xdWV1ZUVwb2NoKyspLGUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUmJihyLnN0cnVjdHVyZWRTdGF0ZT1lLmRhdGEuc3RydWN0dXJlZFN0YXRlKSxlLmRhdGEuc2Vzc2lvbktpbmQmJihyLnNlc3Npb25LaW5kPWUuZGF0YS5zZXNzaW9uS2luZCksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwidGl0bGUiKSYmKHIudGl0bGU9ZS5kYXRhLnRpdGxlLGk9ITApLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsImRlc2NyaXB0aW9uIikmJihyLmRlc2NyaXB0aW9uPWUuZGF0YS5kZXNjcmlwdGlvbixpPSEwKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJzdW1tYXJ5IikmJihyLnN1bW1hcnk9ZS5kYXRhLnN1bW1hcnkpLGUuZGF0YS5tZXNzYWdlcylyLm1lc3NhZ2VzPWUuZGF0YS5tZXNzYWdlcztlbHNlIGlmKHQmJmUuZGF0YS5sYXN0TWVzc2FnZSl7dmFyIGE9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKFMpe3JldHVybiBTLmlkPT09ZS5zZXNzaW9uSWR9KTtpZihhKXt2YXIgdT1BcnJheS5pc0FycmF5KGEubWVzc2FnZXMpP2EubWVzc2FnZXMuc2xpY2UoKTpbXSxzPWUuZGF0YS5tZXNzYWdlQ291bnR8fDAsbz11Lmxlbmd0aD4wP3VbdS5sZW5ndGgtMV06bnVsbCxsPWUuZGF0YS5sYXN0TWVzc2FnZTtvJiZsLnJvbGUmJm8ucm9sZT09PWwucm9sZT91W3UubGVuZ3RoLTFdPWpmKG8sbCk6dS5sZW5ndGg8cyYmdS5wdXNoKGwpLHIubWVzc2FnZXM9dX19dmFyIGM9dCYmZS5kYXRhLmNodW5rJiYhZS5kYXRhLmxhc3RNZXNzYWdlJiYhci5tZXNzYWdlcyYmci5vdXRwdXQ9PT12b2lkIDAmJiFlLmRhdGEuc3RydWN0dXJlZFN0YXRlJiYhZS5kYXRhLnNlc3Npb25LaW5kO2lmKGMpe2lmKGUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZCE9PXZvaWQgMCl7dmFyIGY9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKFMpe3JldHVybiBTLmlkPT09ZS5zZXNzaW9uSWR9KTtmJiYhIWYucGVybWlzc2lvbkJsb2NrZWQhPSEhZS5kYXRhLnBlcm1pc3Npb25CbG9ja2VkJiYoWChyKSxlLnNlc3Npb25JZD09PW4uc2VsZWN0ZWRJZCYmSnQoKSl9fWVsc2UgaWYoKHIub3V0cHV0IT09dm9pZCAwfHxyLm1lc3NhZ2VzfHx0fHxlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQhPT12b2lkIDB8fHIudGl0bGV8fHIuZGVzY3JpcHRpb24pJiYoWChyKSxpJiZVYSgpLGUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkKSl7dmFyIGQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKFMpe3JldHVybiBTLmlkPT09ZS5zZXNzaW9uSWR9KXx8cjtuLmN1cnJlbnRNZXNzYWdlcz1WZShkLGF0KGQsZC5vdXRwdXQsITEpKSxKdCgpLGQuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fGUuZGF0YS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIj9kcigpOlFpKCl9fWUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiZuLnRlcm1pbmFsJiZlLmRhdGEmJihlLmRhdGEuY2h1bmsmJlFmKGUuc2Vzc2lvbklkKT8obi5sYXN0Q2h1bmtBdD1EYXRlLm5vdygpLG4udGVybWluYWxMaXZlU3RyZWFtU2Vzc2lvbnNbZS5zZXNzaW9uSWRdPSEwLFVuKG4udGVybWluYWwsZS5kYXRhLmNodW5rKSxuLnRlcm1pbmFsU2Vzc2lvbklkPWUuc2Vzc2lvbklkLGUuZGF0YS5vdXRwdXQ/KG4udGVybWluYWxPdXRwdXQ9YnMoX2EoZS5kYXRhLm91dHB1dCkpLG4udGVybWluYWxPdXRwdXRNYXJrZXI9MCk6bi50ZXJtaW5hbE91dHB1dD1icygobi50ZXJtaW5hbE91dHB1dHx8IiIpK19hKGUuZGF0YS5jaHVuaykpLG10KCJvdXRwdXQiKSxkdCgpKTohZS5kYXRhLmluY3JlbWVudGFsJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJvdXRwdXQiKSYmcmkoZS5zZXNzaW9uSWQsZS5kYXRhLm91dHB1dHx8IiIse21vZGU6ImFwcGVuZCJ9KSk7YnJlYWs7Y2FzZSJzdGFydGVkIjpmbigpO2JyZWFrO2Nhc2UiZW5kZWQiOnt2YXIgdj1lLmRhdGEmJmUuZGF0YS5zdGF0dXM/ZS5kYXRhLnN0YXR1czoiZXhpdGVkIixnPWUuZGF0YSYmT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicGVybWlzc2lvbkJsb2NrZWQiKT8hIWUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZDohMSxoPXtpZDplLnNlc3Npb25JZCxzdGF0dXM6dixwZXJtaXNzaW9uQmxvY2tlZDpnfTtlLmRhdGEmJmUuZGF0YS5tZXNzYWdlcyYmKGgubWVzc2FnZXM9ZS5kYXRhLm1lc3NhZ2VzKSxlLmRhdGEmJmUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUmJihoLnN0cnVjdHVyZWRTdGF0ZT1lLmRhdGEuc3RydWN0dXJlZFN0YXRlKSxlLmRhdGEmJmUuZGF0YS5xdWV1ZWRNZXNzYWdlcyYmKGgucXVldWVkTWVzc2FnZXM9ZS5kYXRhLnF1ZXVlZE1lc3NhZ2VzKSxYKGgpLGUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiYoSm4oIkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpLFFpKCEwKSk7dmFyIG09bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKFMpe3JldHVybiBTLmlkPT09ZS5zZXNzaW9uSWR9KSxiPWUuZGF0YSYmZS5kYXRhLmV4aXRDb2RlLEY9YiE9bnVsbCYmYiE9PTAsdz1tJiZtLnN1bW1hcnl8fCIiLEU9bT93YyhtKToiIixBPUY/Ilx1NEVGQlx1NTJBMVx1NUYwMlx1NUUzOFx1N0VEM1x1Njc1RiI6Ilx1NEVGQlx1NTJBMVx1NURGMlx1NUI4Q1x1NjIxMCIseD0iIjt3Pyh4PXcsRSYmIUYmJih4Kz1gCmArRSkpOng9bSYmbS5jb21tYW5kfHxlLnNlc3Npb25JZCxZbihGPyJlcnJvciI6InN1Y2Nlc3MiKSxmZihlLnNlc3Npb25JZCxBLHgpLGtzKGUuc2Vzc2lvbklkKSxjYSgpLChlLnNlc3Npb25JZCE9PW4uc2VsZWN0ZWRJZHx8ZG9jdW1lbnQuaGlkZGVuKSYmb2Eoe3RpdGxlOkEsYm9keTp4LHR5cGU6Rj8id2FybmluZyI6InN1Y2Nlc3MiLGljb246Rj8iISI6Ilx1MjcxMyIsZHVyYXRpb246NmUzLGFjdGlvbkxhYmVsOiJcdTY3RTVcdTc3MEIiLGFjdGlvbjpmdW5jdGlvbigpe1d0KGUuc2Vzc2lvbklkKX19KSxuLm1lc3NhZ2VRdWV1ZT1bXSxuLnBlbmRpbmdNZXNzYWdlcz1bXTt2YXIgST1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oUyl7cmV0dXJuIFMuaWQ9PT1lLnNlc3Npb25JZH0pLF89ZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQ/bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKFMpe3JldHVybiBTLmlkPT09bi5zZWxlY3RlZElkfSk6bnVsbCxWPSEhKEkmJkkuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fF8mJl8uc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIpO1YmJmUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkPyhScygpLGN1KGUuc2Vzc2lvbklkKSk6Vnx8KG4uc3RydWN0dXJlZElucHV0UXVldWU9W10sY3Uobi5zZWxlY3RlZElkKSxzbigpKSxlLnNlc3Npb25JZD09PW4uc2VsZWN0ZWRJZCYmKFZ8fEluKCExKSxuLmN1cnJlbnRUYXNrPW51bGwsSnQoKSksZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQmJklyKCksZm4oKS50aGVuKGZ1bmN0aW9uKCl7bGkoKX0pLGUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiYoVnx8cG4oZS5zZXNzaW9uSWQpKTticmVha31jYXNlImluaXQiOmlmKGUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiZlLmRhdGEpe24uY2hhdFJlbmRlclRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uY2hhdFJlbmRlclRpbWVyKSxuLmNoYXRSZW5kZXJUaW1lcj1udWxsKSxYKGUuZGF0YSk7dmFyIFk9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKFMpe3JldHVybiBTLmlkPT09ZS5zZXNzaW9uSWR9KTtuLmN1cnJlbnRNZXNzYWdlcz1WZShZfHxlLmRhdGEsYXQoWXx8ZS5kYXRhLGUuZGF0YS5vdXRwdXQsITEpKSxkcighMCksSnQoKSx0cygpO3ZhciBMPWUuZGF0YS5vdXRwdXR8fCIiLEI9bi50ZXJtaW5hbFNlc3Npb25JZD09PWUuc2Vzc2lvbklkLFQ9bi50ZXJtaW5hbE91dHB1dHx8IiIsTT1CJiZULmxlbmd0aD4wJiZMLmxlbmd0aD49VC5sZW5ndGgmJkwuc3RhcnRzV2l0aChUKTt0ZChMLGUuc2Vzc2lvbklkLE0/ImFwcGVuZCI6InJlcGxhY2UiKSxncigiaW5pdCIpfWJyZWFrO2Nhc2UidXNhZ2UiOmJyZWFrO2Nhc2UidGFzayI6ZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQmJihuLmN1cnJlbnRUYXNrPWUuZGF0YXx8bnVsbCxKdCgpKSxjZihlLnNlc3Npb25JZCxlLmRhdGF8fG51bGwpLGRhKGUuc2Vzc2lvbklkKSxVYSgpO2JyZWFrO2Nhc2Uic3RhdHVzIjppZihlLnNlc3Npb25JZCYmZS5kYXRhKXt2YXIgaj17aWQ6ZS5zZXNzaW9uSWR9O2lmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInN0YXR1cyIpJiYoai5zdGF0dXM9ZS5kYXRhLnN0YXR1cyksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwiZXhpdENvZGUiKSYmKGouZXhpdENvZGU9ZS5kYXRhLmV4aXRDb2RlKSxlLmRhdGEuc3RydWN0dXJlZFN0YXRlKWouc3RydWN0dXJlZFN0YXRlPWUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGU7ZWxzZSBpZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJzdGF0dXMiKSl7dmFyIGE9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKE4pe3JldHVybiBOLmlkPT09ZS5zZXNzaW9uSWR9KTthJiZhLnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQiJiYoai5zdHJ1Y3R1cmVkU3RhdGU9T2JqZWN0LmFzc2lnbih7fSxhLnN0cnVjdHVyZWRTdGF0ZXx8e30se2luRmxpZ2h0OmUuZGF0YS5zdGF0dXM9PT0icnVubmluZyJ9KSl9aWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicXVldWVkTWVzc2FnZXMiKSYmKGoucXVldWVkTWVzc2FnZXM9ZS5kYXRhLnF1ZXVlZE1lc3NhZ2VzfHxbXSxuLnF1ZXVlRXBvY2grKyksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicGVybWlzc2lvbkJsb2NrZWQiKSYmKGoucGVybWlzc2lvbkJsb2NrZWQ9ISFlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQpLGUuZGF0YS5wZXJtaXNzaW9uUmVxdWVzdCl7ai5wZW5kaW5nRXNjYWxhdGlvbj17c2NvcGU6ZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0LnNjb3BlLHRhcmdldDplLmRhdGEucGVybWlzc2lvblJlcXVlc3QudGFyZ2V0LHJlYXNvbjplLmRhdGEucGVybWlzc2lvblJlcXVlc3QucHJvbXB0fTt2YXIgWj1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oUyl7cmV0dXJuIFMuaWQ9PT1lLnNlc3Npb25JZH0pLG5lPVomJihaLnN1bW1hcnl8fFouY29tbWFuZCl8fGUuc2Vzc2lvbklkLFE9ZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0LnByb21wdHx8Ilx1OTcwMFx1ODk4MVx1Njc0M1x1OTY1MFx1NUJBMVx1NjI3OSIsc2U9ZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0LnRhcmdldCxlZT1uZTtzZT9lZSs9YApgK1ErIiBceEI3ICIrc2U6ZWUrPWAKYCtRLFluKCJtZWRpdW0iKSxkZihlLnNlc3Npb25JZCxlZSksZS5zZXNzaW9uSWQhPT1uLnNlbGVjdGVkSWQmJm9hKHt0aXRsZToiXHU5NzAwXHU4OTgxXHU0RjYwXHU3Njg0XHU2Mzg4XHU2NzQzIixib2R5OmVlLHR5cGU6Indhcm5pbmciLGljb246IiEiLGR1cmF0aW9uOjAsYWN0aW9uTGFiZWw6Ilx1NTNCQlx1NTkwNFx1NzQwNiIsYWN0aW9uOmZ1bmN0aW9uKCl7V3QoZS5zZXNzaW9uSWQpfX0pfWUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZD09PSExJiYoai5wZW5kaW5nRXNjYWxhdGlvbj1udWxsKSxlLmRhdGEuYXBwcm92YWxTdGF0cyYmKGouYXBwcm92YWxTdGF0cz1lLmRhdGEuYXBwcm92YWxTdGF0cyksWChqKSxkYShlLnNlc3Npb25JZCksY2EoKSxlLnNlc3Npb25JZD09PW4uc2VsZWN0ZWRJZCYmKEp0KCksZS5kYXRhLmFwcHJvdmFsU3RhdHMmJnRzKCksai5zdHJ1Y3R1cmVkU3RhdGUmJihqLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodHx8KEpuKCJFbnRlciBcdTUzRDFcdTkwMDEgXHhCNyBTaGlmdCtFbnRlciBcdTYzNjJcdTg4NEMiKSxScygpKSxRaSgpKSl9YnJlYWs7Y2FzZSJub3RpZmljYXRpb24iOmUuZGF0YSYmKGUuZGF0YS5raW5kPT09InVwZGF0ZSI/QnMoZS5kYXRhLmN1cnJlbnR8fCItIixlLmRhdGEubGF0ZXN0fHwiLSIpOmUuZGF0YS5raW5kPT09ImF1dG8tdXBkYXRlLXN0YXJ0Ij95ZihlLmRhdGEuY3VycmVudHx8Ii0iLGUuZGF0YS5sYXRlc3R8fCItIik6KGUuZGF0YS5raW5kPT09ImF1dG8tdXBkYXRlLXJlc3RhcnQifHxlLmRhdGEua2luZD09PSJyZXN0YXJ0IikmJnVuKCkpO2JyZWFrfX1mdW5jdGlvbiBKdCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjdXJyZW50LXRhc2siKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwZXJtaXNzaW9uLWFjdGlvbnMiKSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwZXJtaXNzaW9uLWFjdGlvbnMtbGFiZWwiKTtpZihlKXt2YXIgaT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odil7cmV0dXJuIHYuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpJiZpLnByb3ZpZGVyPT09ImNvZGV4IiYmKHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS5jbGFzc0xpc3QucmVtb3ZlKCJwZXJtaXNzaW9uLWJsb2NrZWQiKSk7dmFyIGE9aSYmaS5wZW5kaW5nRXNjYWxhdGlvbj9pLnBlbmRpbmdFc2NhbGF0aW9uOm51bGwsdT1pJiZpLnByb3ZpZGVyIT09ImNvZGV4Ij9hfHxpLnBlcm1pc3Npb25CbG9ja2VkOiExO2lmKHUpe3ZhciBzPWkmJmkuYXV0b0FwcHJvdmVQZXJtaXNzaW9ucztpZihyKWlmKHMpci50ZXh0Q29udGVudD0iXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU0RTJELi4uIjtlbHNlIGlmKGEpe3ZhciBvPWEucmVhc29ufHwiXHU3QjQ5XHU1Rjg1XHU2Mzg4XHU2NzQzIixsPWEudGFyZ2V0PyIgXHhCNyAiK2EudGFyZ2V0OiIiO3IudGV4dENvbnRlbnQ9bytsfWVsc2Ugci50ZXh0Q29udGVudD0iXHU3QjQ5XHU1Rjg1XHU2Mzg4XHU2NzQzIjtpZih0KXt0LmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3ZhciBjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHByb3ZlLXBlcm1pc3Npb24tYnRuIiksZj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZGVueS1wZXJtaXNzaW9uLWJ0biIpO2MmJmMuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhIXMpLGYmJmYuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhIXMpfWUudGV4dENvbnRlbnQ9IiIsZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLmNsYXNzTGlzdC5yZW1vdmUoInBlcm1pc3Npb24tYmxvY2tlZCIpO3JldHVybn1lLmNsYXNzTGlzdC5yZW1vdmUoInBlcm1pc3Npb24tYmxvY2tlZCIpLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7dmFyIGQ9bi5jdXJyZW50VGFzaztkJiZkLnRpdGxlPyhlLnRleHRDb250ZW50PWQudGl0bGUsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk6KGUudGV4dENvbnRlbnQ9IiIsZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSl9fWZ1bmN0aW9uIHRzKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcHJvdmFsLXN0YXRzIik7aWYoZSl7dmFyIHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09bi5zZWxlY3RlZElkfSkscj10JiZ0LmFwcHJvdmFsU3RhdHM7aWYoIXJ8fHIudG90YWw9PT0wKXtlLmNsYXNzTmFtZT0iYXBwcm92YWwtc3RhdHMgaGlkZGVuIixlLmlubmVySFRNTD0iIjtyZXR1cm59ZS5jbGFzc05hbWU9ImFwcHJvdmFsLXN0YXRzIixlLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLWRpdmlkZXIiPjwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtYmFkZ2UiIGlkPSJhcHByb3ZhbC1zdGF0cy1iYWRnZSIgdGl0bGU9Ilx1NjcyQ1x1NkIyMVx1NEYxQVx1OEJERFx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1N0VERlx1OEJBMSI+PHN2ZyBjbGFzcz0iYXBwcm92YWwtc3RhdHMtaWNvbiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTEyIDIyczgtNCA4LTEwVjVsLTgtMy04IDN2N2MwIDYgOCAxMCA4IDEweiIvPjwvc3ZnPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy10b3RhbCI+JytyLnRvdGFsKyc8L3NwYW4+PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1wb3B1cCIgaWQ9ImFwcHJvdmFsLXN0YXRzLXBvcHVwIj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcG9wdXAtdGl0bGUiPlx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1N0VERlx1OEJBMTwvc3Bhbj4nKyhyLmNvbW1hbmQ+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0soInRlcm1pbmFsIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctbGFiZWwiPlx1NTQ3RFx1NEVFNFx1NjI2N1x1ODg0Qzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWNvdW50Ij4nK3IuY29tbWFuZCsiPC9zcGFuPjwvc3Bhbj4iOiIiKSsoci5maWxlPjA/JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ciPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctaWNvbiI+JytLKCJlZGl0Iix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctbGFiZWwiPlx1NjU4N1x1NEVGNlx1NTE5OVx1NTE2NTwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWNvdW50Ij4nK3IuZmlsZSsiPC9zcGFuPjwvc3Bhbj4iOiIiKSsoci50b29sPjA/JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ciPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctaWNvbiI+JytLKCJ3cmVuY2giLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1MTc2XHU0RUQ2XHU1REU1XHU1MTc3PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrci50b29sKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93IGFwcHJvdmFsLXN0YXRzLXJvdy10b3RhbCI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0soInNpZ21hIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctbGFiZWwiPlx1NTQwOFx1OEJBMTwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWNvdW50Ij4nK3IudG90YWwrIjwvc3Bhbj48L3NwYW4+PC9zcGFuPiI7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIuYXBwcm92YWwtc3RhdHMtYmFkZ2UiKTtpJiYoaS5jbGFzc0xpc3QucmVtb3ZlKCJhcHByb3ZhbC1zdGF0cy1wdWxzZSIpLGkub2Zmc2V0V2lkdGgsaS5jbGFzc0xpc3QuYWRkKCJhcHByb3ZhbC1zdGF0cy1wdWxzZSIpKX19ZnVuY3Rpb24gWGMoKXtpZihZbigibGlnaHQiKSwhIW4uc2VsZWN0ZWRJZCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcHJvdmUtcGVybWlzc2lvbi1idG4iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZW55LXBlcm1pc3Npb24tYnRuIik7ZSYmKGUuZGlzYWJsZWQ9ITApLHQmJih0LmRpc2FibGVkPSEwKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChuLnNlbGVjdGVkSWQpKyIvYXBwcm92ZS1wZXJtaXNzaW9uIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHImJnIuZXJyb3Ipe2soci5lcnJvciwiZXJyb3IiKTtyZXR1cm59WChyKSxKdCgpfSkuY2F0Y2goZnVuY3Rpb24ocil7ayhyJiZyLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTYyNzlcdTUxQzZcdTYzODhcdTY3NDNcdTMwMDIiLCJlcnJvciIpfSkuZmluYWxseShmdW5jdGlvbigpe2UmJihlLmRpc2FibGVkPSExKSx0JiYodC5kaXNhYmxlZD0hMSl9KX19ZnVuY3Rpb24gWmMoKXtpZihZbigibGlnaHQiKSwhIW4uc2VsZWN0ZWRJZCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcHJvdmUtcGVybWlzc2lvbi1idG4iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZW55LXBlcm1pc3Npb24tYnRuIik7ZSYmKGUuZGlzYWJsZWQ9ITApLHQmJih0LmRpc2FibGVkPSEwKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChuLnNlbGVjdGVkSWQpKyIvZGVueS1wZXJtaXNzaW9uIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHImJnIuZXJyb3Ipe2soci5lcnJvciwiZXJyb3IiKTtyZXR1cm59WChyKSxKdCgpfSkuY2F0Y2goZnVuY3Rpb24ocil7ayhyJiZyLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTYyRDJcdTdFRERcdTYzODhcdTY3NDNcdTMwMDIiLCJlcnJvciIpfSkuZmluYWxseShmdW5jdGlvbigpe2UmJihlLmRpc2FibGVkPSExKSx0JiYodC5kaXNhYmxlZD0hMSl9KX19ZnVuY3Rpb24gZWQoKXtpZihuLnNlbGVjdGVkSWQpe3ZhciBlPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihyKXtyZXR1cm4gci5pZD09PW4uc2VsZWN0ZWRJZH0pO2lmKGUmJmUucHJvdmlkZXI9PT0iY29kZXgiKXtrKCJDb2RleCBcdTRGMUFcdThCRERcdTU2RkFcdTVCOUFcdTRFRTUgZnVsbC1hY2Nlc3MgUFRZIFx1NTQyRlx1NTJBOFx1RkYwQ1x1NEUwRFx1NjUyRlx1NjMwMVx1NTIwN1x1NjM2Mlx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1MzAwMiIsImluZm8iKTtyZXR1cm59dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tYXBwcm92ZS10b2dnbGUiKTt0JiYodC5zdHlsZS5vcGFjaXR5PSIwLjUiKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChuLnNlbGVjdGVkSWQpKyIvdG9nZ2xlLWF1dG8tYXBwcm92ZSIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihmdW5jdGlvbihyKXtpZihyJiZyLmVycm9yKXtrKHIuZXJyb3IsImVycm9yIik7cmV0dXJufVgociksbnMoKTt2YXIgaT1yLmF1dG9BcHByb3ZlUGVybWlzc2lvbnM7ayhpPyJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTVGMDBcdTU0MkYiOiJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTUxNzNcdTk1RUQiLCJpbmZvIil9KS5jYXRjaChmdW5jdGlvbihyKXtrKHImJnIubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTIwN1x1NjM2Mlx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1MzAwMiIsImVycm9yIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7dCYmKHQuc3R5bGUub3BhY2l0eT0iIil9KX19ZnVuY3Rpb24gbnMoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by1hcHByb3ZlLXRvZ2dsZSIpLHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09bi5zZWxlY3RlZElkfSk7aWYoUm8odCkpe2UmJmUucGFyZW50Tm9kZSYmZS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGUpO3JldHVybn1pZihlKXt2YXIgcj0iY29tcG9zZXItcGlsbCBjb21wb3Nlci1waWxsLWNoaXAgYXV0by1hcHByb3ZlLWluZGljYXRvciIsaT10JiZ0LmF1dG9BcHByb3ZlUGVybWlzc2lvbnM7aT8oZS5jbGFzc05hbWU9cisiIGFjdGl2ZSIsZS50aXRsZT0iXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU1REYyXHU1NDJGXHU3NTI4IFx1MjAxNCBcdTcwQjlcdTUxRkJcdTUxNzNcdTk1RUQiLGUuaW5uZXJIVE1MPUsoInNoaWVsZENoZWNrIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjcsY2xzOiJjb21wb3Nlci1waWxsLWljb24ifSkrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci1waWxsLWxhYmVsIj5cdTgxRUFcdTUyQTg8L3NwYW4+Jyk6KGUuY2xhc3NOYW1lPXIsZS50aXRsZT0iXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU1REYyXHU1MTczXHU5NUVEIFx1MjAxNCBcdTcwQjlcdTUxRkJcdTVGMDBcdTU0MkYiLGUuaW5uZXJIVE1MPUsoInNoaWVsZCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS43LGNsczoiY29tcG9zZXItcGlsbC1pY29uIn0pKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItcGlsbC1sYWJlbCI+XHU2MjRCXHU1MkE4PC9zcGFuPicpfX1mdW5jdGlvbiB0ZChlLHQscil7cmV0dXJuIG4udGVybWluYWw/cmkodHx8bi5zZWxlY3RlZElkLGUse21vZGU6cnx8ImFwcGVuZCJ9KTohMX1mdW5jdGlvbiBycygpe24ucG9sbFRpbWVyJiYoY2xlYXJJbnRlcnZhbChuLnBvbGxUaW1lciksbi5wb2xsVGltZXI9bnVsbCl9ZnVuY3Rpb24gTm0oZSl7bi5jdXJyZW50Vmlldz1lfHwidGVybWluYWwiLG4uY3VycmVudFZpZXchPT0idGVybWluYWwiJiYoSW4oITEpLEdzKCkpLENpKCksd2EoKTt2YXIgdD1fdCgpO3QmJihuLmN1cnJlbnRNZXNzYWdlcz1WZSh0LGF0KHQsdC5vdXRwdXQsITApKSksZHQoKSxuLmN1cnJlbnRWaWV3PT09InRlcm1pbmFsIiYmKFB0KCEwKSxuLnRlcm1pbmFsJiZuLnRlcm1pbmFsLnJlbWVhc3VyZSYmcmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7bi50ZXJtaW5hbCYmbi50ZXJtaW5hbC5yZW1lYXN1cmUoKX0pKX1mdW5jdGlvbiBkcihlKXtuLnJlbmRlclBlbmRpbmcmJiFlfHwobi5yZW5kZXJQZW5kaW5nPSEwLGU/KGhpKCEwKSxuLnJlbmRlclBlbmRpbmc9ITEpOnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2hpKCExKSxuLnJlbmRlclBlbmRpbmc9ITF9KSl9bi5jaGF0UmVuZGVyVGltZXI9bnVsbDtmdW5jdGlvbiBRaShlKXtpZighKG4uY2hhdFJlbmRlclRpbWVyJiYhZSkpe2lmKG4uY2hhdFJlbmRlclRpbWVyJiZjbGVhclRpbWVvdXQobi5jaGF0UmVuZGVyVGltZXIpLGUpe24uY2hhdFJlbmRlclRpbWVyPW51bGwsZHIoKTtyZXR1cm59dmFyIHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09bi5zZWxlY3RlZElkfSkscj10JiZ0LnN0YXR1cz09PSJydW5uaW5nIiYmdC5zZXNzaW9uS2luZCE9PSJzdHJ1Y3R1cmVkIixpPXI/aHM6eXM7bi5jaGF0UmVuZGVyVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24uY2hhdFJlbmRlclRpbWVyPW51bGw7dmFyIGE9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHUpe3JldHVybiB1LmlkPT09bi5zZWxlY3RlZElkfSk7YSYmKG4uY3VycmVudE1lc3NhZ2VzPVZlKGEsYXQoYSxhLm91dHB1dCwhMCkpKSxkcigpfSxpKX19dmFyICRpPTAsWHI9MCxpcz0wLGZyPTA7ZnVuY3Rpb24gWGkoKXtyZXR1cm4gd2luZG93Ll9fd2FuZElvc05hdGl2ZT09PSEwfWZ1bmN0aW9uIGFzKGUpe2lzPU1hdGgubWF4KGlzLERhdGUubm93KCkrKGV8fDE4MDApKX1mdW5jdGlvbiB1cyhlLHQpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgcj1kb2N1bWVudC5hY3RpdmVFbGVtZW50O1pyKHIpJiZyIT09dHx8YXMoZSl9LDMwKX1mdW5jdGlvbiBuZChlKXtyZXR1cm4gTWF0aC5tYXgod2luZG93LmlubmVySGVpZ2h0fHwwLGUmJmUuaGVpZ2h0fHwwLGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodHx8MCxkb2N1bWVudC5ib2R5JiZkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodHx8MCl9ZnVuY3Rpb24gcmQoZSl7dmFyIHQ9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LHI9TWF0aC5tYXgod2luZG93LmlubmVyV2lkdGh8fDAsZSYmZS53aWR0aHx8MCx0JiZ0LmNsaWVudFdpZHRofHwwKSxpPW5kKGUpO3JldHVybiEkaXx8TWF0aC5hYnMoci0kaSk+OD8oJGk9cixYcj1pKTppPlhyJiYoWHI9aSksTWF0aC5tYXgoMSxNYXRoLnJvdW5kKFhyfHxpfHwxKSl9ZnVuY3Rpb24gaWQoZSx0LHIsaSl7cmV0dXJuIGV8fCFYaSgpPyExOnQ+MHx8aT5yKzF9ZnVuY3Rpb24gem4oZSl7dmFyIHQ9d2luZG93LnZpc3VhbFZpZXdwb3J0O2lmKHQpe3ZhciByPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtpZihyLmNsYXNzTGlzdC50b2dnbGUoImlzLWtleWJvYXJkLW9wZW4iLCEhZSksd2luZG93Ll9fd2FuZEltZU5hdGl2ZSl7ci5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1hcHAtdmlld3BvcnQtdG9wIiwiMHB4Iiksci5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1hcHAtdmlld3BvcnQtaGVpZ2h0IixNYXRoLnJvdW5kKHQuaGVpZ2h0KSsicHgiKTtyZXR1cm59dmFyIGk9cmQodCksYT1NYXRoLm1heCgwLE1hdGgucm91bmQodC5vZmZzZXRUb3B8fDApKSx1PU1hdGgubWF4KDEsTWF0aC5yb3VuZCh0LmhlaWdodCkpOyghZSYmWGkoKXx8aWQoZSxhLHUsaSkpJiYoYT0wLHU9TWF0aC5tYXgodSxpKSksci5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1hcHAtdmlld3BvcnQtdG9wIixhKyJweCIpLHIuc3R5bGUuc2V0UHJvcGVydHkoIi0tYXBwLXZpZXdwb3J0LWhlaWdodCIsdSsicHgiKSwoZXx8KHdpbmRvdy5zY3JvbGxZfHwwKT4wKSYmQWEoKX19ZnVuY3Rpb24gWnIoZSl7aWYoIWUpcmV0dXJuITE7dmFyIHQ9ZS50YWdOYW1lO2lmKHQ9PT0iVEVYVEFSRUEifHx0PT09IlNFTEVDVCIpcmV0dXJuITA7aWYodD09PSJJTlBVVCIpe3ZhciByPShlLmdldEF0dHJpYnV0ZSgidHlwZSIpfHwidGV4dCIpLnRvTG93ZXJDYXNlKCk7cmV0dXJuIS9eKGJ1dHRvbnxjaGVja2JveHxjb2xvcnxmaWxlfGhpZGRlbnxpbWFnZXxyYWRpb3xyYW5nZXxyZXNldHxzdWJtaXQpJC9pLnRlc3Qocil9cmV0dXJuISFlLmlzQ29udGVudEVkaXRhYmxlfWZ1bmN0aW9uIGFkKCl7aWYoISgidmlzdWFsVmlld3BvcnQiaW4gd2luZG93KXx8d2luZG93Ll9fd2FuZFZpZXdwb3J0SGFuZGxlcnNCb3VuZClyZXR1cm47d2luZG93Ll9fd2FuZFZpZXdwb3J0SGFuZGxlcnNCb3VuZD0hMDt2YXIgZT13aW5kb3cudmlzdWFsVmlld3BvcnQsdD1lLmhlaWdodCxyPSExLGk9TWF0aC5tYXgod2luZG93LmlubmVyV2lkdGh8fDAsZS53aWR0aHx8MCksYT1NYXRoLm1heCh3aW5kb3cuaW5uZXJIZWlnaHR8fDAsZS5oZWlnaHR8fDApLHU9W107ZnVuY3Rpb24gcygpe3JldHVybiBNYXRoLm1heCh3aW5kb3cuaW5uZXJIZWlnaHR8fDAsZS5oZWlnaHR8fDApfWZ1bmN0aW9uIG8oKXt2YXIgaD1NYXRoLm1heCh3aW5kb3cuaW5uZXJXaWR0aHx8MCxlLndpZHRofHwwKSxtPXMoKTtpZihNYXRoLmFicyhoLWkpPjgpe2k9aCxhPW07cmV0dXJufW0+YSYmKGE9bSl9ZnVuY3Rpb24gbChoLG0pe3ZhciBiPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQsRj1iPT09aHx8WnIoYiksdz1hLWUuaGVpZ2h0LEU9YS0od2luZG93LmlubmVySGVpZ2h0fHxlLmhlaWdodHx8MCksQT1EYXRlLm5vdygpPGZyO3JldHVybiBBPyEhKEYmJih3PjEyMHx8RT4xMjApKTohIShtPjgwfHxGJiYodz4xMjB8fEU+MTIwKXx8ciYmKHc+ODB8fG0+MzIpKX1mdW5jdGlvbiBjKCl7dS5mb3JFYWNoKGZ1bmN0aW9uKGgpe2NsZWFyVGltZW91dChoKX0pLHU9WzYwLDE4MCwzNjAsNjIwLDkwMF0ubWFwKGZ1bmN0aW9uKGgpe3JldHVybiBzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7em4ocil9LGgpfSl9ZnVuY3Rpb24gZigpe1swLDUwLDEyMCwyMjAsMzYwLDU2MF0uZm9yRWFjaChmdW5jdGlvbihoKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZCgpO3ZhciBtPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTttJiZkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09bSYmZ2kobSl9LGgpfSl9ZnVuY3Rpb24gZCgpe2lmKGUpe3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxtPXdpbmRvdy5pbm5lckhlaWdodC1lLmhlaWdodC1lLm9mZnNldFRvcDtvKCk7dmFyIGI9bChoLG0pLEY9TWF0aC5hYnMoZS5oZWlnaHQtdCk+ODtpZih6bihiKSxiJiYoIXJ8fEYpJiZPcChlLGgpJiZnaShoKSwhciYmYil7dmFyIHc9bi50ZXJtaW5hbEF1dG9Gb2xsb3d8fHJhKCk7aXQoImtleWJvYXJkLW9wZW4iLHtmb3JjZVJlcGxheTohMH0pLHdpbmRvdy5fX3dhbmRJbWVOYXRpdmV8fHNldFRpbWVvdXQoZnVuY3Rpb24oKXt6bighMCl9LDIyMCksYygpLHcmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLnRlcm1pbmFsJiZtdCgiZm9yY2UiKX0sMjIwKX1pZihyJiYhYil7dmFyIEU9ISF3aW5kb3cuX193YW5kSW1lTmF0aXZlO0V8fChhcygyMjAwKSxmcj1EYXRlLm5vdygpKzEyMDAsem4oITEpLEFhKCkpLGMoKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7RXx8KHpuKCExKSxBYSgpKSxpdCgia2V5Ym9hcmQtY2xvc2UiLHtmb3JjZVJlcGxheTohMH0pLG10KCJrZXlib2FyZCIpfSwyMDApfUYmJnI9PT1iJiZpdCgidmlld3BvcnQiKSxyPWIsdD1lLmhlaWdodH19dmFyIHY9bnVsbDtmdW5jdGlvbiBnKCl7diE9PW51bGwmJmNhbmNlbEFuaW1hdGlvbkZyYW1lKHYpLHY9cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7dj1udWxsLGQoKX0pfWUuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixnKSxlLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsZyksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsZnVuY3Rpb24oKXtkb2N1bWVudC52aXNpYmlsaXR5U3RhdGU9PT0idmlzaWJsZSImJihnKCksc2V0VGltZW91dChnLDI0MCksc2V0VGltZW91dChnLDcyMCkpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBhZ2VzaG93IixmdW5jdGlvbihoKXtoJiZoLnBlcnNpc3RlZCYmKGcoKSxzZXRUaW1lb3V0KGcsMjQwKSl9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1c291dCIsZnVuY3Rpb24oaCl7IWh8fCFoLnRhcmdldHx8WnIoaC50YXJnZXQpJiYodXMoMTYwMCxoLnRhcmdldCksWGkoKSYmKGZyPU1hdGgubWF4KGZyLERhdGUubm93KCkrMTIwMCkpLHNldFRpbWVvdXQoZyw4MCksc2V0VGltZW91dChnLDQyMCkpfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXNpbiIsZnVuY3Rpb24oaCl7IWh8fCFoLnRhcmdldHx8IVpyKGgudGFyZ2V0KXx8ZigpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIndhbmQtaW9zLWltZS1zdGF0ZSIsZnVuY3Rpb24oaCl7dmFyIG09aCYmaC5kZXRhaWwmJmguZGV0YWlsLnN0YXRlO209PT0iaGlkZGVuIiYmKGZyPURhdGUubm93KCkrOTAwKSxmKCksYygpfSksZCgpfWZ1bmN0aW9uIHVkKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKGUpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuY2xhc3NOYW1lPSJ0ZXJtaW5hbC1yZXNpemUtaGFuZGxlIix0LmlubmVySFRNTD0iJiM4OTQyOyIsZS5hcHBlbmRDaGlsZCh0KTt2YXIgcj0hMSxpPTAsYT0wO3QuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixmdW5jdGlvbih1KXtyPSEwLGk9dS5jbGllbnRZLGE9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQsZG9jdW1lbnQuYm9keS5zdHlsZS5jdXJzb3I9Im5zLXJlc2l6ZSIsZG9jdW1lbnQuYm9keS5zdHlsZS51c2VyU2VsZWN0PSJub25lIix1LnByZXZlbnREZWZhdWx0KCl9KSxuLnJlc2l6ZU1vdXNlTW92ZT1mdW5jdGlvbih1KXtpZihyKXt2YXIgcz11LmNsaWVudFktaSxvPU1hdGgubWF4KDIwMCxNYXRoLm1pbihhK3Msd2luZG93LmlubmVySGVpZ2h0LTIwMCkpO2Uuc3R5bGUuaGVpZ2h0PW8rInB4IixlLnN0eWxlLmZsZXg9Im5vbmUiLFB0KCl9fSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLG4ucmVzaXplTW91c2VNb3ZlKSxuLnJlc2l6ZU1vdXNlVXA9ZnVuY3Rpb24oKXtyJiYocj0hMSxkb2N1bWVudC5ib2R5LnN0eWxlLmN1cnNvcj0iIixkb2N1bWVudC5ib2R5LnN0eWxlLnVzZXJTZWxlY3Q9IiIsUHQoKSl9LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLG4ucmVzaXplTW91c2VVcCksdC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixmdW5jdGlvbih1KXtyPSEwLGk9dS50b3VjaGVzWzBdLmNsaWVudFksYT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCx1LnByZXZlbnREZWZhdWx0KCl9LHtwYXNzaXZlOiExfSksbi5yZXNpemVUb3VjaE1vdmU9ZnVuY3Rpb24odSl7aWYocil7dmFyIHM9dS50b3VjaGVzWzBdLmNsaWVudFktaSxvPU1hdGgubWF4KDIwMCxNYXRoLm1pbihhK3Msd2luZG93LmlubmVySGVpZ2h0LTIwMCkpO2Uuc3R5bGUuaGVpZ2h0PW8rInB4IixlLnN0eWxlLmZsZXg9Im5vbmUiLFB0KCksdS5wcmV2ZW50RGVmYXVsdCgpfX0sZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixuLnJlc2l6ZVRvdWNoTW92ZSx7cGFzc2l2ZTohMX0pLG4ucmVzaXplVG91Y2hFbmQ9ZnVuY3Rpb24oKXtyJiYocj0hMSxQdCgpKX0sZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLG4ucmVzaXplVG91Y2hFbmQpfX1mdW5jdGlvbiBzcygpe3JldHVybiEhX3QoKX1mdW5jdGlvbiBaaShlKXt2YXIgdD1NYXRoLm1heChvbix3aW5kb3cuaW5uZXJXaWR0aC1kaS1vbikscj1NYXRoLm1heChvbix3aW5kb3cuaW5uZXJIZWlnaHQtZGktb24pO3JldHVybntyaWdodDpNYXRoLm1pbihNYXRoLm1heChvbixlLnJpZ2h0KSx0KSxib3R0b206TWF0aC5taW4oTWF0aC5tYXgob24sZS5ib3R0b20pLHIpfX1mdW5jdGlvbiBvcygpe2lmKG4uam95c3RpY2tCYWxsRWwpe3ZhciBlPVppKG4uam95c3RpY2tQb3N8fHtyaWdodDoxOCxib3R0b206OTZ9KTtuLmpveXN0aWNrQmFsbEVsLnN0eWxlLnJpZ2h0PWUucmlnaHQrInB4IixuLmpveXN0aWNrQmFsbEVsLnN0eWxlLmJvdHRvbT1lLmJvdHRvbSsicHgifX1mdW5jdGlvbiBzZChlLHQpe3ZhciByPVppKHtyaWdodDplLGJvdHRvbTp0fSk7bi5qb3lzdGlja1Bvcz1yO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1iYWxsLXBvcyIsSlNPTi5zdHJpbmdpZnkocikpfWNhdGNoe319ZnVuY3Rpb24gb2QoKXtmdW5jdGlvbiBlKHUscyxvKXtyZXR1cm4nPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJ3anAta2V5Jysobz8iICIrbzoiIikrJyIgZGF0YS1rZXk9IicrdSsnIj4nK3MrIjwvYnV0dG9uPiJ9dmFyIHQ9JzxkaXYgY2xhc3M9IndqcC1kcGFkIj48ZGl2IGNsYXNzPSJ3anAtZHBhZC1yb3ciPicrZSgidXAiLCJcdTIxOTEiLCJ3anAtZGlyIikrJzwvZGl2PjxkaXYgY2xhc3M9IndqcC1kcGFkLXJvdyI+JytlKCJsZWZ0IiwiXHUyMTkwIiwid2pwLWRpciIpK2UoImRvd24iLCJcdTIxOTMiLCJ3anAtZGlyIikrZSgicmlnaHQiLCJcdTIxOTIiLCJ3anAtZGlyIikrIjwvZGl2PjwvZGl2PiIscj0iIixpO2ZvcihpPTA7aTxFYS5sZW5ndGg7aSsrKXIrPWUoRWFbaV0ua2V5LEVhW2ldLmxhYmVsLCIiKTt2YXIgYT0nPGRpdiBjbGFzcz0id2pwLWhlYWRlciI+PHNwYW4gY2xhc3M9IndqcC10aXRsZSI+JytLKCJwYXciLHtzaXplOjEzLHN0cm9rZVdpZHRoOjEuNixjbHM6IndqcC10aXRsZS1pY29uIn0pKyc8c3Bhbj5cdTkwNjVcdTYzQTdcdTk3NjJcdTY3N0Y8L3NwYW4+PC9zcGFuPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0id2pwLWNsb3NlIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RURcdTkwNjVcdTYzQTdcdTk3NjJcdTY3N0YiPicrSygieCIse3NpemU6MTMsc3Ryb2tlV2lkdGg6Mn0pKyI8L2J1dHRvbj48L2Rpdj4iK3QrJzxkaXYgY2xhc3M9IndqcC1ncmlkIHdqcC1mbmtleXMiPicrcisiPC9kaXY+IjtyZXR1cm4gYX1mdW5jdGlvbiBsZCgpe2lmKCFuLmpveXN0aWNrUm9vdEVsKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlLmNsYXNzTmFtZT0id2FuZC1qb3lzdGljay1yb290Ijt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTmFtZT0id2FuZC1qb3lzdGljay1iYWNrZHJvcCIsZS5hcHBlbmRDaGlsZCh0KTt2YXIgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyLmNsYXNzTmFtZT0id2FuZC1qb3lzdGljay1wYW5lbCIsci5pbm5lckhUTUw9b2QoKSxyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixoZCksZS5hcHBlbmRDaGlsZChyKTt2YXIgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmNsYXNzTmFtZT0id2FuZC1qb3lzdGljay1iYWxsIixpLnNldEF0dHJpYnV0ZSgicm9sZSIsImJ1dHRvbiIpLGkuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIiwiV2FuZCBcdTkwNjVcdTYzQTdcdTk3NjJcdTY3N0YiKSxpLnNldEF0dHJpYnV0ZSgidGl0bGUiLCJcdTcwQjlcdTUxRkJcdTYyNTNcdTVGMDBcdTkwNjVcdTYzQTdcdTk3NjJcdTY3N0ZcdUZGMENcdTYyRDZcdTUyQThcdTUzRUZcdTc5RkJcdTUyQThcdTRGNERcdTdGNkUiKSxpLmlubmVySFRNTD1LKCJwYXciLHtzaXplOjI1LHN0cm9rZVdpZHRoOjEuNixjbHM6IndhbmQtam95c3RpY2stbG9nbyJ9KSxlLmFwcGVuZENoaWxkKGkpLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSksbi5qb3lzdGlja1Jvb3RFbD1lLG4uam95c3RpY2tCYWNrZHJvcEVsPXQsbi5qb3lzdGlja1BhbmVsRWw9cixuLmpveXN0aWNrQmFsbEVsPWksb3MoKSxpLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIixjZCksaS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oYSl7YS5wcmV2ZW50RGVmYXVsdCgpLGEuc3RvcFByb3BhZ2F0aW9uKCl9KSx0LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIixmdW5jdGlvbihhKXtuLmpveXN0aWNrUGlubmVkT3BlbiYmbi5qb3lzdGlja0dlc3R1cmU9PW51bGwmJihhLnByZXZlbnREZWZhdWx0KCkscHIoKSl9KSx0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihhKXthLnByZXZlbnREZWZhdWx0KCksYS5zdG9wUHJvcGFnYXRpb24oKX0pLG4uam95c3RpY2tSZXNpemVIYW5kbGVyPWZ1bmN0aW9uKCl7b3MoKX0sd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsbi5qb3lzdGlja1Jlc2l6ZUhhbmRsZXIpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvcmllbnRhdGlvbmNoYW5nZSIsbi5qb3lzdGlja1Jlc2l6ZUhhbmRsZXIpLGZzKCl9fWZ1bmN0aW9uIGNkKGUpe2lmKHNzKCkmJiEoKGUucG9pbnRlclR5cGU9PT0ibW91c2UifHxlLnBvaW50ZXJUeXBlPT09InBlbiIpJiZlLmJ1dHRvbiE9PTApJiZuLmpveXN0aWNrUG9pbnRlcklkPT09bnVsbCl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIHQ9ZS5wb2ludGVyVHlwZT09PSJtb3VzZSJ8fGUucG9pbnRlclR5cGU9PT0icGVuIjtuLmpveXN0aWNrUG9pbnRlcklkPWUucG9pbnRlcklkLG4uam95c3RpY2tQcmVzc1N0YXJ0PXt4OmUuY2xpZW50WCx5OmUuY2xpZW50WSx0OkRhdGUubm93KCl9LG4uam95c3RpY2tHZXN0dXJlPSJwZW5kaW5nIjt0cnl7bi5qb3lzdGlja0JhbGxFbC5zZXRQb2ludGVyQ2FwdHVyZShlLnBvaW50ZXJJZCl9Y2F0Y2h7fXR8fChuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24uam95c3RpY2tHZXN0dXJlPT09InBlbmRpbmciJiZscygpfSxaZikpLG4uam95c3RpY2tNb3ZlSGFuZGxlcj1kZCxuLmpveXN0aWNrVXBIYW5kbGVyPWZkLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIixuLmpveXN0aWNrTW92ZUhhbmRsZXIpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsbi5qb3lzdGlja1VwSGFuZGxlciksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsbi5qb3lzdGlja1VwSGFuZGxlcil9fWZ1bmN0aW9uIGxzKCl7bi5qb3lzdGlja0dlc3R1cmU9Im1vdmUiLG4uam95c3RpY2tQaW5uZWRPcGVuJiZwcigpLG4uam95c3RpY2tCYWxsRWwmJm4uam95c3RpY2tCYWxsRWwuY2xhc3NMaXN0LmFkZCgiZHJhZ2dpbmciKSxuLmpveXN0aWNrQmFja2Ryb3BFbCYmbi5qb3lzdGlja0JhY2tkcm9wRWwuY2xhc3NMaXN0LmFkZCgiYWN0aXZlIil9ZnVuY3Rpb24gY3MoZSx0KXtpZihuLmpveXN0aWNrQmFsbEVsKXt2YXIgcj1aaSh7cmlnaHQ6d2luZG93LmlubmVyV2lkdGgtZS1kaS8yLGJvdHRvbTp3aW5kb3cuaW5uZXJIZWlnaHQtdC1kaS8yfSk7bi5qb3lzdGlja0JhbGxFbC5zdHlsZS5yaWdodD1yLnJpZ2h0KyJweCIsbi5qb3lzdGlja0JhbGxFbC5zdHlsZS5ib3R0b209ci5ib3R0b20rInB4In19ZnVuY3Rpb24gZGQoZSl7aWYoIShlLnBvaW50ZXJJZCE9PW4uam95c3RpY2tQb2ludGVySWR8fCFuLmpveXN0aWNrQmFsbEVsKSl7aWYoZS5wcmV2ZW50RGVmYXVsdCgpLG4uam95c3RpY2tHZXN0dXJlPT09Im1vdmUiKXtjcyhlLmNsaWVudFgsZS5jbGllbnRZKTtyZXR1cm59aWYobi5qb3lzdGlja0dlc3R1cmU9PT0icGVuZGluZyIpe3ZhciB0PWUuY2xpZW50WC1uLmpveXN0aWNrUHJlc3NTdGFydC54LHI9ZS5jbGllbnRZLW4uam95c3RpY2tQcmVzc1N0YXJ0Lnk7TWF0aC5zcXJ0KHQqdCtyKnIpPD1lcHx8KGUucG9pbnRlclR5cGU9PT0ibW91c2UifHxlLnBvaW50ZXJUeXBlPT09InBlbiI/KGxzKCksY3MoZS5jbGllbnRYLGUuY2xpZW50WSkpOihuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXImJihjbGVhclRpbWVvdXQobi5qb3lzdGlja0xvbmdQcmVzc1RpbWVyKSxuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXI9bnVsbCksbi5qb3lzdGlja0dlc3R1cmU9ImNhbmNlbGxlZCIpKX19fWZ1bmN0aW9uIGZkKGUpe2lmKGUucG9pbnRlcklkPT09bi5qb3lzdGlja1BvaW50ZXJJZCl7bi5qb3lzdGlja0xvbmdQcmVzc1RpbWVyJiYoY2xlYXJUaW1lb3V0KG4uam95c3RpY2tMb25nUHJlc3NUaW1lciksbi5qb3lzdGlja0xvbmdQcmVzc1RpbWVyPW51bGwpO3ZhciB0PW4uam95c3RpY2tHZXN0dXJlO2lmKHQ9PT0icGVuZGluZyIpe3ZhciByPWUuY2xpZW50WC1uLmpveXN0aWNrUHJlc3NTdGFydC54LGk9ZS5jbGllbnRZLW4uam95c3RpY2tQcmVzc1N0YXJ0Lnk7TWF0aC5zcXJ0KHIqcitpKmkpPD10cCYmbWQoKX1lbHNlIGlmKHQ9PT0ibW92ZSIpe3ZhciBhPW4uam95c3RpY2tCYWxsRWw/bi5qb3lzdGlja0JhbGxFbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTpudWxsO2EmJnNkKHdpbmRvdy5pbm5lcldpZHRoLWEucmlnaHQsd2luZG93LmlubmVySGVpZ2h0LWEuYm90dG9tKX1kcygpfX1mdW5jdGlvbiBkcygpe2lmKG4uam95c3RpY2tMb25nUHJlc3NUaW1lciYmKGNsZWFyVGltZW91dChuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXIpLG4uam95c3RpY2tMb25nUHJlc3NUaW1lcj1udWxsKSxuLmpveXN0aWNrQmFsbEVsJiZuLmpveXN0aWNrUG9pbnRlcklkIT09bnVsbCl0cnl7bi5qb3lzdGlja0JhbGxFbC5yZWxlYXNlUG9pbnRlckNhcHR1cmUobi5qb3lzdGlja1BvaW50ZXJJZCl9Y2F0Y2h7fW4uam95c3RpY2tNb3ZlSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIixuLmpveXN0aWNrTW92ZUhhbmRsZXIpLG4uam95c3RpY2tNb3ZlSGFuZGxlcj1udWxsKSxuLmpveXN0aWNrVXBIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixuLmpveXN0aWNrVXBIYW5kbGVyKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVyY2FuY2VsIixuLmpveXN0aWNrVXBIYW5kbGVyKSxuLmpveXN0aWNrVXBIYW5kbGVyPW51bGwpLG4uam95c3RpY2tCYWxsRWwmJm4uam95c3RpY2tCYWxsRWwuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZ2dpbmciKSxuLmpveXN0aWNrQmFja2Ryb3BFbCYmIW4uam95c3RpY2tQaW5uZWRPcGVuJiZuLmpveXN0aWNrQmFja2Ryb3BFbC5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSxuLmpveXN0aWNrUG9pbnRlcklkPW51bGwsbi5qb3lzdGlja0dlc3R1cmU9bnVsbCxuLmpveXN0aWNrUHJlc3NTdGFydD1udWxsfWZ1bmN0aW9uIHBkKGUpe2lmKGU9PT0iY3RybCJ8fGU9PT0iYWx0Inx8ZT09PSJzaGlmdCIpe24ubW9kaWZpZXJzW2VdPSFuLm1vZGlmaWVyc1tlXSx2cigpO3JldHVybn12YXIgdD1fdCgpO2lmKHQmJnVlKHQpKXsoZT09PSJjdHJsX2MifHxlPT09ImVzY2FwZSIpJiZ2ZCh0LGUpLHBpKCksdnIoKTtyZXR1cm59dmFyIHI9UXMoZSx7Y3RybDpuLm1vZGlmaWVycy5jdHJsLGFsdDpuLm1vZGlmaWVycy5hbHQsc2hpZnQ6bi5tb2RpZmllcnMuc2hpZnR9KTtyJiZKcyhyLGUpLHBpKCksdnIoKSxkcCgpfWZ1bmN0aW9uIHZkKGUsdCl7IWV8fCFlLmlkfHxmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrZS5pZCsiL21lc3NhZ2VzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6IiIsaW50ZXJydXB0OiEwLHByZXNlcnZlUXVldWU6ITB9KX0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIub2s/ci5qc29uKCk6ci5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57fX0pLnRoZW4oZnVuY3Rpb24oaSl7dGhyb3cgbmV3IEVycm9yKGkmJmkuZXJyb3J8fCJcdTRFMkRcdTY1QURcdTU5MzFcdThEMjUgKGtleT0iK3QrIikiKX0pfSkudGhlbihmdW5jdGlvbihyKXtpZihyJiZyLmlkJiYoWChyKSxyLmlkPT09bi5zZWxlY3RlZElkKSl7dmFyIGk9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09ci5pZH0pfHxyO24uY3VycmVudE1lc3NhZ2VzPVZlKGksYXQoaSxyLm91dHB1dCwhMSkpLGRyKCEwKSx0eXBlb2Yga3Q9PSJmdW5jdGlvbiImJmt0KCl9fSkuY2F0Y2goZnVuY3Rpb24ocil7ciYmci5tZXNzYWdlJiZjb25zb2xlLmRlYnVnKCJbd2FuZF0gam95c3RpY2sgaW50ZXJydXB0IG5vLW9wOiIsci5tZXNzYWdlKX0pfWZ1bmN0aW9uIG1kKCl7bi5qb3lzdGlja1Bpbm5lZE9wZW4/cHIoKTpnZCgpfWZ1bmN0aW9uIGdkKCl7aWYoISghbi5qb3lzdGlja1BhbmVsRWx8fCFuLmpveXN0aWNrQmFsbEVsKSl7bi5qb3lzdGlja1Bpbm5lZE9wZW49ITA7dmFyIGU9bi5qb3lzdGlja0JhbGxFbC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtuLmpveXN0aWNrUGFuZWxFbC5zdHlsZS5yaWdodD1NYXRoLm1heChvbix3aW5kb3cuaW5uZXJXaWR0aC1lLnJpZ2h0KSsicHgiLG4uam95c3RpY2tQYW5lbEVsLnN0eWxlLmJvdHRvbT1NYXRoLm1heChvbix3aW5kb3cuaW5uZXJIZWlnaHQtZS50b3ArMTApKyJweCIsbi5qb3lzdGlja1BhbmVsRWwuY2xhc3NMaXN0LmFkZCgiYWN0aXZlIiksbi5qb3lzdGlja0JhbGxFbC5jbGFzc0xpc3QuYWRkKCJwYW5lbC1vcGVuIiksbi5qb3lzdGlja0JhY2tkcm9wRWwmJm4uam95c3RpY2tCYWNrZHJvcEVsLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpLHZyKCl9fWZ1bmN0aW9uIHByKCl7bi5qb3lzdGlja1Bpbm5lZE9wZW49ITEsbi5qb3lzdGlja1BhbmVsRWwmJm4uam95c3RpY2tQYW5lbEVsLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLG4uam95c3RpY2tCYWxsRWwmJm4uam95c3RpY2tCYWxsRWwuY2xhc3NMaXN0LnJlbW92ZSgicGFuZWwtb3BlbiIpLG4uam95c3RpY2tCYWNrZHJvcEVsJiZuLmpveXN0aWNrR2VzdHVyZT09bnVsbCYmbi5qb3lzdGlja0JhY2tkcm9wRWwuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIil9ZnVuY3Rpb24gdnIoKXtuLmpveXN0aWNrUGFuZWxFbCYmWyJjdHJsIiwiYWx0Il0uZm9yRWFjaChmdW5jdGlvbihlKXt2YXIgdD1uLmpveXN0aWNrUGFuZWxFbC5xdWVyeVNlbGVjdG9yKCcud2pwLW1vZFtkYXRhLWtleT0iJytlKyciXScpO3QmJnQuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIiwhIW4ubW9kaWZpZXJzW2VdKX0pfWZ1bmN0aW9uIGhkKGUpe3ZhciB0PWUudGFyZ2V0JiZlLnRhcmdldC5jbG9zZXN0P2UudGFyZ2V0LmNsb3Nlc3QoIi53anAtY2xvc2UiKTpudWxsO2lmKHQpe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLHByKCk7cmV0dXJufXZhciByPWUudGFyZ2V0JiZlLnRhcmdldC5jbG9zZXN0P2UudGFyZ2V0LmNsb3Nlc3QoIi53anAta2V5Iik6bnVsbDtpZihyKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgaT1yLmdldEF0dHJpYnV0ZSgiZGF0YS1rZXkiKTtpJiZwZChpKX19ZnVuY3Rpb24gZnMoKXt2YXIgZT1uLmpveXN0aWNrUm9vdEVsO2lmKGUpe3ZhciB0PXNzKCk7ZS5jbGFzc0xpc3QudG9nZ2xlKCJ2aXNpYmxlIix0KSx0fHwoKG4uam95c3RpY2tQb2ludGVySWQhPT1udWxsfHxuLmpveXN0aWNrR2VzdHVyZSkmJmRzKCksbi5qb3lzdGlja1Bpbm5lZE9wZW4mJnByKCksbi5qb3lzdGlja0JhY2tkcm9wRWwmJm4uam95c3RpY2tCYWNrZHJvcEVsLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpKX19ZnVuY3Rpb24geWQoKXtuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXImJihjbGVhclRpbWVvdXQobi5qb3lzdGlja0xvbmdQcmVzc1RpbWVyKSxuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXI9bnVsbCksbi5qb3lzdGlja01vdmVIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLG4uam95c3RpY2tNb3ZlSGFuZGxlciksbi5qb3lzdGlja01vdmVIYW5kbGVyPW51bGwpLG4uam95c3RpY2tVcEhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLG4uam95c3RpY2tVcEhhbmRsZXIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLG4uam95c3RpY2tVcEhhbmRsZXIpLG4uam95c3RpY2tVcEhhbmRsZXI9bnVsbCksbi5qb3lzdGlja1Jlc2l6ZUhhbmRsZXImJih3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixuLmpveXN0aWNrUmVzaXplSGFuZGxlciksd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm9yaWVudGF0aW9uY2hhbmdlIixuLmpveXN0aWNrUmVzaXplSGFuZGxlciksbi5qb3lzdGlja1Jlc2l6ZUhhbmRsZXI9bnVsbCksbi5qb3lzdGlja1Jvb3RFbCYmbi5qb3lzdGlja1Jvb3RFbC5wYXJlbnROb2RlJiZuLmpveXN0aWNrUm9vdEVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobi5qb3lzdGlja1Jvb3RFbCksbi5qb3lzdGlja1Jvb3RFbD1udWxsLG4uam95c3RpY2tQYW5lbEVsPW51bGwsbi5qb3lzdGlja0JhY2tkcm9wRWw9bnVsbCxuLmpveXN0aWNrQmFsbEVsPW51bGwsbi5qb3lzdGlja1BvaW50ZXJJZD1udWxsLG4uam95c3RpY2tHZXN0dXJlPW51bGwsbi5qb3lzdGlja1ByZXNzU3RhcnQ9bnVsbCxuLmpveXN0aWNrUGlubmVkT3Blbj0hMX1mdW5jdGlvbiBiZCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZihlKXt2YXIgdD0hTmUoKTtuLnJlc2l6ZUhhbmRsZXI9ZnVuY3Rpb24oKXtQdCghMCk7dmFyIHI9IU5lKCk7dCE9PXImJih0PXIsIXImJm4uc2lkZWJhclBpbm5lZCYmbi5zZXNzaW9uc0RyYXdlck9wZW4/KG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSExLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITEpLFRyKCkpOnImJm4uc2lkZWJhclBpbm5lZCYmIW4uc2Vzc2lvbnNEcmF3ZXJPcGVuJiYobi5zZXNzaW9uc0RyYXdlck9wZW49ITAsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMCksVHIoKSkpfSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixuLnJlc2l6ZUhhbmRsZXIpLHdpbmRvdy52aXN1YWxWaWV3cG9ydCYmKG4udmlzdWFsVmlld3BvcnRIYW5kbGVyPWZ1bmN0aW9uKCl7UHQoITApfSx3aW5kb3cudmlzdWFsVmlld3BvcnQuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixuLnZpc3VhbFZpZXdwb3J0SGFuZGxlcikpLG4udmlzaWJpbGl0eUhhbmRsZXI9ZnVuY3Rpb24oKXtkb2N1bWVudC5oaWRkZW58fGl0KCJ2aXNpYmlsaXR5Iix7Zm9yY2VSZXBsYXk6ITB9KX0sZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsbi52aXNpYmlsaXR5SGFuZGxlciksbi5vcmllbnRhdGlvbkhhbmRsZXI9ZnVuY3Rpb24oKXtpdCgib3JpZW50YXRpb24iLHtmb3JjZVJlcGxheTohMH0pfSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLG4ub3JpZW50YXRpb25IYW5kbGVyKSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtQdCghMCl9KX19ZnVuY3Rpb24gRWQoKXtuLnRlcm1pbmFsSGVhbHRoVGltZXJ8fChuLnRlcm1pbmFsSGVhbHRoVGltZXI9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtpZighKCFuLnRlcm1pbmFsfHxuLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsInx8ZG9jdW1lbnQuaGlkZGVuKSl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHUpe3JldHVybiB1LmlkPT09bi5zZWxlY3RlZElkfSk7aWYoISghZXx8ZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIikpe2l0KCJoZWFsdGgiKTt2YXIgdD1EYXRlLm5vdygpLHI9bi5sYXN0Q2h1bmtBdD4wJiZ0LW4ubGFzdENodW5rQXQ+MzAwLGk9dC1uLmxhc3RUZXJtaW5hbFJlc3luY0F0PjNlNCxhPW4ubGFzdENodW5rQXQ+bi5sYXN0VGVybWluYWxSZXN5bmNBdDtpJiZhJiYocnx8ZS5zdGF0dXMhPT0icnVubmluZyIpJiZuLnRlcm1pbmFsT3V0cHV0JiZrbigpfX19LDVlMykpfWZ1bmN0aW9uIEZkKCl7bi50ZXJtaW5hbEhlYWx0aFRpbWVyJiYoY2xlYXJJbnRlcnZhbChuLnRlcm1pbmFsSGVhbHRoVGltZXIpLG4udGVybWluYWxIZWFsdGhUaW1lcj1udWxsKX1mdW5jdGlvbiBtcigpe0ZkKCksbi5yZXNpemVUaW1lciYmKGNsZWFyVGltZW91dChuLnJlc2l6ZVRpbWVyKSxuLnJlc2l6ZVRpbWVyPW51bGwpLG4ucmVzaXplT2JzZXJ2ZXImJihuLnJlc2l6ZU9ic2VydmVyLmRpc2Nvbm5lY3QoKSxuLnJlc2l6ZU9ic2VydmVyPW51bGwpLG4ucmVzaXplSGFuZGxlciYmKHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLG4ucmVzaXplSGFuZGxlciksbi5yZXNpemVIYW5kbGVyPW51bGwpLG4udmlzdWFsVmlld3BvcnRIYW5kbGVyJiZ3aW5kb3cudmlzdWFsVmlld3BvcnQmJih3aW5kb3cudmlzdWFsVmlld3BvcnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicmVzaXplIixuLnZpc3VhbFZpZXdwb3J0SGFuZGxlciksbi52aXN1YWxWaWV3cG9ydEhhbmRsZXI9bnVsbCksbi52aXNpYmlsaXR5SGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLG4udmlzaWJpbGl0eUhhbmRsZXIpLG4udmlzaWJpbGl0eUhhbmRsZXI9bnVsbCksbi5vcmllbnRhdGlvbkhhbmRsZXImJih3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLG4ub3JpZW50YXRpb25IYW5kbGVyKSxuLm9yaWVudGF0aW9uSGFuZGxlcj1udWxsKSxbWyJtb3VzZW1vdmUiLCJyZXNpemVNb3VzZU1vdmUiXSxbIm1vdXNldXAiLCJyZXNpemVNb3VzZVVwIl0sWyJ0b3VjaG1vdmUiLCJyZXNpemVUb3VjaE1vdmUiXSxbInRvdWNoZW5kIiwicmVzaXplVG91Y2hFbmQiXV0uZm9yRWFjaChmdW5jdGlvbihhKXtuW2FbMV1dJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcihhWzBdLG5bYVsxXV0pLG5bYVsxXV09bnVsbCl9KSxWbigpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZihuLnRlcm1pbmFsVmlld3BvcnRFbCYmKG4udGVybWluYWxWaWV3cG9ydFNjcm9sbEhhbmRsZXImJm4udGVybWluYWxWaWV3cG9ydEVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsbi50ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlciksbi50ZXJtaW5hbFZpZXdwb3J0VG91Y2hIYW5kbGVyJiZuLnRlcm1pbmFsVmlld3BvcnRFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLG4udGVybWluYWxWaWV3cG9ydFRvdWNoSGFuZGxlciksbi50ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXImJm4udGVybWluYWxWaWV3cG9ydEVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLG4udGVybWluYWxWaWV3cG9ydFRvdWNoU3RhcnRIYW5kbGVyKSksZSYmKG4udGVybWluYWxXaGVlbEhhbmRsZXImJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcigid2hlZWwiLG4udGVybWluYWxXaGVlbEhhbmRsZXIpLG4udGVybWluYWxDbGlja0hhbmRsZXImJmUucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLG4udGVybWluYWxDbGlja0hhbmRsZXIpKSxuLnRlcm1pbmFsVmlld3BvcnRFbD1udWxsLG4udGVybWluYWxWaWV3cG9ydFNjcm9sbEhhbmRsZXI9bnVsbCxuLnRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXI9bnVsbCxuLnRlcm1pbmFsVmlld3BvcnRUb3VjaFN0YXJ0SGFuZGxlcj1udWxsLG4udGVybWluYWxXaGVlbEhhbmRsZXI9bnVsbCxuLnRlcm1pbmFsQ2xpY2tIYW5kbGVyPW51bGwsbi50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lciYmKGNsZWFyVGltZW91dChuLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyKSxuLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyPW51bGwpLG4udGVybWluYWxTY3JvbGxiYXJFbCYmbi50ZXJtaW5hbFNjcm9sbGJhckVsLnBhcmVudE5vZGUmJm4udGVybWluYWxTY3JvbGxiYXJFbC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKG4udGVybWluYWxTY3JvbGxiYXJFbCksbi50ZXJtaW5hbFNjcm9sbGJhckVsPW51bGwsbi50ZXJtaW5hbFNjcm9sbGJhclRodW1iRWw9bnVsbCxuLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITEsbi50ZXJtaW5hbFNjcm9sbGJhclJhZlBlbmRpbmc9ITEsbi50ZXJtaW5hbCYmKG4udGVybWluYWwuZGVzdHJveSgpLG4udGVybWluYWw9bnVsbCksZSlmb3IodmFyIHQ9ZS5xdWVyeVNlbGVjdG9yQWxsKCIudGVybWluYWwtc2Nyb2xsLXdyYXAiKSxyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBpPXRbcl07aS5wYXJlbnROb2RlPT09ZSYmZS5yZW1vdmVDaGlsZChpKX11YSgpLG4uc3luY091dHB1dEJ1ZmZlcj1udWxsLG4uc3luY091dHB1dERlYWRsaW5lPTAsbi5zeW5jRnJhbWluZ1Jlc2lkdWU9ITEsbi50ZXJtaW5hbFNlc3Npb25JZD1udWxsLG4udGVybWluYWxPdXRwdXQ9IiIsbi50ZXJtaW5hbE91dHB1dE1hcmtlcj0wLG4udGVybWluYWxBdXRvRm9sbG93PSEwLG4uc2hvd1Rlcm1pbmFsSnVtcFRvQm90dG9tPSExLGR0KCksbi5zb2Z0UmVzeW5jVGltZXImJihjbGVhclRpbWVvdXQobi5zb2Z0UmVzeW5jVGltZXIpLG4uc29mdFJlc3luY1RpbWVyPW51bGwpLG4uX3Jlc3luY0NodW5rVGFpbFRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uX3Jlc3luY0NodW5rVGFpbFRpbWVyKSxuLl9yZXN5bmNDaHVua1RhaWxUaW1lcj1udWxsKSxuLl9yZXN5bmNDaHVua0xhc3RBdD0wLG4uX3Jlc3luY1N0YXRzV2luZG93U3RhcnQ9MCxuLl9yZXN5bmNTdGF0c0NvdW50PTAsbi5fcmVzeW5jTGFzdFdhcm5BdD0wLG4uX3Jlc3luY0luUHJvZ3Jlc3M9ITEsbi5sYXN0UmVzaXplPXtjb2xzOjAscm93czowfSx5ZCgpfWZ1bmN0aW9uIGVpKGUsdCl7aWYobi5zZWxlY3RlZElkKXt2YXIgcj1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZighKCFyfHxyLnN0YXR1cyE9PSJydW5uaW5nIikmJiF1ZShyKSl7ZT4yNTYmJihlPTI1NiksdD4xNjAmJih0PTE2MCk7dmFyIGk9e2NvbHM6ZSxyb3dzOnR9OyhuLmxhc3RSZXNpemUuY29scyE9PWkuY29sc3x8bi5sYXN0UmVzaXplLnJvd3MhPT1pLnJvd3MpJiYobi5sYXN0UmVzaXplPWksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIituLnNlbGVjdGVkSWQrIi9yZXNpemUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGkpfSkuY2F0Y2goZnVuY3Rpb24oKXt9KSl9fX1mdW5jdGlvbiBpdChlLHQpe2lmKCFuLnRlcm1pbmFsKXJldHVybiExO3ZhciByPXR8fHt9LGk9ci5mb3JjZVJlcGxheT09PSEwLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKCFhfHxhLm9mZnNldFdpZHRoPT09MHx8YS5vZmZzZXRIZWlnaHQ9PT0wKXJldHVybiBncihlfHwiZml0LXJldHJ5Iix7Zm9yY2VSZXBsYXk6aX0pLCExO3ZhciB1PW4udGVybWluYWxBdXRvRm9sbG93fHxyYSgpLHM9bi50ZXJtaW5hbC5jb2xzLG89bi50ZXJtaW5hbC5yb3dzO3JldHVybiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtpZihuLnRlcm1pbmFsKXt0eXBlb2Ygbi50ZXJtaW5hbC5yZW1lYXN1cmU9PSJmdW5jdGlvbiImJm4udGVybWluYWwucmVtZWFzdXJlKCksZWkobi50ZXJtaW5hbC5jb2xzLG4udGVybWluYWwucm93cyk7dmFyIGw9bi50ZXJtaW5hbC5jb2xzIT09c3x8bi50ZXJtaW5hbC5yb3dzIT09bzshbCYmaSYmbi50ZXJtaW5hbE91dHB1dCYma24oe3NraXBGaXQ6ITB9KSx1JiZtdCgiZm9yY2UiKX19KX0pLCEwfWZ1bmN0aW9uIGdyKGUsdCl7aWYoIW4udGVybWluYWwpcmV0dXJuO3ZhciByPXR8fHt9LGk9ci5mb3JjZVJlcGxheSE9PSExLGE9MCx1PTg7ZnVuY3Rpb24gcygpe2lmKG4udGVybWluYWwpe3ZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZihvJiZvLm9mZnNldEhlaWdodCxvJiZvLm9mZnNldFdpZHRoPjAmJm8ub2Zmc2V0SGVpZ2h0PjApe2l0KGUse2ZvcmNlUmVwbGF5Oml9KTtyZXR1cm59KythPj11fHwoYTw9ND9yZXF1ZXN0QW5pbWF0aW9uRnJhbWUocyk6c2V0VGltZW91dChzLDMyKSl9fXMoKX1mdW5jdGlvbiBQdChlKXtuLnJlc2l6ZVRpbWVyJiYoY2xlYXJUaW1lb3V0KG4ucmVzaXplVGltZXIpLG4ucmVzaXplVGltZXI9bnVsbCk7dmFyIHQ9ZT8wOjEwMDtuLnJlc2l6ZVRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLnJlc2l6ZVRpbWVyPW51bGwscmVxdWVzdEFuaW1hdGlvbkZyYW1lKHdkKX0sdCl9ZnVuY3Rpb24gd2QoKXtpZihuLnRlcm1pbmFsKXt2YXIgZT1uLnRlcm1pbmFsQXV0b0ZvbGxvd3x8cmEoKTtlJiZtdCgiZm9yY2UiKSxlaShuLnRlcm1pbmFsLmNvbHMsbi50ZXJtaW5hbC5yb3dzKX19ZnVuY3Rpb24gR3QoZSl7bi53b3JraW5nRGlyPWU7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXdvcmtpbmctZGlyIixlKX1jYXRjaHt9Q2QoZSl9ZnVuY3Rpb24gZWEoZSl7ZmV0Y2goIi9hcGkvcmVjZW50LXBhdGhzIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQuanNvbigpfSkudGhlbihmdW5jdGlvbih0KXtlKHR8fFtdKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZShbXSl9KX1mdW5jdGlvbiBDZChlKXtyZXR1cm4gZmV0Y2goIi9hcGkvcmVjZW50LXBhdGhzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7cGF0aDplfSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uIHRhKGUpe3ZhciB0PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihyKXtyZXR1cm4gci5pZD09PWV9KTt0JiZ0LnN0YXR1cyE9PSJydW5uaW5nIiYmIXVlKHQpP25vKGUpOld0KGUpLHp0KCl9ZnVuY3Rpb24gQmQoZSl7dmFyIHQ9ZS50YXJnZXQ7aWYoISghdHx8ISh0IGluc3RhbmNlb2YgRWxlbWVudCkpKXt2YXIgcj10LmNsb3Nlc3QoIi5zaWRlYmFyLWNvbGxhcHNlZC10aWxlIik7aWYociYmciBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KXtpZihyLmRhdGFzZXQuY29sbGFwc2VkTmV3U2Vzc2lvbil7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksS2EoKTtyZXR1cm59aWYoci5kYXRhc2V0LmNvbGxhcHNlZFNlc3Npb25JZCl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksdGEoci5kYXRhc2V0LmNvbGxhcHNlZFNlc3Npb25JZCk7cmV0dXJufWlmKHIuZGF0YXNldC5jb2xsYXBzZWRIaXN0b3J5SWQpe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpO3ZhciBpPXIuZGF0YXNldC5jb2xsYXBzZWRIaXN0b3J5SWQsYT1yLmRhdGFzZXQuY3dkfHwiIjt2aShpLGEpLnRoZW4oZnVuY3Rpb24odil7diYmdi5pZCYmKG4uc2VsZWN0ZWRJZD12LmlkLHllKCksbi5kcmFmdHNbdi5pZF09IiIsZm4oKS50aGVuKGZ1bmN0aW9uKCl7V3Qodi5pZCl9KSl9KTtyZXR1cm59fXZhciB1PXQuY2xvc2VzdCgiI2NsYXVkZS1oaXN0b3J5LXRvZ2dsZSIpO2lmKHUpe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLG4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkPSFuLmNsYXVkZUhpc3RvcnlFeHBhbmRlZCxuLmNsYXVkZUhpc3RvcnlFeHBhbmRlZCYmIW4uY2xhdWRlSGlzdG9yeUxvYWRlZCYmUXIoKSxwZSgpO3JldHVybn12YXIgcz10LmNsb3Nlc3QoIltkYXRhLWFjdGlvbl0iKTtpZihzJiZzIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpe2lmKGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpLHMuZGF0YXNldC5hY3Rpb249PT0idG9nZ2xlLW1hbmFnZS1tb2RlIilIYygpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJzZWxlY3QtYWxsLXZpc2libGUiKVl1KCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImNsZWFyLXNlbGVjdGlvbiIpTmMoKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0iZGVsZXRlLXNlbGVjdGVkIilqYygpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJ0b2dnbGUtc2VsZWN0aW9uIiljcihzLmRhdGFzZXQua2luZCxzLmRhdGFzZXQuaWQpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJkZWxldGUtc2Vzc2lvbiImJnMuZGF0YXNldC5zZXNzaW9uSWQpKGZ1bmN0aW9uKHYpe0RuKCJcdTc4NkVcdThCQTRcdTUyMjBcdTk2NjRcdThGRDlcdTRFMkFcdTRGMUFcdThCRERcdTU0MTdcdUZGMUZcdTZCNjRcdTY0Q0RcdTRGNUNcdTY1RTBcdTZDRDVcdTY0QTRcdTk1MDBcdTMwMDIiLHt0aXRsZToiXHU1MjIwXHU5NjY0XHU0RjFBXHU4QkREIn0pLnRoZW4oZnVuY3Rpb24oZyl7ZyYmJHModil9KX0pKHMuZGF0YXNldC5zZXNzaW9uSWQpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJkZWxldGUtaGlzdG9yeSImJnMuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQpKGZ1bmN0aW9uKHYsZyl7RG4oIlx1Nzg2RVx1OEJBNFx1OTY5MFx1ODVDRlx1OEZEOVx1Njc2MSBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU1NDE3XHVGRjFGIix7dGl0bGU6Ilx1OTY5MFx1ODVDRlx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCIsb2tMYWJlbDoiXHU5NjkwXHU4NUNGIn0pLnRoZW4oZnVuY3Rpb24oaCl7aCYmWHModixnKX0pfSkocy5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZCxzLmNsb3Nlc3QoIi5zZXNzaW9uLWl0ZW0iKSk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InRvZ2dsZS1oaXN0b3J5LWRpcmVjdG9yeSImJnMuZGF0YXNldC5jd2Qpe3ZhciBvPXMuZGF0YXNldC5jd2Q7bi5jbGF1ZGVIaXN0b3J5RXhwYW5kZWREaXJzW29dPSFuLmNsYXVkZUhpc3RvcnlFeHBhbmRlZERpcnNbb10scGUoKX1lbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0iZGVsZXRlLWhpc3RvcnktZGlyZWN0b3J5IiYmcy5kYXRhc2V0LmN3ZCkoZnVuY3Rpb24odixnKXt2YXIgaD1icCh2KSxtPWpuKCkuZmlsdGVyKGZ1bmN0aW9uKGIpe3JldHVybiBiLmN3ZD09PXZ9KS5sZW5ndGg7RG4oIlx1Nzg2RVx1OEJBNFx1NkUwNVx1N0E3QVx1NkI2NFx1NzZFRVx1NUY1NVx1NEUwQlx1NzY4NCAiK20rIiBcdTY3NjEgQ2xhdWRlIFx1NTM4Nlx1NTNGMlx1NTQxN1x1RkYxRiIse3RpdGxlOiJcdTZFMDVcdTdBN0FcdTc2RUVcdTVGNTVcdTUzODZcdTUzRjIiLG9rTGFiZWw6Ilx1NkUwNVx1N0E3QSJ9KS50aGVuKGZ1bmN0aW9uKGIpe2ImJihacyhoLCEwKSx5cCh2LGcsaCkpfSl9KShzLmRhdGFzZXQuY3dkLHMpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJjbGVhci1hbGwtaGlzdG9yeSIpUmMoKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0idG9nZ2xlLWFyY2hpdmVkLWdyb3VwIiluLmFyY2hpdmVkRXhwYW5kZWQ9IW4uYXJjaGl2ZWRFeHBhbmRlZCxwZSgpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJyZXN1bWUiJiZzLmRhdGFzZXQuc2Vzc2lvbklkKXdwKHMpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJyZXN1bWUtaGlzdG9yeSImJnMuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQpa3Aocyk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InJlc3VtZS1jb2RleC1oaXN0b3J5IiYmcy5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZClDcChzKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0iZGVsZXRlLWNvZGV4LWhpc3RvcnkiJiZzLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkKURwKHMpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJ0b2dnbGUtY29kZXgtaGlzdG9yeS1kaXJlY3RvcnkiJiZzLmRhdGFzZXQuY3dkKXt2YXIgbD1zLmRhdGFzZXQuY3dkO24uY29kZXhIaXN0b3J5RXhwYW5kZWREaXJzW2xdPSFuLmNvZGV4SGlzdG9yeUV4cGFuZGVkRGlyc1tsXSxwZSgpfWVsc2Ugcy5kYXRhc2V0LmFjdGlvbj09PSJ3b3JrdHJlZS1tZXJnZSImJnMuZGF0YXNldC5zZXNzaW9uSWQ/WW8ocy5kYXRhc2V0LnNlc3Npb25JZCk6cy5kYXRhc2V0LmFjdGlvbj09PSJ3b3JrdHJlZS1jbGVhbnVwIiYmcy5kYXRhc2V0LnNlc3Npb25JZCYmSm8ocy5kYXRhc2V0LnNlc3Npb25JZCk7cmV0dXJufXZhciBjPXQuY2xvc2VzdCgiLnNlc3Npb24taXRlbSIpO2lmKGMpe2lmKG4uc2Vzc2lvbnNNYW5hZ2VNb2RlKXtjLmRhdGFzZXQuc2Vzc2lvbklkP2NyKCJzZXNzaW9ucyIsYy5kYXRhc2V0LnNlc3Npb25JZCk6Yy5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCYmY3IoImhpc3RvcnkiLGMuZGF0YXNldC5jbGF1ZGVIaXN0b3J5SWQpO3JldHVybn1pZihjLmNsYXNzTGlzdC5jb250YWlucygic3dpcGVkIikpe2tyKCk7cmV0dXJufWlmKGVvKXJldHVybjtpZihjLmRhdGFzZXQuc2Vzc2lvbklkKXRhKGMuZGF0YXNldC5zZXNzaW9uSWQpO2Vsc2UgaWYoYy5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCl7dmFyIGY9Yy5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCxkPWMuZGF0YXNldC5jd2Q7dmkoZixkKS50aGVuKGZ1bmN0aW9uKHYpe3YmJnYuaWQmJihuLnNlbGVjdGVkSWQ9di5pZCx5ZSgpLG4uZHJhZnRzW3YuaWRdPSIiLGZuKCkudGhlbihmdW5jdGlvbigpe1d0KHYuaWQpLHp0KCl9KSl9KX19fX1mdW5jdGlvbiBEZChlKXtpZighKGUua2V5IT09IkVudGVyIiYmZS5rZXkhPT0iICIpKXt2YXIgdD1lLnRhcmdldC5jbG9zZXN0KCIuc2Vzc2lvbi1pdGVtIik7aWYodCl7aWYoZS5wcmV2ZW50RGVmYXVsdCgpLG4uc2Vzc2lvbnNNYW5hZ2VNb2RlKXt0LmRhdGFzZXQuc2Vzc2lvbklkP2NyKCJzZXNzaW9ucyIsdC5kYXRhc2V0LnNlc3Npb25JZCk6dC5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCYmY3IoImhpc3RvcnkiLHQuZGF0YXNldC5jbGF1ZGVIaXN0b3J5SWQpO3JldHVybn1pZih0LmRhdGFzZXQuc2Vzc2lvbklkKXRhKHQuZGF0YXNldC5zZXNzaW9uSWQpO2Vsc2UgaWYodC5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCl7dmFyIHI9dC5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCxpPXQuZGF0YXNldC5jd2Q7dmkocixpKS50aGVuKGZ1bmN0aW9uKGEpe2EmJmEuaWQmJihuLnNlbGVjdGVkSWQ9YS5pZCx5ZSgpLG4uZHJhZnRzW2EuaWRdPSIiLGZuKCkudGhlbihmdW5jdGlvbigpe1d0KGEuaWQpLHp0KCl9KSl9KX19fX1mdW5jdGlvbiBuYShlLHQpe3ZhciByPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PW4uc2VsZWN0ZWRJZH0pO2lmKHIpe3ZhciBpPXJbZV07aWYoIWkpe2soIlx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NkNBMVx1NjcwOVx1NTNFRlx1NTkwRFx1NTIzNlx1NzY4NFx1NTE4NVx1NUJCOVx1MzAwMiIsImVycm9yIik7cmV0dXJufU9yKFN0cmluZyhpKSxudWxsLGZ1bmN0aW9uKCl7ayh0fHwiXHU1REYyXHU1OTBEXHU1MjM2IiwiaW5mbyIpfSl9fWZ1bmN0aW9uIEN0KCl7cmV0dXJuIW4udGVybWluYWx8fCFuLnRlcm1pbmFsLmVsZW1lbnQ/bnVsbDoobi50ZXJtaW5hbFZpZXdwb3J0RWw9bi50ZXJtaW5hbC5lbGVtZW50LG4udGVybWluYWxWaWV3cG9ydEVsKX1mdW5jdGlvbiBWbigpe24udGVybWluYWxTY3JvbGxJZGxlVGltZXImJihjbGVhclRpbWVvdXQobi50ZXJtaW5hbFNjcm9sbElkbGVUaW1lciksbi50ZXJtaW5hbFNjcm9sbElkbGVUaW1lcj1udWxsKX1mdW5jdGlvbiBkdCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC1qdW1wLWJvdHRvbSIpLHQ9ISFuLnNlbGVjdGVkSWQmJm4uY3VycmVudFZpZXc9PT0idGVybWluYWwiJiYhbi50ZXJtaW5hbEF1dG9Gb2xsb3cmJiFwcygpO24uc2hvd1Rlcm1pbmFsSnVtcFRvQm90dG9tPXQsZSYmZS5jbGFzc0xpc3QudG9nZ2xlKCJ2aXNpYmxlIix0KTt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7ciYmci5jbGFzc0xpc3QudG9nZ2xlKCJoYXMtanVtcC1idG4iLHQpfWZ1bmN0aW9uIHJhKCl7dmFyIGU9Q3QoKTtpZighZSlyZXR1cm4hMDt2YXIgdD1lLnNjcm9sbEhlaWdodC1lLmNsaWVudEhlaWdodC1lLnNjcm9sbFRvcDtyZXR1cm4gdDw9bi50ZXJtaW5hbFNjcm9sbFRocmVzaG9sZH1mdW5jdGlvbiBwcygpe3ZhciBlPUN0KCk7aWYoIWUpcmV0dXJuITA7dmFyIHQ9ZS5zY3JvbGxIZWlnaHQtZS5jbGllbnRIZWlnaHQtZS5zY3JvbGxUb3A7cmV0dXJuIHQ8PTJ9ZnVuY3Rpb24gdnMoZSl7aWYobi50ZXJtaW5hbCl7dmFyIHQ9Q3QoKTtpZih0KXt2YXIgcj1lPzUwMDoxMjA7bi50ZXJtaW5hbFByb2dyYW1tYXRpY1Njcm9sbFVudGlsPU1hdGgubWF4KG4udGVybWluYWxQcm9ncmFtbWF0aWNTY3JvbGxVbnRpbCxEYXRlLm5vdygpK3IpLGU/dC5zY3JvbGxUbyh7dG9wOnQuc2Nyb2xsSGVpZ2h0LGJlaGF2aW9yOiJzbW9vdGgifSk6dC5zY3JvbGxUb3A9dC5zY3JvbGxIZWlnaHR9fX1mdW5jdGlvbiBpYSgpe24udGVybWluYWxBdXRvRm9sbG93PSExLFZuKCksbi50ZXJtaW5hbFByb2dyYW1tYXRpY1Njcm9sbFVudGlsPTAsbi50ZXJtaW5hbCYmIl9zaG91bGRTY3JvbGxUb0JvdHRvbSJpbiBuLnRlcm1pbmFsJiYobi50ZXJtaW5hbC5fc2hvdWxkU2Nyb2xsVG9Cb3R0b209ITEpLGR0KCl9ZnVuY3Rpb24gbXQoZSl7aWYobi50ZXJtaW5hbCl7dmFyIHQ9ZT09PSJmb3JjZSI7aWYodCl7bi50ZXJtaW5hbEF1dG9Gb2xsb3c9ITAsVm4oKSx2cyghMSksZHQoKTtyZXR1cm59aWYoIW4udGVybWluYWxBdXRvRm9sbG93KXtkdCgpO3JldHVybn12cyghMSksZHQoKX19ZnVuY3Rpb24ga2QoZSl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9InRlcm1pbmFsLXNjcm9sbGJhciI7dmFyIHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ci5jbGFzc05hbWU9InRlcm1pbmFsLXNjcm9sbGJhci10cmFjayI7dmFyIGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aS5jbGFzc05hbWU9InRlcm1pbmFsLXNjcm9sbGJhci10aHVtYiIsci5hcHBlbmRDaGlsZChpKSx0LmFwcGVuZENoaWxkKHIpLGUuYXBwZW5kQ2hpbGQodCksbi50ZXJtaW5hbFNjcm9sbGJhckVsPXQsbi50ZXJtaW5hbFNjcm9sbGJhclRodW1iRWw9aSxuLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyPW51bGwsbi50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nPSExLG4udGVybWluYWxTY3JvbGxiYXJSYWZQZW5kaW5nPSExO2Z1bmN0aW9uIGEoKXtuLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyJiYoY2xlYXJUaW1lb3V0KG4udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXIpLG4udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9bnVsbCksdC5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIil9ZnVuY3Rpb24gdSgpe24udGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZ3x8KG4udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXImJmNsZWFyVGltZW91dChuLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyKSxuLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyPW51bGwsbi50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nfHx0LmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKX0sMTUwMCkpfWZ1bmN0aW9uIHMoKXtuLnRlcm1pbmFsU2Nyb2xsYmFyUmFmUGVuZGluZz0hMTt2YXIgbT1DdCgpO2lmKG0pe3ZhciBiPW0uc2Nyb2xsSGVpZ2h0LEY9bS5jbGllbnRIZWlnaHQ7aWYoYjw9Ril7dC5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIik7cmV0dXJufXZhciB3PXIuY2xpZW50SGVpZ2h0LEU9TWF0aC5tYXgoMjgsRi9iKncpLEE9Yi1GLHg9bS5zY3JvbGxUb3AvQSxJPXgqKHctRSk7aS5zdHlsZS5oZWlnaHQ9RSsicHgiLGkuc3R5bGUudG9wPUkrInB4In19ZnVuY3Rpb24gbygpe24udGVybWluYWxTY3JvbGxiYXJSYWZQZW5kaW5nfHwobi50ZXJtaW5hbFNjcm9sbGJhclJhZlBlbmRpbmc9ITAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKHMpKX12YXIgbD1DdCgpO2wmJmwuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixmdW5jdGlvbigpe2EoKSxvKCksdSgpfSx7cGFzc2l2ZTohMH0pLHIuYWRkRXZlbnRMaXN0ZW5lcigibW91c2Vkb3duIixmdW5jdGlvbihtKXtpZihtLnRhcmdldCE9PWkpe20ucHJldmVudERlZmF1bHQoKTt2YXIgYj1DdCgpO2lmKGIpe3ZhciBGPXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdz0obS5jbGllbnRZLUYudG9wKS9GLmhlaWdodCxFPWIuc2Nyb2xsSGVpZ2h0LWIuY2xpZW50SGVpZ2h0O2Iuc2Nyb2xsVG9wPXcqRX19fSk7dmFyIGM9MCxmPTA7aS5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLGZ1bmN0aW9uKG0pe20ucHJldmVudERlZmF1bHQoKSxtLnN0b3BQcm9wYWdhdGlvbigpLG4udGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZz0hMCxpLmNsYXNzTGlzdC5hZGQoImRyYWdnaW5nIiksYz1tLmNsaWVudFk7dmFyIGI9Q3QoKTtmPWI/Yi5zY3JvbGxUb3A6MCxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW1vdmUiLGQpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNldXAiLHYpfSk7ZnVuY3Rpb24gZChtKXttLnByZXZlbnREZWZhdWx0KCk7dmFyIGI9Q3QoKTtpZihiKXt2YXIgRj1yLmNsaWVudEhlaWdodCx3PWIuc2Nyb2xsSGVpZ2h0LEU9Yi5jbGllbnRIZWlnaHQsQT13LUU7aWYoIShBPD0wKSl7dmFyIHg9TWF0aC5tYXgoMjgsRS93KkYpLEk9Ri14O2lmKCEoSTw9MCkpe3ZhciBfPW0uY2xpZW50WS1jLFY9Xy9JKkE7Yi5zY3JvbGxUb3A9ZitWfX19fWZ1bmN0aW9uIHYoKXtuLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITEsaS5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsdiksdSgpfWkuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsZnVuY3Rpb24obSl7aWYobS50b3VjaGVzLmxlbmd0aD09PTEpe20uc3RvcFByb3BhZ2F0aW9uKCksbi50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nPSEwLGkuY2xhc3NMaXN0LmFkZCgiZHJhZ2dpbmciKSxjPW0udG91Y2hlc1swXS5jbGllbnRZO3ZhciBiPUN0KCk7Zj1iP2Iuc2Nyb2xsVG9wOjAsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2htb3ZlIixnLHtwYXNzaXZlOiExfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLGgpLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoY2FuY2VsIixoKX19LHtwYXNzaXZlOiExfSk7ZnVuY3Rpb24gZyhtKXtpZihtLnRvdWNoZXMubGVuZ3RoPT09MSl7bS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBiPUN0KCk7aWYoYil7dmFyIEY9ci5jbGllbnRIZWlnaHQsdz1iLnNjcm9sbEhlaWdodCxFPWIuY2xpZW50SGVpZ2h0LEE9dy1FO2lmKCEoQTw9MCkpe3ZhciB4PU1hdGgubWF4KDI4LEUvdypGKSxJPUYteDtpZighKEk8PTApKXt2YXIgXz1tLnRvdWNoZXNbMF0uY2xpZW50WS1jLFY9Xy9JKkE7Yi5zY3JvbGxUb3A9ZitWfX19fX1mdW5jdGlvbiBoKCl7bi50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nPSExLGkuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZ2dpbmciKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGcpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixoKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaGNhbmNlbCIsaCksdSgpfXQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VlbnRlciIsZnVuY3Rpb24oKXthKCl9KSx0LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbGVhdmUiLGZ1bmN0aW9uKCl7bi50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nfHx1KCl9KSxvKCl9ZnVuY3Rpb24gQWQoZSl7cmV0dXJuIGU8NDM1Mj8hMTplPj00MzUyJiZlPD00NDQ3fHxlPj05MDAxJiZlPD05MDAyfHxlPj0xMTkwNCYmZTw9MTIzNTB8fGU+PTEyMzUzJiZlPD0xMzMxMXx8ZT49MTMzMTImJmU8PTE5OTAzfHxlPj0xOTk2OCYmZTw9NDA5NTl8fGU+PTQwOTYwJiZlPD00MjE5MXx8ZT49NDQwMzImJmU8PTU1MjAzfHxlPj02Mzc0NCYmZTw9NjQyNTV8fGU+PTY1MDcyJiZlPD02NTEwM3x8ZT49NjUyODAmJmU8PTY1Mzc2fHxlPj02NTUwNCYmZTw9NjU1MTB8fGU+PTEyNjk3NiYmZTw9MTI5NTM1fHxlPj0xMzEwNzImJmU8PTE5NjYwNXx8ZT49MTk2NjA4JiZlPD0yNjIxNDF9dmFyIG1zPSJcdTIwNjAiO2Z1bmN0aW9uIGdzKCl7cmV0dXJue21vZGU6Im5vcm1hbCJ9fWZ1bmN0aW9uIHhkKGUpe3JldHVybiEvW15ceDAwLVx4N2ZdLy50ZXN0KGUpJiZlLmluZGV4T2YoIlx4MUIiKT09PS0xfWZ1bmN0aW9uIFNkKGUsdCl7aWYoIWUpcmV0dXJuIiI7dmFyIHI9U3RyaW5nKGUpO2lmKHQubW9kZT09PSJub3JtYWwiJiZ4ZChyKSlyZXR1cm4gcjtmb3IodmFyIGk9IiIsYT0wO2E8ci5sZW5ndGg7YSsrKXt2YXIgdT1yLmNoYXJDb2RlQXQoYSkscz11LG89MTtpZih1Pj01NTI5NiYmdTw9NTYzMTkmJmErMTxyLmxlbmd0aCl7dmFyIGw9ci5jaGFyQ29kZUF0KGErMSk7bD49NTYzMjAmJmw8PTU3MzQzJiYocz0odS01NTI5NikqMTAyNCsobC01NjMyMCkrNjU1MzYsbz0yKX12YXIgYz1vPT09Mj9yLnN1YnN0cihhLDIpOnIuY2hhckF0KGEpO3N3aXRjaCh0Lm1vZGUpe2Nhc2Uibm9ybWFsIjpzPT09Mjc/KHQubW9kZT0iZXNjIixpKz1jKTpzPT09MTU1Pyh0Lm1vZGU9ImNzaSIsaSs9Yyk6cz09PTE1N3x8cz09PTE0NHx8cz09PTE1OHx8cz09PTE1OT8odC5tb2RlPSJzdHJpbmciLGkrPWMpOihpKz1jLEFkKHMpJiYoaSs9bXMpKTticmVhaztjYXNlImVzYyI6aSs9YyxzPT09OTE/dC5tb2RlPSJjc2kiOnM9PT05M3x8cz09PTgwfHxzPT09ODh8fHM9PT05NHx8cz09PTk1P3QubW9kZT0ic3RyaW5nIjp0Lm1vZGU9Im5vcm1hbCI7YnJlYWs7Y2FzZSJjc2kiOmkrPWMscz49NjQmJnM8PTEyNiYmKHQubW9kZT0ibm9ybWFsIik7YnJlYWs7Y2FzZSJzdHJpbmciOmkrPWMscz09PTd8fHM9PT0xNTY/dC5tb2RlPSJub3JtYWwiOnM9PT0yNyYmKHQubW9kZT0ic3RyaW5nLWVzYyIpO2JyZWFrO2Nhc2Uic3RyaW5nLWVzYyI6aSs9YyxzPT09OTI/dC5tb2RlPSJub3JtYWwiOnQubW9kZT0ic3RyaW5nIjticmVha31hKz1vLTF9cmV0dXJuIGl9dmFyIHRpPSJceDFCWz8yMDI2aCIsYWE9Ilx4MUJbPzIwMjZsIixJZD0yMDAsVGQ9MjU2KjEwMjQ7ZnVuY3Rpb24gTGQoZSl7aWYoIWV8fG4uc3luY091dHB1dEJ1ZmZlcj09PW51bGwmJmUuaW5kZXhPZih0aSk9PT0tMSlyZXR1cm4gZTtmb3IodmFyIHQ9IiIscj0wO3I8ZS5sZW5ndGg7KWlmKG4uc3luY091dHB1dEJ1ZmZlciE9PW51bGwpe3ZhciBpPWUuaW5kZXhPZihhYSxyKTtpZihpPT09LTEpcmV0dXJuIG4uc3luY091dHB1dEJ1ZmZlcis9ZS5zbGljZShyKSwobi5zeW5jT3V0cHV0QnVmZmVyLmxlbmd0aD5UZHx8RGF0ZS5ub3coKT5uLnN5bmNPdXRwdXREZWFkbGluZSkmJih0Kz1uLnN5bmNPdXRwdXRCdWZmZXIsbi5zeW5jT3V0cHV0QnVmZmVyPW51bGwsbi5zeW5jRnJhbWluZ1Jlc2lkdWU9ITApLHQ7bi5zeW5jT3V0cHV0QnVmZmVyKz1lLnNsaWNlKHIsaSthYS5sZW5ndGgpLHQrPW4uc3luY091dHB1dEJ1ZmZlcixuLnN5bmNPdXRwdXRCdWZmZXI9bnVsbCxyPWkrYWEubGVuZ3RofWVsc2V7dmFyIGE9ZS5pbmRleE9mKHRpLHIpO2lmKGE9PT0tMSlyZXR1cm4gdCs9ZS5zbGljZShyKSx0O3QrPWUuc2xpY2UocixhKSxuLnN5bmNPdXRwdXRCdWZmZXI9dGksbi5zeW5jT3V0cHV0RGVhZGxpbmU9RGF0ZS5ub3coKStJZCxyPWErdGkubGVuZ3RofXJldHVybiB0fWZ1bmN0aW9uIGptKCl7aWYobi5zeW5jT3V0cHV0QnVmZmVyIT09bnVsbCl7dmFyIGU9bi5zeW5jT3V0cHV0QnVmZmVyO3JldHVybiBuLnN5bmNPdXRwdXRCdWZmZXI9bnVsbCxlfXJldHVybiIifWZ1bmN0aW9uIFVuKGUsdCl7aWYoISghZXx8dD09bnVsbCkpe24ud2lkZVBhcnNlclN0YXRlfHwobi53aWRlUGFyc2VyU3RhdGU9Z3MoKSk7dmFyIHI9U2QodCxuLndpZGVQYXJzZXJTdGF0ZSksaT1MZChyKSxhPW4udGVybWluYWxBdXRvRm9sbG93IT09ITE7Il9zaG91bGRTY3JvbGxUb0JvdHRvbSJpbiBlJiYoZS5fc2hvdWxkU2Nyb2xsVG9Cb3R0b209YSksaSYmZS53cml0ZShpKSwiX3Nob3VsZFNjcm9sbFRvQm90dG9tImluIGUmJihlLl9zaG91bGRTY3JvbGxUb0JvdHRvbT1hKSxhJiYobi50ZXJtaW5hbFByb2dyYW1tYXRpY1Njcm9sbFVudGlsPU1hdGgubWF4KG4udGVybWluYWxQcm9ncmFtbWF0aWNTY3JvbGxVbnRpbCxEYXRlLm5vdygpKzEyMCkpLFdkKHQpfX1mdW5jdGlvbiB1YSgpe24ud2lkZVBhcnNlclN0YXRlPWdzKCl9ZnVuY3Rpb24gTWQoKXt0eXBlb2YgZG9jdW1lbnQ+InUifHxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjb3B5IixmdW5jdGlvbihlKXt2YXIgdD13aW5kb3cuZ2V0U2VsZWN0aW9uJiZ3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYoISghdHx8dC5pc0NvbGxhcHNlZCkpe3ZhciByPXQuYW5jaG9yTm9kZSxpPXImJnIubm9kZVR5cGU9PT0zP3IucGFyZW50Tm9kZTpyLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKCEoIWF8fCFpfHwhYS5jb250YWlucyhpKSkpe3ZhciB1PXQudG9TdHJpbmcoKSxzPXUuc3BsaXQoYApgKS5tYXAoZnVuY3Rpb24obyl7cmV0dXJuIG8uc3BsaXQobXMpLmpvaW4oIiIpLnJlcGxhY2UoL1sgXHRdKyQvLCIiKX0pLmpvaW4oYApgKTtzIT09dSYmZS5jbGlwYm9hcmREYXRhJiYoZS5jbGlwYm9hcmREYXRhLnNldERhdGEoInRleHQvcGxhaW4iLHMpLGUucHJldmVudERlZmF1bHQoKSl9fX0pfU1kKCk7dmFyIGhzPTE1MCx5cz0zMCxxZD0xNjAqMTAyNCxPZD0xOTIqMTAyNDtmdW5jdGlvbiBicyhlKXtpZighZXx8ZS5sZW5ndGg8PU9kKXJldHVybiBlO3ZhciB0PWUubGVuZ3RoLHI9ZnVuY3Rpb24oeCl7aWYoISh0eXBlb2Ygbj4idSJ8fCFuKSl7dmFyIEk9bi50ZXJtaW5hbE91dHB1dE1hcmtlcnwwO2lmKCEoSTw9MCkpe3ZhciBfPXQteDtuLnRlcm1pbmFsT3V0cHV0TWFya2VyPUk+Xz9JLV86MH19fSxpPWUubGVuZ3RoLXFkO2lmKGk+MCYmaTxlLmxlbmd0aCl7dmFyIGE9ZS5jaGFyQ29kZUF0KGkpO2E+PTU2MzIwJiZhPD01NzM0MyYmaSsrfWZvcih2YXIgdT00MDk2LHM9TWF0aC5taW4oaSt1LGUubGVuZ3RoKSxvPWk7bzxzO28rKylpZihlLmNoYXJDb2RlQXQobyk9PT0xMCl7dmFyIGw9ZS5zbGljZShvKzEpO3JldHVybiByKGwubGVuZ3RoKSxsfWZvcih2YXIgYz1NYXRoLm1heCgwLGktMjU2KSxmPS0xLGQ9aS0xO2Q+PWM7ZC0tKXt2YXIgdj1lLmNoYXJDb2RlQXQoZCk7aWYodj09PTI3KXtmPWQ7YnJlYWt9aWYodj09PTd8fHY+PTY0JiZ2PD0xMjYpYnJlYWt9aWYoZiE9PS0xKXtmb3IodmFyIGc9ITEsaD1mKzE7aDxpO2grKyl7dmFyIG09ZS5jaGFyQ29kZUF0KGgpO2lmKG09PT03KXtnPSEwO2JyZWFrfWlmKG0+PTY0JiZtPD0xMjYpe2c9ITA7YnJlYWt9fWlmKCFnKWZvcih2YXIgYj1NYXRoLm1pbihpKzI1NixlLmxlbmd0aCksRj1pO0Y8YjtGKyspe3ZhciB3PWUuY2hhckNvZGVBdChGKTtpZih3PT09N3x8dz49NjQmJnc8PTEyNil7dmFyIEU9ZS5zbGljZShGKzEpO3JldHVybiByKEUubGVuZ3RoKSxFfX19dmFyIEE9ZS5zbGljZShpKTtyZXR1cm4gcihBLmxlbmd0aCksQX1mdW5jdGlvbiBuaSgpe2lmKG4udGVybWluYWwpe2lmKHR5cGVvZiBuLnRlcm1pbmFsLnJlc2V0PT0iZnVuY3Rpb24iKXtuLnRlcm1pbmFsLnJlc2V0KCksdWEoKSxuLnN5bmNPdXRwdXRCdWZmZXI9bnVsbCxuLnN5bmNPdXRwdXREZWFkbGluZT0wO3JldHVybn10eXBlb2Ygbi50ZXJtaW5hbC53cml0ZT09ImZ1bmN0aW9uIiYmbi50ZXJtaW5hbC53cml0ZSgiXHgxQmMiKSx1YSgpLG4uc3luY091dHB1dEJ1ZmZlcj1udWxsLG4uc3luY091dHB1dERlYWRsaW5lPTB9fW4uX3Jlc3luY1N0YXRzV2luZG93U3RhcnQ9MCxuLl9yZXN5bmNTdGF0c0NvdW50PTAsbi5fcmVzeW5jTGFzdFdhcm5BdD0wO3ZhciBQZD01ZTMsSGQ9MTIsX2Q9M2U0O24uX3Jlc3luY0luUHJvZ3Jlc3M9ITE7ZnVuY3Rpb24ga24oZSl7aWYoIW4udGVybWluYWx8fCFuLnRlcm1pbmFsT3V0cHV0KXJldHVybiExO3ZhciB0PWV8fHt9LHI9bi50ZXJtaW5hbE91dHB1dE1hcmtlcnwwO3I8MCYmKHI9MCkscj5uLnRlcm1pbmFsT3V0cHV0Lmxlbmd0aCYmKHI9bi50ZXJtaW5hbE91dHB1dC5sZW5ndGgpO3ZhciBpPXI+MD9uLnRlcm1pbmFsT3V0cHV0LnNsaWNlKHIpOm4udGVybWluYWxPdXRwdXQsYT1pLmxlbmd0aCx1PXR5cGVvZiBwZXJmb3JtYW5jZTwidSImJnBlcmZvcm1hbmNlLm5vdz9wZXJmb3JtYW5jZS5ub3coKTpEYXRlLm5vdygpO24uX3Jlc3luY0luUHJvZ3Jlc3M9ITA7dHJ5e25pKCksVW4obi50ZXJtaW5hbCxpKX1maW5hbGx5e24uX3Jlc3luY0luUHJvZ3Jlc3M9ITF9bi5sYXN0VGVybWluYWxSZXN5bmNBdD1EYXRlLm5vdygpLG10KCJvdXRwdXQiKSx0LnNraXBGaXR8fGl0KCJyZWZyZXNoIik7dmFyIHM9RGF0ZS5ub3coKTtpZihzLW4uX3Jlc3luY1N0YXRzV2luZG93U3RhcnQ+UGQpbi5fcmVzeW5jU3RhdHNXaW5kb3dTdGFydD1zLG4uX3Jlc3luY1N0YXRzQ291bnQ9MTtlbHNlIGlmKG4uX3Jlc3luY1N0YXRzQ291bnQrKyxuLl9yZXN5bmNTdGF0c0NvdW50PkhkJiZzLW4uX3Jlc3luY0xhc3RXYXJuQXQ+X2Qpe24uX3Jlc3luY0xhc3RXYXJuQXQ9czt2YXIgbz10eXBlb2YgcGVyZm9ybWFuY2U8InUiJiZwZXJmb3JtYW5jZS5ub3c/cGVyZm9ybWFuY2Uubm93KCk6RGF0ZS5ub3coKTtjb25zb2xlLndhcm4oIlt3YW5kXSBzb2Z0UmVzeW5jVGVybWluYWwgaGlnaCBmcmVxdWVuY3kiLCJjb3VudD0iK24uX3Jlc3luY1N0YXRzQ291bnQrIi8iK01hdGgucm91bmQoKHMtbi5fcmVzeW5jU3RhdHNXaW5kb3dTdGFydCkvMTAwKS8xMCsicyIsImJ1Zkxlbj0iK2EsImxhc3RSZXBsYXlNcz0iK01hdGgucm91bmQoby11KSl9cmV0dXJuITB9ZnVuY3Rpb24gTmQoZSl7bi5zb2Z0UmVzeW5jVGltZXImJmNsZWFyVGltZW91dChuLnNvZnRSZXN5bmNUaW1lciksbi5zb2Z0UmVzeW5jVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24uc29mdFJlc3luY1RpbWVyPW51bGwsa24oKX0sdHlwZW9mIGU9PSJudW1iZXIiP2U6MTUwKX12YXIgamQ9L1x4MWJcW1xkKig/OjtcZCopP1tBQkNEZkhKS10vLEVzPTE1MDAsUmQ9ODAwO24uX3Jlc3luY0NodW5rTGFzdEF0PTAsbi5fcmVzeW5jQ2h1bmtUYWlsVGltZXI9bnVsbDtmdW5jdGlvbiBXZChlKXtpZighbi5fcmVzeW5jSW5Qcm9ncmVzcyYmbi5zeW5jRnJhbWluZ1Jlc2lkdWUmJihuLnN5bmNGcmFtaW5nUmVzaWR1ZT0hMSwhKCFlfHx0eXBlb2YgZSE9InN0cmluZyIpJiZlLmluZGV4T2YoIlx4MUJbIikhPT0tMSYmamQudGVzdChlKSkpe3ZhciB0PURhdGUubm93KCkscj10LW4uX3Jlc3luY0NodW5rTGFzdEF0O2lmKHI+PUVzKXtuLl9yZXN5bmNDaHVua1RhaWxUaW1lciYmKGNsZWFyVGltZW91dChuLl9yZXN5bmNDaHVua1RhaWxUaW1lciksbi5fcmVzeW5jQ2h1bmtUYWlsVGltZXI9bnVsbCksbi5fcmVzeW5jQ2h1bmtMYXN0QXQ9dCxrbigpO3JldHVybn1pZighbi5fcmVzeW5jQ2h1bmtUYWlsVGltZXIpe3ZhciBpPU1hdGgubWF4KFJkLEVzLXIpO24uX3Jlc3luY0NodW5rVGFpbFRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLl9yZXN5bmNDaHVua1RhaWxUaW1lcj1udWxsLG4uX3Jlc3luY0NodW5rTGFzdEF0PURhdGUubm93KCksa24oKX0saSl9fX1mdW5jdGlvbiByaShlLHQscil7aWYoIW4udGVybWluYWwpcmV0dXJuITE7dmFyIGk9X2EodHx8IiIpLGE9ZXx8bnVsbCx1PXJ8fHt9LHM9dS5tb2RlfHwiYXBwZW5kIixvPXUuc2Nyb2xsIT09ITEsbD1uLnRlcm1pbmFsU2Vzc2lvbklkIT09YSxjPW4udGVybWluYWxPdXRwdXR8fCIiLGY9ISEoYSYmbi50ZXJtaW5hbExpdmVTdHJlYW1TZXNzaW9uc1thXSksZD0hMTtpZihpPT09YyYmIWwpcmV0dXJuIG8mJm10KCJvdXRwdXQiKSxkdCgpLCExO2lmKGwmJihuaSgpLGM9IiIsbi50ZXJtaW5hbE91dHB1dD0iIixuLnRlcm1pbmFsT3V0cHV0TWFya2VyPTAsbi50ZXJtaW5hbEF1dG9Gb2xsb3c9ITAsVm4oKSxkdCgpKSxzPT09InJlcGxhY2UiKWkhPT1jJiYobmkoKSxpJiZVbihuLnRlcm1pbmFsLGkpLGQ9ITApO2Vsc2V7aWYoaS5sZW5ndGg8Yy5sZW5ndGgmJiFsKXJldHVybiExO2lmKGYmJiFsJiZzIT09InJlcGxhY2UiJiZjJiYhaS5zdGFydHNXaXRoKGMpKXJldHVybiExO2lmKGkuc3RhcnRzV2l0aChjKSl7dmFyIHY9aS5zbGljZShjLmxlbmd0aCk7diYmKFVuKG4udGVybWluYWwsdiksZD0hMCl9ZWxzZXtpZihjJiZjLnN0YXJ0c1dpdGgoaSkpcmV0dXJuITE7bmkoKSxpJiZVbihuLnRlcm1pbmFsLGkpLGQ9ITB9fXJldHVybiBuLnRlcm1pbmFsU2Vzc2lvbklkPWEsbi50ZXJtaW5hbE91dHB1dD1pLG4udGVybWluYWxPdXRwdXRNYXJrZXI9MCxvJiYoZHx8bHx8cz09PSJyZXBsYWNlIik/bXQobHx8cz09PSJyZXBsYWNlIj8iZm9yY2UiOiJvdXRwdXQiKTpkdCgpLGwmJmVpKG4udGVybWluYWwuY29scyxuLnRlcm1pbmFsLnJvd3MpLGR8fGx9ZnVuY3Rpb24gS24oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoISghZXx8bi50ZXJtaW5hbHx8bi50ZXJtaW5hbEluaXRpYWxpemluZykpe2lmKHR5cGVvZiBXVGVybUxpYj4idSJ8fCFXVGVybUxpYi5XVGVybSl7bi50ZXJtaW5hbEluaXRSZXRyaWVzfHwobi50ZXJtaW5hbEluaXRSZXRyaWVzPTApLG4udGVybWluYWxJbml0UmV0cmllczwxMCYmKG4udGVybWluYWxJbml0UmV0cmllcysrLHNldFRpbWVvdXQoS24sMjAwKSk7cmV0dXJufW4udGVybWluYWxJbml0UmV0cmllcz0wLG4udGVybWluYWxJbml0aWFsaXppbmc9ITAsbi5zZWxlY3RlZElkJiYoZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxlLmNsYXNzTGlzdC5hZGQoImFjdGl2ZSIpKTtmb3IodmFyIHQ9ZS5xdWVyeVNlbGVjdG9yQWxsKCIudGVybWluYWwtc2Nyb2xsLXdyYXAiKSxyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBpPXRbcl07aS5wYXJlbnROb2RlPT09ZSYmZS5yZW1vdmVDaGlsZChpKX12YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTthLmNsYXNzTmFtZT0idGVybWluYWwtc2Nyb2xsLXdyYXAiLGUuYXBwZW5kQ2hpbGQoYSk7dmFyIHU9bmV3IFdUZXJtTGliLldUZXJtKGEse2NvbHM6MTIwLHJvd3M6MzYsYXV0b1Jlc2l6ZTohMCxjdXJzb3JCbGluazohMSxvbkRhdGE6ZnVuY3Rpb24oKXt9LG9uUmVzaXplOmZ1bmN0aW9uKG8sbCl7ZWkobyxsKSxuLnRlcm1pbmFsJiZuLnRlcm1pbmFsT3V0cHV0JiZrbih7c2tpcEZpdDohMH0pfX0pLHM9ZG9jdW1lbnQuZm9udHMmJnR5cGVvZiBkb2N1bWVudC5mb250cy5yZWFkeT09Im9iamVjdCI/UHJvbWlzZS5yYWNlKFtkb2N1bWVudC5mb250cy5yZWFkeSxuZXcgUHJvbWlzZShmdW5jdGlvbihvKXtzZXRUaW1lb3V0KG8sODAwKX0pXSk6UHJvbWlzZS5yZXNvbHZlKCk7cy50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHUuaW5pdCgpfSkudGhlbihmdW5jdGlvbigpe2lmKG4udGVybWluYWw9dSxuLnRlcm1pbmFsSW5pdGlhbGl6aW5nPSExLGh1KCksYS5pc0Nvbm5lY3RlZCYmKGEub2Zmc2V0SGVpZ2h0LHR5cGVvZiB1LnJlbWVhc3VyZT09ImZ1bmN0aW9uIikpdHJ5e3UucmVtZWFzdXJlKCl9Y2F0Y2h7fW4udGVybWluYWxBdXRvRm9sbG93PSEwLFZuKCk7dmFyIG89Q3QoKTtpZihvJiYobi50ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcj1mdW5jdGlvbigpe2lmKERhdGUubm93KCk8bi50ZXJtaW5hbFByb2dyYW1tYXRpY1Njcm9sbFVudGlsKXtkdCgpO3JldHVybn1pZihwcygpKXtuLnRlcm1pbmFsQXV0b0ZvbGxvdz0hMCxWbigpLGR0KCk7cmV0dXJufWlhKCl9LG4udGVybWluYWxWaWV3cG9ydFRvdWNoU3RhcnRIYW5kbGVyPWZ1bmN0aW9uKGMpe2MudG91Y2hlcyYmYy50b3VjaGVzLmxlbmd0aD09PTEmJihuLnRlcm1pbmFsVG91Y2hTdGFydFk9Yy50b3VjaGVzWzBdLmNsaWVudFkpfSxuLnRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXI9ZnVuY3Rpb24oYyl7IWMudG91Y2hlc3x8Yy50b3VjaGVzLmxlbmd0aCE9PTF8fHR5cGVvZiBuLnRlcm1pbmFsVG91Y2hTdGFydFk9PSJudW1iZXIiJiZjLnRvdWNoZXNbMF0uY2xpZW50WS1uLnRlcm1pbmFsVG91Y2hTdGFydFk+NCYmaWEoKX0sby5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLG4udGVybWluYWxWaWV3cG9ydFNjcm9sbEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxvLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLG4udGVybWluYWxWaWV3cG9ydFRvdWNoU3RhcnRIYW5kbGVyLHtwYXNzaXZlOiEwfSksby5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLG4udGVybWluYWxWaWV3cG9ydFRvdWNoSGFuZGxlcix7cGFzc2l2ZTohMH0pKSxuLnRlcm1pbmFsV2hlZWxIYW5kbGVyPWZ1bmN0aW9uKGMpe2MuZGVsdGFZPDAmJmlhKCksYy5zdG9wUHJvcGFnYXRpb24oKX0sZS5hZGRFdmVudExpc3RlbmVyKCJ3aGVlbCIsbi50ZXJtaW5hbFdoZWVsSGFuZGxlcix7cGFzc2l2ZTohMH0pLGtkKGUpLG4uc2VsZWN0ZWRJZCl7dmFyIGw9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGMpe3JldHVybiBjLmlkPT09bi5zZWxlY3RlZElkfSk7bCYmcmkobC5pZCxsLm91dHB1dHx8IiIse21vZGU6ImFwcGVuZCIsc2Nyb2xsOiExfSl9ZWxzZSBVbih1LGBcdTcwQjlcdTUxRkJcdTRFMEFcdTY1QjlcdTMwMENcdTY1QjBcdTVCRjlcdThCRERcdTMwMERcdTVGMDBcdTU5Q0JcdTRGNjBcdTc2ODRcdTdCMkNcdTRFMDBcdTZCMjFcdTVCRjlcdThCRERcdTMwMDJccgpgKTtuLnRlcm1pbmFsQ2xpY2tIYW5kbGVyPWZ1bmN0aW9uKGMpe2ZpKCl8fE50KGMpfSxlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixuLnRlcm1pbmFsQ2xpY2tIYW5kbGVyKSxkdCgpLHVkKCksbGQoKSxiZCgpLEVkKCksaXQoIm1vdW50Iix7Zm9yY2VSZXBsYXk6ITB9KX0pLmNhdGNoKGZ1bmN0aW9uKG8pe24udGVybWluYWxJbml0aWFsaXppbmc9ITEsY29uc29sZS5lcnJvcigiW3dhbmRdIHd0ZXJtIGluaXQgZmFpbGVkOiIsbyl9KX19ZnVuY3Rpb24gemQoZSx0KXtpZighKCFuLnNlbGVjdGVkSWR8fCFlKSl7dmFyIHI9bi5zZWxlY3RlZElkKyI6IitlO2lmKG4udG9vbENvbnRlbnRDYWNoZVtyXSl7dChudWxsLG4udG9vbENvbnRlbnRDYWNoZVtyXSk7cmV0dXJufWZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uc2VsZWN0ZWRJZCkrIi90b29sLWNvbnRlbnQvIitlbmNvZGVVUklDb21wb25lbnQoZSkse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aS5lcnJvcj90KGkuZXJyb3IsbnVsbCk6KG4udG9vbENvbnRlbnRDYWNoZVtyXT1pLHQobnVsbCxpKSl9KS5jYXRjaChmdW5jdGlvbigpe3QoIlx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNSIsbnVsbCl9KX19ZnVuY3Rpb24gQW4oZSl7cmV0dXJuISEobi5jb25maWcmJm4uY29uZmlnLmNhcmREZWZhdWx0cyYmbi5jb25maWcuY2FyZERlZmF1bHRzW2VdKX1mdW5jdGlvbiBzYShlLHQscixpKXtpZighKCFlfHxlLmRhdGFzZXQudHJ1bmNhdGVkIT09InRydWUifHxlLmRhdGFzZXQubG9hZGVkPT09InRydWUiKSl7dmFyIGE9ZS5kYXRhc2V0LnRvb2xVc2VJZDthJiYodCYmKHQuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJ0b29sLWNvbnRlbnQtbG9hZGluZyI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9kaXY+JyksZS5kYXRhc2V0LmxvYWRlZD0ibG9hZGluZyIsemQoYSxmdW5jdGlvbih1LHMpe2lmKHUpe3QmJih0LmlubmVySFRNTD1pfHwnPGRpdiBjbGFzcz0idG9vbC1jb250ZW50LWVycm9yIj5cdTUyQTBcdThGN0RcdTU5MzFcdThEMjVcdUZGMENcdTcwQjlcdTUxRkJcdTkxQ0RcdThCRDU8L2Rpdj4nKSxlLmRhdGFzZXQubG9hZGVkPSIiO3JldHVybn1lLmRhdGFzZXQudHJ1bmNhdGVkPSJmYWxzZSIsZS5kYXRhc2V0LmxvYWRlZD0idHJ1ZSI7dmFyIG89dHlwZW9mIHMuY29udGVudD09InN0cmluZyI/cy5jb250ZW50OkpTT04uc3RyaW5naWZ5KHMuY29udGVudCk7cihvLHMpfSkpfX13aW5kb3cuX190Y1RvZ2dsZT1mdW5jdGlvbihlLHQpe3ZhciByPXQuY2xvc2VzdCgiLnRvb2wtdXNlLWNhcmQiKXx8dC5jbG9zZXN0KCIuaW5saW5lLWRpZmYiKTtpZihyKXt2YXIgaT1yLmNsYXNzTGlzdC5jb250YWlucygiY29sbGFwc2VkIik7ci5jbGFzc0xpc3QudG9nZ2xlKCJjb2xsYXBzZWQiKTt2YXIgYT1yLmRhdGFzZXQuZXhwYW5kS2luZHx8InRvb2wtY2FyZCI7aWYoRm4ocixhKSxpKXt2YXIgdT1yLnF1ZXJ5U2VsZWN0b3IoIi50b29sLXVzZS1yZXN1bHQiKTtzYShyLHUsZnVuY3Rpb24ocyl7dSYmKHUuaW5uZXJIVE1MPSc8cHJlIGNsYXNzPSJ0b29sLXVzZS1yZXN1bHQtY29udGVudCI+JytwKHMpKyI8L3ByZT4iKX0sYDxkaXYgY2xhc3M9InRvb2wtY29udGVudC1lcnJvciIgb25jbGljaz0iX190Y1RvZ2dsZShudWxsLCB0aGlzLmNsb3Nlc3QoJy50b29sLXVzZS1jYXJkLC5pbmxpbmUtZGlmZicpLnF1ZXJ5U2VsZWN0b3IoJy50b29sLXVzZS1oZWFkZXIsLmRpZmYtaGVhZGVyJykpIj5cdTUyQTBcdThGN0RcdTU5MzFcdThEMjVcdUZGMENcdTcwQjlcdTUxRkJcdTkxQ0RcdThCRDU8L2Rpdj5gKX19ZSYmKGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKX0sd2luZG93Ll9fdGhpbmtpbmdUb2dnbGU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jbGFzc0xpc3QuY29udGFpbnMoImNvbGxhcHNlZCIpO2lmKHQpe2UuY2xhc3NMaXN0LnJlbW92ZSgiY29sbGFwc2VkIiksZS5jbGFzc0xpc3QuYWRkKCJleHBhbmRlZCIpLGUucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLWlubGluZS1wcmV2aWV3IikudGV4dENvbnRlbnQ9ZS5kYXRhc2V0LnRoaW5raW5nfHwiIjt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1pbmxpbmUtYWN0aW9uIik7ciYmKHIudGV4dENvbnRlbnQ9Ilx1NjUzNlx1OEQ3NyIpfWVsc2V7ZS5jbGFzc0xpc3QucmVtb3ZlKCJleHBhbmRlZCIpLGUuY2xhc3NMaXN0LmFkZCgiY29sbGFwc2VkIik7dmFyIGk9KGUuZGF0YXNldC50aGlua2luZ3x8IiIpLnNsaWNlKDAsNTcpKygoZS5kYXRhc2V0LnRoaW5raW5nfHwiIikubGVuZ3RoPjYwPyJcdTIwMjYiOiIiKTtlLnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1pbmxpbmUtcHJldmlldyIpLnRleHRDb250ZW50PWk7dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLWFjdGlvbiIpO3ImJihyLnRleHRDb250ZW50PSJcdTVDNTVcdTVGMDAiKX1GbihlLCJ0aGlua2luZyIpfSx3aW5kb3cuX19zdWJhZ2VudFJlcGx5VG9nZ2xlPWZ1bmN0aW9uKGUsdCl7ZSYmKGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKTt2YXIgcj10JiZ0LmNsb3Nlc3Q/dC5jbG9zZXN0KCIuc3ViYWdlbnQtcmVwbHkiKTpudWxsO2lmKHIpe3ZhciBpPXIuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7X2kociwic3ViYWdlbnQtcmVwbHkiLCFpKSxGbihyLCJzdWJhZ2VudC1yZXBseSIpfX0sd2luZG93Ll9fc3ViYWdlbnRQYW5lbFRvZ2dsZT1mdW5jdGlvbihlLHQpe2UmJihlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSk7dmFyIHI9dCYmdC5jbG9zZXN0P3QuY2xvc2VzdCgiLnN1YmFnZW50LXBhbmVsIik6bnVsbDtpZihyKXt2YXIgaT1yLmdldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIpPT09InRydWUiO19pKHIsInN1YmFnZW50LXBhbmVsIiwhaSksRm4ociwic3ViYWdlbnQtcGFuZWwiKX19O2Z1bmN0aW9uIFZkKGUpe2lmKGUpZm9yKHZhciB0PWUucXVlcnlTZWxlY3RvckFsbCgnLnN1YmFnZW50LXBhbmVsW2RhdGEtZXhwYW5kZWQ9ImZhbHNlIl0nKSxyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBpPXRbcl0ucXVlcnlTZWxlY3RvcigiLnN1YmFnZW50LXBhbmVsLWJvZHkiKTtpJiYoaS5zY3JvbGxUb3A9aS5zY3JvbGxIZWlnaHQpfX13aW5kb3cuX19pbmxpbmVUb29sVG9nZ2xlPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY2xhc3NMaXN0LnRvZ2dsZSgiaW5saW5lLXRvb2wtb3BlbiIpLHI9ZS5xdWVyeVNlbGVjdG9yKCIuaW5saW5lLXRvb2wtZXhwYW5kZWQiKTtyJiYoci5zdHlsZS5kaXNwbGF5PXQ/ImJsb2NrIjoibm9uZSIpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLmlubGluZS10b29sLXN0YXR1cyIpO2kmJihlLmRhdGFzZXQuc3RhdHVzPT09ImVycm9yIj9pLnRleHRDb250ZW50PSJcdTI3MTciOmUuZGF0YXNldC5zdGF0dXM9PT0iZG9uZSImJihpLnRleHRDb250ZW50PSJcdTI3MTMiKSksdCYmc2EoZSxyLGZ1bmN0aW9uKGEpe2UuZGF0YXNldC5yZXN1bHQ9YSxyJiYoci5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImlubGluZS10b29sLXJlc3VsdCI+JytrbyhhLCIiKSsiPC9kaXY+Iil9KSxGbihlLCJpbmxpbmUtdG9vbCIpfSx3aW5kb3cuX190ZXJtaW5hbEV4cGFuZD1mdW5jdGlvbihlKXt2YXIgdD1lLmNsb3Nlc3QoIi5pbmxpbmUtdGVybWluYWwiKTtpZih0KXt2YXIgcj10LnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLWJvZHkiKTtpZihyKXt2YXIgaT1yLnN0eWxlLmRpc3BsYXk9PT0ibm9uZSI7ci5zdHlsZS5kaXNwbGF5PWk/ImJsb2NrIjoibm9uZSIsdC5kYXRhc2V0LmV4cGFuZGVkPWk/InRydWUiOiJmYWxzZSI7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIudGVybS10b2dnbGUtaWNvbiIpO2lmKGEmJihhLnRleHRDb250ZW50PWk/Ilx1MjVCQyI6Ilx1MjVCNiIpLEZuKHQsInRlcm1pbmFsIiksaSl7dmFyIHU9ci5xdWVyeVNlbGVjdG9yKCIudGVybS1vdXRwdXQiKTtzYSh0LHUsZnVuY3Rpb24ocyl7aWYodSl7Zm9yKHZhciBvPXMuc3BsaXQoYApgKSxsPSIiLGM9MDtjPG8ubGVuZ3RoO2MrKykhb1tjXSYmYz09PW8ubGVuZ3RoLTF8fChsKz0nPGRpdiBjbGFzcz0idGVybS1saW5lIj4nK3Aob1tjXSkrIjwvZGl2PiIpO3UuaW5uZXJIVE1MPWx9fSl9fX19O2Z1bmN0aW9uIFJtKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1zdHJlYW1pbmciKTtpZih0KXt2YXIgcj10LnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1zdHJlYW1pbmctdGV4dCIpO2lmKHIpe3ZhciBpPWUuc3BsaXQoYApgKSxhPWkuc2xpY2UoLTMpO3IudGV4dENvbnRlbnQ9YS5qb2luKGAKYCksci5zY3JvbGxUb3A9ci5zY3JvbGxIZWlnaHR9fX13aW5kb3cuX19hc2tTZWxlY3Q9ZnVuY3Rpb24oZSx0LHIsaSl7dmFyIGE9bi5hc2tVc2VyU2VsZWN0aW9uc1tlXTtpZihhfHwoYT17c3VibWl0dGVkOiExfSxuLmFza1VzZXJTZWxlY3Rpb25zW2VdPWEpLCFhLnN1Ym1pdHRlZCl7dmFyIHU9YVt0XXx8W107aWYoaSl7dmFyIHM9dS5pbmRleE9mKHIpO3M9PT0tMT91LnB1c2gocik6dS5zcGxpY2UocywxKX1lbHNlIHU9dVswXT09PXI/W106W3JdO2FbdF09dSx3aW5kb3cuX19hc2tSZW5kZXIoZSl9fSx3aW5kb3cuX19hc2tSZW5kZXI9ZnVuY3Rpb24oZSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtdG9vbC11c2UtaWQ9IicrZSsnIl0nKTtpZih0KXt2YXIgcj1uLmFza1VzZXJTZWxlY3Rpb25zW2VdfHx7fTt0LnF1ZXJ5U2VsZWN0b3JBbGwoIi5hc2stdXNlci1vcHRpb24iKS5mb3JFYWNoKGZ1bmN0aW9uKHMpe3ZhciBvPXBhcnNlSW50KHMuZGF0YXNldC5xdWVzdGlvbkluZGV4LDEwKSxsPXBhcnNlSW50KHMuZGF0YXNldC5vcHRpb25JbmRleCwxMCksYz0ocltvXXx8W10pLmluZGV4T2YobCkhPT0tMTtzLmNsYXNzTGlzdC50b2dnbGUoInNlbGVjdGVkIixjKX0pO3ZhciBpPXQucXVlcnlTZWxlY3RvcigiLmFzay11c2VyLXN1Ym1pdCIpO2lmKGkpe3ZhciBhPXQucXVlcnlTZWxlY3RvckFsbCgiLmFzay11c2VyLXF1ZXN0aW9uLWdyb3VwIiksdT0hMDthLmZvckVhY2goZnVuY3Rpb24ocyxvKXsoIXJbb118fHJbb10ubGVuZ3RoPT09MCkmJih1PSExKX0pLGkuZGlzYWJsZWQ9IXV8fCEhci5zdWJtaXR0ZWQsci5zdWJtaXR0ZWQmJihpLnRleHRDb250ZW50PSJcdTVERjJcdTYzRDBcdTRFQTQuLi4iLGkuY2xhc3NMaXN0LmFkZCgiYXNrLXVzZXItc3VibWl0dGVkIikpfX19LHdpbmRvdy5fX2Fza1N1Ym1pdD1mdW5jdGlvbihlKXt2YXIgdD1uLmFza1VzZXJTZWxlY3Rpb25zW2VdO2lmKCEoIXR8fHQuc3VibWl0dGVkfHwhbi5zZWxlY3RlZElkKSl7dmFyIHI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcignW2RhdGEtdG9vbC11c2UtaWQ9IicrZSsnIl0nKTtpZihyKXt2YXIgaT1yLnF1ZXJ5U2VsZWN0b3JBbGwoIi5hc2stdXNlci1xdWVzdGlvbi1ncm91cCIpLGE9W10sdT0hMDtpZihpLmZvckVhY2goZnVuY3Rpb24obyxsKXt2YXIgYz10W2xdfHxbXTtpZihjLmxlbmd0aD09PTApe3U9ITE7cmV0dXJufXZhciBmPVtdO2MuZm9yRWFjaChmdW5jdGlvbihkKXt2YXIgdj1vLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW9wdGlvbi1pbmRleD0iJytkKyciXScpO3YmJmYucHVzaCh2LmRhdGFzZXQub3B0aW9uTGFiZWwpfSksYS5wdXNoKGYuam9pbigiLCAiKSl9KSwhIXUpe3Quc3VibWl0dGVkPSEwLHdpbmRvdy5fX2Fza1JlbmRlcihlKTt2YXIgcz1hLmpvaW4oYApgKTtmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK24uc2VsZWN0ZWRJZCsiL2lucHV0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6cytgCmAsdmlldzpuLmN1cnJlbnRWaWV3fSl9KS5jYXRjaChmdW5jdGlvbihvKXtjb25zb2xlLmVycm9yKCJbd2FuZF0gRXJyb3Igc2VuZGluZyBhbnN3ZXI6IixvKSx0LnN1Ym1pdHRlZD0hMSx3aW5kb3cuX19hc2tSZW5kZXIoZSl9KX19fX07ZnVuY3Rpb24gVWQoKXtpZighbi5fX2dsb2JhbExpc3RlbmVyc0JvdW5kKXtuLl9fZ2xvYmFsTGlzdGVuZXJzQm91bmQ9ITAsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItb3ZlcmZsb3ctbWVudSIpO3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgib3BlbiIpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsZnVuY3Rpb24oKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1vdmVyZmxvdy1tZW51Iik7dCYmdC5jbGFzc0xpc3QucmVtb3ZlKCJvcGVuIil9KTt2YXIgZT1mdW5jdGlvbigpe24udG9wYmFyTW9yZU9wZW49ITE7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1tb3JlLW1lbnUiKSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbW9yZS1idXR0b24iKTt0JiZ0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHImJihyLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLHIuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwiZmFsc2UiKSl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXtpZihuLnRvcGJhck1vcmVPcGVuKXt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLW1vcmUtbWVudSIpLGk9ciYmci5wYXJlbnRFbGVtZW50O2kmJiFpLmNvbnRhaW5zKHQudGFyZ2V0KSYmZSgpfX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHQpe3Qua2V5PT09IkVzY2FwZSImJm4udG9wYmFyTW9yZU9wZW4mJmUoKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXtpZihuLnBsdXNQb3BvdmVyT3Blbil7dmFyIHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbXBvc2VyLXBsdXMtcG9wb3ZlciIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF0dGFjaC1idG4iKTtyJiZyLmNvbnRhaW5zKHQudGFyZ2V0KXx8aSYmaS5jb250YWlucyh0LnRhcmdldCl8fEJpKCl9fSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24odCl7dC5rZXk9PT0iRXNjYXBlIiYmbi5wbHVzUG9wb3Zlck9wZW4mJkJpKCl9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24odCl7aWYoIXQudGFyZ2V0LmNsb3Nlc3QoIi5mb2xkZXItcGlja2VyLWNvbnRhaW5lciIpKXt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci1kcm9wZG93biIpO3ImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9fSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbih0KXt2YXIgcj10LnRhcmdldDtpZighKCFyfHxyLm5vZGVUeXBlIT09MSkmJiEodHlwZW9mIHIubWF0Y2hlcyE9ImZ1bmN0aW9uInx8IXIubWF0Y2hlcygiW2RhdGEtbW9kZS1jb250cm9sXSIpKSl7dmFyIGk9ci5nZXRBdHRyaWJ1dGUoImRhdGEtbW9kZS1jb250cm9sIiksYT1yLnZhbHVlO2k9PT0ibW9kZSI/KG4uY2hhdE1vZGU9YSxRbigpLGsmJmsoIlx1NjVCMFx1NEYxQVx1OEJERFx1NkEyMVx1NUYwRlx1RkYxQSIrYSwiaW5mbyIpKTppPT09Im1vZGVsIj9EdihhKTppPT09InRoaW5raW5nIiYmRnYoYSksci5jbG9zZXN0JiZyLmNsb3Nlc3QoIiNjb21wb3Nlci1wbHVzLXBvcG92ZXIiKSYmQmkoKX19KX19ZnVuY3Rpb24gS2QoKXtVZCgpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2dpbi1idXR0b24iKTtpZihlKXtlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixOYSk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWZvcm0iKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoInN1Ym1pdCIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLE5hKCl9KTt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tc3dpdGNoLXNlcnZlci1idXR0b24iKTtyJiZyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixTbyk7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhc3N3b3JkIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9nZ2xlLXBhc3N3b3JkLWJ1dHRvbiIpO2EmJmkmJmEuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIHk9aS50eXBlPT09InRleHQiO2kudHlwZT15PyJwYXNzd29yZCI6InRleHQiLGEudGV4dENvbnRlbnQ9eT8iXHU2NjNFXHU3OTNBIjoiXHU5NjkwXHU4NUNGIixhLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIseT8iXHU2NjNFXHU3OTNBXHU1QkM2XHU3ODAxIjoiXHU5NjkwXHU4NUNGXHU1QkM2XHU3ODAxIiksYS5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIseT8iZmFsc2UiOiJ0cnVlIiksaS5mb2N1cygpfSksaSYmKGkuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oeSl7eS5rZXk9PT0iRW50ZXIiJiZOYSgpfSksaS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtpLmRhdGFzZXQuZXJyb3I9ImZhbHNlIixpLnNldEF0dHJpYnV0ZSgiYXJpYS1pbnZhbGlkIiwiZmFsc2UiKTt2YXIgeT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tZXJyb3IiKTt5JiZhaSh5KX0pLGkuZm9jdXMoKSk7cmV0dXJufXZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLWlucHV0Iik7dSYmKHUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oeSl7eS5rZXk9PT0iRW50ZXIiJiYheS5zaGlmdEtleSYmKHkucHJldmVudERlZmF1bHQoKSxNcygpKX0pLHUuZm9jdXMoKSk7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtc2VuZC1idG4iKTtzJiZzLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe01zKCl9KTt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS10b29sLWNsYXVkZSIpO28mJm8uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7bmwoKX0pO3ZhciBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLXRvb2wtY29kZXgiKTtsJiZsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe24uc2Vzc2lvblRvb2w9ImNvZGV4IixuLnByZWZlcnJlZENvbW1hbmQ9ImNvZGV4IixuLm1vZGVWYWx1ZT0iZnVsbC1hY2Nlc3MiLG5sKCl9KTt2YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS10b29sLXN0cnVjdHVyZWQiKTtjJiZjLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe1VvKCkudGhlbihmdW5jdGlvbigpe050KCEwKX0pLmNhdGNoKGZ1bmN0aW9uKHkpe2soeSYmeS5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4XHU3RUQzXHU2Nzg0XHU1MzE2XHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKX0pfSksbG0oKTt2YXIgZj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbnMtbGlzdCIpO2YmJihmLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixCZCksZi5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixEZCksZi5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW92ZXIiLE92KSxmLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3V0IixQdiksRXAoZikpLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLFh0LCEwKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixYdCk7dmFyIGQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInByb3ZpZGVyLWNhcmRzIik7ZCYmZC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7dmFyIEQ9eS50YXJnZXQuY2xvc2VzdCgiLnByb3ZpZGVyLWNhcmQiKTtpZighKCFEfHxELmNsYXNzTGlzdC5jb250YWlucygiZGlzYWJsZWQiKSkpe3ZhciBSPUQuZ2V0QXR0cmlidXRlKCJkYXRhLXByb3ZpZGVyIik7UiYmKG4uc2Vzc2lvblRvb2w9UixuLnByZWZlcnJlZENvbW1hbmQ9UixTcigpKX19KTt2YXIgdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1raW5kLWNhcmRzIik7diYmdi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7dmFyIEQ9eS50YXJnZXQuY2xvc2VzdCgiLnNlc3Npb24ta2luZC1jYXJkIik7aWYoISghRHx8RC5jbGFzc0xpc3QuY29udGFpbnMoImRpc2FibGVkIikpKXt2YXIgUj1ELmdldEF0dHJpYnV0ZSgiZGF0YS1zZXNzaW9uLWtpbmQiKTtSJiYobi5zZXNzaW9uQ3JlYXRlS2luZD1SLFNyKCkpfX0pO3ZhciBnPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtb2RlLWNhcmRzIik7ZyYmZy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7dmFyIEQ9eS50YXJnZXQuY2xvc2VzdCgiLm1vZGUtY2FyZCIpO2lmKEQpe3ZhciBSPUQuZ2V0QXR0cmlidXRlKCJkYXRhLW1vZGUiKTtSJiYobi5tb2RlVmFsdWU9UixTcigpKX19KTt2YXIgaD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi13b3JrdHJlZS10b2dnbGUiKTtoJiZoLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtuLnNlc3Npb25DcmVhdGVXb3JrdHJlZT1oLmNoZWNrZWR9KTt2YXIgbT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7bSYmKG0uYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKCl7bi5jd2RWYWx1ZT1tLnZhbHVlfSksbS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7bi5jd2RWYWx1ZT1tLnZhbHVlfSksbS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsaWwpLG0uYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGlsKSxtLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLGZ1bmN0aW9uKCl7c2V0VGltZW91dCh0ciwxMjApfSkpO3ZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy10b2dnbGUtYnV0dG9uIik7YiYmYi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsU3YpO3ZhciBGPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1kcmF3ZXItYmFja2Ryb3AiKTtGJiZGLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixMcik7dmFyIHc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNsb3NlLWRyYXdlci1idXR0b24iKTt3JiZ3LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixMcik7dmFyIEU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItY29sbGFwc2UtYnRuIik7RSYmRS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsSHYpO3ZhciBBPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLXBpbi1idG4iKTtBJiZBLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixfdik7dmFyIHg9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItbW9yZS1idG4iKSxJPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLW92ZXJmbG93LW1lbnUiKTt4JiZJJiZ4LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnN0b3BQcm9wYWdhdGlvbigpO3ZhciBEPSFJLmNsYXNzTGlzdC5jb250YWlucygib3BlbiIpO0kuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsRCksRCYmanYoSSl9KTt2YXIgXz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1ob21lLWJ0biIpO18mJl8uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7bi5zZWxlY3RlZElkPW51bGwseWUoKSxCdCgpLHp0KCksUXQoKX0pO3ZhciBWPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLXJlZnJlc2gtYnRuIik7ViYmVi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt3aW5kb3cubG9jYXRpb24ucmVsb2FkKCl9KTt2YXIgWT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9nb3V0LWJ1dHRvbiIpO1kmJlkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLElvKTt2YXIgTD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3dpdGNoLXNlcnZlci1idXR0b24iKTtMJiZMLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixTbyk7dmFyIEI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJhY2stdG8tbmF0aXZlLWJ1dHRvbiIpO0ImJkIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHB2KTt2YXIgVD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtYnV0dG9uIik7VCYmVC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsenYpO3ZhciBNPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbG9zZS1zZXR0aW5ncy1idXR0b24iKTtNJiZNLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixabik7dmFyIGo9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1vZGFsIik7aiYmai5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS50YXJnZXQuaWQ9PT0ic2V0dGluZ3MtbW9kYWwiJiZabigpfSk7dmFyIFo9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNhdmUtcGFzc3dvcmQtYnV0dG9uIik7WiYmWi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsVnYpO2Zvcih2YXIgbmU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnNldHRpbmdzLXRhYiIpLFE9MDtRPG5lLmxlbmd0aDtRKyspbmVbUV0uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBEPXkuY3VycmVudFRhcmdldHx8dGhpcyxSPUQmJkQuZ2V0QXR0cmlidXRlP0QuZ2V0QXR0cmlidXRlKCJkYXRhLXRhYiIpOm51bGw7UiYmSmEoUil9KTt2YXIgc2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNhdmUtY29uZmlnLWJ1dHRvbiIpO3NlJiZzZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsUXYpO3ZhciBlZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWRlZmF1bHQtbW9kZWwtcmVmcmVzaCIpO2VlJiZlZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsQ3YpO3ZhciBTPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctdmlldy1lbnYtYnRuIik7UyYmUy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsQnYpO3ZhciBOPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzYXZlLWRpc3BsYXktYnV0dG9uIik7TiYmTi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsJHYpO3ZhciBXPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAtaWNvbi1waWNrZXIiKTtpZihXKWZvcih2YXIgRz1XLnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iKSxVPTA7VTxHLmxlbmd0aDtVKyspR1tVXS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgeT10aGlzLmdldEF0dHJpYnV0ZSgiZGF0YS1pY29uIik7aWYoISgheXx8dHlwZW9mIFdhbmROYXRpdmU+InUifHx0eXBlb2YgV2FuZE5hdGl2ZS5zZXRBcHBJY29uIT0iZnVuY3Rpb24iKSl0cnl7V2FuZE5hdGl2ZS5zZXRBcHBJY29uKHkpLFhvKHkpO3ZhciBEPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAtaWNvbi1tZXNzYWdlIik7RCYmKEQudGV4dENvbnRlbnQ9Ilx1NTZGRVx1NjgwN1x1NURGMlx1NTIwN1x1NjM2Mlx1RkYwQ1x1OEZENFx1NTZERVx1Njg0Q1x1OTc2Mlx1NTQwRVx1NzUxRlx1NjU0OCIsRC5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLEQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksc2V0VGltZW91dChmdW5jdGlvbigpe0QuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9LDNlMykpfWNhdGNoe319KTt2YXIgJD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBsb2FkLWNlcnQtYnV0dG9uIik7JCYmJC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsWHYpO2Zvcih2YXIgb2U9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmZpbGUtcGlja2VyLWlucHV0IiksbGU9MDtsZTxvZS5sZW5ndGg7bGUrKykoZnVuY3Rpb24oeSl7eS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7dmFyIEQ9eS5jbG9zZXN0KCIuZmlsZS1waWNrZXIiKTtpZihEKXt2YXIgUj1ELnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXBpY2tlci1uYW1lIik7UiYmKHkuZmlsZXMmJnkuZmlsZXNbMF0/KFIudGV4dENvbnRlbnQ9eS5maWxlc1swXS5uYW1lLEQuY2xhc3NMaXN0LmFkZCgiZmlsZS1waWNrZXItaGFzLWZpbGUiKSk6KFIudGV4dENvbnRlbnQ9Ui5nZXRBdHRyaWJ1dGUoImRhdGEtZGVmYXVsdCIpfHwiXHU2NzJBXHU5MDA5XHU2MkU5XHU2NTg3XHU0RUY2IixELmNsYXNzTGlzdC5yZW1vdmUoImZpbGUtcGlja2VyLWhhcy1maWxlIikpKX19KX0pKG9lW2xlXSk7dmFyIHJlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGVjay11cGRhdGUtYnV0dG9uIik7cmUmJnJlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwkbyk7dmFyIEJlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby11cGRhdGUtYnV0dG9uIik7QmUmJkJlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixadik7dmFyIERlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby1yZXN0YXJ0LWJ1dHRvbiIpO0RlJiZEZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZW0pO3ZhciBiZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIpO2JlJiZiZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7R2EoIndlYiIsYmUuY2hlY2tlZCl9KTt2YXIgTz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtYXBrLXRvZ2dsZSIpO08mJk8uYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe0dhKCJhcGsiLE8uY2hlY2tlZCl9KTt2YXIgej1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtZG1nLXRvZ2dsZSIpO3omJnouYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe0dhKCJkbWciLHouY2hlY2tlZCl9KTt2YXIgaWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTtpZSYmaWUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe3JtKGllLmNoZWNrZWQ/ImJldGEiOiJzdGFibGUiKX0pO3ZhciBUZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29weS1jb25uZWN0LWNvZGUtYnV0dG9uIik7VGUmJlRlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtY29kZSIpO3kmJk9yKHkudGV4dENvbnRlbnQsVGUpfSk7dmFyIGNlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtc291bmQiKTtjZSYmKGNlLmNoZWNrZWQ9bi5ub3RpZlNvdW5kLGNlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtuLm5vdGlmU291bmQ9Y2UuY2hlY2tlZDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtbm90aWYtc291bmQiLFN0cmluZyhuLm5vdGlmU291bmQpKX1jYXRjaHt9bi5ub3RpZlNvdW5kJiZvaSgpO3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZi12b2x1bWUtZmllbGQiKTt5JiYoeS5zdHlsZS5kaXNwbGF5PW4ubm90aWZTb3VuZD8iIjoibm9uZSIpfSkpO3ZhciBhZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW5vdGlmLXZvbHVtZSIpLGtlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtdm9sdW1lLXZhbCIpLHB0PWZ1bmN0aW9uKHkpe2lmKHkpe3ZhciBEPU51bWJlcih5Lm1pbnx8MCksUj1OdW1iZXIoeS5tYXh8fDEwMCksd2U9TnVtYmVyKHkudmFsdWV8fDApLEZ0PVI+RD9NYXRoLm1heCgwLE1hdGgubWluKDEwMCwod2UtRCkvKFItRCkqMTAwKSk6MDt5LnN0eWxlLnNldFByb3BlcnR5KCItLXJhbmdlLWZpbGwiLEZ0KyIlIil9fTtpZihhZSl7YWUudmFsdWU9U3RyaW5nKG4ubm90aWZWb2x1bWUpLGtlJiYoa2UudGV4dENvbnRlbnQ9bi5ub3RpZlZvbHVtZSsiJSIpLHB0KGFlKTt2YXIgc3Q9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmLXZvbHVtZS1maWVsZCIpO3N0JiYoc3Quc3R5bGUuZGlzcGxheT1uLm5vdGlmU291bmQ/IiI6Im5vbmUiKTt2YXIgQXQ9bnVsbDthZS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtuLm5vdGlmVm9sdW1lPXBhcnNlSW50KGFlLnZhbHVlLDEwKSxrZSYmKGtlLnRleHRDb250ZW50PW4ubm90aWZWb2x1bWUrIiUiKSxwdChhZSk7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLW5vdGlmLXZvbHVtZSIsU3RyaW5nKG4ubm90aWZWb2x1bWUpKX1jYXRjaHt9aWYoamUmJnR5cGVvZiBXYW5kTmF0aXZlLnNldE5vdGlmaWNhdGlvblZvbHVtZT09ImZ1bmN0aW9uIil0cnl7V2FuZE5hdGl2ZS5zZXROb3RpZmljYXRpb25Wb2x1bWUobi5ub3RpZlZvbHVtZSl9Y2F0Y2h7fX0pLGFlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtvaSgpfSl9dmFyIFVlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtYnViYmxlIik7VWUmJihVZS5jaGVja2VkPW4ubm90aWZCdWJibGUsVWUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe24ubm90aWZCdWJibGU9VWUuY2hlY2tlZDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtbm90aWYtYnViYmxlIixTdHJpbmcobi5ub3RpZkJ1YmJsZSkpfWNhdGNoe319KSk7dmFyIG90PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tcmVxdWVzdC1idG4iKTtvdCYmb3QuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7aWYoamUpe3dpbmRvdy5fb25OYXRpdmVQZXJtaXNzaW9uUmVzdWx0PWZ1bmN0aW9uKCl7Z24oKSxkZWxldGUgd2luZG93Ll9vbk5hdGl2ZVBlcm1pc3Npb25SZXN1bHR9O3RyeXtXYW5kTmF0aXZlLnJlcXVlc3RQZXJtaXNzaW9uKCl9Y2F0Y2h7fX1lbHNlIHR5cGVvZiBOb3RpZmljYXRpb248InUiJiZOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKS50aGVuKGZ1bmN0aW9uKCl7Z24oKX0pfSk7dmFyIEtlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tcmVzZXQtYnRuIik7S2UmJktlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixpbSk7dmFyIHh0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1idG4iKTt4dCYmeHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGVsKTt2YXIgWWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LWRlbGF5LWJ0biIpO2lmKFllJiZZZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsYW0pLGduKCksamUmJnR5cGVvZiBXYW5kTmF0aXZlLmdldEF2YWlsYWJsZVNvdW5kcz09ImZ1bmN0aW9uIil7dmFyIFJlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXRpdmUtc291bmQtc2VjdGlvbiIpLEFlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXRpdmUtc291bmQtc2VsZWN0IiksdmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5hdGl2ZS1zb3VuZC1wcmV2aWV3Iik7aWYoUmUmJkFlKXtSZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTt0cnl7dmFyIEVlPUpTT04ucGFyc2UoV2FuZE5hdGl2ZS5nZXRBdmFpbGFibGVTb3VuZHMoKSksQz1XYW5kTmF0aXZlLmdldE5vdGlmaWNhdGlvblNvdW5kKCk7QWUuaW5uZXJIVE1MPSIiO2Zvcih2YXIgbHQ9MDtsdDxFZS5sZW5ndGg7bHQrKyl7dmFyIHZ0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoIm9wdGlvbiIpO3Z0LnZhbHVlPUVlW2x0XS5pZCx2dC50ZXh0Q29udGVudD1FZVtsdF0ubmFtZSxFZVtsdF0uaWQ9PT1DJiYodnQuc2VsZWN0ZWQ9ITApLEFlLmFwcGVuZENoaWxkKHZ0KX1BZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7dHJ5e1dhbmROYXRpdmUuc2V0Tm90aWZpY2F0aW9uU291bmQoQWUudmFsdWUpfWNhdGNoe319KSx2ZSYmdmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dHJ5e1dhbmROYXRpdmUucHJldmlld1NvdW5kKEFlLnZhbHVlKX1jYXRjaHt9fSl9Y2F0Y2h7fX19aWYoamUmJnR5cGVvZiBXYW5kTmF0aXZlLmlzSGFwdGljRW5hYmxlZD09ImZ1bmN0aW9uIil7dmFyIGJ0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuYXRpdmUtaGFwdGljLXNlY3Rpb24iKSxQZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhhcHRpYy1lbmFibGVkIik7aWYoYnQmJlBlKXtidC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTt0cnl7UGUuY2hlY2tlZD1XYW5kTmF0aXZlLmlzSGFwdGljRW5hYmxlZCgpfWNhdGNoe31QZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7dHJ5e1dhbmROYXRpdmUuc2V0SGFwdGljRW5hYmxlZChQZS5jaGVja2VkKX1jYXRjaHt9UGUuY2hlY2tlZCYmWW4oIm1lZGl1bSIpfSl9fXZhciBTdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLW5ldy1zZXNzaW9uLWJ1dHRvbiIpO1N0JiZTdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsS2EpO3ZhciBadD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZHJhd2VyLW5ldy1zZXNzaW9uLWJ1dHRvbiIpO1p0JiZadC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsS2EpO3ZhciBjdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvc2UtbW9kYWwtYnV0dG9uIik7Y3QmJmN0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix2bik7dmFyIEhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbG9zZS13b3JrdHJlZS1tZXJnZS1idXR0b24iKTtIZSYmSGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFhuKTt2YXIgX2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLWNhbmNlbC1idXR0b24iKTtfZSYmX2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFhuKTt2YXIgQ2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLWNvbmZpcm0tYnV0dG9uIik7Q2UmJkNlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixXdik7dmFyIEplPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJydW4tYnV0dG9uIik7SmUmJkplLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix1bSk7dmFyIEl0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHByb3ZlLXBlcm1pc3Npb24tYnRuIik7SXQmJkl0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixYYyk7dmFyIEV0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZW55LXBlcm1pc3Npb24tYnRuIik7RXQmJkV0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixaYyk7dmFyIGhuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLWFwcHJvdmUtdG9nZ2xlIik7aG4mJmhuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixlZCk7dmFyIFR0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZW5kLWlucHV0LWJ1dHRvbiIpO1R0JiZUdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt6dCgpLHhmKCl9KTt2YXIgTG49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7TG4mJkxuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixCYSk7dmFyIG50PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7bnQmJm50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnRhcmdldC5pZD09PSJzZXNzaW9uLW1vZGFsIiYmdm4oKSx5LnRhcmdldC5pZD09PSJ3b3JrdHJlZS1tZXJnZS1tb2RhbCImJlhuKCl9KTt2YXIgZGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2RlJiYoYW8oZGUpLGRlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLHZtKSxkZS5hZGRFdmVudExpc3RlbmVyKCJwYXN0ZSIsd20pLGRlLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe24udGVybWluYWxDb21wb3Npbmd8fGFsKGRlKXx8KHFwKGRlKSx1dChkZS52YWx1ZSwhMCksa2koZGUpKX0pLGRlLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBvc2l0aW9uc3RhcnQiLGZ1bmN0aW9uKCl7bi50ZXJtaW5hbEludGVyYWN0aXZlJiYobi50ZXJtaW5hbENvbXBvc2luZz0hMCl9KSxkZS5hZGRFdmVudExpc3RlbmVyKCJjb21wb3NpdGlvbmVuZCIsZnVuY3Rpb24oKXtuLnRlcm1pbmFsQ29tcG9zaW5nJiYobi50ZXJtaW5hbENvbXBvc2luZz0hMSxuLnRlcm1pbmFsSW50ZXJhY3RpdmUmJmFsKGRlKSl9KSxkZS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsZnVuY3Rpb24oKXt6dCgpLEFwKHt0YXJnZXQ6ZGV9KX0pLGRlLmFkZEV2ZW50TGlzdGVuZXIoImJsdXIiLHhwKSk7dmFyIHRlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2gtYnRuIiksbWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtdXBsb2FkLWlucHV0IiksT2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvbXBvc2VyLXBsdXMtcG9wb3ZlciIpLEdlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwbHVzLWF0dGFjaC1pdGVtIik7dGUmJk9lJiZ0ZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS5zdG9wUHJvcGFnYXRpb24oKSxUdigpfSksR2UmJm1lJiZHZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtCaSgpLG1lLmNsaWNrKCl9KSxtZSYmbWUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe3ZhciB5PW1lLmZpbGVzO2lmKHkpZm9yKHZhciBEPTA7RDx5Lmxlbmd0aDtEKyspUWEoeVtEXSk7bWUudmFsdWU9IiJ9KTt2YXIgUWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLWJ0biIpO1FlJiZRZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YSgpfSk7dmFyIHhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1jYW5jZWwtYnRuIik7eGUmJnhlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhKCExKX0pO3ZhciBGZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtcmVjb3JkLWJ0biIpO0ZlJiYoRmUuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLEZmKSxGZS5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsd2YpLEZlLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsSXMpLEZlLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLElzKSk7dmFyIEx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcm9tcHQtb3B0aW1pemUtYnRuIik7THQmJkx0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe0JtKCl9KTt2YXIgJGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIik7JGUmJigkZS5hZGRFdmVudExpc3RlbmVyKCJkcmFnb3ZlciIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksJGUuY2xhc3NMaXN0LmFkZCgiZHJhZy1vdmVyIil9KSwkZS5hZGRFdmVudExpc3RlbmVyKCJkcmFnbGVhdmUiLGZ1bmN0aW9uKHkpe3kucHJldmVudERlZmF1bHQoKSx5LnN0b3BQcm9wYWdhdGlvbigpLCRlLmNsYXNzTGlzdC5yZW1vdmUoImRyYWctb3ZlciIpfSksJGUuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksJGUuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyIik7dmFyIEQ9eS5kYXRhVHJhbnNmZXImJnkuZGF0YVRyYW5zZmVyLmZpbGVzO2lmKEQpZm9yKHZhciBSPTA7UjxELmxlbmd0aDtSKyspUWEoRFtSXSl9KSk7dmFyIFA9WyJ0ZXJtaW5hbC1pbnRlcmFjdGl2ZS10b2dnbGUtdG9wIl07UC5mb3JFYWNoKGZ1bmN0aW9uKHkpe3ZhciBEPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHkpO0QmJkQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGNwKX0pO3ZhciBIPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXBhbmVsLXRvZ2dsZS1idG4iKTtIJiZILmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixWcik7dmFyIEo9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtc2lkZS1wYW5lbC1jbG9zZSIpO0omJkouYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG11KTt2YXIgZmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtcGFuZWwtYmFja2Ryb3AiKTtmZSYmZmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG11KTt2YXIgZ2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1maWxlLWJ1dHRvbiIpO2dlJiZnZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsVnIpO3ZhciBYZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWN3ZCIpO1hlJiYoWGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7bi5maWxlUGFuZWxPcGVufHxWcigpfSksWGUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oeSl7KHkua2V5PT09IkVudGVyInx8eS5rZXk9PT0iICIpJiYoeS5wcmV2ZW50RGVmYXVsdCgpLG4uZmlsZVBhbmVsT3Blbnx8VnIoKSl9KSk7dmFyIHluPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbW9yZS1idXR0b24iKSxNbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLW1vcmUtbWVudSIpO3luJiZNbiYmKHluLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnN0b3BQcm9wYWdhdGlvbigpLG4udG9wYmFyTW9yZU9wZW49IW4udG9wYmFyTW9yZU9wZW4sTW4uY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhbi50b3BiYXJNb3JlT3BlbikseW4uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixuLnRvcGJhck1vcmVPcGVuKSx5bi5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLG4udG9wYmFyTW9yZU9wZW4/InRydWUiOiJmYWxzZSIpfSksTW4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBEPXkudGFyZ2V0JiZ5LnRhcmdldC5jbG9zZXN0P3kudGFyZ2V0LmNsb3Nlc3QoIi50b3BiYXItbW9yZS1pdGVtIik6bnVsbDtpZihEKXt2YXIgUj1ELmdldEF0dHJpYnV0ZSgiZGF0YS1hY3Rpb24iKTtzd2l0Y2gobi50b3BiYXJNb3JlT3Blbj0hMSxNbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSx5bi5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSx5bi5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCJmYWxzZSIpLFIpe2Nhc2UiY29weS1jbGF1ZGUtc2Vzc2lvbi1pZCI6bmEoImNsYXVkZVNlc3Npb25JZCIsX3QoKSYmX3QoKS5wcm92aWRlcj09PSJjb2RleCI/IkNvZGV4IHRocmVhZCBJRCBcdTVERjJcdTU5MERcdTUyMzYiOiJDbGF1ZGUgXHU0RjFBXHU4QkREIElEIFx1NURGMlx1NTkwRFx1NTIzNiIpO2JyZWFrO2Nhc2UiY29weS1jd2QiOm5hKCJjd2QiLCJcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTVcdTVERjJcdTU5MERcdTUyMzYiKTticmVhaztjYXNlImNvcHktc2Vzc2lvbi1pZCI6bmEoImlkIiwiXHU0RjFBXHU4QkREIElEIFx1NURGMlx1NTkwRFx1NTIzNiIpO2JyZWFrO2Nhc2Uid29ya3RyZWUtbWVyZ2UiOm4uc2VsZWN0ZWRJZCYmWW8obi5zZWxlY3RlZElkKTticmVhaztjYXNlIndvcmt0cmVlLWNsZWFudXAiOm4uc2VsZWN0ZWRJZCYmSm8obi5zZWxlY3RlZElkKTticmVhaztjYXNlImRlbGV0ZS1zZXNzaW9uIjpuLnNlbGVjdGVkSWQmJihmdW5jdGlvbih3ZSl7RG4oIlx1Nzg2RVx1NUI5QVx1ODk4MVx1NTIyMFx1OTY2NFx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NTQxN1x1RkYxRlx1NkI2NFx1NjRDRFx1NEY1Q1x1NjVFMFx1NkNENVx1NjRBNFx1OTUwMFx1MzAwMiIse3RpdGxlOiJcdTUyMjBcdTk2NjRcdTVGNTNcdTUyNERcdTRGMUFcdThCREQifSkudGhlbihmdW5jdGlvbihGdCl7RnQmJiRzKHdlKX0pfSkobi5zZWxlY3RlZElkKTticmVha319fSkpO3ZhciB4aT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtc2NhbGUtZG93bi10b3AiKSx1bD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtc2NhbGUtdXAtdG9wIik7eGkmJnhpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2d1KC0uMjUpfSksdWwmJnVsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2d1KC4yNSl9KTt2YXIgc2w9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhZ2UtcmVmcmVzaC1idG4iKTtzbCYmc2wuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe2lmKHkmJnkuc2hpZnRLZXkpe2xvY2F0aW9uLnJlbG9hZCgpO3JldHVybn1rbigpLEJ0KHtwcmVzZXJ2ZVN0aWNrU3RhdGU6ITB9KSxsbyghMCl9KTt2YXIgb2w9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLWp1bXAtYm90dG9tIik7b2wmJm9sLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe210KCJmb3JjZSIpfSk7dmFyIGxsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LXVucmVhZC1idWJibGUiKTtsbCYmbGwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7SWwoITApfSk7dmFyIGNsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLXJlZnJlc2giKTtjbCYmY2wuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7cXQoKX0pO3ZhciBkbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1leHBsb3Jlci11cCIpO2RsJiZkbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsR2wpO3ZhciBXZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1leHBsb3Jlci1jd2QiKTtpZihXZSYmV2UudGFnTmFtZT09PSJJTlBVVCIpe3ZhciBucj1XZS52YWx1ZSxmbD1mdW5jdGlvbih5KXt2YXIgRD0oeXx8IiIpLnRyaW0oKTtyZXR1cm4gRD8oRD1ELnJlcGxhY2UoL1wvezIsfS9nLCIvIiksRC5sZW5ndGg+MSYmKEQ9RC5yZXBsYWNlKC9cLyskLywiIikpLEQpOiIifTtXZS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsZnVuY3Rpb24oKXtucj1XZS52YWx1ZSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dHJ5e1dlLnNlbGVjdCgpfWNhdGNoe319LDApfSksV2UuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oeSl7aWYoeS5rZXk9PT0iRW50ZXIiKXt5LnByZXZlbnREZWZhdWx0KCk7dmFyIEQ9ZmwoV2UudmFsdWUpO2lmKCFEKXJldHVybjtucj1ELFdlLnZhbHVlPUQscXQoe2N3ZDpEfSksV2UuYmx1cigpfWVsc2UgeS5rZXk9PT0iRXNjYXBlIiYmKHkucHJldmVudERlZmF1bHQoKSxXZS52YWx1ZT1ucixXZS5ibHVyKCkpfSksV2UuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsZnVuY3Rpb24oKXt2YXIgeT1mbChXZS52YWx1ZSk7aWYoIXkpe1dlLnZhbHVlPW5yO3JldHVybn1pZih5PT09bnIpe1dlLnZhbHVlPXk7cmV0dXJufW5yPXksV2UudmFsdWU9eSxxdCh7Y3dkOnl9KX0pfXZhciBTaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1zZWFyY2gtaW5wdXQiKSxfcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1zZWFyY2gtY2xlYXIiKTtTaSYmU2kuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKHkpe24uZmlsZVNlYXJjaFF1ZXJ5PXkudGFyZ2V0LnZhbHVlLnRyaW0oKSxfciYmX3IuY2xhc3NMaXN0LnRvZ2dsZSgidmlzaWJsZSIsbi5maWxlU2VhcmNoUXVlcnkubGVuZ3RoPjApLEV1KCl9KSxfciYmX3IuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7bi5maWxlU2VhcmNoUXVlcnk9IiIsU2kmJihTaS52YWx1ZT0iIiksX3IuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfSk7dmFyIGhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWlucHV0IiksTGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItZHJvcGRvd24iKSxudT1udWxsLFV0PS0xLGJuPVtdO2Z1bmN0aW9uIHBsKHkpe2hlJiZoZS5jbGFzc0xpc3QuYWRkKCJpbnZhbGlkIik7dmFyIEQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItdmFsaWRhdGlvbiIpO0QmJihELnRleHRDb250ZW50PXksRC5jbGFzc0xpc3QuYWRkKCJ2aXNpYmxlIikpfWZ1bmN0aW9uIHZsKCl7aGUmJmhlLmNsYXNzTGlzdC5yZW1vdmUoImludmFsaWQiKTt2YXIgeT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIik7eSYmKHkudGV4dENvbnRlbnQ9IiIseS5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIikpfWZ1bmN0aW9uIEFtKHkpe2lmKCF5Lmxlbmd0aClyZXR1cm4iIjt2YXIgRD0nPGRpdiBjbGFzcz0iZm9sZGVyLXJlY2VudC1zZWN0aW9uIj48ZGl2IGNsYXNzPSJmb2xkZXItcmVjZW50LXRpdGxlIj5cdTY3MDBcdThGRDFcdTRGN0ZcdTc1Mjg8L2Rpdj4nO3JldHVybiB5LmZvckVhY2goZnVuY3Rpb24oUil7dmFyIHdlPVIucGF0aHx8UjtEKz0nPGRpdiBjbGFzcz0iZm9sZGVyLXJlY2VudC1pdGVtIiBkYXRhLXBhdGg9IicrcCh3ZSkrJyI+PHNwYW4gY2xhc3M9ImZvbGRlci1yZWNlbnQtaXRlbS1wYXRoIj4nK3Aod2UpKyI8L3NwYW4+PC9kaXY+In0pLEQrPSI8L2Rpdj4iLER9ZnVuY3Rpb24geG0oKXtMZSYmZWEoZnVuY3Rpb24oeSl7dmFyIEQ9QW0oeSk7RD8oTGUuaW5uZXJIVE1MPUQsTGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksTGUucXVlcnlTZWxlY3RvckFsbCgiLmZvbGRlci1yZWNlbnQtaXRlbSIpLmZvckVhY2goZnVuY3Rpb24oUil7Ui5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgd2U9dGhpcy5kYXRhc2V0LnBhdGg7aGUmJihoZS52YWx1ZT13ZSxHdCh3ZSksZW4od2UpKX0pfSkpOk5yKCl9KX12YXIgbWw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmtpbmctZGlyLWluZGljYXRvciIpO21sJiZtbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtuLnNlbGVjdGVkSWQ9bnVsbCx5ZSgpLG4uZHJhZnRzPXt9LFF0KCksc2V0VGltZW91dChmdW5jdGlvbigpe3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWlucHV0Iik7eSYmeS5mb2N1cygpfSw1MCl9KTt2YXIgcnU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItdG9nZ2xlIiksTGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItZHJvcGRvd24iKTtydSYmTGUmJnJ1LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe0xlLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIpLHJ1LmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iKX0pO3ZhciBJaT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuZm9sZGVyLXBpY2tlci1jb21wYWN0Iik7aWYoSWkmJihJaS5hZGRFdmVudExpc3RlbmVyKCJkcmFnb3ZlciIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5jbGFzc0xpc3QuYWRkKCJkcmFnLW92ZXIiKX0pLElpLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdsZWF2ZSIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnLW92ZXIiKX0pLElpLmFkZEV2ZW50TGlzdGVuZXIoImRyb3AiLGZ1bmN0aW9uKHkpe3kucHJldmVudERlZmF1bHQoKSx5LnN0b3BQcm9wYWdhdGlvbigpLHRoaXMuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyIik7dmFyIEQ9eS5kYXRhVHJhbnNmZXImJnkuZGF0YVRyYW5zZmVyLml0ZW1zO2lmKEQpZm9yKHZhciBSPTA7UjxELmxlbmd0aDtSKyspe3ZhciB3ZT1EW1JdO2lmKHdlLmtpbmQ9PT0iZmlsZSImJndlLndlYmtpdEdldEFzRW50cnkpe3ZhciBGdD13ZS53ZWJraXRHZXRBc0VudHJ5KCk7aWYoRnQmJkZ0LmlzRGlyZWN0b3J5JiZoZSl7dmFyIE10PUZ0LmZ1bGxQYXRoO2hlLnZhbHVlPU10LEd0KE10KSxlbihNdCk7YnJlYWt9fX19KSksTGUmJkxlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt2YXIgRD15LnRhcmdldC5jbG9zZXN0KCIuZm9sZGVyLXBpY2tlci1xdWljay1idG4iKTtpZihEJiZoZSl7dmFyIFI9RC5kYXRhc2V0LnBhdGg7aGUudmFsdWU9UixHdChSKSxlbihSKSxMZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgd2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItdG9nZ2xlIik7d2UmJndlLmNsYXNzTGlzdC5yZW1vdmUoIm9wZW4iKX19KSxoZSl7dmFyIFNtPWV0KCk7ZW4oU20pLGhlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixmdW5jdGlvbigpe3ZhciB5PXRoaXMudmFsdWUudHJpbSgpO3k/ZW4oeSk6eG0oKX0pLGhlLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbih5KXt2YXIgRD15LnRhcmdldC52YWx1ZS50cmltKCk7VXQ9LTEsbnUmJmNsZWFyVGltZW91dChudSksbnU9c2V0VGltZW91dChmdW5jdGlvbigpe0Q/ZW4oRCk6TnIoKX0sMTUwKX0pLGhlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHkpe2lmKHkua2V5PT09IkVzY2FwZSIpTnIoKSx0aGlzLmJsdXIoKTtlbHNlIGlmKHkua2V5PT09IkFycm93RG93biIpeS5wcmV2ZW50RGVmYXVsdCgpLGJuLmxlbmd0aD4wJiYoVXQ9TWF0aC5taW4oVXQrMSxibi5sZW5ndGgtMSksZ2woKSk7ZWxzZSBpZih5LmtleT09PSJBcnJvd1VwIil5LnByZXZlbnREZWZhdWx0KCksVXQ+MCYmKFV0LS0sZ2woKSk7ZWxzZSBpZih5LmtleT09PSJFbnRlciImJlV0Pj0wKXt5LnByZXZlbnREZWZhdWx0KCk7dmFyIEQ9Ym5bVXRdO2lmKEQpe3ZhciBSPUQuZGF0YXNldC5wYXRoO2lmKFI9PT0iLi4iKXt2YXIgd2U9aGUudmFsdWUudHJpbSgpLEZ0PXdlLnN1YnN0cmluZygwLHdlLmxhc3RJbmRleE9mKCIvIikpO0Z0JiYoaGUudmFsdWU9RnR8fCIvIixHdChoZS52YWx1ZSksZW4oRnR8fCIvIikpfWVsc2UgaGUudmFsdWU9UixHdChSKSxOcigpfX19KX1mdW5jdGlvbiBnbCgpe2JuLmZvckVhY2goZnVuY3Rpb24oeSxEKXt5LmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsRD09PVV0KX0pfWZ1bmN0aW9uIGNnKHkpe31mdW5jdGlvbiBlbih5KXtMZSYmKExlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkQuLi48L2Rpdj4nLExlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLFV0PS0xLGJuPVtdLGZldGNoKCIvYXBpL2ZvbGRlcnM/cT0iK2VuY29kZVVSSUNvbXBvbmVudCh5KSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oRCl7cmV0dXJuIEQuanNvbigpLnRoZW4oZnVuY3Rpb24oUil7cmV0dXJue29rOkQub2ssc3RhdHVzOkQuc3RhdHVzLGRhdGE6Un19KX0pLnRoZW4oZnVuY3Rpb24oRCl7dmFyIFI9RC5kYXRhO2lmKCFELm9rfHxSLmVycm9yKXtwbChSLmVycm9yfHwiXHU4REVGXHU1Rjg0XHU2NUUwXHU2NTQ4IiksTGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWVycm9yIj4nK3AoUi5lcnJvcnx8Ilx1OERFRlx1NUY4NFx1NjVFMFx1NjU0OCIpKyI8L2Rpdj4iO3JldHVybn12bCgpLFIuY3VycmVudFBhdGg7dmFyIHdlPVIuaXRlbXN8fFtdLEZ0PVIuY3VycmVudFBhdGh8fHk7aWYod2UubGVuZ3RoPT09MCl7TGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWxvYWRpbmciPlx1N0E3QVx1NzZFRVx1NUY1NTwvZGl2Pic7cmV0dXJufUxlLmlubmVySFRNTD13ZS5tYXAoZnVuY3Rpb24oTXQpe3ZhciBUaT1NdC50eXBlPT09InBhcmVudCI/Ilx1MjFBOVx1RkUwRiI6Ilx1ezFGNEMxfSIsaXU9TXQudHlwZT09PSJwYXJlbnQiPyIuLiAoXHU4RkQ0XHU1NkRFXHU0RTBBXHU3RUE3KSI6TXQubmFtZTtyZXR1cm4nPGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1pdGVtIiBkYXRhLXBhdGg9IicrcChNdC5wYXRoKSsnIiBkYXRhLXR5cGU9IicrTXQudHlwZSsnIj48c3BhbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1pdGVtLWljb24iPicrVGkrIjwvc3Bhbj48c3Bhbj4iK3AoaXUpKyI8L3NwYW4+PC9kaXY+In0pLmpvaW4oIiIpLGJuPUFycmF5LmZyb20oTGUucXVlcnlTZWxlY3RvckFsbCgiLmZvbGRlci1waWNrZXItaXRlbSIpKSxibi5mb3JFYWNoKGZ1bmN0aW9uKE10KXtNdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgVGk9dGhpcy5kYXRhc2V0LnBhdGgsaXU9dGhpcy5kYXRhc2V0LnR5cGU7aWYoaGUpaWYoaXU9PT0icGFyZW50Iil7dmFyIEVsPWhlLnZhbHVlLnRyaW0oKSxGbD1FbC5zdWJzdHJpbmcoMCxFbC5sYXN0SW5kZXhPZigiLyIpKTtoZS52YWx1ZT1GbHx8Ii8iLEd0KGhlLnZhbHVlKSxlbihGbHx8Ii8iKX1lbHNlIGhlLnZhbHVlPVRpLEd0KFRpKSx2bCgpLE5yKCl9KX0pfSkuY2F0Y2goZnVuY3Rpb24oRCl7cGwoIlx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNSIpLExlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1lcnJvciI+XHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1PC9kaXY+J30pKX1mdW5jdGlvbiBOcigpe0xlJiZMZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxVdD0tMSxibj1bXX12YXIgRW49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItbW9kYWwiKSxobD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvc2UtZm9sZGVyLXBpY2tlciIpO2Z1bmN0aW9uIGRnKCl7aWYoRW4pe0VuLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGhlJiYoaGUudmFsdWU9ZXQoKSk7dmFyIHk9ZXQoKTtlbih5KX19aGwmJkVuJiZobC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtFbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX0pLEVuJiZFbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS50YXJnZXQ9PT1FbiYmRW4uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9KTt2YXIgeWw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1naXQtYmFkZ2UiKTt5bCYmeWwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kucHJldmVudERlZmF1bHQoKSxNdSgpfSk7dmFyIGJsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbW9kYWwiKTtibCYmYmwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kudGFyZ2V0LmlkPT09InF1aWNrLWNvbW1pdC1tb2RhbCImJiFuLnF1aWNrQ29tbWl0U3VibWl0dGluZyYmX24oKX0pLHF1KCksS24oKSxQcCgpLGFkKCksTmYoKSxrdCgpfWZ1bmN0aW9uIEJ0KGUpe3ZhciB0PWV8fHt9O24ubGFzdFJlbmRlcmVkSGFzaD0wLG4ubGFzdFJlbmRlcmVkTXNnQ291bnQ9MCxuLmxhc3RSZW5kZXJlZEVtcHR5PW51bGwsbi5yZW5kZXJQZW5kaW5nPSExLG4uY2hhdFJlbmRlcmVkQ291bnQ9bi5jaGF0UGFnZVNpemUsbi5hc2tVc2VyU2VsZWN0aW9ucz17fSxuLmNoYXRTY3JvbGxFbGVtZW50JiYobi5jaGF0U2Nyb2xsSGFuZGxlciYmbi5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLG4uY2hhdFNjcm9sbEhhbmRsZXIpLG4uY2hhdFNjcm9sbFdoZWVsSGFuZGxlciYmbi5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsbi5jaGF0U2Nyb2xsV2hlZWxIYW5kbGVyKSxuLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlciYmbi5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixuLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlciksbi5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlciYmbi5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLG4uY2hhdFNjcm9sbFRvdWNoTW92ZUhhbmRsZXIpKSxuLmNoYXRTY3JvbGxFbGVtZW50PW51bGwsbi5jaGF0U2Nyb2xsSGFuZGxlcj1udWxsLG4uY2hhdFNjcm9sbFdoZWVsSGFuZGxlcj1udWxsLG4uY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyPW51bGwsbi5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcj1udWxsLG4uY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSExLHQucHJlc2VydmVTdGlja1N0YXRlfHwobi5jaGF0U3RpY2tUb0JvdHRvbT0hMCxuLmNoYXRVbnJlYWRDb3VudD0wLG4uY2hhdFVucmVhZFN0YXJ0SW5kZXg9LTEsbi5jaGF0SW5pdGlhbFJlbmRlckRvbmU9ITEpfWZ1bmN0aW9uIGV0KCl7cmV0dXJuIG4ud29ya2luZ0Rpcnx8dG4oKX13aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixmdW5jdGlvbigpe24uaXNPbmxpbmU9ITAsaWkoKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvZmZsaW5lIixmdW5jdGlvbigpe24uaXNPbmxpbmU9ITEsaWkoKX0pO2Z1bmN0aW9uIGlpKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm9mZmxpbmUtYmFubmVyIik7aWYoIW4uaXNPbmxpbmUmJiFlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmlkPSJvZmZsaW5lLWJhbm5lciIsdC5jbGFzc05hbWU9Im9mZmxpbmUtYmFubmVyIix0LnRleHRDb250ZW50PSJZb3UgYXJlIG9mZmxpbmUgLSBzb21lIGZlYXR1cmVzIG1heSBiZSBsaW1pdGVkIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHQpfWVsc2Ugbi5pc09ubGluZSYmZSYmZS5yZW1vdmUoKX1mdW5jdGlvbiBZZCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAiKTtlJiYoZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZyI+PGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nLWNhcmQiPjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy1zcGlubmVyIj48L2Rpdj48ZGl2IGNsYXNzPSJib290LWxvYWRpbmctdGV4dCI+XHU2QjYzXHU1NzI4XHU4RkRFXHU2M0E1IFdhbmRcdTIwMjY8L2Rpdj48L2Rpdj48L2Rpdj4nKX1mdW5jdGlvbiBocihlLHQpe2lmKG4uY29uZmlnJiYhZG9jdW1lbnQuaGlkZGVuKXt2YXIgcj10JiZ0LmltbWVkaWF0ZT09PSEwLGk9RGF0ZS5ub3coKTshciYmaS1uLmxhc3RGb3JlZ3JvdW5kU3luY0F0PDE1MDB8fChuLmxhc3RGb3JlZ3JvdW5kU3luY0F0PWksbi5mb3JlZ3JvdW5kU3luY1RpbWVyJiYoY2xlYXJUaW1lb3V0KG4uZm9yZWdyb3VuZFN5bmNUaW1lciksbi5mb3JlZ3JvdW5kU3luY1RpbWVyPW51bGwpLEpkKGUscikpfX1mdW5jdGlvbiBKZChlLHQpe3JldHVybiFuLmNvbmZpZ3x8ZG9jdW1lbnQuaGlkZGVuP1Byb21pc2UucmVzb2x2ZSgpOihadSgpLHQ/R2koInJlc3VtZS1mb3JjZSIpOighbi53c3x8bi53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0Lk9QRU4mJm4ud3MucmVhZHlTdGF0ZSE9PVdlYlNvY2tldC5DT05ORUNUSU5HKSYmJHIoKSxuLmNsYXVkZUhpc3RvcnlMb2FkZWQmJlF1KCksZm4oe3NraXBTZWxlY3RlZE91dHB1dFJlbG9hZDohMH0pLmNhdGNoKGZ1bmN0aW9uKHIpe2NvbnNvbGUuZXJyb3IoIlt3YW5kXSBmb3JlZ3JvdW5kIHN5bmMgZmFpbGVkOiIsZSxyKX0pKX1mdW5jdGlvbiBHZCgpe3dpbmRvdy5fX3dhbmRGb3JlZ3JvdW5kU3luY0JvdW5kfHwod2luZG93Ll9fd2FuZEZvcmVncm91bmRTeW5jQm91bmQ9ITAsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsZnVuY3Rpb24oKXtkb2N1bWVudC5oaWRkZW4/SmkoKTooaHIoInZpc2liaWxpdHkiKSxncigidmlzaWJpbGl0eSIpKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsZnVuY3Rpb24oKXtocigiZm9jdXMiKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJwYWdlc2hvdyIsZnVuY3Rpb24oKXtocigicGFnZXNob3ciKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXN1bWUiLGZ1bmN0aW9uKCl7aHIoInJlc3VtZSIpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIndhbmQtYW5kcm9pZC1yZXN1bWUiLGZ1bmN0aW9uKCl7aHIoImFuZHJvaWQtcmVzdW1lIix7aW1tZWRpYXRlOiEwfSksZ3IoImFuZHJvaWQtcmVzdW1lIil9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2FuZC1pbWUtc3RhdGUiLGZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuZGV0YWlsJiZlLmRldGFpbC5zdGF0ZTtpZih0PT09InNob3duInx8dD09PSJoaWRkZW4iKXRyeXtpdCgibmF0aXZlLWltZS0iK3Qse2ZvcmNlUmVwbGF5OiEwfSksbXQoIm5hdGl2ZS1pbWUiKX1jYXRjaHt9fSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIndhbmQtYW5kcm9pZC1uZXR3b3JrIixmdW5jdGlvbihlKXt2YXIgdD1lJiZlLmRldGFpbCYmZS5kZXRhaWwuc3RhdGU7aWYodD09PSJsb3N0Iil7bi5pc09ubGluZT0hMTt0cnl7aWkoKX1jYXRjaHt9cmV0dXJufWlmKHQ9PT0iYXZhaWxhYmxlInx8dD09PSJjaGFuZ2VkInx8dD09PSJ2YWxpZGF0ZWQiKXtuLmlzT25saW5lPSEwO3RyeXtpaSgpfWNhdGNoe31HaSgiYW5kcm9pZC1uZXR3b3JrLSIrdCl9fSkpfWZ1bmN0aW9uIFFkKCl7ZmV0Y2goIi9hcGkvc2Vzc2lvbi1jaGVjayIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLm9rP2UuanNvbigpOnthdXRoZWQ6ITF9fSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4hZXx8IWUuYXV0aGVkPyhuLmxvZ2luQ2hlY2tlZD0hMCxRdCgpLG51bGwpOmZldGNoKCIvYXBpL2NvbmZpZyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lm9rP3QuanNvbigpOihuLmxvZ2luQ2hlY2tlZD0hMCxRdCgpLG51bGwpfSl9KS50aGVuKGZ1bmN0aW9uKGUpe2UmJihuLmNvbmZpZz1lLG4ubG9naW5DaGVja2VkPSEwLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3RyeXtRdCh7c2tpcFNoZWxsQ2hyb21lOiEwfSl9Y2F0Y2h7fUdkKCksJHUoKSxqdCgpLFdvKCksc2YoKSxlLnVwZGF0ZUF2YWlsYWJsZSYmZS5sYXRlc3RWZXJzaW9uJiZCcyhlLmN1cnJlbnRWZXJzaW9ufHwiLSIsZS5sYXRlc3RWZXJzaW9uKSx4biYmdG0oKSxhbiYmbm0oKSxuLmNsYXVkZUhpc3RvcnlMb2FkZWR8fHNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLmNsYXVkZUhpc3RvcnlMb2FkZWR8fFFyKCl9LDYwMCl9KSl9KS5jYXRjaChmdW5jdGlvbigpe2lmKG4ubG9naW5DaGVja2VkPSEwLCFuYXZpZ2F0b3Iub25MaW5lKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwIik7ZSYmKGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJib290LWxvYWRpbmciPjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy1jYXJkIj48ZGl2IGNsYXNzPSJib290LWxvYWRpbmctdGV4dCIgc3R5bGU9ImZvbnQtc2l6ZToxLjNlbTttYXJnaW4tYm90dG9tOjEycHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo4cHgiPicrSygic2lnbmFsIix7c2l6ZToyMCxzdHJva2VXaWR0aDoxLjh9KSsnPHNwYW4+XHU2NUUwXHU2Q0Q1XHU4RkRFXHU2M0E1XHU1MjMwXHU2NzBEXHU1MkExXHU1NjY4PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy10ZXh0IiBzdHlsZT0ib3BhY2l0eTowLjc7Zm9udC1zaXplOjAuOTVlbSI+XHU4QkY3XHU2OEMwXHU2N0U1XHU3RjUxXHU3RURDXHU4RkRFXHU2M0E1XHU2MjE2XHU3ODZFXHU4QkE0IFdhbmQgXHU2NzBEXHU1MkExXHU2QjYzXHU1NzI4XHU4RkQwXHU4ODRDXHUzMDAyPC9kaXY+PGJ1dHRvbiBvbmNsaWNrPSJsb2NhdGlvbi5yZWxvYWQoKSIgc3R5bGU9Im1hcmdpbi10b3A6MThweDtwYWRkaW5nOjhweCAyNHB4O2JvcmRlci1yYWRpdXM6OHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxNTAsMTE4LDg1LDAuMyk7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuOCk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjAuOTVlbSI+XHU5MUNEXHU4QkQ1PC9idXR0b24+PC9kaXY+PC9kaXY+Jyksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9ubGluZSIsZnVuY3Rpb24oKXtsb2NhdGlvbi5yZWxvYWQoKX0se29uY2U6ITB9KTtyZXR1cm59UXQoKX0pfWRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihlKXtpZighTmUoKSYmIW4uc2lkZWJhclBpbm5lZCYmIW4uc2lkZWJhckNvbGxhcHNlZCYmbi5zZXNzaW9uc0RyYXdlck9wZW4pe3ZhciB0PWUudGFyZ2V0OyF0fHwhKHQgaW5zdGFuY2VvZiBFbGVtZW50KXx8dC5jbG9zZXN0KCIjc2Vzc2lvbnMtZHJhd2VyIil8fHQuY2xvc2VzdCgiI3Nlc3Npb25zLXRvZ2dsZS1idXR0b24iKXx8dC5jbG9zZXN0KCIuZmxvYXRpbmctc2lkZWJhci10b2dnbGUiKXx8dC5jbG9zZXN0KCIuc2lkZWJhci10aWxlLWJ1YmJsZSIpfHx0LmNsb3Nlc3QoIi5tb2RhbC1iYWNrZHJvcCwgLm1vZGFsLW92ZXJsYXksIC5tb2RhbC1jb250YWluZXIsIFtyb2xlPSdkaWFsb2cnXSwgW3JvbGU9J21lbnUnXSwgLnRvcGJhci1tb3JlLW1lbnUsIC5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdywgLmZvbGRlci1waWNrZXItZHJvcGRvd24sIC5wYXRoLXN1Z2dlc3Rpb25zLCAucGVybWlzc2lvbi1wcm9tcHQtb3ZlcmxheSwgLnJlc3RhcnQtb3ZlcmxheSIpfHxJdigpfX0sITApLFlkKCksUWQoKTtmdW5jdGlvbiBRdChlKXt2YXIgdD1lJiZlLnNraXBTaGVsbENocm9tZSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAiKSxpPW4uY29uZmlnIT09bnVsbCxhPW4ubW9kYWxPcGVuLHU9IWl8fCEhZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKHUmJm1yKCksZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsYXNzTGlzdC5hZGQoIm5vLXRyYW5zaXRpb24iKSxuLnNpZGViYXJQaW5uZWQmJiFuLnNpZGViYXJDb2xsYXBzZWQmJiFOZSgpJiYobi5zZXNzaW9uc0RyYXdlck9wZW49ITAsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMCkpLHIuaW5uZXJIVE1MPWk/WmQoKTpYZCgpLEJ0KCksS2QoKSxUcigpLEZpKCksJG4oX3QoKSksQ2koKSx0fHxJcigpLGkmJm4uZmlsZVBhbmVsT3BlbiYmcXQoKSxkb2N1bWVudC5ib2R5Lm9mZnNldEhlaWdodCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZSgibm8tdHJhbnNpdGlvbiIpfSksYSYmbi5tb2RhbE9wZW4pe3ZhciBzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7aWYocyl7cy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7byYmKG8udmFsdWU9bi5jd2RWYWx1ZSksU3IoKX19aWYoaSYmbi5zZWxlY3RlZElkJiZuLmdpdFN0YXR1c1Nlc3Npb25JZCE9PW4uc2VsZWN0ZWRJZCYmd24obi5zZWxlY3RlZElkKSxpKXt2YXIgbD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYyl7cmV0dXJuIGMuaWQ9PT1uLnNlbGVjdGVkSWR9KTtldShsKX19ZnVuY3Rpb24gJGQoKXt2YXIgZT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24ocil7cmV0dXJuIHIuaWQ9PT1uLnNlbGVjdGVkSWR9KSx0PWUmJmUuYXBwcm92YWxTdGF0cztyZXR1cm4hdHx8dC50b3RhbD09PTA/JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cyBoaWRkZW4iIGlkPSJhcHByb3ZhbC1zdGF0cyI+PC9zcGFuPic6JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cyIgaWQ9ImFwcHJvdmFsLXN0YXRzIj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtZGl2aWRlciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1iYWRnZSIgaWQ9ImFwcHJvdmFsLXN0YXRzLWJhZGdlIiB0aXRsZT0iXHU2NzJDXHU2QjIxXHU0RjFBXHU4QkREXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU3RURGXHU4QkExIj48c3ZnIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1pY29uIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTIgMjJzOC00IDgtMTBWNWwtOC0zLTggM3Y3YzAgNiA4IDEwIDggMTB6Ii8+PC9zdmc+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXRvdGFsIj4nK3QudG90YWwrJzwvc3Bhbj48L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXBvcHVwIiBpZD0iYXBwcm92YWwtc3RhdHMtcG9wdXAiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1wb3B1cC10aXRsZSI+XHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU3RURGXHU4QkExPC9zcGFuPicrKHQuY29tbWFuZD4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSygidGVybWluYWwiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1NDdEXHU0RUU0XHU2MjY3XHU4ODRDPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrdC5jb21tYW5kKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyh0LmZpbGU+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0soImVkaXQiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU2NTg3XHU0RUY2XHU1MTk5XHU1MTY1PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrdC5maWxlKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyh0LnRvb2w+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0soIndyZW5jaCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTUxNzZcdTRFRDZcdTVERTVcdTUxNzc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+Jyt0LnRvb2wrIjwvc3Bhbj48L3NwYW4+IjoiIikrJzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3cgYXBwcm92YWwtc3RhdHMtcm93LXRvdGFsIj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSygic2lnbWEiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1NDA4XHU4QkExPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrdC50b3RhbCsiPC9zcGFuPjwvc3Bhbj48L3NwYW4+PC9zcGFuPiJ9ZnVuY3Rpb24gWGQoKXtyZXR1cm4gbi5sb2dpbkNoZWNrZWQ/JzxkaXYgY2xhc3M9ImxvZ2luLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0ibG9naW4tY2FyZCI+PGRpdiBjbGFzcz0ibG9naW4taGVhZGVyIj48ZGl2IGNsYXNzPSJsb2dpbi1sb2dvIj48ZGl2IGNsYXNzPSJsb2dpbi1sb2dvLWljb24iPlc8L2Rpdj48c3BhbiBjbGFzcz0ibG9naW4tbG9nby10ZXh0Ij5XYW5kPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImxvZ2luLXN1YnRpdGxlIj5cdTU3MjhcdTZENEZcdTg5QzhcdTU2NjhcdTRFMkRcdThGRDBcdTg4NENcdTY3MkNcdTY3M0FcdTdFQzhcdTdBRUY8L2Rpdj48L2Rpdj48Zm9ybSBpZD0ibG9naW4tZm9ybSIgY2xhc3M9ImxvZ2luLWJvZHkiIGF1dG9jb21wbGV0ZT0ib24iPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ1c2VybmFtZSIgYXV0b2NvbXBsZXRlPSJ1c2VybmFtZSIgdmFsdWU9IndhbmQiIHRhYmluZGV4PSItMSIgYXJpYS1oaWRkZW49InRydWUiIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0Oi05OTk5cHg7d2lkdGg6MXB4O2hlaWdodDoxcHg7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmUiIHJlYWRvbmx5IC8+PHAgY2xhc3M9ImxvZ2luLWhpbnQiPlx1OEY5M1x1NTE2NSBXYW5kIFx1OEJCRlx1OTVFRVx1NUJDNlx1NzgwMVx1NEVFNVx1OEZEQlx1NTE2NVx1NjNBN1x1NTIzNlx1NTNGMFx1MzAwMjwvcD48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCIgZm9yPSJwYXNzd29yZCI+XHU1QkM2XHU3ODAxPC9sYWJlbD48ZGl2IGNsYXNzPSJwYXNzd29yZC1maWVsZCI+PGlucHV0IGlkPSJwYXNzd29yZCIgdHlwZT0icGFzc3dvcmQiIGNsYXNzPSJmaWVsZC1pbnB1dCBwYXNzd29yZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1OEJCRlx1OTVFRVx1NUJDNlx1NzgwMSIgYXV0b2NvbXBsZXRlPSJjdXJyZW50LXBhc3N3b3JkIiBkYXRhLWVycm9yPSJmYWxzZSIgYXJpYS1kZXNjcmliZWRieT0icGFzc3dvcmQtaGludCBsb2dpbi1lcnJvciIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgLz48YnV0dG9uIGlkPSJ0b2dnbGUtcGFzc3dvcmQtYnV0dG9uIiB0eXBlPSJidXR0b24iIGNsYXNzPSJwYXNzd29yZC10b2dnbGUiIGFyaWEtbGFiZWw9Ilx1NjYzRVx1NzkzQVx1NUJDNlx1NzgwMSIgYXJpYS1wcmVzc2VkPSJmYWxzZSI+XHU2NjNFXHU3OTNBPC9idXR0b24+PC9kaXY+PHAgaWQ9InBhc3N3b3JkLWhpbnQiIGNsYXNzPSJoaW50Ij5cdTRGN0ZcdTc1MjhcdTRGNjBcdTU3MjggV2FuZCBcdTRFMkRcdThCQkVcdTdGNkVcdTc2ODRcdThCQkZcdTk1RUVcdTVCQzZcdTc4MDFcdTMwMDI8L3A+PHAgaWQ9ImxvZ2luLWVycm9yIiBjbGFzcz0iZXJyb3ItbWVzc2FnZSBoaWRkZW4iIHJvbGU9ImFsZXJ0Ij48L3A+PC9kaXY+PGJ1dHRvbiBpZD0ibG9naW4tYnV0dG9uIiB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrIj5cdThGREJcdTUxNjVcdTYzQTdcdTUyMzZcdTUzRjA8L2J1dHRvbj4nKyhqYSgpPyc8YnV0dG9uIGlkPSJsb2dpbi1zd2l0Y2gtc2VydmVyLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWJsb2NrIGxvZ2luLXN3aXRjaC1zZXJ2ZXIiIHR5cGU9ImJ1dHRvbiI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIyIiB5PSIzIiB3aWR0aD0iMjAiIGhlaWdodD0iOCIgcng9IjIiLz48cmVjdCB4PSIyIiB5PSIxMyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjgiIHJ4PSIyIi8+PGxpbmUgeDE9IjYiIHkxPSI3IiB4Mj0iNi4wMSIgeTI9IjciLz48bGluZSB4MT0iNiIgeTE9IjE3IiB4Mj0iNi4wMSIgeTI9IjE3Ii8+PC9zdmc+PHNwYW4+XHU1MjA3XHU2MzYyXHU2NzBEXHU1MkExXHU1NjY4PC9zcGFuPjwvYnV0dG9uPic6IiIpKyI8L2Zvcm0+PC9kaXY+PC9kaXY+IjonPGRpdiBjbGFzcz0ibG9naW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJsb2dpbi1jYXJkIGxvZ2luLWNhcmQtbG9hZGluZyI+PGRpdiBjbGFzcz0ibG9naW4taGVhZGVyIj48ZGl2IGNsYXNzPSJsb2dpbi1sb2dvIj48ZGl2IGNsYXNzPSJsb2dpbi1sb2dvLWljb24iPlc8L2Rpdj48c3BhbiBjbGFzcz0ibG9naW4tbG9nby10ZXh0Ij5XYW5kPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImxvZ2luLXN1YnRpdGxlIj5cdTZCNjNcdTU3MjhcdTYwNjJcdTU5MERcdTc2N0JcdTVGNTVcdTcyQjZcdTYwMDE8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJsb2dpbi1ib2R5Ij48ZGl2IGNsYXNzPSJsb2dpbi1zdGF0dXMiPjxzcGFuIGNsYXNzPSJsb2dpbi1zcGlubmVyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjxkaXY+PHAgY2xhc3M9ImxvZ2luLWhpbnQiPlx1NkI2M1x1NTcyOFx1NjhDMFx1NjdFNVx1NjcyQ1x1NTczMFx1NzY3Qlx1NUY1NVx1NEYxQVx1OEJERFx1RkYwQ1x1OEJGN1x1N0EwRFx1NTAxOVx1MzAwMjwvcD48cCBjbGFzcz0ibG9naW4tbXV0ZWQiPlx1NTk4Mlx1Njc5Q1x1NEY2MFx1NTIxQVx1NTIzN1x1NjVCMFx1OTg3NVx1OTc2Mlx1RkYwQ1x1OEZEOVx1NjYyRlx1NkI2M1x1NUUzOFx1NzNCMFx1OEM2MVx1MzAwMjwvcD48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4nfWZ1bmN0aW9uIFpkKCl7dmFyIGU9IjxcL3NjcmlwdD4iLHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGgpe3JldHVybiBoLmlkPT09bi5zZWxlY3RlZElkfSkscj10P3hyKHQuY29tbWFuZCk6Ilx1NjcyQVx1OTAwOVx1NjJFOVx1NEYxQVx1OEJERCIsaT10P3QubW9kZSsiIHwgIit0LnN0YXR1czoiXHU3MEI5XHU1MUZCXHU0RTBBXHU2NUI5XHUzMDBDXHU2NUIwXHU1QkY5XHU4QkREXHUzMDBEXHU1RjAwXHU1OUNCIixhPW4uc2VsZWN0ZWRJZCYmbi5kcmFmdHNbbi5zZWxlY3RlZElkXXx8IiIsdT1uLnNlc3Npb25zRHJhd2VyT3Blbj8iIG9wZW4iOiIiLHM9dnUoKT8iIG9wZW4iOiIiLG89bXYoKSxsPVJ0KG8sbi5jaGF0TW9kZSksYz1OZSgpLGY9ISFuLnNpZGViYXJQaW5uZWQmJiEhbi5zaWRlYmFyQ29sbGFwc2VkLGQ9Znx8IWMmJighIW4uc2lkZWJhclBpbm5lZHx8ISFuLnNlc3Npb25zRHJhd2VyT3Blbiksdj1mPyIgc2lkZWJhci1jb2xsYXBzZWQiOiIiLGc9Zj8iIGNvbGxhcHNlZCI6IiI7cmV0dXJuJzxkaXYgY2xhc3M9ImFwcC1jb250YWluZXIiPjxkaXYgaWQ9InNlc3Npb25zLWRyYXdlci1iYWNrZHJvcCIgY2xhc3M9ImRyYXdlci1iYWNrZHJvcCcrcysnIj48L2Rpdj48ZGl2IGNsYXNzPSJtYWluLWxheW91dCcrKG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPyIgc2lkZWJhci1vcGVuIjoiIikrKGQ/IiBzaWRlYmFyLXBpbm5lZCI6IiIpK3YrJyI+PGFzaWRlIGlkPSJzZXNzaW9ucy1kcmF3ZXIiIGNsYXNzPSJzaWRlYmFyJyt1KyhkPyIgcGlubmVkIjoiIikrZysnIj48ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlciI+PGRpdiBjbGFzcz0ic2lkZWJhci1oZWFkZXItbWFpbiI+PGRpdiBjbGFzcz0idG9wYmFyLWxvZ28taWNvbiI+VzwvZGl2PjxzcGFuIGNsYXNzPSJzaWRlYmFyLXRpdGxlIj5cdTRGMUFcdThCREQ8L3NwYW4+PHNwYW4gY2xhc3M9InNlc3Npb24tY291bnQiIGlkPSJzZXNzaW9uLWNvdW50Ij4nK1N0cmluZyhuLnNlc3Npb25zLmxlbmd0aCkrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlci1hY3Rpb25zIj48ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlci1tb3JlIj48YnV0dG9uIGlkPSJzaWRlYmFyLW1vcmUtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjZGNFx1NTkxQVx1NjRDRFx1NEY1QyI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjUiIHI9IjEuNSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjEuNSIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTkiIHI9IjEuNSIvPjwvc3ZnPjwvYnV0dG9uPjxkaXYgY2xhc3M9InNpZGViYXItaGVhZGVyLW92ZXJmbG93IiBpZD0ic2lkZWJhci1vdmVyZmxvdy1tZW51Ij48YnV0dG9uIGNsYXNzPSJvdmVyZmxvdy1pdGVtIiBpZD0ic2lkZWJhci1ob21lLWJ0biIgdHlwZT0iYnV0dG9uIj48c3ZnIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0zIDlsOS03IDkgN3YxMWEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnoiLz48cG9seWxpbmUgcG9pbnRzPSI5IDIyIDkgMTIgMTUgMTIgMTUgMjIiLz48L3N2Zz48c3Bhbj5cdTU2REVcdTUyMzBcdTk5OTZcdTk4NzU8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0ib3ZlcmZsb3ctaXRlbSIgaWQ9InNpZGViYXItcmVmcmVzaC1idG4iIHR5cGU9ImJ1dHRvbiI+PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cG9seWxpbmUgcG9pbnRzPSIyMyA0IDIzIDEwIDE3IDEwIi8+PHBhdGggZD0iTTIwLjQ5IDE1YTkgOSAwIDEgMS0yLjEyLTkuMzZMMjMgMTAiLz48L3N2Zz48c3Bhbj5cdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjI8L3NwYW4+PC9idXR0b24+PC9kaXY+PC9kaXY+PGJ1dHRvbiBpZD0ic2lkZWJhci1waW4tYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gc2lkZWJhci1waW4tdG9nZ2xlJysobi5zaWRlYmFyUGlubmVkPyIgcGlubmVkIjoiIikrJyIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iJysobi5zaWRlYmFyUGlubmVkPyJcdTVERjJcdTU2RkFcdTVCOUFcdTVFMzhcdTlBN0JcdUZGMDhcdTcwQjlcdTUxRkJcdTg5RTNcdTk2NjRcdTk1MDFcdTVCOUFcdUZGMDkiOiJcdTU2RkFcdTVCOUFcdTRGQTdcdTY4MEZcdTVFMzhcdTlBN0IiKSsnIiBhcmlhLWxhYmVsPSInKyhuLnNpZGViYXJQaW5uZWQ/Ilx1ODlFM1x1OTY2NFx1NTZGQVx1NUI5QVx1NUUzOFx1OUE3QiI6Ilx1NTZGQVx1NUI5QVx1NEZBN1x1NjgwRlx1NUUzOFx1OUE3QiIpKyciIGFyaWEtcHJlc3NlZD0iJysobi5zaWRlYmFyUGlubmVkPyJ0cnVlIjoiZmFsc2UiKSsnIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iMTIiIHkxPSIxNyIgeDI9IjEyIiB5Mj0iMjIiLz48cGF0aCBkPSJNNSAxN2gxNHYtMS43NmEyIDIgMCAwIDAtMS4xMS0xLjc5bC0xLjc4LS45QTIgMiAwIDAgMSAxNSAxMC43NlY2aDFhMiAyIDAgMCAwIDAtNEg4YTIgMiAwIDAgMCAwIDRoMXY0Ljc2YTIgMiAwIDAgMS0xLjExIDEuNzlsLTEuNzguOUEyIDIgMCAwIDAgNSAxNS4yNHoiLz48L3N2Zz48L2J1dHRvbj48YnV0dG9uIGlkPSJzaWRlYmFyLWNvbGxhcHNlLWJ0biIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIHNpZGViYXItY29sbGFwc2UtdG9nZ2xlJysoZj8iIGNvbGxhcHNlZCI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgdGl0bGU9IicrKGY/Ilx1NUM1NVx1NUYwMFx1NEUzQVx1NTE2OFx1NUMzQVx1NUJGOCI6Ilx1NjUzNlx1OEQ3N1x1NEUzQVx1N0E4NFx1Njc2MSIpKyciIGFyaWEtbGFiZWw9IicrKGY/Ilx1NUM1NVx1NUYwMFx1NEUzQVx1NTE2OFx1NUMzQVx1NUJGOCI6Ilx1NjUzNlx1OEQ3N1x1NEUzQVx1N0E4NFx1Njc2MSIpKyciPicrKGY/Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBvbHlsaW5lIHBvaW50cz0iMTAgNiAxNiAxMiAxMCAxOCIvPjxsaW5lIHgxPSIyMCIgeTE9IjUiIHgyPSIyMCIgeTI9IjE5Ii8+PC9zdmc+JzonPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cG9seWxpbmUgcG9pbnRzPSIxNCA2IDggMTIgMTQgMTgiLz48bGluZSB4MT0iNCIgeTE9IjUiIHgyPSI0IiB5Mj0iMTkiLz48L3N2Zz4nKSsnPC9idXR0b24+PGJ1dHRvbiBpZD0iY2xvc2UtZHJhd2VyLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWljb24gc2lkZWJhci1jbG9zZSBkcmF3ZXItY2xvc2UtYnRuIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRFx1ODNEQ1x1NTM1NSI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjE4IiB5MT0iNiIgeDI9IjYiIHkyPSIxOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNpZGViYXItYm9keSI+PGRpdiBpZD0ic2Vzc2lvbnMtcGFuZWwiPjxkaXYgY2xhc3M9InNlc3Npb25zLWxpc3QiIGlkPSJzZXNzaW9ucy1saXN0Ij4nK0tpKCkrJzwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNpZGViYXItZm9vdGVyIj48YnV0dG9uIGlkPSJkcmF3ZXItbmV3LXNlc3Npb24tYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1ibG9jayI+PHNwYW4+Kzwvc3Bhbj4gXHU2NUIwXHU0RjFBXHU4QkREPC9idXR0b24+PGRpdiBjbGFzcz0ic2lkZWJhci1mb290ZXItYWN0aW9ucyI+PGJ1dHRvbiBpZD0iZmlsZS1wYW5lbC10b2dnbGUtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20nKyhuLmZpbGVQYW5lbE9wZW4/IiBhY3RpdmUiOiIiKSsnIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTY3RTVcdTc3MEJcdTY1ODdcdTRFRjYiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTIyIDE5YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg1bDIgM2g5YTIgMiAwIDAgMSAyIDJ6Ii8+PC9zdmc+PHNwYW4+XHU2NTg3XHU0RUY2PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gaWQ9InNldHRpbmdzLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdThCQkVcdTdGNkUiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMyIvPjxwYXRoIGQ9Ik0xOS40IDE1YTEuNjUgMS42NSAwIDAgMCAuMzMgMS44MmwuMDYuMDZhMiAyIDAgMCAxLTIuODMgMi44M2wtLjA2LS4wNmExLjY1IDEuNjUgMCAwIDAtMS44Mi0uMzMgMS42NSAxLjY1IDAgMCAwLTEgMS41MVYyMWEyIDIgMCAwIDEtNCAwdi0uMDlBMS42NSAxLjY1IDAgMCAwIDkgMTkuNGExLjY1IDEuNjUgMCAwIDAtMS44Mi4zM2wtLjA2LjA2YTIgMiAwIDAgMS0yLjgzLTIuODNsLjA2LS4wNkExLjY1IDEuNjUgMCAwIDAgNC42OCAxNWExLjY1IDEuNjUgMCAwIDAtMS41MS0xSDNhMiAyIDAgMCAxIDAtNGguMDlBMS42NSAxLjY1IDAgMCAwIDQuNiA5YTEuNjUgMS42NSAwIDAgMC0uMzMtMS44MmwtLjA2LS4wNmEyIDIgMCAwIDEgMi44My0yLjgzbC4wNi4wNkExLjY1IDEuNjUgMCAwIDAgOSA0LjY4YTEuNjUgMS42NSAwIDAgMCAxLTEuNTFWM2EyIDIgMCAwIDEgNCAwdi4wOWExLjY1IDEuNjUgMCAwIDAgMSAxLjUxIDEuNjUgMS42NSAwIDAgMCAxLjgyLS4zM2wuMDYtLjA2YTIgMiAwIDAgMSAyLjgzIDIuODNsLS4wNi4wNkExLjY1IDEuNjUgMCAwIDAgMTkuNCA5YTEuNjUgMS42NSAwIDAgMCAxLjUxIDFIMjFhMiAyIDAgMCAxIDAgNGgtLjA5YTEuNjUgMS42NSAwIDAgMC0xLjUxIDF6Ii8+PC9zdmc+PHNwYW4+XHU4QkJFXHU3RjZFPC9zcGFuPjwvYnV0dG9uPicrKGZ2KCk/JzxidXR0b24gaWQ9ImJhY2stdG8tbmF0aXZlLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIHNpZGViYXItYmFjay10by1uYXRpdmUiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1OEZENFx1NTZERSBBcHAgXHU1MzlGXHU3NTFGXHU3NTRDXHU5NzYyIj48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxyZWN0IHg9IjEwIiB5PSIzIiB3aWR0aD0iMTEiIGhlaWdodD0iMTgiIHJ4PSIyIi8+PGxpbmUgeDE9IjE0IiB5MT0iMTciIHgyPSIxNyIgeTI9IjE3Ii8+PHBvbHlsaW5lIHBvaW50cz0iNyA4IDMgMTIgNyAxNiIvPjwvc3ZnPjxzcGFuPlx1OEZENFx1NTZERUFwcDwvc3Bhbj48L2J1dHRvbj4nOiIiKSsoamEoKT8nPGJ1dHRvbiBpZD0ic3dpdGNoLXNlcnZlci1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBzaWRlYmFyLXN3aXRjaC1zZXJ2ZXIiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTIwN1x1NjM2Mlx1NjcwRFx1NTJBMVx1NTY2OCI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cmVjdCB4PSIyIiB5PSIzIiB3aWR0aD0iMjAiIGhlaWdodD0iOCIgcng9IjIiLz48cmVjdCB4PSIyIiB5PSIxMyIgd2lkdGg9IjIwIiBoZWlnaHQ9IjgiIHJ4PSIyIi8+PGxpbmUgeDE9IjYiIHkxPSI3IiB4Mj0iNi4wMSIgeTI9IjciLz48bGluZSB4MT0iNiIgeTE9IjE3IiB4Mj0iNi4wMSIgeTI9IjE3Ii8+PC9zdmc+PHNwYW4+XHU1MjA3XHU2MzYyPC9zcGFuPjwvYnV0dG9uPic6IiIpKyc8YnV0dG9uIGlkPSJsb2dvdXQtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gc2lkZWJhci1sb2dvdXQiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1OTAwMFx1NTFGQVx1NzY3Qlx1NUY1NSI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNOSAyMUg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDQiLz48cG9seWxpbmUgcG9pbnRzPSIxNiAxNyAyMSAxMiAxNiA3Ii8+PGxpbmUgeDE9IjIxIiB5MT0iMTIiIHgyPSI5IiB5Mj0iMTIiLz48L3N2Zz48c3Bhbj5cdTkwMDBcdTUxRkE8L3NwYW4+PC9idXR0b24+PC9kaXY+PC9kaXY+PC9hc2lkZT48bWFpbiBjbGFzcz0ibWFpbi1jb250ZW50Ij48ZGl2IGNsYXNzPSJtYWluLWhlYWRlci1yb3ciPjxkaXYgY2xhc3M9InRvcGJhci1sZWZ0Ij48YnV0dG9uIGlkPSJzZXNzaW9ucy10b2dnbGUtYnV0dG9uIiBjbGFzcz0iZmxvYXRpbmctc2lkZWJhci10b2dnbGUnKyhuLnNlc3Npb25zRHJhd2VyT3Blbj8iIGFjdGl2ZSI6IiIpKyciIGFyaWEtbGFiZWw9Ilx1NTIwN1x1NjM2Mlx1NEYxQVx1OEJERFx1NEZBN1x1NjgwRiIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0iaGFtYnVyZ2VyLWljb24iPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjwvc3Bhbj48L2J1dHRvbj48c3BhbiBjbGFzcz0idG9wYmFyLWJyYW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+Vzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ0b3BiYXItY2VudGVyIj4nKyh0Pyc8c3BhbiBjbGFzcz0idG9wYmFyLXNlc3Npb24tdGl0bGUiIHRpdGxlPSInK3AodC5kZXNjcmlwdGlvbnx8dC5jb21tYW5kfHwiIikrJyI+JytwKHQudGl0bGV8fHhyKHQuY29tbWFuZCkpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InNlc3Npb24tc3RhdHVzLXBpbGwgJytOdSh0KSsnIiB0aXRsZT0iJytwKGxyKHQpKSsnIj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1zdGF0dXMtZG90Ij48L3NwYW4+PHNwYW4gY2xhc3M9InNlc3Npb24tc3RhdHVzLXRleHQiPicrcChscih0KSkrJzwvc3Bhbj48L3NwYW4+PHNwYW4gY2xhc3M9ImN1cnJlbnQtdGFzayBoaWRkZW4iIGlkPSJjdXJyZW50LXRhc2siPjwvc3Bhbj4nKyh0LmN3ZD8nPHNwYW4gY2xhc3M9InRvcGJhci1jd2QiIGlkPSJ0b3BiYXItY3dkIiB0aXRsZT0iJytwKHQuY3dkKSsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj4nK3AodC5jd2QpKyI8L3NwYW4+IjoiIik6JzxzcGFuIGNsYXNzPSJ0b3BiYXItdGFnbGluZSI+V2FuZCBcdTYzQTdcdTUyMzZcdTUzRjA8L3NwYW4+PHNwYW4gY2xhc3M9ImN1cnJlbnQtdGFzayBoaWRkZW4iIGlkPSJjdXJyZW50LXRhc2siPjwvc3Bhbj4nKSsnPC9kaXY+PGRpdiBjbGFzcz0idG9wYmFyLXJpZ2h0Ij48YnV0dG9uIGlkPSJ0b3BiYXItZmlsZS1idXR0b24iIGNsYXNzPSJ0b3BiYXItYnRuIHNxdWFyZScrKG4uZmlsZVBhbmVsT3Blbj8iIGFjdGl2ZSI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU2NTg3XHU0RUY2IiB0aXRsZT0iXHU2N0U1XHU3NzBCXHU2NTg3XHU0RUY2XHVGRjA4XHU1M0VGXHU0RkVFXHU2NTM5XHU4REVGXHU1Rjg0XHVGRjA5Ij48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0yMiAxOWEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNWwyIDNoOWEyIDIgMCAwIDEgMiAyeiIvPjwvc3ZnPjwvYnV0dG9uPjxzcGFuIGlkPSJ0b3BiYXItZ2l0LXNsb3QiIGNsYXNzPSJ0b3BiYXItZ2l0LXNsb3QiPicrTHUoKSsiPC9zcGFuPiIrKHQ/dWModCk6IiIpKyc8L2Rpdj48L2Rpdj48ZGl2IGlkPSJmaWxlLXBhbmVsLWJhY2tkcm9wIiBjbGFzcz0iZmlsZS1wYW5lbC1iYWNrZHJvcCcrKG4uZmlsZVBhbmVsT3Blbj8iIG9wZW4iOiIiKSsnIj48L2Rpdj48ZGl2IGlkPSJmaWxlLXNpZGUtcGFuZWwiIGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwnKyhuLmZpbGVQYW5lbE9wZW4/IiBvcGVuIjoiIikrJyI+PGRpdiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWhlYWRlciI+PGRpdiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLXRpdGxlLWdyb3VwIj48c3BhbiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWljb24iPicrcWUoImZvbGRlci1vcGVuIix7c2l6ZToxNn0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC10aXRsZSI+XHU2NTg3XHU0RUY2PC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC1oZWFkZXItYWN0aW9ucyI+PGJ1dHRvbiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWljb25idG4iIGlkPSJmaWxlLWV4cGxvcmVyLXJlZnJlc2giIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTIzN1x1NjVCMCIgYXJpYS1sYWJlbD0iXHU1MjM3XHU2NUIwXHU2NTg3XHU0RUY2XHU1MjE3XHU4ODY4Ij4nK3FlKCJyZWZyZXNoIix7c2l6ZToxNX0pKyc8L2J1dHRvbj48YnV0dG9uIGlkPSJmaWxlLXNpZGUtcGFuZWwtY2xvc2UiIGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtaWNvbmJ0biBjbG9zZSIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RURcdTY1ODdcdTRFRjZcdTk3NjJcdTY3N0YiIHRpdGxlPSJcdTUxNzNcdTk1RUQiPicrcWUoIngiLHtzaXplOjE2fSkrJzwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC1ib2R5Ij48ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyLWhlYWRlciI+PGJ1dHRvbiBjbGFzcz0iZmlsZS1leHBsb3Jlci11cCIgaWQ9ImZpbGUtZXhwbG9yZXItdXAiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1OEZENFx1NTZERVx1NEUwQVx1N0VBN1x1NzZFRVx1NUY1NSIgYXJpYS1sYWJlbD0iXHU4RkQ0XHU1NkRFXHU0RTBBXHU3RUE3XHU3NkVFXHU1RjU1Ij4nK3FlKCJhcnJvdy11cCIse3NpemU6MTV9KSsnPC9idXR0b24+PGlucHV0IHR5cGU9InRleHQiIGNsYXNzPSJmaWxlLWV4cGxvcmVyLXBhdGgiIGlkPSJmaWxlLWV4cGxvcmVyLWN3ZCIgdmFsdWU9IicrcCh0JiZ0LmN3ZD90LmN3ZDp0bigpKSsnIiB0aXRsZT0iJytwKHQmJnQuY3dkP3QuY3dkOnRuKCkpKyciIHBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdThERUZcdTVGODRcdTVFNzZcdTU2REVcdThGNjYuLi4iIHNwZWxsY2hlY2s9ImZhbHNlIiBhdXRvY29tcGxldGU9Im9mZiIgYXV0b2NhcGl0YWxpemU9Im9mZiIgYXV0b2NvcnJlY3Q9Im9mZiIgYXJpYS1sYWJlbD0iXHU1RjUzXHU1MjREXHU4REVGXHU1Rjg0XHVGRjBDXHU1M0VGXHU3NkY0XHU2M0E1XHU0RkVFXHU2NTM5XHU1NDBFXHU1NkRFXHU4RjY2IiAvPjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtc2VhcmNoLWJveCI+PHNwYW4gY2xhc3M9ImZpbGUtc2VhcmNoLWljb24iPicrcWUoInNlYXJjaCIse3NpemU6MTR9KSsnPC9zcGFuPjxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0iZmlsZS1zZWFyY2gtaW5wdXQiIGNsYXNzPSJmaWxlLXNlYXJjaC1pbnB1dCIgcGxhY2Vob2xkZXI9Ilx1NjQxQ1x1N0QyMlx1NUY1M1x1NTI0RFx1NzZFRVx1NUY1NVx1MjAyNiIgYXV0b2NvbXBsZXRlPSJvZmYiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiIHNwZWxsY2hlY2s9ImZhbHNlIiAvPjxidXR0b24gY2xhc3M9ImZpbGUtc2VhcmNoLWNsZWFyIiBpZD0iZmlsZS1zZWFyY2gtY2xlYXIiIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU2RTA1XHU5NjY0XHU2NDFDXHU3RDIyIiB0aXRsZT0iXHU2RTA1XHU5NjY0Ij4nK3FlKCJ4Iix7c2l6ZToxM30pKyc8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIiBpZD0iZmlsZS1leHBsb3JlciI+JytWbCh0JiZ0LmN3ZD90LmN3ZDp0bigpKSsnPC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBpZD0ib3V0cHV0IiBjbGFzcz0idGVybWluYWwtY29udGFpbmVyJysobi5zZWxlY3RlZElkPyIiOiIgaGlkZGVuIikrJyBhY3RpdmUiPjxkaXYgY2xhc3M9InRlcm1pbmFsLXNjYWxlLW92ZXJsYXkiIGFyaWEtbGFiZWw9Ilx1N0VDOFx1N0FFRlx1N0YyOVx1NjUzRVx1NjNBN1x1NEVGNiI+PGJ1dHRvbiBpZD0idGVybWluYWwtc2NhbGUtZG93bi10b3AiIGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0biB0ZXJtaW5hbC1zY2FsZS1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1N0YyOVx1NUMwRiI+XHUyMjEyPC9idXR0b24+PHNwYW4gY2xhc3M9InRlcm1pbmFsLXNjYWxlLW92ZXJsYXktbGFiZWwgdGVybWluYWwtc2NhbGUtbGFiZWwiIGlkPSJ0ZXJtaW5hbC1zY2FsZS1sYWJlbC10b3AiPicrTWF0aC5yb3VuZChuLnRlcm1pbmFsU2NhbGUqMTAwKSsnJTwvc3Bhbj48YnV0dG9uIGlkPSJ0ZXJtaW5hbC1zY2FsZS11cC10b3AiIGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0biB0ZXJtaW5hbC1zY2FsZS1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjUzRVx1NTkyNyI+KzwvYnV0dG9uPjxzcGFuIGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWRpdmlkZXIiPjwvc3Bhbj48YnV0dG9uIGlkPSJwYWdlLXJlZnJlc2gtYnRuIiBjbGFzcz0idGVybWluYWwtc2NhbGUtb3ZlcmxheS1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTIzN1x1NjVCMFx1OTg3NVx1OTc2MiI+XHUyMUJCPC9idXR0b24+PC9kaXY+PGJ1dHRvbiBpZD0idGVybWluYWwtanVtcC1ib3R0b20iIGNsYXNzPSJ0ZXJtaW5hbC1qdW1wLWJvdHRvbScrKG4uc2hvd1Rlcm1pbmFsSnVtcFRvQm90dG9tPyIgdmlzaWJsZSI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTZERVx1NTIzMFx1NUU5NVx1OTBFOCIgYXJpYS1sYWJlbD0iXHU1NkRFXHU1MjMwXHU1RTk1XHU5MEU4Ij48c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNOCAzLjV2OU0zLjUgOGw0LjUgNC41TDEyLjUgOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImNoYXQtb3V0cHV0IiBjbGFzcz0iY2hhdC1jb250YWluZXIgaGlkZGVuIj48YnV0dG9uIGlkPSJjaGF0LXVucmVhZC1idWJibGUiIGNsYXNzPSJjaGF0LXVucmVhZC1idWJibGUiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTZERVx1NTIzMFx1NjcwMFx1NjVCMFx1NkQ4OFx1NjA2RiIgYXJpYS1sYWJlbD0iXHU1NkRFXHU1MjMwXHU2NzAwXHU2NUIwXHU2RDg4XHU2MDZGIj48c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtYnViYmxlLWljb24iPjxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik04IDMuNXY5TTMuNSA4bDQuNSA0LjVMMTIuNSA4Ii8+PC9zdmc+PC9zcGFuPjxzcGFuIGNsYXNzPSJjaGF0LXVucmVhZC1idWJibGUtY291bnQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PC9idXR0b24+PGRpdiBpZD0icXVldWUtYmFyLWhvc3QiIGNsYXNzPSJxdWV1ZS1iYXItaG9zdCIgaGlkZGVuPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImJsYW5rLWNoYXQiIGNsYXNzPSJibGFuay1jaGF0Jysobi5zZWxlY3RlZElkPyIgaGlkZGVuIjoiIikrJyI+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC1pbm5lciI+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC1sb2dvIj5XPC9kaXY+PGgyIGNsYXNzPSJibGFuay1jaGF0LXRpdGxlIj5XYW5kPC9oMj48cCBjbGFzcz0iYmxhbmstY2hhdC1zdWJ0aXRsZSI+XHU2NTJGXHU2MzAxXHU3RUM4XHU3QUVGIFBUWSBcdTRGMUFcdThCRERcdTRFMEVcdTdFRDNcdTY3ODRcdTUzMTYgY2hhdCBcdTRGMUFcdThCRERcdUZGMENcdTRFMjRcdTc5Q0RcdTZBMjFcdTVGMEZcdTUzRUZcdTVFNzZcdTVCNThcdTMwMDI8L3A+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC10b29scyI+PGJ1dHRvbiBjbGFzcz0iYmxhbmstY2hhdC10b29sLWJ0biIgaWQ9IndlbGNvbWUtdG9vbC1jbGF1ZGUiIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InRvb2wtaWNvbiI+JytLKCJ0ZXJtaW5hbCIse3NpemU6MTYsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj5cdTY1QjBcdTVFRkFcdTdFQzhcdTdBRUZcdTRGMUFcdThCREQ8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJibGFuay1jaGF0LXRvb2wtYnRuIiBpZD0id2VsY29tZS10b29sLWNvZGV4IiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ0b29sLWljb24gdG9vbC1pY29uLXRleHQiPlx1MjMxODwvc3Bhbj5cdTY1QjBcdTVFRkEgQ29kZXggXHU0RjFBXHU4QkREPC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iYmxhbmstY2hhdC10b29sLWJ0biIgaWQ9IndlbGNvbWUtdG9vbC1zdHJ1Y3R1cmVkIiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ0b29sLWljb24iPicrSygiY2hhdCIse3NpemU6MTYsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj5cdTY1QjBcdTVFRkFcdTdFRDNcdTY3ODRcdTUzMTZcdTRGMUFcdThCREQ8L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZC13cmFwIj48ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZCIgaWQ9ImJsYW5rLWNoYXQtY3dkIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIiB0aXRsZT0iXHU3MEI5XHU1MUZCXHU1MjA3XHU2MzYyXHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1Ij48c3BhbiBjbGFzcz0iYmxhbmstY2hhdC1jd2QtaWNvbiI+JytLKCJmb2xkZXIiLHtzaXplOjEzLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLXBhdGgiIGlkPSJibGFuay1jaGF0LWN3ZC1wYXRoIj4nK3AoZXQoKSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYmxhbmstY2hhdC1jd2QtYXJyb3ciIGlkPSJibGFuay1jaGF0LWN3ZC1hcnJvdyI+JytLKCJjaGV2cm9uRG93biIse3NpemU6MTEsc3Ryb2tlV2lkdGg6Mn0pKyc8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC1jd2QtZHJvcGRvd24gaGlkZGVuIiBpZD0iYmxhbmstY2hhdC1jd2QtZHJvcGRvd24iPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImlucHV0LXBhbmVsJysobi5zZWxlY3RlZElkPyIiOiIgaGlkZGVuIikrJyI+PGRpdiBjbGFzcz0iY29tcG9zZXItdG9wLXJvdyI+PGRpdiBpZD0idG9kby1wcm9ncmVzcyIgY2xhc3M9InRvZG8tcHJvZ3Jlc3MgaGlkZGVuIj48ZGl2IGNsYXNzPSJ0b2RvLXByb2dyZXNzLWhlYWRlciIgaWQ9InRvZG8tcHJvZ3Jlc3MtdG9nZ2xlIj48ZGl2IGNsYXNzPSJ0b2RvLXByb2dyZXNzLWxlZnQiPjxzcGFuIGNsYXNzPSJ0b2RvLXByb2dyZXNzLXJpbmciIGlkPSJ0b2RvLXByb2dyZXNzLXJpbmciIGFyaWEtaGlkZGVuPSJ0cnVlIiBzdHlsZT0iLS1wcm9ncmVzczowIj48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDM2IDM2Ij48Y2lyY2xlIGNsYXNzPSJ0b2RvLXJpbmctdHJhY2siIGN4PSIxOCIgY3k9IjE4IiByPSIxNS41IiBmaWxsPSJub25lIiBzdHJva2Utd2lkdGg9IjQiLz48Y2lyY2xlIGNsYXNzPSJ0b2RvLXJpbmctZmlsbCIgY3g9IjE4IiBjeT0iMTgiIHI9IjE1LjUiIGZpbGw9Im5vbmUiIHN0cm9rZS13aWR0aD0iNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+PC9zdmc+PC9zcGFuPjxzcGFuIGNsYXNzPSJ0b2RvLXByb2dyZXNzLWNvdW50ZXIiIGlkPSJ0b2RvLXByb2dyZXNzLWNvdW50ZXIiPjwvc3Bhbj48c3BhbiBjbGFzcz0idG9kby1wcm9ncmVzcy10YXNrIiBpZD0idG9kby1wcm9ncmVzcy10YXNrIj48L3NwYW4+PC9kaXY+PHN2ZyBjbGFzcz0idG9kby1wcm9ncmVzcy1jaGV2cm9uIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cG9seWxpbmUgcG9pbnRzPSI2IDE1IDEyIDkgMTggMTUiLz48L3N2Zz48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJ0b2RvLXByb2dyZXNzLWJvZHkgaGlkZGVuIiBpZD0idG9kby1wcm9ncmVzcy1ib2R5Ij48dWwgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtbGlzdCIgaWQ9InRvZG8tcHJvZ3Jlc3MtbGlzdCI+PC91bD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJpbnB1dC1jb21wb3NlcicrKGE/IiBoYXMtdGV4dCI6IiIpKyciPjxkaXYgY2xhc3M9ImNvbXBvc2VyLXN0YXR1cy1yb3ciIGlkPSJjb21wb3Nlci1zdGF0dXMtcm93Ij4nK3d2KHQpKyc8c3BhbiBjbGFzcz0icGVybWlzc2lvbi1hY3Rpb25zIGhpZGRlbiIgaWQ9InBlcm1pc3Npb24tYWN0aW9ucyI+PHNwYW4gY2xhc3M9InBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbCIgaWQ9InBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbCI+XHU3QjQ5XHU1Rjg1XHU2Mzg4XHU2NzQzPC9zcGFuPjxidXR0b24gaWQ9ImFwcHJvdmUtcGVybWlzc2lvbi1idG4iIGNsYXNzPSJidG4gYnRuLXBlcm1pc3Npb24gYnRuLXBlcm1pc3Npb24tYXBwcm92ZSIgdHlwZT0iYnV0dG9uIj5cdTYyNzlcdTUxQzY8L2J1dHRvbj48YnV0dG9uIGlkPSJkZW55LXBlcm1pc3Npb24tYnRuIiBjbGFzcz0iYnRuIGJ0bi1wZXJtaXNzaW9uIGJ0bi1wZXJtaXNzaW9uLWRlbnkiIHR5cGU9ImJ1dHRvbiI+XHU2MkQyXHU3RUREPC9idXR0b24+PC9zcGFuPicrJGQoKSsnPC9kaXY+PGRpdiBjbGFzcz0iY29tcG9zZXItbWFpbi1yb3ciPjxkaXYgY2xhc3M9ImNvbXBvc2VyLWFjdGlvbnMtbGVmdCI+PGJ1dHRvbiBpZD0iYXR0YWNoLWJ0biIgY2xhc3M9ImJ0bi1jaXJjbGUgYnRuLWNpcmNsZS1hY3Rpb24iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjZGNFx1NTkxQSIgYXJpYS1sYWJlbD0iXHU2NkY0XHU1OTFBIiBhcmlhLWhhc3BvcHVwPSJtZW51IiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+JytLKCJwbHVzIix7c2l6ZToxOCxzdHJva2VXaWR0aDoyLjJ9KSsnPC9idXR0b24+PGlucHV0IHR5cGU9ImZpbGUiIGlkPSJmaWxlLXVwbG9hZC1pbnB1dCIgbXVsdGlwbGUgdGFiaW5kZXg9Ii0xIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4O2hlaWdodDoxcHg7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjtjbGlwOnJlY3QoMCwwLDAsMCk7cG9pbnRlci1ldmVudHM6bm9uZSI+PC9kaXY+PGRpdiBjbGFzcz0iY29tcG9zZXItaW5wdXQtd3JhcCI+PHRleHRhcmVhIGlkPSJpbnB1dC1ib3giIGNsYXNzPSJpbnB1dC10ZXh0YXJlYSIgcGxhY2Vob2xkZXI9IicrVG8odCxuLnRlcm1pbmFsSW50ZXJhY3RpdmUpKyciIHJvd3M9IjEiIGF1dG9jb21wbGV0ZT0ib2ZmIiBhdXRvY29ycmVjdD0ib2ZmIiBhdXRvY2FwaXRhbGl6ZT0ib2ZmIiBzcGVsbGNoZWNrPSJmYWxzZSIgZW50ZXJrZXloaW50PSJzZW5kIj4nK3AoYSkrJzwvdGV4dGFyZWE+PGJ1dHRvbiBpZD0icHJvbXB0LW9wdGltaXplLWJ0biIgY2xhc3M9InByb21wdC1vcHRpbWl6ZS1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjNEMFx1NzkzQVx1OEJDRFx1NEYxOFx1NTMxNlx1RkYwOEFJXHVGRjA5IiBhcmlhLWxhYmVsPSJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTYiPjxzdmcgY2xhc3M9InByb21wdC1vcHRpbWl6ZS1pY29uIiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTEyIDNsMS42IDQuNEwxOCA5bC00LjQgMS42TDEyIDE1bC0xLjYtNC40TDYgOWw0LjQtMS42eiIgZmlsbD0iY3VycmVudENvbG9yIiBvcGFjaXR5PSIwLjI1Ii8+PHBhdGggZD0iTTEyIDNsMS42IDQuNEwxOCA5bC00LjQgMS42TDEyIDE1bC0xLjYtNC40TDYgOWw0LjQtMS42eiIvPjxwYXRoIGQ9Ik0xOSAxNGwuNyAxLjlMMjEuNiAxN2wtMS45LjdMMTkgMTkuNmwtLjctMS45TDE2LjQgMTdsMS45LS43eiIgZmlsbD0iY3VycmVudENvbG9yIiBvcGFjaXR5PSIwLjM1Ii8+PHBhdGggZD0iTTUgNGwuNSAxLjRMNyA2bC0xLjUuNkw1IDhsLS41LTEuNEwzIDZsMS41LS42eiIgZmlsbD0iY3VycmVudENvbG9yIiBvcGFjaXR5PSIwLjM1Ii8+PC9zdmc+PHNwYW4gY2xhc3M9InByb21wdC1vcHRpbWl6ZS1zcGlubmVyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYnV0dG9uPjxkaXYgY2xhc3M9InZvaWNlLWlucHV0LW1vZGUgaGlkZGVuIiBpZD0idm9pY2UtaW5wdXQtbW9kZSI+PGJ1dHRvbiBpZD0idm9pY2UtcmVjb3JkLWJ0biIgY2xhc3M9InZvaWNlLXJlY29yZC1idG4iIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InZvaWNlLXJlY29yZC1wdWxzZSIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48c3BhbiBjbGFzcz0idm9pY2UtcmVjb3JkLWxhYmVsIj5cdTYzMDlcdTRGNEYgXHU4QkY0XHU4QkREPC9zcGFuPjwvYnV0dG9uPjxidXR0b24gaWQ9InZvaWNlLWNhbmNlbC1idG4iIGNsYXNzPSJ2b2ljZS1jYW5jZWwtYnRuIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTkwMDBcdTUxRkFcdThCRURcdTk3RjNcdTZBMjFcdTVGMEYiIGFyaWEtbGFiZWw9Ilx1OTAwMFx1NTFGQVx1OEJFRFx1OTdGM1x1NkEyMVx1NUYwRiI+JytLKCJ4Iix7c2l6ZToxNCxzdHJva2VXaWR0aDoyfSkrJzwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbXBvc2VyLWFjdGlvbnMtcmlnaHQiPjxidXR0b24gaWQ9InN0b3AtYnV0dG9uIiBjbGFzcz0iYnRuLWNpcmNsZSBidG4tY2lyY2xlLXN0b3AgaGlkZGVuIiB0aXRsZT0iXHU1MDVDXHU2QjYyIj48c3ZnIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJjdXJyZW50Q29sb3IiPjxyZWN0IHg9IjMiIHk9IjMiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgcng9IjIiLz48L3N2Zz48L2J1dHRvbj48YnV0dG9uIGlkPSJzZW5kLWlucHV0LWJ1dHRvbiIgY2xhc3M9ImJ0bi1jaXJjbGUgYnRuLWNpcmNsZS1zZW5kIiB0aXRsZT0iXHU1M0QxXHU5MDAxIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGxpbmUgeDE9IjIyIiB5MT0iMiIgeDI9IjExIiB5Mj0iMTMiLz48cG9seWdvbiBwb2ludHM9IjIyIDIgMTUgMjIgMTEgMTMgMiA5IDIyIDIiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJhdHRhY2htZW50LXByZXZpZXciIGNsYXNzPSJhdHRhY2htZW50LXByZXZpZXcgaGlkZGVuIj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjb21wb3Nlci1wbHVzLXBvcG92ZXIgaGlkZGVuIiBpZD0iY29tcG9zZXItcGx1cy1wb3BvdmVyIiByb2xlPSJtZW51IiBhcmlhLWxhYmVsPSJcdTY2RjRcdTU5MUFcdTY0Q0RcdTRGNUMiPjxidXR0b24gY2xhc3M9InBsdXMtcG9wb3Zlci1pdGVtIiBpZD0icGx1cy1hdHRhY2gtaXRlbSIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSI+JytLKCJwYXBlcmNsaXAiLHtzaXplOjE0LHN0cm9rZVdpZHRoOjEuOCxjbHM6InBsdXMtcG9wb3Zlci1pY29uIn0pKyc8c3BhbiBjbGFzcz0icGx1cy1wb3BvdmVyLWxhYmVsIj5cdTRFMEFcdTRGMjBcdTk2NDRcdTRFRjY8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0icGx1cy1wb3BvdmVyLWl0ZW0nKyhuLnRlcm1pbmFsSW50ZXJhY3RpdmU/IiBpcy1vbiI6IiIpKyciIGlkPSJ0ZXJtaW5hbC1pbnRlcmFjdGl2ZS10b2dnbGUtdG9wIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtY2hlY2tib3giIGFyaWEtY2hlY2tlZD0iJysobi50ZXJtaW5hbEludGVyYWN0aXZlPyJ0cnVlIjoiZmFsc2UiKSsnIj4nK0soImtleWJvYXJkIix7c2l6ZToxNCxzdHJva2VXaWR0aDoxLjgsY2xzOiJwbHVzLXBvcG92ZXItaWNvbiJ9KSsnPHNwYW4gY2xhc3M9InBsdXMtcG9wb3Zlci1sYWJlbCI+XHU3RUM4XHU3QUVGXHU0RUE0XHU0RTkyPC9zcGFuPjxzcGFuIGNsYXNzPSJwbHVzLXBvcG92ZXItdG9nZ2xlLXN0YXRlIj4nKyhuLnRlcm1pbmFsSW50ZXJhY3RpdmU/Ilx1NUYwMCI6Ilx1NTE3MyIpKyc8L3NwYW4+PC9idXR0b24+PGRpdiBjbGFzcz0icGx1cy1wb3BvdmVyLXNlcCIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PjxkaXYgY2xhc3M9InBsdXMtcG9wb3Zlci10cmlvLXdyYXAiPicrV2EodCx7a2luZDoicG9wb3ZlciJ9KSsnPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0idm9pY2UtdHJhbnNjcmlwdC1idWJibGUgaGlkZGVuIiBpZD0idm9pY2UtdHJhbnNjcmlwdC1idWJibGUiIGFyaWEtbGl2ZT0icG9saXRlIj48ZGl2IGNsYXNzPSJ2b2ljZS10cmFuc2NyaXB0LXRleHQiIGlkPSJ2b2ljZS10cmFuc2NyaXB0LXRleHQiPjwvZGl2PjxkaXYgY2xhc3M9InZvaWNlLXRyYW5zY3JpcHQtaGludCIgaWQ9InZvaWNlLXRyYW5zY3JpcHQtaGludCI+PHNwYW4gY2xhc3M9InZvaWNlLXdhdmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48aT48L2k+PGk+PC9pPjxpPjwvaT48aT48L2k+PC9zcGFuPjxzcGFuIGNsYXNzPSJ2b2ljZS10cmFuc2NyaXB0LXN0YXR1cyIgaWQ9InZvaWNlLXRyYW5zY3JpcHQtc3RhdHVzIj5cdTZCNjNcdTU3MjhcdTgwNDZcdTU0MkNcdTIwMjZcdTRFMEFcdTZFRDFcdTUzRDZcdTZEODg8L3NwYW4+PC9kaXY+PHNwYW4gY2xhc3M9InZvaWNlLWJ1YmJsZS1hcnJvdyIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2Rpdj48cCBpZD0iYWN0aW9uLWVycm9yIiBjbGFzcz0iZXJyb3ItbWVzc2FnZSBoaWRkZW4iPjwvcD48L2Rpdj48c2VjdGlvbiBpZD0iZm9sZGVyLXBpY2tlci1tb2RhbCIgY2xhc3M9Im1vZGFsLWJhY2tkcm9wIGhpZGRlbiI+PGRpdiBjbGFzcz0ibW9kYWwgZm9sZGVyLXBpY2tlci1tb2RhbCI+PGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj48aDIgY2xhc3M9Im1vZGFsLXRpdGxlIj5cdTkwMDlcdTYyRTlcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTU8L2gyPjxidXR0b24gaWQ9ImNsb3NlLWZvbGRlci1waWNrZXIiIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij48ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLXF1aWNrLXJvdyI+PGJ1dHRvbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1xdWljay1idG4gYnRuLXdpdGgtaWNvbiIgZGF0YS1wYXRoPSIvdG1wIj4nK0soInRyYXNoIix7c2l6ZToxMyxzdHJva2VXaWR0aDoxLjd9KSsnPHNwYW4+XHU0RTM0XHU2NUY2XHU3NkVFXHU1RjU1PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stYnRuIGJ0bi13aXRoLWljb24iIGRhdGEtcGF0aD0iLyI+JytLKCJmb2xkZXIiLHtzaXplOjEzLHN0cm9rZVdpZHRoOjEuN30pKyc8c3Bhbj5cdTY4MzlcdTc2RUVcdTVGNTU8L3NwYW4+PC9idXR0b24+PC9kaXY+PGRpdiBpZD0iZm9sZGVyLWJyZWFkY3J1bWIiIGNsYXNzPSJmb2xkZXItYnJlYWRjcnVtYiI+PC9kaXY+PGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlciI+PHNwYW4gY2xhc3M9ImZvbGRlci1waWNrZXItaWNvbiI+JytLKCJmb2xkZXIiLHtzaXplOjE1LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGlucHV0IHR5cGU9InRleHQiIGlkPSJmb2xkZXItcGlja2VyLWlucHV0IiBjbGFzcz0iZm9sZGVyLXBpY2tlci1pbnB1dCIgdmFsdWU9IiIgcGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1NjIxNlx1OTAwOVx1NjJFOVx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NS4uLiIgYXV0b2NvbXBsZXRlPSJvZmYiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiIHNwZWxsY2hlY2s9ImZhbHNlIiAvPjwvZGl2PjxkaXYgaWQ9ImZvbGRlci1waWNrZXItZHJvcGRvd24iIGNsYXNzPSJmb2xkZXItcGlja2VyLWRyb3Bkb3duIGhpZGRlbiI+PC9kaXY+PGRpdiBpZD0iZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIiBjbGFzcz0iZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIj48L2Rpdj48L2Rpdj48L2Rpdj48L3NlY3Rpb24+PC9tYWluPjwvZGl2PjwvZGl2PicreGMoKSt5YygpK2JjKCkrUHUoKX1mdW5jdGlvbiB6ZShlLHQpe2lmKGUpe2UudGV4dENvbnRlbnQ9dCxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO2Zvcih2YXIgcj1lLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7cjspe2lmKHIudGFnTmFtZT09PSJJTlBVVCIpe3Iuc2V0QXR0cmlidXRlKCJkYXRhLWVycm9yIiwidHJ1ZSIpO2JyZWFrfXI9ci5wcmV2aW91c0VsZW1lbnRTaWJsaW5nfX19ZnVuY3Rpb24gYWkoZSl7aWYoZSl7ZS50ZXh0Q29udGVudD0iIixlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO2Zvcih2YXIgdD1lLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7dDspe2lmKHQudGFnTmFtZT09PSJJTlBVVCIpe3Quc2V0QXR0cmlidXRlKCJkYXRhLWVycm9yIiwiZmFsc2UiKTticmVha310PXQucHJldmlvdXNFbGVtZW50U2libGluZ319fWZ1bmN0aW9uIGsoZSx0KXt2YXIgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyLmNsYXNzTmFtZT0idG9hc3QtbWVzc2FnZSIrKHQ9PT0iZXJyb3IiPyIgdG9hc3QtZXJyb3IiOiIiKSx0IT09ImVycm9yIiYmKHIuc3R5bGUuYmFja2dyb3VuZD0idmFyKC0tYWNjZW50KSIsci5zdHlsZS5jb2xvcj0id2hpdGUiKSxyLnRleHRDb250ZW50PWUsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5yZW1vdmUoKX0sdD09PSJlcnJvciI/NGUzOjIyMDApfXZhciB5cj1bXTtmdW5jdGlvbiBlZihlKXtzd2l0Y2goZSl7Y2FzZSJ3YXJuaW5nIjpyZXR1cm4iISI7Y2FzZSJkYW5nZXIiOnJldHVybiJcdTI2QTBcdUZFMEUiO2Nhc2Uic3VjY2VzcyI6cmV0dXJuIlx1MjcxMyI7Y2FzZSJxdWVzdGlvbiI6cmV0dXJuIj8iO2RlZmF1bHQ6cmV0dXJuImkifX1mdW5jdGlvbiBybihlKXtlPWV8fHt9O3ZhciB0PWUuZGlzbWlzc2FibGUhPT0hMSxyPWUudHlwZXx8ImluZm8iLGk9ZS5pY29ufHxlZihyKSxhPSEhZS5pbnB1dDtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odSl7dmFyIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cy5jbGFzc05hbWU9IndhbmQtZGlhbG9nLWJhY2tkcm9wIixzLnNldEF0dHJpYnV0ZSgicm9sZSIsInByZXNlbnRhdGlvbiIpO3ZhciBvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO28uY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZyIsby5zZXRBdHRyaWJ1dGUoInJvbGUiLGE/ImRpYWxvZyI6ImFsZXJ0ZGlhbG9nIiksby5zZXRBdHRyaWJ1dGUoImFyaWEtbW9kYWwiLCJ0cnVlIiksZS50aXRsZSYmby5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLGUudGl0bGUpO3ZhciBsPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2wuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1oZWFkZXIiO3ZhciBjPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2MuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1pY29uICIrcixjLnRleHRDb250ZW50PWksbC5hcHBlbmRDaGlsZChjKTt2YXIgZj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpZihmLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctdGV4dHdyYXAiLGUudGl0bGUpe3ZhciBkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2QuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy10aXRsZSIsZC50ZXh0Q29udGVudD1lLnRpdGxlLGYuYXBwZW5kQ2hpbGQoZCl9aWYoZS5tZXNzYWdlKXt2YXIgdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt2LmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctbWVzc2FnZSIsdi50ZXh0Q29udGVudD1lLm1lc3NhZ2UsZi5hcHBlbmRDaGlsZCh2KX1sLmFwcGVuZENoaWxkKGYpLG8uYXBwZW5kQ2hpbGQobCk7dmFyIGc9bnVsbDtpZihhKXt2YXIgaD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtoLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctYm9keSIsZz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLGcudHlwZT0idGV4dCIsZy5jbGFzc05hbWU9IndhbmQtZGlhbG9nLWlucHV0IixlLmlucHV0UGxhY2Vob2xkZXImJihnLnBsYWNlaG9sZGVyPWUuaW5wdXRQbGFjZWhvbGRlciksZS5pbnB1dFZhbHVlIT1udWxsJiYoZy52YWx1ZT1TdHJpbmcoZS5pbnB1dFZhbHVlKSksaC5hcHBlbmRDaGlsZChnKSxvLmFwcGVuZENoaWxkKGgpfXZhciBtPWUuYnV0dG9ucyYmZS5idXR0b25zLmxlbmd0aD9lLmJ1dHRvbnM6W3tsYWJlbDoiXHU1OTdEIix2YWx1ZTohMCxraW5kOiJwcmltYXJ5IixhdXRvZm9jdXM6ITB9XSxiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2IuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1mb290ZXIiO3ZhciBGPW51bGwsdz1udWxsO2Z1bmN0aW9uIEUoeCl7aWYoIXMuY2xhc3NMaXN0LmNvbnRhaW5zKCJjbG9zaW5nIikpe3MuY2xhc3NMaXN0LmFkZCgiY2xvc2luZyIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLEEsITApO3ZhciBJPXlyLmluZGV4T2YoRSk7ST49MCYmeXIuc3BsaWNlKEksMSksc2V0VGltZW91dChmdW5jdGlvbigpe3MucGFyZW50Tm9kZSYmcy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHMpLHUoeCl9LDE2MCl9fW0uZm9yRWFjaChmdW5jdGlvbih4KXt2YXIgST1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJidXR0b24iKSxfPXgua2luZHx8InNlY29uZGFyeSI7SS5jbGFzc05hbWU9ImJ0biBidG4tIitfLEkudHlwZT0iYnV0dG9uIixJLnRleHRDb250ZW50PXgubGFiZWwsSS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXthJiZ4LmtpbmQ9PT0icHJpbWFyeSI/RShnP2cudmFsdWU6IiIpOkUoeC52YWx1ZSl9KSxGfHwoRj1JKSx4LmF1dG9mb2N1cyYmKHc9SSksYi5hcHBlbmRDaGlsZChJKX0pLG8uYXBwZW5kQ2hpbGQoYikscy5hcHBlbmRDaGlsZChvKSxzLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih4KXt4LnRhcmdldD09PXMmJnQmJkUoZS5jYW5jZWxWYWx1ZSE9PXZvaWQgMD9lLmNhbmNlbFZhbHVlOmE/bnVsbDohMSl9KTtmdW5jdGlvbiBBKHgpe2lmKHlyW3lyLmxlbmd0aC0xXT09PUUpe2lmKHgua2V5PT09IkVzY2FwZSImJnQpe3gucHJldmVudERlZmF1bHQoKSx4LnN0b3BQcm9wYWdhdGlvbigpLEUoZS5jYW5jZWxWYWx1ZSE9PXZvaWQgMD9lLmNhbmNlbFZhbHVlOmE/bnVsbDohMSk7cmV0dXJufWlmKHgua2V5PT09IkVudGVyIil7Zm9yKHZhciBJPW51bGwsXz0wO188bS5sZW5ndGg7XysrKWlmKG1bX10ua2luZD09PSJwcmltYXJ5Iil7ST1tW19dO2JyZWFrfUl8fChJPW1bbS5sZW5ndGgtMV0pLEkmJih4LnByZXZlbnREZWZhdWx0KCkseC5zdG9wUHJvcGFnYXRpb24oKSxhJiZJLmtpbmQ9PT0icHJpbWFyeSI/RShnP2cudmFsdWU6IiIpOkUoSS52YWx1ZSkpfX19ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsQSwhMCkseXIucHVzaChFKSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHMpLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2lmKGEmJmcpe2cuZm9jdXMoKTt0cnl7Zy5zZWxlY3QoKX1jYXRjaHt9fWVsc2Ugdz93LmZvY3VzKCk6RiYmRi5mb2N1cygpfSl9KX1mdW5jdGlvbiB0ZihlLHQpe3JldHVybiB0PXR8fHt9LHJuKHt0aXRsZTp0LnRpdGxlfHwiXHU2M0QwXHU3OTNBIixtZXNzYWdlOnR5cGVvZiBlPT0ic3RyaW5nIj9lOlN0cmluZyhlPz8iIiksdHlwZTp0LnR5cGV8fCJpbmZvIixidXR0b25zOlt7bGFiZWw6dC5va0xhYmVsfHwiXHU1OTdEIix2YWx1ZTp2b2lkIDAsa2luZDoicHJpbWFyeSIsYXV0b2ZvY3VzOiEwfV19KX1mdW5jdGlvbiBGcyhlLHQpe3Q9dHx8e307dmFyIHI9ISF0LmRhbmdlcnx8dC50eXBlPT09ImRhbmdlciI7cmV0dXJuIHJuKHt0aXRsZTp0LnRpdGxlfHwocj8iXHU3ODZFXHU4QkE0XHU2NENEXHU0RjVDIjoiXHU4QkY3XHU3ODZFXHU4QkE0IiksbWVzc2FnZTp0eXBlb2YgZT09InN0cmluZyI/ZTpTdHJpbmcoZT8/IiIpLHR5cGU6dC50eXBlfHwocj8iZGFuZ2VyIjoicXVlc3Rpb24iKSxjYW5jZWxWYWx1ZTohMSxidXR0b25zOlt7bGFiZWw6dC5jYW5jZWxMYWJlbHx8Ilx1NTNENlx1NkQ4OCIsdmFsdWU6ITEsa2luZDoic2Vjb25kYXJ5In0se2xhYmVsOnQub2tMYWJlbHx8KHI/Ilx1NTIyMFx1OTY2NCI6Ilx1Nzg2RVx1NUI5QSIpLHZhbHVlOiEwLGtpbmQ6cj8iZGFuZ2VyIjoicHJpbWFyeSIsYXV0b2ZvY3VzOiFyfV19KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpPT09ITB9KX1mdW5jdGlvbiBuZihlLHQscil7cmV0dXJuIHI9cnx8e30scm4oe3RpdGxlOnIudGl0bGV8fCJcdThCRjdcdThGOTNcdTUxNjUiLG1lc3NhZ2U6dHlwZW9mIGU9PSJzdHJpbmciP2U6U3RyaW5nKGU/PyIiKSx0eXBlOnIudHlwZXx8InF1ZXN0aW9uIixpbnB1dDohMCxpbnB1dFZhbHVlOnQ9PW51bGw/IiI6U3RyaW5nKHQpLGlucHV0UGxhY2Vob2xkZXI6ci5wbGFjZWhvbGRlcnx8IiIsY2FuY2VsVmFsdWU6bnVsbCxidXR0b25zOlt7bGFiZWw6ci5jYW5jZWxMYWJlbHx8Ilx1NTNENlx1NkQ4OCIsdmFsdWU6bnVsbCxraW5kOiJzZWNvbmRhcnkifSx7bGFiZWw6ci5va0xhYmVsfHwiXHU3ODZFXHU1QjlBIix2YWx1ZTp2b2lkIDAsa2luZDoicHJpbWFyeSJ9XX0pfXdpbmRvdy53YW5kQWxlcnQ9dGYsd2luZG93LndhbmRDb25maXJtPUZzLHdpbmRvdy53YW5kUHJvbXB0PW5mLHdpbmRvdy5vcGVuV2FuZERpYWxvZz1ybjt2YXIgJHQ9W10sd3M9MCxyZj02LGFmPTE2O2Z1bmN0aW9uIG9hKGUpe2lmKChlLmFjdGlvbkxhYmVsfHxlLnBsYXlTb3VuZCkmJkFzKCksIW4ubm90aWZCdWJibGUpcmV0dXJue2Rpc21pc3M6ZnVuY3Rpb24oKXt9fTt2YXIgdD0rK3dzLHI9ZS50eXBlfHwiaW5mbyIsaT1lLmljb258fChyPT09Indhcm5pbmciPyIhIjpyPT09InN1Y2Nlc3MiPyJcdTI3MTMiOiJpIiksYT1lLmR1cmF0aW9uIT09dm9pZCAwP2UuZHVyYXRpb246OGUzLHU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dS5jbGFzc05hbWU9Im5vdGlmaWNhdGlvbi1idWJibGUiLHUuc2V0QXR0cmlidXRlKCJkYXRhLW5pZCIsU3RyaW5nKHQpKTt2YXIgcz0nPGRpdiBjbGFzcz0ibm90aWZpY2F0aW9uLWJ1YmJsZS1oZWFkZXIiPjxzcGFuIGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLWljb24gJytyKyciPicraSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLXRpdGxlIj4nK3AoZS50aXRsZSkrJzwvc3Bhbj48YnV0dG9uIGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLWNsb3NlIiB0aXRsZT0iXHU1MTczXHU5NUVEIj5ceEQ3PC9idXR0b24+PC9kaXY+JyxvPWUuYm9keT8nPGRpdiBjbGFzcz0ibm90aWZpY2F0aW9uLWJ1YmJsZS1ib2R5Ij4nK3AoZS5ib2R5KS5yZXBsYWNlKC9cbi9nLCI8YnI+IikrIjwvZGl2PiI6IiIsbD1lLmFjdGlvbkxhYmVsPyc8ZGl2IGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9InByaW1hcnkiPicrcChlLmFjdGlvbkxhYmVsKSsiPC9idXR0b24+PC9kaXY+IjoiIjt1LmlubmVySFRNTD1zK28rbCxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHUpO3ZhciBjPXtpZDp0LGVsOnV9OyR0LnB1c2goYyksbGEoKTt2YXIgZj11LnF1ZXJ5U2VsZWN0b3IoIi5ub3RpZmljYXRpb24tYnViYmxlLWNsb3NlIik7aWYoZiYmKGYub25jbGljaz1mdW5jdGlvbigpe2JyKHQpfSksZS5hY3Rpb25MYWJlbCYmZS5hY3Rpb24pe3ZhciBkPXUucXVlcnlTZWxlY3RvcigiLm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b24iKTtkJiYoZC5vbmNsaWNrPWZ1bmN0aW9uKCl7ZS5hY3Rpb24oKSxicih0KX0pfXZhciB2PW51bGw7cmV0dXJuIGE+MCYmKHY9c2V0VGltZW91dChmdW5jdGlvbigpe2JyKHQpfSxhKSkse2Rpc21pc3M6ZnVuY3Rpb24oKXticih0KX19fWZ1bmN0aW9uIGJyKGUpe2Zvcih2YXIgdD0tMSxyPTA7cjwkdC5sZW5ndGg7cisrKWlmKCR0W3JdLmlkPT09ZSl7dD1yO2JyZWFrfWlmKHQhPT0tMSl7dmFyIGk9JHRbdF07aS5lbC5jbGFzc0xpc3QuYWRkKCJzbGlkZS1vdXQiKSwkdC5zcGxpY2UodCwxKSxsYSgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtpLmVsLnBhcmVudE5vZGUmJmkuZWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChpLmVsKX0sMzAwKX19ZnVuY3Rpb24gbGEoKXtmb3IodmFyIGU9YWYsdD0wO3Q8JHQubGVuZ3RoO3QrKykkdFt0XS5lbC5zdHlsZS50b3A9ZSsicHgiLGUrPSR0W3RdLmVsLm9mZnNldEhlaWdodCtyZn10cnl7U3M9bmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvV2FuZFBsYXRmb3JtXC9tYWNPUy8pLGZhPXdpbmRvdy53ZWJraXQmJndpbmRvdy53ZWJraXQubWVzc2FnZUhhbmRsZXJzJiZ3aW5kb3cud2Via2l0Lm1lc3NhZ2VIYW5kbGVycy53YW5kTmF0aXZlfHxudWxsLFNzJiZmYSYmdHlwZW9mIHdpbmRvdy5XYW5kTmF0aXZlPiJ1IiYmKHdpbmRvdy5XYW5kTmF0aXZlPXtkb3dubG9hZFVwZGF0ZTpmdW5jdGlvbihlLHQscil7dHJ5e2ZhLnBvc3RNZXNzYWdlKHt0eXBlOiJkb3dubG9hZFVwZGF0ZSIsdXJsOlN0cmluZyhlfHwiIiksZmlsZU5hbWU6U3RyaW5nKHR8fCJ3YW5kLXVwZGF0ZS5kbWciKSxzb3VyY2U6U3RyaW5nKHJ8fCJsb2NhbCIpfSl9Y2F0Y2h7fX19KX1jYXRjaHt9dmFyIGplPXR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuc2VuZE5vdGlmaWNhdGlvbj09ImZ1bmN0aW9uIixFcj1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9XYW5kQXBwXC8oW15cc10rKS8pLENzPS9XYW5kUGxhdGZvcm1cL21hY09TLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLHVmPSEhRXImJiFDcyx4bj1FciYmdWY/RXJbMV06bnVsbCxhbj1FciYmQ3M/RXJbMV06bnVsbDtmdW5jdGlvbiBZbihlKXtpZighKCFqZXx8dHlwZW9mIFdhbmROYXRpdmUudmlicmF0ZSE9ImZ1bmN0aW9uIikpdHJ5e1dhbmROYXRpdmUudmlicmF0ZShlfHwibGlnaHQiKX1jYXRjaHt9fWZ1bmN0aW9uIGNhKCl7aWYoamUpe3ZhciBlPW4uc2Vzc2lvbnMuc29tZShmdW5jdGlvbih0KXtyZXR1cm4hdC5hcmNoaXZlZCYmKHQuc3RhdHVzPT09InJ1bm5pbmcifHx0LnN0YXR1cz09PSJ0aGlua2luZyJ8fHQuc3RhdHVzPT09ImluaXRpYWxpemluZyIpfSk7aWYodHlwZW9mIFdhbmROYXRpdmUuc2V0S2VlcFNjcmVlbk9uPT0iZnVuY3Rpb24iKXRyeXtXYW5kTmF0aXZlLnNldEtlZXBTY3JlZW5PbihlKX1jYXRjaHt9aWYoZSl7aWYodHlwZW9mIFdhbmROYXRpdmUuc3RhcnRLZWVwQWxpdmU9PSJmdW5jdGlvbiIpdHJ5e1dhbmROYXRpdmUuc3RhcnRLZWVwQWxpdmUoKX1jYXRjaHt9fWVsc2UgaWYodHlwZW9mIFdhbmROYXRpdmUuc3RvcEtlZXBBbGl2ZT09ImZ1bmN0aW9uIil0cnl7V2FuZE5hdGl2ZS5zdG9wS2VlcEFsaXZlKCl9Y2F0Y2h7fX19ZnVuY3Rpb24gdWkoKXtpZihqZSYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0UGVybWlzc2lvbj09ImZ1bmN0aW9uIil0cnl7cmV0dXJuIFdhbmROYXRpdmUuZ2V0UGVybWlzc2lvbigpfWNhdGNoe31yZXR1cm4gbnVsbH1mdW5jdGlvbiBzZigpe2lmKGplKXt2YXIgZT11aSgpO2lmKGU9PT0iZGVmYXVsdCJ8fGU9PT0iZGVuaWVkIil0cnl7V2FuZE5hdGl2ZS5yZXF1ZXN0UGVybWlzc2lvbigpfWNhdGNoe31yZXR1cm59dHlwZW9mIE5vdGlmaWNhdGlvbjwidSImJk5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uPT09ImRlZmF1bHQiJiZOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKX1mdW5jdGlvbiBvZihlKXt2YXIgdD1lfHx7fTtyZXR1cm4hKHQub25seVdoZW5IaWRkZW4mJiFkb2N1bWVudC5oaWRkZW58fHQuc2tpcFdoZW5TZWxlY3RlZFNlc3Npb25JZCYmdC5za2lwV2hlblNlbGVjdGVkU2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiYhZG9jdW1lbnQuaGlkZGVuKX1mdW5jdGlvbiBsZihlLHQpe2lmKCFlfHwhdHx8dDw9MClyZXR1cm4hMTt2YXIgcj1uLm5vdGlmaWNhdGlvbkhpc3RvcnlbZV18fDAsaT1EYXRlLm5vdygpO3JldHVybiBpLXI8dD8hMDoobi5ub3RpZmljYXRpb25IaXN0b3J5W2VdPWksITEpfWZ1bmN0aW9uIHNpKGUsdCxyKXt2YXIgaT1yfHx7fSxhPWkudGFnfHwiIjtpZihvZihpKSYmIWxmKGEsaS5taW5JbnRlcnZhbE1zfHwwKSl7aWYoamUpe3ZhciB1PXVpKCk7aWYodSE9PSJncmFudGVkIilyZXR1cm47dHJ5e3ZhciBzPWE7aS5raW5kJiYocz1pLmtpbmQrKGE/IjoiK2E6IiIpKSxXYW5kTmF0aXZlLnNlbmROb3RpZmljYXRpb24oZXx8IldhbmQiLHR8fCIiLHN8fCIiKX1jYXRjaHt9cmV0dXJufWlmKCEodHlwZW9mIE5vdGlmaWNhdGlvbj4idSJ8fE5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uIT09ImdyYW50ZWQiKSYmZG9jdW1lbnQuaGlkZGVuKXRyeXt2YXIgbz1uZXcgTm90aWZpY2F0aW9uKGUse2JvZHk6dHx8IiIsaWNvbjppLmljb258fCIvZmF2aWNvbi5pY28iLHRhZzphfHx2b2lkIDB9KTtvLm9uY2xpY2s9ZnVuY3Rpb24oKXt3aW5kb3cuZm9jdXMoKSxvLmNsb3NlKCksaS5vbkNsaWNrJiZpLm9uQ2xpY2soKX0sc2V0VGltZW91dChmdW5jdGlvbigpe28uY2xvc2UoKX0sMWU0KX1jYXRjaHt9fX1mdW5jdGlvbiBjZihlLHQpe2lmKCEoIXR8fCF0LnRpdGxlKSl7dmFyIHI9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09ZX0pO2lmKHIpe3ZhciBpPXIuc3VtbWFyeXx8ci5jb21tYW5kfHxlO3NpKCJcdTRFRkJcdTUyQTFcdThGREJcdTg4NENcdTRFMkQiLGkrYApgK3QudGl0bGUse2tpbmQ6InRhc2siLHRhZzoid2FuZC10YXNrLSIrZSsiLSIrdC50aXRsZSxtaW5JbnRlcnZhbE1zOjllNCxvbmx5V2hlbkhpZGRlbjohMCxza2lwV2hlblNlbGVjdGVkU2Vzc2lvbklkOmUsb25DbGljazpmdW5jdGlvbigpe2UhPT1uLnNlbGVjdGVkSWQmJld0KGUpfX0pfX19ZnVuY3Rpb24gQnMoZSx0KXtnZihlfHwiLSIsdHx8Ii0iKSxzaSgiV2FuZCBcdTUzRDFcdTczQjBcdTY1QjBcdTcyNDhcdTY3MkMiLCJcdTVGNTNcdTUyNEQgIisoZXx8Ii0iKSsiIFx1MjE5MiBcdTY3MDBcdTY1QjAgIisodHx8Ii0iKSx7a2luZDoidXBkYXRlIix0YWc6IndhbmQtdXBkYXRlIixtaW5JbnRlcnZhbE1zOjNlNX0pfWZ1bmN0aW9uIGRmKGUsdCl7c2koIlx1OTcwMFx1ODk4MVx1NEY2MFx1NzY4NFx1NjM4OFx1Njc0MyIsdCx7a2luZDoicGVybWlzc2lvbiIsdGFnOiJ3YW5kLXBlcm0tIitlLG1pbkludGVydmFsTXM6NmU0LG9ubHlXaGVuSGlkZGVuOiEwLHNraXBXaGVuU2VsZWN0ZWRTZXNzaW9uSWQ6ZSxvbkNsaWNrOmZ1bmN0aW9uKCl7ZSE9PW4uc2VsZWN0ZWRJZCYmV3QoZSl9fSl9ZnVuY3Rpb24gZmYoZSx0LHIpe3NpKHQscix7a2luZDoidGFzay1lbmRlZCIsdGFnOiJ3YW5kLWVuZGVkLSIrZSxtaW5JbnRlcnZhbE1zOjFlNCxvbkNsaWNrOmZ1bmN0aW9uKCl7ZSE9PW4uc2VsZWN0ZWRJZCYmV3QoZSl9fSl9dmFyIFNuPXt9LHBmPTMwO2Z1bmN0aW9uIERzKGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PVN0cmluZyhlKS5yZXBsYWNlKC9eIytccysvZ20sIiIpLnJlcGxhY2UoL1wqXCovZywiIikucmVwbGFjZSgvYC9nLCIiKS50cmltKCkscj10LnNwbGl0KGAKYClbMF0udHJpbSgpO3JldHVybiByLmxlbmd0aD4xMDAmJihyPXIuc2xpY2UoMCwxMDApKyJcdTIwMjYiKSxyfWZ1bmN0aW9uIGRhKGUpeyFqZXx8dHlwZW9mIFdhbmROYXRpdmUudXBkYXRlU2Vzc2lvblByb2dyZXNzIT0iZnVuY3Rpb24ifHxlJiYoU25bZV0mJmNsZWFyVGltZW91dChTbltlXSksU25bZV09c2V0VGltZW91dChmdW5jdGlvbigpe2RlbGV0ZSBTbltlXSx2ZihlKX0scGYpKX1mdW5jdGlvbiB2ZihlKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oeCl7cmV0dXJuIHguaWQ9PT1lfSk7aWYodCl7dmFyIHI9dC5zdW1tYXJ5fHx0LmNvbW1hbmR8fGUsaT10LnN0YXR1c3x8InJ1bm5pbmciO2lmKGk9PT0iaWRsZSJ8fGk9PT0iYXJjaGl2ZWQifHxpPT09ImV4aXRlZCIpe2tzKGUpO3JldHVybn1mb3IodmFyIGE9bnVsbCx1PSIiLHM9IiIsbz1bXSxsPXQubWVzc2FnZXN8fFtdLGM9bC5sZW5ndGgtMTtjPj0wO2MtLSl7dmFyIGY9bFtjXTtpZighKCFmLmNvbnRlbnR8fCFBcnJheS5pc0FycmF5KGYuY29udGVudCkpKXtpZighcyYmZi5yb2xlPT09ImFzc2lzdGFudCIpZm9yKHZhciBkPWYuY29udGVudC5sZW5ndGgtMTtkPj0wO2QtLSl7dmFyIHY9Zi5jb250ZW50W2RdO2lmKHYmJnYudHlwZT09PSJ0ZXh0IiYmdi50ZXh0JiZ2LnRleHQudHJpbSgpKXtzPURzKHYudGV4dCk7YnJlYWt9fWlmKGYucm9sZT09PSJ1c2VyIil7dmFyIGc9Zi5jb250ZW50LnNvbWUoZnVuY3Rpb24oeCl7cmV0dXJuIHgmJnguX19xdWV1ZWR9KTtpZighZylmb3IodmFyIGg9MDtoPGYuY29udGVudC5sZW5ndGg7aCsrKXt2YXIgbT1mLmNvbnRlbnRbaF07aWYobSYmbS50eXBlPT09InRleHQiJiZtLnRleHQmJm0udGV4dC50cmltKCkpe3ZhciBiPURzKG0udGV4dCk7dXx8KHU9Yiksby5sZW5ndGg8NCYmby5wdXNoKGIpO2JyZWFrfX19aWYoIWEpZm9yKHZhciBGPWYuY29udGVudC5sZW5ndGgtMTtGPj0wO0YtLSl7dmFyIHc9Zi5jb250ZW50W0ZdO2lmKHcmJncudHlwZT09PSJ0b29sX3VzZSImJncubmFtZT09PSJUb2RvV3JpdGUiJiZ3LmlucHV0JiZ3LmlucHV0LnRvZG9zKXthPXcuaW5wdXQudG9kb3M7YnJlYWt9fWlmKGEmJm8ubGVuZ3RoPj00JiZzKWJyZWFrfX1vLnJldmVyc2UoKTt2YXIgRT0iIjtlPT09bi5zZWxlY3RlZElkJiZuLmN1cnJlbnRUYXNrJiZuLmN1cnJlbnRUYXNrLnRpdGxlJiYoRT1uLmN1cnJlbnRUYXNrLnRpdGxlKTt2YXIgQT17c2Vzc2lvbkxhYmVsOnIsc3RhdHVzOmksY3VycmVudFRhc2s6RSxsYXRlc3RVc2VyVGV4dDp1LGxhdGVzdEFzc2lzdGFudFRleHQ6cyx0b2RvczphfHxbXSxyZWNlbnRVc2VyVGV4dHM6b307dHJ5e1dhbmROYXRpdmUudXBkYXRlU2Vzc2lvblByb2dyZXNzKGUsSlNPTi5zdHJpbmdpZnkoQSkpfWNhdGNoe319fWZ1bmN0aW9uIGtzKGUpe2lmKCEoIWplfHx0eXBlb2YgV2FuZE5hdGl2ZS5jbGVhclNlc3Npb25Qcm9ncmVzcyE9ImZ1bmN0aW9uIikpe1NuW2VdJiYoY2xlYXJUaW1lb3V0KFNuW2VdKSxkZWxldGUgU25bZV0pO3RyeXtXYW5kTmF0aXZlLmNsZWFyU2Vzc2lvblByb2dyZXNzKGUpfWNhdGNoe319fXdpbmRvdy5oYW5kbGVOYXRpdmVCYWNrPWZ1bmN0aW9uKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1vZGFsIik7aWYoZSYmIWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKSlyZXR1cm4gWm4oKSwhMDt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1tb2RhbCIpO2lmKHQmJiF0LmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIikpcmV0dXJuIHZuKCksITA7dmFyIHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLW1vZGFsIik7cmV0dXJuIHImJiFyLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIik/KFhuKCksITApOm4uZmlsZVBhbmVsT3BlbiYmTmUoKT8oamkoITEpLCEwKTpuLnNlc3Npb25zRHJhd2VyT3BlbiYmTmUoKT8oTHIoKSwhMCk6TmUoKSYmbi5zZWxlY3RlZElkPyhuLnNlbGVjdGVkSWQ9bnVsbCx5ZSgpLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSEwLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITApLFF0KCksITApOiExfTtmdW5jdGlvbiBBcygpe24ubm90aWZTb3VuZCYmb2koKX1mdW5jdGlvbiBtZigpe3JldHVybiBvaSgpfWZ1bmN0aW9uIG9pKCl7dHJ5e2xldCBhPWZ1bmN0aW9uKHUscyxvKXt2YXIgbD1yLmNyZWF0ZU9zY2lsbGF0b3IoKSxjPXIuY3JlYXRlR2FpbigpO2wudHlwZT0ic2luZSIsbC5mcmVxdWVuY3kudmFsdWU9dSxjLmdhaW4uc2V0VmFsdWVBdFRpbWUoMCxyLmN1cnJlbnRUaW1lK3MpLGMuZ2Fpbi5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSguNSppLHIuY3VycmVudFRpbWUrcysuMDQpLGMuZ2Fpbi5leHBvbmVudGlhbFJhbXBUb1ZhbHVlQXRUaW1lKC4wMDEsci5jdXJyZW50VGltZStzK28pLGwuY29ubmVjdChjKSxjLmNvbm5lY3Qoci5kZXN0aW5hdGlvbiksbC5zdGFydChyLmN1cnJlbnRUaW1lK3MpLGwuc3RvcChyLmN1cnJlbnRUaW1lK3Mrbyl9O3ZhciBlPWEsdD13aW5kb3cuQXVkaW9Db250ZXh0fHx3aW5kb3cud2Via2l0QXVkaW9Db250ZXh0O2lmKCF0KXJldHVybiExO3ZhciByPW5ldyB0O3Iuc3RhdGU9PT0ic3VzcGVuZGVkIiYmci5yZXN1bWUoKTt2YXIgaT0obi5ub3RpZlZvbHVtZXx8MCkvMTAwO3JldHVybiBhKDUyMywwLC4yNSksYSg2NTksLjEyLC4zKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5jbG9zZSgpfSw2MDApLCEwfWNhdGNoe3JldHVybiExfX1mdW5jdGlvbiBnZihlLHQpe2lmKG4uX3VwZGF0ZUJ1YmJsZVNob3duKXJldHVybjtuLl91cGRhdGVCdWJibGVTaG93bj0hMCxBcygpO3ZhciByPSsrd3MsaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmNsYXNzTmFtZT0ibm90aWZpY2F0aW9uLWJ1YmJsZSB1cGRhdGUtY2FyZCIsaS5zZXRBdHRyaWJ1dGUoImRhdGEtbmlkIixTdHJpbmcocikpLGkuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1zaGluZSIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLWhlYWRlciI+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtaWNvbiIgYXJpYS1oaWRkZW49InRydWUiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTIgMTlWNSIvPjxwYXRoIGQ9Ik01IDEybDctNyA3IDciLz48L3N2Zz48L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1oZWFkaW5nIj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC10aXRsZSI+XHU1M0QxXHU3M0IwXHU2NUIwXHU3MjQ4XHU2NzJDPC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtc3VidGl0bGUiIGlkPSJ1cGRhdGUtY2FyZC1zdWJ0aXRsZSI+XHU3MEI5XHU1MUZCXHU0RTBCXHU2NUI5XHU2MzA5XHU5NEFFXHU0RTAwXHU5NTJFXHU2NkY0XHU2NUIwPC9kaXY+PC9kaXY+PGJ1dHRvbiBjbGFzcz0idXBkYXRlLWNhcmQtY2xvc2UiIHRpdGxlPSJcdTdBMERcdTU0MEVcdTYzRDBcdTkxOTIiIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xOCA2TDYgMTgiLz48cGF0aCBkPSJNNiA2bDEyIDEyIi8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtdmVyc2lvbiI+PHNwYW4gY2xhc3M9InVwZGF0ZS1jYXJkLXZlcnNpb24tY2hpcCB1cGRhdGUtY2FyZC12ZXJzaW9uLWN1cnJlbnQiPnYnK3AoU3RyaW5nKGUpLnJlcGxhY2UoL152LywiIikpKyc8L3NwYW4+PHN2ZyBjbGFzcz0idXBkYXRlLWNhcmQtdmVyc2lvbi1hcnJvdyIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTUgMTJoMTQiLz48cGF0aCBkPSJNMTMgNWw3IDctNyA3Ii8+PC9zdmc+PHNwYW4gY2xhc3M9InVwZGF0ZS1jYXJkLXZlcnNpb24tY2hpcCB1cGRhdGUtY2FyZC12ZXJzaW9uLWxhdGVzdCI+dicrcChTdHJpbmcodCkucmVwbGFjZSgvXnYvLCIiKSkrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1wcm9ncmVzcyIgaWQ9InVwZGF0ZS1jYXJkLXByb2dyZXNzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtcHJvZ3Jlc3MtdHJhY2siPjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXByb2dyZXNzLWZpbGwiPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXN0YXR1cyBoaWRkZW4iIGlkPSJ1cGRhdGUtY2FyZC1zdGF0dXMiPjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9InVwZGF0ZS1jYXJkLWFjdGlvbiB1cGRhdGUtY2FyZC1hY3Rpb24tcHJpbWFyeSIgaWQ9InVwZGF0ZS1idWJibGUtYWN0aW9uIiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1cGRhdGUtY2FyZC1hY3Rpb24tbGFiZWwiPlx1N0FDQlx1NTM3M1x1NjZGNFx1NjVCMDwvc3Bhbj48L2J1dHRvbj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaSk7dmFyIGE9e2lkOnIsZWw6aX07JHQucHVzaChhKSxsYSgpO3ZhciB1PWkucXVlcnlTZWxlY3RvcigiLnVwZGF0ZS1jYXJkLWNsb3NlIik7dSYmKHUub25jbGljaz1mdW5jdGlvbigpe2JyKHIpLG4uX3VwZGF0ZUJ1YmJsZVNob3duPSExfSk7dmFyIHM9aS5xdWVyeVNlbGVjdG9yKCIjdXBkYXRlLWJ1YmJsZS1hY3Rpb24iKSxvPWkucXVlcnlTZWxlY3RvcigiLnVwZGF0ZS1jYXJkLWFjdGlvbi1sYWJlbCIpLGw9aS5xdWVyeVNlbGVjdG9yKCIjdXBkYXRlLWNhcmQtc3VidGl0bGUiKSxjPWkucXVlcnlTZWxlY3RvcigiI3VwZGF0ZS1jYXJkLXN0YXR1cyIpLGY9aS5xdWVyeVNlbGVjdG9yKCIjdXBkYXRlLWNhcmQtcHJvZ3Jlc3MiKTtmdW5jdGlvbiBkKGgsbSl7aWYoYyl7aWYoYy50ZXh0Q29udGVudD1ofHwiIixjLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIsImVycm9yIiwic3VjY2VzcyIpLCFoKXtjLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO3JldHVybn1tJiZjLmNsYXNzTGlzdC5hZGQobSl9fWZ1bmN0aW9uIHYoaCl7bCYmKGwudGV4dENvbnRlbnQ9aHx8IiIpfWZ1bmN0aW9uIGcoaCl7ZiYmZi5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLCEhaCl9cyYmKHMub25jbGljaz1mdW5jdGlvbigpe3MuZGlzYWJsZWQ9ITAsaS5jbGFzc0xpc3QuYWRkKCJpcy1idXN5IiksbyYmKG8udGV4dENvbnRlbnQ9Ilx1NjZGNFx1NjVCMFx1NEUyRFx1MjAyNiIpLHYoIlx1NkI2M1x1NTcyOFx1NEUwQlx1OEY3RFx1NUU3Nlx1NUI4OVx1ODhDNVx1NjVCMFx1NzI0OFx1NjcyQ1x1MjAyNiIpLGcoITApLGQoIiIpLGZldGNoKCIvYXBpL3VwZGF0ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihoKXtyZXR1cm4gaC5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGgpe2lmKGguZXJyb3Ipe2coITEpLGkuY2xhc3NMaXN0LnJlbW92ZSgiaXMtYnVzeSIpLHYoIlx1NjZGNFx1NjVCMFx1NjcyQVx1NUI4Q1x1NjIxMCIpLGQoaC5lcnJvciwiZXJyb3IiKSxzLmRpc2FibGVkPSExLG8mJihvLnRleHRDb250ZW50PSJcdTkxQ0RcdThCRDUiKTtyZXR1cm59aWYoaS5jbGFzc0xpc3QuYWRkKCJpcy1zdWNjZXNzIiksdigoaC5tZXNzYWdlfHwiXHU2NkY0XHU2NUIwXHU1QjhDXHU2MjEwIikrIlx1RkYwQ1x1NkI2M1x1NTcyOFx1OTFDRFx1NTQyRlx1NjcwRFx1NTJBMVx1MjAyNiIpLGQoIiIpLG8mJihvLnRleHRDb250ZW50PSJcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTIwMjYiKSxoLmRldGFjaGVkVXBkYXRlKXt1bigpO3JldHVybn1pZihoLnJlc3RhcnRSZXF1aXJlZD09PSExKXtnKCExKSxpLmNsYXNzTGlzdC5yZW1vdmUoImlzLWJ1c3kiKSxzLmRpc2FibGVkPSExLG8mJihvLnRleHRDb250ZW50PSJcdTVERjJcdTVCOENcdTYyMTAiKTtyZXR1cm59aGYocyxvLGwsYyxmKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZyghMSksaS5jbGFzc0xpc3QucmVtb3ZlKCJpcy1idXN5IiksdigiXHU2NkY0XHU2NUIwXHU2NzJBXHU1QjhDXHU2MjEwIiksZCgiXHU4QkY3XHU2OEMwXHU2N0U1XHU3RjUxXHU3RURDXHU4RkRFXHU2M0E1XHU1NDBFXHU5MUNEXHU4QkQ1IiwiZXJyb3IiKSxzLmRpc2FibGVkPSExLG8mJihvLnRleHRDb250ZW50PSJcdTkxQ0RcdThCRDUiKX0pfSl9ZnVuY3Rpb24gaGYoZSx0LHIsaSxhKXtmZXRjaCgiL2FwaS9yZXN0YXJ0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oKXt1bigpfSkuY2F0Y2goZnVuY3Rpb24oKXt1bigpfSl9ZnVuY3Rpb24geHMoZSx0KXtlJiYoZS5kaXNhYmxlZD0hMCxlLnRleHRDb250ZW50PSJcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTIwMjYiKSx0JiYodC50ZXh0Q29udGVudD0iXHU2NzBEXHU1MkExXHU2QjYzXHU1NzI4XHU5MUNEXHU1NDJGXHUyMDI2Iix0LnN0eWxlLmNvbG9yPSJ2YXIoLS10ZXh0LXNlY29uZGFyeSkiKSxmZXRjaCgiL2FwaS9yZXN0YXJ0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oKXt1bigpfSkuY2F0Y2goZnVuY3Rpb24oKXt1bigpfSl9ZnVuY3Rpb24gdW4oKXtpZighZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3RhcnQtb3ZlcmxheSIpKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlLmlkPSJyZXN0YXJ0LW92ZXJsYXkiLGUuY2xhc3NOYW1lPSJyZXN0YXJ0LW92ZXJsYXkiLGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJyZXN0YXJ0LW92ZXJsYXktY29udGVudCI+PGRpdiBjbGFzcz0icmVzdGFydC1zcGlubmVyIj48L2Rpdj48ZGl2IGNsYXNzPSJyZXN0YXJ0LXRpdGxlIj5cdTY3MERcdTUyQTFcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkY8L2Rpdj48ZGl2IGNsYXNzPSJyZXN0YXJ0LXN1YnRpdGxlIj5cdTdBMERcdTU0MEVcdTVDMDZcdTgxRUFcdTUyQThcdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjJcdTIwMjY8L2Rpdj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSk7dmFyIHQ9MCxyPTE4MCxpPXNldEludGVydmFsKGZ1bmN0aW9uKCl7aWYodCsrLGZldGNoKCIvYXBpL2NvbmZpZyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHUpe3Uub2smJihjbGVhckludGVydmFsKGkpLGxvY2F0aW9uLnJlbG9hZCgpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSksdD49cil7Y2xlYXJJbnRlcnZhbChpKTt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIi5yZXN0YXJ0LXN1YnRpdGxlIik7YSYmKGEuaW5uZXJIVE1MPSdcdTkxQ0RcdTU0MkZcdThEODVcdTY1RjZcdUZGMENcdThCRjcgPGEgaHJlZj0iamF2YXNjcmlwdDpsb2NhdGlvbi5yZWxvYWQoKSIgc3R5bGU9ImNvbG9yOnZhcigtLWFjY2VudCk7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSI+XHU2MjRCXHU1MkE4XHU1MjM3XHU2NUIwPC9hPiBcdTk4NzVcdTk3NjJcdTMwMDInKX19LDJlMyl9fWZ1bmN0aW9uIHlmKGUsdCl7aWYoIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN0YXJ0LW92ZXJsYXkiKSl7dmFyIHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ci5pZD0icmVzdGFydC1vdmVybGF5IixyLmNsYXNzTmFtZT0icmVzdGFydC1vdmVybGF5IixyLmlubmVySFRNTD0nPGRpdiBjbGFzcz0icmVzdGFydC1vdmVybGF5LWNvbnRlbnQiPjxkaXYgY2xhc3M9InJlc3RhcnQtc3Bpbm5lciI+PC9kaXY+PGRpdiBjbGFzcz0icmVzdGFydC10aXRsZSI+XHU4MUVBXHU1MkE4XHU2NkY0XHU2NUIwXHU0RTJEPC9kaXY+PGRpdiBjbGFzcz0icmVzdGFydC1zdWJ0aXRsZSI+JytwKGUpKyIgXHUyMTkyICIrcCh0KSsiPGJyPlx1NkI2M1x1NTcyOFx1NEUwQlx1OEY3RFx1NUU3Nlx1NUI4OVx1ODhDNVx1NjVCMFx1NzI0OFx1NjcyQ1x1RkYwQ1x1N0EwRFx1NTQwRVx1NUMwNlx1ODFFQVx1NTJBOFx1OTFDRFx1NTQyRlx1MjAyNjwvZGl2PjwvZGl2PiIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyKX19dmFyIFNzLGZhLEllPXtyZWNvcmRpbmc6ITEsY2FuY2VsaW5nOiExLHRyYW5zY3JpcHQ6IiIsc3RhcnRZOjB9LGJmPTYwO2Z1bmN0aW9uIEVmKGUpe0llLnRyYW5zY3JpcHQ9ZXx8IiI7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtdGV4dCIpO3QmJih0LnRleHRDb250ZW50PUllLnRyYW5zY3JpcHQpO3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LWJ1YmJsZSIpO3ImJnIuY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLXRleHQiLCEhSWUudHJhbnNjcmlwdCl9ZnVuY3Rpb24gRmYoZSl7aWYoZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLEllLnN0YXJ0WT10eXBlb2YgZS5jbGllbnRZPT0ibnVtYmVyIj9lLmNsaWVudFk6MDt0cnl7ZS5wb2ludGVySWQhPT12b2lkIDAmJmUudGFyZ2V0JiZlLnRhcmdldC5zZXRQb2ludGVyQ2FwdHVyZSYmZS50YXJnZXQuc2V0UG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpfWNhdGNoe319SWUucmVjb3JkaW5nPSEwLEllLmNhbmNlbGluZz0hMSxJZS50cmFuc2NyaXB0PSIiO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1yZWNvcmQtYnRuIik7aWYodCl7dC5jbGFzc0xpc3QuYWRkKCJpcy1yZWNvcmRpbmciKTt2YXIgcj10LnF1ZXJ5U2VsZWN0b3IoIi52b2ljZS1yZWNvcmQtbGFiZWwiKTtyJiYoci50ZXh0Q29udGVudD0iXHU2NzdFXHU1RjAwIFx1NTNEMVx1OTAwMSIpfXZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LWJ1YmJsZSIpO2kmJmkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiwiaXMtY2FuY2VsaW5nIiwiaGFzLXRleHQiKSxFZigiIik7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtc3RhdHVzIik7YSYmKGEudGV4dENvbnRlbnQ9Ilx1N0Y1MVx1OTg3NVx1N0FFRlx1NjY4Mlx1NEUwRFx1NjUyRlx1NjMwMVx1OEJFRFx1OTdGM1x1OEY5M1x1NTE2NVx1RkYwQ1x1OEJGN1x1NEY3Rlx1NzUyOCBBcHAiKX1mdW5jdGlvbiB3ZihlKXtpZighKCFJZS5yZWNvcmRpbmd8fCFlKSl7dmFyIHQ9SWUuc3RhcnRZLSh0eXBlb2YgZS5jbGllbnRZPT0ibnVtYmVyIj9lLmNsaWVudFk6SWUuc3RhcnRZKSxyPXQ+YmY7aWYociE9PUllLmNhbmNlbGluZyl7SWUuY2FuY2VsaW5nPXI7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtYnViYmxlIik7aSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJpcy1jYW5jZWxpbmciLHIpO3ZhciBhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1yZWNvcmQtYnRuIiksdT1hJiZhLnF1ZXJ5U2VsZWN0b3IoIi52b2ljZS1yZWNvcmQtbGFiZWwiKTt1JiYodS50ZXh0Q29udGVudD1yPyJcdTY3N0VcdTVGMDAgXHU1M0Q2XHU2RDg4IjoiXHU2NzdFXHU1RjAwIFx1NTNEMVx1OTAwMSIpO3ZhciBzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LXN0YXR1cyIpO3MmJihzLnRleHRDb250ZW50PXI/Ilx1Njc3RVx1NUYwMFx1NjI0Qlx1NjMwNyBcdTUzRDZcdTZEODgiOiJcdTZCNjNcdTU3MjhcdTgwNDZcdTU0MkNcdTIwMjZcdTRFMEFcdTZFRDFcdTUzRDZcdTZEODgiKX19fWZ1bmN0aW9uIElzKGUpe2lmKEllLnJlY29yZGluZyl7ZSYmZS5wcmV2ZW50RGVmYXVsdCgpLEllLnJlY29yZGluZz0hMTt2YXIgdD0hSWUuY2FuY2VsaW5nJiYhIUllLnRyYW5zY3JpcHQudHJpbSgpLHI9SWUudHJhbnNjcmlwdDtwYSgpLHQmJihDZihyKSx2YSghMSkpfX1mdW5jdGlvbiBwYSgpe0llLmNhbmNlbGluZz0hMTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtcmVjb3JkLWJ0biIpO2lmKGUpe2UuY2xhc3NMaXN0LnJlbW92ZSgiaXMtcmVjb3JkaW5nIik7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIudm9pY2UtcmVjb3JkLWxhYmVsIik7dCYmKHQudGV4dENvbnRlbnQ9Ilx1NjMwOVx1NEY0RiBcdThCRjRcdThCREQiKX12YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtdHJhbnNjcmlwdC1idWJibGUiKTtyJiZyLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpfWZ1bmN0aW9uIENmKGUpe3ZhciB0PShlfHwiIikudHJpbSgpO2lmKHQpe3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZihyKXt2YXIgaT1yLnZhbHVlfHwiIixhPWk/aS5yZXBsYWNlKC9ccyskLywiIikrIiAiK3Q6dDtyLnZhbHVlPWEsdXQoYSwhMCksSHQocik7dHJ5e3Iuc2V0U2VsZWN0aW9uUmFuZ2UoYS5sZW5ndGgsYS5sZW5ndGgpfWNhdGNoe319fX1mdW5jdGlvbiB2YShlKXt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtY29tcG9zZXIiKTtpZih0KXt2YXIgcj10eXBlb2YgZT09ImJvb2xlYW4iP2U6IXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ2b2ljZS1tb2RlIik7aWYodC5jbGFzc0xpc3QudG9nZ2xlKCJ2b2ljZS1tb2RlIixyKSwhcil7SWUucmVjb3JkaW5nPSExLHBhKCk7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKGkmJiFuLnRlcm1pbmFsSW50ZXJhY3RpdmUpdHJ5e2kuZm9jdXMoe3ByZXZlbnRTY3JvbGw6ITB9KX1jYXRjaHt9fX19ZnVuY3Rpb24gSHQoZSl7aWYoZSl7dmFyIHQ9MzYscj0xMjAsaT1BcigpO2lmKCFlLnZhbHVlfHxlLnZhbHVlLnRyaW0oKT09PSIiKXtlLnN0eWxlLmhlaWdodD10KyJweCIsZS5zdHlsZS5taW5IZWlnaHQ9dCsicHgiLGUuc3R5bGUub3ZlcmZsb3dZPWk/ImF1dG8iOiJoaWRkZW4iLGUuc2Nyb2xsVG9wPTAsa2koZSk7cmV0dXJufXZhciBhPWUuc3R5bGUub3ZlcmZsb3dZO2Uuc3R5bGUub3ZlcmZsb3dZPSJoaWRkZW4iLGUuc3R5bGUuaGVpZ2h0PXQrInB4Ijt2YXIgdT1lLnNjcm9sbEhlaWdodCxzPU1hdGgubWF4KHQsTWF0aC5taW4odSxyKSksbz11PnI7ZS5zdHlsZS5oZWlnaHQ9cysicHgiLGUuc3R5bGUubWluSGVpZ2h0PXQrInB4IixlLnN0eWxlLm92ZXJmbG93WT1vfHxpPyJhdXRvIjoiaGlkZGVuIixvP2dpKGUpOmUuc2Nyb2xsVG9wPTAsa2koZSl9fWZ1bmN0aW9uIEJmKCl7aWYoIW4uc2VsZWN0ZWRJZClyZXR1cm4hMTt2YXIgZT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQuaWQ9PT1uLnNlbGVjdGVkSWR9KTtyZXR1cm4gdWUoZSk/ISEoZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0KTohIWUmJmUuc3RhdHVzPT09InJ1bm5pbmcifXZhciBGcj0hMTtmdW5jdGlvbiBtYSgpe3JldHVybiBuLnNlc3Npb25zLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuIHVlKGUpPyEhKGUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCkmJiFlLmFyY2hpdmVkOmUuc3RhdHVzPT09InJ1bm5pbmciJiYhZS5hcmNoaXZlZH0pfWZ1bmN0aW9uIFRzKGUpe2lmKG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPj0xMCl7aygiXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHU1REYyXHU2RUUxXHVGRjA4XHU2NzAwXHU1OTFBIDEwIFx1Njc2MVx1RkYwOVx1RkYwQ1x1OEJGN1x1N0I0OVx1NUY4NVx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NUI4Q1x1NjIxMFx1MzAwMiIsIndhcm5pbmciKTtyZXR1cm59dmFyIHQ9ImNzcS0iK0RhdGUubm93KCkrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsOCk7bi5jcm9zc1Nlc3Npb25RdWV1ZS5wdXNoKHtpZDp0LHRleHQ6ZSxjd2Q6ZXQoKSxtb2RlOm4uY2hhdE1vZGV8fCJtYW5hZ2VkIix0b29sOmh0KCkscXVldWVkQXQ6RGF0ZS5ub3coKX0pLEt0KCksRHQoKX1mdW5jdGlvbiBEZihlKXtGcnx8KEZyPSEwLGZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7Y29tbWFuZDplLnRvb2wsY3dkOmUuY3dkLG1vZGU6ZS5tb2RlLGluaXRpYWxJbnB1dDplLnRleHR9KSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIEZyPSExLHQuZXJyb3I/KGsodC5lcnJvciwiZXJyb3IiKSxuLmNyb3NzU2Vzc2lvblF1ZXVlLnVuc2hpZnQoZSksS3QoKSxEdCgpLG51bGwpOmxuKHQpfSkuY2F0Y2goZnVuY3Rpb24odCl7RnI9ITEsayh0JiZ0Lm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTYzOTJcdTk2MUZcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLG4uY3Jvc3NTZXNzaW9uUXVldWUudW5zaGlmdChlKSxLdCgpLER0KCl9KSl9ZnVuY3Rpb24ga2YoZSl7dmFyIHQ9bi5jcm9zc1Nlc3Npb25RdWV1ZS5maW5kSW5kZXgoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1lfSk7aWYoISh0PDApKXt2YXIgcj1uLmNyb3NzU2Vzc2lvblF1ZXVlLnNwbGljZSh0LDEpWzBdO0t0KCksRHQoKSxmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe2NvbW1hbmQ6ci50b29sLGN3ZDpyLmN3ZCxtb2RlOnIubW9kZSxpbml0aWFsSW5wdXQ6ci50ZXh0fSkpfSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmVycm9yPyhrKGkuZXJyb3IsImVycm9yIiksbi5jcm9zc1Nlc3Npb25RdWV1ZS5zcGxpY2UodCwwLHIpLEt0KCksRHQoKSxudWxsKTpsbihpKX0pLmNhdGNoKGZ1bmN0aW9uKGkpe2soaSYmaS5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4XHU2MzkyXHU5NjFGXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxuLmNyb3NzU2Vzc2lvblF1ZXVlLnNwbGljZSh0LDAsciksS3QoKSxEdCgpfSl9fWZ1bmN0aW9uIEFmKGUpe3ZhciB0PW4uY3Jvc3NTZXNzaW9uUXVldWUuZmluZEluZGV4KGZ1bmN0aW9uKHIpe3JldHVybiByLmlkPT09ZX0pO3Q8MHx8KG4uY3Jvc3NTZXNzaW9uUXVldWUuc3BsaWNlKHQsMSksS3QoKSxEdCgpLG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPT09MCYmaygiXHU2MzkyXHU5NjFGXHU1REYyXHU2RTA1XHU3QTdBXHUzMDAyIiwiaW5mbyIpKX1mdW5jdGlvbiBsaSgpe2lmKG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoIT09MCYmIW1hKCkmJiFGcil7dmFyIGU9bi5jcm9zc1Nlc3Npb25RdWV1ZS5zaGlmdCgpO0R0KCksRGYoZSl9fWZ1bmN0aW9uIExzKGUpe3ZhciB0PU1hdGguZmxvb3IoKERhdGUubm93KCktZSkvMWUzKTtpZih0PDYwKXJldHVybiB0KyJzIjt2YXIgcj1NYXRoLmZsb29yKHQvNjApO3JldHVybiByPDYwP3IrIm0iOk1hdGguZmxvb3Ioci82MCkrImgifWZ1bmN0aW9uIER0KCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmNyb3NzLXNlc3Npb24tcXVldWUiKSx0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpLHI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnN0cnVjdHVyZWQtc3RhdHVzLWJhciIpLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpO2lmKG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPT09MCl7ZSYmZS5yZW1vdmUoKSxLdCgpO3JldHVybn12YXIgdT10JiYhdC5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpLHM9dT90OmEsbz11P3J8fGk6bnVsbDtpZihzKXtlJiZlLnBhcmVudE5vZGUhPT1zJiYoZS5yZW1vdmUoKSxlPW51bGwpLGU/dSYmbyYmZS5uZXh0U2libGluZyE9PW8mJnMuaW5zZXJ0QmVmb3JlKGUsbyk6KGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksZS5jbGFzc05hbWU9ImNyb3NzLXNlc3Npb24tcXVldWUiLG8/cy5pbnNlcnRCZWZvcmUoZSxvKTpzLmFwcGVuZENoaWxkKGUpKTt2YXIgbD1uLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aCxjPW4uY3Jvc3NTZXNzaW9uUXVldWUubWFwKGZ1bmN0aW9uKGQsdil7dmFyIGc9ZC50ZXh0Lmxlbmd0aD42MD9kLnRleHQuc2xpY2UoMCw2MCkrIlx1MjAyNiI6ZC50ZXh0LGg9THMoZC5xdWV1ZWRBdCk7cmV0dXJuJzxkaXYgY2xhc3M9InF1ZXVlLWl0ZW0iIGRhdGEtcXVldWUtaWQ9IicrcChkLmlkKSsnIj48c3BhbiBjbGFzcz0icXVldWUtaXRlbS1kb3QiPjwvc3Bhbj48c3BhbiBjbGFzcz0icXVldWUtaXRlbS10ZXh0IiB0aXRsZT0iJytwKGQudGV4dCkrJyI+JytwKGcpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InF1ZXVlLWl0ZW0tYWdlIj4nK2grJzwvc3Bhbj48YnV0dG9uIGNsYXNzPSJxdWV1ZS1pdGVtLXNlbmQtbm93IiBkYXRhLXF1ZXVlLWlkPSInK3AoZC5pZCkrJyIgdGl0bGU9Ilx1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMSIgdHlwZT0iYnV0dG9uIj5cdTUzRDFcdTkwMDE8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJxdWV1ZS1pdGVtLWNhbmNlbCIgZGF0YS1xdWV1ZS1pZD0iJytwKGQuaWQpKyciIHRpdGxlPSJcdTUzRDZcdTZEODgiIHR5cGU9ImJ1dHRvbiI+XHhENzwvYnV0dG9uPjwvZGl2Pid9KS5qb2luKCIiKSxmPWw+MT8nPGRpdiBjbGFzcz0icXVldWUtaGVhZGVyIj48c3BhbiBjbGFzcz0icXVldWUtaGVhZGVyLWxhYmVsIj5cdTYzOTJcdTk2MUYgJytsKycgXHU2NzYxPC9zcGFuPjxidXR0b24gY2xhc3M9InF1ZXVlLWhlYWRlci1jbGVhciIgaWQ9InF1ZXVlLWNsZWFyLWFsbCIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU2RTA1XHU3QTdBXHU2MzkyXHU5NjFGIj5cdTZFMDVcdTdBN0E8L2J1dHRvbj48L2Rpdj4nOiIiO2UuaW5uZXJIVE1MPWYrY319c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtpZihuLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD4wKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucXVldWUtaXRlbS1hZ2UiKTtuLmNyb3NzU2Vzc2lvblF1ZXVlLmZvckVhY2goZnVuY3Rpb24odCxyKXtlW3JdJiYoZVtyXS50ZXh0Q29udGVudD1Mcyh0LnF1ZXVlZEF0KSl9KSxsaSgpfX0sNWUzKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQ7aWYodC5jbG9zZXN0KCIjcXVldWUtY2xlYXItYWxsIikpe2UucHJldmVudERlZmF1bHQoKSxuLmNyb3NzU2Vzc2lvblF1ZXVlPVtdLEt0KCksRHQoKSxrKCJcdTYzOTJcdTk2MUZcdTVERjJcdTZFMDVcdTdBN0FcdTMwMDIiLCJpbmZvIik7cmV0dXJufXZhciByPXQuY2xvc2VzdCgiLnF1ZXVlLWl0ZW0tc2VuZC1ub3ciKTtpZihyKXtlLnByZXZlbnREZWZhdWx0KCksa2Yoci5kYXRhc2V0LnF1ZXVlSWQpO3JldHVybn12YXIgaT10LmNsb3Nlc3QoIi5xdWV1ZS1pdGVtLWNhbmNlbCIpO2lmKGkpe2UucHJldmVudERlZmF1bHQoKSxBZihpLmRhdGFzZXQucXVldWVJZCk7cmV0dXJufX0pO2Z1bmN0aW9uIE1zKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtaW5wdXQiKSx0PWU/ZS52YWx1ZS50cmltKCk6IiI7aWYodCl7aWYobWEoKSl7ZS52YWx1ZT0iIixUcyh0KSxrKCJcdTVERjJcdTYzOTJcdTk2MUZcdUZGMENcdTVDMDZcdTU3MjhcdTVGNTNcdTUyNERcdTRGMUFcdThCRERcdTVCOENcdTYyMTBcdTU0MEVcdTgxRUFcdTUyQThcdTUzRDFcdTkwMDFcdTMwMDIiLCJpbmZvIik7cmV0dXJufXZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzIik7ciYmci5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLnZhbHVlPSIiLGUucGxhY2Vob2xkZXI9Ilx1NkI2M1x1NTcyOFx1NTQyRlx1NTJBOFx1MjAyNiIsZS5kaXNhYmxlZD0hMDt2YXIgaT1uLmNoYXRNb2RlfHwibWFuYWdlZCIsYT1ldCgpLHU9aHQoKTtmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe2NvbW1hbmQ6dSxwcm92aWRlcjp1LGN3ZDphLG1vZGU6aSxpbml0aWFsSW5wdXQ6dH0pKX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpfSkudGhlbihmdW5jdGlvbihzKXtpZihzLmVycm9yKXtrKHMuZXJyb3IsImVycm9yIiksZS5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIixlLmRpc2FibGVkPSExO3JldHVybn1uLnNlbGVjdGVkSWQ9cy5pZCx5ZSgpLG4uZHJhZnRzW3MuaWRdPSIiLEJ0KCksWChzKSxwZSgpLHdyKHMuaWQpLFRuKHMuaWQpLHBuKHMuaWQpLnRoZW4oZnVuY3Rpb24oKXtlLnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLGUuZGlzYWJsZWQ9ITEsTnQoITApfSl9KS5jYXRjaChmdW5jdGlvbihzKXtrKHMmJnMubWVzc2FnZXx8KHU9PT0iY29kZXgiPyJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQTggQ29kZXggXHU0RjFBXHU4QkREXHUzMDAyIjoiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4IENsYXVkZSBcdTRGMUFcdThCRERcdTMwMDIiKSwiZXJyb3IiKSxlLnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLGUuZGlzYWJsZWQ9ITF9KX19ZnVuY3Rpb24geGYoZSl7ZT1lfHx7fTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS1pbnB1dCIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLGk9dCYmdC52YWx1ZS50cmltKCk/dC52YWx1ZS50cmltKCk6cj9yLnZhbHVlLnRyaW0oKToiIjtpZihuLnNlbGVjdGVkSWQpe2kmJnFzKGUpO3JldHVybn1pZihpJiZtYSgpKXtyJiYoci52YWx1ZT0iIiksdCYmKHQudmFsdWU9IiIpLGtpKHIpLFRzKGkpLGsoIlx1NURGMlx1NjM5Mlx1OTYxRlx1RkYwQ1x1NUMwNlx1NTcyOFx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NUI4Q1x1NjIxMFx1NTQwRVx1ODFFQVx1NTJBOFx1NTNEMVx1OTAwMVx1MzAwMiIsImluZm8iKTtyZXR1cm59dmFyIGE9bi5jaGF0TW9kZXx8Im1hbmFnZWQiLHU9ZXQoKSxzPWh0KCk7ZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGZ0KHtjb21tYW5kOnMscHJvdmlkZXI6cyxjd2Q6dSxtb2RlOmEsaW5pdGlhbElucHV0Oml8fHZvaWQgMH0pKX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uanNvbigpfSkudGhlbihmdW5jdGlvbihvKXtyZXR1cm4gby5lcnJvcj8oayhvLmVycm9yLCJlcnJvciIpLG51bGwpOihuLnNlbGVjdGVkSWQ9by5pZCx5ZSgpLG4uZHJhZnRzW28uaWRdPSIiLEJ0KCksciYmKHIudmFsdWU9IiIpLHQmJih0LnZhbHVlPSIiKSxYKG8pLHBlKCksd3Ioby5pZCksVG4oby5pZCkscG4oby5pZCkpfSkuY2F0Y2goZnVuY3Rpb24obyl7ayhvJiZvLm1lc3NhZ2V8fChzPT09ImNvZGV4Ij8iXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4IENvZGV4IFx1NEYxQVx1OEJERFx1MzAwMiI6Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU0RjFBXHU4QkREXHUzMDAyIiksImVycm9yIil9KX1mdW5jdGlvbiB3cihlKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odil7cmV0dXJuIHYuaWQ9PT1lfSkscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0IiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RvcC1idXR0b24iKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC10aXRsZSIpLG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLWluZm8iKSxsPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5zZXNzaW9uLXN1bW1hcnktdmFsdWUiKSxjPXVlKHQpO3ImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksaSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLGMpLGEmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksYz9uLmN1cnJlbnRWaWV3PSJjaGF0IjpuLmN1cnJlbnRWaWV3PSJ0ZXJtaW5hbCI7dmFyIGY9dD94cih0LmNvbW1hbmQpOiJXYW5kIixkPXQ/bHIodCk6Ilx1NUYwMFx1NTlDQlx1NUJGOVx1OEJERCI7cyYmKHMudGV4dENvbnRlbnQ9ZiksbyYmKG8udGV4dENvbnRlbnQ9ZCksbCYmKGwudGV4dENvbnRlbnQ9ZiksY3x8bi50ZXJtaW5hbHx8S24oKSxDaSgpLE50KCEwKSxjfHxpdCgidmlldy1zd2l0Y2giLHtmb3JjZVJlcGxheTohMH0pfWZ1bmN0aW9uIHFzKGUpe2U9ZXx8e307dmFyIHQ9ISFlLmludGVycnVwdDtpZihuLnRlcm1pbmFsSW50ZXJhY3RpdmUpcmV0dXJuIGsoIlx1N0VDOFx1N0FFRlx1NEVBNFx1NEU5Mlx1NkEyMVx1NUYwRlx1NUYwMFx1NTQyRlx1NjVGNlx1RkYwQ1x1OEJGN1x1NzZGNFx1NjNBNVx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1OEY5M1x1NTE2NVx1MzAwMiIsImluZm8iKSxQcm9taXNlLnJlc29sdmUoKTt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksaT1yP3IudmFsdWU6IiIsYT1fdCgpLHU9bi5wZW5kaW5nQXR0YWNobWVudHMubGVuZ3RoPjA7aWYoaXx8dSl7dmFyIHM9dSYmbi5zZWxlY3RlZElkP0VtKG4uc2VsZWN0ZWRJZCkuY2F0Y2goZnVuY3Rpb24obyl7aygiXHU5NjQ0XHU0RUY2XHU0RTBBXHU0RjIwXHU1OTMxXHU4RDI1OiAiKyhvJiZvLm1lc3NhZ2V8fG8pLCJlcnJvciIpO3ZhciBsPW8gaW5zdGFuY2VvZiBFcnJvcj9vOm5ldyBFcnJvcihTdHJpbmcobykpO3Rocm93IGwuX193YW5kVG9hc3RlZD0hMCxsfSk6UHJvbWlzZS5yZXNvbHZlKFtdKTtyZXR1cm4gcy50aGVuKGZ1bmN0aW9uKG8pe3ZhciBsPUZtKG8pLGM9bCsoaXx8KG8ubGVuZ3RoPyJcdThCRjdcdTY3RTVcdTc3MEJcdTk2NDRcdTRFRjZcdTMwMDIiOiIiKSk7by5sZW5ndGgmJmJtKCk7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MiKTtpZihmJiZmLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHVlKGEpKXJldHVybiBTZihjLHIsYSx7aW50ZXJydXB0OnR9KTt2YXIgZD16ZihhLGMpLHY9IW4ud3NDb25uZWN0ZWQ7cmV0dXJuIHY/KFlmKGQpLHImJihyLnZhbHVlPSIiLEh0KHIpKSx1dCgiIiksUHJvbWlzZS5yZXNvbHZlKCkpOldmKGEpLnRoZW4oZnVuY3Rpb24oZyl7aWYoIWcpcmV0dXJuIG51bGw7dmFyIGg9bi5jdXJyZW50VmlldztpZihnJiZnLnByb3ZpZGVyPT09ImNvZGV4IiYmbi5zZWxlY3RlZElkIT09Zy5pZCl0aHJvdyBuZXcgRXJyb3IoIkNvZGV4IHNlc3Npb24gY2hhbmdlZCBiZWZvcmUgaW5wdXQgc2VuZC4iKTtyZXR1cm4gVmYoZCwiZW50ZXJfdGV4dCIsMzAsaCkudGhlbihmdW5jdGlvbigpe3ImJnIudmFsdWU9PT1pJiYoci52YWx1ZT0iIixIdChyKSksdXQoIiIpfSl9KS5jYXRjaChmdW5jdGlvbihnKXt0aHJvdyBrKFdzKGcpLCJlcnJvciIpLGcmJihnLl9fd2FuZFRvYXN0ZWQ9ITApLGd9KX0pLmNhdGNoKGZ1bmN0aW9uKG8pe3Rocm93IG8mJm8uX193YW5kVG9hc3RlZHx8ayhXcyhvKSwiZXJyb3IiKSxvfSl9cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpfXZhciBPcz17fSxQcz0zNTA7ZnVuY3Rpb24gU2YoZSx0LHIsaSl7aT1pfHx7fTt2YXIgYT0hIWkuaW50ZXJydXB0O2lmKCFuLnNlbGVjdGVkSWR8fCFlKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTtpZighcilyZXR1cm4gaygiXHU0RjFBXHU4QkREXHU0RTBEXHU1QjU4XHU1NzI4XHVGRjBDXHU4QkY3XHU5MUNEXHU2NUIwXHU5MDA5XHU2MkU5XHU2MjE2XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxQcm9taXNlLnJlc29sdmUoKTt2YXIgdT1EYXRlLm5vdygpLHM9T3Nbci5pZF18fDA7aWYodS1zPFBzKXJldHVybiBjb25zb2xlLmxvZygiW3dhbmRdIHBvc3RTdHJ1Y3R1cmVkSW5wdXQ6IGR1cGxpY2F0ZSBzdWJtaXQgKHdpdGhpbiAiK1BzKyJtcykgaWdub3JlZCBmb3Igc2Vzc2lvbiIsci5pZCksUHJvbWlzZS5yZXNvbHZlKCk7T3Nbci5pZF09dTt2YXIgbz0hIShyLnN0cnVjdHVyZWRTdGF0ZSYmci5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQmJnIuc3RhdHVzPT09InJ1bm5pbmciKSxsPW8mJmEsYz1vJiYhYSxmPXVyKEFycmF5LmlzQXJyYXkoci5tZXNzYWdlcyk/ci5tZXNzYWdlcy5zbGljZSgpOltdKSxkO2lmKGMpe3ZhciB2PUFycmF5LmlzQXJyYXkoci5xdWV1ZWRNZXNzYWdlcyk/ci5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO3YucHVzaChlKSxkPXtpZDpyLmlkLHF1ZXVlZE1lc3NhZ2VzOnZ9LFgoZCk7dmFyIGc9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHcpe3JldHVybiB3LmlkPT09ci5pZH0pfHxyO24uY3VycmVudE1lc3NhZ2VzPVZlKGcsYXQoZyxnLm91dHB1dCwhMSkpLEpuKCJcdTVERjJcdTUyQTBcdTUxNjVcdTYzOTJcdTk2MUZcdTIwMjYiKSx0dCghMCksc24oKSxrKHYubGVuZ3RoPjE/Ilx1NURGMlx1NTJBMFx1NTE2NVx1NjM5Mlx1OTYxRlx1RkYwOFx1NTE3MSAiK3YubGVuZ3RoKyIgXHU2NzYxXHU3QjQ5XHU1Rjg1XHVGRjA5IjoiXHU1REYyXHU1MkEwXHU1MTY1XHU2MzkyXHU5NjFGXHVGRjBDXHU3QjQ5XHU1RjUzXHU1MjREXHU1NkRFXHU1OTBEXHU1QjhDXHU2MjEwXHU0RjFBXHU4MUVBXHU1MkE4XHU1M0QxXHU5MDAxXHUzMDAyIiwiaW5mbyIpfWVsc2V7dmFyIGg9e3JvbGU6InVzZXIiLGNvbnRlbnQ6W3t0eXBlOiJ0ZXh0Iix0ZXh0OmV9XX07Zi5wdXNoKGgpO3ZhciBtPU9iamVjdC5hc3NpZ24oe30sci5zdHJ1Y3R1cmVkU3RhdGV8fHt9LHtpbkZsaWdodDohMH0pO1goe2lkOnIuaWQsc3RhdHVzOiJydW5uaW5nIixtZXNzYWdlczpmLHN0cnVjdHVyZWRTdGF0ZTptfSksbi5jdXJyZW50TWVzc2FnZXM9VmUoT2JqZWN0LmFzc2lnbih7fSxyLHtzdGF0dXM6InJ1bm5pbmciLG1lc3NhZ2VzOmYsc3RydWN0dXJlZFN0YXRlOm19KSxmKSxKbihsPyJcdTVERjJcdTRFMkRcdTY1QURcdUZGMENcdTZCNjNcdTU3MjhcdTU5MDRcdTc0MDZcdTY1QjBcdTZEODhcdTYwNkZcdTIwMjYiOiJcdTYwMURcdTgwMDNcdTRFMkRcdTIwMjYiKSx0dCghMCksbCYmaygiXHU1REYyXHU0RTJEXHU2NUFEXHU0RTBBXHU0RTAwXHU2NzYxXHU1NkRFXHU1OTBEXHVGRjBDXHU2QjYzXHU1NzI4XHU1OTA0XHU3NDA2XHU2NUIwXHU2RDg4XHU2MDZGXHUyMDI2IiwiaW5mbyIpfXQmJih0LnZhbHVlPSIiLEh0KHQpKSx1dCgiIik7dmFyIGI9bi5xdWV1ZUVwb2NoLEY9dHlwZW9mIGNyeXB0bzwidSImJmNyeXB0by5yYW5kb21VVUlEP2NyeXB0by5yYW5kb21VVUlEKCk6RGF0ZS5ub3coKS50b1N0cmluZygzNikrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsMTApO3JldHVybiBmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrci5pZCsiL21lc3NhZ2VzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6ZSxpbnRlcnJ1cHQ6bHx8dm9pZCAwLGlkZW1wb3RlbmN5S2V5OkZ9KX0pLnRoZW4oZnVuY3Rpb24odyl7cmV0dXJuIHcub2s/dy5qc29uKCk6dy5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57ZXJyb3I6Ilx1OEJGN1x1NkM0Mlx1NTkzMVx1OEQyNSJ9fSkudGhlbihmdW5jdGlvbihFKXt2YXIgQT1uZXcgRXJyb3IoRSYmRS5lcnJvcnx8Ilx1NjVFMFx1NkNENVx1NTNEMVx1OTAwMVx1N0VEM1x1Njc4NFx1NTMxNlx1NkQ4OFx1NjA2Rlx1MzAwMiIpO3Rocm93IEEuZXJyb3JDb2RlPUUmJkUuZXJyb3JDb2RlLEEuaHR0cFN0YXR1cz13LnN0YXR1cyxBfSl9KS50aGVuKGZ1bmN0aW9uKHcpe2lmKHcmJncuZXJyb3IpdGhyb3cgbmV3IEVycm9yKHcuZXJyb3IpO2lmKHcmJncuaWQmJihuLnF1ZXVlRXBvY2g+YiYmdy5xdWV1ZWRNZXNzYWdlcyYmZGVsZXRlIHcucXVldWVkTWVzc2FnZXMsWCh3KSx3LmlkPT09bi5zZWxlY3RlZElkKSl7dmFyIEU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKEEpe3JldHVybiBBLmlkPT09dy5pZH0pfHx3O24uY3VycmVudE1lc3NhZ2VzPVZlKEUsYXQoRSx3Lm91dHB1dCwhMSkpLHR0KCEwKSxzbigpfX0pLmNhdGNoKGZ1bmN0aW9uKHcpe2lmKHcmJncuZXJyb3JDb2RlPT09ImR1cGxpY2F0ZV9pZGVtcG90ZW5jeV9rZXkiKXtrKHcubWVzc2FnZXx8Ilx1NjhDMFx1NkQ0Qlx1NTIzMFx1OTFDRFx1NTkwRFx1NTNEMVx1OTAwMVx1RkYwQ1x1NURGMlx1NjJFNlx1NjIyQVx1MzAwMiIsIndhcm5pbmciKSxKbigiRW50ZXIgXHU1M0QxXHU5MDAxIFx4QjcgU2hpZnQrRW50ZXIgXHU2MzYyXHU4ODRDIik7cmV0dXJufWlmKGMpe3ZhciBFPUFycmF5LmlzQXJyYXkoci5xdWV1ZWRNZXNzYWdlcyk/ci5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO2lmKFgoe2lkOnIuaWQscXVldWVkTWVzc2FnZXM6RX0pLHIuaWQ9PT1uLnNlbGVjdGVkSWQpe3ZhciBBPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihWKXtyZXR1cm4gVi5pZD09PXIuaWR9KXx8cjtuLmN1cnJlbnRNZXNzYWdlcz1WZShBLGF0KEEsQS5vdXRwdXQsITEpKSx0dCghMCksc24oKX19ZWxzZXt2YXIgeD1mLnNsaWNlKDAsLTEpO1goe2lkOnIuaWQsc3RhdHVzOnIuc3RhdHVzLG1lc3NhZ2VzOngsc3RydWN0dXJlZFN0YXRlOk9iamVjdC5hc3NpZ24oe30sci5zdHJ1Y3R1cmVkU3RhdGV8fHt9LHtpbkZsaWdodDohMX0pfSksci5pZD09PW4uc2VsZWN0ZWRJZCYmKG4uY3VycmVudE1lc3NhZ2VzPVZlKE9iamVjdC5hc3NpZ24oe30scix7bWVzc2FnZXM6eCxzdHJ1Y3R1cmVkU3RhdGU6T2JqZWN0LmFzc2lnbih7fSxyLnN0cnVjdHVyZWRTdGF0ZXx8e30se2luRmxpZ2h0OiExfSl9KSx4KSx0dCghMCkpfXZhciBJPXcmJncubWVzc2FnZXx8IiIsXz1JPT09IkZhaWxlZCB0byBmZXRjaCJ8fEk9PT0iTmV0d29ya0Vycm9yIHdoZW4gYXR0ZW1wdGluZyB0byBmZXRjaCByZXNvdXJjZS4ifHxJPT09IkxvYWQgZmFpbGVkInx8L2Fib3J0ZWR8YWJvcnRlcnJvcnxuZXR3b3JrZXJyb3J8ZmFpbGVkIHRvIGZldGNoL2kudGVzdChJKTtffHxrKHcmJncubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTNEMVx1OTAwMVx1N0VEM1x1Njc4NFx1NTMxNlx1NkQ4OFx1NjA2Rlx1MzAwMiIsImVycm9yIiksSm4oIkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpfSl9ZnVuY3Rpb24gSm4oZSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWhpbnQiKTt0JiYodC50ZXh0Q29udGVudD1lKX1mdW5jdGlvbiBzbigpe2t0KCl9dmFyIElmPTEwLEhzPTI0O2Z1bmN0aW9uIFRmKGUpe2lmKHR5cGVvZiBlIT0ic3RyaW5nIilyZXR1cm4iIjt2YXIgdD1lLnJlcGxhY2UoL1xzKy9nLCIgIikudHJpbSgpO3JldHVybiB0Lmxlbmd0aDw9SHM/dDp0LnNsaWNlKDAsSHMpKyJcdTIwMjYifWZ1bmN0aW9uIF9zKGUpe3JldHVybiBuLnF1ZXVlQmFyRHJhZyYmdHlwZW9mIG4ucXVldWVCYXJEcmFnLm9yaWdJbmRleD09Im51bWJlciI/bi5xdWV1ZUJhckRyYWcub3JpZ0luZGV4OnR5cGVvZiBuLnF1ZXVlQmFySG92ZXJJbmRleD09Im51bWJlciImJm4ucXVldWVCYXJIb3ZlckluZGV4Pj0wJiZuLnF1ZXVlQmFySG92ZXJJbmRleDxlP24ucXVldWVCYXJIb3ZlckluZGV4OjB9ZnVuY3Rpb24gTGYoZSx0LHIpe3ZhciBpPWUubGVuZ3RoPD0xLGE9InF1ZXVlLWJhciI7ciYmKGErPSIgcXVldWUtYmFyLWNhcGFjaXR5IiksdCYmKGErPSIgcXVldWUtYmFyLWluZmxpZ2h0Iik7Zm9yKHZhciB1PV9zKGUubGVuZ3RoKSxzPXQ/Ilx1NEUyRFx1NjVBRFx1NUY1M1x1NTI0RFx1NTZERVx1NTkwRFx1RkYwQ1x1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1OEZEOVx1Njc2MSI6Ilx1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMVx1OEZEOVx1Njc2MSIsbz0iIixsPTA7bDxlLmxlbmd0aDtsKyspe3ZhciBjPWVbbF09PW51bGw/IiI6U3RyaW5nKGVbbF0pLGY9bD09PXUsZD0icXVldWUtYmFyLWl0ZW0iO2YmJihkKz0iIGV4cGFuZGVkIiksaSYmKGQrPSIgcXVldWUtYmFyLWl0ZW0tc2luZ2xlIik7dmFyIHY9Zj9jKyJcdUZGMDhcdTYzMDlcdTRGNEZcdTUzRUZcdTYyRDZcdTUyQThcdThDMDNcdTVFOEZcdUZGMDkiOmM7bys9JzxsaSBjbGFzcz0iJytkKyciIGRhdGEtaW5kZXg9IicrbCsnIiBkYXRhLWFjdGlvbj0iZHJhZyIgdGl0bGU9IicrcCh2KSsnIj48c3BhbiBjbGFzcz0icXVldWUtYmFyLWl0ZW0taW5kZXgiIGFyaWEtaGlkZGVuPSJ0cnVlIj4nKyhsKzEpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InF1ZXVlLWJhci1pdGVtLXRleHQiPicrcChUZihjKSkrJzwvc3Bhbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InF1ZXVlLWJhci1pdGVtLXByb21vdGUiIGRhdGEtYWN0aW9uPSJwcm9tb3RlLWl0ZW0iIHRpdGxlPSInK3AocykrJyIgYXJpYS1sYWJlbD0iXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU4RkQ5XHU2NzYxIiB0YWJpbmRleD0iJysoZj8iMCI6Ii0xIikrJyI+PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTEzIDIgTDQgMTQgTDExIDE0IEwxMCAyMiBMMjAgOSBMMTMgOSBaIi8+PC9zdmc+PHNwYW4gY2xhc3M9InF1ZXVlLWJhci1pdGVtLXByb21vdGUtbGFiZWwiPlx1N0FDQlx1NTM3Mzwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InF1ZXVlLWJhci1pdGVtLWRlbGV0ZSIgZGF0YS1hY3Rpb249ImRlbGV0ZSIgYXJpYS1sYWJlbD0iXHU1MjIwXHU5NjY0XHU4RkQ5XHU2NzYxXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGIiB0aXRsZT0iXHU1MjIwXHU5NjY0IiB0YWJpbmRleD0iJysoZj8iMCI6Ii0xIikrJyI+PHN2ZyB3aWR0aD0iOSIgaGVpZ2h0PSI5IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iNiIgeTE9IjE4IiB4Mj0iMTgiIHkyPSI2Ii8+PC9zdmc+PC9idXR0b24+PC9saT4nfXJldHVybic8ZGl2IGNsYXNzPSInK2ErJyIgZGF0YS1xdWV1ZS1iYXI9IjEiPjxvbCBjbGFzcz0icXVldWUtYmFyLWxpc3QiIGRhdGEtcXVldWUtbGlzdD0iMSI+JytvKyI8L29sPjwvZGl2PiJ9ZnVuY3Rpb24ga3QoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVldWUtYmFyLWhvc3QiKTtpZihlKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24ocyl7cmV0dXJuIHMuaWQ9PT1uLnNlbGVjdGVkSWR9KSxyPXQmJnQuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIsaT1yP0hpKHQpOltdO2lmKGk9QXJyYXkuaXNBcnJheShpKT9pOltdLCFyfHxpLmxlbmd0aD09PTApe2UuaGlkZGVuPSEwLGUuaW5uZXJIVE1MPSIiLG4ucXVldWVCYXJIb3ZlckluZGV4PW51bGw7cmV0dXJufWlmKCFuLnF1ZXVlQmFyRHJhZyl7ZS5oaWRkZW49ITE7dmFyIGE9ISEodC5zdHJ1Y3R1cmVkU3RhdGUmJnQuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0JiZ0LnN0YXR1cz09PSJydW5uaW5nIiksdT1pLmxlbmd0aD49SWY7ZS5pbm5lckhUTUw9TGYoaSxhLHUpfX19ZnVuY3Rpb24gTnMoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVldWUtYmFyLWhvc3QiKTtpZighKCFlfHxlLmhpZGRlbikpe3ZhciB0PWUucXVlcnlTZWxlY3RvcignW2RhdGEtcXVldWUtbGlzdD0iMSJdJyk7aWYodClmb3IodmFyIHI9dC5jaGlsZHJlbixpPV9zKHIubGVuZ3RoKSxhPTA7YTxyLmxlbmd0aDthKyspe3ZhciB1PXJbYV0scz1hPT09aTtpZih1LmNsYXNzTGlzdC5jb250YWlucygiZXhwYW5kZWQiKSE9PXMpe3UuY2xhc3NMaXN0LnRvZ2dsZSgiZXhwYW5kZWQiLHMpO3ZhciBvPXUucXVlcnlTZWxlY3RvcigiLnF1ZXVlLWJhci1pdGVtLWRlbGV0ZSIpO28mJihvLnRhYkluZGV4PXM/MDotMSl9fX19ZnVuY3Rpb24gZ2EoZSl7dmFyIHQ9ZT09bnVsbD9udWxsOk51bWJlcihlKTtuLnF1ZXVlQmFySG92ZXJJbmRleCE9PXQmJihuLnF1ZXVlQmFySG92ZXJJbmRleD10LE5zKCkpfWZ1bmN0aW9uIGNpKGUsdCl7WCh7aWQ6ZS5pZCxxdWV1ZWRNZXNzYWdlczp0fSk7dmFyIHI9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGkpe3JldHVybiBpLmlkPT09ZS5pZH0pfHxlO24uY3VycmVudE1lc3NhZ2VzPVZlKHIsYXQocixyLm91dHB1dCwhMSkpLHR0KCEwKSxrdCgpfWZ1bmN0aW9uIE1mKGUpe3ZhciB0PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PW4uc2VsZWN0ZWRJZH0pO2lmKHQpe3ZhciByPUFycmF5LmlzQXJyYXkodC5xdWV1ZWRNZXNzYWdlcyk/dC5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO2lmKCEoZTwwfHxlPj1yLmxlbmd0aCkpe3ZhciBpPXIuc2xpY2UoKSxhPXIuc2xpY2UoMCxlKS5jb25jYXQoci5zbGljZShlKzEpKTt0eXBlb2Ygbi5xdWV1ZUJhckhvdmVySW5kZXg9PSJudW1iZXIiJiYobi5xdWV1ZUJhckhvdmVySW5kZXg9PT1lP24ucXVldWVCYXJIb3ZlckluZGV4PW51bGw6bi5xdWV1ZUJhckhvdmVySW5kZXg+ZSYmKG4ucXVldWVCYXJIb3ZlckluZGV4LT0xKSksWCh7aWQ6dC5pZCxxdWV1ZWRNZXNzYWdlczphfSk7dmFyIHU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09dC5pZH0pfHx0O24uY3VycmVudE1lc3NhZ2VzPVZlKHUsYXQodSx1Lm91dHB1dCwhMSkpLHR0KCEwKSxrdCgpLGZldGNoKCIvYXBpL3N0cnVjdHVyZWQtc2Vzc2lvbnMvIit0LmlkKyIvcXVldWVkLyIrZSx7bWV0aG9kOiJERUxFVEUiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHMpe2lmKCFzLm9rKXJldHVybiBzLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt9fSkudGhlbihmdW5jdGlvbihvKXt0aHJvdyBuZXcgRXJyb3IobyYmby5lcnJvcnx8Ilx1NTIyMFx1OTY2NFx1NTkzMVx1OEQyNSIpfSl9KS5jYXRjaChmdW5jdGlvbihzKXtjaSh0LGkpLGsocyYmcy5tZXNzYWdlfHwiXHU1MjIwXHU5NjY0XHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHU1OTMxXHU4RDI1XHUzMDAyIiwiZXJyb3IiKX0pfX19ZnVuY3Rpb24gV20oKXt2YXIgZT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZihlKXt2YXIgdD1BcnJheS5pc0FycmF5KGUucXVldWVkTWVzc2FnZXMpP2UucXVldWVkTWVzc2FnZXMuc2xpY2UoKTpbXTtpZih0Lmxlbmd0aCE9PTApe24ucXVldWVCYXJIb3ZlckluZGV4PW51bGwsWCh7aWQ6ZS5pZCxxdWV1ZWRNZXNzYWdlczpbXX0pO3ZhciByPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihpKXtyZXR1cm4gaS5pZD09PWUuaWR9KXx8ZTtuLmN1cnJlbnRNZXNzYWdlcz1WZShyLGF0KHIsci5vdXRwdXQsITEpKSx0dCghMCksa3QoKSxmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrZS5pZCsiL3F1ZXVlZCIse21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtpZighaS5vaylyZXR1cm4gaS5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57fX0pLnRoZW4oZnVuY3Rpb24oYSl7dGhyb3cgbmV3IEVycm9yKGEmJmEuZXJyb3J8fCJcdTZFMDVcdTdBN0FcdTU5MzFcdThEMjUiKX0pO2soIlx1NURGMlx1NkUwNVx1N0E3QSAiK3QubGVuZ3RoKyIgXHU2NzYxXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHUzMDAyIiwiaW5mbyIpfSkuY2F0Y2goZnVuY3Rpb24oaSl7Y2koZSx0KSxrKGkmJmkubWVzc2FnZXx8Ilx1NkUwNVx1N0E3QVx1NjM5Mlx1OTYxRlx1NkQ4OFx1NjA2Rlx1NTkzMVx1OEQyNVx1MzAwMiIsImVycm9yIil9KX19fWZ1bmN0aW9uIHFmKGUpe3ZhciB0PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihjKXtyZXR1cm4gYy5pZD09PW4uc2VsZWN0ZWRJZH0pO2lmKHQpe3ZhciByPUFycmF5LmlzQXJyYXkodC5xdWV1ZWRNZXNzYWdlcyk/dC5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO2lmKCEoZTwwfHxlPj1yLmxlbmd0aCkpe3ZhciBpPXJbZV0sYT1yLnNsaWNlKDAsZSkuY29uY2F0KHIuc2xpY2UoZSsxKSksdT1yLnNsaWNlKCkscz0hISh0LnN0cnVjdHVyZWRTdGF0ZSYmdC5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQmJnQuc3RhdHVzPT09InJ1bm5pbmciKTt0eXBlb2Ygbi5xdWV1ZUJhckhvdmVySW5kZXg9PSJudW1iZXIiJiYobi5xdWV1ZUJhckhvdmVySW5kZXg9PT1lP24ucXVldWVCYXJIb3ZlckluZGV4PW51bGw6bi5xdWV1ZUJhckhvdmVySW5kZXg+ZSYmKG4ucXVldWVCYXJIb3ZlckluZGV4LT0xKSksWCh7aWQ6dC5pZCxxdWV1ZWRNZXNzYWdlczphfSk7dmFyIG89dHlwZW9mIGNyeXB0bzwidSImJmNyeXB0by5yYW5kb21VVUlEP2NyeXB0by5yYW5kb21VVUlEKCk6RGF0ZS5ub3coKS50b1N0cmluZygzNikrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsMTApLGw9e2lucHV0OmksaWRlbXBvdGVuY3lLZXk6b307cyYmKGwuaW50ZXJydXB0PSEwLGwucHJlc2VydmVRdWV1ZT0hMCksayhzPyJcdTVERjJcdThCRjdcdTZDNDJcdTRFMkRcdTY1QURcdTVGNTNcdTUyNERcdTU2REVcdTU5MERcdUZGMENcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdThGRDlcdTY3NjFcdTMwMDIiOiJcdTVERjJcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdThGRDlcdTY3NjFcdTZEODhcdTYwNkZcdTMwMDIiLCJpbmZvIiksZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK3QuaWQrIi9tZXNzYWdlcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkobCl9KS50aGVuKGZ1bmN0aW9uKGMpe3JldHVybiBjLm9rP2MuanNvbigpOmMuanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue319KS50aGVuKGZ1bmN0aW9uKGYpe3Rocm93IG5ldyBFcnJvcihmJiZmLmVycm9yfHwiXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU1OTMxXHU4RDI1Iil9KX0pLnRoZW4oZnVuY3Rpb24oYyl7aWYoYyYmYy5pZCYmKFgoYyksYy5pZD09PW4uc2VsZWN0ZWRJZCkpe3ZhciBmPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZD09PWMuaWR9KXx8YztuLmN1cnJlbnRNZXNzYWdlcz1WZShmLGF0KGYsYy5vdXRwdXQsITEpKSx0dCghMCksa3QoKX19KS5jYXRjaChmdW5jdGlvbihjKXtjaSh0LHUpLGsoYyYmYy5tZXNzYWdlfHwiXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU1OTMxXHU4RDI1XHUzMDAyIiwiZXJyb3IiKX0pfX19ZnVuY3Rpb24gT2YoZSx0KXt2YXIgcj1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZCl7cmV0dXJuIGQuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZihyKXt2YXIgaT1BcnJheS5pc0FycmF5KHIucXVldWVkTWVzc2FnZXMpP3IucXVldWVkTWVzc2FnZXMuc2xpY2UoKTpbXTtpZighKGkubGVuZ3RoPD0xKSYmdCl7dmFyIGE9dC5wYXJlbnRFbGVtZW50O2lmKGEpe3ZhciB1PU51bWJlcih0LmdldEF0dHJpYnV0ZSgiZGF0YS1pbmRleCIpKSxzPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGEuY2hpbGRyZW4pLG89cy5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9KSxsPTM7by5sZW5ndGg+PTImJihsPU1hdGgubWF4KDAsb1sxXS50b3Atb1swXS50b3Atb1swXS5oZWlnaHQpKSxlLnByZXZlbnREZWZhdWx0KCk7dHJ5e3Quc2V0UG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpfWNhdGNoe31pZihuYXZpZ2F0b3ImJm5hdmlnYXRvci52aWJyYXRlKXRyeXtuYXZpZ2F0b3IudmlicmF0ZSg4KX1jYXRjaHt9bi5xdWV1ZUJhckRyYWc9e3BvaW50ZXJJZDplLnBvaW50ZXJJZCxoYW5kbGVFbDp0LGl0ZW1FbDp0LGxpc3RFbDphLHNpYmxpbmdzOnMscmVjdHM6byxvcmlnSW5kZXg6dSx0YXJnZXRJbmRleDp1LHN0YXJ0WTplLmNsaWVudFksZ2FwOmwscXVldWVTbmFwc2hvdDppfSx0LmNsYXNzTGlzdC5hZGQoImRyYWdnaW5nIiksTnMoKSxzLmZvckVhY2goZnVuY3Rpb24oZCl7ZCE9PXQmJmQuY2xhc3NMaXN0LmFkZCgicXVldWUtYmFyLWl0ZW0tc2xpZGluZyIpfSk7dmFyIGM9ZnVuY3Rpb24oZCl7SGYoZCl9LGY9ZnVuY3Rpb24oZCl7X2YoZCl9O24ucXVldWVCYXJEcmFnLm1vdmVIYW5kbGVyPWMsbi5xdWV1ZUJhckRyYWcudXBIYW5kbGVyPWYsdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsYyksdC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLGYpLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsZil9fX19ZnVuY3Rpb24gUGYoZSx0LHIsaSl7Zm9yKHZhciBhPXIubGVuZ3RoLHU9W10scz0wO3M8YTtzKyspdS5wdXNoKHMpO3Uuc3BsaWNlKGUsMSksdS5zcGxpY2UodCwwLGUpO2Zvcih2YXIgbz1yWzBdLnRvcCxsPXJbMF0udG9wLGM9MTtjPGE7YysrKXJbY10udG9wPGwmJihsPXJbY10udG9wKTtmb3IodmFyIGY9e30sZD1sLHY9MDt2PGE7disrKXt2YXIgZz11W3ZdO2ZbZ109ZCxkKz1yW2ddLmhlaWdodCtpfXJldHVybiBmfWZ1bmN0aW9uIEhmKGUpe3ZhciB0PW4ucXVldWVCYXJEcmFnO2lmKCEoIXR8fGUucG9pbnRlcklkIT09dC5wb2ludGVySWQpKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIHI9ZS5jbGllbnRZLXQuc3RhcnRZO3QuaXRlbUVsLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlWSgiK3IrInB4KSI7Zm9yKHZhciBpPXQucmVjdHNbdC5vcmlnSW5kZXhdLnRvcCt0LnJlY3RzW3Qub3JpZ0luZGV4XS5oZWlnaHQvMityLGE9dC5vcmlnSW5kZXgsdT0wO3U8dC5yZWN0cy5sZW5ndGg7dSsrKWlmKHUhPT10Lm9yaWdJbmRleCl7dmFyIHM9dC5yZWN0c1t1XS50b3ArdC5yZWN0c1t1XS5oZWlnaHQvMjt1PHQub3JpZ0luZGV4JiZpPHM/YT1NYXRoLm1pbihhLHUpOnU+dC5vcmlnSW5kZXgmJmk+cyYmKGE9TWF0aC5tYXgoYSx1KSl9aWYoYSE9PXQudGFyZ2V0SW5kZXgpe3QudGFyZ2V0SW5kZXg9YTt2YXIgbz1QZih0Lm9yaWdJbmRleCxhLHQucmVjdHMsdC5nYXApO3Quc2libGluZ3MuZm9yRWFjaChmdW5jdGlvbihsLGMpe2lmKGMhPT10Lm9yaWdJbmRleCl7dmFyIGY9b1tjXS10LnJlY3RzW2NdLnRvcDtsLnN0eWxlLnRyYW5zZm9ybT1mPyJ0cmFuc2xhdGVZKCIrZisicHgpIjoiIn19KX19fWZ1bmN0aW9uIF9mKGUpe3ZhciB0PW4ucXVldWVCYXJEcmFnO2lmKCEoIXR8fGUmJmUucG9pbnRlcklkIT09dC5wb2ludGVySWQpKXt0cnl7dC5oYW5kbGVFbC5yZWxlYXNlUG9pbnRlckNhcHR1cmUodC5wb2ludGVySWQpfWNhdGNoe310LmhhbmRsZUVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIix0Lm1vdmVIYW5kbGVyKSx0LmhhbmRsZUVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsdC51cEhhbmRsZXIpLHQuaGFuZGxlRWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsdC51cEhhbmRsZXIpO3ZhciByPXQub3JpZ0luZGV4LGk9dC50YXJnZXRJbmRleCxhPXQucXVldWVTbmFwc2hvdDtpZih0LnNpYmxpbmdzLmZvckVhY2goZnVuY3Rpb24oYyl7Yy5zdHlsZS50cmFuc2Zvcm09IiIsYy5jbGFzc0xpc3QucmVtb3ZlKCJxdWV1ZS1iYXItaXRlbS1zbGlkaW5nIil9KSx0Lml0ZW1FbC5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpLG4ucXVldWVCYXJEcmFnPW51bGwscj09PWkpe2t0KCk7cmV0dXJufWZvcih2YXIgdT1bXSxzPTA7czxhLmxlbmd0aDtzKyspdS5wdXNoKHMpO3Uuc3BsaWNlKHIsMSksdS5zcGxpY2UoaSwwLHIpO3ZhciBvPXUubWFwKGZ1bmN0aW9uKGMpe3JldHVybiBhW2NdfSk7bi5xdWV1ZUJhckhvdmVySW5kZXg9aTt2YXIgbD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYyl7cmV0dXJuIGMuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZighbCl7a3QoKTtyZXR1cm59WCh7aWQ6bC5pZCxxdWV1ZWRNZXNzYWdlczpvfSksa3QoKSxmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrbC5pZCsiL3F1ZXVlZCIse21ldGhvZDoiUEFUQ0giLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtvcmRlcjp1fSl9KS50aGVuKGZ1bmN0aW9uKGMpe2lmKCFjLm9rKXJldHVybiBjLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt9fSkudGhlbihmdW5jdGlvbihmKXt0aHJvdyBuZXcgRXJyb3IoZiYmZi5lcnJvcnx8Ilx1NjM5Mlx1NUU4Rlx1NTkzMVx1OEQyNSIpfSl9KS5jYXRjaChmdW5jdGlvbihjKXtjaShsLGEpLGsoYyYmYy5tZXNzYWdlfHwiXHU4QzAzXHU2NTc0XHU2MzkyXHU5NjFGXHU5ODdBXHU1RThGXHU1OTMxXHU4RDI1XHUzMDAyIiwiZXJyb3IiKX0pfX1mdW5jdGlvbiBOZigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWV1ZS1iYXItaG9zdCIpOyFlfHxlLl9fcXVldWVEZWxlZ2F0ZWR8fChlLl9fcXVldWVEZWxlZ2F0ZWQ9ITAsZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24odCl7dmFyIHI9dC50YXJnZXQsaT1yJiZyLmNsb3Nlc3Q/ci5jbG9zZXN0KCJbZGF0YS1hY3Rpb25dIik6bnVsbDtpZighKCFpfHwhZS5jb250YWlucyhpKSkpe3ZhciBhPWkuZ2V0QXR0cmlidXRlKCJkYXRhLWFjdGlvbiIpO2lmKGEhPT0iZHJhZyIpe2lmKHQucHJldmVudERlZmF1bHQoKSx0LnN0b3BQcm9wYWdhdGlvbigpLGE9PT0icHJvbW90ZS1pdGVtIil7dmFyIHU9aS5jbG9zZXN0KCIucXVldWUtYmFyLWl0ZW0iKTt1JiZxZihOdW1iZXIodS5nZXRBdHRyaWJ1dGUoImRhdGEtaW5kZXgiKSkpO3JldHVybn1pZihhPT09ImRlbGV0ZSIpe3ZhciBzPWkuY2xvc2VzdCgiLnF1ZXVlLWJhci1pdGVtIik7cyYmTWYoTnVtYmVyKHMuZ2V0QXR0cmlidXRlKCJkYXRhLWluZGV4IikpKTtyZXR1cm59fX19KSxlLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3ZlciIsZnVuY3Rpb24odCl7aWYoIW4ucXVldWVCYXJEcmFnKXt2YXIgcj10LnRhcmdldCxpPXImJnIuY2xvc2VzdD9yLmNsb3Nlc3QoIi5xdWV1ZS1iYXItaXRlbSIpOm51bGw7IWl8fCFlLmNvbnRhaW5zKGkpfHxnYShOdW1iZXIoaS5nZXRBdHRyaWJ1dGUoImRhdGEtaW5kZXgiKSkpfX0pLGUuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsZnVuY3Rpb24oKXtuLnF1ZXVlQmFyRHJhZ3x8Z2EobnVsbCl9KSxlLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIixmdW5jdGlvbih0KXtpZighKHQuYnV0dG9uIT09dm9pZCAwJiZ0LmJ1dHRvbiE9PTApKXt2YXIgcj10LnRhcmdldDtpZighKHImJnIuY2xvc2VzdCYmci5jbG9zZXN0KCdbZGF0YS1hY3Rpb249ImRlbGV0ZSJdLCBbZGF0YS1hY3Rpb249InByb21vdGUtaXRlbSJdJykpKXt2YXIgaT1yJiZyLmNsb3Nlc3Q/ci5jbG9zZXN0KCIucXVldWUtYmFyLWl0ZW0iKTpudWxsO2kmJihnYShOdW1iZXIoaS5nZXRBdHRyaWJ1dGUoImRhdGEtaW5kZXgiKSkpLE9mKHQsaSkpfX19KSl9ZnVuY3Rpb24ganMoZSl7aWYoIWV8fCFBcnJheS5pc0FycmF5KGUuY29udGVudCkpcmV0dXJuIDA7Zm9yKHZhciB0PTAscj0wO3I8ZS5jb250ZW50Lmxlbmd0aDtyKyspe3ZhciBpPWUuY29udGVudFtyXTtpZihpKXtpZih0eXBlb2YgaS50ZXh0PT0ic3RyaW5nIiYmKHQrPWkudGV4dC5sZW5ndGgpLHR5cGVvZiBpLnRoaW5raW5nPT0ic3RyaW5nIiYmKHQrPWkudGhpbmtpbmcubGVuZ3RoKSx0eXBlb2YgaS5jb250ZW50PT0ic3RyaW5nIil0Kz1pLmNvbnRlbnQubGVuZ3RoO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShpLmNvbnRlbnQpKWZvcih2YXIgYT0wO2E8aS5jb250ZW50Lmxlbmd0aDthKyspe3ZhciB1PWkuY29udGVudFthXTt1JiZ0eXBlb2YgdS50ZXh0PT0ic3RyaW5nIiYmKHQrPXUudGV4dC5sZW5ndGgpfWlmKGkuaW5wdXQpdHJ5e3QrPUpTT04uc3RyaW5naWZ5KGkuaW5wdXQpLmxlbmd0aH1jYXRjaHt9fX1yZXR1cm4gdH1mdW5jdGlvbiBqZihlLHQpe2lmKCFlKXJldHVybiB0O2lmKCF0KXJldHVybiBlO3ZhciByPWpzKGUpLGk9anModCk7cmV0dXJuIGk+PXI/dDpPYmplY3QuYXNzaWduKHt9LGUse3VzYWdlOnQudXNhZ2V8fGUudXNhZ2V9KX1mdW5jdGlvbiBWZShlLHQpe3ZhciByPUFycmF5LmlzQXJyYXkodCk/dXIodCk6W10saT1BcnJheS5pc0FycmF5KHIpP3Iuc2xpY2UoKTpbXTtpZighZXx8ZS5zZXNzaW9uS2luZCE9PSJzdHJ1Y3R1cmVkIilyZXR1cm4gaTtpZihlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpe3ZhciBhPWlbaS5sZW5ndGgtMV07KCFhfHxhLnJvbGUhPT0iYXNzaXN0YW50IikmJmkucHVzaCh7cm9sZToiYXNzaXN0YW50Iixjb250ZW50Olt7dHlwZToidGV4dCIsdGV4dDoiIixfX3Byb2Nlc3Npbmc6ITB9XX0pfXJldHVybiBpfWZ1bmN0aW9uIFJzKCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkPT09bi5zZWxlY3RlZElkfSk7enIoZSksc24oKX1mdW5jdGlvbiBXcyhlKXt2YXIgdD1fdCgpLHI9dCYmdC5wcm92aWRlcj09PSJjb2RleCI7cmV0dXJuIGUmJihlLmVycm9yQ29kZT09PSJTRVNTSU9OX05PVF9SVU5OSU5HInx8ZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT19QVFkiKT9yPyJDb2RleCBcdTRGMUFcdThCRERcdTVERjJcdTdFRDNcdTY3NUZcdUZGMUJcdTgyRTVcdTVCNThcdTU3MjggQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHVGRjBDXHU1QzA2XHU1NzI4XHU0RjYwXHU0RTBCXHU2QjIxXHU1M0QxXHU5MDAxXHU2RDg4XHU2MDZGXHU2NUY2XHU4MUVBXHU1MkE4XHU2MDYyXHU1OTBEXHUzMDAyIjoiXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGXHVGRjFCXHU4MkU1XHU1QjU4XHU1NzI4IENsYXVkZSBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdUZGMENcdTVDMDZcdTU3MjhcdTRGNjBcdTRFMEJcdTZCMjFcdTUzRDFcdTkwMDFcdTZEODhcdTYwNkZcdTY1RjZcdTgxRUFcdTUyQThcdTYwNjJcdTU5MERcdTMwMDIiOmUmJmUuZXJyb3JDb2RlPT09IlNFU1NJT05fTk9UX0ZPVU5EIj8iXHU0RjFBXHU4QkREXHU0RTBEXHU1QjU4XHU1NzI4XHVGRjBDXHU4QkY3XHU5MUNEXHU2NUIwXHU5MDA5XHU2MkU5XHU2MjE2XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHUzMDAyIjplJiZlLm1lc3NhZ2V8fChyPyJDb2RleCBcdTRGMUFcdThCRERcdTY2ODJcdTRFMERcdTUzRUZcdTc1MjhcdUZGMUJcdTgyRTVcdTVCNThcdTU3MjggQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHVGRjBDXHU1QzA2XHU4MUVBXHU1MkE4XHU1QzFEXHU4QkQ1XHU2MDYyXHU1OTBEXHUzMDAyIjoiXHU0RjFBXHU4QkREXHU2NjgyXHU0RTBEXHU1M0VGXHU3NTI4XHVGRjFCXHU4MkU1XHU1QjU4XHU1NzI4IENsYXVkZSBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdUZGMENcdTVDMDZcdTgxRUFcdTUyQThcdTVDMURcdThCRDVcdTYwNjJcdTU5MERcdTMwMDIiKX1mdW5jdGlvbiB6cyhlKXt2YXIgdD1uZXcgRXJyb3IoZSYmZS5lcnJvcnx8Ilx1NEYxQVx1OEJERFx1NURGMlx1N0VEM1x1Njc1Rlx1MzAwMiIpO3JldHVybiBlJiZ0eXBlb2YgZT09Im9iamVjdCImJih0LmVycm9yQ29kZT1lLmVycm9yQ29kZXx8bnVsbCx0LnNlc3Npb25JZD1lLnNlc3Npb25JZHx8bi5zZWxlY3RlZElkfHxudWxsLHQuc2Vzc2lvblN0YXR1cz1PYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZSwic2Vzc2lvblN0YXR1cyIpP2Uuc2Vzc2lvblN0YXR1czpudWxsKSx0fWZ1bmN0aW9uIFZzKGUpe3JldHVybiBlJiYoZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT1RfUlVOTklORyJ8fGUuZXJyb3JDb2RlPT09IlNFU1NJT05fTk9fUFRZInx8ZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT1RfRk9VTkQiKX1mdW5jdGlvbiBSZihlLHQpe2UmJlgoe2lkOmUsc3RhdHVzOnR8fCJleGl0ZWQifSl9ZnVuY3Rpb24gem0oZSl7aWYoIWV8fCFBcnJheS5pc0FycmF5KGUubWVzc2FnZXMpfHxlLm1lc3NhZ2VzLmxlbmd0aDwyKXJldHVybiExO3ZhciB0PWUubWVzc2FnZXMuc29tZShmdW5jdGlvbihpKXtyZXR1cm4gaSYmaS5yb2xlPT09InVzZXIiJiZBcnJheS5pc0FycmF5KGkuY29udGVudCkmJmkuY29udGVudC5zb21lKGZ1bmN0aW9uKGEpe3JldHVybiBhJiZhLnR5cGU9PT0idGV4dCImJnR5cGVvZiBhLnRleHQ9PSJzdHJpbmciJiZhLnRleHQudHJpbSgpLmxlbmd0aD4wfSl9KSxyPWUubWVzc2FnZXMuc29tZShmdW5jdGlvbihpKXtyZXR1cm4gaSYmaS5yb2xlPT09ImFzc2lzdGFudCImJkFycmF5LmlzQXJyYXkoaS5jb250ZW50KSYmaS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEudHlwZT09PSJ0ZXh0IiYmdHlwZW9mIGEudGV4dD09InN0cmluZyImJmEudGV4dC50cmltKCkubGVuZ3RoPjB9KX0pO3JldHVybiB0JiZyfWZ1bmN0aW9uIGhhKGUpe3JldHVybiEhKGUmJiF1ZShlKSYmKGUucHJvdmlkZXI9PT0iY2xhdWRlInx8ZS5wcm92aWRlcj09PSJjb2RleCIpJiZlLnN0YXR1cyE9PSJydW5uaW5nIiYmZS5jbGF1ZGVTZXNzaW9uSWQpfWZ1bmN0aW9uIFdmKGUsdCl7aWYoIWUpcmV0dXJuIGsoIlx1NEYxQVx1OEJERFx1NEUwRFx1NUI1OFx1NTcyOFx1RkYwQ1x1OEJGN1x1OTFDRFx1NjVCMFx1OTAwOVx1NjJFOVx1NjIxNlx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksUHJvbWlzZS5yZXNvbHZlKG51bGwpO2lmKGUuc3RhdHVzPT09InJ1bm5pbmciKXJldHVybiBQcm9taXNlLnJlc29sdmUoZSk7aWYoIWhhKGUpKXt2YXIgcj1lJiZlLnByb3ZpZGVyPT09ImNvZGV4Ij8iQ29kZXgiOiJDbGF1ZGUiO3JldHVybiBrKCJcdThCRTVcdTRGMUFcdThCRERcdTZDQTFcdTY3MDlcdTUzRUZcdTYwNjJcdTU5MERcdTc2ODQgIityKyIgXHU1Mzg2XHU1M0YyXHU0RTBBXHU0RTBCXHU2NTg3XHVGRjBDXHU4QkY3XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxQcm9taXNlLnJlc29sdmUobnVsbCl9cmV0dXJuIHRvKGUuaWQsdCkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaT8oWChpKSxwZSgpLFRuKGkuaWQpLHBuKGkuaWQpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gTnQoITApLGl9KSk6bnVsbH0pfWZ1bmN0aW9uIHpmKGUsdCl7cmV0dXJuW3QsIlxyIl19ZnVuY3Rpb24gVmYoZSx0LHIsaSl7dmFyIGE9QXJyYXkuaXNBcnJheShlKT9lLmZpbHRlcihmdW5jdGlvbihzKXtyZXR1cm4hIXN9KTpbXTtpZihhLmxlbmd0aD09PTApcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO3ZhciB1PXR5cGVvZiByPT0ibnVtYmVyIj9yOjA7cmV0dXJuIGEucmVkdWNlKGZ1bmN0aW9uKHMsbyxsKXtyZXR1cm4gcy50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGw+MCYmdT4wP25ldyBQcm9taXNlKGZ1bmN0aW9uKGMpe3NldFRpbWVvdXQoYyx1KX0pLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gZ3QobyxsPT09YS5sZW5ndGgtMT90OnZvaWQgMCxpKX0pOmd0KG8sbD09PWEubGVuZ3RoLTE/dDp2b2lkIDAsaSl9KX0sUHJvbWlzZS5yZXNvbHZlKCkpfXZhciBVZj01ZTMsS2Y9MTAwO2Z1bmN0aW9uIHlhKGUpe2UmJihuLnBlbmRpbmdNZXNzYWdlcy5sZW5ndGg+PUtmJiZuLnBlbmRpbmdNZXNzYWdlcy5zaGlmdCgpLG4ucGVuZGluZ01lc3NhZ2VzLnB1c2goe2lucHV0OmUsYXQ6RGF0ZS5ub3coKX0pKX1mdW5jdGlvbiBZZihlKXt2YXIgdD1BcnJheS5pc0FycmF5KGUpP2UuZmlsdGVyKGZ1bmN0aW9uKHIpe3JldHVybiEhcn0pOltdO3QuZm9yRWFjaChmdW5jdGlvbihyKXt5YShyKX0pfWZ1bmN0aW9uIEpmKGUpe2lmKCEodHlwZW9mIGUhPSJzdHJpbmcifHwhZSkpe3ZhciB0PWUucmVwbGFjZSgvXHgxYlxbMjAwfi9nLCIiKS5yZXBsYWNlKC9ceDFiXFsyMDF+L2csIiIpOy8oPzpefFxuKVxzKlwvY2xlYXJccyooPzpccnxcbnwkKS8udGVzdCh0KSYmdHlwZW9mIG48InUiJiZuJiYobi50ZXJtaW5hbE91dHB1dE1hcmtlcj0obi50ZXJtaW5hbE91dHB1dCYmbi50ZXJtaW5hbE91dHB1dC5sZW5ndGgpfDApfX1mdW5jdGlvbiBndChlLHQscil7cmV0dXJuIWV8fCFuLnNlbGVjdGVkSWQ/UHJvbWlzZS5yZXNvbHZlKCk6KEpmKGUpLG4ubWVzc2FnZVF1ZXVlLnB1c2goZSksbi5pbnB1dFF1ZXVlPW4uaW5wdXRRdWV1ZS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIEdmKGUsdCxyKS5maW5hbGx5KGZ1bmN0aW9uKCl7dmFyIGk9bi5tZXNzYWdlUXVldWUuaW5kZXhPZihlKTtpPi0xJiZuLm1lc3NhZ2VRdWV1ZS5zcGxpY2UoaSwxKX0pfSksbi5pbnB1dFF1ZXVlKX1mdW5jdGlvbiBHZihlLHQscil7aWYoIW4uc2VsZWN0ZWRJZClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7dmFyIGk9bi5zZWxlY3RlZElkLGE9cnx8bi5jdXJyZW50VmlldztyZXR1cm4gQmYoKT9uLndzQ29ubmVjdGVkP2ZldGNoKCIvYXBpL3Nlc3Npb25zLyIraSsiL2lucHV0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6ZSx2aWV3OmEsc2hvcnRjdXRLZXk6dHx8dm9pZCAwfSl9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lm9rP3UuanNvbigpOnUuanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue2Vycm9yOiJcdThCRjdcdTZDNDJcdTU5MzFcdThEMjUifX0pLnRoZW4oZnVuY3Rpb24ocyl7dmFyIG89enMocyk7dGhyb3cgby5odHRwU3RhdHVzPXUuc3RhdHVzLGNvbnNvbGUuZXJyb3IoIlt3YW5kXSBwb3N0SW5wdXQ6IHJlcXVlc3QgZmFpbGVkIix7c3RhdHVzOnUuc3RhdHVzLGVycm9yQ29kZTpvLmVycm9yQ29kZSxtZXNzYWdlOm8ubWVzc2FnZSxzZXNzaW9uSWQ6aX0pLFZzKG8pJiZSZihpLG8uc2Vzc2lvblN0YXR1c3x8ImV4aXRlZCIpLG99KX0pLnRoZW4oZnVuY3Rpb24odSl7cmV0dXJuIHUmJnUuaWQmJihYKHUpLHUuaWQ9PT1uLnNlbGVjdGVkSWQmJih1Lm1lc3NhZ2VzJiZ1Lm1lc3NhZ2VzLmxlbmd0aD4wJiYobi5jdXJyZW50TWVzc2FnZXM9dS5tZXNzYWdlcyksdHQoITApKSksdX0pOih5YShlKSxjb25zb2xlLmxvZygiW3dhbmRdIHBvc3RJbnB1dDogV2ViU29ja2V0IGRpc2Nvbm5lY3RlZCwgcXVldWVkIG1lc3NhZ2UiLHtzZXNzaW9uSWQ6bi5zZWxlY3RlZElkLGlucHV0TGVuZ3RoOmUubGVuZ3RofSksUHJvbWlzZS5yZXNvbHZlKCkpOm4ud3NDb25uZWN0ZWQ/KGNvbnNvbGUud2FybigiW3dhbmRdIHBvc3RJbnB1dDogc2Vzc2lvbiBub3QgcnVubmluZywgc2tpcHBpbmcgc2VuZCIse3Nlc3Npb25JZDpuLnNlbGVjdGVkSWR9KSxrKCJcdTRGMUFcdThCRERcdTY3MkFcdThGRDBcdTg4NENcdUZGMENcdTZCNjNcdTU3MjhcdTdCNDlcdTVGODVcdTgxRUFcdTUyQThcdTYwNjJcdTU5MERcdTU0MEVcdTkxQ0RcdThCRDVcdTMwMDIiLCJpbmZvIiksUHJvbWlzZS5yZXNvbHZlKCkpOih5YShlKSxjb25zb2xlLmxvZygiW3dhbmRdIHBvc3RJbnB1dDogc2Vzc2lvbiBub3QgcnVubmluZywgcXVldWVkIGZvciByZWNvbm5lY3QiLHtzZXNzaW9uSWQ6bi5zZWxlY3RlZElkLGlucHV0TGVuZ3RoOmUubGVuZ3RofSksUHJvbWlzZS5yZXNvbHZlKCkpfWZ1bmN0aW9uIFZtKGUpe3JldHVybiBndChlKX1mdW5jdGlvbiBfdCgpe3JldHVybiBuLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZSl7cmV0dXJuIGUuaWQ9PT1uLnNlbGVjdGVkSWR9KXx8bnVsbH1mdW5jdGlvbiBVbShlKXtyZXR1cm4gZSYmZS5wcm92aWRlcj09PSJjb2RleCI/YApgOiJcciJ9ZnVuY3Rpb24gYmEoKXtyZXR1cm4hIW4uc2VsZWN0ZWRJZCYmbi5jdXJyZW50Vmlldz09PSJ0ZXJtaW5hbCJ9ZnVuY3Rpb24gUWYoZSl7cmV0dXJuISghbi50ZXJtaW5hbHx8IWV8fGUhPT1uLnNlbGVjdGVkSWR8fG4udGVybWluYWxTZXNzaW9uSWQmJm4udGVybWluYWxTZXNzaW9uSWQhPT1lKX1mdW5jdGlvbiBVcyhlKXtpZighbi50ZXJtaW5hbEludGVyYWN0aXZlfHwhYmEoKXx8ZS5kZWZhdWx0UHJldmVudGVkfHxlLmlzQ29tcG9zaW5nKXJldHVybiExO3ZhciB0PWUudGFyZ2V0O3JldHVybiB0PyEodC5jbG9zZXN0JiZ0LmNsb3Nlc3QoIiNtaW5pLWtleWJvYXJkIil8fHJwKHQpKTohMH12YXIgJGY9e0VzYzoiZXNjYXBlIixBcnJvd1VwOiJ1cCIsQXJyb3dEb3duOiJkb3duIixBcnJvd0xlZnQ6ImxlZnQiLEFycm93UmlnaHQ6InJpZ2h0IixFbnRlcjoiZW50ZXIiLFRhYjoidGFiIixCYWNrc3BhY2U6ImJhY2tzcGFjZSIsSG9tZToiaG9tZSIsRW5kOiJlbmQiLFBhZ2VVcDoicGFnZXVwIixQYWdlRG93bjoicGFnZWRvd24iLERlbGV0ZToiZGVsZXRlIixJbnNlcnQ6Imluc2VydCIsIiAiOiJzcGFjZSJ9LFhmPXtzcGFjZToiICIsdGFiOiIJIixzaGlmdF90YWI6Ilx4MUJbWiIsYmFja3NwYWNlOiJceDdGIixob21lOiJceDFCW0giLGVuZDoiXHgxQltGIixwYWdldXA6Ilx4MUJbNX4iLHBhZ2Vkb3duOiJceDFCWzZ+IixkZWxldGU6Ilx4MUJbM34iLGluc2VydDoiXHgxQlsyfiJ9LEtzPXsiICI6MCwiWyI6MjcsIlxcIjoyOCwiXSI6MjksIl4iOjMwLF86MzF9LFpmPTQwMCxlcD0xMCx0cD04LGRpPTU0LG9uPTgsRWE9W3trZXk6ImVudGVyIixsYWJlbDoiRW50ZXIifSx7a2V5OiJjdHJsX2MiLGxhYmVsOiJDdHJsK0MifSx7a2V5OiJlc2NhcGUiLGxhYmVsOiJFc2MifSx7a2V5OiJzaGlmdF90YWIiLGxhYmVsOiJTaGlmdCtUYWIifV0sbnA9bmV3IFNldChbIm1pbmkta2V5Ym9hcmQtZmFiIiwibWluaS1rZXlib2FyZC10b2dnbGUiLCJ0ZXJtaW5hbC1pbnRlcmFjdGl2ZS10b2dnbGUiXSk7ZnVuY3Rpb24gcnAoZSl7cmV0dXJuISEoZSYmbnAuaGFzKGUuaWQpKX12YXIgaXA9bmV3IFNldChbImN0cmwiLCJhbHQiLCJzaGlmdCJdKTtmdW5jdGlvbiBZcyhlKXtyZXR1cm4gaXAuaGFzKGUpfWZ1bmN0aW9uIGFwKGUpe3JldHVybiBYZltlXXx8IiJ9ZnVuY3Rpb24gdXAoZSl7dmFyIHQ9ZS50b0xvd2VyQ2FzZSgpO3JldHVybiB0Pj0iYSImJnQ8PSJ6Ij9TdHJpbmcuZnJvbUNoYXJDb2RlKHQuY2hhckNvZGVBdCgwKS05Nik6T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKEtzLHQpP1N0cmluZy5mcm9tQ2hhckNvZGUoS3NbdF0pOiIifWZ1bmN0aW9uIHNwKGUpe3JldHVybiAkZltlLmtleV18fGUua2V5fWZ1bmN0aW9uIG9wKGUsdCl7cmV0dXJue2N0cmw6ZS5jdHJsS2V5LGFsdDplLmFsdEtleSxzaGlmdDplLnNoaWZ0S2V5JiYodC5sZW5ndGg9PT0xfHx0PT09InRhYiIpLG1ldGE6ZS5tZXRhS2V5fX1mdW5jdGlvbiBKcyhlLHQpe2UmJmd0KGUsdCkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiBscCgpe29vKCl9ZnVuY3Rpb24gRmEoZSl7bi5rZXlib2FyZFBvcHVwT3Blbj0hMSxlIT09ITEmJnBpKCksZnAoKX1mdW5jdGlvbiBjcCgpe2JhKCkmJkluKCFuLnRlcm1pbmFsSW50ZXJhY3RpdmUpfWZ1bmN0aW9uIEluKGUpe3ZhciB0PSEhZSYmYmEoKTtuLnRlcm1pbmFsSW50ZXJhY3RpdmUhPT10JiYobi50ZXJtaW5hbEludGVyYWN0aXZlPXQsdD8ocHAoKSxGYSghMSksbHAoKSxrKCJcdTdFQzhcdTdBRUZcdTRFQTRcdTRFOTJcdTZBMjFcdTVGMEZcdTVERjJcdTVGMDBcdTU0MkYiLCJpbmZvIikpOih2cCgpLHBpKCkpLENyKCkpfWZ1bmN0aW9uIHdhKCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHIpe3JldHVybiByLmlkPT09bi5zZWxlY3RlZElkfSksdD0hZXx8ZS5zdGF0dXMhPT0icnVubmluZyJ8fG4uY3VycmVudFZpZXchPT0idGVybWluYWwiO2lmKHQmJm4udGVybWluYWxJbnRlcmFjdGl2ZSl7SW4oITEpO3JldHVybn0oIWV8fG4uY3VycmVudFZpZXchPT0idGVybWluYWwiKSYmbi5rZXlib2FyZFBvcHVwT3BlbiYmKG4ua2V5Ym9hcmRQb3B1cE9wZW49ITEpLENyKCl9ZnVuY3Rpb24gQ3IoKXt2YXIgZT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYil7cmV0dXJuIGIuaWQ9PT1uLnNlbGVjdGVkSWR9KSx0PXVlKGUpLHI9ZSYmZS5wcm92aWRlcj09PSJjb2RleCIsaT10PyEhKGUmJmUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCk6ISFlJiZlLnN0YXR1cz09PSJydW5uaW5nIixhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSx1PVsidGVybWluYWwtaW50ZXJhY3RpdmUtdG9nZ2xlLXRvcCJdO3UuZm9yRWFjaChmdW5jdGlvbihiKXt2YXIgRj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChiKTtpZihGKXtGLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbi50ZXJtaW5hbEludGVyYWN0aXZlKSxGLmNsYXNzTGlzdC50b2dnbGUoImlzLW9uIixuLnRlcm1pbmFsSW50ZXJhY3RpdmUpLEYuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIix0fHxuLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsInx8IWUpLEYuc2V0QXR0cmlidXRlKCJhcmlhLWNoZWNrZWQiLG4udGVybWluYWxJbnRlcmFjdGl2ZT8idHJ1ZSI6ImZhbHNlIik7dmFyIHc9Ri5xdWVyeVNlbGVjdG9yKCIucGx1cy1wb3BvdmVyLXRvZ2dsZS1zdGF0ZSIpO3cmJih3LnRleHRDb250ZW50PW4udGVybWluYWxJbnRlcmFjdGl2ZT8iXHU1RjAwIjoiXHU1MTczIil9fSk7dmFyIHM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWhpbnQiKTtzJiYocy5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLHQ/ITA6bi5jdXJyZW50Vmlldz09PSJ0ZXJtaW5hbCIpLCF0JiZlJiYocy50ZXh0Q29udGVudD1yPyJFbnRlciBcdTUzRDFcdTkwMDEgXHhCNyBjaGF0IFx1NEUzQVx1ODlFM1x1Njc5MFx1ODlDNlx1NTZGRVx1RkYwQ3Rlcm1pbmFsIFx1NEUzQVx1NTM5Rlx1NTlDQlx1OEY5M1x1NTFGQSI6IkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpKTt2YXIgbz0hdCYmIWkmJmhhKGUpO2EmJihhLnBsYWNlaG9sZGVyPVRvKGUsbi50ZXJtaW5hbEludGVyYWN0aXZlKSxhLmRpc2FibGVkPSF0JiYhIWUmJiFpJiYhbyxhLnNldEF0dHJpYnV0ZSgiYXJpYS1kaXNhYmxlZCIsYS5kaXNhYmxlZD8idHJ1ZSI6ImZhbHNlIiksYS5yZWFkT25seT0hMSxhLmNsYXNzTGlzdC50b2dnbGUoImlzLXRlcm1pbmFsLXBhc3N0aHJvdWdoIiwhIW4udGVybWluYWxJbnRlcmFjdGl2ZSkpO3ZhciBsPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2wmJm4udGVybWluYWxJbnRlcmFjdGl2ZSYmbC5jbGFzc0xpc3QuY29udGFpbnMoInZvaWNlLW1vZGUiKSYmKGwuY2xhc3NMaXN0LnJlbW92ZSgidm9pY2UtbW9kZSIpLEllLnJlY29yZGluZz0hMSxwYSgpKTt2YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2VuZC1pbnB1dC1idXR0b24iKSxmPXQmJmk7YyYmKGMuZGlzYWJsZWQ9IXQmJiEhZSYmIWkmJiFvLGMuc2V0QXR0cmlidXRlKCJ0aXRsZSIsdD9mPyJcdTYzOTJcdTk2MUZcdTUzRDFcdTkwMDFcdUZGMDhcdTVGNTNcdTUyNERcdTU2REVcdTU5MERcdTdFRDNcdTY3NUZcdTU0MEVcdTU5MDRcdTc0MDZcdUZGMDkiOiJcdTUzRDFcdTkwMDEiOnI/aT8iXHU1M0QxXHU5MDAxXHU3RUQ5IENvZGV4IjoiQ29kZXggXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGIjohZXx8aXx8bz8iXHU1M0QxXHU5MDAxIjoiXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGIiksYy5jbGFzc0xpc3QudG9nZ2xlKCJxdWV1ZS1tb2RlIixmKSk7dmFyIGQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7aWYoZCl7dmFyIHY9WmEoZSk7ZC5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCF2LmFjdGl2ZSl9dmFyIGc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7aWYoZyl7dmFyIGg9WmEoZSk7Zy5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCFoLmFjdGl2ZSl9dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO20mJm0uY2xhc3NMaXN0LnRvZ2dsZSgiaW50ZXJhY3RpdmUiLCF0JiZuLnRlcm1pbmFsSW50ZXJhY3RpdmUpLGZzKCl9ZnVuY3Rpb24gZmkoKXt2YXIgZT13aW5kb3cuZ2V0U2VsZWN0aW9uJiZ3aW5kb3cuZ2V0U2VsZWN0aW9uKCk7aWYoIWV8fGUuaXNDb2xsYXBzZWQpcmV0dXJuITE7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKCF0KXJldHVybiExO3ZhciByPWUuYW5jaG9yTm9kZTtyZXR1cm4gciYmci5ub2RlVHlwZT09PTMmJihyPXIucGFyZW50Tm9kZSksISEociYmdC5jb250YWlucyhyKSl9ZnVuY3Rpb24gQ2EoZSl7aWYoVXMoZSkmJiFlLm1ldGFLZXkpe3ZhciB0PXNwKGUpO2lmKHQpe3ZhciByPW9wKGUsdCk7aWYoIVlzKHQpJiYhKHIuY3RybCYmdC5sZW5ndGg9PT0xJiZ0LnRvTG93ZXJDYXNlKCk9PT0iYyImJmZpKCkpKXt2YXIgaT1Rcyh0LHIpO2kmJihlLnByZXZlbnREZWZhdWx0KCksSnMoaSx0KSl9fX19ZnVuY3Rpb24gZHAoKXtuLnRlcm1pbmFsJiZOZCg1MDApfWZ1bmN0aW9uIGZwKCl7dnIoKX1mdW5jdGlvbiBLbShlKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSwhKG4uY3VycmVudFZpZXchPT0idGVybWluYWwifHwhbi5zZWxlY3RlZElkKSYmKG4ua2V5Ym9hcmRQb3B1cE9wZW49IW4ua2V5Ym9hcmRQb3B1cE9wZW4sQ3IoKSl9ZnVuY3Rpb24gR3MoKXtuLmtleWJvYXJkUG9wdXBPcGVuPSExLENyKCl9ZnVuY3Rpb24gcHAoKXtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixDYSwhMCl9ZnVuY3Rpb24gdnAoKXtkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixDYSwhMCl9ZnVuY3Rpb24gUXMoZSx0KXt2YXIgcj10fHx7Y3RybDohMSxhbHQ6ITEsc2hpZnQ6ITF9O2lmKFlzKGUpKXJldHVybiIiO2lmKGU9PT0idGFiIiYmci5zaGlmdClyZXR1cm4iXHgxQltaIjt2YXIgaT1hcChlKTtpZihpKXJldHVybiBpO2lmKGUuaW5kZXhPZigiY3RybF8iKT09PTApcmV0dXJuIFN0cmluZy5mcm9tQ2hhckNvZGUoZS5jaGFyQ29kZUF0KGUubGVuZ3RoLTEpLTk2KTt2YXIgYT1CcihlKTtpZihhKXJldHVybiBhO2lmKCFlKXJldHVybiIiO3ZhciB1PWUubGVuZ3RoPT09MT9lOiIiO3JldHVybiB1PyhyLnNoaWZ0JiYodT11LnRvVXBwZXJDYXNlKCkpLHIuY3RybD91cCh1KTpyLmFsdD8iXHgxQiIrdTp1KToiIn1mdW5jdGlvbiBwaSgpe24ubW9kaWZpZXJzLmN0cmw9ITEsbi5tb2RpZmllcnMuYWx0PSExLG4ubW9kaWZpZXJzLnNoaWZ0PSExLG1wKCl9ZnVuY3Rpb24gbXAoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWluaS1rZXlib2FyZCIpO2UmJlsiY3RybCIsImFsdCIsInNoaWZ0Il0uZm9yRWFjaChmdW5jdGlvbih0KXt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWtleT0iJyt0KyciXScpO3ImJnIuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIiwhIW4ubW9kaWZpZXJzW3RdKX0pfWZ1bmN0aW9uIEJyKGUpe3N3aXRjaChlKXtjYXNlInllcyI6cmV0dXJuInlcciI7Y2FzZSJubyI6cmV0dXJuIm5cciI7Y2FzZSJ1cCI6cmV0dXJuIlx4MUJbQSI7Y2FzZSJkb3duIjpyZXR1cm4iXHgxQltCIjtjYXNlImxlZnQiOnJldHVybiJceDFCW0QiO2Nhc2UicmlnaHQiOnJldHVybiJceDFCW0MiO2Nhc2UiZW50ZXIiOnJldHVybiJcciI7Y2FzZSJjdHJsX2MiOnJldHVybiIDIjtjYXNlImN0cmxfZCI6cmV0dXJuIgQiO2Nhc2UiY3RybF9sIjpyZXR1cm4iXGYiO2Nhc2UiY3RybF91IjpyZXR1cm4iFSI7Y2FzZSJjdHJsX2siOnJldHVybiJcdiI7Y2FzZSJjdHJsX3ciOnJldHVybiIXIjtjYXNlImN0cmxfeiI6cmV0dXJuIhoiO2Nhc2UiZXNjYXBlIjpyZXR1cm4iXHgxQiI7ZGVmYXVsdDpyZXR1cm4iIn19ZnVuY3Rpb24gZ3AoKXtpZihuLnBlbmRpbmdNZXNzYWdlcy5sZW5ndGghPT0wKXt2YXIgZT1fdCgpO2lmKHVlKGUpKXtuLnBlbmRpbmdNZXNzYWdlcz1bXTtyZXR1cm59dmFyIHQ9RGF0ZS5ub3coKSxyPVtdLGk9MDtuLnBlbmRpbmdNZXNzYWdlcy5mb3JFYWNoKGZ1bmN0aW9uKHUpe2lmKHR5cGVvZiB1PT0ic3RyaW5nIil7ci5wdXNoKHUpO3JldHVybn1pZighKCF1fHx0eXBlb2YgdS5pbnB1dCE9InN0cmluZyIpKXtpZih0LSh1LmF0fHwwKT5VZil7aSsrO3JldHVybn1yLnB1c2godS5pbnB1dCl9fSksbi5wZW5kaW5nTWVzc2FnZXM9W10saT4wJiZjb25zb2xlLmxvZygiW3dhbmRdIGZsdXNoUGVuZGluZ01lc3NhZ2VzOiBkcm9wcGVkICIraSsiIHN0YWxlIGlucHV0KHMpIik7dmFyIGE9UHJvbWlzZS5yZXNvbHZlKCk7ci5mb3JFYWNoKGZ1bmN0aW9uKHUpe2E9YS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGhwKHUpLmNhdGNoKGZ1bmN0aW9uKCl7fSl9KX0pfX1mdW5jdGlvbiBocChlKXtpZighZXx8IW4uc2VsZWN0ZWRJZClyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7dmFyIHQ9bi5zZWxlY3RlZElkO3JldHVybiBmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK3QrIi9pbnB1dCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2lucHV0OmUsdmlldzpuLmN1cnJlbnRWaWV3fSl9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLm9rP3IuanNvbigpOnIuanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue2Vycm9yOiJcdThCRjdcdTZDNDJcdTU5MzFcdThEMjUifX0pLnRoZW4oZnVuY3Rpb24oaSl7dmFyIGE9enMoaSk7aWYoYS5odHRwU3RhdHVzPXIuc3RhdHVzLFZzKGEpKXJldHVybiBjb25zb2xlLmxvZygiW3dhbmRdIHNlbmRJbnB1dERpcmVjdDogc2Vzc2lvbiB1bmF2YWlsYWJsZSwgZHJvcHBpbmciLHtzZXNzaW9uSWQ6dCxlcnJvckNvZGU6YS5lcnJvckNvZGV9KSxudWxsO3Rocm93IGF9KX0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHImJnIuaWQmJihYKHIpLHIuaWQ9PT1uLnNlbGVjdGVkSWQmJihyLm1lc3NhZ2VzJiZyLm1lc3NhZ2VzLmxlbmd0aD4wJiYobi5jdXJyZW50TWVzc2FnZXM9ci5tZXNzYWdlcyksdHQoITApKSkscn0pfWZ1bmN0aW9uIEJhKCl7aWYobi5zZWxlY3RlZElkKXt2YXIgZT1uLnNlbGVjdGVkSWQ7RnMoTWUoInN0b3AuY29uZmlybS5tZXNzYWdlIikse3RpdGxlOk1lKCJzdG9wLmNvbmZpcm0udGl0bGUiKSxkYW5nZXI6ITAsb2tMYWJlbDpNZSgic3RvcC5jb25maXJtLm9rIiksY2FuY2VsTGFiZWw6TWUoInN0b3AuY29uZmlybS5jYW5jZWwiKX0pLnRoZW4oZnVuY3Rpb24odCl7dCYmbi5zZWxlY3RlZElkPT09ZSYmZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlKyIvc3RvcCIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oanQpfSl9fWZ1bmN0aW9uICRzKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJy5zZXNzaW9uLWl0ZW1bZGF0YS1zZXNzaW9uLWlkPSInK2UrJyJdJyk7dCYmdC5jbGFzc0xpc3QuYWRkKCJkZWxldGluZyIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2Use21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHImJnIuZXJyb3IpdGhyb3cgbmV3IEVycm9yKHIuZXJyb3IpO3JldHVybiBuLnNlbGVjdGVkSWQ9PT1lJiYobi5zZWxlY3RlZElkPW51bGwseWUoKSksanQoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dCYmdC5jbGFzc0xpc3QucmVtb3ZlKCJkZWxldGluZyIpO3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY3Rpb24tZXJyb3IiKTt6ZShyLCJcdTY1RTBcdTZDRDVcdTUyMjBcdTk2NjRcdTRGMUFcdThCRERcdTMwMDIiKX0pfSwyNTApfWZ1bmN0aW9uIFhzKGUsdCl7dCYmdC5jbGFzc0xpc3QuYWRkKCJkZWxldGluZyIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtmZXRjaCgiL2FwaS9jbGF1ZGUtaGlzdG9yeS8iK2VuY29kZVVSSUNvbXBvbmVudChlKSx7bWV0aG9kOiJERUxFVEUiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24ocil7aWYociYmci5lcnJvcil0aHJvdyBuZXcgRXJyb3Ioci5lcnJvcik7bi5jbGF1ZGVIaXN0b3J5PW4uY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24oaSl7cmV0dXJuIGkuY2xhdWRlU2Vzc2lvbklkIT09ZX0pLGRlbGV0ZSBuLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkc1tlXSxwZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoImRlbGV0aW5nIik7dmFyIHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjdGlvbi1lcnJvciIpO3plKHIsIlx1NjVFMFx1NkNENVx1NTIyMFx1OTY2NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1MzAwMiIpfSl9LDI1MCl9ZnVuY3Rpb24gWW0oZSx0KXtYcyhlLHQpfWZ1bmN0aW9uIHlwKGUsdCxyKXtlJiZmZXRjaCgiL2FwaS9jbGF1ZGUtaGlzdG9yeT9jd2Q9IitlbmNvZGVVUklDb21wb25lbnQoZSkse21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKGkmJmkuZXJyb3IpdGhyb3cgbmV3IEVycm9yKGkuZXJyb3IpO24uY2xhdWRlSGlzdG9yeT1uLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLmN3ZCE9PWV9KSxwZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtacyhyLCExKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWN0aW9uLWVycm9yIik7emUoaSwiXHU2NUUwXHU2Q0Q1XHU2RTA1XHU3NDA2XHU4QkU1XHU3NkVFXHU1RjU1XHU3Njg0XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHUzMDAyIil9KX1mdW5jdGlvbiBacyhlLHQpe2UuZm9yRWFjaChmdW5jdGlvbihyKXtyLmNsYXNzTGlzdC50b2dnbGUoImRlbGV0aW5nIix0KX0pfWZ1bmN0aW9uIGJwKGUpe3JldHVybiBBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuY2xhdWRlLWhpc3RvcnktaXRlbVtkYXRhLWN3ZD0iJyt3aW5kb3cuQ1NTLmVzY2FwZShTdHJpbmcoZSkpKyciXScpKX12YXIgZW89bnVsbCxEcj1udWxsO2Z1bmN0aW9uIGtyKCl7aWYoRHIpe0RyLmNsYXNzTGlzdC5yZW1vdmUoInN3aXBlZCIpO3ZhciBlPURyLnF1ZXJ5U2VsZWN0b3IoIi5zZXNzaW9uLWl0ZW0tY29udGVudCIpO2UmJihlLnN0eWxlLnRyYW5zZm9ybT0iIiksRHI9bnVsbH19ZnVuY3Rpb24gRXAoZSl7ZW89bnVsbCxEcj1udWxsfWZ1bmN0aW9uIEZwKGUsdCxyKXtlPT09ImNsYXVkZSImJihuLnByZWZlcnJlZENvbW1hbmQ9ZSxuLmNoYXRNb2RlPVJ0KGUsbi5jaGF0TW9kZSkpO3ZhciBpPW4uY2hhdE1vZGVsfHxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGVsfHwiIjtyZXR1cm4gZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGZ0KHtjb21tYW5kOmUsY3dkOnR8fCIiLG1vZGU6bi5jaGF0TW9kZXx8bi5jb25maWcuZGVmYXVsdE1vZGV8fCJkZWZhdWx0Iixtb2RlbDppfHx2b2lkIDAsdGhpbmtpbmdFZmZvcnQ6bi5jaGF0VGhpbmtpbmd8fHZvaWQgMH0pKX0pLnRoZW4oZnVuY3Rpb24oYSl7cmV0dXJuIGEuanNvbigpfSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5lcnJvcj8ociYmemUocixhLmVycm9yKSxudWxsKToobi5zZWxlY3RlZElkPWEuaWQseWUoKSxuLmRyYWZ0c1thLmlkXT0iIixhKX0pfXZhciBEYT0hMTtmdW5jdGlvbiB0byhlLHQpe3JldHVybiFlfHxEYT9Qcm9taXNlLnJlc29sdmUobnVsbCk6KERhPSEwLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvcmVzdW1lIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7bW9kZTpuLmNoYXRNb2RlfHxuLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQifSkpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmVycm9yPyh0P3plKHQsci5lcnJvcik6ayhyLmVycm9yLCJlcnJvciIpLG51bGwpOihuLnNlbGVjdGVkSWQ9ci5pZCx5ZSgpLG4uZHJhZnRzW3IuaWRdPSIiLHIpfSkuY2F0Y2goZnVuY3Rpb24ocil7dmFyIGk9ciYmci5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2MDYyXHU1OTBEXHU0RjFBXHU4QkREXHUzMDAyIjtyZXR1cm4gdD96ZSh0LGkpOmsoaSwiZXJyb3IiKSxudWxsfSkuZmluYWxseShmdW5jdGlvbigpe0RhPSExfSkpfWZ1bmN0aW9uIEptKGUsdCl7cmV0dXJuIGU/ZmV0Y2goIi9hcGkvY2xhdWRlLXNlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvcmVzdW1lIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7bW9kZTpuLmNoYXRNb2RlfHxuLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQifSkpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmVycm9yPyh0P3plKHQsci5lcnJvcik6ayhyLmVycm9yLCJlcnJvciIpLG51bGwpOihuLmNsYXVkZUhpc3Rvcnk9bi5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihpKXtyZXR1cm4gaS5jbGF1ZGVTZXNzaW9uSWQhPT1lfSksbi5zZWxlY3RlZElkPXIuaWQseWUoKSxuLmRyYWZ0c1tyLmlkXT0iIixyKX0pLmNhdGNoKGZ1bmN0aW9uKHIpe3ZhciBpPXImJnIubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjMwOSBDbGF1ZGUgXHU0RjFBXHU4QkREIElEIFx1NjA2Mlx1NTkwRFx1NEYxQVx1OEJERFx1MzAwMiI7cmV0dXJuIHQ/emUodCxpKTprKGksImVycm9yIiksbnVsbH0pOlByb21pc2UucmVzb2x2ZShudWxsKX1mdW5jdGlvbiBsbihlKXtyZXR1cm4hZXx8IWUuaWQ/UHJvbWlzZS5yZXNvbHZlKCk6KG4uc2VsZWN0ZWRJZD1lLmlkLHllKCksbi5jdXJyZW50TWVzc2FnZXM9W10sbXIoKSxCdCgpLHdyKGUuaWQpLFgoZSkscGUoKSxUbihlLmlkKSxwbihlLmlkKS50aGVuKGZ1bmN0aW9uKCl7TnQoITApfSkpfWZ1bmN0aW9uIG5vKGUpe3JldHVybiB0byhlKS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Pyh0LmNsYXVkZVNlc3Npb25JZCYmKHQucHJvdmlkZXI9PT0iY29kZXgiP24uY29kZXhIaXN0b3J5PW4uY29kZXhIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihyKXtyZXR1cm4gci5jbGF1ZGVTZXNzaW9uSWQhPT10LmNsYXVkZVNlc3Npb25JZH0pOm4uY2xhdWRlSGlzdG9yeT1uLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKHIpe3JldHVybiByLmNsYXVkZVNlc3Npb25JZCE9PXQuY2xhdWRlU2Vzc2lvbklkfSkpLGxuKHQpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdH0pKTpudWxsfSl9ZnVuY3Rpb24gR20oZSx0LHIpe3JldHVybiBGcChlLHQscikudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaT9sbihpKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGl9KTpudWxsfSl9ZnVuY3Rpb24gUW0oZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtaW5wdXQiKTtpZih0KXt0LnBsYWNlaG9sZGVyPSJcdTZCNjNcdTU3MjhcdTYwMURcdTgwMDNcdTIwMjYiLHQuZGlzYWJsZWQ9ITA7dmFyIHI9bi5jaGF0TW9kZXx8Im1hbmFnZWQiLGk9ZXQoKSxhPWh0KCksdT1uLmNoYXRNb2RlbHx8bi5jb25maWcmJm4uY29uZmlnLmRlZmF1bHRNb2RlbHx8IiI7ZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGZ0KHtjb21tYW5kOmEsY3dkOmksbW9kZTpyLGluaXRpYWxJbnB1dDplLG1vZGVsOnV8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpuLmNoYXRUaGlua2luZ3x8dm9pZCAwfSkpfSkudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHMpe3JldHVybiBzLmVycm9yPyhrKHMuZXJyb3IsImVycm9yIiksdC5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIix0LmRpc2FibGVkPSExLG51bGwpOmxuKHMpfSkuY2F0Y2goZnVuY3Rpb24ocyl7ayhzJiZzLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLHQucGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1NkQ4OFx1NjA2RiIsdC5kaXNhYmxlZD0hMX0pLmZpbmFsbHkoZnVuY3Rpb24oKXt0LnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLHQuZGlzYWJsZWQ9ITF9KX19ZnVuY3Rpb24gJG0oZSx0LHIpe3ZhciBpPW4uY2hhdE1vZGV8fCJtYW5hZ2VkIixhPWV0KCksdT1odCgpLHM9bi5jaGF0TW9kZWx8fG4uY29uZmlnJiZuLmNvbmZpZy5kZWZhdWx0TW9kZWx8fCIiO2ZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7Y29tbWFuZDp1LGN3ZDphLG1vZGU6aSxpbml0aWFsSW5wdXQ6ZXx8dm9pZCAwLG1vZGVsOnN8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpuLmNoYXRUaGlua2luZ3x8dm9pZCAwfSkpfSkudGhlbihmdW5jdGlvbihvKXtyZXR1cm4gby5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKG8pe3JldHVybiBvLmVycm9yPyhrKG8uZXJyb3IsImVycm9yIiksbnVsbCk6KHQmJih0LnZhbHVlPSIiKSxyJiYoci52YWx1ZT0iIiksbG4obykpfSkuY2F0Y2goZnVuY3Rpb24obyl7ayhvJiZvLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpfSl9ZnVuY3Rpb24gd3AoZSl7ZS5kaXNhYmxlZD0hMCxubyhlLmRhdGFzZXQuc2Vzc2lvbklkKS5maW5hbGx5KGZ1bmN0aW9uKCl7ZS5kaXNhYmxlZD0hMX0pfWZ1bmN0aW9uIENwKGUpe3ZhciB0PWUuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQscj1lLmRhdGFzZXQuY3dkO3QmJihlLmRpc2FibGVkPSEwLEJwKHQscikudGhlbihmdW5jdGlvbihpKXtpJiZpLmlkJiYobi5jb2RleEhpc3Rvcnk9bi5jb2RleEhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXVkZVNlc3Npb25JZCE9PXR9KSxuLnNlbGVjdGVkSWQ9aS5pZCx5ZSgpLG4uZHJhZnRzW2kuaWRdPSIiLGxuKGkpLnRoZW4oZnVuY3Rpb24oKXt6dCgpfSkpfSkuZmluYWxseShmdW5jdGlvbigpe2UuZGlzYWJsZWQ9ITF9KSl9ZnVuY3Rpb24gQnAoZSx0KXtyZXR1cm4gZmV0Y2goIi9hcGkvY29kZXgtc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoZSkrIi9yZXN1bWUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGZ0KHttb2RlOm4uY2hhdE1vZGV8fG4uY29uZmlnJiZuLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLGN3ZDp0fSkpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmVycm9yPyhrKHIuZXJyb3IsImVycm9yIiksbnVsbCk6cn0pLmNhdGNoKGZ1bmN0aW9uKHIpe3JldHVybiBrKHImJnIubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjA2Mlx1NTkwRFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksbnVsbH0pfWZ1bmN0aW9uIERwKGUpe3ZhciB0PWUuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQ7dCYmRG4oIlx1Nzg2RVx1OEJBNFx1OTY5MFx1ODVDRlx1OEZEOVx1Njc2MSBDb2RleCBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTU0MTdcdUZGMUYiLHt0aXRsZToiXHU5NjkwXHU4NUNGIENvZGV4IFx1NTM4Nlx1NTNGMiIsb2tMYWJlbDoiXHU5NjkwXHU4NUNGIn0pLnRoZW4oZnVuY3Rpb24ocil7aWYocil7dmFyIGk9ZS5jbG9zZXN0KCIuY2xhdWRlLWhpc3RvcnktaXRlbSIpO2kmJihpLnN0eWxlLm9wYWNpdHk9IjAuNSIpLGZldGNoKCIvYXBpL2NvZGV4LWhpc3RvcnkvIitlbmNvZGVVUklDb21wb25lbnQodCkse21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGEpe2EmJmEub2s/KG4uY29kZXhIaXN0b3J5PW4uY29kZXhIaXN0b3J5LmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdS5jbGF1ZGVTZXNzaW9uSWQhPT10fSkscGUoKSk6aSYmKGkuc3R5bGUub3BhY2l0eT0iMSIpfSkuY2F0Y2goZnVuY3Rpb24oKXtpJiYoaS5zdHlsZS5vcGFjaXR5PSIxIil9KX19KX1mdW5jdGlvbiBrcChlKXt2YXIgdD1lLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkLHI9ZS5kYXRhc2V0LmN3ZDt0JiYoZS5kaXNhYmxlZD0hMCx2aSh0LHIpLnRoZW4oZnVuY3Rpb24oaSl7aSYmaS5pZCYmKG4uY2xhdWRlSGlzdG9yeT1uLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXVkZVNlc3Npb25JZCE9PXR9KSxuLnNlbGVjdGVkSWQ9aS5pZCx5ZSgpLG4uZHJhZnRzW2kuaWRdPSIiLGxuKGkpLnRoZW4oZnVuY3Rpb24oKXt6dCgpfSkpfSkuZmluYWxseShmdW5jdGlvbigpe2UuZGlzYWJsZWQ9ITF9KSl9ZnVuY3Rpb24gdmkoZSx0KXtyZXR1cm4gZmV0Y2goIi9hcGkvY2xhdWRlLXNlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvcmVzdW1lIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7bW9kZTpuLmNoYXRNb2RlfHxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGV8fCJkZWZhdWx0Iixjd2Q6dH0pKX0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5lcnJvcj8oayhyLmVycm9yLCJlcnJvciIpLG51bGwpOnJ9KS5jYXRjaChmdW5jdGlvbihyKXtyZXR1cm4gayhyJiZyLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTYwNjJcdTU5MERcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLG51bGx9KX1mdW5jdGlvbiBBcigpe3JldHVybiJvbnRvdWNoc3RhcnQiaW4gd2luZG93fHxuYXZpZ2F0b3IubWF4VG91Y2hQb2ludHM+MH1mdW5jdGlvbiBOdChlKXtpZighbi50ZXJtaW5hbEludGVyYWN0aXZlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7IXR8fCFuLnNlbGVjdGVkSWR8fGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT10JiYoZSYmQXIoKXx8a2EodCkpfX1mdW5jdGlvbiBYbSgpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2VzIik7ZSYmKGUuc2Nyb2xsVG9wPTApfWZ1bmN0aW9uIHJvKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LXBhbmVsIik7ZSYmZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgiLS1rZXlib2FyZC1vZmZzZXQiKX1mdW5jdGlvbiBpbygpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpO2UmJmUuc3R5bGUucmVtb3ZlUHJvcGVydHkoIi0ta2V5Ym9hcmQtb2Zmc2V0Iil9ZnVuY3Rpb24gbWkoZSl7aWYoZSl7dmFyIHQ9ZS5zZWxlY3Rpb25TdGFydCxyPWUuc2VsZWN0aW9uRW5kO2dpKGUpLHR5cGVvZiB0PT0ibnVtYmVyIiYmdHlwZW9mIHI9PSJudW1iZXIiJiZlLnNldFNlbGVjdGlvblJhbmdlKHQscil9fWZ1bmN0aW9uIGFvKGUpeyFlfHxlLmRhdGFzZXQudG91Y2hTY3JvbGxCb3VuZD09PSJ0cnVlInx8KGUuZGF0YXNldC50b3VjaFNjcm9sbEJvdW5kPSJ0cnVlIixlLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLGZ1bmN0aW9uKCl7ZS5zY3JvbGxIZWlnaHQ8PWUuY2xpZW50SGVpZ2h0KzF8fChlLnNjcm9sbFRvcDw9MD9lLnNjcm9sbFRvcD0xOmUuc2Nyb2xsVG9wK2UuY2xpZW50SGVpZ2h0Pj1lLnNjcm9sbEhlaWdodCYmKGUuc2Nyb2xsVG9wPU1hdGgubWF4KDEsZS5zY3JvbGxIZWlnaHQtZS5jbGllbnRIZWlnaHQtMSkpKX0se3Bhc3NpdmU6ITB9KSl9ZnVuY3Rpb24gdW8oZSl7ZSYmKEh0KGUpLG1pKGUpKX1mdW5jdGlvbiBBcChlKXt2YXIgdD1lJiZlLnRhcmdldD9lLnRhcmdldDpkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7dCYmKHJvKCksdW8odCkpfWZ1bmN0aW9uIHhwKGUpe3ZhciB0PWUmJmUudGFyZ2V0P2UudGFyZ2V0OmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpbygpLHVzKDIyMDAsdCk7dmFyIHI9WzgwLDIwMCwzODAsNjIwLDkwMF07ci5mb3JFYWNoKGZ1bmN0aW9uKGksYSl7c2V0VGltZW91dChmdW5jdGlvbigpe3puKCExKSxhPT09MSYmQXIoKSYmKGl0KCJrZXlib2FyZC1ibHVyIix7Zm9yY2VSZXBsYXk6ITB9KSxtdCgia2V5Ym9hcmQiKSl9LGkpfSl9ZnVuY3Rpb24gU3AoZSl7ZSYmKGUuc2V0U2VsZWN0aW9uUmFuZ2UoZS52YWx1ZS5sZW5ndGgsZS52YWx1ZS5sZW5ndGgpLG1pKGUpKX1mdW5jdGlvbiBrYShlKXtlJiYoZS5mb2N1cyh7cHJldmVudFNjcm9sbDohMH0pLFNwKGUpKX1mdW5jdGlvbiBJcChlKXthbyhlKSx1byhlKX1mdW5jdGlvbiBUcChlKXtrYShlKX1mdW5jdGlvbiBabShlKXtybygpLG1pKGUpfWZ1bmN0aW9uIExwKCl7aW8oKX1mdW5jdGlvbiBNcChlKXttaShlKX1mdW5jdGlvbiBlZyhlKXtUcChlKX1mdW5jdGlvbiBxcChlKXtJcChlKX1mdW5jdGlvbiB0Zygpe0xwKCl9ZnVuY3Rpb24gbmcoZSl7TXAoZSl9ZnVuY3Rpb24gT3AoZSx0KXtpZighZXx8IXR8fGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT10KXJldHVybiExO3ZhciByPXdpbmRvdy5pbm5lckhlaWdodC1lLmhlaWdodC1lLm9mZnNldFRvcDtpZihyPD01MClyZXR1cm4hMTt2YXIgaT10LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3JldHVybiBpLmJvdHRvbT5lLmhlaWdodC0xMn1mdW5jdGlvbiBnaShlKXtpZihlKXt2YXIgdD1lLnNjcm9sbEhlaWdodD5lLmNsaWVudEhlaWdodCsxO2lmKCF0KXtlLnNjcm9sbFRvcD0wO3JldHVybn1lLnNjcm9sbFRvcD1lLnNjcm9sbEhlaWdodH19ZnVuY3Rpb24gc28oKXtpZihuLnRlcm1pbmFsSW50ZXJhY3RpdmUpe29vKCk7cmV0dXJufWlmKCFBcigpKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7IWV8fCFuLnNlbGVjdGVkSWR8fGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1lfHxrYShlKX19ZnVuY3Rpb24gb28oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7ZSYmKGUuc2V0QXR0cmlidXRlKCJ0YWJpbmRleCIsIjAiKSxlLmZvY3VzKCksbi50ZXJtaW5hbCYmbi50ZXJtaW5hbC5mb2N1cyYmbi50ZXJtaW5hbC5mb2N1cygpKX1mdW5jdGlvbiBQcCgpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpLHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZXMiKTtpZigidmlydHVhbEtleWJvYXJkImluIG5hdmlnYXRvcil7dmFyIHI9bmF2aWdhdG9yLnZpcnR1YWxLZXlib2FyZDtyLmFkZEV2ZW50TGlzdGVuZXIoImdlb21ldHJ5Y2hhbmdlIixmdW5jdGlvbigpe2UmJmUuc3R5bGUucmVtb3ZlUHJvcGVydHkoInBhZGRpbmctYm90dG9tIil9KX12YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aSYmaS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtzbygpfSksdCYmdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oYSl7dmFyIHU9YS50YXJnZXQ7dS50YWdOYW1lIT09IkEiJiZ1LnRhZ05hbWUhPT0iQlVUVE9OIiYmIXUuY2xvc2VzdCgiYnV0dG9uIikmJiF1LmNsb3Nlc3QoIltkYXRhLXRvb2wtdG9nZ2xlXSIpJiZzbygpfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe2lmKEFyKCkpe3ZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZighKCF1fHxkb2N1bWVudC5hY3RpdmVFbGVtZW50IT09dSkpe3ZhciBzPWEudGFyZ2V0OyFzfHx0eXBlb2Ygcy5jbG9zZXN0IT0iZnVuY3Rpb24ifHxzLmNsb3Nlc3QoIi5pbnB1dC1wYW5lbCIpfHxzLmNsb3Nlc3QoIiNtaW5pLWtleWJvYXJkIil8fHMuY2xvc2VzdCgiI21pbmkta2V5Ym9hcmQtZmFiIil8fHMuY2xvc2VzdCgiI21pbmkta2V5Ym9hcmQtdG9nZ2xlIil8fHMuY2xvc2VzdCgiI3Rlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZSIpfHxzLmNsb3Nlc3QoIi53YW5kLWpveXN0aWNrLXJvb3QiKXx8dS5ibHVyKCl9fX0sITApfWZ1bmN0aW9uIEFhKCl7dHJ5e3dpbmRvdy5zY3JvbGxUbygwLDApfWNhdGNoe31kb2N1bWVudC5zY3JvbGxpbmdFbGVtZW50JiYoZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudC5zY3JvbGxUb3A9MCksZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiYoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbFRvcD0wKSxkb2N1bWVudC5ib2R5JiYoZG9jdW1lbnQuYm9keS5zY3JvbGxUb3A9MCl9ZnVuY3Rpb24gdHQoZSl7bi5yZW5kZXJQZW5kaW5nJiYhZXx8KG4ucmVuZGVyUGVuZGluZz0hMCxlPyhoaSghMCksbi5yZW5kZXJQZW5kaW5nPSExKTpyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtoaSghMSksbi5yZW5kZXJQZW5kaW5nPSExfSkpfW4uY2hhdFJlbmRlclRpbWVyPW51bGw7ZnVuY3Rpb24gbG8oZSl7aWYoIShuLmNoYXRSZW5kZXJUaW1lciYmIWUpKXtpZihuLmNoYXRSZW5kZXJUaW1lciYmY2xlYXJUaW1lb3V0KG4uY2hhdFJlbmRlclRpbWVyKSxlKXtuLmNoYXRSZW5kZXJUaW1lcj1udWxsLHR0KCk7cmV0dXJufXZhciB0PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PW4uc2VsZWN0ZWRJZH0pLHI9dCYmdC5zdGF0dXM9PT0icnVubmluZyImJnQuc2Vzc2lvbktpbmQhPT0ic3RydWN0dXJlZCIsaT1yP2hzOnlzO24uY2hhdFJlbmRlclRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtuLmNoYXRSZW5kZXJUaW1lcj1udWxsO3ZhciBhPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbih1KXtyZXR1cm4gdS5pZD09PW4uc2VsZWN0ZWRJZH0pO2EmJihuLmN1cnJlbnRNZXNzYWdlcz1WZShhLGF0KGEsYS5vdXRwdXQsITApKSksdHQoKX0saSl9fWZ1bmN0aW9uIEhwKGUsdCl7aWYoIWV8fCF0fHx0Lmxlbmd0aD09PTApcmV0dXJuW107ZnVuY3Rpb24gcihGKXtyZXR1cm4gRi5yZXBsYWNlKC9ceDFCKD86W0AtWlxcLV9dfFxbWzAtP10qWyAtL10qW0Atfl0pL2csIiIpfWZvcih2YXIgaT1yKGUpLGE9W10sdT1bXSxzPTA7czx0Lmxlbmd0aDtzKyspaWYodFtzXS5yb2xlPT09InVzZXIiKXt2YXIgbz0iIixsPXRbc10uY29udGVudDtpZih0eXBlb2YgbD09InN0cmluZyIpbz1sO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShsKSl7Zm9yKHZhciBjPTA7YzxsLmxlbmd0aDtjKyspaWYobFtjXS50eXBlPT09InRleHQiKXtvPWxbY10udGV4dDticmVha319byYmdS5wdXNoKHt0ZXh0Om8saW5kZXg6c30pfWZvcih2YXIgZj0wLHM9MDtzPHUubGVuZ3RoO3MrKyl7dmFyIGQ9dVtzXSx2PWkuaW5kZXhPZigiXHUyNzZGICIrZC50ZXh0LGYpO2lmKHY9PT0tMSYmKHY9aS5pbmRleE9mKGAKXHUyNzZGIGArZC50ZXh0LGYpLHYhPT0tMSYmKHYrPTEpKSx2PmYpe2Zvcih2YXIgZz1pLnN1YnN0cmluZyhmLHYpLGg9Zy5zcGxpdChgCmApLG09W10sYz0wO2M8aC5sZW5ndGg7YysrKXt2YXIgYj1oW2NdLnRyaW0oKTshYnx8Yi5zdGFydHNXaXRoKCJcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDAiKXx8Yj09PSJcdTI3NkYifHxiPT09Ij8ifHxiPT09IiJ8fGIuaW5jbHVkZXMoIkNsYXVkZSBDb2RlIHYiKXx8Yi5pbmNsdWRlcygiT3B1cyIpJiZiLmluY2x1ZGVzKCJ3aXRoIil8fGIuaW5jbHVkZXMoIlNvbm5ldCIpJiZiLmluY2x1ZGVzKCJ3aXRoIil8fGIuaW5jbHVkZXMoIkFQSSBVc2FnZSIpfHxiLmluY2x1ZGVzKCJCaWxsaW5nIil8fGIuaW5jbHVkZXMoImZvciBzaG9ydGN1dHMiKXx8Yi5pbmNsdWRlcygiL2VmZm9ydCIpfHxiLm1hdGNoKC9eW+KWuOKWkOKWneKWmOKWl+KWluKWiOKWjOKWjeKWjuKWj+KWlOKWgeKWguKWg+KWhOKWheKWhuKWh+KWiOKWiF0vKXx8Yi5tYXRjaCgvXlvilrjilpDilp3ilpjilpfilpbilojilozilo3ilo7ilo/ilpTiloHiloLiloPiloTiloXilobilofilojilohdezMsfS8pfHxiLmxlbmd0aD4zJiZtLnB1c2goYil9bS5sZW5ndGg+MCYmYS5wdXNoKHtiZWZvcmVNZXNzYWdlOmQuaW5kZXgsY29udGVudDptLmpvaW4oYApgKX0pfWY9ditkLnRleHQubGVuZ3RoKzJ9cmV0dXJuIGF9ZnVuY3Rpb24geGEoZSl7aWYoIWUpcmV0dXJuIG51bGw7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO3JldHVybiB0fHwodD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSx0LmNsYXNzTmFtZT0iY2hhdC1tZXNzYWdlcyIsZS5hcHBlbmRDaGlsZCh0KSx0KX1mdW5jdGlvbiBjbyhlLHQpe3ZhciByPXhhKGUpO3JldHVybiByPyhyLmlubmVySFRNTD10LGlyKCksWmUoKSxyKTpudWxsfWZ1bmN0aW9uIGhpKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LW91dHB1dCIpO2lmKCF0KXJldHVybjt2YXIgcj1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oeil7cmV0dXJuIHouaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZighcil7bi5sYXN0UmVuZGVyZWRFbXB0eSE9PSJub25lIiYmKGNvKHQsJzxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlIj48c3Ryb25nPlx1NjcyQVx1OTAwOVx1NjJFOVx1NEYxQVx1OEJERDwvc3Ryb25nPjxicj5cdTcwQjlcdTUxRkJcdTRFMEFcdTY1QjlcdTMwMENcdTY1QjBcdTVCRjlcdThCRERcdTMwMERcdTVGMDBcdTU5Q0JcdTRGNjBcdTc2ODRcdTdCMkNcdTRFMDBcdTZCMjFcdTVCRjlcdThCRERcdTMwMDI8L2Rpdj4nKSxuLmxhc3RSZW5kZXJlZEVtcHR5PSJub25lIixuLmxhc3RSZW5kZXJlZE1zZ0NvdW50PTApO3JldHVybn12YXIgaT1uLmN1cnJlbnRNZXNzYWdlcyxhPWV2KGkpO2lmKFRhPXR2KGkpLGkubGVuZ3RoPT09MCl7aWYobi5sYXN0UmVuZGVyZWRFbXB0eSE9PSJlbXB0eSIpe3ZhciB1PSIiO3VlKHIpJiYodT0nPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUtdHJpby13cmFwIj48ZGl2IGNsYXNzPSJlbXB0eS1zdGF0ZS10cmlvLWhpbnQiPlx1OUVEOFx1OEJBNFx1NEYxQVx1NjMwOVx1NEVFNVx1NEUwQlx1OEJCRVx1N0Y2RVx1NTNEMVx1OTAwMVx1RkYwQ1x1NTNFRlx1NzBCOVx1NTFGQlx1OEMwM1x1NjU3NFx1RkYxQTwvZGl2PicrV2Eocix7a2luZDoiZHJvcGRvd24ifSkrIjwvZGl2PiIpLGNvKHQsJzxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlIj48c3Ryb25nPlx1NUJGOVx1OEJERFx1NURGMlx1NUYwMFx1NTlDQjwvc3Ryb25nPjxicj5cdTU3MjhcdTRFMEJcdTY1QjlcdThGOTNcdTUxNjVcdTY4NDZcdTUzRDFcdTkwMDFcdTZEODhcdTYwNkZcdUZGMENDbGF1ZGUgXHU0RjFBXHU4MUVBXHU1MkE4XHU1NkRFXHU1OTBEXHUzMDAyPC9kaXY+Jyt1KSxuLmxhc3RSZW5kZXJlZEVtcHR5PSJlbXB0eSIsbi5sYXN0UmVuZGVyZWRNc2dDb3VudD0wfXR1KG51bGwsciksSWEoW10pO3JldHVybn12YXIgcz1pLmxlbmd0aDtzPm4uY2hhdFJlbmRlcmVkQ291bnQmJihuLmNoYXRSZW5kZXJlZENvdW50PXMpO3ZhciBvPU1hdGgubWF4KDAscy1uLmNoYXRSZW5kZXJlZENvdW50KSxsPW8+MD9pLnNsaWNlKG8pOmksYz1vPjAsZj1sLmxlbmd0aCxkPXIub3V0cHV0P3Iub3V0cHV0Lmxlbmd0aDowO2lmKHIubWVzc2FnZXMmJnIubWVzc2FnZXMubGVuZ3RoPjApe2Zvcih2YXIgdj0wLGc9MCxoPTA7aDxyLm1lc3NhZ2VzLmxlbmd0aDtoKyspe3ZhciBtPXIubWVzc2FnZXNbaF0uY29udGVudDtpZihtKWlmKEFycmF5LmlzQXJyYXkobSkpe3YrPW0ubGVuZ3RoO2Zvcih2YXIgYj0wO2I8bS5sZW5ndGg7YisrKXt2YXIgRj1tW2JdO0YudGV4dCYmKGcrPUYudGV4dC5sZW5ndGgpLEYudGhpbmtpbmcmJihnKz1GLnRoaW5raW5nLmxlbmd0aCksRi5jb250ZW50JiYoZys9Ri5jb250ZW50Lmxlbmd0aCksRi5pZCYmKGcrPUYuaWQubGVuZ3RoKSxGLnRvb2xfdXNlX2lkJiYoZys9Ri50b29sX3VzZV9pZC5sZW5ndGgpLEYuZGVzY3JpcHRpb24mJihnKz1GLmRlc2NyaXB0aW9uLmxlbmd0aCksRi5pbnB1dCYmKGcrPUpTT04uc3RyaW5naWZ5KEYuaW5wdXQpLmxlbmd0aCl9fWVsc2Ugdis9MSxnPVN0cmluZyhtKS5sZW5ndGh9ZD1mKjFlNSt2KjFlMytnfXZhciB3PWV8fGYhPT1uLmxhc3RSZW5kZXJlZE1zZ0NvdW50O2lmKCF3JiZmPT09bi5sYXN0UmVuZGVyZWRNc2dDb3VudCYmZD09PW4ubGFzdFJlbmRlcmVkSGFzaCl7dmFyIEU9dC5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO0UmJnR1KEUsciksSWEoaSk7cmV0dXJufXZhciBBPW4ubGFzdFJlbmRlcmVkSGFzaCx4PW4ubGFzdFJlbmRlcmVkTXNnQ291bnQ7aWYobi5sYXN0UmVuZGVyZWRNc2dDb3VudD1mLG4ubGFzdFJlbmRlcmVkSGFzaD1kLEU9eGEodCksIUUpcmV0dXJuO3ZhciBJPU9pKEUpLF89RS5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlOm5vdCguc3lzdGVtLWluZm8pIikubGVuZ3RoLFY9d3x8Xz09PTB8fGYhPT1fO2Z1bmN0aW9uIFkoKXtmb3IodmFyIHo9SHAoci5vdXRwdXQsbCksaWU9IiIsVGU9bC5zbGljZSgpLnJldmVyc2UoKSxjZT1sLmxlbmd0aCxhZT0wO2FlPFRlLmxlbmd0aDthZSsrKXtmb3IodmFyIGtlPVRlW2FlXSxwdD1jZS0xLWFlLHN0PXB0K28sQXQ9bnVsbCxVZT0wO1VlPHoubGVuZ3RoO1VlKyspaWYoeltVZV0uYmVmb3JlTWVzc2FnZT09PXB0KXtBdD16W1VlXTticmVha31BdCYmKGllKz0nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlIHN5c3RlbS1pbmZvIj48ZGl2IGNsYXNzPSJzeXN0ZW0taW5mby1jYXJkIj48ZGl2IGNsYXNzPSJzeXN0ZW0taW5mby1oZWFkZXIiPlx1MjEzOVx1RkUwRiBcdTdDRkJcdTdFREZcdTRGRTFcdTYwNkY8L2Rpdj48ZGl2IGNsYXNzPSJzeXN0ZW0taW5mby1jb250ZW50Ij4nK3AoQXQuY29udGVudCkrIjwvZGl2PjwvZGl2PjwvZGl2PiIpLGllKz1NYShrZSxCW3N0XXx8bnVsbCxzdCxhKX1jJiYoaWUrPSc8ZGl2IGNsYXNzPSJjaGF0LWxvYWQtbW9yZSIgaWQ9ImNoYXQtbG9hZC1tb3JlLXNlbnRpbmVsIj48YnV0dG9uIGNsYXNzPSJjaGF0LWxvYWQtbW9yZS1idG4iIHR5cGU9ImJ1dHRvbiI+XHU1MkEwXHU4RjdEXHU2NkY0XHU2NUU5XHU3Njg0ICcrTWF0aC5taW4obi5jaGF0UGFnZVNpemUsbykrIiBcdTY3NjFcdTZEODhcdTYwNkY8L2J1dHRvbj48L2Rpdj4iKTt2YXIgb3Q9LTEsS2U9MDtpZihfPjAmJiFJKWZvcih2YXIgeHQ9RS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AsWWU9RS5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlOm5vdCguc3lzdGVtLWluZm8pIiksUmU9MDtSZTxZZS5sZW5ndGg7UmUrKyl7dmFyIEFlPVllW1JlXS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtpZihBZS5ib3R0b20+PXh0KXt2YXIgdmU9WWVbUmVdLmdldEF0dHJpYnV0ZSgiZGF0YS1tc2ctaW5kZXgiKTt2ZSE9bnVsbCYmKG90PXBhcnNlSW50KHZlLDEwKSxLZT1BZS50b3AteHQpO2JyZWFrfX1pZihFLmlubmVySFRNTD1pZSwoZnVuY3Rpb24oKXtmb3IodmFyIF9lPUUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZTpub3QoLnN5c3RlbS1pbmZvKSIpLENlPV9lLmxlbmd0aCxKZT0wO0plPENlO0plKyspX2VbSmVdLnNldEF0dHJpYnV0ZSgiZGF0YS1tc2ctaW5kZXgiLFN0cmluZyhvK0NlLTEtSmUpKX0pKCkseD09PTAmJiFuLmNoYXRJbml0aWFsUmVuZGVyRG9uZSlFLnNjcm9sbFRvcD0wLG4uY2hhdFN0aWNrVG9Cb3R0b209ITAscnIoe3JlbW92ZURpdmlkZXI6ITB9KSxuLmNoYXRJbml0aWFsUmVuZGVyRG9uZT0hMDtlbHNlIGlmKHg9PT0wJiZuLmNoYXRTdGlja1RvQm90dG9tKUUuc2Nyb2xsVG9wPTA7ZWxzZSBpZihJKUUuc2Nyb2xsVG9wPTA7ZWxzZSBpZihvdD49MCl7dmFyIEVlPUUucXVlcnlTZWxlY3RvcignLmNoYXQtbWVzc2FnZVtkYXRhLW1zZy1pbmRleD0iJytvdCsnIl0nKTtpZihFZSl7dmFyIEM9RS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AsbHQ9RWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdnQ9bHQudG9wLUMtS2U7TWF0aC5hYnModnQpPi41JiYobi5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITAsRS5zY3JvbGxUb3ArPXZ0LHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe24uY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSExfSkpfX1mbyhFKSxpcigpLE5pKEUpO3ZhciBidD1FLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2U6bm90KC5zeXN0ZW0taW5mbykiKTtpZihidCl7dmFyIFBlPWJ0LnF1ZXJ5U2VsZWN0b3JBbGwoIi50b29sLXVzZS1jYXJkLCAuaW5saW5lLWRpZmZbZGF0YS1leHBhbmQta2V5XSIpO2lmKFBlLmxlbmd0aD4wKXt2YXIgU3Q9UGVbMF0sWnQ9T24oU3QpO3J0KFp0KT09PW51bGwmJlN0LmNsYXNzTGlzdC5yZW1vdmUoImNvbGxhcHNlZCIpO2Zvcih2YXIgY3Q9MTtjdDxQZS5sZW5ndGg7Y3QrKyl7dmFyIEhlPU9uKFBlW2N0XSk7aWYocnQoSGUpPT09bnVsbCl7aWYoUGVbY3RdLmNsYXNzTGlzdC5jb250YWlucygiYXNrLXVzZXIiKSYmIVBlW2N0XS5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyLWFuc3dlcmVkIikpY29udGludWU7UGVbY3RdLmNsYXNzTGlzdC5hZGQoImNvbGxhcHNlZCIpfX19fXJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe1BpKEUpLFplKCksVGwoKX0pfWZ1bmN0aW9uIEwoeixpZSl7dmFyIFRlPXoucXVlcnlTZWxlY3RvckFsbCgiLnRvb2wtdXNlLWNhcmQsIC5pbmxpbmUtZGlmZltkYXRhLWV4cGFuZC1rZXldIik7VGUuZm9yRWFjaChmdW5jdGlvbihjZSl7dmFyIGFlPU9uKGNlKTtpZihydChhZSk9PT1udWxsJiYhKGNlLmNsYXNzTGlzdC5jb250YWlucygiYXNrLXVzZXIiKSYmIWNlLmNsYXNzTGlzdC5jb250YWlucygiYXNrLXVzZXItYW5zd2VyZWQiKSkpe2lmKGllKXtmb3IodmFyIGtlPTA7a2U8aWUubGVuZ3RoO2tlKyspaWYoaWVba2VdLmNvbnRhaW5zKGNlKSlyZXR1cm59Y2UuY2xhc3NMaXN0LmFkZCgiY29sbGFwc2VkIil9fSl9dmFyIEI9e307aWYoKGZ1bmN0aW9uKCl7Zm9yKHZhciB6PXtpbnB1dFRva2VuczowLG91dHB1dFRva2VuczowLGNhY2hlUmVhZElucHV0VG9rZW5zOjAsdG90YWxDb3N0VXNkOjB9LGllPS0xLFRlPTA7VGU8aS5sZW5ndGg7VGUrKyl7dmFyIGNlPWlbVGVdO2lmKGNlLnJvbGU9PT0idXNlciIpaWU+PTAmJih6LmlucHV0VG9rZW5zPjB8fHoub3V0cHV0VG9rZW5zPjB8fHoudG90YWxDb3N0VXNkPjApJiYoQltpZV09e2lucHV0VG9rZW5zOnouaW5wdXRUb2tlbnMsb3V0cHV0VG9rZW5zOnoub3V0cHV0VG9rZW5zLGNhY2hlUmVhZElucHV0VG9rZW5zOnouY2FjaGVSZWFkSW5wdXRUb2tlbnMsdG90YWxDb3N0VXNkOnoudG90YWxDb3N0VXNkfSksej17aW5wdXRUb2tlbnM6MCxvdXRwdXRUb2tlbnM6MCxjYWNoZVJlYWRJbnB1dFRva2VuczowLHRvdGFsQ29zdFVzZDowfSxpZT0tMTtlbHNlIGlmKGNlLnJvbGU9PT0iYXNzaXN0YW50IiYmY2UudXNhZ2Upe3ZhciBhZT1jZS51c2FnZTt6LmlucHV0VG9rZW5zKz1hZS5pbnB1dFRva2Vuc3x8MCx6Lm91dHB1dFRva2Vucys9YWUub3V0cHV0VG9rZW5zfHwwLHouY2FjaGVSZWFkSW5wdXRUb2tlbnMrPWFlLmNhY2hlUmVhZElucHV0VG9rZW5zfHwwLHoudG90YWxDb3N0VXNkKz1hZS50b3RhbENvc3RVc2R8fDAsaWU9VGV9ZWxzZSBjZS5yb2xlPT09ImFzc2lzdGFudCImJihpZT1UZSl9aWU+PTAmJih6LmlucHV0VG9rZW5zPjB8fHoub3V0cHV0VG9rZW5zPjB8fHoudG90YWxDb3N0VXNkPjApJiYoQltpZV09e2lucHV0VG9rZW5zOnouaW5wdXRUb2tlbnMsb3V0cHV0VG9rZW5zOnoub3V0cHV0VG9rZW5zLGNhY2hlUmVhZElucHV0VG9rZW5zOnouY2FjaGVSZWFkSW5wdXRUb2tlbnMsdG90YWxDb3N0VXNkOnoudG90YWxDb3N0VXNkfSl9KSgpLFYpWSgpO2Vsc2UgaWYoZj5fKXt2YXIgVD1sLnNsaWNlKF8pO1QucmV2ZXJzZSgpO2Zvcih2YXIgTT1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCksaj1bXSxaPVtdLG5lPW8rXyxRPTA7UTxULmxlbmd0aDtRKyspe3ZhciBzZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxlZT1vK18rKFQubGVuZ3RoLTEtUSk7c2UuaW5uZXJIVE1MPU1hKFRbUV0sQltlZV18fG51bGwsZWUsYSk7dmFyIFM9c2UuZmlyc3RFbGVtZW50Q2hpbGQ7UyYmKFMuY2xhc3NMaXN0LmFkZCgiYW5pbWF0ZS1pbiIpLFMuc2V0QXR0cmlidXRlKCJkYXRhLW1zZy1pbmRleCIsU3RyaW5nKGVlKSksai5wdXNoKFMpLFoucHVzaChlZSksTS5hcHBlbmRDaGlsZChTKSl9RS5pbnNlcnRCZWZvcmUoTSxFLmZpcnN0Q2hpbGQpLGlyKCksZm8oRSksTmkoRSksTChFLGopLEk/cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7RS5pc0Nvbm5lY3RlZCYmTWF0aC5hYnMoRS5zY3JvbGxUb3ApPjEmJihuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMCxFLnNjcm9sbFRvcD0wLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe24uY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSExfSkpLHJyKHtyZW1vdmVEaXZpZGVyOiEwfSksWmUoKX0pOihuLmNoYXRVbnJlYWRTdGFydEluZGV4PDAmJihuLmNoYXRVbnJlYWRTdGFydEluZGV4PW5lKSxuLmNoYXRVbnJlYWRDb3VudCs9ai5sZW5ndGgsUGkoRSksWmUoKSl9ZWxzZSBpZihmPT09XyYmZCE9PUEpe2Zvcih2YXIgTj1BcnJheS5mcm9tKEUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZTpub3QoLnN5c3RlbS1pbmZvKSIpKSxXPWwuc2xpY2UoKS5yZXZlcnNlKCksRz0hMSxVPU1hdGgubWluKDQsVy5sZW5ndGgsTi5sZW5ndGgpLCQ9MDskPFU7JCsrKXt2YXIgb2U9TlskXSxsZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxyZT1vK1cubGVuZ3RoLTEtJDtsZS5pbm5lckhUTUw9TWEoV1skXSxCW3JlXXx8bnVsbCxyZSxhKTt2YXIgQmU9bGUuZmlyc3RFbGVtZW50Q2hpbGQ7aWYoQmUpe2lmKG9lLmlubmVySFRNTCE9PUJlLmlubmVySFRNTHx8b2UuY2xhc3NOYW1lIT09QmUuY2xhc3NOYW1lKUUucmVwbGFjZUNoaWxkKEJlLG9lKSxfcChCZSksRz0hMDtlbHNlIGlmKCQ+MClicmVha319aWYoIUcmJlcubGVuZ3RoPlUmJlkoKSxHKXtpcigpLE5pKEUpLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe0kmJkUuaXNDb25uZWN0ZWQmJk1hdGguYWJzKEUuc2Nyb2xsVG9wKT4xJiYobi5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITAsRS5zY3JvbGxUb3A9MCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMX0pKSxQaShFKSxaZSgpfSk7dmFyIERlPUUucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZSIpLGJlPUUucXVlcnlTZWxlY3RvckFsbCgiLnRvb2wtdXNlLWNhcmQsIC5pbmxpbmUtZGlmZltkYXRhLWV4cGFuZC1rZXldIiksTz1udWxsO2JlLmZvckVhY2goZnVuY3Rpb24oeil7dmFyIGllPU9uKHopO3J0KGllKT09PW51bGwmJih6LmNsYXNzTGlzdC5jb250YWlucygiYXNrLXVzZXIiKSYmIXouY2xhc3NMaXN0LmNvbnRhaW5zKCJhc2stdXNlci1hbnN3ZXJlZCIpfHwoRGUmJkRlLmNvbnRhaW5zKHopP08/ei5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZWQiKTpPPXo6ei5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZWQiKSkpfSl9fWVsc2UgZjxfJiZZKCk7VmQoRSksdHUoRSxyKSxJYShpKX12YXIgU2E9ITE7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGUpe3ZhciB0PWUudGFyZ2V0O2lmKCEoIXR8fCEodCBpbnN0YW5jZW9mIEVsZW1lbnQpKSl7dmFyIHI9dC5jbG9zZXN0KCIjdG9kby1wcm9ncmVzcy10b2dnbGUiKTtpZihyKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSxTYT0hU2E7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MiKSxhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLWJvZHkiKTtpJiZhJiYoU2E/KGkuY2xhc3NMaXN0LmFkZCgiZXhwYW5kZWQiKSxhLmNsYXNzTGlzdC5hZGQoImV4cGFuZGVkIikpOihpLmNsYXNzTGlzdC5yZW1vdmUoImV4cGFuZGVkIiksYS5jbGFzc0xpc3QucmVtb3ZlKCJleHBhbmRlZCIpKSl9fX0pO2Z1bmN0aW9uIElhKGUpe2Zvcih2YXIgdD0wLHI9ZS5sZW5ndGgtMTtyPj0wO3ItLSlpZihlW3JdJiZlW3JdLnJvbGU9PT0idXNlciIpe3Q9cisxO2JyZWFrfWZvcih2YXIgaT1udWxsLGE9ZS5sZW5ndGgtMTthPj10O2EtLSl7dmFyIHU9ZVthXTtpZighKCF1LmNvbnRlbnR8fCFBcnJheS5pc0FycmF5KHUuY29udGVudCkpKXtmb3IodmFyIHM9dS5jb250ZW50Lmxlbmd0aC0xO3M+PTA7cy0tKXt2YXIgbz11LmNvbnRlbnRbc107aWYoby50eXBlPT09InRvb2xfdXNlIiYmby5uYW1lPT09IlRvZG9Xcml0ZSImJm8uaW5wdXQmJm8uaW5wdXQudG9kb3Mpe2k9by5pbnB1dC50b2RvczticmVha319aWYoaSlicmVha319dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MiKSxjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLWJvZHkiKTtpZihsKXtpZighaXx8aS5sZW5ndGg9PT0wKXtsLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGMmJmMuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7cmV0dXJufWZvcih2YXIgZj0wLGQ9MCx2PSIiLGc9MDtnPGkubGVuZ3RoO2crKylpW2ddLnN0YXR1cz09PSJjb21wbGV0ZWQiJiZmKyssaVtnXS5zdGF0dXM9PT0iaW5fcHJvZ3Jlc3MiJiYoZCsrLHZ8fCh2PWlbZ10uYWN0aXZlRm9ybXx8aVtnXS5jb250ZW50fHwiIikpO3ZhciBoPWY9PT1pLmxlbmd0aCxtPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihNKXtyZXR1cm4gTS5pZD09PW4uc2VsZWN0ZWRJZH0pLGI9ISFtJiZtLnN0YXR1cz09PSJydW5uaW5nIjtpZighYnx8aCl7bC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxjJiZjLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO3JldHVybn1sLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGwuY2xhc3NMaXN0LnJlbW92ZSgiYWxsLWRvbmUiKSxjJiZjLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3ZhciBGPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLWNvdW50ZXIiKTtGJiYoRi50ZXh0Q29udGVudD1mKyIvIitpLmxlbmd0aCk7dmFyIHc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MtdGFzayIpO3cmJih3LnRleHRDb250ZW50PXYpO3ZhciBFPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLXJpbmciKTtpZihFKXt2YXIgQT1pLmxlbmd0aD4wP2YvaS5sZW5ndGg6MDtFLnN0eWxlLnNldFByb3BlcnR5KCItLXByb2dyZXNzIixBLnRvRml4ZWQoMykpfXZhciB4PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLWxpc3QiKTtpZih4KXtmb3IodmFyIEk9IiIsXz0wO188aS5sZW5ndGg7XysrKXt2YXIgVj1pW19dLFk9Vi5zdGF0dXN8fCJwZW5kaW5nIixMPVk9PT0iaW5fcHJvZ3Jlc3MiPyJhY3RpdmUiOlk9PT0iY29tcGxldGVkIj8iZG9uZSI6IiIsQj1ZPT09ImluX3Byb2dyZXNzIj8iYWN0aXZlIjpZPT09ImNvbXBsZXRlZCI/ImRvbmUiOiJwZW5kaW5nIixUPVk9PT0iY29tcGxldGVkIj8iXHUyNzEzIjpZPT09ImluX3Byb2dyZXNzIj8iXHUyMDNBIjoiXHUyNUNCIjtJKz0nPGxpIGNsYXNzPSJ0b2RvLXByb2dyZXNzLWl0ZW0gJytMKyciPjxzcGFuIGNsYXNzPSJ0b2RvLWl0ZW0taWNvbiAnK0IrJyI+JytUKyI8L3NwYW4+PHNwYW4+IitwKFYuY29udGVudHx8IiIpKyI8L3NwYW4+PC9saT4ifXguaW5uZXJIVE1MPUl9bi5zZWxlY3RlZElkJiZkYShuLnNlbGVjdGVkSWQpfX1mdW5jdGlvbiBfcChlKXtlLnF1ZXJ5U2VsZWN0b3JBbGwoIi5jb2RlLWNvcHkiKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIHI9dC5jbG9zZXN0KCIuY29kZS1ibG9jayIpLGk9cj9yLnF1ZXJ5U2VsZWN0b3IoImNvZGUiKTpudWxsO2kmJk9yKGkudGV4dENvbnRlbnR8fCIiLG51bGwsZnVuY3Rpb24oKXt0LnRleHRDb250ZW50PSJDb3BpZWQhIix0LmNsYXNzTGlzdC5hZGQoImNvcGllZCIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LnRleHRDb250ZW50PSJDb3B5Iix0LmNsYXNzTGlzdC5yZW1vdmUoImNvcGllZCIpfSwyZTMpfSl9KX0pfWZ1bmN0aW9uIGZvKGUpe2UucXVlcnlTZWxlY3RvckFsbCgiLmNvZGUtY29weSIpLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIHI9dC5jbG9uZU5vZGUoITApO3QucGFyZW50Tm9kZS5yZXBsYWNlQ2hpbGQocix0KSxyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciBpPXIuY2xvc2VzdCgiLmNvZGUtYmxvY2siKSxhPWk/aS5xdWVyeVNlbGVjdG9yKCJjb2RlIik6bnVsbDthJiZPcihhLnRleHRDb250ZW50fHwiIixudWxsLGZ1bmN0aW9uKCl7ci50ZXh0Q29udGVudD0iQ29waWVkISIsci5jbGFzc0xpc3QuYWRkKCJjb3BpZWQiKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci50ZXh0Q29udGVudD0iQ29weSIsci5jbGFzc0xpc3QucmVtb3ZlKCJjb3BpZWQiKX0sMmUzKX0pfSl9KSxOcChlKX12YXIgcmc9e3RpbWVyOm51bGwsYWN0aXZlQnRuOm51bGx9O2Z1bmN0aW9uIE5wKGUpe3ZhciB0PXdpbmRvdy5tYXRjaE1lZGlhKCIocG9pbnRlcjogY29hcnNlKSIpLm1hdGNoZXM7dCYmZS5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlIikuZm9yRWFjaChmdW5jdGlvbihyKXtpZighci5xdWVyeVNlbGVjdG9yKCIubXNnLWNvcHktYnRuIikpe3ZhciBpPXIucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZS1idWJibGUiKTtpZihpKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJidXR0b24iKTthLmNsYXNzTmFtZT0ibXNnLWNvcHktYnRuIixhLnRleHRDb250ZW50PSJcdTU5MERcdTUyMzYiLGEuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHUpe3Uuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIHM9aS5pbm5lclRleHR8fGkudGV4dENvbnRlbnR8fCIiO09yKHMudHJpbSgpLG51bGwsZnVuY3Rpb24oKXthLnRleHRDb250ZW50PSJcdTVERjJcdTU5MERcdTUyMzYiLGEuY2xhc3NMaXN0LmFkZCgiY29waWVkIiksc2V0VGltZW91dChmdW5jdGlvbigpe2EudGV4dENvbnRlbnQ9Ilx1NTkwRFx1NTIzNiIsYS5jbGFzc0xpc3QucmVtb3ZlKCJjb3BpZWQiKSxhLmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKX0sMTUwMCl9KX0pLHIuYXBwZW5kQ2hpbGQoYSl9fX0pfShmdW5jdGlvbigpe3ZhciB0PXdpbmRvdy5tYXRjaE1lZGlhKCIocG9pbnRlcjogY29hcnNlKSIpLm1hdGNoZXM7aWYodCl7dmFyIHI9bnVsbCxpPTA7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsZnVuY3Rpb24oYSl7dmFyIHU9YS50YXJnZXQuY2xvc2VzdCgiLmNoYXQtbWVzc2FnZSIpO2lmKHUpe3ZhciBzPXUucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZS1idWJibGUiKTtzJiYoaT1hLnRvdWNoZXNbMF0uY2xpZW50WSxyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgbz11LnF1ZXJ5U2VsZWN0b3IoIi5tc2ctY29weS1idG4iKTtvJiYoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLm1zZy1jb3B5LWJ0bi52aXNpYmxlIikuZm9yRWFjaChmdW5jdGlvbihsKXtsLmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKX0pLG8uY2xhc3NMaXN0LmFkZCgidmlzaWJsZSIpKX0sNTAwKSl9fSx7cGFzc2l2ZTohMH0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZnVuY3Rpb24oYSl7ciYmTWF0aC5hYnMoYS50b3VjaGVzWzBdLmNsaWVudFktaSk+MTAmJihjbGVhclRpbWVvdXQocikscj1udWxsKX0se3Bhc3NpdmU6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsZnVuY3Rpb24oKXtyJiYoY2xlYXJUaW1lb3V0KHIpLHI9bnVsbCl9LHtwYXNzaXZlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe2EudGFyZ2V0LmNsb3Nlc3QoIi5tc2ctY29weS1idG4iKXx8ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLm1zZy1jb3B5LWJ0bi52aXNpYmxlIikuZm9yRWFjaChmdW5jdGlvbih1KXt1LmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKX0pfSl9fSkoKTtmdW5jdGlvbiBqcChlKXtpZighZSlyZXR1cm4hMTt2YXIgdD1TdHJpbmcoZSkudHJpbSgpO3JldHVybiB0PyEhKHQuaW5kZXhPZigiXHUyNTAwXHUyNTAwXHUyNTAwXHUyNTAwIik9PT0wfHx0PT09Ilx1Mjc2RiJ8fHQ9PT0iXHUyMDNBInx8L15b4pWt4pWw4pSC4pSM4pSU4pSQ4pSY4pSc4pSk4pSs4pS04pS84pSA4pWQXXsyLH0kLy50ZXN0KHQpfHwvXlviloHiloLiloPiloTiloXilobilofilojilpTilpXilo/ilpBdKyQvLnRlc3QodCl8fHQuaW5kZXhPZigiZXNjIHRvIGludGVycnVwdCIpIT09LTF8fHQuaW5kZXhPZigiQ2xhdWRlIENvZGUgdiIpIT09LTF8fC9eU29ubmV0XGIvLnRlc3QodCl8fHQuaW5kZXhPZigiRmFpbGVkIHRvIGluc3RhbGwgQW50aHJvcGljIikhPT0tMXx8dC5pbmRleE9mKCJDbGF1ZGUgQ29kZSBoYXMgc3dpdGNoZWQiKSE9PS0xfHx0LmluZGV4T2YoIj8gZm9yIHNob3J0Y3V0cyIpIT09LTF8fHQuaW5kZXhPZigiQ2xhdWRlIGlzIHdhaXRpbmciKSE9PS0xfHx0LmluZGV4T2YoIlt3YW5kXSIpIT09LTF8fHQuaW5kZXhPZigiMDsiKT09PTB8fHQuaW5kZXhPZigiOTsiKT09PTB8fHQuaW5kZXhPZigiY3RybCtnIikhPT0tMXx8dC5pbmRleE9mKCIvZWZmb3J0IikhPT0tMXx8L15Vc2luZyAuKiBmb3IgLiogc2Vzc2lvbi8udGVzdCh0KXx8dC5pbmRleE9mKCJQcmVzcyAiKT09PTAmJnQuaW5kZXhPZigiIGZvciIpIT09LTF8fHQuaW5kZXhPZigidHlwZSAiKT09PTAmJnQuaW5kZXhPZigiIHRvICIpIT09LTF8fHQuaW5kZXhPZigiYXV0byBtb2RlIGlzIHVuYXZhaWxhYmxlIikhPT0tMXx8L01DUCBzZXJ2ZXIuKmZhaWxlZC9pLnRlc3QodCl8fHQuaW5kZXhPZigiR2VybWluYXRpbmciKSE9PS0xfHx0LmluZGV4T2YoIkRvb2RsaW5nIikhPT0tMXx8dC5pbmRleE9mKCJCcmV3aW5nIikhPT0tMXx8dC5pbmRleE9mKCJQZXJtaXNzaW9ucyIpIT09LTEmJnQuaW5kZXhPZigibW9kZSIpIT09LTF8fHQuaW5kZXhPZigiXHUyNUNGIik9PT0wJiZ0LmluZGV4T2YoIlx4QjciKSE9PS0xfHx0LmluZGV4T2YoIls+Iik9PT0wfHx0LmluZGV4T2YoIls8Iik9PT0wfHx0LmluZGV4T2YoIkNhcHR1cmVkIENsYXVkZSBzZXNzaW9uIElEIikhPT0tMXx8L14+X1xzKk9wZW5BSSBDb2RleFxiLy50ZXN0KHQpfHwvXk9wZW5BSSBDb2RleFxiL2kudGVzdCh0KXx8L14obW9kZWx8ZGlyZWN0b3J5KTpccysvaS50ZXN0KHQpfHwvXih0aXB8Y29udGV4dCk6XHMrL2kudGVzdCh0KXx8L153b3JrKHRyZWV8c3BhY2UpOlxzKy9pLnRlc3QodCl8fC9eKGFwcHJvdmFscz98c2FuZGJveHxwcm92aWRlcnxzZXNzaW9uIGlkKTpccysvaS50ZXN0KHQpfHwvXih0aGlua2luZ3x3b3JraW5nKShcLlwuXC584oCmKT8kL2kudGVzdCh0KXx8L15b4oCi4pemwrddXHMrV29ya2luZ1xiL2kudGVzdCh0KXx8L15b4oCi4pemwrddXHMrKFJ1bm5pbmd8UGxhbm5pbmd8QXBwbHlpbmd8UmVhZGluZ3xTZWFyY2hpbmcpXGIvaS50ZXN0KHQpfHwvXlvigKLil6bCt11ccysoSW5zcGVjdGluZ3xSZXZpZXdpbmd8U3VtbWFyaXppbmd8RWRpdGluZ3xVcGRhdGluZ3xXcml0aW5nKVxiL2kudGVzdCh0KXx8L15b4oCi4pemwrddXHMrQ29tcGxldGVkXGIvaS50ZXN0KHQpfHwvXihjdHJsfGVudGVyfHRhYnxzaGlmdHxlc2N8YWx0KVwrL2kudGVzdCh0KXx8L1xiKG9wZW58Y2xvc2V8dG9nZ2xlKSAoY2hhdHx0ZXJtaW5hbClcYi9pLnRlc3QodCl8fC9cYihhcHByb3ZlfGRlbnkpXGIuKlxiKHBlcm1pc3Npb258YXBwcm92YWwpXGIvaS50ZXN0KHQpfHwvXih1c2V8cHJlc3MpIC4qICh0b3xmb3IpIC4qL2kudGVzdCh0KXx8L14oPzp0b2tlbnxjb250ZXh0IHdpbmRvd3xyZW1haW5pbmcgY29udGV4dHxjb252ZXJzYXRpb24pOlxzKy9pLnRlc3QodCl8fC9eKD86Y3dkfHBhdGgpOlxzK1wvL2kudGVzdCh0KXx8L15bPD7ilILilIbilY5dLipbPD7ilILilIbilY5dJC8udGVzdCh0KSYmdC5sZW5ndGg8OCk6ITF9ZnVuY3Rpb24gUnAoZSl7cmV0dXJuIFN0cmluZyhlfHwiIikucmVwbGFjZSgvXHgxYlxdW15ceDA3XSooXHgwN3xceDFiXFwpL2csIiIpLnJlcGxhY2UoL1x4MWJcWyhcZCspQy9nLGZ1bmN0aW9uKHQscil7cmV0dXJuIiAiLnJlcGVhdChOdW1iZXIocil8fDEpfSkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbQUJdL2csYApgKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltzdV0vZywiIikucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbSGZKS3JdL2csYApgKS5yZXBsYWNlKC9ceDFiTS9nLGAKYCkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbU1RdL2csYApgKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKlthLXpBLVpdL2csIiIpLnJlcGxhY2UoL1x4MWJbPjw9ZVBYXl9dL2csIiIpLnJlcGxhY2UoL1tcdTAwYTBcdTIwMGItXHUyMDBkXHVmZWZmXS9nLCIgIikucmVwbGFjZSgvW1x4MDAtXHgwOFx4MGJceDBjXHgwZS1ceDFmXS9nLCIiKS5yZXBsYWNlKC9cclxuPy9nLGAKYCkucmVwbGFjZSgvWyBcdF0rXG4vZyxgCmApLnJlcGxhY2UoL1xuezMsfS9nLGAKCmApfWZ1bmN0aW9uIFdwKGUsdCl7dmFyIHI9W107aWYoIWUpcmV0dXJuIHI7dmFyIGk9U3RyaW5nKGV8fCIiKSxhPWAKYCx1PSJcciIscz0iXHgxQiI7aWYoL15jb2RleFxiLy50ZXN0KFN0cmluZyh0fHwiIikudHJpbSgpKSl7bGV0IG50PWZ1bmN0aW9uKFApe3JldHVybiBTdHJpbmcoUHx8IiIpLnJlcGxhY2UoL1x4MWJcXVteXHgwN10qKFx4MDd8XHgxYlxcKS9nLCIiKS5yZXBsYWNlKC9ceDFiXFsoXGQrKUMvZyxmdW5jdGlvbihILEope3JldHVybiIgIi5yZXBlYXQoTnVtYmVyKEopfHwxKX0pLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW0FCXS9nLGEpLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW3N1XS9nLCIiKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltIZkpLcl0vZyxhKS5yZXBsYWNlKC9ceDFiTS9nLGEpLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW1NUXS9nLGEpLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW2EtekEtWl0vZywiIikucmVwbGFjZSgvXHgxYls+PD1lUFheX10vZywiIikucmVwbGFjZSgvW1x1MDBhMFx1MjAwYi1cdTIwMGRcdWZlZmZdL2csIiAiKS5yZXBsYWNlKC9bXHgwMC1ceDA4XHgwYlx4MGNceDBlLVx4MWZdL2csIiIpLnJlcGxhY2UoL1sgXHRdK1xuL2csYSl9LGRlPWZ1bmN0aW9uKFApe3JldHVybiBTdHJpbmcoUHx8IiIpLnJlcGxhY2UoL1xzKy9nLCIgIikucmVwbGFjZSgvW01dKyQvZywiIikudHJpbSgpfSx0ZT1mdW5jdGlvbihQKXtyZXR1cm4gU3RyaW5nKFB8fCIiKS5yZXBsYWNlKC9e4oC6XHMqLywiIikucmVwbGFjZSgvXj5ccyovLCIiKS50cmltKCl9LG1lPWZ1bmN0aW9uKFApe3ZhciBIPVN0cmluZyhQfHwiIikudHJpbSgpO3JldHVybiEhKCFIfHxqcChIKXx8dy50ZXN0KEgpfHwvXlvila3ilbDilILilIzilJTilJDilJjilJzilKTilKzilLTilLzilIDilZBdLy50ZXN0KEgpfHwvXlxbPlswLTk7P10qdSQvaS50ZXN0KEgpfHwvXk0rJC9pLnRlc3QoSCl8fC9eKD86T3BlbkFJIENvZGV4fENvZGV4KVxiL2kudGVzdChIKXx8L14oPzp0b2tlbnM/fGNvbnRleHQgd2luZG93fHJlbWFpbmluZyBjb250ZXh0fGFwcHJvdmFscz98c2FuZGJveHxwcm92aWRlcnxzZXNzaW9uIGlkKTpccyovaS50ZXN0KEgpfHwvXig/OnRoaW5raW5nfHdvcmtpbmcpXHMqKD86XC5cLlwufOKApik/JC9pLnRlc3QoSCl8fC9eW+KAouKXpsK3XVxzKyg/OnRoaW5raW5nfHdvcmtpbmd8cnVubmluZ3xwbGFubmluZ3xhcHBseWluZ3xyZWFkaW5nfHNlYXJjaGluZ3xpbnNwZWN0aW5nfHJldmlld2luZ3xzdW1tYXJpemluZ3xlZGl0aW5nfHVwZGF0aW5nfHdyaXRpbmd8Y29tcGxldGVkKVxiL2kudGVzdChIKXx8L14oPzptb2RlbHxkaXJlY3Rvcnl8dGlwfGNvbnRleHR8Y3dkfHBhdGgpOlxzKy9pLnRlc3QoSCkpfSxPZT1mdW5jdGlvbihQKXt2YXIgSD1TdHJpbmcoUHx8IiIpLnRyaW0oKTtpZighL17igLooPzpcc3wkKS8udGVzdChIKXx8dy50ZXN0KEgpKXJldHVybiBudWxsO3ZhciBKPWRlKHRlKEgpKTtyZXR1cm4hSnx8bWUoSik/bnVsbDpKfSxHZT1mdW5jdGlvbihQKXt2YXIgSD1TdHJpbmcoUHx8IiIpLnRyaW0oKTtpZighL15b4oCi4pemwrfij7pdLy50ZXN0KEgpKXJldHVybiBudWxsO3ZhciBKPUgucmVwbGFjZSgvXlvigKLil6bCt11ccyovLCIiKS5yZXBsYWNlKC9e4o+6XHMrLywiIikucmVwbGFjZSgvXuKUglxzKi8sIiIpLnRyaW0oKTtyZXR1cm4hSnx8L15b4oCi4pemwrfij7pdJC8udGVzdChKKXx8KEo9Si5yZXBsYWNlKC9ccypcKFxkK1tzbWhdP1xzKuKAolxzKmVzYyB0byBpbnRlcnJ1cHRcKVtcc1xTXSokL2ksIiIpLnJlcGxhY2UoLyg/OlthLXpdezEsNn0pP+KAultcc1xTXSokLywiIikucmVwbGFjZSgvXHN7Mix9Z3B0LVxkW1xzXFNdKiQvaSwiIikucmVwbGFjZSgvXGIoPzpPcGVuQUkgQ29kZXh8bW9kZWw6fGRpcmVjdG9yeTp8VGlwOilcYltcc1xTXSokL2ksIiIpLEo9ZGUoSiksIUp8fEoubGVuZ3RoPDJ8fEUudGVzdChKKXx8bWUoSikpP251bGw6Sn0sUWU9ZnVuY3Rpb24oUCl7dmFyIEg9ZGUoUCk7cmV0dXJuIUh8fG1lKEgpfHwvXlvigKLil6bCt+KPuuKAul0vLnRlc3QoSCl8fC9eW1xbXF08PjAtOTs/XSt1PyQvaS50ZXN0KEgpfHwvXlvila3ilbDilILilIzilJTilJDilJjilJzilKTilKzilLTilLzilIDilZBdLy50ZXN0KEgpfHxILmxlbmd0aD41MDA/bnVsbDpIfSx4ZT1mdW5jdGlvbihQLEgpe2lmKFAuaW5kZXhPZihIKSE9PTApcmV0dXJuITE7dmFyIEo9UC5zbGljZShILmxlbmd0aCk7cmV0dXJuL15bYS16XXsxLDR9JC9pLnRlc3QoSil9LEZlPWZ1bmN0aW9uKFApe2Zvcih2YXIgSD1bXSxKPTA7SjxQLmxlbmd0aDtKKyspe3ZhciBmZT1kZShQW0pdKTtpZighKCFmZXx8ZmUubGVuZ3RoPDJ8fG1lKGZlKSkpe3ZhciBnZT1IW0gubGVuZ3RoLTFdO2lmKCFnZSl7SC5wdXNoKGZlKTtjb250aW51ZX1pZihmZSE9PWdlKXtpZihmZS5pbmRleE9mKGdlKT09PTApe0hbSC5sZW5ndGgtMV09ZmU7Y29udGludWV9aWYoZ2UuaW5kZXhPZihmZSk9PT0wKXt4ZShnZSxmZSkmJihIW0gubGVuZ3RoLTFdPWZlKTtjb250aW51ZX1ILnB1c2goZmUpfX19cmV0dXJuIEguam9pbihhKS50cmltKCl9LEx0PWZ1bmN0aW9uKFApe2Zvcih2YXIgSD0wO0g8UC5sZW5ndGg7SCsrKXt2YXIgSj1TdHJpbmcoUFtIXXx8IiIpLnRyaW0oKTtpZihKKXt2YXIgZmU9T2UoSik7aWYoZmUpcmV0dXJuIGZlO2lmKEo9PT0iXHUyMDNBIilmb3IodmFyIGdlPUgrMTtnZTxQLmxlbmd0aDtnZSsrKXt2YXIgWGU9ZGUoUFtnZV0pO2lmKCEoIVhlfHx3LnRlc3QoWGUpfHxtZShYZSkpKXJldHVybiBYZX19fXJldHVybiBudWxsfSwkZT1mdW5jdGlvbihQKXtmb3IodmFyIEg9W10sSj0hMSxmZT0wO2ZlPFAubGVuZ3RoO2ZlKyspe3ZhciBnZT1TdHJpbmcoUFtmZV18fCIiKS50cmltKCk7aWYoIWdlKXtpZihKKWJyZWFrO2NvbnRpbnVlfXZhciBYZT1HZShnZSk7aWYoWGUpe0gucHVzaChYZSksSj0hMDtjb250aW51ZX1pZihKKXtpZihnZT09PSJcdTIwM0EifHwvXuKAuig/OlxzfCQpLy50ZXN0KGdlKXx8dy50ZXN0KGdlKXx8bWUoZ2UpKWJyZWFrO0gucHVzaChkZShnZSkpfX1yZXR1cm4gSH07Zm9yKHZhciBvPW50LGw9ZGUsYz10ZSxmPW1lLGQ9T2Usdj1HZSxnPVFlLGg9eGUsbT1GZSxiPUx0LEY9JGUsdz0vXGJncHQtXGQrKD86XC5cZCspPyg/OlxzK1thLXowLTkuLV0rKT9ccyvCt1xzK1xkKyVccytsZWZ0XHMrwrdccysoPzpcL3x+XC8pLisvaSxFPS9eKD86dGhpbmtpbmd8d29ya2luZ3xydW5uaW5nfHBsYW5uaW5nfGFwcGx5aW5nfHJlYWRpbmd8c2VhcmNoaW5nfGluc3BlY3Rpbmd8cmV2aWV3aW5nfHN1bW1hcml6aW5nfGVkaXRpbmd8dXBkYXRpbmd8d3JpdGluZ3xjb21wbGV0ZWQpXGIvaSxBPVtdLHg9MCxJPWkucmVwbGFjZSgvXHJcbj8vZyxhKS5zcGxpdChhKSxfPTA7XzxJLmxlbmd0aDtfKyspZm9yKHZhciBWPW50KElbX10pLFk9Vi5zcGxpdChhKSxMPTA7TDxZLmxlbmd0aDtMKyspe3ZhciBCPVN0cmluZyhZW0xdfHwiIikudHJpbSgpO2lmKEIpe3ZhciBUPU9lKEIpO2lmKFQpe0EucHVzaCh7a2luZDoidXNlciIsb3JkZXI6eCsrLHRleHQ6VH0pO2NvbnRpbnVlfXZhciBNPUdlKEIpO2lmKE0pe0EucHVzaCh7a2luZDoiYXNzaXN0YW50IixvcmRlcjp4KyssdGV4dDpNfSk7Y29udGludWV9dmFyIGo9UWUoQik7aiYmQS5wdXNoKHtraW5kOiJlY2hvIixvcmRlcjp4KyssdGV4dDpqfSl9fWZvcih2YXIgWj1BLmZpbHRlcihmdW5jdGlvbihQLEgsSil7dmFyIGZlPUpbSC0xXTtyZXR1cm4hZmV8fGZlLmtpbmQhPT1QLmtpbmR8fGZlLnRleHQhPT1QLnRleHR9KSxuZT1aLmZpbHRlcihmdW5jdGlvbihQKXtyZXR1cm4gUC5raW5kPT09InVzZXIifSksUT1aLmZpbHRlcihmdW5jdGlvbihQKXtyZXR1cm4gUC5raW5kPT09ImFzc2lzdGFudCJ9KSxzZT1aLmZpbHRlcihmdW5jdGlvbihQKXtyZXR1cm4gUC5raW5kPT09ImVjaG8ifSksZWU9UnAoaSksUz1lZS5zcGxpdChhKS5tYXAoZnVuY3Rpb24oUCl7cmV0dXJuIFN0cmluZyhQfHwiIikudHJpbUVuZCgpfSksTj1MdChTKSxXPW5lLmxlbmd0aD9uZVtuZS5sZW5ndGgtMV06bnVsbCxHPXNlLm1hcChmdW5jdGlvbihQKXtyZXR1cm4gUC50ZXh0fSkuZmlsdGVyKGZ1bmN0aW9uKFApe3JldHVybiBQLmxlbmd0aD49M30pLFU9bnVsbCwkPUcubGVuZ3RoLTE7JD49MDskLS0paWYoR1skXSE9PU4pe1U9R1skXTticmVha30hVSYmRy5sZW5ndGgmJihVPUdbRy5sZW5ndGgtMV0pO2Zvcih2YXIgb2U9Vz9XLnRleHQ6VSxsZT1RLmZpbHRlcihmdW5jdGlvbihQKXtyZXR1cm4hV3x8UC5vcmRlcj5XLm9yZGVyfSkubWFwKGZ1bmN0aW9uKFApe3JldHVybiBQLnRleHR9KSxyZT1bXSxCZT1lZS5tYXRjaCgvXlsgXHRdKlvigKLil6bCt+KPul1bIFx0XSooLispJC9nbSl8fFtdLERlPTA7RGU8QmUubGVuZ3RoO0RlKyspe3ZhciBiZT1kZShCZVtEZV0ucmVwbGFjZSgvXlsgXHRdKlvigKLil6bCt+KPul1bIFx0XSovLCIiKSk7YmUmJihFLnRlc3QoYmUpfHx3LnRlc3QoYmUpfHwvXGIoPzpPcGVuQUkgQ29kZXh8bW9kZWw6fGRpcmVjdG9yeTp8VGlwOnxlc2MgdG8gaW50ZXJydXB0KVxiL2kudGVzdChiZSl8fHJlLnB1c2goYmUpKX12YXIgTz1GZShsZSl8fEZlKCRlKFMpKXx8KHJlLmxlbmd0aD9yZVtyZS5sZW5ndGgtMV06bnVsbCk7cmV0dXJuIG9lJiZyLnB1c2goe3JvbGU6InVzZXIiLGNvbnRlbnQ6b2V9KSxPJiZyLnB1c2goe3JvbGU6ImFzc2lzdGFudCIsY29udGVudDpPfSksIXIubGVuZ3RoJiZXP3IucHVzaCh7cm9sZToidXNlciIsY29udGVudDpXLnRleHR9KTohci5sZW5ndGgmJlUmJnIucHVzaCh7cm9sZToidXNlciIsY29udGVudDpVfSkscn1mb3IodmFyIHo9IlwwIixpZT0iXGIiLFRlPSJcdiIsY2U9IlxmIixhZT0iDiIsa2U9Ih8iLHB0PSJceEEwIixzdD0iXHgwNyIsQXQ9bmV3IFJlZ0V4cChzKyJcXFtbMC05Oz9dKlthLXpBLVpdfCIrcysiXFxdW14iK3N0KyJdKigiK3N0KyJ8IitzKyJcXFxcXFxcXCl8IitzKyJbPjw9ZVBfWF5dfFsiK3orIi0iK2llK1RlK2NlK2FlKyItIitrZSsiXXwiK3B0KyJ8Iit1LCJnIiksVWU9aS5yZXBsYWNlKEF0LGZ1bmN0aW9uKG50KXtyZXR1cm4gbnQ9PT1wdD8iICI6bnQ9PT11P2E6IiJ9KS5zcGxpdCh1KS5qb2luKGEpLG90PVVlLnNwbGl0KGEpLm1hcChmdW5jdGlvbihudCl7cmV0dXJuIG50LnRyaW0oKX0pLmZpbHRlcihCb29sZWFuKSxLZT1bL3RoaW5raW5nIHdpdGggaGlnaCBlZmZvcnQvaSwvdGhpbmtpbmcgd2l0aCBtZWRpdW0gZWZmb3J0L2ksL3RoaW5raW5nIHdpdGggbG93IGVmZm9ydC9pLG5ldyBSZWdFeHAoInRob3VnaHQgZm9yIFswLTldK3MiLCJpIiksbmV3IFJlZ0V4cCgiU2F1dGVlZCBmb3IgWzAtOV0rbSIsImkiKSwvR2VybWluYXRpbmcvaSwvRG9vZGxpbmcvaSwvQnJld2luZy9pXSx4dD1udWxsLFllPS0xLFJlPVtdLEFlPVtdLHZlPVtdLEVlPTA7RWU8b3QubGVuZ3RoO0VlKyspe3ZhciBDPW90W0VlXSxsdD1DLnJlcGxhY2UoL17ina9ccyovLCIiKTtpZihsdC5pbmRleE9mKCdUcnkiJyk9PT0wfHxsdC5pbmRleE9mKCdUcnkgIicpPT09MCl7UmUucHVzaChsdCk7Y29udGludWV9Zm9yKHZhciB2dD0hMSxidD0wO2J0PEtlLmxlbmd0aDtidCsrKWlmKEtlW2J0XS50ZXN0KEMpKXt2dD0hMCx2ZS5wdXNoKEMpO2JyZWFrfWlmKCF2dCYmQyYmQy5pbmRleE9mKCJcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDAiKSE9PTAmJkMhPT0iXHUyNzZGIiYmQy5pbmRleE9mKCJlc2MgdG8gaW50ZXJydXB0Iik9PT0tMSYmQy5pbmRleE9mKCJDbGF1ZGUgQ29kZSB2Iik9PT0tMSYmQy5pbmRleE9mKCJTb25uZXQiKT09PS0xJiZDLmluZGV4T2YoIn4vIikhPT0wJiZDLmluZGV4T2YoIlx1MjVDRiBoaWdoIik9PT0tMSYmQy5pbmRleE9mKCJGYWlsZWQgdG8gaW5zdGFsbCBBbnRocm9waWMgbWFya2V0cGxhY2UiKT09PS0xJiZDLmluZGV4T2YoIkNsYXVkZSBDb2RlIGhhcyBzd2l0Y2hlZCBmcm9tIG5wbSB0byBuYXRpdmUgaW5zdGFsbGVyIik9PT0tMSYmQy5pbmRleE9mKCJGbHV0dGVyaW5nIik9PT0tMSYmQy5pbmRleE9mKCI/IGZvciBzaG9ydGN1dHMiKT09PS0xJiZDLmluZGV4T2YoIjA7IikhPT0wJiZDLmluZGV4T2YoIjk7IikhPT0wJiZDLmluZGV4T2YoIkNsYXVkZSBpcyB3YWl0aW5nIik9PT0tMSYmIShDLmluZGV4T2YoIlx1MjcyMiIpIT09LTF8fEMuaW5kZXhPZigiXHUyNzMzIikhPT0tMXx8Qy5pbmRleE9mKCJcdTI3MzYiKSE9PS0xfHxDLmluZGV4T2YoIlx1MjczQiIpIT09LTF8fEMuaW5kZXhPZigiXHUyNzNEIikhPT0tMSkmJiEoQy5pbmRleE9mKCJcdTI1OTAiKT09PTB8fEMuaW5kZXhPZigiXHUyNTlEIik9PT0wfHxDLmluZGV4T2YoIlx1MjU5OCIpPT09MCkmJiEoKEM9PT0ibHUifHxDPT09InVlInx8Qz09PSJ0ciJ8fEM9PT0idGkifHxDPT09ImcifHxDPT09Im4ifHxDPT09ImlcdTIwMjYifHxDPT09Ilx1MjAyNiJ8fEM9PT0idXRzInx8Qz09PSJsdCJ8fEM9PT0icmcifHxDPT09Ilx4QjciKSYmQy5sZW5ndGg8NCkmJiEoQy5pbmRleE9mKCJcdTI3M0RGIik9PT0wfHxDLmluZGV4T2YoIlx1MjczQkYiKT09PTApJiZDLmluZGV4T2YoIm5wbSBXQVJOIik9PT0tMSYmQy5pbmRleE9mKCJucG0gbm90aWNlIik9PT0tMSYmIShDLmluZGV4T2YoImFkZGVkICIpIT09LTEmJkMuaW5kZXhPZigiIHBhY2thZ2VzIikhPT0tMSkmJkMuaW5kZXhPZigiYXVkaXRlZCAiKT09PS0xJiYhKEMuaW5kZXhPZigiZm91bmQgIikhPT0tMSYmQy5pbmRleE9mKCIgdnVsbmVyYWJpbGl0aWVzIikhPT0tMSkmJiEoQy5pbmRleE9mKCJVc2luZyAiKSE9PS0xJiZDLmluZGV4T2YoIiBmb3IgIikhPT0tMSYmQy5pbmRleE9mKCJzZXNzaW9uIikhPT0tMSkmJkMuaW5kZXhPZigiWW91IGNhbiB1c2UiKT09PS0xJiYhKEMuaW5kZXhPZigiUHJlc3MgIikhPT0tMSYmQy5pbmRleE9mKCIgZm9yIikhPT0tMSkmJiEoQy5pbmRleE9mKCJ0eXBlICIpPT09MCYmQy5pbmRleE9mKCIgdG8gIikhPT0tMSkmJkMuaW5kZXhPZigiW3dhbmRdIikhPT0wJiZDLmluZGV4T2YoIkNhcHR1cmVkIENsYXVkZSBzZXNzaW9uIElEIik9PT0tMSYmQy5pbmRleE9mKCJcdTIzRjUiKT09PS0xJiZDLmluZGV4T2YoImFjY2VwdGVkaXQiKT09PS0xJiZDLmluZGV4T2YoInNoaWZ0K3RhYiIpPT09LTEmJkMuaW5kZXhPZigidGFidG9jeWNsZSIpPT09LTEmJkMuaW5kZXhPZigiY3RybCtnIik9PT0tMSYmQy5pbmRleE9mKCIvZWZmb3J0Iik9PT0tMSYmIShDLmluZGV4T2YoIk9wdXMiKSE9PS0xJiZDLmluZGV4T2YoIm1vZGVsIikhPT0tMSkmJkMuaW5kZXhPZigiSGFpa3UiKT09PS0xJiZDLmluZGV4T2YoInRvIGN5Y2xlIik9PT0tMSYmIShDLmluZGV4T2YoImhpZ2ggXHhCNyIpIT09LTF8fEMuaW5kZXhPZigiaGlnaFx4QjciKSE9PS0xKSYmIShDLmluZGV4T2YoIm1lZGl1bSBceEI3IikhPT0tMXx8Qy5pbmRleE9mKCJtZWRpdW1ceEI3IikhPT0tMSkmJiEoQy5pbmRleE9mKCJsb3cgXHhCNyIpIT09LTF8fEMuaW5kZXhPZigibG93XHhCNyIpIT09LTEpKXtpZihDLmluZGV4T2YoIlx1MjVDRiIpPT09MCl7aWYoQz1DLnNsaWNlKDEpLnRyaW0oKSwhQyljb250aW51ZTtBZS5wdXNoKEMpO2NvbnRpbnVlfUMubGVuZ3RoPDMmJiEvXlthLXpBLVpdezN9JC8udGVzdChDKXx8QWUucHVzaChDKX19aWYodmUubGVuZ3RoPjApe3ZhciBQZT12ZVt2ZS5sZW5ndGgtMV0sU3Q9UGUubWF0Y2gobmV3IFJlZ0V4cCgiZm9yIChbMC05XStbbXNdK3wgWzAtOV0rbSBbMC05XStzKSIsImkiKSksWnQ9U3Q/Ilx1NkRGMVx1NUVBNlx1NjAxRFx1ODAwMyAiK1N0WzBdLnJlcGxhY2UoL2ZvciAvaSwiIik6Ilx1NkRGMVx1NUVBNlx1NjAxRFx1ODAwM1x1NEUyRC4uLiI7ci5wdXNoKHtyb2xlOiJ0aGlua2luZyIsY29udGVudDpadCx0eXBlOiJkZWVwLXRob3VnaHQifSl9aWYoUmUubGVuZ3RoPjApe3ZhciBjdD1SZVtSZS5sZW5ndGgtMV0ucmVwbGFjZSgvXlRyeVxzKi8sIiIpLnRyaW0oKTtyLnB1c2goe3JvbGU6InByb21wdCIsY29udGVudDpjdCx0eXBlOiJzdWdnZXN0aW9uIn0pfWlmKCFBZS5sZW5ndGgpcmV0dXJuIHI7Zm9yKHZhciBIZT1bXSxfZT1udWxsLENlPVtdLEVlPTA7RWU8QWUubGVuZ3RoO0VlKyspaWYoQz1BZVtFZV0sQy5pbmRleE9mKCJcdTI3NkYiKT09PTApe3ZhciBKZT1DLnJlcGxhY2UoL17ina9ccyovLCIiKS50cmltKCk7aWYoSmUuaW5kZXhPZignVHJ5IicpPT09MHx8SmUuaW5kZXhPZignVHJ5ICInKT09PTApY29udGludWU7X2UhPT1udWxsJiZDZS5sZW5ndGg+MCYmKEhlLnB1c2goe3VzZXI6X2UsYXNzaXN0YW50TGluZXM6Q2V9KSxDZT1bXSksSmU/X2U9SmU6KF9lIT09bnVsbCYmQ2UubGVuZ3RoPjAmJihIZS5wdXNoKHt1c2VyOl9lLGFzc2lzdGFudExpbmVzOkNlfSksQ2U9W10pLF9lPW51bGwpfWVsc2UgX2UhPT1udWxsJiYoQy5pbmRleE9mKCJcdTIzRkEiKSE9PS0xJiYoQy5pbmRleE9mKCJIaSEiKSE9PS0xfHxDLmluZGV4T2YoIkhlbGxvIikhPT0tMXx8Qy5pbmRleE9mKCJXaGF0IikhPT0tMXx8Qy5pbmRleE9mKCJ3b3JraW5nIikhPT0tMSk/Q2UucHVzaChDKTpDLmluZGV4T2YoIlx1MjNGQSIpPT09MD9DZS5wdXNoKEMuc2xpY2UoMSkudHJpbSgpfHxDKTpDLmxlbmd0aD49OCYmQy5pbmRleE9mKCJcdTI3MjIiKT09PS0xJiZDLmluZGV4T2YoIlx1MjczMyIpPT09LTEmJkMuaW5kZXhPZigiXHUyNzM2Iik9PT0tMSYmQy5pbmRleE9mKCJcdTI3M0IiKT09PS0xJiZDLmluZGV4T2YoIlx1MjczRCIpPT09LTEmJkMuaW5kZXhPZigiXHUyNTkwIikhPT0wJiZDLmluZGV4T2YoIlx1MjU5RCIpIT09MCYmQy5pbmRleE9mKCJcdTI1OTgiKSE9PTAmJkMuaW5kZXhPZigiZXNjdG9pbnRlcnJ1cHQiKT09PS0xJiZDLmluZGV4T2YoIj9mb3IiKSE9PTAmJkMuaW5kZXhPZigiPyBmb3IiKSE9PTAmJkNlLnB1c2goQykpO2lmKF9lIT09bnVsbCYmQ2UubGVuZ3RoPjAmJkhlLnB1c2goe3VzZXI6X2UsYXNzaXN0YW50TGluZXM6Q2V9KSxIZS5sZW5ndGg9PT0wKXtmb3IodmFyIEl0PSIiLEV0PS0xLEVlPTA7RWU8QWUubGVuZ3RoO0VlKyspaWYoQz1BZVtFZV0sIShDLmluZGV4T2YoJ1RyeSInKT09PTB8fEMuaW5kZXhPZignVHJ5ICInKT09PTApJiZDLmluZGV4T2YoIkZhaWxlZCB0byBpbnN0YWxsIik9PT0tMSYmQy5pbmRleE9mKCJjdHJsK2ciKT09PS0xJiZDLmluZGV4T2YoIlx1MjVDRiAiKSE9PTAmJiEoQy5sZW5ndGg8Mnx8Qy5sZW5ndGg+MTAwKSYmL15bYS16QS1aXS8udGVzdChDKSl7SXQ9Qy50cmltKCksRXQ9RWU7YnJlYWt9aWYoSXQmJkV0Pj0wKXt2YXIgaG49QWUuc2xpY2UoRXQrMSkuZmlsdGVyKGZ1bmN0aW9uKG50KXtyZXR1cm4gbnQubGVuZ3RoPj04fSk7aG4ubGVuZ3RoPjAmJkhlLnB1c2goe3VzZXI6SXQsYXNzaXN0YW50TGluZXM6aG59KX19Zm9yKHZhciBUdD0wO1R0PEhlLmxlbmd0aDtUdCsrKWlmKHIucHVzaCh7cm9sZToidXNlciIsY29udGVudDpIZVtUdF0udXNlcn0pLEhlW1R0XS5hc3Npc3RhbnRMaW5lcy5sZW5ndGg+MCl7dmFyIExuPWN2KEhlW1R0XS5hc3Npc3RhbnRMaW5lcy5qb2luKGEpKTtyLnB1c2goe3JvbGU6ImFzc2lzdGFudCIsY29udGVudDpMbn0pfXJldHVybiByfXZhciBwbz0idHJhbnNwYXJlbnQiO2Z1bmN0aW9uIHlpKGUsdCl7Zm9yKHZhciByPXR8fDMsaT1lWzBdLmxlbmd0aCpyLGE9ZS5sZW5ndGgqcix1PSIiLHM9MDtzPGUubGVuZ3RoO3MrKylmb3IodmFyIG89MDtvPGVbc10ubGVuZ3RoO28rKyllW3NdW29dIT09cG8mJih1Kz0nPHJlY3QgeD0iJytvKnIrJyIgeT0iJytzKnIrJyIgd2lkdGg9IicrcisnIiBoZWlnaHQ9IicrcisnIiBmaWxsPSInK2Vbc11bb10rJyIvPicpO3JldHVybic8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwICcraSsiICIrYSsnIiBjbGFzcz0icGl4ZWwtYXZhdGFyLXN2ZyI+Jyt1KyI8L3N2Zz4ifWZ1bmN0aW9uIGJpKGUpe3ZhciB0PXBvLHI9ZS5iYXNlLGk9ZS5kYXJrLGE9ZS5saWdodHx8ZS5iYXNlLHU9ZS5hY2NlbnR8fCIjRkZGRkZGIixzPWUuZXllfHwiIzJEMkQyRCIsbz1lLm1vdXRofHwiI0YyOEI5QSIsbD1lLm5vc2V8fGUuZGFyaztyZXR1cm5bW3QsaSx0LHQsdCx0LHQsdCxpLHRdLFtpLHIsaSx0LHQsdCx0LGkscixpXSxbaSxyLHIscixyLHIscixyLHIsaV0sW3Iscix1LHMscixyLHUscyxyLHJdLFtyLHIsdSx1LHIscix1LHUscixyXSxbcixyLHIscixvLG8scixyLHIscl0sW3IsbCxyLGEscixyLGEscixsLHJdLFt0LHIscixyLHIscixyLHIscix0XSxbdCx0LHIsaSxyLHIsaSxyLHQsdF0sW3QsdCx0LHIsdCx0LHIsdCx0LHRdXX12YXIgenA9e2Jhc2U6IiNGMDkyM0EiLGRhcms6IiNDNDZBMUEiLGxpZ2h0OiIjRjA5MjNBIixhY2NlbnQ6IiNGRkZGRkYiLGV5ZToiIzJEMkQyRCIsbW91dGg6IiNGMjhCOUEiLG5vc2U6IiNFODdENUEifSxWcD17YmFzZToiIzlFQUFCOCIsZGFyazoiIzZCN0I4RCIsbGlnaHQ6IiNDNUNFRDgiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjN0VDODhCIixtb3V0aDoiI0YyOEI5QSJ9LHZvPVt7YmFzZToiIzVBOEZFMCIsZGFyazoiIzJFNUJCMyIsbGlnaHQ6IiM5Q0MwRjIiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjRkZENjZFIixtb3V0aDoiI0YyOEI5QSIscHJpbWFyeToiIzVBOEZFMCJ9LHtiYXNlOiIjQTA2RkUwIixkYXJrOiIjNkI0NUE4IixsaWdodDoiI0M4QTRGMiIsYWNjZW50OiIjRkZGRkZGIixleWU6IiNGRkUzNkUiLG1vdXRoOiIjRjI4QjlBIixwcmltYXJ5OiIjQTA2RkUwIn0se2Jhc2U6IiM3QkI3NkIiLGRhcms6IiM0RjhBNDAiLGxpZ2h0OiIjQTlENDlDIixhY2NlbnQ6IiNGRkZGRkYiLGV5ZToiIzJEMkQyRCIsbW91dGg6IiNGMjhCOUEiLHByaW1hcnk6IiM3QkI3NkIifSx7YmFzZToiI0Q4NkE4OCIsZGFyazoiIzlDM0E1NyIsbGlnaHQ6IiNFOEE0QjUiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjMkQyRDJEIixtb3V0aDoiI0ZGRkZGRiIscHJpbWFyeToiI0Q4NkE4OCJ9LHtiYXNlOiIjNUJCN0IwIixkYXJrOiIjMkU3ODczIixsaWdodDoiIzlDRDZEMiIsYWNjZW50OiIjRkZGRkZGIixleWU6IiNGRkQ2NkUiLG1vdXRoOiIjRjI4QjlBIixwcmltYXJ5OiIjNUJCN0IwIn0se2Jhc2U6IiM0QTRBNjAiLGRhcms6IiMxRjFGMkUiLGxpZ2h0OiIjNkU2RTg0IixhY2NlbnQ6IiNGNUY1RjUiLGV5ZToiI0ZGRDY2RSIsbW91dGg6IiNGMjhCOUEiLHByaW1hcnk6IiM0QTRBNjAifSx7YmFzZToiI0Q4QTg1QSIsZGFyazoiIzlDNzAyOCIsbGlnaHQ6IiNFQkM3OEEiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjMkQyRDJEIixtb3V0aDoiI0YyOEI5QSIscHJpbWFyeToiI0Q4QTg1QSJ9XTtmdW5jdGlvbiBVcChlLHQpe2Zvcih2YXIgcj1TdHJpbmcoZXx8IiIpLGk9MCxhPTA7YTxyLmxlbmd0aDthKyspaT0oaTw8NSktaStyLmNoYXJDb2RlQXQoYSl8MDtyZXR1cm4gTWF0aC5hYnMoaSkldH12YXIgbW89eyJnZW5lcmFsLXB1cnBvc2UiOiJcdTRFMDdcdTgwRkRcdTczMkIiLEV4cGxvcmU6Ilx1NEZBNlx1NjNBMlx1NzMyQiIsImNvZGUtZXhwbG9yZXIiOiJcdTRGQTZcdTYzQTJcdTczMkIiLCJjb2RlLXJldmlld2VyIjoiXHU1QkExXHU2N0U1XHU3MzJCIiwiY29kZS1hcmNoaXRlY3QiOiJcdTY3QjZcdTY3ODRcdTczMkIiLCJjb2RlLXNpbXBsaWZpZXIiOiJcdTdCODBcdTUzMTZcdTczMkIiLCJjb2RlLWd1aWRlIjoiXHU1NDExXHU1QkZDXHU3MzJCIixQbGFuOiJcdTdCNTZcdTUyMTJcdTczMkIiLCJmZWF0dXJlLWRldiI6Ilx1NUYwMFx1NTNEMVx1NzMyQiIsInByLXRlc3QtYW5hbHl6ZXIiOiJcdTZENEJcdThCRDVcdTczMkIiLCJzaWxlbnQtZmFpbHVyZS1odW50ZXIiOiJcdTYyQTRcdTUzNkJcdTczMkIiLCJ0eXBlLWRlc2lnbi1hbmFseXplciI6Ilx1N0M3Qlx1NTc4Qlx1NzMyQiIsImNvbW1lbnQtYW5hbHl6ZXIiOiJcdTZDRThcdTkxQ0FcdTczMkIifSxUYT1udWxsO2Z1bmN0aW9uIGdvKGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PWUuYWdlbnRUeXBlfHwiIjtpZih0JiZtb1t0XSlyZXR1cm4gbW9bdF07aWYodClyZXR1cm4gdDt2YXIgcj0oZS50YXNrSWR8fCIiKS5zbGljZSgtNCl8fCh1dSgpPT09IkVuZ2xpc2giPyI/IjoiXHU2NzJBXHU3N0U1Iik7cmV0dXJuIE1lKCJzdWJhZ2VudC5oZWxwZXJfZmFsbGJhY2tfcHJlZml4Iikrcn1mdW5jdGlvbiBobyhlKXt2YXIgdD1nbyhlKTtpZighdClyZXR1cm4gdDt2YXIgcj1UYSYmZSYmZS50YXNrSWQ/VGEuZ2V0KGUudGFza0lkKTpudWxsO3JldHVybiByP3Qrcjp0fWZ1bmN0aW9uIHlvKGUpe3ZhciB0PWUmJihlLmFnZW50VHlwZXx8ZS50YXNrSWQpfHwic3ViYWdlbnQiO3JldHVybiB2b1tVcCh0LHZvLmxlbmd0aCldfWZ1bmN0aW9uIGlnKGUpe3ZhciB0PXlvKGUpLHI9aG8oZSksaT15aShiaSh0KSk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1hdmF0YXIgYXNzaXN0YW50IHN1YmFnZW50IiBzdHlsZT0iLS1hZ2VudC1jb2xvcjonK3QucHJpbWFyeSsnIj48ZGl2IGNsYXNzPSJwaXhlbC1hdmF0YXIiPicraSsnPC9kaXY+PHNwYW4gY2xhc3M9ImF2YXRhci1uYW1lIj4nK3AocikrIjwvc3Bhbj48L2Rpdj4ifWZ1bmN0aW9uIEtwKGUsdCl7aWYoIWV8fGUudHlwZSE9PSJ0b29sX3Jlc3VsdCIpcmV0dXJuIiI7dmFyIHI9Y24oZS5jb250ZW50KSxpPWUuaXNfZXJyb3I9PT0hMCxhPXR5cGVvZiByPT0ic3RyaW5nIj9yOnI9PW51bGw/IiI6U3RyaW5nKHIpO2lmKCFpJiYhYS50cmltKCkpcmV0dXJuJzxkaXYgY2xhc3M9InN1YmFnZW50LXJlcGx5IHBlbmRpbmciPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1yZXBseS1tYXJrZXIgcGVuZGluZyI+JytwKE1lKCJzdWJhZ2VudC5ydW5uaW5nIikpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InR5cGluZy1pbmRpY2F0b3IiPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjwvc3Bhbj48L2Rpdj4nO3ZhciB1PWEudHJpbSgpP2E6TWUoInN1YmFnZW50Lm5vX291dHB1dCIpLHM9YS50cmltKCk/SGEodSk6cCh1KSxvPU1lKGk/InN1YmFnZW50LnRhc2suZmFpbGVkIjoic3ViYWdlbnQudGFzay5kb25lIiksbD1pPyJcdTI3MTciOiJcdTI3MTMiO3JldHVybic8ZGl2IGNsYXNzPSJzdWJhZ2VudC1yZXBseSBmaW5hbCcrKGk/IiBlcnJvciI6IiIpKyciPjxkaXYgY2xhc3M9InN1YmFnZW50LXJlcGx5LW1hcmtlciAnKyhpPyJlcnJvciI6ImRvbmUiKSsnIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcmVwbHktbWFya2VyLWljb24iIGFyaWEtaGlkZGVuPSJ0cnVlIj4nK2wrJzwvc3Bhbj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcmVwbHktbWFya2VyLWxhYmVsIj4nK3AobykrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzdWJhZ2VudC1yZXBseS1jb250ZW50Ij4nK3MrIjwvZGl2PjwvZGl2PiJ9dmFyIEVpPXthc3Npc3RhbnQ6eWkoYmkoenApKSx1c2VyOnlpKGJpKFZwKSl9LGJvPXt1c2VyOntuYW1lOiJcdThENUJcdTUzNUFcdTg2NEVcdTU5OUUiLGF2YXRhclN2ZzpFaS51c2VyfSxhc3Npc3RhbnQ6e25hbWU6Ilx1NTJFNFx1NTJCM1x1NTIxRFx1NEU4QyIsYXZhdGFyU3ZnOkVpLmFzc2lzdGFudH19O2Z1bmN0aW9uIExhKGUpe3ZhciB0PW4uY29uZmlnJiZuLmNvbmZpZy5zdHJ1Y3R1cmVkQ2hhdFBlcnNvbmEscj10JiZ0W2VdP3RbZV06bnVsbCxpPWJvW2VdfHxiby5hc3Npc3RhbnQ7cmV0dXJue25hbWU6ciYmdHlwZW9mIHIubmFtZT09InN0cmluZyImJnIubmFtZS50cmltKCk/ci5uYW1lLnRyaW0oKTppLm5hbWUsYXZhdGFyOnImJnR5cGVvZiByLmF2YXRhcj09InN0cmluZyImJnIuYXZhdGFyLnRyaW0oKT9yLmF2YXRhci50cmltKCk6bnVsbCxhdmF0YXJTdmc6aS5hdmF0YXJTdmd9fWZ1bmN0aW9uIEVvKGUpe3JldHVybic8ZGl2IGNsYXNzPSJwaXhlbC1hdmF0YXIiPicrZSsiPC9kaXY+In1mdW5jdGlvbiBhZyhlLHQpe2lmKCEoIWV8fCFlLnBhcmVudE5vZGUpKXt2YXIgcj1MYSh0PT09InVzZXIiPyJ1c2VyIjoiYXNzaXN0YW50Iik7ZS5vdXRlckhUTUw9RW8oci5hdmF0YXJTdmcpfX1mdW5jdGlvbiBHbihlLHQpe3Q9dHx8e307dmFyIHI9ZT09PSJ1c2VyIj8idXNlciI6ImFzc2lzdGFudCIsaT1MYShyKSxhPWkuYXZhdGFyPyc8aW1nIGNsYXNzPSJwaXhlbC1hdmF0YXItaW1hZ2UiIHNyYz0iJytwKGkuYXZhdGFyKSsnIiBhbHQ9IicrcChpLm5hbWUpKyciIG9uZXJyb3I9ImhhbmRsZUNoYXRBdmF0YXJJbWFnZUVycm9yKHRoaXMsICcrSlNPTi5zdHJpbmdpZnkocikrJykiIC8+JzpFbyhpLmF2YXRhclN2ZyksdT10LmxlZnRTbG90P3QubGVmdFNsb3Q6IiI7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1hdmF0YXIgJytlKyciPicrYSsnPHNwYW4gY2xhc3M9ImF2YXRhci1uYW1lIj4nK3AoaS5uYW1lKSsiPC9zcGFuPiIrdSsiPC9kaXY+In1mdW5jdGlvbiBZcCgpe3ZhciBlPV90KCk7cmV0dXJuIWV8fCF1ZShlKT8iIjpXYShlLHtraW5kOiJjb21wYWN0In0pfWZ1bmN0aW9uIE1hKGUsdCxyLGkpe2lmKGUucm9sZT09PSJ0aGlua2luZyIpe3ZhciBhPXR5cGVvZiBlLmNvbnRlbnQ9PSJzdHJpbmciP2UuY29udGVudDoiIjtpZighYS50cmltKCkpcmV0dXJuIiI7dmFyIHU9WXQoInRoaW5raW5nIixbcHUoZSxyKSwicHR5Il0pLHM9cnQodSksbz1zPT09bnVsbD9BbigidGhpbmtpbmciKTpzO3JldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgdGhpbmtpbmciPjxkaXYgY2xhc3M9InRoaW5raW5nLWlubGluZSB0aGlua2luZy1wdHkgJysobz8iZXhwYW5kZWQiOiJjb2xsYXBzZWQiKSsnIiBkYXRhLWV4cGFuZC1raW5kPSJ0aGlua2luZyIgZGF0YS1leHBhbmQta2V5PSInK3AodSkrJyIgZGF0YS10aGlua2luZz0iJytwKGEpKyciIG9uY2xpY2s9Il9fdGhpbmtpbmdUb2dnbGUodGhpcykiPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtaWNvbiI+XHUyOUJGPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtcHJldmlldyI+JytwKGEpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRoaW5raW5nLWlubGluZS1hY3Rpb24iPicrKG8/Ilx1NjUzNlx1OEQ3NyI6Ilx1NUM1NVx1NUYwMCIpKyI8L3NwYW4+PC9kaXY+PC9kaXY+In1pZihlLnJvbGU9PT0icHJvbXB0IilyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlIHByb21wdCI+PGRpdiBjbGFzcz0icHJvbXB0LWNhcmQiPjxkaXYgY2xhc3M9InByb21wdC1pY29uIj5cdTIxOTI8L2Rpdj48ZGl2IGNsYXNzPSJwcm9tcHQtY29udGVudCI+XHU4QkQ1XHU4QkQ1XHVGRjFBPHNwYW4gY2xhc3M9InByb21wdC10ZXh0Ij4nK3AoZS5jb250ZW50KSsiPC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2PiI7aWYoQXJyYXkuaXNBcnJheShlLmNvbnRlbnQpKXJldHVybiBydihlLHQscixpKTt2YXIgbD1HbihlLnJvbGUpLGM9ZS5yb2xlPT09ImFzc2lzdGFudCI/SGEoZS5jb250ZW50KTpwKGUuY29udGVudCk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2Uucm9sZSsnIj4nK2wrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1idWJibGUiPicrYysiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiBKcChlKXt2YXIgdD17fTtpZighQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gdDtmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKyl7dmFyIGk9ZVtyXTtpZihpJiZpLnR5cGU9PT0idG9vbF9yZXN1bHQiKXt2YXIgYT1pLnRvb2xfdXNlX2lkO2lmKCFhKWNvbnRpbnVlO3RbYV18fCh0W2FdPVtdKSx0W2FdLnB1c2goaSl9fXJldHVybiB0fWZ1bmN0aW9uIEZvKGUsdCl7dmFyIHI9ZSYmdD9lW3RdOm51bGw7aWYoIXJ8fCFyLmxlbmd0aClyZXR1cm4gbnVsbDtmb3IodmFyIGk9MDtpPHIubGVuZ3RoLTE7aSsrKWlmKHFvKHJbaV0scltpKzFdKSlyZXR1cm4gcltpKzFdO3JldHVybiByW3IubGVuZ3RoLTFdfWZ1bmN0aW9uIEdwKGUsdCl7dmFyIHI9ZSYmdD9lW3RdOm51bGw7aWYoIXJ8fHIubGVuZ3RoPDIpcmV0dXJuITE7Zm9yKHZhciBpPTA7aTxyLmxlbmd0aC0xO2krKylpZihxbyhyW2ldLHJbaSsxXSkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gUXAoZSl7cmV0dXJuJzxkaXYgY2xhc3M9InN0cnVjdHVyZWQtdG9vbC1oaW50Ij5cdTVERjJcdTgxRUFcdTUyQThcdTYwNjJcdTU5MERcdTRFMDBcdTZCMjEgJytwKFBhKGUpKSsiIFx1NTNDMlx1NjU3MFx1OTVFRVx1OTg5ODwvZGl2PiJ9dmFyIHdvPXtSZWFkOjEsR2xvYjoxLEdyZXA6MSxXZWJGZXRjaDoxLFdlYlNlYXJjaDoxLFRvZG9SZWFkOjF9O2Z1bmN0aW9uICRwKGUpe2Zvcih2YXIgdD1bXSxyPTA7cjxlLmxlbmd0aDspe3ZhciBpPWVbcl07aWYoaS50eXBlPT09InRvb2xfcmVzdWx0Iil7cisrO2NvbnRpbnVlfWlmKGkudHlwZT09PSJ0b29sX3VzZSImJndvW2kubmFtZV0pe2Zvcih2YXIgYT1be2Jsb2NrOmksaW5kZXg6cn1dLHU9cisxO3U8ZS5sZW5ndGg7KXtpZihlW3VdLnR5cGU9PT0idG9vbF9yZXN1bHQiKXt1Kys7Y29udGludWV9aWYoZVt1XS50eXBlPT09InRvb2xfdXNlIiYmd29bZVt1XS5uYW1lXSlhLnB1c2goe2Jsb2NrOmVbdV0saW5kZXg6dX0pLHUrKztlbHNlIGJyZWFrfWEubGVuZ3RoPj0yP3QucHVzaCh7dHlwZToiZ3JvdXAiLGl0ZW1zOmEsZW5kSW5kZXg6dX0pOnQucHVzaCh7dHlwZToic2luZ2xlIixibG9jazppLGluZGV4OnJ9KSxyPXV9ZWxzZSB0LnB1c2goe3R5cGU6InNpbmdsZSIsYmxvY2s6aSxpbmRleDpyfSkscisrfXJldHVybiB0fXZhciBYcD17UmVhZDoiXHU4QkZCXHU1M0Q2IixHbG9iOiJcdTY0MUNcdTdEMjIiLEdyZXA6Ilx1NjQxQ1x1N0QyMiIsV2ViRmV0Y2g6Ilx1NjI5M1x1NTNENiIsV2ViU2VhcmNoOiJcdTY0MUNcdTdEMjIiLFRvZG9SZWFkOiJcdTVGODVcdTUyOUUifTtmdW5jdGlvbiBacChlLHQscixpKXtmb3IodmFyIGE9e30sdT0wO3U8ZS5sZW5ndGg7dSsrKXt2YXIgcz1lW3VdLmJsb2NrLm5hbWU7YVtzXT0oYVtzXXx8MCkrMX1mb3IodmFyIG89ITAsbD0hMSx1PTA7dTxlLmxlbmd0aDt1Kyspe3ZhciBjPWVbdV0uYmxvY2ssZj1GbyhyLGMuaWQpO2Y/Zi5pc19lcnJvciYmKGw9ITApOm89ITF9dmFyIGQ9bz9sPyJcdTI3MTciOiJcdTI3MTMiOiJcdTIwMjYiLHY9bz9sPyJlcnJvciI6ImRvbmUiOiJwZW5kaW5nIixnPVtdO2Zvcih2YXIgaCBpbiBhKWcucHVzaChhW2hdKyIgIisoWHBbaF18fGgpKTtmb3IodmFyIG09Zy5qb2luKCIgXHhCNyAiKSxiPVl0KCJ0b29sLWdyb3VwIixbaSxlWzBdJiZlWzBdLmluZGV4LGUubGVuZ3RoXSksRj1ydChiKSx3PUY9PT1udWxsP0FuKCJ0b29sR3JvdXAiKTpGLEU9IiIsdT0wO3U8ZS5sZW5ndGg7dSsrKXRyeXtFKz1EbyhlW3VdLmJsb2NrLHQscixlW3VdLmluZGV4LGkpfWNhdGNoe0UrPSc8ZGl2IGNsYXNzPSJyZW5kZXItZXJyb3IiPlx1NURFNVx1NTE3N1x1NkUzMlx1NjdEM1x1NTkzMVx1OEQyNTwvZGl2Pid9cmV0dXJuJzxkaXYgY2xhc3M9InRvb2wtZ3JvdXAiIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtZ3JvdXAiIGRhdGEtZXhwYW5kLWtleT0iJytwKGIpKyciIGRhdGEtZXhwYW5kZWQ9IicrKHc/InRydWUiOiJmYWxzZSIpKyciIGRhdGEtc3RhdHVzPSInK3YrJyI+PGRpdiBjbGFzcz0idG9vbC1ncm91cC1zdW1tYXJ5IiBvbmNsaWNrPSJfX3Rvb2xHcm91cFRvZ2dsZSh0aGlzLnBhcmVudE5vZGUpIj48c3BhbiBjbGFzcz0idG9vbC1ncm91cC1zdGF0dXMiPicrZCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0b29sLWdyb3VwLXRleHQiPicrcChtKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0b29sLWdyb3VwLWNvdW50Ij4nK2UubGVuZ3RoKycgXHU0RTJBXHU4QzAzXHU3NTI4PC9zcGFuPjxzdmcgY2xhc3M9InRvb2wtZ3JvdXAtY2hldnJvbiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3R5bGU9InRyYW5zZm9ybTonKyh3PyJyb3RhdGUoMTgwZGVnKSI6IiIpKyciPjxwb2x5bGluZSBwb2ludHM9IjYgOSAxMiAxNSAxOCA5Ii8+PC9zdmc+PC9kaXY+PGRpdiBjbGFzcz0idG9vbC1ncm91cC1ib2R5IiBzdHlsZT0iZGlzcGxheTonKyh3PyJibG9jayI6Im5vbmUiKSsnOyI+JytFKyI8L2Rpdj48L2Rpdj4ifXdpbmRvdy5fX3Rvb2xHcm91cFRvZ2dsZT1mdW5jdGlvbihlKXtpZihlKXt2YXIgdD1lLmdldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIpPT09InRydWUiO2Uuc2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIix0PyJmYWxzZSI6InRydWUiKTt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoIi50b29sLWdyb3VwLWJvZHkiKTtyJiYoci5zdHlsZS5kaXNwbGF5PXQ/Im5vbmUiOiJibG9jayIpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLnRvb2wtZ3JvdXAtY2hldnJvbiIpO2kmJihpLnN0eWxlLnRyYW5zZm9ybT10PyIiOiJyb3RhdGUoMTgwZGVnKSIpLEZuKGUsInRvb2wtZ3JvdXAiKX19O2Z1bmN0aW9uIHFhKGUpe2lmKCFlfHxlLnR5cGUhPT0idG9vbF91c2UiKXJldHVybiBudWxsO3ZhciB0PWUuaW5wdXR8fHt9LHI9dHlwZW9mIHQuc3ViYWdlbnRfdHlwZT09InN0cmluZyI/dC5zdWJhZ2VudF90eXBlOm51bGw7cmV0dXJuIXImJmUubmFtZSE9PSJUYXNrIiYmZS5uYW1lIT09IkFnZW50Ij9udWxsOnt0YXNrSWQ6ZS5pZCxhZ2VudFR5cGU6cnx8dm9pZCAwLHRhc2tEZXNjcmlwdGlvbjp0eXBlb2YgdC5kZXNjcmlwdGlvbj09InN0cmluZyI/dC5kZXNjcmlwdGlvbjp2b2lkIDB9fWZ1bmN0aW9uIGV2KGUpe3ZhciB0PW5ldyBNYXA7aWYoIUFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIHQ7Zm9yKHZhciByPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoISghaXx8aS5yb2xlIT09ImFzc2lzdGFudCJ8fCFBcnJheS5pc0FycmF5KGkuY29udGVudCkpKWZvcih2YXIgYT0wO2E8aS5jb250ZW50Lmxlbmd0aDthKyspe3ZhciB1PWkuY29udGVudFthXTtpZighKCF1fHx1LnR5cGUhPT0idG9vbF91c2UiKSl7dmFyIHM9dS5fX3N1YmFnZW50fHxxYSh1KTtzJiZ0LnNldCh1LmlkLHMpfX19cmV0dXJuIHR9ZnVuY3Rpb24gdHYoZSl7dmFyIHQ9bmV3IE1hcDtpZighQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gdDt2YXIgcj1uZXcgTWFwLGk9bmV3IFNldDtmdW5jdGlvbiBhKGYpe2lmKCEoIWZ8fCFmLnRhc2tJZCkmJiFpLmhhcyhmLnRhc2tJZCkpe2kuYWRkKGYudGFza0lkKTt2YXIgZD1nbyhmKTtkJiYoci5oYXMoZCl8fHIuc2V0KGQsW10pLHIuZ2V0KGQpLnB1c2goZi50YXNrSWQpKX19Zm9yKHZhciB1PTA7dTxlLmxlbmd0aDt1Kyspe3ZhciBzPWVbdV07aWYoISghc3x8IUFycmF5LmlzQXJyYXkocy5jb250ZW50KSkpZm9yKHZhciBvPTA7bzxzLmNvbnRlbnQubGVuZ3RoO28rKyl7dmFyIGw9cy5jb250ZW50W29dO2lmKGwpe3ZhciBjPWwuX19zdWJhZ2VudHx8KGwudHlwZT09PSJ0b29sX3VzZSI/cWEobCk6bnVsbCk7YyYmYShjKX19fXJldHVybiByLmZvckVhY2goZnVuY3Rpb24oZil7aWYoIShmLmxlbmd0aDwyKSlmb3IodmFyIGQ9MDtkPGYubGVuZ3RoO2QrKyl0LnNldChmW2RdLCIgIyIrKGQrMSkpfSksdH1mdW5jdGlvbiBDbyhlLHQpe3ZhciByPVtdO2lmKCFBcnJheS5pc0FycmF5KGUpfHwhZS5sZW5ndGgpcmV0dXJuIHI7Zm9yKHZhciBpPW51bGwsYT0wO2E8ZS5sZW5ndGg7YSsrKXt2YXIgdT1lW2FdLHM9dSYmdS50eXBlPT09InRleHQiJiZ1Ll9fcHJvY2Vzc2luZz09PSEwO2lmKHMmJmkpe2kuYmxvY2tzLnB1c2godSk7Y29udGludWV9dmFyIG89dSYmdS5fX3N1YmFnZW50P3UuX19zdWJhZ2VudDpudWxsO298fChvPXFhKHUpKSwhbyYmdSYmdS50eXBlPT09InRvb2xfcmVzdWx0IiYmdCYmdC5oYXModS50b29sX3VzZV9pZCkmJihvPXQuZ2V0KHUudG9vbF91c2VfaWQpKTt2YXIgbD1vP28udGFza0lkOm51bGw7KCFpfHxpLmtleSE9PWwpJiYoaT17a2V5Omwsc3ViYWdlbnQ6byxibG9ja3M6W10sZmlyc3RJbmRleDphfSxyLnB1c2goaSkpLGkuYmxvY2tzLnB1c2godSl9cmV0dXJuIHJ9ZnVuY3Rpb24gT2EoZSx0LHIsaSxhKXt2YXIgdT0iIjt0cnl7Zm9yKHZhciBzPSRwKGUpLG89MDtvPHMubGVuZ3RoO28rKyl7dmFyIGw9c1tvXTt0cnl7aWYobC50eXBlPT09Imdyb3VwIil7Zm9yKHZhciBjPVtdLGY9MDtmPGwuaXRlbXMubGVuZ3RoO2YrKyljLnB1c2goe2Jsb2NrOmwuaXRlbXNbZl0uYmxvY2ssaW5kZXg6bC5pdGVtc1tmXS5pbmRleCt0fSk7dSs9WnAoYyxyLGksYSl9ZWxzZSB1Kz1EbyhsLmJsb2NrLHIsaSxsLmluZGV4K3QsYSl9Y2F0Y2h7dSs9JzxkaXYgY2xhc3M9InJlbmRlci1lcnJvciI+XHU2RDg4XHU2MDZGXHU1NzU3XHU2RTMyXHU2N0QzXHU1OTMxXHU4RDI1PC9kaXY+J319fWNhdGNoe3UrPSc8ZGl2IGNsYXNzPSJyZW5kZXItZXJyb3IiPlx1NkQ4OFx1NjA2Rlx1NkUzMlx1NjdEM1x1NTkzMVx1OEQyNTwvZGl2Pid9cmV0dXJuIHV9ZnVuY3Rpb24gQm8oZSx0LHIsaSxhLHUpe2Zvcih2YXIgcz11fHx7fSxvPXMuc2hvd0hhbmRvZmYhPT0hMSxsPSIiLGM9bnVsbCxmPTA7ZjxlLmxlbmd0aDtmKyspe3ZhciBkPWVbZl0sdj1PYShkLmJsb2NrcyxkLmZpcnN0SW5kZXgsdCxpLGEpO2lmKCEoIXZ8fCF2LnRyaW0oKSkpaWYoZC5zdWJhZ2VudCl7dmFyIGc9byYmYyE9PWQuc3ViYWdlbnQudGFza0lkO2wrPW52KGQscix2LGEsZyksYz1kLnN1YmFnZW50LnRhc2tJZH1lbHNlIGwrPSc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2Utc2VnbWVudCBwYXJlbnQiPicrR24odCkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1jb250ZW50Ij4nK3YrIjwvZGl2PjwvZGl2PiIsYz1udWxsfXJldHVybiBsfWZ1bmN0aW9uIG52KGUsdCxyLGksYSl7dmFyIHU9ZS5zdWJhZ2VudCxzPXlvKHUpLG89aG8odSksbD11LnRhc2tJZHx8IiIsYz15aShiaShzKSksZjtpZihhKXt2YXIgZD0nPHN0cm9uZyBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtbmFtZSI+JytwKG8pKyc8L3N0cm9uZz48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdGFnIiB0aXRsZT0iJytwKE1lKCJzdWJhZ2VudC50YWdfdGl0bGUiKSkrJyI+JytwKE1lKCJzdWJhZ2VudC50YWciKSkrIjwvc3Bhbj4iLHY9ISEodS50YXNrRGVzY3JpcHRpb24mJlN0cmluZyh1LnRhc2tEZXNjcmlwdGlvbikudHJpbSgpKSxnPXY/TWUoInN1YmFnZW50LmhhbmRvZmYud2l0aF9kZXNjIix7cGFyZW50OnAodCksc3ViOmR9KTpNZSgic3ViYWdlbnQuaGFuZG9mZiIse3BhcmVudDpwKHQpLHN1YjpkfSksaD12Pyc8c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdGFzay1kZXNjIj4nK3AodS50YXNrRGVzY3JpcHRpb24pKyI8L3NwYW4+IjoiIjtmPSc8c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtYXJyb3ciIGFyaWEtaGlkZGVuPSJ0cnVlIj5cdTIxQjM8L3NwYW4+PHNwYW4gY2xhc3M9InN1YmFnZW50LXBhbmVsLWF0dHJpYnV0aW9uIj4nK2craCsiPC9zcGFuPiJ9ZWxzZSBmPSc8c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtYXR0cmlidXRpb24iPjxzdHJvbmcgY2xhc3M9InN1YmFnZW50LXBhbmVsLW5hbWUiPicrcChvKSsnPC9zdHJvbmc+PHNwYW4gY2xhc3M9InN1YmFnZW50LXBhbmVsLXRhc2stZGVzYyI+ICcrcChNZSgic3ViYWdlbnQuY29udGludWVkIikpKyI8L3NwYW4+PC9zcGFuPiI7dmFyIG09WXQoInN1YmFnZW50LXBhbmVsIixbaSxsXSksYj1ydChtKSxGPWI9PT1udWxsPyExOiEhYjtmdW5jdGlvbiB3KEUpe3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InN1YmFnZW50LXBhbmVsLXRvZ2dsZSIgZGF0YS1wb3NpdGlvbj0iJytFKyciIG9uY2xpY2s9Il9fc3ViYWdlbnRQYW5lbFRvZ2dsZShldmVudCwgdGhpcykiIGFyaWEtZXhwYW5kZWQ9IicrKEY/InRydWUiOiJmYWxzZSIpKyciIGFyaWEtbGFiZWw9IicrcChNZShGPyJ1aS5jb2xsYXBzZV9wYW5lbF9hcmlhIjoidWkuZXhwYW5kX3BhbmVsX2FyaWEiKSkrJyI+PHNwYW4gY2xhc3M9InN1YmFnZW50LXBhbmVsLXRvZ2dsZS1sYWJlbCI+JytwKE1lKEY/InVpLmNvbGxhcHNlIjoidWkuZXhwYW5kIikpKyc8L3NwYW4+PHN2ZyBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWljb24iIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDEwIDEwIiBmaWxsPSJub25lIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTIuNSAzLjc1TDUgNi4yNUw3LjUgMy43NSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz48L2J1dHRvbj4nfXJldHVybic8ZGl2IGNsYXNzPSJzdWJhZ2VudC1wYW5lbCIgZGF0YS1leHBhbmQta2luZD0ic3ViYWdlbnQtcGFuZWwiIGRhdGEtZXhwYW5kLWtleT0iJytwKG0pKyciIGRhdGEtYWdlbnQtaWQ9IicrcChsKSsnIiBkYXRhLWV4cGFuZGVkPSInKyhGPyJ0cnVlIjoiZmFsc2UiKSsnIiBzdHlsZT0iLS1hZ2VudC1jb2xvcjonK3MucHJpbWFyeSsnIj48ZGl2IGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1oZWFkZXIiIG9uY2xpY2s9Il9fc3ViYWdlbnRQYW5lbFRvZ2dsZShldmVudCwgdGhpcykiIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGFyaWEtbGFiZWw9IicrcChNZSgic3ViYWdlbnQudGl0bGVfYXJpYSIpKSsnIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtYXZhdGFyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+JytjKyI8L3NwYW4+IitmK3coInRvcCIpKyc8L2Rpdj48ZGl2IGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1ib2R5Ij4nK3IrJzwvZGl2PjxkaXYgY2xhc3M9InN1YmFnZW50LXBhbmVsLWZvb3RlciI+PHNwYW4gY2xhc3M9InN1YmFnZW50LXBhbmVsLWZvb3Rlci1oaW50IiBhcmlhLWhpZGRlbj0idHJ1ZSI+XHUyMDE0ICcrcChvKSsiIFx1MjAxNDwvc3Bhbj4iK3coImJvdHRvbSIpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIHJ2KGUsdCxyLGkpe3ZhciBhPWUucm9sZSx1PXB1KGUscikscz1hPT09InVzZXIiJiZlLmNvbnRlbnQmJmUuY29udGVudC5zb21lKGZ1bmN0aW9uKEEpe3JldHVybiBBLl9fcXVldWVkfSk7aWYoIWUuY29udGVudHx8ZS5jb250ZW50Lmxlbmd0aD09PTApcmV0dXJuIGE9PT0iYXNzaXN0YW50Ij8nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlICcrYSsnIj4nK0duKGEpKyc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UtYnViYmxlIj48ZGl2IGNsYXNzPSJ0eXBpbmctaW5kaWNhdG9yIj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48L2Rpdj48L2Rpdj48L2Rpdj4nOic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythKycgZW1wdHktbWVzc2FnZSIgZGF0YS1tZXNzYWdlLWtleT0iJytwKHUpKyciPicrR24oYSkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1jb250ZW50Ij48c3BhbiBjbGFzcz0iZW1wdHktbWVzc2FnZS1oaW50Ij5cdUZGMDhcdTdBN0FcdTZEODhcdTYwNkZcdUZGMDk8L3NwYW4+PC9kaXY+PC9kaXY+Jzt2YXIgbz1KcChlLmNvbnRlbnQpLGw9TGEoImFzc2lzdGFudCIpO2lmKGEhPT0iYXNzaXN0YW50Iil7dmFyIGM9Q28oZS5jb250ZW50LGkpLGY9Yy5zb21lKGZ1bmN0aW9uKEEpe3JldHVybiBBLnN1YmFnZW50fSksZD1zPyIgcXVldWVkIjoiIix2PXM/JzxzcGFuIGNsYXNzPSJxdWV1ZWQtYmFkZ2UiPlx1NjM5Mlx1OTYxRlx1NEUyRDwvc3Bhbj4nOiIiLGc9WXAoKTtpZihmKXt2YXIgaD1CbyhjLGEsbC5uYW1lLG8sdSx7c2hvd0hhbmRvZmY6ITF9KTtyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlICcrYStkKycgbXVsdGktYWdlbnQiIGRhdGEtbWVzc2FnZS1rZXk9IicrcCh1KSsnIj4nK2grdisiPC9kaXY+In12YXIgbT1PYShlLmNvbnRlbnQsMCxhLG8sdSk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2ErZCsnIiBkYXRhLW1lc3NhZ2Uta2V5PSInK3AodSkrJyI+JytHbihhLHtsZWZ0U2xvdDpnfSkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1jb250ZW50Ij4nK20rdisiPC9kaXY+PC9kaXY+In12YXIgYj1DbyhlLmNvbnRlbnQsaSksRj1iLnNvbWUoZnVuY3Rpb24oQSl7cmV0dXJuIEEuc3ViYWdlbnR9KTtpZighRil7dmFyIHc9T2EoZS5jb250ZW50LDAsYSxvLHUpO3JldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythKyciIGRhdGEtbWVzc2FnZS1rZXk9IicrcCh1KSsnIj4nK0duKGEpKyc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UtY29udGVudCI+Jyt3KyI8L2Rpdj48L2Rpdj4ifXZhciBFPSc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythKycgbXVsdGktYWdlbnQiIGRhdGEtbWVzc2FnZS1rZXk9IicrcCh1KSsnIj4nO3JldHVybiBFKz1CbyhiLGEsbC5uYW1lLG8sdSx7c2hvd0hhbmRvZmY6ITB9KSxFKz0iPC9kaXY+IixFfWZ1bmN0aW9uIERvKGUsdCxyLGksYSl7aWYoIWV8fCFlLnR5cGV8fGUudHlwZT09PSJ0b29sX3VzZSImJmUuX19zdWJhZ2VudCYmZS5fX3N1YmFnZW50LnRhc2tJZD09PWUuaWQpcmV0dXJuIiI7aWYoZS50eXBlPT09InRvb2xfcmVzdWx0IiYmZS5fX3N1YmFnZW50JiZlLl9fc3ViYWdlbnQudGFza0lkPT09ZS50b29sX3VzZV9pZClyZXR1cm4gS3AoZSx0KTtzd2l0Y2goZS50eXBlKXtjYXNlInRleHQiOnJldHVybiB0PT09ImFzc2lzdGFudCImJmUuX19wcm9jZXNzaW5nPyc8ZGl2IGNsYXNzPSJ0eXBpbmctaW5kaWNhdG9yIj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48L2Rpdj4nOnQ9PT0iYXNzaXN0YW50Ij9IYShlLnRleHR8fCIiKTpwKGUudGV4dHx8IiIpO2Nhc2UidGhpbmtpbmciOnZhciB1PWUudGhpbmtpbmd8fCIiLHM9ZS50aGlua2luZz09PXZvaWQgMCYmZS50eXBlPT09InRoaW5raW5nIjtpZihzKXJldHVybic8ZGl2IGNsYXNzPSJ0aGlua2luZy1pbmxpbmUgdGhpbmtpbmctc3RyZWFtaW5nIiBkYXRhLXRoaW5raW5nPSIiPjxkaXYgY2xhc3M9InRoaW5raW5nLXN0cmVhbWluZy1pbm5lciI+PHNwYW4gY2xhc3M9InRoaW5raW5nLXN0cmVhbWluZy1pY29uIHNwaW5uaW5nIj5cdTI5QkY8L3NwYW4+PGRpdiBjbGFzcz0idGhpbmtpbmctc3RyZWFtaW5nLXRleHQiPjwvZGl2PjwvZGl2PjwvZGl2Pic7aWYoIXUudHJpbSgpKXJldHVybiIiO3ZhciBvPXUubGVuZ3RoPjYwP3Uuc2xpY2UoMCw1NykrIlx1MjAyNiI6dSxsPVl0KCJ0aGlua2luZyIsW2EsaV0pLGM9cnQobCksZj1jPT09bnVsbD9BbigidGhpbmtpbmciKTpjO3JldHVybic8ZGl2IGNsYXNzPSJ0aGlua2luZy1pbmxpbmUgJysoZj8iZXhwYW5kZWQiOiJjb2xsYXBzZWQiKSsnIiBkYXRhLWV4cGFuZC1raW5kPSJ0aGlua2luZyIgZGF0YS1leHBhbmQta2V5PSInK3AobCkrJyIgZGF0YS10aGlua2luZz0iJytwKHUpKyciIG9uY2xpY2s9Il9fdGhpbmtpbmdUb2dnbGUodGhpcykiPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtaWNvbiI+XHUyOUJGPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtcHJldmlldyI+JytwKGY/dTpvKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtYWN0aW9uIj4nKyhmPyJcdTY1MzZcdThENzciOiJcdTVDNTVcdTVGMDAiKSsiPC9zcGFuPjwvZGl2PiI7Y2FzZSJ0b29sX3VzZSI6dmFyIGQ9Rm8ocixlLmlkKSx2PXN2KGUsZCxpLGEpO3JldHVybiBHcChyLGUuaWQpJiYodj1RcChlLm5hbWV8fCJcdTVERTVcdTUxNzciKSt2KSx2O2Nhc2UidG9vbF9yZXN1bHQiOnJldHVybiIiO2RlZmF1bHQ6dmFyIGc9ZSYmZS50eXBlP1N0cmluZyhlLnR5cGUpOiJcdTY3MkFcdTc3RTUiLGg9IiI7dHJ5e2g9SlNPTi5zdHJpbmdpZnkoZSxudWxsLDIpfWNhdGNoe2g9Int9In1yZXR1cm5gPGRpdiBjbGFzcz0idW5rbm93bi1ibG9jayBjb2xsYXBzZWQiIG9uY2xpY2s9InRoaXMuY2xhc3NMaXN0LnRvZ2dsZSgnY29sbGFwc2VkJykiPjxkaXYgY2xhc3M9InVua25vd24tYmxvY2staGVhZGVyIj48c3BhbiBjbGFzcz0idW5rbm93bi1ibG9jay1pY29uIj4/PC9zcGFuPjxzcGFuIGNsYXNzPSJ1bmtub3duLWJsb2NrLWxhYmVsIj5cdTY3MkFcdThCQzZcdTUyMkJcdTc2ODRcdTUxODVcdTVCQjlcdTU3NTdcdUZGMUFgK3AoZykrJzwvc3Bhbj48c3BhbiBjbGFzcz0idW5rbm93bi1ibG9jay10b2dnbGUiPlx1MjVCQzwvc3Bhbj48L2Rpdj48cHJlIGNsYXNzPSJ1bmtub3duLWJsb2NrLWJvZHkiPicrcChoKSsiPC9wcmU+PC9kaXY+In19ZnVuY3Rpb24gaXYoZSx0LHIsaSxhLHUscyl7dmFyIG89ZS5pZHx8InRvb2wtIityLGw9WXQoImlubGluZS10b29sIixbdSxvfHxzLHNdKSxjPXJ0KGwpLGY9ZS5pbnB1dHx8e30sZD1jbih0JiZ0LmNvbnRlbnQpLHY9dCYmdC5pc19lcnJvcixnPWQubGVuZ3RoPjAsaD12PyJcdTI3MTciOmc/Ilx1MjcxMyI6Ilx1MjAyNiIsbT0iIixiPSIiLEY9IiIsdz0iIjtpZihyPT09IlJlYWQiKXttPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48cGF0aCBkPSJNMSAzLjVBMS41IDEuNSAwIDAgMSAyLjUgMmgyLjc2NGMuOTU4IDAgMS43Ni41NiAyLjMxMSAxLjE4NEM4LjQwNSAzLjc3IDkuMTQ2IDQgMTAgNGgzLjVBMS41IDEuNSAwIDAgMSAxNSA1LjV2N2ExLjUgMS41IDAgMCAxLTEuNSAxLjVoLTExQTEuNSAxLjUgMCAwIDEgMSAxMi41di05eiIvPjxwYXRoIGQ9Ik0yIDUuNWgxMk0yIDhoOE0yIDEwLjVoNSIvPjwvc3ZnPic7dmFyIEU9Zi5maWxlX3BhdGh8fGYucGF0aHx8aXx8IiIsQT0iIjtmLmxpbWl0JiYoQT0iICIrZi5vZmZzZXQrIi0iKyhmLm9mZnNldCtmLmxpbWl0KSksYj1FLEY9QX1lbHNlIGlmKHI9PT0iR2xvYiIpe209JzxzdmcgY2xhc3M9ImlubGluZS10b29sLWljb24iIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxjaXJjbGUgY3g9IjciIGN5PSI3IiByPSI1Ii8+PHBhdGggZD0iTTEwLjUgMTAuNUwxNCAxNCIvPjwvc3ZnPic7dmFyIHg9Zi5wYXR0ZXJufHwiIixJPWYucGF0aHx8aXx8IiI7Yj14LEY9SX1lbHNlIGlmKHI9PT0iR3JlcCIpe209JzxzdmcgY2xhc3M9ImlubGluZS10b29sLWljb24iIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxjaXJjbGUgY3g9IjYuNSIgY3k9IjYuNSIgcj0iNC41Ii8+PHBhdGggZD0iTTExLjUgMTEuNUwxNSAxNSIvPjwvc3ZnPic7dmFyIHg9Zi5wYXR0ZXJufHwiIixJPWYucGF0aHx8aXx8IiI7Yj14LEY9SSxmLmNvbnRleHQmJihGKz0iIC1DIitmLmNvbnRleHQpfWVsc2UgaWYocj09PSJXZWJGZXRjaCIpe209JzxzdmcgY2xhc3M9ImlubGluZS10b29sLWljb24iIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxjaXJjbGUgY3g9IjgiIGN5PSI4IiByPSI2LjUiLz48cGF0aCBkPSJNOCAxLjV2MTNNMS41IDhoMTMiLz48L3N2Zz4nO3ZhciBfPWYudXJsfHwiIjtiPV8sRj1hfHwiIn1lbHNlIGlmKHI9PT0iV2ViU2VhcmNoIil7bT0nPHN2ZyBjbGFzcz0iaW5saW5lLXRvb2wtaWNvbiIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSI+PGNpcmNsZSBjeD0iNyIgY3k9IjciIHI9IjUiLz48cGF0aCBkPSJNMTAuNSAxMC41TDE0IDE0Ii8+PHBhdGggZD0iTTUgN2g0TTcgNXY0Ii8+PC9zdmc+Jzt2YXIgVj1mLnF1ZXJ5fHwiIjtiPVYsRj1hfHwiIn1lbHNlIHI9PT0iVG9kb1JlYWQiPyhtPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48cmVjdCB4PSIyIiB5PSIyIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHJ4PSIyIi8+PHBhdGggZD0iTTUgOGwyIDIgNC00Ii8+PC9zdmc+JyxiPSJcdThCRkJcdTUzRDZcdTVGODVcdTUyOUVcdTUyMTdcdTg4NjgiLEY9YXx8IiIpOihtPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iNi41Ii8+PHBhdGggZD0iTTggNXYzLjVNOCAxMWguMDEiLz48L3N2Zz4nLGI9UGEociksRj1hfHwiIik7aWYoZyl7dmFyIFk9ZC5zcGxpdChgCmApO1kubGVuZ3RoPjEwP3c9WS5zbGljZSgwLDEwKS5qb2luKGAKYCkrYApcdTIwMjZgOnc9ZH12YXIgTD1wKGQpLEI9cCh3KSxUPWQsTT0iIixqPWM9PT1udWxsP0FuKCJpbmxpbmVUb29scyIpOmM7Zz9NPSc8ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1leHBhbmRlZCIgc3R5bGU9ImRpc3BsYXk6ICcrKGo/ImJsb2NrIjoibm9uZSIpKyc7Ij48ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1yZXN1bHQiPicra28oZCxyKSsiPC9kaXY+PC9kaXY+Ijp2P009JzxkaXYgY2xhc3M9ImlubGluZS10b29sLWV4cGFuZGVkIiBzdHlsZT0iZGlzcGxheTogJysoaj8iYmxvY2siOiJub25lIikrJzsiPjxkaXYgY2xhc3M9ImlubGluZS10b29sLXJlc3VsdCBpbmxpbmUtdG9vbC1lcnJvciI+JytwKGR8fCJcdTY0Q0RcdTRGNUNcdTU5MzFcdThEMjUiKSsiPC9kaXY+PC9kaXY+Ijp0fHwoTT0nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5OiAnKyhqPyJibG9jayI6Im5vbmUiKSsnOyI+PGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtbG9hZGluZyI+XHU3QjQ5XHU1Rjg1XHU1NENEXHU1RTk0XHUyMDI2PC9kaXY+PC9kaXY+Jyk7dmFyIFo9dCYmdC5fdHJ1bmNhdGVkPT09ITAsbmU9Rj8nPHNwYW4gY2xhc3M9ImlubGluZS10b29sLW1ldGEiPicrcChGKSsiPC9zcGFuPiI6IiIsUT12PyJpbmxpbmUtdG9vbC1lcnJvci1pbmxpbmUiOiIiO2omJihRKz0iIGlubGluZS10b29sLW9wZW4iKTt2YXIgc2U9Wj8nZGF0YS10cnVuY2F0ZWQ9InRydWUiIGRhdGEtdG9vbC11c2UtaWQ9IicrcChlLmlkfHwiIikrJyIgJzoiIjtyZXR1cm4nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wgJytRKyciIGRhdGEtZXhwYW5kLWtpbmQ9ImlubGluZS10b29sIiBkYXRhLWV4cGFuZC1rZXk9IicrcChsKSsnIiBkYXRhLXJlc3VsdD0iJytwKFQpKyciIGRhdGEtcHJldmlldz0iJytCKyciIGRhdGEtc3RhdHVzPSInKyh2PyJlcnJvciI6Zz8iZG9uZSI6InBlbmRpbmciKSsnIiAnK3NlKydvbmNsaWNrPSJfX2lubGluZVRvb2xUb2dnbGUodGhpcykiPjxkaXYgY2xhc3M9ImlubGluZS10b29sLXJvdyI+PHNwYW4gY2xhc3M9ImlubGluZS10b29sLXN0YXR1cyI+JytoKyI8L3NwYW4+IittKyc8c3BhbiBjbGFzcz0iaW5saW5lLXRvb2wtdGl0bGUiPicrcChiKSsiPC9zcGFuPiIrbmUrIjwvZGl2PiIrTSsiPC9kaXY+In1mdW5jdGlvbiBhdihlLHQscixpLGEpe3ZhciB1PWUuaW5wdXR8fHt9LHM9dS5jb21tYW5kfHx1LmNtZHx8IiIsbz1jbih0JiZ0LmNvbnRlbnQpLGw9ZS5pZHx8InRvb2wtIityLGM9WXQoInRlcm1pbmFsIixbaSxsfHxhLGFdKSxmPXJ0KGMpLGQ9dCYmdC5pc19lcnJvcix2PXUuZXhpdENvZGUsZz1vLmxlbmd0aD4wLGg9IiI7dD9kP2g9JzxzcGFuIGNsYXNzPSJ0ZXJtLXN0YXR1cy1kb3QgdGVybS1lcnJvciI+PC9zcGFuPic6dj09PTB8fHY9PT12b2lkIDA/aD0nPHNwYW4gY2xhc3M9InRlcm0tc3RhdHVzLWRvdCB0ZXJtLXN1Y2Nlc3MiPjwvc3Bhbj4nOmg9JzxzcGFuIGNsYXNzPSJ0ZXJtLXN0YXR1cy1kb3QgdGVybS13YXJuIj48L3NwYW4+JzpoPSc8c3BhbiBjbGFzcz0idGVybS1zdGF0dXMtZG90IHRlcm0tcnVubmluZyI+PC9zcGFuPic7Zm9yKHZhciBtPSc8c3BhbiBjbGFzcz0idGVybS1wcm9tcHQiPiQ8L3NwYW4+JyxiPXAocyksRj1vLnNwbGl0KGAKYCksdz0iIixFPTA7RTxGLmxlbmd0aDtFKyspe3ZhciBBPUZbRV07IUEmJkU9PT1GLmxlbmd0aC0xfHwodys9JzxkaXYgY2xhc3M9InRlcm0tbGluZSI+JytwKEEpKyI8L2Rpdj4iKX12YXIgeD0iIjtpZih0JiZ2IT09dm9pZCAwKXt2YXIgST12PT09MD8idGVybS1leGl0LXN1Y2Nlc3MiOiJ0ZXJtLWV4aXQtZXJyb3IiO3g9JzxkaXYgY2xhc3M9InRlcm0tZXhpdCAnK0krJyI+ZXhpdCAnK3YrIjwvZGl2PiJ9dmFyIF89cy5sZW5ndGg+ODA/cy5zbGljZSgwLDc3KSsiXHUyMDI2IjpzLFY9Zj09PW51bGw/QW4oInRlcm1pbmFsIik6ZixZPXQmJnQuX3RydW5jYXRlZD09PSEwLEw9WT8nIGRhdGEtdHJ1bmNhdGVkPSJ0cnVlIiBkYXRhLXRvb2wtdXNlLWlkPSInK3AoZS5pZHx8IiIpKyciJzoiIjtyZXR1cm4nPGRpdiBjbGFzcz0iaW5saW5lLXRlcm1pbmFsIiBkYXRhLWV4cGFuZC1raW5kPSJ0ZXJtaW5hbCIgZGF0YS1leHBhbmQta2V5PSInK3AoYykrJyIgZGF0YS1leHBhbmRlZD0iJysoVj8idHJ1ZSI6ImZhbHNlIikrJyInK0wrJz48ZGl2IGNsYXNzPSJ0ZXJtLWhlYWRlciIgb25jbGljaz0iX190ZXJtaW5hbEV4cGFuZCh0aGlzKSI+JytoKyc8c3BhbiBjbGFzcz0idGVybS1jbWQtcHJldmlldyI+PHNwYW4gY2xhc3M9InRlcm0tcHJvbXB0Ij4kPC9zcGFuPiAnK3AoXykrJzwvc3Bhbj48c3BhbiBjbGFzcz0idGVybS10b2dnbGUtaWNvbiI+JysoVj8iXHUyNUJDIjoiXHUyNUI2IikrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ0ZXJtLWJvZHkiIHN0eWxlPSJkaXNwbGF5OicrKFY/ImJsb2NrIjoibm9uZSIpKyc7Ij48ZGl2IGNsYXNzPSJ0ZXJtLWNvbW1hbmQiPjxzcGFuIGNsYXNzPSJ0ZXJtLXByb21wdCI+JDwvc3Bhbj4gJytiKyI8L2Rpdj4iKyh3Pyc8ZGl2IGNsYXNzPSJ0ZXJtLW91dHB1dCI+Jyt3KyI8L2Rpdj4iOiIiKSt4KyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIGNuKGUpe3JldHVybiBlP3R5cGVvZiBlPT0ic3RyaW5nIj9lOkFycmF5LmlzQXJyYXkoZSk/ZS5tYXAoZnVuY3Rpb24odCl7aWYoIXR8fHR5cGVvZiB0IT0ib2JqZWN0IilyZXR1cm4iIjtpZih0LnR5cGU9PT0idGV4dCImJnR5cGVvZiB0LnRleHQ9PSJzdHJpbmciKXJldHVybiB0LnRleHQ7dHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeSh0KX1jYXRjaHtyZXR1cm4iIn19KS5maWx0ZXIoQm9vbGVhbikuam9pbihgCmApOiIiOiIifWZ1bmN0aW9uIHV2KGUsdCxyLGksYSl7dmFyIHU9ZS5pbnB1dHx8e30scz11LmZpbGVfcGF0aHx8dS5wYXRofHwiIixvPXMuc3BsaXQoIi8iKS5wb3AoKXx8cyxsPWUuaWR8fCJ0b29sLSIrcisiLSIrKHR5cGVvZiBhPT0ibnVtYmVyIj9hOjApLGM9dS5vbGRfc3RyaW5nfHwiIixmPXUubmV3X3N0cmluZ3x8dS5jb250ZW50fHwiIixkPXUub2xkX2NvbnRlbnR8fCIiLHY9dS5uZXdfY29udGVudHx8IiIsZz1yPT09IldyaXRlInx8cj09PSJNdWx0aUVkaXQiLGg9dCYmdC5pc19lcnJvcixtPWNuKHQmJnQuY29udGVudCksYj0hIShtJiZtLnRyaW0oKS5sZW5ndGg+MCksRj0iIix3PSIiO2c/dz0nPGRpdiBjbGFzcz0iZGlmZi1saW5lIGRpZmYtYWRkIj4rICcrcCh2KSsiPC9kaXY+IjooYyYmKEY9JzxkaXYgY2xhc3M9ImRpZmYtbGluZSBkaWZmLXJlbW92ZSI+LSAnK3AoYykrIjwvZGl2PiIpLGYmJih3PSc8ZGl2IGNsYXNzPSJkaWZmLWxpbmUgZGlmZi1hZGQiPisgJytwKGYpKyI8L2Rpdj4iKSk7dmFyIEU9IiIsQT0iIjt0P2g/KEU9ImRpZmYtZXJyb3IiLEE9bS5pbmRleE9mKCJoYXZlbid0IGdyYW50ZWQiKSE9PS0xfHxtLmluZGV4T2YoInBlcm1pc3Npb24iKSE9PS0xPyJcdTdCNDlcdTVGODVcdTYzODhcdTY3NDMiOiJcdTU5MzFcdThEMjUiKTooRT0iZGlmZi1zdWNjZXNzIixBPSJcdTVERjJcdTRGRUVcdTY1MzkiKTooRT0iZGlmZi1wZW5kaW5nIixBPSJcdTYyNjdcdTg4NENcdTRFMkQiKTt2YXIgeD1ZdCgiZGlmZiIsW2ksbHx8YSxhXSksST1ydCh4KSxfPUFuKCJlZGl0Q2FyZHMiKSxWPUk9PT1udWxsP0U9PT0iZGlmZi1wZW5kaW5nInx8XzpJLFk9Vj8iIjoiIGNvbGxhcHNlZCIsTD1GJiZ3LEI9TD8iZGlmZi1jb2wtaGFsZiI6ImRpZmYtY29sLWZ1bGwiO3JldHVybic8ZGl2IGNsYXNzPSJpbmxpbmUtZGlmZicrWSsnIiBkYXRhLXRvb2wtbmFtZT0iJytwKHIpKyciIGRhdGEtZXhwYW5kLWtpbmQ9ImRpZmYiIGRhdGEtZXhwYW5kLWtleT0iJytwKHgpKyciIGRhdGEtdG9vbC11c2UtaWQ9IicrcChsKSsnIj48ZGl2IGNsYXNzPSJkaWZmLWhlYWRlciIgb25jbGljaz0iX190Y1RvZ2dsZShldmVudCx0aGlzKSI+PHNwYW4gY2xhc3M9ImRpZmYtZmlsZS1pY29uIj48L3NwYW4+PHNwYW4gY2xhc3M9ImRpZmYtZmlsZS1uYW1lIj4nK3AobykrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZGlmZi1wYXRoIj4nK3AocykrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZGlmZi1zdGF0dXMgJytFKyciPicrQSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJkaWZmLXRvZ2dsZSI+XHUyNUJDPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImRpZmYtYm9keSI+PGRpdiBjbGFzcz0iZGlmZi1jb2x1bW5zIj4nKyhMPyc8ZGl2IGNsYXNzPSJkaWZmLWNvbCAnK0IrJyI+PGRpdiBjbGFzcz0iZGlmZi1jb2wtbGFiZWwiPlx1NjVFNzwvZGl2PicrRisiPC9kaXY+IjoiIikrJzxkaXYgY2xhc3M9ImRpZmYtY29sICcrQisnIj48ZGl2IGNsYXNzPSJkaWZmLWNvbC1sYWJlbCI+JysoTD8iXHU2NUIwIjoiIikrIjwvZGl2PiIrKHd8fEYpKyI8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIGtvKGUsdCl7cmV0dXJuIGU/JzxwcmUgY2xhc3M9ImlubGluZS10b29sLXJlc3VsdC10ZXh0IiBzdHlsZT0ibWF4LWhlaWdodDogMzAwcHg7IG92ZXJmbG93LXk6IGF1dG87Ij4nK3AoZSkrIjwvcHJlPiI6JzxzcGFuIGNsYXNzPSJpbmxpbmUtdG9vbC1lbXB0eSI+XHU2NUUwXHU4RjkzXHU1MUZBPC9zcGFuPid9ZnVuY3Rpb24gc3YoZSx0LHIsaSl7dmFyIGE9ZS5uYW1lfHwidW5rbm93biIsdT1lLmlkfHwidG9vbC0iK2ErIi0iKyh0eXBlb2Ygcj09Im51bWJlciI/cjowKSxzPWx2KGEsZS5pbnB1dCk7aWYoYT09PSJSZWFkInx8YT09PSJHbG9iInx8YT09PSJHcmVwInx8YT09PSJXZWJGZXRjaCJ8fGE9PT0iV2ViU2VhcmNoInx8YT09PSJUb2RvUmVhZCIpcmV0dXJuIGl2KGUsdCxhLHMsIiIsaSxyKTtpZihhPT09IkJhc2giKXJldHVybiBhdihlLHQsYSxpLHIpO2lmKGE9PT0iRWRpdCJ8fGE9PT0iV3JpdGUifHxhPT09Ik11bHRpRWRpdCIpcmV0dXJuIHV2KGUsdCxhLGkscik7aWYoYT09PSJBc2tVc2VyUXVlc3Rpb24iJiZlLmlucHV0JiZlLmlucHV0LnF1ZXN0aW9ucyl7dmFyIG89ZS5pbnB1dC5xdWVzdGlvbnM7aWYobyYmby5sZW5ndGg+MCl7Zm9yKHZhciBsPSEhdCxjPW4uYXNrVXNlclNlbGVjdGlvbnNbdV18fHt9LGY9ISFjLnN1Ym1pdHRlZCxkPWw/Y24odC5jb250ZW50KToiIix2PWQ/ZC50cmltKCkuc3BsaXQoYApgKTpbXSxnPSIiLGg9MDtoPG8ubGVuZ3RoO2grKylpZihvW2hdLmhlYWRlcil7Zz1vW2hdLmhlYWRlcjticmVha312YXIgbT1nPyc8c3BhbiBjbGFzcz0idG9vbC11c2Utc3VtbWFyeSI+JytwKGcpKyI8L3NwYW4+IjoiIixiPSIiO28uZm9yRWFjaChmdW5jdGlvbihPLHope3ZhciBpZT0hIU8ubXVsdGlTZWxlY3QsVGU9Ty5xdWVzdGlvbj8nPGRpdiBjbGFzcz0iYXNrLXVzZXItdGl0bGUiPicrcChPLnF1ZXN0aW9uKSsiPC9kaXY+IjoiIixjZT0iIjtPLm9wdGlvbnMmJk8ub3B0aW9ucy5sZW5ndGg+MCYmKGNlPSc8ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb25zIiBkYXRhLW11bHRpLXNlbGVjdD0iJytpZSsnIj4nLE8ub3B0aW9ucy5mb3JFYWNoKGZ1bmN0aW9uKGFlLGtlKXt2YXIgcHQ9YWUubGFiZWw/cChhZS5sYWJlbCk6Ilx1OTAwOVx1OTg3OSAiKyhrZSsxKSxzdD1hZS5kZXNjcmlwdGlvbj8nPGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWRlc2MiPicrcChhZS5kZXNjcmlwdGlvbikrIjwvZGl2PiI6IiI7aWYobCl7dmFyIEF0PXZbel18fHZbMF18fCIiLFVlPUF0LnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKFllKXtyZXR1cm4gWWUudHJpbSgpfSksb3Q9VWUuaW5kZXhPZihhZS5sYWJlbHx8IiIpIT09LTE7Y2UrPSc8ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24gYXNrLXVzZXItb3B0aW9uLXJlYWRvbmx5Jysob3Q/IiBhc2stdXNlci1vcHRpb24tY2hvc2VuIjoiIikrJyI+PHNwYW4gY2xhc3M9ImFzay11c2VyLWluZGljYXRvciI+PC9zcGFuPjxkaXYgY2xhc3M9ImFzay11c2VyLW9wdGlvbi1jb250ZW50Ij48ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24tbGFiZWwiPicrcHQrIjwvZGl2PiIrc3QrIjwvZGl2PjwvZGl2PiJ9ZWxzZXt2YXIgS2U9KGNbel18fFtdKS5pbmRleE9mKGtlKSE9PS0xLHh0PWY/IiBkaXNhYmxlZCI6IiI7Y2UrPSc8YnV0dG9uIGNsYXNzPSJhc2stdXNlci1vcHRpb24nKyhLZT8iIHNlbGVjdGVkIjoiIikrJyIgZGF0YS1vcHRpb24taW5kZXg9Iicra2UrJyIgZGF0YS1xdWVzdGlvbi1pbmRleD0iJyt6KyciIGRhdGEtb3B0aW9uLWxhYmVsPSInK3AoYWUubGFiZWx8fCJcdTkwMDlcdTk4NzkgIisoa2UrMSkpK2AiIG9uY2xpY2s9Il9fYXNrU2VsZWN0KCdgK3AodSkrIicsIit6KyIsIitrZSsiLCIraWUrJykiJyt4dCsnPjxzcGFuIGNsYXNzPSJhc2stdXNlci1pbmRpY2F0b3IiPjwvc3Bhbj48ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24tY29udGVudCI+PGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWxhYmVsIj4nK3B0KyI8L2Rpdj4iK3N0KyI8L2Rpdj48L2J1dHRvbj4ifX0pLGNlKz0iPC9kaXY+IiksYis9JzxkaXYgY2xhc3M9ImFzay11c2VyLXF1ZXN0aW9uLWdyb3VwIiBkYXRhLXF1ZXN0aW9uLWluZGV4PSInK3orJyI+JytUZStjZSsiPC9kaXY+In0pO3ZhciBGPSIiO2lmKCFsKXtmb3IodmFyIHc9ITAsRT0wO0U8by5sZW5ndGg7RSsrKWlmKCFjW0VdfHxjW0VdLmxlbmd0aD09PTApe3c9ITE7YnJlYWt9dmFyIEE9IXd8fGY/IiBkaXNhYmxlZCI6IiIseD1mPyIgYXNrLXVzZXItc3VibWl0dGVkIjoiIixJPWY/Ilx1NURGMlx1NjNEMFx1NEVBNC4uLiI6Ilx1Nzg2RVx1OEJBNFx1NjNEMFx1NEVBNCI7Rj0nPGRpdiBjbGFzcz0iYXNrLXVzZXItYWN0aW9ucyI+PGJ1dHRvbiBjbGFzcz0iYXNrLXVzZXItc3VibWl0Jyt4KyciIGRhdGEtdG9vbC11c2UtaWQ9IicrcCh1KStgIiBvbmNsaWNrPSJfX2Fza1N1Ym1pdCgnYCtwKHUpK2AnKSJgK0ErIj4iK0krIjwvYnV0dG9uPjwvZGl2PiJ9dmFyIF89IiI7aWYobCYmZCl7dmFyIFY9ZC50cmltKCkucmVwbGFjZSgvXG4vZywiLCAiKTtWLmxlbmd0aD40MCYmKFY9Vi5zbGljZSgwLDM3KSsiLi4uIiksXz0nPHNwYW4gY2xhc3M9InRvb2wtdXNlLWZpbGUiPicrcChWKSsiPC9zcGFuPiJ9dmFyIFk9WXQoInRvb2wtY2FyZCIsW2ksdV0pLEw9cnQoWSksQj1MPT09bnVsbD8hbDpMLFQ9Qj8iIjoiIGNvbGxhcHNlZCIsTT1sPyIgYXNrLXVzZXItYW5zd2VyZWQiOiIiO3JldHVybic8ZGl2IGNsYXNzPSJ0b29sLXVzZS1jYXJkIGFzay11c2VyJytNK1QrJyIgZGF0YS10b29sLXVzZS1pZD0iJytwKHUpKyciIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtY2FyZCIgZGF0YS1leHBhbmQta2V5PSInK3AoWSkrJyI+PGRpdiBjbGFzcz0idG9vbC11c2UtaGVhZGVyIiBkYXRhLXRvb2wtdG9nZ2xlIG9uY2xpY2s9Il9fdGNUb2dnbGUoZXZlbnQsdGhpcykiPjxzcGFuIGNsYXNzPSJ0b29sLXVzZS1pY29uIj4nKyhsPyJcdTI3MTMiOiI/IikrJzwvc3Bhbj48c3BhbiBjbGFzcz0idG9vbC11c2UtbmFtZSI+XHU2M0QwXHU5NUVFPC9zcGFuPicrbStfKyc8c3BhbiBjbGFzcz0idG9vbC11c2UtdG9nZ2xlIj5cdTI1QkM8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idG9vbC11c2UtYm9keSBhc2stdXNlci1ib2R5Ij4nK2IrRisiPC9kaXY+PC9kaXY+In19dmFyIGo9ZS5kZXNjcmlwdGlvbnx8ZS5pbnB1dCYmZS5pbnB1dC5kZXNjcmlwdGlvbnx8IiIsWj1vdihlLm5hbWUsZS5pbnB1dCksbmU9IiIsUT0iIjtqPyhuZT1qLmxlbmd0aD44MD9qLnNsaWNlKDAsNzcpKyIuLi4iOmoscyYmKFE9JzxzcGFuIGNsYXNzPSJ0b29sLXVzZS1maWxlIj4nK3AocykrIjwvc3Bhbj4iKSk6KG5lPVBhKGEpLHMmJihRPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtZmlsZSI+JytwKHMpKyI8L3NwYW4+IiksWiYmKFErPSc8c3BhbiBjbGFzcz0idG9vbC11c2Utc3VtbWFyeSI+JytwKFopKyI8L3NwYW4+IikpO3ZhciBzZT1lLmlucHV0P0pTT04uc3RyaW5naWZ5KGUuaW5wdXQsbnVsbCwyKToie30iLGVlPSJsb2FkaW5nIixTPSc8c3BhbiBjbGFzcz0idG9vbC11c2Utc3Bpbm5lciI+PC9zcGFuPicsTj0iIjtpZih0KXt2YXIgVz10LmlzX2Vycm9yLEc9Y24odC5jb250ZW50KTtlZT1XPyJlcnJvciI6InN1Y2Nlc3MiLFM9QW8oYSk7dmFyIFU9RyYmRy50cmltKCkubGVuZ3RoPjA7VT9OPSc8cHJlIGNsYXNzPSJ0b29sLXVzZS1yZXN1bHQtY29udGVudCI+JytwKEcpKyI8L3ByZT4iOk49JzxzcGFuIGNsYXNzPSJ0b29sLXVzZS1yZXN1bHQtZW1wdHkiPlx1NjVFMFx1OEY5M1x1NTFGQTwvc3Bhbj4nfWVsc2UgUz1BbyhhKTt2YXIgJD1ZdCgidG9vbC1jYXJkIixbaSx1XSksb2U9cnQoJCksbGU9QW4oImVkaXRDYXJkcyIpLHJlPW9lPT09bnVsbD9lZT09PSJsb2FkaW5nInx8bGU6b2UsQmU9dCYmdC5fdHJ1bmNhdGVkPT09ITAsRGU9cmU/IiI6IiBjb2xsYXBzZWQiLGJlPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtdG9nZ2xlIj5cdTI1QkM8L3NwYW4+JztyZXR1cm4nPGRpdiBjbGFzcz0idG9vbC11c2UtY2FyZCAnK2VlK0RlKyciIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtY2FyZCIgZGF0YS1leHBhbmQta2V5PSInK3AoJCkrJyIgZGF0YS10b29sLXVzZS1pZD0iJytwKHUpKyciJysoQmU/JyBkYXRhLXRydW5jYXRlZD0idHJ1ZSInOiIiKSsnPjxkaXYgY2xhc3M9InRvb2wtdXNlLWhlYWRlciIgZGF0YS10b29sLXRvZ2dsZSBvbmNsaWNrPSJfX3RjVG9nZ2xlKGV2ZW50LHRoaXMpIj48c3BhbiBjbGFzcz0idG9vbC11c2UtaWNvbiI+JytTKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRvb2wtdXNlLW5hbWUiPicrcChuZSkrIjwvc3Bhbj4iK1ErYmUrJzwvZGl2PjxkaXYgY2xhc3M9InRvb2wtdXNlLWJvZHkiPicrKGo/JzxkaXYgY2xhc3M9InRvb2wtdXNlLW1ldGEiPjxzcGFuIGNsYXNzPSJ0b29sLXVzZS1tZXRhLWxhYmVsIj5cdTVERTVcdTUxNzdcdUZGMUE8L3NwYW4+JytwKGEpKyI8L2Rpdj4iOiIiKSsnPHByZSBjbGFzcz0idG9vbC11c2UtY29udGVudCI+JytwKHNlKSsiPC9wcmU+IisoTj8nPGRpdiBjbGFzcz0idG9vbC11c2UtcmVzdWx0Ij4nK04rIjwvZGl2PiI6IiIpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIFBhKGUpe3ZhciB0PXtSZWFkOiJcdThCRkJcdTUzRDZcdTY1ODdcdTRFRjYiLFdyaXRlOiJcdTUxOTlcdTUxNjVcdTY1ODdcdTRFRjYiLEVkaXQ6Ilx1N0YxNlx1OEY5MVx1NjU4N1x1NEVGNiIsTXVsdGlFZGl0OiJcdTU5MUFcdTU5MDRcdTdGMTZcdThGOTEiLEJhc2g6Ilx1NjI2N1x1ODg0Q1x1NTQ3RFx1NEVFNCIsR3JlcDoiXHU2NDFDXHU3RDIyXHU1MTg1XHU1QkI5IixHbG9iOiJcdTY3RTVcdTYyN0VcdTY1ODdcdTRFRjYiLFdlYkZldGNoOiJcdTgzQjdcdTUzRDZcdTdGNTFcdTk4NzUiLFdlYlNlYXJjaDoiXHU2NDFDXHU3RDIyXHU3RjUxXHU5ODc1IixUYXNrOiJcdTRFRkJcdTUyQTEiLFRvZG9Xcml0ZToiXHU2NkY0XHU2NUIwXHU1Rjg1XHU1MjlFIixUb2RvUmVhZDoiXHU4QkZCXHU1M0Q2XHU1Rjg1XHU1MjlFIixOb3RlYm9va0VkaXQ6Ilx1N0YxNlx1OEY5MVx1N0IxNFx1OEJCMFx1NjcyQyIsQWdlbnQ6Ilx1NUI1MFx1NEVFM1x1NzQwNiIsQXNrVXNlclF1ZXN0aW9uOiJcdTYzRDBcdTk1RUUiLEV4aXQ6Ilx1OTAwMFx1NTFGQSJ9O3JldHVybiB0W2VdfHxlfWZ1bmN0aW9uIEFvKGUpe3ZhciB0PXtSZWFkOiJSIixXcml0ZToiVyIsRWRpdDoiRSIsTXVsdGlFZGl0OiJFIixCYXNoOiIkIixHcmVwOiJHIixHbG9iOiJGIixXZWJGZXRjaDoiXHUyMUUzIixXZWJTZWFyY2g6Ilx1MjFFMiIsVGFzazoiVCIsVG9kb1dyaXRlOiJcdTI2MTAiLFRvZG9SZWFkOiJcdTI2MTEiLE5vdGVib29rRWRpdDoiTiIsQWdlbnQ6IkEiLEV4aXQ6Ilx4RDcifTtyZXR1cm4gdFtlXXx8Ilx4QjcifWZ1bmN0aW9uIG92KGUsdCl7aWYoIXR8fHR5cGVvZiB0IT0ib2JqZWN0IilyZXR1cm4iIjt2YXIgcj1PYmplY3Qua2V5cyh0KTtpZihyLmxlbmd0aD09PTApcmV0dXJuInt9IjtpZihlPT09IlJlYWQiKXJldHVybiJcdThCRkJcdTUzRDZcdTY1ODdcdTRFRjYiO2lmKGU9PT0iV3JpdGUiKXJldHVybiJcdTUxOTlcdTUxNjVcdTY1ODdcdTRFRjYiO2lmKGU9PT0iRWRpdCIpe3ZhciBpPXQuZWRpdHM/dC5lZGl0cy5sZW5ndGg6MDtyZXR1cm4iXHU3RjE2XHU4RjkxICgiK2krIiBcdTU5MDRcdTRGRUVcdTY1MzkpIn1pZihlPT09IkJhc2giKXt2YXIgYT10LmNvbW1hbmR8fCIiO2lmKGEpe3ZhciB1PWEubGVuZ3RoPjYwP2Euc2xpY2UoMCw2MCkrIi4uLiI6YTtyZXR1cm4iXHU1NDdEXHU0RUU0XHVGRjFBIit1fX1pZihlPT09IkdyZXAiKXt2YXIgcz10LnBhdHRlcm58fCIiLG89dC5wYXRofHwiIjtpZihzKXJldHVybiJcdTY0MUNcdTdEMjJcdUZGMUEiK3MrKG8/IiAoXHU1NzI4ICIrbysiKSI6IiIpfWlmKGU9PT0iR2xvYiIpe3ZhciBzPXQucGF0dGVybnx8IiI7aWYocylyZXR1cm4iXHU2N0U1XHU2MjdFXHVGRjFBIitzfWlmKGU9PT0iQWdlbnQiKXt2YXIgbD10LnByb21wdHx8dC50YXNrfHwiIjtpZihsKXt2YXIgYz1sLmxlbmd0aD40MD9sLnNsaWNlKDAsNDApKyIuLi4iOmw7cmV0dXJuIlx1NEVGQlx1NTJBMVx1RkYxQSIrY319aWYoZT09PSJUYXNrIil7dmFyIGw9dC50YXNrfHx0LmRlc2NyaXB0aW9ufHwiIjtpZihsKXt2YXIgYz1sLmxlbmd0aD40MD9sLnNsaWNlKDAsNDApKyIuLi4iOmw7cmV0dXJuIlx1NEVGQlx1NTJBMVx1RkYxQSIrY319aWYoZT09PSJUb2RvV3JpdGUiKXt2YXIgZj10LnRvZG9zfHxbXTtyZXR1cm4iXHU2NkY0XHU2NUIwXHU1Rjg1XHU1MjlFICgiK2YubGVuZ3RoKyIgXHU5ODc5KSJ9aWYoZT09PSJXZWJTZWFyY2giKXt2YXIgZD10LnF1ZXJ5fHwiIjtpZihkKXJldHVybiJcdTY0MUNcdTdEMjJcdUZGMUEiK2R9dmFyIHY9clswXSxnPXRbdl07aWYodHlwZW9mIGc9PSJzdHJpbmciKXt2YXIgaD1nLmxlbmd0aD41MD9nLnNsaWNlKDAsNTApKyIuLi4iOmc7cmV0dXJuIHYrIjogIitofXJldHVybiByLmxlbmd0aCsiIFx1NEUyQVx1NTNDMlx1NjU3MCJ9ZnVuY3Rpb24gbHYoZSx0KXtpZighdClyZXR1cm4gbnVsbDt2YXIgcj10LmZpbGVfcGF0aHx8dC5wYXRofHx0LmN3ZDtyZXR1cm4gcj9yLmxlbmd0aD41MD8iLi4uIityLnNsaWNlKC00Nyk6cjpudWxsfWZ1bmN0aW9uIGN2KGUpe2lmKCFlKXJldHVybiIiO2Zvcih2YXIgdD1gCmAscj1lLnNwbGl0KHQpLGk9W10sYT0hMSx1PTA7dTxyLmxlbmd0aDt1Kyspe3ZhciBzPXJbdV0sbz1zLnRyaW0oKTtpZighKCFhJiYhbykpe2lmKGE9ITAsby5pbmRleE9mKCJcdTIzRkEiKT09PTAmJm8ubGVuZ3RoPjIpe2kucHVzaChvLnNsaWNlKDEpLnRyaW0oKSk7Y29udGludWV9aWYoby5pbmRleE9mKCJcdTI1Q0YiKT09PTApe2lmKG89by5zbGljZSgxKS50cmltKCksIW8pY29udGludWU7cz1vfWkucHVzaChzKX19Zm9yKDtpLmxlbmd0aD4wJiYhaVtpLmxlbmd0aC0xXS50cmltKCk7KWkucG9wKCk7Zm9yKHZhciBsPVtdLGM9e30sZj0wO2Y8aS5sZW5ndGg7ZisrKXt2YXIgZD1pW2ZdLnJlcGxhY2UoL1xzKy9nLCIiKTtkLmxlbmd0aD41JiZjW2RdfHwoZC5sZW5ndGg+NSYmKGNbZF09ITApLGwucHVzaChpW2ZdKSl9cmV0dXJuIGwuam9pbih0KX1mdW5jdGlvbiB4byhlKXt2YXIgdD1gCmAscj1lLnNwbGl0KHQpLGk9W10sYT0wO2Z1bmN0aW9uIHUobSl7dmFyIGI9bS50cmltKCk7cmV0dXJuIGIuY2hhckF0KDApPT09InwiJiYoYj1iLnNsaWNlKDEpKSxiLmNoYXJBdChiLmxlbmd0aC0xKT09PSJ8IiYmKGI9Yi5zbGljZSgwLC0xKSksYi5zcGxpdCgifCIpfWZ1bmN0aW9uIHMobSl7cmV0dXJuIG0/JyBzdHlsZT0idGV4dC1hbGlnbjonK20rJyInOiIifWZ1bmN0aW9uIG8obSxiLEYpe3ZhciB3PSI8dGhlYWQ+PHRyPiIrbS5tYXAoZnVuY3Rpb24oQSx4KXtyZXR1cm4iPHRoIitzKGJbeF0pKyI+IitBLnRyaW0oKSsiPC90aD4ifSkuam9pbigiIikrIjwvdHI+PC90aGVhZD4iLEU9Ri5sZW5ndGg/Ijx0Ym9keT4iK0YubWFwKGZ1bmN0aW9uKEEpe3JldHVybiI8dHI+IitBLm1hcChmdW5jdGlvbih4LEkpe3JldHVybiI8dGQiK3MoYltJXSkrIj4iK3gudHJpbSgpKyI8L3RkPiJ9KS5qb2luKCIiKSsiPC90cj4ifSkuam9pbigiIikrIjwvdGJvZHk+IjoiIjtyZXR1cm4nPGRpdiBjbGFzcz0ibWQtdGFibGUtd3JhcCI+PHRhYmxlIGNsYXNzPSJtZC10YWJsZSI+Jyt3K0UrIjwvdGFibGU+PC9kaXY+In1mb3IoO2E8ci5sZW5ndGg7KXt2YXIgbD1yW2FdO2lmKGwuaW5kZXhPZigifCIpIT09LTEmJmErMTxyLmxlbmd0aCl7dmFyIGM9clthKzFdLnRyaW0oKTtpZigvXlx8P1xzKjo/LSs6PyhccypcfFxzKjo/LSs6PykrXHMqXHw/JC8udGVzdChjKSl7Zm9yKHZhciBmPXUobCksZD11KGMpLm1hcChmdW5jdGlvbihtKXt2YXIgYj1tLnRyaW0oKSxGPWIuY2hhckF0KDApPT09IjoiLHc9Yi5jaGFyQXQoYi5sZW5ndGgtMSk9PT0iOiI7cmV0dXJuIEYmJnc/ImNlbnRlciI6dz8icmlnaHQiOkY/ImxlZnQiOiIifSksdj1bXSxnPWErMjtnPHIubGVuZ3RoOyl7dmFyIGg9cltnXS50cmltKCk7aWYoIWh8fGguaW5kZXhPZigifCIpPT09LTEpYnJlYWs7di5wdXNoKHUocltnXSkpLGcrPTF9aS5wdXNoKCIiLG8oZixkLHYpLCIiKSxhPWc7Y29udGludWV9fWkucHVzaChsKSxhKz0xfXJldHVybiBpLmpvaW4odCl9ZnVuY3Rpb24gSGEoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9cChlKSxyPSJgIixpPWAKYDtmdW5jdGlvbiBhKFMsTixXLEcpe2Zvcih2YXIgVT0wOzspe3ZhciAkPVMuaW5kZXhPZihOLFUpO2lmKCQ9PT0tMSlicmVhazt2YXIgb2U9Uy5pbmRleE9mKE4sJCtOLmxlbmd0aCk7aWYob2U9PT0tMSlicmVhazt2YXIgbGU9Uy5zbGljZSgkK04ubGVuZ3RoLG9lKTtpZighbGUpe1U9b2UrTi5sZW5ndGg7Y29udGludWV9dmFyIHJlPVcrbGUrRztTPVMuc2xpY2UoMCwkKStyZStTLnNsaWNlKG9lK04ubGVuZ3RoKSxVPSQrcmUubGVuZ3RofXJldHVybiBTfWZ1bmN0aW9uIHUoUyl7cmV0dXJuIFM+PTQ4JiZTPD01N3x8Uz49NjUmJlM8PTkwfHxTPj05NyYmUzw9MTIyfHxTPT09OTV9ZnVuY3Rpb24gcyhTLE4sVyl7Zm9yKHZhciBHPTA7RzxTLmxlbmd0aDspe3ZhciBVPVMuaW5kZXhPZigiXyIsRyk7aWYoVT09PS0xKWJyZWFrO3ZhciAkPVU+MD9TLmNoYXJDb2RlQXQoVS0xKTowO2lmKHUoJCkpe0c9VSsxO2NvbnRpbnVlfWZvcih2YXIgb2U9VSsxLGxlPS0xO29lPFMubGVuZ3RoOyl7dmFyIHJlPVMuaW5kZXhPZigiXyIsb2UpO2lmKHJlPT09LTEpYnJlYWs7dmFyIEJlPXJlKzEsRGU9QmU8Uy5sZW5ndGg/Uy5jaGFyQ29kZUF0KEJlKTowO2lmKCF1KERlKSl7bGU9cmU7YnJlYWt9b2U9cmUrMX1pZihsZT09PS0xKWJyZWFrO3ZhciBiZT1TLnNsaWNlKFUrMSxsZSk7aWYoIWJlKXtHPWxlKzE7Y29udGludWV9dmFyIE89TitiZStXO1M9Uy5zbGljZSgwLFUpK08rUy5zbGljZShsZSsxKSxHPVUrTy5sZW5ndGh9cmV0dXJuIFN9ZnVuY3Rpb24gbyhTLE4sVyxHKXtyZXR1cm4gUy5zcGxpdChpKS5tYXAoZnVuY3Rpb24oVSl7cmV0dXJuIFUuaW5kZXhPZihOKSE9PTA/VTpXK1Uuc2xpY2UoTi5sZW5ndGgpK0d9KS5qb2luKGkpfWZ1bmN0aW9uIGwoUyl7cmV0dXJuIFMuc3BsaXQoaSkubWFwKGZ1bmN0aW9uKE4pe3ZhciBXPU4uaW5kZXhPZigiLiAiKTtpZihXPD0wKXJldHVybiBOO2Zvcih2YXIgRz0wO0c8VztHKz0xKXt2YXIgVT1OLmNoYXJDb2RlQXQoRyk7aWYoVTw0OHx8VT41NylyZXR1cm4gTn1yZXR1cm4iPGxpPiIrTi5zbGljZShXKzIpKyI8L2xpPiJ9KS5qb2luKGkpfWZ1bmN0aW9uIGMoUyl7cmV0dXJuIFMuc3BsaXQoaStpKS5tYXAoZnVuY3Rpb24oTil7dmFyIFc9Ti50cmltKCk7cmV0dXJuIFc/Vy5pbmRleE9mKCI8ZGl2Iik9PT0wfHxXLmluZGV4T2YoIjxoMSIpPT09MHx8Vy5pbmRleE9mKCI8aDIiKT09PTB8fFcuaW5kZXhPZigiPGgzIik9PT0wfHxXLmluZGV4T2YoIjxoNCIpPT09MHx8Vy5pbmRleE9mKCI8aDUiKT09PTB8fFcuaW5kZXhPZigiPGg2Iik9PT0wfHxXLmluZGV4T2YoIjx1bCIpPT09MHx8Vy5pbmRleE9mKCI8b2wiKT09PTB8fFcuaW5kZXhPZigiPGxpIik9PT0wfHxXLmluZGV4T2YoIjxibG9ja3F1b3RlIik9PT0wfHxXLmluZGV4T2YoIjxwcmUiKT09PTA/VzoiPHA+IitXLnNwbGl0KGkpLmpvaW4oIjxicj4iKSsiPC9wPiI6IiJ9KS5qb2luKCIiKX1mb3IodmFyIGY9MDs7KXt2YXIgZD10LmluZGV4T2YocityK3IsZik7aWYoZD09PS0xKWJyZWFrO3ZhciB2PXQuaW5kZXhPZihyK3IrcixkKzMpO2lmKHY9PT0tMSlicmVhazt2YXIgZz10LnNsaWNlKGQrMyx2KSxoPWcuaW5kZXhPZihpKSxtPSIiLGI9ZztpZihoIT09LTEmJmg8MzApe2Zvcih2YXIgRj1nLnNsaWNlKDAsaCkudHJpbSgpLHc9Ri5sZW5ndGg+MCxFPTA7RTxGLmxlbmd0aDtFKz0xKXt2YXIgQT1GLmNoYXJDb2RlQXQoRSkseD1BPj00OCYmQTw9NTcsST1BPj02NSYmQTw9OTAsXz1BPj05NyYmQTw9MTIyO2lmKCF4JiYhSSYmIV8pe3c9ITE7YnJlYWt9fXcmJihtPUYsYj1nLnNsaWNlKGgrMSkpfXZhciBWPWR2KGIudHJpbSgpLG0pLFk9Vi5yZXBsYWNlKC9fL2csIiYjOTU7IikucmVwbGFjZSgvXCovZywiJiM0MjsiKSxMPSc8ZGl2IGNsYXNzPSJjb2RlLWJsb2NrIj48ZGl2IGNsYXNzPSJjb2RlLWJsb2NrLWhlYWRlciI+PHNwYW4gY2xhc3M9ImNvZGUtbGFuZyI+JysobXx8ImNvZGUiKSsnPC9zcGFuPjxidXR0b24gY2xhc3M9ImNvZGUtY29weSI+Q29weTwvYnV0dG9uPjwvZGl2PjxwcmU+PGNvZGU+JytZKyI8L2NvZGU+PC9wcmU+PC9kaXY+Ijt0PXQuc2xpY2UoMCxkKStMK3Quc2xpY2UodiszKSxmPWQrTC5sZW5ndGh9Zm9yKGY9MDs7KXt2YXIgQj10LmluZGV4T2YocixmKTtpZihCPT09LTEpYnJlYWs7dmFyIFQ9dC5pbmRleE9mKHIsQisxKTtpZihUPT09LTEpYnJlYWs7aWYoVD09PUIrMSl7Zj1UKzE7Y29udGludWV9dmFyIE09dC5zbGljZShCKzEsVCksaj1NLnJlcGxhY2UoL18vZywiJiM5NTsiKS5yZXBsYWNlKC9cKi9nLCImIzQyOyIpLFo9Jzxjb2RlIGNsYXNzPSJjb2RlLWlubGluZSI+JytqKyI8L2NvZGU+Ijt0PXQuc2xpY2UoMCxCKStaK3Quc2xpY2UoVCsxKSxmPUIrWi5sZW5ndGh9dD1hKHQsIioqIiwiPHN0cm9uZz4iLCI8L3N0cm9uZz4iKSx0PWEodCwiKiIsIjxlbT4iLCI8L2VtPiIpLHQ9cyh0LCI8ZW0+IiwiPC9lbT4iKSx0PW8odCwiIyMjICIsIjxoMz4iLCI8L2gzPiIpLHQ9byh0LCIjIyAiLCI8aDI+IiwiPC9oMj4iKSx0PW8odCwiIyAiLCI8aDE+IiwiPC9oMT4iKSx0PW8odCwiJmd0OyAiLCI8YmxvY2txdW90ZT4iLCI8L2Jsb2NrcXVvdGU+IiksdD1vKHQsIi0gIiwiPGxpPiIsIjwvbGk+IiksdD1vKHQsIiogIiwiPGxpPiIsIjwvbGk+IiksdD1sKHQpLHQ9eG8odCk7dmFyIG5lPXQuc3BsaXQoaSksUT1bXSxzZT1bXTtmdW5jdGlvbiBlZSgpe3NlLmxlbmd0aCYmKFEucHVzaCgiPHVsPiIrc2Uuam9pbigiIikrIjwvdWw+Iiksc2U9W10pfXJldHVybiBuZS5mb3JFYWNoKGZ1bmN0aW9uKFMpe2lmKFMuaW5kZXhPZigiPGxpPiIpPT09MCYmUy5sYXN0SW5kZXhPZigiPC9saT4iKT09PVMubGVuZ3RoLTUpe3NlLnB1c2goUyk7cmV0dXJufWVlKCksUS5wdXNoKFMpfSksZWUoKSx0PWMoUS5qb2luKGkpKSwnPGRpdiBjbGFzcz0ibWFya2Rvd24tY29udGVudCI+Jyt0KyI8L2Rpdj4ifWZ1bmN0aW9uIGR2KGUsdCl7cmV0dXJuIGU9ZS5yZXBsYWNlKC8mL2csIiZhbXA7IikucmVwbGFjZSgvPC9nLCImbHQ7IikucmVwbGFjZSgvPi9nLCImZ3Q7IiksZX1mdW5jdGlvbiB4cihlKXt2YXIgdD1TdHJpbmcoZXx8IiIpLnRyaW0oKTtyZXR1cm4gdC5sZW5ndGg8PTI0P3R8fCJcdTY3MkFcdTkwMDlcdTYyRTlcdTRGMUFcdThCREQiOnQuc2xpY2UoMCwyMSkrIi4uLiJ9ZnVuY3Rpb24gX2EoZSl7cmV0dXJuIFN0cmluZyhlfHwiIikucmVwbGFjZSgvXHJcclxuL2csYFxyCmApLnJlcGxhY2UoL1x1MDAwMC9nLCIiKX1mdW5jdGlvbiBOYSgpe2lmKCFuLmxvZ2luUGVuZGluZyl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhc3N3b3JkIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tYnV0dG9uIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tZXJyb3IiKTshZXx8IXR8fCFyfHwoYWkociksZS5kYXRhc2V0LmVycm9yPSJmYWxzZSIsZS5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsImZhbHNlIiksbi5sb2dpblBlbmRpbmc9ITAsdC5kaXNhYmxlZD0hMCx0LnRleHRDb250ZW50PSJcdTc2N0JcdTVGNTVcdTRFMkQuLi4iLGZldGNoKCIvYXBpL2xvZ2luIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3Bhc3N3b3JkOmUudmFsdWV9KSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5vaz9mZXRjaCgiL2FwaS9jb25maWciLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSk6KGUuZGF0YXNldC5lcnJvcj0idHJ1ZSIsZS5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsInRydWUiKSx6ZShyLCJcdTVCQzZcdTc4MDFcdTk1MTlcdThCRUZcdUZGMENcdThCRjdcdTkxQ0RcdThCRDVcdTMwMDIiKSxQcm9taXNlLnJlamVjdCgiSW52YWxpZCBwYXNzd29yZCIpKX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtuLmNvbmZpZz1pO3ZhciBhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdGF0dXMtZG90IiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RhdHVzLXRleHQiKTtyZXR1cm4gYSYmYS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSx1JiYodS50ZXh0Q29udGVudD0iXHU1REYyXHU3NjdCXHU1RjU1IiksanQoKX0pLnRoZW4oZnVuY3Rpb24oKXskdSgpLFF0KCl9KS5jYXRjaChmdW5jdGlvbihpKXtjb25zb2xlLmVycm9yKCJbd2FuZF0gTG9naW4gZXJyb3I6IixpKSxpIT09IkludmFsaWQgcGFzc3dvcmQiJiYoZS5kYXRhc2V0LmVycm9yPSJ0cnVlIixlLnNldEF0dHJpYnV0ZSgiYXJpYS1pbnZhbGlkIiwidHJ1ZSIpLHplKHIsIlx1NzY3Qlx1NUY1NVx1NTkzMVx1OEQyNVx1RkYwQ1x1OEJGN1x1OTFDRFx1OEJENVx1MzAwMiIpKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtuLmxvZ2luUGVuZGluZz0hMSx0LmRpc2FibGVkPSExLHQudGV4dENvbnRlbnQ9Ilx1OEZEQlx1NTE2NVx1NjNBN1x1NTIzNlx1NTNGMCJ9KSl9fWZ1bmN0aW9uIGphKCl7cmV0dXJuIHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuc3dpdGNoU2VydmVyPT0iZnVuY3Rpb24ifWZ1bmN0aW9uIFNvKCl7aWYoamEoKSl0cnl7V2FuZE5hdGl2ZS5zd2l0Y2hTZXJ2ZXIoKX1jYXRjaHt9fWZ1bmN0aW9uIGZ2KCl7cmV0dXJuIHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuYmFja1RvTmF0aXZlPT0iZnVuY3Rpb24iPyEwOnR5cGVvZiB3aW5kb3cuX193YW5kQmFja1RvTmF0aXZlPT0iZnVuY3Rpb24ifWZ1bmN0aW9uIHB2KCl7dHJ5e2lmKHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuYmFja1RvTmF0aXZlPT0iZnVuY3Rpb24iKXtXYW5kTmF0aXZlLmJhY2tUb05hdGl2ZSgpO3JldHVybn10eXBlb2Ygd2luZG93Ll9fd2FuZEJhY2tUb05hdGl2ZT09ImZ1bmN0aW9uIiYmd2luZG93Ll9fd2FuZEJhY2tUb05hdGl2ZSgpfWNhdGNoe319ZnVuY3Rpb24gSW8oKXtmZXRjaCgiL2FwaS9sb2dvdXQiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS5jYXRjaChmdW5jdGlvbigpe30pLHJzKCksSW4oITEpLEZhKCksbXIoKSxuLmNvbmZpZz1udWxsLG4uc2VsZWN0ZWRJZD1udWxsLHllKCksbi5zZXNzaW9ucz1bXSxuLmNsYXVkZUhpc3Rvcnk9W10sbi5jbGF1ZGVIaXN0b3J5TG9hZGVkPSExLG4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkPSExLG4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlycz17fSxuLnNlc3Npb25zRHJhd2VyT3Blbj0hMSxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSxRdCgpfWZ1bmN0aW9uIGp0KCl7cmV0dXJuIGZuKCl9ZnVuY3Rpb24gdnYoZSl7cmV0dXJuIGU9PT0iZnVsbC1hY2Nlc3MiPyJcdTUxNjhcdTY3NDNcdTk2NTAiOmU9PT0iZGVmYXVsdCI/Ilx1OUVEOFx1OEJBNCI6ZT09PSJuYXRpdmUiPyJcdTUzOUZcdTc1MUYiOmU9PT0iYXV0by1lZGl0Ij8iXHU4MUVBXHU1MkE4XHU3RjE2XHU4RjkxIjplPT09Im1hbmFnZWQiPyJcdTYyNThcdTdCQTEiOmV9ZnVuY3Rpb24gaHQoKXtyZXR1cm4gbi5zZXNzaW9uVG9vbHx8bi5wcmVmZXJyZWRDb21tYW5kfHwiY2xhdWRlIn1mdW5jdGlvbiBtdigpe3ZhciBlPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbih0KXtyZXR1cm4gdC5pZD09PW4uc2VsZWN0ZWRJZH0pO3JldHVybiBlJiZlLnByb3ZpZGVyfHxuLnByZWZlcnJlZENvbW1hbmR8fCJjbGF1ZGUifWZ1bmN0aW9uIFRvKGUsdCl7cmV0dXJuIHQ/Ilx1OTUyRVx1NzZEOFx1OEY5M1x1NTE2NVx1NUMwNlx1NTNEMVx1OTAwMVx1NTIzMFx1N0VDOFx1N0FFRiI6ZSYmKGUuc3RhdHVzPT09ImV4aXRlZCJ8fGUuc3RhdHVzPT09ImZhaWxlZCJ8fGUuc3RhdHVzPT09InN0b3BwZWQiKT9oYShlKT8iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGXHU0RUU1XHU3RUU3XHU3RUVEXHU0RjFBXHU4QkREIjoiXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGIjp1ZShlKSYmZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0PyJcdTU2REVcdTU5MERcdTRFMkRcdUZGMENcdTUzRUZcdTdFRTdcdTdFRURcdThGOTNcdTUxNjUiOiJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYifWZ1bmN0aW9uIExvKGUsdCl7cmV0dXJuIGU9PT0iY29kZXgiPyJDb2RleCBcdTY1MkZcdTYzMDEgUFRZIFx1N0VDOFx1N0FFRlx1NEUwRVx1N0VEM1x1Njc4NFx1NTMxNlx1RkYwOEpTT05MXHVGRjA5XHU0RTI0XHU3OUNEXHU0RjFBXHU4QkREXHVGRjBDXHU3RUQzXHU2Nzg0XHU1MzE2XHU2QTIxXHU1RjBGXHU2MzA5IGZ1bGwtYWNjZXNzIFx1NTQyRlx1NTJBOFx1MzAwMiI6dD09PSJmdWxsLWFjY2VzcyI/Ilx1ODFFQVx1NTJBOFx1Nzg2RVx1OEJBNFx1Njc0M1x1OTY1MFx1OEJGN1x1NkM0Mlx1NEUwRVx1OUFEOFx1Njc0M1x1OTY1MFx1NjRDRFx1NEY1Q1x1RkYwQ1x1OTAwMlx1NTQwOFx1NEY2MFx1Nzg2RVx1OEJBNFx1NzNBRlx1NTg4M1x1NUI4OVx1NTE2OFx1NTQwRVx1NzY4NFx1OEZERVx1N0VFRFx1NEZFRVx1NjUzOVx1MzAwMiI6dD09PSJhdXRvLWVkaXQiPyJcdTRGRERcdTc1NTlcdTRFQTRcdTRFOTJcdTVGMEZcdTRGMUFcdThCRERcdUZGMENcdTU0MENcdTY1RjZcdTY2RjRcdTUwNEZcdTU0MTFcdTc2RjRcdTYzQTVcdTdGMTZcdThGOTFcdTRFRTNcdTc4MDFcdTMwMDIiOnQ9PT0ibmF0aXZlIj8iXHU4QzAzXHU3NTI4IENsYXVkZSBcdTUzOUZcdTc1MUYgQVBJIFx1OEY5M1x1NTFGQVx1RkYwQ1x1OTAwMlx1NTQwOFx1NUZFQlx1OTAxRlx1OTVFRVx1N0I1NFx1NjIxNlx1NEUwMFx1NkIyMVx1NjAyN1x1NzUxRlx1NjIxMFx1MzAwMiI6dD09PSJtYW5hZ2VkIj8iQUkgXHU4MUVBXHU1MkE4XHU1QjhDXHU2MjEwXHU2MjQwXHU2NzA5XHU1REU1XHU0RjVDXHVGRjBDXHU2NUUwXHU5NzAwXHU0RTJEXHU5MDE0XHU3ODZFXHU4QkE0XHVGRjBDXHU5MDAyXHU1NDA4XHU2NzA5XHU2NjBFXHU3ODZFXHU3NkVFXHU2ODA3XHU3Njg0XHU0RUZCXHU1MkExXHUzMDAyIjoiXHU0RkREXHU3NTU5XHU2ODA3XHU1MUM2XHU0RUE0XHU0RTkyXHU2RDQxXHU3QTBCXHVGRjBDXHU5MDAyXHU1NDA4XHU2MjRCXHU1MkE4XHU3ODZFXHU4QkE0XHU2QkNGXHU0RTAwXHU2QjY1XHUzMDAyIn1mdW5jdGlvbiBSYShlKXtyZXR1cm4gZT09PSJjb2RleCI/WyJmdWxsLWFjY2VzcyJdOlsiZGVmYXVsdCIsImZ1bGwtYWNjZXNzIiwiYXV0by1lZGl0IiwibmF0aXZlIiwibWFuYWdlZCJdfWZ1bmN0aW9uIFJ0KGUsdCl7dmFyIHI9UmEoZSk7aWYoci5pbmRleE9mKHQpIT09LTEpcmV0dXJuIHQ7dmFyIGk9bi5jb25maWcmJm4uY29uZmlnLmRlZmF1bHRNb2RlP24uY29uZmlnLmRlZmF1bHRNb2RlOiJkZWZhdWx0IjtyZXR1cm4gci5pbmRleE9mKGkpIT09LTE/aTpyWzBdfWZ1bmN0aW9uIHVnKGUsdCl7cmV0dXJuIFJhKGUpLm1hcChmdW5jdGlvbihyKXt2YXIgaT1NbyhyKTtyZXR1cm4nPG9wdGlvbiB2YWx1ZT0iJytwKHIpKyciJysocj09PXQ/IiBzZWxlY3RlZCI6IiIpKycgdGl0bGU9IicraSsnIj4nK3AodnYocikpKyI8L29wdGlvbj4ifSkuam9pbigiIil9ZnVuY3Rpb24gTW8oZSl7dmFyIHQ9e2RlZmF1bHQ6Ilx1NjgwN1x1NTFDNlx1NkEyMVx1NUYwRiAtIFx1OTcwMFx1ODk4MVx1Nzg2RVx1OEJBNFx1NjU4N1x1NEVGNlx1NEZFRVx1NjUzOSIsImZ1bGwtYWNjZXNzIjoiXHU1QjhDXHU1MTY4XHU4QkJGXHU5NUVFIC0gXHU4MUVBXHU1MkE4XHU3ODZFXHU4QkE0XHU2NzQzXHU5NjUwXHU0RTBFXHU2NENEXHU0RjVDIiwiYXV0by1lZGl0IjoiXHU4MUVBXHU1MkE4XHU3RjE2XHU4RjkxIC0gXHU4MUVBXHU1MkE4XHU3ODZFXHU4QkE0XHU2NTg3XHU0RUY2XHU0RkVFXHU2NTM5IixuYXRpdmU6Ilx1NTM5Rlx1NzUxRlx1NkEyMVx1NUYwRiAtIFx1OEZENFx1NTZERVx1N0VEM1x1Njc4NFx1NTMxNlx1OEY5M1x1NTFGQSIsbWFuYWdlZDoiXHU2MjU4XHU3QkExXHU2QTIxXHU1RjBGIC0gQUkgXHU4MUVBXHU1MkE4XHU1QjhDXHU2MjEwXHU2MjQwXHU2NzA5XHU1REU1XHU0RjVDIn07cmV0dXJuIHRbZV18fCIifWZ1bmN0aW9uIGd2KGUpe3ZhciB0PWUmJmUucHJvdmlkZXI/ZS5wcm92aWRlcjoiY2xhdWRlIjtyZXR1cm4odWUoZSk/Ilx1N0VEM1x1Njc4NFx1NTMxNiI6Ilx1N0VDOFx1N0FFRiIpKyIgXHhCNyAiK3R9ZnVuY3Rpb24gaHYoZSl7cmV0dXJuIHVlKGUpPyJcdTdFRDNcdTY3ODRcdTUzMTYgXHhCNyBcdTU3NTdcdTdFQTdcdThCQjBcdTVGNTUiOmUmJmUucHJvdmlkZXI9PT0iY29kZXgiPyJcdTdFQzhcdTdBRUYgXHhCNyBDb2RleCBQVFlcdUZGMDhjaGF0IFx1NEUzQVx1ODlFM1x1Njc5MFx1ODlDNlx1NTZGRVx1RkYwOSI6Ilx1N0VDOFx1N0FFRiBceEI3IFBUWSBcdTRGMUFcdThCREQifWZ1bmN0aW9uIHl2KGUpe3JldHVybiBlP3VlKGUpfHxlLnByb3ZpZGVyPT09ImNvZGV4IjohMX1mdW5jdGlvbiBxbyhlLHQpe2lmKCFlfHwhZS5pc19lcnJvcnx8IXR8fHQuaXNfZXJyb3IpcmV0dXJuITE7dmFyIHI9Y24oZS5jb250ZW50KS50b0xvd2VyQ2FzZSgpLGk9Y24odC5jb250ZW50KS50b0xvd2VyQ2FzZSgpO3JldHVybiByP3IuaW5kZXhPZigiaW52YWxpZCBwYWdlcyBwYXJhbWV0ZXIiKSE9PS0xJiZpLmxlbmd0aD4wOiExfWZ1bmN0aW9uIHVlKGUpe3JldHVybiEhZSYmKGUuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fGUucnVubmVyPT09ImNsYXVkZS1jbGktcHJpbnQiKX1mdW5jdGlvbiBGaSgpe24uY2hhdE1vZGU9UnQoImNsYXVkZSIsbi5jaGF0TW9kZSk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vZGUtaGludCIpO2UmJihlLnRleHRDb250ZW50PU1vKG4uY2hhdE1vZGUpKSxRbigpfWZ1bmN0aW9uIFdhKGUsdCl7dD10fHx7fTt2YXIgcj10LmtpbmQ9PT0iY29tcGFjdCJ8fHQua2luZD09PSJwb3BvdmVyIj90LmtpbmQ6ImRyb3Bkb3duIixpPWh0KCksYT1uLmNoYXRNb2RlfHwiZGVmYXVsdCIsdT1QbyhlKXx8ImRlZmF1bHQiLHM9Tm8oZSk7ZnVuY3Rpb24gbyhsLGMsZixkKXt2YXIgdj1yPT09ImNvbXBhY3QiPyIiOic8c3BhbiBjbGFzcz0iY2hhdC1tb2RlLXRyaW8tdGFnIj4nK3AoYykrIjwvc3Bhbj4iO3JldHVybic8c3BhbiBjbGFzcz0iY29tcG9zZXItdGV4dC1waWxsIGNoYXQtbW9kZS10cmlvLXBpbGwiIGRhdGEtbW9kZS1jb250cm9sLXBpbGw9IicrbCsnIiB0aXRsZT0iJytwKGMpKyciPicrdisnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXRleHQtbGFiZWwiPicrcChmKSsnPC9zcGFuPjxzZWxlY3QgY2xhc3M9ImNvbXBvc2VyLXRleHQtaGlkZGVuLXNlbGVjdCIgZGF0YS1tb2RlLWNvbnRyb2w9IicrbCsnIiB0YWJpbmRleD0iLTEiIGFyaWEtbGFiZWw9IicrcChjKSsnIj4nK2QrIjwvc2VsZWN0Pjwvc3Bhbj4ifXJldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1vZGUtdHJpbyBjaGF0LW1vZGUtdHJpby0nK3IrJyIgcm9sZT0iZ3JvdXAiIGFyaWEtbGFiZWw9Ilx1NEYxQVx1OEJERFx1OEJCRVx1N0Y2RSI+JytvKCJtb2RlIiwiXHU2QTIxXHU1RjBGIixhLE9vKGksYSkpKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItdGV4dC1zZXAiIGFyaWEtaGlkZGVuPSJ0cnVlIj5ceEI3PC9zcGFuPicrbygibW9kZWwiLCJcdTZBMjFcdTU3OEIiLHUsX28odSxlKSkrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci10ZXh0LXNlcCIgYXJpYS1oaWRkZW49InRydWUiPlx4Qjc8L3NwYW4+JytvKCJ0aGlua2luZyIsIlx1NjAxRFx1ODAwMyIscyxqbyhzKSkrIjwvZGl2PiJ9ZnVuY3Rpb24gUW4oKXt2YXIgZT15dCgpLHQ9aHQoKSxyPW4uY2hhdE1vZGV8fCJkZWZhdWx0IixpPVBvKGUpfHwiZGVmYXVsdCIsYT1ObyhlKSx1PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5jaGF0LW1vZGUtdHJpbyIpO3UuZm9yRWFjaChmdW5jdGlvbihzKXtmdW5jdGlvbiBvKGwsYyxmKXt2YXIgZD1zLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW1vZGUtY29udHJvbC1waWxsPSInK2wrJyJdJyk7aWYoZCl7dmFyIHY9ZC5xdWVyeVNlbGVjdG9yKCIuY29tcG9zZXItdGV4dC1sYWJlbCIpO3YmJih2LnRleHRDb250ZW50PWMpO3ZhciBnPWQucXVlcnlTZWxlY3RvcignW2RhdGEtbW9kZS1jb250cm9sPSInK2wrJyJdJyk7ZyYmKGYmJihnLmlubmVySFRNTD1mKSxnLnZhbHVlIT09YyYmKGcudmFsdWU9YykpfX1vKCJtb2RlIixyLE9vKHQscikpLG8oIm1vZGVsIixpLF9vKGksZSkpLG8oInRoaW5raW5nIixhLGpvKGEpKX0pfWZ1bmN0aW9uIE9vKGUsdCl7cmV0dXJuIFJhKGUpLm1hcChmdW5jdGlvbihyKXtyZXR1cm4nPG9wdGlvbiB2YWx1ZT0iJytwKHIpKyciJysocj09PXQ/IiBzZWxlY3RlZCI6IiIpKyI+IitwKHIpKyI8L29wdGlvbj4ifSkuam9pbigiIil9ZnVuY3Rpb24gUG8oZSl7cmV0dXJuIGUmJmUuc2VsZWN0ZWRNb2RlbD9lLnNlbGVjdGVkTW9kZWw6bi5jaGF0TW9kZWw/bi5jaGF0TW9kZWw6bi5jb25maWcmJm4uY29uZmlnLmRlZmF1bHRNb2RlbD9uLmNvbmZpZy5kZWZhdWx0TW9kZWw6IiJ9ZnVuY3Rpb24gSG8oZSl7dmFyIHQ9ZSYmZS5wcm92aWRlcnx8bi5zZXNzaW9uVG9vbHx8ImNsYXVkZSI7cmV0dXJuIHQ9PT0iY29kZXgiP24uYXZhaWxhYmxlQ29kZXhNb2RlbHN8fFtdOm4uYXZhaWxhYmxlTW9kZWxzfHxbXX1mdW5jdGlvbiBidihlLHQpe2Zvcih2YXIgcj1Ibyh0KSxpPSc8b3B0aW9uIHZhbHVlPSIiPlx1OUVEOFx1OEJBNFx1RkYwOFx1OERERlx1OTY4Rlx1OEJCRVx1N0Y2RVx1RkYwOTwvb3B0aW9uPicsYT0wO2E8ci5sZW5ndGg7YSsrKXt2YXIgdT1yW2FdLHM9dS5sYWJlbHx8dS5pZDtpKz0nPG9wdGlvbiB2YWx1ZT0iJytwKHUuaWQpKyciJysodS5pZD09PWU/IiBzZWxlY3RlZCI6IiIpKyI+IitwKHMpKyI8L29wdGlvbj4ifXJldHVybiBlJiYhci5zb21lKGZ1bmN0aW9uKG8pe3JldHVybiBvLmlkPT09ZX0pJiYoaSs9JzxvcHRpb24gdmFsdWU9IicrcChlKSsnIiBzZWxlY3RlZD4nK3AoZSkrIlx1RkYwOFx1ODFFQVx1NUI5QVx1NEU0OVx1RkYwOTwvb3B0aW9uPiIpLGl9ZnVuY3Rpb24gX28oZSx0KXtmb3IodmFyIHI9SG8odCksaT0nPG9wdGlvbiB2YWx1ZT0iIj5kZWZhdWx0PC9vcHRpb24+JyxhPTA7YTxyLmxlbmd0aDthKyspe3ZhciB1PXJbYV07aSs9JzxvcHRpb24gdmFsdWU9IicrcCh1LmlkKSsnIicrKHUuaWQ9PT1lPyIgc2VsZWN0ZWQiOiIiKSsiPiIrcCh1LmlkKSsiPC9vcHRpb24+In1yZXR1cm4gZSYmIXIuc29tZShmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PWV9KSYmKGkrPSc8b3B0aW9uIHZhbHVlPSInK3AoZSkrJyIgc2VsZWN0ZWQ+JytwKGUpKyI8L29wdGlvbj4iKSxpfWZ1bmN0aW9uICRuKGUpe1FuKCl9dmFyIGRuPVt7aWQ6Im9mZiIsbGFiZWw6Im9mZiIsaGludDoiXHU0RTBEXHU1NDJGXHU3NTI4XHU2MDFEXHU4MDAzXHVGRjA4Q0xJIFx1NjVFMFx1NTI0RFx1N0YwMFx1RkYxQlNESyBcdTUxNzNcdTk1RUQgdGhpbmtpbmdcdUZGMUJDb2RleCBtaW5pbWFsXHVGRjA5In0se2lkOiJzdGFuZGFyZCIsbGFiZWw6InRoaW5rIixoaW50OiJDbGF1ZGUgQ0xJOiB0aGluayBceEI3IFNESyBidWRnZXQgNDA5NiBceEI3IENvZGV4IGxvdyJ9LHtpZDoiZGVlcCIsbGFiZWw6InRoaW5rIGhhcmQiLGhpbnQ6IkNsYXVkZSBDTEk6IHRoaW5rIGhhcmQgXHhCNyBTREsgYnVkZ2V0IDE2MDAwIFx4QjcgQ29kZXggbWVkaXVtIn0se2lkOiJtYXgiLGxhYmVsOiJ1bHRyYXRoaW5rIixoaW50OiJDbGF1ZGUgQ0xJOiB1bHRyYXRoaW5rIFx4QjcgU0RLIGJ1ZGdldCAzMTk5OSBceEI3IENvZGV4IGhpZ2gifV07ZnVuY3Rpb24gRXYoZSl7Zm9yKHZhciB0PTA7dDxkbi5sZW5ndGg7dCsrKWlmKGRuW3RdLmlkPT09ZSlyZXR1cm4gZG5bdF0ubGFiZWw7cmV0dXJuIGRuWzBdLmxhYmVsfWZ1bmN0aW9uIE5vKGUpe3JldHVybiBlJiZlLnRoaW5raW5nRWZmb3J0P2UudGhpbmtpbmdFZmZvcnQ6bi5jaGF0VGhpbmtpbmc/bi5jaGF0VGhpbmtpbmc6Im9mZiJ9ZnVuY3Rpb24gc2coZSl7Zm9yKHZhciB0PWV8fCJvZmYiLHI9IiIsaT0wO2k8ZG4ubGVuZ3RoO2krKyl7dmFyIGE9ZG5baV07cis9JzxvcHRpb24gdmFsdWU9IicrcChhLmlkKSsnIicrKGEuaWQ9PT10PyIgc2VsZWN0ZWQiOiIiKSsnIHRpdGxlPSInK3AoYS5oaW50KSsnIj4nK3AoYS5sYWJlbCkrIjwvb3B0aW9uPiJ9cmV0dXJuIHJ9ZnVuY3Rpb24gam8oZSl7Zm9yKHZhciB0PWV8fCJvZmYiLHI9IiIsaT0wO2k8ZG4ubGVuZ3RoO2krKyl7dmFyIGE9ZG5baV07cis9JzxvcHRpb24gdmFsdWU9IicrcChhLmlkKSsnIicrKGEuaWQ9PT10PyIgc2VsZWN0ZWQiOiIiKSsiPiIrcChhLmlkKSsiPC9vcHRpb24+In1yZXR1cm4gcn1mdW5jdGlvbiBvZyhlKXtRbigpfWZ1bmN0aW9uIEZ2KGUpe3ZhciB0PShlfHwib2ZmIikudHJpbSgpO3QhPT0ib2ZmIiYmdCE9PSJzdGFuZGFyZCImJnQhPT0iZGVlcCImJnQhPT0ibWF4IiYmKHQ9Im9mZiIpLG4uY2hhdFRoaW5raW5nPXQ7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXRoaW5raW5nLWVmZm9ydCIsdCl9Y2F0Y2h7fVFuKCk7dmFyIHI9eXQoKTtyJiZmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChyLmlkKSsiL3RoaW5raW5nLWVmZm9ydCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe3RoaW5raW5nRWZmb3J0OnR9KX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtpZihpJiZpLmVycm9yKXtrKGkuZXJyb3IsImVycm9yIik7cmV0dXJufWkmJmkuaWQmJihYKGkpLHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTVERjJcdTUyMDdcdTYzNjJcdTYwMURcdTgwMDNcdTZERjFcdTVFQTYgXHUyMTkyICIrRXYodCksInN1Y2Nlc3MiKSl9KS5jYXRjaChmdW5jdGlvbigpe2soIlx1NTIwN1x1NjM2Mlx1NjAxRFx1ODAwM1x1NkRGMVx1NUVBNlx1NTkzMVx1OEQyNSIsImVycm9yIil9KX1mdW5jdGlvbiBSbyhlKXtpZighZSlyZXR1cm4hMTt2YXIgdD1lLm1vZGU7cmV0dXJuIHQ9PT0ibWFuYWdlZCJ8fHQ9PT0iZnVsbC1hY2Nlc3MifWZ1bmN0aW9uIHd2KGUpe2lmKCFlfHxSbyhlKSlyZXR1cm4iIjt2YXIgdD0hIWUuYXV0b0FwcHJvdmVQZXJtaXNzaW9ucztyZXR1cm4gdD8nPHNwYW4gaWQ9ImF1dG8tYXBwcm92ZS10b2dnbGUiIGNsYXNzPSJjb21wb3Nlci1waWxsIGNvbXBvc2VyLXBpbGwtY2hpcCBhdXRvLWFwcHJvdmUtaW5kaWNhdG9yIGFjdGl2ZSIgdGl0bGU9Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NTQyRlx1NzUyOCBcdTIwMTQgXHU3MEI5XHU1MUZCXHU1MTczXHU5NUVEIj4nK0soInNoaWVsZENoZWNrIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjcsY2xzOiJjb21wb3Nlci1waWxsLWljb24ifSkrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci1waWxsLWxhYmVsIj5cdTgxRUFcdTUyQTg8L3NwYW4+PC9zcGFuPic6JzxzcGFuIGlkPSJhdXRvLWFwcHJvdmUtdG9nZ2xlIiBjbGFzcz0iY29tcG9zZXItcGlsbCBjb21wb3Nlci1waWxsLWNoaXAgYXV0by1hcHByb3ZlLWluZGljYXRvciIgdGl0bGU9Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NTE3M1x1OTVFRCBcdTIwMTQgXHU3MEI5XHU1MUZCXHU1RjAwXHU1NDJGIj4nK0soInNoaWVsZCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS43LGNsczoiY29tcG9zZXItcGlsbC1pY29uIn0pKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItcGlsbC1sYWJlbCI+XHU2MjRCXHU1MkE4PC9zcGFuPjwvc3Bhbj4nfWZ1bmN0aW9uIFdvKCl7cmV0dXJuIGZldGNoKCIvYXBpL21vZGVscyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUmJkFycmF5LmlzQXJyYXkoZS5tb2RlbHMpJiYobi5hdmFpbGFibGVNb2RlbHM9ZS5tb2RlbHMsbi5hdmFpbGFibGVDb2RleE1vZGVscz1BcnJheS5pc0FycmF5KGUuY29kZXhNb2RlbHMpP2UuY29kZXhNb2RlbHM6W10sJG4oeXQoKSksd2koZSkpLGV9KS5jYXRjaChmdW5jdGlvbigpe3JldHVybiBudWxsfSl9ZnVuY3Rpb24gQ3YoKXtpZihuLm1vZGVsc1JlZnJlc2hpbmcpcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtuLm1vZGVsc1JlZnJlc2hpbmc9ITA7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1kZWZhdWx0LW1vZGVsLXJlZnJlc2giKTtyZXR1cm4gZSYmKGUuZGlzYWJsZWQ9ITAsZS50ZXh0Q29udGVudD0iXHU1MjM3XHU2NUIwXHU0RTJELi4uIiksZmV0Y2goIi9hcGkvbW9kZWxzL3JlZnJlc2giLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQmJkFycmF5LmlzQXJyYXkodC5tb2RlbHMpJiYobi5hdmFpbGFibGVNb2RlbHM9dC5tb2RlbHMsbi5hdmFpbGFibGVDb2RleE1vZGVscz1BcnJheS5pc0FycmF5KHQuY29kZXhNb2RlbHMpP3QuY29kZXhNb2RlbHM6W10sJG4oeXQoKSksd2kodCksdHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoIlx1NkEyMVx1NTc4Qlx1NTIxN1x1ODg2OFx1NURGMlx1NTIzN1x1NjVCMCIrKHQuY2xhdWRlVmVyc2lvbj8iXHVGRjA4Y2xhdWRlICIrdC5jbGF1ZGVWZXJzaW9uKyJcdUZGMDkiOiIiKSwic3VjY2VzcyIpKSx0fSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4gdHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoIlx1NTIzN1x1NjVCMFx1NkEyMVx1NTc4Qlx1NTIxN1x1ODg2OFx1NTkzMVx1OEQyNSIsImVycm9yIiksbnVsbH0pLmZpbmFsbHkoZnVuY3Rpb24oKXtuLm1vZGVsc1JlZnJlc2hpbmc9ITEsZSYmKGUuZGlzYWJsZWQ9ITEsZS50ZXh0Q29udGVudD0iXHU1MjM3XHU2NUIwIil9KX1mdW5jdGlvbiBCdigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJlbnYtcHJldmlldy1tb2RhbCIpO2lmKCFlKXtlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNlY3Rpb24iKSxlLmlkPSJlbnYtcHJldmlldy1tb2RhbCIsZS5jbGFzc05hbWU9Im1vZGFsLWJhY2tkcm9wIGhpZGRlbiIsZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9Im1vZGFsIGVudi1wcmV2aWV3LW1vZGFsIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0iZW52LXByZXZpZXctdGl0bGUiIGFyaWEtbW9kYWw9InRydWUiPjxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+PGRpdj48aDIgY2xhc3M9Im1vZGFsLXRpdGxlIiBpZD0iZW52LXByZXZpZXctdGl0bGUiPlx1NUMwNlx1NkNFOFx1NTE2NVx1NUI1MFx1OEZEQlx1N0EwQlx1NzY4NFx1NzNBRlx1NTg4M1x1NTNEOFx1OTFDRjwvaDI+PHAgY2xhc3M9Im1vZGFsLXN1YnRpdGxlIiBpZD0iZW52LXByZXZpZXctc3VidGl0bGUiPlx1OEZEOVx1NEU5Qlx1NTNEOFx1OTFDRlx1NEYxQVx1ODhBQlx1NEYyMFx1N0VEOSBjbGF1ZGUgLyBjb2RleFx1RkYwOFBUWSBcdTRFMEVcdTdFRDNcdTY3ODRcdTUzMTZcdThGRDBcdTg4NENcdTU2NjhcdTRFMDBcdTgxRjRcdUZGMDlcdTMwMDI8L3A+PC9kaXY+PGJ1dHRvbiBpZD0iZW52LXByZXZpZXctY2xvc2UiIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5IGVudi1wcmV2aWV3LWJvZHkiPjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LXRvb2xiYXIiPjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LW1ldGEiIGlkPSJlbnYtcHJldmlldy1tZXRhIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1jb250cm9scyI+PGlucHV0IGlkPSJlbnYtcHJldmlldy1zZWFyY2giIGNsYXNzPSJlbnYtcHJldmlldy1zZWFyY2giIHR5cGU9InNlYXJjaCIgcGxhY2Vob2xkZXI9Ilx1NjQxQ1x1N0QyMlx1NTNEOFx1OTFDRlx1NTQwRFx1MjAyNiIgLz48bGFiZWwgY2xhc3M9ImVudi1wcmV2aWV3LXJldmVhbCI+PGlucHV0IGlkPSJlbnYtcHJldmlldy1yZXZlYWwtdG9nZ2xlIiB0eXBlPSJjaGVja2JveCIgLz48c3Bhbj5cdTY2M0VcdTc5M0FcdTY1NEZcdTYxMUZcdTUwM0M8L3NwYW4+PC9sYWJlbD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1saXN0IiBpZD0iZW52LXByZXZpZXctbGlzdCIgdGFiaW5kZXg9IjAiPjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9Im1vZGFsLWZvb3RlciBlbnYtcHJldmlldy1mb290ZXIiPjxzcGFuIGNsYXNzPSJlbnYtcHJldmlldy1oaW50Ij5cdTY1NEZcdTYxMUZcdTVCNTdcdTZCQjVcdUZGMDhcdTU0MkIgS0VZL1RPS0VOL1NFQ1JFVCBcdTdCNDlcdUZGMDlcdTlFRDhcdThCQTRcdTYzQTlcdTc4MDFcdUZGMENcdTUzRUZcdTUyRkVcdTkwMDlcdTMwMENcdTY2M0VcdTc5M0FcdTY1NEZcdTYxMUZcdTUwM0NcdTMwMERcdTRFMzRcdTY1RjZcdThGRDhcdTUzOUZcdTMwMDI8L3NwYW4+PGJ1dHRvbiBpZD0iZW52LXByZXZpZXctY2xvc2UtMiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIj5cdTUxNzNcdTk1RUQ8L2J1dHRvbj48L2Rpdj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSksZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obyl7by50YXJnZXQ9PT1lJiZ6YSgpfSk7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctY2xvc2UiKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix6YSk7dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctY2xvc2UtMiIpO3ImJnIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHphKTt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIiNlbnYtcHJldmlldy1zZWFyY2giKTthJiZhLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe1ZvKCl9KTt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoIiNlbnYtcHJldmlldy1yZXZlYWwtdG9nZ2xlIik7aSYmaS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7em8oaS5jaGVja2VkKX0pfWUuY2xhc3NMaXN0LnJlbW92ZSgiY2xvc2luZyIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctcmV2ZWFsLXRvZ2dsZSIpO2kmJihpLmNoZWNrZWQ9ITEpO3ZhciBhPWUucXVlcnlTZWxlY3RvcigiI2Vudi1wcmV2aWV3LXNlYXJjaCIpO2EmJihhLnZhbHVlPSIiKSx6byghMSl9ZnVuY3Rpb24gemEoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW52LXByZXZpZXctbW9kYWwiKTtlJiZZYShlKX1mdW5jdGlvbiB6byhlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW52LXByZXZpZXctbGlzdCIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LW1ldGEiKTt0JiYodC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvZGl2PicpLHImJihyLnRleHRDb250ZW50PSJcdTUyQTBcdThGN0RcdTRFMkRcdTIwMjYiKTt2YXIgaT0iL2FwaS9zZXR0aW5ncy9lbnYtcHJldmlldyIrKGU/Ij9yZXZlYWw9MSI6IiIpO2ZldGNoKGkse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoIWF8fCFBcnJheS5pc0FycmF5KGEuZW50cmllcykpe3QmJih0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZW52LXByZXZpZXctZW1wdHkiPlx1OEJGQlx1NTNENlx1NTkzMVx1OEQyNVx1MzAwMjwvZGl2PicpLHImJihyLnRleHRDb250ZW50PSJcdThCRkJcdTUzRDZcdTU5MzFcdThEMjUiKTtyZXR1cm59aWYobi5fZW52UHJldmlldz1hLHIpe3ZhciB1PWEuaW5oZXJpdEVudj8iXHU3RUU3XHU2MjdGXHU3MjM2XHU4RkRCXHU3QTBCIjoiXHU2NzAwXHU1QzBGXHU3NjdEXHU1NDBEXHU1MzU1IjtyLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9ImVudi1wcmV2aWV3LXBpbGwgJysoYS5pbmhlcml0RW52PyJpcy1pbmhlcml0IjoiaXMtbWluaW1hbCIpKyciPicrdSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJlbnYtcHJldmlldy1jb3VudCI+XHU1MTcxICcrYS50b3RhbCsiIFx1OTg3OTwvc3Bhbj4ifVZvKCl9KS5jYXRjaChmdW5jdGlvbigpe3QmJih0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZW52LXByZXZpZXctZW1wdHkiPlx1OEJGQlx1NTNENlx1NTkzMVx1OEQyNVx1RkYwQ1x1OEJGN1x1N0EwRFx1NTQwRVx1OTFDRFx1OEJENVx1MzAwMjwvZGl2PicpLHImJihyLnRleHRDb250ZW50PSJcdThCRkJcdTUzRDZcdTU5MzFcdThEMjUiKX0pfWZ1bmN0aW9uIFZvKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LWxpc3QiKTtpZihlKXt2YXIgdD1uLl9lbnZQcmV2aWV3O2lmKCF0fHwhQXJyYXkuaXNBcnJheSh0LmVudHJpZXMpKXtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZW52LXByZXZpZXctZW1wdHkiPlx1NUMxQVx1NjcyQVx1NTJBMFx1OEY3RFx1MzAwMjwvZGl2Pic7cmV0dXJufWZvcih2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW52LXByZXZpZXctc2VhcmNoIiksaT0ociYmci52YWx1ZXx8IiIpLnRyaW0oKS50b0xvd2VyQ2FzZSgpLGE9IiIsdT0wLHM9MDtzPHQuZW50cmllcy5sZW5ndGg7cysrKXt2YXIgbz10LmVudHJpZXNbc107aWYoIShpJiZvLm5hbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKGkpPT09LTEpKXt1Kys7dmFyIGw9dHlwZW9mIG8udmFsdWU9PSJzdHJpbmciJiZvLnZhbHVlLmNoYXJBdCgwKT09PSI8IiYmby52YWx1ZS5jaGFyQXQoby52YWx1ZS5sZW5ndGgtMSk9PT0iPiI7YSs9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LXJvdycrKG8uc2Vuc2l0aXZlPyIgaXMtc2Vuc2l0aXZlIjoiIikrJyI+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctbmFtZSI+JytwKG8ubmFtZSkrKG8uc2Vuc2l0aXZlPyc8c3BhbiBjbGFzcz0iZW52LXByZXZpZXctYmFkZ2UiIHRpdGxlPSJcdTg4QUJcdThCQzZcdTUyMkJcdTRFM0FcdTY1NEZcdTYxMUZcdTVCNTdcdTZCQjUiPlx1NjU0Rlx1NjExRjwvc3Bhbj4nOiIiKSsobD8nPHNwYW4gY2xhc3M9ImVudi1wcmV2aWV3LWJhZGdlIGVudi1wcmV2aWV3LWJhZGdlLXJ1bnRpbWUiIHRpdGxlPSJcdTYzMDlcdTRGMUFcdThCRERcdTUyQThcdTYwMDFcdTZDRThcdTUxNjUiPlx1OEZEMFx1ODg0Q1x1NjVGNjwvc3Bhbj4nOiIiKSsnPC9kaXY+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctdmFsdWUnKyhsPyIgaXMtcnVudGltZSI6IiIpKyciIHRpdGxlPSInK3AoU3RyaW5nKG8udmFsdWUpKSsnIj4nK3AoU3RyaW5nKG8udmFsdWUpKSsnPC9kaXY+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctbGVuIj4nK28ubGVuZ3RoKyIgXHU1QjU3XHU3QjI2PC9kaXY+PC9kaXY+In19dT09PTAmJihhPSc8ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1lbXB0eSI+XHU2Q0ExXHU2NzA5XHU1MzM5XHU5MTREXHU3Njg0XHU1M0Q4XHU5MUNGXHUzMDAyPC9kaXY+JyksZS5pbm5lckhUTUw9YX19ZnVuY3Rpb24gd2koZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1kZWZhdWx0LW1vZGVsIik7aWYodCl7dmFyIHI9dC52YWx1ZSxpPXJ8fG4uY29uZmlnRGVmYXVsdE1vZGVsfHxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGVsfHwiIjt0LmlubmVySFRNTD1idihpLHtwcm92aWRlcjoiY2xhdWRlIn0pLHQudmFsdWU9aTt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWRlZmF1bHQtbW9kZWwtdmVyc2lvbiIpO2EmJmUmJihhLnRleHRDb250ZW50PWUuY2xhdWRlVmVyc2lvbj8iXHU1REYyXHU2OEMwXHU2RDRCXHU1MjMwIGNsYXVkZSAiK2UuY2xhdWRlVmVyc2lvbjoiXHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHU2NUY2XHU5RUQ4XHU4QkE0XHU0RjdGXHU3NTI4XHU4QkU1XHU2QTIxXHU1NzhCXHUzMDAyIil9fWZ1bmN0aW9uIHl0KCl7aWYoIW4uc2VsZWN0ZWRJZClyZXR1cm4gbnVsbDtmb3IodmFyIGU9MDtlPG4uc2Vzc2lvbnMubGVuZ3RoO2UrKylpZihuLnNlc3Npb25zW2VdLmlkPT09bi5zZWxlY3RlZElkKXJldHVybiBuLnNlc3Npb25zW2VdO3JldHVybiBudWxsfWZ1bmN0aW9uIER2KGUpe3ZhciB0PShlfHwiIikudHJpbSgpO24uY2hhdE1vZGVsPXQ7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWNoYXQtbW9kZWwiLHQpfWNhdGNoe31RbigpO3ZhciByPXl0KCk7ciYmZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5pZCkrIi9tb2RlbCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe21vZGVsOnR8fG51bGx9KX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtpZihpJiZpLmVycm9yKXtrKGkuZXJyb3IsImVycm9yIik7cmV0dXJufWlmKGkmJmkuaWQmJihYKGkpLHR5cGVvZiBrPT0iZnVuY3Rpb24iKSl7dmFyIGE9dHx8Ilx1OUVEOFx1OEJBNCIsdT1yLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHVGRjA4XHU0RTBCXHU2QjIxXHU1QkY5XHU4QkREXHU3NTFGXHU2NTQ4XHVGRjA5IjoiIjtrKCJcdTVERjJcdTUyMDdcdTYzNjJcdTZBMjFcdTU3OEIgXHUyMTkyICIrYSt1LCJzdWNjZXNzIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTUyMDdcdTYzNjJcdTZBMjFcdTU3OEJcdTU5MzFcdThEMjUiLCJlcnJvciIpfSl9ZnVuY3Rpb24gVW8oZSx0LHIsaSl7dmFyIGE9bi5zZXNzaW9uVG9vbD09PSJjb2RleCI/ImNvZGV4IjoiY2xhdWRlIix1PW4uY2hhdE1vZGVsfHxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGVsfHwiIixzPW4uY2hhdFRoaW5raW5nfHwib2ZmIixvPXtjd2Q6dHx8ZXQoKSxtb2RlOnJ8fG4uY2hhdE1vZGV8fG4uY29uZmlnJiZuLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLHByb3ZpZGVyOmEscnVubmVyOmE9PT0iY29kZXgiPyJjb2RleC1jbGktZXhlYyI6bi5jb25maWcmJm4uY29uZmlnLnN0cnVjdHVyZWRSdW5uZXI9PT0ic2RrIj8iY2xhdWRlLXNkayI6bi5zdHJ1Y3R1cmVkUnVubmVyfHwiY2xhdWRlLWNsaS1wcmludCIscHJvbXB0OmV8fHZvaWQgMCx3b3JrdHJlZUVuYWJsZWQ6aT09PSEwLG1vZGVsOnV8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpzfTtyZXR1cm4gZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkobyl9KS50aGVuKGZ1bmN0aW9uKGwpe3JldHVybiBsLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obCl7aWYobC5lcnJvcil0aHJvdyBuZXcgRXJyb3IobC5lcnJvcik7cmV0dXJuIG4uc2VsZWN0ZWRJZD1sLmlkLHllKCksbi5kcmFmdHNbbC5pZF09IiIsQnQoKSxYKGwpLHBlKCksd3IobC5pZCksVG4obC5pZCkscG4obC5pZCkudGhlbihmdW5jdGlvbigpe3JldHVybiBsfSl9KX1mdW5jdGlvbiBDaSgpe3ZhciBlPSEhbi5zZWxlY3RlZElkLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0IiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpLGE9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09bi5zZWxlY3RlZElkfSksdT11ZShhKSxzPWUmJiF1JiZuLmN1cnJlbnRWaWV3PT09InRlcm1pbmFsIixvPWUmJih1fHxuLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsIik7dT9uLmN1cnJlbnRWaWV3PSJjaGF0IjplfHwobi5jdXJyZW50Vmlldz0idGVybWluYWwiKSx0JiYodC5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLHMpLHQuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhcykpLHImJihyLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbyksci5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCFvKSksaSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLGUpLHImJm8mJnhhKHIpLGlyKCksWmUoKSxDcigpfWZ1bmN0aW9uIFNyKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vZGUtZGVzY3JpcHRpb24iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWtpbmQtZGVzY3JpcHRpb24iKSxyPW4uc2Vzc2lvblRvb2x8fCJjbGF1ZGUiLGk9bi5zZXNzaW9uQ3JlYXRlS2luZHx8InN0cnVjdHVyZWQiO24uc2Vzc2lvblRvb2w9cixuLm1vZGVWYWx1ZT1SdChyLG4ubW9kZVZhbHVlfHxuLmNoYXRNb2RlfHwiZGVmYXVsdCIpO3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNwcm92aWRlci1jYXJkcyAucHJvdmlkZXItY2FyZCIpO2EubGVuZ3RoJiZhLmZvckVhY2goZnVuY3Rpb24obyl7dmFyIGw9by5nZXRBdHRyaWJ1dGUoImRhdGEtcHJvdmlkZXIiKTtvLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbD09PXIpLG8uY2xhc3NMaXN0LnJlbW92ZSgiZGlzYWJsZWQiKX0pO3ZhciB1PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNzZXNzaW9uLWtpbmQtY2FyZHMgLnNlc3Npb24ta2luZC1jYXJkIik7dS5sZW5ndGgmJnUuZm9yRWFjaChmdW5jdGlvbihvKXt2YXIgbD1vLmdldEF0dHJpYnV0ZSgiZGF0YS1zZXNzaW9uLWtpbmQiKSxjPSExO28uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixsPT09aSksby5jbGFzc0xpc3QudG9nZ2xlKCJkaXNhYmxlZCIsYyl9KTt2YXIgcz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjbW9kZS1jYXJkcyAubW9kZS1jYXJkIik7cy5sZW5ndGgmJnMuZm9yRWFjaChmdW5jdGlvbihvKXtvLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsby5nZXRBdHRyaWJ1dGUoImRhdGEtbW9kZSIpPT09bi5tb2RlVmFsdWUpfSksdCYmKHQudGV4dENvbnRlbnQ9UnUoaSkpLGUmJihlLnRleHRDb250ZW50PUxvKHIsbi5tb2RlVmFsdWUpKX1mdW5jdGlvbiBYKGUpe2lmKCEoIWV8fCFlLmlkKSl7dmFyIHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ZS5pZH0pfHxudWxsLHI9T2woZSx0KSxpPSExLGE9bnVsbDtuLnNlc3Npb25zPW4uc2Vzc2lvbnMubWFwKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkIT09ci5pZD9zOihhPXMsaT0hMCxPYmplY3QuYXNzaWduKHt9LHMscikpfSksaXx8bi5zZXNzaW9ucy51bnNoaWZ0KHIpO3ZhciB1PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PXIuaWR9KXx8cjt1JiZBcnJheS5pc0FycmF5KHUucXVldWVkTWVzc2FnZXMpJiZyLmlkPT09bi5zZWxlY3RlZElkJiYoenIodSksbHUoKSxzbigpKSxyLmlkPT09bi5zZWxlY3RlZElkJiYod2EoKSxKdCgpKSxyLnN0YXR1cyYmci5zdGF0dXMhPT0icnVubmluZyImJm4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjAmJnNldFRpbWVvdXQobGksMCl9fWZ1bmN0aW9uIFRuKGUpeyFlfHwhbi53c3x8bi53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0Lk9QRU58fG4ud3Muc2VuZChKU09OLnN0cmluZ2lmeSh7dHlwZToic3Vic2NyaWJlIixzZXNzaW9uSWQ6ZX0pKX1mdW5jdGlvbiBrdihlLHQpe2lmKCFlKXJldHVybiB0O3ZhciByPU9iamVjdC5hc3NpZ24oe30sZSx0KSxpPWUub3V0cHV0fHwiIixhPXQub3V0cHV0fHwiIix1PWkubGVuZ3RoPmEubGVuZ3RoLHM9ZS5zdHJ1Y3R1cmVkU3RhdGV8fG51bGwsbz10LnN0cnVjdHVyZWRTdGF0ZXx8bnVsbCxsPWUuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fHQuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIsYz0hIShlLm1lc3NhZ2VzJiZlLm1lc3NhZ2VzLmxlbmd0aCYmKGZ1bmN0aW9uKCl7dmFyIG09ZS5tZXNzYWdlc1tlLm1lc3NhZ2VzLmxlbmd0aC0xXTtyZXR1cm4gbSYmbS5yb2xlPT09ImFzc2lzdGFudCImJkFycmF5LmlzQXJyYXkobS5jb250ZW50KSYmbS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuX19wcm9jZXNzaW5nfSl9KSgpKSxmPUFycmF5LmlzQXJyYXkoZS5tZXNzYWdlcyk/bD91cihlLm1lc3NhZ2VzKTplLm1lc3NhZ2VzOltdLGQ9QXJyYXkuaXNBcnJheSh0Lm1lc3NhZ2VzKT9sP3VyKHQubWVzc2FnZXMpOnQubWVzc2FnZXM6W10sdj1kLmxlbmd0aD4wJiYoZnVuY3Rpb24oKXt2YXIgbT1kW2QubGVuZ3RoLTFdO3JldHVybiBtJiZtLnJvbGU9PT0iYXNzaXN0YW50IiYmQXJyYXkuaXNBcnJheShtLmNvbnRlbnQpJiYhbS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuX19wcm9jZXNzaW5nfSl9KSgpLGc9ZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIiYmISFzJiZzLmluRmxpZ2h0PT09ITAmJighb3x8by5pbkZsaWdodCE9PSEwKSYmYyYmISFzLmFjdGl2ZVJlcXVlc3RJZCYmISFvJiYhIW8uYWN0aXZlUmVxdWVzdElkJiZvLmFjdGl2ZVJlcXVlc3RJZD09PXMuYWN0aXZlUmVxdWVzdElkJiYhdixoPWYubGVuZ3RoPmQubGVuZ3RofHxmLmxlbmd0aD4wJiZkLmxlbmd0aD4wJiZKU09OLnN0cmluZ2lmeShmW2YubGVuZ3RoLTFdKSE9PUpTT04uc3RyaW5naWZ5KGRbZC5sZW5ndGgtMV0pJiZKU09OLnN0cmluZ2lmeShmKS5sZW5ndGg+SlNPTi5zdHJpbmdpZnkoZCkubGVuZ3RoO3JldHVybiB1JiYoci5vdXRwdXQ9aSksZyYmKHIuc3RhdHVzPWUuc3RhdHVzfHxyLnN0YXR1cyxyLnN0cnVjdHVyZWRTdGF0ZT1PYmplY3QuYXNzaWduKHt9LG98fHt9LHMse2luRmxpZ2h0OiEwfSksci5tZXNzYWdlcz1lLm1lc3NhZ2VzKSxoJiYoci5tZXNzYWdlcz1mKSxlLmlkPT09bi5zZWxlY3RlZElkJiYoZS5wZXJtaXNzaW9uQmxvY2tlZCYmdC5wZXJtaXNzaW9uQmxvY2tlZD09PSExfHxlLnBlcm1pc3Npb25CbG9ja2VkJiYhdC5wZXJtaXNzaW9uQmxvY2tlZCYmKHIucGVybWlzc2lvbkJsb2NrZWQ9ITApLGUucGVuZGluZ0VzY2FsYXRpb24mJiF0LnBlbmRpbmdFc2NhbGF0aW9uJiZ0LnBlcm1pc3Npb25CbG9ja2VkIT09ITEmJihyLnBlbmRpbmdFc2NhbGF0aW9uPWUucGVuZGluZ0VzY2FsYXRpb24pLGUubWVzc2FnZXMmJmUubWVzc2FnZXMubGVuZ3RoPjAmJighdC5tZXNzYWdlc3x8dC5tZXNzYWdlcy5sZW5ndGg9PT0wKSYmKHIubWVzc2FnZXM9ZS5tZXNzYWdlcykpLHJ9ZnVuY3Rpb24gYXQoZSx0LHIpe2lmKGUmJmUubWVzc2FnZXMmJmUubWVzc2FnZXMubGVuZ3RoPjApcmV0dXJuIGUubWVzc2FnZXM7aWYoZSYmZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIilyZXR1cm5bXTtpZighcilyZXR1cm5bXTt2YXIgaT10eXBlb2YgdD09InN0cmluZyI/dDplJiZlLm91dHB1dHx8IiI7cmV0dXJuIGk/V3AoaSxlJiZlLmNvbW1hbmQpOltdfWZ1bmN0aW9uIEF2KGUpe2lmKCFlfHwhZS5sZW5ndGgpcmV0dXJuIG51bGw7aWYobi5zZWxlY3RlZElkKXt2YXIgdD1lLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1uLnNlbGVjdGVkSWR9KTtyZXR1cm4gdD90LmlkOm51bGx9dmFyIHI9ZS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLnN0YXR1cz09PSJydW5uaW5nIn0pO2lmKHIpcmV0dXJuIHIuaWQ7dmFyIGk9ZS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiFhLmFyY2hpdmVkfSk7cmV0dXJuIGk/aS5pZDplWzBdLmlkfWZ1bmN0aW9uIGZuKGUpe3ZhciB0PWV8fHt9O3JldHVybiBmZXRjaCgiL2FwaS9zZXNzaW9ucyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHIuc3RhdHVzPT09NDAxKXtJbygpO3JldHVybn1yZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe3ZhciBpPXJ8fFtdLGE9bmV3IFNldChpLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZH0pKTtPYmplY3Qua2V5cyhuLmRyYWZ0cykuZm9yRWFjaChmdW5jdGlvbihkKXthLmhhcyhkKXx8ZGVsZXRlIG4uZHJhZnRzW2RdfSksbi5zZXNzaW9ucz1pLm1hcChmdW5jdGlvbihkKXt2YXIgdj1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZyl7cmV0dXJuIGcuaWQ9PT1kLmlkfSk7cmV0dXJuIGt2KHYsZCl9KTt2YXIgdT1BdihuLnNlc3Npb25zKTtpZih1IT09dm9pZCAwJiYobi5zZWxlY3RlZElkPXUpLGR1KCksc24oKSxuLmJvb3RzdHJhcHBpbmc9ITEseWUoKSxuLm1vZGFsT3BlbilwZSgpO2Vsc2V7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWxpc3QiKSxvPUtpKCk7aWYocyYmcy5pbm5lckhUTUw9PT1vKXt2YXIgbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1jb3VudCIpO2wmJihsLnRleHRDb250ZW50PVN0cmluZyhuLnNlc3Npb25zLmxlbmd0aCkpfWVsc2V7cyYmKHMuaW5uZXJIVE1MPW8pO3ZhciBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWNvdW50Iik7bCYmKGwudGV4dENvbnRlbnQ9U3RyaW5nKG4uc2Vzc2lvbnMubGVuZ3RoKSl9fUlyKCksbi5zZWxlY3RlZElkJiZuLmdpdFN0YXR1c1Nlc3Npb25JZCE9PW4uc2VsZWN0ZWRJZCYmd24obi5zZWxlY3RlZElkKTt2YXIgYz1Qcm9taXNlLnJlc29sdmUoKTtpZighdC5za2lwU2VsZWN0ZWRPdXRwdXRSZWxvYWQmJm4uc2VsZWN0ZWRJZCljPXBuKG4uc2VsZWN0ZWRJZCk7ZWxzZSBpZihuLnNlbGVjdGVkSWQpe3ZhciBmPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZD09PW4uc2VsZWN0ZWRJZH0pO3VlKGYpJiYoQnQoe3ByZXNlcnZlU3RpY2tTdGF0ZTohMH0pLGxvKCEwKSl9cmV0dXJuIGMudGhlbihmdW5jdGlvbigpe24uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjAmJmxpKCksRHQoKSxjYSgpfSl9KS5jYXRjaChmdW5jdGlvbihyKXt2YXIgaT1yJiZyLm1lc3NhZ2V8fCIiLGE9aT09PSJGYWlsZWQgdG8gZmV0Y2gifHxpPT09Ik5ldHdvcmtFcnJvciB3aGVuIGF0dGVtcHRpbmcgdG8gZmV0Y2ggcmVzb3VyY2UuInx8aT09PSJMb2FkIGZhaWxlZCJ8fC9hYm9ydGVkfGFib3J0ZXJyb3J8bmV0d29ya2Vycm9yfGZhaWxlZCB0byBmZXRjaC9pLnRlc3QoaSk7YXx8Y29uc29sZS5lcnJvcigiW3dhbmRdIGxvYWRTZXNzaW9ucyBmYWlsZWQ6IixyKX0pfXZhciBWYT1udWxsO2Z1bmN0aW9uIFVhKCl7VmF8fChWYT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7VmE9bnVsbCxwZSgpfSwyMDApKX1mdW5jdGlvbiBwZSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1saXN0IiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1jb3VudCIpO2UmJihlLmlubmVySFRNTD1LaSgpKSx0JiYodC50ZXh0Q29udGVudD1TdHJpbmcobi5zZXNzaW9ucy5sZW5ndGgpKSx0eXBlb2YgWHQ9PSJmdW5jdGlvbiImJlh0KCksSXIoKSxuLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD4wJiZEdCgpfWZ1bmN0aW9uIElyKCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGgpe3JldHVybiBoLmlkPT09bi5zZWxlY3RlZElkfSk7ZXx8KEluKCExKSxGYSgpLEdzKCkpO3ZhciB0PWU/eHIoZS5jb21tYW5kKToiV2FuZCIscj1lP2xyKGUpOiJcdTVGMDBcdTU5Q0JcdTVCRjlcdThCREQiLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3VtbWFyeS12YWx1ZSIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLXRpdGxlIiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtaW5mbyIpLHM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnRvcGJhci1zZXNzaW9uLXRpdGxlLCAudG9wYmFyLXRhZ2xpbmUiKTtzJiZlJiYocy5jbGFzc0xpc3QucmVtb3ZlKCJ0b3BiYXItdGFnbGluZSIpLHMuY2xhc3NMaXN0LmFkZCgidG9wYmFyLXNlc3Npb24tdGl0bGUiKSxzLnRleHRDb250ZW50PWUudGl0bGV8fHhyKGUuY29tbWFuZCkscy5zZXRBdHRyaWJ1dGUoInRpdGxlIixlLmRlc2NyaXB0aW9ufHxlLmNvbW1hbmR8fCIiKSk7dmFyIG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQiKSxsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKSxjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LW91dHB1dCIpLGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7aSYmaS50ZXh0Q29udGVudCE9PXQmJihpLnRleHRDb250ZW50PXQpLGEmJmEudGV4dENvbnRlbnQhPT10JiYoYS50ZXh0Q29udGVudD10KSx1JiYodS50ZXh0Q29udGVudD1lP3IrIiBceEI3ICIraHYoZSk6cik7dmFyIGQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24ta2luZC1kaXNwbGF5Iiksdj1lP2d2KGUpOiJcdTdFQzhcdTdBRUYiO2QmJmQudGV4dENvbnRlbnQhPT12JiYoZC50ZXh0Q29udGVudD12KSxucygpLCFuLnRlcm1pbmFsJiZsJiZlJiZLbigpLG4udGVybWluYWwmJmwmJiFsLmNvbnRhaW5zKG4udGVybWluYWwuZWxlbWVudCkmJihtcigpLEtuKCkpLGV8fChuLnRlcm1pbmFsU2Vzc2lvbklkPW51bGwsbi50ZXJtaW5hbE91dHB1dD0iIixuLnRlcm1pbmFsT3V0cHV0TWFya2VyPTApLG4udGVybWluYWwmJmUmJm4uY3VycmVudFZpZXc9PT0idGVybWluYWwiJiZtdCgidmlldyIpO3ZhciBnPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpO2U/KG8mJm8uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbCYmbC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxjJiZjLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGcmJmcuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpOihvJiZvLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGwmJmwuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksYyYmYy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxmJiZmLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGcmJmcuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIikpLEZpKCksJG4oeXQoKSksQ2koKSx3YSgpfWZ1bmN0aW9uIHBuKGUpe24uY2hhdFJlbmRlclRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uY2hhdFJlbmRlclRpbWVyKSxuLmNoYXRSZW5kZXJUaW1lcj1udWxsKTt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1lfSkscj0iL2FwaS9zZXNzaW9ucy8iK2U7cmV0dXJuIHl2KHQpJiYocis9Ij9mb3JtYXQ9Y2hhdCIpLGZldGNoKHIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaS5lcnJvcil7bi5zZWxlY3RlZElkPT09ZSYmKG4uc2VsZWN0ZWRJZD1udWxsLHllKCkpLGZuKCk7cmV0dXJufWlmKFgoaSksSXIoKSxuLnRlcm1pbmFsJiZlPT09bi5zZWxlY3RlZElkJiZpLm91dHB1dCE9PXZvaWQgMCl7dmFyIGE9ISFuLndzJiYobi53cy5yZWFkeVN0YXRlPT09V2ViU29ja2V0Lk9QRU58fG4ud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5DT05ORUNUSU5HKTthP2l0KCJzZXNzaW9uLXN3aXRjaCIpOihyaShlLGkub3V0cHV0LHttb2RlOiJhcHBlbmQifSksaXQoInNlc3Npb24tc3dpdGNoIix7Zm9yY2VSZXBsYXk6ITB9KSl9dmFyIHU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ZX0pO24uY3VycmVudE1lc3NhZ2VzPVZlKHUsYXQodSxpLm91dHB1dCwhMSkpLHR0KCExKX0pfWZ1bmN0aW9uIFd0KGUpe3ZhciB0PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PWV9KTtpZih0KXtuLnNlbGVjdGVkSWQhPT1lJiZtcigpLG4uc2VsZWN0ZWRJZD1lLHllKCksbi50b29sQ29udGVudENhY2hlPXt9LG4ubWVzc2FnZVF1ZXVlPVtdLG4ucGVuZGluZ01lc3NhZ2VzPVtdLHpyKHQpLGR1KCksc24oKSxCdCgpLG4uY3VycmVudE1lc3NhZ2VzPVtdLG4uY2hhdFJlbmRlclRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uY2hhdFJlbmRlclRpbWVyKSxuLmNoYXRSZW5kZXJUaW1lcj1udWxsKTt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcyIpO3ImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7dmFyIGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnN0cnVjdHVyZWQtc3RhdHVzLWJhciIpO2kmJmkucmVtb3ZlKCksbi5fc3RhdHVzQmFyVGltZXJJZCYmKGNsZWFySW50ZXJ2YWwobi5fc3RhdHVzQmFyVGltZXJJZCksbi5fc3RhdHVzQmFyVGltZXJJZD1udWxsKSxuLl9zdGF0dXNCYXJTdGFydFRpbWU9MDt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtY29tcG9zZXIiKTthJiZhLmNsYXNzTGlzdC5yZW1vdmUoImluLWZsaWdodCIpO3ZhciB1PXQ7bi5wcmVmZXJyZWRDb21tYW5kPWh0KCksbi5jaGF0TW9kZT1SdCgiY2xhdWRlIix1JiZ1Lm1vZGU/dS5tb2RlOm4uY2hhdE1vZGUpLG4udGVybWluYWxJbnRlcmFjdGl2ZSYmdSYmdS5zdGF0dXMhPT0icnVubmluZyImJkluKCExKSxwZSgpLHdyKGUpLG4uZmlsZVBhbmVsT3BlbiYmKFJsKHUpLHF0KCkpLHBuKGUpLnRoZW4oZnVuY3Rpb24oKXtOdCghMCl9KSxUbihlKSxuLmdpdFN0YXR1cz1udWxsLG4uZ2l0U3RhdHVzU2Vzc2lvbklkPW51bGwsVmkoKSx3bihlLHtmb3JjZTohMH0pfX1mdW5jdGlvbiB4digpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1kcmF3ZXIiKSx0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWxheW91dCIpLHI9TmUoKSxpPSEhbi5zaWRlYmFyUGlubmVkJiYhIW4uc2lkZWJhckNvbGxhcHNlZCxhPWl8fCFyJiYoISFuLnNpZGViYXJQaW5uZWR8fCEhbi5zZXNzaW9uc0RyYXdlck9wZW4pO2UmJihlLmNsYXNzTGlzdC50b2dnbGUoInBpbm5lZCIsYSksZS5jbGFzc0xpc3QudG9nZ2xlKCJjb2xsYXBzZWQiLGkpKSx0JiYodC5jbGFzc0xpc3QudG9nZ2xlKCJzaWRlYmFyLXBpbm5lZCIsYSksdC5jbGFzc0xpc3QudG9nZ2xlKCJzaWRlYmFyLWNvbGxhcHNlZCIsaSkpO3ZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLXBpbi1idG4iKTt1JiYodS5jbGFzc0xpc3QudG9nZ2xlKCJwaW5uZWQiLCEhbi5zaWRlYmFyUGlubmVkKSx1LnRpdGxlPW4uc2lkZWJhclBpbm5lZD8iXHU1REYyXHU1NkZBXHU1QjlBXHU1RTM4XHU5QTdCXHVGRjA4XHU3MEI5XHU1MUZCXHU4OUUzXHU5NjY0XHU5NTAxXHU1QjlBXHVGRjA5IjoiXHU1NkZBXHU1QjlBXHU0RkE3XHU2ODBGXHU1RTM4XHU5QTdCIix1LnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsbi5zaWRlYmFyUGlubmVkPyJcdTg5RTNcdTk2NjRcdTU2RkFcdTVCOUFcdTVFMzhcdTlBN0IiOiJcdTU2RkFcdTVCOUFcdTRGQTdcdTY4MEZcdTVFMzhcdTlBN0IiKSx1LnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIixuLnNpZGViYXJQaW5uZWQ/InRydWUiOiJmYWxzZSIpKX1mdW5jdGlvbiBUcigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1kcmF3ZXIiKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1kcmF3ZXItYmFja2Ryb3AiKSxyPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWxheW91dCIpO2UmJmUuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsbi5zZXNzaW9uc0RyYXdlck9wZW4pLHQmJnQuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsdnUoKSksciYmci5jbGFzc0xpc3QudG9nZ2xlKCJzaWRlYmFyLW9wZW4iLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbnMtdG9nZ2xlLWJ1dHRvbiIpO2kmJmkuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixuLnNlc3Npb25zRHJhd2VyT3BlbikseHYoKX1mdW5jdGlvbiBTdigpe3ZhciBlPU5lKCk7aWYoIWUpe3ZhciB0PW4uc2lkZWJhclBpbm5lZD8hMTohbi5zZXNzaW9uc0RyYXdlck9wZW47bi5zZXNzaW9uc0RyYXdlck9wZW49dCx0JiYobi5zaWRlYmFyQ29sbGFwc2VkPSExLFNlKCJ3YW5kLXNpZGViYXItY29sbGFwc2VkIiwhMSkpLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsbi5zZXNzaW9uc0RyYXdlck9wZW4pLG5uKCksTXIoKTtyZXR1cm59aWYobi5zZXNzaW9uc0RyYXdlck9wZW49IW4uc2Vzc2lvbnNEcmF3ZXJPcGVuLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsbi5zZXNzaW9uc0RyYXdlck9wZW4pLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuKXtuLmZpbGVQYW5lbE9wZW49ITE7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWZpbGUtcGFuZWwtb3BlbiIsImZhbHNlIil9Y2F0Y2h7fX1ubigpfWZ1bmN0aW9uIExyKCl7dmFyIGU9TmUoKTtpZighZSl7aWYoIW4uc2lkZWJhclBpbm5lZCYmIW4uc2Vzc2lvbnNEcmF3ZXJPcGVuKXJldHVybjtrcigpLG4uc2lkZWJhclBpbm5lZD0hMSxuLnNlc3Npb25zRHJhd2VyT3Blbj0hMSxTZSgid2FuZC1zaWRlYmFyLXBpbm5lZCIsITEpLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITEpLG5uKCksTXIoKTtyZXR1cm59bi5zZXNzaW9uc0RyYXdlck9wZW4mJihrcigpLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSExLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITEpLG5uKCkpfWZ1bmN0aW9uIEl2KCl7aWYoTmUoKSl7THIoKTtyZXR1cm59bi5zaWRlYmFyUGlubmVkfHxuLnNpZGViYXJDb2xsYXBzZWR8fCFuLnNlc3Npb25zRHJhd2VyT3Blbnx8KGtyKCksbi5zZXNzaW9uc0RyYXdlck9wZW49ITEsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksbm4oKSxNcigpKX1mdW5jdGlvbiBLbyhlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29tcG9zZXItcGx1cy1wb3BvdmVyIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXR0YWNoLWJ0biIpO24ucGx1c1BvcG92ZXJPcGVuPSEhZSx0JiZ0LmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsIWUpLHImJihyLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsISFlKSxyLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsZT8idHJ1ZSI6ImZhbHNlIikpfWZ1bmN0aW9uIFR2KCl7S28oIW4ucGx1c1BvcG92ZXJPcGVuKX1mdW5jdGlvbiBCaSgpe24ucGx1c1BvcG92ZXJPcGVuJiZLbyghMSl9ZnVuY3Rpb24genQoKXtOZSgpJiZuLnNlc3Npb25zRHJhd2VyT3BlbiYmTHIoKX1mdW5jdGlvbiBNcigpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWxheW91dCIpO2lmKGUpe3ZhciB0PWZ1bmN0aW9uKHIpe3IucHJvcGVydHlOYW1lPT09InBhZGRpbmctbGVmdCImJihlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLHQpLFB0KCEwKSl9O2UuYWRkRXZlbnRMaXN0ZW5lcigidHJhbnNpdGlvbmVuZCIsdCl9c2V0VGltZW91dChmdW5jdGlvbigpe1B0KCEwKX0sMzUwKX12YXIgVnQ9bnVsbDtmdW5jdGlvbiBMdigpe3JldHVybiBWdCYmZG9jdW1lbnQuYm9keS5jb250YWlucyhWdCl8fChWdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxWdC5jbGFzc05hbWU9InNpZGViYXItdGlsZS1idWJibGUiLFZ0LnNldEF0dHJpYnV0ZSgicm9sZSIsInRvb2x0aXAiKSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKFZ0KSksVnR9ZnVuY3Rpb24gWHQoKXtWdCYmVnQuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfWZ1bmN0aW9uIE12KGUsdCl7aWYoIXQpe1h0KCk7cmV0dXJufXZhciByPUx2KCk7ci50ZXh0Q29udGVudD10Lmxlbmd0aD40MDA/dC5zbGljZSgwLDQwMCkrIlx1MjAyNiI6dDt2YXIgaT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3IuY2xhc3NMaXN0LmFkZCgidmlzaWJsZSIpO3ZhciBhPXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdT1pLnRvcCtpLmhlaWdodC8yLHM9dS1hLmhlaWdodC8yLG89OCxsPXdpbmRvdy5pbm5lckhlaWdodC1hLmhlaWdodC04O3M8byYmKHM9bykscz5sJiYocz1NYXRoLm1heChvLGwpKSxyLnN0eWxlLmxlZnQ9aS5yaWdodCsxMisicHgiLHIuc3R5bGUudG9wPXMrInB4IixyLnN0eWxlLnNldFByb3BlcnR5KCItLWJ1YmJsZS10YWlsLXkiLHUtcysicHgiKX1mdW5jdGlvbiBxdihlKXtpZihlLmRhdGFzZXQuY29sbGFwc2VkU2Vzc2lvbklkKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1lLmRhdGFzZXQuY29sbGFwc2VkU2Vzc2lvbklkfSk7aWYoIXQpcmV0dXJuIiI7dmFyIHI9RmModCk7cmV0dXJuIHJ8fHQuc3VtbWFyeXx8dC5jb21tYW5kfHwiIn1pZihlLmRhdGFzZXQuY29sbGFwc2VkSGlzdG9yeUlkKXt2YXIgaT1uLmNsYXVkZUhpc3RvcnkuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5jbGF1ZGVTZXNzaW9uSWQ9PT1lLmRhdGFzZXQuY29sbGFwc2VkSGlzdG9yeUlkfSk7aWYoaSYmaS5maXJzdFVzZXJNZXNzYWdlKXJldHVybiBpLmZpcnN0VXNlck1lc3NhZ2V9cmV0dXJuIiJ9ZnVuY3Rpb24gT3YoZSl7dmFyIHQ9ZS50YXJnZXQ7aWYoISghdHx8ISh0IGluc3RhbmNlb2YgRWxlbWVudCkpKXt2YXIgcj10LmNsb3Nlc3QoIi5zaWRlYmFyLWNvbGxhcHNlZC10aWxlIik7aWYoIXIpe1h0KCk7cmV0dXJufXZhciBpPXF2KHIpO2lmKCFpKXtYdCgpO3JldHVybn1NdihyLGkpfX1mdW5jdGlvbiBQdihlKXt2YXIgdD1lLnJlbGF0ZWRUYXJnZXQ7dCYmdCBpbnN0YW5jZW9mIEVsZW1lbnQmJnQuY2xvc2VzdCgiLnNpZGViYXItY29sbGFwc2VkLXRpbGUiKXx8WHQoKX1mdW5jdGlvbiBIdigpe3ZhciBlPU5lKCk7bi5zaWRlYmFyUGlubmVkfHwobi5zaWRlYmFyUGlubmVkPSEwLFNlKCJ3YW5kLXNpZGViYXItcGlubmVkIiwhMCkpLG4uc2lkZWJhckNvbGxhcHNlZD0hbi5zaWRlYmFyQ29sbGFwc2VkLFNlKCJ3YW5kLXNpZGViYXItY29sbGFwc2VkIixuLnNpZGViYXJDb2xsYXBzZWQpLG4uc2lkZWJhckNvbGxhcHNlZD9uLnNlc3Npb25zRHJhd2VyT3Blbj0hMTplPyhuLnNpZGViYXJQaW5uZWQ9ITEsbi5zZXNzaW9uc0RyYXdlck9wZW49ITAsU2UoIndhbmQtc2lkZWJhci1waW5uZWQiLCExKSk6bi5zZXNzaW9uc0RyYXdlck9wZW49ITAsU2UoIndhbmQtc2lkZWJhci1vcGVuIixuLnNlc3Npb25zRHJhd2VyT3Blbiksbm4oKSxwZSgpLE52KCksWHQoKSxNcigpfWZ1bmN0aW9uIF92KCl7TmUoKXx8KG4uc2lkZWJhclBpbm5lZD0hbi5zaWRlYmFyUGlubmVkLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSEwLFNlKCJ3YW5kLXNpZGViYXItcGlubmVkIixuLnNpZGViYXJQaW5uZWQpLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITApLG5uKCksTXIoKSl9ZnVuY3Rpb24gTnYoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1jb2xsYXBzZS1idG4iKTtpZihlKXt2YXIgdD0hIW4uc2lkZWJhclBpbm5lZCYmISFuLnNpZGViYXJDb2xsYXBzZWQ7ZS5jbGFzc0xpc3QudG9nZ2xlKCJjb2xsYXBzZWQiLHQpLGUudGl0bGU9dD8iXHU1QzU1XHU1RjAwXHU0RkE3XHU2ODBGIjoiXHU2NTM2XHU4RDc3XHU0RTNBXHU3QTg0XHU2NzYxIixlLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsdD8iXHU1QzU1XHU1RjAwXHU0RkE3XHU2ODBGIjoiXHU2NTM2XHU4RDc3XHU0RTNBXHU3QTg0XHU2NzYxIiksZS5pbm5lckhUTUw9dD8nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cG9seWxpbmUgcG9pbnRzPSIxMCA2IDE2IDEyIDEwIDE4Ii8+PGxpbmUgeDE9IjIwIiB5MT0iNSIgeDI9IjIwIiB5Mj0iMTkiLz48L3N2Zz4nOic8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwb2x5bGluZSBwb2ludHM9IjE0IDYgOCAxMiAxNCAxOCIvPjxsaW5lIHgxPSI0IiB5MT0iNSIgeDI9IjQiIHkyPSIxOSIvPjwvc3ZnPid9fWZ1bmN0aW9uIGp2KGUpe2lmKGUpe2Uuc3R5bGUubGVmdD0iIixlLnN0eWxlLnJpZ2h0PSIiO3ZhciB0PWUub2Zmc2V0UGFyZW50fHxlLnBhcmVudEVsZW1lbnQ7aWYodCl7dmFyIHI9OCxpPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksYT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHU9d2luZG93LmlubmVyV2lkdGg7YS5sZWZ0PHI/KGUuc3R5bGUucmlnaHQ9ImF1dG8iLGUuc3R5bGUubGVmdD1yLWkubGVmdCsicHgiKTphLnJpZ2h0PnUtciYmKGUuc3R5bGUubGVmdD0iYXV0byIsZS5zdHlsZS5yaWdodD1pLnJpZ2h0LSh1LXIpKyJweCIpfX19ZnVuY3Rpb24gS2EoKXtabigpLG4ubW9kYWxPcGVuPSEwLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSExLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITEpLFRyKCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTtlJiYoZS5fd2FuZENsb3NlVGltZXImJihjbGVhclRpbWVvdXQoZS5fd2FuZENsb3NlVGltZXIpLGUuX3dhbmRDbG9zZVRpbWVyPW51bGwpLGUuY2xhc3NMaXN0LnJlbW92ZSgiY2xvc2luZyIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksbi5sYXN0Rm9jdXNlZEVsZW1lbnQ9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCxuLnNlc3Npb25Ub29sPWh0KCksbi5wcmVmZXJyZWRDb21tYW5kPW4uc2Vzc2lvblRvb2wsbi5zZXNzaW9uQ3JlYXRlS2luZD0ic3RydWN0dXJlZCIsbi5zZXNzaW9uQ3JlYXRlV29ya3RyZWU9ITEsbi5tb2RlVmFsdWU9UnQobi5zZXNzaW9uVG9vbCxuLm1vZGVWYWx1ZXx8bi5jaGF0TW9kZSksU3IoKSxkbSgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW9kZS1jYXJkcyIpO3QmJnQuZm9jdXMoKX0sMjApLERpKGUpKX1mdW5jdGlvbiB2bigpe24ubW9kYWxPcGVuPSExO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7ZSYmKG4uZm9jdXNUcmFwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLG4uZm9jdXNUcmFwSGFuZGxlciksbi5mb2N1c1RyYXBIYW5kbGVyPW51bGwpLG4ubGFzdEZvY3VzZWRFbGVtZW50JiZ0eXBlb2Ygbi5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXM9PSJmdW5jdGlvbiImJm4ubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzKCksWWEoZSkpLHRyKCl9ZnVuY3Rpb24gWWEoZSl7aWYoZSYmIWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKSl7dmFyIHQ9ITE7dHJ5e3Q9d2luZG93Lm1hdGNoTWVkaWEmJndpbmRvdy5tYXRjaE1lZGlhKCIocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSIpLm1hdGNoZXN9Y2F0Y2h7fWlmKHR8fGRvY3VtZW50LmhpZGRlbil7ZS5jbGFzc0xpc3QucmVtb3ZlKCJjbG9zaW5nIiksZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTtyZXR1cm59ZS5fd2FuZENsb3NlVGltZXImJihjbGVhclRpbWVvdXQoZS5fd2FuZENsb3NlVGltZXIpLGUuX3dhbmRDbG9zZVRpbWVyPW51bGwpLGUuY2xhc3NMaXN0LmFkZCgiY2xvc2luZyIpLGUuX3dhbmRDbG9zZVRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLmNsYXNzTGlzdC5yZW1vdmUoImNsb3NpbmciKSxlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUuX3dhbmRDbG9zZVRpbWVyPW51bGx9LDE3MCl9fWZ1bmN0aW9uIERpKGUpe24uZm9jdXNUcmFwSGFuZGxlciYmZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsbi5mb2N1c1RyYXBIYW5kbGVyKTt2YXIgdD0nYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgaW5wdXQ6bm90KFtkaXNhYmxlZF0pLCBzZWxlY3Q6bm90KFtkaXNhYmxlZF0pLCB0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSksIGFbaHJlZl0sIFt0YWJpbmRleF06bm90KFt0YWJpbmRleD0iLTEiXSknO24uZm9jdXNUcmFwSGFuZGxlcj1mdW5jdGlvbihyKXtpZihyLmtleT09PSJUYWIiKXt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3JBbGwodCksYT1pWzBdLHU9aVtpLmxlbmd0aC0xXTshYXx8IXV8fChyLnNoaWZ0S2V5P2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1hJiYoci5wcmV2ZW50RGVmYXVsdCgpLHUuZm9jdXMoKSk6ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PXUmJihyLnByZXZlbnREZWZhdWx0KCksYS5mb2N1cygpKSl9fSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixuLmZvY3VzVHJhcEhhbmRsZXIpfWZ1bmN0aW9uIFJ2KCl7cmV0dXJuIG4uYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZCYmbi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlkPT09bi5hY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkfSl8fG51bGx9ZnVuY3Rpb24gcXIoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtY29udGVudCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLWNvbmZpcm0tYnV0dG9uIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtZXJyb3IiKSxpPVJ2KCksYT1uLndvcmt0cmVlTWVyZ2VDaGVja1Jlc3VsdDtpZighKCFlfHwhdCkpe2lmKCFpfHwhaS53b3JrdHJlZSl7ZS5pbm5lckhUTUw9JzxwIGNsYXNzPSJmaWVsZC1oaW50Ij5cdTY3MkFcdTYyN0VcdTUyMzBcdTUzRUZcdTU0MDhcdTVFNzZcdTc2ODQgd29ya3RyZWUgXHU0RjFBXHU4QkREXHUzMDAyPC9wPicsdC5kaXNhYmxlZD0hMDtyZXR1cm59ciYmKG4ud29ya3RyZWVNZXJnZUVycm9yP3plKHIsbi53b3JrdHJlZU1lcmdlRXJyb3IpOmFpKHIpKTt2YXIgdT1bJzxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLXJvdyI+PHNwYW4+XHU2NzY1XHU2RTkwXHU1MjA2XHU2NTJGPC9zcGFuPjxzdHJvbmc+JytwKGkud29ya3RyZWUuYnJhbmNofHwiLSIpKyI8L3N0cm9uZz48L2Rpdj4iLCc8ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1yb3ciPjxzcGFuPlx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NTwvc3Bhbj48c3Ryb25nPicrcChpLndvcmt0cmVlLnBhdGh8fCItIikrIjwvc3Ryb25nPjwvZGl2PiJdO2E/KHUucHVzaCgnPGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2Utcm93Ij48c3Bhbj5cdTc2RUVcdTY4MDdcdTUyMDZcdTY1MkY8L3NwYW4+PHN0cm9uZz4nK3AoYS50YXJnZXRCcmFuY2h8fCItIikrIjwvc3Ryb25nPjwvZGl2PiIpLHUucHVzaCgnPGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2Utcm93Ij48c3Bhbj5cdTVGODVcdTU0MDhcdTVFNzZcdTYzRDBcdTRFQTQ8L3NwYW4+PHN0cm9uZz4nK3AoU3RyaW5nKGEuYWhlYWRDb3VudHx8MCkpKyI8L3N0cm9uZz48L2Rpdj4iKSx1LnB1c2goJzxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLXJvdyI+PHNwYW4+XHU2NzJBXHU2M0QwXHU0RUE0XHU2NTM5XHU1MkE4PC9zcGFuPjxzdHJvbmc+JytwKGEuaGFzVW5jb21taXR0ZWRDaGFuZ2VzPyJcdTY3MDkiOiJcdTY1RTAiKSsiPC9zdHJvbmc+PC9kaXY+IiksdS5wdXNoKCc8ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1yb3ciPjxzcGFuPlx1NTFCMlx1N0E4MVx1OThDRVx1OTY2OTwvc3Bhbj48c3Ryb25nPicrcChhLmhhc0NvbmZsaWN0cz8iXHU2NzA5IjoiXHU2NUUwIikrIjwvc3Ryb25nPjwvZGl2PiIpLGEucmVhc29uJiZ1LnB1c2goJzxwIGNsYXNzPSJmaWVsZC1oaW50Ij4nK3AoYS5yZWFzb24pKyI8L3A+IikpOm4ud29ya3RyZWVNZXJnZUxvYWRpbmcmJnUucHVzaCgnPHAgY2xhc3M9ImZpZWxkLWhpbnQiPlx1NkI2M1x1NTcyOFx1NjhDMFx1NjdFNSB3b3JrdHJlZSBcdTU0MDhcdTVFNzZcdTcyQjZcdTYwMDFcdTIwMjY8L3A+JyksZS5pbm5lckhUTUw9dS5qb2luKCIiKSx0LmRpc2FibGVkPW4ud29ya3RyZWVNZXJnZUxvYWRpbmd8fG4ud29ya3RyZWVNZXJnZVN1Ym1pdHRpbmd8fCFhfHxhLm9rIT09ITAsdC50ZXh0Q29udGVudD1uLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nPyJcdTU0MDhcdTVFNzZcdTRFMkQuLi4iOiJcdTc4NkVcdThCQTRcdTU0MDhcdTVFNzZcdTVFNzZcdTZFMDVcdTc0MDYifX1mdW5jdGlvbiBZbyhlKXtuLmFjdGl2ZVdvcmt0cmVlTWVyZ2VTZXNzaW9uSWQ9ZSxuLndvcmt0cmVlTWVyZ2VDaGVja1Jlc3VsdD1udWxsLG4ud29ya3RyZWVNZXJnZUxvYWRpbmc9ITAsbi53b3JrdHJlZU1lcmdlU3VibWl0dGluZz0hMSxuLndvcmt0cmVlTWVyZ2VFcnJvcj0iIix2bigpLFpuKCk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLW1vZGFsIik7dCYmKHQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksbi5sYXN0Rm9jdXNlZEVsZW1lbnQ9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCxEaSh0KSkscXIoKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3dvcmt0cmVlL21lcmdlL2NoZWNrIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHImJnIuZXJyb3IpdGhyb3cgbmV3IEVycm9yKHIuZXJyb3IpO3ImJnIuc2Vzc2lvbiYmWChyLnNlc3Npb24pLG4ud29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0PXIucmVzdWx0fHxudWxsLG4ud29ya3RyZWVNZXJnZUVycm9yPSIifSkuY2F0Y2goZnVuY3Rpb24ocil7bi53b3JrdHJlZU1lcmdlRXJyb3I9ciYmci5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2OEMwXHU2N0U1IHdvcmt0cmVlIFx1NTQwOFx1NUU3Nlx1NzJCNlx1NjAwMVx1MzAwMiJ9KS5maW5hbGx5KGZ1bmN0aW9uKCl7bi53b3JrdHJlZU1lcmdlTG9hZGluZz0hMSxxcigpfSl9ZnVuY3Rpb24gWG4oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtbW9kYWwiKTtuLmFjdGl2ZVdvcmt0cmVlTWVyZ2VTZXNzaW9uSWQ9bnVsbCxuLndvcmt0cmVlTWVyZ2VDaGVja1Jlc3VsdD1udWxsLG4ud29ya3RyZWVNZXJnZUxvYWRpbmc9ITEsbi53b3JrdHJlZU1lcmdlU3VibWl0dGluZz0hMSxuLndvcmt0cmVlTWVyZ2VFcnJvcj0iIixlJiZlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLG4uZm9jdXNUcmFwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLG4uZm9jdXNUcmFwSGFuZGxlciksbi5mb2N1c1RyYXBIYW5kbGVyPW51bGwpLG4ubGFzdEZvY3VzZWRFbGVtZW50JiZ0eXBlb2Ygbi5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXM9PSJmdW5jdGlvbiImJm4ubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzKCl9ZnVuY3Rpb24gV3YoKXshbi5hY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkfHxuLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nfHwobi53b3JrdHJlZU1lcmdlU3VibWl0dGluZz0hMCxuLndvcmt0cmVlTWVyZ2VFcnJvcj0iIixxcigpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZCkrIi93b3JrdHJlZS9tZXJnZSIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe30pfSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gZS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGUpe2lmKGUmJmUuZXJyb3IpdGhyb3cgbmV3IEVycm9yKGUuZXJyb3IpO3JldHVybiBlJiZlLnNlc3Npb24mJlgoZS5zZXNzaW9uKSxrKCJcdTVERjJcdTU0MDhcdTVFNzZcdTUyMzAgIitwKGUucmVzdWx0JiZlLnJlc3VsdC50YXJnZXRCcmFuY2h8fCJcdTRFM0JcdTUyMDZcdTY1MkYiKSsoZS5yZXN1bHQmJmUucmVzdWx0LmNsZWFudXBEb25lPT09ITE/Ilx1RkYwQ1x1NEY0Nlx1NURFNVx1NEY1Q1x1NjgxMVx1NUY4NVx1NkUwNVx1NzQwNlx1MzAwMiI6Ilx1MzAwMiIpLCJpbmZvIiksWG4oKSxqdCgpfSkuY2F0Y2goZnVuY3Rpb24oZSl7bi53b3JrdHJlZU1lcmdlRXJyb3I9ZSYmZS5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1NDA4XHU1RTc2IHdvcmt0cmVlXHUzMDAyIixxcigpfSkuZmluYWxseShmdW5jdGlvbigpe24ud29ya3RyZWVNZXJnZVN1Ym1pdHRpbmc9ITEscXIoKX0pKX1mdW5jdGlvbiBKbyhlKXtmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3dvcmt0cmVlL2NsZWFudXAiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYodCYmdC5lcnJvcil0aHJvdyBuZXcgRXJyb3IodC5lcnJvcik7cmV0dXJuIHQmJnQuc2Vzc2lvbiYmWCh0LnNlc3Npb24pLGsoIlx1NURGMlx1NUI4Q1x1NjIxMCB3b3JrdHJlZSBcdTZFMDVcdTc0MDZcdTMwMDIiLCJpbmZvIiksanQoKX0pLmNhdGNoKGZ1bmN0aW9uKHQpe2sodCYmdC5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2RTA1XHU3NDA2IHdvcmt0cmVlXHUzMDAyIiwiZXJyb3IiKX0pfWZ1bmN0aW9uIHp2KCl7dm4oKTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbW9kYWwiKTtpZihlKXtlLl93YW5kQ2xvc2VUaW1lciYmKGNsZWFyVGltZW91dChlLl93YW5kQ2xvc2VUaW1lciksZS5fd2FuZENsb3NlVGltZXI9bnVsbCksZS5jbGFzc0xpc3QucmVtb3ZlKCJjbG9zaW5nIiksZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxuLmxhc3RGb2N1c2VkRWxlbWVudD1kb2N1bWVudC5hY3RpdmVFbGVtZW50O3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuZXctcGFzc3dvcmQiKSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maXJtLXBhc3N3b3JkIik7dCYmKHQudmFsdWU9IiIpLHImJihyLnZhbHVlPSIiKSxHbygpLERpKGUpLFV2KCksSmEoImFib3V0IiksR3YoKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW5vdGlmLXNvdW5kIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW5vdGlmLWJ1YmJsZSIpO2kmJihpLmNoZWNrZWQ9bi5ub3RpZlNvdW5kKSxhJiYoYS5jaGVja2VkPW4ubm90aWZCdWJibGUpO3ZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtdm9sdW1lIikscz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW5vdGlmLXZvbHVtZS12YWwiKTtpZih1KXt1LnZhbHVlPW4ubm90aWZWb2x1bWUscyYmKHMudGV4dENvbnRlbnQ9bi5ub3RpZlZvbHVtZSsiJSIpO3RyeXt1LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIse2J1YmJsZXM6ITB9KSl9Y2F0Y2h7fX12YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm90aWYtdm9sdW1lLWZpZWxkIik7aWYobyYmKG8uc3R5bGUuZGlzcGxheT1uLm5vdGlmU291bmQ/IiI6Im5vbmUiKSxnbigpLHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0QXBwSWNvbj09ImZ1bmN0aW9uIil0cnl7WG8oV2FuZE5hdGl2ZS5nZXRBcHBJY29uKCl8fCJzaG9ydGhhaXIiKX1jYXRjaHt9aWYoamUmJnR5cGVvZiBXYW5kTmF0aXZlLmdldE5vdGlmaWNhdGlvblNvdW5kPT0iZnVuY3Rpb24iKXRyeXt2YXIgbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmF0aXZlLXNvdW5kLXNlbGVjdCIpO2wmJihsLnZhbHVlPVdhbmROYXRpdmUuZ2V0Tm90aWZpY2F0aW9uU291bmQoKSl9Y2F0Y2h7fWlmKGplJiZ0eXBlb2YgV2FuZE5hdGl2ZS5nZXROb3RpZmljYXRpb25Wb2x1bWU9PSJmdW5jdGlvbiIpdHJ5e3ZhciBjPVdhbmROYXRpdmUuZ2V0Tm90aWZpY2F0aW9uVm9sdW1lKCk7aWYobi5ub3RpZlZvbHVtZT1jLHUmJih1LnZhbHVlPVN0cmluZyhjKSkscyYmKHMudGV4dENvbnRlbnQ9YysiJSIpLHUpdHJ5e3UuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0Iix7YnViYmxlczohMH0pKX1jYXRjaHt9dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLW5vdGlmLXZvbHVtZSIsU3RyaW5nKGMpKX1jYXRjaHt9fWNhdGNoe31pZihqZSYmdHlwZW9mIFdhbmROYXRpdmUuaXNIYXB0aWNFbmFibGVkPT0iZnVuY3Rpb24iKXRyeXt2YXIgZj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhhcHRpYy1lbmFibGVkIik7ZiYmKGYuY2hlY2tlZD1XYW5kTmF0aXZlLmlzSGFwdGljRW5hYmxlZCgpKX1jYXRjaHt9fX1mdW5jdGlvbiBabigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tb2RhbCIpO2UmJihuLmZvY3VzVHJhcEhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixuLmZvY3VzVHJhcEhhbmRsZXIpLG4uZm9jdXNUcmFwSGFuZGxlcj1udWxsKSxuLmxhc3RGb2N1c2VkRWxlbWVudCYmdHlwZW9mIG4ubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzPT0iZnVuY3Rpb24iJiZuLmxhc3RGb2N1c2VkRWxlbWVudC5mb2N1cygpLFlhKGUpKX1mdW5jdGlvbiBHbygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1lcnJvciIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLXN1Y2Nlc3MiKTtlJiZlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9ZnVuY3Rpb24gVnYoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmV3LXBhc3N3b3JkIikudmFsdWUsdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uZmlybS1wYXNzd29yZCIpLnZhbHVlLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWVycm9yIiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3Mtc3VjY2VzcyIpO2lmKEdvKCksIWV8fGUubGVuZ3RoPDYpe3IudGV4dENvbnRlbnQ9Ilx1NUJDNlx1NzgwMVx1OTU3Rlx1NUVBNlx1ODFGM1x1NUMxMVx1NEUzQSA2IFx1NEUyQVx1NUI1N1x1N0IyNlx1MzAwMiIsci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTtyZXR1cm59aWYoZSE9PXQpe3IudGV4dENvbnRlbnQ9Ilx1NEUyNFx1NkIyMVx1OEY5M1x1NTE2NVx1NzY4NFx1NUJDNlx1NzgwMVx1NEUwRFx1NEUwMFx1ODFGNFx1MzAwMiIsci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTtyZXR1cm59ZmV0Y2goIi9hcGkvc2V0LXBhc3N3b3JkIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3Bhc3N3b3JkOmV9KSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGEpe2lmKGEuZXJyb3Ipe3IudGV4dENvbnRlbnQ9YS5lcnJvcixyLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3JldHVybn1pLnRleHRDb250ZW50PSJcdTVCQzZcdTc4MDFcdTRGRUVcdTY1MzlcdTYyMTBcdTUyOUZcdUZGMDEiLGkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5ldy1wYXNzd29yZCIpLnZhbHVlPSIiLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maXJtLXBhc3N3b3JkIikudmFsdWU9IiJ9KS5jYXRjaChmdW5jdGlvbigpe3IudGV4dENvbnRlbnQ9IkZhaWxlZCB0byBzYXZlIHBhc3N3b3JkLiIsci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX0pfWZ1bmN0aW9uIEphKGUpe2Zvcih2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2V0dGluZ3MtdGFiIikscj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2V0dGluZ3MtcGFuZWwiKSxpPTA7aTx0Lmxlbmd0aDtpKyspe3ZhciBhPXRbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXRhYiIpPT09ZTthP3RbaV0uY2xhc3NMaXN0LmFkZCgiYWN0aXZlIik6dFtpXS5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSx0W2ldLnNldEF0dHJpYnV0ZSgiYXJpYS1zZWxlY3RlZCIsYT8idHJ1ZSI6ImZhbHNlIiksdFtpXS5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IixhPyIwIjoiLTEiKX1mb3IodmFyIHU9MDt1PHIubGVuZ3RoO3UrKyl7dmFyIHM9clt1XS5pZD09PSJzZXR0aW5ncy10YWItIitlO3M/KHJbdV0uY2xhc3NMaXN0LmFkZCgiYWN0aXZlIiksclt1XS5yZW1vdmVBdHRyaWJ1dGUoImhpZGRlbiIpKTooclt1XS5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSxyW3VdLnNldEF0dHJpYnV0ZSgiaGlkZGVuIiwiaGlkZGVuIikpfX1mdW5jdGlvbiBRbyhlKXtpZihlJiYhKGUua2V5IT09IkFycm93VXAiJiZlLmtleSE9PSJBcnJvd0Rvd24iJiZlLmtleSE9PSJIb21lIiYmZS5rZXkhPT0iRW5kIikpe3ZhciB0PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy10YWIiKSk7aWYodC5sZW5ndGgpe3ZhciByPXQuaW5kZXhPZihlLmN1cnJlbnRUYXJnZXQpO2lmKHIhPT0tMSl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBpPXI7ZS5rZXk9PT0iQXJyb3dVcCImJihpPXI+MD9yLTE6dC5sZW5ndGgtMSksZS5rZXk9PT0iQXJyb3dEb3duIiYmKGk9cjx0Lmxlbmd0aC0xP3IrMTowKSxlLmtleT09PSJIb21lIiYmKGk9MCksZS5rZXk9PT0iRW5kIiYmKGk9dC5sZW5ndGgtMSk7dmFyIGE9dFtpXTtpZihhKXt2YXIgdT1hLmdldEF0dHJpYnV0ZSgiZGF0YS10YWIiKTt1JiZKYSh1KSx0eXBlb2YgYS5mb2N1cz09ImZ1bmN0aW9uIiYmYS5mb2N1cygpfX19fX1mdW5jdGlvbiBVdigpe2Zvcih2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2V0dGluZ3MtdGFiIiksdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0ucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsUW8pLGVbdF0uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsUW8pfWZ1bmN0aW9uIEt2KGUpe2lmKGUpe3ZhciB0PWUuY29uZmlnfHx7fSxyPXthYm91dDplLnZlcnNpb24/Ilx1NUY1M1x1NTI0RCB2IitlLnZlcnNpb246Ilx1NzI0OFx1NjcyQ1x1NEUwRVx1NjZGNFx1NjVCMFx1NEZFMVx1NjA2RiIsZ2VuZXJhbDpbdC5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLHQubGFuZ3VhZ2V8fCJcdTgxRUFcdTUyQThcdThCRURcdThBMDAiXS5maWx0ZXIoQm9vbGVhbikuam9pbigiIFx4QjcgIiksbm90aWZpY2F0aW9uczpuLm5vdGlmU291bmQ/Ilx1NjNEMFx1NzkzQVx1OTdGMyAiK24ubm90aWZWb2x1bWUrIiUiOiJcdTYzRDBcdTc5M0FcdTk3RjNcdTVERjJcdTUxNzNcdTk1RUQiLHNlY3VyaXR5OmUuaGFzQ2VydD8iXHU1REYyXHU1Qjg5XHU4OEM1IFNTTCBcdThCQzFcdTRFNjYiOiJcdTVCQzZcdTc4MDFcdTRFMEVcdThCQzFcdTRFNjZcdTdCQTFcdTc0MDYiLHByZXNldHM6dC5jb21tYW5kUHJlc2V0cyYmdC5jb21tYW5kUHJlc2V0cy5sZW5ndGg/dC5jb21tYW5kUHJlc2V0cy5sZW5ndGgrIiBcdTY3NjFcdTk4ODRcdThCQkUiOiJcdTY2ODJcdTY1RTBcdTk4ODRcdThCQkUiLGRpc3BsYXk6Ilx1NjNBN1x1NTIzNlx1NTM2MVx1NzI0N1x1OUVEOFx1OEJBNFx1NUM1NVx1NUYwMCJ9O2Zvcih2YXIgaSBpbiByKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyLGkpKXt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2V0dGluZ3MtdGFiW2RhdGEtdGFiPSInK2krJyJdIC5zZXR0aW5ncy10YWItbWV0YScpO2EmJihhLnRleHRDb250ZW50PXJbaV18fCIiKX19fWZ1bmN0aW9uIFl2KGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtcXIiKSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtcXItZW1wdHkiKSxpPXdpbmRvdy5RUkNvZGVMaWI7aWYodCl7aWYoIWl8fHR5cGVvZiBpLnRvQ2FudmFzIT0iZnVuY3Rpb24iKXtyJiYoci50ZXh0Q29udGVudD0iXHU0RThDXHU3RUY0XHU3ODAxXHU1RTkzXHU2NzJBXHU1MkEwXHU4RjdEIik7cmV0dXJufXRyeXtpLnRvQ2FudmFzKHQsZSx7d2lkdGg6MjIwLG1hcmdpbjoxLGVycm9yQ29ycmVjdGlvbkxldmVsOiJNIixjb2xvcjp7ZGFyazoiIzFmMWIxNyIsbGlnaHQ6IiNmZmZmZmYwMCJ9fSxmdW5jdGlvbihhKXtpZihhKXtyJiYoci50ZXh0Q29udGVudD0iXHU0RThDXHU3RUY0XHU3ODAxXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1IixyLnN0eWxlLmRpc3BsYXk9IiIpLHQuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIjtyZXR1cm59ciYmKHIuc3R5bGUuZGlzcGxheT0ibm9uZSIpLHQuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSJ9KX1jYXRjaHtyJiYoci50ZXh0Q29udGVudD0iXHU0RThDXHU3RUY0XHU3ODAxXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1IixyLnN0eWxlLmRpc3BsYXk9IiIpLHQuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIn19fWZ1bmN0aW9uIEp2KGUpe3ZhciB0PXdpbmRvdy5RUkNvZGVMaWI7aWYoIXR8fHR5cGVvZiB0LnRvQ2FudmFzIT0iZnVuY3Rpb24iKXJldHVybjt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29ubmVjdC1xci1tb2RhbCIpO3ImJnIucmVtb3ZlKCk7dmFyIGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aS5pZD0iY29ubmVjdC1xci1tb2RhbCIsaS5jbGFzc05hbWU9ImNvbm5lY3QtcXItbW9kYWwtb3ZlcmxheSIsaS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImNvbm5lY3QtcXItbW9kYWwtY2FyZCI+PGNhbnZhcyBpZD0iY29ubmVjdC1xci1tb2RhbC1jYW52YXMiPjwvY2FudmFzPjxwIGNsYXNzPSJjb25uZWN0LXFyLW1vZGFsLWhpbnQiPlx1NzUyOCBXYW5kIEFwcCBcdTYyNkJcdTRFMDBcdTYyNkJcdUZGMENcdThGREVcdTYzQTVcdTVGNTNcdTUyNERcdTY3MERcdTUyQTFcdTU2Njg8L3A+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20gY29ubmVjdC1xci1tb2RhbC1jbG9zZSI+XHU1MTczXHU5NUVEPC9idXR0b24+PC9kaXY+Jyxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGkpO3ZhciBhPWkucXVlcnlTZWxlY3RvcigiI2Nvbm5lY3QtcXItbW9kYWwtY2FudmFzIiksdT1NYXRoLm1pbih3aW5kb3cuaW5uZXJXaWR0aCx3aW5kb3cuaW5uZXJIZWlnaHQpKi43O3U8MjQwJiYodT0yNDApLHU+NDgwJiYodT00ODApO3RyeXt0LnRvQ2FudmFzKGEsZSx7d2lkdGg6dSxtYXJnaW46MixlcnJvckNvcnJlY3Rpb25MZXZlbDoiTSIsY29sb3I6e2Rhcms6IiMxZjFiMTciLGxpZ2h0OiIjZmZmZmZmIn19KX1jYXRjaHt9ZnVuY3Rpb24gcygpe2kucmVtb3ZlKCl9aS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obCl7bC50YXJnZXQ9PT1pJiZzKCl9KTt2YXIgbz1pLnF1ZXJ5U2VsZWN0b3IoIi5jb25uZWN0LXFyLW1vZGFsLWNsb3NlIik7byYmby5hZGRFdmVudExpc3RlbmVyKCJjbGljayIscyl9ZnVuY3Rpb24gT3IoZSx0LHIpe2lmKCFlKXJldHVybjtmdW5jdGlvbiBpKCl7aWYoWW4oImxpZ2h0Iikscil7cigpO3JldHVybn1pZih0KXt2YXIgYT10LnRleHRDb250ZW50O3QudGV4dENvbnRlbnQ9Ilx1NURGMlx1NTkwRFx1NTIzNiIsc2V0VGltZW91dChmdW5jdGlvbigpe3QudGV4dENvbnRlbnQ9YX0sMTUwMCl9fWlmKGplJiZ0eXBlb2YgV2FuZE5hdGl2ZS5jb3B5VG9DbGlwYm9hcmQ9PSJmdW5jdGlvbiIpdHJ5e2lmKFdhbmROYXRpdmUuY29weVRvQ2xpcGJvYXJkKGUpPT09Im9rIil7aSgpO3JldHVybn19Y2F0Y2h7fW5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGUpLnRoZW4oaSkuY2F0Y2goZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZXh0YXJlYSIpO2EudmFsdWU9ZSxhLnN0eWxlLnBvc2l0aW9uPSJmaXhlZCIsYS5zdHlsZS5vcGFjaXR5PSIwIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpLGEuc2VsZWN0KCksZG9jdW1lbnQuZXhlY0NvbW1hbmQoImNvcHkiKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGEpLGkoKX0pfWZ1bmN0aW9uIG1uKGUpe2lmKHR5cGVvZiBlIT0ibnVtYmVyInx8IWlzRmluaXRlKGUpfHxlPDApcmV0dXJuIi0iO2lmKGU8MTAyNClyZXR1cm4gZSsiIEIiO2Zvcih2YXIgdD1bIktCIiwiTUIiLCJHQiIsIlRCIl0scj1lLzEwMjQsaT0wO3I+PTEwMjQmJmk8dC5sZW5ndGgtMTspcj1yLzEwMjQsaSs9MTt2YXIgYT1yPj0xMD9yLnRvRml4ZWQoMCk6ci50b0ZpeGVkKDEpO3JldHVybiBhKyIgIit0W2ldfWZ1bmN0aW9uIEd2KCl7ZmV0Y2goIi9hcGkvc2V0dGluZ3MiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gZS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGUpe0t2KGUpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1wa2ctbmFtZSIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLXZlcnNpb24iKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1ub2RlLXJlcSIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLXJlcG8tdXJsIik7dCYmKHQudGV4dENvbnRlbnQ9ZS5wYWNrYWdlTmFtZXx8Ii0iKSxyJiYoci50ZXh0Q29udGVudD1lLnZlcnNpb258fCItIiksaSYmKGkudGV4dENvbnRlbnQ9ZS5ub2RlVmVyc2lvbnx8Ii0iKSxhJiZlLnJlcG9VcmwmJihhLmlubmVySFRNTD0nPGEgaHJlZj0iJytwKGUucmVwb1VybCkrJyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiPicrcChlLnJlcG9VcmwpKyI8L2E+Iik7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWxhdGVzdC12ZXJzaW9uIikscz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tdXBkYXRlLWJ1dHRvbiIpO2UubGF0ZXN0VmVyc2lvbiYmdSYmKHUudGV4dENvbnRlbnQ9ZS5sYXRlc3RWZXJzaW9uLGUudXBkYXRlQXZhaWxhYmxlJiZzJiZzLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmV0YS1jaGFubmVsLXRvZ2dsZSIpO28mJihvLmNoZWNrZWQ9ZS51cGRhdGVDaGFubmVsPT09ImJldGEiKTt2YXIgbD1lLmF1dG9VcGRhdGV8fHt9LGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLXdlYi10b2dnbGUiKTtjJiYoYy5jaGVja2VkPSEhbC53ZWIpO3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1hcGstdG9nZ2xlIik7ZiYmKGYuY2hlY2tlZD0hIXhuJiYhIWwuYXBrKTt2YXIgZD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtZG1nLXRvZ2dsZSIpO2QmJihkLmNoZWNrZWQ9ISFhbiYmISFsLmRtZyk7ZnVuY3Rpb24gdih0ZSxtZSl7dHlwZW9mIHdpbmRvdy53YW5kQWxlcnQ9PSJmdW5jdGlvbiI/d2luZG93LndhbmRBbGVydCh0ZSx7dHlwZTptZT09PSJlcnJvciI/ImRhbmdlciI6ImluZm8ifSk6dHlwZW9mIGs9PSJmdW5jdGlvbiI/ayh0ZSxtZT09PSJlcnJvciI/ImVycm9yIjoiaW5mbyIpOm1lPT09ImVycm9yIiYmYWxlcnQodGUpfWZ1bmN0aW9uIGcodGUsbWUsT2Upe3ZhciBHZT1PZT9PZS50ZXh0Q29udGVudDoiIjtPZSYmKE9lLmRpc2FibGVkPSEwLE9lLnRleHRDb250ZW50PSJcdTRFMEJcdThGN0RcdTRFMkRcdTIwMjYiKTtmdW5jdGlvbiBRZSgpe09lJiYoT2UuZGlzYWJsZWQ9ITEsT2UudGV4dENvbnRlbnQ9R2UpfWZldGNoKHRlLHttZXRob2Q6IkhFQUQiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHhlKXtpZigheGUub2spe3YoeGUuc3RhdHVzPT09NDA0PyJcdTRFMEJcdThGN0RcdTY3MkFcdTU0MkZcdTc1MjhcdTYyMTZcdTY1ODdcdTRFRjZcdTVERjJcdTc5RkJcdTk2NjQiOiJcdTRFMEJcdThGN0RcdTU5MzFcdThEMjUgKEhUVFAgIit4ZS5zdGF0dXMrIikiLCJlcnJvciIpLFFlKCk7cmV0dXJufXZhciBGZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7RmUuaHJlZj10ZSxGZS5kb3dubG9hZD1tZXx8IiIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChGZSksRmUuY2xpY2soKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKEZlKSx2KCJcdTVERjJcdTVGMDBcdTU5Q0JcdTRFMEJcdThGN0RcdUZGMENcdThCRjdcdTU3MjhcdTkwMUFcdTc3RTVcdTY4MEYvXHU0RTBCXHU4RjdEXHU3QkExXHU3NDA2XHU0RTJEXHU2N0U1XHU3NzBCIiwiaW5mbyIpLFFlKCl9KS5jYXRjaChmdW5jdGlvbih4ZSl7digiXHU0RTBCXHU4RjdEXHU1OTMxXHU4RDI1OiAiKyh4ZSYmeGUubWVzc2FnZT94ZS5tZXNzYWdlOnhlKSwiZXJyb3IiKSxRZSgpfSl9ZnVuY3Rpb24gaCh0ZSxtZSl7ZnVuY3Rpb24gT2UoZmUpe3ZhciBnZT1TdHJpbmcoZmV8fCIiKS5yZXBsYWNlKC9edi8sIiIpLFhlPWdlLmluZGV4T2YoIi0iKSx5bj1YZT49MD9nZS5zbGljZSgwLFhlKTpnZSxNbj1YZT49MD9nZS5zbGljZShYZSsxKToiIjtyZXR1cm57cGFydHM6eW4uc3BsaXQoIi4iKS5tYXAoZnVuY3Rpb24oeGkpe3JldHVybiBwYXJzZUludCh4aSwxMCl8fDB9KSxwcmU6TW4saXNEZWJ1ZzpNbi5pbmRleE9mKCJkZWJ1ZyIpPT09MH19Zm9yKHZhciBHZT1PZSh0ZSksUWU9T2UobWUpLHhlPTA7eGU8Mzt4ZSsrKXt2YXIgRmU9KEdlLnBhcnRzW3hlXXx8MCktKFFlLnBhcnRzW3hlXXx8MCk7aWYoRmUhPT0wKXJldHVybiBGZT4wPzE6LTF9aWYoR2UuaXNEZWJ1ZyE9PVFlLmlzRGVidWcpcmV0dXJuIEdlLmlzRGVidWc/MTotMTtpZihHZS5pc0RlYnVnJiZRZS5pc0RlYnVnKWZvcih2YXIgTHQ9R2UucHJlLnNwbGl0KCIuIiksJGU9UWUucHJlLnNwbGl0KCIuIiksUD0wO1A8TWF0aC5tYXgoTHQubGVuZ3RoLCRlLmxlbmd0aCk7UCsrKXtpZihMdFtQXT09PXZvaWQgMClyZXR1cm4tMTtpZigkZVtQXT09PXZvaWQgMClyZXR1cm4gMTt2YXIgSD1wYXJzZUludChMdFtQXSwxMCksSj1wYXJzZUludCgkZVtQXSwxMCk7aWYoIWlzTmFOKEgpJiYhaXNOYU4oSikpe2lmKEghPT1KKXJldHVybiBIPko/MTotMX1lbHNlIGlmKEx0W1BdIT09JGVbUF0pcmV0dXJuIEx0W1BdPiRlW1BdPzE6LTF9cmV0dXJuIDB9ZnVuY3Rpb24gbSh0ZSxtZSxPZSxHZSxRZSx4ZSl7dGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksdGUuZGlzYWJsZWQ9ITEsbWU+MD90ZS50ZXh0Q29udGVudD0iXHU1MzQ3XHU3RUE3IjptZT09PTA/KHRlLnRleHRDb250ZW50PSJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjAiLHRlLmRpc2FibGVkPSEwKTp4ZT90ZS50ZXh0Q29udGVudD0iXHU5MUNEXHU2NUIwXHU1Qjg5XHU4OEM1IjoodGUudGV4dENvbnRlbnQ9Ilx1NzI0OFx1NjcyQ1x1OEY4M1x1NjVFNyIsdGUuZGlzYWJsZWQ9ITApLHRlLm9uY2xpY2s9dGUuZGlzYWJsZWQ/bnVsbDpmdW5jdGlvbigpe3RyeXtXYW5kTmF0aXZlLmRvd25sb2FkVXBkYXRlKE9lLEdlLFFlKX1jYXRjaChGZSl7digiXHU4QzAzXHU3NTI4XHU0RTBCXHU4RjdEXHU1OTMxXHU4RDI1OiAiKyhGZSYmRmUubWVzc2FnZT9GZS5tZXNzYWdlOkZlKSwiZXJyb3IiKX19fXZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1zZWN0aW9uIiksRj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hcGstY3VycmVudC1yb3ciKSx3PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1hbmRyb2lkLWFway1jdXJyZW50IiksRT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hcGstZ2l0aHViLXJvdyIpLEE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWFuZHJvaWQtYXBrLWdpdGh1YiIpLHg9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvd25sb2FkLWdpdGh1Yi1hcGstYnRuIiksST1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hcGstbG9jYWwtcm93IiksXz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtYW5kcm9pZC1hcGstbG9jYWwiKSxWPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkb3dubG9hZC1sb2NhbC1hcGstYnRuIiksWT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hcGstbWVzc2FnZSIpLEw9ZS5hbmRyb2lkQXBrfHx7fSxCPSEheG4sVD1MLmVuYWJsZWQhPT0hMSxNPUJ8fFQmJighIUwuZ2l0aHVifHwhIUwubG9jYWwpO2lmKGImJihNP2IuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik6Yi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSksQil7aWYoRiYmdyYmKHcudGV4dENvbnRlbnQ9InYiK3huLEYuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLEwuZ2l0aHViJiZFJiZBKXt2YXIgaj1MLmdpdGh1Yi52ZXJzaW9uPyJ2IitMLmdpdGh1Yi52ZXJzaW9uOkwuZ2l0aHViLmZpbGVOYW1lO2lmKHR5cGVvZiBMLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKGorPSIgXHhCNyAiK21uKEwuZ2l0aHViLnNpemUpKSxBLnRleHRDb250ZW50PWosRS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx4KXt2YXIgWj1MLmdpdGh1Yi52ZXJzaW9uP2goTC5naXRodWIudmVyc2lvbix4bik6MTttKHgsWixMLmdpdGh1Yi5kb3dubG9hZFVybCxMLmdpdGh1Yi5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmFwayIsImdpdGh1YiIsITEpfX1pZihMLmxvY2FsJiZJJiZfKXt2YXIgbmU9TC5sb2NhbC52ZXJzaW9uPyJ2IitMLmxvY2FsLnZlcnNpb246TC5sb2NhbC5maWxlTmFtZTtpZih0eXBlb2YgTC5sb2NhbC5zaXplPT0ibnVtYmVyIiYmKG5lKz0iIFx4QjcgIittbihMLmxvY2FsLnNpemUpKSxfLnRleHRDb250ZW50PW5lLEkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksVil7dmFyIFE9TC5sb2NhbC52ZXJzaW9uP2goTC5sb2NhbC52ZXJzaW9uLHhuKToxO20oVixRLEwubG9jYWwuZG93bmxvYWRVcmwsTC5sb2NhbC5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmFwayIsImxvY2FsIiwhMSl9fSFMLmdpdGh1YiYmIUwubG9jYWwmJlkmJihZLnRleHRDb250ZW50PSJcdTY2ODJcdTY1RTBcdTUzRUZcdTc1MjhcdTY2RjRcdTY1QjAiLFkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpO3ZhciBzZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hdXRvLXVwZGF0ZS1yb3ciKSxlZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hdXRvLXVwZGF0ZS1oaW50Iik7c2UmJnNlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGVlJiZlZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX1lbHNle2lmKEwuZ2l0aHViJiZFJiZBKXt2YXIgUz1MLmdpdGh1Yi52ZXJzaW9uPyJ2IitMLmdpdGh1Yi52ZXJzaW9uOkwuZ2l0aHViLmZpbGVOYW1lO3R5cGVvZiBMLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKFMrPSIgXHhCNyAiK21uKEwuZ2l0aHViLnNpemUpKSxBLnRleHRDb250ZW50PVMsRS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx4JiYoeC50ZXh0Q29udGVudD0iXHU0RTBCXHU4RjdEIix4LmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLHgub25jbGljaz1mdW5jdGlvbigpe3dpbmRvdy5vcGVuKEwuZ2l0aHViLmRvd25sb2FkVXJsLCJfYmxhbmsiKSx2KCJcdTZCNjNcdTU3MjhcdTYyNTNcdTVGMDBcdTRFMEJcdThGN0RcdTk4NzVcdTIwMjYiLCJpbmZvIil9KX1pZihMLmxvY2FsJiZJJiZfKXt2YXIgTj1MLmxvY2FsLnZlcnNpb24/InYiK0wubG9jYWwudmVyc2lvbjpMLmxvY2FsLmZpbGVOYW1lO3R5cGVvZiBMLmxvY2FsLnNpemU9PSJudW1iZXIiJiYoTis9IiBceEI3ICIrbW4oTC5sb2NhbC5zaXplKSksXy50ZXh0Q29udGVudD1OLEkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksViYmKFYudGV4dENvbnRlbnQ9Ilx1NEUwQlx1OEY3RCIsVi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxWLm9uY2xpY2s9ZnVuY3Rpb24oKXtnKEwubG9jYWwuZG93bmxvYWRVcmwsTC5sb2NhbC5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmFwayIsVil9KX0hTC5naXRodWImJiFMLmxvY2FsJiZZJiYoWS50ZXh0Q29udGVudD1UPyJcdTU3MjhcdTdFQkZcdTcyNDhcdTY3MkNcdTY2ODJcdTY1RjZcdTgzQjdcdTUzRDZcdTU5MzFcdThEMjVcdUZGMENcdTUzRUZcdTdBMERcdTU0MEVcdTkxQ0RcdThCRDUiOiJBbmRyb2lkIFx1NEUwQlx1OEY3RFx1NjcyQVx1NTcyOFx1NjcwRFx1NTJBMVx1N0FFRlx1NTQyRlx1NzUyOCIsWS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9dmFyIFc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWRtZy1zZWN0aW9uIiksRz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWFjb3MtZG1nLWN1cnJlbnQtcm93IiksVT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbWFjb3MtZG1nLWN1cnJlbnQiKSwkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1kbWctZ2l0aHViLXJvdyIpLG9lPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tYWNvcy1kbWctZ2l0aHViIiksbGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvd25sb2FkLWdpdGh1Yi1kbWctYnRuIikscmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWRtZy1sb2NhbC1yb3ciKSxCZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbWFjb3MtZG1nLWxvY2FsIiksRGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvd25sb2FkLWxvY2FsLWRtZy1idG4iKSxiZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWFjb3MtZG1nLW1lc3NhZ2UiKSxPPWUubWFjb3NEbWd8fHt9LHo9ISFhbixpZT1PLmVuYWJsZWQhPT0hMSxUZT16fHxpZSYmKCEhTy5naXRodWJ8fCEhTy5sb2NhbCk7aWYoVyYmKFRlP1cuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik6Vy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSkseil7aWYoRyYmVSYmKFUudGV4dENvbnRlbnQ9InYiK2FuLEcuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLE8uZ2l0aHViJiYkJiZvZSl7dmFyIGNlPU8uZ2l0aHViLnZlcnNpb24/InYiK08uZ2l0aHViLnZlcnNpb246Ty5naXRodWIuZmlsZU5hbWU7aWYodHlwZW9mIE8uZ2l0aHViLnNpemU9PSJudW1iZXIiJiYoY2UrPSIgXHhCNyAiK21uKE8uZ2l0aHViLnNpemUpKSxvZS50ZXh0Q29udGVudD1jZSwkLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGxlKXt2YXIgYWU9Ty5naXRodWIudmVyc2lvbj9oKE8uZ2l0aHViLnZlcnNpb24sYW4pOjE7bShsZSxhZSxPLmdpdGh1Yi5kb3dubG9hZFVybCxPLmdpdGh1Yi5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmRtZyIsImdpdGh1YiIsITApfX1pZihPLmxvY2FsJiZyZSYmQmUpe3ZhciBrZT1PLmxvY2FsLnZlcnNpb24/InYiK08ubG9jYWwudmVyc2lvbjpPLmxvY2FsLmZpbGVOYW1lO2lmKHR5cGVvZiBPLmxvY2FsLnNpemU9PSJudW1iZXIiJiYoa2UrPSIgXHhCNyAiK21uKE8ubG9jYWwuc2l6ZSkpLEJlLnRleHRDb250ZW50PWtlLHJlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLERlKXt2YXIgcHQ9Ty5sb2NhbC52ZXJzaW9uP2goTy5sb2NhbC52ZXJzaW9uLGFuKToxO20oRGUscHQsTy5sb2NhbC5kb3dubG9hZFVybCxPLmxvY2FsLmZpbGVOYW1lfHwid2FuZC11cGRhdGUuZG1nIiwibG9jYWwiLCEwKX19IU8uZ2l0aHViJiYhTy5sb2NhbCYmYmUmJihiZS50ZXh0Q29udGVudD0iXHU2NjgyXHU2NUUwXHU1M0VGXHU3NTI4XHU2NkY0XHU2NUIwIixiZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk7dmFyIHN0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1hdXRvLXVwZGF0ZS1yb3ciKSxBdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWFjb3MtYXV0by11cGRhdGUtaGludCIpO3N0JiZzdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxBdCYmQXQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9ZWxzZXtpZihPLmdpdGh1YiYmJCYmb2Upe3ZhciBVZT1PLmdpdGh1Yi52ZXJzaW9uPyJ2IitPLmdpdGh1Yi52ZXJzaW9uOk8uZ2l0aHViLmZpbGVOYW1lO3R5cGVvZiBPLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKFVlKz0iIFx4QjcgIittbihPLmdpdGh1Yi5zaXplKSksb2UudGV4dENvbnRlbnQ9VWUsJC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxsZSYmKGxlLnRleHRDb250ZW50PSJcdTRFMEJcdThGN0QiLGxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGxlLm9uY2xpY2s9ZnVuY3Rpb24oKXt3aW5kb3cub3BlbihPLmdpdGh1Yi5kb3dubG9hZFVybCwiX2JsYW5rIiksdigiXHU2QjYzXHU1NzI4XHU2MjUzXHU1RjAwXHU0RTBCXHU4RjdEXHU5ODc1XHUyMDI2IiwiaW5mbyIpfSl9aWYoTy5sb2NhbCYmcmUmJkJlKXt2YXIgb3Q9Ty5sb2NhbC52ZXJzaW9uPyJ2IitPLmxvY2FsLnZlcnNpb246Ty5sb2NhbC5maWxlTmFtZTt0eXBlb2YgTy5sb2NhbC5zaXplPT0ibnVtYmVyIiYmKG90Kz0iIFx4QjcgIittbihPLmxvY2FsLnNpemUpKSxCZS50ZXh0Q29udGVudD1vdCxyZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxEZSYmKERlLnRleHRDb250ZW50PSJcdTRFMEJcdThGN0QiLERlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLERlLm9uY2xpY2s9ZnVuY3Rpb24oKXtnKE8ubG9jYWwuZG93bmxvYWRVcmwsTy5sb2NhbC5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmRtZyIsRGUpfSl9IU8uZ2l0aHViJiYhTy5sb2NhbCYmYmUmJihiZS50ZXh0Q29udGVudD1pZT8iXHU1NzI4XHU3RUJGXHU3MjQ4XHU2NzJDXHU2NjgyXHU2NUY2XHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1XHVGRjBDXHU1M0VGXHU3QTBEXHU1NDBFXHU5MUNEXHU4QkQ1IjoibWFjT1MgXHU0RTBCXHU4RjdEXHU2NzJBXHU1NzI4XHU2NzBEXHU1MkExXHU3QUVGXHU1NDJGXHU3NTI4IixiZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9dmFyIEtlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtY29kZSIpLHh0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtcXIiKSxZZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1jb25uZWN0LXFyLWVtcHR5IiksUmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1xci13cmFwIik7aWYoS2Upe0tlLnRleHRDb250ZW50PSJcdTUyQTBcdThGN0RcdTRFMkQuLi4iLFllJiYoWWUudGV4dENvbnRlbnQ9Ilx1NzUxRlx1NjIxMFx1NEUyRFx1MjAyNiIpLHh0JiYoeHQuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIik7dmFyIEFlPSIvYXBpL2FwcC1jb25uZWN0LWNvZGUiO3dpbmRvdy5sb2NhdGlvbiYmd2luZG93LmxvY2F0aW9uLm9yaWdpbiYmKEFlKz0iP29yaWdpbj0iK2VuY29kZVVSSUNvbXBvbmVudCh3aW5kb3cubG9jYXRpb24ub3JpZ2luKSksZmV0Y2goQWUse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHRlKXtyZXR1cm4gdGUuanNvbigpfSkudGhlbihmdW5jdGlvbih0ZSl7dGUuY29kZT8oS2UudGV4dENvbnRlbnQ9dGUuY29kZSxuLmFuZHJvaWRDb25uZWN0Q29kZT10ZS5jb2RlLFl2KHRlLmNvZGUpKTooS2UudGV4dENvbnRlbnQ9Ilx1NzUxRlx1NjIxMFx1NTkzMVx1OEQyNSIsWWUmJihZZS50ZXh0Q29udGVudD0iXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1IikpfSkuY2F0Y2goZnVuY3Rpb24oKXtLZS50ZXh0Q29udGVudD0iXHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1IixZZSYmKFllLnRleHRDb250ZW50PSJcdTgzQjdcdTUzRDZcdTU5MzFcdThEMjUiKX0pfVJlJiYhUmUuZGF0YXNldC5ib3VuZCYmKFJlLmRhdGFzZXQuYm91bmQ9IjEiLFJlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe24uYW5kcm9pZENvbm5lY3RDb2RlJiZKdihuLmFuZHJvaWRDb25uZWN0Q29kZSl9KSk7dmFyIHZlPWUuY29uZmlnfHx7fSxFZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhvc3QiKSxDPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctcG9ydCIpLGx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaHR0cHMiKSx2dD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW1vZGUiKSxidD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWN3ZCIpLFBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctc2hlbGwiKTtFZSYmKEVlLnZhbHVlPXZlLmhvc3R8fCIiKSxDJiYoQy52YWx1ZT12ZS5wb3J0fHwiIiksbHQmJihsdC5jaGVja2VkPXZlLmh0dHBzPT09ITApLHZ0JiYodnQudmFsdWU9dmUuZGVmYXVsdE1vZGV8fCJkZWZhdWx0IiksYnQmJihidC52YWx1ZT12ZS5kZWZhdWx0Q3dkfHwiIiksUGUmJihQZS52YWx1ZT12ZS5zaGVsbHx8IiIpO3ZhciBTdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWxhbmd1YWdlIik7U3QmJihTdC52YWx1ZT12ZS5sYW5ndWFnZXx8IiIpO3ZhciBadD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXN0cnVjdHVyZWQtcnVubmVyIik7WnQmJihadC52YWx1ZT12ZS5zdHJ1Y3R1cmVkUnVubmVyfHwiY2xpIik7dmFyIGN0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaW5oZXJpdC1lbnYiKTtjdCYmKGN0LmNoZWNrZWQ9dmUuaW5oZXJpdEVudiE9PSExKSxuLmNvbmZpZ0RlZmF1bHRNb2RlbD12ZS5kZWZhdWx0TW9kZWx8fCIiLHdpKCksV28oKS50aGVuKGZ1bmN0aW9uKCl7d2koKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk7dmFyIEhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZXJ0LXN0YXR1cyIpO0hlJiYoSGUudGV4dENvbnRlbnQ9ZS5oYXNDZXJ0PyJcdTVERjJcdTVCODlcdTg4QzUgU1NMIFx1OEJDMVx1NEU2NiI6Ilx1NjcyQVx1NUI4OVx1ODhDNVx1OEJDMVx1NEU2Nlx1RkYwOFx1NEY3Rlx1NzUyOFx1ODFFQVx1N0I3RVx1NTQwRFx1NjIxNiBIVFRQXHVGRjA5IixIZS5zdHlsZS5jb2xvcj1lLmhhc0NlcnQ/InZhcigtLXN1Y2Nlc3MpIjoidmFyKC0tdGV4dC1zZWNvbmRhcnkpIik7dmFyIF9lPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcmVzZXRzLWxpc3QiKTtpZihfZSYmdmUuY29tbWFuZFByZXNldHMpe2Zvcih2YXIgQ2U9IiIsSmU9MDtKZTx2ZS5jb21tYW5kUHJlc2V0cy5sZW5ndGg7SmUrKyl7dmFyIEl0PXZlLmNvbW1hbmRQcmVzZXRzW0plXTtDZSs9JzxkaXYgY2xhc3M9InByZXNldC1pdGVtIj48c3BhbiBjbGFzcz0icHJlc2V0LWxhYmVsIj4nK3AoSXQubGFiZWwpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InByZXNldC1kZXRhaWwiPicrcChJdC5jb21tYW5kKSsoSXQubW9kZT8iICgiK3AoSXQubW9kZSkrIikiOiIiKSsiPC9zcGFuPjwvZGl2PiJ9Q2V8fChDZT0nPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUtY29tcGFjdCI+PHNwYW4gY2xhc3M9ImVtcHR5LWljb24iPlx1MjY5OTwvc3Bhbj48c3Bhbj5cdTZDQTFcdTY3MDlcdTU0N0RcdTRFRTRcdTk4ODRcdThCQkU8L3NwYW4+PHNwYW4gY2xhc3M9ImhpbnQiPlx1NTcyOCBjb25maWcuanNvbiBcdTc2ODQgY29tbWFuZFByZXNldHMgXHU0RTJEXHU5MTREXHU3RjZFPC9zcGFuPjwvZGl2PicpLF9lLmlubmVySFRNTD1DZX12YXIgRXQ9dmUuY2FyZERlZmF1bHRzfHx7fSxobj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtZWRpdCIpLFR0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC1pbmxpbmUiKSxMbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGVybWluYWwiKSxudD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGhpbmtpbmciKSxkZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdG9vbGdyb3VwIik7aG4mJihobi5jaGVja2VkPUV0LmVkaXRDYXJkcz09PSEwKSxUdCYmKFR0LmNoZWNrZWQ9RXQuaW5saW5lVG9vbHM9PT0hMCksTG4mJihMbi5jaGVja2VkPUV0LnRlcm1pbmFsPT09ITApLG50JiYobnQuY2hlY2tlZD1FdC50aGlua2luZz09PSEwKSxkZSYmKGRlLmNoZWNrZWQ9RXQudG9vbEdyb3VwPT09ITApfSkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiBRdigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maWctbWVzc2FnZSIpO2UmJihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUudGV4dENvbnRlbnQ9IiIpO3ZhciB0PXtob3N0Oihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhvc3QiKXx8e30pLnZhbHVlLHBvcnQ6TnVtYmVyKChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXBvcnQiKXx8e30pLnZhbHVlKSxodHRwczooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1odHRwcyIpfHx7fSkuY2hlY2tlZCxkZWZhdWx0TW9kZTooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1tb2RlIil8fHt9KS52YWx1ZSxkZWZhdWx0Q3dkOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWN3ZCIpfHx7fSkudmFsdWUsc2hlbGw6KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctc2hlbGwiKXx8e30pLnZhbHVlLGxhbmd1YWdlOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWxhbmd1YWdlIil8fHt9KS52YWx1ZXx8IiIsZGVmYXVsdE1vZGVsOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWRlZmF1bHQtbW9kZWwiKXx8e30pLnZhbHVlfHwiIixzdHJ1Y3R1cmVkUnVubmVyOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXN0cnVjdHVyZWQtcnVubmVyIil8fHt9KS52YWx1ZXx8ImNsaSIsaW5oZXJpdEVudjooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1pbmhlcml0LWVudiIpfHx7fSkuY2hlY2tlZCE9PSExfSxyPW4uY29uZmlnJiZuLmNvbmZpZy5kZWZhdWx0TW9kZWx8fCIiLGk9dC5kZWZhdWx0TW9kZWx8fCIiO2ZldGNoKCIvYXBpL3NldHRpbmdzL2NvbmZpZyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkodCl9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoZSYmKGEuZXJyb3I/KGUudGV4dENvbnRlbnQ9YS5lcnJvcixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiKTooZS50ZXh0Q29udGVudD1hLnJlc3RhcnRSZXF1aXJlZD8iXHU5MTREXHU3RjZFXHU1REYyXHU0RkREXHU1QjU4XHVGRjBDXHU5MEU4XHU1MjA2XHU5MEU4XHU3RjcyXHU1QjU3XHU2QkI1XHVGRjA4aG9zdC9wb3J0L2h0dHBzL3NoZWxsXHVGRjA5XHU5NzAwXHU4OTgxXHU5MUNEXHU1NDJGXHU2NzBEXHU1MkExXHU2MjREXHU3NTFGXHU2NTQ4XHUzMDAyIjoiXHU5MTREXHU3RjZFXHU1REYyXHU0RkREXHU1QjU4XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLCghYXx8IWEuZXJyb3IpJiYobi5jb25maWcmJihuLmNvbmZpZy5kZWZhdWx0TW9kZWw9aSksbi5jb25maWdEZWZhdWx0TW9kZWw9aSxpIT09cikpe24uY2hhdE1vZGVsPSIiO3RyeXtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1jaGF0LW1vZGVsIil9Y2F0Y2h7fSRuKHl0KCkpfX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NEZERFx1NUI1OFx1NTkzMVx1OEQyNVx1MzAwMiIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKX0pfWZ1bmN0aW9uICR2KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpc3BsYXktbWVzc2FnZSIpO2UmJihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUudGV4dENvbnRlbnQ9IiIpO3ZhciB0PXtjYXJkRGVmYXVsdHM6e2VkaXRDYXJkczohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtZWRpdCIpfHx7fSkuY2hlY2tlZCxpbmxpbmVUb29sczohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtaW5saW5lIil8fHt9KS5jaGVja2VkLHRlcm1pbmFsOiEhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC10ZXJtaW5hbCIpfHx7fSkuY2hlY2tlZCx0aGlua2luZzohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGhpbmtpbmciKXx8e30pLmNoZWNrZWQsdG9vbEdyb3VwOiEhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC10b29sZ3JvdXAiKXx8e30pLmNoZWNrZWR9fTtmZXRjaCgiL2FwaS9zZXR0aW5ncy9jb25maWciLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHQpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2UmJihyLmVycm9yPyhlLnRleHRDb250ZW50PXIuZXJyb3IsZS5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIik6KGUudGV4dENvbnRlbnQ9Ilx1NjYzRVx1NzkzQVx1OEJCRVx1N0Y2RVx1NURGMlx1NEZERFx1NUI1OCIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiKSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSwhci5lcnJvciYmbi5jb25maWcmJihuLmNvbmZpZy5jYXJkRGVmYXVsdHM9dC5jYXJkRGVmYXVsdHMpfSkuY2F0Y2goZnVuY3Rpb24oKXtlJiYoZS50ZXh0Q29udGVudD0iXHU0RkREXHU1QjU4XHU1OTMxXHU4RDI1XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfSl9ZnVuY3Rpb24gWHYoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2VydC1rZXktZmlsZSIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNlcnQtY2VydC1maWxlIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2VydC1tZXNzYWdlIik7aWYociYmKHIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksci50ZXh0Q29udGVudD0iIiksIWV8fCFlLmZpbGVzfHwhZS5maWxlc1swXXx8IXR8fCF0LmZpbGVzfHwhdC5maWxlc1swXSl7ciYmKHIudGV4dENvbnRlbnQ9Ilx1OEJGN1x1OTAwOVx1NjJFOVx1NzlDMVx1OTRBNVx1NTQ4Q1x1OEJDMVx1NEU2Nlx1NjU4N1x1NEVGNlx1MzAwMiIsci5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIixyLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTtyZXR1cm59dmFyIGk9bmV3IEZpbGVSZWFkZXI7aS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgYT1pLnJlc3VsdCx1PW5ldyBGaWxlUmVhZGVyO3Uub25sb2FkPWZ1bmN0aW9uKCl7dmFyIHM9dS5yZXN1bHQ7ZmV0Y2goIi9hcGkvc2V0dGluZ3MvdXBsb2FkLWNlcnQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtrZXk6YSxjZXJ0OnN9KX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uanNvbigpfSkudGhlbihmdW5jdGlvbihvKXtpZihyKXtpZihvLmVycm9yKXIudGV4dENvbnRlbnQ9by5lcnJvcixyLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiO2Vsc2V7ci50ZXh0Q29udGVudD0iXHU4QkMxXHU0RTY2XHU1REYyXHU0RTBBXHU0RjIwXHVGRjBDXHU5MUNEXHU1NDJGXHU1NDBFXHU3NTFGXHU2NTQ4XHUzMDAyIixyLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSI7dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNlcnQtc3RhdHVzIik7bCYmKGwudGV4dENvbnRlbnQ9Ilx1NURGMlx1NUI4OVx1ODhDNSBTU0wgXHU4QkMxXHU0RTY2IixsLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIpfXIuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtyJiYoci50ZXh0Q29udGVudD0iXHU0RTBBXHU0RjIwXHU1OTMxXHU4RDI1XHUzMDAyIixyLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLHIuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfSl9LHUucmVhZEFzVGV4dCh0LmZpbGVzWzBdKX0saS5yZWFkQXNUZXh0KGUuZmlsZXNbMF0pfWZ1bmN0aW9uICRvKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWxhdGVzdC12ZXJzaW9uIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tdXBkYXRlLWJ1dHRvbiIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInVwZGF0ZS1tZXNzYWdlIik7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NjhDMFx1NjdFNVx1NEUyRC4uLiIpLHImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksdCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxmZXRjaCgiL2FwaS9jaGVjay11cGRhdGUiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKGkuZXJyb3Ipe2UmJihlLnRleHRDb250ZW50PSJcdTY4QzBcdTY3RTVcdTU5MzFcdThEMjUiKTtyZXR1cm59dmFyIGE9aS5jaGFubmVsPT09ImJldGEiO2lmKGUmJihlLnRleHRDb250ZW50PWkubGF0ZXN0fHwoYT8iYmV0YSBcdTY3MkFcdTUzRDFcdTVFMDMiOiItIikpLCFpLmxhdGVzdCl7ciYmKHIudGV4dENvbnRlbnQ9YT8iXHU2NUUwXHU2Q0Q1XHU4QkZCXHU1M0Q2IG5wbSBiZXRhIFx1NzI0OFx1NjcyQ1x1MzAwMiI6Ilx1NjVFMFx1NkNENVx1OEZERVx1NjNBNVx1NTIzMCBucG0gcmVnaXN0cnlcdTMwMDIiLHIuc3R5bGUuY29sb3I9InZhcigtLWVycm9yKSIsci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk7cmV0dXJufWkudXBkYXRlQXZhaWxhYmxlJiZ0JiYodC50ZXh0Q29udGVudD1hPyJcdTY2RjRcdTY1QjBcdTUyMzAgQmV0YSI6Ilx1NjZGNFx1NjVCMFx1NTIzMFx1NjcwMFx1NjVCMFx1NzI0OCIsdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksIWkudXBkYXRlQXZhaWxhYmxlJiZyJiYoci50ZXh0Q29udGVudD1hPyJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjAgQmV0YSBcdTcyNDhcdTY3MkNcdTMwMDIiOiJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjBcdTcyNDhcdTY3MkNcdTMwMDIiLHIuc3R5bGUuY29sb3I9InZhcigtLXN1Y2Nlc3MpIixyLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NjhDMFx1NjdFNVx1NTkzMVx1OEQyNSIpfSl9ZnVuY3Rpb24gWnYoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBkYXRlLW1lc3NhZ2UiKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby11cGRhdGUtYnV0dG9uIik7dCYmKHQuZGlzYWJsZWQ9ITAsZSYmKGUudGV4dENvbnRlbnQ9Ilx1NkI2M1x1NTcyOFx1NjZGNFx1NjVCMFx1RkYwQ1x1OEJGN1x1N0EwRFx1NTAxOS4uLiIsZS5zdHlsZS5jb2xvcj0idmFyKC0tdGV4dC1zZWNvbmRhcnkpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSxmZXRjaCgiL2FwaS91cGRhdGUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihmdW5jdGlvbihyKXtpZihyLmVycm9yKXtlJiYoZS50ZXh0Q29udGVudD1yLmVycm9yLGUuc3R5bGUuY29sb3I9InZhcigtLWVycm9yKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksdC5kaXNhYmxlZD0hMTtyZXR1cm59aWYoZSYmKGUudGV4dENvbnRlbnQ9KHIubWVzc2FnZXx8Ilx1NjZGNFx1NjVCMFx1NUI4Q1x1NjIxMCIpKyJcdUZGMENcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTY3MERcdTUyQTFcdTIwMjYiLGUuc3R5bGUuY29sb3I9InZhcigtLXN1Y2Nlc3MpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSx0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHIuZGV0YWNoZWRVcGRhdGUpdW4oKTtlbHNlIGlmKHIucmVzdGFydFJlcXVpcmVkIT09ITEpeHMobnVsbCxlKTtlbHNle3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby1yZXN0YXJ0LWJ1dHRvbiIpO2kmJmkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtlJiYoZS50ZXh0Q29udGVudD0iXHU2NkY0XHU2NUIwXHU1OTMxXHU4RDI1XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLHQuZGlzYWJsZWQ9ITF9KSl9ZnVuY3Rpb24gZW0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tcmVzdGFydC1idXR0b24iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ1cGRhdGUtbWVzc2FnZSIpO3hzKGUsdCl9ZnVuY3Rpb24gdG0oKXtmZXRjaCgiL2FwaS9hdXRvLXVwZGF0ZSIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7aWYoZS5hcGspcmV0dXJuIGZldGNoKCIvYXBpL2FuZHJvaWQtYXBrLXVwZGF0ZT9jdXJyZW50VmVyc2lvbj0iK2VuY29kZVVSSUNvbXBvbmVudCh4bikse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYoISghdC51cGRhdGVBdmFpbGFibGV8fCF0LmRvd25sb2FkVXJsKSl0cnl7V2FuZE5hdGl2ZS5kb3dubG9hZFVwZGF0ZSh0LmRvd25sb2FkVXJsLHQuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5hcGsiLHQuc291cmNlfHwibG9jYWwiKX1jYXRjaHt9fSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uIG5tKCl7YW4mJmZldGNoKCIvYXBpL2F1dG8tdXBkYXRlIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUuanNvbigpfSkudGhlbihmdW5jdGlvbihlKXtpZihlLmRtZylyZXR1cm4gZmV0Y2goIi9hcGkvbWFjb3MtZG1nLXVwZGF0ZT9jdXJyZW50VmVyc2lvbj0iK2VuY29kZVVSSUNvbXBvbmVudChhbikse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYoISghdC51cGRhdGVBdmFpbGFibGV8fCF0LmRvd25sb2FkVXJsKSl0cnl7V2FuZE5hdGl2ZS5kb3dubG9hZFVwZGF0ZSh0LmRvd25sb2FkVXJsLHQuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5kbWciLHQuc291cmNlfHwibG9jYWwiKX1jYXRjaHt9fSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uIEdhKGUsdCl7dmFyIHI9e307cltlXT10LGZldGNoKCIvYXBpL2F1dG8tdXBkYXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShyKX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIpLHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLWFway10b2dnbGUiKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1kbWctdG9nZ2xlIik7YSYmKGEuY2hlY2tlZD0hIWkud2ViKSx1JiYodS5jaGVja2VkPSEhaS5hcGspLHMmJihzLmNoZWNrZWQ9ISFpLmRtZyl9KS5jYXRjaChmdW5jdGlvbigpe3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS0iK2UrIi10b2dnbGUiKTtpJiYoaS5jaGVja2VkPSF0KX0pfWZ1bmN0aW9uIHJtKGUpe2ZldGNoKCIvYXBpL3VwZGF0ZS1jaGFubmVsIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7Y2hhbm5lbDplfSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7dmFyIHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTtyJiYoci5jaGVja2VkPXQuY2hhbm5lbD09PSJiZXRhIiksJG8oKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTt0JiYodC5jaGVja2VkPWUhPT0iYmV0YSIpfSl9ZnVuY3Rpb24gWG8oZSl7Zm9yKHZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iKSxyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBpPXRbcl0uZ2V0QXR0cmlidXRlKCJkYXRhLWljb24iKT09PWU7dFtyXS5jbGFzc0xpc3QudG9nZ2xlKCJzZWxlY3RlZCIsaSksdFtyXS5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsaT8idHJ1ZSI6ImZhbHNlIil9fWZ1bmN0aW9uIGduKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1wZXJtaXNzaW9uLXN0YXR1cyIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXF1ZXN0LWJ0biIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXNldC1idG4iKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIik7aWYoZSl7dmFyIGE9dWkoKTtpZihhPT09bnVsbCl7aWYodHlwZW9mIE5vdGlmaWNhdGlvbj4idSIpe2UudGV4dENvbnRlbnQ9Ilx1NEUwRFx1NjUyRlx1NjMwMSIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZmctbXV0ZWQpIix0JiZ0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7cmV0dXJufWE9Tm90aWZpY2F0aW9uLnBlcm1pc3Npb259YT09PSJncmFudGVkIj8oZS50ZXh0Q29udGVudD0iXHU1REYyXHU2Mzg4XHU2NzQzIFx1MjcxMyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksciYmci5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSk6YT09PSJkZW5pZWQiPyhlLnRleHRDb250ZW50PSJcdTVERjJcdTYyRDJcdTdFREQiLGUuc3R5bGUuY29sb3I9InZhcigtLWRhbmdlcikiLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksciYmci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk6KGUudGV4dENvbnRlbnQ9Ilx1NjcyQVx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0td2FybmluZykiLHQmJnQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksciYmci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9fWZ1bmN0aW9uIGltKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiKTtpZihqZSl7d2luZG93Ll9vbk5hdGl2ZVBlcm1pc3Npb25SZXN1bHQ9ZnVuY3Rpb24odCl7Z24oKSxlJiYodD09PSJncmFudGVkIj8oZS50ZXh0Q29udGVudD0iXHUyNzEzIFx1NURGMlx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiKTooZS50ZXh0Q29udGVudD0iXHUyNzE3IFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwQ1x1OEJGN1x1NTcyOFx1N0NGQlx1N0VERlx1OEJCRVx1N0Y2RVx1NEUyRFx1NUYwMFx1NTQyRiBXYW5kIFx1NzY4NFx1OTAxQVx1NzdFNVx1Njc0M1x1OTY1MCIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZGFuZ2VyKSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLGRlbGV0ZSB3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdH07dHJ5e1dhbmROYXRpdmUucmVxdWVzdFBlcm1pc3Npb24oKX1jYXRjaHt9cmV0dXJufXR5cGVvZiBOb3RpZmljYXRpb24+InUifHxOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKS50aGVuKGZ1bmN0aW9uKHQpe2lmKGduKCksdD09PSJncmFudGVkIillJiYoZS50ZXh0Q29udGVudD0iXHUyNzEzIFx1NURGMlx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpO2Vsc2UgaWYodD09PSJkZW5pZWQiJiZlKXt2YXIgcj1sb2NhdGlvbi5vcmlnaW47ZS5pbm5lckhUTUw9J1x1NkQ0Rlx1ODlDOFx1NTY2OFx1NURGMlx1NjJFNlx1NjIyQVx1NjM4OFx1Njc0M1x1NUYzOVx1N0E5N1x1RkYwQ1x1OEJGN1x1NjI0Qlx1NTJBOFx1OTFDRFx1N0Y2RVx1RkYxQTxicj48c3BhbiBzdHlsZT0iZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDttYXJnaW46NHB4IDAiPlx1MjQ2MCBcdTcwQjlcdTUxRkJcdTU3MzBcdTU3NDBcdTY4MEZcdTVERTZcdTRGQTdcdTc2ODQgPHNwYW4gc3R5bGU9ImRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Zm9udC1zaXplOjExcHg7dmVydGljYWwtYWxpZ246bWlkZGxlIj5pPC9zcGFuPiBcdTYyMTZcdTk1MDFcdTU2RkVcdTY4MDc8L3NwYW4+PGJyPlx1MjQ2MSBcdTYyN0VcdTUyMzBcdTMwMENcdTkwMUFcdTc3RTVcdTMwMERcdTIxOTIgXHU2NTM5XHU0RTNBXHUzMDBDXHU1MTQxXHU4QkI4XHUzMDBEPGJyPlx1MjQ2MiBcdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjJcdTUzNzNcdTUzRUYnLGUuc3R5bGUuY29sb3I9InZhcigtLWZnLW11dGVkKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX19KX1mdW5jdGlvbiBabygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iKTtlJiYoZS5kaXNhYmxlZD0hMSxlLnRleHRDb250ZW50PSIxMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDEiKX1mdW5jdGlvbiBhbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIik7bi5kZWxheWVkTm90aWZpY2F0aW9uVGltZXImJihjbGVhclRpbWVvdXQobi5kZWxheWVkTm90aWZpY2F0aW9uVGltZXIpLG4uZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyPW51bGwpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iKTt0JiYodC5kaXNhYmxlZD0hMCx0LnRleHRDb250ZW50PSJcdTVERjJcdTVCODlcdTYzOTJcdUZGMDgxMHNcdUZGMDkiKSxlJiYoZS5pbm5lckhUTUw9Ilx1NURGMlx1NUI4OVx1NjM5MiAxMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDFcdTZENEJcdThCRDVcdTkwMUFcdTc3RTVcdUZGMENcdThCRjdcdTUyMDdcdTUyMzBcdTU0MEVcdTUzRjBcdTdCNDlcdTVGODVcdTMwMDIiLGUuc3R5bGUuY29sb3I9InZhcigtLXRleHQtc2Vjb25kYXJ5KSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksbi5kZWxheWVkTm90aWZpY2F0aW9uVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24uZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyPW51bGwsWm8oKSxlbCgpfSwxZTQpfWZ1bmN0aW9uIGVsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiKSx0PVtdO24uZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyKSxuLmRlbGF5ZWROb3RpZmljYXRpb25UaW1lcj1udWxsLFpvKCkpO3ZhciByPW1mKCk7dC5wdXNoKHI/Ilx1MjcxMyBcdTYzRDBcdTc5M0FcdTk3RjMiOiJcdTI3MTcgXHU2M0QwXHU3OTNBXHU5N0YzXHVGRjA4XHU2NUUwXHU2Q0Q1XHU2NEFEXHU2NTNFXHVGRjA5Iik7dmFyIGk9bi5ub3RpZkJ1YmJsZTtpZihvYSh7dGl0bGU6Ilx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNSIsYm9keToiXHU4RkQ5XHU2NjJGXHU0RTAwXHU2NzYxXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1XHUzMDAyIix0eXBlOiJpbmZvIixpY29uOiJcdTI2NkEiLGR1cmF0aW9uOjVlMyxwbGF5U291bmQ6ITF9KSx0LnB1c2goaT8iXHUyNzEzIFx1NUU5NFx1NzUyOFx1NTE4NVx1NkMxNFx1NkNFMSI6Ilx1MjAxMyBcdTVFOTRcdTc1MjhcdTUxODVcdTZDMTRcdTZDRTFcdUZGMDhcdTVERjJcdTUxNzNcdTk1RURcdUZGMDkiKSxqZSl7dmFyIGE9dWkoKTtpZihhPT09ImdyYW50ZWQiKXRyeXtXYW5kTmF0aXZlLnNlbmROb3RpZmljYXRpb24oIldhbmQgXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1IiwiXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHU1REYyXHU2QjYzXHU1RTM4XHU1REU1XHU0RjVDXHUzMDAyIiwid2FuZC10ZXN0IiksdC5wdXNoKCJcdTI3MTMgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1Iil9Y2F0Y2h7dC5wdXNoKCJcdTI3MTcgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHVGRjA4XHU1M0QxXHU5MDAxXHU1OTMxXHU4RDI1XHVGRjA5Iil9ZWxzZSBpZihhPT09ImRlbmllZCIpdC5wdXNoKCJcdTI3MTcgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHVGRjA4XHU1REYyXHU2MkQyXHU3RUREXHVGRjBDXHU4QkY3XHU1NzI4XHU3Q0ZCXHU3RURGXHU4QkJFXHU3RjZFXHU0RTJEXHU1RjAwXHU1NDJGXHVGRjA5Iik7ZWxzZXt3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdD1mdW5jdGlvbihvKXtpZihnbigpLG89PT0iZ3JhbnRlZCIpdHJ5e1dhbmROYXRpdmUuc2VuZE5vdGlmaWNhdGlvbigiV2FuZCBcdTZENEJcdThCRDVcdTkwMUFcdTc3RTUiLCJcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTVERjJcdTZCNjNcdTVFMzhcdTVERTVcdTRGNUNcdTMwMDIiLCJ3YW5kLXRlc3QiKSx0LnB1c2goIlx1MjcxMyBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdUZGMDhcdTVERjJcdTYzODhcdTY3NDNcdUZGMDkiKX1jYXRjaHt0LnB1c2goIlx1MjcxNyBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdUZGMDhcdTUzRDFcdTkwMDFcdTU5MzFcdThEMjVcdUZGMDkiKX1lbHNlIHQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwOSIpO2VyKGUsdCksZGVsZXRlIHdpbmRvdy5fb25OYXRpdmVQZXJtaXNzaW9uUmVzdWx0fTt0cnl7V2FuZE5hdGl2ZS5yZXF1ZXN0UGVybWlzc2lvbigpfWNhdGNoe31yZXR1cm59ZXIoZSx0KTtyZXR1cm59aWYodHlwZW9mIE5vdGlmaWNhdGlvbj4idSIpe3QucHVzaCgiXHUyMDEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NEUwRFx1NjUyRlx1NjMwMVx1RkYwOSIpLGVyKGUsdCk7cmV0dXJufXZhciB1PU5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uO2lmKHU9PT0iZ3JhbnRlZCIpe3RyeXt2YXIgcz1uZXcgTm90aWZpY2F0aW9uKCJXYW5kIFx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNSIse2JvZHk6Ilx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1NURGMlx1NkI2M1x1NUUzOFx1NURFNVx1NEY1Q1x1MzAwMiIsaWNvbjoiL2Zhdmljb24uaWNvIix0YWc6IndhbmQtdGVzdCJ9KTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cy5jbG9zZSgpfSw1ZTMpLHQucHVzaCgiXHUyNzEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNSIpfWNhdGNoe3QucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NTNEMVx1OTAwMVx1NTkzMVx1OEQyNVx1RkYwQ1x1NTNFRlx1ODBGRFx1OTcwMFx1ODk4MSBIVFRQU1x1RkYwOSIpfWVyKGUsdCl9ZWxzZSB1PT09ImRlbmllZCI/KHQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NURGMlx1NjJEMlx1N0VERFx1RkYwOSIpLGVyKGUsdCkpOk5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpLnRoZW4oZnVuY3Rpb24obyl7Z24oKSxvPT09ImdyYW50ZWQiP3QucHVzaCgiXHUyNzEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NURGMlx1NjM4OFx1Njc0M1x1RkYwOSIpOnQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwOSIpLGVyKGUsdCl9KX1mdW5jdGlvbiBlcihlLHQpe2lmKGUpe2UuaW5uZXJIVE1MPXQubWFwKGZ1bmN0aW9uKGkpe3JldHVybiBwKGkpfSkuam9pbigiPGJyPiIpO3ZhciByPXQuZXZlcnkoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaW5kZXhPZigiXHUyNzEzIik9PT0wfHxpLmluZGV4T2YoIlx1MjAxMyIpPT09MH0pO2Uuc3R5bGUuY29sb3I9cj8idmFyKC0tc3VjY2VzcykiOiJ2YXIoLS13YXJuaW5nKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX19ZnVuY3Rpb24gZnQoZSl7aWYoIWV8fHR5cGVvZiBlIT0ib2JqZWN0Inx8IW4udGVybWluYWwpcmV0dXJuIGU7dHJ5e3R5cGVvZiBuLnRlcm1pbmFsLnJlbWVhc3VyZT09ImZ1bmN0aW9uIiYmbi50ZXJtaW5hbC5yZW1lYXN1cmUoKX1jYXRjaHt9dmFyIHQ9bi50ZXJtaW5hbC5jb2xzLHI9bi50ZXJtaW5hbC5yb3dzO3JldHVybiB0eXBlb2YgdD09Im51bWJlciImJnR5cGVvZiByPT0ibnVtYmVyIiYmTnVtYmVyLmlzRmluaXRlKHQpJiZOdW1iZXIuaXNGaW5pdGUocikmJnQ+MCYmcj4wJiYoZS5jb2xzPXQsZS5yb3dzPXIpLGV9ZnVuY3Rpb24gdGwoKXtyZXR1cm4gbi50ZXJtaW5hbCYmbi50ZXJtaW5hbC5jb2xzP1Byb21pc2UucmVzb2x2ZSgpOm5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe3ZhciB0PSExLHI9ZnVuY3Rpb24oKXt0fHwodD0hMCxlKCkpfSxpPXNldFRpbWVvdXQociwyZTMpO3RyeXtLbigpfWNhdGNoe31yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtuLnRlcm1pbmFsJiZuLnRlcm1pbmFsLmNvbHMmJihjbGVhclRpbWVvdXQoaSkscigpKX0pfSl9KX1mdW5jdGlvbiBubCgpe3ZhciBlPWh0KCksdD1ldCgpLHI9UnQoZSxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGU/bi5jb25maWcuZGVmYXVsdE1vZGU6ImRlZmF1bHQiKTtuLnByZWZlcnJlZENvbW1hbmQ9ZSxuLmNoYXRNb2RlPVJ0KGUsbi5jaGF0TW9kZSksdGwoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7Y29tbWFuZDplLHByb3ZpZGVyOmUsY3dkOnQsbW9kZTpyfSkpfSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaS5lcnJvcil7ayhpLmVycm9yLCJlcnJvciIpO3JldHVybn1yZXR1cm4gbi5zZWxlY3RlZElkPWkuaWQseWUoKSxuLmRyYWZ0c1tpLmlkXT0iIixCdCgpLGp0KCl9KS50aGVuKGZ1bmN0aW9uKCl7TnQoITApfSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpfSl9dmFyIFByPSExO2Z1bmN0aW9uIHVtKCl7aWYoIVByKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW9kYWwtZXJyb3IiKSxyPWh0KCksaT1uLnNlc3Npb25DcmVhdGVLaW5kfHwic3RydWN0dXJlZCIsYT1uLnNlc3Npb25DcmVhdGVXb3JrdHJlZT09PSEwO2FpKHQpO3ZhciB1PWV0KCkscz0oZT9lLnZhbHVlLnRyaW0oKToiIil8fHUsbz1SdChyLG4ubW9kZVZhbHVlKTtpZihpPT09InN0cnVjdHVyZWQiKXtzbShzLG8sYSx0KTtyZXR1cm59b20ocixzLG8sYSx0KX19ZnVuY3Rpb24gc20oZSx0LHIsaSl7dmFyIGE9bi5zZXNzaW9uVG9vbD09PSJjb2RleCI/ImNvZGV4IjoiY2xhdWRlIjtyZXR1cm4gUHI9ITAsbi5tb2RlVmFsdWU9dCxuLmNoYXRNb2RlPXQsbi5zZXNzaW9uVG9vbD1hLG4ucHJlZmVycmVkQ29tbWFuZD1hLEZpKCksJG4oeXQoKSksVW8odm9pZCAwLGUsdCxyKS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiBHdChlKSx2bigpLHp0KCksdX0pLnRoZW4oZnVuY3Rpb24oKXtOdCghMCl9KS5jYXRjaChmdW5jdGlvbih1KXt6ZShpLHUmJnUubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1N0VEM1x1Njc4NFx1NTMxNlx1NEYxQVx1OEJERFx1RkYwQ1x1OEJGN1x1Nzg2RVx1OEJBNCBDbGF1ZGUgXHU1REYyXHU2QjYzXHU3ODZFXHU1Qjg5XHU4OEM1XHUzMDAyIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7UHI9ITF9KX1mdW5jdGlvbiBvbShlLHQscixpLGEpe1ByPSEwLG4ubW9kZVZhbHVlPXIsbi5jaGF0TW9kZT1yLG4uc2Vzc2lvblRvb2w9ZSxuLnByZWZlcnJlZENvbW1hbmQ9ZSxGaSgpLHRsKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe2NvbW1hbmQ6ZSxwcm92aWRlcjplLGN3ZDp0LG1vZGU6cix3b3JrdHJlZUVuYWJsZWQ6aX0pKX0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHUpe2lmKHUuZXJyb3Ipe3plKGEsdS5lcnJvcik7cmV0dXJufXJldHVybiBuLnNlbGVjdGVkSWQ9dS5pZCx5ZSgpLEd0KHQpLG4uZHJhZnRzW3UuaWRdPSIiLEJ0KCksdm4oKSx6dCgpLGp0KCl9KS50aGVuKGZ1bmN0aW9uKCl7bi5zZWxlY3RlZElkP1d0KG4uc2VsZWN0ZWRJZCk6TnQoITApfSkuY2F0Y2goZnVuY3Rpb24oKXt6ZShhLGU9PT0iY29kZXgiPyJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQTggQ29kZXggXHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3ODZFXHU4QkE0IGNvZGV4IFx1NURGMlx1NkI2M1x1Nzg2RVx1NUI4OVx1ODhDNVx1NUU3Nlx1NTNFRlx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1NjI2N1x1ODg0Q1x1MzAwMiI6Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3ODZFXHU4QkE0IENsYXVkZSBcdTVERjJcdTZCNjNcdTc4NkVcdTVCODlcdTg4QzVcdTMwMDIiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtQcj0hMX0pfWZ1bmN0aW9uIGxtKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkIik7ZSYmKGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHJsKSxlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHQpeyh0LmtleT09PSJFbnRlciJ8fHQua2V5PT09IiAiKSYmKHQucHJldmVudERlZmF1bHQoKSxybCgpKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtZHJvcGRvd24iKTtpZighKCFyfHxyLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIikpJiYhdC50YXJnZXQuY2xvc2VzdCgiLmJsYW5rLWNoYXQtY3dkLXdyYXAiKSl7ci5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtYXJyb3ciKTtpJiYoaS50ZXh0Q29udGVudD0iXHUyNUJDIil9fSkpfWZ1bmN0aW9uIHJsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkLWRyb3Bkb3duIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtYXJyb3ciKTtpZihlKXt2YXIgcj1lLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIik7cj8oY20oZSksZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx0JiYodC50ZXh0Q29udGVudD0iXHUyNUIyIikpOihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHQmJih0LnRleHRDb250ZW50PSJcdTI1QkMiKSl9fWZ1bmN0aW9uIGNtKGUpe3ZhciB0PXRuKCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRC4uLjwvZGl2PicsZWEoZnVuY3Rpb24ocil7dmFyIGk9IiIsYT1uLndvcmtpbmdEaXJ8fHQ7aWYoaSs9JzxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0nKyhhPT09dD8iIGFjdGl2ZSI6IiIpKyciIGRhdGEtcGF0aD0iJytwKHQpKyciPjxzcGFuIGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pdGVtLWxhYmVsIj5cdTlFRDhcdThCQTQ8L3NwYW4+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aCI+JytwKHQpKyI8L3NwYW4+PC9kaXY+IixyLmxlbmd0aCl7dmFyIHU9e307dVt0XT0hMCxyLmZvckVhY2goZnVuY3Rpb24ocyl7dVtzLnBhdGhdfHwodVtzLnBhdGhdPSEwLGkrPSc8ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pdGVtJysoYT09PXMucGF0aD8iIGFjdGl2ZSI6IiIpKyciIGRhdGEtcGF0aD0iJytwKHMucGF0aCkrJyI+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aCI+JytwKHMucGF0aCkrIjwvc3Bhbj48L2Rpdj4iKX0pfWUuaW5uZXJIVE1MPWksZS5xdWVyeVNlbGVjdG9yQWxsKCIuYmxhbmstY2hhdC1jd2QtaXRlbSIpLmZvckVhY2goZnVuY3Rpb24ocyl7cy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obyl7by5zdG9wUHJvcGFnYXRpb24oKTt2YXIgbD1zLmRhdGFzZXQucGF0aDtuLndvcmtpbmdEaXI9bDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiLGwpfWNhdGNoe312YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtcGF0aCIpO2MmJihjLnRleHRDb250ZW50PWwpLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkLWFycm93Iik7ZiYmKGYudGV4dENvbnRlbnQ9Ilx1MjVCQyIpO3ZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWlucHV0Iik7ZCYmKGQudmFsdWU9bCl9KX0pfSl9ZnVuY3Rpb24gZG0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVjZW50LXBhdGhzLWJ1YmJsZXMiKTtlJiZlYShmdW5jdGlvbih0KXtpZighdC5sZW5ndGgpe2UuaW5uZXJIVE1MPSIiO3JldHVybn1lLmlubmVySFRNTD10Lm1hcChmdW5jdGlvbihyKXtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0icmVjZW50LXBhdGgtYnViYmxlIiBkYXRhLXBhdGg9IicrcChyLnBhdGgpKyciIHRpdGxlPSInK3Aoci5wYXRoKSsnIj4nK3Aoci5uYW1lKSsiPC9idXR0b24+In0pLmpvaW4oIiIpLGUucXVlcnlTZWxlY3RvckFsbCgiLnJlY2VudC1wYXRoLWJ1YmJsZSIpLmZvckVhY2goZnVuY3Rpb24ocil7ci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7aSYmKGkudmFsdWU9ci5kYXRhc2V0LnBhdGh8fCIiLG4uY3dkVmFsdWU9ci5kYXRhc2V0LnBhdGh8fCIiKX0pfSl9KX1mdW5jdGlvbiBpbCgpe24uc3VnZ2VzdGlvblRpbWVyJiZjbGVhclRpbWVvdXQobi5zdWdnZXN0aW9uVGltZXIpLG4uc3VnZ2VzdGlvblRpbWVyPXNldFRpbWVvdXQoZm0sMTIwKX1mdW5jdGlvbiBmbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7aWYoZSYmZS5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpKXt0cigpO3JldHVybn12YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7dCYmZmV0Y2goIi9hcGkvcGF0aC1zdWdnZXN0aW9ucz9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQudmFsdWUudHJpbSgpKSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihwbSkuY2F0Y2godHIpfWZ1bmN0aW9uIHBtKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2Qtc3VnZ2VzdGlvbnMiKTtpZighdHx8IWUubGVuZ3RoKXt0cigpO3JldHVybn10LmlubmVySFRNTD1lLm1hcChmdW5jdGlvbihyKXtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0ic3VnZ2VzdGlvbi1pdGVtIiBkYXRhLXBhdGg9IicrcChyLnBhdGgpKyciPjxzdHJvbmc+JytwKHIubmFtZSkrIjwvc3Ryb25nPjxzbWFsbD4iK3Aoci5wYXRoKSsiPC9zbWFsbD48L2J1dHRvbj4ifSkuam9pbigiIiksdC5xdWVyeVNlbGVjdG9yQWxsKCIuc3VnZ2VzdGlvbi1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihyKXtyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2QiKS52YWx1ZT1yLmRhdGFzZXQucGF0aHx8IiIsbi5jd2RWYWx1ZT1yLmRhdGFzZXQucGF0aHx8IiIsdHIoKX0pfSksdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX1mdW5jdGlvbiB0cigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2Qtc3VnZ2VzdGlvbnMiKTtlJiYoZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLmlubmVySFRNTD0iIil9ZnVuY3Rpb24gdm0oZSl7aWYoIWUuaXNDb21wb3Npbmcpe2lmKFVzKGUpKXtDYShlKTtyZXR1cm59aWYoZS5rZXk9PT0iRW50ZXIiKXtpZihlLnNoaWZ0S2V5KXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKHQpe3ZhciByPXQuc2VsZWN0aW9uU3RhcnR8fDAsaT10LnZhbHVlLGE9aS5zbGljZSgwLHIpK2AKYCtpLnNsaWNlKHIpO3QudmFsdWU9YSx0LnNlbGVjdGlvblN0YXJ0PXIrMSx0LnNlbGVjdGlvbkVuZD1yKzEsdXQoYSwhMCksSHQodCl9cmV0dXJufWUucHJldmVudERlZmF1bHQoKTt2YXIgdT0hIShlLm1ldGFLZXl8fGUuY3RybEtleSk7cXModT97aW50ZXJydXB0OiEwfTp2b2lkIDApO3JldHVybn1pZihlLmtleT09PSJCYWNrc3BhY2UiKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO20mJnV0KG0udmFsdWUsITApfSwwKTtyZXR1cm59aWYoZS5rZXk9PT0iVGFiIil7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZih0KXt2YXIgcj10LnNlbGVjdGlvblN0YXJ0fHwwLGk9dC52YWx1ZSxhPWkuc2xpY2UoMCxyKSsiCSIraS5zbGljZShyKTt0LnZhbHVlPWEsdXQoYSwhMCl9cmV0dXJufWlmKGUua2V5PT09IkVzY2FwZSIpe2UucHJldmVudERlZmF1bHQoKTt2YXIgcz15dCgpO3VlKHMpP3MmJnMuc3RydWN0dXJlZFN0YXRlJiZzLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmQmEoKTpndChCcigiZXNjYXBlIiksImVzY2FwZSIpO3JldHVybn1pZigoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImMiKXt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksbD1vJiZvLnNlbGVjdGlvblN0YXJ0IT09by5zZWxlY3Rpb25FbmR8fGZpKCk7aWYobClyZXR1cm47dmFyIGM9eXQoKTtpZih1ZShjKSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGMmJmMuc3RydWN0dXJlZFN0YXRlJiZjLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmQmEoKTtyZXR1cm59ZS5wcmV2ZW50RGVmYXVsdCgpLGd0KEJyKCJjdHJsX2MiKSwiY3RybF9jIik7cmV0dXJufWlmKChlLm1ldGFLZXl8fGUuY3RybEtleSkmJmUua2V5LnRvTG93ZXJDYXNlKCk9PT0iZCIpe3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxkPWYmJmYuc2VsZWN0aW9uU3RhcnQhPT1mLnNlbGVjdGlvbkVuZHx8ZmkoKTtpZihkKXJldHVybjt2YXIgdj15dCgpO2lmKHVlKHYpKXtlLnByZXZlbnREZWZhdWx0KCk7cmV0dXJufWUucHJldmVudERlZmF1bHQoKSxndChCcigiY3RybF9kIiksImN0cmxfZCIpO3JldHVybn1pZigoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImwiKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGc9eXQoKTtpZih1ZShnKSlyZXR1cm47Z3QoQnIoImN0cmxfbCIpLCJjdHJsX2wiKTtyZXR1cm59aWYoISgoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImEiKSYmISgoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09InYiKSl7aWYoKGUubWV0YUtleXx8ZS5jdHJsS2V5KSYmZS5rZXkudG9Mb3dlckNhc2UoKT09PSJ4Iil7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLGg9dCYmdC5zZWxlY3Rpb25TdGFydCE9PXQuc2VsZWN0aW9uRW5kO2lmKGgpcmV0dXJuO2UucHJldmVudERlZmF1bHQoKSxndCgiGCIsImN0cmxfeCIpO3JldHVybn1lLmtleS5sZW5ndGg9PT0xJiYhZS5jdHJsS2V5JiYhZS5tZXRhS2V5JiYhZS5hbHRLZXkmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgbT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7bSYmdXQobS52YWx1ZSl9LDApfX19dmFyIG1tPTEwKjEwMjQqMTAyNDtmdW5jdGlvbiBnbShlKXtyZXR1cm4gZTwxMDI0P2UrIiBCIjplPDEwMjQqMTAyND8oZS8xMDI0KS50b0ZpeGVkKDEpKyIgS0IiOihlLygxMDI0KjEwMjQpKS50b0ZpeGVkKDEpKyIgTUIifWZ1bmN0aW9uIGhtKGUpe3JldHVybi9eaW1hZ2VcLyhwbmd8anBlP2d8Z2lmfHdlYnB8Ym1wfHN2Z1wreG1sKS8udGVzdChlKX1mdW5jdGlvbiBRYShlKXtpZihlKXtpZihlLnNpemU+bW0pe2soIlx1NjU4N1x1NEVGNlx1OEZDN1x1NTkyN1x1RkYwOFx1NEUwQVx1OTY1MCAxMCBNQlx1RkYwOTogIitlLm5hbWUsImVycm9yIik7cmV0dXJufXZhciB0PXtmaWxlOmUsbmFtZTplLm5hbWUsc2l6ZTplLnNpemUscHJldmlld1VybDpudWxsfTtobShlLnR5cGUpJiYodC5wcmV2aWV3VXJsPVVSTC5jcmVhdGVPYmplY3RVUkwoZSkpLG4ucGVuZGluZ0F0dGFjaG1lbnRzLnB1c2godCksJGEoKX19ZnVuY3Rpb24geW0oZSl7dmFyIHQ9bi5wZW5kaW5nQXR0YWNobWVudHMuc3BsaWNlKGUsMSk7dC5sZW5ndGgmJnRbMF0ucHJldmlld1VybCYmVVJMLnJldm9rZU9iamVjdFVSTCh0WzBdLnByZXZpZXdVcmwpLCRhKCl9ZnVuY3Rpb24gYm0oKXtuLnBlbmRpbmdBdHRhY2htZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UucHJldmlld1VybCYmVVJMLnJldm9rZU9iamVjdFVSTChlLnByZXZpZXdVcmwpfSksbi5wZW5kaW5nQXR0YWNobWVudHM9W10sJGEoKX1mdW5jdGlvbiAkYSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2htZW50LXByZXZpZXciKTtpZihlKXt2YXIgdD1uLnBlbmRpbmdBdHRhY2htZW50cztpZih0Lmxlbmd0aD09PTApe2UuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS5pbm5lckhUTUw9IiI7cmV0dXJufWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7Zm9yKHZhciByPSIiLGk9MDtpPHQubGVuZ3RoO2krKyl7dmFyIGE9dFtpXSx1PWEucHJldmlld1VybD8nPGltZyBzcmM9IicrcChhLnByZXZpZXdVcmwpKyciIGFsdD0iIj4nOic8c3BhbiBjbGFzcz0iYXR0LWljb24iPicrSygiZmlsZSIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS43fSkrIjwvc3Bhbj4iO3IrPSc8c3BhbiBjbGFzcz0iYXR0YWNobWVudC1waWxsIiBkYXRhLWluZGV4PSInK2krJyI+Jyt1Kyc8c3BhbiBjbGFzcz0iYXR0LW5hbWUiIHRpdGxlPSInK3AoYS5uYW1lKSsnIj4nK3AoYS5uYW1lKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhdHQtc2l6ZSI+JytnbShhLnNpemUpKyc8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iYXR0LXJlbW92ZSIgZGF0YS1pbmRleD0iJytpKyciIHRpdGxlPSJcdTc5RkJcdTk2NjQiPlx4RDc8L2J1dHRvbj48L3NwYW4+J31lLmlubmVySFRNTD1yLGUucXVlcnlTZWxlY3RvckFsbCgiLmF0dC1yZW1vdmUiKS5mb3JFYWNoKGZ1bmN0aW9uKHMpe3MuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKG8pe28ucHJldmVudERlZmF1bHQoKSxvLnN0b3BQcm9wYWdhdGlvbigpLHltKHBhcnNlSW50KHMuZ2V0QXR0cmlidXRlKCJkYXRhLWluZGV4IiksMTApKX0pfSl9fWZ1bmN0aW9uIEVtKGUpe2lmKCFuLnBlbmRpbmdBdHRhY2htZW50cy5sZW5ndGgpcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7dmFyIHQ9bmV3IEZvcm1EYXRhO3JldHVybiBuLnBlbmRpbmdBdHRhY2htZW50cy5mb3JFYWNoKGZ1bmN0aW9uKHIpe3QuYXBwZW5kKCJmaWxlcyIsci5maWxlLHIubmFtZSl9KSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3VwbG9hZCIse21ldGhvZDoiUE9TVCIsYm9keTp0LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLm9rP3IuanNvbigpOnIuanNvbigpLnRoZW4oZnVuY3Rpb24oaSl7dGhyb3cgbmV3IEVycm9yKGkuZXJyb3J8fCJcdTRFMEFcdTRGMjBcdTU5MzFcdThEMjUiKX0pfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5maWxlc3x8W119KX1mdW5jdGlvbiBGbShlKXtpZighZXx8IWUubGVuZ3RoKXJldHVybiIiO3ZhciB0PWUubWFwKGZ1bmN0aW9uKHIpe3JldHVybiByLnNhdmVkUGF0aH0pO3JldHVybmBbXHU5NjQ0XHU0RUY2XHU1REYyXHU0RTBBXHU0RjIwXHVGRjBDXHU4QkY3XHU2N0U1XHU3NzBCXHU0RUU1XHU0RTBCXHU2NTg3XHU0RUY2OgpgK3Quam9pbihgCmApK2BdCgpgfWZ1bmN0aW9uIGFsKGUpe2lmKCFuLnRlcm1pbmFsSW50ZXJhY3RpdmV8fCFlKXJldHVybiExO3ZhciB0PWUudmFsdWV8fCIiO3JldHVybiB0PyhndCh0LCJpbnRlcmFjdGl2ZV90ZXh0IikuY2F0Y2goZnVuY3Rpb24oKXt9KSxlLnZhbHVlPSIiLEh0KGUpLHV0KCIiLCEwKSwhMCk6ITF9ZnVuY3Rpb24gd20oZSl7dmFyIHQ9ZS5jbGlwYm9hcmREYXRhJiZlLmNsaXBib2FyZERhdGEuaXRlbXM7aWYodCYmIW4udGVybWluYWxJbnRlcmFjdGl2ZSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspaWYodFtyXS50eXBlLmluZGV4T2YoImltYWdlLyIpPT09MCl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBpPXRbcl0uZ2V0QXNGaWxlKCk7aSYmUWEoaSk7cmV0dXJufX12YXIgYT1lLmNsaXBib2FyZERhdGEmJmUuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCJ0ZXh0Iik7aWYoYSl7aWYoZS5wcmV2ZW50RGVmYXVsdCgpLG4udGVybWluYWxJbnRlcmFjdGl2ZSl7Z3QoYSwicGFzdGUiKS5jYXRjaChmdW5jdGlvbigpe30pO3JldHVybn12YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7aWYodSl7dmFyIHM9dS5zZWxlY3Rpb25TdGFydHx8MCxvPXUuc2VsZWN0aW9uRW5kfHwwLGw9dS52YWx1ZSxjPWwuc2xpY2UoMCxzKSthK2wuc2xpY2Uobyk7dS52YWx1ZT1jLHV0KGMpfX19ZnVuY3Rpb24gbGcoZSl7Z3QoZSksdXQoQ20oKStlKX1mdW5jdGlvbiBDbSgpe2lmKG4uc2VsZWN0ZWRJZCl7aWYobi5kcmFmdHNbbi5zZWxlY3RlZElkXSE9PXZvaWQgMClyZXR1cm4gbi5kcmFmdHNbbi5zZWxlY3RlZElkXTt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtZHJhZnQtIituLnNlbGVjdGVkSWQpO2lmKGUpcmV0dXJuIGV9Y2F0Y2h7fX1yZXR1cm4iIn1mdW5jdGlvbiB1dChlLHQpe2lmKG4uc2VsZWN0ZWRJZCl7bi5kcmFmdHNbbi5zZWxlY3RlZElkXT1lO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1kcmFmdC0iK24uc2VsZWN0ZWRJZCxlKX1jYXRjaHt9aWYoIXQpe3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtyJiYoci52YWx1ZT1lKX19fXZhciBYYT0hMTtmdW5jdGlvbiBCbSgpe2lmKCFYYSl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInByb21wdC1vcHRpbWl6ZS1idG4iKSxyPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKGUpe3ZhciBpPShlLnZhbHVlfHwiIikudHJpbSgpO2lmKCFpKXt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmaygiXHU4QkY3XHU1MTQ4XHU4RjkzXHU1MTY1XHU4OTgxXHU0RjE4XHU1MzE2XHU3Njg0XHU1MTg1XHU1QkI5XHUzMDAyIiwiaW5mbyIpLGUuZm9jdXMoKTtyZXR1cm59WGE9ITAsdCYmKHQuY2xhc3NMaXN0LmFkZCgiaXMtbG9hZGluZyIpLHQuZGlzYWJsZWQ9ITAsdC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU2QjYzXHU1NzI4XHU0RjE4XHU1MzE2XHUyMDI2IikpLHImJnIuY2xhc3NMaXN0LmFkZCgiaXMtb3B0aW1pemluZyIpLGUuc2V0QXR0cmlidXRlKCJhcmlhLWJ1c3kiLCJ0cnVlIik7dmFyIGE9ZS5yZWFkT25seTtlLnJlYWRPbmx5PSEwO3ZhciB1PXt0ZXh0Oml9O24mJm4uc2VsZWN0ZWRJZCYmKHUuc2Vzc2lvbklkPW4uc2VsZWN0ZWRJZCksZmV0Y2goIi9hcGkvb3B0aW1pemUtcHJvbXB0Iix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh1KX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJue29rOnMub2ssZGF0YTpvfX0pfSkudGhlbihmdW5jdGlvbihzKXtpZighcy5vayl0aHJvdyBuZXcgRXJyb3Iocy5kYXRhJiZzLmRhdGEuZXJyb3J8fCJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdTU5MzFcdThEMjVcdTMwMDIiKTt2YXIgbz1zLmRhdGEmJnMuZGF0YS5vcHRpbWl6ZWR8fCIiO2lmKCFvKXRocm93IG5ldyBFcnJvcigiQ2xhdWRlIFx1OEZENFx1NTZERVx1NEUzQVx1N0E3QVx1MzAwMiIpO0RtKGUsbyl9KS5jYXRjaChmdW5jdGlvbihzKXt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmayhzJiZzLm1lc3NhZ2V8fCJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdTU5MzFcdThEMjVcdTMwMDIiLCJlcnJvciIpLHQmJih0LmNsYXNzTGlzdC5yZW1vdmUoImlzLWxvYWRpbmciKSx0LmNsYXNzTGlzdC5hZGQoImlzLXNoYWtlIiksc2V0VGltZW91dChmdW5jdGlvbigpe3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtc2hha2UiKX0sNDAwKSl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7WGE9ITEsdCYmKHQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtbG9hZGluZyIpLHQuZGlzYWJsZWQ9ITEsdC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU2M0QwXHU3OTNBXHU4QkNEXHU0RjE4XHU1MzE2XHVGRjA4QUlcdUZGMDkiKSksciYmci5jbGFzc0xpc3QucmVtb3ZlKCJpcy1vcHRpbWl6aW5nIiksZS5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtYnVzeSIpLGUucmVhZE9ubHk9YX0pfX19ZnVuY3Rpb24gRG0oZSx0KXtpZighZSlyZXR1cm47dmFyIHI9QXJyYXkuZnJvbSh0KSxpPXIubGVuZ3RoO2lmKGk9PT0wKXtlLnZhbHVlPSIiLHV0KCIiLCEwKSxIdChlKTtyZXR1cm59dmFyIGE9TWF0aC5taW4oNzAwLE1hdGgubWF4KDIyMCxpKjgpKSx1PU1hdGgubWluKGksNjApLHM9TWF0aC5jZWlsKGkvdSksbz1hL3UsbD0wO2UudmFsdWU9IiIsSHQoZSk7ZnVuY3Rpb24gYygpe2lmKGw9TWF0aC5taW4oaSxsK3MpLGUudmFsdWU9ci5zbGljZSgwLGwpLmpvaW4oIiIpLEh0KGUpLGw8aSlzZXRUaW1lb3V0KGMsbyk7ZWxzZXt1dCh0LCEwKTt0cnl7ZS5zZXRTZWxlY3Rpb25SYW5nZSh0Lmxlbmd0aCx0Lmxlbmd0aCl9Y2F0Y2h7fX19YygpfWZ1bmN0aW9uIGtpKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKHQpe3ZhciByPWV8fGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxpPSEhKHImJnIudmFsdWUmJnIudmFsdWUubGVuZ3RoPjApO3QuY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLXRleHQiLGkpfX1uLl9zdGF0dXNCYXJUaW1lcklkPW51bGwsbi5fc3RhdHVzQmFyU3RhcnRUaW1lPTA7dmFyIEhyPW51bGwsQWk9MDtmdW5jdGlvbiBaYShlKXtpZighZSlyZXR1cm57YWN0aXZlOiExfTtpZihlLmFyY2hpdmVkKXJldHVybnthY3RpdmU6ITF9O3ZhciB0PSEhZS5wZXJtaXNzaW9uQmxvY2tlZCxyPSEhKHVlKGUpJiZlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpLGk9IXVlKGUpJiZlLnN0YXR1cz09PSJydW5uaW5nIjtyZXR1cm57YWN0aXZlOnJ8fGl8fHQsaW5GbGlnaHQ6cixwdHlSdW5uaW5nOmkscGVybWlzc2lvbkJsb2NrZWQ6dH19ZnVuY3Rpb24ga20oZSl7dmFyIHQ9TWF0aC5tYXgoMCxNYXRoLmZsb29yKGUvMWUzKSk7aWYodDw2MClyZXR1cm4gdCsicyI7dmFyIHI9TWF0aC5mbG9vcih0LzYwKSxpPXQlNjA7aWYocjw2MClyZXR1cm4gcisibSIrKGk/IiAiK2krInMiOiIiKTt2YXIgYT1NYXRoLmZsb29yKHIvNjApLHU9ciU2MDtyZXR1cm4gYSsiaCIrKHU/IiAiK3UrIm0iOiIiKX1mdW5jdGlvbiBldShlKXt2YXIgdD1aYShlKSxyPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWhlYWRlci1yb3ciKSxpPXI/ci5xdWVyeVNlbGVjdG9yKCIuc2Vzc2lvbi1zdGF0dXMtcGlsbCIpOm51bGwsYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO2lmKHImJihyLmNsYXNzTGlzdC50b2dnbGUoImlzLXJ1bm5pbmciLHQuYWN0aXZlKSxyLmNsYXNzTGlzdC50b2dnbGUoImlzLXBlcm1pc3Npb24tYmxvY2tlZCIsdC5wZXJtaXNzaW9uQmxvY2tlZCkpLGkpe3ZhciB1PWkucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3RhdHVzLWVsYXBzZWQiKTtpZih0LmluRmxpZ2h0KXtBaXx8KEFpPW4uX3N0YXR1c0JhclN0YXJ0VGltZT4wP24uX3N0YXR1c0JhclN0YXJ0VGltZTpEYXRlLm5vdygpKTt2YXIgcz1rbShEYXRlLm5vdygpLUFpKTt1fHwodT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdS5jbGFzc05hbWU9InNlc3Npb24tc3RhdHVzLWVsYXBzZWQiLGkuYXBwZW5kQ2hpbGQodSkpLHUudGV4dENvbnRlbnQ9c31lbHNlIEFpPTAsdSYmdS5yZW1vdmUoKX10LmFjdGl2ZT9Icnx8KEhyPXNldEludGVydmFsKGZ1bmN0aW9uKCl7dmFyIG89bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09bi5zZWxlY3RlZElkfSk7ZXUobyl9LDFlMykpOkhyJiYoY2xlYXJJbnRlcnZhbChIciksSHI9bnVsbCl9ZnVuY3Rpb24gdHUoZSx0KXtldSh0KTt2YXIgcj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY29tcG9zZXItdG9wLXJvdyIpLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnN0cnVjdHVyZWQtc3RhdHVzLWJhciIpLGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIik7aWYoIXR8fCF1ZSh0KSl7aSYmaS5yZW1vdmUoKSxhJiZhLmNsYXNzTGlzdC5yZW1vdmUoImluLWZsaWdodCIpLGNsZWFySW50ZXJ2YWwobi5fc3RhdHVzQmFyVGltZXJJZCksbi5fc3RhdHVzQmFyVGltZXJJZD1udWxsO3JldHVybn12YXIgdT10LnN0cnVjdHVyZWRTdGF0ZSYmdC5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQ7aWYodSl7aWYobi5fc3RhdHVzQmFyVGltZXJJZHx8KG4uX3N0YXR1c0JhclN0YXJ0VGltZT1EYXRlLm5vdygpKSxhJiZhLmNsYXNzTGlzdC5hZGQoImluLWZsaWdodCIpLCFpJiZyKXt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtzLmNsYXNzTmFtZT0ic3RydWN0dXJlZC1zdGF0dXMtYmFyIixzLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9InN0YXR1cy1iYXItZG90Ij48L3NwYW4+PHNwYW4gY2xhc3M9InN0YXR1cy1iYXItbGFiZWwiPlx1NTZERVx1NTkwRFx1NEUyRDwvc3Bhbj48c3BhbiBjbGFzcz0ic3RhdHVzLWJhci10aW1lciI+MC4wczwvc3Bhbj4nLHIuYXBwZW5kQ2hpbGQocyksaT1zfWVsc2UgaWYoaSYmaS5jbGFzc0xpc3QuY29udGFpbnMoImNvbXBsZXRlZCIpKXtpLmNsYXNzTGlzdC5yZW1vdmUoImNvbXBsZXRlZCIpLGkuc3R5bGUuYW5pbWF0aW9uPSJub25lIixpLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLWxhYmVsIikudGV4dENvbnRlbnQ9Ilx1NTZERVx1NTkwRFx1NEUyRCI7dmFyIG89aS5xdWVyeVNlbGVjdG9yKCIuc3RhdHVzLWJhci1kb3QiKTtvJiYoby5zdHlsZS5kaXNwbGF5PSIiKSxuLl9zdGF0dXNCYXJTdGFydFRpbWU9RGF0ZS5ub3coKX1uLl9zdGF0dXNCYXJUaW1lcklkfHwobi5fc3RhdHVzQmFyVGltZXJJZD1zZXRJbnRlcnZhbChmdW5jdGlvbigpe3ZhciBjPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXI6bm90KC5jb21wbGV0ZWQpIik7aWYoIWMpe2NsZWFySW50ZXJ2YWwobi5fc3RhdHVzQmFyVGltZXJJZCksbi5fc3RhdHVzQmFyVGltZXJJZD1udWxsO3JldHVybn12YXIgZj0oKERhdGUubm93KCktbi5fc3RhdHVzQmFyU3RhcnRUaW1lKS8xZTMpLnRvRml4ZWQoMSksZD1jLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLXRpbWVyIik7ZCYmKGQudGV4dENvbnRlbnQ9ZisicyIpfSwxMDApKX1lbHNlIGlmKGNsZWFySW50ZXJ2YWwobi5fc3RhdHVzQmFyVGltZXJJZCksbi5fc3RhdHVzQmFyVGltZXJJZD1udWxsLGEmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaW4tZmxpZ2h0IiksaSYmIWkuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21wbGV0ZWQiKSl7dmFyIGw9bi5fc3RhdHVzQmFyU3RhcnRUaW1lPygoRGF0ZS5ub3coKS1uLl9zdGF0dXNCYXJTdGFydFRpbWUpLzFlMykudG9GaXhlZCgxKToiMC4wIjtpLmNsYXNzTGlzdC5hZGQoImNvbXBsZXRlZCIpLGkucXVlcnlTZWxlY3RvcigiLnN0YXR1cy1iYXItbGFiZWwiKS50ZXh0Q29udGVudD0iXHU1QjhDXHU2MjEwIixpLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLXRpbWVyIikudGV4dENvbnRlbnQ9bCsicyI7dmFyIG89aS5xdWVyeVNlbGVjdG9yKCIuc3RhdHVzLWJhci1kb3QiKTtvJiYoby5zdHlsZS5kaXNwbGF5PSJub25lIiksbi5fc3RhdHVzQmFyU3RhcnRUaW1lPTAsc2V0VGltZW91dChmdW5jdGlvbigpe2kucGFyZW50Tm9kZSYmaS5yZW1vdmUoKX0sM2UzKX19ZnVuY3Rpb24gcChlKXtyZXR1cm4gU3RyaW5nKGUpLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKS5yZXBsYWNlKC8iL2csIiZxdW90OyIpLnJlcGxhY2UoLycvZywiJiMzOTsiKX0oZnVuY3Rpb24oKXt0cnl7dmFyIGU9bmF2aWdhdG9yJiZuYXZpZ2F0b3IudXNlckFnZW50fHwiIjsvV2FuZEFwcFwvLy50ZXN0KGUpJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaXMtd2FuZC1hcHAiKSwvV2FuZFBsYXRmb3JtXC9pT1MvLnRlc3QoZSkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCJpcy13YW5kLWlvcyIpfWNhdGNoe310cnl7d2luZG93Ll9fd2FuZE5hdGl2ZUJhY2tIb29rZWQ9ITB9Y2F0Y2h7fX0pKCl9KSgpOwo="),
9
- stylesCss: decode("OnJvb3R7LS1iZy1wcmltYXJ5OiAjZjZmMWU4Oy0tYmctc2Vjb25kYXJ5OiByZ2JhKDI1NSwgMjUxLCAyNDUsIC45Mik7LS1iZy10ZXJ0aWFyeTogI2YwZTVkNzstLWJnLWVsZXZhdGVkOiAjZmZmYWYyOy0tYmctc3VyZmFjZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNik7LS1iZy10ZXJtaW5hbDogIzFmMWIxNzstLWJnLW92ZXJsYXk6IHJnYmEoNDIsIDI4LCAxOCwgLjQpOy0tYm9yZGVyLXN1YnRsZTogcmdiYSgxNTAsIDExOCwgODUsIC4xMik7LS1ib3JkZXItZGVmYXVsdDogcmdiYSgxMjUsIDkxLCA1NywgLjI1KTstLWJvcmRlci1zdHJvbmc6IHJnYmEoMTI1LCA5MSwgNTcsIC40KTstLWJvcmRlcjogdmFyKC0tYm9yZGVyLWRlZmF1bHQpOy0tYm9yZGVyLWZvY3VzOiByZ2JhKDE5NywgMTAxLCA2MSwgLjUpOy0tdGV4dC1wcmltYXJ5OiAjMmExZjE2Oy0tdGV4dC1zZWNvbmRhcnk6ICM1YTQ1MzU7LS10ZXh0LXRlcnRpYXJ5OiAjN2E2MzUwOy0tdGV4dC1tdXRlZDogIzhjNzM1ZjstLXRleHQtaW52ZXJzZTogI2ZmZmZmZjstLXRleHQtbGluazogI2M1NjUzZDstLWFjY2VudDogI2M1NjUzZDstLWFjY2VudC1ob3ZlcjogI2Q0NzU1MDstLWFjY2VudC1hY3RpdmU6ICNhZjUzMzA7LS1hY2NlbnQtc29mdDogI2U4YzVhZTstLWFjY2VudC1tdXRlZDogcmdiYSgxOTcsIDEwMSwgNjEsIC4xMik7LS1hY2NlbnQtZ2xvdzogcmdiYSgxOTcsIDEwMSwgNjEsIC4yNSk7LS1zdWNjZXNzOiAjNGY3YTU4Oy0tc3VjY2Vzcy1ob3ZlcjogIzVhOGY2NjstLXN1Y2Nlc3MtbXV0ZWQ6IHJnYmEoNzksIDEyMiwgODgsIC4xNCk7LS1zdWNjZXNzLWdsb3c6IHJnYmEoNzksIDEyMiwgODgsIC4zKTstLXdhcm5pbmc6ICNhOTZhMmY7LS13YXJuaW5nLWhvdmVyOiAjYzA3YTM1Oy0td2FybmluZy1tdXRlZDogcmdiYSgxNjksIDEwNiwgNDcsIC4xNCk7LS13YXJuaW5nLWdsb3c6IHJnYmEoMTY5LCAxMDYsIDQ3LCAuMjUpOy0tZGFuZ2VyOiAjYjI0ZjQ1Oy0tZGFuZ2VyLWhvdmVyOiAjYzk2MDU1Oy0tZGFuZ2VyLW11dGVkOiByZ2JhKDE3OCwgNzksIDY5LCAuMTQpOy0tZGFuZ2VyLWdsb3c6IHJnYmEoMTc4LCA3OSwgNjksIC4yNSk7LS1pbmZvOiAjNGE2ZmE1Oy0taW5mby1tdXRlZDogcmdiYSg3NCwgMTExLCAxNjUsIC4xNCk7LS1zaGFkb3cteHM6IDAgMXB4IDNweCByZ2JhKDg5LCA1OCwgMzIsIC4wNCk7LS1zaGFkb3ctc206IDAgMnB4IDhweCByZ2JhKDg5LCA1OCwgMzIsIC4wNik7LS1zaGFkb3ctbWQ6IDAgNHB4IDE2cHggcmdiYSg4OSwgNTgsIDMyLCAuMDgpOy0tc2hhZG93LWxnOiAwIDhweCAzMnB4IHJnYmEoODksIDU4LCAzMiwgLjEyKTstLXNoYWRvdy14bDogMCAxMnB4IDQ4cHggcmdiYSg4OSwgNTgsIDMyLCAuMTYpOy0tc2hhZG93LXNvZnQ6IDAgMjBweCA1MHB4IHJnYmEoODksIDU4LCAzMiwgLjEyKTstLXNoYWRvdy1lbGV2YXRlZDogMCA4cHggMjRweCByZ2JhKDg5LCA1OCwgMzIsIC4wOCk7LS1zaGFkb3ctZ2xvdzogMCAwIDI0cHggdmFyKC0tYWNjZW50LWdsb3cpOy0tc2hhZG93LWdsb3ctc3VjY2VzczogMCAwIDIwcHggdmFyKC0tc3VjY2Vzcy1nbG93KTstLXJhZGl1cy14czogNnB4Oy0tcmFkaXVzLXNtOiAxMHB4Oy0tcmFkaXVzLW1kOiAxNHB4Oy0tcmFkaXVzLWxnOiAyMHB4Oy0tcmFkaXVzLXhsOiAyOHB4Oy0tcmFkaXVzLWZ1bGw6IDk5OTlweDstLWZvbnQtc2FuczogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCAiSGVsdmV0aWNhIE5ldWUiLCAiUGluZ0ZhbmcgU0MiLCAiTm90byBTYW5zIFNDIiwgIk1pY3Jvc29mdCBZYUhlaSIsIHNhbnMtc2VyaWY7LS1mb250LW1vbm86ICJTRiBNb25vIiwgIkZpcmEgQ29kZSIsICJDYXNjYWRpYSBDb2RlIiwgIkpldEJyYWlucyBNb25vIiwgTWVubG8sIE1vbmFjbywgIkNvbnNvbGFzIiwgbW9ub3NwYWNlOy0tZm9udC1zaXplLXhzOiAuNjg3NXJlbTstLWZvbnQtc2l6ZS1zbTogLjgxMjVyZW07LS1mb250LXNpemUtYmFzZTogLjkzNzVyZW07LS1mb250LXNpemUtbGc6IDEuMDYyNXJlbTstLWZvbnQtc2l6ZS14bDogMS4yNXJlbTstLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwOy0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7LS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwOy0tZm9udC13ZWlnaHQtYm9sZDogNzAwOy0tbGluZS1oZWlnaHQtdGlnaHQ6IDEuMzstLWxpbmUtaGVpZ2h0LWJhc2U6IDEuNjstLWxpbmUtaGVpZ2h0LXJlbGF4ZWQ6IDEuNzU7LS10cmFuc2l0aW9uLWZhc3Q6IC4xNXMgZWFzZTstLXRyYW5zaXRpb24tbm9ybWFsOiAuMjVzIGVhc2U7LS10cmFuc2l0aW9uLXNsb3c6IC40cyBlYXNlOy0tdHJhbnNpdGlvbi1zcHJpbmc6IC41cyBjdWJpYy1iZXppZXIoLjM0LCAxLjU2LCAuNjQsIDEpOy0tc2lkZWJhci13aWR0aDogMzAwcHg7LS1zaWRlYmFyLWNvbGxhcHNlZC13aWR0aDogNTZweDstLWZpbGUtcGFuZWwtd2lkdGg6IDMyMHB4Oy0tc2FmZS1ib3R0b206IDBweDstLWVhc2Utb3V0LWV4cG86IGN1YmljLWJlemllciguMTYsIDEsIC4zLCAxKTstLWVhc2Utb3V0LWJhY2s6IGN1YmljLWJlemllciguMzQsIDEuNTYsIC42NCwgMSk7LS1lYXNlLWluLW91dC1zbW9vdGg6IGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpOy0tZWFzZS1zcHJpbmc6IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEuMjc1KTstLWVhc2Utc3ByaW5nLWJvdW5jeTogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMS40KTstLWVhc2UtYm91bmNlOiBjdWJpYy1iZXppZXIoLjY4LCAtLjU1LCAuMjY1LCAxLjU1KX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upe2h0bWw6bm90KC5pcy13YW5kLWFwcCkgKixodG1sOm5vdCguaXMtd2FuZC1hcHApICo6YmVmb3JlLGh0bWw6bm90KC5pcy13YW5kLWFwcCkgKjphZnRlcnthbmltYXRpb24tZHVyYXRpb246LjAxbXMhaW1wb3J0YW50O2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MSFpbXBvcnRhbnQ7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDFtcyFpbXBvcnRhbnQ7c2Nyb2xsLWJlaGF2aW9yOmF1dG8haW1wb3J0YW50fX06cm9vdHstLWFwcC1pbnNldC10b3A6IDBweDstLWFwcC1pbnNldC1ib3R0b206IDBweDstLWFwcC1pbnNldC1sZWZ0OiAwcHg7LS1hcHAtaW5zZXQtcmlnaHQ6IDBweDstLXdhbmQtc2FmZS10b3A6IG1heCh2YXIoLS1hcHAtaW5zZXQtdG9wKSwgZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDBweCkpOy0td2FuZC1zYWZlLWJvdHRvbTogbWF4KHZhcigtLWFwcC1pbnNldC1ib3R0b20pLCBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMHB4KSk7LS13YW5kLXNhZmUtbGVmdDogbWF4KHZhcigtLWFwcC1pbnNldC1sZWZ0KSwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0LCAwcHgpKTstLXdhbmQtc2FmZS1yaWdodDogbWF4KHZhcigtLWFwcC1pbnNldC1yaWdodCksIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQsIDBweCkpOy0tc2FmZS1ib3R0b206IHZhcigtLXdhbmQtc2FmZS1ib3R0b20pOy0taW5wdXQtc2FmZS1ib3R0b206IHZhcigtLXNhZmUtYm90dG9tKX0uaXMtd2FuZC1hcHB7LS13YW5kLXNhZmUtdG9wOiBtYXgodmFyKC0tYXBwLWluc2V0LXRvcCksIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwcHgpLCAzMnB4KTstLXdhbmQtc2FmZS1ib3R0b206IG1heCh2YXIoLS1hcHAtaW5zZXQtYm90dG9tKSwgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDBweCksIDBweCl9LmlzLXdhbmQtYXBwLW5hdGl2ZS1pbnNldHN7LS13YW5kLXNhZmUtdG9wOiAwcHg7LS13YW5kLXNhZmUtYm90dG9tOiAwcHg7LS13YW5kLXNhZmUtbGVmdDogMHB4Oy0td2FuZC1zYWZlLXJpZ2h0OiAwcHh9LmlzLXdhbmQtaW9zLmlzLWtleWJvYXJkLW9wZW57LS1pbnB1dC1zYWZlLWJvdHRvbTogMHB4fS5pcy13YW5kLWFwcCAuc2lkZWJhci1oZWFkZXIsaHRtbC5pcy13YW5kLWFwcCAuc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlcntwYWRkaW5nLXRvcDpjYWxjKDE0cHggKyB2YXIoLS13YW5kLXNhZmUtdG9wKSl9LmFwcC1jb250YWluZXJ7cGFkZGluZy10b3A6dmFyKC0td2FuZC1zYWZlLXRvcCl9aHRtbC5uby10cmFuc2l0aW9uLGh0bWwubm8tdHJhbnNpdGlvbiAqLGh0bWwubm8tdHJhbnNpdGlvbiAqOmJlZm9yZSxodG1sLm5vLXRyYW5zaXRpb24gKjphZnRlcnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50O2FuaW1hdGlvbjpub25lIWltcG9ydGFudH0qe2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXJnaW46MDtwYWRkaW5nOjB9aHRtbHtmb250LXNpemU6MTRweDstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7bWluLWhlaWdodDoxMDAlO2hlaWdodDoxMDAlO2JhY2tncm91bmQtY29sb3I6I2Y2ZjFlOH1ib2R5e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LHJnYmEoMjA4LDEzOCw5MiwuMTgpLHRyYW5zcGFyZW50IDM1JSkscmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBib3R0b20gcmlnaHQscmdiYSgxNDgsMTA3LDc0LC4xKSx0cmFuc3BhcmVudCA0MCUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZiZjdmMSwjZjZmMWU4KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21pbi1oZWlnaHQ6MTAwdmg7bWluLWhlaWdodDoxMDBkdmg7aGVpZ2h0OjEwMHZoO2hlaWdodDoxMDBkdmg7bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7b3ZlcmZsb3c6aGlkZGVufTo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHh9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTU0MDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTY2fTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9OjpzZWxlY3Rpb257YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtc29mdCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX06Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LXNvZnQpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiB2YXIoLS1maWxlLXBhbmVsLXdpZHRoKTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOmZpeGVkO3RvcDp2YXIoLS1hcHAtdmlld3BvcnQtdG9wLCAwcHgpO2xlZnQ6MDtyaWdodDowO2hlaWdodDp2YXIoLS1hcHAtdmlld3BvcnQtaGVpZ2h0LCAxMDBkdmgpO292ZXJmbG93OmhpZGRlbn0uZmxvYXRpbmctc2lkZWJhci10b2dnbGV7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO3dpZHRoOjM0cHg7aGVpZ2h0OjM0cHg7cGFkZGluZzowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleC1zaHJpbms6MDtiYWNrZ3JvdW5kOiNmZmZiZjVkOTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6cG9pbnRlcjtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMnB4IDhweCAjMDAwMDAwMGY7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXttYXJnaW4tcmlnaHQ6MnB4fS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDEpe3RyYW5zZm9ybTp0cmFuc2xhdGVZKDVweCkgcm90YXRlKDQ1ZGVnKX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDIpe29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVYKDApfS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMyl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCkgcm90YXRlKC00NWRlZyl9Lm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYmY1ZjI7Ym94LXNoYWRvdzowIDNweCAxMnB4ICMwMDAwMDAxYX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45Mil9Lm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZlOmhvdmVyIC5oYW1idXJnZXItaWNvbiBzcGFuLC5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlOmhvdmVyIC5oYW1idXJnZXItaWNvbiBzcGFue2JhY2tncm91bmQ6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZmxvYXRpbmctc2lkZWJhci10b2dnbGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYmY1ZjI7Ym94LXNoYWRvdzowIDNweCAxMnB4ICMwMDAwMDAxYX0uZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZle29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGVhc2V9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjkyKX0uaGFtYnVyZ2VyLWljb257d2lkdGg6MTZweDtoZWlnaHQ6MTJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5oYW1idXJnZXItaWNvbiBzcGFue2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6MnB4O2JhY2tncm91bmQ6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSxvcGFjaXR5IC4ycyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZTpob3ZlciAuaGFtYnVyZ2VyLWljb24gc3BhbntiYWNrZ3JvdW5kOnZhcigtLXRleHQtcHJpbWFyeSl9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMSl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KSByb3RhdGUoNDVkZWcpfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDIpe29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVYKDApfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDMpe3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01cHgpIHJvdGF0ZSgtNDVkZWcpfS50b3BiYXItbG9nby1pY29ue3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCNkNDc4NWEsI2I4NTczYSwjYTA0YTJlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToxMHB4O2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6ODAwO2JveC1zaGFkb3c6MCAxcHggNHB4ICNiODVjMzc0MCxpbnNldCAwIDFweCAjZmZmMztsZXR0ZXItc3BhY2luZzotLjAyZW07ZmxleC1zaHJpbms6MH0uc3RhdHVzLWRvdHt3aWR0aDo2cHg7aGVpZ2h0OjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5zdGF0dXMtZG90LmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MpO2JveC1zaGFkb3c6MCAwIDhweCB2YXIoLS1zdWNjZXNzKX0ubWFpbi1sYXlvdXR7ZGlzcGxheTpmbGV4O2ZsZXg6MTttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctbGVmdDowO3RyYW5zaXRpb246cGFkZGluZy1sZWZ0IHZhcigtLXRyYW5zaXRpb24tbm9ybWFsKX0uc2lkZWJhci1vcGVuOm5vdCguc2lkZWJhci1waW5uZWQpIC5pbnB1dC1wYW5lbHtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW47cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjJzfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZHtwYWRkaW5nLWxlZnQ6dmFyKC0tc2lkZWJhci13aWR0aCk7dHJhbnNpdGlvbjpwYWRkaW5nLWxlZnQgLjNzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZCAuZmxvYXRpbmctc2lkZWJhci10b2dnbGV7ZGlzcGxheTpub25lfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZC5zaWRlYmFyLWNvbGxhcHNlZHtwYWRkaW5nLWxlZnQ6dmFyKC0tc2lkZWJhci1jb2xsYXBzZWQtd2lkdGgpfS5kcmF3ZXItYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjQ0O2JhY2tncm91bmQ6dmFyKC0tYmctb3ZlcmxheSk7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4zNXMgdmFyKC0tZWFzZS1pbi1vdXQtc21vb3RoKTtiYWNrZHJvcC1maWx0ZXI6Ymx1cig0cHgpfS5kcmF3ZXItYmFja2Ryb3Aub3BlbntvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0bztiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpfS5zaWRlYmFye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtib3R0b206MDt6LWluZGV4OjQ1O3dpZHRoOm1pbih2YXIoLS1zaWRlYmFyLXdpZHRoKSxjYWxjKDEwMHZ3IC0gMjBweCkpO21heC13aWR0aDo5MHZ3O2JhY2tncm91bmQ6I2ZmZmJmNWY1O2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4taGVpZ2h0OjA7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzo0cHggMCAzMnB4ICM1OTNhMjAxNDt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLGJveC1zaGFkb3cgLjM1cyBlYXNlLG9wYWNpdHkgLjI1cyBlYXNlO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowfS5zaWRlYmFyLm9wZW57dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKTtib3gtc2hhZG93OjhweCAwIDQwcHggIzU5M2EyMDI2O3BvaW50ZXItZXZlbnRzOmF1dG87b3BhY2l0eToxfS5zaWRlYmFyLnBpbm5lZHt0cmFuc2Zvcm06dHJhbnNsYXRlKDApO3BvaW50ZXItZXZlbnRzOmF1dG87b3BhY2l0eToxO2JveC1zaGFkb3c6bm9uZTt0cmFuc2l0aW9uOndpZHRoIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSx0cmFuc2Zvcm0gLjM1cyB2YXIoLS1lYXNlLW91dC1leHBvKSxib3gtc2hhZG93IC4zNXMgZWFzZSxvcGFjaXR5IC4yNXMgZWFzZX0uc2lkZWJhci5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVyLWFjdGlvbnMgLnNpZGViYXItY2xvc2V7ZGlzcGxheTpub25lfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWR7d2lkdGg6dmFyKC0tc2lkZWJhci1jb2xsYXBzZWQtd2lkdGgpfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVye3BhZGRpbmc6MTRweCA4cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6MH0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlci1tYWluLC5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVyLW1vcmUsLnNpZGViYXIucGlubmVkLmNvbGxhcHNlZCAuc2lkZWJhci1waW4tdG9nZ2xlLC5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItZm9vdGVye2Rpc3BsYXk6bm9uZX0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlci1hY3Rpb25ze2dhcDowO3dpZHRoOjEwMCU7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWJvZHl7cGFkZGluZzo4cHggNHB4O292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbn0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjB9LnNpZGViYXItY29sbGFwc2VkLXRpbGVze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDthbGlnbi1pdGVtczpjZW50ZXJ9LnNpZGViYXItY29sbGFwc2VkLXRpbGV7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjExcHg7Ym9yZGVyOi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMzIpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZDQ3ODVhLCNiODU3M2EsI2EwNGEyZSk7Y29sb3I6I2ZmZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo3MDA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO2xldHRlci1zcGFjaW5nOi0uMDFlbTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MDtib3gtc2hhZG93OjAgMXB4IDJweCAjYjg1YzM3MzgsaW5zZXQgMCAxcHggI2ZmZmZmZjQ3O3RyYW5zaXRpb246ZmlsdGVyIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LnNpZGViYXItY29sbGFwc2VkLXRpbGU6aG92ZXJ7ZmlsdGVyOmJyaWdodG5lc3MoMS4wNik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDRweCAxMHB4IC0zcHggI2I4NWMzNzVjLGluc2V0IDAgMXB4ICNmZmZmZmY1Mn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5oaXN0b3J5e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZThkM2MwLCNkM2I2OWQsI2I4OTQ3OCk7Y29sb3I6IzU5M2EyMGUwO2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ODU4MzgyZSxpbnNldCAwIDFweCAjZmZmZmZmNmJ9LnNpZGViYXItY29sbGFwc2VkLXRpbGUuaGlzdG9yeTpob3Zlcntib3gtc2hhZG93OjAgNHB4IDEwcHggLTNweCAjNzg1ODM4NGQsaW5zZXQgMCAxcHggI2ZmZmZmZjdhfS5zaWRlYmFyLWNvbGxhcHNlZC10aWxlLmFkZHtiYWNrZ3JvdW5kOiNiODVjMzcwZjtib3JkZXI6MS41cHggZGFzaGVkIHJnYmEoMTg0LDkyLDU1LC41KTtjb2xvcjojYTA0YTJlO2JveC1zaGFkb3c6bm9uZTttYXJnaW4tdG9wOjJweH0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5hZGQ6aG92ZXJ7ZmlsdGVyOm5vbmU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7YmFja2dyb3VuZDojYjg1YzM3MWY7Ym9yZGVyLWNvbG9yOiNiODVjMzdiODtib3gtc2hhZG93OjAgM3B4IDhweCAtM3B4ICNiODVjMzc1Mn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5hZGQ6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCl9LnNpZGViYXItY29sbGFwc2VkLXRpbGUuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZDI3MzU4LCNiMzU0MzQsIzkzNDEyOCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDAgMCAycHggI2M1NjUzZDRkLDAgNXB4IDE0cHggLTRweCAjYTA0YTJlNzMsaW5zZXQgMCAxcHggI2ZmZjZ9LnNpZGViYXItY29sbGFwc2VkLXRpbGU6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDhzfS5zaWRlYmFyLXRpbGUtYnViYmxle3Bvc2l0aW9uOmZpeGVkO21heC13aWR0aDozMjBweDttaW4td2lkdGg6ODBweDtwYWRkaW5nOjlweCAxM3B4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZmZmYmY1ZmMsI2ZjZjRlOWZjKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUsIHJnYmEoMTIwLCA4OCwgNTYsIC4xOCkpO2JvcmRlci1yYWRpdXM6MTRweDtib3gtc2hhZG93OjAgNnB4IDI0cHggLTRweCAjNTkzYTIwMzgsMCAycHggNnB4ICM1OTNhMjAxNCxpbnNldCAwIDFweCAjZmZmZmZmYTY7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MS40Njtjb2xvcjojMzgyNDEyZWI7ei1pbmRleDoyMDA7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMThzIHZhcigtLWVhc2Utb3V0LWV4cG8sIGVhc2UpO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KSBzYXR1cmF0ZSgxNjAlKX0uc2lkZWJhci10aWxlLWJ1YmJsZS52aXNpYmxle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfS5zaWRlYmFyLXRpbGUtYnViYmxlOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTZweDt0b3A6dmFyKC0tYnViYmxlLXRhaWwteSwgNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO3dpZHRoOjExcHg7aGVpZ2h0OjExcHg7YmFja2dyb3VuZDppbmhlcml0O2JvcmRlci1sZWZ0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlLCByZ2JhKDEyMCwgODgsIDU2LCAuMTgpKTtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlLCByZ2JhKDEyMCwgODgsIDU2LCAuMTgpKTtib3gtc2hhZG93Oi0ycHggMnB4IDVweCAtMnB4ICM1OTNhMjAxNH0uc2lkZWJhci1jb2xsYXBzZS10b2dnbGV7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItY29sbGFwc2UtdG9nZ2xlLmNvbGxhcHNlZHtjb2xvcjp2YXIoLS1wcmltYXJ5KX0uc2lkZWJhci1waW4tdG9nZ2xle2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLHRyYW5zZm9ybSAuM3MgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LnNpZGViYXItcGluLXRvZ2dsZS5waW5uZWR7YmFja2dyb3VuZDojYzU2NTNkMWY7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKX0uc2lkZWJhci1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjEycHggMTRweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOiNmZmZiZjVjYztmbGV4LXNocmluazowO21pbi1oZWlnaHQ6NTJweDtnYXA6MTBweH0uc2lkZWJhci1oZWFkZXItbWFpbntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7bWluLXdpZHRoOjA7ZmxleDoxfS5zaWRlYmFyLWhlYWRlci1hY3Rpb25ze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtmbGV4LXNocmluazowfS5zaWRlYmFyLWhlYWRlci1tb3Jle3Bvc2l0aW9uOnJlbGF0aXZlfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvd3tkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOmNhbGMoMTAwJSArIDZweCk7cmlnaHQ6MDttaW4td2lkdGg6MTUwcHg7YmFja2dyb3VuZDojZmZmYmY1ZmE7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym94LXNoYWRvdzowIDRweCAyMHB4ICM1OTNhMjAxZjtwYWRkaW5nOjRweDt6LWluZGV4OjYwfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdy5vcGVue2Rpc3BsYXk6YmxvY2s7YW5pbWF0aW9uOmZhZGVTbGlkZURvd24gLjE1cyB2YXIoLS1lYXNlLW91dC1leHBvKX0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3cgLm92ZXJmbG93LWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3dpZHRoOjEwMCU7cGFkZGluZzo5cHggMTJweDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOm5vbmU7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO2JvcmRlci1yYWRpdXM6NnB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk3KX1Aa2V5ZnJhbWVzIGZhZGVTbGlkZURvd257MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC00cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LnNpZGViYXItbG9nb3V0e2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6Ljc7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1sb2dvdXQ6aG92ZXJ7b3BhY2l0eToxO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2lkZWJhci1zd2l0Y2gtc2VydmVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6Ljc7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1zd2l0Y2gtc2VydmVyOmhvdmVye29wYWNpdHk6MTtjb2xvcjp2YXIoLS1wcmltYXJ5LCB2YXIoLS10ZXh0LXNlY29uZGFyeSkpfS5sb2dpbi1zd2l0Y2gtc2VydmVye21hcmdpbi10b3A6MTBweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo2cHg7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5sb2dpbi1zd2l0Y2gtc2VydmVyIHN2Z3tvcGFjaXR5Oi43NX0ubG9naW4tc3dpdGNoLXNlcnZlcjpob3Zlcntjb2xvcjp2YXIoLS1wcmltYXJ5LCB2YXIoLS10ZXh0LXByaW1hcnkpKX0uc2lkZWJhci10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzotLjAxZW07d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXgtc2hyaW5rOjB9LnNlc3Npb24tY291bnR7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7cGFkZGluZzozcHggOHB4O2JvcmRlci1yYWRpdXM6MTBweDtmb250LXdlaWdodDo2MDB9LnNpZGViYXItY2xvc2V7ZmxleC1zaHJpbms6MH0uZmlsZS1leHBsb3JlcntmbGV4OjE7b3ZlcmZsb3cteTphdXRvO3BhZGRpbmc6OHB4IDA7bWluLWhlaWdodDowfS5maWxlLWV4cGxvcmVyLmVtcHR5e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjI0cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44MTI1cmVtO3RleHQtYWxpZ246Y2VudGVyfS5maWxlLXRyZWV7Zm9udC1zaXplOi44MTI1cmVtfS50cmVlLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6NHB4IDEycHg7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnRyZWUtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmZmZmIzLCNmZmZjZjc2Nik7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmYjN9LnRyZWUtaXRlbS5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdlYiwjZmZmNGU4YmYpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAxcHggI2M1NjUzZDM4LDAgM3B4IDEwcHggLTNweCAjYzU2NTNkNDAsaW5zZXQgMCAxcHggI2ZmZmZmZmQ5fS50cmVlLXRvZ2dsZXtmbGV4LXNocmluazowO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnRyZWUtdG9nZ2xlLm9wZW57dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LnRyZWUtdG9nZ2xlLmVtcHR5e3Zpc2liaWxpdHk6aGlkZGVufS50cmVlLWljb257ZmxleC1zaHJpbms6MDtmb250LXNpemU6MXJlbTttYXJnaW4tcmlnaHQ6NnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXJ9LnRyZWUtbmFtZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmbGV4OjE7bWluLXdpZHRoOjB9LnRyZWUtY2hpbGRyZW57ZGlzcGxheTpub25lfS50cmVlLWNoaWxkcmVuLm9wZW57ZGlzcGxheTpibG9ja30uZmlsZS1leHBsb3Jlci1oZWFkZXJ7cGFkZGluZzoxMHB4IDE0cHggNnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmbGV4LXNocmluazowfS5maWxlLWV4cGxvcmVyLXBhdGh7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjE7bWluLXdpZHRoOjA7Zm9udC13ZWlnaHQ6NTAwfWlucHV0LmZpbGUtZXhwbG9yZXItcGF0aHtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjhweDtwYWRkaW5nOjZweCAxMHB4O2hlaWdodDozMHB4O2xpbmUtaGVpZ2h0OjEuMjtjdXJzb3I6dGV4dDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO291dGxpbmU6bm9uZTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3dpZHRoOjEwMCU7Ym94LXNpemluZzpib3JkZXItYm94fWlucHV0LmZpbGUtZXhwbG9yZXItcGF0aDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNn1pbnB1dC5maWxlLWV4cGxvcmVyLXBhdGg6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9aW5wdXQuZmlsZS1leHBsb3Jlci1wYXRoOmZvY3Vze2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0ZXh0LW92ZXJmbG93OmNsaXA7Ym94LXNoYWRvdzowIDAgMCAzcHggI2Q0OTg2MzFmfS5maWxlLWV4cGxvcmVyLXJlZnJlc2h7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxcmVtO3BhZGRpbmc6NHB4O2JvcmRlci1yYWRpdXM6NHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5maWxlLWV4cGxvcmVyLXJlZnJlc2g6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfS5maWxlLXNpZGUtcGFuZWx7cG9zaXRpb246Zml4ZWQ7cmlnaHQ6Y2FsYygtMSAqIHZhcigtLWZpbGUtcGFuZWwtd2lkdGgpKTt0b3A6MDtib3R0b206MDt3aWR0aDp2YXIoLS1maWxlLXBhbmVsLXdpZHRoKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlci1sZWZ0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3otaW5kZXg6NTU7dHJhbnNpdGlvbjpyaWdodCAuM3MgdmFyKC0tZWFzZS1vdXQtZXhwbyksYm94LXNoYWRvdyAuM3MgZWFzZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JveC1zaGFkb3c6LTRweCAwIDI0cHggIzAwMDAwMDFhO3BhZGRpbmctdG9wOnZhcigtLXdhbmQtc2FmZS10b3ApO3BhZGRpbmctYm90dG9tOnZhcigtLXdhbmQtc2FmZS1ib3R0b20pfS5maWxlLXNpZGUtcGFuZWwub3BlbntyaWdodDowO2JveC1zaGFkb3c6LThweCAwIDMycHggIzU5M2EyMDI2fS5maWxlLXBhbmVsLWJhY2tkcm9we2Rpc3BsYXk6bm9uZX1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuZmlsZS1wYW5lbC1iYWNrZHJvcHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7YmFja2dyb3VuZDojMmExYzEyNGQ7ei1pbmRleDo1NDtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMnB4KX0uZmlsZS1wYW5lbC1iYWNrZHJvcC5vcGVue29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvfS5zaWRlYmFyLXBpbi10b2dnbGV7ZGlzcGxheTpub25lfX0uZmlsZS1zaWRlLXBhbmVsLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmc6MTJweCAxNHB4IDEwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZmxleC1zaHJpbms6MDtnYXA6OHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwjZmZmNiwjZmZmMCl9LmZpbGUtc2lkZS1wYW5lbC10aXRsZS1ncm91cHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7bWluLXdpZHRoOjA7ZmxleDoxfS5maWxlLXNpZGUtcGFuZWwtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOnZhcigtLWFjY2VudCk7b3BhY2l0eTouODV9LmZpbGUtc2lkZS1wYW5lbC10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDFlbX0uZmlsZS1zaWRlLXBhbmVsLWhlYWRlci1hY3Rpb25ze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjJweDtmbGV4LXNocmluazowfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bnt3aWR0aDozMHB4O2hlaWdodDozMHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjhweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItc3VidGxlKX0uZmlsZS1zaWRlLXBhbmVsLWljb25idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bi5hY3RpdmV7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNkNDk4NjM1OX0uZmlsZS1zaWRlLXBhbmVsLWljb25idG4uY2xvc2U6aG92ZXJ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtiYWNrZ3JvdW5kOiNkYzQ2NDYxNDtib3JkZXItY29sb3I6I2RjNDY0NjQwfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0biAud2FuZC1pY29ue2Rpc3BsYXk6YmxvY2t9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRuOmhvdmVyIC53YW5kLWljb24tcmVmcmVzaHt0cmFuc2Zvcm06cm90YXRlKDYwZGVnKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5maWxlLXNpZGUtcGFuZWwtYm9keXtmbGV4OjE7bWluLWhlaWdodDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47b3ZlcmZsb3c6aGlkZGVufS5naXQtc3RhdHVzLWJhZGdle2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjFweCA1cHg7Ym9yZGVyLXJhZGl1czozcHg7bWluLXdpZHRoOjE4cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZ2l0LWFkZGVke2JhY2tncm91bmQ6IzIyOGIyMjI2O2NvbG9yOiMyMjhiMjJ9LmdpdC1tb2RpZmllZHtiYWNrZ3JvdW5kOiNmZmE1MDAyNjtjb2xvcjpvcmFuZ2V9LmdpdC1kZWxldGVke2JhY2tncm91bmQ6I2RjMTQzYzI2O2NvbG9yOiNkYzE0M2N9LmdpdC1yZW5hbWVke2JhY2tncm91bmQ6IzQ2ODJiNDI2O2NvbG9yOiM0NjgyYjR9LmdpdC11bnN0YWdlZHtiYWNrZ3JvdW5kOiNmZjhjMDAyNjtjb2xvcjojZmY4YzAwfS5naXQtdW5zdGFnZWQtZGVsZXRlZHtiYWNrZ3JvdW5kOiNkYzE0M2MyNjtjb2xvcjojZGMxNDNjfS5naXQtdW50cmFja2Vke2JhY2tncm91bmQ6IzgwODA4MDI2O2NvbG9yOmdyYXl9LmZpbGUtc2VhcmNoLWJveHtwYWRkaW5nOjhweCAxMnB4IDEwcHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtmbGV4LXNocmluazowO3Bvc2l0aW9uOnJlbGF0aXZlfS5maWxlLXNlYXJjaC1pY29ue3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MjJweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BvaW50ZXItZXZlbnRzOm5vbmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7b3BhY2l0eTouN30uZmlsZS1zZWFyY2gtaW5wdXR7ZmxleDoxO3BhZGRpbmc6N3B4IDMycHggN3B4IDMwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6OHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO291dGxpbmU6bm9uZTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGVhc2UsYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMTVzIGVhc2V9LmZpbGUtc2VhcmNoLWlucHV0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym94LXNoYWRvdzowIDAgMCAzcHggI2Q0OTg2MzFmfS5maWxlLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LmZpbGUtc2VhcmNoLWNsZWFye3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjE4cHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzo0cHg7d2lkdGg6MjJweDtoZWlnaHQ6MjJweDtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtkaXNwbGF5Om5vbmU7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZSxjb2xvciAuMTVzIGVhc2V9LmZpbGUtc2VhcmNoLWNsZWFyOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmZpbGUtc2VhcmNoLWNsZWFyLnZpc2libGV7ZGlzcGxheTppbmxpbmUtZmxleH0uZmlsZS1zZWFyY2gtY2xlYXI6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5zaWRlYmFyLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4OjE7bWluLWhlaWdodDowO292ZXJmbG93LXk6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDtwb3NpdGlvbjpyZWxhdGl2ZX0uc2lkZWJhci1pbnRyb3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmbGV4LXNocmluazowfS5zZXNzaW9ucy1saXN0e2ZsZXg6MSAwIGF1dG87bWluLWhlaWdodDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47b3ZlcmZsb3c6dmlzaWJsZTtwYWRkaW5nOjEwcHggMTBweCAxMnB4fSNzZXNzaW9ucy1wYW5lbHtkaXNwbGF5OmNvbnRlbnRzfS5zZXNzaW9ucy1saXN0OmVtcHR5OmJlZm9yZXtjb250ZW50OiJcNjY4Mlw2NWUwXDRmMWFcOGJkZCI7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21pbi1oZWlnaHQ6MjAwcHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44NzVyZW19LnNlc3Npb24tZ3JvdXB7bWFyZ2luLWJvdHRvbToxNHB4fS5zZXNzaW9uLWdyb3VwOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5zZXNzaW9uLWdyb3VwLXRpdGxle3BhZGRpbmc6NHB4IDZweCAxMHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjA4ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHh9LnNlc3Npb24tZ3JvdXAtdGl0bGU6YmVmb3Jle2NvbnRlbnQ6IiI7d2lkdGg6M3B4O2hlaWdodDoxMnB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtvcGFjaXR5Oi42NTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKX0uY2xhdWRlLWhpc3RvcnktdG9nZ2xle2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmU7dHJhbnNpdGlvbjpjb2xvciAuMTVzIGVhc2V9LmNsYXVkZS1oaXN0b3J5LXRvZ2dsZTpob3Zlcntjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5jbGF1ZGUtaGlzdG9yeS10b2dnbGUgLmNoZXZyb257ZGlzcGxheTppbmxpbmUtYmxvY2s7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyB2YXIoLS1lYXNlLW91dC1leHBvKTtmb250LXNpemU6LjY4NzVyZW07bWFyZ2luLXJpZ2h0OjRweH0uY2xhdWRlLWhpc3RvcnktdG9nZ2xlIC5oaXN0b3J5LWNvdW50e2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO3BhZGRpbmc6MnB4IDdweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTttYXJnaW4tbGVmdDo2cHh9LmNsYXVkZS1oaXN0b3J5LWxvYWRpbmd7cGFkZGluZzoxNnB4IDhweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjgxMjVyZW07dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zdHlsZTppdGFsaWN9LnNpZGViYXItaGlzdG9yeS1zZWN0aW9uLWxhYmVse3BhZGRpbmc6OHB4IDEwcHggNHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO29wYWNpdHk6LjV9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1oZWFkZXJ7bWFyZ2luLXRvcDo2cHg7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciAuY2hldnJvbntmb250LXNpemU6LjY4NzVyZW07bWFyZ2luLXJpZ2h0OjRweH0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LXRpdGxle2ZvbnQtc2l6ZTouNjg3NXJlbTtwYWRkaW5nOjZweCA4cHggNnB4IDEycHg7b3BhY2l0eTouODtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciAuY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LXRpdGxlOmJlZm9yZXtkaXNwbGF5Om5vbmV9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1sYWJlbHttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1jbGVhci1idG57b3BhY2l0eTouOTtmbGV4LXNocmluazowfS5jbGF1ZGUtaGlzdG9yeS1wcmV2aWV3e292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uY2xhdWRlLWhpc3RvcnktaXRlbXtvcGFjaXR5Oi44NTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlfS5jbGF1ZGUtaGlzdG9yeS1pdGVtOmhvdmVye29wYWNpdHk6MTtiYWNrZ3JvdW5kOiNmZmZkZmFmNX0uc2Vzc2lvbi1pdGVte3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpsZWZ0O2JhY2tncm91bmQ6I2ZmZmNmN2ViO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMHB4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7cGFkZGluZzoxMHB4IDEycHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2UsdHJhbnNmb3JtIC4xcyBlYXNlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7bWFyZ2luLWJvdHRvbTo2cHg7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufS5zZXNzaW9uLWl0ZW06YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDo2cHg7Ym90dG9tOjZweDt3aWR0aDozcHg7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVZKDApO3RyYW5zaXRpb246YWxsIC4ycyBlYXNlO2JvcmRlci1yYWRpdXM6MnB4fS5zZXNzaW9uLWl0ZW0tcm93e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX0uc2Vzc2lvbi1pdGVtLWNvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czppbmhlcml0O3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSxiYWNrZ3JvdW5kIC4xOHMgZWFzZTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19LnNlc3Npb24taXRlbS5zd2lwZWQgLnNlc3Npb24taXRlbS1jb250ZW50e3RyYW5zZm9ybTp0cmFuc2xhdGUoLTcycHgpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjUsI2ZjZjZlZGYwKX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2t7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXNocmluazowO3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7bWFyZ2luLXJpZ2h0OjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgaW5wdXR7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvcGFjaXR5OjA7Y3Vyc29yOnBvaW50ZXJ9LnNlc3Npb24tbWFuYWdlLWNoZWNrIHNwYW57d2lkdGg6MThweDtoZWlnaHQ6MThweDtib3JkZXItcmFkaXVzOjZweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yMik7YmFja2dyb3VuZDojZmZmYmY1OGM7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmNjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2s6aG92ZXIgc3BhbntiYWNrZ3JvdW5kOiNmZmZiZjVjYztib3JkZXItY29sb3I6IzdkNWIzOTU5fS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW46YWZ0ZXJ7Y29udGVudDoiXDI3MTMiO2NvbG9yOiNmZmY7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo3MDB9LnNlc3Npb24taXRlbS5zZWxlY3RlZHtib3JkZXItY29sb3I6I2M1NjUzZDU5O2JhY2tncm91bmQ6I2ZmZjVlZWY1fS5zZXNzaW9uLWl0ZW0tcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fUBrZXlmcmFtZXMgc2Vzc2lvbi1kZWxldGUtY29sbGFwc2V7dG97bWF4LWhlaWdodDowO29wYWNpdHk6MDttYXJnaW4tYm90dG9tOjA7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO2JvcmRlci13aWR0aDowfX0uc2Vzc2lvbi1pdGVtLmRlbGV0aW5ne2FuaW1hdGlvbjpzZXNzaW9uLWRlbGV0ZS1jb2xsYXBzZSAuM3MgZWFzZS1vdXQgZm9yd2FyZHM7b3ZlcmZsb3c6aGlkZGVuO21heC1oZWlnaHQ6MTIwcHg7cG9pbnRlci1ldmVudHM6bm9uZX0uc2Vzc2lvbi1tYWlue2ZsZXg6MTttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDozcHg7cGFkZGluZy1yaWdodDo2MHB4fS5zZXNzaW9uLXRpdGxlLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6OHB4fS5zZXNzaW9uLXRpdGxlLXJvdyAuc2Vzc2lvbi10aXRsZSwuc2Vzc2lvbi10aXRsZS1yb3cgLnNlc3Npb24tY29tbWFuZHtmbGV4OjE7bWluLXdpZHRoOjB9LnNlc3Npb24tdGltZXtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXA7bGluZS1oZWlnaHQ6MS40O3BhZGRpbmctdG9wOjFweH0uc2Vzc2lvbi1hY3Rpdml0eXtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tYWNjZW50KTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bGluZS1oZWlnaHQ6MS4zO29wYWNpdHk6Ljg1fS5zZXNzaW9uLWRlc2NyaXB0aW9ue2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bGluZS1oZWlnaHQ6MS4zNX0uc2Vzc2lvbi1yZWNvdmVyeS1oaW50e2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6Izk2NzY1NTE0O3BhZGRpbmc6MXB4IDVweDtib3JkZXItcmFkaXVzOjNweH0uc2Vzc2lvbi1hY3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjRweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLWhlaWdodDoyOHB4O21pbi13aWR0aDoyOHB4O3BhZGRpbmc6MDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOi44MTI1cmVtO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2U7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXJ9LnNlc3Npb24tYWN0aW9uLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTUxYTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLWFjdGlvbi1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9LnNlc3Npb24tYWN0aW9uLWJ0biBzdmd7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1hY3Rpb24tYnRuLmRlbGV0ZS1idG46aG92ZXJ7YmFja2dyb3VuZDojZTc0YzNjMTQ7Y29sb3I6I2QzNTI0NH0uc2Vzc2lvbi1hY3Rpb24tYnRuLm1lcmdlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiMyZjgwZWQxYTtjb2xvcjojMmY4MGVkfS5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2V7YmFja2dyb3VuZDojMmY4MGVkMWY7Y29sb3I6IzJmODBlZH0uc2Vzc2lvbi1raW5kLWJhZGdlLndvcmt0cmVlLW1lcmdlLmZhaWxlZHtiYWNrZ3JvdW5kOiNlNzRjM2MxZjtjb2xvcjojZDM1MjQ0fS5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2UubWVyZ2Vke2JhY2tncm91bmQ6IzI3YWU2MDFmO2NvbG9yOiMyMTk2NTN9LnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZS1tZXJnZS5tZXJnaW5nLC5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2UuY2hlY2tpbmd7YmFja2dyb3VuZDojZjI5OTRhMWY7Y29sb3I6I2MxN2MyYn0ud29ya3RyZWUtbWVyZ2UtY29udGVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4fS53b3JrdHJlZS1tZXJnZS1yb3d7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxNnB4O3BhZGRpbmc6MTBweCAxMnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6I2ZmZmZmZjgwO2ZvbnQtc2l6ZTouODc1cmVtfS53b3JrdHJlZS1tZXJnZS1yb3cgc3Bhbntjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9Lndvcmt0cmVlLW1lcmdlLXJvdyBzdHJvbmd7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt3b3JkLWJyZWFrOmJyZWFrLWFsbDt0ZXh0LWFsaWduOnJpZ2h0fS53b3JrdHJlZS1tZXJnZS1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjEwcHg7bWFyZ2luLXRvcDoxNnB4fS53b3JrdHJlZS1tZXJnZS1tb2RhbHttYXgtd2lkdGg6NjIwcHh9Lm1vZGFsLXN1YnRpdGxle21hcmdpbi10b3A6NHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2Vzc2lvbi1hY3Rpb24tYnRuW2Rpc2FibGVkXXtvcGFjaXR5Oi40NTtjdXJzb3I6bm90LWFsbG93ZWR9LnNlc3Npb24tYWN0aW9uLWJ0bltkaXNhYmxlZF06aG92ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXXtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZH0ud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXTpob3Zlciwud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXTphY3RpdmV7dHJhbnNmb3JtOm5vbmV9Lndvcmt0cmVlLW1lcmdlLWFjdGlvbnMgLmJ0bnttaW4td2lkdGg6MTIwcHh9Lndvcmt0cmVlLW1lcmdlLW1vZGFsIC5tb2RhbC1ib2R5e21pbi1oZWlnaHQ6MjYwcHh9Lndvcmt0cmVlLW1lcmdlLW1vZGFsIC5lcnJvci1tZXNzYWdle21hcmdpbi10b3A6MTJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludHttYXJnaW4tdG9wOjB9Lndvcmt0cmVlLW1lcmdlLXJvdysuZmllbGQtaGludHttYXJnaW4tdG9wOjJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludCsuZmllbGQtaGludHttYXJnaW4tdG9wOjRweH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgLm1vZGFsLXN1YnRpdGxle21heC13aWR0aDo0MjBweH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgc3Ryb25ne2ZvbnQtd2VpZ2h0OjYwMH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgLm1vZGFsLWhlYWRlcnthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IHB7bWFyZ2luOjB9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQgc3Ryb25ne2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9Lndvcmt0cmVlLW1lcmdlLXJvdyBzdHJvbmc6ZW1wdHk6YWZ0ZXJ7Y29udGVudDoiLSI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQgY29kZXtmb250LWZhbWlseTppbmhlcml0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS53b3JrdHJlZS1tZXJnZS1yb3c6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDoycHh9Lndvcmt0cmVlLW1lcmdlLXJvdzpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC5tdXRlZHtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC5lcnJvcntjb2xvcjojZDM1MjQ0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50LnN1Y2Nlc3N7Y29sb3I6IzIxOTY1M30ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC53YXJuaW5ne2NvbG9yOiNjMTdjMmJ9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQuaW5mb3tjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQrLndvcmt0cmVlLW1lcmdlLXJvd3ttYXJnaW4tdG9wOjJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93Ky53b3JrdHJlZS1tZXJnZS1yb3d7bWFyZ2luLXRvcDowfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgc3Ryb25nIHNtYWxse2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgc3Ryb25nIGNvZGUsLndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyBzcGFuIGNvZGV7Zm9udC1mYW1pbHk6aW5oZXJpdH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IGNvZGV7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwYWRkaW5nOjB9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyBlbXtmb250LXN0eWxlOm5vcm1hbDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IHNtYWxsLC53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLm11dGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLndhcm5pbmd7Y29sb3I6I2MxN2MyYn0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5zdWNjZXNze2NvbG9yOiMyMTk2NTN9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAuZXJyb3J7Y29sb3I6I2QzNTI0NH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5pbmZve2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC50cnVuY2F0ZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5tb25vc3BhY2V7Zm9udC1mYW1pbHk6dWktbW9ub3NwYWNlLFNGTW9uby1SZWd1bGFyLE1lbmxvLE1vbmFjbyxDb25zb2xhcyxtb25vc3BhY2V9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAuc21hbGx7Zm9udC1zaXplOi44MTI1cmVtfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLm5vcm1hbHtmb250LXNpemU6Ljg3NXJlbX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5ibG9ja3tkaXNwbGF5OmJsb2NrfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLmlubGluZXtkaXNwbGF5OmlubGluZX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5mbGV4e2Rpc3BsYXk6ZmxleH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5ncmlke2Rpc3BsYXk6Z3JpZH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5yb3VuZGVke2JvcmRlci1yYWRpdXM6OHB4fUBtZWRpYShob3Zlcjpob3Zlcil7LnNlc3Npb24taXRlbSAuc2Vzc2lvbi1hY3Rpb25ze29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2V9LnNlc3Npb24taXRlbTpob3ZlciAuc2Vzc2lvbi1hY3Rpb25zLC5zZXNzaW9uLWl0ZW0uYWN0aXZlIC5zZXNzaW9uLWFjdGlvbnMsLnNlc3Npb24taXRlbS5zd2lwZWQgLnNlc3Npb24tYWN0aW9uc3tvcGFjaXR5OjF9LnNlc3Npb24taXRlbSAuc2Vzc2lvbi1hY3Rpb25zOmhhcyguc2Vzc2lvbi1hY3Rpb24tYnRuW2RhdGEtYWN0aW9uPXJlc3VtZV0pe29wYWNpdHk6MX19QG1lZGlhKGhvdmVyOm5vbmUpey5zZXNzaW9uLWl0ZW0gLnNlc3Npb24tYWN0aW9uc3tvcGFjaXR5OjF9fS5zZXNzaW9uLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDojZmZmZGZhZjU7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1kZWZhdWx0KTtib3gtc2hhZG93OjAgMnB4IDhweCAjNTkzYTIwMTJ9LnNlc3Npb24taXRlbTpob3ZlcjpiZWZvcmV7b3BhY2l0eTouNTt0cmFuc2Zvcm06c2NhbGVZKDEpfS5zZXNzaW9uLWl0ZW0uYWN0aXZle2JhY2tncm91bmQ6I2ZmZjdmMGY1O2JvcmRlci1jb2xvcjojYzU2NTNkNGQ7Ym94LXNoYWRvdzowIDJweCA4cHggI2M1NjUzZDFhfS5zZXNzaW9uLWl0ZW06YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTkpO3RyYW5zaXRpb24tZHVyYXRpb246LjFzfS5zZXNzaW9uLWNvbW1hbmR7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uc2Vzc2lvbi10aXRsZXtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi44MTI1cmVtO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDFlbTtsaW5lLWhlaWdodDoxLjN9LnNlc3Npb24tbWV0YXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2ZsZXgtd3JhcDp3cmFwfS5zZXNzaW9uLXN0YXR1c3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6M3B4IDhweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi42ODc1cmVtO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNlc3Npb24tc3RhdHVzLWRvdHt3aWR0aDo2cHg7aGVpZ2h0OjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtmbGV4LXNocmluazowfS5zZXNzaW9uLXN0YXR1cy5ydW5uaW5nIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTtib3gtc2hhZG93OjAgMCA1cHggdmFyKC0tc3VjY2Vzcy1nbG93KTthbmltYXRpb246c3RhdHVzLXB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy5leGl0ZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5zZXNzaW9uLXN0YXR1cy5mYWlsZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlcil9LnNlc3Npb24tc3RhdHVzLnN0b3BwZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpfS5zZXNzaW9uLXN0YXR1cy5ydW5uaW5ne2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnNlc3Npb24tc3RhdHVzLmZhaWxlZHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uc2Vzc2lvbi1zdGF0dXMuc3RvcHBlZHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2NvbG9yOnZhcigtLXdhcm5pbmcpfS5zZXNzaW9uLXN0YXR1cy5wZXJtaXNzaW9uLWJsb2NrZWR7YmFja2dyb3VuZDojZjBhNTAwMjQ7Y29sb3I6I2QxOGIwMH0uc2Vzc2lvbi1zdGF0dXMuZXhpdGVkLC5zZXNzaW9uLXN0YXR1cy5hcmNoaXZlZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH1Aa2V5ZnJhbWVzIHN0YXR1cy1wdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjV9fS5zZXNzaW9uLWlke2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDojOTY3NjU1MWY7cGFkZGluZzoycHggNnB4O2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtd2VpZ2h0OjUwMH0uc2Vzc2lvbi1ncm91cC0taGlzdG9yeXttYXJnaW4tdG9wOmF1dG87cGFkZGluZy10b3A6NnB4fS5zZXNzaW9uLWhpc3RvcnktdG9nZ2xlIC5oaXN0b3J5LWNvdW50LmxvYWRpbmd7bGV0dGVyLXNwYWNpbmc6LjEyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6MnB4fS5zZXNzaW9uLWhpc3RvcnktYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo0cHg7cGFkZGluZzoycHggMCA0cHg7YW5pbWF0aW9uOmhpc3RvcnlCb2R5RmFkZUluIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9QGtleWZyYW1lcyBoaXN0b3J5Qm9keUZhZGVJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uc2lkZWJhci1oaXN0b3J5LXRvb2xiYXJ7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwYWRkaW5nOjJweCA0cHggNnB4O2ZsZXgtc2hyaW5rOjB9LnNpZGViYXItaGlzdG9yeS1jbGVhcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo1MDB9LnNpZGViYXItaGlzdG9yeS1jbGVhcjpob3Zlcntjb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKX0uc2lkZWJhci1oaXN0b3J5LXNjcm9sbHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHh9LnNpZGViYXItZm9vdGVye3BhZGRpbmc6MTJweCAxMnB4IDE0cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDtiYWNrZ3JvdW5kOiNmZmZiZjViM30uc2lkZWJhci1mb290ZXItYWN0aW9uc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdChhdXRvLWZpdCxtaW5tYXgoNTZweCwxZnIpKTtnYXA6NHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NHB4O2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtwYWRkaW5nOjdweCA0cHg7bWluLWhlaWdodDo0NnB4O2JvcmRlci1yYWRpdXM6OXB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0biBzdmd7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtmbGV4LXNocmluazowO29wYWNpdHk6Ljg1O3RyYW5zaXRpb246b3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG46aG92ZXJ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtiYWNrZ3JvdW5kOiM5Njc2NTUxNDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuOmhvdmVyIHN2Z3tvcGFjaXR5OjF9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5oaWRkZW57ZGlzcGxheTpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5zaWRlYmFyLWxvZ291dHtwb3NpdGlvbjpyZWxhdGl2ZX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuc2lkZWJhci1sb2dvdXQ6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotM3B4O3RvcDoyMiU7Ym90dG9tOjIyJTt3aWR0aDoxcHg7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItc3VidGxlKTtwb2ludGVyLWV2ZW50czpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5zaWRlYmFyLWxvZ291dDpob3Zlcntjb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuc2lkZWJhci1sb2dvdXQ6aG92ZXIgc3Zne2NvbG9yOnZhcigtLWRhbmdlcil9LnRvcGJhci1idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NXB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo1MDA7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2hlaWdodDozMnB4O21pbi1oZWlnaHQ6MzJweDt3aGl0ZS1zcGFjZTpub3dyYXA7Ym94LXNpemluZzpib3JkZXItYm94O2xpbmUtaGVpZ2h0OjE7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnRvcGJhci1idG46aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmODA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0udG9wYmFyLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSl9LnRvcGJhci1idG4uYWN0aXZle2JhY2tncm91bmQ6I2ZmZmZmZmIzO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NjAwO2JveC1zaGFkb3c6MCAxcHggNHB4ICM1OTNhMjAxYX0udG9wYmFyLWJ0bi5zcXVhcmV7d2lkdGg6MzJweDtwYWRkaW5nOjA7Zm9udC1zaXplOi44NzVyZW19I3Rlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AuYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjojYzU2NTNkMzN9I3Rlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AuYWN0aXZlOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDJlfS5idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NnB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi0uMDA1ZW07cGFkZGluZzowIDE2cHg7aGVpZ2h0OjM4cHg7bWluLWhlaWdodDozOHB4O2JvcmRlci1yYWRpdXM6MTBweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3doaXRlLXNwYWNlOm5vd3JhcDtwb3NpdGlvbjpyZWxhdGl2ZTt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZSxjb2xvciAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0uYnRuOmZvY3Vze291dGxpbmU6bm9uZX0uYnRuOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1hY2NlbnQpfS5idG46ZGlzYWJsZWQsLmJ0bltkaXNhYmxlZF17b3BhY2l0eTouNDU7Y3Vyc29yOm5vdC1hbGxvd2VkO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9LmJ0bi1wcmltYXJ5e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQtaG92ZXIpIDAlLHZhcigtLWFjY2VudCkgMTAwJSk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtib3gtc2hhZG93OjAgMXB4IDJweCAjYzU2NTNkNTIsMCA0cHggMTBweCAtMnB4ICNjNTY1M2Q1MixpbnNldCAwIDFweCAjZmZmZmZmMzgsaW5zZXQgMCAtMXB4ICM1OTNhMjAyZX0uYnRuLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNkNjg1NWUgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgMnB4IDRweCAjYzU2NTNkNTIsMCA4cHggMjBweCAtNHB4ICNjNTY1M2Q2NixpbnNldCAwIDFweCAjZmZmZmZmNDcsaW5zZXQgMCAtMXB4ICM1OTNhMjAyZX0uYnRuLXByaW1hcnk6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQpIDAlLHZhcigtLWFjY2VudC1hY3RpdmUpIDEwMCUpO2JveC1zaGFkb3c6MCAxcHggMnB4ICNjNTY1M2Q0NyxpbnNldCAwIDFweCAjNTkzYTIwMmU7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tc2Vjb25kYXJ5e2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTI0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmJ0bi1zZWNvbmRhcnk6YWN0aXZle2JhY2tncm91bmQ6IzdkNWIzOTMzO3RyYW5zaXRpb24tZHVyYXRpb246LjA2c30uYnRuLWdob3N0e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uYnRuLWdob3N0OmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmJ0bi1naG9zdDphY3RpdmV7YmFja2dyb3VuZDojN2Q1YjM5MjQ7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tZGFuZ2Vye2JhY2tncm91bmQ6I2IyNGY0NTE0O2NvbG9yOnZhcigtLWRhbmdlcik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTI5O2NvbG9yOnZhcigtLWRhbmdlcil9LmJ0bi1kYW5nZXI6YWN0aXZle2JhY2tncm91bmQ6I2IyNGY0NTNkO3RyYW5zaXRpb24tZHVyYXRpb246LjA2c30uYnRuLWRhbmdlcjpmb2N1cy12aXNpYmxle2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1kYW5nZXIpfS5idG4tc3VjY2Vzc3tiYWNrZ3JvdW5kOiM0ZjdhNTgxYTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1zdWNjZXNzOmhvdmVye2JhY2tncm91bmQ6IzRmN2E1ODJlO2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS5idG4tc3VjY2VzczphY3RpdmV7YmFja2dyb3VuZDojNGY3YTU4NDI7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tc3VjY2Vzczpmb2N1cy12aXNpYmxle2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1zdWNjZXNzKX0uYnRuLWJsb2Nre3dpZHRoOjEwMCV9LmJ0bi14c3toZWlnaHQ6MjZweDttaW4taGVpZ2h0OjI2cHg7cGFkZGluZzowIDEwcHg7Zm9udC1zaXplOi43NXJlbTtib3JkZXItcmFkaXVzOjdweDtnYXA6NHB4fS5idG4tc217aGVpZ2h0OjMycHg7bWluLWhlaWdodDozMnB4O3BhZGRpbmc6MCAxMnB4O2ZvbnQtc2l6ZTouODEyNXJlbTtib3JkZXItcmFkaXVzOjhweDtnYXA6NXB4fS5idG4taWNvbntwYWRkaW5nOjA7d2lkdGg6MzZweDttaW4td2lkdGg6MzZweDtoZWlnaHQ6MzZweDttaW4taGVpZ2h0OjM2cHg7Ym9yZGVyLXJhZGl1czo4cHg7Z2FwOjB9LmJ0bi1pY29uLmJ0bi1zbXt3aWR0aDozMHB4O21pbi13aWR0aDozMHB4O2hlaWdodDozMHB4O21pbi1oZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjdweH0uYnRuLWljb24gc3Zne2ZsZXgtc2hyaW5rOjB9Lm1haW4tY29udGVudHtmbGV4OjE7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4td2lkdGg6MDttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cG9zaXRpb246cmVsYXRpdmV9Lm1haW4tY29udGVudC5maWxlLXBhbmVsLW9wZW57bWFyZ2luLXJpZ2h0OnZhcigtLWxheW91dC1tYWluLWZpbGUtcGFuZWwtd2lkdGgpO3RyYW5zaXRpb246bWFyZ2luLXJpZ2h0IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRlcm1pbmFsLWluZm97Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC13ZWlnaHQ6NTAwfS5tYWluLWhlYWRlci1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjZweCAxMHB4O2ZsZXgtc2hyaW5rOjA7bWluLWhlaWdodDo0NHB4O2dhcDo4cHg7cG9zaXRpb246cmVsYXRpdmV9Lm1haW4taGVhZGVyLXJvdzphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2hlaWdodDoycHg7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCAwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjg1KSAzNSUscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLDEpIDUwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjg1KSA2NSUsdHJhbnNwYXJlbnQgMTAwJSk7YmFja2dyb3VuZC1zaXplOjIyMCUgMTAwJTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgY2VudGVyO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBlYXNlfS5tYWluLWhlYWRlci1yb3cuaXMtcnVubmluZzphZnRlcntvcGFjaXR5OjE7YW5pbWF0aW9uOnRvcGJhclByb2dyZXNzRmxvdyAxLjZzIGxpbmVhciBpbmZpbml0ZX0ubWFpbi1oZWFkZXItcm93LmlzLXBlcm1pc3Npb24tYmxvY2tlZDphZnRlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCAwJSxyZ2JhKDE2OSwxMDYsNDcsLjg1KSAzNSUscmdiYSgxNjksMTA2LDQ3LDEpIDUwJSxyZ2JhKDE2OSwxMDYsNDcsLjg1KSA2NSUsdHJhbnNwYXJlbnQgMTAwJSk7YmFja2dyb3VuZC1zaXplOjIyMCUgMTAwJTthbmltYXRpb24tZHVyYXRpb246Mi40c31Aa2V5ZnJhbWVzIHRvcGJhclByb2dyZXNzRmxvd3swJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgY2VudGVyfXRve2JhY2tncm91bmQtcG9zaXRpb246LTEwMCUgY2VudGVyfX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5tYWluLWhlYWRlci1yb3cuaXMtcnVubmluZzphZnRlcnthbmltYXRpb246bm9uZTtvcGFjaXR5Oi43fX0udG9wYmFyLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZsZXgtc2hyaW5rOjB9LnRvcGJhci1jZW50ZXJ7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtvdmVyZmxvdzpoaWRkZW59LnRvcGJhci1yaWdodHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7ZmxleC1zaHJpbms6MH0udG9wYmFyLWJyYW5ke2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYWNjZW50KSx2YXIoLS1hY2NlbnQtYWN0aXZlKSk7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOi44NXJlbTtsZXR0ZXItc3BhY2luZzouMDJlbTtib3gtc2hhZG93OjAgMXB4IDNweCAjNTkzYTIwMmU7dXNlci1zZWxlY3Q6bm9uZTtmbGV4LXNocmluazowfS50b3BiYXItc2Vzc2lvbi10aXRsZXtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi44NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmbGV4LXNocmluazowO21heC13aWR0aDoyNDBweH0udG9wYmFyLWN3ZHtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjcycmVtO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWluLXdpZHRoOjA7ZmxleDoxIDEgMDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjJweCA2cHg7Ym9yZGVyLXJhZGl1czo2cHg7ZGlyZWN0aW9uOnJ0bDt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9wYmFyLWN3ZDpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmY4Yztjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnRvcGJhci10YWdsaW5le2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNzhyZW07d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5zZXNzaW9uLXN0YXR1cy1waWxse2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy1lbGV2YXRlZCk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjIwcHg7cGFkZGluZzoycHggOXB4IDJweCA3cHg7ZmxleC1zaHJpbms6MDttYXgtd2lkdGg6MTQwcHg7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0uc2Vzc2lvbi1zdGF0dXMtcGlsbCAuc2Vzc2lvbi1zdGF0dXMtZG90e3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1zdGF0dXMtcGlsbCAuc2Vzc2lvbi1zdGF0dXMtdGV4dHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uc2Vzc2lvbi1zdGF0dXMtcGlsbC5ydW5uaW5ne2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Ym9yZGVyLWNvbG9yOiM0ZjdhNTg0ZDtjb2xvcjp2YXIoLS1zdWNjZXNzKX0uc2Vzc2lvbi1zdGF0dXMtcGlsbC5ydW5uaW5nIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTthbmltYXRpb246dGFzay1wdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy1waWxsLnBlcm1pc3Npb24tYmxvY2tlZHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2JvcmRlci1jb2xvcjojYTk2YTJmNTk7Y29sb3I6dmFyKC0td2FybmluZyl9LnNlc3Npb24tc3RhdHVzLXBpbGwucGVybWlzc2lvbi1ibG9ja2VkIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nKTthbmltYXRpb246dGFzay1wdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy1waWxsLmV4aXRlZCwuc2Vzc2lvbi1zdGF0dXMtcGlsbC5zdG9wcGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXNzaW9uLXN0YXR1cy1waWxsLmZhaWxlZHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNiMjRmNDU0ZDtjb2xvcjp2YXIoLS1kYW5nZXIpfS5zZXNzaW9uLXN0YXR1cy1waWxsLmZhaWxlZCAuc2Vzc2lvbi1zdGF0dXMtZG90e2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKX0uc2Vzc2lvbi1zdGF0dXMtcGlsbC5hcmNoaXZlZHtvcGFjaXR5Oi43fS5zZXNzaW9uLXN0YXR1cy1waWxsIC5zZXNzaW9uLXN0YXR1cy1lbGFwc2Vke2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6NHB4O3BhZGRpbmctbGVmdDo2cHg7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtvcGFjaXR5Oi43NTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouNjVyZW07bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5jdXJyZW50LXRhc2t7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yKTtib3JkZXItcmFkaXVzOjIwcHg7cGFkZGluZzoycHggOHB4IDJweCA1cHg7Zm9udC13ZWlnaHQ6NTAwO21heC13aWR0aDoyNDBweDttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47ZmxleC1zaHJpbms6MTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uY3VycmVudC10YXNrOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtmbGV4LXNocmluazowO2FuaW1hdGlvbjp0YXNrLXB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB0YXNrLXB1bHNlezAlLHRve29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSl9NTAle29wYWNpdHk6LjU7dHJhbnNmb3JtOnNjYWxlKC44KX19LnRvcGJhci1tb3JlLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleH0udG9wYmFyLW1vcmUtbWVudXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6Y2FsYygxMDAlICsgNnB4KTtyaWdodDowO21pbi13aWR0aDoxNjhweDtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7cGFkZGluZzo0cHg7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbGcpO3otaW5kZXg6NjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MXB4fS50b3BiYXItbW9yZS1tZW51LmhpZGRlbntkaXNwbGF5Om5vbmV9LnRvcGJhci1tb3JlLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OXB4O3dpZHRoOjEwMCU7cGFkZGluZzo4cHggMTJweDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgycmVtO2ZvbnQtd2VpZ2h0OjUwMDtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjhweDt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9wYmFyLW1vcmUtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KX0udG9wYmFyLW1vcmUtaXRlbSBzdmd7ZmxleC1zaHJpbms6MDtvcGFjaXR5Oi44NX0udG9wYmFyLW1vcmUtaXRlbS50b3BiYXItbW9yZS1pdGVtLWRhbmdlcntjb2xvcjp2YXIoLS1kYW5nZXIpfS50b3BiYXItbW9yZS1pdGVtLnRvcGJhci1tb3JlLWl0ZW0tZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXItaG92ZXIpfS50b3BiYXItbW9yZS1pdGVtLmhpZGRlbntkaXNwbGF5Om5vbmV9LnRvcGJhci1tb3JlLWl0ZW1bZGlzYWJsZWRde29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS50b3BiYXItbW9yZS1pdGVtW2Rpc2FibGVkXTpob3ZlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnRvcGJhci1tb3JlLWRpdmlkZXJ7aGVpZ2h0OjFweDttYXJnaW46NHB4IDZweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1kZWZhdWx0KTtvcGFjaXR5Oi42fS50ZXJtaW5hbC1jb250YWluZXJ7ZmxleDoxO2Rpc3BsYXk6bm9uZTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIHJpZ2h0LHJnYmEoOTEsNTgsMzQsLjIpLHRyYW5zcGFyZW50IDM1JSkscmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBib3R0b20gbGVmdCxyZ2JhKDE5NywxMDEsNjEsLjA4KSx0cmFuc3BhcmVudCA0MCUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsIzJhMjIxYywjMWYxYjE3LCMxYTE2MTMpO292ZXJmbG93OmhpZGRlbjttaW4taGVpZ2h0OjA7bWluLXdpZHRoOjA7bWFyZ2luOjAgNnB4IDZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE0MCwxMTAsODUsLjM1KTtib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmZmZmYwZiwwIDhweCAzMnB4ICMwMDAwMDA1OSwwIDJweCA4cHggIzAwMDM7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1ub3JtYWwpLGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1ub3JtYWwpfS50ZXJtaW5hbC1jb250YWluZXIuYWN0aXZle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpzdHJldGNofS50ZXJtaW5hbC1zY3JvbGwtd3JhcHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbjtzY3JvbGxiYXItd2lkdGg6bm9uZTtwYWRkaW5nOjEycHg7Ym9yZGVyLXJhZGl1czowO2JveC1zaGFkb3c6bm9uZTstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTt0ZXh0LXJlbmRlcmluZzpnZW9tZXRyaWNQcmVjaXNpb247Zm9udC12YXJpYW50LWxpZ2F0dXJlczpub25lO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoibGlnYSIgMCwiY2xpZyIgMCwiY2FsdCIgMCwiZGxpZyIgMDtmb250LWtlcm5pbmc6bm9uZTstLXRlcm0tZmc6ICNmNWVhZGM7LS10ZXJtLWJnOiB0cmFuc3BhcmVudDstLXRlcm0tY3Vyc29yOiAjZDY3YjUyOy0tdGVybS1mb250LWZhbWlseTogIkdlaXN0IE1vbm8iLCAiU0YgTW9ubyIsIG1vbm9zcGFjZTstLXRlcm0tZm9udC1zaXplOiAxM3B4Oy0tdGVybS1saW5lLWhlaWdodDogdmFyKC0tdGVybS1yb3ctaGVpZ2h0KTstLXRlcm0tcm93LWhlaWdodDogMjBweDstLXRlcm0tY29sb3ItMDogIzFmMWIxNzstLXRlcm0tY29sb3ItMTogI2QyNzc2NjstLXRlcm0tY29sb3ItMjogIzdmYTM2ZjstLXRlcm0tY29sb3ItMzogI2Q1YTM1YjstLXRlcm0tY29sb3ItNDogIzg3YTlkOTstLXRlcm0tY29sb3ItNTogI2M1OTVjNzstLXRlcm0tY29sb3ItNjogIzdmYjNiMTstLXRlcm0tY29sb3ItNzogI2Y1ZWFkYzstLXRlcm0tY29sb3ItODogIzYyNTM0NzstLXRlcm0tY29sb3ItOTogI2UzOWE4OTstLXRlcm0tY29sb3ItMTA6ICM5Y2MwOGE7LS10ZXJtLWNvbG9yLTExOiAjZWJiYjZlOy0tdGVybS1jb2xvci0xMjogI2E4YzFlYTstLXRlcm0tY29sb3ItMTM6ICNkYmIxZGM7LS10ZXJtLWNvbG9yLTE0OiAjOWFjYmNhOy0tdGVybS1jb2xvci0xNTogI2ZmZjdlZn0udGVybWluYWwtc2Nyb2xsLXdyYXA6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0udGVybWluYWwtc2Nyb2xsLXdyYXAgOjpzZWxlY3Rpb257YmFja2dyb3VuZDojZDY3YjUyNDd9LnRlcm1pbmFsLXNjcm9sbC13cmFwIC50ZXJtLWdyaWR7bWluLWhlaWdodDoxMDAlfS50ZXJtaW5hbC1zY3JvbGxiYXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjRweDtyaWdodDoycHg7Ym90dG9tOjRweDt3aWR0aDoxNHB4O3otaW5kZXg6MTA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZTtwb2ludGVyLWV2ZW50czpub25lfS50ZXJtaW5hbC1zY3JvbGxiYXIudmlzaWJsZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30udGVybWluYWwtc2Nyb2xsYmFyLXRyYWNre3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7d2lkdGg6MTRweDtib3JkZXItcmFkaXVzOjdweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1ie3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjNweDt3aWR0aDo4cHg7bWluLWhlaWdodDoyOHB4O2JvcmRlci1yYWRpdXM6NHB4O2JhY2tncm91bmQ6I2I0OTY3ODU5O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2Usd2lkdGggLjE1cyBlYXNlLHJpZ2h0IC4xNXMgZWFzZX0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6I2M4YWE4YzhjO3dpZHRoOjEwcHg7cmlnaHQ6MnB4fS50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWIuZHJhZ2dpbmcsLnRlcm1pbmFsLXNjcm9sbGJhci10aHVtYjphY3RpdmV7YmFja2dyb3VuZDojZGNiOTk2YjM7d2lkdGg6MTBweDtyaWdodDoycHh9QG1lZGlhKHBvaW50ZXI6Y29hcnNlKXsudGVybWluYWwtc2Nyb2xsYmFyLC50ZXJtaW5hbC1zY3JvbGxiYXItdHJhY2t7d2lkdGg6MjBweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1ie3dpZHRoOjEycHg7cmlnaHQ6NHB4O21pbi1oZWlnaHQ6MzZweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1iOmhvdmVyLC50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWIuZHJhZ2dpbmd7d2lkdGg6MTRweDtyaWdodDozcHh9fS50ZXJtaW5hbC1jb250YWluZXI6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjojYzU2NTNkODA7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmMTQsMCA4cHggMzJweCAjMDAwNiwwIDAgMCAycHggI2M1NjUzZDI2fS50ZXJtaW5hbC1yZXNpemUtaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTozcHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTt3aWR0aDo0OHB4O2hlaWdodDo1cHg7YmFja2dyb3VuZDojZmZmZmZmMTQ7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7Y3Vyc29yOm5zLXJlc2l6ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjdweDtjb2xvcjojZmZmZmZmNDA7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7ei1pbmRleDoxMDtwb2ludGVyLWV2ZW50czphdXRvfS50ZXJtaW5hbC1yZXNpemUtaGFuZGxlOmJlZm9yZXtjb250ZW50OiJcMjJlZVwyMmVlIjtsZXR0ZXItc3BhY2luZzo4cHg7Zm9udC1zaXplOjZweH0udGVybWluYWwtcmVzaXplLWhhbmRsZTpob3ZlcntvcGFjaXR5OjE7YmFja2dyb3VuZDojZmZmZmZmMjY7Y29sb3I6I2ZmZmZmZjgwO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgc2NhbGUoMS4xKX0udGVybWluYWwtY29udGFpbmVyOmhvdmVyIC50ZXJtaW5hbC1yZXNpemUtaGFuZGxle29wYWNpdHk6Ljd9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZXtib3JkZXItY29sb3I6IzRmN2E1ODhjO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjBmLDAgMCAwIDJweCAjNGY3YTU4NDAsMCA4cHggMzJweCAjMDAwMDAwNTl9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZTpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6MnB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50LHZhcigtLXN1Y2Nlc3MpLHRyYW5zcGFyZW50KTthbmltYXRpb246dGVybWluYWwtYWN0aXZlLXB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgdGVybWluYWwtYWN0aXZlLXB1bHNlezAlLHRve29wYWNpdHk6LjV9NTAle29wYWNpdHk6MX19LnRlcm1pbmFsLWNvbnRhaW5lcjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2hlaWdodDo0OHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHRvcCxyZ2JhKDI2LDIyLDE5LC41KSx0cmFuc3BhcmVudCk7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlO3otaW5kZXg6MTI7Ym9yZGVyLXJhZGl1czowIDAgdmFyKC0tcmFkaXVzLW1kKSB2YXIoLS1yYWRpdXMtbWQpfS50ZXJtaW5hbC1jb250YWluZXIuaGFzLWp1bXAtYnRuOmFmdGVye29wYWNpdHk6MX0udGVybWluYWwtc2NhbGUtYnRue21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O3BhZGRpbmc6MCA0cHg7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NjAwfS50ZXJtaW5hbC1zY2FsZS1sYWJlbHtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWluLXdpZHRoOjMycHg7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzowIDJweH0udGVybWluYWwtc2NhbGUtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OHB4O3JpZ2h0OjhweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MXB4O3BhZGRpbmc6MnB4O2JvcmRlci1yYWRpdXM6N3B4O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDYpO2JhY2tncm91bmQ6IzE4MTQxMTYxO2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7Ym94LXNoYWRvdzowIDZweCAxOHB4ICMwMDAwMDAyZTtvcGFjaXR5Oi43Mjt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyBlYXNlLGJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2U7ei1pbmRleDoxMjtwb2ludGVyLWV2ZW50czphdXRvfS50ZXJtaW5hbC1jb250YWluZXI6aG92ZXIgLnRlcm1pbmFsLXNjYWxlLW92ZXJsYXksLnRlcm1pbmFsLXNjYWxlLW92ZXJsYXk6Zm9jdXMtd2l0aGlue29wYWNpdHk6MTtiYWNrZ3JvdW5kOiMxODE0MTE4Zjtib3JkZXItY29sb3I6I2ZmZmZmZjFhfS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0bnttaW4td2lkdGg6MjJweDtoZWlnaHQ6MjJweDtwYWRkaW5nOjAgM3B4O2NvbG9yOiNmNWVhZGNlMDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6NXB4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlfS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNkNjdiNTIyZTtjb2xvcjojZmZmN2VmZjV9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktbGFiZWx7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6I2Y1ZWFkY2E4O21pbi13aWR0aDozNHB4O3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MCAzcHh9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktZGl2aWRlcnt3aWR0aDoxcHg7aGVpZ2h0OjE0cHg7YmFja2dyb3VuZDojZjVlYWRjMzM7bWFyZ2luOjAgMnB4fS50ZXJtaW5hbC1qdW1wLWJvdHRvbXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNHB4O2JvdHRvbToxNnB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtwYWRkaW5nOjA7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wOCk7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojMWMxNjEyYzc7Y29sb3I6I2ZmZjdlZmViO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0MCwwIDhweCAyMnB4ICMwMDAwMDA1MixpbnNldCAwIDFweCAjZmZmZmZmMGY7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KTtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjEzO29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMHB4KSBzY2FsZSguODYpO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNnMgdmFyKC0tZWFzZS1vdXQtZXhwbyksdHJhbnNmb3JtIC4zMnMgdmFyKC0tZWFzZS1zcHJpbmcpLGJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMnMgZWFzZX0udGVybWluYWwtanVtcC1ib3R0b20udmlzaWJsZXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7cG9pbnRlci1ldmVudHM6YXV0b30udGVybWluYWwtanVtcC1ib3R0b20gc3Zne3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyB2YXIoLS1lYXNlLW91dC1leHBvKX0udGVybWluYWwtanVtcC1ib3R0b206aG92ZXJ7YmFja2dyb3VuZDojZDY3YjUyZWI7Ym9yZGVyLWNvbG9yOiNmZmZmZmYyZTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0NywwIDEwcHggMjZweCAjYjg1YzM3NWMsaW5zZXQgMCAxcHggI2ZmZmZmZjJlfS50ZXJtaW5hbC1qdW1wLWJvdHRvbTpob3ZlciBzdmd7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMS41cHgpfS50ZXJtaW5hbC1qdW1wLWJvdHRvbTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjkyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wOHN9LnRlcm1pbmFsLWp1bXAtYm90dG9tOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0NywwIDEwcHggMjZweCAjYjg1YzM3NWMsaW5zZXQgMCAxcHggI2ZmZmZmZjJlLDAgMCAwIDNweCAjZDY3YjUyNTl9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZXtib3JkZXItY29sb3I6IzRmN2E1ODgwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjBhLDAgMCAwIDJweCAjNGY3YTU4NDAsdmFyKC0tc2hhZG93LXNvZnQpfS5taW5pLWtleWJvYXJkLWZhYntwb3NpdGlvbjpmaXhlZDtib3R0b206NjBweDtyaWdodDoxNnB4O3dpZHRoOjQ0cHg7aGVpZ2h0OjQ0cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmY7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjEuMTI1cmVtO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3gtc2hhZG93OjAgNHB4IDE2cHggI2I4NWMzNzU5O3otaW5kZXg6MTAwO3RyYW5zaXRpb246YWxsIC4ycyB2YXIoLS1lYXNlLXNwcmluZyl9Lm1pbmkta2V5Ym9hcmQtZmFiLnZpc2libGV7ZGlzcGxheTpmbGV4fS5taW5pLWtleWJvYXJkLWZhYjpob3Zlcnt0cmFuc2Zvcm06c2NhbGUoMS4xKTtib3gtc2hhZG93OjAgNnB4IDIwcHggI2I4NWMzNzczfS5taW5pLWtleWJvYXJkLWZhYjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSl9Lm1pbmkta2V5Ym9hcmR7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjYwcHg7cmlnaHQ6MTZweDtiYWNrZ3JvdW5kOiMyYTFmMTZmNTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTIyLDkxLDY0LC41KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7Ym94LXNoYWRvdzowIDhweCAzMnB4ICMwMDA2O3otaW5kZXg6MTAwMDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KTtvdmVyZmxvdzpoaWRkZW47bWluLXdpZHRoOjI2MHB4O2FuaW1hdGlvbjpta1NsaWRlVXAgLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5taW5pLWtleWJvYXJkLmhpZGRlbntkaXNwbGF5Om5vbmV9QGtleWZyYW1lcyBta1NsaWRlVXB7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEycHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsubWluaS1rZXlib2FyZHtib3R0b206MjBweDtyaWdodDoxMHB4O2xlZnQ6MTBweDttaW4td2lkdGg6MH0ubWluaS1rZXlib2FyZC1mYWJ7Ym90dG9tOjIwcHg7cmlnaHQ6MTZweH19LmNoYXQtY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MTtkaXNwbGF5Om5vbmU7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDIwcHggMTZweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgyNTUsMjUyLDI0OCwuNSkgMCUsdHJhbnNwYXJlbnQgMTAwJSl9LmNoYXQtdW5yZWFkLWJ1YmJsZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNHB4O2JvdHRvbToxMHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjZweDtoZWlnaHQ6MzJweDttaW4td2lkdGg6MzJweDtwYWRkaW5nOjAgMTBweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC43Mik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOiNmZmZjZjhlYjtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtc2l6ZTouNzhyZW07Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjE7bGV0dGVyLXNwYWNpbmc6LjAxZW07d2hpdGUtc3BhY2U6bm93cmFwO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCk7Ym94LXNoYWRvdzowIDFweCAzcHggIzU5M2EyMDFmLDAgMTBweCAyNHB4ICNiODVjMzcyZSxpbnNldCAwIDFweCAjZmZmOTtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjEzO29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg4cHgpIHNjYWxlKC45KTtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMjZzIHZhcigtLWVhc2Utb3V0LWV4cG8pLHRyYW5zZm9ybSAuMzJzIHZhcigtLWVhc2Utc3ByaW5nKSxiYWNrZ3JvdW5kIC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJveC1zaGFkb3cgLjJzIGVhc2UsY29sb3IgLjE4cyBlYXNlLHBhZGRpbmcgLjIycyB2YXIoLS1lYXNlLW91dC1leHBvKX0uY2hhdC11bnJlYWQtYnViYmxlLnZpc2libGV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpO3BvaW50ZXItZXZlbnRzOmF1dG99LmNoYXQtdW5yZWFkLWJ1YmJsZS5oYXMtdW5yZWFke2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmZmZmYzc7cGFkZGluZzowIDEycHggMCAxMHB4O2JveC1zaGFkb3c6MCAxcHggM3B4ICM1OTNhMjAyZSwwIDEycHggMjhweCAjYjg1YzM3NTIsaW5zZXQgMCAxcHggI2ZmZmZmZjQ3fS5jaGF0LXVucmVhZC1idWJibGUtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5jaGF0LXVucmVhZC1idWJibGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYWYyO2JveC1zaGFkb3c6MCAycHggNHB4ICM1OTNhMjAyOSwwIDE0cHggMzBweCAjYjg1YzM3M2QsaW5zZXQgMCAxcHggI2ZmZmZmZmIzfS5jaGF0LXVucmVhZC1idWJibGUuaGFzLXVucmVhZDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1ob3Zlcik7Ym94LXNoYWRvdzowIDJweCA1cHggIzU5M2EyMDM4LDAgMTRweCAzMnB4ICNiODVjMzc2YixpbnNldCAwIDFweCAjZmZmZmZmNTJ9LmNoYXQtdW5yZWFkLWJ1YmJsZTpob3ZlciAuY2hhdC11bnJlYWQtYnViYmxlLWljb257dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMS41cHgpfS5jaGF0LXVucmVhZC1idWJibGU6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDhzfS5jaGF0LXVucmVhZC1idWJibGU6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmU7Ym94LXNoYWRvdzowIDJweCA0cHggIzU5M2EyMDMzLDAgMTJweCAyOHB4ICNiODVjMzc1MixpbnNldCAwIDFweCAjZmZmZmZmNTIsMCAwIDAgM3B4ICNjNTY1M2Q1Mn0uY2hhdC11bnJlYWQtYnViYmxlLWNvdW50e2Rpc3BsYXk6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7Zm9udC1zaXplOi43OHJlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MTtsZXR0ZXItc3BhY2luZzouMDFlbTtwb2ludGVyLWV2ZW50czpub25lfS5jaGF0LXVucmVhZC1idWJibGUtY291bnQudmlzaWJsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FuaW1hdGlvbjpjaGF0VW5yZWFkQ291bnRQb3AgLjIycyB2YXIoLS1lYXNlLW91dC1iYWNrLCBjdWJpYy1iZXppZXIoLjM0LCAxLjU2LCAuNjQsIDEpKX0uY2hhdC11bnJlYWQtYnViYmxlLWNvdW50OmFmdGVye2NvbnRlbnQ6IiBcNjc2MVw2NWIwXDZkODhcNjA2ZiI7bWFyZ2luLWxlZnQ6MnB4O2ZvbnQtd2VpZ2h0OjUwMDtvcGFjaXR5Oi45NX1Aa2V5ZnJhbWVzIGNoYXRVbnJlYWRDb3VudFBvcHswJXt0cmFuc2Zvcm06c2NhbGUoLjYpO29wYWNpdHk6MH10b3t0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfX0uY2hhdC11bnJlYWQtZGl2aWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O21hcmdpbjo2cHggNHB4IDJweDtwYWRkaW5nOjAgMnB4O2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLWFjY2VudCk7bGV0dGVyLXNwYWNpbmc6LjA0ZW07dXNlci1zZWxlY3Q6bm9uZTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDthbmltYXRpb246Y2hhdFVucmVhZERpdmlkZXJJbiAuMzJzIHZhcigtLWVhc2Utb3V0LWV4cG8pIGZvcndhcmRzfS5jaGF0LXVucmVhZC1kaXZpZGVyLWxpbmV7ZmxleDoxO2hlaWdodDoxcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2M1NjUzZDBkLCNjNTY1M2Q1MiwjYzU2NTNkMGQpfS5jaGF0LXVucmVhZC1kaXZpZGVyLWxhYmVse2ZsZXgtc2hyaW5rOjA7cGFkZGluZzozcHggMTBweDtiYWNrZ3JvdW5kOiNmZmY4ZjBmMjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMTgpO2JvcmRlci1yYWRpdXM6OTk5cHg7Ym94LXNoYWRvdzowIDFweCAzcHggI2I4NWMzNzFhO3doaXRlLXNwYWNlOm5vd3JhcH1Aa2V5ZnJhbWVzIGNoYXRVbnJlYWREaXZpZGVySW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LmNoYXQtY29udGFpbmVyLmFjdGl2ZXtkaXNwbGF5OmZsZXh9LmNoYXQtY29udGFpbmVyOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjQ4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLHJnYmEoMjU1LDI1MiwyNDgsLjYpLHRyYW5zcGFyZW50KTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7ei1pbmRleDoxMn0uY2hhdC1jb250YWluZXIuaGFzLWp1bXAtYnRuOmFmdGVye29wYWNpdHk6MX0uY2hhdC1tZXNzYWdlc3tmbGV4OjE7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtnYXA6MTZweDtwYWRkaW5nOjIwcHggNHB4IDEycHg7bWluLWhlaWdodDowO21pbi13aWR0aDowO3Njcm9sbGJhci1ndXR0ZXI6c3RhYmxlO292ZXJzY3JvbGwtYmVoYXZpb3I6Y29udGFpbn0uY2hhdC1sb2FkLW1vcmV7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzo4cHggMH0uY2hhdC1sb2FkLW1vcmUtYnRue2JhY2tncm91bmQ6dmFyKC0tYmctaG92ZXIpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljc1cmVtO3BhZGRpbmc6NnB4IDE2cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2V9LmNoYXQtbG9hZC1tb3JlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX1Aa2V5ZnJhbWVzIG1lc3NhZ2VTbGlkZXswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTZweCkgc2NhbGUoLjk3KTtmaWx0ZXI6Ymx1cig2cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtmaWx0ZXI6Ymx1cigwKX19QGtleWZyYW1lcyBtZXNzYWdlU2xpZGVVc2VyezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKDIwcHgpIHRyYW5zbGF0ZVkoOHB4KSBzY2FsZSguOTYpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApIHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fUBrZXlmcmFtZXMgbWVzc2FnZUZsb2F0ezAlLHRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfTUwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtM3B4KX19LmNoYXQtbWVzc2FnZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO21hcmdpbjo0cHggMDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdHJhbnNmb3JtIC4ycyB2YXIoLS1lYXNlLW91dC1leHBvKTstLWNoYXQtY2FyZC1tYXgtd2lkdGg6IDcyMHB4fS5jaGF0LW1lc3NhZ2U6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9QG1lZGlhKGhvdmVyOm5vbmUpey5jaGF0LW1lc3NhZ2U6aG92ZXJ7dHJhbnNmb3JtOm5vbmV9LmNoYXQtbWVzc2FnZTpob3ZlciAuY2hhdC1tZXNzYWdlLWJ1YmJsZXtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSl9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnQ6aG92ZXIgLmNoYXQtbWVzc2FnZS1idWJibGV7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1zdWJ0bGUpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKX19LmNoYXQtbWVzc2FnZS51c2Vye2FsaWduLXNlbGY6ZmxleC1lbmR9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O21heC13aWR0aDoxMDAlO3dpZHRoOjEwMCV9LmNoYXQtbWVzc2FnZS5zeXN0ZW0taW5mb3thbGlnbi1zZWxmOmNlbnRlcjttYXgtd2lkdGg6MTAwJTt3aWR0aDoxMDAlO21hcmdpbjoxMHB4IDA7YW5pbWF0aW9uOm1lc3NhZ2VGbG9hdCAzcyBlYXNlLWluLW91dCBpbmZpbml0ZX0uc3lzdGVtLWluZm8tY2FyZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsIzYzNjZmMTE0LCM2MzY2ZjEwYSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDk5LDEwMiwyNDEsLjIpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtwYWRkaW5nOjEycHggMTZweDtmb250LXNpemU6LjgxMjVyZW07Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpfS5zeXN0ZW0taW5mby1oZWFkZXJ7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiM2MzY2ZjFmMjttYXJnaW4tYm90dG9tOjhweDtmb250LXNpemU6LjY4NzVyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweH0uc3lzdGVtLWluZm8taGVhZGVyOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjhweDtoZWlnaHQ6OHB4O2JhY2tncm91bmQ6IzYzNjZmMTk5O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpfS5zeXN0ZW0taW5mby1jb250ZW50e2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodC1iYXNlKTttYXgtaGVpZ2h0OjIwMHB4O292ZXJmbG93LXk6YXV0b30uY2hhdC1tZXNzYWdlLmFuaW1hdGUtaW57YW5pbWF0aW9uOm1lc3NhZ2VTbGlkZSAuNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sZmlsdGVyfS5jaGF0LW1lc3NhZ2UudXNlci5hbmltYXRlLWlue2FuaW1hdGlvbjptZXNzYWdlU2xpZGVVc2VyIC40cyB2YXIoLS1lYXNlLW91dC1iYWNrKX0uY2hhdC1tZXNzYWdlLWF2YXRhcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzowIDJweCA0cHh9LmNoYXQtbWVzc2FnZS1hdmF0YXIuYXNzaXN0YW50e2ZsZXgtZGlyZWN0aW9uOnJvd30uY2hhdC1tZXNzYWdlLWF2YXRhci51c2Vye2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5waXhlbC1hdmF0YXJ7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtmbGV4LXNocmluazowO2JvcmRlci1yYWRpdXM6NnB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtib3gtc2hhZG93OjAgMXB4IDNweCAjMDAwMDAwMjZ9LnBpeGVsLWF2YXRhci1pbWFnZXtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0ucGl4ZWwtYXZhdGFyLXN2Z3tkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7aW1hZ2UtcmVuZGVyaW5nOnBpeGVsYXRlZH0uYXZhdGFyLW5hbWV7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDNlbTtsaW5lLWhlaWdodDoxfS5jaGF0LW1lc3NhZ2UuYXNzaXN0YW50IC5hdmF0YXItbmFtZXtjb2xvcjp2YXIoLS1hY2NlbnQpfS5jaGF0LW1lc3NhZ2UudXNlciAuYXZhdGFyLW5hbWV7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSl9LmNoYXQtbWVzc2FnZS1idWJibGV7cGFkZGluZzoxMnB4IDE2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2ZvbnQtc2l6ZTouODc1cmVtO2xpbmUtaGVpZ2h0OnZhcigtLWxpbmUtaGVpZ2h0LXJlbGF4ZWQpO3dvcmQtd3JhcDpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkO3doaXRlLXNwYWNlOnByZS13cmFwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY2hhdC1tZXNzYWdlOmhvdmVyIC5jaGF0LW1lc3NhZ2UtYnViYmxle2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LW1kKX0uY2hhdC1tZXNzYWdlLnVzZXIgLmNoYXQtbWVzc2FnZS1idWJibGV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKSB2YXIoLS1yYWRpdXMtbGcpIHZhcigtLXJhZGl1cy1zbSkgdmFyKC0tcmFkaXVzLWxnKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDtib3gtc2hhZG93OjAgNHB4IDE2cHggI2M1NjUzZDRkLGluc2V0IDAgMXB4ICNmZmZmZmYyNn0uY2hhdC1tZXNzYWdlLnVzZXJ7bWF4LXdpZHRoOjEwMCV9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnQgLmNoYXQtbWVzc2FnZS1idWJibGV7YmFja2dyb3VuZDp2YXIoLS1iZy1zdXJmYWNlKTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3BhZGRpbmc6MTRweCAxOHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtd3JhcDpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc20pfS5jaGF0LW1lc3NhZ2UuYXNzaXN0YW50OmhvdmVyIC5jaGF0LW1lc3NhZ2UtYnViYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQtc29mdCk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbWQpfS5jaGF0LW1lc3NhZ2UtY29udGVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy14OmhpZGRlbjtmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodC1yZWxheGVkKTt3b3JkLXdyYXA6YnJlYWstd29yZDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LnRoaW5raW5nLWlubGluZSwuY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LmlubGluZS10b29sLC5jaGF0LW1lc3NhZ2UtY29udGVudD4udG9vbC11c2UtY2FyZCwuY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LnRvb2wtZ3JvdXB7bWFyZ2luOjNweCAwfS5jaGF0LW1lc3NhZ2UubXVsdGktYWdlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94fS5jaGF0LW1lc3NhZ2UudXNlci5tdWx0aS1hZ2VudHthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLXNlbGY6ZmxleC1zdGFydDt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudC5zdWJhZ2VudHtwYWRkaW5nLWxlZnQ6MTBweDttYXJnaW4tbGVmdDo2cHg7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1ib3JkZXItc3VidGxlKSk7Ym9yZGVyLXJhZGl1czowIDRweCA0cHggMDt3aWR0aDpjYWxjKDEwMCUgLSA2cHgpO21heC13aWR0aDpjYWxjKDEwMCUgLSA2cHgpfS5jaGF0LW1lc3NhZ2UubXVsdGktYWdlbnQgLmNoYXQtbWVzc2FnZS1zZWdtZW50LnN1YmFnZW50IC5jaGF0LW1lc3NhZ2UtY29udGVudHtvcGFjaXR5Oi45Nn0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudCAuY2hhdC1tZXNzYWdlLWF2YXRhcntwYWRkaW5nLWJvdHRvbTo0cHh9LmNoYXQtbWVzc2FnZS1hdmF0YXIuc3ViYWdlbnQgLmF2YXRhci1uYW1le2NvbG9yOnZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKX0uc3ViYWdlbnQtcmVwbHl7YmFja2dyb3VuZDojYzU2NTNkMGY7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNiUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yKTtib3JkZXI6MXB4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAyMCUsdHJhbnNwYXJlbnQpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjEwcHggMTRweDttYXJnaW46NHB4IDA7bGluZS1oZWlnaHQ6MS41NTtmb250LXNpemU6Ljg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO2JveC1zaXppbmc6Ym9yZGVyLWJveDt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVufS5zdWJhZ2VudC1yZXBseT46Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5zdWJhZ2VudC1yZXBseT46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnN1YmFnZW50LXJlcGx5LmVycm9ye2JhY2tncm91bmQ6I2UyNTc0YzE0O2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tZGFuZ2VyLCAjZTI1NzRjKSA4JSx2YXIoLS1iZy1zdXJmYWNlKSk7Ym9yZGVyLWNvbG9yOiNlMjU3NGM1OTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tZGFuZ2VyLCAjZTI1NzRjKSAzNSUsdHJhbnNwYXJlbnQpfS5zdWJhZ2VudC1yZXBseS5wZW5kaW5ne29wYWNpdHk6Ljc7cGFkZGluZzoxNHB4IDE2cHh9LnN1YmFnZW50LXJlcGx5Om5vdCguY29sbGFwc2libGUpe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo2cHh9LnN1YmFnZW50LXJlcGx5IHByZSwuc3ViYWdlbnQtcmVwbHkgY29kZXtmb250LXNpemU6LjgycmVtfS5zdWJhZ2VudC1yZXBseSBwcmV7YmFja2dyb3VuZDojMDAwMDAwMGE7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyLXJhZGl1czo2cHg7b3ZlcmZsb3cteDpoaWRkZW47d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7bWFyZ2luOjhweCAwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5zdWJhZ2VudC1wYW5lbHttYXJnaW46OHB4IDA7Ym9yZGVyOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMjUlLHRyYW5zcGFyZW50KTtib3JkZXItbGVmdDozcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDU1JSx0cmFuc3BhcmVudCk7Ym9yZGVyLXJhZGl1czoxMHB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAzJSx2YXIoLS1iZy1zdXJmYWNlKSk7Ym94LXNoYWRvdzowIDFweCAycHggIzAwMDAwMDA4fS5zdWJhZ2VudC1wYW5lbC1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6OHB4IDEycHg7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTAlLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXItYm90dG9tOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTYlLHRyYW5zcGFyZW50KTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO2ZvbnQtc2l6ZTouNzhyZW07bGluZS1oZWlnaHQ6MS4zNTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyBlYXNlfS5zdWJhZ2VudC1wYW5lbC1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTQlLHZhcigtLWJnLXN1cmZhY2UpKX0uc3ViYWdlbnQtcGFuZWwtaGVhZGVyOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDU1JSx0cmFuc3BhcmVudCk7b3V0bGluZS1vZmZzZXQ6LTJweH0uc3ViYWdlbnQtcGFuZWwtYXZhdGFye2ZsZXg6MCAwIGF1dG87d2lkdGg6MjJweDtoZWlnaHQ6MjJweDtib3JkZXItcmFkaXVzOjVweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTglLHRyYW5zcGFyZW50KTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zdWJhZ2VudC1wYW5lbC1hdmF0YXIgc3ZnLC5zdWJhZ2VudC1wYW5lbC1hdmF0YXIgaW1ne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9ja30uc3ViYWdlbnQtcGFuZWwtYXJyb3d7ZmxleDowIDAgYXV0bztjb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNjUlLHZhcigtLXRleHQtcHJpbWFyeSkpO29wYWNpdHk6Ljg7Zm9udC13ZWlnaHQ6NjAwfS5zdWJhZ2VudC1wYW5lbC1hdHRyaWJ1dGlvbntmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5zdWJhZ2VudC1wYW5lbC1uYW1le2NvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA4OCUsdmFyKC0tdGV4dC1wcmltYXJ5KSk7Zm9udC13ZWlnaHQ6NjAwfS5zdWJhZ2VudC1wYW5lbC10YWd7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjAgNnB4O3BhZGRpbmc6MCA2cHg7Zm9udC1zaXplOi42MnJlbTtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW07Y29sb3I6dmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDEyJSx0cmFuc3BhcmVudCk7Ym9yZGVyOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMzAlLHRyYW5zcGFyZW50KTtib3JkZXItcmFkaXVzOjRweDt2ZXJ0aWNhbC1hbGlnbjoxcHg7bGluZS1oZWlnaHQ6MS40O3doaXRlLXNwYWNlOm5vd3JhcH0uc3ViYWdlbnQtcGFuZWwtdGFzay1kZXNje2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OjQwMH0uc3ViYWdlbnQtcGFuZWwtdG9nZ2xle2ZsZXg6MCAwIGF1dG87ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjNweCAxMHB4O2ZvbnQtc2l6ZTouN3JlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MS4zO2NvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA3OCUsdmFyKC0tdGV4dC1wcmltYXJ5KSk7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgOCUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlcjoxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDMwJSx0cmFuc3BhcmVudCk7Ym9yZGVyLXJhZGl1czo5OTlweDtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZSx0cmFuc2Zvcm0gLjFzIGVhc2V9LnN1YmFnZW50LXBhbmVsLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAxOCUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNDUlLHRyYW5zcGFyZW50KX0uc3ViYWdlbnQtcGFuZWwtdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxcHgpfS5zdWJhZ2VudC1wYW5lbC10b2dnbGUtaWNvbnt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgdmFyKC0tZWFzZS1vdXQtZXhwbywgY3ViaWMtYmV6aWVyKC4xNiwgMSwgLjMsIDEpKX0uc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD10cnVlXSAuc3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWljb257dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5zdWJhZ2VudC1wYW5lbC1ib2R5e3BhZGRpbmc6MTBweCAxNHB4O292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbjttaW4td2lkdGg6MDttYXgtd2lkdGg6MTAwJTt0cmFuc2l0aW9uOm1heC1oZWlnaHQgLjI4cyB2YXIoLS1lYXNlLW91dC1leHBvLCBjdWJpYy1iZXppZXIoLjE2LCAxLCAuMywgMSkpO3Njcm9sbGJhci1ndXR0ZXI6c3RhYmxlfS5zdWJhZ2VudC1wYW5lbFtkYXRhLWV4cGFuZGVkPWZhbHNlXSAuc3ViYWdlbnQtcGFuZWwtYm9keXttYXgtaGVpZ2h0OjIyZW19LnN1YmFnZW50LXBhbmVsW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0gLnN1YmFnZW50LXBhbmVsLWJvZHl7bWF4LWhlaWdodDo3MHZofS5zdWJhZ2VudC1wYW5lbC1ib2R5PjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LnN1YmFnZW50LXBhbmVsLWJvZHk+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5zdWJhZ2VudC1wYW5lbC1ib2R5IC50b29sLXVzZS1jYXJkLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC50b29sLWdyb3VwLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC5pbmxpbmUtdG9vbCwuc3ViYWdlbnQtcGFuZWwtYm9keSAuaW5saW5lLXRlcm1pbmFsLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC5pbmxpbmUtZGlmZnttYXJnaW46NHB4IDB9LnN1YmFnZW50LXBhbmVsLWJvZHkgLm1hcmtkb3duLWNvbnRlbnR7Zm9udC1zaXplOi44NzVyZW19LnN1YmFnZW50LXBhbmVsLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjdweDtoZWlnaHQ6N3B4fS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAzMiUsdHJhbnNwYXJlbnQpO2JvcmRlci1yYWRpdXM6NHB4fS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA1MCUsdHJhbnNwYXJlbnQpfS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5zdWJhZ2VudC1wYW5lbC1mb290ZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjZweCAxMnB4O2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDYlLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXItdG9wOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTQlLHRyYW5zcGFyZW50KTtmb250LXNpemU6LjdyZW19LnN1YmFnZW50LXBhbmVsLWZvb3Rlci1oaW50e2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2xldHRlci1zcGFjaW5nOi4wNGVtO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uc3ViYWdlbnQtcmVwbHkuY29sbGFwc2libGV7cGFkZGluZzowO292ZXJmbG93OmhpZGRlbn0uc3ViYWdlbnQtcmVwbHkuZmluYWx7bWFyZ2luOjZweCAwIDA7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA2MCUsdHJhbnNwYXJlbnQpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDUlLHZhcigtLWJnLXN1cmZhY2UpKX0uc3ViYWdlbnQtcmVwbHkuZmluYWwuZXJyb3J7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tZGFuZ2VyLCAjZTI1NzRjKTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWRhbmdlciwgI2UyNTc0YykgNSUsdmFyKC0tYmctc3VyZmFjZSkpfS5zdWJhZ2VudC1yZXBseS1tYXJrZXJ7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDttYXJnaW4tYm90dG9tOjRweDtmb250LXNpemU6LjY4cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDc4JSx2YXIoLS10ZXh0LXByaW1hcnkpKX0uc3ViYWdlbnQtcmVwbHktbWFya2VyLmVycm9ye2NvbG9yOnZhcigtLWRhbmdlciwgI2UyNTc0Yyl9LnN1YmFnZW50LXJlcGx5LW1hcmtlci5wZW5kaW5ne2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtdHJhbnNmb3JtOm5vbmU7bGV0dGVyLXNwYWNpbmc6MDtmb250LXdlaWdodDo1MDB9LnN1YmFnZW50LXJlcGx5LW1hcmtlci1pY29ue2ZvbnQtd2VpZ2h0OjcwMH0uc3ViYWdlbnQtcmVwbHkuZmluYWwgLnN1YmFnZW50LXJlcGx5LWNvbnRlbnQ+OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0uc3ViYWdlbnQtcmVwbHkuZmluYWwgLnN1YmFnZW50LXJlcGx5LWNvbnRlbnQ+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5lbXB0eS1tZXNzYWdlIC5lbXB0eS1tZXNzYWdlLWhpbnR7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC1zaXplOi44MTI1cmVtO29wYWNpdHk6Ljd9LnVua25vd24tYmxvY2t7bWFyZ2luOjRweCAwO2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLXRleHQtbXV0ZWQpIDYlLHRyYW5zcGFyZW50KTtmb250LXNpemU6Ljc1cmVtO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS51bmtub3duLWJsb2NrOmhvdmVye2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tdGV4dC1tdXRlZCkgMTAlLHRyYW5zcGFyZW50KX0udW5rbm93bi1ibG9jay1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6NnB4IDEwcHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS51bmtub3duLWJsb2NrLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCk7Y29sb3I6dmFyKC0tYmctc3VyZmFjZSk7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjYwMH0udW5rbm93bi1ibG9jay1sYWJlbHtmbGV4OjE7Zm9udC13ZWlnaHQ6NTAwfS51bmtub3duLWJsb2NrLXRvZ2dsZXtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtmb250LXNpemU6LjdyZW07dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udW5rbm93bi1ibG9jay5jb2xsYXBzZWQgLnVua25vd24tYmxvY2stdG9nZ2xle3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX0udW5rbm93bi1ibG9jay1ib2R5e21hcmdpbjowO3BhZGRpbmc6OHB4IDEwcHggMTBweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtaGVpZ2h0OjI0MHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztib3JkZXItdG9wOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym94LXNpemluZzpib3JkZXItYm94fS51bmtub3duLWJsb2NrLmNvbGxhcHNlZCAudW5rbm93bi1ibG9jay1ib2R5e2Rpc3BsYXk6bm9uZX0udG9vbC11c2UtY2FyZFtkYXRhLXRydW5jYXRlZD10cnVlXSAudG9vbC11c2UtbmFtZTphZnRlciwuaW5saW5lLXRvb2xbZGF0YS10cnVuY2F0ZWQ9dHJ1ZV0gLmlubGluZS10b29sLXRpdGxlOmFmdGVye2NvbnRlbnQ6Ilw1ZGYyXDYyMmFcNjVhZCI7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NnB4O3BhZGRpbmc6MXB4IDZweDtmb250LXNpemU6LjZyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtaW52ZXJzZSwgI2ZmZik7YmFja2dyb3VuZDp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtib3JkZXItcmFkaXVzOjk5OXB4O2xldHRlci1zcGFjaW5nOi4wMmVtO3ZlcnRpY2FsLWFsaWduOjFweDtvcGFjaXR5Oi44NX0uY2hhdC1tZXNzYWdlLnRoaW5raW5ne2FsaWduLXNlbGY6ZmxleC1zdGFydDttYXgtd2lkdGg6MTAwJTttYXJnaW46NHB4IDB9LmNoYXQtbWVzc2FnZS5wcm9tcHR7YWxpZ24tc2VsZjpjZW50ZXI7bWF4LXdpZHRoOjEwMCU7bWFyZ2luOjRweCAwfS5wcm9tcHQtY2FyZHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6ZGVmYXVsdDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5wcm9tcHQtaWNvbntmb250LXNpemU6Ljg3NXJlbX0ucHJvbXB0LWNvbnRlbnR7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXN0eWxlOml0YWxpY30ucHJvbXB0LXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjojYzU2NTNkY2M7Zm9udC13ZWlnaHQ6NTAwfS50eXBpbmctaW5kaWNhdG9ye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtwYWRkaW5nOjZweCAwfS50eXBpbmctaW5kaWNhdG9yIHNwYW57ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6N3B4O2hlaWdodDo3cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtc29mdCk7YW5pbWF0aW9uOnR5cGluZ0JvdW5jZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS50eXBpbmctaW5kaWNhdG9yIHNwYW46bnRoLWNoaWxkKDIpe2FuaW1hdGlvbi1kZWxheTouMTVzfS50eXBpbmctaW5kaWNhdG9yIHNwYW46bnRoLWNoaWxkKDMpe2FuaW1hdGlvbi1kZWxheTouM3N9QGtleWZyYW1lcyB0eXBpbmdCb3VuY2V7MCUsNjAlLHRve29wYWNpdHk6LjM1O3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfTMwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCl9fS50b29sLXVzZS1jYXJke21hcmdpbjo0cHggMDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWUwLCNmZmY2ZWFiOCk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4yMnMgZWFzZSxib3gtc2hhZG93IC4yMnMgZWFzZSx0cmFuc2Zvcm0gLjIycyBlYXNlfS50b29sLXVzZS1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjojNGY3YTU4NGQ7Ym94LXNoYWRvdzowIDNweCAxMnB4ICM0ZjdhNTgxNH0udG9vbC11c2UtY2FyZC5sb2FkaW5ne2JvcmRlci1jb2xvcjojYTk2YTJmNGQ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmY0ZTJlMCwjZmZmMWRhYjgpfS50b29sLXVzZS1jYXJkLnN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOiM0ZjdhNTg1Mn0udG9vbC11c2UtY2FyZC5lcnJvcntib3JkZXItY29sb3I6I2IyNGY0NTUyO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmNmMGVlZTAsI2ZjZWJlOWI4KX0udG9vbC11c2UtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo5cHggMTRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouODEyNXJlbTt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7dG91Y2gtYWN0aW9uOm1hbmlwdWxhdGlvbjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlO21pbi1oZWlnaHQ6MzhweDtmbGV4LXdyYXA6bm93cmFwfS50b29sLXVzZS1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGF9LnRvb2wtdXNlLWhlYWRlcjphY3RpdmV7YmFja2dyb3VuZDojYzU2NTNkMTJ9LnRvb2wtdXNlLWNhcmQubG9hZGluZyAudG9vbC11c2UtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2E5NmEyZjBmfS50b29sLXVzZS1jYXJkLnN1Y2Nlc3MgLnRvb2wtdXNlLWhlYWRlcjpob3ZlcntiYWNrZ3JvdW5kOiM0ZjdhNTgwZn0udG9vbC11c2UtY2FyZC5lcnJvciAudG9vbC11c2UtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTBmfS50b29sLXVzZS1pY29ue2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtd2VpZ2h0OjcwMDtmbGV4LXNocmluazowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOjIycHg7aGVpZ2h0OjIycHg7Ym9yZGVyLXJhZGl1czo2cHg7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtsZXR0ZXItc3BhY2luZzotLjAyZW19LnRvb2wtdXNlLWNhcmQubG9hZGluZyAudG9vbC11c2UtaWNvbntiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2NvbG9yOnZhcigtLXdhcm5pbmcpfS50b29sLXVzZS1jYXJkLmVycm9yIC50b29sLXVzZS1pY29ue2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXIpfS50b29sLXVzZS1zcGlubmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS13YXJuaW5nLW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnZhcigtLXdhcm5pbmcpO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLXNwaW4gLjhzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHRvb2wtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fS50b29sLXVzZS1uYW1le2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZsZXg6MCAxIGF1dG87bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2xldHRlci1zcGFjaW5nOi0uMDA1ZW19LnRvb2wtdXNlLWZpbGV7Zm9udC1zaXplOi43NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO21heC13aWR0aDozMjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7ZmxleDowIDEgYXV0bzttaW4td2lkdGg6MH0udG9vbC11c2Utc3VtbWFyeXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmbGV4OjAgMSBhdXRvO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tbGVmdDoycHh9LnRvb2wtdXNlLXRvZ2dsZXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLXNwcmluZyksY29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtvcGFjaXR5Oi42fS50b29sLXVzZS1jYXJkOmhvdmVyIC50b29sLXVzZS10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO29wYWNpdHk6MX0udG9vbC11c2UtY2FyZC5jb2xsYXBzZWQgLnRvb2wtdXNlLXRvZ2dsZXt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LnRvb2wtdXNlLWJvZHl7cGFkZGluZzoxMnB4IDE0cHg7YmFja2dyb3VuZDojZmZmZGY4YTY7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTttYXgtaGVpZ2h0OjYwMHB4O292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm1heC1oZWlnaHQgLjM1cyB2YXIoLS1lYXNlLW91dC1leHBvKSxwYWRkaW5nIC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyksb3BhY2l0eSAuMjVzIGVhc2UsdHJhbnNmb3JtIC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7b3BhY2l0eToxO3RyYW5zZm9ybS1vcmlnaW46dG9wfS50b29sLXVzZS1jYXJkLmNvbGxhcHNlZCAudG9vbC11c2UtYm9keXttYXgtaGVpZ2h0OjA7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVZKC45NSl9LnRvb2wtdXNlLWNvbnRlbnR7bWFyZ2luOjA7Zm9udC1zaXplOi43NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDttYXgtaGVpZ2h0OjQwMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztsaW5lLWhlaWdodDoxLjU1fS50b29sLXVzZS1yZXN1bHR7bWFyZ2luLXRvcDoxMHB4O3BhZGRpbmctdG9wOjEwcHg7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4xNCl9LnRvb2wtdXNlLXJlc3VsdC1jb250ZW50e21hcmdpbjowO2ZvbnQtc2l6ZTouNzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtaGVpZ2h0OjMyMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztsaW5lLWhlaWdodDoxLjU1O2JhY2tncm91bmQ6IzdkNWIzOTA5O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXhzKTtwYWRkaW5nOjhweCAxMHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveH0udG9vbC11c2UtcmVzdWx0LWVtcHR5e2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zdHlsZTppdGFsaWN9LnRvb2wtdXNlLW1ldGF7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO21hcmdpbi1ib3R0b206OHB4O3BhZGRpbmctYm90dG9tOjhweDtib3JkZXItYm90dG9tOjFweCBkYXNoZWQgcmdiYSgxMjUsOTEsNTcsLjE0KX0udG9vbC11c2UtbWV0YS1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwfS50b29sLXVzZS1jYXJkLmFzay11c2Vye2JvcmRlci1jb2xvcjojYzU2NTNkNGQ7YmFja2dyb3VuZDojYzU2NTNkMGF9LnRvb2wtdXNlLWNhcmQuYXNrLXVzZXIgLnRvb2wtdXNlLWhlYWRlcntiYWNrZ3JvdW5kOiNjNTY1M2QxNH0uYXNrLXVzZXItYm9keXtwYWRkaW5nOjEwcHggMTJweH0uYXNrLXVzZXItcXVlc3Rpb24tZ3JvdXB7bWFyZ2luLWJvdHRvbToxMHB4fS5hc2stdXNlci1xdWVzdGlvbi1ncm91cDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uYXNrLXVzZXItdGl0bGV7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bWFyZ2luLWJvdHRvbToxMHB4fS5hc2stdXNlci1vcHRpb25ze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweH0uYXNrLXVzZXItb3B0aW9ue2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo4cHggMTJweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dGV4dC1hbGlnbjpsZWZ0fS5hc2stdXNlci1vcHRpb246aG92ZXI6bm90KDpkaXNhYmxlZCl7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDojYzU2NTNkMGZ9LmFzay11c2VyLW9wdGlvbjpkaXNhYmxlZHtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZH0uYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVke2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2M1NjUzZDJlO2JveC1zaGFkb3c6MCAwIDAgMXB4ICNjNTY1M2Q1OSBpbnNldH0udG9vbC11c2UtY2FyZC5hc2stdXNlci5hc2stdXNlci1hbnN3ZXJlZHtib3JkZXItdG9wOjJweCBzb2xpZCB2YXIoLS1zdWNjZXNzLCAjNGNhZjUwKX0uYXNrLXVzZXItb3B0aW9uLmFzay11c2VyLW9wdGlvbi1jaG9zZW57YmFja2dyb3VuZDojYzU2NTNkMjk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LmFzay11c2VyLWluZGljYXRvcnt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmFzay11c2VyLW9wdGlvbnNbZGF0YS1tdWx0aS1zZWxlY3Q9dHJ1ZV0gLmFzay11c2VyLWluZGljYXRvcntib3JkZXItcmFkaXVzOjNweH0uYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVkIC5hc2stdXNlci1pbmRpY2F0b3J7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpfS5hc2stdXNlci1vcHRpb24uc2VsZWN0ZWQgLmFzay11c2VyLWluZGljYXRvcjphZnRlcntjb250ZW50OiIiO3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjUwJX0uYXNrLXVzZXItb3B0aW9uc1tkYXRhLW11bHRpLXNlbGVjdD10cnVlXSAuYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVkIC5hc2stdXNlci1pbmRpY2F0b3I6YWZ0ZXJ7d2lkdGg6NHB4O2hlaWdodDo4cHg7Ym9yZGVyOnNvbGlkIHdoaXRlO2JvcmRlci13aWR0aDowIDJweCAycHggMDtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDpub25lO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO21hcmdpbi1ib3R0b206MnB4fS5hc2stdXNlci1vcHRpb24tY29udGVudHtmbGV4OjE7bWluLXdpZHRoOjB9LmFzay11c2VyLW9wdGlvbi1sYWJlbHtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmFzay11c2VyLW9wdGlvbi1kZXNje2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO21hcmdpbi10b3A6MnB4O2xpbmUtaGVpZ2h0OjEuNH0uYXNrLXVzZXItYWN0aW9uc3ttYXJnaW4tdG9wOjEwcHg7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uYXNrLXVzZXItc3VibWl0e3BhZGRpbmc6NnB4IDE2cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1hY2NlbnQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmFzay11c2VyLXN1Ym1pdDpob3Zlcjpub3QoOmRpc2FibGVkKXtmaWx0ZXI6YnJpZ2h0bmVzcygxLjEpfS5hc2stdXNlci1zdWJtaXQ6ZGlzYWJsZWR7b3BhY2l0eTouNDtjdXJzb3I6bm90LWFsbG93ZWR9LmFzay11c2VyLXN1Ym1pdC5hc2stdXNlci1zdWJtaXR0ZWR7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItZGVmYXVsdCk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cG9pbnRlci1ldmVudHM6bm9uZX0uYXNrLXVzZXItYW5zd2VyZWQgLmFzay11c2VyLW9wdGlvbntjdXJzb3I6ZGVmYXVsdDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjZ9LmFzay11c2VyLWFuc3dlcmVkIC5hc2stdXNlci1vcHRpb24uYXNrLXVzZXItb3B0aW9uLWNob3NlbntvcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpO2JhY2tncm91bmQ6IzRmN2E1ODBmfS5hc2stdXNlci1hbnN3ZXJlZCAuYXNrLXVzZXItb3B0aW9uLmFzay11c2VyLW9wdGlvbi1jaG9zZW4gLmFzay11c2VyLWluZGljYXRvcntib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyk7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKX0uYXNrLXVzZXItb3B0aW9uLXJlYWRvbmx5e3BvaW50ZXItZXZlbnRzOm5vbmV9b3ZlcmZsb3cteTogYXV0bzsgLnRoaW5raW5nLWlubGluZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7Z2FwOjVweDttYXJnaW46MnB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjNweCA4cHg7Ym9yZGVyLXJhZGl1czo2cHg7YmFja2dyb3VuZDojOGE2Y2IyMGE7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjQ7Y29sb3I6IzhhNmNiMjhjO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YnJlYWstd29yZH0udGhpbmtpbmctaW5saW5lOmhvdmVye2JhY2tncm91bmQ6IzhhNmNiMjE0O2NvbG9yOiM4YTZjYjJjY30udGhpbmtpbmctaW5saW5lLmV4cGFuZGVke2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDtsaW5lLWhlaWdodDoxLjY7bWF4LWhlaWdodDozMDBweDtvdmVyZmxvdy15OmF1dG99LnRoaW5raW5nLWlubGluZS1pY29ue2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42MjVyZW19LnRoaW5raW5nLWlubGluZS1wcmV2aWV3e2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnRoaW5raW5nLWlubGluZS5leHBhbmRlZCAudGhpbmtpbmctaW5saW5lLXByZXZpZXd7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9LnRoaW5raW5nLWlubGluZS1hY3Rpb257ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjYyNXJlbTtjb2xvcjojOGE2Y2IyNjY7cGFkZGluZzowIDRweDtib3JkZXItcmFkaXVzOjNweDtiYWNrZ3JvdW5kOiM4YTZjYjIxNDttYXJnaW4tbGVmdDphdXRvfS50aGlua2luZy1pbmxpbmU6aG92ZXIgLnRoaW5raW5nLWlubGluZS1hY3Rpb257Y29sb3I6IzhhNmNiMmIzfS50aGlua2luZy1pbmxpbmUudGhpbmtpbmctcHR5e2JhY2tncm91bmQ6IzhhNmNiMjA4fS50aGlua2luZy1zdHJlYW1pbmd7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjVweDttYXJnaW46MnB4IDA7cGFkZGluZzozcHggOHB4O2JvcmRlci1yYWRpdXM6NnB4O2JhY2tncm91bmQ6IzhhNmNiMjBhO2N1cnNvcjpkZWZhdWx0O2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MS40O2NvbG9yOiM4YTZjYjI4Y30udGhpbmtpbmctc3RyZWFtaW5nLWlubmVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo1cHg7d2lkdGg6MTAwJX0udGhpbmtpbmctc3RyZWFtaW5nLWljb257Zm9udC1zaXplOi42MjVyZW07ZmxleC1zaHJpbms6MDttYXJnaW4tdG9wOjFweH0udGhpbmtpbmctc3RyZWFtaW5nLXRleHR7ZmxleDoxO21pbi13aWR0aDowO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzhhNmNiMmNjO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDttYXgtaGVpZ2h0OjQuNWVtO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6cmdiYSgxMzgsMTA4LDE3OCwuMykgdHJhbnNwYXJlbnR9LnRoaW5raW5nLXN0cmVhbWluZy10ZXh0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo0cHh9LnRoaW5raW5nLXN0cmVhbWluZy10ZXh0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM4YTZjYjI0ZDtib3JkZXItcmFkaXVzOjJweH0udG9vbC1ncm91cHttYXJnaW46NHB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWQ5LCNmZmY4ZWViMyk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDA4O292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgZWFzZX0udG9vbC1ncm91cDpob3Zlcntib3JkZXItY29sb3I6IzdkNWIzOTJlO2JveC1zaGFkb3c6MCAycHggOHB4ICM1OTNhMjAwZn0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1wZW5kaW5nXXtib3JkZXItY29sb3I6I2E5NmEyZjM4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmNGUyZDksI2ZmZjFkYWIzKX0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1lcnJvcl17Ym9yZGVyLWNvbG9yOiNiMjRmNDU0NztiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZjZjBlZWQ5LCNmY2VjZWFiMyl9LnRvb2wtZ3JvdXAtc3VtbWFyeXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7cGFkZGluZzo4cHggMTJweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2V9LnRvb2wtZ3JvdXAtc3VtbWFyeTpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QwYX0udG9vbC1ncm91cC1zdGF0dXN7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JvcmRlci1yYWRpdXM6NTAlO2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MTtmbGV4LXNocmluazowO2xldHRlci1zcGFjaW5nOjB9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9ZG9uZV0gLnRvb2wtZ3JvdXAtc3RhdHVze2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9ZXJyb3JdIC50b29sLWdyb3VwLXN0YXR1c3tiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1wZW5kaW5nXSAudG9vbC1ncm91cC1zdGF0dXN7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nLW11dGVkKTtjb2xvcjp2YXIoLS13YXJuaW5nKTthbmltYXRpb246dG9vbC1ncm91cC1wdWxzZSAxLjZzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgdG9vbC1ncm91cC1wdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjU1fX0udG9vbC1ncm91cC10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0udG9vbC1ncm91cC1jb3VudHtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtwYWRkaW5nOjJweCA4cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7YmFja2dyb3VuZDojN2Q1YjM5MTI7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS50b29sLWdyb3VwLWNoZXZyb257ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIHZhcigtLWVhc2Utb3V0LWV4cG8pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6LjZ9LnRvb2wtZ3JvdXA6aG92ZXIgLnRvb2wtZ3JvdXAtY2hldnJvbntvcGFjaXR5OjF9LnRvb2wtZ3JvdXBbZGF0YS1leHBhbmRlZD10cnVlXSAudG9vbC1ncm91cC1jaGV2cm9ue3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udG9vbC1ncm91cC1ib2R5e2Rpc3BsYXk6bm9uZTtwYWRkaW5nOjRweCA4cHggOHB4IDE4cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA2KTtib3JkZXItbGVmdDoycHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtiYWNrZ3JvdW5kOiNmZmZkZjg4Y30udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbHttYXJnaW46MH0udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbCsuaW5saW5lLXRvb2x7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4wNil9LnRvb2wtZ3JvdXBbZGF0YS1leHBhbmRlZD10cnVlXSAudG9vbC1ncm91cC1ib2R5e2Rpc3BsYXk6YmxvY2s7YW5pbWF0aW9uOnRvb2wtZ3JvdXAtcmV2ZWFsIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9QGtleWZyYW1lcyB0b29sLWdyb3VwLXJldmVhbHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uaW5saW5lLXRvb2x7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW46MXB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZX0udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbHttYXgtd2lkdGg6MTAwJX0uaW5saW5lLXRvb2wtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjVweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7bGluZS1oZWlnaHQ6MS40NTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2V9LmlubGluZS10b29sOmhvdmVyIC5pbmxpbmUtdG9vbC1yb3d7YmFja2dyb3VuZDojYzU2NTNkMGY7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uaW5saW5lLXRvb2wtc3RhdHVze2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7bGluZS1oZWlnaHQ6MX0uaW5saW5lLXRvb2xbZGF0YS1zdGF0dXM9cGVuZGluZ10gLmlubGluZS10b29sLXN0YXR1c3tjb2xvcjp2YXIoLS13YXJuaW5nKX0uaW5saW5lLXRvb2xbZGF0YS1zdGF0dXM9ZXJyb3JdIC5pbmxpbmUtdG9vbC1zdGF0dXMsLmlubGluZS10b29sLWVycm9yLWlubGluZSAuaW5saW5lLXRvb2wtc3RhdHVze2NvbG9yOnZhcigtLWRhbmdlcil9LmlubGluZS10b29sLWljb257ZmxleC1zaHJpbms6MDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtvcGFjaXR5Oi44NX0uaW5saW5lLXRvb2w6aG92ZXIgLmlubGluZS10b29sLWljb257Y29sb3I6dmFyKC0tYWNjZW50KTtvcGFjaXR5OjF9LmlubGluZS10b29sLXRpdGxle2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouNzVyZW19LmlubGluZS10b29sOmhvdmVyIC5pbmxpbmUtdG9vbC10aXRsZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5pbmxpbmUtdG9vbC1tZXRhe2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21heC13aWR0aDoyMjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uaW5saW5lLXRvb2wtZXhwYW5kZWR7ZGlzcGxheTpub25lO3BhZGRpbmc6MCAxMHB4IDhweH0uaW5saW5lLXRvb2wtb3BlbiAuaW5saW5lLXRvb2wtZXhwYW5kZWR7ZGlzcGxheTpibG9jazthbmltYXRpb246dG9vbC1ncm91cC1yZXZlYWwgLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5pbmxpbmUtdG9vbC1yZXN1bHR7YmFja2dyb3VuZDojN2Q1YjM5MGE7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDcpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXhzKTtwYWRkaW5nOjEwcHggMTJweDttYXJnaW4tdG9wOjZweDttYXgtaGVpZ2h0OjMyMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6cmdiYSgxMjUsOTEsNTcsLjIpIHRyYW5zcGFyZW50fS5pbmxpbmUtdG9vbC1yZXN1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjZweH0uaW5saW5lLXRvb2wtcmVzdWx0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM3ZDViMzkzMztib3JkZXItcmFkaXVzOjNweH0uaW5saW5lLXRvb2wtcmVzdWx0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzk1Mn0uaW5saW5lLXRvb2wtcmVzdWx0LXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjEuNTU7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7bWFyZ2luOjB9LmlubGluZS10b29sLWVycm9yLWlubGluZXtib3JkZXItbGVmdDoycHggc29saWQgdmFyKC0tZGFuZ2VyKTtwYWRkaW5nLWxlZnQ6MnB4O21hcmdpbi1sZWZ0Oi0ycHh9LmlubGluZS10b29sLWVycm9yLWlubGluZSAuaW5saW5lLXRvb2wtcm93e2NvbG9yOnZhcigtLWRhbmdlcil9LmlubGluZS10b29sLXJlc3VsdC5pbmxpbmUtdG9vbC1lcnJvcntjb2xvcjp2YXIoLS1kYW5nZXIpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNiMjRmNDUyZX0uaW5saW5lLXRvb2wtbG9hZGluZ3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXdhcm5pbmcpO2ZvbnQtc3R5bGU6aXRhbGljO3BhZGRpbmc6NnB4IDA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweH0uaW5saW5lLXRvb2wtbG9hZGluZzpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O2JvcmRlcjoxLjVweCBzb2xpZCB2YXIoLS13YXJuaW5nLW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnZhcigtLXdhcm5pbmcpO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLWNvbnRlbnQtc3BpbiAuN3MgbGluZWFyIGluZmluaXRlfS5pbmxpbmUtdG9vbC1lbXB0eXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljfS50b29sLWNvbnRlbnQtbG9hZGluZ3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljO3BhZGRpbmc6OHB4IDB9LnRvb2wtY29udGVudC1sb2FkaW5nOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEycHg7aGVpZ2h0OjEycHg7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS10ZXh0LW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLWNvbnRlbnQtc3BpbiAuNnMgbGluZWFyIGluZmluaXRlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4fUBrZXlmcmFtZXMgdG9vbC1jb250ZW50LXNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0udG9vbC1jb250ZW50LWVycm9ye2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tZXJyb3IpO3BhZGRpbmc6OHB4IDA7Y3Vyc29yOnBvaW50ZXJ9LnRvb2wtY29udGVudC1lcnJvcjpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5pbmxpbmUtdGVybWluYWx7bWFyZ2luOjRweCAwO3dpZHRoOjEwMCU7bWF4LXdpZHRoOnZhcigtLWNoYXQtY2FyZC1tYXgtd2lkdGgsIDcyMHB4KTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE1LDEyLDksLjYpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOiMxZjFiMTc7Ym94LXNoYWRvdzowIDFweCAjZmZmZmZmMGEgaW5zZXQsMCAycHggMTJweCAjMGYwYzA5MmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246Ym94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgZWFzZSxib3JkZXItY29sb3IgLjIycyBlYXNlfS5pbmxpbmUtdGVybWluYWw6aG92ZXJ7Ym94LXNoYWRvdzowIDFweCAjZmZmZmZmMGQgaW5zZXQsMCA0cHggMThweCAjMGYwYzA5M2Q7Ym9yZGVyLWNvbG9yOiNmZmZmZmYxYX0udGVybS1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjhweCAxNHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmZmZmMGEsI2ZmZmZmZjA0KSwjMDAwMDAwMmU7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDQpO2ZvbnQtc2l6ZTouNzVyZW07Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0udGVybS1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmYwZiwjZmZmZmZmMDYpLCMwMDAwMDAyZX0udGVybS1zdGF0dXMtZG90e3dpZHRoOjlweDtoZWlnaHQ6OXB4O2JvcmRlci1yYWRpdXM6NTAlO2ZsZXgtc2hyaW5rOjA7Ym94LXNoYWRvdzowIDAgMCAxcHggIzAwMDAwMDQwIGluc2V0fS50ZXJtLXN0YXR1cy1kb3QudGVybS1zdWNjZXNze2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAzNSUgMzAlLCNiNmYwYzQsIzZlZTA5YSwjM2FhNzY1KTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwIDZweCAjNmVlMDlhNTl9LnRlcm0tc3RhdHVzLWRvdC50ZXJtLWVycm9ye2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAzNSUgMzAlLCNmZmI1YjksI2YwNzE3OCwjYjUzYjQxKTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwIDZweCAjZjA3MTc4NTl9LnRlcm0tc3RhdHVzLWRvdC50ZXJtLXdhcm57YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDM1JSAzMCUsI2ZmZDA3YSwjZjBhNTAwLCNhZDc0MDApO2JveC1zaGFkb3c6MCAwIDAgMXB4ICMwMDAwMDA0MCBpbnNldCwwIDAgNnB4ICNmMGE1MDA1OX0udGVybS1zdGF0dXMtZG90LnRlcm0tcnVubmluZ3tiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMzUlIDMwJSwjZDFkNWRiLCM5Y2EzYWYsIzRiNTU2Myk7YW5pbWF0aW9uOnRlcm0tcHVsc2UgMXMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB0ZXJtLXB1bHNlezAlLHRve29wYWNpdHk6MTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwICM5Y2EzYWYwMH01MCV7b3BhY2l0eTouNTU7Ym94LXNoYWRvdzowIDAgMCAxcHggIzAwMDAwMDQwIGluc2V0LDAgMCA4cHggIzljYTNhZjU5fX0udGVybS1jbWQtcHJldmlld3tmbGV4OjE7bWluLXdpZHRoOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2NvbG9yOiNlOGRjYzhjNztvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0udGVybS1jbWQtcHJldmlldyAudGVybS1wcm9tcHR7Y29sb3I6IzZlZTA5YTtmb250LXdlaWdodDo2MDA7bWFyZ2luLXJpZ2h0OjZweDtmb250LXNpemU6Ljc1cmVtO29wYWNpdHk6Ljl9LnRlcm0tdG9nZ2xlLWljb257Zm9udC1zaXplOi42MjVyZW07Y29sb3I6I2ZmZmZmZjU5O3RyYW5zaXRpb246Y29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjB9LnRlcm0taGVhZGVyOmhvdmVyIC50ZXJtLXRvZ2dsZS1pY29ue2NvbG9yOiNmZmZmZmZhNn0udGVybS1ib2R5e3BhZGRpbmc6MTJweCAxNHB4IDE0cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCMwMDAwMDAyZSwjMDAwMCAyNHB4KSwjMWYxYjE3fS50ZXJtLWNvbW1hbmR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6I2Y0ZTlkNDtsaW5lLWhlaWdodDoxLjU1O21hcmdpbi1ib3R0b206NnB4O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9LnRlcm0tcHJvbXB0e2NvbG9yOiM2ZWUwOWE7Zm9udC13ZWlnaHQ6NjAwO21hcmdpbi1yaWdodDo2cHg7dGV4dC1zaGFkb3c6MCAwIDZweCByZ2JhKDExMCwyMjQsMTU0LC4yNSl9LnRlcm0tb3V0cHV0e21hcmdpbi10b3A6OHB4O3BhZGRpbmctdG9wOjhweDtib3JkZXItdG9wOjFweCBkYXNoZWQgcmdiYSgyNTUsMjU1LDI1NSwuMDYpO21heC1oZWlnaHQ6MzYwcHg7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvO3Njcm9sbGJhci13aWR0aDp0aGluO3Njcm9sbGJhci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgdHJhbnNwYXJlbnR9LnRlcm0tb3V0cHV0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo2cHh9LnRlcm0tb3V0cHV0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiNmZmZmZmYyNjtib3JkZXItcmFkaXVzOjNweH0udGVybS1vdXRwdXQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjQwfS50ZXJtLWxpbmV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6I2Q0YzJhMztsaW5lLWhlaWdodDoxLjU1O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9LnRlcm0tZXhpdHttYXJnaW4tdG9wOjEwcHg7cGFkZGluZy10b3A6OHB4O2JvcmRlci10b3A6MXB4IGRhc2hlZCByZ2JhKDI1NSwyNTUsMjU1LC4wNik7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjY4NzVyZW07bGluZS1oZWlnaHQ6MS41O2xldHRlci1zcGFjaW5nOi4wNGVtfS50ZXJtLWV4aXQtc3VjY2Vzc3tjb2xvcjojNmVlMDlhYmZ9LnRlcm0tZXhpdC1lcnJvcntjb2xvcjojZjA3MTc4Yzd9LmlubGluZS1kaWZme21hcmdpbjo0cHggMDt3aWR0aDoxMDAlO21heC13aWR0aDp2YXIoLS1jaGF0LWNhcmQtbWF4LXdpZHRoLCA3MjBweCk7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWUwLCNmZmY2ZWFiOCk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4yMnMgZWFzZSxib3gtc2hhZG93IC4yMnMgZWFzZX0uaW5saW5lLWRpZmY6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzODtib3gtc2hhZG93OjAgM3B4IDEycHggIzU5M2EyMDBmfS5kaWZmLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmc6OHB4IDE0cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtmb250LXNpemU6LjgxMjVyZW07Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0uZGlmZi1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGF9LmRpZmYtdG9nZ2xle2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLXNwcmluZyksY29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6YXV0bztvcGFjaXR5Oi42fS5pbmxpbmUtZGlmZjpob3ZlciAuZGlmZi10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO29wYWNpdHk6MX0uaW5saW5lLWRpZmYuY29sbGFwc2VkIC5kaWZmLXRvZ2dsZXt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LmlubGluZS1kaWZmLmNvbGxhcHNlZCAuZGlmZi1ib2R5e21heC1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47b3BhY2l0eTowO3RyYW5zaXRpb246bWF4LWhlaWdodCAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLG9wYWNpdHkgLjI1cyBlYXNlfS5kaWZmLWZpbGUtaWNvbntkaXNwbGF5Om5vbmV9LmRpZmYtZmlsZS1uYW1le2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjgxMjVyZW07bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0uZGlmZi1wYXRoe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7ZmxleDoxO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXNpemU6LjY4NzVyZW19LmRpZmYtc3RhdHVze2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjNweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2xldHRlci1zcGFjaW5nOi4wMWVtfS5kaWZmLXN0YXR1cy5kaWZmLXN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKX0uZGlmZi1zdGF0dXMuZGlmZi1lcnJvcntiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uZGlmZi1zdGF0dXMuZGlmZi1wZW5kaW5ne2JhY2tncm91bmQ6dmFyKC0td2FybmluZy1tdXRlZCk7Y29sb3I6dmFyKC0td2FybmluZyl9LmRpZmYtYm9keXtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtiYWNrZ3JvdW5kOiNmZmZkZjhhNn0uZGlmZi1jb2x1bW5ze2Rpc3BsYXk6ZmxleDtnYXA6MXB4O2JhY2tncm91bmQ6IzdkNWIzOTE0O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5kaWZmLWNvbHtmbGV4OjEgMSAwO21pbi13aWR0aDowO21heC13aWR0aDoxMDAlO2JhY2tncm91bmQ6I2ZmZmRmOGQ5O292ZXJmbG93OmhpZGRlbn0uZGlmZi1jb2wtaGFsZntmbGV4OjF9LmRpZmYtY29sLWZ1bGx7ZmxleDpub25lO3dpZHRoOjEwMCV9LmRpZmYtY29sLWxhYmVse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NzAwO3BhZGRpbmc6NHB4IDEycHg7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2JhY2tncm91bmQ6IzdkNWIzOTBkO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LmRpZmYtbGluZXtwYWRkaW5nOjNweCAxMnB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjU1O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94fS5kaWZmLWFkZHtiYWNrZ3JvdW5kOiM0ZjdhNTgxNDtjb2xvcjojMmM1NTM1O2JvcmRlci1sZWZ0OjJweCBzb2xpZCByZ2JhKDc5LDEyMiw4OCwuNSl9LmRpZmYtcmVtb3Zle2JhY2tncm91bmQ6I2IyNGY0NTBmO2NvbG9yOiM3YzJhMjM7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIHJnYmEoMTc4LDc5LDY5LC40NSl9Lm1hcmtkb3duLWNvbnRlbnR7Y29sb3I6aW5oZXJpdDt3aGl0ZS1zcGFjZTpub3JtYWw7b3ZlcmZsb3cteDpoaWRkZW47bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtYmxvY2sgcHJle292ZXJmbG93LXg6aGlkZGVuO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5tYXJrZG93bi1jb250ZW50IHB7bWFyZ2luOjAgMCA4cHg7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgcDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ubWFya2Rvd24tY29udGVudCBzdHJvbmd7Zm9udC13ZWlnaHQ6NjAwfS5tYXJrZG93bi1jb250ZW50IGVte2ZvbnQtc3R5bGU6aXRhbGljfS5tYXJrZG93bi1jb250ZW50IHVsLC5tYXJrZG93bi1jb250ZW50IG9se21hcmdpbjo4cHggMDtwYWRkaW5nLWxlZnQ6MjBweH0ubWFya2Rvd24tY29udGVudCBsaXttYXJnaW46NHB4IDA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgaDEsLm1hcmtkb3duLWNvbnRlbnQgaDIsLm1hcmtkb3duLWNvbnRlbnQgaDN7bWFyZ2luOjE2cHggMCA4cHg7Zm9udC13ZWlnaHQ6NjAwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkfS5tYXJrZG93bi1jb250ZW50IGgxe2ZvbnQtc2l6ZToxLjI1cmVtfS5tYXJrZG93bi1jb250ZW50IGgye2ZvbnQtc2l6ZToxLjFyZW19Lm1hcmtkb3duLWNvbnRlbnQgaDN7Zm9udC1zaXplOjFyZW19Lm1hcmtkb3duLWNvbnRlbnQgYmxvY2txdW90ZXttYXJnaW46OHB4IDA7cGFkZGluZzo4cHggMTJweDtib3JkZXItbGVmdDozcHggc29saWQgdmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNjNTY1M2QwZjtib3JkZXItcmFkaXVzOjAgdmFyKC0tcmFkaXVzLXNtKSB2YXIoLS1yYWRpdXMtc20pIDA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgYXtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstYWxsfS5tYXJrZG93bi1jb250ZW50IGltZ3ttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6YXV0b30ubWFya2Rvd24tY29udGVudCBjb2RlOm5vdCguY29kZS1ibG9jayk6bm90KC5jb2RlLWlubGluZSl7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07YmFja2dyb3VuZDojOTY3NjU1MWY7cGFkZGluZzoycHggNXB4O2JvcmRlci1yYWRpdXM6NHB4O292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGx9Lm1hcmtkb3duLWNvbnRlbnQgY29kZS5jb2RlLWlubGluZXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtiYWNrZ3JvdW5kOiM5Njc2NTUxZjtwYWRkaW5nOjJweCA1cHg7Ym9yZGVyLXJhZGl1czo0cHg7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUtd3JhcHttYXJnaW46MTJweCAwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6YXV0bztib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofS5tYXJrZG93bi1jb250ZW50IC5tZC10YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7d2lkdGg6MTAwJTt0YWJsZS1sYXlvdXQ6Zml4ZWQ7Zm9udC1zaXplOi44MTI1cmVtO3doaXRlLXNwYWNlOm5vcm1hbH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUgdGgsLm1hcmtkb3duLWNvbnRlbnQgLm1kLXRhYmxlIHRke2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nOjZweCAxMHB4O3RleHQtYWxpZ246bGVmdDt2ZXJ0aWNhbC1hbGlnbjp0b3A7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgLm1kLXRhYmxlIHRoe2JhY2tncm91bmQ6Izk2NzY1NTFhO2ZvbnQtd2VpZ2h0OjYwMH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKDJuKXtiYWNrZ3JvdW5kOiM5Njc2NTUwYX0ubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9ja3ttYXJnaW46MTJweCAwO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDojMWYxYjE3O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjIsOTEsNjQsLjM1KTtib3gtc2hhZG93OjAgMnB4IDhweCAjMDAwMDAwMjZ9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtYmxvY2staGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzo2cHggMTJweDtiYWNrZ3JvdW5kOiM3YTViNDAzMztib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDEyMiw5MSw2NCwuMik7Z2FwOjhweH0ubWFya2Rvd24tY29udGVudCAuY29kZS1sYW5ne2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43cmVtO2NvbG9yOiM4YzczNWY7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ubWFya2Rvd24tY29udGVudCAuY29kZS1jb3B5e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43cmVtO3BhZGRpbmc6NHB4IDEwcHg7Ym9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7YmFja2dyb3VuZDojZmZmZmZmMWE7Y29sb3I6I2Q5YzRiMDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4LXNocmluazowfS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWNvcHk6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmMmU7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6I2ZmZmZmZjQwfS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWNvcHkuY29waWVke2NvbG9yOiM3ZmEzNmY7Ym9yZGVyLWNvbG9yOiM3ZmEzNmY4MDtiYWNrZ3JvdW5kOiM3ZmEzNmYyNn0ubWFya2Rvd24tY29udGVudCBwcmV7bWFyZ2luOjA7cGFkZGluZzoxMnB4O292ZXJmbG93LXg6aGlkZGVuO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5tYXJrZG93bi1jb250ZW50IHByZSBjb2Rle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojZjVlYWRjO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cGFkZGluZzowO21heC13aWR0aDoxMDAlO2Rpc3BsYXk6YmxvY2t9LmlucHV0LXBhbmVse3BhZGRpbmc6NnB4IDEwcHg7cGFkZGluZy1ib3R0b206Y2FsYyg2cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKTtmbGV4LXNocmluazowO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjY7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWluO3RvdWNoLWFjdGlvbjpwYW4teTtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdmlzaWJpbGl0eSAwc30uaW5wdXQtY29tcG9zZXJ7YmFja2dyb3VuZDojZmZmZmZmZTA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czoyMnB4O3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWlufS5pbnB1dC1jb21wb3Nlcjpmb2N1cy13aXRoaW57Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYWNjZW50LW11dGVkKSwwIDAgMTZweCAjYzU2NTNkMTQ7YmFja2dyb3VuZDojZmZmZmZmZmF9LmNvbXBvc2VyLXN0YXR1cy1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZsZXgtd3JhcDp3cmFwO3BhZGRpbmc6MCAxMHB4O21pbi1oZWlnaHQ6MDt0cmFuc2l0aW9uOnBhZGRpbmcgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY29tcG9zZXItc3RhdHVzLXJvdz4qe2ZsZXgtc2hyaW5rOjB9LmNvbXBvc2VyLXN0YXR1cy1yb3c6aGFzKD4qOm5vdCguaGlkZGVuKSl7cGFkZGluZy10b3A6NnB4O3BhZGRpbmctYm90dG9tOjB9QHN1cHBvcnRzIG5vdCBzZWxlY3Rvcig6aGFzKCopKXsuY29tcG9zZXItc3RhdHVzLXJvdzpub3QoOmVtcHR5KXtwYWRkaW5nLXRvcDo0cHh9fS5jb21wb3Nlci1tYWluLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7cGFkZGluZzo0cHggNnB4O21pbi1oZWlnaHQ6NDRweH0uY29tcG9zZXItYWN0aW9ucy1sZWZ0LC5jb21wb3Nlci1hY3Rpb25zLXJpZ2h0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjJweDtmbGV4LXNocmluazowfS5jb21wb3Nlci1pbnB1dC13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0uY29tcG9zZXItdGV4dC1waWxse3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MnB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7Ym94LXNpemluZzpib3JkZXItYm94O3VzZXItc2VsZWN0Om5vbmU7bWF4LXdpZHRoOjExMHB4O2xldHRlci1zcGFjaW5nOi4wMWVtfS5jb21wb3Nlci10ZXh0LXBpbGw6aG92ZXIsLmNvbXBvc2VyLXRleHQtcGlsbDpmb2N1cy13aXRoaW57Y29sb3I6dmFyKC0tYWNjZW50KX0uY29tcG9zZXItdGV4dC1sYWJlbHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtd2lkdGg6MTAwJX0uY29tcG9zZXItdGV4dC1oaWRkZW4tc2VsZWN0e3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTttYXJnaW46MDtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp0cmFuc3BhcmVudDtmb250OmluaGVyaXQ7b3BhY2l0eTowO2N1cnNvcjpwb2ludGVyO2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0uY29tcG9zZXItdGV4dC1oaWRkZW4tc2VsZWN0OmZvY3Vze291dGxpbmU6bm9uZX0uY29tcG9zZXItdGV4dC1zZXB7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSwgI2I1YTg5YSk7Zm9udC1zaXplOi43cmVtO2xpbmUtaGVpZ2h0OjE7dXNlci1zZWxlY3Q6bm9uZTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjY1fS5wZXJtaXNzaW9uLWFjdGlvbnN7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDthbmltYXRpb246cGVybWlzc2lvbi1mYWRlLWluIC4ycyBlYXNlLW91dH0ucGVybWlzc2lvbi1hY3Rpb25zLmhpZGRlbntkaXNwbGF5Om5vbmV9LnBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbHtmb250LXNpemU6LjdyZW07Y29sb3I6I2QxOGIwMDttYXgtd2lkdGg6MTgwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5idG4tcGVybWlzc2lvbntmb250LXNpemU6LjY1cmVtO3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjRweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2xpbmUtaGVpZ2h0OjEuNDtmb250LXdlaWdodDo1MDA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXN9LmJ0bi1wZXJtaXNzaW9uOmRpc2FibGVke29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idG4tcGVybWlzc2lvbi1hcHByb3Zle2JhY2tncm91bmQ6I2YwYTUwMDI2O2NvbG9yOiNkMThiMDA7Ym9yZGVyLWNvbG9yOiNmMGE1MDA0ZH0uYnRuLXBlcm1pc3Npb24tYXBwcm92ZTpob3Zlcjpub3QoOmRpc2FibGVkKXtiYWNrZ3JvdW5kOiNmMGE1MDA0MH0uYnRuLXBlcm1pc3Npb24tZGVueXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5idG4tcGVybWlzc2lvbi1kZW55OmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2JhY2tncm91bmQ6I2RjMzIzMjE0O2NvbG9yOnZhcigtLWRhbmdlcik7Ym9yZGVyLWNvbG9yOiNkYzMyMzI0ZH1Aa2V5ZnJhbWVzIHBlcm1pc3Npb24tZmFkZS1pbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX19LmF1dG8tYXBwcm92ZS1pbmRpY2F0b3IuYWN0aXZle2NvbG9yOiMyMmM1NWU7Ym9yZGVyLWNvbG9yOiMyMmM1NWU4MDtiYWNrZ3JvdW5kOiMyMmM1NWUxZn0uYXV0by1hcHByb3ZlLWluZGljYXRvci5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojMjJjNTVlMzM7Ym9yZGVyLWNvbG9yOiMyMmM1NWV9LmFwcHJvdmFsLXN0YXRze2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfS5hcHByb3ZhbC1zdGF0cy5oaWRkZW57ZGlzcGxheTpub25lfS5hcHByb3ZhbC1zdGF0cy1kaXZpZGVye3dpZHRoOjA7aGVpZ2h0OjE2cHg7bWFyZ2luOjAgMXB4fS5hcHByb3ZhbC1zdGF0cy1iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6M3B4O21pbi1oZWlnaHQ6MjJweDtwYWRkaW5nOjFweCA4cHg7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6IzIyYzU1ZTFhO2NvbG9yOiMyMmM1NWU7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NjAwO2N1cnNvcjpkZWZhdWx0O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzO2xpbmUtaGVpZ2h0OjE7Ym94LXNpemluZzpib3JkZXItYm94fS5hcHByb3ZhbC1zdGF0cy1iYWRnZTpob3ZlcntiYWNrZ3JvdW5kOiMyMmM1NWUyZX0uYXBwcm92YWwtc3RhdHMtaWNvbntzdHJva2U6IzIyYzU1ZTtmbGV4LXNocmluazowfS5hcHByb3ZhbC1zdGF0cy10b3RhbHtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9QGtleWZyYW1lcyBhcHByb3ZhbC1wdWxzZXswJXt0cmFuc2Zvcm06c2NhbGUoMSl9NTAle3RyYW5zZm9ybTpzY2FsZSgxLjE1KX10b3t0cmFuc2Zvcm06c2NhbGUoMSl9fS5hcHByb3ZhbC1zdGF0cy1wdWxzZXthbmltYXRpb246YXBwcm92YWwtcHVsc2UgLjNzIGVhc2Utb3V0fS5hcHByb3ZhbC1zdGF0cy1wb3B1cHtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOmNhbGMoMTAwJSArIDZweCk7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkLCAjMWUxZTJlKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czo4cHg7cGFkZGluZzo4cHggMTBweDttaW4td2lkdGg6MTQwcHg7Ym94LXNoYWRvdzowIDRweCAxNnB4ICMwMDAwMDA0MDt6LWluZGV4OjEwMDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweH0uYXBwcm92YWwtc3RhdHM6aG92ZXIgLmFwcHJvdmFsLXN0YXRzLXBvcHVwe2Rpc3BsYXk6ZmxleH0uYXBwcm92YWwtc3RhdHMtcG9wdXAtdGl0bGV7Zm9udC1zaXplOi42NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo1MDA7bWFyZ2luLWJvdHRvbToycHg7d2hpdGUtc3BhY2U6bm93cmFwfS5hcHByb3ZhbC1zdGF0cy1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSwgI2NjYyk7d2hpdGUtc3BhY2U6bm93cmFwfS5hcHByb3ZhbC1zdGF0cy1yb3ctaWNvbnt3aWR0aDoxNnB4O3RleHQtYWxpZ246Y2VudGVyO2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi43MnJlbX0uYXBwcm92YWwtc3RhdHMtcm93LWxhYmVse2ZsZXg6MX0uYXBwcm92YWwtc3RhdHMtcm93LWNvdW50e2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnksICNlZWUpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtczttaW4td2lkdGg6MjBweDt0ZXh0LWFsaWduOnJpZ2h0fS5hcHByb3ZhbC1zdGF0cy1yb3ctdG90YWx7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nLXRvcDo0cHg7bWFyZ2luLXRvcDoycHg7Y29sb3I6IzIyYzU1ZX0uYXBwcm92YWwtc3RhdHMtcm93LXRvdGFsIC5hcHByb3ZhbC1zdGF0cy1yb3ctY291bnR7Y29sb3I6IzIyYzU1ZX0ucXVldWUtYmFyLWhvc3R7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MTRweDtib3R0b206MTBweDttYXgtd2lkdGg6Y2FsYygxMDAlIC0gMjhweCk7ei1pbmRleDoxNDtwb2ludGVyLWV2ZW50czpub25lO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7dHJhbnNpdGlvbjpib3R0b20gLjIycyB2YXIoLS1lYXNlLW91dC1leHBvLCBjdWJpYy1iZXppZXIoLjE2LCAxLCAuMywgMSkpfS5xdWV1ZS1iYXItaG9zdFtoaWRkZW5de2Rpc3BsYXk6bm9uZX0uY2hhdC11bnJlYWQtYnViYmxlLnZpc2libGV+LnF1ZXVlLWJhci1ob3N0e2JvdHRvbTo1MnB4fS5xdWV1ZS1iYXJ7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDo0cHg7bWF4LXdpZHRoOm1pbigzNjBweCxjYWxjKDEwMHZ3IC0gMjRweCkpO2FuaW1hdGlvbjpxdWV1ZUJhckVudGVyIC4yMnMgZWFzZS1vdXQgYm90aH1Aa2V5ZnJhbWVzIHF1ZXVlQmFyRW50ZXJ7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDRweCkgc2NhbGUoLjk2KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fS5xdWV1ZS1iYXItbGlzdHtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1lbmQ7Z2FwOjNweDt3aWR0aDoxMDAlfS5xdWV1ZS1iYXItaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtnYXA6MDtoZWlnaHQ6NXB4O3dpZHRoOjMycHg7cGFkZGluZzowO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkgMCUsI2E4NTIyZiAxMDAlKTtib3gtc2hhZG93OjAgMXB4IDJweCAjYzU2NTNkNDA7Y29sb3I6I2ZmZjtjdXJzb3I6cG9pbnRlcjtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjp3aWR0aCAuMnMgY3ViaWMtYmV6aWVyKC4yLC43LC4yLDEpLGhlaWdodCAuMnMgY3ViaWMtYmV6aWVyKC4yLC43LC4yLDEpLHBhZGRpbmcgLjJzIGN1YmljLWJlemllciguMiwuNywuMiwxKSxnYXAgLjJzIGN1YmljLWJlemllciguMiwuNywuMiwxKSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIC4xNHMgZWFzZS1vdXQ7d2lsbC1jaGFuZ2U6dHJhbnNmb3JtO3RvdWNoLWFjdGlvbjpub25lfS5xdWV1ZS1iYXItaXRlbTpob3Zlcntib3gtc2hhZG93OjAgMnB4IDZweCAjYzU2NTNkNmJ9LnF1ZXVlLWJhci1pdGVtLmV4cGFuZGVkLC5xdWV1ZS1iYXItaXRlbS5kcmFnZ2luZ3t3aWR0aDphdXRvO21heC13aWR0aDoxMDAlO2hlaWdodDoyNHB4O3BhZGRpbmc6MCA0cHggMCA1cHg7Z2FwOjVweDtib3gtc2hhZG93OjAgMnB4IDZweCAjYzU2NTNkNTc7Y3Vyc29yOmdyYWJ9LnF1ZXVlLWJhci1pdGVtLmRyYWdnaW5ne3otaW5kZXg6NTtib3gtc2hhZG93OjAgNnB4IDE2cHggI2M1NjUzZDczLDAgMCAwIDEuNXB4ICNmZmY2O3RyYW5zaXRpb246Ym94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2N1cnNvcjpncmFiYmluZ30ucXVldWUtYmFyLWl0ZW0uZXhwYW5kZWQ6YWN0aXZle2N1cnNvcjpncmFiYmluZ30ucXVldWUtYmFyLWl0ZW0tc2luZ2xlLC5xdWV1ZS1iYXItaXRlbS1zaW5nbGUuZXhwYW5kZWQsLnF1ZXVlLWJhci1pdGVtLXNpbmdsZS5leHBhbmRlZDphY3RpdmV7Y3Vyc29yOnBvaW50ZXJ9LnF1ZXVlLWJhci1pdGVtLXNsaWRpbmd7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE2cyBjdWJpYy1iZXppZXIoLjIsLjcsLjIsMSl9LnF1ZXVlLWJhci1pdGVtLWluZGV4e2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojZmZmZmZmZjI7YmFja2dyb3VuZDojZmZmZmZmMzg7cGFkZGluZzowIDVweDtoZWlnaHQ6MTVweDttaW4td2lkdGg6MTVweDtib3JkZXItcmFkaXVzOjk5OXB4O2xpbmUtaGVpZ2h0OjE1cHg7dGV4dC1hbGlnbjpjZW50ZXI7bGV0dGVyLXNwYWNpbmc6LjAyZW07b3BhY2l0eTowO3RyYW5zZm9ybTpzY2FsZSguNCk7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgZWFzZSx0cmFuc2Zvcm0gLjE4cyBjdWJpYy1iZXppZXIoLjIsLjcsLjIsMSk7cG9pbnRlci1ldmVudHM6bm9uZX0ucXVldWUtYmFyLWl0ZW0uZXhwYW5kZWQgLnF1ZXVlLWJhci1pdGVtLWluZGV4LC5xdWV1ZS1iYXItaXRlbS5kcmFnZ2luZyAucXVldWUtYmFyLWl0ZW0taW5kZXh7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKX0ucXVldWUtYmFyLWl0ZW0tdGV4dHtmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjojZmZmO2xpbmUtaGVpZ2h0OjE7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2xldHRlci1zcGFjaW5nOi4wMmVtO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjEycyBlYXNlIDUwbXM7cG9pbnRlci1ldmVudHM6bm9uZX0ucXVldWUtYmFyLWl0ZW0uZXhwYW5kZWQgLnF1ZXVlLWJhci1pdGVtLXRleHQsLnF1ZXVlLWJhci1pdGVtLmRyYWdnaW5nIC5xdWV1ZS1iYXItaXRlbS10ZXh0e29wYWNpdHk6MX0ucXVldWUtYmFyLWl0ZW0tZGVsZXRle2ZsZXgtc2hyaW5rOjA7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOiNmZmZmZmYyOTtjb2xvcjojZmZmO2N1cnNvcjpwb2ludGVyO2JvcmRlci1yYWRpdXM6OTk5cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjA7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4xMnMgZWFzZSA3MG1zLGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0ucXVldWUtYmFyLWl0ZW0uZXhwYW5kZWQgLnF1ZXVlLWJhci1pdGVtLWRlbGV0ZSwucXVldWUtYmFyLWl0ZW0uZHJhZ2dpbmcgLnF1ZXVlLWJhci1pdGVtLWRlbGV0ZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30ucXVldWUtYmFyLWl0ZW0tZGVsZXRlOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjU3fS5xdWV1ZS1iYXItaXRlbS1kZWxldGUgc3Zne2ZsZXgtc2hyaW5rOjB9LnF1ZXVlLWJhci1pdGVtLXByb21vdGV7ZmxleC1zaHJpbms6MDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6M3B4O2hlaWdodDoxOHB4O3BhZGRpbmc6MCA3cHggMCA2cHg7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo5OTlweDtjdXJzb3I6cG9pbnRlcjtjb2xvcjojZmZmO2JhY2tncm91bmQ6I2ZmZmZmZjM4O2ZvbnQtc2l6ZTouNjVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMmVtO2xpbmUtaGVpZ2h0OjE7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2ZmZmZmZjM4O29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMTJzIGVhc2UgNjBtcyxiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLHRyYW5zZm9ybSAuMTJzIGVhc2V9LnF1ZXVlLWJhci1pdGVtLmV4cGFuZGVkIC5xdWV1ZS1iYXItaXRlbS1wcm9tb3RlLC5xdWV1ZS1iYXItaXRlbS5kcmFnZ2luZyAucXVldWUtYmFyLWl0ZW0tcHJvbW90ZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30ucXVldWUtYmFyLWl0ZW0tcHJvbW90ZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmY1Yztib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCAjZmZmZmZmNzN9LnF1ZXVlLWJhci1pdGVtLXByb21vdGU6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS5xdWV1ZS1iYXItaXRlbS1wcm9tb3RlOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgI2ZmZjtvdXRsaW5lLW9mZnNldDoxcHh9LnF1ZXVlLWJhci1pdGVtLXByb21vdGUgc3Zne2ZsZXgtc2hyaW5rOjB9LnF1ZXVlLWJhci1pdGVtLXByb21vdGUtbGFiZWx7ZGlzcGxheTppbmxpbmV9LnF1ZXVlLWJhci5xdWV1ZS1iYXItY2FwYWNpdHkgLnF1ZXVlLWJhci1pdGVte2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjYTg1MjJmLCM4ZTQ0MjYpfUBtZWRpYShtYXgtd2lkdGg6NTYwcHgpey5xdWV1ZS1iYXItaG9zdHtyaWdodDo4cHg7Ym90dG9tOjhweH0ucXVldWUtYmFye21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMjBweCl9LnF1ZXVlLWJhci1pdGVte3dpZHRoOjQwcHg7aGVpZ2h0OjZweH0ucXVldWUtYmFyLWl0ZW0tcHJvbW90ZS1sYWJlbHtkaXNwbGF5Om5vbmV9LnF1ZXVlLWJhci1pdGVtLXByb21vdGV7cGFkZGluZzowIDZweH19LmlucHV0LWhpbnR7Zm9udC1zaXplOi41cmVtO2xpbmUtaGVpZ2h0OjEuMjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXA7dXNlci1zZWxlY3Q6bm9uZTtvcGFjaXR5Oi43O21heC13aWR0aDozOGNoO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5jb21wb3Nlci10b3Atcm93e3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDttaW4td2lkdGg6MH0uY29tcG9zZXItdG9wLXJvdzpoYXMoPi50b2RvLXByb2dyZXNzOm5vdCguaGlkZGVuKSksLmNvbXBvc2VyLXRvcC1yb3c6aGFzKD4uc3RydWN0dXJlZC1zdGF0dXMtYmFyKXttYXJnaW4tYm90dG9tOjZweH0udG9kby1wcm9ncmVzc3ttYXJnaW4tYm90dG9tOjZweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS50b2RvLXByb2dyZXNzLmhpZGRlbntkaXNwbGF5Om5vbmV9LmNvbXBvc2VyLXRvcC1yb3c+LnRvZG8tcHJvZ3Jlc3N7ZmxleDoxO21pbi13aWR0aDowO21hcmdpbi1ib3R0b206MH0udG9kby1wcm9ncmVzcy1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjRweCA4cHg7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTtnYXA6OHB4O2JvcmRlci1yYWRpdXM6MTBweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9kby1wcm9ncmVzcy1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMTR9LnRvZG8tcHJvZ3Jlc3MtbGVmdHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7bWluLXdpZHRoOjA7ZmxleDoxfS50b2RvLXByb2dyZXNzLXJpbmd7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O21pbi13aWR0aDoxNnB4O2ZsZXgtc2hyaW5rOjB9LnRvZG8tcHJvZ3Jlc3MtcmluZyBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LnRvZG8tcmluZy10cmFja3tzdHJva2U6I2M1NjUzZDJlfS50b2RvLXJpbmctZmlsbHtzdHJva2U6dmFyKC0tYWNjZW50KTtzdHJva2UtZGFzaGFycmF5Ojk3LjM5O3N0cm9rZS1kYXNob2Zmc2V0OmNhbGMoOTcuMzkgKiAoMSAtIHZhcigtLXByb2dyZXNzLCAwKSkpO3RyYW5zaXRpb246c3Ryb2tlLWRhc2hvZmZzZXQgLjM1cyBlYXNlfS50b2RvLXByb2dyZXNzLXJpbmc6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0cHg7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7b3BhY2l0eTouNjthbmltYXRpb246cmluZ1B1bHNlIDEuNHMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyByaW5nUHVsc2V7MCUsdG97b3BhY2l0eTouMzU7dHJhbnNmb3JtOnNjYWxlKC44NSl9NTAle29wYWNpdHk6Ljk1O3RyYW5zZm9ybTpzY2FsZSgxLjA1KX19LnRvZG8tcHJvZ3Jlc3MtY291bnRlcntmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LnRvZG8tcHJvZ3Jlc3MtdGFza3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnRvZG8tcHJvZ3Jlc3MtY2hldnJvbntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmbGV4LXNocmluazowO3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyBlYXNlfS50b2RvLXByb2dyZXNzLmV4cGFuZGVkIC50b2RvLXByb2dyZXNzLWNoZXZyb257dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS50b2RvLXByb2dyZXNzLWJvZHl7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOmNhbGMoMTAwJSArIDZweCk7YmFja2dyb3VuZDojZmZmYmY2ZmE7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6OHB4IDEwcHg7Ym94LXNoYWRvdzowIDhweCAyNHB4ICMwMDAwMDAxNCwwIDJweCA2cHggIzAwMDAwMDBhO2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO21heC1oZWlnaHQ6MzIwcHg7b3ZlcmZsb3cteTphdXRvO3otaW5kZXg6MzA7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDZweCk7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2V9LnRvZG8tcHJvZ3Jlc3MtYm9keS5oaWRkZW57ZGlzcGxheTpub25lfS50b2RvLXByb2dyZXNzLWJvZHkuZXhwYW5kZWR7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO3BvaW50ZXItZXZlbnRzOmF1dG99LnRvZG8tcHJvZ3Jlc3MtbGlzdHtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjFweH0udG9kby1wcm9ncmVzcy1pdGVte2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo2cHggOHB4O2JvcmRlci1yYWRpdXM6OHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGluZS1oZWlnaHQ6MS4zNTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9kby1wcm9ncmVzcy1pdGVtKy50b2RvLXByb2dyZXNzLWl0ZW17Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czowfS50b2RvLXByb2dyZXNzLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo4cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6OHB4fS50b2RvLXByb2dyZXNzLWl0ZW06bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjhweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo4cHh9LnRvZG8tcHJvZ3Jlc3MtaXRlbS5hY3RpdmV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo1MDA7YmFja2dyb3VuZDojYzU2NTNkMTJ9LnRvZG8tcHJvZ3Jlc3MtaXRlbS5kb25le2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtZGVjb3JhdGlvbjpsaW5lLXRocm91Z2g7dGV4dC1kZWNvcmF0aW9uLWNvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS50b2RvLXByb2dyZXNzLWl0ZW0+c3BhbjpsYXN0LWNoaWxke2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnRvZG8taXRlbS1pY29ue3dpZHRoOjE2cHg7bWluLXdpZHRoOjE2cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOi43NXJlbTtmbGV4LXNocmluazowfS50b2RvLWl0ZW0taWNvbi5wZW5kaW5ne2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS50b2RvLWl0ZW0taWNvbi5hY3RpdmV7Y29sb3I6dmFyKC0tYWNjZW50KX0udG9kby1pdGVtLWljb24uZG9uZXtjb2xvcjojNGE3YTRmfS5mb2xkZXItcGlja2VyLWNvbnRhaW5lcnttYXJnaW4tYm90dG9tOjhweH0uZm9sZGVyLXBpY2tlci1xdWljay1idG57ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6NHB4IDhweDtiYWNrZ3JvdW5kOiNmZmY5O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1waWNrZXItcXVpY2stYnRuOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZmU2O2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLWFjY2VudCl9LmZvbGRlci1icmVhZGNydW1ie2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleC13cmFwOndyYXA7Z2FwOjJweDtwYWRkaW5nOjRweCA4cHg7YmFja2dyb3VuZDojZmZmNjtib3JkZXItcmFkaXVzOjZweDtmb250LXNpemU6LjY4NzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTttYXJnaW4tYm90dG9tOjRweH0uZm9sZGVyLXBpY2tlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggOHB4O2JhY2tncm91bmQ6I2ZmZmZmZjgwO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pfS5mb2xkZXItcGlja2VyLWljb257Zm9udC1zaXplOjFyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleC1zaHJpbms6MH0uZm9sZGVyLXBpY2tlci1pbnB1dHtmbGV4OjE7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO291dGxpbmU6bm9uZTtwYWRkaW5nOjRweH0uZm9sZGVyLXBpY2tlci1pbnB1dDpmb2N1c3tiYWNrZ3JvdW5kOiNmZmZjO2JvcmRlci1yYWRpdXM6NHB4fS5mb2xkZXItcGlja2VyLWRyb3Bkb3due3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO2xlZnQ6MDtyaWdodDowO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctZWxldmF0ZWQpO3otaW5kZXg6NTA7bWF4LWhlaWdodDoyNDBweDtvdmVyZmxvdy15OmF1dG87bWFyZ2luLXRvcDo0cHh9LmZvbGRlci1waWNrZXItaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7cGFkZGluZzo4cHggMTBweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6LjgxMjVyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1waWNrZXItaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0uZm9sZGVyLXBpY2tlci1pdGVtLmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCl9LmZvbGRlci1waWNrZXItaXRlbS1pY29ue2ZvbnQtc2l6ZTouODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5mb2xkZXItcGlja2VyLWxvYWRpbmd7cGFkZGluZzo4cHggMTBweDt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljc1cmVtfS5mb2xkZXItcGlja2VyLWVycm9ye3BhZGRpbmc6OHB4IDEwcHg7Y29sb3I6dmFyKC0tZGFuZ2VyKTtmb250LXNpemU6Ljc1cmVtO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtib3JkZXItcmFkaXVzOjRweDttYXJnaW46NHB4IDhweH0uZm9sZGVyLXBpY2tlci1jb250YWluZXIuZHJhZy1vdmVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSl9LmZvbGRlci1waWNrZXItY29udGFpbmVyLmRyYWctb3ZlciAuZm9sZGVyLXBpY2tlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0uZm9sZGVyLXJlY2VudC1zZWN0aW9ue3BhZGRpbmc6NHB4IDhweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTttYXJnaW4tYm90dG9tOjRweH0uZm9sZGVyLXJlY2VudC10aXRsZXtmb250LXNpemU6LjY4NzVyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wNWVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21hcmdpbi1ib3R0b206NHB4fS5mb2xkZXItcmVjZW50LWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6NnB4IDhweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6Ljc1cmVtO2JvcmRlci1yYWRpdXM6NHB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcmVjZW50LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LmZvbGRlci1yZWNlbnQtaXRlbS1wYXRoe2ZsZXg6MTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZm9sZGVyLXBpY2tlci1pbnB1dC5pbnZhbGlke2JvcmRlci1jb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6I2IyNGY0NTE0fS5mb2xkZXItcGlja2VyLWlucHV0LmludmFsaWQ6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAycHggI2IyNGY0NTMzfS5mb2xkZXItcGlja2VyLXZhbGlkYXRpb257Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLWRhbmdlcik7cGFkZGluZzoycHggNHB4O21hcmdpbi10b3A6MnB4O2Rpc3BsYXk6bm9uZX0uZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uLnZpc2libGV7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci1jb21wYWN0e3Bvc2l0aW9uOnN0aWNreTttYXJnaW4tYm90dG9tOjhweH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggMTBweDtiYWNrZ3JvdW5kOiNmZmZmZmY4MDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcGlja2VyLWNvbXBhY3Qtcm93OmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kOiNmZmZjO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaWNvbntmb250LXNpemU6Ljg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmbGV4LXNocmluazowfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaW5wdXR7ZmxleDoxO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtvdXRsaW5lOm5vbmU7cGFkZGluZzoycHggMDttaW4td2lkdGg6MH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LWlucHV0OjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uZm9sZGVyLXBpY2tlci10b2dnbGV7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO3BhZGRpbmc6NHB4IDZweDtmb250LXNpemU6LjYyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjRweDt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcGlja2VyLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LmZvbGRlci1waWNrZXItcXVpY2stcm93e2Rpc3BsYXk6ZmxleDtnYXA6NnB4O3BhZGRpbmc6NnB4IDhweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uZm9sZGVyLXBpY2tlci1xdWljay1yb3cgLmZvbGRlci1waWNrZXItcXVpY2stYnRue2ZsZXg6MTtwYWRkaW5nOjRweCA4cHg7Zm9udC1zaXplOi42ODc1cmVtfS53b3JraW5nLWRpci1pbmRpY2F0b3J7cG9zaXRpb246YWJzb2x1dGU7bGVmdDoxMHB4O2JvdHRvbTo1cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjJweCA2cHg7YmFja2dyb3VuZDojYzU2NTNkMTQ7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC1zaXplOi42NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7bWF4LXdpZHRoOjE4MHB4O3otaW5kZXg6Mjtwb2ludGVyLWV2ZW50czphdXRvfS53b3JraW5nLWRpci1pbmRpY2F0b3I6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCl9LndvcmtpbmctZGlyLWluZGljYXRvci1pY29ue2ZvbnQtc2l6ZTouNzVyZW07ZmxleC1zaHJpbms6MH0ud29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGh7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IDEyMHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtwYWRkaW5nOjlweCA4cHg7b3V0bGluZTpub25lO3Jlc2l6ZTpub25lO21pbi1oZWlnaHQ6MzZweDttYXgtaGVpZ2h0OnZhcigtLWlucHV0LW1heC1oZWlnaHQpO3dpZHRoOjEwMCU7ZGlzcGxheTpibG9jaztvdmVyZmxvdy15OmhpZGRlbjtvdmVyc2Nyb2xsLWJlaGF2aW9yOmNvbnRhaW47LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7dHJhbnNpdGlvbjpoZWlnaHQgLjE1cyBlYXNlLW91dDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bGluZS1oZWlnaHQ6MS40O3RvdWNoLWFjdGlvbjpwYW4teTtzY3JvbGxiYXItZ3V0dGVyOnN0YWJsZX1AbWVkaWEocG9pbnRlcjpjb2Fyc2Upey5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IG1pbigxNjBweCwgMzVkdmgpO292ZXJmbG93LXk6YXV0b319QHN1cHBvcnRzIG5vdCAoaGVpZ2h0OiAxZHZoKXtAbWVkaWEocG9pbnRlcjpjb2Fyc2Upey5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IG1pbigxNjBweCwgMzV2aCl9fX0uaW5wdXQtdGV4dGFyZWE6Zm9jdXN7b3V0bGluZTpub25lfS5pbnB1dC10ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6MDtvcGFjaXR5Oi42Mn0uaW5wdXQtdGV4dGFyZWEuaXMtdGVybWluYWwtcGFzc3Rocm91Z2h7b3BhY2l0eTouNztjdXJzb3I6ZGVmYXVsdH0uaW5wdXQtdGV4dGFyZWEuaXMtdGVybWluYWwtcGFzc3Rocm91Z2g6OnBsYWNlaG9sZGVye2ZvbnQtc3R5bGU6aXRhbGljfS5jb21wb3Nlci1waWxse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7bWluLWhlaWdodDoyMnB4O3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjEwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOiNmNmYxZThiMztjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHg7d2hpdGUtc3BhY2U6bm93cmFwO2JveC1zaXppbmc6Ym9yZGVyLWJveDt1c2VyLXNlbGVjdDpub25lfS5jb21wb3Nlci1waWxsOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQtY29sb3I6I2Y2ZjFlOH0uY29tcG9zZXItcGlsbDpmb2N1cywuY29tcG9zZXItcGlsbDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCk7b3V0bGluZTpub25lfS5jb21wb3Nlci1waWxsLmRpc2FibGVkLC5jb21wb3Nlci1waWxsW2Rpc2FibGVkXXtvcGFjaXR5Oi41NTtjdXJzb3I6bm90LWFsbG93ZWR9LmNvbXBvc2VyLXBpbGwtY2hpcHtwYWRkaW5nOjFweCA4cHg7Zm9udC1zaXplOi42MjVyZW19LmNvbXBvc2VyLXBpbGwtY2hpcC5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTIpKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5jb21wb3Nlci1waWxsLWNoaXAuYWN0aXZlOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDJlfS5jaGF0LW1vZGUtc2VsZWN0e21heC13aWR0aDo3OHB4fS5idG4tY2lyY2xle3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2ZsZXgtc2hyaW5rOjA7cGFkZGluZzowfS5idG4tY2lyY2xlLXNlbmR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkgMCUsI2E4NTIyZiAxMDAlKTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCAxcHggNnB4ICNjNTY1M2Q0MH0uYnRuLWNpcmNsZS1zZW5kOmhvdmVye3RyYW5zZm9ybTpzY2FsZSgxLjA4KTtib3gtc2hhZG93OjAgM3B4IDEwcHggI2M1NjUzZDU5fS5idG4tY2lyY2xlLXNlbmQ6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTUpfS5idG4tY2lyY2xlLXN0b3B7YmFja2dyb3VuZDojYjI0ZjQ1MWY7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uYnRuLWNpcmNsZS1zdG9wOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKTtjb2xvcjojZmZmO3RyYW5zZm9ybTpzY2FsZSgxLjA4KX0uYnRuLWNpcmNsZS1zdG9wOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk1KX0uYnRuLWNpcmNsZS1zZW5kLnF1ZXVlLW1vZGV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNjNTY1M2Q4YywjYTg1MjJmOGMpO2JveC1zaGFkb3c6MCAxcHggNHB4ICNjNTY1M2QyNn0uYnRuLWNpcmNsZS1zZW5kLnF1ZXVlLW1vZGU6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkgMCUsI2E4NTIyZiAxMDAlKTtib3gtc2hhZG93OjAgM3B4IDEwcHggI2M1NjUzZDU5fS5wcm9tcHQtb3B0aW1pemUtYnRue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1cHg7cmlnaHQ6NnB4O3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjIyKTtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMmYyLCNlOGM1YWU1OSk7Y29sb3I6dmFyKC0tYWNjZW50KTt6LWluZGV4OjQ7Ym94LXNoYWRvdzowIDFweCA0cHggI2M1NjUzZDFhO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5wcm9tcHQtb3B0aW1pemUtYnRuOmhvdmVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjZmZmYWYyLCNlOGM1YWU4Yyk7Y29sb3I6dmFyKC0tYWNjZW50LWhvdmVyKTt0cmFuc2Zvcm06c2NhbGUoMS4xMik7Ym9yZGVyLWNvbG9yOiNjNTY1M2Q1OTtib3gtc2hhZG93OjAgMnB4IDEwcHggI2M1NjUzZDM4LDAgMCAwIDNweCAjYzU2NTNkMGZ9LnByb21wdC1vcHRpbWl6ZS1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTIpO2JveC1zaGFkb3c6MCAxcHggM3B4ICNjNTY1M2QyNn0ucHJvbXB0LW9wdGltaXplLWJ0bjpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWQ7b3BhY2l0eTouNn0ucHJvbXB0LW9wdGltaXplLWJ0bjpkaXNhYmxlZDpob3Zlcnt0cmFuc2Zvcm06bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMmYyLCNlOGM1YWU1OSk7Ym94LXNoYWRvdzowIDFweCA0cHggI2M1NjUzZDFhO2JvcmRlci1jb2xvcjojYzU2NTNkMzh9LnByb21wdC1vcHRpbWl6ZS1pY29ue3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNXMgZWFzZSxvcGFjaXR5IC4ycyBlYXNlO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMTk3LDEwMSw2MSwuMykpfS5wcm9tcHQtb3B0aW1pemUtYnRuOmhvdmVyIC5wcm9tcHQtb3B0aW1pemUtaWNvbnthbmltYXRpb246cHJvbXB0LW9wdGltaXplLXR3aW5rbGUgMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDE5NywxMDEsNjEsLjQpKX1Aa2V5ZnJhbWVzIHByb21wdC1vcHRpbWl6ZS10d2lua2xlezAlLHRve3RyYW5zZm9ybTpyb3RhdGUoMCkgc2NhbGUoMSl9NTAle3RyYW5zZm9ybTpyb3RhdGUoMTJkZWcpIHNjYWxlKDEuMTIpfX0ucHJvbXB0LW9wdGltaXplLXNwaW5uZXJ7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtib3JkZXItcmFkaXVzOjUwJTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDtiYWNrZ3JvdW5kOmNvbmljLWdyYWRpZW50KGZyb20gMGRlZyx0cmFuc3BhcmVudCAwZGVnLHZhcigtLWFjY2VudCkgMjcwZGVnLHRyYW5zcGFyZW50IDM2MGRlZyk7bWFzazpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLHRyYW5zcGFyZW50IDEwcHgsYmxhY2sgMTFweCk7LXdlYmtpdC1tYXNrOnJhZGlhbC1ncmFkaWVudChjaXJjbGUsdHJhbnNwYXJlbnQgMTBweCxibGFjayAxMXB4KTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBlYXNlfS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLWxvYWRpbmd7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMiwjZThjNWFlODApO2JvcmRlci1jb2xvcjojYzU2NTNkNjY7Ym94LXNoYWRvdzowIDJweCAxMnB4ICNjNTY1M2Q0MCwwIDAgMCAzcHggI2M1NjUzZDE0fS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLWxvYWRpbmcgLnByb21wdC1vcHRpbWl6ZS1pY29ue2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtcHVsc2UgMS4xcyBlYXNlLWluLW91dCBpbmZpbml0ZX0ucHJvbXB0LW9wdGltaXplLWJ0bi5pcy1sb2FkaW5nIC5wcm9tcHQtb3B0aW1pemUtc3Bpbm5lcntvcGFjaXR5OjE7YW5pbWF0aW9uOnByb21wdC1vcHRpbWl6ZS1zcGluIC45cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgcHJvbXB0LW9wdGltaXplLXB1bHNlezAlLHRve3RyYW5zZm9ybTpzY2FsZSguODgpO29wYWNpdHk6Ljh9NTAle3RyYW5zZm9ybTpzY2FsZSgxLjE1KTtvcGFjaXR5OjF9fS5pbnB1dC1jb21wb3Nlci5pcy1vcHRpbWl6aW5ne2JvcmRlci1jb2xvcjojYzU2NTNkNmI7Ym94LXNoYWRvdzowIDAgMCAycHggI2M1NjUzZDFhLDAgMCAxOHB4ICNjNTY1M2QyNH0uaW5wdXQtY29tcG9zZXIuaXMtb3B0aW1pemluZyAuY29tcG9zZXItaW5wdXQtd3JhcDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTAwZGVnLHRyYW5zcGFyZW50IDAlLHRyYW5zcGFyZW50IDM4JSxyZ2JhKDIxNCwxMjMsODIsLjE2KSA1MCUsdHJhbnNwYXJlbnQgNjIlLHRyYW5zcGFyZW50IDEwMCUpO2JhY2tncm91bmQtc2l6ZToyMjAlIDEwMCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246MjIwJSAwO2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtZmxvdyAxLjZzIGxpbmVhciBpbmZpbml0ZTt6LWluZGV4OjB9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtZmxvd3swJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjIyMCUgMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xMjAlIDB9fS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLXNoYWtle2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtc2hha2UgLjRzIGVhc2Utb3V0O2NvbG9yOnZhcigtLWRhbmdlcil9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtc2hha2V7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX0yMCV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtM3B4KX00MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgzcHgpfTYwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0ycHgpfTgwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKDJweCl9fUBtZWRpYShtYXgtd2lkdGg6NzIwcHgpey5wcm9tcHQtb3B0aW1pemUtYnRue3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHh9LnByb21wdC1vcHRpbWl6ZS1pY29ue3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHh9fS5idG4tY2lyY2xlLWFjdGlvbntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2ZsZXgtc2hyaW5rOjA7cGFkZGluZzowfS5idG4tY2lyY2xlLWFjdGlvbjpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QxYTtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTpzY2FsZSgxLjA4KX0uYnRuLWNpcmNsZS1hY3Rpb246YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS5idG4tY2lyY2xlLWFjdGlvbi5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTQpKTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5idG4tY2lyY2xlLWFjdGlvbi5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMzh9LmNoYXQtbW9kZS10cmlve2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleC13cmFwOndyYXB9LmNoYXQtbW9kZS10cmlvLXBpbGx7cG9zaXRpb246cmVsYXRpdmU7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uY2hhdC1tb2RlLXRyaW8tdGFne2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5LCAjYjVhODlhKTtsZXR0ZXItc3BhY2luZzouMDRlbTttYXJnaW4tcmlnaHQ6NHB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtvcGFjaXR5Oi43NX0uZW1wdHktc3RhdGUtdHJpby13cmFwe21hcmdpbi10b3A6MTRweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2FuaW1hdGlvbjplbXB0eVN0YXRlVHJpb0ZhZGVJbiAuNHMgZWFzZS1vdXR9LmVtcHR5LXN0YXRlLXRyaW8taGludHtmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xldHRlci1zcGFjaW5nOi4wMmVtfS5jaGF0LW1vZGUtdHJpby1kcm9wZG93bntnYXA6NHB4O3BhZGRpbmc6NnB4IDEycHg7YmFja2dyb3VuZDojZjZmMWU4OTk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEycHg7Ym94LXNoYWRvdzowIDFweCAzcHggIzAwMDAwMDBhfS5jaGF0LW1vZGUtdHJpby1kcm9wZG93biAuY2hhdC1tb2RlLXRyaW8tcGlsbHtmb250LXNpemU6Ljc4cmVtO3BhZGRpbmc6M3B4IDZweDtib3JkZXItcmFkaXVzOjhweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY2hhdC1tb2RlLXRyaW8tZHJvcGRvd24gLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGZ9LmNoYXQtbW9kZS10cmlvLWRyb3Bkb3duIC5jaGF0LW1vZGUtdHJpby1waWxsOmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kOiNjNTY1M2QxNH0uY2hhdC1tb2RlLXRyaW8tZHJvcGRvd24gLmNvbXBvc2VyLXRleHQtbGFiZWx7Zm9udC1zaXplOi44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21heC13aWR0aDoxNDBweH1Aa2V5ZnJhbWVzIGVtcHR5U3RhdGVUcmlvRmFkZUluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg0cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LmNoYXQtbWVzc2FnZS1hdmF0YXIudXNlciAuY2hhdC1tb2RlLXRyaW8tY29tcGFjdHttYXJnaW4tcmlnaHQ6NHB4O2dhcDozcHg7b3BhY2l0eTouNTU7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmNoYXQtbWVzc2FnZS1hdmF0YXIudXNlcjpob3ZlciAuY2hhdC1tb2RlLXRyaW8tY29tcGFjdCwuY2hhdC1tZXNzYWdlLWF2YXRhci51c2VyIC5jaGF0LW1vZGUtdHJpby1jb21wYWN0OmZvY3VzLXdpdGhpbiwuY2hhdC1tZXNzYWdlLWF2YXRhci51c2VyIC5jaGF0LW1vZGUtdHJpby1jb21wYWN0OmhvdmVye29wYWNpdHk6MX0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY2hhdC1tb2RlLXRyaW8tcGlsbHtmb250LXNpemU6LjY4NzVyZW07cGFkZGluZzoycHggNnB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOiNmNmYxZTg4Yztib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2xpbmUtaGVpZ2h0OjF9LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMWE7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY29tcG9zZXItdGV4dC1sYWJlbHtmb250LXNpemU6LjY4NzVyZW07bWF4LXdpZHRoOjg4cHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNvbXBvc2VyLXRleHQtc2Vwe2Rpc3BsYXk6bm9uZX1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuY2hhdC1tb2RlLXRyaW8tZHJvcGRvd257cGFkZGluZzo2cHggMTBweDtnYXA6MnB4fS5jaGF0LW1vZGUtdHJpby1kcm9wZG93biAuY29tcG9zZXItdGV4dC1sYWJlbHttYXgtd2lkdGg6MTAwcHh9LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNoYXQtbW9kZS10cmlvLXBpbGx7Zm9udC1zaXplOi42MjVyZW07cGFkZGluZzoycHggNXB4fS5jaGF0LW1vZGUtdHJpby1jb21wYWN0IC5jb21wb3Nlci10ZXh0LWxhYmVse21heC13aWR0aDo2NHB4fX0uY29tcG9zZXItcGx1cy1wb3BvdmVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MTRweDtib3R0b206Y2FsYyh2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KSArIDU2cHgpO3otaW5kZXg6Mjg7bWluLXdpZHRoOjI0MHB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAyOHB4KTtiYWNrZ3JvdW5kOiNmZmZmZmZmYTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjE2cHg7Ym94LXNoYWRvdzowIDEycHggMjhweCAjMDAwMDAwMmUsMCAycHggNnB4ICMwMDAwMDAxNDtwYWRkaW5nOjZweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7YW5pbWF0aW9uOnBsdXNQb3BvdmVySW4gLjE4cyBlYXNlLW91dDt0cmFuc2Zvcm0tb3JpZ2luOjE2cHggY2FsYygxMDAlICsgOHB4KX0uY29tcG9zZXItcGx1cy1wb3BvdmVyLmhpZGRlbntkaXNwbGF5Om5vbmV9QGtleWZyYW1lcyBwbHVzUG9wb3ZlckluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg2cHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX0ucGx1cy1wb3BvdmVyLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjhweCAxMHB4O2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxMHB4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOi44MnJlbTtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEwMCV9LnBsdXMtcG9wb3Zlci1pdGVtOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDE0fS5wbHVzLXBvcG92ZXItaXRlbTphY3RpdmV7YmFja2dyb3VuZDojYzU2NTNkMjR9LnBsdXMtcG9wb3Zlci1pY29ue2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmbGV4LXNocmluazowfS5wbHVzLXBvcG92ZXItbGFiZWx7ZmxleDoxO2xpbmUtaGVpZ2h0OjEuMn0ucGx1cy1wb3BvdmVyLXRvZ2dsZS1zdGF0ZXtmb250LXNpemU6LjY4cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmc6MnB4IDhweDtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOiMwMDAwMDAwZDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LjAyZW19LnBsdXMtcG9wb3Zlci1pdGVtLmlzLW9uLC5wbHVzLXBvcG92ZXItaXRlbS5pcy1vbiAucGx1cy1wb3BvdmVyLWljb257Y29sb3I6dmFyKC0tYWNjZW50KX0ucGx1cy1wb3BvdmVyLWl0ZW0uaXMtb24gLnBsdXMtcG9wb3Zlci10b2dnbGUtc3RhdGV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCl9LnBsdXMtcG9wb3Zlci1zZXB7aGVpZ2h0OjFweDttYXJnaW46NHB4IDZweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1zdWJ0bGUpfS5wbHVzLXBvcG92ZXItdHJpby13cmFwe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Z2FwOjJweH0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlciAuY29tcG9zZXItdGV4dC1zZXB7ZGlzcGxheTpub25lfS5jaGF0LW1vZGUtdHJpby1wb3BvdmVyIC5jaGF0LW1vZGUtdHJpby1waWxse2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjdweCAxMHB4O2JvcmRlci1yYWRpdXM6MTBweDtmb250LXNpemU6LjgycmVtO21heC13aWR0aDpub25lO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXIsLmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXBpbGw6Zm9jdXMtd2l0aGlue2JhY2tncm91bmQ6I2M1NjUzZDE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXRhZ3tmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGV0dGVyLXNwYWNpbmc6MDt0ZXh0LXRyYW5zZm9ybTpub25lO29wYWNpdHk6MTttYXJnaW4tcmlnaHQ6MDtmbGV4LXNocmluazowO3dpZHRoOjM2cHh9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNvbXBvc2VyLXRleHQtbGFiZWx7ZmxleDoxO2ZvbnQtc2l6ZTouODJyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0ZXh0LWFsaWduOnJpZ2h0O21heC13aWR0aDoxMDAlO2ZvbnQtd2VpZ2h0OjUwMH1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuY29tcG9zZXItcGx1cy1wb3BvdmVye21pbi13aWR0aDoyMjBweDtsZWZ0OjEwcHg7Ym90dG9tOmNhbGModmFyKC0tc2FmZS1ib3R0b20sIDBweCkgKyA2MHB4KX19LnByb21wdC1vcHRpbWl6ZS1idG57ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OmF1dG8gNHB4IDRweCBhdXRvO3RyYW5zZm9ybTpub25lO3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHg7ei1pbmRleDo0fS5pbnB1dC1jb21wb3Nlci5oYXMtdGV4dCAucHJvbXB0LW9wdGltaXplLWJ0bntkaXNwbGF5OmlubGluZS1mbGV4fS5pbnB1dC1jb21wb3Nlci5oYXMtdGV4dCAucHJvbXB0LW9wdGltaXplLWJ0bjpob3Zlcnt0cmFuc2Zvcm06c2NhbGUoMS4xMil9LmlucHV0LWNvbXBvc2VyLmhhcy10ZXh0IC5wcm9tcHQtb3B0aW1pemUtYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjkyKX0uaW5wdXQtY29tcG9zZXIuaGFzLXRleHQgLmlucHV0LXRleHRhcmVhe3BhZGRpbmctcmlnaHQ6MzZweH0udm9pY2UtaW5wdXQtbW9kZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjAgNHB4fS52b2ljZS1pbnB1dC1tb2RlLmhpZGRlbntkaXNwbGF5Om5vbmV9LnZvaWNlLXJlY29yZC1idG57ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtoZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjk5OXB4O2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtiYWNrZ3JvdW5kOiNmNmYxZTg4MDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjhweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb259LnZvaWNlLXJlY29yZC1idG46aG92ZXJ7YmFja2dyb3VuZDojZjZmMWU4ZTY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KX0udm9pY2UtcmVjb3JkLWJ0bjphY3RpdmUsLnZvaWNlLXJlY29yZC1idG4uaXMtcmVjb3JkaW5ne2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkLCByZ2JhKDE5NywgMTAxLCA2MSwgLjE0KSk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItc3R5bGU6c29saWR9LnZvaWNlLXJlY29yZC1wdWxzZXt3aWR0aDo4cHg7aGVpZ2h0OjhweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtvcGFjaXR5Oi41NX0udm9pY2UtcmVjb3JkLWJ0bi5pcy1yZWNvcmRpbmcgLnZvaWNlLXJlY29yZC1wdWxzZXtvcGFjaXR5OjE7YW5pbWF0aW9uOnZvaWNlLXB1bHNlIDEuMXMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB2b2ljZS1wdWxzZXswJSx0b3t0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTUwJXt0cmFuc2Zvcm06c2NhbGUoMS40NSk7b3BhY2l0eTouNDV9fS52b2ljZS1jYW5jZWwtYnRue3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udm9pY2UtY2FuY2VsLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxYTtjb2xvcjp2YXIoLS1kYW5nZXIpfS5pbnB1dC1jb21wb3Nlci52b2ljZS1tb2RlIC5pbnB1dC10ZXh0YXJlYXt2aXNpYmlsaXR5OmhpZGRlbn0uaW5wdXQtY29tcG9zZXIudm9pY2UtbW9kZSAucHJvbXB0LW9wdGltaXplLWJ0bntkaXNwbGF5Om5vbmV9LmlucHV0LWNvbXBvc2VyLnZvaWNlLW1vZGUgLnZvaWNlLWlucHV0LW1vZGV7ZGlzcGxheTpmbGV4fSN2b2ljZS1idG57ZGlzcGxheTpub25lfS5pbnB1dC1jb21wb3Nlci52b2ljZS1tb2RlICN2b2ljZS1idG57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTgpKTtjb2xvcjp2YXIoLS1hY2NlbnQpfS52b2ljZS10cmFuc2NyaXB0LWJ1YmJsZXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjEycHg7cmlnaHQ6MTJweDtib3R0b206Y2FsYygxMDAlICsgOHB4KTt6LWluZGV4OjQwO3BhZGRpbmc6MTJweCAxNnB4IDEwcHg7Ym9yZGVyLXJhZGl1czoxNnB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LCAjYzU2NTNkKTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCA2cHggMjRweCAjMDAwMDAwMmU7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gY2VudGVyO2FuaW1hdGlvbjp2b2ljZS1idWJibGUtaW4gLjE4cyBlYXNlfS52b2ljZS10cmFuc2NyaXB0LWJ1YmJsZS5oaWRkZW57ZGlzcGxheTpub25lfUBrZXlmcmFtZXMgdm9pY2UtYnViYmxlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg4cHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX0udm9pY2UtdHJhbnNjcmlwdC10ZXh0e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi45NXJlbTtsaW5lLWhlaWdodDoxLjU7Zm9udC13ZWlnaHQ6NTAwO3dvcmQtYnJlYWs6YnJlYWstd29yZDt3aGl0ZS1zcGFjZTpwcmUtd3JhcDttaW4taGVpZ2h0OjEuNGVtO2NvbG9yOiNmZmZ9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlOm5vdCguaGFzLXRleHQpIC52b2ljZS10cmFuc2NyaXB0LXRleHQ6YmVmb3Jle2NvbnRlbnQ6Ilw4YmY3XDVmMDBcNTljYlw4YmY0XDhiZGRcMjAyNiI7b3BhY2l0eTouNn0udm9pY2UtdHJhbnNjcmlwdC1oaW50e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtmb250LXNpemU6LjcycmVtO29wYWNpdHk6Ljg1fS52b2ljZS10cmFuc2NyaXB0LXN0YXR1c3tsZXR0ZXItc3BhY2luZzouMDJlbX0udm9pY2Utd2F2ZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDoycHg7aGVpZ2h0OjEycHh9LnZvaWNlLXdhdmU+aXt3aWR0aDoyLjVweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjthbmltYXRpb246dm9pY2Utd2F2ZS1ib3VuY2UgLjlzIGVhc2UtaW4tb3V0IGluZmluaXRlfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDEpe2hlaWdodDo1cHg7YW5pbWF0aW9uLWRlbGF5OjBzfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDIpe2hlaWdodDoxMnB4O2FuaW1hdGlvbi1kZWxheTouMTVzfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDMpe2hlaWdodDo4cHg7YW5pbWF0aW9uLWRlbGF5Oi4zc30udm9pY2Utd2F2ZT5pOm50aC1jaGlsZCg0KXtoZWlnaHQ6MTFweDthbmltYXRpb24tZGVsYXk6LjQ1c31Aa2V5ZnJhbWVzIHZvaWNlLXdhdmUtYm91bmNlezAlLHRve3RyYW5zZm9ybTpzY2FsZVkoLjQpO29wYWNpdHk6LjZ9NTAle3RyYW5zZm9ybTpzY2FsZVkoMSk7b3BhY2l0eToxfX0udm9pY2UtYnViYmxlLWFycm93e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO2xlZnQ6MjhweDt3aWR0aDowO2hlaWdodDowO2JvcmRlci1sZWZ0OjdweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6N3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6OHB4IHNvbGlkIHZhcigtLWFjY2VudCwgI2M1NjUzZCl9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlLmlzLWNhbmNlbGluZ3tiYWNrZ3JvdW5kOnZhcigtLWRhbmdlciwgI2IyNGY0NSl9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlLmlzLWNhbmNlbGluZyAudm9pY2UtYnViYmxlLWFycm93e2JvcmRlci10b3AtY29sb3I6dmFyKC0tZGFuZ2VyLCAjYjI0ZjQ1KX1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuYnRuLWNpcmNsZS1hY3Rpb257d2lkdGg6MzBweDtoZWlnaHQ6MzBweDttaW4td2lkdGg6MzBweH0uY29tcG9zZXItbWFpbi1yb3d7cGFkZGluZzozcHggNHB4O21pbi1oZWlnaHQ6NDJweDtnYXA6MnB4fX0uYXR0YWNobWVudC1wcmV2aWV3e2Rpc3BsYXk6ZmxleDtnYXA6NnB4O3BhZGRpbmc6NnB4IDEwcHg7ZmxleC13cmFwOndyYXA7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LmF0dGFjaG1lbnQtcHJldmlldy5oaWRkZW57ZGlzcGxheTpub25lfS5hdHRhY2htZW50LXBpbGx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjNweCA4cHg7YmFja2dyb3VuZDojYzU2NTNkMGY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE4KTtib3JkZXItcmFkaXVzOjhweDtmb250LXNpemU6LjcycmVtO21heC13aWR0aDoyMDBweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YW5pbWF0aW9uOnBlcm1pc3Npb24tZmFkZS1pbiAuMnMgZWFzZS1vdXR9LmF0dGFjaG1lbnQtcGlsbCBpbWd7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDtvYmplY3QtZml0OmNvdmVyO2JvcmRlci1yYWRpdXM6NHB4O2ZsZXgtc2hyaW5rOjB9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LWljb257d2lkdGg6MThweDtoZWlnaHQ6MThweDtmbGV4LXNocmluazowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6Ljg1cmVtfS5hdHRhY2htZW50LXBpbGwgLmF0dC1uYW1le292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjE7bWluLXdpZHRoOjB9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LXNpemV7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi42NXJlbTtmbGV4LXNocmluazowfS5hdHRhY2htZW50LXBpbGwgLmF0dC1yZW1vdmV7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44cmVtO2xpbmUtaGVpZ2h0OjE7cGFkZGluZzowIDJweDtmbGV4LXNocmluazowO2JvcmRlcjpub25lO2JhY2tncm91bmQ6bm9uZX0uYXR0YWNobWVudC1waWxsIC5hdHQtcmVtb3ZlOmhvdmVye2NvbG9yOnZhcigtLWRhbmdlcil9LmlucHV0LWNvbXBvc2VyLmRyYWctb3Zlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KSFpbXBvcnRhbnQ7YmFja2dyb3VuZDojYzU2NTNkMGEhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCksaW5zZXQgMCAwIDIwcHggI2M1NjUzZDA4fS5mb2xkZXItcGlja2VyLW1vZGFse21heC13aWR0aDo0ODBweH0uZm9sZGVyLXBpY2tlci1tb2RhbCAubW9kYWwtYm9keXtwYWRkaW5nOjE2cHh9LmxvZ2luLWNvbnRhaW5lcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLWhlaWdodDoxMDB2aDttaW4taGVpZ2h0OjEwMGR2aDtwYWRkaW5nOjI0cHh9LmxvZ2luLWNhcmR7d2lkdGg6MTAwJTttYXgtd2lkdGg6MzgwcHg7YmFja2dyb3VuZDojZmZmYmY1ZWI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE1MCwxMTgsODUsLjE2KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7b3ZlcmZsb3c6aGlkZGVuO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNvZnQpfS5sb2dpbi1oZWFkZXJ7cGFkZGluZzoyOHB4IDI0cHggMjJweDt0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wLHJnYmEoMjE0LDE0NCwxMDAsLjI2KSx0cmFuc3BhcmVudCA0NSUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZjZlYmQ5LCNmZmZiZjVkOSl9LmJvb3QtbG9hZGluZ3ttaW4taGVpZ2h0OjEwMHZoO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjI0cHh9LmJvb3QtbG9hZGluZy1jYXJke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzoxNnB4IDE4cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWVsZXZhdGVkKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5ib290LWxvYWRpbmctc3Bpbm5lcnt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOjJweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE2KTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLXJhZGl1czo5OTlweDthbmltYXRpb246bG9naW5TcGluIC44cyBsaW5lYXIgaW5maW5pdGV9LmJvb3QtbG9hZGluZy10ZXh0e2ZvbnQtc2l6ZTouOTM3NXJlbTtmb250LXdlaWdodDo1MDB9LmxvZ2luLWxvZ297ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDoxMHB4O21hcmdpbi1ib3R0b206OHB4fS5sb2dpbi1sb2dvLWljb257d2lkdGg6NDJweDtoZWlnaHQ6NDJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2Q2N2I1MiwjYWI1MjJlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjU5O2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6NzAwfS5sb2dpbi1sb2dvLXRleHR7Zm9udC1zaXplOjEuNnJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LS4wMmVtfS5sb2dpbi1zdWJ0aXRsZXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljg3NXJlbX0ubG9naW4tYm9keXtwYWRkaW5nOjIycHggMjRweCAyNHB4fS5sb2dpbi1jYXJkLWxvYWRpbmcgLmxvZ2luLWJvZHl7cGFkZGluZy10b3A6MThweDtwYWRkaW5nLWJvdHRvbToyNHB4fS5sb2dpbi1oaW50e2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bWFyZ2luLWJvdHRvbToxNnB4O2xpbmUtaGVpZ2h0OjEuNX0ubG9naW4tbXV0ZWR7bWFyZ2luOjRweCAwIDA7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjQ1fS5sb2dpbi1zdGF0dXN7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjE0cHg7cGFkZGluZzoycHggMH0ubG9naW4tc3Bpbm5lcnt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZsZXgtc2hyaW5rOjA7bWFyZ2luLXRvcDoycHg7Ym9yZGVyOjJweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE2KTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLXJhZGl1czo5OTlweDthbmltYXRpb246bG9naW5TcGluIC44cyBsaW5lYXIgaW5maW5pdGV9LnBhc3N3b3JkLWZpZWxke3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXJ9LnBhc3N3b3JkLWlucHV0e3BhZGRpbmctcmlnaHQ6NzhweDttaW4taGVpZ2h0OjQ2cHh9LnBhc3N3b3JkLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo4cHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjZweCA4cHg7Ym9yZGVyLXJhZGl1czo4cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0ucGFzc3dvcmQtdG9nZ2xlOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnBhc3N3b3JkLXRvZ2dsZTpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fUBrZXlmcmFtZXMgbG9naW5TcGluezAle3RyYW5zZm9ybTpyb3RhdGUoMCl9dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0uYnRuOmRpc2FibGVke2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi43Mjt0cmFuc2Zvcm06bm9uZTtib3gtc2hhZG93Om5vbmV9LmxvZ2luLWJvZHkgLmZpZWxke21hcmdpbi1ib3R0b206MjBweH0ubG9naW4tYm9keSAuaGludHttYXJnaW4tdG9wOjEwcHh9LmxvZ2luLWJvZHkgLmVycm9yLW1lc3NhZ2V7bWFyZ2luLXRvcDoxMHB4O21hcmdpbi1ib3R0b206MH0ubW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjV9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWJvZHl7cGFkZGluZy10b3A6MTZweDtwYWRkaW5nLWJvdHRvbTo4cHh9LnNlc3Npb24tbW9kYWwgLmZpZWxkOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjZweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVye2ZsZXgtc2hyaW5rOjA7cGFkZGluZzoxMnB4IDIycHggMThweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVyIC5lcnJvci1tZXNzYWdle21hcmdpbi10b3A6OHB4O21hcmdpbi1ib3R0b206MH0ubW9kZS1jYXJkc3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjZweH0ubW9kZS1jYXJke2ZsZXg6MSAxIDA7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjNweDtwYWRkaW5nOjEwcHggOHB4O2JvcmRlcjoxLjVweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMik7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6I2ZmZjk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3RleHQtYWxpZ246Y2VudGVyO291dGxpbmU6bm9uZX0ubW9kZS1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjojYzU2NTNkNTk7YmFja2dyb3VuZDojZmZmY30ubW9kZS1jYXJkLmFjdGl2ZXtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNmZmY3ZWZmMjtib3gtc2hhZG93OjAgMCAwIDEuNXB4IHZhcigtLWFjY2VudC1tdXRlZCl9Lm1vZGUtY2FyZDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMS41cHggdmFyKC0tYWNjZW50LW11dGVkKX0ubW9kZS1jYXJkLWxhYmVse2ZvbnQtc2l6ZTouOHJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjN9Lm1vZGUtY2FyZC1kZXNje2ZvbnQtc2l6ZTouNjhyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS4zfS5tb2RlLWNhcmQuYWN0aXZlIC5tb2RlLWNhcmQtbGFiZWx7Y29sb3I6dmFyKC0tYWNjZW50KX0ubW9kZS1jYXJkLmRpc2FibGVke29wYWNpdHk6LjQ1O2N1cnNvcjpub3QtYWxsb3dlZDtwb2ludGVyLWV2ZW50czpub25lfS5tb2RlLWNhcmQuZGlzYWJsZWQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMztiYWNrZ3JvdW5kOiNmZmY5fS5tb2RlLWNhcmQuZGlzYWJsZWQgLm1vZGUtY2FyZC1sYWJlbCwubW9kZS1jYXJkLmRpc2FibGVkIC5tb2RlLWNhcmQtZGVzY3tjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ubW9kZS1jYXJkLmFjdGl2ZS5kaXNhYmxlZHtib3gtc2hhZG93Om5vbmV9LnBhc3N3b3JkLWlucHV0W2RhdGEtZXJyb3I9dHJ1ZV0sLnBhc3N3b3JkLWlucHV0W2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1kYW5nZXItbXV0ZWQpfS5wYXNzd29yZC1pbnB1dFtkYXRhLWVycm9yPXRydWVdKy5wYXNzd29yZC10b2dnbGUsLnBhc3N3b3JkLWlucHV0W2FyaWEtaW52YWxpZD10cnVlXSsucGFzc3dvcmQtdG9nZ2xle2NvbG9yOnZhcigtLWRhbmdlcil9LnBhc3N3b3JkLWlucHV0OmZvY3VzKy5wYXNzd29yZC10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ucGFzc3dvcmQtdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSguOTgpfS5wYXNzd29yZC1pbnB1dDo6LW1zLXJldmVhbCwucGFzc3dvcmQtaW5wdXQ6Oi1tcy1jbGVhcntkaXNwbGF5Om5vbmV9LnBhc3N3b3JkLWlucHV0Ojotd2Via2l0LWNyZWRlbnRpYWxzLWF1dG8tZmlsbC1idXR0b24sLnBhc3N3b3JkLWlucHV0Ojotd2Via2l0LWNvbnRhY3RzLWF1dG8tZmlsbC1idXR0b257dmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTpub25lIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9LnBhc3N3b3JkLWlucHV0W3R5cGU9dGV4dF17Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZmllbGR7bWFyZ2luLWJvdHRvbToxOHB4fS5maWVsZC1sYWJlbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO21hcmdpbi1ib3R0b206OHB4fS5maWVsZC1pbnB1dHt3aWR0aDoxMDAlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44NzVyZW07YmFja2dyb3VuZDojZmZmZmZmYmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMjIpO2JvcmRlci1yYWRpdXM6MTJweDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3BhZGRpbmc6MTJweCAxNHB4O291dGxpbmU6bm9uZTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7bWluLWhlaWdodDo0NHB4fS5maWVsZC1pbnB1dDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgMCAyMHB4ICNjNTY1M2QxNDtiYWNrZ3JvdW5kOiNmZmZmZmZlNn0uZmllbGQtaW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5tb2RhbC1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3otaW5kZXg6NTAwO2JhY2tncm91bmQ6IzE0MGUwODU3O2JhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctdG9wOm1heCgzMnB4LHZhcigtLXdhbmQtc2FmZS10b3ApKTtwYWRkaW5nLWJvdHRvbTptYXgoMzJweCx2YXIoLS13YW5kLXNhZmUtYm90dG9tKSk7cGFkZGluZy1sZWZ0Om1heCgzMnB4LHZhcigtLXdhbmQtc2FmZS1sZWZ0KSk7cGFkZGluZy1yaWdodDptYXgoMzJweCx2YXIoLS13YW5kLXNhZmUtcmlnaHQpKTthbmltYXRpb246bGlxdWlkQmFja2Ryb3BJbiAuMjhzIHZhcigtLWVhc2Utb3V0LWV4cG8sIGN1YmljLWJlemllciguMTYsIDEsIC4zLCAxKSkgYm90aH0ubW9kYWwtYmFja2Ryb3AuY2xvc2luZ3thbmltYXRpb246bGlxdWlkQmFja2Ryb3BPdXQgLjE4cyB2YXIoLS1lYXNlLWluLW91dC1zbW9vdGgsIGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpKSBib3RoO3BvaW50ZXItZXZlbnRzOm5vbmV9QGtleWZyYW1lcyBsaXF1aWRCYWNrZHJvcEluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fUBrZXlmcmFtZXMgbGlxdWlkQmFja2Ryb3BPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19Lm1vZGFse3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjU2MHB4O21heC1oZWlnaHQ6ODh2aDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQ6I2ZmZmNmN2JkO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjYpO2JvcmRlci1yYWRpdXM6MjZweDtvdmVyZmxvdzpoaWRkZW47YmFja2Ryb3AtZmlsdGVyOmJsdXIoNDBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig0MHB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMzJweCA4MHB4IC0xNnB4ICMxNDBlMDg1NywwIDhweCAyNHB4IC04cHggIzE0MGUwODJlLDAgMCAwIC41cHggIzdkNWIzOTE0LGluc2V0IDAgMXB4ICNmZmZmZmZiMzthbmltYXRpb246bGlxdWlkTW9kYWxJbiAuMzJzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKSBib3RofS5tb2RhbC1iYWNrZHJvcC5jbG9zaW5nIC5tb2RhbHthbmltYXRpb246bGlxdWlkTW9kYWxPdXQgLjE4cyB2YXIoLS1lYXNlLWluLW91dC1zbW9vdGgsIGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpKSBib3RofUBrZXlmcmFtZXMgbGlxdWlkTW9kYWxJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45NCkgdHJhbnNsYXRlWSgxMnB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgbGlxdWlkTW9kYWxPdXR7MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKDApfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjk3KSB0cmFuc2xhdGVZKDRweCl9fUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7Lm1vZGFsLWJhY2tkcm9wLC5tb2RhbC1iYWNrZHJvcC5jbG9zaW5nLC5tb2RhbCwubW9kYWwtYmFja2Ryb3AuY2xvc2luZyAubW9kYWx7YW5pbWF0aW9uOm5vbmUhaW1wb3J0YW50fX1Ac3VwcG9ydHMgbm90ICgoYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpIG9yICgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSl7Lm1vZGFsLWJhY2tkcm9we2JhY2tncm91bmQ6IzE0MGUwODk5fS5tb2RhbHtiYWNrZ3JvdW5kOiNmZmZhZjI7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyZX19QG1lZGlhKHByZWZlcnMtY29sb3Itc2NoZW1lOmRhcmspey5tb2RhbC1iYWNrZHJvcHtiYWNrZ3JvdW5kOiMwODA1MDI4MH1Ac3VwcG9ydHMgbm90ICgoYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpIG9yICgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSl7Lm1vZGFsLWJhY2tkcm9we2JhY2tncm91bmQ6IzA4MDUwMmM3fX19LnNlc3Npb24tbW9kYWwgLm1vZGFsLWhlYWRlciwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLWhlYWRlcntwYWRkaW5nOjI0cHggMjhweCAxOHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTZweDttaW4taGVpZ2h0OjB9LnNlc3Npb24tbW9kYWwgLm1vZGFsLXRpdGxlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtdGl0bGUtZ3JvdXAgLm1vZGFsLXRpdGxle2ZvbnQtc2l6ZToxLjMxMjVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDIyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjJ9LnNlc3Npb24tbW9kYWwgLm1vZGFsLXN1YnRpdGxlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo1cHg7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjU7bWF4LXdpZHRoOjQ0Y2h9Lm1vZGFsLWNsb3NlLWJ0biwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3QsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1oZWFkZXI+LmJ0bi1pY29uLmJ0bi1naG9zdHt3aWR0aDozMnB4O2hlaWdodDozMnB4O21pbi13aWR0aDozMnB4O21pbi1oZWlnaHQ6MzJweDtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojN2Q1YjM5MTI7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7ZmxleC1zaHJpbms6MDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMjhzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKSxib3gtc2hhZG93IC4xOHMgZWFzZX0ubW9kYWwtY2xvc2UtYnRuIHN2Z3tkaXNwbGF5OmJsb2NrO3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1vZGFsLWNsb3NlLWJ0bjpob3Zlciwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6aG92ZXIsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1oZWFkZXI+LmJ0bi1pY29uLmJ0bi1naG9zdDpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxZjtjb2xvcjp2YXIoLS1kYW5nZXIpO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO2JveC1zaGFkb3c6MCAycHggOHB4ICNiMjRmNDUyZX0ubW9kYWwtY2xvc2UtYnRuOmFjdGl2ZSwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6YWN0aXZlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6YWN0aXZle2JhY2tncm91bmQ6I2IyNGY0NTMzO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpIHNjYWxlKC45Mik7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5tb2RhbC1jbG9zZS1idG46Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjNweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtYm9keSwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLWJvZHl7cGFkZGluZzoyMHB4IDI4cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWZvb3RlcntwYWRkaW5nOjE2cHggMjhweCAyMnB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LnNlc3Npb24tbW9kYWwgLmZpZWxkLWlucHV0LC5zZXR0aW5ncy1tb2RhbCAuZmllbGQtaW5wdXQsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkIC5maWVsZC1pbnB1dCwuc2Vzc2lvbi1tb2RhbCBzZWxlY3QuZmllbGQtaW5wdXQsLnNldHRpbmdzLW1vZGFsIHNlbGVjdC5maWVsZC1pbnB1dHtiYWNrZ3JvdW5kOiNmZmZmZmZjNztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xNCk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6MTFweCAxNHB4O2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMS41cHggIzdkNWIzOTBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xNXMgZWFzZSxiYWNrZ3JvdW5kIC4xNXMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXNzaW9uLW1vZGFsIC5maWVsZC1pbnB1dDpob3Zlciwuc2V0dGluZ3MtbW9kYWwgLmZpZWxkLWlucHV0OmhvdmVye2JvcmRlci1jb2xvcjojN2Q1YjM5M2Q7YmFja2dyb3VuZDojZmZmZmZmZWJ9LnNlc3Npb24tbW9kYWwgLmZpZWxkLWlucHV0OmZvY3VzLC5zZXR0aW5ncy1tb2RhbCAuZmllbGQtaW5wdXQ6Zm9jdXMsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkIC5maWVsZC1pbnB1dDpmb2N1cywuc2Vzc2lvbi1tb2RhbCBzZWxlY3QuZmllbGQtaW5wdXQ6Zm9jdXMsLnNldHRpbmdzLW1vZGFsIHNlbGVjdC5maWVsZC1pbnB1dDpmb2N1c3tiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxLjVweCAjN2Q1YjM5MGEsMCAwIDAgM3B4IHZhcigtLWFjY2VudC1tdXRlZCl9LnNlc3Npb24tbW9kYWwgLm1vZGUtY2FyZHN7Z2FwOjhweH0uc2Vzc2lvbi1tb2RhbCAubW9kZS1jYXJke3BhZGRpbmc6MTJweCAxMHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOiNmZmY5O2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwODt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2UsYm94LXNoYWRvdyAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXNzaW9uLW1vZGFsIC5tb2RlLWNhcmQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZWI7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTE0fS5zZXNzaW9uLW1vZGFsIC5tb2RlLWNhcmQuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjIsI2ZmZjBlMGQxKTtib3JkZXI6LjVweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC44KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAwIDAgMXB4ICNjNTY1M2Q1MiwwIDAgMCA0cHggI2M1NjUzZDI0LDAgOHB4IDIycHggLTRweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZmZmZmYyLGluc2V0IDAgLTFweCAjYzU2NTNkMTQ7dHJhbnNmb3JtOm5vbmV9LnNlc3Npb24tbW9kYWwgLm1vZGUtY2FyZC5hY3RpdmUgLm1vZGUtY2FyZC1sYWJlbHtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLW1vZGFsIC50b29sLWNhcmR7YmFja2dyb3VuZDojZmZmZmZmYjM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTIpO2JvcmRlci1yYWRpdXM6MTRweDtwYWRkaW5nOjE0cHggMTZweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJveC1zaGFkb3cgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2Vzc2lvbi1tb2RhbCAudG9vbC1jYXJkOmhvdmVye2JhY2tncm91bmQ6I2ZmZjtib3JkZXItY29sb3I6IzdkNWIzOTM4O3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpO2JveC1zaGFkb3c6MCA4cHggMjBweCAjN2Q1YjM5MWF9LnNlc3Npb24tbW9kYWwgLnRvb2wtY2FyZC5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdmMiwjZmZmMGUwZDEpO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAxcHggI2M1NjUzZDRkLDAgMCAwIDRweCAjYzU2NTNkMjQsMCAxMHB4IDI4cHggLTZweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZmZmZmYyLGluc2V0IDAgLTFweCAjYzU2NTNkMTQ7dHJhbnNmb3JtOm5vbmV9LnNlc3Npb24tbW9kYWwgLnJlY2VudC1wYXRoLWJ1YmJsZXtiYWNrZ3JvdW5kOiNmZmZmZmY4Yztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xMik7Ym94LXNoYWRvdzowIDFweCAycHggIzdkNWIzOTA4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZX0uc2Vzc2lvbi1tb2RhbCAucmVjZW50LXBhdGgtYnViYmxlOmhvdmVye2JhY2tncm91bmQ6I2ZmZjdlZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGV7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjZweCA4cHggNnB4IDEycHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOiM3ZDViMzkwZDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE3O2JvcmRlci1jb2xvcjojN2Q1YjM5Mjl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZTpoYXMoLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmY3ZWYsI2ZmZWVkOCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgNHB4IDEycHggI2M1NjUzZDFmfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUtaWNvbntmbGV4LXNocmluazowO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246Y29sb3IgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMjhzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlOmhhcyguc3dpdGNoLXRvZ2dsZTpjaGVja2VkKSAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWljb257Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06cm90YXRlKDhkZWcpfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUtbGFiZWx7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAwNWVtO2NvbG9yOmluaGVyaXQ7dHJhbnNpdGlvbjpjb2xvciAuMThzIGVhc2V9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5OjA7d2lkdGg6MDtoZWlnaHQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUgLnN3aXRjaC1zbGlkZXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MzJweDtoZWlnaHQ6MjBweDttaW4td2lkdGg6MzJweDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojN2Q1YjM5Mzg7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggIzdkNWIzOTJlO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMjJzIGVhc2UsYm94LXNoYWRvdyAuMjJzIGVhc2V9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXNsaWRlcjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoycHg7bGVmdDoycHg7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiNmZmY7Ym94LXNoYWRvdzowIDEuNXB4IDNweCAjMTQwZTA4MzgsMCAwIDAgLjVweCAjN2Q1YjM5MGY7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI0cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpjaGVja2VkKy5zd2l0Y2gtc2xpZGVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCAjMDAwMDAwMWF9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpjaGVja2VkKy5zd2l0Y2gtc2xpZGVyOmFmdGVye3RyYW5zZm9ybTp0cmFuc2xhdGUoMTJweCl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpmb2N1cy12aXNpYmxlKy5zd2l0Y2gtc2xpZGVye291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWtpbmQtaGludC1yb3d7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxNHB4fS5zZXNzaW9uLW1vZGFsIC5zdWdnZXN0aW9uc3tiYWNrZ3JvdW5kOiNmZmZjZjdmNTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xNCk7Ym9yZGVyLXJhZGl1czoxMnB4O2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MGQsMCAxMnB4IDI4cHggLThweCAjMTQwZTA4MmU7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigyMHB4KSBzYXR1cmF0ZSgxODAlKTtvdmVyZmxvdzpoaWRkZW59LnNlc3Npb24tbW9kYWwgLnN1Z2dlc3Rpb24taXRlbTpob3ZlcntiYWNrZ3JvdW5kOiNlOGM1YWU1Mn0uc2Vzc2lvbi1tb2RhbCAuZXJyb3ItbWVzc2FnZSwuc2V0dGluZ3MtbW9kYWwgLmVycm9yLW1lc3NhZ2V7YmFja2dyb3VuZDojYjI0ZjQ1MWE7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE3OCw3OSw2OSwuMik7Y29sb3I6dmFyKC0tZGFuZ2VyKTtib3JkZXItcmFkaXVzOjEwcHg7cGFkZGluZzoxMHB4IDEycHg7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2Vzc2lvbi1tb2RhbCAuZmllbGQtbGFiZWwsLnNldHRpbmdzLW1vZGFsIC5maWVsZC1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTttYXJnaW4tYm90dG9tOjhweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4tcHJpbWFyeSwuc2V0dGluZ3MtbW9kYWwgLmJ0bi1wcmltYXJ5e2JveC1zaGFkb3c6MCA2cHggMTZweCAtNHB4ICNjNTY1M2Q2NiwwIDJweCA2cHggLTJweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZjM7Ym9yZGVyLXJhZGl1czoxMnB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXIgLmJ0bi1wcmltYXJ5OmhvdmVyLC5zZXR0aW5ncy1tb2RhbCAuYnRuLXByaW1hcnk6aG92ZXJ7Ym94LXNoYWRvdzowIDEwcHggMjRweCAtNHB4ICNjNTY1M2Q3NSwwIDRweCAxMHB4IC0ycHggI2M1NjUzZDU3LGluc2V0IDAgMXB4ICNmZmZmZmY0MH0uc2Vzc2lvbi1tb2RhbCAuYnRuLXNlY29uZGFyeSwuc2V0dGluZ3MtbW9kYWwgLmJ0bi1zZWNvbmRhcnl7YmFja2dyb3VuZDojZmZmZmZmYzc7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTQpO2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwYTtib3JkZXItcmFkaXVzOjEycHh9LnNlc3Npb24tbW9kYWwgLmJ0bi1zZWNvbmRhcnk6aG92ZXIsLnNldHRpbmdzLW1vZGFsIC5idG4tc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQ6I2ZmZjtib3JkZXItY29sb3I6IzdkNWIzOTNkO2JveC1zaGFkb3c6MCA0cHggMTJweCAjN2Q1YjM5MTR9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zaWRlYmFye2JvcmRlci1yaWdodDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtwYWRkaW5nLXJpZ2h0OjEycHh9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zaWRlYmFyLXRpdGxle2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFic3tnYXA6MnB4fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFie3BhZGRpbmc6MTFweCAxNHB4O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JveC1zaGFkb3c6bm9uZTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNHMgZWFzZSxjb2xvciAuMTRzIGVhc2UsdHJhbnNmb3JtIC4xNHMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFiOmJlZm9yZXtkaXNwbGF5Om5vbmV9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10YWI6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MGY7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0cmFuc2Zvcm06bm9uZTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10YWIuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjIsI2ZmZjRlOGM3KTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2M1NjUzZDQwLGluc2V0IDAgMXB4ICNmZmZmZmZlNixpbnNldCAwIC0xcHggI2M1NjUzZDE0LDAgNHB4IDE0cHggLTRweCAjYzU2NTNkMzgsMCAxcHggM3B4ICM3ZDViMzkwZn0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYi5hY3RpdmUgLnNldHRpbmdzLXRhYi1tZXRhe2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYi1tYWlue2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzotLjAwNWVtfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFiLW1ldGF7Zm9udC1zaXplOi43MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcGFuZWwtaGVhZGVye21hcmdpbjowIDAgMTZweDtwYWRkaW5nLWJvdHRvbToxNHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1wYW5lbC10aXRsZXtmb250LXNpemU6MS4xODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzotLjAyZW19LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1wYW5lbC1kZXNje2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWNhcmQsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYWJvdXQtaW5mbywuc2V0dGluZ3MtbW9kYWwgLnByZXNldC1pdGVte2JhY2tncm91bmQ6I2ZmZmZmZmE2O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFib3V0LXJvd3tib3JkZXItYm90dG9tLWNvbG9yOiM3ZDViMzkxNH0uc2V0dGluZ3MtbW9kYWwgLnN3aXRjaC1jYXJkLWxpc3R7Z2FwOjhweH0uc2V0dGluZ3MtbW9kYWwgLnN3aXRjaC1jYXJke2JhY2tncm91bmQ6I2ZmZjk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMSk7Ym9yZGVyLXJhZGl1czoxNHB4O2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwODt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXR0aW5ncy1tb2RhbCAuc3dpdGNoLWNhcmQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZDk7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTBmfS5zZXR0aW5ncy1tb2RhbCAuc3dpdGNoLWNhcmQ6aGFzKC5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQpe2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmN2VmLCNmZmYxZGUpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLWFjY2VudC1tdXRlZCksMCA0cHggMTJweCAjYzU2NTNkMWF9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10b2dnbGUtcm93LC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcmFuZ2Utcm93e2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtib3JkZXItcmFkaXVzOjEycHg7Ym94LXNoYWRvdzowIDFweCAxcHggIzdkNWIzOTA1O2JhY2tkcm9wLWZpbHRlcjpub25lOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOm5vbmV9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkLWljb24sLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zZWN0aW9uLWljb257YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNjNTY1M2QyOSwjYzU2NTNkMGYpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4xOCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmOTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9ue2JhY2tncm91bmQ6I2ZmZmZmZmE2O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTRweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMTZzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbjpob3ZlcntiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTE0fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uLnNlbGVjdGVkLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uW2FyaWEtcHJlc3NlZD10cnVlXXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZjdlZiwjZmZmMWRlKTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgNHB4IDEycHggI2M1NjUzZDFmfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtY29ubmVjdC11cmwtYm94e2JhY2tncm91bmQ6IzdkNWIzOTBkO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEyKTtib3JkZXItcmFkaXVzOjEycHh9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1hY3Rpb25zLXN0aWNreXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmNmNzAwLCNmZmZjZjdkOSAyOHB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXNlY3Rpb24tdGl0bGV7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDA1ZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtaGVhZGVye3BhZGRpbmc6MTZweCAxOHB4IDE0cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWJvZHksLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1ib2R5e3BhZGRpbmc6MTRweCAxOHB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXJ7cGFkZGluZzoxMnB4IDE4cHggMThweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtdGl0bGUsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC10aXRsZS1ncm91cCAubW9kYWwtdGl0bGV7Zm9udC1zaXplOjEuMTI1cmVtfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcGFuZWwtdGl0bGV7Zm9udC1zaXplOjEuMDYyNXJlbX19LnNpZGViYXJ7YmFja2dyb3VuZDojZmZmY2Y3Yjg7Ym9yZGVyLXJpZ2h0Oi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNTUpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDM2cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMzZweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkwZiw0cHggMCAzMnB4IC04cHggIzE0MGUwODJlfS5zaWRlYmFyLm9wZW57Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkwZiwxMnB4IDAgNDhweCAtMTJweCAjMTQwZTA4NDd9LnNpZGViYXIucGlubmVke2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MGYsMnB4IDAgMTJweCAtOHB4ICMxNDBlMDgxZn0uZHJhd2VyLWJhY2tkcm9we2JhY2tncm91bmQ6IzE0MGUwODUyO2JhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCl9LmRyYXdlci1iYWNrZHJvcC5vcGVue2JhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSl9LnNpZGViYXItaGVhZGVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA2KTtwYWRkaW5nOjE0cHggMTZweH0uc2lkZWJhci10aXRsZXtmb250LXNpemU6LjkzNzVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDEyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uc2Vzc2lvbi1jb3VudHtiYWNrZ3JvdW5kOiM3ZDViMzkxNDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7cGFkZGluZzoycHggOXB4O2JvcmRlci1yYWRpdXM6OTk5cHg7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7bGluZS1oZWlnaHQ6MS41fS5zaWRlYmFyLWhlYWRlci1hY3Rpb25zIC5idG4tZ2hvc3QuYnRuLXNtLC5kcmF3ZXItY2xvc2UtYnRue3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7bWluLWhlaWdodDozMnB4O3BhZGRpbmc6MDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Ym9yZGVyOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4yMnMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpfS5zaWRlYmFyLWhlYWRlci1hY3Rpb25zIC5idG4tZ2hvc3QuYnRuLXNtOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmRyYXdlci1jbG9zZS1idG57YmFja2dyb3VuZDojN2Q1YjM5MTJ9LmRyYXdlci1jbG9zZS1idG46aG92ZXJ7YmFja2dyb3VuZDojYjI0ZjQ1MWY7Y29sb3I6dmFyKC0tZGFuZ2VyKTt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKX0uZHJhd2VyLWNsb3NlLWJ0bjphY3RpdmV7YmFja2dyb3VuZDojYjI0ZjQ1MzM7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZykgc2NhbGUoLjkyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LmRyYXdlci1jbG9zZS1idG46Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjNweH0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3d7YmFja2dyb3VuZDojZmZmY2Y3ZGI7Ym9yZGVyOi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNTUpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDI0cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMjRweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkxNCwwIDEycHggMjhweCAtOHB4ICMxNDBlMDgzODtib3JkZXItcmFkaXVzOjEycHg7cGFkZGluZzo2cHh9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVte2JvcmRlci1yYWRpdXM6OXB4O3BhZGRpbmc6OXB4IDEwcHg7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGNvbG9yIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyB2YXIoLS1lYXNlLW91dC1leHBvKX0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3cgLm92ZXJmbG93LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmZlNiwjZmZmY2Y3OTkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkxNCxpbnNldCAwIDFweCAjZmZmZmZmZDl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmFjdGl2ZXtiYWNrZ3JvdW5kOiNjNTY1M2QxZjtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTpzY2FsZSguOTgpfS5zZXNzaW9uLW1hbmFnZS1iYXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6OHB4O3BhZGRpbmc6NHB4IDRweCA0cHggMTBweDtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLWJvdHRvbToxMHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZX0uc2Vzc2lvbi1tYW5hZ2UtYmFyOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTBkfS5zZXNzaW9uLW1hbmFnZS1iYXIgLnNpZGViYXItaW50cm97Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsZXR0ZXItc3BhY2luZzouMDA1ZW19LnNlc3Npb24tbWFuYWdlLWJhci5hY3RpdmV7cG9zaXRpb246c3RpY2t5O3RvcDowO3otaW5kZXg6NjttYXJnaW46LTEwcHggLTEwcHggOHB4O3BhZGRpbmc6OXB4IDEwcHggOXB4IDZweDtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDojZmZmYmY1ZjA7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6c2F0dXJhdGUoMS4yKSBibHVyKDhweCk7YmFja2Ryb3AtZmlsdGVyOnNhdHVyYXRlKDEuMikgYmx1cig4cHgpO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JveC1zaGFkb3c6bm9uZX0uc2Vzc2lvbi1tYW5hZ2UtYmFyLmFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZiZjVmMH0uc2Vzc2lvbi1tYW5hZ2UtZXhpdHtmbGV4LXNocmluazowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE0cyBlYXNlLGNvbG9yIC4xNHMgZWFzZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9LnNlc3Npb24tbWFuYWdlLWV4aXQ6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MWE7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uc2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21pbi13aWR0aDowO2ZsZXg6MTtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo1MDB9LnNlc3Npb24tbWFuYWdlLWNvdW50e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOjIwcHg7aGVpZ2h0OjE4cHg7cGFkZGluZzowIDZweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2JvcmRlci1yYWRpdXM6OTk5cHg7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5zZXNzaW9uLW1hbmFnZS1zdW1tYXJ5LWxhYmVse2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo2MDB9LnNlc3Npb24tbWFuYWdlLXN1bW1hcnktbGFiZWwubXV0ZWR7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC13ZWlnaHQ6NTAwfS5zZXNzaW9uLW1hbmFnZS1hY3Rpb25ze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmbGV4LXNocmluazowfS5zZXNzaW9uLW1hbmFnZS10b2dnbGV7Z2FwOjVweH0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWNsZWFyLWJ0bnttYXJnaW4tbGVmdDphdXRvfS5zZXNzaW9uLWdyb3VwLXRpdGxle3BhZGRpbmc6MTBweCA2cHggOHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjFlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2Vzc2lvbi1ncm91cC10aXRsZTpiZWZvcmV7d2lkdGg6M3B4O2hlaWdodDoxMnB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkscmdiYSgxOTcsMTAxLDYxLC40KSk7b3BhY2l0eToxfS5zZXNzaW9uLWl0ZW17YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MTFweDtwYWRkaW5nOjlweCAxMnB4O21hcmdpbi1ib3R0b206MnB4O2JveC1zaGFkb3c6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2V9LnNlc3Npb24taXRlbTpiZWZvcmV7bGVmdDo0cHg7dG9wOjlweDtib3R0b206OXB4O3dpZHRoOjNweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYWNjZW50KSxyZ2JhKDE5NywxMDEsNjEsLjUpKX0uc2Vzc2lvbi1pdGVtOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTBmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uc2Vzc2lvbi1pdGVtOmhvdmVyOmJlZm9yZXtvcGFjaXR5OjB9LnNlc3Npb24taXRlbS5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdlYiwjZmZmNGU4YmQpO2JvcmRlci1jb2xvcjojYzU2NTNkNDc7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmOGN9LnNlc3Npb24taXRlbS5hY3RpdmU6YmVmb3Jle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGVZKDEpfS5zZXNzaW9uLWl0ZW0uc2VsZWN0ZWR7YmFja2dyb3VuZDojYzU2NTNkMTc7Ym9yZGVyLWNvbG9yOiNjNTY1M2QyZX0uc2Vzc2lvbi1pdGVtLnNlbGVjdGVkOmJlZm9yZXtvcGFjaXR5Oi43O3RyYW5zZm9ybTpzY2FsZVkoMSl9LnNlc3Npb24taXRlbTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45OTIpO3RyYW5zaXRpb24tZHVyYXRpb246LjA4c30uc2Vzc2lvbi10aXRsZSwuc2Vzc2lvbi1jb21tYW5ke2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0uc2Vzc2lvbi10aXRsZS1yb3d7Z2FwOjEwcHh9LnNlc3Npb24tdGltZXtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5zZXNzaW9uLWFjdGl2aXR5e29wYWNpdHk6MTtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtd2VpZ2h0OjUwMH0uc2Vzc2lvbi1zdGF0dXN7cGFkZGluZzoycHggOHB4O2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDJlbX0uc2Vzc2lvbi1pZHtiYWNrZ3JvdW5kOiM3ZDViMzkxNDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtmb250LXNpemU6LjYyNXJlbTtwYWRkaW5nOjEuNXB4IDZweDtib3JkZXItcmFkaXVzOjRweH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHg7bWluLWhlaWdodDoyOHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6IzdkNWIzOTBmO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2JvcmRlcjpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsY29sb3IgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMThzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKX0uc2Vzc2lvbi1hY3Rpb24tYnRuOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTI0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9LnNlc3Npb24tYWN0aW9uLWJ0bi5kZWxldGUtYnRuOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTI0O2NvbG9yOnZhcigtLWRhbmdlcil9LnNlc3Npb24tYWN0aW9uLWJ0bi5tZXJnZS1idG46aG92ZXJ7YmFja2dyb3VuZDojNGY3YTU4Mjk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnNlc3Npb24tYWN0aW9uLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LnNlc3Npb24tYWN0aW9uLWJ0bjpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5zZXNzaW9uLW1hbmFnZS1jaGVjayBzcGFue3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7Ym9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyOjEuNXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yMik7YmFja2dyb3VuZDojZmZmOTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCAjN2Q1YjM5MGE7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlfS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAxcHggM3B4ICNjNTY1M2Q0ZCxpbnNldCAwIDFweCAjZmZmM30uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgaW5wdXQ6Y2hlY2tlZCtzcGFuOmFmdGVye2NvbnRlbnQ6IiI7d2lkdGg6NnB4O2hlaWdodDoxMHB4O2JvcmRlci1yaWdodDoycHggc29saWQgI2ZmZjtib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZmZmO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgtMXB4LC0xcHgpfS5zaWRlYmFyLWZvb3RlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wNik7cGFkZGluZzoxNHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57YmFja2dyb3VuZDojZmZmZmZmNzM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDYpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjhweCA0cHg7Z2FwOjRweDtmb250LXNpemU6LjYyNXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGNvbG9yIC4xNnMgZWFzZSx0cmFuc2Zvcm0gLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG46aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZDk7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyOTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6MCAycHggOHB4ICM3ZDViMzkwZn0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk2KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdmMiwjZmZmMmU0YzcpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yOCk7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAzcHggMTBweCAtM3B4ICNjNTY1M2QzOCxpbnNldCAwIDFweCAjZmZmZmZmYjN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5zaWRlYmFyLWxvZ291dDpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxNDtib3JkZXItY29sb3I6I2IyNGY0NTMzO2NvbG9yOnZhcigtLWRhbmdlcik7b3BhY2l0eToxfS5zaWRlYmFyLWZvb3RlciAuYnRuLXByaW1hcnl7Ym94LXNoYWRvdzowIDZweCAxNnB4IC00cHggI2M1NjUzZDY2LDAgMnB4IDZweCAtMnB4ICNjNTY1M2Q0ZCxpbnNldCAwIDFweCAjZmZmMztib3JkZXItcmFkaXVzOjEycHh9LnNpZGViYXItZm9vdGVyIC5idG4tcHJpbWFyeTpob3Zlcntib3gtc2hhZG93OjAgMTBweCAyNHB4IC00cHggI2M1NjUzZDc1LDAgNHB4IDEwcHggLTJweCAjYzU2NTNkNTcsaW5zZXQgMCAxcHggI2ZmZmZmZjQwfS5zZXNzaW9ucy1saXN0OmVtcHR5OmJlZm9yZXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjgxMjVyZW07bGV0dGVyLXNwYWNpbmc6LjAxZW19QHN1cHBvcnRzIG5vdCAoKGJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSBvciAoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkpey5zaWRlYmFye2JhY2tncm91bmQ6I2ZmZmJmNWZhfS5kcmF3ZXItYmFja2Ryb3B7YmFja2dyb3VuZDojMTQwZTA4OGN9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93e2JhY2tncm91bmQ6I2ZmZmFmMn19Lm1vZGFsLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmc6MThweCAyMnB4IDE2cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZmxleC1zaHJpbms6MDttaW4taGVpZ2h0OjU2cHh9Lm1vZGFsLXRpdGxle2ZvbnQtc2l6ZToxLjA2MjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5tb2RhbC1ib2R5e3BhZGRpbmc6MjJweDtvdmVyZmxvdy15OmF1dG87ZmxleDoxIDEgYXV0bzttaW4taGVpZ2h0OjB9Lm1vZGFsLWJvZHkgLmZpZWxke21hcmdpbi1ib3R0b206MTRweH0ubW9kYWwtYm9keSAuZmllbGQ6bGFzdC1vZi10eXBle21hcmdpbi1ib3R0b206MTZweH0uc2Vzc2lvbi1raW5kLWhpbnQtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHh9LnNlc3Npb24ta2luZC1oaW50LXJvdyAjc2Vzc2lvbi1raW5kLWRlc2NyaXB0aW9ue2ZsZXg6MSAxIGF1dG99LnNlc3Npb24taW5saW5lLXRvZ2dsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3doaXRlLXNwYWNlOm5vd3JhcDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWxhYmVse2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uZmllbGQtaGludHttYXJnaW4tdG9wOjZweDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNX0udG9vbC1jYXJke3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpsZWZ0O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOiNmZmZmZmZhNjtwYWRkaW5nOjE0cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS50b29sLWNhcmQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudC1zb2Z0KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTtib3gtc2hhZG93OjAgOHB4IDI0cHggIzU5M2EyMDFhO2JhY2tncm91bmQ6I2ZmZmZmZmQ5fS50b29sLWNhcmQuYWN0aXZle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2ZmZjdlZmZhO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCksMCA2cHggMjBweCAjNTkzYTIwMTR9c2VsZWN0LmZpZWxkLWlucHV0e2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNCcgaGVpZ2h0PScxNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzhjNzM1Zicgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnJTNFJTNDcGF0aCBkPSdNNiA5bDYgNiA2LTYnLyUzRSUzQy9zdmclM0UiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAxNHB4IGNlbnRlcjtwYWRkaW5nLXJpZ2h0OjQwcHg7Y3Vyc29yOnBvaW50ZXJ9LnN1Z2dlc3Rpb25zLXdyYXB7cG9zaXRpb246cmVsYXRpdmV9LnN1Z2dlc3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO3RvcDpjYWxjKDEwMCUgKyA0cHgpO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6NTA7YmFja2dyb3VuZDojZmZmYWY0ZmE7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS5zdWdnZXN0aW9uLWl0ZW17d2lkdGg6MTAwJTt0ZXh0LWFsaWduOmxlZnQ7cGFkZGluZzoxMHB4IDEycHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5zdWdnZXN0aW9uLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDojZThjNWFlNTd9LnN1Z2dlc3Rpb24taXRlbSBzbWFsbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXJnaW4tdG9wOjJweH0ucmVjZW50LXBhdGhzLWJ1YmJsZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo1cHg7bWFyZ2luLXRvcDo2cHh9LnJlY2VudC1wYXRocy1idWJibGVzOmVtcHR5e2Rpc3BsYXk6bm9uZX0ucmVjZW50LXBhdGgtYnViYmxle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MnB4IDEwcHg7YmFja2dyb3VuZDojZThjNWFlMmU7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo5OTlweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjY4NzVyZW07Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7d2hpdGUtc3BhY2U6bm93cmFwO21heC13aWR0aDoxODBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ucmVjZW50LXBhdGgtYnViYmxlOmhvdmVye2JhY2tncm91bmQ6I2U4YzVhZTY2O2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItaG92ZXIsIHZhcigtLWJvcmRlci1kZWZhdWx0KSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZXJyb3ItbWVzc2FnZXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLWRhbmdlcik7cGFkZGluZzoxMHB4IDEycHg7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTttYXJnaW4tdG9wOjEycHg7YW5pbWF0aW9uOnNoYWtlIC4zcyBlYXNlfUBrZXlmcmFtZXMgc2hha2V7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX0yNSV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KX03NSV7dHJhbnNmb3JtOnRyYW5zbGF0ZSg0cHgpfX0uZmllbGQtaW5wdXRbZGF0YS1lcnJvcj10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1kYW5nZXItbXV0ZWQpfS5oaW50e2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXJnaW4tdG9wOjEycHh9LmVtcHR5LXN0YXRle3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6NDBweCAyMHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODEyNXJlbX0uZW1wdHktc3RhdGUgc3Ryb25ne2Rpc3BsYXk6YmxvY2s7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouOTVyZW07bWFyZ2luLWJvdHRvbTo4cHg7Zm9udC13ZWlnaHQ6NjAwfS5oaWRkZW57ZGlzcGxheTpub25lIWltcG9ydGFudH0ub2ZmbGluZS1iYW5uZXJ7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjgwcHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpO2NvbG9yOiNmZmY7cGFkZGluZzo4cHggMTZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDt6LWluZGV4OjEwMDtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1lbGV2YXRlZCk7YW5pbWF0aW9uOnNsaWRlVXAgLjNzIGVhc2V9QGtleWZyYW1lcyBzbGlkZVVwezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoMjBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgwKX19Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo2cHg7aGVpZ2h0OjZweH06Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTU0ZDtib3JkZXItcmFkaXVzOjNweH06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTgwfS5zZXNzaW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo0cHh9LnNlc3Npb25zLWxpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LnNlc3Npb25zLWxpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTQwO2JvcmRlci1yYWRpdXM6MnB4fS5zZXNzaW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTU2Nn06Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH1idXR0b246Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDowfUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5zaWRlYmFyLnBpbm5lZDpub3QoLmNvbGxhcHNlZCk6bm90KC5vcGVuKXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MH0ubWFpbi1sYXlvdXQuc2lkZWJhci1waW5uZWQ6bm90KC5zaWRlYmFyLWNvbGxhcHNlZCl7cGFkZGluZy1sZWZ0OjB9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiAwcHh9LnNpZGViYXJ7d2lkdGg6bWluKDMwMHB4LGNhbGMoMTAwdncgLSAyMHB4KSk7dG9wOjB9LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA2cHggNnB4O21pbi1oZWlnaHQ6MH0uYnRue21pbi1oZWlnaHQ6NDBweH0uYnRuLXNte21pbi1oZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTBweDtmb250LXNpemU6Ljc1cmVtO2hlaWdodDozNnB4fS5idG4taWNvbnt3aWR0aDozNnB4O2hlaWdodDozNnB4O21pbi1oZWlnaHQ6MzZweH0uY2hhdC1jb250YWluZXJ7cGFkZGluZzowIDEycHggMTJweH0uY2hhdC1tZXNzYWdle21heC13aWR0aDoxMDAlfS5zZXNzaW9uLWl0ZW17bWluLWhlaWdodDo1MnB4O3BhZGRpbmc6MTJweH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7bWluLXdpZHRoOjM2cHg7bWluLWhlaWdodDozNnB4fS5zZXNzaW9uLW1hbmFnZS1iYXIgLmJ0bnttaW4taGVpZ2h0OjMycHh9LmNsYXVkZS1oaXN0b3J5LXRvZ2dsZXttaW4taGVpZ2h0OjQwcHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRue21pbi1oZWlnaHQ6NDRweH0udHJlZS1pdGVte21pbi1oZWlnaHQ6NDRweDtwYWRkaW5nOjhweCAxMnB4fS5mb2xkZXItcGlja2VyLWl0ZW17bWluLWhlaWdodDo0NHB4fX1AbWVkaWEobWluLXdpZHRoOjc2OXB4KXsuZHJhd2VyLWJhY2tkcm9we2Rpc3BsYXk6bm9uZX19QG1lZGlhKG1heC13aWR0aDo2NDBweCl7OnJvb3R7LS1zaWRlYmFyLXdpZHRoOiAyODBweDstLWZpbGUtcGFuZWwtd2lkdGg6IDEwMCV9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiAwcHh9aHRtbCxib2R5e21pbi1oZWlnaHQ6MTAwZHZoO2hlaWdodDoxMDBkdmh9Ym9keXtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LmFwcC1jb250YWluZXJ7b3ZlcmZsb3c6aGlkZGVufS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDozMHB4O2hlaWdodDozMHB4O2JvcmRlci1yYWRpdXM6NnB4fS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZSAuaGFtYnVyZ2VyLWljb257d2lkdGg6MTNweDtoZWlnaHQ6OXB4fS5zaWRlYmFye3RvcDowfS5zaWRlYmFyLWhlYWRlcntwYWRkaW5nOjEwcHggMTJweDttaW4taGVpZ2h0OjQ4cHg7Z2FwOjhweH0uc2lkZWJhci1oZWFkZXItYWN0aW9uc3tnYXA6NHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25ze2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCwxZnIpO2dhcDo0cHh9LnNpZGViYXItZm9vdGVyLWFjdGlvbnM6aGFzKC5zaWRlYmFyLWJhY2stdG8tbmF0aXZlKTpoYXMoLnNpZGViYXItc3dpdGNoLXNlcnZlcil7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg1LDFmcil9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bnttaW4taGVpZ2h0OjQwcHg7cGFkZGluZzo2cHggNHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG4gc3BhbntkaXNwbGF5Om5vbmV9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0biBzdmd7d2lkdGg6MThweDtoZWlnaHQ6MThweH0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3d7bWluLXdpZHRoOjE4MHB4O21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMjRweCl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVte3BhZGRpbmc6MTFweCAxNHB4O2ZvbnQtc2l6ZTouODc1cmVtfS50ZXJtaW5hbC1oZWFkZXJ7cGFkZGluZzo1cHggOHB4O21pbi1oZWlnaHQ6MzJweH0udGVybWluYWwtdGl0bGV7Z2FwOjRweDtmb250LXNpemU6LjY4NzVyZW19LnRlcm1pbmFsLWluZm97Zm9udC1zaXplOi41NjI1cmVtfS5jdXJyZW50LXRhc2t7Zm9udC1zaXplOi41NjI1cmVtO3BhZGRpbmc6MXB4IDZweCAxcHggNHB4O2dhcDozcHh9Lm1haW4taGVhZGVyLXJvd3twYWRkaW5nOjJweCA2cHg7Z2FwOjRweH0udG9wYmFyLWJyYW5kLC50b3BiYXItY3dke2Rpc3BsYXk6bm9uZX0udG9wYmFyLXNlc3Npb24tdGl0bGV7bWF4LXdpZHRoOjE0MHB4O2ZvbnQtc2l6ZTouNzhyZW19LnNlc3Npb24tc3RhdHVzLXBpbGx7Zm9udC1zaXplOi42MjVyZW07cGFkZGluZzoxcHggN3B4IDFweCA1cHg7bWF4LXdpZHRoOjExMHB4fS5zZXNzaW9uLXN0YXR1cy1waWxsIC5zZXNzaW9uLXN0YXR1cy1kb3R7d2lkdGg6NXB4O2hlaWdodDo1cHh9LnRvcGJhci1tb3JlLW1lbnV7bWluLXdpZHRoOjE1NnB4fS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5e3RvcDo2cHg7cmlnaHQ6NnB4O3BhZGRpbmc6MnB4O2dhcDoxcHh9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktYnRue21pbi13aWR0aDoyNnB4O2hlaWdodDoyNnB4O2ZvbnQtc2l6ZTouNzVyZW19LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktbGFiZWx7bWluLXdpZHRoOjI4cHg7Zm9udC1zaXplOi41NjI1cmVtO3BhZGRpbmc6MCAycHh9Lm1haW4tbGF5b3V0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4OjE7bWluLWhlaWdodDowO2hlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWxlZnQ6MH0uc2lkZWJhcnt0b3A6MDt3aWR0aDptaW4oMjYwcHgsY2FsYygxMDB2dyAtIDEycHgpKTttYXgtaGVpZ2h0Om5vbmU7Ym9yZGVyLWJvdHRvbTpub25lfS5tYWluLWNvbnRlbnR7ZmxleDoxO21pbi1oZWlnaHQ6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO292ZXJmbG93OmhpZGRlbn0udGVybWluYWwtY29udGFpbmVye2ZsZXg6MSAxIGF1dG87bWluLWhlaWdodDowO21heC1oZWlnaHQ6bm9uZX0uc2Vzc2lvbnMtbGlzdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXg6MSAwIGF1dG87bWluLWhlaWdodDowO292ZXJmbG93OnZpc2libGU7cGFkZGluZzo0cHh9LnNlc3Npb24taXRlbXt3aWR0aDoxMDAlO21heC13aWR0aDpub25lO21hcmdpbi1ib3R0b206NHB4O3BhZGRpbmc6OHB4IDEwcHg7bWluLWhlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6NnB4fS5zZXNzaW9uLWFjdGlvbi1idG57d2lkdGg6MzJweDtoZWlnaHQ6MzJweDttaW4taGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7Ym9yZGVyLXJhZGl1czo2cHh9LmlucHV0LXBhbmVse3otaW5kZXg6MzA7cGFkZGluZzo0cHggNnB4O3BhZGRpbmctYm90dG9tOmNhbGMoNnB4ICsgdmFyKC0taW5wdXQtc2FmZS1ib3R0b20sIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKSArIHZhcigtLWtleWJvYXJkLW9mZnNldCwgMHB4KSk7ZmxleDowIDAgYXV0bzttYXJnaW4tdG9wOmF1dG87YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmNmYxZTg4MCwjZjZmMWU4ZTAgMzAlLCNmNmYxZTgpLCNmNmYxZTg7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCl9LmlucHV0LXRleHRhcmVhe3BhZGRpbmctYm90dG9tOjRweH0uaW5wdXQtY29tcG9zZXJ7Ym9yZGVyLXJhZGl1czoxNHB4O2JveC1zaGFkb3c6MCAzcHggMTRweCAjNTkzYTIwMTJ9LmJ0bi1jaXJjbGV7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtib3JkZXItcmFkaXVzOjUwJX0uYnRuLWNpcmNsZS1zZW5kIHN2ZywuYnRuLWNpcmNsZS1zdG9wIHN2Z3t3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS5pbnB1dC10ZXh0YXJlYSwuZmllbGQtaW5wdXR7Zm9udC1zaXplOjE2cHh9LmlucHV0LXRleHRhcmVhe21pbi1oZWlnaHQ6MzJweDtwYWRkaW5nOjdweCAzMHB4IDVweCA4cHg7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MS4zNX0uaW5wdXQtdGV4dGFyZWE6OnBsYWNlaG9sZGVye2ZvbnQtc2l6ZToxNXB4fS5jaGF0LW1vZGUtc2VsZWN0e21heC13aWR0aDo2NXB4O2ZvbnQtc2l6ZTouNTYyNXJlbTtoZWlnaHQ6MjJweDttaW4taGVpZ2h0OjIycHg7cGFkZGluZzowIDE0cHggMCA0cHg7Ym9yZGVyLXJhZGl1czo1cHh9LmlucHV0LWhpbnR7Zm9udC1zaXplOi40NXJlbTttYXgtd2lkdGg6MThjaDtvcGFjaXR5Oi42fS50ZXJtaW5hbC1qdW1wLWJvdHRvbXt3aWR0aDozMnB4O2hlaWdodDozMnB4O3BhZGRpbmc6MDtyaWdodDoxMHB4O2JvdHRvbToxMnB4fS5jaGF0LXVucmVhZC1idWJibGV7aGVpZ2h0OjMwcHg7bWluLXdpZHRoOjMwcHg7cmlnaHQ6MTBweDtib3R0b206OHB4O3BhZGRpbmc6MCA5cHg7Zm9udC1zaXplOi43MnJlbX0uY2hhdC11bnJlYWQtYnViYmxlLmhhcy11bnJlYWR7cGFkZGluZzowIDExcHggMCA5cHh9LmNoYXQtdW5yZWFkLWJ1YmJsZS1jb3VudHtmb250LXNpemU6LjcycmVtfS5taW5pLWtleWJvYXJkLWZhYnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2JvdHRvbTo1MHB4O3JpZ2h0OjEwcHg7Zm9udC1zaXplOjFyZW19Lm1pbmkta2V5Ym9hcmR7Ym90dG9tOjUwcHg7cmlnaHQ6OHB4O2xlZnQ6OHB4O21pbi13aWR0aDowO2JvcmRlci1yYWRpdXM6MTBweH0uY2hhdC1jb250YWluZXJ7bWluLWhlaWdodDowO2ZsZXg6MSAxIGF1dG87b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6bm9uZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmNoYXQtY29udGFpbmVyLmFjdGl2ZXtkaXNwbGF5OmZsZXh9LmZvbGRlci1waWNrZXItY29udGFpbmVye21hcmdpbi1ib3R0b206NHB4fS5mb2xkZXItcGlja2VyLXF1aWNrLWJ0bnttaW4taGVpZ2h0OjMycHg7cGFkZGluZzo2cHggMTBweDtmb250LXNpemU6LjY4NzVyZW07Ym9yZGVyLXJhZGl1czo2cHh9LmZvbGRlci1icmVhZGNydW1ie3BhZGRpbmc6NHB4IDZweDtmb250LXNpemU6LjU2MjVyZW07bWFyZ2luLWJvdHRvbTozcHg7b3ZlcmZsb3cteDphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4LXdyYXA6bm93cmFwfS5mb2xkZXItcGlja2Vye3BhZGRpbmc6OHB4IDEwcHg7bWluLWhlaWdodDozNnB4fS5mb2xkZXItcGlja2VyLWlucHV0e2ZvbnQtc2l6ZToxNnB4O3BhZGRpbmc6NnB4fS5mb2xkZXItcGlja2VyLWRyb3Bkb3due21heC1oZWlnaHQ6MTgwcHh9LmZvbGRlci1waWNrZXItaXRlbXtwYWRkaW5nOjhweCAxMHB4O21pbi1oZWlnaHQ6MzZweH0uZm9sZGVyLXJlY2VudC1pdGVte3BhZGRpbmc6NnB4IDEwcHg7bWluLWhlaWdodDozNnB4fS5mb2xkZXItcGlja2VyLWNvbXBhY3Qtcm93e3BhZGRpbmc6NnB4fS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaW5wdXR7Zm9udC1zaXplOi42MjVyZW19LndvcmtpbmctZGlyLWluZGljYXRvcntmb250LXNpemU6LjU2MjVyZW07cGFkZGluZzoxcHggNHB4O21heC13aWR0aDoxMjBweH0udG9kby1wcm9ncmVzcy1oZWFkZXJ7cGFkZGluZzozcHggNnB4O2dhcDo0cHh9LnRvZG8tcHJvZ3Jlc3MtY291bnRlciwudG9kby1wcm9ncmVzcy10YXNre2ZvbnQtc2l6ZTouNTYyNXJlbX0udG9kby1wcm9ncmVzcy1jaGV2cm9ue3dpZHRoOjEycHg7aGVpZ2h0OjEycHh9LnRvZG8tcHJvZ3Jlc3MtYm9keXtwYWRkaW5nOjRweCA2cHh9LmxvZ2luLWNvbnRhaW5lcnttaW4taGVpZ2h0OjEwMGR2aDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O3BhZGRpbmc6OHB4IDhweCBjYWxjKDhweCArIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKX0ubG9naW4tY2FyZHttYXJnaW4tdG9wOm1heCg2cHgsZW52KHNhZmUtYXJlYS1pbnNldC10b3AsMHB4KSl9LmxvZ2luLWhlYWRlcntwYWRkaW5nOjE0cHggMTJweCAxMHB4fS5sb2dpbi1ib2R5e3BhZGRpbmc6MTJweH0uYnRue21pbi1oZWlnaHQ6NDBweH0uYnRuLXNte21pbi1oZWlnaHQ6MzJweH0uY2hhdC1tZXNzYWdlLWJ1YmJsZXtwYWRkaW5nOjhweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW19LmNoYXQtbWVzc2FnZS1hdmF0YXJ7Zm9udC1zaXplOi42ODc1cmVtfS5tb2RhbC1iYWNrZHJvcHtwYWRkaW5nOjhweDtwYWRkaW5nLXRvcDptYXgoOHB4LHZhcigtLXdhbmQtc2FmZS10b3ApKTtwYWRkaW5nLWxlZnQ6bWF4KDhweCx2YXIoLS13YW5kLXNhZmUtbGVmdCkpO3BhZGRpbmctcmlnaHQ6bWF4KDhweCx2YXIoLS13YW5kLXNhZmUtcmlnaHQpKTthbGlnbi1pdGVtczpmbGV4LWVuZH0ubW9kYWx7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDo4NXZoO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKSB2YXIoLS1yYWRpdXMtbWQpIDAgMDttYXJnaW4tYm90dG9tOnZhcigtLXNhZmUtYm90dG9tLCAwcHgpfS5tb2RhbC1oZWFkZXJ7cGFkZGluZzoxMHB4IDEycHg7bWluLWhlaWdodDo0MHB4fS5tb2RhbC1ib2R5e3BhZGRpbmc6MTBweCAxMnB4fS5tb2RhbC1mb290ZXJ7cGFkZGluZzo4cHggMTJweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVye3BhZGRpbmc6MTBweCAxMnB4IDE0cHh9LnRvb2wtY2FyZHtwYWRkaW5nOjEwcHg7bWluLWhlaWdodDozNnB4fS5tYWluLWNvbnRlbnQuZmlsZS1wYW5lbC1vcGVue21hcmdpbi1yaWdodDowfS5maWxlLXNpZGUtcGFuZWx7d2lkdGg6MTAwJX0uZmlsZS1zaWRlLXBhbmVsLWhlYWRlcntwYWRkaW5nOjEwcHggMTJweDttaW4taGVpZ2h0OjQ4cHh9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRue3dpZHRoOjM0cHg7aGVpZ2h0OjM0cHh9LmZpbGUtZXhwbG9yZXItaGVhZGVye3BhZGRpbmc6NnB4IDEwcHggNHB4O2dhcDo2cHh9LmZpbGUtZXhwbG9yZXItdXB7d2lkdGg6MzJweDtoZWlnaHQ6MzJweH0uZmlsZS1zZWFyY2gtYm94e3BhZGRpbmc6NnB4IDEwcHggOHB4fS5maWxlLXNlYXJjaC1pY29ue2xlZnQ6MjBweH0uZmlsZS1zZWFyY2gtY2xlYXJ7cmlnaHQ6MTZweH0uZmlsZS1zZWFyY2gtaW5wdXR7bWluLWhlaWdodDozNHB4O2ZvbnQtc2l6ZToxNnB4O3BhZGRpbmc6N3B4IDMycHggN3B4IDMwcHh9LmJsYW5rLWNoYXR7cGFkZGluZzoxNnB4IDEycHg7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uYmxhbmstY2hhdC1pbm5lcnttYXgtd2lkdGg6MTAwJX0uYmxhbmstY2hhdC1sb2dve3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjI0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O21hcmdpbi1ib3R0b206MTBweH0uYmxhbmstY2hhdC10aXRsZXtmb250LXNpemU6MS4xMjVyZW19LmJsYW5rLWNoYXQtc3VidGl0bGV7Zm9udC1zaXplOi43NXJlbTttYXJnaW4tYm90dG9tOjE2cHh9LmJsYW5rLWNoYXQtdG9vbHN7Z2FwOjRweDttYXJnaW4tYm90dG9tOjhweH0uYmxhbmstY2hhdC10b29sLWJ0bntwYWRkaW5nOjZweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW07bWluLWhlaWdodDo0NHB4fS5ub3RpZmljYXRpb24tYnViYmxle21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMjRweCl9LmJsYW5rLWNoYXQtY3dkLWRyb3Bkb3due21pbi13aWR0aDowO3dpZHRoOmNhbGMoMTAwdncgLSAzMnB4KTttYXgtd2lkdGg6MzIwcHh9LnRvYXN0LW1lc3NhZ2V7bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAzMnB4KX19QG1lZGlhKG1pbi13aWR0aDozOTFweClhbmQgKG1heC13aWR0aDo0MjBweCl7LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA2cHggNnB4O3BhZGRpbmc6NnB4fS5pbnB1dC1wYW5lbHtwYWRkaW5nOjZweCAxMHB4O3BhZGRpbmctYm90dG9tOmNhbGMoOHB4ICsgdmFyKC0taW5wdXQtc2FmZS1ib3R0b20sIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKSl9fUBtZWRpYShtYXgtd2lkdGg6MzkwcHgpey5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDoyOHB4O2hlaWdodDoyOHB4fS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZSAuaGFtYnVyZ2VyLWljb257d2lkdGg6MTFweDtoZWlnaHQ6OHB4fS50ZXJtaW5hbC1oZWFkZXJ7cGFkZGluZzo0cHggNnB4O21pbi1oZWlnaHQ6MjhweH0udGVybWluYWwtaW5mb3tkaXNwbGF5Om5vbmV9LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA0cHggNHB4O3BhZGRpbmc6NHB4fS5pbnB1dC1wYW5lbHtwYWRkaW5nOjVweCA2cHg7cGFkZGluZy1ib3R0b206Y2FsYyg2cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKX0uaW5wdXQtY29tcG9zZXJ7Ym9yZGVyLXJhZGl1czo4cHh9LmlucHV0LXRleHRhcmVhe21pbi1oZWlnaHQ6MjhweDtwYWRkaW5nOjVweCAyOHB4IDJweCA2cHg7Zm9udC1zaXplOjE2cHh9LmJ0bi1jaXJjbGV7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDttaW4td2lkdGg6MjhweH0uc2Vzc2lvbi1pdGVte3BhZGRpbmc6NnB4IDhweDttaW4taGVpZ2h0OjQwcHh9LnNlc3Npb24tYWN0aW9uLWJ0bnt3aWR0aDozMHB4O2hlaWdodDozMHB4O21pbi13aWR0aDozMHB4O21pbi1oZWlnaHQ6MzBweH0uc2lkZWJhcnt0b3A6MDt3aWR0aDptaW4oMjQwcHgsY2FsYygxMDB2dyAtIDEwcHgpKX0uc2lkZWJhci1mb290ZXItYWN0aW9uc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDQsMWZyKX0uc2lkZWJhci1mb290ZXItYWN0aW9uczpoYXMoLnNpZGViYXItYmFjay10by1uYXRpdmUpOmhhcyguc2lkZWJhci1zd2l0Y2gtc2VydmVyKXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDUsMWZyKX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuIHNwYW57ZGlzcGxheTpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57bWluLWhlaWdodDozNnB4O3BhZGRpbmc6NnB4fS5tb2RhbHttYXgtaGVpZ2h0Ojgwdmh9Lm1vZGFsLWhlYWRlcntwYWRkaW5nOjhweCAxMHB4O21pbi1oZWlnaHQ6MzZweH0ubW9kYWwtYm9keXtwYWRkaW5nOjhweCAxMHB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXJ7cGFkZGluZzo4cHggMTBweCAxMnB4fS5maWVsZC1yb3d7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MH0uYnRue21pbi1oZWlnaHQ6MzZweDtwYWRkaW5nOjhweCAxMnB4fS5idG4tc217bWluLWhlaWdodDoyOHB4O3BhZGRpbmc6NHB4IDhweH19QG1lZGlhKG1pbi13aWR0aDo2NDFweClhbmQgKG1heC13aWR0aDo3NjhweCl7LnNpZGViYXJ7dG9wOjA7d2lkdGg6bWluKDMyMHB4LGNhbGMoMTAwdncgLSA0MHB4KSl9LnNlc3Npb24taXRlbXttaW4taGVpZ2h0OjUycHg7cGFkZGluZzoxMXB4IDEycHh9LnNlc3Npb24tYWN0aW9uLWJ0bnt3aWR0aDozNHB4O2hlaWdodDozNHB4O21pbi13aWR0aDozNHB4O21pbi1oZWlnaHQ6MzRweH0uYnRue21pbi1oZWlnaHQ6NDJweH0uYnRuLXNte21pbi1oZWlnaHQ6MzZweH0uZmxvYXRpbmctdG9nZ2xle21pbi13aWR0aDo0OHB4O21pbi1oZWlnaHQ6NDhweH19QG1lZGlhKG1heC1oZWlnaHQ6NDIwcHgpYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDoyOHB4O2hlaWdodDoyOHB4fS5zaWRlYmFye3RvcDowfS50ZXJtaW5hbC1jb250YWluZXJ7bWluLWhlaWdodDo1NXZoO21hcmdpbjo2cHg7cGFkZGluZzo4cHh9LmNoYXQtY29udGFpbmVye3BhZGRpbmc6MCAxMHB4IDhweH0uaW5wdXQtcGFuZWx7cGFkZGluZzo4cHg7cGFkZGluZy1ib3R0b206Y2FsYyg4cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKX19QG1lZGlhKG1heC13aWR0aDo0ODBweCl7LmNoYXQtY29udGFpbmVye3BhZGRpbmc6MCA2cHggOHB4fS5jaGF0LW1lc3NhZ2Vze3BhZGRpbmctbGVmdDoycHg7cGFkZGluZy1yaWdodDoycHg7Z2FwOjEycHh9LmNoYXQtbWVzc2FnZXstLWNoYXQtY2FyZC1tYXgtd2lkdGg6IDEwMCV9LnRvb2wtdXNlLWhlYWRlcntmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjRweDtwYWRkaW5nOjhweCAxMnB4fS50b29sLXVzZS1maWxle21heC13aWR0aDoxMDAlfS50b29sLXVzZS1ib2R5e3BhZGRpbmc6MTBweCAxMnB4fS5zdWJhZ2VudC1yZXBseXtwYWRkaW5nOjlweCAxMnB4fS5zdWJhZ2VudC1yZXBseS5jb2xsYXBzaWJsZXtwYWRkaW5nOjB9LnN1YmFnZW50LXJlcGx5LmZpbmFse3BhZGRpbmc6OXB4IDExcHh9LnN1YmFnZW50LXBhbmVse21hcmdpbjo2cHggMH0uc3ViYWdlbnQtcGFuZWwtaGVhZGVye3BhZGRpbmc6N3B4IDEwcHg7Z2FwOjZweDtmb250LXNpemU6Ljc0cmVtfS5zdWJhZ2VudC1wYW5lbC1hdHRyaWJ1dGlvbnt3aGl0ZS1zcGFjZTpub3JtYWw7bGluZS1oZWlnaHQ6MS40fS5zdWJhZ2VudC1wYW5lbC10YWd7bWFyZ2luOjAgNHB4O3BhZGRpbmc6MCA0cHh9LnN1YmFnZW50LXBhbmVsLWJvZHl7cGFkZGluZzo5cHggMTFweH0uc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD1mYWxzZV0gLnN1YmFnZW50LXBhbmVsLWJvZHl7bWF4LWhlaWdodDoxOGVtfS5zdWJhZ2VudC1wYW5lbFtkYXRhLWV4cGFuZGVkPXRydWVdIC5zdWJhZ2VudC1wYW5lbC1ib2R5e21heC1oZWlnaHQ6NjB2aH0uc3ViYWdlbnQtcGFuZWwtZm9vdGVye3BhZGRpbmc6NXB4IDEwcHh9LnN1YmFnZW50LXBhbmVsLWZvb3Rlci1oaW50e2Rpc3BsYXk6bm9uZX0ubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9ja3ttYXJnaW46OHB4IDB9Lm1hcmtkb3duLWNvbnRlbnQgcHJlLC5tYXJrZG93bi1jb250ZW50IC5jb2RlLWJsb2NrIHByZSwuc3ViYWdlbnQtcmVwbHkgcHJle3BhZGRpbmc6MTBweH0uZGlmZi1jb2x1bW5ze2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZGlmZi1jb2wsLmRpZmYtY29sLWhhbGYsLmRpZmYtY29sLWZ1bGx7ZmxleDoxIDEgYXV0bzt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlfS50ZXJtLWhlYWRlciwuZGlmZi1oZWFkZXJ7ZmxleC13cmFwOndyYXA7cm93LWdhcDo0cHh9LmRpZmYtcGF0aHtmbGV4LWJhc2lzOjEwMCU7b3JkZXI6OTl9LmlubGluZS10b29sLXJvd3tmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjJweH0uaW5saW5lLXRvb2wtbWV0YXttYXgtd2lkdGg6MTAwJTtmbGV4LWJhc2lzOjEwMCU7cGFkZGluZy1sZWZ0OjIycHh9fS5zZXNzaW9uLWtpbmQtYmFkZ2V7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjE4cHg7cGFkZGluZzowIDZweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtmbGV4LXNocmluazowfS5zZXNzaW9uLWtpbmQtYmFkZ2UucHR5e2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOiM3ODgwOGMxZjtib3JkZXItY29sb3I6Izc4ODA4YzJlfS5zZXNzaW9uLWtpbmQtYmFkZ2Uuc3RydWN0dXJlZHtjb2xvcjojZDE4YjUyO2JhY2tncm91bmQ6I2Q3N2E1MjFhO2JvcmRlci1jb2xvcjojZDc3YTUyMzh9LnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZXtjb2xvcjojMmY2ZjU0O2JhY2tncm91bmQ6IzRmN2E1ODFmO2JvcmRlci1jb2xvcjojNGY3YTU4Mzh9LnNlc3Npb24ta2luZC1kaXNwbGF5e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MXB4IDZweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6IzhhNGIyNDtiYWNrZ3JvdW5kOiNkNzdhNTIxZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjE1LDEyMiw4MiwuMil9LnN0cnVjdHVyZWQtdG9vbC1oaW50e21hcmdpbjo0cHggMCA4cHg7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOjEwcHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOiNkNzdhNTIxNDtib3JkZXI6MXB4IGRhc2hlZCByZ2JhKDIxNSwxMjIsODIsLjE4KX0uYmxhbmstY2hhdHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleDoxO3BhZGRpbmc6MjBweCAxNnB4O21pbi1oZWlnaHQ6MDtvdmVyZmxvdzphdXRvfS5ibGFuay1jaGF0LWlubmVye3dpZHRoOjEwMCU7bWF4LXdpZHRoOjU2MHB4O3RleHQtYWxpZ246Y2VudGVyfS5ibGFuay1jaGF0LWxvZ297d2lkdGg6NTZweDtoZWlnaHQ6NTZweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2Q3N2E1MiwjYTk1MTMwKTtib3JkZXItcmFkaXVzOjE2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToyOHB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojZmZmO21hcmdpbjowIGF1dG8gMTRweDtib3gtc2hhZG93OjAgNHB4IDE2cHggI2M1NjUzZDM4fS5ibGFuay1jaGF0LXRpdGxle2ZvbnQtc2l6ZToxLjM3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTttYXJnaW46MCAwIDZweH0uYmxhbmstY2hhdC1zdWJ0aXRsZXtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWFyZ2luOjAgMCAyMHB4fS5ibGFuay1jaGF0LXRvb2xze2Rpc3BsYXk6ZmxleDtnYXA6OHB4O2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLWJvdHRvbToxMnB4O2ZsZXgtd3JhcDp3cmFwfS5ibGFuay1jaGF0LXRvb2wtYnRue3BhZGRpbmc6OHB4IDE0cHg7Ym9yZGVyOjEuNXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojZmZmZmZmYjM7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21pbi1oZWlnaHQ6NDBweH0uYmxhbmstY2hhdC10b29sLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzU5M2EyMDE0fS5ibGFuay1jaGF0LXRvb2wtYnRuIC50b29sLWljb257Zm9udC1zaXplOjEuMTI1cmVtfS5ibGFuay1jaGF0LWN3ZC13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbi10b3A6OHB4fS5ibGFuay1jaGF0LWN3ZHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3VzZXItc2VsZWN0Om5vbmV9LmJsYW5rLWNoYXQtY3dkOmhvdmVye2NvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpfS5ibGFuay1jaGF0LWN3ZC1pY29ue2ZvbnQtc2l6ZTouODEyNXJlbX0uYmxhbmstY2hhdC1jd2QtcGF0aHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO21heC13aWR0aDoyODBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmJsYW5rLWNoYXQtY3dkLWFycm93e2ZvbnQtc2l6ZTouNjI1cmVtO29wYWNpdHk6LjY7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uYmxhbmstY2hhdC1jd2QtZHJvcGRvd257cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwMCU7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTttaW4td2lkdGg6MjYwcHg7bWF4LXdpZHRoOjQwMHB4O21heC1oZWlnaHQ6MjQwcHg7b3ZlcmZsb3cteTphdXRvO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2JveC1zaGFkb3c6MCA0cHggMTZweCAjMDAwMDAwMWE7ei1pbmRleDo1MDttYXJnaW4tdG9wOjRweDtwYWRkaW5nOjRweH0uYmxhbmstY2hhdC1jd2QtaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmJsYW5rLWNoYXQtY3dkLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCl9LmJsYW5rLWNoYXQtY3dkLWl0ZW0uYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtd2VpZ2h0OjUwMH0uYmxhbmstY2hhdC1jd2QtaXRlbS1sYWJlbHtmb250LXNpemU6LjYyNXJlbTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtwYWRkaW5nOjFweCA1cHg7Ym9yZGVyLXJhZGl1czozcHg7Zm9udC13ZWlnaHQ6NTAwO3doaXRlLXNwYWNlOm5vd3JhcH0uYmxhbmstY2hhdC1jd2QtaXRlbS1wYXRoe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5ibGFuay1jaGF0LWN3ZC1sb2FkaW5ne3BhZGRpbmc6OHB4IDEwcHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0ZXh0LWFsaWduOmNlbnRlcn0uY2hhdC1tb2RlLXNlbGVjdHtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpwb2ludGVyO291dGxpbmU6bm9uZX0uY2hhdC1tb2RlLXNlbGVjdDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0udG9hc3QtbWVzc2FnZXtwb3NpdGlvbjpmaXhlZDt0b3A6MjRweDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpO3BhZGRpbmc6MTBweCAyMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtmb250LXNpemU6Ljg3NXJlbTt6LWluZGV4Ojk5OTk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbGcpO2FuaW1hdGlvbjp0b2FzdC1pbiAuMjJzIGN1YmljLWJlemllciguMzQsMS41NiwuNjQsMSl9LnRvYXN0LWVycm9ye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKTtjb2xvcjojZmZmfUBrZXlmcmFtZXMgdG9hc3QtaW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgtMTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgwKX19Lm5vdGlmaWNhdGlvbi1idWJibGV7cG9zaXRpb246Zml4ZWQ7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTt6LWluZGV4OjEwMDAwO21pbi13aWR0aDoyMjBweDttYXgtd2lkdGg6MzIwcHg7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LWxnKTtwYWRkaW5nOjhweCAxMnB4O2FuaW1hdGlvbjpub3RpZmljYXRpb24tc2xpZGUtaW4gLjNzIGN1YmljLWJlemllciguMzQsMS41NiwuNjQsMSk7dHJhbnNpdGlvbjp0b3AgLjI1cyBlYXNlLG9wYWNpdHkgLjI1cyBlYXNlfS5ub3RpZmljYXRpb24tYnViYmxlLnNsaWRlLW91dHthbmltYXRpb246bm90aWZpY2F0aW9uLXNsaWRlLW91dCAuMjVzIGVhc2UgZm9yd2FyZHM7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21hcmdpbi1ib3R0b206MnB4fS5ub3RpZmljYXRpb24tYnViYmxlLWljb257d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtmbGV4LXNocmluazowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Zm9udC1zaXplOjEwcHh9Lm5vdGlmaWNhdGlvbi1idWJibGUtaWNvbi5pbmZve2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtjb2xvcjojZmZmfS5ub3RpZmljYXRpb24tYnViYmxlLWljb24ud2FybmluZ3tiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpO2NvbG9yOiNmZmZ9Lm5vdGlmaWNhdGlvbi1idWJibGUtaWNvbi5zdWNjZXNze2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcyk7Y29sb3I6I2ZmZn0ubm90aWZpY2F0aW9uLWJ1YmJsZS10aXRsZXtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS1mZy1wcmltYXJ5KTtmbGV4OjE7bWluLXdpZHRoOjB9Lm5vdGlmaWNhdGlvbi1idWJibGUtY2xvc2V7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO2NvbG9yOnZhcigtLWZnLW11dGVkKTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MXB4IDNweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7ZmxleC1zaHJpbms6MH0ubm90aWZpY2F0aW9uLWJ1YmJsZS1jbG9zZTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLWhvdmVyKTtjb2xvcjp2YXIoLS1mZy1wcmltYXJ5KX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1ib2R5e2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS1mZy1zZWNvbmRhcnkpO2xpbmUtaGVpZ2h0OjEuNDttYXJnaW4tYm90dG9tOjA7bWF4LWhlaWdodDo0LjJlbTtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWxpbmUtY2xhbXA6Mzstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWx9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9uc3ttYXJnaW4tdG9wOjZweDtkaXNwbGF5OmZsZXg7Z2FwOjZweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b257Zm9udC1zaXplOi43cmVtO3BhZGRpbmc6MnB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2N1cnNvcjpwb2ludGVyO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Y29sb3I6dmFyKC0tZmctcHJpbWFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXN9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b246aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy1ob3Zlcil9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b24ucHJpbWFyeXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbi5wcmltYXJ5OmhvdmVye2ZpbHRlcjpicmlnaHRuZXNzKDEuMSl9QGtleWZyYW1lcyBub3RpZmljYXRpb24tc2xpZGUtaW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgtMjBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgwKX19QGtleWZyYW1lcyBub3RpZmljYXRpb24tc2xpZGUtb3V0ezAle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoMCl9dG97b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgtMjBweCl9fS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uOmRpc2FibGVke29wYWNpdHk6LjY7Y3Vyc29yOm5vdC1hbGxvd2VkO2ZpbHRlcjpub25lfS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uLnN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbi5zdWNjZXNzOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2ZpbHRlcjpicmlnaHRuZXNzKDEuMSl9Lm5vdGlmaWNhdGlvbi1idWJibGUudXBkYXRlLWNhcmR7d2lkdGg6bWluKDM2MHB4LGNhbGMoMTAwdncgLSAyNHB4KSk7bWF4LXdpZHRoOm1pbigzNjBweCxjYWxjKDEwMHZ3IC0gMjRweCkpO21pbi13aWR0aDowO3BhZGRpbmc6MTRweCAxNHB4IDEycHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KDEyMCUgMTIwJSBhdCAwJSAwJSx2YXIoLS1hY2NlbnQtbXV0ZWQpIDAlLHRyYW5zcGFyZW50IDU1JSksbGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1iZy1lbGV2YXRlZCkgMCUsdmFyKC0tYmctcHJpbWFyeSkgMTAwJSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3Ryb25nKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy14bCksMCAwIDAgMXB4ICNmZmY2IGluc2V0O292ZXJmbG93OmhpZGRlbjtpc29sYXRpb246aXNvbGF0ZX0udXBkYXRlLWNhcmQtc2hpbmV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDExNWRlZyx0cmFuc3BhcmVudCAwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xOCkgNDUlLHJnYmEoMjU1LDI1NSwyNTUsLjMyKSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTgpIDU1JSx0cmFuc3BhcmVudCAxMDAlKTtiYWNrZ3JvdW5kLXNpemU6MjIwJSAxMDAlO2JhY2tncm91bmQtcG9zaXRpb246MTIwJSAwO21peC1ibGVuZC1tb2RlOm92ZXJsYXk7b3BhY2l0eTouNjU7YW5pbWF0aW9uOnVwZGF0ZS1jYXJkLXNoaW5lIDZzIGVhc2UtaW4tb3V0IGluZmluaXRlO3otaW5kZXg6MH1Aa2V5ZnJhbWVzIHVwZGF0ZS1jYXJkLXNoaW5lezAle2JhY2tncm91bmQtcG9zaXRpb246MTIwJSAwfTU1JXtiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMCUgMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMCUgMH19LnVwZGF0ZS1jYXJkLmlzLXN1Y2Nlc3N7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoMTIwJSAxMjAlIGF0IDAlIDAlLHZhcigtLXN1Y2Nlc3MtbXV0ZWQpIDAlLHRyYW5zcGFyZW50IDU1JSksbGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1iZy1lbGV2YXRlZCkgMCUsdmFyKC0tYmctcHJpbWFyeSkgMTAwJSk7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXhsKSwwIDAgMCAxcHggI2ZmZjYgaW5zZXQsdmFyKC0tc2hhZG93LWdsb3ctc3VjY2Vzcyl9LnVwZGF0ZS1jYXJkLWhlYWRlcntwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjEwcHh9LnVwZGF0ZS1jYXJkLWljb257d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtmbGV4LXNocmluazowO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYWNjZW50KSAwJSx2YXIoLS1hY2NlbnQtaG92ZXIpIDEwMCUpO2JveC1zaGFkb3c6MCA0cHggMTJweCB2YXIoLS1hY2NlbnQtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjU5fS51cGRhdGUtY2FyZC5pcy1zdWNjZXNzIC51cGRhdGUtY2FyZC1pY29ue2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1zdWNjZXNzKSAwJSx2YXIoLS1zdWNjZXNzLWhvdmVyKSAxMDAlKTtib3gtc2hhZG93OjAgNHB4IDEycHggdmFyKC0tc3VjY2Vzcy1nbG93KSxpbnNldCAwIDFweCAjZmZmZmZmNTl9LnVwZGF0ZS1jYXJkLWhlYWRpbmd7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0udXBkYXRlLWNhcmQtdGl0bGV7Zm9udC1zaXplOi44OHJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDFlbTtsaW5lLWhlaWdodDoxLjI1fS51cGRhdGUtY2FyZC1zdWJ0aXRsZXtmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2xpbmUtaGVpZ2h0OjEuMzV9LnVwZGF0ZS1jYXJkLWNsb3Nle2ZsZXgtc2hyaW5rOjA7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLGNvbG9yIC4xNXN9LnVwZGF0ZS1jYXJkLWNsb3NlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnVwZGF0ZS1jYXJkLXZlcnNpb257cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO21hcmdpbjoxMnB4IDAgMTBweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7ZmxleC13cmFwOm5vd3JhcH0udXBkYXRlLWNhcmQtdmVyc2lvbi1jaGlwe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlLCAiU0YgTW9ubyIsIE1lbmxvLCBDb25zb2xhcywgbW9ub3NwYWNlKTtmb250LXNpemU6Ljc0cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjNweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7d2hpdGUtc3BhY2U6bm93cmFwfS51cGRhdGUtY2FyZC12ZXJzaW9uLWN1cnJlbnR7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LnVwZGF0ZS1jYXJkLXZlcnNpb24tbGF0ZXN0e2NvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAxcHggNnB4IHZhcigtLWFjY2VudC1nbG93KX0udXBkYXRlLWNhcmQuaXMtc3VjY2VzcyAudXBkYXRlLWNhcmQtdmVyc2lvbi1sYXRlc3R7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyk7Ym94LXNoYWRvdzowIDFweCA2cHggdmFyKC0tc3VjY2Vzcy1nbG93KX0udXBkYXRlLWNhcmQtdmVyc2lvbi1hcnJvd3tjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmbGV4LXNocmluazowfS51cGRhdGUtY2FyZC1wcm9ncmVzc3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO21hcmdpbjowO3RyYW5zaXRpb246aGVpZ2h0IC4yNXMgZWFzZSxtYXJnaW4gLjI1cyBlYXNlfS51cGRhdGUtY2FyZC1wcm9ncmVzcy5hY3RpdmV7aGVpZ2h0OjZweDttYXJnaW46MCAwIDEwcHh9LnVwZGF0ZS1jYXJkLXByb2dyZXNzLXRyYWNre3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7b3ZlcmZsb3c6aGlkZGVufS51cGRhdGUtY2FyZC1wcm9ncmVzcy1maWxse3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6LTQwJTt3aWR0aDo0MCU7aGVpZ2h0OjEwMCU7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdmFyKC0tYWNjZW50KSAwJSx2YXIoLS1hY2NlbnQtaG92ZXIpIDEwMCUpO2JveC1zaGFkb3c6MCAwIDEwcHggdmFyKC0tYWNjZW50LWdsb3cpO2FuaW1hdGlvbjp1cGRhdGUtY2FyZC1wcm9ncmVzcy1zd2VlcCAxLjRzIGN1YmljLWJlemllciguNjUsLjA1LC4zNSwxKSBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHVwZGF0ZS1jYXJkLXByb2dyZXNzLXN3ZWVwezAle2xlZnQ6LTQ1JTt3aWR0aDo0MCV9NTAle2xlZnQ6MjUlO3dpZHRoOjU1JX10b3tsZWZ0OjEwNSU7d2lkdGg6NDAlfX0udXBkYXRlLWNhcmQtc3RhdHVze3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtmb250LXNpemU6LjcycmVtO2xpbmUtaGVpZ2h0OjEuNDtwYWRkaW5nOjZweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTttYXJnaW4tYm90dG9tOjEwcHg7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LnVwZGF0ZS1jYXJkLXN0YXR1cy5lcnJvcntiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKTtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKX0udXBkYXRlLWNhcmQtc3RhdHVzLnN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyl9LnVwZGF0ZS1jYXJkLWFjdGlvbnN7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjhweH0udXBkYXRlLWNhcmQtYWN0aW9ue2ZvbnQtc2l6ZTouNzhyZW07Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6N3B4IDE2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTJzIGVhc2UsZmlsdGVyIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xNXMgZWFzZX0udXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCA0cHggMTJweCB2YXIoLS1hY2NlbnQtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjQwfS51cGRhdGUtY2FyZC1hY3Rpb24tcHJpbWFyeTpob3Zlcjpub3QoOmRpc2FibGVkKXtmaWx0ZXI6YnJpZ2h0bmVzcygxLjA1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNnB4IDE2cHggdmFyKC0tYWNjZW50LWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0ZH0udXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnk6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpe3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO2ZpbHRlcjpicmlnaHRuZXNzKC45Nil9LnVwZGF0ZS1jYXJkLWFjdGlvbjpkaXNhYmxlZHtvcGFjaXR5Oi43O2N1cnNvcjpwcm9ncmVzcztmaWx0ZXI6bm9uZTt0cmFuc2Zvcm06bm9uZX0udXBkYXRlLWNhcmQuaXMtc3VjY2VzcyAudXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLXN1Y2Nlc3MpIDAlLHZhcigtLXN1Y2Nlc3MtaG92ZXIpIDEwMCUpO2JveC1zaGFkb3c6MCA0cHggMTJweCB2YXIoLS1zdWNjZXNzLWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0MH0udXBkYXRlLWNhcmQuaXMtc3VjY2VzcyAudXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnk6aG92ZXI6bm90KDpkaXNhYmxlZCl7Ym94LXNoYWRvdzowIDZweCAxNnB4IHZhcigtLXN1Y2Nlc3MtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjRkfS5yZXN0YXJ0LW92ZXJsYXl7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4Ojk5OTk5O2JhY2tncm91bmQ6IzAwMDAwMGE2O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZHJvcC1maWx0ZXI6Ymx1cig0cHgpO2FuaW1hdGlvbjpyZXN0YXJ0LWZhZGUtaW4gLjNzIGVhc2V9LnJlc3RhcnQtb3ZlcmxheS1jb250ZW50e3RleHQtYWxpZ246Y2VudGVyO2NvbG9yOiNmZmZ9LnJlc3RhcnQtdGl0bGV7Zm9udC1zaXplOjEuMjVyZW07Zm9udC13ZWlnaHQ6NjAwO21hcmdpbi1ib3R0b206OHB4fS5yZXN0YXJ0LXN1YnRpdGxle2ZvbnQtc2l6ZTouOXJlbTtvcGFjaXR5Oi44fS5yZXN0YXJ0LXNwaW5uZXJ7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDttYXJnaW46MCBhdXRvIDE2cHg7Ym9yZGVyOjNweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yNSk7Ym9yZGVyLXRvcC1jb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjpyZXN0YXJ0LXNwaW4gLjhzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHJlc3RhcnQtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgcmVzdGFydC1mYWRlLWluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fS5maWxlLXByZXZpZXctb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDtpbnNldDowO2JhY2tncm91bmQ6IzAwMDAwMDgwO3otaW5kZXg6MTAwMDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YW5pbWF0aW9uOmZhZGUtaW4gLjE1cyBlYXNlfUBrZXlmcmFtZXMgZmFkZS1pbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX0uc2V0dGluZ3MtbW9kYWx7d2lkdGg6bWluKDEwODBweCwxMDAlKTttYXgtd2lkdGg6MTA4MHB4O2hlaWdodDptaW4oODh2aCw5MjBweCk7bWF4LWhlaWdodDptaW4oODh2aCw5MjBweCk7bWluLWhlaWdodDptaW4oODh2aCw5MjBweCk7b3ZlcmZsb3c6aGlkZGVufS5zZXR0aW5ncy1tb2RhbC1oZWFkZXJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTZweDtwYWRkaW5nLWJvdHRvbToxNHB4fS5zZXR0aW5ncy1tb2RhbC10aXRsZS1ncm91cHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo0cHg7bWluLXdpZHRoOjB9LnNldHRpbmdzLW1vZGFsLXN1YnRpdGxle2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41fS5zZXR0aW5ncy1tb2RhbC1ib2R5e3BhZGRpbmctdG9wOjE4cHg7ZmxleDoxIDEgYXV0bzttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnNldHRpbmdzLWxheW91dHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjI2MHB4IG1pbm1heCgwLDFmcik7Z2FwOjIycHg7bWluLWhlaWdodDowO2ZsZXg6MSAxIGF1dG87YWxpZ24taXRlbXM6c3RyZXRjaH0uc2V0dGluZ3MtbGF5b3V0Pip7bWluLWhlaWdodDowfS5zZXR0aW5ncy1zaWRlYmFye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjE0cHg7bWluLXdpZHRoOjA7bWluLWhlaWdodDowO3BhZGRpbmctcmlnaHQ6NnB4O2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7b3ZlcmZsb3c6aGlkZGVufS5zZXR0aW5ncy1zaWRlYmFyLWhlYWRlciwuc2V0dGluZ3Mtc2lkZWJhci10aXRsZSwuc2V0dGluZ3Mtc2lkZWJhci1oaW50e2ZsZXgtc2hyaW5rOjB9LnNldHRpbmdzLXNpZGViYXItaGVhZGVye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDtwYWRkaW5nOjJweCA0cHggMH0uc2V0dGluZ3Mtc2lkZWJhci10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDFlbX0uc2V0dGluZ3Mtc2lkZWJhci1oaW50e2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41fS5zZXR0aW5ncy10YWJze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDttYXJnaW46MDtwYWRkaW5nOjAgMTBweCAwIDA7bWluLWhlaWdodDowO292ZXJmbG93OmF1dG87cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LnNldHRpbmdzLXRhYnM6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjZweDtoZWlnaHQ6NnB4fS5zZXR0aW5ncy10YWJzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTUzODtib3JkZXItcmFkaXVzOjk5OXB4fS5zZXR0aW5ncy10YWJzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTU1Y30uc2V0dGluZ3MtdGFic3tzY3JvbGxiYXItd2lkdGg6dGhpbn0uc2V0dGluZ3MtdGFie3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6NHB4O3dpZHRoOjEwMCU7cGFkZGluZzoxMnB4IDE0cHggMTJweCAxNnB4O2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxNnB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Y29sb3IgLjE1cyxib3JkZXItY29sb3IgLjE1cyxiYWNrZ3JvdW5kIC4xNXMsYm94LXNoYWRvdyAuMTVzLHRyYW5zZm9ybSAuMTVzO3RleHQtYWxpZ246bGVmdH0uc2V0dGluZ3MtdGFiOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MTBweDtib3R0b206MTBweDt3aWR0aDozcHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2V9LnNldHRpbmdzLXRhYjpob3Zlcntjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JhY2tncm91bmQ6I2M1NjUzZDE0O2JvcmRlci1jb2xvcjojYzU2NTNkMWY7dHJhbnNmb3JtOnRyYW5zbGF0ZSgycHgpfS5zZXR0aW5ncy10YWI6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH0uc2V0dGluZ3MtdGFiLmFjdGl2ZXtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjojZmZmZmZmYjM7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdlYiwjZmZmNGU4YjgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2M1NjUzZDM4LGluc2V0IDAgMXB4ICNmZmZmZmZlNixpbnNldCAwIC0xcHggI2M1NjUzZDBmLDAgNHB4IDE0cHggLTRweCAjYzU2NTNkMzgsMCAxcHggM3B4ICM3ZDViMzkwYX0uc2V0dGluZ3MtdGFiLmFjdGl2ZTpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpfS5zZXR0aW5ncy10YWItbWFpbntmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6aW5oZXJpdDtsaW5lLWhlaWdodDoxLjN9LnNldHRpbmdzLXRhYi1tZXRhe2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNDV9LnNldHRpbmdzLXRhYi5hY3RpdmUgLnNldHRpbmdzLXRhYi1tZXRhe2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2V0dGluZ3MtY29udGVudHttaW4td2lkdGg6MDttaW4taGVpZ2h0OjA7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6YXV0bztwYWRkaW5nLXJpZ2h0OjRweH0uc2V0dGluZ3MtcGFuZWx7ZGlzcGxheTpub25lO21pbi1oZWlnaHQ6MTAwJTtwYWRkaW5nOjJweCAycHggOHB4fS5zZXR0aW5ncy1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo4cHh9LnNldHRpbmdzLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTNkO2JvcmRlci1yYWRpdXM6OTk5cHh9LnNldHRpbmdzLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTYxfS5zZXR0aW5ncy1jb250ZW50e3Njcm9sbGJhci13aWR0aDp0aGlufS5zZXR0aW5ncy1wYW5lbC5hY3RpdmV7ZGlzcGxheTpibG9jazthbmltYXRpb246ZmFkZS1pbiAuMThzIGVhc2V9LnNldHRpbmdzLXBhbmVsLWhlYWRlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo2cHg7bWFyZ2luOjAgMCAxNHB4O3BhZGRpbmctYm90dG9tOjEycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEyKX0uc2V0dGluZ3MtcGFuZWwtdGl0bGV7Zm9udC1zaXplOjEuMDYyNXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5zZXR0aW5ncy1wYW5lbC1kZXNje2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGluZS1oZWlnaHQ6MS41NX0uc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLXNlY3Rpb24tdGl0bGV7bWFyZ2luLXRvcDoxOHB4fS5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3Mtc2VjdGlvbi10aXRsZTpmaXJzdC1vZi10eXBle21hcmdpbi10b3A6MH0uc2V0dGluZ3MtcGFuZWw+LmZpZWxkLXJvdywuc2V0dGluZ3MtcGFuZWw+LmZpZWxkLC5zZXR0aW5ncy1wYW5lbD4uZmllbGQtaGludHttYXgtd2lkdGg6NzYwcHh9LnNldHRpbmdzLXBhbmVsPi5zd2l0Y2gtY2FyZC1saXN0LC5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3MtY2FyZCwuc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uLC5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24sLnNldHRpbmdzLXBhbmVsPiNwcmVzZXRzLWxpc3R7bWF4LXdpZHRoOjg2MHB4fS5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3MtY2FyZCsuc2V0dGluZ3MtY2FyZCwuc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uKy5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uKy5zZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbnttYXJnaW4tdG9wOjE0cHh9LnNldHRpbmdzLXBhbmVsW2hpZGRlbl17ZGlzcGxheTpub25lIWltcG9ydGFudH1AbWVkaWEobWF4LXdpZHRoOjkwMHB4KXsuc2V0dGluZ3MtbGF5b3V0e2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMjBweCBtaW5tYXgoMCwxZnIpO2dhcDoxOHB4fX1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuc2V0dGluZ3MtbW9kYWx7d2lkdGg6bWluKDEwMCUsNzIwcHgpO2hlaWdodDptaW4oOTJ2aCw5MjBweCk7bWF4LWhlaWdodDptaW4oOTJ2aCw5MjBweCk7bWluLWhlaWdodDptaW4oOTJ2aCw5MjBweCl9LnNldHRpbmdzLW1vZGFsLWJvZHl7b3ZlcmZsb3cteTphdXRvfS5zZXR0aW5ncy1sYXlvdXR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcik7Z2FwOjE0cHg7ZmxleDowIDAgYXV0b30uc2V0dGluZ3Mtc2lkZWJhcntwYWRkaW5nLXJpZ2h0OjA7Ym9yZGVyLXJpZ2h0Om5vbmV9LnNldHRpbmdzLXRhYnN7ZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtd3JhcDpub3dyYXA7b3ZlcmZsb3cteDphdXRvO3Njcm9sbGJhci13aWR0aDpub25lO3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWJvdHRvbTo0cHh9LnNldHRpbmdzLXRhYnM6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0uc2V0dGluZ3MtdGFie2ZsZXg6MCAwIDIwMHB4O21pbi1oZWlnaHQ6NzJweH0uc2V0dGluZ3MtdGFiOmhvdmVye3RyYW5zZm9ybTpub25lfS5zZXR0aW5ncy1jb250ZW50e292ZXJmbG93OnZpc2libGU7cGFkZGluZy1yaWdodDowfX1AbWVkaWEobWF4LXdpZHRoOjQ4MHB4KXsuc2V0dGluZ3MtdGFie2ZsZXgtYmFzaXM6MTgwcHg7cGFkZGluZzoxMHB4IDEycHggMTBweCAxNHB4fS5zZXR0aW5ncy10YWItbWFpbntmb250LXNpemU6LjgxMjVyZW19LnNldHRpbmdzLXRhYi1tZXRhe2ZvbnQtc2l6ZTouNjg3NXJlbX19LnNldHRpbmdzLWFib3V0LWluZm97ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MDttYXJnaW4tYm90dG9tOjE4cHg7YmFja2dyb3VuZDojZmZmZmZmODA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7cGFkZGluZzo0cHggMTZweDtib3gtc2hhZG93OnZhcigtLXNoYWRvdy14cyl9LnNldHRpbmdzLWFib3V0LXJvd3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxNHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtwYWRkaW5nOjEycHggMDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uc2V0dGluZ3MtYWJvdXQtcm93Omxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbTpub25lfS5zZXR0aW5ncy1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwO2ZsZXg6MCAwIDExMnB4fS5zZXR0aW5ncy12YWx1ZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44cmVtO21pbi13aWR0aDowO3RleHQtYWxpZ246cmlnaHQ7d29yZC1icmVhazpicmVhay13b3JkfS5zZXR0aW5ncy12YWx1ZSBhe2NvbG9yOnZhcigtLWFjY2VudCk7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LnNldHRpbmdzLXZhbHVlIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0uc2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24sLnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uLC5zZXR0aW5ncy1jYXJkLC5zd2l0Y2gtY2FyZCwucHJlc2V0LWl0ZW17Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpfS5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb257bWFyZ2luLXRvcDoxNHB4O3BhZGRpbmc6MTZweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtiYWNrZ3JvdW5kOiNmZmZmZmY3YX0uc2V0dGluZ3Mtc2VjdGlvbi10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTttYXJnaW46MCAwIDEycHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19LnNldHRpbmdzLXVwZGF0ZS1hY3Rpb25zLC5zZXR0aW5ncy1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtnYXA6MTBweDtmbGV4LXdyYXA6d3JhcDttYXJnaW4tdG9wOjEycHh9LnNldHRpbmdzLWFjdGlvbnMtc3RpY2t5e3Bvc2l0aW9uOnN0aWNreTtib3R0b206MDtwYWRkaW5nLXRvcDoxNnB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmYmY1MDAsI2ZmZmJmNWZhIDI4cHgpO3otaW5kZXg6MTtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnNldHRpbmdzLXN0YXR1cy1tZXNzYWdle21hcmdpbi10b3A6MTBweH0uc2V0dGluZ3MtaW5saW5lLWhpbnR7bWFyZ2luLXRvcDotNHB4O21hcmdpbi1ib3R0b206MTJweH0uc2V0dGluZ3MtY29ubmVjdC11cmwtYm94e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7YmFja2dyb3VuZDojZmZmZmZmYjg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEycHg7cGFkZGluZzoxMHB4IDEycHg7bWFyZ2luLXRvcDo2cHh9LnNldHRpbmdzLWNvbm5lY3QtdXJsLXRleHR7ZmxleDoxO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTtmb250LXNpemU6MTNweDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3dvcmQtYnJlYWs6YnJlYWstYWxsO3VzZXItc2VsZWN0OmFsbDstd2Via2l0LXVzZXItc2VsZWN0OmFsbH0uc2V0dGluZ3MtY29ubmVjdC1xci1ib3h7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7bWFyZ2luLXRvcDoxNHB4fS5zZXR0aW5ncy1jb25uZWN0LXFyLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MjAwcHg7aGVpZ2h0OjIwMHB4O3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjE2cHg7Ym94LXNoYWRvdzowIDRweCAxMnB4ICM3ZDViMzkxNDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMTVzIGVhc2U7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zZXR0aW5ncy1jb25uZWN0LXFyLXdyYXA6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDZweCAxNnB4ICM3ZDViMzkxZn0uc2V0dGluZ3MtY29ubmVjdC1xci13cmFwIGNhbnZhc3tkaXNwbGF5OmJsb2NrO21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6MTAwJX0uc2V0dGluZ3MtY29ubmVjdC1xci1lbXB0eXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MTJweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7cG9pbnRlci1ldmVudHM6bm9uZX0uc2V0dGluZ3MtY29ubmVjdC1xci1oaW50e21hcmdpbjowO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0ZXh0LWFsaWduOmNlbnRlcjttYXgtd2lkdGg6MjgwcHh9LmNvbm5lY3QtcXItbW9kYWwtb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDtpbnNldDowO2JhY2tncm91bmQ6IzE0MGUwODhjO2JhY2tkcm9wLWZpbHRlcjpibHVyKDZweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig2cHgpO3otaW5kZXg6OTk5OTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzoyNHB4fS5jb25uZWN0LXFyLW1vZGFsLWNhcmR7YmFja2dyb3VuZDojZmZmO2JvcmRlci1yYWRpdXM6MjBweDtwYWRkaW5nOjI0cHg7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjE0cHg7Ym94LXNoYWRvdzowIDIwcHggNjBweCAjMDAwMDAwNTl9LmNvbm5lY3QtcXItbW9kYWwtY2FyZCBjYW52YXN7ZGlzcGxheTpibG9jaztib3JkZXItcmFkaXVzOjhweH0uY29ubmVjdC1xci1tb2RhbC1oaW50e21hcmdpbjowO2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0ZXh0LWFsaWduOmNlbnRlcn0uZmllbGQtcm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSk7Z2FwOjE0cHg7bWFyZ2luLWJvdHRvbToxNHB4fS5maWVsZC1yb3cgLmZpZWxke21hcmdpbi1ib3R0b206MH0uc2V0dGluZ3MtY2FyZHtiYWNrZ3JvdW5kOiNmZmZmZmY4NTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtwYWRkaW5nOjE4cHg7bWFyZ2luLWJvdHRvbToxNHB4fS5zZXR0aW5ncy1jYXJkIC5maWVsZDpsYXN0LW9mLXR5cGV7bWFyZ2luLWJvdHRvbToxMnB4fS5zZXR0aW5ncy1jYXJkIC5zZXR0aW5ncy1zZWN0aW9uLXRpdGxle21hcmdpbi10b3A6MH0uc2V0dGluZ3MtY2FyZCAuZmllbGQtaW5wdXR7YmFja2dyb3VuZDojZmZmZmZmYjh9LnNldHRpbmdzLWNhcmQgLmJ0bi1ibG9ja3ttYXJnaW4tYm90dG9tOjB9LnNldHRpbmdzLXBhbmVsIC5idG4tYmxvY2t7bWluLWhlaWdodDo0NHB4fS5zZXR0aW5ncy1wYW5lbCAuaGludCwuc2V0dGluZ3MtcGFuZWwgLmZpZWxkLWhpbnR7bGluZS1oZWlnaHQ6MS41NX0uc2V0dGluZ3MtcGFuZWwgaW5wdXRbdHlwZT1yYW5nZV17d2lkdGg6MTAwJX0uc2V0dGluZ3MtcGFuZWwgY29kZXttYXgtd2lkdGg6MTAwJX0uc2V0dGluZ3MtcGFuZWwgLmhpZGRlbisuaGludHttYXJnaW4tdG9wOjB9LnNldHRpbmdzLXBhbmVsIC5maWVsZC1pbnB1dCwuc2V0dGluZ3MtcGFuZWwgLmZpZWxkLXNlbGVjdHt3aWR0aDoxMDAlfS5zZXR0aW5ncy1wYW5lbCAuYnRuLXNte21pbi1oZWlnaHQ6MzRweH0uc2V0dGluZ3MtcGFuZWwgLmVycm9yLW1lc3NhZ2UsLnNldHRpbmdzLXBhbmVsIC5oaW50LmhpZGRlbiwuc2V0dGluZ3MtcGFuZWwgLmVycm9yLW1lc3NhZ2UuaGlkZGVue21hcmdpbi10b3A6MTBweH0uc2V0dGluZ3MtcGFuZWwgI3ByZXNldHMtbGlzdDplbXB0eTpiZWZvcmV7Y29udGVudDoiXDUyYTBcOGY3ZFw0ZTJkLi4uIjtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MThweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6LjgxMjVyZW19QG1lZGlhKG1heC13aWR0aDo3NjhweCl7LnNldHRpbmdzLWFib3V0LXJvd3thbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5zZXR0aW5ncy11cGRhdGUtYWN0aW9ucywuc2V0dGluZ3MtYWN0aW9uc3tmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnNldHRpbmdzLXVwZGF0ZS1hY3Rpb25zIC5idG4sLnNldHRpbmdzLWFjdGlvbnMgLmJ0bnt3aWR0aDoxMDAlfS5zZXR0aW5ncy1jb25uZWN0LXVybC1ib3h7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2h9fUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5zZXR0aW5ncy1tb2RhbC1oZWFkZXJ7Z2FwOjEwcHh9LnNldHRpbmdzLW1vZGFsLXN1YnRpdGxle2ZvbnQtc2l6ZTouNjg3NXJlbX0uc2V0dGluZ3MtcGFuZWx7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfS5zZXR0aW5ncy1hYm91dC1pbmZvLC5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24sLnNldHRpbmdzLWNhcmR7cGFkZGluZy1sZWZ0OjE0cHg7cGFkZGluZy1yaWdodDoxNHB4fS5zZXR0aW5ncy1hYm91dC1yb3d7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Z2FwOjRweH0uc2V0dGluZ3MtbGFiZWwsLnNldHRpbmdzLXZhbHVle2ZsZXg6bm9uZTt0ZXh0LWFsaWduOmxlZnR9LnNldHRpbmdzLXBhbmVsIC5idG4taWNvbnttaW4td2lkdGg6MzRweDttaW4taGVpZ2h0OjM0cHh9fUBtZWRpYShtaW4td2lkdGg6NzY5cHgpey5zZXR0aW5ncy1wYW5lbCAuYnRuLWJsb2Nre3dpZHRoOmF1dG87bWluLXdpZHRoOjE4MHB4fX1Ac3VwcG9ydHMgbm90IChwb3NpdGlvbjogc3RpY2t5KXsuc2V0dGluZ3MtdGFicywuc2V0dGluZ3MtYWN0aW9ucy1zdGlja3l7cG9zaXRpb246c3RhdGljfX0uZW1wdHktc3RhdGUtY29tcGFjdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6MzJweCAxNnB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODEyNXJlbX0uZW1wdHktc3RhdGUtY29tcGFjdCAuZW1wdHktaWNvbntmb250LXNpemU6MS41cmVtO29wYWNpdHk6LjV9LnN3aXRjaC1jYXJkLWxpc3R7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweH0uc3dpdGNoLWNhcmR7ZGlzcGxheTpibG9jaztiYWNrZ3JvdW5kOiNmZmZmZmY4MDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoxNHB4O3BhZGRpbmc6MTRweCAxNnB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4ycyxiYWNrZ3JvdW5kIC4ycyx0cmFuc2Zvcm0gLjJzO3VzZXItc2VsZWN0Om5vbmV9LnN3aXRjaC1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0uc3dpdGNoLWNhcmQtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHh9LnN3aXRjaC1jYXJkLXRpdGxle2ZsZXg6MTtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnN3aXRjaC1jYXJkLWRlc2N7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXJnaW4tdG9wOjA7bWF4LWhlaWdodDowO292ZXJmbG93OmhpZGRlbjtvcGFjaXR5OjA7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IC4yNXMgZWFzZSxvcGFjaXR5IC4ycyBlYXNlLG1hcmdpbi10b3AgLjI1cyBlYXNlfS5zd2l0Y2gtY2FyZDpoYXMoLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCkgLnN3aXRjaC1jYXJkLWRlc2N7bWF4LWhlaWdodDo0MHB4O29wYWNpdHk6MTttYXJnaW4tdG9wOjhweH0uc3dpdGNoLWNhcmQ6aGFzKC5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQpe2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWNjZW50KSA2JSx2YXIoLS1iZy1zZWNvbmRhcnkpKX0uc3dpdGNoLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5OjA7d2lkdGg6MDtoZWlnaHQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5zd2l0Y2gtc2xpZGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjQ0cHg7aGVpZ2h0OjI2cHg7bWluLXdpZHRoOjQ0cHg7Ym9yZGVyLXJhZGl1czoxM3B4O2JhY2tncm91bmQ6IzdkNWIzOTM4O2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4ICM3ZDViMzkyZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjIycyBlYXNlLGJveC1zaGFkb3cgLjIycyBlYXNlO2N1cnNvcjpwb2ludGVyfS5zd2l0Y2gtc2xpZGVyOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtsZWZ0OjJweDt3aWR0aDoyMnB4O2hlaWdodDoyMnB4O2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3gtc2hhZG93OjAgMnB4IDRweCAjMTQwZTA4MmUsMCAwIDAgLjVweCAjN2Q1YjM5MGY7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI0cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSl9LnN3aXRjaC10b2dnbGU6Y2hlY2tlZCsuc3dpdGNoLXNsaWRlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggIzAwMDAwMDFhfS5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQrLnN3aXRjaC1zbGlkZXI6YWZ0ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxOHB4KX0uc3dpdGNoLXRvZ2dsZTpmb2N1cy12aXNpYmxlKy5zd2l0Y2gtc2xpZGVye291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5wcmVzZXQtaXRlbXtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6MTJweCAxNHB4O2JhY2tncm91bmQ6I2ZmZmZmZjg1O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMnB4O21hcmdpbi1ib3R0b206MTBweDtmb250LXNpemU6LjgxMjVyZW19LnByZXNldC1sYWJlbHtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ucHJlc2V0LWRldGFpbHttaW4td2lkdGg6MDt0ZXh0LWFsaWduOnJpZ2h0O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNzVyZW07d29yZC1icmVhazpicmVhay13b3JkfUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5wcmVzZXQtaXRlbXtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ucHJlc2V0LWRldGFpbHt0ZXh0LWFsaWduOmxlZnR9fS5maWxlLXByZXZpZXctbW9kYWx7d2lkdGg6bWluKDkwdncsbWF4KDY0MHB4LGNhbGMoMTAwdncgLSAzODBweCkpKTttYXgtd2lkdGg6MTAwMHB4O2hlaWdodDo4MHZoO21heC1oZWlnaHQ6ODV2aDtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym94LXNoYWRvdzowIDIwcHggNjBweCAjMDAwMDAwNGQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzpoaWRkZW47YW5pbWF0aW9uOm1vZGFsLXNsaWRlLWluIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX1Aa2V5ZnJhbWVzIG1vZGFsLXNsaWRlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMjBweCkgc2NhbGUoLjk4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5maWxlLXByZXZpZXctb3ZlcmxheXtwYWRkaW5nOjA7YWxpZ24taXRlbXM6c3RyZXRjaDtqdXN0aWZ5LWNvbnRlbnQ6c3RyZXRjaDt0b3A6dmFyKC0tYXBwLXZpZXdwb3J0LXRvcCwgMHB4KTtoZWlnaHQ6dmFyKC0tYXBwLXZpZXdwb3J0LWhlaWdodCwgMTAwZHZoKX0uZmlsZS1wcmV2aWV3LW1vZGFse3dpZHRoOjEwMHZ3O21heC13aWR0aDoxMDB2dztoZWlnaHQ6dmFyKC0tYXBwLXZpZXdwb3J0LWhlaWdodCwgMTAwZHZoKTttYXgtaGVpZ2h0OnZhcigtLWFwcC12aWV3cG9ydC1oZWlnaHQsIDEwMGR2aCk7Ym9yZGVyLXJhZGl1czowO2JvcmRlcjpub25lO2JveC1zaGFkb3c6bm9uZTthbmltYXRpb246ZmFkZS1pbiAuMThzIGVhc2V9LmZpbGUtcHJldmlldy1oZWFkZXJ7cGFkZGluZzoxMHB4IDEycHg7Z2FwOjhweDtwYWRkaW5nLXRvcDptYXgoMTBweCxlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkpO3BhZGRpbmctbGVmdDptYXgoMTJweCxlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtwYWRkaW5nLXJpZ2h0Om1heCgxMnB4LGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKX0uZmlsZS1wcmV2aWV3LXRpdGxle2ZvbnQtc2l6ZTouODc1cmVtO2dhcDo2cHg7bWluLXdpZHRoOjA7ZmxleDoxfS5maWxlLXByZXZpZXctZmlsZW5hbWV7bWF4LXdpZHRoOjEwMCV9LmZpbGUtcHJldmlldy1wYXRoe2Rpc3BsYXk6bm9uZX0uZmlsZS1wcmV2aWV3LXRvb2xiYXJ7Z2FwOjRweDtmbGV4LXNocmluazowfS5maWxlLXByZXZpZXctdG9vbGJhci1idG57cGFkZGluZzowIDZweDtmb250LXNpemU6Ljc1cmVtfS5maWxlLXByZXZpZXctY2xvc2V7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtwYWRkaW5nOjB9LmZpbGUtcHJldmlldy1pY29ue2ZvbnQtc2l6ZToxLjEyNXJlbX0uZmlsZS1wcmV2aWV3LWJvZHl7cGFkZGluZy1ib3R0b206ZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pfX0uZmlsZS1wcmV2aWV3LWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6MTJweCAxOHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtmbGV4LXNocmluazowfS5maWxlLXByZXZpZXctdGl0bGV7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtmb250LXNpemU6LjkzNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7ZmxleDoxO21pbi13aWR0aDowfS5maWxlLXByZXZpZXctaWNvbntmb250LXNpemU6MS4yNXJlbTtsaW5lLWhlaWdodDoxO2ZsZXgtc2hyaW5rOjB9LmZpbGUtcHJldmlldy1uYW1lLWJsb2Nre2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweDttaW4td2lkdGg6MDtmbGV4OjF9LmZpbGUtcHJldmlldy1uYW1lLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7Z2FwOjhweDttaW4td2lkdGg6MH0uZmlsZS1wcmV2aWV3LWZpbGVuYW1le292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXNpemU6LjkzNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LjAxZW07bWluLXdpZHRoOjB9LmZpbGUtcHJldmlldy1wYXRoe2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDttaW4td2lkdGg6MDtvcGFjaXR5Oi44fS5maWxlLXByZXZpZXctZGlydHl7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOiNjNjZhMWE7Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMmVtO2ZsZXgtc2hyaW5rOjA7cGFkZGluZzoxcHggOHB4O2JhY2tncm91bmQ6I2M2NmExYTFhO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTgsMTA2LDI2LC4yNSk7Ym9yZGVyLXJhZGl1czo5OTlweDthbmltYXRpb246ZGlydHktcHVsc2UgMS42cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIGRpcnR5LXB1bHNlezAlLHRve29wYWNpdHk6LjY1fTUwJXtvcGFjaXR5OjF9fS5maWxlLXByZXZpZXctbGFuZ3tmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6MnB4IDhweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyMTIsMTUyLDk5LC4zKTtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7ZmxleC1zaHJpbms6MDthbGlnbi1zZWxmOmNlbnRlcn0uZmlsZS1wcmV2aWV3LWNsb3Nle2JhY2tncm91bmQ6bm9uZTtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7cGFkZGluZzowO2JvcmRlci1yYWRpdXM6OHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsY29sb3IgLjE1cyxib3JkZXItY29sb3IgLjE1cyx0cmFuc2Zvcm0gLjE1cztsaW5lLWhlaWdodDoxO2ZsZXgtc2hyaW5rOjB9LmZpbGUtcHJldmlldy1jbG9zZTpob3ZlcntiYWNrZ3JvdW5kOiNkYzQ2NDYxNDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JvcmRlci1jb2xvcjojZGM0NjQ2NDB9LmZpbGUtcHJldmlldy1jbG9zZTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NCl9LmZpbGUtcHJldmlldy1ib2R5e2ZsZXg6MTtvdmVyZmxvdzphdXRvO21pbi1oZWlnaHQ6MDtzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6dmFyKC0tYm9yZGVyLWRlZmF1bHQpIHRyYW5zcGFyZW50fS5maWxlLXByZXZpZXctYm9keTo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHh9LmZpbGUtcHJldmlldy1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5maWxlLXByZXZpZXctYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo0cHh9LmZpbGUtcHJldmlldy1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5maWxlLXByZXZpZXctYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LmNvZGUtcHJldmlldy13cmFwcGVye2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTAwJTtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47c2Nyb2xsYmFyLXdpZHRoOnRoaW47c2Nyb2xsYmFyLWNvbG9yOnZhcigtLWJvcmRlci1kZWZhdWx0KSB0cmFuc3BhcmVudH0uY29kZS1wcmV2aWV3LXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjhweDtoZWlnaHQ6OHB4fS5jb2RlLXByZXZpZXctd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uY29kZS1wcmV2aWV3LXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6dmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6NHB4fS5jb2RlLXByZXZpZXctd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS10ZXh0LW11dGVkKX0uY29kZS1wcmV2aWV3LWxpbmVze3BhZGRpbmc6MTZweCAxMnB4IDE2cHggMTZweDt0ZXh0LWFsaWduOnJpZ2h0O3VzZXItc2VsZWN0Om5vbmU7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6dmFyKC0tZm9udC1zaXplLXNtKTtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodCk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTt3aWR0aDo1MnB4O21heC13aWR0aDo1MnB4O2ZsZXgtc2hyaW5rOjA7b3ZlcmZsb3c6aGlkZGVufS5jb2RlLXByZXZpZXctY29udGVudHtmbGV4OjE7bWluLXdpZHRoOjA7d2lkdGg6MTAwJTtwYWRkaW5nOjE2cHggMjBweDtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTphdXRvfS5jb2RlLXByZXZpZXctY29udGVudCBwcmV7bWFyZ2luOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6dmFyKC0tZm9udC1zaXplLXNtKTtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt3aGl0ZS1zcGFjZTpwcmU7d29yZC1icmVhazpub3JtYWw7b3ZlcmZsb3ctd3JhcDpub3JtYWx9LnN5bnRheC1rZXl3b3Jke2NvbG9yOiNjNjc4ZGR9LnN5bnRheC1zdHJpbmd7Y29sb3I6Izk4YzM3OX0uc3ludGF4LW51bWJlcntjb2xvcjojZDE5YTY2fS5zeW50YXgtY29tbWVudHtjb2xvcjojNWM2MzcwO2ZvbnQtc3R5bGU6aXRhbGljfS5zeW50YXgtZnVuY3Rpb257Y29sb3I6IzYxYWZlZn0uc3ludGF4LW9wZXJhdG9ye2NvbG9yOiM1NmI2YzJ9LnN5bnRheC10eXBle2NvbG9yOiNlNWMwN2J9LnN5bnRheC1wdW5jdHVhdGlvbntjb2xvcjojYWJiMmJmfS5tYXJrZG93bi1wcmV2aWV3e3BhZGRpbmc6MjBweCAyOHB4O2xpbmUtaGVpZ2h0OjEuNztmb250LXNpemU6LjkzNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ubWFya2Rvd24tcHJldmlldyBoMSwubWFya2Rvd24tcHJldmlldyBoMiwubWFya2Rvd24tcHJldmlldyBoMywubWFya2Rvd24tcHJldmlldyBoNCwubWFya2Rvd24tcHJldmlldyBoNSwubWFya2Rvd24tcHJldmlldyBoNnttYXJnaW4tdG9wOjEuNWVtO21hcmdpbi1ib3R0b206LjVlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MS4zO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9Lm1hcmtkb3duLXByZXZpZXcgaDF7Zm9udC1zaXplOjEuNzVyZW07Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nLWJvdHRvbTouM2VtfS5tYXJrZG93bi1wcmV2aWV3IGgye2ZvbnQtc2l6ZToxLjM3NXJlbTtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3BhZGRpbmctYm90dG9tOi4zZW19Lm1hcmtkb3duLXByZXZpZXcgaDN7Zm9udC1zaXplOjEuMTI1cmVtfS5tYXJrZG93bi1wcmV2aWV3IGg0e2ZvbnQtc2l6ZToxcmVtfS5tYXJrZG93bi1wcmV2aWV3IHB7bWFyZ2luOi43NWVtIDB9Lm1hcmtkb3duLXByZXZpZXcgYXtjb2xvcjp2YXIoLS1hY2NlbnQpO3RleHQtZGVjb3JhdGlvbjpub25lfS5tYXJrZG93bi1wcmV2aWV3IGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ubWFya2Rvd24tcHJldmlldyBjb2Rle2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO3BhZGRpbmc6MnB4IDZweDtib3JkZXItcmFkaXVzOjNweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODc1ZW07Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpfS5tYXJrZG93bi1wcmV2aWV3IHByZXtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtwYWRkaW5nOjE2cHg7b3ZlcmZsb3cteDphdXRvO21hcmdpbjoxZW0gMH0ubWFya2Rvd24tcHJldmlldyBwcmUgY29kZXtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7cGFkZGluZzowO2ZvbnQtc2l6ZTp2YXIoLS1mb250LXNpemUtc20pfS5tYXJrZG93bi1wcmV2aWV3IGJsb2NrcXVvdGV7Ym9yZGVyLWxlZnQ6NHB4IHNvbGlkIHZhcigtLWFjY2VudCk7bWFyZ2luOjFlbSAwO3BhZGRpbmc6LjVlbSAxZW07YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtib3JkZXItcmFkaXVzOjAgdmFyKC0tcmFkaXVzLXNtKSB2YXIoLS1yYWRpdXMtc20pIDB9Lm1hcmtkb3duLXByZXZpZXcgdWwsLm1hcmtkb3duLXByZXZpZXcgb2x7cGFkZGluZy1sZWZ0OjEuNWVtO21hcmdpbjouNzVlbSAwfS5tYXJrZG93bi1wcmV2aWV3IGxpe21hcmdpbjouMjVlbSAwfS5tYXJrZG93bi1wcmV2aWV3IHRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTt3aWR0aDoxMDAlO21hcmdpbjoxZW0gMDtmb250LXNpemU6Ljg3NXJlbX0ubWFya2Rvd24tcHJldmlldyB0aCwubWFya2Rvd24tcHJldmlldyB0ZHtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7cGFkZGluZzo4cHggMTJweDt0ZXh0LWFsaWduOmxlZnR9Lm1hcmtkb3duLXByZXZpZXcgdGh7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2ZvbnQtd2VpZ2h0OjYwMH0ubWFya2Rvd24tcHJldmlldyB0cjpudGgtY2hpbGQoMm4pe2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KX0ubWFya2Rvd24tcHJldmlldyBocntib3JkZXI6bm9uZTtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO21hcmdpbjoxLjVlbSAwfS5tYXJrZG93bi1wcmV2aWV3IGltZ3ttYXgtd2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSl9LmZpbGUtcHJldmlldy1sb2FkaW5ne2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6MTAwJTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljg3NXJlbTtnYXA6MTBweH0uZmlsZS1wcmV2aWV3LWxvYWRpbmc6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXI6MnB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLXJhZGl1czo1MCU7YW5pbWF0aW9uOnByZXZpZXctc3BpbiAuN3MgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgcHJldmlldy1zcGlue3Rve3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19LmZpbGUtcHJldmlldy1lcnJvcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDoxMDAlO2dhcDo4cHg7Y29sb3I6dmFyKC0tZGFuZ2VyKTtmb250LXNpemU6Ljg3NXJlbTt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjIwcHh9LmZpbGUtcHJldmlldy1lcnJvciAucHJldmlldy1lcnJvci1pY29ue2ZvbnQtc2l6ZToycmVtO29wYWNpdHk6LjV9LnRyZWUtaXRlbVtkYXRhLXR5cGU9ZmlsZV17Y3Vyc29yOnBvaW50ZXJ9LnRyZWUtaXRlbVtkYXRhLXR5cGU9ZmlsZV06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy1ob3Zlcil9LnRyZWUtaXRlbVtkYXRhLXR5cGU9ZmlsZV06aG92ZXIgLnRyZWUtbmFtZXtjb2xvcjp2YXIoLS1hY2NlbnQpfS5maWxlLWV4cGxvcmVyLXVwe2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjhweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZmxleC1zaHJpbms6MH0uZmlsZS1leHBsb3Jlci11cDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItc3VidGxlKX0uZmlsZS1leHBsb3Jlci11cDphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9LnRyZWUtbWV0YXtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7bWFyZ2luLWxlZnQ6NnB4O3BhZGRpbmctbGVmdDo2cHg7bWF4LXdpZHRoOjcwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO29wYWNpdHk6Ljg1fS50cmVlLWl0ZW06aG92ZXIgLnRyZWUtbWV0YXtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnRyZWUtdHJ1bmNhdGVke3BhZGRpbmc6OHB4IDE0cHg7bWFyZ2luOjRweCA2cHggOHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOjZweDt0ZXh0LWFsaWduOmNlbnRlcn0uZmlsZS1jb250ZXh0LW1lbnV7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDoxMTAwO21pbi13aWR0aDoyMDBweDtwYWRkaW5nOjRweDtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOjEwcHg7Ym94LXNoYWRvdzowIDEycHggMzZweCAjMDAwMDAwMmU7YW5pbWF0aW9uOmN0eC1mYWRlLWluIC4xMnMgZWFzZX1Aa2V5ZnJhbWVzIGN0eC1mYWRlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNHB4KSBzY2FsZSguOTgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKX19LmZpbGUtY29udGV4dC1tZW51LWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDt3aWR0aDoxMDAlO3BhZGRpbmc6OHB4IDEycHg7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZTouODEyNXJlbTt0ZXh0LWFsaWduOmxlZnQ7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xMnN9LmZpbGUtY29udGV4dC1tZW51LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LmZpbGUtY29udGV4dC1tZW51LWl0ZW0gLmN0eC1pY29ue3dpZHRoOjE4cHg7dGV4dC1hbGlnbjpjZW50ZXI7b3BhY2l0eTouODV9LndhbmQtbWluaS10b2FzdHtwb3NpdGlvbjpmaXhlZDt0b3A6MzBweDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTE0cHgpO3otaW5kZXg6MTIwMDtwYWRkaW5nOjhweCAxNnB4O2JhY2tncm91bmQ6IzE0MTQxNGViO2NvbG9yOiNmZmY7Zm9udC1zaXplOi44MTI1cmVtO2JvcmRlci1yYWRpdXM6OTk5cHg7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgZWFzZTtwb2ludGVyLWV2ZW50czpub25lfS53YW5kLW1pbmktdG9hc3Quc2hvd3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKX0uZmlsZS1wcmV2aWV3LXRvb2xiYXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6OHB4fS5maWxlLXByZXZpZXctdG9vbGJhci1idG57YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MCA4cHg7bWluLXdpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7Z2FwOjZweDtib3JkZXItcmFkaXVzOjhweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1zaXplOi43NXJlbTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLGNvbG9yIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXMsYm94LXNoYWRvdyAuMTVzLHRyYW5zZm9ybSAuMXN9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpO2JveC1zaGFkb3c6MCAxcHggM3B4ICMwMDAwMDAwYX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk1KX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuOmRpc2FibGVke29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkO3RyYW5zZm9ybTpub25lfS5maWxlLXByZXZpZXctdG9vbGJhci1idG4gLnRvb2xiYXItaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5maWxlLXByZXZpZXctdG9vbGJhci1idG4gLnRvb2xiYXItdGV4dHtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW19LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bi50b29sYmFyLWFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6I2Q0OTg2MzY2fS5maWxlLXByZXZpZXctdG9vbGJhci1idG4ucHJpbWFyeXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMXB4IDJweCAjNTkzYTIwMjZ9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bi5wcmltYXJ5OmhvdmVye2JhY2tncm91bmQ6I2I4N2E0Nztib3JkZXItY29sb3I6I2I4N2E0Nztjb2xvcjojZmZmO2JveC1zaGFkb3c6MCAycHggNnB4ICM1OTNhMjAzM30uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuLmRhbmdlcntjb2xvcjojYzAzOTJifS5maWxlLXByZXZpZXctdG9vbGJhci1idG4uZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6I2RjNDY0NjE0O2JvcmRlci1jb2xvcjojZGM0NjQ2NGQ7Y29sb3I6I2EwMjgxOH0uZmlsZS1wcmV2aWV3LXRvb2xiYXItZ3JvdXB7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpzdHJldGNoO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSl9LmZpbGUtcHJldmlldy10b29sYmFyLWdyb3VwIC5maWxlLXByZXZpZXctdG9vbGJhci1idG57Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7bWluLXdpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7Ym94LXNoYWRvdzpub25lfS5maWxlLXByZXZpZXctdG9vbGJhci1ncm91cCAuZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpfS5maWxlLXByZXZpZXctdG9vbGJhci1ncm91cGxhYmVse2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowIDZweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtib3JkZXItbGVmdDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSl9LmZpbGUtcHJldmlldy10b29sYmFyLmVkaXRpbmd7Z2FwOjZweH1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRue2hlaWdodDoyOHB4O21pbi13aWR0aDoyOHB4O3BhZGRpbmc6MCA2cHh9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0biAudG9vbGJhci10ZXh0e2Rpc3BsYXk6bm9uZX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuLnByaW1hcnkgLnRvb2xiYXItdGV4dHtkaXNwbGF5OmlubGluZS1mbGV4fX0ud2FuZC1pY29ue2ZsZXgtc2hyaW5rOjA7dmVydGljYWwtYWxpZ246bWlkZGxlfS5jb2RlLXByZXZpZXctY29udGVudCBwcmUud3JhcHt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9LmZpbGUtcHJldmlldy1ib2R5LmVkaXRpbmd7cGFkZGluZzowO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSl9LmNvZGUtZWRpdG9yLXdyYXBwZXJ7ZGlzcGxheTpmbGV4O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7bWluLWhlaWdodDowO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSl9LmNvZGUtZWRpdG9yLXRleHRhcmVhe2ZsZXg6MTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21pbi1oZWlnaHQ6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzoxNnB4IDIwcHg7bWFyZ2luOjA7Ym9yZGVyOm5vbmU7b3V0bGluZTpub25lO3Jlc2l6ZTpub25lO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOnZhcigtLWZvbnQtc2l6ZS1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTt0YWItc2l6ZToyOy1tb3otdGFiLXNpemU6Mjt3aGl0ZS1zcGFjZTpwcmU7b3ZlcmZsb3c6YXV0bztjYXJldC1jb2xvcjp2YXIoLS1hY2NlbnQpO3Njcm9sbGJhci13aWR0aDp0aGluO3Njcm9sbGJhci1jb2xvcjp2YXIoLS1ib3JkZXItZGVmYXVsdCkgdHJhbnNwYXJlbnR9LmNvZGUtZWRpdG9yLXRleHRhcmVhOjotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo4cHg7aGVpZ2h0OjhweH0uY29kZS1lZGl0b3ItdGV4dGFyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LmNvZGUtZWRpdG9yLXRleHRhcmVhOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjRweH0uY29kZS1lZGl0b3ItdGV4dGFyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCl9LmNvZGUtZWRpdG9yLXRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4ICNkNDk4NjMyNn0uZmlsZS1wcmV2aWV3LWJvZHkua2luZC1pbWFnZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgwLDAsMCwuMDQpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNzUlLHJnYmEoMCwwLDAsLjA0KSA3NSUpLGxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDAsMCwwLC4wNCkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA3NSUscmdiYSgwLDAsMCwuMDQpIDc1JSksdmFyKC0tYmctcHJpbWFyeSk7YmFja2dyb3VuZC1zaXplOjE2cHggMTZweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMCw4cHggOHB4fS5pbWFnZS1wcmV2aWV3LXdyYXBwZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3ZlcmZsb3c6YXV0bztwYWRkaW5nOjE2cHh9LmltYWdlLXByZXZpZXctaW1ne21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvbnRhaW47Y3Vyc29yOnpvb20taW47dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2U7Ym94LXNoYWRvdzowIDZweCAyMHB4ICMwMDAwMDAxZjtib3JkZXItcmFkaXVzOjRweDtiYWNrZ3JvdW5kOiNmZmZ9LmltYWdlLXByZXZpZXctaW1nLnpvb21lZHttYXgtd2lkdGg6bm9uZTttYXgtaGVpZ2h0Om5vbmU7Y3Vyc29yOnpvb20tb3V0O3RyYW5zZm9ybTpzY2FsZSgxKX0uZmlsZS1wcmV2aWV3LWJvZHkua2luZC1wZGZ7cGFkZGluZzowO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KX0ucGRmLXByZXZpZXctZnJhbWV7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSl9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtdmlkZW8sLmZpbGUtcHJldmlldy1ib2R5LmtpbmQtYXVkaW97ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQ6IzBkMGQwZH0uZmlsZS1wcmV2aWV3LWJvZHkua2luZC1hdWRpb3tiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSl9Lm1lZGlhLXByZXZpZXctd3JhcHBlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7cGFkZGluZzoyNHB4fS5tZWRpYS1wcmV2aWV3LXZpZGVve21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gNDBweCk7YmFja2dyb3VuZDojMDAwO2JvcmRlci1yYWRpdXM6NHB4fS5tZWRpYS1wcmV2aWV3LWF1ZGlve3dpZHRoOm1pbig0MjBweCw5MCUpfS5tZWRpYS1wcmV2aWV3LWljb257Zm9udC1zaXplOjMuNXJlbTtvcGFjaXR5Oi43fS5tZWRpYS1wcmV2aWV3LW5hbWV7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOjFyZW07bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5tZWRpYS1wcmV2aWV3LW1ldGF7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi43NXJlbTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtdmlkZW8gLm1lZGlhLXByZXZpZXctbWV0YXtjb2xvcjojZmZmZmZmYjN9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtYmluYXJ5e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uYmluYXJ5LXByZXZpZXctY2FyZHttYXgtd2lkdGg6NDgwcHg7cGFkZGluZzozMnB4IDI4cHg7dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHh9LmJpbmFyeS1wcmV2aWV3LWljb257Zm9udC1zaXplOjNyZW07b3BhY2l0eTouNn0uYmluYXJ5LXByZXZpZXctbmFtZXtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXNpemU6MXJlbTt3b3JkLWJyZWFrOmJyZWFrLWFsbH0uYmluYXJ5LXByZXZpZXctbWV0YXtkaXNwbGF5OmZsZXg7Z2FwOjZweDthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi43NXJlbX0uYmluYXJ5LXByZXZpZXctcGF0aHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5iaW5hcnktcHJldmlldy1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtnYXA6OHB4O21hcmdpbi10b3A6OHB4O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmJpbmFyeS1wcmV2aWV3LWJ0bntwYWRkaW5nOjhweCAxNnB4O2JvcmRlci1yYWRpdXM6NnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOi44MTI1cmVtO2N1cnNvcjpwb2ludGVyO3RleHQtZGVjb3JhdGlvbjpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLGJvcmRlci1jb2xvciAuMTVzLGNvbG9yIC4xNXN9LmJpbmFyeS1wcmV2aWV3LWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KX0udHJlZS1pdGVte3RyYW5zaXRpb246YWxsIC4ycyB2YXIoLS1lYXNlLW91dC1leHBvKX0udHJlZS1pdGVtOmhvdmVye3RyYW5zZm9ybTp0cmFuc2xhdGUoNHB4KX0udHJlZS1pdGVtOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlKDJweCkgc2NhbGUoLjk5KX0uZmlsZS1zaWRlLXBhbmVse3RyYW5zaXRpb246cmlnaHQgLjM1cyB2YXIoLS1lYXNlLW91dC1leHBvKSxib3gtc2hhZG93IC4zNXMgZWFzZX0uZmlsZS1zaWRlLXBhbmVsLm9wZW57Ym94LXNoYWRvdzotOHB4IDAgMzJweCAjNTkzYTIwMWZ9LnNwaW5uZXJ7YW5pbWF0aW9uOnNwaW4gMXMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgZmxvYXR7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9NTAle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC04cHgpfX0uZmxvYXR7YW5pbWF0aW9uOmZsb2F0IDNzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5jaGF0LW1lc3NhZ2UtYnViYmxley13ZWJraXQtdXNlci1zZWxlY3Q6dGV4dDt1c2VyLXNlbGVjdDp0ZXh0fS5tc2ctY29weS1idG57ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMzJweDtyaWdodDo0cHg7cGFkZGluZzo0cHggMTBweDtmb250LXNpemU6Ljc1cmVtO2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbWQpO2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3otaW5kZXg6MTA7d2hpdGUtc3BhY2U6bm93cmFwOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9ufS5tc2ctY29weS1idG4udmlzaWJsZXtkaXNwbGF5OmJsb2NrfS5tc2ctY29weS1idG4uY29waWVke2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfS5jaGF0LW1lc3NhZ2V7cG9zaXRpb246cmVsYXRpdmV9LnRlcm1pbmFsLWp1bXAtYm90dG9te3otaW5kZXg6MjB9LmlucHV0LWNvbXBvc2VyLmluLWZsaWdodHtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmlucHV0LWNvbXBvc2VyLmluLWZsaWdodDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTJweDtsZWZ0Oi02MCU7d2lkdGg6MjIwJTtoZWlnaHQ6M3B4O2JvcmRlci1yYWRpdXM6MTRweCAxNHB4IDAgMDtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDI4MHB4IDRweCxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjQ1KSAwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjEyKSAzNSUsdHJhbnNwYXJlbnQgNjAlKSBuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOjI4MHB4IDRweDthbmltYXRpb246Y29tcG9zZXJXYXZlU2xpZGUgN3MgY3ViaWMtYmV6aWVyKC4zNSwwLC42NSwxKSBpbmZpbml0ZTt6LWluZGV4OjI7cG9pbnRlci1ldmVudHM6bm9uZX0uaW5wdXQtY29tcG9zZXIuaW4tZmxpZ2h0OmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0ycHg7bGVmdDotNjAlO3dpZHRoOjIyMCU7aGVpZ2h0OjNweDtib3JkZXItcmFkaXVzOjE0cHggMTRweCAwIDA7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAyMjBweCAzcHgscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC4yNSkgMCUscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC4wNikgMzUlLHRyYW5zcGFyZW50IDYwJSkgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToyMjBweCAzcHg7YW5pbWF0aW9uOmNvbXBvc2VyV2F2ZVNsaWRlIDlzIGN1YmljLWJlemllciguMzUsMCwuNjUsMSkgaW5maW5pdGUgcmV2ZXJzZTt6LWluZGV4OjI7cG9pbnRlci1ldmVudHM6bm9uZX1Aa2V5ZnJhbWVzIGNvbXBvc2VyV2F2ZVNsaWRlezAle2JhY2tncm91bmQtcG9zaXRpb246MCUgY2VudGVyfXRve2JhY2tncm91bmQtcG9zaXRpb246MTAwJSBjZW50ZXJ9fS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjVweDttYXJnaW46MCAwIDAgYXV0bztwYWRkaW5nOjRweCA4cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlLGNvbG9yIC4zcyBlYXNlO292ZXJmbG93OmhpZGRlbjtmbGV4LXNocmluazowfS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIgLnN0YXR1cy1iYXItZG90e3dpZHRoOjVweDtoZWlnaHQ6NXB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6cmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC44KTthbmltYXRpb246c3RhdHVzRG90UHVsc2UgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZTtmbGV4LXNocmluazowfUBrZXlmcmFtZXMgc3RhdHVzRG90UHVsc2V7MCUsdG97b3BhY2l0eTouNDt0cmFuc2Zvcm06c2NhbGUoLjkpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEuMSl9fS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIgLnN0YXR1cy1iYXItbGFiZWx7ZmxleC1zaHJpbms6MDtmb250LXdlaWdodDo1MDA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi42MjVyZW19LnN0cnVjdHVyZWQtc3RhdHVzLWJhciAuc3RhdHVzLWJhci10aW1lcntmbGV4LXNocmluazowO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtcztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIuY29tcGxldGVke2FuaW1hdGlvbjpzdGF0dXNCYXJGYWRlT3V0IDJzIGVhc2Utb3V0IDFzIGZvcndhcmRzfS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIuY29tcGxldGVkIC5zdGF0dXMtYmFyLWxhYmVse2NvbG9yOnZhcigtLXN1Y2Nlc3MpfUBrZXlmcmFtZXMgc3RhdHVzQmFyRmFkZU91dHswJXtvcGFjaXR5OjE7bWF4LWhlaWdodDoyMHB4fTcwJXtvcGFjaXR5OjA7bWF4LWhlaWdodDoyMHB4fXRve29wYWNpdHk6MDttYXgtaGVpZ2h0OjA7bWFyZ2luOjB9fS5jcm9zcy1zZXNzaW9uLXF1ZXVle2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweDttYXJnaW46MCA4cHggNHB4fS5xdWV1ZS1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O3BhZGRpbmc6MCA0cHg7Zm9udC1zaXplOi42cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5xdWV1ZS1oZWFkZXItbGFiZWx7ZmxleDoxO29wYWNpdHk6LjZ9LnF1ZXVlLWhlYWRlci1jbGVhcntib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouNTYyNXJlbTtwYWRkaW5nOjFweCA0cHg7Ym9yZGVyLXJhZGl1czozcHg7b3BhY2l0eTouNTt0cmFuc2l0aW9uOmNvbG9yIC4xNXMsYmFja2dyb3VuZCAuMTVzLG9wYWNpdHkgLjE1c30ucXVldWUtaGVhZGVyLWNsZWFyOmhvdmVye2NvbG9yOnZhcigtLWVycm9yLCAjZTU1KTtiYWNrZ3JvdW5kOiNlNTU1NTUxZjtvcGFjaXR5OjF9LnF1ZXVlLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6NHB4IDhweDtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNzt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBlYXNlfS5xdWV1ZS1pdGVtOmhvdmVye29wYWNpdHk6MX0ucXVldWUtaXRlbS1kb3R7ZmxleC1zaHJpbms6MDt3aWR0aDo0cHg7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuNik7YW5pbWF0aW9uOnN0YXR1c0RvdFB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9LnF1ZXVlLWl0ZW0tdGV4dHtmbGV4OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ucXVldWUtaXRlbS1hZ2V7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjU2MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO29wYWNpdHk6LjV9LnF1ZXVlLWl0ZW0tc2VuZC1ub3d7ZmxleC1zaHJpbms6MDtib3JkZXI6MXB4IHNvbGlkIHJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuMyk7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS1hY2NlbnQsICNjNTY1M2QpO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjRweDtmb250LXNpemU6LjZyZW07bGluZS1oZWlnaHQ6MS40O3RyYW5zaXRpb246Y29sb3IgLjE1cyxiYWNrZ3JvdW5kIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXN9LnF1ZXVlLWl0ZW0tc2VuZC1ub3c6aG92ZXJ7Y29sb3I6dmFyKC0tYWNjZW50LCAjYzU2NTNkKTtiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuMTIpO2JvcmRlci1jb2xvcjpyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjUpfS5xdWV1ZS1pdGVtLWNhbmNlbHtmbGV4LXNocmluazowO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzoxcHggNHB4O2JvcmRlci1yYWRpdXM6M3B4O2ZvbnQtc2l6ZTouNjg3NXJlbTtsaW5lLWhlaWdodDoxO29wYWNpdHk6LjQ7dHJhbnNpdGlvbjpjb2xvciAuMTVzLGJhY2tncm91bmQgLjE1cyxvcGFjaXR5IC4xNXN9LnF1ZXVlLWl0ZW0tY2FuY2VsOmhvdmVye2NvbG9yOnZhcigtLWVycm9yLCAjZTU1KTtiYWNrZ3JvdW5kOiNlNTU1NTUxZjtvcGFjaXR5OjF9LnNldHRpbmdzLWNhcmQtaGVhZHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTJweDttYXJnaW4tYm90dG9tOjE0cHh9LnNldHRpbmdzLWNhcmQtaWNvbntmbGV4OjAgMCBhdXRvO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCNjNTY1M2QyZSwjYzU2NTNkMGYpO2NvbG9yOnZhcigtLWFjY2VudCk7Zm9udC1zaXplOjE4cHg7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2M1NjUzZDJlfS5zZXR0aW5ncy1jYXJkLWhlYWQtdGV4dHtmbGV4OjE7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4fS5zZXR0aW5ncy1jYXJkLXRpdGxle2ZvbnQtc2l6ZTouOTM3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDA1ZW07bGluZS1oZWlnaHQ6MS4zO21hcmdpbjowfS5zZXR0aW5ncy1jYXJkLWRlc2N7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjU7bWFyZ2luOjB9LnNldHRpbmdzLWNhcmQtYWN0aW9uc3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDttYXJnaW4tdG9wOjZweH0uc2V0dGluZ3MtY2FyZC1hY3Rpb25zIC5idG57bWluLXdpZHRoOjEyMHB4fS5zZXR0aW5ncy1zdWNjZXNzLW1lc3NhZ2V7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnNldHRpbmdzLXNlY3Rpb24taGVhZHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTBweDttYXJnaW4tYm90dG9tOjEycHh9LnNldHRpbmdzLXNlY3Rpb24taWNvbntmbGV4OjAgMCBhdXRvO3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOiNjNTY1M2QxYTtmb250LXNpemU6MTRweH0uc2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHR7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uc2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5ne2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi4wMDVlbTtsaW5lLWhlaWdodDoxLjM7bWFyZ2luOjB9LnNldHRpbmdzLXNlY3Rpb24tc3Vie2ZvbnQtc2l6ZTouNzJyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41O21hcmdpbjowfS5zZXR0aW5ncy10b2dnbGUtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjE0cHg7cGFkZGluZzoxMnB4IDE0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO21hcmdpbi10b3A6MTBweH0uc2V0dGluZ3MtdG9nZ2xlLXJvdysuc2V0dGluZ3MtdG9nZ2xlLXJvdywuc2V0dGluZ3MtdG9nZ2xlLXJvdysuc2V0dGluZ3MtcmFuZ2Utcm93LC5zZXR0aW5ncy1yYW5nZS1yb3crLnNldHRpbmdzLXRvZ2dsZS1yb3d7bWFyZ2luLXRvcDo4cHh9LnNldHRpbmdzLXRvZ2dsZS10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDozcHh9LnNldHRpbmdzLXRvZ2dsZS10aXRsZXtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Y3Vyc29yOnBvaW50ZXJ9LnNldHRpbmdzLXRvZ2dsZS1kZXNje2ZvbnQtc2l6ZTouNzJyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41fS5zZXR0aW5ncy1zd2l0Y2h7cG9zaXRpb246cmVsYXRpdmU7ZmxleDowIDAgYXV0bztjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9ja30uc2V0dGluZ3MtdG9nZ2xlLWFzaWRle2ZsZXg6MCAwIGF1dG87ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweH0uZW52LXByZXZpZXctbW9kYWx7bWF4LXdpZHRoOjcyMHB4fS5lbnYtcHJldmlldy1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEycHg7cGFkZGluZzoxOHB4IDI0cHggOHB4O21pbi1oZWlnaHQ6MH0uZW52LXByZXZpZXctdG9vbGJhcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O2ZsZXgtd3JhcDp3cmFwfS5lbnYtcHJldmlldy1tZXRhe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7Zm9udC1zaXplOi43OHJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LmVudi1wcmV2aWV3LXBpbGx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzoycHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDJlbTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpfS5lbnYtcHJldmlldy1waWxsLmlzLWluaGVyaXR7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LmVudi1wcmV2aWV3LXBpbGwuaXMtbWluaW1hbHtjb2xvcjp2YXIoLS1zdWNjZXNzKTtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKX0uZW52LXByZXZpZXctY291bnR7Zm9udC1zaXplOi43MnJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uZW52LXByZXZpZXctY29udHJvbHN7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtmbGV4LXdyYXA6d3JhcH0uZW52LXByZXZpZXctc2VhcmNoe3dpZHRoOjIwMHB4O21heC13aWR0aDoxMDAlO3BhZGRpbmc6NnB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtmb250LXNpemU6Ljc4cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmVudi1wcmV2aWV3LXNlYXJjaDpmb2N1c3tvdXRsaW5lOm5vbmU7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1mb2N1cyk7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tYWNjZW50LWdsb3cpfS5lbnYtcHJldmlldy1yZXZlYWx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmb250LXNpemU6Ljc0cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lfS5lbnYtcHJldmlldy1yZXZlYWwgaW5wdXR7YWNjZW50LWNvbG9yOnZhcigtLWFjY2VudCk7Y3Vyc29yOnBvaW50ZXJ9LmVudi1wcmV2aWV3LWxpc3R7bWF4LWhlaWdodDptaW4oNTZ2aCw0NjBweCk7b3ZlcmZsb3cteTphdXRvO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO3BhZGRpbmc6NHB4fS5lbnYtcHJldmlldy1saXN0OmZvY3Vze291dGxpbmU6bm9uZX0uZW52LXByZXZpZXctcm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMjIwcHgpIG1pbm1heCgwLDFmcikgYXV0bztnYXA6MTJweDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzo4cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCB1aS1tb25vc3BhY2UsICJTRiBNb25vIiwgTWVubG8sIENvbnNvbGFzLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouNzRyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xMnN9LmVudi1wcmV2aWV3LXJvdzpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0uZW52LXByZXZpZXctcm93Ky5lbnYtcHJldmlldy1yb3d7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1zdWJ0bGUpfS5lbnYtcHJldmlldy1uYW1le2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NjAwO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleC13cmFwOndyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZX0uZW52LXByZXZpZXctcm93LmlzLXNlbnNpdGl2ZSAuZW52LXByZXZpZXctbmFtZXtjb2xvcjp2YXIoLS13YXJuaW5nKX0uZW52LXByZXZpZXctYmFkZ2V7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzoxcHggNnB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOi42MnJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW07YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nLW11dGVkKTtjb2xvcjp2YXIoLS13YXJuaW5nKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLXdhcm5pbmcpfS5lbnYtcHJldmlldy1iYWRnZS1ydW50aW1le2JhY2tncm91bmQ6dmFyKC0taW5mby1tdXRlZCk7Y29sb3I6dmFyKC0taW5mbyk7Ym9yZGVyLWNvbG9yOnZhcigtLWluZm8pfS5lbnYtcHJldmlldy12YWx1ZXtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO21pbi13aWR0aDowfS5lbnYtcHJldmlldy12YWx1ZS5pcy1ydW50aW1le2ZvbnQtc3R5bGU6aXRhbGljO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5lbnYtcHJldmlldy1sZW57Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi42OHJlbTt3aGl0ZS1zcGFjZTpub3dyYXB9LmVudi1wcmV2aWV3LWxvYWRpbmcsLmVudi1wcmV2aWV3LWVtcHR5e3BhZGRpbmc6MjRweCA4cHg7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi43OHJlbX0uZW52LXByZXZpZXctZm9vdGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHg7cGFkZGluZzoxNHB4IDI0cHggMThweH0uZW52LXByZXZpZXctaGludHtmb250LXNpemU6LjdyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleDoxO21pbi13aWR0aDowfUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5lbnYtcHJldmlldy1tb2RhbHttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDI0cHgpfS5lbnYtcHJldmlldy1yb3d7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6NHB4fS5lbnYtcHJldmlldy1sZW57anVzdGlmeS1zZWxmOmVuZH0uZW52LXByZXZpZXctc2VhcmNoLC5lbnYtcHJldmlldy1jb250cm9sc3t3aWR0aDoxMDAlfX0uc2V0dGluZ3MtcmFuZ2Utcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzoxMnB4IDE0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO21hcmdpbi10b3A6OHB4fS5zZXR0aW5ncy1yYW5nZS1sYWJlbHtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7ZmxleDowIDAgYXV0bzttYXJnaW4tYm90dG9tOjB9LnNldHRpbmdzLXJhbmdle2ZsZXg6MTttaW4td2lkdGg6MDthY2NlbnQtY29sb3I6dmFyKC0tYWNjZW50KX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZXstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7aGVpZ2h0OjIycHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7bWFyZ2luOjA7LS1yYW5nZS1maWxsOiA1MCV9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsdmFyKC0tYWNjZW50KSAwJSx2YXIoLS1hY2NlbnQpIHZhcigtLXJhbmdlLWZpbGwsIDUwJSkscmdiYSgxMjUsOTEsNTcsLjIpIHZhcigtLXJhbmdlLWZpbGwsIDUwJSkscmdiYSgxMjUsOTEsNTcsLjIpIDEwMCUpO2JvcmRlcjpub25lfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOm5vbmU7Ym94LXNoYWRvdzowIDJweCA2cHggIzE0MGUwODM4LDAgMCAwIC41cHggIzdkNWIzOTFhO21hcmdpbi10b3A6LThweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTZzIGVhc2UsYm94LXNoYWRvdyAuMTZzIGVhc2V9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6aG92ZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjA4KX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjE2KTtib3gtc2hhZG93OjAgNHB4IDEwcHggIzE0MGUwODQ3LDAgMCAwIDhweCAjYzU2NTNkMWYsMCAwIDAgLjVweCAjN2Q1YjM5MWF9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Zm9jdXMtdmlzaWJsZTo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7Ym94LXNoYWRvdzowIDJweCA2cHggIzE0MGUwODM4LDAgMCAwIDRweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgMCAwIC41cHggIzdkNWIzOTFhfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOjotbW96LXJhbmdlLXRyYWNre2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDojN2Q1YjM5MzM7Ym9yZGVyOm5vbmV9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Oi1tb3otcmFuZ2UtcHJvZ3Jlc3N7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Ym9yZGVyOm5vbmV9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWJ7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiNmZmY7Y3Vyc29yOnBvaW50ZXI7Ym94LXNoYWRvdzowIDJweCA2cHggIzE0MGUwODM4LDAgMCAwIC41cHggIzdkNWIzOTFhO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNnMgZWFzZX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTpob3Zlcjo6LW1vei1yYW5nZS10aHVtYnt0cmFuc2Zvcm06c2NhbGUoMS4wOCl9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6YWN0aXZlOjotbW96LXJhbmdlLXRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjE2KX0uc2V0dGluZ3MtcmFuZ2UtdmFsdWV7ZmxleDowIDAgNDRweDt0ZXh0LWFsaWduOnJpZ2h0O2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9ue2Rpc3BsYXk6ZmxleDtnYXA6OHB4O2FsaWduLWl0ZW1zOnN0cmV0Y2h9LnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbj4uZmllbGQtaW5wdXQsLnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbj4uZmllbGQtc2VsZWN0LC5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb24+c2VsZWN0e2ZsZXg6MTttaW4td2lkdGg6MH0uc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uPi5idG57ZmxleC1zaHJpbms6MH0uc2V0dGluZ3MtYWJvdXQtcm93LWFjdGlvbntmbGV4LXdyYXA6bm93cmFwfS5zZXR0aW5ncy12YWx1ZS1mbGV4e2ZsZXg6MTt0ZXh0LWFsaWduOnJpZ2h0fS5maWxlLXBpY2tlcntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6NnB4IDEycHggNnB4IDZweDtiYWNrZ3JvdW5kOiNmZmZmZmZiODtib3JkZXI6MXB4IGRhc2hlZCByZ2JhKDEyNSw5MSw1NywuMjUpO2JvcmRlci1yYWRpdXM6MTJweDt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMThzLGJhY2tncm91bmQgLjE4c30uZmlsZS1waWNrZXI6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudC1zb2Z0LCByZ2JhKDE5NywgMTAxLCA2MSwgLjQ1KSk7YmFja2dyb3VuZDojZmZmZmZmZTZ9LmZpbGUtcGlja2VyLmZpbGUtcGlja2VyLWhhcy1maWxle2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6I2M1NjUzZDU5O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjYzU2NTNkMTQsI2ZmZmZmZmQ5KX0uZmlsZS1waWNrZXItaW5wdXR7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4O2hlaWdodDoxcHg7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmV9LmZpbGUtcGlja2VyLXRyaWdnZXJ7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjhweCAxNHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1hY2NlbnQpLGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFjY2VudCkgODAlLCMwMDAgMCUpKTtjb2xvcjojZmZmO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Ym9yZGVyLXJhZGl1czo5cHg7Y3Vyc29yOnBvaW50ZXI7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOmZpbHRlciAuMTVzLHRyYW5zZm9ybSAuMTVzLGJveC1zaGFkb3cgLjE1cztib3gtc2hhZG93OnZhcigtLXNoYWRvdy14cyk7dXNlci1zZWxlY3Q6bm9uZX0uZmlsZS1waWNrZXItdHJpZ2dlcjpob3ZlcntmaWx0ZXI6YnJpZ2h0bmVzcygxLjA1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSl9LmZpbGUtcGlja2VyLXRyaWdnZXI6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfS5maWxlLXBpY2tlci1pbnB1dDpmb2N1cy12aXNpYmxlKy5maWxlLXBpY2tlci10cmlnZ2Vye291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5maWxlLXBpY2tlci1pY29ue3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7ZmxleC1zaHJpbms6MH0uZmlsZS1waWNrZXItbGFiZWx7d2hpdGUtc3BhY2U6bm93cmFwfS5maWxlLXBpY2tlci1uYW1le2ZsZXg6MTttaW4td2lkdGg6MDtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyl9LmZpbGUtcGlja2VyLmZpbGUtcGlja2VyLWhhcy1maWxlIC5maWxlLXBpY2tlci1uYW1le2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NTAwfS5zZXR0aW5ncy1hcHAtaWNvbi1ibG9ja3ttYXJnaW4tYm90dG9tOjE4cHh9LnNldHRpbmdzLWFwcC1pY29uLXBpY2tlcntkaXNwbGF5OmZsZXg7Z2FwOjEycHg7ZmxleC13cmFwOndyYXB9LnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6MTBweDtib3JkZXItcmFkaXVzOjE0cHg7YmFja2dyb3VuZDojZmZmZmZmOGM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTIpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xOHMsYmFja2dyb3VuZCAuMThzLHRyYW5zZm9ybSAuMThzLGJveC1zaGFkb3cgLjE4czttaW4td2lkdGg6ODRweH0uc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uOmhvdmVye3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JvcmRlci1jb2xvcjojYzU2NTNkNGQ7YmFja2dyb3VuZDojZmZmZmZmYzc7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpfS5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24uc2VsZWN0ZWQsLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvblthcmlhLXByZXNzZWQ9dHJ1ZV17Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCNjNTY1M2QyNCwjYzU2NTNkMGEpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNjNTY1M2QzM30uc2V0dGluZ3MtYXBwLWljb24tcHJldmlld3t3aWR0aDo1NnB4O2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6MTJweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zZXR0aW5ncy1hcHAtaWNvbi1sYWJlbHtmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo1MDB9LnNldHRpbmdzLWNvbm5lY3QtdXJsLXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7d29yZC1icmVhazpicmVhay1hbGw7dXNlci1zZWxlY3Q6YWxsOy13ZWJraXQtdXNlci1zZWxlY3Q6YWxsfUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5zZXR0aW5ncy10b2dnbGUtcm93LC5zZXR0aW5ncy1yYW5nZS1yb3d7cGFkZGluZzoxMHB4IDEycHh9LnNldHRpbmdzLXRvZ2dsZS1yb3d7ZmxleC13cmFwOndyYXB9LnNldHRpbmdzLWNhcmQtYWN0aW9uc3tqdXN0aWZ5LWNvbnRlbnQ6c3RyZXRjaH0uc2V0dGluZ3MtY2FyZC1hY3Rpb25zIC5idG57ZmxleDoxO21pbi13aWR0aDowfS5maWxlLXBpY2tlcntmbGV4LXdyYXA6d3JhcDtwYWRkaW5nOjhweH0uZmlsZS1waWNrZXItdHJpZ2dlcntmbGV4OjEgMSBhdXRvO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmZpbGUtcGlja2VyLW5hbWV7ZmxleDoxIDEgMTAwJTt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjAgNHB4fS5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb257ZmxleC13cmFwOndyYXB9LnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbj4uYnRue2ZsZXg6MX19LnRvcGJhci1naXQtc2xvdHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0udG9wYmFyLWdpdC1zbG90OmVtcHR5e2Rpc3BsYXk6bm9uZX0udG9wYmFyLWdpdC1iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2hlaWdodDozMnB4O3BhZGRpbmc6MCAxMHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43MnJlbTtmb250LXdlaWdodDo1MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Y3Vyc29yOnBvaW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7Ym94LXNpemluZzpib3JkZXItYm94O2xpbmUtaGVpZ2h0OjF9LnRvcGJhci1naXQtYmFkZ2U6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmODA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0udG9wYmFyLWdpdC1iYWRnZTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45Nil9LnRvcGJhci1naXQtaWNvbntmbGV4LXNocmluazowO29wYWNpdHk6Ljg1fS50b3BiYXItZ2l0LWJyYW5jaHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC13ZWlnaHQ6NjAwO21heC13aWR0aDoxMmVtO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS50b3BiYXItZ2l0LWNvdW50e2NvbG9yOnZhcigtLWFjY2VudCk7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKX0udG9wYmFyLWdpdC1jbGVhbntjb2xvcjojM2NhMDVhZDk7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZTouNzhyZW19LnF1aWNrLWNvbW1pdC1tb2RhbHttYXgtd2lkdGg6NTQwcHh9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMnB4fS5xYy1lbXB0eXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtwYWRkaW5nOjZweCAwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc3R5bGU6aXRhbGljfS5xYy1maWxlLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7bGluZS1oZWlnaHQ6MS42O3BhZGRpbmc6MXB4IDJweDtib3JkZXItcmFkaXVzOjVweH0ucWMtZmlsZS1yb3c6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MGZ9LnFjLWZpbGUtYmFkZ2V7ZmxleC1zaHJpbms6MDt3aWR0aDoxN3B4O2hlaWdodDoxN3B4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC1zaXplOi42NnJlbTtmb250LXdlaWdodDo4MDA7bGV0dGVyLXNwYWNpbmc6MDtsaW5lLWhlaWdodDoxO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyl9LnFjLWJhZGdlLWFkZHtjb2xvcjojMjI4MDQyZmE7YmFja2dyb3VuZDojM2NhMDVhMjl9LnFjLWJhZGdlLW1vZHtjb2xvcjojYWE2ZTBlZmE7YmFja2dyb3VuZDojZGM5NjFlMjl9LnFjLWJhZGdlLWRlbHtjb2xvcjojYmUzODM4ZmE7YmFja2dyb3VuZDojYzg0NjQ2MjZ9LnFjLWJhZGdlLXJlbntjb2xvcjojNGU2NGJjZmE7YmFja2dyb3VuZDojNmU4MmM4Mjl9LnFjLWJhZGdlLXVudHJhY2tlZHtjb2xvcjojMjI4MDQyZjI7YmFja2dyb3VuZDojM2NhMDVhMWZ9LnFjLWJhZGdlLWlnbm9yZWQsLnFjLWJhZGdlLW90aGVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6Izc4Nzg3ODFmfS5xYy1maWxlLXBhdGh7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjB9LnFjLWZpbGUtZGlye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5xYy1maWxlLW5hbWV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo1MDB9LnFjLXN1Ym1vZHVsZS1iYWRnZXtmbGV4LXNocmluazowO3BhZGRpbmc6MXB4IDZweDtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOiM4YzY0YzgyOTtjb2xvcjojNmU0NmI0ZjI7Zm9udC1zaXplOi42OHJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07d2hpdGUtc3BhY2U6bm93cmFwfS5xYy1tZXNzYWdlLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDo4cHh9LnFjLWFpLWJ0bntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2NvbG9yOnZhcigtLWFjY2VudCl9LnFjLWFpLWJ0biBzdmd7Y29sb3I6dmFyKC0tYWNjZW50KTtmbGV4LXNocmluazowfS5xYy1haS1idG46ZGlzYWJsZWR7b3BhY2l0eTouNTtjdXJzb3I6bm90LWFsbG93ZWQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnFjLWFpLWJ0bjpkaXNhYmxlZCBzdmd7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnFjLW1lc3NhZ2UtaW5wdXR7cmVzaXplOnZlcnRpY2FsO21pbi1oZWlnaHQ6NjhweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOi44NHJlbTtsaW5lLWhlaWdodDoxLjU1fS5xYy10YWctZmllbGQtaW5wdXR7ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOi44MnJlbX0ucWMtdGFnLWZpZWxkLWlucHV0OmRpc2FibGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6IzdkNWIzOTBhO2JvcmRlci1jb2xvcjojN2Q1YjM5MTQ7Y3Vyc29yOmRlZmF1bHQ7Ym94LXNoYWRvdzpub25lfS5xdWljay1jb21taXQtbW9kYWwgLndvcmt0cmVlLW1lcmdlLWFjdGlvbnN7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtnYXA6OHB4O21hcmdpbi10b3A6NHB4fS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTRweH0ucWMtc2VjdGlvbi10aXRsZXtmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjcwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGV0dGVyLXNwYWNpbmc6LjA3ZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5xdWljay1jb21taXQtbW9kYWx7bWF4LXdpZHRoOjYyMHB4fS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLWJvZHl7Z2FwOjB9LnFjLXJlbGVhc2UtcGFuZWwsLnFjLXJlc3VsdC1wYW5lbHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxNHB4fS5xYy1wYWlye2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6NzJweCBtaW5tYXgoMCwxZnIpO2dhcDoxMnB4O2FsaWduLWl0ZW1zOnN0YXJ0fS5xYy1wYWlyLWxhYmVse3BhZGRpbmctdG9wOjlweDtmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjgwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsZXR0ZXItc3BhY2luZzouMDZlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnFjLXBhaXItZmxvd3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLC45ZnIpIDI0cHggbWlubWF4KDAsMS4xZnIpO2dhcDo4cHg7YWxpZ24taXRlbXM6Y2VudGVyO21pbi13aWR0aDowfS5xYy1wYWlyLXZhbHVle21pbi13aWR0aDowO21pbi1oZWlnaHQ6MzhweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7cGFkZGluZzo4cHggMTBweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xMik7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDojZmZmZmZmODU7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO292ZXJmbG93OmhpZGRlbn0ucWMtcGFpci12YWx1ZS0tdG97YmFja2dyb3VuZDojZmZmZmZmZDY7Ym9yZGVyLWNvbG9yOiNjNTY1M2QzODtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5xYy1wYWlyLXZhbHVlIGNvZGV7ZmxleC1zaHJpbms6MDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOi43OHJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNjNTY1M2QxNztib3JkZXItcmFkaXVzOjVweDtwYWRkaW5nOjJweCA2cHh9LnFjLXBhaXItdmFsdWUgc3BhbnttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1zaXplOi44MnJlbX0ucWMtcGFpci0tY29tbWl0IC5xYy1wYWlyLWZsb3d7YWxpZ24taXRlbXM6c3RyZXRjaH0ucWMtcGFpci0tY29tbWl0IC5xYy1wYWlyLXZhbHVle21pbi1oZWlnaHQ6NzZweDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5xYy1wYWlyLS1jb21taXQgLnFjLXBhaXItdmFsdWUtLXRve3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5xYy1wYWlyLS1jb21taXQgLnFjLW1lc3NhZ2UtaW5wdXR7bWluLWhlaWdodDo3NnB4O3dpZHRoOjEwMCU7cmVzaXplOnZlcnRpY2FsfS5xYy1wYWlyLS10YWcgLnFjLXBhaXItdmFsdWUtLXRve3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5xYy1wYWlyLS10YWcgLnFjLXRhZy1maWVsZC1pbnB1dHt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6MzhweH0ucWMtcGFpci1hcnJvd3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OjgwMDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSl9LnFjLW11dGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljfS5xYy1tb2RhbC1hY3Rpb25zLC5xYy1yZXN1bHQtYWN0aW9uc3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2dhcDo4cHh9LnFjLXJlc3VsdC1wYW5lbHtwYWRkaW5nLXRvcDoycHh9LnFjLXJlc3VsdC1wdXNoZWR7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7bWluLWhlaWdodDozMHB4O3BhZGRpbmc6MCAxMHB4O2JvcmRlci1yYWRpdXM6OTk5cHg7Y29sb3I6IzI4ODI0NmYyO2JhY2tncm91bmQ6IzNjYTA1YTFmO2JvcmRlcjoxcHggc29saWQgcmdiYSg2MCwxNjAsOTAsLjI0KTtmb250LXNpemU6Ljc4cmVtO2ZvbnQtd2VpZ2h0OjcwMH0ucWMtZG9jay13cmFwe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDtwYWRkaW5nLXRvcDoycHh9LnFjLWRvY2std3JhcFtkYXRhLWRpc2FibGVkPSIxIl17b3BhY2l0eTouNTU7cG9pbnRlci1ldmVudHM6bm9uZX0ucWMtZG9jay1idXN5e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O3BhZGRpbmc6MTBweCAxNHB4O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOiNjNTY1M2QxYTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMik7Y29sb3I6dmFyKC0tYWNjZW50KTtmb250LXNpemU6LjgycmVtO2ZvbnQtd2VpZ2h0OjcwMH0ucWMtZG9jay1idXN5LWRvdHt3aWR0aDo4cHg7aGVpZ2h0OjhweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7YW5pbWF0aW9uOnFjLWRvY2stYnVzeS1wdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgcWMtZG9jay1idXN5LXB1bHNlezAlLHRve29wYWNpdHk6LjQ7dHJhbnNmb3JtOnNjYWxlKC44NSl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMS4xNSl9fS5xYy1kb2NrLXN0YWdley0tcWMtdG9uZTogdmFyKC0tYWNjZW50KTstLXFjLXRvbmUtc29mdDogcmdiYSgxOTcsIDEwMSwgNjEsIC4yKTtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgOTZweDtnYXA6MTBweDtoZWlnaHQ6MTY4cHg7cGFkZGluZzo4cHg7Ym9yZGVyLXJhZGl1czoxNnB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjE2KTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudCgxMjAlIDEyMCUgYXQgMzAlIDMwJSwjZmZmZmZmOGMsI2ZmZjVlYjI5KSxsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmY3NSwjZmZmNWViMzgpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZmIzLDAgMXB4IDNweCAjNTkzYTIwMGQ7dXNlci1zZWxlY3Q6bm9uZX0ucWMtZG9jay1zdGFnZVtkYXRhLWFjdGlvbj1jb21taXQtdGFnXXstLXFjLXRvbmU6ICM0YTZmYTU7LS1xYy10b25lLXNvZnQ6IHJnYmEoNzQsIDExMSwgMTY1LCAuMjIpfS5xYy1kb2NrLXN0YWdlW2RhdGEtYWN0aW9uPWNvbW1pdC1wdXNoXXstLXFjLXRvbmU6ICM0ZjdhNTg7LS1xYy10b25lLXNvZnQ6IHJnYmEoNzksIDEyMiwgODgsIC4yMil9LnFjLWRvY2stc3RhZ2VbZGF0YS1hY3Rpb249Y29tbWl0LXRhZy1wdXNoXXstLXFjLXRvbmU6ICM3YzVhYTg7LS1xYy10b25lLXNvZnQ6IHJnYmEoMTI0LCA5MCwgMTY4LCAuMjQpfS5xYy1kb2NrLWZpZWxke3Bvc2l0aW9uOnJlbGF0aXZlO21pbi13aWR0aDowO2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOnJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgxMjUsOTEsNTcsLjAzNSkgMCA4cHgsdHJhbnNwYXJlbnQgOHB4IDE2cHgpO3RvdWNoLWFjdGlvbjpub25lO292ZXJmbG93OmhpZGRlbn0ucWMtZG9jay1jbHVzdGVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtib3JkZXItcmFkaXVzOjE0cHg7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1xYy10b25lKSAxMCUsdHJhbnNwYXJlbnQpO2JvcmRlcjoxLjVweCBkYXNoZWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tcWMtdG9uZSkgMzglLHRyYW5zcGFyZW50KTtib3gtc2hhZG93OjAgNHB4IDE0cHggdmFyKC0tcWMtdG9uZS1zb2Z0KTtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6MDtvcGFjaXR5OjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjIycyBjdWJpYy1iZXppZXIoLjIyLDEsLjM2LDEpLHdpZHRoIC4yMnMgY3ViaWMtYmV6aWVyKC4yMiwxLC4zNiwxKSxoZWlnaHQgLjIycyBjdWJpYy1iZXppZXIoLjIyLDEsLjM2LDEpLG9wYWNpdHkgLjE4cyBlYXNlLGJhY2tncm91bmQgLjJzIGVhc2UsYm9yZGVyLWNvbG9yIC4ycyBlYXNlfS5xYy1kb2NrLWNsdXN0ZXIuaXMtYWN0aXZle29wYWNpdHk6MX0ucWMtY2hpcHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjdweDtoZWlnaHQ6MzhweDtwYWRkaW5nOjAgMTRweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yMik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOiNmZmZmZmZlYjtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgycmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDFlbTt3aGl0ZS1zcGFjZTpub3dyYXA7Y3Vyc29yOmdyYWI7dG91Y2gtYWN0aW9uOm5vbmU7Ym94LXNoYWRvdzowIDJweCA2cHggIzU5M2EyMDE0O3otaW5kZXg6Mjt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlfS5xYy1jaGlwLnFjLWNoaXAtLWFuaW17dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI4cyBjdWJpYy1iZXppZXIoLjIyLDEsLjM2LDEpLGJveC1zaGFkb3cgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlfS5xYy1jaGlwLmlzLWdyYWJiaW5ne2N1cnNvcjpncmFiYmluZzt6LWluZGV4OjU7Ym94LXNoYWRvdzowIDEycHggMjZweCAjNTkzYTIwMzh9LnFjLWNoaXA6ZGlzYWJsZWR7Y3Vyc29yOm5vdC1hbGxvd2VkfS5xYy1jaGlwOm5vdCg6ZGlzYWJsZWQpOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1xYy10b25lKX0ucWMtY2hpcC1kb3R7d2lkdGg6OXB4O2hlaWdodDo5cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojN2Q1YjM5NGQ7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggI2ZmZjk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyBlYXNlfS5xYy1jaGlwLS1jb21taXQgLnFjLWNoaXAtZG90e2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KX0ucWMtY2hpcC0tdGFnIC5xYy1jaGlwLWRvdHtiYWNrZ3JvdW5kOiM0YTZmYTV9LnFjLWNoaXAtLXB1c2ggLnFjLWNoaXAtZG90e2JhY2tncm91bmQ6IzRmN2E1OH0ucWMtY2hpcC0tc3ViIC5xYy1jaGlwLWRvdHtiYWNrZ3JvdW5kOiMzYThhOGZ9LnFjLWNoaXAtLWNvbW1pdHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWNjZW50KSAzMCUscmdiYSgxMjUsOTEsNTcsLjIpKX0ucWMtY2hpcC0tdGFne2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjNGE2ZmE1IDMwJSxyZ2JhKDEyNSw5MSw1NywuMikpfS5xYy1jaGlwLS1wdXNoe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjNGY3YTU4IDMwJSxyZ2JhKDEyNSw5MSw1NywuMikpfS5xYy1jaGlwLS1zdWJ7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCMzYThhOGYgMzAlLHJnYmEoMTI1LDkxLDU3LC4yKSl9LnFjLWNoaXAuaXMtZ3JhYmJpbmcsLnFjLWNoaXAuaXMtYXR0YWNoZWR7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3gtc2hhZG93OjAgMTJweCAyNnB4IHZhcigtLXFjLXRvbmUtc29mdCk7ei1pbmRleDo1fS5xYy1jaGlwLmlzLWdyYWJiaW5nIC5xYy1jaGlwLWRvdCwucWMtY2hpcC5pcy1hdHRhY2hlZCAucWMtY2hpcC1kb3R7dHJhbnNmb3JtOnNjYWxlKDEuMSl9LnFjLWNoaXAtLWNvbW1pdC5pcy1ncmFiYmluZywucWMtY2hpcC0tY29tbWl0LmlzLWF0dGFjaGVke2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmLGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFjY2VudCkgMTYlLCNmZmYpKTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWNjZW50KSA0NiUsdHJhbnNwYXJlbnQpfS5xYy1jaGlwLS10YWcuaXMtZ3JhYmJpbmcsLnFjLWNoaXAtLXRhZy5pcy1hdHRhY2hlZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZixjb2xvci1taXgoaW4gc3JnYiwjNGE2ZmE1IDE2JSwjZmZmKSk7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCM0YTZmYTUgNDYlLHRyYW5zcGFyZW50KX0ucWMtY2hpcC0tcHVzaC5pcy1ncmFiYmluZywucWMtY2hpcC0tcHVzaC5pcy1hdHRhY2hlZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZixjb2xvci1taXgoaW4gc3JnYiwjNGY3YTU4IDE2JSwjZmZmKSk7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCM0ZjdhNTggNDYlLHRyYW5zcGFyZW50KX0ucWMtY2hpcC0tc3ViLmlzLWdyYWJiaW5nLC5xYy1jaGlwLS1zdWIuaXMtYXR0YWNoZWR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmYsY29sb3ItbWl4KGluIHNyZ2IsIzNhOGE4ZiAxNiUsI2ZmZikpO2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjM2E4YThmIDQ2JSx0cmFuc3BhcmVudCl9LnFjLWRvY2stbGF1bmNoe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjRweDtib3JkZXItcmFkaXVzOjE0cHg7Ym9yZGVyOjEuNXB4IGRhc2hlZCByZ2JhKDEyNSw5MSw1NywuMzIpO2JhY2tncm91bmQ6I2ZmZjY7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7dG91Y2gtYWN0aW9uOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4ycyBlYXNlLGJvcmRlci1jb2xvciAuMnMgZWFzZSxjb2xvciAuMnMgZWFzZSx0cmFuc2Zvcm0gLjJzIGVhc2UsYm94LXNoYWRvdyAuMnMgZWFzZX0ucWMtZG9jay1sYXVuY2g6bm90KDpkaXNhYmxlZCk6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLXFjLXRvbmUpO2NvbG9yOnZhcigtLXFjLXRvbmUpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tcWMtdG9uZSkgOCUscmdiYSgyNTUsMjU1LDI1NSwuNSkpfS5xYy1kb2NrLWxhdW5jaDpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWR9LnFjLWRvY2stbGF1bmNoLWFycm93e2Rpc3BsYXk6aW5saW5lLWZsZXg7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2V9LnFjLWRvY2stbGF1bmNoLWxhYmVse2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6ODAwO2xldHRlci1zcGFjaW5nOi4wNGVtfS5xYy1kb2NrLXN0YWdlW2RhdGEtaG90PSIxIl0gLnFjLWRvY2stbGF1bmNoe2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tcWMtdG9uZSk7YmFja2dyb3VuZDp2YXIoLS1xYy10b25lKTtjb2xvcjojZmZmO3RyYW5zZm9ybTpzY2FsZSgxLjA0KTtib3gtc2hhZG93OjAgOHB4IDIycHggdmFyKC0tcWMtdG9uZS1zb2Z0KSwwIDAgMCA1cHggY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tcWMtdG9uZSkgMTglLHRyYW5zcGFyZW50KX0ucWMtZG9jay1zdGFnZVtkYXRhLWhvdD0iMSJdIC5xYy1kb2NrLWxhdW5jaC1hcnJvd3t0cmFuc2Zvcm06dHJhbnNsYXRlKDNweCl9LnFjLWRvY2staGludHttaW4taGVpZ2h0OjFlbTtmb250LXNpemU6LjdyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dGV4dC1hbGlnbjpjZW50ZXI7bGV0dGVyLXNwYWNpbmc6LjAyZW07b3BhY2l0eTouOH1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5xYy1jaGlwLC5xYy1jaGlwLS1hbmltLC5xYy1kb2NrLWNsdXN0ZXIsLnFjLWRvY2stbGF1bmNoLC5xYy1kb2NrLWJ1c3ktZG90e2FuaW1hdGlvbjpub25lIWltcG9ydGFudDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fX1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsudG9wYmFyLWdpdC1icmFuY2h7bWF4LXdpZHRoOjhlbX0udG9wYmFyLWdpdC1iYWRnZXtwYWRkaW5nOjAgOHB4O2ZvbnQtc2l6ZTouN3JlbX0ucXVpY2stY29tbWl0LW1vZGFse3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDpjYWxjKDEwMGR2aCAtIG1heCgxNnB4LHZhcigtLXdhbmQtc2FmZS10b3ApKSAtIG1heCgxMnB4LHZhcigtLXdhbmQtc2FmZS1ib3R0b20pKSl9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtaGVhZGVye3BhZGRpbmc6MTRweCAxNnB4IDEycHh9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtdGl0bGV7Zm9udC1zaXplOjEuMDVyZW19LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOi43OHJlbTtsaW5lLWhlaWdodDoxLjM1fS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLWJvZHl7cGFkZGluZzoxNHB4IDE2cHggY2FsYygxNnB4ICsgdmFyKC0td2FuZC1zYWZlLWJvdHRvbSkpfS5xYy1yZWxlYXNlLXBhbmVsLC5xYy1yZXN1bHQtcGFuZWx7Z2FwOjEycHh9LnFjLXBhaXJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6NXB4fS5xYy1wYWlyLWxhYmVse3BhZGRpbmctdG9wOjA7Zm9udC1zaXplOi42OHJlbX0ucWMtcGFpci1mbG93e2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjdweDtwb3NpdGlvbjpyZWxhdGl2ZX0ucWMtcGFpci1hcnJvd3t3aWR0aDoyOHB4O2hlaWdodDoyMHB4O2p1c3RpZnktc2VsZjpjZW50ZXI7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MX0ucWMtcGFpci12YWx1ZXttaW4taGVpZ2h0OjM2cHg7cGFkZGluZzo4cHggMTBweH0ucWMtcGFpci12YWx1ZSBjb2Rle2ZvbnQtc2l6ZTouNzZyZW19LnFjLXBhaXItdmFsdWUgc3Bhbntmb250LXNpemU6LjhyZW19LnFjLXBhaXItLWNvbW1pdCAucWMtcGFpci12YWx1ZXttaW4taGVpZ2h0OmF1dG99LnFjLXBhaXItLWNvbW1pdCAucWMtbWVzc2FnZS1pbnB1dHttaW4taGVpZ2h0OjkycHg7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MS40NX0ucWMtcGFpci0tdGFnIC5xYy10YWctZmllbGQtaW5wdXR7bWluLWhlaWdodDo0NHB4O2ZvbnQtc2l6ZToxNnB4fS5xYy1kb2NrLXN0YWdle2hlaWdodDoyMzZweDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dyaWQtdGVtcGxhdGUtcm93czptaW5tYXgoMCwxZnIpIDU4cHg7Z2FwOjhweDtwYWRkaW5nOjhweDtib3JkZXItcmFkaXVzOjE0cHh9LnFjLWRvY2stZmllbGR7bWluLWhlaWdodDoxNjBweH0ucWMtY2hpcHtoZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTJweDtmb250LXNpemU6LjhyZW19LnFjLWRvY2stbGF1bmNoe21pbi1oZWlnaHQ6NThweDtmbGV4LWRpcmVjdGlvbjpyb3c7Z2FwOjhweDtib3JkZXItcmFkaXVzOjEzcHh9LnFjLWRvY2stbGF1bmNoLWxhYmVse2ZvbnQtc2l6ZTouNzhyZW19LnFjLWRvY2stc3RhZ2VbZGF0YS1ob3Q9IjEiXSAucWMtZG9jay1sYXVuY2gtYXJyb3d7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMnB4KX19LndhbmQtZGlhbG9nLWJhY2tkcm9we3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7ei1pbmRleDo5MDAwO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nLXRvcDptYXgoMjRweCx2YXIoLS13YW5kLXNhZmUtdG9wKSk7cGFkZGluZy1ib3R0b206bWF4KDI0cHgsdmFyKC0td2FuZC1zYWZlLWJvdHRvbSkpO3BhZGRpbmctbGVmdDptYXgoMjRweCx2YXIoLS13YW5kLXNhZmUtbGVmdCkpO3BhZGRpbmctcmlnaHQ6bWF4KDI0cHgsdmFyKC0td2FuZC1zYWZlLXJpZ2h0KSk7YmFja2dyb3VuZDojMTQwZTA4NTc7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxOHB4KSBzYXR1cmF0ZSgxNDAlKTthbmltYXRpb246d2FuZERpYWxvZ0JhY2tkcm9wSW4gLjIycyBjdWJpYy1iZXppZXIoLjE2LDEsLjMsMSkgYm90aH0ud2FuZC1kaWFsb2ctYmFja2Ryb3AuY2xvc2luZ3thbmltYXRpb246d2FuZERpYWxvZ0JhY2tkcm9wT3V0IC4xNnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgYm90aDtwb2ludGVyLWV2ZW50czpub25lfUBrZXlmcmFtZXMgd2FuZERpYWxvZ0JhY2tkcm9wSW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19QGtleWZyYW1lcyB3YW5kRGlhbG9nQmFja2Ryb3BPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19LndhbmQtZGlhbG9ne3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjQyMHB4O2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoMTIwJSAxMjAlIGF0IDAlIDAlLHZhcigtLWFjY2VudC1tdXRlZCkgMCUsdHJhbnNwYXJlbnQgNTUlKSxsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWJnLWVsZXZhdGVkKSAwJSx2YXIoLS1iZy1zZWNvbmRhcnkpIDEwMCUpO2JvcmRlcjouNXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MjJweDtvdmVyZmxvdzpoaWRkZW47YmFja2Ryb3AtZmlsdGVyOmJsdXIoNDBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig0MHB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMjRweCA2NHB4IC0xMnB4ICM1OTNhMjA0NywwIDZweCAyMHB4IC02cHggIzU5M2EyMDI5LDAgMCAwIC41cHggIzdkNWIzOTE0LGluc2V0IDAgMXB4ICNmZmZmZmZiMzthbmltYXRpb246d2FuZERpYWxvZ0luIC4yOHMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpIGJvdGh9LndhbmQtZGlhbG9nLWJhY2tkcm9wLmNsb3NpbmcgLndhbmQtZGlhbG9ne2FuaW1hdGlvbjp3YW5kRGlhbG9nT3V0IC4xNnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgYm90aH1Aa2V5ZnJhbWVzIHdhbmREaWFsb2dJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45MikgdHJhbnNsYXRlWSgxMHB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgd2FuZERpYWxvZ091dHswJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjk2KSB0cmFuc2xhdGVZKDRweCl9fS53YW5kLWRpYWxvZy1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjE0cHg7cGFkZGluZzoyMnB4IDI0cHggMTJweH0ud2FuZC1kaWFsb2ctaWNvbntmbGV4LXNocmluazowO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7Ym9yZGVyLXJhZGl1czo1MCU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MTtib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmZmZmY4MH0ud2FuZC1kaWFsb2ctaWNvbi5pbmZve2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQtc29mdCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtjb2xvcjojZmZmfS53YW5kLWRpYWxvZy1pY29uLndhcm5pbmd7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmMGM4OTEgMCUsdmFyKC0td2FybmluZykgMTAwJSk7Y29sb3I6I2ZmZn0ud2FuZC1kaWFsb2ctaWNvbi5kYW5nZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNkOTgxNzggMCUsdmFyKC0tZGFuZ2VyKSAxMDAlKTtjb2xvcjojZmZmfS53YW5kLWRpYWxvZy1pY29uLnN1Y2Nlc3N7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCM4Y2FmOTQgMCUsdmFyKC0tc3VjY2VzcykgMTAwJSk7Y29sb3I6I2ZmZn0ud2FuZC1kaWFsb2ctaWNvbi5xdWVzdGlvbntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYWNjZW50LXNvZnQpIDAlLHZhcigtLWFjY2VudCkgMTAwJSk7Y29sb3I6I2ZmZn0ud2FuZC1kaWFsb2ctdGV4dHdyYXB7ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo2cHg7cGFkZGluZy10b3A6NHB4fS53YW5kLWRpYWxvZy10aXRsZXtmb250LXNpemU6MS4wNjI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzotLjAxZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjM7d29yZC1icmVhazpicmVhay13b3JkfS53YW5kLWRpYWxvZy1tZXNzYWdle2ZvbnQtc2l6ZTouOXJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2xpbmUtaGVpZ2h0OjEuNTU7d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkfS53YW5kLWRpYWxvZy1ib2R5e3BhZGRpbmc6NHB4IDI0cHggMTRweH0ud2FuZC1kaWFsb2ctaW5wdXR7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnZhcigtLWJnLXN1cmZhY2UpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6MTFweCAxNHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi45cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxLjVweCAjN2Q1YjM5MGE7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyBlYXNlLGJveC1zaGFkb3cgLjE1cyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlO2JveC1zaXppbmc6Ym9yZGVyLWJveH0ud2FuZC1kaWFsb2ctaW5wdXQ6Zm9jdXN7b3V0bGluZTpub25lO2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMS41cHggIzdkNWIzOTBhLDAgMCAwIDNweCB2YXIoLS1hY2NlbnQtZ2xvdyl9LndhbmQtZGlhbG9nLWZvb3RlcntkaXNwbGF5OmZsZXg7Z2FwOjhweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cGFkZGluZzoxNHB4IDIwcHggMjBweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTttYXJnaW4tdG9wOjZweH0ud2FuZC1kaWFsb2ctZm9vdGVyIC5idG57bWluLXdpZHRoOjg0cHh9LndhbmQtZGlhbG9nIC5idG4tZGFuZ2Vye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1kYW5nZXItaG92ZXIpIDAlLHZhcigtLWRhbmdlcikgMTAwJSk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym94LXNoYWRvdzowIDFweCAycHggdmFyKC0tZGFuZ2VyLW11dGVkKSwwIDRweCAxMHB4IC0ycHggdmFyKC0tZGFuZ2VyLW11dGVkKSxpbnNldCAwIDFweCAjZmZmZmZmMzgsaW5zZXQgMCAtMXB4ICM2MDFlMTgyZX0ud2FuZC1kaWFsb2cgLmJ0bi1kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNjOTYwNTUsI2IyNGY0NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDJweCA0cHggdmFyKC0tZGFuZ2VyLW11dGVkKSwwIDhweCAyMHB4IC00cHggdmFyKC0tZGFuZ2VyLWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0NyxpbnNldCAwIC0xcHggIzYwMWUxODJlfS53YW5kLWRpYWxvZyAuYnRuLWRhbmdlcjphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWRhbmdlcikgMCUsIzkzMzkyZiAxMDAlKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9QG1lZGlhKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2FuZC1kaWFsb2ctYmFja2Ryb3AsLndhbmQtZGlhbG9nLWJhY2tkcm9wLmNsb3NpbmcsLndhbmQtZGlhbG9nLC53YW5kLWRpYWxvZy1iYWNrZHJvcC5jbG9zaW5nIC53YW5kLWRpYWxvZ3thbmltYXRpb246bm9uZSFpbXBvcnRhbnR9fUBzdXBwb3J0cyBub3QgKChiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkgb3IgKC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpKXsud2FuZC1kaWFsb2ctYmFja2Ryb3B7YmFja2dyb3VuZDojMTQwZTA4OTl9LndhbmQtZGlhbG9ne2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItc3VidGxlKX19QG1lZGlhKG1heC13aWR0aDo0ODBweCl7LndhbmQtZGlhbG9nLWJhY2tkcm9we3BhZGRpbmc6MTZweDthbGlnbi1pdGVtczpjZW50ZXJ9LndhbmQtZGlhbG9ne21heC13aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6MjBweH0ud2FuZC1kaWFsb2ctZm9vdGVye2ZsZXgtd3JhcDp3cmFwfS53YW5kLWRpYWxvZy1mb290ZXIgLmJ0bntmbGV4OjEgMSBhdXRvfX0uYnRuLXdpdGgtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4fS5idG4td2l0aC1pY29uPnN2Z3tmbGV4LXNocmluazowfS5jb21wb3Nlci1waWxsLWljb257ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246LTJweH0uY29tcG9zZXItcGlsbC1sYWJlbHtkaXNwbGF5OmlubGluZS1ibG9jaztsZXR0ZXItc3BhY2luZzouMDJlbX0uc2V0dGluZ3Mtc2VjdGlvbi1pY29ue2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LnNldHRpbmdzLXNlY3Rpb24taWNvbj5zdmd7ZGlzcGxheTpibG9ja30uYmxhbmstY2hhdC10b29sLWJ0biAudG9vbC1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MThweDtoZWlnaHQ6MThweDtmb250LXNpemU6MS4xMjVyZW19LmJsYW5rLWNoYXQtdG9vbC1idG4gLnRvb2wtaWNvbj5zdmd7ZGlzcGxheTpibG9ja30uYmxhbmstY2hhdC10b29sLWJ0biAudG9vbC1pY29uLXRleHR7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjF9LmJsYW5rLWNoYXQtY3dkLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MDtsaW5lLWhlaWdodDowfS5ibGFuay1jaGF0LWN3ZC1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS5ibGFuay1jaGF0LWN3ZC1hcnJvd3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uYmxhbmstY2hhdC1jd2QtYXJyb3c+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LmZvbGRlci1waWNrZXItaWNvbj5zdmd7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci1xdWljay1idG4uYnRuLXdpdGgtaWNvbntnYXA6NXB4fS5hcHByb3ZhbC1zdGF0cy1yb3ctaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uYXBwcm92YWwtc3RhdHMtcm93LWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItY29tcGFjdC1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItdG9nZ2xle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uZm9sZGVyLXBpY2tlci10b2dnbGU+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItdG9nZ2xlLm9wZW57dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS53b3JraW5nLWRpci1pbmRpY2F0b3ItaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LndvcmtpbmctZGlyLWluZGljYXRvci1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS53YW5kLWpveXN0aWNrLXJvb3R7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDo0MDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt2aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2V9LndhbmQtam95c3RpY2stcm9vdC52aXNpYmxle29wYWNpdHk6MTt2aXNpYmlsaXR5OnZpc2libGV9LndhbmQtam95c3RpY2stYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7dmlzaWJpbGl0eTpoaWRkZW59LndhbmQtam95c3RpY2stYmFja2Ryb3AuYWN0aXZle3Zpc2liaWxpdHk6dmlzaWJsZTtwb2ludGVyLWV2ZW50czphdXRvfS53YW5kLWpveXN0aWNrLWJhbGx7cG9zaXRpb246Zml4ZWQ7cmlnaHQ6MThweDtib3R0b206OTZweDt3aWR0aDo1NHB4O2hlaWdodDo1NHB4O2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjojZjVlYmUxZjA7YmFja2dyb3VuZDojMjMxYzE4ZGI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI0NSwyMzUsMjI1LC4xOCk7Ym94LXNoYWRvdzowIDhweCAyMnB4ICMwMDAwMDA0ZCxpbnNldCAwIDFweCAjZmZmZmZmMTQ7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTBweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxMHB4KTtwb2ludGVyLWV2ZW50czphdXRvO3RvdWNoLWFjdGlvbjpub25lOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTt6LWluZGV4OjQzO2N1cnNvcjpncmFiO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xOHMgdmFyKC0tZWFzZS1zcHJpbmcpLGJhY2tncm91bmQgLjJzIGVhc2UsYm9yZGVyLWNvbG9yIC4ycyBlYXNlLGJveC1zaGFkb3cgLjJzIGVhc2V9LndhbmQtam95c3RpY2stbG9nb3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9LndhbmQtam95c3RpY2stYmFsbDpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3JkZXItY29sb3I6I2Y1ZWJlMTRkO2JhY2tncm91bmQ6IzJiMjIxZGU2O2JveC1zaGFkb3c6MCAxMHB4IDI2cHggIzAwMDAwMDU3LGluc2V0IDAgMXB4ICNmZmZmZmYxYX0ud2FuZC1qb3lzdGljay1iYWxsOmFjdGl2ZSwud2FuZC1qb3lzdGljay1iYWxsLnBhbmVsLW9wZW57YmFja2dyb3VuZDojMWQxNzE0ZjB9LndhbmQtam95c3RpY2stYmFsbC5kcmFnZ2luZ3t0cmFuc2Zvcm06c2NhbGUoMS4xMik7Y3Vyc29yOmdyYWJiaW5nO2JveC1zaGFkb3c6MCAxMHB4IDI4cHggIzAwMDAwMDVjfS53YW5kLWpveXN0aWNrLXBhbmVse3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjE4cHg7Ym90dG9tOjE2MHB4O3otaW5kZXg6NDQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O3BhZGRpbmc6MTBweDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDojMWQxNzE0ZjU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI0NSwyMzUsMjI1LC4xMik7Ym94LXNoYWRvdzowIDE0cHggMzRweCAjMDAwMDAwNTcsaW5zZXQgMCAxcHggI2ZmZmZmZjBmO2JhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCk7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW47dHJhbnNmb3JtOnRyYW5zbGF0ZVkoOHB4KSBzY2FsZSguOTYpO3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tIHJpZ2h0O3RyYW5zaXRpb246b3BhY2l0eSAuMThzIHZhcigtLWVhc2Utb3V0LWV4cG8pLHRyYW5zZm9ybSAuMjJzIHZhcigtLWVhc2Utc3ByaW5nKSx2aXNpYmlsaXR5IDBzIGxpbmVhciAuMThzO3dpZHRoOm1pbigyMjRweCxjYWxjKDEwMHZ3IC0gMzZweCkpO21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMzZweCl9LndhbmQtam95c3RpY2stcGFuZWwuYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG87b3BhY2l0eToxO3Zpc2liaWxpdHk6dmlzaWJsZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKTt0cmFuc2l0aW9uLWRlbGF5OjBzfS53anAtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEwcHg7bWluLWhlaWdodDoyNHB4fS53anAtdGl0bGV7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmb250LXNpemU6Ljc2cmVtO2xldHRlci1zcGFjaW5nOjA7Y29sb3I6I2Y1ZWJlMWM3O2ZvbnQtd2VpZ2h0OjYwMH0ud2pwLXRpdGxlLWljb257Y29sb3I6I2Y1ZWJlMWI4fS53anAtY2xvc2V7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjQ1LDIzNSwyMjUsLjEyKTtiYWNrZ3JvdW5kOiNmZmZmZmYwZDtjb2xvcjojZjVlYmUxYjg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNHMgZWFzZSxjb2xvciAuMTRzIGVhc2UsdHJhbnNmb3JtIC4xNHMgZWFzZX0ud2pwLWNsb3NlOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjFhO2NvbG9yOiNmNWViZTFmMn0ud2pwLWNsb3NlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk0KX0ud2pwLWRwYWR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweH0ud2pwLWRwYWQtcm93e2Rpc3BsYXk6ZmxleDtnYXA6NXB4fS53anAtZ3JpZHtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjVweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS53anAtZm5rZXlze21heC13aWR0aDoyMDBweH0ud2pwLWtleXttaW4td2lkdGg6NDRweDtoZWlnaHQ6MzhweDtwYWRkaW5nOjAgOHB4O2JvcmRlci1yYWRpdXM6OHB4O2ZvbnQtc2l6ZTouNzZyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiNmNWViZTFkNjtiYWNrZ3JvdW5kOiNmZmZmZmYwYjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjQ1LDIzNSwyMjUsLjExKTtjdXJzb3I6cG9pbnRlcjt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9uOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlLGJvcmRlci1jb2xvciAuMTVzIGVhc2UsY29sb3IgLjE1cyBlYXNlfS53anAta2V5OmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjE0O2JvcmRlci1jb2xvcjojZjVlYmUxMzM7Y29sb3I6I2Y1ZWJlMWYyfS53anAta2V5OmFjdGl2ZXtiYWNrZ3JvdW5kOiNmZmZmZmYxZjt0cmFuc2Zvcm06c2NhbGUoLjk2KX0ud2pwLWtleS53anAtbW9kLmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0K"),
8
+ scriptsJs: decode("InVzZSBzdHJpY3QiOygoKT0+e3ZhciBvdT0id2FuZC1sZWdhY3ktcHdhLWNsZWFudXAtdjEiLEJsPVsid2FuZC1zdGF0aWMtIiwid2FuZC1ydW50aW1lLSJdO2Z1bmN0aW9uIFdyKGUpe2lmKCFlKXJldHVybiExO3RyeXtjb25zdCB0PW5ldyBVUkwoZS5zY3JpcHRVUkwsbG9jYXRpb24uaHJlZik7cmV0dXJuIHQub3JpZ2luPT09bG9jYXRpb24ub3JpZ2luJiZ0LnBhdGhuYW1lPT09Ii9zdy5qcyJ9Y2F0Y2h7cmV0dXJuITF9fWZ1bmN0aW9uIERsKGUpe3JldHVybiBXcihlLmluc3RhbGxpbmcpfHxXcihlLndhaXRpbmcpfHxXcihlLmFjdGl2ZSl9ZnVuY3Rpb24ga2woKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKG91KT09PSJkb25lIn1jYXRjaHtyZXR1cm4hMX19ZnVuY3Rpb24gQWwoKXt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0ob3UsImRvbmUiKX1jYXRjaHt9fWFzeW5jIGZ1bmN0aW9uIHhsKCl7aWYoISgic2VydmljZVdvcmtlciJpbiBuYXZpZ2F0b3IpKXJldHVybiEwO3RyeXtjb25zdCB0PShhd2FpdCBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5nZXRSZWdpc3RyYXRpb25zKCkpLmZpbHRlcihEbCk7cmV0dXJuIGF3YWl0IFByb21pc2UuYWxsKHQubWFwKHI9PnIudW5yZWdpc3RlcigpKSksITB9Y2F0Y2h7cmV0dXJuITF9fWFzeW5jIGZ1bmN0aW9uIFNsKCl7aWYoISgiY2FjaGVzImluIHdpbmRvdykpcmV0dXJuITA7dHJ5e2NvbnN0IHQ9KGF3YWl0IGNhY2hlcy5rZXlzKCkpLmZpbHRlcihyPT5CbC5zb21lKGk9PnIuc3RhcnRzV2l0aChpKSkpO3JldHVybiBhd2FpdCBQcm9taXNlLmFsbCh0Lm1hcChyPT5jYWNoZXMuZGVsZXRlKHIpKSksITB9Y2F0Y2h7cmV0dXJuITF9fWFzeW5jIGZ1bmN0aW9uIElsKCl7aWYoa2woKSlyZXR1cm47Y29uc3QgZT0ic2VydmljZVdvcmtlciJpbiBuYXZpZ2F0b3ImJldyKG5hdmlnYXRvci5zZXJ2aWNlV29ya2VyLmNvbnRyb2xsZXIpLFt0LHJdPWF3YWl0IFByb21pc2UuYWxsKFt4bCgpLFNsKCldKTshdHx8IXJ8fChBbCgpLGUmJmxvY2F0aW9uLnJlbG9hZCgpKX1JbCgpO3ZhciBQbT0iJHtlc2NhcGVIdG1sKGNvbmZpZ1BhdGgpfSIsUGk9IndhbmQtY2hhdC1leHBhbmQtc3RhdGUtdjEiLHpyPVtmdW5jdGlvbigpe31dOyhmdW5jdGlvbigpe3RyeXt2YXIgdD1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1scy1zY2hlbWEiKSxyPXQ9PW51bGw/MDpwYXJzZUludCh0LDEwKTtyPj0wfHwocj0wKTtmb3IodmFyIGk9cjtpPHpyLmxlbmd0aDtpKyspdHJ5e3pyW2ldKCl9Y2F0Y2h7fXI8enIubGVuZ3RoJiZsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1scy1zY2hlbWEiLFN0cmluZyh6ci5sZW5ndGgpKX1jYXRjaHt9fSkoKTtmdW5jdGlvbiBxaShlLHQpe3RyeXt2YXIgcj1sb2NhbFN0b3JhZ2UuZ2V0SXRlbShlKTtyZXR1cm4gcj09PSJ0cnVlIj8hMDpyPT09ImZhbHNlIj8hMTp0fWNhdGNoe3JldHVybiB0fX1mdW5jdGlvbiBTZShlLHQpe3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbShlLFN0cmluZyghIXQpKX1jYXRjaHt9fXZhciBuPXtzZWxlY3RlZElkOihmdW5jdGlvbigpe3RyeXt2YXIgZT1uZXcgVVJMKHdpbmRvdy5sb2NhdGlvbi5ocmVmKSx0PWUuc2VhcmNoUGFyYW1zLmdldCgic2Vzc2lvbiIpO2lmKHQpcmV0dXJuIGxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iLHQpLGUuc2VhcmNoUGFyYW1zLmRlbGV0ZSgic2Vzc2lvbiIpLGhpc3RvcnkucmVwbGFjZVN0YXRlKGhpc3Rvcnkuc3RhdGUsIiIsZS50b1N0cmluZygpKSx0fWNhdGNoe310cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iKXx8bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19KSgpLHBvbGxUaW1lcjpudWxsLGNvbmZpZzpudWxsLHNlc3Npb25zOltdLHN1Z2dlc3Rpb25UaW1lcjpudWxsLHRlcm1pbmFsOm51bGwsdGVybWluYWxGaXRJblByb2dyZXNzOiExLHRlcm1pbmFsU2Vzc2lvbklkOm51bGwsdGVybWluYWxPdXRwdXQ6IiIsdGVybWluYWxPdXRwdXRNYXJrZXI6MCx0ZXJtaW5hbExpdmVTdHJlYW1TZXNzaW9uczp7fSxzeW5jT3V0cHV0QnVmZmVyOm51bGwsc3luY091dHB1dERlYWRsaW5lOjAsc3luY0ZyYW1pbmdSZXNpZHVlOiExLGxhc3RDaHVua0F0OjAsdGVybWluYWxIZWFsdGhUaW1lcjpudWxsLGxhc3RUZXJtaW5hbFJlc3luY0F0OjAsdGVybWluYWxBdXRvRm9sbG93OiEwLHRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw6MCx0ZXJtaW5hbFNjcm9sbElkbGVUaW1lcjpudWxsLHRlcm1pbmFsU2Nyb2xsVGhyZXNob2xkOjEyLHNob3dUZXJtaW5hbEp1bXBUb0JvdHRvbTohMSx0ZXJtaW5hbFZpZXdwb3J0RWw6bnVsbCx0ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcjpudWxsLHRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXI6bnVsbCx0ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXI6bnVsbCx0ZXJtaW5hbFRvdWNoU3RhcnRZOjAsdGVybWluYWxDb21wb3Npbmc6ITEscmVzaXplT2JzZXJ2ZXI6bnVsbCxyZXNpemVIYW5kbGVyOm51bGwscmVzaXplVGltZXI6bnVsbCxpbnB1dFF1ZXVlOlByb21pc2UucmVzb2x2ZSgpLHBlbmRpbmdNZXNzYWdlczpbXSxtZXNzYWdlUXVldWU6W10sY3Jvc3NTZXNzaW9uUXVldWU6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWNyb3NzLXNlc3Npb24tcXVldWUiKSx0PWU/SlNPTi5wYXJzZShlKTpbXTtyZXR1cm4gQXJyYXkuaXNBcnJheSh0KT90OltdfWNhdGNoe3JldHVybltdfX0pKCksc3RydWN0dXJlZElucHV0UXVldWU6W10scXVldWVCYXJFeHBhbmRlZDohMSxxdWV1ZUJhckhvdmVySW5kZXg6bnVsbCxxdWV1ZUJhckRyYWc6bnVsbCxkcmFmdHM6e30saXNTeW5jaW5nSW5wdXRCb3g6ITEsbG9naW5QZW5kaW5nOiExLGxvZ2luQ2hlY2tlZDohMSxib290c3RyYXBwaW5nOiEwLHNlc3Npb25zRHJhd2VyT3BlbjpxaSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSxzaWRlYmFyUGlubmVkOnFpKCJ3YW5kLXNpZGViYXItcGlubmVkIiwhMCksc2lkZWJhckNvbGxhcHNlZDpxaSgid2FuZC1zaWRlYmFyLWNvbGxhcHNlZCIsITEpLG1vZGFsT3BlbjohMSxwcmVzZXRWYWx1ZToiIixjd2RWYWx1ZToiIixtb2RlVmFsdWU6Im1hbmFnZWQiLGNoYXRNb2RlOiJtYW5hZ2VkIixjaGF0TW9kZWw6KGZ1bmN0aW9uKCl7dHJ5e3JldHVybiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1jaGF0LW1vZGVsIil8fCIifWNhdGNoe3JldHVybiIifX0pKCksY2hhdFRoaW5raW5nOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC10aGlua2luZy1lZmZvcnQiKXx8Im9mZiI7cmV0dXJuIGU9PT0ib2ZmInx8ZT09PSJzdGFuZGFyZCJ8fGU9PT0iZGVlcCJ8fGU9PT0ibWF4Ij9lOiJvZmYifWNhdGNoe3JldHVybiJvZmYifX0pKCksYXZhaWxhYmxlTW9kZWxzOltdLGF2YWlsYWJsZUNvZGV4TW9kZWxzOltdLG1vZGVsc1JlZnJlc2hpbmc6ITEsc2Vzc2lvbkNyZWF0ZUtpbmQ6InN0cnVjdHVyZWQiLHNlc3Npb25DcmVhdGVXb3JrdHJlZTohMSxzZXNzaW9uVG9vbDoiY2xhdWRlIixhY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkOm51bGwsd29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0Om51bGwsd29ya3RyZWVNZXJnZUxvYWRpbmc6ITEsd29ya3RyZWVNZXJnZVN1Ym1pdHRpbmc6ITEsd29ya3RyZWVNZXJnZUVycm9yOiIiLHByZWZlcnJlZENvbW1hbmQ6ImNsYXVkZSIsc3RydWN0dXJlZFJ1bm5lcjoiY2xhdWRlLWNsaS1wcmludCIsbGFzdFJlc2l6ZTp7Y29sczowLHJvd3M6MH0saXNPbmxpbmU6bmF2aWdhdG9yLm9uTGluZSx3czpudWxsLHdzQ29ubmVjdGVkOiExLGxhc3RXc01lc3NhZ2VBdDowLHdzSGVhcnRiZWF0Q2hlY2tUaW1lcjpudWxsLF91cGRhdGVCdWJibGVTaG93bjohMSxub3RpZmljYXRpb25IaXN0b3J5Ont9LGRlbGF5ZWROb3RpZmljYXRpb25UaW1lcjpudWxsLG5vdGlmU291bmQ6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLW5vdGlmLXNvdW5kIik7cmV0dXJuIGU9PT1udWxsPyEwOmU9PT0idHJ1ZSJ9Y2F0Y2h7cmV0dXJuITB9fSkoKSxub3RpZlZvbHVtZTooZnVuY3Rpb24oKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtbm90aWYtdm9sdW1lIik7cmV0dXJuIGU9PT1udWxsPzgwOk1hdGgubWF4KDAsTWF0aC5taW4oMTAwLHBhcnNlSW50KGUsMTApfHw4MCkpfWNhdGNoe3JldHVybiA4MH19KSgpLG5vdGlmQnViYmxlOihmdW5jdGlvbigpe3RyeXt2YXIgZT1sb2NhbFN0b3JhZ2UuZ2V0SXRlbSgid2FuZC1ub3RpZi1idWJibGUiKTtyZXR1cm4gZT09PW51bGw/ITA6ZT09PSJ0cnVlIn1jYXRjaHtyZXR1cm4hMH19KSgpLHRvb2xDb250ZW50Q2FjaGU6e30sbGFzdFNlcUJ5U2Vzc2lvbjp7fSxjdXJyZW50VmlldzoidGVybWluYWwiLHRlcm1pbmFsU2NhbGU6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXRlcm1pbmFsLXNjYWxlIik7cmV0dXJuIGU/cGFyc2VGbG9hdChlKToxfWNhdGNoe3JldHVybiAxfX0pKCksdGVybWluYWxCYXNlRm9udFNpemU6MTMsa2V5Ym9hcmRQb3B1cE9wZW46ITEsZmlsZVBhbmVsT3BlbjooZnVuY3Rpb24oKXt0cnl7cmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWZpbGUtcGFuZWwtb3BlbiIpPT09InRydWUifWNhdGNoe3JldHVybiExfX0pKCksdG9wYmFyTW9yZU9wZW46ITEsZ2l0U3RhdHVzOm51bGwsZ2l0U3RhdHVzU2Vzc2lvbklkOm51bGwsZ2l0U3RhdHVzTG9hZGluZzohMSxnaXRTdGF0dXNJbmZsaWdodDpudWxsLGdpdFN0YXR1c0xhc3RGZXRjaEF0OjAscXVpY2tDb21taXRPcGVuOiExLHF1aWNrQ29tbWl0U3VibWl0dGluZzohMSxxdWlja0NvbW1pdEdlbmVyYXRpbmc6ITEscXVpY2tDb21taXRFcnJvcjoiIixxdWlja0NvbW1pdEZvcm06e2N1c3RvbU1lc3NhZ2U6IiIsdGFnOiIiLHRhZ0VkaXRlZDohMX0scXVpY2tDb21taXRQdXNoaW5nOiExLHF1aWNrQ29tbWl0UHVzaEVycm9yOiIiLHF1aWNrQ29tbWl0UmVzdWx0Om51bGwscXVpY2tDb21taXREcmFnQWN0aW9uOiJjb21taXQiLHF1aWNrQ29tbWl0U3VibW9kdWxlSW50ZW50OiExLGNoYXRTdGlja1RvQm90dG9tOiEwLGNoYXRVbnJlYWRDb3VudDowLGNoYXRVbnJlYWRTdGFydEluZGV4Oi0xLGNoYXRTY3JvbGxUaHJlc2hvbGQ6MTYwLGNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbDohMSxjaGF0U2Nyb2xsRWxlbWVudDpudWxsLGNoYXRTY3JvbGxIYW5kbGVyOm51bGwsY2hhdFNjcm9sbFdoZWVsSGFuZGxlcjpudWxsLGNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlcjpudWxsLGNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyOm51bGwsY2hhdFRvdWNoU3RhcnRZOjAsY2hhdEluaXRpYWxSZW5kZXJEb25lOiExLGxhc3RGb3JlZ3JvdW5kU3luY0F0OjAsZm9yZWdyb3VuZFN5bmNUaW1lcjpudWxsLHdzUmVjb25uZWN0QXR0ZW1wdHM6MCx3c1JlY29ubmVjdFRpbWVyOm51bGwsY3VycmVudE1lc3NhZ2VzOltdLGxhc3RSZW5kZXJlZEhhc2g6MCxsYXN0UmVuZGVyZWRNc2dDb3VudDowLGxhc3RSZW5kZXJlZEVtcHR5Om51bGwscmVuZGVyUGVuZGluZzohMSxjaGF0UGFnZVNpemU6MjAsY2hhdFJlbmRlcmVkQ291bnQ6MjAsY3VycmVudFRhc2s6bnVsbCx0ZXJtaW5hbEludGVyYWN0aXZlOiExLG1pbmlLZXlib2FyZFZpc2libGU6ITEsbW9kaWZpZXJzOntjdHJsOiExLGFsdDohMSxzaGlmdDohMX0sam95c3RpY2tQb3M6KGZ1bmN0aW9uKCl7dHJ5e3ZhciBlPWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLWJhbGwtcG9zIik7aWYoIWUpcmV0dXJuIG51bGw7dmFyIHQ9SlNPTi5wYXJzZShlKTtyZXR1cm4gdCYmdHlwZW9mIHQ9PSJvYmplY3QiP3Q6bnVsbH1jYXRjaHtyZXR1cm4gbnVsbH19KSgpLGpveXN0aWNrUGlubmVkT3BlbjohMSxqb3lzdGlja1Jvb3RFbDpudWxsLGpveXN0aWNrUGFuZWxFbDpudWxsLGpveXN0aWNrQmFja2Ryb3BFbDpudWxsLGpveXN0aWNrQmFsbEVsOm51bGwsam95c3RpY2tQb2ludGVySWQ6bnVsbCxqb3lzdGlja0dlc3R1cmU6bnVsbCxqb3lzdGlja1ByZXNzU3RhcnQ6bnVsbCxqb3lzdGlja0xvbmdQcmVzc1RpbWVyOm51bGwsam95c3RpY2tNb3ZlSGFuZGxlcjpudWxsLGpveXN0aWNrVXBIYW5kbGVyOm51bGwsam95c3RpY2tSZXNpemVIYW5kbGVyOm51bGwsZmlsZVNlYXJjaFF1ZXJ5OiIiLGZpbGVFeHBsb3JlckxvYWRpbmc6ITEsYWxsRmlsZXM6W10sZmlsZUV4cGxvcmVyQ3dkOiIiLGZpbGVFeHBsb3JlclRydW5jYXRlZDohMSxmaWxlRXhwbG9yZXJUb3RhbDowLGNsYXVkZUhpc3Rvcnk6W10sY2xhdWRlSGlzdG9yeUxvYWRlZDohMSxjbGF1ZGVIaXN0b3J5RXhwYW5kZWQ6ITEsY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlyczp7fSxhcmNoaXZlZEV4cGFuZGVkOiExLHNlc3Npb25zTWFuYWdlTW9kZTohMSxzZWxlY3RlZFNlc3Npb25JZHM6e30sc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzOnt9LGNvZGV4SGlzdG9yeTpbXSxjb2RleEhpc3RvcnlMb2FkZWQ6ITEsY29kZXhIaXN0b3J5RXhwYW5kZWREaXJzOnt9LHNlbGVjdGVkQ29kZXhIaXN0b3J5SWRzOnt9LGFza1VzZXJTZWxlY3Rpb25zOnt9LHF1ZXVlRXBvY2g6MCxwZW5kaW5nQXR0YWNobWVudHM6W10sd29ya2luZ0RpcjooZnVuY3Rpb24oKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiKTtyZXR1cm4gZXx8IiJ9Y2F0Y2h7cmV0dXJuIiJ9fSkoKX0sSGk9Ilx1NEUyRFx1NjU4NyIsVnI9e1x1NEUyRFx1NjU4Nzp7InN1YmFnZW50LnRhZyI6Ilx1NUI1MFx1NEVFM1x1NzQwNiIsInN1YmFnZW50LmhhbmRvZmYiOiJ7cGFyZW50fSBcdThCQTkge3N1Yn0gXHU1RTJFXHU1RkQ5Iiwic3ViYWdlbnQuaGFuZG9mZi53aXRoX2Rlc2MiOiJ7cGFyZW50fSBcdThCQTkge3N1Yn0gXHU1RTJFXHU1RkQ5XHVGRjFBIiwic3ViYWdlbnQuY29udGludWVkIjoiXHU3RUU3XHU3RUVEXHU4RjkzXHU1MUZBIiwic3ViYWdlbnQudGFzay5kb25lIjoiXHU0RUZCXHU1MkExXHU1QjhDXHU2MjEwIiwic3ViYWdlbnQudGFzay5mYWlsZWQiOiJcdTRFRkJcdTUyQTFcdTU5MzFcdThEMjUiLCJzdWJhZ2VudC5ydW5uaW5nIjoiXHU4RkQwXHU4ODRDXHU0RTJEIiwic3ViYWdlbnQubm9fb3V0cHV0IjoiXHVGRjA4XHU2NUUwXHU4RjkzXHU1MUZBXHVGRjA5Iiwic3ViYWdlbnQuaGVscGVyX2ZhbGxiYWNrX3ByZWZpeCI6Ilx1NTM0Rlx1NEY1Q1x1NzMyQlx4QjciLCJzdWJhZ2VudC50aXRsZV9hcmlhIjoiXHU3MEI5XHU1MUZCXHU1QzU1XHU1RjAwIC8gXHU2NTM2XHU4RDc3XHU1QjUwXHU0RUUzXHU3NDA2XHU4RjkzXHU1MUZBIiwic3ViYWdlbnQudGFnX3RpdGxlIjoiXHU1QjUwXHU0RUUzXHU3NDA2IC8gc3ViYWdlbnQiLCJ1aS5leHBhbmQiOiJcdTVDNTVcdTVGMDAiLCJ1aS5jb2xsYXBzZSI6Ilx1NjUzNlx1OEQ3NyIsInVpLmV4cGFuZF9wYW5lbF9hcmlhIjoiXHU1QzU1XHU1RjAwXHU1QjUwXHU0RUUzXHU3NDA2XHU4RjkzXHU1MUZBIiwidWkuY29sbGFwc2VfcGFuZWxfYXJpYSI6Ilx1NjUzNlx1OEQ3N1x1NUI1MFx1NEVFM1x1NzQwNlx1OEY5M1x1NTFGQSIsInN0b3AuY29uZmlybS50aXRsZSI6Ilx1NTA1Q1x1NkI2Mlx1NEVGQlx1NTJBMSIsInN0b3AuY29uZmlybS5tZXNzYWdlIjoiXHU3ODZFXHU1QjlBXHU4OTgxXHU1MDVDXHU2QjYyXHU1RjUzXHU1MjREXHU2QjYzXHU1NzI4XHU4RkQwXHU4ODRDXHU3Njg0XHU0RUZCXHU1MkExXHU1NDE3XHVGRjFGIiwic3RvcC5jb25maXJtLm9rIjoiXHU1MDVDXHU2QjYyIiwic3RvcC5jb25maXJtLmNhbmNlbCI6Ilx1NTNENlx1NkQ4OCJ9LEVuZ2xpc2g6eyJzdWJhZ2VudC50YWciOiJTdWJhZ2VudCIsInN1YmFnZW50LmhhbmRvZmYiOiJ7cGFyZW50fSBhc2tlZCB7c3VifSBmb3IgaGVscCIsInN1YmFnZW50LmhhbmRvZmYud2l0aF9kZXNjIjoie3BhcmVudH0gYXNrZWQge3N1Yn0gZm9yIGhlbHAgd2l0aDogIiwic3ViYWdlbnQuY29udGludWVkIjoiY29udGludWVkIiwic3ViYWdlbnQudGFzay5kb25lIjoiVGFzayBjb21wbGV0ZSIsInN1YmFnZW50LnRhc2suZmFpbGVkIjoiVGFzayBmYWlsZWQiLCJzdWJhZ2VudC5ydW5uaW5nIjoiUnVubmluZyIsInN1YmFnZW50Lm5vX291dHB1dCI6IihubyBvdXRwdXQpIiwic3ViYWdlbnQuaGVscGVyX2ZhbGxiYWNrX3ByZWZpeCI6IkhlbHBlclx4QjciLCJzdWJhZ2VudC50aXRsZV9hcmlhIjoiQ2xpY2sgdG8gZXhwYW5kIC8gY29sbGFwc2Ugc3ViYWdlbnQgb3V0cHV0Iiwic3ViYWdlbnQudGFnX3RpdGxlIjoiU3ViYWdlbnQiLCJ1aS5leHBhbmQiOiJFeHBhbmQiLCJ1aS5jb2xsYXBzZSI6IkNvbGxhcHNlIiwidWkuZXhwYW5kX3BhbmVsX2FyaWEiOiJFeHBhbmQgc3ViYWdlbnQgb3V0cHV0IiwidWkuY29sbGFwc2VfcGFuZWxfYXJpYSI6IkNvbGxhcHNlIHN1YmFnZW50IG91dHB1dCIsInN0b3AuY29uZmlybS50aXRsZSI6IlN0b3AgdGFzayIsInN0b3AuY29uZmlybS5tZXNzYWdlIjoiU3RvcCB0aGUgdGFzayB0aGF0J3MgY3VycmVudGx5IHJ1bm5pbmc/Iiwic3RvcC5jb25maXJtLm9rIjoiU3RvcCIsInN0b3AuY29uZmlybS5jYW5jZWwiOiJDYW5jZWwifX07ZnVuY3Rpb24gbHUoKXt2YXIgZT1uLmNvbmZpZyYmdHlwZW9mIG4uY29uZmlnLmxhbmd1YWdlPT0ic3RyaW5nIj9uLmNvbmZpZy5sYW5ndWFnZS50cmltKCk6IiI7aWYoIWUpcmV0dXJuIEhpO2lmKFZyW2VdKXJldHVybiBlO3ZhciB0PWUudG9Mb3dlckNhc2UoKTtyZXR1cm4gdD09PSJlbmdsaXNoInx8dD09PSJlbiJ8fHQuaW5kZXhPZigiZW5nbGlzaCIpPT09MHx8dC5pbmRleE9mKCJcdTgyRjEiKT09PTA/IkVuZ2xpc2giOnQ9PT0iXHU0RTJEXHU2NTg3Inx8dD09PSJ6aCJ8fHQuaW5kZXhPZigiemgiKT09PTB8fHQuaW5kZXhPZigiXHU0RTJEIik9PT0wfHx0LmluZGV4T2YoImNoaW5lc2UiKT09PTA/Ilx1NEUyRFx1NjU4NyI6IkVuZ2xpc2gifWZ1bmN0aW9uIE1lKGUsdCl7dmFyIHI9bHUoKSxpPVZyW3JdfHxWcltIaV0sYT1pJiZlIGluIGk/aVtlXTpudWxsO2lmKGE9PW51bGwpe3ZhciB1PVZyW0hpXTthPXUmJmUgaW4gdT91W2VdOmV9aWYodCYmdHlwZW9mIGE9PSJzdHJpbmciKWZvcih2YXIgcyBpbiB0KU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0LHMpJiYoYT1hLnNwbGl0KCJ7IitzKyJ9Iikuam9pbih0W3NdKSk7cmV0dXJuIGF9dmFyIFRsPXtzaGllbGQ6JzxwYXRoIGQ9Ik0xMiAyMnM4LTQgOC0xMFY1bC04LTMtOCAzdjdjMCA2IDggMTAgOCAxMHoiLz4nLHNoaWVsZENoZWNrOic8cGF0aCBkPSJNMTIgMjJzOC00IDgtMTBWNWwtOC0zLTggM3Y3YzAgNiA4IDEwIDggMTB6Ii8+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+JyxwYXBlcmNsaXA6JzxwYXRoIGQ9Ik0yMS40NCAxMS4wNSAxMi4yNSAyMC4yNGE2IDYgMCAwIDEtOC40OS04LjQ5bDguODQtOC44NGE0IDQgMCAxIDEgNS42NiA1LjY2TDkuNDEgMTcuNDFhMiAyIDAgMSAxLTIuODMtMi44M2w4Ljg0LTguODMiLz4nfTtmdW5jdGlvbiBLKGUsdCl7dmFyIHI9VGxbZV07aWYoIXIpcmV0dXJuIiI7dD10fHx7fTt2YXIgaT10LnNpemV8fDE0LGE9dC5zdHJva2VXaWR0aHx8MS44LHU9dC5jbHM/JyBjbGFzcz0iJyt0LmNscysnIic6IiIscz10LmZpbGx8fCJub25lIjtyZXR1cm4iPHN2ZyIrdSsnIHdpZHRoPSInK2krJyIgaGVpZ2h0PSInK2krJyIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSInK3MrJyIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iJythKyciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPicrcisiPC9zdmc+In1mdW5jdGlvbiBQbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LW91dHB1dCIpO2lmKCFlKXJldHVybiBuLmNoYXRTY3JvbGxFbGVtZW50PW51bGwsbnVsbDt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2VzIik7cmV0dXJuIHQ/KG4uY2hhdFNjcm9sbEVsZW1lbnQ9dCx0KToobi5jaGF0U2Nyb2xsRWxlbWVudD1udWxsLG51bGwpfWZ1bmN0aW9uIF9pKGUpe3ZhciB0PWV8fFBuKCk7cmV0dXJuIHQ/TWF0aC5hYnModC5zY3JvbGxUb3ApPG4uY2hhdFNjcm9sbFRocmVzaG9sZDohMH1mdW5jdGlvbiBxbShlKXtuLmNoYXRTdGlja1RvQm90dG9tPSEhZSxuLmNoYXRTdGlja1RvQm90dG9tJiZpcih7cmVtb3ZlRGl2aWRlcjohMH0pLFplKCl9ZnVuY3Rpb24gaXIoZSl7ZT1lfHx7fTt2YXIgdD1uLmNoYXRVbnJlYWRDb3VudD4wfHxuLmNoYXRVbnJlYWRTdGFydEluZGV4Pj0wO2lmKG4uY2hhdFVucmVhZENvdW50PTAsbi5jaGF0VW5yZWFkU3RhcnRJbmRleD0tMSxlLnJlbW92ZURpdmlkZXIhPT0hMSl7dmFyIHI9UG4oKTtpZihyKXt2YXIgaT1yLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LXVucmVhZC1kaXZpZGVyIik7aSYmaS5wYXJlbnROb2RlJiZpLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoaSl9fXQmJlplKCl9ZnVuY3Rpb24gTmkoZSl7aWYoZXx8KGU9UG4oKSksISFlKXt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LXVucmVhZC1kaXZpZGVyIik7aWYobi5jaGF0VW5yZWFkU3RhcnRJbmRleDwwfHxuLmNoYXRVbnJlYWRDb3VudDw9MCl7dCYmdC5wYXJlbnROb2RlJiZ0LnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQodCk7cmV0dXJufWZvcih2YXIgcj1uLmNoYXRVbnJlYWRTdGFydEluZGV4LGk9ZS5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlIiksYT1udWxsLHU9MDt1PGkubGVuZ3RoO3UrKyl7dmFyIHM9aVt1XS5nZXRBdHRyaWJ1dGUoImRhdGEtbXNnLWluZGV4Iik7aWYocyE9PW51bGwpe3ZhciBvPXBhcnNlSW50KHMsMTApO2lmKCFpc05hTihvKSYmbzxyKXthPWlbdV07YnJlYWt9fX12YXIgbD1uLmNoYXRVbnJlYWRDb3VudCsiIFx1Njc2MVx1NjVCMFx1NkQ4OFx1NjA2RiI7dHx8KHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdC5jbGFzc05hbWU9ImNoYXQtdW5yZWFkLWRpdmlkZXIiLHQuc2V0QXR0cmlidXRlKCJyb2xlIiwic2VwYXJhdG9yIiksdC5pbm5lckhUTUw9JzxzcGFuIGNsYXNzPSJjaGF0LXVucmVhZC1kaXZpZGVyLWxpbmUiPjwvc3Bhbj48c3BhbiBjbGFzcz0iY2hhdC11bnJlYWQtZGl2aWRlci1sYWJlbCI+PC9zcGFuPjxzcGFuIGNsYXNzPSJjaGF0LXVucmVhZC1kaXZpZGVyLWxpbmUiPjwvc3Bhbj4nKSx0LnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LXVucmVhZC1kaXZpZGVyLWxhYmVsIikudGV4dENvbnRlbnQ9bCxhPyh0Lm5leHRTaWJsaW5nIT09YXx8dC5wYXJlbnROb2RlIT09ZSkmJmUuaW5zZXJ0QmVmb3JlKHQsYSk6KHQucGFyZW50Tm9kZSE9PWV8fHQubmV4dFNpYmxpbmchPT1udWxsKSYmZS5hcHBlbmRDaGlsZCh0KX19ZnVuY3Rpb24gWmUoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC11bnJlYWQtYnViYmxlIik7aWYoZSl7dmFyIHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKG8pe3JldHVybiBvLmlkPT09bi5zZWxlY3RlZElkfSkscj0hX2koKSxpPSEhdCYmbi5jdXJyZW50Vmlldz09PSJjaGF0IiYmcjtlLmNsYXNzTGlzdC50b2dnbGUoInZpc2libGUiLGkpLGUuY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLXVucmVhZCIsbi5jaGF0VW5yZWFkQ291bnQ+MCk7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIuY2hhdC11bnJlYWQtYnViYmxlLWNvdW50Iik7YSYmKG4uY2hhdFVucmVhZENvdW50PjA/KGEudGV4dENvbnRlbnQ9bi5jaGF0VW5yZWFkQ291bnQ+OTk/Ijk5KyI6U3RyaW5nKG4uY2hhdFVucmVhZENvdW50KSxhLmNsYXNzTGlzdC5hZGQoInZpc2libGUiKSk6KGEudGV4dENvbnRlbnQ9IiIsYS5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIikpKTt2YXIgdT1uLmNoYXRVbnJlYWRDb3VudD4wP24uY2hhdFVucmVhZENvdW50KyIgXHU2NzYxXHU2NUIwXHU2RDg4XHU2MDZGXHVGRjBDXHU3MEI5XHU1MUZCXHU2N0U1XHU3NzBCIjoiXHU1NkRFXHU1MjMwXHU2NzAwXHU2NUIwXHU2RDg4XHU2MDZGIjtlLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsdSksZS5zZXRBdHRyaWJ1dGUoInRpdGxlIix1KTt2YXIgcz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC1vdXRwdXQiKTtzJiZzLmNsYXNzTGlzdC50b2dnbGUoImhhcy1qdW1wLWJ0biIsaSl9fWZ1bmN0aW9uIExsKGUpe3ZhciB0PVBuKCk7aWYoISghdHx8IXQuaXNDb25uZWN0ZWQpKXtuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMDt2YXIgcj1mdW5jdGlvbigpe24uY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSExLG4uY2hhdFN0aWNrVG9Cb3R0b209ITAsaXIoe3JlbW92ZURpdmlkZXI6ITB9KSxaZSgpfTtpZihlJiZ0eXBlb2YgdC5zY3JvbGxUbz09ImZ1bmN0aW9uIil7dC5zY3JvbGxUbyh7dG9wOjAsYmVoYXZpb3I6InNtb290aCJ9KSxzZXRUaW1lb3V0KHIsMjYwKTtyZXR1cm59dC5zY3JvbGxUb3A9MCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUocil9fWZ1bmN0aW9uIGFyKCl7dmFyIGU9UG4oKTtpZighKCFlfHwhZS5pc0Nvbm5lY3RlZCkpe2lmKG4uY2hhdFNjcm9sbEVsZW1lbnQ9PT1lJiZuLmNoYXRTY3JvbGxIYW5kbGVyKXtaZSgpO3JldHVybn1uLmNoYXRTY3JvbGxFbGVtZW50JiYobi5jaGF0U2Nyb2xsSGFuZGxlciYmbi5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLG4uY2hhdFNjcm9sbEhhbmRsZXIpLG4uY2hhdFNjcm9sbFdoZWVsSGFuZGxlciYmbi5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsbi5jaGF0U2Nyb2xsV2hlZWxIYW5kbGVyKSxuLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlciYmbi5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixuLmNoYXRTY3JvbGxUb3VjaFN0YXJ0SGFuZGxlciksbi5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlciYmbi5jaGF0U2Nyb2xsRWxlbWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLG4uY2hhdFNjcm9sbFRvdWNoTW92ZUhhbmRsZXIpKSxuLmNoYXRTY3JvbGxFbGVtZW50PWUsbi5jaGF0U2Nyb2xsSGFuZGxlcj1mdW5jdGlvbigpe2lmKGUuaXNDb25uZWN0ZWQpe2lmKG4uY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsKXtaZSgpO3JldHVybn12YXIgdD1faShlKTt0PyhuLmNoYXRTdGlja1RvQm90dG9tPSEwLGlyKHtyZW1vdmVEaXZpZGVyOiEwfSkpOm4uY2hhdFN0aWNrVG9Cb3R0b209ITEsWmUoKX19LG4uY2hhdFNjcm9sbFdoZWVsSGFuZGxlcj1mdW5jdGlvbih0KXtuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbHx8dC5kZWx0YVk8MCYmKG4uY2hhdFN0aWNrVG9Cb3R0b209ITEsWmUoKSl9LG4uY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyPWZ1bmN0aW9uKHQpeyF0LnRvdWNoZXN8fHQudG91Y2hlcy5sZW5ndGg9PT0wfHwobi5jaGF0VG91Y2hTdGFydFk9dC50b3VjaGVzWzBdLmNsaWVudFkpfSxuLmNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyPWZ1bmN0aW9uKHQpe2lmKCFuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbCYmISghdC50b3VjaGVzfHx0LnRvdWNoZXMubGVuZ3RoPT09MCkpe3ZhciByPXQudG91Y2hlc1swXS5jbGllbnRZLW4uY2hhdFRvdWNoU3RhcnRZO3I+NCYmKG4uY2hhdFN0aWNrVG9Cb3R0b209ITEsWmUoKSl9fSxlLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsbi5jaGF0U2Nyb2xsSGFuZGxlcix7cGFzc2l2ZTohMH0pLGUuYWRkRXZlbnRMaXN0ZW5lcigid2hlZWwiLG4uY2hhdFNjcm9sbFdoZWVsSGFuZGxlcix7cGFzc2l2ZTohMH0pLGUuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsbi5jaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxlLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsbi5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcix7cGFzc2l2ZTohMH0pLFplKCl9fWZ1bmN0aW9uIGN1KCl7bi5jaGF0UmVuZGVyZWRDb3VudD49bi5jdXJyZW50TWVzc2FnZXMubGVuZ3RofHwobi5jaGF0UmVuZGVyZWRDb3VudCs9bi5jaGF0UGFnZVNpemUsdHQoITApKX12YXIgdXI9bnVsbDtmdW5jdGlvbiBNbCgpe3VyJiYodXIuZGlzY29ubmVjdCgpLHVyPW51bGwpO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LWxvYWQtbW9yZS1zZW50aW5lbCIpO2lmKGUpe3ZhciB0PWUucXVlcnlTZWxlY3RvcigiLmNoYXQtbG9hZC1tb3JlLWJ0biIpO3QmJih0Lm9uY2xpY2s9ZnVuY3Rpb24oKXtjdSgpfSksISh0eXBlb2YgSW50ZXJzZWN0aW9uT2JzZXJ2ZXI+InUiKSYmKHVyPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihmdW5jdGlvbihyKXtmb3IodmFyIGk9MDtpPHIubGVuZ3RoO2krKylpZihyW2ldLmlzSW50ZXJzZWN0aW5nKXtjdSgpO2JyZWFrfX0se3Jvb3Q6UG4oKSxyb290TWFyZ2luOiIyMDBweCJ9KSx1ci5vYnNlcnZlKGUpKX19ZnVuY3Rpb24geWUoKXt0cnl7bi5zZWxlY3RlZElkP2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXNlbGVjdGVkLXNlc3Npb24iLG4uc2VsZWN0ZWRJZCk6bG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oIndhbmQtc2VsZWN0ZWQtc2Vzc2lvbiIpfWNhdGNoe319ZnVuY3Rpb24gamkoZSl7cmV0dXJuIGUmJkFycmF5LmlzQXJyYXkoZS5xdWV1ZWRNZXNzYWdlcyk/ZS5xdWV1ZWRNZXNzYWdlczpuLnN0cnVjdHVyZWRJbnB1dFF1ZXVlfWZ1bmN0aW9uIE9sKCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHQpe3JldHVybiB0LmlkPT09bi5zZWxlY3RlZElkfSk7cmV0dXJuIGppKGUpfWZ1bmN0aW9uIFVyKGUpe3ZhciB0PWppKGUpO24uc3RydWN0dXJlZElucHV0UXVldWU9QXJyYXkuaXNBcnJheSh0KT90LnNsaWNlKCk6W119ZnVuY3Rpb24gZHUoZSx0KXtyZXR1cm4hIShlJiZBcnJheS5pc0FycmF5KGUuY29udGVudCkmJmUuY29udGVudC5zb21lKGZ1bmN0aW9uKHIpe3JldHVybiByJiZ0eXBlb2Ygcj09Im9iamVjdCImJnJbdF19KSl9ZnVuY3Rpb24gUGwoZSl7cmV0dXJuISEoZSYmZS5yb2xlPT09InVzZXIiJiZkdShlLCJfX3F1ZXVlZCIpKX1mdW5jdGlvbiBxbChlKXtyZXR1cm4hIShlJiZlLnJvbGU9PT0iYXNzaXN0YW50IiYmZHUoZSwiX19wcm9jZXNzaW5nIikpfWZ1bmN0aW9uIHNyKGUpe2lmKCFBcnJheS5pc0FycmF5KGUpKXJldHVybltdO2Zvcih2YXIgdD0hMSxyPVtdLGk9MDtpPGUubGVuZ3RoO2krKyl7dmFyIGE9ZVtpXTtpZihQbChhKXx8cWwoYSkpe3Q9ITA7Y29udGludWV9ci5wdXNoKGEpfXJldHVybiB0P3I6ZX1mdW5jdGlvbiBIbChlLHQpe2lmKCFlfHwhQXJyYXkuaXNBcnJheShlLm1lc3NhZ2VzKSlyZXR1cm4gZTt2YXIgcj1lLnNlc3Npb25LaW5kfHx0JiZ0LnNlc3Npb25LaW5kO2lmKHIhPT0ic3RydWN0dXJlZCIpcmV0dXJuIGU7dmFyIGk9c3IoZS5tZXNzYWdlcyk7cmV0dXJuIGk9PT1lLm1lc3NhZ2VzP2U6T2JqZWN0LmFzc2lnbih7fSxlLHttZXNzYWdlczppfSl9ZnVuY3Rpb24gZnUoKXt0cnl7dmFyIGU9T2woKTtpZighbi5zZWxlY3RlZElkfHxlLmxlbmd0aD09PTApcmV0dXJuO2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXN0cnVjdHVyZWQtcXVldWUiLEpTT04uc3RyaW5naWZ5KHtzZXNzaW9uSWQ6bi5zZWxlY3RlZElkLGl0ZW1zOmV9KSl9Y2F0Y2h7fX1mdW5jdGlvbiBwdShlKXt0cnl7dmFyIHQ9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtc3RydWN0dXJlZC1xdWV1ZSIpO2lmKCF0KXJldHVybjt2YXIgcj1KU09OLnBhcnNlKHQpOyghZXx8IXJ8fHIuc2Vzc2lvbklkPT09ZSkmJmxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCJ3YW5kLXN0cnVjdHVyZWQtcXVldWUiKX1jYXRjaHtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1zdHJ1Y3R1cmVkLXF1ZXVlIil9fWZ1bmN0aW9uIHZ1KCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGkpe3JldHVybiBpLmlkPT09bi5zZWxlY3RlZElkfSk7aWYoZSYmQXJyYXkuaXNBcnJheShlLnF1ZXVlZE1lc3NhZ2VzKSl7VXIoZSksZnUoKTtyZXR1cm59dHJ5e3ZhciB0PWxvY2FsU3RvcmFnZS5nZXRJdGVtKCJ3YW5kLXN0cnVjdHVyZWQtcXVldWUiKTtpZighdClyZXR1cm47dmFyIHI9SlNPTi5wYXJzZSh0KTtpZighcnx8ci5zZXNzaW9uSWQhPT1uLnNlbGVjdGVkSWR8fCFBcnJheS5pc0FycmF5KHIuaXRlbXMpKXJldHVybjtuLnN0cnVjdHVyZWRJbnB1dFF1ZXVlPXIuaXRlbXMuc2xpY2UoMCwxMCl9Y2F0Y2h7bi5zdHJ1Y3R1cmVkSW5wdXRRdWV1ZT1bXX19ZnVuY3Rpb24gWXQoKXt0cnl7aWYobi5jcm9zc1Nlc3Npb25RdWV1ZS5sZW5ndGg9PT0wKXtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1jcm9zcy1zZXNzaW9uLXF1ZXVlIik7cmV0dXJufWxvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWNyb3NzLXNlc3Npb24tcXVldWUiLEpTT04uc3RyaW5naWZ5KG4uY3Jvc3NTZXNzaW9uUXVldWUpKX1jYXRjaHt9fWZ1bmN0aW9uIG5uKCl7cmV0dXJuIG4uY29uZmlnJiZuLmNvbmZpZy5kZWZhdWx0Q3dkfHwiL3RtcCJ9ZnVuY3Rpb24gbXUoKXt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oUGkpO2lmKCFlKXJldHVybnt9O3ZhciB0PUpTT04ucGFyc2UoZSk7cmV0dXJuIHQmJnR5cGVvZiB0PT0ib2JqZWN0Ij90Ont9fWNhdGNoe3JldHVybnt9fX1mdW5jdGlvbiBfbChlKXt0cnl7aWYoIWV8fE9iamVjdC5rZXlzKGUpLmxlbmd0aD09PTApe2xvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKFBpKTtyZXR1cm59bG9jYWxTdG9yYWdlLnNldEl0ZW0oUGksSlNPTi5zdHJpbmdpZnkoZSkpfWNhdGNoe319ZnVuY3Rpb24gTmwoKXt2YXIgZT1uLnNlbGVjdGVkSWQ7aWYoIWUpcmV0dXJue307dmFyIHQ9bXUoKSxyPXRbZV07cmV0dXJuIHImJnR5cGVvZiByPT0ib2JqZWN0Ij9yOnt9fWZ1bmN0aW9uIHJ0KGUpe2lmKCFlfHwhbi5zZWxlY3RlZElkKXJldHVybiBudWxsO3ZhciB0PU5sKCk7cmV0dXJuIHR5cGVvZiB0W2VdPT0iYm9vbGVhbiI/dFtlXTpudWxsfWZ1bmN0aW9uIGpsKGUsdCl7aWYoISghZXx8IW4uc2VsZWN0ZWRJZCkpe3ZhciByPW11KCksaT1uLnNlbGVjdGVkSWQsYT1yW2ldOyghYXx8dHlwZW9mIGEhPSJvYmplY3QiKSYmKGE9e30pLGFbZV09ISF0LHJbaV09YSxfbChyKX19ZnVuY3Rpb24gZ3UoZSx0KXtyZXR1cm4gZT9lLnV1aWQ/Im1zZzoiK2UudXVpZDplLmlkPyJtc2c6IitlLmlkOmUubWVzc2FnZUlkPyJtc2c6IitlLm1lc3NhZ2VJZDplLnR1cm5JZD8ibXNnOiIrZS50dXJuSWQ6Im1zZzoiKyh0eXBlb2YgdD09Im51bWJlciI/dDowKToibXNnOnVua25vd24tIisodHlwZW9mIHQ9PSJudW1iZXIiP3Q6MCl9ZnVuY3Rpb24gSnQoZSx0KXtmb3IodmFyIHI9W10saT0wO2k8dC5sZW5ndGg7aSsrKXt2YXIgYT10W2ldO2E9PW51bGx8fGE9PT0iInx8ci5wdXNoKFN0cmluZyhhKSl9cmV0dXJuIGUrIjoiK3Iuam9pbigiOiIpfWZ1bmN0aW9uIHFuKGUpe3JldHVybiFlfHwhZS5kYXRhc2V0PyIiOmUuZGF0YXNldC5leHBhbmRLZXl8fCIifWZ1bmN0aW9uIFJsKGUsdCl7aWYoIWUpcmV0dXJuITE7c3dpdGNoKHQpe2Nhc2UidG9vbC1jYXJkIjpjYXNlImRpZmYiOnJldHVybiFlLmNsYXNzTGlzdC5jb250YWlucygiY29sbGFwc2VkIik7Y2FzZSJ0aGlua2luZyI6cmV0dXJuIGUuY2xhc3NMaXN0LmNvbnRhaW5zKCJleHBhbmRlZCIpJiYhZS5jbGFzc0xpc3QuY29udGFpbnMoImNvbGxhcHNlZCIpO2Nhc2UiaW5saW5lLXRvb2wiOnJldHVybiBlLmNsYXNzTGlzdC5jb250YWlucygiaW5saW5lLXRvb2wtb3BlbiIpO2Nhc2UidGVybWluYWwiOnt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLWJvZHkiKTtyZXR1cm4gcj9yLnN0eWxlLmRpc3BsYXkhPT0ibm9uZSI6ZS5kYXRhc2V0LmV4cGFuZGVkPT09InRydWUifWNhc2UidG9vbC1ncm91cCI6cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7Y2FzZSJzdWJhZ2VudC1yZXBseSI6cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7Y2FzZSJzdWJhZ2VudC1wYW5lbCI6cmV0dXJuIGUuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7ZGVmYXVsdDpyZXR1cm4hMX19ZnVuY3Rpb24gUmkoZSx0LHIpe2lmKGUpc3dpdGNoKHQpe2Nhc2UidG9vbC1jYXJkIjpjYXNlImRpZmYiOntlLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIsIXIpO2JyZWFrfWNhc2UidGhpbmtpbmciOntlLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIsIXIpLGUuY2xhc3NMaXN0LnRvZ2dsZSgiZXhwYW5kZWQiLCEhcik7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLXByZXZpZXciKTtpZihpKXt2YXIgYT1lLmRhdGFzZXQudGhpbmtpbmd8fCIiLHU9YS5zbGljZSgwLDU3KSsoYS5sZW5ndGg+NjA/Ilx1MjAyNiI6IiIpO2kudGV4dENvbnRlbnQ9cj9hOnV9dmFyIHM9ZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLWFjdGlvbiIpO3MmJihzLnRleHRDb250ZW50PXI/Ilx1NjUzNlx1OEQ3NyI6Ilx1NUM1NVx1NUYwMCIpO2JyZWFrfWNhc2UiaW5saW5lLXRvb2wiOntlLmNsYXNzTGlzdC50b2dnbGUoImlubGluZS10b29sLW9wZW4iLCEhcik7dmFyIG89ZS5xdWVyeVNlbGVjdG9yKCIuaW5saW5lLXRvb2wtZXhwYW5kZWQiKTtvJiYoby5zdHlsZS5kaXNwbGF5PXI/ImJsb2NrIjoibm9uZSIpO2JyZWFrfWNhc2UidGVybWluYWwiOnt2YXIgbD1lLnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLWJvZHkiKTtsJiYobC5zdHlsZS5kaXNwbGF5PXI/ImJsb2NrIjoibm9uZSIpLGUuZGF0YXNldC5leHBhbmRlZD1yPyJ0cnVlIjoiZmFsc2UiO3ZhciBjPWUucXVlcnlTZWxlY3RvcigiLnRlcm0tdG9nZ2xlLWljb24iKTtjJiYoYy50ZXh0Q29udGVudD1yPyJcdTI1QkMiOiJcdTI1QjYiKTticmVha31jYXNlInRvb2wtZ3JvdXAiOntlLnNldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIscj8idHJ1ZSI6ImZhbHNlIik7dmFyIGY9ZS5xdWVyeVNlbGVjdG9yKCIudG9vbC1ncm91cC1ib2R5Iik7ZiYmKGYuc3R5bGUuZGlzcGxheT1yPyJibG9jayI6Im5vbmUiKTt2YXIgZD1lLnF1ZXJ5U2VsZWN0b3IoIi50b29sLWdyb3VwLWNoZXZyb24iKTtkJiYoZC5zdHlsZS50cmFuc2Zvcm09cj8icm90YXRlKDE4MGRlZykiOiIiKTticmVha31jYXNlInN1YmFnZW50LXJlcGx5Ijp7ZS5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiLHI/InRydWUiOiJmYWxzZSIpO3ZhciB2PWUucXVlcnlTZWxlY3RvcigiLnN1YmFnZW50LXJlcGx5LXRvZ2dsZS1sYWJlbCIpO3YmJih2LnRleHRDb250ZW50PXI/Ilx1NjUzNlx1OEQ3NyI6Ilx1NUM1NVx1NUYwMCIpO3ZhciBnPWUucXVlcnlTZWxlY3RvcigiLnN1YmFnZW50LXJlcGx5LXRvZ2dsZSIpO2cmJihnLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIscj8idHJ1ZSI6ImZhbHNlIiksZy5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLHI/Ilx1NjUzNlx1OEQ3N1x1NUI1MFx1NEVFM1x1NzQwNlx1NTZERVx1NTkwRCI6Ilx1NUM1NVx1NUYwMFx1NUI1MFx1NEVFM1x1NzQwNlx1NTZERVx1NTkwRFx1NTE2OFx1NjU4NyIpKTticmVha31jYXNlInN1YmFnZW50LXBhbmVsIjp7ZS5zZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiLHI/InRydWUiOiJmYWxzZSIpO2Zvcih2YXIgaD1lLnF1ZXJ5U2VsZWN0b3JBbGwoIi5zdWJhZ2VudC1wYW5lbC10b2dnbGUiKSxtPTA7bTxoLmxlbmd0aDttKyspe3ZhciBiPWhbbV07Yi5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLHI/InRydWUiOiJmYWxzZSIpLGIuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixyPyJcdTY1MzZcdThENzdcdTVCNTBcdTRFRTNcdTc0MDZcdThGOTNcdTUxRkEiOiJcdTVDNTVcdTVGMDBcdTVCNTBcdTRFRTNcdTc0MDZcdThGOTNcdTUxRkEiKTt2YXIgRj1iLnF1ZXJ5U2VsZWN0b3IoIi5zdWJhZ2VudC1wYW5lbC10b2dnbGUtbGFiZWwiKTtGJiYoRi50ZXh0Q29udGVudD1yPyJcdTY1MzZcdThENzciOiJcdTVDNTVcdTVGMDAiKX12YXIgdz1lLnF1ZXJ5U2VsZWN0b3IoIi5zdWJhZ2VudC1wYW5lbC1ib2R5Iik7dyYmKHI/dy5zY3JvbGxUb3A9MDp3LnNjcm9sbFRvcD13LnNjcm9sbEhlaWdodCk7YnJlYWt9fX1mdW5jdGlvbiB3bihlLHQpe3ZhciByPXFuKGUpO3ImJmpsKHIsUmwoZSx0KSl9ZnVuY3Rpb24gV2koZSl7IWV8fCFuLnNlbGVjdGVkSWR8fGUucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtZXhwYW5kLWtleV0iKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3ZhciByPXFuKHQpLGk9dC5kYXRhc2V0LmV4cGFuZEtpbmR8fCIiLGE9cnQocik7YT09PW51bGx8fCFpfHxSaSh0LGksYSl9KX1mdW5jdGlvbiBOZSgpe3JldHVybiB3aW5kb3cuaW5uZXJXaWR0aDw9NzY4fWZ1bmN0aW9uIGh1KCl7cmV0dXJuISFuLnNlc3Npb25zRHJhd2VyT3BlbiYmKE5lKCl8fCFuLnNpZGViYXJQaW5uZWQpfWZ1bmN0aW9uIHppKGUpe24uZmlsZVBhbmVsT3Blbj1lO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1maWxlLXBhbmVsLW9wZW4iLFN0cmluZyhuLmZpbGVQYW5lbE9wZW4pKX1jYXRjaHt9bi5maWxlUGFuZWxPcGVuJiZOZSgpJiYobi5zZXNzaW9uc0RyYXdlck9wZW49ITEsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMSkpLHJuKCksbi5maWxlUGFuZWxPcGVuJiZPdCgpfWZ1bmN0aW9uIEtyKCl7emkoIW4uZmlsZVBhbmVsT3Blbil9ZnVuY3Rpb24gV2woKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1zaWRlLXBhbmVsIiksdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIubWFpbi1jb250ZW50Iikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1wYW5lbC10b2dnbGUtYnRuIiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1wYW5lbC1iYWNrZHJvcCIpO2UmJmUuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsbi5maWxlUGFuZWxPcGVuKSx0JiZ0LmNsYXNzTGlzdC50b2dnbGUoImZpbGUtcGFuZWwtb3BlbiIsbi5maWxlUGFuZWxPcGVuKSxpJiZpLmNsYXNzTGlzdC50b2dnbGUoIm9wZW4iLG4uZmlsZVBhbmVsT3BlbiksciYmci5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLG4uZmlsZVBhbmVsT3Blbil9ZnVuY3Rpb24gcm4oKXtNcigpLFdsKCl9ZnVuY3Rpb24gemwoZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXItY3dkIik7aWYodCl7dmFyIHI9ZSYmZS5jd2Q/ZS5jd2Q6bm4oKTt0LnRhZ05hbWU9PT0iSU5QVVQiP2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT10JiYodC52YWx1ZT1yKTp0LnRleHRDb250ZW50PXIsdC50aXRsZT1yfX1mdW5jdGlvbiB5dSgpe24uZmlsZVBhbmVsT3BlbiYmemkoITEpfWZ1bmN0aW9uIGJ1KGUpe3ZhciB0PW4udGVybWluYWxTY2FsZStlO2lmKHQ9TWF0aC5tYXgoLjUsTWF0aC5taW4oMix0KSksdD1NYXRoLnJvdW5kKHQqNCkvNCx0IT09bi50ZXJtaW5hbFNjYWxlKXtuLnRlcm1pbmFsU2NhbGU9dDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtdGVybWluYWwtc2NhbGUiLFN0cmluZyh0KSl9Y2F0Y2h7fUV1KCksVmwoKX19ZnVuY3Rpb24gRXUoKXtpZighKCFuLnRlcm1pbmFsfHwhbi50ZXJtaW5hbC5lbGVtZW50KSl7dmFyIGU9bi50ZXJtaW5hbEJhc2VGb250U2l6ZSpuLnRlcm1pbmFsU2NhbGUsdD1NYXRoLm1heCgxLE1hdGgucm91bmQoZSkpLHI9TWF0aC5tYXgoMSxNYXRoLnJvdW5kKGUqMS41KSk7bi50ZXJtaW5hbC5lbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCItLXRlcm0tZm9udC1zaXplIix0KyJweCIpLG4udGVybWluYWwuZWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS10ZXJtLXJvdy1oZWlnaHQiLHIrInB4IiksdHlwZW9mIG4udGVybWluYWwucmVtZWFzdXJlPT0iZnVuY3Rpb24iJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtuLnRlcm1pbmFsJiZuLnRlcm1pbmFsLnJlbWVhc3VyZSgpfSl9fWZ1bmN0aW9uIFZsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLXNjYWxlLWxhYmVsLXRvcCIpO2UmJihlLnRleHRDb250ZW50PU1hdGgucm91bmQobi50ZXJtaW5hbFNjYWxlKjEwMCkrIiUiKX12YXIgVWw9eyJjaGV2cm9uLWxlZnQiOic8cGF0aCBkPSJNMTUgMThsLTYtNiA2LTYiLz4nLCJhcnJvdy11cCI6JzxwYXRoIGQ9Ik0xMiAxOVY1Ii8+PHBhdGggZD0iTTUgMTJsNy03IDcgNyIvPicscmVmcmVzaDonPHBhdGggZD0iTTIxIDEyYTkgOSAwIDEgMS0zLTYuNyIvPjxwYXRoIGQ9Ik0yMSA0djVoLTUiLz4nLGV5ZTonPHBhdGggZD0iTTEgMTJzNC03IDExLTcgMTEgNyAxMSA3LTQgNy0xMSA3UzEgMTIgMSAxMnoiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIzIi8+JywiZXllLW9mZiI6JzxwYXRoIGQ9Ik0xNy45NCAxNy45NEExMC45NCAxMC45NCAwIDAgMSAxMiAxOWMtNyAwLTExLTctMTEtN2ExOS44NiAxOS44NiAwIDAgMSA0LjIyLTUuMTgiLz48cGF0aCBkPSJNMSAxbDIyIDIyIi8+PHBhdGggZD0iTTkuOSA0LjI0QTEwLjk0IDEwLjk0IDAgMCAxIDEyIDRjNyAwIDExIDcgMTEgN2ExOS44MyAxOS44MyAwIDAgMS0zLjM2IDQuMjciLz48cGF0aCBkPSJNMTQuMTIgMTQuMTJhMyAzIDAgMSAxLTQuMjQtNC4yNCIvPicseDonPHBhdGggZD0iTTE4IDZMNiAxOCIvPjxwYXRoIGQ9Ik02IDZsMTIgMTIiLz4nLHNlYXJjaDonPGNpcmNsZSBjeD0iMTEiIGN5PSIxMSIgcj0iNyIvPjxwYXRoIGQ9Ik0yMSAyMWwtNC4zLTQuMyIvPicsY29weTonPHJlY3QgeD0iOSIgeT0iOSIgd2lkdGg9IjExIiBoZWlnaHQ9IjExIiByeD0iMiIvPjxwYXRoIGQ9Ik01IDE1VjVhMiAyIDAgMCAxIDItMmgxMCIvPicsY2xpcGJvYXJkOic8cmVjdCB4PSI4IiB5PSIzIiB3aWR0aD0iOCIgaGVpZ2h0PSI0IiByeD0iMSIvPjxwYXRoIGQ9Ik0xNiA1aDJhMiAyIDAgMCAxIDIgMnYxMmEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY3YTIgMiAwIDAgMSAyLTJoMiIvPicsZG93bmxvYWQ6JzxwYXRoIGQ9Ik0yMSAxNXY0YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0ydi00Ii8+PHBhdGggZD0iTTcgMTBsNSA1IDUtNSIvPjxwYXRoIGQ9Ik0xMiAxNVYzIi8+JyxlZGl0Oic8cGF0aCBkPSJNMTIgMjBoOSIvPjxwYXRoIGQ9Ik0xNi41IDMuNWEyLjEyMSAyLjEyMSAwIDAgMSAzIDNMNyAxOWwtNCAxIDEtNHoiLz4nLHNhdmU6JzxwYXRoIGQ9Ik0xOSAyMUg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDExbDUgNXYxMWEyIDIgMCAwIDEtMiAyeiIvPjxwYXRoIGQ9Ik0xNyAyMXYtOEg3djgiLz48cGF0aCBkPSJNNyAzdjVoOCIvPicsInJvdGF0ZS1jY3ciOic8cGF0aCBkPSJNMyAxMmE5IDkgMCAxIDAgMy02LjciLz48cGF0aCBkPSJNMyA0djVoNSIvPicsIndyYXAtdGV4dCI6JzxwYXRoIGQ9Ik0zIDZoMTgiLz48cGF0aCBkPSJNMyAxMmgxNWEzIDMgMCAxIDEgMCA2aC00Ii8+PHBhdGggZD0iTTE2IDE2bC0yIDIgMiAyIi8+PHBhdGggZD0iTTMgMThoNiIvPicsdHlwZTonPHBhdGggZD0iTTQgN1Y0aDE2djMiLz48cGF0aCBkPSJNOSAyMGg2Ii8+PHBhdGggZD0iTTEyIDR2MTYiLz4nLG1pbnVzOic8cGF0aCBkPSJNNSAxMmgxNCIvPicscGx1czonPHBhdGggZD0iTTEyIDV2MTQiLz48cGF0aCBkPSJNNSAxMmgxNCIvPicsInNlbmQtdG8taW5wdXQiOic8cGF0aCBkPSJNMjIgMkwxMSAxMyIvPjxwYXRoIGQ9Ik0yMiAybC03IDIwLTQtOS05LTR6Ii8+Jyx0ZXJtaW5hbDonPHBvbHlsaW5lIHBvaW50cz0iNCAxNyAxMCAxMSA0IDUiLz48bGluZSB4MT0iMTIiIHkxPSIxOSIgeDI9IjIwIiB5Mj0iMTkiLz4nLCJmb2xkZXItb3BlbiI6JzxwYXRoIGQ9Ik02IDE0bDEuNDUtMi45QTIgMiAwIDAgMSA5LjI0IDEwSDIwYTIgMiAwIDAgMSAxLjk0IDIuNWwtMS41NSA2YTIgMiAwIDAgMS0xLjk0IDEuNUg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDMuOTNhMiAyIDAgMCAxIDEuNjYuOWwuODIgMS4yYTIgMiAwIDAgMCAxLjY2LjlIMThhMiAyIDAgMCAxIDIgMnYyIi8+JyxpbmZvOic8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIxMCIvPjxsaW5lIHgxPSIxMiIgeTE9IjE2IiB4Mj0iMTIiIHkyPSIxMiIvPjxsaW5lIHgxPSIxMiIgeTE9IjgiIHgyPSIxMi4wMSIgeTI9IjgiLz4nfTtmdW5jdGlvbiBPZShlLHQpe3Q9dHx8e307dmFyIHI9VWxbZV18fCIiLGk9dC5zaXplfHwxNixhPXQuY2xhc3NOYW1lPyIgIit0LmNsYXNzTmFtZToiIjtyZXR1cm4nPHN2ZyBjbGFzcz0id2FuZC1pY29uIHdhbmQtaWNvbi0nK2UrYSsnIiB3aWR0aD0iJytpKyciIGhlaWdodD0iJytpKyciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+JytyKyI8L3N2Zz4ifWZ1bmN0aW9uIEtsKGUpe3ZhciB0PWV8fG5uKCk7cmV0dXJuIHQ/JzxkaXYgY2xhc3M9ImZpbGUtdHJlZSIgaWQ9ImZpbGUtdHJlZSIgZGF0YS1jd2Q9IicrcCh0KSsnIj48ZGl2IGNsYXNzPSJ0cmVlLWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvZGl2PjwvZGl2Pic6JzxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIgZW1wdHkiPlx1NjcyQVx1OTE0RFx1N0Y2RVx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NVx1MzAwMjwvZGl2Pid9dmFyIFlsPXtwbmc6Ilx1ezFGNUJDfVx1RkUwRiIsanBnOiJcdXsxRjVCQ31cdUZFMEYiLGpwZWc6Ilx1ezFGNUJDfVx1RkUwRiIsZ2lmOiJcdXsxRjVCQ31cdUZFMEYiLHdlYnA6Ilx1ezFGNUJDfVx1RkUwRiIsc3ZnOiJcdXsxRjVCQ31cdUZFMEYiLGF2aWY6Ilx1ezFGNUJDfVx1RkUwRiIsYm1wOiJcdXsxRjVCQ31cdUZFMEYiLGljbzoiXHV7MUY1QkN9XHVGRTBGIixoZWljOiJcdXsxRjVCQ31cdUZFMEYiLGhlaWY6Ilx1ezFGNUJDfVx1RkUwRiIscGRmOiJcdXsxRjRENX0iLGRvYzoiXHV7MUY0RDh9Iixkb2N4OiJcdXsxRjREOH0iLG9kdDoiXHV7MUY0RDh9Iix4bHM6Ilx1ezFGNENBfSIseGxzeDoiXHV7MUY0Q0F9Iixjc3Y6Ilx1ezFGNENBfSIsdHN2OiJcdXsxRjRDQX0iLHBwdDoiXHV7MUY0RDl9IixwcHR4OiJcdXsxRjREOX0iLG1wNDoiXHV7MUYzQUN9Iix3ZWJtOiJcdXsxRjNBQ30iLG1vdjoiXHV7MUYzQUN9Iixta3Y6Ilx1ezFGM0FDfSIsbTR2OiJcdXsxRjNBQ30iLG9ndjoiXHV7MUYzQUN9IixtcDM6Ilx1ezFGM0I1fSIsd2F2OiJcdXsxRjNCNX0iLG9nZzoiXHV7MUYzQjV9IixtNGE6Ilx1ezFGM0I1fSIsZmxhYzoiXHV7MUYzQjV9IixhYWM6Ilx1ezFGM0I1fSIsb3B1czoiXHV7MUYzQjV9Iix6aXA6Ilx1ezFGNEU2fSIsdGFyOiJcdXsxRjRFNn0iLGd6OiJcdXsxRjRFNn0iLHRnejoiXHV7MUY0RTZ9IixiejI6Ilx1ezFGNEU2fSIsIjd6IjoiXHV7MUY0RTZ9IixyYXI6Ilx1ezFGNEU2fSIseHo6Ilx1ezFGNEU2fSIsbWQ6Ilx1ezFGNEREfSIsbWFya2Rvd246Ilx1ezFGNEREfSIsbWR4OiJcdXsxRjRERH0iLHJzdDoiXHV7MUY0RER9Iix0eHQ6Ilx1ezFGNEREfSIsbG9nOiJcdXsxRjRERH0iLGh0bWw6Ilx1ezFGMzEwfSIsaHRtOiJcdXsxRjMxMH0iLHhtbDoiXHV7MUYzMTB9Iixjc3M6Ilx1ezFGM0E4fSIsc2NzczoiXHV7MUYzQTh9IixsZXNzOiJcdXsxRjNBOH0iLGpzb246Ilx1MjY5OVx1RkUwRiIsanNvbmM6Ilx1MjY5OVx1RkUwRiIseWFtbDoiXHUyNjk5XHVGRTBGIix5bWw6Ilx1MjY5OVx1RkUwRiIsdG9tbDoiXHUyNjk5XHVGRTBGIixpbmk6Ilx1MjY5OVx1RkUwRiIsY2ZnOiJcdTI2OTlcdUZFMEYiLGNvbmY6Ilx1MjY5OVx1RkUwRiIsZW52OiJcdTI2OTlcdUZFMEYiLGVkaXRvcmNvbmZpZzoiXHUyNjk5XHVGRTBGIix0czoiXHV7MUY0REN9Iix0c3g6Ilx1ezFGNERDfSIsanM6Ilx1ezFGNERDfSIsanN4OiJcdXsxRjREQ30iLG1qczoiXHV7MUY0REN9IixjanM6Ilx1ezFGNERDfSIscHk6Ilx1ezFGNERDfSIscmI6Ilx1ezFGNERDfSIsZ286Ilx1ezFGNERDfSIscnM6Ilx1ezFGNERDfSIsamF2YToiXHV7MUY0REN9IixjOiJcdXsxRjREQ30iLGNwcDoiXHV7MUY0REN9IixoOiJcdXsxRjREQ30iLGhwcDoiXHV7MUY0REN9IixjczoiXHV7MUY0REN9Iixzd2lmdDoiXHV7MUY0REN9IixrdDoiXHV7MUY0REN9IixzY2FsYToiXHV7MUY0REN9IixwaHA6Ilx1ezFGNERDfSIsc2g6Ilx1ezFGNERDfSIsYmFzaDoiXHV7MUY0REN9Iix6c2g6Ilx1ezFGNERDfSIsZmlzaDoiXHV7MUY0REN9IixsdWE6Ilx1ezFGNERDfSIsc3FsOiJcdXsxRjREQ30iLGdyYXBocWw6Ilx1ezFGNERDfSIscHJvdG86Ilx1ezFGNERDfSIsdnVlOiJcdXsxRjREQ30iLHN2ZWx0ZToiXHV7MUY0REN9IixkaWZmOiJcdXsxRjREQ30iLHBhdGNoOiJcdXsxRjREQ30iLHR0ZjoiXHV7MUY1MjR9IixvdGY6Ilx1ezFGNTI0fSIsd29mZjoiXHV7MUY1MjR9Iix3b2ZmMjoiXHV7MUY1MjR9Iixlb3Q6Ilx1ezFGNTI0fSJ9O2Z1bmN0aW9uIEZ1KGUpe2lmKCFlKXJldHVybiJcdXsxRjRDNH0iO2lmKGUudHlwZT09PSJkaXIiKXJldHVybiJcdXsxRjRDMX0iO3ZhciB0PShlLm5hbWV8fCIiKS50b0xvd2VyQ2FzZSgpO2lmKHQ9PT0iZG9ja2VyZmlsZSIpcmV0dXJuIlx1ezFGNDMzfSI7aWYodD09PSJtYWtlZmlsZSIpcmV0dXJuIlx1ezFGNkUwfVx1RkUwRiI7aWYodD09PSJsaWNlbnNlIilyZXR1cm4iXHV7MUY0REN9IjtpZih0PT09InJlYWRtZSIpcmV0dXJuIlx1ezFGNEREfSI7dmFyIHI9dC5sYXN0SW5kZXhPZigiLiIpO2lmKHI8MHx8cj09PXQubGVuZ3RoLTEpcmV0dXJuIlx1ezFGNEM0fSI7dmFyIGk9dC5zbGljZShyKzEpO3JldHVybiBZbFtpXXx8Ilx1ezFGNEM0fSJ9ZnVuY3Rpb24gSG4oZSl7aWYodHlwZW9mIGUhPSJudW1iZXIifHwhaXNGaW5pdGUoZSl8fGU8MClyZXR1cm4iIjtpZihlPDEwMjQpcmV0dXJuIGUrIiBCIjt2YXIgdD1lLzEwMjQ7aWYodDwxMDI0KXJldHVybih0Pj0xMD9NYXRoLnJvdW5kKHQpOnQudG9GaXhlZCgxKSkrIiBLQiI7dmFyIHI9dC8xMDI0O2lmKHI8MTAyNClyZXR1cm4ocj49MTA/TWF0aC5yb3VuZChyKTpyLnRvRml4ZWQoMSkpKyIgTUIiO3ZhciBpPXIvMTAyNDtyZXR1cm4oaT49MTA/TWF0aC5yb3VuZChpKTppLnRvRml4ZWQoMSkpKyIgR0IifWZ1bmN0aW9uIEpsKGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PURhdGUucGFyc2UoZSk7cmV0dXJuIGlzTmFOKHQpPyIiOm5ldyBEYXRlKHQpLnRvTG9jYWxlU3RyaW5nKCl9ZnVuY3Rpb24gd3UoKXtpZihuLmZpbGVFeHBsb3JlckN3ZClyZXR1cm4gbi5maWxlRXhwbG9yZXJDd2Q7aWYobi5zZWxlY3RlZElkKXt2YXIgZT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZihlJiZlLmN3ZClyZXR1cm4gZS5jd2R9cmV0dXJuIG5uKCl9ZnVuY3Rpb24gT3QoZSl7ZT1lfHx7fTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1leHBsb3JlciIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXItY3dkIik7aWYodCl7dmFyIGk9ZS5jd2R8fHd1KCk7aWYoIWkpe3QuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmaWxlLWV4cGxvcmVyIGVtcHR5Ij5cdTZDQTFcdTY3MDlcdTUzRUZcdTY2M0VcdTc5M0FcdTc2ODRcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTVcdTMwMDI8L2Rpdj4nO3JldHVybn1uLmZpbGVFeHBsb3JlckN3ZD1pLG4uZmlsZUV4cGxvcmVyTG9hZGluZz0hMCxuLmFsbEZpbGVzPVtdLG4uZmlsZUV4cGxvcmVyVHJ1bmNhdGVkPSExLG4uZmlsZUV4cGxvcmVyVG90YWw9MCx0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1leHBsb3JlciI+PGRpdiBjbGFzcz0idHJlZS1sb2FkaW5nIiBzdHlsZT0icGFkZGluZzoxMnB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTowLjgxMjVyZW07Ij5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj48L2Rpdj4nLHImJihyLnRhZ05hbWU9PT0iSU5QVVQiP2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQhPT1yJiYoci52YWx1ZT1pKTpyLnRleHRDb250ZW50PWksci50aXRsZT1pKTt2YXIgYT0iL2FwaS9kaXJlY3Rvcnk/cT0iK2VuY29kZVVSSUNvbXBvbmVudChpKSsiJmdpdFN0YXR1cz10cnVlIjtmZXRjaChhLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbih1KXtpZighdS5vayl0aHJvdyBuZXcgRXJyb3IoIkZhaWxlZCB0byBsb2FkIGRpcmVjdG9yeS4iKTtyZXR1cm4gdS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHUpe24uZmlsZUV4cGxvcmVyTG9hZGluZz0hMTt2YXIgcyxvLGw7aWYoQXJyYXkuaXNBcnJheSh1KT8ocz11LG89ITEsbD11Lmxlbmd0aCk6KHM9dSYmdS5pdGVtc3x8W10sbz0hISh1JiZ1LnRydW5jYXRlZCksbD11JiZ1LnRvdGFsfHxzLmxlbmd0aCksIXN8fHMubGVuZ3RoPT09MCl7dC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIgZW1wdHkiPlx1N0E3QVx1NzZFRVx1NUY1NVx1NjIxNlx1NjVFMFx1NkNENVx1OEJCRlx1OTVFRVx1MzAwMjwvZGl2Pic7cmV0dXJufW4uYWxsRmlsZXM9cyxuLmZpbGVFeHBsb3JlclRydW5jYXRlZD1vLG4uZmlsZUV4cGxvcmVyVG90YWw9bCxDdSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtuLmZpbGVFeHBsb3JlckxvYWRpbmc9ITEsdC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIgZW1wdHkiPlx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNVx1RkYwQ1x1OEJGN1x1NjhDMFx1NjdFNVx1OERFRlx1NUY4NFx1NjIxNlx1Njc0M1x1OTY1MFx1MzAwMjwvZGl2Pid9KX19ZnVuY3Rpb24gQ3UoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1leHBsb3JlciIpO2lmKGUpe3ZhciB0PW4uZmlsZUV4cGxvcmVyQ3dkfHwiIjtpZih0KXt2YXIgcj1uLmZpbGVTZWFyY2hRdWVyeSxpPW4uYWxsRmlsZXN8fFtdLGE9aTtpZihyKXt2YXIgdT1yLnRvTG93ZXJDYXNlKCk7YT1pLmZpbHRlcihmdW5jdGlvbihsKXtyZXR1cm4gbC5uYW1lLnRvTG93ZXJDYXNlKCkuaW5kZXhPZih1KSE9PS0xfSl9aWYoYS5sZW5ndGg9PT0wKXtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1leHBsb3JlciBlbXB0eSI+Jysocj8iXHU2Q0ExXHU2NzA5XHU2MjdFXHU1MjMwXHU1MzM5XHU5MTREXHU3Njg0XHU2NTg3XHU0RUY2IjoiXHU3QTdBXHU3NkVFXHU1RjU1IikrIjwvZGl2PiI7cmV0dXJufXZhciBzPSIiO2lmKCFyJiZuLmZpbGVFeHBsb3JlclRydW5jYXRlZCl7dmFyIG89aS5sZW5ndGg7cz0nPGRpdiBjbGFzcz0idHJlZS10cnVuY2F0ZWQiIHRpdGxlPSJcdTU0MEVcdTdBRUZcdTYzMDlcdTVCNTdcdTZCQ0RcdTVFOEZcdTY3MDBcdTU5MUFcdThGRDRcdTU2REUgJytvKycgXHU5ODc5Ij5cdTY2M0VcdTc5M0FcdTUyNEQgJytvKyIgXHU5ODc5IC8gXHU1MTcxICIrbi5maWxlRXhwbG9yZXJUb3RhbCsiIFx1OTg3OTwvZGl2PiJ9ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtdHJlZSIgaWQ9ImZpbGUtdHJlZSIgZGF0YS1jd2Q9IicrcCh0KSsnIj4nK2EubWFwKGZ1bmN0aW9uKGwpe3JldHVybiBCdShsKX0pLmpvaW4oIiIpKyI8L2Rpdj4iK3MsRHUoKX19fWZ1bmN0aW9uIEJ1KGUsdCl7dD10fHwwO3ZhciByPXAoZS5uYW1lKSxpPWUudHlwZT09PSJkaXIiLGE9RnUoZSksdT1pPyJcdTI1QjgiOiIiLHM9aT8iIjoiIGVtcHR5IixvPWUuZ2l0U3RhdHVzLGw9R2wobyksYz0iIjtyZXR1cm4haSYmdHlwZW9mIGUuc2l6ZT09Im51bWJlciImJihjPSc8c3BhbiBjbGFzcz0idHJlZS1tZXRhIiB0aXRsZT0iXHU1OTI3XHU1QzBGXHVGRjFBJytwKEhuKGUuc2l6ZSkpKyhlLm10aW1lP2AKXHU0RkVFXHU2NTM5XHU2NUY2XHU5NUY0XHVGRjFBYCtwKEpsKGUubXRpbWUpKToiIikrJyI+JytwKEhuKGUuc2l6ZSkpKyI8L3NwYW4+IiksJzxkaXYgY2xhc3M9InRyZWUtaXRlbSIgZGF0YS1wYXRoPSInK3AoZS5wYXRoKSsnIiBkYXRhLXR5cGU9IicrcChlLnR5cGUpKyciIGRhdGEtbmFtZT0iJytwKGUubmFtZSkrJyIgdGFiaW5kZXg9IjAiPjxzcGFuIGNsYXNzPSJ0cmVlLXRvZ2dsZScrcysnIj4nK3UrJzwvc3Bhbj48c3BhbiBjbGFzcz0idHJlZS1pY29uIj4nK2ErJzwvc3Bhbj48c3BhbiBjbGFzcz0idHJlZS1uYW1lIj4nK3IrIjwvc3Bhbj4iK2MrKGw/JzxzcGFuIGNsYXNzPSJnaXQtc3RhdHVzLWJhZGdlICcrbC5jbGFzcysnIiB0aXRsZT0iJytsLnRpdGxlKyciPicrbC50ZXh0KyI8L3NwYW4+IjoiIikrIjwvZGl2PiJ9ZnVuY3Rpb24gR2woZSl7cmV0dXJuIGU/ZS5zdGFnZWQ9PT0iYWRkZWQiP3t0ZXh0OiJBIixjbGFzczoiZ2l0LWFkZGVkIix0aXRsZToiXHU1REYyXHU2NjgyXHU1QjU4XHVGRjA4XHU2NUIwXHU1ODlFXHVGRjA5In06ZS5zdGFnZWQ9PT0ibW9kaWZpZWQiP3t0ZXh0OiJNIixjbGFzczoiZ2l0LW1vZGlmaWVkIix0aXRsZToiXHU1REYyXHU2NjgyXHU1QjU4XHVGRjA4XHU0RkVFXHU2NTM5XHVGRjA5In06ZS5zdGFnZWQ9PT0iZGVsZXRlZCI/e3RleHQ6IkQiLGNsYXNzOiJnaXQtZGVsZXRlZCIsdGl0bGU6Ilx1NURGMlx1NjY4Mlx1NUI1OFx1RkYwOFx1NTIyMFx1OTY2NFx1RkYwOSJ9OmUuc3RhZ2VkPT09InJlbmFtZWQiP3t0ZXh0OiJSIixjbGFzczoiZ2l0LXJlbmFtZWQiLHRpdGxlOiJcdTVERjJcdTY2ODJcdTVCNThcdUZGMDhcdTkxQ0RcdTU0N0RcdTU0MERcdUZGMDkifTplLnVuc3RhZ2VkPT09Im1vZGlmaWVkIj97dGV4dDoiTSIsY2xhc3M6ImdpdC11bnN0YWdlZCIsdGl0bGU6Ilx1NjcyQVx1NjY4Mlx1NUI1OFx1RkYwOFx1NEZFRVx1NjUzOVx1RkYwOSJ9OmUudW5zdGFnZWQ9PT0iZGVsZXRlZCI/e3RleHQ6IkQiLGNsYXNzOiJnaXQtdW5zdGFnZWQtZGVsZXRlZCIsdGl0bGU6Ilx1NjcyQVx1NjY4Mlx1NUI1OFx1RkYwOFx1NTIyMFx1OTY2NFx1RkYwOSJ9OmUudW50cmFja2VkP3t0ZXh0OiI/IixjbGFzczoiZ2l0LXVudHJhY2tlZCIsdGl0bGU6Ilx1NjcyQVx1OERERlx1OEUyQSJ9Om51bGw6bnVsbH1mdW5jdGlvbiBEdSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXRyZWUiKTtpZihlKXtlLnF1ZXJ5U2VsZWN0b3JBbGwoIi50cmVlLWl0ZW1bZGF0YS10eXBlPSdkaXInXSIpLmZvckVhY2goZnVuY3Rpb24oaSl7aS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oYSl7UWwoaSl9KX0pLGUucXVlcnlTZWxlY3RvckFsbCgiLnRyZWUtaXRlbVtkYXRhLXR5cGU9J2ZpbGUnXSIpLmZvckVhY2goZnVuY3Rpb24oaSl7dmFyIGE9ZnVuY3Rpb24oKXtVaShpLmRhdGFzZXQucGF0aCl9O2kuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGEpLGkuYWRkRXZlbnRMaXN0ZW5lcigiZGJsY2xpY2siLGEpfSk7dmFyIHQ9bnVsbCxyPSExO2UucXVlcnlTZWxlY3RvckFsbCgiLnRyZWUtaXRlbSIpLmZvckVhY2goZnVuY3Rpb24oaSl7aS5hZGRFdmVudExpc3RlbmVyKCJjb250ZXh0bWVudSIsZnVuY3Rpb24oYSl7YS5wcmV2ZW50RGVmYXVsdCgpLGt1KGEuY2xpZW50WCxhLmNsaWVudFksaSl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLGZ1bmN0aW9uKGEpe3I9ITEsdD1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cj0hMDt2YXIgdT1hLnRvdWNoZXMmJmEudG91Y2hlc1swXTtrdSh1P3UuY2xpZW50WDowLHU/dS5jbGllbnRZOjAsaSl9LDUwMCl9LHtwYXNzaXZlOiEwfSksaS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsZnVuY3Rpb24oKXt0JiYoY2xlYXJUaW1lb3V0KHQpLHQ9bnVsbCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZnVuY3Rpb24oKXt0JiYoY2xlYXJUaW1lb3V0KHQpLHQ9bnVsbCl9KX0pfX1mdW5jdGlvbiBRbChlKXt2YXIgdD1lLmRhdGFzZXQucGF0aCxyPWUucXVlcnlTZWxlY3RvcigiLnRyZWUtdG9nZ2xlIiksaT1lLm5leHRFbGVtZW50U2libGluZztpZihpJiZpLmNsYXNzTGlzdC5jb250YWlucygidHJlZS1jaGlsZHJlbiIpKXt2YXIgYT1pLmNsYXNzTGlzdC5jb250YWlucygib3BlbiIpO2kuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIpLHImJnIuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsIWEpO3ZhciB1PWUucXVlcnlTZWxlY3RvcigiLnRyZWUtaWNvbiIpO3UmJih1LnRleHRDb250ZW50PWE/Ilx1ezFGNEMxfSI6Ilx1ezFGNEMyfSIpO3JldHVybn1yJiZyLmNsYXNzTGlzdC5hZGQoIm9wZW4iKTt2YXIgcz1lLnF1ZXJ5U2VsZWN0b3IoIi50cmVlLWljb24iKTtzJiYocy50ZXh0Q29udGVudD0iXHV7MUY0QzJ9Iik7dmFyIG89Ii9hcGkvZGlyZWN0b3J5P3E9IitlbmNvZGVVUklDb21wb25lbnQodCkrIiZnaXRTdGF0dXM9dHJ1ZSI7ZmV0Y2gobyx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24obCl7cmV0dXJuIGwuanNvbigpfSkudGhlbihmdW5jdGlvbihsKXt2YXIgYztBcnJheS5pc0FycmF5KGwpP2M9bDpjPWwmJmwuaXRlbXN8fFtdO3ZhciBmPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2YuY2xhc3NOYW1lPSJ0cmVlLWNoaWxkcmVuIG9wZW4iLCFjfHxjLmxlbmd0aD09PTA/Zi5pbm5lckhUTUw9JzxkaXYgY2xhc3M9InRyZWUtaXRlbSIgc3R5bGU9ImNvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpkZWZhdWx0OyI+PHNwYW4gY2xhc3M9InRyZWUtdG9nZ2xlIGVtcHR5Ij5cdTI1Qjg8L3NwYW4+PHNwYW4gY2xhc3M9InRyZWUtbmFtZSI+XHVGRjA4XHU3QTdBXHU3NkVFXHU1RjU1XHVGRjA5PC9zcGFuPjwvZGl2Pic6Zi5pbm5lckhUTUw9Yy5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIEJ1KGQpfSkuam9pbigiIiksZS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShmLGUubmV4dFNpYmxpbmcpLER1KCl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uICRsKCl7dmFyIGU9d3UoKTtpZihlKXt2YXIgdD1lLnJlcGxhY2UoL1wvKyQvLCIiKS5yZXBsYWNlKC9cL1teXC9dKyQvLCIiKTt0fHwodD0iLyIpLHQhPT1lJiZPdCh7Y3dkOnR9KX19ZnVuY3Rpb24gVmkoZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKCF0KXJldHVybiExO3ZhciByPXQudmFsdWV8fCIiLGk9ciYmIXIuZW5kc1dpdGgoIiAiKSYmIXIuZW5kc1dpdGgoYApgKT8iICI6IiI7dC52YWx1ZT1yK2krZSx0LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIse2J1YmJsZXM6ITB9KSk7dHJ5e3QuZm9jdXMoKSx0LnNldFNlbGVjdGlvblJhbmdlKHQudmFsdWUubGVuZ3RoLHQudmFsdWUubGVuZ3RoKX1jYXRjaHt9cmV0dXJuITB9ZnVuY3Rpb24gWXIoZSl7aWYobmF2aWdhdG9yLmNsaXBib2FyZCYmbmF2aWdhdG9yLmNsaXBib2FyZC53cml0ZVRleHQpcmV0dXJuIG5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGUpLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4hMH0pLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJuIHQoKX0pO3JldHVybiBQcm9taXNlLnJlc29sdmUodCgpKTtmdW5jdGlvbiB0KCl7dHJ5e3ZhciByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInRleHRhcmVhIik7ci52YWx1ZT1lLHIuc3R5bGUucG9zaXRpb249ImZpeGVkIixyLnN0eWxlLmxlZnQ9Ii05OTk5cHgiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQociksci5zZWxlY3QoKTt2YXIgaT1kb2N1bWVudC5leGVjQ29tbWFuZCgiY29weSIpO3JldHVybiBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHIpLGl9Y2F0Y2h7cmV0dXJuITF9fX1mdW5jdGlvbiB3dChlKXtpZih0eXBlb2Ygd2luZG93LnNob3dUb2FzdD09ImZ1bmN0aW9uIil7d2luZG93LnNob3dUb2FzdChlKTtyZXR1cm59dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9IndhbmQtbWluaS10b2FzdCIsdC50ZXh0Q29udGVudD1lLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCksc2V0VGltZW91dChmdW5jdGlvbigpe3QuY2xhc3NMaXN0LmFkZCgic2hvdyIpfSwxMCksc2V0VGltZW91dChmdW5jdGlvbigpe3QuY2xhc3NMaXN0LnJlbW92ZSgic2hvdyIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LnJlbW92ZSgpfSwyMjApfSwxNjAwKX1mdW5jdGlvbiBfbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWNvbnRleHQtbWVudSIpO2UmJmUucmVtb3ZlKCksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigiY2xpY2siLF9uLCEwKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJzY3JvbGwiLF9uLCEwKX1mdW5jdGlvbiBrdShlLHQscil7X24oKTt2YXIgaT1yLmRhdGFzZXQucGF0aHx8IiIsYT1yLmRhdGFzZXQudHlwZXx8ImZpbGUiLHU9bi5maWxlRXhwbG9yZXJDd2R8fCIiLHM9aTt1JiZpLmluZGV4T2YodSk9PT0wJiYocz1pLnNsaWNlKHUubGVuZ3RoKS5yZXBsYWNlKC9eXC8rLywiIil8fCIuIik7dmFyIG89ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7by5pZD0iZmlsZS1jb250ZXh0LW1lbnUiLG8uY2xhc3NOYW1lPSJmaWxlLWNvbnRleHQtbWVudSI7dmFyIGw9W107YT09PSJmaWxlIj9sLnB1c2goe2xhYmVsOiJcdTYyNTNcdTVGMDBcdTk4ODRcdTg5QzgiLGljb246Ilx1ezFGNDQxfSIscnVuOmZ1bmN0aW9uKCl7VWkoaSl9fSk6bC5wdXNoKHtsYWJlbDoiXHU4RkRCXHU1MTY1XHU2QjY0XHU3NkVFXHU1RjU1IixpY29uOiJcdXsxRjRDMn0iLHJ1bjpmdW5jdGlvbigpe090KHtjd2Q6aX0pfX0pLGwucHVzaCh7bGFiZWw6Ilx1NTkwRFx1NTIzNlx1NUI4Q1x1NjU3NFx1OERFRlx1NUY4NCIsaWNvbjoiXHV7MUY0Q0J9IixydW46ZnVuY3Rpb24oKXtZcihpKS50aGVuKGZ1bmN0aW9uKCl7d3QoIlx1NURGMlx1NTkwRFx1NTIzNlx1OERFRlx1NUY4NCIpfSl9fSkscyYmcyE9PWkmJmwucHVzaCh7bGFiZWw6Ilx1NTkwRFx1NTIzNlx1NzZGOFx1NUJGOVx1OERFRlx1NUY4NCIsaWNvbjoiXHV7MUY0Q0J9IixydW46ZnVuY3Rpb24oKXtZcihzKS50aGVuKGZ1bmN0aW9uKCl7d3QoIlx1NURGMlx1NTkwRFx1NTIzNlx1NzZGOFx1NUJGOVx1OERFRlx1NUY4NCIpfSl9fSksbC5wdXNoKHtsYWJlbDoiXHU3Qzk4XHU4RDM0XHU4REVGXHU1Rjg0XHU1MjMwXHU4RjkzXHU1MTY1XHU2ODQ2IixpY29uOiJcdTI3MEZcdUZFMEYiLHJ1bjpmdW5jdGlvbigpe1ZpKGkpJiZ3dCgiXHU1REYyXHU3Qzk4XHU4RDM0XHU1MjMwXHU4RjkzXHU1MTY1XHU2ODQ2Iil9fSksYT09PSJmaWxlIiYmbC5wdXNoKHtsYWJlbDoiXHU0RTBCXHU4RjdEXHU2NTg3XHU0RUY2IixpY29uOiJcdTJCMDciLHJ1bjpmdW5jdGlvbigpe3ZhciBoPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTtoLmhyZWY9Ii9hcGkvZmlsZS1yYXc/ZG93bmxvYWQ9MSZwYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KGkpLGgucmVsPSJub29wZW5lciIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChoKSxoLmNsaWNrKCksaC5yZW1vdmUoKX19KSxvLmlubmVySFRNTD1sLm1hcChmdW5jdGlvbihoLG0pe3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImZpbGUtY29udGV4dC1tZW51LWl0ZW0iIGRhdGEtaWR4PSInK20rJyI+PHNwYW4gY2xhc3M9ImN0eC1pY29uIj4nK2guaWNvbisnPC9zcGFuPjxzcGFuIGNsYXNzPSJjdHgtbGFiZWwiPicrcChoLmxhYmVsKSsiPC9zcGFuPjwvYnV0dG9uPiJ9KS5qb2luKCIiKSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG8pO3ZhciBjPXdpbmRvdy5pbm5lcldpZHRoLGY9d2luZG93LmlubmVySGVpZ2h0LGQ9by5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx2PU1hdGgubWluKGUsYy1kLndpZHRoLTgpLGc9TWF0aC5taW4odCxmLWQuaGVpZ2h0LTgpO28uc3R5bGUubGVmdD1NYXRoLm1heCg4LHYpKyJweCIsby5zdHlsZS50b3A9TWF0aC5tYXgoOCxnKSsicHgiLG8ucXVlcnlTZWxlY3RvckFsbCgiLmZpbGUtY29udGV4dC1tZW51LWl0ZW0iKS5mb3JFYWNoKGZ1bmN0aW9uKGgpe2guYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKG0pe20uc3RvcFByb3BhZ2F0aW9uKCk7dmFyIGI9cGFyc2VJbnQoaC5kYXRhc2V0LmlkeCwxMCk7X24oKSxsW2JdJiZsW2JdLnJ1bigpfSl9KSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLF9uLCEwKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLF9uLCEwKX0sMCl9dmFyIE89bnVsbDtmdW5jdGlvbiBVaShlKXt2YXIgdD1PJiZPLm92ZXJsYXk7aWYodCl7Ty5wYXRoPWUsTy5lZGl0aW5nPSExLE8uZGlydHk9ITE7dmFyIHM9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXRpdGxlIik7cyYmKHMuaW5uZXJIVE1MPSc8c3BhbiBjbGFzcz0iZmlsZS1wcmV2aWV3LWljb24iPlx1ezFGNEM0fTwvc3Bhbj48ZGl2IGNsYXNzPSJmaWxlLXByZXZpZXctbmFtZS1ibG9jayI+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LW5hbWUtcm93Ij48c3BhbiBjbGFzcz0iZmlsZS1wcmV2aWV3LWZpbGVuYW1lIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L3NwYW4+PC9kaXY+PHNwYW4gY2xhc3M9ImZpbGUtcHJldmlldy1wYXRoIiB0aXRsZT0iIj48L3NwYW4+PC9kaXY+Jyk7dmFyIG89dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXRvb2xiYXIiKTtvJiYoby5pbm5lckhUTUw9IiIpO3ZhciBsPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1wYXRoIik7bCYmKGwudGV4dENvbnRlbnQ9IiIsbC50aXRsZT0iIik7dmFyIGM9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWJvZHkiKTtjJiYoYy5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTk4ODRcdTg5QzhcdTIwMjY8L2Rpdj4nKX1lbHNle3Q9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdC5jbGFzc05hbWU9ImZpbGUtcHJldmlldy1vdmVybGF5Iix0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LW1vZGFsIiB0YWJpbmRleD0iLTEiPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1oZWFkZXIiPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy10aXRsZSI+PHNwYW4gY2xhc3M9ImZpbGUtcHJldmlldy1pY29uIj5cdXsxRjRDNH08L3NwYW4+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LW5hbWUtYmxvY2siPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1uYW1lLXJvdyI+PHNwYW4gY2xhc3M9ImZpbGUtcHJldmlldy1maWxlbmFtZSI+XHU1MkEwXHU4RjdEXHU0RTJEXHUyMDI2PC9zcGFuPjwvZGl2PjxzcGFuIGNsYXNzPSJmaWxlLXByZXZpZXctcGF0aCIgdGl0bGU9IiI+PC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy10b29sYmFyIj48L2Rpdj48YnV0dG9uIGNsYXNzPSJmaWxlLXByZXZpZXctY2xvc2UiIHRpdGxlPSJcdTUxNzNcdTk1RUQgKEVzYykiIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+JytPZSgieCIse3NpemU6MTh9KSsnPC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0iZmlsZS1wcmV2aWV3LWJvZHkiPjxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTk4ODRcdTg5QzhcdTIwMjY8L2Rpdj48L2Rpdj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCk7dmFyIHI9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWNsb3NlIiksaT1mdW5jdGlvbigpe2lmKE8mJk8uZGlydHkmJnR5cGVvZiBhbj09ImZ1bmN0aW9uIil7YW4oe3R5cGU6Indhcm5pbmciLHRpdGxlOiJcdTY1M0VcdTVGMDNcdTY3MkFcdTRGRERcdTVCNThcdTc2ODRcdTRGRUVcdTY1MzlcdUZGMUYiLG1lc3NhZ2U6Ilx1NUY1M1x1NTI0RFx1NjU4N1x1NEVGNlx1NjcwOVx1NjcyQVx1NEZERFx1NUI1OFx1NzY4NFx1NjUzOVx1NTJBOFx1RkYwQ1x1NTE3M1x1OTVFRFx1NTQwRVx1NEYxQVx1NEUyMlx1NTkzMVx1MzAwMiIsYnV0dG9uczpbe2xhYmVsOiJcdTdFRTdcdTdFRURcdTdGMTZcdThGOTEiLHZhbHVlOiExLGtpbmQ6Imdob3N0In0se2xhYmVsOiJcdTY1M0VcdTVGMDNcdTRGRUVcdTY1MzkiLHZhbHVlOiEwLGtpbmQ6ImRhbmdlciIsYXV0b2ZvY3VzOiEwfV0sY2FuY2VsVmFsdWU6ITF9KS50aGVuKGZ1bmN0aW9uKGQpe2QmJmEoKX0pO3JldHVybn1hKCl9LGE9ZnVuY3Rpb24oKXt0LnJlbW92ZSgpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLHUpLE89bnVsbH07ci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsaSksdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oZCl7ZC50YXJnZXQ9PT10JiZpKCl9KTt2YXIgdT1mdW5jdGlvbihkKXtpZigoZC5rZXk9PT0icyJ8fGQua2V5PT09IlMiKSYmKGQuY3RybEtleXx8ZC5tZXRhS2V5KSYmTyYmTy5lZGl0aW5nKXtkLnByZXZlbnREZWZhdWx0KCksTHUoKTtyZXR1cm59aWYoZC5rZXk9PT0iRXNjYXBlIil7aWYoTyYmTy5lZGl0aW5nKXtkLnByZXZlbnREZWZhdWx0KCksVHUoKTtyZXR1cm59aSgpO3JldHVybn1PJiYoZC50YXJnZXQmJihkLnRhcmdldC50YWdOYW1lPT09IklOUFVUInx8ZC50YXJnZXQudGFnTmFtZT09PSJURVhUQVJFQSIpfHxPLmVkaXRpbmd8fChkLmtleT09PSJBcnJvd0xlZnQiPyhkLnByZXZlbnREZWZhdWx0KCksQXUoLTEpKTpkLmtleT09PSJBcnJvd1JpZ2h0IiYmKGQucHJldmVudERlZmF1bHQoKSxBdSgxKSkpKX07ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsdSksTz17b3ZlcmxheTp0LGNsb3NlOmkscGF0aDplLGRhdGE6bnVsbCxlZGl0aW5nOiExLGRpcnR5OiExfX12YXIgZj10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctcGF0aCIpO2YmJihmLnRleHRDb250ZW50PWUsZi50aXRsZT1lKSxmZXRjaCgiL2FwaS9maWxlLXByZXZpZXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudChlKSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZCl7cmV0dXJuIGQuanNvbigpLnRoZW4oZnVuY3Rpb24odil7cmV0dXJue29rOmQub2ssc3RhdHVzOmQuc3RhdHVzLGRhdGE6dn19KX0pLnRoZW4oZnVuY3Rpb24oZCl7dmFyIHY9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWJvZHkiKTtpZighZC5va3x8ZC5kYXRhJiZkLmRhdGEuZXJyb3Ipe3ZhciBnPWQuZGF0YSYmZC5kYXRhLmVycm9yfHwiXHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1IjtkLnN0YXR1cz09PTQxMyYmZC5kYXRhJiZkLmRhdGEuc2l6ZSYmKGcrPSJcdUZGMDhcdTY1ODdcdTRFRjZcdTU5MjdcdTVDMEZcdUZGMUEiK0huKGQuZGF0YS5zaXplKSsiXHVGRjA5Iiksdi5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1lcnJvciI+PHNwYW4gY2xhc3M9InByZXZpZXctZXJyb3ItaWNvbiI+XHUyNkEwPC9zcGFuPjxzcGFuPicrcChnKSsiPC9zcGFuPjwvZGl2PiIsZC5zdGF0dXM9PT00MTMmJktpKHQse2tpbmQ6ImJpbmFyeSIscGF0aDplLG5hbWU6ZS5zcGxpdCgiLyIpLnBvcCgpfHxlLGV4dDoiIixzaXplOmQuZGF0YSYmZC5kYXRhLnNpemV8fDB9KTtyZXR1cm59Ty5kYXRhPWQuZGF0YSx4dSh0LGQuZGF0YSl9KS5jYXRjaChmdW5jdGlvbigpe3ZhciBkPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7ZC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZpbGUtcHJldmlldy1lcnJvciI+PHNwYW4gY2xhc3M9InByZXZpZXctZXJyb3ItaWNvbiI+XHUyNkEwPC9zcGFuPjxzcGFuPlx1NTJBMFx1OEY3RFx1OTg4NFx1ODlDOFx1NTkzMVx1OEQyNTwvc3Bhbj48L2Rpdj4nfSl9ZnVuY3Rpb24gQXUoZSl7aWYoTyl7dmFyIHQ9KG4uYWxsRmlsZXN8fFtdKS5maWx0ZXIoZnVuY3Rpb24obyl7cmV0dXJuIG8udHlwZT09PSJmaWxlIn0pO2lmKHQubGVuZ3RoKXtmb3IodmFyIHI9Ty5wYXRoLGk9LTEsYT0wO2E8dC5sZW5ndGg7YSsrKWlmKHRbYV0ucGF0aD09PXIpe2k9YTticmVha31pZighKGk8MCkpe3ZhciB1PShpK2UrdC5sZW5ndGgpJXQubGVuZ3RoLHM9dFt1XS5wYXRoO3MmJnMhPT1yJiZVaShzKX19fX1mdW5jdGlvbiB4dShlLHQpe3ZhciByPWUucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1maWxlbmFtZSIpO3ImJihyLnRleHRDb250ZW50PXQubmFtZSk7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWljb24iKTtpJiYoaS50ZXh0Q29udGVudD1GdSh7bmFtZTp0Lm5hbWUsdHlwZToiZmlsZSJ9KSk7dmFyIGE9ZS5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LXRpdGxlIiksdT1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctbGFuZyIpO3UmJnUucmVtb3ZlKCk7dmFyIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO3MuY2xhc3NOYW1lPSJmaWxlLXByZXZpZXctbGFuZyI7dmFyIG89e2ltYWdlOiJcdTU2RkVcdTcyNDciLHBkZjoiUERGIix2aWRlbzoiXHU4OUM2XHU5ODkxIixhdWRpbzoiXHU5N0YzXHU5ODkxIixiaW5hcnk6Ilx1NEU4Q1x1OEZEQlx1NTIzNiJ9O3Qua2luZD09PSJ0ZXh0Ij9zLnRleHRDb250ZW50PXQubGFuZ3x8KHQuZXh0fHwiIikucmVwbGFjZSgiLiIsIiIpfHwidGV4dCI6cy50ZXh0Q29udGVudD1vW3Qua2luZF18fCh0LmV4dHx8IiIpLnJlcGxhY2UoIi4iLCIiKXx8dC5raW5kLGEmJmEuYXBwZW5kQ2hpbGQocyksS2koZSx0KTt2YXIgbD1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctYm9keSIpO2wuaW5uZXJIVE1MPSIiLGwuY2xhc3NMaXN0LnJlbW92ZSgia2luZC10ZXh0Iiwia2luZC1pbWFnZSIsImtpbmQtcGRmIiwia2luZC12aWRlbyIsImtpbmQtYXVkaW8iLCJraW5kLWJpbmFyeSIpLGwuY2xhc3NMaXN0LmFkZCgia2luZC0iKyh0LmtpbmR8fCJ0ZXh0IikpLHQua2luZD09PSJpbWFnZSI/WmwobCx0KTp0LmtpbmQ9PT0icGRmIj9lYyhsLHQpOnQua2luZD09PSJ2aWRlbyI/dGMobCx0KTp0LmtpbmQ9PT0iYXVkaW8iP25jKGwsdCk6dC5raW5kPT09ImJpbmFyeSI/cmMobCx0KTp0Lmxhbmc9PT0ibWFya2Rvd24ifHwvXC4obWR8bWFya2Rvd258bWR4KSQvaS50ZXN0KHQubmFtZXx8IiIpP2wuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJtYXJrZG93bi1wcmV2aWV3Ij4nK3NjKHQuY29udGVudHx8IiIpKyI8L2Rpdj4iOlhsKGwsdCl9ZnVuY3Rpb24gWGwoZSx0KXt2YXIgcj1PdSh0LmNvbnRlbnR8fCIiLHQubGFuZyksaT1yLnNwbGl0KGAKYCksYT1pLm1hcChmdW5jdGlvbih1LHMpe3JldHVybiBzKzF9KTtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iY29kZS1wcmV2aWV3LXdyYXBwZXIiPjxkaXYgY2xhc3M9ImNvZGUtcHJldmlldy1saW5lcyI+JythLmpvaW4oYApgKSsnPC9kaXY+PGRpdiBjbGFzcz0iY29kZS1wcmV2aWV3LWNvbnRlbnQiPjxwcmU+JytpLmpvaW4oYApgKSsiPC9wcmU+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBabChlLHQpe3ZhciByPSIvYXBpL2ZpbGUtcmF3P3BhdGg9IitlbmNvZGVVUklDb21wb25lbnQodC5wYXRoKTtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iaW1hZ2UtcHJldmlldy13cmFwcGVyIj48aW1nIGNsYXNzPSJpbWFnZS1wcmV2aWV3LWltZyIgc3JjPSInK3IrJyIgYWx0PSInK3AodC5uYW1lKSsnIiAvPjwvZGl2Pic7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIuaW1hZ2UtcHJldmlldy1pbWciKTtpZihpKXt2YXIgYT0hMTtpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2E9IWEsaS5jbGFzc0xpc3QudG9nZ2xlKCJ6b29tZWQiLGEpfSl9fWZ1bmN0aW9uIGVjKGUsdCl7dmFyIHI9Ii9hcGkvZmlsZS1yYXc/cGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnBhdGgpO2UuaW5uZXJIVE1MPSc8aWZyYW1lIGNsYXNzPSJwZGYtcHJldmlldy1mcmFtZSIgc3JjPSInK3IrJyIgdGl0bGU9IicrcCh0Lm5hbWUpKyciPjwvaWZyYW1lPid9ZnVuY3Rpb24gdGMoZSx0KXt2YXIgcj0iL2FwaS9maWxlLXJhdz9wYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQucGF0aCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9Im1lZGlhLXByZXZpZXctd3JhcHBlciI+PHZpZGVvIGNsYXNzPSJtZWRpYS1wcmV2aWV3LXZpZGVvIiBjb250cm9scyBwcmVsb2FkPSJtZXRhZGF0YSIgc3JjPSInK3IrJyI+XHU2MEE4XHU3Njg0XHU2RDRGXHU4OUM4XHU1NjY4XHU0RTBEXHU2NTJGXHU2MzAxIHZpZGVvIFx1NjgwN1x1N0I3RVx1MzAwMjwvdmlkZW8+PGRpdiBjbGFzcz0ibWVkaWEtcHJldmlldy1tZXRhIj4nK3AoSG4odC5zaXplKSkrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gbmMoZSx0KXt2YXIgcj0iL2FwaS9maWxlLXJhdz9wYXRoPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQucGF0aCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9Im1lZGlhLXByZXZpZXctd3JhcHBlciBhdWRpbyI+PGRpdiBjbGFzcz0ibWVkaWEtcHJldmlldy1pY29uIj5cdXsxRjNCNX08L2Rpdj48ZGl2IGNsYXNzPSJtZWRpYS1wcmV2aWV3LW5hbWUiPicrcCh0Lm5hbWUpKyc8L2Rpdj48YXVkaW8gY2xhc3M9Im1lZGlhLXByZXZpZXctYXVkaW8iIGNvbnRyb2xzIHByZWxvYWQ9Im1ldGFkYXRhIiBzcmM9IicrcisnIj5cdTYwQThcdTc2ODRcdTZENEZcdTg5QzhcdTU2NjhcdTRFMERcdTY1MkZcdTYzMDEgYXVkaW8gXHU2ODA3XHU3QjdFXHUzMDAyPC9hdWRpbz48ZGl2IGNsYXNzPSJtZWRpYS1wcmV2aWV3LW1ldGEiPicrcChIbih0LnNpemUpKSsiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiByYyhlLHQpe3ZhciByPSIvYXBpL2ZpbGUtcmF3P2Rvd25sb2FkPTEmcGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnBhdGgpO2UuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJiaW5hcnktcHJldmlldy1jYXJkIj48ZGl2IGNsYXNzPSJiaW5hcnktcHJldmlldy1pY29uIj5cdXsxRjRFNn08L2Rpdj48ZGl2IGNsYXNzPSJiaW5hcnktcHJldmlldy1uYW1lIj4nK3AodC5uYW1lKSsnPC9kaXY+PGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctbWV0YSI+PHNwYW4+JytwKCh0LmV4dHx8IiIpLnJlcGxhY2UoL15cLi8sIiIpfHwiXHU2NzJBXHU3N0U1XHU2ODNDXHU1RjBGIikrIjwvc3Bhbj48c3Bhbj5ceEI3PC9zcGFuPjxzcGFuPiIrcChIbih0LnNpemUpKSsnPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LXBhdGgiIHRpdGxlPSInK3AodC5wYXRoKSsnIj4nK3AodC5wYXRoKSsnPC9kaXY+PGRpdiBjbGFzcz0iYmluYXJ5LXByZXZpZXctYWN0aW9ucyI+PGEgY2xhc3M9ImJpbmFyeS1wcmV2aWV3LWJ0biIgaHJlZj0iJytyKyciIGRvd25sb2FkPSInK3AodC5uYW1lKSsnIj5cdTRFMEJcdThGN0RcdTY1ODdcdTRFRjY8L2E+PGJ1dHRvbiBjbGFzcz0iYmluYXJ5LXByZXZpZXctYnRuIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0aW9uPSJ2aWV3LWNhdCI+XHU1NzI4XHU3RUM4XHU3QUVGXHU0RTJEXHU2N0U1XHU3NzBCPC9idXR0b24+PC9kaXY+PC9kaXY+Jzt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLWFjdGlvbj0idmlldy1jYXQiXScpO2kmJmkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7VmkoJ2NhdCAtLSAiJyt0LnBhdGgrJyInKSYmd3QoIlx1NTQ3RFx1NEVFNFx1NURGMlx1N0M5OFx1OEQzNFx1NTIzMFx1OEY5M1x1NTE2NVx1Njg0NiIpfSl9ZnVuY3Rpb24gS2koZSx0KXt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctdG9vbGJhciIpO2lmKHIpe2lmKHIuaW5uZXJIVE1MPSIiLHIuY2xhc3NMaXN0LnJlbW92ZSgiZWRpdGluZyIpLE8mJk8uZWRpdGluZyl7ci5jbGFzc0xpc3QuYWRkKCJlZGl0aW5nIiksb3IoZSx0KTtyZXR1cm59dmFyIGk9W107dC5raW5kPT09InRleHQiJiZpLnB1c2goe2xhYmVsOiJcdTdGMTZcdThGOTFcdTY1ODdcdTRFRjYgKEUpIixpY29uOk9lKCJlZGl0IikscHJpbWFyeTohMCxhY3Rpb246ZnVuY3Rpb24oKXtpYygpfX0pLGkucHVzaCh7bGFiZWw6Ilx1NTkwRFx1NTIzNlx1OERFRlx1NUY4NCIsaWNvbjpPZSgiY2xpcGJvYXJkIiksYWN0aW9uOmZ1bmN0aW9uKCl7WXIodC5wYXRoKS50aGVuKGZ1bmN0aW9uKCl7d3QoIlx1NURGMlx1NTkwRFx1NTIzNlx1OERFRlx1NUY4NCIpfSl9fSksaS5wdXNoKHtsYWJlbDoiXHU3Qzk4XHU4RDM0XHU1MjMwXHU4RjkzXHU1MTY1XHU2ODQ2IixpY29uOk9lKCJzZW5kLXRvLWlucHV0IiksYWN0aW9uOmZ1bmN0aW9uKCl7VmkodC5wYXRoKSYmd3QoIlx1NURGMlx1N0M5OFx1OEQzNFx1NTIzMFx1OEY5M1x1NTE2NVx1Njg0NiIpfX0pLGkucHVzaCh7bGFiZWw6Ilx1NEUwQlx1OEY3RCIsaWNvbjpPZSgiZG93bmxvYWQiKSxhY3Rpb246ZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7YS5ocmVmPSIvYXBpL2ZpbGUtcmF3P2Rvd25sb2FkPTEmcGF0aD0iK2VuY29kZVVSSUNvbXBvbmVudCh0LnBhdGgpLGEuZG93bmxvYWQ9dC5uYW1lfHwiIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpLGEuY2xpY2soKSxhLnJlbW92ZSgpfX0pLHQua2luZD09PSJ0ZXh0IiYmKGkucHVzaCh7bGFiZWw6Ilx1NTkwRFx1NTIzNlx1NTE2OFx1OTBFOFx1NTE4NVx1NUJCOSIsaWNvbjpPZSgiY29weSIpLGFjdGlvbjpmdW5jdGlvbigpe1lyKHQuY29udGVudHx8IiIpLnRoZW4oZnVuY3Rpb24oKXt3dCgiXHU1REYyXHU1OTBEXHU1MjM2XHU1MTg1XHU1QkI5Iil9KX19KSxpLnB1c2goe2xhYmVsOiJcdTUyMDdcdTYzNjJcdTgxRUFcdTUyQThcdTYzNjJcdTg4NEMiLGljb246T2UoIndyYXAtdGV4dCIpLHRvZ2dsZUNsYXNzOiJ0b29sYmFyLWFjdGl2ZSIsZ2V0SW5pdGlhbDpmdW5jdGlvbigpe3ZhciBhPWUucXVlcnlTZWxlY3RvcigiLmNvZGUtcHJldmlldy1jb250ZW50IHByZSIpO3JldHVybiBhJiZhLmNsYXNzTGlzdC5jb250YWlucygid3JhcCIpfSxhY3Rpb246ZnVuY3Rpb24oYSl7dmFyIHU9ZS5xdWVyeVNlbGVjdG9yKCIuY29kZS1wcmV2aWV3LWNvbnRlbnQgcHJlIik7dSYmKHUuY2xhc3NMaXN0LnRvZ2dsZSgid3JhcCIpLGEuY2xhc3NMaXN0LnRvZ2dsZSgidG9vbGJhci1hY3RpdmUiLHUuY2xhc3NMaXN0LmNvbnRhaW5zKCJ3cmFwIikpKX19KSxpLnB1c2goe2tpbmQ6Imdyb3VwIixjbGFzc05hbWU6InRvb2xiYXItZ3JvdXAtZm9udHNpemUiLGNoaWxkcmVuOlt7bGFiZWw6Ilx1N0YyOVx1NUMwRlx1NUI1N1x1NTNGNyIsaWNvbjpPZSgibWludXMiKSxhY3Rpb246ZnVuY3Rpb24oKXtNdShlLC0xKX19LHtraW5kOiJsYWJlbCIsaWNvbjpPZSgidHlwZSIpLGxhYmVsOiJcdTVCNTdcdTUzRjcifSx7bGFiZWw6Ilx1NjUzRVx1NTkyN1x1NUI1N1x1NTNGNyIsaWNvbjpPZSgicGx1cyIpLGFjdGlvbjpmdW5jdGlvbigpe011KGUsMSl9fV19KSksU3UocixpLGUpfX1mdW5jdGlvbiBTdShlLHQscil7dC5mb3JFYWNoKGZ1bmN0aW9uKGkpe2lmKGkua2luZD09PSJncm91cCIpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2EuY2xhc3NOYW1lPSJmaWxlLXByZXZpZXctdG9vbGJhci1ncm91cCIrKGkuY2xhc3NOYW1lPyIgIitpLmNsYXNzTmFtZToiIiksaS5jaGlsZHJlbi5mb3JFYWNoKGZ1bmN0aW9uKHUpe2lmKHUua2luZD09PSJsYWJlbCIpe3ZhciBzPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNwYW4iKTtzLmNsYXNzTmFtZT0iZmlsZS1wcmV2aWV3LXRvb2xiYXItZ3JvdXBsYWJlbCIscy50aXRsZT11LmxhYmVsfHwiIixzLmlubmVySFRNTD11Lmljb258fCIiLGEuYXBwZW5kQ2hpbGQocyk7cmV0dXJufWEuYXBwZW5kQ2hpbGQoSXUodSkpfSksZS5hcHBlbmRDaGlsZChhKTtyZXR1cm59ZS5hcHBlbmRDaGlsZChJdShpKSl9KX1mdW5jdGlvbiBJdShlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJidXR0b24iKTtyZXR1cm4gdC50eXBlPSJidXR0b24iLHQuY2xhc3NOYW1lPSJmaWxlLXByZXZpZXctdG9vbGJhci1idG4iLGUucHJpbWFyeSYmdC5jbGFzc0xpc3QuYWRkKCJwcmltYXJ5IiksZS5kYW5nZXImJnQuY2xhc3NMaXN0LmFkZCgiZGFuZ2VyIiksdC50aXRsZT1lLmxhYmVsLHQuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixlLmxhYmVsKSx0LmlubmVySFRNTD0nPHNwYW4gY2xhc3M9InRvb2xiYXItaWNvbiI+JysoZS5pY29ufHwiIikrIjwvc3Bhbj4iKyhlLnRleHQ/JzxzcGFuIGNsYXNzPSJ0b29sYmFyLXRleHQiPicrcChlLnRleHQpKyI8L3NwYW4+IjoiIiksZS5nZXRJbml0aWFsJiZlLmdldEluaXRpYWwoKSYmdC5jbGFzc0xpc3QuYWRkKCJ0b29sYmFyLWFjdGl2ZSIpLHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHIpe3Iuc3RvcFByb3BhZ2F0aW9uKCksdHlwZW9mIGUuYWN0aW9uPT0iZnVuY3Rpb24iJiZlLmFjdGlvbih0KX0pLHR9ZnVuY3Rpb24gb3IoZSx0KXt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctdG9vbGJhciIpO2lmKHIpe3IuaW5uZXJIVE1MPSIiO3ZhciBpPU8mJk8uc2F2aW5nLGE9W3tsYWJlbDoiXHU0RkREXHU1QjU4IChDdHJsK1MpIixpY29uOk9lKCJzYXZlIiksdGV4dDoiXHU0RkREXHU1QjU4IixwcmltYXJ5OiEwLGFjdGlvbjpmdW5jdGlvbigpe0x1KCl9fSx7bGFiZWw6Ilx1NjRBNFx1OTUwMFx1NjUzOVx1NTJBOCIsaWNvbjpPZSgicm90YXRlLWNjdyIpLGFjdGlvbjpmdW5jdGlvbigpe2FjKCl9fSx7bGFiZWw6Ilx1OTAwMFx1NTFGQVx1N0YxNlx1OEY5MSAoRXNjKSIsaWNvbjpPZSgieCIpLGFjdGlvbjpmdW5jdGlvbigpe1R1KCl9fV07U3UocixhLGUpLGkmJnIucXVlcnlTZWxlY3RvckFsbCgiLmZpbGUtcHJldmlldy10b29sYmFyLWJ0biIpLmZvckVhY2goZnVuY3Rpb24odSl7dS5kaXNhYmxlZD0hMH0pfX1mdW5jdGlvbiBpYygpe2lmKCEoIU98fCFPLmRhdGEpKXt2YXIgZT1PLmRhdGE7aWYoZS5raW5kPT09InRleHQiKXtPLmVkaXRpbmc9ITAsTy5kaXJ0eT0hMSxPLm9yaWdpbmFsQ29udGVudD1lLmNvbnRlbnR8fCIiO3ZhciB0PU8ub3ZlcmxheSxyPXQucXVlcnlTZWxlY3RvcigiLmZpbGUtcHJldmlldy1ib2R5Iik7aWYocil7ci5jbGFzc0xpc3QuYWRkKCJlZGl0aW5nIiksci5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImNvZGUtZWRpdG9yLXdyYXBwZXIiPjx0ZXh0YXJlYSBjbGFzcz0iY29kZS1lZGl0b3ItdGV4dGFyZWEiIHNwZWxsY2hlY2s9ImZhbHNlIiBhdXRvY29tcGxldGU9Im9mZiIgYXV0b2NvcnJlY3Q9Im9mZiIgYXV0b2NhcGl0YWxpemU9Im9mZiIgd3JhcD0ib2ZmIj48L3RleHRhcmVhPjwvZGl2Pic7dmFyIGk9ci5xdWVyeVNlbGVjdG9yKCIuY29kZS1lZGl0b3ItdGV4dGFyZWEiKTtpJiYoaS52YWx1ZT1lLmNvbnRlbnR8fCIiLGkuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKCl7dmFyIGE9aS52YWx1ZSE9PShPLm9yaWdpbmFsQ29udGVudHx8IiIpO2EhPT1PLmRpcnR5JiYoTy5kaXJ0eT1hLGxyKCkpfSksaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbihhKXtpZihhLmtleT09PSJUYWIiKXthLnByZXZlbnREZWZhdWx0KCk7dmFyIHU9aS5zZWxlY3Rpb25TdGFydCxzPWkuc2VsZWN0aW9uRW5kLG89IiAgIjtpLnZhbHVlPWkudmFsdWUuc2xpY2UoMCx1KStvK2kudmFsdWUuc2xpY2UocyksaS5zZWxlY3Rpb25TdGFydD1pLnNlbGVjdGlvbkVuZD11K28ubGVuZ3RoLGkuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0IikpfX0pLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtpLmZvY3VzKCksaS5zZXRTZWxlY3Rpb25SYW5nZSgwLDApLGkuc2Nyb2xsVG9wPTB9LDMwKSksS2kodCxlKSxscigpfX19fWZ1bmN0aW9uIFR1KCl7aWYoISghT3x8IU8uZWRpdGluZykpe3ZhciBlPWZ1bmN0aW9uKCl7Ty5lZGl0aW5nPSExLE8uZGlydHk9ITE7dmFyIHQ9Ty5vdmVybGF5LHI9dC5xdWVyeVNlbGVjdG9yKCIuZmlsZS1wcmV2aWV3LWJvZHkiKTtyJiZyLmNsYXNzTGlzdC5yZW1vdmUoImVkaXRpbmciKSx4dSh0LE8uZGF0YSksbHIoKX07aWYoTy5kaXJ0eSYmdHlwZW9mIGFuPT0iZnVuY3Rpb24iKXthbih7dHlwZToid2FybmluZyIsdGl0bGU6Ilx1NjUzRVx1NUYwM1x1NjcyQVx1NEZERFx1NUI1OFx1NzY4NFx1NEZFRVx1NjUzOVx1RkYxRiIsbWVzc2FnZToiXHU1RjUzXHU1MjREXHU2NTg3XHU0RUY2XHU2NzA5XHU2NzJBXHU0RkREXHU1QjU4XHU3Njg0XHU2NTM5XHU1MkE4XHVGRjBDXHU5MDAwXHU1MUZBXHU3RjE2XHU4RjkxXHU1NDBFXHU0RjFBXHU0RTIyXHU1OTMxXHUzMDAyIixidXR0b25zOlt7bGFiZWw6Ilx1N0VFN1x1N0VFRFx1N0YxNlx1OEY5MSIsdmFsdWU6ITEsa2luZDoiZ2hvc3QifSx7bGFiZWw6Ilx1NjUzRVx1NUYwM1x1NEZFRVx1NjUzOSIsdmFsdWU6ITAsa2luZDoiZGFuZ2VyIixhdXRvZm9jdXM6ITB9XSxjYW5jZWxWYWx1ZTohMX0pLnRoZW4oZnVuY3Rpb24odCl7dCYmZSgpfSk7cmV0dXJufWUoKX19ZnVuY3Rpb24gYWMoKXtpZighKCFPfHwhTy5lZGl0aW5nKSl7dmFyIGU9Ty5vdmVybGF5LHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY29kZS1lZGl0b3ItdGV4dGFyZWEiKTt0JiYodC52YWx1ZT1PLm9yaWdpbmFsQ29udGVudHx8IiIsTy5kaXJ0eT0hMSxscigpLHQuZm9jdXMoKSl9fWZ1bmN0aW9uIEx1KCl7aWYoISghT3x8IU8uZWRpdGluZykmJiFPLnNhdmluZyl7dmFyIGU9Ty5vdmVybGF5LHQ9ZS5xdWVyeVNlbGVjdG9yKCIuY29kZS1lZGl0b3ItdGV4dGFyZWEiKTtpZih0KXt2YXIgcj10LnZhbHVlO2lmKHI9PT0oTy5vcmlnaW5hbENvbnRlbnR8fCIiKSl7d3QoIlx1NkNBMVx1NjcwOVx1NjUzOVx1NTJBOCIpO3JldHVybn1PLnNhdmluZz0hMCxvcihlLE8uZGF0YSksZmV0Y2goIi9hcGkvZmlsZS13cml0ZSIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3BhdGg6Ty5wYXRoLGNvbnRlbnQ6cn0pfSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCkudGhlbihmdW5jdGlvbihhKXtyZXR1cm57b2s6aS5vayxzdGF0dXM6aS5zdGF0dXMsZGF0YTphfX0pfSkudGhlbihmdW5jdGlvbihpKXtpZihPLnNhdmluZz0hMSwhaS5va3x8aS5kYXRhJiZpLmRhdGEuZXJyb3Ipe3ZhciBhPWkuZGF0YSYmaS5kYXRhLmVycm9yfHwiXHU0RkREXHU1QjU4XHU1OTMxXHU4RDI1ICgiK2kuc3RhdHVzKyIpIjt3dChhKSxvcihlLE8uZGF0YSk7cmV0dXJufWlmKE8uZGF0YS5jb250ZW50PXIsTy5kYXRhLnNpemU9aS5kYXRhJiZpLmRhdGEuc2l6ZXx8ci5sZW5ndGgsTy5vcmlnaW5hbENvbnRlbnQ9cixPLmRpcnR5PSExLHd0KCJcdTVERjJcdTRGRERcdTVCNTgiKSxscigpLG9yKGUsTy5kYXRhKSx0eXBlb2YgT3Q9PSJmdW5jdGlvbiIpdHJ5e090KCl9Y2F0Y2h7fX0pLmNhdGNoKGZ1bmN0aW9uKGkpe08uc2F2aW5nPSExLHd0KCJcdTRGRERcdTVCNThcdTU5MzFcdThEMjVcdUZGMUEiKyhpJiZpLm1lc3NhZ2U/aS5tZXNzYWdlOiJcdTdGNTFcdTdFRENcdTk1MTlcdThCRUYiKSksb3IoZSxPLmRhdGEpfSl9fX1mdW5jdGlvbiBscigpe2lmKE8pe3ZhciBlPU8ub3ZlcmxheTtpZihlKXt2YXIgdD1lLnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctbmFtZS1yb3ciKTtpZih0KXt2YXIgcj10LnF1ZXJ5U2VsZWN0b3IoIi5maWxlLXByZXZpZXctZGlydHkiKTtpZihPLmRpcnR5KXtpZighcil7dmFyIGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgic3BhbiIpO2kuY2xhc3NOYW1lPSJmaWxlLXByZXZpZXctZGlydHkiLGkudGl0bGU9Ilx1NjcwOVx1NjcyQVx1NEZERFx1NUI1OFx1NzY4NFx1NEZFRVx1NjUzOSIsaS50ZXh0Q29udGVudD0iXHUyNUNGIFx1NjcyQVx1NEZERFx1NUI1OCIsdC5hcHBlbmRDaGlsZChpKX19ZWxzZSByJiZyLnJlbW92ZSgpfX19fWZ1bmN0aW9uIE11KGUsdCl7dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCIuY29kZS1wcmV2aWV3LWNvbnRlbnQgcHJlIiksaT1lLnF1ZXJ5U2VsZWN0b3IoIi5jb2RlLXByZXZpZXctbGluZXMiKTtpZihyKXt2YXIgYT1wYXJzZUZsb2F0KGdldENvbXB1dGVkU3R5bGUocikuZm9udFNpemUpfHwxMyx1PU1hdGgubWF4KDEwLE1hdGgubWluKDIyLGErdCkpO3Iuc3R5bGUuZm9udFNpemU9dSsicHgiLGkmJihpLnN0eWxlLmZvbnRTaXplPXUrInB4Iil9fWZ1bmN0aW9uIE91KGUsdCl7dmFyIHI9ZS5yZXBsYWNlKC8mL2csIiZhbXA7IikucmVwbGFjZSgvPC9nLCImbHQ7IikucmVwbGFjZSgvPi9nLCImZ3Q7IiksaT11YygpO2lmKCFpKXJldHVybiByO3ZhciBhPVtdO2Zvcih2YXIgdSBpbiBpKXt2YXIgcz1pW3VdO3MmJnMucGF0dGVybiYmYS5wdXNoKHtwYXR0ZXJuOnMucGF0dGVybixjbHM6cy5jbHMscHJpb3JpdHk6cy5wcmlvcml0eXx8NX0pfWEuc29ydChmdW5jdGlvbihjLGYpe3JldHVybiBmLnByaW9yaXR5LWMucHJpb3JpdHl9KTt2YXIgbz1hLm1hcChmdW5jdGlvbihjKXtyZXR1cm4iKCIrYy5wYXR0ZXJuLnNvdXJjZSsiKSJ9KSxsPW5ldyBSZWdFeHAoby5qb2luKCJ8IiksImdtIik7cmV0dXJuIHIucmVwbGFjZShsLGZ1bmN0aW9uKGMpe2Zvcih2YXIgZj0wO2Y8YS5sZW5ndGg7ZisrKXt2YXIgZD1hW2ZdLHY9bmV3IFJlZ0V4cCgiXiIrZC5wYXR0ZXJuLnNvdXJjZSsiJCIsImdtIik7aWYodi50ZXN0KGMpKXJldHVybic8c3BhbiBjbGFzcz0iJytkLmNscysnIj4nK2MrIjwvc3Bhbj4ifXJldHVybiBjfSl9ZnVuY3Rpb24gdWMoKXtyZXR1cm57Y29tbWVudDp7cGF0dGVybjovXC9cLy4qfCNbXlxuXSoveSxjbHM6InN5bnRheC1jb21tZW50Iixwcmlvcml0eToxfSxzdHJpbmc6e3BhdHRlcm46LyIoPzpbXiJcXF18XFwuKSoifCcoPzpbXidcXF18XFwuKSonfGAoPzpbXmBcXF18XFwuKSpgL3ksY2xzOiJzeW50YXgtc3RyaW5nIixwcmlvcml0eToyfSxrZXl3b3JkOntwYXR0ZXJuOi9cYig/OmFzeW5jfGF3YWl0fGJyZWFrfGNhc2V8Y2F0Y2h8Y2xhc3N8Y29uc3R8Y29udGludWV8ZGVidWdnZXJ8ZGVjbGFyZXxkZWZhdWx0fGRlbGV0ZXxkb3xlbHNlfGVudW18ZXhwb3J0fGV4dGVuZHN8ZmluYWxseXxmb3J8ZnJvbXxmdW5jdGlvbnxnZXR8aWZ8aW1wbGVtZW50c3xpbXBvcnR8aW58aW5zdGFuY2VvZnxpbnRlcmZhY2V8bGV0fG1vZHVsZXxuYW1lc3BhY2V8bmV3fG51bGx8b2Z8b3ZlcnJpZGV8cHJpdmF0ZXxwcm90ZWN0ZWR8cHVibGljfHJlYWRvbmx5fHJldHVybnxzZXR8c3RhdGljfHN1cGVyfHN3aXRjaHx0aGlzfHRocm93fHRyeXx0eXBlfHR5cGVvZnx1bmRlZmluZWR8dmFyfHZvaWR8d2hpbGV8eWllbGR8YWJzdHJhY3R8YXN8YmFzZXxib29sfGJ5dGV8Y2hhcnxkZWNpbWFsfGRvdWJsZXxldmVudHxleHBsaWNpdHxleHRlcm58ZmFsc2V8Zml4ZWR8ZmxvYXR8Zm9yZWFjaHxnb3RvfGltcGxpY2l0fGlufGludHxpbnRlcm5hbHxpc3xsb2NrfGxvbmd8b2JqZWN0fG9wZXJhdG9yfG91dHxwYXJhbXN8cGFydGlhbHxyZWFkb25seXxyZWZ8c2J5dGV8c2VhbGVkfHNob3J0fHNpemVvZnxzdGFja2FsbG9jfHN0cmluZ3xzdHJ1Y3R8c3dpdGNofHRocm93fHRydWV8dHJ5fHVpbnR8dWxvbmd8dW5jaGVja2VkfHVuc2FmZXx1c2hvcnR8dXNpbmd8dmlydHVhbHx2b2xhdGlsZXx3aGVyZXx3aGlsZXx3aXRofHlpZWxkfGRlZnxlbGlmfGVsc2V8ZXhjZXB0fGV4ZWN8ZmluYWxseXxmb3J8ZnJvbXxnbG9iYWx8aWZ8aW1wb3J0fGxhbWJkYXxub25sb2NhbHxub3R8b3J8cGFzc3xwcmludHxyYWlzZXxyZXR1cm58dHJ5fHdoaWxlfHdpdGh8eWllbGR8VHJ1ZXxGYWxzZXxOb25lfGFuZHxpbnxpc3xsYW1iZGF8bm90fG9yfGZufHB1Ynx1c2V8bW9kfGltcGx8dHJhaXR8c3RydWN0fGVudW18bWF0Y2h8bG9vcHx3aGlsZXxmb3J8aWZ8ZWxzZXxyZXR1cm58c2VsZnxzdXBlcnxjcmF0ZXx3aGVyZXxhc3luY3xhd2FpdHxtb3ZlfHJlZnxtdXR8c3RhdGljfGNvbnN0fHVuc2FmZXxleHRlcm58dXNlfGFzfGltcGx8c3RydWN0fGVudW18dHlwZXxmbnxsZXR8bG9vcHxpZnxlbHNlfG1hdGNofHJldHVybnxzZWxmfFNlbGZ8bW9kfHB1YnxjcmF0ZXxtYWNyb3xkZXJpdmV8d2hlcmV8YXN5bmN8YXdhaXR8ZHlufHNlbGZ8cGFja2FnZXxmdW5jfGdvfHJldHVybnxkZWZlcnxnb3xpZnxlbHNlfHN3aXRjaHxjYXNlfGRlZmF1bHR8Zm9yfHJhbmdlfHNlbGVjdHxicmVha3xjb250aW51ZXxmYWxsdGhyb3VnaHxjb25zdHxzdHJ1Y3R8ZW51bXx0eXBlfGludGVyZmFjZXxtYXB8Y2hhbnx2YXJ8bmlsfHRydWV8ZmFsc2V8aW90YXxsZW58Y2FwfGFwcGVuZHxtYWtlfG5ld3xwYW5pY3xyZWNvdmVyfHNlbGVjdHxlbHNlfGlmfGVsaWZ8ZW5kfGZvcnxmdW5jdGlvbnxpZnxpbnxsb2NhbHxuaWx8bm90fG9yfHJlcGVhdHxyZXR1cm58dGhlbnx0cnVlfHVudGlsfHdoaWxlfGVuZHxhbmR8YmVnaW58ZG98ZW5kfGZhbHNlfGZvcnxmdW5jdGlvbnxpZnxpbnxsb2NhbHxuaWx8bm90fG9yfHJlcGVhdHxyZXR1cm58dGhlbnx0cnVlfHVudGlsfHdoaWxlKVxiL3ksY2xzOiJzeW50YXgta2V5d29yZCIscHJpb3JpdHk6M30sbnVtYmVyOntwYXR0ZXJuOi9cYig/OjB4W1xkYS1mQS1GXSt8MGJbMDFdK3wwb1swLTddK3xcZCtcLj9cZCooPzplWystXT9cZCspPylcYi95LGNsczoic3ludGF4LW51bWJlciIscHJpb3JpdHk6Mn0sZnVuY3Rpb246e3BhdHRlcm46L1xiW0EtWl1bYS16QS1aMC05XSpbYS16XVx3Kig/PVxzKlwoKS95LGNsczoic3ludGF4LWZ1bmN0aW9uIixwcmlvcml0eTo0fSx0eXBlOntwYXR0ZXJuOi9cYig/OnN0cmluZ3xudW1iZXJ8Ym9vbGVhbnx2b2lkfGFueXx1bmtub3dufG5ldmVyfG9iamVjdHxzeW1ib2x8YmlnaW50fEFycmF5fE9iamVjdHxTdHJpbmd8TnVtYmVyfEJvb2xlYW58TWFwfFNldHxXZWFrTWFwfFdlYWtTZXR8UHJvbWlzZXxFcnJvcnxUeXBlfEludGVyZmFjZXxFbnVtfENsYXNzfFN0cnVjdHxJbXBsfFRyYWl0fGZufGZuY3xmdW5jfGZ1bmN0aW9ufGRlZnxwcm9jfGZ1bnxwdWJ8c3RhdGljfGNvbnN0fGxldHx2YXJ8aW50fGZsb2F0fGRvdWJsZXxib29sfGNoYXJ8Ynl0ZXxzdHJpbmd8dTh8dTE2fHUzMnx1NjR8aTh8aTE2fGkzMnxpNjR8ZjMyfGY2NHx1c2l6ZXxpc2l6ZXxzdHJ8VmVjfEhhc2hNYXB8T3B0aW9ufFJlc3VsdHxCb3h8UmN8QXJjfENlbGx8UmVmQ2VsbClcYi95LGNsczoic3ludGF4LXR5cGUiLHByaW9yaXR5OjR9LG9wZXJhdG9yOntwYXR0ZXJuOi9bK1wtKi8lPTw+ISZ8Xn4/Ol0rfFwuXC5cLj8veSxjbHM6InN5bnRheC1vcGVyYXRvciIscHJpb3JpdHk6NX0scHVuY3R1YXRpb246e3BhdHRlcm46L1t7fVtcXSgpOyxcLl0veSxjbHM6InN5bnRheC1wdW5jdHVhdGlvbiIscHJpb3JpdHk6Nn19fWZ1bmN0aW9uIHNjKGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PXAoZSk7dD10LnJlcGxhY2UoL2BgYChcdyopXG4oW1xzXFNdKj8pYGBgL2csZnVuY3Rpb24oaSxhLHUpe3ZhciBzPU91KHUudHJpbSgpLGEpLG89cy5yZXBsYWNlKC9fL2csIiYjOTU7IikucmVwbGFjZSgvXCovZywiJiM0MjsiKTtyZXR1cm4nPHByZT48Y29kZSBjbGFzcz0ibGFuZ3VhZ2UtJythKyciPicrbysiPC9jb2RlPjwvcHJlPiJ9KSx0PXQucmVwbGFjZSgvYChbXmBdKylgL2csZnVuY3Rpb24oaSxhKXtyZXR1cm4iPGNvZGU+IithLnJlcGxhY2UoL18vZywiJiM5NTsiKS5yZXBsYWNlKC9cKi9nLCImIzQyOyIpKyI8L2NvZGU+In0pLHQ9dC5yZXBsYWNlKC9eIyMjIyMjXHMrKC4qKSQvZ20sIjxoNj4kMTwvaDY+IiksdD10LnJlcGxhY2UoL14jIyMjI1xzKyguKikkL2dtLCI8aDU+JDE8L2g1PiIpLHQ9dC5yZXBsYWNlKC9eIyMjI1xzKyguKikkL2dtLCI8aDQ+JDE8L2g0PiIpLHQ9dC5yZXBsYWNlKC9eIyMjXHMrKC4qKSQvZ20sIjxoMz4kMTwvaDM+IiksdD10LnJlcGxhY2UoL14jI1xzKyguKikkL2dtLCI8aDI+JDE8L2gyPiIpLHQ9dC5yZXBsYWNlKC9eI1xzKyguKikkL2dtLCI8aDE+JDE8L2gxPiIpLHQ9dC5yZXBsYWNlKC9cKlwqXCooLis/KVwqXCpcKi9nLCI8c3Ryb25nPjxlbT4kMTwvZW0+PC9zdHJvbmc+IiksdD10LnJlcGxhY2UoL1wqXCooLis/KVwqXCovZywiPHN0cm9uZz4kMTwvc3Ryb25nPiIpLHQ9dC5yZXBsYWNlKC9cKiguKz8pXCovZywiPGVtPiQxPC9lbT4iKSx0PXQucmVwbGFjZSgvKF58W15cd10pX19fKFxTKD86W15cbl0qP1xTKT8pX19fKD8hXHcpL2csIiQxPHN0cm9uZz48ZW0+JDI8L2VtPjwvc3Ryb25nPiIpLHQ9dC5yZXBsYWNlKC8oXnxbXlx3XSlfXyhcUyg/OlteXG5dKj9cUyk/KV9fKD8hXHcpL2csIiQxPHN0cm9uZz4kMjwvc3Ryb25nPiIpLHQ9dC5yZXBsYWNlKC8oXnxbXlx3XSlfKFxTKD86W15cbl9dKj9cUyk/KV8oPyFcdykvZywiJDE8ZW0+JDI8L2VtPiIpLHQ9dC5yZXBsYWNlKC9+figuKz8pfn4vZywiPGRlbD4kMTwvZGVsPiIpLHQ9dC5yZXBsYWNlKC9cWyhbXlxdXSspXF1cKChbXildKylcKS9nLCc8YSBocmVmPSIkMiIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiPiQxPC9hPicpLHQ9dC5yZXBsYWNlKC8hXFsoW15cXV0qKVxdXCgoW14pXSspXCkvZywnPGltZyBzcmM9IiQyIiBhbHQ9IiQxIj4nKSx0PXQucmVwbGFjZSgvXiZndDtccysoLiopJC9nbSwiPGJsb2NrcXVvdGU+JDE8L2Jsb2NrcXVvdGU+IiksdD10LnJlcGxhY2UoL14tLS0rJC9nbSwiPGhyPiIpLHQ9dC5yZXBsYWNlKC9eXCpcKlwqKyQvZ20sIjxocj4iKSx0PXQucmVwbGFjZSgvXltcLVwqXVxzKyguKikkL2dtLCI8bGk+JDE8L2xpPiIpLHQ9dC5yZXBsYWNlKC8oPGxpPi4qPFwvbGk+XG4/KSsvZywiPHVsPiQmPC91bD4iKSx0PXQucmVwbGFjZSgvXlxkK1wuXHMrKC4qKSQvZ20sIjxsaT4kMTwvbGk+IiksdD1Jbyh0KTt2YXIgcj10LnNwbGl0KC9cbnsyLH0vKTtyZXR1cm4gdD1yLm1hcChmdW5jdGlvbihpKXtyZXR1cm4gaT1pLnRyaW0oKSxpPy9ePChoWzEtNl18dWx8b2x8bGl8YmxvY2txdW90ZXxwcmV8dGFibGV8aHJ8ZGl2KS8udGVzdChpKT9pOiI8cD4iK2kucmVwbGFjZSgvXG4vZywiPGJyPiIpKyI8L3A+IjoiIn0pLmpvaW4oYApgKSx0fWZ1bmN0aW9uIFB1KCl7aWYoIW4uc2VsZWN0ZWRJZHx8IW4uZ2l0U3RhdHVzfHwhbi5naXRTdGF0dXMuaXNHaXR8fG4uZ2l0U3RhdHVzU2Vzc2lvbklkIT09bi5zZWxlY3RlZElkKXJldHVybiIiO3ZhciBlPW4uZ2l0U3RhdHVzLmJyYW5jaHx8Ij8iLHQ9bi5naXRTdGF0dXMubW9kaWZpZWRDb3VudHx8MCxyPWUrKHQ/IiAgXHhCNyAgIit0KyIgXHU0RTJBXHU2NTg3XHU0RUY2XHU1Rjg1XHU2M0QwXHU0RUE0IjoiICBceEI3ICBcdTVERTVcdTRGNUNcdTUzM0FcdTVFNzJcdTUxQzAiKTtyZXR1cm4nPGJ1dHRvbiBpZD0idG9wYmFyLWdpdC1iYWRnZSIgY2xhc3M9InRvcGJhci1naXQtYmFkZ2UiIHR5cGU9ImJ1dHRvbiIgdGl0bGU9IicrcChyKSsnIiBhcmlhLWxhYmVsPSJcdTVGRUJcdTYzNzdcdTYzRDBcdTRFQTQiPjxzdmcgY2xhc3M9InRvcGJhci1naXQtaWNvbiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxjaXJjbGUgY3g9IjYiIGN5PSI2IiByPSIyIi8+PGNpcmNsZSBjeD0iNiIgY3k9IjE4IiByPSIyIi8+PGNpcmNsZSBjeD0iMTgiIGN5PSI5IiByPSIyIi8+PHBhdGggZD0iTTYgOHY4Ii8+PHBhdGggZD0iTTE4IDExdjFhMyAzIDAgMCAxLTMgM0g5Ii8+PC9zdmc+PHNwYW4gY2xhc3M9InRvcGJhci1naXQtYnJhbmNoIj4nK3AoZSkrIjwvc3Bhbj4iKyh0PjA/JzxzcGFuIGNsYXNzPSJ0b3BiYXItZ2l0LWNvdW50Ij5ceEI3Jyt0KyI8L3NwYW4+IjonPHNwYW4gY2xhc3M9InRvcGJhci1naXQtY2xlYW4iIGFyaWEtaGlkZGVuPSJ0cnVlIj5cdTI3MTM8L3NwYW4+JykrIjwvYnV0dG9uPiJ9ZnVuY3Rpb24gWWkoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWdpdC1zbG90Iik7aWYoZSl7ZS5pbm5lckhUTUw9UHUoKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWdpdC1iYWRnZSIpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHIpe3IucHJldmVudERlZmF1bHQoKSxxdSgpfSl9fWZ1bmN0aW9uIG9jKGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PW4udG9wYmFyTW9yZU9wZW4scj0hIWUuY2xhdWRlU2Vzc2lvbklkLGk9ISFlLmN3ZCxhPWUud29ya3RyZWVFbmFibGVkJiZlLndvcmt0cmVlJiZlLndvcmt0cmVlLmJyYW5jaCYmZS53b3JrdHJlZS5wYXRoLHU9ZS53b3JrdHJlZU1lcmdlU3RhdHVzPT09Im1lcmdlZCImJmUud29ya3RyZWVNZXJnZUluZm8mJmUud29ya3RyZWVNZXJnZUluZm8uY2xlYW51cERvbmU9PT0hMSxzPWUuc3RhdHVzPT09InJ1bm5pbmcifHxlLndvcmt0cmVlTWVyZ2VTdGF0dXM9PT0ibWVyZ2luZyIsbz1hJiZlLndvcmt0cmVlTWVyZ2VTdGF0dXMhPT0ibWVyZ2VkIixsPXUsYz1yfHxpfHwhMCxmPW98fGx8fCEwLGQ9Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHJlY3QgeD0iOSIgeT0iOSIgd2lkdGg9IjEzIiBoZWlnaHQ9IjEzIiByeD0iMiIgcnk9IjIiLz48cGF0aCBkPSJNNSAxNUg0YTIgMiAwIDAgMS0yLTJWNGEyIDIgMCAwIDEgMi0yaDlhMiAyIDAgMCAxIDIgMnYxIi8+PC9zdmc+Jyx2PSc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xNy41IDE5YTQuNSA0LjUgMCAxIDAtMS41LTguNzRBNiA2IDAgMSAwIDYgMTRoMTEuNXoiLz48L3N2Zz4nLGc9Jzxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTIyIDE5YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg1bDIgM2g5YTIgMiAwIDAgMSAyIDJ6Ii8+PC9zdmc+JyxoPSc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxsaW5lIHgxPSI0IiB5MT0iOSIgeDI9IjIwIiB5Mj0iOSIvPjxsaW5lIHgxPSI0IiB5MT0iMTUiIHgyPSIyMCIgeTI9IjE1Ii8+PGxpbmUgeDE9IjEwIiB5MT0iMyIgeDI9IjgiIHkyPSIyMSIvPjxsaW5lIHgxPSIxNiIgeTE9IjMiIHgyPSIxNCIgeTI9IjIxIi8+PC9zdmc+JyxtPSc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik03IDdoMTAiLz48cGF0aCBkPSJNNyAxMmgxMCIvPjxwYXRoIGQ9Ik03IDE3aDEwIi8+PHBhdGggZD0iTTUgN2wtMiAyIDIgMiIvPjxwYXRoIGQ9Ik0xOSAxNWwyIDItMiAyIi8+PC9zdmc+JyxiPSc8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0zIDZoMTgiLz48cGF0aCBkPSJNOCA2VjRhMiAyIDAgMDEyLTJoNGEyIDIgMCAwMTIgMnYyIi8+PHBhdGggZD0iTTE5IDZsLTEgMTRhMiAyIDAgMDEtMiAySDhhMiAyIDAgMDEtMi0yTDUgNiIvPjwvc3ZnPicsRj0iIjtpZihyKXt2YXIgdz1lLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHU1OTBEXHU1MjM2IENvZGV4IHRocmVhZCBJRCI6Ilx1NTkwRFx1NTIzNiBDbGF1ZGUgXHU0RjFBXHU4QkREIElEIjtGKz0nPGJ1dHRvbiBjbGFzcz0idG9wYmFyLW1vcmUtaXRlbSIgZGF0YS1hY3Rpb249ImNvcHktY2xhdWRlLXNlc3Npb24taWQiIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iPicrdisiPHNwYW4+Iit3KyI8L3NwYW4+PC9idXR0b24+In1pJiYoRis9JzxidXR0b24gY2xhc3M9InRvcGJhci1tb3JlLWl0ZW0iIGRhdGEtYWN0aW9uPSJjb3B5LWN3ZCIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSI+JytnKyI8c3Bhbj5cdTU5MERcdTUyMzZcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTU8L3NwYW4+PC9idXR0b24+IiksRis9JzxidXR0b24gY2xhc3M9InRvcGJhci1tb3JlLWl0ZW0iIGRhdGEtYWN0aW9uPSJjb3B5LXNlc3Npb24taWQiIHR5cGU9ImJ1dHRvbiIgcm9sZT0ibWVudWl0ZW0iPicraCsiPHNwYW4+XHU1OTBEXHU1MjM2XHU0RjFBXHU4QkREIElEPC9zcGFuPjwvYnV0dG9uPiI7dmFyIEU9IiI7bz9FKz0nPGJ1dHRvbiBjbGFzcz0idG9wYmFyLW1vcmUtaXRlbSIgZGF0YS1hY3Rpb249Indvcmt0cmVlLW1lcmdlIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIicrKHM/IiBkaXNhYmxlZCI6IiIpKyI+IittKyI8c3Bhbj5cdTU0MDhcdTVFNzZcdTUyMzBcdTRFM0JcdTUyMDZcdTY1MkZcdTIwMjY8L3NwYW4+PC9idXR0b24+IjpsJiYoRSs9JzxidXR0b24gY2xhc3M9InRvcGJhci1tb3JlLWl0ZW0iIGRhdGEtYWN0aW9uPSJ3b3JrdHJlZS1jbGVhbnVwIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtIj4nK20rIjxzcGFuPlx1OTFDRFx1OEJENSB3b3JrdHJlZSBcdTZFMDVcdTc0MDY8L3NwYW4+PC9idXR0b24+IiksRSs9JzxidXR0b24gY2xhc3M9InRvcGJhci1tb3JlLWl0ZW0gdG9wYmFyLW1vcmUtaXRlbS1kYW5nZXIiIGRhdGEtYWN0aW9uPSJkZWxldGUtc2Vzc2lvbiIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSI+JytiKyI8c3Bhbj5cdTUyMjBcdTk2NjRcdTVGNTNcdTUyNERcdTRGMUFcdThCREQ8L3NwYW4+PC9idXR0b24+Ijt2YXIgQT1jJiZmPyc8ZGl2IGNsYXNzPSJ0b3BiYXItbW9yZS1kaXZpZGVyIiByb2xlPSJzZXBhcmF0b3IiPjwvZGl2Pic6IiI7cmV0dXJuJzxkaXYgY2xhc3M9InRvcGJhci1tb3JlLXdyYXAiPjxidXR0b24gaWQ9InRvcGJhci1tb3JlLWJ1dHRvbiIgY2xhc3M9InRvcGJhci1idG4gc3F1YXJlJysodD8iIGFjdGl2ZSI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1RjUzXHU1MjREXHU0RjFBXHU4QkREXHU2NENEXHU0RjVDIiBhcmlhLWhhc3BvcHVwPSJtZW51IiBhcmlhLWV4cGFuZGVkPSInKyh0PyJ0cnVlIjoiZmFsc2UiKSsnIiB0aXRsZT0iXHU1RjUzXHU1MjREXHU0RjFBXHU4QkREXHU2NENEXHU0RjVDIj48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjEiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjUiIHI9IjEiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjE5IiByPSIxIi8+PC9zdmc+PC9idXR0b24+PGRpdiBpZD0idG9wYmFyLW1vcmUtbWVudSIgY2xhc3M9InRvcGJhci1tb3JlLW1lbnUnKyh0PyIiOiIgaGlkZGVuIikrJyIgcm9sZT0ibWVudSIgYXJpYS1sYWJlbD0iXHU1RjUzXHU1MjREXHU0RjFBXHU4QkREIj4nK0YrQStFKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIENuKGUsdCl7aWYoIWUpcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTt2YXIgcj10JiZ0LmZvcmNlLGk9RGF0ZS5ub3coKTtpZighciYmbi5naXRTdGF0dXNTZXNzaW9uSWQ9PT1lJiZuLmdpdFN0YXR1cyYmaS1uLmdpdFN0YXR1c0xhc3RGZXRjaEF0PDFlMylyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG4uZ2l0U3RhdHVzKTtpZihuLmdpdFN0YXR1c0luZmxpZ2h0JiZuLmdpdFN0YXR1c0luZmxpZ2h0LnNlc3Npb25JZD09PWUpcmV0dXJuIG4uZ2l0U3RhdHVzSW5mbGlnaHQucHJvbWlzZTtuLmdpdFN0YXR1c0xvYWRpbmc9ITA7dmFyIGE9ZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoZSkrIi9naXQtc3RhdHVzIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odSl7cmV0dXJuIHUub2s/dS5qc29uKCk6e2lzR2l0OiExfX0pLnRoZW4oZnVuY3Rpb24odSl7cmV0dXJuIG4uZ2l0U3RhdHVzPXV8fHtpc0dpdDohMX0sbi5naXRTdGF0dXNTZXNzaW9uSWQ9ZSxuLmdpdFN0YXR1c0xhc3RGZXRjaEF0PURhdGUubm93KCksWWkoKSx1fSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4gbi5naXRTdGF0dXM9e2lzR2l0OiExfSxuLmdpdFN0YXR1c1Nlc3Npb25JZD1lLG4uZ2l0U3RhdHVzTGFzdEZldGNoQXQ9RGF0ZS5ub3coKSxZaSgpLG51bGx9KS5maW5hbGx5KGZ1bmN0aW9uKCl7bi5naXRTdGF0dXNMb2FkaW5nPSExLG4uZ2l0U3RhdHVzSW5mbGlnaHQmJm4uZ2l0U3RhdHVzSW5mbGlnaHQuc2Vzc2lvbklkPT09ZSYmKG4uZ2l0U3RhdHVzSW5mbGlnaHQ9bnVsbCl9KTtyZXR1cm4gbi5naXRTdGF0dXNJbmZsaWdodD17c2Vzc2lvbklkOmUscHJvbWlzZTphfSxhfXZhciBCbj1udWxsLERuPW51bGwsSG09bnVsbDtmdW5jdGlvbiBsYyhlKXtyZXR1cm4gZT09PSJjb21taXQtdGFnInx8ZT09PSJjb21taXQtdGFnLXB1c2gifHxlPT09ImNvbW1pdC1wdXNoIj9lOiJjb21taXQifWZ1bmN0aW9uIGNjKGUpe3JldHVybiBlPWxjKGUpLGU9PT0iY29tbWl0LXRhZy1wdXNoIj97YWN0aW9uOmUsbGFiZWw6IkNvbW1pdCArIFRhZyArIFB1c2giLHZlcmI6Ilx1NjNEMFx1NEVBNFx1MzAwMVx1NjI1MyBUYWcgXHU1RTc2XHU2M0E4XHU5MDAxIix3aXRoVGFnOiEwLHB1c2g6ITAsdG9uZToiYWxsIn06ZT09PSJjb21taXQtdGFnIj97YWN0aW9uOmUsbGFiZWw6IkNvbW1pdCArIFRhZyIsdmVyYjoiXHU2M0QwXHU0RUE0XHU1RTc2XHU2MjUzIFRhZyIsd2l0aFRhZzohMCxwdXNoOiExLHRvbmU6InRhZyJ9OmU9PT0iY29tbWl0LXB1c2giP3thY3Rpb246ZSxsYWJlbDoiQ29tbWl0ICsgUHVzaCIsdmVyYjoiXHU2M0QwXHU0RUE0XHU1RTc2XHU2M0E4XHU5MDAxIix3aXRoVGFnOiExLHB1c2g6ITAsdG9uZToicHVzaCJ9OnthY3Rpb246ImNvbW1pdCIsbGFiZWw6IkNvbW1pdCIsdmVyYjoiXHU0RUM1XHU2M0QwXHU0RUE0Iix3aXRoVGFnOiExLHB1c2g6ITEsdG9uZToiY29tbWl0In19ZnVuY3Rpb24gcXUoKXtpZihuLnNlbGVjdGVkSWQpe24ucXVpY2tDb21taXRPcGVuPSEwLG4ucXVpY2tDb21taXRTdWJtaXR0aW5nPSExLG4ucXVpY2tDb21taXRBdXRvR2VuZXJhdGluZz0hMSxuLnF1aWNrQ29tbWl0RXJyb3I9IiIsbi5xdWlja0NvbW1pdEZvcm09e2N1c3RvbU1lc3NhZ2U6IiIsdGFnOiIiLHRhZ0VkaXRlZDohMX0sbi5xdWlja0NvbW1pdFB1c2hpbmc9ITEsbi5xdWlja0NvbW1pdFB1c2hFcnJvcj0iIixuLnF1aWNrQ29tbWl0UmVzdWx0PW51bGwsbi5xdWlja0NvbW1pdERyYWdBY3Rpb249ImNvbW1pdCIsWm4oKSxtbigpLGVyKCksUHQoKTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LW1vZGFsIik7ZSYmKGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksbi5sYXN0Rm9jdXNlZEVsZW1lbnQ9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCx4aShlKSksQm4mJmRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLEJuKSxCbj1mdW5jdGlvbih0KXt0LmtleT09PSJFc2NhcGUiJiZuLnF1aWNrQ29tbWl0T3BlbiYmIW4ucXVpY2tDb21taXRTdWJtaXR0aW5nJiYhbi5xdWlja0NvbW1pdFB1c2hpbmcmJk5uKCl9LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLEJuKSxDbihuLnNlbGVjdGVkSWQse2ZvcmNlOiEwfSkudGhlbihmdW5jdGlvbigpe24ucXVpY2tDb21taXRPcGVuJiZQdCgpfSl9fWZ1bmN0aW9uIE5uKCl7bi5xdWlja0NvbW1pdE9wZW49ITEsbi5xdWlja0NvbW1pdFN1Ym1pdHRpbmc9ITEsbi5xdWlja0NvbW1pdEVycm9yPSIiLG4ucXVpY2tDb21taXRSZXN1bHQ9bnVsbCxuLnF1aWNrQ29tbWl0RHJhZ0FjdGlvbj0iY29tbWl0Ijt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LW1vZGFsIik7ZSYmZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxuLmZvY3VzVHJhcEhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixuLmZvY3VzVHJhcEhhbmRsZXIpLG4uZm9jdXNUcmFwSGFuZGxlcj1udWxsKSxCbiYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLEJuKSxCbj1udWxsKSxEbiYmKERuKCksRG49bnVsbCksbi5sYXN0Rm9jdXNlZEVsZW1lbnQmJnR5cGVvZiBuLmxhc3RGb2N1c2VkRWxlbWVudC5mb2N1cz09ImZ1bmN0aW9uIiYmbi5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXMoKX1mdW5jdGlvbiBQdCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbW9kYWwiKTtpZihlKXtEbiYmKERuKCksRG49bnVsbCk7dmFyIHQ9TnUoKSxyPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3IuaW5uZXJIVE1MPXQ7dmFyIGk9ci5xdWVyeVNlbGVjdG9yKCIjcXVpY2stY29tbWl0LW1vZGFsIik7aSYmKGUuaW5uZXJIVE1MPWkuaW5uZXJIVE1MLEh1KCkpfX1mdW5jdGlvbiBIdSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtY2xvc2UtYnRuIik7ZSYmZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsTm4pO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtY2FuY2VsLWJ0biIpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLE5uKTt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LWFpLWJ0biIpO3ImJnIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHZjKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LW1lc3NhZ2UiKTtpJiYoaS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtuLnF1aWNrQ29tbWl0Rm9ybS5jdXN0b21NZXNzYWdlPWkudmFsdWV9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHMpeyhzLm1ldGFLZXl8fHMuY3RybEtleSkmJnMua2V5PT09IkVudGVyIiYmKHMucHJldmVudERlZmF1bHQoKSxqbigiY29tbWl0IikpfSkpO3ZhciBhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtdGFnIik7YSYmKGEuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKCl7bi5xdWlja0NvbW1pdEZvcm0udGFnPWEudmFsdWUsbi5xdWlja0NvbW1pdEZvcm0udGFnRWRpdGVkPSEwfSksYS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbihzKXtzLmtleT09PSJFbnRlciImJihzLnByZXZlbnREZWZhdWx0KCksam4oImNvbW1pdC10YWciKSl9KSk7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1wdXNoLWFmdGVyLWJ0biIpO3UmJnUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIHM9bi5xdWlja0NvbW1pdFJlc3VsdHx8e307bWMoe3B1c2hDb21taXRzOiEwLHB1c2hUYWdzOiEhcy50YWdOYW1lLGNsb3NlT25TdWNjZXNzOiEwfSl9KSxwYygpfWZ1bmN0aW9uIGRjKGUpe3ZhciB0PSEhKGUmJmUudGFnKSxyPSEhKGUmJmUucHVzaCk7cmV0dXJuIHQmJnI/ImNvbW1pdC10YWctcHVzaCI6dD8iY29tbWl0LXRhZyI6cj8iY29tbWl0LXB1c2giOiJjb21taXQifXZhciBmYz01OCxKcj0xMDtmdW5jdGlvbiBfdShlKXtyZXR1cm4gZT09PSJ0YWciP3thY3Rpb246ImNvbW1pdC10YWciLHN1YjohMX06ZT09PSJwdXNoIj97YWN0aW9uOiJjb21taXQtcHVzaCIsc3ViOiExfTplPT09InN1YiI/e2FjdGlvbjoiY29tbWl0IixzdWI6ITB9OnthY3Rpb246ImNvbW1pdCIsc3ViOiExfX1mdW5jdGlvbiBwYygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxYy1kb2NrLWZpZWxkIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicWMtZG9jay1zdGFnZSIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInFjLWRvY2stbGF1bmNoIiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicWMtZG9jay1jbHVzdGVyIik7aWYoIWV8fCF0fHwhcnx8IWkpcmV0dXJuO3ZhciBhPVsiY29tbWl0IiwidGFnIiwicHVzaCJdLHU9e307aWYoYS5mb3JFYWNoKGZ1bmN0aW9uKEIpe3VbQl09ZS5xdWVyeVNlbGVjdG9yKCdbZGF0YS1jaGlwPSInK0IrJyJdJyl9KSwhdS5jb21taXR8fCF1LnRhZ3x8IXUucHVzaClyZXR1cm47dS5zdWI9ZS5xdWVyeVNlbGVjdG9yKCdbZGF0YS1jaGlwPSJzdWIiXScpO3ZhciBzPSEhdS5zdWIsbz1zP2EuY29uY2F0KFsic3ViIl0pOmE7ZnVuY3Rpb24gbChCKXtyZXR1cm4gdVtCXT91W0JdLm9mZnNldFdpZHRoOjkwfWZ1bmN0aW9uIGMoKXtyZXR1cm4gdS5jb21taXQ/dS5jb21taXQub2Zmc2V0SGVpZ2h0OjM4fWZ1bmN0aW9uIGYoKXtyZXR1cm4gd2luZG93Lm1hdGNoTWVkaWEmJndpbmRvdy5tYXRjaE1lZGlhKCIobWF4LXdpZHRoOiA3MjBweCkiKS5tYXRjaGVzfWZ1bmN0aW9uIGQoKXt2YXIgQj1lLmNsaWVudFdpZHRoLFQ9ZS5jbGllbnRIZWlnaHQsTT1jKCksSD1sKCJjb21taXQiKSwkPWwoInRhZyIpLG5lPWwoInB1c2giKTtpZihmKCkmJnMpe3ZhciBRPU1hdGgubWF4KDgsVCouMi1NLzIpLHNlPU1hdGgubWluKFQtTS04LFQqLjctTS8yKSxlZT1mdW5jdGlvbihyZSl7cmV0dXJuIE1hdGgubWF4KDgsQiouMjctcmUvMil9LFM9ZnVuY3Rpb24ocmUpe3JldHVybiBNYXRoLm1pbihCLXJlLTgsQiouNzMtcmUvMil9O3JldHVybntjb21taXQ6e3g6ZWUoSCkseTpRfSx0YWc6e3g6UygkKSx5OlF9LHB1c2g6e3g6ZWUobmUpLHk6c2V9LHN1Yjp7eDpTKGwoInN1YiIpKSx5OnNlfX19dmFyIE49ZigpLFc9Tj9NYXRoLm1heCg4LFQqLjE4LU0vMik6TWF0aC5tYXgoOCxUKi4xMiksSj1OP01hdGgubWluKFQtTS04LFQqLjcyLU0vMik6TWF0aC5taW4oVC1NLTgsVCouODgtTSksVT1OPy4yNDouMjgsWD1OPy43NjouNzIsb2U9e2NvbW1pdDp7eDpNYXRoLm1heCg4LChCLUgpLzIpLHk6V30sdGFnOnt4Ok1hdGgubWF4KDgsQipVLSQvMikseTpKfSxwdXNoOnt4Ok1hdGgubWluKEItbmUtOCxCKlgtbmUvMikseTpKfX07aWYocyl7dmFyIGxlPWwoInN1YiIpO29lLnN1Yj17eDpNYXRoLm1pbihCLWxlLTgsQiouOTQtbGUvMikseTpNYXRoLm1heCg4LE1hdGgubWluKFQtTS04LChULU0pLzIpKX19cmV0dXJuIG9lfXZhciB2PXt9O2Z1bmN0aW9uIGcoQixULE0pe3VbQl0mJih1W0JdLnN0eWxlLnRyYW5zZm9ybT0idHJhbnNsYXRlKCIrVC50b0ZpeGVkKDEpKyJweCwiK00udG9GaXhlZCgxKSsicHgpIil9ZnVuY3Rpb24gaChCKXt2PWQoKSxvLmZvckVhY2goZnVuY3Rpb24oVCl7dVtUXS5jbGFzc0xpc3QudG9nZ2xlKCJxYy1jaGlwLS1hbmltIiwhIUIpLGcoVCx2W1RdLngsdltUXS55KX0pfWgoITEpO3ZhciBtPW51bGw7ZnVuY3Rpb24gYihCLFQsTSl7dmFyIEg9YygpLCQ9NSxuZT1vLmZpbHRlcihmdW5jdGlvbihOKXtyZXR1cm4gQi5pbmRleE9mKE4pPj0wfSksUT1uZS5yZWR1Y2UoZnVuY3Rpb24oTixXKXtyZXR1cm4gTitsKFcpfSwwKStNYXRoLm1heCgwLG5lLmxlbmd0aC0xKSokLHNlPWUuY2xpZW50SGVpZ2h0LGVlPVQtUS8yLFM9TWF0aC5tYXgoMixNYXRoLm1pbihzZS1ILTIsTS1ILzIpKTtyZXR1cm4gbmUuZm9yRWFjaChmdW5jdGlvbihOKXtnKE4sZWUsUyksZWUrPWwoTikrJH0pLHt4OlQtUS8yLTcseTpTLTcsdzpRKzE0LGg6SCsxNH19ZnVuY3Rpb24gRihCKXtpLmNsYXNzTGlzdC5hZGQoImlzLWFjdGl2ZSIpLGkuc3R5bGUudHJhbnNmb3JtPSJ0cmFuc2xhdGUoIitCLngudG9GaXhlZCgxKSsicHgsIitCLnkudG9GaXhlZCgxKSsicHgpIixpLnN0eWxlLndpZHRoPUIudy50b0ZpeGVkKDEpKyJweCIsaS5zdHlsZS5oZWlnaHQ9Qi5oLnRvRml4ZWQoMSkrInB4In1mdW5jdGlvbiB3KCl7aS5jbGFzc0xpc3QucmVtb3ZlKCJpcy1hY3RpdmUiKX1mdW5jdGlvbiBFKEIpe3JldHVybiBkYyh7Y29tbWl0OiEwLHRhZzpCLmluZGV4T2YoInRhZyIpPj0wLHB1c2g6Qi5pbmRleE9mKCJwdXNoIik+PTB9KX1mdW5jdGlvbiBBKEIpe3JldHVybiBCLmluZGV4T2YoInN1YiIpPj0wfWZ1bmN0aW9uIHgoQil7dmFyIFQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInFjLWRvY2stbGF1bmNoLWxhYmVsIik7VCYmKFQudGV4dENvbnRlbnQ9Qil9ZnVuY3Rpb24gSShCLFQpe3ZhciBNPXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7cmV0dXJuIEI+PU0ubGVmdCYmQjw9TS5yaWdodCYmVD49TS50b3AmJlQ8PU0uYm90dG9tfWZ1bmN0aW9uIGooQil7cmV0dXJuIGZ1bmN0aW9uKFQpe2lmKCEodVtCXS5kaXNhYmxlZHx8R3IoKSkpe209e2FuY2hvcjpCLHBvaW50ZXJJZDpULnBvaW50ZXJJZCxzdGFydFg6VC5jbGllbnRYLHN0YXJ0WTpULmNsaWVudFksbW92ZWQ6ITEsbWVtYmVyczpbQl19LG8uZm9yRWFjaChmdW5jdGlvbihNKXt1W01dLmNsYXNzTGlzdC5yZW1vdmUoInFjLWNoaXAtLWFuaW0iKX0pLHVbQl0uY2xhc3NMaXN0LmFkZCgiaXMtZ3JhYmJpbmciKTt0cnl7dVtCXS5zZXRQb2ludGVyQ2FwdHVyZShULnBvaW50ZXJJZCl9Y2F0Y2h7fXQuY2xhc3NMaXN0LmFkZCgiaXMtZHJhZ2dpbmciKSxULnByZXZlbnREZWZhdWx0KCl9fX1mdW5jdGlvbiBWKEIpe2lmKCEoIW18fG0ucG9pbnRlcklkIT09Qi5wb2ludGVySWQpKXsoTWF0aC5hYnMoQi5jbGllbnRYLW0uc3RhcnRYKT4zfHxNYXRoLmFicyhCLmNsaWVudFktbS5zdGFydFkpPjMpJiYobS5tb3ZlZD0hMCk7dmFyIFQ9ZS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxNPUIuY2xpZW50WC1ULmxlZnQsSD1CLmNsaWVudFktVC50b3A7aWYoYS5mb3JFYWNoKGZ1bmN0aW9uKE4pe2lmKCEobS5tZW1iZXJzLmluZGV4T2YoTik+PTApKXt2YXIgVz12W05dLngrbChOKS8yLEo9dltOXS55K2MoKS8yLFU9TS1XLFg9SC1KO01hdGguc3FydChVKlUrWCpYKTxmYyYmKG0ubWVtYmVycy5wdXNoKE4pLHVbTl0uY2xhc3NMaXN0LnJlbW92ZSgicWMtY2hpcC0tYW5pbSIpLHVbTl0uY2xhc3NMaXN0LmFkZCgiaXMtYXR0YWNoZWQiKSl9fSkscyYmbS5tZW1iZXJzLmluZGV4T2YoInN1YiIpPDApe3ZhciAkPXYuc3ViLngtSnIsbmU9di5zdWIueS1KcixRPXYuc3ViLngrbCgic3ViIikrSnIsc2U9di5zdWIueStjKCkrSnI7TT49JCYmTTw9USYmSD49bmUmJkg8PXNlJiYobS5tZW1iZXJzLnB1c2goInN1YiIpLHUuc3ViLmNsYXNzTGlzdC5yZW1vdmUoInFjLWNoaXAtLWFuaW0iKSx1LnN1Yi5jbGFzc0xpc3QuYWRkKCJpcy1hdHRhY2hlZCIpKX12YXIgZWU9YihtLm1lbWJlcnMsTSxIKSxTPUkoQi5jbGllbnRYLEIuY2xpZW50WSk7dC5zZXRBdHRyaWJ1dGUoImRhdGEtaG90IixTPyIxIjoiMCIpLHQuc2V0QXR0cmlidXRlKCJkYXRhLWFjdGlvbiIsRShtLm1lbWJlcnMpKSxtLm1lbWJlcnMubGVuZ3RoPjE/RihlZSk6dygpLHgoUz8iXHU2NzdFXHU2MjRCXHU2MjY3XHU4ODRDIjoiXHU2M0QwXHU0RUE0Iil9fWZ1bmN0aW9uIEcoQixUKXtpZighKCFtfHxtLnBvaW50ZXJJZCE9PUIucG9pbnRlcklkKSl7dmFyIE09bTttPW51bGwsdC5jbGFzc0xpc3QucmVtb3ZlKCJpcy1kcmFnZ2luZyIpLHQuc2V0QXR0cmlidXRlKCJkYXRhLWhvdCIsIjAiKSx4KCJcdTYzRDBcdTRFQTQiKSx3KCksby5mb3JFYWNoKGZ1bmN0aW9uKCQpe3VbJF0uY2xhc3NMaXN0LnJlbW92ZSgiaXMtZ3JhYmJpbmciLCJpcy1hdHRhY2hlZCIpfSk7dHJ5e3VbTS5hbmNob3JdLnJlbGVhc2VQb2ludGVyQ2FwdHVyZShNLnBvaW50ZXJJZCl9Y2F0Y2h7fWlmKCFUJiYhTS5tb3ZlZCl7dmFyIEg9X3UoTS5hbmNob3IpO2puKEguYWN0aW9uLEguc3ViKTtyZXR1cm59aWYoIVQmJkkoQi5jbGllbnRYLEIuY2xpZW50WSkpe2puKEUoTS5tZW1iZXJzKSxBKE0ubWVtYmVycykpO3JldHVybn10LnNldEF0dHJpYnV0ZSgiZGF0YS1hY3Rpb24iLCJjb21taXQiKSxoKCEwKX19dmFyIEw9ZnVuY3Rpb24oKXtuLnF1aWNrQ29tbWl0T3BlbiYmIW0mJmgoITEpfTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixMKSxvLmZvckVhY2goZnVuY3Rpb24oQil7dmFyIFQ9dVtCXTtULmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJkb3duIixqKEIpKSxULmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIixWKSxULmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsZnVuY3Rpb24oTSl7RyhNLCExKX0pLFQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsZnVuY3Rpb24oTSl7RyhNLCEwKX0pLFQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oTSl7aWYoIShULmRpc2FibGVkfHxHcigpKSYmKE0ua2V5PT09IkVudGVyInx8TS5rZXk9PT0iICJ8fE0ua2V5PT09IlNwYWNlYmFyIikpe00ucHJldmVudERlZmF1bHQoKTt2YXIgSD1fdShCKTtqbihILmFjdGlvbixILnN1Yil9fSl9KSxyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3IuZGlzYWJsZWR8fEdyKCl8fG18fGpuKCJjb21taXQiKX0pLERuPWZ1bmN0aW9uKCl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsTCksbT1udWxsfX1mdW5jdGlvbiB2Yygpe2lmKCEoIW4uc2VsZWN0ZWRJZHx8bi5xdWlja0NvbW1pdEdlbmVyYXRpbmcpKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LW1lc3NhZ2UiKTtlJiYobi5xdWlja0NvbW1pdEZvcm0uY3VzdG9tTWVzc2FnZT1lLnZhbHVlKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVpY2stY29tbWl0LXRhZyIpO3QmJihuLnF1aWNrQ29tbWl0Rm9ybS50YWc9dC52YWx1ZSksbi5xdWlja0NvbW1pdEdlbmVyYXRpbmc9ITAsbi5xdWlja0NvbW1pdEVycm9yPSIiLFB0KCksZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQobi5zZWxlY3RlZElkKSsiL2dlbmVyYXRlLWNvbW1pdC1tZXNzYWdlIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh7fSl9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmpzb24oKS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybntvazpyLm9rLGRhdGE6aX19KX0pLnRoZW4oZnVuY3Rpb24ocil7aWYoIXIub2spdGhyb3cgbmV3IEVycm9yKHIuZGF0YSYmci5kYXRhLmVycm9yfHwiQUkgXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1XHUzMDAyIik7dmFyIGk9ci5kYXRhfHx7fSxhPXR5cGVvZiBpLm1lc3NhZ2U9PSJzdHJpbmciP2kubWVzc2FnZToiIix1PXR5cGVvZiBpLnN1Z2dlc3RlZFRhZz09InN0cmluZyI/aS5zdWdnZXN0ZWRUYWcudHJpbSgpOiIiLHM9KG4ucXVpY2tDb21taXRGb3JtLmN1c3RvbU1lc3NhZ2V8fCIiKS50cmltKCk7IXMmJmEmJihuLnF1aWNrQ29tbWl0Rm9ybS5jdXN0b21NZXNzYWdlPWEpLHUmJihuLnF1aWNrQ29tbWl0Rm9ybS50YWdFZGl0ZWR8fChuLnF1aWNrQ29tbWl0Rm9ybS50YWc9dSksbi5xdWlja0NvbW1pdERyYWdBY3Rpb249ImNvbW1pdC10YWciKX0pLmNhdGNoKGZ1bmN0aW9uKHIpe24ucXVpY2tDb21taXRFcnJvcj1yJiZyLm1lc3NhZ2V8fCJBSSBcdTc1MUZcdTYyMTBcdTU5MzFcdThEMjVcdTMwMDIifSkuZmluYWxseShmdW5jdGlvbigpe24ucXVpY2tDb21taXRHZW5lcmF0aW5nPSExLG4ucXVpY2tDb21taXRPcGVuJiZQdCgpfSl9fWZ1bmN0aW9uIGpuKGUsdCl7aWYoISghbi5zZWxlY3RlZElkfHxuLnF1aWNrQ29tbWl0U3VibWl0dGluZykpe3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtbWVzc2FnZSIpO3ImJihuLnF1aWNrQ29tbWl0Rm9ybS5jdXN0b21NZXNzYWdlPXIudmFsdWUpO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJxdWljay1jb21taXQtdGFnIik7aSYmKG4ucXVpY2tDb21taXRGb3JtLnRhZz1pLnZhbHVlKTt2YXIgYT1uLnF1aWNrQ29tbWl0Rm9ybXx8e30sdT1jYyhlfHxuLnF1aWNrQ29tbWl0RHJhZ0FjdGlvbnx8ImNvbW1pdCIpLHM9dS53aXRoVGFnLG89cz8oYS50YWd8fCIiKS50cmltKCk6IiIsbD0oYS5jdXN0b21NZXNzYWdlfHwiIikudHJpbSgpLGM9IWwsZj17YnJhbmNoOihuLmdpdFN0YXR1c3x8e30pLmJyYW5jaHx8IiIsY29tbWl0SGFzaDoobi5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0JiYobi5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0LnNob3J0SGFzaD8obi5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0LnNob3J0SGFzaDoobi5naXRTdGF0dXN8fHt9KS5oZWFkPyhuLmdpdFN0YXR1c3x8e30pLmhlYWQuc3Vic3RyaW5nKDAsNyk6IiIsY29tbWl0U3ViamVjdDoobi5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0JiYobi5naXRTdGF0dXN8fHt9KS5sYXN0Q29tbWl0LnN1YmplY3Q/KG4uZ2l0U3RhdHVzfHx7fSkubGFzdENvbW1pdC5zdWJqZWN0OiIiLHRhZzoobi5naXRTdGF0dXN8fHt9KS5sYXRlc3RUYWd8fCIifSxkPXthdXRvTWVzc2FnZTpjLGN1c3RvbU1lc3NhZ2U6Yz8iIjpsLHRhZzpvLGF1dG9UYWc6ISEocyYmIW8pLHB1c2g6ISF1LnB1c2gsc3VibW9kdWxlOiEhdH07bi5xdWlja0NvbW1pdFN1Ym1pdHRpbmc9ITAsbi5xdWlja0NvbW1pdFN1Ym1vZHVsZUludGVudD0hIXQsbi5xdWlja0NvbW1pdEF1dG9HZW5lcmF0aW5nPWN8fGQuYXV0b1RhZyxuLnF1aWNrQ29tbWl0RXJyb3I9IiIsbi5xdWlja0NvbW1pdFB1c2hFcnJvcj0iIixuLnF1aWNrQ29tbWl0UmVzdWx0PW51bGwsbi5xdWlja0NvbW1pdERyYWdBY3Rpb249dS5hY3Rpb24sUHQoKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChuLnNlbGVjdGVkSWQpKyIvcXVpY2stY29tbWl0Iix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeShkKX0pLnRoZW4oZnVuY3Rpb24odil7cmV0dXJuIHYuanNvbigpLnRoZW4oZnVuY3Rpb24oZyl7cmV0dXJue29rOnYub2ssZGF0YTpnfX0pfSkudGhlbihmdW5jdGlvbih2KXtpZighdi5vayl0aHJvdyBuZXcgRXJyb3Iodi5kYXRhJiZ2LmRhdGEuZXJyb3J8fCJcdTVGRUJcdTYzNzdcdTYzRDBcdTRFQTRcdTU5MzFcdThEMjVcdTMwMDIiKTt2YXIgZz12LmRhdGF8fHt9LGg9Zy5jb21taXQmJmcuY29tbWl0Lmhhc2g/Zy5jb21taXQuaGFzaC5zdWJzdHJpbmcoMCw3KToiIixtPWcudGFnJiZnLnRhZy5uYW1lP2cudGFnLm5hbWU6IiIsYj1BcnJheS5pc0FycmF5KGcuc3VibW9kdWxlQ29tbWl0cyk/Zy5zdWJtb2R1bGVDb21taXRzOltdLEY9Yi5sZW5ndGg+MD8iXHU1REYyXHU1MTQ4XHU2M0QwXHU0RUE0ICIrYi5sZW5ndGgrIiBcdTRFMkEgc3VibW9kdWxlXHVGRjA4IitiLm1hcChmdW5jdGlvbihFKXtyZXR1cm4gRS5wYXRofSkuam9pbigiXHUzMDAxIikrIlx1RkYwOVx1RkYwQyI6IiIsdz1GKyJcdTVERjJcdTYzRDBcdTRFQTQiKyhoPyIgIitoOiIiKSsobT8iXHVGRjBDXHU1REYyXHU2MjUzIFRhZyAiK206IiIpO24ucXVpY2tDb21taXRSZXN1bHQ9e2FjdGlvbjp1LmFjdGlvbixpbmNsdWRlU3VibW9kdWxlOiEhdCxwdXNoZWQ6ISFnLnB1c2hlZCxwdXNoRXJyb3I6Zy5wdXNoRXJyb3J8fCIiLGNvbW1pdEhhc2g6aCxjb21taXRNZXNzYWdlOmcuY29tbWl0JiZnLmNvbW1pdC5tZXNzYWdlP2cuY29tbWl0Lm1lc3NhZ2U6bCx0YWdOYW1lOm0sb2xkVGFnOmYudGFnLG9sZENvbW1pdEhhc2g6Zi5jb21taXRIYXNoLG9sZENvbW1pdFN1YmplY3Q6Zi5jb21taXRTdWJqZWN0LHN1Ym1vZHVsZUNvdW50OmIubGVuZ3RofSx1LnB1c2gmJiFnLnB1c2hFcnJvcj8odHlwZW9mIGs9PSJmdW5jdGlvbiImJmsodysiXHVGRjBDXHU1REYyXHU2M0E4XHU5MDAxXHUzMDAyIiwic3VjY2VzcyIpLE5uKCkpOih0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmayh3KyhnLnB1c2hFcnJvcj8iXHVGRjFCcHVzaCBcdTU5MzFcdThEMjVcdUZGMUEiK2cucHVzaEVycm9yOiJcdTMwMDIiKSxnLnB1c2hFcnJvcj8iZXJyb3IiOiJzdWNjZXNzIiksbi5zZWxlY3RlZElkJiZDbihuLnNlbGVjdGVkSWQse2ZvcmNlOiEwfSkudGhlbihmdW5jdGlvbigpe24ucXVpY2tDb21taXRPcGVuJiZQdCgpfSkpfSkuY2F0Y2goZnVuY3Rpb24odil7bi5xdWlja0NvbW1pdEVycm9yPXYmJnYubWVzc2FnZXx8Ilx1NUZFQlx1NjM3N1x1NjNEMFx1NEVBNFx1NTkzMVx1OEQyNVx1MzAwMiJ9KS5maW5hbGx5KGZ1bmN0aW9uKCl7bi5xdWlja0NvbW1pdFN1Ym1pdHRpbmc9ITEsbi5xdWlja0NvbW1pdEF1dG9HZW5lcmF0aW5nPSExLG4ucXVpY2tDb21taXRPcGVuJiZQdCgpfSl9fWZ1bmN0aW9uIG1jKGUpe2lmKCEoIW4uc2VsZWN0ZWRJZHx8bi5xdWlja0NvbW1pdFB1c2hpbmcpKXt2YXIgdD0hIShlJiZlLnB1c2hDb21taXRzKSxyPSEhKGUmJmUucHVzaFRhZ3MpLGk9ISEoZSYmZS5jbG9zZU9uU3VjY2Vzcyk7aWYoISghdCYmIXIpKXt2YXIgYT1uLnF1aWNrQ29tbWl0UmVzdWx0fHx7fSx1PSEhYS5pbmNsdWRlU3VibW9kdWxlO24ucXVpY2tDb21taXRQdXNoaW5nPSEwLG4ucXVpY2tDb21taXRQdXNoRXJyb3I9IiIsUHQoKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChuLnNlbGVjdGVkSWQpKyIvZ2l0L3B1c2giLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxib2R5OkpTT04uc3RyaW5naWZ5KHtwdXNoQ29tbWl0czp0LHB1c2hUYWdzOnIsc3VibW9kdWxlOnUsdGFnOmEudGFnTmFtZXx8IiJ9KX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJue29rOnMub2ssZGF0YTpvfX0pfSkudGhlbihmdW5jdGlvbihzKXt2YXIgbz1zLmRhdGF8fHt9O2lmKCFzLm9rKXRocm93IG5ldyBFcnJvcihvJiZvLmVycm9yfHwiXHU2M0E4XHU5MDAxXHU1OTMxXHU4RDI1XHUzMDAyIik7aWYoby5lcnJvcil7bi5xdWlja0NvbW1pdFB1c2hFcnJvcj1vLmVycm9yLHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTYzQThcdTkwMDFcdTU5MzFcdThEMjVcdUZGMUEiK28uZXJyb3IsImVycm9yIik7cmV0dXJufXZhciBsPVtdO28ucHVzaGVkQ29tbWl0cyYmbC5wdXNoKCJjb21taXRzIiksby5wdXNoZWRUYWdzJiZsLnB1c2goInRhZ3MiKTt2YXIgYz1sLmxlbmd0aD9sLmpvaW4oIiBcdTU0OEMgIik6Ilx1RkYwOFx1NjVFMFx1NTE4NVx1NUJCOVx1RkYwOSI7dHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoIlx1NURGMlx1NjNBOFx1OTAwMSAiK2MsInN1Y2Nlc3MiKSxuLnF1aWNrQ29tbWl0UmVzdWx0JiYobi5xdWlja0NvbW1pdFJlc3VsdC5wdXNoZWQ9ITApLGk/KE5uKCksbi5zZWxlY3RlZElkJiZDbihuLnNlbGVjdGVkSWQse2ZvcmNlOiEwfSkpOm4uc2VsZWN0ZWRJZCYmQ24obi5zZWxlY3RlZElkLHtmb3JjZTohMH0pLnRoZW4oZnVuY3Rpb24oKXtuLnF1aWNrQ29tbWl0T3BlbiYmUHQoKX0pfSkuY2F0Y2goZnVuY3Rpb24ocyl7bi5xdWlja0NvbW1pdFB1c2hFcnJvcj1zJiZzLm1lc3NhZ2V8fCJcdTYzQThcdTkwMDFcdTU5MzFcdThEMjVcdTMwMDIiLHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKG4ucXVpY2tDb21taXRQdXNoRXJyb3IsImVycm9yIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7bi5xdWlja0NvbW1pdFB1c2hpbmc9ITEsbi5xdWlja0NvbW1pdE9wZW4mJlB0KCl9KX19fWZ1bmN0aW9uIGdjKGUpe3ZhciB0PShlfHwiIikudHJpbSgpO2lmKHQ9PT0iPz8iKXJldHVybntsZXR0ZXI6IlUiLGNsczoidW50cmFja2VkIix0aXRsZToiXHU2NzJBXHU4RERGXHU4RTJBIn07aWYodD09PSIhISIpcmV0dXJue2xldHRlcjoiSSIsY2xzOiJpZ25vcmVkIix0aXRsZToiXHU1REYyXHU1RkZEXHU3NTY1In07Zm9yKHZhciByPSIiLGk9MDtpPGUubGVuZ3RoO2krKylpZihlW2ldJiZlW2ldIT09Ii4iJiZlW2ldIT09IiAiKXtyPWVbaV07YnJlYWt9cj0ocnx8dFswXXx8Ij8iKS50b1VwcGVyQ2FzZSgpO3ZhciBhPXtBOntjbHM6ImFkZCIsdGl0bGU6Ilx1NjVCMFx1NTg5RSJ9LE06e2NsczoibW9kIix0aXRsZToiXHU0RkVFXHU2NTM5In0sRDp7Y2xzOiJkZWwiLHRpdGxlOiJcdTUyMjBcdTk2NjQifSxSOntjbHM6InJlbiIsdGl0bGU6Ilx1OTFDRFx1NTQ3RFx1NTQwRCJ9LEM6e2NsczoicmVuIix0aXRsZToiXHU1OTBEXHU1MjM2In0sVDp7Y2xzOiJtb2QiLHRpdGxlOiJcdTdDN0JcdTU3OEJcdTUzRDhcdTY2RjQifSxVOntjbHM6ImRlbCIsdGl0bGU6Ilx1NTFCMlx1N0E4MSJ9fSx1PWFbcl18fHtjbHM6Im90aGVyIix0aXRsZToiXHU1REYyXHU2NkY0XHU2NTM5In07cmV0dXJue2xldHRlcjpyLGNsczp1LmNscyx0aXRsZTp1LnRpdGxlfX1mdW5jdGlvbiBfbShlKXt2YXIgdD1lLm1hcChmdW5jdGlvbihyKXt2YXIgaT1nYyhyLnN0YXR1c3x8IiIpLGE9ci5wYXRofHwiIix1PWEubGFzdEluZGV4T2YoIi8iKSxzPXU+PTA/YS5zbGljZSgwLHUrMSk6IiIsbz11Pj0wP2Euc2xpY2UodSsxKTphLGw9IiI7aWYoci5pc1N1Ym1vZHVsZSl7dmFyIGM9ci5zdWJtb2R1bGVTdGF0ZXx8e30sZj1bXTtjLmNvbW1pdENoYW5nZWQmJmYucHVzaCgiXHU2NUIwXHU2MzA3XHU5NDg4IiksYy5oYXNUcmFja2VkQ2hhbmdlcyYmZi5wdXNoKCJkaXJ0eSIpLGMuaGFzVW50cmFja2VkJiZmLnB1c2goIlx1NjcyQVx1OERERlx1OEUyQSIpO3ZhciBkPWYubGVuZ3RoPyJzdWJtb2R1bGUgXHhCNyAiK2Yuam9pbigiIC8gIik6InN1Ym1vZHVsZSI7bD0nPHNwYW4gY2xhc3M9InFjLXN1Ym1vZHVsZS1iYWRnZSI+JytwKGQpKyI8L3NwYW4+In1yZXR1cm4nPGRpdiBjbGFzcz0icWMtZmlsZS1yb3ciIHRpdGxlPSInK3AoYSkrJyI+PHNwYW4gY2xhc3M9InFjLWZpbGUtYmFkZ2UgcWMtYmFkZ2UtJytpLmNscysnIiB0aXRsZT0iJytwKGkudGl0bGUpKyciPicrcChpLmxldHRlcikrJzwvc3Bhbj48c3BhbiBjbGFzcz0icWMtZmlsZS1wYXRoIj4nKyhzPyc8c3BhbiBjbGFzcz0icWMtZmlsZS1kaXIiPicrcChzKSsiPC9zcGFuPiI6IiIpKyc8c3BhbiBjbGFzcz0icWMtZmlsZS1uYW1lIj4nK3AobykrIjwvc3Bhbj48L3NwYW4+IitsKyI8L2Rpdj4ifSkuam9pbigiIik7cmV0dXJuIHR8fCc8ZGl2IGNsYXNzPSJxYy1lbXB0eSI+XHU2Q0ExXHU2NzA5XHU1M0VGXHU2M0QwXHU0RUE0XHU3Njg0XHU2NTM5XHU1MkE4XHUzMDAyPC9kaXY+J31mdW5jdGlvbiBHcigpe3JldHVybiBuLnF1aWNrQ29tbWl0U3VibWl0dGluZ3x8bi5xdWlja0NvbW1pdFB1c2hpbmd9ZnVuY3Rpb24gUXIoZSx0LHIsaSl7cmV0dXJuJzxkaXYgY2xhc3M9InFjLXBhaXInKyhpPyIgIitpOiIiKSsnIj48ZGl2IGNsYXNzPSJxYy1wYWlyLWxhYmVsIj4nK3AoZSkrJzwvZGl2PjxkaXYgY2xhc3M9InFjLXBhaXItZmxvdyI+PGRpdiBjbGFzcz0icWMtcGFpci12YWx1ZSBxYy1wYWlyLXZhbHVlLS1mcm9tIj4nK3QrJzwvZGl2PjxkaXYgY2xhc3M9InFjLXBhaXItYXJyb3ciIGFyaWEtaGlkZGVuPSJ0cnVlIj5cdTIxOTI8L2Rpdj48ZGl2IGNsYXNzPSJxYy1wYWlyLXZhbHVlIHFjLXBhaXItdmFsdWUtLXRvIj4nK3IrIjwvZGl2PjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gaGMoKXt2YXIgZT1uLmdpdFN0YXR1c3x8e307aWYoZS5oYXNTdWJtb2R1bGU9PT0hMClyZXR1cm4hMDtmb3IodmFyIHQ9ZS5maWxlc3x8W10scj0wO3I8dC5sZW5ndGg7cisrKWlmKHRbcl0mJnRbcl0uaXNTdWJtb2R1bGU9PT0hMClyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiB5YyhlKXt2YXIgdD0hZXx8R3IoKSxyPWhjKCk7aWYobi5xdWlja0NvbW1pdFN1Ym1pdHRpbmcpe3ZhciBpPW4ucXVpY2tDb21taXRTdWJtb2R1bGVJbnRlbnQ/Ilx1RkYwOFx1NTQyQiBzdWJtb2R1bGVcdUZGMDkiOiIiLGE9KG4ucXVpY2tDb21taXRBdXRvR2VuZXJhdGluZz8iQUkgXHU3NTFGXHU2MjEwICsgXHU2M0QwXHU0RUE0XHU0RTJEXHUyMDI2IjoiXHU2MjY3XHU4ODRDXHU0RTJEXHUyMDI2IikraTtyZXR1cm4nPGRpdiBjbGFzcz0icWMtZG9jay13cmFwIj48ZGl2IGNsYXNzPSJxYy1kb2NrLWJ1c3kiIHJvbGU9InN0YXR1cyI+PHNwYW4gY2xhc3M9InFjLWRvY2stYnVzeS1kb3QiPjwvc3Bhbj4nK3AoYSkrIjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gdShvLGwsYyl7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icWMtY2hpcCBxYy1jaGlwLS0nK28rJyIgZGF0YS1jaGlwPSInK28rJyInKyhjPycgdGl0bGU9IicrcChjKSsnIic6IiIpKyh0PyIgZGlzYWJsZWQiOiIiKSsnPjxzcGFuIGNsYXNzPSJxYy1jaGlwLWRvdCIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48c3BhbiBjbGFzcz0icWMtY2hpcC1sYWJlbCI+JytsKyI8L3NwYW4+PC9idXR0b24+In12YXIgcz10P2U/IiI6Ilx1NURFNVx1NEY1Q1x1NTMzQVx1NUU3Mlx1NTFDMFx1RkYwQ1x1NjVFMFx1NTNFRlx1NjNEMFx1NEVBNCI6Ilx1NjJENlx1NTJBOFx1NzhDMVx1NTQzOFx1N0VDNFx1NTQwOCBceEI3IFx1NEUyMlx1OEZEQlx1NjNEMFx1NEVBNFx1NTMzQVx1NjI2N1x1ODg0QyBceEI3IFx1NTM1NVx1NTFGQlx1NzZGNFx1NjNBNVx1NjI2N1x1ODg0Q1x1OEJFNVx1OTg3OSIrKHI/IiBceEI3IFN1YiBcdTc0MDNcdTUzRUZcdTkwMDlcdUZGMENcdTdFQjNcdTUxNjVcdTU0MEVcdTkwMTJcdTVGNTJcdTU5MDRcdTc0MDYgc3VibW9kdWxlIjoiIik7cmV0dXJuJzxkaXYgY2xhc3M9InFjLWRvY2std3JhcCBxYy1kb2NrLXdyYXAtLW1hZ25ldGljIicrKHQ/JyBkYXRhLWRpc2FibGVkPSIxIic6IiIpKyc+PGRpdiBpZD0icWMtZG9jay1zdGFnZSIgY2xhc3M9InFjLWRvY2stc3RhZ2UiIGRhdGEtYWN0aW9uPSJjb21taXQiIGRhdGEtaG90PSIwIj48ZGl2IGlkPSJxYy1kb2NrLWZpZWxkIiBjbGFzcz0icWMtZG9jay1maWVsZCI+PGRpdiBpZD0icWMtZG9jay1jbHVzdGVyIiBjbGFzcz0icWMtZG9jay1jbHVzdGVyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9kaXY+Jyt1KCJjb21taXQiLCJDb21taXQiKSt1KCJ0YWciLCJUYWciKSt1KCJwdXNoIiwiUHVzaCIpKyhyP3UoInN1YiIsIlN1YiIsIlx1NjNEMFx1NEVBNFx1NzIzNlx1NEVEM1x1NUU5M1x1NUU3Nlx1OTAxMlx1NUY1Mlx1OEZEQlx1NTE2NSBzdWJtb2R1bGVcdUZGMDhjb21taXQgLyB0YWcgLyBcdTUyMDZcdTUyMkJcdTYzQThcdTkwMDFcdUZGMDkiKToiIikrJzwvZGl2PjxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0icWMtZG9jay1sYXVuY2giIGNsYXNzPSJxYy1kb2NrLWxhdW5jaCInKyh0PyIgZGlzYWJsZWQiOiIiKSsnIGFyaWEtbGFiZWw9Ilx1NjI2N1x1ODg0Q1x1NjNEMFx1NEVBNCI+PHNwYW4gY2xhc3M9InFjLWRvY2stbGF1bmNoLWFycm93IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIyMiIgaGVpZ2h0PSIyMiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi4zIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik01IDEyaDEyTTEzIDZsNiA2LTYgNiIvPjwvc3ZnPjwvc3Bhbj48c3BhbiBpZD0icWMtZG9jay1sYXVuY2gtbGFiZWwiIGNsYXNzPSJxYy1kb2NrLWxhdW5jaC1sYWJlbCI+XHU2M0QwXHU0RUE0PC9zcGFuPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9InFjLWRvY2staGludCI+JytwKHMpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIGJjKCl7dmFyIGU9bi5xdWlja0NvbW1pdFJlc3VsdDtpZighZSlyZXR1cm4iIjt2YXIgdD1lLm9sZENvbW1pdEhhc2g/Ijxjb2RlPiIrcChlLm9sZENvbW1pdEhhc2gpKyI8L2NvZGU+IisoZS5vbGRDb21taXRTdWJqZWN0PyI8c3Bhbj4iK3AoZS5vbGRDb21taXRTdWJqZWN0KSsiPC9zcGFuPiI6IiIpOic8c3BhbiBjbGFzcz0icWMtbXV0ZWQiPlx1NjVFMDwvc3Bhbj4nLHI9ZS5jb21taXRIYXNoPyI8Y29kZT4iK3AoZS5jb21taXRIYXNoKSsiPC9jb2RlPjxzcGFuPiIrcChlLmNvbW1pdE1lc3NhZ2V8fCIiKSsiPC9zcGFuPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NUUwPC9zcGFuPicsaT1lLm9sZFRhZz8iPGNvZGU+IitwKGUub2xkVGFnKSsiPC9jb2RlPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NUUwIHRhZzwvc3Bhbj4nLGE9ZS50YWdOYW1lPyI8Y29kZT4iK3AoZS50YWdOYW1lKSsiPC9jb2RlPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NzJBXHU2MjUzIHRhZzwvc3Bhbj4nLHU9ZS5wdXNoZWQ/JzxzcGFuIGNsYXNzPSJxYy1yZXN1bHQtcHVzaGVkIj5cdTVERjJcdTYzQThcdTkwMDE8L3NwYW4+JzonPGJ1dHRvbiBpZD0icXVpY2stY29tbWl0LXB1c2gtYWZ0ZXItYnRuIiBjbGFzcz0iYnRuIGJ0bi1wcmltYXJ5IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIicrKG4ucXVpY2tDb21taXRQdXNoaW5nPyIgZGlzYWJsZWQiOiIiKSsiPiIrKG4ucXVpY2tDb21taXRQdXNoaW5nPyJcdTYzQThcdTkwMDFcdTRFMkQuLi4iOiJQdXNoICYgQ2xvc2UiKSsiPC9idXR0b24+IjtyZXR1cm4nPHNlY3Rpb24gY2xhc3M9InFjLXJlc3VsdC1wYW5lbCI+JytRcigiQ29tbWl0Iix0LHIsIiIpK1FyKCJUYWciLGksYSwicWMtcGFpci0tdGFnIikrKGUucHVzaEVycm9yfHxuLnF1aWNrQ29tbWl0UHVzaEVycm9yPyc8cCBjbGFzcz0iZXJyb3ItbWVzc2FnZSI+JytwKGUucHVzaEVycm9yfHxuLnF1aWNrQ29tbWl0UHVzaEVycm9yKSsiPC9wPiI6IiIpKyc8ZGl2IGNsYXNzPSJxYy1yZXN1bHQtYWN0aW9ucyI+PGJ1dHRvbiBpZD0icXVpY2stY29tbWl0LWNhbmNlbC1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIj5cdTUxNzNcdTk1RUQ8L2J1dHRvbj4nK3UrIjwvZGl2Pjwvc2VjdGlvbj4ifWZ1bmN0aW9uIE51KCl7dmFyIGU9bi5naXRTdGF0dXN8fHt9LHQ9bi5xdWlja0NvbW1pdEZvcm18fHtjdXN0b21NZXNzYWdlOiIiLHRhZzoiIix0YWdFZGl0ZWQ6ITF9LHI9KGUubW9kaWZpZWRDb3VudHx8MCk+MCxpPW4ucXVpY2tDb21taXRHZW5lcmF0aW5nLGE9ZS5sYXN0Q29tbWl0fHx7fSx1PWEuc2hvcnRIYXNoPyI8Y29kZT4iK3AoYS5zaG9ydEhhc2gpKyI8L2NvZGU+PHNwYW4+IitwKGEuc3ViamVjdHx8IiIpKyI8L3NwYW4+IjplLmhlYWQ/Ijxjb2RlPiIrcChlLmhlYWQuc3Vic3RyaW5nKDAsNykpKyI8L2NvZGU+IjonPHNwYW4gY2xhc3M9InFjLW11dGVkIj5cdTY1RTAgY29tbWl0PC9zcGFuPicscz1lLmxhdGVzdFRhZz8iPGNvZGU+IitwKGUubGF0ZXN0VGFnKSsiPC9jb2RlPiI6JzxzcGFuIGNsYXNzPSJxYy1tdXRlZCI+XHU2NUUwIHRhZzwvc3Bhbj4nLG89JzxpbnB1dCB0eXBlPSJ0ZXh0IiBpZD0icXVpY2stY29tbWl0LXRhZyIgY2xhc3M9ImZpZWxkLWlucHV0IHFjLXRhZy1maWVsZC1pbnB1dCIgcGxhY2Vob2xkZXI9Ilx1NzU1OVx1N0E3QVx1NTIxOSBBSSBcdTc1MUZcdTYyMTAiIHZhbHVlPSInK3AodC50YWd8fCIiKSsnIicrKG4ucXVpY2tDb21taXRTdWJtaXR0aW5nPyIgZGlzYWJsZWQiOiIiKSsiPiIsbD0nPHRleHRhcmVhIGlkPSJxdWljay1jb21taXQtbWVzc2FnZSIgY2xhc3M9ImZpZWxkLWlucHV0IHFjLW1lc3NhZ2UtaW5wdXQiIHJvd3M9IjMiIHBsYWNlaG9sZGVyPSJOZXcgY29tbWl0IG1lc3NhZ2UiICcrKG4ucXVpY2tDb21taXRTdWJtaXR0aW5nPyJkaXNhYmxlZCI6IiIpKyI+IitwKHQuY3VzdG9tTWVzc2FnZXx8IiIpKyI8L3RleHRhcmVhPiIsYz1bXTtjLnB1c2goZS5icmFuY2h8fCIobm8gYnJhbmNoKSIpLGMucHVzaChyPyhlLm1vZGlmaWVkQ291bnR8fDApKyIgXHU0RTJBXHU2NTM5XHU1MkE4IjoiXHU1REU1XHU0RjVDXHU1MzNBXHU1RTcyXHU1MUMwIiksdHlwZW9mIGUuYWhlYWQ9PSJudW1iZXIiJiZlLmFoZWFkPjAmJmMucHVzaCgiXHUyMTkxIitlLmFoZWFkKSx0eXBlb2YgZS5iZWhpbmQ9PSJudW1iZXIiJiZlLmJlaGluZD4wJiZjLnB1c2goIlx1MjE5MyIrZS5iZWhpbmQpO3ZhciBmPW4ucXVpY2tDb21taXRSZXN1bHQ/IiI6JzxzZWN0aW9uIGNsYXNzPSJxYy1yZWxlYXNlLXBhbmVsIj48ZGl2IGNsYXNzPSJxYy1tZXNzYWdlLWhlYWRlciI+PHNwYW4gY2xhc3M9InFjLXNlY3Rpb24tdGl0bGUiPk5ldzwvc3Bhbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgaWQ9InF1aWNrLWNvbW1pdC1haS1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBxYy1haS1idG4iJysoaT8iIGRpc2FibGVkIjoiIikrJyB0aXRsZT0iQUkgXHU3NTFGXHU2MjEwIGNvbW1pdCBtZXNzYWdlIFx1NEUwRSB0YWciPjxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTMiIGhlaWdodD0iMTMiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNOCAxLjVsMS40IDMuNkwxMyA2LjUgOS40IDcuOSA4IDExLjUgNi42IDcuOSAzIDYuNWwzLjYtMS40TDggMS41ek0xMi41IDEwLjVsLjcgMS44IDEuOC43LTEuOC43LS43IDEuOC0uNy0xLjgtMS44LS43IDEuOC0uNy43LTEuOHoiIGZpbGw9ImN1cnJlbnRDb2xvciIvPjwvc3ZnPjxzcGFuPicrKGk/Ilx1NzUxRlx1NjIxMFx1NEUyRC4uLiI6IkFJIikrIjwvc3Bhbj48L2J1dHRvbj48L2Rpdj4iK1FyKCJDb21taXQiLHUsbCwicWMtcGFpci0tY29tbWl0IikrUXIoIlRhZyIscyxvLCJxYy1wYWlyLS10YWciKSsobi5xdWlja0NvbW1pdEVycm9yPyc8cCBjbGFzcz0iZXJyb3ItbWVzc2FnZSI+JytwKG4ucXVpY2tDb21taXRFcnJvcikrIjwvcD4iOiIiKSt5YyhyKSsnPGRpdiBjbGFzcz0icWMtbW9kYWwtYWN0aW9ucyI+PGJ1dHRvbiBpZD0icXVpY2stY29tbWl0LWNhbmNlbC1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIj5cdTUzRDZcdTZEODg8L2J1dHRvbj48L2Rpdj48L3NlY3Rpb24+JyxkPWJjKCk7cmV0dXJuJzxzZWN0aW9uIGlkPSJxdWljay1jb21taXQtbW9kYWwiIGNsYXNzPSJtb2RhbC1iYWNrZHJvcCcrKG4ucXVpY2tDb21taXRPcGVuPyIiOiIgaGlkZGVuIikrJyI+PGRpdiBjbGFzcz0ibW9kYWwgcXVpY2stY29tbWl0LW1vZGFsIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0icXVpY2stY29tbWl0LXRpdGxlIj48ZGl2IGNsYXNzPSJtb2RhbC1oZWFkZXIiPjxkaXY+PGgyIGlkPSJxdWljay1jb21taXQtdGl0bGUiIGNsYXNzPSJtb2RhbC10aXRsZSI+XHU1RkVCXHU2Mzc3XHU2M0QwXHU0RUE0PC9oMj48cCBjbGFzcz0ibW9kYWwtc3VidGl0bGUiPicrcChjLmpvaW4oIiBceEI3ICIpKSsnPC9wPjwvZGl2PjxidXR0b24gaWQ9InF1aWNrLWNvbW1pdC1jbG9zZS1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij4nK2YrZCsiPC9kaXY+PC9kaXY+PC9zZWN0aW9uPiJ9ZnVuY3Rpb24gRWMoKXtyZXR1cm4nPHNlY3Rpb24gaWQ9Indvcmt0cmVlLW1lcmdlLW1vZGFsIiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AgaGlkZGVuIj48ZGl2IGNsYXNzPSJtb2RhbCB3b3JrdHJlZS1tZXJnZS1tb2RhbCI+PGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj48ZGl2PjxoMiBjbGFzcz0ibW9kYWwtdGl0bGUiPlx1NTQwOFx1NUU3NiBXb3JrdHJlZTwvaDI+PHAgY2xhc3M9Im1vZGFsLXN1YnRpdGxlIj5cdTY4QzBcdTY3RTVcdTVGNTNcdTUyNERcdTRFRkJcdTUyQTFcdTUyMDZcdTY1MkZcdTVFNzZcdTVGRUJcdTYzNzdcdTU0MDhcdTVFNzZcdTUyMzBcdTRFM0JcdTUyMDZcdTY1MkZcdTMwMDI8L3A+PC9kaXY+PGJ1dHRvbiBpZD0iY2xvc2Utd29ya3RyZWUtbWVyZ2UtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4taWNvbiBtb2RhbC1jbG9zZS1idG4iIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEIj48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ibW9kYWwtYm9keSI+PGRpdiBpZD0id29ya3RyZWUtbWVyZ2UtY29udGVudCIgY2xhc3M9Indvcmt0cmVlLW1lcmdlLWNvbnRlbnQiPjwvZGl2PjxwIGlkPSJ3b3JrdHJlZS1tZXJnZS1lcnJvciIgY2xhc3M9ImVycm9yLW1lc3NhZ2UgaGlkZGVuIj48L3A+PGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2UtYWN0aW9ucyI+PGJ1dHRvbiBpZD0id29ya3RyZWUtbWVyZ2UtY2FuY2VsLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5Ij5cdTUzRDZcdTZEODg8L2J1dHRvbj48YnV0dG9uIGlkPSJ3b3JrdHJlZS1tZXJnZS1jb25maXJtLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSI+XHU3ODZFXHU4QkE0XHU1NDA4XHU1RTc2XHU1RTc2XHU2RTA1XHU3NDA2PC9idXR0b24+PC9kaXY+PC9kaXY+PC9kaXY+PC9zZWN0aW9uPid9ZnVuY3Rpb24gRmMoKXtyZXR1cm4nPHNlY3Rpb24gaWQ9InNldHRpbmdzLW1vZGFsIiBjbGFzcz0ibW9kYWwtYmFja2Ryb3AgaGlkZGVuIj48ZGl2IGNsYXNzPSJtb2RhbCBzZXR0aW5ncy1tb2RhbCI+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+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0soImdsb2JlIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+V2ViIFx1N0FFRjwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTZENEZcdTg5QzhcdTU2NjhcdThCQkZcdTk1RUVcdTc2ODRcdTY3MERcdTUyQTFcdTcyNDhcdTY3MkM8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NjcwMFx1NjVCMFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy1sYXRlc3QtdmVyc2lvbiI+LTwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy11cGRhdGUtYWN0aW9ucyI+PGJ1dHRvbiBpZD0iY2hlY2stdXBkYXRlLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSI+XHU2OEMwXHU2N0U1XHU2NkY0XHU2NUIwPC9idXR0b24+PGJ1dHRvbiBpZD0iZG8tdXBkYXRlLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSBidG4tc20gaGlkZGVuIj5cdTY2RjRcdTY1QjBcdTUyMzBcdTY3MDBcdTY1QjBcdTcyNDg8L2J1dHRvbj48YnV0dG9uIGlkPSJkby1yZXN0YXJ0LWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tc3VjY2VzcyBidG4tc20gaGlkZGVuIj5cdTkxQ0RcdTU0MkZcdTc1MUZcdTY1NDg8L2J1dHRvbj48L2Rpdj48cCBpZD0idXBkYXRlLW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIj5CZXRhIFx1OTAxQVx1OTA1Mzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiPlx1NjZGNFx1NjVCMFx1NTIzMCBucG0gYmV0YSBcdTcyNDhcdTY3MkNcdUZGMDh0YWcgKyBjb21taXQgXHU1QzNFXHU2ODA3XHVGRjA5XHVGRjBDXHU1QzFEXHU5QzlDXHU2NUIwXHU1MjlGXHU4MEZEXHVGRjBDXHU1M0VGXHU4MEZEXHU0RTBEXHU3QTMzXHU1QjlBXHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJiZXRhLWNoYW5uZWwtdG9nZ2xlIiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSI+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRpdGxlIj5cdTgxRUFcdTUyQThcdTY2RjRcdTY1QjA8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIj5cdTY4QzBcdTZENEJcdTUyMzBcdTY1QjBcdTcyNDhcdTY3MkNcdTVDMDZcdTgxRUFcdTUyQThcdTRFMEJcdThGN0RcdTVCODlcdTg4QzVcdTVFNzZcdTkxQ0RcdTU0MkZcdTY3MERcdTUyQTFcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImF1dG8tdXBkYXRlLXdlYi10b2dnbGUiIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIj48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24gaGlkZGVuIiBpZD0iYW5kcm9pZC1hcGstc2VjdGlvbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0soInNtYXJ0cGhvbmUiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5BbmRyb2lkIEFwcDwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTUzOUZcdTc1MUZcdTVCQTJcdTYyMzdcdTdBRUZcdTcyNDhcdTY3MkNcdTRFMEUgQVBLIFx1NEUwQlx1OEY3RDwvcD48L2Rpdj48L2Rpdj48ZGl2IGlkPSJhbmRyb2lkLWFway1jdXJyZW50LXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBoaWRkZW4iPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1sYWJlbCI+XHU1RjUzXHU1MjREXHU3MjQ4XHU2NzJDPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy12YWx1ZSIgaWQ9InNldHRpbmdzLWFuZHJvaWQtYXBrLWN1cnJlbnQiPi08L3NwYW4+PC9kaXY+PGRpdiBpZD0iYW5kcm9pZC1hcGstZ2l0aHViLXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBzZXR0aW5ncy1hYm91dC1yb3ctYWN0aW9uIGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTdFQkZcdTRFMEFcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIHNldHRpbmdzLXZhbHVlLWZsZXgiIGlkPSJzZXR0aW5ncy1hbmRyb2lkLWFway1naXRodWIiPi08L3NwYW4+PGJ1dHRvbiBpZD0iZG93bmxvYWQtZ2l0aHViLWFway1idG4iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20gaGlkZGVuIiB0eXBlPSJidXR0b24iPlx1NEUwQlx1OEY3RDwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImFuZHJvaWQtYXBrLWxvY2FsLXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBzZXR0aW5ncy1hYm91dC1yb3ctYWN0aW9uIGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTY3MkNcdTU3MzBcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIHNldHRpbmdzLXZhbHVlLWZsZXgiIGlkPSJzZXR0aW5ncy1hbmRyb2lkLWFway1sb2NhbCI+LTwvc3Bhbj48YnV0dG9uIGlkPSJkb3dubG9hZC1sb2NhbC1hcGstYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTRFMEJcdThGN0Q8L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJhbmRyb2lkLWF1dG8tdXBkYXRlLXJvdyIgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3cgaGlkZGVuIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGV4dCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSI+XHU4MUVBXHU1MkE4XHU2NkY0XHU2NUIwPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyIgaWQ9ImFuZHJvaWQtYXV0by11cGRhdGUtaGludCI+XHU2OEMwXHU2RDRCXHU1MjMwXHU2NUIwXHU3MjQ4IEFQSyBcdTY1RjZcdTgxRUFcdTUyQThcdTYyQzlcdThENzdcdTRFMEJcdThGN0RcdUZGMENcdTVCODlcdTg4QzVcdTRFQ0RcdTk3MDBcdTU3MjhcdTdDRkJcdTdFREZcdTRFMkRcdTc4NkVcdThCQTRcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImF1dG8tdXBkYXRlLWFway10b2dnbGUiIGNsYXNzPSJzd2l0Y2gtdG9nZ2xlIj48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PHAgaWQ9ImFuZHJvaWQtYXBrLW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uIGhpZGRlbiIgaWQ9Im1hY29zLWRtZy1zZWN0aW9uIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrSygiZGVza3RvcCIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPm1hY09TIEFwcDwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTUzOUZcdTc1MUZcdTVCQTJcdTYyMzdcdTdBRUZcdTcyNDhcdTY3MkNcdTRFMEUgRE1HIFx1NEUwQlx1OEY3RDwvcD48L2Rpdj48L2Rpdj48ZGl2IGlkPSJtYWNvcy1kbWctY3VycmVudC1yb3ciIGNsYXNzPSJzZXR0aW5ncy1hYm91dC1yb3cgaGlkZGVuIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NUY1M1x1NTI0RFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUiIGlkPSJzZXR0aW5ncy1tYWNvcy1kbWctY3VycmVudCI+LTwvc3Bhbj48L2Rpdj48ZGl2IGlkPSJtYWNvcy1kbWctZ2l0aHViLXJvdyIgY2xhc3M9InNldHRpbmdzLWFib3V0LXJvdyBzZXR0aW5ncy1hYm91dC1yb3ctYWN0aW9uIGhpZGRlbiI+PHNwYW4gY2xhc3M9InNldHRpbmdzLWxhYmVsIj5cdTdFQkZcdTRFMEFcdTcyNDhcdTY3MkM8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLXZhbHVlIHNldHRpbmdzLXZhbHVlLWZsZXgiIGlkPSJzZXR0aW5ncy1tYWNvcy1kbWctZ2l0aHViIj4tPC9zcGFuPjxidXR0b24gaWQ9ImRvd25sb2FkLWdpdGh1Yi1kbWctYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTRFMEJcdThGN0Q8L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJtYWNvcy1kbWctbG9jYWwtcm93IiBjbGFzcz0ic2V0dGluZ3MtYWJvdXQtcm93IHNldHRpbmdzLWFib3V0LXJvdy1hY3Rpb24gaGlkZGVuIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtbGFiZWwiPlx1NjcyQ1x1NTczMFx1NzI0OFx1NjcyQzwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdmFsdWUgc2V0dGluZ3MtdmFsdWUtZmxleCIgaWQ9InNldHRpbmdzLW1hY29zLWRtZy1sb2NhbCI+LTwvc3Bhbj48YnV0dG9uIGlkPSJkb3dubG9hZC1sb2NhbC1kbWctYnRuIiBjbGFzcz0iYnRuIGJ0bi1zZWNvbmRhcnkgYnRuLXNtIGhpZGRlbiIgdHlwZT0iYnV0dG9uIj5cdTRFMEJcdThGN0Q8L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJtYWNvcy1hdXRvLXVwZGF0ZS1yb3ciIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtcm93IGhpZGRlbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLXRleHQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtdGl0bGUiPlx1ODFFQVx1NTJBOFx1NjZGNFx1NjVCMDwvc3Bhbj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtdG9nZ2xlLWRlc2MiIGlkPSJtYWNvcy1hdXRvLXVwZGF0ZS1oaW50Ij5cdTY4QzBcdTZENEJcdTUyMzBcdTY1QjBcdTcyNDggRE1HIFx1NUMwNlx1ODFFQVx1NTJBOFx1NEUwQlx1OEY3RFx1NUU3Nlx1NjMwMlx1OEY3RFx1MzAwMjwvc3Bhbj48L2Rpdj48bGFiZWwgY2xhc3M9InNldHRpbmdzLXN3aXRjaCI+PGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iYXV0by11cGRhdGUtZG1nLXRvZ2dsZSIgY2xhc3M9InN3aXRjaC10b2dnbGUiPjxzcGFuIGNsYXNzPSJzd2l0Y2gtc2xpZGVyIj48L3NwYW4+PC9sYWJlbD48L2Rpdj48cCBpZD0ibWFjb3MtZG1nLW1lc3NhZ2UiIGNsYXNzPSJoaW50IGhpZGRlbiI+PC9wPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uIiBpZD0iYW5kcm9pZC1jb25uZWN0LXNlY3Rpb24iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytLKCJsaW5rIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+QXBwIFx1OEZERVx1NjNBNVx1NzgwMTwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTdDOThcdThEMzRcdTUyMzAgQW5kcm9pZCBBcHAgXHU1MzczXHU1M0VGXHU4MUVBXHU1MkE4XHU4RkRFXHU2M0E1XHVGRjBDXHU2NUUwXHU5NzAwXHU1QkM2XHU3ODAxXHVGRjFCXHU2NTM5XHU1QkM2XHU3ODAxXHU1NDBFXHU1OTMxXHU2NTQ4XHUzMDAyPC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLWNvbm5lY3QtdXJsLWJveCI+PGNvZGUgaWQ9ImFuZHJvaWQtY29ubmVjdC1jb2RlIiBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC11cmwtdGV4dCI+LTwvY29kZT48YnV0dG9uIGlkPSJjb3B5LWNvbm5lY3QtY29kZS1idXR0b24iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NTkwRFx1NTIzNlx1OEZERVx1NjNBNVx1NzgwMSI+XHU1OTBEXHU1MjM2PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC1xci1ib3giPjxkaXYgY2xhc3M9InNldHRpbmdzLWNvbm5lY3QtcXItd3JhcCIgaWQ9ImFuZHJvaWQtY29ubmVjdC1xci13cmFwIiB0aXRsZT0iXHU3MEI5XHU1MUZCXHU2NTNFXHU1OTI3Ij48Y2FudmFzIGlkPSJhbmRyb2lkLWNvbm5lY3QtcXIiIHdpZHRoPSIxODAiIGhlaWdodD0iMTgwIj48L2NhbnZhcz48ZGl2IGNsYXNzPSJzZXR0aW5ncy1jb25uZWN0LXFyLWVtcHR5IiBpZD0iYW5kcm9pZC1jb25uZWN0LXFyLWVtcHR5Ij5cdTc1MUZcdTYyMTBcdTRFMkRcdTIwMjY8L2Rpdj48L2Rpdj48cCBjbGFzcz0ic2V0dGluZ3MtY29ubmVjdC1xci1oaW50Ij5cdTc1MjggV2FuZCBBcHAgXHU2MjZCXHU0RTAwXHU2MjZCXHVGRjBDXHU1MzczXHU1M0VGXHU0RTAwXHU5NTJFXHU1ODZCXHU1MTY1XHU2NzBEXHU1MkExXHU1NjY4XHU1NzMwXHU1NzQwXHU0RTBFXHU4RkRFXHU2M0E1XHU3ODAxXHUzMDAyPC9wPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXBhbmVsIiBpZD0ic2V0dGluZ3MtdGFiLW5vdGlmaWNhdGlvbnMiIHJvbGU9InRhYnBhbmVsIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1wYW5lbC1oZWFkZXIiPjxoMyBjbGFzcz0ic2V0dGluZ3MtcGFuZWwtdGl0bGUiPlx1OTAxQVx1NzdFNTwvaDM+PHAgY2xhc3M9InNldHRpbmdzLXBhbmVsLWRlc2MiPlx1OEJCRVx1N0Y2RVx1NjNEMFx1NzkzQVx1OTdGM1x1MzAwMVx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1NTQ4Q1x1NkQ0Rlx1ODlDOFx1NTY2OFx1OTAxQVx1NzdFNVx1NzY4NFx1ODg0Q1x1NEUzQVx1MzAwMjwvcD48L2Rpdj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0soImJlbGwiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5cdTkwMUFcdTc3RTVcdTUwNEZcdTU5N0Q8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU2M0QwXHU3OTNBXHU5N0YzXHU0RTBFXHU1RTk0XHU3NTI4XHU1MTg1XHU5MDFBXHU3N0U1XHU2QzE0XHU2Q0UxPC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48bGFiZWwgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSIgZm9yPSJjZmctbm90aWYtc291bmQiPlx1NjRBRFx1NjUzRVx1NjNEMFx1NzkzQVx1OTdGMzwvbGFiZWw+PHNwYW4gY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1kZXNjIj5cdTkxQ0RcdTg5ODFcdTkwMUFcdTc3RTVcdUZGMDhcdTcyNDhcdTY3MkNcdTY2RjRcdTY1QjBcdTMwMDFcdTY3NDNcdTk2NTBcdTdCNDlcdTVGODVcdTdCNDlcdUZGMDlcdTY1RjZcdTY0QURcdTY1M0VcdTY3RDRcdTU0OENcdTYzRDBcdTc5M0FcdTk3RjNcdTMwMDI8L3NwYW4+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCBpZD0iY2ZnLW5vdGlmLXNvdW5kIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXJhbmdlLXJvdyIgaWQ9Im5vdGlmLXZvbHVtZS1maWVsZCI+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1yYW5nZS1sYWJlbCIgZm9yPSJjZmctbm90aWYtdm9sdW1lIj5cdTk3RjNcdTkxQ0Y8L2xhYmVsPjxpbnB1dCBpZD0iY2ZnLW5vdGlmLXZvbHVtZSIgdHlwZT0icmFuZ2UiIG1pbj0iMCIgbWF4PSIxMDAiIHN0ZXA9IjUiIGNsYXNzPSJzZXR0aW5ncy1yYW5nZSIgLz48c3BhbiBpZD0iY2ZnLW5vdGlmLXZvbHVtZS12YWwiIGNsYXNzPSJzZXR0aW5ncy1yYW5nZS12YWx1ZSI+ODAlPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48bGFiZWwgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSIgZm9yPSJjZmctbm90aWYtYnViYmxlIj5cdTVFOTRcdTc1MjhcdTUxODVcdTkwMUFcdTc3RTVcdTZDMTRcdTZDRTE8L2xhYmVsPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy10b2dnbGUtZGVzYyI+XHU1NzI4XHU5ODc1XHU5NzYyXHU5ODc2XHU5MEU4XHU1RjM5XHU1MUZBXHU2RDZFXHU1MkE4XHU5MDFBXHU3N0U1XHU2QzE0XHU2Q0UxXHUzMDAyPC9zcGFuPjwvZGl2PjxsYWJlbCBjbGFzcz0ic2V0dGluZ3Mtc3dpdGNoIj48aW5wdXQgaWQ9ImNmZy1ub3RpZi1idWJibGUiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSIgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciI+PC9zcGFuPjwvbGFiZWw+PC9kaXY+PC9kaXY+PGRpdiBpZD0ibmF0aXZlLXNvdW5kLXNlY3Rpb24iIGNsYXNzPSJzZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbiBoaWRkZW4iPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZCI+PHNwYW4gY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taWNvbiI+JytLKCJtdXNpYyIse3NpemU6MTgsc3Ryb2tlV2lkdGg6MS43fSkrJzwvc3Bhbj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQtdGV4dCI+PGg0IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWRpbmciPlx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1OTRDM1x1NThGMDwvaDQ+PHAgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24tc3ViIj5cdTkwMDlcdTYyRTkgQW5kcm9pZCBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTRGN0ZcdTc1MjhcdTc2ODRcdTk0QzNcdTU4RjA8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uIj48c2VsZWN0IGlkPSJuYXRpdmUtc291bmQtc2VsZWN0IiBjbGFzcz0iZmllbGQtaW5wdXQgZmllbGQtc2VsZWN0Ij48L3NlbGVjdD48YnV0dG9uIGlkPSJuYXRpdmUtc291bmQtcHJldmlldyIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSBidG4td2l0aC1pY29uIiB0eXBlPSJidXR0b24iPicrSygicGxheSIse3NpemU6MTEsc3Ryb2tlV2lkdGg6MS44LGZpbGw6ImN1cnJlbnRDb2xvciJ9KSsnPHNwYW4+XHU4QkQ1XHU1NDJDPC9zcGFuPjwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgaWQ9Im5hdGl2ZS1oYXB0aWMtc2VjdGlvbiIgY2xhc3M9InNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uIGhpZGRlbiI+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkIj48c3BhbiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1pY29uIj4nK0soInZpYnJhdGUiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGRpdiBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHQiPjxoNCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5nIj5cdTg5RTZcdTYxMUZcdTUzQ0RcdTk5ODg8L2g0PjxwIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLXN1YiI+XHU2MzA5XHU5NEFFXHU2NENEXHU0RjVDXHU1NDhDXHU0RUZCXHU1MkExXHU1QjhDXHU2MjEwXHU2NUY2XHU2M0QwXHU0RjlCXHU2MzJGXHU1MkE4XHU1M0NEXHU5OTg4PC9wPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS1yb3ciPjxkaXYgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10ZXh0Ij48bGFiZWwgY2xhc3M9InNldHRpbmdzLXRvZ2dsZS10aXRsZSIgZm9yPSJjZmctaGFwdGljLWVuYWJsZWQiPlx1NTQyRlx1NzUyOFx1ODlFNlx1NjExRlx1NTNDRFx1OTk4ODwvbGFiZWw+PC9kaXY+PGxhYmVsIGNsYXNzPSJzZXR0aW5ncy1zd2l0Y2giPjxpbnB1dCBpZD0iY2ZnLWhhcHRpYy1lbmFibGVkIiB0eXBlPSJjaGVja2JveCIgY2xhc3M9InN3aXRjaC10b2dnbGUiIC8+PHNwYW4gY2xhc3M9InN3aXRjaC1zbGlkZXIiPjwvc3Bhbj48L2xhYmVsPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uIj48ZGl2IGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWhlYWQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1zZWN0aW9uLWljb24iPicrSygiZ2xvYmUiLHtzaXplOjE4LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+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+JytLKCJwYWxldHRlIix7c2l6ZToxOCxzdHJva2VXaWR0aDoxLjd9KSsnPC9zcGFuPjxkaXYgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZC10ZXh0Ij48aDQgY2xhc3M9InNldHRpbmdzLXNlY3Rpb24taGVhZGluZyI+XHU1RTk0XHU3NTI4XHU1NkZFXHU2ODA3PC9oND48cCBjbGFzcz0ic2V0dGluZ3Mtc2VjdGlvbi1zdWIiPlx1OTAwOVx1NjJFOSBBcHAgXHU1NDJGXHU1MkE4XHU1NjY4XHU1NkZFXHU2ODA3XHVGRjBDXHU4RkQ0XHU1NkRFXHU2ODRDXHU5NzYyXHU1NDBFXHU3NTFGXHU2NTQ4PC9wPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImFwcC1pY29uLXBpY2tlciIgY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLXBpY2tlciI+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iIGRhdGEtaWNvbj0ic2hvcnRoYWlyIj48c3BhbiBjbGFzcz0ic2V0dGluZ3MtYXBwLWljb24tcHJldmlldyI+JytDaS51c2VyKyc8L3NwYW4+PHNwYW4gY2xhc3M9InNldHRpbmdzLWFwcC1pY29uLWxhYmVsIj5cdThENUJcdTUzNUFcdTg2NEVcdTU5OUU8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iIGRhdGEtaWNvbj0iZ2FyZmllbGQiPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1wcmV2aWV3Ij4nK0NpLmFzc2lzdGFudCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJzZXR0aW5ncy1hcHAtaWNvbi1sYWJlbCI+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+PC9wPjwvZGl2PjwvZGl2PjwvZGl2Pjwvc2VjdGlvbj4nfWZ1bmN0aW9uIE5tKGUpe3ZhciB0PWV0KCk7cmV0dXJuIGUuc2VsZWN0ZWRJZD8iIjonPGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1jb21wYWN0IiBpZD0iZm9sZGVyLXBpY2tlci1jb250YWluZXIiPjxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItY29tcGFjdC1yb3ciPjxzcGFuIGNsYXNzPSJmb2xkZXItcGlja2VyLWNvbXBhY3QtaWNvbiI+JytLKCJmb2xkZXIiLHtzaXplOjEzLHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGlucHV0IHR5cGU9InRleHQiIGlkPSJmb2xkZXItcGlja2VyLWlucHV0IiBjbGFzcz0iZm9sZGVyLXBpY2tlci1jb21wYWN0LWlucHV0IiB2YWx1ZT0iJytwKHQpKyciIHBsYWNlaG9sZGVyPSJcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTUiIGF1dG9jb21wbGV0ZT0ib2ZmIiAvPjxidXR0b24gdHlwZT0iYnV0dG9uIiBpZD0iZm9sZGVyLXBpY2tlci10b2dnbGUiIGNsYXNzPSJmb2xkZXItcGlja2VyLXRvZ2dsZSIgdGl0bGU9Ilx1OTAwOVx1NjJFOVx1NzZFRVx1NUY1NSIgYXJpYS1sYWJlbD0iXHU5MDA5XHU2MkU5XHU3NkVFXHU1RjU1Ij4nK0soImNoZXZyb25Eb3duIix7c2l6ZToxMSxzdHJva2VXaWR0aDoyfSkrJzwvYnV0dG9uPjwvZGl2PjxkaXYgaWQ9ImZvbGRlci1waWNrZXItZHJvcGRvd24iIGNsYXNzPSJmb2xkZXItcGlja2VyLWRyb3Bkb3duIGhpZGRlbiI+PGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlci1xdWljay1yb3ciPjxidXR0b24gY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stYnRuIiBkYXRhLXBhdGg9Ii90bXAiPlx1NEUzNFx1NjVGNjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stYnRuIiBkYXRhLXBhdGg9Ii8iPlx1NjgzOVx1NzZFRVx1NUY1NTwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZvbGRlci1waWNrZXItdmFsaWRhdGlvbiIgY2xhc3M9ImZvbGRlci1waWNrZXItdmFsaWRhdGlvbiI+PC9kaXY+PC9kaXY+J31mdW5jdGlvbiBqbShlKXt2YXIgdD1ldCgpLHI9dDtpZihlLnNlbGVjdGVkSWQpe3ZhciBpPWUuc2Vzc2lvbnMuZmluZChmdW5jdGlvbih1KXtyZXR1cm4gdS5pZD09PWUuc2VsZWN0ZWRJZH0pO3I9aSYmaS5jd2Q/aS5jd2Q6dH12YXIgYT1yO3JldHVybiBhLmxlbmd0aD4yOCYmKGE9Ii4uLiIrYS5zbGljZSgtMjUpKSwnPGRpdiBjbGFzcz0id29ya2luZy1kaXItaW5kaWNhdG9yIiBpZD0id29ya2luZy1kaXItaW5kaWNhdG9yIiB0aXRsZT0iJytwKHIpKyciIGRhdGEtcGF0aD0iJytwKHIpKyciPjxzcGFuIGNsYXNzPSJ3b3JraW5nLWRpci1pbmRpY2F0b3ItaWNvbiI+JytLKCJmb2xkZXIiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PHNwYW4gY2xhc3M9IndvcmtpbmctZGlyLWluZGljYXRvci1wYXRoIj4nK3AoYSkrIjwvc3Bhbj48L2Rpdj4ifWZ1bmN0aW9uIGp1KGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PURhdGUubm93KCkscj1uZXcgRGF0ZShlKS5nZXRUaW1lKCksaT1NYXRoLm1heCgwLHQtciksYT1NYXRoLmZsb29yKGkvMWUzKTtpZihhPDYwKXJldHVybiJcdTUyMUFcdTUyMUEiO3ZhciB1PU1hdGguZmxvb3IoYS82MCk7aWYodTw2MClyZXR1cm4gdSsiXHU1MjA2XHU5NDlGXHU1MjREIjt2YXIgcz1NYXRoLmZsb29yKHUvNjApO2lmKHM8MjQpcmV0dXJuIHMrIlx1NUMwRlx1NjVGNlx1NTI0RCI7dmFyIG89TWF0aC5mbG9vcihzLzI0KTtyZXR1cm4gbzwzMD9vKyJcdTU5MjlcdTUyNEQiOk1hdGguZmxvb3Ioby8zMCkrIlx1NEUyQVx1NjcwOFx1NTI0RCJ9ZnVuY3Rpb24gUnUoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9RGF0ZS5ub3coKSxyPW5ldyBEYXRlKGUpLmdldFRpbWUoKSxpPU1hdGgubWF4KDAsdC1yKSxhPU1hdGguZmxvb3IoaS8xZTMpLHU9TWF0aC5mbG9vcihhLzYwKSxzPU1hdGguZmxvb3IodS82MCk7cmV0dXJuIHM+MD9zKyJoIisodSU2MD4wP3UlNjArIm0iOiIiKTp1PjA/dSsibSI6YSsicyJ9ZnVuY3Rpb24gY3IoZSl7aWYoIWUpcmV0dXJuIiI7aWYoZS5hcmNoaXZlZClyZXR1cm4iXHU1REYyXHU1RjUyXHU2ODYzIjtpZihlLnBlcm1pc3Npb25CbG9ja2VkKXJldHVybiJcdTdCNDlcdTVGODVcdTYzODhcdTY3NDMiO2lmKHVlKGUpJiZlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpcmV0dXJuIlx1NjAxRFx1ODAwM1x1NEUyRCI7dmFyIHQ9e2lkbGU6Ilx1N0E3QVx1OTVGMiIsc3RvcHBlZDoiXHU1REYyXHU1MDVDXHU2QjYyIixydW5uaW5nOiJcdThGRDBcdTg4NENcdTRFMkQiLGV4aXRlZDoiXHU1REYyXHU5MDAwXHU1MUZBIixmYWlsZWQ6Ilx1NURGMlx1NTkzMVx1OEQyNSJ9O3JldHVybiB0W2Uuc3RhdHVzXXx8ZS5zdGF0dXN9ZnVuY3Rpb24gV3UoZSl7cmV0dXJuIGU/ZS5hcmNoaXZlZD8iYXJjaGl2ZWQiOmUucGVybWlzc2lvbkJsb2NrZWQ/InBlcm1pc3Npb24tYmxvY2tlZCI6dWUoZSkmJmUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodD8icnVubmluZyI6ZS5zdGF0dXN8fCIiOiIifWZ1bmN0aW9uIHdjKGUpe3JldHVybiBlP2UucGVybWlzc2lvbkJsb2NrZWQ/Ilx1N0I0OVx1NUY4NVx1NEY2MFx1NzY4NFx1NjM4OFx1Njc0MyI6ZS5zdGF0dXMhPT0icnVubmluZyI/IiI6ZS5pZD09PW4uc2VsZWN0ZWRJZCYmbi5jdXJyZW50VGFzayYmbi5jdXJyZW50VGFzay50aXRsZT9uLmN1cnJlbnRUYXNrLnRpdGxlOmUuY3VycmVudFRhc2tUaXRsZT9lLmN1cnJlbnRUYXNrVGl0bGU6IiI6IiJ9ZnVuY3Rpb24gQ2MoZSl7dmFyIHQ9ZSYmZS5tZXNzYWdlcztpZighdHx8dC5sZW5ndGg9PT0wKXJldHVybiIiO2Zvcih2YXIgcj10Lmxlbmd0aC0xO3I+PTA7ci0tKXt2YXIgaT10W3JdO2lmKCEoIWl8fGkucm9sZSE9PSJ1c2VyIikpe3ZhciBhPWkuY29udGVudDtpZih0eXBlb2YgYT09InN0cmluZyIpe3ZhciB1PWEudHJpbSgpO2lmKHUpcmV0dXJuIHU7Y29udGludWV9aWYoQXJyYXkuaXNBcnJheShhKSlmb3IodmFyIHM9MDtzPGEubGVuZ3RoO3MrKyl7dmFyIG89YVtzXTtpZighKCFvfHxvLnR5cGUhPT0idGV4dCJ8fCFvLnRleHQpJiYhby5fX3F1ZXVlZCl7dmFyIGw9U3RyaW5nKG8udGV4dCkudHJpbSgpO2lmKGwpcmV0dXJuIGx9fX19cmV0dXJuIiJ9ZnVuY3Rpb24gQmMoZSl7dmFyIHQ9ZSYmZS5tZXNzYWdlcztpZighdHx8dC5sZW5ndGg9PT0wKXJldHVybiIiO2Zvcih2YXIgcj10Lmxlbmd0aC0xO3I+PTA7ci0tKXt2YXIgaT10W3JdO2lmKGkucm9sZT09PSJhc3Npc3RhbnQiKXtmb3IodmFyIGE9aS5jb250ZW50fHxbXSx1PTA7dTxhLmxlbmd0aDt1KyspaWYoYVt1XS50eXBlPT09InRleHQiJiZhW3VdLnRleHQmJmFbdV0udGV4dC50cmltKCkpe3ZhciBzPWFbdV0udGV4dC50cmltKCk7cz1zLnJlcGxhY2UoL14jK1xzKy9nbSwiIikucmVwbGFjZSgvXCpcKi9nLCIiKS5yZXBsYWNlKC9gL2csIiIpO3ZhciBvPXMuc3BsaXQoYApgKVswXS50cmltKCk7cmV0dXJuIG8uc2xpY2UoMCwxMDApfX19cmV0dXJuIiJ9ZnVuY3Rpb24gSmkoZSx0KXt2YXIgcj1lLmlkPT09bi5zZWxlY3RlZElkPyIgYWN0aXZlIjoiIixpPW4uc2Vzc2lvbnNNYW5hZ2VNb2RlJiZuLnNlbGVjdGVkU2Vzc2lvbklkc1tlLmlkXT8iIHNlbGVjdGVkIjoiIixhPWNyKGUpLHU9V3UoZSkscz0iIixvPSR1KCJzZXNzaW9ucyIsZS5pZCwiXHU5MDA5XHU2MkU5XHU0RjFBXHU4QkREICIrZS5jb21tYW5kKTtpZigoZS5wcm92aWRlcj09PSJjbGF1ZGUifHxlLnByb3ZpZGVyPT09ImNvZGV4IikmJmUuY2xhdWRlU2Vzc2lvbklkJiZlLnN0YXR1cyE9PSJydW5uaW5nIiYmIW4uc2Vzc2lvbnNNYW5hZ2VNb2RlJiYhdWUoZSkpe3ZhciBsPWUucHJvdmlkZXI9PT0iY29kZXgiPyJcdTYwNjJcdTU5MEQgQ29kZXggXHU0RjFBXHU4QkREIjoiXHU2MDYyXHU1OTBEIENsYXVkZSBcdTRGMUFcdThCREQiO3M9JzxidXR0b24gY2xhc3M9InNlc3Npb24tYWN0aW9uLWJ0biIgZGF0YS1hY3Rpb249InJlc3VtZSIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSInK2wrJyIgdGl0bGU9IicrbCsnIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xIDR2Nmg2Ii8+PHBhdGggZD0iTTMuNTEgMTVhOSA5IDAgMTA1LjY0LTExLjM2TDMgMTAiLz48L3N2Zz48L2J1dHRvbj4nfXZhciBjPSFuLnNlc3Npb25zTWFuYWdlTW9kZSYmZS53b3JrdHJlZUVuYWJsZWQmJmUud29ya3RyZWUmJmUud29ya3RyZWUuYnJhbmNoJiZlLndvcmt0cmVlLnBhdGgsZj1lLndvcmt0cmVlTWVyZ2VTdGF0dXM9PT0ibWVyZ2VkIiYmZS53b3JrdHJlZU1lcmdlSW5mbyYmZS53b3JrdHJlZU1lcmdlSW5mby5jbGVhbnVwRG9uZT09PSExLGQ9ZS5zdGF0dXM9PT0icnVubmluZyJ8fGUud29ya3RyZWVNZXJnZVN0YXR1cz09PSJtZXJnaW5nIix2PWY/Ilx1OTFDRFx1OEJENVx1NkUwNVx1NzQwNiB3b3JrdHJlZSI6Ilx1NTQwOFx1NUU3Nlx1NTIzMFx1NEUzQlx1NTIwNlx1NjUyRiIsZz1jJiZlLndvcmt0cmVlTWVyZ2VTdGF0dXMhPT0ibWVyZ2VkIj8nPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIG1lcmdlLWJ0biIgZGF0YS1hY3Rpb249Indvcmt0cmVlLW1lcmdlIiBkYXRhLXNlc3Npb24taWQ9IicrZS5pZCsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9IicrcCh2KSsnIiB0aXRsZT0iJytwKHYpKyciJysoZD8iIGRpc2FibGVkIjoiIikrJz48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik03IDdoMTAiLz48cGF0aCBkPSJNNyAxMmgxMCIvPjxwYXRoIGQ9Ik03IDE3aDEwIi8+PHBhdGggZD0iTTUgN2wtMiAyIDIgMiIvPjxwYXRoIGQ9Ik0xOSAxNWwyIDItMiAyIi8+PC9zdmc+PC9idXR0b24+JzpmPyc8YnV0dG9uIGNsYXNzPSJzZXNzaW9uLWFjdGlvbi1idG4gbWVyZ2UtYnRuIiBkYXRhLWFjdGlvbj0id29ya3RyZWUtY2xlYW51cCIgZGF0YS1zZXNzaW9uLWlkPSInK2UuaWQrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTkxQ0RcdThCRDVcdTZFMDVcdTc0MDYgd29ya3RyZWUiIHRpdGxlPSJcdTkxQ0RcdThCRDVcdTZFMDVcdTc0MDYgd29ya3RyZWUiPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTMgNmgxOCIvPjxwYXRoIGQ9Ik04IDZWNGEyIDIgMCAwMTItMmg0YTIgMiAwIDAxMiAydjIiLz48cGF0aCBkPSJNMTkgNmwtMSAxNGEyIDIgMCAwMS0yIDJIOGEyIDIgMCAwMS0yLTJMNSA2Ii8+PC9zdmc+PC9idXR0b24+JzoiIixoPW4uc2Vzc2lvbnNNYW5hZ2VNb2RlPyIiOic8YnV0dG9uIGNsYXNzPSJzZXNzaW9uLWFjdGlvbi1idG4gZGVsZXRlLWJ0biIgZGF0YS1hY3Rpb249ImRlbGV0ZS1zZXNzaW9uIiBkYXRhLXNlc3Npb24taWQ9IicrZS5pZCsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTIyMFx1OTY2NFx1NEYxQVx1OEJERCIgdGl0bGU9Ilx1NTIyMFx1OTY2NFx1NkI2NFx1NEYxQVx1OEJERCI+PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMyA2aDE4Ii8+PHBhdGggZD0iTTggNlY0YTIgMiAwIDAxMi0yaDRhMiAyIDAgMDEyIDJ2MiIvPjxwYXRoIGQ9Ik0xOSA2bC0xIDE0YTIgMiAwIDAxLTIgMkg4YTIgMiAwIDAxLTItMkw1IDYiLz48L3N2Zz48L2J1dHRvbj4nLG09JzxzcGFuIGNsYXNzPSJzZXNzaW9uLWFjdGlvbnMiPicrcytnK2grIjwvc3Bhbj4iLGI9ZS50aXRsZXx8ZS5zdW1tYXJ5Pyc8ZGl2IGNsYXNzPSJzZXNzaW9uLXRpdGxlIj4nK3AoZS50aXRsZXx8ZS5zdW1tYXJ5KSsiPC9kaXY+IjonPGRpdiBjbGFzcz0ic2Vzc2lvbi1jb21tYW5kIj4nK3AoZS5yZXN1bWVkRnJvbVNlc3Npb25JZD9lLmNvbW1hbmQucmVwbGFjZSgvXHMrLS1yZXN1bWVccytcUysvLCIiKS5yZXBsYWNlKC9ccytyZXN1bWVccytbMC05YS1mLV0rLywiIik6ZS5jb21tYW5kKSsiPC9kaXY+IixGPXdjKGUpLHc9IiI7ZS5zdGF0dXM9PT0icnVubmluZyImJkYmJih3PSc8ZGl2IGNsYXNzPSJzZXNzaW9uLWFjdGl2aXR5Ij4nK3AoRikrIjwvZGl2PiIpO3ZhciBFPWUuZGVzY3JpcHRpb24/JzxkaXYgY2xhc3M9InNlc3Npb24tZGVzY3JpcHRpb24iPicrcChlLmRlc2NyaXB0aW9uKSsiPC9kaXY+IjoiIixBPSIiO2Uuc3RhdHVzPT09InJ1bm5pbmciP0E9JzxzcGFuIGNsYXNzPSJzZXNzaW9uLXRpbWUiIHRpdGxlPSJcdTVERjJcdThGRDBcdTg4NEMgJytwKFJ1KGUuc3RhcnRlZEF0KSkrJyI+JytwKFJ1KGUuc3RhcnRlZEF0KSkrIjwvc3Bhbj4iOmUuZW5kZWRBdD9BPSc8c3BhbiBjbGFzcz0ic2Vzc2lvbi10aW1lIiB0aXRsZT0iJytwKG5ldyBEYXRlKGUuZW5kZWRBdCkudG9Mb2NhbGVTdHJpbmcoKSkrJyI+JytwKGp1KGUuZW5kZWRBdCkpKyI8L3NwYW4+IjplLnN0YXJ0ZWRBdCYmKEE9JzxzcGFuIGNsYXNzPSJzZXNzaW9uLXRpbWUiIHRpdGxlPSInK3AobmV3IERhdGUoZS5zdGFydGVkQXQpLnRvTG9jYWxlU3RyaW5nKCkpKyciPicrcChqdShlLnN0YXJ0ZWRBdCkpKyI8L3NwYW4+Iik7dmFyIHg9enUoZSksST1lLmF1dG9SZWNvdmVyZWQ/JzxzcGFuIGNsYXNzPSJzZXNzaW9uLXJlY292ZXJ5LWhpbnQiPlx1ODFFQVx1NTJBOFx1NjA2Mlx1NTkwRDwvc3Bhbj4nOiIiO3JldHVybic8ZGl2IGNsYXNzPSJzZXNzaW9uLWl0ZW0nK3IraSsnIiBkYXRhLXNlc3Npb24taWQ9IicrZS5pZCsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWl0ZW0tY29udGVudCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtLXJvdyI+JytvKyc8ZGl2IGNsYXNzPSJzZXNzaW9uLW1haW4iPjxkaXYgY2xhc3M9InNlc3Npb24tdGl0bGUtcm93Ij4nK2IrQSsiPC9kaXY+IitFK3crJzxkaXYgY2xhc3M9InNlc3Npb24tbWV0YSI+PHNwYW4gY2xhc3M9InNlc3Npb24tc3RhdHVzICcrdSsnIj4nK3AoYSkrIjwvc3Bhbj4iK3grSSsiPC9kaXY+PC9kaXY+IittKyI8L2Rpdj48L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIERjKGUpe2lmKCFlfHwhZS53b3JrdHJlZU1lcmdlU3RhdHVzKXJldHVybiIiO3ZhciB0PXtyZWFkeToiXHU1M0VGXHU1NDA4XHU1RTc2IixjaGVja2luZzoiXHU2OEMwXHU2N0U1XHU0RTJEIixtZXJnaW5nOiJcdTU0MDhcdTVFNzZcdTRFMkQiLG1lcmdlZDplLndvcmt0cmVlTWVyZ2VJbmZvJiZlLndvcmt0cmVlTWVyZ2VJbmZvLmNsZWFudXBEb25lPT09ITE/Ilx1NURGMlx1NTQwOFx1NUU3Nlx1NUY4NVx1NkUwNVx1NzQwNiI6Ilx1NURGMlx1NTQwOFx1NUU3NiIsZmFpbGVkOiJcdTU0MDhcdTVFNzZcdTU5MzFcdThEMjUifTtyZXR1cm4gdFtlLndvcmt0cmVlTWVyZ2VTdGF0dXNdfHwiIn1mdW5jdGlvbiBrYyhlKXt2YXIgdD1EYyhlKTtyZXR1cm4gdD8nPHNwYW4gY2xhc3M9InNlc3Npb24ta2luZC1iYWRnZSB3b3JrdHJlZS1tZXJnZSAnK3AoZS53b3JrdHJlZU1lcmdlU3RhdHVzfHwiIikrJyI+JytwKHQpKyI8L3NwYW4+IjoiIn1mdW5jdGlvbiB6dShlKXtpZighZXx8IWUud29ya3RyZWVFbmFibGVkKXJldHVybiIiO3ZhciB0PVtdO2Uud29ya3RyZWUmJmUud29ya3RyZWUuYnJhbmNoJiZ0LnB1c2goIldvcmt0cmVlOiAiK2Uud29ya3RyZWUuYnJhbmNoKSxlLndvcmt0cmVlJiZlLndvcmt0cmVlLnBhdGgmJnQucHVzaCgiUGF0aDogIitlLndvcmt0cmVlLnBhdGgpO3ZhciByPXQubGVuZ3RoPjA/JyB0aXRsZT0iJytwKHQuam9pbihgCmApKSsnIic6IiI7cmV0dXJuJzxzcGFuIGNsYXNzPSJzZXNzaW9uLWtpbmQtYmFkZ2Ugd29ya3RyZWUiJytyKyI+V29ya3RyZWU8L3NwYW4+IitrYyhlKX1mdW5jdGlvbiBSbShlKXtpZighZSlyZXR1cm4iIjt2YXIgdD11ZShlKT8nPHNwYW4gY2xhc3M9InNlc3Npb24ta2luZC1iYWRnZSBzdHJ1Y3R1cmVkIj5TdHJ1Y3R1cmVkPC9zcGFuPic6JzxzcGFuIGNsYXNzPSJzZXNzaW9uLWtpbmQtYmFkZ2UgcHR5Ij5QVFk8L3NwYW4+JztyZXR1cm4gdCt6dShlKX1mdW5jdGlvbiBBYyhlKXt2YXIgdD1be2lkOiJtYW5hZ2VkIixsYWJlbDoiXHU2MjU4XHU3QkExIixkZXNjOiJcdTUxNjhcdTgxRUFcdTUyQThcdTVCOENcdTYyMTBcdTRFRkJcdTUyQTEifSx7aWQ6ImZ1bGwtYWNjZXNzIixsYWJlbDoiXHU1MTY4XHU2NzQzXHU5NjUwIixkZXNjOiJcdTgxRUFcdTUyQThcdTc4NkVcdThCQTRcdTY3NDNcdTk2NTAifSx7aWQ6ImF1dG8tZWRpdCIsbGFiZWw6Ilx1ODFFQVx1NTJBOFx1N0YxNlx1OEY5MSIsZGVzYzoiXHU4MUVBXHU1MkE4XHU3ODZFXHU4QkE0XHU0RkVFXHU2NTM5In0se2lkOiJkZWZhdWx0IixsYWJlbDoiXHU2ODA3XHU1MUM2IixkZXNjOiJcdTkwMTBcdTZCNjVcdTc4NkVcdThCQTRcdTY0Q0RcdTRGNUMifSx7aWQ6Im5hdGl2ZSIsbGFiZWw6Ilx1NTM5Rlx1NzUxRiIsZGVzYzoiXHU1MzlGXHU3NTFGXHU3RUQzXHU2Nzg0XHU1MzE2XHU4RjkzXHU1MUZBIn1dO3JldHVybiB0Lm1hcChmdW5jdGlvbihyKXt2YXIgaT1yLmlkPT09ZT8iIGFjdGl2ZSI6IiI7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibW9kZS1jYXJkJytpKyciIGRhdGEtbW9kZT0iJytyLmlkKyciPjxzcGFuIGNsYXNzPSJtb2RlLWNhcmQtbGFiZWwiPicrci5sYWJlbCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJtb2RlLWNhcmQtZGVzYyI+JytyLmRlc2MrIjwvc3Bhbj48L2J1dHRvbj4ifSkuam9pbigiIil9ZnVuY3Rpb24geGMoZSl7dmFyIHQ9W3tpZDoiY2xhdWRlIixsYWJlbDoiQ2xhdWRlIixkZXNjOiJcdTVCOENcdTY1NzQgQ2xhdWRlIFx1NEYxQVx1OEJERFx1ODBGRFx1NTI5QiJ9LHtpZDoiY29kZXgiLGxhYmVsOiJDb2RleCIsZGVzYzoiXHU3RUQzXHU2Nzg0XHU1MzE2IEpTT05MIFx1NjIxNiBQVFkgXHU0RjFBXHU4QkREIn1dO3JldHVybiB0Lm1hcChmdW5jdGlvbihyKXt2YXIgaT1yLmlkPT09ZT8iIGFjdGl2ZSI6IiI7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibW9kZS1jYXJkIHByb3ZpZGVyLWNhcmQnK2krJyIgZGF0YS1wcm92aWRlcj0iJytyLmlkKyciPjxzcGFuIGNsYXNzPSJtb2RlLWNhcmQtbGFiZWwiPicrci5sYWJlbCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJtb2RlLWNhcmQtZGVzYyI+JytyLmRlc2MrIjwvc3Bhbj48L2J1dHRvbj4ifSkuam9pbigiIil9ZnVuY3Rpb24gU2MoZSl7dmFyIHQ9W3tpZDoic3RydWN0dXJlZCIsbGFiZWw6Ilx1N0VEM1x1Njc4NFx1NTMxNiIsZGVzYzoiXHU2NjdBXHU4MEZEXHU1QkY5XHU4QkREXHU2QTIxXHU1RjBGIn0se2lkOiJwdHkiLGxhYmVsOiJQVFkiLGRlc2M6Ilx1NEVBNFx1NEU5Mlx1NUYwRlx1N0VDOFx1N0FFRlx1NEYxQVx1OEJERCJ9XTtyZXR1cm4gdC5tYXAoZnVuY3Rpb24ocil7dmFyIGk9ci5pZD09PWU/IiBhY3RpdmUiOiIiLGE9IiI7cmV0dXJuJzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0ibW9kZS1jYXJkIHNlc3Npb24ta2luZC1jYXJkJytpK2ErJyIgZGF0YS1zZXNzaW9uLWtpbmQ9Iicrci5pZCsnIj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWxhYmVsIj4nK3IubGFiZWwrJzwvc3Bhbj48c3BhbiBjbGFzcz0ibW9kZS1jYXJkLWRlc2MiPicrci5kZXNjKyI8L3NwYW4+PC9idXR0b24+In0pLmpvaW4oIiIpfWZ1bmN0aW9uIFdtKGUpe3JldHVybic8bGFiZWwgY2xhc3M9InNlc3Npb24taW5saW5lLXRvZ2dsZSIgZm9yPSJzZXNzaW9uLXdvcmt0cmVlLXRvZ2dsZSIgdGl0bGU9Ilx1NEUzQVx1OEJFNVx1NEYxQVx1OEJERFx1NTIxQlx1NUVGQVx1NzJFQ1x1N0FDQlx1NzY4NCBnaXQgd29ya3RyZWUgXHU1MjA2XHU2NTJGIj48c3ZnIGNsYXNzPSJzZXNzaW9uLWlubGluZS10b2dnbGUtaWNvbiIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTMiIGhlaWdodD0iMTMiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxjaXJjbGUgY3g9IjYiIGN5PSI2IiByPSIyLjIiLz48Y2lyY2xlIGN4PSIxOCIgY3k9IjYiIHI9IjIuMiIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTgiIHI9IjIuMiIvPjxwYXRoIGQ9Ik02IDguMnYzLjRhMiAyIDAgMCAwIDIgMmg4YTIgMiAwIDAgMCAyLTJWOC4yIi8+PHBhdGggZD0iTTEyIDEzLjZ2Mi4yIi8+PC9zdmc+PHNwYW4gY2xhc3M9InNlc3Npb24taW5saW5lLXRvZ2dsZS1sYWJlbCI+V29ya3RyZWUgXHU2QTIxXHU1RjBGPC9zcGFuPjxpbnB1dCBpZD0ic2Vzc2lvbi13b3JrdHJlZS10b2dnbGUiIHR5cGU9ImNoZWNrYm94IiBjbGFzcz0ic3dpdGNoLXRvZ2dsZSInKyhlPyIgY2hlY2tlZCI6IiIpKycgLz48c3BhbiBjbGFzcz0ic3dpdGNoLXNsaWRlciIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2xhYmVsPid9ZnVuY3Rpb24gVnUoZSl7dmFyIHQ9bi5zZXNzaW9uVG9vbHx8ImNsYXVkZSI7cmV0dXJuIGU9PT0ic3RydWN0dXJlZCI/dD09PSJjb2RleCI/IkNvZGV4IEpTT05MIFx1N0VEM1x1Njc4NFx1NTMxNlx1ODA0QVx1NTkyOVx1NzU0Q1x1OTc2Mlx1RkYwQ1x1NjUyRlx1NjMwMVx1NTkxQVx1OEY2RVx1NUJGOVx1OEJERFx1NTQ4Q1x1NURFNVx1NTE3N1x1OEMwM1x1NzUyOFx1NUM1NVx1NzkzQVx1MzAwMiI6Ilx1N0VEM1x1Njc4NFx1NTMxNlx1ODA0QVx1NTkyOVx1NzU0Q1x1OTc2Mlx1RkYwQ1x1NjUyRlx1NjMwMVx1NTkxQVx1OEY2RVx1NUJGOVx1OEJERFx1MzAwMVx1NkQ0MVx1NUYwRlx1OEY5M1x1NTFGQVx1NTQ4Q1x1NURFNVx1NTE3N1x1OEMwM1x1NzUyOFx1NUM1NVx1NzkzQVx1MzAwMiI6dD09PSJjb2RleCI/IkNvZGV4IFBUWSBcdTdFQzhcdTdBRUZcdTRGMUFcdThCRERcdUZGMUJ0ZXJtaW5hbCBcdTY2MkZcdTUzOUZcdTU5Q0JcdThGOTNcdTUxRkFcdUZGMENjaGF0IFx1NjYyRlx1ODlFM1x1Njc5MFx1NTQwRVx1NzY4NFx1OTYwNVx1OEJGQlx1ODlDNlx1NTZGRVx1MzAwMiI6Ilx1NTM5Rlx1NTlDQiBQVFkgXHU3RUM4XHU3QUVGXHU0RjFBXHU4QkREXHVGRjBDXHU2NTJGXHU2MzAxXHU2MzAxXHU3RUVEXHU0RUE0XHU0RTkyXHUzMDAxXHU3RUM4XHU3QUVGXHU4OUM2XHU1NkZFXHU1NDhDXHU2NzQzXHU5NjUwXHU2RDQxXHUzMDAyIn1mdW5jdGlvbiBJYygpe3ZhciBlPWh0KCksdD1XdChlLG4ubW9kZVZhbHVlfHxuLmNoYXRNb2RlfHwiZGVmYXVsdCIpLHI9bi5zZXNzaW9uQ3JlYXRlS2luZHx8InN0cnVjdHVyZWQiLGk9bi5zZXNzaW9uQ3JlYXRlV29ya3RyZWU9PT0hMDtyZXR1cm4nPHNlY3Rpb24gaWQ9InNlc3Npb24tbW9kYWwiIGNsYXNzPSJtb2RhbC1iYWNrZHJvcCBoaWRkZW4iPjxkaXYgY2xhc3M9Im1vZGFsIHNlc3Npb24tbW9kYWwiPjxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+PGRpdj48aDIgY2xhc3M9Im1vZGFsLXRpdGxlIj5cdTY1QjBcdTVCRjlcdThCREQ8L2gyPjxwIGNsYXNzPSJtb2RhbC1zdWJ0aXRsZSI+XHU1NDJGXHU1MkE4IENsYXVkZSBcdTYyMTYgQ29kZXggXHU0RjFBXHU4QkREXHVGRjBDXHU5MDA5XHU2MkU5IHByb3ZpZGVyXHUzMDAxXHU0RjFBXHU4QkREXHU3QzdCXHU1NzhCXHUzMDAxXHU2QTIxXHU1RjBGXHU1NDhDXHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1XHUzMDAyPC9wPjwvZGl2PjxidXR0b24gaWQ9ImNsb3NlLW1vZGFsLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLWljb24gbW9kYWwtY2xvc2UtYnRuIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjE4IiB5MT0iNiIgeDI9IjYiIHkyPSIxOCIvPjwvc3ZnPjwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9Im1vZGFsLWJvZHkiPjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIj5Qcm92aWRlcjwvbGFiZWw+PGRpdiBpZD0icHJvdmlkZXItY2FyZHMiIGNsYXNzPSJtb2RlLWNhcmRzIj4nK3hjKGUpKyc8L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZCI+PGxhYmVsIGNsYXNzPSJmaWVsZC1sYWJlbCI+XHU0RjFBXHU4QkREXHU3QzdCXHU1NzhCPC9sYWJlbD48ZGl2IGlkPSJzZXNzaW9uLWtpbmQtY2FyZHMiIGNsYXNzPSJtb2RlLWNhcmRzIj4nK1NjKHIpKyc8L2Rpdj48ZGl2IGNsYXNzPSJmaWVsZC1oaW50IHNlc3Npb24ta2luZC1oaW50LXJvdyI+PHNwYW4gaWQ9InNlc3Npb24ta2luZC1kZXNjcmlwdGlvbiI+JytwKFZ1KHIpKSsnPC9zcGFuPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIj5cdTZBMjFcdTVGMEY8L2xhYmVsPjxkaXYgaWQ9Im1vZGUtY2FyZHMiIGNsYXNzPSJtb2RlLWNhcmRzIj4nK0FjKHQpKyc8L2Rpdj48cCBpZD0ibW9kZS1kZXNjcmlwdGlvbiIgY2xhc3M9ImZpZWxkLWhpbnQiPicrcChPbyhlLHQpKSsnPC9wPjwvZGl2PjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9ImN3ZCI+XHU1REU1XHU0RjVDXHU3NkVFXHU1RjU1PC9sYWJlbD48ZGl2IGNsYXNzPSJzdWdnZXN0aW9ucy13cmFwIj48aW5wdXQgaWQ9ImN3ZCIgdHlwZT0idGV4dCIgY2xhc3M9ImZpZWxkLWlucHV0IiBhdXRvY29tcGxldGU9Im9mZiIgcGxhY2Vob2xkZXI9IicrcChldCgpKSsnIiAvPjxkaXYgaWQ9ImN3ZC1zdWdnZXN0aW9ucyIgY2xhc3M9InN1Z2dlc3Rpb25zIGhpZGRlbiI+PC9kaXY+PC9kaXY+PHAgY2xhc3M9ImZpZWxkLWhpbnQiPlx1NzU1OVx1N0E3QVx1NTIxOVx1NEY3Rlx1NzUyOFx1NEUwQVx1NjVCOVx1NzZFRVx1NUY1NVx1RkYwQ1x1NjUyRlx1NjMwMVx1OERFRlx1NUY4NFx1ODFFQVx1NTJBOFx1ODg2NVx1NTE2OFx1MzAwMjwvcD48ZGl2IGlkPSJyZWNlbnQtcGF0aHMtYnViYmxlcyIgY2xhc3M9InJlY2VudC1wYXRocy1idWJibGVzIj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1mb290ZXIiPjxidXR0b24gaWQ9InJ1bi1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrIj5cdTU0MkZcdTUyQThcdTRGMUFcdThCREQ8L2J1dHRvbj48cCBpZD0ibW9kYWwtZXJyb3IiIGNsYXNzPSJlcnJvci1tZXNzYWdlIGhpZGRlbiI+PC9wPjwvZGl2PjwvZGl2Pjwvc2VjdGlvbj4nfWZ1bmN0aW9uIFV1KCl7dmFyIGU9RGF0ZS5ub3coKS04NjRlNSx0PVtdO3JldHVybiBuLnNlc3Npb25zLmZvckVhY2goZnVuY3Rpb24ocil7aWYoIXIuYXJjaGl2ZWQpe3ZhciBpPXIuc3RhcnRlZEF0P25ldyBEYXRlKHIuc3RhcnRlZEF0KS5nZXRUaW1lKCk6MDt0LnB1c2goe2tpbmQ6InNlc3Npb24iLHJlZjpyLHQ6aXNGaW5pdGUoaSk/aTowfSl9fSksbi5jbGF1ZGVIaXN0b3J5TG9hZGVkJiZSbigpLmZvckVhY2goZnVuY3Rpb24ocil7aWYoci50aW1lc3RhbXApe3ZhciBpPW5ldyBEYXRlKHIudGltZXN0YW1wKS5nZXRUaW1lKCk7IWlzRmluaXRlKGkpfHxpPD1lfHx0LnB1c2goe2tpbmQ6Imhpc3RvcnkiLHJlZjpyLHQ6aX0pfX0pLHQuc29ydChmdW5jdGlvbihyLGkpe3JldHVybiBpLnQtci50fSksdH1mdW5jdGlvbiBUYygpe3ZhciBlPW4uc2Vzc2lvbnMuZmlsdGVyKGZ1bmN0aW9uKGEpe3JldHVybiBhLmFyY2hpdmVkfSksdD1bXTt0LnB1c2goS3UoKSk7dmFyIHI9VXUoKSxpPUhjKCk7cmV0dXJuIHIubGVuZ3RoPjAmJnQucHVzaChQYyhyKSksZS5sZW5ndGg+MCYmdC5wdXNoKE9jKGUpKSxyLmxlbmd0aD09PTAmJmUubGVuZ3RoPT09MCYmIWk/S3UoKSsnPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUiPjxzdHJvbmc+XHU4RkQ4XHU2Q0ExXHU2NzA5XHU0RjFBXHU4QkREXHU4QkIwXHU1RjU1PC9zdHJvbmc+PGJyPlx1NzBCOVx1NTFGQlx1NEUwQVx1NjVCOVx1MzAwQ1x1NjVCMFx1NUJGOVx1OEJERFx1MzAwRFx1NUYwMFx1NTlDQlx1NEY2MFx1NzY4NFx1N0IyQ1x1NEUwMFx1NkIyMVx1NUJGOVx1OEJERFx1MzAwMjwvZGl2Pic6KGkmJnQucHVzaChpKSx0LmpvaW4oIiIpKX1mdW5jdGlvbiBMYygpe3JldHVybiEhbi5zaWRlYmFyUGlubmVkJiYhIW4uc2lkZWJhckNvbGxhcHNlZH1mdW5jdGlvbiBNYygpe3ZhciBlPVV1KCksdD1lLm1hcChmdW5jdGlvbihpLGEpe3ZhciB1PWErMTtpZihpLmtpbmQ9PT0ic2Vzc2lvbiIpe3ZhciBzPWkucmVmLG89cy5pZD09PW4uc2VsZWN0ZWRJZD8iIGFjdGl2ZSI6IiIsbD1zLnRpdGxlfHxzLmRlc2NyaXB0aW9ufHxzLnN1bW1hcnl8fHMuY29tbWFuZHx8Ilx1NEYxQVx1OEJERCAiK3U7cmV0dXJuJzxidXR0b24gY2xhc3M9InNpZGViYXItY29sbGFwc2VkLXRpbGUnK28rJyIgdHlwZT0iYnV0dG9uIiBkYXRhLWNvbGxhcHNlZC1zZXNzaW9uLWlkPSInK3Aocy5pZCkrJyIgdGl0bGU9IicrcChsKSsnIj4nK3UrIjwvYnV0dG9uPiJ9dmFyIGM9aS5yZWYsZj1jLmZpcnN0VXNlck1lc3NhZ2V8fCIoXHU3QTdBXHU0RjFBXHU4QkREKSIsZD1mKyIgXHhCNyAiK1h1KGMudGltZXN0YW1wKTtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0ic2lkZWJhci1jb2xsYXBzZWQtdGlsZSBoaXN0b3J5IiB0eXBlPSJidXR0b24iIGRhdGEtY29sbGFwc2VkLWhpc3RvcnktaWQ9IicrcChjLmNsYXVkZVNlc3Npb25JZCkrJyIgZGF0YS1jd2Q9IicrcChjLmN3ZHx8IiIpKyciIHRpdGxlPSInK3AoZCkrJyI+Jyt1KyI8L2J1dHRvbj4ifSkuam9pbigiIikscj0nPGJ1dHRvbiBjbGFzcz0ic2lkZWJhci1jb2xsYXBzZWQtdGlsZSBhZGQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1jb2xsYXBzZWQtbmV3LXNlc3Npb249IjEiIHRpdGxlPSJcdTY1QjBcdTVFRkFcdTRGMUFcdThCREQiIGFyaWEtbGFiZWw9Ilx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERCI+PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi42IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iMTIiIHkxPSI1IiB4Mj0iMTIiIHkyPSIxOSIvPjxsaW5lIHgxPSI1IiB5MT0iMTIiIHgyPSIxOSIgeTI9IjEyIi8+PC9zdmc+PC9idXR0b24+JztyZXR1cm4nPGRpdiBjbGFzcz0ic2lkZWJhci1jb2xsYXBzZWQtdGlsZXMiPicrdCtyKyI8L2Rpdj4ifWZ1bmN0aW9uIEdpKCl7cmV0dXJuIExjKCk/TWMoKTpUYygpfWZ1bmN0aW9uIEt1KCl7aWYoIW4uc2Vzc2lvbnNNYW5hZ2VNb2RlKXJldHVybic8ZGl2IGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1iYXIiPjxzcGFuIGNsYXNzPSJzaWRlYmFyLWludHJvIj5cdTY3MDBcdThGRDFcdTc2ODRcdTRGMUFcdThCRERcdThCQjBcdTVGNTU8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4teHMgc2Vzc2lvbi1tYW5hZ2UtdG9nZ2xlIiBkYXRhLWFjdGlvbj0idG9nZ2xlLW1hbmFnZS1tb2RlIiB0eXBlPSJidXR0b24iPjxzdmcgd2lkdGg9IjExIiBoZWlnaHQ9IjExIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTkgMTFsMyAzTDIyIDQiLz48cGF0aCBkPSJNMjEgMTJ2N2EyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoMTEiLz48L3N2Zz48c3Bhbj5cdTdCQTFcdTc0MDY8L3NwYW4+PC9idXR0b24+PC9kaXY+Jzt2YXIgZT1ZdSgpLmxlbmd0aCx0PUp1KCkubGVuZ3RoLHI9ZSt0LGk9cj4wLGE9amMoKSx1PWE+MCYmcj49YSxzPXU/Ilx1NTNENlx1NkQ4OFx1NTE2OFx1OTAwOSI6Ilx1NTE2OFx1OTAwOSIsbz11PyJjbGVhci1zZWxlY3Rpb24iOiJzZWxlY3QtYWxsLXZpc2libGUiLGw9YT09PTA/IiBkaXNhYmxlZCI6IiIsYz0nPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2UtZXhpdCIgZGF0YS1hY3Rpb249InRvZ2dsZS1tYW5hZ2UtbW9kZSIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTkwMDBcdTUxRkFcdTdCQTFcdTc0MDZcdTZBMjFcdTVGMEYiIHRpdGxlPSJcdTkwMDBcdTUxRkFcdTdCQTFcdTc0MDZcdTZBMjFcdTVGMEYiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj4nLGY9aT8nPHNwYW4gY2xhc3M9InNlc3Npb24tbWFuYWdlLWNvdW50Ij4nK3IrJzwvc3Bhbj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeS1sYWJlbCI+XHU1REYyXHU5MDA5XHU2MkU5PC9zcGFuPic6JzxzcGFuIGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1zdW1tYXJ5LWxhYmVsIG11dGVkIj5cdTkwMDlcdTYyRTlcdTg5ODFcdTdCQTFcdTc0MDZcdTc2ODRcdTk4NzlcdTc2RUU8L3NwYW4+JztyZXR1cm4nPGRpdiBjbGFzcz0ic2Vzc2lvbi1tYW5hZ2UtYmFyIGFjdGl2ZSI+JytjKyc8ZGl2IGNsYXNzPSJzZXNzaW9uLW1hbmFnZS1zdW1tYXJ5Ij4nK2YrJzwvZGl2PjxkaXYgY2xhc3M9InNlc3Npb24tbWFuYWdlLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXhzIiBkYXRhLWFjdGlvbj0iJytvKyciIHR5cGU9ImJ1dHRvbiInK2wrIj4iK3MrJzwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFuZ2VyIGJ0bi14cyIgZGF0YS1hY3Rpb249ImRlbGV0ZS1zZWxlY3RlZCIgdHlwZT0iYnV0dG9uIicrKGk/IiI6IiBkaXNhYmxlZCIpKyI+XHU1MjIwXHU5NjY0IisoaT8iICIrcjoiIikrIjwvYnV0dG9uPjwvZGl2PjwvZGl2PiJ9ZnVuY3Rpb24gem0oZSx0LHIpe3JldHVybic8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1ncm91cC10aXRsZSI+JytwKGUpKyI8L2Rpdj4iK3QubWFwKGZ1bmN0aW9uKGkpe3JldHVybiBKaShpLHIpfSkuam9pbigiIikrIjwvc2VjdGlvbj4ifWZ1bmN0aW9uIE9jKGUpe3ZhciB0PSEhbi5hcmNoaXZlZEV4cGFuZGVkLHI9dD8iJiM5NjYyOyI6IiYjOTY1NjsiLGk9JzxkaXYgY2xhc3M9InNlc3Npb24tZ3JvdXAtdGl0bGUgY2xhdWRlLWhpc3RvcnktdG9nZ2xlIiBkYXRhLWFjdGlvbj0idG9nZ2xlLWFyY2hpdmVkLWdyb3VwIj48c3BhbiBjbGFzcz0iY2hldnJvbiI+JytyKyc8L3NwYW4+IFx1NURGMlx1NUY1Mlx1Njg2MyA8c3BhbiBjbGFzcz0iaGlzdG9yeS1jb3VudCI+JytlLmxlbmd0aCsiPC9zcGFuPjwvZGl2PiI7aWYoIXQpcmV0dXJuJzxzZWN0aW9uIGNsYXNzPSJzZXNzaW9uLWdyb3VwIj4nK2krIjwvc2VjdGlvbj4iO3ZhciBhPWUubWFwKGZ1bmN0aW9uKHUpe3JldHVybiBKaSh1LCJzZXNzaW9ucyIpfSkuam9pbigiIik7cmV0dXJuJzxzZWN0aW9uIGNsYXNzPSJzZXNzaW9uLWdyb3VwIj4nK2krYSsiPC9zZWN0aW9uPiJ9ZnVuY3Rpb24gUGMoZSl7dmFyIHQ9JzxzZWN0aW9uIGNsYXNzPSJzZXNzaW9uLWdyb3VwIHNlc3Npb24tZ3JvdXAtLXJlY2VudCI+JztyZXR1cm4gdCs9ZS5tYXAoZnVuY3Rpb24ocil7cmV0dXJuIHIua2luZD09PSJzZXNzaW9uIj9KaShyLnJlZiwic2Vzc2lvbnMiKTpRaShyLnJlZiwiaGlzdG9yeSIpfSkuam9pbigiIiksdCs9Ijwvc2VjdGlvbj4iLHR9ZnVuY3Rpb24gcWMoKXt2YXIgZT1EYXRlLm5vdygpLTg2NGU1O3JldHVybiBSbigpLmZpbHRlcihmdW5jdGlvbih0KXtyZXR1cm4hdC50aW1lc3RhbXB8fG5ldyBEYXRlKHQudGltZXN0YW1wKS5nZXRUaW1lKCk8PWV9KX1mdW5jdGlvbiBIYygpe3ZhciBlPXFjKCksdD0hIW4uY2xhdWRlSGlzdG9yeUxvYWRlZCxyPUdjKCksaT0hIW4uY29kZXhIaXN0b3J5TG9hZGVkLGE9dCYmaSx1PSh0P2UubGVuZ3RoOjApKyhpP3IubGVuZ3RoOjApO2lmKGEmJnU9PT0wKXJldHVybiIiO3ZhciBzPSEhbi5jbGF1ZGVIaXN0b3J5RXhwYW5kZWQsbz1zPyImIzk2NjI7IjoiJiM5NjU2OyIsbD1hP3U+OTk5PyI5OTkrIjpTdHJpbmcodSk6Ilx4QjdceEI3XHhCNyIsYz0nPGRpdiBjbGFzcz0ic2Vzc2lvbi1ncm91cC10aXRsZSBjbGF1ZGUtaGlzdG9yeS10b2dnbGUgc2Vzc2lvbi1oaXN0b3J5LXRvZ2dsZSIgaWQ9ImNsYXVkZS1oaXN0b3J5LXRvZ2dsZSIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCIgYXJpYS1leHBhbmRlZD0iJytzKyciIHRpdGxlPSInKyhzPyJcdTY1MzZcdThENzdcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiOiJcdTVDNTVcdTVGMDBcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiKSsnIj48c3BhbiBjbGFzcz0iY2hldnJvbiI+JytvKyc8L3NwYW4+IFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCA8c3BhbiBjbGFzcz0iaGlzdG9yeS1jb3VudCcrKGE/IiI6IiBsb2FkaW5nIikrJyI+JytsKyI8L3NwYW4+PC9kaXY+IixmPXM/JzxkaXYgY2xhc3M9InNlc3Npb24taGlzdG9yeS1ib2R5Ij4nK19jKGUpK1VjKHIpKyI8L2Rpdj4iOiIiO3JldHVybic8c2VjdGlvbiBjbGFzcz0ic2Vzc2lvbi1ncm91cCBzZXNzaW9uLWdyb3VwLS1oaXN0b3J5Ij4nK2MrZisiPC9zZWN0aW9uPiJ9ZnVuY3Rpb24gX2MoZSl7aWYoIW4uY2xhdWRlSGlzdG9yeUxvYWRlZClyZXR1cm4nPGRpdiBjbGFzcz0iY2xhdWRlLWhpc3RvcnktbG9hZGluZyI+XHU2MjZCXHU2M0NGXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHU0RTJEXHUyMDI2PC9kaXY+JztpZihlLmxlbmd0aD09PTApcmV0dXJuIiI7dmFyIHQ9e30scj1bXTtlLmZvckVhY2goZnVuY3Rpb24odSl7dFt1LmN3ZF18fCh0W3UuY3dkXT1bXSxyLnB1c2godS5jd2QpKSx0W3UuY3dkXS5wdXNoKHUpfSk7dmFyIGk9JzxkaXYgY2xhc3M9InNpZGViYXItaGlzdG9yeS10b29sYmFyIj48YnV0dG9uIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi14cyBzaWRlYmFyLWhpc3RvcnktY2xlYXIiIGRhdGEtYWN0aW9uPSJjbGVhci1hbGwtaGlzdG9yeSIgdHlwZT0iYnV0dG9uIj5cdTZFMDVcdTdBN0FcdTUxNjhcdTkwRTg8L2J1dHRvbj48L2Rpdj4nLGE9IiI7cmV0dXJuIHIuZm9yRWFjaChmdW5jdGlvbih1KXt2YXIgcz11LnNwbGl0KCIvIikuZmlsdGVyKEJvb2xlYW4pLnNsaWNlKC0zKS5qb2luKCIvIiksbz0hIW4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlyc1t1XTthKz1LYyh1LHMsdFt1XS5sZW5ndGgsbyksbyYmKGErPXRbdV0ubWFwKGZ1bmN0aW9uKGwpe3JldHVybiBRaShsLCJoaXN0b3J5Iil9KS5qb2luKCIiKSl9KSxpKyc8ZGl2IGNsYXNzPSJzaWRlYmFyLWhpc3Rvcnktc2Nyb2xsIj4nK2ErIjwvZGl2PiJ9ZnVuY3Rpb24gUm4oKXt2YXIgZT1uZXcgU2V0O3JldHVybiBuLnNlc3Npb25zLmZvckVhY2goZnVuY3Rpb24odCl7dC5jbGF1ZGVTZXNzaW9uSWQmJmUuYWRkKHQuY2xhdWRlU2Vzc2lvbklkKX0pLG4uY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24odCl7cmV0dXJuIHQuaGFzQ29udmVyc2F0aW9uJiYhdC5tYW5hZ2VkQnlXYW5kJiYhZS5oYXModC5jbGF1ZGVTZXNzaW9uSWQpfSl9ZnVuY3Rpb24gWXUoKXtyZXR1cm4gT2JqZWN0LmtleXMobi5zZWxlY3RlZFNlc3Npb25JZHMpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hIW4uc2VsZWN0ZWRTZXNzaW9uSWRzW2VdfSl9ZnVuY3Rpb24gSnUoKXtyZXR1cm4gT2JqZWN0LmtleXMobi5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHMpLmZpbHRlcihmdW5jdGlvbihlKXtyZXR1cm4hIW4uc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzW2VdfSl9ZnVuY3Rpb24gJHIoKXtuLnNlbGVjdGVkU2Vzc2lvbklkcz17fSxuLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkcz17fX1mdW5jdGlvbiBOYyhlKXtuLnNlc3Npb25zTWFuYWdlTW9kZT10eXBlb2YgZT09ImJvb2xlYW4iP2U6IW4uc2Vzc2lvbnNNYW5hZ2VNb2RlLG4uc2Vzc2lvbnNNYW5hZ2VNb2RlJiYhbi5jbGF1ZGVIaXN0b3J5TG9hZGVkJiZYcigpLnRoZW4ocGUpLG4uc2Vzc2lvbnNNYW5hZ2VNb2RlfHwoJHIoKSx4cigpKSxwZSgpfWZ1bmN0aW9uIEd1KCl7cmV0dXJuIG4uc2Vzc2lvbnMuc2xpY2UoKX1mdW5jdGlvbiBqYygpe3JldHVybiBHdSgpLmxlbmd0aCtSbigpLmxlbmd0aH1mdW5jdGlvbiBRdSgpe2lmKCFuLmNsYXVkZUhpc3RvcnlMb2FkZWQpe1hyKCkudGhlbihRdSk7cmV0dXJufW4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkPSEwO3ZhciBlPXt9O0d1KCkuZm9yRWFjaChmdW5jdGlvbihyKXtlW3IuaWRdPSEwfSk7dmFyIHQ9e307Um4oKS5mb3JFYWNoKGZ1bmN0aW9uKHIpe3Rbci5jbGF1ZGVTZXNzaW9uSWRdPSEwfSksbi5zZWxlY3RlZFNlc3Npb25JZHM9ZSxuLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkcz10LHBlKCl9ZnVuY3Rpb24gUmMoKXskcigpLHBlKCl9ZnVuY3Rpb24gZHIoZSx0KXtpZighKCFuLnNlc3Npb25zTWFuYWdlTW9kZXx8IXQpKXt2YXIgcj1lPT09Imhpc3RvcnkiP24uc2VsZWN0ZWRDbGF1ZGVIaXN0b3J5SWRzOm4uc2VsZWN0ZWRTZXNzaW9uSWRzO3JbdF0/ZGVsZXRlIHJbdF06clt0XT0hMCxwZSgpfX1mdW5jdGlvbiAkdShlLHQscil7aWYoIW4uc2Vzc2lvbnNNYW5hZ2VNb2RlKXJldHVybiIiO3ZhciBpPWU9PT0iaGlzdG9yeSI/ISFuLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkc1t0XTohIW4uc2VsZWN0ZWRTZXNzaW9uSWRzW3RdO3JldHVybic8bGFiZWwgY2xhc3M9InNlc3Npb24tbWFuYWdlLWNoZWNrIj48aW5wdXQgdHlwZT0iY2hlY2tib3giIGRhdGEtYWN0aW9uPSJ0b2dnbGUtc2VsZWN0aW9uIiBkYXRhLWtpbmQ9IicrcChlKSsnIiBkYXRhLWlkPSInK3AodCkrJyInKyhpPyIgY2hlY2tlZCI6IiIpKycgYXJpYS1sYWJlbD0iJytwKHIpKyciPjxzcGFuPjwvc3Bhbj48L2xhYmVsPid9ZnVuY3Rpb24ga24oZSx0KXtyZXR1cm4gdHlwZW9mIHdpbmRvdy53YW5kQ29uZmlybT09ImZ1bmN0aW9uIj93aW5kb3cud2FuZENvbmZpcm0oZSxPYmplY3QuYXNzaWduKHt0eXBlOiJkYW5nZXIiLGRhbmdlcjohMCxva0xhYmVsOiJcdTUyMjBcdTk2NjQifSx0fHx7fSkpOlByb21pc2UucmVzb2x2ZSh3aW5kb3cuY29uZmlybShlKSl9ZnVuY3Rpb24gV2MoKXt2YXIgZT1ZdSgpLHQ9SnUoKSxyPWUubGVuZ3RoK3QubGVuZ3RoO3ImJmtuKCJcdTc4NkVcdThCQTRcdTUyMjBcdTk2NjRcdTYyNDBcdTkwMDkgIityKyIgXHU5ODc5XHU1NDE3XHVGRjFGXHU2QjY0XHU2NENEXHU0RjVDXHU2NUUwXHU2Q0Q1XHU2NEE0XHU5NTAwXHUzMDAyIix7dGl0bGU6Ilx1NTIyMFx1OTY2NFx1NjI0MFx1OTAwOSAiK3IrIiBcdTk4NzkifSkudGhlbihmdW5jdGlvbihpKXtpZihpKXt2YXIgYT1bXTtlLmxlbmd0aD4wJiZhLnB1c2goZmV0Y2goIi9hcGkvc2Vzc2lvbnMvYmF0Y2gtZGVsZXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7c2Vzc2lvbklkczplfSl9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lmpzb24oKX0pKSx0Lmxlbmd0aD4wJiZhLnB1c2goZmV0Y2goIi9hcGkvY2xhdWRlLWhpc3RvcnkvYmF0Y2gtZGVsZXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7Y2xhdWRlU2Vzc2lvbklkczp0fSl9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lmpzb24oKX0pKSxQcm9taXNlLmFsbChhKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGUuaW5kZXhPZihuLnNlbGVjdGVkSWQpIT09LTEmJihuLnNlbGVjdGVkSWQ9bnVsbCx5ZSgpKSxuLmNsYXVkZUhpc3Rvcnk9bi5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gdC5pbmRleE9mKHUuY2xhdWRlU2Vzc2lvbklkKT09PS0xfSksJHIoKSxSdCgpfSkuY2F0Y2goZnVuY3Rpb24oKXt2YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWN0aW9uLWVycm9yIik7emUodSwiXHU2NUUwXHU2Q0Q1XHU2Mjc5XHU5MUNGXHU1MjIwXHU5NjY0XHU2MjQwXHU5MDA5XHU5ODc5XHU3NkVFXHUzMDAyIil9KX19KX1mdW5jdGlvbiB6Yygpe3ZhciBlPURhdGUubm93KCktODY0ZTUsdD1SbigpLmZpbHRlcihmdW5jdGlvbihyKXtyZXR1cm4hci50aW1lc3RhbXB8fG5ldyBEYXRlKHIudGltZXN0YW1wKS5nZXRUaW1lKCk8PWV9KTtpZih0Lmxlbmd0aClyZXR1cm4ga24oIlx1Nzg2RVx1OEJBNFx1NkUwNVx1N0E3QVx1NUY1M1x1NTI0RFx1NjYzRVx1NzkzQVx1NzY4NCAiK3QubGVuZ3RoKyIgXHU2NzYxIENsYXVkZSBcdTUzODZcdTUzRjJcdTU0MTdcdUZGMUYiLHt0aXRsZToiXHU2RTA1XHU3QTdBIENsYXVkZSBcdTUzODZcdTUzRjIiLG9rTGFiZWw6Ilx1NkUwNVx1N0E3QSJ9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHIpe3ZhciBpPXQubWFwKGZ1bmN0aW9uKGEpe3JldHVybiBhLmNsYXVkZVNlc3Npb25JZH0pO3JldHVybiBmZXRjaCgiL2FwaS9jbGF1ZGUtaGlzdG9yeS9iYXRjaC1kZWxldGUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtjbGF1ZGVTZXNzaW9uSWRzOml9KX0pLnRoZW4oZnVuY3Rpb24oYSl7cmV0dXJuIGEuanNvbigpfSkudGhlbihmdW5jdGlvbihhKXtpZihhJiZhLmVycm9yKXRocm93IG5ldyBFcnJvcihhLmVycm9yKTtuLmNsYXVkZUhpc3Rvcnk9bi5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbih1KXtyZXR1cm4gaS5pbmRleE9mKHUuY2xhdWRlU2Vzc2lvbklkKT09PS0xfSksJHIoKSxwZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWN0aW9uLWVycm9yIik7emUoYSwiXHU2NUUwXHU2Q0Q1XHU2RTA1XHU3QTdBXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHUzMDAyIil9KX19KX1mdW5jdGlvbiBWYyhlLHQscixpKXt2YXIgYT1pPyJcdTI1QkUiOiJcdTI1QjgiO3JldHVybic8ZGl2IGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktaGVhZGVyIGNvZGV4LWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciIgZGF0YS1hY3Rpb249InRvZ2dsZS1jb2RleC1oaXN0b3J5LWRpcmVjdG9yeSIgZGF0YS1jd2Q9IicrcChlKSsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWdyb3VwLXRpdGxlIGNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS10aXRsZSI+PHNwYW4gY2xhc3M9ImNoZXZyb24iPicrYSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktbGFiZWwiPicrcCh0KSsiICgiK3IrIik8L3NwYW4+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBVYyhlKXtpZighbi5jb2RleEhpc3RvcnlMb2FkZWQpcmV0dXJuJzxkaXYgY2xhc3M9ImNsYXVkZS1oaXN0b3J5LWxvYWRpbmciPlx1NjI2Qlx1NjNDRiBDb2RleCBcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTRFMkRcdTIwMjY8L2Rpdj4nO2lmKGUubGVuZ3RoPT09MClyZXR1cm4iIjt2YXIgdD17fSxyPVtdO2UuZm9yRWFjaChmdW5jdGlvbihhKXt0W2EuY3dkXXx8KHRbYS5jd2RdPVtdLHIucHVzaChhLmN3ZCkpLHRbYS5jd2RdLnB1c2goYSl9KTt2YXIgaT0nPGRpdiBjbGFzcz0ic2lkZWJhci1oaXN0b3J5LXNlY3Rpb24tbGFiZWwiPkNvZGV4PC9kaXY+JztyZXR1cm4gci5mb3JFYWNoKGZ1bmN0aW9uKGEpe3ZhciB1PWEuc3BsaXQoIi8iKS5maWx0ZXIoQm9vbGVhbikuc2xpY2UoLTMpLmpvaW4oIi8iKSxzPSEhbi5jb2RleEhpc3RvcnlFeHBhbmRlZERpcnNbYV07aSs9VmMoYSx1LHRbYV0ubGVuZ3RoLHMpLHMmJihpKz10W2FdLm1hcChmdW5jdGlvbihvKXtyZXR1cm4gUWkobywiY29kZXgiKX0pLmpvaW4oIiIpKX0pLCc8ZGl2IGNsYXNzPSJzaWRlYmFyLWhpc3Rvcnktc2Nyb2xsIGNvZGV4LWhpc3Rvcnktc2Nyb2xsIj4nK2krIjwvZGl2PiJ9ZnVuY3Rpb24gS2MoZSx0LHIsaSl7dmFyIGE9aT8iJiM5NjYyOyI6IiYjOTY1NjsiO3JldHVybic8ZGl2IGNsYXNzPSJjbGF1ZGUtaGlzdG9yeS1kaXJlY3RvcnktaGVhZGVyIiBkYXRhLWFjdGlvbj0idG9nZ2xlLWhpc3RvcnktZGlyZWN0b3J5IiBkYXRhLWN3ZD0iJytwKGUpKyciIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiPjxkaXYgY2xhc3M9InNlc3Npb24tZ3JvdXAtdGl0bGUgY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LXRpdGxlIj48c3BhbiBjbGFzcz0iY2hldnJvbiI+JythKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1sYWJlbCI+JytwKHQpKyIgKCIrcisnKTwvc3Bhbj48YnV0dG9uIGNsYXNzPSJidG4gYnRuLWRhbmdlciBidG4teHMgY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWNsZWFyLWJ0biIgZGF0YS1hY3Rpb249ImRlbGV0ZS1oaXN0b3J5LWRpcmVjdG9yeSIgZGF0YS1jd2Q9IicrcChlKSsnIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NkUwNVx1N0E3QVx1NkI2NFx1NzZFRVx1NUY1NVx1NzY4NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCIgdGl0bGU9Ilx1NkUwNVx1N0E3QVx1NkI2NFx1NzZFRVx1NUY1NVx1NzY4NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERCI+XHU2RTA1XHU3QTdBXHU2QjY0XHU3NkVFXHU1RjU1PC9idXR0b24+PC9kaXY+PC9kaXY+J31mdW5jdGlvbiBRaShlLHQpe3ZhciByPXQ9PT0iY29kZXgiLGk9cj8icmVzdW1lLWNvZGV4LWhpc3RvcnkiOiJyZXN1bWUtaGlzdG9yeSIsYT1yPyJkZWxldGUtY29kZXgtaGlzdG9yeSI6ImRlbGV0ZS1oaXN0b3J5Iix1PXI/bi5zZWxlY3RlZENvZGV4SGlzdG9yeUlkczpuLnNlbGVjdGVkQ2xhdWRlSGlzdG9yeUlkcyxzPWUuY2xhdWRlU2Vzc2lvbklkLnNsaWNlKDAsOCksbz1lLmZpcnN0VXNlck1lc3NhZ2V8fCIoXHU3QTdBXHU0RjFBXHU4QkREKSIsbD1YdShlLnRpbWVzdGFtcCksYz0kdSh0LGUuY2xhdWRlU2Vzc2lvbklkLCJcdTkwMDlcdTYyRTlcdTUzODZcdTUzRjJcdTRGMUFcdThCREQgIitvKSxmPW4uc2Vzc2lvbnNNYW5hZ2VNb2RlPyIiOic8YnV0dG9uIGNsYXNzPSJzZXNzaW9uLWFjdGlvbi1idG4gZGVsZXRlLWJ0biIgZGF0YS1hY3Rpb249IicrYSsnIiBkYXRhLWNsYXVkZS1zZXNzaW9uLWlkPSInK2UuY2xhdWRlU2Vzc2lvbklkKyciIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MjIwXHU5NjY0XHU0RjFBXHU4QkREIiB0aXRsZT0iXHU5NjkwXHU4NUNGXHU2QjY0XHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0zIDZoMTgiLz48cGF0aCBkPSJNOCA2VjRhMiAyIDAgMDEyLTJoNGEyIDIgMCAwMTIgMnYyIi8+PHBhdGggZD0iTTE5IDZsLTEgMTRhMiAyIDAgMDEtMiAySDhhMiAyIDAgMDEtMi0yTDUgNiIvPjwvc3ZnPjwvYnV0dG9uPicsZD1uLnNlc3Npb25zTWFuYWdlTW9kZT8iIjonPGJ1dHRvbiBjbGFzcz0ic2Vzc2lvbi1hY3Rpb24tYnRuIiBkYXRhLWFjdGlvbj0iJytpKyciIGRhdGEtY2xhdWRlLXNlc3Npb24taWQ9IicrZS5jbGF1ZGVTZXNzaW9uSWQrJyIgZGF0YS1jd2Q9IicrcChlLmN3ZCkrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTYwNjJcdTU5MERcdTRGMUFcdThCREQiIHRpdGxlPSInKyhyPyJcdTYwNjJcdTU5MERcdTZCNjQgQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIjoiXHU2MDYyXHU1OTBEXHU2QjY0IENsYXVkZSBcdTUzODZcdTUzRjJcdTRGMUFcdThCREQiKSsnIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xIDR2Nmg2Ii8+PHBhdGggZD0iTTMuNTEgMTVhOSA5IDAgMTA1LjY0LTExLjM2TDMgMTAiLz48L3N2Zz48L2J1dHRvbj4nO3JldHVybic8ZGl2IGNsYXNzPSJzZXNzaW9uLWl0ZW0gY2xhdWRlLWhpc3RvcnktaXRlbScrKG4uc2Vzc2lvbnNNYW5hZ2VNb2RlJiZ1W2UuY2xhdWRlU2Vzc2lvbklkXT8iIHNlbGVjdGVkIjoiIikrJyIgZGF0YS1jbGF1ZGUtaGlzdG9yeS1pZD0iJytlLmNsYXVkZVNlc3Npb25JZCsnIiBkYXRhLWN3ZD0iJytwKGUuY3dkKSsnIiByb2xlPSJidXR0b24iIHRhYmluZGV4PSIwIj48ZGl2IGNsYXNzPSJzZXNzaW9uLWl0ZW0tY29udGVudCI+PGRpdiBjbGFzcz0ic2Vzc2lvbi1pdGVtLXJvdyI+JytjKyc8ZGl2IGNsYXNzPSJzZXNzaW9uLW1haW4iPjxkaXYgY2xhc3M9InNlc3Npb24tY29tbWFuZCBjbGF1ZGUtaGlzdG9yeS1wcmV2aWV3Ij4nK3AobykrJzwvZGl2PjxkaXYgY2xhc3M9InNlc3Npb24tbWV0YSI+PHNwYW4gY2xhc3M9InNlc3Npb24taWQiIHRpdGxlPSInK3AoZS5jbGF1ZGVTZXNzaW9uSWQpKyciPicrcChzKSsiPC9zcGFuPjxzcGFuPiIrcChsKSsnPC9zcGFuPjwvZGl2PjwvZGl2PjxzcGFuIGNsYXNzPSJzZXNzaW9uLWFjdGlvbnMiPicrZCtmKyI8L3NwYW4+PC9kaXY+PC9kaXY+PC9kaXY+In1mdW5jdGlvbiBYdShlKXtpZighZSlyZXR1cm4iIjt0cnl7dmFyIHQ9bmV3IERhdGUoZSkscj1uZXcgRGF0ZSxpPXItdCxhPU1hdGguZmxvb3IoaS82ZTQpO2lmKGE8MSlyZXR1cm4iXHU1MjFBXHU1MjFBIjtpZihhPDYwKXJldHVybiBhKyIgXHU1MjA2XHU5NDlGXHU1MjREIjt2YXIgdT1NYXRoLmZsb29yKGEvNjApO2lmKHU8MjQpcmV0dXJuIHUrIiBcdTVDMEZcdTY1RjZcdTUyNEQiO3ZhciBzPU1hdGguZmxvb3IodS8yNCk7cmV0dXJuIHM8MzA/cysiIFx1NTkyOVx1NTI0RCI6dC50b0xvY2FsZURhdGVTdHJpbmcoKX1jYXRjaHtyZXR1cm4iIn19ZnVuY3Rpb24gWnUoKXtyZXR1cm4gZmV0Y2goIi9hcGkvY2xhdWRlLWhpc3RvcnkiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gZS5vaz9lLmpzb24oKTpbXX0pLnRoZW4oZnVuY3Rpb24oZSl7bi5jbGF1ZGVIaXN0b3J5PWV8fFtdLG4uY2xhdWRlSGlzdG9yeUxvYWRlZD0hMCxwZSgpfSkuY2F0Y2goZnVuY3Rpb24oKXtuLmNsYXVkZUhpc3RvcnlMb2FkZWQ9ITAsbi5jbGF1ZGVIaXN0b3J5PVtdLHBlKCl9KX12YXIgV249bnVsbDtmdW5jdGlvbiBYcigpe3JldHVybiBKYygpLG4uY2xhdWRlSGlzdG9yeUxvYWRlZD9Qcm9taXNlLnJlc29sdmUoKTpXbnx8KFduPVp1KCkudGhlbihmdW5jdGlvbigpe1duPW51bGx9LGZ1bmN0aW9uKCl7V249bnVsbH0pLFduKX1mdW5jdGlvbiBZYygpe3JldHVybiBmZXRjaCgiL2FwaS9jb2RleC1oaXN0b3J5Iix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUub2s/ZS5qc29uKCk6W119KS50aGVuKGZ1bmN0aW9uKGUpe24uY29kZXhIaXN0b3J5PWV8fFtdLG4uY29kZXhIaXN0b3J5TG9hZGVkPSEwLHBlKCl9KS5jYXRjaChmdW5jdGlvbigpe24uY29kZXhIaXN0b3J5TG9hZGVkPSEwLG4uY29kZXhIaXN0b3J5PVtdLHBlKCl9KX12YXIgem49bnVsbDtmdW5jdGlvbiBKYygpe3JldHVybiBuLmNvZGV4SGlzdG9yeUxvYWRlZD9Qcm9taXNlLnJlc29sdmUoKTp6bnx8KHpuPVljKCkudGhlbihmdW5jdGlvbigpe3puPW51bGx9LGZ1bmN0aW9uKCl7em49bnVsbH0pLHpuKX1mdW5jdGlvbiBHYygpe3ZhciBlPW5ldyBTZXQ7cmV0dXJuIG4uc2Vzc2lvbnMuZm9yRWFjaChmdW5jdGlvbih0KXt0LmNsYXVkZVNlc3Npb25JZCYmZS5hZGQodC5jbGF1ZGVTZXNzaW9uSWQpfSksbi5jb2RleEhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmhhc0NvbnZlcnNhdGlvbiYmIXQubWFuYWdlZEJ5V2FuZCYmIWUuaGFzKHQuY2xhdWRlU2Vzc2lvbklkKX0pfWZ1bmN0aW9uIGVzKCl7dXMoKSwhWnIoKSYmKG4ucG9sbFRpbWVyPXNldEludGVydmFsKFJ0LDE2MDApKX1zZXRJbnRlcnZhbChmdW5jdGlvbigpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXNzaW9uLXRpbWUiKTtlLmxlbmd0aD4wJiZKYSgpfSwzZTQpO2Z1bmN0aW9uICRpKCl7bi53c1JlY29ubmVjdFRpbWVyJiYoY2xlYXJUaW1lb3V0KG4ud3NSZWNvbm5lY3RUaW1lciksbi53c1JlY29ubmVjdFRpbWVyPW51bGwpfXZhciBRYz0xZTQsJGM9NGU0O2Z1bmN0aW9uIFhjKCl7dHMoKSxuLndzSGVhcnRiZWF0Q2hlY2tUaW1lcj1zZXRJbnRlcnZhbChucyxRYyl9ZnVuY3Rpb24gdHMoKXtuLndzSGVhcnRiZWF0Q2hlY2tUaW1lciYmKGNsZWFySW50ZXJ2YWwobi53c0hlYXJ0YmVhdENoZWNrVGltZXIpLG4ud3NIZWFydGJlYXRDaGVja1RpbWVyPW51bGwpfWZ1bmN0aW9uIG5zKCl7aWYoISghbi53c3x8bi53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0Lk9QRU4pJiZuLmxhc3RXc01lc3NhZ2VBdCl7dmFyIGU9RGF0ZS5ub3coKS1uLmxhc3RXc01lc3NhZ2VBdDtlPiRjJiZYaSgiaGVhcnRiZWF0LXN0YWxlLSIrTWF0aC5yb3VuZChlLzFlMykrInMiKX19ZnVuY3Rpb24gWGkoZSl7aWYoJGkoKSxuLndzKXt2YXIgdD1uLndzO3RyeXt0Lm9uY2xvc2U9bnVsbH1jYXRjaHt9dHJ5e3Qub25lcnJvcj1udWxsfWNhdGNoe310cnl7dC5vbm1lc3NhZ2U9bnVsbH1jYXRjaHt9dHJ5e3QuY2xvc2UoKX1jYXRjaHt9bi53cz1udWxsfW4ud3NDb25uZWN0ZWQ9ITEsbi53c1JlY29ubmVjdEF0dGVtcHRzPTAsWnIoZSl9ZnVuY3Rpb24gcnMoKXtpZighbi53c1JlY29ubmVjdFRpbWVyJiYhZG9jdW1lbnQuaGlkZGVuKXt2YXIgZT1uLndzUmVjb25uZWN0QXR0ZW1wdHN8fDAsdD1bNTAwLDFlMywyZTMsNGUzLDhlM10scj10W2U8dC5sZW5ndGg/ZTp0Lmxlbmd0aC0xXTtuLndzUmVjb25uZWN0QXR0ZW1wdHM9ZSsxLG4ud3NSZWNvbm5lY3RUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi53c1JlY29ubmVjdFRpbWVyPW51bGwsbi5jb25maWcmJiFuLndzJiYhZG9jdW1lbnQuaGlkZGVuJiZacigiYmFja29mZiIpfSxyKX19ZnVuY3Rpb24gWnIoZSl7aWYoIXdpbmRvdy5XZWJTb2NrZXQpcmV0dXJuITE7aWYobi53cyl7dHJ5e24ud3MuY2xvc2UoKX1jYXRjaHt9bi53cz1udWxsfXZhciB0PXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbD09PSJodHRwczoiPyJ3c3M6Ijoid3M6IixyPXQrIi8vIit3aW5kb3cubG9jYXRpb24uaG9zdCsiL3dzIjt0cnl7dmFyIGk9bmV3IFdlYlNvY2tldChyKTtyZXR1cm4gaS5vbm9wZW49ZnVuY3Rpb24oKXtuLndzPWksbi53c0Nvbm5lY3RlZD0hMCxuLmxhc3RXc01lc3NhZ2VBdD1EYXRlLm5vdygpLG4ud3NSZWNvbm5lY3RBdHRlbXB0cz0wLCRpKCksbi5sYXN0U2VxQnlTZXNzaW9uPXt9LFhjKCksTG4obi5zZWxlY3RlZElkKSxGcCgpLGhyKCJ3cy1yZWNvbm5lY3QiKX0saS5vbm1lc3NhZ2U9ZnVuY3Rpb24oYSl7bi5sYXN0V3NNZXNzYWdlQXQ9RGF0ZS5ub3coKTt0cnl7dmFyIHU9SlNPTi5wYXJzZShhLmRhdGEpO2lmKHUmJnUudHlwZT09PSJwaW5nIil7aWYobi53cyYmbi53cy5yZWFkeVN0YXRlPT09V2ViU29ja2V0Lk9QRU4pdHJ5e24ud3Muc2VuZChKU09OLnN0cmluZ2lmeSh7dHlwZToicG9uZyIsdDp1LnR9KSl9Y2F0Y2h7fXJldHVybn1pZih1JiZ1LnR5cGU9PT0icmVzeW5jX3JlcXVpcmVkIiYmdS5zZXNzaW9uSWQpe2lmKG4ud3MmJm4ud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5PUEVOKXRyeXtuLndzLnNlbmQoSlNPTi5zdHJpbmdpZnkoe3R5cGU6InJlc3luYyIsc2Vzc2lvbklkOnUuc2Vzc2lvbklkfSkpfWNhdGNoe31uLmxhc3RTZXFCeVNlc3Npb258fChuLmxhc3RTZXFCeVNlc3Npb249e30pLG4ubGFzdFNlcUJ5U2Vzc2lvblt1LnNlc3Npb25JZF09MDtyZXR1cm59aWYodSYmKHUudHlwZT09PSJpbml0Inx8dS50eXBlPT09Im91dHB1dCIpJiZ1LnNlc3Npb25JZCYmdHlwZW9mIHUuc2VxPT0ibnVtYmVyIil7bi5sYXN0U2VxQnlTZXNzaW9ufHwobi5sYXN0U2VxQnlTZXNzaW9uPXt9KTt2YXIgcz1uLmxhc3RTZXFCeVNlc3Npb25bdS5zZXNzaW9uSWRdfHwwO2lmKHUudHlwZT09PSJpbml0IiluLmxhc3RTZXFCeVNlc3Npb25bdS5zZXNzaW9uSWRdPXUuc2VxO2Vsc2UgaWYodS5zZXE9PT1zKzEpbi5sYXN0U2VxQnlTZXNzaW9uW3Uuc2Vzc2lvbklkXT11LnNlcTtlbHNlIGlmKHUuc2VxPnMrMSYmcz4wKXtpZihuLndzJiZuLndzLnJlYWR5U3RhdGU9PT1XZWJTb2NrZXQuT1BFTil0cnl7bi53cy5zZW5kKEpTT04uc3RyaW5naWZ5KHt0eXBlOiJyZXN5bmMiLHNlc3Npb25JZDp1LnNlc3Npb25JZH0pKX1jYXRjaHt9bi5sYXN0U2VxQnlTZXNzaW9uW3Uuc2Vzc2lvbklkXT0wO3JldHVybn1lbHNle2lmKHUuc2VxPHMpcmV0dXJuO24ubGFzdFNlcUJ5U2Vzc2lvblt1LnNlc3Npb25JZF09dS5zZXF9fVpjKHUpfWNhdGNoe319LGkub25jbG9zZT1mdW5jdGlvbigpe24ud3M9bnVsbCxuLndzQ29ubmVjdGVkPSExLHRzKCkscnMoKX0saS5vbmVycm9yPWZ1bmN0aW9uKCl7aS5jbG9zZSgpfSwhMH1jYXRjaHtyZXR1cm4gcnMoKSwhMX19ZnVuY3Rpb24gWmMoZSl7c3dpdGNoKGUudHlwZSl7Y2FzZSJvdXRwdXQiOmlmKGUuZGF0YSYmZS5zZXNzaW9uSWQmJk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsImlzUmVzcG9uZGluZyIpJiYobi5fbGFzdElzUmVzcG9uZGluZ3x8KG4uX2xhc3RJc1Jlc3BvbmRpbmc9e30pLG4uX2xhc3RJc1Jlc3BvbmRpbmdbZS5zZXNzaW9uSWRdPSEhZS5kYXRhLmlzUmVzcG9uZGluZyksZS5kYXRhJiZlLnNlc3Npb25JZCl7dmFyIHQ9ISFlLmRhdGEuaW5jcmVtZW50YWwscj17aWQ6ZS5zZXNzaW9uSWR9LGk9ITE7aWYoIXQmJmUuZGF0YS5vdXRwdXQhPT12b2lkIDAmJihyLm91dHB1dD1lLmRhdGEub3V0cHV0KSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJwZXJtaXNzaW9uQmxvY2tlZCIpJiYoci5wZXJtaXNzaW9uQmxvY2tlZD0hIWUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZCksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwicXVldWVkTWVzc2FnZXMiKSYmKHIucXVldWVkTWVzc2FnZXM9ZS5kYXRhLnF1ZXVlZE1lc3NhZ2VzfHxbXSxuLnF1ZXVlRXBvY2grKyksZS5kYXRhLnN0cnVjdHVyZWRTdGF0ZSYmKHIuc3RydWN0dXJlZFN0YXRlPWUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUpLGUuZGF0YS5zZXNzaW9uS2luZCYmKHIuc2Vzc2lvbktpbmQ9ZS5kYXRhLnNlc3Npb25LaW5kKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJ0aXRsZSIpJiYoci50aXRsZT1lLmRhdGEudGl0bGUsaT0hMCksT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwiZGVzY3JpcHRpb24iKSYmKHIuZGVzY3JpcHRpb249ZS5kYXRhLmRlc2NyaXB0aW9uLGk9ITApLE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInN1bW1hcnkiKSYmKHIuc3VtbWFyeT1lLmRhdGEuc3VtbWFyeSksZS5kYXRhLm1lc3NhZ2VzKXIubWVzc2FnZXM9ZS5kYXRhLm1lc3NhZ2VzO2Vsc2UgaWYodCYmZS5kYXRhLmxhc3RNZXNzYWdlKXt2YXIgYT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oUyl7cmV0dXJuIFMuaWQ9PT1lLnNlc3Npb25JZH0pO2lmKGEpe3ZhciB1PUFycmF5LmlzQXJyYXkoYS5tZXNzYWdlcyk/YS5tZXNzYWdlcy5zbGljZSgpOltdLHM9ZS5kYXRhLm1lc3NhZ2VDb3VudHx8MCxvPXUubGVuZ3RoPjA/dVt1Lmxlbmd0aC0xXTpudWxsLGw9ZS5kYXRhLmxhc3RNZXNzYWdlO28mJmwucm9sZSYmby5yb2xlPT09bC5yb2xlP3VbdS5sZW5ndGgtMV09VWYobyxsKTp1Lmxlbmd0aDxzJiZ1LnB1c2gobCksci5tZXNzYWdlcz11fX12YXIgYz10JiZlLmRhdGEuY2h1bmsmJiFlLmRhdGEubGFzdE1lc3NhZ2UmJiFyLm1lc3NhZ2VzJiZyLm91dHB1dD09PXZvaWQgMCYmIWUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUmJiFlLmRhdGEuc2Vzc2lvbktpbmQ7aWYoYyl7aWYoZS5kYXRhLnBlcm1pc3Npb25CbG9ja2VkIT09dm9pZCAwKXt2YXIgZj1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oUyl7cmV0dXJuIFMuaWQ9PT1lLnNlc3Npb25JZH0pO2YmJiEhZi5wZXJtaXNzaW9uQmxvY2tlZCE9ISFlLmRhdGEucGVybWlzc2lvbkJsb2NrZWQmJihaKHIpLGUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiZHdCgpKX19ZWxzZSBpZigoci5vdXRwdXQhPT12b2lkIDB8fHIubWVzc2FnZXN8fHR8fGUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZCE9PXZvaWQgMHx8ci50aXRsZXx8ci5kZXNjcmlwdGlvbikmJihaKHIpLGkmJkphKCksZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQpKXt2YXIgZD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oUyl7cmV0dXJuIFMuaWQ9PT1lLnNlc3Npb25JZH0pfHxyO24uY3VycmVudE1lc3NhZ2VzPVZlKGQsYXQoZCxkLm91dHB1dCwhMSkpLEd0KCksZC5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkInx8ZS5kYXRhLnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQiP2ZyKCk6WmkoKX19ZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQmJm4udGVybWluYWwmJmUuZGF0YSYmKGUuZGF0YS5jaHVuayYmdHAoZS5zZXNzaW9uSWQpPyhuLmxhc3RDaHVua0F0PURhdGUubm93KCksbi50ZXJtaW5hbExpdmVTdHJlYW1TZXNzaW9uc1tlLnNlc3Npb25JZF09ITAsS24obi50ZXJtaW5hbCxlLmRhdGEuY2h1bmspLG4udGVybWluYWxTZXNzaW9uSWQ9ZS5zZXNzaW9uSWQsZS5kYXRhLm91dHB1dD8obi50ZXJtaW5hbE91dHB1dD13cyhSYShlLmRhdGEub3V0cHV0KSksbi50ZXJtaW5hbE91dHB1dE1hcmtlcj0wKTpuLnRlcm1pbmFsT3V0cHV0PXdzKChuLnRlcm1pbmFsT3V0cHV0fHwiIikrUmEoZS5kYXRhLmNodW5rKSksbXQoIm91dHB1dCIpLGR0KCkpOiFlLmRhdGEuaW5jcmVtZW50YWwmJk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsIm91dHB1dCIpJiZhaShlLnNlc3Npb25JZCxlLmRhdGEub3V0cHV0fHwiIix7bW9kZToiYXBwZW5kIn0pKTticmVhaztjYXNlInN0YXJ0ZWQiOnBuKCk7YnJlYWs7Y2FzZSJlbmRlZCI6e3ZhciB2PWUuZGF0YSYmZS5kYXRhLnN0YXR1cz9lLmRhdGEuc3RhdHVzOiJleGl0ZWQiLGc9ZS5kYXRhJiZPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJwZXJtaXNzaW9uQmxvY2tlZCIpPyEhZS5kYXRhLnBlcm1pc3Npb25CbG9ja2VkOiExLGg9e2lkOmUuc2Vzc2lvbklkLHN0YXR1czp2LHBlcm1pc3Npb25CbG9ja2VkOmd9O2UuZGF0YSYmZS5kYXRhLm1lc3NhZ2VzJiYoaC5tZXNzYWdlcz1lLmRhdGEubWVzc2FnZXMpLGUuZGF0YSYmZS5kYXRhLnN0cnVjdHVyZWRTdGF0ZSYmKGguc3RydWN0dXJlZFN0YXRlPWUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUpLGUuZGF0YSYmZS5kYXRhLnF1ZXVlZE1lc3NhZ2VzJiYoaC5xdWV1ZWRNZXNzYWdlcz1lLmRhdGEucXVldWVkTWVzc2FnZXMpLFooaCksZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQmJihHbigiRW50ZXIgXHU1M0QxXHU5MDAxIFx4QjcgU2hpZnQrRW50ZXIgXHU2MzYyXHU4ODRDIiksWmkoITApKTt2YXIgbT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oUyl7cmV0dXJuIFMuaWQ9PT1lLnNlc3Npb25JZH0pLGI9ZS5kYXRhJiZlLmRhdGEuZXhpdENvZGUsRj1iIT1udWxsJiZiIT09MCx3PW0mJm0uc3VtbWFyeXx8IiIsRT1tP0JjKG0pOiIiLEE9Rj8iXHU0RUZCXHU1MkExXHU1RjAyXHU1RTM4XHU3RUQzXHU2NzVGIjoiXHU0RUZCXHU1MkExXHU1REYyXHU1QjhDXHU2MjEwIix4PSIiO3c/KHg9dyxFJiYhRiYmKHgrPWAKYCtFKSk6eD1tJiZtLmNvbW1hbmR8fGUuc2Vzc2lvbklkLEpuKEY/ImVycm9yIjoic3VjY2VzcyIpLHZmKGUuc2Vzc2lvbklkLEEseCksU3MoZS5zZXNzaW9uSWQpLHBhKCksKGUuc2Vzc2lvbklkIT09bi5zZWxlY3RlZElkfHxkb2N1bWVudC5oaWRkZW4pJiZkYSh7dGl0bGU6QSxib2R5OngsdHlwZTpGPyJ3YXJuaW5nIjoic3VjY2VzcyIsaWNvbjpGPyIhIjoiXHUyNzEzIixkdXJhdGlvbjo2ZTMsYWN0aW9uTGFiZWw6Ilx1NjdFNVx1NzcwQiIsYWN0aW9uOmZ1bmN0aW9uKCl7enQoZS5zZXNzaW9uSWQpfX0pLG4ubWVzc2FnZVF1ZXVlPVtdLG4ucGVuZGluZ01lc3NhZ2VzPVtdO3ZhciBJPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihTKXtyZXR1cm4gUy5pZD09PWUuc2Vzc2lvbklkfSksaj1lLnNlc3Npb25JZD09PW4uc2VsZWN0ZWRJZD9uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oUyl7cmV0dXJuIFMuaWQ9PT1uLnNlbGVjdGVkSWR9KTpudWxsLFY9ISEoSSYmSS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkInx8aiYmai5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIik7ViYmZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQ/KHpzKCkscHUoZS5zZXNzaW9uSWQpKTpWfHwobi5zdHJ1Y3R1cmVkSW5wdXRRdWV1ZT1bXSxwdShuLnNlbGVjdGVkSWQpLG9uKCkpLGUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiYoVnx8VG4oITEpLG4uY3VycmVudFRhc2s9bnVsbCxHdCgpKSxlLnNlc3Npb25JZD09PW4uc2VsZWN0ZWRJZCYmTHIoKSxwbigpLnRoZW4oZnVuY3Rpb24oKXtkaSgpfSksZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQmJihWfHx2bihlLnNlc3Npb25JZCkpO2JyZWFrfWNhc2UiaW5pdCI6aWYoZS5zZXNzaW9uSWQ9PT1uLnNlbGVjdGVkSWQmJmUuZGF0YSl7bi5jaGF0UmVuZGVyVGltZXImJihjbGVhclRpbWVvdXQobi5jaGF0UmVuZGVyVGltZXIpLG4uY2hhdFJlbmRlclRpbWVyPW51bGwpLFooZS5kYXRhKTt2YXIgRz1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oUyl7cmV0dXJuIFMuaWQ9PT1lLnNlc3Npb25JZH0pO24uY3VycmVudE1lc3NhZ2VzPVZlKEd8fGUuZGF0YSxhdChHfHxlLmRhdGEsZS5kYXRhLm91dHB1dCwhMSkpLGZyKCEwKSxHdCgpLGlzKCk7dmFyIEw9ZS5kYXRhLm91dHB1dHx8IiIsQj1uLnRlcm1pbmFsU2Vzc2lvbklkPT09ZS5zZXNzaW9uSWQsVD1uLnRlcm1pbmFsT3V0cHV0fHwiIixNPUImJlQubGVuZ3RoPjAmJkwubGVuZ3RoPj1ULmxlbmd0aCYmTC5zdGFydHNXaXRoKFQpO3JkKEwsZS5zZXNzaW9uSWQsTT8iYXBwZW5kIjoicmVwbGFjZSIpLGhyKCJpbml0Iil9YnJlYWs7Y2FzZSJ1c2FnZSI6YnJlYWs7Y2FzZSJ0YXNrIjplLnNlc3Npb25JZD09PW4uc2VsZWN0ZWRJZCYmKG4uY3VycmVudFRhc2s9ZS5kYXRhfHxudWxsLEd0KCkpLGZmKGUuc2Vzc2lvbklkLGUuZGF0YXx8bnVsbCksdmEoZS5zZXNzaW9uSWQpLEphKCk7YnJlYWs7Y2FzZSJzdGF0dXMiOmlmKGUuc2Vzc2lvbklkJiZlLmRhdGEpe3ZhciBIPXtpZDplLnNlc3Npb25JZH07aWYoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUuZGF0YSwic3RhdHVzIikmJihILnN0YXR1cz1lLmRhdGEuc3RhdHVzKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJleGl0Q29kZSIpJiYoSC5leGl0Q29kZT1lLmRhdGEuZXhpdENvZGUpLGUuZGF0YS5zdHJ1Y3R1cmVkU3RhdGUpSC5zdHJ1Y3R1cmVkU3RhdGU9ZS5kYXRhLnN0cnVjdHVyZWRTdGF0ZTtlbHNlIGlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLmRhdGEsInN0YXR1cyIpKXt2YXIgYT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oTil7cmV0dXJuIE4uaWQ9PT1lLnNlc3Npb25JZH0pO2EmJmEuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCImJihILnN0cnVjdHVyZWRTdGF0ZT1PYmplY3QuYXNzaWduKHt9LGEuc3RydWN0dXJlZFN0YXRlfHx7fSx7aW5GbGlnaHQ6ZS5kYXRhLnN0YXR1cz09PSJydW5uaW5nIn0pKX1pZihPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJxdWV1ZWRNZXNzYWdlcyIpJiYoSC5xdWV1ZWRNZXNzYWdlcz1lLmRhdGEucXVldWVkTWVzc2FnZXN8fFtdLG4ucXVldWVFcG9jaCsrKSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZS5kYXRhLCJwZXJtaXNzaW9uQmxvY2tlZCIpJiYoSC5wZXJtaXNzaW9uQmxvY2tlZD0hIWUuZGF0YS5wZXJtaXNzaW9uQmxvY2tlZCksZS5kYXRhLnBlcm1pc3Npb25SZXF1ZXN0KXtILnBlbmRpbmdFc2NhbGF0aW9uPXtzY29wZTplLmRhdGEucGVybWlzc2lvblJlcXVlc3Quc2NvcGUsdGFyZ2V0OmUuZGF0YS5wZXJtaXNzaW9uUmVxdWVzdC50YXJnZXQscmVhc29uOmUuZGF0YS5wZXJtaXNzaW9uUmVxdWVzdC5wcm9tcHR9O3ZhciAkPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihTKXtyZXR1cm4gUy5pZD09PWUuc2Vzc2lvbklkfSksbmU9JCYmKCQuc3VtbWFyeXx8JC5jb21tYW5kKXx8ZS5zZXNzaW9uSWQsUT1lLmRhdGEucGVybWlzc2lvblJlcXVlc3QucHJvbXB0fHwiXHU5NzAwXHU4OTgxXHU2NzQzXHU5NjUwXHU1QkExXHU2Mjc5IixzZT1lLmRhdGEucGVybWlzc2lvblJlcXVlc3QudGFyZ2V0LGVlPW5lO3NlP2VlKz1gCmArUSsiIFx4QjcgIitzZTplZSs9YApgK1EsSm4oIm1lZGl1bSIpLHBmKGUuc2Vzc2lvbklkLGVlKSxlLnNlc3Npb25JZCE9PW4uc2VsZWN0ZWRJZCYmZGEoe3RpdGxlOiJcdTk3MDBcdTg5ODFcdTRGNjBcdTc2ODRcdTYzODhcdTY3NDMiLGJvZHk6ZWUsdHlwZToid2FybmluZyIsaWNvbjoiISIsZHVyYXRpb246MCxhY3Rpb25MYWJlbDoiXHU1M0JCXHU1OTA0XHU3NDA2IixhY3Rpb246ZnVuY3Rpb24oKXt6dChlLnNlc3Npb25JZCl9fSl9ZS5kYXRhLnBlcm1pc3Npb25CbG9ja2VkPT09ITEmJihILnBlbmRpbmdFc2NhbGF0aW9uPW51bGwpLGUuZGF0YS5hcHByb3ZhbFN0YXRzJiYoSC5hcHByb3ZhbFN0YXRzPWUuZGF0YS5hcHByb3ZhbFN0YXRzKSxaKEgpLHZhKGUuc2Vzc2lvbklkKSxwYSgpLGUuc2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiYoR3QoKSxlLmRhdGEuYXBwcm92YWxTdGF0cyYmaXMoKSxILnN0cnVjdHVyZWRTdGF0ZSYmKEguc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0fHwoR24oIkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpLHpzKCkpLFppKCkpKX1icmVhaztjYXNlIm5vdGlmaWNhdGlvbiI6ZS5kYXRhJiYoZS5kYXRhLmtpbmQ9PT0idXBkYXRlIj9BcyhlLmRhdGEuY3VycmVudHx8Ii0iLGUuZGF0YS5sYXRlc3R8fCItIik6ZS5kYXRhLmtpbmQ9PT0iYXV0by11cGRhdGUtc3RhcnQiP0VmKGUuZGF0YS5jdXJyZW50fHwiLSIsZS5kYXRhLmxhdGVzdHx8Ii0iKTooZS5kYXRhLmtpbmQ9PT0iYXV0by11cGRhdGUtcmVzdGFydCJ8fGUuZGF0YS5raW5kPT09InJlc3RhcnQiKSYmc24oKSk7YnJlYWt9fWZ1bmN0aW9uIEd0KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImN1cnJlbnQtdGFzayIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBlcm1pc3Npb24tYWN0aW9ucyIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbCIpO2lmKGUpe3ZhciBpPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbih2KXtyZXR1cm4gdi5pZD09PW4uc2VsZWN0ZWRJZH0pO2kmJmkucHJvdmlkZXI9PT0iY29kZXgiJiYodCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLmNsYXNzTGlzdC5yZW1vdmUoInBlcm1pc3Npb24tYmxvY2tlZCIpKTt2YXIgYT1pJiZpLnBlbmRpbmdFc2NhbGF0aW9uP2kucGVuZGluZ0VzY2FsYXRpb246bnVsbCx1PWkmJmkucHJvdmlkZXIhPT0iY29kZXgiP2F8fGkucGVybWlzc2lvbkJsb2NrZWQ6ITE7aWYodSl7dmFyIHM9aSYmaS5hdXRvQXBwcm92ZVBlcm1pc3Npb25zO2lmKHIpaWYocylyLnRleHRDb250ZW50PSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTRFMkQuLi4iO2Vsc2UgaWYoYSl7dmFyIG89YS5yZWFzb258fCJcdTdCNDlcdTVGODVcdTYzODhcdTY3NDMiLGw9YS50YXJnZXQ/IiBceEI3ICIrYS50YXJnZXQ6IiI7ci50ZXh0Q29udGVudD1vK2x9ZWxzZSByLnRleHRDb250ZW50PSJcdTdCNDlcdTVGODVcdTYzODhcdTY3NDMiO2lmKHQpe3QuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7dmFyIGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcHJvdmUtcGVybWlzc2lvbi1idG4iKSxmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkZW55LXBlcm1pc3Npb24tYnRuIik7YyYmYy5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCEhcyksZiYmZi5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCEhcyl9ZS50ZXh0Q29udGVudD0iIixlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUuY2xhc3NMaXN0LnJlbW92ZSgicGVybWlzc2lvbi1ibG9ja2VkIik7cmV0dXJufWUuY2xhc3NMaXN0LnJlbW92ZSgicGVybWlzc2lvbi1ibG9ja2VkIiksdCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgZD1uLmN1cnJlbnRUYXNrO2QmJmQudGl0bGU/KGUudGV4dENvbnRlbnQ9ZC50aXRsZSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTooZS50ZXh0Q29udGVudD0iIixlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpKX19ZnVuY3Rpb24gaXMoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwcm92YWwtc3RhdHMiKTtpZihlKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1uLnNlbGVjdGVkSWR9KSxyPXQmJnQuYXBwcm92YWxTdGF0cztpZighcnx8ci50b3RhbD09PTApe2UuY2xhc3NOYW1lPSJhcHByb3ZhbC1zdGF0cyBoaWRkZW4iLGUuaW5uZXJIVE1MPSIiO3JldHVybn1lLmNsYXNzTmFtZT0iYXBwcm92YWwtc3RhdHMiLGUuaW5uZXJIVE1MPSc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtZGl2aWRlciI+PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1iYWRnZSIgaWQ9ImFwcHJvdmFsLXN0YXRzLWJhZGdlIiB0aXRsZT0iXHU2NzJDXHU2QjIxXHU0RjFBXHU4QkREXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU3RURGXHU4QkExIj48c3ZnIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1pY29uIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTIgMjJzOC00IDgtMTBWNWwtOC0zLTggM3Y3YzAgNiA4IDEwIDggMTB6Ii8+PC9zdmc+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXRvdGFsIj4nK3IudG90YWwrJzwvc3Bhbj48L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXBvcHVwIiBpZD0iYXBwcm92YWwtc3RhdHMtcG9wdXAiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1wb3B1cC10aXRsZSI+XHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHU3RURGXHU4QkExPC9zcGFuPicrKHIuY29tbWFuZD4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSygidGVybWluYWwiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1NDdEXHU0RUU0XHU2MjY3XHU4ODRDPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrci5jb21tYW5kKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyhyLmZpbGU+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0soImVkaXQiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU2NTg3XHU0RUY2XHU1MTk5XHU1MTY1PC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrci5maWxlKyI8L3NwYW4+PC9zcGFuPiI6IiIpKyhyLnRvb2w+MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1pY29uIj4nK0soIndyZW5jaCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTUxNzZcdTRFRDZcdTVERTVcdTUxNzc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+JytyLnRvb2wrIjwvc3Bhbj48L3NwYW4+IjoiIikrJzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3cgYXBwcm92YWwtc3RhdHMtcm93LXRvdGFsIj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSygic2lnbWEiLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1sYWJlbCI+XHU1NDA4XHU4QkExPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctY291bnQiPicrci50b3RhbCsiPC9zcGFuPjwvc3Bhbj48L3NwYW4+Ijt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoIi5hcHByb3ZhbC1zdGF0cy1iYWRnZSIpO2kmJihpLmNsYXNzTGlzdC5yZW1vdmUoImFwcHJvdmFsLXN0YXRzLXB1bHNlIiksaS5vZmZzZXRXaWR0aCxpLmNsYXNzTGlzdC5hZGQoImFwcHJvdmFsLXN0YXRzLXB1bHNlIikpfX1mdW5jdGlvbiBlZCgpe2lmKEpuKCJsaWdodCIpLCEhbi5zZWxlY3RlZElkKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwcm92ZS1wZXJtaXNzaW9uLWJ0biIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlbnktcGVybWlzc2lvbi1idG4iKTtlJiYoZS5kaXNhYmxlZD0hMCksdCYmKHQuZGlzYWJsZWQ9ITApLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uc2VsZWN0ZWRJZCkrIi9hcHByb3ZlLXBlcm1pc3Npb24iLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24ocil7aWYociYmci5lcnJvcil7ayhyLmVycm9yLCJlcnJvciIpO3JldHVybn1aKHIpLEd0KCl9KS5jYXRjaChmdW5jdGlvbihyKXtrKHImJnIubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjI3OVx1NTFDNlx1NjM4OFx1Njc0M1x1MzAwMiIsImVycm9yIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ZSYmKGUuZGlzYWJsZWQ9ITEpLHQmJih0LmRpc2FibGVkPSExKX0pfX1mdW5jdGlvbiB0ZCgpe2lmKEpuKCJsaWdodCIpLCEhbi5zZWxlY3RlZElkKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXBwcm92ZS1wZXJtaXNzaW9uLWJ0biIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlbnktcGVybWlzc2lvbi1idG4iKTtlJiYoZS5kaXNhYmxlZD0hMCksdCYmKHQuZGlzYWJsZWQ9ITApLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uc2VsZWN0ZWRJZCkrIi9kZW55LXBlcm1pc3Npb24iLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24ocil7aWYociYmci5lcnJvcil7ayhyLmVycm9yLCJlcnJvciIpO3JldHVybn1aKHIpLEd0KCl9KS5jYXRjaChmdW5jdGlvbihyKXtrKHImJnIubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjJEMlx1N0VERFx1NjM4OFx1Njc0M1x1MzAwMiIsImVycm9yIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7ZSYmKGUuZGlzYWJsZWQ9ITEpLHQmJih0LmRpc2FibGVkPSExKX0pfX1mdW5jdGlvbiBuZCgpe2lmKG4uc2VsZWN0ZWRJZCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHIpe3JldHVybiByLmlkPT09bi5zZWxlY3RlZElkfSk7aWYoZSYmZS5wcm92aWRlcj09PSJjb2RleCIpe2soIkNvZGV4IFx1NEYxQVx1OEJERFx1NTZGQVx1NUI5QVx1NEVFNSBmdWxsLWFjY2VzcyBQVFkgXHU1NDJGXHU1MkE4XHVGRjBDXHU0RTBEXHU2NTJGXHU2MzAxXHU1MjA3XHU2MzYyXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHUzMDAyIiwiaW5mbyIpO3JldHVybn12YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by1hcHByb3ZlLXRvZ2dsZSIpO3QmJih0LnN0eWxlLm9wYWNpdHk9IjAuNSIpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uc2VsZWN0ZWRJZCkrIi90b2dnbGUtYXV0by1hcHByb3ZlIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHImJnIuZXJyb3Ipe2soci5lcnJvciwiZXJyb3IiKTtyZXR1cm59WihyKSxhcygpO3ZhciBpPXIuYXV0b0FwcHJvdmVQZXJtaXNzaW9ucztrKGk/Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NUYwMFx1NTQyRiI6Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NTE3M1x1OTVFRCIsImluZm8iKX0pLmNhdGNoKGZ1bmN0aW9uKHIpe2sociYmci5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1MjA3XHU2MzYyXHU4MUVBXHU1MkE4XHU2Mjc5XHU1MUM2XHUzMDAyIiwiZXJyb3IiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXt0JiYodC5zdHlsZS5vcGFjaXR5PSIiKX0pfX1mdW5jdGlvbiBhcygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLWFwcHJvdmUtdG9nZ2xlIiksdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZih6byh0KSl7ZSYmZS5wYXJlbnROb2RlJiZlLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZSk7cmV0dXJufWlmKGUpe3ZhciByPSJjb21wb3Nlci1waWxsIGNvbXBvc2VyLXBpbGwtY2hpcCBhdXRvLWFwcHJvdmUtaW5kaWNhdG9yIixpPXQmJnQuYXV0b0FwcHJvdmVQZXJtaXNzaW9ucztpPyhlLmNsYXNzTmFtZT1yKyIgYWN0aXZlIixlLnRpdGxlPSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTU0MkZcdTc1MjggXHUyMDE0IFx1NzBCOVx1NTFGQlx1NTE3M1x1OTVFRCIsZS5pbm5lckhUTUw9Sygic2hpZWxkQ2hlY2siLHtzaXplOjEyLHN0cm9rZVdpZHRoOjEuNyxjbHM6ImNvbXBvc2VyLXBpbGwtaWNvbiJ9KSsnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXBpbGwtbGFiZWwiPlx1ODFFQVx1NTJBODwvc3Bhbj4nKTooZS5jbGFzc05hbWU9cixlLnRpdGxlPSJcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTVERjJcdTUxNzNcdTk1RUQgXHUyMDE0IFx1NzBCOVx1NTFGQlx1NUYwMFx1NTQyRiIsZS5pbm5lckhUTUw9Sygic2hpZWxkIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjcsY2xzOiJjb21wb3Nlci1waWxsLWljb24ifSkrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci1waWxsLWxhYmVsIj5cdTYyNEJcdTUyQTg8L3NwYW4+Jyl9fWZ1bmN0aW9uIHJkKGUsdCxyKXtyZXR1cm4gbi50ZXJtaW5hbD9haSh0fHxuLnNlbGVjdGVkSWQsZSx7bW9kZTpyfHwiYXBwZW5kIn0pOiExfWZ1bmN0aW9uIHVzKCl7bi5wb2xsVGltZXImJihjbGVhckludGVydmFsKG4ucG9sbFRpbWVyKSxuLnBvbGxUaW1lcj1udWxsKX1mdW5jdGlvbiBWbShlKXtuLmN1cnJlbnRWaWV3PWV8fCJ0ZXJtaW5hbCIsbi5jdXJyZW50VmlldyE9PSJ0ZXJtaW5hbCImJihUbighMSksJHMoKSksa2koKSxEYSgpO3ZhciB0PU50KCk7dCYmKG4uY3VycmVudE1lc3NhZ2VzPVZlKHQsYXQodCx0Lm91dHB1dCwhMCkpKSxkdCgpLG4uY3VycmVudFZpZXc9PT0idGVybWluYWwiJiYocXQoITApLG4udGVybWluYWwmJm4udGVybWluYWwucmVtZWFzdXJlJiZyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtuLnRlcm1pbmFsJiZuLnRlcm1pbmFsLnJlbWVhc3VyZSgpfSkpfWZ1bmN0aW9uIGZyKGUpe24ucmVuZGVyUGVuZGluZyYmIWV8fChuLnJlbmRlclBlbmRpbmc9ITAsZT8oYmkoITApLG4ucmVuZGVyUGVuZGluZz0hMSk6cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7YmkoITEpLG4ucmVuZGVyUGVuZGluZz0hMX0pKX1uLmNoYXRSZW5kZXJUaW1lcj1udWxsO2Z1bmN0aW9uIFppKGUpe2lmKCEobi5jaGF0UmVuZGVyVGltZXImJiFlKSl7aWYobi5jaGF0UmVuZGVyVGltZXImJmNsZWFyVGltZW91dChuLmNoYXRSZW5kZXJUaW1lciksZSl7bi5jaGF0UmVuZGVyVGltZXI9bnVsbCxmcigpO3JldHVybn12YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1uLnNlbGVjdGVkSWR9KSxyPXQmJnQuc3RhdHVzPT09InJ1bm5pbmciJiZ0LnNlc3Npb25LaW5kIT09InN0cnVjdHVyZWQiLGk9cj9FczpGcztuLmNoYXRSZW5kZXJUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5jaGF0UmVuZGVyVGltZXI9bnVsbDt2YXIgYT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odSl7cmV0dXJuIHUuaWQ9PT1uLnNlbGVjdGVkSWR9KTthJiYobi5jdXJyZW50TWVzc2FnZXM9VmUoYSxhdChhLGEub3V0cHV0LCEwKSkpLGZyKCl9LGkpfX12YXIgZWE9MCxlaT0wLHNzPTAscHI9MDtmdW5jdGlvbiB0YSgpe3JldHVybiB3aW5kb3cuX193YW5kSW9zTmF0aXZlPT09ITB9ZnVuY3Rpb24gb3MoZSl7c3M9TWF0aC5tYXgoc3MsRGF0ZS5ub3coKSsoZXx8MTgwMCkpfWZ1bmN0aW9uIGxzKGUsdCl7c2V0VGltZW91dChmdW5jdGlvbigpe3ZhciByPWRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7dGkocikmJnIhPT10fHxvcyhlKX0sMzApfWZ1bmN0aW9uIGlkKGUpe3JldHVybiBNYXRoLm1heCh3aW5kb3cuaW5uZXJIZWlnaHR8fDAsZSYmZS5oZWlnaHR8fDAsZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50JiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0fHwwLGRvY3VtZW50LmJvZHkmJmRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0fHwwKX1mdW5jdGlvbiBhZChlKXt2YXIgdD1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQscj1NYXRoLm1heCh3aW5kb3cuaW5uZXJXaWR0aHx8MCxlJiZlLndpZHRofHwwLHQmJnQuY2xpZW50V2lkdGh8fDApLGk9aWQoZSk7cmV0dXJuIWVhfHxNYXRoLmFicyhyLWVhKT44PyhlYT1yLGVpPWkpOmk+ZWkmJihlaT1pKSxNYXRoLm1heCgxLE1hdGgucm91bmQoZWl8fGl8fDEpKX1mdW5jdGlvbiB1ZChlLHQscixpKXtyZXR1cm4gZXx8IXRhKCk/ITE6dD4wfHxpPnIrMX1mdW5jdGlvbiBWbihlKXt2YXIgdD13aW5kb3cudmlzdWFsVmlld3BvcnQ7aWYodCl7dmFyIHI9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O2lmKHIuY2xhc3NMaXN0LnRvZ2dsZSgiaXMta2V5Ym9hcmQtb3BlbiIsISFlKSx3aW5kb3cuX193YW5kSW1lTmF0aXZlKXtyLnN0eWxlLnNldFByb3BlcnR5KCItLWFwcC12aWV3cG9ydC10b3AiLCIwcHgiKSxyLnN0eWxlLnNldFByb3BlcnR5KCItLWFwcC12aWV3cG9ydC1oZWlnaHQiLE1hdGgucm91bmQodC5oZWlnaHQpKyJweCIpO3JldHVybn12YXIgaT1hZCh0KSxhPU1hdGgubWF4KDAsTWF0aC5yb3VuZCh0Lm9mZnNldFRvcHx8MCkpLHU9TWF0aC5tYXgoMSxNYXRoLnJvdW5kKHQuaGVpZ2h0KSk7KCFlJiZ0YSgpfHx1ZChlLGEsdSxpKSkmJihhPTAsdT1NYXRoLm1heCh1LGkpKSxyLnN0eWxlLnNldFByb3BlcnR5KCItLWFwcC12aWV3cG9ydC10b3AiLGErInB4Iiksci5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1hcHAtdmlld3BvcnQtaGVpZ2h0Iix1KyJweCIpLChlfHwod2luZG93LnNjcm9sbFl8fDApPjApJiZJYSgpfX1mdW5jdGlvbiB0aShlKXtpZighZSlyZXR1cm4hMTt2YXIgdD1lLnRhZ05hbWU7aWYodD09PSJURVhUQVJFQSJ8fHQ9PT0iU0VMRUNUIilyZXR1cm4hMDtpZih0PT09IklOUFVUIil7dmFyIHI9KGUuZ2V0QXR0cmlidXRlKCJ0eXBlIil8fCJ0ZXh0IikudG9Mb3dlckNhc2UoKTtyZXR1cm4hL14oYnV0dG9ufGNoZWNrYm94fGNvbG9yfGZpbGV8aGlkZGVufGltYWdlfHJhZGlvfHJhbmdlfHJlc2V0fHN1Ym1pdCkkL2kudGVzdChyKX1yZXR1cm4hIWUuaXNDb250ZW50RWRpdGFibGV9ZnVuY3Rpb24gc2QoKXtpZighKCJ2aXN1YWxWaWV3cG9ydCJpbiB3aW5kb3cpfHx3aW5kb3cuX193YW5kVmlld3BvcnRIYW5kbGVyc0JvdW5kKXJldHVybjt3aW5kb3cuX193YW5kVmlld3BvcnRIYW5kbGVyc0JvdW5kPSEwO3ZhciBlPXdpbmRvdy52aXN1YWxWaWV3cG9ydCx0PWUuaGVpZ2h0LHI9ITEsaT1NYXRoLm1heCh3aW5kb3cuaW5uZXJXaWR0aHx8MCxlLndpZHRofHwwKSxhPU1hdGgubWF4KHdpbmRvdy5pbm5lckhlaWdodHx8MCxlLmhlaWdodHx8MCksdT1bXTtmdW5jdGlvbiBzKCl7cmV0dXJuIE1hdGgubWF4KHdpbmRvdy5pbm5lckhlaWdodHx8MCxlLmhlaWdodHx8MCl9ZnVuY3Rpb24gbygpe3ZhciBoPU1hdGgubWF4KHdpbmRvdy5pbm5lcldpZHRofHwwLGUud2lkdGh8fDApLG09cygpO2lmKE1hdGguYWJzKGgtaSk+OCl7aT1oLGE9bTtyZXR1cm59bT5hJiYoYT1tKX1mdW5jdGlvbiBsKGgsbSl7dmFyIGI9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCxGPWI9PT1ofHx0aShiKSx3PWEtZS5oZWlnaHQsRT1hLSh3aW5kb3cuaW5uZXJIZWlnaHR8fGUuaGVpZ2h0fHwwKSxBPURhdGUubm93KCk8cHI7cmV0dXJuIEE/ISEoRiYmKHc+MTIwfHxFPjEyMCkpOiEhKG0+ODB8fEYmJih3PjEyMHx8RT4xMjApfHxyJiYodz44MHx8bT4zMikpfWZ1bmN0aW9uIGMoKXt1LmZvckVhY2goZnVuY3Rpb24oaCl7Y2xlYXJUaW1lb3V0KGgpfSksdT1bNjAsMTgwLDM2MCw2MjAsOTAwXS5tYXAoZnVuY3Rpb24oaCl7cmV0dXJuIHNldFRpbWVvdXQoZnVuY3Rpb24oKXtWbihyKX0saCl9KX1mdW5jdGlvbiBmKCl7WzAsNTAsMTIwLDIyMCwzNjAsNTYwXS5mb3JFYWNoKGZ1bmN0aW9uKGgpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXtkKCk7dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO20mJmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1tJiZ5aShtKX0saCl9KX1mdW5jdGlvbiBkKCl7aWYoZSl7dmFyIGg9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLG09d2luZG93LmlubmVySGVpZ2h0LWUuaGVpZ2h0LWUub2Zmc2V0VG9wO28oKTt2YXIgYj1sKGgsbSksRj1NYXRoLmFicyhlLmhlaWdodC10KT44O2lmKFZuKGIpLGImJighcnx8RikmJmpwKGUsaCkmJnlpKGgpLCFyJiZiKXt2YXIgdz1uLnRlcm1pbmFsQXV0b0ZvbGxvd3x8dWEoKTtpdCgia2V5Ym9hcmQtb3BlbiIse2ZvcmNlUmVwbGF5OiEwfSksd2luZG93Ll9fd2FuZEltZU5hdGl2ZXx8c2V0VGltZW91dChmdW5jdGlvbigpe1ZuKCEwKX0sMjIwKSxjKCksdyYmc2V0VGltZW91dChmdW5jdGlvbigpe24udGVybWluYWwmJm10KCJmb3JjZSIpfSwyMjApfWlmKHImJiFiKXt2YXIgRT0hIXdpbmRvdy5fX3dhbmRJbWVOYXRpdmU7RXx8KG9zKDIyMDApLHByPURhdGUubm93KCkrMTIwMCxWbighMSksSWEoKSksYygpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtFfHwoVm4oITEpLElhKCkpLGl0KCJrZXlib2FyZC1jbG9zZSIse2ZvcmNlUmVwbGF5OiEwfSksbXQoImtleWJvYXJkIil9LDIwMCl9RiYmcj09PWImJml0KCJ2aWV3cG9ydCIpLHI9Yix0PWUuaGVpZ2h0fX12YXIgdj1udWxsO2Z1bmN0aW9uIGcoKXt2IT09bnVsbCYmY2FuY2VsQW5pbWF0aW9uRnJhbWUodiksdj1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXt2PW51bGwsZCgpfSl9ZS5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLGcpLGUuYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixnKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2RvY3VtZW50LnZpc2liaWxpdHlTdGF0ZT09PSJ2aXNpYmxlIiYmKGcoKSxzZXRUaW1lb3V0KGcsMjQwKSxzZXRUaW1lb3V0KGcsNzIwKSl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicGFnZXNob3ciLGZ1bmN0aW9uKGgpe2gmJmgucGVyc2lzdGVkJiYoZygpLHNldFRpbWVvdXQoZywyNDApKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImZvY3Vzb3V0IixmdW5jdGlvbihoKXshaHx8IWgudGFyZ2V0fHx0aShoLnRhcmdldCkmJihscygxNjAwLGgudGFyZ2V0KSx0YSgpJiYocHI9TWF0aC5tYXgocHIsRGF0ZS5ub3coKSsxMjAwKSksc2V0VGltZW91dChnLDgwKSxzZXRUaW1lb3V0KGcsNDIwKSl9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJmb2N1c2luIixmdW5jdGlvbihoKXshaHx8IWgudGFyZ2V0fHwhdGkoaC50YXJnZXQpfHxmKCl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2FuZC1pb3MtaW1lLXN0YXRlIixmdW5jdGlvbihoKXt2YXIgbT1oJiZoLmRldGFpbCYmaC5kZXRhaWwuc3RhdGU7bT09PSJoaWRkZW4iJiYocHI9RGF0ZS5ub3coKSs5MDApLGYoKSxjKCl9KSxkKCl9ZnVuY3Rpb24gb2QoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoZSl7dmFyIHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dC5jbGFzc05hbWU9InRlcm1pbmFsLXJlc2l6ZS1oYW5kbGUiLHQuaW5uZXJIVE1MPSImIzg5NDI7IixlLmFwcGVuZENoaWxkKHQpO3ZhciByPSExLGk9MCxhPTA7dC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLGZ1bmN0aW9uKHUpe3I9ITAsaT11LmNsaWVudFksYT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodCxkb2N1bWVudC5ib2R5LnN0eWxlLmN1cnNvcj0ibnMtcmVzaXplIixkb2N1bWVudC5ib2R5LnN0eWxlLnVzZXJTZWxlY3Q9Im5vbmUiLHUucHJldmVudERlZmF1bHQoKX0pLG4ucmVzaXplTW91c2VNb3ZlPWZ1bmN0aW9uKHUpe2lmKHIpe3ZhciBzPXUuY2xpZW50WS1pLG89TWF0aC5tYXgoMjAwLE1hdGgubWluKGErcyx3aW5kb3cuaW5uZXJIZWlnaHQtMjAwKSk7ZS5zdHlsZS5oZWlnaHQ9bysicHgiLGUuc3R5bGUuZmxleD0ibm9uZSIscXQoKX19LGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsbi5yZXNpemVNb3VzZU1vdmUpLG4ucmVzaXplTW91c2VVcD1mdW5jdGlvbigpe3ImJihyPSExLGRvY3VtZW50LmJvZHkuc3R5bGUuY3Vyc29yPSIiLGRvY3VtZW50LmJvZHkuc3R5bGUudXNlclNlbGVjdD0iIixxdCgpKX0sZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsbi5yZXNpemVNb3VzZVVwKSx0LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLGZ1bmN0aW9uKHUpe3I9ITAsaT11LnRvdWNoZXNbMF0uY2xpZW50WSxhPWUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkuaGVpZ2h0LHUucHJldmVudERlZmF1bHQoKX0se3Bhc3NpdmU6ITF9KSxuLnJlc2l6ZVRvdWNoTW92ZT1mdW5jdGlvbih1KXtpZihyKXt2YXIgcz11LnRvdWNoZXNbMF0uY2xpZW50WS1pLG89TWF0aC5tYXgoMjAwLE1hdGgubWluKGErcyx3aW5kb3cuaW5uZXJIZWlnaHQtMjAwKSk7ZS5zdHlsZS5oZWlnaHQ9bysicHgiLGUuc3R5bGUuZmxleD0ibm9uZSIscXQoKSx1LnByZXZlbnREZWZhdWx0KCl9fSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLG4ucmVzaXplVG91Y2hNb3ZlLHtwYXNzaXZlOiExfSksbi5yZXNpemVUb3VjaEVuZD1mdW5jdGlvbigpe3ImJihyPSExLHF0KCkpfSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsbi5yZXNpemVUb3VjaEVuZCl9fWZ1bmN0aW9uIGNzKCl7cmV0dXJuISFOdCgpfWZ1bmN0aW9uIG5hKGUpe3ZhciB0PU1hdGgubWF4KGxuLHdpbmRvdy5pbm5lcldpZHRoLXBpLWxuKSxyPU1hdGgubWF4KGxuLHdpbmRvdy5pbm5lckhlaWdodC1waS1sbik7cmV0dXJue3JpZ2h0Ok1hdGgubWluKE1hdGgubWF4KGxuLGUucmlnaHQpLHQpLGJvdHRvbTpNYXRoLm1pbihNYXRoLm1heChsbixlLmJvdHRvbSkscil9fWZ1bmN0aW9uIGRzKCl7aWYobi5qb3lzdGlja0JhbGxFbCl7dmFyIGU9bmEobi5qb3lzdGlja1Bvc3x8e3JpZ2h0OjE4LGJvdHRvbTo5Nn0pO24uam95c3RpY2tCYWxsRWwuc3R5bGUucmlnaHQ9ZS5yaWdodCsicHgiLG4uam95c3RpY2tCYWxsRWwuc3R5bGUuYm90dG9tPWUuYm90dG9tKyJweCJ9fWZ1bmN0aW9uIGxkKGUsdCl7dmFyIHI9bmEoe3JpZ2h0OmUsYm90dG9tOnR9KTtuLmpveXN0aWNrUG9zPXI7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWJhbGwtcG9zIixKU09OLnN0cmluZ2lmeShyKSl9Y2F0Y2h7fX1mdW5jdGlvbiBjZCgpe2Z1bmN0aW9uIGUodSxzLG8pe3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9IndqcC1rZXknKyhvPyIgIitvOiIiKSsnIiBkYXRhLWtleT0iJyt1KyciPicrcysiPC9idXR0b24+In12YXIgdD0nPGRpdiBjbGFzcz0id2pwLWRwYWQiPjxkaXYgY2xhc3M9IndqcC1kcGFkLXJvdyI+JytlKCJ1cCIsIlx1MjE5MSIsIndqcC1kaXIiKSsnPC9kaXY+PGRpdiBjbGFzcz0id2pwLWRwYWQtcm93Ij4nK2UoImxlZnQiLCJcdTIxOTAiLCJ3anAtZGlyIikrZSgiZG93biIsIlx1MjE5MyIsIndqcC1kaXIiKStlKCJyaWdodCIsIlx1MjE5MiIsIndqcC1kaXIiKSsiPC9kaXY+PC9kaXY+IixyPSIiLGk7Zm9yKGk9MDtpPENhLmxlbmd0aDtpKyspcis9ZShDYVtpXS5rZXksQ2FbaV0ubGFiZWwsIiIpO3ZhciBhPSc8ZGl2IGNsYXNzPSJ3anAtaGVhZGVyIj48c3BhbiBjbGFzcz0id2pwLXRpdGxlIj4nK0soInBhdyIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS42LGNsczoid2pwLXRpdGxlLWljb24ifSkrJzxzcGFuPlx1OTA2NVx1NjNBN1x1OTc2Mlx1Njc3Rjwvc3Bhbj48L3NwYW4+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJ3anAtY2xvc2UiIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRFx1OTA2NVx1NjNBN1x1OTc2Mlx1Njc3RiI+JytLKCJ4Iix7c2l6ZToxMyxzdHJva2VXaWR0aDoyfSkrIjwvYnV0dG9uPjwvZGl2PiIrdCsnPGRpdiBjbGFzcz0id2pwLWdyaWQgd2pwLWZua2V5cyI+JytyKyI8L2Rpdj4iO3JldHVybiBhfWZ1bmN0aW9uIGRkKCl7aWYoIW4uam95c3RpY2tSb290RWwpe3ZhciBlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2UuY2xhc3NOYW1lPSJ3YW5kLWpveXN0aWNrLXJvb3QiO3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuY2xhc3NOYW1lPSJ3YW5kLWpveXN0aWNrLWJhY2tkcm9wIixlLmFwcGVuZENoaWxkKHQpO3ZhciByPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3IuY2xhc3NOYW1lPSJ3YW5kLWpveXN0aWNrLXBhbmVsIixyLmlubmVySFRNTD1jZCgpLHIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGJkKSxlLmFwcGVuZENoaWxkKHIpO3ZhciBpPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2kuY2xhc3NOYW1lPSJ3YW5kLWpveXN0aWNrLWJhbGwiLGkuc2V0QXR0cmlidXRlKCJyb2xlIiwiYnV0dG9uIiksaS5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLCJXYW5kIFx1OTA2NVx1NjNBN1x1OTc2Mlx1Njc3RiIpLGkuc2V0QXR0cmlidXRlKCJ0aXRsZSIsIlx1NzBCOVx1NTFGQlx1NjI1M1x1NUYwMFx1OTA2NVx1NjNBN1x1OTc2Mlx1Njc3Rlx1RkYwQ1x1NjJENlx1NTJBOFx1NTNFRlx1NzlGQlx1NTJBOFx1NEY0RFx1N0Y2RSIpLGkuaW5uZXJIVE1MPUsoInBhdyIse3NpemU6MjUsc3Ryb2tlV2lkdGg6MS42LGNsczoid2FuZC1qb3lzdGljay1sb2dvIn0pLGUuYXBwZW5kQ2hpbGQoaSksZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChlKSxuLmpveXN0aWNrUm9vdEVsPWUsbi5qb3lzdGlja0JhY2tkcm9wRWw9dCxuLmpveXN0aWNrUGFuZWxFbD1yLG4uam95c3RpY2tCYWxsRWw9aSxkcygpLGkuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLGZkKSxpLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihhKXthLnByZXZlbnREZWZhdWx0KCksYS5zdG9wUHJvcGFnYXRpb24oKX0pLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLGZ1bmN0aW9uKGEpe24uam95c3RpY2tQaW5uZWRPcGVuJiZuLmpveXN0aWNrR2VzdHVyZT09bnVsbCYmKGEucHJldmVudERlZmF1bHQoKSx2cigpKX0pLHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe2EucHJldmVudERlZmF1bHQoKSxhLnN0b3BQcm9wYWdhdGlvbigpfSksbi5qb3lzdGlja1Jlc2l6ZUhhbmRsZXI9ZnVuY3Rpb24oKXtkcygpfSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixuLmpveXN0aWNrUmVzaXplSGFuZGxlciksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9yaWVudGF0aW9uY2hhbmdlIixuLmpveXN0aWNrUmVzaXplSGFuZGxlciksbXMoKX19ZnVuY3Rpb24gZmQoZSl7aWYoY3MoKSYmISgoZS5wb2ludGVyVHlwZT09PSJtb3VzZSJ8fGUucG9pbnRlclR5cGU9PT0icGVuIikmJmUuYnV0dG9uIT09MCkmJm4uam95c3RpY2tQb2ludGVySWQ9PT1udWxsKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKTt2YXIgdD1lLnBvaW50ZXJUeXBlPT09Im1vdXNlInx8ZS5wb2ludGVyVHlwZT09PSJwZW4iO24uam95c3RpY2tQb2ludGVySWQ9ZS5wb2ludGVySWQsbi5qb3lzdGlja1ByZXNzU3RhcnQ9e3g6ZS5jbGllbnRYLHk6ZS5jbGllbnRZLHQ6RGF0ZS5ub3coKX0sbi5qb3lzdGlja0dlc3R1cmU9InBlbmRpbmciO3RyeXtuLmpveXN0aWNrQmFsbEVsLnNldFBvaW50ZXJDYXB0dXJlKGUucG9pbnRlcklkKX1jYXRjaHt9dHx8KG4uam95c3RpY2tMb25nUHJlc3NUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5qb3lzdGlja0dlc3R1cmU9PT0icGVuZGluZyImJmZzKCl9LGlwKSksbi5qb3lzdGlja01vdmVIYW5kbGVyPXBkLG4uam95c3RpY2tVcEhhbmRsZXI9dmQsZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLG4uam95c3RpY2tNb3ZlSGFuZGxlciksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixuLmpveXN0aWNrVXBIYW5kbGVyKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyY2FuY2VsIixuLmpveXN0aWNrVXBIYW5kbGVyKX19ZnVuY3Rpb24gZnMoKXtuLmpveXN0aWNrR2VzdHVyZT0ibW92ZSIsbi5qb3lzdGlja1Bpbm5lZE9wZW4mJnZyKCksbi5qb3lzdGlja0JhbGxFbCYmbi5qb3lzdGlja0JhbGxFbC5jbGFzc0xpc3QuYWRkKCJkcmFnZ2luZyIpLG4uam95c3RpY2tCYWNrZHJvcEVsJiZuLmpveXN0aWNrQmFja2Ryb3BFbC5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKX1mdW5jdGlvbiBwcyhlLHQpe2lmKG4uam95c3RpY2tCYWxsRWwpe3ZhciByPW5hKHtyaWdodDp3aW5kb3cuaW5uZXJXaWR0aC1lLXBpLzIsYm90dG9tOndpbmRvdy5pbm5lckhlaWdodC10LXBpLzJ9KTtuLmpveXN0aWNrQmFsbEVsLnN0eWxlLnJpZ2h0PXIucmlnaHQrInB4IixuLmpveXN0aWNrQmFsbEVsLnN0eWxlLmJvdHRvbT1yLmJvdHRvbSsicHgifX1mdW5jdGlvbiBwZChlKXtpZighKGUucG9pbnRlcklkIT09bi5qb3lzdGlja1BvaW50ZXJJZHx8IW4uam95c3RpY2tCYWxsRWwpKXtpZihlLnByZXZlbnREZWZhdWx0KCksbi5qb3lzdGlja0dlc3R1cmU9PT0ibW92ZSIpe3BzKGUuY2xpZW50WCxlLmNsaWVudFkpO3JldHVybn1pZihuLmpveXN0aWNrR2VzdHVyZT09PSJwZW5kaW5nIil7dmFyIHQ9ZS5jbGllbnRYLW4uam95c3RpY2tQcmVzc1N0YXJ0Lngscj1lLmNsaWVudFktbi5qb3lzdGlja1ByZXNzU3RhcnQueTtNYXRoLnNxcnQodCp0K3Iqcik8PWFwfHwoZS5wb2ludGVyVHlwZT09PSJtb3VzZSJ8fGUucG9pbnRlclR5cGU9PT0icGVuIj8oZnMoKSxwcyhlLmNsaWVudFgsZS5jbGllbnRZKSk6KG4uam95c3RpY2tMb25nUHJlc3NUaW1lciYmKGNsZWFyVGltZW91dChuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXIpLG4uam95c3RpY2tMb25nUHJlc3NUaW1lcj1udWxsKSxuLmpveXN0aWNrR2VzdHVyZT0iY2FuY2VsbGVkIikpfX19ZnVuY3Rpb24gdmQoZSl7aWYoZS5wb2ludGVySWQ9PT1uLmpveXN0aWNrUG9pbnRlcklkKXtuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXImJihjbGVhclRpbWVvdXQobi5qb3lzdGlja0xvbmdQcmVzc1RpbWVyKSxuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXI9bnVsbCk7dmFyIHQ9bi5qb3lzdGlja0dlc3R1cmU7aWYodD09PSJwZW5kaW5nIil7dmFyIHI9ZS5jbGllbnRYLW4uam95c3RpY2tQcmVzc1N0YXJ0LngsaT1lLmNsaWVudFktbi5qb3lzdGlja1ByZXNzU3RhcnQueTtNYXRoLnNxcnQocipyK2kqaSk8PXVwJiZoZCgpfWVsc2UgaWYodD09PSJtb3ZlIil7dmFyIGE9bi5qb3lzdGlja0JhbGxFbD9uLmpveXN0aWNrQmFsbEVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOm51bGw7YSYmbGQod2luZG93LmlubmVyV2lkdGgtYS5yaWdodCx3aW5kb3cuaW5uZXJIZWlnaHQtYS5ib3R0b20pfXZzKCl9fWZ1bmN0aW9uIHZzKCl7aWYobi5qb3lzdGlja0xvbmdQcmVzc1RpbWVyJiYoY2xlYXJUaW1lb3V0KG4uam95c3RpY2tMb25nUHJlc3NUaW1lciksbi5qb3lzdGlja0xvbmdQcmVzc1RpbWVyPW51bGwpLG4uam95c3RpY2tCYWxsRWwmJm4uam95c3RpY2tQb2ludGVySWQhPT1udWxsKXRyeXtuLmpveXN0aWNrQmFsbEVsLnJlbGVhc2VQb2ludGVyQ2FwdHVyZShuLmpveXN0aWNrUG9pbnRlcklkKX1jYXRjaHt9bi5qb3lzdGlja01vdmVIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLG4uam95c3RpY2tNb3ZlSGFuZGxlciksbi5qb3lzdGlja01vdmVIYW5kbGVyPW51bGwpLG4uam95c3RpY2tVcEhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLG4uam95c3RpY2tVcEhhbmRsZXIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLG4uam95c3RpY2tVcEhhbmRsZXIpLG4uam95c3RpY2tVcEhhbmRsZXI9bnVsbCksbi5qb3lzdGlja0JhbGxFbCYmbi5qb3lzdGlja0JhbGxFbC5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpLG4uam95c3RpY2tCYWNrZHJvcEVsJiYhbi5qb3lzdGlja1Bpbm5lZE9wZW4mJm4uam95c3RpY2tCYWNrZHJvcEVsLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLG4uam95c3RpY2tQb2ludGVySWQ9bnVsbCxuLmpveXN0aWNrR2VzdHVyZT1udWxsLG4uam95c3RpY2tQcmVzc1N0YXJ0PW51bGx9ZnVuY3Rpb24gbWQoZSl7aWYoZT09PSJjdHJsInx8ZT09PSJhbHQifHxlPT09InNoaWZ0Iil7bi5tb2RpZmllcnNbZV09IW4ubW9kaWZpZXJzW2VdLG1yKCk7cmV0dXJufXZhciB0PU50KCk7aWYodCYmdWUodCkpeyhlPT09ImN0cmxfYyJ8fGU9PT0iZXNjYXBlIikmJmdkKHQsZSksbWkoKSxtcigpO3JldHVybn12YXIgcj1YcyhlLHtjdHJsOm4ubW9kaWZpZXJzLmN0cmwsYWx0Om4ubW9kaWZpZXJzLmFsdCxzaGlmdDpuLm1vZGlmaWVycy5zaGlmdH0pO3ImJlFzKHIsZSksbWkoKSxtcigpLGdwKCl9ZnVuY3Rpb24gZ2QoZSx0KXshZXx8IWUuaWR8fGZldGNoKCIvYXBpL3N0cnVjdHVyZWQtc2Vzc2lvbnMvIitlLmlkKyIvbWVzc2FnZXMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtpbnB1dDoiIixpbnRlcnJ1cHQ6ITAscHJlc2VydmVRdWV1ZTohMH0pfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5vaz9yLmpzb24oKTpyLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt9fSkudGhlbihmdW5jdGlvbihpKXt0aHJvdyBuZXcgRXJyb3IoaSYmaS5lcnJvcnx8Ilx1NEUyRFx1NjVBRFx1NTkzMVx1OEQyNSAoa2V5PSIrdCsiKSIpfSl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHImJnIuaWQmJihaKHIpLHIuaWQ9PT1uLnNlbGVjdGVkSWQpKXt2YXIgaT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1yLmlkfSl8fHI7bi5jdXJyZW50TWVzc2FnZXM9VmUoaSxhdChpLHIub3V0cHV0LCExKSksZnIoITApLHR5cGVvZiBrdD09ImZ1bmN0aW9uIiYma3QoKX19KS5jYXRjaChmdW5jdGlvbihyKXtyJiZyLm1lc3NhZ2UmJmNvbnNvbGUuZGVidWcoIlt3YW5kXSBqb3lzdGljayBpbnRlcnJ1cHQgbm8tb3A6IixyLm1lc3NhZ2UpfSl9ZnVuY3Rpb24gaGQoKXtuLmpveXN0aWNrUGlubmVkT3Blbj92cigpOnlkKCl9ZnVuY3Rpb24geWQoKXtpZighKCFuLmpveXN0aWNrUGFuZWxFbHx8IW4uam95c3RpY2tCYWxsRWwpKXtuLmpveXN0aWNrUGlubmVkT3Blbj0hMDt2YXIgZT1uLmpveXN0aWNrQmFsbEVsLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO24uam95c3RpY2tQYW5lbEVsLnN0eWxlLnJpZ2h0PU1hdGgubWF4KGxuLHdpbmRvdy5pbm5lcldpZHRoLWUucmlnaHQpKyJweCIsbi5qb3lzdGlja1BhbmVsRWwuc3R5bGUuYm90dG9tPU1hdGgubWF4KGxuLHdpbmRvdy5pbm5lckhlaWdodC1lLnRvcCsxMCkrInB4IixuLmpveXN0aWNrUGFuZWxFbC5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSxuLmpveXN0aWNrQmFsbEVsLmNsYXNzTGlzdC5hZGQoInBhbmVsLW9wZW4iKSxuLmpveXN0aWNrQmFja2Ryb3BFbCYmbi5qb3lzdGlja0JhY2tkcm9wRWwuY2xhc3NMaXN0LmFkZCgiYWN0aXZlIiksbXIoKX19ZnVuY3Rpb24gdnIoKXtuLmpveXN0aWNrUGlubmVkT3Blbj0hMSxuLmpveXN0aWNrUGFuZWxFbCYmbi5qb3lzdGlja1BhbmVsRWwuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIiksbi5qb3lzdGlja0JhbGxFbCYmbi5qb3lzdGlja0JhbGxFbC5jbGFzc0xpc3QucmVtb3ZlKCJwYW5lbC1vcGVuIiksbi5qb3lzdGlja0JhY2tkcm9wRWwmJm4uam95c3RpY2tHZXN0dXJlPT1udWxsJiZuLmpveXN0aWNrQmFja2Ryb3BFbC5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKX1mdW5jdGlvbiBtcigpe24uam95c3RpY2tQYW5lbEVsJiZbImN0cmwiLCJhbHQiXS5mb3JFYWNoKGZ1bmN0aW9uKGUpe3ZhciB0PW4uam95c3RpY2tQYW5lbEVsLnF1ZXJ5U2VsZWN0b3IoJy53anAtbW9kW2RhdGEta2V5PSInK2UrJyJdJyk7dCYmdC5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLCEhbi5tb2RpZmllcnNbZV0pfSl9ZnVuY3Rpb24gYmQoZSl7dmFyIHQ9ZS50YXJnZXQmJmUudGFyZ2V0LmNsb3Nlc3Q/ZS50YXJnZXQuY2xvc2VzdCgiLndqcC1jbG9zZSIpOm51bGw7aWYodCl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksdnIoKTtyZXR1cm59dmFyIHI9ZS50YXJnZXQmJmUudGFyZ2V0LmNsb3Nlc3Q/ZS50YXJnZXQuY2xvc2VzdCgiLndqcC1rZXkiKTpudWxsO2lmKHIpe2UucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpO3ZhciBpPXIuZ2V0QXR0cmlidXRlKCJkYXRhLWtleSIpO2kmJm1kKGkpfX1mdW5jdGlvbiBtcygpe3ZhciBlPW4uam95c3RpY2tSb290RWw7aWYoZSl7dmFyIHQ9Y3MoKTtlLmNsYXNzTGlzdC50b2dnbGUoInZpc2libGUiLHQpLHR8fCgobi5qb3lzdGlja1BvaW50ZXJJZCE9PW51bGx8fG4uam95c3RpY2tHZXN0dXJlKSYmdnMoKSxuLmpveXN0aWNrUGlubmVkT3BlbiYmdnIoKSxuLmpveXN0aWNrQmFja2Ryb3BFbCYmbi5qb3lzdGlja0JhY2tkcm9wRWwuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIikpfX1mdW5jdGlvbiBFZCgpe24uam95c3RpY2tMb25nUHJlc3NUaW1lciYmKGNsZWFyVGltZW91dChuLmpveXN0aWNrTG9uZ1ByZXNzVGltZXIpLG4uam95c3RpY2tMb25nUHJlc3NUaW1lcj1udWxsKSxuLmpveXN0aWNrTW92ZUhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsbi5qb3lzdGlja01vdmVIYW5kbGVyKSxuLmpveXN0aWNrTW92ZUhhbmRsZXI9bnVsbCksbi5qb3lzdGlja1VwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsbi5qb3lzdGlja1VwSGFuZGxlciksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsbi5qb3lzdGlja1VwSGFuZGxlciksbi5qb3lzdGlja1VwSGFuZGxlcj1udWxsKSxuLmpveXN0aWNrUmVzaXplSGFuZGxlciYmKHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLG4uam95c3RpY2tSZXNpemVIYW5kbGVyKSx3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigib3JpZW50YXRpb25jaGFuZ2UiLG4uam95c3RpY2tSZXNpemVIYW5kbGVyKSxuLmpveXN0aWNrUmVzaXplSGFuZGxlcj1udWxsKSxuLmpveXN0aWNrUm9vdEVsJiZuLmpveXN0aWNrUm9vdEVsLnBhcmVudE5vZGUmJm4uam95c3RpY2tSb290RWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChuLmpveXN0aWNrUm9vdEVsKSxuLmpveXN0aWNrUm9vdEVsPW51bGwsbi5qb3lzdGlja1BhbmVsRWw9bnVsbCxuLmpveXN0aWNrQmFja2Ryb3BFbD1udWxsLG4uam95c3RpY2tCYWxsRWw9bnVsbCxuLmpveXN0aWNrUG9pbnRlcklkPW51bGwsbi5qb3lzdGlja0dlc3R1cmU9bnVsbCxuLmpveXN0aWNrUHJlc3NTdGFydD1udWxsLG4uam95c3RpY2tQaW5uZWRPcGVuPSExfWZ1bmN0aW9uIEZkKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKGUpe3ZhciB0PSFOZSgpO24ucmVzaXplSGFuZGxlcj1mdW5jdGlvbigpe3F0KCEwKTt2YXIgcj0hTmUoKTt0IT09ciYmKHQ9ciwhciYmbi5zaWRlYmFyUGlubmVkJiZuLnNlc3Npb25zRHJhd2VyT3Blbj8obi5zZXNzaW9uc0RyYXdlck9wZW49ITEsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMSksTXIoKSk6ciYmbi5zaWRlYmFyUGlubmVkJiYhbi5zZXNzaW9uc0RyYXdlck9wZW4mJihuLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCEwKSxNcigpKSl9LHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLG4ucmVzaXplSGFuZGxlciksd2luZG93LnZpc3VhbFZpZXdwb3J0JiYobi52aXN1YWxWaWV3cG9ydEhhbmRsZXI9ZnVuY3Rpb24oKXtxdCghMCl9LHdpbmRvdy52aXN1YWxWaWV3cG9ydC5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLG4udmlzdWFsVmlld3BvcnRIYW5kbGVyKSksbi52aXNpYmlsaXR5SGFuZGxlcj1mdW5jdGlvbigpe2RvY3VtZW50LmhpZGRlbnx8aXQoInZpc2liaWxpdHkiLHtmb3JjZVJlcGxheTohMH0pfSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixuLnZpc2liaWxpdHlIYW5kbGVyKSxuLm9yaWVudGF0aW9uSGFuZGxlcj1mdW5jdGlvbigpe2l0KCJvcmllbnRhdGlvbiIse2ZvcmNlUmVwbGF5OiEwfSl9LHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvcmllbnRhdGlvbmNoYW5nZSIsbi5vcmllbnRhdGlvbkhhbmRsZXIpLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3F0KCEwKX0pfX1mdW5jdGlvbiB3ZCgpe24udGVybWluYWxIZWFsdGhUaW1lcnx8KG4udGVybWluYWxIZWFsdGhUaW1lcj1zZXRJbnRlcnZhbChmdW5jdGlvbigpe2lmKCEoIW4udGVybWluYWx8fG4uY3VycmVudFZpZXchPT0idGVybWluYWwifHxkb2N1bWVudC5oaWRkZW4pKXt2YXIgZT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odSl7cmV0dXJuIHUuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZighKCFlfHxlLnNlc3Npb25LaW5kPT09InN0cnVjdHVyZWQiKSl7aXQoImhlYWx0aCIpO3ZhciB0PURhdGUubm93KCkscj1uLmxhc3RDaHVua0F0PjAmJnQtbi5sYXN0Q2h1bmtBdD4zMDAsaT10LW4ubGFzdFRlcm1pbmFsUmVzeW5jQXQ+M2U0LGE9bi5sYXN0Q2h1bmtBdD5uLmxhc3RUZXJtaW5hbFJlc3luY0F0O2kmJmEmJihyfHxlLnN0YXR1cyE9PSJydW5uaW5nIikmJm4udGVybWluYWxPdXRwdXQmJkFuKCl9fX0sNWUzKSl9ZnVuY3Rpb24gQ2QoKXtuLnRlcm1pbmFsSGVhbHRoVGltZXImJihjbGVhckludGVydmFsKG4udGVybWluYWxIZWFsdGhUaW1lciksbi50ZXJtaW5hbEhlYWx0aFRpbWVyPW51bGwpfWZ1bmN0aW9uIGdyKCl7Q2QoKSxuLnJlc2l6ZVRpbWVyJiYoY2xlYXJUaW1lb3V0KG4ucmVzaXplVGltZXIpLG4ucmVzaXplVGltZXI9bnVsbCksbi5yZXNpemVPYnNlcnZlciYmKG4ucmVzaXplT2JzZXJ2ZXIuZGlzY29ubmVjdCgpLG4ucmVzaXplT2JzZXJ2ZXI9bnVsbCksbi5yZXNpemVIYW5kbGVyJiYod2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsbi5yZXNpemVIYW5kbGVyKSxuLnJlc2l6ZUhhbmRsZXI9bnVsbCksbi52aXN1YWxWaWV3cG9ydEhhbmRsZXImJndpbmRvdy52aXN1YWxWaWV3cG9ydCYmKHdpbmRvdy52aXN1YWxWaWV3cG9ydC5yZW1vdmVFdmVudExpc3RlbmVyKCJyZXNpemUiLG4udmlzdWFsVmlld3BvcnRIYW5kbGVyKSxuLnZpc3VhbFZpZXdwb3J0SGFuZGxlcj1udWxsKSxuLnZpc2liaWxpdHlIYW5kbGVyJiYoZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNoYW5nZSIsbi52aXNpYmlsaXR5SGFuZGxlciksbi52aXNpYmlsaXR5SGFuZGxlcj1udWxsKSxuLm9yaWVudGF0aW9uSGFuZGxlciYmKHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCJvcmllbnRhdGlvbmNoYW5nZSIsbi5vcmllbnRhdGlvbkhhbmRsZXIpLG4ub3JpZW50YXRpb25IYW5kbGVyPW51bGwpLFtbIm1vdXNlbW92ZSIsInJlc2l6ZU1vdXNlTW92ZSJdLFsibW91c2V1cCIsInJlc2l6ZU1vdXNlVXAiXSxbInRvdWNobW92ZSIsInJlc2l6ZVRvdWNoTW92ZSJdLFsidG91Y2hlbmQiLCJyZXNpemVUb3VjaEVuZCJdXS5mb3JFYWNoKGZ1bmN0aW9uKGEpe25bYVsxXV0mJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKGFbMF0sblthWzFdXSksblthWzFdXT1udWxsKX0pLFVuKCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKG4udGVybWluYWxWaWV3cG9ydEVsJiYobi50ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlciYmbi50ZXJtaW5hbFZpZXdwb3J0RWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigic2Nyb2xsIixuLnRlcm1pbmFsVmlld3BvcnRTY3JvbGxIYW5kbGVyKSxuLnRlcm1pbmFsVmlld3BvcnRUb3VjaEhhbmRsZXImJm4udGVybWluYWxWaWV3cG9ydEVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsbi50ZXJtaW5hbFZpZXdwb3J0VG91Y2hIYW5kbGVyKSxuLnRlcm1pbmFsVmlld3BvcnRUb3VjaFN0YXJ0SGFuZGxlciYmbi50ZXJtaW5hbFZpZXdwb3J0RWwucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsbi50ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXIpKSxlJiYobi50ZXJtaW5hbFdoZWVsSGFuZGxlciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKCJ3aGVlbCIsbi50ZXJtaW5hbFdoZWVsSGFuZGxlciksbi50ZXJtaW5hbENsaWNrSGFuZGxlciYmZS5yZW1vdmVFdmVudExpc3RlbmVyKCJjbGljayIsbi50ZXJtaW5hbENsaWNrSGFuZGxlcikpLG4udGVybWluYWxWaWV3cG9ydEVsPW51bGwsbi50ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcj1udWxsLG4udGVybWluYWxWaWV3cG9ydFRvdWNoSGFuZGxlcj1udWxsLG4udGVybWluYWxWaWV3cG9ydFRvdWNoU3RhcnRIYW5kbGVyPW51bGwsbi50ZXJtaW5hbFdoZWVsSGFuZGxlcj1udWxsLG4udGVybWluYWxDbGlja0hhbmRsZXI9bnVsbCxuLnRlcm1pbmFsU2Nyb2xsYmFySGlkZVRpbWVyJiYoY2xlYXJUaW1lb3V0KG4udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXIpLG4udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9bnVsbCksbi50ZXJtaW5hbFNjcm9sbGJhckVsJiZuLnRlcm1pbmFsU2Nyb2xsYmFyRWwucGFyZW50Tm9kZSYmbi50ZXJtaW5hbFNjcm9sbGJhckVsLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQobi50ZXJtaW5hbFNjcm9sbGJhckVsKSxuLnRlcm1pbmFsU2Nyb2xsYmFyRWw9bnVsbCxuLnRlcm1pbmFsU2Nyb2xsYmFyVGh1bWJFbD1udWxsLG4udGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZz0hMSxuLnRlcm1pbmFsU2Nyb2xsYmFyUmFmUGVuZGluZz0hMSxuLnRlcm1pbmFsJiYobi50ZXJtaW5hbC5kZXN0cm95KCksbi50ZXJtaW5hbD1udWxsKSxlKWZvcih2YXIgdD1lLnF1ZXJ5U2VsZWN0b3JBbGwoIi50ZXJtaW5hbC1zY3JvbGwtd3JhcCIpLHI9MDtyPHQubGVuZ3RoO3IrKyl7dmFyIGk9dFtyXTtpLnBhcmVudE5vZGU9PT1lJiZlLnJlbW92ZUNoaWxkKGkpfWxhKCksbi5zeW5jT3V0cHV0QnVmZmVyPW51bGwsbi5zeW5jT3V0cHV0RGVhZGxpbmU9MCxuLnN5bmNGcmFtaW5nUmVzaWR1ZT0hMSxuLnRlcm1pbmFsU2Vzc2lvbklkPW51bGwsbi50ZXJtaW5hbE91dHB1dD0iIixuLnRlcm1pbmFsT3V0cHV0TWFya2VyPTAsbi50ZXJtaW5hbEF1dG9Gb2xsb3c9ITAsbi5zaG93VGVybWluYWxKdW1wVG9Cb3R0b209ITEsZHQoKSxuLnNvZnRSZXN5bmNUaW1lciYmKGNsZWFyVGltZW91dChuLnNvZnRSZXN5bmNUaW1lciksbi5zb2Z0UmVzeW5jVGltZXI9bnVsbCksbi5fcmVzeW5jQ2h1bmtUYWlsVGltZXImJihjbGVhclRpbWVvdXQobi5fcmVzeW5jQ2h1bmtUYWlsVGltZXIpLG4uX3Jlc3luY0NodW5rVGFpbFRpbWVyPW51bGwpLG4uX3Jlc3luY0NodW5rTGFzdEF0PTAsbi5fcmVzeW5jU3RhdHNXaW5kb3dTdGFydD0wLG4uX3Jlc3luY1N0YXRzQ291bnQ9MCxuLl9yZXN5bmNMYXN0V2FybkF0PTAsbi5fcmVzeW5jSW5Qcm9ncmVzcz0hMSxuLmxhc3RSZXNpemU9e2NvbHM6MCxyb3dzOjB9LEVkKCl9ZnVuY3Rpb24gbmkoZSx0KXtpZihuLnNlbGVjdGVkSWQpe3ZhciByPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5pZD09PW4uc2VsZWN0ZWRJZH0pO2lmKCEoIXJ8fHIuc3RhdHVzIT09InJ1bm5pbmciKSYmIXVlKHIpKXtlPjI1NiYmKGU9MjU2KSx0PjE2MCYmKHQ9MTYwKTt2YXIgaT17Y29sczplLHJvd3M6dH07KG4ubGFzdFJlc2l6ZS5jb2xzIT09aS5jb2xzfHxuLmxhc3RSZXNpemUucm93cyE9PWkucm93cykmJihuLmxhc3RSZXNpemU9aSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK24uc2VsZWN0ZWRJZCsiL3Jlc2l6ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoaSl9KS5jYXRjaChmdW5jdGlvbigpe30pKX19fWZ1bmN0aW9uIGl0KGUsdCl7aWYoIW4udGVybWluYWwpcmV0dXJuITE7dmFyIHI9dHx8e30saT1yLmZvcmNlUmVwbGF5PT09ITAsYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoIWF8fGEub2Zmc2V0V2lkdGg9PT0wfHxhLm9mZnNldEhlaWdodD09PTApcmV0dXJuIGhyKGV8fCJmaXQtcmV0cnkiLHtmb3JjZVJlcGxheTppfSksITE7dmFyIHU9bi50ZXJtaW5hbEF1dG9Gb2xsb3d8fHVhKCkscz1uLnRlcm1pbmFsLmNvbHMsbz1uLnRlcm1pbmFsLnJvd3M7cmV0dXJuIHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3JlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2lmKG4udGVybWluYWwpe3R5cGVvZiBuLnRlcm1pbmFsLnJlbWVhc3VyZT09ImZ1bmN0aW9uIiYmbi50ZXJtaW5hbC5yZW1lYXN1cmUoKSxuaShuLnRlcm1pbmFsLmNvbHMsbi50ZXJtaW5hbC5yb3dzKTt2YXIgbD1uLnRlcm1pbmFsLmNvbHMhPT1zfHxuLnRlcm1pbmFsLnJvd3MhPT1vOyFsJiZpJiZuLnRlcm1pbmFsT3V0cHV0JiZBbih7c2tpcEZpdDohMH0pLHUmJm10KCJmb3JjZSIpfX0pfSksITB9ZnVuY3Rpb24gaHIoZSx0KXtpZighbi50ZXJtaW5hbClyZXR1cm47dmFyIHI9dHx8e30saT1yLmZvcmNlUmVwbGF5IT09ITEsYT0wLHU9ODtmdW5jdGlvbiBzKCl7aWYobi50ZXJtaW5hbCl7dmFyIG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2lmKG8mJm8ub2Zmc2V0SGVpZ2h0LG8mJm8ub2Zmc2V0V2lkdGg+MCYmby5vZmZzZXRIZWlnaHQ+MCl7aXQoZSx7Zm9yY2VSZXBsYXk6aX0pO3JldHVybn0rK2E+PXV8fChhPD00P3JlcXVlc3RBbmltYXRpb25GcmFtZShzKTpzZXRUaW1lb3V0KHMsMzIpKX19cygpfWZ1bmN0aW9uIHF0KGUpe24ucmVzaXplVGltZXImJihjbGVhclRpbWVvdXQobi5yZXNpemVUaW1lciksbi5yZXNpemVUaW1lcj1udWxsKTt2YXIgdD1lPzA6MTAwO24ucmVzaXplVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24ucmVzaXplVGltZXI9bnVsbCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoQmQpfSx0KX1mdW5jdGlvbiBCZCgpe2lmKG4udGVybWluYWwpe3ZhciBlPW4udGVybWluYWxBdXRvRm9sbG93fHx1YSgpO2UmJm10KCJmb3JjZSIpLG5pKG4udGVybWluYWwuY29scyxuLnRlcm1pbmFsLnJvd3MpfX1mdW5jdGlvbiBRdChlKXtuLndvcmtpbmdEaXI9ZTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiLGUpfWNhdGNoe31EZChlKX1mdW5jdGlvbiByYShlKXtmZXRjaCgiL2FwaS9yZWNlbnQtcGF0aHMiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdC5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHQpe2UodHx8W10pfSkuY2F0Y2goZnVuY3Rpb24oKXtlKFtdKX0pfWZ1bmN0aW9uIERkKGUpe3JldHVybiBmZXRjaCgiL2FwaS9yZWNlbnQtcGF0aHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtwYXRoOmV9KX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSl9ZnVuY3Rpb24gaWEoZSl7dmFyIHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHIpe3JldHVybiByLmlkPT09ZX0pO3QmJnQuc3RhdHVzIT09InJ1bm5pbmciJiYhdWUodCk/aW8oZSk6enQoZSksVnQoKX1mdW5jdGlvbiBrZChlKXt2YXIgdD1lLnRhcmdldDtpZighKCF0fHwhKHQgaW5zdGFuY2VvZiBFbGVtZW50KSkpe3ZhciByPXQuY2xvc2VzdCgiLnNpZGViYXItY29sbGFwc2VkLXRpbGUiKTtpZihyJiZyIGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpe2lmKHIuZGF0YXNldC5jb2xsYXBzZWROZXdTZXNzaW9uKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSxHYSgpO3JldHVybn1pZihyLmRhdGFzZXQuY29sbGFwc2VkU2Vzc2lvbklkKXtlLnByZXZlbnREZWZhdWx0KCksZS5zdG9wUHJvcGFnYXRpb24oKSxpYShyLmRhdGFzZXQuY29sbGFwc2VkU2Vzc2lvbklkKTtyZXR1cm59aWYoci5kYXRhc2V0LmNvbGxhcHNlZEhpc3RvcnlJZCl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIGk9ci5kYXRhc2V0LmNvbGxhcHNlZEhpc3RvcnlJZCxhPXIuZGF0YXNldC5jd2R8fCIiO2dpKGksYSkudGhlbihmdW5jdGlvbih2KXt2JiZ2LmlkJiYobi5zZWxlY3RlZElkPXYuaWQseWUoKSxuLmRyYWZ0c1t2LmlkXT0iIixwbigpLnRoZW4oZnVuY3Rpb24oKXt6dCh2LmlkKX0pKX0pO3JldHVybn19dmFyIHU9dC5jbG9zZXN0KCIjY2xhdWRlLWhpc3RvcnktdG9nZ2xlIik7aWYodSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksbi5jbGF1ZGVIaXN0b3J5RXhwYW5kZWQ9IW4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkLG4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkJiYhbi5jbGF1ZGVIaXN0b3J5TG9hZGVkJiZYcigpLHBlKCk7cmV0dXJufXZhciBzPXQuY2xvc2VzdCgiW2RhdGEtYWN0aW9uXSIpO2lmKHMmJnMgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCl7aWYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkscy5kYXRhc2V0LmFjdGlvbj09PSJ0b2dnbGUtbWFuYWdlLW1vZGUiKU5jKCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InNlbGVjdC1hbGwtdmlzaWJsZSIpUXUoKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0iY2xlYXItc2VsZWN0aW9uIilSYygpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJkZWxldGUtc2VsZWN0ZWQiKVdjKCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InRvZ2dsZS1zZWxlY3Rpb24iKWRyKHMuZGF0YXNldC5raW5kLHMuZGF0YXNldC5pZCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImRlbGV0ZS1zZXNzaW9uIiYmcy5kYXRhc2V0LnNlc3Npb25JZCkoZnVuY3Rpb24odil7a24oIlx1Nzg2RVx1OEJBNFx1NTIyMFx1OTY2NFx1OEZEOVx1NEUyQVx1NEYxQVx1OEJERFx1NTQxN1x1RkYxRlx1NkI2NFx1NjRDRFx1NEY1Q1x1NjVFMFx1NkNENVx1NjRBNFx1OTUwMFx1MzAwMiIse3RpdGxlOiJcdTUyMjBcdTk2NjRcdTRGMUFcdThCREQifSkudGhlbihmdW5jdGlvbihnKXtnJiZacyh2KX0pfSkocy5kYXRhc2V0LnNlc3Npb25JZCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImRlbGV0ZS1oaXN0b3J5IiYmcy5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZCkoZnVuY3Rpb24odixnKXtrbigiXHU3ODZFXHU4QkE0XHU5NjkwXHU4NUNGXHU4RkQ5XHU2NzYxIENsYXVkZSBcdTUzODZcdTUzRjJcdTU0MTdcdUZGMUYiLHt0aXRsZToiXHU5NjkwXHU4NUNGXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREIixva0xhYmVsOiJcdTk2OTBcdTg1Q0YifSkudGhlbihmdW5jdGlvbihoKXtoJiZlbyh2LGcpfSl9KShzLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkLHMuY2xvc2VzdCgiLnNlc3Npb24taXRlbSIpKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0idG9nZ2xlLWhpc3RvcnktZGlyZWN0b3J5IiYmcy5kYXRhc2V0LmN3ZCl7dmFyIG89cy5kYXRhc2V0LmN3ZDtuLmNsYXVkZUhpc3RvcnlFeHBhbmRlZERpcnNbb109IW4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlyc1tvXSxwZSgpfWVsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJkZWxldGUtaGlzdG9yeS1kaXJlY3RvcnkiJiZzLmRhdGFzZXQuY3dkKShmdW5jdGlvbih2LGcpe3ZhciBoPUJwKHYpLG09Um4oKS5maWx0ZXIoZnVuY3Rpb24oYil7cmV0dXJuIGIuY3dkPT09dn0pLmxlbmd0aDtrbigiXHU3ODZFXHU4QkE0XHU2RTA1XHU3QTdBXHU2QjY0XHU3NkVFXHU1RjU1XHU0RTBCXHU3Njg0ICIrbSsiIFx1Njc2MSBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU1NDE3XHVGRjFGIix7dGl0bGU6Ilx1NkUwNVx1N0E3QVx1NzZFRVx1NUY1NVx1NTM4Nlx1NTNGMiIsb2tMYWJlbDoiXHU2RTA1XHU3QTdBIn0pLnRoZW4oZnVuY3Rpb24oYil7YiYmKHRvKGgsITApLENwKHYsZyxoKSl9KX0pKHMuZGF0YXNldC5jd2Qscyk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09ImNsZWFyLWFsbC1oaXN0b3J5Iil6YygpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJ0b2dnbGUtYXJjaGl2ZWQtZ3JvdXAiKW4uYXJjaGl2ZWRFeHBhbmRlZD0hbi5hcmNoaXZlZEV4cGFuZGVkLHBlKCk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InJlc3VtZSImJnMuZGF0YXNldC5zZXNzaW9uSWQpQXAocyk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InJlc3VtZS1oaXN0b3J5IiYmcy5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZClUcChzKTtlbHNlIGlmKHMuZGF0YXNldC5hY3Rpb249PT0icmVzdW1lLWNvZGV4LWhpc3RvcnkiJiZzLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkKXhwKHMpO2Vsc2UgaWYocy5kYXRhc2V0LmFjdGlvbj09PSJkZWxldGUtY29kZXgtaGlzdG9yeSImJnMuZGF0YXNldC5jbGF1ZGVTZXNzaW9uSWQpSXAocyk7ZWxzZSBpZihzLmRhdGFzZXQuYWN0aW9uPT09InRvZ2dsZS1jb2RleC1oaXN0b3J5LWRpcmVjdG9yeSImJnMuZGF0YXNldC5jd2Qpe3ZhciBsPXMuZGF0YXNldC5jd2Q7bi5jb2RleEhpc3RvcnlFeHBhbmRlZERpcnNbbF09IW4uY29kZXhIaXN0b3J5RXhwYW5kZWREaXJzW2xdLHBlKCl9ZWxzZSBzLmRhdGFzZXQuYWN0aW9uPT09Indvcmt0cmVlLW1lcmdlIiYmcy5kYXRhc2V0LnNlc3Npb25JZD9HbyhzLmRhdGFzZXQuc2Vzc2lvbklkKTpzLmRhdGFzZXQuYWN0aW9uPT09Indvcmt0cmVlLWNsZWFudXAiJiZzLmRhdGFzZXQuc2Vzc2lvbklkJiZRbyhzLmRhdGFzZXQuc2Vzc2lvbklkKTtyZXR1cm59dmFyIGM9dC5jbG9zZXN0KCIuc2Vzc2lvbi1pdGVtIik7aWYoYyl7aWYobi5zZXNzaW9uc01hbmFnZU1vZGUpe2MuZGF0YXNldC5zZXNzaW9uSWQ/ZHIoInNlc3Npb25zIixjLmRhdGFzZXQuc2Vzc2lvbklkKTpjLmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkJiZkcigiaGlzdG9yeSIsYy5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCk7cmV0dXJufWlmKGMuY2xhc3NMaXN0LmNvbnRhaW5zKCJzd2lwZWQiKSl7eHIoKTtyZXR1cm59aWYobm8pcmV0dXJuO2lmKGMuZGF0YXNldC5zZXNzaW9uSWQpaWEoYy5kYXRhc2V0LnNlc3Npb25JZCk7ZWxzZSBpZihjLmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkKXt2YXIgZj1jLmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkLGQ9Yy5kYXRhc2V0LmN3ZDtnaShmLGQpLnRoZW4oZnVuY3Rpb24odil7diYmdi5pZCYmKG4uc2VsZWN0ZWRJZD12LmlkLHllKCksbi5kcmFmdHNbdi5pZF09IiIscG4oKS50aGVuKGZ1bmN0aW9uKCl7enQodi5pZCksVnQoKX0pKX0pfX19fWZ1bmN0aW9uIEFkKGUpe2lmKCEoZS5rZXkhPT0iRW50ZXIiJiZlLmtleSE9PSIgIikpe3ZhciB0PWUudGFyZ2V0LmNsb3Nlc3QoIi5zZXNzaW9uLWl0ZW0iKTtpZih0KXtpZihlLnByZXZlbnREZWZhdWx0KCksbi5zZXNzaW9uc01hbmFnZU1vZGUpe3QuZGF0YXNldC5zZXNzaW9uSWQ/ZHIoInNlc3Npb25zIix0LmRhdGFzZXQuc2Vzc2lvbklkKTp0LmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkJiZkcigiaGlzdG9yeSIsdC5kYXRhc2V0LmNsYXVkZUhpc3RvcnlJZCk7cmV0dXJufWlmKHQuZGF0YXNldC5zZXNzaW9uSWQpaWEodC5kYXRhc2V0LnNlc3Npb25JZCk7ZWxzZSBpZih0LmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkKXt2YXIgcj10LmRhdGFzZXQuY2xhdWRlSGlzdG9yeUlkLGk9dC5kYXRhc2V0LmN3ZDtnaShyLGkpLnRoZW4oZnVuY3Rpb24oYSl7YSYmYS5pZCYmKG4uc2VsZWN0ZWRJZD1hLmlkLHllKCksbi5kcmFmdHNbYS5pZF09IiIscG4oKS50aGVuKGZ1bmN0aW9uKCl7enQoYS5pZCksVnQoKX0pKX0pfX19fWZ1bmN0aW9uIGFhKGUsdCl7dmFyIHI9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09bi5zZWxlY3RlZElkfSk7aWYocil7dmFyIGk9cltlXTtpZighaSl7aygiXHU1RjUzXHU1MjREXHU0RjFBXHU4QkREXHU2Q0ExXHU2NzA5XHU1M0VGXHU1OTBEXHU1MjM2XHU3Njg0XHU1MTg1XHU1QkI5XHUzMDAyIiwiZXJyb3IiKTtyZXR1cm59SHIoU3RyaW5nKGkpLG51bGwsZnVuY3Rpb24oKXtrKHR8fCJcdTVERjJcdTU5MERcdTUyMzYiLCJpbmZvIil9KX19ZnVuY3Rpb24gQ3QoKXtyZXR1cm4hbi50ZXJtaW5hbHx8IW4udGVybWluYWwuZWxlbWVudD9udWxsOihuLnRlcm1pbmFsVmlld3BvcnRFbD1uLnRlcm1pbmFsLmVsZW1lbnQsbi50ZXJtaW5hbFZpZXdwb3J0RWwpfWZ1bmN0aW9uIFVuKCl7bi50ZXJtaW5hbFNjcm9sbElkbGVUaW1lciYmKGNsZWFyVGltZW91dChuLnRlcm1pbmFsU2Nyb2xsSWRsZVRpbWVyKSxuLnRlcm1pbmFsU2Nyb2xsSWRsZVRpbWVyPW51bGwpfWZ1bmN0aW9uIGR0KCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLWp1bXAtYm90dG9tIiksdD0hIW4uc2VsZWN0ZWRJZCYmbi5jdXJyZW50Vmlldz09PSJ0ZXJtaW5hbCImJiFuLnRlcm1pbmFsQXV0b0ZvbGxvdyYmIWdzKCk7bi5zaG93VGVybWluYWxKdW1wVG9Cb3R0b209dCxlJiZlLmNsYXNzTGlzdC50b2dnbGUoInZpc2libGUiLHQpO3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtyJiZyLmNsYXNzTGlzdC50b2dnbGUoImhhcy1qdW1wLWJ0biIsdCl9ZnVuY3Rpb24gdWEoKXt2YXIgZT1DdCgpO2lmKCFlKXJldHVybiEwO3ZhciB0PWUuc2Nyb2xsSGVpZ2h0LWUuY2xpZW50SGVpZ2h0LWUuc2Nyb2xsVG9wO3JldHVybiB0PD1uLnRlcm1pbmFsU2Nyb2xsVGhyZXNob2xkfWZ1bmN0aW9uIGdzKCl7dmFyIGU9Q3QoKTtpZighZSlyZXR1cm4hMDt2YXIgdD1lLnNjcm9sbEhlaWdodC1lLmNsaWVudEhlaWdodC1lLnNjcm9sbFRvcDtyZXR1cm4gdDw9Mn1mdW5jdGlvbiBocyhlKXtpZihuLnRlcm1pbmFsKXt2YXIgdD1DdCgpO2lmKHQpe3ZhciByPWU/NTAwOjEyMDtuLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw9TWF0aC5tYXgobi50ZXJtaW5hbFByb2dyYW1tYXRpY1Njcm9sbFVudGlsLERhdGUubm93KCkrciksZT90LnNjcm9sbFRvKHt0b3A6dC5zY3JvbGxIZWlnaHQsYmVoYXZpb3I6InNtb290aCJ9KTp0LnNjcm9sbFRvcD10LnNjcm9sbEhlaWdodH19fWZ1bmN0aW9uIHNhKCl7bi50ZXJtaW5hbEF1dG9Gb2xsb3c9ITEsVW4oKSxuLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw9MCxuLnRlcm1pbmFsJiYiX3Nob3VsZFNjcm9sbFRvQm90dG9tImluIG4udGVybWluYWwmJihuLnRlcm1pbmFsLl9zaG91bGRTY3JvbGxUb0JvdHRvbT0hMSksZHQoKX1mdW5jdGlvbiBtdChlKXtpZihuLnRlcm1pbmFsKXt2YXIgdD1lPT09ImZvcmNlIjtpZih0KXtuLnRlcm1pbmFsQXV0b0ZvbGxvdz0hMCxVbigpLGhzKCExKSxkdCgpO3JldHVybn1pZighbi50ZXJtaW5hbEF1dG9Gb2xsb3cpe2R0KCk7cmV0dXJufWhzKCExKSxkdCgpfX1mdW5jdGlvbiB4ZChlKXt2YXIgdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt0LmNsYXNzTmFtZT0idGVybWluYWwtc2Nyb2xsYmFyIjt2YXIgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyLmNsYXNzTmFtZT0idGVybWluYWwtc2Nyb2xsYmFyLXRyYWNrIjt2YXIgaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmNsYXNzTmFtZT0idGVybWluYWwtc2Nyb2xsYmFyLXRodW1iIixyLmFwcGVuZENoaWxkKGkpLHQuYXBwZW5kQ2hpbGQociksZS5hcHBlbmRDaGlsZCh0KSxuLnRlcm1pbmFsU2Nyb2xsYmFyRWw9dCxuLnRlcm1pbmFsU2Nyb2xsYmFyVGh1bWJFbD1pLG4udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9bnVsbCxuLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITEsbi50ZXJtaW5hbFNjcm9sbGJhclJhZlBlbmRpbmc9ITE7ZnVuY3Rpb24gYSgpe24udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXImJihjbGVhclRpbWVvdXQobi50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lciksbi50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lcj1udWxsKSx0LmNsYXNzTGlzdC5hZGQoInZpc2libGUiKX1mdW5jdGlvbiB1KCl7bi50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nfHwobi50ZXJtaW5hbFNjcm9sbGJhckhpZGVUaW1lciYmY2xlYXJUaW1lb3V0KG4udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXIpLG4udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24udGVybWluYWxTY3JvbGxiYXJIaWRlVGltZXI9bnVsbCxuLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmd8fHQuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfSwxNTAwKSl9ZnVuY3Rpb24gcygpe24udGVybWluYWxTY3JvbGxiYXJSYWZQZW5kaW5nPSExO3ZhciBtPUN0KCk7aWYobSl7dmFyIGI9bS5zY3JvbGxIZWlnaHQsRj1tLmNsaWVudEhlaWdodDtpZihiPD1GKXt0LmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKTtyZXR1cm59dmFyIHc9ci5jbGllbnRIZWlnaHQsRT1NYXRoLm1heCgyOCxGL2IqdyksQT1iLUYseD1tLnNjcm9sbFRvcC9BLEk9eCoody1FKTtpLnN0eWxlLmhlaWdodD1FKyJweCIsaS5zdHlsZS50b3A9SSsicHgifX1mdW5jdGlvbiBvKCl7bi50ZXJtaW5hbFNjcm9sbGJhclJhZlBlbmRpbmd8fChuLnRlcm1pbmFsU2Nyb2xsYmFyUmFmUGVuZGluZz0hMCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUocykpfXZhciBsPUN0KCk7bCYmbC5hZGRFdmVudExpc3RlbmVyKCJzY3JvbGwiLGZ1bmN0aW9uKCl7YSgpLG8oKSx1KCl9LHtwYXNzaXZlOiEwfSksci5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWRvd24iLGZ1bmN0aW9uKG0pe2lmKG0udGFyZ2V0IT09aSl7bS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBiPUN0KCk7aWYoYil7dmFyIEY9ci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSx3PShtLmNsaWVudFktRi50b3ApL0YuaGVpZ2h0LEU9Yi5zY3JvbGxIZWlnaHQtYi5jbGllbnRIZWlnaHQ7Yi5zY3JvbGxUb3A9dypFfX19KTt2YXIgYz0wLGY9MDtpLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlZG93biIsZnVuY3Rpb24obSl7bS5wcmV2ZW50RGVmYXVsdCgpLG0uc3RvcFByb3BhZ2F0aW9uKCksbi50ZXJtaW5hbFNjcm9sbGJhckRyYWdnaW5nPSEwLGkuY2xhc3NMaXN0LmFkZCgiZHJhZ2dpbmciKSxjPW0uY2xpZW50WTt2YXIgYj1DdCgpO2Y9Yj9iLnNjcm9sbFRvcDowLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlbW92ZSIsZCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2V1cCIsdil9KTtmdW5jdGlvbiBkKG0pe20ucHJldmVudERlZmF1bHQoKTt2YXIgYj1DdCgpO2lmKGIpe3ZhciBGPXIuY2xpZW50SGVpZ2h0LHc9Yi5zY3JvbGxIZWlnaHQsRT1iLmNsaWVudEhlaWdodCxBPXctRTtpZighKEE8PTApKXt2YXIgeD1NYXRoLm1heCgyOCxFL3cqRiksST1GLXg7aWYoIShJPD0wKSl7dmFyIGo9bS5jbGllbnRZLWMsVj1qL0kqQTtiLnNjcm9sbFRvcD1mK1Z9fX19ZnVuY3Rpb24gdigpe24udGVybWluYWxTY3JvbGxiYXJEcmFnZ2luZz0hMSxpLmNsYXNzTGlzdC5yZW1vdmUoImRyYWdnaW5nIiksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigibW91c2Vtb3ZlIixkKSxkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJtb3VzZXVwIix2KSx1KCl9aS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixmdW5jdGlvbihtKXtpZihtLnRvdWNoZXMubGVuZ3RoPT09MSl7bS5zdG9wUHJvcGFnYXRpb24oKSxuLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITAsaS5jbGFzc0xpc3QuYWRkKCJkcmFnZ2luZyIpLGM9bS50b3VjaGVzWzBdLmNsaWVudFk7dmFyIGI9Q3QoKTtmPWI/Yi5zY3JvbGxUb3A6MCxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaG1vdmUiLGcse3Bhc3NpdmU6ITF9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsaCksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hjYW5jZWwiLGgpfX0se3Bhc3NpdmU6ITF9KTtmdW5jdGlvbiBnKG0pe2lmKG0udG91Y2hlcy5sZW5ndGg9PT0xKXttLnByZXZlbnREZWZhdWx0KCk7dmFyIGI9Q3QoKTtpZihiKXt2YXIgRj1yLmNsaWVudEhlaWdodCx3PWIuc2Nyb2xsSGVpZ2h0LEU9Yi5jbGllbnRIZWlnaHQsQT13LUU7aWYoIShBPD0wKSl7dmFyIHg9TWF0aC5tYXgoMjgsRS93KkYpLEk9Ri14O2lmKCEoSTw9MCkpe3ZhciBqPW0udG91Y2hlc1swXS5jbGllbnRZLWMsVj1qL0kqQTtiLnNjcm9sbFRvcD1mK1Z9fX19fWZ1bmN0aW9uIGgoKXtuLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmc9ITEsaS5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnZ2luZyIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZyksZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigidG91Y2hlbmQiLGgpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoY2FuY2VsIixoKSx1KCl9dC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZWVudGVyIixmdW5jdGlvbigpe2EoKX0pLHQuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VsZWF2ZSIsZnVuY3Rpb24oKXtuLnRlcm1pbmFsU2Nyb2xsYmFyRHJhZ2dpbmd8fHUoKX0pLG8oKX1mdW5jdGlvbiBTZChlKXtyZXR1cm4gZTw0MzUyPyExOmU+PTQzNTImJmU8PTQ0NDd8fGU+PTkwMDEmJmU8PTkwMDJ8fGU+PTExOTA0JiZlPD0xMjM1MHx8ZT49MTIzNTMmJmU8PTEzMzExfHxlPj0xMzMxMiYmZTw9MTk5MDN8fGU+PTE5OTY4JiZlPD00MDk1OXx8ZT49NDA5NjAmJmU8PTQyMTkxfHxlPj00NDAzMiYmZTw9NTUyMDN8fGU+PTYzNzQ0JiZlPD02NDI1NXx8ZT49NjUwNzImJmU8PTY1MTAzfHxlPj02NTI4MCYmZTw9NjUzNzZ8fGU+PTY1NTA0JiZlPD02NTUxMHx8ZT49MTI2OTc2JiZlPD0xMjk1MzV8fGU+PTEzMTA3MiYmZTw9MTk2NjA1fHxlPj0xOTY2MDgmJmU8PTI2MjE0MX12YXIgeXM9Ilx1MjA2MCI7ZnVuY3Rpb24gYnMoKXtyZXR1cm57bW9kZToibm9ybWFsIn19ZnVuY3Rpb24gSWQoZSl7cmV0dXJuIS9bXlx4MDAtXHg3Zl0vLnRlc3QoZSkmJmUuaW5kZXhPZigiXHgxQiIpPT09LTF9ZnVuY3Rpb24gVGQoZSx0KXtpZighZSlyZXR1cm4iIjt2YXIgcj1TdHJpbmcoZSk7aWYodC5tb2RlPT09Im5vcm1hbCImJklkKHIpKXJldHVybiByO2Zvcih2YXIgaT0iIixhPTA7YTxyLmxlbmd0aDthKyspe3ZhciB1PXIuY2hhckNvZGVBdChhKSxzPXUsbz0xO2lmKHU+PTU1Mjk2JiZ1PD01NjMxOSYmYSsxPHIubGVuZ3RoKXt2YXIgbD1yLmNoYXJDb2RlQXQoYSsxKTtsPj01NjMyMCYmbDw9NTczNDMmJihzPSh1LTU1Mjk2KSoxMDI0KyhsLTU2MzIwKSs2NTUzNixvPTIpfXZhciBjPW89PT0yP3Iuc3Vic3RyKGEsMik6ci5jaGFyQXQoYSk7c3dpdGNoKHQubW9kZSl7Y2FzZSJub3JtYWwiOnM9PT0yNz8odC5tb2RlPSJlc2MiLGkrPWMpOnM9PT0xNTU/KHQubW9kZT0iY3NpIixpKz1jKTpzPT09MTU3fHxzPT09MTQ0fHxzPT09MTU4fHxzPT09MTU5Pyh0Lm1vZGU9InN0cmluZyIsaSs9Yyk6KGkrPWMsU2QocykmJihpKz15cykpO2JyZWFrO2Nhc2UiZXNjIjppKz1jLHM9PT05MT90Lm1vZGU9ImNzaSI6cz09PTkzfHxzPT09ODB8fHM9PT04OHx8cz09PTk0fHxzPT09OTU/dC5tb2RlPSJzdHJpbmciOnQubW9kZT0ibm9ybWFsIjticmVhaztjYXNlImNzaSI6aSs9YyxzPj02NCYmczw9MTI2JiYodC5tb2RlPSJub3JtYWwiKTticmVhaztjYXNlInN0cmluZyI6aSs9YyxzPT09N3x8cz09PTE1Nj90Lm1vZGU9Im5vcm1hbCI6cz09PTI3JiYodC5tb2RlPSJzdHJpbmctZXNjIik7YnJlYWs7Y2FzZSJzdHJpbmctZXNjIjppKz1jLHM9PT05Mj90Lm1vZGU9Im5vcm1hbCI6dC5tb2RlPSJzdHJpbmciO2JyZWFrfWErPW8tMX1yZXR1cm4gaX12YXIgcmk9Ilx4MUJbPzIwMjZoIixvYT0iXHgxQls/MjAyNmwiLExkPTIwMCxNZD0yNTYqMTAyNDtmdW5jdGlvbiBPZChlKXtpZighZXx8bi5zeW5jT3V0cHV0QnVmZmVyPT09bnVsbCYmZS5pbmRleE9mKHJpKT09PS0xKXJldHVybiBlO2Zvcih2YXIgdD0iIixyPTA7cjxlLmxlbmd0aDspaWYobi5zeW5jT3V0cHV0QnVmZmVyIT09bnVsbCl7dmFyIGk9ZS5pbmRleE9mKG9hLHIpO2lmKGk9PT0tMSlyZXR1cm4gbi5zeW5jT3V0cHV0QnVmZmVyKz1lLnNsaWNlKHIpLChuLnN5bmNPdXRwdXRCdWZmZXIubGVuZ3RoPk1kfHxEYXRlLm5vdygpPm4uc3luY091dHB1dERlYWRsaW5lKSYmKHQrPW4uc3luY091dHB1dEJ1ZmZlcixuLnN5bmNPdXRwdXRCdWZmZXI9bnVsbCxuLnN5bmNGcmFtaW5nUmVzaWR1ZT0hMCksdDtuLnN5bmNPdXRwdXRCdWZmZXIrPWUuc2xpY2UocixpK29hLmxlbmd0aCksdCs9bi5zeW5jT3V0cHV0QnVmZmVyLG4uc3luY091dHB1dEJ1ZmZlcj1udWxsLHI9aStvYS5sZW5ndGh9ZWxzZXt2YXIgYT1lLmluZGV4T2Yocmkscik7aWYoYT09PS0xKXJldHVybiB0Kz1lLnNsaWNlKHIpLHQ7dCs9ZS5zbGljZShyLGEpLG4uc3luY091dHB1dEJ1ZmZlcj1yaSxuLnN5bmNPdXRwdXREZWFkbGluZT1EYXRlLm5vdygpK0xkLHI9YStyaS5sZW5ndGh9cmV0dXJuIHR9ZnVuY3Rpb24gVW0oKXtpZihuLnN5bmNPdXRwdXRCdWZmZXIhPT1udWxsKXt2YXIgZT1uLnN5bmNPdXRwdXRCdWZmZXI7cmV0dXJuIG4uc3luY091dHB1dEJ1ZmZlcj1udWxsLGV9cmV0dXJuIiJ9ZnVuY3Rpb24gS24oZSx0KXtpZighKCFlfHx0PT1udWxsKSl7bi53aWRlUGFyc2VyU3RhdGV8fChuLndpZGVQYXJzZXJTdGF0ZT1icygpKTt2YXIgcj1UZCh0LG4ud2lkZVBhcnNlclN0YXRlKSxpPU9kKHIpLGE9bi50ZXJtaW5hbEF1dG9Gb2xsb3chPT0hMTsiX3Nob3VsZFNjcm9sbFRvQm90dG9tImluIGUmJihlLl9zaG91bGRTY3JvbGxUb0JvdHRvbT1hKSxpJiZlLndyaXRlKGkpLCJfc2hvdWxkU2Nyb2xsVG9Cb3R0b20iaW4gZSYmKGUuX3Nob3VsZFNjcm9sbFRvQm90dG9tPWEpLGEmJihuLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWw9TWF0aC5tYXgobi50ZXJtaW5hbFByb2dyYW1tYXRpY1Njcm9sbFVudGlsLERhdGUubm93KCkrMTIwKSksVmQodCl9fWZ1bmN0aW9uIGxhKCl7bi53aWRlUGFyc2VyU3RhdGU9YnMoKX1mdW5jdGlvbiBQZCgpe3R5cGVvZiBkb2N1bWVudD4idSJ8fGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNvcHkiLGZ1bmN0aW9uKGUpe3ZhciB0PXdpbmRvdy5nZXRTZWxlY3Rpb24mJndpbmRvdy5nZXRTZWxlY3Rpb24oKTtpZighKCF0fHx0LmlzQ29sbGFwc2VkKSl7dmFyIHI9dC5hbmNob3JOb2RlLGk9ciYmci5ub2RlVHlwZT09PTM/ci5wYXJlbnROb2RlOnIsYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYoISghYXx8IWl8fCFhLmNvbnRhaW5zKGkpKSl7dmFyIHU9dC50b1N0cmluZygpLHM9dS5zcGxpdChgCmApLm1hcChmdW5jdGlvbihvKXtyZXR1cm4gby5zcGxpdCh5cykuam9pbigiIikucmVwbGFjZSgvWyBcdF0rJC8sIiIpfSkuam9pbihgCmApO3MhPT11JiZlLmNsaXBib2FyZERhdGEmJihlLmNsaXBib2FyZERhdGEuc2V0RGF0YSgidGV4dC9wbGFpbiIscyksZS5wcmV2ZW50RGVmYXVsdCgpKX19fSl9UGQoKTt2YXIgRXM9MTUwLEZzPTMwLHFkPTE2MCoxMDI0LEhkPTE5MioxMDI0O2Z1bmN0aW9uIHdzKGUpe2lmKCFlfHxlLmxlbmd0aDw9SGQpcmV0dXJuIGU7dmFyIHQ9ZS5sZW5ndGgscj1mdW5jdGlvbih4KXtpZighKHR5cGVvZiBuPiJ1Inx8IW4pKXt2YXIgST1uLnRlcm1pbmFsT3V0cHV0TWFya2VyfDA7aWYoIShJPD0wKSl7dmFyIGo9dC14O24udGVybWluYWxPdXRwdXRNYXJrZXI9ST5qP0ktajowfX19LGk9ZS5sZW5ndGgtcWQ7aWYoaT4wJiZpPGUubGVuZ3RoKXt2YXIgYT1lLmNoYXJDb2RlQXQoaSk7YT49NTYzMjAmJmE8PTU3MzQzJiZpKyt9Zm9yKHZhciB1PTQwOTYscz1NYXRoLm1pbihpK3UsZS5sZW5ndGgpLG89aTtvPHM7bysrKWlmKGUuY2hhckNvZGVBdChvKT09PTEwKXt2YXIgbD1lLnNsaWNlKG8rMSk7cmV0dXJuIHIobC5sZW5ndGgpLGx9Zm9yKHZhciBjPU1hdGgubWF4KDAsaS0yNTYpLGY9LTEsZD1pLTE7ZD49YztkLS0pe3ZhciB2PWUuY2hhckNvZGVBdChkKTtpZih2PT09Mjcpe2Y9ZDticmVha31pZih2PT09N3x8dj49NjQmJnY8PTEyNilicmVha31pZihmIT09LTEpe2Zvcih2YXIgZz0hMSxoPWYrMTtoPGk7aCsrKXt2YXIgbT1lLmNoYXJDb2RlQXQoaCk7aWYobT09PTcpe2c9ITA7YnJlYWt9aWYobT49NjQmJm08PTEyNil7Zz0hMDticmVha319aWYoIWcpZm9yKHZhciBiPU1hdGgubWluKGkrMjU2LGUubGVuZ3RoKSxGPWk7RjxiO0YrKyl7dmFyIHc9ZS5jaGFyQ29kZUF0KEYpO2lmKHc9PT03fHx3Pj02NCYmdzw9MTI2KXt2YXIgRT1lLnNsaWNlKEYrMSk7cmV0dXJuIHIoRS5sZW5ndGgpLEV9fX12YXIgQT1lLnNsaWNlKGkpO3JldHVybiByKEEubGVuZ3RoKSxBfWZ1bmN0aW9uIGlpKCl7aWYobi50ZXJtaW5hbCl7aWYodHlwZW9mIG4udGVybWluYWwucmVzZXQ9PSJmdW5jdGlvbiIpe24udGVybWluYWwucmVzZXQoKSxsYSgpLG4uc3luY091dHB1dEJ1ZmZlcj1udWxsLG4uc3luY091dHB1dERlYWRsaW5lPTA7cmV0dXJufXR5cGVvZiBuLnRlcm1pbmFsLndyaXRlPT0iZnVuY3Rpb24iJiZuLnRlcm1pbmFsLndyaXRlKCJceDFCYyIpLGxhKCksbi5zeW5jT3V0cHV0QnVmZmVyPW51bGwsbi5zeW5jT3V0cHV0RGVhZGxpbmU9MH19bi5fcmVzeW5jU3RhdHNXaW5kb3dTdGFydD0wLG4uX3Jlc3luY1N0YXRzQ291bnQ9MCxuLl9yZXN5bmNMYXN0V2FybkF0PTA7dmFyIF9kPTVlMyxOZD0xMixqZD0zZTQ7bi5fcmVzeW5jSW5Qcm9ncmVzcz0hMTtmdW5jdGlvbiBBbihlKXtpZighbi50ZXJtaW5hbHx8IW4udGVybWluYWxPdXRwdXQpcmV0dXJuITE7dmFyIHQ9ZXx8e30scj1uLnRlcm1pbmFsT3V0cHV0TWFya2VyfDA7cjwwJiYocj0wKSxyPm4udGVybWluYWxPdXRwdXQubGVuZ3RoJiYocj1uLnRlcm1pbmFsT3V0cHV0Lmxlbmd0aCk7dmFyIGk9cj4wP24udGVybWluYWxPdXRwdXQuc2xpY2Uocik6bi50ZXJtaW5hbE91dHB1dCxhPWkubGVuZ3RoLHU9dHlwZW9mIHBlcmZvcm1hbmNlPCJ1IiYmcGVyZm9ybWFuY2Uubm93P3BlcmZvcm1hbmNlLm5vdygpOkRhdGUubm93KCk7bi5fcmVzeW5jSW5Qcm9ncmVzcz0hMDt0cnl7aWkoKSxLbihuLnRlcm1pbmFsLGkpfWZpbmFsbHl7bi5fcmVzeW5jSW5Qcm9ncmVzcz0hMX1uLmxhc3RUZXJtaW5hbFJlc3luY0F0PURhdGUubm93KCksbXQoIm91dHB1dCIpLHQuc2tpcEZpdHx8aXQoInJlZnJlc2giKTt2YXIgcz1EYXRlLm5vdygpO2lmKHMtbi5fcmVzeW5jU3RhdHNXaW5kb3dTdGFydD5fZCluLl9yZXN5bmNTdGF0c1dpbmRvd1N0YXJ0PXMsbi5fcmVzeW5jU3RhdHNDb3VudD0xO2Vsc2UgaWYobi5fcmVzeW5jU3RhdHNDb3VudCsrLG4uX3Jlc3luY1N0YXRzQ291bnQ+TmQmJnMtbi5fcmVzeW5jTGFzdFdhcm5BdD5qZCl7bi5fcmVzeW5jTGFzdFdhcm5BdD1zO3ZhciBvPXR5cGVvZiBwZXJmb3JtYW5jZTwidSImJnBlcmZvcm1hbmNlLm5vdz9wZXJmb3JtYW5jZS5ub3coKTpEYXRlLm5vdygpO2NvbnNvbGUud2FybigiW3dhbmRdIHNvZnRSZXN5bmNUZXJtaW5hbCBoaWdoIGZyZXF1ZW5jeSIsImNvdW50PSIrbi5fcmVzeW5jU3RhdHNDb3VudCsiLyIrTWF0aC5yb3VuZCgocy1uLl9yZXN5bmNTdGF0c1dpbmRvd1N0YXJ0KS8xMDApLzEwKyJzIiwiYnVmTGVuPSIrYSwibGFzdFJlcGxheU1zPSIrTWF0aC5yb3VuZChvLXUpKX1yZXR1cm4hMH1mdW5jdGlvbiBSZChlKXtuLnNvZnRSZXN5bmNUaW1lciYmY2xlYXJUaW1lb3V0KG4uc29mdFJlc3luY1RpbWVyKSxuLnNvZnRSZXN5bmNUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5zb2Z0UmVzeW5jVGltZXI9bnVsbCxBbigpfSx0eXBlb2YgZT09Im51bWJlciI/ZToxNTApfXZhciBXZD0vXHgxYlxbXGQqKD86O1xkKik/W0FCQ0RmSEpLXS8sQ3M9MTUwMCx6ZD04MDA7bi5fcmVzeW5jQ2h1bmtMYXN0QXQ9MCxuLl9yZXN5bmNDaHVua1RhaWxUaW1lcj1udWxsO2Z1bmN0aW9uIFZkKGUpe2lmKCFuLl9yZXN5bmNJblByb2dyZXNzJiZuLnN5bmNGcmFtaW5nUmVzaWR1ZSYmKG4uc3luY0ZyYW1pbmdSZXNpZHVlPSExLCEoIWV8fHR5cGVvZiBlIT0ic3RyaW5nIikmJmUuaW5kZXhPZigiXHgxQlsiKSE9PS0xJiZXZC50ZXN0KGUpKSl7dmFyIHQ9RGF0ZS5ub3coKSxyPXQtbi5fcmVzeW5jQ2h1bmtMYXN0QXQ7aWYocj49Q3Mpe24uX3Jlc3luY0NodW5rVGFpbFRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uX3Jlc3luY0NodW5rVGFpbFRpbWVyKSxuLl9yZXN5bmNDaHVua1RhaWxUaW1lcj1udWxsKSxuLl9yZXN5bmNDaHVua0xhc3RBdD10LEFuKCk7cmV0dXJufWlmKCFuLl9yZXN5bmNDaHVua1RhaWxUaW1lcil7dmFyIGk9TWF0aC5tYXgoemQsQ3Mtcik7bi5fcmVzeW5jQ2h1bmtUYWlsVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24uX3Jlc3luY0NodW5rVGFpbFRpbWVyPW51bGwsbi5fcmVzeW5jQ2h1bmtMYXN0QXQ9RGF0ZS5ub3coKSxBbigpfSxpKX19fWZ1bmN0aW9uIGFpKGUsdCxyKXtpZighbi50ZXJtaW5hbClyZXR1cm4hMTt2YXIgaT1SYSh0fHwiIiksYT1lfHxudWxsLHU9cnx8e30scz11Lm1vZGV8fCJhcHBlbmQiLG89dS5zY3JvbGwhPT0hMSxsPW4udGVybWluYWxTZXNzaW9uSWQhPT1hLGM9bi50ZXJtaW5hbE91dHB1dHx8IiIsZj0hIShhJiZuLnRlcm1pbmFsTGl2ZVN0cmVhbVNlc3Npb25zW2FdKSxkPSExO2lmKGk9PT1jJiYhbClyZXR1cm4gbyYmbXQoIm91dHB1dCIpLGR0KCksITE7aWYobCYmKGlpKCksYz0iIixuLnRlcm1pbmFsT3V0cHV0PSIiLG4udGVybWluYWxPdXRwdXRNYXJrZXI9MCxuLnRlcm1pbmFsQXV0b0ZvbGxvdz0hMCxVbigpLGR0KCkpLHM9PT0icmVwbGFjZSIpaSE9PWMmJihpaSgpLGkmJktuKG4udGVybWluYWwsaSksZD0hMCk7ZWxzZXtpZihpLmxlbmd0aDxjLmxlbmd0aCYmIWwpcmV0dXJuITE7aWYoZiYmIWwmJnMhPT0icmVwbGFjZSImJmMmJiFpLnN0YXJ0c1dpdGgoYykpcmV0dXJuITE7aWYoaS5zdGFydHNXaXRoKGMpKXt2YXIgdj1pLnNsaWNlKGMubGVuZ3RoKTt2JiYoS24obi50ZXJtaW5hbCx2KSxkPSEwKX1lbHNle2lmKGMmJmMuc3RhcnRzV2l0aChpKSlyZXR1cm4hMTtpaSgpLGkmJktuKG4udGVybWluYWwsaSksZD0hMH19cmV0dXJuIG4udGVybWluYWxTZXNzaW9uSWQ9YSxuLnRlcm1pbmFsT3V0cHV0PWksbi50ZXJtaW5hbE91dHB1dE1hcmtlcj0wLG8mJihkfHxsfHxzPT09InJlcGxhY2UiKT9tdChsfHxzPT09InJlcGxhY2UiPyJmb3JjZSI6Im91dHB1dCIpOmR0KCksbCYmbmkobi50ZXJtaW5hbC5jb2xzLG4udGVybWluYWwucm93cyksZHx8bH1mdW5jdGlvbiBZbigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZighKCFlfHxuLnRlcm1pbmFsfHxuLnRlcm1pbmFsSW5pdGlhbGl6aW5nKSl7aWYodHlwZW9mIFdUZXJtTGliPiJ1Inx8IVdUZXJtTGliLldUZXJtKXtuLnRlcm1pbmFsSW5pdFJldHJpZXN8fChuLnRlcm1pbmFsSW5pdFJldHJpZXM9MCksbi50ZXJtaW5hbEluaXRSZXRyaWVzPDEwJiYobi50ZXJtaW5hbEluaXRSZXRyaWVzKyssc2V0VGltZW91dChZbiwyMDApKTtyZXR1cm59bi50ZXJtaW5hbEluaXRSZXRyaWVzPTAsbi50ZXJtaW5hbEluaXRpYWxpemluZz0hMCxuLnNlbGVjdGVkSWQmJihlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGUuY2xhc3NMaXN0LmFkZCgiYWN0aXZlIikpO2Zvcih2YXIgdD1lLnF1ZXJ5U2VsZWN0b3JBbGwoIi50ZXJtaW5hbC1zY3JvbGwtd3JhcCIpLHI9MDtyPHQubGVuZ3RoO3IrKyl7dmFyIGk9dFtyXTtpLnBhcmVudE5vZGU9PT1lJiZlLnJlbW92ZUNoaWxkKGkpfXZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2EuY2xhc3NOYW1lPSJ0ZXJtaW5hbC1zY3JvbGwtd3JhcCIsZS5hcHBlbmRDaGlsZChhKTt2YXIgdT1uZXcgV1Rlcm1MaWIuV1Rlcm0oYSx7Y29sczoxMjAscm93czozNixhdXRvUmVzaXplOiEwLGN1cnNvckJsaW5rOiExLG9uRGF0YTpmdW5jdGlvbigpe30sb25SZXNpemU6ZnVuY3Rpb24obyxsKXtuaShvLGwpLG4udGVybWluYWwmJm4udGVybWluYWxPdXRwdXQmJkFuKHtza2lwRml0OiEwfSl9fSkscz1kb2N1bWVudC5mb250cyYmdHlwZW9mIGRvY3VtZW50LmZvbnRzLnJlYWR5PT0ib2JqZWN0Ij9Qcm9taXNlLnJhY2UoW2RvY3VtZW50LmZvbnRzLnJlYWR5LG5ldyBQcm9taXNlKGZ1bmN0aW9uKG8pe3NldFRpbWVvdXQobyw4MDApfSldKTpQcm9taXNlLnJlc29sdmUoKTtzLnRoZW4oZnVuY3Rpb24oKXtyZXR1cm4gdS5pbml0KCl9KS50aGVuKGZ1bmN0aW9uKCl7aWYobi50ZXJtaW5hbD11LG4udGVybWluYWxJbml0aWFsaXppbmc9ITEsRXUoKSxhLmlzQ29ubmVjdGVkJiYoYS5vZmZzZXRIZWlnaHQsdHlwZW9mIHUucmVtZWFzdXJlPT0iZnVuY3Rpb24iKSl0cnl7dS5yZW1lYXN1cmUoKX1jYXRjaHt9bi50ZXJtaW5hbEF1dG9Gb2xsb3c9ITAsVW4oKTt2YXIgbz1DdCgpO2lmKG8mJihuLnRlcm1pbmFsVmlld3BvcnRTY3JvbGxIYW5kbGVyPWZ1bmN0aW9uKCl7aWYoRGF0ZS5ub3coKTxuLnRlcm1pbmFsUHJvZ3JhbW1hdGljU2Nyb2xsVW50aWwpe2R0KCk7cmV0dXJufWlmKGdzKCkpe24udGVybWluYWxBdXRvRm9sbG93PSEwLFVuKCksZHQoKTtyZXR1cm59c2EoKX0sbi50ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXI9ZnVuY3Rpb24oYyl7Yy50b3VjaGVzJiZjLnRvdWNoZXMubGVuZ3RoPT09MSYmKG4udGVybWluYWxUb3VjaFN0YXJ0WT1jLnRvdWNoZXNbMF0uY2xpZW50WSl9LG4udGVybWluYWxWaWV3cG9ydFRvdWNoSGFuZGxlcj1mdW5jdGlvbihjKXshYy50b3VjaGVzfHxjLnRvdWNoZXMubGVuZ3RoIT09MXx8dHlwZW9mIG4udGVybWluYWxUb3VjaFN0YXJ0WT09Im51bWJlciImJmMudG91Y2hlc1swXS5jbGllbnRZLW4udGVybWluYWxUb3VjaFN0YXJ0WT40JiZzYSgpfSxvLmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsbi50ZXJtaW5hbFZpZXdwb3J0U2Nyb2xsSGFuZGxlcix7cGFzc2l2ZTohMH0pLG8uYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsbi50ZXJtaW5hbFZpZXdwb3J0VG91Y2hTdGFydEhhbmRsZXIse3Bhc3NpdmU6ITB9KSxvLmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsbi50ZXJtaW5hbFZpZXdwb3J0VG91Y2hIYW5kbGVyLHtwYXNzaXZlOiEwfSkpLG4udGVybWluYWxXaGVlbEhhbmRsZXI9ZnVuY3Rpb24oYyl7Yy5kZWx0YVk8MCYmc2EoKSxjLnN0b3BQcm9wYWdhdGlvbigpfSxlLmFkZEV2ZW50TGlzdGVuZXIoIndoZWVsIixuLnRlcm1pbmFsV2hlZWxIYW5kbGVyLHtwYXNzaXZlOiEwfSkseGQoZSksbi5zZWxlY3RlZElkKXt2YXIgbD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYyl7cmV0dXJuIGMuaWQ9PT1uLnNlbGVjdGVkSWR9KTtsJiZhaShsLmlkLGwub3V0cHV0fHwiIix7bW9kZToiYXBwZW5kIixzY3JvbGw6ITF9KX1lbHNlIEtuKHUsYFx1NzBCOVx1NTFGQlx1NEUwQVx1NjVCOVx1MzAwQ1x1NjVCMFx1NUJGOVx1OEJERFx1MzAwRFx1NUYwMFx1NTlDQlx1NEY2MFx1NzY4NFx1N0IyQ1x1NEUwMFx1NkIyMVx1NUJGOVx1OEJERFx1MzAwMlxyCmApO24udGVybWluYWxDbGlja0hhbmRsZXI9ZnVuY3Rpb24oYyl7dmkoKXx8anQoYyl9LGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG4udGVybWluYWxDbGlja0hhbmRsZXIpLGR0KCksb2QoKSxkZCgpLEZkKCksd2QoKSxpdCgibW91bnQiLHtmb3JjZVJlcGxheTohMH0pfSkuY2F0Y2goZnVuY3Rpb24obyl7bi50ZXJtaW5hbEluaXRpYWxpemluZz0hMSxjb25zb2xlLmVycm9yKCJbd2FuZF0gd3Rlcm0gaW5pdCBmYWlsZWQ6IixvKX0pfX1mdW5jdGlvbiBVZChlLHQpe2lmKCEoIW4uc2VsZWN0ZWRJZHx8IWUpKXt2YXIgcj1uLnNlbGVjdGVkSWQrIjoiK2U7aWYobi50b29sQ29udGVudENhY2hlW3JdKXt0KG51bGwsbi50b29sQ29udGVudENhY2hlW3JdKTtyZXR1cm59ZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQobi5zZWxlY3RlZElkKSsiL3Rvb2wtY29udGVudC8iK2VuY29kZVVSSUNvbXBvbmVudChlKSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtpLmVycm9yP3QoaS5lcnJvcixudWxsKToobi50b29sQ29udGVudENhY2hlW3JdPWksdChudWxsLGkpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dCgiXHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1IixudWxsKX0pfX1mdW5jdGlvbiB4bihlKXtyZXR1cm4hIShuLmNvbmZpZyYmbi5jb25maWcuY2FyZERlZmF1bHRzJiZuLmNvbmZpZy5jYXJkRGVmYXVsdHNbZV0pfWZ1bmN0aW9uIGNhKGUsdCxyLGkpe2lmKCEoIWV8fGUuZGF0YXNldC50cnVuY2F0ZWQhPT0idHJ1ZSJ8fGUuZGF0YXNldC5sb2FkZWQ9PT0idHJ1ZSIpKXt2YXIgYT1lLmRhdGFzZXQudG9vbFVzZUlkO2EmJih0JiYodC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9InRvb2wtY29udGVudC1sb2FkaW5nIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj4nKSxlLmRhdGFzZXQubG9hZGVkPSJsb2FkaW5nIixVZChhLGZ1bmN0aW9uKHUscyl7aWYodSl7dCYmKHQuaW5uZXJIVE1MPWl8fCc8ZGl2IGNsYXNzPSJ0b29sLWNvbnRlbnQtZXJyb3IiPlx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNVx1RkYwQ1x1NzBCOVx1NTFGQlx1OTFDRFx1OEJENTwvZGl2PicpLGUuZGF0YXNldC5sb2FkZWQ9IiI7cmV0dXJufWUuZGF0YXNldC50cnVuY2F0ZWQ9ImZhbHNlIixlLmRhdGFzZXQubG9hZGVkPSJ0cnVlIjt2YXIgbz10eXBlb2Ygcy5jb250ZW50PT0ic3RyaW5nIj9zLmNvbnRlbnQ6SlNPTi5zdHJpbmdpZnkocy5jb250ZW50KTtyKG8scyl9KSl9fXdpbmRvdy5fX3RjVG9nZ2xlPWZ1bmN0aW9uKGUsdCl7dmFyIHI9dC5jbG9zZXN0KCIudG9vbC11c2UtY2FyZCIpfHx0LmNsb3Nlc3QoIi5pbmxpbmUtZGlmZiIpO2lmKHIpe3ZhciBpPXIuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb2xsYXBzZWQiKTtyLmNsYXNzTGlzdC50b2dnbGUoImNvbGxhcHNlZCIpO3ZhciBhPXIuZGF0YXNldC5leHBhbmRLaW5kfHwidG9vbC1jYXJkIjtpZih3bihyLGEpLGkpe3ZhciB1PXIucXVlcnlTZWxlY3RvcigiLnRvb2wtdXNlLXJlc3VsdCIpO2NhKHIsdSxmdW5jdGlvbihzKXt1JiYodS5pbm5lckhUTUw9JzxwcmUgY2xhc3M9InRvb2wtdXNlLXJlc3VsdC1jb250ZW50Ij4nK3AocykrIjwvcHJlPiIpfSxgPGRpdiBjbGFzcz0idG9vbC1jb250ZW50LWVycm9yIiBvbmNsaWNrPSJfX3RjVG9nZ2xlKG51bGwsIHRoaXMuY2xvc2VzdCgnLnRvb2wtdXNlLWNhcmQsLmlubGluZS1kaWZmJykucXVlcnlTZWxlY3RvcignLnRvb2wtdXNlLWhlYWRlciwuZGlmZi1oZWFkZXInKSkiPlx1NTJBMFx1OEY3RFx1NTkzMVx1OEQyNVx1RkYwQ1x1NzBCOVx1NTFGQlx1OTFDRFx1OEJENTwvZGl2PmApfX1lJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkpfSx3aW5kb3cuX190aGlua2luZ1RvZ2dsZT1mdW5jdGlvbihlKXt2YXIgdD1lLmNsYXNzTGlzdC5jb250YWlucygiY29sbGFwc2VkIik7aWYodCl7ZS5jbGFzc0xpc3QucmVtb3ZlKCJjb2xsYXBzZWQiKSxlLmNsYXNzTGlzdC5hZGQoImV4cGFuZGVkIiksZS5xdWVyeVNlbGVjdG9yKCIudGhpbmtpbmctaW5saW5lLXByZXZpZXciKS50ZXh0Q29udGVudD1lLmRhdGFzZXQudGhpbmtpbmd8fCIiO3ZhciByPWUucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLWlubGluZS1hY3Rpb24iKTtyJiYoci50ZXh0Q29udGVudD0iXHU2NTM2XHU4RDc3Iil9ZWxzZXtlLmNsYXNzTGlzdC5yZW1vdmUoImV4cGFuZGVkIiksZS5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZWQiKTt2YXIgaT0oZS5kYXRhc2V0LnRoaW5raW5nfHwiIikuc2xpY2UoMCw1NykrKChlLmRhdGFzZXQudGhpbmtpbmd8fCIiKS5sZW5ndGg+NjA/Ilx1MjAyNiI6IiIpO2UucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLWlubGluZS1wcmV2aWV3IikudGV4dENvbnRlbnQ9aTt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoIi50aGlua2luZy1pbmxpbmUtYWN0aW9uIik7ciYmKHIudGV4dENvbnRlbnQ9Ilx1NUM1NVx1NUYwMCIpfXduKGUsInRoaW5raW5nIil9LHdpbmRvdy5fX3N1YmFnZW50UmVwbHlUb2dnbGU9ZnVuY3Rpb24oZSx0KXtlJiYoZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCkpO3ZhciByPXQmJnQuY2xvc2VzdD90LmNsb3Nlc3QoIi5zdWJhZ2VudC1yZXBseSIpOm51bGw7aWYocil7dmFyIGk9ci5nZXRBdHRyaWJ1dGUoImRhdGEtZXhwYW5kZWQiKT09PSJ0cnVlIjtSaShyLCJzdWJhZ2VudC1yZXBseSIsIWkpLHduKHIsInN1YmFnZW50LXJlcGx5Iil9fSx3aW5kb3cuX19zdWJhZ2VudFBhbmVsVG9nZ2xlPWZ1bmN0aW9uKGUsdCl7ZSYmKGUucHJldmVudERlZmF1bHQoKSxlLnN0b3BQcm9wYWdhdGlvbigpKTt2YXIgcj10JiZ0LmNsb3Nlc3Q/dC5jbG9zZXN0KCIuc3ViYWdlbnQtcGFuZWwiKTpudWxsO2lmKHIpe3ZhciBpPXIuZ2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIik9PT0idHJ1ZSI7Umkociwic3ViYWdlbnQtcGFuZWwiLCFpKSx3bihyLCJzdWJhZ2VudC1wYW5lbCIpfX07ZnVuY3Rpb24gS2QoZSl7aWYoZSlmb3IodmFyIHQ9ZS5xdWVyeVNlbGVjdG9yQWxsKCcuc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD0iZmFsc2UiXScpLHI9MDtyPHQubGVuZ3RoO3IrKyl7dmFyIGk9dFtyXS5xdWVyeVNlbGVjdG9yKCIuc3ViYWdlbnQtcGFuZWwtYm9keSIpO2kmJihpLnNjcm9sbFRvcD1pLnNjcm9sbEhlaWdodCl9fXdpbmRvdy5fX2lubGluZVRvb2xUb2dnbGU9ZnVuY3Rpb24oZSl7dmFyIHQ9ZS5jbGFzc0xpc3QudG9nZ2xlKCJpbmxpbmUtdG9vbC1vcGVuIikscj1lLnF1ZXJ5U2VsZWN0b3IoIi5pbmxpbmUtdG9vbC1leHBhbmRlZCIpO3ImJihyLnN0eWxlLmRpc3BsYXk9dD8iYmxvY2siOiJub25lIik7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIuaW5saW5lLXRvb2wtc3RhdHVzIik7aSYmKGUuZGF0YXNldC5zdGF0dXM9PT0iZXJyb3IiP2kudGV4dENvbnRlbnQ9Ilx1MjcxNyI6ZS5kYXRhc2V0LnN0YXR1cz09PSJkb25lIiYmKGkudGV4dENvbnRlbnQ9Ilx1MjcxMyIpKSx0JiZjYShlLHIsZnVuY3Rpb24oYSl7ZS5kYXRhc2V0LnJlc3VsdD1hLHImJihyLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtcmVzdWx0Ij4nK3hvKGEsIiIpKyI8L2Rpdj4iKX0pLHduKGUsImlubGluZS10b29sIil9LHdpbmRvdy5fX3Rlcm1pbmFsRXhwYW5kPWZ1bmN0aW9uKGUpe3ZhciB0PWUuY2xvc2VzdCgiLmlubGluZS10ZXJtaW5hbCIpO2lmKHQpe3ZhciByPXQucXVlcnlTZWxlY3RvcigiLnRlcm0tYm9keSIpO2lmKHIpe3ZhciBpPXIuc3R5bGUuZGlzcGxheT09PSJub25lIjtyLnN0eWxlLmRpc3BsYXk9aT8iYmxvY2siOiJub25lIix0LmRhdGFzZXQuZXhwYW5kZWQ9aT8idHJ1ZSI6ImZhbHNlIjt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLXRvZ2dsZS1pY29uIik7aWYoYSYmKGEudGV4dENvbnRlbnQ9aT8iXHUyNUJDIjoiXHUyNUI2Iiksd24odCwidGVybWluYWwiKSxpKXt2YXIgdT1yLnF1ZXJ5U2VsZWN0b3IoIi50ZXJtLW91dHB1dCIpO2NhKHQsdSxmdW5jdGlvbihzKXtpZih1KXtmb3IodmFyIG89cy5zcGxpdChgCmApLGw9IiIsYz0wO2M8by5sZW5ndGg7YysrKSFvW2NdJiZjPT09by5sZW5ndGgtMXx8KGwrPSc8ZGl2IGNsYXNzPSJ0ZXJtLWxpbmUiPicrcChvW2NdKSsiPC9kaXY+Iik7dS5pbm5lckhUTUw9bH19KX19fX07ZnVuY3Rpb24gS20oZSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLXN0cmVhbWluZyIpO2lmKHQpe3ZhciByPXQucXVlcnlTZWxlY3RvcigiLnRoaW5raW5nLXN0cmVhbWluZy10ZXh0Iik7aWYocil7dmFyIGk9ZS5zcGxpdChgCmApLGE9aS5zbGljZSgtMyk7ci50ZXh0Q29udGVudD1hLmpvaW4oYApgKSxyLnNjcm9sbFRvcD1yLnNjcm9sbEhlaWdodH19fXdpbmRvdy5fX2Fza1NlbGVjdD1mdW5jdGlvbihlLHQscixpKXt2YXIgYT1uLmFza1VzZXJTZWxlY3Rpb25zW2VdO2lmKGF8fChhPXtzdWJtaXR0ZWQ6ITF9LG4uYXNrVXNlclNlbGVjdGlvbnNbZV09YSksIWEuc3VibWl0dGVkKXt2YXIgdT1hW3RdfHxbXTtpZihpKXt2YXIgcz11LmluZGV4T2Yocik7cz09PS0xP3UucHVzaChyKTp1LnNwbGljZShzLDEpfWVsc2UgdT11WzBdPT09cj9bXTpbcl07YVt0XT11LHdpbmRvdy5fX2Fza1JlbmRlcihlKX19LHdpbmRvdy5fX2Fza1JlbmRlcj1mdW5jdGlvbihlKXt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS10b29sLXVzZS1pZD0iJytlKyciXScpO2lmKHQpe3ZhciByPW4uYXNrVXNlclNlbGVjdGlvbnNbZV18fHt9O3QucXVlcnlTZWxlY3RvckFsbCgiLmFzay11c2VyLW9wdGlvbiIpLmZvckVhY2goZnVuY3Rpb24ocyl7dmFyIG89cGFyc2VJbnQocy5kYXRhc2V0LnF1ZXN0aW9uSW5kZXgsMTApLGw9cGFyc2VJbnQocy5kYXRhc2V0Lm9wdGlvbkluZGV4LDEwKSxjPShyW29dfHxbXSkuaW5kZXhPZihsKSE9PS0xO3MuY2xhc3NMaXN0LnRvZ2dsZSgic2VsZWN0ZWQiLGMpfSk7dmFyIGk9dC5xdWVyeVNlbGVjdG9yKCIuYXNrLXVzZXItc3VibWl0Iik7aWYoaSl7dmFyIGE9dC5xdWVyeVNlbGVjdG9yQWxsKCIuYXNrLXVzZXItcXVlc3Rpb24tZ3JvdXAiKSx1PSEwO2EuZm9yRWFjaChmdW5jdGlvbihzLG8peyghcltvXXx8cltvXS5sZW5ndGg9PT0wKSYmKHU9ITEpfSksaS5kaXNhYmxlZD0hdXx8ISFyLnN1Ym1pdHRlZCxyLnN1Ym1pdHRlZCYmKGkudGV4dENvbnRlbnQ9Ilx1NURGMlx1NjNEMFx1NEVBNC4uLiIsaS5jbGFzc0xpc3QuYWRkKCJhc2stdXNlci1zdWJtaXR0ZWQiKSl9fX0sd2luZG93Ll9fYXNrU3VibWl0PWZ1bmN0aW9uKGUpe3ZhciB0PW4uYXNrVXNlclNlbGVjdGlvbnNbZV07aWYoISghdHx8dC5zdWJtaXR0ZWR8fCFuLnNlbGVjdGVkSWQpKXt2YXIgcj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCdbZGF0YS10b29sLXVzZS1pZD0iJytlKyciXScpO2lmKHIpe3ZhciBpPXIucXVlcnlTZWxlY3RvckFsbCgiLmFzay11c2VyLXF1ZXN0aW9uLWdyb3VwIiksYT1bXSx1PSEwO2lmKGkuZm9yRWFjaChmdW5jdGlvbihvLGwpe3ZhciBjPXRbbF18fFtdO2lmKGMubGVuZ3RoPT09MCl7dT0hMTtyZXR1cm59dmFyIGY9W107Yy5mb3JFYWNoKGZ1bmN0aW9uKGQpe3ZhciB2PW8ucXVlcnlTZWxlY3RvcignW2RhdGEtb3B0aW9uLWluZGV4PSInK2QrJyJdJyk7diYmZi5wdXNoKHYuZGF0YXNldC5vcHRpb25MYWJlbCl9KSxhLnB1c2goZi5qb2luKCIsICIpKX0pLCEhdSl7dC5zdWJtaXR0ZWQ9ITAsd2luZG93Ll9fYXNrUmVuZGVyKGUpO3ZhciBzPWEuam9pbihgCmApO2ZldGNoKCIvYXBpL3Nlc3Npb25zLyIrbi5zZWxlY3RlZElkKyIvaW5wdXQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtpbnB1dDpzK2AKYCx2aWV3Om4uY3VycmVudFZpZXd9KX0pLmNhdGNoKGZ1bmN0aW9uKG8pe2NvbnNvbGUuZXJyb3IoIlt3YW5kXSBFcnJvciBzZW5kaW5nIGFuc3dlcjoiLG8pLHQuc3VibWl0dGVkPSExLHdpbmRvdy5fX2Fza1JlbmRlcihlKX0pfX19fTtmdW5jdGlvbiBZZCgpe2lmKCFuLl9fZ2xvYmFsTGlzdGVuZXJzQm91bmQpe24uX19nbG9iYWxMaXN0ZW5lcnNCb3VuZD0hMCxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1vdmVyZmxvdy1tZW51Iik7dCYmdC5jbGFzc0xpc3QucmVtb3ZlKCJvcGVuIil9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigicmVzaXplIixmdW5jdGlvbigpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLW92ZXJmbG93LW1lbnUiKTt0JiZ0LmNsYXNzTGlzdC5yZW1vdmUoIm9wZW4iKX0pO3ZhciBlPWZ1bmN0aW9uKCl7bi50b3BiYXJNb3JlT3Blbj0hMTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLW1vcmUtbWVudSIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1tb3JlLWJ1dHRvbiIpO3QmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksciYmKHIuY2xhc3NMaXN0LnJlbW92ZSgiYWN0aXZlIiksci5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCJmYWxzZSIpKX07ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHQpe2lmKG4udG9wYmFyTW9yZU9wZW4pe3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbW9yZS1tZW51IiksaT1yJiZyLnBhcmVudEVsZW1lbnQ7aSYmIWkuY29udGFpbnModC50YXJnZXQpJiZlKCl9fSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24odCl7dC5rZXk9PT0iRXNjYXBlIiYmbi50b3BiYXJNb3JlT3BlbiYmZSgpfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHQpe2lmKG4ucGx1c1BvcG92ZXJPcGVuKXt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29tcG9zZXItcGx1cy1wb3BvdmVyIiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXR0YWNoLWJ0biIpO3ImJnIuY29udGFpbnModC50YXJnZXQpfHxpJiZpLmNvbnRhaW5zKHQudGFyZ2V0KXx8QWkoKX19KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih0KXt0LmtleT09PSJFc2NhcGUiJiZuLnBsdXNQb3BvdmVyT3BlbiYmQWkoKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXtpZighdC50YXJnZXQuY2xvc2VzdCgiLmZvbGRlci1waWNrZXItY29udGFpbmVyIikpe3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWRyb3Bkb3duIik7ciYmci5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX19KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKHQpe3ZhciByPXQudGFyZ2V0O2lmKCEoIXJ8fHIubm9kZVR5cGUhPT0xKSYmISh0eXBlb2Ygci5tYXRjaGVzIT0iZnVuY3Rpb24ifHwhci5tYXRjaGVzKCJbZGF0YS1tb2RlLWNvbnRyb2xdIikpKXt2YXIgaT1yLmdldEF0dHJpYnV0ZSgiZGF0YS1tb2RlLWNvbnRyb2wiKSxhPXIudmFsdWU7aT09PSJtb2RlIj8obi5jaGF0TW9kZT1hLCRuKCksayYmaygiXHU2NUIwXHU0RjFBXHU4QkREXHU2QTIxXHU1RjBGXHVGRjFBIithLCJpbmZvIikpOmk9PT0ibW9kZWwiP0l2KGEpOmk9PT0idGhpbmtpbmciJiZrdihhKSxyLmNsb3Nlc3QmJnIuY2xvc2VzdCgiI2NvbXBvc2VyLXBsdXMtcG9wb3ZlciIpJiZBaSgpfX0pfX1mdW5jdGlvbiBKZCgpe1lkKCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZ2luLWJ1dHRvbiIpO2lmKGUpe2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFdhKTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tZm9ybSIpO3QmJnQuYWRkRXZlbnRMaXN0ZW5lcigic3VibWl0IixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCksV2EoKX0pO3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2dpbi1zd2l0Y2gtc2VydmVyLWJ1dHRvbiIpO3ImJnIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFRvKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGFzc3dvcmQiKSxhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2dnbGUtcGFzc3dvcmQtYnV0dG9uIik7YSYmaSYmYS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgeT1pLnR5cGU9PT0idGV4dCI7aS50eXBlPXk/InBhc3N3b3JkIjoidGV4dCIsYS50ZXh0Q29udGVudD15PyJcdTY2M0VcdTc5M0EiOiJcdTk2OTBcdTg1Q0YiLGEuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIix5PyJcdTY2M0VcdTc5M0FcdTVCQzZcdTc4MDEiOiJcdTk2OTBcdTg1Q0ZcdTVCQzZcdTc4MDEiKSxhLnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIix5PyJmYWxzZSI6InRydWUiKSxpLmZvY3VzKCl9KSxpJiYoaS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih5KXt5LmtleT09PSJFbnRlciImJldhKCl9KSxpLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe2kuZGF0YXNldC5lcnJvcj0iZmFsc2UiLGkuc2V0QXR0cmlidXRlKCJhcmlhLWludmFsaWQiLCJmYWxzZSIpO3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2dpbi1lcnJvciIpO3kmJnNpKHkpfSksaS5mb2N1cygpKTtyZXR1cm59dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtaW5wdXQiKTt1JiYodS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih5KXt5LmtleT09PSJFbnRlciImJiF5LnNoaWZ0S2V5JiYoeS5wcmV2ZW50RGVmYXVsdCgpLHFzKCkpfSksdS5mb2N1cygpKTt2YXIgcz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS1zZW5kLWJ0biIpO3MmJnMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7cXMoKX0pO3ZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLXRvb2wtY2xhdWRlIik7byYmby5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtpbCgpfSk7dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtdG9vbC1jb2RleCIpO2wmJmwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7bi5zZXNzaW9uVG9vbD0iY29kZXgiLG4ucHJlZmVycmVkQ29tbWFuZD0iY29kZXgiLG4ubW9kZVZhbHVlPSJmdWxsLWFjY2VzcyIsaWwoKX0pO3ZhciBjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLXRvb2wtc3RydWN0dXJlZCIpO2MmJmMuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7WW8oKS50aGVuKGZ1bmN0aW9uKCl7anQoITApfSkuY2F0Y2goZnVuY3Rpb24oeSl7ayh5JiZ5Lm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTdFRDNcdTY3ODRcdTUzMTZcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpfSl9KSx2bSgpO3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1saXN0Iik7ZiYmKGYuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGtkKSxmLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLEFkKSxmLmFkZEV2ZW50TGlzdGVuZXIoIm1vdXNlb3ZlciIsanYpLGYuYWRkRXZlbnRMaXN0ZW5lcigibW91c2VvdXQiLFJ2KSxEcChmKSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsWnQsITApLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJyZXNpemUiLFp0KTt2YXIgZD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicHJvdmlkZXItY2FyZHMiKTtkJiZkLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt2YXIgRD15LnRhcmdldC5jbG9zZXN0KCIucHJvdmlkZXItY2FyZCIpO2lmKCEoIUR8fEQuY2xhc3NMaXN0LmNvbnRhaW5zKCJkaXNhYmxlZCIpKSl7dmFyIFI9RC5nZXRBdHRyaWJ1dGUoImRhdGEtcHJvdmlkZXIiKTtSJiYobi5zZXNzaW9uVG9vbD1SLG4ucHJlZmVycmVkQ29tbWFuZD1SLFRyKCkpfX0pO3ZhciB2PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWtpbmQtY2FyZHMiKTt2JiZ2LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt2YXIgRD15LnRhcmdldC5jbG9zZXN0KCIuc2Vzc2lvbi1raW5kLWNhcmQiKTtpZighKCFEfHxELmNsYXNzTGlzdC5jb250YWlucygiZGlzYWJsZWQiKSkpe3ZhciBSPUQuZ2V0QXR0cmlidXRlKCJkYXRhLXNlc3Npb24ta2luZCIpO1ImJihuLnNlc3Npb25DcmVhdGVLaW5kPVIsVHIoKSl9fSk7dmFyIGc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vZGUtY2FyZHMiKTtnJiZnLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt2YXIgRD15LnRhcmdldC5jbG9zZXN0KCIubW9kZS1jYXJkIik7aWYoRCl7dmFyIFI9RC5nZXRBdHRyaWJ1dGUoImRhdGEtbW9kZSIpO1ImJihuLm1vZGVWYWx1ZT1SLFRyKCkpfX0pO3ZhciBoPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLXdvcmt0cmVlLXRvZ2dsZSIpO2gmJmguYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe24uc2Vzc2lvbkNyZWF0ZVdvcmt0cmVlPWguY2hlY2tlZH0pO3ZhciBtPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2QiKTttJiYobS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oKXtuLmN3ZFZhbHVlPW0udmFsdWV9KSxtLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtuLmN3ZFZhbHVlPW0udmFsdWV9KSxtLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0Iix1bCksbS5hZGRFdmVudExpc3RlbmVyKCJmb2N1cyIsdWwpLG0uYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsZnVuY3Rpb24oKXtzZXRUaW1lb3V0KG5yLDEyMCl9KSk7dmFyIGI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLXRvZ2dsZS1idXR0b24iKTtiJiZiLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixPdik7dmFyIEY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWRyYXdlci1iYWNrZHJvcCIpO0YmJkYuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLE9yKTt2YXIgdz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2xvc2UtZHJhd2VyLWJ1dHRvbiIpO3cmJncuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLE9yKTt2YXIgRT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1jb2xsYXBzZS1idG4iKTtFJiZFLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixXdik7dmFyIEE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItcGluLWJ0biIpO0EmJkEuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHp2KTt2YXIgeD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1tb3JlLWJ0biIpLEk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItb3ZlcmZsb3ctbWVudSIpO3gmJkkmJnguYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIEQ9IUkuY2xhc3NMaXN0LmNvbnRhaW5zKCJvcGVuIik7SS5jbGFzc0xpc3QudG9nZ2xlKCJvcGVuIixEKSxEJiZVdihJKX0pO3ZhciBqPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLWhvbWUtYnRuIik7aiYmai5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtuLnNlbGVjdGVkSWQ9bnVsbCx5ZSgpLEJ0KCksVnQoKSwkdCgpfSk7dmFyIFY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZGViYXItcmVmcmVzaC1idG4iKTtWJiZWLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3dpbmRvdy5sb2NhdGlvbi5yZWxvYWQoKX0pO3ZhciBHPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJsb2dvdXQtYnV0dG9uIik7RyYmRy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsTG8pO3ZhciBMPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzd2l0Y2gtc2VydmVyLWJ1dHRvbiIpO0wmJkwuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFRvKTt2YXIgQj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmFjay10by1uYXRpdmUtYnV0dG9uIik7QiYmQi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIseXYpO3ZhciBUPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1idXR0b24iKTtUJiZULmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixKdik7dmFyIE09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNsb3NlLXNldHRpbmdzLWJ1dHRvbiIpO00mJk0uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGVyKTt2YXIgSD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbW9kYWwiKTtIJiZILmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnRhcmdldC5pZD09PSJzZXR0aW5ncy1tb2RhbCImJmVyKCl9KTt2YXIgJD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2F2ZS1wYXNzd29yZC1idXR0b24iKTskJiYkLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixHdik7Zm9yKHZhciBuZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2V0dGluZ3MtdGFiIiksUT0wO1E8bmUubGVuZ3RoO1ErKyluZVtRXS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7dmFyIEQ9eS5jdXJyZW50VGFyZ2V0fHx0aGlzLFI9RCYmRC5nZXRBdHRyaWJ1dGU/RC5nZXRBdHRyaWJ1dGUoImRhdGEtdGFiIik6bnVsbDtSJiYkYShSKX0pO3ZhciBzZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2F2ZS1jb25maWctYnV0dG9uIik7c2UmJnNlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix0bSk7dmFyIGVlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctZGVmYXVsdC1tb2RlbC1yZWZyZXNoIik7ZWUmJmVlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIix4dik7dmFyIFM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy12aWV3LWVudi1idG4iKTtTJiZTLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixTdik7dmFyIE49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNhdmUtZGlzcGxheS1idXR0b24iKTtOJiZOLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixubSk7dmFyIFc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcC1pY29uLXBpY2tlciIpO2lmKFcpZm9yKHZhciBKPVcucXVlcnlTZWxlY3RvckFsbCgiLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbiIpLFU9MDtVPEoubGVuZ3RoO1UrKylKW1VdLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciB5PXRoaXMuZ2V0QXR0cmlidXRlKCJkYXRhLWljb24iKTtpZighKCF5fHx0eXBlb2YgV2FuZE5hdGl2ZT4idSJ8fHR5cGVvZiBXYW5kTmF0aXZlLnNldEFwcEljb24hPSJmdW5jdGlvbiIpKXRyeXtXYW5kTmF0aXZlLnNldEFwcEljb24oeSksZWwoeSk7dmFyIEQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcC1pY29uLW1lc3NhZ2UiKTtEJiYoRC50ZXh0Q29udGVudD0iXHU1NkZFXHU2ODA3XHU1REYyXHU1MjA3XHU2MzYyXHVGRjBDXHU4RkQ0XHU1NkRFXHU2ODRDXHU5NzYyXHU1NDBFXHU3NTFGXHU2NTQ4IixELnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIsRC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7RC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX0sM2UzKSl9Y2F0Y2h7fX0pO3ZhciBYPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ1cGxvYWQtY2VydC1idXR0b24iKTtYJiZYLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixybSk7Zm9yKHZhciBvZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuZmlsZS1waWNrZXItaW5wdXQiKSxsZT0wO2xlPG9lLmxlbmd0aDtsZSsrKShmdW5jdGlvbih5KXt5LmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXt2YXIgRD15LmNsb3Nlc3QoIi5maWxlLXBpY2tlciIpO2lmKEQpe3ZhciBSPUQucXVlcnlTZWxlY3RvcigiLmZpbGUtcGlja2VyLW5hbWUiKTtSJiYoeS5maWxlcyYmeS5maWxlc1swXT8oUi50ZXh0Q29udGVudD15LmZpbGVzWzBdLm5hbWUsRC5jbGFzc0xpc3QuYWRkKCJmaWxlLXBpY2tlci1oYXMtZmlsZSIpKTooUi50ZXh0Q29udGVudD1SLmdldEF0dHJpYnV0ZSgiZGF0YS1kZWZhdWx0Iil8fCJcdTY3MkFcdTkwMDlcdTYyRTlcdTY1ODdcdTRFRjYiLEQuY2xhc3NMaXN0LnJlbW92ZSgiZmlsZS1waWNrZXItaGFzLWZpbGUiKSkpfX0pfSkob2VbbGVdKTt2YXIgcmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoZWNrLXVwZGF0ZS1idXR0b24iKTtyZSYmcmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFpvKTt2YXIgQmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvLXVwZGF0ZS1idXR0b24iKTtCZSYmQmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGltKTt2YXIgRGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvLXJlc3RhcnQtYnV0dG9uIik7RGUmJkRlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixhbSk7dmFyIGJlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS13ZWItdG9nZ2xlIik7YmUmJmJlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXtYYSgid2ViIixiZS5jaGVja2VkKX0pO3ZhciBQPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1hcGstdG9nZ2xlIik7UCYmUC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7WGEoImFwayIsUC5jaGVja2VkKX0pO3ZhciB6PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1kbWctdG9nZ2xlIik7eiYmei5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7WGEoImRtZyIsei5jaGVja2VkKX0pO3ZhciBpZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmV0YS1jaGFubmVsLXRvZ2dsZSIpO2llJiZpZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7b20oaWUuY2hlY2tlZD8iYmV0YSI6InN0YWJsZSIpfSk7dmFyIFRlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb3B5LWNvbm5lY3QtY29kZS1idXR0b24iKTtUZSYmVGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIHk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1jb2RlIik7eSYmSHIoeS50ZXh0Q29udGVudCxUZSl9KTt2YXIgY2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1ub3RpZi1zb3VuZCIpO2NlJiYoY2UuY2hlY2tlZD1uLm5vdGlmU291bmQsY2UuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe24ubm90aWZTb3VuZD1jZS5jaGVja2VkO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1ub3RpZi1zb3VuZCIsU3RyaW5nKG4ubm90aWZTb3VuZCkpfWNhdGNoe31uLm5vdGlmU291bmQmJmNpKCk7dmFyIHk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmLXZvbHVtZS1maWVsZCIpO3kmJih5LnN0eWxlLmRpc3BsYXk9bi5ub3RpZlNvdW5kPyIiOiJub25lIil9KSk7dmFyIGFlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtdm9sdW1lIiksa2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1ub3RpZi12b2x1bWUtdmFsIikscHQ9ZnVuY3Rpb24oeSl7aWYoeSl7dmFyIEQ9TnVtYmVyKHkubWlufHwwKSxSPU51bWJlcih5Lm1heHx8MTAwKSx3ZT1OdW1iZXIoeS52YWx1ZXx8MCksRnQ9Uj5EP01hdGgubWF4KDAsTWF0aC5taW4oMTAwLCh3ZS1EKS8oUi1EKSoxMDApKTowO3kuc3R5bGUuc2V0UHJvcGVydHkoIi0tcmFuZ2UtZmlsbCIsRnQrIiUiKX19O2lmKGFlKXthZS52YWx1ZT1TdHJpbmcobi5ub3RpZlZvbHVtZSksa2UmJihrZS50ZXh0Q29udGVudD1uLm5vdGlmVm9sdW1lKyIlIikscHQoYWUpO3ZhciBzdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm90aWYtdm9sdW1lLWZpZWxkIik7c3QmJihzdC5zdHlsZS5kaXNwbGF5PW4ubm90aWZTb3VuZD8iIjoibm9uZSIpO3ZhciBBdD1udWxsO2FlLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe24ubm90aWZWb2x1bWU9cGFyc2VJbnQoYWUudmFsdWUsMTApLGtlJiYoa2UudGV4dENvbnRlbnQ9bi5ub3RpZlZvbHVtZSsiJSIpLHB0KGFlKTt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtbm90aWYtdm9sdW1lIixTdHJpbmcobi5ub3RpZlZvbHVtZSkpfWNhdGNoe31pZihqZSYmdHlwZW9mIFdhbmROYXRpdmUuc2V0Tm90aWZpY2F0aW9uVm9sdW1lPT0iZnVuY3Rpb24iKXRyeXtXYW5kTmF0aXZlLnNldE5vdGlmaWNhdGlvblZvbHVtZShuLm5vdGlmVm9sdW1lKX1jYXRjaHt9fSksYWUuYWRkRXZlbnRMaXN0ZW5lcigiY2hhbmdlIixmdW5jdGlvbigpe2NpKCl9KX12YXIgVWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1ub3RpZi1idWJibGUiKTtVZSYmKFVlLmNoZWNrZWQ9bi5ub3RpZkJ1YmJsZSxVZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7bi5ub3RpZkJ1YmJsZT1VZS5jaGVja2VkO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1ub3RpZi1idWJibGUiLFN0cmluZyhuLm5vdGlmQnViYmxlKSl9Y2F0Y2h7fX0pKTt2YXIgb3Q9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXF1ZXN0LWJ0biIpO290JiZvdC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtpZihqZSl7d2luZG93Ll9vbk5hdGl2ZVBlcm1pc3Npb25SZXN1bHQ9ZnVuY3Rpb24oKXtobigpLGRlbGV0ZSB3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdH07dHJ5e1dhbmROYXRpdmUucmVxdWVzdFBlcm1pc3Npb24oKX1jYXRjaHt9fWVsc2UgdHlwZW9mIE5vdGlmaWNhdGlvbjwidSImJk5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpLnRoZW4oZnVuY3Rpb24oKXtobigpfSl9KTt2YXIgS2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXNldC1idG4iKTtLZSYmS2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGxtKTt2YXIgeHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LWJ0biIpO3h0JiZ4dC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsbmwpO3ZhciBZZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm90aWZpY2F0aW9uLXRlc3QtZGVsYXktYnRuIik7aWYoWWUmJlllLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixjbSksaG4oKSxqZSYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0QXZhaWxhYmxlU291bmRzPT0iZnVuY3Rpb24iKXt2YXIgUmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5hdGl2ZS1zb3VuZC1zZWN0aW9uIiksQWU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5hdGl2ZS1zb3VuZC1zZWxlY3QiKSx2ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmF0aXZlLXNvdW5kLXByZXZpZXciKTtpZihSZSYmQWUpe1JlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3RyeXt2YXIgRWU9SlNPTi5wYXJzZShXYW5kTmF0aXZlLmdldEF2YWlsYWJsZVNvdW5kcygpKSxDPVdhbmROYXRpdmUuZ2V0Tm90aWZpY2F0aW9uU291bmQoKTtBZS5pbm5lckhUTUw9IiI7Zm9yKHZhciBsdD0wO2x0PEVlLmxlbmd0aDtsdCsrKXt2YXIgdnQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgib3B0aW9uIik7dnQudmFsdWU9RWVbbHRdLmlkLHZ0LnRleHRDb250ZW50PUVlW2x0XS5uYW1lLEVlW2x0XS5pZD09PUMmJih2dC5zZWxlY3RlZD0hMCksQWUuYXBwZW5kQ2hpbGQodnQpfUFlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXt0cnl7V2FuZE5hdGl2ZS5zZXROb3RpZmljYXRpb25Tb3VuZChBZS52YWx1ZSl9Y2F0Y2h7fX0pLHZlJiZ2ZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt0cnl7V2FuZE5hdGl2ZS5wcmV2aWV3U291bmQoQWUudmFsdWUpfWNhdGNoe319KX1jYXRjaHt9fX1pZihqZSYmdHlwZW9mIFdhbmROYXRpdmUuaXNIYXB0aWNFbmFibGVkPT0iZnVuY3Rpb24iKXt2YXIgYnQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5hdGl2ZS1oYXB0aWMtc2VjdGlvbiIpLHFlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaGFwdGljLWVuYWJsZWQiKTtpZihidCYmcWUpe2J0LmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3RyeXtxZS5jaGVja2VkPVdhbmROYXRpdmUuaXNIYXB0aWNFbmFibGVkKCl9Y2F0Y2h7fXFlLmFkZEV2ZW50TGlzdGVuZXIoImNoYW5nZSIsZnVuY3Rpb24oKXt0cnl7V2FuZE5hdGl2ZS5zZXRIYXB0aWNFbmFibGVkKHFlLmNoZWNrZWQpfWNhdGNoe31xZS5jaGVja2VkJiZKbigibWVkaXVtIil9KX19dmFyIFN0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbmV3LXNlc3Npb24tYnV0dG9uIik7U3QmJlN0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixHYSk7dmFyIGVuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkcmF3ZXItbmV3LXNlc3Npb24tYnV0dG9uIik7ZW4mJmVuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixHYSk7dmFyIGN0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbG9zZS1tb2RhbC1idXR0b24iKTtjdCYmY3QuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG1uKTt2YXIgSGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNsb3NlLXdvcmt0cmVlLW1lcmdlLWJ1dHRvbiIpO0hlJiZIZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsWm4pO3ZhciBfZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtY2FuY2VsLWJ1dHRvbiIpO19lJiZfZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsWm4pO3ZhciBDZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtY29uZmlybS1idXR0b24iKTtDZSYmQ2UuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLFl2KTt2YXIgSmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJ1bi1idXR0b24iKTtKZSYmSmUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGRtKTt2YXIgSXQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcHJvdmUtcGVybWlzc2lvbi1idG4iKTtJdCYmSXQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGVkKTt2YXIgRXQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRlbnktcGVybWlzc2lvbi1idG4iKTtFdCYmRXQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLHRkKTt2YXIgeW49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tYXBwcm92ZS10b2dnbGUiKTt5biYmeW4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLG5kKTt2YXIgVHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlbmQtaW5wdXQtYnV0dG9uIik7VHQmJlR0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe1Z0KCksSWYoKX0pO3ZhciBNbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RvcC1idXR0b24iKTtNbiYmTW4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLEFhKTt2YXIgbnQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTtudCYmbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kudGFyZ2V0LmlkPT09InNlc3Npb24tbW9kYWwiJiZtbigpLHkudGFyZ2V0LmlkPT09Indvcmt0cmVlLW1lcmdlLW1vZGFsIiYmWm4oKX0pO3ZhciBkZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7ZGUmJihzbyhkZSksZGUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsYm0pLGRlLmFkZEV2ZW50TGlzdGVuZXIoInBhc3RlIixBbSksZGUuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKCl7bi50ZXJtaW5hbENvbXBvc2luZ3x8c2woZGUpfHwoTnAoZGUpLHV0KGRlLnZhbHVlLCEwKSxTaShkZSkpfSksZGUuYWRkRXZlbnRMaXN0ZW5lcigiY29tcG9zaXRpb25zdGFydCIsZnVuY3Rpb24oKXtuLnRlcm1pbmFsSW50ZXJhY3RpdmUmJihuLnRlcm1pbmFsQ29tcG9zaW5nPSEwKX0pLGRlLmFkZEV2ZW50TGlzdGVuZXIoImNvbXBvc2l0aW9uZW5kIixmdW5jdGlvbigpe24udGVybWluYWxDb21wb3NpbmcmJihuLnRlcm1pbmFsQ29tcG9zaW5nPSExLG4udGVybWluYWxJbnRlcmFjdGl2ZSYmc2woZGUpKX0pLGRlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixmdW5jdGlvbigpe1Z0KCksTHAoe3RhcmdldDpkZX0pfSksZGUuYWRkRXZlbnRMaXN0ZW5lcigiYmx1ciIsTXApKTt2YXIgdGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF0dGFjaC1idG4iKSxtZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS11cGxvYWQtaW5wdXQiKSxQZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29tcG9zZXItcGx1cy1wb3BvdmVyIiksR2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBsdXMtYXR0YWNoLWl0ZW0iKTt0ZSYmUGUmJnRlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnN0b3BQcm9wYWdhdGlvbigpLHF2KCl9KSxHZSYmbWUmJkdlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe0FpKCksbWUuY2xpY2soKX0pLG1lJiZtZS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7dmFyIHk9bWUuZmlsZXM7aWYoeSlmb3IodmFyIEQ9MDtEPHkubGVuZ3RoO0QrKylaYSh5W0RdKTttZS52YWx1ZT0iIn0pO3ZhciBRZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtYnRuIik7UWUmJlFlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2hhKCl9KTt2YXIgeGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLWNhbmNlbC1idG4iKTt4ZSYmeGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7aGEoITEpfSk7dmFyIEZlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1yZWNvcmQtYnRuIik7RmUmJihGZS5hZGRFdmVudExpc3RlbmVyKCJwb2ludGVyZG93biIsQ2YpLEZlLmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJtb3ZlIixCZiksRmUuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixNcyksRmUuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmNhbmNlbCIsTXMpKTt2YXIgTHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInByb21wdC1vcHRpbWl6ZS1idG4iKTtMdCYmTHQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7U20oKX0pO3ZhciAkZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtY29tcG9zZXIiKTskZSYmKCRlLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdvdmVyIixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCkseS5zdG9wUHJvcGFnYXRpb24oKSwkZS5jbGFzc0xpc3QuYWRkKCJkcmFnLW92ZXIiKX0pLCRlLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdsZWF2ZSIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksJGUuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZy1vdmVyIil9KSwkZS5hZGRFdmVudExpc3RlbmVyKCJkcm9wIixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCkseS5zdG9wUHJvcGFnYXRpb24oKSwkZS5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnLW92ZXIiKTt2YXIgRD15LmRhdGFUcmFuc2ZlciYmeS5kYXRhVHJhbnNmZXIuZmlsZXM7aWYoRClmb3IodmFyIFI9MDtSPEQubGVuZ3RoO1IrKylaYShEW1JdKX0pKTt2YXIgcT1bInRlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AiXTtxLmZvckVhY2goZnVuY3Rpb24oeSl7dmFyIEQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoeSk7RCYmRC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsbXApfSk7dmFyIF89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtcGFuZWwtdG9nZ2xlLWJ0biIpO18mJl8uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLEtyKTt2YXIgWT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1zaWRlLXBhbmVsLWNsb3NlIik7WSYmWS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIseXUpO3ZhciBmZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmlsZS1wYW5lbC1iYWNrZHJvcCIpO2ZlJiZmZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIseXUpO3ZhciBnZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWZpbGUtYnV0dG9uIik7Z2UmJmdlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixLcik7dmFyIFhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItY3dkIik7WGUmJihYZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtuLmZpbGVQYW5lbE9wZW58fEtyKCl9KSxYZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih5KXsoeS5rZXk9PT0iRW50ZXIifHx5LmtleT09PSIgIikmJih5LnByZXZlbnREZWZhdWx0KCksbi5maWxlUGFuZWxPcGVufHxLcigpKX0pKTt2YXIgYm49ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvcGJhci1tb3JlLWJ1dHRvbiIpLE9uPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b3BiYXItbW9yZS1tZW51Iik7Ym4mJk9uJiYoYm4uYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3kuc3RvcFByb3BhZ2F0aW9uKCksbi50b3BiYXJNb3JlT3Blbj0hbi50b3BiYXJNb3JlT3BlbixPbi5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCFuLnRvcGJhck1vcmVPcGVuKSxibi5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLG4udG9wYmFyTW9yZU9wZW4pLGJuLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsbi50b3BiYXJNb3JlT3Blbj8idHJ1ZSI6ImZhbHNlIil9KSxPbi5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7dmFyIEQ9eS50YXJnZXQmJnkudGFyZ2V0LmNsb3Nlc3Q/eS50YXJnZXQuY2xvc2VzdCgiLnRvcGJhci1tb3JlLWl0ZW0iKTpudWxsO2lmKEQpe3ZhciBSPUQuZ2V0QXR0cmlidXRlKCJkYXRhLWFjdGlvbiIpO3N3aXRjaChuLnRvcGJhck1vcmVPcGVuPSExLE9uLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGJuLmNsYXNzTGlzdC5yZW1vdmUoImFjdGl2ZSIpLGJuLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsImZhbHNlIiksUil7Y2FzZSJjb3B5LWNsYXVkZS1zZXNzaW9uLWlkIjphYSgiY2xhdWRlU2Vzc2lvbklkIixOdCgpJiZOdCgpLnByb3ZpZGVyPT09ImNvZGV4Ij8iQ29kZXggdGhyZWFkIElEIFx1NURGMlx1NTkwRFx1NTIzNiI6IkNsYXVkZSBcdTRGMUFcdThCREQgSUQgXHU1REYyXHU1OTBEXHU1MjM2Iik7YnJlYWs7Y2FzZSJjb3B5LWN3ZCI6YWEoImN3ZCIsIlx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NVx1NURGMlx1NTkwRFx1NTIzNiIpO2JyZWFrO2Nhc2UiY29weS1zZXNzaW9uLWlkIjphYSgiaWQiLCJcdTRGMUFcdThCREQgSUQgXHU1REYyXHU1OTBEXHU1MjM2Iik7YnJlYWs7Y2FzZSJ3b3JrdHJlZS1tZXJnZSI6bi5zZWxlY3RlZElkJiZHbyhuLnNlbGVjdGVkSWQpO2JyZWFrO2Nhc2Uid29ya3RyZWUtY2xlYW51cCI6bi5zZWxlY3RlZElkJiZRbyhuLnNlbGVjdGVkSWQpO2JyZWFrO2Nhc2UiZGVsZXRlLXNlc3Npb24iOm4uc2VsZWN0ZWRJZCYmKGZ1bmN0aW9uKHdlKXtrbigiXHU3ODZFXHU1QjlBXHU4OTgxXHU1MjIwXHU5NjY0XHU1RjUzXHU1MjREXHU0RjFBXHU4QkREXHU1NDE3XHVGRjFGXHU2QjY0XHU2NENEXHU0RjVDXHU2NUUwXHU2Q0Q1XHU2NEE0XHU5NTAwXHUzMDAyIix7dGl0bGU6Ilx1NTIyMFx1OTY2NFx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERCJ9KS50aGVuKGZ1bmN0aW9uKEZ0KXtGdCYmWnMod2UpfSl9KShuLnNlbGVjdGVkSWQpO2JyZWFrfX19KSk7dmFyIFRpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC1zY2FsZS1kb3duLXRvcCIpLG9sPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC1zY2FsZS11cC10b3AiKTtUaSYmVGkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7YnUoLS4yNSl9KSxvbCYmb2wuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7YnUoLjI1KX0pO3ZhciBsbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGFnZS1yZWZyZXNoLWJ0biIpO2xsJiZsbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7aWYoeSYmeS5zaGlmdEtleSl7bG9jYXRpb24ucmVsb2FkKCk7cmV0dXJufUFuKCksQnQoe3ByZXNlcnZlU3RpY2tTdGF0ZTohMH0pLGZvKCEwKX0pO3ZhciBjbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtanVtcC1ib3R0b20iKTtjbCYmY2wuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7bXQoImZvcmNlIil9KTt2YXIgZGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtdW5yZWFkLWJ1YmJsZSIpO2RsJiZkbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtMbCghMCl9KTt2YXIgZmw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZpbGUtZXhwbG9yZXItcmVmcmVzaCIpO2ZsJiZmbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtPdCgpfSk7dmFyIHBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLXVwIik7cGwmJnBsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIiwkbCk7dmFyIFdlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLWV4cGxvcmVyLWN3ZCIpO2lmKFdlJiZXZS50YWdOYW1lPT09IklOUFVUIil7dmFyIHJyPVdlLnZhbHVlLHZsPWZ1bmN0aW9uKHkpe3ZhciBEPSh5fHwiIikudHJpbSgpO3JldHVybiBEPyhEPUQucmVwbGFjZSgvXC97Mix9L2csIi8iKSxELmxlbmd0aD4xJiYoRD1ELnJlcGxhY2UoL1wvKyQvLCIiKSksRCk6IiJ9O1dlLmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixmdW5jdGlvbigpe3JyPVdlLnZhbHVlLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0cnl7V2Uuc2VsZWN0KCl9Y2F0Y2h7fX0sMCl9KSxXZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih5KXtpZih5LmtleT09PSJFbnRlciIpe3kucHJldmVudERlZmF1bHQoKTt2YXIgRD12bChXZS52YWx1ZSk7aWYoIUQpcmV0dXJuO3JyPUQsV2UudmFsdWU9RCxPdCh7Y3dkOkR9KSxXZS5ibHVyKCl9ZWxzZSB5LmtleT09PSJFc2NhcGUiJiYoeS5wcmV2ZW50RGVmYXVsdCgpLFdlLnZhbHVlPXJyLFdlLmJsdXIoKSl9KSxXZS5hZGRFdmVudExpc3RlbmVyKCJibHVyIixmdW5jdGlvbigpe3ZhciB5PXZsKFdlLnZhbHVlKTtpZigheSl7V2UudmFsdWU9cnI7cmV0dXJufWlmKHk9PT1ycil7V2UudmFsdWU9eTtyZXR1cm59cnI9eSxXZS52YWx1ZT15LE90KHtjd2Q6eX0pfSl9dmFyIExpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXNlYXJjaC1pbnB1dCIpLGpyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmaWxlLXNlYXJjaC1jbGVhciIpO0xpJiZMaS5hZGRFdmVudExpc3RlbmVyKCJpbnB1dCIsZnVuY3Rpb24oeSl7bi5maWxlU2VhcmNoUXVlcnk9eS50YXJnZXQudmFsdWUudHJpbSgpLGpyJiZqci5jbGFzc0xpc3QudG9nZ2xlKCJ2aXNpYmxlIixuLmZpbGVTZWFyY2hRdWVyeS5sZW5ndGg+MCksQ3UoKX0pLGpyJiZqci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXtuLmZpbGVTZWFyY2hRdWVyeT0iIixMaSYmKExpLnZhbHVlPSIiKSxqci5jbGFzc0xpc3QucmVtb3ZlKCJ2aXNpYmxlIil9KTt2YXIgaGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItaW5wdXQiKSxMZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci1kcm9wZG93biIpLGF1PW51bGwsS3Q9LTEsRW49W107ZnVuY3Rpb24gbWwoeSl7aGUmJmhlLmNsYXNzTGlzdC5hZGQoImludmFsaWQiKTt2YXIgRD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIik7RCYmKEQudGV4dENvbnRlbnQ9eSxELmNsYXNzTGlzdC5hZGQoInZpc2libGUiKSl9ZnVuY3Rpb24gZ2woKXtoZSYmaGUuY2xhc3NMaXN0LnJlbW92ZSgiaW52YWxpZCIpO3ZhciB5PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLXZhbGlkYXRpb24iKTt5JiYoeS50ZXh0Q29udGVudD0iIix5LmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKSl9ZnVuY3Rpb24gTG0oeSl7aWYoIXkubGVuZ3RoKXJldHVybiIiO3ZhciBEPSc8ZGl2IGNsYXNzPSJmb2xkZXItcmVjZW50LXNlY3Rpb24iPjxkaXYgY2xhc3M9ImZvbGRlci1yZWNlbnQtdGl0bGUiPlx1NjcwMFx1OEZEMVx1NEY3Rlx1NzUyODwvZGl2Pic7cmV0dXJuIHkuZm9yRWFjaChmdW5jdGlvbihSKXt2YXIgd2U9Ui5wYXRofHxSO0QrPSc8ZGl2IGNsYXNzPSJmb2xkZXItcmVjZW50LWl0ZW0iIGRhdGEtcGF0aD0iJytwKHdlKSsnIj48c3BhbiBjbGFzcz0iZm9sZGVyLXJlY2VudC1pdGVtLXBhdGgiPicrcCh3ZSkrIjwvc3Bhbj48L2Rpdj4ifSksRCs9IjwvZGl2PiIsRH1mdW5jdGlvbiBNbSgpe0xlJiZyYShmdW5jdGlvbih5KXt2YXIgRD1MbSh5KTtEPyhMZS5pbm5lckhUTUw9RCxMZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxMZS5xdWVyeVNlbGVjdG9yQWxsKCIuZm9sZGVyLXJlY2VudC1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihSKXtSLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciB3ZT10aGlzLmRhdGFzZXQucGF0aDtoZSYmKGhlLnZhbHVlPXdlLFF0KHdlKSx0bih3ZSkpfSl9KSk6UnIoKX0pfXZhciBobD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya2luZy1kaXItaW5kaWNhdG9yIik7aGwmJmhsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe24uc2VsZWN0ZWRJZD1udWxsLHllKCksbi5kcmFmdHM9e30sJHQoKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIHk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImZvbGRlci1waWNrZXItaW5wdXQiKTt5JiZ5LmZvY3VzKCl9LDUwKX0pO3ZhciB1dT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci10b2dnbGUiKSxMZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci1kcm9wZG93biIpO3V1JiZMZSYmdXUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7TGUuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiksdXUuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIpfSk7dmFyIE1pPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5mb2xkZXItcGlja2VyLWNvbXBhY3QiKTtpZihNaSYmKE1pLmFkZEV2ZW50TGlzdGVuZXIoImRyYWdvdmVyIixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCkseS5zdG9wUHJvcGFnYXRpb24oKSx0aGlzLmNsYXNzTGlzdC5hZGQoImRyYWctb3ZlciIpfSksTWkuYWRkRXZlbnRMaXN0ZW5lcigiZHJhZ2xlYXZlIixmdW5jdGlvbih5KXt5LnByZXZlbnREZWZhdWx0KCkseS5zdG9wUHJvcGFnYXRpb24oKSx0aGlzLmNsYXNzTGlzdC5yZW1vdmUoImRyYWctb3ZlciIpfSksTWkuYWRkRXZlbnRMaXN0ZW5lcigiZHJvcCIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHkuc3RvcFByb3BhZ2F0aW9uKCksdGhpcy5jbGFzc0xpc3QucmVtb3ZlKCJkcmFnLW92ZXIiKTt2YXIgRD15LmRhdGFUcmFuc2ZlciYmeS5kYXRhVHJhbnNmZXIuaXRlbXM7aWYoRClmb3IodmFyIFI9MDtSPEQubGVuZ3RoO1IrKyl7dmFyIHdlPURbUl07aWYod2Uua2luZD09PSJmaWxlIiYmd2Uud2Via2l0R2V0QXNFbnRyeSl7dmFyIEZ0PXdlLndlYmtpdEdldEFzRW50cnkoKTtpZihGdCYmRnQuaXNEaXJlY3RvcnkmJmhlKXt2YXIgTXQ9RnQuZnVsbFBhdGg7aGUudmFsdWU9TXQsUXQoTXQpLHRuKE10KTticmVha319fX0pKSxMZSYmTGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHkpe3ZhciBEPXkudGFyZ2V0LmNsb3Nlc3QoIi5mb2xkZXItcGlja2VyLXF1aWNrLWJ0biIpO2lmKEQmJmhlKXt2YXIgUj1ELmRhdGFzZXQucGF0aDtoZS52YWx1ZT1SLFF0KFIpLHRuKFIpLExlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO3ZhciB3ZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci10b2dnbGUiKTt3ZSYmd2UuY2xhc3NMaXN0LnJlbW92ZSgib3BlbiIpfX0pLGhlKXt2YXIgT209ZXQoKTt0bihPbSksaGUuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLGZ1bmN0aW9uKCl7dmFyIHk9dGhpcy52YWx1ZS50cmltKCk7eT90bih5KTpNbSgpfSksaGUuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGZ1bmN0aW9uKHkpe3ZhciBEPXkudGFyZ2V0LnZhbHVlLnRyaW0oKTtLdD0tMSxhdSYmY2xlYXJUaW1lb3V0KGF1KSxhdT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7RD90bihEKTpScigpfSwxNTApfSksaGUuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsZnVuY3Rpb24oeSl7aWYoeS5rZXk9PT0iRXNjYXBlIilScigpLHRoaXMuYmx1cigpO2Vsc2UgaWYoeS5rZXk9PT0iQXJyb3dEb3duIil5LnByZXZlbnREZWZhdWx0KCksRW4ubGVuZ3RoPjAmJihLdD1NYXRoLm1pbihLdCsxLEVuLmxlbmd0aC0xKSx5bCgpKTtlbHNlIGlmKHkua2V5PT09IkFycm93VXAiKXkucHJldmVudERlZmF1bHQoKSxLdD4wJiYoS3QtLSx5bCgpKTtlbHNlIGlmKHkua2V5PT09IkVudGVyIiYmS3Q+PTApe3kucHJldmVudERlZmF1bHQoKTt2YXIgRD1FbltLdF07aWYoRCl7dmFyIFI9RC5kYXRhc2V0LnBhdGg7aWYoUj09PSIuLiIpe3ZhciB3ZT1oZS52YWx1ZS50cmltKCksRnQ9d2Uuc3Vic3RyaW5nKDAsd2UubGFzdEluZGV4T2YoIi8iKSk7RnQmJihoZS52YWx1ZT1GdHx8Ii8iLFF0KGhlLnZhbHVlKSx0bihGdHx8Ii8iKSl9ZWxzZSBoZS52YWx1ZT1SLFF0KFIpLFJyKCl9fX0pfWZ1bmN0aW9uIHlsKCl7RW4uZm9yRWFjaChmdW5jdGlvbih5LEQpe3kuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixEPT09S3QpfSl9ZnVuY3Rpb24gdmcoeSl7fWZ1bmN0aW9uIHRuKHkpe0xlJiYoTGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRC4uLjwvZGl2PicsTGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksS3Q9LTEsRW49W10sZmV0Y2goIi9hcGkvZm9sZGVycz9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KHkpLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihEKXtyZXR1cm4gRC5qc29uKCkudGhlbihmdW5jdGlvbihSKXtyZXR1cm57b2s6RC5vayxzdGF0dXM6RC5zdGF0dXMsZGF0YTpSfX0pfSkudGhlbihmdW5jdGlvbihEKXt2YXIgUj1ELmRhdGE7aWYoIUQub2t8fFIuZXJyb3Ipe21sKFIuZXJyb3J8fCJcdThERUZcdTVGODRcdTY1RTBcdTY1NDgiKSxMZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItZXJyb3IiPicrcChSLmVycm9yfHwiXHU4REVGXHU1Rjg0XHU2NUUwXHU2NTQ4IikrIjwvZGl2PiI7cmV0dXJufWdsKCksUi5jdXJyZW50UGF0aDt2YXIgd2U9Ui5pdGVtc3x8W10sRnQ9Ui5jdXJyZW50UGF0aHx8eTtpZih3ZS5sZW5ndGg9PT0wKXtMZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImZvbGRlci1waWNrZXItbG9hZGluZyI+XHU3QTdBXHU3NkVFXHU1RjU1PC9kaXY+JztyZXR1cm59TGUuaW5uZXJIVE1MPXdlLm1hcChmdW5jdGlvbihNdCl7dmFyIE9pPU10LnR5cGU9PT0icGFyZW50Ij8iXHUyMUE5XHVGRTBGIjoiXHV7MUY0QzF9IixzdT1NdC50eXBlPT09InBhcmVudCI/Ii4uIChcdThGRDRcdTU2REVcdTRFMEFcdTdFQTcpIjpNdC5uYW1lO3JldHVybic8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWl0ZW0iIGRhdGEtcGF0aD0iJytwKE10LnBhdGgpKyciIGRhdGEtdHlwZT0iJytNdC50eXBlKyciPjxzcGFuIGNsYXNzPSJmb2xkZXItcGlja2VyLWl0ZW0taWNvbiI+JytPaSsiPC9zcGFuPjxzcGFuPiIrcChzdSkrIjwvc3Bhbj48L2Rpdj4ifSkuam9pbigiIiksRW49QXJyYXkuZnJvbShMZS5xdWVyeVNlbGVjdG9yQWxsKCIuZm9sZGVyLXBpY2tlci1pdGVtIikpLEVuLmZvckVhY2goZnVuY3Rpb24oTXQpe010LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciBPaT10aGlzLmRhdGFzZXQucGF0aCxzdT10aGlzLmRhdGFzZXQudHlwZTtpZihoZSlpZihzdT09PSJwYXJlbnQiKXt2YXIgd2w9aGUudmFsdWUudHJpbSgpLENsPXdsLnN1YnN0cmluZygwLHdsLmxhc3RJbmRleE9mKCIvIikpO2hlLnZhbHVlPUNsfHwiLyIsUXQoaGUudmFsdWUpLHRuKENsfHwiLyIpfWVsc2UgaGUudmFsdWU9T2ksUXQoT2kpLGdsKCksUnIoKX0pfSl9KS5jYXRjaChmdW5jdGlvbihEKXttbCgiXHU1MkEwXHU4RjdEXHU1OTMxXHU4RDI1IiksTGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLWVycm9yIj5cdTUyQTBcdThGN0RcdTU5MzFcdThEMjU8L2Rpdj4nfSkpfWZ1bmN0aW9uIFJyKCl7TGUmJkxlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLEt0PS0xLEVuPVtdfXZhciBGbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZm9sZGVyLXBpY2tlci1tb2RhbCIpLGJsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjbG9zZS1mb2xkZXItcGlja2VyIik7ZnVuY3Rpb24gbWcoKXtpZihGbil7Rm4uY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksaGUmJihoZS52YWx1ZT1ldCgpKTt2YXIgeT1ldCgpO3RuKHkpfX1ibCYmRm4mJmJsLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe0ZuLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpfSksRm4mJkZuLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih5KXt5LnRhcmdldD09PUZuJiZGbi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKX0pO3ZhciBFbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9wYmFyLWdpdC1iYWRnZSIpO0VsJiZFbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS5wcmV2ZW50RGVmYXVsdCgpLHF1KCl9KTt2YXIgRmw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInF1aWNrLWNvbW1pdC1tb2RhbCIpO0ZsJiZGbC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oeSl7eS50YXJnZXQuaWQ9PT0icXVpY2stY29tbWl0LW1vZGFsIiYmIW4ucXVpY2tDb21taXRTdWJtaXR0aW5nJiZObigpfSksSHUoKSxZbigpLFJwKCksc2QoKSxWZigpLGt0KCl9ZnVuY3Rpb24gQnQoZSl7dmFyIHQ9ZXx8e307bi5sYXN0UmVuZGVyZWRIYXNoPTAsbi5sYXN0UmVuZGVyZWRNc2dDb3VudD0wLG4ubGFzdFJlbmRlcmVkRW1wdHk9bnVsbCxuLnJlbmRlclBlbmRpbmc9ITEsbi5jaGF0UmVuZGVyZWRDb3VudD1uLmNoYXRQYWdlU2l6ZSxuLmFza1VzZXJTZWxlY3Rpb25zPXt9LG4uY2hhdFNjcm9sbEVsZW1lbnQmJihuLmNoYXRTY3JvbGxIYW5kbGVyJiZuLmNoYXRTY3JvbGxFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInNjcm9sbCIsbi5jaGF0U2Nyb2xsSGFuZGxlciksbi5jaGF0U2Nyb2xsV2hlZWxIYW5kbGVyJiZuLmNoYXRTY3JvbGxFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoIndoZWVsIixuLmNoYXRTY3JvbGxXaGVlbEhhbmRsZXIpLG4uY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyJiZuLmNoYXRTY3JvbGxFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNoc3RhcnQiLG4uY2hhdFNjcm9sbFRvdWNoU3RhcnRIYW5kbGVyKSxuLmNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyJiZuLmNoYXRTY3JvbGxFbGVtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsbi5jaGF0U2Nyb2xsVG91Y2hNb3ZlSGFuZGxlcikpLG4uY2hhdFNjcm9sbEVsZW1lbnQ9bnVsbCxuLmNoYXRTY3JvbGxIYW5kbGVyPW51bGwsbi5jaGF0U2Nyb2xsV2hlZWxIYW5kbGVyPW51bGwsbi5jaGF0U2Nyb2xsVG91Y2hTdGFydEhhbmRsZXI9bnVsbCxuLmNoYXRTY3JvbGxUb3VjaE1vdmVIYW5kbGVyPW51bGwsbi5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITEsdC5wcmVzZXJ2ZVN0aWNrU3RhdGV8fChuLmNoYXRTdGlja1RvQm90dG9tPSEwLG4uY2hhdFVucmVhZENvdW50PTAsbi5jaGF0VW5yZWFkU3RhcnRJbmRleD0tMSxuLmNoYXRJbml0aWFsUmVuZGVyRG9uZT0hMSl9ZnVuY3Rpb24gZXQoKXtyZXR1cm4gbi53b3JraW5nRGlyfHxubigpfXdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJvbmxpbmUiLGZ1bmN0aW9uKCl7bi5pc09ubGluZT0hMCx1aSgpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIm9mZmxpbmUiLGZ1bmN0aW9uKCl7bi5pc09ubGluZT0hMSx1aSgpfSk7ZnVuY3Rpb24gdWkoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib2ZmbGluZS1iYW5uZXIiKTtpZighbi5pc09ubGluZSYmIWUpe3ZhciB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO3QuaWQ9Im9mZmxpbmUtYmFubmVyIix0LmNsYXNzTmFtZT0ib2ZmbGluZS1iYW5uZXIiLHQudGV4dENvbnRlbnQ9IllvdSBhcmUgb2ZmbGluZSAtIHNvbWUgZmVhdHVyZXMgbWF5IGJlIGxpbWl0ZWQiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodCl9ZWxzZSBuLmlzT25saW5lJiZlJiZlLnJlbW92ZSgpfWZ1bmN0aW9uIEdkKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcCIpO2UmJihlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nIj48ZGl2IGNsYXNzPSJib290LWxvYWRpbmctY2FyZCI+PGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nLXNwaW5uZXIiPjwvZGl2PjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy10ZXh0Ij5cdTZCNjNcdTU3MjhcdThGREVcdTYzQTUgV2FuZFx1MjAyNjwvZGl2PjwvZGl2PjwvZGl2PicpfWZ1bmN0aW9uIHlyKGUsdCl7aWYobi5jb25maWcmJiFkb2N1bWVudC5oaWRkZW4pe3ZhciByPXQmJnQuaW1tZWRpYXRlPT09ITAsaT1EYXRlLm5vdygpOyFyJiZpLW4ubGFzdEZvcmVncm91bmRTeW5jQXQ8MTUwMHx8KG4ubGFzdEZvcmVncm91bmRTeW5jQXQ9aSxuLmZvcmVncm91bmRTeW5jVGltZXImJihjbGVhclRpbWVvdXQobi5mb3JlZ3JvdW5kU3luY1RpbWVyKSxuLmZvcmVncm91bmRTeW5jVGltZXI9bnVsbCksUWQoZSxyKSl9fWZ1bmN0aW9uIFFkKGUsdCl7cmV0dXJuIW4uY29uZmlnfHxkb2N1bWVudC5oaWRkZW4/UHJvbWlzZS5yZXNvbHZlKCk6KG5zKCksdD9YaSgicmVzdW1lLWZvcmNlIik6KCFuLndzfHxuLndzLnJlYWR5U3RhdGUhPT1XZWJTb2NrZXQuT1BFTiYmbi53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0LkNPTk5FQ1RJTkcpJiZacigpLG4uY2xhdWRlSGlzdG9yeUxvYWRlZCYmWnUoKSxwbih7c2tpcFNlbGVjdGVkT3V0cHV0UmVsb2FkOiEwfSkuY2F0Y2goZnVuY3Rpb24ocil7Y29uc29sZS5lcnJvcigiW3dhbmRdIGZvcmVncm91bmQgc3luYyBmYWlsZWQ6IixlLHIpfSkpfWZ1bmN0aW9uICRkKCl7d2luZG93Ll9fd2FuZEZvcmVncm91bmRTeW5jQm91bmR8fCh3aW5kb3cuX193YW5kRm9yZWdyb3VuZFN5bmNCb3VuZD0hMCxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixmdW5jdGlvbigpe2RvY3VtZW50LmhpZGRlbj8kaSgpOih5cigidmlzaWJpbGl0eSIpLGhyKCJ2aXNpYmlsaXR5IikpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixmdW5jdGlvbigpe3lyKCJmb2N1cyIpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInBhZ2VzaG93IixmdW5jdGlvbigpe3lyKCJwYWdlc2hvdyIpfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc3VtZSIsZnVuY3Rpb24oKXt5cigicmVzdW1lIil9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2FuZC1hbmRyb2lkLXJlc3VtZSIsZnVuY3Rpb24oKXt5cigiYW5kcm9pZC1yZXN1bWUiLHtpbW1lZGlhdGU6ITB9KSxocigiYW5kcm9pZC1yZXN1bWUiKX0pLHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJ3YW5kLWltZS1zdGF0ZSIsZnVuY3Rpb24oZSl7dmFyIHQ9ZSYmZS5kZXRhaWwmJmUuZGV0YWlsLnN0YXRlO2lmKHQ9PT0ic2hvd24ifHx0PT09ImhpZGRlbiIpdHJ5e2l0KCJuYXRpdmUtaW1lLSIrdCx7Zm9yY2VSZXBsYXk6ITB9KSxtdCgibmF0aXZlLWltZSIpfWNhdGNoe319KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigid2FuZC1hbmRyb2lkLW5ldHdvcmsiLGZ1bmN0aW9uKGUpe3ZhciB0PWUmJmUuZGV0YWlsJiZlLmRldGFpbC5zdGF0ZTtpZih0PT09Imxvc3QiKXtuLmlzT25saW5lPSExO3RyeXt1aSgpfWNhdGNoe31yZXR1cm59aWYodD09PSJhdmFpbGFibGUifHx0PT09ImNoYW5nZWQifHx0PT09InZhbGlkYXRlZCIpe24uaXNPbmxpbmU9ITA7dHJ5e3VpKCl9Y2F0Y2h7fVhpKCJhbmRyb2lkLW5ldHdvcmstIit0KX19KSl9ZnVuY3Rpb24gWGQoKXtmZXRjaCgiL2FwaS9zZXNzaW9uLWNoZWNrIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUub2s/ZS5qc29uKCk6e2F1dGhlZDohMX19KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiFlfHwhZS5hdXRoZWQ/KG4ubG9naW5DaGVja2VkPSEwLCR0KCksbnVsbCk6ZmV0Y2goIi9hcGkvY29uZmlnIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQub2s/dC5qc29uKCk6KG4ubG9naW5DaGVja2VkPSEwLCR0KCksbnVsbCl9KX0pLnRoZW4oZnVuY3Rpb24oZSl7ZSYmKG4uY29uZmlnPWUsbi5sb2dpbkNoZWNrZWQ9ITAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7dHJ5eyR0KHtza2lwU2hlbGxDaHJvbWU6ITB9KX1jYXRjaHt9JGQoKSxlcygpLFJ0KCksVm8oKSxsZigpLGUudXBkYXRlQXZhaWxhYmxlJiZlLmxhdGVzdFZlcnNpb24mJkFzKGUuY3VycmVudFZlcnNpb258fCItIixlLmxhdGVzdFZlcnNpb24pLFNuJiZ1bSgpLHVuJiZzbSgpLG4uY2xhdWRlSGlzdG9yeUxvYWRlZHx8c2V0VGltZW91dChmdW5jdGlvbigpe24uY2xhdWRlSGlzdG9yeUxvYWRlZHx8WHIoKX0sNjAwKX0pKX0pLmNhdGNoKGZ1bmN0aW9uKCl7aWYobi5sb2dpbkNoZWNrZWQ9ITAsIW5hdmlnYXRvci5vbkxpbmUpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhcHAiKTtlJiYoZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZyI+PGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nLWNhcmQiPjxkaXYgY2xhc3M9ImJvb3QtbG9hZGluZy10ZXh0IiBzdHlsZT0iZm9udC1zaXplOjEuM2VtO21hcmdpbi1ib3R0b206MTJweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjhweCI+JytLKCJzaWduYWwiLHtzaXplOjIwLHN0cm9rZVdpZHRoOjEuOH0pKyc8c3Bhbj5cdTY1RTBcdTZDRDVcdThGREVcdTYzQTVcdTUyMzBcdTY3MERcdTUyQTFcdTU2Njg8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iYm9vdC1sb2FkaW5nLXRleHQiIHN0eWxlPSJvcGFjaXR5OjAuNztmb250LXNpemU6MC45NWVtIj5cdThCRjdcdTY4QzBcdTY3RTVcdTdGNTFcdTdFRENcdThGREVcdTYzQTVcdTYyMTZcdTc4NkVcdThCQTQgV2FuZCBcdTY3MERcdTUyQTFcdTZCNjNcdTU3MjhcdThGRDBcdTg4NENcdTMwMDI8L2Rpdj48YnV0dG9uIG9uY2xpY2s9ImxvY2F0aW9uLnJlbG9hZCgpIiBzdHlsZT0ibWFyZ2luLXRvcDoxOHB4O3BhZGRpbmc6OHB4IDI0cHg7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE1MCwxMTgsODUsMC4zKTtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC44KTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MC45NWVtIj5cdTkxQ0RcdThCRDU8L2J1dHRvbj48L2Rpdj48L2Rpdj4nKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigib25saW5lIixmdW5jdGlvbigpe2xvY2F0aW9uLnJlbG9hZCgpfSx7b25jZTohMH0pO3JldHVybn0kdCgpfSl9ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGUpe2lmKCFOZSgpJiYhbi5zaWRlYmFyUGlubmVkJiYhbi5zaWRlYmFyQ29sbGFwc2VkJiZuLnNlc3Npb25zRHJhd2VyT3Blbil7dmFyIHQ9ZS50YXJnZXQ7IXR8fCEodCBpbnN0YW5jZW9mIEVsZW1lbnQpfHx0LmNsb3Nlc3QoIiNzZXNzaW9ucy1kcmF3ZXIiKXx8dC5jbG9zZXN0KCIjc2Vzc2lvbnMtdG9nZ2xlLWJ1dHRvbiIpfHx0LmNsb3Nlc3QoIi5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZSIpfHx0LmNsb3Nlc3QoIi5zaWRlYmFyLXRpbGUtYnViYmxlIil8fHQuY2xvc2VzdCgiLm1vZGFsLWJhY2tkcm9wLCAubW9kYWwtb3ZlcmxheSwgLm1vZGFsLWNvbnRhaW5lciwgW3JvbGU9J2RpYWxvZyddLCBbcm9sZT0nbWVudSddLCAudG9wYmFyLW1vcmUtbWVudSwgLnNpZGViYXItaGVhZGVyLW92ZXJmbG93LCAuZm9sZGVyLXBpY2tlci1kcm9wZG93biwgLnBhdGgtc3VnZ2VzdGlvbnMsIC5wZXJtaXNzaW9uLXByb21wdC1vdmVybGF5LCAucmVzdGFydC1vdmVybGF5Iil8fFB2KCl9fSwhMCksR2QoKSxYZCgpO2Z1bmN0aW9uICR0KGUpe3ZhciB0PWUmJmUuc2tpcFNoZWxsQ2hyb21lLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFwcCIpLGk9bi5jb25maWchPT1udWxsLGE9bi5tb2RhbE9wZW4sdT0haXx8ISFkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgib3V0cHV0Iik7aWYodSYmZ3IoKSxkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgibm8tdHJhbnNpdGlvbiIpLG4uc2lkZWJhclBpbm5lZCYmIW4uc2lkZWJhckNvbGxhcHNlZCYmIU5lKCkmJihuLnNlc3Npb25zRHJhd2VyT3Blbj0hMCxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCEwKSksci5pbm5lckhUTUw9aT90ZigpOmVmKCksQnQoKSxKZCgpLE1yKCksQmkoKSxYbihOdCgpKSxraSgpLHR8fExyKCksaSYmbi5maWxlUGFuZWxPcGVuJiZPdCgpLGRvY3VtZW50LmJvZHkub2Zmc2V0SGVpZ2h0LHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2RvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QucmVtb3ZlKCJuby10cmFuc2l0aW9uIil9KSxhJiZuLm1vZGFsT3Blbil7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTtpZihzKXtzLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3ZhciBvPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2QiKTtvJiYoby52YWx1ZT1uLmN3ZFZhbHVlKSxUcigpfX1pZihpJiZuLnNlbGVjdGVkSWQmJm4uZ2l0U3RhdHVzU2Vzc2lvbklkIT09bi5zZWxlY3RlZElkJiZDbihuLnNlbGVjdGVkSWQpLGkpe3ZhciBsPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihjKXtyZXR1cm4gYy5pZD09PW4uc2VsZWN0ZWRJZH0pO3J1KGwpfX1mdW5jdGlvbiBaZCgpe3ZhciBlPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihyKXtyZXR1cm4gci5pZD09PW4uc2VsZWN0ZWRJZH0pLHQ9ZSYmZS5hcHByb3ZhbFN0YXRzO3JldHVybiF0fHx0LnRvdGFsPT09MD8nPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzIGhpZGRlbiIgaWQ9ImFwcHJvdmFsLXN0YXRzIj48L3NwYW4+JzonPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzIiBpZD0iYXBwcm92YWwtc3RhdHMiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1kaXZpZGVyIj48L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLWJhZGdlIiBpZD0iYXBwcm92YWwtc3RhdHMtYmFkZ2UiIHRpdGxlPSJcdTY3MkNcdTZCMjFcdTRGMUFcdThCRERcdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTdFREZcdThCQTEiPjxzdmcgY2xhc3M9ImFwcHJvdmFsLXN0YXRzLWljb24iIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xMiAyMnM4LTQgOC0xMFY1bC04LTMtOCAzdjdjMCA2IDggMTAgOCAxMHoiLz48L3N2Zz48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtdG90YWwiPicrdC50b3RhbCsnPC9zcGFuPjwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcG9wdXAiIGlkPSJhcHByb3ZhbC1zdGF0cy1wb3B1cCI+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXBvcHVwLXRpdGxlIj5cdTgxRUFcdTUyQThcdTYyNzlcdTUxQzZcdTdFREZcdThCQTE8L3NwYW4+JysodC5jb21tYW5kPjA/JzxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ciPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctaWNvbiI+JytLKCJ0ZXJtaW5hbCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTU0N0RcdTRFRTRcdTYyNjdcdTg4NEM8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+Jyt0LmNvbW1hbmQrIjwvc3Bhbj48L3NwYW4+IjoiIikrKHQuZmlsZT4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSygiZWRpdCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTY1ODdcdTRFRjZcdTUxOTlcdTUxNjU8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+Jyt0LmZpbGUrIjwvc3Bhbj48L3NwYW4+IjoiIikrKHQudG9vbD4wPyc8c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93Ij48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWljb24iPicrSygid3JlbmNoIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctbGFiZWwiPlx1NTE3Nlx1NEVENlx1NURFNVx1NTE3Nzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWNvdW50Ij4nK3QudG9vbCsiPC9zcGFuPjwvc3Bhbj4iOiIiKSsnPHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdyBhcHByb3ZhbC1zdGF0cy1yb3ctdG90YWwiPjxzcGFuIGNsYXNzPSJhcHByb3ZhbC1zdGF0cy1yb3ctaWNvbiI+JytLKCJzaWdtYSIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS44fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iYXBwcm92YWwtc3RhdHMtcm93LWxhYmVsIj5cdTU0MDhcdThCQTE8L3NwYW4+PHNwYW4gY2xhc3M9ImFwcHJvdmFsLXN0YXRzLXJvdy1jb3VudCI+Jyt0LnRvdGFsKyI8L3NwYW4+PC9zcGFuPjwvc3Bhbj48L3NwYW4+In1mdW5jdGlvbiBlZigpe3JldHVybiBuLmxvZ2luQ2hlY2tlZD8nPGRpdiBjbGFzcz0ibG9naW4tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJsb2dpbi1jYXJkIj48ZGl2IGNsYXNzPSJsb2dpbi1oZWFkZXIiPjxkaXYgY2xhc3M9ImxvZ2luLWxvZ28iPjxkaXYgY2xhc3M9ImxvZ2luLWxvZ28taWNvbiI+VzwvZGl2PjxzcGFuIGNsYXNzPSJsb2dpbi1sb2dvLXRleHQiPldhbmQ8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ibG9naW4tc3VidGl0bGUiPlx1NTcyOFx1NkQ0Rlx1ODlDOFx1NTY2OFx1NEUyRFx1OEZEMFx1ODg0Q1x1NjcyQ1x1NjczQVx1N0VDOFx1N0FFRjwvZGl2PjwvZGl2Pjxmb3JtIGlkPSJsb2dpbi1mb3JtIiBjbGFzcz0ibG9naW4tYm9keSIgYXV0b2NvbXBsZXRlPSJvbiI+PGlucHV0IHR5cGU9InRleHQiIG5hbWU9InVzZXJuYW1lIiBhdXRvY29tcGxldGU9InVzZXJuYW1lIiB2YWx1ZT0id2FuZCIgdGFiaW5kZXg9Ii0xIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9InBvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTk5OTlweDt3aWR0aDoxcHg7aGVpZ2h0OjFweDtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZSIgcmVhZG9ubHkgLz48cCBjbGFzcz0ibG9naW4taGludCI+XHU4RjkzXHU1MTY1IFdhbmQgXHU4QkJGXHU5NUVFXHU1QkM2XHU3ODAxXHU0RUU1XHU4RkRCXHU1MTY1XHU2M0E3XHU1MjM2XHU1M0YwXHUzMDAyPC9wPjxkaXYgY2xhc3M9ImZpZWxkIj48bGFiZWwgY2xhc3M9ImZpZWxkLWxhYmVsIiBmb3I9InBhc3N3b3JkIj5cdTVCQzZcdTc4MDE8L2xhYmVsPjxkaXYgY2xhc3M9InBhc3N3b3JkLWZpZWxkIj48aW5wdXQgaWQ9InBhc3N3b3JkIiB0eXBlPSJwYXNzd29yZCIgY2xhc3M9ImZpZWxkLWlucHV0IHBhc3N3b3JkLWlucHV0IiBwbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU4QkJGXHU5NUVFXHU1QkM2XHU3ODAxIiBhdXRvY29tcGxldGU9ImN1cnJlbnQtcGFzc3dvcmQiIGRhdGEtZXJyb3I9ImZhbHNlIiBhcmlhLWRlc2NyaWJlZGJ5PSJwYXNzd29yZC1oaW50IGxvZ2luLWVycm9yIiBhcmlhLWludmFsaWQ9ImZhbHNlIiAvPjxidXR0b24gaWQ9InRvZ2dsZS1wYXNzd29yZC1idXR0b24iIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InBhc3N3b3JkLXRvZ2dsZSIgYXJpYS1sYWJlbD0iXHU2NjNFXHU3OTNBXHU1QkM2XHU3ODAxIiBhcmlhLXByZXNzZWQ9ImZhbHNlIj5cdTY2M0VcdTc5M0E8L2J1dHRvbj48L2Rpdj48cCBpZD0icGFzc3dvcmQtaGludCIgY2xhc3M9ImhpbnQiPlx1NEY3Rlx1NzUyOFx1NEY2MFx1NTcyOCBXYW5kIFx1NEUyRFx1OEJCRVx1N0Y2RVx1NzY4NFx1OEJCRlx1OTVFRVx1NUJDNlx1NzgwMVx1MzAwMjwvcD48cCBpZD0ibG9naW4tZXJyb3IiIGNsYXNzPSJlcnJvci1tZXNzYWdlIGhpZGRlbiIgcm9sZT0iYWxlcnQiPjwvcD48L2Rpdj48YnV0dG9uIGlkPSJsb2dpbi1idXR0b24iIHR5cGU9InN1Ym1pdCIgY2xhc3M9ImJ0biBidG4tcHJpbWFyeSBidG4tYmxvY2siPlx1OEZEQlx1NTE2NVx1NjNBN1x1NTIzNlx1NTNGMDwvYnV0dG9uPicrKHphKCk/JzxidXR0b24gaWQ9ImxvZ2luLXN3aXRjaC1zZXJ2ZXItYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tYmxvY2sgbG9naW4tc3dpdGNoLXNlcnZlciIgdHlwZT0iYnV0dG9uIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxyZWN0IHg9IjIiIHk9IjMiIHdpZHRoPSIyMCIgaGVpZ2h0PSI4IiByeD0iMiIvPjxyZWN0IHg9IjIiIHk9IjEzIiB3aWR0aD0iMjAiIGhlaWdodD0iOCIgcng9IjIiLz48bGluZSB4MT0iNiIgeTE9IjciIHgyPSI2LjAxIiB5Mj0iNyIvPjxsaW5lIHgxPSI2IiB5MT0iMTciIHgyPSI2LjAxIiB5Mj0iMTciLz48L3N2Zz48c3Bhbj5cdTUyMDdcdTYzNjJcdTY3MERcdTUyQTFcdTU2Njg8L3NwYW4+PC9idXR0b24+JzoiIikrIjwvZm9ybT48L2Rpdj48L2Rpdj4iOic8ZGl2IGNsYXNzPSJsb2dpbi1jb250YWluZXIiPjxkaXYgY2xhc3M9ImxvZ2luLWNhcmQgbG9naW4tY2FyZC1sb2FkaW5nIj48ZGl2IGNsYXNzPSJsb2dpbi1oZWFkZXIiPjxkaXYgY2xhc3M9ImxvZ2luLWxvZ28iPjxkaXYgY2xhc3M9ImxvZ2luLWxvZ28taWNvbiI+VzwvZGl2PjxzcGFuIGNsYXNzPSJsb2dpbi1sb2dvLXRleHQiPldhbmQ8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0ibG9naW4tc3VidGl0bGUiPlx1NkI2M1x1NTcyOFx1NjA2Mlx1NTkwRFx1NzY3Qlx1NUY1NVx1NzJCNlx1NjAwMTwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImxvZ2luLWJvZHkiPjxkaXYgY2xhc3M9ImxvZ2luLXN0YXR1cyI+PHNwYW4gY2xhc3M9ImxvZ2luLXNwaW5uZXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L3NwYW4+PGRpdj48cCBjbGFzcz0ibG9naW4taGludCI+XHU2QjYzXHU1NzI4XHU2OEMwXHU2N0U1XHU2NzJDXHU1NzMwXHU3NjdCXHU1RjU1XHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3QTBEXHU1MDE5XHUzMDAyPC9wPjxwIGNsYXNzPSJsb2dpbi1tdXRlZCI+XHU1OTgyXHU2NzlDXHU0RjYwXHU1MjFBXHU1MjM3XHU2NUIwXHU5ODc1XHU5NzYyXHVGRjBDXHU4RkQ5XHU2NjJGXHU2QjYzXHU1RTM4XHU3M0IwXHU4QzYxXHUzMDAyPC9wPjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2PjwvZGl2Pid9ZnVuY3Rpb24gdGYoKXt2YXIgZT0iPFwvc2NyaXB0PiIsdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaCl7cmV0dXJuIGguaWQ9PT1uLnNlbGVjdGVkSWR9KSxyPXQ/SXIodC5jb21tYW5kKToiXHU2NzJBXHU5MDA5XHU2MkU5XHU0RjFBXHU4QkREIixpPXQ/dC5tb2RlKyIgfCAiK3Quc3RhdHVzOiJcdTcwQjlcdTUxRkJcdTRFMEFcdTY1QjlcdTMwMENcdTY1QjBcdTVCRjlcdThCRERcdTMwMERcdTVGMDBcdTU5Q0IiLGE9bi5zZWxlY3RlZElkJiZuLmRyYWZ0c1tuLnNlbGVjdGVkSWRdfHwiIix1PW4uc2Vzc2lvbnNEcmF3ZXJPcGVuPyIgb3BlbiI6IiIscz1odSgpPyIgb3BlbiI6IiIsbz1FdigpLGw9V3QobyxuLmNoYXRNb2RlKSxjPU5lKCksZj0hIW4uc2lkZWJhclBpbm5lZCYmISFuLnNpZGViYXJDb2xsYXBzZWQsZD1mfHwhYyYmKCEhbi5zaWRlYmFyUGlubmVkfHwhIW4uc2Vzc2lvbnNEcmF3ZXJPcGVuKSx2PWY/IiBzaWRlYmFyLWNvbGxhcHNlZCI6IiIsZz1mPyIgY29sbGFwc2VkIjoiIjtyZXR1cm4nPGRpdiBjbGFzcz0iYXBwLWNvbnRhaW5lciI+PGRpdiBpZD0ic2Vzc2lvbnMtZHJhd2VyLWJhY2tkcm9wIiBjbGFzcz0iZHJhd2VyLWJhY2tkcm9wJytzKyciPjwvZGl2PjxkaXYgY2xhc3M9Im1haW4tbGF5b3V0Jysobi5zZXNzaW9uc0RyYXdlck9wZW4/IiBzaWRlYmFyLW9wZW4iOiIiKSsoZD8iIHNpZGViYXItcGlubmVkIjoiIikrdisnIj48YXNpZGUgaWQ9InNlc3Npb25zLWRyYXdlciIgY2xhc3M9InNpZGViYXInK3UrKGQ/IiBwaW5uZWQiOiIiKStnKyciPjxkaXYgY2xhc3M9InNpZGViYXItaGVhZGVyIj48ZGl2IGNsYXNzPSJzaWRlYmFyLWhlYWRlci1tYWluIj48ZGl2IGNsYXNzPSJ0b3BiYXItbG9nby1pY29uIj5XPC9kaXY+PHNwYW4gY2xhc3M9InNpZGViYXItdGl0bGUiPlx1NEYxQVx1OEJERDwvc3Bhbj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1jb3VudCIgaWQ9InNlc3Npb24tY291bnQiPicrU3RyaW5nKG4uc2Vzc2lvbnMubGVuZ3RoKSsnPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InNpZGViYXItaGVhZGVyLWFjdGlvbnMiPjxkaXYgY2xhc3M9InNpZGViYXItaGVhZGVyLW1vcmUiPjxidXR0b24gaWQ9InNpZGViYXItbW9yZS1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU2NkY0XHU1OTFBXHU2NENEXHU0RjVDIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxjaXJjbGUgY3g9IjEyIiBjeT0iNSIgcj0iMS41Ii8+PGNpcmNsZSBjeD0iMTIiIGN5PSIxMiIgcj0iMS41Ii8+PGNpcmNsZSBjeD0iMTIiIGN5PSIxOSIgcj0iMS41Ii8+PC9zdmc+PC9idXR0b24+PGRpdiBjbGFzcz0ic2lkZWJhci1oZWFkZXItb3ZlcmZsb3ciIGlkPSJzaWRlYmFyLW92ZXJmbG93LW1lbnUiPjxidXR0b24gY2xhc3M9Im92ZXJmbG93LWl0ZW0iIGlkPSJzaWRlYmFyLWhvbWUtYnRuIiB0eXBlPSJidXR0b24iPjxzdmcgd2lkdGg9IjE1IiBoZWlnaHQ9IjE1IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTMgOWw5LTcgOSA3djExYTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yeiIvPjxwb2x5bGluZSBwb2ludHM9IjkgMjIgOSAxMiAxNSAxMiAxNSAyMiIvPjwvc3ZnPjxzcGFuPlx1NTZERVx1NTIzMFx1OTk5Nlx1OTg3NTwvc3Bhbj48L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJvdmVyZmxvdy1pdGVtIiBpZD0ic2lkZWJhci1yZWZyZXNoLWJ0biIgdHlwZT0iYnV0dG9uIj48c3ZnIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwb2x5bGluZSBwb2ludHM9IjIzIDQgMjMgMTAgMTcgMTAiLz48cGF0aCBkPSJNMjAuNDkgMTVhOSA5IDAgMSAxLTIuMTItOS4zNkwyMyAxMCIvPjwvc3ZnPjxzcGFuPlx1NTIzN1x1NjVCMFx1OTg3NVx1OTc2Mjwvc3Bhbj48L2J1dHRvbj48L2Rpdj48L2Rpdj48YnV0dG9uIGlkPSJzaWRlYmFyLXBpbi1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBzaWRlYmFyLXBpbi10b2dnbGUnKyhuLnNpZGViYXJQaW5uZWQ/IiBwaW5uZWQiOiIiKSsnIiB0eXBlPSJidXR0b24iIHRpdGxlPSInKyhuLnNpZGViYXJQaW5uZWQ/Ilx1NURGMlx1NTZGQVx1NUI5QVx1NUUzOFx1OUE3Qlx1RkYwOFx1NzBCOVx1NTFGQlx1ODlFM1x1OTY2NFx1OTUwMVx1NUI5QVx1RkYwOSI6Ilx1NTZGQVx1NUI5QVx1NEZBN1x1NjgwRlx1NUUzOFx1OUE3QiIpKyciIGFyaWEtbGFiZWw9IicrKG4uc2lkZWJhclBpbm5lZD8iXHU4OUUzXHU5NjY0XHU1NkZBXHU1QjlBXHU1RTM4XHU5QTdCIjoiXHU1NkZBXHU1QjlBXHU0RkE3XHU2ODBGXHU1RTM4XHU5QTdCIikrJyIgYXJpYS1wcmVzc2VkPSInKyhuLnNpZGViYXJQaW5uZWQ/InRydWUiOiJmYWxzZSIpKyciPjxzdmcgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSIxMiIgeTE9IjE3IiB4Mj0iMTIiIHkyPSIyMiIvPjxwYXRoIGQ9Ik01IDE3aDE0di0xLjc2YTIgMiAwIDAgMC0xLjExLTEuNzlsLTEuNzgtLjlBMiAyIDAgMCAxIDE1IDEwLjc2VjZoMWEyIDIgMCAwIDAgMC00SDhhMiAyIDAgMCAwIDAgNGgxdjQuNzZhMiAyIDAgMCAxLTEuMTEgMS43OWwtMS43OC45QTIgMiAwIDAgMCA1IDE1LjI0eiIvPjwvc3ZnPjwvYnV0dG9uPjxidXR0b24gaWQ9InNpZGViYXItY29sbGFwc2UtYnRuIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gc2lkZWJhci1jb2xsYXBzZS10b2dnbGUnKyhmPyIgY29sbGFwc2VkIjoiIikrJyIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iJysoZj8iXHU1QzU1XHU1RjAwXHU0RTNBXHU1MTY4XHU1QzNBXHU1QkY4IjoiXHU2NTM2XHU4RDc3XHU0RTNBXHU3QTg0XHU2NzYxIikrJyIgYXJpYS1sYWJlbD0iJysoZj8iXHU1QzU1XHU1RjAwXHU0RTNBXHU1MTY4XHU1QzNBXHU1QkY4IjoiXHU2NTM2XHU4RDc3XHU0RTNBXHU3QTg0XHU2NzYxIikrJyI+JysoZj8nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cG9seWxpbmUgcG9pbnRzPSIxMCA2IDE2IDEyIDEwIDE4Ii8+PGxpbmUgeDE9IjIwIiB5MT0iNSIgeDI9IjIwIiB5Mj0iMTkiLz48L3N2Zz4nOic8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwb2x5bGluZSBwb2ludHM9IjE0IDYgOCAxMiAxNCAxOCIvPjxsaW5lIHgxPSI0IiB5MT0iNSIgeDI9IjQiIHkyPSIxOSIvPjwvc3ZnPicpKyc8L2J1dHRvbj48YnV0dG9uIGlkPSJjbG9zZS1kcmF3ZXItYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4taWNvbiBzaWRlYmFyLWNsb3NlIGRyYXdlci1jbG9zZS1idG4iIHR5cGU9ImJ1dHRvbiIgYXJpYS1sYWJlbD0iXHU1MTczXHU5NUVEXHU4M0RDXHU1MzU1Ij48c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxsaW5lIHgxPSI2IiB5MT0iNiIgeDI9IjE4IiB5Mj0iMTgiLz48bGluZSB4MT0iMTgiIHkxPSI2IiB4Mj0iNiIgeTI9IjE4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2lkZWJhci1ib2R5Ij48ZGl2IGlkPSJzZXNzaW9ucy1wYW5lbCI+PGRpdiBjbGFzcz0ic2Vzc2lvbnMtbGlzdCIgaWQ9InNlc3Npb25zLWxpc3QiPicrR2koKSsnPC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2lkZWJhci1mb290ZXIiPjxidXR0b24gaWQ9ImRyYXdlci1uZXctc2Vzc2lvbi1idXR0b24iIGNsYXNzPSJidG4gYnRuLXByaW1hcnkgYnRuLWJsb2NrIj48c3Bhbj4rPC9zcGFuPiBcdTY1QjBcdTRGMUFcdThCREQ8L2J1dHRvbj48ZGl2IGNsYXNzPSJzaWRlYmFyLWZvb3Rlci1hY3Rpb25zIj48YnV0dG9uIGlkPSJmaWxlLXBhbmVsLXRvZ2dsZS1idG4iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbScrKG4uZmlsZVBhbmVsT3Blbj8iIGFjdGl2ZSI6IiIpKyciIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjdFNVx1NzcwQlx1NjU4N1x1NEVGNiI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMjIgMTlhMiAyIDAgMCAxLTIgMkg0YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDVsMiAzaDlhMiAyIDAgMCAxIDIgMnoiLz48L3N2Zz48c3Bhbj5cdTY1ODdcdTRFRjY8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBpZD0ic2V0dGluZ3MtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1OEJCRVx1N0Y2RSI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIzIi8+PHBhdGggZD0iTTE5LjQgMTVhMS42NSAxLjY1IDAgMCAwIC4zMyAxLjgybC4wNi4wNmEyIDIgMCAwIDEtMi44MyAyLjgzbC0uMDYtLjA2YTEuNjUgMS42NSAwIDAgMC0xLjgyLS4zMyAxLjY1IDEuNjUgMCAwIDAtMSAxLjUxVjIxYTIgMiAwIDAgMS00IDB2LS4wOUExLjY1IDEuNjUgMCAwIDAgOSAxOS40YTEuNjUgMS42NSAwIDAgMC0xLjgyLjMzbC0uMDYuMDZhMiAyIDAgMCAxLTIuODMtMi44M2wuMDYtLjA2QTEuNjUgMS42NSAwIDAgMCA0LjY4IDE1YTEuNjUgMS42NSAwIDAgMC0xLjUxLTFIM2EyIDIgMCAwIDEgMC00aC4wOUExLjY1IDEuNjUgMCAwIDAgNC42IDlhMS42NSAxLjY1IDAgMCAwLS4zMy0xLjgybC0uMDYtLjA2YTIgMiAwIDAgMSAyLjgzLTIuODNsLjA2LjA2QTEuNjUgMS42NSAwIDAgMCA5IDQuNjhhMS42NSAxLjY1IDAgMCAwIDEtMS41MVYzYTIgMiAwIDAgMSA0IDB2LjA5YTEuNjUgMS42NSAwIDAgMCAxIDEuNTEgMS42NSAxLjY1IDAgMCAwIDEuODItLjMzbC4wNi0uMDZhMiAyIDAgMCAxIDIuODMgMi44M2wtLjA2LjA2QTEuNjUgMS42NSAwIDAgMCAxOS40IDlhMS42NSAxLjY1IDAgMCAwIDEuNTEgMUgyMWEyIDIgMCAwIDEgMCA0aC0uMDlhMS42NSAxLjY1IDAgMCAwLTEuNTEgMXoiLz48L3N2Zz48c3Bhbj5cdThCQkVcdTdGNkU8L3NwYW4+PC9idXR0b24+JysoaHYoKT8nPGJ1dHRvbiBpZD0iYmFjay10by1uYXRpdmUtYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1naG9zdCBidG4tc20gc2lkZWJhci1iYWNrLXRvLW5hdGl2ZSIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU4RkQ0XHU1NkRFIEFwcCBcdTUzOUZcdTc1MUZcdTc1NENcdTk3NjIiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHJlY3QgeD0iMTAiIHk9IjMiIHdpZHRoPSIxMSIgaGVpZ2h0PSIxOCIgcng9IjIiLz48bGluZSB4MT0iMTQiIHkxPSIxNyIgeDI9IjE3IiB5Mj0iMTciLz48cG9seWxpbmUgcG9pbnRzPSI3IDggMyAxMiA3IDE2Ii8+PC9zdmc+PHNwYW4+XHU4RkQ0XHU1NkRFQXBwPC9zcGFuPjwvYnV0dG9uPic6IiIpKyh6YSgpPyc8YnV0dG9uIGlkPSJzd2l0Y2gtc2VydmVyLWJ1dHRvbiIgY2xhc3M9ImJ0biBidG4tZ2hvc3QgYnRuLXNtIHNpZGViYXItc3dpdGNoLXNlcnZlciIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU1MjA3XHU2MzYyXHU2NzBEXHU1MkExXHU1NjY4Ij48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxyZWN0IHg9IjIiIHk9IjMiIHdpZHRoPSIyMCIgaGVpZ2h0PSI4IiByeD0iMiIvPjxyZWN0IHg9IjIiIHk9IjEzIiB3aWR0aD0iMjAiIGhlaWdodD0iOCIgcng9IjIiLz48bGluZSB4MT0iNiIgeTE9IjciIHgyPSI2LjAxIiB5Mj0iNyIvPjxsaW5lIHgxPSI2IiB5MT0iMTciIHgyPSI2LjAxIiB5Mj0iMTciLz48L3N2Zz48c3Bhbj5cdTUyMDdcdTYzNjI8L3NwYW4+PC9idXR0b24+JzoiIikrJzxidXR0b24gaWQ9ImxvZ291dC1idXR0b24iIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1zbSBzaWRlYmFyLWxvZ291dCIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU5MDAwXHU1MUZBXHU3NjdCXHU1RjU1Ij48c3ZnIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik05IDIxSDVhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNCIvPjxwb2x5bGluZSBwb2ludHM9IjE2IDE3IDIxIDEyIDE2IDciLz48bGluZSB4MT0iMjEiIHkxPSIxMiIgeDI9IjkiIHkyPSIxMiIvPjwvc3ZnPjxzcGFuPlx1OTAwMFx1NTFGQTwvc3Bhbj48L2J1dHRvbj48L2Rpdj48L2Rpdj48L2FzaWRlPjxtYWluIGNsYXNzPSJtYWluLWNvbnRlbnQiPjxkaXYgY2xhc3M9Im1haW4taGVhZGVyLXJvdyI+PGRpdiBjbGFzcz0idG9wYmFyLWxlZnQiPjxidXR0b24gaWQ9InNlc3Npb25zLXRvZ2dsZS1idXR0b24iIGNsYXNzPSJmbG9hdGluZy1zaWRlYmFyLXRvZ2dsZScrKG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPyIgYWN0aXZlIjoiIikrJyIgYXJpYS1sYWJlbD0iXHU1MjA3XHU2MzYyXHU0RjFBXHU4QkREXHU0RkE3XHU2ODBGIiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJoYW1idXJnZXItaWNvbiI+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PC9zcGFuPjwvYnV0dG9uPjxzcGFuIGNsYXNzPSJ0b3BiYXItYnJhbmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj5XPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9InRvcGJhci1jZW50ZXIiPicrKHQ/JzxzcGFuIGNsYXNzPSJ0b3BiYXItc2Vzc2lvbi10aXRsZSIgdGl0bGU9IicrcCh0LmRlc2NyaXB0aW9ufHx0LmNvbW1hbmR8fCIiKSsnIj4nK3AodC50aXRsZXx8SXIodC5jb21tYW5kKSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1zdGF0dXMtcGlsbCAnK1d1KHQpKyciIHRpdGxlPSInK3AoY3IodCkpKyciPjxzcGFuIGNsYXNzPSJzZXNzaW9uLXN0YXR1cy1kb3QiPjwvc3Bhbj48c3BhbiBjbGFzcz0ic2Vzc2lvbi1zdGF0dXMtdGV4dCI+JytwKGNyKHQpKSsnPC9zcGFuPjwvc3Bhbj48c3BhbiBjbGFzcz0iY3VycmVudC10YXNrIGhpZGRlbiIgaWQ9ImN1cnJlbnQtdGFzayI+PC9zcGFuPicrKHQuY3dkPyc8c3BhbiBjbGFzcz0idG9wYmFyLWN3ZCIgaWQ9InRvcGJhci1jd2QiIHRpdGxlPSInK3AodC5jd2QpKyciIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiPicrcCh0LmN3ZCkrIjwvc3Bhbj4iOiIiKTonPHNwYW4gY2xhc3M9InRvcGJhci10YWdsaW5lIj5XYW5kIFx1NjNBN1x1NTIzNlx1NTNGMDwvc3Bhbj48c3BhbiBjbGFzcz0iY3VycmVudC10YXNrIGhpZGRlbiIgaWQ9ImN1cnJlbnQtdGFzayI+PC9zcGFuPicpKyc8L2Rpdj48ZGl2IGNsYXNzPSJ0b3BiYXItcmlnaHQiPjxidXR0b24gaWQ9InRvcGJhci1maWxlLWJ1dHRvbiIgY2xhc3M9InRvcGJhci1idG4gc3F1YXJlJysobi5maWxlUGFuZWxPcGVuPyIgYWN0aXZlIjoiIikrJyIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTY1ODdcdTRFRjYiIHRpdGxlPSJcdTY3RTVcdTc3MEJcdTY1ODdcdTRFRjZcdUZGMDhcdTUzRUZcdTRGRUVcdTY1MzlcdThERUZcdTVGODRcdUZGMDkiPjxzdmcgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTIyIDE5YTIgMiAwIDAgMS0yIDJINGEyIDIgMCAwIDEtMi0yVjVhMiAyIDAgMCAxIDItMmg1bDIgM2g5YTIgMiAwIDAgMSAyIDJ6Ii8+PC9zdmc+PC9idXR0b24+PHNwYW4gaWQ9InRvcGJhci1naXQtc2xvdCIgY2xhc3M9InRvcGJhci1naXQtc2xvdCI+JytQdSgpKyI8L3NwYW4+IisodD9vYyh0KToiIikrJzwvZGl2PjwvZGl2PjxkaXYgaWQ9ImZpbGUtcGFuZWwtYmFja2Ryb3AiIGNsYXNzPSJmaWxlLXBhbmVsLWJhY2tkcm9wJysobi5maWxlUGFuZWxPcGVuPyIgb3BlbiI6IiIpKyciPjwvZGl2PjxkaXYgaWQ9ImZpbGUtc2lkZS1wYW5lbCIgY2xhc3M9ImZpbGUtc2lkZS1wYW5lbCcrKG4uZmlsZVBhbmVsT3Blbj8iIG9wZW4iOiIiKSsnIj48ZGl2IGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtaGVhZGVyIj48ZGl2IGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtdGl0bGUtZ3JvdXAiPjxzcGFuIGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtaWNvbiI+JytPZSgiZm9sZGVyLW9wZW4iLHtzaXplOjE2fSkrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLXRpdGxlIj5cdTY1ODdcdTRFRjY8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWhlYWRlci1hY3Rpb25zIj48YnV0dG9uIGNsYXNzPSJmaWxlLXNpZGUtcGFuZWwtaWNvbmJ0biIgaWQ9ImZpbGUtZXhwbG9yZXItcmVmcmVzaCIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU1MjM3XHU2NUIwIiBhcmlhLWxhYmVsPSJcdTUyMzdcdTY1QjBcdTY1ODdcdTRFRjZcdTUyMTdcdTg4NjgiPicrT2UoInJlZnJlc2giLHtzaXplOjE1fSkrJzwvYnV0dG9uPjxidXR0b24gaWQ9ImZpbGUtc2lkZS1wYW5lbC1jbG9zZSIgY2xhc3M9ImZpbGUtc2lkZS1wYW5lbC1pY29uYnRuIGNsb3NlIiB0eXBlPSJidXR0b24iIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRFx1NjU4N1x1NEVGNlx1OTc2Mlx1Njc3RiIgdGl0bGU9Ilx1NTE3M1x1OTVFRCI+JytPZSgieCIse3NpemU6MTZ9KSsnPC9idXR0b24+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iZmlsZS1zaWRlLXBhbmVsLWJvZHkiPjxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXItaGVhZGVyIj48YnV0dG9uIGNsYXNzPSJmaWxlLWV4cGxvcmVyLXVwIiBpZD0iZmlsZS1leHBsb3Jlci11cCIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU4RkQ0XHU1NkRFXHU0RTBBXHU3RUE3XHU3NkVFXHU1RjU1IiBhcmlhLWxhYmVsPSJcdThGRDRcdTU2REVcdTRFMEFcdTdFQTdcdTc2RUVcdTVGNTUiPicrT2UoImFycm93LXVwIix7c2l6ZToxNX0pKyc8L2J1dHRvbj48aW5wdXQgdHlwZT0idGV4dCIgY2xhc3M9ImZpbGUtZXhwbG9yZXItcGF0aCIgaWQ9ImZpbGUtZXhwbG9yZXItY3dkIiB2YWx1ZT0iJytwKHQmJnQuY3dkP3QuY3dkOm5uKCkpKyciIHRpdGxlPSInK3AodCYmdC5jd2Q/dC5jd2Q6bm4oKSkrJyIgcGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1OERFRlx1NUY4NFx1NUU3Nlx1NTZERVx1OEY2Ni4uLiIgc3BlbGxjaGVjaz0iZmFsc2UiIGF1dG9jb21wbGV0ZT0ib2ZmIiBhdXRvY2FwaXRhbGl6ZT0ib2ZmIiBhdXRvY29ycmVjdD0ib2ZmIiBhcmlhLWxhYmVsPSJcdTVGNTNcdTUyNERcdThERUZcdTVGODRcdUZGMENcdTUzRUZcdTc2RjRcdTYzQTVcdTRGRUVcdTY1MzlcdTU0MEVcdTU2REVcdThGNjYiIC8+PC9kaXY+PGRpdiBjbGFzcz0iZmlsZS1zZWFyY2gtYm94Ij48c3BhbiBjbGFzcz0iZmlsZS1zZWFyY2gtaWNvbiI+JytPZSgic2VhcmNoIix7c2l6ZToxNH0pKyc8L3NwYW4+PGlucHV0IHR5cGU9InRleHQiIGlkPSJmaWxlLXNlYXJjaC1pbnB1dCIgY2xhc3M9ImZpbGUtc2VhcmNoLWlucHV0IiBwbGFjZWhvbGRlcj0iXHU2NDFDXHU3RDIyXHU1RjUzXHU1MjREXHU3NkVFXHU1RjU1XHUyMDI2IiBhdXRvY29tcGxldGU9Im9mZiIgYXV0b2NvcnJlY3Q9Im9mZiIgYXV0b2NhcGl0YWxpemU9Im9mZiIgc3BlbGxjaGVjaz0iZmFsc2UiIC8+PGJ1dHRvbiBjbGFzcz0iZmlsZS1zZWFyY2gtY2xlYXIiIGlkPSJmaWxlLXNlYXJjaC1jbGVhciIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTZFMDVcdTk2NjRcdTY0MUNcdTdEMjIiIHRpdGxlPSJcdTZFMDVcdTk2NjQiPicrT2UoIngiLHtzaXplOjEzfSkrJzwvYnV0dG9uPjwvZGl2PjxkaXYgY2xhc3M9ImZpbGUtZXhwbG9yZXIiIGlkPSJmaWxlLWV4cGxvcmVyIj4nK0tsKHQmJnQuY3dkP3QuY3dkOm5uKCkpKyc8L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJvdXRwdXQiIGNsYXNzPSJ0ZXJtaW5hbC1jb250YWluZXInKyhuLnNlbGVjdGVkSWQ/IiI6IiBoaWRkZW4iKSsnIGFjdGl2ZSI+PGRpdiBjbGFzcz0idGVybWluYWwtc2NhbGUtb3ZlcmxheSIgYXJpYS1sYWJlbD0iXHU3RUM4XHU3QUVGXHU3RjI5XHU2NTNFXHU2M0E3XHU0RUY2Ij48YnV0dG9uIGlkPSJ0ZXJtaW5hbC1zY2FsZS1kb3duLXRvcCIgY2xhc3M9InRlcm1pbmFsLXNjYWxlLW92ZXJsYXktYnRuIHRlcm1pbmFsLXNjYWxlLWJ0biIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU3RjI5XHU1QzBGIj5cdTIyMTI8L2J1dHRvbj48c3BhbiBjbGFzcz0idGVybWluYWwtc2NhbGUtb3ZlcmxheS1sYWJlbCB0ZXJtaW5hbC1zY2FsZS1sYWJlbCIgaWQ9InRlcm1pbmFsLXNjYWxlLWxhYmVsLXRvcCI+JytNYXRoLnJvdW5kKG4udGVybWluYWxTY2FsZSoxMDApKyclPC9zcGFuPjxidXR0b24gaWQ9InRlcm1pbmFsLXNjYWxlLXVwLXRvcCIgY2xhc3M9InRlcm1pbmFsLXNjYWxlLW92ZXJsYXktYnRuIHRlcm1pbmFsLXNjYWxlLWJ0biIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU2NTNFXHU1OTI3Ij4rPC9idXR0b24+PHNwYW4gY2xhc3M9InRlcm1pbmFsLXNjYWxlLW92ZXJsYXktZGl2aWRlciI+PC9zcGFuPjxidXR0b24gaWQ9InBhZ2UtcmVmcmVzaC1idG4iIGNsYXNzPSJ0ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0biIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU1MjM3XHU2NUIwXHU5ODc1XHU5NzYyIj5cdTIxQkI8L2J1dHRvbj48L2Rpdj48YnV0dG9uIGlkPSJ0ZXJtaW5hbC1qdW1wLWJvdHRvbSIgY2xhc3M9InRlcm1pbmFsLWp1bXAtYm90dG9tJysobi5zaG93VGVybWluYWxKdW1wVG9Cb3R0b20/IiB2aXNpYmxlIjoiIikrJyIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU1NkRFXHU1MjMwXHU1RTk1XHU5MEU4IiBhcmlhLWxhYmVsPSJcdTU2REVcdTUyMzBcdTVFOTVcdTkwRTgiPjxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik04IDMuNXY5TTMuNSA4bDQuNSA0LjVMMTIuNSA4Ii8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBpZD0iY2hhdC1vdXRwdXQiIGNsYXNzPSJjaGF0LWNvbnRhaW5lciBoaWRkZW4iPjxidXR0b24gaWQ9ImNoYXQtdW5yZWFkLWJ1YmJsZSIgY2xhc3M9ImNoYXQtdW5yZWFkLWJ1YmJsZSIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU1NkRFXHU1MjMwXHU2NzAwXHU2NUIwXHU2RDg4XHU2MDZGIiBhcmlhLWxhYmVsPSJcdTU2REVcdTUyMzBcdTY3MDBcdTY1QjBcdTZEODhcdTYwNkYiPjxzcGFuIGNsYXNzPSJjaGF0LXVucmVhZC1idWJibGUtaWNvbiI+PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTggMy41djlNMy41IDhsNC41IDQuNUwxMi41IDgiLz48L3N2Zz48L3NwYW4+PHNwYW4gY2xhc3M9ImNoYXQtdW5yZWFkLWJ1YmJsZS1jb3VudCIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2J1dHRvbj48L2Rpdj48ZGl2IGlkPSJibGFuay1jaGF0IiBjbGFzcz0iYmxhbmstY2hhdCcrKG4uc2VsZWN0ZWRJZD8iIGhpZGRlbiI6IiIpKyciPjxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtaW5uZXIiPjxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtbG9nbyI+VzwvZGl2PjxoMiBjbGFzcz0iYmxhbmstY2hhdC10aXRsZSI+V2FuZDwvaDI+PHAgY2xhc3M9ImJsYW5rLWNoYXQtc3VidGl0bGUiPlx1NjUyRlx1NjMwMVx1N0VDOFx1N0FFRiBQVFkgXHU0RjFBXHU4QkREXHU0RTBFXHU3RUQzXHU2Nzg0XHU1MzE2IGNoYXQgXHU0RjFBXHU4QkREXHVGRjBDXHU0RTI0XHU3OUNEXHU2QTIxXHU1RjBGXHU1M0VGXHU1RTc2XHU1QjU4XHUzMDAyPC9wPjxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtdG9vbHMiPjxidXR0b24gY2xhc3M9ImJsYW5rLWNoYXQtdG9vbC1idG4iIGlkPSJ3ZWxjb21lLXRvb2wtY2xhdWRlIiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ0b29sLWljb24iPicrSygidGVybWluYWwiLHtzaXplOjE2LHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+XHU2NUIwXHU1RUZBXHU3RUM4XHU3QUVGXHU0RjFBXHU4QkREPC9idXR0b24+PGJ1dHRvbiBjbGFzcz0iYmxhbmstY2hhdC10b29sLWJ0biIgaWQ9IndlbGNvbWUtdG9vbC1jb2RleCIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idG9vbC1pY29uIHRvb2wtaWNvbi10ZXh0Ij5cdTIzMTg8L3NwYW4+XHU2NUIwXHU1RUZBIENvZGV4IFx1NEYxQVx1OEJERDwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImJsYW5rLWNoYXQtdG9vbC1idG4iIGlkPSJ3ZWxjb21lLXRvb2wtc3RydWN0dXJlZCIgdHlwZT0iYnV0dG9uIj48c3BhbiBjbGFzcz0idG9vbC1pY29uIj4nK0soImNoYXQiLHtzaXplOjE2LHN0cm9rZVdpZHRoOjEuOH0pKyc8L3NwYW4+XHU2NUIwXHU1RUZBXHU3RUQzXHU2Nzg0XHU1MzE2XHU0RjFBXHU4QkREPC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC1jd2Qtd3JhcCI+PGRpdiBjbGFzcz0iYmxhbmstY2hhdC1jd2QiIGlkPSJibGFuay1jaGF0LWN3ZCIgcm9sZT0iYnV0dG9uIiB0YWJpbmRleD0iMCIgdGl0bGU9Ilx1NzBCOVx1NTFGQlx1NTIwN1x1NjM2Mlx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NSI+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWljb24iPicrSygiZm9sZGVyIix7c2l6ZToxMyxzdHJva2VXaWR0aDoxLjh9KSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJibGFuay1jaGF0LWN3ZC1wYXRoIiBpZD0iYmxhbmstY2hhdC1jd2QtcGF0aCI+JytwKGV0KCkpKyc8L3NwYW4+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWFycm93IiBpZD0iYmxhbmstY2hhdC1jd2QtYXJyb3ciPicrSygiY2hldnJvbkRvd24iLHtzaXplOjExLHN0cm9rZVdpZHRoOjJ9KSsnPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWRyb3Bkb3duIGhpZGRlbiIgaWQ9ImJsYW5rLWNoYXQtY3dkLWRyb3Bkb3duIj48L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJpbnB1dC1wYW5lbCcrKG4uc2VsZWN0ZWRJZD8iIjoiIGhpZGRlbiIpKyciPjxkaXYgY2xhc3M9ImNvbXBvc2VyLXRvcC1yb3ciPjxkaXYgaWQ9InRvZG8tcHJvZ3Jlc3MiIGNsYXNzPSJ0b2RvLXByb2dyZXNzIGhpZGRlbiI+PGRpdiBjbGFzcz0idG9kby1wcm9ncmVzcy1oZWFkZXIiIGlkPSJ0b2RvLXByb2dyZXNzLXRvZ2dsZSI+PGRpdiBjbGFzcz0idG9kby1wcm9ncmVzcy1maWxsIiBpZD0idG9kby1wcm9ncmVzcy1maWxsIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9Ii0tcHJvZ3Jlc3M6MCI+PC9kaXY+PGRpdiBjbGFzcz0idG9kby1wcm9ncmVzcy1sZWZ0Ij48c3BhbiBjbGFzcz0idG9kby1wcm9ncmVzcy1yaW5nIiBpZD0idG9kby1wcm9ncmVzcy1yaW5nIiBhcmlhLWhpZGRlbj0idHJ1ZSIgc3R5bGU9Ii0tcHJvZ3Jlc3M6MCI+PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAzNiAzNiI+PGNpcmNsZSBjbGFzcz0idG9kby1yaW5nLXRyYWNrIiBjeD0iMTgiIGN5PSIxOCIgcj0iMTUuNSIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSI0Ii8+PGNpcmNsZSBjbGFzcz0idG9kby1yaW5nLWZpbGwiIGN4PSIxOCIgY3k9IjE4IiByPSIxNS41IiBmaWxsPSJub25lIiBzdHJva2Utd2lkdGg9IjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPjwvc3ZnPjwvc3Bhbj48c3BhbiBjbGFzcz0idG9kby1wcm9ncmVzcy1jb3VudGVyIiBpZD0idG9kby1wcm9ncmVzcy1jb3VudGVyIj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idG9kby1wcm9ncmVzcy10YXNrLXdyYXAiPjxzcGFuIGNsYXNzPSJ0b2RvLXByb2dyZXNzLXRhc2siIGlkPSJ0b2RvLXByb2dyZXNzLXRhc2siPjwvc3Bhbj48L2Rpdj48c3ZnIGNsYXNzPSJ0b2RvLXByb2dyZXNzLWNoZXZyb24iIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwb2x5bGluZSBwb2ludHM9IjYgMTUgMTIgOSAxOCAxNSIvPjwvc3ZnPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InRvZG8tcHJvZ3Jlc3MtYm9keSBoaWRkZW4iIGlkPSJ0b2RvLXByb2dyZXNzLWJvZHkiPjx1bCBjbGFzcz0idG9kby1wcm9ncmVzcy1saXN0IiBpZD0idG9kby1wcm9ncmVzcy1saXN0Ij48L3VsPjwvZGl2PjxkaXYgaWQ9InF1ZXVlLWJhci1ob3N0IiBjbGFzcz0icXVldWUtYmFyLWhvc3QiIGhpZGRlbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJpbnB1dC1jb21wb3NlcicrKGE/IiBoYXMtdGV4dCI6IiIpKyciPjxkaXYgY2xhc3M9ImNvbXBvc2VyLXN0YXR1cy1yb3ciIGlkPSJjb21wb3Nlci1zdGF0dXMtcm93Ij4nK0F2KHQpKyc8c3BhbiBjbGFzcz0icGVybWlzc2lvbi1hY3Rpb25zIGhpZGRlbiIgaWQ9InBlcm1pc3Npb24tYWN0aW9ucyI+PHNwYW4gY2xhc3M9InBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbCIgaWQ9InBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbCI+XHU3QjQ5XHU1Rjg1XHU2Mzg4XHU2NzQzPC9zcGFuPjxidXR0b24gaWQ9ImFwcHJvdmUtcGVybWlzc2lvbi1idG4iIGNsYXNzPSJidG4gYnRuLXBlcm1pc3Npb24gYnRuLXBlcm1pc3Npb24tYXBwcm92ZSIgdHlwZT0iYnV0dG9uIj5cdTYyNzlcdTUxQzY8L2J1dHRvbj48YnV0dG9uIGlkPSJkZW55LXBlcm1pc3Npb24tYnRuIiBjbGFzcz0iYnRuIGJ0bi1wZXJtaXNzaW9uIGJ0bi1wZXJtaXNzaW9uLWRlbnkiIHR5cGU9ImJ1dHRvbiI+XHU2MkQyXHU3RUREPC9idXR0b24+PC9zcGFuPicrWmQoKSsnPC9kaXY+PGRpdiBjbGFzcz0iY29tcG9zZXItbWFpbi1yb3ciPjxkaXYgY2xhc3M9ImNvbXBvc2VyLWFjdGlvbnMtbGVmdCI+PGJ1dHRvbiBpZD0iYXR0YWNoLWJ0biIgY2xhc3M9ImJ0bi1jaXJjbGUgYnRuLWNpcmNsZS1hY3Rpb24iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjZGNFx1NTkxQSIgYXJpYS1sYWJlbD0iXHU2NkY0XHU1OTFBIiBhcmlhLWhhc3BvcHVwPSJtZW51IiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+JytLKCJwbHVzIix7c2l6ZToxOCxzdHJva2VXaWR0aDoyLjJ9KSsnPC9idXR0b24+PGlucHV0IHR5cGU9ImZpbGUiIGlkPSJmaWxlLXVwbG9hZC1pbnB1dCIgbXVsdGlwbGUgdGFiaW5kZXg9Ii0xIiBzdHlsZT0icG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4O2hlaWdodDoxcHg7b3BhY2l0eTowO292ZXJmbG93OmhpZGRlbjtjbGlwOnJlY3QoMCwwLDAsMCk7cG9pbnRlci1ldmVudHM6bm9uZSI+PC9kaXY+PGRpdiBjbGFzcz0iY29tcG9zZXItaW5wdXQtd3JhcCI+PHRleHRhcmVhIGlkPSJpbnB1dC1ib3giIGNsYXNzPSJpbnB1dC10ZXh0YXJlYSIgcGxhY2Vob2xkZXI9IicrTW8odCxuLnRlcm1pbmFsSW50ZXJhY3RpdmUpKyciIHJvd3M9IjEiIGF1dG9jb21wbGV0ZT0ib2ZmIiBhdXRvY29ycmVjdD0ib2ZmIiBhdXRvY2FwaXRhbGl6ZT0ib2ZmIiBzcGVsbGNoZWNrPSJmYWxzZSIgZW50ZXJrZXloaW50PSJzZW5kIj4nK3AoYSkrJzwvdGV4dGFyZWE+PGJ1dHRvbiBpZD0icHJvbXB0LW9wdGltaXplLWJ0biIgY2xhc3M9InByb21wdC1vcHRpbWl6ZS1idG4iIHR5cGU9ImJ1dHRvbiIgdGl0bGU9Ilx1NjNEMFx1NzkzQVx1OEJDRFx1NEYxOFx1NTMxNlx1RkYwOEFJXHVGRjA5IiBhcmlhLWxhYmVsPSJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTYiPjxzdmcgY2xhc3M9InByb21wdC1vcHRpbWl6ZS1pY29uIiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTEyIDNsMS42IDQuNEwxOCA5bC00LjQgMS42TDEyIDE1bC0xLjYtNC40TDYgOWw0LjQtMS42eiIgZmlsbD0iY3VycmVudENvbG9yIiBvcGFjaXR5PSIwLjI1Ii8+PHBhdGggZD0iTTEyIDNsMS42IDQuNEwxOCA5bC00LjQgMS42TDEyIDE1bC0xLjYtNC40TDYgOWw0LjQtMS42eiIvPjxwYXRoIGQ9Ik0xOSAxNGwuNyAxLjlMMjEuNiAxN2wtMS45LjdMMTkgMTkuNmwtLjctMS45TDE2LjQgMTdsMS45LS43eiIgZmlsbD0iY3VycmVudENvbG9yIiBvcGFjaXR5PSIwLjM1Ii8+PHBhdGggZD0iTTUgNGwuNSAxLjRMNyA2bC0xLjUuNkw1IDhsLS41LTEuNEwzIDZsMS41LS42eiIgZmlsbD0iY3VycmVudENvbG9yIiBvcGFjaXR5PSIwLjM1Ii8+PC9zdmc+PHNwYW4gY2xhc3M9InByb21wdC1vcHRpbWl6ZS1zcGlubmVyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPjwvYnV0dG9uPjxkaXYgY2xhc3M9InZvaWNlLWlucHV0LW1vZGUgaGlkZGVuIiBpZD0idm9pY2UtaW5wdXQtbW9kZSI+PGJ1dHRvbiBpZD0idm9pY2UtcmVjb3JkLWJ0biIgY2xhc3M9InZvaWNlLXJlY29yZC1idG4iIHR5cGU9ImJ1dHRvbiI+PHNwYW4gY2xhc3M9InZvaWNlLXJlY29yZC1wdWxzZSIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48c3BhbiBjbGFzcz0idm9pY2UtcmVjb3JkLWxhYmVsIj5cdTYzMDlcdTRGNEYgXHU4QkY0XHU4QkREPC9zcGFuPjwvYnV0dG9uPjxidXR0b24gaWQ9InZvaWNlLWNhbmNlbC1idG4iIGNsYXNzPSJ2b2ljZS1jYW5jZWwtYnRuIiB0eXBlPSJidXR0b24iIHRpdGxlPSJcdTkwMDBcdTUxRkFcdThCRURcdTk3RjNcdTZBMjFcdTVGMEYiIGFyaWEtbGFiZWw9Ilx1OTAwMFx1NTFGQVx1OEJFRFx1OTdGM1x1NkEyMVx1NUYwRiI+JytLKCJ4Iix7c2l6ZToxNCxzdHJva2VXaWR0aDoyfSkrJzwvYnV0dG9uPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbXBvc2VyLWFjdGlvbnMtcmlnaHQiPjxidXR0b24gaWQ9InN0b3AtYnV0dG9uIiBjbGFzcz0iYnRuLWNpcmNsZSBidG4tY2lyY2xlLXN0b3AgaGlkZGVuIiB0aXRsZT0iXHU1MDVDXHU2QjYyIj48c3ZnIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJjdXJyZW50Q29sb3IiPjxyZWN0IHg9IjMiIHk9IjMiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgcng9IjIiLz48L3N2Zz48L2J1dHRvbj48YnV0dG9uIGlkPSJzZW5kLWlucHV0LWJ1dHRvbiIgY2xhc3M9ImJ0bi1jaXJjbGUgYnRuLWNpcmNsZS1zZW5kIiB0aXRsZT0iXHU1M0QxXHU5MDAxIj48c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PGxpbmUgeDE9IjIyIiB5MT0iMiIgeDI9IjExIiB5Mj0iMTMiLz48cG9seWdvbiBwb2ludHM9IjIyIDIgMTUgMjIgMTEgMTMgMiA5IDIyIDIiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJhdHRhY2htZW50LXByZXZpZXciIGNsYXNzPSJhdHRhY2htZW50LXByZXZpZXcgaGlkZGVuIj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjb21wb3Nlci1wbHVzLXBvcG92ZXIgaGlkZGVuIiBpZD0iY29tcG9zZXItcGx1cy1wb3BvdmVyIiByb2xlPSJtZW51IiBhcmlhLWxhYmVsPSJcdTY2RjRcdTU5MUFcdTY0Q0RcdTRGNUMiPjxidXR0b24gY2xhc3M9InBsdXMtcG9wb3Zlci1pdGVtIiBpZD0icGx1cy1hdHRhY2gtaXRlbSIgdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbSI+JytLKCJwYXBlcmNsaXAiLHtzaXplOjE0LHN0cm9rZVdpZHRoOjEuOCxjbHM6InBsdXMtcG9wb3Zlci1pY29uIn0pKyc8c3BhbiBjbGFzcz0icGx1cy1wb3BvdmVyLWxhYmVsIj5cdTRFMEFcdTRGMjBcdTk2NDRcdTRFRjY8L3NwYW4+PC9idXR0b24+PGJ1dHRvbiBjbGFzcz0icGx1cy1wb3BvdmVyLWl0ZW0nKyhuLnRlcm1pbmFsSW50ZXJhY3RpdmU/IiBpcy1vbiI6IiIpKyciIGlkPSJ0ZXJtaW5hbC1pbnRlcmFjdGl2ZS10b2dnbGUtdG9wIiB0eXBlPSJidXR0b24iIHJvbGU9Im1lbnVpdGVtY2hlY2tib3giIGFyaWEtY2hlY2tlZD0iJysobi50ZXJtaW5hbEludGVyYWN0aXZlPyJ0cnVlIjoiZmFsc2UiKSsnIj4nK0soImtleWJvYXJkIix7c2l6ZToxNCxzdHJva2VXaWR0aDoxLjgsY2xzOiJwbHVzLXBvcG92ZXItaWNvbiJ9KSsnPHNwYW4gY2xhc3M9InBsdXMtcG9wb3Zlci1sYWJlbCI+XHU3RUM4XHU3QUVGXHU0RUE0XHU0RTkyPC9zcGFuPjxzcGFuIGNsYXNzPSJwbHVzLXBvcG92ZXItdG9nZ2xlLXN0YXRlIj4nKyhuLnRlcm1pbmFsSW50ZXJhY3RpdmU/Ilx1NUYwMCI6Ilx1NTE3MyIpKyc8L3NwYW4+PC9idXR0b24+PGRpdiBjbGFzcz0icGx1cy1wb3BvdmVyLXNlcCIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PjxkaXYgY2xhc3M9InBsdXMtcG9wb3Zlci10cmlvLXdyYXAiPicrVWEodCx7a2luZDoicG9wb3ZlciJ9KSsnPC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0idm9pY2UtdHJhbnNjcmlwdC1idWJibGUgaGlkZGVuIiBpZD0idm9pY2UtdHJhbnNjcmlwdC1idWJibGUiIGFyaWEtbGl2ZT0icG9saXRlIj48ZGl2IGNsYXNzPSJ2b2ljZS10cmFuc2NyaXB0LXRleHQiIGlkPSJ2b2ljZS10cmFuc2NyaXB0LXRleHQiPjwvZGl2PjxkaXYgY2xhc3M9InZvaWNlLXRyYW5zY3JpcHQtaGludCIgaWQ9InZvaWNlLXRyYW5zY3JpcHQtaGludCI+PHNwYW4gY2xhc3M9InZvaWNlLXdhdmUiIGFyaWEtaGlkZGVuPSJ0cnVlIj48aT48L2k+PGk+PC9pPjxpPjwvaT48aT48L2k+PC9zcGFuPjxzcGFuIGNsYXNzPSJ2b2ljZS10cmFuc2NyaXB0LXN0YXR1cyIgaWQ9InZvaWNlLXRyYW5zY3JpcHQtc3RhdHVzIj5cdTZCNjNcdTU3MjhcdTgwNDZcdTU0MkNcdTIwMjZcdTRFMEFcdTZFRDFcdTUzRDZcdTZEODg8L3NwYW4+PC9kaXY+PHNwYW4gY2xhc3M9InZvaWNlLWJ1YmJsZS1hcnJvdyIgYXJpYS1oaWRkZW49InRydWUiPjwvc3Bhbj48L2Rpdj48cCBpZD0iYWN0aW9uLWVycm9yIiBjbGFzcz0iZXJyb3ItbWVzc2FnZSBoaWRkZW4iPjwvcD48L2Rpdj48c2VjdGlvbiBpZD0iZm9sZGVyLXBpY2tlci1tb2RhbCIgY2xhc3M9Im1vZGFsLWJhY2tkcm9wIGhpZGRlbiI+PGRpdiBjbGFzcz0ibW9kYWwgZm9sZGVyLXBpY2tlci1tb2RhbCI+PGRpdiBjbGFzcz0ibW9kYWwtaGVhZGVyIj48aDIgY2xhc3M9Im1vZGFsLXRpdGxlIj5cdTkwMDlcdTYyRTlcdTVERTVcdTRGNUNcdTc2RUVcdTVGNTU8L2gyPjxidXR0b24gaWQ9ImNsb3NlLWZvbGRlci1waWNrZXIiIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5Ij48ZGl2IGNsYXNzPSJmb2xkZXItcGlja2VyLXF1aWNrLXJvdyI+PGJ1dHRvbiBjbGFzcz0iZm9sZGVyLXBpY2tlci1xdWljay1idG4gYnRuLXdpdGgtaWNvbiIgZGF0YS1wYXRoPSIvdG1wIj4nK0soInRyYXNoIix7c2l6ZToxMyxzdHJva2VXaWR0aDoxLjd9KSsnPHNwYW4+XHU0RTM0XHU2NUY2XHU3NkVFXHU1RjU1PC9zcGFuPjwvYnV0dG9uPjxidXR0b24gY2xhc3M9ImZvbGRlci1waWNrZXItcXVpY2stYnRuIGJ0bi13aXRoLWljb24iIGRhdGEtcGF0aD0iLyI+JytLKCJmb2xkZXIiLHtzaXplOjEzLHN0cm9rZVdpZHRoOjEuN30pKyc8c3Bhbj5cdTY4MzlcdTc2RUVcdTVGNTU8L3NwYW4+PC9idXR0b24+PC9kaXY+PGRpdiBpZD0iZm9sZGVyLWJyZWFkY3J1bWIiIGNsYXNzPSJmb2xkZXItYnJlYWRjcnVtYiI+PC9kaXY+PGRpdiBjbGFzcz0iZm9sZGVyLXBpY2tlciI+PHNwYW4gY2xhc3M9ImZvbGRlci1waWNrZXItaWNvbiI+JytLKCJmb2xkZXIiLHtzaXplOjE1LHN0cm9rZVdpZHRoOjEuN30pKyc8L3NwYW4+PGlucHV0IHR5cGU9InRleHQiIGlkPSJmb2xkZXItcGlja2VyLWlucHV0IiBjbGFzcz0iZm9sZGVyLXBpY2tlci1pbnB1dCIgdmFsdWU9IiIgcGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1NjIxNlx1OTAwOVx1NjJFOVx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NS4uLiIgYXV0b2NvbXBsZXRlPSJvZmYiIGF1dG9jb3JyZWN0PSJvZmYiIGF1dG9jYXBpdGFsaXplPSJvZmYiIHNwZWxsY2hlY2s9ImZhbHNlIiAvPjwvZGl2PjxkaXYgaWQ9ImZvbGRlci1waWNrZXItZHJvcGRvd24iIGNsYXNzPSJmb2xkZXItcGlja2VyLWRyb3Bkb3duIGhpZGRlbiI+PC9kaXY+PGRpdiBpZD0iZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIiBjbGFzcz0iZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uIj48L2Rpdj48L2Rpdj48L2Rpdj48L3NlY3Rpb24+PC9tYWluPjwvZGl2PjwvZGl2PicrSWMoKStFYygpK0ZjKCkrTnUoKX1mdW5jdGlvbiB6ZShlLHQpe2lmKGUpe2UudGV4dENvbnRlbnQ9dCxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO2Zvcih2YXIgcj1lLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7cjspe2lmKHIudGFnTmFtZT09PSJJTlBVVCIpe3Iuc2V0QXR0cmlidXRlKCJkYXRhLWVycm9yIiwidHJ1ZSIpO2JyZWFrfXI9ci5wcmV2aW91c0VsZW1lbnRTaWJsaW5nfX19ZnVuY3Rpb24gc2koZSl7aWYoZSl7ZS50ZXh0Q29udGVudD0iIixlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO2Zvcih2YXIgdD1lLnByZXZpb3VzRWxlbWVudFNpYmxpbmc7dDspe2lmKHQudGFnTmFtZT09PSJJTlBVVCIpe3Quc2V0QXR0cmlidXRlKCJkYXRhLWVycm9yIiwiZmFsc2UiKTticmVha310PXQucHJldmlvdXNFbGVtZW50U2libGluZ319fWZ1bmN0aW9uIGsoZSx0KXt2YXIgcj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtyLmNsYXNzTmFtZT0idG9hc3QtbWVzc2FnZSIrKHQ9PT0iZXJyb3IiPyIgdG9hc3QtZXJyb3IiOiIiKSx0IT09ImVycm9yIiYmKHIuc3R5bGUuYmFja2dyb3VuZD0idmFyKC0tYWNjZW50KSIsci5zdHlsZS5jb2xvcj0id2hpdGUiKSxyLnRleHRDb250ZW50PWUsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5yZW1vdmUoKX0sdD09PSJlcnJvciI/NGUzOjIyMDApfXZhciBicj1bXTtmdW5jdGlvbiBuZihlKXtzd2l0Y2goZSl7Y2FzZSJ3YXJuaW5nIjpyZXR1cm4iISI7Y2FzZSJkYW5nZXIiOnJldHVybiJcdTI2QTBcdUZFMEUiO2Nhc2Uic3VjY2VzcyI6cmV0dXJuIlx1MjcxMyI7Y2FzZSJxdWVzdGlvbiI6cmV0dXJuIj8iO2RlZmF1bHQ6cmV0dXJuImkifX1mdW5jdGlvbiBhbihlKXtlPWV8fHt9O3ZhciB0PWUuZGlzbWlzc2FibGUhPT0hMSxyPWUudHlwZXx8ImluZm8iLGk9ZS5pY29ufHxuZihyKSxhPSEhZS5pbnB1dDtyZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24odSl7dmFyIHM9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7cy5jbGFzc05hbWU9IndhbmQtZGlhbG9nLWJhY2tkcm9wIixzLnNldEF0dHJpYnV0ZSgicm9sZSIsInByZXNlbnRhdGlvbiIpO3ZhciBvPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO28uY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZyIsby5zZXRBdHRyaWJ1dGUoInJvbGUiLGE/ImRpYWxvZyI6ImFsZXJ0ZGlhbG9nIiksby5zZXRBdHRyaWJ1dGUoImFyaWEtbW9kYWwiLCJ0cnVlIiksZS50aXRsZSYmby5zZXRBdHRyaWJ1dGUoImFyaWEtbGFiZWwiLGUudGl0bGUpO3ZhciBsPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2wuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1oZWFkZXIiO3ZhciBjPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2MuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1pY29uICIrcixjLnRleHRDb250ZW50PWksbC5hcHBlbmRDaGlsZChjKTt2YXIgZj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpZihmLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctdGV4dHdyYXAiLGUudGl0bGUpe3ZhciBkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2QuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy10aXRsZSIsZC50ZXh0Q29udGVudD1lLnRpdGxlLGYuYXBwZW5kQ2hpbGQoZCl9aWYoZS5tZXNzYWdlKXt2YXIgdj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTt2LmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctbWVzc2FnZSIsdi50ZXh0Q29udGVudD1lLm1lc3NhZ2UsZi5hcHBlbmRDaGlsZCh2KX1sLmFwcGVuZENoaWxkKGYpLG8uYXBwZW5kQ2hpbGQobCk7dmFyIGc9bnVsbDtpZihhKXt2YXIgaD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtoLmNsYXNzTmFtZT0id2FuZC1kaWFsb2ctYm9keSIsZz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpbnB1dCIpLGcudHlwZT0idGV4dCIsZy5jbGFzc05hbWU9IndhbmQtZGlhbG9nLWlucHV0IixlLmlucHV0UGxhY2Vob2xkZXImJihnLnBsYWNlaG9sZGVyPWUuaW5wdXRQbGFjZWhvbGRlciksZS5pbnB1dFZhbHVlIT1udWxsJiYoZy52YWx1ZT1TdHJpbmcoZS5pbnB1dFZhbHVlKSksaC5hcHBlbmRDaGlsZChnKSxvLmFwcGVuZENoaWxkKGgpfXZhciBtPWUuYnV0dG9ucyYmZS5idXR0b25zLmxlbmd0aD9lLmJ1dHRvbnM6W3tsYWJlbDoiXHU1OTdEIix2YWx1ZTohMCxraW5kOiJwcmltYXJ5IixhdXRvZm9jdXM6ITB9XSxiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2IuY2xhc3NOYW1lPSJ3YW5kLWRpYWxvZy1mb290ZXIiO3ZhciBGPW51bGwsdz1udWxsO2Z1bmN0aW9uIEUoeCl7aWYoIXMuY2xhc3NMaXN0LmNvbnRhaW5zKCJjbG9zaW5nIikpe3MuY2xhc3NMaXN0LmFkZCgiY2xvc2luZyIpLGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLEEsITApO3ZhciBJPWJyLmluZGV4T2YoRSk7ST49MCYmYnIuc3BsaWNlKEksMSksc2V0VGltZW91dChmdW5jdGlvbigpe3MucGFyZW50Tm9kZSYmcy5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKHMpLHUoeCl9LDE2MCl9fW0uZm9yRWFjaChmdW5jdGlvbih4KXt2YXIgST1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJidXR0b24iKSxqPXgua2luZHx8InNlY29uZGFyeSI7SS5jbGFzc05hbWU9ImJ0biBidG4tIitqLEkudHlwZT0iYnV0dG9uIixJLnRleHRDb250ZW50PXgubGFiZWwsSS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXthJiZ4LmtpbmQ9PT0icHJpbWFyeSI/RShnP2cudmFsdWU6IiIpOkUoeC52YWx1ZSl9KSxGfHwoRj1JKSx4LmF1dG9mb2N1cyYmKHc9SSksYi5hcHBlbmRDaGlsZChJKX0pLG8uYXBwZW5kQ2hpbGQoYikscy5hcHBlbmRDaGlsZChvKSxzLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih4KXt4LnRhcmdldD09PXMmJnQmJkUoZS5jYW5jZWxWYWx1ZSE9PXZvaWQgMD9lLmNhbmNlbFZhbHVlOmE/bnVsbDohMSl9KTtmdW5jdGlvbiBBKHgpe2lmKGJyW2JyLmxlbmd0aC0xXT09PUUpe2lmKHgua2V5PT09IkVzY2FwZSImJnQpe3gucHJldmVudERlZmF1bHQoKSx4LnN0b3BQcm9wYWdhdGlvbigpLEUoZS5jYW5jZWxWYWx1ZSE9PXZvaWQgMD9lLmNhbmNlbFZhbHVlOmE/bnVsbDohMSk7cmV0dXJufWlmKHgua2V5PT09IkVudGVyIil7Zm9yKHZhciBJPW51bGwsaj0wO2o8bS5sZW5ndGg7aisrKWlmKG1bal0ua2luZD09PSJwcmltYXJ5Iil7ST1tW2pdO2JyZWFrfUl8fChJPW1bbS5sZW5ndGgtMV0pLEkmJih4LnByZXZlbnREZWZhdWx0KCkseC5zdG9wUHJvcGFnYXRpb24oKSxhJiZJLmtpbmQ9PT0icHJpbWFyeSI/RShnP2cudmFsdWU6IiIpOkUoSS52YWx1ZSkpfX19ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsQSwhMCksYnIucHVzaChFKSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHMpLHJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2lmKGEmJmcpe2cuZm9jdXMoKTt0cnl7Zy5zZWxlY3QoKX1jYXRjaHt9fWVsc2Ugdz93LmZvY3VzKCk6RiYmRi5mb2N1cygpfSl9KX1mdW5jdGlvbiByZihlLHQpe3JldHVybiB0PXR8fHt9LGFuKHt0aXRsZTp0LnRpdGxlfHwiXHU2M0QwXHU3OTNBIixtZXNzYWdlOnR5cGVvZiBlPT0ic3RyaW5nIj9lOlN0cmluZyhlPz8iIiksdHlwZTp0LnR5cGV8fCJpbmZvIixidXR0b25zOlt7bGFiZWw6dC5va0xhYmVsfHwiXHU1OTdEIix2YWx1ZTp2b2lkIDAsa2luZDoicHJpbWFyeSIsYXV0b2ZvY3VzOiEwfV19KX1mdW5jdGlvbiBCcyhlLHQpe3Q9dHx8e307dmFyIHI9ISF0LmRhbmdlcnx8dC50eXBlPT09ImRhbmdlciI7cmV0dXJuIGFuKHt0aXRsZTp0LnRpdGxlfHwocj8iXHU3ODZFXHU4QkE0XHU2NENEXHU0RjVDIjoiXHU4QkY3XHU3ODZFXHU4QkE0IiksbWVzc2FnZTp0eXBlb2YgZT09InN0cmluZyI/ZTpTdHJpbmcoZT8/IiIpLHR5cGU6dC50eXBlfHwocj8iZGFuZ2VyIjoicXVlc3Rpb24iKSxjYW5jZWxWYWx1ZTohMSxidXR0b25zOlt7bGFiZWw6dC5jYW5jZWxMYWJlbHx8Ilx1NTNENlx1NkQ4OCIsdmFsdWU6ITEsa2luZDoic2Vjb25kYXJ5In0se2xhYmVsOnQub2tMYWJlbHx8KHI/Ilx1NTIyMFx1OTY2NCI6Ilx1Nzg2RVx1NUI5QSIpLHZhbHVlOiEwLGtpbmQ6cj8iZGFuZ2VyIjoicHJpbWFyeSIsYXV0b2ZvY3VzOiFyfV19KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpPT09ITB9KX1mdW5jdGlvbiBhZihlLHQscil7cmV0dXJuIHI9cnx8e30sYW4oe3RpdGxlOnIudGl0bGV8fCJcdThCRjdcdThGOTNcdTUxNjUiLG1lc3NhZ2U6dHlwZW9mIGU9PSJzdHJpbmciP2U6U3RyaW5nKGU/PyIiKSx0eXBlOnIudHlwZXx8InF1ZXN0aW9uIixpbnB1dDohMCxpbnB1dFZhbHVlOnQ9PW51bGw/IiI6U3RyaW5nKHQpLGlucHV0UGxhY2Vob2xkZXI6ci5wbGFjZWhvbGRlcnx8IiIsY2FuY2VsVmFsdWU6bnVsbCxidXR0b25zOlt7bGFiZWw6ci5jYW5jZWxMYWJlbHx8Ilx1NTNENlx1NkQ4OCIsdmFsdWU6bnVsbCxraW5kOiJzZWNvbmRhcnkifSx7bGFiZWw6ci5va0xhYmVsfHwiXHU3ODZFXHU1QjlBIix2YWx1ZTp2b2lkIDAsa2luZDoicHJpbWFyeSJ9XX0pfXdpbmRvdy53YW5kQWxlcnQ9cmYsd2luZG93LndhbmRDb25maXJtPUJzLHdpbmRvdy53YW5kUHJvbXB0PWFmLHdpbmRvdy5vcGVuV2FuZERpYWxvZz1hbjt2YXIgWHQ9W10sRHM9MCx1Zj02LHNmPTE2O2Z1bmN0aW9uIGRhKGUpe2lmKChlLmFjdGlvbkxhYmVsfHxlLnBsYXlTb3VuZCkmJklzKCksIW4ubm90aWZCdWJibGUpcmV0dXJue2Rpc21pc3M6ZnVuY3Rpb24oKXt9fTt2YXIgdD0rK0RzLHI9ZS50eXBlfHwiaW5mbyIsaT1lLmljb258fChyPT09Indhcm5pbmciPyIhIjpyPT09InN1Y2Nlc3MiPyJcdTI3MTMiOiJpIiksYT1lLmR1cmF0aW9uIT09dm9pZCAwP2UuZHVyYXRpb246OGUzLHU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7dS5jbGFzc05hbWU9Im5vdGlmaWNhdGlvbi1idWJibGUiLHUuc2V0QXR0cmlidXRlKCJkYXRhLW5pZCIsU3RyaW5nKHQpKTt2YXIgcz0nPGRpdiBjbGFzcz0ibm90aWZpY2F0aW9uLWJ1YmJsZS1oZWFkZXIiPjxzcGFuIGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLWljb24gJytyKyciPicraSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLXRpdGxlIj4nK3AoZS50aXRsZSkrJzwvc3Bhbj48YnV0dG9uIGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLWNsb3NlIiB0aXRsZT0iXHU1MTczXHU5NUVEIj5ceEQ3PC9idXR0b24+PC9kaXY+JyxvPWUuYm9keT8nPGRpdiBjbGFzcz0ibm90aWZpY2F0aW9uLWJ1YmJsZS1ib2R5Ij4nK3AoZS5ib2R5KS5yZXBsYWNlKC9cbi9nLCI8YnI+IikrIjwvZGl2PiI6IiIsbD1lLmFjdGlvbkxhYmVsPyc8ZGl2IGNsYXNzPSJub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9InByaW1hcnkiPicrcChlLmFjdGlvbkxhYmVsKSsiPC9idXR0b24+PC9kaXY+IjoiIjt1LmlubmVySFRNTD1zK28rbCxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHUpO3ZhciBjPXtpZDp0LGVsOnV9O1h0LnB1c2goYyksZmEoKTt2YXIgZj11LnF1ZXJ5U2VsZWN0b3IoIi5ub3RpZmljYXRpb24tYnViYmxlLWNsb3NlIik7aWYoZiYmKGYub25jbGljaz1mdW5jdGlvbigpe0VyKHQpfSksZS5hY3Rpb25MYWJlbCYmZS5hY3Rpb24pe3ZhciBkPXUucXVlcnlTZWxlY3RvcigiLm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b24iKTtkJiYoZC5vbmNsaWNrPWZ1bmN0aW9uKCl7ZS5hY3Rpb24oKSxFcih0KX0pfXZhciB2PW51bGw7cmV0dXJuIGE+MCYmKHY9c2V0VGltZW91dChmdW5jdGlvbigpe0VyKHQpfSxhKSkse2Rpc21pc3M6ZnVuY3Rpb24oKXtFcih0KX19fWZ1bmN0aW9uIEVyKGUpe2Zvcih2YXIgdD0tMSxyPTA7cjxYdC5sZW5ndGg7cisrKWlmKFh0W3JdLmlkPT09ZSl7dD1yO2JyZWFrfWlmKHQhPT0tMSl7dmFyIGk9WHRbdF07aS5lbC5jbGFzc0xpc3QuYWRkKCJzbGlkZS1vdXQiKSxYdC5zcGxpY2UodCwxKSxmYSgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXtpLmVsLnBhcmVudE5vZGUmJmkuZWwucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChpLmVsKX0sMzAwKX19ZnVuY3Rpb24gZmEoKXtmb3IodmFyIGU9c2YsdD0wO3Q8WHQubGVuZ3RoO3QrKylYdFt0XS5lbC5zdHlsZS50b3A9ZSsicHgiLGUrPVh0W3RdLmVsLm9mZnNldEhlaWdodCt1Zn10cnl7THM9bmF2aWdhdG9yLnVzZXJBZ2VudC5tYXRjaCgvV2FuZFBsYXRmb3JtXC9tYWNPUy8pLG1hPXdpbmRvdy53ZWJraXQmJndpbmRvdy53ZWJraXQubWVzc2FnZUhhbmRsZXJzJiZ3aW5kb3cud2Via2l0Lm1lc3NhZ2VIYW5kbGVycy53YW5kTmF0aXZlfHxudWxsLExzJiZtYSYmdHlwZW9mIHdpbmRvdy5XYW5kTmF0aXZlPiJ1IiYmKHdpbmRvdy5XYW5kTmF0aXZlPXtkb3dubG9hZFVwZGF0ZTpmdW5jdGlvbihlLHQscil7dHJ5e21hLnBvc3RNZXNzYWdlKHt0eXBlOiJkb3dubG9hZFVwZGF0ZSIsdXJsOlN0cmluZyhlfHwiIiksZmlsZU5hbWU6U3RyaW5nKHR8fCJ3YW5kLXVwZGF0ZS5kbWciKSxzb3VyY2U6U3RyaW5nKHJ8fCJsb2NhbCIpfSl9Y2F0Y2h7fX19KX1jYXRjaHt9dmFyIGplPXR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuc2VuZE5vdGlmaWNhdGlvbj09ImZ1bmN0aW9uIixGcj1uYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9XYW5kQXBwXC8oW15cc10rKS8pLGtzPS9XYW5kUGxhdGZvcm1cL21hY09TLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpLG9mPSEhRnImJiFrcyxTbj1GciYmb2Y/RnJbMV06bnVsbCx1bj1GciYma3M/RnJbMV06bnVsbDtmdW5jdGlvbiBKbihlKXtpZighKCFqZXx8dHlwZW9mIFdhbmROYXRpdmUudmlicmF0ZSE9ImZ1bmN0aW9uIikpdHJ5e1dhbmROYXRpdmUudmlicmF0ZShlfHwibGlnaHQiKX1jYXRjaHt9fWZ1bmN0aW9uIHBhKCl7aWYoamUpe3ZhciBlPW4uc2Vzc2lvbnMuc29tZShmdW5jdGlvbih0KXtyZXR1cm4hdC5hcmNoaXZlZCYmKHQuc3RhdHVzPT09InJ1bm5pbmcifHx0LnN0YXR1cz09PSJ0aGlua2luZyJ8fHQuc3RhdHVzPT09ImluaXRpYWxpemluZyIpfSk7aWYodHlwZW9mIFdhbmROYXRpdmUuc2V0S2VlcFNjcmVlbk9uPT0iZnVuY3Rpb24iKXRyeXtXYW5kTmF0aXZlLnNldEtlZXBTY3JlZW5PbihlKX1jYXRjaHt9aWYoZSl7aWYodHlwZW9mIFdhbmROYXRpdmUuc3RhcnRLZWVwQWxpdmU9PSJmdW5jdGlvbiIpdHJ5e1dhbmROYXRpdmUuc3RhcnRLZWVwQWxpdmUoKX1jYXRjaHt9fWVsc2UgaWYodHlwZW9mIFdhbmROYXRpdmUuc3RvcEtlZXBBbGl2ZT09ImZ1bmN0aW9uIil0cnl7V2FuZE5hdGl2ZS5zdG9wS2VlcEFsaXZlKCl9Y2F0Y2h7fX19ZnVuY3Rpb24gb2koKXtpZihqZSYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0UGVybWlzc2lvbj09ImZ1bmN0aW9uIil0cnl7cmV0dXJuIFdhbmROYXRpdmUuZ2V0UGVybWlzc2lvbigpfWNhdGNoe31yZXR1cm4gbnVsbH1mdW5jdGlvbiBsZigpe2lmKGplKXt2YXIgZT1vaSgpO2lmKGU9PT0iZGVmYXVsdCJ8fGU9PT0iZGVuaWVkIil0cnl7V2FuZE5hdGl2ZS5yZXF1ZXN0UGVybWlzc2lvbigpfWNhdGNoe31yZXR1cm59dHlwZW9mIE5vdGlmaWNhdGlvbjwidSImJk5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uPT09ImRlZmF1bHQiJiZOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKX1mdW5jdGlvbiBjZihlKXt2YXIgdD1lfHx7fTtyZXR1cm4hKHQub25seVdoZW5IaWRkZW4mJiFkb2N1bWVudC5oaWRkZW58fHQuc2tpcFdoZW5TZWxlY3RlZFNlc3Npb25JZCYmdC5za2lwV2hlblNlbGVjdGVkU2Vzc2lvbklkPT09bi5zZWxlY3RlZElkJiYhZG9jdW1lbnQuaGlkZGVuKX1mdW5jdGlvbiBkZihlLHQpe2lmKCFlfHwhdHx8dDw9MClyZXR1cm4hMTt2YXIgcj1uLm5vdGlmaWNhdGlvbkhpc3RvcnlbZV18fDAsaT1EYXRlLm5vdygpO3JldHVybiBpLXI8dD8hMDoobi5ub3RpZmljYXRpb25IaXN0b3J5W2VdPWksITEpfWZ1bmN0aW9uIGxpKGUsdCxyKXt2YXIgaT1yfHx7fSxhPWkudGFnfHwiIjtpZihjZihpKSYmIWRmKGEsaS5taW5JbnRlcnZhbE1zfHwwKSl7aWYoamUpe3ZhciB1PW9pKCk7aWYodSE9PSJncmFudGVkIilyZXR1cm47dHJ5e3ZhciBzPWE7aS5raW5kJiYocz1pLmtpbmQrKGE/IjoiK2E6IiIpKSxXYW5kTmF0aXZlLnNlbmROb3RpZmljYXRpb24oZXx8IldhbmQiLHR8fCIiLHN8fCIiKX1jYXRjaHt9cmV0dXJufWlmKCEodHlwZW9mIE5vdGlmaWNhdGlvbj4idSJ8fE5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uIT09ImdyYW50ZWQiKSYmZG9jdW1lbnQuaGlkZGVuKXRyeXt2YXIgbz1uZXcgTm90aWZpY2F0aW9uKGUse2JvZHk6dHx8IiIsaWNvbjppLmljb258fCIvZmF2aWNvbi5pY28iLHRhZzphfHx2b2lkIDB9KTtvLm9uY2xpY2s9ZnVuY3Rpb24oKXt3aW5kb3cuZm9jdXMoKSxvLmNsb3NlKCksaS5vbkNsaWNrJiZpLm9uQ2xpY2soKX0sc2V0VGltZW91dChmdW5jdGlvbigpe28uY2xvc2UoKX0sMWU0KX1jYXRjaHt9fX1mdW5jdGlvbiBmZihlLHQpe2lmKCEoIXR8fCF0LnRpdGxlKSl7dmFyIHI9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLmlkPT09ZX0pO2lmKHIpe3ZhciBpPXIuc3VtbWFyeXx8ci5jb21tYW5kfHxlO2xpKCJcdTRFRkJcdTUyQTFcdThGREJcdTg4NENcdTRFMkQiLGkrYApgK3QudGl0bGUse2tpbmQ6InRhc2siLHRhZzoid2FuZC10YXNrLSIrZSsiLSIrdC50aXRsZSxtaW5JbnRlcnZhbE1zOjllNCxvbmx5V2hlbkhpZGRlbjohMCxza2lwV2hlblNlbGVjdGVkU2Vzc2lvbklkOmUsb25DbGljazpmdW5jdGlvbigpe2UhPT1uLnNlbGVjdGVkSWQmJnp0KGUpfX0pfX19ZnVuY3Rpb24gQXMoZSx0KXt5ZihlfHwiLSIsdHx8Ii0iKSxsaSgiV2FuZCBcdTUzRDFcdTczQjBcdTY1QjBcdTcyNDhcdTY3MkMiLCJcdTVGNTNcdTUyNEQgIisoZXx8Ii0iKSsiIFx1MjE5MiBcdTY3MDBcdTY1QjAgIisodHx8Ii0iKSx7a2luZDoidXBkYXRlIix0YWc6IndhbmQtdXBkYXRlIixtaW5JbnRlcnZhbE1zOjNlNX0pfWZ1bmN0aW9uIHBmKGUsdCl7bGkoIlx1OTcwMFx1ODk4MVx1NEY2MFx1NzY4NFx1NjM4OFx1Njc0MyIsdCx7a2luZDoicGVybWlzc2lvbiIsdGFnOiJ3YW5kLXBlcm0tIitlLG1pbkludGVydmFsTXM6NmU0LG9ubHlXaGVuSGlkZGVuOiEwLHNraXBXaGVuU2VsZWN0ZWRTZXNzaW9uSWQ6ZSxvbkNsaWNrOmZ1bmN0aW9uKCl7ZSE9PW4uc2VsZWN0ZWRJZCYmenQoZSl9fSl9ZnVuY3Rpb24gdmYoZSx0LHIpe2xpKHQscix7a2luZDoidGFzay1lbmRlZCIsdGFnOiJ3YW5kLWVuZGVkLSIrZSxtaW5JbnRlcnZhbE1zOjFlNCxvbkNsaWNrOmZ1bmN0aW9uKCl7ZSE9PW4uc2VsZWN0ZWRJZCYmenQoZSl9fSl9dmFyIEluPXt9LG1mPTMwO2Z1bmN0aW9uIHhzKGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PVN0cmluZyhlKS5yZXBsYWNlKC9eIytccysvZ20sIiIpLnJlcGxhY2UoL1wqXCovZywiIikucmVwbGFjZSgvYC9nLCIiKS50cmltKCkscj10LnNwbGl0KGAKYClbMF0udHJpbSgpO3JldHVybiByLmxlbmd0aD4xMDAmJihyPXIuc2xpY2UoMCwxMDApKyJcdTIwMjYiKSxyfWZ1bmN0aW9uIHZhKGUpeyFqZXx8dHlwZW9mIFdhbmROYXRpdmUudXBkYXRlU2Vzc2lvblByb2dyZXNzIT0iZnVuY3Rpb24ifHxlJiYoSW5bZV0mJmNsZWFyVGltZW91dChJbltlXSksSW5bZV09c2V0VGltZW91dChmdW5jdGlvbigpe2RlbGV0ZSBJbltlXSxnZihlKX0sbWYpKX1mdW5jdGlvbiBnZihlKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oeCl7cmV0dXJuIHguaWQ9PT1lfSk7aWYodCl7dmFyIHI9dC5zdW1tYXJ5fHx0LmNvbW1hbmR8fGUsaT10LnN0YXR1c3x8InJ1bm5pbmciO2lmKGk9PT0iaWRsZSJ8fGk9PT0iYXJjaGl2ZWQifHxpPT09ImV4aXRlZCIpe1NzKGUpO3JldHVybn1mb3IodmFyIGE9bnVsbCx1PSIiLHM9IiIsbz1bXSxsPXQubWVzc2FnZXN8fFtdLGM9bC5sZW5ndGgtMTtjPj0wO2MtLSl7dmFyIGY9bFtjXTtpZighKCFmLmNvbnRlbnR8fCFBcnJheS5pc0FycmF5KGYuY29udGVudCkpKXtpZighcyYmZi5yb2xlPT09ImFzc2lzdGFudCIpZm9yKHZhciBkPWYuY29udGVudC5sZW5ndGgtMTtkPj0wO2QtLSl7dmFyIHY9Zi5jb250ZW50W2RdO2lmKHYmJnYudHlwZT09PSJ0ZXh0IiYmdi50ZXh0JiZ2LnRleHQudHJpbSgpKXtzPXhzKHYudGV4dCk7YnJlYWt9fWlmKGYucm9sZT09PSJ1c2VyIil7dmFyIGc9Zi5jb250ZW50LnNvbWUoZnVuY3Rpb24oeCl7cmV0dXJuIHgmJnguX19xdWV1ZWR9KTtpZighZylmb3IodmFyIGg9MDtoPGYuY29udGVudC5sZW5ndGg7aCsrKXt2YXIgbT1mLmNvbnRlbnRbaF07aWYobSYmbS50eXBlPT09InRleHQiJiZtLnRleHQmJm0udGV4dC50cmltKCkpe3ZhciBiPXhzKG0udGV4dCk7dXx8KHU9Yiksby5sZW5ndGg8NCYmby5wdXNoKGIpO2JyZWFrfX19aWYoIWEpZm9yKHZhciBGPWYuY29udGVudC5sZW5ndGgtMTtGPj0wO0YtLSl7dmFyIHc9Zi5jb250ZW50W0ZdO2lmKHcmJncudHlwZT09PSJ0b29sX3VzZSImJncubmFtZT09PSJUb2RvV3JpdGUiJiZ3LmlucHV0JiZ3LmlucHV0LnRvZG9zKXthPXcuaW5wdXQudG9kb3M7YnJlYWt9fWlmKGEmJm8ubGVuZ3RoPj00JiZzKWJyZWFrfX1vLnJldmVyc2UoKTt2YXIgRT0iIjtlPT09bi5zZWxlY3RlZElkJiZuLmN1cnJlbnRUYXNrJiZuLmN1cnJlbnRUYXNrLnRpdGxlJiYoRT1uLmN1cnJlbnRUYXNrLnRpdGxlKTt2YXIgQT17c2Vzc2lvbkxhYmVsOnIsc3RhdHVzOmksY3VycmVudFRhc2s6RSxsYXRlc3RVc2VyVGV4dDp1LGxhdGVzdEFzc2lzdGFudFRleHQ6cyx0b2RvczphfHxbXSxyZWNlbnRVc2VyVGV4dHM6b307dHJ5e1dhbmROYXRpdmUudXBkYXRlU2Vzc2lvblByb2dyZXNzKGUsSlNPTi5zdHJpbmdpZnkoQSkpfWNhdGNoe319fWZ1bmN0aW9uIFNzKGUpe2lmKCEoIWplfHx0eXBlb2YgV2FuZE5hdGl2ZS5jbGVhclNlc3Npb25Qcm9ncmVzcyE9ImZ1bmN0aW9uIikpe0luW2VdJiYoY2xlYXJUaW1lb3V0KEluW2VdKSxkZWxldGUgSW5bZV0pO3RyeXtXYW5kTmF0aXZlLmNsZWFyU2Vzc2lvblByb2dyZXNzKGUpfWNhdGNoe319fXdpbmRvdy5oYW5kbGVOYXRpdmVCYWNrPWZ1bmN0aW9uKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLW1vZGFsIik7aWYoZSYmIWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKSlyZXR1cm4gZXIoKSwhMDt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1tb2RhbCIpO2lmKHQmJiF0LmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIikpcmV0dXJuIG1uKCksITA7dmFyIHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLW1vZGFsIik7cmV0dXJuIHImJiFyLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIik/KFpuKCksITApOm4uZmlsZVBhbmVsT3BlbiYmTmUoKT8oemkoITEpLCEwKTpuLnNlc3Npb25zRHJhd2VyT3BlbiYmTmUoKT8oT3IoKSwhMCk6TmUoKSYmbi5zZWxlY3RlZElkPyhuLnNlbGVjdGVkSWQ9bnVsbCx5ZSgpLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSEwLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITApLCR0KCksITApOiExfTtmdW5jdGlvbiBJcygpe24ubm90aWZTb3VuZCYmY2koKX1mdW5jdGlvbiBoZigpe3JldHVybiBjaSgpfWZ1bmN0aW9uIGNpKCl7dHJ5e2xldCBhPWZ1bmN0aW9uKHUscyxvKXt2YXIgbD1yLmNyZWF0ZU9zY2lsbGF0b3IoKSxjPXIuY3JlYXRlR2FpbigpO2wudHlwZT0ic2luZSIsbC5mcmVxdWVuY3kudmFsdWU9dSxjLmdhaW4uc2V0VmFsdWVBdFRpbWUoMCxyLmN1cnJlbnRUaW1lK3MpLGMuZ2Fpbi5saW5lYXJSYW1wVG9WYWx1ZUF0VGltZSguNSppLHIuY3VycmVudFRpbWUrcysuMDQpLGMuZ2Fpbi5leHBvbmVudGlhbFJhbXBUb1ZhbHVlQXRUaW1lKC4wMDEsci5jdXJyZW50VGltZStzK28pLGwuY29ubmVjdChjKSxjLmNvbm5lY3Qoci5kZXN0aW5hdGlvbiksbC5zdGFydChyLmN1cnJlbnRUaW1lK3MpLGwuc3RvcChyLmN1cnJlbnRUaW1lK3Mrbyl9O3ZhciBlPWEsdD13aW5kb3cuQXVkaW9Db250ZXh0fHx3aW5kb3cud2Via2l0QXVkaW9Db250ZXh0O2lmKCF0KXJldHVybiExO3ZhciByPW5ldyB0O3Iuc3RhdGU9PT0ic3VzcGVuZGVkIiYmci5yZXN1bWUoKTt2YXIgaT0obi5ub3RpZlZvbHVtZXx8MCkvMTAwO3JldHVybiBhKDUyMywwLC4yNSksYSg2NTksLjEyLC4zKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci5jbG9zZSgpfSw2MDApLCEwfWNhdGNoe3JldHVybiExfX1mdW5jdGlvbiB5ZihlLHQpe2lmKG4uX3VwZGF0ZUJ1YmJsZVNob3duKXJldHVybjtuLl91cGRhdGVCdWJibGVTaG93bj0hMCxJcygpO3ZhciByPSsrRHMsaT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtpLmNsYXNzTmFtZT0ibm90aWZpY2F0aW9uLWJ1YmJsZSB1cGRhdGUtY2FyZCIsaS5zZXRBdHRyaWJ1dGUoImRhdGEtbmlkIixTdHJpbmcocikpLGkuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1zaGluZSIgYXJpYS1oaWRkZW49InRydWUiPjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLWhlYWRlciI+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtaWNvbiIgYXJpYS1oaWRkZW49InRydWUiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTIgMTlWNSIvPjxwYXRoIGQ9Ik01IDEybDctNyA3IDciLz48L3N2Zz48L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1oZWFkaW5nIj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC10aXRsZSI+XHU1M0QxXHU3M0IwXHU2NUIwXHU3MjQ4XHU2NzJDPC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtc3VidGl0bGUiIGlkPSJ1cGRhdGUtY2FyZC1zdWJ0aXRsZSI+XHU3MEI5XHU1MUZCXHU0RTBCXHU2NUI5XHU2MzA5XHU5NEFFXHU0RTAwXHU5NTJFXHU2NkY0XHU2NUIwPC9kaXY+PC9kaXY+PGJ1dHRvbiBjbGFzcz0idXBkYXRlLWNhcmQtY2xvc2UiIHRpdGxlPSJcdTdBMERcdTU0MEVcdTYzRDBcdTkxOTIiIGFyaWEtbGFiZWw9Ilx1NTE3M1x1OTVFRCI+PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi4yIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGQ9Ik0xOCA2TDYgMTgiLz48cGF0aCBkPSJNNiA2bDEyIDEyIi8+PC9zdmc+PC9idXR0b24+PC9kaXY+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtdmVyc2lvbiI+PHNwYW4gY2xhc3M9InVwZGF0ZS1jYXJkLXZlcnNpb24tY2hpcCB1cGRhdGUtY2FyZC12ZXJzaW9uLWN1cnJlbnQiPnYnK3AoU3RyaW5nKGUpLnJlcGxhY2UoL152LywiIikpKyc8L3NwYW4+PHN2ZyBjbGFzcz0idXBkYXRlLWNhcmQtdmVyc2lvbi1hcnJvdyIgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTUgMTJoMTQiLz48cGF0aCBkPSJNMTMgNWw3IDctNyA3Ii8+PC9zdmc+PHNwYW4gY2xhc3M9InVwZGF0ZS1jYXJkLXZlcnNpb24tY2hpcCB1cGRhdGUtY2FyZC12ZXJzaW9uLWxhdGVzdCI+dicrcChTdHJpbmcodCkucmVwbGFjZSgvXnYvLCIiKSkrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ1cGRhdGUtY2FyZC1wcm9ncmVzcyIgaWQ9InVwZGF0ZS1jYXJkLXByb2dyZXNzIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGRpdiBjbGFzcz0idXBkYXRlLWNhcmQtcHJvZ3Jlc3MtdHJhY2siPjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXByb2dyZXNzLWZpbGwiPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLXN0YXR1cyBoaWRkZW4iIGlkPSJ1cGRhdGUtY2FyZC1zdGF0dXMiPjwvZGl2PjxkaXYgY2xhc3M9InVwZGF0ZS1jYXJkLWFjdGlvbnMiPjxidXR0b24gY2xhc3M9InVwZGF0ZS1jYXJkLWFjdGlvbiB1cGRhdGUtY2FyZC1hY3Rpb24tcHJpbWFyeSIgaWQ9InVwZGF0ZS1idWJibGUtYWN0aW9uIiB0eXBlPSJidXR0b24iPjxzcGFuIGNsYXNzPSJ1cGRhdGUtY2FyZC1hY3Rpb24tbGFiZWwiPlx1N0FDQlx1NTM3M1x1NjZGNFx1NjVCMDwvc3Bhbj48L2J1dHRvbj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoaSk7dmFyIGE9e2lkOnIsZWw6aX07WHQucHVzaChhKSxmYSgpO3ZhciB1PWkucXVlcnlTZWxlY3RvcigiLnVwZGF0ZS1jYXJkLWNsb3NlIik7dSYmKHUub25jbGljaz1mdW5jdGlvbigpe0VyKHIpLG4uX3VwZGF0ZUJ1YmJsZVNob3duPSExfSk7dmFyIHM9aS5xdWVyeVNlbGVjdG9yKCIjdXBkYXRlLWJ1YmJsZS1hY3Rpb24iKSxvPWkucXVlcnlTZWxlY3RvcigiLnVwZGF0ZS1jYXJkLWFjdGlvbi1sYWJlbCIpLGw9aS5xdWVyeVNlbGVjdG9yKCIjdXBkYXRlLWNhcmQtc3VidGl0bGUiKSxjPWkucXVlcnlTZWxlY3RvcigiI3VwZGF0ZS1jYXJkLXN0YXR1cyIpLGY9aS5xdWVyeVNlbGVjdG9yKCIjdXBkYXRlLWNhcmQtcHJvZ3Jlc3MiKTtmdW5jdGlvbiBkKGgsbSl7aWYoYyl7aWYoYy50ZXh0Q29udGVudD1ofHwiIixjLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIsImVycm9yIiwic3VjY2VzcyIpLCFoKXtjLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpO3JldHVybn1tJiZjLmNsYXNzTGlzdC5hZGQobSl9fWZ1bmN0aW9uIHYoaCl7bCYmKGwudGV4dENvbnRlbnQ9aHx8IiIpfWZ1bmN0aW9uIGcoaCl7ZiYmZi5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLCEhaCl9cyYmKHMub25jbGljaz1mdW5jdGlvbigpe3MuZGlzYWJsZWQ9ITAsaS5jbGFzc0xpc3QuYWRkKCJpcy1idXN5IiksbyYmKG8udGV4dENvbnRlbnQ9Ilx1NjZGNFx1NjVCMFx1NEUyRFx1MjAyNiIpLHYoIlx1NkI2M1x1NTcyOFx1NEUwQlx1OEY3RFx1NUU3Nlx1NUI4OVx1ODhDNVx1NjVCMFx1NzI0OFx1NjcyQ1x1MjAyNiIpLGcoITApLGQoIiIpLGZldGNoKCIvYXBpL3VwZGF0ZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihoKXtyZXR1cm4gaC5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGgpe2lmKGguZXJyb3Ipe2coITEpLGkuY2xhc3NMaXN0LnJlbW92ZSgiaXMtYnVzeSIpLHYoIlx1NjZGNFx1NjVCMFx1NjcyQVx1NUI4Q1x1NjIxMCIpLGQoaC5lcnJvciwiZXJyb3IiKSxzLmRpc2FibGVkPSExLG8mJihvLnRleHRDb250ZW50PSJcdTkxQ0RcdThCRDUiKTtyZXR1cm59aWYoaS5jbGFzc0xpc3QuYWRkKCJpcy1zdWNjZXNzIiksdigoaC5tZXNzYWdlfHwiXHU2NkY0XHU2NUIwXHU1QjhDXHU2MjEwIikrIlx1RkYwQ1x1NkI2M1x1NTcyOFx1OTFDRFx1NTQyRlx1NjcwRFx1NTJBMVx1MjAyNiIpLGQoIiIpLG8mJihvLnRleHRDb250ZW50PSJcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTIwMjYiKSxoLmRldGFjaGVkVXBkYXRlKXtzbigpO3JldHVybn1pZihoLnJlc3RhcnRSZXF1aXJlZD09PSExKXtnKCExKSxpLmNsYXNzTGlzdC5yZW1vdmUoImlzLWJ1c3kiKSxzLmRpc2FibGVkPSExLG8mJihvLnRleHRDb250ZW50PSJcdTVERjJcdTVCOENcdTYyMTAiKTtyZXR1cm59YmYocyxvLGwsYyxmKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZyghMSksaS5jbGFzc0xpc3QucmVtb3ZlKCJpcy1idXN5IiksdigiXHU2NkY0XHU2NUIwXHU2NzJBXHU1QjhDXHU2MjEwIiksZCgiXHU4QkY3XHU2OEMwXHU2N0U1XHU3RjUxXHU3RURDXHU4RkRFXHU2M0E1XHU1NDBFXHU5MUNEXHU4QkQ1IiwiZXJyb3IiKSxzLmRpc2FibGVkPSExLG8mJihvLnRleHRDb250ZW50PSJcdTkxQ0RcdThCRDUiKX0pfSl9ZnVuY3Rpb24gYmYoZSx0LHIsaSxhKXtmZXRjaCgiL2FwaS9yZXN0YXJ0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oKXtzbigpfSkuY2F0Y2goZnVuY3Rpb24oKXtzbigpfSl9ZnVuY3Rpb24gVHMoZSx0KXtlJiYoZS5kaXNhYmxlZD0hMCxlLnRleHRDb250ZW50PSJcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTIwMjYiKSx0JiYodC50ZXh0Q29udGVudD0iXHU2NzBEXHU1MkExXHU2QjYzXHU1NzI4XHU5MUNEXHU1NDJGXHUyMDI2Iix0LnN0eWxlLmNvbG9yPSJ2YXIoLS10ZXh0LXNlY29uZGFyeSkiKSxmZXRjaCgiL2FwaS9yZXN0YXJ0Iix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oKXtzbigpfSkuY2F0Y2goZnVuY3Rpb24oKXtzbigpfSl9ZnVuY3Rpb24gc24oKXtpZighZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJlc3RhcnQtb3ZlcmxheSIpKXt2YXIgZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtlLmlkPSJyZXN0YXJ0LW92ZXJsYXkiLGUuY2xhc3NOYW1lPSJyZXN0YXJ0LW92ZXJsYXkiLGUuaW5uZXJIVE1MPSc8ZGl2IGNsYXNzPSJyZXN0YXJ0LW92ZXJsYXktY29udGVudCI+PGRpdiBjbGFzcz0icmVzdGFydC1zcGlubmVyIj48L2Rpdj48ZGl2IGNsYXNzPSJyZXN0YXJ0LXRpdGxlIj5cdTY3MERcdTUyQTFcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkY8L2Rpdj48ZGl2IGNsYXNzPSJyZXN0YXJ0LXN1YnRpdGxlIj5cdTdBMERcdTU0MEVcdTVDMDZcdTgxRUFcdTUyQThcdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjJcdTIwMjY8L2Rpdj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSk7dmFyIHQ9MCxyPTE4MCxpPXNldEludGVydmFsKGZ1bmN0aW9uKCl7aWYodCsrLGZldGNoKCIvYXBpL2NvbmZpZyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHUpe3Uub2smJihjbGVhckludGVydmFsKGkpLGxvY2F0aW9uLnJlbG9hZCgpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSksdD49cil7Y2xlYXJJbnRlcnZhbChpKTt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIi5yZXN0YXJ0LXN1YnRpdGxlIik7YSYmKGEuaW5uZXJIVE1MPSdcdTkxQ0RcdTU0MkZcdThEODVcdTY1RjZcdUZGMENcdThCRjcgPGEgaHJlZj0iamF2YXNjcmlwdDpsb2NhdGlvbi5yZWxvYWQoKSIgc3R5bGU9ImNvbG9yOnZhcigtLWFjY2VudCk7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSI+XHU2MjRCXHU1MkE4XHU1MjM3XHU2NUIwPC9hPiBcdTk4NzVcdTk3NjJcdTMwMDInKX19LDJlMyl9fWZ1bmN0aW9uIEVmKGUsdCl7aWYoIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJyZXN0YXJ0LW92ZXJsYXkiKSl7dmFyIHI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7ci5pZD0icmVzdGFydC1vdmVybGF5IixyLmNsYXNzTmFtZT0icmVzdGFydC1vdmVybGF5IixyLmlubmVySFRNTD0nPGRpdiBjbGFzcz0icmVzdGFydC1vdmVybGF5LWNvbnRlbnQiPjxkaXYgY2xhc3M9InJlc3RhcnQtc3Bpbm5lciI+PC9kaXY+PGRpdiBjbGFzcz0icmVzdGFydC10aXRsZSI+XHU4MUVBXHU1MkE4XHU2NkY0XHU2NUIwXHU0RTJEPC9kaXY+PGRpdiBjbGFzcz0icmVzdGFydC1zdWJ0aXRsZSI+JytwKGUpKyIgXHUyMTkyICIrcCh0KSsiPGJyPlx1NkI2M1x1NTcyOFx1NEUwQlx1OEY3RFx1NUU3Nlx1NUI4OVx1ODhDNVx1NjVCMFx1NzI0OFx1NjcyQ1x1RkYwQ1x1N0EwRFx1NTQwRVx1NUMwNlx1ODFFQVx1NTJBOFx1OTFDRFx1NTQyRlx1MjAyNjwvZGl2PjwvZGl2PiIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChyKX19dmFyIExzLG1hLEllPXtyZWNvcmRpbmc6ITEsY2FuY2VsaW5nOiExLHRyYW5zY3JpcHQ6IiIsc3RhcnRZOjB9LEZmPTYwO2Z1bmN0aW9uIHdmKGUpe0llLnRyYW5zY3JpcHQ9ZXx8IiI7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtdGV4dCIpO3QmJih0LnRleHRDb250ZW50PUllLnRyYW5zY3JpcHQpO3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LWJ1YmJsZSIpO3ImJnIuY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLXRleHQiLCEhSWUudHJhbnNjcmlwdCl9ZnVuY3Rpb24gQ2YoZSl7aWYoZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLEllLnN0YXJ0WT10eXBlb2YgZS5jbGllbnRZPT0ibnVtYmVyIj9lLmNsaWVudFk6MDt0cnl7ZS5wb2ludGVySWQhPT12b2lkIDAmJmUudGFyZ2V0JiZlLnRhcmdldC5zZXRQb2ludGVyQ2FwdHVyZSYmZS50YXJnZXQuc2V0UG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpfWNhdGNoe319SWUucmVjb3JkaW5nPSEwLEllLmNhbmNlbGluZz0hMSxJZS50cmFuc2NyaXB0PSIiO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1yZWNvcmQtYnRuIik7aWYodCl7dC5jbGFzc0xpc3QuYWRkKCJpcy1yZWNvcmRpbmciKTt2YXIgcj10LnF1ZXJ5U2VsZWN0b3IoIi52b2ljZS1yZWNvcmQtbGFiZWwiKTtyJiYoci50ZXh0Q29udGVudD0iXHU2NzdFXHU1RjAwIFx1NTNEMVx1OTAwMSIpfXZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LWJ1YmJsZSIpO2kmJmkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiwiaXMtY2FuY2VsaW5nIiwiaGFzLXRleHQiKSx3ZigiIik7dmFyIGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtc3RhdHVzIik7YSYmKGEudGV4dENvbnRlbnQ9Ilx1N0Y1MVx1OTg3NVx1N0FFRlx1NjY4Mlx1NEUwRFx1NjUyRlx1NjMwMVx1OEJFRFx1OTdGM1x1OEY5M1x1NTE2NVx1RkYwQ1x1OEJGN1x1NEY3Rlx1NzUyOCBBcHAiKX1mdW5jdGlvbiBCZihlKXtpZighKCFJZS5yZWNvcmRpbmd8fCFlKSl7dmFyIHQ9SWUuc3RhcnRZLSh0eXBlb2YgZS5jbGllbnRZPT0ibnVtYmVyIj9lLmNsaWVudFk6SWUuc3RhcnRZKSxyPXQ+RmY7aWYociE9PUllLmNhbmNlbGluZyl7SWUuY2FuY2VsaW5nPXI7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInZvaWNlLXRyYW5zY3JpcHQtYnViYmxlIik7aSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJpcy1jYW5jZWxpbmciLHIpO3ZhciBhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS1yZWNvcmQtYnRuIiksdT1hJiZhLnF1ZXJ5U2VsZWN0b3IoIi52b2ljZS1yZWNvcmQtbGFiZWwiKTt1JiYodS50ZXh0Q29udGVudD1yPyJcdTY3N0VcdTVGMDAgXHU1M0Q2XHU2RDg4IjoiXHU2NzdFXHU1RjAwIFx1NTNEMVx1OTAwMSIpO3ZhciBzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ2b2ljZS10cmFuc2NyaXB0LXN0YXR1cyIpO3MmJihzLnRleHRDb250ZW50PXI/Ilx1Njc3RVx1NUYwMFx1NjI0Qlx1NjMwNyBcdTUzRDZcdTZEODgiOiJcdTZCNjNcdTU3MjhcdTgwNDZcdTU0MkNcdTIwMjZcdTRFMEFcdTZFRDFcdTUzRDZcdTZEODgiKX19fWZ1bmN0aW9uIE1zKGUpe2lmKEllLnJlY29yZGluZyl7ZSYmZS5wcmV2ZW50RGVmYXVsdCgpLEllLnJlY29yZGluZz0hMTt2YXIgdD0hSWUuY2FuY2VsaW5nJiYhIUllLnRyYW5zY3JpcHQudHJpbSgpLHI9SWUudHJhbnNjcmlwdDtnYSgpLHQmJihEZihyKSxoYSghMSkpfX1mdW5jdGlvbiBnYSgpe0llLmNhbmNlbGluZz0hMTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtcmVjb3JkLWJ0biIpO2lmKGUpe2UuY2xhc3NMaXN0LnJlbW92ZSgiaXMtcmVjb3JkaW5nIik7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIudm9pY2UtcmVjb3JkLWxhYmVsIik7dCYmKHQudGV4dENvbnRlbnQ9Ilx1NjMwOVx1NEY0RiBcdThCRjRcdThCREQiKX12YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidm9pY2UtdHJhbnNjcmlwdC1idWJibGUiKTtyJiZyLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpfWZ1bmN0aW9uIERmKGUpe3ZhciB0PShlfHwiIikudHJpbSgpO2lmKHQpe3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZihyKXt2YXIgaT1yLnZhbHVlfHwiIixhPWk/aS5yZXBsYWNlKC9ccyskLywiIikrIiAiK3Q6dDtyLnZhbHVlPWEsdXQoYSwhMCksSHQocik7dHJ5e3Iuc2V0U2VsZWN0aW9uUmFuZ2UoYS5sZW5ndGgsYS5sZW5ndGgpfWNhdGNoe319fX1mdW5jdGlvbiBoYShlKXt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtY29tcG9zZXIiKTtpZih0KXt2YXIgcj10eXBlb2YgZT09ImJvb2xlYW4iP2U6IXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJ2b2ljZS1tb2RlIik7aWYodC5jbGFzc0xpc3QudG9nZ2xlKCJ2b2ljZS1tb2RlIixyKSwhcil7SWUucmVjb3JkaW5nPSExLGdhKCk7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKGkmJiFuLnRlcm1pbmFsSW50ZXJhY3RpdmUpdHJ5e2kuZm9jdXMoe3ByZXZlbnRTY3JvbGw6ITB9KX1jYXRjaHt9fX19ZnVuY3Rpb24gSHQoZSl7aWYoZSl7dmFyIHQ9MzYscj0xMjAsaT1TcigpO2lmKCFlLnZhbHVlfHxlLnZhbHVlLnRyaW0oKT09PSIiKXtlLnN0eWxlLmhlaWdodD10KyJweCIsZS5zdHlsZS5taW5IZWlnaHQ9dCsicHgiLGUuc3R5bGUub3ZlcmZsb3dZPWk/ImF1dG8iOiJoaWRkZW4iLGUuc2Nyb2xsVG9wPTAsU2koZSk7cmV0dXJufXZhciBhPWUuc3R5bGUub3ZlcmZsb3dZO2Uuc3R5bGUub3ZlcmZsb3dZPSJoaWRkZW4iLGUuc3R5bGUuaGVpZ2h0PXQrInB4Ijt2YXIgdT1lLnNjcm9sbEhlaWdodCxzPU1hdGgubWF4KHQsTWF0aC5taW4odSxyKSksbz11PnI7ZS5zdHlsZS5oZWlnaHQ9cysicHgiLGUuc3R5bGUubWluSGVpZ2h0PXQrInB4IixlLnN0eWxlLm92ZXJmbG93WT1vfHxpPyJhdXRvIjoiaGlkZGVuIixvP3lpKGUpOmUuc2Nyb2xsVG9wPTAsU2koZSl9fWZ1bmN0aW9uIGtmKCl7aWYoIW4uc2VsZWN0ZWRJZClyZXR1cm4hMTt2YXIgZT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odCl7cmV0dXJuIHQuaWQ9PT1uLnNlbGVjdGVkSWR9KTtyZXR1cm4gdWUoZSk/ISEoZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0KTohIWUmJmUuc3RhdHVzPT09InJ1bm5pbmcifXZhciB3cj0hMTtmdW5jdGlvbiB5YSgpe3JldHVybiBuLnNlc3Npb25zLnNvbWUoZnVuY3Rpb24oZSl7cmV0dXJuIHVlKGUpPyEhKGUuc3RydWN0dXJlZFN0YXRlJiZlLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCkmJiFlLmFyY2hpdmVkOmUuc3RhdHVzPT09InJ1bm5pbmciJiYhZS5hcmNoaXZlZH0pfWZ1bmN0aW9uIE9zKGUpe2lmKG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPj0xMCl7aygiXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHU1REYyXHU2RUUxXHVGRjA4XHU2NzAwXHU1OTFBIDEwIFx1Njc2MVx1RkYwOVx1RkYwQ1x1OEJGN1x1N0I0OVx1NUY4NVx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NUI4Q1x1NjIxMFx1MzAwMiIsIndhcm5pbmciKTtyZXR1cm59dmFyIHQ9ImNzcS0iK0RhdGUubm93KCkrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsOCk7bi5jcm9zc1Nlc3Npb25RdWV1ZS5wdXNoKHtpZDp0LHRleHQ6ZSxjd2Q6ZXQoKSxtb2RlOm4uY2hhdE1vZGV8fCJtYW5hZ2VkIix0b29sOmh0KCkscXVldWVkQXQ6RGF0ZS5ub3coKX0pLFl0KCksRHQoKX1mdW5jdGlvbiBBZihlKXt3cnx8KHdyPSEwLGZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7Y29tbWFuZDplLnRvb2wsY3dkOmUuY3dkLG1vZGU6ZS5tb2RlLGluaXRpYWxJbnB1dDplLnRleHR9KSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHdyPSExLHQuZXJyb3I/KGsodC5lcnJvciwiZXJyb3IiKSxuLmNyb3NzU2Vzc2lvblF1ZXVlLnVuc2hpZnQoZSksWXQoKSxEdCgpLG51bGwpOmNuKHQpfSkuY2F0Y2goZnVuY3Rpb24odCl7d3I9ITEsayh0JiZ0Lm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTYzOTJcdTk2MUZcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLG4uY3Jvc3NTZXNzaW9uUXVldWUudW5zaGlmdChlKSxZdCgpLER0KCl9KSl9ZnVuY3Rpb24geGYoZSl7dmFyIHQ9bi5jcm9zc1Nlc3Npb25RdWV1ZS5maW5kSW5kZXgoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1lfSk7aWYoISh0PDApKXt2YXIgcj1uLmNyb3NzU2Vzc2lvblF1ZXVlLnNwbGljZSh0LDEpWzBdO1l0KCksRHQoKSxmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe2NvbW1hbmQ6ci50b29sLGN3ZDpyLmN3ZCxtb2RlOnIubW9kZSxpbml0aWFsSW5wdXQ6ci50ZXh0fSkpfSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmVycm9yPyhrKGkuZXJyb3IsImVycm9yIiksbi5jcm9zc1Nlc3Npb25RdWV1ZS5zcGxpY2UodCwwLHIpLFl0KCksRHQoKSxudWxsKTpjbihpKX0pLmNhdGNoKGZ1bmN0aW9uKGkpe2soaSYmaS5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4XHU2MzkyXHU5NjFGXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxuLmNyb3NzU2Vzc2lvblF1ZXVlLnNwbGljZSh0LDAsciksWXQoKSxEdCgpfSl9fWZ1bmN0aW9uIFNmKGUpe3ZhciB0PW4uY3Jvc3NTZXNzaW9uUXVldWUuZmluZEluZGV4KGZ1bmN0aW9uKHIpe3JldHVybiByLmlkPT09ZX0pO3Q8MHx8KG4uY3Jvc3NTZXNzaW9uUXVldWUuc3BsaWNlKHQsMSksWXQoKSxEdCgpLG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPT09MCYmaygiXHU2MzkyXHU5NjFGXHU1REYyXHU2RTA1XHU3QTdBXHUzMDAyIiwiaW5mbyIpKX1mdW5jdGlvbiBkaSgpe2lmKG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoIT09MCYmIXlhKCkmJiF3cil7dmFyIGU9bi5jcm9zc1Nlc3Npb25RdWV1ZS5zaGlmdCgpO0R0KCksQWYoZSl9fWZ1bmN0aW9uIFBzKGUpe3ZhciB0PU1hdGguZmxvb3IoKERhdGUubm93KCktZSkvMWUzKTtpZih0PDYwKXJldHVybiB0KyJzIjt2YXIgcj1NYXRoLmZsb29yKHQvNjApO3JldHVybiByPDYwP3IrIm0iOk1hdGguZmxvb3Ioci82MCkrImgifWZ1bmN0aW9uIER0KCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmNyb3NzLXNlc3Npb24tcXVldWUiKSx0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpLHI9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnN0cnVjdHVyZWQtc3RhdHVzLWJhciIpLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpO2lmKG4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPT09MCl7ZSYmZS5yZW1vdmUoKSxZdCgpO3JldHVybn12YXIgdT10JiYhdC5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpLHM9dT90OmEsbz11P3J8fGk6bnVsbDtpZihzKXtlJiZlLnBhcmVudE5vZGUhPT1zJiYoZS5yZW1vdmUoKSxlPW51bGwpLGU/dSYmbyYmZS5uZXh0U2libGluZyE9PW8mJnMuaW5zZXJ0QmVmb3JlKGUsbyk6KGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksZS5jbGFzc05hbWU9ImNyb3NzLXNlc3Npb24tcXVldWUiLG8/cy5pbnNlcnRCZWZvcmUoZSxvKTpzLmFwcGVuZENoaWxkKGUpKTt2YXIgbD1uLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aCxjPW4uY3Jvc3NTZXNzaW9uUXVldWUubWFwKGZ1bmN0aW9uKGQsdil7dmFyIGc9ZC50ZXh0Lmxlbmd0aD42MD9kLnRleHQuc2xpY2UoMCw2MCkrIlx1MjAyNiI6ZC50ZXh0LGg9UHMoZC5xdWV1ZWRBdCk7cmV0dXJuJzxkaXYgY2xhc3M9InF1ZXVlLWl0ZW0iIGRhdGEtcXVldWUtaWQ9IicrcChkLmlkKSsnIj48c3BhbiBjbGFzcz0icXVldWUtaXRlbS1kb3QiPjwvc3Bhbj48c3BhbiBjbGFzcz0icXVldWUtaXRlbS10ZXh0IiB0aXRsZT0iJytwKGQudGV4dCkrJyI+JytwKGcpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InF1ZXVlLWl0ZW0tYWdlIj4nK2grJzwvc3Bhbj48YnV0dG9uIGNsYXNzPSJxdWV1ZS1pdGVtLXNlbmQtbm93IiBkYXRhLXF1ZXVlLWlkPSInK3AoZC5pZCkrJyIgdGl0bGU9Ilx1N0FDQlx1NTM3M1x1NTNEMVx1OTAwMSIgdHlwZT0iYnV0dG9uIj5cdTUzRDFcdTkwMDE8L2J1dHRvbj48YnV0dG9uIGNsYXNzPSJxdWV1ZS1pdGVtLWNhbmNlbCIgZGF0YS1xdWV1ZS1pZD0iJytwKGQuaWQpKyciIHRpdGxlPSJcdTUzRDZcdTZEODgiIHR5cGU9ImJ1dHRvbiI+XHhENzwvYnV0dG9uPjwvZGl2Pid9KS5qb2luKCIiKSxmPWw+MT8nPGRpdiBjbGFzcz0icXVldWUtaGVhZGVyIj48c3BhbiBjbGFzcz0icXVldWUtaGVhZGVyLWxhYmVsIj5cdTYzOTJcdTk2MUYgJytsKycgXHU2NzYxPC9zcGFuPjxidXR0b24gY2xhc3M9InF1ZXVlLWhlYWRlci1jbGVhciIgaWQ9InF1ZXVlLWNsZWFyLWFsbCIgdHlwZT0iYnV0dG9uIiB0aXRsZT0iXHU2RTA1XHU3QTdBXHU2MzkyXHU5NjFGIj5cdTZFMDVcdTdBN0E8L2J1dHRvbj48L2Rpdj4nOiIiO2UuaW5uZXJIVE1MPWYrY319c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtpZihuLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD4wKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIucXVldWUtaXRlbS1hZ2UiKTtuLmNyb3NzU2Vzc2lvblF1ZXVlLmZvckVhY2goZnVuY3Rpb24odCxyKXtlW3JdJiYoZVtyXS50ZXh0Q29udGVudD1Qcyh0LnF1ZXVlZEF0KSl9KSxkaSgpfX0sNWUzKSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oZSl7dmFyIHQ9ZS50YXJnZXQ7aWYodC5jbG9zZXN0KCIjcXVldWUtY2xlYXItYWxsIikpe2UucHJldmVudERlZmF1bHQoKSxuLmNyb3NzU2Vzc2lvblF1ZXVlPVtdLFl0KCksRHQoKSxrKCJcdTYzOTJcdTk2MUZcdTVERjJcdTZFMDVcdTdBN0FcdTMwMDIiLCJpbmZvIik7cmV0dXJufXZhciByPXQuY2xvc2VzdCgiLnF1ZXVlLWl0ZW0tc2VuZC1ub3ciKTtpZihyKXtlLnByZXZlbnREZWZhdWx0KCkseGYoci5kYXRhc2V0LnF1ZXVlSWQpO3JldHVybn12YXIgaT10LmNsb3Nlc3QoIi5xdWV1ZS1pdGVtLWNhbmNlbCIpO2lmKGkpe2UucHJldmVudERlZmF1bHQoKSxTZihpLmRhdGFzZXQucXVldWVJZCk7cmV0dXJufX0pO2Z1bmN0aW9uIHFzKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndlbGNvbWUtaW5wdXQiKSx0PWU/ZS52YWx1ZS50cmltKCk6IiI7aWYodCl7aWYoeWEoKSl7ZS52YWx1ZT0iIixPcyh0KSxrKCJcdTVERjJcdTYzOTJcdTk2MUZcdUZGMENcdTVDMDZcdTU3MjhcdTVGNTNcdTUyNERcdTRGMUFcdThCRERcdTVCOENcdTYyMTBcdTU0MEVcdTgxRUFcdTUyQThcdTUzRDFcdTkwMDFcdTMwMDIiLCJpbmZvIik7cmV0dXJufXZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzIik7ciYmci5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLnZhbHVlPSIiLGUucGxhY2Vob2xkZXI9Ilx1NkI2M1x1NTcyOFx1NTQyRlx1NTJBOFx1MjAyNiIsZS5kaXNhYmxlZD0hMDt2YXIgaT1uLmNoYXRNb2RlfHwibWFuYWdlZCIsYT1ldCgpLHU9aHQoKTtmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe2NvbW1hbmQ6dSxwcm92aWRlcjp1LGN3ZDphLG1vZGU6aSxpbml0aWFsSW5wdXQ6dH0pKX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpfSkudGhlbihmdW5jdGlvbihzKXtpZihzLmVycm9yKXtrKHMuZXJyb3IsImVycm9yIiksZS5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIixlLmRpc2FibGVkPSExO3JldHVybn1uLnNlbGVjdGVkSWQ9cy5pZCx5ZSgpLG4uZHJhZnRzW3MuaWRdPSIiLEJ0KCksWihzKSxwZSgpLENyKHMuaWQpLExuKHMuaWQpLHZuKHMuaWQpLnRoZW4oZnVuY3Rpb24oKXtlLnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLGUuZGlzYWJsZWQ9ITEsanQoITApfSl9KS5jYXRjaChmdW5jdGlvbihzKXtrKHMmJnMubWVzc2FnZXx8KHU9PT0iY29kZXgiPyJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQTggQ29kZXggXHU0RjFBXHU4QkREXHUzMDAyIjoiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4IENsYXVkZSBcdTRGMUFcdThCRERcdTMwMDIiKSwiZXJyb3IiKSxlLnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLGUuZGlzYWJsZWQ9ITF9KX19ZnVuY3Rpb24gSWYoZSl7ZT1lfHx7fTt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid2VsY29tZS1pbnB1dCIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLGk9dCYmdC52YWx1ZS50cmltKCk/dC52YWx1ZS50cmltKCk6cj9yLnZhbHVlLnRyaW0oKToiIjtpZihuLnNlbGVjdGVkSWQpe2kmJkhzKGUpO3JldHVybn1pZihpJiZ5YSgpKXtyJiYoci52YWx1ZT0iIiksdCYmKHQudmFsdWU9IiIpLFNpKHIpLE9zKGkpLGsoIlx1NURGMlx1NjM5Mlx1OTYxRlx1RkYwQ1x1NUMwNlx1NTcyOFx1NUY1M1x1NTI0RFx1NEYxQVx1OEJERFx1NUI4Q1x1NjIxMFx1NTQwRVx1ODFFQVx1NTJBOFx1NTNEMVx1OTAwMVx1MzAwMiIsImluZm8iKTtyZXR1cm59dmFyIGE9bi5jaGF0TW9kZXx8Im1hbmFnZWQiLHU9ZXQoKSxzPWh0KCk7ZmV0Y2goIi9hcGkvY29tbWFuZHMiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KGZ0KHtjb21tYW5kOnMscHJvdmlkZXI6cyxjd2Q6dSxtb2RlOmEsaW5pdGlhbElucHV0Oml8fHZvaWQgMH0pKX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uanNvbigpfSkudGhlbihmdW5jdGlvbihvKXtyZXR1cm4gby5lcnJvcj8oayhvLmVycm9yLCJlcnJvciIpLG51bGwpOihuLnNlbGVjdGVkSWQ9by5pZCx5ZSgpLG4uZHJhZnRzW28uaWRdPSIiLEJ0KCksciYmKHIudmFsdWU9IiIpLHQmJih0LnZhbHVlPSIiKSxaKG8pLHBlKCksQ3Ioby5pZCksTG4oby5pZCksdm4oby5pZCkpfSkuY2F0Y2goZnVuY3Rpb24obyl7ayhvJiZvLm1lc3NhZ2V8fChzPT09ImNvZGV4Ij8iXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4IENvZGV4IFx1NEYxQVx1OEJERFx1MzAwMiI6Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU0RjFBXHU4QkREXHUzMDAyIiksImVycm9yIil9KX1mdW5jdGlvbiBDcihlKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odil7cmV0dXJuIHYuaWQ9PT1lfSkscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0IiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RvcC1idXR0b24iKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0ZXJtaW5hbC10aXRsZSIpLG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLWluZm8iKSxsPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5zZXNzaW9uLXN1bW1hcnktdmFsdWUiKSxjPXVlKHQpO3ImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksaSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLGMpLGEmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksYz9uLmN1cnJlbnRWaWV3PSJjaGF0IjpuLmN1cnJlbnRWaWV3PSJ0ZXJtaW5hbCI7dmFyIGY9dD9Jcih0LmNvbW1hbmQpOiJXYW5kIixkPXQ/Y3IodCk6Ilx1NUYwMFx1NTlDQlx1NUJGOVx1OEJERCI7cyYmKHMudGV4dENvbnRlbnQ9ZiksbyYmKG8udGV4dENvbnRlbnQ9ZCksbCYmKGwudGV4dENvbnRlbnQ9ZiksY3x8bi50ZXJtaW5hbHx8WW4oKSxraSgpLGp0KCEwKSxjfHxpdCgidmlldy1zd2l0Y2giLHtmb3JjZVJlcGxheTohMH0pfWZ1bmN0aW9uIEhzKGUpe2U9ZXx8e307dmFyIHQ9ISFlLmludGVycnVwdDtpZihuLnRlcm1pbmFsSW50ZXJhY3RpdmUpcmV0dXJuIGsoIlx1N0VDOFx1N0FFRlx1NEVBNFx1NEU5Mlx1NkEyMVx1NUYwRlx1NUYwMFx1NTQyRlx1NjVGNlx1RkYwQ1x1OEJGN1x1NzZGNFx1NjNBNVx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1OEY5M1x1NTE2NVx1MzAwMiIsImluZm8iKSxQcm9taXNlLnJlc29sdmUoKTt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksaT1yP3IudmFsdWU6IiIsYT1OdCgpLHU9bi5wZW5kaW5nQXR0YWNobWVudHMubGVuZ3RoPjA7aWYoaXx8dSl7dmFyIHM9dSYmbi5zZWxlY3RlZElkP0RtKG4uc2VsZWN0ZWRJZCkuY2F0Y2goZnVuY3Rpb24obyl7aygiXHU5NjQ0XHU0RUY2XHU0RTBBXHU0RjIwXHU1OTMxXHU4RDI1OiAiKyhvJiZvLm1lc3NhZ2V8fG8pLCJlcnJvciIpO3ZhciBsPW8gaW5zdGFuY2VvZiBFcnJvcj9vOm5ldyBFcnJvcihTdHJpbmcobykpO3Rocm93IGwuX193YW5kVG9hc3RlZD0hMCxsfSk6UHJvbWlzZS5yZXNvbHZlKFtdKTtyZXR1cm4gcy50aGVuKGZ1bmN0aW9uKG8pe3ZhciBsPWttKG8pLGM9bCsoaXx8KG8ubGVuZ3RoPyJcdThCRjdcdTY3RTVcdTc3MEJcdTk2NDRcdTRFRjZcdTMwMDIiOiIiKSk7by5sZW5ndGgmJkJtKCk7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MiKTtpZihmJiZmLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHVlKGEpKXJldHVybiBUZihjLHIsYSx7aW50ZXJydXB0OnR9KTt2YXIgZD1KZihhLGMpLHY9IW4ud3NDb25uZWN0ZWQ7cmV0dXJuIHY/KFhmKGQpLHImJihyLnZhbHVlPSIiLEh0KHIpKSx1dCgiIiksUHJvbWlzZS5yZXNvbHZlKCkpOllmKGEpLnRoZW4oZnVuY3Rpb24oZyl7aWYoIWcpcmV0dXJuIG51bGw7dmFyIGg9bi5jdXJyZW50VmlldztpZihnJiZnLnByb3ZpZGVyPT09ImNvZGV4IiYmbi5zZWxlY3RlZElkIT09Zy5pZCl0aHJvdyBuZXcgRXJyb3IoIkNvZGV4IHNlc3Npb24gY2hhbmdlZCBiZWZvcmUgaW5wdXQgc2VuZC4iKTtyZXR1cm4gR2YoZCwiZW50ZXJfdGV4dCIsMzAsaCkudGhlbihmdW5jdGlvbigpe3ImJnIudmFsdWU9PT1pJiYoci52YWx1ZT0iIixIdChyKSksdXQoIiIpfSl9KS5jYXRjaChmdW5jdGlvbihnKXt0aHJvdyBrKFZzKGcpLCJlcnJvciIpLGcmJihnLl9fd2FuZFRvYXN0ZWQ9ITApLGd9KX0pLmNhdGNoKGZ1bmN0aW9uKG8pe3Rocm93IG8mJm8uX193YW5kVG9hc3RlZHx8ayhWcyhvKSwiZXJyb3IiKSxvfSl9cmV0dXJuIFByb21pc2UucmVzb2x2ZSgpfXZhciBfcz17fSxOcz0zNTA7ZnVuY3Rpb24gVGYoZSx0LHIsaSl7aT1pfHx7fTt2YXIgYT0hIWkuaW50ZXJydXB0O2lmKCFuLnNlbGVjdGVkSWR8fCFlKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTtpZighcilyZXR1cm4gaygiXHU0RjFBXHU4QkREXHU0RTBEXHU1QjU4XHU1NzI4XHVGRjBDXHU4QkY3XHU5MUNEXHU2NUIwXHU5MDA5XHU2MkU5XHU2MjE2XHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxQcm9taXNlLnJlc29sdmUoKTt2YXIgdT1EYXRlLm5vdygpLHM9X3Nbci5pZF18fDA7aWYodS1zPE5zKXJldHVybiBjb25zb2xlLmxvZygiW3dhbmRdIHBvc3RTdHJ1Y3R1cmVkSW5wdXQ6IGR1cGxpY2F0ZSBzdWJtaXQgKHdpdGhpbiAiK05zKyJtcykgaWdub3JlZCBmb3Igc2Vzc2lvbiIsci5pZCksUHJvbWlzZS5yZXNvbHZlKCk7X3Nbci5pZF09dTt2YXIgbz0hIShyLnN0cnVjdHVyZWRTdGF0ZSYmci5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQmJnIuc3RhdHVzPT09InJ1bm5pbmciKSxsPW8mJmEsYz1vJiYhYSxmPXNyKEFycmF5LmlzQXJyYXkoci5tZXNzYWdlcyk/ci5tZXNzYWdlcy5zbGljZSgpOltdKSxkO2lmKGMpe3ZhciB2PUFycmF5LmlzQXJyYXkoci5xdWV1ZWRNZXNzYWdlcyk/ci5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO3YucHVzaChlKSxkPXtpZDpyLmlkLHF1ZXVlZE1lc3NhZ2VzOnZ9LFooZCk7dmFyIGc9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHcpe3JldHVybiB3LmlkPT09ci5pZH0pfHxyO24uY3VycmVudE1lc3NhZ2VzPVZlKGcsYXQoZyxnLm91dHB1dCwhMSkpLEduKCJcdTVERjJcdTUyQTBcdTUxNjVcdTYzOTJcdTk2MUZcdTIwMjYiKSx0dCghMCksb24oKSxrKHYubGVuZ3RoPjE/Ilx1NURGMlx1NTJBMFx1NTE2NVx1NjM5Mlx1OTYxRlx1RkYwOFx1NTE3MSAiK3YubGVuZ3RoKyIgXHU2NzYxXHU3QjQ5XHU1Rjg1XHVGRjA5IjoiXHU1REYyXHU1MkEwXHU1MTY1XHU2MzkyXHU5NjFGXHVGRjBDXHU3QjQ5XHU1RjUzXHU1MjREXHU1NkRFXHU1OTBEXHU1QjhDXHU2MjEwXHU0RjFBXHU4MUVBXHU1MkE4XHU1M0QxXHU5MDAxXHUzMDAyIiwiaW5mbyIpfWVsc2V7dmFyIGg9e3JvbGU6InVzZXIiLGNvbnRlbnQ6W3t0eXBlOiJ0ZXh0Iix0ZXh0OmV9XX07Zi5wdXNoKGgpO3ZhciBtPU9iamVjdC5hc3NpZ24oe30sci5zdHJ1Y3R1cmVkU3RhdGV8fHt9LHtpbkZsaWdodDohMH0pO1ooe2lkOnIuaWQsc3RhdHVzOiJydW5uaW5nIixtZXNzYWdlczpmLHN0cnVjdHVyZWRTdGF0ZTptfSksbi5jdXJyZW50TWVzc2FnZXM9VmUoT2JqZWN0LmFzc2lnbih7fSxyLHtzdGF0dXM6InJ1bm5pbmciLG1lc3NhZ2VzOmYsc3RydWN0dXJlZFN0YXRlOm19KSxmKSxHbihsPyJcdTVERjJcdTRFMkRcdTY1QURcdUZGMENcdTZCNjNcdTU3MjhcdTU5MDRcdTc0MDZcdTY1QjBcdTZEODhcdTYwNkZcdTIwMjYiOiJcdTYwMURcdTgwMDNcdTRFMkRcdTIwMjYiKSx0dCghMCksbCYmaygiXHU1REYyXHU0RTJEXHU2NUFEXHU0RTBBXHU0RTAwXHU2NzYxXHU1NkRFXHU1OTBEXHVGRjBDXHU2QjYzXHU1NzI4XHU1OTA0XHU3NDA2XHU2NUIwXHU2RDg4XHU2MDZGXHUyMDI2IiwiaW5mbyIpfXQmJih0LnZhbHVlPSIiLEh0KHQpKSx1dCgiIik7dmFyIGI9bi5xdWV1ZUVwb2NoLEY9dHlwZW9mIGNyeXB0bzwidSImJmNyeXB0by5yYW5kb21VVUlEP2NyeXB0by5yYW5kb21VVUlEKCk6RGF0ZS5ub3coKS50b1N0cmluZygzNikrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsMTApO3JldHVybiBmZXRjaCgiL2FwaS9zdHJ1Y3R1cmVkLXNlc3Npb25zLyIrci5pZCsiL21lc3NhZ2VzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7aW5wdXQ6ZSxpbnRlcnJ1cHQ6bHx8dm9pZCAwLGlkZW1wb3RlbmN5S2V5OkZ9KX0pLnRoZW4oZnVuY3Rpb24odyl7cmV0dXJuIHcub2s/dy5qc29uKCk6dy5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57ZXJyb3I6Ilx1OEJGN1x1NkM0Mlx1NTkzMVx1OEQyNSJ9fSkudGhlbihmdW5jdGlvbihFKXt2YXIgQT1uZXcgRXJyb3IoRSYmRS5lcnJvcnx8Ilx1NjVFMFx1NkNENVx1NTNEMVx1OTAwMVx1N0VEM1x1Njc4NFx1NTMxNlx1NkQ4OFx1NjA2Rlx1MzAwMiIpO3Rocm93IEEuZXJyb3JDb2RlPUUmJkUuZXJyb3JDb2RlLEEuaHR0cFN0YXR1cz13LnN0YXR1cyxBfSl9KS50aGVuKGZ1bmN0aW9uKHcpe2lmKHcmJncuZXJyb3IpdGhyb3cgbmV3IEVycm9yKHcuZXJyb3IpO2lmKHcmJncuaWQmJihuLnF1ZXVlRXBvY2g+YiYmdy5xdWV1ZWRNZXNzYWdlcyYmZGVsZXRlIHcucXVldWVkTWVzc2FnZXMsWih3KSx3LmlkPT09bi5zZWxlY3RlZElkKSl7dmFyIEU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKEEpe3JldHVybiBBLmlkPT09dy5pZH0pfHx3O24uY3VycmVudE1lc3NhZ2VzPVZlKEUsYXQoRSx3Lm91dHB1dCwhMSkpLHR0KCEwKSxvbigpfX0pLmNhdGNoKGZ1bmN0aW9uKHcpe2lmKHcmJncuZXJyb3JDb2RlPT09ImR1cGxpY2F0ZV9pZGVtcG90ZW5jeV9rZXkiKXtrKHcubWVzc2FnZXx8Ilx1NjhDMFx1NkQ0Qlx1NTIzMFx1OTFDRFx1NTkwRFx1NTNEMVx1OTAwMVx1RkYwQ1x1NURGMlx1NjJFNlx1NjIyQVx1MzAwMiIsIndhcm5pbmciKSxHbigiRW50ZXIgXHU1M0QxXHU5MDAxIFx4QjcgU2hpZnQrRW50ZXIgXHU2MzYyXHU4ODRDIik7cmV0dXJufWlmKGMpe3ZhciBFPUFycmF5LmlzQXJyYXkoci5xdWV1ZWRNZXNzYWdlcyk/ci5xdWV1ZWRNZXNzYWdlcy5zbGljZSgpOltdO2lmKFooe2lkOnIuaWQscXVldWVkTWVzc2FnZXM6RX0pLHIuaWQ9PT1uLnNlbGVjdGVkSWQpe3ZhciBBPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihWKXtyZXR1cm4gVi5pZD09PXIuaWR9KXx8cjtuLmN1cnJlbnRNZXNzYWdlcz1WZShBLGF0KEEsQS5vdXRwdXQsITEpKSx0dCghMCksb24oKX19ZWxzZXt2YXIgeD1mLnNsaWNlKDAsLTEpO1ooe2lkOnIuaWQsc3RhdHVzOnIuc3RhdHVzLG1lc3NhZ2VzOngsc3RydWN0dXJlZFN0YXRlOk9iamVjdC5hc3NpZ24oe30sci5zdHJ1Y3R1cmVkU3RhdGV8fHt9LHtpbkZsaWdodDohMX0pfSksci5pZD09PW4uc2VsZWN0ZWRJZCYmKG4uY3VycmVudE1lc3NhZ2VzPVZlKE9iamVjdC5hc3NpZ24oe30scix7bWVzc2FnZXM6eCxzdHJ1Y3R1cmVkU3RhdGU6T2JqZWN0LmFzc2lnbih7fSxyLnN0cnVjdHVyZWRTdGF0ZXx8e30se2luRmxpZ2h0OiExfSl9KSx4KSx0dCghMCkpfXZhciBJPXcmJncubWVzc2FnZXx8IiIsaj1JPT09IkZhaWxlZCB0byBmZXRjaCJ8fEk9PT0iTmV0d29ya0Vycm9yIHdoZW4gYXR0ZW1wdGluZyB0byBmZXRjaCByZXNvdXJjZS4ifHxJPT09IkxvYWQgZmFpbGVkInx8L2Fib3J0ZWR8YWJvcnRlcnJvcnxuZXR3b3JrZXJyb3J8ZmFpbGVkIHRvIGZldGNoL2kudGVzdChJKTtqfHxrKHcmJncubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTNEMVx1OTAwMVx1N0VEM1x1Njc4NFx1NTMxNlx1NkQ4OFx1NjA2Rlx1MzAwMiIsImVycm9yIiksR24oIkVudGVyIFx1NTNEMVx1OTAwMSBceEI3IFNoaWZ0K0VudGVyIFx1NjM2Mlx1ODg0QyIpfSl9ZnVuY3Rpb24gR24oZSl7dmFyIHQ9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWhpbnQiKTt0JiYodC50ZXh0Q29udGVudD1lKX1mdW5jdGlvbiBvbigpe2t0KCl9dmFyIExmPTEwLGpzPTE4LFJzPTI0MCxCcj0zO2Z1bmN0aW9uIE1mKGUpe2lmKHR5cGVvZiBlIT0ic3RyaW5nIilyZXR1cm4iIjt2YXIgdD1lLnJlcGxhY2UoL1xzKy9nLCIgIikudHJpbSgpO3JldHVybiB0Lmxlbmd0aDw9anM/dDp0LnNsaWNlKDAsanMpKyJcdTIwMjYifWZ1bmN0aW9uIE9mKGUpe2lmKHR5cGVvZiBlIT0ic3RyaW5nIilyZXR1cm4iIjt2YXIgdD1lLnJlcGxhY2UoL1xzKy9nLCIgIikudHJpbSgpO3JldHVybiB0Lmxlbmd0aDw9UnM/dDp0LnNsaWNlKDAsUnMpKyJcdTIwMjYifWZ1bmN0aW9uIF90KCl7cmV0dXJuISFuLnF1ZXVlQmFyRXhwYW5kZWR9ZnVuY3Rpb24gYmEoZSl7aWYoISFuLnF1ZXVlQmFyRXhwYW5kZWQhPSEhZSl7bi5xdWV1ZUJhckV4cGFuZGVkPSEhZTt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIucXVldWUtYmFyIik7dCYmKHQuY2xhc3NMaXN0LnRvZ2dsZSgiZXhwYW5kZWQiLCEhZSksdC5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLGU/InRydWUiOiJmYWxzZSIpKX19ZnVuY3Rpb24gUGYoKXtiYSghX3QoKSl9ZnVuY3Rpb24gcWYoZSx0LHIpe3ZhciBpPWUubGVuZ3RoLGE9InF1ZXVlLWJhciI7ciYmKGErPSIgcXVldWUtYmFyLWNhcGFjaXR5IiksdCYmKGErPSIgcXVldWUtYmFyLWluZmxpZ2h0IiksaT5CciYmKGErPSIgaGFzLW92ZXJmbG93IiksX3QoKSYmKGErPSIgZXhwYW5kZWQiKTtmb3IodmFyIHU9dD8iXHU0RTJEXHU2NUFEXHU1RjUzXHU1MjREXHU1NkRFXHU1OTBEXHVGRjBDXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU4RkQ5XHU2NzYxIjoiXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU4RkQ5XHU2NzYxIixzPSIiLG89X3QoKT9pOk1hdGgubWluKGksQnIpLGw9MDtsPG87bCsrKXt2YXIgYz1lW2xdPT1udWxsPyIiOlN0cmluZyhlW2xdKSxmPV90KCk/T2YoYyk6TWYoYyksZD1jKyhfdCgpPyJcdUZGMDhcdTYzMDlcdTRGNEZcdTUzRUZcdTYyRDZcdTUyQThcdThDMDNcdTVFOEZcdUZGMDkiOiIiKTtzKz0nPGxpIGNsYXNzPSJxdWV1ZS1iYXItaXRlbSIgZGF0YS1pbmRleD0iJytsKyciIHRpdGxlPSInK3AoZCkrJyI+PHNwYW4gY2xhc3M9InF1ZXVlLWJhci1pdGVtLWluZGV4IiBhcmlhLWhpZGRlbj0idHJ1ZSI+JysobCsxKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJxdWV1ZS1iYXItaXRlbS10ZXh0Ij4nK3AoZikrJzwvc3Bhbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InF1ZXVlLWJhci1pdGVtLXByb21vdGUiIGRhdGEtYWN0aW9uPSJwcm9tb3RlLWl0ZW0iIHRpdGxlPSInK3AodSkrJyIgYXJpYS1sYWJlbD0iXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU3QjJDICcrKGwrMSkrJyBcdTY3NjEiPjxzdmcgd2lkdGg9IjExIiBoZWlnaHQ9IjExIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9ImN1cnJlbnRDb2xvciIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik0xMyAyIEw0IDE0IEwxMSAxNCBMMTAgMjIgTDIwIDkgTDEzIDkgWiIvPjwvc3ZnPjwvYnV0dG9uPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icXVldWUtYmFyLWl0ZW0tZGVsZXRlIiBkYXRhLWFjdGlvbj0iZGVsZXRlIiBhcmlhLWxhYmVsPSJcdTUyMjBcdTk2NjRcdTdCMkMgJysobCsxKSsnIFx1Njc2MVx1NjM5Mlx1OTYxRlx1NkQ4OFx1NjA2RiIgdGl0bGU9Ilx1NTIyMFx1OTY2NCI+PHN2ZyB3aWR0aD0iMTEiIGhlaWdodD0iMTEiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi42IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48bGluZSB4MT0iNiIgeTE9IjYiIHgyPSIxOCIgeTI9IjE4Ii8+PGxpbmUgeDE9IjYiIHkxPSIxOCIgeDI9IjE4IiB5Mj0iNiIvPjwvc3ZnPjwvYnV0dG9uPjwvbGk+J312YXIgdj0iIjshX3QoKSYmaT5CciYmKHY9JzxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icXVldWUtYmFyLW92ZXJmbG93IiBkYXRhLWFjdGlvbj0iZXhwYW5kIiB0aXRsZT0iXHU1QzU1XHU1RjAwXHU1MjY5XHU0RjU5ICcrKGktQnIpKycgXHU2NzYxIiBhcmlhLWxhYmVsPSJcdTVDNTVcdTVGMDBcdTUyNjlcdTRGNTlcdTYzOTJcdTk2MUZcdTZEODhcdTYwNkYiPisnKyhpLUJyKSsiPC9idXR0b24+Iik7dmFyIGc9IiI7cmV0dXJuIF90KCkmJihnPSc8ZGl2IGNsYXNzPSJxdWV1ZS1iYXItYWN0aW9ucyI+PHNwYW4gY2xhc3M9InF1ZXVlLWJhci1hY3Rpb25zLWhpbnQiPicraSsnIFx1Njc2MVx1NjM5Mlx1OTYxRiBceEI3IFx1NzBCOVx1NTFGQlx1NkMxNFx1NkNFMVx1NTNFRlx1NjJENlx1NTJBOFx1OEMwM1x1NUU4Rjwvc3Bhbj48YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InF1ZXVlLWJhci1jbGVhci1hbGwiIGRhdGEtYWN0aW9uPSJjbGVhci1hbGwiIHRpdGxlPSJcdTZFMDVcdTdBN0FcdTUxNjhcdTkwRThcdTYzOTJcdTk2MUYiIGFyaWEtbGFiZWw9Ilx1NkUwNVx1N0E3QVx1NTE2OFx1OTBFOCAnK2krJyBcdTY3NjFcdTYzOTJcdTk2MUZcdTZEODhcdTYwNkYiPlx1NTE2OFx1OTBFOFx1NkUwNVx1N0E3QTwvYnV0dG9uPjwvZGl2PicpLCc8ZGl2IGNsYXNzPSInK2ErJyIgZGF0YS1xdWV1ZS1iYXI9IjEiIGFyaWEtZXhwYW5kZWQ9IicrKF90KCk/InRydWUiOiJmYWxzZSIpKyciIHRpdGxlPSInKyhfdCgpPyJcdTYzOTJcdTk2MUYgIitpKyIgXHU2NzYxIjoiXHU3MEI5XHU1MUZCXHU1QzU1XHU1RjAwXHU2MzkyXHU5NjFGXHVGRjA4IitpKyIgXHU2NzYxXHVGRjA5IikrJyI+PG9sIGNsYXNzPSJxdWV1ZS1iYXItbGlzdCIgZGF0YS1xdWV1ZS1saXN0PSIxIj4nK3MrdisiPC9vbD4iK2crIjwvZGl2PiJ9ZnVuY3Rpb24ga3QoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVldWUtYmFyLWhvc3QiKTtpZihlKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24ocyl7cmV0dXJuIHMuaWQ9PT1uLnNlbGVjdGVkSWR9KSxyPXQmJnQuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIsaT1yP2ppKHQpOltdO2lmKGk9QXJyYXkuaXNBcnJheShpKT9pOltdLCFyfHxpLmxlbmd0aD09PTApe2UuaGlkZGVuPSEwLGUuaW5uZXJIVE1MPSIiLG4ucXVldWVCYXJFeHBhbmRlZD0hMTtyZXR1cm59aWYoIW4ucXVldWVCYXJEcmFnKXtlLmhpZGRlbj0hMTt2YXIgYT0hISh0LnN0cnVjdHVyZWRTdGF0ZSYmdC5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQmJnQuc3RhdHVzPT09InJ1bm5pbmciKSx1PWkubGVuZ3RoPj1MZjtlLmlubmVySFRNTD1xZihpLGEsdSl9fX1mdW5jdGlvbiBmaShlLHQpe1ooe2lkOmUuaWQscXVldWVkTWVzc2FnZXM6dH0pO3ZhciByPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihpKXtyZXR1cm4gaS5pZD09PWUuaWR9KXx8ZTtuLmN1cnJlbnRNZXNzYWdlcz1WZShyLGF0KHIsci5vdXRwdXQsITEpKSx0dCghMCksa3QoKX1mdW5jdGlvbiBIZihlKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24ocyl7cmV0dXJuIHMuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZih0KXt2YXIgcj1BcnJheS5pc0FycmF5KHQucXVldWVkTWVzc2FnZXMpP3QucXVldWVkTWVzc2FnZXMuc2xpY2UoKTpbXTtpZighKGU8MHx8ZT49ci5sZW5ndGgpKXt2YXIgaT1yLnNsaWNlKCksYT1yLnNsaWNlKDAsZSkuY29uY2F0KHIuc2xpY2UoZSsxKSk7Wih7aWQ6dC5pZCxxdWV1ZWRNZXNzYWdlczphfSk7dmFyIHU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09dC5pZH0pfHx0O24uY3VycmVudE1lc3NhZ2VzPVZlKHUsYXQodSx1Lm91dHB1dCwhMSkpLHR0KCEwKSxrdCgpLGZldGNoKCIvYXBpL3N0cnVjdHVyZWQtc2Vzc2lvbnMvIit0LmlkKyIvcXVldWVkLyIrZSx7bWV0aG9kOiJERUxFVEUiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHMpe2lmKCFzLm9rKXJldHVybiBzLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt9fSkudGhlbihmdW5jdGlvbihvKXt0aHJvdyBuZXcgRXJyb3IobyYmby5lcnJvcnx8Ilx1NTIyMFx1OTY2NFx1NTkzMVx1OEQyNSIpfSl9KS5jYXRjaChmdW5jdGlvbihzKXtmaSh0LGkpLGsocyYmcy5tZXNzYWdlfHwiXHU1MjIwXHU5NjY0XHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHU1OTMxXHU4RDI1XHUzMDAyIiwiZXJyb3IiKX0pfX19ZnVuY3Rpb24gX2YoKXt2YXIgZT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZihlKXt2YXIgdD1BcnJheS5pc0FycmF5KGUucXVldWVkTWVzc2FnZXMpP2UucXVldWVkTWVzc2FnZXMuc2xpY2UoKTpbXTtpZih0Lmxlbmd0aCE9PTApe24ucXVldWVCYXJFeHBhbmRlZD0hMSxaKHtpZDplLmlkLHF1ZXVlZE1lc3NhZ2VzOltdfSk7dmFyIHI9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGkpe3JldHVybiBpLmlkPT09ZS5pZH0pfHxlO24uY3VycmVudE1lc3NhZ2VzPVZlKHIsYXQocixyLm91dHB1dCwhMSkpLHR0KCEwKSxrdCgpLGZldGNoKCIvYXBpL3N0cnVjdHVyZWQtc2Vzc2lvbnMvIitlLmlkKyIvcXVldWVkIix7bWV0aG9kOiJERUxFVEUiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKCFpLm9rKXJldHVybiBpLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybnt9fSkudGhlbihmdW5jdGlvbihhKXt0aHJvdyBuZXcgRXJyb3IoYSYmYS5lcnJvcnx8Ilx1NkUwNVx1N0E3QVx1NTkzMVx1OEQyNSIpfSk7aygiXHU1REYyXHU2RTA1XHU3QTdBICIrdC5sZW5ndGgrIiBcdTY3NjFcdTYzOTJcdTk2MUZcdTZEODhcdTYwNkZcdTMwMDIiLCJpbmZvIil9KS5jYXRjaChmdW5jdGlvbihpKXtmaShlLHQpLGsoaSYmaS5tZXNzYWdlfHwiXHU2RTA1XHU3QTdBXHU2MzkyXHU5NjFGXHU2RDg4XHU2MDZGXHU1OTMxXHU4RDI1XHUzMDAyIiwiZXJyb3IiKX0pfX19ZnVuY3Rpb24gTmYoZSl7dmFyIHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGMpe3JldHVybiBjLmlkPT09bi5zZWxlY3RlZElkfSk7aWYodCl7dmFyIHI9QXJyYXkuaXNBcnJheSh0LnF1ZXVlZE1lc3NhZ2VzKT90LnF1ZXVlZE1lc3NhZ2VzLnNsaWNlKCk6W107aWYoIShlPDB8fGU+PXIubGVuZ3RoKSl7dmFyIGk9cltlXSxhPXIuc2xpY2UoMCxlKS5jb25jYXQoci5zbGljZShlKzEpKSx1PXIuc2xpY2UoKSxzPSEhKHQuc3RydWN0dXJlZFN0YXRlJiZ0LnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmdC5zdGF0dXM9PT0icnVubmluZyIpO2EubGVuZ3RoPT09MCYmKG4ucXVldWVCYXJFeHBhbmRlZD0hMSksWih7aWQ6dC5pZCxxdWV1ZWRNZXNzYWdlczphfSk7dmFyIG89dHlwZW9mIGNyeXB0bzwidSImJmNyeXB0by5yYW5kb21VVUlEP2NyeXB0by5yYW5kb21VVUlEKCk6RGF0ZS5ub3coKS50b1N0cmluZygzNikrIi0iK01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsMTApLGw9e2lucHV0OmksaWRlbXBvdGVuY3lLZXk6b307cyYmKGwuaW50ZXJydXB0PSEwLGwucHJlc2VydmVRdWV1ZT0hMCksayhzPyJcdTVERjJcdThCRjdcdTZDNDJcdTRFMkRcdTY1QURcdTVGNTNcdTUyNERcdTU2REVcdTU5MERcdUZGMENcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdThGRDlcdTY3NjFcdTMwMDIiOiJcdTVERjJcdTdBQ0JcdTUzNzNcdTUzRDFcdTkwMDFcdThGRDlcdTY3NjFcdTZEODhcdTYwNkZcdTMwMDIiLCJpbmZvIiksZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK3QuaWQrIi9tZXNzYWdlcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkobCl9KS50aGVuKGZ1bmN0aW9uKGMpe3JldHVybiBjLm9rP2MuanNvbigpOmMuanNvbigpLmNhdGNoKGZ1bmN0aW9uKCl7cmV0dXJue319KS50aGVuKGZ1bmN0aW9uKGYpe3Rocm93IG5ldyBFcnJvcihmJiZmLmVycm9yfHwiXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU1OTMxXHU4RDI1Iil9KX0pLnRoZW4oZnVuY3Rpb24oYyl7aWYoYyYmYy5pZCYmKFooYyksYy5pZD09PW4uc2VsZWN0ZWRJZCkpe3ZhciBmPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZD09PWMuaWR9KXx8YztuLmN1cnJlbnRNZXNzYWdlcz1WZShmLGF0KGYsYy5vdXRwdXQsITEpKSx0dCghMCksa3QoKX19KS5jYXRjaChmdW5jdGlvbihjKXtmaSh0LHUpLGsoYyYmYy5tZXNzYWdlfHwiXHU3QUNCXHU1MzczXHU1M0QxXHU5MDAxXHU1OTMxXHU4RDI1XHUzMDAyIiwiZXJyb3IiKX0pfX19ZnVuY3Rpb24gamYoZSx0KXt2YXIgcj1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZCl7cmV0dXJuIGQuaWQ9PT1uLnNlbGVjdGVkSWR9KTtpZihyKXt2YXIgaT1BcnJheS5pc0FycmF5KHIucXVldWVkTWVzc2FnZXMpP3IucXVldWVkTWVzc2FnZXMuc2xpY2UoKTpbXTtpZighKGkubGVuZ3RoPD0xKSYmdCl7dmFyIGE9dC5wYXJlbnRFbGVtZW50O2lmKGEpe3ZhciB1PU51bWJlcih0LmdldEF0dHJpYnV0ZSgiZGF0YS1pbmRleCIpKSxzPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGEuY2hpbGRyZW4pLG89cy5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9KSxsPTM7by5sZW5ndGg+PTImJihsPU1hdGgubWF4KDAsb1sxXS50b3Atb1swXS50b3Atb1swXS5oZWlnaHQpKSxlLnByZXZlbnREZWZhdWx0KCk7dHJ5e3Quc2V0UG9pbnRlckNhcHR1cmUoZS5wb2ludGVySWQpfWNhdGNoe31pZihuYXZpZ2F0b3ImJm5hdmlnYXRvci52aWJyYXRlKXRyeXtuYXZpZ2F0b3IudmlicmF0ZSg4KX1jYXRjaHt9bi5xdWV1ZUJhckRyYWc9e3BvaW50ZXJJZDplLnBvaW50ZXJJZCxoYW5kbGVFbDp0LGl0ZW1FbDp0LGxpc3RFbDphLHNpYmxpbmdzOnMscmVjdHM6byxvcmlnSW5kZXg6dSx0YXJnZXRJbmRleDp1LHN0YXJ0WTplLmNsaWVudFksZ2FwOmwscXVldWVTbmFwc2hvdDppfSx0LmNsYXNzTGlzdC5hZGQoImRyYWdnaW5nIikscy5mb3JFYWNoKGZ1bmN0aW9uKGQpe2QhPT10JiZkLmNsYXNzTGlzdC5hZGQoInF1ZXVlLWJhci1pdGVtLXNsaWRpbmciKX0pO3ZhciBjPWZ1bmN0aW9uKGQpe1dmKGQpfSxmPWZ1bmN0aW9uKGQpe3pmKGQpfTtuLnF1ZXVlQmFyRHJhZy5tb3ZlSGFuZGxlcj1jLG4ucXVldWVCYXJEcmFnLnVwSGFuZGxlcj1mLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcm1vdmUiLGMpLHQuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcnVwIixmKSx0LmFkZEV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLGYpfX19fWZ1bmN0aW9uIFJmKGUsdCxyLGkpe2Zvcih2YXIgYT1yLmxlbmd0aCx1PVtdLHM9MDtzPGE7cysrKXUucHVzaChzKTt1LnNwbGljZShlLDEpLHUuc3BsaWNlKHQsMCxlKTtmb3IodmFyIG89clswXS50b3AsbD1yWzBdLnRvcCxjPTE7YzxhO2MrKylyW2NdLnRvcDxsJiYobD1yW2NdLnRvcCk7Zm9yKHZhciBmPXt9LGQ9bCx2PTA7djxhO3YrKyl7dmFyIGc9dVt2XTtmW2ddPWQsZCs9cltnXS5oZWlnaHQraX1yZXR1cm4gZn1mdW5jdGlvbiBXZihlKXt2YXIgdD1uLnF1ZXVlQmFyRHJhZztpZighKCF0fHxlLnBvaW50ZXJJZCE9PXQucG9pbnRlcklkKSl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciByPWUuY2xpZW50WS10LnN0YXJ0WTt0Lml0ZW1FbC5zdHlsZS50cmFuc2Zvcm09InRyYW5zbGF0ZVkoIityKyJweCkiO2Zvcih2YXIgaT10LnJlY3RzW3Qub3JpZ0luZGV4XS50b3ArdC5yZWN0c1t0Lm9yaWdJbmRleF0uaGVpZ2h0LzIrcixhPXQub3JpZ0luZGV4LHU9MDt1PHQucmVjdHMubGVuZ3RoO3UrKylpZih1IT09dC5vcmlnSW5kZXgpe3ZhciBzPXQucmVjdHNbdV0udG9wK3QucmVjdHNbdV0uaGVpZ2h0LzI7dTx0Lm9yaWdJbmRleCYmaTxzP2E9TWF0aC5taW4oYSx1KTp1PnQub3JpZ0luZGV4JiZpPnMmJihhPU1hdGgubWF4KGEsdSkpfWlmKGEhPT10LnRhcmdldEluZGV4KXt0LnRhcmdldEluZGV4PWE7dmFyIG89UmYodC5vcmlnSW5kZXgsYSx0LnJlY3RzLHQuZ2FwKTt0LnNpYmxpbmdzLmZvckVhY2goZnVuY3Rpb24obCxjKXtpZihjIT09dC5vcmlnSW5kZXgpe3ZhciBmPW9bY10tdC5yZWN0c1tjXS50b3A7bC5zdHlsZS50cmFuc2Zvcm09Zj8idHJhbnNsYXRlWSgiK2YrInB4KSI6IiJ9fSl9fX1mdW5jdGlvbiB6ZihlKXt2YXIgdD1uLnF1ZXVlQmFyRHJhZztpZighKCF0fHxlJiZlLnBvaW50ZXJJZCE9PXQucG9pbnRlcklkKSl7dHJ5e3QuaGFuZGxlRWwucmVsZWFzZVBvaW50ZXJDYXB0dXJlKHQucG9pbnRlcklkKX1jYXRjaHt9dC5oYW5kbGVFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVybW92ZSIsdC5tb3ZlSGFuZGxlciksdC5oYW5kbGVFbC5yZW1vdmVFdmVudExpc3RlbmVyKCJwb2ludGVydXAiLHQudXBIYW5kbGVyKSx0LmhhbmRsZUVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoInBvaW50ZXJjYW5jZWwiLHQudXBIYW5kbGVyKTt2YXIgcj10Lm9yaWdJbmRleCxpPXQudGFyZ2V0SW5kZXgsYT10LnF1ZXVlU25hcHNob3Q7aWYodC5zaWJsaW5ncy5mb3JFYWNoKGZ1bmN0aW9uKGMpe2Muc3R5bGUudHJhbnNmb3JtPSIiLGMuY2xhc3NMaXN0LnJlbW92ZSgicXVldWUtYmFyLWl0ZW0tc2xpZGluZyIpfSksdC5pdGVtRWwuY2xhc3NMaXN0LnJlbW92ZSgiZHJhZ2dpbmciKSxuLnF1ZXVlQmFyRHJhZz1udWxsLHI9PT1pKXtrdCgpO3JldHVybn1mb3IodmFyIHU9W10scz0wO3M8YS5sZW5ndGg7cysrKXUucHVzaChzKTt1LnNwbGljZShyLDEpLHUuc3BsaWNlKGksMCxyKTt2YXIgbz11Lm1hcChmdW5jdGlvbihjKXtyZXR1cm4gYVtjXX0pLGw9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGMpe3JldHVybiBjLmlkPT09bi5zZWxlY3RlZElkfSk7aWYoIWwpe2t0KCk7cmV0dXJufVooe2lkOmwuaWQscXVldWVkTWVzc2FnZXM6b30pLGt0KCksZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucy8iK2wuaWQrIi9xdWV1ZWQiLHttZXRob2Q6IlBBVENIIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7b3JkZXI6dX0pfSkudGhlbihmdW5jdGlvbihjKXtpZighYy5vaylyZXR1cm4gYy5qc29uKCkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm57fX0pLnRoZW4oZnVuY3Rpb24oZil7dGhyb3cgbmV3IEVycm9yKGYmJmYuZXJyb3J8fCJcdTYzOTJcdTVFOEZcdTU5MzFcdThEMjUiKX0pfSkuY2F0Y2goZnVuY3Rpb24oYyl7ZmkobCxhKSxrKGMmJmMubWVzc2FnZXx8Ilx1OEMwM1x1NjU3NFx1NjM5Mlx1OTYxRlx1OTg3QVx1NUU4Rlx1NTkzMVx1OEQyNVx1MzAwMiIsImVycm9yIil9KX19ZnVuY3Rpb24gVmYoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicXVldWUtYmFyLWhvc3QiKTshZXx8ZS5fX3F1ZXVlRGVsZWdhdGVkfHwoZS5fX3F1ZXVlRGVsZWdhdGVkPSEwLGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHQpe3ZhciByPXQudGFyZ2V0LGk9ciYmci5jbG9zZXN0P3IuY2xvc2VzdCgiW2RhdGEtYWN0aW9uXSIpOm51bGw7aWYoISghaXx8IWUuY29udGFpbnMoaSkpKXt2YXIgYT1pLmdldEF0dHJpYnV0ZSgiZGF0YS1hY3Rpb24iKTtpZihhIT09ImRyYWciKWlmKHQucHJldmVudERlZmF1bHQoKSx0LnN0b3BQcm9wYWdhdGlvbigpLGE9PT0icHJvbW90ZS1pdGVtIil7dmFyIHU9aS5jbG9zZXN0KCIucXVldWUtYmFyLWl0ZW0iKTt1JiZOZihOdW1iZXIodS5nZXRBdHRyaWJ1dGUoImRhdGEtaW5kZXgiKSkpfWVsc2UgaWYoYT09PSJkZWxldGUiKXt2YXIgcz1pLmNsb3Nlc3QoIi5xdWV1ZS1iYXItaXRlbSIpO3MmJkhmKE51bWJlcihzLmdldEF0dHJpYnV0ZSgiZGF0YS1pbmRleCIpKSl9ZWxzZSBhPT09ImNsZWFyLWFsbCI/X2YoKTphPT09ImV4cGFuZCImJmJhKCEwKX19KSxQZigpLGUuYWRkRXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLGZ1bmN0aW9uKHQpe2lmKCEodC5idXR0b24hPT12b2lkIDAmJnQuYnV0dG9uIT09MCkpe3ZhciByPXQudGFyZ2V0O2lmKCEociYmci5jbG9zZXN0JiZyLmNsb3Nlc3QoJ1tkYXRhLWFjdGlvbj0iZGVsZXRlIl0sIFtkYXRhLWFjdGlvbj0icHJvbW90ZS1pdGVtIl0sIFtkYXRhLWFjdGlvbj0iY2xlYXItYWxsIl0sIFtkYXRhLWFjdGlvbj0iZXhwYW5kIl0nKSkpe3ZhciBpPXImJnIuY2xvc2VzdD9yLmNsb3Nlc3QoIi5xdWV1ZS1iYXItaXRlbSIpOm51bGw7aSYmamYodCxpKX19fSksZS5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixmdW5jdGlvbih0KXt0LmtleT09PSJFc2NhcGUiJiZfdCgpJiYodC5zdG9wUHJvcGFnYXRpb24oKSxiYSghMSkpfSkpfWZ1bmN0aW9uIFdzKGUpe2lmKCFlfHwhQXJyYXkuaXNBcnJheShlLmNvbnRlbnQpKXJldHVybiAwO2Zvcih2YXIgdD0wLHI9MDtyPGUuY29udGVudC5sZW5ndGg7cisrKXt2YXIgaT1lLmNvbnRlbnRbcl07aWYoaSl7aWYodHlwZW9mIGkudGV4dD09InN0cmluZyImJih0Kz1pLnRleHQubGVuZ3RoKSx0eXBlb2YgaS50aGlua2luZz09InN0cmluZyImJih0Kz1pLnRoaW5raW5nLmxlbmd0aCksdHlwZW9mIGkuY29udGVudD09InN0cmluZyIpdCs9aS5jb250ZW50Lmxlbmd0aDtlbHNlIGlmKEFycmF5LmlzQXJyYXkoaS5jb250ZW50KSlmb3IodmFyIGE9MDthPGkuY29udGVudC5sZW5ndGg7YSsrKXt2YXIgdT1pLmNvbnRlbnRbYV07dSYmdHlwZW9mIHUudGV4dD09InN0cmluZyImJih0Kz11LnRleHQubGVuZ3RoKX1pZihpLmlucHV0KXRyeXt0Kz1KU09OLnN0cmluZ2lmeShpLmlucHV0KS5sZW5ndGh9Y2F0Y2h7fX19cmV0dXJuIHR9ZnVuY3Rpb24gVWYoZSx0KXtpZighZSlyZXR1cm4gdDtpZighdClyZXR1cm4gZTt2YXIgcj1XcyhlKSxpPVdzKHQpO3JldHVybiBpPj1yP3Q6T2JqZWN0LmFzc2lnbih7fSxlLHt1c2FnZTp0LnVzYWdlfHxlLnVzYWdlfSl9ZnVuY3Rpb24gVmUoZSx0KXt2YXIgcj1BcnJheS5pc0FycmF5KHQpP3NyKHQpOltdLGk9QXJyYXkuaXNBcnJheShyKT9yLnNsaWNlKCk6W107aWYoIWV8fGUuc2Vzc2lvbktpbmQhPT0ic3RydWN0dXJlZCIpcmV0dXJuIGk7aWYoZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0KXt2YXIgYT1pW2kubGVuZ3RoLTFdOyghYXx8YS5yb2xlIT09ImFzc2lzdGFudCIpJiZpLnB1c2goe3JvbGU6ImFzc2lzdGFudCIsY29udGVudDpbe3R5cGU6InRleHQiLHRleHQ6IiIsX19wcm9jZXNzaW5nOiEwfV19KX1yZXR1cm4gaX1mdW5jdGlvbiB6cygpe3ZhciBlPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbih0KXtyZXR1cm4gdC5pZD09PW4uc2VsZWN0ZWRJZH0pO1VyKGUpLG9uKCl9ZnVuY3Rpb24gVnMoZSl7dmFyIHQ9TnQoKSxyPXQmJnQucHJvdmlkZXI9PT0iY29kZXgiO3JldHVybiBlJiYoZS5lcnJvckNvZGU9PT0iU0VTU0lPTl9OT1RfUlVOTklORyJ8fGUuZXJyb3JDb2RlPT09IlNFU1NJT05fTk9fUFRZIik/cj8iQ29kZXggXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGXHVGRjFCXHU4MkU1XHU1QjU4XHU1NzI4IENvZGV4IFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1RkYwQ1x1NUMwNlx1NTcyOFx1NEY2MFx1NEUwQlx1NkIyMVx1NTNEMVx1OTAwMVx1NkQ4OFx1NjA2Rlx1NjVGNlx1ODFFQVx1NTJBOFx1NjA2Mlx1NTkwRFx1MzAwMiI6Ilx1NEYxQVx1OEJERFx1NURGMlx1N0VEM1x1Njc1Rlx1RkYxQlx1ODJFNVx1NUI1OFx1NTcyOCBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHVGRjBDXHU1QzA2XHU1NzI4XHU0RjYwXHU0RTBCXHU2QjIxXHU1M0QxXHU5MDAxXHU2RDg4XHU2MDZGXHU2NUY2XHU4MUVBXHU1MkE4XHU2MDYyXHU1OTBEXHUzMDAyIjplJiZlLmVycm9yQ29kZT09PSJTRVNTSU9OX05PVF9GT1VORCI/Ilx1NEYxQVx1OEJERFx1NEUwRFx1NUI1OFx1NTcyOFx1RkYwQ1x1OEJGN1x1OTFDRFx1NjVCMFx1OTAwOVx1NjJFOVx1NjIxNlx1NjVCMFx1NUVGQVx1NEYxQVx1OEJERFx1MzAwMiI6ZSYmZS5tZXNzYWdlfHwocj8iQ29kZXggXHU0RjFBXHU4QkREXHU2NjgyXHU0RTBEXHU1M0VGXHU3NTI4XHVGRjFCXHU4MkU1XHU1QjU4XHU1NzI4IENvZGV4IFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1RkYwQ1x1NUMwNlx1ODFFQVx1NTJBOFx1NUMxRFx1OEJENVx1NjA2Mlx1NTkwRFx1MzAwMiI6Ilx1NEYxQVx1OEJERFx1NjY4Mlx1NEUwRFx1NTNFRlx1NzUyOFx1RkYxQlx1ODJFNVx1NUI1OFx1NTcyOCBDbGF1ZGUgXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHVGRjBDXHU1QzA2XHU4MUVBXHU1MkE4XHU1QzFEXHU4QkQ1XHU2MDYyXHU1OTBEXHUzMDAyIil9ZnVuY3Rpb24gVXMoZSl7dmFyIHQ9bmV3IEVycm9yKGUmJmUuZXJyb3J8fCJcdTRGMUFcdThCRERcdTVERjJcdTdFRDNcdTY3NUZcdTMwMDIiKTtyZXR1cm4gZSYmdHlwZW9mIGU9PSJvYmplY3QiJiYodC5lcnJvckNvZGU9ZS5lcnJvckNvZGV8fG51bGwsdC5zZXNzaW9uSWQ9ZS5zZXNzaW9uSWR8fG4uc2VsZWN0ZWRJZHx8bnVsbCx0LnNlc3Npb25TdGF0dXM9T2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGUsInNlc3Npb25TdGF0dXMiKT9lLnNlc3Npb25TdGF0dXM6bnVsbCksdH1mdW5jdGlvbiBLcyhlKXtyZXR1cm4gZSYmKGUuZXJyb3JDb2RlPT09IlNFU1NJT05fTk9UX1JVTk5JTkcifHxlLmVycm9yQ29kZT09PSJTRVNTSU9OX05PX1BUWSJ8fGUuZXJyb3JDb2RlPT09IlNFU1NJT05fTk9UX0ZPVU5EIil9ZnVuY3Rpb24gS2YoZSx0KXtlJiZaKHtpZDplLHN0YXR1czp0fHwiZXhpdGVkIn0pfWZ1bmN0aW9uIFltKGUpe2lmKCFlfHwhQXJyYXkuaXNBcnJheShlLm1lc3NhZ2VzKXx8ZS5tZXNzYWdlcy5sZW5ndGg8MilyZXR1cm4hMTt2YXIgdD1lLm1lc3NhZ2VzLnNvbWUoZnVuY3Rpb24oaSl7cmV0dXJuIGkmJmkucm9sZT09PSJ1c2VyIiYmQXJyYXkuaXNBcnJheShpLmNvbnRlbnQpJiZpLmNvbnRlbnQuc29tZShmdW5jdGlvbihhKXtyZXR1cm4gYSYmYS50eXBlPT09InRleHQiJiZ0eXBlb2YgYS50ZXh0PT0ic3RyaW5nIiYmYS50ZXh0LnRyaW0oKS5sZW5ndGg+MH0pfSkscj1lLm1lc3NhZ2VzLnNvbWUoZnVuY3Rpb24oaSl7cmV0dXJuIGkmJmkucm9sZT09PSJhc3Npc3RhbnQiJiZBcnJheS5pc0FycmF5KGkuY29udGVudCkmJmkuY29udGVudC5zb21lKGZ1bmN0aW9uKGEpe3JldHVybiBhJiZhLnR5cGU9PT0idGV4dCImJnR5cGVvZiBhLnRleHQ9PSJzdHJpbmciJiZhLnRleHQudHJpbSgpLmxlbmd0aD4wfSl9KTtyZXR1cm4gdCYmcn1mdW5jdGlvbiBFYShlKXtyZXR1cm4hIShlJiYhdWUoZSkmJihlLnByb3ZpZGVyPT09ImNsYXVkZSJ8fGUucHJvdmlkZXI9PT0iY29kZXgiKSYmZS5zdGF0dXMhPT0icnVubmluZyImJmUuY2xhdWRlU2Vzc2lvbklkKX1mdW5jdGlvbiBZZihlLHQpe2lmKCFlKXJldHVybiBrKCJcdTRGMUFcdThCRERcdTRFMERcdTVCNThcdTU3MjhcdUZGMENcdThCRjdcdTkxQ0RcdTY1QjBcdTkwMDlcdTYyRTlcdTYyMTZcdTY1QjBcdTVFRkFcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLFByb21pc2UucmVzb2x2ZShudWxsKTtpZihlLnN0YXR1cz09PSJydW5uaW5nIilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGUpO2lmKCFFYShlKSl7dmFyIHI9ZSYmZS5wcm92aWRlcj09PSJjb2RleCI/IkNvZGV4IjoiQ2xhdWRlIjtyZXR1cm4gaygiXHU4QkU1XHU0RjFBXHU4QkREXHU2Q0ExXHU2NzA5XHU1M0VGXHU2MDYyXHU1OTBEXHU3Njg0ICIrcisiIFx1NTM4Nlx1NTNGMlx1NEUwQVx1NEUwQlx1NjU4N1x1RkYwQ1x1OEJGN1x1NjVCMFx1NUVGQVx1NEYxQVx1OEJERFx1MzAwMiIsImVycm9yIiksUHJvbWlzZS5yZXNvbHZlKG51bGwpfXJldHVybiBybyhlLmlkLHQpLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGk/KFooaSkscGUoKSxMbihpLmlkKSx2bihpLmlkKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGp0KCEwKSxpfSkpOm51bGx9KX1mdW5jdGlvbiBKZihlLHQpe3JldHVyblt0LCJcciJdfWZ1bmN0aW9uIEdmKGUsdCxyLGkpe3ZhciBhPUFycmF5LmlzQXJyYXkoZSk/ZS5maWx0ZXIoZnVuY3Rpb24ocyl7cmV0dXJuISFzfSk6W107aWYoYS5sZW5ndGg9PT0wKXJldHVybiBQcm9taXNlLnJlc29sdmUoKTt2YXIgdT10eXBlb2Ygcj09Im51bWJlciI/cjowO3JldHVybiBhLnJlZHVjZShmdW5jdGlvbihzLG8sbCl7cmV0dXJuIHMudGhlbihmdW5jdGlvbigpe3JldHVybiBsPjAmJnU+MD9uZXcgUHJvbWlzZShmdW5jdGlvbihjKXtzZXRUaW1lb3V0KGMsdSl9KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGd0KG8sbD09PWEubGVuZ3RoLTE/dDp2b2lkIDAsaSl9KTpndChvLGw9PT1hLmxlbmd0aC0xP3Q6dm9pZCAwLGkpfSl9LFByb21pc2UucmVzb2x2ZSgpKX12YXIgUWY9NWUzLCRmPTEwMDtmdW5jdGlvbiBGYShlKXtlJiYobi5wZW5kaW5nTWVzc2FnZXMubGVuZ3RoPj0kZiYmbi5wZW5kaW5nTWVzc2FnZXMuc2hpZnQoKSxuLnBlbmRpbmdNZXNzYWdlcy5wdXNoKHtpbnB1dDplLGF0OkRhdGUubm93KCl9KSl9ZnVuY3Rpb24gWGYoZSl7dmFyIHQ9QXJyYXkuaXNBcnJheShlKT9lLmZpbHRlcihmdW5jdGlvbihyKXtyZXR1cm4hIXJ9KTpbXTt0LmZvckVhY2goZnVuY3Rpb24ocil7RmEocil9KX1mdW5jdGlvbiBaZihlKXtpZighKHR5cGVvZiBlIT0ic3RyaW5nInx8IWUpKXt2YXIgdD1lLnJlcGxhY2UoL1x4MWJcWzIwMH4vZywiIikucmVwbGFjZSgvXHgxYlxbMjAxfi9nLCIiKTsvKD86XnxcbilccypcL2NsZWFyXHMqKD86XHJ8XG58JCkvLnRlc3QodCkmJnR5cGVvZiBuPCJ1IiYmbiYmKG4udGVybWluYWxPdXRwdXRNYXJrZXI9KG4udGVybWluYWxPdXRwdXQmJm4udGVybWluYWxPdXRwdXQubGVuZ3RoKXwwKX19ZnVuY3Rpb24gZ3QoZSx0LHIpe3JldHVybiFlfHwhbi5zZWxlY3RlZElkP1Byb21pc2UucmVzb2x2ZSgpOihaZihlKSxuLm1lc3NhZ2VRdWV1ZS5wdXNoKGUpLG4uaW5wdXRRdWV1ZT1uLmlucHV0UXVldWUudGhlbihmdW5jdGlvbigpe3JldHVybiBlcChlLHQscikuZmluYWxseShmdW5jdGlvbigpe3ZhciBpPW4ubWVzc2FnZVF1ZXVlLmluZGV4T2YoZSk7aT4tMSYmbi5tZXNzYWdlUXVldWUuc3BsaWNlKGksMSl9KX0pLG4uaW5wdXRRdWV1ZSl9ZnVuY3Rpb24gZXAoZSx0LHIpe2lmKCFuLnNlbGVjdGVkSWQpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO3ZhciBpPW4uc2VsZWN0ZWRJZCxhPXJ8fG4uY3VycmVudFZpZXc7cmV0dXJuIGtmKCk/bi53c0Nvbm5lY3RlZD9mZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2krIi9pbnB1dCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe2lucHV0OmUsdmlldzphLHNob3J0Y3V0S2V5OnR8fHZvaWQgMH0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5vaz91Lmpzb24oKTp1Lmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybntlcnJvcjoiXHU4QkY3XHU2QzQyXHU1OTMxXHU4RDI1In19KS50aGVuKGZ1bmN0aW9uKHMpe3ZhciBvPVVzKHMpO3Rocm93IG8uaHR0cFN0YXR1cz11LnN0YXR1cyxjb25zb2xlLmVycm9yKCJbd2FuZF0gcG9zdElucHV0OiByZXF1ZXN0IGZhaWxlZCIse3N0YXR1czp1LnN0YXR1cyxlcnJvckNvZGU6by5lcnJvckNvZGUsbWVzc2FnZTpvLm1lc3NhZ2Usc2Vzc2lvbklkOml9KSxLcyhvKSYmS2YoaSxvLnNlc3Npb25TdGF0dXN8fCJleGl0ZWQiKSxvfSl9KS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiB1JiZ1LmlkJiYoWih1KSx1LmlkPT09bi5zZWxlY3RlZElkJiYodS5tZXNzYWdlcyYmdS5tZXNzYWdlcy5sZW5ndGg+MCYmKG4uY3VycmVudE1lc3NhZ2VzPXUubWVzc2FnZXMpLHR0KCEwKSkpLHV9KTooRmEoZSksY29uc29sZS5sb2coIlt3YW5kXSBwb3N0SW5wdXQ6IFdlYlNvY2tldCBkaXNjb25uZWN0ZWQsIHF1ZXVlZCBtZXNzYWdlIix7c2Vzc2lvbklkOm4uc2VsZWN0ZWRJZCxpbnB1dExlbmd0aDplLmxlbmd0aH0pLFByb21pc2UucmVzb2x2ZSgpKTpuLndzQ29ubmVjdGVkPyhjb25zb2xlLndhcm4oIlt3YW5kXSBwb3N0SW5wdXQ6IHNlc3Npb24gbm90IHJ1bm5pbmcsIHNraXBwaW5nIHNlbmQiLHtzZXNzaW9uSWQ6bi5zZWxlY3RlZElkfSksaygiXHU0RjFBXHU4QkREXHU2NzJBXHU4RkQwXHU4ODRDXHVGRjBDXHU2QjYzXHU1NzI4XHU3QjQ5XHU1Rjg1XHU4MUVBXHU1MkE4XHU2MDYyXHU1OTBEXHU1NDBFXHU5MUNEXHU4QkQ1XHUzMDAyIiwiaW5mbyIpLFByb21pc2UucmVzb2x2ZSgpKTooRmEoZSksY29uc29sZS5sb2coIlt3YW5kXSBwb3N0SW5wdXQ6IHNlc3Npb24gbm90IHJ1bm5pbmcsIHF1ZXVlZCBmb3IgcmVjb25uZWN0Iix7c2Vzc2lvbklkOm4uc2VsZWN0ZWRJZCxpbnB1dExlbmd0aDplLmxlbmd0aH0pLFByb21pc2UucmVzb2x2ZSgpKX1mdW5jdGlvbiBKbShlKXtyZXR1cm4gZ3QoZSl9ZnVuY3Rpb24gTnQoKXtyZXR1cm4gbi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlkPT09bi5zZWxlY3RlZElkfSl8fG51bGx9ZnVuY3Rpb24gR20oZSl7cmV0dXJuIGUmJmUucHJvdmlkZXI9PT0iY29kZXgiP2AKYDoiXHIifWZ1bmN0aW9uIHdhKCl7cmV0dXJuISFuLnNlbGVjdGVkSWQmJm4uY3VycmVudFZpZXc9PT0idGVybWluYWwifWZ1bmN0aW9uIHRwKGUpe3JldHVybiEoIW4udGVybWluYWx8fCFlfHxlIT09bi5zZWxlY3RlZElkfHxuLnRlcm1pbmFsU2Vzc2lvbklkJiZuLnRlcm1pbmFsU2Vzc2lvbklkIT09ZSl9ZnVuY3Rpb24gWXMoZSl7aWYoIW4udGVybWluYWxJbnRlcmFjdGl2ZXx8IXdhKCl8fGUuZGVmYXVsdFByZXZlbnRlZHx8ZS5pc0NvbXBvc2luZylyZXR1cm4hMTt2YXIgdD1lLnRhcmdldDtyZXR1cm4gdD8hKHQuY2xvc2VzdCYmdC5jbG9zZXN0KCIjbWluaS1rZXlib2FyZCIpfHxvcCh0KSk6ITB9dmFyIG5wPXtFc2M6ImVzY2FwZSIsQXJyb3dVcDoidXAiLEFycm93RG93bjoiZG93biIsQXJyb3dMZWZ0OiJsZWZ0IixBcnJvd1JpZ2h0OiJyaWdodCIsRW50ZXI6ImVudGVyIixUYWI6InRhYiIsQmFja3NwYWNlOiJiYWNrc3BhY2UiLEhvbWU6ImhvbWUiLEVuZDoiZW5kIixQYWdlVXA6InBhZ2V1cCIsUGFnZURvd246InBhZ2Vkb3duIixEZWxldGU6ImRlbGV0ZSIsSW5zZXJ0OiJpbnNlcnQiLCIgIjoic3BhY2UifSxycD17c3BhY2U6IiAiLHRhYjoiCSIsc2hpZnRfdGFiOiJceDFCW1oiLGJhY2tzcGFjZToiXHg3RiIsaG9tZToiXHgxQltIIixlbmQ6Ilx4MUJbRiIscGFnZXVwOiJceDFCWzV+IixwYWdlZG93bjoiXHgxQls2fiIsZGVsZXRlOiJceDFCWzN+IixpbnNlcnQ6Ilx4MUJbMn4ifSxKcz17IiAiOjAsIlsiOjI3LCJcXCI6MjgsIl0iOjI5LCJeIjozMCxfOjMxfSxpcD00MDAsYXA9MTAsdXA9OCxwaT01NCxsbj04LENhPVt7a2V5OiJlbnRlciIsbGFiZWw6IkVudGVyIn0se2tleToiY3RybF9jIixsYWJlbDoiQ3RybCtDIn0se2tleToiZXNjYXBlIixsYWJlbDoiRXNjIn0se2tleToic2hpZnRfdGFiIixsYWJlbDoiU2hpZnQrVGFiIn1dLHNwPW5ldyBTZXQoWyJtaW5pLWtleWJvYXJkLWZhYiIsIm1pbmkta2V5Ym9hcmQtdG9nZ2xlIiwidGVybWluYWwtaW50ZXJhY3RpdmUtdG9nZ2xlIl0pO2Z1bmN0aW9uIG9wKGUpe3JldHVybiEhKGUmJnNwLmhhcyhlLmlkKSl9dmFyIGxwPW5ldyBTZXQoWyJjdHJsIiwiYWx0Iiwic2hpZnQiXSk7ZnVuY3Rpb24gR3MoZSl7cmV0dXJuIGxwLmhhcyhlKX1mdW5jdGlvbiBjcChlKXtyZXR1cm4gcnBbZV18fCIifWZ1bmN0aW9uIGRwKGUpe3ZhciB0PWUudG9Mb3dlckNhc2UoKTtyZXR1cm4gdD49ImEiJiZ0PD0ieiI/U3RyaW5nLmZyb21DaGFyQ29kZSh0LmNoYXJDb2RlQXQoMCktOTYpOk9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChKcyx0KT9TdHJpbmcuZnJvbUNoYXJDb2RlKEpzW3RdKToiIn1mdW5jdGlvbiBmcChlKXtyZXR1cm4gbnBbZS5rZXldfHxlLmtleX1mdW5jdGlvbiBwcChlLHQpe3JldHVybntjdHJsOmUuY3RybEtleSxhbHQ6ZS5hbHRLZXksc2hpZnQ6ZS5zaGlmdEtleSYmKHQubGVuZ3RoPT09MXx8dD09PSJ0YWIiKSxtZXRhOmUubWV0YUtleX19ZnVuY3Rpb24gUXMoZSx0KXtlJiZndChlLHQpLmNhdGNoKGZ1bmN0aW9uKCl7fSl9ZnVuY3Rpb24gdnAoKXtjbygpfWZ1bmN0aW9uIEJhKGUpe24ua2V5Ym9hcmRQb3B1cE9wZW49ITEsZSE9PSExJiZtaSgpLGhwKCl9ZnVuY3Rpb24gbXAoKXt3YSgpJiZUbighbi50ZXJtaW5hbEludGVyYWN0aXZlKX1mdW5jdGlvbiBUbihlKXt2YXIgdD0hIWUmJndhKCk7bi50ZXJtaW5hbEludGVyYWN0aXZlIT09dCYmKG4udGVybWluYWxJbnRlcmFjdGl2ZT10LHQ/KHlwKCksQmEoITEpLHZwKCksaygiXHU3RUM4XHU3QUVGXHU0RUE0XHU0RTkyXHU2QTIxXHU1RjBGXHU1REYyXHU1RjAwXHU1NDJGIiwiaW5mbyIpKTooYnAoKSxtaSgpKSxEcigpKX1mdW5jdGlvbiBEYSgpe3ZhciBlPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihyKXtyZXR1cm4gci5pZD09PW4uc2VsZWN0ZWRJZH0pLHQ9IWV8fGUuc3RhdHVzIT09InJ1bm5pbmcifHxuLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsIjtpZih0JiZuLnRlcm1pbmFsSW50ZXJhY3RpdmUpe1RuKCExKTtyZXR1cm59KCFlfHxuLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsIikmJm4ua2V5Ym9hcmRQb3B1cE9wZW4mJihuLmtleWJvYXJkUG9wdXBPcGVuPSExKSxEcigpfWZ1bmN0aW9uIERyKCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGIpe3JldHVybiBiLmlkPT09bi5zZWxlY3RlZElkfSksdD11ZShlKSxyPWUmJmUucHJvdmlkZXI9PT0iY29kZXgiLGk9dD8hIShlJiZlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpOiEhZSYmZS5zdGF0dXM9PT0icnVubmluZyIsYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksdT1bInRlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AiXTt1LmZvckVhY2goZnVuY3Rpb24oYil7dmFyIEY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYik7aWYoRil7Ri5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLG4udGVybWluYWxJbnRlcmFjdGl2ZSksRi5jbGFzc0xpc3QudG9nZ2xlKCJpcy1vbiIsbi50ZXJtaW5hbEludGVyYWN0aXZlKSxGLmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsdHx8bi5jdXJyZW50VmlldyE9PSJ0ZXJtaW5hbCJ8fCFlKSxGLnNldEF0dHJpYnV0ZSgiYXJpYS1jaGVja2VkIixuLnRlcm1pbmFsSW50ZXJhY3RpdmU/InRydWUiOiJmYWxzZSIpO3ZhciB3PUYucXVlcnlTZWxlY3RvcigiLnBsdXMtcG9wb3Zlci10b2dnbGUtc3RhdGUiKTt3JiYody50ZXh0Q29udGVudD1uLnRlcm1pbmFsSW50ZXJhY3RpdmU/Ilx1NUYwMCI6Ilx1NTE3MyIpfX0pO3ZhciBzPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1oaW50Iik7cyYmKHMuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIix0PyEwOm4uY3VycmVudFZpZXc9PT0idGVybWluYWwiKSwhdCYmZSYmKHMudGV4dENvbnRlbnQ9cj8iRW50ZXIgXHU1M0QxXHU5MDAxIFx4QjcgY2hhdCBcdTRFM0FcdTg5RTNcdTY3OTBcdTg5QzZcdTU2RkVcdUZGMEN0ZXJtaW5hbCBcdTRFM0FcdTUzOUZcdTU5Q0JcdThGOTNcdTUxRkEiOiJFbnRlciBcdTUzRDFcdTkwMDEgXHhCNyBTaGlmdCtFbnRlciBcdTYzNjJcdTg4NEMiKSk7dmFyIG89IXQmJiFpJiZFYShlKTthJiYoYS5wbGFjZWhvbGRlcj1NbyhlLG4udGVybWluYWxJbnRlcmFjdGl2ZSksYS5kaXNhYmxlZD0hdCYmISFlJiYhaSYmIW8sYS5zZXRBdHRyaWJ1dGUoImFyaWEtZGlzYWJsZWQiLGEuZGlzYWJsZWQ/InRydWUiOiJmYWxzZSIpLGEucmVhZE9ubHk9ITEsYS5jbGFzc0xpc3QudG9nZ2xlKCJpcy10ZXJtaW5hbC1wYXNzdGhyb3VnaCIsISFuLnRlcm1pbmFsSW50ZXJhY3RpdmUpKTt2YXIgbD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtY29tcG9zZXIiKTtsJiZuLnRlcm1pbmFsSW50ZXJhY3RpdmUmJmwuY2xhc3NMaXN0LmNvbnRhaW5zKCJ2b2ljZS1tb2RlIikmJihsLmNsYXNzTGlzdC5yZW1vdmUoInZvaWNlLW1vZGUiKSxJZS5yZWNvcmRpbmc9ITEsZ2EoKSk7dmFyIGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlbmQtaW5wdXQtYnV0dG9uIiksZj10JiZpO2MmJihjLmRpc2FibGVkPSF0JiYhIWUmJiFpJiYhbyxjLnNldEF0dHJpYnV0ZSgidGl0bGUiLHQ/Zj8iXHU2MzkyXHU5NjFGXHU1M0QxXHU5MDAxXHVGRjA4XHU1RjUzXHU1MjREXHU1NkRFXHU1OTBEXHU3RUQzXHU2NzVGXHU1NDBFXHU1OTA0XHU3NDA2XHVGRjA5IjoiXHU1M0QxXHU5MDAxIjpyP2k/Ilx1NTNEMVx1OTAwMVx1N0VEOSBDb2RleCI6IkNvZGV4IFx1NEYxQVx1OEJERFx1NURGMlx1N0VEM1x1Njc1RiI6IWV8fGl8fG8/Ilx1NTNEMVx1OTAwMSI6Ilx1NEYxQVx1OEJERFx1NURGMlx1N0VEM1x1Njc1RiIpLGMuY2xhc3NMaXN0LnRvZ2dsZSgicXVldWUtbW9kZSIsZikpO3ZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdG9wLWJ1dHRvbiIpO2lmKGQpe3ZhciB2PW51KGUpO2QuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhdi5hY3RpdmUpfXZhciBnPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdG9wLWJ1dHRvbiIpO2lmKGcpe3ZhciBoPW51KGUpO2cuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhaC5hY3RpdmUpfXZhciBtPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTttJiZtLmNsYXNzTGlzdC50b2dnbGUoImludGVyYWN0aXZlIiwhdCYmbi50ZXJtaW5hbEludGVyYWN0aXZlKSxtcygpfWZ1bmN0aW9uIHZpKCl7dmFyIGU9d2luZG93LmdldFNlbGVjdGlvbiYmd2luZG93LmdldFNlbGVjdGlvbigpO2lmKCFlfHxlLmlzQ29sbGFwc2VkKXJldHVybiExO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKTtpZighdClyZXR1cm4hMTt2YXIgcj1lLmFuY2hvck5vZGU7cmV0dXJuIHImJnIubm9kZVR5cGU9PT0zJiYocj1yLnBhcmVudE5vZGUpLCEhKHImJnQuY29udGFpbnMocikpfWZ1bmN0aW9uIGthKGUpe2lmKFlzKGUpJiYhZS5tZXRhS2V5KXt2YXIgdD1mcChlKTtpZih0KXt2YXIgcj1wcChlLHQpO2lmKCFHcyh0KSYmIShyLmN0cmwmJnQubGVuZ3RoPT09MSYmdC50b0xvd2VyQ2FzZSgpPT09ImMiJiZ2aSgpKSl7dmFyIGk9WHModCxyKTtpJiYoZS5wcmV2ZW50RGVmYXVsdCgpLFFzKGksdCkpfX19fWZ1bmN0aW9uIGdwKCl7bi50ZXJtaW5hbCYmUmQoNTAwKX1mdW5jdGlvbiBocCgpe21yKCl9ZnVuY3Rpb24gUW0oZSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksIShuLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsInx8IW4uc2VsZWN0ZWRJZCkmJihuLmtleWJvYXJkUG9wdXBPcGVuPSFuLmtleWJvYXJkUG9wdXBPcGVuLERyKCkpfWZ1bmN0aW9uICRzKCl7bi5rZXlib2FyZFBvcHVwT3Blbj0hMSxEcigpfWZ1bmN0aW9uIHlwKCl7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsa2EsITApfWZ1bmN0aW9uIGJwKCl7ZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsa2EsITApfWZ1bmN0aW9uIFhzKGUsdCl7dmFyIHI9dHx8e2N0cmw6ITEsYWx0OiExLHNoaWZ0OiExfTtpZihHcyhlKSlyZXR1cm4iIjtpZihlPT09InRhYiImJnIuc2hpZnQpcmV0dXJuIlx4MUJbWiI7dmFyIGk9Y3AoZSk7aWYoaSlyZXR1cm4gaTtpZihlLmluZGV4T2YoImN0cmxfIik9PT0wKXJldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKGUuY2hhckNvZGVBdChlLmxlbmd0aC0xKS05Nik7dmFyIGE9a3IoZSk7aWYoYSlyZXR1cm4gYTtpZighZSlyZXR1cm4iIjt2YXIgdT1lLmxlbmd0aD09PTE/ZToiIjtyZXR1cm4gdT8oci5zaGlmdCYmKHU9dS50b1VwcGVyQ2FzZSgpKSxyLmN0cmw/ZHAodSk6ci5hbHQ/Ilx4MUIiK3U6dSk6IiJ9ZnVuY3Rpb24gbWkoKXtuLm1vZGlmaWVycy5jdHJsPSExLG4ubW9kaWZpZXJzLmFsdD0hMSxuLm1vZGlmaWVycy5zaGlmdD0hMSxFcCgpfWZ1bmN0aW9uIEVwKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1pbmkta2V5Ym9hcmQiKTtlJiZbImN0cmwiLCJhbHQiLCJzaGlmdCJdLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCdbZGF0YS1rZXk9IicrdCsnIl0nKTtyJiZyLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsISFuLm1vZGlmaWVyc1t0XSl9KX1mdW5jdGlvbiBrcihlKXtzd2l0Y2goZSl7Y2FzZSJ5ZXMiOnJldHVybiJ5XHIiO2Nhc2Uibm8iOnJldHVybiJuXHIiO2Nhc2UidXAiOnJldHVybiJceDFCW0EiO2Nhc2UiZG93biI6cmV0dXJuIlx4MUJbQiI7Y2FzZSJsZWZ0IjpyZXR1cm4iXHgxQltEIjtjYXNlInJpZ2h0IjpyZXR1cm4iXHgxQltDIjtjYXNlImVudGVyIjpyZXR1cm4iXHIiO2Nhc2UiY3RybF9jIjpyZXR1cm4iAyI7Y2FzZSJjdHJsX2QiOnJldHVybiIEIjtjYXNlImN0cmxfbCI6cmV0dXJuIlxmIjtjYXNlImN0cmxfdSI6cmV0dXJuIhUiO2Nhc2UiY3RybF9rIjpyZXR1cm4iXHYiO2Nhc2UiY3RybF93IjpyZXR1cm4iFyI7Y2FzZSJjdHJsX3oiOnJldHVybiIaIjtjYXNlImVzY2FwZSI6cmV0dXJuIlx4MUIiO2RlZmF1bHQ6cmV0dXJuIiJ9fWZ1bmN0aW9uIEZwKCl7aWYobi5wZW5kaW5nTWVzc2FnZXMubGVuZ3RoIT09MCl7dmFyIGU9TnQoKTtpZih1ZShlKSl7bi5wZW5kaW5nTWVzc2FnZXM9W107cmV0dXJufXZhciB0PURhdGUubm93KCkscj1bXSxpPTA7bi5wZW5kaW5nTWVzc2FnZXMuZm9yRWFjaChmdW5jdGlvbih1KXtpZih0eXBlb2YgdT09InN0cmluZyIpe3IucHVzaCh1KTtyZXR1cm59aWYoISghdXx8dHlwZW9mIHUuaW5wdXQhPSJzdHJpbmciKSl7aWYodC0odS5hdHx8MCk+UWYpe2krKztyZXR1cm59ci5wdXNoKHUuaW5wdXQpfX0pLG4ucGVuZGluZ01lc3NhZ2VzPVtdLGk+MCYmY29uc29sZS5sb2coIlt3YW5kXSBmbHVzaFBlbmRpbmdNZXNzYWdlczogZHJvcHBlZCAiK2krIiBzdGFsZSBpbnB1dChzKSIpO3ZhciBhPVByb21pc2UucmVzb2x2ZSgpO3IuZm9yRWFjaChmdW5jdGlvbih1KXthPWEudGhlbihmdW5jdGlvbigpe3JldHVybiB3cCh1KS5jYXRjaChmdW5jdGlvbigpe30pfSl9KX19ZnVuY3Rpb24gd3AoZSl7aWYoIWV8fCFuLnNlbGVjdGVkSWQpcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO3ZhciB0PW4uc2VsZWN0ZWRJZDtyZXR1cm4gZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIit0KyIvaW5wdXQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtpbnB1dDplLHZpZXc6bi5jdXJyZW50Vmlld30pfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5vaz9yLmpzb24oKTpyLmpzb24oKS5jYXRjaChmdW5jdGlvbigpe3JldHVybntlcnJvcjoiXHU4QkY3XHU2QzQyXHU1OTMxXHU4RDI1In19KS50aGVuKGZ1bmN0aW9uKGkpe3ZhciBhPVVzKGkpO2lmKGEuaHR0cFN0YXR1cz1yLnN0YXR1cyxLcyhhKSlyZXR1cm4gY29uc29sZS5sb2coIlt3YW5kXSBzZW5kSW5wdXREaXJlY3Q6IHNlc3Npb24gdW5hdmFpbGFibGUsIGRyb3BwaW5nIix7c2Vzc2lvbklkOnQsZXJyb3JDb2RlOmEuZXJyb3JDb2RlfSksbnVsbDt0aHJvdyBhfSl9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByJiZyLmlkJiYoWihyKSxyLmlkPT09bi5zZWxlY3RlZElkJiYoci5tZXNzYWdlcyYmci5tZXNzYWdlcy5sZW5ndGg+MCYmKG4uY3VycmVudE1lc3NhZ2VzPXIubWVzc2FnZXMpLHR0KCEwKSkpLHJ9KX1mdW5jdGlvbiBBYSgpe2lmKG4uc2VsZWN0ZWRJZCl7dmFyIGU9bi5zZWxlY3RlZElkO0JzKE1lKCJzdG9wLmNvbmZpcm0ubWVzc2FnZSIpLHt0aXRsZTpNZSgic3RvcC5jb25maXJtLnRpdGxlIiksZGFuZ2VyOiEwLG9rTGFiZWw6TWUoInN0b3AuY29uZmlybS5vayIpLGNhbmNlbExhYmVsOk1lKCJzdG9wLmNvbmZpcm0uY2FuY2VsIil9KS50aGVuKGZ1bmN0aW9uKHQpe3QmJm4uc2VsZWN0ZWRJZD09PWUmJmZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZSsiL3N0b3AiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKFJ0KX0pfX1mdW5jdGlvbiBacyhlKXt2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2Vzc2lvbi1pdGVtW2RhdGEtc2Vzc2lvbi1pZD0iJytlKyciXScpO3QmJnQuY2xhc3NMaXN0LmFkZCgiZGVsZXRpbmciKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlLHttZXRob2Q6IkRFTEVURSIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihmdW5jdGlvbihyKXtpZihyJiZyLmVycm9yKXRocm93IG5ldyBFcnJvcihyLmVycm9yKTtyZXR1cm4gbi5zZWxlY3RlZElkPT09ZSYmKG4uc2VsZWN0ZWRJZD1udWxsLHllKCkpLFJ0KCl9KS5jYXRjaChmdW5jdGlvbigpe3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgiZGVsZXRpbmciKTt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYWN0aW9uLWVycm9yIik7emUociwiXHU2NUUwXHU2Q0Q1XHU1MjIwXHU5NjY0XHU0RjFBXHU4QkREXHUzMDAyIil9KX0sMjUwKX1mdW5jdGlvbiBlbyhlLHQpe3QmJnQuY2xhc3NMaXN0LmFkZCgiZGVsZXRpbmciKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZmV0Y2goIi9hcGkvY2xhdWRlLWhpc3RvcnkvIitlbmNvZGVVUklDb21wb25lbnQoZSkse21ldGhvZDoiREVMRVRFIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHImJnIuZXJyb3IpdGhyb3cgbmV3IEVycm9yKHIuZXJyb3IpO24uY2xhdWRlSGlzdG9yeT1uLmNsYXVkZUhpc3RvcnkuZmlsdGVyKGZ1bmN0aW9uKGkpe3JldHVybiBpLmNsYXVkZVNlc3Npb25JZCE9PWV9KSxkZWxldGUgbi5zZWxlY3RlZENsYXVkZUhpc3RvcnlJZHNbZV0scGUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dCYmdC5jbGFzc0xpc3QucmVtb3ZlKCJkZWxldGluZyIpO3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY3Rpb24tZXJyb3IiKTt6ZShyLCJcdTY1RTBcdTZDRDVcdTUyMjBcdTk2NjRcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTMwMDIiKX0pfSwyNTApfWZ1bmN0aW9uICRtKGUsdCl7ZW8oZSx0KX1mdW5jdGlvbiBDcChlLHQscil7ZSYmZmV0Y2goIi9hcGkvY2xhdWRlLWhpc3Rvcnk/Y3dkPSIrZW5jb2RlVVJJQ29tcG9uZW50KGUpLHttZXRob2Q6IkRFTEVURSIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtpZihpJiZpLmVycm9yKXRocm93IG5ldyBFcnJvcihpLmVycm9yKTtuLmNsYXVkZUhpc3Rvcnk9bi5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4gYS5jd2QhPT1lfSkscGUoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dG8ociwhMSk7dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjdGlvbi1lcnJvciIpO3plKGksIlx1NjVFMFx1NkNENVx1NkUwNVx1NzQwNlx1OEJFNVx1NzZFRVx1NUY1NVx1NzY4NFx1NTM4Nlx1NTNGMlx1NEYxQVx1OEJERFx1MzAwMiIpfSl9ZnVuY3Rpb24gdG8oZSx0KXtlLmZvckVhY2goZnVuY3Rpb24ocil7ci5jbGFzc0xpc3QudG9nZ2xlKCJkZWxldGluZyIsdCl9KX1mdW5jdGlvbiBCcChlKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmNsYXVkZS1oaXN0b3J5LWl0ZW1bZGF0YS1jd2Q9Iicrd2luZG93LkNTUy5lc2NhcGUoU3RyaW5nKGUpKSsnIl0nKSl9dmFyIG5vPW51bGwsQXI9bnVsbDtmdW5jdGlvbiB4cigpe2lmKEFyKXtBci5jbGFzc0xpc3QucmVtb3ZlKCJzd2lwZWQiKTt2YXIgZT1Bci5xdWVyeVNlbGVjdG9yKCIuc2Vzc2lvbi1pdGVtLWNvbnRlbnQiKTtlJiYoZS5zdHlsZS50cmFuc2Zvcm09IiIpLEFyPW51bGx9fWZ1bmN0aW9uIERwKGUpe25vPW51bGwsQXI9bnVsbH1mdW5jdGlvbiBrcChlLHQscil7ZT09PSJjbGF1ZGUiJiYobi5wcmVmZXJyZWRDb21tYW5kPWUsbi5jaGF0TW9kZT1XdChlLG4uY2hhdE1vZGUpKTt2YXIgaT1uLmNoYXRNb2RlbHx8bi5jb25maWcmJm4uY29uZmlnLmRlZmF1bHRNb2RlbHx8IiI7cmV0dXJuIGZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7Y29tbWFuZDplLGN3ZDp0fHwiIixtb2RlOm4uY2hhdE1vZGV8fG4uY29uZmlnLmRlZmF1bHRNb2RlfHwiZGVmYXVsdCIsbW9kZWw6aXx8dm9pZCAwLHRoaW5raW5nRWZmb3J0Om4uY2hhdFRoaW5raW5nfHx2b2lkIDB9KSl9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7cmV0dXJuIGEuZXJyb3I/KHImJnplKHIsYS5lcnJvciksbnVsbCk6KG4uc2VsZWN0ZWRJZD1hLmlkLHllKCksbi5kcmFmdHNbYS5pZF09IiIsYSl9KX12YXIgeGE9ITE7ZnVuY3Rpb24gcm8oZSx0KXtyZXR1cm4hZXx8eGE/UHJvbWlzZS5yZXNvbHZlKG51bGwpOih4YT0hMCxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3Jlc3VtZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe21vZGU6bi5jaGF0TW9kZXx8bi5jb25maWcuZGVmYXVsdE1vZGV8fCJkZWZhdWx0In0pKX0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5lcnJvcj8odD96ZSh0LHIuZXJyb3IpOmsoci5lcnJvciwiZXJyb3IiKSxudWxsKToobi5zZWxlY3RlZElkPXIuaWQseWUoKSxuLmRyYWZ0c1tyLmlkXT0iIixyKX0pLmNhdGNoKGZ1bmN0aW9uKHIpe3ZhciBpPXImJnIubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NjA2Mlx1NTkwRFx1NEYxQVx1OEJERFx1MzAwMiI7cmV0dXJuIHQ/emUodCxpKTprKGksImVycm9yIiksbnVsbH0pLmZpbmFsbHkoZnVuY3Rpb24oKXt4YT0hMX0pKX1mdW5jdGlvbiBYbShlLHQpe3JldHVybiBlP2ZldGNoKCIvYXBpL2NsYXVkZS1zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3Jlc3VtZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe21vZGU6bi5jaGF0TW9kZXx8bi5jb25maWcuZGVmYXVsdE1vZGV8fCJkZWZhdWx0In0pKX0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5lcnJvcj8odD96ZSh0LHIuZXJyb3IpOmsoci5lcnJvciwiZXJyb3IiKSxudWxsKToobi5jbGF1ZGVIaXN0b3J5PW4uY2xhdWRlSGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24oaSl7cmV0dXJuIGkuY2xhdWRlU2Vzc2lvbklkIT09ZX0pLG4uc2VsZWN0ZWRJZD1yLmlkLHllKCksbi5kcmFmdHNbci5pZF09IiIscil9KS5jYXRjaChmdW5jdGlvbihyKXt2YXIgaT1yJiZyLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTYzMDkgQ2xhdWRlIFx1NEYxQVx1OEJERCBJRCBcdTYwNjJcdTU5MERcdTRGMUFcdThCRERcdTMwMDIiO3JldHVybiB0P3plKHQsaSk6ayhpLCJlcnJvciIpLG51bGx9KTpQcm9taXNlLnJlc29sdmUobnVsbCl9ZnVuY3Rpb24gY24oZSl7cmV0dXJuIWV8fCFlLmlkP1Byb21pc2UucmVzb2x2ZSgpOihuLnNlbGVjdGVkSWQ9ZS5pZCx5ZSgpLG4uY3VycmVudE1lc3NhZ2VzPVtdLGdyKCksQnQoKSxDcihlLmlkKSxaKGUpLHBlKCksTG4oZS5pZCksdm4oZS5pZCkudGhlbihmdW5jdGlvbigpe2p0KCEwKX0pKX1mdW5jdGlvbiBpbyhlKXtyZXR1cm4gcm8oZSkudGhlbihmdW5jdGlvbih0KXtyZXR1cm4gdD8odC5jbGF1ZGVTZXNzaW9uSWQmJih0LnByb3ZpZGVyPT09ImNvZGV4Ij9uLmNvZGV4SGlzdG9yeT1uLmNvZGV4SGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24ocil7cmV0dXJuIHIuY2xhdWRlU2Vzc2lvbklkIT09dC5jbGF1ZGVTZXNzaW9uSWR9KTpuLmNsYXVkZUhpc3Rvcnk9bi5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihyKXtyZXR1cm4gci5jbGF1ZGVTZXNzaW9uSWQhPT10LmNsYXVkZVNlc3Npb25JZH0pKSxjbih0KS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIHR9KSk6bnVsbH0pfWZ1bmN0aW9uIFptKGUsdCxyKXtyZXR1cm4ga3AoZSx0LHIpLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGk/Y24oaSkudGhlbihmdW5jdGlvbigpe3JldHVybiBpfSk6bnVsbH0pfWZ1bmN0aW9uIGVnKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3ZWxjb21lLWlucHV0Iik7aWYodCl7dC5wbGFjZWhvbGRlcj0iXHU2QjYzXHU1NzI4XHU2MDFEXHU4MDAzXHUyMDI2Iix0LmRpc2FibGVkPSEwO3ZhciByPW4uY2hhdE1vZGV8fCJtYW5hZ2VkIixpPWV0KCksYT1odCgpLHU9bi5jaGF0TW9kZWx8fG4uY29uZmlnJiZuLmNvbmZpZy5kZWZhdWx0TW9kZWx8fCIiO2ZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7Y29tbWFuZDphLGN3ZDppLG1vZGU6cixpbml0aWFsSW5wdXQ6ZSxtb2RlbDp1fHx2b2lkIDAsdGhpbmtpbmdFZmZvcnQ6bi5jaGF0VGhpbmtpbmd8fHZvaWQgMH0pKX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpfSkudGhlbihmdW5jdGlvbihzKXtyZXR1cm4gcy5lcnJvcj8oayhzLmVycm9yLCJlcnJvciIpLHQucGxhY2Vob2xkZXI9Ilx1OEY5M1x1NTE2NVx1NkQ4OFx1NjA2RiIsdC5kaXNhYmxlZD0hMSxudWxsKTpjbihzKX0pLmNhdGNoKGZ1bmN0aW9uKHMpe2socyYmcy5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4XHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSx0LnBsYWNlaG9sZGVyPSJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYiLHQuZGlzYWJsZWQ9ITF9KS5maW5hbGx5KGZ1bmN0aW9uKCl7dC5wbGFjZWhvbGRlcj0iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGIix0LmRpc2FibGVkPSExfSl9fWZ1bmN0aW9uIHRnKGUsdCxyKXt2YXIgaT1uLmNoYXRNb2RlfHwibWFuYWdlZCIsYT1ldCgpLHU9aHQoKSxzPW4uY2hhdE1vZGVsfHxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGVsfHwiIjtmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe2NvbW1hbmQ6dSxjd2Q6YSxtb2RlOmksaW5pdGlhbElucHV0OmV8fHZvaWQgMCxtb2RlbDpzfHx2b2lkIDAsdGhpbmtpbmdFZmZvcnQ6bi5jaGF0VGhpbmtpbmd8fHZvaWQgMH0pKX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uanNvbigpfSkudGhlbihmdW5jdGlvbihvKXtyZXR1cm4gby5lcnJvcj8oayhvLmVycm9yLCJlcnJvciIpLG51bGwpOih0JiYodC52YWx1ZT0iIiksciYmKHIudmFsdWU9IiIpLGNuKG8pKX0pLmNhdGNoKGZ1bmN0aW9uKG8pe2sobyYmby5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1NDJGXHU1MkE4XHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKX0pfWZ1bmN0aW9uIEFwKGUpe2UuZGlzYWJsZWQ9ITAsaW8oZS5kYXRhc2V0LnNlc3Npb25JZCkuZmluYWxseShmdW5jdGlvbigpe2UuZGlzYWJsZWQ9ITF9KX1mdW5jdGlvbiB4cChlKXt2YXIgdD1lLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkLHI9ZS5kYXRhc2V0LmN3ZDt0JiYoZS5kaXNhYmxlZD0hMCxTcCh0LHIpLnRoZW4oZnVuY3Rpb24oaSl7aSYmaS5pZCYmKG4uY29kZXhIaXN0b3J5PW4uY29kZXhIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4gYS5jbGF1ZGVTZXNzaW9uSWQhPT10fSksbi5zZWxlY3RlZElkPWkuaWQseWUoKSxuLmRyYWZ0c1tpLmlkXT0iIixjbihpKS50aGVuKGZ1bmN0aW9uKCl7VnQoKX0pKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtlLmRpc2FibGVkPSExfSkpfWZ1bmN0aW9uIFNwKGUsdCl7cmV0dXJuIGZldGNoKCIvYXBpL2NvZGV4LXNlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KGUpKyIvcmVzdW1lIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7bW9kZTpuLmNoYXRNb2RlfHxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGV8fCJkZWZhdWx0Iixjd2Q6dH0pKX0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5lcnJvcj8oayhyLmVycm9yLCJlcnJvciIpLG51bGwpOnJ9KS5jYXRjaChmdW5jdGlvbihyKXtyZXR1cm4gayhyJiZyLm1lc3NhZ2V8fCJcdTY1RTBcdTZDRDVcdTYwNjJcdTU5MERcdTUzODZcdTUzRjJcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpLG51bGx9KX1mdW5jdGlvbiBJcChlKXt2YXIgdD1lLmRhdGFzZXQuY2xhdWRlU2Vzc2lvbklkO3QmJmtuKCJcdTc4NkVcdThCQTRcdTk2OTBcdTg1Q0ZcdThGRDlcdTY3NjEgQ29kZXggXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHU1NDE3XHVGRjFGIix7dGl0bGU6Ilx1OTY5MFx1ODVDRiBDb2RleCBcdTUzODZcdTUzRjIiLG9rTGFiZWw6Ilx1OTY5MFx1ODVDRiJ9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHIpe3ZhciBpPWUuY2xvc2VzdCgiLmNsYXVkZS1oaXN0b3J5LWl0ZW0iKTtpJiYoaS5zdHlsZS5vcGFjaXR5PSIwLjUiKSxmZXRjaCgiL2FwaS9jb2RleC1oaXN0b3J5LyIrZW5jb2RlVVJJQ29tcG9uZW50KHQpLHttZXRob2Q6IkRFTEVURSIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oYSl7cmV0dXJuIGEuanNvbigpfSkudGhlbihmdW5jdGlvbihhKXthJiZhLm9rPyhuLmNvZGV4SGlzdG9yeT1uLmNvZGV4SGlzdG9yeS5maWx0ZXIoZnVuY3Rpb24odSl7cmV0dXJuIHUuY2xhdWRlU2Vzc2lvbklkIT09dH0pLHBlKCkpOmkmJihpLnN0eWxlLm9wYWNpdHk9IjEiKX0pLmNhdGNoKGZ1bmN0aW9uKCl7aSYmKGkuc3R5bGUub3BhY2l0eT0iMSIpfSl9fSl9ZnVuY3Rpb24gVHAoZSl7dmFyIHQ9ZS5kYXRhc2V0LmNsYXVkZVNlc3Npb25JZCxyPWUuZGF0YXNldC5jd2Q7dCYmKGUuZGlzYWJsZWQ9ITAsZ2kodCxyKS50aGVuKGZ1bmN0aW9uKGkpe2kmJmkuaWQmJihuLmNsYXVkZUhpc3Rvcnk9bi5jbGF1ZGVIaXN0b3J5LmZpbHRlcihmdW5jdGlvbihhKXtyZXR1cm4gYS5jbGF1ZGVTZXNzaW9uSWQhPT10fSksbi5zZWxlY3RlZElkPWkuaWQseWUoKSxuLmRyYWZ0c1tpLmlkXT0iIixjbihpKS50aGVuKGZ1bmN0aW9uKCl7VnQoKX0pKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtlLmRpc2FibGVkPSExfSkpfWZ1bmN0aW9uIGdpKGUsdCl7cmV0dXJuIGZldGNoKCIvYXBpL2NsYXVkZS1zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3Jlc3VtZSIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe21vZGU6bi5jaGF0TW9kZXx8bi5jb25maWcmJm4uY29uZmlnLmRlZmF1bHRNb2RlfHwiZGVmYXVsdCIsY3dkOnR9KSl9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuZXJyb3I/KGsoci5lcnJvciwiZXJyb3IiKSxudWxsKTpyfSkuY2F0Y2goZnVuY3Rpb24ocil7cmV0dXJuIGsociYmci5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2MDYyXHU1OTBEXHU1Mzg2XHU1M0YyXHU0RjFBXHU4QkREXHUzMDAyIiwiZXJyb3IiKSxudWxsfSl9ZnVuY3Rpb24gU3IoKXtyZXR1cm4ib250b3VjaHN0YXJ0ImluIHdpbmRvd3x8bmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzPjB9ZnVuY3Rpb24ganQoZSl7aWYoIW4udGVybWluYWxJbnRlcmFjdGl2ZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpOyF0fHwhbi5zZWxlY3RlZElkfHxkb2N1bWVudC5hY3RpdmVFbGVtZW50IT09dCYmKGUmJlNyKCl8fFNhKHQpKX19ZnVuY3Rpb24gbmcoKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO2UmJihlLnNjcm9sbFRvcD0wKX1mdW5jdGlvbiBhbygpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpO2UmJmUuc3R5bGUucmVtb3ZlUHJvcGVydHkoIi0ta2V5Ym9hcmQtb2Zmc2V0Iil9ZnVuY3Rpb24gdW8oKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtcGFuZWwiKTtlJiZlLnN0eWxlLnJlbW92ZVByb3BlcnR5KCItLWtleWJvYXJkLW9mZnNldCIpfWZ1bmN0aW9uIGhpKGUpe2lmKGUpe3ZhciB0PWUuc2VsZWN0aW9uU3RhcnQscj1lLnNlbGVjdGlvbkVuZDt5aShlKSx0eXBlb2YgdD09Im51bWJlciImJnR5cGVvZiByPT0ibnVtYmVyIiYmZS5zZXRTZWxlY3Rpb25SYW5nZSh0LHIpfX1mdW5jdGlvbiBzbyhlKXshZXx8ZS5kYXRhc2V0LnRvdWNoU2Nyb2xsQm91bmQ9PT0idHJ1ZSJ8fChlLmRhdGFzZXQudG91Y2hTY3JvbGxCb3VuZD0idHJ1ZSIsZS5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaHN0YXJ0IixmdW5jdGlvbigpe2Uuc2Nyb2xsSGVpZ2h0PD1lLmNsaWVudEhlaWdodCsxfHwoZS5zY3JvbGxUb3A8PTA/ZS5zY3JvbGxUb3A9MTplLnNjcm9sbFRvcCtlLmNsaWVudEhlaWdodD49ZS5zY3JvbGxIZWlnaHQmJihlLnNjcm9sbFRvcD1NYXRoLm1heCgxLGUuc2Nyb2xsSGVpZ2h0LWUuY2xpZW50SGVpZ2h0LTEpKSl9LHtwYXNzaXZlOiEwfSkpfWZ1bmN0aW9uIG9vKGUpe2UmJihIdChlKSxoaShlKSl9ZnVuY3Rpb24gTHAoZSl7dmFyIHQ9ZSYmZS50YXJnZXQ/ZS50YXJnZXQ6ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO3QmJihhbygpLG9vKHQpKX1mdW5jdGlvbiBNcChlKXt2YXIgdD1lJiZlLnRhcmdldD9lLnRhcmdldDpkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7dW8oKSxscygyMjAwLHQpO3ZhciByPVs4MCwyMDAsMzgwLDYyMCw5MDBdO3IuZm9yRWFjaChmdW5jdGlvbihpLGEpe3NldFRpbWVvdXQoZnVuY3Rpb24oKXtWbighMSksYT09PTEmJlNyKCkmJihpdCgia2V5Ym9hcmQtYmx1ciIse2ZvcmNlUmVwbGF5OiEwfSksbXQoImtleWJvYXJkIikpfSxpKX0pfWZ1bmN0aW9uIE9wKGUpe2UmJihlLnNldFNlbGVjdGlvblJhbmdlKGUudmFsdWUubGVuZ3RoLGUudmFsdWUubGVuZ3RoKSxoaShlKSl9ZnVuY3Rpb24gU2EoZSl7ZSYmKGUuZm9jdXMoe3ByZXZlbnRTY3JvbGw6ITB9KSxPcChlKSl9ZnVuY3Rpb24gUHAoZSl7c28oZSksb28oZSl9ZnVuY3Rpb24gcXAoZSl7U2EoZSl9ZnVuY3Rpb24gcmcoZSl7YW8oKSxoaShlKX1mdW5jdGlvbiBIcCgpe3VvKCl9ZnVuY3Rpb24gX3AoZSl7aGkoZSl9ZnVuY3Rpb24gaWcoZSl7cXAoZSl9ZnVuY3Rpb24gTnAoZSl7UHAoZSl9ZnVuY3Rpb24gYWcoKXtIcCgpfWZ1bmN0aW9uIHVnKGUpe19wKGUpfWZ1bmN0aW9uIGpwKGUsdCl7aWYoIWV8fCF0fHxkb2N1bWVudC5hY3RpdmVFbGVtZW50IT09dClyZXR1cm4hMTt2YXIgcj13aW5kb3cuaW5uZXJIZWlnaHQtZS5oZWlnaHQtZS5vZmZzZXRUb3A7aWYocjw9NTApcmV0dXJuITE7dmFyIGk9dC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtyZXR1cm4gaS5ib3R0b20+ZS5oZWlnaHQtMTJ9ZnVuY3Rpb24geWkoZSl7aWYoZSl7dmFyIHQ9ZS5zY3JvbGxIZWlnaHQ+ZS5jbGllbnRIZWlnaHQrMTtpZighdCl7ZS5zY3JvbGxUb3A9MDtyZXR1cm59ZS5zY3JvbGxUb3A9ZS5zY3JvbGxIZWlnaHR9fWZ1bmN0aW9uIGxvKCl7aWYobi50ZXJtaW5hbEludGVyYWN0aXZlKXtjbygpO3JldHVybn1pZighU3IoKSl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpOyFlfHwhbi5zZWxlY3RlZElkfHxkb2N1bWVudC5hY3RpdmVFbGVtZW50PT09ZXx8U2EoZSl9fWZ1bmN0aW9uIGNvKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2UmJihlLnNldEF0dHJpYnV0ZSgidGFiaW5kZXgiLCIwIiksZS5mb2N1cygpLG4udGVybWluYWwmJm4udGVybWluYWwuZm9jdXMmJm4udGVybWluYWwuZm9jdXMoKSl9ZnVuY3Rpb24gUnAoKXt2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtcGFuZWwiKSx0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2VzIik7aWYoInZpcnR1YWxLZXlib2FyZCJpbiBuYXZpZ2F0b3Ipe3ZhciByPW5hdmlnYXRvci52aXJ0dWFsS2V5Ym9hcmQ7ci5hZGRFdmVudExpc3RlbmVyKCJnZW9tZXRyeWNoYW5nZSIsZnVuY3Rpb24oKXtlJiZlLnN0eWxlLnJlbW92ZVByb3BlcnR5KCJwYWRkaW5nLWJvdHRvbSIpfSl9dmFyIGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpO2kmJmkuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7bG8oKX0pLHQmJnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe3ZhciB1PWEudGFyZ2V0O3UudGFnTmFtZSE9PSJBIiYmdS50YWdOYW1lIT09IkJVVFRPTiImJiF1LmNsb3Nlc3QoImJ1dHRvbiIpJiYhdS5jbG9zZXN0KCJbZGF0YS10b29sLXRvZ2dsZV0iKSYmbG8oKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihhKXtpZihTcigpKXt2YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7aWYoISghdXx8ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCE9PXUpKXt2YXIgcz1hLnRhcmdldDshc3x8dHlwZW9mIHMuY2xvc2VzdCE9ImZ1bmN0aW9uInx8cy5jbG9zZXN0KCIuaW5wdXQtcGFuZWwiKXx8cy5jbG9zZXN0KCIjbWluaS1rZXlib2FyZCIpfHxzLmNsb3Nlc3QoIiNtaW5pLWtleWJvYXJkLWZhYiIpfHxzLmNsb3Nlc3QoIiNtaW5pLWtleWJvYXJkLXRvZ2dsZSIpfHxzLmNsb3Nlc3QoIiN0ZXJtaW5hbC1pbnRlcmFjdGl2ZS10b2dnbGUiKXx8cy5jbG9zZXN0KCIud2FuZC1qb3lzdGljay1yb290Iil8fHUuYmx1cigpfX19LCEwKX1mdW5jdGlvbiBJYSgpe3RyeXt3aW5kb3cuc2Nyb2xsVG8oMCwwKX1jYXRjaHt9ZG9jdW1lbnQuc2Nyb2xsaW5nRWxlbWVudCYmKGRvY3VtZW50LnNjcm9sbGluZ0VsZW1lbnQuc2Nyb2xsVG9wPTApLGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCYmKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3A9MCksZG9jdW1lbnQuYm9keSYmKGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wPTApfWZ1bmN0aW9uIHR0KGUpe24ucmVuZGVyUGVuZGluZyYmIWV8fChuLnJlbmRlclBlbmRpbmc9ITAsZT8oYmkoITApLG4ucmVuZGVyUGVuZGluZz0hMSk6cmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7YmkoITEpLG4ucmVuZGVyUGVuZGluZz0hMX0pKX1uLmNoYXRSZW5kZXJUaW1lcj1udWxsO2Z1bmN0aW9uIGZvKGUpe2lmKCEobi5jaGF0UmVuZGVyVGltZXImJiFlKSl7aWYobi5jaGF0UmVuZGVyVGltZXImJmNsZWFyVGltZW91dChuLmNoYXRSZW5kZXJUaW1lciksZSl7bi5jaGF0UmVuZGVyVGltZXI9bnVsbCx0dCgpO3JldHVybn12YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1uLnNlbGVjdGVkSWR9KSxyPXQmJnQuc3RhdHVzPT09InJ1bm5pbmciJiZ0LnNlc3Npb25LaW5kIT09InN0cnVjdHVyZWQiLGk9cj9FczpGcztuLmNoYXRSZW5kZXJUaW1lcj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7bi5jaGF0UmVuZGVyVGltZXI9bnVsbDt2YXIgYT1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24odSl7cmV0dXJuIHUuaWQ9PT1uLnNlbGVjdGVkSWR9KTthJiYobi5jdXJyZW50TWVzc2FnZXM9VmUoYSxhdChhLGEub3V0cHV0LCEwKSkpLHR0KCl9LGkpfX1mdW5jdGlvbiBXcChlLHQpe2lmKCFlfHwhdHx8dC5sZW5ndGg9PT0wKXJldHVybltdO2Z1bmN0aW9uIHIoRil7cmV0dXJuIEYucmVwbGFjZSgvXHgxQig/OltALVpcXC1fXXxcW1swLT9dKlsgLS9dKltALX5dKS9nLCIiKX1mb3IodmFyIGk9cihlKSxhPVtdLHU9W10scz0wO3M8dC5sZW5ndGg7cysrKWlmKHRbc10ucm9sZT09PSJ1c2VyIil7dmFyIG89IiIsbD10W3NdLmNvbnRlbnQ7aWYodHlwZW9mIGw9PSJzdHJpbmciKW89bDtlbHNlIGlmKEFycmF5LmlzQXJyYXkobCkpe2Zvcih2YXIgYz0wO2M8bC5sZW5ndGg7YysrKWlmKGxbY10udHlwZT09PSJ0ZXh0Iil7bz1sW2NdLnRleHQ7YnJlYWt9fW8mJnUucHVzaCh7dGV4dDpvLGluZGV4OnN9KX1mb3IodmFyIGY9MCxzPTA7czx1Lmxlbmd0aDtzKyspe3ZhciBkPXVbc10sdj1pLmluZGV4T2YoIlx1Mjc2RiAiK2QudGV4dCxmKTtpZih2PT09LTEmJih2PWkuaW5kZXhPZihgClx1Mjc2RiBgK2QudGV4dCxmKSx2IT09LTEmJih2Kz0xKSksdj5mKXtmb3IodmFyIGc9aS5zdWJzdHJpbmcoZix2KSxoPWcuc3BsaXQoYApgKSxtPVtdLGM9MDtjPGgubGVuZ3RoO2MrKyl7dmFyIGI9aFtjXS50cmltKCk7IWJ8fGIuc3RhcnRzV2l0aCgiXHUyNTAwXHUyNTAwXHUyNTAwXHUyNTAwIil8fGI9PT0iXHUyNzZGInx8Yj09PSI/Inx8Yj09PSIifHxiLmluY2x1ZGVzKCJDbGF1ZGUgQ29kZSB2Iil8fGIuaW5jbHVkZXMoIk9wdXMiKSYmYi5pbmNsdWRlcygid2l0aCIpfHxiLmluY2x1ZGVzKCJTb25uZXQiKSYmYi5pbmNsdWRlcygid2l0aCIpfHxiLmluY2x1ZGVzKCJBUEkgVXNhZ2UiKXx8Yi5pbmNsdWRlcygiQmlsbGluZyIpfHxiLmluY2x1ZGVzKCJmb3Igc2hvcnRjdXRzIil8fGIuaW5jbHVkZXMoIi9lZmZvcnQiKXx8Yi5tYXRjaCgvXlvilrjilpDilp3ilpjilpfilpbilojilozilo3ilo7ilo/ilpTiloHiloLiloPiloTiloXilobilofilojilohdLyl8fGIubWF0Y2goL15b4pa44paQ4pad4paY4paX4paW4paI4paM4paN4paO4paP4paU4paB4paC4paD4paE4paF4paG4paH4paI4paIXXszLH0vKXx8Yi5sZW5ndGg+MyYmbS5wdXNoKGIpfW0ubGVuZ3RoPjAmJmEucHVzaCh7YmVmb3JlTWVzc2FnZTpkLmluZGV4LGNvbnRlbnQ6bS5qb2luKGAKYCl9KX1mPXYrZC50ZXh0Lmxlbmd0aCsyfXJldHVybiBhfWZ1bmN0aW9uIFRhKGUpe2lmKCFlKXJldHVybiBudWxsO3ZhciB0PWUucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZXMiKTtyZXR1cm4gdHx8KHQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksdC5jbGFzc05hbWU9ImNoYXQtbWVzc2FnZXMiLGUuYXBwZW5kQ2hpbGQodCksdCl9ZnVuY3Rpb24gcG8oZSx0KXt2YXIgcj1UYShlKTtyZXR1cm4gcj8oci5pbm5lckhUTUw9dCxhcigpLFplKCkscik6bnVsbH1mdW5jdGlvbiBiaShlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2hhdC1vdXRwdXQiKTtpZighdClyZXR1cm47dmFyIHI9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHope3JldHVybiB6LmlkPT09bi5zZWxlY3RlZElkfSk7aWYoIXIpe24ubGFzdFJlbmRlcmVkRW1wdHkhPT0ibm9uZSImJihwbyh0LCc8ZGl2IGNsYXNzPSJlbXB0eS1zdGF0ZSI+PHN0cm9uZz5cdTY3MkFcdTkwMDlcdTYyRTlcdTRGMUFcdThCREQ8L3N0cm9uZz48YnI+XHU3MEI5XHU1MUZCXHU0RTBBXHU2NUI5XHUzMDBDXHU2NUIwXHU1QkY5XHU4QkREXHUzMDBEXHU1RjAwXHU1OUNCXHU0RjYwXHU3Njg0XHU3QjJDXHU0RTAwXHU2QjIxXHU1QkY5XHU4QkREXHUzMDAyPC9kaXY+Jyksbi5sYXN0UmVuZGVyZWRFbXB0eT0ibm9uZSIsbi5sYXN0UmVuZGVyZWRNc2dDb3VudD0wKTtyZXR1cm59dmFyIGk9bi5jdXJyZW50TWVzc2FnZXMsYT1hdihpKTtpZihPYT11dihpKSxpLmxlbmd0aD09PTApe2lmKG4ubGFzdFJlbmRlcmVkRW1wdHkhPT0iZW1wdHkiKXt2YXIgdT0iIjt1ZShyKSYmKHU9JzxkaXYgY2xhc3M9ImVtcHR5LXN0YXRlLXRyaW8td3JhcCI+PGRpdiBjbGFzcz0iZW1wdHktc3RhdGUtdHJpby1oaW50Ij5cdTlFRDhcdThCQTRcdTRGMUFcdTYzMDlcdTRFRTVcdTRFMEJcdThCQkVcdTdGNkVcdTUzRDFcdTkwMDFcdUZGMENcdTUzRUZcdTcwQjlcdTUxRkJcdThDMDNcdTY1NzRcdUZGMUE8L2Rpdj4nK1VhKHIse2tpbmQ6ImRyb3Bkb3duIn0pKyI8L2Rpdj4iKSxwbyh0LCc8ZGl2IGNsYXNzPSJlbXB0eS1zdGF0ZSI+PHN0cm9uZz5cdTVCRjlcdThCRERcdTVERjJcdTVGMDBcdTU5Q0I8L3N0cm9uZz48YnI+XHU1NzI4XHU0RTBCXHU2NUI5XHU4RjkzXHU1MTY1XHU2ODQ2XHU1M0QxXHU5MDAxXHU2RDg4XHU2MDZGXHVGRjBDQ2xhdWRlIFx1NEYxQVx1ODFFQVx1NTJBOFx1NTZERVx1NTkwRFx1MzAwMjwvZGl2PicrdSksbi5sYXN0UmVuZGVyZWRFbXB0eT0iZW1wdHkiLG4ubGFzdFJlbmRlcmVkTXNnQ291bnQ9MH1pdShudWxsLHIpLE1hKFtdKTtyZXR1cm59dmFyIHM9aS5sZW5ndGg7cz5uLmNoYXRSZW5kZXJlZENvdW50JiYobi5jaGF0UmVuZGVyZWRDb3VudD1zKTt2YXIgbz1NYXRoLm1heCgwLHMtbi5jaGF0UmVuZGVyZWRDb3VudCksbD1vPjA/aS5zbGljZShvKTppLGM9bz4wLGY9bC5sZW5ndGgsZD1yLm91dHB1dD9yLm91dHB1dC5sZW5ndGg6MDtpZihyLm1lc3NhZ2VzJiZyLm1lc3NhZ2VzLmxlbmd0aD4wKXtmb3IodmFyIHY9MCxnPTAsaD0wO2g8ci5tZXNzYWdlcy5sZW5ndGg7aCsrKXt2YXIgbT1yLm1lc3NhZ2VzW2hdLmNvbnRlbnQ7aWYobSlpZihBcnJheS5pc0FycmF5KG0pKXt2Kz1tLmxlbmd0aDtmb3IodmFyIGI9MDtiPG0ubGVuZ3RoO2IrKyl7dmFyIEY9bVtiXTtGLnRleHQmJihnKz1GLnRleHQubGVuZ3RoKSxGLnRoaW5raW5nJiYoZys9Ri50aGlua2luZy5sZW5ndGgpLEYuY29udGVudCYmKGcrPUYuY29udGVudC5sZW5ndGgpLEYuaWQmJihnKz1GLmlkLmxlbmd0aCksRi50b29sX3VzZV9pZCYmKGcrPUYudG9vbF91c2VfaWQubGVuZ3RoKSxGLmRlc2NyaXB0aW9uJiYoZys9Ri5kZXNjcmlwdGlvbi5sZW5ndGgpLEYuaW5wdXQmJihnKz1KU09OLnN0cmluZ2lmeShGLmlucHV0KS5sZW5ndGgpfX1lbHNlIHYrPTEsZz1TdHJpbmcobSkubGVuZ3RofWQ9ZioxZTUrdioxZTMrZ312YXIgdz1lfHxmIT09bi5sYXN0UmVuZGVyZWRNc2dDb3VudDtpZighdyYmZj09PW4ubGFzdFJlbmRlcmVkTXNnQ291bnQmJmQ9PT1uLmxhc3RSZW5kZXJlZEhhc2gpe3ZhciBFPXQucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZXMiKTtFJiZpdShFLHIpLE1hKGkpO3JldHVybn12YXIgQT1uLmxhc3RSZW5kZXJlZEhhc2gseD1uLmxhc3RSZW5kZXJlZE1zZ0NvdW50O2lmKG4ubGFzdFJlbmRlcmVkTXNnQ291bnQ9ZixuLmxhc3RSZW5kZXJlZEhhc2g9ZCxFPVRhKHQpLCFFKXJldHVybjt2YXIgST1faShFKSxqPUUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZTpub3QoLnN5c3RlbS1pbmZvKSIpLmxlbmd0aCxWPXd8fGo9PT0wfHxmIT09ajtmdW5jdGlvbiBHKCl7Zm9yKHZhciB6PVdwKHIub3V0cHV0LGwpLGllPSIiLFRlPWwuc2xpY2UoKS5yZXZlcnNlKCksY2U9bC5sZW5ndGgsYWU9MDthZTxUZS5sZW5ndGg7YWUrKyl7Zm9yKHZhciBrZT1UZVthZV0scHQ9Y2UtMS1hZSxzdD1wdCtvLEF0PW51bGwsVWU9MDtVZTx6Lmxlbmd0aDtVZSsrKWlmKHpbVWVdLmJlZm9yZU1lc3NhZ2U9PT1wdCl7QXQ9eltVZV07YnJlYWt9QXQmJihpZSs9JzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSBzeXN0ZW0taW5mbyI+PGRpdiBjbGFzcz0ic3lzdGVtLWluZm8tY2FyZCI+PGRpdiBjbGFzcz0ic3lzdGVtLWluZm8taGVhZGVyIj5cdTIxMzlcdUZFMEYgXHU3Q0ZCXHU3RURGXHU0RkUxXHU2MDZGPC9kaXY+PGRpdiBjbGFzcz0ic3lzdGVtLWluZm8tY29udGVudCI+JytwKEF0LmNvbnRlbnQpKyI8L2Rpdj48L2Rpdj48L2Rpdj4iKSxpZSs9cWEoa2UsQltzdF18fG51bGwsc3QsYSl9YyYmKGllKz0nPGRpdiBjbGFzcz0iY2hhdC1sb2FkLW1vcmUiIGlkPSJjaGF0LWxvYWQtbW9yZS1zZW50aW5lbCI+PGJ1dHRvbiBjbGFzcz0iY2hhdC1sb2FkLW1vcmUtYnRuIiB0eXBlPSJidXR0b24iPlx1NTJBMFx1OEY3RFx1NjZGNFx1NjVFOVx1NzY4NCAnK01hdGgubWluKG4uY2hhdFBhZ2VTaXplLG8pKyIgXHU2NzYxXHU2RDg4XHU2MDZGPC9idXR0b24+PC9kaXY+Iik7dmFyIG90PS0xLEtlPTA7aWYoaj4wJiYhSSlmb3IodmFyIHh0PUUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wLFllPUUucXVlcnlTZWxlY3RvckFsbCgiLmNoYXQtbWVzc2FnZTpub3QoLnN5c3RlbS1pbmZvKSIpLFJlPTA7UmU8WWUubGVuZ3RoO1JlKyspe3ZhciBBZT1ZZVtSZV0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7aWYoQWUuYm90dG9tPj14dCl7dmFyIHZlPVllW1JlXS5nZXRBdHRyaWJ1dGUoImRhdGEtbXNnLWluZGV4Iik7dmUhPW51bGwmJihvdD1wYXJzZUludCh2ZSwxMCksS2U9QWUudG9wLXh0KTticmVha319aWYoRS5pbm5lckhUTUw9aWUsKGZ1bmN0aW9uKCl7Zm9yKHZhciBfZT1FLnF1ZXJ5U2VsZWN0b3JBbGwoIi5jaGF0LW1lc3NhZ2U6bm90KC5zeXN0ZW0taW5mbykiKSxDZT1fZS5sZW5ndGgsSmU9MDtKZTxDZTtKZSsrKV9lW0plXS5zZXRBdHRyaWJ1dGUoImRhdGEtbXNnLWluZGV4IixTdHJpbmcobytDZS0xLUplKSl9KSgpLHg9PT0wJiYhbi5jaGF0SW5pdGlhbFJlbmRlckRvbmUpRS5zY3JvbGxUb3A9MCxuLmNoYXRTdGlja1RvQm90dG9tPSEwLGlyKHtyZW1vdmVEaXZpZGVyOiEwfSksbi5jaGF0SW5pdGlhbFJlbmRlckRvbmU9ITA7ZWxzZSBpZih4PT09MCYmbi5jaGF0U3RpY2tUb0JvdHRvbSlFLnNjcm9sbFRvcD0wO2Vsc2UgaWYoSSlFLnNjcm9sbFRvcD0wO2Vsc2UgaWYob3Q+PTApe3ZhciBFZT1FLnF1ZXJ5U2VsZWN0b3IoJy5jaGF0LW1lc3NhZ2VbZGF0YS1tc2ctaW5kZXg9Iicrb3QrJyJdJyk7aWYoRWUpe3ZhciBDPUUuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkudG9wLGx0PUVlLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHZ0PWx0LnRvcC1DLUtlO01hdGguYWJzKHZ0KT4uNSYmKG4uY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSEwLEUuc2Nyb2xsVG9wKz12dCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMX0pKX19dm8oRSksYXIoKSxXaShFKTt2YXIgYnQ9RS5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlOm5vdCguc3lzdGVtLWluZm8pIik7aWYoYnQpe3ZhciBxZT1idC5xdWVyeVNlbGVjdG9yQWxsKCIudG9vbC11c2UtY2FyZCwgLmlubGluZS1kaWZmW2RhdGEtZXhwYW5kLWtleV0iKTtpZihxZS5sZW5ndGg+MCl7dmFyIFN0PXFlWzBdLGVuPXFuKFN0KTtydChlbik9PT1udWxsJiZTdC5jbGFzc0xpc3QucmVtb3ZlKCJjb2xsYXBzZWQiKTtmb3IodmFyIGN0PTE7Y3Q8cWUubGVuZ3RoO2N0Kyspe3ZhciBIZT1xbihxZVtjdF0pO2lmKHJ0KEhlKT09PW51bGwpe2lmKHFlW2N0XS5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyIikmJiFxZVtjdF0uY2xhc3NMaXN0LmNvbnRhaW5zKCJhc2stdXNlci1hbnN3ZXJlZCIpKWNvbnRpbnVlO3FlW2N0XS5jbGFzc0xpc3QuYWRkKCJjb2xsYXBzZWQiKX19fX1yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtOaShFKSxaZSgpLE1sKCl9KX1mdW5jdGlvbiBMKHosaWUpe3ZhciBUZT16LnF1ZXJ5U2VsZWN0b3JBbGwoIi50b29sLXVzZS1jYXJkLCAuaW5saW5lLWRpZmZbZGF0YS1leHBhbmQta2V5XSIpO1RlLmZvckVhY2goZnVuY3Rpb24oY2Upe3ZhciBhZT1xbihjZSk7aWYocnQoYWUpPT09bnVsbCYmIShjZS5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyIikmJiFjZS5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyLWFuc3dlcmVkIikpKXtpZihpZSl7Zm9yKHZhciBrZT0wO2tlPGllLmxlbmd0aDtrZSsrKWlmKGllW2tlXS5jb250YWlucyhjZSkpcmV0dXJufWNlLmNsYXNzTGlzdC5hZGQoImNvbGxhcHNlZCIpfX0pfXZhciBCPXt9O2lmKChmdW5jdGlvbigpe2Zvcih2YXIgej17aW5wdXRUb2tlbnM6MCxvdXRwdXRUb2tlbnM6MCxjYWNoZVJlYWRJbnB1dFRva2VuczowLHRvdGFsQ29zdFVzZDowfSxpZT0tMSxUZT0wO1RlPGkubGVuZ3RoO1RlKyspe3ZhciBjZT1pW1RlXTtpZihjZS5yb2xlPT09InVzZXIiKWllPj0wJiYoei5pbnB1dFRva2Vucz4wfHx6Lm91dHB1dFRva2Vucz4wfHx6LnRvdGFsQ29zdFVzZD4wKSYmKEJbaWVdPXtpbnB1dFRva2Vuczp6LmlucHV0VG9rZW5zLG91dHB1dFRva2Vuczp6Lm91dHB1dFRva2VucyxjYWNoZVJlYWRJbnB1dFRva2Vuczp6LmNhY2hlUmVhZElucHV0VG9rZW5zLHRvdGFsQ29zdFVzZDp6LnRvdGFsQ29zdFVzZH0pLHo9e2lucHV0VG9rZW5zOjAsb3V0cHV0VG9rZW5zOjAsY2FjaGVSZWFkSW5wdXRUb2tlbnM6MCx0b3RhbENvc3RVc2Q6MH0saWU9LTE7ZWxzZSBpZihjZS5yb2xlPT09ImFzc2lzdGFudCImJmNlLnVzYWdlKXt2YXIgYWU9Y2UudXNhZ2U7ei5pbnB1dFRva2Vucys9YWUuaW5wdXRUb2tlbnN8fDAsei5vdXRwdXRUb2tlbnMrPWFlLm91dHB1dFRva2Vuc3x8MCx6LmNhY2hlUmVhZElucHV0VG9rZW5zKz1hZS5jYWNoZVJlYWRJbnB1dFRva2Vuc3x8MCx6LnRvdGFsQ29zdFVzZCs9YWUudG90YWxDb3N0VXNkfHwwLGllPVRlfWVsc2UgY2Uucm9sZT09PSJhc3Npc3RhbnQiJiYoaWU9VGUpfWllPj0wJiYoei5pbnB1dFRva2Vucz4wfHx6Lm91dHB1dFRva2Vucz4wfHx6LnRvdGFsQ29zdFVzZD4wKSYmKEJbaWVdPXtpbnB1dFRva2Vuczp6LmlucHV0VG9rZW5zLG91dHB1dFRva2Vuczp6Lm91dHB1dFRva2VucyxjYWNoZVJlYWRJbnB1dFRva2Vuczp6LmNhY2hlUmVhZElucHV0VG9rZW5zLHRvdGFsQ29zdFVzZDp6LnRvdGFsQ29zdFVzZH0pfSkoKSxWKUcoKTtlbHNlIGlmKGY+ail7dmFyIFQ9bC5zbGljZShqKTtULnJldmVyc2UoKTtmb3IodmFyIE09ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLEg9W10sJD1bXSxuZT1vK2osUT0wO1E8VC5sZW5ndGg7USsrKXt2YXIgc2U9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IiksZWU9bytqKyhULmxlbmd0aC0xLVEpO3NlLmlubmVySFRNTD1xYShUW1FdLEJbZWVdfHxudWxsLGVlLGEpO3ZhciBTPXNlLmZpcnN0RWxlbWVudENoaWxkO1MmJihTLmNsYXNzTGlzdC5hZGQoImFuaW1hdGUtaW4iKSxTLnNldEF0dHJpYnV0ZSgiZGF0YS1tc2ctaW5kZXgiLFN0cmluZyhlZSkpLEgucHVzaChTKSwkLnB1c2goZWUpLE0uYXBwZW5kQ2hpbGQoUykpfUUuaW5zZXJ0QmVmb3JlKE0sRS5maXJzdENoaWxkKSxhcigpLHZvKEUpLFdpKEUpLEwoRSxIKSxJP3JlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe0UuaXNDb25uZWN0ZWQmJk1hdGguYWJzKEUuc2Nyb2xsVG9wKT4xJiYobi5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITAsRS5zY3JvbGxUb3A9MCxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtuLmNoYXRJc1Byb2dyYW1tYXRpY1Njcm9sbD0hMX0pKSxpcih7cmVtb3ZlRGl2aWRlcjohMH0pLFplKCl9KToobi5jaGF0VW5yZWFkU3RhcnRJbmRleDwwJiYobi5jaGF0VW5yZWFkU3RhcnRJbmRleD1uZSksbi5jaGF0VW5yZWFkQ291bnQrPUgubGVuZ3RoLE5pKEUpLFplKCkpfWVsc2UgaWYoZj09PWomJmQhPT1BKXtmb3IodmFyIE49QXJyYXkuZnJvbShFLnF1ZXJ5U2VsZWN0b3JBbGwoIi5jaGF0LW1lc3NhZ2U6bm90KC5zeXN0ZW0taW5mbykiKSksVz1sLnNsaWNlKCkucmV2ZXJzZSgpLEo9ITEsVT1NYXRoLm1pbig0LFcubGVuZ3RoLE4ubGVuZ3RoKSxYPTA7WDxVO1grKyl7dmFyIG9lPU5bWF0sbGU9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2IikscmU9bytXLmxlbmd0aC0xLVg7bGUuaW5uZXJIVE1MPXFhKFdbWF0sQltyZV18fG51bGwscmUsYSk7dmFyIEJlPWxlLmZpcnN0RWxlbWVudENoaWxkO2lmKEJlKXtpZihvZS5pbm5lckhUTUwhPT1CZS5pbm5lckhUTUx8fG9lLmNsYXNzTmFtZSE9PUJlLmNsYXNzTmFtZSlFLnJlcGxhY2VDaGlsZChCZSxvZSksenAoQmUpLEo9ITA7ZWxzZSBpZihYPjApYnJlYWt9fWlmKCFKJiZXLmxlbmd0aD5VJiZHKCksSil7YXIoKSxXaShFKSxyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtJJiZFLmlzQ29ubmVjdGVkJiZNYXRoLmFicyhFLnNjcm9sbFRvcCk+MSYmKG4uY2hhdElzUHJvZ3JhbW1hdGljU2Nyb2xsPSEwLEUuc2Nyb2xsVG9wPTAscmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7bi5jaGF0SXNQcm9ncmFtbWF0aWNTY3JvbGw9ITF9KSksTmkoRSksWmUoKX0pO3ZhciBEZT1FLnF1ZXJ5U2VsZWN0b3IoIi5jaGF0LW1lc3NhZ2UiKSxiZT1FLnF1ZXJ5U2VsZWN0b3JBbGwoIi50b29sLXVzZS1jYXJkLCAuaW5saW5lLWRpZmZbZGF0YS1leHBhbmQta2V5XSIpLFA9bnVsbDtiZS5mb3JFYWNoKGZ1bmN0aW9uKHope3ZhciBpZT1xbih6KTtydChpZSk9PT1udWxsJiYoei5jbGFzc0xpc3QuY29udGFpbnMoImFzay11c2VyIikmJiF6LmNsYXNzTGlzdC5jb250YWlucygiYXNrLXVzZXItYW5zd2VyZWQiKXx8KERlJiZEZS5jb250YWlucyh6KT9QP3ouY2xhc3NMaXN0LmFkZCgiY29sbGFwc2VkIik6UD16OnouY2xhc3NMaXN0LmFkZCgiY29sbGFwc2VkIikpKX0pfX1lbHNlIGY8aiYmRygpO0tkKEUpLGl1KEUsciksTWEoaSl9dmFyIExhPSExO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbihlKXt2YXIgdD1lLnRhcmdldDtpZighKCF0fHwhKHQgaW5zdGFuY2VvZiBFbGVtZW50KSkpe3ZhciByPXQuY2xvc2VzdCgiI3RvZG8tcHJvZ3Jlc3MtdG9nZ2xlIik7aWYocil7ZS5wcmV2ZW50RGVmYXVsdCgpLGUuc3RvcFByb3BhZ2F0aW9uKCksTGE9IUxhO3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1ib2R5Iik7aSYmYSYmKExhPyhpLmNsYXNzTGlzdC5hZGQoImV4cGFuZGVkIiksYS5jbGFzc0xpc3QuYWRkKCJleHBhbmRlZCIpKTooaS5jbGFzc0xpc3QucmVtb3ZlKCJleHBhbmRlZCIpLGEuY2xhc3NMaXN0LnJlbW92ZSgiZXhwYW5kZWQiKSkpLEVpKCl9fX0pO2Z1bmN0aW9uIEVpKCl7dmFyIGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NoYXQtb3V0cHV0IC5jaGF0LW1lc3NhZ2VzIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1ib2R5Iik7aWYoISghZXx8IXQpKXt2YXIgcj1lLGk9IXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKSxhPXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJleHBhbmRlZCIpLHU9dC5vZmZzZXRIZWlnaHQ7aSYmYSYmdT4wP3Iuc3R5bGUucGFkZGluZ0JvdHRvbT11KzgrInB4IjpyLnN0eWxlLnBhZGRpbmdCb3R0b209IiJ9fWZ1bmN0aW9uIE1hKGUpe2Zvcih2YXIgdD0wLHI9ZS5sZW5ndGgtMTtyPj0wO3ItLSlpZihlW3JdJiZlW3JdLnJvbGU9PT0idXNlciIpe3Q9cisxO2JyZWFrfWZvcih2YXIgaT1udWxsLGE9ZS5sZW5ndGgtMTthPj10O2EtLSl7dmFyIHU9ZVthXTtpZighKCF1LmNvbnRlbnR8fCFBcnJheS5pc0FycmF5KHUuY29udGVudCkpKXtmb3IodmFyIHM9dS5jb250ZW50Lmxlbmd0aC0xO3M+PTA7cy0tKXt2YXIgbz11LmNvbnRlbnRbc107aWYoby50eXBlPT09InRvb2xfdXNlIiYmby5uYW1lPT09IlRvZG9Xcml0ZSImJm8uaW5wdXQmJm8uaW5wdXQudG9kb3Mpe2k9by5pbnB1dC50b2RvczticmVha319aWYoaSlicmVha319dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRvZG8tcHJvZ3Jlc3MiKSxjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLWJvZHkiKTtpZihsKXtpZighaXx8aS5sZW5ndGg9PT0wKXtsLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGMmJmMuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksRWkoKTtyZXR1cm59Zm9yKHZhciBmPTAsZD0wLHY9IiIsZz0wO2c8aS5sZW5ndGg7ZysrKWlbZ10uc3RhdHVzPT09ImNvbXBsZXRlZCImJmYrKyxpW2ddLnN0YXR1cz09PSJpbl9wcm9ncmVzcyImJihkKyssdnx8KHY9aVtnXS5hY3RpdmVGb3JtfHxpW2ddLmNvbnRlbnR8fCIiKSk7dmFyIGg9Zj09PWkubGVuZ3RoLG09bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKCQpe3JldHVybiAkLmlkPT09bi5zZWxlY3RlZElkfSksYj0hIW0mJm0uc3RhdHVzPT09InJ1bm5pbmciO2lmKCFifHxoKXtsLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGMmJmMuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksRWkoKTtyZXR1cm59bC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxsLmNsYXNzTGlzdC5yZW1vdmUoImFsbC1kb25lIiksYyYmYy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTt2YXIgRj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1jb3VudGVyIik7RiYmKEYudGV4dENvbnRlbnQ9ZisiLyIraS5sZW5ndGgpO3ZhciB3PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0b2RvLXByb2dyZXNzLXRhc2siKTtpZih3KXtpZighdil7Zm9yKHZhciBFPTA7RTxpLmxlbmd0aDtFKyspaWYoaVtFXS5zdGF0dXM9PT0icGVuZGluZyImJihpW0VdLmFjdGl2ZUZvcm18fGlbRV0uY29udGVudCkpe3Y9aVtFXS5hY3RpdmVGb3JtfHxpW0VdLmNvbnRlbnQ7YnJlYWt9fXcudGV4dENvbnRlbnQ9dnx8Ilx1NTFDNlx1NTkwN1x1NEUyRFx1MjAyNiJ9dmFyIEE9aS5sZW5ndGg+MD9mL2kubGVuZ3RoOjAseD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1yaW5nIik7eCYmeC5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1wcm9ncmVzcyIsQS50b0ZpeGVkKDMpKTt2YXIgST1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1maWxsIik7SSYmSS5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1wcm9ncmVzcyIsQS50b0ZpeGVkKDMpKTt2YXIgaj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcy1saXN0Iik7aWYoail7Zm9yKHZhciBWPSIiLEc9MDtHPGkubGVuZ3RoO0crKyl7dmFyIEw9aVtHXSxCPUwuc3RhdHVzfHwicGVuZGluZyIsVD1CPT09ImluX3Byb2dyZXNzIj8iYWN0aXZlIjpCPT09ImNvbXBsZXRlZCI/ImRvbmUiOiIiLE09Qj09PSJpbl9wcm9ncmVzcyI/ImFjdGl2ZSI6Qj09PSJjb21wbGV0ZWQiPyJkb25lIjoicGVuZGluZyIsSD1CPT09ImNvbXBsZXRlZCI/Ilx1MjcxMyI6Qj09PSJpbl9wcm9ncmVzcyI/Ilx1MjAzQSI6Ilx1MjVDQiI7Vis9JzxsaSBjbGFzcz0idG9kby1wcm9ncmVzcy1pdGVtICcrVCsnIj48c3BhbiBjbGFzcz0idG9kby1pdGVtLWljb24gJytNKyciPicrSCsiPC9zcGFuPjxzcGFuPiIrcChMLmNvbnRlbnR8fCIiKSsiPC9zcGFuPjwvbGk+In1qLmlubmVySFRNTD1WfW4uc2VsZWN0ZWRJZCYmdmEobi5zZWxlY3RlZElkKSxFaSgpfX1mdW5jdGlvbiB6cChlKXtlLnF1ZXJ5U2VsZWN0b3JBbGwoIi5jb2RlLWNvcHkiKS5mb3JFYWNoKGZ1bmN0aW9uKHQpe3QuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKCl7dmFyIHI9dC5jbG9zZXN0KCIuY29kZS1ibG9jayIpLGk9cj9yLnF1ZXJ5U2VsZWN0b3IoImNvZGUiKTpudWxsO2kmJkhyKGkudGV4dENvbnRlbnR8fCIiLG51bGwsZnVuY3Rpb24oKXt0LnRleHRDb250ZW50PSJDb3BpZWQhIix0LmNsYXNzTGlzdC5hZGQoImNvcGllZCIpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt0LnRleHRDb250ZW50PSJDb3B5Iix0LmNsYXNzTGlzdC5yZW1vdmUoImNvcGllZCIpfSwyZTMpfSl9KX0pfWZ1bmN0aW9uIHZvKGUpe2UucXVlcnlTZWxlY3RvckFsbCgiLmNvZGUtY29weSIpLmZvckVhY2goZnVuY3Rpb24odCl7dmFyIHI9dC5jbG9uZU5vZGUoITApO3QucGFyZW50Tm9kZS5yZXBsYWNlQ2hpbGQocix0KSxyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe3ZhciBpPXIuY2xvc2VzdCgiLmNvZGUtYmxvY2siKSxhPWk/aS5xdWVyeVNlbGVjdG9yKCJjb2RlIik6bnVsbDthJiZIcihhLnRleHRDb250ZW50fHwiIixudWxsLGZ1bmN0aW9uKCl7ci50ZXh0Q29udGVudD0iQ29waWVkISIsci5jbGFzc0xpc3QuYWRkKCJjb3BpZWQiKSxzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ci50ZXh0Q29udGVudD0iQ29weSIsci5jbGFzc0xpc3QucmVtb3ZlKCJjb3BpZWQiKX0sMmUzKX0pfSl9KSxWcChlKX12YXIgc2c9e3RpbWVyOm51bGwsYWN0aXZlQnRuOm51bGx9O2Z1bmN0aW9uIFZwKGUpe3ZhciB0PXdpbmRvdy5tYXRjaE1lZGlhKCIocG9pbnRlcjogY29hcnNlKSIpLm1hdGNoZXM7dCYmZS5xdWVyeVNlbGVjdG9yQWxsKCIuY2hhdC1tZXNzYWdlIikuZm9yRWFjaChmdW5jdGlvbihyKXtpZighci5xdWVyeVNlbGVjdG9yKCIubXNnLWNvcHktYnRuIikpe3ZhciBpPXIucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZS1idWJibGUiKTtpZihpKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJidXR0b24iKTthLmNsYXNzTmFtZT0ibXNnLWNvcHktYnRuIixhLnRleHRDb250ZW50PSJcdTU5MERcdTUyMzYiLGEuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKHUpe3Uuc3RvcFByb3BhZ2F0aW9uKCk7dmFyIHM9aS5pbm5lclRleHR8fGkudGV4dENvbnRlbnR8fCIiO0hyKHMudHJpbSgpLG51bGwsZnVuY3Rpb24oKXthLnRleHRDb250ZW50PSJcdTVERjJcdTU5MERcdTUyMzYiLGEuY2xhc3NMaXN0LmFkZCgiY29waWVkIiksc2V0VGltZW91dChmdW5jdGlvbigpe2EudGV4dENvbnRlbnQ9Ilx1NTkwRFx1NTIzNiIsYS5jbGFzc0xpc3QucmVtb3ZlKCJjb3BpZWQiKSxhLmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKX0sMTUwMCl9KX0pLHIuYXBwZW5kQ2hpbGQoYSl9fX0pfShmdW5jdGlvbigpe3ZhciB0PXdpbmRvdy5tYXRjaE1lZGlhKCIocG9pbnRlcjogY29hcnNlKSIpLm1hdGNoZXM7aWYodCl7dmFyIHI9bnVsbCxpPTA7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidG91Y2hzdGFydCIsZnVuY3Rpb24oYSl7dmFyIHU9YS50YXJnZXQuY2xvc2VzdCgiLmNoYXQtbWVzc2FnZSIpO2lmKHUpe3ZhciBzPXUucXVlcnlTZWxlY3RvcigiLmNoYXQtbWVzc2FnZS1idWJibGUiKTtzJiYoaT1hLnRvdWNoZXNbMF0uY2xpZW50WSxyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgbz11LnF1ZXJ5U2VsZWN0b3IoIi5tc2ctY29weS1idG4iKTtvJiYoZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLm1zZy1jb3B5LWJ0bi52aXNpYmxlIikuZm9yRWFjaChmdW5jdGlvbihsKXtsLmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKX0pLG8uY2xhc3NMaXN0LmFkZCgidmlzaWJsZSIpKX0sNTAwKSl9fSx7cGFzc2l2ZTohMH0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNobW92ZSIsZnVuY3Rpb24oYSl7ciYmTWF0aC5hYnMoYS50b3VjaGVzWzBdLmNsaWVudFktaSk+MTAmJihjbGVhclRpbWVvdXQocikscj1udWxsKX0se3Bhc3NpdmU6ITB9KSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ0b3VjaGVuZCIsZnVuY3Rpb24oKXtyJiYoY2xlYXJUaW1lb3V0KHIpLHI9bnVsbCl9LHtwYXNzaXZlOiEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKGEpe2EudGFyZ2V0LmNsb3Nlc3QoIi5tc2ctY29weS1idG4iKXx8ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLm1zZy1jb3B5LWJ0bi52aXNpYmxlIikuZm9yRWFjaChmdW5jdGlvbih1KXt1LmNsYXNzTGlzdC5yZW1vdmUoInZpc2libGUiKX0pfSl9fSkoKTtmdW5jdGlvbiBVcChlKXtpZighZSlyZXR1cm4hMTt2YXIgdD1TdHJpbmcoZSkudHJpbSgpO3JldHVybiB0PyEhKHQuaW5kZXhPZigiXHUyNTAwXHUyNTAwXHUyNTAwXHUyNTAwIik9PT0wfHx0PT09Ilx1Mjc2RiJ8fHQ9PT0iXHUyMDNBInx8L15b4pWt4pWw4pSC4pSM4pSU4pSQ4pSY4pSc4pSk4pSs4pS04pS84pSA4pWQXXsyLH0kLy50ZXN0KHQpfHwvXlviloHiloLiloPiloTiloXilobilofilojilpTilpXilo/ilpBdKyQvLnRlc3QodCl8fHQuaW5kZXhPZigiZXNjIHRvIGludGVycnVwdCIpIT09LTF8fHQuaW5kZXhPZigiQ2xhdWRlIENvZGUgdiIpIT09LTF8fC9eU29ubmV0XGIvLnRlc3QodCl8fHQuaW5kZXhPZigiRmFpbGVkIHRvIGluc3RhbGwgQW50aHJvcGljIikhPT0tMXx8dC5pbmRleE9mKCJDbGF1ZGUgQ29kZSBoYXMgc3dpdGNoZWQiKSE9PS0xfHx0LmluZGV4T2YoIj8gZm9yIHNob3J0Y3V0cyIpIT09LTF8fHQuaW5kZXhPZigiQ2xhdWRlIGlzIHdhaXRpbmciKSE9PS0xfHx0LmluZGV4T2YoIlt3YW5kXSIpIT09LTF8fHQuaW5kZXhPZigiMDsiKT09PTB8fHQuaW5kZXhPZigiOTsiKT09PTB8fHQuaW5kZXhPZigiY3RybCtnIikhPT0tMXx8dC5pbmRleE9mKCIvZWZmb3J0IikhPT0tMXx8L15Vc2luZyAuKiBmb3IgLiogc2Vzc2lvbi8udGVzdCh0KXx8dC5pbmRleE9mKCJQcmVzcyAiKT09PTAmJnQuaW5kZXhPZigiIGZvciIpIT09LTF8fHQuaW5kZXhPZigidHlwZSAiKT09PTAmJnQuaW5kZXhPZigiIHRvICIpIT09LTF8fHQuaW5kZXhPZigiYXV0byBtb2RlIGlzIHVuYXZhaWxhYmxlIikhPT0tMXx8L01DUCBzZXJ2ZXIuKmZhaWxlZC9pLnRlc3QodCl8fHQuaW5kZXhPZigiR2VybWluYXRpbmciKSE9PS0xfHx0LmluZGV4T2YoIkRvb2RsaW5nIikhPT0tMXx8dC5pbmRleE9mKCJCcmV3aW5nIikhPT0tMXx8dC5pbmRleE9mKCJQZXJtaXNzaW9ucyIpIT09LTEmJnQuaW5kZXhPZigibW9kZSIpIT09LTF8fHQuaW5kZXhPZigiXHUyNUNGIik9PT0wJiZ0LmluZGV4T2YoIlx4QjciKSE9PS0xfHx0LmluZGV4T2YoIls+Iik9PT0wfHx0LmluZGV4T2YoIls8Iik9PT0wfHx0LmluZGV4T2YoIkNhcHR1cmVkIENsYXVkZSBzZXNzaW9uIElEIikhPT0tMXx8L14+X1xzKk9wZW5BSSBDb2RleFxiLy50ZXN0KHQpfHwvXk9wZW5BSSBDb2RleFxiL2kudGVzdCh0KXx8L14obW9kZWx8ZGlyZWN0b3J5KTpccysvaS50ZXN0KHQpfHwvXih0aXB8Y29udGV4dCk6XHMrL2kudGVzdCh0KXx8L153b3JrKHRyZWV8c3BhY2UpOlxzKy9pLnRlc3QodCl8fC9eKGFwcHJvdmFscz98c2FuZGJveHxwcm92aWRlcnxzZXNzaW9uIGlkKTpccysvaS50ZXN0KHQpfHwvXih0aGlua2luZ3x3b3JraW5nKShcLlwuXC584oCmKT8kL2kudGVzdCh0KXx8L15b4oCi4pemwrddXHMrV29ya2luZ1xiL2kudGVzdCh0KXx8L15b4oCi4pemwrddXHMrKFJ1bm5pbmd8UGxhbm5pbmd8QXBwbHlpbmd8UmVhZGluZ3xTZWFyY2hpbmcpXGIvaS50ZXN0KHQpfHwvXlvigKLil6bCt11ccysoSW5zcGVjdGluZ3xSZXZpZXdpbmd8U3VtbWFyaXppbmd8RWRpdGluZ3xVcGRhdGluZ3xXcml0aW5nKVxiL2kudGVzdCh0KXx8L15b4oCi4pemwrddXHMrQ29tcGxldGVkXGIvaS50ZXN0KHQpfHwvXihjdHJsfGVudGVyfHRhYnxzaGlmdHxlc2N8YWx0KVwrL2kudGVzdCh0KXx8L1xiKG9wZW58Y2xvc2V8dG9nZ2xlKSAoY2hhdHx0ZXJtaW5hbClcYi9pLnRlc3QodCl8fC9cYihhcHByb3ZlfGRlbnkpXGIuKlxiKHBlcm1pc3Npb258YXBwcm92YWwpXGIvaS50ZXN0KHQpfHwvXih1c2V8cHJlc3MpIC4qICh0b3xmb3IpIC4qL2kudGVzdCh0KXx8L14oPzp0b2tlbnxjb250ZXh0IHdpbmRvd3xyZW1haW5pbmcgY29udGV4dHxjb252ZXJzYXRpb24pOlxzKy9pLnRlc3QodCl8fC9eKD86Y3dkfHBhdGgpOlxzK1wvL2kudGVzdCh0KXx8L15bPD7ilILilIbilY5dLipbPD7ilILilIbilY5dJC8udGVzdCh0KSYmdC5sZW5ndGg8OCk6ITF9ZnVuY3Rpb24gS3AoZSl7cmV0dXJuIFN0cmluZyhlfHwiIikucmVwbGFjZSgvXHgxYlxdW15ceDA3XSooXHgwN3xceDFiXFwpL2csIiIpLnJlcGxhY2UoL1x4MWJcWyhcZCspQy9nLGZ1bmN0aW9uKHQscil7cmV0dXJuIiAiLnJlcGVhdChOdW1iZXIocil8fDEpfSkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbQUJdL2csYApgKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltzdV0vZywiIikucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbSGZKS3JdL2csYApgKS5yZXBsYWNlKC9ceDFiTS9nLGAKYCkucmVwbGFjZSgvXHgxYlxbWzAtOTs/XSpbU1RdL2csYApgKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKlthLXpBLVpdL2csIiIpLnJlcGxhY2UoL1x4MWJbPjw9ZVBYXl9dL2csIiIpLnJlcGxhY2UoL1tcdTAwYTBcdTIwMGItXHUyMDBkXHVmZWZmXS9nLCIgIikucmVwbGFjZSgvW1x4MDAtXHgwOFx4MGJceDBjXHgwZS1ceDFmXS9nLCIiKS5yZXBsYWNlKC9cclxuPy9nLGAKYCkucmVwbGFjZSgvWyBcdF0rXG4vZyxgCmApLnJlcGxhY2UoL1xuezMsfS9nLGAKCmApfWZ1bmN0aW9uIFlwKGUsdCl7dmFyIHI9W107aWYoIWUpcmV0dXJuIHI7dmFyIGk9U3RyaW5nKGV8fCIiKSxhPWAKYCx1PSJcciIscz0iXHgxQiI7aWYoL15jb2RleFxiLy50ZXN0KFN0cmluZyh0fHwiIikudHJpbSgpKSl7bGV0IG50PWZ1bmN0aW9uKHEpe3JldHVybiBTdHJpbmcocXx8IiIpLnJlcGxhY2UoL1x4MWJcXVteXHgwN10qKFx4MDd8XHgxYlxcKS9nLCIiKS5yZXBsYWNlKC9ceDFiXFsoXGQrKUMvZyxmdW5jdGlvbihfLFkpe3JldHVybiIgIi5yZXBlYXQoTnVtYmVyKFkpfHwxKX0pLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW0FCXS9nLGEpLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW3N1XS9nLCIiKS5yZXBsYWNlKC9ceDFiXFtbMC05Oz9dKltIZkpLcl0vZyxhKS5yZXBsYWNlKC9ceDFiTS9nLGEpLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW1NUXS9nLGEpLnJlcGxhY2UoL1x4MWJcW1swLTk7P10qW2EtekEtWl0vZywiIikucmVwbGFjZSgvXHgxYls+PD1lUFheX10vZywiIikucmVwbGFjZSgvW1x1MDBhMFx1MjAwYi1cdTIwMGRcdWZlZmZdL2csIiAiKS5yZXBsYWNlKC9bXHgwMC1ceDA4XHgwYlx4MGNceDBlLVx4MWZdL2csIiIpLnJlcGxhY2UoL1sgXHRdK1xuL2csYSl9LGRlPWZ1bmN0aW9uKHEpe3JldHVybiBTdHJpbmcocXx8IiIpLnJlcGxhY2UoL1xzKy9nLCIgIikucmVwbGFjZSgvW01dKyQvZywiIikudHJpbSgpfSx0ZT1mdW5jdGlvbihxKXtyZXR1cm4gU3RyaW5nKHF8fCIiKS5yZXBsYWNlKC9e4oC6XHMqLywiIikucmVwbGFjZSgvXj5ccyovLCIiKS50cmltKCl9LG1lPWZ1bmN0aW9uKHEpe3ZhciBfPVN0cmluZyhxfHwiIikudHJpbSgpO3JldHVybiEhKCFffHxVcChfKXx8dy50ZXN0KF8pfHwvXlvila3ilbDilILilIzilJTilJDilJjilJzilKTilKzilLTilLzilIDilZBdLy50ZXN0KF8pfHwvXlxbPlswLTk7P10qdSQvaS50ZXN0KF8pfHwvXk0rJC9pLnRlc3QoXyl8fC9eKD86T3BlbkFJIENvZGV4fENvZGV4KVxiL2kudGVzdChfKXx8L14oPzp0b2tlbnM/fGNvbnRleHQgd2luZG93fHJlbWFpbmluZyBjb250ZXh0fGFwcHJvdmFscz98c2FuZGJveHxwcm92aWRlcnxzZXNzaW9uIGlkKTpccyovaS50ZXN0KF8pfHwvXig/OnRoaW5raW5nfHdvcmtpbmcpXHMqKD86XC5cLlwufOKApik/JC9pLnRlc3QoXyl8fC9eW+KAouKXpsK3XVxzKyg/OnRoaW5raW5nfHdvcmtpbmd8cnVubmluZ3xwbGFubmluZ3xhcHBseWluZ3xyZWFkaW5nfHNlYXJjaGluZ3xpbnNwZWN0aW5nfHJldmlld2luZ3xzdW1tYXJpemluZ3xlZGl0aW5nfHVwZGF0aW5nfHdyaXRpbmd8Y29tcGxldGVkKVxiL2kudGVzdChfKXx8L14oPzptb2RlbHxkaXJlY3Rvcnl8dGlwfGNvbnRleHR8Y3dkfHBhdGgpOlxzKy9pLnRlc3QoXykpfSxQZT1mdW5jdGlvbihxKXt2YXIgXz1TdHJpbmcocXx8IiIpLnRyaW0oKTtpZighL17igLooPzpcc3wkKS8udGVzdChfKXx8dy50ZXN0KF8pKXJldHVybiBudWxsO3ZhciBZPWRlKHRlKF8pKTtyZXR1cm4hWXx8bWUoWSk/bnVsbDpZfSxHZT1mdW5jdGlvbihxKXt2YXIgXz1TdHJpbmcocXx8IiIpLnRyaW0oKTtpZighL15b4oCi4pemwrfij7pdLy50ZXN0KF8pKXJldHVybiBudWxsO3ZhciBZPV8ucmVwbGFjZSgvXlvigKLil6bCt11ccyovLCIiKS5yZXBsYWNlKC9e4o+6XHMrLywiIikucmVwbGFjZSgvXuKUglxzKi8sIiIpLnRyaW0oKTtyZXR1cm4hWXx8L15b4oCi4pemwrfij7pdJC8udGVzdChZKXx8KFk9WS5yZXBsYWNlKC9ccypcKFxkK1tzbWhdP1xzKuKAolxzKmVzYyB0byBpbnRlcnJ1cHRcKVtcc1xTXSokL2ksIiIpLnJlcGxhY2UoLyg/OlthLXpdezEsNn0pP+KAultcc1xTXSokLywiIikucmVwbGFjZSgvXHN7Mix9Z3B0LVxkW1xzXFNdKiQvaSwiIikucmVwbGFjZSgvXGIoPzpPcGVuQUkgQ29kZXh8bW9kZWw6fGRpcmVjdG9yeTp8VGlwOilcYltcc1xTXSokL2ksIiIpLFk9ZGUoWSksIVl8fFkubGVuZ3RoPDJ8fEUudGVzdChZKXx8bWUoWSkpP251bGw6WX0sUWU9ZnVuY3Rpb24ocSl7dmFyIF89ZGUocSk7cmV0dXJuIV98fG1lKF8pfHwvXlvigKLil6bCt+KPuuKAul0vLnRlc3QoXyl8fC9eW1xbXF08PjAtOTs/XSt1PyQvaS50ZXN0KF8pfHwvXlvila3ilbDilILilIzilJTilJDilJjilJzilKTilKzilLTilLzilIDilZBdLy50ZXN0KF8pfHxfLmxlbmd0aD41MDA/bnVsbDpffSx4ZT1mdW5jdGlvbihxLF8pe2lmKHEuaW5kZXhPZihfKSE9PTApcmV0dXJuITE7dmFyIFk9cS5zbGljZShfLmxlbmd0aCk7cmV0dXJuL15bYS16XXsxLDR9JC9pLnRlc3QoWSl9LEZlPWZ1bmN0aW9uKHEpe2Zvcih2YXIgXz1bXSxZPTA7WTxxLmxlbmd0aDtZKyspe3ZhciBmZT1kZShxW1ldKTtpZighKCFmZXx8ZmUubGVuZ3RoPDJ8fG1lKGZlKSkpe3ZhciBnZT1fW18ubGVuZ3RoLTFdO2lmKCFnZSl7Xy5wdXNoKGZlKTtjb250aW51ZX1pZihmZSE9PWdlKXtpZihmZS5pbmRleE9mKGdlKT09PTApe19bXy5sZW5ndGgtMV09ZmU7Y29udGludWV9aWYoZ2UuaW5kZXhPZihmZSk9PT0wKXt4ZShnZSxmZSkmJihfW18ubGVuZ3RoLTFdPWZlKTtjb250aW51ZX1fLnB1c2goZmUpfX19cmV0dXJuIF8uam9pbihhKS50cmltKCl9LEx0PWZ1bmN0aW9uKHEpe2Zvcih2YXIgXz0wO188cS5sZW5ndGg7XysrKXt2YXIgWT1TdHJpbmcocVtfXXx8IiIpLnRyaW0oKTtpZihZKXt2YXIgZmU9UGUoWSk7aWYoZmUpcmV0dXJuIGZlO2lmKFk9PT0iXHUyMDNBIilmb3IodmFyIGdlPV8rMTtnZTxxLmxlbmd0aDtnZSsrKXt2YXIgWGU9ZGUocVtnZV0pO2lmKCEoIVhlfHx3LnRlc3QoWGUpfHxtZShYZSkpKXJldHVybiBYZX19fXJldHVybiBudWxsfSwkZT1mdW5jdGlvbihxKXtmb3IodmFyIF89W10sWT0hMSxmZT0wO2ZlPHEubGVuZ3RoO2ZlKyspe3ZhciBnZT1TdHJpbmcocVtmZV18fCIiKS50cmltKCk7aWYoIWdlKXtpZihZKWJyZWFrO2NvbnRpbnVlfXZhciBYZT1HZShnZSk7aWYoWGUpe18ucHVzaChYZSksWT0hMDtjb250aW51ZX1pZihZKXtpZihnZT09PSJcdTIwM0EifHwvXuKAuig/OlxzfCQpLy50ZXN0KGdlKXx8dy50ZXN0KGdlKXx8bWUoZ2UpKWJyZWFrO18ucHVzaChkZShnZSkpfX1yZXR1cm4gX307Zm9yKHZhciBvPW50LGw9ZGUsYz10ZSxmPW1lLGQ9UGUsdj1HZSxnPVFlLGg9eGUsbT1GZSxiPUx0LEY9JGUsdz0vXGJncHQtXGQrKD86XC5cZCspPyg/OlxzK1thLXowLTkuLV0rKT9ccyvCt1xzK1xkKyVccytsZWZ0XHMrwrdccysoPzpcL3x+XC8pLisvaSxFPS9eKD86dGhpbmtpbmd8d29ya2luZ3xydW5uaW5nfHBsYW5uaW5nfGFwcGx5aW5nfHJlYWRpbmd8c2VhcmNoaW5nfGluc3BlY3Rpbmd8cmV2aWV3aW5nfHN1bW1hcml6aW5nfGVkaXRpbmd8dXBkYXRpbmd8d3JpdGluZ3xjb21wbGV0ZWQpXGIvaSxBPVtdLHg9MCxJPWkucmVwbGFjZSgvXHJcbj8vZyxhKS5zcGxpdChhKSxqPTA7ajxJLmxlbmd0aDtqKyspZm9yKHZhciBWPW50KElbal0pLEc9Vi5zcGxpdChhKSxMPTA7TDxHLmxlbmd0aDtMKyspe3ZhciBCPVN0cmluZyhHW0xdfHwiIikudHJpbSgpO2lmKEIpe3ZhciBUPVBlKEIpO2lmKFQpe0EucHVzaCh7a2luZDoidXNlciIsb3JkZXI6eCsrLHRleHQ6VH0pO2NvbnRpbnVlfXZhciBNPUdlKEIpO2lmKE0pe0EucHVzaCh7a2luZDoiYXNzaXN0YW50IixvcmRlcjp4KyssdGV4dDpNfSk7Y29udGludWV9dmFyIEg9UWUoQik7SCYmQS5wdXNoKHtraW5kOiJlY2hvIixvcmRlcjp4KyssdGV4dDpIfSl9fWZvcih2YXIgJD1BLmZpbHRlcihmdW5jdGlvbihxLF8sWSl7dmFyIGZlPVlbXy0xXTtyZXR1cm4hZmV8fGZlLmtpbmQhPT1xLmtpbmR8fGZlLnRleHQhPT1xLnRleHR9KSxuZT0kLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4gcS5raW5kPT09InVzZXIifSksUT0kLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4gcS5raW5kPT09ImFzc2lzdGFudCJ9KSxzZT0kLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4gcS5raW5kPT09ImVjaG8ifSksZWU9S3AoaSksUz1lZS5zcGxpdChhKS5tYXAoZnVuY3Rpb24ocSl7cmV0dXJuIFN0cmluZyhxfHwiIikudHJpbUVuZCgpfSksTj1MdChTKSxXPW5lLmxlbmd0aD9uZVtuZS5sZW5ndGgtMV06bnVsbCxKPXNlLm1hcChmdW5jdGlvbihxKXtyZXR1cm4gcS50ZXh0fSkuZmlsdGVyKGZ1bmN0aW9uKHEpe3JldHVybiBxLmxlbmd0aD49M30pLFU9bnVsbCxYPUoubGVuZ3RoLTE7WD49MDtYLS0paWYoSltYXSE9PU4pe1U9SltYXTticmVha30hVSYmSi5sZW5ndGgmJihVPUpbSi5sZW5ndGgtMV0pO2Zvcih2YXIgb2U9Vz9XLnRleHQ6VSxsZT1RLmZpbHRlcihmdW5jdGlvbihxKXtyZXR1cm4hV3x8cS5vcmRlcj5XLm9yZGVyfSkubWFwKGZ1bmN0aW9uKHEpe3JldHVybiBxLnRleHR9KSxyZT1bXSxCZT1lZS5tYXRjaCgvXlsgXHRdKlvigKLil6bCt+KPul1bIFx0XSooLispJC9nbSl8fFtdLERlPTA7RGU8QmUubGVuZ3RoO0RlKyspe3ZhciBiZT1kZShCZVtEZV0ucmVwbGFjZSgvXlsgXHRdKlvigKLil6bCt+KPul1bIFx0XSovLCIiKSk7YmUmJihFLnRlc3QoYmUpfHx3LnRlc3QoYmUpfHwvXGIoPzpPcGVuQUkgQ29kZXh8bW9kZWw6fGRpcmVjdG9yeTp8VGlwOnxlc2MgdG8gaW50ZXJydXB0KVxiL2kudGVzdChiZSl8fHJlLnB1c2goYmUpKX12YXIgUD1GZShsZSl8fEZlKCRlKFMpKXx8KHJlLmxlbmd0aD9yZVtyZS5sZW5ndGgtMV06bnVsbCk7cmV0dXJuIG9lJiZyLnB1c2goe3JvbGU6InVzZXIiLGNvbnRlbnQ6b2V9KSxQJiZyLnB1c2goe3JvbGU6ImFzc2lzdGFudCIsY29udGVudDpQfSksIXIubGVuZ3RoJiZXP3IucHVzaCh7cm9sZToidXNlciIsY29udGVudDpXLnRleHR9KTohci5sZW5ndGgmJlUmJnIucHVzaCh7cm9sZToidXNlciIsY29udGVudDpVfSkscn1mb3IodmFyIHo9IlwwIixpZT0iXGIiLFRlPSJcdiIsY2U9IlxmIixhZT0iDiIsa2U9Ih8iLHB0PSJceEEwIixzdD0iXHgwNyIsQXQ9bmV3IFJlZ0V4cChzKyJcXFtbMC05Oz9dKlthLXpBLVpdfCIrcysiXFxdW14iK3N0KyJdKigiK3N0KyJ8IitzKyJcXFxcXFxcXCl8IitzKyJbPjw9ZVBfWF5dfFsiK3orIi0iK2llK1RlK2NlK2FlKyItIitrZSsiXXwiK3B0KyJ8Iit1LCJnIiksVWU9aS5yZXBsYWNlKEF0LGZ1bmN0aW9uKG50KXtyZXR1cm4gbnQ9PT1wdD8iICI6bnQ9PT11P2E6IiJ9KS5zcGxpdCh1KS5qb2luKGEpLG90PVVlLnNwbGl0KGEpLm1hcChmdW5jdGlvbihudCl7cmV0dXJuIG50LnRyaW0oKX0pLmZpbHRlcihCb29sZWFuKSxLZT1bL3RoaW5raW5nIHdpdGggaGlnaCBlZmZvcnQvaSwvdGhpbmtpbmcgd2l0aCBtZWRpdW0gZWZmb3J0L2ksL3RoaW5raW5nIHdpdGggbG93IGVmZm9ydC9pLG5ldyBSZWdFeHAoInRob3VnaHQgZm9yIFswLTldK3MiLCJpIiksbmV3IFJlZ0V4cCgiU2F1dGVlZCBmb3IgWzAtOV0rbSIsImkiKSwvR2VybWluYXRpbmcvaSwvRG9vZGxpbmcvaSwvQnJld2luZy9pXSx4dD1udWxsLFllPS0xLFJlPVtdLEFlPVtdLHZlPVtdLEVlPTA7RWU8b3QubGVuZ3RoO0VlKyspe3ZhciBDPW90W0VlXSxsdD1DLnJlcGxhY2UoL17ina9ccyovLCIiKTtpZihsdC5pbmRleE9mKCdUcnkiJyk9PT0wfHxsdC5pbmRleE9mKCdUcnkgIicpPT09MCl7UmUucHVzaChsdCk7Y29udGludWV9Zm9yKHZhciB2dD0hMSxidD0wO2J0PEtlLmxlbmd0aDtidCsrKWlmKEtlW2J0XS50ZXN0KEMpKXt2dD0hMCx2ZS5wdXNoKEMpO2JyZWFrfWlmKCF2dCYmQyYmQy5pbmRleE9mKCJcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDBcdTI1MDAiKSE9PTAmJkMhPT0iXHUyNzZGIiYmQy5pbmRleE9mKCJlc2MgdG8gaW50ZXJydXB0Iik9PT0tMSYmQy5pbmRleE9mKCJDbGF1ZGUgQ29kZSB2Iik9PT0tMSYmQy5pbmRleE9mKCJTb25uZXQiKT09PS0xJiZDLmluZGV4T2YoIn4vIikhPT0wJiZDLmluZGV4T2YoIlx1MjVDRiBoaWdoIik9PT0tMSYmQy5pbmRleE9mKCJGYWlsZWQgdG8gaW5zdGFsbCBBbnRocm9waWMgbWFya2V0cGxhY2UiKT09PS0xJiZDLmluZGV4T2YoIkNsYXVkZSBDb2RlIGhhcyBzd2l0Y2hlZCBmcm9tIG5wbSB0byBuYXRpdmUgaW5zdGFsbGVyIik9PT0tMSYmQy5pbmRleE9mKCJGbHV0dGVyaW5nIik9PT0tMSYmQy5pbmRleE9mKCI/IGZvciBzaG9ydGN1dHMiKT09PS0xJiZDLmluZGV4T2YoIjA7IikhPT0wJiZDLmluZGV4T2YoIjk7IikhPT0wJiZDLmluZGV4T2YoIkNsYXVkZSBpcyB3YWl0aW5nIik9PT0tMSYmIShDLmluZGV4T2YoIlx1MjcyMiIpIT09LTF8fEMuaW5kZXhPZigiXHUyNzMzIikhPT0tMXx8Qy5pbmRleE9mKCJcdTI3MzYiKSE9PS0xfHxDLmluZGV4T2YoIlx1MjczQiIpIT09LTF8fEMuaW5kZXhPZigiXHUyNzNEIikhPT0tMSkmJiEoQy5pbmRleE9mKCJcdTI1OTAiKT09PTB8fEMuaW5kZXhPZigiXHUyNTlEIik9PT0wfHxDLmluZGV4T2YoIlx1MjU5OCIpPT09MCkmJiEoKEM9PT0ibHUifHxDPT09InVlInx8Qz09PSJ0ciJ8fEM9PT0idGkifHxDPT09ImcifHxDPT09Im4ifHxDPT09ImlcdTIwMjYifHxDPT09Ilx1MjAyNiJ8fEM9PT0idXRzInx8Qz09PSJsdCJ8fEM9PT0icmcifHxDPT09Ilx4QjciKSYmQy5sZW5ndGg8NCkmJiEoQy5pbmRleE9mKCJcdTI3M0RGIik9PT0wfHxDLmluZGV4T2YoIlx1MjczQkYiKT09PTApJiZDLmluZGV4T2YoIm5wbSBXQVJOIik9PT0tMSYmQy5pbmRleE9mKCJucG0gbm90aWNlIik9PT0tMSYmIShDLmluZGV4T2YoImFkZGVkICIpIT09LTEmJkMuaW5kZXhPZigiIHBhY2thZ2VzIikhPT0tMSkmJkMuaW5kZXhPZigiYXVkaXRlZCAiKT09PS0xJiYhKEMuaW5kZXhPZigiZm91bmQgIikhPT0tMSYmQy5pbmRleE9mKCIgdnVsbmVyYWJpbGl0aWVzIikhPT0tMSkmJiEoQy5pbmRleE9mKCJVc2luZyAiKSE9PS0xJiZDLmluZGV4T2YoIiBmb3IgIikhPT0tMSYmQy5pbmRleE9mKCJzZXNzaW9uIikhPT0tMSkmJkMuaW5kZXhPZigiWW91IGNhbiB1c2UiKT09PS0xJiYhKEMuaW5kZXhPZigiUHJlc3MgIikhPT0tMSYmQy5pbmRleE9mKCIgZm9yIikhPT0tMSkmJiEoQy5pbmRleE9mKCJ0eXBlICIpPT09MCYmQy5pbmRleE9mKCIgdG8gIikhPT0tMSkmJkMuaW5kZXhPZigiW3dhbmRdIikhPT0wJiZDLmluZGV4T2YoIkNhcHR1cmVkIENsYXVkZSBzZXNzaW9uIElEIik9PT0tMSYmQy5pbmRleE9mKCJcdTIzRjUiKT09PS0xJiZDLmluZGV4T2YoImFjY2VwdGVkaXQiKT09PS0xJiZDLmluZGV4T2YoInNoaWZ0K3RhYiIpPT09LTEmJkMuaW5kZXhPZigidGFidG9jeWNsZSIpPT09LTEmJkMuaW5kZXhPZigiY3RybCtnIik9PT0tMSYmQy5pbmRleE9mKCIvZWZmb3J0Iik9PT0tMSYmIShDLmluZGV4T2YoIk9wdXMiKSE9PS0xJiZDLmluZGV4T2YoIm1vZGVsIikhPT0tMSkmJkMuaW5kZXhPZigiSGFpa3UiKT09PS0xJiZDLmluZGV4T2YoInRvIGN5Y2xlIik9PT0tMSYmIShDLmluZGV4T2YoImhpZ2ggXHhCNyIpIT09LTF8fEMuaW5kZXhPZigiaGlnaFx4QjciKSE9PS0xKSYmIShDLmluZGV4T2YoIm1lZGl1bSBceEI3IikhPT0tMXx8Qy5pbmRleE9mKCJtZWRpdW1ceEI3IikhPT0tMSkmJiEoQy5pbmRleE9mKCJsb3cgXHhCNyIpIT09LTF8fEMuaW5kZXhPZigibG93XHhCNyIpIT09LTEpKXtpZihDLmluZGV4T2YoIlx1MjVDRiIpPT09MCl7aWYoQz1DLnNsaWNlKDEpLnRyaW0oKSwhQyljb250aW51ZTtBZS5wdXNoKEMpO2NvbnRpbnVlfUMubGVuZ3RoPDMmJiEvXlthLXpBLVpdezN9JC8udGVzdChDKXx8QWUucHVzaChDKX19aWYodmUubGVuZ3RoPjApe3ZhciBxZT12ZVt2ZS5sZW5ndGgtMV0sU3Q9cWUubWF0Y2gobmV3IFJlZ0V4cCgiZm9yIChbMC05XStbbXNdK3wgWzAtOV0rbSBbMC05XStzKSIsImkiKSksZW49U3Q/Ilx1NkRGMVx1NUVBNlx1NjAxRFx1ODAwMyAiK1N0WzBdLnJlcGxhY2UoL2ZvciAvaSwiIik6Ilx1NkRGMVx1NUVBNlx1NjAxRFx1ODAwM1x1NEUyRC4uLiI7ci5wdXNoKHtyb2xlOiJ0aGlua2luZyIsY29udGVudDplbix0eXBlOiJkZWVwLXRob3VnaHQifSl9aWYoUmUubGVuZ3RoPjApe3ZhciBjdD1SZVtSZS5sZW5ndGgtMV0ucmVwbGFjZSgvXlRyeVxzKi8sIiIpLnRyaW0oKTtyLnB1c2goe3JvbGU6InByb21wdCIsY29udGVudDpjdCx0eXBlOiJzdWdnZXN0aW9uIn0pfWlmKCFBZS5sZW5ndGgpcmV0dXJuIHI7Zm9yKHZhciBIZT1bXSxfZT1udWxsLENlPVtdLEVlPTA7RWU8QWUubGVuZ3RoO0VlKyspaWYoQz1BZVtFZV0sQy5pbmRleE9mKCJcdTI3NkYiKT09PTApe3ZhciBKZT1DLnJlcGxhY2UoL17ina9ccyovLCIiKS50cmltKCk7aWYoSmUuaW5kZXhPZignVHJ5IicpPT09MHx8SmUuaW5kZXhPZignVHJ5ICInKT09PTApY29udGludWU7X2UhPT1udWxsJiZDZS5sZW5ndGg+MCYmKEhlLnB1c2goe3VzZXI6X2UsYXNzaXN0YW50TGluZXM6Q2V9KSxDZT1bXSksSmU/X2U9SmU6KF9lIT09bnVsbCYmQ2UubGVuZ3RoPjAmJihIZS5wdXNoKHt1c2VyOl9lLGFzc2lzdGFudExpbmVzOkNlfSksQ2U9W10pLF9lPW51bGwpfWVsc2UgX2UhPT1udWxsJiYoQy5pbmRleE9mKCJcdTIzRkEiKSE9PS0xJiYoQy5pbmRleE9mKCJIaSEiKSE9PS0xfHxDLmluZGV4T2YoIkhlbGxvIikhPT0tMXx8Qy5pbmRleE9mKCJXaGF0IikhPT0tMXx8Qy5pbmRleE9mKCJ3b3JraW5nIikhPT0tMSk/Q2UucHVzaChDKTpDLmluZGV4T2YoIlx1MjNGQSIpPT09MD9DZS5wdXNoKEMuc2xpY2UoMSkudHJpbSgpfHxDKTpDLmxlbmd0aD49OCYmQy5pbmRleE9mKCJcdTI3MjIiKT09PS0xJiZDLmluZGV4T2YoIlx1MjczMyIpPT09LTEmJkMuaW5kZXhPZigiXHUyNzM2Iik9PT0tMSYmQy5pbmRleE9mKCJcdTI3M0IiKT09PS0xJiZDLmluZGV4T2YoIlx1MjczRCIpPT09LTEmJkMuaW5kZXhPZigiXHUyNTkwIikhPT0wJiZDLmluZGV4T2YoIlx1MjU5RCIpIT09MCYmQy5pbmRleE9mKCJcdTI1OTgiKSE9PTAmJkMuaW5kZXhPZigiZXNjdG9pbnRlcnJ1cHQiKT09PS0xJiZDLmluZGV4T2YoIj9mb3IiKSE9PTAmJkMuaW5kZXhPZigiPyBmb3IiKSE9PTAmJkNlLnB1c2goQykpO2lmKF9lIT09bnVsbCYmQ2UubGVuZ3RoPjAmJkhlLnB1c2goe3VzZXI6X2UsYXNzaXN0YW50TGluZXM6Q2V9KSxIZS5sZW5ndGg9PT0wKXtmb3IodmFyIEl0PSIiLEV0PS0xLEVlPTA7RWU8QWUubGVuZ3RoO0VlKyspaWYoQz1BZVtFZV0sIShDLmluZGV4T2YoJ1RyeSInKT09PTB8fEMuaW5kZXhPZignVHJ5ICInKT09PTApJiZDLmluZGV4T2YoIkZhaWxlZCB0byBpbnN0YWxsIik9PT0tMSYmQy5pbmRleE9mKCJjdHJsK2ciKT09PS0xJiZDLmluZGV4T2YoIlx1MjVDRiAiKSE9PTAmJiEoQy5sZW5ndGg8Mnx8Qy5sZW5ndGg+MTAwKSYmL15bYS16QS1aXS8udGVzdChDKSl7SXQ9Qy50cmltKCksRXQ9RWU7YnJlYWt9aWYoSXQmJkV0Pj0wKXt2YXIgeW49QWUuc2xpY2UoRXQrMSkuZmlsdGVyKGZ1bmN0aW9uKG50KXtyZXR1cm4gbnQubGVuZ3RoPj04fSk7eW4ubGVuZ3RoPjAmJkhlLnB1c2goe3VzZXI6SXQsYXNzaXN0YW50TGluZXM6eW59KX19Zm9yKHZhciBUdD0wO1R0PEhlLmxlbmd0aDtUdCsrKWlmKHIucHVzaCh7cm9sZToidXNlciIsY29udGVudDpIZVtUdF0udXNlcn0pLEhlW1R0XS5hc3Npc3RhbnRMaW5lcy5sZW5ndGg+MCl7dmFyIE1uPW12KEhlW1R0XS5hc3Npc3RhbnRMaW5lcy5qb2luKGEpKTtyLnB1c2goe3JvbGU6ImFzc2lzdGFudCIsY29udGVudDpNbn0pfXJldHVybiByfXZhciBtbz0idHJhbnNwYXJlbnQiO2Z1bmN0aW9uIEZpKGUsdCl7Zm9yKHZhciByPXR8fDMsaT1lWzBdLmxlbmd0aCpyLGE9ZS5sZW5ndGgqcix1PSIiLHM9MDtzPGUubGVuZ3RoO3MrKylmb3IodmFyIG89MDtvPGVbc10ubGVuZ3RoO28rKyllW3NdW29dIT09bW8mJih1Kz0nPHJlY3QgeD0iJytvKnIrJyIgeT0iJytzKnIrJyIgd2lkdGg9IicrcisnIiBoZWlnaHQ9IicrcisnIiBmaWxsPSInK2Vbc11bb10rJyIvPicpO3JldHVybic8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwICcraSsiICIrYSsnIiBjbGFzcz0icGl4ZWwtYXZhdGFyLXN2ZyI+Jyt1KyI8L3N2Zz4ifWZ1bmN0aW9uIHdpKGUpe3ZhciB0PW1vLHI9ZS5iYXNlLGk9ZS5kYXJrLGE9ZS5saWdodHx8ZS5iYXNlLHU9ZS5hY2NlbnR8fCIjRkZGRkZGIixzPWUuZXllfHwiIzJEMkQyRCIsbz1lLm1vdXRofHwiI0YyOEI5QSIsbD1lLm5vc2V8fGUuZGFyaztyZXR1cm5bW3QsaSx0LHQsdCx0LHQsdCxpLHRdLFtpLHIsaSx0LHQsdCx0LGkscixpXSxbaSxyLHIscixyLHIscixyLHIsaV0sW3Iscix1LHMscixyLHUscyxyLHJdLFtyLHIsdSx1LHIscix1LHUscixyXSxbcixyLHIscixvLG8scixyLHIscl0sW3IsbCxyLGEscixyLGEscixsLHJdLFt0LHIscixyLHIscixyLHIscix0XSxbdCx0LHIsaSxyLHIsaSxyLHQsdF0sW3QsdCx0LHIsdCx0LHIsdCx0LHRdXX12YXIgSnA9e2Jhc2U6IiNGMDkyM0EiLGRhcms6IiNDNDZBMUEiLGxpZ2h0OiIjRjA5MjNBIixhY2NlbnQ6IiNGRkZGRkYiLGV5ZToiIzJEMkQyRCIsbW91dGg6IiNGMjhCOUEiLG5vc2U6IiNFODdENUEifSxHcD17YmFzZToiIzlFQUFCOCIsZGFyazoiIzZCN0I4RCIsbGlnaHQ6IiNDNUNFRDgiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjN0VDODhCIixtb3V0aDoiI0YyOEI5QSJ9LGdvPVt7YmFzZToiIzVBOEZFMCIsZGFyazoiIzJFNUJCMyIsbGlnaHQ6IiM5Q0MwRjIiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjRkZENjZFIixtb3V0aDoiI0YyOEI5QSIscHJpbWFyeToiIzVBOEZFMCJ9LHtiYXNlOiIjQTA2RkUwIixkYXJrOiIjNkI0NUE4IixsaWdodDoiI0M4QTRGMiIsYWNjZW50OiIjRkZGRkZGIixleWU6IiNGRkUzNkUiLG1vdXRoOiIjRjI4QjlBIixwcmltYXJ5OiIjQTA2RkUwIn0se2Jhc2U6IiM3QkI3NkIiLGRhcms6IiM0RjhBNDAiLGxpZ2h0OiIjQTlENDlDIixhY2NlbnQ6IiNGRkZGRkYiLGV5ZToiIzJEMkQyRCIsbW91dGg6IiNGMjhCOUEiLHByaW1hcnk6IiM3QkI3NkIifSx7YmFzZToiI0Q4NkE4OCIsZGFyazoiIzlDM0E1NyIsbGlnaHQ6IiNFOEE0QjUiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjMkQyRDJEIixtb3V0aDoiI0ZGRkZGRiIscHJpbWFyeToiI0Q4NkE4OCJ9LHtiYXNlOiIjNUJCN0IwIixkYXJrOiIjMkU3ODczIixsaWdodDoiIzlDRDZEMiIsYWNjZW50OiIjRkZGRkZGIixleWU6IiNGRkQ2NkUiLG1vdXRoOiIjRjI4QjlBIixwcmltYXJ5OiIjNUJCN0IwIn0se2Jhc2U6IiM0QTRBNjAiLGRhcms6IiMxRjFGMkUiLGxpZ2h0OiIjNkU2RTg0IixhY2NlbnQ6IiNGNUY1RjUiLGV5ZToiI0ZGRDY2RSIsbW91dGg6IiNGMjhCOUEiLHByaW1hcnk6IiM0QTRBNjAifSx7YmFzZToiI0Q4QTg1QSIsZGFyazoiIzlDNzAyOCIsbGlnaHQ6IiNFQkM3OEEiLGFjY2VudDoiI0ZGRkZGRiIsZXllOiIjMkQyRDJEIixtb3V0aDoiI0YyOEI5QSIscHJpbWFyeToiI0Q4QTg1QSJ9XTtmdW5jdGlvbiBRcChlLHQpe2Zvcih2YXIgcj1TdHJpbmcoZXx8IiIpLGk9MCxhPTA7YTxyLmxlbmd0aDthKyspaT0oaTw8NSktaStyLmNoYXJDb2RlQXQoYSl8MDtyZXR1cm4gTWF0aC5hYnMoaSkldH12YXIgaG89eyJnZW5lcmFsLXB1cnBvc2UiOiJcdTRFMDdcdTgwRkRcdTczMkIiLEV4cGxvcmU6Ilx1NEZBNlx1NjNBMlx1NzMyQiIsImNvZGUtZXhwbG9yZXIiOiJcdTRGQTZcdTYzQTJcdTczMkIiLCJjb2RlLXJldmlld2VyIjoiXHU1QkExXHU2N0U1XHU3MzJCIiwiY29kZS1hcmNoaXRlY3QiOiJcdTY3QjZcdTY3ODRcdTczMkIiLCJjb2RlLXNpbXBsaWZpZXIiOiJcdTdCODBcdTUzMTZcdTczMkIiLCJjb2RlLWd1aWRlIjoiXHU1NDExXHU1QkZDXHU3MzJCIixQbGFuOiJcdTdCNTZcdTUyMTJcdTczMkIiLCJmZWF0dXJlLWRldiI6Ilx1NUYwMFx1NTNEMVx1NzMyQiIsInByLXRlc3QtYW5hbHl6ZXIiOiJcdTZENEJcdThCRDVcdTczMkIiLCJzaWxlbnQtZmFpbHVyZS1odW50ZXIiOiJcdTYyQTRcdTUzNkJcdTczMkIiLCJ0eXBlLWRlc2lnbi1hbmFseXplciI6Ilx1N0M3Qlx1NTc4Qlx1NzMyQiIsImNvbW1lbnQtYW5hbHl6ZXIiOiJcdTZDRThcdTkxQ0FcdTczMkIifSxPYT1udWxsO2Z1bmN0aW9uIHlvKGUpe2lmKCFlKXJldHVybiIiO3ZhciB0PWUuYWdlbnRUeXBlfHwiIjtpZih0JiZob1t0XSlyZXR1cm4gaG9bdF07aWYodClyZXR1cm4gdDt2YXIgcj0oZS50YXNrSWR8fCIiKS5zbGljZSgtNCl8fChsdSgpPT09IkVuZ2xpc2giPyI/IjoiXHU2NzJBXHU3N0U1Iik7cmV0dXJuIE1lKCJzdWJhZ2VudC5oZWxwZXJfZmFsbGJhY2tfcHJlZml4Iikrcn1mdW5jdGlvbiBibyhlKXt2YXIgdD15byhlKTtpZighdClyZXR1cm4gdDt2YXIgcj1PYSYmZSYmZS50YXNrSWQ/T2EuZ2V0KGUudGFza0lkKTpudWxsO3JldHVybiByP3Qrcjp0fWZ1bmN0aW9uIEVvKGUpe3ZhciB0PWUmJihlLmFnZW50VHlwZXx8ZS50YXNrSWQpfHwic3ViYWdlbnQiO3JldHVybiBnb1tRcCh0LGdvLmxlbmd0aCldfWZ1bmN0aW9uIG9nKGUpe3ZhciB0PUVvKGUpLHI9Ym8oZSksaT1GaSh3aSh0KSk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1hdmF0YXIgYXNzaXN0YW50IHN1YmFnZW50IiBzdHlsZT0iLS1hZ2VudC1jb2xvcjonK3QucHJpbWFyeSsnIj48ZGl2IGNsYXNzPSJwaXhlbC1hdmF0YXIiPicraSsnPC9kaXY+PHNwYW4gY2xhc3M9ImF2YXRhci1uYW1lIj4nK3AocikrIjwvc3Bhbj48L2Rpdj4ifWZ1bmN0aW9uICRwKGUsdCl7aWYoIWV8fGUudHlwZSE9PSJ0b29sX3Jlc3VsdCIpcmV0dXJuIiI7dmFyIHI9ZG4oZS5jb250ZW50KSxpPWUuaXNfZXJyb3I9PT0hMCxhPXR5cGVvZiByPT0ic3RyaW5nIj9yOnI9PW51bGw/IiI6U3RyaW5nKHIpO2lmKCFpJiYhYS50cmltKCkpcmV0dXJuJzxkaXYgY2xhc3M9InN1YmFnZW50LXJlcGx5IHBlbmRpbmciPjxzcGFuIGNsYXNzPSJzdWJhZ2VudC1yZXBseS1tYXJrZXIgcGVuZGluZyI+JytwKE1lKCJzdWJhZ2VudC5ydW5uaW5nIikpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InR5cGluZy1pbmRpY2F0b3IiPjxzcGFuPjwvc3Bhbj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjwvc3Bhbj48L2Rpdj4nO3ZhciB1PWEudHJpbSgpP2E6TWUoInN1YmFnZW50Lm5vX291dHB1dCIpLHM9YS50cmltKCk/amEodSk6cCh1KSxvPU1lKGk/InN1YmFnZW50LnRhc2suZmFpbGVkIjoic3ViYWdlbnQudGFzay5kb25lIiksbD1pPyJcdTI3MTciOiJcdTI3MTMiO3JldHVybic8ZGl2IGNsYXNzPSJzdWJhZ2VudC1yZXBseSBmaW5hbCcrKGk/IiBlcnJvciI6IiIpKyciPjxkaXYgY2xhc3M9InN1YmFnZW50LXJlcGx5LW1hcmtlciAnKyhpPyJlcnJvciI6ImRvbmUiKSsnIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcmVwbHktbWFya2VyLWljb24iIGFyaWEtaGlkZGVuPSJ0cnVlIj4nK2wrJzwvc3Bhbj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcmVwbHktbWFya2VyLWxhYmVsIj4nK3AobykrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJzdWJhZ2VudC1yZXBseS1jb250ZW50Ij4nK3MrIjwvZGl2PjwvZGl2PiJ9dmFyIENpPXthc3Npc3RhbnQ6Rmkod2koSnApKSx1c2VyOkZpKHdpKEdwKSl9LEZvPXt1c2VyOntuYW1lOiJcdThENUJcdTUzNUFcdTg2NEVcdTU5OUUiLGF2YXRhclN2ZzpDaS51c2VyfSxhc3Npc3RhbnQ6e25hbWU6Ilx1NTJFNFx1NTJCM1x1NTIxRFx1NEU4QyIsYXZhdGFyU3ZnOkNpLmFzc2lzdGFudH19O2Z1bmN0aW9uIFBhKGUpe3ZhciB0PW4uY29uZmlnJiZuLmNvbmZpZy5zdHJ1Y3R1cmVkQ2hhdFBlcnNvbmEscj10JiZ0W2VdP3RbZV06bnVsbCxpPUZvW2VdfHxGby5hc3Npc3RhbnQ7cmV0dXJue25hbWU6ciYmdHlwZW9mIHIubmFtZT09InN0cmluZyImJnIubmFtZS50cmltKCk/ci5uYW1lLnRyaW0oKTppLm5hbWUsYXZhdGFyOnImJnR5cGVvZiByLmF2YXRhcj09InN0cmluZyImJnIuYXZhdGFyLnRyaW0oKT9yLmF2YXRhci50cmltKCk6bnVsbCxhdmF0YXJTdmc6aS5hdmF0YXJTdmd9fWZ1bmN0aW9uIHdvKGUpe3JldHVybic8ZGl2IGNsYXNzPSJwaXhlbC1hdmF0YXIiPicrZSsiPC9kaXY+In1mdW5jdGlvbiBsZyhlLHQpe2lmKCEoIWV8fCFlLnBhcmVudE5vZGUpKXt2YXIgcj1QYSh0PT09InVzZXIiPyJ1c2VyIjoiYXNzaXN0YW50Iik7ZS5vdXRlckhUTUw9d28oci5hdmF0YXJTdmcpfX1mdW5jdGlvbiBRbihlLHQpe3Q9dHx8e307dmFyIHI9ZT09PSJ1c2VyIj8idXNlciI6ImFzc2lzdGFudCIsaT1QYShyKSxhPWkuYXZhdGFyPyc8aW1nIGNsYXNzPSJwaXhlbC1hdmF0YXItaW1hZ2UiIHNyYz0iJytwKGkuYXZhdGFyKSsnIiBhbHQ9IicrcChpLm5hbWUpKyciIG9uZXJyb3I9ImhhbmRsZUNoYXRBdmF0YXJJbWFnZUVycm9yKHRoaXMsICcrSlNPTi5zdHJpbmdpZnkocikrJykiIC8+Jzp3byhpLmF2YXRhclN2ZyksdT10LmxlZnRTbG90P3QubGVmdFNsb3Q6IiI7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1hdmF0YXIgJytlKyciPicrYSsnPHNwYW4gY2xhc3M9ImF2YXRhci1uYW1lIj4nK3AoaS5uYW1lKSsiPC9zcGFuPiIrdSsiPC9kaXY+In1mdW5jdGlvbiBYcCgpe3ZhciBlPU50KCk7cmV0dXJuIWV8fCF1ZShlKT8iIjpVYShlLHtraW5kOiJjb21wYWN0In0pfWZ1bmN0aW9uIHFhKGUsdCxyLGkpe2lmKGUucm9sZT09PSJ0aGlua2luZyIpe3ZhciBhPXR5cGVvZiBlLmNvbnRlbnQ9PSJzdHJpbmciP2UuY29udGVudDoiIjtpZighYS50cmltKCkpcmV0dXJuIiI7dmFyIHU9SnQoInRoaW5raW5nIixbZ3UoZSxyKSwicHR5Il0pLHM9cnQodSksbz1zPT09bnVsbD94bigidGhpbmtpbmciKTpzO3JldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgdGhpbmtpbmciPjxkaXYgY2xhc3M9InRoaW5raW5nLWlubGluZSB0aGlua2luZy1wdHkgJysobz8iZXhwYW5kZWQiOiJjb2xsYXBzZWQiKSsnIiBkYXRhLWV4cGFuZC1raW5kPSJ0aGlua2luZyIgZGF0YS1leHBhbmQta2V5PSInK3AodSkrJyIgZGF0YS10aGlua2luZz0iJytwKGEpKyciIG9uY2xpY2s9Il9fdGhpbmtpbmdUb2dnbGUodGhpcykiPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtaWNvbiI+XHUyOUJGPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtcHJldmlldyI+JytwKGEpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRoaW5raW5nLWlubGluZS1hY3Rpb24iPicrKG8/Ilx1NjUzNlx1OEQ3NyI6Ilx1NUM1NVx1NUYwMCIpKyI8L3NwYW4+PC9kaXY+PC9kaXY+In1pZihlLnJvbGU9PT0icHJvbXB0IilyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlIHByb21wdCI+PGRpdiBjbGFzcz0icHJvbXB0LWNhcmQiPjxkaXYgY2xhc3M9InByb21wdC1pY29uIj5cdTIxOTI8L2Rpdj48ZGl2IGNsYXNzPSJwcm9tcHQtY29udGVudCI+XHU4QkQ1XHU4QkQ1XHVGRjFBPHNwYW4gY2xhc3M9InByb21wdC10ZXh0Ij4nK3AoZS5jb250ZW50KSsiPC9zcGFuPjwvZGl2PjwvZGl2PjwvZGl2PiI7aWYoQXJyYXkuaXNBcnJheShlLmNvbnRlbnQpKXJldHVybiBvdihlLHQscixpKTt2YXIgbD1RbihlLnJvbGUpLGM9ZS5yb2xlPT09ImFzc2lzdGFudCI/amEoZS5jb250ZW50KTpwKGUuY29udGVudCk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2Uucm9sZSsnIj4nK2wrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1idWJibGUiPicrYysiPC9kaXY+PC9kaXY+In1mdW5jdGlvbiBacChlKXt2YXIgdD17fTtpZighQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gdDtmb3IodmFyIHI9MDtyPGUubGVuZ3RoO3IrKyl7dmFyIGk9ZVtyXTtpZihpJiZpLnR5cGU9PT0idG9vbF9yZXN1bHQiKXt2YXIgYT1pLnRvb2xfdXNlX2lkO2lmKCFhKWNvbnRpbnVlO3RbYV18fCh0W2FdPVtdKSx0W2FdLnB1c2goaSl9fXJldHVybiB0fWZ1bmN0aW9uIENvKGUsdCl7dmFyIHI9ZSYmdD9lW3RdOm51bGw7aWYoIXJ8fCFyLmxlbmd0aClyZXR1cm4gbnVsbDtmb3IodmFyIGk9MDtpPHIubGVuZ3RoLTE7aSsrKWlmKHFvKHJbaV0scltpKzFdKSlyZXR1cm4gcltpKzFdO3JldHVybiByW3IubGVuZ3RoLTFdfWZ1bmN0aW9uIGV2KGUsdCl7dmFyIHI9ZSYmdD9lW3RdOm51bGw7aWYoIXJ8fHIubGVuZ3RoPDIpcmV0dXJuITE7Zm9yKHZhciBpPTA7aTxyLmxlbmd0aC0xO2krKylpZihxbyhyW2ldLHJbaSsxXSkpcmV0dXJuITA7cmV0dXJuITF9ZnVuY3Rpb24gdHYoZSl7cmV0dXJuJzxkaXYgY2xhc3M9InN0cnVjdHVyZWQtdG9vbC1oaW50Ij5cdTVERjJcdTgxRUFcdTUyQThcdTYwNjJcdTU5MERcdTRFMDBcdTZCMjEgJytwKE5hKGUpKSsiIFx1NTNDMlx1NjU3MFx1OTVFRVx1OTg5ODwvZGl2PiJ9dmFyIEJvPXtSZWFkOjEsR2xvYjoxLEdyZXA6MSxXZWJGZXRjaDoxLFdlYlNlYXJjaDoxLFRvZG9SZWFkOjF9O2Z1bmN0aW9uIG52KGUpe2Zvcih2YXIgdD1bXSxyPTA7cjxlLmxlbmd0aDspe3ZhciBpPWVbcl07aWYoaS50eXBlPT09InRvb2xfcmVzdWx0Iil7cisrO2NvbnRpbnVlfWlmKGkudHlwZT09PSJ0b29sX3VzZSImJkJvW2kubmFtZV0pe2Zvcih2YXIgYT1be2Jsb2NrOmksaW5kZXg6cn1dLHU9cisxO3U8ZS5sZW5ndGg7KXtpZihlW3VdLnR5cGU9PT0idG9vbF9yZXN1bHQiKXt1Kys7Y29udGludWV9aWYoZVt1XS50eXBlPT09InRvb2xfdXNlIiYmQm9bZVt1XS5uYW1lXSlhLnB1c2goe2Jsb2NrOmVbdV0saW5kZXg6dX0pLHUrKztlbHNlIGJyZWFrfWEubGVuZ3RoPj0yP3QucHVzaCh7dHlwZToiZ3JvdXAiLGl0ZW1zOmEsZW5kSW5kZXg6dX0pOnQucHVzaCh7dHlwZToic2luZ2xlIixibG9jazppLGluZGV4OnJ9KSxyPXV9ZWxzZSB0LnB1c2goe3R5cGU6InNpbmdsZSIsYmxvY2s6aSxpbmRleDpyfSkscisrfXJldHVybiB0fXZhciBydj17UmVhZDoiXHU4QkZCXHU1M0Q2IixHbG9iOiJcdTY0MUNcdTdEMjIiLEdyZXA6Ilx1NjQxQ1x1N0QyMiIsV2ViRmV0Y2g6Ilx1NjI5M1x1NTNENiIsV2ViU2VhcmNoOiJcdTY0MUNcdTdEMjIiLFRvZG9SZWFkOiJcdTVGODVcdTUyOUUifTtmdW5jdGlvbiBpdihlLHQscixpKXtmb3IodmFyIGE9e30sdT0wO3U8ZS5sZW5ndGg7dSsrKXt2YXIgcz1lW3VdLmJsb2NrLm5hbWU7YVtzXT0oYVtzXXx8MCkrMX1mb3IodmFyIG89ITAsbD0hMSx1PTA7dTxlLmxlbmd0aDt1Kyspe3ZhciBjPWVbdV0uYmxvY2ssZj1DbyhyLGMuaWQpO2Y/Zi5pc19lcnJvciYmKGw9ITApOm89ITF9dmFyIGQ9bz9sPyJcdTI3MTciOiJcdTI3MTMiOiJcdTIwMjYiLHY9bz9sPyJlcnJvciI6ImRvbmUiOiJwZW5kaW5nIixnPVtdO2Zvcih2YXIgaCBpbiBhKWcucHVzaChhW2hdKyIgIisocnZbaF18fGgpKTtmb3IodmFyIG09Zy5qb2luKCIgXHhCNyAiKSxiPUp0KCJ0b29sLWdyb3VwIixbaSxlWzBdJiZlWzBdLmluZGV4LGUubGVuZ3RoXSksRj1ydChiKSx3PUY9PT1udWxsP3huKCJ0b29sR3JvdXAiKTpGLEU9IiIsdT0wO3U8ZS5sZW5ndGg7dSsrKXRyeXtFKz1BbyhlW3VdLmJsb2NrLHQscixlW3VdLmluZGV4LGkpfWNhdGNoe0UrPSc8ZGl2IGNsYXNzPSJyZW5kZXItZXJyb3IiPlx1NURFNVx1NTE3N1x1NkUzMlx1NjdEM1x1NTkzMVx1OEQyNTwvZGl2Pid9cmV0dXJuJzxkaXYgY2xhc3M9InRvb2wtZ3JvdXAiIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtZ3JvdXAiIGRhdGEtZXhwYW5kLWtleT0iJytwKGIpKyciIGRhdGEtZXhwYW5kZWQ9IicrKHc/InRydWUiOiJmYWxzZSIpKyciIGRhdGEtc3RhdHVzPSInK3YrJyI+PGRpdiBjbGFzcz0idG9vbC1ncm91cC1zdW1tYXJ5IiBvbmNsaWNrPSJfX3Rvb2xHcm91cFRvZ2dsZSh0aGlzLnBhcmVudE5vZGUpIj48c3BhbiBjbGFzcz0idG9vbC1ncm91cC1zdGF0dXMiPicrZCsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0b29sLWdyb3VwLXRleHQiPicrcChtKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0b29sLWdyb3VwLWNvdW50Ij4nK2UubGVuZ3RoKycgXHU0RTJBXHU4QzAzXHU3NTI4PC9zcGFuPjxzdmcgY2xhc3M9InRvb2wtZ3JvdXAtY2hldnJvbiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3R5bGU9InRyYW5zZm9ybTonKyh3PyJyb3RhdGUoMTgwZGVnKSI6IiIpKyciPjxwb2x5bGluZSBwb2ludHM9IjYgOSAxMiAxNSAxOCA5Ii8+PC9zdmc+PC9kaXY+PGRpdiBjbGFzcz0idG9vbC1ncm91cC1ib2R5IiBzdHlsZT0iZGlzcGxheTonKyh3PyJibG9jayI6Im5vbmUiKSsnOyI+JytFKyI8L2Rpdj48L2Rpdj4ifXdpbmRvdy5fX3Rvb2xHcm91cFRvZ2dsZT1mdW5jdGlvbihlKXtpZihlKXt2YXIgdD1lLmdldEF0dHJpYnV0ZSgiZGF0YS1leHBhbmRlZCIpPT09InRydWUiO2Uuc2V0QXR0cmlidXRlKCJkYXRhLWV4cGFuZGVkIix0PyJmYWxzZSI6InRydWUiKTt2YXIgcj1lLnF1ZXJ5U2VsZWN0b3IoIi50b29sLWdyb3VwLWJvZHkiKTtyJiYoci5zdHlsZS5kaXNwbGF5PXQ/Im5vbmUiOiJibG9jayIpO3ZhciBpPWUucXVlcnlTZWxlY3RvcigiLnRvb2wtZ3JvdXAtY2hldnJvbiIpO2kmJihpLnN0eWxlLnRyYW5zZm9ybT10PyIiOiJyb3RhdGUoMTgwZGVnKSIpLHduKGUsInRvb2wtZ3JvdXAiKX19O2Z1bmN0aW9uIEhhKGUpe2lmKCFlfHxlLnR5cGUhPT0idG9vbF91c2UiKXJldHVybiBudWxsO3ZhciB0PWUuaW5wdXR8fHt9LHI9dHlwZW9mIHQuc3ViYWdlbnRfdHlwZT09InN0cmluZyI/dC5zdWJhZ2VudF90eXBlOm51bGw7cmV0dXJuIXImJmUubmFtZSE9PSJUYXNrIiYmZS5uYW1lIT09IkFnZW50Ij9udWxsOnt0YXNrSWQ6ZS5pZCxhZ2VudFR5cGU6cnx8dm9pZCAwLHRhc2tEZXNjcmlwdGlvbjp0eXBlb2YgdC5kZXNjcmlwdGlvbj09InN0cmluZyI/dC5kZXNjcmlwdGlvbjp2b2lkIDB9fWZ1bmN0aW9uIGF2KGUpe3ZhciB0PW5ldyBNYXA7aWYoIUFycmF5LmlzQXJyYXkoZSkpcmV0dXJuIHQ7Zm9yKHZhciByPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoISghaXx8aS5yb2xlIT09ImFzc2lzdGFudCJ8fCFBcnJheS5pc0FycmF5KGkuY29udGVudCkpKWZvcih2YXIgYT0wO2E8aS5jb250ZW50Lmxlbmd0aDthKyspe3ZhciB1PWkuY29udGVudFthXTtpZighKCF1fHx1LnR5cGUhPT0idG9vbF91c2UiKSl7dmFyIHM9dS5fX3N1YmFnZW50fHxIYSh1KTtzJiZ0LnNldCh1LmlkLHMpfX19cmV0dXJuIHR9ZnVuY3Rpb24gdXYoZSl7dmFyIHQ9bmV3IE1hcDtpZighQXJyYXkuaXNBcnJheShlKSlyZXR1cm4gdDt2YXIgcj1uZXcgTWFwLGk9bmV3IFNldDtmdW5jdGlvbiBhKGYpe2lmKCEoIWZ8fCFmLnRhc2tJZCkmJiFpLmhhcyhmLnRhc2tJZCkpe2kuYWRkKGYudGFza0lkKTt2YXIgZD15byhmKTtkJiYoci5oYXMoZCl8fHIuc2V0KGQsW10pLHIuZ2V0KGQpLnB1c2goZi50YXNrSWQpKX19Zm9yKHZhciB1PTA7dTxlLmxlbmd0aDt1Kyspe3ZhciBzPWVbdV07aWYoISghc3x8IUFycmF5LmlzQXJyYXkocy5jb250ZW50KSkpZm9yKHZhciBvPTA7bzxzLmNvbnRlbnQubGVuZ3RoO28rKyl7dmFyIGw9cy5jb250ZW50W29dO2lmKGwpe3ZhciBjPWwuX19zdWJhZ2VudHx8KGwudHlwZT09PSJ0b29sX3VzZSI/SGEobCk6bnVsbCk7YyYmYShjKX19fXJldHVybiByLmZvckVhY2goZnVuY3Rpb24oZil7aWYoIShmLmxlbmd0aDwyKSlmb3IodmFyIGQ9MDtkPGYubGVuZ3RoO2QrKyl0LnNldChmW2RdLCIgIyIrKGQrMSkpfSksdH1mdW5jdGlvbiBEbyhlLHQpe3ZhciByPVtdO2lmKCFBcnJheS5pc0FycmF5KGUpfHwhZS5sZW5ndGgpcmV0dXJuIHI7Zm9yKHZhciBpPW51bGwsYT0wO2E8ZS5sZW5ndGg7YSsrKXt2YXIgdT1lW2FdLHM9dSYmdS50eXBlPT09InRleHQiJiZ1Ll9fcHJvY2Vzc2luZz09PSEwO2lmKHMmJmkpe2kuYmxvY2tzLnB1c2godSk7Y29udGludWV9dmFyIG89dSYmdS5fX3N1YmFnZW50P3UuX19zdWJhZ2VudDpudWxsO298fChvPUhhKHUpKSwhbyYmdSYmdS50eXBlPT09InRvb2xfcmVzdWx0IiYmdCYmdC5oYXModS50b29sX3VzZV9pZCkmJihvPXQuZ2V0KHUudG9vbF91c2VfaWQpKTt2YXIgbD1vP28udGFza0lkOm51bGw7KCFpfHxpLmtleSE9PWwpJiYoaT17a2V5Omwsc3ViYWdlbnQ6byxibG9ja3M6W10sZmlyc3RJbmRleDphfSxyLnB1c2goaSkpLGkuYmxvY2tzLnB1c2godSl9cmV0dXJuIHJ9ZnVuY3Rpb24gX2EoZSx0LHIsaSxhKXt2YXIgdT0iIjt0cnl7Zm9yKHZhciBzPW52KGUpLG89MDtvPHMubGVuZ3RoO28rKyl7dmFyIGw9c1tvXTt0cnl7aWYobC50eXBlPT09Imdyb3VwIil7Zm9yKHZhciBjPVtdLGY9MDtmPGwuaXRlbXMubGVuZ3RoO2YrKyljLnB1c2goe2Jsb2NrOmwuaXRlbXNbZl0uYmxvY2ssaW5kZXg6bC5pdGVtc1tmXS5pbmRleCt0fSk7dSs9aXYoYyxyLGksYSl9ZWxzZSB1Kz1BbyhsLmJsb2NrLHIsaSxsLmluZGV4K3QsYSl9Y2F0Y2h7dSs9JzxkaXYgY2xhc3M9InJlbmRlci1lcnJvciI+XHU2RDg4XHU2MDZGXHU1NzU3XHU2RTMyXHU2N0QzXHU1OTMxXHU4RDI1PC9kaXY+J319fWNhdGNoe3UrPSc8ZGl2IGNsYXNzPSJyZW5kZXItZXJyb3IiPlx1NkQ4OFx1NjA2Rlx1NkUzMlx1NjdEM1x1NTkzMVx1OEQyNTwvZGl2Pid9cmV0dXJuIHV9ZnVuY3Rpb24ga28oZSx0LHIsaSxhLHUpe2Zvcih2YXIgcz11fHx7fSxvPXMuc2hvd0hhbmRvZmYhPT0hMSxsPSIiLGM9bnVsbCxmPTA7ZjxlLmxlbmd0aDtmKyspe3ZhciBkPWVbZl0sdj1fYShkLmJsb2NrcyxkLmZpcnN0SW5kZXgsdCxpLGEpO2lmKCEoIXZ8fCF2LnRyaW0oKSkpaWYoZC5zdWJhZ2VudCl7dmFyIGc9byYmYyE9PWQuc3ViYWdlbnQudGFza0lkO2wrPXN2KGQscix2LGEsZyksYz1kLnN1YmFnZW50LnRhc2tJZH1lbHNlIGwrPSc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2Utc2VnbWVudCBwYXJlbnQiPicrUW4odCkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1jb250ZW50Ij4nK3YrIjwvZGl2PjwvZGl2PiIsYz1udWxsfXJldHVybiBsfWZ1bmN0aW9uIHN2KGUsdCxyLGksYSl7dmFyIHU9ZS5zdWJhZ2VudCxzPUVvKHUpLG89Ym8odSksbD11LnRhc2tJZHx8IiIsYz1GaSh3aShzKSksZjtpZihhKXt2YXIgZD0nPHN0cm9uZyBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtbmFtZSI+JytwKG8pKyc8L3N0cm9uZz48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdGFnIiB0aXRsZT0iJytwKE1lKCJzdWJhZ2VudC50YWdfdGl0bGUiKSkrJyI+JytwKE1lKCJzdWJhZ2VudC50YWciKSkrIjwvc3Bhbj4iLHY9ISEodS50YXNrRGVzY3JpcHRpb24mJlN0cmluZyh1LnRhc2tEZXNjcmlwdGlvbikudHJpbSgpKSxnPXY/TWUoInN1YmFnZW50LmhhbmRvZmYud2l0aF9kZXNjIix7cGFyZW50OnAodCksc3ViOmR9KTpNZSgic3ViYWdlbnQuaGFuZG9mZiIse3BhcmVudDpwKHQpLHN1YjpkfSksaD12Pyc8c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdGFzay1kZXNjIj4nK3AodS50YXNrRGVzY3JpcHRpb24pKyI8L3NwYW4+IjoiIjtmPSc8c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtYXJyb3ciIGFyaWEtaGlkZGVuPSJ0cnVlIj5cdTIxQjM8L3NwYW4+PHNwYW4gY2xhc3M9InN1YmFnZW50LXBhbmVsLWF0dHJpYnV0aW9uIj4nK2craCsiPC9zcGFuPiJ9ZWxzZSBmPSc8c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtYXR0cmlidXRpb24iPjxzdHJvbmcgY2xhc3M9InN1YmFnZW50LXBhbmVsLW5hbWUiPicrcChvKSsnPC9zdHJvbmc+PHNwYW4gY2xhc3M9InN1YmFnZW50LXBhbmVsLXRhc2stZGVzYyI+ICcrcChNZSgic3ViYWdlbnQuY29udGludWVkIikpKyI8L3NwYW4+PC9zcGFuPiI7dmFyIG09SnQoInN1YmFnZW50LXBhbmVsIixbaSxsXSksYj1ydChtKSxGPWI9PT1udWxsPyExOiEhYjtmdW5jdGlvbiB3KEUpe3JldHVybic8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InN1YmFnZW50LXBhbmVsLXRvZ2dsZSIgZGF0YS1wb3NpdGlvbj0iJytFKyciIG9uY2xpY2s9Il9fc3ViYWdlbnRQYW5lbFRvZ2dsZShldmVudCwgdGhpcykiIGFyaWEtZXhwYW5kZWQ9IicrKEY/InRydWUiOiJmYWxzZSIpKyciIGFyaWEtbGFiZWw9IicrcChNZShGPyJ1aS5jb2xsYXBzZV9wYW5lbF9hcmlhIjoidWkuZXhwYW5kX3BhbmVsX2FyaWEiKSkrJyI+PHNwYW4gY2xhc3M9InN1YmFnZW50LXBhbmVsLXRvZ2dsZS1sYWJlbCI+JytwKE1lKEY/InVpLmNvbGxhcHNlIjoidWkuZXhwYW5kIikpKyc8L3NwYW4+PHN2ZyBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWljb24iIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDEwIDEwIiBmaWxsPSJub25lIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTIuNSAzLjc1TDUgNi4yNUw3LjUgMy43NSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz48L2J1dHRvbj4nfXJldHVybic8ZGl2IGNsYXNzPSJzdWJhZ2VudC1wYW5lbCIgZGF0YS1leHBhbmQta2luZD0ic3ViYWdlbnQtcGFuZWwiIGRhdGEtZXhwYW5kLWtleT0iJytwKG0pKyciIGRhdGEtYWdlbnQtaWQ9IicrcChsKSsnIiBkYXRhLWV4cGFuZGVkPSInKyhGPyJ0cnVlIjoiZmFsc2UiKSsnIiBzdHlsZT0iLS1hZ2VudC1jb2xvcjonK3MucHJpbWFyeSsnIj48ZGl2IGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1oZWFkZXIiIG9uY2xpY2s9Il9fc3ViYWdlbnRQYW5lbFRvZ2dsZShldmVudCwgdGhpcykiIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGFyaWEtbGFiZWw9IicrcChNZSgic3ViYWdlbnQudGl0bGVfYXJpYSIpKSsnIj48c3BhbiBjbGFzcz0ic3ViYWdlbnQtcGFuZWwtYXZhdGFyIiBhcmlhLWhpZGRlbj0idHJ1ZSI+JytjKyI8L3NwYW4+IitmK3coInRvcCIpKyc8L2Rpdj48ZGl2IGNsYXNzPSJzdWJhZ2VudC1wYW5lbC1ib2R5Ij4nK3IrJzwvZGl2PjxkaXYgY2xhc3M9InN1YmFnZW50LXBhbmVsLWZvb3RlciI+PHNwYW4gY2xhc3M9InN1YmFnZW50LXBhbmVsLWZvb3Rlci1oaW50IiBhcmlhLWhpZGRlbj0idHJ1ZSI+XHUyMDE0ICcrcChvKSsiIFx1MjAxNDwvc3Bhbj4iK3coImJvdHRvbSIpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIG92KGUsdCxyLGkpe3ZhciBhPWUucm9sZSx1PWd1KGUscikscz1hPT09InVzZXIiJiZlLmNvbnRlbnQmJmUuY29udGVudC5zb21lKGZ1bmN0aW9uKEEpe3JldHVybiBBLl9fcXVldWVkfSk7aWYoIWUuY29udGVudHx8ZS5jb250ZW50Lmxlbmd0aD09PTApcmV0dXJuIGE9PT0iYXNzaXN0YW50Ij8nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlICcrYSsnIj4nK1FuKGEpKyc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UtYnViYmxlIj48ZGl2IGNsYXNzPSJ0eXBpbmctaW5kaWNhdG9yIj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48L2Rpdj48L2Rpdj48L2Rpdj4nOic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythKycgZW1wdHktbWVzc2FnZSIgZGF0YS1tZXNzYWdlLWtleT0iJytwKHUpKyciPicrUW4oYSkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1jb250ZW50Ij48c3BhbiBjbGFzcz0iZW1wdHktbWVzc2FnZS1oaW50Ij5cdUZGMDhcdTdBN0FcdTZEODhcdTYwNkZcdUZGMDk8L3NwYW4+PC9kaXY+PC9kaXY+Jzt2YXIgbz1acChlLmNvbnRlbnQpLGw9UGEoImFzc2lzdGFudCIpO2lmKGEhPT0iYXNzaXN0YW50Iil7dmFyIGM9RG8oZS5jb250ZW50LGkpLGY9Yy5zb21lKGZ1bmN0aW9uKEEpe3JldHVybiBBLnN1YmFnZW50fSksZD1zPyIgcXVldWVkIjoiIix2PXM/JzxzcGFuIGNsYXNzPSJxdWV1ZWQtYmFkZ2UiPlx1NjM5Mlx1OTYxRlx1NEUyRDwvc3Bhbj4nOiIiLGc9WHAoKTtpZihmKXt2YXIgaD1rbyhjLGEsbC5uYW1lLG8sdSx7c2hvd0hhbmRvZmY6ITF9KTtyZXR1cm4nPGRpdiBjbGFzcz0iY2hhdC1tZXNzYWdlICcrYStkKycgbXVsdGktYWdlbnQiIGRhdGEtbWVzc2FnZS1rZXk9IicrcCh1KSsnIj4nK2grdisiPC9kaXY+In12YXIgbT1fYShlLmNvbnRlbnQsMCxhLG8sdSk7cmV0dXJuJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZSAnK2ErZCsnIiBkYXRhLW1lc3NhZ2Uta2V5PSInK3AodSkrJyI+JytRbihhLHtsZWZ0U2xvdDpnfSkrJzxkaXYgY2xhc3M9ImNoYXQtbWVzc2FnZS1jb250ZW50Ij4nK20rdisiPC9kaXY+PC9kaXY+In12YXIgYj1EbyhlLmNvbnRlbnQsaSksRj1iLnNvbWUoZnVuY3Rpb24oQSl7cmV0dXJuIEEuc3ViYWdlbnR9KTtpZighRil7dmFyIHc9X2EoZS5jb250ZW50LDAsYSxvLHUpO3JldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythKyciIGRhdGEtbWVzc2FnZS1rZXk9IicrcCh1KSsnIj4nK1FuKGEpKyc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UtY29udGVudCI+Jyt3KyI8L2Rpdj48L2Rpdj4ifXZhciBFPSc8ZGl2IGNsYXNzPSJjaGF0LW1lc3NhZ2UgJythKycgbXVsdGktYWdlbnQiIGRhdGEtbWVzc2FnZS1rZXk9IicrcCh1KSsnIj4nO3JldHVybiBFKz1rbyhiLGEsbC5uYW1lLG8sdSx7c2hvd0hhbmRvZmY6ITB9KSxFKz0iPC9kaXY+IixFfWZ1bmN0aW9uIEFvKGUsdCxyLGksYSl7aWYoIWV8fCFlLnR5cGV8fGUudHlwZT09PSJ0b29sX3VzZSImJmUuX19zdWJhZ2VudCYmZS5fX3N1YmFnZW50LnRhc2tJZD09PWUuaWQpcmV0dXJuIiI7aWYoZS50eXBlPT09InRvb2xfcmVzdWx0IiYmZS5fX3N1YmFnZW50JiZlLl9fc3ViYWdlbnQudGFza0lkPT09ZS50b29sX3VzZV9pZClyZXR1cm4gJHAoZSx0KTtzd2l0Y2goZS50eXBlKXtjYXNlInRleHQiOnJldHVybiB0PT09ImFzc2lzdGFudCImJmUuX19wcm9jZXNzaW5nPyc8ZGl2IGNsYXNzPSJ0eXBpbmctaW5kaWNhdG9yIj48c3Bhbj48L3NwYW4+PHNwYW4+PC9zcGFuPjxzcGFuPjwvc3Bhbj48L2Rpdj4nOnQ9PT0iYXNzaXN0YW50Ij9qYShlLnRleHR8fCIiKTpwKGUudGV4dHx8IiIpO2Nhc2UidGhpbmtpbmciOnZhciB1PWUudGhpbmtpbmd8fCIiLHM9ZS50aGlua2luZz09PXZvaWQgMCYmZS50eXBlPT09InRoaW5raW5nIjtpZihzKXJldHVybic8ZGl2IGNsYXNzPSJ0aGlua2luZy1pbmxpbmUgdGhpbmtpbmctc3RyZWFtaW5nIiBkYXRhLXRoaW5raW5nPSIiPjxkaXYgY2xhc3M9InRoaW5raW5nLXN0cmVhbWluZy1pbm5lciI+PHNwYW4gY2xhc3M9InRoaW5raW5nLXN0cmVhbWluZy1pY29uIHNwaW5uaW5nIj5cdTI5QkY8L3NwYW4+PGRpdiBjbGFzcz0idGhpbmtpbmctc3RyZWFtaW5nLXRleHQiPjwvZGl2PjwvZGl2PjwvZGl2Pic7aWYoIXUudHJpbSgpKXJldHVybiIiO3ZhciBvPXUubGVuZ3RoPjYwP3Uuc2xpY2UoMCw1NykrIlx1MjAyNiI6dSxsPUp0KCJ0aGlua2luZyIsW2EsaV0pLGM9cnQobCksZj1jPT09bnVsbD94bigidGhpbmtpbmciKTpjO3JldHVybic8ZGl2IGNsYXNzPSJ0aGlua2luZy1pbmxpbmUgJysoZj8iZXhwYW5kZWQiOiJjb2xsYXBzZWQiKSsnIiBkYXRhLWV4cGFuZC1raW5kPSJ0aGlua2luZyIgZGF0YS1leHBhbmQta2V5PSInK3AobCkrJyIgZGF0YS10aGlua2luZz0iJytwKHUpKyciIG9uY2xpY2s9Il9fdGhpbmtpbmdUb2dnbGUodGhpcykiPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtaWNvbiI+XHUyOUJGPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtcHJldmlldyI+JytwKGY/dTpvKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJ0aGlua2luZy1pbmxpbmUtYWN0aW9uIj4nKyhmPyJcdTY1MzZcdThENzciOiJcdTVDNTVcdTVGMDAiKSsiPC9zcGFuPjwvZGl2PiI7Y2FzZSJ0b29sX3VzZSI6dmFyIGQ9Q28ocixlLmlkKSx2PWZ2KGUsZCxpLGEpO3JldHVybiBldihyLGUuaWQpJiYodj10dihlLm5hbWV8fCJcdTVERTVcdTUxNzciKSt2KSx2O2Nhc2UidG9vbF9yZXN1bHQiOnJldHVybiIiO2RlZmF1bHQ6dmFyIGc9ZSYmZS50eXBlP1N0cmluZyhlLnR5cGUpOiJcdTY3MkFcdTc3RTUiLGg9IiI7dHJ5e2g9SlNPTi5zdHJpbmdpZnkoZSxudWxsLDIpfWNhdGNoe2g9Int9In1yZXR1cm5gPGRpdiBjbGFzcz0idW5rbm93bi1ibG9jayBjb2xsYXBzZWQiIG9uY2xpY2s9InRoaXMuY2xhc3NMaXN0LnRvZ2dsZSgnY29sbGFwc2VkJykiPjxkaXYgY2xhc3M9InVua25vd24tYmxvY2staGVhZGVyIj48c3BhbiBjbGFzcz0idW5rbm93bi1ibG9jay1pY29uIj4/PC9zcGFuPjxzcGFuIGNsYXNzPSJ1bmtub3duLWJsb2NrLWxhYmVsIj5cdTY3MkFcdThCQzZcdTUyMkJcdTc2ODRcdTUxODVcdTVCQjlcdTU3NTdcdUZGMUFgK3AoZykrJzwvc3Bhbj48c3BhbiBjbGFzcz0idW5rbm93bi1ibG9jay10b2dnbGUiPlx1MjVCQzwvc3Bhbj48L2Rpdj48cHJlIGNsYXNzPSJ1bmtub3duLWJsb2NrLWJvZHkiPicrcChoKSsiPC9wcmU+PC9kaXY+In19ZnVuY3Rpb24gbHYoZSx0LHIsaSxhLHUscyl7dmFyIG89ZS5pZHx8InRvb2wtIityLGw9SnQoImlubGluZS10b29sIixbdSxvfHxzLHNdKSxjPXJ0KGwpLGY9ZS5pbnB1dHx8e30sZD1kbih0JiZ0LmNvbnRlbnQpLHY9dCYmdC5pc19lcnJvcixnPWQubGVuZ3RoPjAsaD12PyJcdTI3MTciOmc/Ilx1MjcxMyI6Ilx1MjAyNiIsbT0iIixiPSIiLEY9IiIsdz0iIjtpZihyPT09IlJlYWQiKXttPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48cGF0aCBkPSJNMSAzLjVBMS41IDEuNSAwIDAgMSAyLjUgMmgyLjc2NGMuOTU4IDAgMS43Ni41NiAyLjMxMSAxLjE4NEM4LjQwNSAzLjc3IDkuMTQ2IDQgMTAgNGgzLjVBMS41IDEuNSAwIDAgMSAxNSA1LjV2N2ExLjUgMS41IDAgMCAxLTEuNSAxLjVoLTExQTEuNSAxLjUgMCAwIDEgMSAxMi41di05eiIvPjxwYXRoIGQ9Ik0yIDUuNWgxMk0yIDhoOE0yIDEwLjVoNSIvPjwvc3ZnPic7dmFyIEU9Zi5maWxlX3BhdGh8fGYucGF0aHx8aXx8IiIsQT0iIjtmLmxpbWl0JiYoQT0iICIrZi5vZmZzZXQrIi0iKyhmLm9mZnNldCtmLmxpbWl0KSksYj1FLEY9QX1lbHNlIGlmKHI9PT0iR2xvYiIpe209JzxzdmcgY2xhc3M9ImlubGluZS10b29sLWljb24iIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxjaXJjbGUgY3g9IjciIGN5PSI3IiByPSI1Ii8+PHBhdGggZD0iTTEwLjUgMTAuNUwxNCAxNCIvPjwvc3ZnPic7dmFyIHg9Zi5wYXR0ZXJufHwiIixJPWYucGF0aHx8aXx8IiI7Yj14LEY9SX1lbHNlIGlmKHI9PT0iR3JlcCIpe209JzxzdmcgY2xhc3M9ImlubGluZS10b29sLWljb24iIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxjaXJjbGUgY3g9IjYuNSIgY3k9IjYuNSIgcj0iNC41Ii8+PHBhdGggZD0iTTExLjUgMTEuNUwxNSAxNSIvPjwvc3ZnPic7dmFyIHg9Zi5wYXR0ZXJufHwiIixJPWYucGF0aHx8aXx8IiI7Yj14LEY9SSxmLmNvbnRleHQmJihGKz0iIC1DIitmLmNvbnRleHQpfWVsc2UgaWYocj09PSJXZWJGZXRjaCIpe209JzxzdmcgY2xhc3M9ImlubGluZS10b29sLWljb24iIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjUiPjxjaXJjbGUgY3g9IjgiIGN5PSI4IiByPSI2LjUiLz48cGF0aCBkPSJNOCAxLjV2MTNNMS41IDhoMTMiLz48L3N2Zz4nO3ZhciBqPWYudXJsfHwiIjtiPWosRj1hfHwiIn1lbHNlIGlmKHI9PT0iV2ViU2VhcmNoIil7bT0nPHN2ZyBjbGFzcz0iaW5saW5lLXRvb2wtaWNvbiIgdmlld0JveD0iMCAwIDE2IDE2IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuNSI+PGNpcmNsZSBjeD0iNyIgY3k9IjciIHI9IjUiLz48cGF0aCBkPSJNMTAuNSAxMC41TDE0IDE0Ii8+PHBhdGggZD0iTTUgN2g0TTcgNXY0Ii8+PC9zdmc+Jzt2YXIgVj1mLnF1ZXJ5fHwiIjtiPVYsRj1hfHwiIn1lbHNlIHI9PT0iVG9kb1JlYWQiPyhtPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48cmVjdCB4PSIyIiB5PSIyIiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHJ4PSIyIi8+PHBhdGggZD0iTTUgOGwyIDIgNC00Ii8+PC9zdmc+JyxiPSJcdThCRkJcdTUzRDZcdTVGODVcdTUyOUVcdTUyMTdcdTg4NjgiLEY9YXx8IiIpOihtPSc8c3ZnIGNsYXNzPSJpbmxpbmUtdG9vbC1pY29uIiB2aWV3Qm94PSIwIDAgMTYgMTYiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS41Ij48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iNi41Ii8+PHBhdGggZD0iTTggNXYzLjVNOCAxMWguMDEiLz48L3N2Zz4nLGI9TmEociksRj1hfHwiIik7aWYoZyl7dmFyIEc9ZC5zcGxpdChgCmApO0cubGVuZ3RoPjEwP3c9Ry5zbGljZSgwLDEwKS5qb2luKGAKYCkrYApcdTIwMjZgOnc9ZH12YXIgTD1wKGQpLEI9cCh3KSxUPWQsTT0iIixIPWM9PT1udWxsP3huKCJpbmxpbmVUb29scyIpOmM7Zz9NPSc8ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1leHBhbmRlZCIgc3R5bGU9ImRpc3BsYXk6ICcrKEg/ImJsb2NrIjoibm9uZSIpKyc7Ij48ZGl2IGNsYXNzPSJpbmxpbmUtdG9vbC1yZXN1bHQiPicreG8oZCxyKSsiPC9kaXY+PC9kaXY+Ijp2P009JzxkaXYgY2xhc3M9ImlubGluZS10b29sLWV4cGFuZGVkIiBzdHlsZT0iZGlzcGxheTogJysoSD8iYmxvY2siOiJub25lIikrJzsiPjxkaXYgY2xhc3M9ImlubGluZS10b29sLXJlc3VsdCBpbmxpbmUtdG9vbC1lcnJvciI+JytwKGR8fCJcdTY0Q0RcdTRGNUNcdTU5MzFcdThEMjUiKSsiPC9kaXY+PC9kaXY+Ijp0fHwoTT0nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtZXhwYW5kZWQiIHN0eWxlPSJkaXNwbGF5OiAnKyhIPyJibG9jayI6Im5vbmUiKSsnOyI+PGRpdiBjbGFzcz0iaW5saW5lLXRvb2wtbG9hZGluZyI+XHU3QjQ5XHU1Rjg1XHU1NENEXHU1RTk0XHUyMDI2PC9kaXY+PC9kaXY+Jyk7dmFyICQ9dCYmdC5fdHJ1bmNhdGVkPT09ITAsbmU9Rj8nPHNwYW4gY2xhc3M9ImlubGluZS10b29sLW1ldGEiPicrcChGKSsiPC9zcGFuPiI6IiIsUT12PyJpbmxpbmUtdG9vbC1lcnJvci1pbmxpbmUiOiIiO0gmJihRKz0iIGlubGluZS10b29sLW9wZW4iKTt2YXIgc2U9JD8nZGF0YS10cnVuY2F0ZWQ9InRydWUiIGRhdGEtdG9vbC11c2UtaWQ9IicrcChlLmlkfHwiIikrJyIgJzoiIjtyZXR1cm4nPGRpdiBjbGFzcz0iaW5saW5lLXRvb2wgJytRKyciIGRhdGEtZXhwYW5kLWtpbmQ9ImlubGluZS10b29sIiBkYXRhLWV4cGFuZC1rZXk9IicrcChsKSsnIiBkYXRhLXJlc3VsdD0iJytwKFQpKyciIGRhdGEtcHJldmlldz0iJytCKyciIGRhdGEtc3RhdHVzPSInKyh2PyJlcnJvciI6Zz8iZG9uZSI6InBlbmRpbmciKSsnIiAnK3NlKydvbmNsaWNrPSJfX2lubGluZVRvb2xUb2dnbGUodGhpcykiPjxkaXYgY2xhc3M9ImlubGluZS10b29sLXJvdyI+PHNwYW4gY2xhc3M9ImlubGluZS10b29sLXN0YXR1cyI+JytoKyI8L3NwYW4+IittKyc8c3BhbiBjbGFzcz0iaW5saW5lLXRvb2wtdGl0bGUiPicrcChiKSsiPC9zcGFuPiIrbmUrIjwvZGl2PiIrTSsiPC9kaXY+In1mdW5jdGlvbiBjdihlLHQscixpLGEpe3ZhciB1PWUuaW5wdXR8fHt9LHM9dS5jb21tYW5kfHx1LmNtZHx8IiIsbz1kbih0JiZ0LmNvbnRlbnQpLGw9ZS5pZHx8InRvb2wtIityLGM9SnQoInRlcm1pbmFsIixbaSxsfHxhLGFdKSxmPXJ0KGMpLGQ9dCYmdC5pc19lcnJvcix2PXUuZXhpdENvZGUsZz1vLmxlbmd0aD4wLGg9IiI7dD9kP2g9JzxzcGFuIGNsYXNzPSJ0ZXJtLXN0YXR1cy1kb3QgdGVybS1lcnJvciI+PC9zcGFuPic6dj09PTB8fHY9PT12b2lkIDA/aD0nPHNwYW4gY2xhc3M9InRlcm0tc3RhdHVzLWRvdCB0ZXJtLXN1Y2Nlc3MiPjwvc3Bhbj4nOmg9JzxzcGFuIGNsYXNzPSJ0ZXJtLXN0YXR1cy1kb3QgdGVybS13YXJuIj48L3NwYW4+JzpoPSc8c3BhbiBjbGFzcz0idGVybS1zdGF0dXMtZG90IHRlcm0tcnVubmluZyI+PC9zcGFuPic7Zm9yKHZhciBtPSc8c3BhbiBjbGFzcz0idGVybS1wcm9tcHQiPiQ8L3NwYW4+JyxiPXAocyksRj1vLnNwbGl0KGAKYCksdz0iIixFPTA7RTxGLmxlbmd0aDtFKyspe3ZhciBBPUZbRV07IUEmJkU9PT1GLmxlbmd0aC0xfHwodys9JzxkaXYgY2xhc3M9InRlcm0tbGluZSI+JytwKEEpKyI8L2Rpdj4iKX12YXIgeD0iIjtpZih0JiZ2IT09dm9pZCAwKXt2YXIgST12PT09MD8idGVybS1leGl0LXN1Y2Nlc3MiOiJ0ZXJtLWV4aXQtZXJyb3IiO3g9JzxkaXYgY2xhc3M9InRlcm0tZXhpdCAnK0krJyI+ZXhpdCAnK3YrIjwvZGl2PiJ9dmFyIGo9cy5sZW5ndGg+ODA/cy5zbGljZSgwLDc3KSsiXHUyMDI2IjpzLFY9Zj09PW51bGw/eG4oInRlcm1pbmFsIik6ZixHPXQmJnQuX3RydW5jYXRlZD09PSEwLEw9Rz8nIGRhdGEtdHJ1bmNhdGVkPSJ0cnVlIiBkYXRhLXRvb2wtdXNlLWlkPSInK3AoZS5pZHx8IiIpKyciJzoiIjtyZXR1cm4nPGRpdiBjbGFzcz0iaW5saW5lLXRlcm1pbmFsIiBkYXRhLWV4cGFuZC1raW5kPSJ0ZXJtaW5hbCIgZGF0YS1leHBhbmQta2V5PSInK3AoYykrJyIgZGF0YS1leHBhbmRlZD0iJysoVj8idHJ1ZSI6ImZhbHNlIikrJyInK0wrJz48ZGl2IGNsYXNzPSJ0ZXJtLWhlYWRlciIgb25jbGljaz0iX190ZXJtaW5hbEV4cGFuZCh0aGlzKSI+JytoKyc8c3BhbiBjbGFzcz0idGVybS1jbWQtcHJldmlldyI+PHNwYW4gY2xhc3M9InRlcm0tcHJvbXB0Ij4kPC9zcGFuPiAnK3AoaikrJzwvc3Bhbj48c3BhbiBjbGFzcz0idGVybS10b2dnbGUtaWNvbiI+JysoVj8iXHUyNUJDIjoiXHUyNUI2IikrJzwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ0ZXJtLWJvZHkiIHN0eWxlPSJkaXNwbGF5OicrKFY/ImJsb2NrIjoibm9uZSIpKyc7Ij48ZGl2IGNsYXNzPSJ0ZXJtLWNvbW1hbmQiPjxzcGFuIGNsYXNzPSJ0ZXJtLXByb21wdCI+JDwvc3Bhbj4gJytiKyI8L2Rpdj4iKyh3Pyc8ZGl2IGNsYXNzPSJ0ZXJtLW91dHB1dCI+Jyt3KyI8L2Rpdj4iOiIiKSt4KyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIGRuKGUpe3JldHVybiBlP3R5cGVvZiBlPT0ic3RyaW5nIj9lOkFycmF5LmlzQXJyYXkoZSk/ZS5tYXAoZnVuY3Rpb24odCl7aWYoIXR8fHR5cGVvZiB0IT0ib2JqZWN0IilyZXR1cm4iIjtpZih0LnR5cGU9PT0idGV4dCImJnR5cGVvZiB0LnRleHQ9PSJzdHJpbmciKXJldHVybiB0LnRleHQ7dHJ5e3JldHVybiBKU09OLnN0cmluZ2lmeSh0KX1jYXRjaHtyZXR1cm4iIn19KS5maWx0ZXIoQm9vbGVhbikuam9pbihgCmApOiIiOiIifWZ1bmN0aW9uIGR2KGUsdCxyLGksYSl7dmFyIHU9ZS5pbnB1dHx8e30scz11LmZpbGVfcGF0aHx8dS5wYXRofHwiIixvPXMuc3BsaXQoIi8iKS5wb3AoKXx8cyxsPWUuaWR8fCJ0b29sLSIrcisiLSIrKHR5cGVvZiBhPT0ibnVtYmVyIj9hOjApLGM9dS5vbGRfc3RyaW5nfHwiIixmPXUubmV3X3N0cmluZ3x8dS5jb250ZW50fHwiIixkPXUub2xkX2NvbnRlbnR8fCIiLHY9dS5uZXdfY29udGVudHx8IiIsZz1yPT09IldyaXRlInx8cj09PSJNdWx0aUVkaXQiLGg9dCYmdC5pc19lcnJvcixtPWRuKHQmJnQuY29udGVudCksYj0hIShtJiZtLnRyaW0oKS5sZW5ndGg+MCksRj0iIix3PSIiO2c/dz0nPGRpdiBjbGFzcz0iZGlmZi1saW5lIGRpZmYtYWRkIj4rICcrcCh2KSsiPC9kaXY+IjooYyYmKEY9JzxkaXYgY2xhc3M9ImRpZmYtbGluZSBkaWZmLXJlbW92ZSI+LSAnK3AoYykrIjwvZGl2PiIpLGYmJih3PSc8ZGl2IGNsYXNzPSJkaWZmLWxpbmUgZGlmZi1hZGQiPisgJytwKGYpKyI8L2Rpdj4iKSk7dmFyIEU9IiIsQT0iIjt0P2g/KEU9ImRpZmYtZXJyb3IiLEE9bS5pbmRleE9mKCJoYXZlbid0IGdyYW50ZWQiKSE9PS0xfHxtLmluZGV4T2YoInBlcm1pc3Npb24iKSE9PS0xPyJcdTdCNDlcdTVGODVcdTYzODhcdTY3NDMiOiJcdTU5MzFcdThEMjUiKTooRT0iZGlmZi1zdWNjZXNzIixBPSJcdTVERjJcdTRGRUVcdTY1MzkiKTooRT0iZGlmZi1wZW5kaW5nIixBPSJcdTYyNjdcdTg4NENcdTRFMkQiKTt2YXIgeD1KdCgiZGlmZiIsW2ksbHx8YSxhXSksST1ydCh4KSxqPXhuKCJlZGl0Q2FyZHMiKSxWPUk9PT1udWxsP0U9PT0iZGlmZi1wZW5kaW5nInx8ajpJLEc9Vj8iIjoiIGNvbGxhcHNlZCIsTD1GJiZ3LEI9TD8iZGlmZi1jb2wtaGFsZiI6ImRpZmYtY29sLWZ1bGwiO3JldHVybic8ZGl2IGNsYXNzPSJpbmxpbmUtZGlmZicrRysnIiBkYXRhLXRvb2wtbmFtZT0iJytwKHIpKyciIGRhdGEtZXhwYW5kLWtpbmQ9ImRpZmYiIGRhdGEtZXhwYW5kLWtleT0iJytwKHgpKyciIGRhdGEtdG9vbC11c2UtaWQ9IicrcChsKSsnIj48ZGl2IGNsYXNzPSJkaWZmLWhlYWRlciIgb25jbGljaz0iX190Y1RvZ2dsZShldmVudCx0aGlzKSI+PHNwYW4gY2xhc3M9ImRpZmYtZmlsZS1pY29uIj48L3NwYW4+PHNwYW4gY2xhc3M9ImRpZmYtZmlsZS1uYW1lIj4nK3AobykrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZGlmZi1wYXRoIj4nK3AocykrJzwvc3Bhbj48c3BhbiBjbGFzcz0iZGlmZi1zdGF0dXMgJytFKyciPicrQSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJkaWZmLXRvZ2dsZSI+XHUyNUJDPC9zcGFuPjwvZGl2PjxkaXYgY2xhc3M9ImRpZmYtYm9keSI+PGRpdiBjbGFzcz0iZGlmZi1jb2x1bW5zIj4nKyhMPyc8ZGl2IGNsYXNzPSJkaWZmLWNvbCAnK0IrJyI+PGRpdiBjbGFzcz0iZGlmZi1jb2wtbGFiZWwiPlx1NjVFNzwvZGl2PicrRisiPC9kaXY+IjoiIikrJzxkaXYgY2xhc3M9ImRpZmYtY29sICcrQisnIj48ZGl2IGNsYXNzPSJkaWZmLWNvbC1sYWJlbCI+JysoTD8iXHU2NUIwIjoiIikrIjwvZGl2PiIrKHd8fEYpKyI8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIHhvKGUsdCl7cmV0dXJuIGU/JzxwcmUgY2xhc3M9ImlubGluZS10b29sLXJlc3VsdC10ZXh0IiBzdHlsZT0ibWF4LWhlaWdodDogMzAwcHg7IG92ZXJmbG93LXk6IGF1dG87Ij4nK3AoZSkrIjwvcHJlPiI6JzxzcGFuIGNsYXNzPSJpbmxpbmUtdG9vbC1lbXB0eSI+XHU2NUUwXHU4RjkzXHU1MUZBPC9zcGFuPid9ZnVuY3Rpb24gZnYoZSx0LHIsaSl7dmFyIGE9ZS5uYW1lfHwidW5rbm93biIsdT1lLmlkfHwidG9vbC0iK2ErIi0iKyh0eXBlb2Ygcj09Im51bWJlciI/cjowKSxzPXZ2KGEsZS5pbnB1dCk7aWYoYT09PSJSZWFkInx8YT09PSJHbG9iInx8YT09PSJHcmVwInx8YT09PSJXZWJGZXRjaCJ8fGE9PT0iV2ViU2VhcmNoInx8YT09PSJUb2RvUmVhZCIpcmV0dXJuIGx2KGUsdCxhLHMsIiIsaSxyKTtpZihhPT09IkJhc2giKXJldHVybiBjdihlLHQsYSxpLHIpO2lmKGE9PT0iRWRpdCJ8fGE9PT0iV3JpdGUifHxhPT09Ik11bHRpRWRpdCIpcmV0dXJuIGR2KGUsdCxhLGkscik7aWYoYT09PSJBc2tVc2VyUXVlc3Rpb24iJiZlLmlucHV0JiZlLmlucHV0LnF1ZXN0aW9ucyl7dmFyIG89ZS5pbnB1dC5xdWVzdGlvbnM7aWYobyYmby5sZW5ndGg+MCl7Zm9yKHZhciBsPSEhdCxjPW4uYXNrVXNlclNlbGVjdGlvbnNbdV18fHt9LGY9ISFjLnN1Ym1pdHRlZCxkPWw/ZG4odC5jb250ZW50KToiIix2PWQ/ZC50cmltKCkuc3BsaXQoYApgKTpbXSxnPSIiLGg9MDtoPG8ubGVuZ3RoO2grKylpZihvW2hdLmhlYWRlcil7Zz1vW2hdLmhlYWRlcjticmVha312YXIgbT1nPyc8c3BhbiBjbGFzcz0idG9vbC11c2Utc3VtbWFyeSI+JytwKGcpKyI8L3NwYW4+IjoiIixiPSIiO28uZm9yRWFjaChmdW5jdGlvbihQLHope3ZhciBpZT0hIVAubXVsdGlTZWxlY3QsVGU9UC5xdWVzdGlvbj8nPGRpdiBjbGFzcz0iYXNrLXVzZXItdGl0bGUiPicrcChQLnF1ZXN0aW9uKSsiPC9kaXY+IjoiIixjZT0iIjtQLm9wdGlvbnMmJlAub3B0aW9ucy5sZW5ndGg+MCYmKGNlPSc8ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb25zIiBkYXRhLW11bHRpLXNlbGVjdD0iJytpZSsnIj4nLFAub3B0aW9ucy5mb3JFYWNoKGZ1bmN0aW9uKGFlLGtlKXt2YXIgcHQ9YWUubGFiZWw/cChhZS5sYWJlbCk6Ilx1OTAwOVx1OTg3OSAiKyhrZSsxKSxzdD1hZS5kZXNjcmlwdGlvbj8nPGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWRlc2MiPicrcChhZS5kZXNjcmlwdGlvbikrIjwvZGl2PiI6IiI7aWYobCl7dmFyIEF0PXZbel18fHZbMF18fCIiLFVlPUF0LnNwbGl0KCIsIikubWFwKGZ1bmN0aW9uKFllKXtyZXR1cm4gWWUudHJpbSgpfSksb3Q9VWUuaW5kZXhPZihhZS5sYWJlbHx8IiIpIT09LTE7Y2UrPSc8ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24gYXNrLXVzZXItb3B0aW9uLXJlYWRvbmx5Jysob3Q/IiBhc2stdXNlci1vcHRpb24tY2hvc2VuIjoiIikrJyI+PHNwYW4gY2xhc3M9ImFzay11c2VyLWluZGljYXRvciI+PC9zcGFuPjxkaXYgY2xhc3M9ImFzay11c2VyLW9wdGlvbi1jb250ZW50Ij48ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24tbGFiZWwiPicrcHQrIjwvZGl2PiIrc3QrIjwvZGl2PjwvZGl2PiJ9ZWxzZXt2YXIgS2U9KGNbel18fFtdKS5pbmRleE9mKGtlKSE9PS0xLHh0PWY/IiBkaXNhYmxlZCI6IiI7Y2UrPSc8YnV0dG9uIGNsYXNzPSJhc2stdXNlci1vcHRpb24nKyhLZT8iIHNlbGVjdGVkIjoiIikrJyIgZGF0YS1vcHRpb24taW5kZXg9Iicra2UrJyIgZGF0YS1xdWVzdGlvbi1pbmRleD0iJyt6KyciIGRhdGEtb3B0aW9uLWxhYmVsPSInK3AoYWUubGFiZWx8fCJcdTkwMDlcdTk4NzkgIisoa2UrMSkpK2AiIG9uY2xpY2s9Il9fYXNrU2VsZWN0KCdgK3AodSkrIicsIit6KyIsIitrZSsiLCIraWUrJykiJyt4dCsnPjxzcGFuIGNsYXNzPSJhc2stdXNlci1pbmRpY2F0b3IiPjwvc3Bhbj48ZGl2IGNsYXNzPSJhc2stdXNlci1vcHRpb24tY29udGVudCI+PGRpdiBjbGFzcz0iYXNrLXVzZXItb3B0aW9uLWxhYmVsIj4nK3B0KyI8L2Rpdj4iK3N0KyI8L2Rpdj48L2J1dHRvbj4ifX0pLGNlKz0iPC9kaXY+IiksYis9JzxkaXYgY2xhc3M9ImFzay11c2VyLXF1ZXN0aW9uLWdyb3VwIiBkYXRhLXF1ZXN0aW9uLWluZGV4PSInK3orJyI+JytUZStjZSsiPC9kaXY+In0pO3ZhciBGPSIiO2lmKCFsKXtmb3IodmFyIHc9ITAsRT0wO0U8by5sZW5ndGg7RSsrKWlmKCFjW0VdfHxjW0VdLmxlbmd0aD09PTApe3c9ITE7YnJlYWt9dmFyIEE9IXd8fGY/IiBkaXNhYmxlZCI6IiIseD1mPyIgYXNrLXVzZXItc3VibWl0dGVkIjoiIixJPWY/Ilx1NURGMlx1NjNEMFx1NEVBNC4uLiI6Ilx1Nzg2RVx1OEJBNFx1NjNEMFx1NEVBNCI7Rj0nPGRpdiBjbGFzcz0iYXNrLXVzZXItYWN0aW9ucyI+PGJ1dHRvbiBjbGFzcz0iYXNrLXVzZXItc3VibWl0Jyt4KyciIGRhdGEtdG9vbC11c2UtaWQ9IicrcCh1KStgIiBvbmNsaWNrPSJfX2Fza1N1Ym1pdCgnYCtwKHUpK2AnKSJgK0ErIj4iK0krIjwvYnV0dG9uPjwvZGl2PiJ9dmFyIGo9IiI7aWYobCYmZCl7dmFyIFY9ZC50cmltKCkucmVwbGFjZSgvXG4vZywiLCAiKTtWLmxlbmd0aD40MCYmKFY9Vi5zbGljZSgwLDM3KSsiLi4uIiksaj0nPHNwYW4gY2xhc3M9InRvb2wtdXNlLWZpbGUiPicrcChWKSsiPC9zcGFuPiJ9dmFyIEc9SnQoInRvb2wtY2FyZCIsW2ksdV0pLEw9cnQoRyksQj1MPT09bnVsbD8hbDpMLFQ9Qj8iIjoiIGNvbGxhcHNlZCIsTT1sPyIgYXNrLXVzZXItYW5zd2VyZWQiOiIiO3JldHVybic8ZGl2IGNsYXNzPSJ0b29sLXVzZS1jYXJkIGFzay11c2VyJytNK1QrJyIgZGF0YS10b29sLXVzZS1pZD0iJytwKHUpKyciIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtY2FyZCIgZGF0YS1leHBhbmQta2V5PSInK3AoRykrJyI+PGRpdiBjbGFzcz0idG9vbC11c2UtaGVhZGVyIiBkYXRhLXRvb2wtdG9nZ2xlIG9uY2xpY2s9Il9fdGNUb2dnbGUoZXZlbnQsdGhpcykiPjxzcGFuIGNsYXNzPSJ0b29sLXVzZS1pY29uIj4nKyhsPyJcdTI3MTMiOiI/IikrJzwvc3Bhbj48c3BhbiBjbGFzcz0idG9vbC11c2UtbmFtZSI+XHU2M0QwXHU5NUVFPC9zcGFuPicrbStqKyc8c3BhbiBjbGFzcz0idG9vbC11c2UtdG9nZ2xlIj5cdTI1QkM8L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0idG9vbC11c2UtYm9keSBhc2stdXNlci1ib2R5Ij4nK2IrRisiPC9kaXY+PC9kaXY+In19dmFyIEg9ZS5kZXNjcmlwdGlvbnx8ZS5pbnB1dCYmZS5pbnB1dC5kZXNjcmlwdGlvbnx8IiIsJD1wdihlLm5hbWUsZS5pbnB1dCksbmU9IiIsUT0iIjtIPyhuZT1ILmxlbmd0aD44MD9ILnNsaWNlKDAsNzcpKyIuLi4iOkgscyYmKFE9JzxzcGFuIGNsYXNzPSJ0b29sLXVzZS1maWxlIj4nK3AocykrIjwvc3Bhbj4iKSk6KG5lPU5hKGEpLHMmJihRPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtZmlsZSI+JytwKHMpKyI8L3NwYW4+IiksJCYmKFErPSc8c3BhbiBjbGFzcz0idG9vbC11c2Utc3VtbWFyeSI+JytwKCQpKyI8L3NwYW4+IikpO3ZhciBzZT1lLmlucHV0P0pTT04uc3RyaW5naWZ5KGUuaW5wdXQsbnVsbCwyKToie30iLGVlPSJsb2FkaW5nIixTPSc8c3BhbiBjbGFzcz0idG9vbC11c2Utc3Bpbm5lciI+PC9zcGFuPicsTj0iIjtpZih0KXt2YXIgVz10LmlzX2Vycm9yLEo9ZG4odC5jb250ZW50KTtlZT1XPyJlcnJvciI6InN1Y2Nlc3MiLFM9U28oYSk7dmFyIFU9SiYmSi50cmltKCkubGVuZ3RoPjA7VT9OPSc8cHJlIGNsYXNzPSJ0b29sLXVzZS1yZXN1bHQtY29udGVudCI+JytwKEopKyI8L3ByZT4iOk49JzxzcGFuIGNsYXNzPSJ0b29sLXVzZS1yZXN1bHQtZW1wdHkiPlx1NjVFMFx1OEY5M1x1NTFGQTwvc3Bhbj4nfWVsc2UgUz1TbyhhKTt2YXIgWD1KdCgidG9vbC1jYXJkIixbaSx1XSksb2U9cnQoWCksbGU9eG4oImVkaXRDYXJkcyIpLHJlPW9lPT09bnVsbD9lZT09PSJsb2FkaW5nInx8bGU6b2UsQmU9dCYmdC5fdHJ1bmNhdGVkPT09ITAsRGU9cmU/IiI6IiBjb2xsYXBzZWQiLGJlPSc8c3BhbiBjbGFzcz0idG9vbC11c2UtdG9nZ2xlIj5cdTI1QkM8L3NwYW4+JztyZXR1cm4nPGRpdiBjbGFzcz0idG9vbC11c2UtY2FyZCAnK2VlK0RlKyciIGRhdGEtZXhwYW5kLWtpbmQ9InRvb2wtY2FyZCIgZGF0YS1leHBhbmQta2V5PSInK3AoWCkrJyIgZGF0YS10b29sLXVzZS1pZD0iJytwKHUpKyciJysoQmU/JyBkYXRhLXRydW5jYXRlZD0idHJ1ZSInOiIiKSsnPjxkaXYgY2xhc3M9InRvb2wtdXNlLWhlYWRlciIgZGF0YS10b29sLXRvZ2dsZSBvbmNsaWNrPSJfX3RjVG9nZ2xlKGV2ZW50LHRoaXMpIj48c3BhbiBjbGFzcz0idG9vbC11c2UtaWNvbiI+JytTKyc8L3NwYW4+PHNwYW4gY2xhc3M9InRvb2wtdXNlLW5hbWUiPicrcChuZSkrIjwvc3Bhbj4iK1ErYmUrJzwvZGl2PjxkaXYgY2xhc3M9InRvb2wtdXNlLWJvZHkiPicrKEg/JzxkaXYgY2xhc3M9InRvb2wtdXNlLW1ldGEiPjxzcGFuIGNsYXNzPSJ0b29sLXVzZS1tZXRhLWxhYmVsIj5cdTVERTVcdTUxNzdcdUZGMUE8L3NwYW4+JytwKGEpKyI8L2Rpdj4iOiIiKSsnPHByZSBjbGFzcz0idG9vbC11c2UtY29udGVudCI+JytwKHNlKSsiPC9wcmU+IisoTj8nPGRpdiBjbGFzcz0idG9vbC11c2UtcmVzdWx0Ij4nK04rIjwvZGl2PiI6IiIpKyI8L2Rpdj48L2Rpdj4ifWZ1bmN0aW9uIE5hKGUpe3ZhciB0PXtSZWFkOiJcdThCRkJcdTUzRDZcdTY1ODdcdTRFRjYiLFdyaXRlOiJcdTUxOTlcdTUxNjVcdTY1ODdcdTRFRjYiLEVkaXQ6Ilx1N0YxNlx1OEY5MVx1NjU4N1x1NEVGNiIsTXVsdGlFZGl0OiJcdTU5MUFcdTU5MDRcdTdGMTZcdThGOTEiLEJhc2g6Ilx1NjI2N1x1ODg0Q1x1NTQ3RFx1NEVFNCIsR3JlcDoiXHU2NDFDXHU3RDIyXHU1MTg1XHU1QkI5IixHbG9iOiJcdTY3RTVcdTYyN0VcdTY1ODdcdTRFRjYiLFdlYkZldGNoOiJcdTgzQjdcdTUzRDZcdTdGNTFcdTk4NzUiLFdlYlNlYXJjaDoiXHU2NDFDXHU3RDIyXHU3RjUxXHU5ODc1IixUYXNrOiJcdTRFRkJcdTUyQTEiLFRvZG9Xcml0ZToiXHU2NkY0XHU2NUIwXHU1Rjg1XHU1MjlFIixUb2RvUmVhZDoiXHU4QkZCXHU1M0Q2XHU1Rjg1XHU1MjlFIixOb3RlYm9va0VkaXQ6Ilx1N0YxNlx1OEY5MVx1N0IxNFx1OEJCMFx1NjcyQyIsQWdlbnQ6Ilx1NUI1MFx1NEVFM1x1NzQwNiIsQXNrVXNlclF1ZXN0aW9uOiJcdTYzRDBcdTk1RUUiLEV4aXQ6Ilx1OTAwMFx1NTFGQSJ9O3JldHVybiB0W2VdfHxlfWZ1bmN0aW9uIFNvKGUpe3ZhciB0PXtSZWFkOiJSIixXcml0ZToiVyIsRWRpdDoiRSIsTXVsdGlFZGl0OiJFIixCYXNoOiIkIixHcmVwOiJHIixHbG9iOiJGIixXZWJGZXRjaDoiXHUyMUUzIixXZWJTZWFyY2g6Ilx1MjFFMiIsVGFzazoiVCIsVG9kb1dyaXRlOiJcdTI2MTAiLFRvZG9SZWFkOiJcdTI2MTEiLE5vdGVib29rRWRpdDoiTiIsQWdlbnQ6IkEiLEV4aXQ6Ilx4RDcifTtyZXR1cm4gdFtlXXx8Ilx4QjcifWZ1bmN0aW9uIHB2KGUsdCl7aWYoIXR8fHR5cGVvZiB0IT0ib2JqZWN0IilyZXR1cm4iIjt2YXIgcj1PYmplY3Qua2V5cyh0KTtpZihyLmxlbmd0aD09PTApcmV0dXJuInt9IjtpZihlPT09IlJlYWQiKXJldHVybiJcdThCRkJcdTUzRDZcdTY1ODdcdTRFRjYiO2lmKGU9PT0iV3JpdGUiKXJldHVybiJcdTUxOTlcdTUxNjVcdTY1ODdcdTRFRjYiO2lmKGU9PT0iRWRpdCIpe3ZhciBpPXQuZWRpdHM/dC5lZGl0cy5sZW5ndGg6MDtyZXR1cm4iXHU3RjE2XHU4RjkxICgiK2krIiBcdTU5MDRcdTRGRUVcdTY1MzkpIn1pZihlPT09IkJhc2giKXt2YXIgYT10LmNvbW1hbmR8fCIiO2lmKGEpe3ZhciB1PWEubGVuZ3RoPjYwP2Euc2xpY2UoMCw2MCkrIi4uLiI6YTtyZXR1cm4iXHU1NDdEXHU0RUU0XHVGRjFBIit1fX1pZihlPT09IkdyZXAiKXt2YXIgcz10LnBhdHRlcm58fCIiLG89dC5wYXRofHwiIjtpZihzKXJldHVybiJcdTY0MUNcdTdEMjJcdUZGMUEiK3MrKG8/IiAoXHU1NzI4ICIrbysiKSI6IiIpfWlmKGU9PT0iR2xvYiIpe3ZhciBzPXQucGF0dGVybnx8IiI7aWYocylyZXR1cm4iXHU2N0U1XHU2MjdFXHVGRjFBIitzfWlmKGU9PT0iQWdlbnQiKXt2YXIgbD10LnByb21wdHx8dC50YXNrfHwiIjtpZihsKXt2YXIgYz1sLmxlbmd0aD40MD9sLnNsaWNlKDAsNDApKyIuLi4iOmw7cmV0dXJuIlx1NEVGQlx1NTJBMVx1RkYxQSIrY319aWYoZT09PSJUYXNrIil7dmFyIGw9dC50YXNrfHx0LmRlc2NyaXB0aW9ufHwiIjtpZihsKXt2YXIgYz1sLmxlbmd0aD40MD9sLnNsaWNlKDAsNDApKyIuLi4iOmw7cmV0dXJuIlx1NEVGQlx1NTJBMVx1RkYxQSIrY319aWYoZT09PSJUb2RvV3JpdGUiKXt2YXIgZj10LnRvZG9zfHxbXTtyZXR1cm4iXHU2NkY0XHU2NUIwXHU1Rjg1XHU1MjlFICgiK2YubGVuZ3RoKyIgXHU5ODc5KSJ9aWYoZT09PSJXZWJTZWFyY2giKXt2YXIgZD10LnF1ZXJ5fHwiIjtpZihkKXJldHVybiJcdTY0MUNcdTdEMjJcdUZGMUEiK2R9dmFyIHY9clswXSxnPXRbdl07aWYodHlwZW9mIGc9PSJzdHJpbmciKXt2YXIgaD1nLmxlbmd0aD41MD9nLnNsaWNlKDAsNTApKyIuLi4iOmc7cmV0dXJuIHYrIjogIitofXJldHVybiByLmxlbmd0aCsiIFx1NEUyQVx1NTNDMlx1NjU3MCJ9ZnVuY3Rpb24gdnYoZSx0KXtpZighdClyZXR1cm4gbnVsbDt2YXIgcj10LmZpbGVfcGF0aHx8dC5wYXRofHx0LmN3ZDtyZXR1cm4gcj9yLmxlbmd0aD41MD8iLi4uIityLnNsaWNlKC00Nyk6cjpudWxsfWZ1bmN0aW9uIG12KGUpe2lmKCFlKXJldHVybiIiO2Zvcih2YXIgdD1gCmAscj1lLnNwbGl0KHQpLGk9W10sYT0hMSx1PTA7dTxyLmxlbmd0aDt1Kyspe3ZhciBzPXJbdV0sbz1zLnRyaW0oKTtpZighKCFhJiYhbykpe2lmKGE9ITAsby5pbmRleE9mKCJcdTIzRkEiKT09PTAmJm8ubGVuZ3RoPjIpe2kucHVzaChvLnNsaWNlKDEpLnRyaW0oKSk7Y29udGludWV9aWYoby5pbmRleE9mKCJcdTI1Q0YiKT09PTApe2lmKG89by5zbGljZSgxKS50cmltKCksIW8pY29udGludWU7cz1vfWkucHVzaChzKX19Zm9yKDtpLmxlbmd0aD4wJiYhaVtpLmxlbmd0aC0xXS50cmltKCk7KWkucG9wKCk7Zm9yKHZhciBsPVtdLGM9e30sZj0wO2Y8aS5sZW5ndGg7ZisrKXt2YXIgZD1pW2ZdLnJlcGxhY2UoL1xzKy9nLCIiKTtkLmxlbmd0aD41JiZjW2RdfHwoZC5sZW5ndGg+NSYmKGNbZF09ITApLGwucHVzaChpW2ZdKSl9cmV0dXJuIGwuam9pbih0KX1mdW5jdGlvbiBJbyhlKXt2YXIgdD1gCmAscj1lLnNwbGl0KHQpLGk9W10sYT0wO2Z1bmN0aW9uIHUobSl7dmFyIGI9bS50cmltKCk7cmV0dXJuIGIuY2hhckF0KDApPT09InwiJiYoYj1iLnNsaWNlKDEpKSxiLmNoYXJBdChiLmxlbmd0aC0xKT09PSJ8IiYmKGI9Yi5zbGljZSgwLC0xKSksYi5zcGxpdCgifCIpfWZ1bmN0aW9uIHMobSl7cmV0dXJuIG0/JyBzdHlsZT0idGV4dC1hbGlnbjonK20rJyInOiIifWZ1bmN0aW9uIG8obSxiLEYpe3ZhciB3PSI8dGhlYWQ+PHRyPiIrbS5tYXAoZnVuY3Rpb24oQSx4KXtyZXR1cm4iPHRoIitzKGJbeF0pKyI+IitBLnRyaW0oKSsiPC90aD4ifSkuam9pbigiIikrIjwvdHI+PC90aGVhZD4iLEU9Ri5sZW5ndGg/Ijx0Ym9keT4iK0YubWFwKGZ1bmN0aW9uKEEpe3JldHVybiI8dHI+IitBLm1hcChmdW5jdGlvbih4LEkpe3JldHVybiI8dGQiK3MoYltJXSkrIj4iK3gudHJpbSgpKyI8L3RkPiJ9KS5qb2luKCIiKSsiPC90cj4ifSkuam9pbigiIikrIjwvdGJvZHk+IjoiIjtyZXR1cm4nPGRpdiBjbGFzcz0ibWQtdGFibGUtd3JhcCI+PHRhYmxlIGNsYXNzPSJtZC10YWJsZSI+Jyt3K0UrIjwvdGFibGU+PC9kaXY+In1mb3IoO2E8ci5sZW5ndGg7KXt2YXIgbD1yW2FdO2lmKGwuaW5kZXhPZigifCIpIT09LTEmJmErMTxyLmxlbmd0aCl7dmFyIGM9clthKzFdLnRyaW0oKTtpZigvXlx8P1xzKjo/LSs6PyhccypcfFxzKjo/LSs6PykrXHMqXHw/JC8udGVzdChjKSl7Zm9yKHZhciBmPXUobCksZD11KGMpLm1hcChmdW5jdGlvbihtKXt2YXIgYj1tLnRyaW0oKSxGPWIuY2hhckF0KDApPT09IjoiLHc9Yi5jaGFyQXQoYi5sZW5ndGgtMSk9PT0iOiI7cmV0dXJuIEYmJnc/ImNlbnRlciI6dz8icmlnaHQiOkY/ImxlZnQiOiIifSksdj1bXSxnPWErMjtnPHIubGVuZ3RoOyl7dmFyIGg9cltnXS50cmltKCk7aWYoIWh8fGguaW5kZXhPZigifCIpPT09LTEpYnJlYWs7di5wdXNoKHUocltnXSkpLGcrPTF9aS5wdXNoKCIiLG8oZixkLHYpLCIiKSxhPWc7Y29udGludWV9fWkucHVzaChsKSxhKz0xfXJldHVybiBpLmpvaW4odCl9ZnVuY3Rpb24gamEoZSl7aWYoIWUpcmV0dXJuIiI7dmFyIHQ9cChlKSxyPSJgIixpPWAKYDtmdW5jdGlvbiBhKFMsTixXLEope2Zvcih2YXIgVT0wOzspe3ZhciBYPVMuaW5kZXhPZihOLFUpO2lmKFg9PT0tMSlicmVhazt2YXIgb2U9Uy5pbmRleE9mKE4sWCtOLmxlbmd0aCk7aWYob2U9PT0tMSlicmVhazt2YXIgbGU9Uy5zbGljZShYK04ubGVuZ3RoLG9lKTtpZighbGUpe1U9b2UrTi5sZW5ndGg7Y29udGludWV9dmFyIHJlPVcrbGUrSjtTPVMuc2xpY2UoMCxYKStyZStTLnNsaWNlKG9lK04ubGVuZ3RoKSxVPVgrcmUubGVuZ3RofXJldHVybiBTfWZ1bmN0aW9uIHUoUyl7cmV0dXJuIFM+PTQ4JiZTPD01N3x8Uz49NjUmJlM8PTkwfHxTPj05NyYmUzw9MTIyfHxTPT09OTV9ZnVuY3Rpb24gcyhTLE4sVyl7Zm9yKHZhciBKPTA7SjxTLmxlbmd0aDspe3ZhciBVPVMuaW5kZXhPZigiXyIsSik7aWYoVT09PS0xKWJyZWFrO3ZhciBYPVU+MD9TLmNoYXJDb2RlQXQoVS0xKTowO2lmKHUoWCkpe0o9VSsxO2NvbnRpbnVlfWZvcih2YXIgb2U9VSsxLGxlPS0xO29lPFMubGVuZ3RoOyl7dmFyIHJlPVMuaW5kZXhPZigiXyIsb2UpO2lmKHJlPT09LTEpYnJlYWs7dmFyIEJlPXJlKzEsRGU9QmU8Uy5sZW5ndGg/Uy5jaGFyQ29kZUF0KEJlKTowO2lmKCF1KERlKSl7bGU9cmU7YnJlYWt9b2U9cmUrMX1pZihsZT09PS0xKWJyZWFrO3ZhciBiZT1TLnNsaWNlKFUrMSxsZSk7aWYoIWJlKXtKPWxlKzE7Y29udGludWV9dmFyIFA9TitiZStXO1M9Uy5zbGljZSgwLFUpK1ArUy5zbGljZShsZSsxKSxKPVUrUC5sZW5ndGh9cmV0dXJuIFN9ZnVuY3Rpb24gbyhTLE4sVyxKKXtyZXR1cm4gUy5zcGxpdChpKS5tYXAoZnVuY3Rpb24oVSl7cmV0dXJuIFUuaW5kZXhPZihOKSE9PTA/VTpXK1Uuc2xpY2UoTi5sZW5ndGgpK0p9KS5qb2luKGkpfWZ1bmN0aW9uIGwoUyl7cmV0dXJuIFMuc3BsaXQoaSkubWFwKGZ1bmN0aW9uKE4pe3ZhciBXPU4uaW5kZXhPZigiLiAiKTtpZihXPD0wKXJldHVybiBOO2Zvcih2YXIgSj0wO0o8VztKKz0xKXt2YXIgVT1OLmNoYXJDb2RlQXQoSik7aWYoVTw0OHx8VT41NylyZXR1cm4gTn1yZXR1cm4iPGxpPiIrTi5zbGljZShXKzIpKyI8L2xpPiJ9KS5qb2luKGkpfWZ1bmN0aW9uIGMoUyl7cmV0dXJuIFMuc3BsaXQoaStpKS5tYXAoZnVuY3Rpb24oTil7dmFyIFc9Ti50cmltKCk7cmV0dXJuIFc/Vy5pbmRleE9mKCI8ZGl2Iik9PT0wfHxXLmluZGV4T2YoIjxoMSIpPT09MHx8Vy5pbmRleE9mKCI8aDIiKT09PTB8fFcuaW5kZXhPZigiPGgzIik9PT0wfHxXLmluZGV4T2YoIjxoNCIpPT09MHx8Vy5pbmRleE9mKCI8aDUiKT09PTB8fFcuaW5kZXhPZigiPGg2Iik9PT0wfHxXLmluZGV4T2YoIjx1bCIpPT09MHx8Vy5pbmRleE9mKCI8b2wiKT09PTB8fFcuaW5kZXhPZigiPGxpIik9PT0wfHxXLmluZGV4T2YoIjxibG9ja3F1b3RlIik9PT0wfHxXLmluZGV4T2YoIjxwcmUiKT09PTA/VzoiPHA+IitXLnNwbGl0KGkpLmpvaW4oIjxicj4iKSsiPC9wPiI6IiJ9KS5qb2luKCIiKX1mb3IodmFyIGY9MDs7KXt2YXIgZD10LmluZGV4T2YocityK3IsZik7aWYoZD09PS0xKWJyZWFrO3ZhciB2PXQuaW5kZXhPZihyK3IrcixkKzMpO2lmKHY9PT0tMSlicmVhazt2YXIgZz10LnNsaWNlKGQrMyx2KSxoPWcuaW5kZXhPZihpKSxtPSIiLGI9ZztpZihoIT09LTEmJmg8MzApe2Zvcih2YXIgRj1nLnNsaWNlKDAsaCkudHJpbSgpLHc9Ri5sZW5ndGg+MCxFPTA7RTxGLmxlbmd0aDtFKz0xKXt2YXIgQT1GLmNoYXJDb2RlQXQoRSkseD1BPj00OCYmQTw9NTcsST1BPj02NSYmQTw9OTAsaj1BPj05NyYmQTw9MTIyO2lmKCF4JiYhSSYmIWope3c9ITE7YnJlYWt9fXcmJihtPUYsYj1nLnNsaWNlKGgrMSkpfXZhciBWPWd2KGIudHJpbSgpLG0pLEc9Vi5yZXBsYWNlKC9fL2csIiYjOTU7IikucmVwbGFjZSgvXCovZywiJiM0MjsiKSxMPSc8ZGl2IGNsYXNzPSJjb2RlLWJsb2NrIj48ZGl2IGNsYXNzPSJjb2RlLWJsb2NrLWhlYWRlciI+PHNwYW4gY2xhc3M9ImNvZGUtbGFuZyI+JysobXx8ImNvZGUiKSsnPC9zcGFuPjxidXR0b24gY2xhc3M9ImNvZGUtY29weSI+Q29weTwvYnV0dG9uPjwvZGl2PjxwcmU+PGNvZGU+JytHKyI8L2NvZGU+PC9wcmU+PC9kaXY+Ijt0PXQuc2xpY2UoMCxkKStMK3Quc2xpY2UodiszKSxmPWQrTC5sZW5ndGh9Zm9yKGY9MDs7KXt2YXIgQj10LmluZGV4T2YocixmKTtpZihCPT09LTEpYnJlYWs7dmFyIFQ9dC5pbmRleE9mKHIsQisxKTtpZihUPT09LTEpYnJlYWs7aWYoVD09PUIrMSl7Zj1UKzE7Y29udGludWV9dmFyIE09dC5zbGljZShCKzEsVCksSD1NLnJlcGxhY2UoL18vZywiJiM5NTsiKS5yZXBsYWNlKC9cKi9nLCImIzQyOyIpLCQ9Jzxjb2RlIGNsYXNzPSJjb2RlLWlubGluZSI+JytIKyI8L2NvZGU+Ijt0PXQuc2xpY2UoMCxCKSskK3Quc2xpY2UoVCsxKSxmPUIrJC5sZW5ndGh9dD1hKHQsIioqIiwiPHN0cm9uZz4iLCI8L3N0cm9uZz4iKSx0PWEodCwiKiIsIjxlbT4iLCI8L2VtPiIpLHQ9cyh0LCI8ZW0+IiwiPC9lbT4iKSx0PW8odCwiIyMjICIsIjxoMz4iLCI8L2gzPiIpLHQ9byh0LCIjIyAiLCI8aDI+IiwiPC9oMj4iKSx0PW8odCwiIyAiLCI8aDE+IiwiPC9oMT4iKSx0PW8odCwiJmd0OyAiLCI8YmxvY2txdW90ZT4iLCI8L2Jsb2NrcXVvdGU+IiksdD1vKHQsIi0gIiwiPGxpPiIsIjwvbGk+IiksdD1vKHQsIiogIiwiPGxpPiIsIjwvbGk+IiksdD1sKHQpLHQ9SW8odCk7dmFyIG5lPXQuc3BsaXQoaSksUT1bXSxzZT1bXTtmdW5jdGlvbiBlZSgpe3NlLmxlbmd0aCYmKFEucHVzaCgiPHVsPiIrc2Uuam9pbigiIikrIjwvdWw+Iiksc2U9W10pfXJldHVybiBuZS5mb3JFYWNoKGZ1bmN0aW9uKFMpe2lmKFMuaW5kZXhPZigiPGxpPiIpPT09MCYmUy5sYXN0SW5kZXhPZigiPC9saT4iKT09PVMubGVuZ3RoLTUpe3NlLnB1c2goUyk7cmV0dXJufWVlKCksUS5wdXNoKFMpfSksZWUoKSx0PWMoUS5qb2luKGkpKSwnPGRpdiBjbGFzcz0ibWFya2Rvd24tY29udGVudCI+Jyt0KyI8L2Rpdj4ifWZ1bmN0aW9uIGd2KGUsdCl7cmV0dXJuIGU9ZS5yZXBsYWNlKC8mL2csIiZhbXA7IikucmVwbGFjZSgvPC9nLCImbHQ7IikucmVwbGFjZSgvPi9nLCImZ3Q7IiksZX1mdW5jdGlvbiBJcihlKXt2YXIgdD1TdHJpbmcoZXx8IiIpLnRyaW0oKTtyZXR1cm4gdC5sZW5ndGg8PTI0P3R8fCJcdTY3MkFcdTkwMDlcdTYyRTlcdTRGMUFcdThCREQiOnQuc2xpY2UoMCwyMSkrIi4uLiJ9ZnVuY3Rpb24gUmEoZSl7cmV0dXJuIFN0cmluZyhlfHwiIikucmVwbGFjZSgvXHJcclxuL2csYFxyCmApLnJlcGxhY2UoL1x1MDAwMC9nLCIiKX1mdW5jdGlvbiBXYSgpe2lmKCFuLmxvZ2luUGVuZGluZyl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhc3N3b3JkIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tYnV0dG9uIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibG9naW4tZXJyb3IiKTshZXx8IXR8fCFyfHwoc2kociksZS5kYXRhc2V0LmVycm9yPSJmYWxzZSIsZS5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsImZhbHNlIiksbi5sb2dpblBlbmRpbmc9ITAsdC5kaXNhYmxlZD0hMCx0LnRleHRDb250ZW50PSJcdTc2N0JcdTVGNTVcdTRFMkQuLi4iLGZldGNoKCIvYXBpL2xvZ2luIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3Bhc3N3b3JkOmUudmFsdWV9KSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5vaz9mZXRjaCgiL2FwaS9jb25maWciLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSk6KGUuZGF0YXNldC5lcnJvcj0idHJ1ZSIsZS5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsInRydWUiKSx6ZShyLCJcdTVCQzZcdTc4MDFcdTk1MTlcdThCRUZcdUZGMENcdThCRjdcdTkxQ0RcdThCRDVcdTMwMDIiKSxQcm9taXNlLnJlamVjdCgiSW52YWxpZCBwYXNzd29yZCIpKX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtuLmNvbmZpZz1pO3ZhciBhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzdGF0dXMtZG90IiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic3RhdHVzLXRleHQiKTtyZXR1cm4gYSYmYS5jbGFzc0xpc3QuYWRkKCJhY3RpdmUiKSx1JiYodS50ZXh0Q29udGVudD0iXHU1REYyXHU3NjdCXHU1RjU1IiksUnQoKX0pLnRoZW4oZnVuY3Rpb24oKXtlcygpLCR0KCl9KS5jYXRjaChmdW5jdGlvbihpKXtjb25zb2xlLmVycm9yKCJbd2FuZF0gTG9naW4gZXJyb3I6IixpKSxpIT09IkludmFsaWQgcGFzc3dvcmQiJiYoZS5kYXRhc2V0LmVycm9yPSJ0cnVlIixlLnNldEF0dHJpYnV0ZSgiYXJpYS1pbnZhbGlkIiwidHJ1ZSIpLHplKHIsIlx1NzY3Qlx1NUY1NVx1NTkzMVx1OEQyNVx1RkYwQ1x1OEJGN1x1OTFDRFx1OEJENVx1MzAwMiIpKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtuLmxvZ2luUGVuZGluZz0hMSx0LmRpc2FibGVkPSExLHQudGV4dENvbnRlbnQ9Ilx1OEZEQlx1NTE2NVx1NjNBN1x1NTIzNlx1NTNGMCJ9KSl9fWZ1bmN0aW9uIHphKCl7cmV0dXJuIHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuc3dpdGNoU2VydmVyPT0iZnVuY3Rpb24ifWZ1bmN0aW9uIFRvKCl7aWYoemEoKSl0cnl7V2FuZE5hdGl2ZS5zd2l0Y2hTZXJ2ZXIoKX1jYXRjaHt9fWZ1bmN0aW9uIGh2KCl7cmV0dXJuIHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuYmFja1RvTmF0aXZlPT0iZnVuY3Rpb24iPyEwOnR5cGVvZiB3aW5kb3cuX193YW5kQmFja1RvTmF0aXZlPT0iZnVuY3Rpb24ifWZ1bmN0aW9uIHl2KCl7dHJ5e2lmKHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuYmFja1RvTmF0aXZlPT0iZnVuY3Rpb24iKXtXYW5kTmF0aXZlLmJhY2tUb05hdGl2ZSgpO3JldHVybn10eXBlb2Ygd2luZG93Ll9fd2FuZEJhY2tUb05hdGl2ZT09ImZ1bmN0aW9uIiYmd2luZG93Ll9fd2FuZEJhY2tUb05hdGl2ZSgpfWNhdGNoe319ZnVuY3Rpb24gTG8oKXtmZXRjaCgiL2FwaS9sb2dvdXQiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS5jYXRjaChmdW5jdGlvbigpe30pLHVzKCksVG4oITEpLEJhKCksZ3IoKSxuLmNvbmZpZz1udWxsLG4uc2VsZWN0ZWRJZD1udWxsLHllKCksbi5zZXNzaW9ucz1bXSxuLmNsYXVkZUhpc3Rvcnk9W10sbi5jbGF1ZGVIaXN0b3J5TG9hZGVkPSExLG4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkPSExLG4uY2xhdWRlSGlzdG9yeUV4cGFuZGVkRGlycz17fSxuLnNlc3Npb25zRHJhd2VyT3Blbj0hMSxTZSgid2FuZC1zaWRlYmFyLW9wZW4iLCExKSwkdCgpfWZ1bmN0aW9uIFJ0KCl7cmV0dXJuIHBuKCl9ZnVuY3Rpb24gYnYoZSl7cmV0dXJuIGU9PT0iZnVsbC1hY2Nlc3MiPyJcdTUxNjhcdTY3NDNcdTk2NTAiOmU9PT0iZGVmYXVsdCI/Ilx1OUVEOFx1OEJBNCI6ZT09PSJuYXRpdmUiPyJcdTUzOUZcdTc1MUYiOmU9PT0iYXV0by1lZGl0Ij8iXHU4MUVBXHU1MkE4XHU3RjE2XHU4RjkxIjplPT09Im1hbmFnZWQiPyJcdTYyNThcdTdCQTEiOmV9ZnVuY3Rpb24gaHQoKXtyZXR1cm4gbi5zZXNzaW9uVG9vbHx8bi5wcmVmZXJyZWRDb21tYW5kfHwiY2xhdWRlIn1mdW5jdGlvbiBFdigpe3ZhciBlPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbih0KXtyZXR1cm4gdC5pZD09PW4uc2VsZWN0ZWRJZH0pO3JldHVybiBlJiZlLnByb3ZpZGVyfHxuLnByZWZlcnJlZENvbW1hbmR8fCJjbGF1ZGUifWZ1bmN0aW9uIE1vKGUsdCl7cmV0dXJuIHQ/Ilx1OTUyRVx1NzZEOFx1OEY5M1x1NTE2NVx1NUMwNlx1NTNEMVx1OTAwMVx1NTIzMFx1N0VDOFx1N0FFRiI6ZSYmKGUuc3RhdHVzPT09ImV4aXRlZCJ8fGUuc3RhdHVzPT09ImZhaWxlZCJ8fGUuc3RhdHVzPT09InN0b3BwZWQiKT9FYShlKT8iXHU4RjkzXHU1MTY1XHU2RDg4XHU2MDZGXHU0RUU1XHU3RUU3XHU3RUVEXHU0RjFBXHU4QkREIjoiXHU0RjFBXHU4QkREXHU1REYyXHU3RUQzXHU2NzVGIjp1ZShlKSYmZS5zdHJ1Y3R1cmVkU3RhdGUmJmUuc3RydWN0dXJlZFN0YXRlLmluRmxpZ2h0PyJcdTU2REVcdTU5MERcdTRFMkRcdUZGMENcdTUzRUZcdTdFRTdcdTdFRURcdThGOTNcdTUxNjUiOiJcdThGOTNcdTUxNjVcdTZEODhcdTYwNkYifWZ1bmN0aW9uIE9vKGUsdCl7cmV0dXJuIGU9PT0iY29kZXgiPyJDb2RleCBcdTY1MkZcdTYzMDEgUFRZIFx1N0VDOFx1N0FFRlx1NEUwRVx1N0VEM1x1Njc4NFx1NTMxNlx1RkYwOEpTT05MXHVGRjA5XHU0RTI0XHU3OUNEXHU0RjFBXHU4QkREXHVGRjBDXHU3RUQzXHU2Nzg0XHU1MzE2XHU2QTIxXHU1RjBGXHU2MzA5IGZ1bGwtYWNjZXNzIFx1NTQyRlx1NTJBOFx1MzAwMiI6dD09PSJmdWxsLWFjY2VzcyI/Ilx1ODFFQVx1NTJBOFx1Nzg2RVx1OEJBNFx1Njc0M1x1OTY1MFx1OEJGN1x1NkM0Mlx1NEUwRVx1OUFEOFx1Njc0M1x1OTY1MFx1NjRDRFx1NEY1Q1x1RkYwQ1x1OTAwMlx1NTQwOFx1NEY2MFx1Nzg2RVx1OEJBNFx1NzNBRlx1NTg4M1x1NUI4OVx1NTE2OFx1NTQwRVx1NzY4NFx1OEZERVx1N0VFRFx1NEZFRVx1NjUzOVx1MzAwMiI6dD09PSJhdXRvLWVkaXQiPyJcdTRGRERcdTc1NTlcdTRFQTRcdTRFOTJcdTVGMEZcdTRGMUFcdThCRERcdUZGMENcdTU0MENcdTY1RjZcdTY2RjRcdTUwNEZcdTU0MTFcdTc2RjRcdTYzQTVcdTdGMTZcdThGOTFcdTRFRTNcdTc4MDFcdTMwMDIiOnQ9PT0ibmF0aXZlIj8iXHU4QzAzXHU3NTI4IENsYXVkZSBcdTUzOUZcdTc1MUYgQVBJIFx1OEY5M1x1NTFGQVx1RkYwQ1x1OTAwMlx1NTQwOFx1NUZFQlx1OTAxRlx1OTVFRVx1N0I1NFx1NjIxNlx1NEUwMFx1NkIyMVx1NjAyN1x1NzUxRlx1NjIxMFx1MzAwMiI6dD09PSJtYW5hZ2VkIj8iQUkgXHU4MUVBXHU1MkE4XHU1QjhDXHU2MjEwXHU2MjQwXHU2NzA5XHU1REU1XHU0RjVDXHVGRjBDXHU2NUUwXHU5NzAwXHU0RTJEXHU5MDE0XHU3ODZFXHU4QkE0XHVGRjBDXHU5MDAyXHU1NDA4XHU2NzA5XHU2NjBFXHU3ODZFXHU3NkVFXHU2ODA3XHU3Njg0XHU0RUZCXHU1MkExXHUzMDAyIjoiXHU0RkREXHU3NTU5XHU2ODA3XHU1MUM2XHU0RUE0XHU0RTkyXHU2RDQxXHU3QTBCXHVGRjBDXHU5MDAyXHU1NDA4XHU2MjRCXHU1MkE4XHU3ODZFXHU4QkE0XHU2QkNGXHU0RTAwXHU2QjY1XHUzMDAyIn1mdW5jdGlvbiBWYShlKXtyZXR1cm4gZT09PSJjb2RleCI/WyJmdWxsLWFjY2VzcyJdOlsiZGVmYXVsdCIsImZ1bGwtYWNjZXNzIiwiYXV0by1lZGl0IiwibmF0aXZlIiwibWFuYWdlZCJdfWZ1bmN0aW9uIFd0KGUsdCl7dmFyIHI9VmEoZSk7aWYoci5pbmRleE9mKHQpIT09LTEpcmV0dXJuIHQ7dmFyIGk9bi5jb25maWcmJm4uY29uZmlnLmRlZmF1bHRNb2RlP24uY29uZmlnLmRlZmF1bHRNb2RlOiJkZWZhdWx0IjtyZXR1cm4gci5pbmRleE9mKGkpIT09LTE/aTpyWzBdfWZ1bmN0aW9uIGNnKGUsdCl7cmV0dXJuIFZhKGUpLm1hcChmdW5jdGlvbihyKXt2YXIgaT1QbyhyKTtyZXR1cm4nPG9wdGlvbiB2YWx1ZT0iJytwKHIpKyciJysocj09PXQ/IiBzZWxlY3RlZCI6IiIpKycgdGl0bGU9IicraSsnIj4nK3AoYnYocikpKyI8L29wdGlvbj4ifSkuam9pbigiIil9ZnVuY3Rpb24gUG8oZSl7dmFyIHQ9e2RlZmF1bHQ6Ilx1NjgwN1x1NTFDNlx1NkEyMVx1NUYwRiAtIFx1OTcwMFx1ODk4MVx1Nzg2RVx1OEJBNFx1NjU4N1x1NEVGNlx1NEZFRVx1NjUzOSIsImZ1bGwtYWNjZXNzIjoiXHU1QjhDXHU1MTY4XHU4QkJGXHU5NUVFIC0gXHU4MUVBXHU1MkE4XHU3ODZFXHU4QkE0XHU2NzQzXHU5NjUwXHU0RTBFXHU2NENEXHU0RjVDIiwiYXV0by1lZGl0IjoiXHU4MUVBXHU1MkE4XHU3RjE2XHU4RjkxIC0gXHU4MUVBXHU1MkE4XHU3ODZFXHU4QkE0XHU2NTg3XHU0RUY2XHU0RkVFXHU2NTM5IixuYXRpdmU6Ilx1NTM5Rlx1NzUxRlx1NkEyMVx1NUYwRiAtIFx1OEZENFx1NTZERVx1N0VEM1x1Njc4NFx1NTMxNlx1OEY5M1x1NTFGQSIsbWFuYWdlZDoiXHU2MjU4XHU3QkExXHU2QTIxXHU1RjBGIC0gQUkgXHU4MUVBXHU1MkE4XHU1QjhDXHU2MjEwXHU2MjQwXHU2NzA5XHU1REU1XHU0RjVDIn07cmV0dXJuIHRbZV18fCIifWZ1bmN0aW9uIEZ2KGUpe3ZhciB0PWUmJmUucHJvdmlkZXI/ZS5wcm92aWRlcjoiY2xhdWRlIjtyZXR1cm4odWUoZSk/Ilx1N0VEM1x1Njc4NFx1NTMxNiI6Ilx1N0VDOFx1N0FFRiIpKyIgXHhCNyAiK3R9ZnVuY3Rpb24gd3YoZSl7cmV0dXJuIHVlKGUpPyJcdTdFRDNcdTY3ODRcdTUzMTYgXHhCNyBcdTU3NTdcdTdFQTdcdThCQjBcdTVGNTUiOmUmJmUucHJvdmlkZXI9PT0iY29kZXgiPyJcdTdFQzhcdTdBRUYgXHhCNyBDb2RleCBQVFlcdUZGMDhjaGF0IFx1NEUzQVx1ODlFM1x1Njc5MFx1ODlDNlx1NTZGRVx1RkYwOSI6Ilx1N0VDOFx1N0FFRiBceEI3IFBUWSBcdTRGMUFcdThCREQifWZ1bmN0aW9uIEN2KGUpe3JldHVybiBlP3VlKGUpfHxlLnByb3ZpZGVyPT09ImNvZGV4IjohMX1mdW5jdGlvbiBxbyhlLHQpe2lmKCFlfHwhZS5pc19lcnJvcnx8IXR8fHQuaXNfZXJyb3IpcmV0dXJuITE7dmFyIHI9ZG4oZS5jb250ZW50KS50b0xvd2VyQ2FzZSgpLGk9ZG4odC5jb250ZW50KS50b0xvd2VyQ2FzZSgpO3JldHVybiByP3IuaW5kZXhPZigiaW52YWxpZCBwYWdlcyBwYXJhbWV0ZXIiKSE9PS0xJiZpLmxlbmd0aD4wOiExfWZ1bmN0aW9uIHVlKGUpe3JldHVybiEhZSYmKGUuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fGUucnVubmVyPT09ImNsYXVkZS1jbGktcHJpbnQiKX1mdW5jdGlvbiBCaSgpe24uY2hhdE1vZGU9V3QoImNsYXVkZSIsbi5jaGF0TW9kZSk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vZGUtaGludCIpO2UmJihlLnRleHRDb250ZW50PVBvKG4uY2hhdE1vZGUpKSwkbigpfWZ1bmN0aW9uIFVhKGUsdCl7dD10fHx7fTt2YXIgcj10LmtpbmQ9PT0iY29tcGFjdCJ8fHQua2luZD09PSJwb3BvdmVyIj90LmtpbmQ6ImRyb3Bkb3duIixpPWh0KCksYT1uLmNoYXRNb2RlfHwiZGVmYXVsdCIsdT1fbyhlKXx8ImRlZmF1bHQiLHM9Um8oZSk7ZnVuY3Rpb24gbyhsLGMsZixkKXt2YXIgdj1yPT09ImNvbXBhY3QiPyIiOic8c3BhbiBjbGFzcz0iY2hhdC1tb2RlLXRyaW8tdGFnIj4nK3AoYykrIjwvc3Bhbj4iO3JldHVybic8c3BhbiBjbGFzcz0iY29tcG9zZXItdGV4dC1waWxsIGNoYXQtbW9kZS10cmlvLXBpbGwiIGRhdGEtbW9kZS1jb250cm9sLXBpbGw9IicrbCsnIiB0aXRsZT0iJytwKGMpKyciPicrdisnPHNwYW4gY2xhc3M9ImNvbXBvc2VyLXRleHQtbGFiZWwiPicrcChmKSsnPC9zcGFuPjxzZWxlY3QgY2xhc3M9ImNvbXBvc2VyLXRleHQtaGlkZGVuLXNlbGVjdCIgZGF0YS1tb2RlLWNvbnRyb2w9IicrbCsnIiB0YWJpbmRleD0iLTEiIGFyaWEtbGFiZWw9IicrcChjKSsnIj4nK2QrIjwvc2VsZWN0Pjwvc3Bhbj4ifXJldHVybic8ZGl2IGNsYXNzPSJjaGF0LW1vZGUtdHJpbyBjaGF0LW1vZGUtdHJpby0nK3IrJyIgcm9sZT0iZ3JvdXAiIGFyaWEtbGFiZWw9Ilx1NEYxQVx1OEJERFx1OEJCRVx1N0Y2RSI+JytvKCJtb2RlIiwiXHU2QTIxXHU1RjBGIixhLEhvKGksYSkpKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItdGV4dC1zZXAiIGFyaWEtaGlkZGVuPSJ0cnVlIj5ceEI3PC9zcGFuPicrbygibW9kZWwiLCJcdTZBMjFcdTU3OEIiLHUsam8odSxlKSkrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci10ZXh0LXNlcCIgYXJpYS1oaWRkZW49InRydWUiPlx4Qjc8L3NwYW4+JytvKCJ0aGlua2luZyIsIlx1NjAxRFx1ODAwMyIscyxXbyhzKSkrIjwvZGl2PiJ9ZnVuY3Rpb24gJG4oKXt2YXIgZT15dCgpLHQ9aHQoKSxyPW4uY2hhdE1vZGV8fCJkZWZhdWx0IixpPV9vKGUpfHwiZGVmYXVsdCIsYT1SbyhlKSx1PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5jaGF0LW1vZGUtdHJpbyIpO3UuZm9yRWFjaChmdW5jdGlvbihzKXtmdW5jdGlvbiBvKGwsYyxmKXt2YXIgZD1zLnF1ZXJ5U2VsZWN0b3IoJ1tkYXRhLW1vZGUtY29udHJvbC1waWxsPSInK2wrJyJdJyk7aWYoZCl7dmFyIHY9ZC5xdWVyeVNlbGVjdG9yKCIuY29tcG9zZXItdGV4dC1sYWJlbCIpO3YmJih2LnRleHRDb250ZW50PWMpO3ZhciBnPWQucXVlcnlTZWxlY3RvcignW2RhdGEtbW9kZS1jb250cm9sPSInK2wrJyJdJyk7ZyYmKGYmJihnLmlubmVySFRNTD1mKSxnLnZhbHVlIT09YyYmKGcudmFsdWU9YykpfX1vKCJtb2RlIixyLEhvKHQscikpLG8oIm1vZGVsIixpLGpvKGksZSkpLG8oInRoaW5raW5nIixhLFdvKGEpKX0pfWZ1bmN0aW9uIEhvKGUsdCl7cmV0dXJuIFZhKGUpLm1hcChmdW5jdGlvbihyKXtyZXR1cm4nPG9wdGlvbiB2YWx1ZT0iJytwKHIpKyciJysocj09PXQ/IiBzZWxlY3RlZCI6IiIpKyI+IitwKHIpKyI8L29wdGlvbj4ifSkuam9pbigiIil9ZnVuY3Rpb24gX28oZSl7cmV0dXJuIGUmJmUuc2VsZWN0ZWRNb2RlbD9lLnNlbGVjdGVkTW9kZWw6bi5jaGF0TW9kZWw/bi5jaGF0TW9kZWw6bi5jb25maWcmJm4uY29uZmlnLmRlZmF1bHRNb2RlbD9uLmNvbmZpZy5kZWZhdWx0TW9kZWw6IiJ9ZnVuY3Rpb24gTm8oZSl7dmFyIHQ9ZSYmZS5wcm92aWRlcnx8bi5zZXNzaW9uVG9vbHx8ImNsYXVkZSI7cmV0dXJuIHQ9PT0iY29kZXgiP24uYXZhaWxhYmxlQ29kZXhNb2RlbHN8fFtdOm4uYXZhaWxhYmxlTW9kZWxzfHxbXX1mdW5jdGlvbiBCdihlLHQpe2Zvcih2YXIgcj1Obyh0KSxpPSc8b3B0aW9uIHZhbHVlPSIiPlx1OUVEOFx1OEJBNFx1RkYwOFx1OERERlx1OTY4Rlx1OEJCRVx1N0Y2RVx1RkYwOTwvb3B0aW9uPicsYT0wO2E8ci5sZW5ndGg7YSsrKXt2YXIgdT1yW2FdLHM9dS5sYWJlbHx8dS5pZDtpKz0nPG9wdGlvbiB2YWx1ZT0iJytwKHUuaWQpKyciJysodS5pZD09PWU/IiBzZWxlY3RlZCI6IiIpKyI+IitwKHMpKyI8L29wdGlvbj4ifXJldHVybiBlJiYhci5zb21lKGZ1bmN0aW9uKG8pe3JldHVybiBvLmlkPT09ZX0pJiYoaSs9JzxvcHRpb24gdmFsdWU9IicrcChlKSsnIiBzZWxlY3RlZD4nK3AoZSkrIlx1RkYwOFx1ODFFQVx1NUI5QVx1NEU0OVx1RkYwOTwvb3B0aW9uPiIpLGl9ZnVuY3Rpb24gam8oZSx0KXtmb3IodmFyIHI9Tm8odCksaT0nPG9wdGlvbiB2YWx1ZT0iIj5kZWZhdWx0PC9vcHRpb24+JyxhPTA7YTxyLmxlbmd0aDthKyspe3ZhciB1PXJbYV07aSs9JzxvcHRpb24gdmFsdWU9IicrcCh1LmlkKSsnIicrKHUuaWQ9PT1lPyIgc2VsZWN0ZWQiOiIiKSsiPiIrcCh1LmlkKSsiPC9vcHRpb24+In1yZXR1cm4gZSYmIXIuc29tZShmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PWV9KSYmKGkrPSc8b3B0aW9uIHZhbHVlPSInK3AoZSkrJyIgc2VsZWN0ZWQ+JytwKGUpKyI8L29wdGlvbj4iKSxpfWZ1bmN0aW9uIFhuKGUpeyRuKCl9dmFyIGZuPVt7aWQ6Im9mZiIsbGFiZWw6Im9mZiIsaGludDoiXHU0RTBEXHU1NDJGXHU3NTI4XHU2MDFEXHU4MDAzXHVGRjA4Q0xJIFx1NjVFMFx1NTI0RFx1N0YwMFx1RkYxQlNESyBcdTUxNzNcdTk1RUQgdGhpbmtpbmdcdUZGMUJDb2RleCBtaW5pbWFsXHVGRjA5In0se2lkOiJzdGFuZGFyZCIsbGFiZWw6InRoaW5rIixoaW50OiJDbGF1ZGUgQ0xJOiB0aGluayBceEI3IFNESyBidWRnZXQgNDA5NiBceEI3IENvZGV4IGxvdyJ9LHtpZDoiZGVlcCIsbGFiZWw6InRoaW5rIGhhcmQiLGhpbnQ6IkNsYXVkZSBDTEk6IHRoaW5rIGhhcmQgXHhCNyBTREsgYnVkZ2V0IDE2MDAwIFx4QjcgQ29kZXggbWVkaXVtIn0se2lkOiJtYXgiLGxhYmVsOiJ1bHRyYXRoaW5rIixoaW50OiJDbGF1ZGUgQ0xJOiB1bHRyYXRoaW5rIFx4QjcgU0RLIGJ1ZGdldCAzMTk5OSBceEI3IENvZGV4IGhpZ2gifV07ZnVuY3Rpb24gRHYoZSl7Zm9yKHZhciB0PTA7dDxmbi5sZW5ndGg7dCsrKWlmKGZuW3RdLmlkPT09ZSlyZXR1cm4gZm5bdF0ubGFiZWw7cmV0dXJuIGZuWzBdLmxhYmVsfWZ1bmN0aW9uIFJvKGUpe3JldHVybiBlJiZlLnRoaW5raW5nRWZmb3J0P2UudGhpbmtpbmdFZmZvcnQ6bi5jaGF0VGhpbmtpbmc/bi5jaGF0VGhpbmtpbmc6Im9mZiJ9ZnVuY3Rpb24gZGcoZSl7Zm9yKHZhciB0PWV8fCJvZmYiLHI9IiIsaT0wO2k8Zm4ubGVuZ3RoO2krKyl7dmFyIGE9Zm5baV07cis9JzxvcHRpb24gdmFsdWU9IicrcChhLmlkKSsnIicrKGEuaWQ9PT10PyIgc2VsZWN0ZWQiOiIiKSsnIHRpdGxlPSInK3AoYS5oaW50KSsnIj4nK3AoYS5sYWJlbCkrIjwvb3B0aW9uPiJ9cmV0dXJuIHJ9ZnVuY3Rpb24gV28oZSl7Zm9yKHZhciB0PWV8fCJvZmYiLHI9IiIsaT0wO2k8Zm4ubGVuZ3RoO2krKyl7dmFyIGE9Zm5baV07cis9JzxvcHRpb24gdmFsdWU9IicrcChhLmlkKSsnIicrKGEuaWQ9PT10PyIgc2VsZWN0ZWQiOiIiKSsiPiIrcChhLmlkKSsiPC9vcHRpb24+In1yZXR1cm4gcn1mdW5jdGlvbiBmZyhlKXskbigpfWZ1bmN0aW9uIGt2KGUpe3ZhciB0PShlfHwib2ZmIikudHJpbSgpO3QhPT0ib2ZmIiYmdCE9PSJzdGFuZGFyZCImJnQhPT0iZGVlcCImJnQhPT0ibWF4IiYmKHQ9Im9mZiIpLG4uY2hhdFRoaW5raW5nPXQ7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLXRoaW5raW5nLWVmZm9ydCIsdCl9Y2F0Y2h7fSRuKCk7dmFyIHI9eXQoKTtyJiZmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChyLmlkKSsiL3RoaW5raW5nLWVmZm9ydCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe3RoaW5raW5nRWZmb3J0OnR9KX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtpZihpJiZpLmVycm9yKXtrKGkuZXJyb3IsImVycm9yIik7cmV0dXJufWkmJmkuaWQmJihaKGkpLHR5cGVvZiBrPT0iZnVuY3Rpb24iJiZrKCJcdTVERjJcdTUyMDdcdTYzNjJcdTYwMURcdTgwMDNcdTZERjFcdTVFQTYgXHUyMTkyICIrRHYodCksInN1Y2Nlc3MiKSl9KS5jYXRjaChmdW5jdGlvbigpe2soIlx1NTIwN1x1NjM2Mlx1NjAxRFx1ODAwM1x1NkRGMVx1NUVBNlx1NTkzMVx1OEQyNSIsImVycm9yIil9KX1mdW5jdGlvbiB6byhlKXtpZighZSlyZXR1cm4hMTt2YXIgdD1lLm1vZGU7cmV0dXJuIHQ9PT0ibWFuYWdlZCJ8fHQ9PT0iZnVsbC1hY2Nlc3MifWZ1bmN0aW9uIEF2KGUpe2lmKCFlfHx6byhlKSlyZXR1cm4iIjt2YXIgdD0hIWUuYXV0b0FwcHJvdmVQZXJtaXNzaW9ucztyZXR1cm4gdD8nPHNwYW4gaWQ9ImF1dG8tYXBwcm92ZS10b2dnbGUiIGNsYXNzPSJjb21wb3Nlci1waWxsIGNvbXBvc2VyLXBpbGwtY2hpcCBhdXRvLWFwcHJvdmUtaW5kaWNhdG9yIGFjdGl2ZSIgdGl0bGU9Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NTQyRlx1NzUyOCBcdTIwMTQgXHU3MEI5XHU1MUZCXHU1MTczXHU5NUVEIj4nK0soInNoaWVsZENoZWNrIix7c2l6ZToxMixzdHJva2VXaWR0aDoxLjcsY2xzOiJjb21wb3Nlci1waWxsLWljb24ifSkrJzxzcGFuIGNsYXNzPSJjb21wb3Nlci1waWxsLWxhYmVsIj5cdTgxRUFcdTUyQTg8L3NwYW4+PC9zcGFuPic6JzxzcGFuIGlkPSJhdXRvLWFwcHJvdmUtdG9nZ2xlIiBjbGFzcz0iY29tcG9zZXItcGlsbCBjb21wb3Nlci1waWxsLWNoaXAgYXV0by1hcHByb3ZlLWluZGljYXRvciIgdGl0bGU9Ilx1ODFFQVx1NTJBOFx1NjI3OVx1NTFDNlx1NURGMlx1NTE3M1x1OTVFRCBcdTIwMTQgXHU3MEI5XHU1MUZCXHU1RjAwXHU1NDJGIj4nK0soInNoaWVsZCIse3NpemU6MTIsc3Ryb2tlV2lkdGg6MS43LGNsczoiY29tcG9zZXItcGlsbC1pY29uIn0pKyc8c3BhbiBjbGFzcz0iY29tcG9zZXItcGlsbC1sYWJlbCI+XHU2MjRCXHU1MkE4PC9zcGFuPjwvc3Bhbj4nfWZ1bmN0aW9uIFZvKCl7cmV0dXJuIGZldGNoKCIvYXBpL21vZGVscyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUmJkFycmF5LmlzQXJyYXkoZS5tb2RlbHMpJiYobi5hdmFpbGFibGVNb2RlbHM9ZS5tb2RlbHMsbi5hdmFpbGFibGVDb2RleE1vZGVscz1BcnJheS5pc0FycmF5KGUuY29kZXhNb2RlbHMpP2UuY29kZXhNb2RlbHM6W10sWG4oeXQoKSksRGkoZSkpLGV9KS5jYXRjaChmdW5jdGlvbigpe3JldHVybiBudWxsfSl9ZnVuY3Rpb24geHYoKXtpZihuLm1vZGVsc1JlZnJlc2hpbmcpcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtuLm1vZGVsc1JlZnJlc2hpbmc9ITA7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1kZWZhdWx0LW1vZGVsLXJlZnJlc2giKTtyZXR1cm4gZSYmKGUuZGlzYWJsZWQ9ITAsZS50ZXh0Q29udGVudD0iXHU1MjM3XHU2NUIwXHU0RTJELi4uIiksZmV0Y2goIi9hcGkvbW9kZWxzL3JlZnJlc2giLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7cmV0dXJuIHQmJkFycmF5LmlzQXJyYXkodC5tb2RlbHMpJiYobi5hdmFpbGFibGVNb2RlbHM9dC5tb2RlbHMsbi5hdmFpbGFibGVDb2RleE1vZGVscz1BcnJheS5pc0FycmF5KHQuY29kZXhNb2RlbHMpP3QuY29kZXhNb2RlbHM6W10sWG4oeXQoKSksRGkodCksdHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoIlx1NkEyMVx1NTc4Qlx1NTIxN1x1ODg2OFx1NURGMlx1NTIzN1x1NjVCMCIrKHQuY2xhdWRlVmVyc2lvbj8iXHVGRjA4Y2xhdWRlICIrdC5jbGF1ZGVWZXJzaW9uKyJcdUZGMDkiOiIiKSwic3VjY2VzcyIpKSx0fSkuY2F0Y2goZnVuY3Rpb24oKXtyZXR1cm4gdHlwZW9mIGs9PSJmdW5jdGlvbiImJmsoIlx1NTIzN1x1NjVCMFx1NkEyMVx1NTc4Qlx1NTIxN1x1ODg2OFx1NTkzMVx1OEQyNSIsImVycm9yIiksbnVsbH0pLmZpbmFsbHkoZnVuY3Rpb24oKXtuLm1vZGVsc1JlZnJlc2hpbmc9ITEsZSYmKGUuZGlzYWJsZWQ9ITEsZS50ZXh0Q29udGVudD0iXHU1MjM3XHU2NUIwIil9KX1mdW5jdGlvbiBTdigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJlbnYtcHJldmlldy1tb2RhbCIpO2lmKCFlKXtlPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInNlY3Rpb24iKSxlLmlkPSJlbnYtcHJldmlldy1tb2RhbCIsZS5jbGFzc05hbWU9Im1vZGFsLWJhY2tkcm9wIGhpZGRlbiIsZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9Im1vZGFsIGVudi1wcmV2aWV3LW1vZGFsIiByb2xlPSJkaWFsb2ciIGFyaWEtbGFiZWxsZWRieT0iZW52LXByZXZpZXctdGl0bGUiIGFyaWEtbW9kYWw9InRydWUiPjxkaXYgY2xhc3M9Im1vZGFsLWhlYWRlciI+PGRpdj48aDIgY2xhc3M9Im1vZGFsLXRpdGxlIiBpZD0iZW52LXByZXZpZXctdGl0bGUiPlx1NUMwNlx1NkNFOFx1NTE2NVx1NUI1MFx1OEZEQlx1N0EwQlx1NzY4NFx1NzNBRlx1NTg4M1x1NTNEOFx1OTFDRjwvaDI+PHAgY2xhc3M9Im1vZGFsLXN1YnRpdGxlIiBpZD0iZW52LXByZXZpZXctc3VidGl0bGUiPlx1OEZEOVx1NEU5Qlx1NTNEOFx1OTFDRlx1NEYxQVx1ODhBQlx1NEYyMFx1N0VEOSBjbGF1ZGUgLyBjb2RleFx1RkYwOFBUWSBcdTRFMEVcdTdFRDNcdTY3ODRcdTUzMTZcdThGRDBcdTg4NENcdTU2NjhcdTRFMDBcdTgxRjRcdUZGMDlcdTMwMDI8L3A+PC9kaXY+PGJ1dHRvbiBpZD0iZW52LXByZXZpZXctY2xvc2UiIGNsYXNzPSJidG4gYnRuLWdob3N0IGJ0bi1pY29uIG1vZGFsLWNsb3NlLWJ0biIgdHlwZT0iYnV0dG9uIiBhcmlhLWxhYmVsPSJcdTUxNzNcdTk1RUQiPjxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PGxpbmUgeDE9IjYiIHkxPSI2IiB4Mj0iMTgiIHkyPSIxOCIvPjxsaW5lIHgxPSIxOCIgeTE9IjYiIHgyPSI2IiB5Mj0iMTgiLz48L3N2Zz48L2J1dHRvbj48L2Rpdj48ZGl2IGNsYXNzPSJtb2RhbC1ib2R5IGVudi1wcmV2aWV3LWJvZHkiPjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LXRvb2xiYXIiPjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LW1ldGEiIGlkPSJlbnYtcHJldmlldy1tZXRhIj5cdTUyQTBcdThGN0RcdTRFMkRcdTIwMjY8L2Rpdj48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1jb250cm9scyI+PGlucHV0IGlkPSJlbnYtcHJldmlldy1zZWFyY2giIGNsYXNzPSJlbnYtcHJldmlldy1zZWFyY2giIHR5cGU9InNlYXJjaCIgcGxhY2Vob2xkZXI9Ilx1NjQxQ1x1N0QyMlx1NTNEOFx1OTFDRlx1NTQwRFx1MjAyNiIgLz48bGFiZWwgY2xhc3M9ImVudi1wcmV2aWV3LXJldmVhbCI+PGlucHV0IGlkPSJlbnYtcHJldmlldy1yZXZlYWwtdG9nZ2xlIiB0eXBlPSJjaGVja2JveCIgLz48c3Bhbj5cdTY2M0VcdTc5M0FcdTY1NEZcdTYxMUZcdTUwM0M8L3NwYW4+PC9sYWJlbD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1saXN0IiBpZD0iZW52LXByZXZpZXctbGlzdCIgdGFiaW5kZXg9IjAiPjxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9Im1vZGFsLWZvb3RlciBlbnYtcHJldmlldy1mb290ZXIiPjxzcGFuIGNsYXNzPSJlbnYtcHJldmlldy1oaW50Ij5cdTY1NEZcdTYxMUZcdTVCNTdcdTZCQjVcdUZGMDhcdTU0MkIgS0VZL1RPS0VOL1NFQ1JFVCBcdTdCNDlcdUZGMDlcdTlFRDhcdThCQTRcdTYzQTlcdTc4MDFcdUZGMENcdTUzRUZcdTUyRkVcdTkwMDlcdTMwMENcdTY2M0VcdTc5M0FcdTY1NEZcdTYxMUZcdTUwM0NcdTMwMERcdTRFMzRcdTY1RjZcdThGRDhcdTUzOUZcdTMwMDI8L3NwYW4+PGJ1dHRvbiBpZD0iZW52LXByZXZpZXctY2xvc2UtMiIgY2xhc3M9ImJ0biBidG4tc2Vjb25kYXJ5IGJ0bi1zbSIgdHlwZT0iYnV0dG9uIj5cdTUxNzNcdTk1RUQ8L2J1dHRvbj48L2Rpdj48L2Rpdj4nLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZSksZS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obyl7by50YXJnZXQ9PT1lJiZLYSgpfSk7dmFyIHQ9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctY2xvc2UiKTt0JiZ0LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixLYSk7dmFyIHI9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctY2xvc2UtMiIpO3ImJnIuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLEthKTt2YXIgYT1lLnF1ZXJ5U2VsZWN0b3IoIiNlbnYtcHJldmlldy1zZWFyY2giKTthJiZhLmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixmdW5jdGlvbigpe0tvKCl9KTt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3IoIiNlbnYtcHJldmlldy1yZXZlYWwtdG9nZ2xlIik7aSYmaS5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGZ1bmN0aW9uKCl7VW8oaS5jaGVja2VkKX0pfWUuY2xhc3NMaXN0LnJlbW92ZSgiY2xvc2luZyIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7dmFyIGk9ZS5xdWVyeVNlbGVjdG9yKCIjZW52LXByZXZpZXctcmV2ZWFsLXRvZ2dsZSIpO2kmJihpLmNoZWNrZWQ9ITEpO3ZhciBhPWUucXVlcnlTZWxlY3RvcigiI2Vudi1wcmV2aWV3LXNlYXJjaCIpO2EmJihhLnZhbHVlPSIiKSxVbyghMSl9ZnVuY3Rpb24gS2EoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW52LXByZXZpZXctbW9kYWwiKTtlJiZRYShlKX1mdW5jdGlvbiBVbyhlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW52LXByZXZpZXctbGlzdCIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LW1ldGEiKTt0JiYodC5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRFx1MjAyNjwvZGl2PicpLHImJihyLnRleHRDb250ZW50PSJcdTUyQTBcdThGN0RcdTRFMkRcdTIwMjYiKTt2YXIgaT0iL2FwaS9zZXR0aW5ncy9lbnYtcHJldmlldyIrKGU/Ij9yZXZlYWw9MSI6IiIpO2ZldGNoKGkse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoIWF8fCFBcnJheS5pc0FycmF5KGEuZW50cmllcykpe3QmJih0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZW52LXByZXZpZXctZW1wdHkiPlx1OEJGQlx1NTNENlx1NTkzMVx1OEQyNVx1MzAwMjwvZGl2PicpLHImJihyLnRleHRDb250ZW50PSJcdThCRkJcdTUzRDZcdTU5MzFcdThEMjUiKTtyZXR1cm59aWYobi5fZW52UHJldmlldz1hLHIpe3ZhciB1PWEuaW5oZXJpdEVudj8iXHU3RUU3XHU2MjdGXHU3MjM2XHU4RkRCXHU3QTBCIjoiXHU2NzAwXHU1QzBGXHU3NjdEXHU1NDBEXHU1MzU1IjtyLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9ImVudi1wcmV2aWV3LXBpbGwgJysoYS5pbmhlcml0RW52PyJpcy1pbmhlcml0IjoiaXMtbWluaW1hbCIpKyciPicrdSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJlbnYtcHJldmlldy1jb3VudCI+XHU1MTcxICcrYS50b3RhbCsiIFx1OTg3OTwvc3Bhbj4ifUtvKCl9KS5jYXRjaChmdW5jdGlvbigpe3QmJih0LmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZW52LXByZXZpZXctZW1wdHkiPlx1OEJGQlx1NTNENlx1NTkzMVx1OEQyNVx1RkYwQ1x1OEJGN1x1N0EwRFx1NTQwRVx1OTFDRFx1OEJENVx1MzAwMjwvZGl2PicpLHImJihyLnRleHRDb250ZW50PSJcdThCRkJcdTUzRDZcdTU5MzFcdThEMjUiKX0pfWZ1bmN0aW9uIEtvKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImVudi1wcmV2aWV3LWxpc3QiKTtpZihlKXt2YXIgdD1uLl9lbnZQcmV2aWV3O2lmKCF0fHwhQXJyYXkuaXNBcnJheSh0LmVudHJpZXMpKXtlLmlubmVySFRNTD0nPGRpdiBjbGFzcz0iZW52LXByZXZpZXctZW1wdHkiPlx1NUMxQVx1NjcyQVx1NTJBMFx1OEY3RFx1MzAwMjwvZGl2Pic7cmV0dXJufWZvcih2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZW52LXByZXZpZXctc2VhcmNoIiksaT0ociYmci52YWx1ZXx8IiIpLnRyaW0oKS50b0xvd2VyQ2FzZSgpLGE9IiIsdT0wLHM9MDtzPHQuZW50cmllcy5sZW5ndGg7cysrKXt2YXIgbz10LmVudHJpZXNbc107aWYoIShpJiZvLm5hbWUudG9Mb3dlckNhc2UoKS5pbmRleE9mKGkpPT09LTEpKXt1Kys7dmFyIGw9dHlwZW9mIG8udmFsdWU9PSJzdHJpbmciJiZvLnZhbHVlLmNoYXJBdCgwKT09PSI8IiYmby52YWx1ZS5jaGFyQXQoby52YWx1ZS5sZW5ndGgtMSk9PT0iPiI7YSs9JzxkaXYgY2xhc3M9ImVudi1wcmV2aWV3LXJvdycrKG8uc2Vuc2l0aXZlPyIgaXMtc2Vuc2l0aXZlIjoiIikrJyI+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctbmFtZSI+JytwKG8ubmFtZSkrKG8uc2Vuc2l0aXZlPyc8c3BhbiBjbGFzcz0iZW52LXByZXZpZXctYmFkZ2UiIHRpdGxlPSJcdTg4QUJcdThCQzZcdTUyMkJcdTRFM0FcdTY1NEZcdTYxMUZcdTVCNTdcdTZCQjUiPlx1NjU0Rlx1NjExRjwvc3Bhbj4nOiIiKSsobD8nPHNwYW4gY2xhc3M9ImVudi1wcmV2aWV3LWJhZGdlIGVudi1wcmV2aWV3LWJhZGdlLXJ1bnRpbWUiIHRpdGxlPSJcdTYzMDlcdTRGMUFcdThCRERcdTUyQThcdTYwMDFcdTZDRThcdTUxNjUiPlx1OEZEMFx1ODg0Q1x1NjVGNjwvc3Bhbj4nOiIiKSsnPC9kaXY+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctdmFsdWUnKyhsPyIgaXMtcnVudGltZSI6IiIpKyciIHRpdGxlPSInK3AoU3RyaW5nKG8udmFsdWUpKSsnIj4nK3AoU3RyaW5nKG8udmFsdWUpKSsnPC9kaXY+PGRpdiBjbGFzcz0iZW52LXByZXZpZXctbGVuIj4nK28ubGVuZ3RoKyIgXHU1QjU3XHU3QjI2PC9kaXY+PC9kaXY+In19dT09PTAmJihhPSc8ZGl2IGNsYXNzPSJlbnYtcHJldmlldy1lbXB0eSI+XHU2Q0ExXHU2NzA5XHU1MzM5XHU5MTREXHU3Njg0XHU1M0Q4XHU5MUNGXHUzMDAyPC9kaXY+JyksZS5pbm5lckhUTUw9YX19ZnVuY3Rpb24gRGkoZSl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1kZWZhdWx0LW1vZGVsIik7aWYodCl7dmFyIHI9dC52YWx1ZSxpPXJ8fG4uY29uZmlnRGVmYXVsdE1vZGVsfHxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGVsfHwiIjt0LmlubmVySFRNTD1CdihpLHtwcm92aWRlcjoiY2xhdWRlIn0pLHQudmFsdWU9aTt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWRlZmF1bHQtbW9kZWwtdmVyc2lvbiIpO2EmJmUmJihhLnRleHRDb250ZW50PWUuY2xhdWRlVmVyc2lvbj8iXHU1REYyXHU2OEMwXHU2RDRCXHU1MjMwIGNsYXVkZSAiK2UuY2xhdWRlVmVyc2lvbjoiXHU2NUIwXHU1RUZBXHU0RjFBXHU4QkREXHU2NUY2XHU5RUQ4XHU4QkE0XHU0RjdGXHU3NTI4XHU4QkU1XHU2QTIxXHU1NzhCXHUzMDAyIil9fWZ1bmN0aW9uIHl0KCl7aWYoIW4uc2VsZWN0ZWRJZClyZXR1cm4gbnVsbDtmb3IodmFyIGU9MDtlPG4uc2Vzc2lvbnMubGVuZ3RoO2UrKylpZihuLnNlc3Npb25zW2VdLmlkPT09bi5zZWxlY3RlZElkKXJldHVybiBuLnNlc3Npb25zW2VdO3JldHVybiBudWxsfWZ1bmN0aW9uIEl2KGUpe3ZhciB0PShlfHwiIikudHJpbSgpO24uY2hhdE1vZGVsPXQ7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWNoYXQtbW9kZWwiLHQpfWNhdGNoe30kbigpO3ZhciByPXl0KCk7ciYmZmV0Y2goIi9hcGkvc2Vzc2lvbnMvIitlbmNvZGVVUklDb21wb25lbnQoci5pZCkrIi9tb2RlbCIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoe21vZGVsOnR8fG51bGx9KX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXtpZihpJiZpLmVycm9yKXtrKGkuZXJyb3IsImVycm9yIik7cmV0dXJufWlmKGkmJmkuaWQmJihaKGkpLHR5cGVvZiBrPT0iZnVuY3Rpb24iKSl7dmFyIGE9dHx8Ilx1OUVEOFx1OEJBNCIsdT1yLnByb3ZpZGVyPT09ImNvZGV4Ij8iXHVGRjA4XHU0RTBCXHU2QjIxXHU1QkY5XHU4QkREXHU3NTFGXHU2NTQ4XHVGRjA5IjoiIjtrKCJcdTVERjJcdTUyMDdcdTYzNjJcdTZBMjFcdTU3OEIgXHUyMTkyICIrYSt1LCJzdWNjZXNzIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTUyMDdcdTYzNjJcdTZBMjFcdTU3OEJcdTU5MzFcdThEMjUiLCJlcnJvciIpfSl9ZnVuY3Rpb24gWW8oZSx0LHIsaSl7dmFyIGE9bi5zZXNzaW9uVG9vbD09PSJjb2RleCI/ImNvZGV4IjoiY2xhdWRlIix1PW4uY2hhdE1vZGVsfHxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGVsfHwiIixzPW4uY2hhdFRoaW5raW5nfHwib2ZmIixvPXtjd2Q6dHx8ZXQoKSxtb2RlOnJ8fG4uY2hhdE1vZGV8fG4uY29uZmlnJiZuLmNvbmZpZy5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLHByb3ZpZGVyOmEscnVubmVyOmE9PT0iY29kZXgiPyJjb2RleC1jbGktZXhlYyI6bi5jb25maWcmJm4uY29uZmlnLnN0cnVjdHVyZWRSdW5uZXI9PT0ic2RrIj8iY2xhdWRlLXNkayI6bi5zdHJ1Y3R1cmVkUnVubmVyfHwiY2xhdWRlLWNsaS1wcmludCIscHJvbXB0OmV8fHZvaWQgMCx3b3JrdHJlZUVuYWJsZWQ6aT09PSEwLG1vZGVsOnV8fHZvaWQgMCx0aGlua2luZ0VmZm9ydDpzfTtyZXR1cm4gZmV0Y2goIi9hcGkvc3RydWN0dXJlZC1zZXNzaW9ucyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkobyl9KS50aGVuKGZ1bmN0aW9uKGwpe3JldHVybiBsLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24obCl7aWYobC5lcnJvcil0aHJvdyBuZXcgRXJyb3IobC5lcnJvcik7cmV0dXJuIG4uc2VsZWN0ZWRJZD1sLmlkLHllKCksbi5kcmFmdHNbbC5pZF09IiIsQnQoKSxaKGwpLHBlKCksQ3IobC5pZCksTG4obC5pZCksdm4obC5pZCkudGhlbihmdW5jdGlvbigpe3JldHVybiBsfSl9KX1mdW5jdGlvbiBraSgpe3ZhciBlPSEhbi5zZWxlY3RlZElkLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm91dHB1dCIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNoYXQtb3V0cHV0IiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdCIpLGE9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09bi5zZWxlY3RlZElkfSksdT11ZShhKSxzPWUmJiF1JiZuLmN1cnJlbnRWaWV3PT09InRlcm1pbmFsIixvPWUmJih1fHxuLmN1cnJlbnRWaWV3IT09InRlcm1pbmFsIik7dT9uLmN1cnJlbnRWaWV3PSJjaGF0IjplfHwobi5jdXJyZW50Vmlldz0idGVybWluYWwiKSx0JiYodC5jbGFzc0xpc3QudG9nZ2xlKCJhY3RpdmUiLHMpLHQuY2xhc3NMaXN0LnRvZ2dsZSgiaGlkZGVuIiwhcykpLHImJihyLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbyksci5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLCFvKSksaSYmaS5jbGFzc0xpc3QudG9nZ2xlKCJoaWRkZW4iLGUpLHImJm8mJlRhKHIpLGFyKCksWmUoKSxEcigpfWZ1bmN0aW9uIFRyKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1vZGUtZGVzY3JpcHRpb24iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWtpbmQtZGVzY3JpcHRpb24iKSxyPW4uc2Vzc2lvblRvb2x8fCJjbGF1ZGUiLGk9bi5zZXNzaW9uQ3JlYXRlS2luZHx8InN0cnVjdHVyZWQiO24uc2Vzc2lvblRvb2w9cixuLm1vZGVWYWx1ZT1XdChyLG4ubW9kZVZhbHVlfHxuLmNoYXRNb2RlfHwiZGVmYXVsdCIpO3ZhciBhPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNwcm92aWRlci1jYXJkcyAucHJvdmlkZXItY2FyZCIpO2EubGVuZ3RoJiZhLmZvckVhY2goZnVuY3Rpb24obyl7dmFyIGw9by5nZXRBdHRyaWJ1dGUoImRhdGEtcHJvdmlkZXIiKTtvLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsbD09PXIpLG8uY2xhc3NMaXN0LnJlbW92ZSgiZGlzYWJsZWQiKX0pO3ZhciB1PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIiNzZXNzaW9uLWtpbmQtY2FyZHMgLnNlc3Npb24ta2luZC1jYXJkIik7dS5sZW5ndGgmJnUuZm9yRWFjaChmdW5jdGlvbihvKXt2YXIgbD1vLmdldEF0dHJpYnV0ZSgiZGF0YS1zZXNzaW9uLWtpbmQiKSxjPSExO28uY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixsPT09aSksby5jbGFzc0xpc3QudG9nZ2xlKCJkaXNhYmxlZCIsYyl9KTt2YXIgcz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIjbW9kZS1jYXJkcyAubW9kZS1jYXJkIik7cy5sZW5ndGgmJnMuZm9yRWFjaChmdW5jdGlvbihvKXtvLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsby5nZXRBdHRyaWJ1dGUoImRhdGEtbW9kZSIpPT09bi5tb2RlVmFsdWUpfSksdCYmKHQudGV4dENvbnRlbnQ9VnUoaSkpLGUmJihlLnRleHRDb250ZW50PU9vKHIsbi5tb2RlVmFsdWUpKX1mdW5jdGlvbiBaKGUpe2lmKCEoIWV8fCFlLmlkKSl7dmFyIHQ9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ZS5pZH0pfHxudWxsLHI9SGwoZSx0KSxpPSExLGE9bnVsbDtuLnNlc3Npb25zPW4uc2Vzc2lvbnMubWFwKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkIT09ci5pZD9zOihhPXMsaT0hMCxPYmplY3QuYXNzaWduKHt9LHMscikpfSksaXx8bi5zZXNzaW9ucy51bnNoaWZ0KHIpO3ZhciB1PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PXIuaWR9KXx8cjt1JiZBcnJheS5pc0FycmF5KHUucXVldWVkTWVzc2FnZXMpJiZyLmlkPT09bi5zZWxlY3RlZElkJiYoVXIodSksZnUoKSxvbigpKSxyLmlkPT09bi5zZWxlY3RlZElkJiYoRGEoKSxHdCgpKSxyLnN0YXR1cyYmci5zdGF0dXMhPT0icnVubmluZyImJm4uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjAmJnNldFRpbWVvdXQoZGksMCl9fWZ1bmN0aW9uIExuKGUpeyFlfHwhbi53c3x8bi53cy5yZWFkeVN0YXRlIT09V2ViU29ja2V0Lk9QRU58fG4ud3Muc2VuZChKU09OLnN0cmluZ2lmeSh7dHlwZToic3Vic2NyaWJlIixzZXNzaW9uSWQ6ZX0pKX1mdW5jdGlvbiBUdihlLHQpe2lmKCFlKXJldHVybiB0O3ZhciByPU9iamVjdC5hc3NpZ24oe30sZSx0KSxpPWUub3V0cHV0fHwiIixhPXQub3V0cHV0fHwiIix1PWkubGVuZ3RoPmEubGVuZ3RoLHM9ZS5zdHJ1Y3R1cmVkU3RhdGV8fG51bGwsbz10LnN0cnVjdHVyZWRTdGF0ZXx8bnVsbCxsPWUuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCJ8fHQuc2Vzc2lvbktpbmQ9PT0ic3RydWN0dXJlZCIsYz0hIShlLm1lc3NhZ2VzJiZlLm1lc3NhZ2VzLmxlbmd0aCYmKGZ1bmN0aW9uKCl7dmFyIG09ZS5tZXNzYWdlc1tlLm1lc3NhZ2VzLmxlbmd0aC0xXTtyZXR1cm4gbSYmbS5yb2xlPT09ImFzc2lzdGFudCImJkFycmF5LmlzQXJyYXkobS5jb250ZW50KSYmbS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuX19wcm9jZXNzaW5nfSl9KSgpKSxmPUFycmF5LmlzQXJyYXkoZS5tZXNzYWdlcyk/bD9zcihlLm1lc3NhZ2VzKTplLm1lc3NhZ2VzOltdLGQ9QXJyYXkuaXNBcnJheSh0Lm1lc3NhZ2VzKT9sP3NyKHQubWVzc2FnZXMpOnQubWVzc2FnZXM6W10sdj1kLmxlbmd0aD4wJiYoZnVuY3Rpb24oKXt2YXIgbT1kW2QubGVuZ3RoLTFdO3JldHVybiBtJiZtLnJvbGU9PT0iYXNzaXN0YW50IiYmQXJyYXkuaXNBcnJheShtLmNvbnRlbnQpJiYhbS5jb250ZW50LnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuIGImJmIuX19wcm9jZXNzaW5nfSl9KSgpLGc9ZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIiYmISFzJiZzLmluRmxpZ2h0PT09ITAmJighb3x8by5pbkZsaWdodCE9PSEwKSYmYyYmISFzLmFjdGl2ZVJlcXVlc3RJZCYmISFvJiYhIW8uYWN0aXZlUmVxdWVzdElkJiZvLmFjdGl2ZVJlcXVlc3RJZD09PXMuYWN0aXZlUmVxdWVzdElkJiYhdixoPWYubGVuZ3RoPmQubGVuZ3RofHxmLmxlbmd0aD4wJiZkLmxlbmd0aD4wJiZKU09OLnN0cmluZ2lmeShmW2YubGVuZ3RoLTFdKSE9PUpTT04uc3RyaW5naWZ5KGRbZC5sZW5ndGgtMV0pJiZKU09OLnN0cmluZ2lmeShmKS5sZW5ndGg+SlNPTi5zdHJpbmdpZnkoZCkubGVuZ3RoO3JldHVybiB1JiYoci5vdXRwdXQ9aSksZyYmKHIuc3RhdHVzPWUuc3RhdHVzfHxyLnN0YXR1cyxyLnN0cnVjdHVyZWRTdGF0ZT1PYmplY3QuYXNzaWduKHt9LG98fHt9LHMse2luRmxpZ2h0OiEwfSksci5tZXNzYWdlcz1lLm1lc3NhZ2VzKSxoJiYoci5tZXNzYWdlcz1mKSxlLmlkPT09bi5zZWxlY3RlZElkJiYoZS5wZXJtaXNzaW9uQmxvY2tlZCYmdC5wZXJtaXNzaW9uQmxvY2tlZD09PSExfHxlLnBlcm1pc3Npb25CbG9ja2VkJiYhdC5wZXJtaXNzaW9uQmxvY2tlZCYmKHIucGVybWlzc2lvbkJsb2NrZWQ9ITApLGUucGVuZGluZ0VzY2FsYXRpb24mJiF0LnBlbmRpbmdFc2NhbGF0aW9uJiZ0LnBlcm1pc3Npb25CbG9ja2VkIT09ITEmJihyLnBlbmRpbmdFc2NhbGF0aW9uPWUucGVuZGluZ0VzY2FsYXRpb24pLGUubWVzc2FnZXMmJmUubWVzc2FnZXMubGVuZ3RoPjAmJighdC5tZXNzYWdlc3x8dC5tZXNzYWdlcy5sZW5ndGg9PT0wKSYmKHIubWVzc2FnZXM9ZS5tZXNzYWdlcykpLHJ9ZnVuY3Rpb24gYXQoZSx0LHIpe2lmKGUmJmUubWVzc2FnZXMmJmUubWVzc2FnZXMubGVuZ3RoPjApcmV0dXJuIGUubWVzc2FnZXM7aWYoZSYmZS5zZXNzaW9uS2luZD09PSJzdHJ1Y3R1cmVkIilyZXR1cm5bXTtpZighcilyZXR1cm5bXTt2YXIgaT10eXBlb2YgdD09InN0cmluZyI/dDplJiZlLm91dHB1dHx8IiI7cmV0dXJuIGk/WXAoaSxlJiZlLmNvbW1hbmQpOltdfWZ1bmN0aW9uIEx2KGUpe2lmKCFlfHwhZS5sZW5ndGgpcmV0dXJuIG51bGw7aWYobi5zZWxlY3RlZElkKXt2YXIgdD1lLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1uLnNlbGVjdGVkSWR9KTtyZXR1cm4gdD90LmlkOm51bGx9dmFyIHI9ZS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiBhLnN0YXR1cz09PSJydW5uaW5nIn0pO2lmKHIpcmV0dXJuIHIuaWQ7dmFyIGk9ZS5maW5kKGZ1bmN0aW9uKGEpe3JldHVybiFhLmFyY2hpdmVkfSk7cmV0dXJuIGk/aS5pZDplWzBdLmlkfWZ1bmN0aW9uIHBuKGUpe3ZhciB0PWV8fHt9O3JldHVybiBmZXRjaCgiL2FwaS9zZXNzaW9ucyIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHIuc3RhdHVzPT09NDAxKXtMbygpO3JldHVybn1yZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe3ZhciBpPXJ8fFtdLGE9bmV3IFNldChpLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZH0pKTtPYmplY3Qua2V5cyhuLmRyYWZ0cykuZm9yRWFjaChmdW5jdGlvbihkKXthLmhhcyhkKXx8ZGVsZXRlIG4uZHJhZnRzW2RdfSksbi5zZXNzaW9ucz1pLm1hcChmdW5jdGlvbihkKXt2YXIgdj1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oZyl7cmV0dXJuIGcuaWQ9PT1kLmlkfSk7cmV0dXJuIFR2KHYsZCl9KTt2YXIgdT1MdihuLnNlc3Npb25zKTtpZih1IT09dm9pZCAwJiYobi5zZWxlY3RlZElkPXUpLHZ1KCksb24oKSxuLmJvb3RzdHJhcHBpbmc9ITEseWUoKSxuLm1vZGFsT3BlbilwZSgpO2Vsc2V7dmFyIHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb25zLWxpc3QiKSxvPUdpKCk7aWYocyYmcy5pbm5lckhUTUw9PT1vKXt2YXIgbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1jb3VudCIpO2wmJihsLnRleHRDb250ZW50PVN0cmluZyhuLnNlc3Npb25zLmxlbmd0aCkpfWVsc2V7cyYmKHMuaW5uZXJIVE1MPW8pO3ZhciBsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLWNvdW50Iik7bCYmKGwudGV4dENvbnRlbnQ9U3RyaW5nKG4uc2Vzc2lvbnMubGVuZ3RoKSl9fUxyKCksbi5zZWxlY3RlZElkJiZuLmdpdFN0YXR1c1Nlc3Npb25JZCE9PW4uc2VsZWN0ZWRJZCYmQ24obi5zZWxlY3RlZElkKTt2YXIgYz1Qcm9taXNlLnJlc29sdmUoKTtpZighdC5za2lwU2VsZWN0ZWRPdXRwdXRSZWxvYWQmJm4uc2VsZWN0ZWRJZCljPXZuKG4uc2VsZWN0ZWRJZCk7ZWxzZSBpZihuLnNlbGVjdGVkSWQpe3ZhciBmPW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihkKXtyZXR1cm4gZC5pZD09PW4uc2VsZWN0ZWRJZH0pO3VlKGYpJiYoQnQoe3ByZXNlcnZlU3RpY2tTdGF0ZTohMH0pLGZvKCEwKSl9cmV0dXJuIGMudGhlbihmdW5jdGlvbigpe24uY3Jvc3NTZXNzaW9uUXVldWUubGVuZ3RoPjAmJmRpKCksRHQoKSxwYSgpfSl9KS5jYXRjaChmdW5jdGlvbihyKXt2YXIgaT1yJiZyLm1lc3NhZ2V8fCIiLGE9aT09PSJGYWlsZWQgdG8gZmV0Y2gifHxpPT09Ik5ldHdvcmtFcnJvciB3aGVuIGF0dGVtcHRpbmcgdG8gZmV0Y2ggcmVzb3VyY2UuInx8aT09PSJMb2FkIGZhaWxlZCJ8fC9hYm9ydGVkfGFib3J0ZXJyb3J8bmV0d29ya2Vycm9yfGZhaWxlZCB0byBmZXRjaC9pLnRlc3QoaSk7YXx8Y29uc29sZS5lcnJvcigiW3dhbmRdIGxvYWRTZXNzaW9ucyBmYWlsZWQ6IixyKX0pfXZhciBZYT1udWxsO2Z1bmN0aW9uIEphKCl7WWF8fChZYT1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7WWE9bnVsbCxwZSgpfSwyMDApKX1mdW5jdGlvbiBwZSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1saXN0IiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbi1jb3VudCIpO2UmJihlLmlubmVySFRNTD1HaSgpKSx0JiYodC50ZXh0Q29udGVudD1TdHJpbmcobi5zZXNzaW9ucy5sZW5ndGgpKSx0eXBlb2YgWnQ9PSJmdW5jdGlvbiImJlp0KCksTHIoKSxuLmNyb3NzU2Vzc2lvblF1ZXVlLmxlbmd0aD4wJiZEdCgpfWZ1bmN0aW9uIExyKCl7dmFyIGU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGgpe3JldHVybiBoLmlkPT09bi5zZWxlY3RlZElkfSk7ZXx8KFRuKCExKSxCYSgpLCRzKCkpO3ZhciB0PWU/SXIoZS5jb21tYW5kKToiV2FuZCIscj1lP2NyKGUpOiJcdTVGMDBcdTU5Q0JcdTVCRjlcdThCREQiLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3VtbWFyeS12YWx1ZSIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRlcm1pbmFsLXRpdGxlIiksdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidGVybWluYWwtaW5mbyIpLHM9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnRvcGJhci1zZXNzaW9uLXRpdGxlLCAudG9wYmFyLXRhZ2xpbmUiKTtzJiZlJiYocy5jbGFzc0xpc3QucmVtb3ZlKCJ0b3BiYXItdGFnbGluZSIpLHMuY2xhc3NMaXN0LmFkZCgidG9wYmFyLXNlc3Npb24tdGl0bGUiKSxzLnRleHRDb250ZW50PWUudGl0bGV8fElyKGUuY29tbWFuZCkscy5zZXRBdHRyaWJ1dGUoInRpdGxlIixlLmRlc2NyaXB0aW9ufHxlLmNvbW1hbmR8fCIiKSk7dmFyIG89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQiKSxsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJvdXRwdXQiKSxjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaGF0LW91dHB1dCIpLGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInN0b3AtYnV0dG9uIik7aSYmaS50ZXh0Q29udGVudCE9PXQmJihpLnRleHRDb250ZW50PXQpLGEmJmEudGV4dENvbnRlbnQhPT10JiYoYS50ZXh0Q29udGVudD10KSx1JiYodS50ZXh0Q29udGVudD1lP3IrIiBceEI3ICIrd3YoZSk6cik7dmFyIGQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24ta2luZC1kaXNwbGF5Iiksdj1lP0Z2KGUpOiJcdTdFQzhcdTdBRUYiO2QmJmQudGV4dENvbnRlbnQhPT12JiYoZC50ZXh0Q29udGVudD12KSxhcygpLCFuLnRlcm1pbmFsJiZsJiZlJiZZbigpLG4udGVybWluYWwmJmwmJiFsLmNvbnRhaW5zKG4udGVybWluYWwuZWxlbWVudCkmJihncigpLFluKCkpLGV8fChuLnRlcm1pbmFsU2Vzc2lvbklkPW51bGwsbi50ZXJtaW5hbE91dHB1dD0iIixuLnRlcm1pbmFsT3V0cHV0TWFya2VyPTApLG4udGVybWluYWwmJmUmJm4uY3VycmVudFZpZXc9PT0idGVybWluYWwiJiZtdCgidmlldyIpO3ZhciBnPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1wYW5lbCIpO2U/KG8mJm8uY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksbCYmbC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxjJiZjLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGcmJmcuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpOihvJiZvLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGwmJmwuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksYyYmYy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxmJiZmLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGcmJmcuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIikpLEJpKCksWG4oeXQoKSksa2koKSxEYSgpfWZ1bmN0aW9uIHZuKGUpe24uY2hhdFJlbmRlclRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uY2hhdFJlbmRlclRpbWVyKSxuLmNoYXRSZW5kZXJUaW1lcj1udWxsKTt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaWQ9PT1lfSkscj0iL2FwaS9zZXNzaW9ucy8iK2U7cmV0dXJuIEN2KHQpJiYocis9Ij9mb3JtYXQ9Y2hhdCIpLGZldGNoKHIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaS5lcnJvcil7bi5zZWxlY3RlZElkPT09ZSYmKG4uc2VsZWN0ZWRJZD1udWxsLHllKCkpLHBuKCk7cmV0dXJufWlmKFooaSksTHIoKSxuLnRlcm1pbmFsJiZlPT09bi5zZWxlY3RlZElkJiZpLm91dHB1dCE9PXZvaWQgMCl7dmFyIGE9ISFuLndzJiYobi53cy5yZWFkeVN0YXRlPT09V2ViU29ja2V0Lk9QRU58fG4ud3MucmVhZHlTdGF0ZT09PVdlYlNvY2tldC5DT05ORUNUSU5HKTthP2l0KCJzZXNzaW9uLXN3aXRjaCIpOihhaShlLGkub3V0cHV0LHttb2RlOiJhcHBlbmQifSksaXQoInNlc3Npb24tc3dpdGNoIix7Zm9yY2VSZXBsYXk6ITB9KSl9dmFyIHU9bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKHMpe3JldHVybiBzLmlkPT09ZX0pO24uY3VycmVudE1lc3NhZ2VzPVZlKHUsYXQodSxpLm91dHB1dCwhMSkpLHR0KCExKX0pfWZ1bmN0aW9uIHp0KGUpe3ZhciB0PW4uc2Vzc2lvbnMuZmluZChmdW5jdGlvbihzKXtyZXR1cm4gcy5pZD09PWV9KTtpZih0KXtuLnNlbGVjdGVkSWQhPT1lJiZncigpLG4uc2VsZWN0ZWRJZD1lLHllKCksbi50b29sQ29udGVudENhY2hlPXt9LG4ubWVzc2FnZVF1ZXVlPVtdLG4ucGVuZGluZ01lc3NhZ2VzPVtdLFVyKHQpLHZ1KCksb24oKSxCdCgpLG4uY3VycmVudE1lc3NhZ2VzPVtdLG4uY2hhdFJlbmRlclRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uY2hhdFJlbmRlclRpbWVyKSxuLmNoYXRSZW5kZXJUaW1lcj1udWxsKTt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidG9kby1wcm9ncmVzcyIpO3ImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7dmFyIGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnN0cnVjdHVyZWQtc3RhdHVzLWJhciIpO2kmJmkucmVtb3ZlKCksbi5fc3RhdHVzQmFyVGltZXJJZCYmKGNsZWFySW50ZXJ2YWwobi5fc3RhdHVzQmFyVGltZXJJZCksbi5fc3RhdHVzQmFyVGltZXJJZD1udWxsKSxuLl9zdGF0dXNCYXJTdGFydFRpbWU9MDt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuaW5wdXQtY29tcG9zZXIiKTthJiZhLmNsYXNzTGlzdC5yZW1vdmUoImluLWZsaWdodCIpO3ZhciB1PXQ7bi5wcmVmZXJyZWRDb21tYW5kPWh0KCksbi5jaGF0TW9kZT1XdCgiY2xhdWRlIix1JiZ1Lm1vZGU/dS5tb2RlOm4uY2hhdE1vZGUpLG4udGVybWluYWxJbnRlcmFjdGl2ZSYmdSYmdS5zdGF0dXMhPT0icnVubmluZyImJlRuKCExKSxwZSgpLENyKGUpLG4uZmlsZVBhbmVsT3BlbiYmKHpsKHUpLE90KCkpLHZuKGUpLnRoZW4oZnVuY3Rpb24oKXtqdCghMCl9KSxMbihlKSxuLmdpdFN0YXR1cz1udWxsLG4uZ2l0U3RhdHVzU2Vzc2lvbklkPW51bGwsWWkoKSxDbihlLHtmb3JjZTohMH0pfX1mdW5jdGlvbiBNdigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1kcmF3ZXIiKSx0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWxheW91dCIpLHI9TmUoKSxpPSEhbi5zaWRlYmFyUGlubmVkJiYhIW4uc2lkZWJhckNvbGxhcHNlZCxhPWl8fCFyJiYoISFuLnNpZGViYXJQaW5uZWR8fCEhbi5zZXNzaW9uc0RyYXdlck9wZW4pO2UmJihlLmNsYXNzTGlzdC50b2dnbGUoInBpbm5lZCIsYSksZS5jbGFzc0xpc3QudG9nZ2xlKCJjb2xsYXBzZWQiLGkpKSx0JiYodC5jbGFzc0xpc3QudG9nZ2xlKCJzaWRlYmFyLXBpbm5lZCIsYSksdC5jbGFzc0xpc3QudG9nZ2xlKCJzaWRlYmFyLWNvbGxhcHNlZCIsaSkpO3ZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzaWRlYmFyLXBpbi1idG4iKTt1JiYodS5jbGFzc0xpc3QudG9nZ2xlKCJwaW5uZWQiLCEhbi5zaWRlYmFyUGlubmVkKSx1LnRpdGxlPW4uc2lkZWJhclBpbm5lZD8iXHU1REYyXHU1NkZBXHU1QjlBXHU1RTM4XHU5QTdCXHVGRjA4XHU3MEI5XHU1MUZCXHU4OUUzXHU5NjY0XHU5NTAxXHU1QjlBXHVGRjA5IjoiXHU1NkZBXHU1QjlBXHU0RkE3XHU2ODBGXHU1RTM4XHU5QTdCIix1LnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsbi5zaWRlYmFyUGlubmVkPyJcdTg5RTNcdTk2NjRcdTU2RkFcdTVCOUFcdTVFMzhcdTlBN0IiOiJcdTU2RkFcdTVCOUFcdTRGQTdcdTY4MEZcdTVFMzhcdTlBN0IiKSx1LnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIixuLnNpZGViYXJQaW5uZWQ/InRydWUiOiJmYWxzZSIpKX1mdW5jdGlvbiBNcigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1kcmF3ZXIiKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9ucy1kcmF3ZXItYmFja2Ryb3AiKSxyPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWxheW91dCIpO2UmJmUuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsbi5zZXNzaW9uc0RyYXdlck9wZW4pLHQmJnQuY2xhc3NMaXN0LnRvZ2dsZSgib3BlbiIsaHUoKSksciYmci5jbGFzc0xpc3QudG9nZ2xlKCJzaWRlYmFyLW9wZW4iLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2Vzc2lvbnMtdG9nZ2xlLWJ1dHRvbiIpO2kmJmkuY2xhc3NMaXN0LnRvZ2dsZSgiYWN0aXZlIixuLnNlc3Npb25zRHJhd2VyT3BlbiksTXYoKX1mdW5jdGlvbiBPdigpe3ZhciBlPU5lKCk7aWYoIWUpe3ZhciB0PW4uc2lkZWJhclBpbm5lZD8hMTohbi5zZXNzaW9uc0RyYXdlck9wZW47bi5zZXNzaW9uc0RyYXdlck9wZW49dCx0JiYobi5zaWRlYmFyQ29sbGFwc2VkPSExLFNlKCJ3YW5kLXNpZGViYXItY29sbGFwc2VkIiwhMSkpLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsbi5zZXNzaW9uc0RyYXdlck9wZW4pLHJuKCksUHIoKTtyZXR1cm59aWYobi5zZXNzaW9uc0RyYXdlck9wZW49IW4uc2Vzc2lvbnNEcmF3ZXJPcGVuLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsbi5zZXNzaW9uc0RyYXdlck9wZW4pLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuKXtuLmZpbGVQYW5lbE9wZW49ITE7dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLWZpbGUtcGFuZWwtb3BlbiIsImZhbHNlIil9Y2F0Y2h7fX1ybigpfWZ1bmN0aW9uIE9yKCl7dmFyIGU9TmUoKTtpZighZSl7aWYoIW4uc2lkZWJhclBpbm5lZCYmIW4uc2Vzc2lvbnNEcmF3ZXJPcGVuKXJldHVybjt4cigpLG4uc2lkZWJhclBpbm5lZD0hMSxuLnNlc3Npb25zRHJhd2VyT3Blbj0hMSxTZSgid2FuZC1zaWRlYmFyLXBpbm5lZCIsITEpLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITEpLHJuKCksUHIoKTtyZXR1cm59bi5zZXNzaW9uc0RyYXdlck9wZW4mJih4cigpLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSExLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITEpLHJuKCkpfWZ1bmN0aW9uIFB2KCl7aWYoTmUoKSl7T3IoKTtyZXR1cm59bi5zaWRlYmFyUGlubmVkfHxuLnNpZGViYXJDb2xsYXBzZWR8fCFuLnNlc3Npb25zRHJhd2VyT3Blbnx8KHhyKCksbi5zZXNzaW9uc0RyYXdlck9wZW49ITEsU2UoIndhbmQtc2lkZWJhci1vcGVuIiwhMSkscm4oKSxQcigpKX1mdW5jdGlvbiBKbyhlKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29tcG9zZXItcGx1cy1wb3BvdmVyIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXR0YWNoLWJ0biIpO24ucGx1c1BvcG92ZXJPcGVuPSEhZSx0JiZ0LmNsYXNzTGlzdC50b2dnbGUoImhpZGRlbiIsIWUpLHImJihyLmNsYXNzTGlzdC50b2dnbGUoImFjdGl2ZSIsISFlKSxyLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsZT8idHJ1ZSI6ImZhbHNlIikpfWZ1bmN0aW9uIHF2KCl7Sm8oIW4ucGx1c1BvcG92ZXJPcGVuKX1mdW5jdGlvbiBBaSgpe24ucGx1c1BvcG92ZXJPcGVuJiZKbyghMSl9ZnVuY3Rpb24gVnQoKXtOZSgpJiZuLnNlc3Npb25zRHJhd2VyT3BlbiYmT3IoKX1mdW5jdGlvbiBQcigpe3ZhciBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWxheW91dCIpO2lmKGUpe3ZhciB0PWZ1bmN0aW9uKHIpe3IucHJvcGVydHlOYW1lPT09InBhZGRpbmctbGVmdCImJihlLnJlbW92ZUV2ZW50TGlzdGVuZXIoInRyYW5zaXRpb25lbmQiLHQpLHF0KCEwKSl9O2UuYWRkRXZlbnRMaXN0ZW5lcigidHJhbnNpdGlvbmVuZCIsdCl9c2V0VGltZW91dChmdW5jdGlvbigpe3F0KCEwKX0sMzUwKX12YXIgVXQ9bnVsbDtmdW5jdGlvbiBIdigpe3JldHVybiBVdCYmZG9jdW1lbnQuYm9keS5jb250YWlucyhVdCl8fChVdD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKSxVdC5jbGFzc05hbWU9InNpZGViYXItdGlsZS1idWJibGUiLFV0LnNldEF0dHJpYnV0ZSgicm9sZSIsInRvb2x0aXAiKSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKFV0KSksVXR9ZnVuY3Rpb24gWnQoKXtVdCYmVXQuY2xhc3NMaXN0LnJlbW92ZSgidmlzaWJsZSIpfWZ1bmN0aW9uIF92KGUsdCl7aWYoIXQpe1p0KCk7cmV0dXJufXZhciByPUh2KCk7ci50ZXh0Q29udGVudD10Lmxlbmd0aD40MDA/dC5zbGljZSgwLDQwMCkrIlx1MjAyNiI6dDt2YXIgaT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO3IuY2xhc3NMaXN0LmFkZCgidmlzaWJsZSIpO3ZhciBhPXIuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksdT1pLnRvcCtpLmhlaWdodC8yLHM9dS1hLmhlaWdodC8yLG89OCxsPXdpbmRvdy5pbm5lckhlaWdodC1hLmhlaWdodC04O3M8byYmKHM9bykscz5sJiYocz1NYXRoLm1heChvLGwpKSxyLnN0eWxlLmxlZnQ9aS5yaWdodCsxMisicHgiLHIuc3R5bGUudG9wPXMrInB4IixyLnN0eWxlLnNldFByb3BlcnR5KCItLWJ1YmJsZS10YWlsLXkiLHUtcysicHgiKX1mdW5jdGlvbiBOdihlKXtpZihlLmRhdGFzZXQuY29sbGFwc2VkU2Vzc2lvbklkKXt2YXIgdD1uLnNlc3Npb25zLmZpbmQoZnVuY3Rpb24oYSl7cmV0dXJuIGEuaWQ9PT1lLmRhdGFzZXQuY29sbGFwc2VkU2Vzc2lvbklkfSk7aWYoIXQpcmV0dXJuIiI7dmFyIHI9Q2ModCk7cmV0dXJuIHJ8fHQuc3VtbWFyeXx8dC5jb21tYW5kfHwiIn1pZihlLmRhdGFzZXQuY29sbGFwc2VkSGlzdG9yeUlkKXt2YXIgaT1uLmNsYXVkZUhpc3RvcnkuZmluZChmdW5jdGlvbihhKXtyZXR1cm4gYS5jbGF1ZGVTZXNzaW9uSWQ9PT1lLmRhdGFzZXQuY29sbGFwc2VkSGlzdG9yeUlkfSk7aWYoaSYmaS5maXJzdFVzZXJNZXNzYWdlKXJldHVybiBpLmZpcnN0VXNlck1lc3NhZ2V9cmV0dXJuIiJ9ZnVuY3Rpb24ganYoZSl7dmFyIHQ9ZS50YXJnZXQ7aWYoISghdHx8ISh0IGluc3RhbmNlb2YgRWxlbWVudCkpKXt2YXIgcj10LmNsb3Nlc3QoIi5zaWRlYmFyLWNvbGxhcHNlZC10aWxlIik7aWYoIXIpe1p0KCk7cmV0dXJufXZhciBpPU52KHIpO2lmKCFpKXtadCgpO3JldHVybn1fdihyLGkpfX1mdW5jdGlvbiBSdihlKXt2YXIgdD1lLnJlbGF0ZWRUYXJnZXQ7dCYmdCBpbnN0YW5jZW9mIEVsZW1lbnQmJnQuY2xvc2VzdCgiLnNpZGViYXItY29sbGFwc2VkLXRpbGUiKXx8WnQoKX1mdW5jdGlvbiBXdigpe3ZhciBlPU5lKCk7bi5zaWRlYmFyUGlubmVkfHwobi5zaWRlYmFyUGlubmVkPSEwLFNlKCJ3YW5kLXNpZGViYXItcGlubmVkIiwhMCkpLG4uc2lkZWJhckNvbGxhcHNlZD0hbi5zaWRlYmFyQ29sbGFwc2VkLFNlKCJ3YW5kLXNpZGViYXItY29sbGFwc2VkIixuLnNpZGViYXJDb2xsYXBzZWQpLG4uc2lkZWJhckNvbGxhcHNlZD9uLnNlc3Npb25zRHJhd2VyT3Blbj0hMTplPyhuLnNpZGViYXJQaW5uZWQ9ITEsbi5zZXNzaW9uc0RyYXdlck9wZW49ITAsU2UoIndhbmQtc2lkZWJhci1waW5uZWQiLCExKSk6bi5zZXNzaW9uc0RyYXdlck9wZW49ITAsU2UoIndhbmQtc2lkZWJhci1vcGVuIixuLnNlc3Npb25zRHJhd2VyT3Blbikscm4oKSxwZSgpLFZ2KCksWnQoKSxQcigpfWZ1bmN0aW9uIHp2KCl7TmUoKXx8KG4uc2lkZWJhclBpbm5lZD0hbi5zaWRlYmFyUGlubmVkLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSEwLFNlKCJ3YW5kLXNpZGViYXItcGlubmVkIixuLnNpZGViYXJQaW5uZWQpLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITApLHJuKCksUHIoKSl9ZnVuY3Rpb24gVnYoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2lkZWJhci1jb2xsYXBzZS1idG4iKTtpZihlKXt2YXIgdD0hIW4uc2lkZWJhclBpbm5lZCYmISFuLnNpZGViYXJDb2xsYXBzZWQ7ZS5jbGFzc0xpc3QudG9nZ2xlKCJjb2xsYXBzZWQiLHQpLGUudGl0bGU9dD8iXHU1QzU1XHU1RjAwXHU0RkE3XHU2ODBGIjoiXHU2NTM2XHU4RDc3XHU0RTNBXHU3QTg0XHU2NzYxIixlLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsdD8iXHU1QzU1XHU1RjAwXHU0RkE3XHU2ODBGIjoiXHU2NTM2XHU4RDc3XHU0RTNBXHU3QTg0XHU2NzYxIiksZS5pbm5lckhUTUw9dD8nPHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi40IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cG9seWxpbmUgcG9pbnRzPSIxMCA2IDE2IDEyIDEwIDE4Ii8+PGxpbmUgeDE9IjIwIiB5MT0iNSIgeDI9IjIwIiB5Mj0iMTkiLz48L3N2Zz4nOic8c3ZnIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyLjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPjxwb2x5bGluZSBwb2ludHM9IjE0IDYgOCAxMiAxNCAxOCIvPjxsaW5lIHgxPSI0IiB5MT0iNSIgeDI9IjQiIHkyPSIxOSIvPjwvc3ZnPid9fWZ1bmN0aW9uIFV2KGUpe2lmKGUpe2Uuc3R5bGUubGVmdD0iIixlLnN0eWxlLnJpZ2h0PSIiO3ZhciB0PWUub2Zmc2V0UGFyZW50fHxlLnBhcmVudEVsZW1lbnQ7aWYodCl7dmFyIHI9OCxpPXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksYT1lLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLHU9d2luZG93LmlubmVyV2lkdGg7YS5sZWZ0PHI/KGUuc3R5bGUucmlnaHQ9ImF1dG8iLGUuc3R5bGUubGVmdD1yLWkubGVmdCsicHgiKTphLnJpZ2h0PnUtciYmKGUuc3R5bGUubGVmdD0iYXV0byIsZS5zdHlsZS5yaWdodD1pLnJpZ2h0LSh1LXIpKyJweCIpfX19ZnVuY3Rpb24gR2EoKXtlcigpLG4ubW9kYWxPcGVuPSEwLG4uc2Vzc2lvbnNEcmF3ZXJPcGVuPSExLFNlKCJ3YW5kLXNpZGViYXItb3BlbiIsITEpLE1yKCk7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNlc3Npb24tbW9kYWwiKTtlJiYoZS5fd2FuZENsb3NlVGltZXImJihjbGVhclRpbWVvdXQoZS5fd2FuZENsb3NlVGltZXIpLGUuX3dhbmRDbG9zZVRpbWVyPW51bGwpLGUuY2xhc3NMaXN0LnJlbW92ZSgiY2xvc2luZyIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksbi5sYXN0Rm9jdXNlZEVsZW1lbnQ9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCxuLnNlc3Npb25Ub29sPWh0KCksbi5wcmVmZXJyZWRDb21tYW5kPW4uc2Vzc2lvblRvb2wsbi5zZXNzaW9uQ3JlYXRlS2luZD0ic3RydWN0dXJlZCIsbi5zZXNzaW9uQ3JlYXRlV29ya3RyZWU9ITEsbi5tb2RlVmFsdWU9V3Qobi5zZXNzaW9uVG9vbCxuLm1vZGVWYWx1ZXx8bi5jaGF0TW9kZSksVHIoKSxnbSgpLHNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW9kZS1jYXJkcyIpO3QmJnQuZm9jdXMoKX0sMjApLHhpKGUpKX1mdW5jdGlvbiBtbigpe24ubW9kYWxPcGVuPSExO3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7ZSYmKG4uZm9jdXNUcmFwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLG4uZm9jdXNUcmFwSGFuZGxlciksbi5mb2N1c1RyYXBIYW5kbGVyPW51bGwpLG4ubGFzdEZvY3VzZWRFbGVtZW50JiZ0eXBlb2Ygbi5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXM9PSJmdW5jdGlvbiImJm4ubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzKCksUWEoZSkpLG5yKCl9ZnVuY3Rpb24gUWEoZSl7aWYoZSYmIWUuY2xhc3NMaXN0LmNvbnRhaW5zKCJoaWRkZW4iKSl7dmFyIHQ9ITE7dHJ5e3Q9d2luZG93Lm1hdGNoTWVkaWEmJndpbmRvdy5tYXRjaE1lZGlhKCIocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSIpLm1hdGNoZXN9Y2F0Y2h7fWlmKHR8fGRvY3VtZW50LmhpZGRlbil7ZS5jbGFzc0xpc3QucmVtb3ZlKCJjbG9zaW5nIiksZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTtyZXR1cm59ZS5fd2FuZENsb3NlVGltZXImJihjbGVhclRpbWVvdXQoZS5fd2FuZENsb3NlVGltZXIpLGUuX3dhbmRDbG9zZVRpbWVyPW51bGwpLGUuY2xhc3NMaXN0LmFkZCgiY2xvc2luZyIpLGUuX3dhbmRDbG9zZVRpbWVyPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLmNsYXNzTGlzdC5yZW1vdmUoImNsb3NpbmciKSxlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUuX3dhbmRDbG9zZVRpbWVyPW51bGx9LDE3MCl9fWZ1bmN0aW9uIHhpKGUpe24uZm9jdXNUcmFwSGFuZGxlciYmZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsbi5mb2N1c1RyYXBIYW5kbGVyKTt2YXIgdD0nYnV0dG9uOm5vdChbZGlzYWJsZWRdKSwgaW5wdXQ6bm90KFtkaXNhYmxlZF0pLCBzZWxlY3Q6bm90KFtkaXNhYmxlZF0pLCB0ZXh0YXJlYTpub3QoW2Rpc2FibGVkXSksIGFbaHJlZl0sIFt0YWJpbmRleF06bm90KFt0YWJpbmRleD0iLTEiXSknO24uZm9jdXNUcmFwSGFuZGxlcj1mdW5jdGlvbihyKXtpZihyLmtleT09PSJUYWIiKXt2YXIgaT1lLnF1ZXJ5U2VsZWN0b3JBbGwodCksYT1pWzBdLHU9aVtpLmxlbmd0aC0xXTshYXx8IXV8fChyLnNoaWZ0S2V5P2RvY3VtZW50LmFjdGl2ZUVsZW1lbnQ9PT1hJiYoci5wcmV2ZW50RGVmYXVsdCgpLHUuZm9jdXMoKSk6ZG9jdW1lbnQuYWN0aXZlRWxlbWVudD09PXUmJihyLnByZXZlbnREZWZhdWx0KCksYS5mb2N1cygpKSl9fSxkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixuLmZvY3VzVHJhcEhhbmRsZXIpfWZ1bmN0aW9uIEt2KCl7cmV0dXJuIG4uYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZCYmbi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGUpe3JldHVybiBlLmlkPT09bi5hY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkfSl8fG51bGx9ZnVuY3Rpb24gcXIoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtY29udGVudCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLWNvbmZpcm0tYnV0dG9uIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtZXJyb3IiKSxpPUt2KCksYT1uLndvcmt0cmVlTWVyZ2VDaGVja1Jlc3VsdDtpZighKCFlfHwhdCkpe2lmKCFpfHwhaS53b3JrdHJlZSl7ZS5pbm5lckhUTUw9JzxwIGNsYXNzPSJmaWVsZC1oaW50Ij5cdTY3MkFcdTYyN0VcdTUyMzBcdTUzRUZcdTU0MDhcdTVFNzZcdTc2ODQgd29ya3RyZWUgXHU0RjFBXHU4QkREXHUzMDAyPC9wPicsdC5kaXNhYmxlZD0hMDtyZXR1cm59ciYmKG4ud29ya3RyZWVNZXJnZUVycm9yP3plKHIsbi53b3JrdHJlZU1lcmdlRXJyb3IpOnNpKHIpKTt2YXIgdT1bJzxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLXJvdyI+PHNwYW4+XHU2NzY1XHU2RTkwXHU1MjA2XHU2NTJGPC9zcGFuPjxzdHJvbmc+JytwKGkud29ya3RyZWUuYnJhbmNofHwiLSIpKyI8L3N0cm9uZz48L2Rpdj4iLCc8ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1yb3ciPjxzcGFuPlx1NURFNVx1NEY1Q1x1NzZFRVx1NUY1NTwvc3Bhbj48c3Ryb25nPicrcChpLndvcmt0cmVlLnBhdGh8fCItIikrIjwvc3Ryb25nPjwvZGl2PiJdO2E/KHUucHVzaCgnPGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2Utcm93Ij48c3Bhbj5cdTc2RUVcdTY4MDdcdTUyMDZcdTY1MkY8L3NwYW4+PHN0cm9uZz4nK3AoYS50YXJnZXRCcmFuY2h8fCItIikrIjwvc3Ryb25nPjwvZGl2PiIpLHUucHVzaCgnPGRpdiBjbGFzcz0id29ya3RyZWUtbWVyZ2Utcm93Ij48c3Bhbj5cdTVGODVcdTU0MDhcdTVFNzZcdTYzRDBcdTRFQTQ8L3NwYW4+PHN0cm9uZz4nK3AoU3RyaW5nKGEuYWhlYWRDb3VudHx8MCkpKyI8L3N0cm9uZz48L2Rpdj4iKSx1LnB1c2goJzxkaXYgY2xhc3M9Indvcmt0cmVlLW1lcmdlLXJvdyI+PHNwYW4+XHU2NzJBXHU2M0QwXHU0RUE0XHU2NTM5XHU1MkE4PC9zcGFuPjxzdHJvbmc+JytwKGEuaGFzVW5jb21taXR0ZWRDaGFuZ2VzPyJcdTY3MDkiOiJcdTY1RTAiKSsiPC9zdHJvbmc+PC9kaXY+IiksdS5wdXNoKCc8ZGl2IGNsYXNzPSJ3b3JrdHJlZS1tZXJnZS1yb3ciPjxzcGFuPlx1NTFCMlx1N0E4MVx1OThDRVx1OTY2OTwvc3Bhbj48c3Ryb25nPicrcChhLmhhc0NvbmZsaWN0cz8iXHU2NzA5IjoiXHU2NUUwIikrIjwvc3Ryb25nPjwvZGl2PiIpLGEucmVhc29uJiZ1LnB1c2goJzxwIGNsYXNzPSJmaWVsZC1oaW50Ij4nK3AoYS5yZWFzb24pKyI8L3A+IikpOm4ud29ya3RyZWVNZXJnZUxvYWRpbmcmJnUucHVzaCgnPHAgY2xhc3M9ImZpZWxkLWhpbnQiPlx1NkI2M1x1NTcyOFx1NjhDMFx1NjdFNSB3b3JrdHJlZSBcdTU0MDhcdTVFNzZcdTcyQjZcdTYwMDFcdTIwMjY8L3A+JyksZS5pbm5lckhUTUw9dS5qb2luKCIiKSx0LmRpc2FibGVkPW4ud29ya3RyZWVNZXJnZUxvYWRpbmd8fG4ud29ya3RyZWVNZXJnZVN1Ym1pdHRpbmd8fCFhfHxhLm9rIT09ITAsdC50ZXh0Q29udGVudD1uLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nPyJcdTU0MDhcdTVFNzZcdTRFMkQuLi4iOiJcdTc4NkVcdThCQTRcdTU0MDhcdTVFNzZcdTVFNzZcdTZFMDVcdTc0MDYifX1mdW5jdGlvbiBHbyhlKXtuLmFjdGl2ZVdvcmt0cmVlTWVyZ2VTZXNzaW9uSWQ9ZSxuLndvcmt0cmVlTWVyZ2VDaGVja1Jlc3VsdD1udWxsLG4ud29ya3RyZWVNZXJnZUxvYWRpbmc9ITAsbi53b3JrdHJlZU1lcmdlU3VibWl0dGluZz0hMSxuLndvcmt0cmVlTWVyZ2VFcnJvcj0iIixtbigpLGVyKCk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIndvcmt0cmVlLW1lcmdlLW1vZGFsIik7dCYmKHQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksbi5sYXN0Rm9jdXNlZEVsZW1lbnQ9ZG9jdW1lbnQuYWN0aXZlRWxlbWVudCx4aSh0KSkscXIoKSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3dvcmt0cmVlL21lcmdlL2NoZWNrIix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2lmKHImJnIuZXJyb3IpdGhyb3cgbmV3IEVycm9yKHIuZXJyb3IpO3ImJnIuc2Vzc2lvbiYmWihyLnNlc3Npb24pLG4ud29ya3RyZWVNZXJnZUNoZWNrUmVzdWx0PXIucmVzdWx0fHxudWxsLG4ud29ya3RyZWVNZXJnZUVycm9yPSIifSkuY2F0Y2goZnVuY3Rpb24ocil7bi53b3JrdHJlZU1lcmdlRXJyb3I9ciYmci5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2OEMwXHU2N0U1IHdvcmt0cmVlIFx1NTQwOFx1NUU3Nlx1NzJCNlx1NjAwMVx1MzAwMiJ9KS5maW5hbGx5KGZ1bmN0aW9uKCl7bi53b3JrdHJlZU1lcmdlTG9hZGluZz0hMSxxcigpfSl9ZnVuY3Rpb24gWm4oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgid29ya3RyZWUtbWVyZ2UtbW9kYWwiKTtuLmFjdGl2ZVdvcmt0cmVlTWVyZ2VTZXNzaW9uSWQ9bnVsbCxuLndvcmt0cmVlTWVyZ2VDaGVja1Jlc3VsdD1udWxsLG4ud29ya3RyZWVNZXJnZUxvYWRpbmc9ITEsbi53b3JrdHJlZU1lcmdlU3VibWl0dGluZz0hMSxuLndvcmt0cmVlTWVyZ2VFcnJvcj0iIixlJiZlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLG4uZm9jdXNUcmFwSGFuZGxlciYmKGRvY3VtZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoImtleWRvd24iLG4uZm9jdXNUcmFwSGFuZGxlciksbi5mb2N1c1RyYXBIYW5kbGVyPW51bGwpLG4ubGFzdEZvY3VzZWRFbGVtZW50JiZ0eXBlb2Ygbi5sYXN0Rm9jdXNlZEVsZW1lbnQuZm9jdXM9PSJmdW5jdGlvbiImJm4ubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzKCl9ZnVuY3Rpb24gWXYoKXshbi5hY3RpdmVXb3JrdHJlZU1lcmdlU2Vzc2lvbklkfHxuLndvcmt0cmVlTWVyZ2VTdWJtaXR0aW5nfHwobi53b3JrdHJlZU1lcmdlU3VibWl0dGluZz0hMCxuLndvcmt0cmVlTWVyZ2VFcnJvcj0iIixxcigpLGZldGNoKCIvYXBpL3Nlc3Npb25zLyIrZW5jb2RlVVJJQ29tcG9uZW50KG4uYWN0aXZlV29ya3RyZWVNZXJnZVNlc3Npb25JZCkrIi93b3JrdHJlZS9tZXJnZSIse21ldGhvZDoiUE9TVCIsY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe30pfSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gZS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGUpe2lmKGUmJmUuZXJyb3IpdGhyb3cgbmV3IEVycm9yKGUuZXJyb3IpO3JldHVybiBlJiZlLnNlc3Npb24mJlooZS5zZXNzaW9uKSxrKCJcdTVERjJcdTU0MDhcdTVFNzZcdTUyMzAgIitwKGUucmVzdWx0JiZlLnJlc3VsdC50YXJnZXRCcmFuY2h8fCJcdTRFM0JcdTUyMDZcdTY1MkYiKSsoZS5yZXN1bHQmJmUucmVzdWx0LmNsZWFudXBEb25lPT09ITE/Ilx1RkYwQ1x1NEY0Nlx1NURFNVx1NEY1Q1x1NjgxMVx1NUY4NVx1NkUwNVx1NzQwNlx1MzAwMiI6Ilx1MzAwMiIpLCJpbmZvIiksWm4oKSxSdCgpfSkuY2F0Y2goZnVuY3Rpb24oZSl7bi53b3JrdHJlZU1lcmdlRXJyb3I9ZSYmZS5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU1NDA4XHU1RTc2IHdvcmt0cmVlXHUzMDAyIixxcigpfSkuZmluYWxseShmdW5jdGlvbigpe24ud29ya3RyZWVNZXJnZVN1Ym1pdHRpbmc9ITEscXIoKX0pKX1mdW5jdGlvbiBRbyhlKXtmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3dvcmt0cmVlL2NsZWFudXAiLHttZXRob2Q6IlBPU1QiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYodCYmdC5lcnJvcil0aHJvdyBuZXcgRXJyb3IodC5lcnJvcik7cmV0dXJuIHQmJnQuc2Vzc2lvbiYmWih0LnNlc3Npb24pLGsoIlx1NURGMlx1NUI4Q1x1NjIxMCB3b3JrdHJlZSBcdTZFMDVcdTc0MDZcdTMwMDIiLCJpbmZvIiksUnQoKX0pLmNhdGNoKGZ1bmN0aW9uKHQpe2sodCYmdC5tZXNzYWdlfHwiXHU2NUUwXHU2Q0Q1XHU2RTA1XHU3NDA2IHdvcmt0cmVlXHUzMDAyIiwiZXJyb3IiKX0pfWZ1bmN0aW9uIEp2KCl7bW4oKTt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbW9kYWwiKTtpZihlKXtlLl93YW5kQ2xvc2VUaW1lciYmKGNsZWFyVGltZW91dChlLl93YW5kQ2xvc2VUaW1lciksZS5fd2FuZENsb3NlVGltZXI9bnVsbCksZS5jbGFzc0xpc3QucmVtb3ZlKCJjbG9zaW5nIiksZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxuLmxhc3RGb2N1c2VkRWxlbWVudD1kb2N1bWVudC5hY3RpdmVFbGVtZW50O3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuZXctcGFzc3dvcmQiKSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maXJtLXBhc3N3b3JkIik7dCYmKHQudmFsdWU9IiIpLHImJihyLnZhbHVlPSIiKSwkbygpLHhpKGUpLFF2KCksJGEoImFib3V0IiksZW0oKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW5vdGlmLXNvdW5kIiksYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW5vdGlmLWJ1YmJsZSIpO2kmJihpLmNoZWNrZWQ9bi5ub3RpZlNvdW5kKSxhJiYoYS5jaGVja2VkPW4ubm90aWZCdWJibGUpO3ZhciB1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctbm90aWYtdm9sdW1lIikscz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW5vdGlmLXZvbHVtZS12YWwiKTtpZih1KXt1LnZhbHVlPW4ubm90aWZWb2x1bWUscyYmKHMudGV4dENvbnRlbnQ9bi5ub3RpZlZvbHVtZSsiJSIpO3RyeXt1LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIse2J1YmJsZXM6ITB9KSl9Y2F0Y2h7fX12YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibm90aWYtdm9sdW1lLWZpZWxkIik7aWYobyYmKG8uc3R5bGUuZGlzcGxheT1uLm5vdGlmU291bmQ/IiI6Im5vbmUiKSxobigpLHR5cGVvZiBXYW5kTmF0aXZlPCJ1IiYmdHlwZW9mIFdhbmROYXRpdmUuZ2V0QXBwSWNvbj09ImZ1bmN0aW9uIil0cnl7ZWwoV2FuZE5hdGl2ZS5nZXRBcHBJY29uKCl8fCJzaG9ydGhhaXIiKX1jYXRjaHt9aWYoamUmJnR5cGVvZiBXYW5kTmF0aXZlLmdldE5vdGlmaWNhdGlvblNvdW5kPT0iZnVuY3Rpb24iKXRyeXt2YXIgbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmF0aXZlLXNvdW5kLXNlbGVjdCIpO2wmJihsLnZhbHVlPVdhbmROYXRpdmUuZ2V0Tm90aWZpY2F0aW9uU291bmQoKSl9Y2F0Y2h7fWlmKGplJiZ0eXBlb2YgV2FuZE5hdGl2ZS5nZXROb3RpZmljYXRpb25Wb2x1bWU9PSJmdW5jdGlvbiIpdHJ5e3ZhciBjPVdhbmROYXRpdmUuZ2V0Tm90aWZpY2F0aW9uVm9sdW1lKCk7aWYobi5ub3RpZlZvbHVtZT1jLHUmJih1LnZhbHVlPVN0cmluZyhjKSkscyYmKHMudGV4dENvbnRlbnQ9YysiJSIpLHUpdHJ5e3UuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0Iix7YnViYmxlczohMH0pKX1jYXRjaHt9dHJ5e2xvY2FsU3RvcmFnZS5zZXRJdGVtKCJ3YW5kLW5vdGlmLXZvbHVtZSIsU3RyaW5nKGMpKX1jYXRjaHt9fWNhdGNoe31pZihqZSYmdHlwZW9mIFdhbmROYXRpdmUuaXNIYXB0aWNFbmFibGVkPT0iZnVuY3Rpb24iKXRyeXt2YXIgZj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhhcHRpYy1lbmFibGVkIik7ZiYmKGYuY2hlY2tlZD1XYW5kTmF0aXZlLmlzSGFwdGljRW5hYmxlZCgpKX1jYXRjaHt9fX1mdW5jdGlvbiBlcigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tb2RhbCIpO2UmJihuLmZvY3VzVHJhcEhhbmRsZXImJihkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCJrZXlkb3duIixuLmZvY3VzVHJhcEhhbmRsZXIpLG4uZm9jdXNUcmFwSGFuZGxlcj1udWxsKSxuLmxhc3RGb2N1c2VkRWxlbWVudCYmdHlwZW9mIG4ubGFzdEZvY3VzZWRFbGVtZW50LmZvY3VzPT0iZnVuY3Rpb24iJiZuLmxhc3RGb2N1c2VkRWxlbWVudC5mb2N1cygpLFFhKGUpKX1mdW5jdGlvbiAkbygpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1lcnJvciIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLXN1Y2Nlc3MiKTtlJiZlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIil9ZnVuY3Rpb24gR3YoKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmV3LXBhc3N3b3JkIikudmFsdWUsdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uZmlybS1wYXNzd29yZCIpLnZhbHVlLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWVycm9yIiksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3Mtc3VjY2VzcyIpO2lmKCRvKCksIWV8fGUubGVuZ3RoPDYpe3IudGV4dENvbnRlbnQ9Ilx1NUJDNlx1NzgwMVx1OTU3Rlx1NUVBNlx1ODFGM1x1NUMxMVx1NEUzQSA2IFx1NEUyQVx1NUI1N1x1N0IyNlx1MzAwMiIsci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTtyZXR1cm59aWYoZSE9PXQpe3IudGV4dENvbnRlbnQ9Ilx1NEUyNFx1NkIyMVx1OEY5M1x1NTE2NVx1NzY4NFx1NUJDNlx1NzgwMVx1NEUwRFx1NEUwMFx1ODFGNFx1MzAwMiIsci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKTtyZXR1cm59ZmV0Y2goIi9hcGkvc2V0LXBhc3N3b3JkIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGJvZHk6SlNPTi5zdHJpbmdpZnkoe3Bhc3N3b3JkOmV9KSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihhKXtyZXR1cm4gYS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGEpe2lmKGEuZXJyb3Ipe3IudGV4dENvbnRlbnQ9YS5lcnJvcixyLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpO3JldHVybn1pLnRleHRDb250ZW50PSJcdTVCQzZcdTc4MDFcdTRGRUVcdTY1MzlcdTYyMTBcdTUyOUZcdUZGMDEiLGkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5ldy1wYXNzd29yZCIpLnZhbHVlPSIiLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maXJtLXBhc3N3b3JkIikudmFsdWU9IiJ9KS5jYXRjaChmdW5jdGlvbigpe3IudGV4dENvbnRlbnQ9IkZhaWxlZCB0byBzYXZlIHBhc3N3b3JkLiIsci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX0pfWZ1bmN0aW9uICRhKGUpe2Zvcih2YXIgdD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2V0dGluZ3MtdGFiIikscj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2V0dGluZ3MtcGFuZWwiKSxpPTA7aTx0Lmxlbmd0aDtpKyspe3ZhciBhPXRbaV0uZ2V0QXR0cmlidXRlKCJkYXRhLXRhYiIpPT09ZTthP3RbaV0uY2xhc3NMaXN0LmFkZCgiYWN0aXZlIik6dFtpXS5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSx0W2ldLnNldEF0dHJpYnV0ZSgiYXJpYS1zZWxlY3RlZCIsYT8idHJ1ZSI6ImZhbHNlIiksdFtpXS5zZXRBdHRyaWJ1dGUoInRhYmluZGV4IixhPyIwIjoiLTEiKX1mb3IodmFyIHU9MDt1PHIubGVuZ3RoO3UrKyl7dmFyIHM9clt1XS5pZD09PSJzZXR0aW5ncy10YWItIitlO3M/KHJbdV0uY2xhc3NMaXN0LmFkZCgiYWN0aXZlIiksclt1XS5yZW1vdmVBdHRyaWJ1dGUoImhpZGRlbiIpKTooclt1XS5jbGFzc0xpc3QucmVtb3ZlKCJhY3RpdmUiKSxyW3VdLnNldEF0dHJpYnV0ZSgiaGlkZGVuIiwiaGlkZGVuIikpfX1mdW5jdGlvbiBYbyhlKXtpZihlJiYhKGUua2V5IT09IkFycm93VXAiJiZlLmtleSE9PSJBcnJvd0Rvd24iJiZlLmtleSE9PSJIb21lIiYmZS5rZXkhPT0iRW5kIikpe3ZhciB0PUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy10YWIiKSk7aWYodC5sZW5ndGgpe3ZhciByPXQuaW5kZXhPZihlLmN1cnJlbnRUYXJnZXQpO2lmKHIhPT0tMSl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBpPXI7ZS5rZXk9PT0iQXJyb3dVcCImJihpPXI+MD9yLTE6dC5sZW5ndGgtMSksZS5rZXk9PT0iQXJyb3dEb3duIiYmKGk9cjx0Lmxlbmd0aC0xP3IrMTowKSxlLmtleT09PSJIb21lIiYmKGk9MCksZS5rZXk9PT0iRW5kIiYmKGk9dC5sZW5ndGgtMSk7dmFyIGE9dFtpXTtpZihhKXt2YXIgdT1hLmdldEF0dHJpYnV0ZSgiZGF0YS10YWIiKTt1JiYkYSh1KSx0eXBlb2YgYS5mb2N1cz09ImZ1bmN0aW9uIiYmYS5mb2N1cygpfX19fX1mdW5jdGlvbiBRdigpe2Zvcih2YXIgZT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuc2V0dGluZ3MtdGFiIiksdD0wO3Q8ZS5sZW5ndGg7dCsrKWVbdF0ucmVtb3ZlRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsWG8pLGVbdF0uYWRkRXZlbnRMaXN0ZW5lcigia2V5ZG93biIsWG8pfWZ1bmN0aW9uICR2KGUpe2lmKGUpe3ZhciB0PWUuY29uZmlnfHx7fSxyPXthYm91dDplLnZlcnNpb24/Ilx1NUY1M1x1NTI0RCB2IitlLnZlcnNpb246Ilx1NzI0OFx1NjcyQ1x1NEUwRVx1NjZGNFx1NjVCMFx1NEZFMVx1NjA2RiIsZ2VuZXJhbDpbdC5kZWZhdWx0TW9kZXx8ImRlZmF1bHQiLHQubGFuZ3VhZ2V8fCJcdTgxRUFcdTUyQThcdThCRURcdThBMDAiXS5maWx0ZXIoQm9vbGVhbikuam9pbigiIFx4QjcgIiksbm90aWZpY2F0aW9uczpuLm5vdGlmU291bmQ/Ilx1NjNEMFx1NzkzQVx1OTdGMyAiK24ubm90aWZWb2x1bWUrIiUiOiJcdTYzRDBcdTc5M0FcdTk3RjNcdTVERjJcdTUxNzNcdTk1RUQiLHNlY3VyaXR5OmUuaGFzQ2VydD8iXHU1REYyXHU1Qjg5XHU4OEM1IFNTTCBcdThCQzFcdTRFNjYiOiJcdTVCQzZcdTc4MDFcdTRFMEVcdThCQzFcdTRFNjZcdTdCQTFcdTc0MDYiLHByZXNldHM6dC5jb21tYW5kUHJlc2V0cyYmdC5jb21tYW5kUHJlc2V0cy5sZW5ndGg/dC5jb21tYW5kUHJlc2V0cy5sZW5ndGgrIiBcdTY3NjFcdTk4ODRcdThCQkUiOiJcdTY2ODJcdTY1RTBcdTk4ODRcdThCQkUiLGRpc3BsYXk6Ilx1NjNBN1x1NTIzNlx1NTM2MVx1NzI0N1x1OUVEOFx1OEJBNFx1NUM1NVx1NUYwMCJ9O2Zvcih2YXIgaSBpbiByKWlmKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChyLGkpKXt2YXIgYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcuc2V0dGluZ3MtdGFiW2RhdGEtdGFiPSInK2krJyJdIC5zZXR0aW5ncy10YWItbWV0YScpO2EmJihhLnRleHRDb250ZW50PXJbaV18fCIiKX19fWZ1bmN0aW9uIFh2KGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtcXIiKSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtcXItZW1wdHkiKSxpPXdpbmRvdy5RUkNvZGVMaWI7aWYodCl7aWYoIWl8fHR5cGVvZiBpLnRvQ2FudmFzIT0iZnVuY3Rpb24iKXtyJiYoci50ZXh0Q29udGVudD0iXHU0RThDXHU3RUY0XHU3ODAxXHU1RTkzXHU2NzJBXHU1MkEwXHU4RjdEIik7cmV0dXJufXRyeXtpLnRvQ2FudmFzKHQsZSx7d2lkdGg6MjIwLG1hcmdpbjoxLGVycm9yQ29ycmVjdGlvbkxldmVsOiJNIixjb2xvcjp7ZGFyazoiIzFmMWIxNyIsbGlnaHQ6IiNmZmZmZmYwMCJ9fSxmdW5jdGlvbihhKXtpZihhKXtyJiYoci50ZXh0Q29udGVudD0iXHU0RThDXHU3RUY0XHU3ODAxXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1IixyLnN0eWxlLmRpc3BsYXk9IiIpLHQuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIjtyZXR1cm59ciYmKHIuc3R5bGUuZGlzcGxheT0ibm9uZSIpLHQuc3R5bGUudmlzaWJpbGl0eT0idmlzaWJsZSJ9KX1jYXRjaHtyJiYoci50ZXh0Q29udGVudD0iXHU0RThDXHU3RUY0XHU3ODAxXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1IixyLnN0eWxlLmRpc3BsYXk9IiIpLHQuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIn19fWZ1bmN0aW9uIFp2KGUpe3ZhciB0PXdpbmRvdy5RUkNvZGVMaWI7aWYoIXR8fHR5cGVvZiB0LnRvQ2FudmFzIT0iZnVuY3Rpb24iKXJldHVybjt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29ubmVjdC1xci1tb2RhbCIpO3ImJnIucmVtb3ZlKCk7dmFyIGk9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7aS5pZD0iY29ubmVjdC1xci1tb2RhbCIsaS5jbGFzc05hbWU9ImNvbm5lY3QtcXItbW9kYWwtb3ZlcmxheSIsaS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImNvbm5lY3QtcXItbW9kYWwtY2FyZCI+PGNhbnZhcyBpZD0iY29ubmVjdC1xci1tb2RhbC1jYW52YXMiPjwvY2FudmFzPjxwIGNsYXNzPSJjb25uZWN0LXFyLW1vZGFsLWhpbnQiPlx1NzUyOCBXYW5kIEFwcCBcdTYyNkJcdTRFMDBcdTYyNkJcdUZGMENcdThGREVcdTYzQTVcdTVGNTNcdTUyNERcdTY3MERcdTUyQTFcdTU2Njg8L3A+PGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJidG4gYnRuLXNlY29uZGFyeSBidG4tc20gY29ubmVjdC1xci1tb2RhbC1jbG9zZSI+XHU1MTczXHU5NUVEPC9idXR0b24+PC9kaXY+Jyxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGkpO3ZhciBhPWkucXVlcnlTZWxlY3RvcigiI2Nvbm5lY3QtcXItbW9kYWwtY2FudmFzIiksdT1NYXRoLm1pbih3aW5kb3cuaW5uZXJXaWR0aCx3aW5kb3cuaW5uZXJIZWlnaHQpKi43O3U8MjQwJiYodT0yNDApLHU+NDgwJiYodT00ODApO3RyeXt0LnRvQ2FudmFzKGEsZSx7d2lkdGg6dSxtYXJnaW46MixlcnJvckNvcnJlY3Rpb25MZXZlbDoiTSIsY29sb3I6e2Rhcms6IiMxZjFiMTciLGxpZ2h0OiIjZmZmZmZmIn19KX1jYXRjaHt9ZnVuY3Rpb24gcygpe2kucmVtb3ZlKCl9aS5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obCl7bC50YXJnZXQ9PT1pJiZzKCl9KTt2YXIgbz1pLnF1ZXJ5U2VsZWN0b3IoIi5jb25uZWN0LXFyLW1vZGFsLWNsb3NlIik7byYmby5hZGRFdmVudExpc3RlbmVyKCJjbGljayIscyl9ZnVuY3Rpb24gSHIoZSx0LHIpe2lmKCFlKXJldHVybjtmdW5jdGlvbiBpKCl7aWYoSm4oImxpZ2h0Iikscil7cigpO3JldHVybn1pZih0KXt2YXIgYT10LnRleHRDb250ZW50O3QudGV4dENvbnRlbnQ9Ilx1NURGMlx1NTkwRFx1NTIzNiIsc2V0VGltZW91dChmdW5jdGlvbigpe3QudGV4dENvbnRlbnQ9YX0sMTUwMCl9fWlmKGplJiZ0eXBlb2YgV2FuZE5hdGl2ZS5jb3B5VG9DbGlwYm9hcmQ9PSJmdW5jdGlvbiIpdHJ5e2lmKFdhbmROYXRpdmUuY29weVRvQ2xpcGJvYXJkKGUpPT09Im9rIil7aSgpO3JldHVybn19Y2F0Y2h7fW5hdmlnYXRvci5jbGlwYm9hcmQud3JpdGVUZXh0KGUpLnRoZW4oaSkuY2F0Y2goZnVuY3Rpb24oKXt2YXIgYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJ0ZXh0YXJlYSIpO2EudmFsdWU9ZSxhLnN0eWxlLnBvc2l0aW9uPSJmaXhlZCIsYS5zdHlsZS5vcGFjaXR5PSIwIixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpLGEuc2VsZWN0KCksZG9jdW1lbnQuZXhlY0NvbW1hbmQoImNvcHkiKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGEpLGkoKX0pfWZ1bmN0aW9uIGduKGUpe2lmKHR5cGVvZiBlIT0ibnVtYmVyInx8IWlzRmluaXRlKGUpfHxlPDApcmV0dXJuIi0iO2lmKGU8MTAyNClyZXR1cm4gZSsiIEIiO2Zvcih2YXIgdD1bIktCIiwiTUIiLCJHQiIsIlRCIl0scj1lLzEwMjQsaT0wO3I+PTEwMjQmJmk8dC5sZW5ndGgtMTspcj1yLzEwMjQsaSs9MTt2YXIgYT1yPj0xMD9yLnRvRml4ZWQoMCk6ci50b0ZpeGVkKDEpO3JldHVybiBhKyIgIit0W2ldfWZ1bmN0aW9uIGVtKCl7ZmV0Y2goIi9hcGkvc2V0dGluZ3MiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gZS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGUpeyR2KGUpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1wa2ctbmFtZSIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLXZlcnNpb24iKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1ub2RlLXJlcSIpLGE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLXJlcG8tdXJsIik7dCYmKHQudGV4dENvbnRlbnQ9ZS5wYWNrYWdlTmFtZXx8Ii0iKSxyJiYoci50ZXh0Q29udGVudD1lLnZlcnNpb258fCItIiksaSYmKGkudGV4dENvbnRlbnQ9ZS5ub2RlVmVyc2lvbnx8Ii0iKSxhJiZlLnJlcG9VcmwmJihhLmlubmVySFRNTD0nPGEgaHJlZj0iJytwKGUucmVwb1VybCkrJyIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiPicrcChlLnJlcG9VcmwpKyI8L2E+Iik7dmFyIHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWxhdGVzdC12ZXJzaW9uIikscz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tdXBkYXRlLWJ1dHRvbiIpO2UubGF0ZXN0VmVyc2lvbiYmdSYmKHUudGV4dENvbnRlbnQ9ZS5sYXRlc3RWZXJzaW9uLGUudXBkYXRlQXZhaWxhYmxlJiZzJiZzLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmV0YS1jaGFubmVsLXRvZ2dsZSIpO28mJihvLmNoZWNrZWQ9ZS51cGRhdGVDaGFubmVsPT09ImJldGEiKTt2YXIgbD1lLmF1dG9VcGRhdGV8fHt9LGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLXdlYi10b2dnbGUiKTtjJiYoYy5jaGVja2VkPSEhbC53ZWIpO3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1hcGstdG9nZ2xlIik7ZiYmKGYuY2hlY2tlZD0hIVNuJiYhIWwuYXBrKTt2YXIgZD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtZG1nLXRvZ2dsZSIpO2QmJihkLmNoZWNrZWQ9ISF1biYmISFsLmRtZyk7ZnVuY3Rpb24gdih0ZSxtZSl7dHlwZW9mIHdpbmRvdy53YW5kQWxlcnQ9PSJmdW5jdGlvbiI/d2luZG93LndhbmRBbGVydCh0ZSx7dHlwZTptZT09PSJlcnJvciI/ImRhbmdlciI6ImluZm8ifSk6dHlwZW9mIGs9PSJmdW5jdGlvbiI/ayh0ZSxtZT09PSJlcnJvciI/ImVycm9yIjoiaW5mbyIpOm1lPT09ImVycm9yIiYmYWxlcnQodGUpfWZ1bmN0aW9uIGcodGUsbWUsUGUpe3ZhciBHZT1QZT9QZS50ZXh0Q29udGVudDoiIjtQZSYmKFBlLmRpc2FibGVkPSEwLFBlLnRleHRDb250ZW50PSJcdTRFMEJcdThGN0RcdTRFMkRcdTIwMjYiKTtmdW5jdGlvbiBRZSgpe1BlJiYoUGUuZGlzYWJsZWQ9ITEsUGUudGV4dENvbnRlbnQ9R2UpfWZldGNoKHRlLHttZXRob2Q6IkhFQUQiLGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHhlKXtpZigheGUub2spe3YoeGUuc3RhdHVzPT09NDA0PyJcdTRFMEJcdThGN0RcdTY3MkFcdTU0MkZcdTc1MjhcdTYyMTZcdTY1ODdcdTRFRjZcdTVERjJcdTc5RkJcdTk2NjQiOiJcdTRFMEJcdThGN0RcdTU5MzFcdThEMjUgKEhUVFAgIit4ZS5zdGF0dXMrIikiLCJlcnJvciIpLFFlKCk7cmV0dXJufXZhciBGZT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJhIik7RmUuaHJlZj10ZSxGZS5kb3dubG9hZD1tZXx8IiIsZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChGZSksRmUuY2xpY2soKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKEZlKSx2KCJcdTVERjJcdTVGMDBcdTU5Q0JcdTRFMEJcdThGN0RcdUZGMENcdThCRjdcdTU3MjhcdTkwMUFcdTc3RTVcdTY4MEYvXHU0RTBCXHU4RjdEXHU3QkExXHU3NDA2XHU0RTJEXHU2N0U1XHU3NzBCIiwiaW5mbyIpLFFlKCl9KS5jYXRjaChmdW5jdGlvbih4ZSl7digiXHU0RTBCXHU4RjdEXHU1OTMxXHU4RDI1OiAiKyh4ZSYmeGUubWVzc2FnZT94ZS5tZXNzYWdlOnhlKSwiZXJyb3IiKSxRZSgpfSl9ZnVuY3Rpb24gaCh0ZSxtZSl7ZnVuY3Rpb24gUGUoZmUpe3ZhciBnZT1TdHJpbmcoZmV8fCIiKS5yZXBsYWNlKC9edi8sIiIpLFhlPWdlLmluZGV4T2YoIi0iKSxibj1YZT49MD9nZS5zbGljZSgwLFhlKTpnZSxPbj1YZT49MD9nZS5zbGljZShYZSsxKToiIjtyZXR1cm57cGFydHM6Ym4uc3BsaXQoIi4iKS5tYXAoZnVuY3Rpb24oVGkpe3JldHVybiBwYXJzZUludChUaSwxMCl8fDB9KSxwcmU6T24saXNEZWJ1ZzpPbi5pbmRleE9mKCJkZWJ1ZyIpPT09MH19Zm9yKHZhciBHZT1QZSh0ZSksUWU9UGUobWUpLHhlPTA7eGU8Mzt4ZSsrKXt2YXIgRmU9KEdlLnBhcnRzW3hlXXx8MCktKFFlLnBhcnRzW3hlXXx8MCk7aWYoRmUhPT0wKXJldHVybiBGZT4wPzE6LTF9aWYoR2UuaXNEZWJ1ZyE9PVFlLmlzRGVidWcpcmV0dXJuIEdlLmlzRGVidWc/MTotMTtpZihHZS5pc0RlYnVnJiZRZS5pc0RlYnVnKWZvcih2YXIgTHQ9R2UucHJlLnNwbGl0KCIuIiksJGU9UWUucHJlLnNwbGl0KCIuIikscT0wO3E8TWF0aC5tYXgoTHQubGVuZ3RoLCRlLmxlbmd0aCk7cSsrKXtpZihMdFtxXT09PXZvaWQgMClyZXR1cm4tMTtpZigkZVtxXT09PXZvaWQgMClyZXR1cm4gMTt2YXIgXz1wYXJzZUludChMdFtxXSwxMCksWT1wYXJzZUludCgkZVtxXSwxMCk7aWYoIWlzTmFOKF8pJiYhaXNOYU4oWSkpe2lmKF8hPT1ZKXJldHVybiBfPlk/MTotMX1lbHNlIGlmKEx0W3FdIT09JGVbcV0pcmV0dXJuIEx0W3FdPiRlW3FdPzE6LTF9cmV0dXJuIDB9ZnVuY3Rpb24gbSh0ZSxtZSxQZSxHZSxRZSx4ZSl7dGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksdGUuZGlzYWJsZWQ9ITEsbWU+MD90ZS50ZXh0Q29udGVudD0iXHU1MzQ3XHU3RUE3IjptZT09PTA/KHRlLnRleHRDb250ZW50PSJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjAiLHRlLmRpc2FibGVkPSEwKTp4ZT90ZS50ZXh0Q29udGVudD0iXHU5MUNEXHU2NUIwXHU1Qjg5XHU4OEM1IjoodGUudGV4dENvbnRlbnQ9Ilx1NzI0OFx1NjcyQ1x1OEY4M1x1NjVFNyIsdGUuZGlzYWJsZWQ9ITApLHRlLm9uY2xpY2s9dGUuZGlzYWJsZWQ/bnVsbDpmdW5jdGlvbigpe3RyeXtXYW5kTmF0aXZlLmRvd25sb2FkVXBkYXRlKFBlLEdlLFFlKX1jYXRjaChGZSl7digiXHU4QzAzXHU3NTI4XHU0RTBCXHU4RjdEXHU1OTMxXHU4RDI1OiAiKyhGZSYmRmUubWVzc2FnZT9GZS5tZXNzYWdlOkZlKSwiZXJyb3IiKX19fXZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWFway1zZWN0aW9uIiksRj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hcGstY3VycmVudC1yb3ciKSx3PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1hbmRyb2lkLWFway1jdXJyZW50IiksRT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hcGstZ2l0aHViLXJvdyIpLEE9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWFuZHJvaWQtYXBrLWdpdGh1YiIpLHg9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvd25sb2FkLWdpdGh1Yi1hcGstYnRuIiksST1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hcGstbG9jYWwtcm93Iiksaj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtYW5kcm9pZC1hcGstbG9jYWwiKSxWPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkb3dubG9hZC1sb2NhbC1hcGstYnRuIiksRz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hcGstbWVzc2FnZSIpLEw9ZS5hbmRyb2lkQXBrfHx7fSxCPSEhU24sVD1MLmVuYWJsZWQhPT0hMSxNPUJ8fFQmJighIUwuZ2l0aHVifHwhIUwubG9jYWwpO2lmKGImJihNP2IuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik6Yi5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSksQil7aWYoRiYmdyYmKHcudGV4dENvbnRlbnQ9InYiK1NuLEYuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLEwuZ2l0aHViJiZFJiZBKXt2YXIgSD1MLmdpdGh1Yi52ZXJzaW9uPyJ2IitMLmdpdGh1Yi52ZXJzaW9uOkwuZ2l0aHViLmZpbGVOYW1lO2lmKHR5cGVvZiBMLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKEgrPSIgXHhCNyAiK2duKEwuZ2l0aHViLnNpemUpKSxBLnRleHRDb250ZW50PUgsRS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx4KXt2YXIgJD1MLmdpdGh1Yi52ZXJzaW9uP2goTC5naXRodWIudmVyc2lvbixTbik6MTttKHgsJCxMLmdpdGh1Yi5kb3dubG9hZFVybCxMLmdpdGh1Yi5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmFwayIsImdpdGh1YiIsITEpfX1pZihMLmxvY2FsJiZJJiZqKXt2YXIgbmU9TC5sb2NhbC52ZXJzaW9uPyJ2IitMLmxvY2FsLnZlcnNpb246TC5sb2NhbC5maWxlTmFtZTtpZih0eXBlb2YgTC5sb2NhbC5zaXplPT0ibnVtYmVyIiYmKG5lKz0iIFx4QjcgIitnbihMLmxvY2FsLnNpemUpKSxqLnRleHRDb250ZW50PW5lLEkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksVil7dmFyIFE9TC5sb2NhbC52ZXJzaW9uP2goTC5sb2NhbC52ZXJzaW9uLFNuKToxO20oVixRLEwubG9jYWwuZG93bmxvYWRVcmwsTC5sb2NhbC5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmFwayIsImxvY2FsIiwhMSl9fSFMLmdpdGh1YiYmIUwubG9jYWwmJkcmJihHLnRleHRDb250ZW50PSJcdTY2ODJcdTY1RTBcdTUzRUZcdTc1MjhcdTY2RjRcdTY1QjAiLEcuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpO3ZhciBzZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hdXRvLXVwZGF0ZS1yb3ciKSxlZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1hdXRvLXVwZGF0ZS1oaW50Iik7c2UmJnNlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGVlJiZlZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX1lbHNle2lmKEwuZ2l0aHViJiZFJiZBKXt2YXIgUz1MLmdpdGh1Yi52ZXJzaW9uPyJ2IitMLmdpdGh1Yi52ZXJzaW9uOkwuZ2l0aHViLmZpbGVOYW1lO3R5cGVvZiBMLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKFMrPSIgXHhCNyAiK2duKEwuZ2l0aHViLnNpemUpKSxBLnRleHRDb250ZW50PVMsRS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx4JiYoeC50ZXh0Q29udGVudD0iXHU0RTBCXHU4RjdEIix4LmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLHgub25jbGljaz1mdW5jdGlvbigpe3dpbmRvdy5vcGVuKEwuZ2l0aHViLmRvd25sb2FkVXJsLCJfYmxhbmsiKSx2KCJcdTZCNjNcdTU3MjhcdTYyNTNcdTVGMDBcdTRFMEJcdThGN0RcdTk4NzVcdTIwMjYiLCJpbmZvIil9KX1pZihMLmxvY2FsJiZJJiZqKXt2YXIgTj1MLmxvY2FsLnZlcnNpb24/InYiK0wubG9jYWwudmVyc2lvbjpMLmxvY2FsLmZpbGVOYW1lO3R5cGVvZiBMLmxvY2FsLnNpemU9PSJudW1iZXIiJiYoTis9IiBceEI3ICIrZ24oTC5sb2NhbC5zaXplKSksai50ZXh0Q29udGVudD1OLEkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksViYmKFYudGV4dENvbnRlbnQ9Ilx1NEUwQlx1OEY3RCIsVi5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxWLm9uY2xpY2s9ZnVuY3Rpb24oKXtnKEwubG9jYWwuZG93bmxvYWRVcmwsTC5sb2NhbC5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmFwayIsVil9KX0hTC5naXRodWImJiFMLmxvY2FsJiZHJiYoRy50ZXh0Q29udGVudD1UPyJcdTU3MjhcdTdFQkZcdTcyNDhcdTY3MkNcdTY2ODJcdTY1RjZcdTgzQjdcdTUzRDZcdTU5MzFcdThEMjVcdUZGMENcdTUzRUZcdTdBMERcdTU0MEVcdTkxQ0RcdThCRDUiOiJBbmRyb2lkIFx1NEUwQlx1OEY3RFx1NjcyQVx1NTcyOFx1NjcwRFx1NTJBMVx1N0FFRlx1NTQyRlx1NzUyOCIsRy5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9dmFyIFc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWRtZy1zZWN0aW9uIiksSj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWFjb3MtZG1nLWN1cnJlbnQtcm93IiksVT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbWFjb3MtZG1nLWN1cnJlbnQiKSxYPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1kbWctZ2l0aHViLXJvdyIpLG9lPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXR0aW5ncy1tYWNvcy1kbWctZ2l0aHViIiksbGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvd25sb2FkLWdpdGh1Yi1kbWctYnRuIikscmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1hY29zLWRtZy1sb2NhbC1yb3ciKSxCZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2V0dGluZ3MtbWFjb3MtZG1nLWxvY2FsIiksRGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRvd25sb2FkLWxvY2FsLWRtZy1idG4iKSxiZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWFjb3MtZG1nLW1lc3NhZ2UiKSxQPWUubWFjb3NEbWd8fHt9LHo9ISF1bixpZT1QLmVuYWJsZWQhPT0hMSxUZT16fHxpZSYmKCEhUC5naXRodWJ8fCEhUC5sb2NhbCk7aWYoVyYmKFRlP1cuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik6Vy5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSkseil7aWYoSiYmVSYmKFUudGV4dENvbnRlbnQ9InYiK3VuLEouY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLFAuZ2l0aHViJiZYJiZvZSl7dmFyIGNlPVAuZ2l0aHViLnZlcnNpb24/InYiK1AuZ2l0aHViLnZlcnNpb246UC5naXRodWIuZmlsZU5hbWU7aWYodHlwZW9mIFAuZ2l0aHViLnNpemU9PSJudW1iZXIiJiYoY2UrPSIgXHhCNyAiK2duKFAuZ2l0aHViLnNpemUpKSxvZS50ZXh0Q29udGVudD1jZSxYLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGxlKXt2YXIgYWU9UC5naXRodWIudmVyc2lvbj9oKFAuZ2l0aHViLnZlcnNpb24sdW4pOjE7bShsZSxhZSxQLmdpdGh1Yi5kb3dubG9hZFVybCxQLmdpdGh1Yi5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmRtZyIsImdpdGh1YiIsITApfX1pZihQLmxvY2FsJiZyZSYmQmUpe3ZhciBrZT1QLmxvY2FsLnZlcnNpb24/InYiK1AubG9jYWwudmVyc2lvbjpQLmxvY2FsLmZpbGVOYW1lO2lmKHR5cGVvZiBQLmxvY2FsLnNpemU9PSJudW1iZXIiJiYoa2UrPSIgXHhCNyAiK2duKFAubG9jYWwuc2l6ZSkpLEJlLnRleHRDb250ZW50PWtlLHJlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLERlKXt2YXIgcHQ9UC5sb2NhbC52ZXJzaW9uP2goUC5sb2NhbC52ZXJzaW9uLHVuKToxO20oRGUscHQsUC5sb2NhbC5kb3dubG9hZFVybCxQLmxvY2FsLmZpbGVOYW1lfHwid2FuZC11cGRhdGUuZG1nIiwibG9jYWwiLCEwKX19IVAuZ2l0aHViJiYhUC5sb2NhbCYmYmUmJihiZS50ZXh0Q29udGVudD0iXHU2NjgyXHU2NUUwXHU1M0VGXHU3NTI4XHU2NkY0XHU2NUIwIixiZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk7dmFyIHN0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJtYWNvcy1hdXRvLXVwZGF0ZS1yb3ciKSxBdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibWFjb3MtYXV0by11cGRhdGUtaGludCIpO3N0JiZzdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxBdCYmQXQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9ZWxzZXtpZihQLmdpdGh1YiYmWCYmb2Upe3ZhciBVZT1QLmdpdGh1Yi52ZXJzaW9uPyJ2IitQLmdpdGh1Yi52ZXJzaW9uOlAuZ2l0aHViLmZpbGVOYW1lO3R5cGVvZiBQLmdpdGh1Yi5zaXplPT0ibnVtYmVyIiYmKFVlKz0iIFx4QjcgIitnbihQLmdpdGh1Yi5zaXplKSksb2UudGV4dENvbnRlbnQ9VWUsWC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxsZSYmKGxlLnRleHRDb250ZW50PSJcdTRFMEJcdThGN0QiLGxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLGxlLm9uY2xpY2s9ZnVuY3Rpb24oKXt3aW5kb3cub3BlbihQLmdpdGh1Yi5kb3dubG9hZFVybCwiX2JsYW5rIiksdigiXHU2QjYzXHU1NzI4XHU2MjUzXHU1RjAwXHU0RTBCXHU4RjdEXHU5ODc1XHUyMDI2IiwiaW5mbyIpfSl9aWYoUC5sb2NhbCYmcmUmJkJlKXt2YXIgb3Q9UC5sb2NhbC52ZXJzaW9uPyJ2IitQLmxvY2FsLnZlcnNpb246UC5sb2NhbC5maWxlTmFtZTt0eXBlb2YgUC5sb2NhbC5zaXplPT0ibnVtYmVyIiYmKG90Kz0iIFx4QjcgIitnbihQLmxvY2FsLnNpemUpKSxCZS50ZXh0Q29udGVudD1vdCxyZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSxEZSYmKERlLnRleHRDb250ZW50PSJcdTRFMEJcdThGN0QiLERlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpLERlLm9uY2xpY2s9ZnVuY3Rpb24oKXtnKFAubG9jYWwuZG93bmxvYWRVcmwsUC5sb2NhbC5maWxlTmFtZXx8IndhbmQtdXBkYXRlLmRtZyIsRGUpfSl9IVAuZ2l0aHViJiYhUC5sb2NhbCYmYmUmJihiZS50ZXh0Q29udGVudD1pZT8iXHU1NzI4XHU3RUJGXHU3MjQ4XHU2NzJDXHU2NjgyXHU2NUY2XHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1XHVGRjBDXHU1M0VGXHU3QTBEXHU1NDBFXHU5MUNEXHU4QkQ1IjoibWFjT1MgXHU0RTBCXHU4RjdEXHU2NzJBXHU1NzI4XHU2NzBEXHU1MkExXHU3QUVGXHU1NDJGXHU3NTI4IixiZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9dmFyIEtlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtY29kZSIpLHh0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhbmRyb2lkLWNvbm5lY3QtcXIiKSxZZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYW5kcm9pZC1jb25uZWN0LXFyLWVtcHR5IiksUmU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFuZHJvaWQtY29ubmVjdC1xci13cmFwIik7aWYoS2Upe0tlLnRleHRDb250ZW50PSJcdTUyQTBcdThGN0RcdTRFMkQuLi4iLFllJiYoWWUudGV4dENvbnRlbnQ9Ilx1NzUxRlx1NjIxMFx1NEUyRFx1MjAyNiIpLHh0JiYoeHQuc3R5bGUudmlzaWJpbGl0eT0iaGlkZGVuIik7dmFyIEFlPSIvYXBpL2FwcC1jb25uZWN0LWNvZGUiO3dpbmRvdy5sb2NhdGlvbiYmd2luZG93LmxvY2F0aW9uLm9yaWdpbiYmKEFlKz0iP29yaWdpbj0iK2VuY29kZVVSSUNvbXBvbmVudCh3aW5kb3cubG9jYXRpb24ub3JpZ2luKSksZmV0Y2goQWUse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHRlKXtyZXR1cm4gdGUuanNvbigpfSkudGhlbihmdW5jdGlvbih0ZSl7dGUuY29kZT8oS2UudGV4dENvbnRlbnQ9dGUuY29kZSxuLmFuZHJvaWRDb25uZWN0Q29kZT10ZS5jb2RlLFh2KHRlLmNvZGUpKTooS2UudGV4dENvbnRlbnQ9Ilx1NzUxRlx1NjIxMFx1NTkzMVx1OEQyNSIsWWUmJihZZS50ZXh0Q29udGVudD0iXHU3NTFGXHU2MjEwXHU1OTMxXHU4RDI1IikpfSkuY2F0Y2goZnVuY3Rpb24oKXtLZS50ZXh0Q29udGVudD0iXHU4M0I3XHU1M0Q2XHU1OTMxXHU4RDI1IixZZSYmKFllLnRleHRDb250ZW50PSJcdTgzQjdcdTUzRDZcdTU5MzFcdThEMjUiKX0pfVJlJiYhUmUuZGF0YXNldC5ib3VuZCYmKFJlLmRhdGFzZXQuYm91bmQ9IjEiLFJlLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe24uYW5kcm9pZENvbm5lY3RDb2RlJiZadihuLmFuZHJvaWRDb25uZWN0Q29kZSl9KSk7dmFyIHZlPWUuY29uZmlnfHx7fSxFZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhvc3QiKSxDPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctcG9ydCIpLGx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaHR0cHMiKSx2dD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLW1vZGUiKSxidD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWN3ZCIpLHFlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctc2hlbGwiKTtFZSYmKEVlLnZhbHVlPXZlLmhvc3R8fCIiKSxDJiYoQy52YWx1ZT12ZS5wb3J0fHwiIiksbHQmJihsdC5jaGVja2VkPXZlLmh0dHBzPT09ITApLHZ0JiYodnQudmFsdWU9dmUuZGVmYXVsdE1vZGV8fCJkZWZhdWx0IiksYnQmJihidC52YWx1ZT12ZS5kZWZhdWx0Q3dkfHwiIikscWUmJihxZS52YWx1ZT12ZS5zaGVsbHx8IiIpO3ZhciBTdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWxhbmd1YWdlIik7U3QmJihTdC52YWx1ZT12ZS5sYW5ndWFnZXx8IiIpO3ZhciBlbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXN0cnVjdHVyZWQtcnVubmVyIik7ZW4mJihlbi52YWx1ZT12ZS5zdHJ1Y3R1cmVkUnVubmVyfHwiY2xpIik7dmFyIGN0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctaW5oZXJpdC1lbnYiKTtjdCYmKGN0LmNoZWNrZWQ9dmUuaW5oZXJpdEVudiE9PSExKSxuLmNvbmZpZ0RlZmF1bHRNb2RlbD12ZS5kZWZhdWx0TW9kZWx8fCIiLERpKCksVm8oKS50aGVuKGZ1bmN0aW9uKCl7RGkoKX0pLmNhdGNoKGZ1bmN0aW9uKCl7fSk7dmFyIEhlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZXJ0LXN0YXR1cyIpO0hlJiYoSGUudGV4dENvbnRlbnQ9ZS5oYXNDZXJ0PyJcdTVERjJcdTVCODlcdTg4QzUgU1NMIFx1OEJDMVx1NEU2NiI6Ilx1NjcyQVx1NUI4OVx1ODhDNVx1OEJDMVx1NEU2Nlx1RkYwOFx1NEY3Rlx1NzUyOFx1ODFFQVx1N0I3RVx1NTQwRFx1NjIxNiBIVFRQXHVGRjA5IixIZS5zdHlsZS5jb2xvcj1lLmhhc0NlcnQ/InZhcigtLXN1Y2Nlc3MpIjoidmFyKC0tdGV4dC1zZWNvbmRhcnkpIik7dmFyIF9lPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwcmVzZXRzLWxpc3QiKTtpZihfZSYmdmUuY29tbWFuZFByZXNldHMpe2Zvcih2YXIgQ2U9IiIsSmU9MDtKZTx2ZS5jb21tYW5kUHJlc2V0cy5sZW5ndGg7SmUrKyl7dmFyIEl0PXZlLmNvbW1hbmRQcmVzZXRzW0plXTtDZSs9JzxkaXYgY2xhc3M9InByZXNldC1pdGVtIj48c3BhbiBjbGFzcz0icHJlc2V0LWxhYmVsIj4nK3AoSXQubGFiZWwpKyc8L3NwYW4+PHNwYW4gY2xhc3M9InByZXNldC1kZXRhaWwiPicrcChJdC5jb21tYW5kKSsoSXQubW9kZT8iICgiK3AoSXQubW9kZSkrIikiOiIiKSsiPC9zcGFuPjwvZGl2PiJ9Q2V8fChDZT0nPGRpdiBjbGFzcz0iZW1wdHktc3RhdGUtY29tcGFjdCI+PHNwYW4gY2xhc3M9ImVtcHR5LWljb24iPlx1MjY5OTwvc3Bhbj48c3Bhbj5cdTZDQTFcdTY3MDlcdTU0N0RcdTRFRTRcdTk4ODRcdThCQkU8L3NwYW4+PHNwYW4gY2xhc3M9ImhpbnQiPlx1NTcyOCBjb25maWcuanNvbiBcdTc2ODQgY29tbWFuZFByZXNldHMgXHU0RTJEXHU5MTREXHU3RjZFPC9zcGFuPjwvZGl2PicpLF9lLmlubmVySFRNTD1DZX12YXIgRXQ9dmUuY2FyZERlZmF1bHRzfHx7fSx5bj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtZWRpdCIpLFR0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC1pbmxpbmUiKSxNbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGVybWluYWwiKSxudD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGhpbmtpbmciKSxkZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdG9vbGdyb3VwIik7eW4mJih5bi5jaGVja2VkPUV0LmVkaXRDYXJkcz09PSEwKSxUdCYmKFR0LmNoZWNrZWQ9RXQuaW5saW5lVG9vbHM9PT0hMCksTW4mJihNbi5jaGVja2VkPUV0LnRlcm1pbmFsPT09ITApLG50JiYobnQuY2hlY2tlZD1FdC50aGlua2luZz09PSEwKSxkZSYmKGRlLmNoZWNrZWQ9RXQudG9vbEdyb3VwPT09ITApfSkuY2F0Y2goZnVuY3Rpb24oKXt9KX1mdW5jdGlvbiB0bSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb25maWctbWVzc2FnZSIpO2UmJihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUudGV4dENvbnRlbnQ9IiIpO3ZhciB0PXtob3N0Oihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWhvc3QiKXx8e30pLnZhbHVlLHBvcnQ6TnVtYmVyKChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXBvcnQiKXx8e30pLnZhbHVlKSxodHRwczooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1odHRwcyIpfHx7fSkuY2hlY2tlZCxkZWZhdWx0TW9kZTooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1tb2RlIil8fHt9KS52YWx1ZSxkZWZhdWx0Q3dkOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWN3ZCIpfHx7fSkudmFsdWUsc2hlbGw6KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctc2hlbGwiKXx8e30pLnZhbHVlLGxhbmd1YWdlOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWxhbmd1YWdlIil8fHt9KS52YWx1ZXx8IiIsZGVmYXVsdE1vZGVsOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWRlZmF1bHQtbW9kZWwiKXx8e30pLnZhbHVlfHwiIixzdHJ1Y3R1cmVkUnVubmVyOihkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLXN0cnVjdHVyZWQtcnVubmVyIil8fHt9KS52YWx1ZXx8ImNsaSIsaW5oZXJpdEVudjooZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNmZy1pbmhlcml0LWVudiIpfHx7fSkuY2hlY2tlZCE9PSExfSxyPW4uY29uZmlnJiZuLmNvbmZpZy5kZWZhdWx0TW9kZWx8fCIiLGk9dC5kZWZhdWx0TW9kZWx8fCIiO2ZldGNoKCIvYXBpL3NldHRpbmdzL2NvbmZpZyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkodCl9KS50aGVuKGZ1bmN0aW9uKGEpe3JldHVybiBhLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oYSl7aWYoZSYmKGEuZXJyb3I/KGUudGV4dENvbnRlbnQ9YS5lcnJvcixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiKTooZS50ZXh0Q29udGVudD1hLnJlc3RhcnRSZXF1aXJlZD8iXHU5MTREXHU3RjZFXHU1REYyXHU0RkREXHU1QjU4XHVGRjBDXHU5MEU4XHU1MjA2XHU5MEU4XHU3RjcyXHU1QjU3XHU2QkI1XHVGRjA4aG9zdC9wb3J0L2h0dHBzL3NoZWxsXHVGRjA5XHU5NzAwXHU4OTgxXHU5MUNEXHU1NDJGXHU2NzBEXHU1MkExXHU2MjREXHU3NTFGXHU2NTQ4XHUzMDAyIjoiXHU5MTREXHU3RjZFXHU1REYyXHU0RkREXHU1QjU4XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLCghYXx8IWEuZXJyb3IpJiYobi5jb25maWcmJihuLmNvbmZpZy5kZWZhdWx0TW9kZWw9aSksbi5jb25maWdEZWZhdWx0TW9kZWw9aSxpIT09cikpe24uY2hhdE1vZGVsPSIiO3RyeXtsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgid2FuZC1jaGF0LW1vZGVsIil9Y2F0Y2h7fVhuKHl0KCkpfX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NEZERFx1NUI1OFx1NTkzMVx1OEQyNVx1MzAwMiIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKX0pfWZ1bmN0aW9uIG5tKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRpc3BsYXktbWVzc2FnZSIpO2UmJihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLGUudGV4dENvbnRlbnQ9IiIpO3ZhciB0PXtjYXJkRGVmYXVsdHM6e2VkaXRDYXJkczohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtZWRpdCIpfHx7fSkuY2hlY2tlZCxpbmxpbmVUb29sczohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtaW5saW5lIil8fHt9KS5jaGVja2VkLHRlcm1pbmFsOiEhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC10ZXJtaW5hbCIpfHx7fSkuY2hlY2tlZCx0aGlua2luZzohIShkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2ZnLWNhcmQtdGhpbmtpbmciKXx8e30pLmNoZWNrZWQsdG9vbEdyb3VwOiEhKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjZmctY2FyZC10b29sZ3JvdXAiKXx8e30pLmNoZWNrZWR9fTtmZXRjaCgiL2FwaS9zZXR0aW5ncy9jb25maWciLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHQpfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHIpe2UmJihyLmVycm9yPyhlLnRleHRDb250ZW50PXIuZXJyb3IsZS5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIik6KGUudGV4dENvbnRlbnQ9Ilx1NjYzRVx1NzkzQVx1OEJCRVx1N0Y2RVx1NURGMlx1NEZERFx1NUI1OCIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiKSxlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSwhci5lcnJvciYmbi5jb25maWcmJihuLmNvbmZpZy5jYXJkRGVmYXVsdHM9dC5jYXJkRGVmYXVsdHMpfSkuY2F0Y2goZnVuY3Rpb24oKXtlJiYoZS50ZXh0Q29udGVudD0iXHU0RkREXHU1QjU4XHU1OTMxXHU4RDI1XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfSl9ZnVuY3Rpb24gcm0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2VydC1rZXktZmlsZSIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNlcnQtY2VydC1maWxlIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY2VydC1tZXNzYWdlIik7aWYociYmKHIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksci50ZXh0Q29udGVudD0iIiksIWV8fCFlLmZpbGVzfHwhZS5maWxlc1swXXx8IXR8fCF0LmZpbGVzfHwhdC5maWxlc1swXSl7ciYmKHIudGV4dENvbnRlbnQ9Ilx1OEJGN1x1OTAwOVx1NjJFOVx1NzlDMVx1OTRBNVx1NTQ4Q1x1OEJDMVx1NEU2Nlx1NjU4N1x1NEVGNlx1MzAwMiIsci5zdHlsZS5jb2xvcj0idmFyKC0tZXJyb3IpIixyLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKTtyZXR1cm59dmFyIGk9bmV3IEZpbGVSZWFkZXI7aS5vbmxvYWQ9ZnVuY3Rpb24oKXt2YXIgYT1pLnJlc3VsdCx1PW5ldyBGaWxlUmVhZGVyO3Uub25sb2FkPWZ1bmN0aW9uKCl7dmFyIHM9dS5yZXN1bHQ7ZmV0Y2goIi9hcGkvc2V0dGluZ3MvdXBsb2FkLWNlcnQiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIixib2R5OkpTT04uc3RyaW5naWZ5KHtrZXk6YSxjZXJ0OnN9KX0pLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJuIG8uanNvbigpfSkudGhlbihmdW5jdGlvbihvKXtpZihyKXtpZihvLmVycm9yKXIudGV4dENvbnRlbnQ9by5lcnJvcixyLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiO2Vsc2V7ci50ZXh0Q29udGVudD0iXHU4QkMxXHU0RTY2XHU1REYyXHU0RTBBXHU0RjIwXHVGRjBDXHU5MUNEXHU1NDJGXHU1NDBFXHU3NTFGXHU2NTQ4XHUzMDAyIixyLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSI7dmFyIGw9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNlcnQtc3RhdHVzIik7bCYmKGwudGV4dENvbnRlbnQ9Ilx1NURGMlx1NUI4OVx1ODhDNSBTU0wgXHU4QkMxXHU0RTY2IixsLnN0eWxlLmNvbG9yPSJ2YXIoLS1zdWNjZXNzKSIpfXIuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtyJiYoci50ZXh0Q29udGVudD0iXHU0RTBBXHU0RjIwXHU1OTMxXHU4RDI1XHUzMDAyIixyLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLHIuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpfSl9LHUucmVhZEFzVGV4dCh0LmZpbGVzWzBdKX0saS5yZWFkQXNUZXh0KGUuZmlsZXNbMF0pfWZ1bmN0aW9uIFpvKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNldHRpbmdzLWxhdGVzdC12ZXJzaW9uIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tdXBkYXRlLWJ1dHRvbiIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInVwZGF0ZS1tZXNzYWdlIik7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NjhDMFx1NjdFNVx1NEUyRC4uLiIpLHImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksdCYmdC5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxmZXRjaCgiL2FwaS9jaGVjay11cGRhdGUiLHtjcmVkZW50aWFsczoic2FtZS1vcmlnaW4ifSkudGhlbihmdW5jdGlvbihpKXtyZXR1cm4gaS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKGkpe2lmKGkuZXJyb3Ipe2UmJihlLnRleHRDb250ZW50PSJcdTY4QzBcdTY3RTVcdTU5MzFcdThEMjUiKTtyZXR1cm59dmFyIGE9aS5jaGFubmVsPT09ImJldGEiO2lmKGUmJihlLnRleHRDb250ZW50PWkubGF0ZXN0fHwoYT8iYmV0YSBcdTY3MkFcdTUzRDFcdTVFMDMiOiItIikpLCFpLmxhdGVzdCl7ciYmKHIudGV4dENvbnRlbnQ9YT8iXHU2NUUwXHU2Q0Q1XHU4QkZCXHU1M0Q2IG5wbSBiZXRhIFx1NzI0OFx1NjcyQ1x1MzAwMiI6Ilx1NjVFMFx1NkNENVx1OEZERVx1NjNBNVx1NTIzMCBucG0gcmVnaXN0cnlcdTMwMDIiLHIuc3R5bGUuY29sb3I9InZhcigtLWVycm9yKSIsci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk7cmV0dXJufWkudXBkYXRlQXZhaWxhYmxlJiZ0JiYodC50ZXh0Q29udGVudD1hPyJcdTY2RjRcdTY1QjBcdTUyMzAgQmV0YSI6Ilx1NjZGNFx1NjVCMFx1NTIzMFx1NjcwMFx1NjVCMFx1NzI0OCIsdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksIWkudXBkYXRlQXZhaWxhYmxlJiZyJiYoci50ZXh0Q29udGVudD1hPyJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjAgQmV0YSBcdTcyNDhcdTY3MkNcdTMwMDIiOiJcdTVERjJcdTY2MkZcdTY3MDBcdTY1QjBcdTcyNDhcdTY3MkNcdTMwMDIiLHIuc3R5bGUuY29sb3I9InZhcigtLXN1Y2Nlc3MpIixyLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKX0pLmNhdGNoKGZ1bmN0aW9uKCl7ZSYmKGUudGV4dENvbnRlbnQ9Ilx1NjhDMFx1NjdFNVx1NTkzMVx1OEQyNSIpfSl9ZnVuY3Rpb24gaW0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgidXBkYXRlLW1lc3NhZ2UiKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby11cGRhdGUtYnV0dG9uIik7dCYmKHQuZGlzYWJsZWQ9ITAsZSYmKGUudGV4dENvbnRlbnQ9Ilx1NkI2M1x1NTcyOFx1NjZGNFx1NjVCMFx1RkYwQ1x1OEJGN1x1N0EwRFx1NTAxOS4uLiIsZS5zdHlsZS5jb2xvcj0idmFyKC0tdGV4dC1zZWNvbmRhcnkpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSxmZXRjaCgiL2FwaS91cGRhdGUiLHttZXRob2Q6IlBPU1QiLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sY3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbihmdW5jdGlvbihyKXtpZihyLmVycm9yKXtlJiYoZS50ZXh0Q29udGVudD1yLmVycm9yLGUuc3R5bGUuY29sb3I9InZhcigtLWVycm9yKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksdC5kaXNhYmxlZD0hMTtyZXR1cm59aWYoZSYmKGUudGV4dENvbnRlbnQ9KHIubWVzc2FnZXx8Ilx1NjZGNFx1NjVCMFx1NUI4Q1x1NjIxMCIpKyJcdUZGMENcdTZCNjNcdTU3MjhcdTkxQ0RcdTU0MkZcdTY3MERcdTUyQTFcdTIwMjYiLGUuc3R5bGUuY29sb3I9InZhcigtLXN1Y2Nlc3MpIixlLmNsYXNzTGlzdC5yZW1vdmUoImhpZGRlbiIpKSx0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHIuZGV0YWNoZWRVcGRhdGUpc24oKTtlbHNlIGlmKHIucmVzdGFydFJlcXVpcmVkIT09ITEpVHMobnVsbCxlKTtlbHNle3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJkby1yZXN0YXJ0LWJ1dHRvbiIpO2kmJmkuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIil9fSkuY2F0Y2goZnVuY3Rpb24oKXtlJiYoZS50ZXh0Q29udGVudD0iXHU2NkY0XHU2NUIwXHU1OTMxXHU4RDI1XHUzMDAyIixlLnN0eWxlLmNvbG9yPSJ2YXIoLS1lcnJvcikiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLHQuZGlzYWJsZWQ9ITF9KSl9ZnVuY3Rpb24gYW0oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZG8tcmVzdGFydC1idXR0b24iKSx0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ1cGRhdGUtbWVzc2FnZSIpO1RzKGUsdCl9ZnVuY3Rpb24gdW0oKXtmZXRjaCgiL2FwaS9hdXRvLXVwZGF0ZSIse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBlLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oZSl7aWYoZS5hcGspcmV0dXJuIGZldGNoKCIvYXBpL2FuZHJvaWQtYXBrLXVwZGF0ZT9jdXJyZW50VmVyc2lvbj0iK2VuY29kZVVSSUNvbXBvbmVudChTbikse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYoISghdC51cGRhdGVBdmFpbGFibGV8fCF0LmRvd25sb2FkVXJsKSl0cnl7V2FuZE5hdGl2ZS5kb3dubG9hZFVwZGF0ZSh0LmRvd25sb2FkVXJsLHQuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5hcGsiLHQuc291cmNlfHwibG9jYWwiKX1jYXRjaHt9fSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uIHNtKCl7dW4mJmZldGNoKCIvYXBpL2F1dG8tdXBkYXRlIix7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24oZSl7cmV0dXJuIGUuanNvbigpfSkudGhlbihmdW5jdGlvbihlKXtpZihlLmRtZylyZXR1cm4gZmV0Y2goIi9hcGkvbWFjb3MtZG1nLXVwZGF0ZT9jdXJyZW50VmVyc2lvbj0iK2VuY29kZVVSSUNvbXBvbmVudCh1bikse2NyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7aWYoISghdC51cGRhdGVBdmFpbGFibGV8fCF0LmRvd25sb2FkVXJsKSl0cnl7V2FuZE5hdGl2ZS5kb3dubG9hZFVwZGF0ZSh0LmRvd25sb2FkVXJsLHQuZmlsZU5hbWV8fCJ3YW5kLXVwZGF0ZS5kbWciLHQuc291cmNlfHwibG9jYWwiKX1jYXRjaHt9fSl9KS5jYXRjaChmdW5jdGlvbigpe30pfWZ1bmN0aW9uIFhhKGUsdCl7dmFyIHI9e307cltlXT10LGZldGNoKCIvYXBpL2F1dG8tdXBkYXRlIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShyKX0pLnRoZW4oZnVuY3Rpb24oaSl7cmV0dXJuIGkuanNvbigpfSkudGhlbihmdW5jdGlvbihpKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYXV0by11cGRhdGUtd2ViLXRvZ2dsZSIpLHU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImF1dG8tdXBkYXRlLWFway10b2dnbGUiKSxzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS1kbWctdG9nZ2xlIik7YSYmKGEuY2hlY2tlZD0hIWkud2ViKSx1JiYodS5jaGVja2VkPSEhaS5hcGspLHMmJihzLmNoZWNrZWQ9ISFpLmRtZyl9KS5jYXRjaChmdW5jdGlvbigpe3ZhciBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdXRvLXVwZGF0ZS0iK2UrIi10b2dnbGUiKTtpJiYoaS5jaGVja2VkPSF0KX0pfWZ1bmN0aW9uIG9tKGUpe2ZldGNoKCIvYXBpL3VwZGF0ZS1jaGFubmVsIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeSh7Y2hhbm5lbDplfSl9KS50aGVuKGZ1bmN0aW9uKHQpe3JldHVybiB0Lmpzb24oKX0pLnRoZW4oZnVuY3Rpb24odCl7dmFyIHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTtyJiYoci5jaGVja2VkPXQuY2hhbm5lbD09PSJiZXRhIiksWm8oKX0pLmNhdGNoKGZ1bmN0aW9uKCl7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJldGEtY2hhbm5lbC10b2dnbGUiKTt0JiYodC5jaGVja2VkPWUhPT0iYmV0YSIpfSl9ZnVuY3Rpb24gZWwoZSl7Zm9yKHZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24iKSxyPTA7cjx0Lmxlbmd0aDtyKyspe3ZhciBpPXRbcl0uZ2V0QXR0cmlidXRlKCJkYXRhLWljb24iKT09PWU7dFtyXS5jbGFzc0xpc3QudG9nZ2xlKCJzZWxlY3RlZCIsaSksdFtyXS5zZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIsaT8idHJ1ZSI6ImZhbHNlIil9fWZ1bmN0aW9uIGhuKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1wZXJtaXNzaW9uLXN0YXR1cyIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXF1ZXN0LWJ0biIpLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi1yZXNldC1idG4iKSxpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIik7aWYoZSl7dmFyIGE9b2koKTtpZihhPT09bnVsbCl7aWYodHlwZW9mIE5vdGlmaWNhdGlvbj4idSIpe2UudGV4dENvbnRlbnQ9Ilx1NEUwRFx1NjUyRlx1NjMwMSIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZmctbXV0ZWQpIix0JiZ0LmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHImJnIuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7cmV0dXJufWE9Tm90aWZpY2F0aW9uLnBlcm1pc3Npb259YT09PSJncmFudGVkIj8oZS50ZXh0Q29udGVudD0iXHU1REYyXHU2Mzg4XHU2NzQzIFx1MjcxMyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksciYmci5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSk6YT09PSJkZW5pZWQiPyhlLnRleHRDb250ZW50PSJcdTVERjJcdTYyRDJcdTdFREQiLGUuc3R5bGUuY29sb3I9InZhcigtLWRhbmdlcikiLHQmJnQuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksciYmci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSk6KGUudGV4dENvbnRlbnQ9Ilx1NjcyQVx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0td2FybmluZykiLHQmJnQuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIiksciYmci5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSl9fWZ1bmN0aW9uIGxtKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiKTtpZihqZSl7d2luZG93Ll9vbk5hdGl2ZVBlcm1pc3Npb25SZXN1bHQ9ZnVuY3Rpb24odCl7aG4oKSxlJiYodD09PSJncmFudGVkIj8oZS50ZXh0Q29udGVudD0iXHUyNzEzIFx1NURGMlx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiKTooZS50ZXh0Q29udGVudD0iXHUyNzE3IFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwQ1x1OEJGN1x1NTcyOFx1N0NGQlx1N0VERlx1OEJCRVx1N0Y2RVx1NEUyRFx1NUYwMFx1NTQyRiBXYW5kIFx1NzY4NFx1OTAxQVx1NzdFNVx1Njc0M1x1OTY1MCIsZS5zdHlsZS5jb2xvcj0idmFyKC0tZGFuZ2VyKSIpLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpLGRlbGV0ZSB3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdH07dHJ5e1dhbmROYXRpdmUucmVxdWVzdFBlcm1pc3Npb24oKX1jYXRjaHt9cmV0dXJufXR5cGVvZiBOb3RpZmljYXRpb24+InUifHxOb3RpZmljYXRpb24ucmVxdWVzdFBlcm1pc3Npb24oKS50aGVuKGZ1bmN0aW9uKHQpe2lmKGhuKCksdD09PSJncmFudGVkIillJiYoZS50ZXh0Q29udGVudD0iXHUyNzEzIFx1NURGMlx1NjM4OFx1Njc0MyIsZS5zdHlsZS5jb2xvcj0idmFyKC0tc3VjY2VzcykiLGUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIikpO2Vsc2UgaWYodD09PSJkZW5pZWQiJiZlKXt2YXIgcj1sb2NhdGlvbi5vcmlnaW47ZS5pbm5lckhUTUw9J1x1NkQ0Rlx1ODlDOFx1NTY2OFx1NURGMlx1NjJFNlx1NjIyQVx1NjM4OFx1Njc0M1x1NUYzOVx1N0E5N1x1RkYwQ1x1OEJGN1x1NjI0Qlx1NTJBOFx1OTFDRFx1N0Y2RVx1RkYxQTxicj48c3BhbiBzdHlsZT0iZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDttYXJnaW46NHB4IDAiPlx1MjQ2MCBcdTcwQjlcdTUxRkJcdTU3MzBcdTU3NDBcdTY4MEZcdTVERTZcdTRGQTdcdTc2ODQgPHNwYW4gc3R5bGU9ImRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Zm9udC1zaXplOjExcHg7dmVydGljYWwtYWxpZ246bWlkZGxlIj5pPC9zcGFuPiBcdTYyMTZcdTk1MDFcdTU2RkVcdTY4MDc8L3NwYW4+PGJyPlx1MjQ2MSBcdTYyN0VcdTUyMzBcdTMwMENcdTkwMUFcdTc3RTVcdTMwMERcdTIxOTIgXHU2NTM5XHU0RTNBXHUzMDBDXHU1MTQxXHU4QkI4XHUzMDBEPGJyPlx1MjQ2MiBcdTUyMzdcdTY1QjBcdTk4NzVcdTk3NjJcdTUzNzNcdTUzRUYnLGUuc3R5bGUuY29sb3I9InZhcigtLWZnLW11dGVkKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX19KX1mdW5jdGlvbiB0bCgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iKTtlJiYoZS5kaXNhYmxlZD0hMSxlLnRleHRDb250ZW50PSIxMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDEiKX1mdW5jdGlvbiBjbSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1tZXNzYWdlIik7bi5kZWxheWVkTm90aWZpY2F0aW9uVGltZXImJihjbGVhclRpbWVvdXQobi5kZWxheWVkTm90aWZpY2F0aW9uVGltZXIpLG4uZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyPW51bGwpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJub3RpZmljYXRpb24tdGVzdC1kZWxheS1idG4iKTt0JiYodC5kaXNhYmxlZD0hMCx0LnRleHRDb250ZW50PSJcdTVERjJcdTVCODlcdTYzOTJcdUZGMDgxMHNcdUZGMDkiKSxlJiYoZS5pbm5lckhUTUw9Ilx1NURGMlx1NUI4OVx1NjM5MiAxMCBcdTc5RDJcdTU0MEVcdTUzRDFcdTkwMDFcdTZENEJcdThCRDVcdTkwMUFcdTc3RTVcdUZGMENcdThCRjdcdTUyMDdcdTUyMzBcdTU0MEVcdTUzRjBcdTdCNDlcdTVGODVcdTMwMDIiLGUuc3R5bGUuY29sb3I9InZhcigtLXRleHQtc2Vjb25kYXJ5KSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSksbi5kZWxheWVkTm90aWZpY2F0aW9uVGltZXI9c2V0VGltZW91dChmdW5jdGlvbigpe24uZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyPW51bGwsdGwoKSxubCgpfSwxZTQpfWZ1bmN0aW9uIG5sKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5vdGlmaWNhdGlvbi10ZXN0LW1lc3NhZ2UiKSx0PVtdO24uZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyJiYoY2xlYXJUaW1lb3V0KG4uZGVsYXllZE5vdGlmaWNhdGlvblRpbWVyKSxuLmRlbGF5ZWROb3RpZmljYXRpb25UaW1lcj1udWxsLHRsKCkpO3ZhciByPWhmKCk7dC5wdXNoKHI/Ilx1MjcxMyBcdTYzRDBcdTc5M0FcdTk3RjMiOiJcdTI3MTcgXHU2M0QwXHU3OTNBXHU5N0YzXHVGRjA4XHU2NUUwXHU2Q0Q1XHU2NEFEXHU2NTNFXHVGRjA5Iik7dmFyIGk9bi5ub3RpZkJ1YmJsZTtpZihkYSh7dGl0bGU6Ilx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNSIsYm9keToiXHU4RkQ5XHU2NjJGXHU0RTAwXHU2NzYxXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1XHUzMDAyIix0eXBlOiJpbmZvIixpY29uOiJcdTI2NkEiLGR1cmF0aW9uOjVlMyxwbGF5U291bmQ6ITF9KSx0LnB1c2goaT8iXHUyNzEzIFx1NUU5NFx1NzUyOFx1NTE4NVx1NkMxNFx1NkNFMSI6Ilx1MjAxMyBcdTVFOTRcdTc1MjhcdTUxODVcdTZDMTRcdTZDRTFcdUZGMDhcdTVERjJcdTUxNzNcdTk1RURcdUZGMDkiKSxqZSl7dmFyIGE9b2koKTtpZihhPT09ImdyYW50ZWQiKXRyeXtXYW5kTmF0aXZlLnNlbmROb3RpZmljYXRpb24oIldhbmQgXHU2RDRCXHU4QkQ1XHU5MDFBXHU3N0U1IiwiXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHU1REYyXHU2QjYzXHU1RTM4XHU1REU1XHU0RjVDXHUzMDAyIiwid2FuZC10ZXN0IiksdC5wdXNoKCJcdTI3MTMgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1Iil9Y2F0Y2h7dC5wdXNoKCJcdTI3MTcgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHVGRjA4XHU1M0QxXHU5MDAxXHU1OTMxXHU4RDI1XHVGRjA5Iil9ZWxzZSBpZihhPT09ImRlbmllZCIpdC5wdXNoKCJcdTI3MTcgXHU3Q0ZCXHU3RURGXHU5MDFBXHU3N0U1XHVGRjA4XHU1REYyXHU2MkQyXHU3RUREXHVGRjBDXHU4QkY3XHU1NzI4XHU3Q0ZCXHU3RURGXHU4QkJFXHU3RjZFXHU0RTJEXHU1RjAwXHU1NDJGXHVGRjA5Iik7ZWxzZXt3aW5kb3cuX29uTmF0aXZlUGVybWlzc2lvblJlc3VsdD1mdW5jdGlvbihvKXtpZihobigpLG89PT0iZ3JhbnRlZCIpdHJ5e1dhbmROYXRpdmUuc2VuZE5vdGlmaWNhdGlvbigiV2FuZCBcdTZENEJcdThCRDVcdTkwMUFcdTc3RTUiLCJcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdTVERjJcdTZCNjNcdTVFMzhcdTVERTVcdTRGNUNcdTMwMDIiLCJ3YW5kLXRlc3QiKSx0LnB1c2goIlx1MjcxMyBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdUZGMDhcdTVERjJcdTYzODhcdTY3NDNcdUZGMDkiKX1jYXRjaHt0LnB1c2goIlx1MjcxNyBcdTdDRkJcdTdFREZcdTkwMUFcdTc3RTVcdUZGMDhcdTUzRDFcdTkwMDFcdTU5MzFcdThEMjVcdUZGMDkiKX1lbHNlIHQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwOSIpO3RyKGUsdCksZGVsZXRlIHdpbmRvdy5fb25OYXRpdmVQZXJtaXNzaW9uUmVzdWx0fTt0cnl7V2FuZE5hdGl2ZS5yZXF1ZXN0UGVybWlzc2lvbigpfWNhdGNoe31yZXR1cm59dHIoZSx0KTtyZXR1cm59aWYodHlwZW9mIE5vdGlmaWNhdGlvbj4idSIpe3QucHVzaCgiXHUyMDEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NEUwRFx1NjUyRlx1NjMwMVx1RkYwOSIpLHRyKGUsdCk7cmV0dXJufXZhciB1PU5vdGlmaWNhdGlvbi5wZXJtaXNzaW9uO2lmKHU9PT0iZ3JhbnRlZCIpe3RyeXt2YXIgcz1uZXcgTm90aWZpY2F0aW9uKCJXYW5kIFx1NkQ0Qlx1OEJENVx1OTAxQVx1NzdFNSIse2JvZHk6Ilx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1NURGMlx1NkI2M1x1NUUzOFx1NURFNVx1NEY1Q1x1MzAwMiIsaWNvbjoiL2Zhdmljb24uaWNvIix0YWc6IndhbmQtdGVzdCJ9KTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cy5jbG9zZSgpfSw1ZTMpLHQucHVzaCgiXHUyNzEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNSIpfWNhdGNoe3QucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NTNEMVx1OTAwMVx1NTkzMVx1OEQyNVx1RkYwQ1x1NTNFRlx1ODBGRFx1OTcwMFx1ODk4MSBIVFRQU1x1RkYwOSIpfXRyKGUsdCl9ZWxzZSB1PT09ImRlbmllZCI/KHQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NURGMlx1NjJEMlx1N0VERFx1RkYwOSIpLHRyKGUsdCkpOk5vdGlmaWNhdGlvbi5yZXF1ZXN0UGVybWlzc2lvbigpLnRoZW4oZnVuY3Rpb24obyl7aG4oKSxvPT09ImdyYW50ZWQiP3QucHVzaCgiXHUyNzEzIFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NURGMlx1NjM4OFx1Njc0M1x1RkYwOSIpOnQucHVzaCgiXHUyNzE3IFx1N0NGQlx1N0VERlx1OTAxQVx1NzdFNVx1RkYwOFx1NjcyQVx1NjM4OFx1Njc0M1x1RkYwOSIpLHRyKGUsdCl9KX1mdW5jdGlvbiB0cihlLHQpe2lmKGUpe2UuaW5uZXJIVE1MPXQubWFwKGZ1bmN0aW9uKGkpe3JldHVybiBwKGkpfSkuam9pbigiPGJyPiIpO3ZhciByPXQuZXZlcnkoZnVuY3Rpb24oaSl7cmV0dXJuIGkuaW5kZXhPZigiXHUyNzEzIik9PT0wfHxpLmluZGV4T2YoIlx1MjAxMyIpPT09MH0pO2Uuc3R5bGUuY29sb3I9cj8idmFyKC0tc3VjY2VzcykiOiJ2YXIoLS13YXJuaW5nKSIsZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX19ZnVuY3Rpb24gZnQoZSl7aWYoIWV8fHR5cGVvZiBlIT0ib2JqZWN0Inx8IW4udGVybWluYWwpcmV0dXJuIGU7dHJ5e3R5cGVvZiBuLnRlcm1pbmFsLnJlbWVhc3VyZT09ImZ1bmN0aW9uIiYmbi50ZXJtaW5hbC5yZW1lYXN1cmUoKX1jYXRjaHt9dmFyIHQ9bi50ZXJtaW5hbC5jb2xzLHI9bi50ZXJtaW5hbC5yb3dzO3JldHVybiB0eXBlb2YgdD09Im51bWJlciImJnR5cGVvZiByPT0ibnVtYmVyIiYmTnVtYmVyLmlzRmluaXRlKHQpJiZOdW1iZXIuaXNGaW5pdGUocikmJnQ+MCYmcj4wJiYoZS5jb2xzPXQsZS5yb3dzPXIpLGV9ZnVuY3Rpb24gcmwoKXtyZXR1cm4gbi50ZXJtaW5hbCYmbi50ZXJtaW5hbC5jb2xzP1Byb21pc2UucmVzb2x2ZSgpOm5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe3ZhciB0PSExLHI9ZnVuY3Rpb24oKXt0fHwodD0hMCxlKCkpfSxpPXNldFRpbWVvdXQociwyZTMpO3RyeXtZbigpfWNhdGNoe31yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtyZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtuLnRlcm1pbmFsJiZuLnRlcm1pbmFsLmNvbHMmJihjbGVhclRpbWVvdXQoaSkscigpKX0pfSl9KX1mdW5jdGlvbiBpbCgpe3ZhciBlPWh0KCksdD1ldCgpLHI9V3QoZSxuLmNvbmZpZyYmbi5jb25maWcuZGVmYXVsdE1vZGU/bi5jb25maWcuZGVmYXVsdE1vZGU6ImRlZmF1bHQiKTtuLnByZWZlcnJlZENvbW1hbmQ9ZSxuLmNoYXRNb2RlPVd0KGUsbi5jaGF0TW9kZSkscmwoKS50aGVuKGZ1bmN0aW9uKCl7cmV0dXJuIGZldGNoKCIvYXBpL2NvbW1hbmRzIix7bWV0aG9kOiJQT1NUIixoZWFkZXJzOnsiQ29udGVudC1UeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiIsYm9keTpKU09OLnN0cmluZ2lmeShmdCh7Y29tbWFuZDplLHByb3ZpZGVyOmUsY3dkOnQsbW9kZTpyfSkpfSl9KS50aGVuKGZ1bmN0aW9uKGkpe3JldHVybiBpLmpzb24oKX0pLnRoZW4oZnVuY3Rpb24oaSl7aWYoaS5lcnJvcil7ayhpLmVycm9yLCJlcnJvciIpO3JldHVybn1yZXR1cm4gbi5zZWxlY3RlZElkPWkuaWQseWUoKSxuLmRyYWZ0c1tpLmlkXT0iIixCdCgpLFJ0KCl9KS50aGVuKGZ1bmN0aW9uKCl7anQoITApfSkuY2F0Y2goZnVuY3Rpb24oKXtrKCJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQThcdTRGMUFcdThCRERcdTMwMDIiLCJlcnJvciIpfSl9dmFyIF9yPSExO2Z1bmN0aW9uIGRtKCl7aWYoIV9yKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW9kYWwtZXJyb3IiKSxyPWh0KCksaT1uLnNlc3Npb25DcmVhdGVLaW5kfHwic3RydWN0dXJlZCIsYT1uLnNlc3Npb25DcmVhdGVXb3JrdHJlZT09PSEwO3NpKHQpO3ZhciB1PWV0KCkscz0oZT9lLnZhbHVlLnRyaW0oKToiIil8fHUsbz1XdChyLG4ubW9kZVZhbHVlKTtpZihpPT09InN0cnVjdHVyZWQiKXtmbShzLG8sYSx0KTtyZXR1cm59cG0ocixzLG8sYSx0KX19ZnVuY3Rpb24gZm0oZSx0LHIsaSl7dmFyIGE9bi5zZXNzaW9uVG9vbD09PSJjb2RleCI/ImNvZGV4IjoiY2xhdWRlIjtyZXR1cm4gX3I9ITAsbi5tb2RlVmFsdWU9dCxuLmNoYXRNb2RlPXQsbi5zZXNzaW9uVG9vbD1hLG4ucHJlZmVycmVkQ29tbWFuZD1hLEJpKCksWG4oeXQoKSksWW8odm9pZCAwLGUsdCxyKS50aGVuKGZ1bmN0aW9uKHUpe3JldHVybiBRdChlKSxtbigpLFZ0KCksdX0pLnRoZW4oZnVuY3Rpb24oKXtqdCghMCl9KS5jYXRjaChmdW5jdGlvbih1KXt6ZShpLHUmJnUubWVzc2FnZXx8Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOFx1N0VEM1x1Njc4NFx1NTMxNlx1NEYxQVx1OEJERFx1RkYwQ1x1OEJGN1x1Nzg2RVx1OEJBNCBDbGF1ZGUgXHU1REYyXHU2QjYzXHU3ODZFXHU1Qjg5XHU4OEM1XHUzMDAyIil9KS5maW5hbGx5KGZ1bmN0aW9uKCl7X3I9ITF9KX1mdW5jdGlvbiBwbShlLHQscixpLGEpe19yPSEwLG4ubW9kZVZhbHVlPXIsbi5jaGF0TW9kZT1yLG4uc2Vzc2lvblRvb2w9ZSxuLnByZWZlcnJlZENvbW1hbmQ9ZSxCaSgpLHJsKCkudGhlbihmdW5jdGlvbigpe3JldHVybiBmZXRjaCgiL2FwaS9jb21tYW5kcyIse21ldGhvZDoiUE9TVCIsaGVhZGVyczp7IkNvbnRlbnQtVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24ifSxjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGJvZHk6SlNPTi5zdHJpbmdpZnkoZnQoe2NvbW1hbmQ6ZSxwcm92aWRlcjplLGN3ZDp0LG1vZGU6cix3b3JrdHJlZUVuYWJsZWQ6aX0pKX0pfSkudGhlbihmdW5jdGlvbih1KXtyZXR1cm4gdS5qc29uKCl9KS50aGVuKGZ1bmN0aW9uKHUpe2lmKHUuZXJyb3Ipe3plKGEsdS5lcnJvcik7cmV0dXJufXJldHVybiBuLnNlbGVjdGVkSWQ9dS5pZCx5ZSgpLFF0KHQpLG4uZHJhZnRzW3UuaWRdPSIiLEJ0KCksbW4oKSxWdCgpLFJ0KCl9KS50aGVuKGZ1bmN0aW9uKCl7bi5zZWxlY3RlZElkP3p0KG4uc2VsZWN0ZWRJZCk6anQoITApfSkuY2F0Y2goZnVuY3Rpb24oKXt6ZShhLGU9PT0iY29kZXgiPyJcdTY1RTBcdTZDRDVcdTU0MkZcdTUyQTggQ29kZXggXHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3ODZFXHU4QkE0IGNvZGV4IFx1NURGMlx1NkI2M1x1Nzg2RVx1NUI4OVx1ODhDNVx1NUU3Nlx1NTNFRlx1NTcyOFx1N0VDOFx1N0FFRlx1NEUyRFx1NjI2N1x1ODg0Q1x1MzAwMiI6Ilx1NjVFMFx1NkNENVx1NTQyRlx1NTJBOCBDbGF1ZGUgXHU0RjFBXHU4QkREXHVGRjBDXHU4QkY3XHU3ODZFXHU4QkE0IENsYXVkZSBcdTVERjJcdTZCNjNcdTc4NkVcdTVCODlcdTg4QzVcdTMwMDIiKX0pLmZpbmFsbHkoZnVuY3Rpb24oKXtfcj0hMX0pfWZ1bmN0aW9uIHZtKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkIik7ZSYmKGUuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGFsKSxlLmFkZEV2ZW50TGlzdGVuZXIoImtleWRvd24iLGZ1bmN0aW9uKHQpeyh0LmtleT09PSJFbnRlciJ8fHQua2V5PT09IiAiKSYmKHQucHJldmVudERlZmF1bHQoKSxhbCgpKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbih0KXt2YXIgcj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtZHJvcGRvd24iKTtpZighKCFyfHxyLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIikpJiYhdC50YXJnZXQuY2xvc2VzdCgiLmJsYW5rLWNoYXQtY3dkLXdyYXAiKSl7ci5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKTt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtYXJyb3ciKTtpJiYoaS50ZXh0Q29udGVudD0iXHUyNUJDIil9fSkpfWZ1bmN0aW9uIGFsKCl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkLWRyb3Bkb3duIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtYXJyb3ciKTtpZihlKXt2YXIgcj1lLmNsYXNzTGlzdC5jb250YWlucygiaGlkZGVuIik7cj8obW0oZSksZS5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKSx0JiYodC50ZXh0Q29udGVudD0iXHUyNUIyIikpOihlLmNsYXNzTGlzdC5hZGQoImhpZGRlbiIpLHQmJih0LnRleHRDb250ZW50PSJcdTI1QkMiKSl9fWZ1bmN0aW9uIG1tKGUpe3ZhciB0PW5uKCk7ZS5pbm5lckhUTUw9JzxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWxvYWRpbmciPlx1NTJBMFx1OEY3RFx1NEUyRC4uLjwvZGl2PicscmEoZnVuY3Rpb24ocil7dmFyIGk9IiIsYT1uLndvcmtpbmdEaXJ8fHQ7aWYoaSs9JzxkaXYgY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0nKyhhPT09dD8iIGFjdGl2ZSI6IiIpKyciIGRhdGEtcGF0aD0iJytwKHQpKyciPjxzcGFuIGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pdGVtLWxhYmVsIj5cdTlFRDhcdThCQTQ8L3NwYW4+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aCI+JytwKHQpKyI8L3NwYW4+PC9kaXY+IixyLmxlbmd0aCl7dmFyIHU9e307dVt0XT0hMCxyLmZvckVhY2goZnVuY3Rpb24ocyl7dVtzLnBhdGhdfHwodVtzLnBhdGhdPSEwLGkrPSc8ZGl2IGNsYXNzPSJibGFuay1jaGF0LWN3ZC1pdGVtJysoYT09PXMucGF0aD8iIGFjdGl2ZSI6IiIpKyciIGRhdGEtcGF0aD0iJytwKHMucGF0aCkrJyI+PHNwYW4gY2xhc3M9ImJsYW5rLWNoYXQtY3dkLWl0ZW0tcGF0aCI+JytwKHMucGF0aCkrIjwvc3Bhbj48L2Rpdj4iKX0pfWUuaW5uZXJIVE1MPWksZS5xdWVyeVNlbGVjdG9yQWxsKCIuYmxhbmstY2hhdC1jd2QtaXRlbSIpLmZvckVhY2goZnVuY3Rpb24ocyl7cy5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24obyl7by5zdG9wUHJvcGFnYXRpb24oKTt2YXIgbD1zLmRhdGFzZXQucGF0aDtuLndvcmtpbmdEaXI9bDt0cnl7bG9jYWxTdG9yYWdlLnNldEl0ZW0oIndhbmQtd29ya2luZy1kaXIiLGwpfWNhdGNoe312YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiYmxhbmstY2hhdC1jd2QtcGF0aCIpO2MmJihjLnRleHRDb250ZW50PWwpLGUuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIik7dmFyIGY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJsYW5rLWNoYXQtY3dkLWFycm93Iik7ZiYmKGYudGV4dENvbnRlbnQ9Ilx1MjVCQyIpO3ZhciBkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmb2xkZXItcGlja2VyLWlucHV0Iik7ZCYmKGQudmFsdWU9bCl9KX0pfSl9ZnVuY3Rpb24gZ20oKXt2YXIgZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicmVjZW50LXBhdGhzLWJ1YmJsZXMiKTtlJiZyYShmdW5jdGlvbih0KXtpZighdC5sZW5ndGgpe2UuaW5uZXJIVE1MPSIiO3JldHVybn1lLmlubmVySFRNTD10Lm1hcChmdW5jdGlvbihyKXtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0icmVjZW50LXBhdGgtYnViYmxlIiBkYXRhLXBhdGg9IicrcChyLnBhdGgpKyciIHRpdGxlPSInK3Aoci5wYXRoKSsnIj4nK3Aoci5uYW1lKSsiPC9idXR0b24+In0pLmpvaW4oIiIpLGUucXVlcnlTZWxlY3RvckFsbCgiLnJlY2VudC1wYXRoLWJ1YmJsZSIpLmZvckVhY2goZnVuY3Rpb24ocil7ci5hZGRFdmVudExpc3RlbmVyKCJjbGljayIsZnVuY3Rpb24oKXt2YXIgaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7aSYmKGkudmFsdWU9ci5kYXRhc2V0LnBhdGh8fCIiLG4uY3dkVmFsdWU9ci5kYXRhc2V0LnBhdGh8fCIiKX0pfSl9KX1mdW5jdGlvbiB1bCgpe24uc3VnZ2VzdGlvblRpbWVyJiZjbGVhclRpbWVvdXQobi5zdWdnZXN0aW9uVGltZXIpLG4uc3VnZ2VzdGlvblRpbWVyPXNldFRpbWVvdXQoaG0sMTIwKX1mdW5jdGlvbiBobSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJzZXNzaW9uLW1vZGFsIik7aWYoZSYmZS5jbGFzc0xpc3QuY29udGFpbnMoImhpZGRlbiIpKXtucigpO3JldHVybn12YXIgdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY3dkIik7dCYmZmV0Y2goIi9hcGkvcGF0aC1zdWdnZXN0aW9ucz9xPSIrZW5jb2RlVVJJQ29tcG9uZW50KHQudmFsdWUudHJpbSgpKSx7Y3JlZGVudGlhbHM6InNhbWUtb3JpZ2luIn0pLnRoZW4oZnVuY3Rpb24ocil7cmV0dXJuIHIuanNvbigpfSkudGhlbih5bSkuY2F0Y2gobnIpfWZ1bmN0aW9uIHltKGUpe3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2Qtc3VnZ2VzdGlvbnMiKTtpZighdHx8IWUubGVuZ3RoKXtucigpO3JldHVybn10LmlubmVySFRNTD1lLm1hcChmdW5jdGlvbihyKXtyZXR1cm4nPGJ1dHRvbiBjbGFzcz0ic3VnZ2VzdGlvbi1pdGVtIiBkYXRhLXBhdGg9IicrcChyLnBhdGgpKyciPjxzdHJvbmc+JytwKHIubmFtZSkrIjwvc3Ryb25nPjxzbWFsbD4iK3Aoci5wYXRoKSsiPC9zbWFsbD48L2J1dHRvbj4ifSkuam9pbigiIiksdC5xdWVyeVNlbGVjdG9yQWxsKCIuc3VnZ2VzdGlvbi1pdGVtIikuZm9yRWFjaChmdW5jdGlvbihyKXtyLmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixmdW5jdGlvbigpe2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2QiKS52YWx1ZT1yLmRhdGFzZXQucGF0aHx8IiIsbi5jd2RWYWx1ZT1yLmRhdGFzZXQucGF0aHx8IiIsbnIoKX0pfSksdC5jbGFzc0xpc3QucmVtb3ZlKCJoaWRkZW4iKX1mdW5jdGlvbiBucigpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjd2Qtc3VnZ2VzdGlvbnMiKTtlJiYoZS5jbGFzc0xpc3QuYWRkKCJoaWRkZW4iKSxlLmlubmVySFRNTD0iIil9ZnVuY3Rpb24gYm0oZSl7aWYoIWUuaXNDb21wb3Npbmcpe2lmKFlzKGUpKXtrYShlKTtyZXR1cm59aWYoZS5rZXk9PT0iRW50ZXIiKXtpZihlLnNoaWZ0S2V5KXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO2lmKHQpe3ZhciByPXQuc2VsZWN0aW9uU3RhcnR8fDAsaT10LnZhbHVlLGE9aS5zbGljZSgwLHIpK2AKYCtpLnNsaWNlKHIpO3QudmFsdWU9YSx0LnNlbGVjdGlvblN0YXJ0PXIrMSx0LnNlbGVjdGlvbkVuZD1yKzEsdXQoYSwhMCksSHQodCl9cmV0dXJufWUucHJldmVudERlZmF1bHQoKTt2YXIgdT0hIShlLm1ldGFLZXl8fGUuY3RybEtleSk7SHModT97aW50ZXJydXB0OiEwfTp2b2lkIDApO3JldHVybn1pZihlLmtleT09PSJCYWNrc3BhY2UiKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7dmFyIG09ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpO20mJnV0KG0udmFsdWUsITApfSwwKTtyZXR1cm59aWYoZS5rZXk9PT0iVGFiIil7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciB0PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtpZih0KXt2YXIgcj10LnNlbGVjdGlvblN0YXJ0fHwwLGk9dC52YWx1ZSxhPWkuc2xpY2UoMCxyKSsiCSIraS5zbGljZShyKTt0LnZhbHVlPWEsdXQoYSwhMCl9cmV0dXJufWlmKGUua2V5PT09IkVzY2FwZSIpe2UucHJldmVudERlZmF1bHQoKTt2YXIgcz15dCgpO3VlKHMpP3MmJnMuc3RydWN0dXJlZFN0YXRlJiZzLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmQWEoKTpndChrcigiZXNjYXBlIiksImVzY2FwZSIpO3JldHVybn1pZigoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImMiKXt2YXIgbz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94IiksbD1vJiZvLnNlbGVjdGlvblN0YXJ0IT09by5zZWxlY3Rpb25FbmR8fHZpKCk7aWYobClyZXR1cm47dmFyIGM9eXQoKTtpZih1ZShjKSl7ZS5wcmV2ZW50RGVmYXVsdCgpLGMmJmMuc3RydWN0dXJlZFN0YXRlJiZjLnN0cnVjdHVyZWRTdGF0ZS5pbkZsaWdodCYmQWEoKTtyZXR1cm59ZS5wcmV2ZW50RGVmYXVsdCgpLGd0KGtyKCJjdHJsX2MiKSwiY3RybF9jIik7cmV0dXJufWlmKChlLm1ldGFLZXl8fGUuY3RybEtleSkmJmUua2V5LnRvTG93ZXJDYXNlKCk9PT0iZCIpe3ZhciBmPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxkPWYmJmYuc2VsZWN0aW9uU3RhcnQhPT1mLnNlbGVjdGlvbkVuZHx8dmkoKTtpZihkKXJldHVybjt2YXIgdj15dCgpO2lmKHVlKHYpKXtlLnByZXZlbnREZWZhdWx0KCk7cmV0dXJufWUucHJldmVudERlZmF1bHQoKSxndChrcigiY3RybF9kIiksImN0cmxfZCIpO3JldHVybn1pZigoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImwiKXtlLnByZXZlbnREZWZhdWx0KCk7dmFyIGc9eXQoKTtpZih1ZShnKSlyZXR1cm47Z3Qoa3IoImN0cmxfbCIpLCJjdHJsX2wiKTtyZXR1cm59aWYoISgoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09ImEiKSYmISgoZS5tZXRhS2V5fHxlLmN0cmxLZXkpJiZlLmtleS50b0xvd2VyQ2FzZSgpPT09InYiKSl7aWYoKGUubWV0YUtleXx8ZS5jdHJsS2V5KSYmZS5rZXkudG9Mb3dlckNhc2UoKT09PSJ4Iil7dmFyIHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLGg9dCYmdC5zZWxlY3Rpb25TdGFydCE9PXQuc2VsZWN0aW9uRW5kO2lmKGgpcmV0dXJuO2UucHJldmVudERlZmF1bHQoKSxndCgiGCIsImN0cmxfeCIpO3JldHVybn1lLmtleS5sZW5ndGg9PT0xJiYhZS5jdHJsS2V5JiYhZS5tZXRhS2V5JiYhZS5hbHRLZXkmJnNldFRpbWVvdXQoZnVuY3Rpb24oKXt2YXIgbT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7bSYmdXQobS52YWx1ZSl9LDApfX19dmFyIEVtPTEwKjEwMjQqMTAyNDtmdW5jdGlvbiBGbShlKXtyZXR1cm4gZTwxMDI0P2UrIiBCIjplPDEwMjQqMTAyND8oZS8xMDI0KS50b0ZpeGVkKDEpKyIgS0IiOihlLygxMDI0KjEwMjQpKS50b0ZpeGVkKDEpKyIgTUIifWZ1bmN0aW9uIHdtKGUpe3JldHVybi9eaW1hZ2VcLyhwbmd8anBlP2d8Z2lmfHdlYnB8Ym1wfHN2Z1wreG1sKS8udGVzdChlKX1mdW5jdGlvbiBaYShlKXtpZihlKXtpZihlLnNpemU+RW0pe2soIlx1NjU4N1x1NEVGNlx1OEZDN1x1NTkyN1x1RkYwOFx1NEUwQVx1OTY1MCAxMCBNQlx1RkYwOTogIitlLm5hbWUsImVycm9yIik7cmV0dXJufXZhciB0PXtmaWxlOmUsbmFtZTplLm5hbWUsc2l6ZTplLnNpemUscHJldmlld1VybDpudWxsfTt3bShlLnR5cGUpJiYodC5wcmV2aWV3VXJsPVVSTC5jcmVhdGVPYmplY3RVUkwoZSkpLG4ucGVuZGluZ0F0dGFjaG1lbnRzLnB1c2godCksZXUoKX19ZnVuY3Rpb24gQ20oZSl7dmFyIHQ9bi5wZW5kaW5nQXR0YWNobWVudHMuc3BsaWNlKGUsMSk7dC5sZW5ndGgmJnRbMF0ucHJldmlld1VybCYmVVJMLnJldm9rZU9iamVjdFVSTCh0WzBdLnByZXZpZXdVcmwpLGV1KCl9ZnVuY3Rpb24gQm0oKXtuLnBlbmRpbmdBdHRhY2htZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGUpe2UucHJldmlld1VybCYmVVJMLnJldm9rZU9iamVjdFVSTChlLnByZXZpZXdVcmwpfSksbi5wZW5kaW5nQXR0YWNobWVudHM9W10sZXUoKX1mdW5jdGlvbiBldSgpe3ZhciBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhdHRhY2htZW50LXByZXZpZXciKTtpZihlKXt2YXIgdD1uLnBlbmRpbmdBdHRhY2htZW50cztpZih0Lmxlbmd0aD09PTApe2UuY2xhc3NMaXN0LmFkZCgiaGlkZGVuIiksZS5pbm5lckhUTUw9IiI7cmV0dXJufWUuY2xhc3NMaXN0LnJlbW92ZSgiaGlkZGVuIik7Zm9yKHZhciByPSIiLGk9MDtpPHQubGVuZ3RoO2krKyl7dmFyIGE9dFtpXSx1PWEucHJldmlld1VybD8nPGltZyBzcmM9IicrcChhLnByZXZpZXdVcmwpKyciIGFsdD0iIj4nOic8c3BhbiBjbGFzcz0iYXR0LWljb24iPicrSygiZmlsZSIse3NpemU6MTMsc3Ryb2tlV2lkdGg6MS43fSkrIjwvc3Bhbj4iO3IrPSc8c3BhbiBjbGFzcz0iYXR0YWNobWVudC1waWxsIiBkYXRhLWluZGV4PSInK2krJyI+Jyt1Kyc8c3BhbiBjbGFzcz0iYXR0LW5hbWUiIHRpdGxlPSInK3AoYS5uYW1lKSsnIj4nK3AoYS5uYW1lKSsnPC9zcGFuPjxzcGFuIGNsYXNzPSJhdHQtc2l6ZSI+JytGbShhLnNpemUpKyc8L3NwYW4+PGJ1dHRvbiBjbGFzcz0iYXR0LXJlbW92ZSIgZGF0YS1pbmRleD0iJytpKyciIHRpdGxlPSJcdTc5RkJcdTk2NjQiPlx4RDc8L2J1dHRvbj48L3NwYW4+J31lLmlubmVySFRNTD1yLGUucXVlcnlTZWxlY3RvckFsbCgiLmF0dC1yZW1vdmUiKS5mb3JFYWNoKGZ1bmN0aW9uKHMpe3MuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGZ1bmN0aW9uKG8pe28ucHJldmVudERlZmF1bHQoKSxvLnN0b3BQcm9wYWdhdGlvbigpLENtKHBhcnNlSW50KHMuZ2V0QXR0cmlidXRlKCJkYXRhLWluZGV4IiksMTApKX0pfSl9fWZ1bmN0aW9uIERtKGUpe2lmKCFuLnBlbmRpbmdBdHRhY2htZW50cy5sZW5ndGgpcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7dmFyIHQ9bmV3IEZvcm1EYXRhO3JldHVybiBuLnBlbmRpbmdBdHRhY2htZW50cy5mb3JFYWNoKGZ1bmN0aW9uKHIpe3QuYXBwZW5kKCJmaWxlcyIsci5maWxlLHIubmFtZSl9KSxmZXRjaCgiL2FwaS9zZXNzaW9ucy8iK2VuY29kZVVSSUNvbXBvbmVudChlKSsiL3VwbG9hZCIse21ldGhvZDoiUE9TVCIsYm9keTp0LGNyZWRlbnRpYWxzOiJzYW1lLW9yaWdpbiJ9KS50aGVuKGZ1bmN0aW9uKHIpe3JldHVybiByLm9rP3IuanNvbigpOnIuanNvbigpLnRoZW4oZnVuY3Rpb24oaSl7dGhyb3cgbmV3IEVycm9yKGkuZXJyb3J8fCJcdTRFMEFcdTRGMjBcdTU5MzFcdThEMjUiKX0pfSkudGhlbihmdW5jdGlvbihyKXtyZXR1cm4gci5maWxlc3x8W119KX1mdW5jdGlvbiBrbShlKXtpZighZXx8IWUubGVuZ3RoKXJldHVybiIiO3ZhciB0PWUubWFwKGZ1bmN0aW9uKHIpe3JldHVybiByLnNhdmVkUGF0aH0pO3JldHVybmBbXHU5NjQ0XHU0RUY2XHU1REYyXHU0RTBBXHU0RjIwXHVGRjBDXHU4QkY3XHU2N0U1XHU3NzBCXHU0RUU1XHU0RTBCXHU2NTg3XHU0RUY2OgpgK3Quam9pbihgCmApK2BdCgpgfWZ1bmN0aW9uIHNsKGUpe2lmKCFuLnRlcm1pbmFsSW50ZXJhY3RpdmV8fCFlKXJldHVybiExO3ZhciB0PWUudmFsdWV8fCIiO3JldHVybiB0PyhndCh0LCJpbnRlcmFjdGl2ZV90ZXh0IikuY2F0Y2goZnVuY3Rpb24oKXt9KSxlLnZhbHVlPSIiLEh0KGUpLHV0KCIiLCEwKSwhMCk6ITF9ZnVuY3Rpb24gQW0oZSl7dmFyIHQ9ZS5jbGlwYm9hcmREYXRhJiZlLmNsaXBib2FyZERhdGEuaXRlbXM7aWYodCYmIW4udGVybWluYWxJbnRlcmFjdGl2ZSl7Zm9yKHZhciByPTA7cjx0Lmxlbmd0aDtyKyspaWYodFtyXS50eXBlLmluZGV4T2YoImltYWdlLyIpPT09MCl7ZS5wcmV2ZW50RGVmYXVsdCgpO3ZhciBpPXRbcl0uZ2V0QXNGaWxlKCk7aSYmWmEoaSk7cmV0dXJufX12YXIgYT1lLmNsaXBib2FyZERhdGEmJmUuY2xpcGJvYXJkRGF0YS5nZXREYXRhKCJ0ZXh0Iik7aWYoYSl7aWYoZS5wcmV2ZW50RGVmYXVsdCgpLG4udGVybWluYWxJbnRlcmFjdGl2ZSl7Z3QoYSwicGFzdGUiKS5jYXRjaChmdW5jdGlvbigpe30pO3JldHVybn12YXIgdT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiaW5wdXQtYm94Iik7aWYodSl7dmFyIHM9dS5zZWxlY3Rpb25TdGFydHx8MCxvPXUuc2VsZWN0aW9uRW5kfHwwLGw9dS52YWx1ZSxjPWwuc2xpY2UoMCxzKSthK2wuc2xpY2Uobyk7dS52YWx1ZT1jLHV0KGMpfX19ZnVuY3Rpb24gcGcoZSl7Z3QoZSksdXQoeG0oKStlKX1mdW5jdGlvbiB4bSgpe2lmKG4uc2VsZWN0ZWRJZCl7aWYobi5kcmFmdHNbbi5zZWxlY3RlZElkXSE9PXZvaWQgMClyZXR1cm4gbi5kcmFmdHNbbi5zZWxlY3RlZElkXTt0cnl7dmFyIGU9bG9jYWxTdG9yYWdlLmdldEl0ZW0oIndhbmQtZHJhZnQtIituLnNlbGVjdGVkSWQpO2lmKGUpcmV0dXJuIGV9Y2F0Y2h7fX1yZXR1cm4iIn1mdW5jdGlvbiB1dChlLHQpe2lmKG4uc2VsZWN0ZWRJZCl7bi5kcmFmdHNbbi5zZWxlY3RlZElkXT1lO3RyeXtsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgid2FuZC1kcmFmdC0iK24uc2VsZWN0ZWRJZCxlKX1jYXRjaHt9aWYoIXQpe3ZhciByPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKTtyJiYoci52YWx1ZT1lKX19fXZhciB0dT0hMTtmdW5jdGlvbiBTbSgpe2lmKCF0dSl7dmFyIGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImlucHV0LWJveCIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInByb21wdC1vcHRpbWl6ZS1idG4iKSxyPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKGUpe3ZhciBpPShlLnZhbHVlfHwiIikudHJpbSgpO2lmKCFpKXt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmaygiXHU4QkY3XHU1MTQ4XHU4RjkzXHU1MTY1XHU4OTgxXHU0RjE4XHU1MzE2XHU3Njg0XHU1MTg1XHU1QkI5XHUzMDAyIiwiaW5mbyIpLGUuZm9jdXMoKTtyZXR1cm59dHU9ITAsdCYmKHQuY2xhc3NMaXN0LmFkZCgiaXMtbG9hZGluZyIpLHQuZGlzYWJsZWQ9ITAsdC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU2QjYzXHU1NzI4XHU0RjE4XHU1MzE2XHUyMDI2IikpLHImJnIuY2xhc3NMaXN0LmFkZCgiaXMtb3B0aW1pemluZyIpLGUuc2V0QXR0cmlidXRlKCJhcmlhLWJ1c3kiLCJ0cnVlIik7dmFyIGE9ZS5yZWFkT25seTtlLnJlYWRPbmx5PSEwO3ZhciB1PXt0ZXh0Oml9O24mJm4uc2VsZWN0ZWRJZCYmKHUuc2Vzc2lvbklkPW4uc2VsZWN0ZWRJZCksZmV0Y2goIi9hcGkvb3B0aW1pemUtcHJvbXB0Iix7bWV0aG9kOiJQT1NUIixjcmVkZW50aWFsczoic2FtZS1vcmlnaW4iLGhlYWRlcnM6eyJDb250ZW50LVR5cGUiOiJhcHBsaWNhdGlvbi9qc29uIn0sYm9keTpKU09OLnN0cmluZ2lmeSh1KX0pLnRoZW4oZnVuY3Rpb24ocyl7cmV0dXJuIHMuanNvbigpLnRoZW4oZnVuY3Rpb24obyl7cmV0dXJue29rOnMub2ssZGF0YTpvfX0pfSkudGhlbihmdW5jdGlvbihzKXtpZighcy5vayl0aHJvdyBuZXcgRXJyb3Iocy5kYXRhJiZzLmRhdGEuZXJyb3J8fCJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdTU5MzFcdThEMjVcdTMwMDIiKTt2YXIgbz1zLmRhdGEmJnMuZGF0YS5vcHRpbWl6ZWR8fCIiO2lmKCFvKXRocm93IG5ldyBFcnJvcigiQ2xhdWRlIFx1OEZENFx1NTZERVx1NEUzQVx1N0E3QVx1MzAwMiIpO0ltKGUsbyl9KS5jYXRjaChmdW5jdGlvbihzKXt0eXBlb2Ygaz09ImZ1bmN0aW9uIiYmayhzJiZzLm1lc3NhZ2V8fCJcdTYzRDBcdTc5M0FcdThCQ0RcdTRGMThcdTUzMTZcdTU5MzFcdThEMjVcdTMwMDIiLCJlcnJvciIpLHQmJih0LmNsYXNzTGlzdC5yZW1vdmUoImlzLWxvYWRpbmciKSx0LmNsYXNzTGlzdC5hZGQoImlzLXNoYWtlIiksc2V0VGltZW91dChmdW5jdGlvbigpe3QmJnQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtc2hha2UiKX0sNDAwKSl9KS5maW5hbGx5KGZ1bmN0aW9uKCl7dHU9ITEsdCYmKHQuY2xhc3NMaXN0LnJlbW92ZSgiaXMtbG9hZGluZyIpLHQuZGlzYWJsZWQ9ITEsdC5zZXRBdHRyaWJ1dGUoInRpdGxlIiwiXHU2M0QwXHU3OTNBXHU4QkNEXHU0RjE4XHU1MzE2XHVGRjA4QUlcdUZGMDkiKSksciYmci5jbGFzc0xpc3QucmVtb3ZlKCJpcy1vcHRpbWl6aW5nIiksZS5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtYnVzeSIpLGUucmVhZE9ubHk9YX0pfX19ZnVuY3Rpb24gSW0oZSx0KXtpZighZSlyZXR1cm47dmFyIHI9QXJyYXkuZnJvbSh0KSxpPXIubGVuZ3RoO2lmKGk9PT0wKXtlLnZhbHVlPSIiLHV0KCIiLCEwKSxIdChlKTtyZXR1cm59dmFyIGE9TWF0aC5taW4oNzAwLE1hdGgubWF4KDIyMCxpKjgpKSx1PU1hdGgubWluKGksNjApLHM9TWF0aC5jZWlsKGkvdSksbz1hL3UsbD0wO2UudmFsdWU9IiIsSHQoZSk7ZnVuY3Rpb24gYygpe2lmKGw9TWF0aC5taW4oaSxsK3MpLGUudmFsdWU9ci5zbGljZSgwLGwpLmpvaW4oIiIpLEh0KGUpLGw8aSlzZXRUaW1lb3V0KGMsbyk7ZWxzZXt1dCh0LCEwKTt0cnl7ZS5zZXRTZWxlY3Rpb25SYW5nZSh0Lmxlbmd0aCx0Lmxlbmd0aCl9Y2F0Y2h7fX19YygpfWZ1bmN0aW9uIFNpKGUpe3ZhciB0PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5pbnB1dC1jb21wb3NlciIpO2lmKHQpe3ZhciByPWV8fGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJpbnB1dC1ib3giKSxpPSEhKHImJnIudmFsdWUmJnIudmFsdWUubGVuZ3RoPjApO3QuY2xhc3NMaXN0LnRvZ2dsZSgiaGFzLXRleHQiLGkpfX1uLl9zdGF0dXNCYXJUaW1lcklkPW51bGwsbi5fc3RhdHVzQmFyU3RhcnRUaW1lPTA7dmFyIE5yPW51bGwsSWk9MDtmdW5jdGlvbiBudShlKXtpZighZSlyZXR1cm57YWN0aXZlOiExfTtpZihlLmFyY2hpdmVkKXJldHVybnthY3RpdmU6ITF9O3ZhciB0PSEhZS5wZXJtaXNzaW9uQmxvY2tlZCxyPSEhKHVlKGUpJiZlLnN0cnVjdHVyZWRTdGF0ZSYmZS5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQpLGk9IXVlKGUpJiZlLnN0YXR1cz09PSJydW5uaW5nIjtyZXR1cm57YWN0aXZlOnJ8fGl8fHQsaW5GbGlnaHQ6cixwdHlSdW5uaW5nOmkscGVybWlzc2lvbkJsb2NrZWQ6dH19ZnVuY3Rpb24gVG0oZSl7dmFyIHQ9TWF0aC5tYXgoMCxNYXRoLmZsb29yKGUvMWUzKSk7aWYodDw2MClyZXR1cm4gdCsicyI7dmFyIHI9TWF0aC5mbG9vcih0LzYwKSxpPXQlNjA7aWYocjw2MClyZXR1cm4gcisibSIrKGk/IiAiK2krInMiOiIiKTt2YXIgYT1NYXRoLmZsb29yKHIvNjApLHU9ciU2MDtyZXR1cm4gYSsiaCIrKHU/IiAiK3UrIm0iOiIiKX1mdW5jdGlvbiBydShlKXt2YXIgdD1udShlKSxyPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5tYWluLWhlYWRlci1yb3ciKSxpPXI/ci5xdWVyeVNlbGVjdG9yKCIuc2Vzc2lvbi1zdGF0dXMtcGlsbCIpOm51bGwsYT1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY2hhdC1tZXNzYWdlcyIpO2lmKHImJihyLmNsYXNzTGlzdC50b2dnbGUoImlzLXJ1bm5pbmciLHQuYWN0aXZlKSxyLmNsYXNzTGlzdC50b2dnbGUoImlzLXBlcm1pc3Npb24tYmxvY2tlZCIsdC5wZXJtaXNzaW9uQmxvY2tlZCkpLGkpe3ZhciB1PWkucXVlcnlTZWxlY3RvcigiLnNlc3Npb24tc3RhdHVzLWVsYXBzZWQiKTtpZih0LmluRmxpZ2h0KXtJaXx8KElpPW4uX3N0YXR1c0JhclN0YXJ0VGltZT4wP24uX3N0YXR1c0JhclN0YXJ0VGltZTpEYXRlLm5vdygpKTt2YXIgcz1UbShEYXRlLm5vdygpLUlpKTt1fHwodT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzcGFuIiksdS5jbGFzc05hbWU9InNlc3Npb24tc3RhdHVzLWVsYXBzZWQiLGkuYXBwZW5kQ2hpbGQodSkpLHUudGV4dENvbnRlbnQ9c31lbHNlIElpPTAsdSYmdS5yZW1vdmUoKX10LmFjdGl2ZT9Ocnx8KE5yPXNldEludGVydmFsKGZ1bmN0aW9uKCl7dmFyIG89bi5zZXNzaW9ucy5maW5kKGZ1bmN0aW9uKGwpe3JldHVybiBsLmlkPT09bi5zZWxlY3RlZElkfSk7cnUobyl9LDFlMykpOk5yJiYoY2xlYXJJbnRlcnZhbChOciksTnI9bnVsbCl9ZnVuY3Rpb24gaXUoZSx0KXtydSh0KTt2YXIgcj1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY29tcG9zZXItdG9wLXJvdyIpLGk9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLnN0cnVjdHVyZWQtc3RhdHVzLWJhciIpLGE9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmlucHV0LWNvbXBvc2VyIik7aWYoIXR8fCF1ZSh0KSl7aSYmaS5yZW1vdmUoKSxhJiZhLmNsYXNzTGlzdC5yZW1vdmUoImluLWZsaWdodCIpLGNsZWFySW50ZXJ2YWwobi5fc3RhdHVzQmFyVGltZXJJZCksbi5fc3RhdHVzQmFyVGltZXJJZD1udWxsO3JldHVybn12YXIgdT10LnN0cnVjdHVyZWRTdGF0ZSYmdC5zdHJ1Y3R1cmVkU3RhdGUuaW5GbGlnaHQ7aWYodSl7aWYobi5fc3RhdHVzQmFyVGltZXJJZHx8KG4uX3N0YXR1c0JhclN0YXJ0VGltZT1EYXRlLm5vdygpKSxhJiZhLmNsYXNzTGlzdC5hZGQoImluLWZsaWdodCIpLCFpJiZyKXt2YXIgcz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJkaXYiKTtzLmNsYXNzTmFtZT0ic3RydWN0dXJlZC1zdGF0dXMtYmFyIixzLmlubmVySFRNTD0nPHNwYW4gY2xhc3M9InN0YXR1cy1iYXItZG90Ij48L3NwYW4+PHNwYW4gY2xhc3M9InN0YXR1cy1iYXItbGFiZWwiPlx1NTZERVx1NTkwRFx1NEUyRDwvc3Bhbj48c3BhbiBjbGFzcz0ic3RhdHVzLWJhci10aW1lciI+MC4wczwvc3Bhbj4nLHIuYXBwZW5kQ2hpbGQocyksaT1zfWVsc2UgaWYoaSYmaS5jbGFzc0xpc3QuY29udGFpbnMoImNvbXBsZXRlZCIpKXtpLmNsYXNzTGlzdC5yZW1vdmUoImNvbXBsZXRlZCIpLGkuc3R5bGUuYW5pbWF0aW9uPSJub25lIixpLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLWxhYmVsIikudGV4dENvbnRlbnQ9Ilx1NTZERVx1NTkwRFx1NEUyRCI7dmFyIG89aS5xdWVyeVNlbGVjdG9yKCIuc3RhdHVzLWJhci1kb3QiKTtvJiYoby5zdHlsZS5kaXNwbGF5PSIiKSxuLl9zdGF0dXNCYXJTdGFydFRpbWU9RGF0ZS5ub3coKX1uLl9zdGF0dXNCYXJUaW1lcklkfHwobi5fc3RhdHVzQmFyVGltZXJJZD1zZXRJbnRlcnZhbChmdW5jdGlvbigpe3ZhciBjPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXI6bm90KC5jb21wbGV0ZWQpIik7aWYoIWMpe2NsZWFySW50ZXJ2YWwobi5fc3RhdHVzQmFyVGltZXJJZCksbi5fc3RhdHVzQmFyVGltZXJJZD1udWxsO3JldHVybn12YXIgZj0oKERhdGUubm93KCktbi5fc3RhdHVzQmFyU3RhcnRUaW1lKS8xZTMpLnRvRml4ZWQoMSksZD1jLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLXRpbWVyIik7ZCYmKGQudGV4dENvbnRlbnQ9ZisicyIpfSwxMDApKX1lbHNlIGlmKGNsZWFySW50ZXJ2YWwobi5fc3RhdHVzQmFyVGltZXJJZCksbi5fc3RhdHVzQmFyVGltZXJJZD1udWxsLGEmJmEuY2xhc3NMaXN0LnJlbW92ZSgiaW4tZmxpZ2h0IiksaSYmIWkuY2xhc3NMaXN0LmNvbnRhaW5zKCJjb21wbGV0ZWQiKSl7dmFyIGw9bi5fc3RhdHVzQmFyU3RhcnRUaW1lPygoRGF0ZS5ub3coKS1uLl9zdGF0dXNCYXJTdGFydFRpbWUpLzFlMykudG9GaXhlZCgxKToiMC4wIjtpLmNsYXNzTGlzdC5hZGQoImNvbXBsZXRlZCIpLGkucXVlcnlTZWxlY3RvcigiLnN0YXR1cy1iYXItbGFiZWwiKS50ZXh0Q29udGVudD0iXHU1QjhDXHU2MjEwIixpLnF1ZXJ5U2VsZWN0b3IoIi5zdGF0dXMtYmFyLXRpbWVyIikudGV4dENvbnRlbnQ9bCsicyI7dmFyIG89aS5xdWVyeVNlbGVjdG9yKCIuc3RhdHVzLWJhci1kb3QiKTtvJiYoby5zdHlsZS5kaXNwbGF5PSJub25lIiksbi5fc3RhdHVzQmFyU3RhcnRUaW1lPTAsc2V0VGltZW91dChmdW5jdGlvbigpe2kucGFyZW50Tm9kZSYmaS5yZW1vdmUoKX0sM2UzKX19ZnVuY3Rpb24gcChlKXtyZXR1cm4gU3RyaW5nKGUpLnJlcGxhY2UoLyYvZywiJmFtcDsiKS5yZXBsYWNlKC88L2csIiZsdDsiKS5yZXBsYWNlKC8+L2csIiZndDsiKS5yZXBsYWNlKC8iL2csIiZxdW90OyIpLnJlcGxhY2UoLycvZywiJiMzOTsiKX0oZnVuY3Rpb24oKXt0cnl7dmFyIGU9bmF2aWdhdG9yJiZuYXZpZ2F0b3IudXNlckFnZW50fHwiIjsvV2FuZEFwcFwvLy50ZXN0KGUpJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xhc3NMaXN0LmFkZCgiaXMtd2FuZC1hcHAiKSwvV2FuZFBsYXRmb3JtXC9pT1MvLnRlc3QoZSkmJmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGFzc0xpc3QuYWRkKCJpcy13YW5kLWlvcyIpfWNhdGNoe310cnl7d2luZG93Ll9fd2FuZE5hdGl2ZUJhY2tIb29rZWQ9ITB9Y2F0Y2h7fX0pKCl9KSgpOwo="),
9
+ stylesCss: decode("OnJvb3R7LS1iZy1wcmltYXJ5OiAjZjZmMWU4Oy0tYmctc2Vjb25kYXJ5OiByZ2JhKDI1NSwgMjUxLCAyNDUsIC45Mik7LS1iZy10ZXJ0aWFyeTogI2YwZTVkNzstLWJnLWVsZXZhdGVkOiAjZmZmYWYyOy0tYmctc3VyZmFjZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAuNik7LS1iZy10ZXJtaW5hbDogIzFmMWIxNzstLWJnLW92ZXJsYXk6IHJnYmEoNDIsIDI4LCAxOCwgLjQpOy0tYm9yZGVyLXN1YnRsZTogcmdiYSgxNTAsIDExOCwgODUsIC4xMik7LS1ib3JkZXItZGVmYXVsdDogcmdiYSgxMjUsIDkxLCA1NywgLjI1KTstLWJvcmRlci1zdHJvbmc6IHJnYmEoMTI1LCA5MSwgNTcsIC40KTstLWJvcmRlcjogdmFyKC0tYm9yZGVyLWRlZmF1bHQpOy0tYm9yZGVyLWZvY3VzOiByZ2JhKDE5NywgMTAxLCA2MSwgLjUpOy0tdGV4dC1wcmltYXJ5OiAjMmExZjE2Oy0tdGV4dC1zZWNvbmRhcnk6ICM1YTQ1MzU7LS10ZXh0LXRlcnRpYXJ5OiAjN2E2MzUwOy0tdGV4dC1tdXRlZDogIzhjNzM1ZjstLXRleHQtaW52ZXJzZTogI2ZmZmZmZjstLXRleHQtbGluazogI2M1NjUzZDstLWFjY2VudDogI2M1NjUzZDstLWFjY2VudC1ob3ZlcjogI2Q0NzU1MDstLWFjY2VudC1hY3RpdmU6ICNhZjUzMzA7LS1hY2NlbnQtc29mdDogI2U4YzVhZTstLWFjY2VudC1tdXRlZDogcmdiYSgxOTcsIDEwMSwgNjEsIC4xMik7LS1hY2NlbnQtZ2xvdzogcmdiYSgxOTcsIDEwMSwgNjEsIC4yNSk7LS1zdWNjZXNzOiAjNGY3YTU4Oy0tc3VjY2Vzcy1ob3ZlcjogIzVhOGY2NjstLXN1Y2Nlc3MtbXV0ZWQ6IHJnYmEoNzksIDEyMiwgODgsIC4xNCk7LS1zdWNjZXNzLWdsb3c6IHJnYmEoNzksIDEyMiwgODgsIC4zKTstLXdhcm5pbmc6ICNhOTZhMmY7LS13YXJuaW5nLWhvdmVyOiAjYzA3YTM1Oy0td2FybmluZy1tdXRlZDogcmdiYSgxNjksIDEwNiwgNDcsIC4xNCk7LS13YXJuaW5nLWdsb3c6IHJnYmEoMTY5LCAxMDYsIDQ3LCAuMjUpOy0tZGFuZ2VyOiAjYjI0ZjQ1Oy0tZGFuZ2VyLWhvdmVyOiAjYzk2MDU1Oy0tZGFuZ2VyLW11dGVkOiByZ2JhKDE3OCwgNzksIDY5LCAuMTQpOy0tZGFuZ2VyLWdsb3c6IHJnYmEoMTc4LCA3OSwgNjksIC4yNSk7LS1pbmZvOiAjNGE2ZmE1Oy0taW5mby1tdXRlZDogcmdiYSg3NCwgMTExLCAxNjUsIC4xNCk7LS1zaGFkb3cteHM6IDAgMXB4IDNweCByZ2JhKDg5LCA1OCwgMzIsIC4wNCk7LS1zaGFkb3ctc206IDAgMnB4IDhweCByZ2JhKDg5LCA1OCwgMzIsIC4wNik7LS1zaGFkb3ctbWQ6IDAgNHB4IDE2cHggcmdiYSg4OSwgNTgsIDMyLCAuMDgpOy0tc2hhZG93LWxnOiAwIDhweCAzMnB4IHJnYmEoODksIDU4LCAzMiwgLjEyKTstLXNoYWRvdy14bDogMCAxMnB4IDQ4cHggcmdiYSg4OSwgNTgsIDMyLCAuMTYpOy0tc2hhZG93LXNvZnQ6IDAgMjBweCA1MHB4IHJnYmEoODksIDU4LCAzMiwgLjEyKTstLXNoYWRvdy1lbGV2YXRlZDogMCA4cHggMjRweCByZ2JhKDg5LCA1OCwgMzIsIC4wOCk7LS1zaGFkb3ctZ2xvdzogMCAwIDI0cHggdmFyKC0tYWNjZW50LWdsb3cpOy0tc2hhZG93LWdsb3ctc3VjY2VzczogMCAwIDIwcHggdmFyKC0tc3VjY2Vzcy1nbG93KTstLXJhZGl1cy14czogNnB4Oy0tcmFkaXVzLXNtOiAxMHB4Oy0tcmFkaXVzLW1kOiAxNHB4Oy0tcmFkaXVzLWxnOiAyMHB4Oy0tcmFkaXVzLXhsOiAyOHB4Oy0tcmFkaXVzLWZ1bGw6IDk5OTlweDstLWZvbnQtc2FuczogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCAiSGVsdmV0aWNhIE5ldWUiLCAiUGluZ0ZhbmcgU0MiLCAiTm90byBTYW5zIFNDIiwgIk1pY3Jvc29mdCBZYUhlaSIsIHNhbnMtc2VyaWY7LS1mb250LW1vbm86ICJTRiBNb25vIiwgIkZpcmEgQ29kZSIsICJDYXNjYWRpYSBDb2RlIiwgIkpldEJyYWlucyBNb25vIiwgTWVubG8sIE1vbmFjbywgIkNvbnNvbGFzIiwgbW9ub3NwYWNlOy0tZm9udC1zaXplLXhzOiAuNjg3NXJlbTstLWZvbnQtc2l6ZS1zbTogLjgxMjVyZW07LS1mb250LXNpemUtYmFzZTogLjkzNzVyZW07LS1mb250LXNpemUtbGc6IDEuMDYyNXJlbTstLWZvbnQtc2l6ZS14bDogMS4yNXJlbTstLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwOy0tZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7LS1mb250LXdlaWdodC1zZW1pYm9sZDogNjAwOy0tZm9udC13ZWlnaHQtYm9sZDogNzAwOy0tbGluZS1oZWlnaHQtdGlnaHQ6IDEuMzstLWxpbmUtaGVpZ2h0LWJhc2U6IDEuNjstLWxpbmUtaGVpZ2h0LXJlbGF4ZWQ6IDEuNzU7LS10cmFuc2l0aW9uLWZhc3Q6IC4xNXMgZWFzZTstLXRyYW5zaXRpb24tbm9ybWFsOiAuMjVzIGVhc2U7LS10cmFuc2l0aW9uLXNsb3c6IC40cyBlYXNlOy0tdHJhbnNpdGlvbi1zcHJpbmc6IC41cyBjdWJpYy1iZXppZXIoLjM0LCAxLjU2LCAuNjQsIDEpOy0tc2lkZWJhci13aWR0aDogMzAwcHg7LS1zaWRlYmFyLWNvbGxhcHNlZC13aWR0aDogNTZweDstLWZpbGUtcGFuZWwtd2lkdGg6IDMyMHB4Oy0tc2FmZS1ib3R0b206IDBweDstLWVhc2Utb3V0LWV4cG86IGN1YmljLWJlemllciguMTYsIDEsIC4zLCAxKTstLWVhc2Utb3V0LWJhY2s6IGN1YmljLWJlemllciguMzQsIDEuNTYsIC42NCwgMSk7LS1lYXNlLWluLW91dC1zbW9vdGg6IGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpOy0tZWFzZS1zcHJpbmc6IGN1YmljLWJlemllciguMTc1LCAuODg1LCAuMzIsIDEuMjc1KTstLWVhc2Utc3ByaW5nLWJvdW5jeTogY3ViaWMtYmV6aWVyKC4xNzUsIC44ODUsIC4zMiwgMS40KTstLWVhc2UtYm91bmNlOiBjdWJpYy1iZXppZXIoLjY4LCAtLjU1LCAuMjY1LCAxLjU1KX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upe2h0bWw6bm90KC5pcy13YW5kLWFwcCkgKixodG1sOm5vdCguaXMtd2FuZC1hcHApICo6YmVmb3JlLGh0bWw6bm90KC5pcy13YW5kLWFwcCkgKjphZnRlcnthbmltYXRpb24tZHVyYXRpb246LjAxbXMhaW1wb3J0YW50O2FuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6MSFpbXBvcnRhbnQ7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDFtcyFpbXBvcnRhbnQ7c2Nyb2xsLWJlaGF2aW9yOmF1dG8haW1wb3J0YW50fX06cm9vdHstLWFwcC1pbnNldC10b3A6IDBweDstLWFwcC1pbnNldC1ib3R0b206IDBweDstLWFwcC1pbnNldC1sZWZ0OiAwcHg7LS1hcHAtaW5zZXQtcmlnaHQ6IDBweDstLXdhbmQtc2FmZS10b3A6IG1heCh2YXIoLS1hcHAtaW5zZXQtdG9wKSwgZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDBweCkpOy0td2FuZC1zYWZlLWJvdHRvbTogbWF4KHZhcigtLWFwcC1pbnNldC1ib3R0b20pLCBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSwgMHB4KSk7LS13YW5kLXNhZmUtbGVmdDogbWF4KHZhcigtLWFwcC1pbnNldC1sZWZ0KSwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0LCAwcHgpKTstLXdhbmQtc2FmZS1yaWdodDogbWF4KHZhcigtLWFwcC1pbnNldC1yaWdodCksIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQsIDBweCkpOy0tc2FmZS1ib3R0b206IHZhcigtLXdhbmQtc2FmZS1ib3R0b20pOy0taW5wdXQtc2FmZS1ib3R0b206IHZhcigtLXNhZmUtYm90dG9tKX0uaXMtd2FuZC1hcHB7LS13YW5kLXNhZmUtdG9wOiBtYXgodmFyKC0tYXBwLWluc2V0LXRvcCksIGVudihzYWZlLWFyZWEtaW5zZXQtdG9wLCAwcHgpLCAzMnB4KTstLXdhbmQtc2FmZS1ib3R0b206IG1heCh2YXIoLS1hcHAtaW5zZXQtYm90dG9tKSwgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDBweCksIDBweCl9LmlzLXdhbmQtYXBwLW5hdGl2ZS1pbnNldHN7LS13YW5kLXNhZmUtdG9wOiAwcHg7LS13YW5kLXNhZmUtYm90dG9tOiAwcHg7LS13YW5kLXNhZmUtbGVmdDogMHB4Oy0td2FuZC1zYWZlLXJpZ2h0OiAwcHh9LmlzLXdhbmQtaW9zLmlzLWtleWJvYXJkLW9wZW57LS1pbnB1dC1zYWZlLWJvdHRvbTogMHB4fS5pcy13YW5kLWFwcCAuc2lkZWJhci1oZWFkZXIsaHRtbC5pcy13YW5kLWFwcCAuc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlcntwYWRkaW5nLXRvcDpjYWxjKDE0cHggKyB2YXIoLS13YW5kLXNhZmUtdG9wKSl9LmFwcC1jb250YWluZXJ7cGFkZGluZy10b3A6dmFyKC0td2FuZC1zYWZlLXRvcCl9aHRtbC5uby10cmFuc2l0aW9uLGh0bWwubm8tdHJhbnNpdGlvbiAqLGh0bWwubm8tdHJhbnNpdGlvbiAqOmJlZm9yZSxodG1sLm5vLXRyYW5zaXRpb24gKjphZnRlcnt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50O2FuaW1hdGlvbjpub25lIWltcG9ydGFudH0qe2JveC1zaXppbmc6Ym9yZGVyLWJveDttYXJnaW46MDtwYWRkaW5nOjB9aHRtbHtmb250LXNpemU6MTRweDstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7bWluLWhlaWdodDoxMDAlO2hlaWdodDoxMDAlO2JhY2tncm91bmQtY29sb3I6I2Y2ZjFlOH1ib2R5e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IHRvcCBsZWZ0LHJnYmEoMjA4LDEzOCw5MiwuMTgpLHRyYW5zcGFyZW50IDM1JSkscmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBib3R0b20gcmlnaHQscmdiYSgxNDgsMTA3LDc0LC4xKSx0cmFuc3BhcmVudCA0MCUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZiZjdmMSwjZjZmMWU4KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21pbi1oZWlnaHQ6MTAwdmg7bWluLWhlaWdodDoxMDBkdmg7aGVpZ2h0OjEwMHZoO2hlaWdodDoxMDBkdmg7bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQtYmFzZSk7b3ZlcmZsb3c6aGlkZGVufTo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHh9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTU0MDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTY2fTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9OjpzZWxlY3Rpb257YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtc29mdCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX06Oi1tb3otc2VsZWN0aW9ue2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LXNvZnQpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiB2YXIoLS1maWxlLXBhbmVsLXdpZHRoKTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO3Bvc2l0aW9uOmZpeGVkO3RvcDp2YXIoLS1hcHAtdmlld3BvcnQtdG9wLCAwcHgpO2xlZnQ6MDtyaWdodDowO2hlaWdodDp2YXIoLS1hcHAtdmlld3BvcnQtaGVpZ2h0LCAxMDBkdmgpO292ZXJmbG93OmhpZGRlbn0uZmxvYXRpbmctc2lkZWJhci10b2dnbGV7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO3dpZHRoOjM0cHg7aGVpZ2h0OjM0cHg7cGFkZGluZzowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleC1zaHJpbms6MDtiYWNrZ3JvdW5kOiNmZmZiZjVkOTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6cG9pbnRlcjtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMnB4IDhweCAjMDAwMDAwMGY7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXttYXJnaW4tcmlnaHQ6MnB4fS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDEpe3RyYW5zZm9ybTp0cmFuc2xhdGVZKDVweCkgcm90YXRlKDQ1ZGVnKX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDIpe29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVYKDApfS5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMyl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCkgcm90YXRlKC00NWRlZyl9Lm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYmY1ZjI7Ym94LXNoYWRvdzowIDNweCAxMnB4ICMwMDAwMDAxYX0ubWFpbi1oZWFkZXItcm93IC5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45Mil9Lm1haW4taGVhZGVyLXJvdyAuZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZlOmhvdmVyIC5oYW1idXJnZXItaWNvbiBzcGFuLC5tYWluLWhlYWRlci1yb3cgLmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlOmhvdmVyIC5oYW1idXJnZXItaWNvbiBzcGFue2JhY2tncm91bmQ6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZmxvYXRpbmctc2lkZWJhci10b2dnbGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYmY1ZjI7Ym94LXNoYWRvdzowIDNweCAxMnB4ICMwMDAwMDAxYX0uZmxvYXRpbmctc2lkZWJhci10b2dnbGUuYWN0aXZle29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMTVzIGVhc2V9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjkyKX0uaGFtYnVyZ2VyLWljb257d2lkdGg6MTZweDtoZWlnaHQ6MTJweDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS5oYW1idXJnZXItaWNvbiBzcGFue2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtoZWlnaHQ6MnB4O2JhY2tncm91bmQ6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSxvcGFjaXR5IC4ycyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZTpob3ZlciAuaGFtYnVyZ2VyLWljb24gc3BhbntiYWNrZ3JvdW5kOnZhcigtLXRleHQtcHJpbWFyeSl9LmZsb2F0aW5nLXNpZGViYXItdG9nZ2xlLmFjdGl2ZSAuaGFtYnVyZ2VyLWljb24gc3BhbjpudGgtY2hpbGQoMSl7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoNXB4KSByb3RhdGUoNDVkZWcpfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDIpe29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVYKDApfS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZS5hY3RpdmUgLmhhbWJ1cmdlci1pY29uIHNwYW46bnRoLWNoaWxkKDMpe3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01cHgpIHJvdGF0ZSgtNDVkZWcpfS50b3BiYXItbG9nby1pY29ue3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLCNkNDc4NWEsI2I4NTczYSwjYTA0YTJlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToxMHB4O2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6ODAwO2JveC1zaGFkb3c6MCAxcHggNHB4ICNiODVjMzc0MCxpbnNldCAwIDFweCAjZmZmMztsZXR0ZXItc3BhY2luZzotLjAyZW07ZmxleC1zaHJpbms6MH0uc3RhdHVzLWRvdHt3aWR0aDo2cHg7aGVpZ2h0OjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5zdGF0dXMtZG90LmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MpO2JveC1zaGFkb3c6MCAwIDhweCB2YXIoLS1zdWNjZXNzKX0ubWFpbi1sYXlvdXR7ZGlzcGxheTpmbGV4O2ZsZXg6MTttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmctbGVmdDowO3RyYW5zaXRpb246cGFkZGluZy1sZWZ0IHZhcigtLXRyYW5zaXRpb24tbm9ybWFsKX0uc2lkZWJhci1vcGVuOm5vdCguc2lkZWJhci1waW5uZWQpIC5pbnB1dC1wYW5lbHtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW47cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdmlzaWJpbGl0eSAwcyBsaW5lYXIgLjJzfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZHtwYWRkaW5nLWxlZnQ6dmFyKC0tc2lkZWJhci13aWR0aCk7dHJhbnNpdGlvbjpwYWRkaW5nLWxlZnQgLjNzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZCAuZmxvYXRpbmctc2lkZWJhci10b2dnbGV7ZGlzcGxheTpub25lfS5tYWluLWxheW91dC5zaWRlYmFyLXBpbm5lZC5zaWRlYmFyLWNvbGxhcHNlZHtwYWRkaW5nLWxlZnQ6dmFyKC0tc2lkZWJhci1jb2xsYXBzZWQtd2lkdGgpfS5kcmF3ZXItYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjQ0O2JhY2tncm91bmQ6dmFyKC0tYmctb3ZlcmxheSk7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4zNXMgdmFyKC0tZWFzZS1pbi1vdXQtc21vb3RoKTtiYWNrZHJvcC1maWx0ZXI6Ymx1cig0cHgpfS5kcmF3ZXItYmFja2Ryb3Aub3BlbntvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0bztiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpfS5zaWRlYmFye3Bvc2l0aW9uOmZpeGVkO3RvcDowO2xlZnQ6MDtib3R0b206MDt6LWluZGV4OjQ1O3dpZHRoOm1pbih2YXIoLS1zaWRlYmFyLXdpZHRoKSxjYWxjKDEwMHZ3IC0gMjBweCkpO21heC13aWR0aDo5MHZ3O2JhY2tncm91bmQ6I2ZmZmJmNWY1O2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4taGVpZ2h0OjA7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzo0cHggMCAzMnB4ICM1OTNhMjAxNDt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLGJveC1zaGFkb3cgLjM1cyBlYXNlLG9wYWNpdHkgLjI1cyBlYXNlO3BvaW50ZXItZXZlbnRzOm5vbmU7b3BhY2l0eTowfS5zaWRlYmFyLm9wZW57dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKTtib3gtc2hhZG93OjhweCAwIDQwcHggIzU5M2EyMDI2O3BvaW50ZXItZXZlbnRzOmF1dG87b3BhY2l0eToxfS5zaWRlYmFyLnBpbm5lZHt0cmFuc2Zvcm06dHJhbnNsYXRlKDApO3BvaW50ZXItZXZlbnRzOmF1dG87b3BhY2l0eToxO2JveC1zaGFkb3c6bm9uZTt0cmFuc2l0aW9uOndpZHRoIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSx0cmFuc2Zvcm0gLjM1cyB2YXIoLS1lYXNlLW91dC1leHBvKSxib3gtc2hhZG93IC4zNXMgZWFzZSxvcGFjaXR5IC4yNXMgZWFzZX0uc2lkZWJhci5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVyLWFjdGlvbnMgLnNpZGViYXItY2xvc2V7ZGlzcGxheTpub25lfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWR7d2lkdGg6dmFyKC0tc2lkZWJhci1jb2xsYXBzZWQtd2lkdGgpfS5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVye3BhZGRpbmc6MTRweCA4cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6MH0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlci1tYWluLC5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItaGVhZGVyLW1vcmUsLnNpZGViYXIucGlubmVkLmNvbGxhcHNlZCAuc2lkZWJhci1waW4tdG9nZ2xlLC5zaWRlYmFyLnBpbm5lZC5jb2xsYXBzZWQgLnNpZGViYXItZm9vdGVye2Rpc3BsYXk6bm9uZX0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWhlYWRlci1hY3Rpb25ze2dhcDowO3dpZHRoOjEwMCU7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWJvZHl7cGFkZGluZzo4cHggNHB4O292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbn0uc2lkZWJhci5waW5uZWQuY29sbGFwc2VkIC5zaWRlYmFyLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjB9LnNpZGViYXItY29sbGFwc2VkLXRpbGVze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDthbGlnbi1pdGVtczpjZW50ZXJ9LnNpZGViYXItY29sbGFwc2VkLXRpbGV7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjExcHg7Ym9yZGVyOi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMzIpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZDQ3ODVhLCNiODU3M2EsI2EwNGEyZSk7Y29sb3I6I2ZmZjtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo3MDA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO2xldHRlci1zcGFjaW5nOi0uMDFlbTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmc6MDtib3gtc2hhZG93OjAgMXB4IDJweCAjYjg1YzM3MzgsaW5zZXQgMCAxcHggI2ZmZmZmZjQ3O3RyYW5zaXRpb246ZmlsdGVyIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LnNpZGViYXItY29sbGFwc2VkLXRpbGU6aG92ZXJ7ZmlsdGVyOmJyaWdodG5lc3MoMS4wNik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDRweCAxMHB4IC0zcHggI2I4NWMzNzVjLGluc2V0IDAgMXB4ICNmZmZmZmY1Mn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5oaXN0b3J5e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZThkM2MwLCNkM2I2OWQsI2I4OTQ3OCk7Y29sb3I6IzU5M2EyMGUwO2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ODU4MzgyZSxpbnNldCAwIDFweCAjZmZmZmZmNmJ9LnNpZGViYXItY29sbGFwc2VkLXRpbGUuaGlzdG9yeTpob3Zlcntib3gtc2hhZG93OjAgNHB4IDEwcHggLTNweCAjNzg1ODM4NGQsaW5zZXQgMCAxcHggI2ZmZmZmZjdhfS5zaWRlYmFyLWNvbGxhcHNlZC10aWxlLmFkZHtiYWNrZ3JvdW5kOiNiODVjMzcwZjtib3JkZXI6MS41cHggZGFzaGVkIHJnYmEoMTg0LDkyLDU1LC41KTtjb2xvcjojYTA0YTJlO2JveC1zaGFkb3c6bm9uZTttYXJnaW4tdG9wOjJweH0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5hZGQ6aG92ZXJ7ZmlsdGVyOm5vbmU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7YmFja2dyb3VuZDojYjg1YzM3MWY7Ym9yZGVyLWNvbG9yOiNiODVjMzdiODtib3gtc2hhZG93OjAgM3B4IDhweCAtM3B4ICNiODVjMzc1Mn0uc2lkZWJhci1jb2xsYXBzZWQtdGlsZS5hZGQ6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCl9LnNpZGViYXItY29sbGFwc2VkLXRpbGUuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZDI3MzU4LCNiMzU0MzQsIzkzNDEyOCk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDAgMCAycHggI2M1NjUzZDRkLDAgNXB4IDE0cHggLTRweCAjYTA0YTJlNzMsaW5zZXQgMCAxcHggI2ZmZjZ9LnNpZGViYXItY29sbGFwc2VkLXRpbGU6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDhzfS5zaWRlYmFyLXRpbGUtYnViYmxle3Bvc2l0aW9uOmZpeGVkO21heC13aWR0aDozMjBweDttaW4td2lkdGg6ODBweDtwYWRkaW5nOjlweCAxM3B4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjZmZmYmY1ZmMsI2ZjZjRlOWZjKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUsIHJnYmEoMTIwLCA4OCwgNTYsIC4xOCkpO2JvcmRlci1yYWRpdXM6MTRweDtib3gtc2hhZG93OjAgNnB4IDI0cHggLTRweCAjNTkzYTIwMzgsMCAycHggNnB4ICM1OTNhMjAxNCxpbnNldCAwIDFweCAjZmZmZmZmYTY7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MS40Njtjb2xvcjojMzgyNDEyZWI7ei1pbmRleDoyMDA7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMThzIHZhcigtLWVhc2Utb3V0LWV4cG8sIGVhc2UpO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KSBzYXR1cmF0ZSgxNjAlKX0uc2lkZWJhci10aWxlLWJ1YmJsZS52aXNpYmxle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApfS5zaWRlYmFyLXRpbGUtYnViYmxlOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6LTZweDt0b3A6dmFyKC0tYnViYmxlLXRhaWwteSwgNTAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoNDVkZWcpO3dpZHRoOjExcHg7aGVpZ2h0OjExcHg7YmFja2dyb3VuZDppbmhlcml0O2JvcmRlci1sZWZ0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlLCByZ2JhKDEyMCwgODgsIDU2LCAuMTgpKTtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlLCByZ2JhKDEyMCwgODgsIDU2LCAuMTgpKTtib3gtc2hhZG93Oi0ycHggMnB4IDVweCAtMnB4ICM1OTNhMjAxNH0uc2lkZWJhci1jb2xsYXBzZS10b2dnbGV7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItY29sbGFwc2UtdG9nZ2xlLmNvbGxhcHNlZHtjb2xvcjp2YXIoLS1wcmltYXJ5KX0uc2lkZWJhci1waW4tdG9nZ2xle2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLHRyYW5zZm9ybSAuM3MgdmFyKC0tZWFzZS1vdXQtZXhwbyl9LnNpZGViYXItcGluLXRvZ2dsZS5waW5uZWR7YmFja2dyb3VuZDojYzU2NTNkMWY7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKX0uc2lkZWJhci1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtwYWRkaW5nOjEycHggMTRweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOiNmZmZiZjVjYztmbGV4LXNocmluazowO21pbi1oZWlnaHQ6NTJweDtnYXA6MTBweH0uc2lkZWJhci1oZWFkZXItbWFpbntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7bWluLXdpZHRoOjA7ZmxleDoxfS5zaWRlYmFyLWhlYWRlci1hY3Rpb25ze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtmbGV4LXNocmluazowfS5zaWRlYmFyLWhlYWRlci1tb3Jle3Bvc2l0aW9uOnJlbGF0aXZlfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvd3tkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7dG9wOmNhbGMoMTAwJSArIDZweCk7cmlnaHQ6MDttaW4td2lkdGg6MTUwcHg7YmFja2dyb3VuZDojZmZmYmY1ZmE7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym94LXNoYWRvdzowIDRweCAyMHB4ICM1OTNhMjAxZjtwYWRkaW5nOjRweDt6LWluZGV4OjYwfS5zaWRlYmFyLWhlYWRlci1vdmVyZmxvdy5vcGVue2Rpc3BsYXk6YmxvY2s7YW5pbWF0aW9uOmZhZGVTbGlkZURvd24gLjE1cyB2YXIoLS1lYXNlLW91dC1leHBvKX0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3cgLm92ZXJmbG93LWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3dpZHRoOjEwMCU7cGFkZGluZzo5cHggMTJweDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOm5vbmU7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO2JvcmRlci1yYWRpdXM6NnB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk3KX1Aa2V5ZnJhbWVzIGZhZGVTbGlkZURvd257MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC00cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LnNpZGViYXItbG9nb3V0e2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6Ljc7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1sb2dvdXQ6aG92ZXJ7b3BhY2l0eToxO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2lkZWJhci1zd2l0Y2gtc2VydmVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6Ljc7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uc2lkZWJhci1zd2l0Y2gtc2VydmVyOmhvdmVye29wYWNpdHk6MTtjb2xvcjp2YXIoLS1wcmltYXJ5LCB2YXIoLS10ZXh0LXNlY29uZGFyeSkpfS5sb2dpbi1zd2l0Y2gtc2VydmVye21hcmdpbi10b3A6MTBweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo2cHg7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5sb2dpbi1zd2l0Y2gtc2VydmVyIHN2Z3tvcGFjaXR5Oi43NX0ubG9naW4tc3dpdGNoLXNlcnZlcjpob3Zlcntjb2xvcjp2YXIoLS1wcmltYXJ5LCB2YXIoLS10ZXh0LXByaW1hcnkpKX0uc2lkZWJhci10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzotLjAxZW07d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXgtc2hyaW5rOjB9LnNlc3Npb24tY291bnR7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7cGFkZGluZzozcHggOHB4O2JvcmRlci1yYWRpdXM6MTBweDtmb250LXdlaWdodDo2MDB9LnNpZGViYXItY2xvc2V7ZmxleC1zaHJpbms6MH0uZmlsZS1leHBsb3JlcntmbGV4OjE7b3ZlcmZsb3cteTphdXRvO3BhZGRpbmc6OHB4IDA7bWluLWhlaWdodDowfS5maWxlLWV4cGxvcmVyLmVtcHR5e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjI0cHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44MTI1cmVtO3RleHQtYWxpZ246Y2VudGVyfS5maWxlLXRyZWV7Zm9udC1zaXplOi44MTI1cmVtfS50cmVlLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6NHB4IDEycHg7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dXNlci1zZWxlY3Q6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXN9LnRyZWUtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmZmZmIzLCNmZmZjZjc2Nik7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmYjN9LnRyZWUtaXRlbS5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdlYiwjZmZmNGU4YmYpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAxcHggI2M1NjUzZDM4LDAgM3B4IDEwcHggLTNweCAjYzU2NTNkNDAsaW5zZXQgMCAxcHggI2ZmZmZmZmQ5fS50cmVlLXRvZ2dsZXtmbGV4LXNocmluazowO3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnRyZWUtdG9nZ2xlLm9wZW57dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyl9LnRyZWUtdG9nZ2xlLmVtcHR5e3Zpc2liaWxpdHk6aGlkZGVufS50cmVlLWljb257ZmxleC1zaHJpbms6MDtmb250LXNpemU6MXJlbTttYXJnaW4tcmlnaHQ6NnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXJ9LnRyZWUtbmFtZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmbGV4OjE7bWluLXdpZHRoOjB9LnRyZWUtY2hpbGRyZW57ZGlzcGxheTpub25lfS50cmVlLWNoaWxkcmVuLm9wZW57ZGlzcGxheTpibG9ja30uZmlsZS1leHBsb3Jlci1oZWFkZXJ7cGFkZGluZzoxMHB4IDE0cHggNnB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmbGV4LXNocmluazowfS5maWxlLWV4cGxvcmVyLXBhdGh7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjE7bWluLXdpZHRoOjA7Zm9udC13ZWlnaHQ6NTAwfWlucHV0LmZpbGUtZXhwbG9yZXItcGF0aHtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjhweDtwYWRkaW5nOjZweCAxMHB4O2hlaWdodDozMHB4O2xpbmUtaGVpZ2h0OjEuMjtjdXJzb3I6dGV4dDt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO291dGxpbmU6bm9uZTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3dpZHRoOjEwMCU7Ym94LXNpemluZzpib3JkZXItYm94fWlucHV0LmZpbGUtZXhwbG9yZXItcGF0aDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNn1pbnB1dC5maWxlLWV4cGxvcmVyLXBhdGg6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9aW5wdXQuZmlsZS1leHBsb3Jlci1wYXRoOmZvY3Vze2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0ZXh0LW92ZXJmbG93OmNsaXA7Ym94LXNoYWRvdzowIDAgMCAzcHggI2Q0OTg2MzFmfS5maWxlLWV4cGxvcmVyLXJlZnJlc2h7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxcmVtO3BhZGRpbmc6NHB4O2JvcmRlci1yYWRpdXM6NHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5maWxlLWV4cGxvcmVyLXJlZnJlc2g6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfS5maWxlLXNpZGUtcGFuZWx7cG9zaXRpb246Zml4ZWQ7cmlnaHQ6Y2FsYygtMSAqIHZhcigtLWZpbGUtcGFuZWwtd2lkdGgpKTt0b3A6MDtib3R0b206MDt3aWR0aDp2YXIoLS1maWxlLXBhbmVsLXdpZHRoKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlci1sZWZ0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3otaW5kZXg6NTU7dHJhbnNpdGlvbjpyaWdodCAuM3MgdmFyKC0tZWFzZS1vdXQtZXhwbyksYm94LXNoYWRvdyAuM3MgZWFzZTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JveC1zaGFkb3c6LTRweCAwIDI0cHggIzAwMDAwMDFhO3BhZGRpbmctdG9wOnZhcigtLXdhbmQtc2FmZS10b3ApO3BhZGRpbmctYm90dG9tOnZhcigtLXdhbmQtc2FmZS1ib3R0b20pfS5maWxlLXNpZGUtcGFuZWwub3BlbntyaWdodDowO2JveC1zaGFkb3c6LThweCAwIDMycHggIzU5M2EyMDI2fS5maWxlLXBhbmVsLWJhY2tkcm9we2Rpc3BsYXk6bm9uZX1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuZmlsZS1wYW5lbC1iYWNrZHJvcHtkaXNwbGF5OmJsb2NrO3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7YmFja2dyb3VuZDojMmExYzEyNGQ7ei1pbmRleDo1NDtvcGFjaXR5OjA7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMnB4KX0uZmlsZS1wYW5lbC1iYWNrZHJvcC5vcGVue29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphdXRvfS5zaWRlYmFyLXBpbi10b2dnbGV7ZGlzcGxheTpub25lfX0uZmlsZS1zaWRlLXBhbmVsLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmc6MTJweCAxNHB4IDEwcHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZmxleC1zaHJpbms6MDtnYXA6OHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwjZmZmNiwjZmZmMCl9LmZpbGUtc2lkZS1wYW5lbC10aXRsZS1ncm91cHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7bWluLXdpZHRoOjA7ZmxleDoxfS5maWxlLXNpZGUtcGFuZWwtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOnZhcigtLWFjY2VudCk7b3BhY2l0eTouODV9LmZpbGUtc2lkZS1wYW5lbC10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDFlbX0uZmlsZS1zaWRlLXBhbmVsLWhlYWRlci1hY3Rpb25ze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjJweDtmbGV4LXNocmluazowfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bnt3aWR0aDozMHB4O2hlaWdodDozMHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOjhweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLHRyYW5zZm9ybSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItc3VidGxlKX0uZmlsZS1zaWRlLXBhbmVsLWljb25idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0bi5hY3RpdmV7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNkNDk4NjM1OX0uZmlsZS1zaWRlLXBhbmVsLWljb25idG4uY2xvc2U6aG92ZXJ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtiYWNrZ3JvdW5kOiNkYzQ2NDYxNDtib3JkZXItY29sb3I6I2RjNDY0NjQwfS5maWxlLXNpZGUtcGFuZWwtaWNvbmJ0biAud2FuZC1pY29ue2Rpc3BsYXk6YmxvY2t9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRuOmhvdmVyIC53YW5kLWljb24tcmVmcmVzaHt0cmFuc2Zvcm06cm90YXRlKDYwZGVnKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5maWxlLXNpZGUtcGFuZWwtYm9keXtmbGV4OjE7bWluLWhlaWdodDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47b3ZlcmZsb3c6aGlkZGVufS5naXQtc3RhdHVzLWJhZGdle2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjFweCA1cHg7Ym9yZGVyLXJhZGl1czozcHg7bWluLXdpZHRoOjE4cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZ2l0LWFkZGVke2JhY2tncm91bmQ6IzIyOGIyMjI2O2NvbG9yOiMyMjhiMjJ9LmdpdC1tb2RpZmllZHtiYWNrZ3JvdW5kOiNmZmE1MDAyNjtjb2xvcjpvcmFuZ2V9LmdpdC1kZWxldGVke2JhY2tncm91bmQ6I2RjMTQzYzI2O2NvbG9yOiNkYzE0M2N9LmdpdC1yZW5hbWVke2JhY2tncm91bmQ6IzQ2ODJiNDI2O2NvbG9yOiM0NjgyYjR9LmdpdC11bnN0YWdlZHtiYWNrZ3JvdW5kOiNmZjhjMDAyNjtjb2xvcjojZmY4YzAwfS5naXQtdW5zdGFnZWQtZGVsZXRlZHtiYWNrZ3JvdW5kOiNkYzE0M2MyNjtjb2xvcjojZGMxNDNjfS5naXQtdW50cmFja2Vke2JhY2tncm91bmQ6IzgwODA4MDI2O2NvbG9yOmdyYXl9LmZpbGUtc2VhcmNoLWJveHtwYWRkaW5nOjhweCAxMnB4IDEwcHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtmbGV4LXNocmluazowO3Bvc2l0aW9uOnJlbGF0aXZlfS5maWxlLXNlYXJjaC1pY29ue3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MjJweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BvaW50ZXItZXZlbnRzOm5vbmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7b3BhY2l0eTouN30uZmlsZS1zZWFyY2gtaW5wdXR7ZmxleDoxO3BhZGRpbmc6N3B4IDMycHggN3B4IDMwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6OHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LXNhbnMpO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO291dGxpbmU6bm9uZTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMTVzIGVhc2UsYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMTVzIGVhc2V9LmZpbGUtc2VhcmNoLWlucHV0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym94LXNoYWRvdzowIDAgMCAzcHggI2Q0OTg2MzFmfS5maWxlLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LmZpbGUtc2VhcmNoLWNsZWFye3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjE4cHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzo0cHg7d2lkdGg6MjJweDtoZWlnaHQ6MjJweDtib3JkZXItcmFkaXVzOjUwJTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtkaXNwbGF5Om5vbmU7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZSxjb2xvciAuMTVzIGVhc2V9LmZpbGUtc2VhcmNoLWNsZWFyOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmZpbGUtc2VhcmNoLWNsZWFyLnZpc2libGV7ZGlzcGxheTppbmxpbmUtZmxleH0uZmlsZS1zZWFyY2gtY2xlYXI6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5zaWRlYmFyLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4OjE7bWluLWhlaWdodDowO292ZXJmbG93LXk6YXV0bzstd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzp0b3VjaDtwb3NpdGlvbjpyZWxhdGl2ZX0uc2lkZWJhci1pbnRyb3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmbGV4LXNocmluazowfS5zZXNzaW9ucy1saXN0e2ZsZXg6MSAwIGF1dG87bWluLWhlaWdodDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47b3ZlcmZsb3c6dmlzaWJsZTtwYWRkaW5nOjEwcHggMTBweCAxMnB4fSNzZXNzaW9ucy1wYW5lbHtkaXNwbGF5OmNvbnRlbnRzfS5zZXNzaW9ucy1saXN0OmVtcHR5OmJlZm9yZXtjb250ZW50OiJcNjY4Mlw2NWUwXDRmMWFcOGJkZCI7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21pbi1oZWlnaHQ6MjAwcHg7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44NzVyZW19LnNlc3Npb24tZ3JvdXB7bWFyZ2luLWJvdHRvbToxNHB4fS5zZXNzaW9uLWdyb3VwOmxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5zZXNzaW9uLWdyb3VwLXRpdGxle3BhZGRpbmc6NHB4IDZweCAxMHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjA4ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHh9LnNlc3Npb24tZ3JvdXAtdGl0bGU6YmVmb3Jle2NvbnRlbnQ6IiI7d2lkdGg6M3B4O2hlaWdodDoxMnB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtvcGFjaXR5Oi42NTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKX0uY2xhdWRlLWhpc3RvcnktdG9nZ2xle2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmU7dHJhbnNpdGlvbjpjb2xvciAuMTVzIGVhc2V9LmNsYXVkZS1oaXN0b3J5LXRvZ2dsZTpob3Zlcntjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5jbGF1ZGUtaGlzdG9yeS10b2dnbGUgLmNoZXZyb257ZGlzcGxheTppbmxpbmUtYmxvY2s7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI1cyB2YXIoLS1lYXNlLW91dC1leHBvKTtmb250LXNpemU6LjY4NzVyZW07bWFyZ2luLXJpZ2h0OjRweH0uY2xhdWRlLWhpc3RvcnktdG9nZ2xlIC5oaXN0b3J5LWNvdW50e2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO3BhZGRpbmc6MnB4IDdweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTttYXJnaW4tbGVmdDo2cHh9LmNsYXVkZS1oaXN0b3J5LWxvYWRpbmd7cGFkZGluZzoxNnB4IDhweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjgxMjVyZW07dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zdHlsZTppdGFsaWN9LnNpZGViYXItaGlzdG9yeS1zZWN0aW9uLWxhYmVse3BhZGRpbmc6OHB4IDEwcHggNHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO29wYWNpdHk6LjV9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1oZWFkZXJ7bWFyZ2luLXRvcDo2cHg7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciAuY2hldnJvbntmb250LXNpemU6LjY4NzVyZW07bWFyZ2luLXJpZ2h0OjRweH0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LXRpdGxle2ZvbnQtc2l6ZTouNjg3NXJlbTtwYWRkaW5nOjZweCA4cHggNnB4IDEycHg7b3BhY2l0eTouODtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWhlYWRlciAuY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LXRpdGxlOmJlZm9yZXtkaXNwbGF5Om5vbmV9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1sYWJlbHttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmNsYXVkZS1oaXN0b3J5LWRpcmVjdG9yeS1jbGVhci1idG57b3BhY2l0eTouOTtmbGV4LXNocmluazowfS5jbGF1ZGUtaGlzdG9yeS1wcmV2aWV3e292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uY2xhdWRlLWhpc3RvcnktaXRlbXtvcGFjaXR5Oi44NTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlfS5jbGF1ZGUtaGlzdG9yeS1pdGVtOmhvdmVye29wYWNpdHk6MTtiYWNrZ3JvdW5kOiNmZmZkZmFmNX0uc2Vzc2lvbi1pdGVte3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpsZWZ0O2JhY2tncm91bmQ6I2ZmZmNmN2ViO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMHB4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7cGFkZGluZzoxMHB4IDEycHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2UsdHJhbnNmb3JtIC4xcyBlYXNlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7bWFyZ2luLWJvdHRvbTo2cHg7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufS5zZXNzaW9uLWl0ZW06YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3RvcDo2cHg7Ym90dG9tOjZweDt3aWR0aDozcHg7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVZKDApO3RyYW5zaXRpb246YWxsIC4ycyBlYXNlO2JvcmRlci1yYWRpdXM6MnB4fS5zZXNzaW9uLWl0ZW0tcm93e3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX0uc2Vzc2lvbi1pdGVtLWNvbnRlbnR7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czppbmhlcml0O3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLW91dC1leHBvKSxiYWNrZ3JvdW5kIC4xOHMgZWFzZTt3aWxsLWNoYW5nZTp0cmFuc2Zvcm19LnNlc3Npb24taXRlbS5zd2lwZWQgLnNlc3Npb24taXRlbS1jb250ZW50e3RyYW5zZm9ybTp0cmFuc2xhdGUoLTcycHgpO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjUsI2ZjZjZlZGYwKX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2t7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXNocmluazowO3dpZHRoOjIycHg7aGVpZ2h0OjIycHg7bWFyZ2luLXJpZ2h0OjhweDtwb3NpdGlvbjpyZWxhdGl2ZX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgaW5wdXR7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtvcGFjaXR5OjA7Y3Vyc29yOnBvaW50ZXJ9LnNlc3Npb24tbWFuYWdlLWNoZWNrIHNwYW57d2lkdGg6MThweDtoZWlnaHQ6MThweDtib3JkZXItcmFkaXVzOjZweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yMik7YmFja2dyb3VuZDojZmZmYmY1OGM7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmNjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZX0uc2Vzc2lvbi1tYW5hZ2UtY2hlY2s6aG92ZXIgc3BhbntiYWNrZ3JvdW5kOiNmZmZiZjVjYztib3JkZXItY29sb3I6IzdkNWIzOTU5fS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW46YWZ0ZXJ7Y29udGVudDoiXDI3MTMiO2NvbG9yOiNmZmY7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo3MDB9LnNlc3Npb24taXRlbS5zZWxlY3RlZHtib3JkZXItY29sb3I6I2M1NjUzZDU5O2JhY2tncm91bmQ6I2ZmZjVlZWY1fS5zZXNzaW9uLWl0ZW0tcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fUBrZXlmcmFtZXMgc2Vzc2lvbi1kZWxldGUtY29sbGFwc2V7dG97bWF4LWhlaWdodDowO29wYWNpdHk6MDttYXJnaW4tYm90dG9tOjA7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO2JvcmRlci13aWR0aDowfX0uc2Vzc2lvbi1pdGVtLmRlbGV0aW5ne2FuaW1hdGlvbjpzZXNzaW9uLWRlbGV0ZS1jb2xsYXBzZSAuM3MgZWFzZS1vdXQgZm9yd2FyZHM7b3ZlcmZsb3c6aGlkZGVuO21heC1oZWlnaHQ6MTIwcHg7cG9pbnRlci1ldmVudHM6bm9uZX0uc2Vzc2lvbi1tYWlue2ZsZXg6MTttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDozcHg7cGFkZGluZy1yaWdodDo2MHB4fS5zZXNzaW9uLXRpdGxlLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6OHB4fS5zZXNzaW9uLXRpdGxlLXJvdyAuc2Vzc2lvbi10aXRsZSwuc2Vzc2lvbi10aXRsZS1yb3cgLnNlc3Npb24tY29tbWFuZHtmbGV4OjE7bWluLXdpZHRoOjB9LnNlc3Npb24tdGltZXtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXA7bGluZS1oZWlnaHQ6MS40O3BhZGRpbmctdG9wOjFweH0uc2Vzc2lvbi1hY3Rpdml0eXtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tYWNjZW50KTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bGluZS1oZWlnaHQ6MS4zO29wYWNpdHk6Ljg1fS5zZXNzaW9uLWRlc2NyaXB0aW9ue2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bGluZS1oZWlnaHQ6MS4zNX0uc2Vzc2lvbi1yZWNvdmVyeS1oaW50e2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6Izk2NzY1NTE0O3BhZGRpbmc6MXB4IDVweDtib3JkZXItcmFkaXVzOjNweH0uc2Vzc2lvbi1hY3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjRweDt0b3A6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLWhlaWdodDoyOHB4O21pbi13aWR0aDoyOHB4O3BhZGRpbmc6MDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOi44MTI1cmVtO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2U7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXJ9LnNlc3Npb24tYWN0aW9uLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTUxYTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLWFjdGlvbi1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9LnNlc3Npb24tYWN0aW9uLWJ0biBzdmd7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1hY3Rpb24tYnRuLmRlbGV0ZS1idG46aG92ZXJ7YmFja2dyb3VuZDojZTc0YzNjMTQ7Y29sb3I6I2QzNTI0NH0uc2Vzc2lvbi1hY3Rpb24tYnRuLm1lcmdlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiMyZjgwZWQxYTtjb2xvcjojMmY4MGVkfS5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2V7YmFja2dyb3VuZDojMmY4MGVkMWY7Y29sb3I6IzJmODBlZH0uc2Vzc2lvbi1raW5kLWJhZGdlLndvcmt0cmVlLW1lcmdlLmZhaWxlZHtiYWNrZ3JvdW5kOiNlNzRjM2MxZjtjb2xvcjojZDM1MjQ0fS5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2UubWVyZ2Vke2JhY2tncm91bmQ6IzI3YWU2MDFmO2NvbG9yOiMyMTk2NTN9LnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZS1tZXJnZS5tZXJnaW5nLC5zZXNzaW9uLWtpbmQtYmFkZ2Uud29ya3RyZWUtbWVyZ2UuY2hlY2tpbmd7YmFja2dyb3VuZDojZjI5OTRhMWY7Y29sb3I6I2MxN2MyYn0ud29ya3RyZWUtbWVyZ2UtY29udGVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4fS53b3JrdHJlZS1tZXJnZS1yb3d7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxNnB4O3BhZGRpbmc6MTBweCAxMnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6I2ZmZmZmZjgwO2ZvbnQtc2l6ZTouODc1cmVtfS53b3JrdHJlZS1tZXJnZS1yb3cgc3Bhbntjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9Lndvcmt0cmVlLW1lcmdlLXJvdyBzdHJvbmd7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt3b3JkLWJyZWFrOmJyZWFrLWFsbDt0ZXh0LWFsaWduOnJpZ2h0fS53b3JrdHJlZS1tZXJnZS1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjEwcHg7bWFyZ2luLXRvcDoxNnB4fS53b3JrdHJlZS1tZXJnZS1tb2RhbHttYXgtd2lkdGg6NjIwcHh9Lm1vZGFsLXN1YnRpdGxle21hcmdpbi10b3A6NHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2Vzc2lvbi1hY3Rpb24tYnRuW2Rpc2FibGVkXXtvcGFjaXR5Oi40NTtjdXJzb3I6bm90LWFsbG93ZWR9LnNlc3Npb24tYWN0aW9uLWJ0bltkaXNhYmxlZF06aG92ZXJ7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXXtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZH0ud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXTpob3Zlciwud29ya3RyZWUtbWVyZ2UtYWN0aW9ucyAuYnRuW2Rpc2FibGVkXTphY3RpdmV7dHJhbnNmb3JtOm5vbmV9Lndvcmt0cmVlLW1lcmdlLWFjdGlvbnMgLmJ0bnttaW4td2lkdGg6MTIwcHh9Lndvcmt0cmVlLW1lcmdlLW1vZGFsIC5tb2RhbC1ib2R5e21pbi1oZWlnaHQ6MjYwcHh9Lndvcmt0cmVlLW1lcmdlLW1vZGFsIC5lcnJvci1tZXNzYWdle21hcmdpbi10b3A6MTJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludHttYXJnaW4tdG9wOjB9Lndvcmt0cmVlLW1lcmdlLXJvdysuZmllbGQtaGludHttYXJnaW4tdG9wOjJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludCsuZmllbGQtaGludHttYXJnaW4tdG9wOjRweH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgLm1vZGFsLXN1YnRpdGxle21heC13aWR0aDo0MjBweH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgc3Ryb25ne2ZvbnQtd2VpZ2h0OjYwMH0ud29ya3RyZWUtbWVyZ2UtbW9kYWwgLm1vZGFsLWhlYWRlcnthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IHB7bWFyZ2luOjB9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQgc3Ryb25ne2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9Lndvcmt0cmVlLW1lcmdlLXJvdyBzdHJvbmc6ZW1wdHk6YWZ0ZXJ7Y29udGVudDoiLSI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQgY29kZXtmb250LWZhbWlseTppbmhlcml0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS53b3JrdHJlZS1tZXJnZS1yb3c6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDoycHh9Lndvcmt0cmVlLW1lcmdlLXJvdzpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC5tdXRlZHtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC5lcnJvcntjb2xvcjojZDM1MjQ0fS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC5maWVsZC1oaW50LnN1Y2Nlc3N7Y29sb3I6IzIxOTY1M30ud29ya3RyZWUtbWVyZ2UtY29udGVudCAuZmllbGQtaGludC53YXJuaW5ne2NvbG9yOiNjMTdjMmJ9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQuaW5mb3tjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLmZpZWxkLWhpbnQrLndvcmt0cmVlLW1lcmdlLXJvd3ttYXJnaW4tdG9wOjJweH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93Ky53b3JrdHJlZS1tZXJnZS1yb3d7bWFyZ2luLXRvcDowfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgc3Ryb25nIHNtYWxse2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgc3Ryb25nIGNvZGUsLndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyBzcGFuIGNvZGV7Zm9udC1mYW1pbHk6aW5oZXJpdH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IGNvZGV7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwYWRkaW5nOjB9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyBlbXtmb250LXN0eWxlOm5vcm1hbDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IHNtYWxsLC53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLm11dGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLndhcm5pbmd7Y29sb3I6I2MxN2MyYn0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5zdWNjZXNze2NvbG9yOiMyMTk2NTN9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAuZXJyb3J7Y29sb3I6I2QzNTI0NH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5pbmZve2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC50cnVuY2F0ZXtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5tb25vc3BhY2V7Zm9udC1mYW1pbHk6dWktbW9ub3NwYWNlLFNGTW9uby1SZWd1bGFyLE1lbmxvLE1vbmFjbyxDb25zb2xhcyxtb25vc3BhY2V9Lndvcmt0cmVlLW1lcmdlLWNvbnRlbnQgLndvcmt0cmVlLW1lcmdlLXJvdyAuc21hbGx7Zm9udC1zaXplOi44MTI1cmVtfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLm5vcm1hbHtmb250LXNpemU6Ljg3NXJlbX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5ibG9ja3tkaXNwbGF5OmJsb2NrfS53b3JrdHJlZS1tZXJnZS1jb250ZW50IC53b3JrdHJlZS1tZXJnZS1yb3cgLmlubGluZXtkaXNwbGF5OmlubGluZX0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5mbGV4e2Rpc3BsYXk6ZmxleH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5ncmlke2Rpc3BsYXk6Z3JpZH0ud29ya3RyZWUtbWVyZ2UtY29udGVudCAud29ya3RyZWUtbWVyZ2Utcm93IC5yb3VuZGVke2JvcmRlci1yYWRpdXM6OHB4fUBtZWRpYShob3Zlcjpob3Zlcil7LnNlc3Npb24taXRlbSAuc2Vzc2lvbi1hY3Rpb25ze29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2V9LnNlc3Npb24taXRlbTpob3ZlciAuc2Vzc2lvbi1hY3Rpb25zLC5zZXNzaW9uLWl0ZW0uYWN0aXZlIC5zZXNzaW9uLWFjdGlvbnMsLnNlc3Npb24taXRlbS5zd2lwZWQgLnNlc3Npb24tYWN0aW9uc3tvcGFjaXR5OjF9LnNlc3Npb24taXRlbSAuc2Vzc2lvbi1hY3Rpb25zOmhhcyguc2Vzc2lvbi1hY3Rpb24tYnRuW2RhdGEtYWN0aW9uPXJlc3VtZV0pe29wYWNpdHk6MX19QG1lZGlhKGhvdmVyOm5vbmUpey5zZXNzaW9uLWl0ZW0gLnNlc3Npb24tYWN0aW9uc3tvcGFjaXR5OjF9fS5zZXNzaW9uLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDojZmZmZGZhZjU7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1kZWZhdWx0KTtib3gtc2hhZG93OjAgMnB4IDhweCAjNTkzYTIwMTJ9LnNlc3Npb24taXRlbTpob3ZlcjpiZWZvcmV7b3BhY2l0eTouNTt0cmFuc2Zvcm06c2NhbGVZKDEpfS5zZXNzaW9uLWl0ZW0uYWN0aXZle2JhY2tncm91bmQ6I2ZmZjdmMGY1O2JvcmRlci1jb2xvcjojYzU2NTNkNGQ7Ym94LXNoYWRvdzowIDJweCA4cHggI2M1NjUzZDFhfS5zZXNzaW9uLWl0ZW06YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTkpO3RyYW5zaXRpb24tZHVyYXRpb246LjFzfS5zZXNzaW9uLWNvbW1hbmR7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uc2Vzc2lvbi10aXRsZXtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi44MTI1cmVtO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi0uMDFlbTtsaW5lLWhlaWdodDoxLjN9LnNlc3Npb24tbWV0YXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2ZsZXgtd3JhcDp3cmFwfS5zZXNzaW9uLXN0YXR1c3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6M3B4IDhweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi42ODc1cmVtO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNlc3Npb24tc3RhdHVzLWRvdHt3aWR0aDo2cHg7aGVpZ2h0OjZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtmbGV4LXNocmluazowfS5zZXNzaW9uLXN0YXR1cy5ydW5uaW5nIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTtib3gtc2hhZG93OjAgMCA1cHggdmFyKC0tc3VjY2Vzcy1nbG93KTthbmltYXRpb246c3RhdHVzLXB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy5leGl0ZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5zZXNzaW9uLXN0YXR1cy5mYWlsZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlcil9LnNlc3Npb24tc3RhdHVzLnN0b3BwZWQgLnNlc3Npb24tc3RhdHVzLWRvdHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpfS5zZXNzaW9uLXN0YXR1cy5ydW5uaW5ne2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnNlc3Npb24tc3RhdHVzLmZhaWxlZHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uc2Vzc2lvbi1zdGF0dXMuc3RvcHBlZHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2NvbG9yOnZhcigtLXdhcm5pbmcpfS5zZXNzaW9uLXN0YXR1cy5wZXJtaXNzaW9uLWJsb2NrZWR7YmFja2dyb3VuZDojZjBhNTAwMjQ7Y29sb3I6I2QxOGIwMH0uc2Vzc2lvbi1zdGF0dXMuZXhpdGVkLC5zZXNzaW9uLXN0YXR1cy5hcmNoaXZlZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmctbGVmdDowO3BhZGRpbmctcmlnaHQ6MH1Aa2V5ZnJhbWVzIHN0YXR1cy1wdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjV9fS5zZXNzaW9uLWlke2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDojOTY3NjU1MWY7cGFkZGluZzoycHggNnB4O2JvcmRlci1yYWRpdXM6NHB4O2ZvbnQtd2VpZ2h0OjUwMH0uc2Vzc2lvbi1ncm91cC0taGlzdG9yeXttYXJnaW4tdG9wOmF1dG87cGFkZGluZy10b3A6NnB4fS5zZXNzaW9uLWhpc3RvcnktdG9nZ2xlIC5oaXN0b3J5LWNvdW50LmxvYWRpbmd7bGV0dGVyLXNwYWNpbmc6LjEyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtwYWRkaW5nLWxlZnQ6MnB4O3BhZGRpbmctcmlnaHQ6MnB4fS5zZXNzaW9uLWhpc3RvcnktYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo0cHg7cGFkZGluZzoycHggMCA0cHg7YW5pbWF0aW9uOmhpc3RvcnlCb2R5RmFkZUluIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9QGtleWZyYW1lcyBoaXN0b3J5Qm9keUZhZGVJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uc2lkZWJhci1oaXN0b3J5LXRvb2xiYXJ7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtwYWRkaW5nOjJweCA0cHggNnB4O2ZsZXgtc2hyaW5rOjB9LnNpZGViYXItaGlzdG9yeS1jbGVhcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo1MDB9LnNpZGViYXItaGlzdG9yeS1jbGVhcjpob3Zlcntjb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKX0uc2lkZWJhci1oaXN0b3J5LXNjcm9sbHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHh9LnNpZGViYXItZm9vdGVye3BhZGRpbmc6MTJweCAxMnB4IDE0cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDtiYWNrZ3JvdW5kOiNmZmZiZjViM30uc2lkZWJhci1mb290ZXItYWN0aW9uc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdChhdXRvLWZpdCxtaW5tYXgoNTZweCwxZnIpKTtnYXA6NHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NHB4O2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtwYWRkaW5nOjdweCA0cHg7bWluLWhlaWdodDo0NnB4O2JvcmRlci1yYWRpdXM6OXB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0biBzdmd7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtmbGV4LXNocmluazowO29wYWNpdHk6Ljg1O3RyYW5zaXRpb246b3BhY2l0eSB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG46aG92ZXJ7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtiYWNrZ3JvdW5kOiM5Njc2NTUxNDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuOmhvdmVyIHN2Z3tvcGFjaXR5OjF9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMXN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5oaWRkZW57ZGlzcGxheTpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5zaWRlYmFyLWxvZ291dHtwb3NpdGlvbjpyZWxhdGl2ZX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuc2lkZWJhci1sb2dvdXQ6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotM3B4O3RvcDoyMiU7Ym90dG9tOjIyJTt3aWR0aDoxcHg7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItc3VidGxlKTtwb2ludGVyLWV2ZW50czpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5zaWRlYmFyLWxvZ291dDpob3Zlcntjb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuc2lkZWJhci1sb2dvdXQ6aG92ZXIgc3Zne2NvbG9yOnZhcigtLWRhbmdlcil9LnRvcGJhci1idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NXB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo1MDA7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2hlaWdodDozMnB4O21pbi1oZWlnaHQ6MzJweDt3aGl0ZS1zcGFjZTpub3dyYXA7Ym94LXNpemluZzpib3JkZXItYm94O2xpbmUtaGVpZ2h0OjE7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnRvcGJhci1idG46aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmODA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0udG9wYmFyLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSl9LnRvcGJhci1idG4uYWN0aXZle2JhY2tncm91bmQ6I2ZmZmZmZmIzO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NjAwO2JveC1zaGFkb3c6MCAxcHggNHB4ICM1OTNhMjAxYX0udG9wYmFyLWJ0bi5zcXVhcmV7d2lkdGg6MzJweDtwYWRkaW5nOjA7Zm9udC1zaXplOi44NzVyZW19I3Rlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AuYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjojYzU2NTNkMzN9I3Rlcm1pbmFsLWludGVyYWN0aXZlLXRvZ2dsZS10b3AuYWN0aXZlOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDJlfS5idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NnB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi0uMDA1ZW07cGFkZGluZzowIDE2cHg7aGVpZ2h0OjM4cHg7bWluLWhlaWdodDozOHB4O2JvcmRlci1yYWRpdXM6MTBweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO3doaXRlLXNwYWNlOm5vd3JhcDtwb3NpdGlvbjpyZWxhdGl2ZTt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZSxjb2xvciAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudH0uYnRuOmZvY3Vze291dGxpbmU6bm9uZX0uYnRuOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1hY2NlbnQpfS5idG46ZGlzYWJsZWQsLmJ0bltkaXNhYmxlZF17b3BhY2l0eTouNDU7Y3Vyc29yOm5vdC1hbGxvd2VkO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtOm5vbmUhaW1wb3J0YW50O2JveC1zaGFkb3c6bm9uZSFpbXBvcnRhbnR9LmJ0bi1wcmltYXJ5e2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQtaG92ZXIpIDAlLHZhcigtLWFjY2VudCkgMTAwJSk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtib3gtc2hhZG93OjAgMXB4IDJweCAjYzU2NTNkNTIsMCA0cHggMTBweCAtMnB4ICNjNTY1M2Q1MixpbnNldCAwIDFweCAjZmZmZmZmMzgsaW5zZXQgMCAtMXB4ICM1OTNhMjAyZX0uYnRuLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNkNjg1NWUgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgMnB4IDRweCAjYzU2NTNkNTIsMCA4cHggMjBweCAtNHB4ICNjNTY1M2Q2NixpbnNldCAwIDFweCAjZmZmZmZmNDcsaW5zZXQgMCAtMXB4ICM1OTNhMjAyZX0uYnRuLXByaW1hcnk6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQpIDAlLHZhcigtLWFjY2VudC1hY3RpdmUpIDEwMCUpO2JveC1zaGFkb3c6MCAxcHggMnB4ICNjNTY1M2Q0NyxpbnNldCAwIDFweCAjNTkzYTIwMmU7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tc2Vjb25kYXJ5e2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTI0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmJ0bi1zZWNvbmRhcnk6YWN0aXZle2JhY2tncm91bmQ6IzdkNWIzOTMzO3RyYW5zaXRpb24tZHVyYXRpb246LjA2c30uYnRuLWdob3N0e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uYnRuLWdob3N0OmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmJ0bi1naG9zdDphY3RpdmV7YmFja2dyb3VuZDojN2Q1YjM5MjQ7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tZGFuZ2Vye2JhY2tncm91bmQ6I2IyNGY0NTE0O2NvbG9yOnZhcigtLWRhbmdlcik7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fS5idG4tZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTI5O2NvbG9yOnZhcigtLWRhbmdlcil9LmJ0bi1kYW5nZXI6YWN0aXZle2JhY2tncm91bmQ6I2IyNGY0NTNkO3RyYW5zaXRpb24tZHVyYXRpb246LjA2c30uYnRuLWRhbmdlcjpmb2N1cy12aXNpYmxle2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1kYW5nZXIpfS5idG4tc3VjY2Vzc3tiYWNrZ3JvdW5kOiM0ZjdhNTgxYTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmJ0bi1zdWNjZXNzOmhvdmVye2JhY2tncm91bmQ6IzRmN2E1ODJlO2NvbG9yOnZhcigtLXN1Y2Nlc3MpfS5idG4tc3VjY2VzczphY3RpdmV7YmFja2dyb3VuZDojNGY3YTU4NDI7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5idG4tc3VjY2Vzczpmb2N1cy12aXNpYmxle2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWJnLXByaW1hcnkpLDAgMCAwIDRweCB2YXIoLS1zdWNjZXNzKX0uYnRuLWJsb2Nre3dpZHRoOjEwMCV9LmJ0bi14c3toZWlnaHQ6MjZweDttaW4taGVpZ2h0OjI2cHg7cGFkZGluZzowIDEwcHg7Zm9udC1zaXplOi43NXJlbTtib3JkZXItcmFkaXVzOjdweDtnYXA6NHB4fS5idG4tc217aGVpZ2h0OjMycHg7bWluLWhlaWdodDozMnB4O3BhZGRpbmc6MCAxMnB4O2ZvbnQtc2l6ZTouODEyNXJlbTtib3JkZXItcmFkaXVzOjhweDtnYXA6NXB4fS5idG4taWNvbntwYWRkaW5nOjA7d2lkdGg6MzZweDttaW4td2lkdGg6MzZweDtoZWlnaHQ6MzZweDttaW4taGVpZ2h0OjM2cHg7Ym9yZGVyLXJhZGl1czo4cHg7Z2FwOjB9LmJ0bi1pY29uLmJ0bi1zbXt3aWR0aDozMHB4O21pbi13aWR0aDozMHB4O2hlaWdodDozMHB4O21pbi1oZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjdweH0uYnRuLWljb24gc3Zne2ZsZXgtc2hyaW5rOjB9Lm1haW4tY29udGVudHtmbGV4OjE7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttaW4td2lkdGg6MDttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cG9zaXRpb246cmVsYXRpdmV9Lm1haW4tY29udGVudC5maWxlLXBhbmVsLW9wZW57bWFyZ2luLXJpZ2h0OnZhcigtLWxheW91dC1tYWluLWZpbGUtcGFuZWwtd2lkdGgpO3RyYW5zaXRpb246bWFyZ2luLXJpZ2h0IC4yNXMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSl9LnRlcm1pbmFsLWluZm97Zm9udC1zaXplOi42MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC13ZWlnaHQ6NTAwfS5tYWluLWhlYWRlci1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjZweCAxMHB4O2ZsZXgtc2hyaW5rOjA7bWluLWhlaWdodDo0NHB4O2dhcDo4cHg7cG9zaXRpb246cmVsYXRpdmV9Lm1haW4taGVhZGVyLXJvdzphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2hlaWdodDoycHg7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCAwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjg1KSAzNSUscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLDEpIDUwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjg1KSA2NSUsdHJhbnNwYXJlbnQgMTAwJSk7YmFja2dyb3VuZC1zaXplOjIyMCUgMTAwJTtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgY2VudGVyO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjI1cyBlYXNlfS5tYWluLWhlYWRlci1yb3cuaXMtcnVubmluZzphZnRlcntvcGFjaXR5OjE7YW5pbWF0aW9uOnRvcGJhclByb2dyZXNzRmxvdyAxLjZzIGxpbmVhciBpbmZpbml0ZX0ubWFpbi1oZWFkZXItcm93LmlzLXBlcm1pc3Npb24tYmxvY2tlZDphZnRlcntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCAwJSxyZ2JhKDE2OSwxMDYsNDcsLjg1KSAzNSUscmdiYSgxNjksMTA2LDQ3LDEpIDUwJSxyZ2JhKDE2OSwxMDYsNDcsLjg1KSA2NSUsdHJhbnNwYXJlbnQgMTAwJSk7YmFja2dyb3VuZC1zaXplOjIyMCUgMTAwJTthbmltYXRpb24tZHVyYXRpb246Mi40c31Aa2V5ZnJhbWVzIHRvcGJhclByb2dyZXNzRmxvd3swJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjEwMCUgY2VudGVyfXRve2JhY2tncm91bmQtcG9zaXRpb246LTEwMCUgY2VudGVyfX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5tYWluLWhlYWRlci1yb3cuaXMtcnVubmluZzphZnRlcnthbmltYXRpb246bm9uZTtvcGFjaXR5Oi43fX0udG9wYmFyLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZsZXgtc2hyaW5rOjB9LnRvcGJhci1jZW50ZXJ7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtvdmVyZmxvdzpoaWRkZW59LnRvcGJhci1yaWdodHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7ZmxleC1zaHJpbms6MH0udG9wYmFyLWJyYW5ke2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYWNjZW50KSx2YXIoLS1hY2NlbnQtYWN0aXZlKSk7Y29sb3I6I2ZmZjtmb250LXdlaWdodDo3MDA7Zm9udC1zaXplOi44NXJlbTtsZXR0ZXItc3BhY2luZzouMDJlbTtib3gtc2hhZG93OjAgMXB4IDNweCAjNTkzYTIwMmU7dXNlci1zZWxlY3Q6bm9uZTtmbGV4LXNocmluazowfS50b3BiYXItc2Vzc2lvbi10aXRsZXtmb250LXdlaWdodDo2MDA7Zm9udC1zaXplOi44NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpcztmbGV4LXNocmluazowO21heC13aWR0aDoyNDBweH0udG9wYmFyLWN3ZHtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjcycmVtO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTt3aGl0ZS1zcGFjZTpub3dyYXA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7bWluLXdpZHRoOjA7ZmxleDoxIDEgMDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjJweCA2cHg7Ym9yZGVyLXJhZGl1czo2cHg7ZGlyZWN0aW9uOnJ0bDt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9wYmFyLWN3ZDpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmY4Yztjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnRvcGJhci10YWdsaW5le2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouNzhyZW07d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5zZXNzaW9uLXN0YXR1cy1waWxse2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy1lbGV2YXRlZCk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjIwcHg7cGFkZGluZzoycHggOXB4IDJweCA3cHg7ZmxleC1zaHJpbms6MDttYXgtd2lkdGg6MTQwcHg7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbn0uc2Vzc2lvbi1zdGF0dXMtcGlsbCAuc2Vzc2lvbi1zdGF0dXMtZG90e3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleC1zaHJpbms6MH0uc2Vzc2lvbi1zdGF0dXMtcGlsbCAuc2Vzc2lvbi1zdGF0dXMtdGV4dHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uc2Vzc2lvbi1zdGF0dXMtcGlsbC5ydW5uaW5ne2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Ym9yZGVyLWNvbG9yOiM0ZjdhNTg0ZDtjb2xvcjp2YXIoLS1zdWNjZXNzKX0uc2Vzc2lvbi1zdGF0dXMtcGlsbC5ydW5uaW5nIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTthbmltYXRpb246dGFzay1wdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy1waWxsLnBlcm1pc3Npb24tYmxvY2tlZHtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2JvcmRlci1jb2xvcjojYTk2YTJmNTk7Y29sb3I6dmFyKC0td2FybmluZyl9LnNlc3Npb24tc3RhdHVzLXBpbGwucGVybWlzc2lvbi1ibG9ja2VkIC5zZXNzaW9uLXN0YXR1cy1kb3R7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nKTthbmltYXRpb246dGFzay1wdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5zZXNzaW9uLXN0YXR1cy1waWxsLmV4aXRlZCwuc2Vzc2lvbi1zdGF0dXMtcGlsbC5zdG9wcGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXNzaW9uLXN0YXR1cy1waWxsLmZhaWxlZHtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNiMjRmNDU0ZDtjb2xvcjp2YXIoLS1kYW5nZXIpfS5zZXNzaW9uLXN0YXR1cy1waWxsLmZhaWxlZCAuc2Vzc2lvbi1zdGF0dXMtZG90e2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKX0uc2Vzc2lvbi1zdGF0dXMtcGlsbC5hcmNoaXZlZHtvcGFjaXR5Oi43fS5zZXNzaW9uLXN0YXR1cy1waWxsIC5zZXNzaW9uLXN0YXR1cy1lbGFwc2Vke2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6NHB4O3BhZGRpbmctbGVmdDo2cHg7Ym9yZGVyLWxlZnQ6MXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtvcGFjaXR5Oi43NTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouNjVyZW07bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5jdXJyZW50LXRhc2t7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yKTtib3JkZXItcmFkaXVzOjIwcHg7cGFkZGluZzoycHggOHB4IDJweCA1cHg7Zm9udC13ZWlnaHQ6NTAwO21heC13aWR0aDoyNDBweDttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47ZmxleC1zaHJpbms6MTt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uY3VycmVudC10YXNrOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtmbGV4LXNocmluazowO2FuaW1hdGlvbjp0YXNrLXB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB0YXNrLXB1bHNlezAlLHRve29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMSl9NTAle29wYWNpdHk6LjU7dHJhbnNmb3JtOnNjYWxlKC44KX19LnRvcGJhci1tb3JlLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleH0udG9wYmFyLW1vcmUtbWVudXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6Y2FsYygxMDAlICsgNnB4KTtyaWdodDowO21pbi13aWR0aDoxNjhweDtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7cGFkZGluZzo0cHg7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbGcpO3otaW5kZXg6NjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MXB4fS50b3BiYXItbW9yZS1tZW51LmhpZGRlbntkaXNwbGF5Om5vbmV9LnRvcGJhci1tb3JlLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OXB4O3dpZHRoOjEwMCU7cGFkZGluZzo4cHggMTJweDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgycmVtO2ZvbnQtd2VpZ2h0OjUwMDtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjhweDt0ZXh0LWFsaWduOmxlZnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9wYmFyLW1vcmUtaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KX0udG9wYmFyLW1vcmUtaXRlbSBzdmd7ZmxleC1zaHJpbms6MDtvcGFjaXR5Oi44NX0udG9wYmFyLW1vcmUtaXRlbS50b3BiYXItbW9yZS1pdGVtLWRhbmdlcntjb2xvcjp2YXIoLS1kYW5nZXIpfS50b3BiYXItbW9yZS1pdGVtLnRvcGJhci1tb3JlLWl0ZW0tZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXItaG92ZXIpfS50b3BiYXItbW9yZS1pdGVtLmhpZGRlbntkaXNwbGF5Om5vbmV9LnRvcGJhci1tb3JlLWl0ZW1bZGlzYWJsZWRde29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS50b3BiYXItbW9yZS1pdGVtW2Rpc2FibGVkXTpob3ZlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnRvcGJhci1tb3JlLWRpdmlkZXJ7aGVpZ2h0OjFweDttYXJnaW46NHB4IDZweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1kZWZhdWx0KTtvcGFjaXR5Oi42fS50ZXJtaW5hbC1jb250YWluZXJ7ZmxleDoxO2Rpc3BsYXk6bm9uZTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wIHJpZ2h0LHJnYmEoOTEsNTgsMzQsLjIpLHRyYW5zcGFyZW50IDM1JSkscmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBib3R0b20gbGVmdCxyZ2JhKDE5NywxMDEsNjEsLjA4KSx0cmFuc3BhcmVudCA0MCUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsIzJhMjIxYywjMWYxYjE3LCMxYTE2MTMpO292ZXJmbG93OmhpZGRlbjttaW4taGVpZ2h0OjA7bWluLXdpZHRoOjA7bWFyZ2luOjAgNnB4IDZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE0MCwxMTAsODUsLjM1KTtib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmZmZmYwZiwwIDhweCAzMnB4ICMwMDAwMDA1OSwwIDJweCA4cHggIzAwMDM7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1ub3JtYWwpLGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1ub3JtYWwpfS50ZXJtaW5hbC1jb250YWluZXIuYWN0aXZle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpzdHJldGNofS50ZXJtaW5hbC1zY3JvbGwtd3JhcHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbjtzY3JvbGxiYXItd2lkdGg6bm9uZTtwYWRkaW5nOjEycHg7Ym9yZGVyLXJhZGl1czowO2JveC1zaGFkb3c6bm9uZTstd2Via2l0LWZvbnQtc21vb3RoaW5nOmFudGlhbGlhc2VkOy1tb3otb3N4LWZvbnQtc21vb3RoaW5nOmdyYXlzY2FsZTt0ZXh0LXJlbmRlcmluZzpnZW9tZXRyaWNQcmVjaXNpb247Zm9udC12YXJpYW50LWxpZ2F0dXJlczpub25lO2ZvbnQtZmVhdHVyZS1zZXR0aW5nczoibGlnYSIgMCwiY2xpZyIgMCwiY2FsdCIgMCwiZGxpZyIgMDtmb250LWtlcm5pbmc6bm9uZTstLXRlcm0tZmc6ICNmNWVhZGM7LS10ZXJtLWJnOiB0cmFuc3BhcmVudDstLXRlcm0tY3Vyc29yOiAjZDY3YjUyOy0tdGVybS1mb250LWZhbWlseTogIkdlaXN0IE1vbm8iLCAiU0YgTW9ubyIsIG1vbm9zcGFjZTstLXRlcm0tZm9udC1zaXplOiAxM3B4Oy0tdGVybS1saW5lLWhlaWdodDogdmFyKC0tdGVybS1yb3ctaGVpZ2h0KTstLXRlcm0tcm93LWhlaWdodDogMjBweDstLXRlcm0tY29sb3ItMDogIzFmMWIxNzstLXRlcm0tY29sb3ItMTogI2QyNzc2NjstLXRlcm0tY29sb3ItMjogIzdmYTM2ZjstLXRlcm0tY29sb3ItMzogI2Q1YTM1YjstLXRlcm0tY29sb3ItNDogIzg3YTlkOTstLXRlcm0tY29sb3ItNTogI2M1OTVjNzstLXRlcm0tY29sb3ItNjogIzdmYjNiMTstLXRlcm0tY29sb3ItNzogI2Y1ZWFkYzstLXRlcm0tY29sb3ItODogIzYyNTM0NzstLXRlcm0tY29sb3ItOTogI2UzOWE4OTstLXRlcm0tY29sb3ItMTA6ICM5Y2MwOGE7LS10ZXJtLWNvbG9yLTExOiAjZWJiYjZlOy0tdGVybS1jb2xvci0xMjogI2E4YzFlYTstLXRlcm0tY29sb3ItMTM6ICNkYmIxZGM7LS10ZXJtLWNvbG9yLTE0OiAjOWFjYmNhOy0tdGVybS1jb2xvci0xNTogI2ZmZjdlZn0udGVybWluYWwtc2Nyb2xsLXdyYXA6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0udGVybWluYWwtc2Nyb2xsLXdyYXAgOjpzZWxlY3Rpb257YmFja2dyb3VuZDojZDY3YjUyNDd9LnRlcm1pbmFsLXNjcm9sbC13cmFwIC50ZXJtLWdyaWR7bWluLWhlaWdodDoxMDAlfS50ZXJtaW5hbC1zY3JvbGxiYXJ7cG9zaXRpb246YWJzb2x1dGU7dG9wOjRweDtyaWdodDoycHg7Ym90dG9tOjRweDt3aWR0aDoxNHB4O3otaW5kZXg6MTA7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3MgZWFzZTtwb2ludGVyLWV2ZW50czpub25lfS50ZXJtaW5hbC1zY3JvbGxiYXIudmlzaWJsZXtvcGFjaXR5OjE7cG9pbnRlci1ldmVudHM6YXV0b30udGVybWluYWwtc2Nyb2xsYmFyLXRyYWNre3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7d2lkdGg6MTRweDtib3JkZXItcmFkaXVzOjdweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1ie3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjNweDt3aWR0aDo4cHg7bWluLWhlaWdodDoyOHB4O2JvcmRlci1yYWRpdXM6NHB4O2JhY2tncm91bmQ6I2I0OTY3ODU5O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2Usd2lkdGggLjE1cyBlYXNlLHJpZ2h0IC4xNXMgZWFzZX0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6I2M4YWE4YzhjO3dpZHRoOjEwcHg7cmlnaHQ6MnB4fS50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWIuZHJhZ2dpbmcsLnRlcm1pbmFsLXNjcm9sbGJhci10aHVtYjphY3RpdmV7YmFja2dyb3VuZDojZGNiOTk2YjM7d2lkdGg6MTBweDtyaWdodDoycHh9QG1lZGlhKHBvaW50ZXI6Y29hcnNlKXsudGVybWluYWwtc2Nyb2xsYmFyLC50ZXJtaW5hbC1zY3JvbGxiYXItdHJhY2t7d2lkdGg6MjBweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1ie3dpZHRoOjEycHg7cmlnaHQ6NHB4O21pbi1oZWlnaHQ6MzZweH0udGVybWluYWwtc2Nyb2xsYmFyLXRodW1iOmhvdmVyLC50ZXJtaW5hbC1zY3JvbGxiYXItdGh1bWIuZHJhZ2dpbmd7d2lkdGg6MTRweDtyaWdodDozcHh9fS50ZXJtaW5hbC1jb250YWluZXI6Zm9jdXMtd2l0aGlue2JvcmRlci1jb2xvcjojYzU2NTNkODA7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmMTQsMCA4cHggMzJweCAjMDAwNiwwIDAgMCAycHggI2M1NjUzZDI2fS50ZXJtaW5hbC1yZXNpemUtaGFuZGxle3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTozcHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTt3aWR0aDo0OHB4O2hlaWdodDo1cHg7YmFja2dyb3VuZDojZmZmZmZmMTQ7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7Y3Vyc29yOm5zLXJlc2l6ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjdweDtjb2xvcjojZmZmZmZmNDA7b3BhY2l0eTowO3RyYW5zaXRpb246YWxsIC4yNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7ei1pbmRleDoxMDtwb2ludGVyLWV2ZW50czphdXRvfS50ZXJtaW5hbC1yZXNpemUtaGFuZGxlOmJlZm9yZXtjb250ZW50OiJcMjJlZVwyMmVlIjtsZXR0ZXItc3BhY2luZzo4cHg7Zm9udC1zaXplOjZweH0udGVybWluYWwtcmVzaXplLWhhbmRsZTpob3ZlcntvcGFjaXR5OjE7YmFja2dyb3VuZDojZmZmZmZmMjY7Y29sb3I6I2ZmZmZmZjgwO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgc2NhbGUoMS4xKX0udGVybWluYWwtY29udGFpbmVyOmhvdmVyIC50ZXJtaW5hbC1yZXNpemUtaGFuZGxle29wYWNpdHk6Ljd9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZXtib3JkZXItY29sb3I6IzRmN2E1ODhjO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjBmLDAgMCAwIDJweCAjNGY3YTU4NDAsMCA4cHggMzJweCAjMDAwMDAwNTl9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZTpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6MnB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50LHZhcigtLXN1Y2Nlc3MpLHRyYW5zcGFyZW50KTthbmltYXRpb246dGVybWluYWwtYWN0aXZlLXB1bHNlIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgdGVybWluYWwtYWN0aXZlLXB1bHNlezAlLHRve29wYWNpdHk6LjV9NTAle29wYWNpdHk6MX19LnRlcm1pbmFsLWNvbnRhaW5lcjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2hlaWdodDo0OHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KHRvIHRvcCxyZ2JhKDI2LDIyLDE5LC41KSx0cmFuc3BhcmVudCk7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlO3otaW5kZXg6MTI7Ym9yZGVyLXJhZGl1czowIDAgdmFyKC0tcmFkaXVzLW1kKSB2YXIoLS1yYWRpdXMtbWQpfS50ZXJtaW5hbC1jb250YWluZXIuaGFzLWp1bXAtYnRuOmFmdGVye29wYWNpdHk6MX0udGVybWluYWwtc2NhbGUtYnRue21pbi13aWR0aDoyNHB4O2hlaWdodDoyNHB4O3BhZGRpbmc6MCA0cHg7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NjAwfS50ZXJtaW5hbC1zY2FsZS1sYWJlbHtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWluLXdpZHRoOjMycHg7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzowIDJweH0udGVybWluYWwtc2NhbGUtb3ZlcmxheXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6OHB4O3JpZ2h0OjhweDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MXB4O3BhZGRpbmc6MnB4O2JvcmRlci1yYWRpdXM6N3B4O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDYpO2JhY2tncm91bmQ6IzE4MTQxMTYxO2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7Ym94LXNoYWRvdzowIDZweCAxOHB4ICMwMDAwMDAyZTtvcGFjaXR5Oi43Mjt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyBlYXNlLGJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2U7ei1pbmRleDoxMjtwb2ludGVyLWV2ZW50czphdXRvfS50ZXJtaW5hbC1jb250YWluZXI6aG92ZXIgLnRlcm1pbmFsLXNjYWxlLW92ZXJsYXksLnRlcm1pbmFsLXNjYWxlLW92ZXJsYXk6Zm9jdXMtd2l0aGlue29wYWNpdHk6MTtiYWNrZ3JvdW5kOiMxODE0MTE4Zjtib3JkZXItY29sb3I6I2ZmZmZmZjFhfS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0bnttaW4td2lkdGg6MjJweDtoZWlnaHQ6MjJweDtwYWRkaW5nOjAgM3B4O2NvbG9yOiNmNWVhZGNlMDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6NXB4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlfS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5LWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNkNjdiNTIyZTtjb2xvcjojZmZmN2VmZjV9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktbGFiZWx7Zm9udC1zaXplOi42MjVyZW07Y29sb3I6I2Y1ZWFkY2E4O21pbi13aWR0aDozNHB4O3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MCAzcHh9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktZGl2aWRlcnt3aWR0aDoxcHg7aGVpZ2h0OjE0cHg7YmFja2dyb3VuZDojZjVlYWRjMzM7bWFyZ2luOjAgMnB4fS50ZXJtaW5hbC1qdW1wLWJvdHRvbXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNHB4O2JvdHRvbToxNnB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtwYWRkaW5nOjA7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wOCk7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojMWMxNjEyYzc7Y29sb3I6I2ZmZjdlZmViO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0MCwwIDhweCAyMnB4ICMwMDAwMDA1MixpbnNldCAwIDFweCAjZmZmZmZmMGY7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KTtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjEzO29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxMHB4KSBzY2FsZSguODYpO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpvcGFjaXR5IC4yNnMgdmFyKC0tZWFzZS1vdXQtZXhwbyksdHJhbnNmb3JtIC4zMnMgdmFyKC0tZWFzZS1zcHJpbmcpLGJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMnMgZWFzZX0udGVybWluYWwtanVtcC1ib3R0b20udmlzaWJsZXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSk7cG9pbnRlci1ldmVudHM6YXV0b30udGVybWluYWwtanVtcC1ib3R0b20gc3Zne3RyYW5zaXRpb246dHJhbnNmb3JtIC4ycyB2YXIoLS1lYXNlLW91dC1leHBvKX0udGVybWluYWwtanVtcC1ib3R0b206aG92ZXJ7YmFja2dyb3VuZDojZDY3YjUyZWI7Ym9yZGVyLWNvbG9yOiNmZmZmZmYyZTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0NywwIDEwcHggMjZweCAjYjg1YzM3NWMsaW5zZXQgMCAxcHggI2ZmZmZmZjJlfS50ZXJtaW5hbC1qdW1wLWJvdHRvbTpob3ZlciBzdmd7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMS41cHgpfS50ZXJtaW5hbC1qdW1wLWJvdHRvbTphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoLjkyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wOHN9LnRlcm1pbmFsLWp1bXAtYm90dG9tOmZvY3VzLXZpc2libGV7b3V0bGluZTpub25lO2JveC1zaGFkb3c6MCAxcHggMnB4ICMwMDAwMDA0NywwIDEwcHggMjZweCAjYjg1YzM3NWMsaW5zZXQgMCAxcHggI2ZmZmZmZjJlLDAgMCAwIDNweCAjZDY3YjUyNTl9LnRlcm1pbmFsLWNvbnRhaW5lci5pbnRlcmFjdGl2ZXtib3JkZXItY29sb3I6IzRmN2E1ODgwO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjBhLDAgMCAwIDJweCAjNGY3YTU4NDAsdmFyKC0tc2hhZG93LXNvZnQpfS5taW5pLWtleWJvYXJkLWZhYntwb3NpdGlvbjpmaXhlZDtib3R0b206NjBweDtyaWdodDoxNnB4O3dpZHRoOjQ0cHg7aGVpZ2h0OjQ0cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2NvbG9yOiNmZmY7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjEuMTI1cmVtO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3gtc2hhZG93OjAgNHB4IDE2cHggI2I4NWMzNzU5O3otaW5kZXg6MTAwO3RyYW5zaXRpb246YWxsIC4ycyB2YXIoLS1lYXNlLXNwcmluZyl9Lm1pbmkta2V5Ym9hcmQtZmFiLnZpc2libGV7ZGlzcGxheTpmbGV4fS5taW5pLWtleWJvYXJkLWZhYjpob3Zlcnt0cmFuc2Zvcm06c2NhbGUoMS4xKTtib3gtc2hhZG93OjAgNnB4IDIwcHggI2I4NWMzNzczfS5taW5pLWtleWJvYXJkLWZhYjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NSl9Lm1pbmkta2V5Ym9hcmR7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjYwcHg7cmlnaHQ6MTZweDtiYWNrZ3JvdW5kOiMyYTFmMTZmNTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTIyLDkxLDY0LC41KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7Ym94LXNoYWRvdzowIDhweCAzMnB4ICMwMDA2O3otaW5kZXg6MTAwMDtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KTtvdmVyZmxvdzpoaWRkZW47bWluLXdpZHRoOjI2MHB4O2FuaW1hdGlvbjpta1NsaWRlVXAgLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5taW5pLWtleWJvYXJkLmhpZGRlbntkaXNwbGF5Om5vbmV9QGtleWZyYW1lcyBta1NsaWRlVXB7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDEycHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsubWluaS1rZXlib2FyZHtib3R0b206MjBweDtyaWdodDoxMHB4O2xlZnQ6MTBweDttaW4td2lkdGg6MH0ubWluaS1rZXlib2FyZC1mYWJ7Ym90dG9tOjIwcHg7cmlnaHQ6MTZweH19LmNoYXQtY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MTtkaXNwbGF5Om5vbmU7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47cGFkZGluZzowIDIwcHggMTZweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcscmdiYSgyNTUsMjUyLDI0OCwuNSkgMCUsdHJhbnNwYXJlbnQgMTAwJSl9LmNoYXQtdW5yZWFkLWJ1YmJsZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxNHB4O2JvdHRvbToxMHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjZweDtoZWlnaHQ6MzJweDttaW4td2lkdGg6MzJweDtwYWRkaW5nOjAgMTBweDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC43Mik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOiNmZmZjZjhlYjtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtc2l6ZTouNzhyZW07Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjE7bGV0dGVyLXNwYWNpbmc6LjAxZW07d2hpdGUtc3BhY2U6bm93cmFwO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCk7Ym94LXNoYWRvdzowIDFweCAzcHggIzU5M2EyMDFmLDAgMTBweCAyNHB4ICNiODVjMzcyZSxpbnNldCAwIDFweCAjZmZmOTtjdXJzb3I6cG9pbnRlcjt6LWluZGV4OjEzO29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg4cHgpIHNjYWxlKC45KTtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuMjZzIHZhcigtLWVhc2Utb3V0LWV4cG8pLHRyYW5zZm9ybSAuMzJzIHZhcigtLWVhc2Utc3ByaW5nKSxiYWNrZ3JvdW5kIC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJveC1zaGFkb3cgLjJzIGVhc2UsY29sb3IgLjE4cyBlYXNlLHBhZGRpbmcgLjIycyB2YXIoLS1lYXNlLW91dC1leHBvKX0uY2hhdC11bnJlYWQtYnViYmxlLnZpc2libGV7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpO3BvaW50ZXItZXZlbnRzOmF1dG99LmNoYXQtdW5yZWFkLWJ1YmJsZS5oYXMtdW5yZWFke2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjojZmZmZmZmYzc7cGFkZGluZzowIDEycHggMCAxMHB4O2JveC1zaGFkb3c6MCAxcHggM3B4ICM1OTNhMjAyZSwwIDEycHggMjhweCAjYjg1YzM3NTIsaW5zZXQgMCAxcHggI2ZmZmZmZjQ3fS5jaGF0LXVucmVhZC1idWJibGUtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5jaGF0LXVucmVhZC1idWJibGU6aG92ZXJ7YmFja2dyb3VuZDojZmZmYWYyO2JveC1zaGFkb3c6MCAycHggNHB4ICM1OTNhMjAyOSwwIDE0cHggMzBweCAjYjg1YzM3M2QsaW5zZXQgMCAxcHggI2ZmZmZmZmIzfS5jaGF0LXVucmVhZC1idWJibGUuaGFzLXVucmVhZDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1ob3Zlcik7Ym94LXNoYWRvdzowIDJweCA1cHggIzU5M2EyMDM4LDAgMTRweCAzMnB4ICNiODVjMzc2YixpbnNldCAwIDFweCAjZmZmZmZmNTJ9LmNoYXQtdW5yZWFkLWJ1YmJsZTpob3ZlciAuY2hhdC11bnJlYWQtYnViYmxlLWljb257dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMS41cHgpfS5jaGF0LXVucmVhZC1idWJibGU6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKC45NCk7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDhzfS5jaGF0LXVucmVhZC1idWJibGU6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOm5vbmU7Ym94LXNoYWRvdzowIDJweCA0cHggIzU5M2EyMDMzLDAgMTJweCAyOHB4ICNiODVjMzc1MixpbnNldCAwIDFweCAjZmZmZmZmNTIsMCAwIDAgM3B4ICNjNTY1M2Q1Mn0uY2hhdC11bnJlYWQtYnViYmxlLWNvdW50e2Rpc3BsYXk6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7Zm9udC1zaXplOi43OHJlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MTtsZXR0ZXItc3BhY2luZzouMDFlbTtwb2ludGVyLWV2ZW50czpub25lfS5jaGF0LXVucmVhZC1idWJibGUtY291bnQudmlzaWJsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FuaW1hdGlvbjpjaGF0VW5yZWFkQ291bnRQb3AgLjIycyB2YXIoLS1lYXNlLW91dC1iYWNrLCBjdWJpYy1iZXppZXIoLjM0LCAxLjU2LCAuNjQsIDEpKX0uY2hhdC11bnJlYWQtYnViYmxlLWNvdW50OmFmdGVye2NvbnRlbnQ6IiBcNjc2MVw2NWIwXDZkODhcNjA2ZiI7bWFyZ2luLWxlZnQ6MnB4O2ZvbnQtd2VpZ2h0OjUwMDtvcGFjaXR5Oi45NX1Aa2V5ZnJhbWVzIGNoYXRVbnJlYWRDb3VudFBvcHswJXt0cmFuc2Zvcm06c2NhbGUoLjYpO29wYWNpdHk6MH10b3t0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfX0uY2hhdC11bnJlYWQtZGl2aWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O21hcmdpbjo2cHggNHB4IDJweDtwYWRkaW5nOjAgMnB4O2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLWFjY2VudCk7bGV0dGVyLXNwYWNpbmc6LjA0ZW07dXNlci1zZWxlY3Q6bm9uZTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDthbmltYXRpb246Y2hhdFVucmVhZERpdmlkZXJJbiAuMzJzIHZhcigtLWVhc2Utb3V0LWV4cG8pIGZvcndhcmRzfS5jaGF0LXVucmVhZC1kaXZpZGVyLWxpbmV7ZmxleDoxO2hlaWdodDoxcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2M1NjUzZDBkLCNjNTY1M2Q1MiwjYzU2NTNkMGQpfS5jaGF0LXVucmVhZC1kaXZpZGVyLWxhYmVse2ZsZXgtc2hyaW5rOjA7cGFkZGluZzozcHggMTBweDtiYWNrZ3JvdW5kOiNmZmY4ZjBmMjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMTgpO2JvcmRlci1yYWRpdXM6OTk5cHg7Ym94LXNoYWRvdzowIDFweCAzcHggI2I4NWMzNzFhO3doaXRlLXNwYWNlOm5vd3JhcH1Aa2V5ZnJhbWVzIGNoYXRVbnJlYWREaXZpZGVySW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LmNoYXQtY29udGFpbmVyLmFjdGl2ZXtkaXNwbGF5OmZsZXh9LmNoYXQtY29udGFpbmVyOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjQ4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gdG9wLHJnYmEoMjU1LDI1MiwyNDgsLjYpLHRyYW5zcGFyZW50KTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt0cmFuc2l0aW9uOm9wYWNpdHkgLjNzIGVhc2U7ei1pbmRleDoxMn0uY2hhdC1jb250YWluZXIuaGFzLWp1bXAtYnRuOmFmdGVye29wYWNpdHk6MX0uY2hhdC1tZXNzYWdlc3tmbGV4OjE7b3ZlcmZsb3cteTphdXRvO292ZXJmbG93LXg6aGlkZGVuO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW4tcmV2ZXJzZTtnYXA6MTZweDtwYWRkaW5nOjIwcHggNHB4IDEycHg7bWluLWhlaWdodDowO21pbi13aWR0aDowO3Njcm9sbGJhci1ndXR0ZXI6c3RhYmxlO292ZXJzY3JvbGwtYmVoYXZpb3I6Y29udGFpbn0uY2hhdC1sb2FkLW1vcmV7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzo4cHggMH0uY2hhdC1sb2FkLW1vcmUtYnRue2JhY2tncm91bmQ6dmFyKC0tYmctaG92ZXIpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljc1cmVtO3BhZGRpbmc6NnB4IDE2cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgLjJzIGVhc2V9LmNoYXQtbG9hZC1tb3JlLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX1Aa2V5ZnJhbWVzIG1lc3NhZ2VTbGlkZXswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMTZweCkgc2NhbGUoLjk3KTtmaWx0ZXI6Ymx1cig2cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKTtmaWx0ZXI6Ymx1cigwKX19QGtleWZyYW1lcyBtZXNzYWdlU2xpZGVVc2VyezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKDIwcHgpIHRyYW5zbGF0ZVkoOHB4KSBzY2FsZSguOTYpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKDApIHRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fUBrZXlmcmFtZXMgbWVzc2FnZUZsb2F0ezAlLHRve3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfTUwJXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtM3B4KX19LmNoYXQtbWVzc2FnZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO21hcmdpbjo0cHggMDt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdHJhbnNmb3JtIC4ycyB2YXIoLS1lYXNlLW91dC1leHBvKTstLWNoYXQtY2FyZC1tYXgtd2lkdGg6IDcyMHB4fS5jaGF0LW1lc3NhZ2U6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9QG1lZGlhKGhvdmVyOm5vbmUpey5jaGF0LW1lc3NhZ2U6aG92ZXJ7dHJhbnNmb3JtOm5vbmV9LmNoYXQtbWVzc2FnZTpob3ZlciAuY2hhdC1tZXNzYWdlLWJ1YmJsZXtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSl9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnQ6aG92ZXIgLmNoYXQtbWVzc2FnZS1idWJibGV7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1zdWJ0bGUpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKX19LmNoYXQtbWVzc2FnZS51c2Vye2FsaWduLXNlbGY6ZmxleC1lbmR9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnR7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O21heC13aWR0aDoxMDAlO3dpZHRoOjEwMCV9LmNoYXQtbWVzc2FnZS5zeXN0ZW0taW5mb3thbGlnbi1zZWxmOmNlbnRlcjttYXgtd2lkdGg6MTAwJTt3aWR0aDoxMDAlO21hcmdpbjoxMHB4IDA7YW5pbWF0aW9uOm1lc3NhZ2VGbG9hdCAzcyBlYXNlLWluLW91dCBpbmZpbml0ZX0uc3lzdGVtLWluZm8tY2FyZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsIzYzNjZmMTE0LCM2MzY2ZjEwYSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDk5LDEwMiwyNDEsLjIpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtwYWRkaW5nOjEycHggMTZweDtmb250LXNpemU6LjgxMjVyZW07Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpfS5zeXN0ZW0taW5mby1oZWFkZXJ7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOiM2MzY2ZjFmMjttYXJnaW4tYm90dG9tOjhweDtmb250LXNpemU6LjY4NzVyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweH0uc3lzdGVtLWluZm8taGVhZGVyOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjhweDtoZWlnaHQ6OHB4O2JhY2tncm91bmQ6IzYzNjZmMTk5O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpfS5zeXN0ZW0taW5mby1jb250ZW50e2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLXdyYXA6YnJlYWstd29yZDtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodC1iYXNlKTttYXgtaGVpZ2h0OjIwMHB4O292ZXJmbG93LXk6YXV0b30uY2hhdC1tZXNzYWdlLmFuaW1hdGUtaW57YW5pbWF0aW9uOm1lc3NhZ2VTbGlkZSAuNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7d2lsbC1jaGFuZ2U6b3BhY2l0eSx0cmFuc2Zvcm0sZmlsdGVyfS5jaGF0LW1lc3NhZ2UudXNlci5hbmltYXRlLWlue2FuaW1hdGlvbjptZXNzYWdlU2xpZGVVc2VyIC40cyB2YXIoLS1lYXNlLW91dC1iYWNrKX0uY2hhdC1tZXNzYWdlLWF2YXRhcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzowIDJweCA0cHh9LmNoYXQtbWVzc2FnZS1hdmF0YXIuYXNzaXN0YW50e2ZsZXgtZGlyZWN0aW9uOnJvd30uY2hhdC1tZXNzYWdlLWF2YXRhci51c2Vye2ZsZXgtZGlyZWN0aW9uOnJvdy1yZXZlcnNlfS5waXhlbC1hdmF0YXJ7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtmbGV4LXNocmluazowO2JvcmRlci1yYWRpdXM6NnB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtib3gtc2hhZG93OjAgMXB4IDNweCAjMDAwMDAwMjZ9LnBpeGVsLWF2YXRhci1pbWFnZXtkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn0ucGl4ZWwtYXZhdGFyLXN2Z3tkaXNwbGF5OmJsb2NrO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7aW1hZ2UtcmVuZGVyaW5nOnBpeGVsYXRlZH0uYXZhdGFyLW5hbWV7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDNlbTtsaW5lLWhlaWdodDoxfS5jaGF0LW1lc3NhZ2UuYXNzaXN0YW50IC5hdmF0YXItbmFtZXtjb2xvcjp2YXIoLS1hY2NlbnQpfS5jaGF0LW1lc3NhZ2UudXNlciAuYXZhdGFyLW5hbWV7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSl9LmNoYXQtbWVzc2FnZS1idWJibGV7cGFkZGluZzoxMnB4IDE2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2ZvbnQtc2l6ZTouODc1cmVtO2xpbmUtaGVpZ2h0OnZhcigtLWxpbmUtaGVpZ2h0LXJlbGF4ZWQpO3dvcmQtd3JhcDpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkO3doaXRlLXNwYWNlOnByZS13cmFwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKTt0cmFuc2l0aW9uOmJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY2hhdC1tZXNzYWdlOmhvdmVyIC5jaGF0LW1lc3NhZ2UtYnViYmxle2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LW1kKX0uY2hhdC1tZXNzYWdlLnVzZXIgLmNoYXQtbWVzc2FnZS1idWJibGV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKSB2YXIoLS1yYWRpdXMtbGcpIHZhcigtLXJhZGl1cy1zbSkgdmFyKC0tcmFkaXVzLWxnKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDtib3gtc2hhZG93OjAgNHB4IDE2cHggI2M1NjUzZDRkLGluc2V0IDAgMXB4ICNmZmZmZmYyNn0uY2hhdC1tZXNzYWdlLnVzZXJ7bWF4LXdpZHRoOjEwMCV9LmNoYXQtbWVzc2FnZS5hc3Npc3RhbnQgLmNoYXQtbWVzc2FnZS1idWJibGV7YmFja2dyb3VuZDp2YXIoLS1iZy1zdXJmYWNlKTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3BhZGRpbmc6MTRweCAxOHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtd3JhcDpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc20pfS5jaGF0LW1lc3NhZ2UuYXNzaXN0YW50OmhvdmVyIC5jaGF0LW1lc3NhZ2UtYnViYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQtc29mdCk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbWQpfS5jaGF0LW1lc3NhZ2UtY29udGVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7d2lkdGg6MTAwJTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MDtvdmVyZmxvdy14OmhpZGRlbjtmb250LXNpemU6Ljg3NXJlbTtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodC1yZWxheGVkKTt3b3JkLXdyYXA6YnJlYWstd29yZDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LnRoaW5raW5nLWlubGluZSwuY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LmlubGluZS10b29sLC5jaGF0LW1lc3NhZ2UtY29udGVudD4udG9vbC11c2UtY2FyZCwuY2hhdC1tZXNzYWdlLWNvbnRlbnQ+LnRvb2wtZ3JvdXB7bWFyZ2luOjNweCAwfS5jaGF0LW1lc3NhZ2UubXVsdGktYWdlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94fS5jaGF0LW1lc3NhZ2UudXNlci5tdWx0aS1hZ2VudHthbGlnbi1zZWxmOmZsZXgtc3RhcnQ7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLXNlbGY6ZmxleC1zdGFydDt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveH0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudC5zdWJhZ2VudHtwYWRkaW5nLWxlZnQ6MTBweDttYXJnaW4tbGVmdDo2cHg7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1ib3JkZXItc3VidGxlKSk7Ym9yZGVyLXJhZGl1czowIDRweCA0cHggMDt3aWR0aDpjYWxjKDEwMCUgLSA2cHgpO21heC13aWR0aDpjYWxjKDEwMCUgLSA2cHgpfS5jaGF0LW1lc3NhZ2UubXVsdGktYWdlbnQgLmNoYXQtbWVzc2FnZS1zZWdtZW50LnN1YmFnZW50IC5jaGF0LW1lc3NhZ2UtY29udGVudHtvcGFjaXR5Oi45Nn0uY2hhdC1tZXNzYWdlLm11bHRpLWFnZW50IC5jaGF0LW1lc3NhZ2Utc2VnbWVudCAuY2hhdC1tZXNzYWdlLWF2YXRhcntwYWRkaW5nLWJvdHRvbTo0cHh9LmNoYXQtbWVzc2FnZS1hdmF0YXIuc3ViYWdlbnQgLmF2YXRhci1uYW1le2NvbG9yOnZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKX0uc3ViYWdlbnQtcmVwbHl7YmFja2dyb3VuZDojYzU2NTNkMGY7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNiUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yKTtib3JkZXI6MXB4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAyMCUsdHJhbnNwYXJlbnQpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjEwcHggMTRweDttYXJnaW46NHB4IDA7bGluZS1oZWlnaHQ6MS41NTtmb250LXNpemU6Ljg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO2JveC1zaXppbmc6Ym9yZGVyLWJveDt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVufS5zdWJhZ2VudC1yZXBseT46Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5zdWJhZ2VudC1yZXBseT46bGFzdC1jaGlsZHttYXJnaW4tYm90dG9tOjB9LnN1YmFnZW50LXJlcGx5LmVycm9ye2JhY2tncm91bmQ6I2UyNTc0YzE0O2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tZGFuZ2VyLCAjZTI1NzRjKSA4JSx2YXIoLS1iZy1zdXJmYWNlKSk7Ym9yZGVyLWNvbG9yOiNlMjU3NGM1OTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tZGFuZ2VyLCAjZTI1NzRjKSAzNSUsdHJhbnNwYXJlbnQpfS5zdWJhZ2VudC1yZXBseS5wZW5kaW5ne29wYWNpdHk6Ljc7cGFkZGluZzoxNHB4IDE2cHh9LnN1YmFnZW50LXJlcGx5Om5vdCguY29sbGFwc2libGUpe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo2cHh9LnN1YmFnZW50LXJlcGx5IHByZSwuc3ViYWdlbnQtcmVwbHkgY29kZXtmb250LXNpemU6LjgycmVtfS5zdWJhZ2VudC1yZXBseSBwcmV7YmFja2dyb3VuZDojMDAwMDAwMGE7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyLXJhZGl1czo2cHg7b3ZlcmZsb3cteDpoaWRkZW47d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YW55d2hlcmU7bWFyZ2luOjhweCAwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5zdWJhZ2VudC1wYW5lbHttYXJnaW46OHB4IDA7Ym9yZGVyOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMjUlLHRyYW5zcGFyZW50KTtib3JkZXItbGVmdDozcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDU1JSx0cmFuc3BhcmVudCk7Ym9yZGVyLXJhZGl1czoxMHB4O292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAzJSx2YXIoLS1iZy1zdXJmYWNlKSk7Ym94LXNoYWRvdzowIDFweCAycHggIzAwMDAwMDA4fS5zdWJhZ2VudC1wYW5lbC1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6OHB4IDEycHg7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTAlLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXItYm90dG9tOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTYlLHRyYW5zcGFyZW50KTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO2ZvbnQtc2l6ZTouNzhyZW07bGluZS1oZWlnaHQ6MS4zNTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE1cyBlYXNlfS5zdWJhZ2VudC1wYW5lbC1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTQlLHZhcigtLWJnLXN1cmZhY2UpKX0uc3ViYWdlbnQtcGFuZWwtaGVhZGVyOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDU1JSx0cmFuc3BhcmVudCk7b3V0bGluZS1vZmZzZXQ6LTJweH0uc3ViYWdlbnQtcGFuZWwtYXZhdGFye2ZsZXg6MCAwIGF1dG87d2lkdGg6MjJweDtoZWlnaHQ6MjJweDtib3JkZXItcmFkaXVzOjVweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTglLHRyYW5zcGFyZW50KTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zdWJhZ2VudC1wYW5lbC1hdmF0YXIgc3ZnLC5zdWJhZ2VudC1wYW5lbC1hdmF0YXIgaW1ne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7ZGlzcGxheTpibG9ja30uc3ViYWdlbnQtcGFuZWwtYXJyb3d7ZmxleDowIDAgYXV0bztjb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNjUlLHZhcigtLXRleHQtcHJpbWFyeSkpO29wYWNpdHk6Ljg7Zm9udC13ZWlnaHQ6NjAwfS5zdWJhZ2VudC1wYW5lbC1hdHRyaWJ1dGlvbntmbGV4OjEgMSBhdXRvO21pbi13aWR0aDowO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5zdWJhZ2VudC1wYW5lbC1uYW1le2NvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA4OCUsdmFyKC0tdGV4dC1wcmltYXJ5KSk7Zm9udC13ZWlnaHQ6NjAwfS5zdWJhZ2VudC1wYW5lbC10YWd7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luOjAgNnB4O3BhZGRpbmc6MCA2cHg7Zm9udC1zaXplOi42MnJlbTtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW07Y29sb3I6dmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDEyJSx0cmFuc3BhcmVudCk7Ym9yZGVyOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMzAlLHRyYW5zcGFyZW50KTtib3JkZXItcmFkaXVzOjRweDt2ZXJ0aWNhbC1hbGlnbjoxcHg7bGluZS1oZWlnaHQ6MS40O3doaXRlLXNwYWNlOm5vd3JhcH0uc3ViYWdlbnQtcGFuZWwtdGFzay1kZXNje2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OjQwMH0uc3ViYWdlbnQtcGFuZWwtdG9nZ2xle2ZsZXg6MCAwIGF1dG87ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjNweCAxMHB4O2ZvbnQtc2l6ZTouN3JlbTtmb250LXdlaWdodDo1MDA7bGluZS1oZWlnaHQ6MS4zO2NvbG9yOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA3OCUsdmFyKC0tdGV4dC1wcmltYXJ5KSk7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgOCUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlcjoxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDMwJSx0cmFuc3BhcmVudCk7Ym9yZGVyLXJhZGl1czo5OTlweDtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNXMgZWFzZSx0cmFuc2Zvcm0gLjFzIGVhc2V9LnN1YmFnZW50LXBhbmVsLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAxOCUsdmFyKC0tYmctc3VyZmFjZSkpO2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgNDUlLHRyYW5zcGFyZW50KX0uc3ViYWdlbnQtcGFuZWwtdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgxcHgpfS5zdWJhZ2VudC1wYW5lbC10b2dnbGUtaWNvbnt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgdmFyKC0tZWFzZS1vdXQtZXhwbywgY3ViaWMtYmV6aWVyKC4xNiwgMSwgLjMsIDEpKX0uc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD10cnVlXSAuc3ViYWdlbnQtcGFuZWwtdG9nZ2xlLWljb257dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS5zdWJhZ2VudC1wYW5lbC1ib2R5e3BhZGRpbmc6MTBweCAxNHB4O292ZXJmbG93LXk6YXV0bztvdmVyZmxvdy14OmhpZGRlbjttaW4td2lkdGg6MDttYXgtd2lkdGg6MTAwJTt0cmFuc2l0aW9uOm1heC1oZWlnaHQgLjI4cyB2YXIoLS1lYXNlLW91dC1leHBvLCBjdWJpYy1iZXppZXIoLjE2LCAxLCAuMywgMSkpO3Njcm9sbGJhci1ndXR0ZXI6c3RhYmxlfS5zdWJhZ2VudC1wYW5lbFtkYXRhLWV4cGFuZGVkPWZhbHNlXSAuc3ViYWdlbnQtcGFuZWwtYm9keXttYXgtaGVpZ2h0OjIyZW19LnN1YmFnZW50LXBhbmVsW2RhdGEtZXhwYW5kZWQ9dHJ1ZV0gLnN1YmFnZW50LXBhbmVsLWJvZHl7bWF4LWhlaWdodDo3MHZofS5zdWJhZ2VudC1wYW5lbC1ib2R5PjpmaXJzdC1jaGlsZHttYXJnaW4tdG9wOjB9LnN1YmFnZW50LXBhbmVsLWJvZHk+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5zdWJhZ2VudC1wYW5lbC1ib2R5IC50b29sLXVzZS1jYXJkLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC50b29sLWdyb3VwLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC5pbmxpbmUtdG9vbCwuc3ViYWdlbnQtcGFuZWwtYm9keSAuaW5saW5lLXRlcm1pbmFsLC5zdWJhZ2VudC1wYW5lbC1ib2R5IC5pbmxpbmUtZGlmZnttYXJnaW46NHB4IDB9LnN1YmFnZW50LXBhbmVsLWJvZHkgLm1hcmtkb3duLWNvbnRlbnR7Zm9udC1zaXplOi44NzVyZW19LnN1YmFnZW50LXBhbmVsLWJvZHk6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjdweDtoZWlnaHQ6N3B4fS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSAzMiUsdHJhbnNwYXJlbnQpO2JvcmRlci1yYWRpdXM6NHB4fS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA1MCUsdHJhbnNwYXJlbnQpfS5zdWJhZ2VudC1wYW5lbC1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5zdWJhZ2VudC1wYW5lbC1mb290ZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjZweCAxMnB4O2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDYlLHZhcigtLWJnLXN1cmZhY2UpKTtib3JkZXItdG9wOjFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYix2YXIoLS1hZ2VudC1jb2xvciwgdmFyKC0tYWNjZW50KSkgMTQlLHRyYW5zcGFyZW50KTtmb250LXNpemU6LjdyZW19LnN1YmFnZW50LXBhbmVsLWZvb3Rlci1oaW50e2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2xldHRlci1zcGFjaW5nOi4wNGVtO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcH0uc3ViYWdlbnQtcmVwbHkuY29sbGFwc2libGV7cGFkZGluZzowO292ZXJmbG93OmhpZGRlbn0uc3ViYWdlbnQtcmVwbHkuZmluYWx7bWFyZ2luOjZweCAwIDA7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyLXJhZGl1czo4cHg7Ym9yZGVyLWxlZnQ6M3B4IHNvbGlkIGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFnZW50LWNvbG9yLCB2YXIoLS1hY2NlbnQpKSA2MCUsdHJhbnNwYXJlbnQpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDUlLHZhcigtLWJnLXN1cmZhY2UpKX0uc3ViYWdlbnQtcmVwbHkuZmluYWwuZXJyb3J7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tZGFuZ2VyLCAjZTI1NzRjKTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLWRhbmdlciwgI2UyNTc0YykgNSUsdmFyKC0tYmctc3VyZmFjZSkpfS5zdWJhZ2VudC1yZXBseS1tYXJrZXJ7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDttYXJnaW4tYm90dG9tOjRweDtmb250LXNpemU6LjY4cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWdlbnQtY29sb3IsIHZhcigtLWFjY2VudCkpIDc4JSx2YXIoLS10ZXh0LXByaW1hcnkpKX0uc3ViYWdlbnQtcmVwbHktbWFya2VyLmVycm9ye2NvbG9yOnZhcigtLWRhbmdlciwgI2UyNTc0Yyl9LnN1YmFnZW50LXJlcGx5LW1hcmtlci5wZW5kaW5ne2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtdHJhbnNmb3JtOm5vbmU7bGV0dGVyLXNwYWNpbmc6MDtmb250LXdlaWdodDo1MDB9LnN1YmFnZW50LXJlcGx5LW1hcmtlci1pY29ue2ZvbnQtd2VpZ2h0OjcwMH0uc3ViYWdlbnQtcmVwbHkuZmluYWwgLnN1YmFnZW50LXJlcGx5LWNvbnRlbnQ+OmZpcnN0LWNoaWxke21hcmdpbi10b3A6MH0uc3ViYWdlbnQtcmVwbHkuZmluYWwgLnN1YmFnZW50LXJlcGx5LWNvbnRlbnQ+Omxhc3QtY2hpbGR7bWFyZ2luLWJvdHRvbTowfS5lbXB0eS1tZXNzYWdlIC5lbXB0eS1tZXNzYWdlLWhpbnR7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Zm9udC1zdHlsZTppdGFsaWM7Zm9udC1zaXplOi44MTI1cmVtO29wYWNpdHk6Ljd9LnVua25vd24tYmxvY2t7bWFyZ2luOjRweCAwO2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtiYWNrZ3JvdW5kOmNvbG9yLW1peChpbiBzcmdiLHZhcigtLXRleHQtbXV0ZWQpIDYlLHRyYW5zcGFyZW50KTtmb250LXNpemU6Ljc1cmVtO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS51bmtub3duLWJsb2NrOmhvdmVye2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tdGV4dC1tdXRlZCkgMTAlLHRyYW5zcGFyZW50KX0udW5rbm93bi1ibG9jay1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6NnB4IDEwcHg7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS51bmtub3duLWJsb2NrLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCk7Y29sb3I6dmFyKC0tYmctc3VyZmFjZSk7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjYwMH0udW5rbm93bi1ibG9jay1sYWJlbHtmbGV4OjE7Zm9udC13ZWlnaHQ6NTAwfS51bmtub3duLWJsb2NrLXRvZ2dsZXtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtmb250LXNpemU6LjdyZW07dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udW5rbm93bi1ibG9jay5jb2xsYXBzZWQgLnVua25vd24tYmxvY2stdG9nZ2xle3RyYW5zZm9ybTpyb3RhdGUoLTkwZGVnKX0udW5rbm93bi1ibG9jay1ib2R5e21hcmdpbjowO3BhZGRpbmc6OHB4IDEwcHggMTBweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtaGVpZ2h0OjI0MHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztib3JkZXItdG9wOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym94LXNpemluZzpib3JkZXItYm94fS51bmtub3duLWJsb2NrLmNvbGxhcHNlZCAudW5rbm93bi1ibG9jay1ib2R5e2Rpc3BsYXk6bm9uZX0udG9vbC11c2UtY2FyZFtkYXRhLXRydW5jYXRlZD10cnVlXSAudG9vbC11c2UtbmFtZTphZnRlciwuaW5saW5lLXRvb2xbZGF0YS10cnVuY2F0ZWQ9dHJ1ZV0gLmlubGluZS10b29sLXRpdGxlOmFmdGVye2NvbnRlbnQ6Ilw1ZGYyXDYyMmFcNjVhZCI7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWFyZ2luLWxlZnQ6NnB4O3BhZGRpbmc6MXB4IDZweDtmb250LXNpemU6LjZyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtaW52ZXJzZSwgI2ZmZik7YmFja2dyb3VuZDp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtib3JkZXItcmFkaXVzOjk5OXB4O2xldHRlci1zcGFjaW5nOi4wMmVtO3ZlcnRpY2FsLWFsaWduOjFweDtvcGFjaXR5Oi44NX0uY2hhdC1tZXNzYWdlLnRoaW5raW5ne2FsaWduLXNlbGY6ZmxleC1zdGFydDttYXgtd2lkdGg6MTAwJTttYXJnaW46NHB4IDB9LmNoYXQtbWVzc2FnZS5wcm9tcHR7YWxpZ24tc2VsZjpjZW50ZXI7bWF4LXdpZHRoOjEwMCU7bWFyZ2luOjRweCAwfS5wcm9tcHQtY2FyZHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtjdXJzb3I6ZGVmYXVsdDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5wcm9tcHQtaWNvbntmb250LXNpemU6Ljg3NXJlbX0ucHJvbXB0LWNvbnRlbnR7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXN0eWxlOml0YWxpY30ucHJvbXB0LXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjojYzU2NTNkY2M7Zm9udC13ZWlnaHQ6NTAwfS50eXBpbmctaW5kaWNhdG9ye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtwYWRkaW5nOjZweCAwfS50eXBpbmctaW5kaWNhdG9yIHNwYW57ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6N3B4O2hlaWdodDo3cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtc29mdCk7YW5pbWF0aW9uOnR5cGluZ0JvdW5jZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfS50eXBpbmctaW5kaWNhdG9yIHNwYW46bnRoLWNoaWxkKDIpe2FuaW1hdGlvbi1kZWxheTouMTVzfS50eXBpbmctaW5kaWNhdG9yIHNwYW46bnRoLWNoaWxkKDMpe2FuaW1hdGlvbi1kZWxheTouM3N9QGtleWZyYW1lcyB0eXBpbmdCb3VuY2V7MCUsNjAlLHRve29wYWNpdHk6LjM1O3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfTMwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCl9fS50b29sLXVzZS1jYXJke21hcmdpbjo0cHggMDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtvdmVyZmxvdzpoaWRkZW47d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWUwLCNmZmY2ZWFiOCk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4yMnMgZWFzZSxib3gtc2hhZG93IC4yMnMgZWFzZSx0cmFuc2Zvcm0gLjIycyBlYXNlfS50b29sLXVzZS1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjojNGY3YTU4NGQ7Ym94LXNoYWRvdzowIDNweCAxMnB4ICM0ZjdhNTgxNH0udG9vbC11c2UtY2FyZC5sb2FkaW5ne2JvcmRlci1jb2xvcjojYTk2YTJmNGQ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmY0ZTJlMCwjZmZmMWRhYjgpfS50b29sLXVzZS1jYXJkLnN1Y2Nlc3N7Ym9yZGVyLWNvbG9yOiM0ZjdhNTg1Mn0udG9vbC11c2UtY2FyZC5lcnJvcntib3JkZXItY29sb3I6I2IyNGY0NTUyO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmNmMGVlZTAsI2ZjZWJlOWI4KX0udG9vbC11c2UtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo5cHggMTRweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouODEyNXJlbTt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7dG91Y2gtYWN0aW9uOm1hbmlwdWxhdGlvbjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlO21pbi1oZWlnaHQ6MzhweDtmbGV4LXdyYXA6bm93cmFwfS50b29sLXVzZS1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGF9LnRvb2wtdXNlLWhlYWRlcjphY3RpdmV7YmFja2dyb3VuZDojYzU2NTNkMTJ9LnRvb2wtdXNlLWNhcmQubG9hZGluZyAudG9vbC11c2UtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2E5NmEyZjBmfS50b29sLXVzZS1jYXJkLnN1Y2Nlc3MgLnRvb2wtdXNlLWhlYWRlcjpob3ZlcntiYWNrZ3JvdW5kOiM0ZjdhNTgwZn0udG9vbC11c2UtY2FyZC5lcnJvciAudG9vbC11c2UtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTBmfS50b29sLXVzZS1pY29ue2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtd2VpZ2h0OjcwMDtmbGV4LXNocmluazowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOjIycHg7aGVpZ2h0OjIycHg7Ym9yZGVyLXJhZGl1czo2cHg7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtsZXR0ZXItc3BhY2luZzotLjAyZW19LnRvb2wtdXNlLWNhcmQubG9hZGluZyAudG9vbC11c2UtaWNvbntiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmctbXV0ZWQpO2NvbG9yOnZhcigtLXdhcm5pbmcpfS50b29sLXVzZS1jYXJkLmVycm9yIC50b29sLXVzZS1pY29ue2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtjb2xvcjp2YXIoLS1kYW5nZXIpfS50b29sLXVzZS1zcGlubmVye2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS13YXJuaW5nLW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnZhcigtLXdhcm5pbmcpO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLXNwaW4gLjhzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHRvb2wtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fS50b29sLXVzZS1uYW1le2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZsZXg6MCAxIGF1dG87bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2xldHRlci1zcGFjaW5nOi0uMDA1ZW19LnRvb2wtdXNlLWZpbGV7Zm9udC1zaXplOi43NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO21heC13aWR0aDozMjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7ZmxleDowIDEgYXV0bzttaW4td2lkdGg6MH0udG9vbC11c2Utc3VtbWFyeXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmbGV4OjAgMSBhdXRvO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDttYXJnaW4tbGVmdDoycHh9LnRvb2wtdXNlLXRvZ2dsZXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLXNwcmluZyksY29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtvcGFjaXR5Oi42fS50b29sLXVzZS1jYXJkOmhvdmVyIC50b29sLXVzZS10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO29wYWNpdHk6MX0udG9vbC11c2UtY2FyZC5jb2xsYXBzZWQgLnRvb2wtdXNlLXRvZ2dsZXt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LnRvb2wtdXNlLWJvZHl7cGFkZGluZzoxMnB4IDE0cHg7YmFja2dyb3VuZDojZmZmZGY4YTY7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTttYXgtaGVpZ2h0OjYwMHB4O292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOm1heC1oZWlnaHQgLjM1cyB2YXIoLS1lYXNlLW91dC1leHBvKSxwYWRkaW5nIC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyksb3BhY2l0eSAuMjVzIGVhc2UsdHJhbnNmb3JtIC4zNXMgdmFyKC0tZWFzZS1vdXQtZXhwbyk7b3BhY2l0eToxO3RyYW5zZm9ybS1vcmlnaW46dG9wfS50b29sLXVzZS1jYXJkLmNvbGxhcHNlZCAudG9vbC11c2UtYm9keXttYXgtaGVpZ2h0OjA7cGFkZGluZy10b3A6MDtwYWRkaW5nLWJvdHRvbTowO29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGVZKC45NSl9LnRvb2wtdXNlLWNvbnRlbnR7bWFyZ2luOjA7Zm9udC1zaXplOi43NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstd29yZDttYXgtaGVpZ2h0OjQwMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztsaW5lLWhlaWdodDoxLjU1fS50b29sLXVzZS1yZXN1bHR7bWFyZ2luLXRvcDoxMHB4O3BhZGRpbmctdG9wOjEwcHg7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4xNCl9LnRvb2wtdXNlLXJlc3VsdC1jb250ZW50e21hcmdpbjowO2ZvbnQtc2l6ZTouNzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbDttYXgtaGVpZ2h0OjMyMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztsaW5lLWhlaWdodDoxLjU1O2JhY2tncm91bmQ6IzdkNWIzOTA5O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXhzKTtwYWRkaW5nOjhweCAxMHB4O2JveC1zaXppbmc6Ym9yZGVyLWJveH0udG9vbC11c2UtcmVzdWx0LWVtcHR5e2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zdHlsZTppdGFsaWN9LnRvb2wtdXNlLW1ldGF7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO21hcmdpbi1ib3R0b206OHB4O3BhZGRpbmctYm90dG9tOjhweDtib3JkZXItYm90dG9tOjFweCBkYXNoZWQgcmdiYSgxMjUsOTEsNTcsLjE0KX0udG9vbC11c2UtbWV0YS1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwfS50b29sLXVzZS1jYXJkLmFzay11c2Vye2JvcmRlci1jb2xvcjojYzU2NTNkNGQ7YmFja2dyb3VuZDojYzU2NTNkMGF9LnRvb2wtdXNlLWNhcmQuYXNrLXVzZXIgLnRvb2wtdXNlLWhlYWRlcntiYWNrZ3JvdW5kOiNjNTY1M2QxNH0uYXNrLXVzZXItYm9keXtwYWRkaW5nOjEwcHggMTJweH0uYXNrLXVzZXItcXVlc3Rpb24tZ3JvdXB7bWFyZ2luLWJvdHRvbToxMHB4fS5hc2stdXNlci1xdWVzdGlvbi1ncm91cDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0uYXNrLXVzZXItdGl0bGV7Zm9udC1zaXplOi44NzVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bWFyZ2luLWJvdHRvbToxMHB4fS5hc2stdXNlci1vcHRpb25ze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweH0uYXNrLXVzZXItb3B0aW9ue2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo4cHggMTJweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dGV4dC1hbGlnbjpsZWZ0fS5hc2stdXNlci1vcHRpb246aG92ZXI6bm90KDpkaXNhYmxlZCl7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDojYzU2NTNkMGZ9LmFzay11c2VyLW9wdGlvbjpkaXNhYmxlZHtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZH0uYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVke2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2M1NjUzZDJlO2JveC1zaGFkb3c6MCAwIDAgMXB4ICNjNTY1M2Q1OSBpbnNldH0udG9vbC11c2UtY2FyZC5hc2stdXNlci5hc2stdXNlci1hbnN3ZXJlZHtib3JkZXItdG9wOjJweCBzb2xpZCB2YXIoLS1zdWNjZXNzLCAjNGNhZjUwKX0uYXNrLXVzZXItb3B0aW9uLmFzay11c2VyLW9wdGlvbi1jaG9zZW57YmFja2dyb3VuZDojYzU2NTNkMjk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LmFzay11c2VyLWluZGljYXRvcnt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmFzay11c2VyLW9wdGlvbnNbZGF0YS1tdWx0aS1zZWxlY3Q9dHJ1ZV0gLmFzay11c2VyLWluZGljYXRvcntib3JkZXItcmFkaXVzOjNweH0uYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVkIC5hc2stdXNlci1pbmRpY2F0b3J7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpfS5hc2stdXNlci1vcHRpb24uc2VsZWN0ZWQgLmFzay11c2VyLWluZGljYXRvcjphZnRlcntjb250ZW50OiIiO3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjUwJX0uYXNrLXVzZXItb3B0aW9uc1tkYXRhLW11bHRpLXNlbGVjdD10cnVlXSAuYXNrLXVzZXItb3B0aW9uLnNlbGVjdGVkIC5hc2stdXNlci1pbmRpY2F0b3I6YWZ0ZXJ7d2lkdGg6NHB4O2hlaWdodDo4cHg7Ym9yZGVyOnNvbGlkIHdoaXRlO2JvcmRlci13aWR0aDowIDJweCAycHggMDtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDpub25lO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpO21hcmdpbi1ib3R0b206MnB4fS5hc2stdXNlci1vcHRpb24tY29udGVudHtmbGV4OjE7bWluLXdpZHRoOjB9LmFzay11c2VyLW9wdGlvbi1sYWJlbHtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmFzay11c2VyLW9wdGlvbi1kZXNje2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO21hcmdpbi10b3A6MnB4O2xpbmUtaGVpZ2h0OjEuNH0uYXNrLXVzZXItYWN0aW9uc3ttYXJnaW4tdG9wOjEwcHg7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZH0uYXNrLXVzZXItc3VibWl0e3BhZGRpbmc6NnB4IDE2cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1hY2NlbnQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmFzay11c2VyLXN1Ym1pdDpob3Zlcjpub3QoOmRpc2FibGVkKXtmaWx0ZXI6YnJpZ2h0bmVzcygxLjEpfS5hc2stdXNlci1zdWJtaXQ6ZGlzYWJsZWR7b3BhY2l0eTouNDtjdXJzb3I6bm90LWFsbG93ZWR9LmFzay11c2VyLXN1Ym1pdC5hc2stdXNlci1zdWJtaXR0ZWR7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItZGVmYXVsdCk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cG9pbnRlci1ldmVudHM6bm9uZX0uYXNrLXVzZXItYW5zd2VyZWQgLmFzay11c2VyLW9wdGlvbntjdXJzb3I6ZGVmYXVsdDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjZ9LmFzay11c2VyLWFuc3dlcmVkIC5hc2stdXNlci1vcHRpb24uYXNrLXVzZXItb3B0aW9uLWNob3NlbntvcGFjaXR5OjE7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpO2JhY2tncm91bmQ6IzRmN2E1ODBmfS5hc2stdXNlci1hbnN3ZXJlZCAuYXNrLXVzZXItb3B0aW9uLmFzay11c2VyLW9wdGlvbi1jaG9zZW4gLmFzay11c2VyLWluZGljYXRvcntib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyk7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKX0uYXNrLXVzZXItb3B0aW9uLXJlYWRvbmx5e3BvaW50ZXItZXZlbnRzOm5vbmV9b3ZlcmZsb3cteTogYXV0bzsgLnRoaW5raW5nLWlubGluZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7Z2FwOjVweDttYXJnaW46MnB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjNweCA4cHg7Ym9yZGVyLXJhZGl1czo2cHg7YmFja2dyb3VuZDojOGE2Y2IyMGE7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjQ7Y29sb3I6IzhhNmNiMjhjO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7d29yZC1icmVhazpicmVhay13b3JkO292ZXJmbG93LXdyYXA6YnJlYWstd29yZH0udGhpbmtpbmctaW5saW5lOmhvdmVye2JhY2tncm91bmQ6IzhhNmNiMjE0O2NvbG9yOiM4YTZjYjJjY30udGhpbmtpbmctaW5saW5lLmV4cGFuZGVke2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt3aGl0ZS1zcGFjZTpwcmUtd3JhcDtsaW5lLWhlaWdodDoxLjY7bWF4LWhlaWdodDozMDBweDtvdmVyZmxvdy15OmF1dG99LnRoaW5raW5nLWlubGluZS1pY29ue2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42MjVyZW19LnRoaW5raW5nLWlubGluZS1wcmV2aWV3e2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnRoaW5raW5nLWlubGluZS5leHBhbmRlZCAudGhpbmtpbmctaW5saW5lLXByZXZpZXd7d2hpdGUtc3BhY2U6cHJlLXdyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9LnRoaW5raW5nLWlubGluZS1hY3Rpb257ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjYyNXJlbTtjb2xvcjojOGE2Y2IyNjY7cGFkZGluZzowIDRweDtib3JkZXItcmFkaXVzOjNweDtiYWNrZ3JvdW5kOiM4YTZjYjIxNDttYXJnaW4tbGVmdDphdXRvfS50aGlua2luZy1pbmxpbmU6aG92ZXIgLnRoaW5raW5nLWlubGluZS1hY3Rpb257Y29sb3I6IzhhNmNiMmIzfS50aGlua2luZy1pbmxpbmUudGhpbmtpbmctcHR5e2JhY2tncm91bmQ6IzhhNmNiMjA4fS50aGlua2luZy1zdHJlYW1pbmd7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjVweDttYXJnaW46MnB4IDA7cGFkZGluZzozcHggOHB4O2JvcmRlci1yYWRpdXM6NnB4O2JhY2tncm91bmQ6IzhhNmNiMjBhO2N1cnNvcjpkZWZhdWx0O2ZvbnQtc2l6ZTouNzVyZW07bGluZS1oZWlnaHQ6MS40O2NvbG9yOiM4YTZjYjI4Y30udGhpbmtpbmctc3RyZWFtaW5nLWlubmVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo1cHg7d2lkdGg6MTAwJX0udGhpbmtpbmctc3RyZWFtaW5nLWljb257Zm9udC1zaXplOi42MjVyZW07ZmxleC1zaHJpbms6MDttYXJnaW4tdG9wOjFweH0udGhpbmtpbmctc3RyZWFtaW5nLXRleHR7ZmxleDoxO21pbi13aWR0aDowO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjU7Y29sb3I6IzhhNmNiMmNjO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDttYXgtaGVpZ2h0OjQuNWVtO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6cmdiYSgxMzgsMTA4LDE3OCwuMykgdHJhbnNwYXJlbnR9LnRoaW5raW5nLXN0cmVhbWluZy10ZXh0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo0cHh9LnRoaW5raW5nLXN0cmVhbWluZy10ZXh0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM4YTZjYjI0ZDtib3JkZXItcmFkaXVzOjJweH0udG9vbC1ncm91cHttYXJnaW46NHB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWQ5LCNmZmY4ZWViMyk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDA4O292ZXJmbG93OmhpZGRlbjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgZWFzZX0udG9vbC1ncm91cDpob3Zlcntib3JkZXItY29sb3I6IzdkNWIzOTJlO2JveC1zaGFkb3c6MCAycHggOHB4ICM1OTNhMjAwZn0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1wZW5kaW5nXXtib3JkZXItY29sb3I6I2E5NmEyZjM4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmNGUyZDksI2ZmZjFkYWIzKX0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1lcnJvcl17Ym9yZGVyLWNvbG9yOiNiMjRmNDU0NztiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZjZjBlZWQ5LCNmY2VjZWFiMyl9LnRvb2wtZ3JvdXAtc3VtbWFyeXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7cGFkZGluZzo4cHggMTJweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2V9LnRvb2wtZ3JvdXAtc3VtbWFyeTpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QwYX0udG9vbC1ncm91cC1zdGF0dXN7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2JvcmRlci1yYWRpdXM6NTAlO2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MTtmbGV4LXNocmluazowO2xldHRlci1zcGFjaW5nOjB9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9ZG9uZV0gLnRvb2wtZ3JvdXAtc3RhdHVze2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnRvb2wtZ3JvdXBbZGF0YS1zdGF0dXM9ZXJyb3JdIC50b29sLWdyb3VwLXN0YXR1c3tiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0udG9vbC1ncm91cFtkYXRhLXN0YXR1cz1wZW5kaW5nXSAudG9vbC1ncm91cC1zdGF0dXN7YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nLW11dGVkKTtjb2xvcjp2YXIoLS13YXJuaW5nKTthbmltYXRpb246dG9vbC1ncm91cC1wdWxzZSAxLjZzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgdG9vbC1ncm91cC1wdWxzZXswJSx0b3tvcGFjaXR5OjF9NTAle29wYWNpdHk6LjU1fX0udG9vbC1ncm91cC10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0udG9vbC1ncm91cC1jb3VudHtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtwYWRkaW5nOjJweCA4cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7YmFja2dyb3VuZDojN2Q1YjM5MTI7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS50b29sLWdyb3VwLWNoZXZyb257ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMjVzIHZhcigtLWVhc2Utb3V0LWV4cG8pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO29wYWNpdHk6LjZ9LnRvb2wtZ3JvdXA6aG92ZXIgLnRvb2wtZ3JvdXAtY2hldnJvbntvcGFjaXR5OjF9LnRvb2wtZ3JvdXBbZGF0YS1leHBhbmRlZD10cnVlXSAudG9vbC1ncm91cC1jaGV2cm9ue3RyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKX0udG9vbC1ncm91cC1ib2R5e2Rpc3BsYXk6bm9uZTtwYWRkaW5nOjRweCA4cHggOHB4IDE4cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA2KTtib3JkZXItbGVmdDoycHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtiYWNrZ3JvdW5kOiNmZmZkZjg4Y30udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbHttYXJnaW46MH0udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbCsuaW5saW5lLXRvb2x7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHJnYmEoMTI1LDkxLDU3LC4wNil9LnRvb2wtZ3JvdXBbZGF0YS1leHBhbmRlZD10cnVlXSAudG9vbC1ncm91cC1ib2R5e2Rpc3BsYXk6YmxvY2s7YW5pbWF0aW9uOnRvb2wtZ3JvdXAtcmV2ZWFsIC4yMnMgdmFyKC0tZWFzZS1vdXQtZXhwbyl9QGtleWZyYW1lcyB0b29sLWdyb3VwLXJldmVhbHswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX0uaW5saW5lLXRvb2x7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjttYXJnaW46MXB4IDA7d2lkdGg6MTAwJTttYXgtd2lkdGg6dmFyKC0tY2hhdC1jYXJkLW1heC13aWR0aCwgNzIwcHgpO21pbi13aWR0aDowO2JveC1zaXppbmc6Ym9yZGVyLWJveDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZX0udG9vbC1ncm91cC1ib2R5Pi5pbmxpbmUtdG9vbHttYXgtd2lkdGg6MTAwJX0uaW5saW5lLXRvb2wtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjVweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7bGluZS1oZWlnaHQ6MS40NTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2V9LmlubGluZS10b29sOmhvdmVyIC5pbmxpbmUtdG9vbC1yb3d7YmFja2dyb3VuZDojYzU2NTNkMGY7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uaW5saW5lLXRvb2wtc3RhdHVze2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MTRweDtoZWlnaHQ6MTRweDtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7bGluZS1oZWlnaHQ6MX0uaW5saW5lLXRvb2xbZGF0YS1zdGF0dXM9cGVuZGluZ10gLmlubGluZS10b29sLXN0YXR1c3tjb2xvcjp2YXIoLS13YXJuaW5nKX0uaW5saW5lLXRvb2xbZGF0YS1zdGF0dXM9ZXJyb3JdIC5pbmxpbmUtdG9vbC1zdGF0dXMsLmlubGluZS10b29sLWVycm9yLWlubGluZSAuaW5saW5lLXRvb2wtc3RhdHVze2NvbG9yOnZhcigtLWRhbmdlcil9LmlubGluZS10b29sLWljb257ZmxleC1zaHJpbms6MDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtvcGFjaXR5Oi44NX0uaW5saW5lLXRvb2w6aG92ZXIgLmlubGluZS10b29sLWljb257Y29sb3I6dmFyKC0tYWNjZW50KTtvcGFjaXR5OjF9LmlubGluZS10b29sLXRpdGxle2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouNzVyZW19LmlubGluZS10b29sOmhvdmVyIC5pbmxpbmUtdG9vbC10aXRsZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5pbmxpbmUtdG9vbC1tZXRhe2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21heC13aWR0aDoyMjBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uaW5saW5lLXRvb2wtZXhwYW5kZWR7ZGlzcGxheTpub25lO3BhZGRpbmc6MCAxMHB4IDhweH0uaW5saW5lLXRvb2wtb3BlbiAuaW5saW5lLXRvb2wtZXhwYW5kZWR7ZGlzcGxheTpibG9jazthbmltYXRpb246dG9vbC1ncm91cC1yZXZlYWwgLjJzIHZhcigtLWVhc2Utb3V0LWV4cG8pfS5pbmxpbmUtdG9vbC1yZXN1bHR7YmFja2dyb3VuZDojN2Q1YjM5MGE7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDcpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXhzKTtwYWRkaW5nOjEwcHggMTJweDttYXJnaW4tdG9wOjZweDttYXgtaGVpZ2h0OjMyMHB4O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6aGlkZGVuO292ZXJmbG93LXk6YXV0bztzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6cmdiYSgxMjUsOTEsNTcsLjIpIHRyYW5zcGFyZW50fS5pbmxpbmUtdG9vbC1yZXN1bHQ6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjZweH0uaW5saW5lLXRvb2wtcmVzdWx0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM3ZDViMzkzMztib3JkZXItcmFkaXVzOjNweH0uaW5saW5lLXRvb2wtcmVzdWx0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM3ZDViMzk1Mn0uaW5saW5lLXRvb2wtcmVzdWx0LXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2xpbmUtaGVpZ2h0OjEuNTU7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7bWFyZ2luOjB9LmlubGluZS10b29sLWVycm9yLWlubGluZXtib3JkZXItbGVmdDoycHggc29saWQgdmFyKC0tZGFuZ2VyKTtwYWRkaW5nLWxlZnQ6MnB4O21hcmdpbi1sZWZ0Oi0ycHh9LmlubGluZS10b29sLWVycm9yLWlubGluZSAuaW5saW5lLXRvb2wtcm93e2NvbG9yOnZhcigtLWRhbmdlcil9LmlubGluZS10b29sLXJlc3VsdC5pbmxpbmUtdG9vbC1lcnJvcntjb2xvcjp2YXIoLS1kYW5nZXIpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Ym9yZGVyLWNvbG9yOiNiMjRmNDUyZX0uaW5saW5lLXRvb2wtbG9hZGluZ3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXdhcm5pbmcpO2ZvbnQtc3R5bGU6aXRhbGljO3BhZGRpbmc6NnB4IDA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweH0uaW5saW5lLXRvb2wtbG9hZGluZzpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDoxMHB4O2hlaWdodDoxMHB4O2JvcmRlcjoxLjVweCBzb2xpZCB2YXIoLS13YXJuaW5nLW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnZhcigtLXdhcm5pbmcpO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLWNvbnRlbnQtc3BpbiAuN3MgbGluZWFyIGluZmluaXRlfS5pbmxpbmUtdG9vbC1lbXB0eXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljfS50b29sLWNvbnRlbnQtbG9hZGluZ3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljO3BhZGRpbmc6OHB4IDB9LnRvb2wtY29udGVudC1sb2FkaW5nOmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjEycHg7aGVpZ2h0OjEycHg7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS10ZXh0LW11dGVkKTtib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjp0b29sLWNvbnRlbnQtc3BpbiAuNnMgbGluZWFyIGluZmluaXRlO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTttYXJnaW4tcmlnaHQ6NnB4fUBrZXlmcmFtZXMgdG9vbC1jb250ZW50LXNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0udG9vbC1jb250ZW50LWVycm9ye2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tZXJyb3IpO3BhZGRpbmc6OHB4IDA7Y3Vyc29yOnBvaW50ZXJ9LnRvb2wtY29udGVudC1lcnJvcjpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS5pbmxpbmUtdGVybWluYWx7bWFyZ2luOjRweCAwO3dpZHRoOjEwMCU7bWF4LXdpZHRoOnZhcigtLWNoYXQtY2FyZC1tYXgtd2lkdGgsIDcyMHB4KTttaW4td2lkdGg6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE1LDEyLDksLjYpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOiMxZjFiMTc7Ym94LXNoYWRvdzowIDFweCAjZmZmZmZmMGEgaW5zZXQsMCAycHggMTJweCAjMGYwYzA5MmU7b3ZlcmZsb3c6aGlkZGVuO3RyYW5zaXRpb246Ym94LXNoYWRvdyAuMjJzIGVhc2UsdHJhbnNmb3JtIC4yMnMgZWFzZSxib3JkZXItY29sb3IgLjIycyBlYXNlfS5pbmxpbmUtdGVybWluYWw6aG92ZXJ7Ym94LXNoYWRvdzowIDFweCAjZmZmZmZmMGQgaW5zZXQsMCA0cHggMThweCAjMGYwYzA5M2Q7Ym9yZGVyLWNvbG9yOiNmZmZmZmYxYX0udGVybS1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjhweCAxNHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmZmZmMGEsI2ZmZmZmZjA0KSwjMDAwMDAwMmU7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDQpO2ZvbnQtc2l6ZTouNzVyZW07Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTtwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0udGVybS1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmYwZiwjZmZmZmZmMDYpLCMwMDAwMDAyZX0udGVybS1zdGF0dXMtZG90e3dpZHRoOjlweDtoZWlnaHQ6OXB4O2JvcmRlci1yYWRpdXM6NTAlO2ZsZXgtc2hyaW5rOjA7Ym94LXNoYWRvdzowIDAgMCAxcHggIzAwMDAwMDQwIGluc2V0fS50ZXJtLXN0YXR1cy1kb3QudGVybS1zdWNjZXNze2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAzNSUgMzAlLCNiNmYwYzQsIzZlZTA5YSwjM2FhNzY1KTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwIDZweCAjNmVlMDlhNTl9LnRlcm0tc3RhdHVzLWRvdC50ZXJtLWVycm9ye2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAzNSUgMzAlLCNmZmI1YjksI2YwNzE3OCwjYjUzYjQxKTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwIDZweCAjZjA3MTc4NTl9LnRlcm0tc3RhdHVzLWRvdC50ZXJtLXdhcm57YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDM1JSAzMCUsI2ZmZDA3YSwjZjBhNTAwLCNhZDc0MDApO2JveC1zaGFkb3c6MCAwIDAgMXB4ICMwMDAwMDA0MCBpbnNldCwwIDAgNnB4ICNmMGE1MDA1OX0udGVybS1zdGF0dXMtZG90LnRlcm0tcnVubmluZ3tiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMzUlIDMwJSwjZDFkNWRiLCM5Y2EzYWYsIzRiNTU2Myk7YW5pbWF0aW9uOnRlcm0tcHVsc2UgMXMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB0ZXJtLXB1bHNlezAlLHRve29wYWNpdHk6MTtib3gtc2hhZG93OjAgMCAwIDFweCAjMDAwMDAwNDAgaW5zZXQsMCAwICM5Y2EzYWYwMH01MCV7b3BhY2l0eTouNTU7Ym94LXNoYWRvdzowIDAgMCAxcHggIzAwMDAwMDQwIGluc2V0LDAgMCA4cHggIzljYTNhZjU5fX0udGVybS1jbWQtcHJldmlld3tmbGV4OjE7bWluLXdpZHRoOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6Ljc1cmVtO2NvbG9yOiNlOGRjYzhjNztvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0udGVybS1jbWQtcHJldmlldyAudGVybS1wcm9tcHR7Y29sb3I6IzZlZTA5YTtmb250LXdlaWdodDo2MDA7bWFyZ2luLXJpZ2h0OjZweDtmb250LXNpemU6Ljc1cmVtO29wYWNpdHk6Ljl9LnRlcm0tdG9nZ2xlLWljb257Zm9udC1zaXplOi42MjVyZW07Y29sb3I6I2ZmZmZmZjU5O3RyYW5zaXRpb246Y29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjB9LnRlcm0taGVhZGVyOmhvdmVyIC50ZXJtLXRvZ2dsZS1pY29ue2NvbG9yOiNmZmZmZmZhNn0udGVybS1ib2R5e3BhZGRpbmc6MTJweCAxNHB4IDE0cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCMwMDAwMDAyZSwjMDAwMCAyNHB4KSwjMWYxYjE3fS50ZXJtLWNvbW1hbmR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6I2Y0ZTlkNDtsaW5lLWhlaWdodDoxLjU1O21hcmdpbi1ib3R0b206NnB4O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9LnRlcm0tcHJvbXB0e2NvbG9yOiM2ZWUwOWE7Zm9udC13ZWlnaHQ6NjAwO21hcmdpbi1yaWdodDo2cHg7dGV4dC1zaGFkb3c6MCAwIDZweCByZ2JhKDExMCwyMjQsMTU0LC4yNSl9LnRlcm0tb3V0cHV0e21hcmdpbi10b3A6OHB4O3BhZGRpbmctdG9wOjhweDtib3JkZXItdG9wOjFweCBkYXNoZWQgcmdiYSgyNTUsMjU1LDI1NSwuMDYpO21heC1oZWlnaHQ6MzYwcHg7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3cteDpoaWRkZW47b3ZlcmZsb3cteTphdXRvO3Njcm9sbGJhci13aWR0aDp0aGluO3Njcm9sbGJhci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4xNSkgdHJhbnNwYXJlbnR9LnRlcm0tb3V0cHV0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo2cHh9LnRlcm0tb3V0cHV0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiNmZmZmZmYyNjtib3JkZXItcmFkaXVzOjNweH0udGVybS1vdXRwdXQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjQwfS50ZXJtLWxpbmV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6I2Q0YzJhMztsaW5lLWhlaWdodDoxLjU1O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjB9LnRlcm0tZXhpdHttYXJnaW4tdG9wOjEwcHg7cGFkZGluZy10b3A6OHB4O2JvcmRlci10b3A6MXB4IGRhc2hlZCByZ2JhKDI1NSwyNTUsMjU1LC4wNik7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjY4NzVyZW07bGluZS1oZWlnaHQ6MS41O2xldHRlci1zcGFjaW5nOi4wNGVtfS50ZXJtLWV4aXQtc3VjY2Vzc3tjb2xvcjojNmVlMDlhYmZ9LnRlcm0tZXhpdC1lcnJvcntjb2xvcjojZjA3MTc4Yzd9LmlubGluZS1kaWZme21hcmdpbjo0cHggMDt3aWR0aDoxMDAlO21heC13aWR0aDp2YXIoLS1jaGF0LWNhcmQtbWF4LXdpZHRoLCA3MjBweCk7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmJmNWUwLCNmZmY2ZWFiOCk7Ym94LXNoYWRvdzowIDFweCAycHggIzU5M2EyMDBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4yMnMgZWFzZSxib3gtc2hhZG93IC4yMnMgZWFzZX0uaW5saW5lLWRpZmY6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzODtib3gtc2hhZG93OjAgM3B4IDEycHggIzU5M2EyMDBmfS5kaWZmLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3BhZGRpbmc6OHB4IDE0cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtmb250LXNpemU6LjgxMjVyZW07Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZTttYXgtd2lkdGg6MTAwJTttaW4td2lkdGg6MH0uZGlmZi1oZWFkZXI6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGF9LmRpZmYtdG9nZ2xle2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcyB2YXIoLS1lYXNlLXNwcmluZyksY29sb3IgLjE4cyBlYXNlO2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6YXV0bztvcGFjaXR5Oi42fS5pbmxpbmUtZGlmZjpob3ZlciAuZGlmZi10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO29wYWNpdHk6MX0uaW5saW5lLWRpZmYuY29sbGFwc2VkIC5kaWZmLXRvZ2dsZXt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LmlubGluZS1kaWZmLmNvbGxhcHNlZCAuZGlmZi1ib2R5e21heC1oZWlnaHQ6MDtvdmVyZmxvdzpoaWRkZW47b3BhY2l0eTowO3RyYW5zaXRpb246bWF4LWhlaWdodCAuMzVzIHZhcigtLWVhc2Utb3V0LWV4cG8pLG9wYWNpdHkgLjI1cyBlYXNlfS5kaWZmLWZpbGUtaWNvbntkaXNwbGF5Om5vbmV9LmRpZmYtZmlsZS1uYW1le2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC13ZWlnaHQ6NzAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjgxMjVyZW07bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0uZGlmZi1wYXRoe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7ZmxleDoxO21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXNpemU6LjY4NzVyZW19LmRpZmYtc3RhdHVze2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjNweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2xldHRlci1zcGFjaW5nOi4wMWVtfS5kaWZmLXN0YXR1cy5kaWZmLXN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKX0uZGlmZi1zdGF0dXMuZGlmZi1lcnJvcntiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uZGlmZi1zdGF0dXMuZGlmZi1wZW5kaW5ne2JhY2tncm91bmQ6dmFyKC0td2FybmluZy1tdXRlZCk7Y29sb3I6dmFyKC0td2FybmluZyl9LmRpZmYtYm9keXtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtiYWNrZ3JvdW5kOiNmZmZkZjhhNn0uZGlmZi1jb2x1bW5ze2Rpc3BsYXk6ZmxleDtnYXA6MXB4O2JhY2tncm91bmQ6IzdkNWIzOTE0O21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5kaWZmLWNvbHtmbGV4OjEgMSAwO21pbi13aWR0aDowO21heC13aWR0aDoxMDAlO2JhY2tncm91bmQ6I2ZmZmRmOGQ5O292ZXJmbG93OmhpZGRlbn0uZGlmZi1jb2wtaGFsZntmbGV4OjF9LmRpZmYtY29sLWZ1bGx7ZmxleDpub25lO3dpZHRoOjEwMCV9LmRpZmYtY29sLWxhYmVse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NzAwO3BhZGRpbmc6NHB4IDEycHg7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2JhY2tncm91bmQ6IzdkNWIzOTBkO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LmRpZmYtbGluZXtwYWRkaW5nOjNweCAxMnB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43NXJlbTtsaW5lLWhlaWdodDoxLjU1O3doaXRlLXNwYWNlOnByZS13cmFwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGw7bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7Ym94LXNpemluZzpib3JkZXItYm94fS5kaWZmLWFkZHtiYWNrZ3JvdW5kOiM0ZjdhNTgxNDtjb2xvcjojMmM1NTM1O2JvcmRlci1sZWZ0OjJweCBzb2xpZCByZ2JhKDc5LDEyMiw4OCwuNSl9LmRpZmYtcmVtb3Zle2JhY2tncm91bmQ6I2IyNGY0NTBmO2NvbG9yOiM3YzJhMjM7Ym9yZGVyLWxlZnQ6MnB4IHNvbGlkIHJnYmEoMTc4LDc5LDY5LC40NSl9Lm1hcmtkb3duLWNvbnRlbnR7Y29sb3I6aW5oZXJpdDt3aGl0ZS1zcGFjZTpub3JtYWw7b3ZlcmZsb3cteDpoaWRkZW47bWF4LXdpZHRoOjEwMCU7bWluLXdpZHRoOjA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtYmxvY2sgcHJle292ZXJmbG93LXg6aGlkZGVuO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5tYXJrZG93bi1jb250ZW50IHB7bWFyZ2luOjAgMCA4cHg7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgcDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MH0ubWFya2Rvd24tY29udGVudCBzdHJvbmd7Zm9udC13ZWlnaHQ6NjAwfS5tYXJrZG93bi1jb250ZW50IGVte2ZvbnQtc3R5bGU6aXRhbGljfS5tYXJrZG93bi1jb250ZW50IHVsLC5tYXJrZG93bi1jb250ZW50IG9se21hcmdpbjo4cHggMDtwYWRkaW5nLWxlZnQ6MjBweH0ubWFya2Rvd24tY29udGVudCBsaXttYXJnaW46NHB4IDA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgaDEsLm1hcmtkb3duLWNvbnRlbnQgaDIsLm1hcmtkb3duLWNvbnRlbnQgaDN7bWFyZ2luOjE2cHggMCA4cHg7Zm9udC13ZWlnaHQ6NjAwO292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay13b3JkfS5tYXJrZG93bi1jb250ZW50IGgxe2ZvbnQtc2l6ZToxLjI1cmVtfS5tYXJrZG93bi1jb250ZW50IGgye2ZvbnQtc2l6ZToxLjFyZW19Lm1hcmtkb3duLWNvbnRlbnQgaDN7Zm9udC1zaXplOjFyZW19Lm1hcmtkb3duLWNvbnRlbnQgYmxvY2txdW90ZXttYXJnaW46OHB4IDA7cGFkZGluZzo4cHggMTJweDtib3JkZXItbGVmdDozcHggc29saWQgdmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNjNTY1M2QwZjtib3JkZXItcmFkaXVzOjAgdmFyKC0tcmFkaXVzLXNtKSB2YXIoLS1yYWRpdXMtc20pIDA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgYXtvdmVyZmxvdy13cmFwOmFueXdoZXJlO3dvcmQtYnJlYWs6YnJlYWstYWxsfS5tYXJrZG93bi1jb250ZW50IGltZ3ttYXgtd2lkdGg6MTAwJTtoZWlnaHQ6YXV0b30ubWFya2Rvd24tY29udGVudCBjb2RlOm5vdCguY29kZS1ibG9jayk6bm90KC5jb2RlLWlubGluZSl7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07YmFja2dyb3VuZDojOTY3NjU1MWY7cGFkZGluZzoycHggNXB4O2JvcmRlci1yYWRpdXM6NHB4O292ZXJmbG93LXdyYXA6YW55d2hlcmU7d29yZC1icmVhazpicmVhay1hbGx9Lm1hcmtkb3duLWNvbnRlbnQgY29kZS5jb2RlLWlubGluZXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtiYWNrZ3JvdW5kOiM5Njc2NTUxZjtwYWRkaW5nOjJweCA1cHg7Ym9yZGVyLXJhZGl1czo0cHg7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLWFsbH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUtd3JhcHttYXJnaW46MTJweCAwO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowO292ZXJmbG93LXg6YXV0bztib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNofS5tYXJrZG93bi1jb250ZW50IC5tZC10YWJsZXtib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7d2lkdGg6MTAwJTt0YWJsZS1sYXlvdXQ6Zml4ZWQ7Zm9udC1zaXplOi44MTI1cmVtO3doaXRlLXNwYWNlOm5vcm1hbH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUgdGgsLm1hcmtkb3duLWNvbnRlbnQgLm1kLXRhYmxlIHRke2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nOjZweCAxMHB4O3RleHQtYWxpZ246bGVmdDt2ZXJ0aWNhbC1hbGlnbjp0b3A7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9Lm1hcmtkb3duLWNvbnRlbnQgLm1kLXRhYmxlIHRoe2JhY2tncm91bmQ6Izk2NzY1NTFhO2ZvbnQtd2VpZ2h0OjYwMH0ubWFya2Rvd24tY29udGVudCAubWQtdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKDJuKXtiYWNrZ3JvdW5kOiM5Njc2NTUwYX0ubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9ja3ttYXJnaW46MTJweCAwO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDojMWYxYjE3O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjIsOTEsNjQsLjM1KTtib3gtc2hhZG93OjAgMnB4IDhweCAjMDAwMDAwMjZ9Lm1hcmtkb3duLWNvbnRlbnQgLmNvZGUtYmxvY2staGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzo2cHggMTJweDtiYWNrZ3JvdW5kOiM3YTViNDAzMztib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDEyMiw5MSw2NCwuMik7Z2FwOjhweH0ubWFya2Rvd24tY29udGVudCAuY29kZS1sYW5ne2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi43cmVtO2NvbG9yOiM4YzczNWY7dGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlO3doaXRlLXNwYWNlOm5vd3JhcDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ubWFya2Rvd24tY29udGVudCAuY29kZS1jb3B5e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43cmVtO3BhZGRpbmc6NHB4IDEwcHg7Ym9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xNSk7YmFja2dyb3VuZDojZmZmZmZmMWE7Y29sb3I6I2Q5YzRiMDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4LXNocmluazowfS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWNvcHk6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmMmU7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6I2ZmZmZmZjQwfS5tYXJrZG93bi1jb250ZW50IC5jb2RlLWNvcHkuY29waWVke2NvbG9yOiM3ZmEzNmY7Ym9yZGVyLWNvbG9yOiM3ZmEzNmY4MDtiYWNrZ3JvdW5kOiM3ZmEzNmYyNn0ubWFya2Rvd24tY29udGVudCBwcmV7bWFyZ2luOjA7cGFkZGluZzoxMnB4O292ZXJmbG93LXg6aGlkZGVuO3doaXRlLXNwYWNlOnByZS13cmFwO3dvcmQtYnJlYWs6YnJlYWstd29yZDtvdmVyZmxvdy13cmFwOmFueXdoZXJlO21heC13aWR0aDoxMDAlO21pbi13aWR0aDowfS5tYXJrZG93bi1jb250ZW50IHByZSBjb2Rle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO2xpbmUtaGVpZ2h0OjEuNTtjb2xvcjojZjVlYWRjO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7cGFkZGluZzowO21heC13aWR0aDoxMDAlO2Rpc3BsYXk6YmxvY2t9LmlucHV0LXBhbmVse3BhZGRpbmc6NnB4IDEwcHg7cGFkZGluZy1ib3R0b206Y2FsYyg2cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKTtmbGV4LXNocmluazowO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MjY7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWluO3RvdWNoLWFjdGlvbjpwYW4teTtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2UsdmlzaWJpbGl0eSAwc30uaW5wdXQtY29tcG9zZXJ7YmFja2dyb3VuZDojZmZmZmZmZTA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czoyMnB4O3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtvdmVyZmxvdzpoaWRkZW47cG9zaXRpb246cmVsYXRpdmU7b3ZlcnNjcm9sbC1iZWhhdmlvcjpjb250YWlufS5pbnB1dC1jb21wb3Nlcjpmb2N1cy13aXRoaW57Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYWNjZW50LW11dGVkKSwwIDAgMTZweCAjYzU2NTNkMTQ7YmFja2dyb3VuZDojZmZmZmZmZmF9LmNvbXBvc2VyLXN0YXR1cy1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZsZXgtd3JhcDp3cmFwO3BhZGRpbmc6MCAxMHB4O21pbi1oZWlnaHQ6MDt0cmFuc2l0aW9uOnBhZGRpbmcgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY29tcG9zZXItc3RhdHVzLXJvdz4qe2ZsZXgtc2hyaW5rOjB9LmNvbXBvc2VyLXN0YXR1cy1yb3c6aGFzKD4qOm5vdCguaGlkZGVuKSl7cGFkZGluZy10b3A6NnB4O3BhZGRpbmctYm90dG9tOjB9QHN1cHBvcnRzIG5vdCBzZWxlY3Rvcig6aGFzKCopKXsuY29tcG9zZXItc3RhdHVzLXJvdzpub3QoOmVtcHR5KXtwYWRkaW5nLXRvcDo0cHh9fS5jb21wb3Nlci1tYWluLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7cGFkZGluZzo0cHggNnB4O21pbi1oZWlnaHQ6NDRweH0uY29tcG9zZXItYWN0aW9ucy1sZWZ0LC5jb21wb3Nlci1hY3Rpb25zLXJpZ2h0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjJweDtmbGV4LXNocmluazowfS5jb21wb3Nlci1pbnB1dC13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0uY29tcG9zZXItdGV4dC1waWxse3Bvc2l0aW9uOnJlbGF0aXZlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43cmVtO2ZvbnQtd2VpZ2h0OjUwMDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MnB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7Ym94LXNpemluZzpib3JkZXItYm94O3VzZXItc2VsZWN0Om5vbmU7bWF4LXdpZHRoOjExMHB4O2xldHRlci1zcGFjaW5nOi4wMWVtfS5jb21wb3Nlci10ZXh0LXBpbGw6aG92ZXIsLmNvbXBvc2VyLXRleHQtcGlsbDpmb2N1cy13aXRoaW57Y29sb3I6dmFyKC0tYWNjZW50KX0uY29tcG9zZXItdGV4dC1sYWJlbHtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczttYXgtd2lkdGg6MTAwJX0uY29tcG9zZXItdGV4dC1oaWRkZW4tc2VsZWN0e3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTttYXJnaW46MDtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp0cmFuc3BhcmVudDtmb250OmluaGVyaXQ7b3BhY2l0eTowO2N1cnNvcjpwb2ludGVyO2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX0uY29tcG9zZXItdGV4dC1oaWRkZW4tc2VsZWN0OmZvY3Vze291dGxpbmU6bm9uZX0uY29tcG9zZXItdGV4dC1zZXB7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSwgI2I1YTg5YSk7Zm9udC1zaXplOi43cmVtO2xpbmUtaGVpZ2h0OjE7dXNlci1zZWxlY3Q6bm9uZTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6LjY1fS5wZXJtaXNzaW9uLWFjdGlvbnN7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDthbmltYXRpb246cGVybWlzc2lvbi1mYWRlLWluIC4ycyBlYXNlLW91dH0ucGVybWlzc2lvbi1hY3Rpb25zLmhpZGRlbntkaXNwbGF5Om5vbmV9LnBlcm1pc3Npb24tYWN0aW9ucy1sYWJlbHtmb250LXNpemU6LjdyZW07Y29sb3I6I2QxOGIwMDttYXgtd2lkdGg6MTgwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5idG4tcGVybWlzc2lvbntmb250LXNpemU6LjY1cmVtO3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjRweDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2xpbmUtaGVpZ2h0OjEuNDtmb250LXdlaWdodDo1MDA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXN9LmJ0bi1wZXJtaXNzaW9uOmRpc2FibGVke29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkfS5idG4tcGVybWlzc2lvbi1hcHByb3Zle2JhY2tncm91bmQ6I2YwYTUwMDI2O2NvbG9yOiNkMThiMDA7Ym9yZGVyLWNvbG9yOiNmMGE1MDA0ZH0uYnRuLXBlcm1pc3Npb24tYXBwcm92ZTpob3Zlcjpub3QoOmRpc2FibGVkKXtiYWNrZ3JvdW5kOiNmMGE1MDA0MH0uYnRuLXBlcm1pc3Npb24tZGVueXtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpfS5idG4tcGVybWlzc2lvbi1kZW55OmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2JhY2tncm91bmQ6I2RjMzIzMjE0O2NvbG9yOnZhcigtLWRhbmdlcik7Ym9yZGVyLWNvbG9yOiNkYzMyMzI0ZH1Aa2V5ZnJhbWVzIHBlcm1pc3Npb24tZmFkZS1pbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX19LmF1dG8tYXBwcm92ZS1pbmRpY2F0b3IuYWN0aXZle2NvbG9yOiMyMmM1NWU7Ym9yZGVyLWNvbG9yOiMyMmM1NWU4MDtiYWNrZ3JvdW5kOiMyMmM1NWUxZn0uYXV0by1hcHByb3ZlLWluZGljYXRvci5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojMjJjNTVlMzM7Ym9yZGVyLWNvbG9yOiMyMmM1NWV9LmFwcHJvdmFsLXN0YXRze2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlfS5hcHByb3ZhbC1zdGF0cy5oaWRkZW57ZGlzcGxheTpub25lfS5hcHByb3ZhbC1zdGF0cy1kaXZpZGVye3dpZHRoOjA7aGVpZ2h0OjE2cHg7bWFyZ2luOjAgMXB4fS5hcHByb3ZhbC1zdGF0cy1iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6M3B4O21pbi1oZWlnaHQ6MjJweDtwYWRkaW5nOjFweCA4cHg7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6IzIyYzU1ZTFhO2NvbG9yOiMyMmM1NWU7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NjAwO2N1cnNvcjpkZWZhdWx0O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzO2xpbmUtaGVpZ2h0OjE7Ym94LXNpemluZzpib3JkZXItYm94fS5hcHByb3ZhbC1zdGF0cy1iYWRnZTpob3ZlcntiYWNrZ3JvdW5kOiMyMmM1NWUyZX0uYXBwcm92YWwtc3RhdHMtaWNvbntzdHJva2U6IzIyYzU1ZTtmbGV4LXNocmluazowfS5hcHByb3ZhbC1zdGF0cy10b3RhbHtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9QGtleWZyYW1lcyBhcHByb3ZhbC1wdWxzZXswJXt0cmFuc2Zvcm06c2NhbGUoMSl9NTAle3RyYW5zZm9ybTpzY2FsZSgxLjE1KX10b3t0cmFuc2Zvcm06c2NhbGUoMSl9fS5hcHByb3ZhbC1zdGF0cy1wdWxzZXthbmltYXRpb246YXBwcm92YWwtcHVsc2UgLjNzIGVhc2Utb3V0fS5hcHByb3ZhbC1zdGF0cy1wb3B1cHtkaXNwbGF5Om5vbmU7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOmNhbGMoMTAwJSArIDZweCk7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkLCAjMWUxZTJlKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czo4cHg7cGFkZGluZzo4cHggMTBweDttaW4td2lkdGg6MTQwcHg7Ym94LXNoYWRvdzowIDRweCAxNnB4ICMwMDAwMDA0MDt6LWluZGV4OjEwMDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweH0uYXBwcm92YWwtc3RhdHM6aG92ZXIgLmFwcHJvdmFsLXN0YXRzLXBvcHVwe2Rpc3BsYXk6ZmxleH0uYXBwcm92YWwtc3RhdHMtcG9wdXAtdGl0bGV7Zm9udC1zaXplOi42NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXdlaWdodDo1MDA7bWFyZ2luLWJvdHRvbToycHg7d2hpdGUtc3BhY2U6bm93cmFwfS5hcHByb3ZhbC1zdGF0cy1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSwgI2NjYyk7d2hpdGUtc3BhY2U6bm93cmFwfS5hcHByb3ZhbC1zdGF0cy1yb3ctaWNvbnt3aWR0aDoxNnB4O3RleHQtYWxpZ246Y2VudGVyO2ZsZXgtc2hyaW5rOjA7Zm9udC1zaXplOi43MnJlbX0uYXBwcm92YWwtc3RhdHMtcm93LWxhYmVse2ZsZXg6MX0uYXBwcm92YWwtc3RhdHMtcm93LWNvdW50e2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnksICNlZWUpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtczttaW4td2lkdGg6MjBweDt0ZXh0LWFsaWduOnJpZ2h0fS5hcHByb3ZhbC1zdGF0cy1yb3ctdG90YWx7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nLXRvcDo0cHg7bWFyZ2luLXRvcDoycHg7Y29sb3I6IzIyYzU1ZX0uYXBwcm92YWwtc3RhdHMtcm93LXRvdGFsIC5hcHByb3ZhbC1zdGF0cy1yb3ctY291bnR7Y29sb3I6IzIyYzU1ZX0ucXVldWUtYmFyey0tcWItYmc6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpOy0tcWItYmctc3Ryb25nOiByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xNik7LS1xYi1ib3JkZXI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjIyKTstLXFiLXRleHQ6IHZhcigtLXRleHQtcHJpbWFyeSwgIzFmMWQxYSk7LS1xYi10ZXh0LW11dGVkOiB2YXIoLS10ZXh0LW11dGVkLCAjNmI2NTVjKTstLXFiLXNoYWRvdzogMCA0cHggMThweCByZ2JhKDAsIDAsIDAsIC4xKSwgMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgLjA2KTstLXFiLXNoYWRvdy1ob3ZlcjogMCA4cHggMjRweCByZ2JhKDAsIDAsIDAsIC4xNCksIDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIC4wNil9W2RhdGEtdGhlbWU9ZGFya10gLnF1ZXVlLWJhciwudGhlbWUtZGFyayAucXVldWUtYmFyey0tcWItYmc6IHJnYmEoNDAsIDM4LCAzNCwgLjU1KTstLXFiLWJnLXN0cm9uZzogcmdiYSg2MCwgNTYsIDUwLCAuNyk7LS1xYi1ib3JkZXI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpfS5jb21wb3Nlci10b3Atcm93Pi5xdWV1ZS1iYXItaG9zdHtwb3NpdGlvbjpzdGF0aWM7cmlnaHQ6YXV0bztib3R0b206YXV0bzttYXgtd2lkdGg6bm9uZTt6LWluZGV4OmF1dG87cG9pbnRlci1ldmVudHM6YXV0bztmbGV4OjAgMCBhdXRvO2FsaWduLXNlbGY6Y2VudGVyO21hcmdpbi1sZWZ0OmF1dG87bWluLXdpZHRoOjB9LnF1ZXVlLWJhci1ob3N0W2hpZGRlbl17ZGlzcGxheTpub25lfS5xdWV1ZS1iYXJ7cG9pbnRlci1ldmVudHM6YXV0bztwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmlubGluZS1mbGV4O2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtwYWRkaW5nOjVweCA3cHg7bWF4LXdpZHRoOm1pbig1MCUsY2FsYygxMDAlIC0gMTZweCkpO2JhY2tncm91bmQ6dmFyKC0tcWItYmcpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDIycHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMjJweCkgc2F0dXJhdGUoMTgwJSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1xYi1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MjJweDtib3gtc2hhZG93OnZhcigtLXFiLXNoYWRvdyksaW5zZXQgMCAxcHggI2ZmZjM7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4ycyBlYXNlLGJveC1zaGFkb3cgLjJzIGVhc2UsdHJhbnNmb3JtIC4ycyBjdWJpYy1iZXppZXIoLjIsLjgsLjIsMSksYm9yZGVyLXJhZGl1cyAuMjJzIGVhc2UscGFkZGluZyAuMjJzIGVhc2UsbWF4LXdpZHRoIC4yNHMgZWFzZTthbmltYXRpb246cXVldWVCYXJFbnRlciAuMjRzIGN1YmljLWJlemllciguMiwuOCwuMiwxKSBib3RoO292ZXJmbG93OnZpc2libGV9LnF1ZXVlLWJhcjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLXFiLWJnLXN0cm9uZyk7Ym94LXNoYWRvdzp2YXIoLS1xYi1zaGFkb3ctaG92ZXIpLGluc2V0IDAgMXB4ICNmZmZmZmY0MH0ucXVldWUtYmFyLmV4cGFuZGVke2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpzdHJldGNoO3BhZGRpbmc6OHB4O2JvcmRlci1yYWRpdXM6MThweDtnYXA6NnB4O21heC13aWR0aDptaW4oNDIwcHgsY2FsYygxMDAlIC0gMTZweCkpO2N1cnNvcjpkZWZhdWx0fS5xdWV1ZS1iYXIuZXhwYW5kZWQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1xYi1iZyl9QGtleWZyYW1lcyBxdWV1ZUJhckVudGVyezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNHB4KSBzY2FsZSguOTQpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKX19LnF1ZXVlLWJhci1saXN0e2xpc3Qtc3R5bGU6bm9uZTttYXJnaW46MDtwYWRkaW5nOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweDtmbGV4LXdyYXA6bm93cmFwO21pbi13aWR0aDowfS5xdWV1ZS1iYXIuZXhwYW5kZWQgLnF1ZXVlLWJhci1saXN0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpzdHJldGNoO2dhcDo1cHh9LnF1ZXVlLWJhci1pdGVte2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo1cHg7cGFkZGluZzozcHggOHB4IDNweCA0cHg7YmFja2dyb3VuZDojZmZmZmZmMjk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtib3JkZXItcmFkaXVzOjE0cHg7Zm9udC1zaXplOjExcHg7bGluZS1oZWlnaHQ6MS4zO3doaXRlLXNwYWNlOm5vd3JhcDttYXgtd2lkdGg6MTQwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7Y29sb3I6dmFyKC0tcWItdGV4dCk7Y3Vyc29yOmdyYWI7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2UsbWF4LXdpZHRoIC4yMnMgZWFzZSxib3JkZXItcmFkaXVzIC4yMnMgZWFzZSxwYWRkaW5nIC4yMnMgZWFzZTtmbGV4OjAgMCBhdXRvfS5xdWV1ZS1iYXItaXRlbTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZmZmYzZDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0ucXVldWUtYmFyLWl0ZW0uZHJhZ2dpbmd7Y3Vyc29yOmdyYWJiaW5nO3RyYW5zZm9ybTpzY2FsZSgxLjA0KTtib3gtc2hhZG93OjAgNnB4IDE4cHggIzAwMDAwMDJlO3otaW5kZXg6NTA7b3BhY2l0eTouOTJ9LnF1ZXVlLWJhci1pdGVtLXNsaWRpbmd7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE2cyBjdWJpYy1iZXppZXIoLjIsLjcsLjIsMSl9LnF1ZXVlLWJhci5leHBhbmRlZCAucXVldWUtYmFyLWl0ZW17bWF4LXdpZHRoOm5vbmU7d2lkdGg6MTAwJTtwYWRkaW5nOjdweCA2cHggN3B4IDdweDtmb250LXNpemU6MTJweDtsaW5lLWhlaWdodDoxLjQ1O3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7Ym9yZGVyLXJhZGl1czoxMnB4IDEycHggNHB4O2JhY2tncm91bmQ6I2ZmZmZmZjFmO2p1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2N1cnNvcjpncmFifS5xdWV1ZS1iYXIuZXhwYW5kZWQgLnF1ZXVlLWJhci1pdGVtOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjJlO3RyYW5zZm9ybTpub25lfS5xdWV1ZS1iYXItaXRlbS1pbmRleHtmbGV4OjAgMCBhdXRvO3dpZHRoOjE4cHg7aGVpZ2h0OjE4cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LCAjYzU2NTNkKTtjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UsICNmZmYpO2JvcmRlci1yYWRpdXM6NTAlO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0OjcwMDtsaW5lLWhlaWdodDoxfS5xdWV1ZS1iYXItaXRlbS10ZXh0e2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2NvbG9yOnZhcigtLXFiLXRleHQpO2ZvbnQtd2VpZ2h0OjUwMH0ucXVldWUtYmFyLmV4cGFuZGVkIC5xdWV1ZS1iYXItaXRlbS10ZXh0e3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLWJyZWFrOmJyZWFrLXdvcmQ7dGV4dC1vdmVyZmxvdzpjbGlwfS5xdWV1ZS1iYXItaXRlbS1wcm9tb3RlLC5xdWV1ZS1iYXItaXRlbS1kZWxldGV7ZGlzcGxheTpub25lfS5xdWV1ZS1iYXIuZXhwYW5kZWQgLnF1ZXVlLWJhci1pdGVtLXByb21vdGUsLnF1ZXVlLWJhci5leHBhbmRlZCAucXVldWUtYmFyLWl0ZW0tZGVsZXRle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOiNmZmZmZmYyOTtjb2xvcjp2YXIoLS1xYi10ZXh0KTtib3JkZXItcmFkaXVzOjUwJTtjdXJzb3I6cG9pbnRlcjtmbGV4OjAgMCBhdXRvO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsdHJhbnNmb3JtIC4xNXMgZWFzZSxjb2xvciAuMTVzIGVhc2U7cGFkZGluZzowfS5xdWV1ZS1iYXIuZXhwYW5kZWQgLnF1ZXVlLWJhci1pdGVtLXByb21vdGV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQsICNjNTY1M2QpO2NvbG9yOnZhcigtLXRleHQtaW52ZXJzZSwgI2ZmZil9LnF1ZXVlLWJhci5leHBhbmRlZCAucXVldWUtYmFyLWl0ZW0tZGVsZXRlOmhvdmVye2JhY2tncm91bmQ6I2RjNTA0NjJlO2NvbG9yOiNkODQ4M2N9LnF1ZXVlLWJhci5leHBhbmRlZCAucXVldWUtYmFyLWl0ZW0tcHJvbW90ZTpob3ZlcntmaWx0ZXI6YnJpZ2h0bmVzcygxLjA4KTt0cmFuc2Zvcm06c2NhbGUoMS4wNil9LnF1ZXVlLWJhci5leHBhbmRlZCAucXVldWUtYmFyLWl0ZW0tZGVsZXRlOmFjdGl2ZSwucXVldWUtYmFyLmV4cGFuZGVkIC5xdWV1ZS1iYXItaXRlbS1wcm9tb3RlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk0KX0ucXVldWUtYmFyLWl0ZW0tcHJvbW90ZSBzdmcsLnF1ZXVlLWJhci1pdGVtLWRlbGV0ZSBzdmd7ZmxleC1zaHJpbms6MH0ucXVldWUtYmFyLW92ZXJmbG93e2Rpc3BsYXk6bm9uZTthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjttaW4td2lkdGg6MjZweDtoZWlnaHQ6MjJweDtwYWRkaW5nOjAgOHB4O2JhY2tncm91bmQ6I2ZmZmZmZjFhO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTYpO2JvcmRlci1yYWRpdXM6MTRweDtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tcWItdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMgZWFzZX0ucXVldWUtYmFyLW92ZXJmbG93OmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjJlfS5xdWV1ZS1iYXIuaGFzLW92ZXJmbG93IC5xdWV1ZS1iYXItb3ZlcmZsb3d7ZGlzcGxheTppbmxpbmUtZmxleH0ucXVldWUtYmFyLmV4cGFuZGVkIC5xdWV1ZS1iYXItb3ZlcmZsb3csLnF1ZXVlLWJhci1hY3Rpb25ze2Rpc3BsYXk6bm9uZX0ucXVldWUtYmFyLmV4cGFuZGVkIC5xdWV1ZS1iYXItYWN0aW9uc3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmctdG9wOjVweDttYXJnaW4tdG9wOjJweDtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4xMil9LnF1ZXVlLWJhci1hY3Rpb25zLWhpbnR7Zm9udC1zaXplOjEwLjVweDtjb2xvcjp2YXIoLS1xYi10ZXh0LW11dGVkKTtsZXR0ZXItc3BhY2luZzouMDJlbTt1c2VyLXNlbGVjdDpub25lfS5xdWV1ZS1iYXItY2xlYXItYWxse2ZvbnQtc2l6ZToxMXB4O3BhZGRpbmc6M3B4IDlweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMik7Y29sb3I6dmFyKC0tcWItdGV4dC1tdXRlZCk7Ym9yZGVyLXJhZGl1czoxMnB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2UsY29sb3IgLjE1cyBlYXNlLGJvcmRlci1jb2xvciAuMTVzIGVhc2V9LnF1ZXVlLWJhci1jbGVhci1hbGw6aG92ZXJ7YmFja2dyb3VuZDojZGM1MDQ2MWY7Ym9yZGVyLWNvbG9yOiNkYzUwNDY1OTtjb2xvcjojZDg0ODNjfS5xdWV1ZS1iYXIucXVldWUtYmFyLWNhcGFjaXR5ey0tcWItYmc6IHJnYmEoMjIwLCAxMjAsIDYwLCAuMTgpOy0tcWItYmctc3Ryb25nOiByZ2JhKDIyMCwgMTIwLCA2MCwgLjI2KX0ucXVldWUtYmFyLnF1ZXVlLWJhci1pbmZsaWdodHtib3gtc2hhZG93OnZhcigtLXFiLXNoYWRvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjQwLDAgMCAwIDFweCAjYzU2NTNkMmV9QG1lZGlhKG1heC13aWR0aDo1NjBweCl7LnF1ZXVlLWJhciwucXVldWUtYmFyLmV4cGFuZGVke21heC13aWR0aDpjYWxjKDEwMCUgLSA4cHgpfS5xdWV1ZS1iYXItaXRlbXttYXgtd2lkdGg6MTEwcHh9fS5pbnB1dC1oaW50e2ZvbnQtc2l6ZTouNXJlbTtsaW5lLWhlaWdodDoxLjI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7d2hpdGUtc3BhY2U6bm93cmFwO3VzZXItc2VsZWN0Om5vbmU7b3BhY2l0eTouNzttYXgtd2lkdGg6MzhjaDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30uY29tcG9zZXItdG9wLXJvd3twb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7bWluLXdpZHRoOjB9LmNvbXBvc2VyLXRvcC1yb3c6aGFzKD4udG9kby1wcm9ncmVzczpub3QoLmhpZGRlbikpLC5jb21wb3Nlci10b3Atcm93Omhhcyg+LnN0cnVjdHVyZWQtc3RhdHVzLWJhcil7bWFyZ2luLWJvdHRvbTo2cHh9LnRvZG8tcHJvZ3Jlc3N7bWFyZ2luLWJvdHRvbTo2cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9kby1wcm9ncmVzcy5oaWRkZW57ZGlzcGxheTpub25lfS5jb21wb3Nlci10b3Atcm93Pi50b2RvLXByb2dyZXNze2ZsZXg6MTttaW4td2lkdGg6MDttYXJnaW4tYm90dG9tOjB9LnRvZG8tcHJvZ3Jlc3MtaGVhZGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzo0cHggOHB4O2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmU7Z2FwOjhweDtib3JkZXItcmFkaXVzOjEwcHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LnRvZG8tcHJvZ3Jlc3MtaGVhZGVyOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDE0fS50b2RvLXByb2dyZXNzLWxlZnR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O21pbi13aWR0aDowO2ZsZXgtc2hyaW5rOjA7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS50b2RvLXByb2dyZXNzLXJpbmd7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O21pbi13aWR0aDoxNnB4O2ZsZXgtc2hyaW5rOjB9LnRvZG8tcHJvZ3Jlc3MtcmluZyBzdmd7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTt0cmFuc2Zvcm06cm90YXRlKC05MGRlZyl9LnRvZG8tcmluZy10cmFja3tzdHJva2U6I2M1NjUzZDJlfS50b2RvLXJpbmctZmlsbHtzdHJva2U6dmFyKC0tYWNjZW50KTtzdHJva2UtZGFzaGFycmF5Ojk3LjM5O3N0cm9rZS1kYXNob2Zmc2V0OmNhbGMoOTcuMzkgKiAoMSAtIHZhcigtLXByb2dyZXNzLCAwKSkpO3RyYW5zaXRpb246c3Ryb2tlLWRhc2hvZmZzZXQgLjM1cyBlYXNlfS50b2RvLXByb2dyZXNzLXJpbmc6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt3aWR0aDo0cHg7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7b3BhY2l0eTouNjthbmltYXRpb246cmluZ1B1bHNlIDEuNHMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyByaW5nUHVsc2V7MCUsdG97b3BhY2l0eTouMzU7dHJhbnNmb3JtOnNjYWxlKC44NSl9NTAle29wYWNpdHk6Ljk1O3RyYW5zZm9ybTpzY2FsZSgxLjA1KX19LnRvZG8tcHJvZ3Jlc3MtY291bnRlcntmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LnRvZG8tcHJvZ3Jlc3MtZmlsbHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7Ym90dG9tOjA7d2lkdGg6Y2FsYyh2YXIoLS1wcm9ncmVzcywgMCkgKiAxMDAlKTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCh0byByaWdodCwjYzU2NTNkNDcsI2M1NjUzZDFhKTtib3JkZXItcmFkaXVzOjEwcHggMCAwIDEwcHg7dHJhbnNpdGlvbjp3aWR0aCAuMzVzIGVhc2U7cG9pbnRlci1ldmVudHM6bm9uZTt6LWluZGV4OjB9LnRvZG8tcHJvZ3Jlc3MtZmlsbDphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0cHg7Ym90dG9tOjRweDtyaWdodDotMXB4O3dpZHRoOjJweDtiYWNrZ3JvdW5kOiNjNTY1M2Q5OTtib3JkZXItcmFkaXVzOjFweH0udG9kby1wcm9ncmVzcy10YXNrLXdyYXB7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2dhcDo2cHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO3BhZGRpbmctbGVmdDo4cHh9LnRvZG8tcHJvZ3Jlc3MtdGFza3tmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NTAwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjE7bWluLXdpZHRoOjA7dGV4dC1hbGlnbjpyaWdodH0udG9kby1wcm9ncmVzcy1oZWFkZXI6aGFzKC50b2RvLXByb2dyZXNzLXRhc2s6bm90KDplbXB0eSkpIC50b2RvLXByb2dyZXNzLXRhc2t7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsI2ZmZjAsI2ZmZmZmZjhjIDEyJSA4OCUsI2ZmZjApO3BhZGRpbmc6MXB4IDZweDtib3JkZXItcmFkaXVzOjZweH0udG9kby1wcm9ncmVzcy1jaGV2cm9ue2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2U7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfS50b2RvLXByb2dyZXNzLmV4cGFuZGVkIC50b2RvLXByb2dyZXNzLWNoZXZyb257dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS50b2RvLXByb2dyZXNzLWJvZHl7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOmNhbGMoMTAwJSArIDZweCk7YmFja2dyb3VuZDojZmZmYmY2ZmE7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6OHB4IDEwcHg7Ym94LXNoYWRvdzowIDhweCAyNHB4ICMwMDAwMDAxNCwwIDJweCA2cHggIzAwMDAwMDBhO2JhY2tkcm9wLWZpbHRlcjpibHVyKDhweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpO21heC1oZWlnaHQ6MzIwcHg7b3ZlcmZsb3cteTphdXRvO3otaW5kZXg6MzA7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDZweCk7cG9pbnRlci1ldmVudHM6bm9uZTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2V9LnRvZG8tcHJvZ3Jlc3MtYm9keS5oaWRkZW57ZGlzcGxheTpub25lfS50b2RvLXByb2dyZXNzLWJvZHkuZXhwYW5kZWR7b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO3BvaW50ZXItZXZlbnRzOmF1dG99LnRvZG8tcHJvZ3Jlc3MtbGlzdHtsaXN0LXN0eWxlOm5vbmU7bWFyZ2luOjA7cGFkZGluZzowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjFweH0udG9kby1wcm9ncmVzcy1pdGVte2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzo2cHggOHB4O2JvcmRlci1yYWRpdXM6OHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGluZS1oZWlnaHQ6MS4zNTt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udG9kby1wcm9ncmVzcy1pdGVtKy50b2RvLXByb2dyZXNzLWl0ZW17Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czowfS50b2RvLXByb2dyZXNzLWl0ZW06Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czo4cHg7Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6OHB4fS50b2RvLXByb2dyZXNzLWl0ZW06bGFzdC1jaGlsZHtib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOjhweDtib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czo4cHh9LnRvZG8tcHJvZ3Jlc3MtaXRlbS5hY3RpdmV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo1MDA7YmFja2dyb3VuZDojYzU2NTNkMTJ9LnRvZG8tcHJvZ3Jlc3MtaXRlbS5kb25le2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtZGVjb3JhdGlvbjpsaW5lLXRocm91Z2g7dGV4dC1kZWNvcmF0aW9uLWNvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS50b2RvLXByb2dyZXNzLWl0ZW0+c3BhbjpsYXN0LWNoaWxke2ZsZXg6MTttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LnRvZG8taXRlbS1pY29ue3dpZHRoOjE2cHg7bWluLXdpZHRoOjE2cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOi43NXJlbTtmbGV4LXNocmluazowfS50b2RvLWl0ZW0taWNvbi5wZW5kaW5ne2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS50b2RvLWl0ZW0taWNvbi5hY3RpdmV7Y29sb3I6dmFyKC0tYWNjZW50KX0udG9kby1pdGVtLWljb24uZG9uZXtjb2xvcjojNGE3YTRmfS5mb2xkZXItcGlja2VyLWNvbnRhaW5lcnttYXJnaW4tYm90dG9tOjhweH0uZm9sZGVyLXBpY2tlci1xdWljay1idG57ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6NHB4IDhweDtiYWNrZ3JvdW5kOiNmZmY5O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1waWNrZXItcXVpY2stYnRuOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZmU2O2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLWFjY2VudCl9LmZvbGRlci1icmVhZGNydW1ie2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7ZmxleC13cmFwOndyYXA7Z2FwOjJweDtwYWRkaW5nOjRweCA4cHg7YmFja2dyb3VuZDojZmZmNjtib3JkZXItcmFkaXVzOjZweDtmb250LXNpemU6LjY4NzVyZW07Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTttYXJnaW4tYm90dG9tOjRweH0uZm9sZGVyLXBpY2tlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggOHB4O2JhY2tncm91bmQ6I2ZmZmZmZjgwO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pfS5mb2xkZXItcGlja2VyLWljb257Zm9udC1zaXplOjFyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleC1zaHJpbms6MH0uZm9sZGVyLXBpY2tlci1pbnB1dHtmbGV4OjE7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO291dGxpbmU6bm9uZTtwYWRkaW5nOjRweH0uZm9sZGVyLXBpY2tlci1pbnB1dDpmb2N1c3tiYWNrZ3JvdW5kOiNmZmZjO2JvcmRlci1yYWRpdXM6NHB4fS5mb2xkZXItcGlja2VyLWRyb3Bkb3due3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO2xlZnQ6MDtyaWdodDowO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctZWxldmF0ZWQpO3otaW5kZXg6NTA7bWF4LWhlaWdodDoyNDBweDtvdmVyZmxvdy15OmF1dG87bWFyZ2luLXRvcDo0cHh9LmZvbGRlci1waWNrZXItaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7cGFkZGluZzo4cHggMTBweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6LjgxMjVyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmZvbGRlci1waWNrZXItaXRlbTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0uZm9sZGVyLXBpY2tlci1pdGVtLmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCl9LmZvbGRlci1waWNrZXItaXRlbS1pY29ue2ZvbnQtc2l6ZTouODc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5mb2xkZXItcGlja2VyLWxvYWRpbmd7cGFkZGluZzo4cHggMTBweDt0ZXh0LWFsaWduOmNlbnRlcjtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljc1cmVtfS5mb2xkZXItcGlja2VyLWVycm9ye3BhZGRpbmc6OHB4IDEwcHg7Y29sb3I6dmFyKC0tZGFuZ2VyKTtmb250LXNpemU6Ljc1cmVtO2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyLW11dGVkKTtib3JkZXItcmFkaXVzOjRweDttYXJnaW46NHB4IDhweH0uZm9sZGVyLXBpY2tlci1jb250YWluZXIuZHJhZy1vdmVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSl9LmZvbGRlci1waWNrZXItY29udGFpbmVyLmRyYWctb3ZlciAuZm9sZGVyLXBpY2tlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0uZm9sZGVyLXJlY2VudC1zZWN0aW9ue3BhZGRpbmc6NHB4IDhweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTttYXJnaW4tYm90dG9tOjRweH0uZm9sZGVyLXJlY2VudC10aXRsZXtmb250LXNpemU6LjY4NzVyZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wNWVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21hcmdpbi1ib3R0b206NHB4fS5mb2xkZXItcmVjZW50LWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6NnB4IDhweDtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6Ljc1cmVtO2JvcmRlci1yYWRpdXM6NHB4O3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcmVjZW50LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LmZvbGRlci1yZWNlbnQtaXRlbS1wYXRoe2ZsZXg6MTtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZm9sZGVyLXBpY2tlci1pbnB1dC5pbnZhbGlke2JvcmRlci1jb2xvcjp2YXIoLS1kYW5nZXIpO2JhY2tncm91bmQ6I2IyNGY0NTE0fS5mb2xkZXItcGlja2VyLWlucHV0LmludmFsaWQ6Zm9jdXN7Ym94LXNoYWRvdzowIDAgMCAycHggI2IyNGY0NTMzfS5mb2xkZXItcGlja2VyLXZhbGlkYXRpb257Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOnZhcigtLWRhbmdlcik7cGFkZGluZzoycHggNHB4O21hcmdpbi10b3A6MnB4O2Rpc3BsYXk6bm9uZX0uZm9sZGVyLXBpY2tlci12YWxpZGF0aW9uLnZpc2libGV7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci1jb21wYWN0e3Bvc2l0aW9uOnN0aWNreTttYXJnaW4tYm90dG9tOjhweH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggMTBweDtiYWNrZ3JvdW5kOiNmZmZmZmY4MDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcGlja2VyLWNvbXBhY3Qtcm93OmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kOiNmZmZjO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaWNvbntmb250LXNpemU6Ljg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmbGV4LXNocmluazowfS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaW5wdXR7ZmxleDoxO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtvdXRsaW5lOm5vbmU7cGFkZGluZzoycHggMDttaW4td2lkdGg6MH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LWlucHV0OjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uZm9sZGVyLXBpY2tlci10b2dnbGV7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO3BhZGRpbmc6NHB4IDZweDtmb250LXNpemU6LjYyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtib3JkZXItcmFkaXVzOjRweDt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5mb2xkZXItcGlja2VyLXRvZ2dsZTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LmZvbGRlci1waWNrZXItcXVpY2stcm93e2Rpc3BsYXk6ZmxleDtnYXA6NnB4O3BhZGRpbmc6NnB4IDhweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uZm9sZGVyLXBpY2tlci1xdWljay1yb3cgLmZvbGRlci1waWNrZXItcXVpY2stYnRue2ZsZXg6MTtwYWRkaW5nOjRweCA4cHg7Zm9udC1zaXplOi42ODc1cmVtfS53b3JraW5nLWRpci1pbmRpY2F0b3J7cG9zaXRpb246YWJzb2x1dGU7bGVmdDoxMHB4O2JvdHRvbTo1cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjJweCA2cHg7YmFja2dyb3VuZDojYzU2NTNkMTQ7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC1zaXplOi42NXJlbTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7bWF4LXdpZHRoOjE4MHB4O3otaW5kZXg6Mjtwb2ludGVyLWV2ZW50czphdXRvfS53b3JraW5nLWRpci1pbmRpY2F0b3I6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCl9LndvcmtpbmctZGlyLWluZGljYXRvci1pY29ue2ZvbnQtc2l6ZTouNzVyZW07ZmxleC1zaHJpbms6MH0ud29ya2luZy1kaXItaW5kaWNhdG9yLXBhdGh7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IDEyMHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtwYWRkaW5nOjlweCA4cHg7b3V0bGluZTpub25lO3Jlc2l6ZTpub25lO21pbi1oZWlnaHQ6MzZweDttYXgtaGVpZ2h0OnZhcigtLWlucHV0LW1heC1oZWlnaHQpO3dpZHRoOjEwMCU7ZGlzcGxheTpibG9jaztvdmVyZmxvdy15OmhpZGRlbjtvdmVyc2Nyb2xsLWJlaGF2aW9yOmNvbnRhaW47LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2g7dHJhbnNpdGlvbjpoZWlnaHQgLjE1cyBlYXNlLW91dDtib3gtc2l6aW5nOmJvcmRlci1ib3g7bGluZS1oZWlnaHQ6MS40O3RvdWNoLWFjdGlvbjpwYW4teTtzY3JvbGxiYXItZ3V0dGVyOnN0YWJsZX1AbWVkaWEocG9pbnRlcjpjb2Fyc2Upey5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IG1pbigxNjBweCwgMzVkdmgpO292ZXJmbG93LXk6YXV0b319QHN1cHBvcnRzIG5vdCAoaGVpZ2h0OiAxZHZoKXtAbWVkaWEocG9pbnRlcjpjb2Fyc2Upey5pbnB1dC10ZXh0YXJlYXstLWlucHV0LW1heC1oZWlnaHQ6IG1pbigxNjBweCwgMzV2aCl9fX0uaW5wdXQtdGV4dGFyZWE6Zm9jdXN7b3V0bGluZTpub25lfS5pbnB1dC10ZXh0YXJlYTo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6MDtvcGFjaXR5Oi42Mn0uaW5wdXQtdGV4dGFyZWEuaXMtdGVybWluYWwtcGFzc3Rocm91Z2h7b3BhY2l0eTouNztjdXJzb3I6ZGVmYXVsdH0uaW5wdXQtdGV4dGFyZWEuaXMtdGVybWluYWwtcGFzc3Rocm91Z2g6OnBsYWNlaG9sZGVye2ZvbnQtc3R5bGU6aXRhbGljfS5jb21wb3Nlci1waWxse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi42MjVyZW07Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7bWluLWhlaWdodDoyMnB4O3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjEwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOiNmNmYxZThiMztjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHg7d2hpdGUtc3BhY2U6bm93cmFwO2JveC1zaXppbmc6Ym9yZGVyLWJveDt1c2VyLXNlbGVjdDpub25lfS5jb21wb3Nlci1waWxsOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQtY29sb3I6I2Y2ZjFlOH0uY29tcG9zZXItcGlsbDpmb2N1cywuY29tcG9zZXItcGlsbDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCk7b3V0bGluZTpub25lfS5jb21wb3Nlci1waWxsLmRpc2FibGVkLC5jb21wb3Nlci1waWxsW2Rpc2FibGVkXXtvcGFjaXR5Oi41NTtjdXJzb3I6bm90LWFsbG93ZWR9LmNvbXBvc2VyLXBpbGwtY2hpcHtwYWRkaW5nOjFweCA4cHg7Zm9udC1zaXplOi42MjVyZW19LmNvbXBvc2VyLXBpbGwtY2hpcC5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTIpKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpfS5jb21wb3Nlci1waWxsLWNoaXAuYWN0aXZlOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDJlfS5jaGF0LW1vZGUtc2VsZWN0e21heC13aWR0aDo3OHB4fS5idG4tY2lyY2xle3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2ZsZXgtc2hyaW5rOjA7cGFkZGluZzowfS5idG4tY2lyY2xlLXNlbmR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkgMCUsI2E4NTIyZiAxMDAlKTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCAxcHggNnB4ICNjNTY1M2Q0MH0uYnRuLWNpcmNsZS1zZW5kOmhvdmVye3RyYW5zZm9ybTpzY2FsZSgxLjA4KTtib3gtc2hhZG93OjAgM3B4IDEwcHggI2M1NjUzZDU5fS5idG4tY2lyY2xlLXNlbmQ6YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTUpfS5idG4tY2lyY2xlLXN0b3B7YmFja2dyb3VuZDojYjI0ZjQ1MWY7Y29sb3I6dmFyKC0tZGFuZ2VyKX0uYnRuLWNpcmNsZS1zdG9wOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKTtjb2xvcjojZmZmO3RyYW5zZm9ybTpzY2FsZSgxLjA4KX0uYnRuLWNpcmNsZS1zdG9wOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk1KX0uYnRuLWNpcmNsZS1zZW5kLnF1ZXVlLW1vZGV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNjNTY1M2Q4YywjYTg1MjJmOGMpO2JveC1zaGFkb3c6MCAxcHggNHB4ICNjNTY1M2QyNn0uYnRuLWNpcmNsZS1zZW5kLnF1ZXVlLW1vZGU6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkgMCUsI2E4NTIyZiAxMDAlKTtib3gtc2hhZG93OjAgM3B4IDEwcHggI2M1NjUzZDU5fS5wcm9tcHQtb3B0aW1pemUtYnRue3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1cHg7cmlnaHQ6NnB4O3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjIyKTtwYWRkaW5nOjA7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMmYyLCNlOGM1YWU1OSk7Y29sb3I6dmFyKC0tYWNjZW50KTt6LWluZGV4OjQ7Ym94LXNoYWRvdzowIDFweCA0cHggI2M1NjUzZDFhO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm94LXNoYWRvdyB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5wcm9tcHQtb3B0aW1pemUtYnRuOmhvdmVye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjZmZmYWYyLCNlOGM1YWU4Yyk7Y29sb3I6dmFyKC0tYWNjZW50LWhvdmVyKTt0cmFuc2Zvcm06c2NhbGUoMS4xMik7Ym9yZGVyLWNvbG9yOiNjNTY1M2Q1OTtib3gtc2hhZG93OjAgMnB4IDEwcHggI2M1NjUzZDM4LDAgMCAwIDNweCAjYzU2NTNkMGZ9LnByb21wdC1vcHRpbWl6ZS1idG46YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTIpO2JveC1zaGFkb3c6MCAxcHggM3B4ICNjNTY1M2QyNn0ucHJvbXB0LW9wdGltaXplLWJ0bjpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWQ7b3BhY2l0eTouNn0ucHJvbXB0LW9wdGltaXplLWJ0bjpkaXNhYmxlZDpob3Zlcnt0cmFuc2Zvcm06bm9uZTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMmYyLCNlOGM1YWU1OSk7Ym94LXNoYWRvdzowIDFweCA0cHggI2M1NjUzZDFhO2JvcmRlci1jb2xvcjojYzU2NTNkMzh9LnByb21wdC1vcHRpbWl6ZS1pY29ue3RyYW5zaXRpb246dHJhbnNmb3JtIC4yNXMgZWFzZSxvcGFjaXR5IC4ycyBlYXNlO3RyYW5zZm9ybS1vcmlnaW46Y2VudGVyO2ZpbHRlcjpkcm9wLXNoYWRvdygwIDAgMXB4IHJnYmEoMTk3LDEwMSw2MSwuMykpfS5wcm9tcHQtb3B0aW1pemUtYnRuOmhvdmVyIC5wcm9tcHQtb3B0aW1pemUtaWNvbnthbmltYXRpb246cHJvbXB0LW9wdGltaXplLXR3aW5rbGUgMS40cyBlYXNlLWluLW91dCBpbmZpbml0ZTtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDNweCByZ2JhKDE5NywxMDEsNjEsLjQpKX1Aa2V5ZnJhbWVzIHByb21wdC1vcHRpbWl6ZS10d2lua2xlezAlLHRve3RyYW5zZm9ybTpyb3RhdGUoMCkgc2NhbGUoMSl9NTAle3RyYW5zZm9ybTpyb3RhdGUoMTJkZWcpIHNjYWxlKDEuMTIpfX0ucHJvbXB0LW9wdGltaXplLXNwaW5uZXJ7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtib3JkZXItcmFkaXVzOjUwJTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDtiYWNrZ3JvdW5kOmNvbmljLWdyYWRpZW50KGZyb20gMGRlZyx0cmFuc3BhcmVudCAwZGVnLHZhcigtLWFjY2VudCkgMjcwZGVnLHRyYW5zcGFyZW50IDM2MGRlZyk7bWFzazpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlLHRyYW5zcGFyZW50IDEwcHgsYmxhY2sgMTFweCk7LXdlYmtpdC1tYXNrOnJhZGlhbC1ncmFkaWVudChjaXJjbGUsdHJhbnNwYXJlbnQgMTBweCxibGFjayAxMXB4KTt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBlYXNlfS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLWxvYWRpbmd7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2ZmZmFmMiwjZThjNWFlODApO2JvcmRlci1jb2xvcjojYzU2NTNkNjY7Ym94LXNoYWRvdzowIDJweCAxMnB4ICNjNTY1M2Q0MCwwIDAgMCAzcHggI2M1NjUzZDE0fS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLWxvYWRpbmcgLnByb21wdC1vcHRpbWl6ZS1pY29ue2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtcHVsc2UgMS4xcyBlYXNlLWluLW91dCBpbmZpbml0ZX0ucHJvbXB0LW9wdGltaXplLWJ0bi5pcy1sb2FkaW5nIC5wcm9tcHQtb3B0aW1pemUtc3Bpbm5lcntvcGFjaXR5OjE7YW5pbWF0aW9uOnByb21wdC1vcHRpbWl6ZS1zcGluIC45cyBsaW5lYXIgaW5maW5pdGV9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgcHJvbXB0LW9wdGltaXplLXB1bHNlezAlLHRve3RyYW5zZm9ybTpzY2FsZSguODgpO29wYWNpdHk6Ljh9NTAle3RyYW5zZm9ybTpzY2FsZSgxLjE1KTtvcGFjaXR5OjF9fS5pbnB1dC1jb21wb3Nlci5pcy1vcHRpbWl6aW5ne2JvcmRlci1jb2xvcjojYzU2NTNkNmI7Ym94LXNoYWRvdzowIDAgMCAycHggI2M1NjUzZDFhLDAgMCAxOHB4ICNjNTY1M2QyNH0uaW5wdXQtY29tcG9zZXIuaXMtb3B0aW1pemluZyAuY29tcG9zZXItaW5wdXQtd3JhcDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3BvaW50ZXItZXZlbnRzOm5vbmU7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTAwZGVnLHRyYW5zcGFyZW50IDAlLHRyYW5zcGFyZW50IDM4JSxyZ2JhKDIxNCwxMjMsODIsLjE2KSA1MCUsdHJhbnNwYXJlbnQgNjIlLHRyYW5zcGFyZW50IDEwMCUpO2JhY2tncm91bmQtc2l6ZToyMjAlIDEwMCU7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246MjIwJSAwO2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtZmxvdyAxLjZzIGxpbmVhciBpbmZpbml0ZTt6LWluZGV4OjB9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtZmxvd3swJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjIyMCUgMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0xMjAlIDB9fS5wcm9tcHQtb3B0aW1pemUtYnRuLmlzLXNoYWtle2FuaW1hdGlvbjpwcm9tcHQtb3B0aW1pemUtc2hha2UgLjRzIGVhc2Utb3V0O2NvbG9yOnZhcigtLWRhbmdlcil9QGtleWZyYW1lcyBwcm9tcHQtb3B0aW1pemUtc2hha2V7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX0yMCV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtM3B4KX00MCV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgzcHgpfTYwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0ycHgpfTgwJXt0cmFuc2Zvcm06dHJhbnNsYXRlKDJweCl9fUBtZWRpYShtYXgtd2lkdGg6NzIwcHgpey5wcm9tcHQtb3B0aW1pemUtYnRue3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHh9LnByb21wdC1vcHRpbWl6ZS1pY29ue3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHh9fS5idG4tY2lyY2xlLWFjdGlvbntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2ZsZXgtc2hyaW5rOjA7cGFkZGluZzowfS5idG4tY2lyY2xlLWFjdGlvbjpob3ZlcntiYWNrZ3JvdW5kOiNjNTY1M2QxYTtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTpzY2FsZSgxLjA4KX0uYnRuLWNpcmNsZS1hY3Rpb246YWN0aXZle3RyYW5zZm9ybTpzY2FsZSguOTQpfS5idG4tY2lyY2xlLWFjdGlvbi5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTQpKTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5idG4tY2lyY2xlLWFjdGlvbi5hY3RpdmU6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMzh9LmNoYXQtbW9kZS10cmlve2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleC13cmFwOndyYXB9LmNoYXQtbW9kZS10cmlvLXBpbGx7cG9zaXRpb246cmVsYXRpdmU7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uY2hhdC1tb2RlLXRyaW8tdGFne2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5LCAjYjVhODlhKTtsZXR0ZXItc3BhY2luZzouMDRlbTttYXJnaW4tcmlnaHQ6NHB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtvcGFjaXR5Oi43NX0uZW1wdHktc3RhdGUtdHJpby13cmFwe21hcmdpbi10b3A6MTRweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2FuaW1hdGlvbjplbXB0eVN0YXRlVHJpb0ZhZGVJbiAuNHMgZWFzZS1vdXR9LmVtcHR5LXN0YXRlLXRyaW8taGludHtmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xldHRlci1zcGFjaW5nOi4wMmVtfS5jaGF0LW1vZGUtdHJpby1kcm9wZG93bntnYXA6NHB4O3BhZGRpbmc6NnB4IDEycHg7YmFja2dyb3VuZDojZjZmMWU4OTk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEycHg7Ym94LXNoYWRvdzowIDFweCAzcHggIzAwMDAwMDBhfS5jaGF0LW1vZGUtdHJpby1kcm9wZG93biAuY2hhdC1tb2RlLXRyaW8tcGlsbHtmb250LXNpemU6Ljc4cmVtO3BhZGRpbmc6M3B4IDZweDtib3JkZXItcmFkaXVzOjhweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uY2hhdC1tb2RlLXRyaW8tZHJvcGRvd24gLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMGZ9LmNoYXQtbW9kZS10cmlvLWRyb3Bkb3duIC5jaGF0LW1vZGUtdHJpby1waWxsOmZvY3VzLXdpdGhpbntiYWNrZ3JvdW5kOiNjNTY1M2QxNH0uY2hhdC1tb2RlLXRyaW8tZHJvcGRvd24gLmNvbXBvc2VyLXRleHQtbGFiZWx7Zm9udC1zaXplOi44cmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO21heC13aWR0aDoxNDBweH1Aa2V5ZnJhbWVzIGVtcHR5U3RhdGVUcmlvRmFkZUluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg0cHgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX19LmNoYXQtbWVzc2FnZS1hdmF0YXIudXNlciAuY2hhdC1tb2RlLXRyaW8tY29tcGFjdHttYXJnaW4tcmlnaHQ6NHB4O2dhcDozcHg7b3BhY2l0eTouNTU7dHJhbnNpdGlvbjpvcGFjaXR5IHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmNoYXQtbWVzc2FnZS1hdmF0YXIudXNlcjpob3ZlciAuY2hhdC1tb2RlLXRyaW8tY29tcGFjdCwuY2hhdC1tZXNzYWdlLWF2YXRhci51c2VyIC5jaGF0LW1vZGUtdHJpby1jb21wYWN0OmZvY3VzLXdpdGhpbiwuY2hhdC1tZXNzYWdlLWF2YXRhci51c2VyIC5jaGF0LW1vZGUtdHJpby1jb21wYWN0OmhvdmVye29wYWNpdHk6MX0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY2hhdC1tb2RlLXRyaW8tcGlsbHtmb250LXNpemU6LjY4NzVyZW07cGFkZGluZzoycHggNnB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOiNmNmYxZTg4Yztib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0cmFuc2l0aW9uOmFsbCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO2xpbmUtaGVpZ2h0OjF9LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXJ7YmFja2dyb3VuZDojYzU2NTNkMWE7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0uY2hhdC1tb2RlLXRyaW8tY29tcGFjdCAuY29tcG9zZXItdGV4dC1sYWJlbHtmb250LXNpemU6LjY4NzVyZW07bWF4LXdpZHRoOjg4cHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNvbXBvc2VyLXRleHQtc2Vwe2Rpc3BsYXk6bm9uZX1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuY2hhdC1tb2RlLXRyaW8tZHJvcGRvd257cGFkZGluZzo2cHggMTBweDtnYXA6MnB4fS5jaGF0LW1vZGUtdHJpby1kcm9wZG93biAuY29tcG9zZXItdGV4dC1sYWJlbHttYXgtd2lkdGg6MTAwcHh9LmNoYXQtbW9kZS10cmlvLWNvbXBhY3QgLmNoYXQtbW9kZS10cmlvLXBpbGx7Zm9udC1zaXplOi42MjVyZW07cGFkZGluZzoycHggNXB4fS5jaGF0LW1vZGUtdHJpby1jb21wYWN0IC5jb21wb3Nlci10ZXh0LWxhYmVse21heC13aWR0aDo2NHB4fX0uY29tcG9zZXItcGx1cy1wb3BvdmVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MTRweDtib3R0b206Y2FsYyh2YXIoLS1zYWZlLWJvdHRvbSwgMHB4KSArIDU2cHgpO3otaW5kZXg6Mjg7bWluLXdpZHRoOjI0MHB4O21heC13aWR0aDpjYWxjKDEwMCUgLSAyOHB4KTtiYWNrZ3JvdW5kOiNmZmZmZmZmYTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjE2cHg7Ym94LXNoYWRvdzowIDEycHggMjhweCAjMDAwMDAwMmUsMCAycHggNnB4ICMwMDAwMDAxNDtwYWRkaW5nOjZweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7YW5pbWF0aW9uOnBsdXNQb3BvdmVySW4gLjE4cyBlYXNlLW91dDt0cmFuc2Zvcm0tb3JpZ2luOjE2cHggY2FsYygxMDAlICsgOHB4KX0uY29tcG9zZXItcGx1cy1wb3BvdmVyLmhpZGRlbntkaXNwbGF5Om5vbmV9QGtleWZyYW1lcyBwbHVzUG9wb3ZlckluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg2cHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX0ucGx1cy1wb3BvdmVyLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjhweCAxMHB4O2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxMHB4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOi44MnJlbTtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7dGV4dC1hbGlnbjpsZWZ0O3dpZHRoOjEwMCV9LnBsdXMtcG9wb3Zlci1pdGVtOmhvdmVye2JhY2tncm91bmQ6I2M1NjUzZDE0fS5wbHVzLXBvcG92ZXItaXRlbTphY3RpdmV7YmFja2dyb3VuZDojYzU2NTNkMjR9LnBsdXMtcG9wb3Zlci1pY29ue2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmbGV4LXNocmluazowfS5wbHVzLXBvcG92ZXItbGFiZWx7ZmxleDoxO2xpbmUtaGVpZ2h0OjEuMn0ucGx1cy1wb3BvdmVyLXRvZ2dsZS1zdGF0ZXtmb250LXNpemU6LjY4cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3BhZGRpbmc6MnB4IDhweDtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOiMwMDAwMDAwZDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LjAyZW19LnBsdXMtcG9wb3Zlci1pdGVtLmlzLW9uLC5wbHVzLXBvcG92ZXItaXRlbS5pcy1vbiAucGx1cy1wb3BvdmVyLWljb257Y29sb3I6dmFyKC0tYWNjZW50KX0ucGx1cy1wb3BvdmVyLWl0ZW0uaXMtb24gLnBsdXMtcG9wb3Zlci10b2dnbGUtc3RhdGV7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCl9LnBsdXMtcG9wb3Zlci1zZXB7aGVpZ2h0OjFweDttYXJnaW46NHB4IDZweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1zdWJ0bGUpfS5wbHVzLXBvcG92ZXItdHJpby13cmFwe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Z2FwOjJweH0uY2hhdC1tb2RlLXRyaW8tcG9wb3ZlciAuY29tcG9zZXItdGV4dC1zZXB7ZGlzcGxheTpub25lfS5jaGF0LW1vZGUtdHJpby1wb3BvdmVyIC5jaGF0LW1vZGUtdHJpby1waWxse2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjdweCAxMHB4O2JvcmRlci1yYWRpdXM6MTBweDtmb250LXNpemU6LjgycmVtO21heC13aWR0aDpub25lO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXBpbGw6aG92ZXIsLmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXBpbGw6Zm9jdXMtd2l0aGlue2JhY2tncm91bmQ6I2M1NjUzZDE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNoYXQtbW9kZS10cmlvLXRhZ3tmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGV0dGVyLXNwYWNpbmc6MDt0ZXh0LXRyYW5zZm9ybTpub25lO29wYWNpdHk6MTttYXJnaW4tcmlnaHQ6MDtmbGV4LXNocmluazowO3dpZHRoOjM2cHh9LmNoYXQtbW9kZS10cmlvLXBvcG92ZXIgLmNvbXBvc2VyLXRleHQtbGFiZWx7ZmxleDoxO2ZvbnQtc2l6ZTouODJyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0ZXh0LWFsaWduOnJpZ2h0O21heC13aWR0aDoxMDAlO2ZvbnQtd2VpZ2h0OjUwMH1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuY29tcG9zZXItcGx1cy1wb3BvdmVye21pbi13aWR0aDoyMjBweDtsZWZ0OjEwcHg7Ym90dG9tOmNhbGModmFyKC0tc2FmZS1ib3R0b20sIDBweCkgKyA2MHB4KX19LnByb21wdC1vcHRpbWl6ZS1idG57ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OmF1dG8gNHB4IDRweCBhdXRvO3RyYW5zZm9ybTpub25lO3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHg7ei1pbmRleDo0fS5pbnB1dC1jb21wb3Nlci5oYXMtdGV4dCAucHJvbXB0LW9wdGltaXplLWJ0bntkaXNwbGF5OmlubGluZS1mbGV4fS5pbnB1dC1jb21wb3Nlci5oYXMtdGV4dCAucHJvbXB0LW9wdGltaXplLWJ0bjpob3Zlcnt0cmFuc2Zvcm06c2NhbGUoMS4xMil9LmlucHV0LWNvbXBvc2VyLmhhcy10ZXh0IC5wcm9tcHQtb3B0aW1pemUtYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjkyKX0uaW5wdXQtY29tcG9zZXIuaGFzLXRleHQgLmlucHV0LXRleHRhcmVhe3BhZGRpbmctcmlnaHQ6MzZweH0udm9pY2UtaW5wdXQtbW9kZXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjAgNHB4fS52b2ljZS1pbnB1dC1tb2RlLmhpZGRlbntkaXNwbGF5Om5vbmV9LnZvaWNlLXJlY29yZC1idG57ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtoZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjk5OXB4O2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtiYWNrZ3JvdW5kOiNmNmYxZTg4MDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjhweDt0cmFuc2l0aW9uOmJhY2tncm91bmQgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxjb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3RvdWNoLWFjdGlvbjptYW5pcHVsYXRpb259LnZvaWNlLXJlY29yZC1idG46aG92ZXJ7YmFja2dyb3VuZDojZjZmMWU4ZTY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KX0udm9pY2UtcmVjb3JkLWJ0bjphY3RpdmUsLnZvaWNlLXJlY29yZC1idG4uaXMtcmVjb3JkaW5ne2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkLCByZ2JhKDE5NywgMTAxLCA2MSwgLjE0KSk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItc3R5bGU6c29saWR9LnZvaWNlLXJlY29yZC1wdWxzZXt3aWR0aDo4cHg7aGVpZ2h0OjhweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtvcGFjaXR5Oi41NX0udm9pY2UtcmVjb3JkLWJ0bi5pcy1yZWNvcmRpbmcgLnZvaWNlLXJlY29yZC1wdWxzZXtvcGFjaXR5OjE7YW5pbWF0aW9uOnZvaWNlLXB1bHNlIDEuMXMgZWFzZS1pbi1vdXQgaW5maW5pdGV9QGtleWZyYW1lcyB2b2ljZS1wdWxzZXswJSx0b3t0cmFuc2Zvcm06c2NhbGUoMSk7b3BhY2l0eToxfTUwJXt0cmFuc2Zvcm06c2NhbGUoMS40NSk7b3BhY2l0eTouNDV9fS52b2ljZS1jYW5jZWwtYnRue3dpZHRoOjI2cHg7aGVpZ2h0OjI2cHg7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjphbGwgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0udm9pY2UtY2FuY2VsLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxYTtjb2xvcjp2YXIoLS1kYW5nZXIpfS5pbnB1dC1jb21wb3Nlci52b2ljZS1tb2RlIC5pbnB1dC10ZXh0YXJlYXt2aXNpYmlsaXR5OmhpZGRlbn0uaW5wdXQtY29tcG9zZXIudm9pY2UtbW9kZSAucHJvbXB0LW9wdGltaXplLWJ0bntkaXNwbGF5Om5vbmV9LmlucHV0LWNvbXBvc2VyLnZvaWNlLW1vZGUgLnZvaWNlLWlucHV0LW1vZGV7ZGlzcGxheTpmbGV4fSN2b2ljZS1idG57ZGlzcGxheTpub25lfS5pbnB1dC1jb21wb3Nlci52b2ljZS1tb2RlICN2b2ljZS1idG57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQsIHJnYmEoMTk3LCAxMDEsIDYxLCAuMTgpKTtjb2xvcjp2YXIoLS1hY2NlbnQpfS52b2ljZS10cmFuc2NyaXB0LWJ1YmJsZXtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjEycHg7cmlnaHQ6MTJweDtib3R0b206Y2FsYygxMDAlICsgOHB4KTt6LWluZGV4OjQwO3BhZGRpbmc6MTJweCAxNnB4IDEwcHg7Ym9yZGVyLXJhZGl1czoxNnB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LCAjYzU2NTNkKTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCA2cHggMjRweCAjMDAwMDAwMmU7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNmb3JtLW9yaWdpbjpib3R0b20gY2VudGVyO2FuaW1hdGlvbjp2b2ljZS1idWJibGUtaW4gLjE4cyBlYXNlfS52b2ljZS10cmFuc2NyaXB0LWJ1YmJsZS5oaWRkZW57ZGlzcGxheTpub25lfUBrZXlmcmFtZXMgdm9pY2UtYnViYmxlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg4cHgpIHNjYWxlKC45Nil9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApIHNjYWxlKDEpfX0udm9pY2UtdHJhbnNjcmlwdC10ZXh0e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi45NXJlbTtsaW5lLWhlaWdodDoxLjU7Zm9udC13ZWlnaHQ6NTAwO3dvcmQtYnJlYWs6YnJlYWstd29yZDt3aGl0ZS1zcGFjZTpwcmUtd3JhcDttaW4taGVpZ2h0OjEuNGVtO2NvbG9yOiNmZmZ9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlOm5vdCguaGFzLXRleHQpIC52b2ljZS10cmFuc2NyaXB0LXRleHQ6YmVmb3Jle2NvbnRlbnQ6Ilw4YmY3XDVmMDBcNTljYlw4YmY0XDhiZGRcMjAyNiI7b3BhY2l0eTouNn0udm9pY2UtdHJhbnNjcmlwdC1oaW50e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtmb250LXNpemU6LjcycmVtO29wYWNpdHk6Ljg1fS52b2ljZS10cmFuc2NyaXB0LXN0YXR1c3tsZXR0ZXItc3BhY2luZzouMDJlbX0udm9pY2Utd2F2ZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDoycHg7aGVpZ2h0OjEycHh9LnZvaWNlLXdhdmU+aXt3aWR0aDoyLjVweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjthbmltYXRpb246dm9pY2Utd2F2ZS1ib3VuY2UgLjlzIGVhc2UtaW4tb3V0IGluZmluaXRlfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDEpe2hlaWdodDo1cHg7YW5pbWF0aW9uLWRlbGF5OjBzfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDIpe2hlaWdodDoxMnB4O2FuaW1hdGlvbi1kZWxheTouMTVzfS52b2ljZS13YXZlPmk6bnRoLWNoaWxkKDMpe2hlaWdodDo4cHg7YW5pbWF0aW9uLWRlbGF5Oi4zc30udm9pY2Utd2F2ZT5pOm50aC1jaGlsZCg0KXtoZWlnaHQ6MTFweDthbmltYXRpb24tZGVsYXk6LjQ1c31Aa2V5ZnJhbWVzIHZvaWNlLXdhdmUtYm91bmNlezAlLHRve3RyYW5zZm9ybTpzY2FsZVkoLjQpO29wYWNpdHk6LjZ9NTAle3RyYW5zZm9ybTpzY2FsZVkoMSk7b3BhY2l0eToxfX0udm9pY2UtYnViYmxlLWFycm93e3Bvc2l0aW9uOmFic29sdXRlO3RvcDoxMDAlO2xlZnQ6MjhweDt3aWR0aDowO2hlaWdodDowO2JvcmRlci1sZWZ0OjdweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmlnaHQ6N3B4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci10b3A6OHB4IHNvbGlkIHZhcigtLWFjY2VudCwgI2M1NjUzZCl9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlLmlzLWNhbmNlbGluZ3tiYWNrZ3JvdW5kOnZhcigtLWRhbmdlciwgI2IyNGY0NSl9LnZvaWNlLXRyYW5zY3JpcHQtYnViYmxlLmlzLWNhbmNlbGluZyAudm9pY2UtYnViYmxlLWFycm93e2JvcmRlci10b3AtY29sb3I6dmFyKC0tZGFuZ2VyLCAjYjI0ZjQ1KX1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsuYnRuLWNpcmNsZS1hY3Rpb257d2lkdGg6MzBweDtoZWlnaHQ6MzBweDttaW4td2lkdGg6MzBweH0uY29tcG9zZXItbWFpbi1yb3d7cGFkZGluZzozcHggNHB4O21pbi1oZWlnaHQ6NDJweDtnYXA6MnB4fX0uYXR0YWNobWVudC1wcmV2aWV3e2Rpc3BsYXk6ZmxleDtnYXA6NnB4O3BhZGRpbmc6NnB4IDEwcHg7ZmxleC13cmFwOndyYXA7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LmF0dGFjaG1lbnQtcHJldmlldy5oaWRkZW57ZGlzcGxheTpub25lfS5hdHRhY2htZW50LXBpbGx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtwYWRkaW5nOjNweCA4cHg7YmFja2dyb3VuZDojYzU2NTNkMGY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE4KTtib3JkZXItcmFkaXVzOjhweDtmb250LXNpemU6LjcycmVtO21heC13aWR0aDoyMDBweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7YW5pbWF0aW9uOnBlcm1pc3Npb24tZmFkZS1pbiAuMnMgZWFzZS1vdXR9LmF0dGFjaG1lbnQtcGlsbCBpbWd7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDtvYmplY3QtZml0OmNvdmVyO2JvcmRlci1yYWRpdXM6NHB4O2ZsZXgtc2hyaW5rOjB9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LWljb257d2lkdGg6MThweDtoZWlnaHQ6MThweDtmbGV4LXNocmluazowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6Ljg1cmVtfS5hdHRhY2htZW50LXBpbGwgLmF0dC1uYW1le292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4OjE7bWluLXdpZHRoOjB9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LXNpemV7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi42NXJlbTtmbGV4LXNocmluazowfS5hdHRhY2htZW50LXBpbGwgLmF0dC1yZW1vdmV7Y3Vyc29yOnBvaW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi44cmVtO2xpbmUtaGVpZ2h0OjE7cGFkZGluZzowIDJweDtmbGV4LXNocmluazowO2JvcmRlcjpub25lO2JhY2tncm91bmQ6bm9uZX0uYXR0YWNobWVudC1waWxsIC5hdHQtcmVtb3ZlOmhvdmVye2NvbG9yOnZhcigtLWRhbmdlcil9LmlucHV0LWNvbXBvc2VyLmRyYWctb3Zlcntib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KSFpbXBvcnRhbnQ7YmFja2dyb3VuZDojYzU2NTNkMGEhaW1wb3J0YW50O2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCksaW5zZXQgMCAwIDIwcHggI2M1NjUzZDA4fS5mb2xkZXItcGlja2VyLW1vZGFse21heC13aWR0aDo0ODBweH0uZm9sZGVyLXBpY2tlci1tb2RhbCAubW9kYWwtYm9keXtwYWRkaW5nOjE2cHh9LmxvZ2luLWNvbnRhaW5lcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLWhlaWdodDoxMDB2aDttaW4taGVpZ2h0OjEwMGR2aDtwYWRkaW5nOjI0cHh9LmxvZ2luLWNhcmR7d2lkdGg6MTAwJTttYXgtd2lkdGg6MzgwcHg7YmFja2dyb3VuZDojZmZmYmY1ZWI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE1MCwxMTgsODUsLjE2KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7b3ZlcmZsb3c6aGlkZGVuO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNvZnQpfS5sb2dpbi1oZWFkZXJ7cGFkZGluZzoyOHB4IDI0cHggMjJweDt0ZXh0LWFsaWduOmNlbnRlcjtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdG9wLHJnYmEoMjE0LDE0NCwxMDAsLjI2KSx0cmFuc3BhcmVudCA0NSUpLGxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZjZlYmQ5LCNmZmZiZjVkOSl9LmJvb3QtbG9hZGluZ3ttaW4taGVpZ2h0OjEwMHZoO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nOjI0cHh9LmJvb3QtbG9hZGluZy1jYXJke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzoxNnB4IDE4cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWVsZXZhdGVkKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5ib290LWxvYWRpbmctc3Bpbm5lcnt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOjJweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE2KTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLXJhZGl1czo5OTlweDthbmltYXRpb246bG9naW5TcGluIC44cyBsaW5lYXIgaW5maW5pdGV9LmJvb3QtbG9hZGluZy10ZXh0e2ZvbnQtc2l6ZTouOTM3NXJlbTtmb250LXdlaWdodDo1MDB9LmxvZ2luLWxvZ297ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDoxMHB4O21hcmdpbi1ib3R0b206OHB4fS5sb2dpbi1sb2dvLWljb257d2lkdGg6NDJweDtoZWlnaHQ6NDJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2Q2N2I1MiwjYWI1MjJlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZjU5O2ZvbnQtc2l6ZToxOHB4O2NvbG9yOiNmZmY7Zm9udC13ZWlnaHQ6NzAwfS5sb2dpbi1sb2dvLXRleHR7Zm9udC1zaXplOjEuNnJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LS4wMmVtfS5sb2dpbi1zdWJ0aXRsZXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljg3NXJlbX0ubG9naW4tYm9keXtwYWRkaW5nOjIycHggMjRweCAyNHB4fS5sb2dpbi1jYXJkLWxvYWRpbmcgLmxvZ2luLWJvZHl7cGFkZGluZy10b3A6MThweDtwYWRkaW5nLWJvdHRvbToyNHB4fS5sb2dpbi1oaW50e2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bWFyZ2luLWJvdHRvbToxNnB4O2xpbmUtaGVpZ2h0OjEuNX0ubG9naW4tbXV0ZWR7bWFyZ2luOjRweCAwIDA7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjQ1fS5sb2dpbi1zdGF0dXN7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjE0cHg7cGFkZGluZzoycHggMH0ubG9naW4tc3Bpbm5lcnt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZsZXgtc2hyaW5rOjA7bWFyZ2luLXRvcDoycHg7Ym9yZGVyOjJweCBzb2xpZCByZ2JhKDE5NywxMDEsNjEsLjE2KTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLXJhZGl1czo5OTlweDthbmltYXRpb246bG9naW5TcGluIC44cyBsaW5lYXIgaW5maW5pdGV9LnBhc3N3b3JkLWZpZWxke3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXJ9LnBhc3N3b3JkLWlucHV0e3BhZGRpbmctcmlnaHQ6NzhweDttaW4taGVpZ2h0OjQ2cHh9LnBhc3N3b3JkLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDo4cHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjZweCA4cHg7Ym9yZGVyLXJhZGl1czo4cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0ucGFzc3dvcmQtdG9nZ2xlOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnBhc3N3b3JkLXRvZ2dsZTpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fUBrZXlmcmFtZXMgbG9naW5TcGluezAle3RyYW5zZm9ybTpyb3RhdGUoMCl9dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0uYnRuOmRpc2FibGVke2N1cnNvcjpub3QtYWxsb3dlZDtvcGFjaXR5Oi43Mjt0cmFuc2Zvcm06bm9uZTtib3gtc2hhZG93Om5vbmV9LmxvZ2luLWJvZHkgLmZpZWxke21hcmdpbi1ib3R0b206MjBweH0ubG9naW4tYm9keSAuaGludHttYXJnaW4tdG9wOjEwcHh9LmxvZ2luLWJvZHkgLmVycm9yLW1lc3NhZ2V7bWFyZ2luLXRvcDoxMHB4O21hcmdpbi1ib3R0b206MH0ubW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjV9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWJvZHl7cGFkZGluZy10b3A6MTZweDtwYWRkaW5nLWJvdHRvbTo4cHh9LnNlc3Npb24tbW9kYWwgLmZpZWxkOmxhc3Qtb2YtdHlwZXttYXJnaW4tYm90dG9tOjZweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVye2ZsZXgtc2hyaW5rOjA7cGFkZGluZzoxMnB4IDIycHggMThweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVyIC5lcnJvci1tZXNzYWdle21hcmdpbi10b3A6OHB4O21hcmdpbi1ib3R0b206MH0ubW9kZS1jYXJkc3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjZweH0ubW9kZS1jYXJke2ZsZXg6MSAxIDA7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjNweDtwYWRkaW5nOjEwcHggOHB4O2JvcmRlcjoxLjVweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMik7Ym9yZGVyLXJhZGl1czoxMHB4O2JhY2tncm91bmQ6I2ZmZjk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3RleHQtYWxpZ246Y2VudGVyO291dGxpbmU6bm9uZX0ubW9kZS1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjojYzU2NTNkNTk7YmFja2dyb3VuZDojZmZmY30ubW9kZS1jYXJkLmFjdGl2ZXtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNmZmY3ZWZmMjtib3gtc2hhZG93OjAgMCAwIDEuNXB4IHZhcigtLWFjY2VudC1tdXRlZCl9Lm1vZGUtY2FyZDpmb2N1cy12aXNpYmxle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMS41cHggdmFyKC0tYWNjZW50LW11dGVkKX0ubW9kZS1jYXJkLWxhYmVse2ZvbnQtc2l6ZTouOHJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjN9Lm1vZGUtY2FyZC1kZXNje2ZvbnQtc2l6ZTouNjhyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS4zfS5tb2RlLWNhcmQuYWN0aXZlIC5tb2RlLWNhcmQtbGFiZWx7Y29sb3I6dmFyKC0tYWNjZW50KX0ubW9kZS1jYXJkLmRpc2FibGVke29wYWNpdHk6LjQ1O2N1cnNvcjpub3QtYWxsb3dlZDtwb2ludGVyLWV2ZW50czpub25lfS5tb2RlLWNhcmQuZGlzYWJsZWQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMztiYWNrZ3JvdW5kOiNmZmY5fS5tb2RlLWNhcmQuZGlzYWJsZWQgLm1vZGUtY2FyZC1sYWJlbCwubW9kZS1jYXJkLmRpc2FibGVkIC5tb2RlLWNhcmQtZGVzY3tjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ubW9kZS1jYXJkLmFjdGl2ZS5kaXNhYmxlZHtib3gtc2hhZG93Om5vbmV9LnBhc3N3b3JkLWlucHV0W2RhdGEtZXJyb3I9dHJ1ZV0sLnBhc3N3b3JkLWlucHV0W2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1kYW5nZXItbXV0ZWQpfS5wYXNzd29yZC1pbnB1dFtkYXRhLWVycm9yPXRydWVdKy5wYXNzd29yZC10b2dnbGUsLnBhc3N3b3JkLWlucHV0W2FyaWEtaW52YWxpZD10cnVlXSsucGFzc3dvcmQtdG9nZ2xle2NvbG9yOnZhcigtLWRhbmdlcil9LnBhc3N3b3JkLWlucHV0OmZvY3VzKy5wYXNzd29yZC10b2dnbGV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ucGFzc3dvcmQtdG9nZ2xlOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKSBzY2FsZSguOTgpfS5wYXNzd29yZC1pbnB1dDo6LW1zLXJldmVhbCwucGFzc3dvcmQtaW5wdXQ6Oi1tcy1jbGVhcntkaXNwbGF5Om5vbmV9LnBhc3N3b3JkLWlucHV0Ojotd2Via2l0LWNyZWRlbnRpYWxzLWF1dG8tZmlsbC1idXR0b24sLnBhc3N3b3JkLWlucHV0Ojotd2Via2l0LWNvbnRhY3RzLWF1dG8tZmlsbC1idXR0b257dmlzaWJpbGl0eTpoaWRkZW47ZGlzcGxheTpub25lIWltcG9ydGFudDtwb2ludGVyLWV2ZW50czpub25lO3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjB9LnBhc3N3b3JkLWlucHV0W3R5cGU9dGV4dF17Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKX0uZmllbGR7bWFyZ2luLWJvdHRvbToxOHB4fS5maWVsZC1sYWJlbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO21hcmdpbi1ib3R0b206OHB4fS5maWVsZC1pbnB1dHt3aWR0aDoxMDAlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44NzVyZW07YmFja2dyb3VuZDojZmZmZmZmYmY7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMjIpO2JvcmRlci1yYWRpdXM6MTJweDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3BhZGRpbmc6MTJweCAxNHB4O291dGxpbmU6bm9uZTt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGJveC1zaGFkb3cgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7bWluLWhlaWdodDo0NHB4fS5maWVsZC1pbnB1dDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgMCAyMHB4ICNjNTY1M2QxNDtiYWNrZ3JvdW5kOiNmZmZmZmZlNn0uZmllbGQtaW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5tb2RhbC1iYWNrZHJvcHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3otaW5kZXg6NTAwO2JhY2tncm91bmQ6IzE0MGUwODU3O2JhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3BhZGRpbmctdG9wOm1heCgzMnB4LHZhcigtLXdhbmQtc2FmZS10b3ApKTtwYWRkaW5nLWJvdHRvbTptYXgoMzJweCx2YXIoLS13YW5kLXNhZmUtYm90dG9tKSk7cGFkZGluZy1sZWZ0Om1heCgzMnB4LHZhcigtLXdhbmQtc2FmZS1sZWZ0KSk7cGFkZGluZy1yaWdodDptYXgoMzJweCx2YXIoLS13YW5kLXNhZmUtcmlnaHQpKTthbmltYXRpb246bGlxdWlkQmFja2Ryb3BJbiAuMjhzIHZhcigtLWVhc2Utb3V0LWV4cG8sIGN1YmljLWJlemllciguMTYsIDEsIC4zLCAxKSkgYm90aH0ubW9kYWwtYmFja2Ryb3AuY2xvc2luZ3thbmltYXRpb246bGlxdWlkQmFja2Ryb3BPdXQgLjE4cyB2YXIoLS1lYXNlLWluLW91dC1zbW9vdGgsIGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpKSBib3RoO3BvaW50ZXItZXZlbnRzOm5vbmV9QGtleWZyYW1lcyBsaXF1aWRCYWNrZHJvcEluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fUBrZXlmcmFtZXMgbGlxdWlkQmFja2Ryb3BPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19Lm1vZGFse3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjU2MHB4O21heC1oZWlnaHQ6ODh2aDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2JhY2tncm91bmQ6I2ZmZmNmN2JkO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjYpO2JvcmRlci1yYWRpdXM6MjZweDtvdmVyZmxvdzpoaWRkZW47YmFja2Ryb3AtZmlsdGVyOmJsdXIoNDBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig0MHB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMzJweCA4MHB4IC0xNnB4ICMxNDBlMDg1NywwIDhweCAyNHB4IC04cHggIzE0MGUwODJlLDAgMCAwIC41cHggIzdkNWIzOTE0LGluc2V0IDAgMXB4ICNmZmZmZmZiMzthbmltYXRpb246bGlxdWlkTW9kYWxJbiAuMzJzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKSBib3RofS5tb2RhbC1iYWNrZHJvcC5jbG9zaW5nIC5tb2RhbHthbmltYXRpb246bGlxdWlkTW9kYWxPdXQgLjE4cyB2YXIoLS1lYXNlLWluLW91dC1zbW9vdGgsIGN1YmljLWJlemllciguNCwgMCwgLjIsIDEpKSBib3RofUBrZXlmcmFtZXMgbGlxdWlkTW9kYWxJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45NCkgdHJhbnNsYXRlWSgxMnB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgbGlxdWlkTW9kYWxPdXR7MCV7b3BhY2l0eToxO3RyYW5zZm9ybTpzY2FsZSgxKSB0cmFuc2xhdGVZKDApfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjk3KSB0cmFuc2xhdGVZKDRweCl9fUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7Lm1vZGFsLWJhY2tkcm9wLC5tb2RhbC1iYWNrZHJvcC5jbG9zaW5nLC5tb2RhbCwubW9kYWwtYmFja2Ryb3AuY2xvc2luZyAubW9kYWx7YW5pbWF0aW9uOm5vbmUhaW1wb3J0YW50fX1Ac3VwcG9ydHMgbm90ICgoYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpIG9yICgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSl7Lm1vZGFsLWJhY2tkcm9we2JhY2tncm91bmQ6IzE0MGUwODk5fS5tb2RhbHtiYWNrZ3JvdW5kOiNmZmZhZjI7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyZX19QG1lZGlhKHByZWZlcnMtY29sb3Itc2NoZW1lOmRhcmspey5tb2RhbC1iYWNrZHJvcHtiYWNrZ3JvdW5kOiMwODA1MDI4MH1Ac3VwcG9ydHMgbm90ICgoYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpIG9yICgtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSl7Lm1vZGFsLWJhY2tkcm9we2JhY2tncm91bmQ6IzA4MDUwMmM3fX19LnNlc3Npb24tbW9kYWwgLm1vZGFsLWhlYWRlciwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLWhlYWRlcntwYWRkaW5nOjI0cHggMjhweCAxOHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTZweDttaW4taGVpZ2h0OjB9LnNlc3Npb24tbW9kYWwgLm1vZGFsLXRpdGxlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtdGl0bGUtZ3JvdXAgLm1vZGFsLXRpdGxle2ZvbnQtc2l6ZToxLjMxMjVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDIyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjJ9LnNlc3Npb24tbW9kYWwgLm1vZGFsLXN1YnRpdGxlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo1cHg7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjQwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjU7bWF4LXdpZHRoOjQ0Y2h9Lm1vZGFsLWNsb3NlLWJ0biwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3QsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1oZWFkZXI+LmJ0bi1pY29uLmJ0bi1naG9zdHt3aWR0aDozMnB4O2hlaWdodDozMnB4O21pbi13aWR0aDozMnB4O21pbi1oZWlnaHQ6MzJweDtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojN2Q1YjM5MTI7Ym9yZGVyOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7ZmxleC1zaHJpbms6MDtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMjhzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKSxib3gtc2hhZG93IC4xOHMgZWFzZX0ubW9kYWwtY2xvc2UtYnRuIHN2Z3tkaXNwbGF5OmJsb2NrO3BvaW50ZXItZXZlbnRzOm5vbmV9Lm1vZGFsLWNsb3NlLWJ0bjpob3Zlciwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6aG92ZXIsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1oZWFkZXI+LmJ0bi1pY29uLmJ0bi1naG9zdDpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxZjtjb2xvcjp2YXIoLS1kYW5nZXIpO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpO2JveC1zaGFkb3c6MCAycHggOHB4ICNiMjRmNDUyZX0ubW9kYWwtY2xvc2UtYnRuOmFjdGl2ZSwuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6YWN0aXZlLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtaGVhZGVyPi5idG4taWNvbi5idG4tZ2hvc3Q6YWN0aXZle2JhY2tncm91bmQ6I2IyNGY0NTMzO3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpIHNjYWxlKC45Mik7dHJhbnNpdGlvbi1kdXJhdGlvbjouMDZzfS5tb2RhbC1jbG9zZS1idG46Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjNweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtYm9keSwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW1vZGFsLWJvZHl7cGFkZGluZzoyMHB4IDI4cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWZvb3RlcntwYWRkaW5nOjE2cHggMjhweCAyMnB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LnNlc3Npb24tbW9kYWwgLmZpZWxkLWlucHV0LC5zZXR0aW5ncy1tb2RhbCAuZmllbGQtaW5wdXQsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkIC5maWVsZC1pbnB1dCwuc2Vzc2lvbi1tb2RhbCBzZWxlY3QuZmllbGQtaW5wdXQsLnNldHRpbmdzLW1vZGFsIHNlbGVjdC5maWVsZC1pbnB1dHtiYWNrZ3JvdW5kOiNmZmZmZmZjNztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xNCk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6MTFweCAxNHB4O2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMS41cHggIzdkNWIzOTBhO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xNXMgZWFzZSxiYWNrZ3JvdW5kIC4xNXMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXNzaW9uLW1vZGFsIC5maWVsZC1pbnB1dDpob3Zlciwuc2V0dGluZ3MtbW9kYWwgLmZpZWxkLWlucHV0OmhvdmVye2JvcmRlci1jb2xvcjojN2Q1YjM5M2Q7YmFja2dyb3VuZDojZmZmZmZmZWJ9LnNlc3Npb24tbW9kYWwgLmZpZWxkLWlucHV0OmZvY3VzLC5zZXR0aW5ncy1tb2RhbCAuZmllbGQtaW5wdXQ6Zm9jdXMsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkIC5maWVsZC1pbnB1dDpmb2N1cywuc2Vzc2lvbi1tb2RhbCBzZWxlY3QuZmllbGQtaW5wdXQ6Zm9jdXMsLnNldHRpbmdzLW1vZGFsIHNlbGVjdC5maWVsZC1pbnB1dDpmb2N1c3tiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxLjVweCAjN2Q1YjM5MGEsMCAwIDAgM3B4IHZhcigtLWFjY2VudC1tdXRlZCl9LnNlc3Npb24tbW9kYWwgLm1vZGUtY2FyZHN7Z2FwOjhweH0uc2Vzc2lvbi1tb2RhbCAubW9kZS1jYXJke3BhZGRpbmc6MTJweCAxMHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOiNmZmY5O2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwODt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2UsYm94LXNoYWRvdyAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXNzaW9uLW1vZGFsIC5tb2RlLWNhcmQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZWI7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTE0fS5zZXNzaW9uLW1vZGFsIC5tb2RlLWNhcmQuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjIsI2ZmZjBlMGQxKTtib3JkZXI6LjVweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC44KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAwIDAgMXB4ICNjNTY1M2Q1MiwwIDAgMCA0cHggI2M1NjUzZDI0LDAgOHB4IDIycHggLTRweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZmZmZmYyLGluc2V0IDAgLTFweCAjYzU2NTNkMTQ7dHJhbnNmb3JtOm5vbmV9LnNlc3Npb24tbW9kYWwgLm1vZGUtY2FyZC5hY3RpdmUgLm1vZGUtY2FyZC1sYWJlbHtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXNzaW9uLW1vZGFsIC50b29sLWNhcmR7YmFja2dyb3VuZDojZmZmZmZmYjM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTIpO2JvcmRlci1yYWRpdXM6MTRweDtwYWRkaW5nOjE0cHggMTZweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZSxib3JkZXItY29sb3IgLjE4cyBlYXNlLGJveC1zaGFkb3cgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMThzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2Vzc2lvbi1tb2RhbCAudG9vbC1jYXJkOmhvdmVye2JhY2tncm91bmQ6I2ZmZjtib3JkZXItY29sb3I6IzdkNWIzOTM4O3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpO2JveC1zaGFkb3c6MCA4cHggMjBweCAjN2Q1YjM5MWF9LnNlc3Npb24tbW9kYWwgLnRvb2wtY2FyZC5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdmMiwjZmZmMGUwZDEpO2JvcmRlcjouNXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTZweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAxcHggI2M1NjUzZDRkLDAgMCAwIDRweCAjYzU2NTNkMjQsMCAxMHB4IDI4cHggLTZweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZmZmZmYyLGluc2V0IDAgLTFweCAjYzU2NTNkMTQ7dHJhbnNmb3JtOm5vbmV9LnNlc3Npb24tbW9kYWwgLnJlY2VudC1wYXRoLWJ1YmJsZXtiYWNrZ3JvdW5kOiNmZmZmZmY4Yztib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xMik7Ym94LXNoYWRvdzowIDFweCAycHggIzdkNWIzOTA4O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsYm9yZGVyLWNvbG9yIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZX0uc2Vzc2lvbi1tb2RhbCAucmVjZW50LXBhdGgtYnViYmxlOmhvdmVye2JhY2tncm91bmQ6I2ZmZjdlZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGV7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjZweCA4cHggNnB4IDEycHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOiM3ZDViMzkwZDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYm94LXNoYWRvdyAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE3O2JvcmRlci1jb2xvcjojN2Q1YjM5Mjl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZTpoYXMoLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmY3ZWYsI2ZmZWVkOCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgNHB4IDEycHggI2M1NjUzZDFmfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUtaWNvbntmbGV4LXNocmluazowO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RyYW5zaXRpb246Y29sb3IgLjE4cyBlYXNlLHRyYW5zZm9ybSAuMjhzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKX0uc2Vzc2lvbi1tb2RhbCAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlOmhhcyguc3dpdGNoLXRvZ2dsZTpjaGVja2VkKSAuc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWljb257Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06cm90YXRlKDhkZWcpfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUtbGFiZWx7Zm9udC1zaXplOi43NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAwNWVtO2NvbG9yOmluaGVyaXQ7dHJhbnNpdGlvbjpjb2xvciAuMThzIGVhc2V9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5OjA7d2lkdGg6MDtoZWlnaHQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWlubGluZS10b2dnbGUgLnN3aXRjaC1zbGlkZXJ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MzJweDtoZWlnaHQ6MjBweDttaW4td2lkdGg6MzJweDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojN2Q1YjM5Mzg7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggIzdkNWIzOTJlO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMjJzIGVhc2UsYm94LXNoYWRvdyAuMjJzIGVhc2V9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXNsaWRlcjphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDoycHg7bGVmdDoycHg7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiNmZmY7Ym94LXNoYWRvdzowIDEuNXB4IDNweCAjMTQwZTA4MzgsMCAwIDAgLjVweCAjN2Q1YjM5MGY7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI0cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpjaGVja2VkKy5zd2l0Y2gtc2xpZGVye2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCAjMDAwMDAwMWF9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpjaGVja2VkKy5zd2l0Y2gtc2xpZGVyOmFmdGVye3RyYW5zZm9ybTp0cmFuc2xhdGUoMTJweCl9LnNlc3Npb24tbW9kYWwgLnNlc3Npb24taW5saW5lLXRvZ2dsZSAuc3dpdGNoLXRvZ2dsZTpmb2N1cy12aXNpYmxlKy5zd2l0Y2gtc2xpZGVye291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5zZXNzaW9uLW1vZGFsIC5zZXNzaW9uLWtpbmQtaGludC1yb3d7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxNHB4fS5zZXNzaW9uLW1vZGFsIC5zdWdnZXN0aW9uc3tiYWNrZ3JvdW5kOiNmZmZjZjdmNTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xNCk7Ym9yZGVyLXJhZGl1czoxMnB4O2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MGQsMCAxMnB4IDI4cHggLThweCAjMTQwZTA4MmU7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigyMHB4KSBzYXR1cmF0ZSgxODAlKTtvdmVyZmxvdzpoaWRkZW59LnNlc3Npb24tbW9kYWwgLnN1Z2dlc3Rpb24taXRlbTpob3ZlcntiYWNrZ3JvdW5kOiNlOGM1YWU1Mn0uc2Vzc2lvbi1tb2RhbCAuZXJyb3ItbWVzc2FnZSwuc2V0dGluZ3MtbW9kYWwgLmVycm9yLW1lc3NhZ2V7YmFja2dyb3VuZDojYjI0ZjQ1MWE7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDE3OCw3OSw2OSwuMik7Y29sb3I6dmFyKC0tZGFuZ2VyKTtib3JkZXItcmFkaXVzOjEwcHg7cGFkZGluZzoxMHB4IDEycHg7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2Vzc2lvbi1tb2RhbCAuZmllbGQtbGFiZWwsLnNldHRpbmdzLW1vZGFsIC5maWVsZC1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwO2ZvbnQtc2l6ZTouODEyNXJlbTttYXJnaW4tYm90dG9tOjhweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4tcHJpbWFyeSwuc2V0dGluZ3MtbW9kYWwgLmJ0bi1wcmltYXJ5e2JveC1zaGFkb3c6MCA2cHggMTZweCAtNHB4ICNjNTY1M2Q2NiwwIDJweCA2cHggLTJweCAjYzU2NTNkNGQsaW5zZXQgMCAxcHggI2ZmZjM7Ym9yZGVyLXJhZGl1czoxMnB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXIgLmJ0bi1wcmltYXJ5OmhvdmVyLC5zZXR0aW5ncy1tb2RhbCAuYnRuLXByaW1hcnk6aG92ZXJ7Ym94LXNoYWRvdzowIDEwcHggMjRweCAtNHB4ICNjNTY1M2Q3NSwwIDRweCAxMHB4IC0ycHggI2M1NjUzZDU3LGluc2V0IDAgMXB4ICNmZmZmZmY0MH0uc2Vzc2lvbi1tb2RhbCAuYnRuLXNlY29uZGFyeSwuc2V0dGluZ3MtbW9kYWwgLmJ0bi1zZWNvbmRhcnl7YmFja2dyb3VuZDojZmZmZmZmYzc7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTQpO2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwYTtib3JkZXItcmFkaXVzOjEycHh9LnNlc3Npb24tbW9kYWwgLmJ0bi1zZWNvbmRhcnk6aG92ZXIsLnNldHRpbmdzLW1vZGFsIC5idG4tc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQ6I2ZmZjtib3JkZXItY29sb3I6IzdkNWIzOTNkO2JveC1zaGFkb3c6MCA0cHggMTJweCAjN2Q1YjM5MTR9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zaWRlYmFye2JvcmRlci1yaWdodDoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtwYWRkaW5nLXJpZ2h0OjEycHh9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zaWRlYmFyLXRpdGxle2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOi4wOGVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFic3tnYXA6MnB4fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFie3BhZGRpbmc6MTFweCAxNHB4O2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JveC1zaGFkb3c6bm9uZTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNHMgZWFzZSxjb2xvciAuMTRzIGVhc2UsdHJhbnNmb3JtIC4xNHMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFiOmJlZm9yZXtkaXNwbGF5Om5vbmV9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10YWI6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MGY7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt0cmFuc2Zvcm06bm9uZTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10YWIuYWN0aXZle2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmY2Y3ZjIsI2ZmZjRlOGM3KTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2M1NjUzZDQwLGluc2V0IDAgMXB4ICNmZmZmZmZlNixpbnNldCAwIC0xcHggI2M1NjUzZDE0LDAgNHB4IDE0cHggLTRweCAjYzU2NTNkMzgsMCAxcHggM3B4ICM3ZDViMzkwZn0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYi5hY3RpdmUgLnNldHRpbmdzLXRhYi1tZXRhe2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXRhYi1tYWlue2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzotLjAwNWVtfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtdGFiLW1ldGF7Zm9udC1zaXplOi43MTI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcGFuZWwtaGVhZGVye21hcmdpbjowIDAgMTZweDtwYWRkaW5nLWJvdHRvbToxNHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wOCl9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1wYW5lbC10aXRsZXtmb250LXNpemU6MS4xODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzotLjAyZW19LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1wYW5lbC1kZXNje2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWNhcmQsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYWJvdXQtaW5mbywuc2V0dGluZ3MtbW9kYWwgLnByZXNldC1pdGVte2JhY2tncm91bmQ6I2ZmZmZmZmE2O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTZweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFib3V0LXJvd3tib3JkZXItYm90dG9tLWNvbG9yOiM3ZDViMzkxNH0uc2V0dGluZ3MtbW9kYWwgLnN3aXRjaC1jYXJkLWxpc3R7Z2FwOjhweH0uc2V0dGluZ3MtbW9kYWwgLnN3aXRjaC1jYXJke2JhY2tncm91bmQ6I2ZmZjk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMSk7Ym9yZGVyLXJhZGl1czoxNHB4O2JveC1zaGFkb3c6MCAxcHggMnB4ICM3ZDViMzkwODt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xNnMgZWFzZTtiYWNrZHJvcC1maWx0ZXI6bm9uZTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpub25lfS5zZXR0aW5ncy1tb2RhbCAuc3dpdGNoLWNhcmQ6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZDk7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTBmfS5zZXR0aW5ncy1tb2RhbCAuc3dpdGNoLWNhcmQ6aGFzKC5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQpe2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmN2VmLCNmZmYxZGUpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLWFjY2VudC1tdXRlZCksMCA0cHggMTJweCAjYzU2NTNkMWF9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy10b2dnbGUtcm93LC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcmFuZ2Utcm93e2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA4KTtib3JkZXItcmFkaXVzOjEycHg7Ym94LXNoYWRvdzowIDFweCAxcHggIzdkNWIzOTA1O2JhY2tkcm9wLWZpbHRlcjpub25lOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOm5vbmV9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1jYXJkLWljb24sLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1zZWN0aW9uLWljb257YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNjNTY1M2QyOSwjYzU2NTNkMGYpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4xOCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmOTtjb2xvcjp2YXIoLS1hY2NlbnQpfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9ue2JhY2tncm91bmQ6I2ZmZmZmZmE2O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO2JvcmRlci1yYWRpdXM6MTRweDtib3gtc2hhZG93OjAgMXB4IDJweCAjN2Q1YjM5MDg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMTZzIGVhc2U7YmFja2Ryb3AtZmlsdGVyOm5vbmU7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6bm9uZX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbjpob3ZlcntiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyLWNvbG9yOiM3ZDViMzkzMzt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzdkNWIzOTE0fS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uLnNlbGVjdGVkLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uW2FyaWEtcHJlc3NlZD10cnVlXXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZjdlZiwjZmZmMWRlKTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgNHB4IDEycHggI2M1NjUzZDFmfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtY29ubmVjdC11cmwtYm94e2JhY2tncm91bmQ6IzdkNWIzOTBkO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEyKTtib3JkZXItcmFkaXVzOjEycHh9LnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1hY3Rpb25zLXN0aWNreXtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZmNmNzAwLCNmZmZjZjdkOSAyOHB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cig4cHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoOHB4KX0uc2V0dGluZ3MtbW9kYWwgLnNldHRpbmdzLXNlY3Rpb24tdGl0bGV7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDA1ZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX1AbWVkaWEobWF4LXdpZHRoOjY0MHB4KXsuc2Vzc2lvbi1tb2RhbCAubW9kYWwtaGVhZGVyLC5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtbW9kYWwtaGVhZGVye3BhZGRpbmc6MTZweCAxOHB4IDE0cHh9LnNlc3Npb24tbW9kYWwgLm1vZGFsLWJvZHksLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC1ib2R5e3BhZGRpbmc6MTRweCAxOHB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXJ7cGFkZGluZzoxMnB4IDE4cHggMThweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtdGl0bGUsLnNldHRpbmdzLW1vZGFsIC5zZXR0aW5ncy1tb2RhbC10aXRsZS1ncm91cCAubW9kYWwtdGl0bGV7Zm9udC1zaXplOjEuMTI1cmVtfS5zZXR0aW5ncy1tb2RhbCAuc2V0dGluZ3MtcGFuZWwtdGl0bGV7Zm9udC1zaXplOjEuMDYyNXJlbX19LnNpZGViYXJ7YmFja2dyb3VuZDojZmZmY2Y3Yjg7Ym9yZGVyLXJpZ2h0Oi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNTUpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDM2cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMzZweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkwZiw0cHggMCAzMnB4IC04cHggIzE0MGUwODJlfS5zaWRlYmFyLm9wZW57Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkwZiwxMnB4IDAgNDhweCAtMTJweCAjMTQwZTA4NDd9LnNpZGViYXIucGlubmVke2JveC1zaGFkb3c6MCAwIDAgLjVweCAjN2Q1YjM5MGYsMnB4IDAgMTJweCAtOHB4ICMxNDBlMDgxZn0uZHJhd2VyLWJhY2tkcm9we2JhY2tncm91bmQ6IzE0MGUwODUyO2JhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCl9LmRyYXdlci1iYWNrZHJvcC5vcGVue2JhY2tkcm9wLWZpbHRlcjpibHVyKDE4cHgpIHNhdHVyYXRlKDE0MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSl9LnNpZGViYXItaGVhZGVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjA2KTtwYWRkaW5nOjE0cHggMTZweH0uc2lkZWJhci10aXRsZXtmb250LXNpemU6LjkzNzVyZW07Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDEyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uc2Vzc2lvbi1jb3VudHtiYWNrZ3JvdW5kOiM3ZDViMzkxNDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7cGFkZGluZzoycHggOXB4O2JvcmRlci1yYWRpdXM6OTk5cHg7Zm9udC1zaXplOi42ODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7bGluZS1oZWlnaHQ6MS41fS5zaWRlYmFyLWhlYWRlci1hY3Rpb25zIC5idG4tZ2hvc3QuYnRuLXNtLC5kcmF3ZXItY2xvc2UtYnRue3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7bWluLWhlaWdodDozMnB4O3BhZGRpbmc6MDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7Ym9yZGVyOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxjb2xvciAuMTZzIGVhc2UsdHJhbnNmb3JtIC4yMnMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpfS5zaWRlYmFyLWhlYWRlci1hY3Rpb25zIC5idG4tZ2hvc3QuYnRuLXNtOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTE0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmRyYXdlci1jbG9zZS1idG57YmFja2dyb3VuZDojN2Q1YjM5MTJ9LmRyYXdlci1jbG9zZS1idG46aG92ZXJ7YmFja2dyb3VuZDojYjI0ZjQ1MWY7Y29sb3I6dmFyKC0tZGFuZ2VyKTt0cmFuc2Zvcm06cm90YXRlKDkwZGVnKX0uZHJhd2VyLWNsb3NlLWJ0bjphY3RpdmV7YmFja2dyb3VuZDojYjI0ZjQ1MzM7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZykgc2NhbGUoLjkyKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LmRyYXdlci1jbG9zZS1idG46Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjNweH0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3d7YmFja2dyb3VuZDojZmZmY2Y3ZGI7Ym9yZGVyOi41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuNTUpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDI0cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMjRweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkxNCwwIDEycHggMjhweCAtOHB4ICMxNDBlMDgzODtib3JkZXItcmFkaXVzOjEycHg7cGFkZGluZzo2cHh9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVte2JvcmRlci1yYWRpdXM6OXB4O3BhZGRpbmc6OXB4IDEwcHg7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGNvbG9yIC4xNnMgZWFzZSxib3gtc2hhZG93IC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyB2YXIoLS1lYXNlLW91dC1leHBvKX0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3cgLm92ZXJmbG93LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmZlNiwjZmZmY2Y3OTkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym94LXNoYWRvdzowIDAgMCAuNXB4ICM3ZDViMzkxNCxpbnNldCAwIDFweCAjZmZmZmZmZDl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVtOmFjdGl2ZXtiYWNrZ3JvdW5kOiNjNTY1M2QxZjtjb2xvcjp2YXIoLS1hY2NlbnQpO3RyYW5zZm9ybTpzY2FsZSguOTgpfS5zZXNzaW9uLW1hbmFnZS1iYXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6OHB4O3BhZGRpbmc6NHB4IDRweCA0cHggMTBweDtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLWJvdHRvbToxMHB4O2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZX0uc2Vzc2lvbi1tYW5hZ2UtYmFyOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTBkfS5zZXNzaW9uLW1hbmFnZS1iYXIgLnNpZGViYXItaW50cm97Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsZXR0ZXItc3BhY2luZzouMDA1ZW19LnNlc3Npb24tbWFuYWdlLWJhci5hY3RpdmV7cG9zaXRpb246c3RpY2t5O3RvcDowO3otaW5kZXg6NjttYXJnaW46LTEwcHggLTEwcHggOHB4O3BhZGRpbmc6OXB4IDEwcHggOXB4IDZweDtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDojZmZmYmY1ZjA7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6c2F0dXJhdGUoMS4yKSBibHVyKDhweCk7YmFja2Ryb3AtZmlsdGVyOnNhdHVyYXRlKDEuMikgYmx1cig4cHgpO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JveC1zaGFkb3c6bm9uZX0uc2Vzc2lvbi1tYW5hZ2UtYmFyLmFjdGl2ZTpob3ZlcntiYWNrZ3JvdW5kOiNmZmZiZjVmMH0uc2Vzc2lvbi1tYW5hZ2UtZXhpdHtmbGV4LXNocmluazowO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtwYWRkaW5nOjA7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE0cyBlYXNlLGNvbG9yIC4xNHMgZWFzZTstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9LnNlc3Npb24tbWFuYWdlLWV4aXQ6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MWE7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uc2Vzc2lvbi1tYW5hZ2Utc3VtbWFyeXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21pbi13aWR0aDowO2ZsZXg6MTtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo1MDB9LnNlc3Npb24tbWFuYWdlLWNvdW50e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7bWluLXdpZHRoOjIwcHg7aGVpZ2h0OjE4cHg7cGFkZGluZzowIDZweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NzAwO2JvcmRlci1yYWRpdXM6OTk5cHg7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5zZXNzaW9uLW1hbmFnZS1zdW1tYXJ5LWxhYmVse2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo2MDB9LnNlc3Npb24tbWFuYWdlLXN1bW1hcnktbGFiZWwubXV0ZWR7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC13ZWlnaHQ6NTAwfS5zZXNzaW9uLW1hbmFnZS1hY3Rpb25ze2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmbGV4LXNocmluazowfS5zZXNzaW9uLW1hbmFnZS10b2dnbGV7Z2FwOjVweH0uY2xhdWRlLWhpc3RvcnktZGlyZWN0b3J5LWNsZWFyLWJ0bnttYXJnaW4tbGVmdDphdXRvfS5zZXNzaW9uLWdyb3VwLXRpdGxle3BhZGRpbmc6MTBweCA2cHggOHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjFlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uc2Vzc2lvbi1ncm91cC10aXRsZTpiZWZvcmV7d2lkdGg6M3B4O2hlaWdodDoxMnB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWFjY2VudCkscmdiYSgxOTcsMTAxLDYxLC40KSk7b3BhY2l0eToxfS5zZXNzaW9uLWl0ZW17YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2JvcmRlci1yYWRpdXM6MTFweDtwYWRkaW5nOjlweCAxMnB4O21hcmdpbi1ib3R0b206MnB4O2JveC1zaGFkb3c6bm9uZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjE2cyBlYXNlLGJvcmRlci1jb2xvciAuMTZzIGVhc2V9LnNlc3Npb24taXRlbTpiZWZvcmV7bGVmdDo0cHg7dG9wOjlweDtib3R0b206OXB4O3dpZHRoOjNweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYWNjZW50KSxyZ2JhKDE5NywxMDEsNjEsLjUpKX0uc2Vzc2lvbi1pdGVtOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTBmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudH0uc2Vzc2lvbi1pdGVtOmhvdmVyOmJlZm9yZXtvcGFjaXR5OjB9LnNlc3Npb24taXRlbS5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdlYiwjZmZmNGU4YmQpO2JvcmRlci1jb2xvcjojYzU2NTNkNDc7Ym94LXNoYWRvdzppbnNldCAwIDFweCAjZmZmZmZmOGN9LnNlc3Npb24taXRlbS5hY3RpdmU6YmVmb3Jle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGVZKDEpfS5zZXNzaW9uLWl0ZW0uc2VsZWN0ZWR7YmFja2dyb3VuZDojYzU2NTNkMTc7Ym9yZGVyLWNvbG9yOiNjNTY1M2QyZX0uc2Vzc2lvbi1pdGVtLnNlbGVjdGVkOmJlZm9yZXtvcGFjaXR5Oi43O3RyYW5zZm9ybTpzY2FsZVkoMSl9LnNlc3Npb24taXRlbTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45OTIpO3RyYW5zaXRpb24tZHVyYXRpb246LjA4c30uc2Vzc2lvbi10aXRsZSwuc2Vzc2lvbi1jb21tYW5ke2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbX0uc2Vzc2lvbi10aXRsZS1yb3d7Z2FwOjEwcHh9LnNlc3Npb24tdGltZXtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5zZXNzaW9uLWFjdGl2aXR5e29wYWNpdHk6MTtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtd2VpZ2h0OjUwMH0uc2Vzc2lvbi1zdGF0dXN7cGFkZGluZzoycHggOHB4O2ZvbnQtc2l6ZTouNjI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDJlbX0uc2Vzc2lvbi1pZHtiYWNrZ3JvdW5kOiM3ZDViMzkxNDtjb2xvcjp2YXIoLS10ZXh0LXRlcnRpYXJ5KTtmb250LXNpemU6LjYyNXJlbTtwYWRkaW5nOjEuNXB4IDZweDtib3JkZXItcmFkaXVzOjRweH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWluLXdpZHRoOjI4cHg7bWluLWhlaWdodDoyOHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6IzdkNWIzOTBmO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2JvcmRlcjpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTZzIGVhc2UsY29sb3IgLjE2cyBlYXNlLHRyYW5zZm9ybSAuMThzIGN1YmljLWJlemllciguMzQsMS40LC42NCwxKX0uc2Vzc2lvbi1hY3Rpb24tYnRuOmhvdmVye2JhY2tncm91bmQ6IzdkNWIzOTI0O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9LnNlc3Npb24tYWN0aW9uLWJ0bi5kZWxldGUtYnRuOmhvdmVye2JhY2tncm91bmQ6I2IyNGY0NTI0O2NvbG9yOnZhcigtLWRhbmdlcil9LnNlc3Npb24tYWN0aW9uLWJ0bi5tZXJnZS1idG46aG92ZXJ7YmFja2dyb3VuZDojNGY3YTU4Mjk7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnNlc3Npb24tYWN0aW9uLWJ0bjphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LnNlc3Npb24tYWN0aW9uLWJ0bjpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5zZXNzaW9uLW1hbmFnZS1jaGVjayBzcGFue3dpZHRoOjIwcHg7aGVpZ2h0OjIwcHg7Ym9yZGVyLXJhZGl1czo2cHg7Ym9yZGVyOjEuNXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yMik7YmFja2dyb3VuZDojZmZmOTtib3gtc2hhZG93Omluc2V0IDAgMXB4IDFweCAjN2Q1YjM5MGE7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlfS5zZXNzaW9uLW1hbmFnZS1jaGVjayBpbnB1dDpjaGVja2VkK3NwYW57YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAxcHggM3B4ICNjNTY1M2Q0ZCxpbnNldCAwIDFweCAjZmZmM30uc2Vzc2lvbi1tYW5hZ2UtY2hlY2sgaW5wdXQ6Y2hlY2tlZCtzcGFuOmFmdGVye2NvbnRlbnQ6IiI7d2lkdGg6NnB4O2hlaWdodDoxMHB4O2JvcmRlci1yaWdodDoycHggc29saWQgI2ZmZjtib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZmZmO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgtMXB4LC0xcHgpfS5zaWRlYmFyLWZvb3RlcntiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4wNik7cGFkZGluZzoxNHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57YmFja2dyb3VuZDojZmZmZmZmNzM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMDYpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjhweCA0cHg7Z2FwOjRweDtmb250LXNpemU6LjYyNXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNnMgZWFzZSxib3JkZXItY29sb3IgLjE2cyBlYXNlLGNvbG9yIC4xNnMgZWFzZSx0cmFuc2Zvcm0gLjE2cyBlYXNlLGJveC1zaGFkb3cgLjE2cyBlYXNlfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG46aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmZDk7Ym9yZGVyLWNvbG9yOiM3ZDViMzkyOTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JveC1zaGFkb3c6MCAycHggOHB4ICM3ZDViMzkwZn0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk2KTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5hY3RpdmV7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdmMiwjZmZmMmU0YzcpO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTcsMTAxLDYxLC4yOCk7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxNnB4KSBzYXR1cmF0ZSgxODAlKTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDE2cHgpIHNhdHVyYXRlKDE4MCUpO2JveC1zaGFkb3c6MCAzcHggMTBweCAtM3B4ICNjNTY1M2QzOCxpbnNldCAwIDFweCAjZmZmZmZmYjN9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bi5zaWRlYmFyLWxvZ291dDpob3ZlcntiYWNrZ3JvdW5kOiNiMjRmNDUxNDtib3JkZXItY29sb3I6I2IyNGY0NTMzO2NvbG9yOnZhcigtLWRhbmdlcik7b3BhY2l0eToxfS5zaWRlYmFyLWZvb3RlciAuYnRuLXByaW1hcnl7Ym94LXNoYWRvdzowIDZweCAxNnB4IC00cHggI2M1NjUzZDY2LDAgMnB4IDZweCAtMnB4ICNjNTY1M2Q0ZCxpbnNldCAwIDFweCAjZmZmMztib3JkZXItcmFkaXVzOjEycHh9LnNpZGViYXItZm9vdGVyIC5idG4tcHJpbWFyeTpob3Zlcntib3gtc2hhZG93OjAgMTBweCAyNHB4IC00cHggI2M1NjUzZDc1LDAgNHB4IDEwcHggLTJweCAjYzU2NTNkNTcsaW5zZXQgMCAxcHggI2ZmZmZmZjQwfS5zZXNzaW9ucy1saXN0OmVtcHR5OmJlZm9yZXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6LjgxMjVyZW07bGV0dGVyLXNwYWNpbmc6LjAxZW19QHN1cHBvcnRzIG5vdCAoKGJhY2tkcm9wLWZpbHRlcjogYmx1cigxcHgpKSBvciAoLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkpey5zaWRlYmFye2JhY2tncm91bmQ6I2ZmZmJmNWZhfS5kcmF3ZXItYmFja2Ryb3B7YmFja2dyb3VuZDojMTQwZTA4OGN9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93e2JhY2tncm91bmQ6I2ZmZmFmMn19Lm1vZGFsLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO3BhZGRpbmc6MThweCAyMnB4IDE2cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7ZmxleC1zaHJpbms6MDttaW4taGVpZ2h0OjU2cHh9Lm1vZGFsLXRpdGxle2ZvbnQtc2l6ZToxLjA2MjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5tb2RhbC1ib2R5e3BhZGRpbmc6MjJweDtvdmVyZmxvdy15OmF1dG87ZmxleDoxIDEgYXV0bzttaW4taGVpZ2h0OjB9Lm1vZGFsLWJvZHkgLmZpZWxke21hcmdpbi1ib3R0b206MTRweH0ubW9kYWwtYm9keSAuZmllbGQ6bGFzdC1vZi10eXBle21hcmdpbi1ib3R0b206MTZweH0uc2Vzc2lvbi1raW5kLWhpbnQtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHh9LnNlc3Npb24ta2luZC1oaW50LXJvdyAjc2Vzc2lvbi1raW5kLWRlc2NyaXB0aW9ue2ZsZXg6MSAxIGF1dG99LnNlc3Npb24taW5saW5lLXRvZ2dsZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3doaXRlLXNwYWNlOm5vd3JhcDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Y3Vyc29yOnBvaW50ZXI7dXNlci1zZWxlY3Q6bm9uZX0uc2Vzc2lvbi1pbmxpbmUtdG9nZ2xlLWxhYmVse2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uZmllbGQtaGludHttYXJnaW4tdG9wOjZweDtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNX0udG9vbC1jYXJke3dpZHRoOjEwMCU7dGV4dC1hbGlnbjpsZWZ0O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOiNmZmZmZmZhNjtwYWRkaW5nOjE0cHg7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgdmFyKC0tdHJhbnNpdGlvbi1mYXN0KSxib3gtc2hhZG93IHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS50b29sLWNhcmQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudC1zb2Z0KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTtib3gtc2hhZG93OjAgOHB4IDI0cHggIzU5M2EyMDFhO2JhY2tncm91bmQ6I2ZmZmZmZmQ5fS50b29sLWNhcmQuYWN0aXZle2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6I2ZmZjdlZmZhO2JveC1zaGFkb3c6MCAwIDAgMnB4IHZhcigtLWFjY2VudC1tdXRlZCksMCA2cHggMjBweCAjNTkzYTIwMTR9c2VsZWN0LmZpZWxkLWlucHV0e2FwcGVhcmFuY2U6bm9uZTstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kLWltYWdlOnVybCgiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxNCcgaGVpZ2h0PScxNCcgdmlld0JveD0nMCAwIDI0IDI0JyBmaWxsPSdub25lJyBzdHJva2U9JyUyMzhjNzM1Zicgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnJTNFJTNDcGF0aCBkPSdNNiA5bDYgNiA2LTYnLyUzRSUzQy9zdmclM0UiKTtiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAxNHB4IGNlbnRlcjtwYWRkaW5nLXJpZ2h0OjQwcHg7Y3Vyc29yOnBvaW50ZXJ9LnN1Z2dlc3Rpb25zLXdyYXB7cG9zaXRpb246cmVsYXRpdmV9LnN1Z2dlc3Rpb25ze3Bvc2l0aW9uOmFic29sdXRlO3RvcDpjYWxjKDEwMCUgKyA0cHgpO2xlZnQ6MDtyaWdodDowO3otaW5kZXg6NTA7YmFja2dyb3VuZDojZmZmYWY0ZmE7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO21heC1oZWlnaHQ6MjAwcHg7b3ZlcmZsb3cteTphdXRvfS5zdWdnZXN0aW9uLWl0ZW17d2lkdGg6MTAwJTt0ZXh0LWFsaWduOmxlZnQ7cGFkZGluZzoxMHB4IDEycHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2N1cnNvcjpwb2ludGVyO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44MTI1cmVtO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpfS5zdWdnZXN0aW9uLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDojZThjNWFlNTd9LnN1Z2dlc3Rpb24taXRlbSBzbWFsbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXJnaW4tdG9wOjJweH0ucmVjZW50LXBhdGhzLWJ1YmJsZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo1cHg7bWFyZ2luLXRvcDo2cHh9LnJlY2VudC1wYXRocy1idWJibGVzOmVtcHR5e2Rpc3BsYXk6bm9uZX0ucmVjZW50LXBhdGgtYnViYmxle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MnB4IDEwcHg7YmFja2dyb3VuZDojZThjNWFlMmU7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo5OTlweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6LjY4NzVyZW07Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7d2hpdGUtc3BhY2U6bm93cmFwO21heC13aWR0aDoxODBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpc30ucmVjZW50LXBhdGgtYnViYmxlOmhvdmVye2JhY2tncm91bmQ6I2U4YzVhZTY2O2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItaG92ZXIsIHZhcigtLWJvcmRlci1kZWZhdWx0KSk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0uZXJyb3ItbWVzc2FnZXtmb250LXNpemU6Ljc1cmVtO2NvbG9yOnZhcigtLWRhbmdlcik7cGFkZGluZzoxMHB4IDEycHg7YmFja2dyb3VuZDp2YXIoLS1kYW5nZXItbXV0ZWQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTttYXJnaW4tdG9wOjEycHg7YW5pbWF0aW9uOnNoYWtlIC4zcyBlYXNlfUBrZXlmcmFtZXMgc2hha2V7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZSgwKX0yNSV7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNHB4KX03NSV7dHJhbnNmb3JtOnRyYW5zbGF0ZSg0cHgpfX0uZmllbGQtaW5wdXRbZGF0YS1lcnJvcj10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1kYW5nZXItbXV0ZWQpfS5oaW50e2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXJnaW4tdG9wOjEycHh9LmVtcHR5LXN0YXRle3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6NDBweCAyMHB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODEyNXJlbX0uZW1wdHktc3RhdGUgc3Ryb25ne2Rpc3BsYXk6YmxvY2s7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouOTVyZW07bWFyZ2luLWJvdHRvbTo4cHg7Zm9udC13ZWlnaHQ6NjAwfS5oaWRkZW57ZGlzcGxheTpub25lIWltcG9ydGFudH0ub2ZmbGluZS1iYW5uZXJ7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjgwcHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTtiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpO2NvbG9yOiNmZmY7cGFkZGluZzo4cHggMTZweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1tZCk7Zm9udC1zaXplOi44MTI1cmVtO2ZvbnQtd2VpZ2h0OjUwMDt6LWluZGV4OjEwMDtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1lbGV2YXRlZCk7YW5pbWF0aW9uOnNsaWRlVXAgLjNzIGVhc2V9QGtleWZyYW1lcyBzbGlkZVVwezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoMjBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgwKX19Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo2cHg7aGVpZ2h0OjZweH06Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTU0ZDtib3JkZXItcmFkaXVzOjNweH06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTgwfS5zZXNzaW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo0cHh9LnNlc3Npb25zLWxpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LnNlc3Npb25zLWxpc3Q6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTQwO2JvcmRlci1yYWRpdXM6MnB4fS5zZXNzaW9ucy1saXN0Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTU2Nn06Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH1idXR0b246Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDowfUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5zaWRlYmFyLnBpbm5lZDpub3QoLmNvbGxhcHNlZCk6bm90KC5vcGVuKXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKTtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MH0ubWFpbi1sYXlvdXQuc2lkZWJhci1waW5uZWQ6bm90KC5zaWRlYmFyLWNvbGxhcHNlZCl7cGFkZGluZy1sZWZ0OjB9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiAwcHh9LnNpZGViYXJ7d2lkdGg6bWluKDMwMHB4LGNhbGMoMTAwdncgLSAyMHB4KSk7dG9wOjB9LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA2cHggNnB4O21pbi1oZWlnaHQ6MH0uYnRue21pbi1oZWlnaHQ6NDBweH0uYnRuLXNte21pbi1oZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTBweDtmb250LXNpemU6Ljc1cmVtO2hlaWdodDozNnB4fS5idG4taWNvbnt3aWR0aDozNnB4O2hlaWdodDozNnB4O21pbi1oZWlnaHQ6MzZweH0uY2hhdC1jb250YWluZXJ7cGFkZGluZzowIDEycHggMTJweH0uY2hhdC1tZXNzYWdle21heC13aWR0aDoxMDAlfS5zZXNzaW9uLWl0ZW17bWluLWhlaWdodDo1MnB4O3BhZGRpbmc6MTJweH0uc2Vzc2lvbi1hY3Rpb24tYnRue3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7bWluLXdpZHRoOjM2cHg7bWluLWhlaWdodDozNnB4fS5zZXNzaW9uLW1hbmFnZS1iYXIgLmJ0bnttaW4taGVpZ2h0OjMycHh9LmNsYXVkZS1oaXN0b3J5LXRvZ2dsZXttaW4taGVpZ2h0OjQwcHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRue21pbi1oZWlnaHQ6NDRweH0udHJlZS1pdGVte21pbi1oZWlnaHQ6NDRweDtwYWRkaW5nOjhweCAxMnB4fS5mb2xkZXItcGlja2VyLWl0ZW17bWluLWhlaWdodDo0NHB4fX1AbWVkaWEobWluLXdpZHRoOjc2OXB4KXsuZHJhd2VyLWJhY2tkcm9we2Rpc3BsYXk6bm9uZX19QG1lZGlhKG1heC13aWR0aDo2NDBweCl7OnJvb3R7LS1zaWRlYmFyLXdpZHRoOiAyODBweDstLWZpbGUtcGFuZWwtd2lkdGg6IDEwMCV9LmFwcC1jb250YWluZXJ7LS1sYXlvdXQtbWFpbi1maWxlLXBhbmVsLXdpZHRoOiAwcHh9aHRtbCxib2R5e21pbi1oZWlnaHQ6MTAwZHZoO2hlaWdodDoxMDBkdmh9Ym9keXtvdmVyZmxvdzpoaWRkZW47LXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6dG91Y2h9LmFwcC1jb250YWluZXJ7b3ZlcmZsb3c6aGlkZGVufS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDozMHB4O2hlaWdodDozMHB4O2JvcmRlci1yYWRpdXM6NnB4fS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZSAuaGFtYnVyZ2VyLWljb257d2lkdGg6MTNweDtoZWlnaHQ6OXB4fS5zaWRlYmFye3RvcDowfS5zaWRlYmFyLWhlYWRlcntwYWRkaW5nOjEwcHggMTJweDttaW4taGVpZ2h0OjQ4cHg7Z2FwOjhweH0uc2lkZWJhci1oZWFkZXItYWN0aW9uc3tnYXA6NHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25ze2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCwxZnIpO2dhcDo0cHh9LnNpZGViYXItZm9vdGVyLWFjdGlvbnM6aGFzKC5zaWRlYmFyLWJhY2stdG8tbmF0aXZlKTpoYXMoLnNpZGViYXItc3dpdGNoLXNlcnZlcil7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg1LDFmcil9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0bnttaW4taGVpZ2h0OjQwcHg7cGFkZGluZzo2cHggNHB4fS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG4gc3BhbntkaXNwbGF5Om5vbmV9LnNpZGViYXItZm9vdGVyLWFjdGlvbnMgLmJ0biBzdmd7d2lkdGg6MThweDtoZWlnaHQ6MThweH0uc2lkZWJhci1oZWFkZXItb3ZlcmZsb3d7bWluLXdpZHRoOjE4MHB4O21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMjRweCl9LnNpZGViYXItaGVhZGVyLW92ZXJmbG93IC5vdmVyZmxvdy1pdGVte3BhZGRpbmc6MTFweCAxNHB4O2ZvbnQtc2l6ZTouODc1cmVtfS50ZXJtaW5hbC1oZWFkZXJ7cGFkZGluZzo1cHggOHB4O21pbi1oZWlnaHQ6MzJweH0udGVybWluYWwtdGl0bGV7Z2FwOjRweDtmb250LXNpemU6LjY4NzVyZW19LnRlcm1pbmFsLWluZm97Zm9udC1zaXplOi41NjI1cmVtfS5jdXJyZW50LXRhc2t7Zm9udC1zaXplOi41NjI1cmVtO3BhZGRpbmc6MXB4IDZweCAxcHggNHB4O2dhcDozcHh9Lm1haW4taGVhZGVyLXJvd3twYWRkaW5nOjJweCA2cHg7Z2FwOjRweH0udG9wYmFyLWJyYW5kLC50b3BiYXItY3dke2Rpc3BsYXk6bm9uZX0udG9wYmFyLXNlc3Npb24tdGl0bGV7bWF4LXdpZHRoOjE0MHB4O2ZvbnQtc2l6ZTouNzhyZW19LnNlc3Npb24tc3RhdHVzLXBpbGx7Zm9udC1zaXplOi42MjVyZW07cGFkZGluZzoxcHggN3B4IDFweCA1cHg7bWF4LXdpZHRoOjExMHB4fS5zZXNzaW9uLXN0YXR1cy1waWxsIC5zZXNzaW9uLXN0YXR1cy1kb3R7d2lkdGg6NXB4O2hlaWdodDo1cHh9LnRvcGJhci1tb3JlLW1lbnV7bWluLXdpZHRoOjE1NnB4fS50ZXJtaW5hbC1zY2FsZS1vdmVybGF5e3RvcDo2cHg7cmlnaHQ6NnB4O3BhZGRpbmc6MnB4O2dhcDoxcHh9LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktYnRue21pbi13aWR0aDoyNnB4O2hlaWdodDoyNnB4O2ZvbnQtc2l6ZTouNzVyZW19LnRlcm1pbmFsLXNjYWxlLW92ZXJsYXktbGFiZWx7bWluLXdpZHRoOjI4cHg7Zm9udC1zaXplOi41NjI1cmVtO3BhZGRpbmc6MCAycHh9Lm1haW4tbGF5b3V0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtmbGV4OjE7bWluLWhlaWdodDowO2hlaWdodDoxMDAlO292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWxlZnQ6MH0uc2lkZWJhcnt0b3A6MDt3aWR0aDptaW4oMjYwcHgsY2FsYygxMDB2dyAtIDEycHgpKTttYXgtaGVpZ2h0Om5vbmU7Ym9yZGVyLWJvdHRvbTpub25lfS5tYWluLWNvbnRlbnR7ZmxleDoxO21pbi1oZWlnaHQ6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO292ZXJmbG93OmhpZGRlbn0udGVybWluYWwtY29udGFpbmVye2ZsZXg6MSAxIGF1dG87bWluLWhlaWdodDowO21heC1oZWlnaHQ6bm9uZX0uc2Vzc2lvbnMtbGlzdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2ZsZXg6MSAwIGF1dG87bWluLWhlaWdodDowO292ZXJmbG93OnZpc2libGU7cGFkZGluZzo0cHh9LnNlc3Npb24taXRlbXt3aWR0aDoxMDAlO21heC13aWR0aDpub25lO21hcmdpbi1ib3R0b206NHB4O3BhZGRpbmc6OHB4IDEwcHg7bWluLWhlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6NnB4fS5zZXNzaW9uLWFjdGlvbi1idG57d2lkdGg6MzJweDtoZWlnaHQ6MzJweDttaW4taGVpZ2h0OjMycHg7bWluLXdpZHRoOjMycHg7Ym9yZGVyLXJhZGl1czo2cHh9LmlucHV0LXBhbmVse3otaW5kZXg6MzA7cGFkZGluZzo0cHggNnB4O3BhZGRpbmctYm90dG9tOmNhbGMoNnB4ICsgdmFyKC0taW5wdXQtc2FmZS1ib3R0b20sIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKSArIHZhcigtLWtleWJvYXJkLW9mZnNldCwgMHB4KSk7ZmxleDowIDAgYXV0bzttYXJnaW4tdG9wOmF1dG87YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmNmYxZTg4MCwjZjZmMWU4ZTAgMzAlLCNmNmYxZTgpLCNmNmYxZTg7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCl9LmlucHV0LXRleHRhcmVhe3BhZGRpbmctYm90dG9tOjRweH0uaW5wdXQtY29tcG9zZXJ7Ym9yZGVyLXJhZGl1czoxNHB4O2JveC1zaGFkb3c6MCAzcHggMTRweCAjNTkzYTIwMTJ9LmJ0bi1jaXJjbGV7d2lkdGg6MjZweDtoZWlnaHQ6MjZweDtib3JkZXItcmFkaXVzOjUwJX0uYnRuLWNpcmNsZS1zZW5kIHN2ZywuYnRuLWNpcmNsZS1zdG9wIHN2Z3t3aWR0aDoxMnB4O2hlaWdodDoxMnB4fS5pbnB1dC10ZXh0YXJlYSwuZmllbGQtaW5wdXR7Zm9udC1zaXplOjE2cHh9LmlucHV0LXRleHRhcmVhe21pbi1oZWlnaHQ6MzJweDtwYWRkaW5nOjdweCAzMHB4IDVweCA4cHg7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MS4zNX0uaW5wdXQtdGV4dGFyZWE6OnBsYWNlaG9sZGVye2ZvbnQtc2l6ZToxNXB4fS5jaGF0LW1vZGUtc2VsZWN0e21heC13aWR0aDo2NXB4O2ZvbnQtc2l6ZTouNTYyNXJlbTtoZWlnaHQ6MjJweDttaW4taGVpZ2h0OjIycHg7cGFkZGluZzowIDE0cHggMCA0cHg7Ym9yZGVyLXJhZGl1czo1cHh9LmlucHV0LWhpbnR7Zm9udC1zaXplOi40NXJlbTttYXgtd2lkdGg6MThjaDtvcGFjaXR5Oi42fS50ZXJtaW5hbC1qdW1wLWJvdHRvbXt3aWR0aDozMnB4O2hlaWdodDozMnB4O3BhZGRpbmc6MDtyaWdodDoxMHB4O2JvdHRvbToxMnB4fS5jaGF0LXVucmVhZC1idWJibGV7aGVpZ2h0OjMwcHg7bWluLXdpZHRoOjMwcHg7cmlnaHQ6MTBweDtib3R0b206OHB4O3BhZGRpbmc6MCA5cHg7Zm9udC1zaXplOi43MnJlbX0uY2hhdC11bnJlYWQtYnViYmxlLmhhcy11bnJlYWR7cGFkZGluZzowIDExcHggMCA5cHh9LmNoYXQtdW5yZWFkLWJ1YmJsZS1jb3VudHtmb250LXNpemU6LjcycmVtfS5taW5pLWtleWJvYXJkLWZhYnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2JvdHRvbTo1MHB4O3JpZ2h0OjEwcHg7Zm9udC1zaXplOjFyZW19Lm1pbmkta2V5Ym9hcmR7Ym90dG9tOjUwcHg7cmlnaHQ6OHB4O2xlZnQ6OHB4O21pbi13aWR0aDowO2JvcmRlci1yYWRpdXM6MTBweH0uY2hhdC1jb250YWluZXJ7bWluLWhlaWdodDowO2ZsZXg6MSAxIGF1dG87b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6bm9uZTtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LmNoYXQtY29udGFpbmVyLmFjdGl2ZXtkaXNwbGF5OmZsZXh9LmZvbGRlci1waWNrZXItY29udGFpbmVye21hcmdpbi1ib3R0b206NHB4fS5mb2xkZXItcGlja2VyLXF1aWNrLWJ0bnttaW4taGVpZ2h0OjMycHg7cGFkZGluZzo2cHggMTBweDtmb250LXNpemU6LjY4NzVyZW07Ym9yZGVyLXJhZGl1czo2cHh9LmZvbGRlci1icmVhZGNydW1ie3BhZGRpbmc6NHB4IDZweDtmb250LXNpemU6LjU2MjVyZW07bWFyZ2luLWJvdHRvbTozcHg7b3ZlcmZsb3cteDphdXRvOy13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOnRvdWNoO3doaXRlLXNwYWNlOm5vd3JhcDtmbGV4LXdyYXA6bm93cmFwfS5mb2xkZXItcGlja2Vye3BhZGRpbmc6OHB4IDEwcHg7bWluLWhlaWdodDozNnB4fS5mb2xkZXItcGlja2VyLWlucHV0e2ZvbnQtc2l6ZToxNnB4O3BhZGRpbmc6NnB4fS5mb2xkZXItcGlja2VyLWRyb3Bkb3due21heC1oZWlnaHQ6MTgwcHh9LmZvbGRlci1waWNrZXItaXRlbXtwYWRkaW5nOjhweCAxMHB4O21pbi1oZWlnaHQ6MzZweH0uZm9sZGVyLXJlY2VudC1pdGVte3BhZGRpbmc6NnB4IDEwcHg7bWluLWhlaWdodDozNnB4fS5mb2xkZXItcGlja2VyLWNvbXBhY3Qtcm93e3BhZGRpbmc6NnB4fS5mb2xkZXItcGlja2VyLWNvbXBhY3QtaW5wdXR7Zm9udC1zaXplOi42MjVyZW19LndvcmtpbmctZGlyLWluZGljYXRvcntmb250LXNpemU6LjU2MjVyZW07cGFkZGluZzoxcHggNHB4O21heC13aWR0aDoxMjBweH0udG9kby1wcm9ncmVzcy1oZWFkZXJ7cGFkZGluZzozcHggNnB4O2dhcDo0cHh9LnRvZG8tcHJvZ3Jlc3MtY291bnRlciwudG9kby1wcm9ncmVzcy10YXNre2ZvbnQtc2l6ZTouNTYyNXJlbX0udG9kby1wcm9ncmVzcy1jaGV2cm9ue3dpZHRoOjEycHg7aGVpZ2h0OjEycHh9LnRvZG8tcHJvZ3Jlc3MtYm9keXtwYWRkaW5nOjRweCA2cHh9LmxvZ2luLWNvbnRhaW5lcnttaW4taGVpZ2h0OjEwMGR2aDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O3BhZGRpbmc6OHB4IDhweCBjYWxjKDhweCArIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKX0ubG9naW4tY2FyZHttYXJnaW4tdG9wOm1heCg2cHgsZW52KHNhZmUtYXJlYS1pbnNldC10b3AsMHB4KSl9LmxvZ2luLWhlYWRlcntwYWRkaW5nOjE0cHggMTJweCAxMHB4fS5sb2dpbi1ib2R5e3BhZGRpbmc6MTJweH0uYnRue21pbi1oZWlnaHQ6NDBweH0uYnRuLXNte21pbi1oZWlnaHQ6MzJweH0uY2hhdC1tZXNzYWdlLWJ1YmJsZXtwYWRkaW5nOjhweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW19LmNoYXQtbWVzc2FnZS1hdmF0YXJ7Zm9udC1zaXplOi42ODc1cmVtfS5tb2RhbC1iYWNrZHJvcHtwYWRkaW5nOjhweDtwYWRkaW5nLXRvcDptYXgoOHB4LHZhcigtLXdhbmQtc2FmZS10b3ApKTtwYWRkaW5nLWxlZnQ6bWF4KDhweCx2YXIoLS13YW5kLXNhZmUtbGVmdCkpO3BhZGRpbmctcmlnaHQ6bWF4KDhweCx2YXIoLS13YW5kLXNhZmUtcmlnaHQpKTthbGlnbi1pdGVtczpmbGV4LWVuZH0ubW9kYWx7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDo4NXZoO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKSB2YXIoLS1yYWRpdXMtbWQpIDAgMDttYXJnaW4tYm90dG9tOnZhcigtLXNhZmUtYm90dG9tLCAwcHgpfS5tb2RhbC1oZWFkZXJ7cGFkZGluZzoxMHB4IDEycHg7bWluLWhlaWdodDo0MHB4fS5tb2RhbC1ib2R5e3BhZGRpbmc6MTBweCAxMnB4fS5tb2RhbC1mb290ZXJ7cGFkZGluZzo4cHggMTJweH0uc2Vzc2lvbi1tb2RhbCAubW9kYWwtZm9vdGVye3BhZGRpbmc6MTBweCAxMnB4IDE0cHh9LnRvb2wtY2FyZHtwYWRkaW5nOjEwcHg7bWluLWhlaWdodDozNnB4fS5tYWluLWNvbnRlbnQuZmlsZS1wYW5lbC1vcGVue21hcmdpbi1yaWdodDowfS5maWxlLXNpZGUtcGFuZWx7d2lkdGg6MTAwJX0uZmlsZS1zaWRlLXBhbmVsLWhlYWRlcntwYWRkaW5nOjEwcHggMTJweDttaW4taGVpZ2h0OjQ4cHh9LmZpbGUtc2lkZS1wYW5lbC1pY29uYnRue3dpZHRoOjM0cHg7aGVpZ2h0OjM0cHh9LmZpbGUtZXhwbG9yZXItaGVhZGVye3BhZGRpbmc6NnB4IDEwcHggNHB4O2dhcDo2cHh9LmZpbGUtZXhwbG9yZXItdXB7d2lkdGg6MzJweDtoZWlnaHQ6MzJweH0uZmlsZS1zZWFyY2gtYm94e3BhZGRpbmc6NnB4IDEwcHggOHB4fS5maWxlLXNlYXJjaC1pY29ue2xlZnQ6MjBweH0uZmlsZS1zZWFyY2gtY2xlYXJ7cmlnaHQ6MTZweH0uZmlsZS1zZWFyY2gtaW5wdXR7bWluLWhlaWdodDozNHB4O2ZvbnQtc2l6ZToxNnB4O3BhZGRpbmc6N3B4IDMycHggN3B4IDMwcHh9LmJsYW5rLWNoYXR7cGFkZGluZzoxNnB4IDEycHg7YWxpZ24taXRlbXM6ZmxleC1zdGFydH0uYmxhbmstY2hhdC1pbm5lcnttYXgtd2lkdGg6MTAwJX0uYmxhbmstY2hhdC1sb2dve3dpZHRoOjQ4cHg7aGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjI0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O21hcmdpbi1ib3R0b206MTBweH0uYmxhbmstY2hhdC10aXRsZXtmb250LXNpemU6MS4xMjVyZW19LmJsYW5rLWNoYXQtc3VidGl0bGV7Zm9udC1zaXplOi43NXJlbTttYXJnaW4tYm90dG9tOjE2cHh9LmJsYW5rLWNoYXQtdG9vbHN7Z2FwOjRweDttYXJnaW4tYm90dG9tOjhweH0uYmxhbmstY2hhdC10b29sLWJ0bntwYWRkaW5nOjZweCAxMHB4O2ZvbnQtc2l6ZTouNzVyZW07bWluLWhlaWdodDo0NHB4fS5ub3RpZmljYXRpb24tYnViYmxle21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMjRweCl9LmJsYW5rLWNoYXQtY3dkLWRyb3Bkb3due21pbi13aWR0aDowO3dpZHRoOmNhbGMoMTAwdncgLSAzMnB4KTttYXgtd2lkdGg6MzIwcHh9LnRvYXN0LW1lc3NhZ2V7bWF4LXdpZHRoOmNhbGMoMTAwdncgLSAzMnB4KX19QG1lZGlhKG1pbi13aWR0aDozOTFweClhbmQgKG1heC13aWR0aDo0MjBweCl7LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA2cHggNnB4O3BhZGRpbmc6NnB4fS5pbnB1dC1wYW5lbHtwYWRkaW5nOjZweCAxMHB4O3BhZGRpbmctYm90dG9tOmNhbGMoOHB4ICsgdmFyKC0taW5wdXQtc2FmZS1ib3R0b20sIHZhcigtLXNhZmUtYm90dG9tLCAwcHgpKSl9fUBtZWRpYShtYXgtd2lkdGg6MzkwcHgpey5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDoyOHB4O2hlaWdodDoyOHB4fS5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZSAuaGFtYnVyZ2VyLWljb257d2lkdGg6MTFweDtoZWlnaHQ6OHB4fS50ZXJtaW5hbC1oZWFkZXJ7cGFkZGluZzo0cHggNnB4O21pbi1oZWlnaHQ6MjhweH0udGVybWluYWwtaW5mb3tkaXNwbGF5Om5vbmV9LnRlcm1pbmFsLWNvbnRhaW5lcnttYXJnaW46MCA0cHggNHB4O3BhZGRpbmc6NHB4fS5pbnB1dC1wYW5lbHtwYWRkaW5nOjVweCA2cHg7cGFkZGluZy1ib3R0b206Y2FsYyg2cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKX0uaW5wdXQtY29tcG9zZXJ7Ym9yZGVyLXJhZGl1czo4cHh9LmlucHV0LXRleHRhcmVhe21pbi1oZWlnaHQ6MjhweDtwYWRkaW5nOjVweCAyOHB4IDJweCA2cHg7Zm9udC1zaXplOjE2cHh9LmJ0bi1jaXJjbGV7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDttaW4td2lkdGg6MjhweH0uc2Vzc2lvbi1pdGVte3BhZGRpbmc6NnB4IDhweDttaW4taGVpZ2h0OjQwcHh9LnNlc3Npb24tYWN0aW9uLWJ0bnt3aWR0aDozMHB4O2hlaWdodDozMHB4O21pbi13aWR0aDozMHB4O21pbi1oZWlnaHQ6MzBweH0uc2lkZWJhcnt0b3A6MDt3aWR0aDptaW4oMjQwcHgsY2FsYygxMDB2dyAtIDEwcHgpKX0uc2lkZWJhci1mb290ZXItYWN0aW9uc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDQsMWZyKX0uc2lkZWJhci1mb290ZXItYWN0aW9uczpoYXMoLnNpZGViYXItYmFjay10by1uYXRpdmUpOmhhcyguc2lkZWJhci1zd2l0Y2gtc2VydmVyKXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDUsMWZyKX0uc2lkZWJhci1mb290ZXItYWN0aW9ucyAuYnRuIHNwYW57ZGlzcGxheTpub25lfS5zaWRlYmFyLWZvb3Rlci1hY3Rpb25zIC5idG57bWluLWhlaWdodDozNnB4O3BhZGRpbmc6NnB4fS5tb2RhbHttYXgtaGVpZ2h0Ojgwdmh9Lm1vZGFsLWhlYWRlcntwYWRkaW5nOjhweCAxMHB4O21pbi1oZWlnaHQ6MzZweH0ubW9kYWwtYm9keXtwYWRkaW5nOjhweCAxMHB4fS5zZXNzaW9uLW1vZGFsIC5tb2RhbC1mb290ZXJ7cGFkZGluZzo4cHggMTBweCAxMnB4fS5maWVsZC1yb3d7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MH0uYnRue21pbi1oZWlnaHQ6MzZweDtwYWRkaW5nOjhweCAxMnB4fS5idG4tc217bWluLWhlaWdodDoyOHB4O3BhZGRpbmc6NHB4IDhweH19QG1lZGlhKG1pbi13aWR0aDo2NDFweClhbmQgKG1heC13aWR0aDo3NjhweCl7LnNpZGViYXJ7dG9wOjA7d2lkdGg6bWluKDMyMHB4LGNhbGMoMTAwdncgLSA0MHB4KSl9LnNlc3Npb24taXRlbXttaW4taGVpZ2h0OjUycHg7cGFkZGluZzoxMXB4IDEycHh9LnNlc3Npb24tYWN0aW9uLWJ0bnt3aWR0aDozNHB4O2hlaWdodDozNHB4O21pbi13aWR0aDozNHB4O21pbi1oZWlnaHQ6MzRweH0uYnRue21pbi1oZWlnaHQ6NDJweH0uYnRuLXNte21pbi1oZWlnaHQ6MzZweH0uZmxvYXRpbmctdG9nZ2xle21pbi13aWR0aDo0OHB4O21pbi1oZWlnaHQ6NDhweH19QG1lZGlhKG1heC1oZWlnaHQ6NDIwcHgpYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpey5mbG9hdGluZy1zaWRlYmFyLXRvZ2dsZXt3aWR0aDoyOHB4O2hlaWdodDoyOHB4fS5zaWRlYmFye3RvcDowfS50ZXJtaW5hbC1jb250YWluZXJ7bWluLWhlaWdodDo1NXZoO21hcmdpbjo2cHg7cGFkZGluZzo4cHh9LmNoYXQtY29udGFpbmVye3BhZGRpbmc6MCAxMHB4IDhweH0uaW5wdXQtcGFuZWx7cGFkZGluZzo4cHg7cGFkZGluZy1ib3R0b206Y2FsYyg4cHggKyB2YXIoLS1pbnB1dC1zYWZlLWJvdHRvbSwgdmFyKC0tc2FmZS1ib3R0b20sIDBweCkpKX19QG1lZGlhKG1heC13aWR0aDo0ODBweCl7LmNoYXQtY29udGFpbmVye3BhZGRpbmc6MCA2cHggOHB4fS5jaGF0LW1lc3NhZ2Vze3BhZGRpbmctbGVmdDoycHg7cGFkZGluZy1yaWdodDoycHg7Z2FwOjEycHh9LmNoYXQtbWVzc2FnZXstLWNoYXQtY2FyZC1tYXgtd2lkdGg6IDEwMCV9LnRvb2wtdXNlLWhlYWRlcntmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjRweDtwYWRkaW5nOjhweCAxMnB4fS50b29sLXVzZS1maWxle21heC13aWR0aDoxMDAlfS50b29sLXVzZS1ib2R5e3BhZGRpbmc6MTBweCAxMnB4fS5zdWJhZ2VudC1yZXBseXtwYWRkaW5nOjlweCAxMnB4fS5zdWJhZ2VudC1yZXBseS5jb2xsYXBzaWJsZXtwYWRkaW5nOjB9LnN1YmFnZW50LXJlcGx5LmZpbmFse3BhZGRpbmc6OXB4IDExcHh9LnN1YmFnZW50LXBhbmVse21hcmdpbjo2cHggMH0uc3ViYWdlbnQtcGFuZWwtaGVhZGVye3BhZGRpbmc6N3B4IDEwcHg7Z2FwOjZweDtmb250LXNpemU6Ljc0cmVtfS5zdWJhZ2VudC1wYW5lbC1hdHRyaWJ1dGlvbnt3aGl0ZS1zcGFjZTpub3JtYWw7bGluZS1oZWlnaHQ6MS40fS5zdWJhZ2VudC1wYW5lbC10YWd7bWFyZ2luOjAgNHB4O3BhZGRpbmc6MCA0cHh9LnN1YmFnZW50LXBhbmVsLWJvZHl7cGFkZGluZzo5cHggMTFweH0uc3ViYWdlbnQtcGFuZWxbZGF0YS1leHBhbmRlZD1mYWxzZV0gLnN1YmFnZW50LXBhbmVsLWJvZHl7bWF4LWhlaWdodDoxOGVtfS5zdWJhZ2VudC1wYW5lbFtkYXRhLWV4cGFuZGVkPXRydWVdIC5zdWJhZ2VudC1wYW5lbC1ib2R5e21heC1oZWlnaHQ6NjB2aH0uc3ViYWdlbnQtcGFuZWwtZm9vdGVye3BhZGRpbmc6NXB4IDEwcHh9LnN1YmFnZW50LXBhbmVsLWZvb3Rlci1oaW50e2Rpc3BsYXk6bm9uZX0ubWFya2Rvd24tY29udGVudCAuY29kZS1ibG9ja3ttYXJnaW46OHB4IDB9Lm1hcmtkb3duLWNvbnRlbnQgcHJlLC5tYXJrZG93bi1jb250ZW50IC5jb2RlLWJsb2NrIHByZSwuc3ViYWdlbnQtcmVwbHkgcHJle3BhZGRpbmc6MTBweH0uZGlmZi1jb2x1bW5ze2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZGlmZi1jb2wsLmRpZmYtY29sLWhhbGYsLmRpZmYtY29sLWZ1bGx7ZmxleDoxIDEgYXV0bzt3aWR0aDoxMDAlO21heC13aWR0aDoxMDAlfS50ZXJtLWhlYWRlciwuZGlmZi1oZWFkZXJ7ZmxleC13cmFwOndyYXA7cm93LWdhcDo0cHh9LmRpZmYtcGF0aHtmbGV4LWJhc2lzOjEwMCU7b3JkZXI6OTl9LmlubGluZS10b29sLXJvd3tmbGV4LXdyYXA6d3JhcDtyb3ctZ2FwOjJweH0uaW5saW5lLXRvb2wtbWV0YXttYXgtd2lkdGg6MTAwJTtmbGV4LWJhc2lzOjEwMCU7cGFkZGluZy1sZWZ0OjIycHh9fS5zZXNzaW9uLWtpbmQtYmFkZ2V7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7aGVpZ2h0OjE4cHg7cGFkZGluZzowIDZweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW07Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtmbGV4LXNocmluazowfS5zZXNzaW9uLWtpbmQtYmFkZ2UucHR5e2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtiYWNrZ3JvdW5kOiM3ODgwOGMxZjtib3JkZXItY29sb3I6Izc4ODA4YzJlfS5zZXNzaW9uLWtpbmQtYmFkZ2Uuc3RydWN0dXJlZHtjb2xvcjojZDE4YjUyO2JhY2tncm91bmQ6I2Q3N2E1MjFhO2JvcmRlci1jb2xvcjojZDc3YTUyMzh9LnNlc3Npb24ta2luZC1iYWRnZS53b3JrdHJlZXtjb2xvcjojMmY2ZjU0O2JhY2tncm91bmQ6IzRmN2E1ODFmO2JvcmRlci1jb2xvcjojNGY3YTU4Mzh9LnNlc3Npb24ta2luZC1kaXNwbGF5e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MXB4IDZweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6IzhhNGIyNDtiYWNrZ3JvdW5kOiNkNzdhNTIxZjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjE1LDEyMiw4MiwuMil9LnN0cnVjdHVyZWQtdG9vbC1oaW50e21hcmdpbjo0cHggMCA4cHg7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOjEwcHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOiNkNzdhNTIxNDtib3JkZXI6MXB4IGRhc2hlZCByZ2JhKDIxNSwxMjIsODIsLjE4KX0uYmxhbmstY2hhdHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ZmxleDoxO3BhZGRpbmc6MjBweCAxNnB4O21pbi1oZWlnaHQ6MDtvdmVyZmxvdzphdXRvfS5ibGFuay1jaGF0LWlubmVye3dpZHRoOjEwMCU7bWF4LXdpZHRoOjU2MHB4O3RleHQtYWxpZ246Y2VudGVyfS5ibGFuay1jaGF0LWxvZ297d2lkdGg6NTZweDtoZWlnaHQ6NTZweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsI2Q3N2E1MiwjYTk1MTMwKTtib3JkZXItcmFkaXVzOjE2cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToyOHB4O2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjojZmZmO21hcmdpbjowIGF1dG8gMTRweDtib3gtc2hhZG93OjAgNHB4IDE2cHggI2M1NjUzZDM4fS5ibGFuay1jaGF0LXRpdGxle2ZvbnQtc2l6ZToxLjM3NXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTttYXJnaW46MCAwIDZweH0uYmxhbmstY2hhdC1zdWJ0aXRsZXtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWFyZ2luOjAgMCAyMHB4fS5ibGFuay1jaGF0LXRvb2xze2Rpc3BsYXk6ZmxleDtnYXA6OHB4O2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLWJvdHRvbToxMnB4O2ZsZXgtd3JhcDp3cmFwfS5ibGFuay1jaGF0LXRvb2wtYnRue3BhZGRpbmc6OHB4IDE0cHg7Ym9yZGVyOjEuNXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDojZmZmZmZmYjM7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjUwMDtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21pbi1oZWlnaHQ6NDBweH0uYmxhbmstY2hhdC10b29sLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNHB4IDEycHggIzU5M2EyMDE0fS5ibGFuay1jaGF0LXRvb2wtYnRuIC50b29sLWljb257Zm9udC1zaXplOjEuMTI1cmVtfS5ibGFuay1jaGF0LWN3ZC13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO21hcmdpbi10b3A6OHB4fS5ibGFuay1jaGF0LWN3ZHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTt0cmFuc2l0aW9uOmNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpO3VzZXItc2VsZWN0Om5vbmV9LmJsYW5rLWNoYXQtY3dkOmhvdmVye2NvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpfS5ibGFuay1jaGF0LWN3ZC1pY29ue2ZvbnQtc2l6ZTouODEyNXJlbX0uYmxhbmstY2hhdC1jd2QtcGF0aHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO21heC13aWR0aDoyODBweDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXB9LmJsYW5rLWNoYXQtY3dkLWFycm93e2ZvbnQtc2l6ZTouNjI1cmVtO29wYWNpdHk6LjY7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uYmxhbmstY2hhdC1jd2QtZHJvcGRvd257cG9zaXRpb246YWJzb2x1dGU7dG9wOjEwMCU7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTttaW4td2lkdGg6MjYwcHg7bWF4LXdpZHRoOjQwMHB4O21heC1oZWlnaHQ6MjQwcHg7b3ZlcmZsb3cteTphdXRvO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2JveC1zaGFkb3c6MCA0cHggMTZweCAjMDAwMDAwMWE7ei1pbmRleDo1MDttYXJnaW4tdG9wOjRweDtwYWRkaW5nOjRweH0uYmxhbmstY2hhdC1jd2QtaXRlbXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo2cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIHZhcigtLXRyYW5zaXRpb24tZmFzdCl9LmJsYW5rLWNoYXQtY3dkLWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2NvbG9yOnZhcigtLWFjY2VudCl9LmJsYW5rLWNoYXQtY3dkLWl0ZW0uYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtd2VpZ2h0OjUwMH0uYmxhbmstY2hhdC1jd2QtaXRlbS1sYWJlbHtmb250LXNpemU6LjYyNXJlbTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtwYWRkaW5nOjFweCA1cHg7Ym9yZGVyLXJhZGl1czozcHg7Zm9udC13ZWlnaHQ6NTAwO3doaXRlLXNwYWNlOm5vd3JhcH0uYmxhbmstY2hhdC1jd2QtaXRlbS1wYXRoe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5ibGFuay1jaGF0LWN3ZC1sb2FkaW5ne3BhZGRpbmc6OHB4IDEwcHg7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0ZXh0LWFsaWduOmNlbnRlcn0uY2hhdC1tb2RlLXNlbGVjdHtmb250LWZhbWlseTppbmhlcml0O2N1cnNvcjpwb2ludGVyO291dGxpbmU6bm9uZX0uY2hhdC1tb2RlLXNlbGVjdDpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0udG9hc3QtbWVzc2FnZXtwb3NpdGlvbjpmaXhlZDt0b3A6MjRweDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpO3BhZGRpbmc6MTBweCAyMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtmb250LXNpemU6Ljg3NXJlbTt6LWluZGV4Ojk5OTk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbGcpO2FuaW1hdGlvbjp0b2FzdC1pbiAuMjJzIGN1YmljLWJlemllciguMzQsMS41NiwuNjQsMSl9LnRvYXN0LWVycm9ye2JhY2tncm91bmQ6dmFyKC0tZGFuZ2VyKTtjb2xvcjojZmZmfUBrZXlmcmFtZXMgdG9hc3QtaW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgtMTJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgwKX19Lm5vdGlmaWNhdGlvbi1idWJibGV7cG9zaXRpb246Zml4ZWQ7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKTt6LWluZGV4OjEwMDAwO21pbi13aWR0aDoyMjBweDttYXgtd2lkdGg6MzIwcHg7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LWxnKTtwYWRkaW5nOjhweCAxMnB4O2FuaW1hdGlvbjpub3RpZmljYXRpb24tc2xpZGUtaW4gLjNzIGN1YmljLWJlemllciguMzQsMS41NiwuNjQsMSk7dHJhbnNpdGlvbjp0b3AgLjI1cyBlYXNlLG9wYWNpdHkgLjI1cyBlYXNlfS5ub3RpZmljYXRpb24tYnViYmxlLnNsaWRlLW91dHthbmltYXRpb246bm90aWZpY2F0aW9uLXNsaWRlLW91dCAuMjVzIGVhc2UgZm9yd2FyZHM7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21hcmdpbi1ib3R0b206MnB4fS5ub3RpZmljYXRpb24tYnViYmxlLWljb257d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtmbGV4LXNocmluazowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Zm9udC1zaXplOjEwcHh9Lm5vdGlmaWNhdGlvbi1idWJibGUtaWNvbi5pbmZve2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtjb2xvcjojZmZmfS5ub3RpZmljYXRpb24tYnViYmxlLWljb24ud2FybmluZ3tiYWNrZ3JvdW5kOnZhcigtLXdhcm5pbmcpO2NvbG9yOiNmZmZ9Lm5vdGlmaWNhdGlvbi1idWJibGUtaWNvbi5zdWNjZXNze2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcyk7Y29sb3I6I2ZmZn0ubm90aWZpY2F0aW9uLWJ1YmJsZS10aXRsZXtmb250LXNpemU6Ljc1cmVtO2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS1mZy1wcmltYXJ5KTtmbGV4OjE7bWluLXdpZHRoOjB9Lm5vdGlmaWNhdGlvbi1idWJibGUtY2xvc2V7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO2NvbG9yOnZhcigtLWZnLW11dGVkKTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxO3BhZGRpbmc6MXB4IDNweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7ZmxleC1zaHJpbms6MH0ubm90aWZpY2F0aW9uLWJ1YmJsZS1jbG9zZTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLWhvdmVyKTtjb2xvcjp2YXIoLS1mZy1wcmltYXJ5KX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1ib2R5e2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS1mZy1zZWNvbmRhcnkpO2xpbmUtaGVpZ2h0OjEuNDttYXJnaW4tYm90dG9tOjA7bWF4LWhlaWdodDo0LjJlbTtvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTotd2Via2l0LWJveDstd2Via2l0LWxpbmUtY2xhbXA6Mzstd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWx9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9uc3ttYXJnaW4tdG9wOjZweDtkaXNwbGF5OmZsZXg7Z2FwOjZweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b257Zm9udC1zaXplOi43cmVtO3BhZGRpbmc6MnB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2N1cnNvcjpwb2ludGVyO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Y29sb3I6dmFyKC0tZmctcHJpbWFyeSk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXN9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b246aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy1ob3Zlcil9Lm5vdGlmaWNhdGlvbi1idWJibGUtYWN0aW9ucyBidXR0b24ucHJpbWFyeXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbi5wcmltYXJ5OmhvdmVye2ZpbHRlcjpicmlnaHRuZXNzKDEuMSl9QGtleWZyYW1lcyBub3RpZmljYXRpb24tc2xpZGUtaW57MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgtMjBweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgwKX19QGtleWZyYW1lcyBub3RpZmljYXRpb24tc2xpZGUtb3V0ezAle29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUpIHRyYW5zbGF0ZVkoMCl9dG97b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSkgdHJhbnNsYXRlWSgtMjBweCl9fS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uOmRpc2FibGVke29wYWNpdHk6LjY7Y3Vyc29yOm5vdC1hbGxvd2VkO2ZpbHRlcjpub25lfS5ub3RpZmljYXRpb24tYnViYmxlLWFjdGlvbnMgYnV0dG9uLnN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzKTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKX0ubm90aWZpY2F0aW9uLWJ1YmJsZS1hY3Rpb25zIGJ1dHRvbi5zdWNjZXNzOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2ZpbHRlcjpicmlnaHRuZXNzKDEuMSl9Lm5vdGlmaWNhdGlvbi1idWJibGUudXBkYXRlLWNhcmR7d2lkdGg6bWluKDM2MHB4LGNhbGMoMTAwdncgLSAyNHB4KSk7bWF4LXdpZHRoOm1pbigzNjBweCxjYWxjKDEwMHZ3IC0gMjRweCkpO21pbi13aWR0aDowO3BhZGRpbmc6MTRweCAxNHB4IDEycHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtbWQpO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KDEyMCUgMTIwJSBhdCAwJSAwJSx2YXIoLS1hY2NlbnQtbXV0ZWQpIDAlLHRyYW5zcGFyZW50IDU1JSksbGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1iZy1lbGV2YXRlZCkgMCUsdmFyKC0tYmctcHJpbWFyeSkgMTAwJSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3Ryb25nKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy14bCksMCAwIDAgMXB4ICNmZmY2IGluc2V0O292ZXJmbG93OmhpZGRlbjtpc29sYXRpb246aXNvbGF0ZX0udXBkYXRlLWNhcmQtc2hpbmV7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDExNWRlZyx0cmFuc3BhcmVudCAwJSxyZ2JhKDI1NSwyNTUsMjU1LC4xOCkgNDUlLHJnYmEoMjU1LDI1NSwyNTUsLjMyKSA1MCUscmdiYSgyNTUsMjU1LDI1NSwuMTgpIDU1JSx0cmFuc3BhcmVudCAxMDAlKTtiYWNrZ3JvdW5kLXNpemU6MjIwJSAxMDAlO2JhY2tncm91bmQtcG9zaXRpb246MTIwJSAwO21peC1ibGVuZC1tb2RlOm92ZXJsYXk7b3BhY2l0eTouNjU7YW5pbWF0aW9uOnVwZGF0ZS1jYXJkLXNoaW5lIDZzIGVhc2UtaW4tb3V0IGluZmluaXRlO3otaW5kZXg6MH1Aa2V5ZnJhbWVzIHVwZGF0ZS1jYXJkLXNoaW5lezAle2JhY2tncm91bmQtcG9zaXRpb246MTIwJSAwfTU1JXtiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMCUgMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMCUgMH19LnVwZGF0ZS1jYXJkLmlzLXN1Y2Nlc3N7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoMTIwJSAxMjAlIGF0IDAlIDAlLHZhcigtLXN1Y2Nlc3MtbXV0ZWQpIDAlLHRyYW5zcGFyZW50IDU1JSksbGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1iZy1lbGV2YXRlZCkgMCUsdmFyKC0tYmctcHJpbWFyeSkgMTAwJSk7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXhsKSwwIDAgMCAxcHggI2ZmZjYgaW5zZXQsdmFyKC0tc2hhZG93LWdsb3ctc3VjY2Vzcyl9LnVwZGF0ZS1jYXJkLWhlYWRlcntwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjEwcHh9LnVwZGF0ZS1jYXJkLWljb257d2lkdGg6MzJweDtoZWlnaHQ6MzJweDtmbGV4LXNocmluazowO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Y29sb3I6I2ZmZjtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYWNjZW50KSAwJSx2YXIoLS1hY2NlbnQtaG92ZXIpIDEwMCUpO2JveC1zaGFkb3c6MCA0cHggMTJweCB2YXIoLS1hY2NlbnQtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjU5fS51cGRhdGUtY2FyZC5pcy1zdWNjZXNzIC51cGRhdGUtY2FyZC1pY29ue2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1zdWNjZXNzKSAwJSx2YXIoLS1zdWNjZXNzLWhvdmVyKSAxMDAlKTtib3gtc2hhZG93OjAgNHB4IDEycHggdmFyKC0tc3VjY2Vzcy1nbG93KSxpbnNldCAwIDFweCAjZmZmZmZmNTl9LnVwZGF0ZS1jYXJkLWhlYWRpbmd7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0udXBkYXRlLWNhcmQtdGl0bGV7Zm9udC1zaXplOi44OHJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDFlbTtsaW5lLWhlaWdodDoxLjI1fS51cGRhdGUtY2FyZC1zdWJ0aXRsZXtmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtdGVydGlhcnkpO2xpbmUtaGVpZ2h0OjEuMzV9LnVwZGF0ZS1jYXJkLWNsb3Nle2ZsZXgtc2hyaW5rOjA7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLGNvbG9yIC4xNXN9LnVwZGF0ZS1jYXJkLWNsb3NlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnVwZGF0ZS1jYXJkLXZlcnNpb257cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO21hcmdpbjoxMnB4IDAgMTBweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7ZmxleC13cmFwOm5vd3JhcH0udXBkYXRlLWNhcmQtdmVyc2lvbi1jaGlwe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlLCAiU0YgTW9ubyIsIE1lbmxvLCBDb25zb2xhcywgbW9ub3NwYWNlKTtmb250LXNpemU6Ljc0cmVtO2ZvbnQtd2VpZ2h0OjYwMDtwYWRkaW5nOjNweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7d2hpdGUtc3BhY2U6bm93cmFwfS51cGRhdGUtY2FyZC12ZXJzaW9uLWN1cnJlbnR7Y29sb3I6dmFyKC0tdGV4dC10ZXJ0aWFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LnVwZGF0ZS1jYXJkLXZlcnNpb24tbGF0ZXN0e2NvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAxcHggNnB4IHZhcigtLWFjY2VudC1nbG93KX0udXBkYXRlLWNhcmQuaXMtc3VjY2VzcyAudXBkYXRlLWNhcmQtdmVyc2lvbi1sYXRlc3R7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyk7Ym94LXNoYWRvdzowIDFweCA2cHggdmFyKC0tc3VjY2Vzcy1nbG93KX0udXBkYXRlLWNhcmQtdmVyc2lvbi1hcnJvd3tjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmbGV4LXNocmluazowfS51cGRhdGUtY2FyZC1wcm9ncmVzc3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7aGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO21hcmdpbjowO3RyYW5zaXRpb246aGVpZ2h0IC4yNXMgZWFzZSxtYXJnaW4gLjI1cyBlYXNlfS51cGRhdGUtY2FyZC1wcm9ncmVzcy5hY3RpdmV7aGVpZ2h0OjZweDttYXJnaW46MCAwIDEwcHh9LnVwZGF0ZS1jYXJkLXByb2dyZXNzLXRyYWNre3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7b3ZlcmZsb3c6aGlkZGVufS51cGRhdGUtY2FyZC1wcm9ncmVzcy1maWxse3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6LTQwJTt3aWR0aDo0MCU7aGVpZ2h0OjEwMCU7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtZnVsbCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdmFyKC0tYWNjZW50KSAwJSx2YXIoLS1hY2NlbnQtaG92ZXIpIDEwMCUpO2JveC1zaGFkb3c6MCAwIDEwcHggdmFyKC0tYWNjZW50LWdsb3cpO2FuaW1hdGlvbjp1cGRhdGUtY2FyZC1wcm9ncmVzcy1zd2VlcCAxLjRzIGN1YmljLWJlemllciguNjUsLjA1LC4zNSwxKSBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHVwZGF0ZS1jYXJkLXByb2dyZXNzLXN3ZWVwezAle2xlZnQ6LTQ1JTt3aWR0aDo0MCV9NTAle2xlZnQ6MjUlO3dpZHRoOjU1JX10b3tsZWZ0OjEwNSU7d2lkdGg6NDAlfX0udXBkYXRlLWNhcmQtc3RhdHVze3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtmb250LXNpemU6LjcycmVtO2xpbmUtaGVpZ2h0OjEuNDtwYWRkaW5nOjZweCAxMHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTttYXJnaW4tYm90dG9tOjEwcHg7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSl9LnVwZGF0ZS1jYXJkLXN0YXR1cy5lcnJvcntiYWNrZ3JvdW5kOnZhcigtLWRhbmdlci1tdXRlZCk7Y29sb3I6dmFyKC0tZGFuZ2VyKTtib3JkZXItY29sb3I6dmFyKC0tZGFuZ2VyKX0udXBkYXRlLWNhcmQtc3RhdHVzLnN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdWNjZXNzLW11dGVkKTtjb2xvcjp2YXIoLS1zdWNjZXNzKTtib3JkZXItY29sb3I6dmFyKC0tc3VjY2Vzcyl9LnVwZGF0ZS1jYXJkLWFjdGlvbnN7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjhweH0udXBkYXRlLWNhcmQtYWN0aW9ue2ZvbnQtc2l6ZTouNzhyZW07Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6N3B4IDE2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTJzIGVhc2UsZmlsdGVyIC4xNXMgZWFzZSxib3gtc2hhZG93IC4xNXMgZWFzZX0udXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtjb2xvcjojZmZmO2JveC1zaGFkb3c6MCA0cHggMTJweCB2YXIoLS1hY2NlbnQtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjQwfS51cGRhdGUtY2FyZC1hY3Rpb24tcHJpbWFyeTpob3Zlcjpub3QoOmRpc2FibGVkKXtmaWx0ZXI6YnJpZ2h0bmVzcygxLjA1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OjAgNnB4IDE2cHggdmFyKC0tYWNjZW50LWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0ZH0udXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnk6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpe3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApO2ZpbHRlcjpicmlnaHRuZXNzKC45Nil9LnVwZGF0ZS1jYXJkLWFjdGlvbjpkaXNhYmxlZHtvcGFjaXR5Oi43O2N1cnNvcjpwcm9ncmVzcztmaWx0ZXI6bm9uZTt0cmFuc2Zvcm06bm9uZX0udXBkYXRlLWNhcmQuaXMtc3VjY2VzcyAudXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnl7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLXN1Y2Nlc3MpIDAlLHZhcigtLXN1Y2Nlc3MtaG92ZXIpIDEwMCUpO2JveC1zaGFkb3c6MCA0cHggMTJweCB2YXIoLS1zdWNjZXNzLWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0MH0udXBkYXRlLWNhcmQuaXMtc3VjY2VzcyAudXBkYXRlLWNhcmQtYWN0aW9uLXByaW1hcnk6aG92ZXI6bm90KDpkaXNhYmxlZCl7Ym94LXNoYWRvdzowIDZweCAxNnB4IHZhcigtLXN1Y2Nlc3MtZ2xvdyksaW5zZXQgMCAxcHggI2ZmZmZmZjRkfS5yZXN0YXJ0LW92ZXJsYXl7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4Ojk5OTk5O2JhY2tncm91bmQ6IzAwMDAwMGE2O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtiYWNrZHJvcC1maWx0ZXI6Ymx1cig0cHgpO2FuaW1hdGlvbjpyZXN0YXJ0LWZhZGUtaW4gLjNzIGVhc2V9LnJlc3RhcnQtb3ZlcmxheS1jb250ZW50e3RleHQtYWxpZ246Y2VudGVyO2NvbG9yOiNmZmZ9LnJlc3RhcnQtdGl0bGV7Zm9udC1zaXplOjEuMjVyZW07Zm9udC13ZWlnaHQ6NjAwO21hcmdpbi1ib3R0b206OHB4fS5yZXN0YXJ0LXN1YnRpdGxle2ZvbnQtc2l6ZTouOXJlbTtvcGFjaXR5Oi44fS5yZXN0YXJ0LXNwaW5uZXJ7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDttYXJnaW46MCBhdXRvIDE2cHg7Ym9yZGVyOjNweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yNSk7Ym9yZGVyLXRvcC1jb2xvcjojZmZmO2JvcmRlci1yYWRpdXM6NTAlO2FuaW1hdGlvbjpyZXN0YXJ0LXNwaW4gLjhzIGxpbmVhciBpbmZpbml0ZX1Aa2V5ZnJhbWVzIHJlc3RhcnQtc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgcmVzdGFydC1mYWRlLWluezAle29wYWNpdHk6MH10b3tvcGFjaXR5OjF9fS5maWxlLXByZXZpZXctb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDtpbnNldDowO2JhY2tncm91bmQ6IzAwMDAwMDgwO3otaW5kZXg6MTAwMDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YW5pbWF0aW9uOmZhZGUtaW4gLjE1cyBlYXNlfUBrZXlmcmFtZXMgZmFkZS1pbnswJXtvcGFjaXR5OjB9dG97b3BhY2l0eToxfX0uc2V0dGluZ3MtbW9kYWx7d2lkdGg6bWluKDEwODBweCwxMDAlKTttYXgtd2lkdGg6MTA4MHB4O2hlaWdodDptaW4oODh2aCw5MjBweCk7bWF4LWhlaWdodDptaW4oODh2aCw5MjBweCk7bWluLWhlaWdodDptaW4oODh2aCw5MjBweCk7b3ZlcmZsb3c6aGlkZGVufS5zZXR0aW5ncy1tb2RhbC1oZWFkZXJ7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTZweDtwYWRkaW5nLWJvdHRvbToxNHB4fS5zZXR0aW5ncy1tb2RhbC10aXRsZS1ncm91cHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo0cHg7bWluLXdpZHRoOjB9LnNldHRpbmdzLW1vZGFsLXN1YnRpdGxle2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41fS5zZXR0aW5ncy1tb2RhbC1ib2R5e3BhZGRpbmctdG9wOjE4cHg7ZmxleDoxIDEgYXV0bzttaW4taGVpZ2h0OjA7b3ZlcmZsb3c6aGlkZGVuO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnNldHRpbmdzLWxheW91dHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjI2MHB4IG1pbm1heCgwLDFmcik7Z2FwOjIycHg7bWluLWhlaWdodDowO2ZsZXg6MSAxIGF1dG87YWxpZ24taXRlbXM6c3RyZXRjaH0uc2V0dGluZ3MtbGF5b3V0Pip7bWluLWhlaWdodDowfS5zZXR0aW5ncy1zaWRlYmFye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjE0cHg7bWluLXdpZHRoOjA7bWluLWhlaWdodDowO3BhZGRpbmctcmlnaHQ6NnB4O2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7b3ZlcmZsb3c6aGlkZGVufS5zZXR0aW5ncy1zaWRlYmFyLWhlYWRlciwuc2V0dGluZ3Mtc2lkZWJhci10aXRsZSwuc2V0dGluZ3Mtc2lkZWJhci1oaW50e2ZsZXgtc2hyaW5rOjB9LnNldHRpbmdzLXNpZGViYXItaGVhZGVye2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDtwYWRkaW5nOjJweCA0cHggMH0uc2V0dGluZ3Mtc2lkZWJhci10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDFlbX0uc2V0dGluZ3Mtc2lkZWJhci1oaW50e2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41fS5zZXR0aW5ncy10YWJze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDttYXJnaW46MDtwYWRkaW5nOjAgMTBweCAwIDA7bWluLWhlaWdodDowO292ZXJmbG93OmF1dG87cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LnNldHRpbmdzLXRhYnM6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjZweDtoZWlnaHQ6NnB4fS5zZXR0aW5ncy10YWJzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOiM5Njc2NTUzODtib3JkZXItcmFkaXVzOjk5OXB4fS5zZXR0aW5ncy10YWJzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOiM5Njc2NTU1Y30uc2V0dGluZ3MtdGFic3tzY3JvbGxiYXItd2lkdGg6dGhpbn0uc2V0dGluZ3MtdGFie3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6NHB4O3dpZHRoOjEwMCU7cGFkZGluZzoxMnB4IDE0cHggMTJweCAxNnB4O2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7Ym9yZGVyLXJhZGl1czoxNnB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Y29sb3IgLjE1cyxib3JkZXItY29sb3IgLjE1cyxiYWNrZ3JvdW5kIC4xNXMsYm94LXNoYWRvdyAuMTVzLHRyYW5zZm9ybSAuMTVzO3RleHQtYWxpZ246bGVmdH0uc2V0dGluZ3MtdGFiOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MTBweDtib3R0b206MTBweDt3aWR0aDozcHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzIGVhc2V9LnNldHRpbmdzLXRhYjpob3Zlcntjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JhY2tncm91bmQ6I2M1NjUzZDE0O2JvcmRlci1jb2xvcjojYzU2NTNkMWY7dHJhbnNmb3JtOnRyYW5zbGF0ZSgycHgpfS5zZXR0aW5ncy10YWI6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1hY2NlbnQpO291dGxpbmUtb2Zmc2V0OjJweH0uc2V0dGluZ3MtdGFiLmFjdGl2ZXtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlci1jb2xvcjojZmZmZmZmYjM7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZjZjdlYiwjZmZmNGU4YjgpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDE0cHgpIHNhdHVyYXRlKDE4MCUpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTRweCkgc2F0dXJhdGUoMTgwJSk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2M1NjUzZDM4LGluc2V0IDAgMXB4ICNmZmZmZmZlNixpbnNldCAwIC0xcHggI2M1NjUzZDBmLDAgNHB4IDE0cHggLTRweCAjYzU2NTNkMzgsMCAxcHggM3B4ICM3ZDViMzkwYX0uc2V0dGluZ3MtdGFiLmFjdGl2ZTpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpfS5zZXR0aW5ncy10YWItbWFpbntmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6aW5oZXJpdDtsaW5lLWhlaWdodDoxLjN9LnNldHRpbmdzLXRhYi1tZXRhe2ZvbnQtc2l6ZTouNzVyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2xpbmUtaGVpZ2h0OjEuNDV9LnNldHRpbmdzLXRhYi5hY3RpdmUgLnNldHRpbmdzLXRhYi1tZXRhe2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KX0uc2V0dGluZ3MtY29udGVudHttaW4td2lkdGg6MDttaW4taGVpZ2h0OjA7aGVpZ2h0OjEwMCU7b3ZlcmZsb3c6YXV0bztwYWRkaW5nLXJpZ2h0OjRweH0uc2V0dGluZ3MtcGFuZWx7ZGlzcGxheTpub25lO21pbi1oZWlnaHQ6MTAwJTtwYWRkaW5nOjJweCAycHggOHB4fS5zZXR0aW5ncy1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo4cHh9LnNldHRpbmdzLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6Izk2NzY1NTNkO2JvcmRlci1yYWRpdXM6OTk5cHh9LnNldHRpbmdzLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6Izk2NzY1NTYxfS5zZXR0aW5ncy1jb250ZW50e3Njcm9sbGJhci13aWR0aDp0aGlufS5zZXR0aW5ncy1wYW5lbC5hY3RpdmV7ZGlzcGxheTpibG9jazthbmltYXRpb246ZmFkZS1pbiAuMThzIGVhc2V9LnNldHRpbmdzLXBhbmVsLWhlYWRlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo2cHg7bWFyZ2luOjAgMCAxNHB4O3BhZGRpbmctYm90dG9tOjEycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEyKX0uc2V0dGluZ3MtcGFuZWwtdGl0bGV7Zm9udC1zaXplOjEuMDYyNXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5zZXR0aW5ncy1wYW5lbC1kZXNje2ZvbnQtc2l6ZTouODEyNXJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7bGluZS1oZWlnaHQ6MS41NX0uc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLXNlY3Rpb24tdGl0bGV7bWFyZ2luLXRvcDoxOHB4fS5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3Mtc2VjdGlvbi10aXRsZTpmaXJzdC1vZi10eXBle21hcmdpbi10b3A6MH0uc2V0dGluZ3MtcGFuZWw+LmZpZWxkLXJvdywuc2V0dGluZ3MtcGFuZWw+LmZpZWxkLC5zZXR0aW5ncy1wYW5lbD4uZmllbGQtaGludHttYXgtd2lkdGg6NzYwcHh9LnNldHRpbmdzLXBhbmVsPi5zd2l0Y2gtY2FyZC1saXN0LC5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3MtY2FyZCwuc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uLC5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24sLnNldHRpbmdzLXBhbmVsPiNwcmVzZXRzLWxpc3R7bWF4LXdpZHRoOjg2MHB4fS5zZXR0aW5ncy1wYW5lbD4uc2V0dGluZ3MtY2FyZCsuc2V0dGluZ3MtY2FyZCwuc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLXVwZGF0ZS1zZWN0aW9uKy5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3MtcGFuZWw+LnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uKy5zZXR0aW5ncy1ub3RpZmljYXRpb24tc2VjdGlvbnttYXJnaW4tdG9wOjE0cHh9LnNldHRpbmdzLXBhbmVsW2hpZGRlbl17ZGlzcGxheTpub25lIWltcG9ydGFudH1AbWVkaWEobWF4LXdpZHRoOjkwMHB4KXsuc2V0dGluZ3MtbGF5b3V0e2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMjBweCBtaW5tYXgoMCwxZnIpO2dhcDoxOHB4fX1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuc2V0dGluZ3MtbW9kYWx7d2lkdGg6bWluKDEwMCUsNzIwcHgpO2hlaWdodDptaW4oOTJ2aCw5MjBweCk7bWF4LWhlaWdodDptaW4oOTJ2aCw5MjBweCk7bWluLWhlaWdodDptaW4oOTJ2aCw5MjBweCl9LnNldHRpbmdzLW1vZGFsLWJvZHl7b3ZlcmZsb3cteTphdXRvfS5zZXR0aW5ncy1sYXlvdXR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcik7Z2FwOjE0cHg7ZmxleDowIDAgYXV0b30uc2V0dGluZ3Mtc2lkZWJhcntwYWRkaW5nLXJpZ2h0OjA7Ym9yZGVyLXJpZ2h0Om5vbmV9LnNldHRpbmdzLXRhYnN7ZmxleC1kaXJlY3Rpb246cm93O2ZsZXgtd3JhcDpub3dyYXA7b3ZlcmZsb3cteDphdXRvO3Njcm9sbGJhci13aWR0aDpub25lO3BhZGRpbmctcmlnaHQ6MDtwYWRkaW5nLWJvdHRvbTo0cHh9LnNldHRpbmdzLXRhYnM6Oi13ZWJraXQtc2Nyb2xsYmFye2Rpc3BsYXk6bm9uZX0uc2V0dGluZ3MtdGFie2ZsZXg6MCAwIDIwMHB4O21pbi1oZWlnaHQ6NzJweH0uc2V0dGluZ3MtdGFiOmhvdmVye3RyYW5zZm9ybTpub25lfS5zZXR0aW5ncy1jb250ZW50e292ZXJmbG93OnZpc2libGU7cGFkZGluZy1yaWdodDowfX1AbWVkaWEobWF4LXdpZHRoOjQ4MHB4KXsuc2V0dGluZ3MtdGFie2ZsZXgtYmFzaXM6MTgwcHg7cGFkZGluZzoxMHB4IDEycHggMTBweCAxNHB4fS5zZXR0aW5ncy10YWItbWFpbntmb250LXNpemU6LjgxMjVyZW19LnNldHRpbmdzLXRhYi1tZXRhe2ZvbnQtc2l6ZTouNjg3NXJlbX19LnNldHRpbmdzLWFib3V0LWluZm97ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MDttYXJnaW4tYm90dG9tOjE4cHg7YmFja2dyb3VuZDojZmZmZmZmODA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7cGFkZGluZzo0cHggMTZweDtib3gtc2hhZG93OnZhcigtLXNoYWRvdy14cyl9LnNldHRpbmdzLWFib3V0LXJvd3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxNHB4O2ZvbnQtc2l6ZTouODEyNXJlbTtwYWRkaW5nOjEycHggMDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKX0uc2V0dGluZ3MtYWJvdXQtcm93Omxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbTpub25lfS5zZXR0aW5ncy1sYWJlbHtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC13ZWlnaHQ6NjAwO2ZsZXg6MCAwIDExMnB4fS5zZXR0aW5ncy12YWx1ZXtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOi44cmVtO21pbi13aWR0aDowO3RleHQtYWxpZ246cmlnaHQ7d29yZC1icmVhazpicmVhay13b3JkfS5zZXR0aW5ncy12YWx1ZSBhe2NvbG9yOnZhcigtLWFjY2VudCk7dGV4dC1kZWNvcmF0aW9uOm5vbmV9LnNldHRpbmdzLXZhbHVlIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0uc2V0dGluZ3MtdXBkYXRlLXNlY3Rpb24sLnNldHRpbmdzLW5vdGlmaWNhdGlvbi1zZWN0aW9uLC5zZXR0aW5ncy1jYXJkLC5zd2l0Y2gtY2FyZCwucHJlc2V0LWl0ZW17Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpfS5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb257bWFyZ2luLXRvcDoxNHB4O3BhZGRpbmc6MTZweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtiYWNrZ3JvdW5kOiNmZmZmZmY3YX0uc2V0dGluZ3Mtc2VjdGlvbi10aXRsZXtmb250LXNpemU6Ljg3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTttYXJnaW46MCAwIDEycHg7bGV0dGVyLXNwYWNpbmc6LjAxZW19LnNldHRpbmdzLXVwZGF0ZS1hY3Rpb25zLC5zZXR0aW5ncy1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtnYXA6MTBweDtmbGV4LXdyYXA6d3JhcDttYXJnaW4tdG9wOjEycHh9LnNldHRpbmdzLWFjdGlvbnMtc3RpY2t5e3Bvc2l0aW9uOnN0aWNreTtib3R0b206MDtwYWRkaW5nLXRvcDoxNnB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmYmY1MDAsI2ZmZmJmNWZhIDI4cHgpO3otaW5kZXg6MTtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnNldHRpbmdzLXN0YXR1cy1tZXNzYWdle21hcmdpbi10b3A6MTBweH0uc2V0dGluZ3MtaW5saW5lLWhpbnR7bWFyZ2luLXRvcDotNHB4O21hcmdpbi1ib3R0b206MTJweH0uc2V0dGluZ3MtY29ubmVjdC11cmwtYm94e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7YmFja2dyb3VuZDojZmZmZmZmYjg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjEycHg7cGFkZGluZzoxMHB4IDEycHg7bWFyZ2luLXRvcDo2cHh9LnNldHRpbmdzLWNvbm5lY3QtdXJsLXRleHR7ZmxleDoxO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKTtmb250LXNpemU6MTNweDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO3dvcmQtYnJlYWs6YnJlYWstYWxsO3VzZXItc2VsZWN0OmFsbDstd2Via2l0LXVzZXItc2VsZWN0OmFsbH0uc2V0dGluZ3MtY29ubmVjdC1xci1ib3h7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7bWFyZ2luLXRvcDoxNHB4fS5zZXR0aW5ncy1jb25uZWN0LXFyLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MjAwcHg7aGVpZ2h0OjIwMHB4O3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtib3JkZXItcmFkaXVzOjE2cHg7Ym94LXNoYWRvdzowIDRweCAxMnB4ICM3ZDViMzkxNDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTVzIGVhc2UsYm94LXNoYWRvdyAuMTVzIGVhc2U7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zZXR0aW5ncy1jb25uZWN0LXFyLXdyYXA6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDZweCAxNnB4ICM3ZDViMzkxZn0uc2V0dGluZ3MtY29ubmVjdC1xci13cmFwIGNhbnZhc3tkaXNwbGF5OmJsb2NrO21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6MTAwJX0uc2V0dGluZ3MtY29ubmVjdC1xci1lbXB0eXtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MTJweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7cG9pbnRlci1ldmVudHM6bm9uZX0uc2V0dGluZ3MtY29ubmVjdC1xci1oaW50e21hcmdpbjowO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0ZXh0LWFsaWduOmNlbnRlcjttYXgtd2lkdGg6MjgwcHh9LmNvbm5lY3QtcXItbW9kYWwtb3ZlcmxheXtwb3NpdGlvbjpmaXhlZDtpbnNldDowO2JhY2tncm91bmQ6IzE0MGUwODhjO2JhY2tkcm9wLWZpbHRlcjpibHVyKDZweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig2cHgpO3otaW5kZXg6OTk5OTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzoyNHB4fS5jb25uZWN0LXFyLW1vZGFsLWNhcmR7YmFja2dyb3VuZDojZmZmO2JvcmRlci1yYWRpdXM6MjBweDtwYWRkaW5nOjI0cHg7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjE0cHg7Ym94LXNoYWRvdzowIDIwcHggNjBweCAjMDAwMDAwNTl9LmNvbm5lY3QtcXItbW9kYWwtY2FyZCBjYW52YXN7ZGlzcGxheTpibG9jaztib3JkZXItcmFkaXVzOjhweH0uY29ubmVjdC1xci1tb2RhbC1oaW50e21hcmdpbjowO2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTt0ZXh0LWFsaWduOmNlbnRlcn0uZmllbGQtcm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSk7Z2FwOjE0cHg7bWFyZ2luLWJvdHRvbToxNHB4fS5maWVsZC1yb3cgLmZpZWxke21hcmdpbi1ib3R0b206MH0uc2V0dGluZ3MtY2FyZHtiYWNrZ3JvdW5kOiNmZmZmZmY4NTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtwYWRkaW5nOjE4cHg7bWFyZ2luLWJvdHRvbToxNHB4fS5zZXR0aW5ncy1jYXJkIC5maWVsZDpsYXN0LW9mLXR5cGV7bWFyZ2luLWJvdHRvbToxMnB4fS5zZXR0aW5ncy1jYXJkIC5zZXR0aW5ncy1zZWN0aW9uLXRpdGxle21hcmdpbi10b3A6MH0uc2V0dGluZ3MtY2FyZCAuZmllbGQtaW5wdXR7YmFja2dyb3VuZDojZmZmZmZmYjh9LnNldHRpbmdzLWNhcmQgLmJ0bi1ibG9ja3ttYXJnaW4tYm90dG9tOjB9LnNldHRpbmdzLXBhbmVsIC5idG4tYmxvY2t7bWluLWhlaWdodDo0NHB4fS5zZXR0aW5ncy1wYW5lbCAuaGludCwuc2V0dGluZ3MtcGFuZWwgLmZpZWxkLWhpbnR7bGluZS1oZWlnaHQ6MS41NX0uc2V0dGluZ3MtcGFuZWwgaW5wdXRbdHlwZT1yYW5nZV17d2lkdGg6MTAwJX0uc2V0dGluZ3MtcGFuZWwgY29kZXttYXgtd2lkdGg6MTAwJX0uc2V0dGluZ3MtcGFuZWwgLmhpZGRlbisuaGludHttYXJnaW4tdG9wOjB9LnNldHRpbmdzLXBhbmVsIC5maWVsZC1pbnB1dCwuc2V0dGluZ3MtcGFuZWwgLmZpZWxkLXNlbGVjdHt3aWR0aDoxMDAlfS5zZXR0aW5ncy1wYW5lbCAuYnRuLXNte21pbi1oZWlnaHQ6MzRweH0uc2V0dGluZ3MtcGFuZWwgLmVycm9yLW1lc3NhZ2UsLnNldHRpbmdzLXBhbmVsIC5oaW50LmhpZGRlbiwuc2V0dGluZ3MtcGFuZWwgLmVycm9yLW1lc3NhZ2UuaGlkZGVue21hcmdpbi10b3A6MTBweH0uc2V0dGluZ3MtcGFuZWwgI3ByZXNldHMtbGlzdDplbXB0eTpiZWZvcmV7Y29udGVudDoiXDUyYTBcOGY3ZFw0ZTJkLi4uIjtkaXNwbGF5OmJsb2NrO3BhZGRpbmc6MThweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6LjgxMjVyZW19QG1lZGlhKG1heC13aWR0aDo3NjhweCl7LnNldHRpbmdzLWFib3V0LXJvd3thbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5zZXR0aW5ncy11cGRhdGUtYWN0aW9ucywuc2V0dGluZ3MtYWN0aW9uc3tmbGV4LWRpcmVjdGlvbjpjb2x1bW59LnNldHRpbmdzLXVwZGF0ZS1hY3Rpb25zIC5idG4sLnNldHRpbmdzLWFjdGlvbnMgLmJ0bnt3aWR0aDoxMDAlfS5zZXR0aW5ncy1jb25uZWN0LXVybC1ib3h7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2h9fUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5zZXR0aW5ncy1tb2RhbC1oZWFkZXJ7Z2FwOjEwcHh9LnNldHRpbmdzLW1vZGFsLXN1YnRpdGxle2ZvbnQtc2l6ZTouNjg3NXJlbX0uc2V0dGluZ3MtcGFuZWx7cGFkZGluZy1sZWZ0OjA7cGFkZGluZy1yaWdodDowfS5zZXR0aW5ncy1hYm91dC1pbmZvLC5zZXR0aW5ncy11cGRhdGUtc2VjdGlvbiwuc2V0dGluZ3Mtbm90aWZpY2F0aW9uLXNlY3Rpb24sLnNldHRpbmdzLWNhcmR7cGFkZGluZy1sZWZ0OjE0cHg7cGFkZGluZy1yaWdodDoxNHB4fS5zZXR0aW5ncy1hYm91dC1yb3d7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Z2FwOjRweH0uc2V0dGluZ3MtbGFiZWwsLnNldHRpbmdzLXZhbHVle2ZsZXg6bm9uZTt0ZXh0LWFsaWduOmxlZnR9LnNldHRpbmdzLXBhbmVsIC5idG4taWNvbnttaW4td2lkdGg6MzRweDttaW4taGVpZ2h0OjM0cHh9fUBtZWRpYShtaW4td2lkdGg6NzY5cHgpey5zZXR0aW5ncy1wYW5lbCAuYnRuLWJsb2Nre3dpZHRoOmF1dG87bWluLXdpZHRoOjE4MHB4fX1Ac3VwcG9ydHMgbm90IChwb3NpdGlvbjogc3RpY2t5KXsuc2V0dGluZ3MtdGFicywuc2V0dGluZ3MtYWN0aW9ucy1zdGlja3l7cG9zaXRpb246c3RhdGljfX0uZW1wdHktc3RhdGUtY29tcGFjdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6MzJweCAxNnB4O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc2l6ZTouODEyNXJlbX0uZW1wdHktc3RhdGUtY29tcGFjdCAuZW1wdHktaWNvbntmb250LXNpemU6MS41cmVtO29wYWNpdHk6LjV9LnN3aXRjaC1jYXJkLWxpc3R7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweH0uc3dpdGNoLWNhcmR7ZGlzcGxheTpibG9jaztiYWNrZ3JvdW5kOiNmZmZmZmY4MDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoxNHB4O3BhZGRpbmc6MTRweCAxNnB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4ycyxiYWNrZ3JvdW5kIC4ycyx0cmFuc2Zvcm0gLjJzO3VzZXItc2VsZWN0Om5vbmV9LnN3aXRjaC1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX0uc3dpdGNoLWNhcmQtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHh9LnN3aXRjaC1jYXJkLXRpdGxle2ZsZXg6MTtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LnN3aXRjaC1jYXJkLWRlc2N7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTttYXJnaW4tdG9wOjA7bWF4LWhlaWdodDowO292ZXJmbG93OmhpZGRlbjtvcGFjaXR5OjA7dHJhbnNpdGlvbjptYXgtaGVpZ2h0IC4yNXMgZWFzZSxvcGFjaXR5IC4ycyBlYXNlLG1hcmdpbi10b3AgLjI1cyBlYXNlfS5zd2l0Y2gtY2FyZDpoYXMoLnN3aXRjaC10b2dnbGU6Y2hlY2tlZCkgLnN3aXRjaC1jYXJkLWRlc2N7bWF4LWhlaWdodDo0MHB4O29wYWNpdHk6MTttYXJnaW4tdG9wOjhweH0uc3dpdGNoLWNhcmQ6aGFzKC5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQpe2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWNjZW50KSA2JSx2YXIoLS1iZy1zZWNvbmRhcnkpKX0uc3dpdGNoLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtvcGFjaXR5OjA7d2lkdGg6MDtoZWlnaHQ6MDtwb2ludGVyLWV2ZW50czpub25lfS5zd2l0Y2gtc2xpZGVye3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjQ0cHg7aGVpZ2h0OjI2cHg7bWluLXdpZHRoOjQ0cHg7Ym9yZGVyLXJhZGl1czoxM3B4O2JhY2tncm91bmQ6IzdkNWIzOTM4O2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMXB4ICM3ZDViMzkyZTt0cmFuc2l0aW9uOmJhY2tncm91bmQgLjIycyBlYXNlLGJveC1zaGFkb3cgLjIycyBlYXNlO2N1cnNvcjpwb2ludGVyfS5zd2l0Y2gtc2xpZGVyOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOjJweDtsZWZ0OjJweDt3aWR0aDoyMnB4O2hlaWdodDoyMnB4O2JhY2tncm91bmQ6I2ZmZjtib3JkZXItcmFkaXVzOjUwJTtib3gtc2hhZG93OjAgMnB4IDRweCAjMTQwZTA4MmUsMCAwIDAgLjVweCAjN2Q1YjM5MGY7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI0cyBjdWJpYy1iZXppZXIoLjM0LDEuNCwuNjQsMSl9LnN3aXRjaC10b2dnbGU6Y2hlY2tlZCsuc3dpdGNoLXNsaWRlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxcHggIzAwMDAwMDFhfS5zd2l0Y2gtdG9nZ2xlOmNoZWNrZWQrLnN3aXRjaC1zbGlkZXI6YWZ0ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZSgxOHB4KX0uc3dpdGNoLXRvZ2dsZTpmb2N1cy12aXNpYmxlKy5zd2l0Y2gtc2xpZGVye291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5wcmVzZXQtaXRlbXtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6MTJweCAxNHB4O2JhY2tncm91bmQ6I2ZmZmZmZjg1O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMnB4O21hcmdpbi1ib3R0b206MTBweDtmb250LXNpemU6LjgxMjVyZW19LnByZXNldC1sYWJlbHtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ucHJlc2V0LWRldGFpbHttaW4td2lkdGg6MDt0ZXh0LWFsaWduOnJpZ2h0O2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNzVyZW07d29yZC1icmVhazpicmVhay13b3JkfUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5wcmVzZXQtaXRlbXtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydH0ucHJlc2V0LWRldGFpbHt0ZXh0LWFsaWduOmxlZnR9fS5maWxlLXByZXZpZXctbW9kYWx7d2lkdGg6bWluKDkwdncsbWF4KDY0MHB4LGNhbGMoMTAwdncgLSAzODBweCkpKTttYXgtd2lkdGg6MTAwMHB4O2hlaWdodDo4MHZoO21heC1oZWlnaHQ6ODV2aDtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWxnKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym94LXNoYWRvdzowIDIwcHggNjBweCAjMDAwMDAwNGQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtvdmVyZmxvdzpoaWRkZW47YW5pbWF0aW9uOm1vZGFsLXNsaWRlLWluIC4ycyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKX1Aa2V5ZnJhbWVzIG1vZGFsLXNsaWRlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMjBweCkgc2NhbGUoLjk4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCkgc2NhbGUoMSl9fUBtZWRpYShtYXgtd2lkdGg6NzY4cHgpey5maWxlLXByZXZpZXctb3ZlcmxheXtwYWRkaW5nOjA7YWxpZ24taXRlbXM6c3RyZXRjaDtqdXN0aWZ5LWNvbnRlbnQ6c3RyZXRjaDt0b3A6dmFyKC0tYXBwLXZpZXdwb3J0LXRvcCwgMHB4KTtoZWlnaHQ6dmFyKC0tYXBwLXZpZXdwb3J0LWhlaWdodCwgMTAwZHZoKX0uZmlsZS1wcmV2aWV3LW1vZGFse3dpZHRoOjEwMHZ3O21heC13aWR0aDoxMDB2dztoZWlnaHQ6dmFyKC0tYXBwLXZpZXdwb3J0LWhlaWdodCwgMTAwZHZoKTttYXgtaGVpZ2h0OnZhcigtLWFwcC12aWV3cG9ydC1oZWlnaHQsIDEwMGR2aCk7Ym9yZGVyLXJhZGl1czowO2JvcmRlcjpub25lO2JveC1zaGFkb3c6bm9uZTthbmltYXRpb246ZmFkZS1pbiAuMThzIGVhc2V9LmZpbGUtcHJldmlldy1oZWFkZXJ7cGFkZGluZzoxMHB4IDEycHg7Z2FwOjhweDtwYWRkaW5nLXRvcDptYXgoMTBweCxlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkpO3BhZGRpbmctbGVmdDptYXgoMTJweCxlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtwYWRkaW5nLXJpZ2h0Om1heCgxMnB4LGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKX0uZmlsZS1wcmV2aWV3LXRpdGxle2ZvbnQtc2l6ZTouODc1cmVtO2dhcDo2cHg7bWluLXdpZHRoOjA7ZmxleDoxfS5maWxlLXByZXZpZXctZmlsZW5hbWV7bWF4LXdpZHRoOjEwMCV9LmZpbGUtcHJldmlldy1wYXRoe2Rpc3BsYXk6bm9uZX0uZmlsZS1wcmV2aWV3LXRvb2xiYXJ7Z2FwOjRweDtmbGV4LXNocmluazowfS5maWxlLXByZXZpZXctdG9vbGJhci1idG57cGFkZGluZzowIDZweDtmb250LXNpemU6Ljc1cmVtfS5maWxlLXByZXZpZXctY2xvc2V7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtwYWRkaW5nOjB9LmZpbGUtcHJldmlldy1pY29ue2ZvbnQtc2l6ZToxLjEyNXJlbX0uZmlsZS1wcmV2aWV3LWJvZHl7cGFkZGluZy1ib3R0b206ZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pfX0uZmlsZS1wcmV2aWV3LWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6MTJweCAxOHB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KTtmbGV4LXNocmluazowfS5maWxlLXByZXZpZXctdGl0bGV7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtmb250LXNpemU6LjkzNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7ZmxleDoxO21pbi13aWR0aDowfS5maWxlLXByZXZpZXctaWNvbntmb250LXNpemU6MS4yNXJlbTtsaW5lLWhlaWdodDoxO2ZsZXgtc2hyaW5rOjB9LmZpbGUtcHJldmlldy1uYW1lLWJsb2Nre2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweDttaW4td2lkdGg6MDtmbGV4OjF9LmZpbGUtcHJldmlldy1uYW1lLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7Z2FwOjhweDttaW4td2lkdGg6MH0uZmlsZS1wcmV2aWV3LWZpbGVuYW1le292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDtmb250LXNpemU6LjkzNzVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7bGV0dGVyLXNwYWNpbmc6LjAxZW07bWluLXdpZHRoOjB9LmZpbGUtcHJldmlldy1wYXRoe2ZvbnQtc2l6ZTouN3JlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO3doaXRlLXNwYWNlOm5vd3JhcDttaW4td2lkdGg6MDtvcGFjaXR5Oi44fS5maWxlLXByZXZpZXctZGlydHl7Zm9udC1zaXplOi42ODc1cmVtO2NvbG9yOiNjNjZhMWE7Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOi4wMmVtO2ZsZXgtc2hyaW5rOjA7cGFkZGluZzoxcHggOHB4O2JhY2tncm91bmQ6I2M2NmExYTFhO2JvcmRlcjoxcHggc29saWQgcmdiYSgxOTgsMTA2LDI2LC4yNSk7Ym9yZGVyLXJhZGl1czo5OTlweDthbmltYXRpb246ZGlydHktcHVsc2UgMS42cyBlYXNlLWluLW91dCBpbmZpbml0ZX1Aa2V5ZnJhbWVzIGRpcnR5LXB1bHNlezAlLHRve29wYWNpdHk6LjY1fTUwJXtvcGFjaXR5OjF9fS5maWxlLXByZXZpZXctbGFuZ3tmb250LXNpemU6LjY4NzVyZW07Zm9udC13ZWlnaHQ6NjAwO3BhZGRpbmc6MnB4IDhweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50LW11dGVkKTtjb2xvcjp2YXIoLS1hY2NlbnQpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyMTIsMTUyLDk5LC4zKTtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7ZmxleC1zaHJpbms6MDthbGlnbi1zZWxmOmNlbnRlcn0uZmlsZS1wcmV2aWV3LWNsb3Nle2JhY2tncm91bmQ6bm9uZTtib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O2N1cnNvcjpwb2ludGVyO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7cGFkZGluZzowO2JvcmRlci1yYWRpdXM6OHB4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNXMsY29sb3IgLjE1cyxib3JkZXItY29sb3IgLjE1cyx0cmFuc2Zvcm0gLjE1cztsaW5lLWhlaWdodDoxO2ZsZXgtc2hyaW5rOjB9LmZpbGUtcHJldmlldy1jbG9zZTpob3ZlcntiYWNrZ3JvdW5kOiNkYzQ2NDYxNDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JvcmRlci1jb2xvcjojZGM0NjQ2NDB9LmZpbGUtcHJldmlldy1jbG9zZTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45NCl9LmZpbGUtcHJldmlldy1ib2R5e2ZsZXg6MTtvdmVyZmxvdzphdXRvO21pbi1oZWlnaHQ6MDtzY3JvbGxiYXItd2lkdGg6dGhpbjtzY3JvbGxiYXItY29sb3I6dmFyKC0tYm9yZGVyLWRlZmF1bHQpIHRyYW5zcGFyZW50fS5maWxlLXByZXZpZXctYm9keTo6LXdlYmtpdC1zY3JvbGxiYXJ7d2lkdGg6OHB4O2hlaWdodDo4cHh9LmZpbGUtcHJldmlldy1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10cmFja3tiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5maWxlLXByZXZpZXctYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWJ7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItZGVmYXVsdCk7Ym9yZGVyLXJhZGl1czo0cHh9LmZpbGUtcHJldmlldy1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLXRleHQtbXV0ZWQpfS5maWxlLXByZXZpZXctYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVye2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LmNvZGUtcHJldmlldy13cmFwcGVye2Rpc3BsYXk6ZmxleDtoZWlnaHQ6MTAwJTtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTpoaWRkZW47c2Nyb2xsYmFyLXdpZHRoOnRoaW47c2Nyb2xsYmFyLWNvbG9yOnZhcigtLWJvcmRlci1kZWZhdWx0KSB0cmFuc3BhcmVudH0uY29kZS1wcmV2aWV3LXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFye3dpZHRoOjhweDtoZWlnaHQ6OHB4fS5jb2RlLXByZXZpZXctd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2t7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uY29kZS1wcmV2aWV3LXdyYXBwZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1ie2JhY2tncm91bmQ6dmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JvcmRlci1yYWRpdXM6NHB4fS5jb2RlLXByZXZpZXctd3JhcHBlcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS10ZXh0LW11dGVkKX0uY29kZS1wcmV2aWV3LWxpbmVze3BhZGRpbmc6MTZweCAxMnB4IDE2cHggMTZweDt0ZXh0LWFsaWduOnJpZ2h0O3VzZXItc2VsZWN0Om5vbmU7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6dmFyKC0tZm9udC1zaXplLXNtKTtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodCk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTt3aWR0aDo1MnB4O21heC13aWR0aDo1MnB4O2ZsZXgtc2hyaW5rOjA7b3ZlcmZsb3c6aGlkZGVufS5jb2RlLXByZXZpZXctY29udGVudHtmbGV4OjE7bWluLXdpZHRoOjA7d2lkdGg6MTAwJTtwYWRkaW5nOjE2cHggMjBweDtvdmVyZmxvdy14OmF1dG87b3ZlcmZsb3cteTphdXRvfS5jb2RlLXByZXZpZXctY29udGVudCBwcmV7bWFyZ2luOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6dmFyKC0tZm9udC1zaXplLXNtKTtsaW5lLWhlaWdodDp2YXIoLS1saW5lLWhlaWdodCk7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTt3aGl0ZS1zcGFjZTpwcmU7d29yZC1icmVhazpub3JtYWw7b3ZlcmZsb3ctd3JhcDpub3JtYWx9LnN5bnRheC1rZXl3b3Jke2NvbG9yOiNjNjc4ZGR9LnN5bnRheC1zdHJpbmd7Y29sb3I6Izk4YzM3OX0uc3ludGF4LW51bWJlcntjb2xvcjojZDE5YTY2fS5zeW50YXgtY29tbWVudHtjb2xvcjojNWM2MzcwO2ZvbnQtc3R5bGU6aXRhbGljfS5zeW50YXgtZnVuY3Rpb257Y29sb3I6IzYxYWZlZn0uc3ludGF4LW9wZXJhdG9ye2NvbG9yOiM1NmI2YzJ9LnN5bnRheC10eXBle2NvbG9yOiNlNWMwN2J9LnN5bnRheC1wdW5jdHVhdGlvbntjb2xvcjojYWJiMmJmfS5tYXJrZG93bi1wcmV2aWV3e3BhZGRpbmc6MjBweCAyOHB4O2xpbmUtaGVpZ2h0OjEuNztmb250LXNpemU6LjkzNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0ubWFya2Rvd24tcHJldmlldyBoMSwubWFya2Rvd24tcHJldmlldyBoMiwubWFya2Rvd24tcHJldmlldyBoMywubWFya2Rvd24tcHJldmlldyBoNCwubWFya2Rvd24tcHJldmlldyBoNSwubWFya2Rvd24tcHJldmlldyBoNnttYXJnaW4tdG9wOjEuNWVtO21hcmdpbi1ib3R0b206LjVlbTtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MS4zO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9Lm1hcmtkb3duLXByZXZpZXcgaDF7Zm9udC1zaXplOjEuNzVyZW07Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyKTtwYWRkaW5nLWJvdHRvbTouM2VtfS5tYXJrZG93bi1wcmV2aWV3IGgye2ZvbnQtc2l6ZToxLjM3NXJlbTtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3BhZGRpbmctYm90dG9tOi4zZW19Lm1hcmtkb3duLXByZXZpZXcgaDN7Zm9udC1zaXplOjEuMTI1cmVtfS5tYXJrZG93bi1wcmV2aWV3IGg0e2ZvbnQtc2l6ZToxcmVtfS5tYXJrZG93bi1wcmV2aWV3IHB7bWFyZ2luOi43NWVtIDB9Lm1hcmtkb3duLXByZXZpZXcgYXtjb2xvcjp2YXIoLS1hY2NlbnQpO3RleHQtZGVjb3JhdGlvbjpub25lfS5tYXJrZG93bi1wcmV2aWV3IGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0ubWFya2Rvd24tcHJldmlldyBjb2Rle2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpO3BhZGRpbmc6MnB4IDZweDtib3JkZXItcmFkaXVzOjNweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouODc1ZW07Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpfS5tYXJrZG93bi1wcmV2aWV3IHByZXtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLW1kKTtwYWRkaW5nOjE2cHg7b3ZlcmZsb3cteDphdXRvO21hcmdpbjoxZW0gMH0ubWFya2Rvd24tcHJldmlldyBwcmUgY29kZXtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7cGFkZGluZzowO2ZvbnQtc2l6ZTp2YXIoLS1mb250LXNpemUtc20pfS5tYXJrZG93bi1wcmV2aWV3IGJsb2NrcXVvdGV7Ym9yZGVyLWxlZnQ6NHB4IHNvbGlkIHZhcigtLWFjY2VudCk7bWFyZ2luOjFlbSAwO3BhZGRpbmc6LjVlbSAxZW07YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtib3JkZXItcmFkaXVzOjAgdmFyKC0tcmFkaXVzLXNtKSB2YXIoLS1yYWRpdXMtc20pIDB9Lm1hcmtkb3duLXByZXZpZXcgdWwsLm1hcmtkb3duLXByZXZpZXcgb2x7cGFkZGluZy1sZWZ0OjEuNWVtO21hcmdpbjouNzVlbSAwfS5tYXJrZG93bi1wcmV2aWV3IGxpe21hcmdpbjouMjVlbSAwfS5tYXJrZG93bi1wcmV2aWV3IHRhYmxle2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZTt3aWR0aDoxMDAlO21hcmdpbjoxZW0gMDtmb250LXNpemU6Ljg3NXJlbX0ubWFya2Rvd24tcHJldmlldyB0aCwubWFya2Rvd24tcHJldmlldyB0ZHtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7cGFkZGluZzo4cHggMTJweDt0ZXh0LWFsaWduOmxlZnR9Lm1hcmtkb3duLXByZXZpZXcgdGh7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2ZvbnQtd2VpZ2h0OjYwMH0ubWFya2Rvd24tcHJldmlldyB0cjpudGgtY2hpbGQoMm4pe2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KX0ubWFya2Rvd24tcHJldmlldyBocntib3JkZXI6bm9uZTtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO21hcmdpbjoxLjVlbSAwfS5tYXJrZG93bi1wcmV2aWV3IGltZ3ttYXgtd2lkdGg6MTAwJTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSl9LmZpbGUtcHJldmlldy1sb2FkaW5ne2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtoZWlnaHQ6MTAwJTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXNpemU6Ljg3NXJlbTtnYXA6MTBweH0uZmlsZS1wcmV2aWV3LWxvYWRpbmc6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6MTZweDtoZWlnaHQ6MTZweDtib3JkZXI6MnB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItdG9wLWNvbG9yOnZhcigtLWFjY2VudCk7Ym9yZGVyLXJhZGl1czo1MCU7YW5pbWF0aW9uOnByZXZpZXctc3BpbiAuN3MgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgcHJldmlldy1zcGlue3Rve3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19LmZpbGUtcHJldmlldy1lcnJvcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2hlaWdodDoxMDAlO2dhcDo4cHg7Y29sb3I6dmFyKC0tZGFuZ2VyKTtmb250LXNpemU6Ljg3NXJlbTt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjIwcHh9LmZpbGUtcHJldmlldy1lcnJvciAucHJldmlldy1lcnJvci1pY29ue2ZvbnQtc2l6ZToycmVtO29wYWNpdHk6LjV9LnRyZWUtaXRlbVtkYXRhLXR5cGU9ZmlsZV17Y3Vyc29yOnBvaW50ZXJ9LnRyZWUtaXRlbVtkYXRhLXR5cGU9ZmlsZV06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy1ob3Zlcil9LnRyZWUtaXRlbVtkYXRhLXR5cGU9ZmlsZV06aG92ZXIgLnRyZWUtbmFtZXtjb2xvcjp2YXIoLS1hY2NlbnQpfS5maWxlLWV4cGxvcmVyLXVwe2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7d2lkdGg6MzBweDtoZWlnaHQ6MzBweDtib3JkZXItcmFkaXVzOjhweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCB2YXIoLS10cmFuc2l0aW9uLWZhc3QpLGNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksYm9yZGVyLWNvbG9yIHZhcigtLXRyYW5zaXRpb24tZmFzdCksdHJhbnNmb3JtIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7ZmxleC1zaHJpbms6MH0uZmlsZS1leHBsb3Jlci11cDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItc3VidGxlKX0uZmlsZS1leHBsb3Jlci11cDphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9LnRyZWUtbWV0YXtmbGV4LXNocmluazowO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7bWFyZ2luLWxlZnQ6NnB4O3BhZGRpbmctbGVmdDo2cHg7bWF4LXdpZHRoOjcwcHg7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO29wYWNpdHk6Ljg1fS50cmVlLWl0ZW06aG92ZXIgLnRyZWUtbWV0YXtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LnRyZWUtdHJ1bmNhdGVke3BhZGRpbmc6OHB4IDE0cHg7bWFyZ2luOjRweCA2cHggOHB4O2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSk7Ym9yZGVyOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOjZweDt0ZXh0LWFsaWduOmNlbnRlcn0uZmlsZS1jb250ZXh0LW1lbnV7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDoxMTAwO21pbi13aWR0aDoyMDBweDtwYWRkaW5nOjRweDtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOjEwcHg7Ym94LXNoYWRvdzowIDEycHggMzZweCAjMDAwMDAwMmU7YW5pbWF0aW9uOmN0eC1mYWRlLWluIC4xMnMgZWFzZX1Aa2V5ZnJhbWVzIGN0eC1mYWRlLWluezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNHB4KSBzY2FsZSguOTgpfXRve29wYWNpdHk6MTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKX19LmZpbGUtY29udGV4dC1tZW51LWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDt3aWR0aDoxMDAlO3BhZGRpbmc6OHB4IDEycHg7Ym9yZGVyOm5vbmU7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2ZvbnQtc2l6ZTouODEyNXJlbTt0ZXh0LWFsaWduOmxlZnQ7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyLXJhZGl1czo2cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xMnN9LmZpbGUtY29udGV4dC1tZW51LWl0ZW06aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSl9LmZpbGUtY29udGV4dC1tZW51LWl0ZW0gLmN0eC1pY29ue3dpZHRoOjE4cHg7dGV4dC1hbGlnbjpjZW50ZXI7b3BhY2l0eTouODV9LndhbmQtbWluaS10b2FzdHtwb3NpdGlvbjpmaXhlZDt0b3A6MzBweDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTE0cHgpO3otaW5kZXg6MTIwMDtwYWRkaW5nOjhweCAxNnB4O2JhY2tncm91bmQ6IzE0MTQxNGViO2NvbG9yOiNmZmY7Zm9udC1zaXplOi44MTI1cmVtO2JvcmRlci1yYWRpdXM6OTk5cHg7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuMThzIGVhc2UsdHJhbnNmb3JtIC4xOHMgZWFzZTtwb2ludGVyLWV2ZW50czpub25lfS53YW5kLW1pbmktdG9hc3Quc2hvd3tvcGFjaXR5OjE7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlKX0uZmlsZS1wcmV2aWV3LXRvb2xiYXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4O2ZsZXgtc2hyaW5rOjA7bWFyZ2luLWxlZnQ6OHB4fS5maWxlLXByZXZpZXctdG9vbGJhci1idG57YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MCA4cHg7bWluLXdpZHRoOjMwcHg7aGVpZ2h0OjMwcHg7Z2FwOjZweDtib3JkZXItcmFkaXVzOjhweDtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1zaXplOi43NXJlbTtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLGNvbG9yIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXMsYm94LXNoYWRvdyAuMTVzLHRyYW5zZm9ybSAuMXN9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KTtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXIpO2JveC1zaGFkb3c6MCAxcHggM3B4ICMwMDAwMDAwYX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk1KX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuOmRpc2FibGVke29wYWNpdHk6LjU7Y3Vyc29yOm5vdC1hbGxvd2VkO3RyYW5zZm9ybTpub25lfS5maWxlLXByZXZpZXctdG9vbGJhci1idG4gLnRvb2xiYXItaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5maWxlLXByZXZpZXctdG9vbGJhci1idG4gLnRvb2xiYXItdGV4dHtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAxZW19LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bi50b29sYmFyLWFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Y29sb3I6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6I2Q0OTg2MzY2fS5maWxlLXByZXZpZXctdG9vbGJhci1idG4ucHJpbWFyeXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMXB4IDJweCAjNTkzYTIwMjZ9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0bi5wcmltYXJ5OmhvdmVye2JhY2tncm91bmQ6I2I4N2E0Nztib3JkZXItY29sb3I6I2I4N2E0Nztjb2xvcjojZmZmO2JveC1zaGFkb3c6MCAycHggNnB4ICM1OTNhMjAzM30uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuLmRhbmdlcntjb2xvcjojYzAzOTJifS5maWxlLXByZXZpZXctdG9vbGJhci1idG4uZGFuZ2VyOmhvdmVye2JhY2tncm91bmQ6I2RjNDY0NjE0O2JvcmRlci1jb2xvcjojZGM0NjQ2NGQ7Y29sb3I6I2EwMjgxOH0uZmlsZS1wcmV2aWV3LXRvb2xiYXItZ3JvdXB7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpzdHJldGNoO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czo4cHg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSl9LmZpbGUtcHJldmlldy10b29sYmFyLWdyb3VwIC5maWxlLXByZXZpZXctdG9vbGJhci1idG57Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7bWluLXdpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7Ym94LXNoYWRvdzpub25lfS5maWxlLXByZXZpZXctdG9vbGJhci1ncm91cCAuZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYmctdGVydGlhcnkpfS5maWxlLXByZXZpZXctdG9vbGJhci1ncm91cGxhYmVse2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzowIDZweDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtib3JkZXItbGVmdDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJpZ2h0OjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSl9LmZpbGUtcHJldmlldy10b29sYmFyLmVkaXRpbmd7Z2FwOjZweH1AbWVkaWEobWF4LXdpZHRoOjc2OHB4KXsuZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRue2hlaWdodDoyOHB4O21pbi13aWR0aDoyOHB4O3BhZGRpbmc6MCA2cHh9LmZpbGUtcHJldmlldy10b29sYmFyLWJ0biAudG9vbGJhci10ZXh0e2Rpc3BsYXk6bm9uZX0uZmlsZS1wcmV2aWV3LXRvb2xiYXItYnRuLnByaW1hcnkgLnRvb2xiYXItdGV4dHtkaXNwbGF5OmlubGluZS1mbGV4fX0ud2FuZC1pY29ue2ZsZXgtc2hyaW5rOjA7dmVydGljYWwtYWxpZ246bWlkZGxlfS5jb2RlLXByZXZpZXctY29udGVudCBwcmUud3JhcHt3aGl0ZS1zcGFjZTpwcmUtd3JhcDt3b3JkLWJyZWFrOmJyZWFrLXdvcmR9LmZpbGUtcHJldmlldy1ib2R5LmVkaXRpbmd7cGFkZGluZzowO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSl9LmNvZGUtZWRpdG9yLXdyYXBwZXJ7ZGlzcGxheTpmbGV4O3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7bWluLWhlaWdodDowO2JhY2tncm91bmQ6dmFyKC0tYmctcHJpbWFyeSl9LmNvZGUtZWRpdG9yLXRleHRhcmVhe2ZsZXg6MTt3aWR0aDoxMDAlO2hlaWdodDoxMDAlO21pbi1oZWlnaHQ6MDtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzoxNnB4IDIwcHg7bWFyZ2luOjA7Ym9yZGVyOm5vbmU7b3V0bGluZTpub25lO3Jlc2l6ZTpub25lO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOnZhcigtLWZvbnQtc2l6ZS1zbSk7bGluZS1oZWlnaHQ6dmFyKC0tbGluZS1oZWlnaHQpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7YmFja2dyb3VuZDp2YXIoLS1iZy1wcmltYXJ5KTt0YWItc2l6ZToyOy1tb3otdGFiLXNpemU6Mjt3aGl0ZS1zcGFjZTpwcmU7b3ZlcmZsb3c6YXV0bztjYXJldC1jb2xvcjp2YXIoLS1hY2NlbnQpO3Njcm9sbGJhci13aWR0aDp0aGluO3Njcm9sbGJhci1jb2xvcjp2YXIoLS1ib3JkZXItZGVmYXVsdCkgdHJhbnNwYXJlbnR9LmNvZGUtZWRpdG9yLXRleHRhcmVhOjotd2Via2l0LXNjcm9sbGJhcnt3aWR0aDo4cHg7aGVpZ2h0OjhweH0uY29kZS1lZGl0b3ItdGV4dGFyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNre2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9LmNvZGUtZWRpdG9yLXRleHRhcmVhOjotd2Via2l0LXNjcm9sbGJhci10aHVtYntiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOjRweH0uY29kZS1lZGl0b3ItdGV4dGFyZWE6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tdGV4dC1tdXRlZCl9LmNvZGUtZWRpdG9yLXRleHRhcmVhOmZvY3Vze2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMnB4ICNkNDk4NjMyNn0uZmlsZS1wcmV2aWV3LWJvZHkua2luZC1pbWFnZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgwLDAsMCwuMDQpIDI1JSx0cmFuc3BhcmVudCAyNSUsdHJhbnNwYXJlbnQgNzUlLHJnYmEoMCwwLDAsLjA0KSA3NSUpLGxpbmVhci1ncmFkaWVudCg0NWRlZyxyZ2JhKDAsMCwwLC4wNCkgMjUlLHRyYW5zcGFyZW50IDI1JSx0cmFuc3BhcmVudCA3NSUscmdiYSgwLDAsMCwuMDQpIDc1JSksdmFyKC0tYmctcHJpbWFyeSk7YmFja2dyb3VuZC1zaXplOjE2cHggMTZweDtiYWNrZ3JvdW5kLXBvc2l0aW9uOjAgMCw4cHggOHB4fS5pbWFnZS1wcmV2aWV3LXdyYXBwZXJ7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7b3ZlcmZsb3c6YXV0bztwYWRkaW5nOjE2cHh9LmltYWdlLXByZXZpZXctaW1ne21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvbnRhaW47Y3Vyc29yOnpvb20taW47dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2U7Ym94LXNoYWRvdzowIDZweCAyMHB4ICMwMDAwMDAxZjtib3JkZXItcmFkaXVzOjRweDtiYWNrZ3JvdW5kOiNmZmZ9LmltYWdlLXByZXZpZXctaW1nLnpvb21lZHttYXgtd2lkdGg6bm9uZTttYXgtaGVpZ2h0Om5vbmU7Y3Vyc29yOnpvb20tb3V0O3RyYW5zZm9ybTpzY2FsZSgxKX0uZmlsZS1wcmV2aWV3LWJvZHkua2luZC1wZGZ7cGFkZGluZzowO2JhY2tncm91bmQ6dmFyKC0tYmctc2Vjb25kYXJ5KX0ucGRmLXByZXZpZXctZnJhbWV7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSl9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtdmlkZW8sLmZpbGUtcHJldmlldy1ib2R5LmtpbmQtYXVkaW97ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JhY2tncm91bmQ6IzBkMGQwZH0uZmlsZS1wcmV2aWV3LWJvZHkua2luZC1hdWRpb3tiYWNrZ3JvdW5kOnZhcigtLWJnLXNlY29uZGFyeSl9Lm1lZGlhLXByZXZpZXctd3JhcHBlcntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDttYXgtd2lkdGg6MTAwJTttYXgtaGVpZ2h0OjEwMCU7cGFkZGluZzoyNHB4fS5tZWRpYS1wcmV2aWV3LXZpZGVve21heC13aWR0aDoxMDAlO21heC1oZWlnaHQ6Y2FsYygxMDAlIC0gNDBweCk7YmFja2dyb3VuZDojMDAwO2JvcmRlci1yYWRpdXM6NHB4fS5tZWRpYS1wcmV2aWV3LWF1ZGlve3dpZHRoOm1pbig0MjBweCw5MCUpfS5tZWRpYS1wcmV2aWV3LWljb257Zm9udC1zaXplOjMuNXJlbTtvcGFjaXR5Oi43fS5tZWRpYS1wcmV2aWV3LW5hbWV7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOjFyZW07bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5tZWRpYS1wcmV2aWV3LW1ldGF7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi43NXJlbTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtdmlkZW8gLm1lZGlhLXByZXZpZXctbWV0YXtjb2xvcjojZmZmZmZmYjN9LmZpbGUtcHJldmlldy1ib2R5LmtpbmQtYmluYXJ5e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn0uYmluYXJ5LXByZXZpZXctY2FyZHttYXgtd2lkdGg6NDgwcHg7cGFkZGluZzozMnB4IDI4cHg7dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZDp2YXIoLS1iZy1zZWNvbmRhcnkpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1sZyk7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHh9LmJpbmFyeS1wcmV2aWV3LWljb257Zm9udC1zaXplOjNyZW07b3BhY2l0eTouNn0uYmluYXJ5LXByZXZpZXctbmFtZXtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXNpemU6MXJlbTt3b3JkLWJyZWFrOmJyZWFrLWFsbH0uYmluYXJ5LXByZXZpZXctbWV0YXtkaXNwbGF5OmZsZXg7Z2FwOjZweDthbGlnbi1pdGVtczpjZW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi43NXJlbX0uYmluYXJ5LXByZXZpZXctcGF0aHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwfS5iaW5hcnktcHJldmlldy1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtnYXA6OHB4O21hcmdpbi10b3A6OHB4O2ZsZXgtd3JhcDp3cmFwO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmJpbmFyeS1wcmV2aWV3LWJ0bntwYWRkaW5nOjhweCAxNnB4O2JvcmRlci1yYWRpdXM6NnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtiYWNrZ3JvdW5kOnZhcigtLWJnLXByaW1hcnkpO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC1zaXplOi44MTI1cmVtO2N1cnNvcjpwb2ludGVyO3RleHQtZGVjb3JhdGlvbjpub25lO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzLGJvcmRlci1jb2xvciAuMTVzLGNvbG9yIC4xNXN9LmJpbmFyeS1wcmV2aWV3LWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50KX0udHJlZS1pdGVte3RyYW5zaXRpb246YWxsIC4ycyB2YXIoLS1lYXNlLW91dC1leHBvKX0udHJlZS1pdGVtOmhvdmVye3RyYW5zZm9ybTp0cmFuc2xhdGUoNHB4KX0udHJlZS1pdGVtOmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlKDJweCkgc2NhbGUoLjk5KX0uZmlsZS1zaWRlLXBhbmVse3RyYW5zaXRpb246cmlnaHQgLjM1cyB2YXIoLS1lYXNlLW91dC1leHBvKSxib3gtc2hhZG93IC4zNXMgZWFzZX0uZmlsZS1zaWRlLXBhbmVsLm9wZW57Ym94LXNoYWRvdzotOHB4IDAgMzJweCAjNTkzYTIwMWZ9LnNwaW5uZXJ7YW5pbWF0aW9uOnNwaW4gMXMgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMgc3Bpbnt0b3t0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyl9fUBrZXlmcmFtZXMgZmxvYXR7MCUsdG97dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCl9NTAle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC04cHgpfX0uZmxvYXR7YW5pbWF0aW9uOmZsb2F0IDNzIGVhc2UtaW4tb3V0IGluZmluaXRlfS5jaGF0LW1lc3NhZ2UtYnViYmxley13ZWJraXQtdXNlci1zZWxlY3Q6dGV4dDt1c2VyLXNlbGVjdDp0ZXh0fS5tc2ctY29weS1idG57ZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMzJweDtyaWdodDo0cHg7cGFkZGluZzo0cHggMTBweDtmb250LXNpemU6Ljc1cmVtO2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbWQpO2N1cnNvcjpwb2ludGVyO3VzZXItc2VsZWN0Om5vbmU7LXdlYmtpdC11c2VyLXNlbGVjdDpub25lO3otaW5kZXg6MTA7d2hpdGUtc3BhY2U6bm93cmFwOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9ufS5tc2ctY29weS1idG4udmlzaWJsZXtkaXNwbGF5OmJsb2NrfS5tc2ctY29weS1idG4uY29waWVke2JhY2tncm91bmQ6dmFyKC0tc3VjY2Vzcy1tdXRlZCk7Y29sb3I6dmFyKC0tc3VjY2Vzcyk7Ym9yZGVyLWNvbG9yOnZhcigtLXN1Y2Nlc3MpfS5jaGF0LW1lc3NhZ2V7cG9zaXRpb246cmVsYXRpdmV9LnRlcm1pbmFsLWp1bXAtYm90dG9te3otaW5kZXg6MjB9LmlucHV0LWNvbXBvc2VyLmluLWZsaWdodHtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9LmlucHV0LWNvbXBvc2VyLmluLWZsaWdodDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTJweDtsZWZ0Oi02MCU7d2lkdGg6MjIwJTtoZWlnaHQ6M3B4O2JvcmRlci1yYWRpdXM6MTRweCAxNHB4IDAgMDtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDI4MHB4IDRweCxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjQ1KSAwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjEyKSAzNSUsdHJhbnNwYXJlbnQgNjAlKSBuby1yZXBlYXQ7YmFja2dyb3VuZC1zaXplOjI4MHB4IDRweDthbmltYXRpb246Y29tcG9zZXJXYXZlU2xpZGUgN3MgY3ViaWMtYmV6aWVyKC4zNSwwLC42NSwxKSBpbmZpbml0ZTt6LWluZGV4OjI7cG9pbnRlci1ldmVudHM6bm9uZX0uaW5wdXQtY29tcG9zZXIuaW4tZmxpZ2h0OmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0ycHg7bGVmdDotNjAlO3dpZHRoOjIyMCU7aGVpZ2h0OjNweDtib3JkZXItcmFkaXVzOjE0cHggMTRweCAwIDA7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAyMjBweCAzcHgscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC4yNSkgMCUscmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC4wNikgMzUlLHRyYW5zcGFyZW50IDYwJSkgbm8tcmVwZWF0O2JhY2tncm91bmQtc2l6ZToyMjBweCAzcHg7YW5pbWF0aW9uOmNvbXBvc2VyV2F2ZVNsaWRlIDlzIGN1YmljLWJlemllciguMzUsMCwuNjUsMSkgaW5maW5pdGUgcmV2ZXJzZTt6LWluZGV4OjI7cG9pbnRlci1ldmVudHM6bm9uZX1Aa2V5ZnJhbWVzIGNvbXBvc2VyV2F2ZVNsaWRlezAle2JhY2tncm91bmQtcG9zaXRpb246MCUgY2VudGVyfXRve2JhY2tncm91bmQtcG9zaXRpb246MTAwJSBjZW50ZXJ9fS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7Z2FwOjVweDttYXJnaW46MCAwIDAgYXV0bztwYWRkaW5nOjRweCA4cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtib3JkZXI6bm9uZTtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcyBlYXNlLGNvbG9yIC4zcyBlYXNlO292ZXJmbG93OmhpZGRlbjtmbGV4LXNocmluazowfS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIgLnN0YXR1cy1iYXItZG90e3dpZHRoOjVweDtoZWlnaHQ6NXB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6cmdiYSh2YXIoLS1hY2NlbnQtcmdiLCAxOTcsIDEwMSwgNjEpLC44KTthbmltYXRpb246c3RhdHVzRG90UHVsc2UgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZTtmbGV4LXNocmluazowfUBrZXlmcmFtZXMgc3RhdHVzRG90UHVsc2V7MCUsdG97b3BhY2l0eTouNDt0cmFuc2Zvcm06c2NhbGUoLjkpfTUwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEuMSl9fS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIgLnN0YXR1cy1iYXItbGFiZWx7ZmxleC1zaHJpbms6MDtmb250LXdlaWdodDo1MDA7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi42MjVyZW19LnN0cnVjdHVyZWQtc3RhdHVzLWJhciAuc3RhdHVzLWJhci10aW1lcntmbGV4LXNocmluazowO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtcztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTouNjI1cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIuY29tcGxldGVke2FuaW1hdGlvbjpzdGF0dXNCYXJGYWRlT3V0IDJzIGVhc2Utb3V0IDFzIGZvcndhcmRzfS5zdHJ1Y3R1cmVkLXN0YXR1cy1iYXIuY29tcGxldGVkIC5zdGF0dXMtYmFyLWxhYmVse2NvbG9yOnZhcigtLXN1Y2Nlc3MpfUBrZXlmcmFtZXMgc3RhdHVzQmFyRmFkZU91dHswJXtvcGFjaXR5OjE7bWF4LWhlaWdodDoyMHB4fTcwJXtvcGFjaXR5OjA7bWF4LWhlaWdodDoyMHB4fXRve29wYWNpdHk6MDttYXgtaGVpZ2h0OjA7bWFyZ2luOjB9fS5jcm9zcy1zZXNzaW9uLXF1ZXVle2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweDttYXJnaW46MCA4cHggNHB4fS5xdWV1ZS1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O3BhZGRpbmc6MCA0cHg7Zm9udC1zaXplOi42cmVtO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5xdWV1ZS1oZWFkZXItbGFiZWx7ZmxleDoxO29wYWNpdHk6LjZ9LnF1ZXVlLWhlYWRlci1jbGVhcntib3JkZXI6bm9uZTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZTouNTYyNXJlbTtwYWRkaW5nOjFweCA0cHg7Ym9yZGVyLXJhZGl1czozcHg7b3BhY2l0eTouNTt0cmFuc2l0aW9uOmNvbG9yIC4xNXMsYmFja2dyb3VuZCAuMTVzLG9wYWNpdHkgLjE1c30ucXVldWUtaGVhZGVyLWNsZWFyOmhvdmVye2NvbG9yOnZhcigtLWVycm9yLCAjZTU1KTtiYWNrZ3JvdW5kOiNlNTU1NTUxZjtvcGFjaXR5OjF9LnF1ZXVlLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6NHB4IDhweDtmb250LXNpemU6LjY4NzVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3BhY2l0eTouNzt0cmFuc2l0aW9uOm9wYWNpdHkgLjE1cyBlYXNlfS5xdWV1ZS1pdGVtOmhvdmVye29wYWNpdHk6MX0ucXVldWUtaXRlbS1kb3R7ZmxleC1zaHJpbms6MDt3aWR0aDo0cHg7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuNik7YW5pbWF0aW9uOnN0YXR1c0RvdFB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGV9LnF1ZXVlLWl0ZW0tdGV4dHtmbGV4OjE7bWluLXdpZHRoOjA7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtc2l6ZTouNjg3NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0ucXVldWUtaXRlbS1hZ2V7ZmxleC1zaHJpbms6MDtmb250LXNpemU6LjU2MjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zO29wYWNpdHk6LjV9LnF1ZXVlLWl0ZW0tc2VuZC1ub3d7ZmxleC1zaHJpbms6MDtib3JkZXI6MXB4IHNvbGlkIHJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuMyk7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS1hY2NlbnQsICNjNTY1M2QpO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MXB4IDhweDtib3JkZXItcmFkaXVzOjRweDtmb250LXNpemU6LjZyZW07bGluZS1oZWlnaHQ6MS40O3RyYW5zaXRpb246Y29sb3IgLjE1cyxiYWNrZ3JvdW5kIC4xNXMsYm9yZGVyLWNvbG9yIC4xNXN9LnF1ZXVlLWl0ZW0tc2VuZC1ub3c6aG92ZXJ7Y29sb3I6dmFyKC0tYWNjZW50LCAjYzU2NTNkKTtiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiwgMTk3LCAxMDEsIDYxKSwuMTIpO2JvcmRlci1jb2xvcjpyZ2JhKHZhcigtLWFjY2VudC1yZ2IsIDE5NywgMTAxLCA2MSksLjUpfS5xdWV1ZS1pdGVtLWNhbmNlbHtmbGV4LXNocmluazowO2JvcmRlcjpub25lO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzoxcHggNHB4O2JvcmRlci1yYWRpdXM6M3B4O2ZvbnQtc2l6ZTouNjg3NXJlbTtsaW5lLWhlaWdodDoxO29wYWNpdHk6LjQ7dHJhbnNpdGlvbjpjb2xvciAuMTVzLGJhY2tncm91bmQgLjE1cyxvcGFjaXR5IC4xNXN9LnF1ZXVlLWl0ZW0tY2FuY2VsOmhvdmVye2NvbG9yOnZhcigtLWVycm9yLCAjZTU1KTtiYWNrZ3JvdW5kOiNlNTU1NTUxZjtvcGFjaXR5OjF9LnNldHRpbmdzLWNhcmQtaGVhZHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTJweDttYXJnaW4tYm90dG9tOjE0cHh9LnNldHRpbmdzLWNhcmQtaWNvbntmbGV4OjAgMCBhdXRvO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCNjNTY1M2QyZSwjYzU2NTNkMGYpO2NvbG9yOnZhcigtLWFjY2VudCk7Zm9udC1zaXplOjE4cHg7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxcHggI2M1NjUzZDJlfS5zZXR0aW5ncy1jYXJkLWhlYWQtdGV4dHtmbGV4OjE7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4fS5zZXR0aW5ncy1jYXJkLXRpdGxle2ZvbnQtc2l6ZTouOTM3NXJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsZXR0ZXItc3BhY2luZzouMDA1ZW07bGluZS1oZWlnaHQ6MS4zO21hcmdpbjowfS5zZXR0aW5ncy1jYXJkLWRlc2N7Zm9udC1zaXplOi43NXJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsaW5lLWhlaWdodDoxLjU7bWFyZ2luOjB9LnNldHRpbmdzLWNhcmQtYWN0aW9uc3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDttYXJnaW4tdG9wOjZweH0uc2V0dGluZ3MtY2FyZC1hY3Rpb25zIC5idG57bWluLXdpZHRoOjEyMHB4fS5zZXR0aW5ncy1zdWNjZXNzLW1lc3NhZ2V7Y29sb3I6dmFyKC0tc3VjY2Vzcyl9LnNldHRpbmdzLXNlY3Rpb24taGVhZHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MTBweDttYXJnaW4tYm90dG9tOjEycHh9LnNldHRpbmdzLXNlY3Rpb24taWNvbntmbGV4OjAgMCBhdXRvO3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOiNjNTY1M2QxYTtmb250LXNpemU6MTRweH0uc2V0dGluZ3Mtc2VjdGlvbi1oZWFkLXRleHR7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uc2V0dGluZ3Mtc2VjdGlvbi1oZWFkaW5ne2ZvbnQtc2l6ZTouODc1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpO2xldHRlci1zcGFjaW5nOi4wMDVlbTtsaW5lLWhlaWdodDoxLjM7bWFyZ2luOjB9LnNldHRpbmdzLXNlY3Rpb24tc3Vie2ZvbnQtc2l6ZTouNzJyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41O21hcmdpbjowfS5zZXR0aW5ncy10b2dnbGUtcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjE0cHg7cGFkZGluZzoxMnB4IDE0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO21hcmdpbi10b3A6MTBweH0uc2V0dGluZ3MtdG9nZ2xlLXJvdysuc2V0dGluZ3MtdG9nZ2xlLXJvdywuc2V0dGluZ3MtdG9nZ2xlLXJvdysuc2V0dGluZ3MtcmFuZ2Utcm93LC5zZXR0aW5ncy1yYW5nZS1yb3crLnNldHRpbmdzLXRvZ2dsZS1yb3d7bWFyZ2luLXRvcDo4cHh9LnNldHRpbmdzLXRvZ2dsZS10ZXh0e2ZsZXg6MTttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDozcHh9LnNldHRpbmdzLXRvZ2dsZS10aXRsZXtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Y3Vyc29yOnBvaW50ZXJ9LnNldHRpbmdzLXRvZ2dsZS1kZXNje2ZvbnQtc2l6ZTouNzJyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bGluZS1oZWlnaHQ6MS41fS5zZXR0aW5ncy1zd2l0Y2h7cG9zaXRpb246cmVsYXRpdmU7ZmxleDowIDAgYXV0bztjdXJzb3I6cG9pbnRlcjtkaXNwbGF5OmlubGluZS1ibG9ja30uc2V0dGluZ3MtdG9nZ2xlLWFzaWRle2ZsZXg6MCAwIGF1dG87ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweH0uZW52LXByZXZpZXctbW9kYWx7bWF4LXdpZHRoOjcyMHB4fS5lbnYtcHJldmlldy1ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEycHg7cGFkZGluZzoxOHB4IDI0cHggOHB4O21pbi1oZWlnaHQ6MH0uZW52LXByZXZpZXctdG9vbGJhcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O2ZsZXgtd3JhcDp3cmFwfS5lbnYtcHJldmlldy1tZXRhe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7Zm9udC1zaXplOi43OHJlbTtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSl9LmVudi1wcmV2aWV3LXBpbGx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzoycHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1mdWxsKTtmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDJlbTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpfS5lbnYtcHJldmlldy1waWxsLmlzLWluaGVyaXR7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudC1tdXRlZCk7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCl9LmVudi1wcmV2aWV3LXBpbGwuaXMtbWluaW1hbHtjb2xvcjp2YXIoLS1zdWNjZXNzKTtiYWNrZ3JvdW5kOnZhcigtLXN1Y2Nlc3MtbXV0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1zdWNjZXNzKX0uZW52LXByZXZpZXctY291bnR7Zm9udC1zaXplOi43MnJlbTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX0uZW52LXByZXZpZXctY29udHJvbHN7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtmbGV4LXdyYXA6d3JhcH0uZW52LXByZXZpZXctc2VhcmNoe3dpZHRoOjIwMHB4O21heC13aWR0aDoxMDAlO3BhZGRpbmc6NnB4IDEwcHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc20pO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtiYWNrZ3JvdW5kOnZhcigtLWJnLWVsZXZhdGVkKTtmb250LXNpemU6Ljc4cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSl9LmVudi1wcmV2aWV3LXNlYXJjaDpmb2N1c3tvdXRsaW5lOm5vbmU7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1mb2N1cyk7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tYWNjZW50LWdsb3cpfS5lbnYtcHJldmlldy1yZXZlYWx7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmb250LXNpemU6Ljc0cmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lfS5lbnYtcHJldmlldy1yZXZlYWwgaW5wdXR7YWNjZW50LWNvbG9yOnZhcigtLWFjY2VudCk7Y3Vyc29yOnBvaW50ZXJ9LmVudi1wcmV2aWV3LWxpc3R7bWF4LWhlaWdodDptaW4oNTZ2aCw0NjBweCk7b3ZlcmZsb3cteTphdXRvO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO3BhZGRpbmc6NHB4fS5lbnYtcHJldmlldy1saXN0OmZvY3Vze291dGxpbmU6bm9uZX0uZW52LXByZXZpZXctcm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMjIwcHgpIG1pbm1heCgwLDFmcikgYXV0bztnYXA6MTJweDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzo4cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy14cyk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCB1aS1tb25vc3BhY2UsICJTRiBNb25vIiwgTWVubG8sIENvbnNvbGFzLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZTouNzRyZW07dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xMnN9LmVudi1wcmV2aWV3LXJvdzpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXRlcnRpYXJ5KX0uZW52LXByZXZpZXctcm93Ky5lbnYtcHJldmlldy1yb3d7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1zdWJ0bGUpfS5lbnYtcHJldmlldy1uYW1le2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NjAwO2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7ZmxleC13cmFwOndyYXA7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZX0uZW52LXByZXZpZXctcm93LmlzLXNlbnNpdGl2ZSAuZW52LXByZXZpZXctbmFtZXtjb2xvcjp2YXIoLS13YXJuaW5nKX0uZW52LXByZXZpZXctYmFkZ2V7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzoxcHggNnB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWZ1bGwpO2ZvbnQtZmFtaWx5OmluaGVyaXQ7Zm9udC1zaXplOi42MnJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjA0ZW07YmFja2dyb3VuZDp2YXIoLS13YXJuaW5nLW11dGVkKTtjb2xvcjp2YXIoLS13YXJuaW5nKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLXdhcm5pbmcpfS5lbnYtcHJldmlldy1iYWRnZS1ydW50aW1le2JhY2tncm91bmQ6dmFyKC0taW5mby1tdXRlZCk7Y29sb3I6dmFyKC0taW5mbyk7Ym9yZGVyLWNvbG9yOnZhcigtLWluZm8pfS5lbnYtcHJldmlldy12YWx1ZXtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO21pbi13aWR0aDowfS5lbnYtcHJldmlldy12YWx1ZS5pcy1ydW50aW1le2ZvbnQtc3R5bGU6aXRhbGljO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5lbnYtcHJldmlldy1sZW57Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi42OHJlbTt3aGl0ZS1zcGFjZTpub3dyYXB9LmVudi1wcmV2aWV3LWxvYWRpbmcsLmVudi1wcmV2aWV3LWVtcHR5e3BhZGRpbmc6MjRweCA4cHg7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Zm9udC1zaXplOi43OHJlbX0uZW52LXByZXZpZXctZm9vdGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHg7cGFkZGluZzoxNHB4IDI0cHggMThweH0uZW52LXByZXZpZXctaGludHtmb250LXNpemU6LjdyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7ZmxleDoxO21pbi13aWR0aDowfUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5lbnYtcHJldmlldy1tb2RhbHttYXgtd2lkdGg6Y2FsYygxMDB2dyAtIDI0cHgpfS5lbnYtcHJldmlldy1yb3d7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6NHB4fS5lbnYtcHJldmlldy1sZW57anVzdGlmeS1zZWxmOmVuZH0uZW52LXByZXZpZXctc2VhcmNoLC5lbnYtcHJldmlldy1jb250cm9sc3t3aWR0aDoxMDAlfX0uc2V0dGluZ3MtcmFuZ2Utcm93e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzoxMnB4IDE0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6I2ZmZmZmZjhjO2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjEpO21hcmdpbi10b3A6OHB4fS5zZXR0aW5ncy1yYW5nZS1sYWJlbHtmb250LXNpemU6LjgxMjVyZW07Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7ZmxleDowIDAgYXV0bzttYXJnaW4tYm90dG9tOjB9LnNldHRpbmdzLXJhbmdle2ZsZXg6MTttaW4td2lkdGg6MDthY2NlbnQtY29sb3I6dmFyKC0tYWNjZW50KX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZXstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7aGVpZ2h0OjIycHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7bWFyZ2luOjA7LS1yYW5nZS1maWxsOiA1MCV9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNre2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsdmFyKC0tYWNjZW50KSAwJSx2YXIoLS1hY2NlbnQpIHZhcigtLXJhbmdlLWZpbGwsIDUwJSkscmdiYSgxMjUsOTEsNTcsLjIpIHZhcigtLXJhbmdlLWZpbGwsIDUwJSkscmdiYSgxMjUsOTEsNTcsLjIpIDEwMCUpO2JvcmRlcjpub25lfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOjotd2Via2l0LXNsaWRlci10aHVtYnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZTthcHBlYXJhbmNlOm5vbmU7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiNmZmY7Ym9yZGVyOm5vbmU7Ym94LXNoYWRvdzowIDJweCA2cHggIzE0MGUwODM4LDAgMCAwIC41cHggIzdkNWIzOTFhO21hcmdpbi10b3A6LThweDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMTZzIGVhc2UsYm94LXNoYWRvdyAuMTZzIGVhc2V9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6aG92ZXI6Oi13ZWJraXQtc2xpZGVyLXRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjA4KX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTphY3RpdmU6Oi13ZWJraXQtc2xpZGVyLXRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjE2KTtib3gtc2hhZG93OjAgNHB4IDEwcHggIzE0MGUwODQ3LDAgMCAwIDhweCAjYzU2NTNkMWYsMCAwIDAgLjVweCAjN2Q1YjM5MWF9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Zm9jdXMtdmlzaWJsZTo6LXdlYmtpdC1zbGlkZXItdGh1bWJ7Ym94LXNoYWRvdzowIDJweCA2cHggIzE0MGUwODM4LDAgMCAwIDRweCB2YXIoLS1hY2NlbnQtbXV0ZWQpLDAgMCAwIC41cHggIzdkNWIzOTFhfWlucHV0W3R5cGU9cmFuZ2VdLnNldHRpbmdzLXJhbmdlOjotbW96LXJhbmdlLXRyYWNre2hlaWdodDo0cHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDojN2Q1YjM5MzM7Ym9yZGVyOm5vbmV9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Oi1tb3otcmFuZ2UtcHJvZ3Jlc3N7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Ym9yZGVyOm5vbmV9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6Oi1tb3otcmFuZ2UtdGh1bWJ7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtib3JkZXI6bm9uZTtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOiNmZmY7Y3Vyc29yOnBvaW50ZXI7Ym94LXNoYWRvdzowIDJweCA2cHggIzE0MGUwODM4LDAgMCAwIC41cHggIzdkNWIzOTFhO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xNnMgZWFzZX1pbnB1dFt0eXBlPXJhbmdlXS5zZXR0aW5ncy1yYW5nZTpob3Zlcjo6LW1vei1yYW5nZS10aHVtYnt0cmFuc2Zvcm06c2NhbGUoMS4wOCl9aW5wdXRbdHlwZT1yYW5nZV0uc2V0dGluZ3MtcmFuZ2U6YWN0aXZlOjotbW96LXJhbmdlLXRodW1ie3RyYW5zZm9ybTpzY2FsZSgxLjE2KX0uc2V0dGluZ3MtcmFuZ2UtdmFsdWV7ZmxleDowIDAgNDRweDt0ZXh0LWFsaWduOnJpZ2h0O2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9ue2Rpc3BsYXk6ZmxleDtnYXA6OHB4O2FsaWduLWl0ZW1zOnN0cmV0Y2h9LnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbj4uZmllbGQtaW5wdXQsLnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbj4uZmllbGQtc2VsZWN0LC5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb24+c2VsZWN0e2ZsZXg6MTttaW4td2lkdGg6MH0uc2V0dGluZ3Mtcm93LXdpdGgtYWN0aW9uPi5idG57ZmxleC1zaHJpbms6MH0uc2V0dGluZ3MtYWJvdXQtcm93LWFjdGlvbntmbGV4LXdyYXA6bm93cmFwfS5zZXR0aW5ncy12YWx1ZS1mbGV4e2ZsZXg6MTt0ZXh0LWFsaWduOnJpZ2h0fS5maWxlLXBpY2tlcntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6NnB4IDEycHggNnB4IDZweDtiYWNrZ3JvdW5kOiNmZmZmZmZiODtib3JkZXI6MXB4IGRhc2hlZCByZ2JhKDEyNSw5MSw1NywuMjUpO2JvcmRlci1yYWRpdXM6MTJweDt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMThzLGJhY2tncm91bmQgLjE4c30uZmlsZS1waWNrZXI6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudC1zb2Z0LCByZ2JhKDE5NywgMTAxLCA2MSwgLjQ1KSk7YmFja2dyb3VuZDojZmZmZmZmZTZ9LmZpbGUtcGlja2VyLmZpbGUtcGlja2VyLWhhcy1maWxle2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6I2M1NjUzZDU5O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjYzU2NTNkMTQsI2ZmZmZmZmQ5KX0uZmlsZS1waWNrZXItaW5wdXR7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MXB4O2hlaWdodDoxcHg7b3BhY2l0eTowO3BvaW50ZXItZXZlbnRzOm5vbmV9LmZpbGUtcGlja2VyLXRyaWdnZXJ7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtwYWRkaW5nOjhweCAxNHB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1hY2NlbnQpLGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFjY2VudCkgODAlLCMwMDAgMCUpKTtjb2xvcjojZmZmO2ZvbnQtc2l6ZTouODEyNXJlbTtmb250LXdlaWdodDo2MDA7Ym9yZGVyLXJhZGl1czo5cHg7Y3Vyc29yOnBvaW50ZXI7ZmxleC1zaHJpbms6MDt0cmFuc2l0aW9uOmZpbHRlciAuMTVzLHRyYW5zZm9ybSAuMTVzLGJveC1zaGFkb3cgLjE1cztib3gtc2hhZG93OnZhcigtLXNoYWRvdy14cyk7dXNlci1zZWxlY3Q6bm9uZX0uZmlsZS1waWNrZXItdHJpZ2dlcjpob3ZlcntmaWx0ZXI6YnJpZ2h0bmVzcygxLjA1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSl9LmZpbGUtcGlja2VyLXRyaWdnZXI6YWN0aXZle3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfS5maWxlLXBpY2tlci1pbnB1dDpmb2N1cy12aXNpYmxlKy5maWxlLXBpY2tlci10cmlnZ2Vye291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWFjY2VudCk7b3V0bGluZS1vZmZzZXQ6MnB4fS5maWxlLXBpY2tlci1pY29ue3dpZHRoOjE2cHg7aGVpZ2h0OjE2cHg7ZmxleC1zaHJpbms6MH0uZmlsZS1waWNrZXItbGFiZWx7d2hpdGUtc3BhY2U6bm93cmFwfS5maWxlLXBpY2tlci1uYW1le2ZsZXg6MTttaW4td2lkdGg6MDtmb250LXNpemU6LjgxMjVyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyl9LmZpbGUtcGlja2VyLmZpbGUtcGlja2VyLWhhcy1maWxlIC5maWxlLXBpY2tlci1uYW1le2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Zm9udC13ZWlnaHQ6NTAwfS5zZXR0aW5ncy1hcHAtaWNvbi1ibG9ja3ttYXJnaW4tYm90dG9tOjE4cHh9LnNldHRpbmdzLWFwcC1pY29uLXBpY2tlcntkaXNwbGF5OmZsZXg7Z2FwOjEycHg7ZmxleC13cmFwOndyYXB9LnNldHRpbmdzLWFwcC1pY29uLW9wdGlvbntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6MTBweDtib3JkZXItcmFkaXVzOjE0cHg7YmFja2dyb3VuZDojZmZmZmZmOGM7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDEyNSw5MSw1NywuMTIpO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xOHMsYmFja2dyb3VuZCAuMThzLHRyYW5zZm9ybSAuMThzLGJveC1zaGFkb3cgLjE4czttaW4td2lkdGg6ODRweH0uc2V0dGluZ3MtYXBwLWljb24tb3B0aW9uOmhvdmVye3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0xcHgpO2JvcmRlci1jb2xvcjojYzU2NTNkNGQ7YmFja2dyb3VuZDojZmZmZmZmYzc7Ym94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpfS5zZXR0aW5ncy1hcHAtaWNvbi1vcHRpb24uc2VsZWN0ZWQsLnNldHRpbmdzLWFwcC1pY29uLW9wdGlvblthcmlhLXByZXNzZWQ9dHJ1ZV17Ym9yZGVyLWNvbG9yOnZhcigtLWFjY2VudCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCNjNTY1M2QyNCwjYzU2NTNkMGEpO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4ICNjNTY1M2QzM30uc2V0dGluZ3MtYXBwLWljb24tcHJldmlld3t3aWR0aDo1NnB4O2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6MTJweDtvdmVyZmxvdzpoaWRkZW47YmFja2dyb3VuZDp2YXIoLS1iZy10ZXJ0aWFyeSk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS5zZXR0aW5ncy1hcHAtaWNvbi1sYWJlbHtmb250LXNpemU6LjcycmVtO2NvbG9yOnZhcigtLXRleHQtc2Vjb25kYXJ5KTtmb250LXdlaWdodDo1MDB9LnNldHRpbmdzLWNvbm5lY3QtdXJsLXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vLCBtb25vc3BhY2UpO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7d29yZC1icmVhazpicmVhay1hbGw7dXNlci1zZWxlY3Q6YWxsOy13ZWJraXQtdXNlci1zZWxlY3Q6YWxsfUBtZWRpYShtYXgtd2lkdGg6NjQwcHgpey5zZXR0aW5ncy10b2dnbGUtcm93LC5zZXR0aW5ncy1yYW5nZS1yb3d7cGFkZGluZzoxMHB4IDEycHh9LnNldHRpbmdzLXRvZ2dsZS1yb3d7ZmxleC13cmFwOndyYXB9LnNldHRpbmdzLWNhcmQtYWN0aW9uc3tqdXN0aWZ5LWNvbnRlbnQ6c3RyZXRjaH0uc2V0dGluZ3MtY2FyZC1hY3Rpb25zIC5idG57ZmxleDoxO21pbi13aWR0aDowfS5maWxlLXBpY2tlcntmbGV4LXdyYXA6d3JhcDtwYWRkaW5nOjhweH0uZmlsZS1waWNrZXItdHJpZ2dlcntmbGV4OjEgMSBhdXRvO2p1c3RpZnktY29udGVudDpjZW50ZXJ9LmZpbGUtcGlja2VyLW5hbWV7ZmxleDoxIDEgMTAwJTt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjAgNHB4fS5zZXR0aW5ncy1yb3ctd2l0aC1hY3Rpb257ZmxleC13cmFwOndyYXB9LnNldHRpbmdzLXJvdy13aXRoLWFjdGlvbj4uYnRue2ZsZXg6MX19LnRvcGJhci1naXQtc2xvdHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcn0udG9wYmFyLWdpdC1zbG90OmVtcHR5e2Rpc3BsYXk6bm9uZX0udG9wYmFyLWdpdC1iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2hlaWdodDozMnB4O3BhZGRpbmc6MCAxMHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi43MnJlbTtmb250LXdlaWdodDo1MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Y3Vyc29yOnBvaW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwO3RyYW5zaXRpb246YWxsIHZhcigtLXRyYW5zaXRpb24tZmFzdCk7Ym94LXNpemluZzpib3JkZXItYm94O2xpbmUtaGVpZ2h0OjF9LnRvcGJhci1naXQtYmFkZ2U6aG92ZXJ7YmFja2dyb3VuZDojZmZmZmZmODA7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KX0udG9wYmFyLWdpdC1iYWRnZTphY3RpdmV7dHJhbnNmb3JtOnNjYWxlKC45Nil9LnRvcGJhci1naXQtaWNvbntmbGV4LXNocmluazowO29wYWNpdHk6Ljg1fS50b3BiYXItZ2l0LWJyYW5jaHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC13ZWlnaHQ6NjAwO21heC13aWR0aDoxMmVtO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS50b3BiYXItZ2l0LWNvdW50e2NvbG9yOnZhcigtLWFjY2VudCk7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubywgbW9ub3NwYWNlKX0udG9wYmFyLWdpdC1jbGVhbntjb2xvcjojM2NhMDVhZDk7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtc2l6ZTouNzhyZW19LnF1aWNrLWNvbW1pdC1tb2RhbHttYXgtd2lkdGg6NTQwcHh9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMnB4fS5xYy1lbXB0eXtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtwYWRkaW5nOjZweCAwO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc3R5bGU6aXRhbGljfS5xYy1maWxlLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo5cHg7bGluZS1oZWlnaHQ6MS42O3BhZGRpbmc6MXB4IDJweDtib3JkZXItcmFkaXVzOjVweH0ucWMtZmlsZS1yb3c6aG92ZXJ7YmFja2dyb3VuZDojN2Q1YjM5MGZ9LnFjLWZpbGUtYmFkZ2V7ZmxleC1zaHJpbms6MDt3aWR0aDoxN3B4O2hlaWdodDoxN3B4O2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC1zaXplOi42NnJlbTtmb250LXdlaWdodDo4MDA7bGV0dGVyLXNwYWNpbmc6MDtsaW5lLWhlaWdodDoxO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyl9LnFjLWJhZGdlLWFkZHtjb2xvcjojMjI4MDQyZmE7YmFja2dyb3VuZDojM2NhMDVhMjl9LnFjLWJhZGdlLW1vZHtjb2xvcjojYWE2ZTBlZmE7YmFja2dyb3VuZDojZGM5NjFlMjl9LnFjLWJhZGdlLWRlbHtjb2xvcjojYmUzODM4ZmE7YmFja2dyb3VuZDojYzg0NjQ2MjZ9LnFjLWJhZGdlLXJlbntjb2xvcjojNGU2NGJjZmE7YmFja2dyb3VuZDojNmU4MmM4Mjl9LnFjLWJhZGdlLXVudHJhY2tlZHtjb2xvcjojMjI4MDQyZjI7YmFja2dyb3VuZDojM2NhMDVhMWZ9LnFjLWJhZGdlLWlnbm9yZWQsLnFjLWJhZGdlLW90aGVye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6Izc4Nzg3ODFmfS5xYy1maWxlLXBhdGh7b3ZlcmZsb3c6aGlkZGVuO3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7d2hpdGUtc3BhY2U6bm93cmFwO2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjB9LnFjLWZpbGUtZGlye2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfS5xYy1maWxlLW5hbWV7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtmb250LXdlaWdodDo1MDB9LnFjLXN1Ym1vZHVsZS1iYWRnZXtmbGV4LXNocmluazowO3BhZGRpbmc6MXB4IDZweDtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOiM4YzY0YzgyOTtjb2xvcjojNmU0NmI0ZjI7Zm9udC1zaXplOi42OHJlbTtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6LjAyZW07d2hpdGUtc3BhY2U6bm93cmFwfS5xYy1tZXNzYWdlLWhlYWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDo4cHh9LnFjLWFpLWJ0bntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2NvbG9yOnZhcigtLWFjY2VudCl9LnFjLWFpLWJ0biBzdmd7Y29sb3I6dmFyKC0tYWNjZW50KTtmbGV4LXNocmluazowfS5xYy1haS1idG46ZGlzYWJsZWR7b3BhY2l0eTouNTtjdXJzb3I6bm90LWFsbG93ZWQ7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnFjLWFpLWJ0bjpkaXNhYmxlZCBzdmd7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9LnFjLW1lc3NhZ2UtaW5wdXR7cmVzaXplOnZlcnRpY2FsO21pbi1oZWlnaHQ6NjhweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOi44NHJlbTtsaW5lLWhlaWdodDoxLjU1fS5xYy10YWctZmllbGQtaW5wdXR7ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOi44MnJlbX0ucWMtdGFnLWZpZWxkLWlucHV0OmRpc2FibGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2JhY2tncm91bmQ6IzdkNWIzOTBhO2JvcmRlci1jb2xvcjojN2Q1YjM5MTQ7Y3Vyc29yOmRlZmF1bHQ7Ym94LXNoYWRvdzpub25lfS5xdWljay1jb21taXQtbW9kYWwgLndvcmt0cmVlLW1lcmdlLWFjdGlvbnN7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpmbGV4LWVuZDtnYXA6OHB4O21hcmdpbi10b3A6NHB4fS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTRweH0ucWMtc2VjdGlvbi10aXRsZXtmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjcwMDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bGV0dGVyLXNwYWNpbmc6LjA3ZW07Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpfS5xdWljay1jb21taXQtbW9kYWx7bWF4LXdpZHRoOjYyMHB4fS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLWJvZHl7Z2FwOjB9LnFjLXJlbGVhc2UtcGFuZWwsLnFjLXJlc3VsdC1wYW5lbHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxNHB4fS5xYy1wYWlye2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6NzJweCBtaW5tYXgoMCwxZnIpO2dhcDoxMnB4O2FsaWduLWl0ZW1zOnN0YXJ0fS5xYy1wYWlyLWxhYmVse3BhZGRpbmctdG9wOjlweDtmb250LXNpemU6LjcycmVtO2ZvbnQtd2VpZ2h0OjgwMDtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtsZXR0ZXItc3BhY2luZzouMDZlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnFjLXBhaXItZmxvd3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLC45ZnIpIDI0cHggbWlubWF4KDAsMS4xZnIpO2dhcDo4cHg7YWxpZ24taXRlbXM6Y2VudGVyO21pbi13aWR0aDowfS5xYy1wYWlyLXZhbHVle21pbi13aWR0aDowO21pbi1oZWlnaHQ6MzhweDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7cGFkZGluZzo4cHggMTBweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4xMik7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDojZmZmZmZmODU7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO292ZXJmbG93OmhpZGRlbn0ucWMtcGFpci12YWx1ZS0tdG97YmFja2dyb3VuZDojZmZmZmZmZDY7Ym9yZGVyLWNvbG9yOiNjNTY1M2QzODtjb2xvcjp2YXIoLS10ZXh0LXByaW1hcnkpfS5xYy1wYWlyLXZhbHVlIGNvZGV7ZmxleC1zaHJpbms6MDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSk7Zm9udC1zaXplOi43OHJlbTtmb250LXdlaWdodDo3MDA7Y29sb3I6dmFyKC0tYWNjZW50KTtiYWNrZ3JvdW5kOiNjNTY1M2QxNztib3JkZXItcmFkaXVzOjVweDtwYWRkaW5nOjJweCA2cHh9LnFjLXBhaXItdmFsdWUgc3BhbnttaW4td2lkdGg6MDtvdmVyZmxvdzpoaWRkZW47dGV4dC1vdmVyZmxvdzplbGxpcHNpczt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1zaXplOi44MnJlbX0ucWMtcGFpci0tY29tbWl0IC5xYy1wYWlyLWZsb3d7YWxpZ24taXRlbXM6c3RyZXRjaH0ucWMtcGFpci0tY29tbWl0IC5xYy1wYWlyLXZhbHVle21pbi1oZWlnaHQ6NzZweDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0fS5xYy1wYWlyLS1jb21taXQgLnFjLXBhaXItdmFsdWUtLXRve3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5xYy1wYWlyLS1jb21taXQgLnFjLW1lc3NhZ2UtaW5wdXR7bWluLWhlaWdodDo3NnB4O3dpZHRoOjEwMCU7cmVzaXplOnZlcnRpY2FsfS5xYy1wYWlyLS10YWcgLnFjLXBhaXItdmFsdWUtLXRve3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5xYy1wYWlyLS10YWcgLnFjLXRhZy1maWVsZC1pbnB1dHt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6MzhweH0ucWMtcGFpci1hcnJvd3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OjgwMDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8sIG1vbm9zcGFjZSl9LnFjLW11dGVke2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtc3R5bGU6aXRhbGljfS5xYy1tb2RhbC1hY3Rpb25zLC5xYy1yZXN1bHQtYWN0aW9uc3tkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmZsZXgtZW5kO2dhcDo4cHh9LnFjLXJlc3VsdC1wYW5lbHtwYWRkaW5nLXRvcDoycHh9LnFjLXJlc3VsdC1wdXNoZWR7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7bWluLWhlaWdodDozMHB4O3BhZGRpbmc6MCAxMHB4O2JvcmRlci1yYWRpdXM6OTk5cHg7Y29sb3I6IzI4ODI0NmYyO2JhY2tncm91bmQ6IzNjYTA1YTFmO2JvcmRlcjoxcHggc29saWQgcmdiYSg2MCwxNjAsOTAsLjI0KTtmb250LXNpemU6Ljc4cmVtO2ZvbnQtd2VpZ2h0OjcwMH0ucWMtZG9jay13cmFwe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDtwYWRkaW5nLXRvcDoycHh9LnFjLWRvY2std3JhcFtkYXRhLWRpc2FibGVkPSIxIl17b3BhY2l0eTouNTU7cG9pbnRlci1ldmVudHM6bm9uZX0ucWMtZG9jay1idXN5e2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHg7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O3BhZGRpbmc6MTBweCAxNHB4O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOiNjNTY1M2QxYTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTk3LDEwMSw2MSwuMik7Y29sb3I6dmFyKC0tYWNjZW50KTtmb250LXNpemU6LjgycmVtO2ZvbnQtd2VpZ2h0OjcwMH0ucWMtZG9jay1idXN5LWRvdHt3aWR0aDo4cHg7aGVpZ2h0OjhweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7YW5pbWF0aW9uOnFjLWRvY2stYnVzeS1wdWxzZSAxLjJzIGVhc2UtaW4tb3V0IGluZmluaXRlfUBrZXlmcmFtZXMgcWMtZG9jay1idXN5LXB1bHNlezAlLHRve29wYWNpdHk6LjQ7dHJhbnNmb3JtOnNjYWxlKC44NSl9NTAle29wYWNpdHk6MTt0cmFuc2Zvcm06c2NhbGUoMS4xNSl9fS5xYy1kb2NrLXN0YWdley0tcWMtdG9uZTogdmFyKC0tYWNjZW50KTstLXFjLXRvbmUtc29mdDogcmdiYSgxOTcsIDEwMSwgNjEsIC4yKTtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgOTZweDtnYXA6MTBweDtoZWlnaHQ6MTY4cHg7cGFkZGluZzo4cHg7Ym9yZGVyLXJhZGl1czoxNnB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgxMjUsOTEsNTcsLjE2KTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudCgxMjAlIDEyMCUgYXQgMzAlIDMwJSwjZmZmZmZmOGMsI2ZmZjVlYjI5KSxsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmZmZmY3NSwjZmZmNWViMzgpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggI2ZmZmZmZmIzLDAgMXB4IDNweCAjNTkzYTIwMGQ7dXNlci1zZWxlY3Q6bm9uZX0ucWMtZG9jay1zdGFnZVtkYXRhLWFjdGlvbj1jb21taXQtdGFnXXstLXFjLXRvbmU6ICM0YTZmYTU7LS1xYy10b25lLXNvZnQ6IHJnYmEoNzQsIDExMSwgMTY1LCAuMjIpfS5xYy1kb2NrLXN0YWdlW2RhdGEtYWN0aW9uPWNvbW1pdC1wdXNoXXstLXFjLXRvbmU6ICM0ZjdhNTg7LS1xYy10b25lLXNvZnQ6IHJnYmEoNzksIDEyMiwgODgsIC4yMil9LnFjLWRvY2stc3RhZ2VbZGF0YS1hY3Rpb249Y29tbWl0LXRhZy1wdXNoXXstLXFjLXRvbmU6ICM3YzVhYTg7LS1xYy10b25lLXNvZnQ6IHJnYmEoMTI0LCA5MCwgMTY4LCAuMjQpfS5xYy1kb2NrLWZpZWxke3Bvc2l0aW9uOnJlbGF0aXZlO21pbi13aWR0aDowO2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOnJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoNDVkZWcscmdiYSgxMjUsOTEsNTcsLjAzNSkgMCA4cHgsdHJhbnNwYXJlbnQgOHB4IDE2cHgpO3RvdWNoLWFjdGlvbjpub25lO292ZXJmbG93OmhpZGRlbn0ucWMtZG9jay1jbHVzdGVye3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDt0b3A6MDtib3JkZXItcmFkaXVzOjE0cHg7YmFja2dyb3VuZDpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1xYy10b25lKSAxMCUsdHJhbnNwYXJlbnQpO2JvcmRlcjoxLjVweCBkYXNoZWQgY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tcWMtdG9uZSkgMzglLHRyYW5zcGFyZW50KTtib3gtc2hhZG93OjAgNHB4IDE0cHggdmFyKC0tcWMtdG9uZS1zb2Z0KTtwb2ludGVyLWV2ZW50czpub25lO3otaW5kZXg6MDtvcGFjaXR5OjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjIycyBjdWJpYy1iZXppZXIoLjIyLDEsLjM2LDEpLHdpZHRoIC4yMnMgY3ViaWMtYmV6aWVyKC4yMiwxLC4zNiwxKSxoZWlnaHQgLjIycyBjdWJpYy1iZXppZXIoLjIyLDEsLjM2LDEpLG9wYWNpdHkgLjE4cyBlYXNlLGJhY2tncm91bmQgLjJzIGVhc2UsYm9yZGVyLWNvbG9yIC4ycyBlYXNlfS5xYy1kb2NrLWNsdXN0ZXIuaXMtYWN0aXZle29wYWNpdHk6MX0ucWMtY2hpcHtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjA7dG9wOjA7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjdweDtoZWlnaHQ6MzhweDtwYWRkaW5nOjAgMTRweDtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTI1LDkxLDU3LC4yMik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOiNmZmZmZmZlYjtjb2xvcjp2YXIoLS10ZXh0LXNlY29uZGFyeSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1zYW5zKTtmb250LXNpemU6LjgycmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDFlbTt3aGl0ZS1zcGFjZTpub3dyYXA7Y3Vyc29yOmdyYWI7dG91Y2gtYWN0aW9uOm5vbmU7Ym94LXNoYWRvdzowIDJweCA2cHggIzU5M2EyMDE0O3otaW5kZXg6Mjt0cmFuc2l0aW9uOmJveC1zaGFkb3cgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlfS5xYy1jaGlwLnFjLWNoaXAtLWFuaW17dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjI4cyBjdWJpYy1iZXppZXIoLjIyLDEsLjM2LDEpLGJveC1zaGFkb3cgLjE4cyBlYXNlLGJvcmRlci1jb2xvciAuMThzIGVhc2UsYmFja2dyb3VuZCAuMThzIGVhc2UsY29sb3IgLjE4cyBlYXNlfS5xYy1jaGlwLmlzLWdyYWJiaW5ne2N1cnNvcjpncmFiYmluZzt6LWluZGV4OjU7Ym94LXNoYWRvdzowIDEycHggMjZweCAjNTkzYTIwMzh9LnFjLWNoaXA6ZGlzYWJsZWR7Y3Vyc29yOm5vdC1hbGxvd2VkfS5xYy1jaGlwOm5vdCg6ZGlzYWJsZWQpOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1xYy10b25lKX0ucWMtY2hpcC1kb3R7d2lkdGg6OXB4O2hlaWdodDo5cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDojN2Q1YjM5NGQ7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAycHggI2ZmZjk7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xOHMgZWFzZSx0cmFuc2Zvcm0gLjE4cyBlYXNlfS5xYy1jaGlwLS1jb21taXQgLnFjLWNoaXAtZG90e2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KX0ucWMtY2hpcC0tdGFnIC5xYy1jaGlwLWRvdHtiYWNrZ3JvdW5kOiM0YTZmYTV9LnFjLWNoaXAtLXB1c2ggLnFjLWNoaXAtZG90e2JhY2tncm91bmQ6IzRmN2E1OH0ucWMtY2hpcC0tc3ViIC5xYy1jaGlwLWRvdHtiYWNrZ3JvdW5kOiMzYThhOGZ9LnFjLWNoaXAtLWNvbW1pdHtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWNjZW50KSAzMCUscmdiYSgxMjUsOTEsNTcsLjIpKX0ucWMtY2hpcC0tdGFne2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjNGE2ZmE1IDMwJSxyZ2JhKDEyNSw5MSw1NywuMikpfS5xYy1jaGlwLS1wdXNoe2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjNGY3YTU4IDMwJSxyZ2JhKDEyNSw5MSw1NywuMikpfS5xYy1jaGlwLS1zdWJ7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCMzYThhOGYgMzAlLHJnYmEoMTI1LDkxLDU3LC4yKSl9LnFjLWNoaXAuaXMtZ3JhYmJpbmcsLnFjLWNoaXAuaXMtYXR0YWNoZWR7Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtib3gtc2hhZG93OjAgMTJweCAyNnB4IHZhcigtLXFjLXRvbmUtc29mdCk7ei1pbmRleDo1fS5xYy1jaGlwLmlzLWdyYWJiaW5nIC5xYy1jaGlwLWRvdCwucWMtY2hpcC5pcy1hdHRhY2hlZCAucWMtY2hpcC1kb3R7dHJhbnNmb3JtOnNjYWxlKDEuMSl9LnFjLWNoaXAtLWNvbW1pdC5pcy1ncmFiYmluZywucWMtY2hpcC0tY29tbWl0LmlzLWF0dGFjaGVke2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZywjZmZmLGNvbG9yLW1peChpbiBzcmdiLHZhcigtLWFjY2VudCkgMTYlLCNmZmYpKTtib3JkZXItY29sb3I6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tYWNjZW50KSA0NiUsdHJhbnNwYXJlbnQpfS5xYy1jaGlwLS10YWcuaXMtZ3JhYmJpbmcsLnFjLWNoaXAtLXRhZy5pcy1hdHRhY2hlZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZixjb2xvci1taXgoaW4gc3JnYiwjNGE2ZmE1IDE2JSwjZmZmKSk7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCM0YTZmYTUgNDYlLHRyYW5zcGFyZW50KX0ucWMtY2hpcC0tcHVzaC5pcy1ncmFiYmluZywucWMtY2hpcC0tcHVzaC5pcy1hdHRhY2hlZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsI2ZmZixjb2xvci1taXgoaW4gc3JnYiwjNGY3YTU4IDE2JSwjZmZmKSk7Ym9yZGVyLWNvbG9yOmNvbG9yLW1peChpbiBzcmdiLCM0ZjdhNTggNDYlLHRyYW5zcGFyZW50KX0ucWMtY2hpcC0tc3ViLmlzLWdyYWJiaW5nLC5xYy1jaGlwLS1zdWIuaXMtYXR0YWNoZWR7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmZmYsY29sb3ItbWl4KGluIHNyZ2IsIzNhOGE4ZiAxNiUsI2ZmZikpO2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYiwjM2E4YThmIDQ2JSx0cmFuc3BhcmVudCl9LnFjLWRvY2stbGF1bmNoe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Z2FwOjRweDtib3JkZXItcmFkaXVzOjE0cHg7Ym9yZGVyOjEuNXB4IGRhc2hlZCByZ2JhKDEyNSw5MSw1NywuMzIpO2JhY2tncm91bmQ6I2ZmZjY7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7Y3Vyc29yOnBvaW50ZXI7dG91Y2gtYWN0aW9uOm5vbmU7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4ycyBlYXNlLGJvcmRlci1jb2xvciAuMnMgZWFzZSxjb2xvciAuMnMgZWFzZSx0cmFuc2Zvcm0gLjJzIGVhc2UsYm94LXNoYWRvdyAuMnMgZWFzZX0ucWMtZG9jay1sYXVuY2g6bm90KDpkaXNhYmxlZCk6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLXFjLXRvbmUpO2NvbG9yOnZhcigtLXFjLXRvbmUpO2JhY2tncm91bmQ6Y29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tcWMtdG9uZSkgOCUscmdiYSgyNTUsMjU1LDI1NSwuNSkpfS5xYy1kb2NrLWxhdW5jaDpkaXNhYmxlZHtjdXJzb3I6bm90LWFsbG93ZWR9LnFjLWRvY2stbGF1bmNoLWFycm93e2Rpc3BsYXk6aW5saW5lLWZsZXg7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjJzIGVhc2V9LnFjLWRvY2stbGF1bmNoLWxhYmVse2ZvbnQtc2l6ZTouNzJyZW07Zm9udC13ZWlnaHQ6ODAwO2xldHRlci1zcGFjaW5nOi4wNGVtfS5xYy1kb2NrLXN0YWdlW2RhdGEtaG90PSIxIl0gLnFjLWRvY2stbGF1bmNoe2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItY29sb3I6dmFyKC0tcWMtdG9uZSk7YmFja2dyb3VuZDp2YXIoLS1xYy10b25lKTtjb2xvcjojZmZmO3RyYW5zZm9ybTpzY2FsZSgxLjA0KTtib3gtc2hhZG93OjAgOHB4IDIycHggdmFyKC0tcWMtdG9uZS1zb2Z0KSwwIDAgMCA1cHggY29sb3ItbWl4KGluIHNyZ2IsdmFyKC0tcWMtdG9uZSkgMTglLHRyYW5zcGFyZW50KX0ucWMtZG9jay1zdGFnZVtkYXRhLWhvdD0iMSJdIC5xYy1kb2NrLWxhdW5jaC1hcnJvd3t0cmFuc2Zvcm06dHJhbnNsYXRlKDNweCl9LnFjLWRvY2staGludHttaW4taGVpZ2h0OjFlbTtmb250LXNpemU6LjdyZW07Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7dGV4dC1hbGlnbjpjZW50ZXI7bGV0dGVyLXNwYWNpbmc6LjAyZW07b3BhY2l0eTouOH1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2Upey5xYy1jaGlwLC5xYy1jaGlwLS1hbmltLC5xYy1kb2NrLWNsdXN0ZXIsLnFjLWRvY2stbGF1bmNoLC5xYy1kb2NrLWJ1c3ktZG90e2FuaW1hdGlvbjpub25lIWltcG9ydGFudDt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fX1AbWVkaWEobWF4LXdpZHRoOjcyMHB4KXsudG9wYmFyLWdpdC1icmFuY2h7bWF4LXdpZHRoOjhlbX0udG9wYmFyLWdpdC1iYWRnZXtwYWRkaW5nOjAgOHB4O2ZvbnQtc2l6ZTouN3JlbX0ucXVpY2stY29tbWl0LW1vZGFse3dpZHRoOjEwMCU7bWF4LXdpZHRoOjEwMCU7bWF4LWhlaWdodDpjYWxjKDEwMGR2aCAtIG1heCgxNnB4LHZhcigtLXdhbmQtc2FmZS10b3ApKSAtIG1heCgxMnB4LHZhcigtLXdhbmQtc2FmZS1ib3R0b20pKSl9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtaGVhZGVye3BhZGRpbmc6MTRweCAxNnB4IDEycHh9LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtdGl0bGV7Zm9udC1zaXplOjEuMDVyZW19LnF1aWNrLWNvbW1pdC1tb2RhbCAubW9kYWwtc3VidGl0bGV7bWFyZ2luLXRvcDo0cHg7Zm9udC1zaXplOi43OHJlbTtsaW5lLWhlaWdodDoxLjM1fS5xdWljay1jb21taXQtbW9kYWwgLm1vZGFsLWJvZHl7cGFkZGluZzoxNHB4IDE2cHggY2FsYygxNnB4ICsgdmFyKC0td2FuZC1zYWZlLWJvdHRvbSkpfS5xYy1yZWxlYXNlLXBhbmVsLC5xYy1yZXN1bHQtcGFuZWx7Z2FwOjEycHh9LnFjLXBhaXJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6NXB4fS5xYy1wYWlyLWxhYmVse3BhZGRpbmctdG9wOjA7Zm9udC1zaXplOi42OHJlbX0ucWMtcGFpci1mbG93e2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjdweDtwb3NpdGlvbjpyZWxhdGl2ZX0ucWMtcGFpci1hcnJvd3t3aWR0aDoyOHB4O2hlaWdodDoyMHB4O2p1c3RpZnktc2VsZjpjZW50ZXI7dHJhbnNmb3JtOnJvdGF0ZSg5MGRlZyk7Zm9udC1zaXplOjFyZW07bGluZS1oZWlnaHQ6MX0ucWMtcGFpci12YWx1ZXttaW4taGVpZ2h0OjM2cHg7cGFkZGluZzo4cHggMTBweH0ucWMtcGFpci12YWx1ZSBjb2Rle2ZvbnQtc2l6ZTouNzZyZW19LnFjLXBhaXItdmFsdWUgc3Bhbntmb250LXNpemU6LjhyZW19LnFjLXBhaXItLWNvbW1pdCAucWMtcGFpci12YWx1ZXttaW4taGVpZ2h0OmF1dG99LnFjLXBhaXItLWNvbW1pdCAucWMtbWVzc2FnZS1pbnB1dHttaW4taGVpZ2h0OjkycHg7Zm9udC1zaXplOjE2cHg7bGluZS1oZWlnaHQ6MS40NX0ucWMtcGFpci0tdGFnIC5xYy10YWctZmllbGQtaW5wdXR7bWluLWhlaWdodDo0NHB4O2ZvbnQtc2l6ZToxNnB4fS5xYy1kb2NrLXN0YWdle2hlaWdodDoyMzZweDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dyaWQtdGVtcGxhdGUtcm93czptaW5tYXgoMCwxZnIpIDU4cHg7Z2FwOjhweDtwYWRkaW5nOjhweDtib3JkZXItcmFkaXVzOjE0cHh9LnFjLWRvY2stZmllbGR7bWluLWhlaWdodDoxNjBweH0ucWMtY2hpcHtoZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTJweDtmb250LXNpemU6LjhyZW19LnFjLWRvY2stbGF1bmNoe21pbi1oZWlnaHQ6NThweDtmbGV4LWRpcmVjdGlvbjpyb3c7Z2FwOjhweDtib3JkZXItcmFkaXVzOjEzcHh9LnFjLWRvY2stbGF1bmNoLWxhYmVse2ZvbnQtc2l6ZTouNzhyZW19LnFjLWRvY2stc3RhZ2VbZGF0YS1ob3Q9IjEiXSAucWMtZG9jay1sYXVuY2gtYXJyb3d7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMnB4KX19LndhbmQtZGlhbG9nLWJhY2tkcm9we3Bvc2l0aW9uOmZpeGVkO2luc2V0OjA7ei1pbmRleDo5MDAwO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtwYWRkaW5nLXRvcDptYXgoMjRweCx2YXIoLS13YW5kLXNhZmUtdG9wKSk7cGFkZGluZy1ib3R0b206bWF4KDI0cHgsdmFyKC0td2FuZC1zYWZlLWJvdHRvbSkpO3BhZGRpbmctbGVmdDptYXgoMjRweCx2YXIoLS13YW5kLXNhZmUtbGVmdCkpO3BhZGRpbmctcmlnaHQ6bWF4KDI0cHgsdmFyKC0td2FuZC1zYWZlLXJpZ2h0KSk7YmFja2dyb3VuZDojMTQwZTA4NTc7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMThweCkgc2F0dXJhdGUoMTQwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxOHB4KSBzYXR1cmF0ZSgxNDAlKTthbmltYXRpb246d2FuZERpYWxvZ0JhY2tkcm9wSW4gLjIycyBjdWJpYy1iZXppZXIoLjE2LDEsLjMsMSkgYm90aH0ud2FuZC1kaWFsb2ctYmFja2Ryb3AuY2xvc2luZ3thbmltYXRpb246d2FuZERpYWxvZ0JhY2tkcm9wT3V0IC4xNnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgYm90aDtwb2ludGVyLWV2ZW50czpub25lfUBrZXlmcmFtZXMgd2FuZERpYWxvZ0JhY2tkcm9wSW57MCV7b3BhY2l0eTowfXRve29wYWNpdHk6MX19QGtleWZyYW1lcyB3YW5kRGlhbG9nQmFja2Ryb3BPdXR7MCV7b3BhY2l0eToxfXRve29wYWNpdHk6MH19LndhbmQtZGlhbG9ne3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjEwMCU7bWF4LXdpZHRoOjQyMHB4O2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoMTIwJSAxMjAlIGF0IDAlIDAlLHZhcigtLWFjY2VudC1tdXRlZCkgMCUsdHJhbnNwYXJlbnQgNTUlKSxsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWJnLWVsZXZhdGVkKSAwJSx2YXIoLS1iZy1zZWNvbmRhcnkpIDEwMCUpO2JvcmRlcjouNXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO2JvcmRlci1yYWRpdXM6MjJweDtvdmVyZmxvdzpoaWRkZW47YmFja2Ryb3AtZmlsdGVyOmJsdXIoNDBweCkgc2F0dXJhdGUoMTgwJSk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cig0MHB4KSBzYXR1cmF0ZSgxODAlKTtib3gtc2hhZG93OjAgMjRweCA2NHB4IC0xMnB4ICM1OTNhMjA0NywwIDZweCAyMHB4IC02cHggIzU5M2EyMDI5LDAgMCAwIC41cHggIzdkNWIzOTE0LGluc2V0IDAgMXB4ICNmZmZmZmZiMzthbmltYXRpb246d2FuZERpYWxvZ0luIC4yOHMgY3ViaWMtYmV6aWVyKC4zNCwxLjQsLjY0LDEpIGJvdGh9LndhbmQtZGlhbG9nLWJhY2tkcm9wLmNsb3NpbmcgLndhbmQtZGlhbG9ne2FuaW1hdGlvbjp3YW5kRGlhbG9nT3V0IC4xNnMgY3ViaWMtYmV6aWVyKC40LDAsLjIsMSkgYm90aH1Aa2V5ZnJhbWVzIHdhbmREaWFsb2dJbnswJXtvcGFjaXR5OjA7dHJhbnNmb3JtOnNjYWxlKC45MikgdHJhbnNsYXRlWSgxMHB4KX10b3tvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpIHRyYW5zbGF0ZVkoMCl9fUBrZXlmcmFtZXMgd2FuZERpYWxvZ091dHswJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpfXRve29wYWNpdHk6MDt0cmFuc2Zvcm06c2NhbGUoLjk2KSB0cmFuc2xhdGVZKDRweCl9fS53YW5kLWRpYWxvZy1oZWFkZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjE0cHg7cGFkZGluZzoyMnB4IDI0cHggMTJweH0ud2FuZC1kaWFsb2ctaWNvbntmbGV4LXNocmluazowO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7Ym9yZGVyLXJhZGl1czo1MCU7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MTtib3gtc2hhZG93Omluc2V0IDAgMXB4ICNmZmZmZmY4MH0ud2FuZC1kaWFsb2ctaWNvbi5pbmZve2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1hY2NlbnQtc29mdCkgMCUsdmFyKC0tYWNjZW50LWhvdmVyKSAxMDAlKTtjb2xvcjojZmZmfS53YW5kLWRpYWxvZy1pY29uLndhcm5pbmd7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNmMGM4OTEgMCUsdmFyKC0td2FybmluZykgMTAwJSk7Y29sb3I6I2ZmZn0ud2FuZC1kaWFsb2ctaWNvbi5kYW5nZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNkOTgxNzggMCUsdmFyKC0tZGFuZ2VyKSAxMDAlKTtjb2xvcjojZmZmfS53YW5kLWRpYWxvZy1pY29uLnN1Y2Nlc3N7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCM4Y2FmOTQgMCUsdmFyKC0tc3VjY2VzcykgMTAwJSk7Y29sb3I6I2ZmZn0ud2FuZC1kaWFsb2ctaWNvbi5xdWVzdGlvbntiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tYWNjZW50LXNvZnQpIDAlLHZhcigtLWFjY2VudCkgMTAwJSk7Y29sb3I6I2ZmZn0ud2FuZC1kaWFsb2ctdGV4dHdyYXB7ZmxleDoxIDEgYXV0bzttaW4td2lkdGg6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDo2cHg7cGFkZGluZy10b3A6NHB4fS53YW5kLWRpYWxvZy10aXRsZXtmb250LXNpemU6MS4wNjI1cmVtO2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzotLjAxZW07Y29sb3I6dmFyKC0tdGV4dC1wcmltYXJ5KTtsaW5lLWhlaWdodDoxLjM7d29yZC1icmVhazpicmVhay13b3JkfS53YW5kLWRpYWxvZy1tZXNzYWdle2ZvbnQtc2l6ZTouOXJlbTtmb250LXdlaWdodDo0MDA7Y29sb3I6dmFyKC0tdGV4dC1zZWNvbmRhcnkpO2xpbmUtaGVpZ2h0OjEuNTU7d2hpdGUtc3BhY2U6cHJlLXdyYXA7d29yZC1icmVhazpicmVhay13b3JkfS53YW5kLWRpYWxvZy1ib2R5e3BhZGRpbmc6NHB4IDI0cHggMTRweH0ud2FuZC1kaWFsb2ctaW5wdXR7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnZhcigtLWJnLXN1cmZhY2UpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXN1YnRsZSk7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6MTFweCAxNHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtc2Fucyk7Zm9udC1zaXplOi45cmVtO2NvbG9yOnZhcigtLXRleHQtcHJpbWFyeSk7Ym94LXNoYWRvdzppbnNldCAwIDFweCAxLjVweCAjN2Q1YjM5MGE7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyBlYXNlLGJveC1zaGFkb3cgLjE1cyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlO2JveC1zaXppbmc6Ym9yZGVyLWJveH0ud2FuZC1kaWFsb2ctaW5wdXQ6Zm9jdXN7b3V0bGluZTpub25lO2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6aW5zZXQgMCAxcHggMS41cHggIzdkNWIzOTBhLDAgMCAwIDNweCB2YXIoLS1hY2NlbnQtZ2xvdyl9LndhbmQtZGlhbG9nLWZvb3RlcntkaXNwbGF5OmZsZXg7Z2FwOjhweDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7cGFkZGluZzoxNHB4IDIwcHggMjBweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItc3VidGxlKTttYXJnaW4tdG9wOjZweH0ud2FuZC1kaWFsb2ctZm9vdGVyIC5idG57bWluLXdpZHRoOjg0cHh9LndhbmQtZGlhbG9nIC5idG4tZGFuZ2Vye2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1kYW5nZXItaG92ZXIpIDAlLHZhcigtLWRhbmdlcikgMTAwJSk7Y29sb3I6dmFyKC0tdGV4dC1pbnZlcnNlKTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7Ym94LXNoYWRvdzowIDFweCAycHggdmFyKC0tZGFuZ2VyLW11dGVkKSwwIDRweCAxMHB4IC0ycHggdmFyKC0tZGFuZ2VyLW11dGVkKSxpbnNldCAwIDFweCAjZmZmZmZmMzgsaW5zZXQgMCAtMXB4ICM2MDFlMTgyZX0ud2FuZC1kaWFsb2cgLmJ0bi1kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCNjOTYwNTUsI2IyNGY0NSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCk7Ym94LXNoYWRvdzowIDJweCA0cHggdmFyKC0tZGFuZ2VyLW11dGVkKSwwIDhweCAyMHB4IC00cHggdmFyKC0tZGFuZ2VyLWdsb3cpLGluc2V0IDAgMXB4ICNmZmZmZmY0NyxpbnNldCAwIC0xcHggIzYwMWUxODJlfS53YW5kLWRpYWxvZyAuYnRuLWRhbmdlcjphY3RpdmV7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMCk7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTgwZGVnLHZhcigtLWRhbmdlcikgMCUsIzkzMzkyZiAxMDAlKTt0cmFuc2l0aW9uLWR1cmF0aW9uOi4wNnN9QG1lZGlhKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXsud2FuZC1kaWFsb2ctYmFja2Ryb3AsLndhbmQtZGlhbG9nLWJhY2tkcm9wLmNsb3NpbmcsLndhbmQtZGlhbG9nLC53YW5kLWRpYWxvZy1iYWNrZHJvcC5jbG9zaW5nIC53YW5kLWRpYWxvZ3thbmltYXRpb246bm9uZSFpbXBvcnRhbnR9fUBzdXBwb3J0cyBub3QgKChiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMXB4KSkgb3IgKC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDFweCkpKXsud2FuZC1kaWFsb2ctYmFja2Ryb3B7YmFja2dyb3VuZDojMTQwZTA4OTl9LndhbmQtZGlhbG9ne2JhY2tncm91bmQ6dmFyKC0tYmctZWxldmF0ZWQpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItc3VidGxlKX19QG1lZGlhKG1heC13aWR0aDo0ODBweCl7LndhbmQtZGlhbG9nLWJhY2tkcm9we3BhZGRpbmc6MTZweDthbGlnbi1pdGVtczpjZW50ZXJ9LndhbmQtZGlhbG9ne21heC13aWR0aDoxMDAlO2JvcmRlci1yYWRpdXM6MjBweH0ud2FuZC1kaWFsb2ctZm9vdGVye2ZsZXgtd3JhcDp3cmFwfS53YW5kLWRpYWxvZy1mb290ZXIgLmJ0bntmbGV4OjEgMSBhdXRvfX0uYnRuLXdpdGgtaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4fS5idG4td2l0aC1pY29uPnN2Z3tmbGV4LXNocmluazowfS5jb21wb3Nlci1waWxsLWljb257ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246LTJweH0uY29tcG9zZXItcGlsbC1sYWJlbHtkaXNwbGF5OmlubGluZS1ibG9jaztsZXR0ZXItc3BhY2luZzouMDJlbX0uc2V0dGluZ3Mtc2VjdGlvbi1pY29ue2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LnNldHRpbmdzLXNlY3Rpb24taWNvbj5zdmd7ZGlzcGxheTpibG9ja30uYmxhbmstY2hhdC10b29sLWJ0biAudG9vbC1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7d2lkdGg6MThweDtoZWlnaHQ6MThweDtmb250LXNpemU6MS4xMjVyZW19LmJsYW5rLWNoYXQtdG9vbC1idG4gLnRvb2wtaWNvbj5zdmd7ZGlzcGxheTpibG9ja30uYmxhbmstY2hhdC10b29sLWJ0biAudG9vbC1pY29uLXRleHR7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxcmVtO2xpbmUtaGVpZ2h0OjF9LmJsYW5rLWNoYXQtY3dkLWljb257ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MDtsaW5lLWhlaWdodDowfS5ibGFuay1jaGF0LWN3ZC1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS5ibGFuay1jaGF0LWN3ZC1hcnJvd3tkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjA7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gdmFyKC0tdHJhbnNpdGlvbi1mYXN0KX0uYmxhbmstY2hhdC1jd2QtYXJyb3c+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LmZvbGRlci1waWNrZXItaWNvbj5zdmd7ZGlzcGxheTpibG9ja30uZm9sZGVyLXBpY2tlci1xdWljay1idG4uYnRuLXdpdGgtaWNvbntnYXA6NXB4fS5hcHByb3ZhbC1zdGF0cy1yb3ctaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uYXBwcm92YWwtc3RhdHMtcm93LWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmF0dGFjaG1lbnQtcGlsbCAuYXR0LWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItY29tcGFjdC1pY29ue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uZm9sZGVyLXBpY2tlci1jb21wYWN0LWljb24+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItdG9nZ2xle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1zaXplOjA7bGluZS1oZWlnaHQ6MH0uZm9sZGVyLXBpY2tlci10b2dnbGU+c3Zne2Rpc3BsYXk6YmxvY2t9LmZvbGRlci1waWNrZXItdG9nZ2xlLm9wZW57dHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpfS53b3JraW5nLWRpci1pbmRpY2F0b3ItaWNvbntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjB9LndvcmtpbmctZGlyLWluZGljYXRvci1pY29uPnN2Z3tkaXNwbGF5OmJsb2NrfS53YW5kLWpveXN0aWNrLXJvb3R7cG9zaXRpb246Zml4ZWQ7ei1pbmRleDo0MDtwb2ludGVyLWV2ZW50czpub25lO29wYWNpdHk6MDt2aXNpYmlsaXR5OmhpZGRlbjt0cmFuc2l0aW9uOm9wYWNpdHkgLjJzIGVhc2V9LndhbmQtam95c3RpY2stcm9vdC52aXNpYmxle29wYWNpdHk6MTt2aXNpYmlsaXR5OnZpc2libGV9LndhbmQtam95c3RpY2stYmFja2Ryb3B7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3BvaW50ZXItZXZlbnRzOm5vbmU7dmlzaWJpbGl0eTpoaWRkZW59LndhbmQtam95c3RpY2stYmFja2Ryb3AuYWN0aXZle3Zpc2liaWxpdHk6dmlzaWJsZTtwb2ludGVyLWV2ZW50czphdXRvfS53YW5kLWpveXN0aWNrLWJhbGx7cG9zaXRpb246Zml4ZWQ7cmlnaHQ6MThweDtib3R0b206OTZweDt3aWR0aDo1NHB4O2hlaWdodDo1NHB4O2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjb2xvcjojZjVlYmUxZjA7YmFja2dyb3VuZDojMjMxYzE4ZGI7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI0NSwyMzUsMjI1LC4xOCk7Ym94LXNoYWRvdzowIDhweCAyMnB4ICMwMDAwMDA0ZCxpbnNldCAwIDFweCAjZmZmZmZmMTQ7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMTBweCk7LXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6Ymx1cigxMHB4KTtwb2ludGVyLWV2ZW50czphdXRvO3RvdWNoLWFjdGlvbjpub25lOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDt1c2VyLXNlbGVjdDpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTt6LWluZGV4OjQzO2N1cnNvcjpncmFiO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xOHMgdmFyKC0tZWFzZS1zcHJpbmcpLGJhY2tncm91bmQgLjJzIGVhc2UsYm9yZGVyLWNvbG9yIC4ycyBlYXNlLGJveC1zaGFkb3cgLjJzIGVhc2V9LndhbmQtam95c3RpY2stbG9nb3twb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9LndhbmQtam95c3RpY2stYmFsbDpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KTtib3JkZXItY29sb3I6I2Y1ZWJlMTRkO2JhY2tncm91bmQ6IzJiMjIxZGU2O2JveC1zaGFkb3c6MCAxMHB4IDI2cHggIzAwMDAwMDU3LGluc2V0IDAgMXB4ICNmZmZmZmYxYX0ud2FuZC1qb3lzdGljay1iYWxsOmFjdGl2ZSwud2FuZC1qb3lzdGljay1iYWxsLnBhbmVsLW9wZW57YmFja2dyb3VuZDojMWQxNzE0ZjB9LndhbmQtam95c3RpY2stYmFsbC5kcmFnZ2luZ3t0cmFuc2Zvcm06c2NhbGUoMS4xMik7Y3Vyc29yOmdyYWJiaW5nO2JveC1zaGFkb3c6MCAxMHB4IDI4cHggIzAwMDAwMDVjfS53YW5kLWpveXN0aWNrLXBhbmVse3Bvc2l0aW9uOmZpeGVkO3JpZ2h0OjE4cHg7Ym90dG9tOjE2MHB4O3otaW5kZXg6NDQ7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6OHB4O3BhZGRpbmc6MTBweDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDojMWQxNzE0ZjU7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI0NSwyMzUsMjI1LC4xMik7Ym94LXNoYWRvdzowIDE0cHggMzRweCAjMDAwMDAwNTcsaW5zZXQgMCAxcHggI2ZmZmZmZjBmO2JhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpOy13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCk7cG9pbnRlci1ldmVudHM6bm9uZTtvcGFjaXR5OjA7dmlzaWJpbGl0eTpoaWRkZW47dHJhbnNmb3JtOnRyYW5zbGF0ZVkoOHB4KSBzY2FsZSguOTYpO3RyYW5zZm9ybS1vcmlnaW46Ym90dG9tIHJpZ2h0O3RyYW5zaXRpb246b3BhY2l0eSAuMThzIHZhcigtLWVhc2Utb3V0LWV4cG8pLHRyYW5zZm9ybSAuMjJzIHZhcigtLWVhc2Utc3ByaW5nKSx2aXNpYmlsaXR5IDBzIGxpbmVhciAuMThzO3dpZHRoOm1pbigyMjRweCxjYWxjKDEwMHZ3IC0gMzZweCkpO21heC13aWR0aDpjYWxjKDEwMHZ3IC0gMzZweCl9LndhbmQtam95c3RpY2stcGFuZWwuYWN0aXZle3BvaW50ZXItZXZlbnRzOmF1dG87b3BhY2l0eToxO3Zpc2liaWxpdHk6dmlzaWJsZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKTt0cmFuc2l0aW9uLWRlbGF5OjBzfS53anAtaGVhZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEwcHg7bWluLWhlaWdodDoyNHB4fS53anAtdGl0bGV7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmb250LXNpemU6Ljc2cmVtO2xldHRlci1zcGFjaW5nOjA7Y29sb3I6I2Y1ZWJlMWM3O2ZvbnQtd2VpZ2h0OjYwMH0ud2pwLXRpdGxlLWljb257Y29sb3I6I2Y1ZWJlMWI4fS53anAtY2xvc2V7d2lkdGg6MjRweDtoZWlnaHQ6MjRweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjQ1LDIzNSwyMjUsLjEyKTtiYWNrZ3JvdW5kOiNmZmZmZmYwZDtjb2xvcjojZjVlYmUxYjg7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4xNHMgZWFzZSxjb2xvciAuMTRzIGVhc2UsdHJhbnNmb3JtIC4xNHMgZWFzZX0ud2pwLWNsb3NlOmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjFhO2NvbG9yOiNmNWViZTFmMn0ud2pwLWNsb3NlOmFjdGl2ZXt0cmFuc2Zvcm06c2NhbGUoLjk0KX0ud2pwLWRwYWR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjVweH0ud2pwLWRwYWQtcm93e2Rpc3BsYXk6ZmxleDtnYXA6NXB4fS53anAtZ3JpZHtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjVweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfS53anAtZm5rZXlze21heC13aWR0aDoyMDBweH0ud2pwLWtleXttaW4td2lkdGg6NDRweDtoZWlnaHQ6MzhweDtwYWRkaW5nOjAgOHB4O2JvcmRlci1yYWRpdXM6OHB4O2ZvbnQtc2l6ZTouNzZyZW07Zm9udC13ZWlnaHQ6NTAwO2NvbG9yOiNmNWViZTFkNjtiYWNrZ3JvdW5kOiNmZmZmZmYwYjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjQ1LDIzNSwyMjUsLjExKTtjdXJzb3I6cG9pbnRlcjt0b3VjaC1hY3Rpb246bWFuaXB1bGF0aW9uOy13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjp0cmFuc3BhcmVudDt1c2VyLXNlbGVjdDpub25lO3RyYW5zaXRpb246dHJhbnNmb3JtIC4xcyBlYXNlLGJhY2tncm91bmQgLjE1cyBlYXNlLGJvcmRlci1jb2xvciAuMTVzIGVhc2UsY29sb3IgLjE1cyBlYXNlfS53anAta2V5OmhvdmVye2JhY2tncm91bmQ6I2ZmZmZmZjE0O2JvcmRlci1jb2xvcjojZjVlYmUxMzM7Y29sb3I6I2Y1ZWJlMWYyfS53anAta2V5OmFjdGl2ZXtiYWNrZ3JvdW5kOiNmZmZmZmYxZjt0cmFuc2Zvcm06c2NhbGUoLjk2KX0ud2pwLWtleS53anAtbW9kLmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX0K"),
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=="),