@curless/hotel-storefront 0.33.2 → 0.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/dist/aggregate/hotels.d.ts.map +1 -1
  2. package/dist/aggregate/hotels.js +7 -1
  3. package/dist/aggregate/hotels.js.map +1 -1
  4. package/dist/backend.d.ts +2 -1
  5. package/dist/backend.d.ts.map +1 -1
  6. package/dist/backend.js.map +1 -1
  7. package/dist/card.generated.d.ts +1 -1
  8. package/dist/card.generated.js +2 -2
  9. package/dist/card.generated.js.map +1 -1
  10. package/dist/data.d.ts.map +1 -1
  11. package/dist/data.js +41 -0
  12. package/dist/data.js.map +1 -1
  13. package/dist/demo-hotels.d.ts +5 -1
  14. package/dist/demo-hotels.d.ts.map +1 -1
  15. package/dist/demo-hotels.js +41 -9
  16. package/dist/demo-hotels.js.map +1 -1
  17. package/dist/huazhu/backend.d.ts.map +1 -1
  18. package/dist/huazhu/backend.js +28 -8
  19. package/dist/huazhu/backend.js.map +1 -1
  20. package/dist/huazhu/catalog.d.ts +19 -2
  21. package/dist/huazhu/catalog.d.ts.map +1 -1
  22. package/dist/huazhu/catalog.js +63 -15
  23. package/dist/huazhu/catalog.js.map +1 -1
  24. package/dist/huazhu/fake.js +1 -1
  25. package/dist/huazhu/sandbox.d.ts.map +1 -1
  26. package/dist/huazhu/sandbox.js +9 -12
  27. package/dist/huazhu/sandbox.js.map +1 -1
  28. package/dist/names.d.ts +13 -0
  29. package/dist/names.d.ts.map +1 -0
  30. package/dist/names.js +54 -0
  31. package/dist/names.js.map +1 -0
  32. package/dist/present.d.ts +16 -1
  33. package/dist/present.d.ts.map +1 -1
  34. package/dist/present.js +13 -1
  35. package/dist/present.js.map +1 -1
  36. package/dist/server.d.ts +2 -2
  37. package/dist/server.js +2 -2
  38. package/dist/tools.d.ts.map +1 -1
  39. package/dist/tools.js +31 -8
  40. package/dist/tools.js.map +1 -1
  41. package/dist/types.d.ts +37 -0
  42. package/dist/types.d.ts.map +1 -1
  43. package/package.json +2 -1
@@ -2,7 +2,7 @@
2
2
  // The hotel booking MCP App card - a single self-contained HTML (Vite +
3
3
  // vite-plugin-singlefile, with the MCP Apps SDK bundled), base64-embedded so it
4
4
  // is bundler-safe. Regenerate after changing the widget UI.
5
- export const HOTEL_CARD_HTML = Buffer.from('PCFkb2N0eXBlIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KICA8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIiAvPgogICAgPHRpdGxlPkhvdGVsczwvdGl0bGU+CiAgICA8c2NyaXB0IHR5cGU9Im1vZHVsZSIgY3Jvc3NvcmlnaW4+Y29uc3QgeWI9KGZ1bmN0aW9uKCl7Y29uc3QgdD10eXBlb2YgZG9jdW1lbnQ8InUiJiZkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIikucmVsTGlzdDtyZXR1cm4gdCYmdC5zdXBwb3J0cyYmdC5zdXBwb3J0cygibW9kdWxlcHJlbG9hZCIpPyJtb2R1bGVwcmVsb2FkIjoicHJlbG9hZCJ9KSgpLCRiPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG5ldyBVUkwoZSx0KS5ocmVmfSxEdT17fSx3Yj1mdW5jdGlvbih0LG4sbyl7bGV0IHM9UHJvbWlzZS5yZXNvbHZlKCk7aWYobiYmbi5sZW5ndGg+MCl7bGV0IGk9ZnVuY3Rpb24oaCl7cmV0dXJuIFByb21pc2UuYWxsKGgubWFwKHA9PlByb21pc2UucmVzb2x2ZShwKS50aGVuKG09Pih7c3RhdHVzOiJmdWxmaWxsZWQiLHZhbHVlOm19KSxtPT4oe3N0YXR1czoicmVqZWN0ZWQiLHJlYXNvbjptfSkpKSl9O2NvbnN0IGM9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImxpbmsiKSx1PWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIm1ldGFbcHJvcGVydHk9Y3NwLW5vbmNlXSIpLGQ9dT8ubm9uY2V8fHU/LmdldEF0dHJpYnV0ZSgibm9uY2UiKTtzPWkobi5tYXAoaD0+e2lmKGg9JGIoaCxvKSxoIGluIER1KXJldHVybjtEdVtoXT0hMDtjb25zdCBwPWguZW5kc1dpdGgoIi5jc3MiKSxtPXA/J1tyZWw9InN0eWxlc2hlZXQiXSc6IiI7aWYoISFvKWZvcihsZXQgXz1jLmxlbmd0aC0xO18+PTA7Xy0tKXtjb25zdCBDPWNbX107aWYoQy5ocmVmPT09aCYmKCFwfHxDLnJlbD09PSJzdHlsZXNoZWV0IikpcmV0dXJufWVsc2UgaWYoZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgbGlua1tocmVmPSIke2h9Il0ke219YCkpcmV0dXJuO2NvbnN0ICQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO2lmKCQucmVsPXA/InN0eWxlc2hlZXQiOnliLHB8fCgkLmFzPSJzY3JpcHQiKSwkLmNyb3NzT3JpZ2luPSIiLCQuaHJlZj1oLGQmJiQuc2V0QXR0cmlidXRlKCJub25jZSIsZCksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZCgkKSxwKXJldHVybiBuZXcgUHJvbWlzZSgoXyxDKT0+eyQuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsXyksJC5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9PkMobmV3IEVycm9yKGBVbmFibGUgdG8gcHJlbG9hZCBDU1MgZm9yICR7aH1gKSkpfSl9KSl9ZnVuY3Rpb24gcihpKXtjb25zdCBjPW5ldyBFdmVudCgidml0ZTpwcmVsb2FkRXJyb3IiLHtjYW5jZWxhYmxlOiEwfSk7aWYoYy5wYXlsb2FkPWksd2luZG93LmRpc3BhdGNoRXZlbnQoYyksIWMuZGVmYXVsdFByZXZlbnRlZCl0aHJvdyBpfXJldHVybiBzLnRoZW4oaT0+e2Zvcihjb25zdCBjIG9mIGl8fFtdKWMuc3RhdHVzPT09InJlamVjdGVkIiYmcihjLnJlYXNvbik7cmV0dXJuIHQoKS5jYXRjaChyKX0pfTtmdW5jdGlvbiBfYihlKXtyZXR1cm4gZX1mdW5jdGlvbiBTYihlKXtyZXR1cm4gZX1mdW5jdGlvbiBacygpe3JldHVybiBlPT5lfWZ1bmN0aW9uIGpiKGUpe31mdW5jdGlvbiBUYihlKXt0aHJvdyBuZXcgRXJyb3IoIlVuZXhwZWN0ZWQgdmFsdWUgaW4gZXhoYXVzdGl2ZSBjaGVjayIpfWZ1bmN0aW9uIEFiKGUpe31mdW5jdGlvbiB5YShlKXtjb25zdCB0PU9iamVjdC52YWx1ZXMoZSkuZmlsdGVyKG89PnR5cGVvZiBvPT0ibnVtYmVyIik7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGUpLmZpbHRlcigoW28sc10pPT50LmluZGV4T2YoK28pPT09LTEpLm1hcCgoW28sc10pPT5zKX1mdW5jdGlvbiAkYShlLHQ9InwiKXtyZXR1cm4gZS5tYXAobj0+WGEobikpLmpvaW4odCl9ZnVuY3Rpb24gdnMoZSx0KXtyZXR1cm4gdHlwZW9mIHQ9PSJiaWdpbnQiP3QudG9TdHJpbmcoKTp0fWNsYXNzIHpie2NvbnN0cnVjdG9yKHQpe3RoaXMuX2dldHRlcj10LHRoaXMuX3ZhbHVlPXZvaWQgMH1nZXQgdmFsdWUoKXtjb25zdCB0PXRoaXMuX2dldHRlcjtyZXR1cm4gdCE9PXZvaWQgMCYmKHRoaXMuX3ZhbHVlPXQoKSx0aGlzLl9nZXR0ZXI9dm9pZCAwKSx0aGlzLl92YWx1ZX19ZnVuY3Rpb24gV24oZSl7cmV0dXJuIG5ldyB6YihlKX1mdW5jdGlvbiBZYShlKXtyZXR1cm4gZT09bnVsbH1mdW5jdGlvbiBkdChlKXtjb25zdCB0PWUuc3RhcnRzV2l0aCgiXiIpPzE6MCxuPWUuZW5kc1dpdGgoIiQiKT9lLmxlbmd0aC0xOmUubGVuZ3RoO3JldHVybiBlLnNsaWNlKHQsbil9ZnVuY3Rpb24gSGQoZSx0KXtjb25zdCBuPWUvdCxvPU1hdGgucm91bmQobikscz00Kk51bWJlci5FUFNJTE9OKk1hdGgubWF4KE1hdGguYWJzKG4pLDEpO3JldHVybiBNYXRoLmFicyhuLW8pPHM/MDpuLW99Y29uc3QgTHU9U3ltYm9sKCJldmFsdWF0aW5nIik7ZnVuY3Rpb24gRmQoZSx0LG4pe2xldCBvO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2dldCgpe2lmKG8hPT1MdSlyZXR1cm4gbz09PXZvaWQgMCYmKG89THUsbz1uKCkpLG99LHNldChzKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpzfSl9LGNvbmZpZ3VyYWJsZTohMH0pfWZ1bmN0aW9uIENiKGUpe3JldHVybiBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZihlKSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhlKSl9ZnVuY3Rpb24gRXQoZSx0LG4pe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4sd3JpdGFibGU6ITAsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9KX1mdW5jdGlvbiBNcyhlKXtjb25zdCB0PU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSwic2hhcGUiKTtyZXR1cm4gdD8uZ2V0P3QuZ2V0LnJhdzp0Py52YWx1ZX1mdW5jdGlvbiBYZShlKXtyZXR1cm4gTXMoZS5fem9kLmRlZik/P2UuX3pvZC5kZWYuc2hhcGV9ZnVuY3Rpb24gVWQoZSx0LG4pe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2dldCgpe2NvbnN0IG89bigpO3JldHVybiBFdCh0aGlzLHQsbyksb30sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9KX1mdW5jdGlvbiBWZChlLHQsbil7dCBpbiBlP0V0KGUsdCxuKTplW3RdPW59ZnVuY3Rpb24gU3QoZSx0LG4sbyl7Y29uc3Qgcz1YZSh0KTtmb3IoY29uc3QgciBvZiBuKXtjb25zdCBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocyxyKTtpLmVudW1lcmFibGUmJihpLmdldD9VZChlLHIsKCk9Pntjb25zdCBjPXQuX3pvZC5kZWYuc2hhcGVbcl07cmV0dXJuIG8/byhjLHIpOmN9KTpWZChlLHIsbz9vKGkudmFsdWUscik6aS52YWx1ZSkpfX1mdW5jdGlvbiBOYihlLHQpe2Zvcihjb25zdCBuIG9mIFJlZmxlY3Qub3duS2V5cyh0KSl7Y29uc3Qgbz1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsbik7by5lbnVtZXJhYmxlJiYoby5nZXQ/VWQoZSxuLCgpPT50W25dKTpWZChlLG4sby52YWx1ZSkpfX1mdW5jdGlvbiB3ZSguLi5lKXtjb25zdCB0PXt9O2Zvcihjb25zdCBuIG9mIGUpe2NvbnN0IG89T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMobik7T2JqZWN0LmFzc2lnbih0LG8pfXJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydGllcyh7fSx0KX1mdW5jdGlvbiBQYihlKXtyZXR1cm4gd2UoZS5fem9kLmRlZil9ZnVuY3Rpb24geGIoZSx0KXtyZXR1cm4gdD90LnJlZHVjZSgobixvKT0+bj8uW29dLGUpOmV9ZnVuY3Rpb24gSWIoZSl7Y29uc3QgdD1PYmplY3Qua2V5cyhlKSxuPXQubWFwKG89PmVbb10pO3JldHVybiBQcm9taXNlLmFsbChuKS50aGVuKG89Pntjb25zdCBzPXt9O2ZvcihsZXQgcj0wO3I8dC5sZW5ndGg7cisrKXNbdFtyXV09b1tyXTtyZXR1cm4gc30pfWZ1bmN0aW9uIFJiKGU9MTApe2NvbnN0IHQ9ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IjtsZXQgbj0iIjtmb3IobGV0IG89MDtvPGU7bysrKW4rPXRbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKnQubGVuZ3RoKV07cmV0dXJuIG59ZnVuY3Rpb24gV2QoZSl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUpfWZ1bmN0aW9uIEtkKGUpe3JldHVybiBlLnRvTG93ZXJDYXNlKCkudHJpbSgpLnJlcGxhY2UoL1teXHdccy1dL2csIiIpLnJlcGxhY2UoL1tcc18tXSsvZywiLSIpLnJlcGxhY2UoL14tK3wtKyQvZywiIil9Y29uc3QgUWE9ImNhcHR1cmVTdGFja1RyYWNlImluIEVycm9yP0Vycm9yLmNhcHR1cmVTdGFja1RyYWNlOiguLi5lKT0+e307ZnVuY3Rpb24gR3QoZSl7cmV0dXJuIHR5cGVvZiBlPT0ib2JqZWN0IiYmZSE9PW51bGwmJiFBcnJheS5pc0FycmF5KGUpfWNvbnN0IEdkPVduKCgpPT57aWYoVGUuaml0bGVzc3x8dHlwZW9mIG5hdmlnYXRvcjwidSImJm5hdmlnYXRvcj8udXNlckFnZW50Py5pbmNsdWRlcygiQ2xvdWRmbGFyZSIpKXJldHVybiExO3RyeXtjb25zdCBlPUZ1bmN0aW9uO3JldHVybiBuZXcgZSgiIiksITB9Y2F0Y2h7cmV0dXJuITF9fSk7ZnVuY3Rpb24gcHQoZSl7aWYoR3QoZSk9PT0hMSlyZXR1cm4hMTtjb25zdCB0PWUuY29uc3RydWN0b3I7aWYodD09PXZvaWQgMHx8dHlwZW9mIHQhPSJmdW5jdGlvbiIpcmV0dXJuITA7Y29uc3Qgbj10LnByb3RvdHlwZTtyZXR1cm4hKEd0KG4pPT09ITF8fE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLCJpc1Byb3RvdHlwZU9mIik9PT0hMSl9ZnVuY3Rpb24gcXMoZSl7cmV0dXJuIHB0KGUpP3suLi5lfTpBcnJheS5pc0FycmF5KGUpP1suLi5lXTplIGluc3RhbmNlb2YgTWFwP25ldyBNYXAoZSk6ZSBpbnN0YW5jZW9mIFNldD9uZXcgU2V0KGUpOmV9ZnVuY3Rpb24gRWIoZSl7bGV0IHQ9MDtmb3IoY29uc3QgbiBpbiBlKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLG4pJiZ0Kys7cmV0dXJuIHR9Y29uc3QgT2I9ZT0+e2NvbnN0IHQ9dHlwZW9mIGU7c3dpdGNoKHQpe2Nhc2UidW5kZWZpbmVkIjpyZXR1cm4idW5kZWZpbmVkIjtjYXNlInN0cmluZyI6cmV0dXJuInN0cmluZyI7Y2FzZSJudW1iZXIiOnJldHVybiBOdW1iZXIuaXNOYU4oZSk/Im5hbiI6Im51bWJlciI7Y2FzZSJib29sZWFuIjpyZXR1cm4iYm9vbGVhbiI7Y2FzZSJmdW5jdGlvbiI6cmV0dXJuImZ1bmN0aW9uIjtjYXNlImJpZ2ludCI6cmV0dXJuImJpZ2ludCI7Y2FzZSJzeW1ib2wiOnJldHVybiJzeW1ib2wiO2Nhc2Uib2JqZWN0IjpyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8iYXJyYXkiOmU9PT1udWxsPyJudWxsIjplLnRoZW4mJnR5cGVvZiBlLnRoZW49PSJmdW5jdGlvbiImJmUuY2F0Y2gmJnR5cGVvZiBlLmNhdGNoPT0iZnVuY3Rpb24iPyJwcm9taXNlIjp0eXBlb2YgTWFwPCJ1IiYmZSBpbnN0YW5jZW9mIE1hcD8ibWFwIjp0eXBlb2YgU2V0PCJ1IiYmZSBpbnN0YW5jZW9mIFNldD8ic2V0Ijp0eXBlb2YgRGF0ZTwidSImJmUgaW5zdGFuY2VvZiBEYXRlPyJkYXRlIjp0eXBlb2YgRmlsZTwidSImJmUgaW5zdGFuY2VvZiBGaWxlPyJmaWxlIjoib2JqZWN0IjtkZWZhdWx0OnRocm93IG5ldyBFcnJvcihgVW5rbm93biBkYXRhIHR5cGU6ICR7dH1gKX19LGtzPW5ldyBTZXQoWyJzdHJpbmciLCJudW1iZXIiLCJzeW1ib2wiXSksSmQ9bmV3IFNldChbInN0cmluZyIsIm51bWJlciIsImJpZ2ludCIsImJvb2xlYW4iLCJzeW1ib2wiLCJ1bmRlZmluZWQiXSk7ZnVuY3Rpb24gZXQoZSl7cmV0dXJuIGUucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xdXFxdL2csIlxcJCYiKX1mdW5jdGlvbiBpZShlLHQsbil7Y29uc3Qgbz1uZXcgZS5fem9kLmNvbnN0cih0Pz9lLl96b2QuZGVmKTtyZXR1cm4oIXR8fG4/LnBhcmVudCkmJihvLl96b2QucGFyZW50PWUpLG99ZnVuY3Rpb24gdyhlKXtjb25zdCB0PWU7aWYoIXQpcmV0dXJue307aWYodHlwZW9mIHQ9PSJzdHJpbmciKXJldHVybntlcnJvcjooKT0+dH07aWYodD8ubWVzc2FnZSE9PXZvaWQgMCl7aWYodD8uZXJyb3IhPT12b2lkIDApdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgc3BlY2lmeSBib3RoIGBtZXNzYWdlYCBhbmQgYGVycm9yYCBwYXJhbXMiKTt0LmVycm9yPXQubWVzc2FnZX1yZXR1cm4gZGVsZXRlIHQubWVzc2FnZSx0eXBlb2YgdC5lcnJvcj09InN0cmluZyI/ey4uLnQsZXJyb3I6KCk9PnQuZXJyb3J9OnR9ZnVuY3Rpb24gWmIoZSl7bGV0IHQ7cmV0dXJuIG5ldyBQcm94eSh7fSx7Z2V0KG4sbyxzKXtyZXR1cm4gdD8/KHQ9ZSgpKSxSZWZsZWN0LmdldCh0LG8scyl9LHNldChuLG8scyxyKXtyZXR1cm4gdD8/KHQ9ZSgpKSxSZWZsZWN0LnNldCh0LG8scyxyKX0saGFzKG4sbyl7cmV0dXJuIHQ/Pyh0PWUoKSksUmVmbGVjdC5oYXModCxvKX0sZGVsZXRlUHJvcGVydHkobixvKXtyZXR1cm4gdD8/KHQ9ZSgpKSxSZWZsZWN0LmRlbGV0ZVByb3BlcnR5KHQsbyl9LG93bktleXMobil7cmV0dXJuIHQ/Pyh0PWUoKSksUmVmbGVjdC5vd25LZXlzKHQpfSxnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixvKXtyZXR1cm4gdD8/KHQ9ZSgpKSxSZWZsZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LG8pfSxkZWZpbmVQcm9wZXJ0eShuLG8scyl7cmV0dXJuIHQ/Pyh0PWUoKSksUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0LG8scyl9fSl9ZnVuY3Rpb24gWGEoZSl7cmV0dXJuIHR5cGVvZiBlPT0iYmlnaW50Ij9lLnRvU3RyaW5nKCkrIm4iOnR5cGVvZiBlPT0ic3RyaW5nIj9gIiR7ZX0iYDpgJHtlfWB9ZnVuY3Rpb24gWWQoZSl7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZpbHRlcih0PT5lW3RdLl96b2Qub3B0aW4hPT12b2lkIDAmJmVbdF0uX3pvZC5vcHRvdXQ9PT0ib3B0aW9uYWwiKX1jb25zdCBRZD17c2FmZWludDpbTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIsTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJdLGludDMyOlstMjE0NzQ4MzY0OCwyMTQ3NDgzNjQ3XSx1aW50MzI6WzAsNDI5NDk2NzI5NV0sZmxvYXQzMjpbLTM0MDI4MjM0NjYzODUyODg2ZTIyLDM0MDI4MjM0NjYzODUyODg2ZTIyXSxmbG9hdDY0OlstTnVtYmVyLk1BWF9WQUxVRSxOdW1iZXIuTUFYX1ZBTFVFXX0sWGQ9e2ludDY0OltCaWdJbnQoIi05MjIzMzcyMDM2ODU0Nzc1ODA4IiksQmlnSW50KCI5MjIzMzcyMDM2ODU0Nzc1ODA3IildLHVpbnQ2NDpbQmlnSW50KDApLEJpZ0ludCgiMTg0NDY3NDQwNzM3MDk1NTE2MTUiKV19O2Z1bmN0aW9uIGVoKGUsdCl7Y29uc3Qgbj1lLl96b2QuZGVmLG89bi5jaGVja3M7aWYobyYmby5sZW5ndGg+MCl0aHJvdyBuZXcgRXJyb3IoIi5waWNrKCkgY2Fubm90IGJlIHVzZWQgb24gb2JqZWN0IHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50cyIpO2NvbnN0IHI9e307cmV0dXJuIFN0KHIsZSxEcyhlLHQpKSxpZShlLHdlKG4se3NoYXBlOnIsY2hlY2tzOltdfSkpfWZ1bmN0aW9uIERzKGUsdCl7Y29uc3Qgbj1YZShlKSxvPVtdO2Zvcihjb25zdCBzIG9mIFJlZmxlY3Qub3duS2V5cyh0KSl7aWYoIU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixzKT8uZW51bWVyYWJsZSl0aHJvdyBuZXcgRXJyb3IoYFVucmVjb2duaXplZCBrZXk6ICIke1N0cmluZyhzKX0iYCk7dFtzXSYmby5wdXNoKHMpfXJldHVybiBvfWZ1bmN0aW9uIHRoKGUsdCl7Y29uc3Qgbj1lLl96b2QuZGVmLG89bi5jaGVja3M7aWYobyYmby5sZW5ndGg+MCl0aHJvdyBuZXcgRXJyb3IoIi5vbWl0KCkgY2Fubm90IGJlIHVzZWQgb24gb2JqZWN0IHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50cyIpO2NvbnN0IHI9bmV3IFNldChEcyhlLHQpKSxpPXt9O3JldHVybiBTdChpLGUsUmVmbGVjdC5vd25LZXlzKFhlKGUpKS5maWx0ZXIoYz0+IXIuaGFzKGMpKSksaWUoZSx3ZShuLHtzaGFwZTppLGNoZWNrczpbXX0pKX1mdW5jdGlvbiBuaChlLHQpe2lmKCFwdCh0KSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQgdG8gZXh0ZW5kOiBleHBlY3RlZCBhIHBsYWluIG9iamVjdCIpO2NvbnN0IG49ZS5fem9kLmRlZi5jaGVja3M7aWYobiYmbi5sZW5ndGg+MCl7Y29uc3Qgcz1YZShlKTtmb3IoY29uc3QgciBvZiBSZWZsZWN0Lm93bktleXModCkpaWYoT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzLHIpIT09dm9pZCAwKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IG92ZXJ3cml0ZSBrZXlzIG9uIG9iamVjdCBzY2hlbWFzIGNvbnRhaW5pbmcgcmVmaW5lbWVudHMuIFVzZSBgLnNhZmVFeHRlbmQoKWAgaW5zdGVhZC4iKX1yZXR1cm4gaWUoZSx3ZShlLl96b2QuZGVmLHtzaGFwZTpvaChlLHQpfSkpfWZ1bmN0aW9uIG9oKGUsdCl7Y29uc3Qgbj17fTtyZXR1cm4gU3QobixlLFJlZmxlY3Qub3duS2V5cyhYZShlKSkpLE5iKG4sdCksbn1mdW5jdGlvbiBzaChlLHQpe2lmKCFwdCh0KSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQgdG8gc2FmZUV4dGVuZDogZXhwZWN0ZWQgYSBwbGFpbiBvYmplY3QiKTtyZXR1cm4gaWUoZSx3ZShlLl96b2QuZGVmLHtzaGFwZTpvaChlLHQpfSkpfWZ1bmN0aW9uIHJoKGUsdCl7aWYoIXQ/Ll96b2Q/LmRlZil0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQgdG8gbWVyZ2U6IGV4cGVjdGVkIGFuIG9iamVjdCBzY2hlbWEuIFRvIG1lcmdlIGEgcGxhaW4gc2hhcGUsIHVzZSBgLmV4dGVuZCgpYC4iKTtpZihlLl96b2QuZGVmLmNoZWNrcz8ubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiLm1lcmdlKCkgY2Fubm90IGJlIHVzZWQgb24gb2JqZWN0IHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50cy4gVXNlIC5zYWZlRXh0ZW5kKCkgaW5zdGVhZC4iKTtjb25zdCBuPXt9O1N0KG4sZSxSZWZsZWN0Lm93bktleXMoWGUoZSkpKSxTdChuLHQsUmVmbGVjdC5vd25LZXlzKFhlKHQpKSk7Y29uc3Qgbz13ZShlLl96b2QuZGVmLHtzaGFwZTpuLGdldCBjYXRjaGFsbCgpe3JldHVybiB0Ll96b2QuZGVmLmNhdGNoYWxsfSxjaGVja3M6dC5fem9kLmRlZi5jaGVja3M/P1tdfSk7cmV0dXJuIGllKGUsbyl9ZnVuY3Rpb24gd2EoZSx0LG4sbz0icGFydGlhbCIpe2NvbnN0IHI9dC5fem9kLmRlZi5jaGVja3M7aWYociYmci5sZW5ndGg+MCl0aHJvdyBuZXcgRXJyb3IoYC4ke299KCkgY2Fubm90IGJlIHVzZWQgb24gb2JqZWN0IHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50c2ApO2NvbnN0IGM9bj9uZXcgU2V0KERzKHQsbikpOnZvaWQgMCx1PXt9O3JldHVybiBTdCh1LHQsUmVmbGVjdC5vd25LZXlzKFhlKHQpKSxlJiYoKGQsaCk9PmMmJiFjLmhhcyhoKT9kOm5ldyBlKHt0eXBlOiJvcHRpb25hbCIsaW5uZXJUeXBlOmR9KSkpLGllKHQsd2UodC5fem9kLmRlZix7c2hhcGU6dSxjaGVja3M6W119KSl9ZnVuY3Rpb24gYWgoZSx0LG4pe2NvbnN0IG89bj9uZXcgU2V0KERzKHQsbikpOnZvaWQgMCxzPXt9O3JldHVybiBTdChzLHQsUmVmbGVjdC5vd25LZXlzKFhlKHQpKSwocixpKT0+byYmIW8uaGFzKGkpP3I6bmV3IGUoe3R5cGU6Im5vbm9wdGlvbmFsIixpbm5lclR5cGU6cn0pKSxpZSh0LHdlKHQuX3pvZC5kZWYse3NoYXBlOnN9KSl9ZnVuY3Rpb24gQ2UoZSx0PTApe2lmKGUuYWJvcnRlZD09PSEwKXJldHVybiEwO2ZvcihsZXQgbj10O248ZS5pc3N1ZXMubGVuZ3RoO24rKylpZihlLmlzc3Vlc1tuXT8uY29udGludWUhPT0hMClyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBpaChlLHQ9MCl7aWYoZS5hYm9ydGVkPT09ITApcmV0dXJuITA7Zm9yKGxldCBuPXQ7bjxlLmlzc3Vlcy5sZW5ndGg7bisrKWlmKGUuaXNzdWVzW25dPy5jb250aW51ZT09PSExKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIE1lKGUsdCl7cmV0dXJuIHQubWFwKG49Pnt2YXIgbztyZXR1cm4obz1uKS5wYXRoPz8oby5wYXRoPVtdKSxuLnBhdGgudW5zaGlmdChlKSxufSl9ZnVuY3Rpb24gRHQoZSl7cmV0dXJuIHR5cGVvZiBlPT0ic3RyaW5nIj9lOmU/Lm1lc3NhZ2V9ZnVuY3Rpb24gX2EoZSx0LG4pe3ZhciBvO2ZvcihsZXQgcz10O3M8ZS5sZW5ndGg7cysrKShvPWVbc10pLnNjaGVtYT8/KG8uc2NoZW1hPW4pfWZ1bmN0aW9uIExlKGUsdCxuKXt2YXIgbztjb25zdCBzPWUuaW5zdD8uX3pvZD8udHJhaXRzO3M/LmhhcygiJFpvZFR5cGUiKSYmKHMuaGFzKCIkWm9kQ2hlY2siKT8obz1lKS5zY2hlbWE/PyhvLnNjaGVtYT1lLmluc3QpOmUuc2NoZW1hPWUuaW5zdCk7Y29uc3Qgcj1lLnNjaGVtYSE9PWUuaW5zdD9lLnNjaGVtYT8uX3pvZC5kZWY/LmVycm9yOnZvaWQgMCxpPWUubWVzc2FnZT9lLm1lc3NhZ2U6RHQoZS5pbnN0Py5fem9kLmRlZj8uZXJyb3I/LihlKSk/P0R0KHI/LihlKSk/P0R0KHQ/LmVycm9yPy4oZSkpPz9EdChuLmN1c3RvbUVycm9yPy4oZSkpPz9EdChuLmxvY2FsZUVycm9yPy4oZSkpPz8iSW52YWxpZCBpbnB1dCIsYz17fTtmb3IoY29uc3QgdSBvZiBPYmplY3Qua2V5cyhlKSl1PT09Imluc3QifHx1PT09InNjaGVtYSJ8fHU9PT0iY29udGludWUifHx1PT09ImlucHV0Inx8dT09PSJfX3Byb3RvX18ifHwoY1t1XT1lW3VdKTtyZXR1cm4gYy5wYXRoPz8oYy5wYXRoPVtdKSxjLm1lc3NhZ2U9aSx0Py5yZXBvcnRJbnB1dCYmKGMuaW5wdXQ9ZS5pbnB1dCksY31mdW5jdGlvbiBMcyhlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIFNldD8ic2V0IjplIGluc3RhbmNlb2YgTWFwPyJtYXAiOmUgaW5zdGFuY2VvZiBGaWxlPyJmaWxlIjoidW5rbm93biJ9Y29uc3QgTWI9L1tcdUQ4MDAtXHVEQkZGXS87ZnVuY3Rpb24gQnMoZSl7Y29uc3QgdD1lLmxlbmd0aDtpZighTWIudGVzdChlKSlyZXR1cm4gdDtsZXQgbj10O2ZvcihsZXQgbz0wO288dC0xO28rKykoZS5jaGFyQ29kZUF0KG8pJjY0NTEyKT09PTU1Mjk2JiYoZS5jaGFyQ29kZUF0KG8rMSkmNjQ1MTIpPT09NTYzMjAmJihuLS0sbysrKTtyZXR1cm4gbn1mdW5jdGlvbiBIcyhlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8iYXJyYXkiOnR5cGVvZiBlPT0ic3RyaW5nIj8ic3RyaW5nIjoidW5rbm93biJ9ZnVuY3Rpb24gY2goZSl7Y29uc3QgdD10eXBlb2YgZTtzd2l0Y2godCl7Y2FzZSJudW1iZXIiOnJldHVybiBOdW1iZXIuaXNOYU4oZSk/Im5hbiI6Im51bWJlciI7Y2FzZSJvYmplY3QiOntpZihlPT09bnVsbClyZXR1cm4ibnVsbCI7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4iYXJyYXkiO2NvbnN0IG49ZTtpZihuJiZPYmplY3QuZ2V0UHJvdG90eXBlT2YobikhPT1PYmplY3QucHJvdG90eXBlJiYiY29uc3RydWN0b3IiaW4gbiYmbi5jb25zdHJ1Y3RvcilyZXR1cm4gbi5jb25zdHJ1Y3Rvci5uYW1lfX1yZXR1cm4gdH1mdW5jdGlvbiBKdCguLi5lKXtjb25zdFt0LG4sb109ZTtyZXR1cm4gdHlwZW9mIHQ9PSJzdHJpbmciP3ttZXNzYWdlOnQsY29kZToiY3VzdG9tIixpbnB1dDpuLGluc3Q6b306ey4uLnR9fWZ1bmN0aW9uIHFiKGUpe3JldHVybiBPYmplY3QuZW50cmllcyhlKS5maWx0ZXIoKFt0LG5dKT0+TnVtYmVyLmlzTmFOKE51bWJlci5wYXJzZUludCh0LDEwKSkpLm1hcCh0PT50WzFdKX1mdW5jdGlvbiBsaChlKXtjb25zdCB0PWF0b2IoZSksbj1uZXcgVWludDhBcnJheSh0Lmxlbmd0aCk7Zm9yKGxldCBvPTA7bzx0Lmxlbmd0aDtvKyspbltvXT10LmNoYXJDb2RlQXQobyk7cmV0dXJuIG59ZnVuY3Rpb24gdWgoZSl7bGV0IHQ9IiI7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspdCs9U3RyaW5nLmZyb21DaGFyQ29kZShlW25dKTtyZXR1cm4gYnRvYSh0KX1mdW5jdGlvbiBEYihlKXtjb25zdCB0PWUucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIiksbj0iPSIucmVwZWF0KCg0LXQubGVuZ3RoJTQpJTQpO3JldHVybiBsaCh0K24pfWZ1bmN0aW9uIExiKGUpe3JldHVybiB1aChlKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0vZywiIil9ZnVuY3Rpb24gQmIoZSl7Y29uc3QgdD1lLnJlcGxhY2UoL14weC8sIiIpO2lmKHQubGVuZ3RoJTIhPT0wKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBoZXggc3RyaW5nIGxlbmd0aCIpO2NvbnN0IG49bmV3IFVpbnQ4QXJyYXkodC5sZW5ndGgvMik7Zm9yKGxldCBvPTA7bzx0Lmxlbmd0aDtvKz0yKW5bby8yXT1OdW1iZXIucGFyc2VJbnQodC5zbGljZShvLG8rMiksMTYpO3JldHVybiBufWZ1bmN0aW9uIEhiKGUpe3JldHVybiBBcnJheS5mcm9tKGUpLm1hcCh0PT50LnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCIwIikpLmpvaW4oIiIpfWNsYXNzIEZie2NvbnN0cnVjdG9yKC4uLnQpe319ZnVuY3Rpb24gZGgoZSx0KXtmb3IoY29uc3QgbiBpbiB0KXtjb25zdCBvPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxuKTtvLmdldD9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHsuLi5vLGVudW1lcmFibGU6ITF9KTpVYihlLG4sby52YWx1ZSl9fWZ1bmN0aW9uIHR0KGUsdCxuLG89ITApe3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsZW51bWVyYWJsZTpvLHZhbHVlOm59KSxufWZ1bmN0aW9uIEZzKGUsdCxuKXtyZXR1cm4gdHQoZSx0LG4sITEpfWZ1bmN0aW9uIEtuKGUsdCl7Zm9yKGNvbnN0IG4gaW4gZSl7Y29uc3Qgbz1lW25dO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG4se2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwLGdldCgpe3JldHVybiB0dCh0aGlzLG4sbyh0aGlzKSl9LHNldChzKXt0dCh0aGlzLG4scyl9fSl9cmV0dXJuIHR9ZnVuY3Rpb24gVWIoZSx0LG4pe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2NvbmZpZ3VyYWJsZTohMCxnZXQoKXtyZXR1cm4gdGhpcz09bnVsbD9uOnR0KHRoaXMsdCxuLmJpbmQodGhpcykpfSxzZXQobyl7dHQodGhpcyx0LG8pfX0pfWZ1bmN0aW9uIFZiKGUsdCl7Y29uc3Qgbj1PYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk7cmV0dXJuIHQgaW4gbj92b2lkIDA6bn1sZXQgZGEscnQ9ITE7Y29uc3QgV2I9e2NvbmZpZ3VyYWJsZTohMCxnZXQoKXtydD0hMH19O2Z1bmN0aW9uIFUoZSx0LG4pe2NvbnN0IG89T2JqZWN0LmdldFByb3RvdHlwZU9mKGUuX3pvZCk7aWYodCBpbiBvJiZkYSE9PWUuX3pvZCl7ZGE9dm9pZCAwO3JldHVybn1kYT1lLl96b2QsT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sdCx7Y29uZmlndXJhYmxlOiEwLGdldCgpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLHQsV2IpO2NvbnN0IHM9cnQ7cnQ9ITE7dHJ5e2NvbnN0IHI9bih0aGlzKTtyZXR1cm4gcnQ/ZGVsZXRlIHRoaXNbdF06T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnJ9KSxydD1ydHx8cyxyfWNhdGNoKHIpe3Rocm93IGRlbGV0ZSB0aGlzW3RdLHJ0PXJ0fHxzLHJ9fSxzZXQocyl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnN9KX19KX1mdW5jdGlvbiBoaChlLHQsbixvKXtjb25zdCBzPVZiKGUsdCk7cyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KHMsdCx7Y29uZmlndXJhYmxlOiEwLGdldCgpe2NvbnN0IHI9e2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCxlbnVtZXJhYmxlOm8sdmFsdWU6dm9pZCAwfTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCxyKSxyLnZhbHVlPW4odGhpcyksT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCxyKSxyLnZhbHVlfSxzZXQocil7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLGVudW1lcmFibGU6byx2YWx1ZTpyfSl9fSl9Y29uc3QgcGg9In5jb25zdGFudENhdGNoIjtmdW5jdGlvbiBlaShlKXtjb25zdCB0PSgpPT5lO3JldHVybiB0W3BoXT0hMCx0fWNvbnN0IHRpPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCxCSUdJTlRfRk9STUFUX1JBTkdFUzpYZCxDT05TVEFOVF9DQVRDSDpwaCxDbGFzczpGYixOVU1CRVJfRk9STUFUX1JBTkdFUzpRZCxhYm9ydGVkOkNlLGFsbG93c0V2YWw6R2QsYXNzZXJ0OkFiLGFzc2VydEVxdWFsOl9iLGFzc2VydElzOmpiLGFzc2VydE5ldmVyOlRiLGFzc2VydE5vdEVxdWFsOlNiLGFzc2lnblByb3A6RXQsYXR0YWNoU2NoZW1hOl9hLGJhc2U2NFRvVWludDhBcnJheTpsaCxiYXNlNjR1cmxUb1VpbnQ4QXJyYXk6RGIsY2FjaGVkOlduLGNhcHR1cmVTdGFja1RyYWNlOlFhLGNsZWFuRW51bTpxYixjbGVhblJlZ2V4OmR0LGNsb25lOmllLGNsb25lRGVmOlBiLGNvZGVQb2ludExlbmd0aDpCcyxjb25zdGFudENhdGNoOmVpLGNyZWF0ZVRyYW5zcGFyZW50UHJveHk6WmIsZGVmaW5lTGF6eTpGZCxkZWZpbmVMYXp5SW50ZXJuYWw6VSxkZXJpdmVkOktuLGVzYzpXZCxlc2NhcGVSZWdleDpldCxleHBsaWNpdGx5QWJvcnRlZDppaCxleHRlbmQ6bmgsZmluYWxpemVJc3N1ZTpMZSxmbG9hdFNhZmVSZW1haW5kZXI6SGQsZ2V0RWxlbWVudEF0UGF0aDp4YixnZXRFbnVtVmFsdWVzOnlhLGdldExlbmd0aGFibGVPcmlnaW46SHMsZ2V0UGFyc2VkVHlwZTpPYixnZXRTaXphYmxlT3JpZ2luOkxzLGhleFRvVWludDhBcnJheTpCYixoaWRlOkZzLGluc3RhbGxMYXp5UHJvcDpoaCxpc09iamVjdDpHdCxpc1BsYWluT2JqZWN0OnB0LGlzc3VlOkp0LGpvaW5WYWx1ZXM6JGEsanNvblN0cmluZ2lmeVJlcGxhY2VyOnZzLG1lbWJlcnM6ZGgsbWVyZ2U6cmgsbWVyZ2VEZWZzOndlLG5vcm1hbGl6ZVBhcmFtczp3LG51bGxpc2g6WWEsbnVtS2V5czpFYixvYmplY3RDbG9uZTpDYixvbWl0OnRoLG9wdGlvbmFsS2V5czpZZCxvd246dHQscGFyc2VkVHlwZTpjaCxwYXJ0aWFsOndhLHBpY2s6ZWgscHJlZml4SXNzdWVzOk1lLHByaW1pdGl2ZVR5cGVzOkpkLHByb21pc2VBbGxPYmplY3Q6SWIscHJvcGVydHlLZXlUeXBlczprcyxyYW5kb21TdHJpbmc6UmIscmF3U2hhcGU6TXMscmVxdWlyZWQ6YWgsc2FmZUV4dGVuZDpzaCxzaGFsbG93Q2xvbmU6cXMsc2x1Z2lmeTpLZCxzdHJpbmdpZnlQcmltaXRpdmU6WGEsdG9ab2Q6WnMsdWludDhBcnJheVRvQmFzZTY0OnVoLHVpbnQ4QXJyYXlUb0Jhc2U2NHVybDpMYix1aW50OEFycmF5VG9IZXg6SGIsdW53cmFwTWVzc2FnZTpEdH0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKTt2YXIgQnU7Y29uc3Qgbmk9T2JqZWN0LmZyZWV6ZSh7c3RhdHVzOiJhYm9ydGVkIn0pLGhhPXt2YWx1ZTp2b2lkIDAsZW51bWVyYWJsZTohMX07bGV0IEh1PSJjYXB0dXJlU3RhY2tUcmFjZSJpbiBFcnJvcj9FcnJvcjpudWxsO2Z1bmN0aW9uIEtiKGUpe2NvbnN0IHQ9SHU7aWYodCl7Y29uc3Qgbj10LnN0YWNrVHJhY2VMaW1pdDtpZih0eXBlb2Ygbj09Im51bWJlciIpe3RyeXt0LnN0YWNrVHJhY2VMaW1pdD0wfWNhdGNoe3JldHVybiBIdT1udWxsLG5ldyBlfXRyeXtyZXR1cm4gbmV3IGV9ZmluYWxseXt0LnN0YWNrVHJhY2VMaW1pdD1ufX19cmV0dXJuIG5ldyBlfWZ1bmN0aW9uIGYoZSx0LG4sbyl7Y29uc3Qgcz17fTtmdW5jdGlvbiByKG0pe3RoaXMuZGVmPW0sdGhpcy5jb25zdHI9cCx0aGlzLnRyYWl0cz1uZXcgU2V0fXIucHJvdG90eXBlPXM7Y29uc3QgaT1uLGM9aSYmbmV3IFdlYWtTZXQ7ZnVuY3Rpb24gdShtLHkpe2lmKG0uX3pvZCl7aWYobS5fem9kLnRyYWl0cy5oYXMoZSkpcmV0dXJufWVsc2V7aGEudmFsdWU9bmV3IHIoeSk7dHJ5e09iamVjdC5kZWZpbmVQcm9wZXJ0eShtLCJfem9kIixoYSl9ZmluYWxseXtoYS52YWx1ZT12b2lkIDB9fWlmKG0uX3pvZC50cmFpdHMuYWRkKGUpLHQobSx5KSxjKXtjb25zdCBfPU9iamVjdC5nZXRQcm90b3R5cGVPZihtKSxDPW0uX3pvZC5jb25zdHIucHJvdG90eXBlO2xldCBUPV87Zm9yKDtUJiZUIT09QzspVD1PYmplY3QuZ2V0UHJvdG90eXBlT2YoVCk7Y29uc3QgQT1UPz9fO2MuaGFzKEEpfHwoYy5hZGQoQSksZGgoQSxpKSl9Y29uc3QgJD1wLnByb3RvdHlwZTtmb3IoY29uc3QgXyBpbiAkKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCgkLF8pJiYoXyBpbiBtfHwobVtfXT0kW19dLmJpbmQobSkpKX1jb25zdCBkPW8/LlBhcmVudD8/T2JqZWN0O2NsYXNzIGggZXh0ZW5kcyBke31PYmplY3QuZGVmaW5lUHJvcGVydHkoaCwibmFtZSIse3ZhbHVlOmV9KTtmdW5jdGlvbiBwKG0pe2NvbnN0IHk9bz8uUGFyZW50P0tiKGgpOnRoaXM7dSh5LG0pO2NvbnN0ICQ9eS5fem9kLmRlZmVycmVkO2lmKCQpe2Zvcihjb25zdCBDIG9mICQpQygpO3kuX3pvZC5kZWZlcnJlZD12b2lkIDB9Y29uc3QgXz1nbG9iYWxUaGlzLl9fem9kX2dsb2JhbENvbmZpZz8ucG9zdFByb2Nlc3NvcjtyZXR1cm4gXyYmXyh5KSx5fXJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkocCwiaW5pdCIse3ZhbHVlOnV9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkocCxTeW1ib2wuaGFzSW5zdGFuY2Use3ZhbHVlOm09Pm8/LlBhcmVudCYmbSBpbnN0YW5jZW9mIG8uUGFyZW50PyEwOm0/Ll96b2Q/LnRyYWl0cz8uaGFzKGUpfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHAsIm5hbWUiLHt2YWx1ZTplfSkscH1jb25zdCBvaT1TeW1ib2woInpvZF9icmFuZCIpO2NsYXNzIGh0IGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoKXtzdXBlcigiRW5jb3VudGVyZWQgUHJvbWlzZSBkdXJpbmcgc3luY2hyb25vdXMgcGFyc2UuIFVzZSAucGFyc2VBc3luYygpIGluc3RlYWQuIil9fWNsYXNzIFVzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IodCl7c3VwZXIoYEVuY291bnRlcmVkIHVuaWRpcmVjdGlvbmFsIHRyYW5zZm9ybSBkdXJpbmcgZW5jb2RlOiAke3R9YCksdGhpcy5uYW1lPSJab2RFbmNvZGVFcnJvciJ9fShCdT1nbG9iYWxUaGlzKS5fX3pvZF9nbG9iYWxDb25maWc/PyhCdS5fX3pvZF9nbG9iYWxDb25maWc9e30pO2NvbnN0IFRlPWdsb2JhbFRoaXMuX196b2RfZ2xvYmFsQ29uZmlnO2Z1bmN0aW9uIHBlKGUpe3JldHVybiBlJiZPYmplY3QuYXNzaWduKFRlLGUpLFRlfWZ1bmN0aW9uIEdiKCl7Y29uc3QgZT10aGlzLl96b2Q7cmV0dXJuIGUubWVzc2FnZT8/KGUubWVzc2FnZT1KU09OLnN0cmluZ2lmeShlLmRlZix2cywyKSksZS5tZXNzYWdlfWZ1bmN0aW9uIEpiKGUpe3RoaXMuX3pvZC5tZXNzYWdlPWV9Y29uc3QgWWI9e2dldDpHYixzZXQ6SmIsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9LHBhPXt2YWx1ZTp2b2lkIDAsZW51bWVyYWJsZTohMX0sRnU9bmV3IFdlYWtTZXQoW09iamVjdC5wcm90b3R5cGUsRXJyb3IucHJvdG90eXBlXSksbWg9KGUsdCk9PntlLm5hbWU9IiRab2RFcnJvciIscGEudmFsdWU9dCxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiaXNzdWVzIixwYSkscGEudmFsdWU9dm9pZCAwLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJtZXNzYWdlIixZYik7Y29uc3Qgbj1PYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk7RnUuaGFzKG4pfHwoRnUuYWRkKG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJ0b1N0cmluZyIse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiExLGdldCgpe2NvbnN0IG89KCk9PnRoaXMubWVzc2FnZTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsInRvU3RyaW5nIix7dmFsdWU6byxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KSxvfSxzZXQobyl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsInRvU3RyaW5nIix7dmFsdWU6byxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KX19KSl9LGZoPWYoIiRab2RFcnJvciIsbWgpLEVlPWYoIiRab2RFcnJvciIsbWgsdm9pZCAwLHtQYXJlbnQ6RXJyb3J9KTtmdW5jdGlvbiBRYihlLHQsbil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfHwodD09PSJfX3Byb3RvX18iP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4oKSx3cml0YWJsZTohMCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pOmVbdF09bigpKSxlW3RdfWZ1bmN0aW9uIFZzKGUsdD1uPT5uLm1lc3NhZ2Upe2NvbnN0IG49e30sbz1bXTtmb3IoY29uc3QgcyBvZiBlLmlzc3VlcylzLnBhdGgubGVuZ3RoPjA/UWIobixzLnBhdGhbMF0sKCk9PltdKS5wdXNoKHQocykpOm8ucHVzaCh0KHMpKTtyZXR1cm57Zm9ybUVycm9yczpvLGZpZWxkRXJyb3JzOm59fWZ1bmN0aW9uIFdzKGUsdD1uPT5uLm1lc3NhZ2Upe2NvbnN0IG49e19lcnJvcnM6W119LG89KHMscj1bXSk9Pntmb3IoY29uc3QgaSBvZiBzLmlzc3VlcylpZihpLmNvZGU9PT0iaW52YWxpZF91bmlvbiImJmkuZXJyb3JzLmxlbmd0aClpLmVycm9ycy5tYXAoYz0+byh7aXNzdWVzOmN9LFsuLi5yLC4uLmkucGF0aF0pKTtlbHNlIGlmKGkuY29kZT09PSJpbnZhbGlkX2tleSIpbyh7aXNzdWVzOmkuaXNzdWVzfSxbLi4uciwuLi5pLnBhdGhdKTtlbHNlIGlmKGkuY29kZT09PSJpbnZhbGlkX2VsZW1lbnQiKW8oe2lzc3VlczppLmlzc3Vlc30sWy4uLnIsLi4uaS5wYXRoXSk7ZWxzZXtjb25zdCBjPVsuLi5yLC4uLmkucGF0aF07aWYoYy5sZW5ndGg9PT0wKW4uX2Vycm9ycy5wdXNoKHQoaSkpO2Vsc2V7bGV0IHU9bixkPTA7Zm9yKDtkPGMubGVuZ3RoOyl7Y29uc3QgaD1jW2RdLHA9ZD09PWMubGVuZ3RoLTE7aWYoaD09PSJfZXJyb3JzIil7cCYmdS5fZXJyb3JzLnB1c2godChpKSksZCsrO2NvbnRpbnVlfU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh1LGgpfHxPYmplY3QuZGVmaW5lUHJvcGVydHkodSxoLHt2YWx1ZTp7X2Vycm9yczpbXX0sZW51bWVyYWJsZTohMCx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9KTtjb25zdCBtPXVbaF07cCYmbS5fZXJyb3JzLnB1c2godChpKSksdT1tLGQrK319fX07cmV0dXJuIG8oZSksbn1mdW5jdGlvbiBzaShlLHQ9bj0+bi5tZXNzYWdlKXtjb25zdCBuPXtlcnJvcnM6W119LG89KHMscj1bXSk9Pnt2YXIgaTtmb3IoY29uc3QgYyBvZiBzLmlzc3VlcylpZihjLmNvZGU9PT0iaW52YWxpZF91bmlvbiImJmMuZXJyb3JzLmxlbmd0aCljLmVycm9ycy5tYXAodT0+byh7aXNzdWVzOnV9LFsuLi5yLC4uLmMucGF0aF0pKTtlbHNlIGlmKGMuY29kZT09PSJpbnZhbGlkX2tleSIpbyh7aXNzdWVzOmMuaXNzdWVzfSxbLi4uciwuLi5jLnBhdGhdKTtlbHNlIGlmKGMuY29kZT09PSJpbnZhbGlkX2VsZW1lbnQiKW8oe2lzc3VlczpjLmlzc3Vlc30sWy4uLnIsLi4uYy5wYXRoXSk7ZWxzZXtjb25zdCB1PVsuLi5yLC4uLmMucGF0aF07aWYodS5sZW5ndGg9PT0wKXtuLmVycm9ycy5wdXNoKHQoYykpO2NvbnRpbnVlfWxldCBkPW4saD0wO2Zvcig7aDx1Lmxlbmd0aDspe2NvbnN0IHA9dVtoXSxtPWg9PT11Lmxlbmd0aC0xO3R5cGVvZiBwPT0ic3RyaW5nIj8oZC5wcm9wZXJ0aWVzPz8oZC5wcm9wZXJ0aWVzPXt9KSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZC5wcm9wZXJ0aWVzLHApfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoZC5wcm9wZXJ0aWVzLHAse3ZhbHVlOntlcnJvcnM6W119LGVudW1lcmFibGU6ITAsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSksZD1kLnByb3BlcnRpZXNbcF0pOihkLml0ZW1zPz8oZC5pdGVtcz1bXSksKGk9ZC5pdGVtcylbcF0/PyhpW3BdPXtlcnJvcnM6W119KSxkPWQuaXRlbXNbcF0pLG0mJmQuZXJyb3JzLnB1c2godChjKSksaCsrfX19O3JldHVybiBvKGUpLG59ZnVuY3Rpb24gZ2goZSl7Y29uc3QgdD1bXSxuPWUubWFwKG89PnR5cGVvZiBvPT0ib2JqZWN0Ij9vLmtleTpvKTtmb3IoY29uc3QgbyBvZiBuKXR5cGVvZiBvPT0ibnVtYmVyIj90LnB1c2goYFske299XWApOnR5cGVvZiBvPT0ic3ltYm9sIj90LnB1c2goYFske0pTT04uc3RyaW5naWZ5KFN0cmluZyhvKSl9XWApOi9bXlx3JF0vLnRlc3Qobyk/dC5wdXNoKGBbJHtKU09OLnN0cmluZ2lmeShvKX1dYCk6KHQubGVuZ3RoJiZ0LnB1c2goIi4iKSx0LnB1c2gobykpO3JldHVybiB0LmpvaW4oIiIpfWZ1bmN0aW9uIHJpKGUpe2NvbnN0IHQ9W10sbj1bLi4uZS5pc3N1ZXNdLnNvcnQoKG8scyk9PihvLnBhdGg/P1tdKS5sZW5ndGgtKHMucGF0aD8/W10pLmxlbmd0aCk7Zm9yKGNvbnN0IG8gb2Ygbil0LnB1c2goYOKcliAke28ubWVzc2FnZX1gKSxvLnBhdGg/Lmxlbmd0aCYmdC5wdXNoKGAgIOKGkiBhdCAke2doKG8ucGF0aCl9YCk7cmV0dXJuIHQuam9pbihgCmApfWZ1bmN0aW9uIEtzKGUsdCl7cmV0dXJue2NhbGxlZTp0Py5jYWxsZWU/P2UsRXJyOnQ/LkVycn19Y29uc3QgR249ZT0+e2NvbnN0IHQ9KG4sbyxzLHIpPT57Y29uc3QgaT1zP3suLi5zLGFzeW5jOiExfTp7YXN5bmM6ITF9LGM9bi5fem9kLnJ1bih7dmFsdWU6byxpc3N1ZXM6W119LGkpO2lmKGMgaW5zdGFuY2VvZiBQcm9taXNlKXRocm93IG5ldyBodDtpZihjLmlzc3Vlcy5sZW5ndGgpe2NvbnN0IHU9bmV3KHI/LkVycj8/ZSkoYy5pc3N1ZXMubWFwKGQ9PkxlKGQsaSxwZSgpKSkpO3Rocm93IFFhKHUscj8uY2FsbGVlPz90KSx1fXJldHVybiBjLnZhbHVlfTtyZXR1cm4gdH0sU2E9R24oRWUpLEpuPWU9Pntjb25zdCB0PWFzeW5jKG4sbyxzLHIpPT57Y29uc3QgaT1zP3suLi5zLGFzeW5jOiEwfTp7YXN5bmM6ITB9O2xldCBjPW4uX3pvZC5ydW4oe3ZhbHVlOm8saXNzdWVzOltdfSxpKTtpZihjIGluc3RhbmNlb2YgUHJvbWlzZSYmKGM9YXdhaXQgYyksYy5pc3N1ZXMubGVuZ3RoKXtjb25zdCB1PW5ldyhyPy5FcnI/P2UpKGMuaXNzdWVzLm1hcChkPT5MZShkLGkscGUoKSkpKTt0aHJvdyBRYSh1LHI/LmNhbGxlZT8/dCksdX1yZXR1cm4gYy52YWx1ZX07cmV0dXJuIHR9LGphPUpuKEVlKSxZbj1lPT4odCxuLG8pPT57Y29uc3Qgcz1vP3suLi5vLGFzeW5jOiExfTp7YXN5bmM6ITF9LHI9dC5fem9kLnJ1bih7dmFsdWU6bixpc3N1ZXM6W119LHMpO2lmKHIgaW5zdGFuY2VvZiBQcm9taXNlKXRocm93IG5ldyBodDtyZXR1cm4gci5pc3N1ZXMubGVuZ3RoP3ZoKGUsci5pc3N1ZXMscyk6e3N1Y2Nlc3M6ITAsZGF0YTpyLnZhbHVlfX0sYmg9WW4oRWUpO2Z1bmN0aW9uIHZoKGUsdCxuKXtsZXQgbztyZXR1cm57c3VjY2VzczohMSxnZXQgZXJyb3IoKXtyZXR1cm4gb3x8KG89bmV3IGUodC5tYXAocz0+TGUocyxuLHBlKCkpKSksdD12b2lkIDAsbj12b2lkIDApLG99LHNldCBlcnJvcihzKXtvPXMsdD12b2lkIDAsbj12b2lkIDB9fX1jb25zdCBRbj1lPT5hc3luYyh0LG4sbyk9Pntjb25zdCBzPW8/ey4uLm8sYXN5bmM6ITB9Onthc3luYzohMH07bGV0IHI9dC5fem9kLnJ1bih7dmFsdWU6bixpc3N1ZXM6W119LHMpO3JldHVybiByIGluc3RhbmNlb2YgUHJvbWlzZSYmKHI9YXdhaXQgciksci5pc3N1ZXMubGVuZ3RoP3ZoKGUsci5pc3N1ZXMscyk6e3N1Y2Nlc3M6ITAsZGF0YTpyLnZhbHVlfX0sWGI9UW4oRWUpLGV2PVN5bWJvbC5mb3IoInpvZC5jb21waWxlLmludmFsaWQiKSx0dj1TeW1ib2wuZm9yKCJ6b2QuY29tcGlsZS5mYWxsYmFjayIpLEdzPSgoZSx0LG4pPT57Y29uc3Qgbz1lLl96b2QuYmFnLnZhbGlkYXRvcjtpZihvIT09dm9pZCAwKXtpZihvKHQpIT09ZXYpcmV0dXJuITA7aWYoby5kZWZpbml0ZT09PSEwJiZuPT09dm9pZCAwKXJldHVybiExfXJldHVybiBudihlLHQsbil9KTtmdW5jdGlvbiBudihlLHQsbil7Y29uc3Qgbz1uP3suLi5uLGFzeW5jOiExLGFib3J0RWFybHk6ITB9Onthc3luYzohMSxhYm9ydEVhcmx5OiEwfSxzPWUuX3pvZC5iYWcuZmFsbGJhY2tSdW47bGV0IHI7aWYocz8ob1t0dl09ITAscj1zKHt2YWx1ZTp0LGlzc3VlczpbXX0sbykpOnI9ZS5fem9kLnJ1bih7dmFsdWU6dCxpc3N1ZXM6W119LG8pLHIgaW5zdGFuY2VvZiBQcm9taXNlKXRocm93IG5ldyBodDtyZXR1cm4gci5pc3N1ZXMubGVuZ3RoPT09MH1jb25zdCBKcz1hc3luYyhlLHQsbik9Pntjb25zdCBvPW4/ey4uLm4sYXN5bmM6ITAsYWJvcnRFYXJseTohMH06e2FzeW5jOiEwLGFib3J0RWFybHk6ITB9O2xldCBzPWUuX3pvZC5ydW4oe3ZhbHVlOnQsaXNzdWVzOltdfSxvKTtyZXR1cm4gcyBpbnN0YW5jZW9mIFByb21pc2UmJihzPWF3YWl0IHMpLHMuaXNzdWVzLmxlbmd0aD09PTB9LGFpPWU9Pntjb25zdCB0PUduKGUpLG49KG8scyxyLGkpPT57Y29uc3QgYz1yP3suLi5yLGRpcmVjdGlvbjoiYmFja3dhcmQifTp7ZGlyZWN0aW9uOiJiYWNrd2FyZCJ9O3JldHVybiB0KG8scyxjLEtzKG4saSkpfTtyZXR1cm4gbn0sb3Y9YWkoRWUpLGlpPWU9Pntjb25zdCB0PUduKGUpLG49KG8scyxyLGkpPT50KG8scyxyLEtzKG4saSkpO3JldHVybiBufSxzdj1paShFZSksY2k9ZT0+e2NvbnN0IHQ9Sm4oZSksbj1hc3luYyhvLHMscixpKT0+e2NvbnN0IGM9cj97Li4ucixkaXJlY3Rpb246ImJhY2t3YXJkIn06e2RpcmVjdGlvbjoiYmFja3dhcmQifTtyZXR1cm4gYXdhaXQgdChvLHMsYyxLcyhuLGkpKX07cmV0dXJuIG59LHJ2PWNpKEVlKSxsaT1lPT57Y29uc3QgdD1KbihlKSxuPWFzeW5jKG8scyxyLGkpPT5hd2FpdCB0KG8scyxyLEtzKG4saSkpO3JldHVybiBufSxhdj1saShFZSksdWk9ZT0+KHQsbixvKT0+e2NvbnN0IHM9bz97Li4ubyxkaXJlY3Rpb246ImJhY2t3YXJkIn06e2RpcmVjdGlvbjoiYmFja3dhcmQifTtyZXR1cm4gWW4oZSkodCxuLHMpfSxpdj11aShFZSksZGk9ZT0+KHQsbixvKT0+WW4oZSkodCxuLG8pLGN2PWRpKEVlKSxoaT1lPT5hc3luYyh0LG4sbyk9Pntjb25zdCBzPW8/ey4uLm8sZGlyZWN0aW9uOiJiYWNrd2FyZCJ9OntkaXJlY3Rpb246ImJhY2t3YXJkIn07cmV0dXJuIFFuKGUpKHQsbixzKX0sbHY9aGkoRWUpLHBpPWU9PmFzeW5jKHQsbixvKT0+UW4oZSkodCxuLG8pLHV2PXBpKEVlKSxraD0vXltjQ11bMC05YS16XXs2LH0kLyx5aD0vXlswLTlhLXpdKyQvLCRoPS9eWzAtN11bMC05QS1ISktNTlAtVFYtWmEtaGprbW5wLXR2LXpdezI1fSQvLHdoPS9eWzAtOWEtdkEtVl17MjB9JC8sX2g9L15bQS1aYS16MC05XXsyN30kLyxTaD0vXlthLXpBLVowLTlfLV17MjF9JC87ZnVuY3Rpb24gamgoZSl7cmV0dXJuIG5ldyBSZWdFeHAoYF5bYS16QS1aMC05Xy1deyR7ZX19JGApfWNvbnN0IFRoPS9eUCg/OihcZCtXKXwoPyEuKlcpKD89XGR8VFxkKShcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrKFsuLF1cZCspP1MpPyk/KSQvLGR2PS9eWy0rXT9QKD8hJCkoPzooPzpbLStdP1xkK1kpfCg/OlstK10/XGQrWy4sXVxkK1kkKSk/KD86KD86Wy0rXT9cZCtNKXwoPzpbLStdP1xkK1suLF1cZCtNJCkpPyg/Oig/OlstK10/XGQrVyl8KD86Wy0rXT9cZCtbLixdXGQrVyQpKT8oPzooPzpbLStdP1xkK0QpfCg/OlstK10/XGQrWy4sXVxkK0QkKSk/KD86VCg/PVtcZCstXSkoPzooPzpbLStdP1xkK0gpfCg/OlstK10/XGQrWy4sXVxkK0gkKSk/KD86KD86Wy0rXT9cZCtNKXwoPzpbLStdP1xkK1suLF1cZCtNJCkpPyg/OlstK10/XGQrKD86Wy4sXVxkKyk/Uyk/KT8/JC8sQWg9L14oWzAtOWEtZkEtRl17OH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17MTJ9KSQvLFl0PWU9PmU/bmV3IFJlZ0V4cChgXihbMC05YS1mQS1GXXs4fS1bMC05YS1mQS1GXXs0fS0ke2V9WzAtOWEtZkEtRl17M30tWzg5YWJBQl1bMC05YS1mQS1GXXszfS1bMC05YS1mQS1GXXsxMn0pJGApOi9eKFswLTlhLWZBLUZdezh9LVswLTlhLWZBLUZdezR9LVsxLThdWzAtOWEtZkEtRl17M30tWzg5YWJBQl1bMC05YS1mQS1GXXszfS1bMC05YS1mQS1GXXsxMn18MDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwfGZmZmZmZmZmLWZmZmYtZmZmZi1mZmZmLWZmZmZmZmZmZmZmZikkLyxodj1ZdCg0KSxwdj1ZdCg2KSxtdj1ZdCg3KSx6aD0vXig/OltBLVphLXowLTlfJytcLV0rXC4pKltBLVphLXowLTlfJytcLV0qW0EtWmEtejAtOV8rLV1AKD86W0EtWmEtejAtOV1bQS1aYS16MC05XC1dKlwuKStbQS1aYS16XXsyLH0kLyxmdj0vXlthLXpBLVowLTkuISMkJSYnKisvPT9eX2B7fH1+LV0rQFthLXpBLVowLTldKD86W2EtekEtWjAtOS1dezAsNjF9W2EtekEtWjAtOV0pPyg/OlwuW2EtekEtWjAtOV0oPzpbYS16QS1aMC05LV17MCw2MX1bYS16QS1aMC05XSk/KSokLyxndj0vXigoW148PigpXFtcXVxcLiw7OlxzQCJdKyhcLltePD4oKVxbXF1cXC4sOzpcc0AiXSspKil8KCIuKyIpKUAoKFxbWzAtOV17MSwzfVwuWzAtOV17MSwzfVwuWzAtOV17MSwzfVwuWzAtOV17MSwzfV0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLyxDaD0vXlteXHNAIl17MSw2NH1AW15cc0BdezEsMjU1fSQvdSxidj1DaCx2dj0vXlthLXpBLVowLTkuISMkJSYnKisvPT9eX2B7fH1+LV0rQFthLXpBLVowLTldKD86W2EtekEtWjAtOS1dezAsNjF9W2EtekEtWjAtOV0pPyg/OlwuW2EtekEtWjAtOV0oPzpbYS16QS1aMC05LV17MCw2MX1bYS16QS1aMC05XSk/KSokLyxrdj0iXig/PVtcXHNcXFNdKltcXHB7RXh0ZW5kZWRfUGljdG9ncmFwaGljfVxccHtSZWdpb25hbF9JbmRpY2F0b3J9XFx1MjBFM10pW1xccHtFeHRlbmRlZF9QaWN0b2dyYXBoaWN9XFxwe0Vtb2ppX0NvbXBvbmVudH1dKyQiO2Z1bmN0aW9uIE5oKCl7cmV0dXJuIG5ldyBSZWdFeHAoa3YsInUiKX1jb25zdCBQaD0vXig/Oig/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSlcLil7M30oPzoyNVswLTVdfDJbMC00XVswLTldfDFbMC05XVswLTldfFsxLTldWzAtOV18WzAtOV0pJC8seGg9L14oKFswLTlhLWZBLUZdezEsNH06KXs3fVswLTlhLWZBLUZdezEsNH18KFswLTlhLWZBLUZdezEsNH06KXsxLDd9OnwoWzAtOWEtZkEtRl17MSw0fTopezEsNn06WzAtOWEtZkEtRl17MSw0fXwoWzAtOWEtZkEtRl17MSw0fTopezEsNX0oOlswLTlhLWZBLUZdezEsNH0pezEsMn18KFswLTlhLWZBLUZdezEsNH06KXsxLDR9KDpbMC05YS1mQS1GXXsxLDR9KXsxLDN9fChbMC05YS1mQS1GXXsxLDR9Oil7MSwzfSg6WzAtOWEtZkEtRl17MSw0fSl7MSw0fXwoWzAtOWEtZkEtRl17MSw0fTopezEsMn0oOlswLTlhLWZBLUZdezEsNH0pezEsNX18WzAtOWEtZkEtRl17MSw0fTooKDpbMC05YS1mQS1GXXsxLDR9KXsxLDZ9KXw6KCg6WzAtOWEtZkEtRl17MSw0fSl7MSw3fXw6KSkkLyxJaD1lPT57Y29uc3QgdD1ldChlPz8iOiIpO3JldHVybiBuZXcgUmVnRXhwKGBeKD86WzAtOUEtRl17Mn0ke3R9KXs1fVswLTlBLUZdezJ9JHxeKD86WzAtOWEtZl17Mn0ke3R9KXs1fVswLTlhLWZdezJ9JGApfSxSaD0vXigoMjVbMC01XXwyWzAtNF1bMC05XXwxWzAtOV1bMC05XXxbMS05XVswLTldfFswLTldKVwuKXszfSgyNVswLTVdfDJbMC00XVswLTldfDFbMC05XVswLTldfFsxLTldWzAtOV18WzAtOV0pXC8oWzAtOV18WzEtMl1bMC05XXwzWzAtMl0pJC8sRWg9L14oKFswLTlhLWZBLUZdezEsNH06KXs3fVswLTlhLWZBLUZdezEsNH18KFswLTlhLWZBLUZdezEsNH06KXsxLDd9OnwoWzAtOWEtZkEtRl17MSw0fTopezEsNn06WzAtOWEtZkEtRl17MSw0fXwoWzAtOWEtZkEtRl17MSw0fTopezEsNX0oOlswLTlhLWZBLUZdezEsNH0pezEsMn18KFswLTlhLWZBLUZdezEsNH06KXsxLDR9KDpbMC05YS1mQS1GXXsxLDR9KXsxLDN9fChbMC05YS1mQS1GXXsxLDR9Oil7MSwzfSg6WzAtOWEtZkEtRl17MSw0fSl7MSw0fXwoWzAtOWEtZkEtRl17MSw0fTopezEsMn0oOlswLTlhLWZBLUZdezEsNH0pezEsNX18WzAtOWEtZkEtRl17MSw0fTooKDpbMC05YS1mQS1GXXsxLDR9KXsxLDZ9KXw6KCg6WzAtOWEtZkEtRl17MSw0fSl7MSw3fXw6KSlcLygxMlswLThdfDFbMDFdWzAtOV18WzEtOV0/WzAtOV0pJC8seXY9L14kfF4oPzpbMC05YS16QS1aKy9dezR9KSooPzooPzpbMC05YS16QS1aKy9dezJ9PT0pfCg/OlswLTlhLXpBLVorL117M309KSk/JC8sJHY9L14oPzpbQS1aYS16MC05Xy1dezR9KSooPzpbQS1aYS16MC05Xy1dezIsM30pPyQvLE9oPS9eKD89LnsxLDI1M31cLj8kKVthLXpBLVowLTldKD86W2EtekEtWjAtOS1dezAsNjF9W2EtekEtWjAtOV0pPyg/OlwuW2EtekEtWjAtOV0oPzpbLTAtOWEtekEtWl17MCw2MX1bMC05YS16QS1aXSk/KSpcLj8kLyxaaD0vXig/PS57MSwyNTN9JCkoW2EtekEtWjAtOV0oPzpbYS16QS1aMC05LV17MCw2MX1bYS16QS1aMC05XSk/XC4pK1thLXpBLVpdezIsNjN9JC8sbWk9L15odHRwcz8kLyxNaD0vXlwrWzEtOV1cZHs2LDE0fSQvLGZpPS9eXGQoPzpbIC1dP1xkKXsxMSwxOH0kLyxxaD0vXig/OkFFRHxBRk58QUxMfEFNRHxBT0F8QVJTfEFVRHxBV0d8QVpOfEJBTXxCQkR8QkRUfEJIRHxCSUZ8Qk1EfEJORHxCT0J8Qk9WfEJSTHxCU0R8QlROfEJXUHxCWU58QlpEfENBRHxDREZ8Q0hFfENIRnxDSFd8Q0xGfENMUHxDTll8Q09QfENPVXxDUkN8Q1VQfENWRXxDWkt8REpGfERLS3xET1B8RFpEfEVHUHxFUk58RVRCfEVVUnxGSkR8RktQfEdCUHxHRUx8R0hTfEdJUHxHTUR8R05GfEdUUXxHWUR8SEtEfEhOTHxIVEd8SFVGfElEUnxJTFN8SU5SfElRRHxJUlJ8SVNLfEpNRHxKT0R8SlBZfEtFU3xLR1N8S0hSfEtNRnxLUFd8S1JXfEtXRHxLWUR8S1pUfExBS3xMQlB8TEtSfExSRHxMU0x8TFlEfE1BRHxNREx8TUdBfE1LRHxNTUt8TU5UfE1PUHxNUlV8TVVSfE1WUnxNV0t8TVhOfE1YVnxNWVJ8TVpOfE5BRHxOR058TklPfE5PS3xOUFJ8TlpEfE9NUnxQQUJ8UEVOfFBHS3xQSFB8UEtSfFBMTnxQWUd8UUFSfFJPTnxSU0R8UlVCfFJXRnxTQVJ8U0JEfFNDUnxTREd8U0VLfFNHRHxTSFB8U0xFfFNPU3xTUkR8U1NQfFNUTnxTVkN8U1lQfFNaTHxUSEJ8VEpTfFRNVHxUTkR8VE9QfFRSWXxUVER8VFdEfFRaU3xVQUh8VUdYfFVTRHxVU058VVlJfFVZVXxVWVd8VVpTfFZFRHxWRVN8Vk5EfFZVVnxXU1R8WEFEfFhBRnxYQUd8WEFVfFhCQXxYQkJ8WEJDfFhCRHxYQ0R8WENHfFhEUnxYT0Z8WFBEfFhQRnxYUFR8WFNVfFhUU3xYVUF8WFhYfFlFUnxaQVJ8Wk1XfFpXRykkLyxnaT0vXltBLVpdezJ9KD8hMDB8MDF8OTkpXGR7Mn1bQS1aMC05XXsxMSwzMH0kLyxEaD0iKD86KD86XFxkXFxkWzI0NjhdWzA0OF18XFxkXFxkWzEzNTc5XVsyNl18XFxkXFxkMFs0OF18WzAyNDY4XVswNDhdMDB8WzEzNTc5XVsyNl0wMCktMDItMjl8XFxkezR9LSg/Oig/OjBbMTM1NzhdfDFbMDJdKS0oPzowWzEtOV18WzEyXVxcZHwzWzAxXSl8KD86MFs0NjldfDExKS0oPzowWzEtOV18WzEyXVxcZHwzMCl8KD86MDIpLSg/OjBbMS05XXwxXFxkfDJbMC04XSkpKSI7ZnVuY3Rpb24gd3YoZSl7cmV0dXJuIG5ldyBSZWdFeHAoYF4ke2V9JGApfWNvbnN0IExoPXd2KERoKTtmdW5jdGlvbiBUYShlKXtjb25zdCB0PSIoPzpbMDFdXFxkfDJbMC0zXSk6WzAtNV1cXGQiO3JldHVybiB0eXBlb2YgZS5wcmVjaXNpb249PSJudW1iZXIiP2UucHJlY2lzaW9uPT09LTE/YCR7dH1gOmUucHJlY2lzaW9uPT09MD9gJHt0fTpbMC01XVxcZGA6YCR7dH06WzAtNV1cXGRcXC5cXGR7JHtlLnByZWNpc2lvbn19YDplLnNlY29uZHM/YCR7dH06WzAtNV1cXGQoPzpcXC5cXGQrKT9gOmAke3R9KD86OlswLTVdXFxkKD86XFwuXFxkKyk/KT9gfWZ1bmN0aW9uIEJoKGUpe3JldHVybiBuZXcgUmVnRXhwKGBeJHtUYShlKX0kYCl9ZnVuY3Rpb24gSGgoZSl7Y29uc3QgdD1bIloiXTtlLm9mZnNldCYmdC5wdXNoKCIoWystXSg/OlswMV1cXGR8MlswLTNdKTpbMC01XVxcZCkiKTtjb25zdCBuPWAke1RhKHtwcmVjaXNpb246ZS5wcmVjaXNpb24sc2Vjb25kczohMH0pfSg/OiR7dC5qb2luKCJ8Iil9KWAsbz1lLmxvY2FsP2Ake259fCR7VGEoe3ByZWNpc2lvbjplLnByZWNpc2lvbn0pfWA6bjtyZXR1cm4gbmV3IFJlZ0V4cChgXiR7RGh9VCg/OiR7b30pJGApfWNvbnN0IEZoPS9eW1xzXFNdezAsfSQvLFVoPWU9Pntjb25zdCB0PWU/YFtcXHNcXFNdeyR7ZT8ubWluaW11bT8/MH0sJHtlPy5tYXhpbXVtPz8iIn19YDoiW1xcc1xcU10qIjtyZXR1cm4gbmV3IFJlZ0V4cChgXiR7dH0kYCl9LFZoPS9eLT9cZCtuPyQvLFdoPS9eLT9cZCskLyxZcz0vXi0/XGQrKD86XC5cZCspPyQvLEtoPS9eKD86dHJ1ZXxmYWxzZSkkL2ksR2g9L15udWxsJC9pLEpoPS9edW5kZWZpbmVkJC9pLFloPS9eW15BLVpdKiQvLFFoPS9eW15hLXpdKiQvLFhoPS9eWzAtOWEtZkEtRl0qJC87ZnVuY3Rpb24gWG4oZSx0KXtyZXR1cm4gbmV3IFJlZ0V4cChgXltBLVphLXowLTkrL117JHtlfX0ke3R9JGApfWZ1bmN0aW9uIGVvKGUpe3JldHVybiBuZXcgUmVnRXhwKGBeW0EtWmEtejAtOV8tXXske2V9fSRgKX1jb25zdCBfdj0vXlswLTlhLWZBLUZdezMyfSQvLFN2PVhuKDIyLCI9PSIpLGp2PWVvKDIyKSxUdj0vXlswLTlhLWZBLUZdezQwfSQvLEF2PVhuKDI3LCI9IiksenY9ZW8oMjcpLEN2PS9eWzAtOWEtZkEtRl17NjR9JC8sTnY9WG4oNDMsIj0iKSxQdj1lbyg0MykseHY9L15bMC05YS1mQS1GXXs5Nn0kLyxJdj1Ybig2NCwiIiksUnY9ZW8oNjQpLEV2PS9eWzAtOWEtZkEtRl17MTI4fSQvLE92PVhuKDg2LCI9PSIpLFp2PWVvKDg2KSxRcz1PYmplY3QuZnJlZXplKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7X19wcm90b19fOm51bGwsYW55U3RyaW5nOkZoLGJhc2U2NDp5dixiYXNlNjR1cmw6JHYsYmlnaW50OlZoLGJvb2xlYW46S2gsYnJvd3NlckVtYWlsOnZ2LGNpZHJ2NDpSaCxjaWRydjY6RWgsY3JlZGl0Q2FyZDpmaSxjdWlkOmtoLGN1aWQyOnloLGN1cnJlbmN5Q29kZTpxaCxkYXRlOkxoLGRhdGV0aW1lOkhoLGRvbWFpbjpaaCxkdXJhdGlvbjpUaCxlMTY0Ok1oLGVtYWlsOnpoLGVtb2ppOk5oLGV4dGVuZGVkRHVyYXRpb246ZHYsZ3VpZDpBaCxoZXg6WGgsaG9zdG5hbWU6T2gsaHRtbDVFbWFpbDpmdixodHRwUHJvdG9jb2w6bWksaWJhbjpnaSxpZG5FbWFpbDpidixpbnRlZ2VyOldoLGlwdjQ6UGgsaXB2Njp4aCxrc3VpZDpfaCxsb3dlcmNhc2U6WWgsbWFjOkloLG1kNV9iYXNlNjQ6U3YsbWQ1X2Jhc2U2NHVybDpqdixtZDVfaGV4Ol92LG5hbm9pZDpTaCxuYW5vaWRPZkxlbmd0aDpqaCxudWxsOkdoLG51bWJlcjpZcyxyZmM1MzIyRW1haWw6Z3Ysc2hhMV9iYXNlNjQ6QXYsc2hhMV9iYXNlNjR1cmw6enYsc2hhMV9oZXg6VHYsc2hhMjU2X2Jhc2U2NDpOdixzaGEyNTZfYmFzZTY0dXJsOlB2LHNoYTI1Nl9oZXg6Q3Ysc2hhMzg0X2Jhc2U2NDpJdixzaGEzODRfYmFzZTY0dXJsOlJ2LHNoYTM4NF9oZXg6eHYsc2hhNTEyX2Jhc2U2NDpPdixzaGE1MTJfYmFzZTY0dXJsOlp2LHNoYTUxMl9oZXg6RXYsc3RyaW5nOlVoLHRpbWU6QmgsdWxpZDokaCx1bmRlZmluZWQ6SmgsdW5pY29kZUVtYWlsOkNoLHVwcGVyY2FzZTpRaCx1dWlkOll0LHV1aWQ0Omh2LHV1aWQ2OnB2LHV1aWQ3Om12LHhpZDp3aH0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKSxhZT1mKCIkWm9kQ2hlY2siLChlLHQpPT57dmFyIG47ZS5fem9kPz8oZS5fem9kPXt9KSxlLl96b2QuZGVmPXQsKG49ZS5fem9kKS5vbmF0dGFjaD8/KG4ub25hdHRhY2g9W10pfSksYmk9ZT0+e2NvbnN0IHQ9ZS52YWx1ZTtyZXR1cm4hWWEodCkmJnQuc2l6ZSE9PXZvaWQgMH0sdmk9ZT0+e2NvbnN0IHQ9ZS52YWx1ZTtyZXR1cm4hWWEodCkmJnQubGVuZ3RoIT09dm9pZCAwfSx5cz17bnVtYmVyOiJudW1iZXIiLGJpZ2ludDoiYmlnaW50IixvYmplY3Q6ImRhdGUifSxraT1mKCIkWm9kQ2hlY2tMZXNzVGhhbiIsKGUsdCk9PnthZS5pbml0KGUsdCk7Y29uc3Qgbj15c1t0eXBlb2YgdC52YWx1ZV07ZS5fem9kLmNoZWNrPW89PnsodC5pbmNsdXNpdmU/by52YWx1ZTw9dC52YWx1ZTpvLnZhbHVlPHQudmFsdWUpfHxvLmlzc3Vlcy5wdXNoKHtvcmlnaW46eXNbdHlwZW9mIG8udmFsdWVdPz9uLGNvZGU6InRvb19iaWciLG1heGltdW06dHlwZW9mIHQudmFsdWU9PSJvYmplY3QiP3QudmFsdWUuZ2V0VGltZSgpOnQudmFsdWUsaW5wdXQ6by52YWx1ZSxpbmNsdXNpdmU6dC5pbmNsdXNpdmUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSkseWk9ZigiJFpvZENoZWNrR3JlYXRlclRoYW4iLChlLHQpPT57YWUuaW5pdChlLHQpO2NvbnN0IG49eXNbdHlwZW9mIHQudmFsdWVdO2UuX3pvZC5jaGVjaz1vPT57KHQuaW5jbHVzaXZlP28udmFsdWU+PXQudmFsdWU6by52YWx1ZT50LnZhbHVlKXx8by5pc3N1ZXMucHVzaCh7b3JpZ2luOnlzW3R5cGVvZiBvLnZhbHVlXT8/bixjb2RlOiJ0b29fc21hbGwiLG1pbmltdW06dHlwZW9mIHQudmFsdWU9PSJvYmplY3QiP3QudmFsdWUuZ2V0VGltZSgpOnQudmFsdWUsaW5wdXQ6by52YWx1ZSxpbmNsdXNpdmU6dC5pbmNsdXNpdmUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksZXA9ZigiJFpvZENoZWNrTXVsdGlwbGVPZiIsKGUsdCk9PnthZS5pbml0KGUsdCksZS5fem9kLmNoZWNrPW49PntpZih0eXBlb2Ygbi52YWx1ZSE9dHlwZW9mIHQudmFsdWUpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbWl4IG51bWJlciBhbmQgYmlnaW50IGluIG11bHRpcGxlX29mIGNoZWNrLiIpOyh0eXBlb2Ygbi52YWx1ZT09ImJpZ2ludCI/dC52YWx1ZSE9PUJpZ0ludCgwKSYmbi52YWx1ZSV0LnZhbHVlPT09QmlnSW50KDApOkhkKG4udmFsdWUsdC52YWx1ZSk9PT0wKXx8bi5pc3N1ZXMucHVzaCh7b3JpZ2luOnR5cGVvZiBuLnZhbHVlLGNvZGU6Im5vdF9tdWx0aXBsZV9vZiIsZGl2aXNvcjp0LnZhbHVlLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksdHA9ZigiJFpvZENoZWNrTnVtYmVyRm9ybWF0IiwoZSx0KT0+e2FlLmluaXQoZSx0KSx0LmZvcm1hdD10LmZvcm1hdHx8ImZsb2F0NjQiO2NvbnN0IG49dC5mb3JtYXQ/LmluY2x1ZGVzKCJpbnQiKSxvPW4/ImludCI6Im51bWJlciIsW3Mscl09UWRbdC5mb3JtYXRdO2UuX3pvZC5jaGVjaz1pPT57Y29uc3QgYz1pLnZhbHVlO2lmKG4pe2lmKCFOdW1iZXIuaXNJbnRlZ2VyKGMpKXtpLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDpvLGZvcm1hdDp0LmZvcm1hdCxjb2RlOiJpbnZhbGlkX3R5cGUiLGNvbnRpbnVlOiExLGlucHV0OmMsaW5zdDplfSk7cmV0dXJufWlmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihjKSl7Yz4wP2kuaXNzdWVzLnB1c2goe2lucHV0OmMsY29kZToidG9vX2JpZyIsbWF4aW11bTpOdW1iZXIuTUFYX1NBRkVfSU5URUdFUixub3RlOiJJbnRlZ2VycyBtdXN0IGJlIHdpdGhpbiB0aGUgc2FmZSBpbnRlZ2VyIHJhbmdlLiIsaW5zdDplLG9yaWdpbjpvLGluY2x1c2l2ZTohMCxjb250aW51ZTohdC5hYm9ydH0pOmkuaXNzdWVzLnB1c2goe2lucHV0OmMsY29kZToidG9vX3NtYWxsIixtaW5pbXVtOk51bWJlci5NSU5fU0FGRV9JTlRFR0VSLG5vdGU6IkludGVnZXJzIG11c3QgYmUgd2l0aGluIHRoZSBzYWZlIGludGVnZXIgcmFuZ2UuIixpbnN0OmUsb3JpZ2luOm8saW5jbHVzaXZlOiEwLGNvbnRpbnVlOiF0LmFib3J0fSk7cmV0dXJufX1jPHMmJmkuaXNzdWVzLnB1c2goe29yaWdpbjoibnVtYmVyIixpbnB1dDpjLGNvZGU6InRvb19zbWFsbCIsbWluaW11bTpzLGluY2x1c2l2ZTohMCxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KSxjPnImJmkuaXNzdWVzLnB1c2goe29yaWdpbjoibnVtYmVyIixpbnB1dDpjLGNvZGU6InRvb19iaWciLG1heGltdW06cixpbmNsdXNpdmU6ITAsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksbnA9ZigiJFpvZENoZWNrQmlnSW50Rm9ybWF0IiwoZSx0KT0+e2FlLmluaXQoZSx0KTtjb25zdFtuLG9dPVhkW3QuZm9ybWF0XTtlLl96b2QuY2hlY2s9cz0+e2NvbnN0IHI9cy52YWx1ZTtyPG4mJnMuaXNzdWVzLnB1c2goe29yaWdpbjoiYmlnaW50IixpbnB1dDpyLGNvZGU6InRvb19zbWFsbCIsbWluaW11bTpuLGluY2x1c2l2ZTohMCxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KSxyPm8mJnMuaXNzdWVzLnB1c2goe29yaWdpbjoiYmlnaW50IixpbnB1dDpyLGNvZGU6InRvb19iaWciLG1heGltdW06byxpbmNsdXNpdmU6ITAsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksb3A9ZigiJFpvZENoZWNrTWF4U2l6ZSIsKGUsdCk9Pnt2YXIgbjthZS5pbml0KGUsdCksKG49ZS5fem9kLmRlZikud2hlbj8/KG4ud2hlbj1iaSksZS5fem9kLmNoZWNrPW89Pntjb25zdCBzPW8udmFsdWU7cy5zaXplPD10Lm1heGltdW18fG8uaXNzdWVzLnB1c2goe29yaWdpbjpMcyhzKSxjb2RlOiJ0b29fYmlnIixtYXhpbXVtOnQubWF4aW11bSxpbmNsdXNpdmU6ITAsaW5wdXQ6cyxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxzcD1mKCIkWm9kQ2hlY2tNaW5TaXplIiwoZSx0KT0+e3ZhciBuO2FlLmluaXQoZSx0KSwobj1lLl96b2QuZGVmKS53aGVuPz8obi53aGVuPWJpKSxlLl96b2QuY2hlY2s9bz0+e2NvbnN0IHM9by52YWx1ZTtzLnNpemU+PXQubWluaW11bXx8by5pc3N1ZXMucHVzaCh7b3JpZ2luOkxzKHMpLGNvZGU6InRvb19zbWFsbCIsbWluaW11bTp0Lm1pbmltdW0saW5jbHVzaXZlOiEwLGlucHV0OnMsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSkscnA9ZigiJFpvZENoZWNrU2l6ZUVxdWFscyIsKGUsdCk9Pnt2YXIgbjthZS5pbml0KGUsdCksKG49ZS5fem9kLmRlZikud2hlbj8/KG4ud2hlbj1iaSksZS5fem9kLmNoZWNrPW89Pntjb25zdCBzPW8udmFsdWUscj1zLnNpemU7aWYocj09PXQuc2l6ZSlyZXR1cm47Y29uc3QgaT1yPnQuc2l6ZTtvLmlzc3Vlcy5wdXNoKHtvcmlnaW46THMocyksLi4uaT97Y29kZToidG9vX2JpZyIsbWF4aW11bTp0LnNpemV9Ontjb2RlOiJ0b29fc21hbGwiLG1pbmltdW06dC5zaXplfSxpbmNsdXNpdmU6ITAsZXhhY3Q6ITAsaW5wdXQ6by52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxhcD1mKCIkWm9kQ2hlY2tNYXhMZW5ndGgiLChlLHQpPT57dmFyIG47YWUuaW5pdChlLHQpLChuPWUuX3pvZC5kZWYpLndoZW4/PyhuLndoZW49dmkpLGUuX3pvZC5jaGVjaz1vPT57Y29uc3Qgcz1vLnZhbHVlLHI9cy5sZW5ndGg7aWYoKHR5cGVvZiBzPT0ic3RyaW5nIiYmcj50Lm1heGltdW0/QnMocyk6cik8PXQubWF4aW11bSlyZXR1cm47Y29uc3QgYz1IcyhzKTtvLmlzc3Vlcy5wdXNoKHtvcmlnaW46Yyxjb2RlOiJ0b29fYmlnIixtYXhpbXVtOnQubWF4aW11bSxpbmNsdXNpdmU6ITAsaW5wdXQ6cyxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxpcD1mKCIkWm9kQ2hlY2tNaW5MZW5ndGgiLChlLHQpPT57dmFyIG47YWUuaW5pdChlLHQpLChuPWUuX3pvZC5kZWYpLndoZW4/PyhuLndoZW49dmkpLGUuX3pvZC5jaGVjaz1vPT57Y29uc3Qgcz1vLnZhbHVlLHI9cy5sZW5ndGg7aWYoKHR5cGVvZiBzPT0ic3RyaW5nIiYmcj49dC5taW5pbXVtJiZyPHQubWluaW11bSoyP0JzKHMpOnIpPj10Lm1pbmltdW0pcmV0dXJuO2NvbnN0IGM9SHMocyk7by5pc3N1ZXMucHVzaCh7b3JpZ2luOmMsY29kZToidG9vX3NtYWxsIixtaW5pbXVtOnQubWluaW11bSxpbmNsdXNpdmU6ITAsaW5wdXQ6cyxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxjcD1mKCIkWm9kQ2hlY2tMZW5ndGhFcXVhbHMiLChlLHQpPT57dmFyIG47YWUuaW5pdChlLHQpLChuPWUuX3pvZC5kZWYpLndoZW4/PyhuLndoZW49dmkpLGUuX3pvZC5jaGVjaz1vPT57Y29uc3Qgcz1vLnZhbHVlLHI9cy5sZW5ndGgsaT10eXBlb2Ygcz09InN0cmluZyImJnI+PXQubGVuZ3RoJiZyPD10Lmxlbmd0aCoyP0JzKHMpOnI7aWYoaT09PXQubGVuZ3RoKXJldHVybjtjb25zdCBjPUhzKHMpLHU9aT50Lmxlbmd0aDtvLmlzc3Vlcy5wdXNoKHtvcmlnaW46YywuLi51P3tjb2RlOiJ0b29fYmlnIixtYXhpbXVtOnQubGVuZ3RofTp7Y29kZToidG9vX3NtYWxsIixtaW5pbXVtOnQubGVuZ3RofSxpbmNsdXNpdmU6ITAsZXhhY3Q6ITAsaW5wdXQ6by52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSx0bz1mKCIkWm9kQ2hlY2tTdHJpbmdGb3JtYXQiLChlLHQpPT57dmFyIG4sbzthZS5pbml0KGUsdCksdC5wYXR0ZXJuPyhuPWUuX3pvZCkuY2hlY2s/PyhuLmNoZWNrPXM9Pnt0LnBhdHRlcm4ubGFzdEluZGV4PTAsIXQucGF0dGVybi50ZXN0KHMudmFsdWUpJiZzLmlzc3Vlcy5wdXNoKHtvcmlnaW46InN0cmluZyIsY29kZToiaW52YWxpZF9mb3JtYXQiLGZvcm1hdDp0LmZvcm1hdCxpbnB1dDpzLnZhbHVlLC4uLnQucGF0dGVybj97cGF0dGVybjp0LnBhdHRlcm4udG9TdHJpbmcoKX06e30saW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9KToobz1lLl96b2QpLmNoZWNrPz8oby5jaGVjaz0oKT0+e30pfSksbHA9ZigiJFpvZENoZWNrUmVnZXgiLChlLHQpPT57dG8uaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57dC5wYXR0ZXJuLmxhc3RJbmRleD0wLCF0LnBhdHRlcm4udGVzdChuLnZhbHVlKSYmbi5pc3N1ZXMucHVzaCh7b3JpZ2luOiJzdHJpbmciLGNvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InJlZ2V4IixpbnB1dDpuLnZhbHVlLHBhdHRlcm46dC5wYXR0ZXJuLnRvU3RyaW5nKCksaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksdXA9ZigiJFpvZENoZWNrTG93ZXJDYXNlIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1ZaCksdG8uaW5pdChlLHQpfSksZHA9ZigiJFpvZENoZWNrVXBwZXJDYXNlIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1RaCksdG8uaW5pdChlLHQpfSksaHA9ZigiJFpvZENoZWNrSW5jbHVkZXMiLChlLHQpPT57YWUuaW5pdChlLHQpO2NvbnN0IG49ZXQodC5pbmNsdWRlcyksbz1uZXcgUmVnRXhwKHR5cGVvZiB0LnBvc2l0aW9uPT0ibnVtYmVyIj9gXi57JHt0LnBvc2l0aW9ufSx9JHtufWA6bik7dC5wYXR0ZXJuPW8sZS5fem9kLmNoZWNrPXM9PntzLnZhbHVlLmluY2x1ZGVzKHQuaW5jbHVkZXMsdC5wb3NpdGlvbil8fHMuaXNzdWVzLnB1c2goe29yaWdpbjoic3RyaW5nIixjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJpbmNsdWRlcyIsaW5jbHVkZXM6dC5pbmNsdWRlcyxpbnB1dDpzLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pfX0pLHBwPWYoIiRab2RDaGVja1N0YXJ0c1dpdGgiLChlLHQpPT57YWUuaW5pdChlLHQpO2NvbnN0IG49bmV3IFJlZ0V4cChgXiR7ZXQodC5wcmVmaXgpfS4qYCk7dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPW4pLGUuX3pvZC5jaGVjaz1vPT57by52YWx1ZS5zdGFydHNXaXRoKHQucHJlZml4KXx8by5pc3N1ZXMucHVzaCh7b3JpZ2luOiJzdHJpbmciLGNvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InN0YXJ0c193aXRoIixwcmVmaXg6dC5wcmVmaXgsaW5wdXQ6by52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxtcD1mKCIkWm9kQ2hlY2tFbmRzV2l0aCIsKGUsdCk9PnthZS5pbml0KGUsdCk7Y29uc3Qgbj1uZXcgUmVnRXhwKGAuKiR7ZXQodC5zdWZmaXgpfSRgKTt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49biksZS5fem9kLmNoZWNrPW89PntvLnZhbHVlLmVuZHNXaXRoKHQuc3VmZml4KXx8by5pc3N1ZXMucHVzaCh7b3JpZ2luOiJzdHJpbmciLGNvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImVuZHNfd2l0aCIsc3VmZml4OnQuc3VmZml4LGlucHV0Om8udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSk7ZnVuY3Rpb24gJHMoZSx0LG4pe2UuaXNzdWVzLmxlbmd0aCYmdC5pc3N1ZXMucHVzaCguLi5NZShuLGUuaXNzdWVzKSl9Y29uc3QgZnA9ZigiJFpvZENoZWNrUHJvcGVydHkiLChlLHQpPT57YWUuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57Y29uc3Qgbz10LnNjaGVtYS5fem9kLnJ1bih7dmFsdWU6bi52YWx1ZVt0LnByb3BlcnR5XSxpc3N1ZXM6W119LHt9KTtpZihvIGluc3RhbmNlb2YgUHJvbWlzZSlyZXR1cm4gby50aGVuKHM9PiRzKHMsbix0LnByb3BlcnR5KSk7JHMobyxuLHQucHJvcGVydHkpfX0pLGdwPWYoIiRab2RDaGVja1Byb3BlcnRpZXMiLChlLHQpPT57YWUuaW5pdChlLHQpLEZzKGUsU3ltYm9sLml0ZXJhdG9yLGZ1bmN0aW9uKigpe3lpZWxkIGV9KTtsZXQgbjtlLl96b2QuY2hlY2s9bz0+e2lmKG8udmFsdWU9PW51bGwpe28uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJvYmplY3QiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6by52YWx1ZSxpbnN0OmV9KTtyZXR1cm59bj8/KG49UmVmbGVjdC5vd25LZXlzKHQuc2hhcGUpLm1hcChpPT5baSx0LnNoYXBlW2ldXSkpO2NvbnN0IHM9by52YWx1ZTtsZXQgcjtmb3IoY29uc3RbaSxjXW9mIG4pe2NvbnN0IHU9Yy5fem9kLnJ1bih7dmFsdWU6c1tpXSxpc3N1ZXM6W119LHt9KTt1IGluc3RhbmNlb2YgUHJvbWlzZT8ocj8/KHI9W10pLHIucHVzaCh1LnRoZW4oZD0+JHMoZCxvLGkpKSkpOiRzKHUsbyxpKX1pZihyKXJldHVybiBQcm9taXNlLmFsbChyKS50aGVuKCgpPT57fSl9fSksYnA9ZigiJFpvZENoZWNrTWltZVR5cGUiLChlLHQpPT57YWUuaW5pdChlLHQpO2NvbnN0IG49bmV3IFNldCh0Lm1pbWUpO2UuX3pvZC5jaGVjaz1vPT57bi5oYXMoby52YWx1ZS50eXBlKXx8by5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF92YWx1ZSIsdmFsdWVzOnQubWltZSxpbnB1dDpvLnZhbHVlLnR5cGUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksdnA9ZigiJFpvZENoZWNrT3ZlcndyaXRlIiwoZSx0KT0+e2FlLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e24udmFsdWU9dC50eChuLnZhbHVlKX19KTtjbGFzcyBrcHtjb25zdHJ1Y3Rvcih0PVtdLG49e30pe3RoaXMuY29udGVudD1bXSx0aGlzLmluZGVudD0wLHRoaXMuYXJncz10LHRoaXMuY2xvc2VkPW59aW5kZW50ZWQodCl7dGhpcy5pbmRlbnQrPTE7dHJ5e3QodGhpcyl9ZmluYWxseXt0aGlzLmluZGVudC09MX19d3JpdGUodCl7aWYodHlwZW9mIHQ9PSJmdW5jdGlvbiIpe3QodGhpcyx7ZXhlY3V0aW9uOiJzeW5jIn0pLHQodGhpcyx7ZXhlY3V0aW9uOiJhc3luYyJ9KTtyZXR1cm59Y29uc3Qgbz10LnNwbGl0KGAKYCkuZmlsdGVyKGk9PmkpLHM9TWF0aC5taW4oLi4uby5tYXAoaT0+aS5sZW5ndGgtaS50cmltU3RhcnQoKS5sZW5ndGgpKSxyPW8ubWFwKGk9Pmkuc2xpY2UocykpLm1hcChpPT4iICIucmVwZWF0KHRoaXMuaW5kZW50KjIpK2kpO2Zvcihjb25zdCBpIG9mIHIpdGhpcy5jb250ZW50LnB1c2goaSl9Y29tcGlsZSgpe2NvbnN0IHQ9RnVuY3Rpb24sbj10aGlzPy5jb250ZW50Pz9bIiJdO3JldHVybiBuZXcgdCguLi5PYmplY3Qua2V5cyh0aGlzLmNsb3NlZCksYHJldHVybiBmdW5jdGlvbiAoJHt0aGlzLmFyZ3Muam9pbigiLCAiKX0pIHsKJHtuLmpvaW4oYApgKX0KfTtgKSguLi5PYmplY3QudmFsdWVzKHRoaXMuY2xvc2VkKSl9fWNvbnN0IHlwPXttYWpvcjo0LG1pbm9yOjYscGF0Y2g6NX0sRD1mKCIkWm9kVHlwZSIsKGUsdCk9Pnt2YXIgbjtlPz8oZT17fSksZS5fem9kLmRlZj10LGUuX3pvZC5iYWc9ZS5fem9kLmJhZ3x8e30sZS5fem9kLnZlcnNpb249eXA7Y29uc3Qgbz1lLl96b2QuZGVmLmNoZWNrcyxzPWUuX3pvZC50cmFpdHMuaGFzKCIkWm9kQ2hlY2siKT9bZSwuLi5vPz9bXV06bz8ubGVuZ3RoP1suLi5vXTpbXTtmb3IoY29uc3QgciBvZiBzKWZvcihjb25zdCBpIG9mIHIuX3pvZC5vbmF0dGFjaClpKGUpO2lmKHMubGVuZ3RoPT09MCkobj1lLl96b2QpLmRlZmVycmVkPz8obi5kZWZlcnJlZD1bXSksZS5fem9kLmRlZmVycmVkPy5wdXNoKCgpPT57ZS5fem9kLnJ1bj1lLl96b2QucGFyc2V9KTtlbHNle2NvbnN0IHI9KGMsdSxkKT0+e2lmKGMubWVtbylyZXR1cm4gYztsZXQgaD1DZShjKSxwO2Zvcihjb25zdCBtIG9mIHUpe2lmKG0uX3pvZC5kZWYud2hlbil7aWYoaWgoYyl8fCFtLl96b2QuZGVmLndoZW4oYykpY29udGludWV9ZWxzZSBpZihoKWNvbnRpbnVlO2NvbnN0IHk9Yy5pc3N1ZXMubGVuZ3RoLCQ9bS5fem9kLmNoZWNrKGMpO2lmKCQgaW5zdGFuY2VvZiBQcm9taXNlJiZkPy5hc3luYz09PSExKXRocm93IG5ldyBodDtpZihwfHwkIGluc3RhbmNlb2YgUHJvbWlzZSlwPShwPz9Qcm9taXNlLnJlc29sdmUoKSkudGhlbihhc3luYygpPT57YXdhaXQgJCxjLmlzc3Vlcy5sZW5ndGghPT15JiYoX2EoYy5pc3N1ZXMseSxlKSxofHwoaD1DZShjLHkpKSl9KTtlbHNle2lmKGMuaXNzdWVzLmxlbmd0aD09PXkpY29udGludWU7X2EoYy5pc3N1ZXMseSxlKSxofHwoaD1DZShjLHkpKX19cmV0dXJuIHA/cC50aGVuKCgpPT5jKTpjfSxpPShjLHUsZCk9PntpZihDZShjKSlyZXR1cm4gYy5hYm9ydGVkPSEwLGM7Y29uc3QgaD1yKHUscyxkKTtpZihoIGluc3RhbmNlb2YgUHJvbWlzZSl7aWYoZC5hc3luYz09PSExKXRocm93IG5ldyBodDtyZXR1cm4gaC50aGVuKHA9PmUuX3pvZC5wYXJzZShwLGQpKX1yZXR1cm4gZS5fem9kLnBhcnNlKGgsZCl9O2UuX3pvZC5ydW49KGMsdSk9PntpZih1LnNraXBDaGVja3MpcmV0dXJuIGUuX3pvZC5wYXJzZShjLHUpO2lmKHUuZGlyZWN0aW9uPT09ImJhY2t3YXJkIil7Y29uc3QgaD1lLl96b2QucGFyc2Uoe3ZhbHVlOmMudmFsdWUsaXNzdWVzOltdfSx7Li4udSxza2lwQ2hlY2tzOiEwfSk7cmV0dXJuIGggaW5zdGFuY2VvZiBQcm9taXNlP2gudGhlbihwPT5pKHAsYyx1KSk6aShoLGMsdSl9Y29uc3QgZD1lLl96b2QucGFyc2UoYyx1KTtpZihkIGluc3RhbmNlb2YgUHJvbWlzZSl7aWYodS5hc3luYz09PSExKXRocm93IG5ldyBodDtyZXR1cm4gZC50aGVuKGg9PnIoaCxzLHUpKX1yZXR1cm4gcihkLHMsdSl9fX0se2dldCJ+c3RhbmRhcmQiKCl7cmV0dXJuIEZzKHRoaXMsIn5zdGFuZGFyZCIsJGkodGhpcykpfSxzZXQifnN0YW5kYXJkIihlKXt0dCh0aGlzLCJ+c3RhbmRhcmQiLGUpfX0pLCRwPShlLHQpPT5lLmlzc3Vlcy5sZW5ndGg/e2lzc3VlczplLmlzc3Vlcy5tYXAobj0+TGUobix0LHBlKCkpKX06e3ZhbHVlOmUudmFsdWV9O2FzeW5jIGZ1bmN0aW9uIE12KGUsdCl7Y29uc3Qgbj17YXN5bmM6ITB9O3JldHVybiAkcChhd2FpdCBlLl96b2QucnVuKHt2YWx1ZTp0LGlzc3VlczpbXX0sbiksbil9ZnVuY3Rpb24gJGkoZSl7cmV0dXJue3ZhbGlkYXRlOnQ9Pntjb25zdCBuPXthc3luYzohMX07dHJ5e2NvbnN0IG89ZS5fem9kLnJ1bih7dmFsdWU6dCxpc3N1ZXM6W119LG4pO2lmKCEobyBpbnN0YW5jZW9mIFByb21pc2UpKXJldHVybiAkcChvLG4pfWNhdGNoe31yZXR1cm4gTXYoZSx0KX0sdmVuZG9yOiJ6b2QiLHZlcnNpb246MX19Y29uc3Qgbm89ZigiJFpvZFN0cmluZyIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGF0dGVybj10LnBhdHRlcm4/P0ZoLGUuX3pvZC5wYXJzZT0obixvKT0+e2lmKHQuY29lcmNlKXRyeXtuLnZhbHVlPVN0cmluZyhuLnZhbHVlKX1jYXRjaHt9cmV0dXJuIHR5cGVvZiBuLnZhbHVlPT0ic3RyaW5nInx8bi5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6InN0cmluZyIsY29kZToiaW52YWxpZF90eXBlIixpbnB1dDpuLnZhbHVlLGluc3Q6ZX0pLG59fSksb2U9ZigiJFpvZFN0cmluZ0Zvcm1hdCIsKGUsdCk9Pnt0by5pbml0KGUsdCksbm8uaW5pdChlLHQpfSksd3A9ZigiJFpvZEdVSUQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPUFoKSxvZS5pbml0KGUsdCl9KSxfcD1mKCIkWm9kVVVJRCIsKGUsdCk9PntpZih0LnZlcnNpb24pe2NvbnN0IG89e3YxOjEsdjI6Mix2MzozLHY0OjQsdjU6NSx2Njo2LHY3Ojcsdjg6OH1bdC52ZXJzaW9uXTtpZihvPT09dm9pZCAwKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBVVUlEIHZlcnNpb246ICIke3QudmVyc2lvbn0iYCk7dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPVl0KG8pKX1lbHNlIHQucGF0dGVybj8/KHQucGF0dGVybj1ZdCgpKTtvZS5pbml0KGUsdCl9KSxTcD1mKCIkWm9kRW1haWwiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPXpoKSxvZS5pbml0KGUsdCl9KSx3aT0xLERuPTI7ZnVuY3Rpb24gX2koZSl7dHJ5e3JldHVybiB0eXBlb2YgVVJMPCJ1IiYmdHlwZW9mIFVSTC5jYW5QYXJzZT09ImZ1bmN0aW9uIj9VUkwuY2FuUGFyc2UoZSk6KG5ldyBVUkwoZSksITApfWNhdGNoe3JldHVybiExfX1mdW5jdGlvbiBqcChlLHQpe3JldHVybiEoIm5vcm1hbGl6ZSJpbiB0KSYmISgiaG9zdG5hbWUiaW4gdCkmJiEoInByb3RvY29sImluIHQpP19pKGUpfHxEbjpUcChlLHQpfWZ1bmN0aW9uIFRwKGUsdCl7aWYoIXQubm9ybWFsaXplJiZ0LnByb3RvY29sPy5zb3VyY2U9PT1taS5zb3VyY2UmJiEvXmh0dHBzPzpcL1wvL2kudGVzdChlKSlyZXR1cm4gd2k7dHJ5e2lmKHR5cGVvZiBVUkw8InUiKXtjb25zdCBuPVVSTDtpZih0eXBlb2Ygbi5wYXJzZT09ImZ1bmN0aW9uIilyZXR1cm4gbi5wYXJzZShlKT8/RG59cmV0dXJuIG5ldyBVUkwoZSl9Y2F0Y2h7cmV0dXJuIERufX1jb25zdCBxdj0vW1x0XG5ccl0vZztmdW5jdGlvbiBBYShlKXtyZXR1cm4gZS5yZXBsYWNlKHF2LCIiKX1mdW5jdGlvbiBBcChlLHQpe3JldHVybiB0Lmxhc3RJbmRleD0wLHQudGVzdChlLmhvc3RuYW1lKX1mdW5jdGlvbiB6cChlLHQpe3JldHVybiB0Lmxhc3RJbmRleD0wLHQudGVzdChlLnByb3RvY29sLmVuZHNXaXRoKCI6Iik/ZS5wcm90b2NvbC5zbGljZSgwLC0xKTplLnByb3RvY29sKX1jb25zdCBDcD1mKCIkWm9kVVJMIiwoZSx0KT0+e29lLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e3RyeXtjb25zdCBvPW4udmFsdWUudHJpbSgpLHM9anAobyx0KTtpZihzPT09d2kpe24uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InVybCIsbm90ZToiSW52YWxpZCBVUkwgZm9ybWF0IixpbnB1dDpuLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pO3JldHVybn1pZihzPT09RG4pe24uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InVybCIsaW5wdXQ6bi52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KTtyZXR1cm59aWYocz09PSEwKXtuLnZhbHVlPUFhKG8pO3JldHVybn10Lmhvc3RuYW1lJiYhQXAocyx0Lmhvc3RuYW1lKSYmbi5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF9mb3JtYXQiLGZvcm1hdDoidXJsIixub3RlOiJJbnZhbGlkIGhvc3RuYW1lIixwYXR0ZXJuOnQuaG9zdG5hbWUuc291cmNlLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSksdC5wcm90b2NvbCYmIXpwKHMsdC5wcm90b2NvbCkmJm4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InVybCIsbm90ZToiSW52YWxpZCBwcm90b2NvbCIscGF0dGVybjp0LnByb3RvY29sLnNvdXJjZSxpbnB1dDpuLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pLG4udmFsdWU9dC5ub3JtYWxpemU/cy5ocmVmOkFhKG8pO3JldHVybn1jYXRjaHtuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJ1cmwiLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fX0pLE5wPWYoIiRab2RFbW9qaSIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49TmgoKSksb2UuaW5pdChlLHQpfSksUHA9ZigiJFpvZE5hbm9JRCIsKGUsdCk9PntpZih0Lmxlbmd0aCE9PXZvaWQgMCYmKCFOdW1iZXIuaXNJbnRlZ2VyKHQubGVuZ3RoKXx8dC5sZW5ndGg8MSkpdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG5hbm9pZCBsZW5ndGg6ICR7dC5sZW5ndGh9YCk7dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPXQubGVuZ3RoPT09dm9pZCAwP1NoOmpoKHQubGVuZ3RoKSksb2UuaW5pdChlLHQpfSkseHA9ZigiJFpvZENVSUQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPWtoKSxvZS5pbml0KGUsdCl9KSxJcD1mKCIkWm9kQ1VJRDIiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPXloKSxvZS5pbml0KGUsdCl9KSxScD1mKCIkWm9kVUxJRCIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49JGgpLG9lLmluaXQoZSx0KX0pLEVwPWYoIiRab2RYSUQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPXdoKSxvZS5pbml0KGUsdCl9KSxPcD1mKCIkWm9kS1NVSUQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPV9oKSxvZS5pbml0KGUsdCl9KSxacD1mKCIkWm9kSVNPRGF0ZVRpbWUiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPUhoKHQpKSxvZS5pbml0KGUsdCl9KSxNcD1mKCIkWm9kSVNPRGF0ZSIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49TGgpLG9lLmluaXQoZSx0KX0pLHFwPWYoIiRab2RJU09UaW1lIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1CaCh0KSksb2UuaW5pdChlLHQpfSksRHA9ZigiJFpvZElTT0R1cmF0aW9uIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1UaCksb2UuaW5pdChlLHQpfSksTHA9ZigiJFpvZElQdjQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPVBoKSxvZS5pbml0KGUsdCl9KSxEdj0vXlswLTlhLWZBLUY6Ll0rJC87ZnVuY3Rpb24gU2koZSl7cmV0dXJuIER2LnRlc3QoZSk/X2koYGh0dHA6Ly9bJHtlfV1gKTohMX1jb25zdCBCcD1mKCIkWm9kSVB2NiIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49eGgpLG9lLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e1NpKG4udmFsdWUpfHxuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJpcHY2IixpbnB1dDpuLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pfX0pLEhwPWYoIiRab2RNQUMiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPUloKHQuZGVsaW1pdGVyKSksb2UuaW5pdChlLHQpfSksRnA9ZigiJFpvZENJRFJ2NCIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49UmgpLG9lLmluaXQoZSx0KX0pO2Z1bmN0aW9uIFVwKGUpe2NvbnN0IHQ9ZS5zcGxpdCgiLyIpO2lmKHQubGVuZ3RoIT09MilyZXR1cm4hMTtjb25zdFtuLG9dPXQ7aWYoIW8pcmV0dXJuITE7Y29uc3Qgcz1OdW1iZXIobyk7cmV0dXJuYCR7c31gIT09b3x8czwwfHxzPjEyOD8hMTpTaShuKX1jb25zdCBWcD1mKCIkWm9kQ0lEUnY2IiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1FaCksb2UuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57VXAobi52YWx1ZSl8fG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImNpZHJ2NiIsaW5wdXQ6bi52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KTtmdW5jdGlvbiBqaShlKXtpZihlPT09IiIpcmV0dXJuITA7aWYoL1xzLy50ZXN0KGUpfHxlLmxlbmd0aCU0IT09MClyZXR1cm4hMTt0cnl7cmV0dXJuIGF0b2IoZSksITB9Y2F0Y2h7cmV0dXJuITF9fWNvbnN0IFdwPS9eWzAtOWEtekEtWisvXSo9ezAsMn0kLyxLcD1mKCIkWm9kQmFzZTY0IiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1XcCksb2UuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57amkobi52YWx1ZSl8fG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImJhc2U2NCIsaW5wdXQ6bi52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxUaT0vXltBLVphLXowLTlfLV0qJC87ZnVuY3Rpb24gR3AoZSl7aWYoIVRpLnRlc3QoZSkpcmV0dXJuITE7Y29uc3QgdD1lLnJlcGxhY2UoL1stX10vZyxvPT5vPT09Ii0iPyIrIjoiLyIpLG49dC5wYWRFbmQoTWF0aC5jZWlsKHQubGVuZ3RoLzQpKjQsIj0iKTtyZXR1cm4gamkobil9Y29uc3QgSnA9ZigiJFpvZEJhc2U2NFVSTCIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49VGkpLG9lLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e0dwKG4udmFsdWUpfHxuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJiYXNlNjR1cmwiLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksWXA9ZigiJFpvZEUxNjQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPU1oKSxvZS5pbml0KGUsdCl9KSxMdj0vWy0gXS9nO2Z1bmN0aW9uIEJ2KGUpe2xldCB0PWUubGVuZ3RoLG49MSxvPTA7Zm9yKDt0Oyl7Y29uc3Qgcz1lLmNoYXJDb2RlQXQoLS10KS00ODtuXj0xLG8rPW4/WzAsMiw0LDYsOCwxLDMsNSw3LDldW3NdOnN9cmV0dXJuIG8lMTA9PT0wfWZ1bmN0aW9uIFFwKGUpe3JldHVybiBmaS50ZXN0KGUpP0J2KGUucmVwbGFjZShMdiwiIikpOiExfWNvbnN0IFhwPWYoIiRab2RDcmVkaXRDYXJkIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1maSksb2UuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57UXAobi52YWx1ZSl8fG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImNyZWRpdF9jYXJkIixpbnB1dDpuLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pfX0pO2Z1bmN0aW9uIEh2KGUpe2xldCB0PTA7Y29uc3Qgbj1lLmxlbmd0aDtmb3IobGV0IG89NDtvPG47bysrKXtjb25zdCBzPWUuY2hhckNvZGVBdChvKTt0PShzPj02NT90KjEwMCsocy01NSk6dCoxMCsocy00OCkpJTk3fWZvcihsZXQgbz0wO288NDtvKyspe2NvbnN0IHM9ZS5jaGFyQ29kZUF0KG8pO3Q9KHM+PTY1P3QqMTAwKyhzLTU1KTp0KjEwKyhzLTQ4KSklOTd9cmV0dXJuIHQ9PT0xfWZ1bmN0aW9uIGVtKGUpe3JldHVybiBnaS50ZXN0KGUpP0h2KGUpOiExfWNvbnN0IHRtPWYoIiRab2RJQkFOIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1naSksb2UuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57ZW0obi52YWx1ZSl8fG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImliYW4iLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSk7ZnVuY3Rpb24gbm0oZSx0PW51bGwpe3RyeXtjb25zdCBuPWUuc3BsaXQoIi4iKTtpZihuLmxlbmd0aCE9PTMpcmV0dXJuITE7Y29uc3Rbb109bjtpZighbylyZXR1cm4hMTtjb25zdCBzPUpTT04ucGFyc2UoYXRvYihvKSk7cmV0dXJuISgidHlwImluIHMmJnM/LnR5cCE9PSJKV1QifHwhcy5hbGd8fHQmJighKCJhbGciaW4gcyl8fHMuYWxnIT09dCkpfWNhdGNoe3JldHVybiExfX1jb25zdCBvbT1mKCIkWm9kSldUIiwoZSx0KT0+e29lLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e25tKG4udmFsdWUsdC5hbGcpfHxuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJqd3QiLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksc209ZigiJFpvZEN1c3RvbVN0cmluZ0Zvcm1hdCIsKGUsdCk9PntvZS5pbml0KGUsdCksZS5fem9kLmNoZWNrPW49Pnt0LmZuKG4udmFsdWUpfHxuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OnQuZm9ybWF0LGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksQWk9ZigiJFpvZE51bWJlciIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGF0dGVybj1ZcyxlLl96b2QucGFyc2U9KG4sbyk9PntpZih0LmNvZXJjZSl0cnl7bi52YWx1ZT1OdW1iZXIobi52YWx1ZSl9Y2F0Y2h7fWNvbnN0IHM9bi52YWx1ZTtpZih0eXBlb2Ygcz09Im51bWJlciImJiFOdW1iZXIuaXNOYU4ocykmJk51bWJlci5pc0Zpbml0ZShzKSlyZXR1cm4gbjtjb25zdCByPXR5cGVvZiBzPT0ibnVtYmVyIj9OdW1iZXIuaXNOYU4ocyk/Ik5hTiI6TnVtYmVyLmlzRmluaXRlKHMpP3ZvaWQgMDpTdHJpbmcocyk6dm9pZCAwO3JldHVybiBuLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoibnVtYmVyIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnMsaW5zdDplLC4uLnI/e3JlY2VpdmVkOnJ9Ont9fSksbn19KSxybT1mKCIkWm9kTnVtYmVyRm9ybWF0IiwoZSx0KT0+e3RwLmluaXQoZSx0KSxBaS5pbml0KGUsdCl9KSx6aT1mKCIkWm9kQm9vbGVhbiIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGF0dGVybj1LaCxlLl96b2QucGFyc2U9KG4sbyk9PntpZih0LmNvZXJjZSl0cnl7bi52YWx1ZT0hIW4udmFsdWV9Y2F0Y2h7fWNvbnN0IHM9bi52YWx1ZTtyZXR1cm4gdHlwZW9mIHM9PSJib29sZWFuInx8bi5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6ImJvb2xlYW4iLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cyxpbnN0OmV9KSxufX0pLENpPWYoIiRab2RCaWdJbnQiLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhdHRlcm49VmgsZS5fem9kLnBhcnNlPShuLG8pPT57aWYodC5jb2VyY2UpdHJ5e24udmFsdWU9QmlnSW50KG4udmFsdWUpfWNhdGNoe31yZXR1cm4gdHlwZW9mIG4udmFsdWU9PSJiaWdpbnQifHxuLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoiYmlnaW50Iixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0Om4udmFsdWUsaW5zdDplfSksbn19KSxhbT1mKCIkWm9kQmlnSW50Rm9ybWF0IiwoZSx0KT0+e25wLmluaXQoZSx0KSxDaS5pbml0KGUsdCl9KSxpbT1mKCIkWm9kU3ltYm9sIiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXJzZT0obixvKT0+e2NvbnN0IHM9bi52YWx1ZTtyZXR1cm4gdHlwZW9mIHM9PSJzeW1ib2wifHxuLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoic3ltYm9sIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnMsaW5zdDplfSksbn19KSxjbT1mKCIkWm9kVW5kZWZpbmVkIiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXR0ZXJuPUpoLGUuX3pvZC52YWx1ZXM9bmV3IFNldChbdm9pZCAwXSksZS5fem9kLnBhcnNlPShuLG8pPT57Y29uc3Qgcz1uLnZhbHVlO3JldHVybiB0eXBlb2Ygcz4idSJ8fG4uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJ1bmRlZmluZWQiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cyxpbnN0OmV9KSxufX0pLGxtPWYoIiRab2ROdWxsIiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXR0ZXJuPUdoLGUuX3pvZC52YWx1ZXM9bmV3IFNldChbbnVsbF0pLGUuX3pvZC5wYXJzZT0obixvKT0+e2NvbnN0IHM9bi52YWx1ZTtyZXR1cm4gcz09PW51bGx8fG4uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJudWxsIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnMsaW5zdDplfSksbn19KSx1bT1mKCIkWm9kQW55IiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXJzZT1uPT5ufSksZG09ZigiJFpvZFVua25vd24iLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhcnNlPW49Pm59KSxobT1mKCIkWm9kTmV2ZXIiLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhcnNlPShuLG8pPT4obi5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6Im5ldmVyIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0Om4udmFsdWUsaW5zdDplfSksbil9KSxwbT1mKCIkWm9kVm9pZCIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGFyc2U9KG4sbyk9Pntjb25zdCBzPW4udmFsdWU7cmV0dXJuIHR5cGVvZiBzPiJ1Inx8bi5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6InZvaWQiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cyxpbnN0OmV9KSxufX0pLG1tPWYoIiRab2REYXRlIiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXJzZT0obixvKT0+e2lmKHQuY29lcmNlKXRyeXtuLnZhbHVlPW5ldyBEYXRlKG4udmFsdWUpfWNhdGNoe31jb25zdCBzPW4udmFsdWUscj1zIGluc3RhbmNlb2YgRGF0ZTtyZXR1cm4gciYmIU51bWJlci5pc05hTihzLmdldFRpbWUoKSl8fG4uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJkYXRlIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnMsLi4ucj97cmVjZWl2ZWQ6IkludmFsaWQgRGF0ZSJ9Ont9LGluc3Q6ZX0pLG59fSk7ZnVuY3Rpb24gVXUoZSx0LG4pe2UuaXNzdWVzLmxlbmd0aCYmdC5pc3N1ZXMucHVzaCguLi5NZShuLGUuaXNzdWVzKSksdC52YWx1ZVtuXT1lLnZhbHVlfWNvbnN0IGZtPWYoIiRab2RBcnJheSIsKGUsdCk9PntELmluaXQoZSx0KTtjb25zdCBuPVRlLm1lbW9pemVyO24/LmF0dGFjaChlKSxlLl96b2QucGFyc2U9KG8scyk9Pntjb25zdCByPW8udmFsdWU7aWYoIUFycmF5LmlzQXJyYXkocikpcmV0dXJuIG8uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJhcnJheSIsY29kZToiaW52YWxpZF90eXBlIixpbnB1dDpyLGluc3Q6ZX0pLG87by52YWx1ZT1uP24uYWxsb2MoZSxvLEFycmF5KHIubGVuZ3RoKSxzKTpBcnJheShyLmxlbmd0aCk7Y29uc3QgaT1bXSxjPXM/LmFib3J0RWFybHk7Zm9yKGxldCB1PTA7dTxyLmxlbmd0aDt1Kyspe2NvbnN0IGQ9clt1XSxoPXQuZWxlbWVudC5fem9kLnJ1bih7dmFsdWU6ZCxpc3N1ZXM6W119LHMpO2lmKGggaW5zdGFuY2VvZiBQcm9taXNlKWkucHVzaChoLnRoZW4ocD0+VXUocCxvLHUpKSk7ZWxzZSBpZihVdShoLG8sdSksYyYmaC5pc3N1ZXMubGVuZ3RoIT09MCYmQ2UoaCkpYnJlYWt9cmV0dXJuIGkubGVuZ3RoP1Byb21pc2UuYWxsKGkpLnRoZW4oKCk9Pm8pOm99fSk7ZnVuY3Rpb24gd3MoZSx0LG4sbyxzLHIpe2NvbnN0IGk9biBpbiBvLGM9cj09PSJvcHRpb25hbCI7aWYoISghaSYmYyYmcz09PSJvcHRpb25hbCIpKXtpZihlLmlzc3Vlcy5sZW5ndGgpe2lmKHMhPT12b2lkIDAmJmMmJiFpKXJldHVybjt0Lmlzc3Vlcy5wdXNoKC4uLk1lKG4sZS5pc3N1ZXMpKX1pZighaSYmcz09PXZvaWQgMCl7ZS5pc3N1ZXMubGVuZ3RofHx0Lmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX3R5cGUiLGV4cGVjdGVkOiJub25vcHRpb25hbCIsaW5wdXQ6dm9pZCAwLHBhdGg6W25dfSk7cmV0dXJufWUudmFsdWU9PT12b2lkIDA/KGl8fHM9PT0iZGVmYXVsdGVkIiYmIWMpJiYodC52YWx1ZVtuXT12b2lkIDApOnQudmFsdWVbbl09ZS52YWx1ZX19Y29uc3QgRnY9W107ZnVuY3Rpb24gZ20oZSl7Y29uc3QgdD1PYmplY3Qua2V5cyhlLnNoYXBlKSxuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZS5zaGFwZSksbz1uLmxlbmd0aD9uOkZ2LHM9by5sZW5ndGg/Wy4uLnQsLi4ub106dDtmb3IoY29uc3QgaSBvZiBzKWlmKCFlLnNoYXBlPy5baV0/Ll96b2Q/LnRyYWl0cz8uaGFzKCIkWm9kVHlwZSIpKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBlbGVtZW50IGF0IGtleSAiJHtTdHJpbmcoaSl9IjogZXhwZWN0ZWQgYSBab2Qgc2NoZW1hYCk7Y29uc3Qgcj1ZZChlLnNoYXBlKTtyZXR1cm57Li4uZSxhbGxLZXlzOnMsc3ltYm9sS2V5czpvLGtleVNldDpuZXcgU2V0KHQpLG51bUtleXM6dC5sZW5ndGgsb3B0aW9uYWxLZXlzOm5ldyBTZXQocil9fWZ1bmN0aW9uIGJtKGUsdCxuLG8scyxyLGkpe2NvbnN0IGM9W10sdT1zLmtleVNldCxkPXMuY2F0Y2hhbGwuX3pvZCxoPWQuZGVmLnR5cGUscD1kLm9wdGluLG09ZC5vcHRvdXQ7bGV0IHk9MDtmb3IoY29uc3QgJCBpbiB0KXtpZihpJiZuLmlzc3Vlcy5sZW5ndGghPT15KXtpZihDZShuLHkpKWJyZWFrO3k9bi5pc3N1ZXMubGVuZ3RofWlmKHUuaGFzKCQpKWNvbnRpbnVlO2lmKCQ9PT0iX19wcm90b19fIil7aD09PSJuZXZlciImJmMucHVzaCgkKTtjb250aW51ZX1pZihoPT09Im5ldmVyIil7Yy5wdXNoKCQpO2NvbnRpbnVlfWNvbnN0IF89ZC5ydW4oe3ZhbHVlOnRbJF0saXNzdWVzOltdfSxvKTtfIGluc3RhbmNlb2YgUHJvbWlzZT9lLnB1c2goXy50aGVuKEM9PndzKEMsbiwkLHQscCxtKSkpOndzKF8sbiwkLHQscCxtKX1yZXR1cm4gYy5sZW5ndGgmJm4uaXNzdWVzLnB1c2goe2NvZGU6InVucmVjb2duaXplZF9rZXlzIixrZXlzOmMsaW5wdXQ6dCxpbnN0OnIsY29udGludWU6ITB9KSxlLmxlbmd0aD9Qcm9taXNlLmFsbChlKS50aGVuKCgpPT5uKTpufWNvbnN0IHZtPWYoIiRab2RPYmplY3QiLChlLHQpPT57RC5pbml0KGUsdCk7Y29uc3Qgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsInNoYXBlIiksbz1uPy5nZXQ/bi5nZXQucmF3OnQuc2hhcGU/P3t9O2lmKG8pe2NvbnN0IGQ9KCk9Pntjb25zdCBoPXsuLi5vfTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInNoYXBlIix7dmFsdWU6aH0pLGQucmF3PWgsaH07ZC5yYXc9byxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwic2hhcGUiLHtnZXQ6ZH0pfWNvbnN0IHM9V24oKCk9PmdtKHQpKTtVKGUsInByb3BWYWx1ZXMiLGQ9Pntjb25zdCBoPWQuZGVmLnNoYXBlLHA9e307Zm9yKGNvbnN0IG0gaW4gaCl7Y29uc3QgeT1oW21dLl96b2Q7aWYoeS52YWx1ZXMpe09iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwLG0pfHxFdChwLG0sbmV3IFNldCk7Zm9yKGNvbnN0ICQgb2YgeS52YWx1ZXMpcFttXS5hZGQoJCk7eS5vcHRpbiE9PXZvaWQgMCYmcFttXS5hZGQodm9pZCAwKX19cmV0dXJuIHB9KTtjb25zdCByPUd0LGk9dC5jYXRjaGFsbDtsZXQgYztjb25zdCB1PVRlLm1lbW9pemVyO3U/LmF0dGFjaChlKSxlLl96b2QucGFyc2U9KGQsaCk9PntjPz8oYz1zLnZhbHVlKTtjb25zdCBwPWQudmFsdWU7aWYoIXIocCkpcmV0dXJuIGQuaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJvYmplY3QiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cCxpbnN0OmV9KSxkO2QudmFsdWU9dT91LmFsbG9jKGUsZCx7fSxoKTp7fTtjb25zdCBtPVtdLHk9Yy5zaGFwZSwkPWg/LmFib3J0RWFybHk7bGV0IF89ZC5pc3N1ZXMubGVuZ3RoO2Zvcihjb25zdCBDIG9mIGMuYWxsS2V5cyl7aWYoJCYmZC5pc3N1ZXMubGVuZ3RoIT09Xyl7aWYoQ2UoZCxfKSlicmVhaztfPWQuaXNzdWVzLmxlbmd0aH1pZihDPT09Il9fcHJvdG9fXyIpY29udGludWU7Y29uc3QgVD15W0NdLEE9VC5fem9kLm9wdGluLFI9VC5fem9kLm9wdG91dCxyZT1ULl96b2QucnVuKHt2YWx1ZTpwW0NdLGlzc3VlczpbXX0saCk7cmUgaW5zdGFuY2VvZiBQcm9taXNlP20ucHVzaChyZS50aGVuKFk9PndzKFksZCxDLHAsQSxSKSkpOndzKHJlLGQsQyxwLEEsUil9cmV0dXJuIGk/Ym0obSxwLGQsaCxzLnZhbHVlLGUsJD09PSEwKTptLmxlbmd0aD9Qcm9taXNlLmFsbChtKS50aGVuKCgpPT5kKTpkfX0pLGttPWYoIiRab2RPYmplY3RKSVQiLChlLHQpPT57dm0uaW5pdChlLHQpO2NvbnN0IG49ZS5fem9kLnBhcnNlLG89V24oKCk9PmdtKHQpKSxzPVRlLm1lbW9pemVyLHI9eT0+e2NvbnN0ICQ9by52YWx1ZSxfPSQuc3ltYm9sS2V5cyxDPW5ldyBrcChbInBheWxvYWQiLCJjdHgiXSx7c2hhcGU6eSxpbnN0OmUsbWVtbzpzLHN5bXM6X30pLFQ9WT0+YHNoYXBlWyR7WX1dLl96b2QucnVuKHsgdmFsdWU6IGlucHV0WyR7WX1dLCBpc3N1ZXM6IFtdIH0sIGN0eClgLEE9KFksRyk9PmAKICAgICAgICAgIGxldCAke1l9X2FiID0gZmFsc2U7CiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8ICR7WX0uaXNzdWVzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgIGNvbnN0IGlzcyA9ICR7WX0uaXNzdWVzW2ldOwogICAgICAgICAgICBpc3MucGF0aCA9IGlzcy5wYXRoID8gWyR7R30sIC4uLmlzcy5wYXRoXSA6IFske0d9XTsKICAgICAgICAgICAgcGF5bG9hZC5pc3N1ZXMucHVzaChpc3MpOwogICAgICAgICAgICBpZiAoaXNzLmNvbnRpbnVlICE9PSB0cnVlKSAke1l9X2FiID0gdHJ1ZTsKICAgICAgICAgIH0KICAgICAgICAgIGlmICgke1l9X2FiICYmIGN0eCAmJiBjdHguYWJvcnRFYXJseSkgewogICAgICAgICAgICBwYXlsb2FkLnZhbHVlID0gbmV3UmVzdWx0OwogICAgICAgICAgICByZXR1cm4gcGF5bG9hZDsKICAgICAgICAgIH1gO0Mud3JpdGUoImNvbnN0IGlucHV0ID0gcGF5bG9hZC52YWx1ZTsiKTtjb25zdCBSPU9iamVjdC5jcmVhdGUobnVsbCk7bGV0IHJlPTA7Zm9yKGNvbnN0IFkgb2YgJC5hbGxLZXlzKVJbWV09YGtleV8ke3JlKyt9YDtDLndyaXRlKHM/ImNvbnN0IG5ld1Jlc3VsdCA9IG1lbW8uYWxsb2MoaW5zdCwgcGF5bG9hZCwge30sIGN0eCk7IjoiY29uc3QgbmV3UmVzdWx0ID0ge307Iik7Zm9yKGNvbnN0IFkgb2YgJC5hbGxLZXlzKXtpZihZPT09Il9fcHJvdG9fXyIpY29udGludWU7Y29uc3QgRz1SW1ldLHg9dHlwZW9mIFk9PSJzeW1ib2wiP2BzeW1zWyR7Xy5pbmRleE9mKFkpfV1gOldkKFkpLFFlPWAke3h9IGluIGlucHV0YCx5dD15W1ldLHF0PXl0Py5fem9kPy5vcHRpbixBbj1xdCE9PXZvaWQgMCxlcz15dD8uX3pvZD8ub3B0b3V0PT09Im9wdGlvbmFsIjtpZihDLndyaXRlKGBjb25zdCAke0d9ID0gJHtUKHgpfTtgKSxBbiYmZXMpe2NvbnN0IEs9cXQ9PT0ib3B0aW9uYWwiP2Ake0d9X3ByZXNlbnRgOmAke0d9LnZhbHVlICE9PSB1bmRlZmluZWQgfHwgJHtHfV9wcmVzZW50YDtDLndyaXRlKGAKICAgICAgICBjb25zdCAke0d9X3ByZXNlbnQgPSAke1FlfTsKICAgICAgICBpZiAoISR7R30uaXNzdWVzLmxlbmd0aCB8fCAke0d9X3ByZXNlbnQpIHsKICAgICAgICAgIGlmICgke0d9Lmlzc3Vlcy5sZW5ndGgpIHske0EoRyx4KX0KICAgICAgICAgIH0KCiAgICAgICAgICBpZiAoJHtLfSkgewogICAgICAgICAgICBuZXdSZXN1bHRbJHt4fV0gPSAke0d9LnZhbHVlOwogICAgICAgICAgfQogICAgICAgIH0KCiAgICAgIGApfWVsc2UgQW4/KEMud3JpdGUoYAogICAgICAgIGlmICgke0d9Lmlzc3Vlcy5sZW5ndGgpIHske0EoRyx4KX0KICAgICAgICB9CiAgICAgIGApLHF0PT09ImRlZmF1bHRlZCI/Qy53cml0ZShgbmV3UmVzdWx0WyR7eH1dID0gJHtHfS52YWx1ZTtgKTpDLndyaXRlKGAKICAgICAgICBpZiAoJHtHfS52YWx1ZSAhPT0gdW5kZWZpbmVkIHx8ICR7UWV9KSB7CiAgICAgICAgICBuZXdSZXN1bHRbJHt4fV0gPSAke0d9LnZhbHVlOwogICAgICAgIH0KICAgICAgYCkpOkMud3JpdGUoYAogICAgICAgIGNvbnN0ICR7R31fcHJlc2VudCA9ICR7UWV9OwogICAgICAgIGlmICgke0d9Lmlzc3Vlcy5sZW5ndGgpIHske0EoRyx4KX0KICAgICAgICB9CiAgICAgICAgaWYgKCEke0d9X3ByZXNlbnQgJiYgISR7R30uaXNzdWVzLmxlbmd0aCkgewogICAgICAgICAgcGF5bG9hZC5pc3N1ZXMucHVzaCh7CiAgICAgICAgICAgIGNvZGU6ICJpbnZhbGlkX3R5cGUiLAogICAgICAgICAgICBleHBlY3RlZDogIm5vbm9wdGlvbmFsIiwKICAgICAgICAgICAgaW5wdXQ6IHVuZGVmaW5lZCwKICAgICAgICAgICAgcGF0aDogWyR7eH1dCiAgICAgICAgICB9KTsKICAgICAgICAgIGlmIChjdHggJiYgY3R4LmFib3J0RWFybHkpIHsKICAgICAgICAgICAgcGF5bG9hZC52YWx1ZSA9IG5ld1Jlc3VsdDsKICAgICAgICAgICAgcmV0dXJuIHBheWxvYWQ7CiAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoJHtHfV9wcmVzZW50KSB7CiAgICAgICAgICBuZXdSZXN1bHRbJHt4fV0gPSAke0d9LnZhbHVlOwogICAgICAgIH0KCiAgICAgIGApfXJldHVybiBDLndyaXRlKCJwYXlsb2FkLnZhbHVlID0gbmV3UmVzdWx0OyIpLEMud3JpdGUoInJldHVybiBwYXlsb2FkOyIpLEMuY29tcGlsZSgpfTtsZXQgaTtjb25zdCBjPUd0LHU9IVRlLmppdGxlc3MsaD11JiZHZC52YWx1ZSxwPXQuY2F0Y2hhbGw7bGV0IG07ZS5fem9kLnBhcnNlPSh5LCQpPT57bT8/KG09by52YWx1ZSk7Y29uc3QgXz15LnZhbHVlO3JldHVybiBjKF8pP3UmJmgmJiQ/LmFzeW5jPT09ITEmJiQuaml0bGVzcyE9PSEwPyhpfHwoaT1yKHQuc2hhcGUpKSx5PWkoeSwkKSxwP2JtKFtdLF8seSwkLG0sZSwkPy5hYm9ydEVhcmx5PT09ITApOnkpOm4oeSwkKTooeS5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6Im9iamVjdCIsY29kZToiaW52YWxpZF90eXBlIixpbnB1dDpfLGluc3Q6ZX0pLHkpfX0pO2Z1bmN0aW9uIFZ1KGUsdCxuLG8pe2Zvcihjb25zdCByIG9mIGUpaWYoci5pc3N1ZXMubGVuZ3RoPT09MClyZXR1cm4gdC52YWx1ZT1yLnZhbHVlLHQ7Y29uc3Qgcz1lLmZpbHRlcihyPT4hQ2UocikpO3JldHVybiBzLmxlbmd0aD09PTE/KHQudmFsdWU9c1swXS52YWx1ZSxzWzBdKToodC5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF91bmlvbiIsaW5wdXQ6dC52YWx1ZSxpbnN0Om4sZXJyb3JzOmUubWFwKHI9PnIuaXNzdWVzLm1hcChpPT5MZShpLG8scGUoKSkpKX0pLHQpfWNvbnN0IFhzPWYoIiRab2RVbmlvbiIsKGUsdCk9PntELmluaXQoZSx0KSxVKGUsIm9wdGluIixvPT5vLmRlZi5vcHRpb25zLnNvbWUocz0+cy5fem9kLm9wdGluPT09ImRlZmF1bHRlZCIpPyJkZWZhdWx0ZWQiOm8uZGVmLm9wdGlvbnMuc29tZShzPT5zLl96b2Qub3B0aW4hPT12b2lkIDApPyJvcHRpb25hbCI6dm9pZCAwKSxVKGUsIm9wdG91dCIsbz0+by5kZWYub3B0aW9ucy5zb21lKHM9PnMuX3pvZC5vcHRvdXQ9PT0ib3B0aW9uYWwiKT8ib3B0aW9uYWwiOnZvaWQgMCksVShlLCJ2YWx1ZXMiLG89PntpZihvLmRlZi5vcHRpb25zLmV2ZXJ5KHM9PnMuX3pvZC52YWx1ZXMpKXJldHVybiBuZXcgU2V0KG8uZGVmLm9wdGlvbnMuZmxhdE1hcChzPT5BcnJheS5mcm9tKHMuX3pvZC52YWx1ZXMpKSl9KSxVKGUsInBhdHRlcm4iLG89PntpZihvLmRlZi5vcHRpb25zLmV2ZXJ5KHM9PnMuX3pvZC5wYXR0ZXJuKSl7Y29uc3Qgcz1vLmRlZi5vcHRpb25zLm1hcChyPT5yLl96b2QucGF0dGVybik7cmV0dXJuIG5ldyBSZWdFeHAoYF4oJHtzLm1hcChyPT5kdChyLnNvdXJjZSkpLmpvaW4oInwiKX0pJGApfX0pO2NvbnN0IG49dC5vcHRpb25zLmxlbmd0aD09PTE/dC5vcHRpb25zWzBdLl96b2QucnVuOm51bGw7ZS5fem9kLnBhcnNlPShvLHMpPT57aWYobilyZXR1cm4gbihvLHMpO2xldCByPSExO2NvbnN0IGk9W107Zm9yKGNvbnN0IGMgb2YgdC5vcHRpb25zKXtjb25zdCB1PWMuX3pvZC5ydW4oe3ZhbHVlOm8udmFsdWUsaXNzdWVzOltdfSxzKTtpZih1IGluc3RhbmNlb2YgUHJvbWlzZSlpLnB1c2godSkscj0hMDtlbHNle2lmKHUuaXNzdWVzLmxlbmd0aD09PTApcmV0dXJuIHU7aS5wdXNoKHUpfX1yZXR1cm4gcj9Qcm9taXNlLmFsbChpKS50aGVuKGM9PlZ1KGMsbyxlLHMpKTpWdShpLG8sZSxzKX19KTtmdW5jdGlvbiBXdShlLHQsbixvKXtjb25zdCBzPVtdO2ZvcihsZXQgcj0wO3I8ZS5sZW5ndGg7cisrKWVbcl0uaXNzdWVzLmxlbmd0aD09PTAmJnMucHVzaChyKTtyZXR1cm4gcy5sZW5ndGg9PT0xPyh0LnZhbHVlPWVbc1swXV0udmFsdWUsdCk6KHMubGVuZ3RoPT09MD90Lmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX3VuaW9uIixpbnB1dDp0LnZhbHVlLGluc3Q6bixlcnJvcnM6ZS5tYXAocj0+ci5pc3N1ZXMubWFwKGk9PkxlKGksbyxwZSgpKSkpfSk6dC5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF91bmlvbiIsaW5wdXQ6dC52YWx1ZSxpbnN0Om4sZXJyb3JzOltdLGluY2x1c2l2ZTohMSxtYXRjaGVzOnN9KSx0KX1jb25zdCB5bT1mKCIkWm9kWG9yIiwoZSx0KT0+e1hzLmluaXQoZSx0KSx0LmluY2x1c2l2ZT0hMTtjb25zdCBuPXQub3B0aW9ucy5sZW5ndGg9PT0xP3Qub3B0aW9uc1swXS5fem9kLnJ1bjpudWxsO2UuX3pvZC5wYXJzZT0obyxzKT0+e2lmKG4pcmV0dXJuIG4obyxzKTtsZXQgcj0hMTtjb25zdCBpPVtdO2Zvcihjb25zdCBjIG9mIHQub3B0aW9ucyl7Y29uc3QgdT1jLl96b2QucnVuKHt2YWx1ZTpvLnZhbHVlLGlzc3VlczpbXX0scyk7dSBpbnN0YW5jZW9mIFByb21pc2U/KGkucHVzaCh1KSxyPSEwKTppLnB1c2godSl9cmV0dXJuIHI/UHJvbWlzZS5hbGwoaSkudGhlbihjPT5XdShjLG8sZSxzKSk6V3UoaSxvLGUscyl9fSk7ZnVuY3Rpb24gTmkoZSx0KXtjb25zdCBuPWUuX3pvZDtsZXQgbz1uLmJhZy5vcHRpb25zTWFwO298fChvPSRtKG4uZGVmKSxuLmJhZy5vcHRpb25zTWFwPW8pO2NvbnN0IHM9by5nZXQodCk7aWYocz09PW51bGwpdGhyb3cgbmV3IEVycm9yKGBBbWJpZ3VvdXMgZGlzY3JpbWluYXRvciB2YWx1ZSAiJHtTdHJpbmcodCl9ImApO3JldHVybiBzfWZ1bmN0aW9uICRtKGUpe2NvbnN0IHQ9bmV3IE1hcDtmb3IoY29uc3QgbiBvZiBlLm9wdGlvbnMpe2NvbnN0IG89bi5fem9kLnByb3BWYWx1ZXM/LltlLmRpc2NyaW1pbmF0b3JdO2lmKCFvfHxvLnNpemU9PT0wKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBkaXNjcmltaW5hdGVkIHVuaW9uIG9wdGlvbiBhdCBpbmRleCAiJHtlLm9wdGlvbnMuaW5kZXhPZihuKX0iYCk7Zm9yKGNvbnN0IHMgb2YgbylpZih0LmhhcyhzKSl7aWYocyE9PXZvaWQgMCl0aHJvdyBuZXcgRXJyb3IoYER1cGxpY2F0ZSBkaXNjcmltaW5hdG9yIHZhbHVlICIke1N0cmluZyhzKX0iYCk7dC5zZXQocyxudWxsKX1lbHNlIHQuc2V0KHMsbil9cmV0dXJuIHR9Y29uc3Qgd209ZigiJFpvZERpc2NyaW1pbmF0ZWRVbmlvbiIsKGUsdCk9Pnt0LmluY2x1c2l2ZT0hMSxYcy5pbml0KGUsdCk7Y29uc3Qgbj1lLl96b2QucGFyc2U7VShlLCJwcm9wVmFsdWVzIixzPT57Y29uc3Qgcj17fTtsZXQgaT0wO2Zvcihjb25zdCBjIG9mIHMuZGVmLm9wdGlvbnMpe2NvbnN0IHU9Yy5fem9kLnByb3BWYWx1ZXM7aWYoIXV8fE9iamVjdC5rZXlzKHUpLmxlbmd0aD09PTApdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGRpc2NyaW1pbmF0ZWQgdW5pb24gb3B0aW9uIGF0IGluZGV4ICIke3MuZGVmLm9wdGlvbnMuaW5kZXhPZihjKX0iYCk7dVtzLmRlZi5kaXNjcmltaW5hdG9yXT8uaGFzKHZvaWQgMCkmJmkrKztmb3IoY29uc3RbZCxoXW9mIE9iamVjdC5lbnRyaWVzKHUpKXtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixkKXx8RXQocixkLG5ldyBTZXQpO2Zvcihjb25zdCBwIG9mIGgpcltkXS5hZGQocCl9fXJldHVybiFzLmRlZi51bmlvbkZhbGxiYWNrJiZpPjEmJnJbcy5kZWYuZGlzY3JpbWluYXRvcl0/LmRlbGV0ZSh2b2lkIDApLHJ9KSx0Lm9wdGlvbnMuZm9yRWFjaCgocyxyKT0+e2NvbnN0IGk9TXMocy5fem9kLmRlZik7aWYoaSYmIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChpLHQuZGlzY3JpbWluYXRvcikpdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGRpc2NyaW1pbmF0ZWQgdW5pb24gb3B0aW9uIGF0IGluZGV4ICIke3J9ImApfSk7Y29uc3Qgbz1XbigoKT0+JG0odCkpO2UuX3pvZC5wYXJzZT0ocyxyKT0+e2NvbnN0IGk9cy52YWx1ZTtpZighR3QoaSkpcmV0dXJuIHMuaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdHlwZSIsZXhwZWN0ZWQ6Im9iamVjdCIsaW5wdXQ6aSxpbnN0OmV9KSxzO2NvbnN0IGM9aT8uW3QuZGlzY3JpbWluYXRvcl0sdT1vLnZhbHVlLmdldChjKTtyZXR1cm4gdSYmKGMhPT12b2lkIDB8fHIuZGlyZWN0aW9uIT09ImJhY2t3YXJkIik/dS5fem9kLnJ1bihzLHIpOnQudW5pb25GYWxsYmFja3x8ci5kaXJlY3Rpb249PT0iYmFja3dhcmQiP24ocyxyKToocy5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF91bmlvbiIsZXJyb3JzOltdLG5vdGU6Ik5vIG1hdGNoaW5nIGRpc2NyaW1pbmF0b3IiLGRpc2NyaW1pbmF0b3I6dC5kaXNjcmltaW5hdG9yLG9wdGlvbnM6QXJyYXkuZnJvbShvLnZhbHVlLmtleXMoKSkuZmlsdGVyKGQ9Pm8udmFsdWUuZ2V0KGQpIT09bnVsbCksaW5wdXQ6aSxwYXRoOlt0LmRpc2NyaW1pbmF0b3JdLGluc3Q6ZX0pLHMpfX0pLF9tPWYoIiRab2RJbnRlcnNlY3Rpb24iLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhcnNlPShuLG8pPT57Y29uc3Qgcz1uLnZhbHVlLHI9dC5sZWZ0Ll96b2QucnVuKHt2YWx1ZTpzLGlzc3VlczpbXX0sbyksaT10LnJpZ2h0Ll96b2QucnVuKHt2YWx1ZTpzLGlzc3VlczpbXX0sbyk7cmV0dXJuIHIgaW5zdGFuY2VvZiBQcm9taXNlfHxpIGluc3RhbmNlb2YgUHJvbWlzZT9Qcm9taXNlLmFsbChbcixpXSkudGhlbigoW3UsZF0pPT5LdShuLHUsZCkpOkt1KG4scixpKX19KTtmdW5jdGlvbiBfcyhlLHQpe2lmKGU9PT10KXJldHVybnt2YWxpZDohMCxkYXRhOmV9O2lmKGUgaW5zdGFuY2VvZiBEYXRlJiZ0IGluc3RhbmNlb2YgRGF0ZSYmK2U9PSt0KXJldHVybnt2YWxpZDohMCxkYXRhOmV9O2lmKHB0KGUpJiZwdCh0KSl7Y29uc3Qgbj1PYmplY3Qua2V5cyh0KSxvPU9iamVjdC5rZXlzKGUpLmZpbHRlcihyPT5uLmluZGV4T2YocikhPT0tMSkscz17Li4uZSwuLi50fTtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywiX19wcm90b19fIikmJmRlbGV0ZSBzLl9fcHJvdG9fXztmb3IoY29uc3QgciBvZiBvKXtpZihyPT09Il9fcHJvdG9fXyIpY29udGludWU7Y29uc3QgaT1fcyhlW3JdLHRbcl0pO2lmKCFpLnZhbGlkKXJldHVybnt2YWxpZDohMSxtZXJnZUVycm9yUGF0aDpbciwuLi5pLm1lcmdlRXJyb3JQYXRoXX07c1tyXT1pLmRhdGF9cmV0dXJue3ZhbGlkOiEwLGRhdGE6c319aWYoQXJyYXkuaXNBcnJheShlKSYmQXJyYXkuaXNBcnJheSh0KSl7aWYoZS5sZW5ndGghPT10Lmxlbmd0aClyZXR1cm57dmFsaWQ6ITEsbWVyZ2VFcnJvclBhdGg6W119O2NvbnN0IG49W107Zm9yKGxldCBvPTA7bzxlLmxlbmd0aDtvKyspe2NvbnN0IHM9ZVtvXSxyPXRbb10saT1fcyhzLHIpO2lmKCFpLnZhbGlkKXJldHVybnt2YWxpZDohMSxtZXJnZUVycm9yUGF0aDpbbywuLi5pLm1lcmdlRXJyb3JQYXRoXX07bi5wdXNoKGkuZGF0YSl9cmV0dXJue3ZhbGlkOiEwLGRhdGE6bn19cmV0dXJue3ZhbGlkOiExLG1lcmdlRXJyb3JQYXRoOltdfX1mdW5jdGlvbiBLdShlLHQsbil7Y29uc3Qgbz1uZXcgTWFwO2xldCBzO2NvbnN0IHI9bmV3IE1hcCxpPShkLGgpPT57bGV0IHA7aWYoZC5jb2RlPT09InVucmVjb2duaXplZF9rZXlzIiYmIWQucGF0aD8ubGVuZ3RoKXM/PyhzPWQpLHA9ZC5rZXlzO2Vsc2UgaWYoZC5jb2RlPT09ImludmFsaWRfa2V5IiYmZC5vcmlnaW49PT0icmVjb3JkIiYmZC5wYXRoPy5sZW5ndGg9PT0xKXtjb25zdCBtPVN0cmluZyhkLnBhdGhbMF0pO3IuaGFzKG0pfHxyLnNldChtLGQpLHA9W21dfWVsc2UgcmV0dXJuITE7Zm9yKGNvbnN0IG0gb2YgcClvLmhhcyhtKXx8by5zZXQobSx7fSksby5nZXQobSlbaF09ITA7cmV0dXJuITB9O2Zvcihjb25zdCBkIG9mIHQuaXNzdWVzKWkoZCwibCIpfHxlLmlzc3Vlcy5wdXNoKGQpO2Zvcihjb25zdCBkIG9mIG4uaXNzdWVzKWkoZCwiciIpfHxlLmlzc3Vlcy5wdXNoKGQpO2NvbnN0IGM9Wy4uLm9dLmZpbHRlcigoWyxkXSk9PmQubCYmZC5yKS5tYXAoKFtkXSk9PmQpO2lmKGMubGVuZ3RoKXtjb25zdCBkPXM/Yy5maWx0ZXIoaD0+cy5rZXlzLmluY2x1ZGVzKGgpKTpbXTtkLmxlbmd0aCYmZS5pc3N1ZXMucHVzaCh7Li4ucyxrZXlzOmR9KTtmb3IoY29uc3QgaCBvZiBjKSFkLmluY2x1ZGVzKGgpJiZyLmhhcyhoKSYmZS5pc3N1ZXMucHVzaChyLmdldChoKSl9Y29uc3QgdT1fcyh0LnZhbHVlLG4udmFsdWUpO2lmKCF1LnZhbGlkKXtpZihDZShlKSlyZXR1cm4gZTt0aHJvdyBuZXcgRXJyb3IoYFVubWVyZ2FibGUgaW50ZXJzZWN0aW9uLiBFcnJvciBwYXRoOiAke0pTT04uc3RyaW5naWZ5KHUubWVyZ2VFcnJvclBhdGgpfWApfXJldHVybiBlLnZhbHVlPXUuZGF0YSxlfWNvbnN0IFBpPWYoIiRab2RUdXBsZSIsKGUsdCk9PntELmluaXQoZSx0KTtjb25zdCBuPXQuaXRlbXMsbz1UZS5tZW1vaXplcjtvPy5hdHRhY2goZSksZS5fem9kLnBhcnNlPShzLHIpPT57Y29uc3QgaT1zLnZhbHVlO2lmKCFBcnJheS5pc0FycmF5KGkpKXJldHVybiBzLmlzc3Vlcy5wdXNoKHtpbnB1dDppLGluc3Q6ZSxleHBlY3RlZDoidHVwbGUiLGNvZGU6ImludmFsaWRfdHlwZSJ9KSxzO3MudmFsdWU9bz9vLmFsbG9jKGUscyxbXSxyKTpbXTtjb25zdCBjPVtdLHU9R3Uobiwib3B0aW4iKSxkPUd1KG4sIm9wdG91dCIpO2lmKCF0LnJlc3Qpe2lmKGkubGVuZ3RoPHUpcmV0dXJuIHMuaXNzdWVzLnB1c2goe2NvZGU6InRvb19zbWFsbCIsbWluaW11bTp1LGluY2x1c2l2ZTohMCxpbnB1dDppLGluc3Q6ZSxvcmlnaW46ImFycmF5In0pLHM7aS5sZW5ndGg+bi5sZW5ndGgmJnMuaXNzdWVzLnB1c2goe2NvZGU6InRvb19iaWciLG1heGltdW06bi5sZW5ndGgsaW5jbHVzaXZlOiEwLGlucHV0OmksaW5zdDplLG9yaWdpbjoiYXJyYXkifSl9Y29uc3QgaD1uZXcgQXJyYXkobi5sZW5ndGgpLHA9dC5yZXN0P3I/LmFib3J0RWFybHk6dm9pZCAwO2xldCBtPSExO2ZvcihsZXQgeT0wO3k8bi5sZW5ndGg7eSsrKXtjb25zdCAkPW5beV0uX3pvZC5ydW4oe3ZhbHVlOmlbeV0saXNzdWVzOltdfSxyKTskIGluc3RhbmNlb2YgUHJvbWlzZT9jLnB1c2goJC50aGVuKF89PntoW3ldPV99KSk6KGhbeV09JCxwJiYhbSYmJC5pc3N1ZXMubGVuZ3RoJiYobT1DZSgkKSkpfWlmKHQucmVzdCYmIW0pe2xldCB5PW4ubGVuZ3RoLTE7Y29uc3QgJD1pLnNsaWNlKG4ubGVuZ3RoKTtsZXQgXz1zLmlzc3Vlcy5sZW5ndGg7Zm9yKGNvbnN0IEMgb2YgJCl7aWYocCYmcy5pc3N1ZXMubGVuZ3RoIT09Xyl7aWYoQ2UocyxfKSlicmVhaztfPXMuaXNzdWVzLmxlbmd0aH15Kys7Y29uc3QgVD10LnJlc3QuX3pvZC5ydW4oe3ZhbHVlOkMsaXNzdWVzOltdfSxyKTtUIGluc3RhbmNlb2YgUHJvbWlzZT9jLnB1c2goVC50aGVuKEE9Pkp1KEEscyx5KSkpOkp1KFQscyx5KX19cmV0dXJuIGMubGVuZ3RoP1Byb21pc2UuYWxsKGMpLnRoZW4oKCk9Pll1KGgscyxuLGksZCkpOll1KGgscyxuLGksZCl9fSk7ZnVuY3Rpb24gR3UoZSx0KXtmb3IobGV0IG49ZS5sZW5ndGgtMTtuPj0wO24tLSlpZighKHQ9PT0ib3B0aW4iP2Vbbl0uX3pvZC5vcHRpbiE9PXZvaWQgMDplW25dLl96b2Qub3B0b3V0PT09Im9wdGlvbmFsIikpcmV0dXJuIG4rMTtyZXR1cm4gMH1mdW5jdGlvbiBKdShlLHQsbil7ZS5pc3N1ZXMubGVuZ3RoJiZ0Lmlzc3Vlcy5wdXNoKC4uLk1lKG4sZS5pc3N1ZXMpKSx0LnZhbHVlW25dPWUudmFsdWV9ZnVuY3Rpb24gWXUoZSx0LG4sbyxzKXtmb3IobGV0IHI9MDtyPG4ubGVuZ3RoO3IrKyl7Y29uc3QgaT1lW3JdLGM9cjxvLmxlbmd0aDtpZighYyYmcj49cyYmbltyXS5fem9kLm9wdGluPT09Im9wdGlvbmFsIil7dC52YWx1ZS5sZW5ndGg9cjticmVha31pZihpLmlzc3Vlcy5sZW5ndGgpe2lmKCFjJiZyPj1zKXt0LnZhbHVlLmxlbmd0aD1yO2JyZWFrfXQuaXNzdWVzLnB1c2goLi4uTWUocixpLmlzc3VlcykpfXQudmFsdWVbcl09aS52YWx1ZX1mb3IobGV0IHI9dC52YWx1ZS5sZW5ndGgtMTtyPj1vLmxlbmd0aCYmKG5bcl0uX3pvZC5vcHRvdXQ9PT0ib3B0aW9uYWwiJiZ0LnZhbHVlW3JdPT09dm9pZCAwKTtyLS0pdC52YWx1ZS5sZW5ndGg9cjtyZXR1cm4gdH1jb25zdCBTbT1mKCIkWm9kUmVjb3JkIiwoZSx0KT0+e0QuaW5pdChlLHQpO2NvbnN0IG49VGUubWVtb2l6ZXI7bj8uYXR0YWNoKGUpLGUuX3pvZC5wYXJzZT0obyxzKT0+e2NvbnN0IHI9by52YWx1ZTtpZighcHQocikpcmV0dXJuIG8uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJyZWNvcmQiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cixpbnN0OmV9KSxvO2NvbnN0IGk9W10sYz10LmtleVR5cGUuX3pvZC52YWx1ZXM7aWYoYyYmIXQucGFydGlhbCl7by52YWx1ZT1uP24uYWxsb2MoZSxvLHt9LHMpOnt9O2NvbnN0IHU9bmV3IFNldDtmb3IoY29uc3QgaCBvZiBjKWlmKHR5cGVvZiBoPT0ic3RyaW5nInx8dHlwZW9mIGg9PSJudW1iZXIifHx0eXBlb2YgaD09InN5bWJvbCIpe2lmKHUuYWRkKHR5cGVvZiBoPT0ibnVtYmVyIj9oLnRvU3RyaW5nKCk6aCksaD09PSJfX3Byb3RvX18iKWNvbnRpbnVlO2NvbnN0IHA9dC5rZXlUeXBlLl96b2QucnVuKHt2YWx1ZTpoLGlzc3VlczpbXX0scyk7aWYocCBpbnN0YW5jZW9mIFByb21pc2UpdGhyb3cgbmV3IEVycm9yKCJBc3luYyBzY2hlbWFzIG5vdCBzdXBwb3J0ZWQgaW4gb2JqZWN0IGtleXMgY3VycmVudGx5Iik7aWYocC5pc3N1ZXMubGVuZ3RoKXtvLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2tleSIsb3JpZ2luOiJyZWNvcmQiLGlzc3VlczpwLmlzc3Vlcy5tYXAoJD0+TGUoJCxzLHBlKCkpKSxpbnB1dDpoLHBhdGg6W2hdLGluc3Q6ZX0pO2NvbnRpbnVlfWNvbnN0IG09cC52YWx1ZTtpZihtPT09Il9fcHJvdG9fXyIpY29udGludWU7Y29uc3QgeT10LnZhbHVlVHlwZS5fem9kLnJ1bih7dmFsdWU6cltoXSxpc3N1ZXM6W119LHMpO3kgaW5zdGFuY2VvZiBQcm9taXNlP2kucHVzaCh5LnRoZW4oJD0+eyQuaXNzdWVzLmxlbmd0aCYmby5pc3N1ZXMucHVzaCguLi5NZShoLCQuaXNzdWVzKSksby52YWx1ZVttXT0kLnZhbHVlfSkpOih5Lmlzc3Vlcy5sZW5ndGgmJm8uaXNzdWVzLnB1c2goLi4uTWUoaCx5Lmlzc3VlcykpLG8udmFsdWVbbV09eS52YWx1ZSl9bGV0IGQ7Zm9yKGNvbnN0IGggaW4gcilpZighdS5oYXMoaCkpaWYodC5tb2RlPT09Imxvb3NlIil7aWYoaD09PSJfX3Byb3RvX18iKWNvbnRpbnVlO28udmFsdWVbaF09cltoXX1lbHNlIGQ9ZD8/W10sZC5wdXNoKGgpO2QmJmQubGVuZ3RoPjAmJm8uaXNzdWVzLnB1c2goe2NvZGU6InVucmVjb2duaXplZF9rZXlzIixpbnB1dDpyLGluc3Q6ZSxrZXlzOmQsY29udGludWU6ITB9KX1lbHNle28udmFsdWU9bj9uLmFsbG9jKGUsbyx7fSxzKTp7fTtsZXQgdTtmb3IoY29uc3QgZCBvZiBSZWZsZWN0Lm93bktleXMocikpe2lmKGQ9PT0iX19wcm90b19fInx8IU9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChyLGQpKWNvbnRpbnVlO2xldCBoPXQua2V5VHlwZS5fem9kLnJ1bih7dmFsdWU6ZCxpc3N1ZXM6W119LHMpO2lmKGggaW5zdGFuY2VvZiBQcm9taXNlKXRocm93IG5ldyBFcnJvcigiQXN5bmMgc2NoZW1hcyBub3Qgc3VwcG9ydGVkIGluIG9iamVjdCBrZXlzIGN1cnJlbnRseSIpO2lmKHR5cGVvZiBkPT0ic3RyaW5nIiYmWXMudGVzdChkKSYmaC5pc3N1ZXMubGVuZ3RoKXtjb25zdCAkPXQua2V5VHlwZS5fem9kLnJ1bih7dmFsdWU6TnVtYmVyKGQpLGlzc3VlczpbXX0scyk7aWYoJCBpbnN0YW5jZW9mIFByb21pc2UpdGhyb3cgbmV3IEVycm9yKCJBc3luYyBzY2hlbWFzIG5vdCBzdXBwb3J0ZWQgaW4gb2JqZWN0IGtleXMgY3VycmVudGx5Iik7JC5pc3N1ZXMubGVuZ3RoPT09MCYmKGg9JCl9aWYoaC5pc3N1ZXMubGVuZ3RoKXt0Lm1vZGU9PT0ibG9vc2UiP28udmFsdWVbZF09cltkXTpjPyh1PXU/P1tdLHUucHVzaChkKSk6by5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF9rZXkiLG9yaWdpbjoicmVjb3JkIixpc3N1ZXM6aC5pc3N1ZXMubWFwKCQ9PkxlKCQscyxwZSgpKSksaW5wdXQ6ZCxwYXRoOltkXSxpbnN0OmV9KTtjb250aW51ZX1jb25zdCBtPWgudmFsdWU7aWYobT09PSJfX3Byb3RvX18iKWNvbnRpbnVlO2NvbnN0IHk9dC52YWx1ZVR5cGUuX3pvZC5ydW4oe3ZhbHVlOnJbZF0saXNzdWVzOltdfSxzKTt5IGluc3RhbmNlb2YgUHJvbWlzZT9pLnB1c2goeS50aGVuKCQ9PnskLmlzc3Vlcy5sZW5ndGgmJm8uaXNzdWVzLnB1c2goLi4uTWUoZCwkLmlzc3VlcykpLG8udmFsdWVbbV09JC52YWx1ZX0pKTooeS5pc3N1ZXMubGVuZ3RoJiZvLmlzc3Vlcy5wdXNoKC4uLk1lKGQseS5pc3N1ZXMpKSxvLnZhbHVlW21dPXkudmFsdWUpfXUmJnUubGVuZ3RoPjAmJm8uaXNzdWVzLnB1c2goe2NvZGU6InVucmVjb2duaXplZF9rZXlzIixpbnB1dDpyLGluc3Q6ZSxrZXlzOnUsY29udGludWU6ITB9KX1yZXR1cm4gaS5sZW5ndGg/UHJvbWlzZS5hbGwoaSkudGhlbigoKT0+byk6b319KSxqbT1mKCIkWm9kTWFwIiwoZSx0KT0+e0QuaW5pdChlLHQpO2NvbnN0IG49VGUubWVtb2l6ZXI7bj8uYXR0YWNoKGUpLGUuX3pvZC5wYXJzZT0obyxzKT0+e2NvbnN0IHI9by52YWx1ZTtpZighKHIgaW5zdGFuY2VvZiBNYXApKXJldHVybiBvLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoibWFwIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnIsaW5zdDplfSksbztjb25zdCBpPVtdO28udmFsdWU9bj9uLmFsbG9jKGUsbyxuZXcgTWFwLHMpOm5ldyBNYXA7Y29uc3QgYz1zPy5hYm9ydEVhcmx5O2xldCB1PW8uaXNzdWVzLmxlbmd0aDtmb3IoY29uc3RbZCxoXW9mIHIpe2lmKGMmJm8uaXNzdWVzLmxlbmd0aCE9PXUpe2lmKENlKG8sdSkpYnJlYWs7dT1vLmlzc3Vlcy5sZW5ndGh9Y29uc3QgcD10LmtleVR5cGUuX3pvZC5ydW4oe3ZhbHVlOmQsaXNzdWVzOltdfSxzKSxtPXQudmFsdWVUeXBlLl96b2QucnVuKHt2YWx1ZTpoLGlzc3VlczpbXX0scyk7cCBpbnN0YW5jZW9mIFByb21pc2V8fG0gaW5zdGFuY2VvZiBQcm9taXNlP2kucHVzaChQcm9taXNlLmFsbChbcCxtXSkudGhlbigoW3ksJF0pPT57UXUoeSwkLG8sZCxyLGUscyl9KSk6UXUocCxtLG8sZCxyLGUscyl9cmV0dXJuIGkubGVuZ3RoP1Byb21pc2UuYWxsKGkpLnRoZW4oKCk9Pm8pOm99fSk7ZnVuY3Rpb24gUXUoZSx0LG4sbyxzLHIsaSl7ZS5pc3N1ZXMubGVuZ3RoJiYoa3MuaGFzKHR5cGVvZiBvKT9uLmlzc3Vlcy5wdXNoKC4uLk1lKG8sZS5pc3N1ZXMpKTpuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2tleSIsb3JpZ2luOiJtYXAiLGlucHV0OnMsaW5zdDpyLGlzc3VlczplLmlzc3Vlcy5tYXAoYz0+TGUoYyxpLHBlKCkpKX0pKSx0Lmlzc3Vlcy5sZW5ndGgmJihrcy5oYXModHlwZW9mIG8pP24uaXNzdWVzLnB1c2goLi4uTWUobyx0Lmlzc3VlcykpOm4uaXNzdWVzLnB1c2goe29yaWdpbjoibWFwIixjb2RlOiJpbnZhbGlkX2VsZW1lbnQiLGlucHV0OnMsaW5zdDpyLGtleTpvLGlzc3Vlczp0Lmlzc3Vlcy5tYXAoYz0+TGUoYyxpLHBlKCkpKX0pKSxuLnZhbHVlLnNldChlLnZhbHVlLHQudmFsdWUpfWNvbnN0IFRtPWYoIiRab2RTZXQiLChlLHQpPT57RC5pbml0KGUsdCk7Y29uc3Qgbj1UZS5tZW1vaXplcjtuPy5hdHRhY2goZSksZS5fem9kLnBhcnNlPShvLHMpPT57Y29uc3Qgcj1vLnZhbHVlO2lmKCEociBpbnN0YW5jZW9mIFNldCkpcmV0dXJuIG8uaXNzdWVzLnB1c2goe2lucHV0OnIsaW5zdDplLGV4cGVjdGVkOiJzZXQiLGNvZGU6ImludmFsaWRfdHlwZSJ9KSxvO2NvbnN0IGk9W107by52YWx1ZT1uP24uYWxsb2MoZSxvLG5ldyBTZXQscyk6bmV3IFNldDtjb25zdCBjPXM/LmFib3J0RWFybHk7bGV0IHU9by5pc3N1ZXMubGVuZ3RoO2Zvcihjb25zdCBkIG9mIHIpe2lmKGMmJm8uaXNzdWVzLmxlbmd0aCE9PXUpe2lmKENlKG8sdSkpYnJlYWs7dT1vLmlzc3Vlcy5sZW5ndGh9Y29uc3QgaD10LnZhbHVlVHlwZS5fem9kLnJ1bih7dmFsdWU6ZCxpc3N1ZXM6W119LHMpO2ggaW5zdGFuY2VvZiBQcm9taXNlP2kucHVzaChoLnRoZW4ocD0+WHUocCxvKSkpOlh1KGgsbyl9cmV0dXJuIGkubGVuZ3RoP1Byb21pc2UuYWxsKGkpLnRoZW4oKCk9Pm8pOm99fSk7ZnVuY3Rpb24gWHUoZSx0KXtlLmlzc3Vlcy5sZW5ndGgmJnQuaXNzdWVzLnB1c2goLi4uZS5pc3N1ZXMpLHQudmFsdWUuYWRkKGUudmFsdWUpfWNvbnN0IEFtPWYoIiRab2RFbnVtIiwoZSx0KT0+e0QuaW5pdChlLHQpO2NvbnN0IG49eWEodC5lbnRyaWVzKSxvPW5ldyBTZXQobik7ZS5fem9kLnZhbHVlcz1vLFUoZSwicGF0dGVybiIscz0+e2NvbnN0IHI9eWEocy5kZWYuZW50cmllcykuZmlsdGVyKGk9PmtzLmhhcyh0eXBlb2YgaSkpO3JldHVybiBuZXcgUmVnRXhwKHIubGVuZ3RoP2BeKCR7ci5tYXAoaT0+ZXQoaS50b1N0cmluZygpKSkuam9pbigifCIpfSkkYDoiXlteXFxzXFxTXSQiKX0pLGUuX3pvZC5wYXJzZT0ocyxyKT0+e2NvbnN0IGk9cy52YWx1ZTtyZXR1cm4gby5oYXMoaSl8fHMuaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdmFsdWUiLHZhbHVlczpuLGlucHV0OmksaW5zdDplfSksc319KSx6bT1mKCIkWm9kTGl0ZXJhbCIsKGUsdCk9PntELmluaXQoZSx0KTtjb25zdCBuPW5ldyBTZXQodC52YWx1ZXMpO2UuX3pvZC52YWx1ZXM9bixVKGUsInBhdHRlcm4iLG89Pntjb25zdCBzPW8uZGVmLnZhbHVlcztyZXR1cm4gbmV3IFJlZ0V4cChzLmxlbmd0aD9gXigke3MubWFwKHI9PnR5cGVvZiByPT0ic3RyaW5nIj9ldChyKTpyP2V0KHIudG9TdHJpbmcoKSk6U3RyaW5nKHIpKS5qb2luKCJ8Iil9KSRgOiJeW15cXHNcXFNdJCIpfSksZS5fem9kLnBhcnNlPShvLHMpPT57Y29uc3Qgcj1vLnZhbHVlO3JldHVybiBuLmhhcyhyKXx8by5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF92YWx1ZSIsdmFsdWVzOnQudmFsdWVzLGlucHV0OnIsaW5zdDplfSksb319KSxDbT1mKCIkWm9kRmlsZSIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGFyc2U9KG4sbyk9Pntjb25zdCBzPW4udmFsdWU7cmV0dXJuIHMgaW5zdGFuY2VvZiBGaWxlfHxuLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoiZmlsZSIsY29kZToiaW52YWxpZF90eXBlIixpbnB1dDpzLGluc3Q6ZX0pLG59fSksTm09ZigiJFpvZFRyYW5zZm9ybSIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2Qub3B0aW49Im9wdGlvbmFsIixUZS5tZW1vaXplcj8uZ3VhcmQoZSksZS5fem9kLnBhcnNlPShuLG8pPT57aWYoby5kaXJlY3Rpb249PT0iYmFja3dhcmQiKXRocm93IG5ldyBVcyhlLmNvbnN0cnVjdG9yLm5hbWUpO2NvbnN0IHM9dC50cmFuc2Zvcm0obi52YWx1ZSxuKTtpZihvLmFzeW5jKXJldHVybihzIGluc3RhbmNlb2YgUHJvbWlzZT9zOlByb21pc2UucmVzb2x2ZShzKSkudGhlbihpPT4obi52YWx1ZT1pLG4pKTtpZihzIGluc3RhbmNlb2YgUHJvbWlzZSl0aHJvdyBuZXcgaHQ7cmV0dXJuIG4udmFsdWU9cyxufX0pO2Z1bmN0aW9uIGVkKGUsdCl7cmV0dXJuIGUudmFsdWU9dC5pc3N1ZXMubGVuZ3RoP3ZvaWQgMDp0LnZhbHVlLGV9Y29uc3QgeGk9ZigiJFpvZE9wdGlvbmFsIiwoZSx0KT0+e0QuaW5pdChlLHQpLFUoZSwib3B0aW4iLG49Pm4uZGVmLmlubmVyVHlwZS5fem9kLm9wdGluPT09ImRlZmF1bHRlZCI/ImRlZmF1bHRlZCI6Im9wdGlvbmFsIiksZS5fem9kLm9wdG91dD0ib3B0aW9uYWwiLFUoZSwidmFsdWVzIixuPT57Y29uc3Qgbz1uLmRlZi5pbm5lclR5cGUuX3pvZC52YWx1ZXM7cmV0dXJuIG8/bmV3IFNldChbLi4ubyx2b2lkIDBdKTp2b2lkIDB9KSxVKGUsInBhdHRlcm4iLG49Pntjb25zdCBvPW4uZGVmLmlubmVyVHlwZS5fem9kLnBhdHRlcm47cmV0dXJuIG8/bmV3IFJlZ0V4cChgXigke2R0KG8uc291cmNlKX0pPyRgKTp2b2lkIDB9KSxlLl96b2QucGFyc2U9KG4sbyk9PntpZihuLnZhbHVlPT09dm9pZCAwKXtpZih0LmlubmVyVHlwZS5fem9kLm9wdGluIT09ImRlZmF1bHRlZCIpcmV0dXJuIG47Y29uc3Qgcz10LmlubmVyVHlwZS5fem9kLnJ1bih7dmFsdWU6bi52YWx1ZSxpc3N1ZXM6W119LG8pO3JldHVybiBzIGluc3RhbmNlb2YgUHJvbWlzZT9zLnRoZW4ocj0+ZWQobixyKSk6ZWQobixzKX1yZXR1cm4gdC5pbm5lclR5cGUuX3pvZC5ydW4obixvKX19KSxQbT1mKCIkWm9kRXhhY3RPcHRpb25hbCIsKGUsdCk9Pnt4aS5pbml0KGUsdCksVShlLCJ2YWx1ZXMiLG49Pm4uZGVmLmlubmVyVHlwZS5fem9kLnZhbHVlcyksVShlLCJwYXR0ZXJuIixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC5wYXR0ZXJuKSxlLl96b2QucGFyc2U9KG4sbyk9PnQuaW5uZXJUeXBlLl96b2QucnVuKG4sbyl9KSx4bT1mKCIkWm9kTnVsbGFibGUiLChlLHQpPT57RC5pbml0KGUsdCksVShlLCJvcHRpbiIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2Qub3B0aW4pLFUoZSwib3B0b3V0IixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC5vcHRvdXQpLFUoZSwicGF0dGVybiIsbj0+e2NvbnN0IG89bi5kZWYuaW5uZXJUeXBlLl96b2QucGF0dGVybjtyZXR1cm4gbz9uZXcgUmVnRXhwKGBeKCR7ZHQoby5zb3VyY2UpfXxudWxsKSRgKTp2b2lkIDB9KSxVKGUsInZhbHVlcyIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2QudmFsdWVzP25ldyBTZXQoWy4uLm4uZGVmLmlubmVyVHlwZS5fem9kLnZhbHVlcyxudWxsXSk6dm9pZCAwKSxlLl96b2QucGFyc2U9KG4sbyk9Pm4udmFsdWU9PT1udWxsP246dC5pbm5lclR5cGUuX3pvZC5ydW4obixvKX0pLEltPWYoIiRab2REZWZhdWx0IiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5vcHRpbj0iZGVmYXVsdGVkIixVKGUsInZhbHVlcyIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2QudmFsdWVzKSxlLl96b2QucGFyc2U9KG4sbyk9PntpZihvLmRpcmVjdGlvbj09PSJiYWNrd2FyZCIpcmV0dXJuIHQuaW5uZXJUeXBlLl96b2QucnVuKG4sbyk7aWYobi52YWx1ZT09PXZvaWQgMClyZXR1cm4gbi52YWx1ZT10LmRlZmF1bHRWYWx1ZSxuO2NvbnN0IHM9dC5pbm5lclR5cGUuX3pvZC5ydW4obixvKTtyZXR1cm4gcyBpbnN0YW5jZW9mIFByb21pc2U/cy50aGVuKHI9PnRkKHIsdCkpOnRkKHMsdCl9fSk7ZnVuY3Rpb24gdGQoZSx0KXtyZXR1cm4gZS52YWx1ZT09PXZvaWQgMCYmKGUudmFsdWU9dC5kZWZhdWx0VmFsdWUpLGV9Y29uc3QgUm09ZigiJFpvZFByZWZhdWx0IiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5vcHRpbj0iZGVmYXVsdGVkIixVKGUsInZhbHVlcyIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2QudmFsdWVzKSxlLl96b2QucGFyc2U9KG4sbyk9PihvLmRpcmVjdGlvbj09PSJiYWNrd2FyZCJ8fG4udmFsdWU9PT12b2lkIDAmJihuLnZhbHVlPXQuZGVmYXVsdFZhbHVlKSx0LmlubmVyVHlwZS5fem9kLnJ1bihuLG8pKX0pLEVtPWYoIiRab2ROb25PcHRpb25hbCIsKGUsdCk9PntELmluaXQoZSx0KSxVKGUsInZhbHVlcyIsbj0+e2NvbnN0IG89bi5kZWYuaW5uZXJUeXBlLl96b2QudmFsdWVzO3JldHVybiBvP25ldyBTZXQoWy4uLm9dLmZpbHRlcihzPT5zIT09dm9pZCAwKSk6dm9pZCAwfSksZS5fem9kLnBhcnNlPShuLG8pPT57Y29uc3Qgcz10LmlubmVyVHlwZS5fem9kLnJ1bihuLG8pO3JldHVybiBzIGluc3RhbmNlb2YgUHJvbWlzZT9zLnRoZW4ocj0+bmQocixlKSk6bmQocyxlKX19KTtmdW5jdGlvbiBuZChlLHQpe3JldHVybiFlLmlzc3Vlcy5sZW5ndGgmJmUudmFsdWU9PT12b2lkIDAmJmUuaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdHlwZSIsZXhwZWN0ZWQ6Im5vbm9wdGlvbmFsIixpbnB1dDplLnZhbHVlLGluc3Q6dH0pLGV9Y29uc3QgT209ZigiJFpvZFN1Y2Nlc3MiLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhcnNlPShuLG8pPT57aWYoby5kaXJlY3Rpb249PT0iYmFja3dhcmQiKXRocm93IG5ldyBVcygiWm9kU3VjY2VzcyIpO2NvbnN0IHM9dC5pbm5lclR5cGUuX3pvZC5ydW4obixvKTtyZXR1cm4gcyBpbnN0YW5jZW9mIFByb21pc2U/cy50aGVuKHI9PihuLnZhbHVlPXIuaXNzdWVzLmxlbmd0aD09PTAsbikpOihuLnZhbHVlPXMuaXNzdWVzLmxlbmd0aD09PTAsbil9fSk7ZnVuY3Rpb24gb2QoZSx0LG4sbyl7cmV0dXJuIHQuaXNzdWVzLmxlbmd0aD8oZS52YWx1ZT1uLmNhdGNoVmFsdWUoey4uLnQsdmFsdWU6ZS52YWx1ZSxlcnJvcjp7aXNzdWVzOnQuaXNzdWVzLm1hcChzPT5MZShzLG8scGUoKSkpfSxpbnB1dDplLnZhbHVlfSksZSk6KGUudmFsdWU9dC52YWx1ZSx0Lm1lbW8mJihlLm1lbW89ITApLGUpfWNvbnN0IFptPWYoIiRab2RDYXRjaCIsKGUsdCk9PntELmluaXQoZSx0KSxVKGUsIm9wdGluIixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC5vcHRpbj09PSJkZWZhdWx0ZWQiPyJkZWZhdWx0ZWQiOiJvcHRpb25hbCIpLFUoZSwib3B0b3V0IixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC5vcHRvdXQpLFUoZSwidmFsdWVzIixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC52YWx1ZXMpLGUuX3pvZC5wYXJzZT0obixvKT0+e2lmKG8uZGlyZWN0aW9uPT09ImJhY2t3YXJkIilyZXR1cm4gdC5pbm5lclR5cGUuX3pvZC5ydW4obixvKTtjb25zdCBzPXQuaW5uZXJUeXBlLl96b2QucnVuKHt2YWx1ZTpuLnZhbHVlLGlzc3VlczpbXX0sbyk7cmV0dXJuIHMgaW5zdGFuY2VvZiBQcm9taXNlP3MudGhlbihyPT5vZChuLHIsdCxvKSk6b2QobixzLHQsbyl9fSksTW09ZigiJFpvZE5hTiIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGFyc2U9KG4sbyk9PigodHlwZW9mIG4udmFsdWUhPSJudW1iZXIifHwhTnVtYmVyLmlzTmFOKG4udmFsdWUpKSYmbi5pc3N1ZXMucHVzaCh7aW5wdXQ6bi52YWx1ZSxpbnN0OmUsZXhwZWN0ZWQ6Im5hbiIsY29kZToiaW52YWxpZF90eXBlIn0pLG4pfSksSWk9ZigiJFpvZFBpcGUiLChlLHQpPT57RC5pbml0KGUsdCksVShlLCJ2YWx1ZXMiLG49Pm4uZGVmLmluLl96b2QudmFsdWVzKSxVKGUsIm9wdGluIixuPT5uLmRlZi5pbi5fem9kLm9wdGluKSxVKGUsIm9wdG91dCIsbj0+bi5kZWYub3V0Ll96b2Qub3B0b3V0KSxVKGUsInByb3BWYWx1ZXMiLG49Pm4uZGVmLmluLl96b2QucHJvcFZhbHVlcyksZS5fem9kLnBhcnNlPShuLG8pPT57aWYoby5kaXJlY3Rpb249PT0iYmFja3dhcmQiKXtjb25zdCByPXQub3V0Ll96b2QucnVuKG4sbyk7cmV0dXJuIHIgaW5zdGFuY2VvZiBQcm9taXNlP3IudGhlbihpPT50cyhpLHQuaW4sbykpOnRzKHIsdC5pbixvKX1jb25zdCBzPXQuaW4uX3pvZC5ydW4obixvKTtyZXR1cm4gcyBpbnN0YW5jZW9mIFByb21pc2U/cy50aGVuKHI9PnRzKHIsdC5vdXQsbykpOnRzKHMsdC5vdXQsbyl9fSk7ZnVuY3Rpb24gdHMoZSx0LG4pe3JldHVybiBlLmlzc3Vlcy5zb21lKG89Pm8uY29kZSE9PSJ1bnJlY29nbml6ZWRfa2V5cyIpPyhlLmFib3J0ZWQ9ITAsZSk6dC5fem9kLnJ1bih7dmFsdWU6ZS52YWx1ZSxpc3N1ZXM6ZS5pc3N1ZXN9LG4pfWNvbnN0IFJpPWYoIiRab2RDb2RlYyIsKGUsdCk9PntELmluaXQoZSx0KSxVKGUsInZhbHVlcyIsbj0+bi5kZWYuaW4uX3pvZC52YWx1ZXMpLFUoZSwib3B0aW4iLG49Pm4uZGVmLmluLl96b2Qub3B0aW4pLFUoZSwib3B0b3V0IixuPT5uLmRlZi5vdXQuX3pvZC5vcHRvdXQpLFUoZSwicHJvcFZhbHVlcyIsbj0+bi5kZWYuaW4uX3pvZC5wcm9wVmFsdWVzKSxlLl96b2QucGFyc2U9KG4sbyk9PntpZigoby5kaXJlY3Rpb258fCJmb3J3YXJkIik9PT0iZm9yd2FyZCIpe2NvbnN0IHI9dC5pbi5fem9kLnJ1bihuLG8pO3JldHVybiByIGluc3RhbmNlb2YgUHJvbWlzZT9yLnRoZW4oaT0+bnMoaSx0LG8pKTpucyhyLHQsbyl9ZWxzZXtjb25zdCByPXQub3V0Ll96b2QucnVuKG4sbyk7cmV0dXJuIHIgaW5zdGFuY2VvZiBQcm9taXNlP3IudGhlbihpPT5ucyhpLHQsbykpOm5zKHIsdCxvKX19fSk7ZnVuY3Rpb24gbnMoZSx0LG4pe2lmKGUuaXNzdWVzLmxlbmd0aClyZXR1cm4gZS5hYm9ydGVkPSEwLGU7aWYoKG4uZGlyZWN0aW9ufHwiZm9yd2FyZCIpPT09ImZvcndhcmQiKXtjb25zdCBzPXQudHJhbnNmb3JtKGUudmFsdWUsZSk7cmV0dXJuIHMgaW5zdGFuY2VvZiBQcm9taXNlP3MudGhlbihyPT5vcyhlLHIsdC5vdXQsbikpOm9zKGUscyx0Lm91dCxuKX1lbHNle2NvbnN0IHM9dC5yZXZlcnNlVHJhbnNmb3JtKGUudmFsdWUsZSk7cmV0dXJuIHMgaW5zdGFuY2VvZiBQcm9taXNlP3MudGhlbihyPT5vcyhlLHIsdC5pbixuKSk6b3MoZSxzLHQuaW4sbil9fWZ1bmN0aW9uIG9zKGUsdCxuLG8pe3JldHVybiBlLmlzc3Vlcy5sZW5ndGg/KGUuYWJvcnRlZD0hMCxlKTpuLl96b2QucnVuKHt2YWx1ZTp0LGlzc3VlczplLmlzc3Vlc30sbyl9Y29uc3QgcW09ZigiJFpvZFByZXByb2Nlc3MiLChlLHQpPT57SWkuaW5pdChlLHQpfSksRG09ZigiJFpvZFJlYWRvbmx5IiwoZSx0KT0+e0QuaW5pdChlLHQpLFUoZSwicHJvcFZhbHVlcyIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2QucHJvcFZhbHVlcyksVShlLCJ2YWx1ZXMiLG49Pm4uZGVmLmlubmVyVHlwZS5fem9kLnZhbHVlcyksVShlLCJvcHRpbiIsbj0+bi5kZWYuaW5uZXJUeXBlPy5fem9kPy5vcHRpbiksVShlLCJvcHRvdXQiLG49Pm4uZGVmLmlubmVyVHlwZT8uX3pvZD8ub3B0b3V0KSxlLl96b2QucGFyc2U9KG4sbyk9PntpZihvLmRpcmVjdGlvbj09PSJiYWNrd2FyZCIpcmV0dXJuIHQuaW5uZXJUeXBlLl96b2QucnVuKG4sbyk7Y29uc3Qgcz10LmlubmVyVHlwZS5fem9kLnJ1bihuLG8pO3JldHVybiBzIGluc3RhbmNlb2YgUHJvbWlzZT9zLnRoZW4oc2QpOnNkKHMpfX0pO2Z1bmN0aW9uIHNkKGUpe3JldHVybiBlLm1lbW98fChlLnZhbHVlPU9iamVjdC5mcmVlemUoZS52YWx1ZSkpLGV9ZnVuY3Rpb24gVXYoZSl7Y29uc3QgdD1lLl96b2QuZGVmO2xldCBuPXQucGF0dGVybixvPSEhdC5mb3JtYXQ/LmluY2x1ZGVzKCJpbnQiKSxzLHI7Zm9yKGNvbnN0IGMgb2YgdC5jaGVja3M/P1tdKXtjb25zdCB1PWMuX3pvZC5kZWY7dS5wYXR0ZXJuJiYobj11LnBhdHRlcm4pLG98fChvPSEhdS5mb3JtYXQ/LmluY2x1ZGVzKCJpbnQiKSk7Y29uc3QgZD11Lm1pbmltdW0/P3UubGVuZ3RoLGg9dS5tYXhpbXVtPz91Lmxlbmd0aDtkIT09dm9pZCAwJiYocz09PXZvaWQgMHx8ZD5zKSYmKHM9ZCksaCE9PXZvaWQgMCYmKHI9PT12b2lkIDB8fGg8cikmJihyPWgpfWlmKG4pcmV0dXJuIG4uc291cmNlO2lmKHMhPT12b2lkIDAmJnIhPT12b2lkIDAmJnM+cilyZXR1cm4iKD8hKSI7aWYocyE9PXZvaWQgMHx8ciE9PXZvaWQgMClyZXR1cm4gVWgoe21pbmltdW06cyxtYXhpbXVtOnJ9KS5zb3VyY2U7Y29uc3QgaT1lLl96b2QucGF0dGVybjtyZXR1cm4obyYmaT09PVlzP1doOmkpPy5zb3VyY2V9ZnVuY3Rpb24gemEoZSl7Y29uc3QgdD1lLl96b2QuZGVmLG49ZS5fem9kLnBhdHRlcm4/LnNvdXJjZSxvPXQuaW5uZXJUeXBlPz9lLl96b2QuaW5uZXJUeXBlO2lmKG8pe2NvbnN0IHM9by5fem9kLnBhdHRlcm4/LnNvdXJjZSxyPXphKG8pO3JldHVybiBuJiZzJiZyJiZyIT09cz9uLnJlcGxhY2UoZHQocyksKCk9PmR0KHIpKTpufWlmKHQub3B0aW9ucyl7Y29uc3Qgcz10Lm9wdGlvbnMubWFwKHphKTtpZihzLmV2ZXJ5KEJvb2xlYW4pKXJldHVybmBeKCR7cy5tYXAocj0+ZHQocikpLmpvaW4oInwiKX0pJGB9cmV0dXJuIFV2KGUpfWNvbnN0IExtPWYoIiRab2RUZW1wbGF0ZUxpdGVyYWwiLChlLHQpPT57RC5pbml0KGUsdCk7Y29uc3Qgbj1bXTtmb3IoY29uc3QgbyBvZiB0LnBhcnRzKWlmKHR5cGVvZiBvPT0ib2JqZWN0IiYmbyE9PW51bGwpe2NvbnN0IHM9emEobyk7aWYoIXMpdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlbXBsYXRlIGxpdGVyYWwgcGFydCwgbm8gcGF0dGVybiBmb3VuZDogJHtbLi4uby5fem9kLnRyYWl0c10uc2hpZnQoKX1gKTtuLnB1c2goZHQocykpfWVsc2UgaWYobz09PW51bGx8fEpkLmhhcyh0eXBlb2Ygbykpbi5wdXNoKGV0KGAke299YCkpO2Vsc2UgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlbXBsYXRlIGxpdGVyYWwgcGFydDogJHtvfWApO2UuX3pvZC5wYXR0ZXJuPW5ldyBSZWdFeHAoYF4ke24uam9pbigiIil9JGApLGUuX3pvZC5wYXJzZT0obyxzKT0+dHlwZW9mIG8udmFsdWUhPSJzdHJpbmciPyhvLmlzc3Vlcy5wdXNoKHtpbnB1dDpvLnZhbHVlLGluc3Q6ZSxleHBlY3RlZDoic3RyaW5nIixjb2RlOiJpbnZhbGlkX3R5cGUifSksbyk6KGUuX3pvZC5wYXR0ZXJuLmxhc3RJbmRleD0wLGUuX3pvZC5wYXR0ZXJuLnRlc3Qoby52YWx1ZSl8fG8uaXNzdWVzLnB1c2goe2lucHV0Om8udmFsdWUsaW5zdDplLGNvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6dC5mb3JtYXQ/PyJ0ZW1wbGF0ZV9saXRlcmFsIixwYXR0ZXJuOmUuX3pvZC5wYXR0ZXJuLnNvdXJjZX0pLG8pfSksQm09ZigiJFpvZEZ1bmN0aW9uIiwoZSx0KT0+KEQuaW5pdChlLHQpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfZGVmIix7dmFsdWU6dH0pLGUuX3pvZC5kZWY9dCxlLmltcGxlbWVudD1uPT57aWYodHlwZW9mIG4hPSJmdW5jdGlvbiIpdGhyb3cgbmV3IEVycm9yKCJpbXBsZW1lbnQoKSBtdXN0IGJlIGNhbGxlZCB3aXRoIGEgZnVuY3Rpb24iKTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KGZ1bmN0aW9uKC4uLm8pe2NvbnN0IHM9ZS5fZGVmLmlucHV0P1NhKGUuX2RlZi5pbnB1dCxvKTpvLHI9UmVmbGVjdC5hcHBseShuLHRoaXMscyk7cmV0dXJuIGUuX2RlZi5vdXRwdXQ/U2EoZS5fZGVmLm91dHB1dCxyKTpyfSwiX3pvZCIse3ZhbHVlOmUuX3pvZCxlbnVtZXJhYmxlOiExfSl9LGUuaW1wbGVtZW50QXN5bmM9bj0+e2lmKHR5cGVvZiBuIT0iZnVuY3Rpb24iKXRocm93IG5ldyBFcnJvcigiaW1wbGVtZW50QXN5bmMoKSBtdXN0IGJlIGNhbGxlZCB3aXRoIGEgZnVuY3Rpb24iKTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KGFzeW5jIGZ1bmN0aW9uKC4uLm8pe2NvbnN0IHM9ZS5fZGVmLmlucHV0P2F3YWl0IGphKGUuX2RlZi5pbnB1dCxvKTpvLHI9YXdhaXQgUmVmbGVjdC5hcHBseShuLHRoaXMscyk7cmV0dXJuIGUuX2RlZi5vdXRwdXQ/YXdhaXQgamEoZS5fZGVmLm91dHB1dCxyKTpyfSwiX3pvZCIse3ZhbHVlOmUuX3pvZCxlbnVtZXJhYmxlOiExfSl9LGUuX3pvZC5wYXJzZT0obixvKT0+dHlwZW9mIG4udmFsdWUhPSJmdW5jdGlvbiI/KG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdHlwZSIsZXhwZWN0ZWQ6ImZ1bmN0aW9uIixpbnB1dDpuLnZhbHVlLGluc3Q6ZX0pLG4pOihlLl9kZWYub3V0cHV0JiZlLl9kZWYub3V0cHV0Ll96b2QuZGVmLnR5cGU9PT0icHJvbWlzZSI/bi52YWx1ZT1lLmltcGxlbWVudEFzeW5jKG4udmFsdWUpOm4udmFsdWU9ZS5pbXBsZW1lbnQobi52YWx1ZSksbiksZS5pbnB1dD0oLi4ubik9Pntjb25zdCBvPWUuY29uc3RydWN0b3I7cmV0dXJuIEFycmF5LmlzQXJyYXkoblswXSk/bmV3IG8oe3R5cGU6ImZ1bmN0aW9uIixpbnB1dDpuZXcgUGkoe3R5cGU6InR1cGxlIixpdGVtczpuWzBdLHJlc3Q6blsxXX0pLG91dHB1dDplLl9kZWYub3V0cHV0fSk6bmV3IG8oe3R5cGU6ImZ1bmN0aW9uIixpbnB1dDpuWzBdLG91dHB1dDplLl9kZWYub3V0cHV0fSl9LGUub3V0cHV0PW49Pntjb25zdCBvPWUuY29uc3RydWN0b3I7cmV0dXJuIG5ldyBvKHt0eXBlOiJmdW5jdGlvbiIsaW5wdXQ6ZS5fZGVmLmlucHV0LG91dHB1dDpufSl9LGUpKSxIbT1mKCIkWm9kUHJvbWlzZSIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGFyc2U9KG4sbyk9PlByb21pc2UucmVzb2x2ZShuLnZhbHVlKS50aGVuKHM9PnQuaW5uZXJUeXBlLl96b2QucnVuKHt2YWx1ZTpzLGlzc3VlczpbXX0sbykpfSksRWk9ZigiJFpvZExhenkiLChlLHQpPT57RC5pbml0KGUsdCksRmQoZS5fem9kLCJpbm5lclR5cGUiLCgpPT57Y29uc3Qgbj10O3JldHVybiBuLl9jYWNoZWRJbm5lcnx8KG4uX2NhY2hlZElubmVyPXQuZ2V0dGVyKCkpLG4uX2NhY2hlZElubmVyfSksVShlLCJwYXR0ZXJuIixuPT5uLmlubmVyVHlwZT8uX3pvZD8ucGF0dGVybiksVShlLCJwcm9wVmFsdWVzIixuPT5uLmlubmVyVHlwZT8uX3pvZD8ucHJvcFZhbHVlcyksVShlLCJvcHRpbiIsbj0+bi5pbm5lclR5cGU/Ll96b2Q/Lm9wdGluPz92b2lkIDApLFUoZSwib3B0b3V0IixuPT5uLmlubmVyVHlwZT8uX3pvZD8ub3B0b3V0Pz92b2lkIDApLGUuX3pvZC5wYXJzZT0obixvKT0+ZS5fem9kLmlubmVyVHlwZS5fem9kLnJ1bihuLG8pfSksRm09ZigiJFpvZEN1c3RvbSIsKGUsdCk9PnthZS5pbml0KGUsdCksRC5pbml0KGUsdCksZS5fem9kLnBhcnNlPShuLG8pPT5uLGUuX3pvZC5jaGVjaz1uPT57Y29uc3Qgbz1uLnZhbHVlLHM9dC5mbihvKTtpZihzIGluc3RhbmNlb2YgUHJvbWlzZSlyZXR1cm4gcy50aGVuKHI9PnJkKHIsbixvLGUpKTtyZChzLG4sbyxlKX19KTtmdW5jdGlvbiByZChlLHQsbixvKXtpZighZSl7Y29uc3Qgcz17Y29kZToiY3VzdG9tIixpbnB1dDpuLGluc3Q6byxwYXRoOlsuLi5vLl96b2QuZGVmLnBhdGg/P1tdXSxjb250aW51ZTohby5fem9kLmRlZi5hYm9ydH07by5fem9kLmRlZi5wYXJhbXMmJihzLnBhcmFtcz1vLl96b2QuZGVmLnBhcmFtcyksdC5pc3N1ZXMucHVzaChKdChzKSl9fWNsYXNzIFVtIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoKXtzdXBlcigiQ2Fubm90IHBhcnNlIGEgcmVmZXJlbmNlIGN5Y2xlIHRoYXQgY2xvc2VzIHRocm91Z2ggYSB0cmFuc2Zvcm0iKSx0aGlzLm5hbWU9IlpvZEN5Y2xpY0Vycm9yIn19Y29uc3QgQ2E9In5tZW1vIixhZD1bXTtmdW5jdGlvbiBWbShlKXtyZXR1cm4gZSE9PW51bGwmJnR5cGVvZiBlPT0ib2JqZWN0In1mdW5jdGlvbiBtYShlKXtyZXR1cm4gZS5tYXAodD0+dC5wYXRoP3suLi50LHBhdGg6dC5wYXRoLnNsaWNlKCl9OnsuLi50fSl9Y29uc3QgV209bmV3IFdlYWtNYXAsTHQ9MCxwcz0xLEluPTI7ZnVuY3Rpb24gUm4oZSx0LG4pe2NvbnN0IG89V20uZ2V0KGUpO2lmKG8hPT12b2lkIDApcmV0dXJuIG8/SW46THQ7aWYodC5oYXMoZSkpcmV0dXJuIEluO3QuYWRkKGUpO2xldCBzPUx0O2NvbnN0IHI9aD0+e2lmKHMhPT1JbiYmaD8uX3pvZCl7Y29uc3QgcD1SbihoLHQsbik7cD5zJiYocz1wKX19LGk9KGgscCk9PntsZXQgbT1MdDtmb3IoY29uc3QgeSBvZiBSZWZsZWN0Lm93bktleXMoaCkpe2NvbnN0ICQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihoLHkpO2lmKCEkLmVudW1lcmFibGUpY29udGludWU7Y29uc3QgXz0kLmdldD9wczokLnZhbHVlPy5fem9kP1JuKCQudmFsdWUsdCxuKTpMdDtfPm0mJihtPV8pfXJldHVybiBtfSxjPWg9PntoPnMmJihzPWgpfSx1PWUuX3pvZC5kZWY7c3dpdGNoKHUudHlwZSl7Y2FzZSJvYmplY3QiOntjb25zdCBoPU1zKHUpO2MoaD9pKGgpOnBzKSxyKHUuY2F0Y2hhbGwpO2JyZWFrfWNhc2UiYXJyYXkiOnIodS5lbGVtZW50KTticmVhaztjYXNlInR1cGxlIjpmb3IoY29uc3QgaCBvZiB1Lml0ZW1zKXIoaCk7cih1LnJlc3QpO2JyZWFrO2Nhc2UicmVjb3JkIjpjYXNlIm1hcCI6cih1LmtleVR5cGUpLHIodS52YWx1ZVR5cGUpO2JyZWFrO2Nhc2Uic2V0IjpyKHUudmFsdWVUeXBlKTticmVhaztjYXNlInVuaW9uIjpmb3IoY29uc3QgaCBvZiB1Lm9wdGlvbnMpcihoKTticmVhaztjYXNlImludGVyc2VjdGlvbiI6cih1LmxlZnQpLHIodS5yaWdodCk7YnJlYWs7Y2FzZSJvcHRpb25hbCI6Y2FzZSJudWxsYWJsZSI6Y2FzZSJkZWZhdWx0IjpjYXNlInByZWZhdWx0IjpjYXNlImNhdGNoIjpjYXNlInJlYWRvbmx5IjpjYXNlIm5vbm9wdGlvbmFsIjpjYXNlInByb21pc2UiOmNhc2Uic3VjY2VzcyI6cih1LmlubmVyVHlwZSk7YnJlYWs7Y2FzZSJwaXBlIjpyKHUuaW4pLHIodS5vdXQpO2JyZWFrO2Nhc2UiZnVuY3Rpb24iOnIodS5pbnB1dCkscih1Lm91dHB1dCk7YnJlYWs7Y2FzZSJsYXp5Ijp7Y29uc3QgaD11Ll9jYWNoZWRJbm5lcj8/KG4/ZS5fem9kLmlubmVyVHlwZTp2b2lkIDApO2MoaD9SbihoLHQsITEpOnBzKTticmVha31jYXNlInRlbXBsYXRlX2xpdGVyYWwiOmNhc2Uic3RyaW5nIjpjYXNlIm51bWJlciI6Y2FzZSJpbnQiOmNhc2UiYm9vbGVhbiI6Y2FzZSJiaWdpbnQiOmNhc2Uic3ltYm9sIjpjYXNlInVuZGVmaW5lZCI6Y2FzZSJudWxsIjpjYXNlInZvaWQiOmNhc2UibmV2ZXIiOmNhc2UiYW55IjpjYXNlInVua25vd24iOmNhc2UiZGF0ZSI6Y2FzZSJuYW4iOmNhc2UiZW51bSI6Y2FzZSJsaXRlcmFsIjpjYXNlImZpbGUiOmNhc2UidHJhbnNmb3JtIjpjYXNlImN1c3RvbSI6YnJlYWs7ZGVmYXVsdDpmb3IoY29uc3QgaCBpbiB1KXtjb25zdCBwPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodSxoKTtpZighcHx8cC5nZXQpY29udGludWU7Y29uc3QgbT1wLnZhbHVlO2lmKCEoIW18fHR5cGVvZiBtIT0ib2JqZWN0Iikpe2lmKG0uX3pvZClyKG0pO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShtKSlmb3IoY29uc3QgeSBvZiBtKXIoeSl9fX1yZXR1cm4gdC5kZWxldGUoZSksVnYoZSxzKX1mdW5jdGlvbiBWdihlLHQpe3JldHVybiB0IT09cHMmJldtLnNldChlLHQ9PT1JbiksdH1mdW5jdGlvbiBXdihlKXtyZXR1cm4gUm4oZSxuZXcgU2V0LCEwKSE9PUx0fWZ1bmN0aW9uIEt2KGUsdCl7bGV0IG49ZS5idWNrZXRzLmdldCh0KTtyZXR1cm4gbnx8KG49bmV3IFdlYWtNYXAsZS5idWNrZXRzLnNldCh0LG4pKSxufWxldCBzcztjb25zdCBycz1bXSxHdj17YWxsb2MoZSx0LG4pe2NvbnN0IG89c3M7aWYoIW8pcmV0dXJuIG47c3M9dm9pZCAwO2NvbnN0IHM9e3ZhbHVlOm4saXNzdWVzOm51bGx9O3JldHVybiBvLnNldCh0LnZhbHVlLHMpLHJzLnB1c2gocyksbn0sZ3VhcmQoZSl7dmFyIHQ7KHQ9ZS5fem9kKS5kZWZlcnJlZD8/KHQuZGVmZXJyZWQ9W10pLGUuX3pvZC5kZWZlcnJlZC5wdXNoKCgpPT57Y29uc3Qgbj1lLl96b2QucGFyc2Usbz0ocyxyKT0+e2lmKHIuZGlyZWN0aW9uIT09ImJhY2t3YXJkIiYmS20ocixzLnZhbHVlKSl0aHJvdyBuZXcgVW07cmV0dXJuIG4ocyxyKX07ZS5fem9kLnBhcnNlPW8sZS5fem9kLnJ1bj09PW4mJihlLl96b2QucnVuPW8pfSl9LGF0dGFjaChlKXt2YXIgdDtsZXQgbixvPSExLHMscjsodD1lLl96b2QpLmRlZmVycmVkPz8odC5kZWZlcnJlZD1bXSksZS5fem9kLmRlZmVycmVkLnB1c2goKCk9Pntjb25zdCBpPWUuX3pvZC5wYXJzZSxjPSh1LGQpPT57aWYobj09PXZvaWQgMCl7Y29uc3QgVD1SbihlLG5ldyBTZXQsITEpO2lmKFQ9PT1MdClyZXR1cm4gZS5fem9kLnBhcnNlPWksZS5fem9kLnJ1bj09PWMmJihlLl96b2QucnVuPWkpLGkodSxkKTtUPT09SW58fG8/bj0hMDpvPSEwfWNvbnN0IGg9dS52YWx1ZTtpZighVm0oaCkpcmV0dXJuIGkodSxkKTtsZXQgcD1kW0NhXTtwfHwocD17YnVja2V0czpuZXcgV2Vha01hcCxiYWNrRWRnZXM6dm9pZCAwfSxkW0NhXT1wKTtsZXQgbTtzPT09ZD9tPXI6KG09S3YocCxlKSxzPWQscj1tKTtjb25zdCB5PW0uZ2V0KGgpO2lmKHkpcmV0dXJuIHUudmFsdWU9eS52YWx1ZSx5Lmlzc3Vlcz95Lmlzc3Vlcy5sZW5ndGgmJnUuaXNzdWVzLnB1c2goLi4ubWEoeS5pc3N1ZXMpKToodS5tZW1vPSEwLHAuYmFja0VkZ2VzPz8ocC5iYWNrRWRnZXM9bmV3IFdlYWtTZXQpLHAuYmFja0VkZ2VzLmFkZCh5LnZhbHVlKSksdTtzcz1tO2NvbnN0ICQ9cnMubGVuZ3RoLF89aSh1LGQpO3NzPXZvaWQgMDtjb25zdCBDPXJzLmxlbmd0aD4kP3JzLnBvcCgpOnZvaWQgMDtyZXR1cm4gXyBpbnN0YW5jZW9mIFByb21pc2U/Xy50aGVuKFQ9PihDJiYoQy5pc3N1ZXM9VC5pc3N1ZXMubGVuZ3RoP21hKFQuaXNzdWVzKTphZCksVCkpOihDJiYoQy5pc3N1ZXM9Xy5pc3N1ZXMubGVuZ3RoP21hKF8uaXNzdWVzKTphZCksXyl9O2UuX3pvZC5wYXJzZT1jLGUuX3pvZC5ydW49PT1pJiYoZS5fem9kLnJ1bj1jKX0pfX07ZnVuY3Rpb24gZXIoKXtyZXR1cm4gR3Z9ZnVuY3Rpb24gS20oZSx0KXtjb25zdCBuPWVbQ2FdPy5iYWNrRWRnZXM7cmV0dXJuIG4hPT12b2lkIDAmJlZtKHQpJiZuLmhhcyh0KX1jb25zdCBKdj0oKT0+e2NvbnN0IGU9e3N0cmluZzp7dW5pdDoiY2hhcmFjdGVycyIsdmVyYjoidG8gaGF2ZSJ9LGZpbGU6e3VuaXQ6ImJ5dGVzIix2ZXJiOiJ0byBoYXZlIn0sYXJyYXk6e3VuaXQ6Iml0ZW1zIix2ZXJiOiJ0byBoYXZlIn0sc2V0Ont1bml0OiJpdGVtcyIsdmVyYjoidG8gaGF2ZSJ9LG1hcDp7dW5pdDoiZW50cmllcyIsdmVyYjoidG8gaGF2ZSJ9fTtmdW5jdGlvbiB0KHIpe3JldHVybiBlW3JdPz9udWxsfWNvbnN0IG49e3JlZ2V4OiJpbnB1dCIsZW1haWw6ImVtYWlsIGFkZHJlc3MiLHVybDoiVVJMIixlbW9qaToiZW1vamkiLHV1aWQ6IlVVSUQiLHV1aWR2NDoiVVVJRHY0Iix1dWlkdjY6IlVVSUR2NiIsbmFub2lkOiJuYW5vaWQiLGd1aWQ6IkdVSUQiLGN1aWQ6ImN1aWQiLGN1aWQyOiJjdWlkMiIsdWxpZDoiVUxJRCIseGlkOiJYSUQiLGtzdWlkOiJLU1VJRCIsZGF0ZXRpbWU6IklTTyBkYXRldGltZSIsZGF0ZToiSVNPIGRhdGUiLHRpbWU6IklTTyB0aW1lIixkdXJhdGlvbjoiSVNPIGR1cmF0aW9uIixpcHY0OiJJUHY0IGFkZHJlc3MiLGlwdjY6IklQdjYgYWRkcmVzcyIsbWFjOiJNQUMgYWRkcmVzcyIsY2lkcnY0OiJJUHY0IHJhbmdlIixjaWRydjY6IklQdjYgcmFuZ2UiLGJhc2U2NDoiYmFzZTY0LWVuY29kZWQgc3RyaW5nIixiYXNlNjR1cmw6ImJhc2U2NHVybC1lbmNvZGVkIHN0cmluZyIsanNvbl9zdHJpbmc6IkpTT04gc3RyaW5nIixlMTY0OiJFLjE2NCBudW1iZXIiLGN1cnJlbmN5X2NvZGU6ImN1cnJlbmN5IGNvZGUiLGNyZWRpdF9jYXJkOiJjcmVkaXQgY2FyZCBudW1iZXIiLGliYW46IklCQU4iLGp3dDoiSldUIix0ZW1wbGF0ZV9saXRlcmFsOiJpbnB1dCJ9LG89e25hbjoiTmFOIn07ZnVuY3Rpb24gcyhyLGkpe3JldHVybiByPT09Im51bWJlciImJnR5cGVvZiBpPT0ibnVtYmVyIiYmIU51bWJlci5pc0Zpbml0ZShpKT9TdHJpbmcoaSk6b1tyXT8/cn1yZXR1cm4gcj0+e3N3aXRjaChyLmNvZGUpe2Nhc2UiaW52YWxpZF90eXBlIjp7Y29uc3QgaT1zKHIuZXhwZWN0ZWQpLGM9Y2goci5pbnB1dCksdT1zKGMsci5pbnB1dCk7cmV0dXJuYEludmFsaWQgaW5wdXQ6IGV4cGVjdGVkICR7aX0sIHJlY2VpdmVkICR7dX1gfWNhc2UiaW52YWxpZF92YWx1ZSI6cmV0dXJuIHIudmFsdWVzLmxlbmd0aD09PTE/YEludmFsaWQgaW5wdXQ6IGV4cGVjdGVkICR7WGEoci52YWx1ZXNbMF0pfWA6YEludmFsaWQgb3B0aW9uOiBleHBlY3RlZCBvbmUgb2YgJHskYShyLnZhbHVlcywifCIpfWA7Y2FzZSJ0b29fYmlnIjp7Y29uc3QgaT1yLmV4YWN0PyJleGFjdGx5ICI6ci5pbmNsdXNpdmU/Ijw9IjoiPCIsYz10KHIub3JpZ2luKTtyZXR1cm4gYz9gVG9vIGJpZzogZXhwZWN0ZWQgJHtyLm9yaWdpbj8/InZhbHVlIn0gdG8gaGF2ZSAke2l9JHtyLm1heGltdW0udG9TdHJpbmcoKX0gJHtjLnVuaXQ/PyJlbGVtZW50cyJ9YDpgVG9vIGJpZzogZXhwZWN0ZWQgJHtyLm9yaWdpbj8/InZhbHVlIn0gdG8gYmUgJHtpfSR7ci5tYXhpbXVtLnRvU3RyaW5nKCl9YH1jYXNlInRvb19zbWFsbCI6e2NvbnN0IGk9ci5leGFjdD8iZXhhY3RseSAiOnIuaW5jbHVzaXZlPyI+PSI6Ij4iLGM9dChyLm9yaWdpbik7cmV0dXJuIGM/YFRvbyBzbWFsbDogZXhwZWN0ZWQgJHtyLm9yaWdpbn0gdG8gaGF2ZSAke2l9JHtyLm1pbmltdW0udG9TdHJpbmcoKX0gJHtjLnVuaXR9YDpgVG9vIHNtYWxsOiBleHBlY3RlZCAke3Iub3JpZ2lufSB0byBiZSAke2l9JHtyLm1pbmltdW0udG9TdHJpbmcoKX1gfWNhc2UiaW52YWxpZF9mb3JtYXQiOntjb25zdCBpPXI7cmV0dXJuIGkuZm9ybWF0PT09InN0YXJ0c193aXRoIj9gSW52YWxpZCBzdHJpbmc6IG11c3Qgc3RhcnQgd2l0aCAiJHtpLnByZWZpeH0iYDppLmZvcm1hdD09PSJlbmRzX3dpdGgiP2BJbnZhbGlkIHN0cmluZzogbXVzdCBlbmQgd2l0aCAiJHtpLnN1ZmZpeH0iYDppLmZvcm1hdD09PSJpbmNsdWRlcyI/YEludmFsaWQgc3RyaW5nOiBtdXN0IGluY2x1ZGUgIiR7aS5pbmNsdWRlc30iYDppLmZvcm1hdD09PSJyZWdleCI/YEludmFsaWQgc3RyaW5nOiBtdXN0IG1hdGNoIHBhdHRlcm4gJHtpLnBhdHRlcm59YDpgSW52YWxpZCAke25baS5mb3JtYXRdPz9yLmZvcm1hdH1gfWNhc2Uibm90X211bHRpcGxlX29mIjpyZXR1cm5gSW52YWxpZCBudW1iZXI6IG11c3QgYmUgYSBtdWx0aXBsZSBvZiAke3IuZGl2aXNvcn1gO2Nhc2UidW5yZWNvZ25pemVkX2tleXMiOnJldHVybmBVbnJlY29nbml6ZWQga2V5JHtyLmtleXMubGVuZ3RoPjE/InMiOiIifTogJHskYShyLmtleXMsIiwgIil9YDtjYXNlImludmFsaWRfa2V5IjpyZXR1cm5gSW52YWxpZCBrZXkgaW4gJHtyLm9yaWdpbn1gO2Nhc2UiaW52YWxpZF91bmlvbiI6cmV0dXJuIHIub3B0aW9ucyYmQXJyYXkuaXNBcnJheShyLm9wdGlvbnMpJiZyLm9wdGlvbnMubGVuZ3RoPjA/YEludmFsaWQgZGlzY3JpbWluYXRvciB2YWx1ZS4gRXhwZWN0ZWQgJHtyLm9wdGlvbnMubWFwKGM9PmAnJHtjfSdgKS5qb2luKCIgfCAiKX1gOnIuaW5jbHVzaXZlPT09ITE/IkludmFsaWQgaW5wdXQ6IG1vcmUgdGhhbiBvbmUgb3B0aW9uIG1hdGNoZWQiOiJJbnZhbGlkIGlucHV0IjtjYXNlImludmFsaWRfZWxlbWVudCI6cmV0dXJuYEludmFsaWQgdmFsdWUgaW4gJHtyLm9yaWdpbn1gO2RlZmF1bHQ6cmV0dXJuIkludmFsaWQgaW5wdXQifX19O2Z1bmN0aW9uIEdtKCl7cmV0dXJue2xvY2FsZUVycm9yOkp2KCl9fWNvbnN0IE9pPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCxlbjpHbX0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKTt2YXIgaWQ7Y29uc3QgWmk9U3ltYm9sKCJab2RPdXRwdXQiKSxNaT1TeW1ib2woIlpvZElucHV0Iik7Y2xhc3MgSm17Y29uc3RydWN0b3IoKXt0aGlzLl9tYXA9bmV3IFdlYWtNYXAsdGhpcy5faWRtYXA9bmV3IE1hcH1hZGQodCwuLi5uKXtjb25zdCBvPW5bMF07cmV0dXJuIHRoaXMuX21hcC5zZXQodCxvKSxvJiZ0eXBlb2Ygbz09Im9iamVjdCImJiJpZCJpbiBvJiZ0aGlzLl9pZG1hcC5zZXQoby5pZCx0KSx0aGlzfWNsZWFyKCl7cmV0dXJuIHRoaXMuX21hcD1uZXcgV2Vha01hcCx0aGlzLl9pZG1hcD1uZXcgTWFwLHRoaXN9cmVtb3ZlKHQpe2NvbnN0IG49dGhpcy5fbWFwLmdldCh0KTtyZXR1cm4gbiYmdHlwZW9mIG49PSJvYmplY3QiJiYiaWQiaW4gbiYmdGhpcy5faWRtYXAuZGVsZXRlKG4uaWQpLHRoaXMuX21hcC5kZWxldGUodCksdGhpc31nZXQodCl7Y29uc3Qgbj10Ll96b2QucGFyZW50O2lmKG4pe2NvbnN0IG89ey4uLnRoaXMuZ2V0KG4pPz97fX07ZGVsZXRlIG8uaWQ7Y29uc3Qgcz17Li4ubywuLi50aGlzLl9tYXAuZ2V0KHQpfTtyZXR1cm4gT2JqZWN0LmtleXMocykubGVuZ3RoP3M6dm9pZCAwfXJldHVybiB0aGlzLl9tYXAuZ2V0KHQpfWhhcyh0KXtyZXR1cm4gdGhpcy5fbWFwLmhhcyh0KX19ZnVuY3Rpb24gdHIoKXtyZXR1cm4gbmV3IEptfShpZD1nbG9iYWxUaGlzKS5fX3pvZF9nbG9iYWxSZWdpc3RyeT8/KGlkLl9fem9kX2dsb2JhbFJlZ2lzdHJ5PXRyKCkpO2NvbnN0IHFlPWdsb2JhbFRoaXMuX196b2RfZ2xvYmFsUmVnaXN0cnkscWk9KCk9Pnt0aHJvdyBuZXcgRXJyb3IoInpvZCBjb21waWxlKCkgaXMgbm90IGJ1bmRsZWQgaW50byBjYXJkcyAtIHNlZSBwYWNrYWdlcy9pbnRlcm5hbC9jYXJkLWtpdC92aXRlLXNsaW0ubWpzIil9O2NsYXNzIERpIGV4dGVuZHMgRXJyb3J7fWNsYXNzIExpIGV4dGVuZHMgRXJyb3J7fWNsYXNzIEJpIGV4dGVuZHMgRXJyb3J7fWNvbnN0IEhpPXFpLEZpPXFpLFl2PXFpO2Z1bmN0aW9uIG5yKGUpe3JldHVybiBlLmNoZWNrcyYmKGUuY2hlY2tzPVsuLi5lLmNoZWNrc10pLGV9ZnVuY3Rpb24gWW0oZSx0KXtyZXR1cm4gbmV3IGUobnIoe3R5cGU6InN0cmluZyIsLi4udyh0KX0pKX1mdW5jdGlvbiBRbShlLHQpe3JldHVybiBuZXcgZShucih7dHlwZToic3RyaW5nIixjb2VyY2U6ITAsLi4udyh0KX0pKX1mdW5jdGlvbiBVaShlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImVtYWlsIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIFZpKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiZ3VpZCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBXaShlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6InV1aWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gS2koZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJ1dWlkIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsdmVyc2lvbjoidjQiLC4uLncodCl9KX1mdW5jdGlvbiBHaShlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6InV1aWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSx2ZXJzaW9uOiJ2NiIsLi4udyh0KX0pfWZ1bmN0aW9uIEppKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoidXVpZCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLHZlcnNpb246InY3IiwuLi53KHQpfSl9ZnVuY3Rpb24gb3IoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJ1cmwiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gWWkoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJlbW9qaSIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBRaShlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6Im5hbm9pZCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBYaShlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImN1aWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gZWMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJjdWlkMiIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiB0YyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6InVsaWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gbmMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJ4aWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gb2MoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJrc3VpZCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBzYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImlwdjQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gcmMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJpcHY2IixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIFhtKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoibWFjIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGFjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiY2lkcnY0IixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGljKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiY2lkcnY2IixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGNjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiYmFzZTY0IixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGxjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiYmFzZTY0dXJsIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIHVjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiZTE2NCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBlZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImNyZWRpdF9jYXJkIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIHRmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiaWJhbiIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBkYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6Imp3dCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1jb25zdCBoYz17QW55Om51bGwsTWludXRlOi0xLFNlY29uZDowLE1pbGxpc2Vjb25kOjMsTWljcm9zZWNvbmQ6Nn07ZnVuY3Rpb24gcGMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJkYXRldGltZSIsY2hlY2s6InN0cmluZ19mb3JtYXQiLG9mZnNldDohMSxsb2NhbDohMSxwcmVjaXNpb246bnVsbCwuLi53KHQpfSl9ZnVuY3Rpb24gbWMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJkYXRlIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsLi4udyh0KX0pfWZ1bmN0aW9uIGZjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoidGltZSIsY2hlY2s6InN0cmluZ19mb3JtYXQiLHByZWNpc2lvbjpudWxsLC4uLncodCl9KX1mdW5jdGlvbiBnYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImR1cmF0aW9uIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsLi4udyh0KX0pfWZ1bmN0aW9uIG5mKGUsdCl7cmV0dXJuIG5ldyBlKG5yKHt0eXBlOiJudW1iZXIiLGNoZWNrczpbXSwuLi53KHQpfSkpfWZ1bmN0aW9uIG9mKGUsdCl7cmV0dXJuIG5ldyBlKG5yKHt0eXBlOiJudW1iZXIiLGNvZXJjZTohMCxjaGVja3M6W10sLi4udyh0KX0pKX1mdW5jdGlvbiBzZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToibnVtYmVyIixjaGVjazoibnVtYmVyX2Zvcm1hdCIsYWJvcnQ6ITEsZm9ybWF0OiJzYWZlaW50IiwuLi53KHQpfSl9ZnVuY3Rpb24gcmYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6Im51bWJlciIsY2hlY2s6Im51bWJlcl9mb3JtYXQiLGFib3J0OiExLGZvcm1hdDoiZmxvYXQzMiIsLi4udyh0KX0pfWZ1bmN0aW9uIGFmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJudW1iZXIiLGNoZWNrOiJudW1iZXJfZm9ybWF0IixhYm9ydDohMSxmb3JtYXQ6ImZsb2F0NjQiLC4uLncodCl9KX1mdW5jdGlvbiBjZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToibnVtYmVyIixjaGVjazoibnVtYmVyX2Zvcm1hdCIsYWJvcnQ6ITEsZm9ybWF0OiJpbnQzMiIsLi4udyh0KX0pfWZ1bmN0aW9uIGxmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJudW1iZXIiLGNoZWNrOiJudW1iZXJfZm9ybWF0IixhYm9ydDohMSxmb3JtYXQ6InVpbnQzMiIsLi4udyh0KX0pfWZ1bmN0aW9uIHVmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJib29sZWFuIiwuLi53KHQpfSl9ZnVuY3Rpb24gZGYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6ImJvb2xlYW4iLGNvZXJjZTohMCwuLi53KHQpfSl9ZnVuY3Rpb24gaGYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6ImJpZ2ludCIsLi4udyh0KX0pfWZ1bmN0aW9uIHBmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJiaWdpbnQiLGNvZXJjZTohMCwuLi53KHQpfSl9ZnVuY3Rpb24gbWYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6ImJpZ2ludCIsY2hlY2s6ImJpZ2ludF9mb3JtYXQiLGFib3J0OiExLGZvcm1hdDoiaW50NjQiLC4uLncodCl9KX1mdW5jdGlvbiBmZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToiYmlnaW50IixjaGVjazoiYmlnaW50X2Zvcm1hdCIsYWJvcnQ6ITEsZm9ybWF0OiJ1aW50NjQiLC4uLncodCl9KX1mdW5jdGlvbiBnZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3ltYm9sIiwuLi53KHQpfSl9ZnVuY3Rpb24gYmYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InVuZGVmaW5lZCIsLi4udyh0KX0pfWZ1bmN0aW9uIHZmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJudWxsIiwuLi53KHQpfSl9ZnVuY3Rpb24ga2YoZSl7cmV0dXJuIG5ldyBlKHt0eXBlOiJhbnkifSl9ZnVuY3Rpb24geWYoZSl7cmV0dXJuIG5ldyBlKHt0eXBlOiJ1bmtub3duIn0pfWZ1bmN0aW9uICRmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJuZXZlciIsLi4udyh0KX0pfWZ1bmN0aW9uIHdmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJ2b2lkIiwuLi53KHQpfSl9ZnVuY3Rpb24gX2YoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6ImRhdGUiLC4uLncodCl9KX1mdW5jdGlvbiBTZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToiZGF0ZSIsY29lcmNlOiEwLC4uLncodCl9KX1mdW5jdGlvbiBqZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToibmFuIiwuLi53KHQpfSl9ZnVuY3Rpb24gbnQoZSx0KXtyZXR1cm4gbmV3IGtpKHtjaGVjazoibGVzc190aGFuIiwuLi53KHQpLHZhbHVlOmUsaW5jbHVzaXZlOiExfSl9ZnVuY3Rpb24gSWUoZSx0KXtyZXR1cm4gbmV3IGtpKHtjaGVjazoibGVzc190aGFuIiwuLi53KHQpLHZhbHVlOmUsaW5jbHVzaXZlOiEwfSl9ZnVuY3Rpb24gb3QoZSx0KXtyZXR1cm4gbmV3IHlpKHtjaGVjazoiZ3JlYXRlcl90aGFuIiwuLi53KHQpLHZhbHVlOmUsaW5jbHVzaXZlOiExfSl9ZnVuY3Rpb24gUmUoZSx0KXtyZXR1cm4gbmV3IHlpKHtjaGVjazoiZ3JlYXRlcl90aGFuIiwuLi53KHQpLHZhbHVlOmUsaW5jbHVzaXZlOiEwfSl9ZnVuY3Rpb24gc3IoZSl7cmV0dXJuIG90KDAsZSl9ZnVuY3Rpb24gcnIoZSl7cmV0dXJuIG50KDAsZSl9ZnVuY3Rpb24gYXIoZSl7cmV0dXJuIEllKDAsZSl9ZnVuY3Rpb24gaXIoZSl7cmV0dXJuIFJlKDAsZSl9ZnVuY3Rpb24ganQoZSx0KXtyZXR1cm4gbmV3IGVwKHtjaGVjazoibXVsdGlwbGVfb2YiLC4uLncodCksdmFsdWU6ZX0pfWZ1bmN0aW9uIE90KGUsdCl7cmV0dXJuIG5ldyBvcCh7Y2hlY2s6Im1heF9zaXplIiwuLi53KHQpLG1heGltdW06ZX0pfWZ1bmN0aW9uIHN0KGUsdCl7cmV0dXJuIG5ldyBzcCh7Y2hlY2s6Im1pbl9zaXplIiwuLi53KHQpLG1pbmltdW06ZX0pfWZ1bmN0aW9uIHNuKGUsdCl7cmV0dXJuIG5ldyBycCh7Y2hlY2s6InNpemVfZXF1YWxzIiwuLi53KHQpLHNpemU6ZX0pfWZ1bmN0aW9uIHJuKGUsdCl7cmV0dXJuIG5ldyBhcCh7Y2hlY2s6Im1heF9sZW5ndGgiLC4uLncodCksbWF4aW11bTplfSl9ZnVuY3Rpb24gbXQoZSx0KXtyZXR1cm4gbmV3IGlwKHtjaGVjazoibWluX2xlbmd0aCIsLi4udyh0KSxtaW5pbXVtOmV9KX1mdW5jdGlvbiBhbihlLHQpe3JldHVybiBuZXcgY3Aoe2NoZWNrOiJsZW5ndGhfZXF1YWxzIiwuLi53KHQpLGxlbmd0aDplfSl9ZnVuY3Rpb24gb28oZSx0KXtyZXR1cm4gbmV3IGxwKHtjaGVjazoic3RyaW5nX2Zvcm1hdCIsZm9ybWF0OiJyZWdleCIsLi4udyh0KSxwYXR0ZXJuOmV9KX1mdW5jdGlvbiBzbyhlKXtyZXR1cm4gbmV3IHVwKHtjaGVjazoic3RyaW5nX2Zvcm1hdCIsZm9ybWF0OiJsb3dlcmNhc2UiLC4uLncoZSl9KX1mdW5jdGlvbiBybyhlKXtyZXR1cm4gbmV3IGRwKHtjaGVjazoic3RyaW5nX2Zvcm1hdCIsZm9ybWF0OiJ1cHBlcmNhc2UiLC4uLncoZSl9KX1mdW5jdGlvbiBhbyhlLHQpe3JldHVybiBuZXcgaHAoe2NoZWNrOiJzdHJpbmdfZm9ybWF0Iixmb3JtYXQ6ImluY2x1ZGVzIiwuLi53KHQpLGluY2x1ZGVzOmV9KX1mdW5jdGlvbiBpbyhlLHQpe3JldHVybiBuZXcgcHAoe2NoZWNrOiJzdHJpbmdfZm9ybWF0Iixmb3JtYXQ6InN0YXJ0c193aXRoIiwuLi53KHQpLHByZWZpeDplfSl9ZnVuY3Rpb24gY28oZSx0KXtyZXR1cm4gbmV3IG1wKHtjaGVjazoic3RyaW5nX2Zvcm1hdCIsZm9ybWF0OiJlbmRzX3dpdGgiLC4uLncodCksc3VmZml4OmV9KX1mdW5jdGlvbiBjcihlLHQsbil7cmV0dXJuIG5ldyBmcCh7Y2hlY2s6InByb3BlcnR5Iixwcm9wZXJ0eTplLHNjaGVtYTp0LC4uLncobil9KX1mdW5jdGlvbiBsbyhlLHQpe3JldHVybiBuZXcgZ3Aoe2NoZWNrOiJwcm9wZXJ0aWVzIixzaGFwZTplLC4uLncodCl9KX1mdW5jdGlvbiB1byhlLHQpe3JldHVybiBuZXcgYnAoe2NoZWNrOiJtaW1lX3R5cGUiLG1pbWU6ZSwuLi53KHQpfSl9ZnVuY3Rpb24gWWUoZSl7cmV0dXJuIG5ldyB2cCh7Y2hlY2s6Im92ZXJ3cml0ZSIsdHg6ZX0pfWZ1bmN0aW9uIGhvKGUpe3JldHVybiBZZSh0PT50Lm5vcm1hbGl6ZShlKSl9ZnVuY3Rpb24gcG8oKXtyZXR1cm4gWWUoZT0+ZS50cmltKCkpfWZ1bmN0aW9uIG1vKCl7cmV0dXJuIFllKGU9PmUudG9Mb3dlckNhc2UoKSl9ZnVuY3Rpb24gZm8oKXtyZXR1cm4gWWUoZT0+ZS50b1VwcGVyQ2FzZSgpKX1mdW5jdGlvbiBnbygpe3JldHVybiBZZShlPT5LZChlKSl9ZnVuY3Rpb24gVGYoZSx0LG4pe3JldHVybiBuZXcgZSh7dHlwZToiYXJyYXkiLGVsZW1lbnQ6dCwuLi53KG4pfSl9ZnVuY3Rpb24gUXYoZSx0LG4pe3JldHVybiBuZXcgZSh7dHlwZToidW5pb24iLG9wdGlvbnM6dCwuLi53KG4pfSl9ZnVuY3Rpb24gWHYoZSx0LG4pe3JldHVybiBuZXcgZSh7dHlwZToidW5pb24iLG9wdGlvbnM6dCxpbmNsdXNpdmU6ITEsLi4udyhuKX0pfWZ1bmN0aW9uIGVrKGUsdCxuLG8pe3JldHVybiBuZXcgZSh7dHlwZToidW5pb24iLG9wdGlvbnM6bixkaXNjcmltaW5hdG9yOnQsLi4udyhvKX0pfWZ1bmN0aW9uIHRrKGUsdCxuKXtyZXR1cm4gbmV3IGUoe3R5cGU6ImludGVyc2VjdGlvbiIsbGVmdDp0LHJpZ2h0Om59KX1mdW5jdGlvbiBuayhlLHQsbixvKXtjb25zdCBzPW4gaW5zdGFuY2VvZiBELHI9cz9vOm4saT1zP246bnVsbDtyZXR1cm4gbmV3IGUoe3R5cGU6InR1cGxlIixpdGVtczp0LHJlc3Q6aSwuLi53KHIpfSl9ZnVuY3Rpb24gb2soZSx0LG4sbyl7cmV0dXJuIG5ldyBlKHt0eXBlOiJyZWNvcmQiLGtleVR5cGU6dCx2YWx1ZVR5cGU6biwuLi53KG8pfSl9ZnVuY3Rpb24gc2soZSx0LG4sbyl7cmV0dXJuIG5ldyBlKHt0eXBlOiJtYXAiLGtleVR5cGU6dCx2YWx1ZVR5cGU6biwuLi53KG8pfSl9ZnVuY3Rpb24gcmsoZSx0LG4pe3JldHVybiBuZXcgZSh7dHlwZToic2V0Iix2YWx1ZVR5cGU6dCwuLi53KG4pfSl9ZnVuY3Rpb24gYWsoZSx0LG4pe2NvbnN0IG89QXJyYXkuaXNBcnJheSh0KT9PYmplY3QuZnJvbUVudHJpZXModC5tYXAocz0+W3Msc10pKTp0O3JldHVybiBuZXcgZSh7dHlwZToiZW51bSIsZW50cmllczpvLC4uLncobil9KX1mdW5jdGlvbiBpayhlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJlbnVtIixlbnRyaWVzOnQsLi4udyhuKX0pfWZ1bmN0aW9uIGNrKGUsdCxuKXtyZXR1cm4gbmV3IGUoe3R5cGU6ImxpdGVyYWwiLHZhbHVlczpBcnJheS5pc0FycmF5KHQpP3Q6W3RdLC4uLncobil9KX1mdW5jdGlvbiBBZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToiZmlsZSIsLi4udyh0KX0pfWZ1bmN0aW9uIGxrKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJ0cmFuc2Zvcm0iLHRyYW5zZm9ybTp0fSl9ZnVuY3Rpb24gdWsoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6Im9wdGlvbmFsIixpbm5lclR5cGU6dH0pfWZ1bmN0aW9uIGRrKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJudWxsYWJsZSIsaW5uZXJUeXBlOnR9KX1mdW5jdGlvbiBoayhlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJkZWZhdWx0Iixpbm5lclR5cGU6dCxnZXQgZGVmYXVsdFZhbHVlKCl7cmV0dXJuIHR5cGVvZiBuPT0iZnVuY3Rpb24iP24oKTpxcyhuKX19KX1mdW5jdGlvbiBwayhlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJub25vcHRpb25hbCIsaW5uZXJUeXBlOnQsLi4udyhuKX0pfWZ1bmN0aW9uIG1rKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdWNjZXNzIixpbm5lclR5cGU6dH0pfWZ1bmN0aW9uIGZrKGUsdCxuKXtyZXR1cm4gbmV3IGUoe3R5cGU6ImNhdGNoIixpbm5lclR5cGU6dCxjYXRjaFZhbHVlOnR5cGVvZiBuPT0iZnVuY3Rpb24iP246ZWkobil9KX1mdW5jdGlvbiBnayhlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJwaXBlIixpbjp0LG91dDpufSl9ZnVuY3Rpb24gYmsoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InJlYWRvbmx5Iixpbm5lclR5cGU6dH0pfWZ1bmN0aW9uIHZrKGUsdCxuKXtyZXR1cm4gbmV3IGUoe3R5cGU6InRlbXBsYXRlX2xpdGVyYWwiLHBhcnRzOnQsLi4udyhuKX0pfWZ1bmN0aW9uIGtrKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJsYXp5IixnZXR0ZXI6dH0pfWZ1bmN0aW9uIHlrKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJwcm9taXNlIixpbm5lclR5cGU6dH0pfWZ1bmN0aW9uIHpmKGUsdCxuKXtjb25zdCBvPXcobik7cmV0dXJuIG8uYWJvcnQ/PyhvLmFib3J0PSEwKSxuZXcgZSh7dHlwZToiY3VzdG9tIixjaGVjazoiY3VzdG9tIixmbjp0LC4uLm99KX1mdW5jdGlvbiBDZihlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJjdXN0b20iLGNoZWNrOiJjdXN0b20iLGZuOnQsLi4udyhuKX0pfWZ1bmN0aW9uIE5mKGUsdCl7Y29uc3Qgbj1QZihvPT4oby5hZGRJc3N1ZT1zPT57aWYodHlwZW9mIHM9PSJzdHJpbmciKW8uaXNzdWVzLnB1c2goSnQocyxvLnZhbHVlLG4uX3pvZC5kZWYpKTtlbHNle2NvbnN0IHI9cztyLmZhdGFsJiYoci5jb250aW51ZT0hMSksci5jb2RlPz8oci5jb2RlPSJjdXN0b20iKSwiaW5wdXQiaW4gcnx8KHIuaW5wdXQ9by52YWx1ZSksci5pbnN0Pz8oci5pbnN0PW4pLHIuY29udGludWU/PyhyLmNvbnRpbnVlPSFuLl96b2QuZGVmLmFib3J0KSxvLmlzc3Vlcy5wdXNoKEp0KHIpKX19LGUoby52YWx1ZSxvKSksdCk7cmV0dXJuIG59ZnVuY3Rpb24gUGYoZSx0KXtjb25zdCBuPW5ldyBhZSh7Y2hlY2s6ImN1c3RvbSIsLi4udyh0KX0pO3JldHVybiBuLl96b2QuY2hlY2s9ZSxufWZ1bmN0aW9uIHhmKGUpe2NvbnN0IHQ9bmV3IGFlKHtjaGVjazoiZGVzY3JpYmUifSk7cmV0dXJuIHQuX3pvZC5vbmF0dGFjaD1bbj0+e2NvbnN0IG89cWUuZ2V0KG4pPz97fTtxZS5hZGQobix7Li4ubyxkZXNjcmlwdGlvbjplfSl9XSx0Ll96b2QuY2hlY2s9KCk9Pnt9LHR9ZnVuY3Rpb24gSWYoZSl7Y29uc3QgdD1uZXcgYWUoe2NoZWNrOiJtZXRhIn0pO3JldHVybiB0Ll96b2Qub25hdHRhY2g9W249Pntjb25zdCBvPXFlLmdldChuKT8/e307cWUuYWRkKG4sey4uLm8sLi4uZX0pfV0sdC5fem9kLmNoZWNrPSgpPT57fSx0fWZ1bmN0aW9uIFJmKGUsdCl7Y29uc3Qgbj13KHQpO2xldCBvPW4udHJ1dGh5Pz9bInRydWUiLCIxIiwieWVzIiwib24iLCJ5IiwiZW5hYmxlZCJdLHM9bi5mYWxzeT8/WyJmYWxzZSIsIjAiLCJubyIsIm9mZiIsIm4iLCJkaXNhYmxlZCJdO24uY2FzZSE9PSJzZW5zaXRpdmUiJiYobz1vLm1hcCh5PT50eXBlb2YgeT09InN0cmluZyI/eS50b0xvd2VyQ2FzZSgpOnkpLHM9cy5tYXAoeT0+dHlwZW9mIHk9PSJzdHJpbmciP3kudG9Mb3dlckNhc2UoKTp5KSk7Y29uc3Qgcj1uZXcgU2V0KG8pLGk9bmV3IFNldChzKSxjPWUuQ29kZWM/P1JpLHU9ZS5Cb29sZWFuPz96aSxkPWUuU3RyaW5nPz9ubyxoPW5ldyBkKHt0eXBlOiJzdHJpbmciLGVycm9yOm4uZXJyb3J9KSxwPW5ldyB1KHt0eXBlOiJib29sZWFuIixlcnJvcjpuLmVycm9yfSksbT1uZXcgYyh7dHlwZToicGlwZSIsaW46aCxvdXQ6cCx0cmFuc2Zvcm06KCh5LCQpPT57bGV0IF89eTtyZXR1cm4gbi5jYXNlIT09InNlbnNpdGl2ZSImJihfPV8udG9Mb3dlckNhc2UoKSksci5oYXMoXyk/ITA6aS5oYXMoXyk/ITE6KCQuaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdmFsdWUiLGV4cGVjdGVkOiJzdHJpbmdib29sIix2YWx1ZXM6Wy4uLnIsLi4uaV0saW5wdXQ6JC52YWx1ZSxpbnN0Om0sY29udGludWU6ITF9KSx7fSl9KSxyZXZlcnNlVHJhbnNmb3JtOigoeSwkKT0+eT09PSEwP29bMF18fCJ0cnVlIjpzWzBdfHwiZmFsc2UiKSxlcnJvcjpuLmVycm9yfSk7cmV0dXJuIG0uX3pvZC5iYWcudHJ1dGh5PW8sbS5fem9kLmJhZy5mYWxzeT1zLG0uX3pvZC5iYWcuY2FzZT1uLmNhc2U/PyJpbnNlbnNpdGl2ZSIsbX1mdW5jdGlvbiBjbihlLHQsbixvPXt9KXtjb25zdCBzPXcobykscj17Y2hlY2s6InN0cmluZ19mb3JtYXQiLHR5cGU6InN0cmluZyIsZm9ybWF0OnQsZm46dHlwZW9mIG49PSJmdW5jdGlvbiI/bjpjPT5uLnRlc3QoYyksLi4uc307cmV0dXJuIG4gaW5zdGFuY2VvZiBSZWdFeHAmJihyLnBhdHRlcm49biksbmV3IGUocil9Y29uc3QgJGs9KCk9Pih7fSksd2s9KCk9Pih7fSksX2s9KCk9Pih7fSksU2s9KCk9Pih7fSksams9KCk9Pih7fSksRWY9KCk9PigpPT4oe30pLE5hPSgpPT4oKT0+KHt9KSxUaz0oKT0+KHt9KSxEZT0oKT0+KHt9KSxBaz0oKT0+KHt9KSx6az0oKT0+KHt9KSxDaz0oKT0+KHt9KSxOaz0oKT0+KHt9KSxQaz0oKT0+KHt9KSx4az0oKT0+KHt9KSxJaz0oKT0+KHt9KSxSaz0oKT0+KHt9KSxFaz0oKT0+KHt9KSxPaz0oKT0+KHt9KSxaaz0oKT0+KHt9KSxNaz0oKT0+KHt9KSxxaz0oKT0+KHt9KSxEaz0oKT0+KHt9KSxMaz0oKT0+KHt9KSxCaz0oKT0+KHt9KSxIaz0oKT0+KHt9KSxGaz0oKT0+KHt9KSxVaz0oKT0+KHt9KSxWaz0oKT0+KHt9KSxXaz0oKT0+KHt9KSxLaz0oKT0+KHt9KSxHaz0oKT0+KHt9KSxKaz0oKT0+KHt9KSxZaz0oKT0+KHt9KSxPZj0oKT0+KHt9KSxRaz0oKT0+KHt9KSxYaz0oKT0+KHt9KSxleT0oKT0+KHt9KSx0eT0oKT0+KHt9KSxueT0oKT0+KHt9KSxveT0oKT0+KHt9KSxzeT0oKT0+KHt9KSxyeT0oKT0+KHt9KSxheT0oKT0+KHt9KSxpeT0oKT0+KHt9KSxjeT0oKT0+KHt9KSxaZj0oKT0+KHt9KSxseT0oKT0+KHt9KSxiYz0oKT0+KHt9KTtjbGFzcyB1eXt9Y29uc3QgZHk9T2JqZWN0LmZyZWV6ZShPYmplY3QuZGVmaW5lUHJvcGVydHkoe19fcHJvdG9fXzpudWxsfSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSkpLE1mPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCwkWm9kQW55OnVtLCRab2RBcnJheTpmbSwkWm9kQXN5bmNFcnJvcjpodCwkWm9kQmFzZTY0OktwLCRab2RCYXNlNjRVUkw6SnAsJFpvZEJpZ0ludDpDaSwkWm9kQmlnSW50Rm9ybWF0OmFtLCRab2RCb29sZWFuOnppLCRab2RDSURSdjQ6RnAsJFpvZENJRFJ2NjpWcCwkWm9kQ1VJRDp4cCwkWm9kQ1VJRDI6SXAsJFpvZENhdGNoOlptLCRab2RDaGVjazphZSwkWm9kQ2hlY2tCaWdJbnRGb3JtYXQ6bnAsJFpvZENoZWNrRW5kc1dpdGg6bXAsJFpvZENoZWNrR3JlYXRlclRoYW46eWksJFpvZENoZWNrSW5jbHVkZXM6aHAsJFpvZENoZWNrTGVuZ3RoRXF1YWxzOmNwLCRab2RDaGVja0xlc3NUaGFuOmtpLCRab2RDaGVja0xvd2VyQ2FzZTp1cCwkWm9kQ2hlY2tNYXhMZW5ndGg6YXAsJFpvZENoZWNrTWF4U2l6ZTpvcCwkWm9kQ2hlY2tNaW1lVHlwZTpicCwkWm9kQ2hlY2tNaW5MZW5ndGg6aXAsJFpvZENoZWNrTWluU2l6ZTpzcCwkWm9kQ2hlY2tNdWx0aXBsZU9mOmVwLCRab2RDaGVja051bWJlckZvcm1hdDp0cCwkWm9kQ2hlY2tPdmVyd3JpdGU6dnAsJFpvZENoZWNrUHJvcGVydGllczpncCwkWm9kQ2hlY2tQcm9wZXJ0eTpmcCwkWm9kQ2hlY2tSZWdleDpscCwkWm9kQ2hlY2tTaXplRXF1YWxzOnJwLCRab2RDaGVja1N0YXJ0c1dpdGg6cHAsJFpvZENoZWNrU3RyaW5nRm9ybWF0OnRvLCRab2RDaGVja1VwcGVyQ2FzZTpkcCwkWm9kQ29kZWM6UmksJFpvZENyZWRpdENhcmQ6WHAsJFpvZEN1c3RvbTpGbSwkWm9kQ3VzdG9tU3RyaW5nRm9ybWF0OnNtLCRab2RDeWNsaWNFcnJvcjpVbSwkWm9kRGF0ZTptbSwkWm9kRGVmYXVsdDpJbSwkWm9kRGlzY3JpbWluYXRlZFVuaW9uOndtLCRab2RFMTY0OllwLCRab2RFbWFpbDpTcCwkWm9kRW1vamk6TnAsJFpvZEVuY29kZUVycm9yOlVzLCRab2RFbnVtOkFtLCRab2RFcnJvcjpmaCwkWm9kRXhhY3RPcHRpb25hbDpQbSwkWm9kRmlsZTpDbSwkWm9kRnVuY3Rpb246Qm0sJFpvZEdVSUQ6d3AsJFpvZElCQU46dG0sJFpvZElQdjQ6THAsJFpvZElQdjY6QnAsJFpvZElTT0RhdGU6TXAsJFpvZElTT0RhdGVUaW1lOlpwLCRab2RJU09EdXJhdGlvbjpEcCwkWm9kSVNPVGltZTpxcCwkWm9kSW50ZXJzZWN0aW9uOl9tLCRab2RKV1Q6b20sJFpvZEtTVUlEOk9wLCRab2RMYXp5OkVpLCRab2RMaXRlcmFsOnptLCRab2RNQUM6SHAsJFpvZE1hcDpqbSwkWm9kTmFOOk1tLCRab2ROYW5vSUQ6UHAsJFpvZE5ldmVyOmhtLCRab2ROb25PcHRpb25hbDpFbSwkWm9kTnVsbDpsbSwkWm9kTnVsbGFibGU6eG0sJFpvZE51bWJlcjpBaSwkWm9kTnVtYmVyRm9ybWF0OnJtLCRab2RPYmplY3Q6dm0sJFpvZE9iamVjdEpJVDprbSwkWm9kT3B0aW9uYWw6eGksJFpvZFBpcGU6SWksJFpvZFByZWZhdWx0OlJtLCRab2RQcmVwcm9jZXNzOnFtLCRab2RQcm9taXNlOkhtLCRab2RSZWFkb25seTpEbSwkWm9kUmVhbEVycm9yOkVlLCRab2RSZWNvcmQ6U20sJFpvZFJlZ2lzdHJ5OkptLCRab2RTZXQ6VG0sJFpvZFN0cmluZzpubywkWm9kU3RyaW5nRm9ybWF0Om9lLCRab2RTdWNjZXNzOk9tLCRab2RTeW1ib2w6aW0sJFpvZFRlbXBsYXRlTGl0ZXJhbDpMbSwkWm9kVHJhbnNmb3JtOk5tLCRab2RUdXBsZTpQaSwkWm9kVHlwZTpELCRab2RVTElEOlJwLCRab2RVUkw6Q3AsJFpvZFVVSUQ6X3AsJFpvZFVuZGVmaW5lZDpjbSwkWm9kVW5pb246WHMsJFpvZFVua25vd246ZG0sJFpvZFZvaWQ6cG0sJFpvZFhJRDpFcCwkWm9kWG9yOnltLCRicmFuZDpvaSwkY29uc3RydWN0b3I6ZiwkaW5wdXQ6TWksJG91dHB1dDpaaSxEb2M6a3AsSU5WQUxJRDpEaSxKU09OU2NoZW1hOmR5LEpTT05TY2hlbWFHZW5lcmF0b3I6dXksTkVWRVI6bmksVGltZVByZWNpc2lvbjpoYyxVUkxfQkFEX0ZPUk1BVDp3aSxVUkxfVU5QQVJTRUFCTEU6RG4sWm9kQ29tcGlsZUFzeW5jRXJyb3I6TGksWm9kQ29tcGlsZVVuc3VwcG9ydGVkRXJyb3I6QmksX2FueTprZixfYXJyYXk6VGYsX2Jhc2U2NDpjYyxfYmFzZTY0dXJsOmxjLF9iaWdpbnQ6aGYsX2Jvb2xlYW46dWYsX2NhdGNoOmZrLF9jaGVjazpQZixfY2lkcnY0OmFjLF9jaWRydjY6aWMsX2NvZXJjZWRCaWdpbnQ6cGYsX2NvZXJjZWRCb29sZWFuOmRmLF9jb2VyY2VkRGF0ZTpTZixfY29lcmNlZE51bWJlcjpvZixfY29lcmNlZFN0cmluZzpRbSxfY3JlZGl0Q2FyZDplZixfY3VpZDpYaSxfY3VpZDI6ZWMsX2N1c3RvbTp6ZixfZGF0ZTpfZixfZGVjb2RlOmlpLF9kZWNvZGVBc3luYzpsaSxfZGVmYXVsdDpoayxfZGlzY3JpbWluYXRlZFVuaW9uOmVrLF9lMTY0OnVjLF9lbWFpbDpVaSxfZW1vamk6WWksX2VuY29kZTphaSxfZW5jb2RlQXN5bmM6Y2ksX2VuZHNXaXRoOmNvLF9lbnVtOmFrLF9maWxlOkFmLF9mbG9hdDMyOnJmLF9mbG9hdDY0OmFmLF9ndDpvdCxfZ3RlOlJlLF9ndWlkOlZpLF9pYmFuOnRmLF9pbmNsdWRlczphbyxfaW50OnNmLF9pbnQzMjpjZixfaW50NjQ6bWYsX2ludGVyc2VjdGlvbjp0ayxfaXB2NDpzYyxfaXB2NjpyYyxfaXNvRGF0ZTptYyxfaXNvRGF0ZVRpbWU6cGMsX2lzb0R1cmF0aW9uOmdjLF9pc29UaW1lOmZjLF9qd3Q6ZGMsX2tzdWlkOm9jLF9sYXp5OmtrLF9sZW5ndGg6YW4sX2xpdGVyYWw6Y2ssX2xvd2VyY2FzZTpzbyxfbHQ6bnQsX2x0ZTpJZSxfbWFjOlhtLF9tYXA6c2ssX21heDpJZSxfbWF4TGVuZ3RoOnJuLF9tYXhTaXplOk90LF9taW1lOnVvLF9taW46UmUsX21pbkxlbmd0aDptdCxfbWluU2l6ZTpzdCxfbXVsdGlwbGVPZjpqdCxfbmFuOmpmLF9uYW5vaWQ6UWksX25hdGl2ZUVudW06aWssX25lZ2F0aXZlOnJyLF9uZXZlcjokZixfbm9ubmVnYXRpdmU6aXIsX25vbm9wdGlvbmFsOnBrLF9ub25wb3NpdGl2ZTphcixfbm9ybWFsaXplOmhvLF9udWxsOnZmLF9udWxsYWJsZTpkayxfbnVtYmVyOm5mLF9vcHRpb25hbDp1ayxfb3ZlcndyaXRlOlllLF9wYXJzZTpHbixfcGFyc2VBc3luYzpKbixfcGlwZTpnayxfcG9zaXRpdmU6c3IsX3Byb21pc2U6eWssX3Byb3BlcnRpZXM6bG8sX3Byb3BlcnR5OmNyLF9yZWFkb25seTpiayxfcmVjb3JkOm9rLF9yZWZpbmU6Q2YsX3JlZ2V4Om9vLF9zYWZlRGVjb2RlOmRpLF9zYWZlRGVjb2RlQXN5bmM6cGksX3NhZmVFbmNvZGU6dWksX3NhZmVFbmNvZGVBc3luYzpoaSxfc2FmZVBhcnNlOlluLF9zYWZlUGFyc2VBc3luYzpRbixfc2V0OnJrLF9zaXplOnNuLF9zbHVnaWZ5OmdvLF9zdGFydHNXaXRoOmlvLF9zdHJpbmc6WW0sX3N0cmluZ0Zvcm1hdDpjbixfc3RyaW5nYm9vbDpSZixfc3VjY2Vzczptayxfc3VwZXJSZWZpbmU6TmYsX3N5bWJvbDpnZixfdGVtcGxhdGVMaXRlcmFsOnZrLF90b0xvd2VyQ2FzZTptbyxfdG9VcHBlckNhc2U6Zm8sX3RyYW5zZm9ybTpsayxfdHJpbTpwbyxfdHVwbGU6bmssX3VpbnQzMjpsZixfdWludDY0OmZmLF91bGlkOnRjLF91bmRlZmluZWQ6YmYsX3VuaW9uOlF2LF91bmtub3duOnlmLF91cHBlcmNhc2U6cm8sX3VybDpvcixfdXVpZDpXaSxfdXVpZHY0OktpLF91dWlkdjY6R2ksX3V1aWR2NzpKaSxfdm9pZDp3ZixfeGlkOm5jLF94b3I6WHYsYmFzZTY0Q2hhcnNldDpXcCxiYXNlNjR1cmxDaGFyc2V0OlRpLGNhblBhcnNlVVJMOl9pLGNsb25lOmllLGNvbXBpbGU6SGksY29tcGlsZUZuOll2LGNvbmZpZzpwZSxjcmVhdGVTdGFuZGFyZEpTT05TY2hlbWFNZXRob2Q6TmEsY3JlYXRlVG9KU09OU2NoZW1hTWV0aG9kOkVmLGRlY29kZTpzdixkZWNvZGVBc3luYzphdixkZXNjcmliZTp4ZixlbmNvZGU6b3YsZW5jb2RlQXN5bmM6cnYsZXh0cmFjdERlZnM6U2ssZmluYWxpemU6amssZmxhdHRlbkVycm9yOlZzLGZvcm1hdEVycm9yOldzLGdldERpc2NyaW1pbmF0ZWRPcHRpb246TmksZ2xvYmFsQ29uZmlnOlRlLGdsb2JhbFJlZ2lzdHJ5OnFlLGhhbmRsZVVucmVwcmVzZW50YWJsZTp3ayxpbml0aWFsaXplQ29udGV4dDokayxpc0JhY2tFZGdlOkttLGlzUmVjdXJzaXZlU2NoZW1hOld2LGlzVmFsaWRCYXNlNjQ6amksaXNWYWxpZEJhc2U2NFVSTDpHcCxpc1ZhbGlkQ0lEUnY2OlVwLGlzVmFsaWRDcmVkaXRDYXJkOlFwLGlzVmFsaWRJQkFOOmVtLGlzVmFsaWRJUHY2OlNpLGlzVmFsaWRKV1Q6bm0sbG9jYWxlczpPaSxtZW1vaXplcjplcixtZXJnZVZhbHVlczpfcyxtZXRhOklmLHBhcnNlOlNhLHBhcnNlQXN5bmM6amEscGFyc2VVUkxPYmplY3Q6VHAscHJldHRpZnlFcnJvcjpyaSxwcm9jZXNzOlRrLHByb2Nlc3NTY2hlbWE6X2sscmVnZXhlczpRcyxyZWdpc3RyeTp0cixzYWZlRGVjb2RlOmN2LHNhZmVEZWNvZGVBc3luYzp1dixzYWZlRW5jb2RlOml2LHNhZmVFbmNvZGVBc3luYzpsdixzYWZlUGFyc2U6Ymgsc2FmZVBhcnNlQXN5bmM6WGIsc3RhbmRhcmRQcm9wczokaSxzdHJpcFRhYkFuZE5ld2xpbmU6QWEsdG9Eb3RQYXRoOmdoLHRvSlNPTlNjaGVtYTpiYyx0b1pvZDpacyx0cmVlaWZ5RXJyb3I6c2ksdXJsSG9zdG5hbWVPazpBcCx1cmxQcm90b2NvbE9rOnpwLHV0aWw6dGksdmFsaWRhdGU6R3MsdmFsaWRhdGVBc3luYzpKcyx2YWxpZGF0ZVVSTDpqcCx2ZXJzaW9uOnlwLHdpdGhQYXJzZXI6Rml9LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSksY2Q9U3ltYm9sKCJ6LnZpc2l0L3Jlc29sdmluZyIpO2Z1bmN0aW9uIHZjKGUsdCl7Y29uc3Qgbj10eXBlb2YgdD09ImZ1bmN0aW9uIj90OihpLGMpPT57Y29uc3QgdT10W2kuX3pvZC5kZWYudHlwZV07cmV0dXJuIHU/dShpLGMpOml9LG89bmV3IE1hcDtmdW5jdGlvbiBzKGkpe2NvbnN0IGM9by5nZXQoaSk7aWYoYz09PWNkKXJldHVybiBuZXcgRWkoe3R5cGU6ImxhenkiLGdldHRlcjooKT0+by5nZXQoaSl9KTtpZihjIT09dm9pZCAwKXJldHVybiBjO28uc2V0KGksY2QpO2NvbnN0IHU9cihpKSxkPW4odSx1IT09aSk7cmV0dXJuIG8uc2V0KGksZCksZH1mdW5jdGlvbiByKGkpe2NvbnN0IGM9aS5fem9kLmRlZjtzd2l0Y2goYy50eXBlKXtjYXNlIm9iamVjdCI6e2NvbnN0IGQ9Yy5zaGFwZSxoPU9iamVjdC5rZXlzKGQpO2xldCBwPSExO2NvbnN0IG09e307Zm9yKGNvbnN0ICQgb2YgaCl7Y29uc3QgXz1zKGRbJF0pO18hPT1kWyRdJiYocD0hMCksbVskXT1ffWxldCB5PWMuY2F0Y2hhbGw7cmV0dXJuIGMuY2F0Y2hhbGwmJih5PXMoYy5jYXRjaGFsbCkseSE9PWMuY2F0Y2hhbGwmJihwPSEwKSkscD9pZShpLHsuLi5jLHNoYXBlOm0sY2F0Y2hhbGw6eX0pOml9Y2FzZSJhcnJheSI6e2NvbnN0IGQ9cyhjLmVsZW1lbnQpO3JldHVybiBkPT09Yy5lbGVtZW50P2k6aWUoaSx7Li4uYyxlbGVtZW50OmR9KX1jYXNlInR1cGxlIjp7Y29uc3QgZD1jLml0ZW1zO2xldCBoPSExO2NvbnN0IHA9W107Zm9yKGNvbnN0IHkgb2YgZCl7Y29uc3QgJD1zKHkpOyQhPT15JiYoaD0hMCkscC5wdXNoKCQpfWxldCBtPWMucmVzdDtyZXR1cm4gYy5yZXN0JiYobT1zKGMucmVzdCksbSE9PWMucmVzdCYmKGg9ITApKSxoP2llKGksey4uLmMsaXRlbXM6cCxyZXN0Om19KTppfWNhc2UicmVjb3JkIjpjYXNlIm1hcCI6e2NvbnN0IGQ9cyhjLmtleVR5cGUpLGg9cyhjLnZhbHVlVHlwZSk7cmV0dXJuIGQ9PT1jLmtleVR5cGUmJmg9PT1jLnZhbHVlVHlwZT9pOmllKGksey4uLmMsa2V5VHlwZTpkLHZhbHVlVHlwZTpofSl9Y2FzZSJzZXQiOntjb25zdCBkPXMoYy52YWx1ZVR5cGUpO3JldHVybiBkPT09Yy52YWx1ZVR5cGU/aTppZShpLHsuLi5jLHZhbHVlVHlwZTpkfSl9Y2FzZSJ1bmlvbiI6e2NvbnN0IGQ9Yy5vcHRpb25zO2xldCBoPSExO2NvbnN0IHA9W107Zm9yKGNvbnN0IG0gb2YgZCl7Y29uc3QgeT1zKG0pO3khPT1tJiYoaD0hMCkscC5wdXNoKHkpfXJldHVybiBoP2llKGksey4uLmMsb3B0aW9uczpwfSk6aX1jYXNlImludGVyc2VjdGlvbiI6e2NvbnN0IGQ9cyhjLmxlZnQpLGg9cyhjLnJpZ2h0KTtyZXR1cm4gZD09PWMubGVmdCYmaD09PWMucmlnaHQ/aTppZShpLHsuLi5jLGxlZnQ6ZCxyaWdodDpofSl9Y2FzZSJvcHRpb25hbCI6Y2FzZSJudWxsYWJsZSI6Y2FzZSJkZWZhdWx0IjpjYXNlInByZWZhdWx0IjpjYXNlImNhdGNoIjpjYXNlInJlYWRvbmx5IjpjYXNlIm5vbm9wdGlvbmFsIjpjYXNlInByb21pc2UiOmNhc2Uic3VjY2VzcyI6e2NvbnN0IGQ9cyhjLmlubmVyVHlwZSk7cmV0dXJuIGQ9PT1jLmlubmVyVHlwZT9pOmllKGksey4uLmMsaW5uZXJUeXBlOmR9KX1jYXNlInBpcGUiOntjb25zdCBkPXMoYy5pbiksaD1zKGMub3V0KTtyZXR1cm4gZD09PWMuaW4mJmg9PT1jLm91dD9pOmllKGksey4uLmMsaW46ZCxvdXQ6aH0pfWNhc2UiZnVuY3Rpb24iOntjb25zdCBkPXMoYy5pbnB1dCksaD1zKGMub3V0cHV0KTtyZXR1cm4gZD09PWMuaW5wdXQmJmg9PT1jLm91dHB1dD9pOmllKGksey4uLmMsaW5wdXQ6ZCxvdXRwdXQ6aH0pfWNhc2UibGF6eSI6e2NvbnN0IGQ9Yy5nZXR0ZXIse19jYWNoZWRJbm5lcjpoLC4uLnB9PWM7cmV0dXJuIGllKGksey4uLnAsZ2V0dGVyOigpPT5zKGQoKSl9KX1jYXNlInRlbXBsYXRlX2xpdGVyYWwiOmNhc2Uic3RyaW5nIjpjYXNlIm51bWJlciI6Y2FzZSJpbnQiOmNhc2UiYm9vbGVhbiI6Y2FzZSJiaWdpbnQiOmNhc2Uic3ltYm9sIjpjYXNlInVuZGVmaW5lZCI6Y2FzZSJudWxsIjpjYXNlInZvaWQiOmNhc2UibmV2ZXIiOmNhc2UiYW55IjpjYXNlInVua25vd24iOmNhc2UiZGF0ZSI6Y2FzZSJuYW4iOmNhc2UiZW51bSI6Y2FzZSJsaXRlcmFsIjpjYXNlImZpbGUiOmNhc2UidHJhbnNmb3JtIjpjYXNlImN1c3RvbSI6cmV0dXJuIGk7ZGVmYXVsdDpyZXR1cm4gaX19cmV0dXJuIHMoZSl9ZnVuY3Rpb24ga2MoZSl7cmV0dXJuISFlLl96b2R9ZnVuY3Rpb24gcWYoZSx0KXtyZXR1cm4ga2MoZSk/YmgoZSx0KTplLnNhZmVQYXJzZSh0KX1mdW5jdGlvbiBoeShlKXtpZighZSlyZXR1cm47bGV0IHQ7aWYoa2MoZSk/dD1lLl96b2Q/LmRlZj8uc2hhcGU6dD1lLnNoYXBlLCEhdCl7aWYodHlwZW9mIHQ9PSJmdW5jdGlvbiIpdHJ5e3JldHVybiB0KCl9Y2F0Y2h7cmV0dXJufXJldHVybiB0fX1mdW5jdGlvbiBweShlKXtpZihrYyhlKSl7Y29uc3Qgcj1lLl96b2Q/LmRlZjtpZihyKXtpZihyLnZhbHVlIT09dm9pZCAwKXJldHVybiByLnZhbHVlO2lmKEFycmF5LmlzQXJyYXkoci52YWx1ZXMpJiZyLnZhbHVlcy5sZW5ndGg+MClyZXR1cm4gci52YWx1ZXNbMF19fWNvbnN0IG49ZS5fZGVmO2lmKG4pe2lmKG4udmFsdWUhPT12b2lkIDApcmV0dXJuIG4udmFsdWU7aWYoQXJyYXkuaXNBcnJheShuLnZhbHVlcykmJm4udmFsdWVzLmxlbmd0aD4wKXJldHVybiBuLnZhbHVlc1swXX1jb25zdCBvPWUudmFsdWU7aWYobyE9PXZvaWQgMClyZXR1cm4gb31jb25zdCBteT1PYmplY3QuZnJlZXplKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7X19wcm90b19fOm51bGwsZW5kc1dpdGg6Y28sZ3Q6b3QsZ3RlOlJlLGluY2x1ZGVzOmFvLGxlbmd0aDphbixsb3dlcmNhc2U6c28sbHQ6bnQsbHRlOkllLG1heExlbmd0aDpybixtYXhTaXplOk90LG1pbWU6dW8sbWluTGVuZ3RoOm10LG1pblNpemU6c3QsbXVsdGlwbGVPZjpqdCxuZWdhdGl2ZTpycixub25uZWdhdGl2ZTppcixub25wb3NpdGl2ZTphcixub3JtYWxpemU6aG8sb3ZlcndyaXRlOlllLHBvc2l0aXZlOnNyLHByb3BlcnRpZXM6bG8scHJvcGVydHk6Y3IscmVnZXg6b28sc2l6ZTpzbixzbHVnaWZ5OmdvLHN0YXJ0c1dpdGg6aW8sdG9Mb3dlckNhc2U6bW8sdG9VcHBlckNhc2U6Zm8sdHJpbTpwbyx1cHBlcmNhc2U6cm99LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSksbGQ9bmV3IFdlYWtTZXQoW09iamVjdC5wcm90b3R5cGUsRXJyb3IucHJvdG90eXBlXSk7ZnVuY3Rpb24gYXMoZSx0LG4pe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiExLGdldCgpe2NvbnN0IG89bih0aGlzKTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7dmFsdWU6byxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KSxvfSxzZXQobyl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7dmFsdWU6byxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KX19KX1jb25zdCBEZj0oZSx0KT0+e2ZoLmluaXQoZSx0KSxlLm5hbWU9IlpvZEVycm9yIjtjb25zdCBuPU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTtsZC5oYXMobil8fChsZC5hZGQobiksYXMobiwiZm9ybWF0IixvPT5zPT5XcyhvLHMpKSxhcyhuLCJmbGF0dGVuIixvPT5zPT5WcyhvLHMpKSxhcyhuLCJhZGRJc3N1ZSIsbz0+cz0+e28uaXNzdWVzLnB1c2gocyksby5tZXNzYWdlPUpTT04uc3RyaW5naWZ5KG8uaXNzdWVzLHZzLDIpfSksYXMobiwiYWRkSXNzdWVzIixvPT5zPT57by5pc3N1ZXMucHVzaCguLi5zKSxvLm1lc3NhZ2U9SlNPTi5zdHJpbmdpZnkoby5pc3N1ZXMsdnMsMil9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiaXNFbXB0eSIse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiExLGdldCgpe3JldHVybiB0aGlzLmlzc3Vlcy5sZW5ndGg9PT0wfX0pKX0sTGY9ZigiWm9kRXJyb3IiLERmKSxQZT1mKCJab2RFcnJvciIsRGYsdm9pZCAwLHtQYXJlbnQ6RXJyb3J9KSx5Yz1HbihQZSksJGM9Sm4oUGUpLHdjPVluKFBlKSxfYz1RbihQZSksU2M9YWkoUGUpLGpjPWlpKFBlKSxUYz1jaShQZSksQWM9bGkoUGUpLHpjPXVpKFBlKSxDYz1kaShQZSksTmM9aGkoUGUpLFBjPXBpKFBlKTtmdW5jdGlvbiBmeSgpe1RlLmxvY2FsZUVycm9yfHxwZShHbSgpKX1mdW5jdGlvbiBadCgpe1RlLm1lbW9pemVyfHxwZSh7bWVtb2l6ZXI6ZXIoKX0pfWNvbnN0IEI9ZigiWm9kVHlwZSIsKGUsdCk9PihmeSgpLEQuaW5pdChlLHQpLGUuZGVmPXQsZS50eXBlPXQudHlwZSxlKSx7Y2hlY2soLi4uZSl7Y29uc3QgdD10aGlzLmRlZjtyZXR1cm4gdGhpcy5jbG9uZSh3ZSh0LHtjaGVja3M6Wy4uLnQuY2hlY2tzPz9bXSwuLi5lLm1hcChuPT50eXBlb2Ygbj09ImZ1bmN0aW9uIj97X3pvZDp7Y2hlY2s6bixkZWY6e2NoZWNrOiJjdXN0b20ifSxvbmF0dGFjaDpbXX19Om4pXX0pLHtwYXJlbnQ6ITB9KX0sd2l0aCguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayguLi5lKX0sY2xvbmUoZSx0KXtyZXR1cm4gaWUodGhpcyxlLHQpfSxicmFuZCgpe3JldHVybiB0aGlzfSxyZWdpc3RlcihlLHQpe3JldHVybiBlLmFkZCh0aGlzLHQpLHRoaXN9LHJlZmluZShlLHQpe3JldHVybiB0aGlzLmNoZWNrKEpyKGUsdCkpfSxzdXBlclJlZmluZShlLHQpe3JldHVybiB0aGlzLmNoZWNrKFlyKGUsdCkpfSxvdmVyd3JpdGUoZSl7cmV0dXJuIHRoaXMuY2hlY2soWWUoZSkpfSxvcHRpb25hbCgpe3JldHVybiBzZSh0aGlzKX0sZXhhY3RPcHRpb25hbCgpe3JldHVybiBOcih0aGlzKX0sbnVsbGFibGUoKXtyZXR1cm4gWHQodGhpcyl9LG51bGxpc2goKXtyZXR1cm4gc2UoWHQodGhpcykpfSxub25vcHRpb25hbChlKXtyZXR1cm4gT3IodGhpcyxlKX0sYXJyYXkoKXtyZXR1cm4gRSh0aGlzKX0sb3IoZSl7cmV0dXJuIEYoW3RoaXMsZV0pfSxhbmQoZSl7cmV0dXJuIHluKHRoaXMsZSl9LHRyYW5zZm9ybShlKXtyZXR1cm4gQm4odGhpcyxEbyhlKSl9LGRlZmF1bHQoZSl7cmV0dXJuIElyKHRoaXMsZSl9LHByZWZhdWx0KGUpe3JldHVybiBFcih0aGlzLGUpfSxjYXRjaChlKXtyZXR1cm4gcXIodGhpcyxlKX0scGlwZShlKXtyZXR1cm4gQm4odGhpcyxlKX0scmVhZG9ubHkoKXtyZXR1cm4gSHIodGhpcyl9LGRlc2NyaWJlKGUpe2NvbnN0IHQ9dGhpcy5jbG9uZSgpO3JldHVybiBxZS5hZGQodCx7ZGVzY3JpcHRpb246ZX0pLHR9LG1ldGEoLi4uZSl7aWYoZS5sZW5ndGg9PT0wKXJldHVybiBxZS5nZXQodGhpcyk7Y29uc3QgdD10aGlzLmNsb25lKCk7cmV0dXJuIHFlLmFkZCh0LGVbMF0pLHR9LGlzT3B0aW9uYWwoKXtyZXR1cm4gdGhpcy5zYWZlUGFyc2Uodm9pZCAwKS5zdWNjZXNzfSxpc051bGxhYmxlKCl7cmV0dXJuIHRoaXMuc2FmZVBhcnNlKG51bGwpLnN1Y2Nlc3N9LGFwcGx5KGUsLi4udCl7cmV0dXJuIHQubGVuZ3RoPT09MD9lKHRoaXMpOmUodGhpcywuLi50KX0sZ2V0In5zdGFuZGFyZCIoKXtyZXR1cm4gRnModGhpcywifnN0YW5kYXJkIix7Li4uJGkodGhpcyksanNvblNjaGVtYTp7aW5wdXQ6TmEoKSxvdXRwdXQ6TmEoKX19KX0sc2V0In5zdGFuZGFyZCIoZSl7dHQodGhpcywifnN0YW5kYXJkIixlKX0scGFyc2U6ZnVuY3Rpb24gZSh0LG4pe3JldHVybiB5Yyh0aGlzLHQsbix7Y2FsbGVlOmV9KX0scGFyc2VBc3luYzphc3luYyBmdW5jdGlvbiBlKHQsbil7cmV0dXJuIGF3YWl0ICRjKHRoaXMsdCxuLHtjYWxsZWU6ZX0pfSxzYWZlUGFyc2UoZSx0KXtyZXR1cm4gd2ModGhpcyxlLHQpfSxhc3luYyBzYWZlUGFyc2VBc3luYyhlLHQpe3JldHVybiBfYyh0aGlzLGUsdCl9LGdldCBzcGEoKXtyZXR1cm4gdGhpcz8uc2FmZVBhcnNlQXN5bmN9LHNldCBzcGEoZSl7dHQodGhpcywic3BhIixlKX0sdmFsaWRhdGUoZSx0KXtyZXR1cm4gR3ModGhpcyxlLHQpfSx2YWxpZGF0ZUFzeW5jKGUsdCl7cmV0dXJuIEpzKHRoaXMsZSx0KX0sZW5jb2RlOmZ1bmN0aW9uIGUodCxuKXtyZXR1cm4gU2ModGhpcyx0LG4se2NhbGxlZTplfSl9LGRlY29kZTpmdW5jdGlvbiBlKHQsbil7cmV0dXJuIGpjKHRoaXMsdCxuLHtjYWxsZWU6ZX0pfSxlbmNvZGVBc3luYzphc3luYyBmdW5jdGlvbiBlKHQsbil7cmV0dXJuIGF3YWl0IFRjKHRoaXMsdCxuLHtjYWxsZWU6ZX0pfSxkZWNvZGVBc3luYzphc3luYyBmdW5jdGlvbiBlKHQsbil7cmV0dXJuIGF3YWl0IEFjKHRoaXMsdCxuLHtjYWxsZWU6ZX0pfSxzYWZlRW5jb2RlKGUsdCl7cmV0dXJuIHpjKHRoaXMsZSx0KX0sc2FmZURlY29kZShlLHQpe3JldHVybiBDYyh0aGlzLGUsdCl9LGFzeW5jIHNhZmVFbmNvZGVBc3luYyhlLHQpe3JldHVybiBOYyh0aGlzLGUsdCl9LGFzeW5jIHNhZmVEZWNvZGVBc3luYyhlLHQpe3JldHVybiBQYyh0aGlzLGUsdCl9LHRvSlNPTlNjaGVtYShlKXtyZXR1cm4gRWYoKShlKX0sZ2V0IGRlc2NyaXB0aW9uKCl7cmV0dXJuIHFlLmdldCh0aGlzKT8uZGVzY3JpcHRpb259LGdldCBfZGVmKCl7cmV0dXJuIHRoaXMuX3pvZC5kZWZ9fSksYm89ZigiX1pvZFN0cmluZyIsKGUsdCk9Pntuby5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PkFrKCl9LEtuKHtmb3JtYXQ6ZT0+RGUoKS5mb3JtYXQ/P251bGwsbWluTGVuZ3RoOmU9PkRlKCkubWluaW11bT8/bnVsbCxtYXhMZW5ndGg6ZT0+RGUoKS5tYXhpbXVtPz9udWxsfSx7cmVnZXgoLi4uZSl7cmV0dXJuIHRoaXMuY2hlY2sob28oLi4uZSkpfSxpbmNsdWRlcyguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhhbyguLi5lKSl9LHN0YXJ0c1dpdGgoLi4uZSl7cmV0dXJuIHRoaXMuY2hlY2soaW8oLi4uZSkpfSxlbmRzV2l0aCguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhjbyguLi5lKSl9LG1pbiguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhtdCguLi5lKSl9LG1heCguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhybiguLi5lKSl9LGxlbmd0aCguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhhbiguLi5lKSl9LG5vbmVtcHR5KC4uLmUpe3JldHVybiB0aGlzLmNoZWNrKG10KDEsLi4uZSkpfSxsb3dlcmNhc2UoZSl7cmV0dXJuIHRoaXMuY2hlY2soc28oZSkpfSx1cHBlcmNhc2UoZSl7cmV0dXJuIHRoaXMuY2hlY2socm8oZSkpfSx0cmltKCl7cmV0dXJuIHRoaXMuY2hlY2socG8oKSl9LG5vcm1hbGl6ZSguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhobyguLi5lKSl9LHRvTG93ZXJDYXNlKCl7cmV0dXJuIHRoaXMuY2hlY2sobW8oKSl9LHRvVXBwZXJDYXNlKCl7cmV0dXJuIHRoaXMuY2hlY2soZm8oKSl9LHNsdWdpZnkoKXtyZXR1cm4gdGhpcy5jaGVjayhnbygpKX19KSksbG49ZigiWm9kU3RyaW5nIiwoZSx0KT0+e25vLmluaXQoZSx0KSxiby5pbml0KGUsdCl9LHtlbWFpbChlKXtyZXR1cm4gdGhpcy5jaGVjayhVaSh2byxlKSl9LHVybChlKXtyZXR1cm4gdGhpcy5jaGVjayhvcihtbixlKSl9LGp3dChlKXtyZXR1cm4gdGhpcy5jaGVjayhkYyhSbyxlKSl9LGVtb2ppKGUpe3JldHVybiB0aGlzLmNoZWNrKFlpKHlvLGUpKX0sZ3VpZChlKXtyZXR1cm4gdGhpcy5jaGVjayhWaShrbyxlKSl9LHV1aWQoZSl7cmV0dXJuIHRoaXMuY2hlY2soV2koVmUsZSkpfSx1dWlkdjQoZSl7cmV0dXJuIHRoaXMuY2hlY2soS2koVmUsZSkpfSx1dWlkdjYoZSl7cmV0dXJuIHRoaXMuY2hlY2soR2koVmUsZSkpfSx1dWlkdjcoZSl7cmV0dXJuIHRoaXMuY2hlY2soSmkoVmUsZSkpfSxuYW5vaWQoZSl7cmV0dXJuIHRoaXMuY2hlY2soUWkoJG8sZSkpfSxjdWlkKGUpe3JldHVybiB0aGlzLmNoZWNrKFhpKHdvLGUpKX0sY3VpZDIoZSl7cmV0dXJuIHRoaXMuY2hlY2soZWMoX28sZSkpfSx1bGlkKGUpe3JldHVybiB0aGlzLmNoZWNrKHRjKFNvLGUpKX0sYmFzZTY0KGUpe3JldHVybiB0aGlzLmNoZWNrKGNjKFBvLGUpKX0sYmFzZTY0dXJsKGUpe3JldHVybiB0aGlzLmNoZWNrKGxjKHhvLGUpKX0seGlkKGUpe3JldHVybiB0aGlzLmNoZWNrKG5jKGpvLGUpKX0sa3N1aWQoZSl7cmV0dXJuIHRoaXMuY2hlY2sob2MoVG8sZSkpfSxpcHY0KGUpe3JldHVybiB0aGlzLmNoZWNrKHNjKEFvLGUpKX0saXB2NihlKXtyZXR1cm4gdGhpcy5jaGVjayhyYyh6byxlKSl9LGNpZHJ2NChlKXtyZXR1cm4gdGhpcy5jaGVjayhhYyhDbyxlKSl9LGNpZHJ2NihlKXtyZXR1cm4gdGhpcy5jaGVjayhpYyhObyxlKSl9LGUxNjQoZSl7cmV0dXJuIHRoaXMuY2hlY2sodWMoSW8sZSkpfSxkYXRldGltZShlKXtyZXR1cm4gdGhpcy5jaGVjayhwYyh1bixlKSl9LGRhdGUoZSl7cmV0dXJuIHRoaXMuY2hlY2sobWMoZG4sZSkpfSx0aW1lKGUpe3JldHVybiB0aGlzLmNoZWNrKGZjKGhuLGUpKX0sZHVyYXRpb24oZSl7cmV0dXJuIHRoaXMuY2hlY2soZ2MocG4sZSkpfX0pO2Z1bmN0aW9uIGcoZSl7cmV0dXJuIFltKGxuLGUpfWNvbnN0IHRlPWYoIlpvZFN0cmluZ0Zvcm1hdCIsKGUsdCk9PntvZS5pbml0KGUsdCksYm8uaW5pdChlLHQpfSksdW49ZigiWm9kSVNPRGF0ZVRpbWUiLChlLHQpPT57WnAuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pLGRuPWYoIlpvZElTT0RhdGUiLChlLHQpPT57TXAuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pLGhuPWYoIlpvZElTT1RpbWUiLChlLHQpPT57cXAuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pLHBuPWYoIlpvZElTT0R1cmF0aW9uIiwoZSx0KT0+e0RwLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KSx2bz1mKCJab2RFbWFpbCIsKGUsdCk9PntTcC5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24geGMoZSl7cmV0dXJuIFVpKHZvLGUpfWNvbnN0IGtvPWYoIlpvZEdVSUQiLChlLHQpPT57d3AuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pO2Z1bmN0aW9uIEljKGUpe3JldHVybiBWaShrbyxlKX1jb25zdCBWZT1mKCJab2RVVUlEIiwoZSx0KT0+e19wLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBSYyhlKXtyZXR1cm4gV2koVmUsZSl9ZnVuY3Rpb24gRWMoZSl7cmV0dXJuIEtpKFZlLGUpfWZ1bmN0aW9uIE9jKGUpe3JldHVybiBHaShWZSxlKX1mdW5jdGlvbiBaYyhlKXtyZXR1cm4gSmkoVmUsZSl9Y29uc3QgbW49ZigiWm9kVVJMIiwoZSx0KT0+e0NwLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBNYyhlKXtyZXR1cm4gb3IobW4sZSl9ZnVuY3Rpb24gcWMoZSl7cmV0dXJuIG9yKG1uLHtwcm90b2NvbDptaSxob3N0bmFtZTpaaCwuLi53KGUpfSl9Y29uc3QgeW89ZigiWm9kRW1vamkiLChlLHQpPT57TnAuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pO2Z1bmN0aW9uIERjKGUpe3JldHVybiBZaSh5byxlKX1jb25zdCAkbz1mKCJab2ROYW5vSUQiLChlLHQpPT57UHAuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pO2Z1bmN0aW9uIExjKGUpe3JldHVybiBRaSgkbyxlKX1jb25zdCB3bz1mKCJab2RDVUlEIiwoZSx0KT0+e3hwLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBCYyhlKXtyZXR1cm4gWGkod28sZSl9Y29uc3QgX289ZigiWm9kQ1VJRDIiLChlLHQpPT57SXAuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pO2Z1bmN0aW9uIEhjKGUpe3JldHVybiBlYyhfbyxlKX1jb25zdCBTbz1mKCJab2RVTElEIiwoZSx0KT0+e1JwLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBGYyhlKXtyZXR1cm4gdGMoU28sZSl9Y29uc3Qgam89ZigiWm9kWElEIiwoZSx0KT0+e0VwLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBVYyhlKXtyZXR1cm4gbmMoam8sZSl9Y29uc3QgVG89ZigiWm9kS1NVSUQiLChlLHQpPT57T3AuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pO2Z1bmN0aW9uIFZjKGUpe3JldHVybiBvYyhUbyxlKX1jb25zdCBBbz1mKCJab2RJUHY0IiwoZSx0KT0+e0xwLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBXYyhlKXtyZXR1cm4gc2MoQW8sZSl9Y29uc3QgbHI9ZigiWm9kTUFDIiwoZSx0KT0+e0hwLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBLYyhlKXtyZXR1cm4gWG0obHIsZSl9Y29uc3Qgem89ZigiWm9kSVB2NiIsKGUsdCk9PntCcC5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24gR2MoZSl7cmV0dXJuIHJjKHpvLGUpfWNvbnN0IENvPWYoIlpvZENJRFJ2NCIsKGUsdCk9PntGcC5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24gSmMoZSl7cmV0dXJuIGFjKENvLGUpfWNvbnN0IE5vPWYoIlpvZENJRFJ2NiIsKGUsdCk9PntWcC5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24gWWMoZSl7cmV0dXJuIGljKE5vLGUpfWNvbnN0IFBvPWYoIlpvZEJhc2U2NCIsKGUsdCk9PntLcC5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24gUWMoZSl7cmV0dXJuIGNjKFBvLGUpfWNvbnN0IHhvPWYoIlpvZEJhc2U2NFVSTCIsKGUsdCk9PntKcC5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24gWGMoZSl7cmV0dXJuIGxjKHhvLGUpfWNvbnN0IElvPWYoIlpvZEUxNjQiLChlLHQpPT57WXAuaW5pdChlLHQpLHRlLmluaXQoZSx0KX0pO2Z1bmN0aW9uIGVsKGUpe3JldHVybiB1YyhJbyxlKX1jb25zdCB1cj1mKCJab2RDcmVkaXRDYXJkIiwoZSx0KT0+e1hwLmluaXQoZSx0KSx0ZS5pbml0KGUsdCl9KTtmdW5jdGlvbiB0bChlKXtyZXR1cm4gZWYodXIsZSl9Y29uc3QgZHI9ZigiWm9kSUJBTiIsKGUsdCk9Pnt0bS5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24gbmwoZSl7cmV0dXJuIHRmKGRyLGUpfWNvbnN0IFJvPWYoIlpvZEpXVCIsKGUsdCk9PntvbS5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24gb2woZSl7cmV0dXJuIGRjKFJvLGUpfWNvbnN0IGd0PWYoIlpvZEN1c3RvbVN0cmluZ0Zvcm1hdCIsKGUsdCk9PntzbS5pbml0KGUsdCksdGUuaW5pdChlLHQpfSk7ZnVuY3Rpb24gc2woZSx0LG49e30pe3JldHVybiBjbihndCxlLHQsbil9ZnVuY3Rpb24gcmwoZSl7cmV0dXJuIGNuKGd0LCJob3N0bmFtZSIsT2gsZSl9ZnVuY3Rpb24gYWwoZSl7cmV0dXJuIGNuKGd0LCJoZXgiLFhoLGUpfWZ1bmN0aW9uIGlsKGUpe3JldHVybiBjbihndCwiY3VycmVuY3lfY29kZSIscWgsZSl9ZnVuY3Rpb24gY2woZSx0KXtjb25zdCBuPXQ/LmVuYz8/ImhleCIsbz1gJHtlfV8ke259YCxzPVFzW29dO2lmKCFzKXRocm93IG5ldyBFcnJvcihgVW5yZWNvZ25pemVkIGhhc2ggZm9ybWF0OiAke299YCk7cmV0dXJuIGNuKGd0LG8scyx0KX1jb25zdCBmbj1mKCJab2ROdW1iZXIiLChlLHQpPT57QWkuaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT56aygpLGUuaXNGaW5pdGU9ITB9LEtuKHttaW5WYWx1ZTplPT57Y29uc3R7bWluaW11bTp0LGV4Y2x1c2l2ZU1pbmltdW06bn09RGUoKTtyZXR1cm4gTWF0aC5tYXgodD8/TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZLG4/P051bWJlci5ORUdBVElWRV9JTkZJTklUWSl9LG1heFZhbHVlOmU9Pntjb25zdHttYXhpbXVtOnQsZXhjbHVzaXZlTWF4aW11bTpufT1EZSgpO3JldHVybiBNYXRoLm1pbih0Pz9OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksbj8/TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKX0saXNJbnQ6ZT0+e2NvbnN0e2lzSW50OnQsbXVsdGlwbGVPZjpufT1EZSgpO3JldHVybiEhdHx8ISFuPy5zb21lKE51bWJlci5pc1NhZmVJbnRlZ2VyKX0sZm9ybWF0OmU9PkRlKCkuZm9ybWF0Pz9udWxsfSx7Z3QoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhvdChlLHQpKX0sZ3RlKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soUmUoZSx0KSl9LG1pbihlLHQpe3JldHVybiB0aGlzLmNoZWNrKFJlKGUsdCkpfSxsdChlLHQpe3JldHVybiB0aGlzLmNoZWNrKG50KGUsdCkpfSxsdGUoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhJZShlLHQpKX0sbWF4KGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soSWUoZSx0KSl9LGludChlKXtyZXR1cm4gdGhpcy5jaGVjayhMbihlKSl9LHNhZmUoZSl7cmV0dXJuIHRoaXMuY2hlY2soTG4oZSkpfSxwb3NpdGl2ZShlKXtyZXR1cm4gdGhpcy5jaGVjayhvdCgwLGUpKX0sbm9ubmVnYXRpdmUoZSl7cmV0dXJuIHRoaXMuY2hlY2soUmUoMCxlKSl9LG5lZ2F0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKG50KDAsZSkpfSxub25wb3NpdGl2ZShlKXtyZXR1cm4gdGhpcy5jaGVjayhJZSgwLGUpKX0sbXVsdGlwbGVPZihlLHQpe3JldHVybiB0aGlzLmNoZWNrKGp0KGUsdCkpfSxzdGVwKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soanQoZSx0KSl9LGZpbml0ZSgpe3JldHVybiB0aGlzfX0pKTtmdW5jdGlvbiBMKGUpe3JldHVybiBuZihmbixlKX1jb25zdCBidD1mKCJab2ROdW1iZXJGb3JtYXQiLChlLHQpPT57cm0uaW5pdChlLHQpLGZuLmluaXQoZSx0KX0pO2Z1bmN0aW9uIExuKGUpe3JldHVybiBzZihidCxlKX1mdW5jdGlvbiBsbChlKXtyZXR1cm4gcmYoYnQsZSl9ZnVuY3Rpb24gdWwoZSl7cmV0dXJuIGFmKGJ0LGUpfWZ1bmN0aW9uIGRsKGUpe3JldHVybiBjZihidCxlKX1mdW5jdGlvbiBobChlKXtyZXR1cm4gbGYoYnQsZSl9Y29uc3QgZ249ZigiWm9kQm9vbGVhbiIsKGUsdCk9Pnt6aS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PkNrKCl9KTtmdW5jdGlvbiBlZShlKXtyZXR1cm4gdWYoZ24sZSl9Y29uc3QgYm49ZigiWm9kQmlnSW50IiwoZSx0KT0+e0NpLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+TmsoKX0sS24oe21pblZhbHVlOmU9PkRlKCkubWluaW11bT8/bnVsbCxtYXhWYWx1ZTplPT5EZSgpLm1heGltdW0/P251bGwsZm9ybWF0OmU9PkRlKCkuZm9ybWF0Pz9udWxsfSx7Z3RlKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soUmUoZSx0KSl9LG1pbihlLHQpe3JldHVybiB0aGlzLmNoZWNrKFJlKGUsdCkpfSxndChlLHQpe3JldHVybiB0aGlzLmNoZWNrKG90KGUsdCkpfSxsdChlLHQpe3JldHVybiB0aGlzLmNoZWNrKG50KGUsdCkpfSxsdGUoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhJZShlLHQpKX0sbWF4KGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soSWUoZSx0KSl9LHBvc2l0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKG90KEJpZ0ludCgwKSxlKSl9LG5lZ2F0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKG50KEJpZ0ludCgwKSxlKSl9LG5vbnBvc2l0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKEllKEJpZ0ludCgwKSxlKSl9LG5vbm5lZ2F0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKFJlKEJpZ0ludCgwKSxlKSl9LG11bHRpcGxlT2YoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhqdChlLHQpKX19KSk7ZnVuY3Rpb24gcGwoZSl7cmV0dXJuIGhmKGJuLGUpfWNvbnN0IEVvPWYoIlpvZEJpZ0ludEZvcm1hdCIsKGUsdCk9PnthbS5pbml0KGUsdCksYm4uaW5pdChlLHQpfSk7ZnVuY3Rpb24gbWwoZSl7cmV0dXJuIG1mKEVvLGUpfWZ1bmN0aW9uIGZsKGUpe3JldHVybiBmZihFbyxlKX1jb25zdCBocj1mKCJab2RTeW1ib2wiLChlLHQpPT57aW0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5QaygpfSk7ZnVuY3Rpb24gZ2woZSl7cmV0dXJuIGdmKGhyLGUpfWNvbnN0IHByPWYoIlpvZFVuZGVmaW5lZCIsKGUsdCk9PntjbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PklrKCl9KTtmdW5jdGlvbiBRdChlKXtyZXR1cm4gYmYocHIsZSl9Y29uc3QgbXI9ZigiWm9kTnVsbCIsKGUsdCk9PntsbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PnhrKCl9KTtmdW5jdGlvbiBPbyhlKXtyZXR1cm4gdmYobXIsZSl9Y29uc3QgZnI9ZigiWm9kQW55IiwoZSx0KT0+e3VtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+T2soKX0pO2Z1bmN0aW9uIFpvKCl7cmV0dXJuIGtmKGZyKX1jb25zdCBncj1mKCJab2RVbmtub3duIiwoZSx0KT0+e2RtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+WmsoKX0pO2Z1bmN0aW9uIFgoKXtyZXR1cm4geWYoZ3IpfWNvbnN0IGJyPWYoIlpvZE5ldmVyIiwoZSx0KT0+e2htLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+RWsoKX0pO2Z1bmN0aW9uIFR0KGUpe3JldHVybiAkZihicixlKX1jb25zdCB2cj1mKCJab2RWb2lkIiwoZSx0KT0+e3BtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+UmsoKX0pO2Z1bmN0aW9uIGJsKGUpe3JldHVybiB3Zih2cixlKX1jb25zdCBNbz1mKCJab2REYXRlIiwoZSx0KT0+e21tLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+TWsoKSxlLm1pbj0obixvKT0+ZS5jaGVjayhSZShuLG8pKSxlLm1heD0obixvKT0+ZS5jaGVjayhJZShuLG8pKX0sS24oe21pbkRhdGU6ZT0+e2NvbnN0e21pbmltdW06dH09RGUoKTtyZXR1cm4gdD9uZXcgRGF0ZSh0KTpudWxsfSxtYXhEYXRlOmU9Pntjb25zdHttYXhpbXVtOnR9PURlKCk7cmV0dXJuIHQ/bmV3IERhdGUodCk6bnVsbH19LHt9KSk7ZnVuY3Rpb24gdmwoZSl7cmV0dXJuIF9mKE1vLGUpfWNvbnN0IGtyPWYoIlpvZEFycmF5IiwoZSx0KT0+e1p0KCksZm0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5KaygpLGUuZWxlbWVudD10LmVsZW1lbnR9LHttaW4oZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhtdChlLHQpKX0sbm9uZW1wdHkoZSl7cmV0dXJuIHRoaXMuY2hlY2sobXQoMSxlKSl9LG1heChlLHQpe3JldHVybiB0aGlzLmNoZWNrKHJuKGUsdCkpfSxsZW5ndGgoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhhbihlLHQpKX0sdW53cmFwKCl7cmV0dXJuIHRoaXMuZWxlbWVudH19KTtmdW5jdGlvbiBFKGUsdCl7cmV0dXJuIFRmKGtyLGUsdCl9ZnVuY3Rpb24ga2woZSl7Y29uc3QgdD1lLl96b2QuZGVmLnNoYXBlO3JldHVybiB2ZShPYmplY3Qua2V5cyh0KSl9Y29uc3Qgdm49ZigiWm9kT2JqZWN0IiwoZSx0KT0+e1p0KCksa20uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5ZaygpLGhoKGUsInNoYXBlIixuPT5uLl96b2QuZGVmLnNoYXBlLCExKX0se2tleW9mKCl7cmV0dXJuIHZlKE9iamVjdC5rZXlzKHRoaXMuX3pvZC5kZWYuc2hhcGUpKX0sY2F0Y2hhbGwoZSl7cmV0dXJuIHRoaXMuY2xvbmUod2UodGhpcy5fem9kLmRlZix7Y2F0Y2hhbGw6ZX0pKX0scGFzc3Rocm91Z2goKXtyZXR1cm4gdGhpcy5jbG9uZSh3ZSh0aGlzLl96b2QuZGVmLHtjYXRjaGFsbDpYKCl9KSl9LGxvb3NlKCl7cmV0dXJuIHRoaXMuY2xvbmUod2UodGhpcy5fem9kLmRlZix7Y2F0Y2hhbGw6WCgpfSkpfSxzdHJpY3QoKXtyZXR1cm4gdGhpcy5jbG9uZSh3ZSh0aGlzLl96b2QuZGVmLHtjYXRjaGFsbDpUdCgpfSkpfSxzdHJpcCgpe3JldHVybiB0aGlzLmNsb25lKHdlKHRoaXMuX3pvZC5kZWYse2NhdGNoYWxsOnZvaWQgMH0pKX0sZXh0ZW5kKGUpe3JldHVybiBuaCh0aGlzLGUpfSxzYWZlRXh0ZW5kKGUpe3JldHVybiBzaCh0aGlzLGUpfSxtZXJnZShlKXtyZXR1cm4gcmgodGhpcyxlKX0scGljayhlKXtyZXR1cm4gZWgodGhpcyxlKX0sb21pdChlKXtyZXR1cm4gdGgodGhpcyxlKX0scGFydGlhbCguLi5lKXtyZXR1cm4gd2EoJG4sdGhpcyxlWzBdKX0sZXhhY3RQYXJ0aWFsKC4uLmUpe3JldHVybiB3YShMbyx0aGlzLGVbMF0sImV4YWN0UGFydGlhbCIpfSxyZXF1aXJlZCguLi5lKXtyZXR1cm4gYWgoQm8sdGhpcyxlWzBdKX19KTtmdW5jdGlvbiBrKGUsdCl7Y29uc3Qgbj17dHlwZToib2JqZWN0IixzaGFwZTplPz97fSwuLi53KHQpfTtyZXR1cm4gbmV3IHZuKG4pfWZ1bmN0aW9uIHlsKGUsdCl7cmV0dXJuIG5ldyB2bih7dHlwZToib2JqZWN0IixzaGFwZTplLGNhdGNoYWxsOlR0KCksLi4udyh0KX0pfWZ1bmN0aW9uIGdlKGUsdCl7cmV0dXJuIG5ldyB2bih7dHlwZToib2JqZWN0IixzaGFwZTplLGNhdGNoYWxsOlgoKSwuLi53KHQpfSl9Y29uc3Qga249ZigiWm9kVW5pb24iLChlLHQpPT57WHMuaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5PZigpLGUub3B0aW9ucz10Lm9wdGlvbnN9KTtmdW5jdGlvbiBGKGUsdCl7cmV0dXJuIG5ldyBrbih7dHlwZToidW5pb24iLG9wdGlvbnM6ZSwuLi53KHQpfSl9Y29uc3QgeXI9ZigiWm9kWG9yIiwoZSx0KT0+e2tuLmluaXQoZSx0KSx5bS5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9Pk9mKCksZS5vcHRpb25zPXQub3B0aW9uc30pO2Z1bmN0aW9uICRsKGUsdCl7cmV0dXJuIG5ldyB5cih7dHlwZToidW5pb24iLG9wdGlvbnM6ZSxpbmNsdXNpdmU6ITEsLi4udyh0KX0pfWNvbnN0ICRyPWYoIlpvZERpc2NyaW1pbmF0ZWRVbmlvbiIsKGUsdCk9Pntrbi5pbml0KGUsdCksd20uaW5pdChlLHQpfSk7ZnVuY3Rpb24gcW8oZSx0LG4pe3JldHVybiBuZXcgJHIoe3R5cGU6InVuaW9uIixvcHRpb25zOnQsZGlzY3JpbWluYXRvcjplLC4uLncobil9KX1jb25zdCB3cj1mKCJab2RJbnRlcnNlY3Rpb24iLChlLHQpPT57X20uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5RaygpfSk7ZnVuY3Rpb24geW4oZSx0KXtyZXR1cm4gbmV3IHdyKHt0eXBlOiJpbnRlcnNlY3Rpb24iLGxlZnQ6ZSxyaWdodDp0fSl9Y29uc3QgX3I9ZigiWm9kVHVwbGUiLChlLHQpPT57WnQoKSxQaS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PlhrKCl9LHtyZXN0KGUpe3JldHVybiB0aGlzLmNsb25lKHsuLi50aGlzLl96b2QuZGVmLHJlc3Q6ZX0pfSxwYXJ0aWFsKCl7Y29uc3QgZT10aGlzLl96b2QuZGVmO2lmKGUuY2hlY2tzPy5sZW5ndGgpdGhyb3cgbmV3IEVycm9yKCIucGFydGlhbCgpIGNhbm5vdCBiZSB1c2VkIG9uIHR1cGxlIHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50cyIpO3JldHVybiB0aGlzLmNsb25lKHsuLi5lLGl0ZW1zOmUuaXRlbXMubWFwKHQ9Pm5ldyAkbih7dHlwZToib3B0aW9uYWwiLGlubmVyVHlwZTp0fSkpfSl9fSk7ZnVuY3Rpb24gU3IoZSx0LG4pe2NvbnN0IG89dCBpbnN0YW5jZW9mIEQscz1vP246dCxyPW8/dDpudWxsO3JldHVybiBuZXcgX3Ioe3R5cGU6InR1cGxlIixpdGVtczplLHJlc3Q6ciwuLi53KHMpfSl9Y29uc3QgQXQ9ZigiWm9kUmVjb3JkIiwoZSx0KT0+e1p0KCksU20uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5leSgpLGUua2V5VHlwZT10LmtleVR5cGUsZS52YWx1ZVR5cGU9dC52YWx1ZVR5cGV9KTtmdW5jdGlvbiBXKGUsdCxuKXtyZXR1cm4hdHx8IXQuX3pvZD9uZXcgQXQoe3R5cGU6InJlY29yZCIsa2V5VHlwZTpnKCksdmFsdWVUeXBlOmUsLi4udyh0KX0pOm5ldyBBdCh7dHlwZToicmVjb3JkIixrZXlUeXBlOmUsdmFsdWVUeXBlOnQsLi4udyhuKX0pfWZ1bmN0aW9uIHdsKGUsdCxuKXtyZXR1cm4gbmV3IEF0KHt0eXBlOiJyZWNvcmQiLGtleVR5cGU6ZSx2YWx1ZVR5cGU6dCwuLi53KG4pLHBhcnRpYWw6ITB9KX1mdW5jdGlvbiBfbChlLHQsbil7cmV0dXJuIG5ldyBBdCh7dHlwZToicmVjb3JkIixrZXlUeXBlOmUsdmFsdWVUeXBlOnQsbW9kZToibG9vc2UiLC4uLncobil9KX1jb25zdCBqcj1mKCJab2RNYXAiLChlLHQpPT57WnQoKSxqbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PktrKCksZS5rZXlUeXBlPXQua2V5VHlwZSxlLnZhbHVlVHlwZT10LnZhbHVlVHlwZSxlLm1pbj0oLi4ubik9PmUuY2hlY2soc3QoLi4ubikpLGUubm9uZW1wdHk9bj0+ZS5jaGVjayhzdCgxLG4pKSxlLm1heD0oLi4ubik9PmUuY2hlY2soT3QoLi4ubikpLGUuc2l6ZT0oLi4ubik9PmUuY2hlY2soc24oLi4ubikpfSk7ZnVuY3Rpb24gU2woZSx0LG4pe3JldHVybiBuZXcganIoe3R5cGU6Im1hcCIsa2V5VHlwZTplLHZhbHVlVHlwZTp0LC4uLncobil9KX1jb25zdCBUcj1mKCJab2RTZXQiLChlLHQpPT57WnQoKSxUbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PkdrKCksZS5taW49KC4uLm4pPT5lLmNoZWNrKHN0KC4uLm4pKSxlLm5vbmVtcHR5PW49PmUuY2hlY2soc3QoMSxuKSksZS5tYXg9KC4uLm4pPT5lLmNoZWNrKE90KC4uLm4pKSxlLnNpemU9KC4uLm4pPT5lLmNoZWNrKHNuKC4uLm4pKX0pO2Z1bmN0aW9uIGpsKGUsdCl7cmV0dXJuIG5ldyBUcih7dHlwZToic2V0Iix2YWx1ZVR5cGU6ZSwuLi53KHQpfSl9Y29uc3QgenQ9ZigiWm9kRW51bSIsKGUsdCk9PntBbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShvLHMscik9PnFrKCksZS5lbnVtPXQuZW50cmllcyxlLm9wdGlvbnM9Wy4uLmUuX3pvZC52YWx1ZXNdO2NvbnN0IG49bmV3IFNldChPYmplY3Qua2V5cyh0LmVudHJpZXMpKTtlLmV4dHJhY3Q9KG8scyk9Pntjb25zdCByPXt9O2Zvcihjb25zdCBpIG9mIG8paWYobi5oYXMoaSkpcltpXT10LmVudHJpZXNbaV07ZWxzZSB0aHJvdyBuZXcgRXJyb3IoYEtleSAke2l9IG5vdCBmb3VuZCBpbiBlbnVtYCk7cmV0dXJuIG5ldyB6dCh7Li4udCxjaGVja3M6W10sLi4udyhzKSxlbnRyaWVzOnJ9KX0sZS5leGNsdWRlPShvLHMpPT57Y29uc3Qgcj17Li4udC5lbnRyaWVzfTtmb3IoY29uc3QgaSBvZiBvKWlmKG4uaGFzKGkpKWRlbGV0ZSByW2ldO2Vsc2UgdGhyb3cgbmV3IEVycm9yKGBLZXkgJHtpfSBub3QgZm91bmQgaW4gZW51bWApO3JldHVybiBuZXcgenQoey4uLnQsY2hlY2tzOltdLC4uLncocyksZW50cmllczpyfSl9fSk7ZnVuY3Rpb24gdmUoZSx0KXtjb25zdCBuPUFycmF5LmlzQXJyYXkoZSk/T2JqZWN0LmZyb21FbnRyaWVzKGUubWFwKG89PltvLG9dKSk6ZTtyZXR1cm4gbmV3IHp0KHt0eXBlOiJlbnVtIixlbnRyaWVzOm4sLi4udyh0KX0pfWZ1bmN0aW9uIFRsKGUsdCl7cmV0dXJuIG5ldyB6dCh7dHlwZToiZW51bSIsZW50cmllczplLC4uLncodCl9KX1jb25zdCBBcj1mKCJab2RMaXRlcmFsIiwoZSx0KT0+e3ptLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+RGsoKSxlLnZhbHVlcz1uZXcgU2V0KHQudmFsdWVzKSxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwidmFsdWUiLHtnZXQoKXtpZih0LnZhbHVlcy5sZW5ndGg+MSl0aHJvdyBuZXcgRXJyb3IoIlRoaXMgc2NoZW1hIGNvbnRhaW5zIG11bHRpcGxlIHZhbGlkIGxpdGVyYWwgdmFsdWVzLiBVc2UgYC52YWx1ZXNgIGluc3RlYWQuIik7cmV0dXJuIHQudmFsdWVzWzBdfX0pfSk7ZnVuY3Rpb24gYihlLHQpe3JldHVybiBuZXcgQXIoe3R5cGU6ImxpdGVyYWwiLHZhbHVlczpBcnJheS5pc0FycmF5KGUpP2U6W2VdLC4uLncodCl9KX1jb25zdCB6cj1mKCJab2RGaWxlIiwoZSx0KT0+e0NtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+SGsoKSxlLm1pbj0obixvKT0+ZS5jaGVjayhzdChuLG8pKSxlLm1heD0obixvKT0+ZS5jaGVjayhPdChuLG8pKSxlLm1pbWU9KG4sbyk9PmUuY2hlY2sodW8oQXJyYXkuaXNBcnJheShuKT9uOltuXSxvKSl9KTtmdW5jdGlvbiBBbChlKXtyZXR1cm4gQWYoenIsZSl9Y29uc3QgQ3I9ZigiWm9kVHJhbnNmb3JtIiwoZSx0KT0+e1p0KCksTm0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5XaygpLGUuX3pvZC5wYXJzZT0obixvKT0+e2lmKG8uZGlyZWN0aW9uPT09ImJhY2t3YXJkIil0aHJvdyBuZXcgVXMoZS5jb25zdHJ1Y3Rvci5uYW1lKTtuLmFkZElzc3VlPXI9PntpZih0eXBlb2Ygcj09InN0cmluZyIpbi5pc3N1ZXMucHVzaChKdChyLG4udmFsdWUsdCkpO2Vsc2V7Y29uc3QgaT1yO2kuZmF0YWwmJihpLmNvbnRpbnVlPSExKSxpLmNvZGU/PyhpLmNvZGU9ImN1c3RvbSIpLCJpbnB1dCJpbiBpfHwoaS5pbnB1dD1uLnZhbHVlKSxpLmluc3Q/PyhpLmluc3Q9ZSksbi5pc3N1ZXMucHVzaChKdChpKSl9fTtjb25zdCBzPXQudHJhbnNmb3JtKG4udmFsdWUsbik7cmV0dXJuIHMgaW5zdGFuY2VvZiBQcm9taXNlP3MudGhlbihyPT4obi52YWx1ZT1yLG4pKToobi52YWx1ZT1zLG4pfX0pO2Z1bmN0aW9uIERvKGUpe3JldHVybiBuZXcgQ3Ioe3R5cGU6InRyYW5zZm9ybSIsdHJhbnNmb3JtOmV9KX1jb25zdCAkbj1mKCJab2RPcHRpb25hbCIsKGUsdCk9Pnt4aS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PlpmKCksZS51bndyYXA9KCk9PmUuX3pvZC5kZWYuaW5uZXJUeXBlfSk7ZnVuY3Rpb24gc2UoZSl7cmV0dXJuIG5ldyAkbih7dHlwZToib3B0aW9uYWwiLGlubmVyVHlwZTplfSl9Y29uc3QgTG89ZigiWm9kRXhhY3RPcHRpb25hbCIsKGUsdCk9PntQbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PlpmKCksZS51bndyYXA9KCk9PmUuX3pvZC5kZWYuaW5uZXJUeXBlfSk7ZnVuY3Rpb24gTnIoZSl7cmV0dXJuIG5ldyBMbyh7dHlwZToib3B0aW9uYWwiLGlubmVyVHlwZTplfSl9Y29uc3QgUHI9ZigiWm9kTnVsbGFibGUiLChlLHQpPT57eG0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT50eSgpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZX0pO2Z1bmN0aW9uIFh0KGUpe3JldHVybiBuZXcgUHIoe3R5cGU6Im51bGxhYmxlIixpbm5lclR5cGU6ZX0pfWZ1bmN0aW9uIHpsKGUpe3JldHVybiBzZShYdChlKSl9Y29uc3QgeHI9ZigiWm9kRGVmYXVsdCIsKGUsdCk9PntJbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9Pm95KCksZS51bndyYXA9KCk9PmUuX3pvZC5kZWYuaW5uZXJUeXBlLGUucmVtb3ZlRGVmYXVsdD1lLnVud3JhcH0pO2Z1bmN0aW9uIElyKGUsdCl7cmV0dXJuIG5ldyB4cih7dHlwZToiZGVmYXVsdCIsaW5uZXJUeXBlOmUsZ2V0IGRlZmF1bHRWYWx1ZSgpe3JldHVybiB0eXBlb2YgdD09ImZ1bmN0aW9uIj90KCk6cXModCl9fSl9Y29uc3QgUnI9ZigiWm9kUHJlZmF1bHQiLChlLHQpPT57Um0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5zeSgpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZX0pO2Z1bmN0aW9uIEVyKGUsdCl7cmV0dXJuIG5ldyBScih7dHlwZToicHJlZmF1bHQiLGlubmVyVHlwZTplLGdldCBkZWZhdWx0VmFsdWUoKXtyZXR1cm4gdHlwZW9mIHQ9PSJmdW5jdGlvbiI/dCgpOnFzKHQpfX0pfWNvbnN0IEJvPWYoIlpvZE5vbk9wdGlvbmFsIiwoZSx0KT0+e0VtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+bnkoKSxlLnVud3JhcD0oKT0+ZS5fem9kLmRlZi5pbm5lclR5cGV9KTtmdW5jdGlvbiBPcihlLHQpe3JldHVybiBuZXcgQm8oe3R5cGU6Im5vbm9wdGlvbmFsIixpbm5lclR5cGU6ZSwuLi53KHQpfSl9Y29uc3QgWnI9ZigiWm9kU3VjY2VzcyIsKGUsdCk9PntPbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PkZrKCksZS51bndyYXA9KCk9PmUuX3pvZC5kZWYuaW5uZXJUeXBlfSk7ZnVuY3Rpb24gQ2woZSl7cmV0dXJuIG5ldyBacih7dHlwZToic3VjY2VzcyIsaW5uZXJUeXBlOmV9KX1jb25zdCBNcj1mKCJab2RDYXRjaCIsKGUsdCk9PntabS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PnJ5KCksZS51bndyYXA9KCk9PmUuX3pvZC5kZWYuaW5uZXJUeXBlLGUucmVtb3ZlQ2F0Y2g9ZS51bndyYXB9KTtmdW5jdGlvbiBxcihlLHQpe3JldHVybiBuZXcgTXIoe3R5cGU6ImNhdGNoIixpbm5lclR5cGU6ZSxjYXRjaFZhbHVlOnR5cGVvZiB0PT0iZnVuY3Rpb24iP3Q6ZWkodCl9KX1jb25zdCBEcj1mKCJab2ROYU4iLChlLHQpPT57TW0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5MaygpfSk7ZnVuY3Rpb24gTmwoZSl7cmV0dXJuIGpmKERyLGUpfWNvbnN0IHduPWYoIlpvZFBpcGUiLChlLHQpPT57SWkuaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5heSgpLGUuaW49dC5pbixlLm91dD10Lm91dH0pO2Z1bmN0aW9uIEJuKGUsdCl7cmV0dXJuIG5ldyB3bih7dHlwZToicGlwZSIsaW46ZSxvdXQ6dH0pfWNvbnN0IF9uPWYoIlpvZENvZGVjIiwoZSx0KT0+e3duLmluaXQoZSx0KSxSaS5pbml0KGUsdCl9KTtmdW5jdGlvbiBQbChlLHQsbil7cmV0dXJuIG5ldyBfbih7dHlwZToicGlwZSIsaW46ZSxvdXQ6dCx0cmFuc2Zvcm06bi5kZWNvZGUscmV2ZXJzZVRyYW5zZm9ybTpuLmVuY29kZX0pfWZ1bmN0aW9uIHhsKGUpe2NvbnN0IHQ9ZS5fem9kLmRlZjtyZXR1cm4gbmV3IF9uKHt0eXBlOiJwaXBlIixpbjp0Lm91dCxvdXQ6dC5pbix0cmFuc2Zvcm06dC5yZXZlcnNlVHJhbnNmb3JtLHJldmVyc2VUcmFuc2Zvcm06dC50cmFuc2Zvcm19KX1jb25zdCBMcj1mKCJab2RQcmVwcm9jZXNzIiwoZSx0KT0+e3duLmluaXQoZSx0KSxxbS5pbml0KGUsdCl9KSxCcj1mKCJab2RSZWFkb25seSIsKGUsdCk9PntEbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9Pml5KCksZS51bndyYXA9KCk9PmUuX3pvZC5kZWYuaW5uZXJUeXBlfSk7ZnVuY3Rpb24gSHIoZSl7cmV0dXJuIG5ldyBCcih7dHlwZToicmVhZG9ubHkiLGlubmVyVHlwZTplfSl9Y29uc3QgRnI9ZigiWm9kVGVtcGxhdGVMaXRlcmFsIiwoZSx0KT0+e0xtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+QmsoKX0pO2Z1bmN0aW9uIElsKGUsdCl7cmV0dXJuIG5ldyBGcih7dHlwZToidGVtcGxhdGVfbGl0ZXJhbCIscGFydHM6ZSwuLi53KHQpfSl9Y29uc3QgVXI9ZigiWm9kTGF6eSIsKGUsdCk9PntFaS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9Pmx5KCksZS51bndyYXA9KCk9PmUuX3pvZC5kZWYuZ2V0dGVyKCl9KTtmdW5jdGlvbiBWcihlKXtyZXR1cm4gbmV3IFVyKHt0eXBlOiJsYXp5IixnZXR0ZXI6ZX0pfWNvbnN0IFdyPWYoIlpvZFByb21pc2UiLChlLHQpPT57SG0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5jeSgpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZX0pO2Z1bmN0aW9uIFJsKGUpe3JldHVybiBuZXcgV3Ioe3R5cGU6InByb21pc2UiLGlubmVyVHlwZTplfSl9Y29uc3QgS3I9ZigiWm9kRnVuY3Rpb24iLChlLHQpPT57Qm0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5WaygpfSk7ZnVuY3Rpb24gZW4oZSl7cmV0dXJuIG5ldyBLcih7dHlwZToiZnVuY3Rpb24iLGlucHV0OkFycmF5LmlzQXJyYXkoZT8uaW5wdXQpP1NyKGU/LmlucHV0KTplPy5pbnB1dD8/RShYKCkpLG91dHB1dDplPy5vdXRwdXQ/P1goKX0pfWNvbnN0IFNuPWYoIlpvZEN1c3RvbSIsKGUsdCk9PntGbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PlVrKCl9KTtmdW5jdGlvbiBFbChlKXtjb25zdCB0PW5ldyBhZSh7Y2hlY2s6ImN1c3RvbSJ9KTtyZXR1cm4gdC5fem9kLmNoZWNrPWUsdH1mdW5jdGlvbiBHcihlLHQpe3JldHVybiB6ZihTbixlPz8oKCk9PiEwKSx0KX1mdW5jdGlvbiBKcihlLHQ9e30pe3JldHVybiBDZihTbixlLHQpfWZ1bmN0aW9uIFlyKGUsdCl7cmV0dXJuIE5mKGUsdCl9Y29uc3QgT2w9eGYsWmw9SWYsUXI9ZigiWm9kSW5zdGFuY2VPZiIsKGUsdCk9PntTbi5pbml0KGUsdCl9LHtwcm9wZXJ0aWVzKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2sobG8oZSx0KSl9fSk7ZnVuY3Rpb24gTWwoZSx0PXt9KXtjb25zdCBuPW5ldyBRcih7dHlwZToiY3VzdG9tIixjaGVjazoiY3VzdG9tIixmbjpvPT5vIGluc3RhbmNlb2YgZSxhYm9ydDohMCwuLi53KHQpfSk7cmV0dXJuIG4uX3pvZC5iYWcuQ2xhc3M9ZSxuLl96b2QuY2hlY2s9bz0+e28udmFsdWUgaW5zdGFuY2VvZiBlfHxvLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX3R5cGUiLGV4cGVjdGVkOmUubmFtZSxpbnB1dDpvLnZhbHVlLGluc3Q6bixwYXRoOlsuLi5uLl96b2QuZGVmLnBhdGg/P1tdXX0pfSxufWNvbnN0IHFsPSguLi5lKT0+UmYoe0NvZGVjOl9uLEJvb2xlYW46Z24sU3RyaW5nOmxufSwuLi5lKTtmdW5jdGlvbiBEbChlKXtjb25zdCB0PVZyKCgpPT5GKFtnKGUpLEwoKSxlZSgpLE9vKCksRSh0KSxXKGcoKSx0KV0pKTtyZXR1cm4gdH1mdW5jdGlvbiBIbyhlLHQpe3JldHVybiBuZXcgTHIoe3R5cGU6InBpcGUiLGluOkRvKGUpLG91dDp0fSl9Y29uc3QgZ3k9T2JqZWN0LmZyZWV6ZShPYmplY3QuZGVmaW5lUHJvcGVydHkoe19fcHJvdG9fXzpudWxsLFpvZEFueTpmcixab2RBcnJheTprcixab2RCYXNlNjQ6UG8sWm9kQmFzZTY0VVJMOnhvLFpvZEJpZ0ludDpibixab2RCaWdJbnRGb3JtYXQ6RW8sWm9kQm9vbGVhbjpnbixab2RDSURSdjQ6Q28sWm9kQ0lEUnY2Ok5vLFpvZENVSUQ6d28sWm9kQ1VJRDI6X28sWm9kQ2F0Y2g6TXIsWm9kQ29kZWM6X24sWm9kQ3JlZGl0Q2FyZDp1cixab2RDdXN0b206U24sWm9kQ3VzdG9tU3RyaW5nRm9ybWF0Omd0LFpvZERhdGU6TW8sWm9kRGVmYXVsdDp4cixab2REaXNjcmltaW5hdGVkVW5pb246JHIsWm9kRTE2NDpJbyxab2RFbWFpbDp2byxab2RFbW9qaTp5byxab2RFbnVtOnp0LFpvZEV4YWN0T3B0aW9uYWw6TG8sWm9kRmlsZTp6cixab2RGdW5jdGlvbjpLcixab2RHVUlEOmtvLFpvZElCQU46ZHIsWm9kSVB2NDpBbyxab2RJUHY2OnpvLFpvZElTT0RhdGU6ZG4sWm9kSVNPRGF0ZVRpbWU6dW4sWm9kSVNPRHVyYXRpb246cG4sWm9kSVNPVGltZTpobixab2RJbnN0YW5jZU9mOlFyLFpvZEludGVyc2VjdGlvbjp3cixab2RKV1Q6Um8sWm9kS1NVSUQ6VG8sWm9kTGF6eTpVcixab2RMaXRlcmFsOkFyLFpvZE1BQzpscixab2RNYXA6anIsWm9kTmFOOkRyLFpvZE5hbm9JRDokbyxab2ROZXZlcjpicixab2ROb25PcHRpb25hbDpCbyxab2ROdWxsOm1yLFpvZE51bGxhYmxlOlByLFpvZE51bWJlcjpmbixab2ROdW1iZXJGb3JtYXQ6YnQsWm9kT2JqZWN0OnZuLFpvZE9wdGlvbmFsOiRuLFpvZFBpcGU6d24sWm9kUHJlZmF1bHQ6UnIsWm9kUHJlcHJvY2VzczpMcixab2RQcm9taXNlOldyLFpvZFJlYWRvbmx5OkJyLFpvZFJlY29yZDpBdCxab2RTZXQ6VHIsWm9kU3RyaW5nOmxuLFpvZFN0cmluZ0Zvcm1hdDp0ZSxab2RTdWNjZXNzOlpyLFpvZFN5bWJvbDpocixab2RUZW1wbGF0ZUxpdGVyYWw6RnIsWm9kVHJhbnNmb3JtOkNyLFpvZFR1cGxlOl9yLFpvZFR5cGU6Qixab2RVTElEOlNvLFpvZFVSTDptbixab2RVVUlEOlZlLFpvZFVuZGVmaW5lZDpwcixab2RVbmlvbjprbixab2RVbmtub3duOmdyLFpvZFZvaWQ6dnIsWm9kWElEOmpvLFpvZFhvcjp5cixfWm9kU3RyaW5nOmJvLF9kZWZhdWx0OklyLF9mdW5jdGlvbjplbixhbnk6Wm8sYXJyYXk6RSxiYXNlNjQ6UWMsYmFzZTY0dXJsOlhjLGJpZ2ludDpwbCxib29sZWFuOmVlLGNhdGNoOnFyLGNoZWNrOkVsLGNpZHJ2NDpKYyxjaWRydjY6WWMsY29kZWM6UGwsY3JlZGl0Q2FyZDp0bCxjdWlkOkJjLGN1aWQyOkhjLGN1cnJlbmN5Q29kZTppbCxjdXN0b206R3IsZGF0ZTp2bCxkZXNjcmliZTpPbCxkaXNjcmltaW5hdGVkVW5pb246cW8sZTE2NDplbCxlbWFpbDp4YyxlbW9qaTpEYyxlbnVtOnZlLGV4YWN0T3B0aW9uYWw6TnIsZmlsZTpBbCxmbG9hdDMyOmxsLGZsb2F0NjQ6dWwsZnVuY3Rpb246ZW4sZ3VpZDpJYyxoYXNoOmNsLGhleDphbCxob3N0bmFtZTpybCxodHRwVXJsOnFjLGliYW46bmwsaW5zdGFuY2VvZjpNbCxpbnQ6TG4saW50MzI6ZGwsaW50NjQ6bWwsaW50ZXJzZWN0aW9uOnluLGludmVydENvZGVjOnhsLGlwdjQ6V2MsaXB2NjpHYyxqc29uOkRsLGp3dDpvbCxrZXlvZjprbCxrc3VpZDpWYyxsYXp5OlZyLGxpdGVyYWw6Yixsb29zZU9iamVjdDpnZSxsb29zZVJlY29yZDpfbCxtYWM6S2MsbWFwOlNsLG1ldGE6WmwsbmFuOk5sLG5hbm9pZDpMYyxuYXRpdmVFbnVtOlRsLG5ldmVyOlR0LG5vbm9wdGlvbmFsOk9yLG51bGw6T28sbnVsbGFibGU6WHQsbnVsbGlzaDp6bCxudW1iZXI6TCxvYmplY3Q6ayxvcHRpb25hbDpzZSxwYXJ0aWFsUmVjb3JkOndsLHBpcGU6Qm4scHJlZmF1bHQ6RXIscHJlcHJvY2VzczpIbyxwcm9taXNlOlJsLHJlYWRvbmx5OkhyLHJlY29yZDpXLHJlZmluZTpKcixzZXQ6amwsc3RyaWN0T2JqZWN0OnlsLHN0cmluZzpnLHN0cmluZ0Zvcm1hdDpzbCxzdHJpbmdib29sOnFsLHN1Y2Nlc3M6Q2wsc3VwZXJSZWZpbmU6WXIsc3ltYm9sOmdsLHRlbXBsYXRlTGl0ZXJhbDpJbCx0cmFuc2Zvcm06RG8sdHVwbGU6U3IsdWludDMyOmhsLHVpbnQ2NDpmbCx1bGlkOkZjLHVuZGVmaW5lZDpRdCx1bmlvbjpGLHVua25vd246WCx1cmw6TWMsdXVpZDpSYyx1dWlkdjQ6RWMsdXVpZHY2Ok9jLHV1aWR2NzpaYyx2b2lkOmJsLHhpZDpVYyx4b3I6JGx9LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSksQmY9e2ludmFsaWRfdHlwZToiaW52YWxpZF90eXBlIix0b29fYmlnOiJ0b29fYmlnIix0b29fc21hbGw6InRvb19zbWFsbCIsaW52YWxpZF9mb3JtYXQ6ImludmFsaWRfZm9ybWF0Iixub3RfbXVsdGlwbGVfb2Y6Im5vdF9tdWx0aXBsZV9vZiIsdW5yZWNvZ25pemVkX2tleXM6InVucmVjb2duaXplZF9rZXlzIixpbnZhbGlkX3VuaW9uOiJpbnZhbGlkX3VuaW9uIixpbnZhbGlkX2tleToiaW52YWxpZF9rZXkiLGludmFsaWRfZWxlbWVudDoiaW52YWxpZF9lbGVtZW50IixpbnZhbGlkX3ZhbHVlOiJpbnZhbGlkX3ZhbHVlIixjdXN0b206ImN1c3RvbSJ9O2Z1bmN0aW9uIEhmKGUpe3BlKHtjdXN0b21FcnJvcjplfSl9ZnVuY3Rpb24gRmYoKXtyZXR1cm4gcGUoKS5jdXN0b21FcnJvcn12YXIgU3M7U3N8fChTcz17fSk7ZnVuY3Rpb24gVWYoZSl7cmV0dXJuIHBjKHVuLGUpfWZ1bmN0aW9uIGJ5KGUpe3JldHVybiBtYyhkbixlKX1mdW5jdGlvbiB2eShlKXtyZXR1cm4gZmMoaG4sZSl9ZnVuY3Rpb24ga3koZSl7cmV0dXJuIGdjKHBuLGUpfWNvbnN0IExsPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCxab2RJU09EYXRlOmRuLFpvZElTT0RhdGVUaW1lOnVuLFpvZElTT0R1cmF0aW9uOnBuLFpvZElTT1RpbWU6aG4sZGF0ZTpieSxkYXRldGltZTpVZixkdXJhdGlvbjpreSx0aW1lOnZ5fSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSkpLHo9ey4uLmd5LC4uLm15LGlzbzpMbH0seXk9bmV3IFNldChbIiRzY2hlbWEiLCIkcmVmIiwiJGRlZnMiLCJkZWZpbml0aW9ucyIsIiRpZCIsImlkIiwiJGNvbW1lbnQiLCIkYW5jaG9yIiwiJHZvY2FidWxhcnkiLCIkZHluYW1pY1JlZiIsIiRkeW5hbWljQW5jaG9yIiwidHlwZSIsImVudW0iLCJjb25zdCIsImFueU9mIiwib25lT2YiLCJhbGxPZiIsIm5vdCIsInByb3BlcnRpZXMiLCJyZXF1aXJlZCIsImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwicGF0dGVyblByb3BlcnRpZXMiLCJwcm9wZXJ0eU5hbWVzIiwibWluUHJvcGVydGllcyIsIm1heFByb3BlcnRpZXMiLCJpdGVtcyIsInByZWZpeEl0ZW1zIiwiYWRkaXRpb25hbEl0ZW1zIiwibWluSXRlbXMiLCJtYXhJdGVtcyIsInVuaXF1ZUl0ZW1zIiwiY29udGFpbnMiLCJtaW5Db250YWlucyIsIm1heENvbnRhaW5zIiwibWluTGVuZ3RoIiwibWF4TGVuZ3RoIiwicGF0dGVybiIsImZvcm1hdCIsIm1pbmltdW0iLCJtYXhpbXVtIiwiZXhjbHVzaXZlTWluaW11bSIsImV4Y2x1c2l2ZU1heGltdW0iLCJtdWx0aXBsZU9mIiwiZGVzY3JpcHRpb24iLCJkZWZhdWx0IiwiY29udGVudEVuY29kaW5nIiwiY29udGVudE1lZGlhVHlwZSIsImNvbnRlbnRTY2hlbWEiLCJ1bmV2YWx1YXRlZEl0ZW1zIiwidW5ldmFsdWF0ZWRQcm9wZXJ0aWVzIiwiaWYiLCJ0aGVuIiwiZWxzZSIsImRlcGVuZGVudFNjaGVtYXMiLCJkZXBlbmRlbnRSZXF1aXJlZCIsIm51bGxhYmxlIiwicmVhZE9ubHkiXSk7ZnVuY3Rpb24gJHkoZSx0KXtjb25zdCBuPWUuJHNjaGVtYTtyZXR1cm4gbj09PSJodHRwczovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC8yMDIwLTEyL3NjaGVtYSI/ImRyYWZ0LTIwMjAtMTIiOm49PT0iaHR0cDovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC0wNy9zY2hlbWEjIj8iZHJhZnQtNyI6bj09PSJodHRwOi8vanNvbi1zY2hlbWEub3JnL2RyYWZ0LTA0L3NjaGVtYSMiPyJkcmFmdC00Ijp0Pz8iZHJhZnQtMjAyMC0xMiJ9ZnVuY3Rpb24gdWQoZSx0KXtyZXR1cm4gZS5tYXAoKG4sbyk9Pm88dD9uOm4ub3B0aW9uYWwoKSl9ZnVuY3Rpb24gd3koZSl7cmV0dXJuIGUucmVwbGFjZSgvfjEvZywiLyIpLnJlcGxhY2UoL34wL2csIn4iKX1mdW5jdGlvbiBfeShlLHQpe2lmKCFlLnN0YXJ0c1dpdGgoIiMiKSl0aHJvdyBuZXcgRXJyb3IoIkV4dGVybmFsICRyZWYgaXMgbm90IHN1cHBvcnRlZCwgb25seSBsb2NhbCByZWZzICgjLy4uLikgYXJlIGFsbG93ZWQiKTtjb25zdCBuPWUuc2xpY2UoMSkuc3BsaXQoIi8iKS5maWx0ZXIoQm9vbGVhbik7aWYobi5sZW5ndGg9PT0wKXJldHVybiB0LnJvb3RTY2hlbWE7Y29uc3Qgbz10LnZlcnNpb249PT0iZHJhZnQtMjAyMC0xMiI/IiRkZWZzIjoiZGVmaW5pdGlvbnMiO2lmKG5bMF09PT1vKXtjb25zdCBzPW5bMV09PT12b2lkIDA/dm9pZCAwOnd5KG5bMV0pO2lmKCFzfHwhdC5kZWZzW3NdKXRocm93IG5ldyBFcnJvcihgUmVmZXJlbmNlIG5vdCBmb3VuZDogJHtlfWApO3JldHVybiB0LmRlZnNbc119dGhyb3cgbmV3IEVycm9yKGBSZWZlcmVuY2Ugbm90IGZvdW5kOiAke2V9YCl9ZnVuY3Rpb24gU3koZSx0KXtyZXR1cm4gei50cmFuc2Zvcm0obz0+bykuY2hlY2sobz0+e2NvbnN0IHM9by52YWx1ZTtpZih0eXBlb2YgcyE9Im9iamVjdCJ8fHM9PT1udWxsfHxBcnJheS5pc0FycmF5KHMpKXJldHVybjtjb25zdCByPU9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHMpO2lmKHQubWluUHJvcGVydGllcyE9PXZvaWQgMCYmci5sZW5ndGg8dC5taW5Qcm9wZXJ0aWVzJiZvLmlzc3Vlcy5wdXNoKHtvcmlnaW46Im9iamVjdCIsY29kZToidG9vX3NtYWxsIixtaW5pbXVtOnQubWluUHJvcGVydGllcyxpbmNsdXNpdmU6ITAsbWVzc2FnZTpgVG9vIHNtYWxsOiBleHBlY3RlZCBvYmplY3QgdG8gaGF2ZSA+PSR7dC5taW5Qcm9wZXJ0aWVzfSBwcm9wZXJ0aWVzYCxpbnB1dDpzLGluc3Q6ZSxjb250aW51ZTohMH0pLHQubWF4UHJvcGVydGllcyE9PXZvaWQgMCYmci5sZW5ndGg+dC5tYXhQcm9wZXJ0aWVzJiZvLmlzc3Vlcy5wdXNoKHtvcmlnaW46Im9iamVjdCIsY29kZToidG9vX2JpZyIsbWF4aW11bTp0Lm1heFByb3BlcnRpZXMsaW5jbHVzaXZlOiEwLG1lc3NhZ2U6YFRvbyBiaWc6IGV4cGVjdGVkIG9iamVjdCB0byBoYXZlIDw9JHt0Lm1heFByb3BlcnRpZXN9IHByb3BlcnRpZXNgLGlucHV0OnMsaW5zdDplLGNvbnRpbnVlOiEwfSksdC5rZXlTY2hlbWEpZm9yKGNvbnN0IGkgb2Ygcil7Y29uc3QgYz10LmtleVNjaGVtYS5zYWZlUGFyc2UoaSk7Yy5zdWNjZXNzfHxvLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2tleSIsb3JpZ2luOiJyZWNvcmQiLGlzc3VlczpjLmVycm9yLmlzc3VlcyxpbnB1dDppLHBhdGg6W2ldLGNvbnRpbnVlOiEwfSl9fSkucGlwZShlKX1mdW5jdGlvbiBQYShlLHQpe2lmKGU9PT1udWxsKXJldHVybiJ6Ijtjb25zdCBuPXR5cGVvZiBlO2lmKG4hPT0ib2JqZWN0Iil7aWYobj09PSJudW1iZXIiJiZOdW1iZXIuaXNOYU4oZSkpcmV0dXJuIG51bGw7Y29uc3Qgbz1TdHJpbmcoZSk7cmV0dXJuYCR7blswXX0ke28ubGVuZ3RofToke299YH1pZih0LmhhcyhlKSlyZXR1cm4gbnVsbDt0LmFkZChlKTt0cnl7aWYoQXJyYXkuaXNBcnJheShlKSl7Y29uc3Qgcj1bXTtmb3IoY29uc3QgaSBvZiBlKXtjb25zdCBjPVBhKGksdCk7aWYoYz09PW51bGwpcmV0dXJuIG51bGw7ci5wdXNoKGMpfXJldHVybmBhJHtyLmxlbmd0aH06WyR7ci5qb2luKCIsIil9XWB9Y29uc3Qgbz1PYmplY3Qua2V5cyhlKS5zb3J0KCkscz1bXTtmb3IoY29uc3QgciBvZiBvKXtjb25zdCBpPVBhKGVbcl0sdCk7aWYoaT09PW51bGwpcmV0dXJuIG51bGw7cy5wdXNoKGAke3IubGVuZ3RofToke3J9PSR7aX1gKX1yZXR1cm5gbyR7cy5sZW5ndGh9Onske3Muam9pbigiLCIpfX1gfWZpbmFsbHl7dC5kZWxldGUoZSl9fWNvbnN0IGp5PW5ldyBTZXQoWyJpdGVtcyIsInByZWZpeEl0ZW1zIiwiYWRkaXRpb25hbEl0ZW1zIiwiYWRkaXRpb25hbFByb3BlcnRpZXMiLCJjb250YWlucyIsInByb3BlcnR5TmFtZXMiLCJub3QiLCJpZiIsInRoZW4iLCJlbHNlIiwiYWxsT2YiLCJhbnlPZiIsIm9uZU9mIiwidW5ldmFsdWF0ZWRJdGVtcyIsInVuZXZhbHVhdGVkUHJvcGVydGllcyIsImNvbnRlbnRTY2hlbWEiXSksVHk9bmV3IFNldChbInByb3BlcnRpZXMiLCJwYXR0ZXJuUHJvcGVydGllcyIsImRlcGVuZGVudFNjaGVtYXMiLCJkZXBlbmRlbmNpZXMiLCIkZGVmcyIsImRlZmluaXRpb25zIl0pO2Z1bmN0aW9uIEVuKGUpe3JldHVybiB0eXBlb2YgZSE9Im9iamVjdCJ8fGU9PT1udWxsPyExOkFycmF5LmlzQXJyYXkoZSk/ZS5zb21lKEVuKTp0eXBlb2YgZS4kcmVmPT0ic3RyaW5nIj8hMDpPYmplY3QuZW50cmllcyhlKS5zb21lKChbdCxuXSk9Pmp5Lmhhcyh0KT9FbihuKTohVHkuaGFzKHQpfHx0eXBlb2YgbiE9Im9iamVjdCJ8fG49PT1udWxsPyExOk9iamVjdC52YWx1ZXMobikuc29tZShFbikpfWZ1bmN0aW9uIGRkKGUpe3JldHVybiBlPT09MT8iZWxlbWVudCI6ImVsZW1lbnRzIn1mdW5jdGlvbiBBeShlLHQpe3JldHVybiB6LnRyYW5zZm9ybShvPT5vKS5jaGVjayhvPT57Y29uc3Qgcz1vLnZhbHVlO2lmKEFycmF5LmlzQXJyYXkocykpe2lmKHQudW5pcXVlSXRlbXM9PT0hMCl7Y29uc3Qgcj1uZXcgTWFwO2ZvcihsZXQgaT0wO2k8cy5sZW5ndGg7aSsrKXtjb25zdCBjPVBhKHNbaV0sbmV3IFNldCk7aWYoYz09PW51bGwpY29udGludWU7Y29uc3QgdT1yLmdldChjKTtpZih1PT09dm9pZCAwKXtyLnNldChjLGkpO2NvbnRpbnVlfW8uaXNzdWVzLnB1c2goe2NvZGU6ImN1c3RvbSIsbWVzc2FnZTpgQXJyYXkgaXRlbXMgbXVzdCBiZSB1bmlxdWU6IGVsZW1lbnQgYXQgaW5kZXggJHtpfSBkdXBsaWNhdGVzIHRoZSBvbmUgYXQgaW5kZXggJHt1fWAsaW5wdXQ6cyxwYXRoOltpXSxjb250aW51ZTohMH0pfX1pZih0LmNvbnRhaW5zU2NoZW1hKXtjb25zdCByPXQubWluQ29udGFpbnM/PzEsaT10Lm1heENvbnRhaW5zIT09dm9pZCAwP3QubWF4Q29udGFpbnMrMTpOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7bGV0IGM9MDtmb3IoY29uc3QgdSBvZiBzKWlmKHQuY29udGFpbnNTY2hlbWEuc2FmZVBhcnNlKHUpLnN1Y2Nlc3MmJisrYz49aSlicmVhaztjPHImJm8uaXNzdWVzLnB1c2goe2NvZGU6ImN1c3RvbSIsbWVzc2FnZTpgQXJyYXkgbXVzdCBjb250YWluIGF0IGxlYXN0ICR7cn0gbWF0Y2hpbmcgJHtkZChyKX07IGZvdW5kICR7Y31gLGlucHV0OnMsY29udGludWU6ITB9KSx0Lm1heENvbnRhaW5zIT09dm9pZCAwJiZjPnQubWF4Q29udGFpbnMmJm8uaXNzdWVzLnB1c2goe2NvZGU6ImN1c3RvbSIsbWVzc2FnZTpgQXJyYXkgbXVzdCBjb250YWluIGF0IG1vc3QgJHt0Lm1heENvbnRhaW5zfSBtYXRjaGluZyAke2RkKHQubWF4Q29udGFpbnMpfWAsaW5wdXQ6cyxjb250aW51ZTohMH0pfX19KS5waXBlKGUpfWZ1bmN0aW9uIGhkKGUsdCl7aWYoZSE9PSExKXJldHVybiBlPT09dm9pZCAwfHxlPT09ITA/ei5hbnkoKTpTZShlLHQpfWNvbnN0IHp5PS9eKD86WzAxXVxkfDJbMC0zXSk6WzAtNV1cZDpbMC01XVxkKD86XC5cZCspPyg/Olp8WystXSg/OlswMV1cZHwyWzAtM10pOlswLTVdXGQpJC87ZnVuY3Rpb24gVmYoZSx0KXtpZihlLm5vdCE9PXZvaWQgMCl7aWYodHlwZW9mIGUubm90PT0ib2JqZWN0IiYmT2JqZWN0LmtleXMoZS5ub3QpLmxlbmd0aD09PTApcmV0dXJuIHoubmV2ZXIoKTt0aHJvdyBuZXcgRXJyb3IoIm5vdCBpcyBub3Qgc3VwcG9ydGVkIGluIFpvZCAoZXhjZXB0IHsgbm90OiB7fSB9IGZvciBuZXZlcikiKX1pZihlLnVuZXZhbHVhdGVkSXRlbXMhPT12b2lkIDApdGhyb3cgbmV3IEVycm9yKCJ1bmV2YWx1YXRlZEl0ZW1zIGlzIG5vdCBzdXBwb3J0ZWQiKTtpZihlLnVuZXZhbHVhdGVkUHJvcGVydGllcyE9PXZvaWQgMCl0aHJvdyBuZXcgRXJyb3IoInVuZXZhbHVhdGVkUHJvcGVydGllcyBpcyBub3Qgc3VwcG9ydGVkIik7aWYoZS5pZiE9PXZvaWQgMHx8ZS50aGVuIT09dm9pZCAwfHxlLmVsc2UhPT12b2lkIDApdGhyb3cgbmV3IEVycm9yKCJDb25kaXRpb25hbCBzY2hlbWFzIChpZi90aGVuL2Vsc2UpIGFyZSBub3Qgc3VwcG9ydGVkIik7aWYoZS5kZXBlbmRlbnRTY2hlbWFzIT09dm9pZCAwfHxlLmRlcGVuZGVudFJlcXVpcmVkIT09dm9pZCAwKXRocm93IG5ldyBFcnJvcigiZGVwZW5kZW50U2NoZW1hcyBhbmQgZGVwZW5kZW50UmVxdWlyZWQgYXJlIG5vdCBzdXBwb3J0ZWQiKTtpZihlLiRyZWYpe2NvbnN0IHM9ZS4kcmVmO2lmKHQucmVmcy5oYXMocykpcmV0dXJuIHQucmVmcy5nZXQocyk7aWYodC5wcm9jZXNzaW5nLmhhcyhzKSlyZXR1cm4gei5sYXp5KCgpPT57aWYoIXQucmVmcy5oYXMocykpdGhyb3cgbmV3IEVycm9yKGBDaXJjdWxhciByZWZlcmVuY2Ugbm90IHJlc29sdmVkOiAke3N9YCk7cmV0dXJuIHQucmVmcy5nZXQocyl9KTt0LnByb2Nlc3NpbmcuYWRkKHMpO2NvbnN0IHI9X3kocyx0KSxpPVNlKHIsdCk7cmV0dXJuIHQucmVmcy5zZXQocyxpKSx0LnByb2Nlc3NpbmcuZGVsZXRlKHMpLGl9aWYoZS5lbnVtIT09dm9pZCAwKXtjb25zdCBzPWUuZW51bTtpZih0LnZlcnNpb249PT0ib3BlbmFwaS0zLjAiJiZlLm51bGxhYmxlPT09ITAmJnMubGVuZ3RoPT09MSYmc1swXT09PW51bGwpcmV0dXJuIHoubnVsbCgpO2lmKHMubGVuZ3RoPT09MClyZXR1cm4gei5uZXZlcigpO2lmKHMubGVuZ3RoPT09MSlyZXR1cm4gei5saXRlcmFsKHNbMF0pO2lmKHMuZXZlcnkoaT0+dHlwZW9mIGk9PSJzdHJpbmciKSlyZXR1cm4gei5lbnVtKHMpO2NvbnN0IHI9cy5tYXAoaT0+ei5saXRlcmFsKGkpKTtyZXR1cm4gci5sZW5ndGg8Mj9yWzBdOnoudW5pb24oW3JbMF0sclsxXSwuLi5yLnNsaWNlKDIpXSl9aWYoZS5jb25zdCE9PXZvaWQgMClyZXR1cm4gei5saXRlcmFsKGUuY29uc3QpO2NvbnN0IG49ZS50eXBlO2lmKEFycmF5LmlzQXJyYXkobikpe2NvbnN0IHM9bi5tYXAocj0+e2NvbnN0IGk9ey4uLmUsdHlwZTpyfTtyZXR1cm4gVmYoaSx0KX0pO3JldHVybiBzLmxlbmd0aD09PTA/ei5uZXZlcigpOnMubGVuZ3RoPT09MT9zWzBdOnoudW5pb24ocyl9aWYoIW4pcmV0dXJuIHouYW55KCk7bGV0IG87c3dpdGNoKG4pe2Nhc2Uic3RyaW5nIjp7bGV0IHM9ei5zdHJpbmcoKTtpZihlLmZvcm1hdCl7Y29uc3Qgcj1lLmZvcm1hdDtyPT09ImVtYWlsIj9zPXMuY2hlY2soei5lbWFpbCgpKTpyPT09InVyaSJ8fHI9PT0idXJpLXJlZmVyZW5jZSI/cz1zLmNoZWNrKHoudXJsKCkpOnI9PT0idXVpZCJ8fHI9PT0iZ3VpZCI/cz1zLmNoZWNrKHoudXVpZCgpKTpyPT09ImRhdGUtdGltZSI/cz1zLmNoZWNrKHouaXNvLmRhdGV0aW1lKHtvZmZzZXQ6ITB9KSk6cj09PSJkYXRlIj9zPXMuY2hlY2soei5pc28uZGF0ZSgpKTpyPT09InRpbWUiP3M9cy5jaGVjayh6LnJlZ2V4KHp5KSk6cj09PSJkdXJhdGlvbiI/cz1zLmNoZWNrKHouaXNvLmR1cmF0aW9uKCkpOnI9PT0iaG9zdG5hbWUiP3M9cy5jaGVjayh6Lmhvc3RuYW1lKCkpOnI9PT0iaXB2NCI/cz1zLmNoZWNrKHouaXB2NCgpKTpyPT09ImlwdjYiP3M9cy5jaGVjayh6LmlwdjYoKSk6cj09PSJtYWMiP3M9cy5jaGVjayh6Lm1hYygpKTpyPT09ImNpZHIiP3M9cy5jaGVjayh6LmNpZHJ2NCgpKTpyPT09ImNpZHItdjYiP3M9cy5jaGVjayh6LmNpZHJ2NigpKTpyPT09ImJhc2U2NCI/cz1zLmNoZWNrKHouYmFzZTY0KCkpOnI9PT0iYmFzZTY0dXJsIj9zPXMuY2hlY2soei5iYXNlNjR1cmwoKSk6cj09PSJlMTY0Ij9zPXMuY2hlY2soei5lMTY0KCkpOnI9PT0iY3JlZGl0X2NhcmQiP3M9cy5jaGVjayh6LmNyZWRpdENhcmQoKSk6cj09PSJpYmFuIj9zPXMuY2hlY2soei5pYmFuKCkpOnI9PT0iand0Ij9zPXMuY2hlY2soei5qd3QoKSk6cj09PSJlbW9qaSI/cz1zLmNoZWNrKHouZW1vamkoKSk6cj09PSJuYW5vaWQiP3M9cy5jaGVjayh6Lm5hbm9pZCgpKTpyPT09ImN1aWQiP3M9cy5jaGVjayh6LmN1aWQoKSk6cj09PSJjdWlkMiI/cz1zLmNoZWNrKHouY3VpZDIoKSk6cj09PSJ1bGlkIj9zPXMuY2hlY2soei51bGlkKCkpOnI9PT0ieGlkIj9zPXMuY2hlY2soei54aWQoKSk6cj09PSJrc3VpZCImJihzPXMuY2hlY2soei5rc3VpZCgpKSl9dHlwZW9mIGUubWluTGVuZ3RoPT0ibnVtYmVyIiYmKHM9cy5taW4oZS5taW5MZW5ndGgpKSx0eXBlb2YgZS5tYXhMZW5ndGg9PSJudW1iZXIiJiYocz1zLm1heChlLm1heExlbmd0aCkpLGUucGF0dGVybiYmKHM9cy5yZWdleChuZXcgUmVnRXhwKGUucGF0dGVybikpKSxvPXM7YnJlYWt9Y2FzZSJudW1iZXIiOmNhc2UiaW50ZWdlciI6e2xldCBzPW49PT0iaW50ZWdlciI/ei5udW1iZXIoKS5pbnQoKTp6Lm51bWJlcigpO3R5cGVvZiBlLm1pbmltdW09PSJudW1iZXIiJiZlLmV4Y2x1c2l2ZU1pbmltdW0hPT0hMCYmKHM9cy5taW4oZS5taW5pbXVtKSksdHlwZW9mIGUubWF4aW11bT09Im51bWJlciImJmUuZXhjbHVzaXZlTWF4aW11bSE9PSEwJiYocz1zLm1heChlLm1heGltdW0pKSx0eXBlb2YgZS5leGNsdXNpdmVNaW5pbXVtPT0ibnVtYmVyIj9zPXMuZ3QoZS5leGNsdXNpdmVNaW5pbXVtKTplLmV4Y2x1c2l2ZU1pbmltdW09PT0hMCYmdHlwZW9mIGUubWluaW11bT09Im51bWJlciImJihzPXMuZ3QoZS5taW5pbXVtKSksdHlwZW9mIGUuZXhjbHVzaXZlTWF4aW11bT09Im51bWJlciI/cz1zLmx0KGUuZXhjbHVzaXZlTWF4aW11bSk6ZS5leGNsdXNpdmVNYXhpbXVtPT09ITAmJnR5cGVvZiBlLm1heGltdW09PSJudW1iZXIiJiYocz1zLmx0KGUubWF4aW11bSkpLHR5cGVvZiBlLm11bHRpcGxlT2Y9PSJudW1iZXIiJiYocz1zLm11bHRpcGxlT2YoZS5tdWx0aXBsZU9mKSksbz1zO2JyZWFrfWNhc2UiYm9vbGVhbiI6e289ei5ib29sZWFuKCk7YnJlYWt9Y2FzZSJudWxsIjp7bz16Lm51bGwoKTticmVha31jYXNlIm9iamVjdCI6e2NvbnN0IHM9e30scj1lLnByb3BlcnRpZXN8fHt9LGk9bmV3IFNldChlLnJlcXVpcmVkfHxbXSksYz10eXBlb2YgZS5hZGRpdGlvbmFsUHJvcGVydGllcz09Im9iamVjdCI/U2UoZS5hZGRpdGlvbmFsUHJvcGVydGllcyx0KTp2b2lkIDA7Zm9yKGNvbnN0W3AsbV1vZiBPYmplY3QuZW50cmllcyhyKSl7Y29uc3QgeT1TZShtLHQpO0V0KHMscCxpLmhhcyhwKT95Onkub3B0aW9uYWwoKSl9aWYoZS5wYXR0ZXJuUHJvcGVydGllcyl7Y29uc3QgcD1lLnBhdHRlcm5Qcm9wZXJ0aWVzLG09T2JqZWN0LmtleXMocCkseT1bXTtmb3IoY29uc3QgXyBvZiBtKXtjb25zdCBDPVNlKHBbX10sdCksVD16LnN0cmluZygpLnJlZ2V4KG5ldyBSZWdFeHAoXykpO3kucHVzaCh6Lmxvb3NlUmVjb3JkKFQsQykpfWNvbnN0ICQ9W107aWYoT2JqZWN0LmtleXMocykubGVuZ3RoPjAmJiQucHVzaCh6Lm9iamVjdChzKS5wYXNzdGhyb3VnaCgpKSwkLnB1c2goLi4ueSksJC5sZW5ndGg9PT0wKW89ei5vYmplY3Qoe30pLnBhc3N0aHJvdWdoKCk7ZWxzZSBpZigkLmxlbmd0aD09PTEpbz0kWzBdO2Vsc2V7bGV0IF89ei5pbnRlcnNlY3Rpb24oJFswXSwkWzFdKTtmb3IobGV0IEM9MjtDPCQubGVuZ3RoO0MrKylfPXouaW50ZXJzZWN0aW9uKF8sJFtDXSk7bz1ffWlmKGUuYWRkaXRpb25hbFByb3BlcnRpZXM9PT0hMSl7Y29uc3QgXz1PYmplY3Qua2V5cyhzKSxDPW0ubWFwKEE9Pm5ldyBSZWdFeHAoQSkpLFQ9bztvPW8uY2hlY2soQT0+e2lmKCFwdChBLnZhbHVlKSlyZXR1cm47Y29uc3QgUj1bXTtmb3IoY29uc3QgcmUgb2YgT2JqZWN0LmtleXMoQS52YWx1ZSkpXy5pbmNsdWRlcyhyZSl8fEMuc29tZShZPT5ZLnRlc3QocmUpKXx8Ui5wdXNoKHJlKTtSLmxlbmd0aCYmQS5pc3N1ZXMucHVzaCh7Y29kZToidW5yZWNvZ25pemVkX2tleXMiLGtleXM6UixpbnB1dDpBLnZhbHVlLGluc3Q6VH0pfSl9fWVsc2V7Y29uc3QgcD16Lm9iamVjdChzKTtlLmFkZGl0aW9uYWxQcm9wZXJ0aWVzPT09ITE/bz1wLnN0cmljdCgpOmM/bz1wLmNhdGNoYWxsKGMpOm89cC5wYXNzdGhyb3VnaCgpfWNvbnN0IHU9ZS5wcm9wZXJ0eU5hbWVzIT09dm9pZCAwJiZlLnByb3BlcnR5TmFtZXMhPT0hMCxkPXR5cGVvZiBlLm1pblByb3BlcnRpZXM9PSJudW1iZXIiP2UubWluUHJvcGVydGllczp2b2lkIDAsaD10eXBlb2YgZS5tYXhQcm9wZXJ0aWVzPT0ibnVtYmVyIj9lLm1heFByb3BlcnRpZXM6dm9pZCAwO2lmKHV8fGQhPT12b2lkIDB8fGghPT12b2lkIDApe2xldCBwO2lmKHUpe2NvbnN0IG09dHlwZW9mIGUucHJvcGVydHlOYW1lcz09Im9iamVjdCImJmUucHJvcGVydHlOYW1lcy50eXBlPT09dm9pZCAwP3t0eXBlOiJzdHJpbmciLC4uLmUucHJvcGVydHlOYW1lc306ZS5wcm9wZXJ0eU5hbWVzO3A9U2UobSx0KX1vPVN5KG8se2tleVNjaGVtYTpwLG1pblByb3BlcnRpZXM6ZCxtYXhQcm9wZXJ0aWVzOmh9KX1icmVha31jYXNlImFycmF5Ijp7Y29uc3Qgcz1lLnByZWZpeEl0ZW1zLHI9ZS5pdGVtcztpZihzJiZBcnJheS5pc0FycmF5KHMpKXtjb25zdCBpPXR5cGVvZiBlLm1pbkl0ZW1zPT0ibnVtYmVyIj9lLm1pbkl0ZW1zOjAsYz1zLm1hcChwPT5TZShwLHQpKSx1PXVkKGMsaSksZD1BcnJheS5pc0FycmF5KHIpP3ZvaWQgMDpoZChyLHQpLGg9ei50dXBsZSh1KTtvPWQ/aC5yZXN0KGQpOmgsdHlwZW9mIGUubWluSXRlbXM9PSJudW1iZXIiJiYobz1vLmNoZWNrKHoubWluTGVuZ3RoKGUubWluSXRlbXMpKSksdHlwZW9mIGUubWF4SXRlbXM9PSJudW1iZXIiJiYobz1vLmNoZWNrKHoubWF4TGVuZ3RoKGUubWF4SXRlbXMpKSl9ZWxzZSBpZihBcnJheS5pc0FycmF5KHIpKXtjb25zdCBpPXR5cGVvZiBlLm1pbkl0ZW1zPT0ibnVtYmVyIj9lLm1pbkl0ZW1zOjAsYz1yLm1hcChwPT5TZShwLHQpKSx1PXVkKGMsaSksZD1oZChlLmFkZGl0aW9uYWxJdGVtcyx0KSxoPXoudHVwbGUodSk7bz1kP2gucmVzdChkKTpoLHR5cGVvZiBlLm1pbkl0ZW1zPT0ibnVtYmVyIiYmKG89by5jaGVjayh6Lm1pbkxlbmd0aChlLm1pbkl0ZW1zKSkpLHR5cGVvZiBlLm1heEl0ZW1zPT0ibnVtYmVyIiYmKG89by5jaGVjayh6Lm1heExlbmd0aChlLm1heEl0ZW1zKSkpfWVsc2UgaWYociE9PXZvaWQgMCl7Y29uc3QgaT1TZShyLHQpO2xldCBjPXouYXJyYXkoaSk7dHlwZW9mIGUubWluSXRlbXM9PSJudW1iZXIiJiYoYz1jLm1pbihlLm1pbkl0ZW1zKSksdHlwZW9mIGUubWF4SXRlbXM9PSJudW1iZXIiJiYoYz1jLm1heChlLm1heEl0ZW1zKSksbz1jfWVsc2Ugbz16LmFycmF5KHouYW55KCkpOyhlLnVuaXF1ZUl0ZW1zPT09ITB8fGUuY29udGFpbnMhPT12b2lkIDApJiYobz1BeShvLHt1bmlxdWVJdGVtczplLnVuaXF1ZUl0ZW1zPT09ITAsY29udGFpbnNTY2hlbWE6ZS5jb250YWlucyE9PXZvaWQgMD9TZShlLmNvbnRhaW5zLHQpOnZvaWQgMCxtaW5Db250YWluczp0eXBlb2YgZS5taW5Db250YWlucz09Im51bWJlciI/ZS5taW5Db250YWluczp2b2lkIDAsbWF4Q29udGFpbnM6dHlwZW9mIGUubWF4Q29udGFpbnM9PSJudW1iZXIiP2UubWF4Q29udGFpbnM6dm9pZCAwfSkpO2JyZWFrfWRlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCB0eXBlOiAke259YCl9cmV0dXJuIG99ZnVuY3Rpb24gU2UoZSx0KXtpZih0eXBlb2YgZT09ImJvb2xlYW4iKXJldHVybiBlP3ouYW55KCk6ei5uZXZlcigpO2xldCBuPVZmKGUsdCk7Y29uc3Qgbz1lLnR5cGV8fGUuZW51bSE9PXZvaWQgMHx8ZS5jb25zdCE9PXZvaWQgMDtpZihlLmFueU9mJiZBcnJheS5pc0FycmF5KGUuYW55T2YpKXtjb25zdCBjPWUuYW55T2YubWFwKGQ9PlNlKGQsdCkpLHU9ei51bmlvbihjKTtuPW8/ei5pbnRlcnNlY3Rpb24obix1KTp1fWlmKGUub25lT2YmJkFycmF5LmlzQXJyYXkoZS5vbmVPZikpe2NvbnN0IGM9ZS5vbmVPZi5tYXAoZD0+U2UoZCx0KSksdT16LnhvcihjKTtuPW8/ei5pbnRlcnNlY3Rpb24obix1KTp1fWlmKGUuYWxsT2YmJkFycmF5LmlzQXJyYXkoZS5hbGxPZikpaWYoZS5hbGxPZi5sZW5ndGg9PT0wKW49bz9uOnouYW55KCk7ZWxzZXtsZXQgYz1vP246U2UoZS5hbGxPZlswXSx0KTtjb25zdCB1PW8/MDoxO2ZvcihsZXQgZD11O2Q8ZS5hbGxPZi5sZW5ndGg7ZCsrKWM9ei5pbnRlcnNlY3Rpb24oYyxTZShlLmFsbE9mW2RdLHQpKTtuPWN9ZS5udWxsYWJsZT09PSEwJiZ0LnZlcnNpb249PT0ib3BlbmFwaS0zLjAiJiYobj16Lm51bGxhYmxlKG4pKSxlLnJlYWRPbmx5PT09ITAmJihuPXoucmVhZG9ubHkobikpLGUuZGVmYXVsdCE9PXZvaWQgMCYmKG49bi5kZWZhdWx0KGUuZGVmYXVsdCkpO2NvbnN0IHM9e30scj1bIiRpZCIsImlkIiwiJGNvbW1lbnQiLCIkYW5jaG9yIiwiJHZvY2FidWxhcnkiLCIkZHluYW1pY1JlZiIsIiRkeW5hbWljQW5jaG9yIl07Zm9yKGNvbnN0IGMgb2YgciljIGluIGUmJihzW2NdPWVbY10pO2NvbnN0IGk9WyJjb250ZW50RW5jb2RpbmciLCJjb250ZW50TWVkaWFUeXBlIiwiY29udGVudFNjaGVtYSJdO2Zvcihjb25zdCBjIG9mIGkpYyBpbiBlJiYoc1tjXT1lW2NdKTtpZihlLnR5cGU9PT0ib2JqZWN0IiYmZS4kcmVmPT09dm9pZCAwKXtlLnByb3BlcnR5TmFtZXMhPT12b2lkIDAmJiFFbihlLnByb3BlcnR5TmFtZXMpJiYocy5wcm9wZXJ0eU5hbWVzPWUucHJvcGVydHlOYW1lcyk7Zm9yKGNvbnN0IGMgb2ZbIm1pblByb3BlcnRpZXMiLCJtYXhQcm9wZXJ0aWVzIl0pZVtjXSE9PXZvaWQgMCYmKHNbY109ZVtjXSl9aWYoZS50eXBlPT09ImFycmF5IiYmZS4kcmVmPT09dm9pZCAwKXtlLmNvbnRhaW5zIT09dm9pZCAwJiYhRW4oZS5jb250YWlucykmJihzLmNvbnRhaW5zPWUuY29udGFpbnMpO2Zvcihjb25zdCBjIG9mWyJ1bmlxdWVJdGVtcyIsIm1pbkNvbnRhaW5zIiwibWF4Q29udGFpbnMiXSllW2NdIT09dm9pZCAwJiYoc1tjXT1lW2NdKX1mb3IoY29uc3QgYyBvZiBPYmplY3Qua2V5cyhlKSl5eS5oYXMoYyl8fEV0KHMsYyxlW2NdKTtyZXR1cm4gT2JqZWN0LmtleXMocykubGVuZ3RoPjAmJnQucmVnaXN0cnkuYWRkKG4scyksZS5kZXNjcmlwdGlvbiYmKG49bi5kZXNjcmliZShlLmRlc2NyaXB0aW9uKSksbn1mdW5jdGlvbiBXZihlLHQpe2lmKHR5cGVvZiBlPT0iYm9vbGVhbiIpcmV0dXJuIGU/ei5hbnkoKTp6Lm5ldmVyKCk7bGV0IG47dHJ5e249SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShlKSl9Y2F0Y2h7dGhyb3cgbmV3IEVycm9yKCJmcm9tSlNPTlNjaGVtYSBpbnB1dCBpcyBub3QgdmFsaWQgSlNPTiAocG9zc2libHkgY3ljbGljKTsgdXNlICRkZWZzLyRyZWYgZm9yIHJlY3Vyc2l2ZSBzY2hlbWFzIil9Y29uc3Qgbz0keShuLHQ/LmRlZmF1bHRUYXJnZXQpLHM9bi4kZGVmc3x8bi5kZWZpbml0aW9uc3x8e30scj17dmVyc2lvbjpvLGRlZnM6cyxyZWZzOm5ldyBNYXAscHJvY2Vzc2luZzpuZXcgU2V0LHJvb3RTY2hlbWE6bixyZWdpc3RyeTp0Py5yZWdpc3RyeT8/cWV9O3JldHVybiBTZShuLHIpfWZ1bmN0aW9uIEtmKGUpe3JldHVybiB2YyhlLHtvYmplY3Q6dD0+dC5wYXJ0aWFsKCksdW5pb246dD0+e2NvbnN0IG49dC5fem9kLmRlZjtyZXR1cm4gbi5kaXNjcmltaW5hdG9yPT09dm9pZCAwP3Q6RihuLm9wdGlvbnMpfX0pfWZ1bmN0aW9uIEN5KGUsdCl7aWYoIXQ/Lmxlbmd0aClyZXR1cm4gZTtjb25zdCBuPWUuX3pvZC5kZWY7cmV0dXJuIGllKGUsd2Uobix7Y2hlY2tzOlsuLi5uLmNoZWNrcz8/W10sLi4udF19KSx7cGFyZW50OiEwfSl9ZnVuY3Rpb24gR2YoZSl7cmV0dXJuIEN5KGUub3V0LGUuY2hlY2tzKX1mdW5jdGlvbiBOeShlKXtyZXR1cm4gZS5pbi5fem9kLnRyYWl0cy5oYXMoIiRab2RUcmFuc2Zvcm0iKT9HZihlKTplLmlufWZ1bmN0aW9uIEpmKGUpe3JldHVybiB2YyhlLHtwaXBlOnQ9Pk55KHQuX3pvZC5kZWYpLGRlZmF1bHQ6KHQsbik9Pm4/c2UodC5fem9kLmRlZi5pbm5lclR5cGUpOnQsY2F0Y2g6KHQsbik9Pm4/dC5fem9kLmRlZi5pbm5lclR5cGU6dH0pfWZ1bmN0aW9uIFlmKGUpe3JldHVybiB2YyhlLHtwaXBlOnQ9PkdmKHQuX3pvZC5kZWYpLHByZWZhdWx0Oih0LG4pPT5uP3QuX3pvZC5kZWYuaW5uZXJUeXBlOnR9KX1mdW5jdGlvbiBQeShlKXtyZXR1cm4gUW0obG4sZSl9ZnVuY3Rpb24geHkoZSl7cmV0dXJuIG9mKGZuLGUpfWZ1bmN0aW9uIEl5KGUpe3JldHVybiBkZihnbixlKX1mdW5jdGlvbiBSeShlKXtyZXR1cm4gcGYoYm4sZSl9ZnVuY3Rpb24gRXkoZSl7cmV0dXJuIFNmKE1vLGUpfWNvbnN0IFFmPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCxiaWdpbnQ6UnksYm9vbGVhbjpJeSxkYXRlOkV5LG51bWJlcjp4eSxzdHJpbmc6UHl9LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSkscGQ9T2JqZWN0LmZyZWV6ZShPYmplY3QuZGVmaW5lUHJvcGVydHkoe19fcHJvdG9fXzpudWxsLCRicmFuZDpvaSwkaW5wdXQ6TWksJG91dHB1dDpaaSxJTlZBTElEOkRpLE5FVkVSOm5pLFRpbWVQcmVjaXNpb246aGMsWm9kQW55OmZyLFpvZEFycmF5OmtyLFpvZEJhc2U2NDpQbyxab2RCYXNlNjRVUkw6eG8sWm9kQmlnSW50OmJuLFpvZEJpZ0ludEZvcm1hdDpFbyxab2RCb29sZWFuOmduLFpvZENJRFJ2NDpDbyxab2RDSURSdjY6Tm8sWm9kQ1VJRDp3byxab2RDVUlEMjpfbyxab2RDYXRjaDpNcixab2RDb2RlYzpfbixab2RDb21waWxlQXN5bmNFcnJvcjpMaSxab2RDb21waWxlVW5zdXBwb3J0ZWRFcnJvcjpCaSxab2RDcmVkaXRDYXJkOnVyLFpvZEN1c3RvbTpTbixab2RDdXN0b21TdHJpbmdGb3JtYXQ6Z3QsWm9kRGF0ZTpNbyxab2REZWZhdWx0OnhyLFpvZERpc2NyaW1pbmF0ZWRVbmlvbjokcixab2RFMTY0OklvLFpvZEVtYWlsOnZvLFpvZEVtb2ppOnlvLFpvZEVudW06enQsWm9kRXJyb3I6TGYsWm9kRXhhY3RPcHRpb25hbDpMbyxab2RGaWxlOnpyLGdldCBab2RGaXJzdFBhcnR5VHlwZUtpbmQoKXtyZXR1cm4gU3N9LFpvZEZ1bmN0aW9uOktyLFpvZEdVSUQ6a28sWm9kSUJBTjpkcixab2RJUHY0OkFvLFpvZElQdjY6em8sWm9kSVNPRGF0ZTpkbixab2RJU09EYXRlVGltZTp1bixab2RJU09EdXJhdGlvbjpwbixab2RJU09UaW1lOmhuLFpvZEluc3RhbmNlT2Y6UXIsWm9kSW50ZXJzZWN0aW9uOndyLFpvZElzc3VlQ29kZTpCZixab2RKV1Q6Um8sWm9kS1NVSUQ6VG8sWm9kTGF6eTpVcixab2RMaXRlcmFsOkFyLFpvZE1BQzpscixab2RNYXA6anIsWm9kTmFOOkRyLFpvZE5hbm9JRDokbyxab2ROZXZlcjpicixab2ROb25PcHRpb25hbDpCbyxab2ROdWxsOm1yLFpvZE51bGxhYmxlOlByLFpvZE51bWJlcjpmbixab2ROdW1iZXJGb3JtYXQ6YnQsWm9kT2JqZWN0OnZuLFpvZE9wdGlvbmFsOiRuLFpvZFBpcGU6d24sWm9kUHJlZmF1bHQ6UnIsWm9kUHJlcHJvY2VzczpMcixab2RQcm9taXNlOldyLFpvZFJlYWRvbmx5OkJyLFpvZFJlYWxFcnJvcjpQZSxab2RSZWNvcmQ6QXQsWm9kU2V0OlRyLFpvZFN0cmluZzpsbixab2RTdHJpbmdGb3JtYXQ6dGUsWm9kU3VjY2Vzczpacixab2RTeW1ib2w6aHIsWm9kVGVtcGxhdGVMaXRlcmFsOkZyLFpvZFRyYW5zZm9ybTpDcixab2RUdXBsZTpfcixab2RUeXBlOkIsWm9kVUxJRDpTbyxab2RVUkw6bW4sWm9kVVVJRDpWZSxab2RVbmRlZmluZWQ6cHIsWm9kVW5pb246a24sWm9kVW5rbm93bjpncixab2RWb2lkOnZyLFpvZFhJRDpqbyxab2RYb3I6eXIsX1pvZFN0cmluZzpibyxfZGVmYXVsdDpJcixfZnVuY3Rpb246ZW4sYW55OlpvLGFycmF5OkUsYmFzZTY0OlFjLGJhc2U2NHVybDpYYyxiaWdpbnQ6cGwsYm9vbGVhbjplZSxjYXRjaDpxcixjaGVjazpFbCxjaWRydjQ6SmMsY2lkcnY2OlljLGNsb25lOmllLGNvZGVjOlBsLGNvZXJjZTpRZixjb21waWxlOkhpLGNvbmZpZzpwZSxjb3JlOk1mLGNyZWRpdENhcmQ6dGwsY3VpZDpCYyxjdWlkMjpIYyxjdXJyZW5jeUNvZGU6aWwsY3VzdG9tOkdyLGRhdGU6dmwsZGVjb2RlOmpjLGRlY29kZUFzeW5jOkFjLGRlZXBQYXJ0aWFsOktmLGRlc2NyaWJlOk9sLGRpc2NyaW1pbmF0ZWRVbmlvbjpxbyxlMTY0OmVsLGVtYWlsOnhjLGVtb2ppOkRjLGVuY29kZTpTYyxlbmNvZGVBc3luYzpUYyxlbmRzV2l0aDpjbyxlbnVtOnZlLGV4YWN0T3B0aW9uYWw6TnIsZmlsZTpBbCxmbGF0dGVuRXJyb3I6VnMsZmxvYXQzMjpsbCxmbG9hdDY0OnVsLGZvcm1hdEVycm9yOldzLGZyb21KU09OU2NoZW1hOldmLGZ1bmN0aW9uOmVuLGdldERpc2NyaW1pbmF0ZWRPcHRpb246TmksZ2V0RXJyb3JNYXA6RmYsZ2xvYmFsUmVnaXN0cnk6cWUsZ3Q6b3QsZ3RlOlJlLGd1aWQ6SWMsaGFzaDpjbCxoZXg6YWwsaG9zdG5hbWU6cmwsaHR0cFVybDpxYyxpYmFuOm5sLGluY2x1ZGVzOmFvLGlucHV0OkpmLGluc3RhbmNlb2Y6TWwsaW50OkxuLGludDMyOmRsLGludDY0Om1sLGludGVyc2VjdGlvbjp5bixpbnZlcnRDb2RlYzp4bCxpcHY0OldjLGlwdjY6R2MsaXNvOkxsLGpzb246RGwsand0Om9sLGtleW9mOmtsLGtzdWlkOlZjLGxhenk6VnIsbGVuZ3RoOmFuLGxpdGVyYWw6Yixsb2NhbGVzOk9pLGxvb3NlT2JqZWN0OmdlLGxvb3NlUmVjb3JkOl9sLGxvd2VyY2FzZTpzbyxsdDpudCxsdGU6SWUsbWFjOktjLG1hcDpTbCxtYXhMZW5ndGg6cm4sbWF4U2l6ZTpPdCxtZW1vaXplcjplcixtZXRhOlpsLG1pbWU6dW8sbWluTGVuZ3RoOm10LG1pblNpemU6c3QsbXVsdGlwbGVPZjpqdCxuYW46TmwsbmFub2lkOkxjLG5hdGl2ZUVudW06VGwsbmVnYXRpdmU6cnIsbmV2ZXI6VHQsbm9ubmVnYXRpdmU6aXIsbm9ub3B0aW9uYWw6T3Isbm9ucG9zaXRpdmU6YXIsbm9ybWFsaXplOmhvLG51bGw6T28sbnVsbGFibGU6WHQsbnVsbGlzaDp6bCxudW1iZXI6TCxvYmplY3Q6ayxvcHRpb25hbDpzZSxvdXRwdXQ6WWYsb3ZlcndyaXRlOlllLHBhcnNlOnljLHBhcnNlQXN5bmM6JGMscGFydGlhbFJlY29yZDp3bCxwaXBlOkJuLHBvc2l0aXZlOnNyLHByZWZhdWx0OkVyLHByZXByb2Nlc3M6SG8scHJldHRpZnlFcnJvcjpyaSxwcm9taXNlOlJsLHByb3BlcnRpZXM6bG8scHJvcGVydHk6Y3IscmVhZG9ubHk6SHIscmVjb3JkOlcscmVmaW5lOkpyLHJlZ2V4Om9vLHJlZ2V4ZXM6UXMscmVnaXN0cnk6dHIsc2FmZURlY29kZTpDYyxzYWZlRGVjb2RlQXN5bmM6UGMsc2FmZUVuY29kZTp6YyxzYWZlRW5jb2RlQXN5bmM6TmMsc2FmZVBhcnNlOndjLHNhZmVQYXJzZUFzeW5jOl9jLHNldDpqbCxzZXRFcnJvck1hcDpIZixzaXplOnNuLHNsdWdpZnk6Z28sc3RhcnRzV2l0aDppbyxzdHJpY3RPYmplY3Q6eWwsc3RyaW5nOmcsc3RyaW5nRm9ybWF0OnNsLHN0cmluZ2Jvb2w6cWwsc3VjY2VzczpDbCxzdXBlclJlZmluZTpZcixzeW1ib2w6Z2wsdGVtcGxhdGVMaXRlcmFsOklsLHRvSlNPTlNjaGVtYTpiYyx0b0xvd2VyQ2FzZTptbyx0b1VwcGVyQ2FzZTpmbyx0b1pvZDpacyx0cmFuc2Zvcm06RG8sdHJlZWlmeUVycm9yOnNpLHRyaW06cG8sdHVwbGU6U3IsdWludDMyOmhsLHVpbnQ2NDpmbCx1bGlkOkZjLHVuZGVmaW5lZDpRdCx1bmlvbjpGLHVua25vd246WCx1cHBlcmNhc2U6cm8sdXJsOk1jLHV0aWw6dGksdXVpZDpSYyx1dWlkdjQ6RWMsdXVpZHY2Ok9jLHV1aWR2NzpaYyx2YWxpZGF0ZTpHcyx2YWxpZGF0ZUFzeW5jOkpzLHZvaWQ6Ymwsd2l0aFBhcnNlcjpGaSx4aWQ6VWMseG9yOiRsfSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSkpLE95PU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCwkYnJhbmQ6b2ksJGlucHV0Ok1pLCRvdXRwdXQ6WmksSU5WQUxJRDpEaSxORVZFUjpuaSxUaW1lUHJlY2lzaW9uOmhjLFpvZEFueTpmcixab2RBcnJheTprcixab2RCYXNlNjQ6UG8sWm9kQmFzZTY0VVJMOnhvLFpvZEJpZ0ludDpibixab2RCaWdJbnRGb3JtYXQ6RW8sWm9kQm9vbGVhbjpnbixab2RDSURSdjQ6Q28sWm9kQ0lEUnY2Ok5vLFpvZENVSUQ6d28sWm9kQ1VJRDI6X28sWm9kQ2F0Y2g6TXIsWm9kQ29kZWM6X24sWm9kQ29tcGlsZUFzeW5jRXJyb3I6TGksWm9kQ29tcGlsZVVuc3VwcG9ydGVkRXJyb3I6QmksWm9kQ3JlZGl0Q2FyZDp1cixab2RDdXN0b206U24sWm9kQ3VzdG9tU3RyaW5nRm9ybWF0Omd0LFpvZERhdGU6TW8sWm9kRGVmYXVsdDp4cixab2REaXNjcmltaW5hdGVkVW5pb246JHIsWm9kRTE2NDpJbyxab2RFbWFpbDp2byxab2RFbW9qaTp5byxab2RFbnVtOnp0LFpvZEVycm9yOkxmLFpvZEV4YWN0T3B0aW9uYWw6TG8sWm9kRmlsZTp6cixnZXQgWm9kRmlyc3RQYXJ0eVR5cGVLaW5kKCl7cmV0dXJuIFNzfSxab2RGdW5jdGlvbjpLcixab2RHVUlEOmtvLFpvZElCQU46ZHIsWm9kSVB2NDpBbyxab2RJUHY2OnpvLFpvZElTT0RhdGU6ZG4sWm9kSVNPRGF0ZVRpbWU6dW4sWm9kSVNPRHVyYXRpb246cG4sWm9kSVNPVGltZTpobixab2RJbnN0YW5jZU9mOlFyLFpvZEludGVyc2VjdGlvbjp3cixab2RJc3N1ZUNvZGU6QmYsWm9kSldUOlJvLFpvZEtTVUlEOlRvLFpvZExhenk6VXIsWm9kTGl0ZXJhbDpBcixab2RNQUM6bHIsWm9kTWFwOmpyLFpvZE5hTjpEcixab2ROYW5vSUQ6JG8sWm9kTmV2ZXI6YnIsWm9kTm9uT3B0aW9uYWw6Qm8sWm9kTnVsbDptcixab2ROdWxsYWJsZTpQcixab2ROdW1iZXI6Zm4sWm9kTnVtYmVyRm9ybWF0OmJ0LFpvZE9iamVjdDp2bixab2RPcHRpb25hbDokbixab2RQaXBlOnduLFpvZFByZWZhdWx0OlJyLFpvZFByZXByb2Nlc3M6THIsWm9kUHJvbWlzZTpXcixab2RSZWFkb25seTpCcixab2RSZWFsRXJyb3I6UGUsWm9kUmVjb3JkOkF0LFpvZFNldDpUcixab2RTdHJpbmc6bG4sWm9kU3RyaW5nRm9ybWF0OnRlLFpvZFN1Y2Nlc3M6WnIsWm9kU3ltYm9sOmhyLFpvZFRlbXBsYXRlTGl0ZXJhbDpGcixab2RUcmFuc2Zvcm06Q3IsWm9kVHVwbGU6X3IsWm9kVHlwZTpCLFpvZFVMSUQ6U28sWm9kVVJMOm1uLFpvZFVVSUQ6VmUsWm9kVW5kZWZpbmVkOnByLFpvZFVuaW9uOmtuLFpvZFVua25vd246Z3IsWm9kVm9pZDp2cixab2RYSUQ6am8sWm9kWG9yOnlyLF9ab2RTdHJpbmc6Ym8sX2RlZmF1bHQ6SXIsX2Z1bmN0aW9uOmVuLGFueTpabyxhcnJheTpFLGJhc2U2NDpRYyxiYXNlNjR1cmw6WGMsYmlnaW50OnBsLGJvb2xlYW46ZWUsY2F0Y2g6cXIsY2hlY2s6RWwsY2lkcnY0OkpjLGNpZHJ2NjpZYyxjbG9uZTppZSxjb2RlYzpQbCxjb2VyY2U6UWYsY29tcGlsZTpIaSxjb25maWc6cGUsY29yZTpNZixjcmVkaXRDYXJkOnRsLGN1aWQ6QmMsY3VpZDI6SGMsY3VycmVuY3lDb2RlOmlsLGN1c3RvbTpHcixkYXRlOnZsLGRlY29kZTpqYyxkZWNvZGVBc3luYzpBYyxkZWVwUGFydGlhbDpLZixkZWZhdWx0OnBkLGRlc2NyaWJlOk9sLGRpc2NyaW1pbmF0ZWRVbmlvbjpxbyxlMTY0OmVsLGVtYWlsOnhjLGVtb2ppOkRjLGVuY29kZTpTYyxlbmNvZGVBc3luYzpUYyxlbmRzV2l0aDpjbyxlbnVtOnZlLGV4YWN0T3B0aW9uYWw6TnIsZmlsZTpBbCxmbGF0dGVuRXJyb3I6VnMsZmxvYXQzMjpsbCxmbG9hdDY0OnVsLGZvcm1hdEVycm9yOldzLGZyb21KU09OU2NoZW1hOldmLGZ1bmN0aW9uOmVuLGdldERpc2NyaW1pbmF0ZWRPcHRpb246TmksZ2V0RXJyb3JNYXA6RmYsZ2xvYmFsUmVnaXN0cnk6cWUsZ3Q6b3QsZ3RlOlJlLGd1aWQ6SWMsaGFzaDpjbCxoZXg6YWwsaG9zdG5hbWU6cmwsaHR0cFVybDpxYyxpYmFuOm5sLGluY2x1ZGVzOmFvLGlucHV0OkpmLGluc3RhbmNlb2Y6TWwsaW50OkxuLGludDMyOmRsLGludDY0Om1sLGludGVyc2VjdGlvbjp5bixpbnZlcnRDb2RlYzp4bCxpcHY0OldjLGlwdjY6R2MsaXNvOkxsLGpzb246RGwsand0Om9sLGtleW9mOmtsLGtzdWlkOlZjLGxhenk6VnIsbGVuZ3RoOmFuLGxpdGVyYWw6Yixsb2NhbGVzOk9pLGxvb3NlT2JqZWN0OmdlLGxvb3NlUmVjb3JkOl9sLGxvd2VyY2FzZTpzbyxsdDpudCxsdGU6SWUsbWFjOktjLG1hcDpTbCxtYXhMZW5ndGg6cm4sbWF4U2l6ZTpPdCxtZW1vaXplcjplcixtZXRhOlpsLG1pbWU6dW8sbWluTGVuZ3RoOm10LG1pblNpemU6c3QsbXVsdGlwbGVPZjpqdCxuYW46TmwsbmFub2lkOkxjLG5hdGl2ZUVudW06VGwsbmVnYXRpdmU6cnIsbmV2ZXI6VHQsbm9ubmVnYXRpdmU6aXIsbm9ub3B0aW9uYWw6T3Isbm9ucG9zaXRpdmU6YXIsbm9ybWFsaXplOmhvLG51bGw6T28sbnVsbGFibGU6WHQsbnVsbGlzaDp6bCxudW1iZXI6TCxvYmplY3Q6ayxvcHRpb25hbDpzZSxvdXRwdXQ6WWYsb3ZlcndyaXRlOlllLHBhcnNlOnljLHBhcnNlQXN5bmM6JGMscGFydGlhbFJlY29yZDp3bCxwaXBlOkJuLHBvc2l0aXZlOnNyLHByZWZhdWx0OkVyLHByZXByb2Nlc3M6SG8scHJldHRpZnlFcnJvcjpyaSxwcm9taXNlOlJsLHByb3BlcnRpZXM6bG8scHJvcGVydHk6Y3IscmVhZG9ubHk6SHIscmVjb3JkOlcscmVmaW5lOkpyLHJlZ2V4Om9vLHJlZ2V4ZXM6UXMscmVnaXN0cnk6dHIsc2FmZURlY29kZTpDYyxzYWZlRGVjb2RlQXN5bmM6UGMsc2FmZUVuY29kZTp6YyxzYWZlRW5jb2RlQXN5bmM6TmMsc2FmZVBhcnNlOndjLHNhZmVQYXJzZUFzeW5jOl9jLHNldDpqbCxzZXRFcnJvck1hcDpIZixzaXplOnNuLHNsdWdpZnk6Z28sc3RhcnRzV2l0aDppbyxzdHJpY3RPYmplY3Q6eWwsc3RyaW5nOmcsc3RyaW5nRm9ybWF0OnNsLHN0cmluZ2Jvb2w6cWwsc3VjY2VzczpDbCxzdXBlclJlZmluZTpZcixzeW1ib2w6Z2wsdGVtcGxhdGVMaXRlcmFsOklsLHRvSlNPTlNjaGVtYTpiYyx0b0xvd2VyQ2FzZTptbyx0b1VwcGVyQ2FzZTpmbyx0b1pvZDpacyx0cmFuc2Zvcm06RG8sdHJlZWlmeUVycm9yOnNpLHRyaW06cG8sdHVwbGU6U3IsdWludDMyOmhsLHVpbnQ2NDpmbCx1bGlkOkZjLHVuZGVmaW5lZDpRdCx1bmlvbjpGLHVua25vd246WCx1cHBlcmNhc2U6cm8sdXJsOk1jLHV0aWw6dGksdXVpZDpSYyx1dWlkdjQ6RWMsdXVpZHY2Ok9jLHV1aWR2NzpaYyx2YWxpZGF0ZTpHcyx2YWxpZGF0ZUFzeW5jOkpzLHZvaWQ6Ymwsd2l0aFBhcnNlcjpGaSx4aWQ6VWMseG9yOiRsLHo6cGR9LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSksd3Q9ImlvLm1vZGVsY29udGV4dHByb3RvY29sL3JlbGF0ZWQtdGFzayIsWHI9IjIuMCIsaGU9R3IoZT0+ZSE9PW51bGwmJih0eXBlb2YgZT09Im9iamVjdCJ8fHR5cGVvZiBlPT0iZnVuY3Rpb24iKSksWGY9RihbZygpLEwoKS5pbnQoKV0pLGVnPWcoKTtnZSh7dHRsOkwoKS5vcHRpb25hbCgpLHBvbGxJbnRlcnZhbDpMKCkub3B0aW9uYWwoKX0pO2NvbnN0IFp5PWsoe3R0bDpMKCkub3B0aW9uYWwoKX0pLE15PWsoe3Rhc2tJZDpnKCl9KSxCbD1nZSh7cHJvZ3Jlc3NUb2tlbjpYZi5vcHRpb25hbCgpLFt3dF06TXkub3B0aW9uYWwoKX0pLE9lPWsoe19tZXRhOkJsLm9wdGlvbmFsKCl9KSxGbz1PZS5leHRlbmQoe3Rhc2s6Wnkub3B0aW9uYWwoKX0pLHF5PWU9PkZvLnNhZmVQYXJzZShlKS5zdWNjZXNzLGtlPWsoe21ldGhvZDpnKCkscGFyYW1zOk9lLmxvb3NlKCkub3B0aW9uYWwoKX0pLEJlPWsoe19tZXRhOkJsLm9wdGlvbmFsKCl9KSxIZT1rKHttZXRob2Q6ZygpLHBhcmFtczpCZS5sb29zZSgpLm9wdGlvbmFsKCl9KSx5ZT1nZSh7X21ldGE6Qmwub3B0aW9uYWwoKX0pLFVvPUYoW2coKSxMKCkuaW50KCldKSx0Zz1rKHtqc29ucnBjOmIoWHIpLGlkOlVvLC4uLmtlLnNoYXBlfSkuc3RyaWN0KCksbWQ9ZT0+dGcuc2FmZVBhcnNlKGUpLnN1Y2Nlc3Msbmc9ayh7anNvbnJwYzpiKFhyKSwuLi5IZS5zaGFwZX0pLnN0cmljdCgpLER5PWU9Pm5nLnNhZmVQYXJzZShlKS5zdWNjZXNzLEhsPWsoe2pzb25ycGM6YihYciksaWQ6VW8scmVzdWx0OnllfSkuc3RyaWN0KCksaXM9ZT0+SGwuc2FmZVBhcnNlKGUpLnN1Y2Nlc3M7dmFyIFE7KGZ1bmN0aW9uKGUpe2VbZS5Db25uZWN0aW9uQ2xvc2VkPS0zMmUzXT0iQ29ubmVjdGlvbkNsb3NlZCIsZVtlLlJlcXVlc3RUaW1lb3V0PS0zMjAwMV09IlJlcXVlc3RUaW1lb3V0IixlW2UuUGFyc2VFcnJvcj0tMzI3MDBdPSJQYXJzZUVycm9yIixlW2UuSW52YWxpZFJlcXVlc3Q9LTMyNjAwXT0iSW52YWxpZFJlcXVlc3QiLGVbZS5NZXRob2ROb3RGb3VuZD0tMzI2MDFdPSJNZXRob2ROb3RGb3VuZCIsZVtlLkludmFsaWRQYXJhbXM9LTMyNjAyXT0iSW52YWxpZFBhcmFtcyIsZVtlLkludGVybmFsRXJyb3I9LTMyNjAzXT0iSW50ZXJuYWxFcnJvciIsZVtlLlVybEVsaWNpdGF0aW9uUmVxdWlyZWQ9LTMyMDQyXT0iVXJsRWxpY2l0YXRpb25SZXF1aXJlZCJ9KShRfHwoUT17fSkpO2NvbnN0IEZsPWsoe2pzb25ycGM6YihYciksaWQ6VW8ub3B0aW9uYWwoKSxlcnJvcjprKHtjb2RlOkwoKS5pbnQoKSxtZXNzYWdlOmcoKSxkYXRhOlgoKS5vcHRpb25hbCgpfSl9KS5zdHJpY3QoKSxMeT1lPT5GbC5zYWZlUGFyc2UoZSkuc3VjY2VzcyxCeT1GKFt0ZyxuZyxIbCxGbF0pO0YoW0hsLEZsXSk7Y29uc3QgVWw9eWUuc3RyaWN0KCksSHk9QmUuZXh0ZW5kKHtyZXF1ZXN0SWQ6VW8ub3B0aW9uYWwoKSxyZWFzb246ZygpLm9wdGlvbmFsKCl9KSxWbD1IZS5leHRlbmQoe21ldGhvZDpiKCJub3RpZmljYXRpb25zL2NhbmNlbGxlZCIpLHBhcmFtczpIeX0pLEZ5PWsoe3NyYzpnKCksbWltZVR5cGU6ZygpLm9wdGlvbmFsKCksc2l6ZXM6RShnKCkpLm9wdGlvbmFsKCksdGhlbWU6dmUoWyJsaWdodCIsImRhcmsiXSkub3B0aW9uYWwoKX0pLFZvPWsoe2ljb25zOkUoRnkpLm9wdGlvbmFsKCl9KSx0bj1rKHtuYW1lOmcoKSx0aXRsZTpnKCkub3B0aW9uYWwoKX0pLGVhPXRuLmV4dGVuZCh7Li4udG4uc2hhcGUsLi4uVm8uc2hhcGUsdmVyc2lvbjpnKCksd2Vic2l0ZVVybDpnKCkub3B0aW9uYWwoKSxkZXNjcmlwdGlvbjpnKCkub3B0aW9uYWwoKX0pLFV5PXluKGsoe2FwcGx5RGVmYXVsdHM6ZWUoKS5vcHRpb25hbCgpfSksVyhnKCksWCgpKSksVnk9SG8oZT0+ZSYmdHlwZW9mIGU9PSJvYmplY3QiJiYhQXJyYXkuaXNBcnJheShlKSYmT2JqZWN0LmtleXMoZSkubGVuZ3RoPT09MD97Zm9ybTp7fX06ZSx5bihrKHtmb3JtOlV5Lm9wdGlvbmFsKCksdXJsOmhlLm9wdGlvbmFsKCl9KSxXKGcoKSxYKCkpLm9wdGlvbmFsKCkpKSxXeT1nZSh7bGlzdDpoZS5vcHRpb25hbCgpLGNhbmNlbDpoZS5vcHRpb25hbCgpLHJlcXVlc3RzOmdlKHtzYW1wbGluZzpnZSh7Y3JlYXRlTWVzc2FnZTpoZS5vcHRpb25hbCgpfSkub3B0aW9uYWwoKSxlbGljaXRhdGlvbjpnZSh7Y3JlYXRlOmhlLm9wdGlvbmFsKCl9KS5vcHRpb25hbCgpfSkub3B0aW9uYWwoKX0pLEt5PWdlKHtsaXN0OmhlLm9wdGlvbmFsKCksY2FuY2VsOmhlLm9wdGlvbmFsKCkscmVxdWVzdHM6Z2Uoe3Rvb2xzOmdlKHtjYWxsOmhlLm9wdGlvbmFsKCl9KS5vcHRpb25hbCgpfSkub3B0aW9uYWwoKX0pLEd5PWsoe2V4cGVyaW1lbnRhbDpXKGcoKSxoZSkub3B0aW9uYWwoKSxzYW1wbGluZzprKHtjb250ZXh0OmhlLm9wdGlvbmFsKCksdG9vbHM6aGUub3B0aW9uYWwoKX0pLm9wdGlvbmFsKCksZWxpY2l0YXRpb246Vnkub3B0aW9uYWwoKSxyb290czprKHtsaXN0Q2hhbmdlZDplZSgpLm9wdGlvbmFsKCl9KS5vcHRpb25hbCgpLHRhc2tzOld5Lm9wdGlvbmFsKCksZXh0ZW5zaW9uczpXKGcoKSxoZSkub3B0aW9uYWwoKX0pLEp5PU9lLmV4dGVuZCh7cHJvdG9jb2xWZXJzaW9uOmcoKSxjYXBhYmlsaXRpZXM6R3ksY2xpZW50SW5mbzplYX0pLFl5PWtlLmV4dGVuZCh7bWV0aG9kOmIoImluaXRpYWxpemUiKSxwYXJhbXM6Snl9KSxReT1rKHtleHBlcmltZW50YWw6VyhnKCksaGUpLm9wdGlvbmFsKCksbG9nZ2luZzpoZS5vcHRpb25hbCgpLGNvbXBsZXRpb25zOmhlLm9wdGlvbmFsKCkscHJvbXB0czprKHtsaXN0Q2hhbmdlZDplZSgpLm9wdGlvbmFsKCl9KS5vcHRpb25hbCgpLHJlc291cmNlczprKHtzdWJzY3JpYmU6ZWUoKS5vcHRpb25hbCgpLGxpc3RDaGFuZ2VkOmVlKCkub3B0aW9uYWwoKX0pLm9wdGlvbmFsKCksdG9vbHM6ayh7bGlzdENoYW5nZWQ6ZWUoKS5vcHRpb25hbCgpfSkub3B0aW9uYWwoKSx0YXNrczpLeS5vcHRpb25hbCgpLGV4dGVuc2lvbnM6VyhnKCksaGUpLm9wdGlvbmFsKCl9KSxYeT15ZS5leHRlbmQoe3Byb3RvY29sVmVyc2lvbjpnKCksY2FwYWJpbGl0aWVzOlF5LHNlcnZlckluZm86ZWEsaW5zdHJ1Y3Rpb25zOmcoKS5vcHRpb25hbCgpfSksZTA9SGUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9pbml0aWFsaXplZCIpLHBhcmFtczpCZS5vcHRpb25hbCgpfSksdGE9a2UuZXh0ZW5kKHttZXRob2Q6YigicGluZyIpLHBhcmFtczpPZS5vcHRpb25hbCgpfSksdDA9ayh7cHJvZ3Jlc3M6TCgpLHRvdGFsOnNlKEwoKSksbWVzc2FnZTpzZShnKCkpfSksbjA9ayh7Li4uQmUuc2hhcGUsLi4udDAuc2hhcGUscHJvZ3Jlc3NUb2tlbjpYZn0pLFdsPUhlLmV4dGVuZCh7bWV0aG9kOmIoIm5vdGlmaWNhdGlvbnMvcHJvZ3Jlc3MiKSxwYXJhbXM6bjB9KSxvMD1PZS5leHRlbmQoe2N1cnNvcjplZy5vcHRpb25hbCgpfSksV289a2UuZXh0ZW5kKHtwYXJhbXM6bzAub3B0aW9uYWwoKX0pLEtvPXllLmV4dGVuZCh7bmV4dEN1cnNvcjplZy5vcHRpb25hbCgpfSksczA9dmUoWyJ3b3JraW5nIiwiaW5wdXRfcmVxdWlyZWQiLCJjb21wbGV0ZWQiLCJmYWlsZWQiLCJjYW5jZWxsZWQiXSksR289ayh7dGFza0lkOmcoKSxzdGF0dXM6czAsdHRsOkYoW0woKSxPbygpXSksY3JlYXRlZEF0OmcoKSxsYXN0VXBkYXRlZEF0OmcoKSxwb2xsSW50ZXJ2YWw6c2UoTCgpKSxzdGF0dXNNZXNzYWdlOnNlKGcoKSl9KSxLbD15ZS5leHRlbmQoe3Rhc2s6R299KSxyMD1CZS5tZXJnZShHbyksanM9SGUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy90YXNrcy9zdGF0dXMiKSxwYXJhbXM6cjB9KSxHbD1rZS5leHRlbmQoe21ldGhvZDpiKCJ0YXNrcy9nZXQiKSxwYXJhbXM6T2UuZXh0ZW5kKHt0YXNrSWQ6ZygpfSl9KSxKbD15ZS5tZXJnZShHbyksWWw9a2UuZXh0ZW5kKHttZXRob2Q6YigidGFza3MvcmVzdWx0IikscGFyYW1zOk9lLmV4dGVuZCh7dGFza0lkOmcoKX0pfSk7eWUubG9vc2UoKTtjb25zdCBRbD1Xby5leHRlbmQoe21ldGhvZDpiKCJ0YXNrcy9saXN0Iil9KSxYbD1Lby5leHRlbmQoe3Rhc2tzOkUoR28pfSksZXU9a2UuZXh0ZW5kKHttZXRob2Q6YigidGFza3MvY2FuY2VsIikscGFyYW1zOk9lLmV4dGVuZCh7dGFza0lkOmcoKX0pfSksYTA9eWUubWVyZ2UoR28pLG9nPWsoe3VyaTpnKCksbWltZVR5cGU6c2UoZygpKSxfbWV0YTpXKGcoKSxYKCkpLm9wdGlvbmFsKCl9KSxzZz1vZy5leHRlbmQoe3RleHQ6ZygpfSksdHU9ZygpLnJlZmluZShlPT57dHJ5e3JldHVybiBhdG9iKGUpLCEwfWNhdGNoe3JldHVybiExfX0se21lc3NhZ2U6IkludmFsaWQgQmFzZTY0IHN0cmluZyJ9KSxyZz1vZy5leHRlbmQoe2Jsb2I6dHV9KSxKbz12ZShbInVzZXIiLCJhc3Npc3RhbnQiXSksam49ayh7YXVkaWVuY2U6RShKbykub3B0aW9uYWwoKSxwcmlvcml0eTpMKCkubWluKDApLm1heCgxKS5vcHRpb25hbCgpLGxhc3RNb2RpZmllZDpVZih7b2Zmc2V0OiEwfSkub3B0aW9uYWwoKX0pLGFnPWsoey4uLnRuLnNoYXBlLC4uLlZvLnNoYXBlLHVyaTpnKCksZGVzY3JpcHRpb246c2UoZygpKSxtaW1lVHlwZTpzZShnKCkpLHNpemU6c2UoTCgpKSxhbm5vdGF0aW9uczpqbi5vcHRpb25hbCgpLF9tZXRhOnNlKGdlKHt9KSl9KSxpMD1rKHsuLi50bi5zaGFwZSwuLi5Wby5zaGFwZSx1cmlUZW1wbGF0ZTpnKCksZGVzY3JpcHRpb246c2UoZygpKSxtaW1lVHlwZTpzZShnKCkpLGFubm90YXRpb25zOmpuLm9wdGlvbmFsKCksX21ldGE6c2UoZ2Uoe30pKX0pLGMwPVdvLmV4dGVuZCh7bWV0aG9kOmIoInJlc291cmNlcy9saXN0Iil9KSxpZz1Lby5leHRlbmQoe3Jlc291cmNlczpFKGFnKX0pLGwwPVdvLmV4dGVuZCh7bWV0aG9kOmIoInJlc291cmNlcy90ZW1wbGF0ZXMvbGlzdCIpfSksdTA9S28uZXh0ZW5kKHtyZXNvdXJjZVRlbXBsYXRlczpFKGkwKX0pLG51PU9lLmV4dGVuZCh7dXJpOmcoKX0pLGQwPW51LGgwPWtlLmV4dGVuZCh7bWV0aG9kOmIoInJlc291cmNlcy9yZWFkIikscGFyYW1zOmQwfSksY2c9eWUuZXh0ZW5kKHtjb250ZW50czpFKEYoW3NnLHJnXSkpfSkscDA9SGUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9yZXNvdXJjZXMvbGlzdF9jaGFuZ2VkIikscGFyYW1zOkJlLm9wdGlvbmFsKCl9KSxtMD1udSxmMD1rZS5leHRlbmQoe21ldGhvZDpiKCJyZXNvdXJjZXMvc3Vic2NyaWJlIikscGFyYW1zOm0wfSksZzA9bnUsYjA9a2UuZXh0ZW5kKHttZXRob2Q6YigicmVzb3VyY2VzL3Vuc3Vic2NyaWJlIikscGFyYW1zOmcwfSksdjA9QmUuZXh0ZW5kKHt1cmk6ZygpfSksazA9SGUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9yZXNvdXJjZXMvdXBkYXRlZCIpLHBhcmFtczp2MH0pLHkwPWsoe25hbWU6ZygpLGRlc2NyaXB0aW9uOnNlKGcoKSkscmVxdWlyZWQ6c2UoZWUoKSl9KSwkMD1rKHsuLi50bi5zaGFwZSwuLi5Wby5zaGFwZSxkZXNjcmlwdGlvbjpzZShnKCkpLGFyZ3VtZW50czpzZShFKHkwKSksX21ldGE6c2UoZ2Uoe30pKX0pLHcwPVdvLmV4dGVuZCh7bWV0aG9kOmIoInByb21wdHMvbGlzdCIpfSksXzA9S28uZXh0ZW5kKHtwcm9tcHRzOkUoJDApfSksUzA9T2UuZXh0ZW5kKHtuYW1lOmcoKSxhcmd1bWVudHM6VyhnKCksZygpKS5vcHRpb25hbCgpfSksajA9a2UuZXh0ZW5kKHttZXRob2Q6YigicHJvbXB0cy9nZXQiKSxwYXJhbXM6UzB9KSxvdT1rKHt0eXBlOmIoInRleHQiKSx0ZXh0OmcoKSxhbm5vdGF0aW9uczpqbi5vcHRpb25hbCgpLF9tZXRhOlcoZygpLFgoKSkub3B0aW9uYWwoKX0pLHN1PWsoe3R5cGU6YigiaW1hZ2UiKSxkYXRhOnR1LG1pbWVUeXBlOmcoKSxhbm5vdGF0aW9uczpqbi5vcHRpb25hbCgpLF9tZXRhOlcoZygpLFgoKSkub3B0aW9uYWwoKX0pLHJ1PWsoe3R5cGU6YigiYXVkaW8iKSxkYXRhOnR1LG1pbWVUeXBlOmcoKSxhbm5vdGF0aW9uczpqbi5vcHRpb25hbCgpLF9tZXRhOlcoZygpLFgoKSkub3B0aW9uYWwoKX0pLFQwPWsoe3R5cGU6YigidG9vbF91c2UiKSxuYW1lOmcoKSxpZDpnKCksaW5wdXQ6VyhnKCksWCgpKSxfbWV0YTpXKGcoKSxYKCkpLm9wdGlvbmFsKCl9KSxsZz1rKHt0eXBlOmIoInJlc291cmNlIikscmVzb3VyY2U6Rihbc2cscmddKSxhbm5vdGF0aW9uczpqbi5vcHRpb25hbCgpLF9tZXRhOlcoZygpLFgoKSkub3B0aW9uYWwoKX0pLHVnPWFnLmV4dGVuZCh7dHlwZTpiKCJyZXNvdXJjZV9saW5rIil9KSxZbz1GKFtvdSxzdSxydSx1ZyxsZ10pLEEwPWsoe3JvbGU6Sm8sY29udGVudDpZb30pLHowPXllLmV4dGVuZCh7ZGVzY3JpcHRpb246ZygpLm9wdGlvbmFsKCksbWVzc2FnZXM6RShBMCl9KSxDMD1IZS5leHRlbmQoe21ldGhvZDpiKCJub3RpZmljYXRpb25zL3Byb21wdHMvbGlzdF9jaGFuZ2VkIikscGFyYW1zOkJlLm9wdGlvbmFsKCl9KSxOMD1rKHt0aXRsZTpnKCkub3B0aW9uYWwoKSxyZWFkT25seUhpbnQ6ZWUoKS5vcHRpb25hbCgpLGRlc3RydWN0aXZlSGludDplZSgpLm9wdGlvbmFsKCksaWRlbXBvdGVudEhpbnQ6ZWUoKS5vcHRpb25hbCgpLG9wZW5Xb3JsZEhpbnQ6ZWUoKS5vcHRpb25hbCgpfSksUDA9ayh7dGFza1N1cHBvcnQ6dmUoWyJyZXF1aXJlZCIsIm9wdGlvbmFsIiwiZm9yYmlkZGVuIl0pLm9wdGlvbmFsKCl9KSxhdT1rKHsuLi50bi5zaGFwZSwuLi5Wby5zaGFwZSxkZXNjcmlwdGlvbjpnKCkub3B0aW9uYWwoKSxpbnB1dFNjaGVtYTprKHt0eXBlOmIoIm9iamVjdCIpLHByb3BlcnRpZXM6VyhnKCksaGUpLm9wdGlvbmFsKCkscmVxdWlyZWQ6RShnKCkpLm9wdGlvbmFsKCl9KS5jYXRjaGFsbChYKCkpLG91dHB1dFNjaGVtYTprKHt0eXBlOmIoIm9iamVjdCIpLHByb3BlcnRpZXM6VyhnKCksaGUpLm9wdGlvbmFsKCkscmVxdWlyZWQ6RShnKCkpLm9wdGlvbmFsKCl9KS5jYXRjaGFsbChYKCkpLm9wdGlvbmFsKCksYW5ub3RhdGlvbnM6TjAub3B0aW9uYWwoKSxleGVjdXRpb246UDAub3B0aW9uYWwoKSxfbWV0YTpXKGcoKSxYKCkpLm9wdGlvbmFsKCl9KSxkZz1Xby5leHRlbmQoe21ldGhvZDpiKCJ0b29scy9saXN0Iil9KSx4MD1Lby5leHRlbmQoe3Rvb2xzOkUoYXUpfSksbmE9eWUuZXh0ZW5kKHtjb250ZW50OkUoWW8pLmRlZmF1bHQoW10pLHN0cnVjdHVyZWRDb250ZW50OlcoZygpLFgoKSkub3B0aW9uYWwoKSxpc0Vycm9yOmVlKCkub3B0aW9uYWwoKX0pO25hLm9yKHllLmV4dGVuZCh7dG9vbFJlc3VsdDpYKCl9KSk7Y29uc3QgSTA9Rm8uZXh0ZW5kKHtuYW1lOmcoKSxhcmd1bWVudHM6VyhnKCksWCgpKS5vcHRpb25hbCgpfSksaGc9a2UuZXh0ZW5kKHttZXRob2Q6YigidG9vbHMvY2FsbCIpLHBhcmFtczpJMH0pLFIwPUhlLmV4dGVuZCh7bWV0aG9kOmIoIm5vdGlmaWNhdGlvbnMvdG9vbHMvbGlzdF9jaGFuZ2VkIikscGFyYW1zOkJlLm9wdGlvbmFsKCl9KTtrKHthdXRvUmVmcmVzaDplZSgpLmRlZmF1bHQoITApLGRlYm91bmNlTXM6TCgpLmludCgpLm5vbm5lZ2F0aXZlKCkuZGVmYXVsdCgzMDApfSk7Y29uc3QgcGc9dmUoWyJkZWJ1ZyIsImluZm8iLCJub3RpY2UiLCJ3YXJuaW5nIiwiZXJyb3IiLCJjcml0aWNhbCIsImFsZXJ0IiwiZW1lcmdlbmN5Il0pLEUwPU9lLmV4dGVuZCh7bGV2ZWw6cGd9KSxPMD1rZS5leHRlbmQoe21ldGhvZDpiKCJsb2dnaW5nL3NldExldmVsIikscGFyYW1zOkUwfSksWjA9QmUuZXh0ZW5kKHtsZXZlbDpwZyxsb2dnZXI6ZygpLm9wdGlvbmFsKCksZGF0YTpYKCl9KSxNMD1IZS5leHRlbmQoe21ldGhvZDpiKCJub3RpZmljYXRpb25zL21lc3NhZ2UiKSxwYXJhbXM6WjB9KSxxMD1rKHtuYW1lOmcoKS5vcHRpb25hbCgpfSksRDA9ayh7aGludHM6RShxMCkub3B0aW9uYWwoKSxjb3N0UHJpb3JpdHk6TCgpLm1pbigwKS5tYXgoMSkub3B0aW9uYWwoKSxzcGVlZFByaW9yaXR5OkwoKS5taW4oMCkubWF4KDEpLm9wdGlvbmFsKCksaW50ZWxsaWdlbmNlUHJpb3JpdHk6TCgpLm1pbigwKS5tYXgoMSkub3B0aW9uYWwoKX0pLEwwPWsoe21vZGU6dmUoWyJhdXRvIiwicmVxdWlyZWQiLCJub25lIl0pLm9wdGlvbmFsKCl9KSxCMD1rKHt0eXBlOmIoInRvb2xfcmVzdWx0IiksdG9vbFVzZUlkOmcoKS5kZXNjcmliZSgiVGhlIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29ycmVzcG9uZGluZyB0b29sIGNhbGwuIiksY29udGVudDpFKFlvKS5kZWZhdWx0KFtdKSxzdHJ1Y3R1cmVkQ29udGVudDprKHt9KS5sb29zZSgpLm9wdGlvbmFsKCksaXNFcnJvcjplZSgpLm9wdGlvbmFsKCksX21ldGE6VyhnKCksWCgpKS5vcHRpb25hbCgpfSksSDA9cW8oInR5cGUiLFtvdSxzdSxydV0pLFRzPXFvKCJ0eXBlIixbb3Usc3UscnUsVDAsQjBdKSxGMD1rKHtyb2xlOkpvLGNvbnRlbnQ6RihbVHMsRShUcyldKSxfbWV0YTpXKGcoKSxYKCkpLm9wdGlvbmFsKCl9KSxVMD1Gby5leHRlbmQoe21lc3NhZ2VzOkUoRjApLG1vZGVsUHJlZmVyZW5jZXM6RDAub3B0aW9uYWwoKSxzeXN0ZW1Qcm9tcHQ6ZygpLm9wdGlvbmFsKCksaW5jbHVkZUNvbnRleHQ6dmUoWyJub25lIiwidGhpc1NlcnZlciIsImFsbFNlcnZlcnMiXSkub3B0aW9uYWwoKSx0ZW1wZXJhdHVyZTpMKCkub3B0aW9uYWwoKSxtYXhUb2tlbnM6TCgpLmludCgpLHN0b3BTZXF1ZW5jZXM6RShnKCkpLm9wdGlvbmFsKCksbWV0YWRhdGE6aGUub3B0aW9uYWwoKSx0b29sczpFKGF1KS5vcHRpb25hbCgpLHRvb2xDaG9pY2U6TDAub3B0aW9uYWwoKX0pLFYwPWtlLmV4dGVuZCh7bWV0aG9kOmIoInNhbXBsaW5nL2NyZWF0ZU1lc3NhZ2UiKSxwYXJhbXM6VTB9KSxtZz15ZS5leHRlbmQoe21vZGVsOmcoKSxzdG9wUmVhc29uOnNlKHZlKFsiZW5kVHVybiIsInN0b3BTZXF1ZW5jZSIsIm1heFRva2VucyJdKS5vcihnKCkpKSxyb2xlOkpvLGNvbnRlbnQ6SDB9KSxmZz15ZS5leHRlbmQoe21vZGVsOmcoKSxzdG9wUmVhc29uOnNlKHZlKFsiZW5kVHVybiIsInN0b3BTZXF1ZW5jZSIsIm1heFRva2VucyIsInRvb2xVc2UiXSkub3IoZygpKSkscm9sZTpKbyxjb250ZW50OkYoW1RzLEUoVHMpXSl9KSxXMD1rKHt0eXBlOmIoImJvb2xlYW4iKSx0aXRsZTpnKCkub3B0aW9uYWwoKSxkZXNjcmlwdGlvbjpnKCkub3B0aW9uYWwoKSxkZWZhdWx0OmVlKCkub3B0aW9uYWwoKX0pLEswPWsoe3R5cGU6Yigic3RyaW5nIiksdGl0bGU6ZygpLm9wdGlvbmFsKCksZGVzY3JpcHRpb246ZygpLm9wdGlvbmFsKCksbWluTGVuZ3RoOkwoKS5vcHRpb25hbCgpLG1heExlbmd0aDpMKCkub3B0aW9uYWwoKSxmb3JtYXQ6dmUoWyJlbWFpbCIsInVyaSIsImRhdGUiLCJkYXRlLXRpbWUiXSkub3B0aW9uYWwoKSxkZWZhdWx0OmcoKS5vcHRpb25hbCgpfSksRzA9ayh7dHlwZTp2ZShbIm51bWJlciIsImludGVnZXIiXSksdGl0bGU6ZygpLm9wdGlvbmFsKCksZGVzY3JpcHRpb246ZygpLm9wdGlvbmFsKCksbWluaW11bTpMKCkub3B0aW9uYWwoKSxtYXhpbXVtOkwoKS5vcHRpb25hbCgpLGRlZmF1bHQ6TCgpLm9wdGlvbmFsKCl9KSxKMD1rKHt0eXBlOmIoInN0cmluZyIpLHRpdGxlOmcoKS5vcHRpb25hbCgpLGRlc2NyaXB0aW9uOmcoKS5vcHRpb25hbCgpLGVudW06RShnKCkpLGRlZmF1bHQ6ZygpLm9wdGlvbmFsKCl9KSxZMD1rKHt0eXBlOmIoInN0cmluZyIpLHRpdGxlOmcoKS5vcHRpb25hbCgpLGRlc2NyaXB0aW9uOmcoKS5vcHRpb25hbCgpLG9uZU9mOkUoayh7Y29uc3Q6ZygpLHRpdGxlOmcoKX0pKSxkZWZhdWx0OmcoKS5vcHRpb25hbCgpfSksUTA9ayh7dHlwZTpiKCJzdHJpbmciKSx0aXRsZTpnKCkub3B0aW9uYWwoKSxkZXNjcmlwdGlvbjpnKCkub3B0aW9uYWwoKSxlbnVtOkUoZygpKSxlbnVtTmFtZXM6RShnKCkpLm9wdGlvbmFsKCksZGVmYXVsdDpnKCkub3B0aW9uYWwoKX0pLFgwPUYoW0owLFkwXSksZSQ9ayh7dHlwZTpiKCJhcnJheSIpLHRpdGxlOmcoKS5vcHRpb25hbCgpLGRlc2NyaXB0aW9uOmcoKS5vcHRpb25hbCgpLG1pbkl0ZW1zOkwoKS5vcHRpb25hbCgpLG1heEl0ZW1zOkwoKS5vcHRpb25hbCgpLGl0ZW1zOmsoe3R5cGU6Yigic3RyaW5nIiksZW51bTpFKGcoKSl9KSxkZWZhdWx0OkUoZygpKS5vcHRpb25hbCgpfSksdCQ9ayh7dHlwZTpiKCJhcnJheSIpLHRpdGxlOmcoKS5vcHRpb25hbCgpLGRlc2NyaXB0aW9uOmcoKS5vcHRpb25hbCgpLG1pbkl0ZW1zOkwoKS5vcHRpb25hbCgpLG1heEl0ZW1zOkwoKS5vcHRpb25hbCgpLGl0ZW1zOmsoe2FueU9mOkUoayh7Y29uc3Q6ZygpLHRpdGxlOmcoKX0pKX0pLGRlZmF1bHQ6RShnKCkpLm9wdGlvbmFsKCl9KSxuJD1GKFtlJCx0JF0pLG8kPUYoW1EwLFgwLG4kXSkscyQ9RihbbyQsVzAsSzAsRzBdKSxyJD1Gby5leHRlbmQoe21vZGU6YigiZm9ybSIpLm9wdGlvbmFsKCksbWVzc2FnZTpnKCkscmVxdWVzdGVkU2NoZW1hOmsoe3R5cGU6Yigib2JqZWN0IikscHJvcGVydGllczpXKGcoKSxzJCkscmVxdWlyZWQ6RShnKCkpLm9wdGlvbmFsKCl9KX0pLGEkPUZvLmV4dGVuZCh7bW9kZTpiKCJ1cmwiKSxtZXNzYWdlOmcoKSxlbGljaXRhdGlvbklkOmcoKSx1cmw6ZygpLnVybCgpfSksaSQ9RihbciQsYSRdKSxjJD1rZS5leHRlbmQoe21ldGhvZDpiKCJlbGljaXRhdGlvbi9jcmVhdGUiKSxwYXJhbXM6aSR9KSxsJD1CZS5leHRlbmQoe2VsaWNpdGF0aW9uSWQ6ZygpfSksdSQ9SGUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9lbGljaXRhdGlvbi9jb21wbGV0ZSIpLHBhcmFtczpsJH0pLGQkPXllLmV4dGVuZCh7YWN0aW9uOnZlKFsiYWNjZXB0IiwiZGVjbGluZSIsImNhbmNlbCJdKSxjb250ZW50OkhvKGU9PmU9PT1udWxsP3ZvaWQgMDplLFcoZygpLEYoW2coKSxMKCksZWUoKSxFKGcoKSldKSkub3B0aW9uYWwoKSl9KSxoJD1rKHt0eXBlOmIoInJlZi9yZXNvdXJjZSIpLHVyaTpnKCl9KSxwJD1rKHt0eXBlOmIoInJlZi9wcm9tcHQiKSxuYW1lOmcoKX0pLG0kPU9lLmV4dGVuZCh7cmVmOkYoW3AkLGgkXSksYXJndW1lbnQ6ayh7bmFtZTpnKCksdmFsdWU6ZygpfSksY29udGV4dDprKHthcmd1bWVudHM6VyhnKCksZygpKS5vcHRpb25hbCgpfSkub3B0aW9uYWwoKX0pLGYkPWtlLmV4dGVuZCh7bWV0aG9kOmIoImNvbXBsZXRpb24vY29tcGxldGUiKSxwYXJhbXM6bSR9KSxnJD15ZS5leHRlbmQoe2NvbXBsZXRpb246Z2Uoe3ZhbHVlczpFKGcoKSkubWF4KDEwMCksdG90YWw6c2UoTCgpLmludCgpKSxoYXNNb3JlOnNlKGVlKCkpfSl9KSxiJD1rKHt1cmk6ZygpLnN0YXJ0c1dpdGgoImZpbGU6Ly8iKSxuYW1lOmcoKS5vcHRpb25hbCgpLF9tZXRhOlcoZygpLFgoKSkub3B0aW9uYWwoKX0pLHYkPWtlLmV4dGVuZCh7bWV0aG9kOmIoInJvb3RzL2xpc3QiKSxwYXJhbXM6T2Uub3B0aW9uYWwoKX0pLGskPXllLmV4dGVuZCh7cm9vdHM6RShiJCl9KSx5JD1IZS5leHRlbmQoe21ldGhvZDpiKCJub3RpZmljYXRpb25zL3Jvb3RzL2xpc3RfY2hhbmdlZCIpLHBhcmFtczpCZS5vcHRpb25hbCgpfSk7RihbdGEsWXksZiQsTzAsajAsdzAsYzAsbDAsaDAsZjAsYjAsaGcsZGcsR2wsWWwsUWwsZXVdKTtGKFtWbCxXbCxlMCx5JCxqc10pO0YoW1VsLG1nLGZnLGQkLGskLEpsLFhsLEtsXSk7RihbdGEsVjAsYyQsdiQsR2wsWWwsUWwsZXVdKTtGKFtWbCxXbCxNMCxrMCxwMCxSMCxDMCxqcyx1JF0pO0YoW1VsLFh5LGckLHowLF8wLGlnLHUwLGNnLG5hLHgwLEpsLFhsLEtsXSk7Y2xhc3MgSiBleHRlbmRzIEVycm9ye2NvbnN0cnVjdG9yKHQsbixvKXtzdXBlcihgTUNQIGVycm9yICR7dH06ICR7bn1gKSx0aGlzLmNvZGU9dCx0aGlzLmRhdGE9byx0aGlzLm5hbWU9Ik1jcEVycm9yIn1zdGF0aWMgZnJvbUVycm9yKHQsbixvKXtpZih0PT09US5VcmxFbGljaXRhdGlvblJlcXVpcmVkJiZvKXtjb25zdCBzPW87aWYocy5lbGljaXRhdGlvbnMpcmV0dXJuIG5ldyAkJChzLmVsaWNpdGF0aW9ucyxuKX1yZXR1cm4gbmV3IEoodCxuLG8pfX1jbGFzcyAkJCBleHRlbmRzIEp7Y29uc3RydWN0b3IodCxuPWBVUkwgZWxpY2l0YXRpb24ke3QubGVuZ3RoPjE/InMiOiIifSByZXF1aXJlZGApe3N1cGVyKFEuVXJsRWxpY2l0YXRpb25SZXF1aXJlZCxuLHtlbGljaXRhdGlvbnM6dH0pfWdldCBlbGljaXRhdGlvbnMoKXtyZXR1cm4gdGhpcy5kYXRhPy5lbGljaXRhdGlvbnM/P1tdfX1mdW5jdGlvbiAkdChlKXtyZXR1cm4gZT09PSJjb21wbGV0ZWQifHxlPT09ImZhaWxlZCJ8fGU9PT0iY2FuY2VsbGVkIn1uZXcgU2V0KCJBQkNERUZHSElKS0xNTk9QUVJTVFVWWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnh5ejAxMjM0NTY3ODkiKTtmdW5jdGlvbiBmZChlKXtjb25zdCBuPWh5KGUpPy5tZXRob2Q7aWYoIW4pdGhyb3cgbmV3IEVycm9yKCJTY2hlbWEgaXMgbWlzc2luZyBhIG1ldGhvZCBsaXRlcmFsIik7Y29uc3Qgbz1weShuKTtpZih0eXBlb2YgbyE9InN0cmluZyIpdGhyb3cgbmV3IEVycm9yKCJTY2hlbWEgbWV0aG9kIGxpdGVyYWwgbXVzdCBiZSBhIHN0cmluZyIpO3JldHVybiBvfWZ1bmN0aW9uIGdkKGUsdCl7Y29uc3Qgbj1xZihlLHQpO2lmKCFuLnN1Y2Nlc3MpdGhyb3cgbi5lcnJvcjtyZXR1cm4gbi5kYXRhfWNvbnN0IHckPTZlNDtjbGFzcyBfJHtjb25zdHJ1Y3Rvcih0KXt0aGlzLl9vcHRpb25zPXQsdGhpcy5fcmVxdWVzdE1lc3NhZ2VJZD0wLHRoaXMuX3JlcXVlc3RIYW5kbGVycz1uZXcgTWFwLHRoaXMuX3JlcXVlc3RIYW5kbGVyQWJvcnRDb250cm9sbGVycz1uZXcgTWFwLHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzPW5ldyBNYXAsdGhpcy5fcmVzcG9uc2VIYW5kbGVycz1uZXcgTWFwLHRoaXMuX3Byb2dyZXNzSGFuZGxlcnM9bmV3IE1hcCx0aGlzLl90aW1lb3V0SW5mbz1uZXcgTWFwLHRoaXMuX3BlbmRpbmdEZWJvdW5jZWROb3RpZmljYXRpb25zPW5ldyBTZXQsdGhpcy5fdGFza1Byb2dyZXNzVG9rZW5zPW5ldyBNYXAsdGhpcy5fcmVxdWVzdFJlc29sdmVycz1uZXcgTWFwLHRoaXMuc2V0Tm90aWZpY2F0aW9uSGFuZGxlcihWbCxuPT57dGhpcy5fb25jYW5jZWwobil9KSx0aGlzLnNldE5vdGlmaWNhdGlvbkhhbmRsZXIoV2wsbj0+e3RoaXMuX29ucHJvZ3Jlc3Mobil9KSx0aGlzLnNldFJlcXVlc3RIYW5kbGVyKHRhLG49Pih7fSkpLHRoaXMuX3Rhc2tTdG9yZT10Py50YXNrU3RvcmUsdGhpcy5fdGFza01lc3NhZ2VRdWV1ZT10Py50YXNrTWVzc2FnZVF1ZXVlLHRoaXMuX3Rhc2tTdG9yZSYmKHRoaXMuc2V0UmVxdWVzdEhhbmRsZXIoR2wsYXN5bmMobixvKT0+e2NvbnN0IHM9YXdhaXQgdGhpcy5fdGFza1N0b3JlLmdldFRhc2sobi5wYXJhbXMudGFza0lkLG8uc2Vzc2lvbklkKTtpZighcyl0aHJvdyBuZXcgSihRLkludmFsaWRQYXJhbXMsIkZhaWxlZCB0byByZXRyaWV2ZSB0YXNrOiBUYXNrIG5vdCBmb3VuZCIpO3JldHVybnsuLi5zfX0pLHRoaXMuc2V0UmVxdWVzdEhhbmRsZXIoWWwsYXN5bmMobixvKT0+e2NvbnN0IHM9YXN5bmMoKT0+e2NvbnN0IHI9bi5wYXJhbXMudGFza0lkO2lmKCFhd2FpdCB0aGlzLl90YXNrU3RvcmUuZ2V0VGFzayhyLG8uc2Vzc2lvbklkKSl0aHJvdyBuZXcgSihRLkludmFsaWRQYXJhbXMsYFRhc2sgbm90IGZvdW5kOiAke3J9YCk7aWYodGhpcy5fdGFza01lc3NhZ2VRdWV1ZSl7bGV0IGM7Zm9yKDtjPWF3YWl0IHRoaXMuX3Rhc2tNZXNzYWdlUXVldWUuZGVxdWV1ZShyLG8uc2Vzc2lvbklkKTspe2lmKGMudHlwZT09PSJyZXNwb25zZSJ8fGMudHlwZT09PSJlcnJvciIpe2NvbnN0IHU9Yy5tZXNzYWdlLGQ9dS5pZCxoPXRoaXMuX3JlcXVlc3RSZXNvbHZlcnMuZ2V0KGQpO2lmKGgpaWYodGhpcy5fcmVxdWVzdFJlc29sdmVycy5kZWxldGUoZCksYy50eXBlPT09InJlc3BvbnNlIiloKHUpO2Vsc2V7Y29uc3QgcD11LG09bmV3IEoocC5lcnJvci5jb2RlLHAuZXJyb3IubWVzc2FnZSxwLmVycm9yLmRhdGEpO2gobSl9ZWxzZXtjb25zdCBwPWMudHlwZT09PSJyZXNwb25zZSI/IlJlc3BvbnNlIjoiRXJyb3IiO3RoaXMuX29uZXJyb3IobmV3IEVycm9yKGAke3B9IGhhbmRsZXIgbWlzc2luZyBmb3IgcmVxdWVzdCAke2R9YCkpfWNvbnRpbnVlfWF3YWl0IHRoaXMuX3RyYW5zcG9ydD8uc2VuZChjLm1lc3NhZ2Use3JlbGF0ZWRSZXF1ZXN0SWQ6by5yZXF1ZXN0SWR9KX19Y29uc3QgaT1hd2FpdCB0aGlzLl90YXNrU3RvcmUuZ2V0VGFzayhyLG8uc2Vzc2lvbklkKTtpZighaSl0aHJvdyBuZXcgSihRLkludmFsaWRQYXJhbXMsYFRhc2sgbm90IGZvdW5kOiAke3J9YCk7aWYoISR0KGkuc3RhdHVzKSlyZXR1cm4gYXdhaXQgdGhpcy5fd2FpdEZvclRhc2tVcGRhdGUocixvLnNpZ25hbCxvLnNlc3Npb25JZCksYXdhaXQgcygpO2lmKCR0KGkuc3RhdHVzKSl7Y29uc3QgYz1hd2FpdCB0aGlzLl90YXNrU3RvcmUuZ2V0VGFza1Jlc3VsdChyLG8uc2Vzc2lvbklkKTtyZXR1cm4gdGhpcy5fY2xlYXJUYXNrUXVldWUocixvLnNlc3Npb25JZCksey4uLmMsX21ldGE6ey4uLmMuX21ldGEsW3d0XTp7dGFza0lkOnJ9fX19cmV0dXJuIGF3YWl0IHMoKX07cmV0dXJuIGF3YWl0IHMoKX0pLHRoaXMuc2V0UmVxdWVzdEhhbmRsZXIoUWwsYXN5bmMobixvKT0+e3RyeXtjb25zdHt0YXNrczpzLG5leHRDdXJzb3I6cn09YXdhaXQgdGhpcy5fdGFza1N0b3JlLmxpc3RUYXNrcyhuLnBhcmFtcz8uY3Vyc29yLG8uc2Vzc2lvbklkKTtyZXR1cm57dGFza3M6cyxuZXh0Q3Vyc29yOnIsX21ldGE6e319fWNhdGNoKHMpe3Rocm93IG5ldyBKKFEuSW52YWxpZFBhcmFtcyxgRmFpbGVkIHRvIGxpc3QgdGFza3M6ICR7cyBpbnN0YW5jZW9mIEVycm9yP3MubWVzc2FnZTpTdHJpbmcocyl9YCl9fSksdGhpcy5zZXRSZXF1ZXN0SGFuZGxlcihldSxhc3luYyhuLG8pPT57dHJ5e2NvbnN0IHM9YXdhaXQgdGhpcy5fdGFza1N0b3JlLmdldFRhc2sobi5wYXJhbXMudGFza0lkLG8uc2Vzc2lvbklkKTtpZighcyl0aHJvdyBuZXcgSihRLkludmFsaWRQYXJhbXMsYFRhc2sgbm90IGZvdW5kOiAke24ucGFyYW1zLnRhc2tJZH1gKTtpZigkdChzLnN0YXR1cykpdGhyb3cgbmV3IEooUS5JbnZhbGlkUGFyYW1zLGBDYW5ub3QgY2FuY2VsIHRhc2sgaW4gdGVybWluYWwgc3RhdHVzOiAke3Muc3RhdHVzfWApO2F3YWl0IHRoaXMuX3Rhc2tTdG9yZS51cGRhdGVUYXNrU3RhdHVzKG4ucGFyYW1zLnRhc2tJZCwiY2FuY2VsbGVkIiwiQ2xpZW50IGNhbmNlbGxlZCB0YXNrIGV4ZWN1dGlvbi4iLG8uc2Vzc2lvbklkKSx0aGlzLl9jbGVhclRhc2tRdWV1ZShuLnBhcmFtcy50YXNrSWQsby5zZXNzaW9uSWQpO2NvbnN0IHI9YXdhaXQgdGhpcy5fdGFza1N0b3JlLmdldFRhc2sobi5wYXJhbXMudGFza0lkLG8uc2Vzc2lvbklkKTtpZighcil0aHJvdyBuZXcgSihRLkludmFsaWRQYXJhbXMsYFRhc2sgbm90IGZvdW5kIGFmdGVyIGNhbmNlbGxhdGlvbjogJHtuLnBhcmFtcy50YXNrSWR9YCk7cmV0dXJue19tZXRhOnt9LC4uLnJ9fWNhdGNoKHMpe3Rocm93IHMgaW5zdGFuY2VvZiBKP3M6bmV3IEooUS5JbnZhbGlkUmVxdWVzdCxgRmFpbGVkIHRvIGNhbmNlbCB0YXNrOiAke3MgaW5zdGFuY2VvZiBFcnJvcj9zLm1lc3NhZ2U6U3RyaW5nKHMpfWApfX0pKX1hc3luYyBfb25jYW5jZWwodCl7aWYoIXQucGFyYW1zLnJlcXVlc3RJZClyZXR1cm47dGhpcy5fcmVxdWVzdEhhbmRsZXJBYm9ydENvbnRyb2xsZXJzLmdldCh0LnBhcmFtcy5yZXF1ZXN0SWQpPy5hYm9ydCh0LnBhcmFtcy5yZWFzb24pfV9zZXR1cFRpbWVvdXQodCxuLG8scyxyPSExKXt0aGlzLl90aW1lb3V0SW5mby5zZXQodCx7dGltZW91dElkOnNldFRpbWVvdXQocyxuKSxzdGFydFRpbWU6RGF0ZS5ub3coKSx0aW1lb3V0Om4sbWF4VG90YWxUaW1lb3V0Om8scmVzZXRUaW1lb3V0T25Qcm9ncmVzczpyLG9uVGltZW91dDpzfSl9X3Jlc2V0VGltZW91dCh0KXtjb25zdCBuPXRoaXMuX3RpbWVvdXRJbmZvLmdldCh0KTtpZighbilyZXR1cm4hMTtjb25zdCBvPURhdGUubm93KCktbi5zdGFydFRpbWU7aWYobi5tYXhUb3RhbFRpbWVvdXQmJm8+PW4ubWF4VG90YWxUaW1lb3V0KXRocm93IHRoaXMuX3RpbWVvdXRJbmZvLmRlbGV0ZSh0KSxKLmZyb21FcnJvcihRLlJlcXVlc3RUaW1lb3V0LCJNYXhpbXVtIHRvdGFsIHRpbWVvdXQgZXhjZWVkZWQiLHttYXhUb3RhbFRpbWVvdXQ6bi5tYXhUb3RhbFRpbWVvdXQsdG90YWxFbGFwc2VkOm99KTtyZXR1cm4gY2xlYXJUaW1lb3V0KG4udGltZW91dElkKSxuLnRpbWVvdXRJZD1zZXRUaW1lb3V0KG4ub25UaW1lb3V0LG4udGltZW91dCksITB9X2NsZWFudXBUaW1lb3V0KHQpe2NvbnN0IG49dGhpcy5fdGltZW91dEluZm8uZ2V0KHQpO24mJihjbGVhclRpbWVvdXQobi50aW1lb3V0SWQpLHRoaXMuX3RpbWVvdXRJbmZvLmRlbGV0ZSh0KSl9YXN5bmMgY29ubmVjdCh0KXtpZih0aGlzLl90cmFuc3BvcnQpdGhyb3cgbmV3IEVycm9yKCJBbHJlYWR5IGNvbm5lY3RlZCB0byBhIHRyYW5zcG9ydC4gQ2FsbCBjbG9zZSgpIGJlZm9yZSBjb25uZWN0aW5nIHRvIGEgbmV3IHRyYW5zcG9ydCwgb3IgdXNlIGEgc2VwYXJhdGUgUHJvdG9jb2wgaW5zdGFuY2UgcGVyIGNvbm5lY3Rpb24uIik7dGhpcy5fdHJhbnNwb3J0PXQ7Y29uc3Qgbj10aGlzLnRyYW5zcG9ydD8ub25jbG9zZTt0aGlzLl90cmFuc3BvcnQub25jbG9zZT0oKT0+e24/LigpLHRoaXMuX29uY2xvc2UoKX07Y29uc3Qgbz10aGlzLnRyYW5zcG9ydD8ub25lcnJvcjt0aGlzLl90cmFuc3BvcnQub25lcnJvcj1yPT57bz8uKHIpLHRoaXMuX29uZXJyb3Iocil9O2NvbnN0IHM9dGhpcy5fdHJhbnNwb3J0Py5vbm1lc3NhZ2U7dGhpcy5fdHJhbnNwb3J0Lm9ubWVzc2FnZT0ocixpKT0+e3M/LihyLGkpLGlzKHIpfHxMeShyKT90aGlzLl9vbnJlc3BvbnNlKHIpOm1kKHIpP3RoaXMuX29ucmVxdWVzdChyLGkpOkR5KHIpP3RoaXMuX29ubm90aWZpY2F0aW9uKHIpOnRoaXMuX29uZXJyb3IobmV3IEVycm9yKGBVbmtub3duIG1lc3NhZ2UgdHlwZTogJHtKU09OLnN0cmluZ2lmeShyKX1gKSl9LGF3YWl0IHRoaXMuX3RyYW5zcG9ydC5zdGFydCgpfV9vbmNsb3NlKCl7Y29uc3QgdD10aGlzLl9yZXNwb25zZUhhbmRsZXJzO3RoaXMuX3Jlc3BvbnNlSGFuZGxlcnM9bmV3IE1hcCx0aGlzLl9wcm9ncmVzc0hhbmRsZXJzLmNsZWFyKCksdGhpcy5fdGFza1Byb2dyZXNzVG9rZW5zLmNsZWFyKCksdGhpcy5fcGVuZGluZ0RlYm91bmNlZE5vdGlmaWNhdGlvbnMuY2xlYXIoKTtmb3IoY29uc3QgbyBvZiB0aGlzLl90aW1lb3V0SW5mby52YWx1ZXMoKSljbGVhclRpbWVvdXQoby50aW1lb3V0SWQpO3RoaXMuX3RpbWVvdXRJbmZvLmNsZWFyKCk7Zm9yKGNvbnN0IG8gb2YgdGhpcy5fcmVxdWVzdEhhbmRsZXJBYm9ydENvbnRyb2xsZXJzLnZhbHVlcygpKW8uYWJvcnQoKTt0aGlzLl9yZXF1ZXN0SGFuZGxlckFib3J0Q29udHJvbGxlcnMuY2xlYXIoKTtjb25zdCBuPUouZnJvbUVycm9yKFEuQ29ubmVjdGlvbkNsb3NlZCwiQ29ubmVjdGlvbiBjbG9zZWQiKTt0aGlzLl90cmFuc3BvcnQ9dm9pZCAwLHRoaXMub25jbG9zZT8uKCk7Zm9yKGNvbnN0IG8gb2YgdC52YWx1ZXMoKSlvKG4pfV9vbmVycm9yKHQpe3RoaXMub25lcnJvcj8uKHQpfV9vbm5vdGlmaWNhdGlvbih0KXtjb25zdCBuPXRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzLmdldCh0Lm1ldGhvZCk/P3RoaXMuZmFsbGJhY2tOb3RpZmljYXRpb25IYW5kbGVyO24hPT12b2lkIDAmJlByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9Pm4odCkpLmNhdGNoKG89PnRoaXMuX29uZXJyb3IobmV3IEVycm9yKGBVbmNhdWdodCBlcnJvciBpbiBub3RpZmljYXRpb24gaGFuZGxlcjogJHtvfWApKSl9X29ucmVxdWVzdCh0LG4pe2NvbnN0IG89dGhpcy5fcmVxdWVzdEhhbmRsZXJzLmdldCh0Lm1ldGhvZCk/P3RoaXMuZmFsbGJhY2tSZXF1ZXN0SGFuZGxlcixzPXRoaXMuX3RyYW5zcG9ydCxyPXQucGFyYW1zPy5fbWV0YT8uW3d0XT8udGFza0lkLGk9cz8uc2Vzc2lvbklkLGM9dGhpcy5fdGFza1N0b3JlO2xldCB1PSEwLGQ7aWYociYmYyYmdGhpcy5fdGFza01lc3NhZ2VRdWV1ZSYmaSE9PXZvaWQgMCYmKHU9ITEsZD0oYXN5bmMoKT0+e2lmKCFhd2FpdCBjLmdldFRhc2socixpKSl0aHJvdyBuZXcgSihRLkludmFsaWRQYXJhbXMsYFRhc2sgbm90IGZvdW5kOiAke3J9YCk7dT0hMH0pKCkpLG89PT12b2lkIDApe2NvbnN0ICQ9e2pzb25ycGM6IjIuMCIsaWQ6dC5pZCxlcnJvcjp7Y29kZTpRLk1ldGhvZE5vdEZvdW5kLG1lc3NhZ2U6Ik1ldGhvZCBub3QgZm91bmQifX07aWYociYmZCl7Y29uc3QgXz17dHlwZToiZXJyb3IiLG1lc3NhZ2U6JCx0aW1lc3RhbXA6RGF0ZS5ub3coKX07ZC50aGVuKCgpPT50aGlzLl9lbnF1ZXVlVGFza01lc3NhZ2UocixfLGkpLCgpPT5zPy5zZW5kKCQpKS5jYXRjaChDPT50aGlzLl9vbmVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIHNlbmQgYW4gZXJyb3IgcmVzcG9uc2U6ICR7Q31gKSkpfWVsc2UgciYmdGhpcy5fdGFza01lc3NhZ2VRdWV1ZT90aGlzLl9lbnF1ZXVlVGFza01lc3NhZ2Uocix7dHlwZToiZXJyb3IiLG1lc3NhZ2U6JCx0aW1lc3RhbXA6RGF0ZS5ub3coKX0scz8uc2Vzc2lvbklkKS5jYXRjaChfPT50aGlzLl9vbmVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIGVucXVldWUgZXJyb3IgcmVzcG9uc2U6ICR7X31gKSkpOnM/LnNlbmQoJCkuY2F0Y2goXz0+dGhpcy5fb25lcnJvcihuZXcgRXJyb3IoYEZhaWxlZCB0byBzZW5kIGFuIGVycm9yIHJlc3BvbnNlOiAke199YCkpKTtyZXR1cm59Y29uc3QgaD1uZXcgQWJvcnRDb250cm9sbGVyO3RoaXMuX3JlcXVlc3RIYW5kbGVyQWJvcnRDb250cm9sbGVycy5zZXQodC5pZCxoKTtjb25zdCBwPXF5KHQucGFyYW1zKT90LnBhcmFtcy50YXNrOnZvaWQgMCxtPXRoaXMuX3Rhc2tTdG9yZT90aGlzLnJlcXVlc3RUYXNrU3RvcmUodCxzPy5zZXNzaW9uSWQpOnZvaWQgMCx5PXtzaWduYWw6aC5zaWduYWwsc2Vzc2lvbklkOnM/LnNlc3Npb25JZCxfbWV0YTp0LnBhcmFtcz8uX21ldGEsc2VuZE5vdGlmaWNhdGlvbjphc3luYyAkPT57aWYoaC5zaWduYWwuYWJvcnRlZClyZXR1cm47Y29uc3QgXz17cmVsYXRlZFJlcXVlc3RJZDp0LmlkfTtyJiYoXy5yZWxhdGVkVGFzaz17dGFza0lkOnJ9KSxhd2FpdCB0aGlzLm5vdGlmaWNhdGlvbigkLF8pfSxzZW5kUmVxdWVzdDphc3luYygkLF8sQyk9PntpZihoLnNpZ25hbC5hYm9ydGVkKXRocm93IG5ldyBKKFEuQ29ubmVjdGlvbkNsb3NlZCwiUmVxdWVzdCB3YXMgY2FuY2VsbGVkIik7Y29uc3QgVD17Li4uQyxyZWxhdGVkUmVxdWVzdElkOnQuaWR9O3ImJiFULnJlbGF0ZWRUYXNrJiYoVC5yZWxhdGVkVGFzaz17dGFza0lkOnJ9KTtjb25zdCBBPVQucmVsYXRlZFRhc2s/LnRhc2tJZD8/cjtyZXR1cm4gQSYmbSYmYXdhaXQgbS51cGRhdGVUYXNrU3RhdHVzKEEsImlucHV0X3JlcXVpcmVkIiksYXdhaXQgdGhpcy5yZXF1ZXN0KCQsXyxUKX0sYXV0aEluZm86bj8uYXV0aEluZm8scmVxdWVzdElkOnQuaWQscmVxdWVzdEluZm86bj8ucmVxdWVzdEluZm8sdGFza0lkOnIsdGFza1N0b3JlOm0sdGFza1JlcXVlc3RlZFR0bDpwPy50dGwsY2xvc2VTU0VTdHJlYW06bj8uY2xvc2VTU0VTdHJlYW0sY2xvc2VTdGFuZGFsb25lU1NFU3RyZWFtOm4/LmNsb3NlU3RhbmRhbG9uZVNTRVN0cmVhbX07KGQ/P1Byb21pc2UucmVzb2x2ZSgpKS50aGVuKCgpPT57aWYoZCYmaC5zaWduYWwuYWJvcnRlZCl0aHJvdyBuZXcgSihRLkNvbm5lY3Rpb25DbG9zZWQsIlJlcXVlc3Qgd2FzIGNhbmNlbGxlZCIpO3AmJnRoaXMuYXNzZXJ0VGFza0hhbmRsZXJDYXBhYmlsaXR5KHQubWV0aG9kKX0pLnRoZW4oKCk9Pm8odCx5KSkudGhlbihhc3luYyAkPT57aWYoaC5zaWduYWwuYWJvcnRlZClyZXR1cm47Y29uc3QgXz17cmVzdWx0OiQsanNvbnJwYzoiMi4wIixpZDp0LmlkfTtyJiZ0aGlzLl90YXNrTWVzc2FnZVF1ZXVlP2F3YWl0IHRoaXMuX2VucXVldWVUYXNrTWVzc2FnZShyLHt0eXBlOiJyZXNwb25zZSIsbWVzc2FnZTpfLHRpbWVzdGFtcDpEYXRlLm5vdygpfSxzPy5zZXNzaW9uSWQpOmF3YWl0IHM/LnNlbmQoXyl9LGFzeW5jICQ9PntpZihoLnNpZ25hbC5hYm9ydGVkKXJldHVybjtjb25zdCBfPXtqc29ucnBjOiIyLjAiLGlkOnQuaWQsZXJyb3I6e2NvZGU6TnVtYmVyLmlzU2FmZUludGVnZXIoJC5jb2RlKT8kLmNvZGU6US5JbnRlcm5hbEVycm9yLG1lc3NhZ2U6JC5tZXNzYWdlPz8iSW50ZXJuYWwgZXJyb3IiLC4uLiQuZGF0YSE9PXZvaWQgMCYme2RhdGE6JC5kYXRhfX19O3ImJnRoaXMuX3Rhc2tNZXNzYWdlUXVldWUmJnU/YXdhaXQgdGhpcy5fZW5xdWV1ZVRhc2tNZXNzYWdlKHIse3R5cGU6ImVycm9yIixtZXNzYWdlOl8sdGltZXN0YW1wOkRhdGUubm93KCl9LHM/LnNlc3Npb25JZCk6YXdhaXQgcz8uc2VuZChfKX0pLmNhdGNoKCQ9PnRoaXMuX29uZXJyb3IobmV3IEVycm9yKGBGYWlsZWQgdG8gc2VuZCByZXNwb25zZTogJHskfWApKSkuZmluYWxseSgoKT0+e3RoaXMuX3JlcXVlc3RIYW5kbGVyQWJvcnRDb250cm9sbGVycy5nZXQodC5pZCk9PT1oJiZ0aGlzLl9yZXF1ZXN0SGFuZGxlckFib3J0Q29udHJvbGxlcnMuZGVsZXRlKHQuaWQpfSl9X29ucHJvZ3Jlc3ModCl7Y29uc3R7cHJvZ3Jlc3NUb2tlbjpuLC4uLm99PXQucGFyYW1zLHM9TnVtYmVyKG4pLHI9dGhpcy5fcHJvZ3Jlc3NIYW5kbGVycy5nZXQocyk7aWYoIXIpe3RoaXMuX29uZXJyb3IobmV3IEVycm9yKGBSZWNlaXZlZCBhIHByb2dyZXNzIG5vdGlmaWNhdGlvbiBmb3IgYW4gdW5rbm93biB0b2tlbjogJHtKU09OLnN0cmluZ2lmeSh0KX1gKSk7cmV0dXJufWNvbnN0IGk9dGhpcy5fcmVzcG9uc2VIYW5kbGVycy5nZXQocyksYz10aGlzLl90aW1lb3V0SW5mby5nZXQocyk7aWYoYyYmaSYmYy5yZXNldFRpbWVvdXRPblByb2dyZXNzKXRyeXt0aGlzLl9yZXNldFRpbWVvdXQocyl9Y2F0Y2godSl7dGhpcy5fcmVzcG9uc2VIYW5kbGVycy5kZWxldGUocyksdGhpcy5fcHJvZ3Jlc3NIYW5kbGVycy5kZWxldGUocyksdGhpcy5fY2xlYW51cFRpbWVvdXQocyksaSh1KTtyZXR1cm59cihvKX1fb25yZXNwb25zZSh0KXtjb25zdCBuPU51bWJlcih0LmlkKSxvPXRoaXMuX3JlcXVlc3RSZXNvbHZlcnMuZ2V0KG4pO2lmKG8pe2lmKHRoaXMuX3JlcXVlc3RSZXNvbHZlcnMuZGVsZXRlKG4pLGlzKHQpKW8odCk7ZWxzZXtjb25zdCBpPW5ldyBKKHQuZXJyb3IuY29kZSx0LmVycm9yLm1lc3NhZ2UsdC5lcnJvci5kYXRhKTtvKGkpfXJldHVybn1jb25zdCBzPXRoaXMuX3Jlc3BvbnNlSGFuZGxlcnMuZ2V0KG4pO2lmKHM9PT12b2lkIDApe3RoaXMuX29uZXJyb3IobmV3IEVycm9yKGBSZWNlaXZlZCBhIHJlc3BvbnNlIGZvciBhbiB1bmtub3duIG1lc3NhZ2UgSUQ6ICR7SlNPTi5zdHJpbmdpZnkodCl9YCkpO3JldHVybn10aGlzLl9yZXNwb25zZUhhbmRsZXJzLmRlbGV0ZShuKSx0aGlzLl9jbGVhbnVwVGltZW91dChuKTtsZXQgcj0hMTtpZihpcyh0KSYmdC5yZXN1bHQmJnR5cGVvZiB0LnJlc3VsdD09Im9iamVjdCIpe2NvbnN0IGk9dC5yZXN1bHQ7aWYoaS50YXNrJiZ0eXBlb2YgaS50YXNrPT0ib2JqZWN0Iil7Y29uc3QgYz1pLnRhc2s7dHlwZW9mIGMudGFza0lkPT0ic3RyaW5nIiYmKHI9ITAsdGhpcy5fdGFza1Byb2dyZXNzVG9rZW5zLnNldChjLnRhc2tJZCxuKSl9fWlmKHJ8fHRoaXMuX3Byb2dyZXNzSGFuZGxlcnMuZGVsZXRlKG4pLGlzKHQpKXModCk7ZWxzZXtjb25zdCBpPUouZnJvbUVycm9yKHQuZXJyb3IuY29kZSx0LmVycm9yLm1lc3NhZ2UsdC5lcnJvci5kYXRhKTtzKGkpfX1nZXQgdHJhbnNwb3J0KCl7cmV0dXJuIHRoaXMuX3RyYW5zcG9ydH1hc3luYyBjbG9zZSgpe2F3YWl0IHRoaXMuX3RyYW5zcG9ydD8uY2xvc2UoKX1hc3luYypyZXF1ZXN0U3RyZWFtKHQsbixvKXtjb25zdHt0YXNrOnN9PW8/P3t9O2lmKCFzKXt0cnl7eWllbGR7dHlwZToicmVzdWx0IixyZXN1bHQ6YXdhaXQgdGhpcy5yZXF1ZXN0KHQsbixvKX19Y2F0Y2goaSl7eWllbGR7dHlwZToiZXJyb3IiLGVycm9yOmkgaW5zdGFuY2VvZiBKP2k6bmV3IEooUS5JbnRlcm5hbEVycm9yLFN0cmluZyhpKSl9fXJldHVybn1sZXQgcjt0cnl7Y29uc3QgaT1hd2FpdCB0aGlzLnJlcXVlc3QodCxLbCxvKTtpZihpLnRhc2spcj1pLnRhc2sudGFza0lkLHlpZWxke3R5cGU6InRhc2tDcmVhdGVkIix0YXNrOmkudGFza307ZWxzZSB0aHJvdyBuZXcgSihRLkludGVybmFsRXJyb3IsIlRhc2sgY3JlYXRpb24gZGlkIG5vdCByZXR1cm4gYSB0YXNrIik7Zm9yKDs7KXtjb25zdCBjPWF3YWl0IHRoaXMuZ2V0VGFzayh7dGFza0lkOnJ9LG8pO2lmKHlpZWxke3R5cGU6InRhc2tTdGF0dXMiLHRhc2s6Y30sJHQoYy5zdGF0dXMpKXtjLnN0YXR1cz09PSJjb21wbGV0ZWQiP3lpZWxke3R5cGU6InJlc3VsdCIscmVzdWx0OmF3YWl0IHRoaXMuZ2V0VGFza1Jlc3VsdCh7dGFza0lkOnJ9LG4sbyl9OmMuc3RhdHVzPT09ImZhaWxlZCI/eWllbGR7dHlwZToiZXJyb3IiLGVycm9yOm5ldyBKKFEuSW50ZXJuYWxFcnJvcixgVGFzayAke3J9IGZhaWxlZGApfTpjLnN0YXR1cz09PSJjYW5jZWxsZWQiJiYoeWllbGR7dHlwZToiZXJyb3IiLGVycm9yOm5ldyBKKFEuSW50ZXJuYWxFcnJvcixgVGFzayAke3J9IHdhcyBjYW5jZWxsZWRgKX0pO3JldHVybn1pZihjLnN0YXR1cz09PSJpbnB1dF9yZXF1aXJlZCIpe3lpZWxke3R5cGU6InJlc3VsdCIscmVzdWx0OmF3YWl0IHRoaXMuZ2V0VGFza1Jlc3VsdCh7dGFza0lkOnJ9LG4sbyl9O3JldHVybn1jb25zdCB1PWMucG9sbEludGVydmFsPz90aGlzLl9vcHRpb25zPy5kZWZhdWx0VGFza1BvbGxJbnRlcnZhbD8/MWUzO2F3YWl0IG5ldyBQcm9taXNlKGQ9PnNldFRpbWVvdXQoZCx1KSksbz8uc2lnbmFsPy50aHJvd0lmQWJvcnRlZCgpfX1jYXRjaChpKXt5aWVsZHt0eXBlOiJlcnJvciIsZXJyb3I6aSBpbnN0YW5jZW9mIEo/aTpuZXcgSihRLkludGVybmFsRXJyb3IsU3RyaW5nKGkpKX19fXJlcXVlc3QodCxuLG8pe2NvbnN0e3JlbGF0ZWRSZXF1ZXN0SWQ6cyxyZXN1bXB0aW9uVG9rZW46cixvbnJlc3VtcHRpb250b2tlbjppLHRhc2s6YyxyZWxhdGVkVGFzazp1fT1vPz97fTtyZXR1cm4gbmV3IFByb21pc2UoKGQsaCk9Pntjb25zdCBwPUE9PntoKEEpfTtpZighdGhpcy5fdHJhbnNwb3J0KXtwKG5ldyBFcnJvcigiTm90IGNvbm5lY3RlZCIpKTtyZXR1cm59aWYodGhpcy5fb3B0aW9ucz8uZW5mb3JjZVN0cmljdENhcGFiaWxpdGllcz09PSEwKXRyeXt0aGlzLmFzc2VydENhcGFiaWxpdHlGb3JNZXRob2QodC5tZXRob2QpLGMmJnRoaXMuYXNzZXJ0VGFza0NhcGFiaWxpdHkodC5tZXRob2QpfWNhdGNoKEEpe3AoQSk7cmV0dXJufW8/LnNpZ25hbD8udGhyb3dJZkFib3J0ZWQoKTtjb25zdCBtPXRoaXMuX3JlcXVlc3RNZXNzYWdlSWQrKyx5PXsuLi50LGpzb25ycGM6IjIuMCIsaWQ6bX07bz8ub25wcm9ncmVzcyYmKHRoaXMuX3Byb2dyZXNzSGFuZGxlcnMuc2V0KG0sby5vbnByb2dyZXNzKSx5LnBhcmFtcz17Li4udC5wYXJhbXMsX21ldGE6ey4uLnQucGFyYW1zPy5fbWV0YXx8e30scHJvZ3Jlc3NUb2tlbjptfX0pLGMmJih5LnBhcmFtcz17Li4ueS5wYXJhbXMsdGFzazpjfSksdSYmKHkucGFyYW1zPXsuLi55LnBhcmFtcyxfbWV0YTp7Li4ueS5wYXJhbXM/Ll9tZXRhfHx7fSxbd3RdOnV9fSk7Y29uc3QgJD1BPT57dGhpcy5fcmVzcG9uc2VIYW5kbGVycy5kZWxldGUobSksdGhpcy5fcHJvZ3Jlc3NIYW5kbGVycy5kZWxldGUobSksdGhpcy5fY2xlYW51cFRpbWVvdXQobSksdGhpcy5fdHJhbnNwb3J0Py5zZW5kKHtqc29ucnBjOiIyLjAiLG1ldGhvZDoibm90aWZpY2F0aW9ucy9jYW5jZWxsZWQiLHBhcmFtczp7cmVxdWVzdElkOm0scmVhc29uOlN0cmluZyhBKX19LHtyZWxhdGVkUmVxdWVzdElkOnMscmVzdW1wdGlvblRva2VuOnIsb25yZXN1bXB0aW9udG9rZW46aX0pLmNhdGNoKHJlPT50aGlzLl9vbmVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIHNlbmQgY2FuY2VsbGF0aW9uOiAke3JlfWApKSk7Y29uc3QgUj1BIGluc3RhbmNlb2YgSj9BOm5ldyBKKFEuUmVxdWVzdFRpbWVvdXQsU3RyaW5nKEEpKTtoKFIpfTt0aGlzLl9yZXNwb25zZUhhbmRsZXJzLnNldChtLEE9PntpZighbz8uc2lnbmFsPy5hYm9ydGVkKXtpZihBIGluc3RhbmNlb2YgRXJyb3IpcmV0dXJuIGgoQSk7dHJ5e2NvbnN0IFI9cWYobixBLnJlc3VsdCk7Ui5zdWNjZXNzP2QoUi5kYXRhKTpoKFIuZXJyb3IpfWNhdGNoKFIpe2goUil9fX0pLG8/LnNpZ25hbD8uYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgpPT57JChvPy5zaWduYWw/LnJlYXNvbil9KTtjb25zdCBfPW8/LnRpbWVvdXQ/P3ckLEM9KCk9PiQoSi5mcm9tRXJyb3IoUS5SZXF1ZXN0VGltZW91dCwiUmVxdWVzdCB0aW1lZCBvdXQiLHt0aW1lb3V0Ol99KSk7dGhpcy5fc2V0dXBUaW1lb3V0KG0sXyxvPy5tYXhUb3RhbFRpbWVvdXQsQyxvPy5yZXNldFRpbWVvdXRPblByb2dyZXNzPz8hMSk7Y29uc3QgVD11Py50YXNrSWQ7aWYoVCl7Y29uc3QgQT1SPT57Y29uc3QgcmU9dGhpcy5fcmVzcG9uc2VIYW5kbGVycy5nZXQobSk7cmU/cmUoUik6dGhpcy5fb25lcnJvcihuZXcgRXJyb3IoYFJlc3BvbnNlIGhhbmRsZXIgbWlzc2luZyBmb3Igc2lkZS1jaGFubmVsZWQgcmVxdWVzdCAke219YCkpfTt0aGlzLl9yZXF1ZXN0UmVzb2x2ZXJzLnNldChtLEEpLHRoaXMuX2VucXVldWVUYXNrTWVzc2FnZShULHt0eXBlOiJyZXF1ZXN0IixtZXNzYWdlOnksdGltZXN0YW1wOkRhdGUubm93KCl9KS5jYXRjaChSPT57dGhpcy5fY2xlYW51cFRpbWVvdXQobSksaChSKX0pfWVsc2UgdGhpcy5fdHJhbnNwb3J0LnNlbmQoeSx7cmVsYXRlZFJlcXVlc3RJZDpzLHJlc3VtcHRpb25Ub2tlbjpyLG9ucmVzdW1wdGlvbnRva2VuOml9KS5jYXRjaChBPT57dGhpcy5fY2xlYW51cFRpbWVvdXQobSksaChBKX0pfSl9YXN5bmMgZ2V0VGFzayh0LG4pe3JldHVybiB0aGlzLnJlcXVlc3Qoe21ldGhvZDoidGFza3MvZ2V0IixwYXJhbXM6dH0sSmwsbil9YXN5bmMgZ2V0VGFza1Jlc3VsdCh0LG4sbyl7cmV0dXJuIHRoaXMucmVxdWVzdCh7bWV0aG9kOiJ0YXNrcy9yZXN1bHQiLHBhcmFtczp0fSxuLG8pfWFzeW5jIGxpc3RUYXNrcyh0LG4pe3JldHVybiB0aGlzLnJlcXVlc3Qoe21ldGhvZDoidGFza3MvbGlzdCIscGFyYW1zOnR9LFhsLG4pfWFzeW5jIGNhbmNlbFRhc2sodCxuKXtyZXR1cm4gdGhpcy5yZXF1ZXN0KHttZXRob2Q6InRhc2tzL2NhbmNlbCIscGFyYW1zOnR9LGEwLG4pfWFzeW5jIG5vdGlmaWNhdGlvbih0LG4pe2lmKCF0aGlzLl90cmFuc3BvcnQpdGhyb3cgbmV3IEVycm9yKCJOb3QgY29ubmVjdGVkIik7dGhpcy5hc3NlcnROb3RpZmljYXRpb25DYXBhYmlsaXR5KHQubWV0aG9kKTtjb25zdCBvPW4/LnJlbGF0ZWRUYXNrPy50YXNrSWQ7aWYobyl7Y29uc3QgYz17Li4udCxqc29ucnBjOiIyLjAiLHBhcmFtczp7Li4udC5wYXJhbXMsX21ldGE6ey4uLnQucGFyYW1zPy5fbWV0YXx8e30sW3d0XTpuLnJlbGF0ZWRUYXNrfX19O2F3YWl0IHRoaXMuX2VucXVldWVUYXNrTWVzc2FnZShvLHt0eXBlOiJub3RpZmljYXRpb24iLG1lc3NhZ2U6Yyx0aW1lc3RhbXA6RGF0ZS5ub3coKX0pO3JldHVybn1pZigodGhpcy5fb3B0aW9ucz8uZGVib3VuY2VkTm90aWZpY2F0aW9uTWV0aG9kcz8/W10pLmluY2x1ZGVzKHQubWV0aG9kKSYmIXQucGFyYW1zJiYhbj8ucmVsYXRlZFJlcXVlc3RJZCYmIW4/LnJlbGF0ZWRUYXNrKXtpZih0aGlzLl9wZW5kaW5nRGVib3VuY2VkTm90aWZpY2F0aW9ucy5oYXModC5tZXRob2QpKXJldHVybjt0aGlzLl9wZW5kaW5nRGVib3VuY2VkTm90aWZpY2F0aW9ucy5hZGQodC5tZXRob2QpLFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCk9PntpZih0aGlzLl9wZW5kaW5nRGVib3VuY2VkTm90aWZpY2F0aW9ucy5kZWxldGUodC5tZXRob2QpLCF0aGlzLl90cmFuc3BvcnQpcmV0dXJuO2xldCBjPXsuLi50LGpzb25ycGM6IjIuMCJ9O24/LnJlbGF0ZWRUYXNrJiYoYz17Li4uYyxwYXJhbXM6ey4uLmMucGFyYW1zLF9tZXRhOnsuLi5jLnBhcmFtcz8uX21ldGF8fHt9LFt3dF06bi5yZWxhdGVkVGFza319fSksdGhpcy5fdHJhbnNwb3J0Py5zZW5kKGMsbikuY2F0Y2godT0+dGhpcy5fb25lcnJvcih1KSl9KTtyZXR1cm59bGV0IGk9ey4uLnQsanNvbnJwYzoiMi4wIn07bj8ucmVsYXRlZFRhc2smJihpPXsuLi5pLHBhcmFtczp7Li4uaS5wYXJhbXMsX21ldGE6ey4uLmkucGFyYW1zPy5fbWV0YXx8e30sW3d0XTpuLnJlbGF0ZWRUYXNrfX19KSxhd2FpdCB0aGlzLl90cmFuc3BvcnQuc2VuZChpLG4pfXNldFJlcXVlc3RIYW5kbGVyKHQsbil7Y29uc3Qgbz1mZCh0KTt0aGlzLmFzc2VydFJlcXVlc3RIYW5kbGVyQ2FwYWJpbGl0eShvKSx0aGlzLl9yZXF1ZXN0SGFuZGxlcnMuc2V0KG8sKHMscik9Pntjb25zdCBpPWdkKHQscyk7cmV0dXJuIFByb21pc2UucmVzb2x2ZShuKGkscikpfSl9cmVtb3ZlUmVxdWVzdEhhbmRsZXIodCl7dGhpcy5fcmVxdWVzdEhhbmRsZXJzLmRlbGV0ZSh0KX1hc3NlcnRDYW5TZXRSZXF1ZXN0SGFuZGxlcih0KXtpZih0aGlzLl9yZXF1ZXN0SGFuZGxlcnMuaGFzKHQpKXRocm93IG5ldyBFcnJvcihgQSByZXF1ZXN0IGhhbmRsZXIgZm9yICR7dH0gYWxyZWFkeSBleGlzdHMsIHdoaWNoIHdvdWxkIGJlIG92ZXJyaWRkZW5gKX1zZXROb3RpZmljYXRpb25IYW5kbGVyKHQsbil7Y29uc3Qgbz1mZCh0KTt0aGlzLl9ub3RpZmljYXRpb25IYW5kbGVycy5zZXQobyxzPT57Y29uc3Qgcj1nZCh0LHMpO3JldHVybiBQcm9taXNlLnJlc29sdmUobihyKSl9KX1yZW1vdmVOb3RpZmljYXRpb25IYW5kbGVyKHQpe3RoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzLmRlbGV0ZSh0KX1fY2xlYW51cFRhc2tQcm9ncmVzc0hhbmRsZXIodCl7Y29uc3Qgbj10aGlzLl90YXNrUHJvZ3Jlc3NUb2tlbnMuZ2V0KHQpO24hPT12b2lkIDAmJih0aGlzLl9wcm9ncmVzc0hhbmRsZXJzLmRlbGV0ZShuKSx0aGlzLl90YXNrUHJvZ3Jlc3NUb2tlbnMuZGVsZXRlKHQpKX1hc3luYyBfZW5xdWV1ZVRhc2tNZXNzYWdlKHQsbixvKXtpZighdGhpcy5fdGFza1N0b3JlfHwhdGhpcy5fdGFza01lc3NhZ2VRdWV1ZSl0aHJvdyBuZXcgRXJyb3IoIkNhbm5vdCBlbnF1ZXVlIHRhc2sgbWVzc2FnZTogdGFza1N0b3JlIGFuZCB0YXNrTWVzc2FnZVF1ZXVlIGFyZSBub3QgY29uZmlndXJlZCIpO2NvbnN0IHM9dGhpcy5fb3B0aW9ucz8ubWF4VGFza1F1ZXVlU2l6ZTthd2FpdCB0aGlzLl90YXNrTWVzc2FnZVF1ZXVlLmVucXVldWUodCxuLG8/P3RoaXMuX3RyYW5zcG9ydD8uc2Vzc2lvbklkLHMpfWFzeW5jIF9jbGVhclRhc2tRdWV1ZSh0LG4pe2lmKHRoaXMuX3Rhc2tNZXNzYWdlUXVldWUpe2NvbnN0IG89YXdhaXQgdGhpcy5fdGFza01lc3NhZ2VRdWV1ZS5kZXF1ZXVlQWxsKHQsbik7Zm9yKGNvbnN0IHMgb2YgbylpZihzLnR5cGU9PT0icmVxdWVzdCImJm1kKHMubWVzc2FnZSkpe2NvbnN0IHI9cy5tZXNzYWdlLmlkLGk9dGhpcy5fcmVxdWVzdFJlc29sdmVycy5nZXQocik7aT8oaShuZXcgSihRLkludGVybmFsRXJyb3IsIlRhc2sgY2FuY2VsbGVkIG9yIGNvbXBsZXRlZCIpKSx0aGlzLl9yZXF1ZXN0UmVzb2x2ZXJzLmRlbGV0ZShyKSk6dGhpcy5fb25lcnJvcihuZXcgRXJyb3IoYFJlc29sdmVyIG1pc3NpbmcgZm9yIHJlcXVlc3QgJHtyfSBkdXJpbmcgdGFzayAke3R9IGNsZWFudXBgKSl9fX1hc3luYyBfd2FpdEZvclRhc2tVcGRhdGUodCxuLG8pe2xldCBzPXRoaXMuX29wdGlvbnM/LmRlZmF1bHRUYXNrUG9sbEludGVydmFsPz8xZTM7dHJ5e2NvbnN0IHI9YXdhaXQgdGhpcy5fdGFza1N0b3JlPy5nZXRUYXNrKHQsbyk7cj8ucG9sbEludGVydmFsJiYocz1yLnBvbGxJbnRlcnZhbCl9Y2F0Y2h7fXJldHVybiBuZXcgUHJvbWlzZSgocixpKT0+e2lmKG4uYWJvcnRlZCl7aShuZXcgSihRLkludmFsaWRSZXF1ZXN0LCJSZXF1ZXN0IGNhbmNlbGxlZCIpKTtyZXR1cm59Y29uc3QgYz1zZXRUaW1lb3V0KHIscyk7bi5hZGRFdmVudExpc3RlbmVyKCJhYm9ydCIsKCk9PntjbGVhclRpbWVvdXQoYyksaShuZXcgSihRLkludmFsaWRSZXF1ZXN0LCJSZXF1ZXN0IGNhbmNlbGxlZCIpKX0se29uY2U6ITB9KX0pfXJlcXVlc3RUYXNrU3RvcmUodCxuKXtjb25zdCBvPXRoaXMuX3Rhc2tTdG9yZTtpZighbyl0aHJvdyBuZXcgRXJyb3IoIk5vIHRhc2sgc3RvcmUgY29uZmlndXJlZCIpO3JldHVybntjcmVhdGVUYXNrOmFzeW5jIHM9PntpZighdCl0aHJvdyBuZXcgRXJyb3IoIk5vIHJlcXVlc3QgcHJvdmlkZWQiKTtyZXR1cm4gYXdhaXQgby5jcmVhdGVUYXNrKHMsdC5pZCx7bWV0aG9kOnQubWV0aG9kLHBhcmFtczp0LnBhcmFtc30sbil9LGdldFRhc2s6YXN5bmMgcz0+e2NvbnN0IHI9YXdhaXQgby5nZXRUYXNrKHMsbik7aWYoIXIpdGhyb3cgbmV3IEooUS5JbnZhbGlkUGFyYW1zLCJGYWlsZWQgdG8gcmV0cmlldmUgdGFzazogVGFzayBub3QgZm91bmQiKTtyZXR1cm4gcn0sc3RvcmVUYXNrUmVzdWx0OmFzeW5jKHMscixpKT0+e2F3YWl0IG8uc3RvcmVUYXNrUmVzdWx0KHMscixpLG4pO2NvbnN0IGM9YXdhaXQgby5nZXRUYXNrKHMsbik7aWYoYyl7Y29uc3QgdT1qcy5wYXJzZSh7bWV0aG9kOiJub3RpZmljYXRpb25zL3Rhc2tzL3N0YXR1cyIscGFyYW1zOmN9KTthd2FpdCB0aGlzLm5vdGlmaWNhdGlvbih1KSwkdChjLnN0YXR1cykmJnRoaXMuX2NsZWFudXBUYXNrUHJvZ3Jlc3NIYW5kbGVyKHMpfX0sZ2V0VGFza1Jlc3VsdDpzPT5vLmdldFRhc2tSZXN1bHQocyxuKSx1cGRhdGVUYXNrU3RhdHVzOmFzeW5jKHMscixpKT0+e2NvbnN0IGM9YXdhaXQgby5nZXRUYXNrKHMsbik7aWYoIWMpdGhyb3cgbmV3IEooUS5JbnZhbGlkUGFyYW1zLGBUYXNrICIke3N9IiBub3QgZm91bmQgLSBpdCBtYXkgaGF2ZSBiZWVuIGNsZWFuZWQgdXBgKTtpZigkdChjLnN0YXR1cykpdGhyb3cgbmV3IEooUS5JbnZhbGlkUGFyYW1zLGBDYW5ub3QgdXBkYXRlIHRhc2sgIiR7c30iIGZyb20gdGVybWluYWwgc3RhdHVzICIke2Muc3RhdHVzfSIgdG8gIiR7cn0iLiBUZXJtaW5hbCBzdGF0ZXMgKGNvbXBsZXRlZCwgZmFpbGVkLCBjYW5jZWxsZWQpIGNhbm5vdCB0cmFuc2l0aW9uIHRvIG90aGVyIHN0YXRlcy5gKTthd2FpdCBvLnVwZGF0ZVRhc2tTdGF0dXMocyxyLGksbik7Y29uc3QgdT1hd2FpdCBvLmdldFRhc2socyxuKTtpZih1KXtjb25zdCBkPWpzLnBhcnNlKHttZXRob2Q6Im5vdGlmaWNhdGlvbnMvdGFza3Mvc3RhdHVzIixwYXJhbXM6dX0pO2F3YWl0IHRoaXMubm90aWZpY2F0aW9uKGQpLCR0KHUuc3RhdHVzKSYmdGhpcy5fY2xlYW51cFRhc2tQcm9ncmVzc0hhbmRsZXIocyl9fSxsaXN0VGFza3M6cz0+by5saXN0VGFza3MocyxuKX19fWZ1bmN0aW9uIGJkKGUpe3JldHVybiBlIT09bnVsbCYmdHlwZW9mIGU9PSJvYmplY3QiJiYhQXJyYXkuaXNBcnJheShlKX1mdW5jdGlvbiBTJChlLHQpe2NvbnN0IG49ey4uLmV9O2Zvcihjb25zdCBvIGluIHQpe2NvbnN0IHM9byxyPXRbc107aWYocj09PXZvaWQgMCljb250aW51ZTtjb25zdCBpPW5bc107YmQoaSkmJmJkKHIpP25bc109ey4uLmksLi4ucn06bltzXT1yfXJldHVybiBufShlPT50eXBlb2YgcmVxdWlyZTwidSI/cmVxdWlyZTp0eXBlb2YgUHJveHk8InUiP25ldyBQcm94eShlLHtnZXQ6KHQsbik9Pih0eXBlb2YgcmVxdWlyZTwidSI/cmVxdWlyZTp0KVtuXX0pOmUpKGZ1bmN0aW9uKGUpe2lmKHR5cGVvZiByZXF1aXJlPCJ1IilyZXR1cm4gcmVxdWlyZS5hcHBseSh0aGlzLGFyZ3VtZW50cyk7dGhyb3cgRXJyb3IoJ0R5bmFtaWMgcmVxdWlyZSBvZiAiJytlKyciIGlzIG5vdCBzdXBwb3J0ZWQnKX0pO2NsYXNzIGokIGV4dGVuZHMgXyR7X3JlZ2lzdGVyZWRNZXRob2RzPW5ldyBTZXQ7X2V2ZW50U2xvdHM9bmV3IE1hcDtvbkV2ZW50RGlzcGF0Y2godCxuKXt9X2Vuc3VyZUV2ZW50U2xvdCh0KXtsZXQgbj10aGlzLl9ldmVudFNsb3RzLmdldCh0KTtpZighbil7bGV0IG89dGhpcy5ldmVudFNjaGVtYXNbdF07aWYoIW8pdGhyb3cgRXJyb3IoYFVua25vd24gZXZlbnQ6ICR7U3RyaW5nKHQpfWApO249e2xpc3RlbmVyczpbXX0sdGhpcy5fZXZlbnRTbG90cy5zZXQodCxuKTtsZXQgcz1vLnNoYXBlLm1ldGhvZC52YWx1ZTt0aGlzLl9yZWdpc3RlcmVkTWV0aG9kcy5hZGQocyk7bGV0IHI9bjtzdXBlci5zZXROb3RpZmljYXRpb25IYW5kbGVyKG8saT0+e2xldCBjPWkucGFyYW1zO3RoaXMub25FdmVudERpc3BhdGNoKHQsYyksci5vbkhhbmRsZXI/LihjKTtmb3IobGV0IHUgb2ZbLi4uci5saXN0ZW5lcnNdKXUoYyl9KX1yZXR1cm4gbn1zZXRFdmVudEhhbmRsZXIodCxuKXtsZXQgbz10aGlzLl9lbnN1cmVFdmVudFNsb3QodCk7by5vbkhhbmRsZXImJm4mJmNvbnNvbGUud2FybihgW01DUCBBcHBzXSBvbiR7U3RyaW5nKHQpfSBoYW5kbGVyIHJlcGxhY2VkLiBVc2UgYWRkRXZlbnRMaXN0ZW5lcigiJHtTdHJpbmcodCl9Iiwg4oCmKSB0byBhZGQgbXVsdGlwbGUgbGlzdGVuZXJzIHdpdGhvdXQgcmVwbGFjaW5nLmApLG8ub25IYW5kbGVyPW59Z2V0RXZlbnRIYW5kbGVyKHQpe3JldHVybiB0aGlzLl9ldmVudFNsb3RzLmdldCh0KT8ub25IYW5kbGVyfWFkZEV2ZW50TGlzdGVuZXIodCxuKXt0aGlzLl9lbnN1cmVFdmVudFNsb3QodCkubGlzdGVuZXJzLnB1c2gobil9cmVtb3ZlRXZlbnRMaXN0ZW5lcih0LG4pe2xldCBvPXRoaXMuX2V2ZW50U2xvdHMuZ2V0KHQpO2lmKCFvKXJldHVybjtsZXQgcz1vLmxpc3RlbmVycy5pbmRleE9mKG4pO3MhPT0tMSYmby5saXN0ZW5lcnMuc3BsaWNlKHMsMSl9c2V0UmVxdWVzdEhhbmRsZXI9KHQsbik9Pnt0aGlzLl9hc3NlcnRNZXRob2ROb3RSZWdpc3RlcmVkKHQsInNldFJlcXVlc3RIYW5kbGVyIiksc3VwZXIuc2V0UmVxdWVzdEhhbmRsZXIodCxuKX07c2V0Tm90aWZpY2F0aW9uSGFuZGxlcj0odCxuKT0+e3RoaXMuX2Fzc2VydE1ldGhvZE5vdFJlZ2lzdGVyZWQodCwic2V0Tm90aWZpY2F0aW9uSGFuZGxlciIpLHN1cGVyLnNldE5vdGlmaWNhdGlvbkhhbmRsZXIodCxuKX07d2FybklmUmVxdWVzdEhhbmRsZXJSZXBsYWNlZCh0LG4sbyl7biYmbyYmY29uc29sZS53YXJuKGBbTUNQIEFwcHNdICR7dH0gaGFuZGxlciByZXBsYWNlZC4gUHJldmlvdXMgaGFuZGxlciB3aWxsIG5vIGxvbmdlciBiZSBjYWxsZWQuYCl9cmVwbGFjZVJlcXVlc3RIYW5kbGVyPSh0LG4pPT57bGV0IG89dC5zaGFwZS5tZXRob2QudmFsdWU7dGhpcy5fcmVnaXN0ZXJlZE1ldGhvZHMuYWRkKG8pLHN1cGVyLnNldFJlcXVlc3RIYW5kbGVyKHQsbil9O19hc3NlcnRNZXRob2ROb3RSZWdpc3RlcmVkKHQsbil7bGV0IG89dC5zaGFwZS5tZXRob2QudmFsdWU7aWYodGhpcy5fcmVnaXN0ZXJlZE1ldGhvZHMuaGFzKG8pKXRocm93IEVycm9yKGBIYW5kbGVyIGZvciAiJHtvfSIgYWxyZWFkeSByZWdpc3RlcmVkICh2aWEgJHtufSkuIFVzZSBhZGRFdmVudExpc3RlbmVyKCkgdG8gYXR0YWNoIG11bHRpcGxlIGxpc3RlbmVycywgb3IgdGhlIG9uKiBzZXR0ZXIgZm9yIHJlcGxhY2Ugc2VtYW50aWNzLmApO3RoaXMuX3JlZ2lzdGVyZWRNZXRob2RzLmFkZChvKX19dmFyIFQkPSIyMDI2LTAxLTI2IixBJD0idWkvbm90aWZpY2F0aW9ucy90b29sLWlucHV0LXBhcnRpYWwiO2NsYXNzIHoke2V2ZW50VGFyZ2V0O2V2ZW50U291cmNlO21lc3NhZ2VMaXN0ZW5lcjtjb25zdHJ1Y3Rvcih0PXdpbmRvdy5wYXJlbnQsbil7dGhpcy5ldmVudFRhcmdldD10LHRoaXMuZXZlbnRTb3VyY2U9bix0aGlzLm1lc3NhZ2VMaXN0ZW5lcj1vPT57aWYobiYmby5zb3VyY2UhPT10aGlzLmV2ZW50U291cmNlKXtjb25zb2xlLmRlYnVnKCJJZ25vcmluZyBtZXNzYWdlIGZyb20gdW5rbm93biBzb3VyY2UiLG8pO3JldHVybn1sZXQgcz1CeS5zYWZlUGFyc2Uoby5kYXRhKTtzLnN1Y2Nlc3M/KGNvbnNvbGUuZGVidWcoIlBhcnNlZCBtZXNzYWdlIixzLmRhdGEpLHRoaXMub25tZXNzYWdlPy4ocy5kYXRhKSk6by5kYXRhPy5qc29ucnBjIT09IjIuMCI/Y29uc29sZS5kZWJ1ZygiSWdub3Jpbmcgbm9uLUpTT04tUlBDIG1lc3NhZ2UiLHMuZXJyb3IubWVzc2FnZSxvKTooY29uc29sZS5lcnJvcigiRmFpbGVkIHRvIHBhcnNlIG1lc3NhZ2UiLHMuZXJyb3IubWVzc2FnZSxvKSx0aGlzLm9uZXJyb3I/LihFcnJvcigiSW52YWxpZCBKU09OLVJQQyBtZXNzYWdlIHJlY2VpdmVkOiAiK3MuZXJyb3IubWVzc2FnZSkpKX19YXN5bmMgc3RhcnQoKXt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsdGhpcy5tZXNzYWdlTGlzdGVuZXIpfWFzeW5jIHNlbmQodCxuKXt0Lm1ldGhvZCE9PUEkJiZjb25zb2xlLmRlYnVnKCJTZW5kaW5nIG1lc3NhZ2UiLHQpLHRoaXMuZXZlbnRUYXJnZXQucG9zdE1lc3NhZ2UodCwiKiIpfWFzeW5jIGNsb3NlKCl7d2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoIm1lc3NhZ2UiLHRoaXMubWVzc2FnZUxpc3RlbmVyKSx0aGlzLm9uY2xvc2U/LigpfW9uY2xvc2U7b25lcnJvcjtvbm1lc3NhZ2U7c2Vzc2lvbklkO3NldFByb3RvY29sVmVyc2lvbn12YXIgQyQ9RihbYigibGlnaHQiKSxiKCJkYXJrIildKS5kZXNjcmliZSgiQ29sb3IgdGhlbWUgcHJlZmVyZW5jZSBmb3IgdGhlIGhvc3QgZW52aXJvbm1lbnQuIiksSG49RihbYigiaW5saW5lIiksYigiZnVsbHNjcmVlbiIpLGIoInBpcCIpXSkuZGVzY3JpYmUoIkRpc3BsYXkgbW9kZSBmb3IgVUkgcHJlc2VudGF0aW9uLiIpLE4kPUYoW2IoIi0tY29sb3ItYmFja2dyb3VuZC1wcmltYXJ5IiksYigiLS1jb2xvci1iYWNrZ3JvdW5kLXNlY29uZGFyeSIpLGIoIi0tY29sb3ItYmFja2dyb3VuZC10ZXJ0aWFyeSIpLGIoIi0tY29sb3ItYmFja2dyb3VuZC1pbnZlcnNlIiksYigiLS1jb2xvci1iYWNrZ3JvdW5kLWdob3N0IiksYigiLS1jb2xvci1iYWNrZ3JvdW5kLWluZm8iKSxiKCItLWNvbG9yLWJhY2tncm91bmQtZGFuZ2VyIiksYigiLS1jb2xvci1iYWNrZ3JvdW5kLXN1Y2Nlc3MiKSxiKCItLWNvbG9yLWJhY2tncm91bmQtd2FybmluZyIpLGIoIi0tY29sb3ItYmFja2dyb3VuZC1kaXNhYmxlZCIpLGIoIi0tY29sb3ItdGV4dC1wcmltYXJ5IiksYigiLS1jb2xvci10ZXh0LXNlY29uZGFyeSIpLGIoIi0tY29sb3ItdGV4dC10ZXJ0aWFyeSIpLGIoIi0tY29sb3ItdGV4dC1pbnZlcnNlIiksYigiLS1jb2xvci10ZXh0LWdob3N0IiksYigiLS1jb2xvci10ZXh0LWluZm8iKSxiKCItLWNvbG9yLXRleHQtZGFuZ2VyIiksYigiLS1jb2xvci10ZXh0LXN1Y2Nlc3MiKSxiKCItLWNvbG9yLXRleHQtd2FybmluZyIpLGIoIi0tY29sb3ItdGV4dC1kaXNhYmxlZCIpLGIoIi0tY29sb3ItYm9yZGVyLXByaW1hcnkiKSxiKCItLWNvbG9yLWJvcmRlci1zZWNvbmRhcnkiKSxiKCItLWNvbG9yLWJvcmRlci10ZXJ0aWFyeSIpLGIoIi0tY29sb3ItYm9yZGVyLWludmVyc2UiKSxiKCItLWNvbG9yLWJvcmRlci1naG9zdCIpLGIoIi0tY29sb3ItYm9yZGVyLWluZm8iKSxiKCItLWNvbG9yLWJvcmRlci1kYW5nZXIiKSxiKCItLWNvbG9yLWJvcmRlci1zdWNjZXNzIiksYigiLS1jb2xvci1ib3JkZXItd2FybmluZyIpLGIoIi0tY29sb3ItYm9yZGVyLWRpc2FibGVkIiksYigiLS1jb2xvci1yaW5nLXByaW1hcnkiKSxiKCItLWNvbG9yLXJpbmctc2Vjb25kYXJ5IiksYigiLS1jb2xvci1yaW5nLWludmVyc2UiKSxiKCItLWNvbG9yLXJpbmctaW5mbyIpLGIoIi0tY29sb3ItcmluZy1kYW5nZXIiKSxiKCItLWNvbG9yLXJpbmctc3VjY2VzcyIpLGIoIi0tY29sb3ItcmluZy13YXJuaW5nIiksYigiLS1mb250LXNhbnMiKSxiKCItLWZvbnQtbW9ubyIpLGIoIi0tZm9udC13ZWlnaHQtbm9ybWFsIiksYigiLS1mb250LXdlaWdodC1tZWRpdW0iKSxiKCItLWZvbnQtd2VpZ2h0LXNlbWlib2xkIiksYigiLS1mb250LXdlaWdodC1ib2xkIiksYigiLS1mb250LXRleHQteHMtc2l6ZSIpLGIoIi0tZm9udC10ZXh0LXNtLXNpemUiKSxiKCItLWZvbnQtdGV4dC1tZC1zaXplIiksYigiLS1mb250LXRleHQtbGctc2l6ZSIpLGIoIi0tZm9udC1oZWFkaW5nLXhzLXNpemUiKSxiKCItLWZvbnQtaGVhZGluZy1zbS1zaXplIiksYigiLS1mb250LWhlYWRpbmctbWQtc2l6ZSIpLGIoIi0tZm9udC1oZWFkaW5nLWxnLXNpemUiKSxiKCItLWZvbnQtaGVhZGluZy14bC1zaXplIiksYigiLS1mb250LWhlYWRpbmctMnhsLXNpemUiKSxiKCItLWZvbnQtaGVhZGluZy0zeGwtc2l6ZSIpLGIoIi0tZm9udC10ZXh0LXhzLWxpbmUtaGVpZ2h0IiksYigiLS1mb250LXRleHQtc20tbGluZS1oZWlnaHQiKSxiKCItLWZvbnQtdGV4dC1tZC1saW5lLWhlaWdodCIpLGIoIi0tZm9udC10ZXh0LWxnLWxpbmUtaGVpZ2h0IiksYigiLS1mb250LWhlYWRpbmcteHMtbGluZS1oZWlnaHQiKSxiKCItLWZvbnQtaGVhZGluZy1zbS1saW5lLWhlaWdodCIpLGIoIi0tZm9udC1oZWFkaW5nLW1kLWxpbmUtaGVpZ2h0IiksYigiLS1mb250LWhlYWRpbmctbGctbGluZS1oZWlnaHQiKSxiKCItLWZvbnQtaGVhZGluZy14bC1saW5lLWhlaWdodCIpLGIoIi0tZm9udC1oZWFkaW5nLTJ4bC1saW5lLWhlaWdodCIpLGIoIi0tZm9udC1oZWFkaW5nLTN4bC1saW5lLWhlaWdodCIpLGIoIi0tYm9yZGVyLXJhZGl1cy14cyIpLGIoIi0tYm9yZGVyLXJhZGl1cy1zbSIpLGIoIi0tYm9yZGVyLXJhZGl1cy1tZCIpLGIoIi0tYm9yZGVyLXJhZGl1cy1sZyIpLGIoIi0tYm9yZGVyLXJhZGl1cy14bCIpLGIoIi0tYm9yZGVyLXJhZGl1cy1mdWxsIiksYigiLS1ib3JkZXItd2lkdGgtcmVndWxhciIpLGIoIi0tc2hhZG93LWhhaXJsaW5lIiksYigiLS1zaGFkb3ctc20iKSxiKCItLXNoYWRvdy1tZCIpLGIoIi0tc2hhZG93LWxnIildKS5kZXNjcmliZSgiQ1NTIHZhcmlhYmxlIGtleXMgYXZhaWxhYmxlIHRvIE1DUCBhcHBzIGZvciB0aGVtaW5nLiIpLFAkPVcoTiQuZGVzY3JpYmUoYFN0eWxlIHZhcmlhYmxlcyBmb3IgdGhlbWluZyBNQ1AgYXBwcy4KCkluZGl2aWR1YWwgc3R5bGUga2V5cyBhcmUgb3B0aW9uYWwgLSBob3N0cyBtYXkgcHJvdmlkZSBhbnkgc3Vic2V0IG9mIHRoZXNlIHZhbHVlcy4KVmFsdWVzIGFyZSBzdHJpbmdzIGNvbnRhaW5pbmcgQ1NTIHZhbHVlcyAoY29sb3JzLCBzaXplcywgZm9udCBzdGFja3MsIGV0Yy4pLgoKTm90ZTogVGhpcyB0eXBlIHVzZXMgXGBSZWNvcmQ8Sywgc3RyaW5nIHwgdW5kZWZpbmVkPlxgIHJhdGhlciB0aGFuIFxgUGFydGlhbDxSZWNvcmQ8Sywgc3RyaW5nPj5cYApmb3IgY29tcGF0aWJpbGl0eSB3aXRoIFpvZCBzY2hlbWEgZ2VuZXJhdGlvbi4gQm90aCBhcmUgZnVuY3Rpb25hbGx5IGVxdWl2YWxlbnQgZm9yIHZhbGlkYXRpb24uYCksRihbZygpLFF0KCldKS5kZXNjcmliZShgU3R5bGUgdmFyaWFibGVzIGZvciB0aGVtaW5nIE1DUCBhcHBzLgoKSW5kaXZpZHVhbCBzdHlsZSBrZXlzIGFyZSBvcHRpb25hbCAtIGhvc3RzIG1heSBwcm92aWRlIGFueSBzdWJzZXQgb2YgdGhlc2UgdmFsdWVzLgpWYWx1ZXMgYXJlIHN0cmluZ3MgY29udGFpbmluZyBDU1MgdmFsdWVzIChjb2xvcnMsIHNpemVzLCBmb250IHN0YWNrcywgZXRjLikuCgpOb3RlOiBUaGlzIHR5cGUgdXNlcyBcYFJlY29yZDxLLCBzdHJpbmcgfCB1bmRlZmluZWQ+XGAgcmF0aGVyIHRoYW4gXGBQYXJ0aWFsPFJlY29yZDxLLCBzdHJpbmc+PlxgCmZvciBjb21wYXRpYmlsaXR5IHdpdGggWm9kIHNjaGVtYSBnZW5lcmF0aW9uLiBCb3RoIGFyZSBmdW5jdGlvbmFsbHkgZXF1aXZhbGVudCBmb3IgdmFsaWRhdGlvbi5gKSkuZGVzY3JpYmUoYFN0eWxlIHZhcmlhYmxlcyBmb3IgdGhlbWluZyBNQ1AgYXBwcy4KCkluZGl2aWR1YWwgc3R5bGUga2V5cyBhcmUgb3B0aW9uYWwgLSBob3N0cyBtYXkgcHJvdmlkZSBhbnkgc3Vic2V0IG9mIHRoZXNlIHZhbHVlcy4KVmFsdWVzIGFyZSBzdHJpbmdzIGNvbnRhaW5pbmcgQ1NTIHZhbHVlcyAoY29sb3JzLCBzaXplcywgZm9udCBzdGFja3MsIGV0Yy4pLgoKTm90ZTogVGhpcyB0eXBlIHVzZXMgXGBSZWNvcmQ8Sywgc3RyaW5nIHwgdW5kZWZpbmVkPlxgIHJhdGhlciB0aGFuIFxgUGFydGlhbDxSZWNvcmQ8Sywgc3RyaW5nPj5cYApmb3IgY29tcGF0aWJpbGl0eSB3aXRoIFpvZCBzY2hlbWEgZ2VuZXJhdGlvbi4gQm90aCBhcmUgZnVuY3Rpb25hbGx5IGVxdWl2YWxlbnQgZm9yIHZhbGlkYXRpb24uYCk7ayh7bWV0aG9kOmIoInVpL29wZW4tbGluayIpLHBhcmFtczprKHt1cmw6ZygpLmRlc2NyaWJlKCJVUkwgdG8gb3BlbiBpbiB0aGUgaG9zdCdzIGJyb3dzZXIiKX0pfSk7dmFyIHgkPWsoe2lzRXJyb3I6ZWUoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJUcnVlIGlmIHRoZSBob3N0IGZhaWxlZCB0byBvcGVuIHRoZSBVUkwgKGUuZy4sIGR1ZSB0byBzZWN1cml0eSBwb2xpY3kpLiIpfSkucGFzc3Rocm91Z2goKSxJJD1rKHtpc0Vycm9yOmVlKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiVHJ1ZSBpZiB0aGUgZG93bmxvYWQgZmFpbGVkIChlLmcuLCB1c2VyIGNhbmNlbGxlZCBvciBob3N0IGRlbmllZCkuIil9KS5wYXNzdGhyb3VnaCgpLFIkPWsoe2lzRXJyb3I6ZWUoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJUcnVlIGlmIHRoZSBob3N0IHJlamVjdGVkIG9yIGZhaWxlZCB0byBkZWxpdmVyIHRoZSBtZXNzYWdlLiIpfSkucGFzc3Rocm91Z2goKTtrKHttZXRob2Q6YigidWkvbm90aWZpY2F0aW9ucy9zYW5kYm94LXByb3h5LXJlYWR5IikscGFyYW1zOmsoe30pfSk7dmFyIGl1PWsoe2Nvbm5lY3REb21haW5zOkUoZygpKS5vcHRpb25hbCgpLmRlc2NyaWJlKGBPcmlnaW5zIGZvciBuZXR3b3JrIHJlcXVlc3RzIChmZXRjaC9YSFIvV2ViU29ja2V0KS4KCi0gTWFwcyB0byBDU1AgXGBjb25uZWN0LXNyY1xgIGRpcmVjdGl2ZQotIEVtcHR5IG9yIG9taXR0ZWQg4oaSIG5vIG5ldHdvcmsgY29ubmVjdGlvbnMgKHNlY3VyZSBkZWZhdWx0KWApLHJlc291cmNlRG9tYWluczpFKGcoKSkub3B0aW9uYWwoKS5kZXNjcmliZSgiT3JpZ2lucyBmb3Igc3RhdGljIHJlc291cmNlcyAoaW1hZ2VzLCBzY3JpcHRzLCBzdHlsZXNoZWV0cywgZm9udHMsIG1lZGlhKS5cblxuLSBNYXBzIHRvIENTUCBgaW1nLXNyY2AsIGBzY3JpcHQtc3JjYCwgYHN0eWxlLXNyY2AsIGBmb250LXNyY2AsIGBtZWRpYS1zcmNgIGRpcmVjdGl2ZXNcbi0gV2lsZGNhcmQgc3ViZG9tYWlucyBzdXBwb3J0ZWQ6IGBodHRwczovLyouZXhhbXBsZS5jb21gXG4tIEVtcHR5IG9yIG9taXR0ZWQg4oaSIG5vIG5ldHdvcmsgcmVzb3VyY2VzIChzZWN1cmUgZGVmYXVsdCkiKSxmcmFtZURvbWFpbnM6RShnKCkpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIk9yaWdpbnMgZm9yIG5lc3RlZCBpZnJhbWVzLlxuXG4tIE1hcHMgdG8gQ1NQIGBmcmFtZS1zcmNgIGRpcmVjdGl2ZVxuLSBFbXB0eSBvciBvbWl0dGVkIOKGkiBubyBuZXN0ZWQgaWZyYW1lcyBhbGxvd2VkIChgZnJhbWUtc3JjICdub25lJ2ApIiksYmFzZVVyaURvbWFpbnM6RShnKCkpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkFsbG93ZWQgYmFzZSBVUklzIGZvciB0aGUgZG9jdW1lbnQuXG5cbi0gTWFwcyB0byBDU1AgYGJhc2UtdXJpYCBkaXJlY3RpdmVcbi0gRW1wdHkgb3Igb21pdHRlZCDihpIgb25seSBzYW1lIG9yaWdpbiBhbGxvd2VkIChgYmFzZS11cmkgJ3NlbGYnYCkiKX0pLGN1PWsoe2NhbWVyYTprKHt9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJSZXF1ZXN0IGNhbWVyYSBhY2Nlc3MuXG5cbk1hcHMgdG8gUGVybWlzc2lvbiBQb2xpY3kgYGNhbWVyYWAgZmVhdHVyZS4iKSxtaWNyb3Bob25lOmsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlJlcXVlc3QgbWljcm9waG9uZSBhY2Nlc3MuXG5cbk1hcHMgdG8gUGVybWlzc2lvbiBQb2xpY3kgYG1pY3JvcGhvbmVgIGZlYXR1cmUuIiksZ2VvbG9jYXRpb246ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiUmVxdWVzdCBnZW9sb2NhdGlvbiBhY2Nlc3MuXG5cbk1hcHMgdG8gUGVybWlzc2lvbiBQb2xpY3kgYGdlb2xvY2F0aW9uYCBmZWF0dXJlLiIpLGNsaXBib2FyZFdyaXRlOmsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlJlcXVlc3QgY2xpcGJvYXJkIHdyaXRlIGFjY2Vzcy5cblxuTWFwcyB0byBQZXJtaXNzaW9uIFBvbGljeSBgY2xpcGJvYXJkLXdyaXRlYCBmZWF0dXJlLiIpfSk7ayh7bWV0aG9kOmIoInVpL25vdGlmaWNhdGlvbnMvc2l6ZS1jaGFuZ2VkIikscGFyYW1zOmsoe3dpZHRoOkwoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJOZXcgd2lkdGggaW4gcGl4ZWxzLiIpLGhlaWdodDpMKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiTmV3IGhlaWdodCBpbiBwaXhlbHMuIil9KX0pO3ZhciBFJD1rKHttZXRob2Q6YigidWkvbm90aWZpY2F0aW9ucy90b29sLWlucHV0IikscGFyYW1zOmsoe2FyZ3VtZW50czpXKGcoKSxYKCkuZGVzY3JpYmUoIkNvbXBsZXRlIHRvb2wgY2FsbCBhcmd1bWVudHMgYXMga2V5LXZhbHVlIHBhaXJzLiIpKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJDb21wbGV0ZSB0b29sIGNhbGwgYXJndW1lbnRzIGFzIGtleS12YWx1ZSBwYWlycy4iKX0pfSksTyQ9ayh7bWV0aG9kOmIoInVpL25vdGlmaWNhdGlvbnMvdG9vbC1pbnB1dC1wYXJ0aWFsIikscGFyYW1zOmsoe2FyZ3VtZW50czpXKGcoKSxYKCkuZGVzY3JpYmUoIlBhcnRpYWwgdG9vbCBjYWxsIGFyZ3VtZW50cyAoaW5jb21wbGV0ZSwgbWF5IGNoYW5nZSkuIikpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlBhcnRpYWwgdG9vbCBjYWxsIGFyZ3VtZW50cyAoaW5jb21wbGV0ZSwgbWF5IGNoYW5nZSkuIil9KX0pLFokPWsoe21ldGhvZDpiKCJ1aS9ub3RpZmljYXRpb25zL3Rvb2wtY2FuY2VsbGVkIikscGFyYW1zOmsoe3JlYXNvbjpnKCkub3B0aW9uYWwoKS5kZXNjcmliZSgnT3B0aW9uYWwgcmVhc29uIGZvciB0aGUgY2FuY2VsbGF0aW9uIChlLmcuLCAidXNlciBhY3Rpb24iLCAidGltZW91dCIpLicpfSl9KSxNJD1rKHtmb250czpnKCkub3B0aW9uYWwoKX0pLHEkPWsoe3ZhcmlhYmxlczpQJC5vcHRpb25hbCgpLmRlc2NyaWJlKCJDU1MgdmFyaWFibGVzIGZvciB0aGVtaW5nIHRoZSBhcHAuIiksY3NzOk0kLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkNTUyBibG9ja3MgdGhhdCBhcHBzIGNhbiBpbmplY3QuIil9KSxEJD1rKHttZXRob2Q6YigidWkvcmVzb3VyY2UtdGVhcmRvd24iKSxwYXJhbXM6ayh7fSl9KTtXKGcoKSxYKCkpO3ZhciB2ZD1rKHt0ZXh0Omsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgdGV4dCBjb250ZW50IGJsb2Nrcy4iKSxpbWFnZTprKHt9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IHN1cHBvcnRzIGltYWdlIGNvbnRlbnQgYmxvY2tzLiIpLGF1ZGlvOmsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgYXVkaW8gY29udGVudCBibG9ja3MuIikscmVzb3VyY2U6ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyByZXNvdXJjZSBjb250ZW50IGJsb2Nrcy4iKSxyZXNvdXJjZUxpbms6ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyByZXNvdXJjZSBsaW5rIGNvbnRlbnQgYmxvY2tzLiIpLHN0cnVjdHVyZWRDb250ZW50Omsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgc3RydWN0dXJlZCBjb250ZW50LiIpfSk7ayh7bWV0aG9kOmIoInVpL25vdGlmaWNhdGlvbnMvcmVxdWVzdC10ZWFyZG93biIpLHBhcmFtczprKHt9KS5vcHRpb25hbCgpfSk7dmFyIEwkPWsoe2V4cGVyaW1lbnRhbDpXKGcoKSxXKGcoKSxabygpKS5kZXNjcmliZSgiRXhwZXJpbWVudGFsIGZlYXR1cmVzIGtleWVkIGJ5IGlkZW50aWZpZXIuIikpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkV4cGVyaW1lbnRhbCBmZWF0dXJlcyBrZXllZCBieSBpZGVudGlmaWVyLiIpLG9wZW5MaW5rczprKHt9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IHN1cHBvcnRzIG9wZW5pbmcgZXh0ZXJuYWwgVVJMcy4iKSxkb3dubG9hZEZpbGU6ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyBmaWxlIGRvd25sb2FkcyB2aWEgdWkvZG93bmxvYWQtZmlsZS4iKSxzZXJ2ZXJUb29sczprKHtsaXN0Q2hhbmdlZDplZSgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgdG9vbHMvbGlzdF9jaGFuZ2VkIG5vdGlmaWNhdGlvbnMuIil9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IGNhbiBwcm94eSB0b29sIGNhbGxzIHRvIHRoZSBNQ1Agc2VydmVyLiIpLHNlcnZlclJlc291cmNlczprKHtsaXN0Q2hhbmdlZDplZSgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgcmVzb3VyY2VzL2xpc3RfY2hhbmdlZCBub3RpZmljYXRpb25zLiIpfSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBjYW4gcHJveHkgcmVzb3VyY2UgcmVhZHMgdG8gdGhlIE1DUCBzZXJ2ZXIuIiksbG9nZ2luZzprKHt9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IGFjY2VwdHMgbG9nIG1lc3NhZ2VzLiIpLHNhbmRib3g6ayh7cGVybWlzc2lvbnM6Y3Uub3B0aW9uYWwoKS5kZXNjcmliZSgiUGVybWlzc2lvbnMgZ3JhbnRlZCBieSB0aGUgaG9zdCAoY2FtZXJhLCBtaWNyb3Bob25lLCBnZW9sb2NhdGlvbikuIiksY3NwOml1Lm9wdGlvbmFsKCkuZGVzY3JpYmUoIkNTUCBkb21haW5zIGFwcHJvdmVkIGJ5IHRoZSBob3N0LiIpfSkub3B0aW9uYWwoKS5kZXNjcmliZSgiU2FuZGJveCBjb25maWd1cmF0aW9uIGFwcGxpZWQgYnkgdGhlIGhvc3QuIiksdXBkYXRlTW9kZWxDb250ZXh0OnZkLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3QgYWNjZXB0cyBjb250ZXh0IHVwZGF0ZXMgKHVpL3VwZGF0ZS1tb2RlbC1jb250ZXh0KSB0byBiZSBpbmNsdWRlZCBpbiB0aGUgbW9kZWwncyBjb250ZXh0IGZvciBmdXR1cmUgdHVybnMuIiksbWVzc2FnZTp2ZC5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IHN1cHBvcnRzIHJlY2VpdmluZyBjb250ZW50IG1lc3NhZ2VzICh1aS9tZXNzYWdlKSBmcm9tIHRoZSB2aWV3LiIpLHNhbXBsaW5nOmsoe3Rvb2xzOmsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgdG9vbCB1c2UgdmlhIGB0b29sc2AgYW5kIGB0b29sQ2hvaWNlYCBwYXJhbWV0ZXJzLiIpfSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyBMTE0gc2FtcGxpbmcgKHNhbXBsaW5nL2NyZWF0ZU1lc3NhZ2UpIGZyb20gdGhlIHZpZXcuXG5NaXJyb3JzIHRoZSBNQ1AgYENsaWVudENhcGFiaWxpdGllcy5zYW1wbGluZ2Agc2hhcGUgc28gaG9zdHMgY2FuIHBhc3MgaXQgdGhyb3VnaC4iKX0pLEIkPWsoe2V4cGVyaW1lbnRhbDpXKGcoKSxXKGcoKSxabygpKS5kZXNjcmliZSgiRXhwZXJpbWVudGFsIGZlYXR1cmVzIGtleWVkIGJ5IGlkZW50aWZpZXIuIikpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkV4cGVyaW1lbnRhbCBmZWF0dXJlcyBrZXllZCBieSBpZGVudGlmaWVyLiIpLHRvb2xzOmsoe2xpc3RDaGFuZ2VkOmVlKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiQXBwIHN1cHBvcnRzIHRvb2xzL2xpc3RfY2hhbmdlZCBub3RpZmljYXRpb25zLiIpfSkub3B0aW9uYWwoKS5kZXNjcmliZSgiQXBwIGV4cG9zZXMgTUNQLXN0eWxlIHRvb2xzIHRoYXQgdGhlIGhvc3QgY2FuIGNhbGwuIiksYXZhaWxhYmxlRGlzcGxheU1vZGVzOkUoSG4pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkRpc3BsYXkgbW9kZXMgdGhlIGFwcCBzdXBwb3J0cy4iKX0pO2soe21ldGhvZDpiKCJ1aS9ub3RpZmljYXRpb25zL2luaXRpYWxpemVkIikscGFyYW1zOmsoe30pLm9wdGlvbmFsKCl9KTtrKHtjc3A6aXUub3B0aW9uYWwoKS5kZXNjcmliZSgiQ29udGVudCBTZWN1cml0eSBQb2xpY3kgY29uZmlndXJhdGlvbiBmb3IgVUkgcmVzb3VyY2VzLiIpLHBlcm1pc3Npb25zOmN1Lm9wdGlvbmFsKCkuZGVzY3JpYmUoIlNhbmRib3ggcGVybWlzc2lvbnMgcmVxdWVzdGVkIGJ5IHRoZSBVSSByZXNvdXJjZS4iKSxkb21haW46ZygpLm9wdGlvbmFsKCkuZGVzY3JpYmUoYERlZGljYXRlZCBvcmlnaW4gZm9yIHZpZXcgc2FuZGJveC4KClVzZWZ1bCB3aGVuIHZpZXdzIG5lZWQgc3RhYmxlLCBkZWRpY2F0ZWQgb3JpZ2lucyBmb3IgT0F1dGggY2FsbGJhY2tzLCBDT1JTIHBvbGljaWVzLCBvciBBUEkga2V5IGFsbG93bGlzdHMuCgoqKkhvc3QtZGVwZW5kZW50OioqIFRoZSBmb3JtYXQgYW5kIHZhbGlkYXRpb24gcnVsZXMgZm9yIHRoaXMgZmllbGQgYXJlIGRldGVybWluZWQgYnkgZWFjaCBob3N0LiBTZXJ2ZXJzIE1VU1QgY29uc3VsdCBob3N0LXNwZWNpZmljIGRvY3VtZW50YXRpb24gZm9yIHRoZSBleHBlY3RlZCBkb21haW4gZm9ybWF0LiBDb21tb24gcGF0dGVybnMgaW5jbHVkZToKLSBIYXNoLWJhc2VkIHN1YmRvbWFpbnMgKGUuZy4sIFxge2hhc2h9LmNsYXVkZW1jcGNvbnRlbnQuY29tXGApCi0gVVJMLWRlcml2ZWQgc3ViZG9tYWlucyAoZS5nLiwgXGB3d3ctZXhhbXBsZS1jb20ub2FpdXNlcmNvbnRlbnQuY29tXGApCgpJZiBvbWl0dGVkLCBob3N0IHVzZXMgZGVmYXVsdCBzYW5kYm94IG9yaWdpbiAodHlwaWNhbGx5IHBlci1jb252ZXJzYXRpb24pLmApLHByZWZlcnNCb3JkZXI6ZWUoKS5vcHRpb25hbCgpLmRlc2NyaWJlKGBWaXN1YWwgYm91bmRhcnkgcHJlZmVyZW5jZSAtIHRydWUgaWYgdmlldyBwcmVmZXJzIGEgdmlzaWJsZSBib3JkZXIuCgpCb29sZWFuIHJlcXVlc3Rpbmcgd2hldGhlciBhIHZpc2libGUgYm9yZGVyIGFuZCBiYWNrZ3JvdW5kIGlzIHByb3ZpZGVkIGJ5IHRoZSBob3N0LiBTcGVjaWZ5aW5nIGFuIGV4cGxpY2l0IHZhbHVlIGZvciB0aGlzIGlzIHJlY29tbWVuZGVkIGJlY2F1c2UgaG9zdHMnIGRlZmF1bHRzIG1heSB2YXJ5LgoKLSBcYHRydWVcYDogcmVxdWVzdCB2aXNpYmxlIGJvcmRlciArIGJhY2tncm91bmQKLSBcYGZhbHNlXGA6IHJlcXVlc3Qgbm8gdmlzaWJsZSBib3JkZXIgKyBiYWNrZ3JvdW5kCi0gb21pdHRlZDogaG9zdCBkZWNpZGVzIGJvcmRlcmApfSk7ayh7bWV0aG9kOmIoInVpL3JlcXVlc3QtZGlzcGxheS1tb2RlIikscGFyYW1zOmsoe21vZGU6SG4uZGVzY3JpYmUoIlRoZSBkaXNwbGF5IG1vZGUgYmVpbmcgcmVxdWVzdGVkLiIpfSl9KTt2YXIgSCQ9ayh7bW9kZTpIbi5kZXNjcmliZSgiVGhlIGRpc3BsYXkgbW9kZSB0aGF0IHdhcyBhY3R1YWxseSBzZXQuIE1heSBkaWZmZXIgZnJvbSByZXF1ZXN0ZWQgaWYgbm90IHN1cHBvcnRlZC4iKX0pLnBhc3N0aHJvdWdoKCksRiQ9RihbYigibW9kZWwiKSxiKCJhcHAiKV0pLmRlc2NyaWJlKCJUb29sIHZpc2liaWxpdHkgc2NvcGUgLSB3aG8gY2FuIGFjY2VzcyB0aGUgdG9vbC4iKTtrKHtyZXNvdXJjZVVyaTpnKCkub3B0aW9uYWwoKSx2aXNpYmlsaXR5OkUoRiQpLm9wdGlvbmFsKCkuZGVzY3JpYmUoYFdobyBjYW4gYWNjZXNzIHRoaXMgdG9vbC4gRGVmYXVsdDogWyJtb2RlbCIsICJhcHAiXQotICJtb2RlbCI6IFRvb2wgdmlzaWJsZSB0byBhbmQgY2FsbGFibGUgYnkgdGhlIGFnZW50Ci0gImFwcCI6IFRvb2wgY2FsbGFibGUgYnkgdGhlIGFwcCBmcm9tIHRoaXMgc2VydmVyIG9ubHlgKSxjc3A6VHQoKS5vcHRpb25hbCgpLHBlcm1pc3Npb25zOlR0KCkub3B0aW9uYWwoKX0pO2soe21pbWVUeXBlczpFKGcoKSkub3B0aW9uYWwoKS5kZXNjcmliZSgnQXJyYXkgb2Ygc3VwcG9ydGVkIE1JTUUgdHlwZXMgZm9yIFVJIHJlc291cmNlcy5cbk11c3QgaW5jbHVkZSBgInRleHQvaHRtbDtwcm9maWxlPW1jcC1hcHAiYCBmb3IgTUNQIEFwcHMgc3VwcG9ydC4nKX0pO2soe21ldGhvZDpiKCJ1aS9kb3dubG9hZC1maWxlIikscGFyYW1zOmsoe2NvbnRlbnRzOkUoRihbbGcsdWddKSkuZGVzY3JpYmUoIlJlc291cmNlIGNvbnRlbnRzIHRvIGRvd25sb2FkIOKAlCBlbWJlZGRlZCAoaW5saW5lIGRhdGEpIG9yIGxpbmtlZCAoaG9zdCBmZXRjaGVzKS4gVXNlcyBzdGFuZGFyZCBNQ1AgcmVzb3VyY2UgdHlwZXMuIil9KX0pO2soe21ldGhvZDpiKCJ1aS9tZXNzYWdlIikscGFyYW1zOmsoe3JvbGU6YigidXNlciIpLmRlc2NyaWJlKCdNZXNzYWdlIHJvbGUsIGN1cnJlbnRseSBvbmx5ICJ1c2VyIiBpcyBzdXBwb3J0ZWQuJyksY29udGVudDpFKFlvKS5kZXNjcmliZSgiTWVzc2FnZSBjb250ZW50IGJsb2NrcyAodGV4dCwgaW1hZ2UsIGV0Yy4pLiIpfSl9KTtrKHttZXRob2Q6YigidWkvbm90aWZpY2F0aW9ucy9zYW5kYm94LXJlc291cmNlLXJlYWR5IikscGFyYW1zOmsoe2h0bWw6ZygpLmRlc2NyaWJlKCJIVE1MIGNvbnRlbnQgdG8gbG9hZCBpbnRvIHRoZSBpbm5lciBpZnJhbWUuIiksc2FuZGJveDpnKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiT3B0aW9uYWwgb3ZlcnJpZGUgZm9yIHRoZSBpbm5lciBpZnJhbWUncyBzYW5kYm94IGF0dHJpYnV0ZS4iKSxjc3A6aXUub3B0aW9uYWwoKS5kZXNjcmliZSgiQ1NQIGNvbmZpZ3VyYXRpb24gZnJvbSByZXNvdXJjZSBtZXRhZGF0YS4iKSxwZXJtaXNzaW9uczpjdS5vcHRpb25hbCgpLmRlc2NyaWJlKCJTYW5kYm94IHBlcm1pc3Npb25zIGZyb20gcmVzb3VyY2UgbWV0YWRhdGEuIil9KX0pO3ZhciBVJD1rKHttZXRob2Q6YigidWkvbm90aWZpY2F0aW9ucy90b29sLXJlc3VsdCIpLHBhcmFtczpuYS5kZXNjcmliZSgiU3RhbmRhcmQgTUNQIHRvb2wgZXhlY3V0aW9uIHJlc3VsdC4iKX0pLGdnPWsoe3Rvb2xJbmZvOmsoe2lkOlVvLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkpTT04tUlBDIGlkIG9mIHRoZSB0b29scy9jYWxsIHJlcXVlc3QuIiksdG9vbDphdS5kZXNjcmliZSgiVG9vbCBkZWZpbml0aW9uIGluY2x1ZGluZyBuYW1lLCBpbnB1dFNjaGVtYSwgZXRjLiIpfSkub3B0aW9uYWwoKS5kZXNjcmliZSgiTWV0YWRhdGEgb2YgdGhlIHRvb2wgY2FsbCB0aGF0IGluc3RhbnRpYXRlZCB0aGlzIEFwcC4iKSx0aGVtZTpDJC5vcHRpb25hbCgpLmRlc2NyaWJlKCJDdXJyZW50IGNvbG9yIHRoZW1lIHByZWZlcmVuY2UuIiksc3R5bGVzOnEkLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlN0eWxlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZW1pbmcgdGhlIGFwcC4iKSxkaXNwbGF5TW9kZTpIbi5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3cgdGhlIFVJIGlzIGN1cnJlbnRseSBkaXNwbGF5ZWQuIiksYXZhaWxhYmxlRGlzcGxheU1vZGVzOkUoSG4pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkRpc3BsYXkgbW9kZXMgdGhlIGhvc3Qgc3VwcG9ydHMuIiksY29udGFpbmVyRGltZW5zaW9uczpGKFtrKHtoZWlnaHQ6TCgpLmRlc2NyaWJlKCJGaXhlZCBjb250YWluZXIgaGVpZ2h0IGluIHBpeGVscy4iKX0pLGsoe21heEhlaWdodDpGKFtMKCksUXQoKV0pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIk1heGltdW0gY29udGFpbmVyIGhlaWdodCBpbiBwaXhlbHMuIil9KV0pLmFuZChGKFtrKHt3aWR0aDpMKCkuZGVzY3JpYmUoIkZpeGVkIGNvbnRhaW5lciB3aWR0aCBpbiBwaXhlbHMuIil9KSxrKHttYXhXaWR0aDpGKFtMKCksUXQoKV0pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIk1heGltdW0gY29udGFpbmVyIHdpZHRoIGluIHBpeGVscy4iKX0pXSkpLm9wdGlvbmFsKCkuZGVzY3JpYmUoYENvbnRhaW5lciBkaW1lbnNpb25zLiBSZXByZXNlbnRzIHRoZSBkaW1lbnNpb25zIG9mIHRoZSBpZnJhbWUgb3Igb3RoZXIKY29udGFpbmVyIGhvbGRpbmcgdGhlIGFwcC4gU3BlY2lmeSBlaXRoZXIgd2lkdGggb3IgbWF4V2lkdGgsIGFuZCBlaXRoZXIgaGVpZ2h0IG9yIG1heEhlaWdodC5gKSxsb2NhbGU6ZygpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlVzZXIncyBsYW5ndWFnZSBhbmQgcmVnaW9uIHByZWZlcmVuY2UgaW4gQkNQIDQ3IGZvcm1hdC4iKSx0aW1lWm9uZTpnKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiVXNlcidzIHRpbWV6b25lIGluIElBTkEgZm9ybWF0LiIpLHVzZXJBZ2VudDpnKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBhcHBsaWNhdGlvbiBpZGVudGlmaWVyLiIpLHBsYXRmb3JtOkYoW2IoIndlYiIpLGIoImRlc2t0b3AiKSxiKCJtb2JpbGUiKV0pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlBsYXRmb3JtIHR5cGUgZm9yIHJlc3BvbnNpdmUgZGVzaWduIGRlY2lzaW9ucy4iKSxkZXZpY2VDYXBhYmlsaXRpZXM6ayh7dG91Y2g6ZWUoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJXaGV0aGVyIHRoZSBkZXZpY2Ugc3VwcG9ydHMgdG91Y2ggaW5wdXQuIiksaG92ZXI6ZWUoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJXaGV0aGVyIHRoZSBkZXZpY2Ugc3VwcG9ydHMgaG92ZXIgaW50ZXJhY3Rpb25zLiIpfSkub3B0aW9uYWwoKS5kZXNjcmliZSgiRGV2aWNlIGlucHV0IGNhcGFiaWxpdGllcy4iKSxzYWZlQXJlYUluc2V0czprKHt0b3A6TCgpLmRlc2NyaWJlKCJUb3Agc2FmZSBhcmVhIGluc2V0IGluIHBpeGVscy4iKSxyaWdodDpMKCkuZGVzY3JpYmUoIlJpZ2h0IHNhZmUgYXJlYSBpbnNldCBpbiBwaXhlbHMuIiksYm90dG9tOkwoKS5kZXNjcmliZSgiQm90dG9tIHNhZmUgYXJlYSBpbnNldCBpbiBwaXhlbHMuIiksbGVmdDpMKCkuZGVzY3JpYmUoIkxlZnQgc2FmZSBhcmVhIGluc2V0IGluIHBpeGVscy4iKX0pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIk1vYmlsZSBzYWZlIGFyZWEgYm91bmRhcmllcyBpbiBwaXhlbHMuIil9KS5wYXNzdGhyb3VnaCgpLFYkPWsoe21ldGhvZDpiKCJ1aS9ub3RpZmljYXRpb25zL2hvc3QtY29udGV4dC1jaGFuZ2VkIikscGFyYW1zOmdnLmRlc2NyaWJlKCJQYXJ0aWFsIGNvbnRleHQgdXBkYXRlIGNvbnRhaW5pbmcgb25seSBjaGFuZ2VkIGZpZWxkcy4iKX0pO2soe21ldGhvZDpiKCJ1aS91cGRhdGUtbW9kZWwtY29udGV4dCIpLHBhcmFtczprKHtjb250ZW50OkUoWW8pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkNvbnRleHQgY29udGVudCBibG9ja3MgKHRleHQsIGltYWdlLCBldGMuKS4iKSxzdHJ1Y3R1cmVkQ29udGVudDpXKGcoKSxYKCkuZGVzY3JpYmUoIlN0cnVjdHVyZWQgY29udGVudCBmb3IgbWFjaGluZS1yZWFkYWJsZSBjb250ZXh0IGRhdGEuIikpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlN0cnVjdHVyZWQgY29udGVudCBmb3IgbWFjaGluZS1yZWFkYWJsZSBjb250ZXh0IGRhdGEuIil9KX0pO2soe21ldGhvZDpiKCJ1aS9pbml0aWFsaXplIikscGFyYW1zOmsoe2FwcEluZm86ZWEuZGVzY3JpYmUoIkFwcCBpZGVudGlmaWNhdGlvbiAobmFtZSBhbmQgdmVyc2lvbikuIiksYXBwQ2FwYWJpbGl0aWVzOkIkLmRlc2NyaWJlKCJGZWF0dXJlcyBhbmQgY2FwYWJpbGl0aWVzIHRoaXMgYXBwIHByb3ZpZGVzLiIpLHByb3RvY29sVmVyc2lvbjpnKCkuZGVzY3JpYmUoIlByb3RvY29sIHZlcnNpb24gdGhpcyBhcHAgc3VwcG9ydHMuIil9KX0pO3ZhciBXJD1rKHtwcm90b2NvbFZlcnNpb246ZygpLmRlc2NyaWJlKCdOZWdvdGlhdGVkIHByb3RvY29sIHZlcnNpb24gc3RyaW5nIChlLmcuLCAiMjAyNS0xMS0yMSIpLicpLGhvc3RJbmZvOmVhLmRlc2NyaWJlKCJIb3N0IGFwcGxpY2F0aW9uIGlkZW50aWZpY2F0aW9uIGFuZCB2ZXJzaW9uLiIpLGhvc3RDYXBhYmlsaXRpZXM6TCQuZGVzY3JpYmUoIkZlYXR1cmVzIGFuZCBjYXBhYmlsaXRpZXMgcHJvdmlkZWQgYnkgdGhlIGhvc3QuIiksaG9zdENvbnRleHQ6Z2cuZGVzY3JpYmUoIlJpY2ggY29udGV4dCBhYm91dCB0aGUgaG9zdCBlbnZpcm9ubWVudC4iKX0pLnBhc3N0aHJvdWdoKCksSyQ9e3RhcmdldDoiZHJhZnQtMjAyMC0xMiJ9O2FzeW5jIGZ1bmN0aW9uIGtkKGUsdCl7bGV0IG49ZVsifnN0YW5kYXJkIl07aWYobi5qc29uU2NoZW1hKXJldHVybiBuLmpzb25TY2hlbWFbdF0oSyQpO2lmKG4udmVuZG9yPT09InpvZCIpe2xldHt6Om99PWF3YWl0IHdiKCgpPT5Qcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT5PeSksdm9pZCAwLGltcG9ydC5tZXRhLnVybCk7cmV0dXJuIG8udG9KU09OU2NoZW1hKGUse2lvOnR9KX10aHJvdyBFcnJvcihgU2NoZW1hICh2ZW5kb3I6ICR7bi52ZW5kb3J9KSBkb2VzIG5vdCBpbXBsZW1lbnQgU3RhbmRhcmQgSlNPTiBTY2hlbWEgKH5zdGFuZGFyZC5qc29uU2NoZW1hKS4gVXNlIGEgbGlicmFyeSB0aGF0IGRvZXMgKHpvZCB2NCwgQXJrVHlwZSwgVmFsaWJvdCkgb3Igd3JhcCB5b3VyIHNjaGVtYSBhY2NvcmRpbmdseS5gKX1hc3luYyBmdW5jdGlvbiB5ZChlLHQsbj0iIil7bGV0IG89YXdhaXQgZVsifnN0YW5kYXJkIl0udmFsaWRhdGUodCk7aWYoby5pc3N1ZXMpe2xldCBzPW8uaXNzdWVzLm1hcChyPT57bGV0IGk9ci5wYXRoPy5tYXAoYz0+dHlwZW9mIGM9PSJvYmplY3QiP2Mua2V5OmMpLmpvaW4oIi4iKTtyZXR1cm4gaT9gJHtpfTogJHtyLm1lc3NhZ2V9YDpyLm1lc3NhZ2V9KS5qb2luKCI7ICIpO3Rocm93IEVycm9yKG4rcyl9cmV0dXJuIG8udmFsdWV9ZnVuY3Rpb24gRyQoZSl7bGV0IHQ9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O3Quc2V0QXR0cmlidXRlKCJkYXRhLXRoZW1lIixlKSx0LnN0eWxlLmNvbG9yU2NoZW1lPWV9ZnVuY3Rpb24gSiQoZSx0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7Zm9yKGxldFtuLG9db2YgT2JqZWN0LmVudHJpZXMoZSkpbyE9PXZvaWQgMCYmdC5zdHlsZS5zZXRQcm9wZXJ0eShuLG8pfWZ1bmN0aW9uIFkkKGUpe2lmKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJfX21jcC1ob3N0LWZvbnRzIikpcmV0dXJuO2xldCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7dC5pZD0iX19tY3AtaG9zdC1mb250cyIsdC50ZXh0Q29udGVudD1lLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodCl9Y2xhc3MgbHUgZXh0ZW5kcyBqJHtfYXBwSW5mbztfY2FwYWJpbGl0aWVzO29wdGlvbnM7X2hvc3RDYXBhYmlsaXRpZXM7X2hvc3RJbmZvO19ob3N0Q29udGV4dDtfcmVnaXN0ZXJlZFRvb2xzPXt9O19pbml0aWFsaXplZFNlbnQ9ITE7X2Fzc2VydEluaXRpYWxpemVkKHQpe2lmKHRoaXMuX2luaXRpYWxpemVkU2VudClyZXR1cm47bGV0IG49YFtleHQtYXBwc10gQXBwLiR7dH0oKSBjYWxsZWQgYmVmb3JlIGNvbm5lY3QoKSBjb21wbGV0ZWQgdGhlIHVpL2luaXRpYWxpemUgaGFuZHNoYWtlLiBBd2FpdCBhcHAuY29ubmVjdCgpIGJlZm9yZSBjYWxsaW5nIHRoaXMgbWV0aG9kLCBvciBtb3ZlIGRhdGEgbG9hZGluZyB0byBhbiBvbnRvb2xyZXN1bHQgaGFuZGxlci5gO2lmKHRoaXMub3B0aW9ucz8uc3RyaWN0KXRocm93IEVycm9yKG4pO2NvbnNvbGUud2FybihgJHtufS4gVGhpcyB3aWxsIHRocm93IGluIGEgZnV0dXJlIHJlbGVhc2UuYCl9ZXZlbnRTY2hlbWFzPXt0b29saW5wdXQ6RSQsdG9vbGlucHV0cGFydGlhbDpPJCx0b29scmVzdWx0OlUkLHRvb2xjYW5jZWxsZWQ6WiQsaG9zdGNvbnRleHRjaGFuZ2VkOlYkfTtzdGF0aWMgT05FX1NIT1RfRVZFTlRTPW5ldyBTZXQoWyJ0b29saW5wdXQiLCJ0b29saW5wdXRwYXJ0aWFsIiwidG9vbHJlc3VsdCIsInRvb2xjYW5jZWxsZWQiXSk7X2V2ZXJIYWRMaXN0ZW5lcj1uZXcgU2V0O19hc3NlcnRIYW5kbGVyVGltaW5nKHQpe2lmKCFsdS5PTkVfU0hPVF9FVkVOVFMuaGFzKHQpfHx0aGlzLl9ldmVySGFkTGlzdGVuZXIuaGFzKHQpfHwodGhpcy5fZXZlckhhZExpc3RlbmVyLmFkZCh0KSwhdGhpcy5faW5pdGlhbGl6ZWRTZW50KSlyZXR1cm47bGV0IG49YFtleHQtYXBwc10gIiR7U3RyaW5nKHQpfSIgaGFuZGxlciByZWdpc3RlcmVkIGFmdGVyIGNvbm5lY3QoKSBjb21wbGV0ZWQgdGhlIHVpL2luaXRpYWxpemUgaGFuZHNoYWtlLiBUaGUgaG9zdCBtYXkgaGF2ZSBhbHJlYWR5IHNlbnQgdGhpcyBub3RpZmljYXRpb24uIFJlZ2lzdGVyIGhhbmRsZXJzIGJlZm9yZSBjYWxsaW5nIGFwcC5jb25uZWN0KCkuYDtpZih0aGlzLm9wdGlvbnM/LnN0cmljdCl0aHJvdyBFcnJvcihuKTtjb25zb2xlLndhcm4obil9c2V0RXZlbnRIYW5kbGVyKHQsbil7biYmdGhpcy5fYXNzZXJ0SGFuZGxlclRpbWluZyh0KSxzdXBlci5zZXRFdmVudEhhbmRsZXIodCxuKX1hZGRFdmVudExpc3RlbmVyKHQsbil7dGhpcy5fYXNzZXJ0SGFuZGxlclRpbWluZyh0KSxzdXBlci5hZGRFdmVudExpc3RlbmVyKHQsbil9b25FdmVudERpc3BhdGNoKHQsbil7dD09PSJob3N0Y29udGV4dGNoYW5nZWQiJiYodGhpcy5faG9zdENvbnRleHQ9ey4uLnRoaXMuX2hvc3RDb250ZXh0LC4uLm59KX1jb25zdHJ1Y3Rvcih0LG49e30sbz17YXV0b1Jlc2l6ZTohMH0pe3N1cGVyKG8pLHRoaXMuX2FwcEluZm89dCx0aGlzLl9jYXBhYmlsaXRpZXM9bix0aGlzLm9wdGlvbnM9byxvLmFsbG93VW5zYWZlRXZhbHx8cGUoe2ppdGxlc3M6ITB9KSx0aGlzLnNldFJlcXVlc3RIYW5kbGVyKHRhLHM9Pihjb25zb2xlLmxvZygiUmVjZWl2ZWQgcGluZzoiLHMucGFyYW1zKSx7fSkpLHRoaXMuc2V0RXZlbnRIYW5kbGVyKCJob3N0Y29udGV4dGNoYW5nZWQiLHZvaWQgMCl9cmVnaXN0ZXJDYXBhYmlsaXRpZXModCl7aWYodGhpcy50cmFuc3BvcnQpdGhyb3cgRXJyb3IoIkNhbm5vdCByZWdpc3RlciBjYXBhYmlsaXRpZXMgYWZ0ZXIgdHJhbnNwb3J0IGlzIGVzdGFibGlzaGVkIik7dGhpcy5fY2FwYWJpbGl0aWVzPVMkKHRoaXMuX2NhcGFiaWxpdGllcyx0KX1yZWdpc3RlclRvb2wodCxuLG8pe2lmKHRoaXMuX3JlZ2lzdGVyZWRUb29sc1t0XSl0aHJvdyBFcnJvcihgVG9vbCAke3R9IGlzIGFscmVhZHkgcmVnaXN0ZXJlZGApO2xldCBzPXRoaXMscj0oKT0+e3MuX2luaXRpYWxpemVkU2VudCYmcy5fY2FwYWJpbGl0aWVzLnRvb2xzPy5saXN0Q2hhbmdlZCYmcy5zZW5kVG9vbExpc3RDaGFuZ2VkKCl9LGk9bi5pbnB1dFNjaGVtYSE9PXZvaWQgMCxjPXt0aXRsZTpuLnRpdGxlLGRlc2NyaXB0aW9uOm4uZGVzY3JpcHRpb24saW5wdXRTY2hlbWE6bi5pbnB1dFNjaGVtYSxvdXRwdXRTY2hlbWE6bi5vdXRwdXRTY2hlbWEsYW5ub3RhdGlvbnM6bi5hbm5vdGF0aW9ucyxfbWV0YTpuLl9tZXRhLGVuYWJsZWQ6ITAsZW5hYmxlKCl7dGhpcy5lbmFibGVkPSEwLHIoKX0sZGlzYWJsZSgpe3RoaXMuZW5hYmxlZD0hMSxyKCl9LHVwZGF0ZSh1KXtPYmplY3QuYXNzaWduKHRoaXMsdSkscigpfSxyZW1vdmUoKXtzLl9yZWdpc3RlcmVkVG9vbHNbdF09PT1jJiYoZGVsZXRlIHMuX3JlZ2lzdGVyZWRUb29sc1t0XSxyKCkpfSxoYW5kbGVyOmFzeW5jKHUsZCk9PntpZighYy5lbmFibGVkKXRocm93IEVycm9yKGBUb29sICR7dH0gaXMgZGlzYWJsZWRgKTtsZXQgaDtpZihpKXtsZXQgcD1jLmlucHV0U2NoZW1hLG09cD9hd2FpdCB5ZChwLHU/P3t9LGBJbnZhbGlkIGlucHV0IGZvciB0b29sICR7dH06IGApOnU/P3t9O2g9YXdhaXQgbyhtLGQpfWVsc2UgaD1hd2FpdCBvKGQpO3JldHVybiBjLm91dHB1dFNjaGVtYSYmIWguaXNFcnJvciYmKGguc3RydWN0dXJlZENvbnRlbnQ9YXdhaXQgeWQoYy5vdXRwdXRTY2hlbWEsaC5zdHJ1Y3R1cmVkQ29udGVudCxgSW52YWxpZCBvdXRwdXQgZm9yIHRvb2wgJHt0fTogYCkpLGh9fTtyZXR1cm4gdGhpcy5fcmVnaXN0ZXJlZFRvb2xzW3RdPWMsIXRoaXMuX2NhcGFiaWxpdGllcy50b29scyYmIXRoaXMudHJhbnNwb3J0JiZ0aGlzLnJlZ2lzdGVyQ2FwYWJpbGl0aWVzKHt0b29sczp7bGlzdENoYW5nZWQ6ITB9fSksdGhpcy5lbnN1cmVUb29sSGFuZGxlcnNJbml0aWFsaXplZCgpLHIoKSxjfV90b29sSGFuZGxlcnNJbml0aWFsaXplZD0hMTtlbnN1cmVUb29sSGFuZGxlcnNJbml0aWFsaXplZCgpe3RoaXMuX3Rvb2xIYW5kbGVyc0luaXRpYWxpemVkfHwodGhpcy5fdG9vbEhhbmRsZXJzSW5pdGlhbGl6ZWQ9ITAsdGhpcy5vbmNhbGx0b29sPWFzeW5jKHQsbik9PntsZXQgbz10aGlzLl9yZWdpc3RlcmVkVG9vbHNbdC5uYW1lXTtpZighbyl0aHJvdyBFcnJvcihgVG9vbCAke3QubmFtZX0gbm90IGZvdW5kYCk7cmV0dXJuIG8uaGFuZGxlcih0LmFyZ3VtZW50cyxuKX0sdGhpcy5vbmxpc3R0b29scz1hc3luYyh0LG4pPT4oe3Rvb2xzOmF3YWl0IFByb21pc2UuYWxsKE9iamVjdC5lbnRyaWVzKHRoaXMuX3JlZ2lzdGVyZWRUb29scykuZmlsdGVyKChbbyxzXSk9PnMuZW5hYmxlZCkubWFwKGFzeW5jKFtvLHNdKT0+e2xldCByPXtuYW1lOm8sdGl0bGU6cy50aXRsZSxkZXNjcmlwdGlvbjpzLmRlc2NyaXB0aW9uLGlucHV0U2NoZW1hOnMuaW5wdXRTY2hlbWE/YXdhaXQga2Qocy5pbnB1dFNjaGVtYSwiaW5wdXQiKTp7dHlwZToib2JqZWN0Iixwcm9wZXJ0aWVzOnt9fX07cmV0dXJuIHMub3V0cHV0U2NoZW1hJiYoci5vdXRwdXRTY2hlbWE9YXdhaXQga2Qocy5vdXRwdXRTY2hlbWEsIm91dHB1dCIpKSxzLmFubm90YXRpb25zJiYoci5hbm5vdGF0aW9ucz1zLmFubm90YXRpb25zKSxzLl9tZXRhJiYoci5fbWV0YT1zLl9tZXRhKSxyfSkpfSkpfWFzeW5jIHNlbmRUb29sTGlzdENoYW5nZWQodD17fSl7dGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoInNlbmRUb29sTGlzdENoYW5nZWQiKSxhd2FpdCB0aGlzLm5vdGlmaWNhdGlvbih7bWV0aG9kOiJub3RpZmljYXRpb25zL3Rvb2xzL2xpc3RfY2hhbmdlZCIscGFyYW1zOnR9KX1nZXRIb3N0Q2FwYWJpbGl0aWVzKCl7cmV0dXJuIHRoaXMuX2hvc3RDYXBhYmlsaXRpZXN9Z2V0SG9zdFZlcnNpb24oKXtyZXR1cm4gdGhpcy5faG9zdEluZm99Z2V0SG9zdENvbnRleHQoKXtyZXR1cm4gdGhpcy5faG9zdENvbnRleHR9Z2V0IG9udG9vbGlucHV0KCl7cmV0dXJuIHRoaXMuZ2V0RXZlbnRIYW5kbGVyKCJ0b29saW5wdXQiKX1zZXQgb250b29saW5wdXQodCl7dGhpcy5zZXRFdmVudEhhbmRsZXIoInRvb2xpbnB1dCIsdCl9Z2V0IG9udG9vbGlucHV0cGFydGlhbCgpe3JldHVybiB0aGlzLmdldEV2ZW50SGFuZGxlcigidG9vbGlucHV0cGFydGlhbCIpfXNldCBvbnRvb2xpbnB1dHBhcnRpYWwodCl7dGhpcy5zZXRFdmVudEhhbmRsZXIoInRvb2xpbnB1dHBhcnRpYWwiLHQpfWdldCBvbnRvb2xyZXN1bHQoKXtyZXR1cm4gdGhpcy5nZXRFdmVudEhhbmRsZXIoInRvb2xyZXN1bHQiKX1zZXQgb250b29scmVzdWx0KHQpe3RoaXMuc2V0RXZlbnRIYW5kbGVyKCJ0b29scmVzdWx0Iix0KX1nZXQgb250b29sY2FuY2VsbGVkKCl7cmV0dXJuIHRoaXMuZ2V0RXZlbnRIYW5kbGVyKCJ0b29sY2FuY2VsbGVkIil9c2V0IG9udG9vbGNhbmNlbGxlZCh0KXt0aGlzLnNldEV2ZW50SGFuZGxlcigidG9vbGNhbmNlbGxlZCIsdCl9Z2V0IG9uaG9zdGNvbnRleHRjaGFuZ2VkKCl7cmV0dXJuIHRoaXMuZ2V0RXZlbnRIYW5kbGVyKCJob3N0Y29udGV4dGNoYW5nZWQiKX1zZXQgb25ob3N0Y29udGV4dGNoYW5nZWQodCl7dGhpcy5zZXRFdmVudEhhbmRsZXIoImhvc3Rjb250ZXh0Y2hhbmdlZCIsdCl9X29udGVhcmRvd247Z2V0IG9udGVhcmRvd24oKXtyZXR1cm4gdGhpcy5fb250ZWFyZG93bn1zZXQgb250ZWFyZG93bih0KXt0aGlzLndhcm5JZlJlcXVlc3RIYW5kbGVyUmVwbGFjZWQoIm9udGVhcmRvd24iLHRoaXMuX29udGVhcmRvd24sdCksdGhpcy5fb250ZWFyZG93bj10LHRoaXMucmVwbGFjZVJlcXVlc3RIYW5kbGVyKEQkLChuLG8pPT57aWYoIXRoaXMuX29udGVhcmRvd24pdGhyb3cgRXJyb3IoIk5vIG9udGVhcmRvd24gaGFuZGxlciBzZXQiKTtyZXR1cm4gdGhpcy5fb250ZWFyZG93bihuLnBhcmFtcyxvKX0pfV9vbmNhbGx0b29sO2dldCBvbmNhbGx0b29sKCl7cmV0dXJuIHRoaXMuX29uY2FsbHRvb2x9c2V0IG9uY2FsbHRvb2wodCl7dGhpcy53YXJuSWZSZXF1ZXN0SGFuZGxlclJlcGxhY2VkKCJvbmNhbGx0b29sIix0aGlzLl9vbmNhbGx0b29sLHQpLHRoaXMuX29uY2FsbHRvb2w9dCx0aGlzLnJlcGxhY2VSZXF1ZXN0SGFuZGxlcihoZywobixvKT0+e2lmKCF0aGlzLl9vbmNhbGx0b29sKXRocm93IEVycm9yKCJObyBvbmNhbGx0b29sIGhhbmRsZXIgc2V0Iik7cmV0dXJuIHRoaXMuX29uY2FsbHRvb2wobi5wYXJhbXMsbyl9KX1fb25saXN0dG9vbHM7Z2V0IG9ubGlzdHRvb2xzKCl7cmV0dXJuIHRoaXMuX29ubGlzdHRvb2xzfXNldCBvbmxpc3R0b29scyh0KXt0aGlzLndhcm5JZlJlcXVlc3RIYW5kbGVyUmVwbGFjZWQoIm9ubGlzdHRvb2xzIix0aGlzLl9vbmxpc3R0b29scyx0KSx0aGlzLl9vbmxpc3R0b29scz10LHRoaXMucmVwbGFjZVJlcXVlc3RIYW5kbGVyKGRnLChuLG8pPT57aWYoIXRoaXMuX29ubGlzdHRvb2xzKXRocm93IEVycm9yKCJObyBvbmxpc3R0b29scyBoYW5kbGVyIHNldCIpO3JldHVybiB0aGlzLl9vbmxpc3R0b29scyhuLnBhcmFtcyxvKX0pfWFzc2VydENhcGFiaWxpdHlGb3JNZXRob2QodCl7c3dpdGNoKHQpe2Nhc2Uic2FtcGxpbmcvY3JlYXRlTWVzc2FnZSI6aWYoIXRoaXMuX2hvc3RDYXBhYmlsaXRpZXM/LnNhbXBsaW5nKXRocm93IEVycm9yKGBIb3N0IGRvZXMgbm90IHN1cHBvcnQgc2FtcGxpbmcgKHJlcXVpcmVkIGZvciAke3R9KWApO2JyZWFrfX1hc3NlcnRSZXF1ZXN0SGFuZGxlckNhcGFiaWxpdHkodCl7c3dpdGNoKHQpe2Nhc2UidG9vbHMvY2FsbCI6Y2FzZSJ0b29scy9saXN0IjppZighdGhpcy5fY2FwYWJpbGl0aWVzLnRvb2xzKXRocm93IEVycm9yKGBDbGllbnQgZG9lcyBub3Qgc3VwcG9ydCB0b29sIGNhcGFiaWxpdHkgKHJlcXVpcmVkIGZvciAke3R9KWApO3JldHVybjtjYXNlInBpbmciOmNhc2UidWkvcmVzb3VyY2UtdGVhcmRvd24iOnJldHVybjtkZWZhdWx0OnRocm93IEVycm9yKGBObyBoYW5kbGVyIGZvciBtZXRob2QgJHt0fSByZWdpc3RlcmVkYCl9fWFzc2VydE5vdGlmaWNhdGlvbkNhcGFiaWxpdHkodCl7fWFzc2VydFRhc2tDYXBhYmlsaXR5KHQpe3Rocm93IEVycm9yKCJUYXNrcyBhcmUgbm90IHN1cHBvcnRlZCBpbiBNQ1AgQXBwcyIpfWFzc2VydFRhc2tIYW5kbGVyQ2FwYWJpbGl0eSh0KXt0aHJvdyBFcnJvcigiVGFzayBoYW5kbGVycyBhcmUgbm90IHN1cHBvcnRlZCBpbiBNQ1AgQXBwcyIpfWFzeW5jIGNhbGxTZXJ2ZXJUb29sKHQsbil7aWYodGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoImNhbGxTZXJ2ZXJUb29sIiksdHlwZW9mIHQ9PSJzdHJpbmciKXRocm93IEVycm9yKGBjYWxsU2VydmVyVG9vbCgpIGV4cGVjdHMgYW4gb2JqZWN0IGFzIGl0cyBmaXJzdCBhcmd1bWVudCwgYnV0IHJlY2VpdmVkIGEgc3RyaW5nICgiJHt0fSIpLiBEaWQgeW91IG1lYW46IGNhbGxTZXJ2ZXJUb29sKHsgbmFtZTogIiR7dH0iLCBhcmd1bWVudHM6IHsgLi4uIH0gfSk/YCk7cmV0dXJuIGF3YWl0IHRoaXMucmVxdWVzdCh7bWV0aG9kOiJ0b29scy9jYWxsIixwYXJhbXM6dH0sbmEse29ucHJvZ3Jlc3M6KCk9Pnt9LHJlc2V0VGltZW91dE9uUHJvZ3Jlc3M6ITAsLi4ubn0pfWFzeW5jIHJlYWRTZXJ2ZXJSZXNvdXJjZSh0LG4pe3JldHVybiB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgicmVhZFNlcnZlclJlc291cmNlIiksYXdhaXQgdGhpcy5yZXF1ZXN0KHttZXRob2Q6InJlc291cmNlcy9yZWFkIixwYXJhbXM6dH0sY2csbil9YXN5bmMgbGlzdFNlcnZlclJlc291cmNlcyh0LG4pe3JldHVybiB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgibGlzdFNlcnZlclJlc291cmNlcyIpLGF3YWl0IHRoaXMucmVxdWVzdCh7bWV0aG9kOiJyZXNvdXJjZXMvbGlzdCIscGFyYW1zOnR9LGlnLG4pfWFzeW5jIGNyZWF0ZVNhbXBsaW5nTWVzc2FnZSh0LG4pe3RoaXMuX2Fzc2VydEluaXRpYWxpemVkKCJjcmVhdGVTYW1wbGluZ01lc3NhZ2UiKTtsZXQgbz10LnRvb2xzP2ZnOm1nO3JldHVybiBhd2FpdCB0aGlzLnJlcXVlc3Qoe21ldGhvZDoic2FtcGxpbmcvY3JlYXRlTWVzc2FnZSIscGFyYW1zOnR9LG8sbil9c2VuZE1lc3NhZ2UodCxuKXtyZXR1cm4gdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoInNlbmRNZXNzYWdlIiksdGhpcy5yZXF1ZXN0KHttZXRob2Q6InVpL21lc3NhZ2UiLHBhcmFtczp0fSxSJCxuKX1zZW5kTG9nKHQpe3JldHVybiB0aGlzLm5vdGlmaWNhdGlvbih7bWV0aG9kOiJub3RpZmljYXRpb25zL21lc3NhZ2UiLHBhcmFtczp0fSl9dXBkYXRlTW9kZWxDb250ZXh0KHQsbil7cmV0dXJuIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKCJ1cGRhdGVNb2RlbENvbnRleHQiKSx0aGlzLnJlcXVlc3Qoe21ldGhvZDoidWkvdXBkYXRlLW1vZGVsLWNvbnRleHQiLHBhcmFtczp0fSxVbCxuKX1vcGVuTGluayh0LG4pe3JldHVybiB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgib3BlbkxpbmsiKSx0aGlzLnJlcXVlc3Qoe21ldGhvZDoidWkvb3Blbi1saW5rIixwYXJhbXM6dH0seCQsbil9c2VuZE9wZW5MaW5rPXRoaXMub3Blbkxpbms7ZG93bmxvYWRGaWxlKHQsbil7cmV0dXJuIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKCJkb3dubG9hZEZpbGUiKSx0aGlzLnJlcXVlc3Qoe21ldGhvZDoidWkvZG93bmxvYWQtZmlsZSIscGFyYW1zOnR9LEkkLG4pfXJlcXVlc3RUZWFyZG93bih0PXt9KXtyZXR1cm4gdGhpcy5ub3RpZmljYXRpb24oe21ldGhvZDoidWkvbm90aWZpY2F0aW9ucy9yZXF1ZXN0LXRlYXJkb3duIixwYXJhbXM6dH0pfXJlcXVlc3REaXNwbGF5TW9kZSh0LG4pe3JldHVybiB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgicmVxdWVzdERpc3BsYXlNb2RlIiksdGhpcy5yZXF1ZXN0KHttZXRob2Q6InVpL3JlcXVlc3QtZGlzcGxheS1tb2RlIixwYXJhbXM6dH0sSCQsbil9c2VuZFNpemVDaGFuZ2VkKHQpe3JldHVybiB0aGlzLm5vdGlmaWNhdGlvbih7bWV0aG9kOiJ1aS9ub3RpZmljYXRpb25zL3NpemUtY2hhbmdlZCIscGFyYW1zOnR9KX1zZXR1cFNpemVDaGFuZ2VkTm90aWZpY2F0aW9ucygpe2xldCB0PSExLG49MCxvPTAscz0oKT0+e3R8fCh0PSEwLHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e3Q9ITE7bGV0IGk9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGM9aS5zdHlsZS5oZWlnaHQ7aS5zdHlsZS5oZWlnaHQ9Im1heC1jb250ZW50IjtsZXQgdT1NYXRoLmNlaWwoaS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQpO2kuc3R5bGUuaGVpZ2h0PWM7bGV0IGQ9TWF0aC5jZWlsKHdpbmRvdy5pbm5lcldpZHRoKTsoZCE9PW58fHUhPT1vKSYmKG49ZCxvPXUsdGhpcy5zZW5kU2l6ZUNoYW5nZWQoe3dpZHRoOmQsaGVpZ2h0OnV9KSl9KSl9O3MoKTtsZXQgcj1uZXcgUmVzaXplT2JzZXJ2ZXIocyk7cmV0dXJuIHIub2JzZXJ2ZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLHIub2JzZXJ2ZShkb2N1bWVudC5ib2R5KSwoKT0+ci5kaXNjb25uZWN0KCl9YXN5bmMgY29ubmVjdCh0PW5ldyB6JCh3aW5kb3cucGFyZW50LHdpbmRvdy5wYXJlbnQpLG4pe2lmKHRoaXMudHJhbnNwb3J0KXRocm93IEVycm9yKCJBcHAgaXMgYWxyZWFkeSBjb25uZWN0ZWQuIENhbGwgY2xvc2UoKSBiZWZvcmUgY29ubmVjdGluZyBhZ2Fpbi4iKTt0aGlzLl9pbml0aWFsaXplZFNlbnQ9ITEsYXdhaXQgc3VwZXIuY29ubmVjdCh0KTt0cnl7bGV0IG89YXdhaXQgdGhpcy5yZXF1ZXN0KHttZXRob2Q6InVpL2luaXRpYWxpemUiLHBhcmFtczp7YXBwQ2FwYWJpbGl0aWVzOnRoaXMuX2NhcGFiaWxpdGllcyxhcHBJbmZvOnRoaXMuX2FwcEluZm8scHJvdG9jb2xWZXJzaW9uOlQkfX0sVyQsbik7aWYobz09PXZvaWQgMCl0aHJvdyBFcnJvcihgU2VydmVyIHNlbnQgaW52YWxpZCBpbml0aWFsaXplIHJlc3VsdDogJHtvfWApO3RoaXMuX2hvc3RDYXBhYmlsaXRpZXM9by5ob3N0Q2FwYWJpbGl0aWVzLHRoaXMuX2hvc3RJbmZvPW8uaG9zdEluZm8sdGhpcy5faG9zdENvbnRleHQ9by5ob3N0Q29udGV4dCxhd2FpdCB0aGlzLm5vdGlmaWNhdGlvbih7bWV0aG9kOiJ1aS9ub3RpZmljYXRpb25zL2luaXRpYWxpemVkIn0pLHRoaXMuX2luaXRpYWxpemVkU2VudD0hMCx0aGlzLm9wdGlvbnM/LmF1dG9SZXNpemUmJnRoaXMuc2V0dXBTaXplQ2hhbmdlZE5vdGlmaWNhdGlvbnMoKX1jYXRjaChvKXt0aHJvdyB0aGlzLmNsb3NlKCksb319fWNvbnN0IFEkPXtkZToienVyw7xjayIsamE6IuaIu+OCiyIsa286IuuSpOuhnCIsZnI6InJldG91ciIsZXM6InZvbHZlciJ9LFgkPXtkZToiQmV6YWhsZW4iLGphOiLmlK/miZXjgYQiLGtvOiLqsrDsoJwiLGZyOiJQYXllciIsZXM6IlBhZ2FyIn0sZXc9e2RlOiJCdWNoZW4iLGphOiLkuojntIQiLGtvOiLsmIjslb0iLGZyOiJSw6lzZXJ2ZXIiLGVzOiJSZXNlcnZhciJ9LHR3PXtkZToiUmVpc2UiLGphOiLml4XnqIsiLGtvOiLsnbzsoJUiLGZyOiJWb3lhZ2UiLGVzOiJWaWFqZSJ9LG53PXtkZToiSG90ZWwiLGphOiLjg5vjg4bjg6siLGtvOiLtmLjthZQiLGZyOiJIw7R0ZWwiLGVzOiJIb3RlbCJ9LG93PXtkZToiWmltbWVyIixqYToi5a6i5a6kIixrbzoi6rCd7IukIixmcjoiQ2hhbWJyZSIsZXM6IkhhYml0YWNpw7NuIn0sc3c9e2RlOiJTcHJhY2hlIixqYToi6KiA6KqeIixrbzoi7Ja47Ja0IixmcjoiTGFuZ3VlIixlczoiSWRpb21hIn0scnc9e2RlOiJEZW1vIixqYToi44OH44OiIixrbzoi642w66qoIixmcjoiRMOpbW8iLGVzOiJEZW1vIn0sYXc9e2RlOiJHw6RzdGUiLGphOiLkurrmlbAiLGtvOiLsnbjsm5AiLGZyOiJQZXJzb25uZXMiLGVzOiJIdcOpc3BlZGVzIn0saXc9e2RlOiJaaW1tZXIiLGphOiLlrqLlrqQiLGtvOiLqsJ3si6QiLGZyOiJDaGFtYnJlcyIsZXM6IkhhYml0YWNpb25lcyJ9LGN3PXtkZToiRmVydGlnIixqYToi5a6M5LqGIixrbzoi7JmE66OMIixmcjoiVGVybWluw6kiLGVzOiJMaXN0byJ9LGx3PXtkZToiU2NobGllw59lbiIsamE6IumWieOBmOOCiyIsa286IuuLq+q4sCIsZnI6IkZlcm1lciIsZXM6IkNlcnJhciJ9LHV3PXtkZToiU3VjaGVuIixqYToi5qSc57SiIixrbzoi6rKA7IOJIixmcjoiUmVjaGVyY2hlciIsZXM6IkJ1c2NhciJ9LGR3PXtkZToiR3J1cHBlIixqYToi44Kw44Or44O844OXIixrbzoi6re466O5IixmcjoiR3JvdXBlIixlczoiR3J1cG8ifSxodz17ZGU6Ik1hcmtlIixqYToi44OW44Op44Oz44OJIixrbzoi67iM656c65OcIixmcjoiTWFycXVlIixlczoiTWFyY2EifSxwdz17ZGU6IkF1c3N0YXR0dW5nIixqYToi6Kit5YKZIixrbzoi7Iuc7ISkIixmcjoiw4lxdWlwZW1lbnRzIixlczoiU2VydmljaW9zIn0sbXc9e2RlOiJFbXBmb2hsZW4iLGphOiLjgYrjgZnjgZnjgoHpoIYiLGtvOiLstpTsspzsiJwiLGZyOiJSZWNvbW1hbmTDqXMiLGVzOiJSZWNvbWVuZGFkb3MifSxmdz17ZGU6IlNvcnRpZXJlbiIsamE6IuS4puOBueabv+OBiCIsa286IuygleugrCIsZnI6IlRyaWVyIixlczoiT3JkZW5hciJ9LGd3PXtkZToiRmlsdGVyIixqYToi57We44KK6L6844G/Iixrbzoi7ZWE7YSwIixmcjoiRmlsdHJlcyIsZXM6IkZpbHRyb3MifSxidz17ZGU6Ilp1csO8Y2tzZXR6ZW4iLGphOiLjgq/jg6rjgqIiLGtvOiLstIjquLDtmZQiLGZyOiJFZmZhY2VyIixlczoiQm9ycmFyIn0sdnc9e2RlOiJCZXdlcnR1bmciLGphOiLoqZXkvqHpoIYiLGtvOiLtj4nsoJDsiJwiLGZyOiJOb3RlIixlczoiVmFsb3JhY2nDs24ifSxrdz17ZGU6IlNlaXRlbiIsamE6IuODmuODvOOCuCIsa286Iu2OmOydtOyngCIsZnI6IlBhZ2VzIixlczoiUMOhZ2luYXMifSx5dz17ZGU6Ik9ydCIsamE6IuWgtOaJgCIsa286IuychOy5mCIsZnI6IkxpZXUiLGVzOiJMdWdhciJ9LCR3PXtkZToiUmVpaGVuZm9sZ2UiLGphOiLkuKbjgbPpoIYiLGtvOiLsoJXroKwiLGZyOiJPcmRyZSIsZXM6Ik9yZGVuIn0sd3c9e2RlOiJEYXLDvGJlciIsamE6Iui2hemBjiIsa286Iuy0iOqzvCIsZnI6IkF1LWRlc3N1cyIsZXM6IlBvciBlbmNpbWEifSxfdz17ZGU6IkZyw7xoc3TDvGNrIixqYToi5pyd6aOf5LuY44GNIixrbzoi7KGw7IudIO2PrO2VqCIsZnI6IlBldGl0LWTDqWpldW5lciIsZXM6IkRlc2F5dW5vIn0sU3c9e2RlOiJQYWtldCIsamE6IuODkeODg+OCseODvOOCuCIsa286Iu2MqO2CpOyngCIsZnI6IkZvcmZhaXQiLGVzOiJQYXF1ZXRlIn0sanc9e2RlOiJBbmdlYm90IixqYToi44OX44Ot44Oi44O844K344On44OzIixrbzoi7ZSE66Gc66qo7IWYIixmcjoiUHJvbW90aW9uIixlczoiUHJvbW9jacOzbiJ9LFR3PXtkZToiTWl0IEZlbnN0ZXIiLGphOiLnqpPjgYLjgooiLGtvOiLssL3rrLgg7J6I7J2MIixmcjoiQXZlYyBmZW7DqnRyZSIsZXM6IkNvbiB2ZW50YW5hIn0sQXc9e2RlOiJTdGFkdGJsaWNrIixqYToi44K344OG44Kj44OT44Ol44O8Iixrbzoi7Iuc7Yuw67ewIixmcjoiVnVlIHN1ciBsYSB2aWxsZSIsZXM6IlZpc3RhcyBhIGxhIGNpdWRhZCJ9LHp3PXtkZToiQW5rdW5mdCIsamE6IuWIsOedgCIsa286IuuPhOywqSIsZnI6IkFycml2w6llIixlczoiTGxlZ2FkYSJ9LEN3PXtkZToiUHLDvGZlbiIsamE6IueiuuiqjeOBuCIsa286Iu2ZleyduO2VmOq4sCIsZnI6IlbDqXJpZmllciIsZXM6IlJldmlzYXIifSxOdz17ZGU6IlJlc2VydmllcmVuIixqYToi5LqI57SE44GZ44KLIixrbzoi7JiI7JW97ZWY6riwIixmcjoiUsOpc2VydmVyIixlczoiUmVzZXJ2YXIifSxQdz17ZGU6IkF1c2dlYnVjaHQiLGphOiLmuoDlrqQiLGtvOiLrp4zsi6QiLGZyOiJDb21wbGV0IixlczoiQ29tcGxldG8ifSx4dz17ZGU6IkJlc3RwcmVpcyIsamE6IuacgOWuiSIsa286Iuy1nOyggCIsZnI6Ik1laWxsZXVyIHByaXgiLGVzOiJNZWpvciBwcmVjaW8ifSxJdz17ZGU6IsOcYmVybmFjaHR1bmciLGphOiLlrr/ms4oiLGtvOiLsiJnrsJUiLGZyOiJOdWl0w6llIixlczoiUG9yIG5vY2hlcyJ9LFJ3PXtkZToicHJvIFN0w7xjayIsamE6IjHngrnjgYLjgZ/jgooiLGtvOiLqsJzri7kiLGZyOiJs4oCZdW5pdMOpIixlczoiY2FkYSB1bm8ifSxFdz17ZGU6Ik1lbmdlIixqYToi5pWw6YePIixrbzoi7IiY65+JIixmcjoiUXVhbnRpdMOpIixlczoiQ2FudGlkYWQifSxPdz17ZGU6Iklua2x1c2l2ZSIsamE6Iui+vOOBvyIsa286Iu2PrO2VqCIsZnI6IkluY2x1cyIsZXM6IkluY2x1aWRvIn0sWnc9e2RlOiJHZXNhbXQiLGphOiLlkIjoqIgiLGtvOiLtlanqs4QiLGZyOiJUb3RhbCIsZXM6IlRvdGFsIn0sTXc9e2RlOiJCZXR0IixqYToi44OZ44OD44OJIixrbzoi7Lmo64yAIixmcjoiTGl0IixlczoiQ2FtYSJ9LHF3PXtkZToiRXRhZ2UiLGphOiLpmo7mlbAiLGtvOiLsuLUiLGZyOiLDiXRhZ2UiLGVzOiJQbGFudGEifSxEdz17ZGU6IkF1w59lcmRlbSIsamE6IuOBneOBruS7liIsa286Iuq4sO2DgCIsZnI6IkF1dHJlcyIsZXM6Ik90cm9zIn0sTHc9e2RlOiJFLU1haWwiLGphOiLjg6Hjg7zjg6vjgqLjg4njg6zjgrkiLGtvOiLsnbTrqZTsnbwiLGZyOiJFLW1haWwiLGVzOiJDb3JyZW8gZWxlY3Ryw7NuaWNvIn0sQnc9e2RlOiJUZWxlZm9uIixqYToi6Zu76Kmx55Wq5Y+3Iixrbzoi7KCE7ZmU67KI7Zi4IixmcjoiVMOpbMOpcGhvbmUiLGVzOiJUZWzDqWZvbm8ifSxIdz17ZGU6ImZyZWl3aWxsaWciLGphOiLku7vmhI8iLGtvOiLshKDtg50iLGZyOiJmYWN1bHRhdGlmIixlczoib3BjaW9uYWwifSxGdz17ZGU6Ik5hY2huYW1lIixqYToi5aeTIixrbzoi7ISxIixmcjoiTm9tIixlczoiQXBlbGxpZG8ifSxVdz17ZGU6IkFuZ2VmcmFndCIsamE6IuS+nemgvOa4iOOBvyIsa286IuyalOyyreuQqCIsZnI6IkRlbWFuZMOpZSIsZXM6IlNvbGljaXRhZGEifSxWdz17ZGU6IkJlc3TDpHRpZ3QiLGphOiLnorrlrpoiLGtvOiLtmZXsoJUiLGZyOiJDb25maXJtw6llIixlczoiQ29uZmlybWFkYSJ9LFd3PXtkZToiU3Rvcm5pZXJ0IixqYToi44Kt44Oj44Oz44K744Or5riI44G/Iixrbzoi7Leo7IaM65CoIixmcjoiQW5udWzDqWUiLGVzOiJDYW5jZWxhZGEifSxLdz17ZGU6IkFiZ2VsYXVmZW4iLGphOiLmnJ/pmZDliIfjgowiLGtvOiLrp4zro4zrkKgiLGZyOiJFeHBpcsOpZSIsZXM6IkNhZHVjYWRhIn0sR3c9e2RlOiJTdG9ybmllcmVuIixqYToi44Kt44Oj44Oz44K744OrIixrbzoi7Leo7IaMIixmcjoiQW5udWxlciIsZXM6IkNhbmNlbGFyIn0sSnc9e2RlOiJTdG9ybmllcnVuZyIsamE6IuOCreODo+ODs+OCu+ODq+aJi+e2muOBjSIsa286Iuy3qOyGjCDsp4TtlokiLGZyOiJBbm51bGF0aW9uIixlczoiQ2FuY2VsYWNpw7NuIn0sWXc9e2RlOiJHZcOkbmRlcnQiLGphOiLlpInmm7TmuIjjgb8iLGtvOiLrs4Dqsr3rkKgiLGZyOiJNb2RpZmnDqWUiLGVzOiJNb2RpZmljYWRhIn0sUXc9e2RlOiJCdWNodW5nIMOkbmRlcm4iLGphOiLkuojntITjga7lpInmm7QiLGtvOiLsmIjslb0g67OA6rK9IixmcjoiTW9kaWZpY2F0aW9uIixlczoiQ2FtYmlvIGRlIGxhIHJlc2VydmEifSxYdz17ZGU6IlZvcmhlciIsamE6IuWkieabtOWJjSIsa286Iuq4sOyhtCIsZnI6IkF2YW50IixlczoiQW50ZXMifSxlXz17ZGU6IkpldHp0IixqYToi54++5ZyoIixrbzoi7ZiE7J6sIixmcjoiTWFpbnRlbmFudCIsZXM6IkFob3JhIn0sdF89e2RlOiJQZXJzb25lbiIsamE6IuWumuWToSIsa286IuyImOyaqSDsnbjsm5AiLGZyOiJDYXBhY2l0w6kiLGVzOiJDYXBhY2lkYWQifSxuXz17ZGU6IkFiIixqYToi5pyA5L2O5paZ6YeRIixrbzoi7LWc7KCA6rCAIixmcjoiw4AgcGFydGlyIGRlIixlczoiRGVzZGUifSxvXz17ZGU6IkphIixqYToi44GC44KKIixrbzoi7JiIIixmcjoiT3VpIixlczoiU8OtIn0sc189e2RlOiJOZWluIixqYToi44Gq44GXIixrbzoi7JWE64uI7JqUIixmcjoiTm9uIixlczoiTm8ifSxyXz17ZGU6IkhvdGVscyIsamE6IuODm+ODhuODqyIsa286Iu2YuO2FlCIsZnI6IkjDtHRlbHMiLGVzOiJIb3RlbGVzIn0sYV89e2RlOiJBbHMgTsOkY2hzdGVzIixqYToi5qyh44Gu44K544OG44OD44OXIixrbzoi64uk7J2MIOuLqOqzhCIsZnI6IkVuc3VpdGUiLGVzOiJBIGNvbnRpbnVhY2nDs24ifSxpXz17ZGU6IkUtTWFpbCIsamE6IuODoeODvOODq+OCouODieODrOOCuSIsa286IuydtOuplOydvCIsZnI6ImUtbWFpbCIsZXM6ImNvcnJlbyBlbGVjdHLDs25pY28ifSxjXz17ZGU6IlRlbGVmb25udW1tZXIiLGphOiLpm7voqbHnlarlj7ciLGtvOiLsoITtmZTrsojtmLgiLGZyOiJ0w6lsw6lwaG9uZSIsZXM6InRlbMOpZm9ubyJ9LGxfPXsiezB9IHNpZGUgYnkgc2lkZSI6e2RlOiJ7MH0gaW0gVmVyZ2xlaWNoIixqYToiezB96LuS44KS5q+U6LyDIixrbzoiezB96rOzIOu5hOq1kCIsZnI6InswfSBjw7R0ZSDDoCBjw7R0ZSIsZXM6InswfSBjb21wYXJhZG9zIn0sInRoZSBwbGFuIjp7ZGU6ImRpZSBSZWlzZXBsYW51bmciLGphOiLml4XnqIvjg5fjg6njg7MiLGtvOiLsl6ztlokg6rOE7ZqNIixmcjoibGUgcHJvZ3JhbW1lIixlczoiZWwgcGxhbiJ9LCJ0aGUgc2VhcmNoIjp7ZGU6ImRpZSBTdWNoZSIsamE6IuaknOe0oiIsa286IuqygOyDiSIsZnI6ImxhIHJlY2hlcmNoZSIsZXM6ImxhIGLDunNxdWVkYSJ9LCJhbGwgZGVzdGluYXRpb25zIjp7ZGU6ImFsbGUgUmVpc2V6aWVsZSIsamE6IuOBmeOBueOBpuOBruihjOOBjeWFiCIsa286IuyghOyytCDrqqnsoIHsp4AiLGZyOiJ0b3V0ZXMgbGVzIGRlc3RpbmF0aW9ucyIsZXM6InRvZG9zIGxvcyBkZXN0aW5vcyJ9LCJ7MH0gaG90ZWxzIjp7ZGU6InswfSBIb3RlbHMiLGphOiJ7MH3ou5Ljga7jg5vjg4bjg6siLGtvOiLtmLjthZQgezB96rOzIixmcjoiezB9IGjDtHRlbHMiLGVzOiJ7MH0gaG90ZWxlcyJ9LCJ0aGUgaG90ZWwiOntkZToiZGFzIEhvdGVsIixqYToi44Ob44OG44OrIixrbzoi7Zi47YWUIixmcjoibOKAmWjDtHRlbCIsZXM6ImVsIGhvdGVsIn0sInRoZSBjYW5jZWxsYXRpb24iOntkZToiZGllIFN0b3JuaWVydW5nIixqYToi44Kt44Oj44Oz44K744OrIixrbzoi7Leo7IaMIixmcjoibOKAmWFubnVsYXRpb24iLGVzOiJsYSBjYW5jZWxhY2nDs24ifSwidGhlIGNoYW5nZSI6e2RlOiJkaWUgw4RuZGVydW5nIixqYToi5aSJ5pu0Iixrbzoi67OA6rK9IixmcjoibGEgbW9kaWZpY2F0aW9uIixlczoiZWwgY2FtYmlvIn0sInlvdXIgbWVtYmVyc2hpcCI6e2RlOiJJaHJlIE1pdGdsaWVkc2NoYWZ0IixqYToi5Lya5ZOh5oOF5aCxIixrbzoi7ZqM7JuQIOygleuztCIsZnI6InZvdHJlIGFkaMOpc2lvbiIsZXM6InN1IG1lbWJyZXPDrWEifSwiYWRkLW9ucyBmb3IgezB9Ijp7ZGU6IkV4dHJhcyBmw7xyIHswfSIsamE6InswfeOBruOCquODl+OCt+ODp+ODsyIsa286InswfSDstpTqsIAg7ISc67mE7IqkIixmcjoib3B0aW9ucyBwb3VyIHswfSIsZXM6ImV4dHJhcyBwYXJhIHswfSJ9LCJ7MH0gYWRkLW9ucyI6e2RlOiJFeHRyYXMgdm9uIHswfSIsamE6InswfeOBruOCquODl+OCt+ODp+ODsyIsa286InswfSDstpTqsIAg7ISc67mE7IqkIixmcjoib3B0aW9ucyBkZSB7MH0iLGVzOiJleHRyYXMgZGUgezB9In0sInRoZSBob3RlbCBhZGQtb25zIjp7ZGU6ImRpZSBFeHRyYXMgZGVzIEhvdGVscyIsamE6IuODm+ODhuODq+OBruOCquODl+OCt+ODp+ODsyIsa286Iu2YuO2FlCDstpTqsIAg7ISc67mE7IqkIixmcjoibGVzIG9wdGlvbnMgZGUgbOKAmWjDtHRlbCIsZXM6ImxvcyBleHRyYXMgZGVsIGhvdGVsIn0sInRoZSB0cmlwIjp7ZGU6ImRpZSBSZWlzZSIsamE6IuaXheeoiyIsa286IuyXrO2WiSDsnbzsoJUiLGZyOiJsZSB2b3lhZ2UiLGVzOiJlbCB2aWFqZSJ9LCJ5b3VyIGJvb2tpbmdzIjp7ZGU6IklocmUgQnVjaHVuZ2VuIixqYToi5LqI57SE5LiA6KanIixrbzoi64K0IOyYiOyVvSIsZnI6InZvcyByw6lzZXJ2YXRpb25zIixlczoic3VzIHJlc2VydmFzIn0sInRoZSBwb2xpY2llcyI6e2RlOiJkaWUgUmljaHRsaW5pZW4iLGphOiLjg53jg6rjgrfjg7wiLGtvOiLsoJXssYUiLGZyOiJsZXMgY29uZGl0aW9ucyIsZXM6ImxhcyBwb2zDrXRpY2FzIn0sYmFjazpRJCxQYXk6WCQsQm9vazpldywiMSBuaWdodCI6e2RlOiIxIE5hY2h0IixqYToiMeaziiIsa286IjHrsJUiLGZyOiIxIG51aXQiLGVzOiIxIG5vY2hlIn0sInswfSBuaWdodHMiOntkZToiezB9IE7DpGNodGUiLGphOiJ7MH3ms4oiLGtvOiJ7MH3rsJUiLGZyOiJ7MH0gbnVpdHMiLGVzOiJ7MH0gbm9jaGVzIn0sIjEgaG91ciI6e2RlOiIxIFN0dW5kZSIsamE6IjHmmYLplpMiLGtvOiIx7Iuc6rCEIixmcjoiMSBoZXVyZSIsZXM6IjEgaG9yYSJ9LCJ7MH0gaG91cnMiOntkZToiezB9IFN0dW5kZW4iLGphOiJ7MH3mmYLplpMiLGtvOiJ7MH3si5zqsIQiLGZyOiJ7MH0gaGV1cmVzIixlczoiezB9IGhvcmFzIn0sIjEgcm9vbSI6e2RlOiIxIFppbW1lciIsamE6IjHlrqQiLGtvOiLqsJ3si6QgMeqwnCIsZnI6IjEgY2hhbWJyZSIsZXM6IjEgaGFiaXRhY2nDs24ifSwiezB9IHJvb21zIjp7ZGU6InswfSBaaW1tZXIiLGphOiJ7MH3lrqQiLGtvOiLqsJ3si6QgezB96rCcIixmcjoiezB9IGNoYW1icmVzIixlczoiezB9IGhhYml0YWNpb25lcyJ9LCJSYXRlZCB7MH0gYnkgezF9IGd1ZXN0cyI6e2RlOiJCZXdlcnRldCBtaXQgezB9IHZvbiB7MX0gR8Okc3RlbiIsamE6IuipleS+oSB7MH3vvIh7MX3ku7bjga7jg6zjg5Pjg6Xjg7zvvIkiLGtvOiLtj4nsoJAgezB9ICjtm4TquLAgezF96rCcKSIsZnI6Ik5vdMOpIHswfSBwYXIgezF9IGNsaWVudHMiLGVzOiJWYWxvcmFkbyBjb24gezB9IHBvciB7MX0gaHXDqXNwZWRlcyJ9LCJCYWNrIHRvIHRoZSBob3RlbHMiOntkZToiWnVyw7xjayB6dSBkZW4gSG90ZWxzIixqYToi44Ob44OG44Or5LiA6Kan44Gr5oi744KLIixrbzoi7Zi47YWUIOuqqeuhneycvOuhnCIsZnI6IlJldG91ciBhdXggaMO0dGVscyIsZXM6IlZvbHZlciBhIGxvcyBob3RlbGVzIn0sIlZpZXcgdGhlIHRyaXAiOntkZToiUmVpc2UgYW5zZWhlbiIsamE6IuaXheeoi+OCkuimi+OCiyIsa286IuyXrO2WiSDsnbzsoJUg67O06riwIixmcjoiVm9pciBsZSB2b3lhZ2UiLGVzOiJWZXIgZWwgdmlhamUifSxUcmlwOnR3LCJCb29raW5nIHN0ZXBzIjp7ZGU6IkJ1Y2h1bmdzc2Nocml0dGUiLGphOiLkuojntITjga7miYvpoIYiLGtvOiLsmIjslb0g64uo6rOEIixmcjoiw4l0YXBlcyBkZSByw6lzZXJ2YXRpb24iLGVzOiJQYXNvcyBkZSBsYSByZXNlcnZhIn0sSG90ZWw6bncsUm9vbTpvdyxMYW5ndWFnZTpzdywiQSB0ZXN0IGNvcHkgb2YgezB9J3Mgc3lzdGVtIOKAlCBub3RoaW5nIGhlcmUgaXMgYSByZWFsIGJvb2tpbmcuIjp7ZGU6IkVpbmUgVGVzdGtvcGllIGRlcyBTeXN0ZW1zIHZvbiB7MH0g4oCUIGhpZXIgaXN0IG5pY2h0cyBlaW5lIGVjaHRlIEJ1Y2h1bmcuIixqYToiezB944Gu44K344K544OG44Og44Gu44OG44K544OI54mI44Gn44GZ44CC44GT44GT44Gn44Gu5LqI57SE44Gv5a6f6Zqb44Gu5LqI57SE44Gn44Gv44GC44KK44G+44Gb44KT44CCIixrbzoiezB9IOyLnOyKpO2FnOydmCDthYzsiqTtirgg7IKs67O47J6F64uI64ukLiDsl6zquLDshJwg7ZWcIOyYiOyVveydgCDsi6TsoJwg7JiI7JW97J20IOyVhOuLmeuLiOuLpC4iLGZyOiJVbmUgY29waWUgZGUgdGVzdCBkdSBzeXN0w6htZSBkZSB7MH0g4oCUIHJpZW4gaWNpIG7igJllc3QgdW5lIHZyYWllIHLDqXNlcnZhdGlvbi4iLGVzOiJVbmEgY29waWEgZGUgcHJ1ZWJhIGRlbCBzaXN0ZW1hIGRlIHswfTogbmFkYSBhcXXDrSBlcyB1bmEgcmVzZXJ2YSByZWFsLiJ9LCJBIHRlc3QgY29weSBvZiB0aGUgaG90ZWwncyBzeXN0ZW0g4oCUIG5vdGhpbmcgaGVyZSBpcyBhIHJlYWwgYm9va2luZy4iOntkZToiRWluZSBUZXN0a29waWUgZGVzIEhvdGVsc3lzdGVtcyDigJQgaGllciBpc3QgbmljaHRzIGVpbmUgZWNodGUgQnVjaHVuZy4iLGphOiLjg5vjg4bjg6vjga7jgrfjgrnjg4bjg6Djga7jg4bjgrnjg4jniYjjgafjgZnjgILjgZPjgZPjgafjga7kuojntITjga/lrp/pmpvjga7kuojntITjgafjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLtmLjthZQg7Iuc7Iqk7YWc7J2YIO2FjOyKpO2KuCDsgqzrs7jsnoXri4jri6QuIOyXrOq4sOyEnCDtlZwg7JiI7JW97J2AIOyLpOygnCDsmIjslb3snbQg7JWE64uZ64uI64ukLiIsZnI6IlVuZSBjb3BpZSBkZSB0ZXN0IGR1IHN5c3TDqG1lIGRlIGzigJlow7R0ZWwg4oCUIHJpZW4gaWNpIG7igJllc3QgdW5lIHZyYWllIHLDqXNlcnZhdGlvbi4iLGVzOiJVbmEgY29waWEgZGUgcHJ1ZWJhIGRlbCBzaXN0ZW1hIGRlbCBob3RlbDogbmFkYSBhcXXDrSBlcyB1bmEgcmVzZXJ2YSByZWFsLiJ9LCJTYW1wbGUgcmF0ZXMgYW5kIHJvb21zIOKAlCBub3RoaW5nIGhlcmUgY2FuIHJlYWxseSBiZSBib29rZWQuIjp7ZGU6IkJlaXNwaWVscHJlaXNlIHVuZCAtemltbWVyIOKAlCBoaWVyIGthbm4gbmljaHRzIHdpcmtsaWNoIGdlYnVjaHQgd2VyZGVuLiIsamE6IuOCteODs+ODl+ODq+OBruaWmemHkeOBqOWuouWupOOBp+OBmeOAguWun+mam+OBq+OBr+S6iOe0hOOBp+OBjeOBvuOBm+OCk+OAgiIsa286IuyYiOyLnCDsmpTquIjqs7wg6rCd7Iuk7J6F64uI64ukLiDsi6TsoJzroZwg7JiI7JW97ZWgIOyImCDsl4bsirXri4jri6QuIixmcjoiVGFyaWZzIGV0IGNoYW1icmVzIGTigJlleGVtcGxlIOKAlCByaWVuIGljaSBuZSBwZXV0IHZyYWltZW50IMOqdHJlIHLDqXNlcnbDqS4iLGVzOiJUYXJpZmFzIHkgaGFiaXRhY2lvbmVzIGRlIGVqZW1wbG86IGFxdcOtIG5vIHNlIHB1ZWRlIHJlc2VydmFyIGRlIHZlcmRhZC4ifSxEZW1vOnJ3LCJPbmUgZmV3ZXIgezB9Ijp7ZGU6IkVpbiB7MH0gd2VuaWdlciIsamE6InswfeOCkjHlrqTmuJvjgonjgZkiLGtvOiJ7MH0gMeqwnCDspITsnbTquLAiLGZyOiJVbiB7MH0gZGUgbW9pbnMiLGVzOiJVbmEgezB9IG1lbm9zIn0sIk9uZSBtb3JlIHswfSI6e2RlOiJFaW4gezB9IG1laHIiLGphOiJ7MH3jgpIx5a6k5aKX44KE44GZIixrbzoiezB9IDHqsJwg64qY66as6riwIixmcjoiVW4gezB9IGRlIHBsdXMiLGVzOiJVbmEgezB9IG3DoXMifSwiQWRkIHswfSI6e2RlOiJ7MH0gaGluenVmw7xnZW4iLGphOiJ7MH3jgpLov73liqAiLGtvOiJ7MH0g7LaU6rCAIixmcjoiQWpvdXRlciB7MH0iLGVzOiJBw7FhZGlyIHswfSJ9LCIxIGd1ZXN0IHBlciByb29tIMK3IHswfSByb29tcyI6e2RlOiIxIEdhc3QgcHJvIFppbW1lciDCtyB7MH0gWmltbWVyIixqYToiMeWupDHlkI0gwrcgezB95a6kIixrbzoi6rCd7Iuk64u5IDHrqoUgwrcg6rCd7IukIHswfeqwnCIsZnI6IjEgcGVyc29ubmUgcGFyIGNoYW1icmUgwrcgezB9IGNoYW1icmVzIixlczoiMSBodcOpc3BlZCBwb3IgaGFiaXRhY2nDs24gwrcgezB9IGhhYml0YWNpb25lcyJ9LCJ7MH0gZ3Vlc3RzIHBlciByb29tIMK3IHsxfSByb29tcyI6e2RlOiJ7MH0gR8Okc3RlIHBybyBaaW1tZXIgwrcgezF9IFppbW1lciIsamE6IjHlrqR7MH3lkI0gwrcgezF95a6kIixrbzoi6rCd7Iuk64u5IHswfeuqhSDCtyDqsJ3si6QgezF96rCcIixmcjoiezB9IHBlcnNvbm5lcyBwYXIgY2hhbWJyZSDCtyB7MX0gY2hhbWJyZXMiLGVzOiJ7MH0gaHXDqXNwZWRlcyBwb3IgaGFiaXRhY2nDs24gwrcgezF9IGhhYml0YWNpb25lcyJ9LCIxIGd1ZXN0IMK3IDEgcm9vbSI6e2RlOiIxIEdhc3QgwrcgMSBaaW1tZXIiLGphOiIx5ZCNIMK3IDHlrqQiLGtvOiIx66qFIMK3IOqwneyLpCAx6rCcIixmcjoiMSBwZXJzb25uZSDCtyAxIGNoYW1icmUiLGVzOiIxIGh1w6lzcGVkIMK3IDEgaGFiaXRhY2nDs24ifSwiezB9IGd1ZXN0cyDCtyAxIHJvb20iOntkZToiezB9IEfDpHN0ZSDCtyAxIFppbW1lciIsamE6InswfeWQjSDCtyAx5a6kIixrbzoiezB966qFIMK3IOqwneyLpCAx6rCcIixmcjoiezB9IHBlcnNvbm5lcyDCtyAxIGNoYW1icmUiLGVzOiJ7MH0gaHXDqXNwZWRlcyDCtyAxIGhhYml0YWNpw7NuIn0sIkd1ZXN0cyBhbmQgcm9vbXMiOntkZToiR8Okc3RlIHVuZCBaaW1tZXIiLGphOiLkurrmlbDjgajpg6jlsYvmlbAiLGtvOiLsnbjsm5Ag67CPIOqwneyLpCIsZnI6IlBlcnNvbm5lcyBldCBjaGFtYnJlcyIsZXM6Ikh1w6lzcGVkZXMgeSBoYWJpdGFjaW9uZXMifSxHdWVzdHM6YXcsIkd1ZXN0cyBpbiBlYWNoIHJvb20iOntkZToiR8Okc3RlIHBybyBaaW1tZXIiLGphOiIx5a6k44GC44Gf44KK44Gu5Lq65pWwIixrbzoi6rCd7Iuk64u5IOyduOybkCIsZnI6IlBlcnNvbm5lcyBwYXIgY2hhbWJyZSIsZXM6Ikh1w6lzcGVkZXMgcG9yIGhhYml0YWNpw7NuIn0sIk9uZSBmZXdlciBndWVzdCI6e2RlOiJFaW4gR2FzdCB3ZW5pZ2VyIixqYToiMeWQjea4m+OCieOBmSIsa286IjHrqoUg7KSE7J206riwIixmcjoiVW5lIHBlcnNvbm5lIGRlIG1vaW5zIixlczoiVW4gaHXDqXNwZWQgbWVub3MifSwiT25lIG1vcmUgZ3Vlc3QiOntkZToiRWluIEdhc3QgbWVociIsamE6IjHlkI3lopfjgoTjgZkiLGtvOiIx66qFIOuKmOumrOq4sCIsZnI6IlVuZSBwZXJzb25uZSBkZSBwbHVzIixlczoiVW4gaHXDqXNwZWQgbcOhcyJ9LFJvb21zOml3LCJPbmUgZmV3ZXIgcm9vbSI6e2RlOiJFaW4gWmltbWVyIHdlbmlnZXIiLGphOiIx5a6k5rib44KJ44GZIixrbzoi6rCd7IukIDHqsJwg7KSE7J206riwIixmcjoiVW5lIGNoYW1icmUgZGUgbW9pbnMiLGVzOiJVbmEgaGFiaXRhY2nDs24gbWVub3MifSwiT25lIG1vcmUgcm9vbSI6e2RlOiJFaW4gWmltbWVyIG1laHIiLGphOiIx5a6k5aKX44KE44GZIixrbzoi6rCd7IukIDHqsJwg64qY66as6riwIixmcjoiVW5lIGNoYW1icmUgZGUgcGx1cyIsZXM6IlVuYSBoYWJpdGFjacOzbiBtw6FzIn0sIkNob29zZSBhIGRhdGUiOntkZToiRGF0dW0gd8OkaGxlbiIsamE6IuaXpeS7mOOCkumBuOOBtiIsa286IuuCoOynnCDshKDtg50iLGZyOiJDaG9pc2lyIHVuZSBkYXRlIixlczoiRWxlZ2lyIHVuYSBmZWNoYSJ9LCJBZGQgZGF0ZSI6e2RlOiJEYXR1bSB3w6RobGVuIixqYToi5pel5LuY44KS6YG444G2Iixrbzoi64Kg7KecIOyEoO2DnSIsZnI6IkNob2lzaXIgbGEgZGF0ZSIsZXM6IkVsZWdpciBmZWNoYSJ9LCJDaGFuZ2UgdGhlIGRhdGVzIjp7ZGU6IkRhdGVuIMOkbmRlcm4iLGphOiLml6XnqIvjgpLlpInmm7QiLGtvOiLrgqDsp5wg67OA6rK9IixmcjoiTW9kaWZpZXIgbGVzIGRhdGVzIixlczoiQ2FtYmlhciBsYXMgZmVjaGFzIn0sIkNoZWNrLWluIjp7ZGU6IkFucmVpc2UiLGphOiLjg4Hjgqfjg4Pjgq/jgqTjg7MiLGtvOiLssrTtgazsnbgiLGZyOiJBcnJpdsOpZSIsZXM6IkxsZWdhZGEifSwiQ2hlY2stb3V0Ijp7ZGU6IkFicmVpc2UiLGphOiLjg4Hjgqfjg4Pjgq/jgqLjgqbjg4giLGtvOiLssrTtgazslYTsm4MiLGZyOiJEw6lwYXJ0IixlczoiU2FsaWRhIn0sIkNob29zZSBjaGVjay1pbiI6e2RlOiJBbnJlaXNldGFnIHfDpGhsZW4iLGphOiLjg4Hjgqfjg4Pjgq/jgqTjg7Pml6XjgpLpgbjjgbYiLGtvOiLssrTtgazsnbgg64Kg7KecIOyEoO2DnSIsZnI6IkNob2lzaXIgbOKAmWFycml2w6llIixlczoiRWxlZ2lyIGxhIGxsZWdhZGEifSwiQ2hvb3NlIGNoZWNrLW91dCI6e2RlOiJBYnJlaXNldGFnIHfDpGhsZW4iLGphOiLjg4Hjgqfjg4Pjgq/jgqLjgqbjg4jml6XjgpLpgbjjgbYiLGtvOiLssrTtgazslYTsm4Mg64Kg7KecIOyEoO2DnSIsZnI6IkNob2lzaXIgbGUgZMOpcGFydCIsZXM6IkVsZWdpciBsYSBzYWxpZGEifSwiLCBjaGVjay1pbiI6e2RlOiIsIEFucmVpc2UiLGphOiLjgIHjg4Hjgqfjg4Pjgq/jgqTjg7MiLGtvOiIsIOyytO2BrOyduCIsZnI6IiwgYXJyaXbDqWUiLGVzOiIsIGxsZWdhZGEifSwiLCBjaGVjay1vdXQiOntkZToiLCBBYnJlaXNlIixqYToi44CB44OB44Kn44OD44Kv44Ki44Km44OIIixrbzoiLCDssrTtgazslYTsm4MiLGZyOiIsIGTDqXBhcnQiLGVzOiIsIHNhbGlkYSJ9LCIsIGZyb20gezB9Ijp7ZGU6IiwgYWIgezB9IixqYToi44CBezB944GL44KJIixrbzoiLCB7MH3rtoDthLAiLGZyOiIsIMOgIHBhcnRpciBkZSB7MH0iLGVzOiIsIGRlc2RlIHswfSJ9LCJQcmV2aW91cyBtb250aCI6e2RlOiJWb3JoZXJpZ2VyIE1vbmF0IixqYToi5YmN44Gu5pyIIixrbzoi7J207KCEIOuLrCIsZnI6Ik1vaXMgcHLDqWPDqWRlbnQiLGVzOiJNZXMgYW50ZXJpb3IifSwiTmV4dCBtb250aCI6e2RlOiJOw6RjaHN0ZXIgTW9uYXQiLGphOiLmrKHjga7mnIgiLGtvOiLri6TsnYwg64usIixmcjoiTW9pcyBzdWl2YW50IixlczoiTWVzIHNpZ3VpZW50ZSJ9LCJMb3dlc3Q6IGFycml2ZSB7MH0sIGZyb20gezF9Ijp7ZGU6IkFtIGfDvG5zdGlnc3RlbjogQW5yZWlzZSB7MH0sIGFiIHsxfSIsamE6IuacgOWuie+8mnswfeODgeOCp+ODg+OCr+OCpOODs+OAgXsxfeOBi+OCiSIsa286Iuy1nOyggOqwgDogezB9IOyytO2BrOyduCwgezF967aA7YSwIixmcjoiTGUgbW9pbnMgY2hlciA6IGFycml2w6llIHswfSwgw6AgcGFydGlyIGRlIHsxfSIsZXM6IkxvIG3DoXMgYmFyYXRvOiBsbGVnYWRhIHswfSwgZGVzZGUgezF9In0sIlRhcCB0aGUgbmlnaHQgeW91IGFycml2ZS4iOntkZToiVGlwcGVuIFNpZSBhdWYgZGVuIEFucmVpc2V0YWcuIixqYToi44OB44Kn44OD44Kv44Kk44Oz44GZ44KL5pel44KS44K/44OD44OX44GX44Gm44GP44Gg44GV44GE44CCIixrbzoi7LK07YGs7J247ZWgIOuCoOynnOulvCDriITrpbTshLjsmpQuIixmcjoiVG91Y2hleiBsZSBqb3VyIGTigJlhcnJpdsOpZS4iLGVzOiJUb3F1ZSBlbCBkw61hIGRlIGxsZWdhZGEuIn0sIlRhcCB0aGUgbW9ybmluZyB5b3UgbGVhdmUuIjp7ZGU6IlRpcHBlbiBTaWUgYXVmIGRlbiBBYnJlaXNldGFnLiIsamE6IuODgeOCp+ODg+OCr+OCouOCpuODiOOBmeOCi+aXpeOCkuOCv+ODg+ODl+OBl+OBpuOBj+OBoOOBleOBhOOAgiIsa286IuyytO2BrOyVhOybg+2VoCDrgqDsp5zrpbwg64iE66W07IS47JqULiIsZnI6IlRvdWNoZXogbGUgam91ciBkZSBkw6lwYXJ0LiIsZXM6IlRvcXVlIGVsIGTDrWEgZGUgc2FsaWRhLiJ9LCJQcmljZXM6IHswfSBmcm9tIHRoYXQgZGF5LCB0YXhlcyBpbi4gRGF5cyB3aXRob3V0IG9uZSB3ZXJlIG5vdCBxdW90ZWQuIjp7ZGU6IlByZWlzZTogezB9IGFiIGRpZXNlbSBUYWcsIGlua2wuIFN0ZXVlcm4uIFRhZ2Ugb2huZSBQcmVpcyB3dXJkZW4gbmljaHQgYW5nZWZyYWd0LiIsamE6IuaWmemHke+8muOBneOBruaXpeOBi+OCieOBrnswfeOAgeeojui+vOOBv+OAguaWmemHkeOBruOBquOBhOaXpeOBr+imi+epjeOCguOCiuOBl+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuyalOq4iDog6re464Kg67aA7YSwIHswfSwg7IS46riIIO2PrO2VqC4g7JqU6riI7J20IOyXhuuKlCDrgqDsnYAg7KGw7ZqM7ZWY7KeAIOyViuyVmOyKteuLiOuLpC4iLGZyOiJQcml4IDogezB9IMOgIHBhcnRpciBkZSBjZSBqb3VyLCB0YXhlcyBjb21wcmlzZXMuIExlcyBqb3VycyBzYW5zIHByaXggbuKAmW9udCBwYXMgw6l0w6kgY2hpZmZyw6lzLiIsZXM6IlByZWNpb3M6IHswfSBkZXNkZSBlc2UgZMOtYSwgaW1wdWVzdG9zIGluY2x1aWRvcy4gTG9zIGTDrWFzIHNpbiBwcmVjaW8gbm8gc2UgY290aXphcm9uLiJ9LERvbmU6Y3csQ2xvc2U6bHcsU2VhcmNoOnV3LCJBIGNpdHksIGEgY291bnRyeSBvciBhIGhvdGVsIjp7ZGU6IlN0YWR0LCBMYW5kIG9kZXIgSG90ZWwiLGphOiLpg73luILjg7vlm73jg7vjg5vjg4bjg6vlkI0iLGtvOiLrj4Tsi5wsIOq1reqwgCDrmJDripQg7Zi47YWUIixmcjoiVW5lIHZpbGxlLCB1biBwYXlzIG91IHVuIGjDtHRlbCIsZXM6IlVuYSBjaXVkYWQsIHVuIHBhw61zIG8gdW4gaG90ZWwifSwiV2hlcmUgdG8iOntkZToiUmVpc2V6aWVsIixqYToi6KGM44GN5YWIIixrbzoi66qp7KCB7KeAIixmcjoiRGVzdGluYXRpb24iLGVzOiJEZXN0aW5vIn0sIkFsbCB7MH0gaW4gezF9Ijp7ZGU6IkFsbGUgezB9IGluIHsxfSIsamE6InsxfeOBrnswfeOBmeOBueOBpiIsa286InsxfeydmCB7MH0g7KCE7LK0IixmcjoiVG91cyBsZXMgezB9IMOgIHsxfSIsZXM6IlRvZG9zIGxvcyB7MH0gZW4gezF9In0sIldoZXJlIHRvPyI6e2RlOiJXb2hpbiBzb2xsIGVzIGdlaGVuPyIsamE6IuOBqeOBk+OBq+aziuOBvuOCiuOBvuOBmeOBi++8nyIsa286IuyWtOuUlOyXkCDrqLjrrLTsi5zrgpjsmpQ/IixmcjoiT8O5IGFsbGV6LXZvdXMgPyIsZXM6IsK/QSBkw7NuZGUgdmE/In0sInswfSBob3RlbHMgZnJvbSB7MX0gZ3JvdXBzLCBwcmljZWQgZm9yIHRoZSBuaWdodHMgeW91IGNob29zZS4iOntkZToiezB9IEhvdGVscyB2b24gezF9IEdydXBwZW4sIG1pdCBQcmVpc2VuIGbDvHIgZGllIGdld8OkaGx0ZW4gTsOkY2h0ZS4iLGphOiJ7MX3jgrDjg6vjg7zjg5fjga57MH3ou5Ljga7jg5vjg4bjg6vjgILpgbjjgpPjgaDml6XnqIvjgafmlpnph5HjgpLooajnpLrjgZfjgb7jgZnjgIIiLGtvOiJ7MX3qsJwg6re466O57J2YIO2YuO2FlCB7MH3qs7MsIOyEoO2Dne2VnCDrgqDsp5wg6riw7KSA7Jy866GcIOyalOq4iOydhCDrs7Tsl6wg65Oc66a964uI64ukLiIsZnI6InswfSBow7R0ZWxzIGRlIHsxfSBncm91cGVzLCBhdSBwcml4IGRlcyBudWl0cyBxdWUgdm91cyBjaG9pc2lzc2V6LiIsZXM6InswfSBob3RlbGVzIGRlIHsxfSBncnVwb3MsIGNvbiBwcmVjaW9zIHBhcmEgbGFzIG5vY2hlcyBxdWUgZWxpamEuIn0sInswfSBob3RlbHMsIHByaWNlZCBmb3IgdGhlIG5pZ2h0cyB5b3UgY2hvb3NlLiI6e2RlOiJ7MH0gSG90ZWxzLCBtaXQgUHJlaXNlbiBmw7xyIGRpZSBnZXfDpGhsdGVuIE7DpGNodGUuIixqYToiezB96LuS44Gu44Ob44OG44Or44CC6YG444KT44Gg5pel56iL44Gn5paZ6YeR44KS6KGo56S644GX44G+44GZ44CCIixrbzoi7Zi47YWUIHswfeqzsywg7ISg7YOd7ZWcIOuCoOynnCDquLDspIDsnLzroZwg7JqU6riI7J2EIOuztOyXrCDrk5zrpr3ri4jri6QuIixmcjoiezB9IGjDtHRlbHMsIGF1IHByaXggZGVzIG51aXRzIHF1ZSB2b3VzIGNob2lzaXNzZXouIixlczoiezB9IGhvdGVsZXMsIGNvbiBwcmVjaW9zIHBhcmEgbGFzIG5vY2hlcyBxdWUgZWxpamEuIn0sIkhvdGVsIGdyb3VwcyI6e2RlOiJIb3RlbGdydXBwZW4iLGphOiLjg5vjg4bjg6vjgrDjg6vjg7zjg5ciLGtvOiLtmLjthZQg6re466O5IixmcjoiR3JvdXBlcyBow7R0ZWxpZXJzIixlczoiR3J1cG9zIGhvdGVsZXJvcyJ9LCJUb3AgY2l0aWVzIjp7ZGU6IkJlbGllYnRlIFN0w6RkdGUiLGphOiLkurrmsJfjga7pg73luIIiLGtvOiLsnbjquLAg64+E7IucIixmcjoiVmlsbGVzIHBoYXJlcyIsZXM6IkNpdWRhZGVzIGRlc3RhY2FkYXMifSwiQnkgcmVnaW9uIjp7ZGU6Ik5hY2ggUmVnaW9uIixqYToi5Zyw5Z+f5YilIixrbzoi7KeA7Jet67OEIixmcjoiUGFyIHLDqWdpb24iLGVzOiJQb3IgcmVnacOzbiJ9LCJCcm93c2UgYWxsIHswfSBob3RlbHMiOntkZToiQWxsZSB7MH0gSG90ZWxzIGFuc2VoZW4iLGphOiLlhah7MH3ou5Ljga7jg5vjg4bjg6vjgpLopovjgosiLGtvOiLtmLjthZQgezB96rOzIOuqqOuRkCDrs7TquLAiLGZyOiJWb2lyIGxlcyB7MH0gaMO0dGVscyIsZXM6IlZlciBsb3MgezB9IGhvdGVsZXMifSwiTXkgYm9va2luZ3MiOntkZToiTWVpbmUgQnVjaHVuZ2VuIixqYToi5LqI57SE5LiA6KanIixrbzoi64K0IOyYiOyVvSIsZnI6Ik1lcyByw6lzZXJ2YXRpb25zIixlczoiTWlzIHJlc2VydmFzIn0sIkZpbmQgYSBib29raW5nIGJ5IGl0cyBjb2RlIjp7ZGU6IkJ1Y2h1bmcgcGVyIENvZGUgZmluZGVuIixqYToi5LqI57SE55Wq5Y+344Gn5o6i44GZIixrbzoi7ZmV7J24IOuyiO2YuOuhnCDsmIjslb0g7LC+6riwIixmcjoiUmV0cm91dmVyIHVuZSByw6lzZXJ2YXRpb24gcGFyIHNvbiBjb2RlIixlczoiQnVzY2FyIHVuYSByZXNlcnZhIHBvciBzdSBjw7NkaWdvIn0sInswfSByb29tcyDDlyI6e2RlOiJ7MH0gWmltbWVyIMOXIixqYToiezB95a6kIMOXIixrbzoi6rCd7IukIHswfeqwnCDDlyIsZnI6InswfSBjaGFtYnJlcyDDlyIsZXM6InswfSBoYWJpdGFjaW9uZXMgw5cifSwiezB9IHRvZGF5Ijp7ZGU6InswfSBoZXV0ZSIsamE6IuacrOaXpSB7MH0iLGtvOiLsmKTripggezB9IixmcjoiezB9IGF1am91cmTigJlodWkiLGVzOiJ7MH0gaG95In0sInRheGVzIGluIjp7ZGU6Imlua2wuIFN0ZXVlcm4iLGphOiLnqI7ovrzjgb8iLGtvOiLshLjquIgg7Y+s7ZWoIixmcjoidGF4ZXMgY29tcHJpc2VzIixlczoiaW1wdWVzdG9zIGluY2x1aWRvcyJ9LCJObyByb29tIHNsZWVwcyB7MH0iOntkZToiS2VpbiBaaW1tZXIgZsO8ciB7MH0gUGVyc29uZW4iLGphOiJ7MH3lkI3jgafms4rjgb7jgozjgovlrqLlrqTjga/jgYLjgorjgb7jgZvjgpMiLGtvOiJ7MH3rqoXsnbQg66y17J2EIOqwneyLpOydtCDsl4bsirXri4jri6QiLGZyOiJBdWN1bmUgY2hhbWJyZSBwb3VyIHswfSBwZXJzb25uZXMiLGVzOiJOaW5ndW5hIGhhYml0YWNpw7NuIHBhcmEgezB9IHBlcnNvbmFzIn0sIlRvZGF5J3MgaG91cnMgYXJlIG92ZXIiOntkZToiRGllIFRhZ2VzemltbWVyIGbDvHIgaGV1dGUgc2luZCB2b3JiZWkiLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrnjga/ntYLkuobjgZfjgb7jgZfjgZ8iLGtvOiLsmKTripjsnZgg64yA7Iuk7J2AIOuniOqwkOuQmOyXiOyKteuLiOuLpCIsZnI6IkxlcyBjaGFtYnJlcyDDoCBs4oCZaGV1cmUgZOKAmWF1am91cmTigJlodWkgc29udCB0ZXJtaW7DqWVzIixlczoiTGFzIGhvcmFzIGRlIGhveSBoYW4gdGVybWluYWRvIn0sIk9uIHNhbGUgdG9kYXkgZnJvbSB7MH0iOntkZToiSGV1dGUgYWIgezB9IGJ1Y2hiYXIiLGphOiLmnKzml6UgezB9IOOBi+OCieiyqeWjsiIsa286IuyYpOuKmCB7MH3rtoDthLAg7YyQ66ekIixmcjoiRW4gdmVudGUgYXVqb3VyZOKAmWh1aSBkw6hzIHswfSIsZXM6IkEgbGEgdmVudGEgaG95IGRlc2RlIGxhcyB7MH0ifSwiTm8gcm9vbXMgYnkgdGhlIGhvdXIgdG9kYXkiOntkZToiSGV1dGUga2VpbmUgVGFnZXN6aW1tZXIiLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrnjga/jgYLjgorjgb7jgZvjgpMiLGtvOiLsmKTripgg64yA7IukIOqwneyLpOydtCDsl4bsirXri4jri6QiLGZyOiJQYXMgZGUgY2hhbWJyZSDDoCBs4oCZaGV1cmUgYXVqb3VyZOKAmWh1aSIsZXM6IkhveSBubyBoYXkgaGFiaXRhY2lvbmVzIHBvciBob3JhcyJ9LCJTb2xkIG91dCBieSB0aGUgaG91ciB0b2RheSI6e2RlOiJUYWdlc3ppbW1lciBoZXV0ZSBhdXNnZWJ1Y2h0IixqYToi5pys5pel44Gu44OH44Kk44Om44O844K544Gv5rqA5a6k44Gn44GZIixrbzoi7Jik64qYIOuMgOyLpCDqsJ3si6TsnbQg66ek7KeE65CY7JeI7Iq164uI64ukIixmcjoiQ2hhbWJyZXMgw6AgbOKAmWhldXJlIGNvbXBsw6h0ZXMgYXVqb3VyZOKAmWh1aSIsZXM6IkhhYml0YWNpb25lcyBwb3IgaG9yYXMgYWdvdGFkYXMgaG95In0sIk5vIHJvb20gZm9yIHRoZXNlIGRhdGVzIjp7ZGU6IktlaW5lIFppbW1lciBmw7xyIGRpZXNlIERhdGVuIixqYToi44GT44Gu5pel56iL44Gn56m65a6k44Gv44GC44KK44G+44Gb44KTIixrbzoi7J20IOuCoOynnOyXkCDruYgg6rCd7Iuk7J20IOyXhuyKteuLiOuLpCIsZnI6IkF1Y3VuZSBjaGFtYnJlIMOgIGNlcyBkYXRlcyIsZXM6Ik5vIGhheSBoYWJpdGFjaW9uZXMgcGFyYSBlc3RhcyBmZWNoYXMifSwiRnJvbSAiOntkZToiYWIgIixqYToiIixrbzoi7LWc7KCAICIsZnI6IsOAIHBhcnRpciBkZSAiLGVzOiJEZXNkZSAifSwiIC8gbmlnaHQgKyB0YXgiOntkZToiIC8gTmFjaHQgenpnbC4gU3RldWVybiIsamE6IuOAnCAvIOaziu+8iOeojuWIpe+8iSIsa286IiAvIDHrsJUgKOyEuOq4iCDrs4Trj4QpIixmcjoiIC8gbnVpdCBob3JzIHRheGVzIixlczoiIC8gbm9jaGUgKyBpbXB1ZXN0b3MifSwiQWRkIGRhdGVzIGZvciBwcmljZXMiOntkZToiRGF0ZW4gd8OkaGxlbiBmw7xyIFByZWlzZSIsamE6IuaXpeeoi+OCkumBuOOBtuOBqOaWmemHkeOBjOWHuuOBvuOBmSIsa286IuuCoOynnOulvCDqs6DrpbTrqbQg7JqU6riI7J20IOuztOyeheuLiOuLpCIsZnI6IkNob2lzaXNzZXogdm9zIGRhdGVzIHBvdXIgdm9pciBsZXMgcHJpeCIsZXM6IkVsaWphIGZlY2hhcyBwYXJhIHZlciBwcmVjaW9zIn0sIkxvd2VzdCBwcmljZSI6e2RlOiJHw7xuc3RpZ3N0ZXIgUHJlaXMiLGphOiLmlpnph5Hjga7lronjgYTpoIYiLGtvOiLrgq7snYAg6rCA6rKp7IicIixmcjoiUHJpeCBsZSBwbHVzIGJhcyIsZXM6IlByZWNpbyBtw6FzIGJham8ifSwiRnJlZSBjYW5jZWxsYXRpb24iOntkZToiS29zdGVubG9zZSBTdG9ybmllcnVuZyIsamE6IueEoeaWmeOCreODo+ODs+OCu+ODqyIsa286IuustOujjCDst6jshowiLGZyOiJBbm51bGF0aW9uIGdyYXR1aXRlIixlczoiQ2FuY2VsYWNpw7NuIGdyYXR1aXRhIn0sInswfSBsZWZ0Ijp7ZGU6Ik5vY2ggezB9IGZyZWkiLGphOiLmrovjgop7MH3lrqQiLGtvOiJ7MH3qsJwg64Ko7J2MIixmcjoiUGx1cyBxdWUgezB9IixlczoiUXVlZGFuIHswfSJ9LCJTaG93IHByaWNlcyI6e2RlOiJQcmVpc2UgYW56ZWlnZW4iLGphOiLmlpnph5HjgpLopovjgosiLGtvOiLsmpTquIgg67O06riwIixmcjoiVm9pciBsZXMgcHJpeCIsZXM6IlZlciBwcmVjaW9zIn0sR3JvdXA6ZHcsQnJhbmQ6aHcsSGFzOnB3LCJCeSB0aGUgaG91ciB0b2RheSI6e2RlOiJUYWdlc3ppbW1lciBoZXV0ZSIsamE6IuacrOaXpeODh+OCpOODpuODvOOCueOBguOCiiIsa286IuyYpOuKmCDrjIDsi6Qg6rCA64qlIixmcjoiQ2hhbWJyZSDDoCBs4oCZaGV1cmUgYXVqb3VyZOKAmWh1aSIsZXM6IlBvciBob3JhcyBob3kifSxSZWNvbW1lbmRlZDptdywiUm9vbXMgYnkgdGhlIGhvdXIsIHRvZGF5LiBQaWNrIGEgaG90ZWwgdG8gY2hvb3NlIHdoZW4geW91IGFycml2ZS4iOntkZToiVGFnZXN6aW1tZXIgZsO8ciBoZXV0ZS4gV8OkaGxlbiBTaWUgZWluIEhvdGVsIHVuZCBkYW5uIElocmUgQW5rdW5mdHN6ZWl0LiIsamE6IuacrOaXpeOBruODh+OCpOODpuODvOOCueOBp+OBmeOAguODm+ODhuODq+OCkumBuOOCk+OBp+OBi+OCieWIsOedgOaZguWIu+OCkumBuOOCk+OBp+OBj+OBoOOBleOBhOOAgiIsa286IuyYpOuKmOydmCDrjIDsi6TsnoXri4jri6QuIO2YuO2FlOydhCDqs6Drpbgg65KkIOuPhOywqSDsi5zqsITsnYQg7ISg7YOd7ZWY7IS47JqULiIsZnI6IkNoYW1icmVzIMOgIGzigJloZXVyZSwgYXVqb3VyZOKAmWh1aS4gQ2hvaXNpc3NleiB1biBow7R0ZWwsIHB1aXMgdm90cmUgaGV1cmUgZOKAmWFycml2w6llLiIsZXM6IkhhYml0YWNpb25lcyBwb3IgaG9yYXMsIGhveS4gRWxpamEgdW4gaG90ZWwgeSBsdWVnbyBsYSBob3JhIGRlIGxsZWdhZGEuIn0sIlN0YXkgdGhlIG5pZ2h0IGluc3RlYWQiOntkZToiU3RhdHRkZXNzZW4gw7xiZXJuYWNodGVuIixqYToi5a6/5rOK44Gn5o6i44GZIixrbzoi7IiZ67CV7Jy866GcIOuztOq4sCIsZnI6IlBsdXTDtHQgcGFzc2VyIGxhIG51aXQiLGVzOiJNZWpvciBwYXNhciBsYSBub2NoZSJ9LFNvcnQ6ZncsIjogIjp7ZGU6IjogIixqYToi77yaIixrbzoiOiAiLGZyOiIgOiAiLGVzOiI6ICJ9LEZpbHRlcnM6Z3csQ2xlYXI6YncsIkhpZ2hlc3QgcHJpY2UiOntkZToiSMO2Y2hzdGVyIFByZWlzIixqYToi5paZ6YeR44Gu6auY44GE6aCGIixrbzoi64aS7J2AIOqwgOqyqeyInCIsZnI6IlByaXggbGUgcGx1cyDDqWxldsOpIixlczoiUHJlY2lvIG3DoXMgYWx0byJ9LFJhdGluZzp2dywiUHJldmlvdXMgcGFnZSI6e2RlOiJadXLDvGNrIixqYToi5YmN44G4Iixrbzoi7J207KCEIixmcjoiUHLDqWPDqWRlbnQiLGVzOiJBbnRlcmlvciJ9LCJOZXh0IHBhZ2UiOntkZToiV2VpdGVyIixqYToi5qyh44G4Iixrbzoi64uk7J2MIixmcjoiU3VpdmFudCIsZXM6IlNpZ3VpZW50ZSJ9LFBhZ2VzOmt3LCJ7MH3igJN7MX0gb2YgezJ9Ijp7ZGU6InswfeKAk3sxfSB2b24gezJ9IixqYToiezJ96LuS5LitIHswfeKAk3sxfSIsa286InsyfeqzsyDspJEgezB94oCTezF9IixmcjoiezB94oCTezF9IHN1ciB7Mn0iLGVzOiJ7MH3igJN7MX0gZGUgezJ9In0sIjAgb2YgezB9Ijp7ZGU6IjAgdm9uIHswfSIsamE6Inswfei7kuS4rSAwIixrbzoiezB96rOzIOykkSAwIixmcjoiMCBzdXIgezB9IixlczoiMCBkZSB7MH0ifSwiVmlldyBhbGwgezB9Ijp7ZGU6IkFsbGUgezB9IGFuc2VoZW4iLGphOiLlhah7MH3ou5LjgpLopovjgosiLGtvOiJ7MH3qs7Mg66qo65GQIOuztOq4sCIsZnI6IlZvaXIgbGVzIHswfSIsZXM6IlZlciBsb3MgezB9In0sIjEgaG90ZWwiOntkZToiMSBIb3RlbCIsamE6IjHou5IiLGtvOiLtmLjthZQgMeqzsyIsZnI6IjEgaMO0dGVsIixlczoiMSBob3RlbCJ9LFdoZXJlOnl3LE9yZGVyOiR3LCJBbGwgaG90ZWxzIjp7ZGU6IkFsbGUgSG90ZWxzIixqYToi44GZ44G544Gm44Gu44Ob44OG44OrIixrbzoi7KCE7LK0IO2YuO2FlCIsZnI6IlRvdXMgbGVzIGjDtHRlbHMiLGVzOiJUb2RvcyBsb3MgaG90ZWxlcyJ9LCJieSB0aGUgaG91ciB0b2RheSwgdGF4ZXMgaW4iOntkZToiVGFnZXN6aW1tZXIgaGV1dGUsIGlua2wuIFN0ZXVlcm4iLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrnjgIHnqI7ovrzjgb8iLGtvOiLsmKTripgg64yA7IukLCDshLjquIgg7Y+s7ZWoIixmcjoiw6AgbOKAmWhldXJlIGF1am91cmTigJlodWksIHRheGVzIGNvbXByaXNlcyIsZXM6InBvciBob3JhcyBob3ksIGltcHVlc3RvcyBpbmNsdWlkb3MifSwicHJpY2VzIGZvciB7MH0sIHsxfSByb29tcywgdGF4ZXMgaW4iOntkZToiUHJlaXNlIGbDvHIgezB9LCB7MX0gWmltbWVyLCBpbmtsLiBTdGV1ZXJuIixqYToiezB944O7ezF95a6k44Gu56iO6L6844G/5paZ6YeRIixrbzoiezB9LCDqsJ3si6QgezF96rCcIOyEuOq4iCDtj6ztlagg7JqU6riIIixmcjoicHJpeCBwb3VyIHswfSwgezF9IGNoYW1icmVzLCB0YXhlcyBjb21wcmlzZXMiLGVzOiJwcmVjaW9zIHBhcmEgezB9LCB7MX0gaGFiaXRhY2lvbmVzLCBpbXB1ZXN0b3MgaW5jbHVpZG9zIn0sInByaWNlcyBmb3IgezB9LCB0YXhlcyBpbiI6e2RlOiJQcmVpc2UgZsO8ciB7MH0sIGlua2wuIFN0ZXVlcm4iLGphOiJ7MH3jga7nqI7ovrzjgb/mlpnph5EiLGtvOiJ7MH0g7IS46riIIO2PrO2VqCDsmpTquIgiLGZyOiJwcml4IHBvdXIgezB9LCB0YXhlcyBjb21wcmlzZXMiLGVzOiJwcmVjaW9zIHBhcmEgezB9LCBpbXB1ZXN0b3MgaW5jbHVpZG9zIn0sImFkZCBkYXRlcyB0byBzZWUgd2hhdCBhIHN0YXkgY29zdHMiOntkZToiRGF0ZW4gd8OkaGxlbiBmw7xyIGRlbiBHZXNhbXRwcmVpcyIsamE6IuaXpeeoi+OCkumBuOOBtuOBqOe3j+mhjeOBjOWHuuOBvuOBmSIsa286IuuCoOynnOulvCDqs6DrpbTrqbQg7LSd7JWh7J20IOuztOyeheuLiOuLpCIsZnI6ImNob2lzaXNzZXogdm9zIGRhdGVzIHBvdXIgdm9pciBsZSBwcml4IGR1IHPDqWpvdXIiLGVzOiJlbGlqYSBmZWNoYXMgcGFyYSB2ZXIgZWwgcHJlY2lvIGRlIGxhIGVzdGFuY2lhIn0sIkV2ZXJ5IGhvdGVsIGhlcmUgaXMgZnJlZSB0byBjYW5jZWwiOntkZToiQWxsZSBIb3RlbHMgaGllciBzaW5kIGtvc3RlbmxvcyBzdG9ybmllcmJhciIsamE6IuOBk+OBk+OBruODm+ODhuODq+OBr+OBmeOBueOBpueEoeaWmeOCreODo+ODs+OCu+ODq+WPryIsa286IuydtOqzs+ydmCDrqqjrk6Ag7Zi47YWU7J2AIOustOujjCDst6jshowg6rCA64qlIixmcjoiVG91cyBjZXMgaMO0dGVscyBzb250IGFubnVsYWJsZXMgZ3JhdHVpdGVtZW50IixlczoiVG9kb3MgZXN0b3MgaG90ZWxlcyB0aWVuZW4gY2FuY2VsYWNpw7NuIGdyYXR1aXRhIn0sIk5vdGhpbmcgbWF0Y2hlZCB7MH0uIFRoZXNlIGFyZSB7MX0uIjp7ZGU6IktlaW5lIFRyZWZmZXIgZsO8ciB7MH0uIEhpZXIgc2luZCB7MX0uIixqYToiezB944Gr5LiA6Ie044GZ44KL57WQ5p6c44Gv44GC44KK44G+44Gb44KT44CC44GT44Gh44KJ44GvezF944Gn44GZ44CCIixrbzoiezB97JmAKOqzvCkg7J287LmY7ZWY64qUIOqysOqzvOqwgCDsl4bsirXri4jri6QuIOuMgOyLoCB7MX3snoXri4jri6QuIixmcjoiQXVjdW4gcsOpc3VsdGF0IHBvdXIgezB9LiBWb2ljaSB7MX0uIixlczoiTmFkYSBjb2luY2lkZSBjb24gezB9LiBFc3RvcyBzb24gezF9LiJ9LCJRdW90ZWQgaW4gezB9IOKAlCBubyByYXRlIGlzIGFwcGxpZWQgaGVyZSwgc28gdGhpcyBpcyBub3QgYSBwcmljZSBvcmRlci4gT25lIGNpdHkgb3Igb25lIGNvdW50cnkgZ2l2ZXMgb25lIGN1cnJlbmN5LiI6e2RlOiJQcmVpc2UgaW4gezB9IOKAlCBoaWVyIHdpcmQgbmljaHRzIHVtZ2VyZWNobmV0LCBkYWhlciBpc3QgZGllcyBrZWluZSBQcmVpc3JlaWhlbmZvbGdlLiBFaW5lIFN0YWR0IG9kZXIgZWluIExhbmQgZXJnaWJ0IGVpbmUgV8OkaHJ1bmcuIixqYToiezB944Gn6KGo56S644GX44Gm44GE44G+44GZ44CC5o+b566X44Gv44GX44Gq44GE44Gf44KB44CB5paZ6YeR6aCG44Gn44Gv44GC44KK44G+44Gb44KT44CC6YO95biC44GL5Zu944KSMeOBpOOBq+e1nuOCi+OBqOmAmuiyqOOBjDHjgaTjgavjgarjgorjgb7jgZnjgIIiLGtvOiJ7MH0o7Jy8KeuhnCDtkZzsi5zrkKnri4jri6QuIO2ZmOyCsO2VmOyngCDslYrsnLzrr4DroZwg6rCA6rKp7Iic7J20IOyVhOuLmeuLiOuLpC4g64+E7Iuc64KYIOq1reqwgCDtlZjrgpjrp4wg67O066m0IO2Gte2ZlOqwgCDtlZjrgpjqsIAg65Cp64uI64ukLiIsZnI6IlByaXggZW4gezB9IOKAlCByaWVuIG7igJllc3QgY29udmVydGkgaWNpLCBjZSBu4oCZZXN0IGRvbmMgcGFzIHVuIGNsYXNzZW1lbnQgcGFyIHByaXguIFVuZSB2aWxsZSBvdSB1biBwYXlzIGRvbm5lIHVuZSBzZXVsZSBkZXZpc2UuIixlczoiUHJlY2lvcyBlbiB7MH06IGFxdcOtIG5vIHNlIGNvbnZpZXJ0ZSBuYWRhLCBhc8OtIHF1ZSBubyBlcyB1biBvcmRlbiBwb3IgcHJlY2lvLiBVbmEgY2l1ZGFkIG8gdW4gcGHDrXMgZGEgdW5hIHNvbGEgbW9uZWRhLiJ9LCJ7MH0gbW9yZSBtYXRjaGVkIGFuZCBjYW1lIGluIG92ZXIgdGhlIHByaWNlIGNlaWxpbmcuIjp7ZGU6InswfSB3ZWl0ZXJlIHBhc3NlbiwgbGllZ2VuIGFiZXIgw7xiZXIgZGVtIFByZWlzbGltaXQuIixqYToi44G744GL44GrezB96LuS44GM5p2h5Lu244Gr5ZCI44GE44G+44GZ44GM44CB5LiK6ZmQ5paZ6YeR44KS6LaF44GI44Gm44GE44G+44GZ44CCIixrbzoi7KGw6rG07JeQIOunnuuKlCB7MH3qs7PsnbQg642UIOyeiOyngOunjCDqsIDqsqkg7IOB7ZWc7J2EIOuEmOyKteuLiOuLpC4iLGZyOiJ7MH0gYXV0cmVzIGNvcnJlc3BvbmRlbnQgbWFpcyBkw6lwYXNzZW50IGxlIHBsYWZvbmQgZGUgcHJpeC4iLGVzOiJ7MH0gbcOhcyBjb2luY2lkZW4gcGVybyBzdXBlcmFuIGVsIHByZWNpbyBtw6F4aW1vLiJ9LCJTaG93aW5nIHswfeKAk3sxfSBvZiB7Mn0uIjp7ZGU6InswfeKAk3sxfSB2b24gezJ9IHdlcmRlbiBhbmdlemVpZ3QuIixqYToiezJ96LuS5LitIHswfeKAk3sxfei7kuebruOCkuihqOekuuOBl+OBpuOBhOOBvuOBmeOAgiIsa286InsyfeqzsyDspJEgezB94oCTezF967KI7Ke466W8IOuztOyXrCDrk5zrpr3ri4jri6QuIixmcjoiQWZmaWNoYWdlIGRlIHswfSDDoCB7MX0gc3VyIHsyfS4iLGVzOiJNb3N0cmFuZG8gezB94oCTezF9IGRlIHsyfS4ifSwiU2hvd2luZyB7MH0gb2YgezF9LiI6e2RlOiJ7MH0gdm9uIHsxfSB3ZXJkZW4gYW5nZXplaWd0LiIsamE6Insxfei7kuS4rSB7MH3ou5LjgpLooajnpLrjgZfjgabjgYTjgb7jgZnjgIIiLGtvOiJ7MX3qs7Mg7KSRIHswfeqzs+ydhCDrs7Tsl6wg65Oc66a964uI64ukLiIsZnI6IkFmZmljaGFnZSBkZSB7MH0gc3VyIHsxfS4iLGVzOiJNb3N0cmFuZG8gezB9IGRlIHsxfS4ifSwiU2hvdyB7MH0gbW9yZSI6e2RlOiJ7MH0gd2VpdGVyZSBhbnplaWdlbiIsamE6IuOBleOCieOBq3swfei7kuOCkuihqOekuiIsa286InswfeqzsyDrjZQg67O06riwIixmcjoiQWZmaWNoZXIgezB9IGRlIHBsdXMiLGVzOiJNb3N0cmFyIHswfSBtw6FzIn0sIk5vdGhpbmcgbWF0Y2hlZCB7MH0sIHNvIHRoaXMgbG9va2VkIGluIHsxfS4iOntkZToiS2VpbmUgVHJlZmZlciBmw7xyIHswfSwgZGFoZXIgd3VyZGUgaW4gezF9IGdlc3VjaHQuIixqYToiezB944Gr5LiA6Ie044GZ44KL57WQ5p6c44GM44Gq44GE44Gf44KB44CBezF944Gn5o6i44GX44G+44GX44Gf44CCIixrbzoiezB97JmAKOqzvCkg7J287LmY7ZWY64qUIOqysOqzvOqwgCDsl4bslrQgezF97JeQ7IScIOywvuyVmOyKteuLiOuLpC4iLGZyOiJBdWN1biByw6lzdWx0YXQgcG91ciB7MH0gOiBsYSByZWNoZXJjaGUgYSBwb3J0w6kgc3VyIHsxfS4iLGVzOiJOYWRhIGNvaW5jaWRlIGNvbiB7MH0sIGFzw60gcXVlIHNlIGJ1c2PDsyBlbiB7MX0uIn0sIk5vbmUgb2YgdGhlIHswfSBob3RlbHMgaGVyZSBoYXMgYWxsIG9mIHRob3NlIHRvZ2V0aGVyLiI6e2RlOiJLZWluZXMgZGVyIHswfSBIb3RlbHMgaGllciBlcmbDvGxsdCBhbGxlcyB6dXNhbW1lbi4iLGphOiLjgZPjgZPjga57MH3ou5Ljga7jgYbjgaHjgIHjgZnjgbnjgabjga7mnaHku7bjgpLmuoDjgZ/jgZnjg5vjg4bjg6vjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLsnbTqs7PsnZgg7Zi47YWUIHswfeqzsyDspJEg66qo65OgIOyhsOqxtOydhCDqsJbstpgg6rOz7J2AIOyXhuyKteuLiOuLpC4iLGZyOiJBdWN1biBkZXMgezB9IGjDtHRlbHMgaWNpIG5lIHLDqXVuaXQgdG91dCBjZWxhLiIsZXM6Ik5pbmd1bm8gZGUgbG9zIHswfSBob3RlbGVzIGRlIGFxdcOtIHJlw7puZSB0b2RvIGVzby4ifSwiTm90aGluZyBpbiDigJx7MH3igJ0iOntkZToiTmljaHRzIGluIOKAnnswfeKAnCIsamE6IuOAjHswfeOAjeOBr+imi+OBpOOBi+OCiuOBvuOBm+OCkyIsa286IuKAmHswfeKAmSDqsrDqs7wg7JeG7J2MIixmcjoiUmllbiBwb3VyIMKrIHswfSDCuyIsZXM6Ik5hZGEgZW4gwqt7MH3CuyJ9LCJObyBob3RlbHMgbWF0Y2giOntkZToiS2VpbmUgcGFzc2VuZGVuIEhvdGVscyIsamE6IuadoeS7tuOBq+WQiOOBhuODm+ODhuODq+OBr+OBguOCiuOBvuOBm+OCkyIsa286IuyhsOqxtOyXkCDrp57ripQg7Zi47YWU7J20IOyXhuyKteuLiOuLpCIsZnI6IkF1Y3VuIGjDtHRlbCBuZSBjb3JyZXNwb25kIixlczoiTmluZ8O6biBob3RlbCBjb2luY2lkZSJ9LCJObyBob3RlbCBoZXJlIGlzIGluIG9yIG5lYXIg4oCcezB94oCdLiBUcnkgYSBjaXR5IG9yIGEgY291bnRyeS4iOntkZToiS2VpbiBIb3RlbCBoaWVyIGxpZWd0IGluIG9kZXIgYmVpIOKAnnswfeKAnC4gVmVyc3VjaGVuIFNpZSBlaW5lIFN0YWR0IG9kZXIgZWluIExhbmQuIixqYToi44CMezB944CN44KE44Gd44Gu5ZGo6L6644Gu44Ob44OG44Or44Gv44GC44KK44G+44Gb44KT44CC6YO95biC44KE5Zu944Gn5o6i44GX44Gm44G/44Gm44GP44Gg44GV44GE44CCIixrbzoi4oCYezB94oCZIOuYkOuKlCDqt7zsspjsl5Ag7J6I64qUIO2YuO2FlOydtCDsl4bsirXri4jri6QuIOuPhOyLnOuCmCDqta3qsIDroZwg7LC+7JWE67O07IS47JqULiIsZnI6IkF1Y3VuIGjDtHRlbCBpY2kgbuKAmWVzdCDDoCDCqyB7MH0gwrsgb3Ugw6AgcHJveGltaXTDqS4gRXNzYXlleiB1bmUgdmlsbGUgb3UgdW4gcGF5cy4iLGVzOiJOaW5nw7puIGhvdGVsIGVzdMOhIGVuIMKrezB9wrsgbyBjZXJjYS4gUHJ1ZWJlIHVuYSBjaXVkYWQgbyB1biBwYcOtcy4ifSwiVHJ5IGEgY2l0eSwgYSBjb3VudHJ5IG9yIGEgaG90ZWwgbmFtZS4iOntkZToiVmVyc3VjaGVuIFNpZSBlaW5lIFN0YWR0LCBlaW4gTGFuZCBvZGVyIGVpbmVuIEhvdGVsbmFtZW4uIixqYToi6YO95biC44O75Zu944O744Ob44OG44Or5ZCN44Gn5o6i44GX44Gm44G/44Gm44GP44Gg44GV44GE44CCIixrbzoi64+E7IucLCDqta3qsIAg65iQ64qUIO2YuO2FlCDsnbTrpoTsnLzroZwg7LC+7JWE67O07IS47JqULiIsZnI6IkVzc2F5ZXogdW5lIHZpbGxlLCB1biBwYXlzIG91IHVuIG5vbSBk4oCZaMO0dGVsLiIsZXM6IlBydWViZSB1bmEgY2l1ZGFkLCB1biBwYcOtcyBvIGVsIG5vbWJyZSBkZSB1biBob3RlbC4ifSwiQ2l0eSBvciBob3RlbCI6e2RlOiJTdGFkdCBvZGVyIEhvdGVsIixqYToi6YO95biC44G+44Gf44Gv44Ob44OG44Or5ZCNIixrbzoi64+E7IucIOuYkOuKlCDtmLjthZQiLGZyOiJWaWxsZSBvdSBow7R0ZWwiLGVzOiJDaXVkYWQgdSBob3RlbCJ9LCJTZWUgZXZlcnkgZGVzdGluYXRpb24iOntkZToiQWxsZSBSZWlzZXppZWxlIGFuc2VoZW4iLGphOiLjgZnjgbnjgabjga7ooYzjgY3lhYjjgpLopovjgosiLGtvOiLsoITssrQg66qp7KCB7KeAIOuztOq4sCIsZnI6IlZvaXIgdG91dGVzIGxlcyBkZXN0aW5hdGlvbnMiLGVzOiJWZXIgdG9kb3MgbG9zIGRlc3Rpbm9zIn0sIk5vdGhpbmcgY2FtZSBpbiB1bmRlciB0aGUgcHJpY2UgY2VpbGluZy4gVGhlIG5lYXJlc3QgaXMgb3ZlciBpdC4iOntkZToiTmljaHRzIGxpZWd0IHVudGVyIGRlbSBQcmVpc2xpbWl0LiBEYXMgbsOkY2hzdGdlbGVnZW5lIGxpZWd0IGRhcsO8YmVyLiIsamE6IuS4iumZkOaWmemHkeS7peS4i+OBruODm+ODhuODq+OBr+OBguOCiuOBvuOBm+OCk+OAguacgOOCgui/keOBhOODm+ODhuODq+OBr+OChOOChOS4iuWbnuOCiuOBvuOBmeOAgiIsa286IuqwgOqyqSDsg4HtlZwg7J207ZWY7J24IO2YuO2FlOydtCDsl4bsirXri4jri6QuIOqwgOyepSDqsIDquYzsmrQg6rOz7J2AIOyDge2VnOydhCDsobDquIgg64SY7Iq164uI64ukLiIsZnI6IlJpZW4gc291cyBsZSBwbGFmb25kIGRlIHByaXguIExlIHBsdXMgcHJvY2hlIGxlIGTDqXBhc3NlLiIsZXM6Ik5hZGEgcXVlZGEgcG9yIGRlYmFqbyBkZWwgcHJlY2lvIG3DoXhpbW8uIEVsIG3DoXMgY2VyY2FubyBsbyBzdXBlcmEuIn0sIk5vdGhpbmcgY2FtZSBpbiB1bmRlciB0aGUgcHJpY2UgY2VpbGluZy4gVGhlIG5lYXJlc3QgYXJlIG92ZXIgaXQuIjp7ZGU6Ik5pY2h0cyBsaWVndCB1bnRlciBkZW0gUHJlaXNsaW1pdC4gRGllIG7DpGNoc3RnZWxlZ2VuZW4gbGllZ2VuIGRhcsO8YmVyLiIsamE6IuS4iumZkOaWmemHkeS7peS4i+OBruODm+ODhuODq+OBr+OBguOCiuOBvuOBm+OCk+OAguacgOOCgui/keOBhOODm+ODhuODq+OBr+OChOOChOS4iuWbnuOCiuOBvuOBmeOAgiIsa286IuqwgOqyqSDsg4HtlZwg7J207ZWY7J24IO2YuO2FlOydtCDsl4bsirXri4jri6QuIOqwgOyepSDqsIDquYzsmrQg6rOz65Ok7J2AIOyDge2VnOydhCDsobDquIgg64SY7Iq164uI64ukLiIsZnI6IlJpZW4gc291cyBsZSBwbGFmb25kIGRlIHByaXguIExlcyBwbHVzIHByb2NoZXMgbGUgZMOpcGFzc2VudC4iLGVzOiJOYWRhIHF1ZWRhIHBvciBkZWJham8gZGVsIHByZWNpbyBtw6F4aW1vLiBMb3MgbcOhcyBjZXJjYW5vcyBsbyBzdXBlcmFuLiJ9LE92ZXI6d3csIldoYXQgdGhlIGhvdGVsIGhhcyI6e2RlOiJBdXNzdGF0dHVuZyBkZXMgSG90ZWxzIixqYToi44Ob44OG44Or44Gu6Kit5YKZIixrbzoi7Zi47YWUIOyLnOyEpCIsZnI6IsOJcXVpcGVtZW50cyBkZSBs4oCZaMO0dGVsIixlczoiU2VydmljaW9zIGRlbCBob3RlbCJ9LCJSb29tIG9ubHkiOntkZToiT2huZSBGcsO8aHN0w7xjayIsamE6Iue0oOaziuOBvuOCiiIsa286IuyhsOyLnSDrtojtj6ztlagiLGZyOiJTYW5zIHBldGl0LWTDqWpldW5lciIsZXM6IlNvbG8gYWxvamFtaWVudG8ifSxCcmVha2Zhc3Q6X3csIkJyZWFrZmFzdCBmb3IgMSI6e2RlOiJGcsO8aHN0w7xjayBmw7xyIDEiLGphOiLmnJ3po58x5ZCN5YiGIixrbzoi7KGw7IudIDHsnbgiLGZyOiJQZXRpdC1kw6lqZXVuZXIgcG91ciAxIixlczoiRGVzYXl1bm8gcGFyYSAxIn0sIkJyZWFrZmFzdCBmb3IgMiI6e2RlOiJGcsO8aHN0w7xjayBmw7xyIDIiLGphOiLmnJ3po58y5ZCN5YiGIixrbzoi7KGw7IudIDLsnbgiLGZyOiJQZXRpdC1kw6lqZXVuZXIgcG91ciAyIixlczoiRGVzYXl1bm8gcGFyYSAyIn0sIkJyZWFrZmFzdCBmb3IgMyI6e2RlOiJGcsO8aHN0w7xjayBmw7xyIDMiLGphOiLmnJ3po58z5ZCN5YiGIixrbzoi7KGw7IudIDPsnbgiLGZyOiJQZXRpdC1kw6lqZXVuZXIgcG91ciAzIixlczoiRGVzYXl1bm8gcGFyYSAzIn0sUGFja2FnZTpTdywiRmxhc2ggc2FsZSI6e2RlOiJCbGl0emFuZ2Vib3QiLGphOiLjgr/jgqTjg6Djgrvjg7zjg6siLGtvOiLtg4DsnoQg7Yq56rCAIixmcjoiVmVudGUgZmxhc2giLGVzOiJPZmVydGEgZmxhc2gifSwiTGF0ZS1uaWdodCByYXRlIjp7ZGU6IlNww6R0YnVjaGVyLVByZWlzIixqYToi5rex5aSc5paZ6YeRIixrbzoi7Ius7JW8IOyalOq4iCIsZnI6IlRhcmlmIGRlIGRlcm5pw6hyZSBtaW51dGUiLGVzOiJUYXJpZmEgbm9jdHVybmEifSwiQm9vay1haGVhZCByYXRlIjp7ZGU6IkZyw7xoYnVjaGVyLVByZWlzIixqYToi5pep5pyf5LqI57SE5paZ6YeRIixrbzoi7KGw6riwIOyYiOyVvSDsmpTquIgiLGZyOiJUYXJpZiByw6lzZXJ2YXRpb24gYW50aWNpcMOpZSIsZXM6IlRhcmlmYSBkZSByZXNlcnZhIGFudGljaXBhZGEifSxQcm9tb3Rpb246ancsIlNsZWVwcyB7MH0iOntkZToiRsO8ciB7MH0gUGVyc29uZW4iLGphOiJ7MH3lkI3jgb7jgaciLGtvOiLstZzrjIAgezB966qFIixmcjoiezB9IHBlcnNvbm5lcyIsZXM6IlBhcmEgezB9IHBlcnNvbmFzIn0sIiDCtyAxIGNoaWxkIjp7ZGU6IiDCtyAxIEtpbmQiLGphOiIgwrcg5a2Q44Gp44KCMeWQjeWPryIsa286IiDCtyDslrTrprDsnbQgMeuqhSIsZnI6IiDCtyAxIGVuZmFudCIsZXM6IiDCtyAxIG5pw7FvIn0sIiDCtyB7MH0gY2hpbGRyZW4iOntkZToiIMK3IHswfSBLaW5kZXIiLGphOiIgwrcg5a2Q44Gp44KCezB95ZCN5Y+vIixrbzoiIMK3IOyWtOumsOydtCB7MH3rqoUiLGZyOiIgwrcgezB9IGVuZmFudHMiLGVzOiIgwrcgezB9IG5pw7FvcyJ9LCI8Yj5CcmVha2Zhc3Q8L2I+IGluY2x1ZGVkIjp7ZGU6IjxiPkZyw7xoc3TDvGNrPC9iPiBpbmtsdXNpdmUiLGphOiI8Yj7mnJ3po588L2I+5LuY44GNIixrbzoiPGI+7KGw7IudPC9iPiDtj6ztlagiLGZyOiI8Yj5QZXRpdC1kw6lqZXVuZXI8L2I+IGluY2x1cyIsZXM6IjxiPkRlc2F5dW5vPC9iPiBpbmNsdWlkbyJ9LCIgdW50aWwgezB9Ijp7ZGU6IiBiaXMgezB9IixqYToi77yIezB944G+44Gn77yJIixrbzoiICh7MH3quYzsp4ApIixmcjoiIGp1c3F14oCZYXUgezB9IixlczoiIGhhc3RhIGVsIHswfSJ9LCJOb24tcmVmdW5kYWJsZSI6e2RlOiJOaWNodCBlcnN0YXR0YmFyIixqYToi6L+U6YeR5LiN5Y+vIixrbzoi7ZmY67aIIOu2iOqwgCIsZnI6Ik5vbiByZW1ib3Vyc2FibGUiLGVzOiJObyByZWVtYm9sc2FibGUifSwiIOKAlCB0aGlzIHJhdGUgY2Fubm90IGJlIGNhbmNlbGxlZCI6e2RlOiIg4oCUIGRpZXNlciBQcmVpcyBpc3QgbmljaHQgc3Rvcm5pZXJiYXIiLGphOiLvvIjjgZPjga7mlpnph5Hjga/jgq3jg6Pjg7Pjgrvjg6vjgafjgY3jgb7jgZvjgpPvvIkiLGtvOiIg4oCUIOydtCDsmpTquIjsnYAg7Leo7IaM7ZWgIOyImCDsl4bsirXri4jri6QiLGZyOiIg4oCUIGNlIHRhcmlmIG7igJllc3QgcGFzIGFubnVsYWJsZSIsZXM6IiDigJQgZXN0YSB0YXJpZmEgbm8gc2UgcHVlZGUgY2FuY2VsYXIifSwiezB9IG1lbWJlciByYXRlIjp7ZGU6Ik1pdGdsaWVkZXJwcmVpcyB7MH0iLGphOiJ7MH3kvJrlk6Hmlpnph5EiLGtvOiJ7MH0g7ZqM7JuQIOyalOq4iCIsZnI6IlRhcmlmIG1lbWJyZSB7MH0iLGVzOiJUYXJpZmEgZGUgbWllbWJybyB7MH0ifSwiIGFwcGxpZWQiOntkZToiIGFuZ2V3ZW5kZXQiLGphOiLjgpLpgannlKgiLGtvOiIg7KCB7JqpIixmcjoiIGFwcGxpcXXDqSIsZXM6IiBhcGxpY2FkYSJ9LCJQYWlkIGluIGFkdmFuY2UiOntkZToiVm9yYXVzemFobHVuZyIsamE6IuS6i+WJjeaJleOBhCIsa286IuyEoOqysOygnCIsZnI6IlByw6lwYXnDqSIsZXM6IlByZXBhZ28ifSxXaW5kb3c6VHcsIk5vIHdpbmRvdyI6e2RlOiJPaG5lIEZlbnN0ZXIiLGphOiLnqpPjgarjgZciLGtvOiLssL3rrLgg7JeG7J2MIixmcjoiU2FucyBmZW7DqnRyZSIsZXM6IlNpbiB2ZW50YW5hIn0sIkJyZWFrZmFzdCBpbmNsdWRlZCI6e2RlOiJGcsO8aHN0w7xjayBpbmtsdXNpdmUiLGphOiLmnJ3po5/ku5jjgY0iLGtvOiLsobDsi50g7Y+s7ZWoIixmcjoiUGV0aXQtZMOpamV1bmVyIGluY2x1cyIsZXM6IkRlc2F5dW5vIGluY2x1aWRvIn0sQ2l0eTpBdyxBcnJpdmU6encsIkxlYXZlIGJ5Ijp7ZGU6IkFicmVpc2UgYmlzIixqYToi6YCA5a6k5pyf6ZmQIixrbzoi7Ye07IukIOyLnOqwhCIsZnI6IkTDqXBhcnQgYXZhbnQiLGVzOiJTYWxpZGEgYW50ZXMgZGUifSwiMSByb29tIHR5cGUgdGhhdCBzbGVlcHMgezB9Ijp7ZGU6IjEgWmltbWVya2F0ZWdvcmllIGbDvHIgezB9IFBlcnNvbmVuIixqYToiezB95ZCN44Gn5rOK44G+44KM44KL5a6i5a6k44K/44Kk44OXMeS7tiIsa286InswfeuqheydtCDrrLXsnYQg7IiYIOyeiOuKlCDqsJ3si6Qg7Jyg7ZiVIDHqsJwiLGZyOiIxIHR5cGUgZGUgY2hhbWJyZSBwb3VyIHswfSBwZXJzb25uZXMiLGVzOiIxIHRpcG8gZGUgaGFiaXRhY2nDs24gcGFyYSB7MH0gcGVyc29uYXMifSwiezB9IHJvb20gdHlwZXMgdGhhdCBzbGVlcCB7MX0iOntkZToiezB9IFppbW1lcmthdGVnb3JpZW4gZsO8ciB7MX0gUGVyc29uZW4iLGphOiJ7MX3lkI3jgafms4rjgb7jgozjgovlrqLlrqTjgr/jgqTjg5d7MH3ku7YiLGtvOiJ7MX3rqoXsnbQg66y17J2EIOyImCDsnojripQg6rCd7IukIOycoO2YlSB7MH3qsJwiLGZyOiJ7MH0gdHlwZXMgZGUgY2hhbWJyZSBwb3VyIHsxfSBwZXJzb25uZXMiLGVzOiJ7MH0gdGlwb3MgZGUgaGFiaXRhY2nDs24gcGFyYSB7MX0gcGVyc29uYXMifSwiMSByb29tIHR5cGUiOntkZToiMSBaaW1tZXJrYXRlZ29yaWUiLGphOiLlrqLlrqTjgr/jgqTjg5cx5Lu2Iixrbzoi6rCd7IukIOycoO2YlSAx6rCcIixmcjoiMSB0eXBlIGRlIGNoYW1icmUiLGVzOiIxIHRpcG8gZGUgaGFiaXRhY2nDs24ifSwiezB9IHJvb20gdHlwZXMiOntkZToiezB9IFppbW1lcmthdGVnb3JpZW4iLGphOiLlrqLlrqTjgr/jgqTjg5d7MH3ku7YiLGtvOiLqsJ3si6Qg7Jyg7ZiVIHswfeqwnCIsZnI6InswfSB0eXBlcyBkZSBjaGFtYnJlIixlczoiezB9IHRpcG9zIGRlIGhhYml0YWNpw7NuIn0sIjEgZ3Vlc3QiOntkZToiMSBHYXN0IixqYToiMeWQjSIsa286IjHrqoUiLGZyOiIxIHBlcnNvbm5lIixlczoiMSBodcOpc3BlZCJ9LCJ7MH0gZ3Vlc3RzIjp7ZGU6InswfSBHw6RzdGUiLGphOiJ7MH3lkI0iLGtvOiJ7MH3rqoUiLGZyOiJ7MH0gcGVyc29ubmVzIixlczoiezB9IGh1w6lzcGVkZXMifSwiRm9yIHswfSwgezF9IHJvb21zLCB0YXhlcyBpbiI6e2RlOiJGw7xyIHswfSwgezF9IFppbW1lciwgaW5rbC4gU3RldWVybiIsamE6InswfeODu3sxfeWupOOAgeeojui+vOOBvyIsa286InswfSwg6rCd7IukIHsxfeqwnCwg7IS46riIIO2PrO2VqCIsZnI6IlBvdXIgezB9LCB7MX0gY2hhbWJyZXMsIHRheGVzIGNvbXByaXNlcyIsZXM6IlBvciB7MH0sIHsxfSBoYWJpdGFjaW9uZXMsIGltcHVlc3RvcyBpbmNsdWlkb3MifSwiRm9yIHswfSwgdGF4ZXMgaW4iOntkZToiRsO8ciB7MH0sIGlua2wuIFN0ZXVlcm4iLGphOiJ7MH3jgIHnqI7ovrzjgb8iLGtvOiJ7MH0sIOyEuOq4iCDtj6ztlagiLGZyOiJQb3VyIHswfSwgdGF4ZXMgY29tcHJpc2VzIixlczoiUG9yIHswfSwgaW1wdWVzdG9zIGluY2x1aWRvcyJ9LCJUb3RhbCBmb3IgezB9LCB7MX0gcm9vbXMsIHRheGVzIGluIjp7ZGU6Ikdlc2FtdCBmw7xyIHswfSwgezF9IFppbW1lciwgaW5rbC4gU3RldWVybiIsamE6InswfeODu3sxfeWupOOBruWQiOioiO+8iOeojui+vOOBv++8iSIsa286InswfSwg6rCd7IukIHsxfeqwnCDtlanqs4QgKOyEuOq4iCDtj6ztlagpIixmcjoiVG90YWwgcG91ciB7MH0sIHsxfSBjaGFtYnJlcywgdGF4ZXMgY29tcHJpc2VzIixlczoiVG90YWwgcG9yIHswfSwgezF9IGhhYml0YWNpb25lcywgaW1wdWVzdG9zIGluY2x1aWRvcyJ9LCJUb3RhbCBmb3IgezB9LCB0YXhlcyBpbiI6e2RlOiJHZXNhbXQgZsO8ciB7MH0sIGlua2wuIFN0ZXVlcm4iLGphOiJ7MH3jga7lkIjoqIjvvIjnqI7ovrzjgb/vvIkiLGtvOiJ7MH0g7ZWp6rOEICjshLjquIgg7Y+s7ZWoKSIsZnI6IlRvdGFsIHBvdXIgezB9LCB0YXhlcyBjb21wcmlzZXMiLGVzOiJUb3RhbCBwb3IgezB9LCBpbXB1ZXN0b3MgaW5jbHVpZG9zIn0sIlJvb20gcmF0ZSB7MH0gYSBuaWdodCI6e2RlOiJaaW1tZXJwcmVpcyB7MH0gcHJvIE5hY2h0IixqYToi5a6i5a6k5paZ6YeRIDHms4p7MH0iLGtvOiLqsJ3si6Qg7JqU6riIIDHrsJUgezB9IixmcjoiUHJpeCBkZSBsYSBjaGFtYnJlIDogezB9IHBhciBudWl0IixlczoiVGFyaWZhIGRlIGxhIGhhYml0YWNpw7NuOiB7MH0gcG9yIG5vY2hlIn0sInswfSByYXRlIjp7ZGU6IlRhcmlmIHswfSIsamE6InswfeaWmemHkSIsa286InswfSDsmpTquIgiLGZyOiJUYXJpZiB7MH0iLGVzOiJUYXJpZmEgezB9In0sUmV2aWV3OkN3LCJSZXNlcnZlIHswfSBmcm9tIHsxfSI6e2RlOiJ7MH0gYWIgezF9IHJlc2VydmllcmVuIixqYToiezF944GL44KJezB944KS5LqI57SEIixrbzoiezF967aA7YSwIHswfSDsmIjslb0iLGZyOiJSw6lzZXJ2ZXIgezB9IMOgIHBhcnRpciBkZSB7MX0iLGVzOiJSZXNlcnZhciB7MH0gZGVzZGUgbGFzIHsxfSJ9LFJlc2VydmU6TncsIlJlc2VydmUgezB9Ijp7ZGU6InswfSByZXNlcnZpZXJlbiIsamE6InswfeOCkuS6iOe0hCIsa286InswfSDsmIjslb0iLGZyOiJSw6lzZXJ2ZXIgezB9IixlczoiUmVzZXJ2YXIgezB9In0sInswfSBsZWZ0IGF0IHRoaXMgcmF0ZSI6e2RlOiJOb2NoIHswfSB6dSBkaWVzZW0gUHJlaXMiLGphOiLjgZPjga7mlpnph5Hjgafmrovjgop7MH3lrqQiLGtvOiLsnbQg7JqU6riI7Jy866GcIHswfeqwnCDrgqjsnYwiLGZyOiJQbHVzIHF1ZSB7MH0gw6AgY2UgdGFyaWYiLGVzOiJRdWVkYW4gezB9IGEgZXN0YSB0YXJpZmEifSwiezB9IG3CsiBsYXJnZXIiOntkZToiezB9IG3CsiBncsO2w59lciIsamE6InswfSBtwrLluoPjgYQiLGtvOiJ7MH0gbcKyIOuNlCDrhJPsnYwiLGZyOiJ7MH0gbcKyIGRlIHBsdXMiLGVzOiJ7MH0gbcKyIG3DoXMgZ3JhbmRlIn0sInswfSBtwrIgc21hbGxlciI6e2RlOiJ7MH0gbcKyIGtsZWluZXIiLGphOiJ7MH0gbcKy54ut44GEIixrbzoiezB9IG3CsiDrjZQg7KKB7J2MIixmcjoiezB9IG3CsiBkZSBtb2lucyIsZXM6InswfSBtwrIgbcOhcyBwZXF1ZcOxYSJ9LCJzbGVlcHMgezB9Ijp7ZGU6ImbDvHIgezB9IFBlcnNvbmVuIixqYToiezB95ZCN44G+44GnIixrbzoi7LWc64yAIHswfeuqhSIsZnI6InswfSBwZXJzb25uZXMiLGVzOiJwYXJhIHswfSBwZXJzb25hcyJ9LCJVbmxpa2UgezB9Ijp7ZGU6IkltIFZlcmdsZWljaCB6dSB7MH0iLGphOiJ7MH3jgajmr5TjgbnjgaYiLGtvOiJ7MH0g64yA67mEIixmcjoiUGFyIHJhcHBvcnQgw6AgezB9IixlczoiQSBkaWZlcmVuY2lhIGRlIHswfSJ9LCIxIHJhdGUiOntkZToiMSBUYXJpZiIsamE6IuaWmemHkTHku7YiLGtvOiLsmpTquIggMeqwnCIsZnI6IjEgdGFyaWYiLGVzOiIxIHRhcmlmYSJ9LCJ7MH0gcmF0ZXMiOntkZToiezB9IFRhcmlmZSIsamE6IuaWmemHkXswfeS7tiIsa286IuyalOq4iCB7MH3qsJwiLGZyOiJ7MH0gdGFyaWZzIixlczoiezB9IHRhcmlmYXMifSwiU3RhcnQgdGltZSI6e2RlOiJBbmt1bmZ0c3plaXQiLGphOiLliLDnnYDmmYLliLsiLGtvOiLrj4TssKkg7Iuc6rCEIixmcjoiSGV1cmUgZOKAmWFycml2w6llIixlczoiSG9yYSBkZSBsbGVnYWRhIn0sIkFycml2ZSBhdCI6e2RlOiJBbmt1bmZ0c3plaXQiLGphOiLliLDnnYDmmYLliLsiLGtvOiLrj4TssKkg7Iuc6rCEIixmcjoiSGV1cmUgZOKAmWFycml2w6llIixlczoiSG9yYSBkZSBsbGVnYWRhIn0sInswfeKAk3sxfSDCtyBsZWF2ZSBieSB7Mn0iOntkZToiezB94oCTezF9IMK3IEFicmVpc2UgYmlzIHsyfSIsamE6InswfeKAk3sxfSDCtyB7Mn3jgb7jgafjgavpgIDlrqQiLGtvOiJ7MH3igJN7MX0gwrcgezJ96rmM7KeAIO2HtOyLpCIsZnI6InswfeKAk3sxfSDCtyBkw6lwYXJ0IGF2YW50IHsyfSIsZXM6InswfeKAk3sxfSDCtyBzYWxpZGEgYW50ZXMgZGUgbGFzIHsyfSJ9LCJPdXQgYnkgezB9IGF0IHRoZSBsYXRlc3QuIjp7ZGU6IkFicmVpc2Ugc3DDpHRlc3RlbnMgdW0gezB9LiIsamE6InswfeOBvuOBp+OBq+mAgOWupOOBl+OBpuOBj+OBoOOBleOBhOOAgiIsa286IuuKpuyWtOuPhCB7MH3quYzsp4Ag7Ye07Iuk7ZWY7IS47JqULiIsZnI6IkTDqXBhcnQgYXUgcGx1cyB0YXJkIMOgIHswfS4iLGVzOiJTYWxpZGEgYSBtw6FzIHRhcmRhciBhIGxhcyB7MH0uIn0sIlRoaXMgaG90ZWwgc2VsbHMgbm8gcm9vbXMgYnkgdGhlIGhvdXIgdG9kYXkuIjp7ZGU6IkRpZXNlcyBIb3RlbCBiaWV0ZXQgaGV1dGUga2VpbmUgVGFnZXN6aW1tZXIgYW4uIixqYToi44GT44Gu44Ob44OG44Or44Gv5pys5pel44OH44Kk44Om44O844K544KS6LKp5aOy44GX44Gm44GE44G+44Gb44KT44CCIixrbzoi7J20IO2YuO2FlOydgCDsmKTripgg64yA7Iuk7J2EIO2MkOunpO2VmOyngCDslYrsirXri4jri6QuIixmcjoiQ2V0IGjDtHRlbCBuZSB2ZW5kIHBhcyBkZSBjaGFtYnJlcyDDoCBs4oCZaGV1cmUgYXVqb3VyZOKAmWh1aS4iLGVzOiJFc3RlIGhvdGVsIG5vIHZlbmRlIGhhYml0YWNpb25lcyBwb3IgaG9yYXMgaG95LiJ9LCJUb2RheSdzIHJvb21zIGJ5IHRoZSBob3VyIGFyZSBvdmVyIC0gdGhlIGxhc3Qgc3RhcnQgd2FzIHswfS4iOntkZToiRGllIFRhZ2VzemltbWVyIGbDvHIgaGV1dGUgc2luZCB2b3JiZWkg4oCTIGRlciBsZXR6dGUgQmVnaW5uIHdhciB1bSB7MH0uIixqYToi5pys5pel44Gu44OH44Kk44Om44O844K544Gv57WC5LqG44GX44G+44GX44Gf77yI5pyA57WC6ZaL5aeL44GvezB977yJ44CCIixrbzoi7Jik64qYIOuMgOyLpOydgCDrp4jqsJDrkJjsl4jsirXri4jri6QuIOuniOyngOuniSDsi5zsnpEg7Iuc6rCE7J2AIHswfeyYgOyKteuLiOuLpC4iLGZyOiJMZXMgY2hhbWJyZXMgw6AgbOKAmWhldXJlIGTigJlhdWpvdXJk4oCZaHVpIHNvbnQgdGVybWluw6llcyDigJQgbGUgZGVybmllciBkw6lidXQgw6l0YWl0IMOgIHswfS4iLGVzOiJMYXMgaGFiaXRhY2lvbmVzIHBvciBob3JhcyBkZSBob3kgaGFuIHRlcm1pbmFkbzogZWwgw7psdGltbyBpbmljaW8gZnVlIGEgbGFzIHswfS4ifSwiVG9kYXkncyByb29tcyBieSB0aGUgaG91ciBhcmUgb3Zlci4iOntkZToiRGllIFRhZ2VzemltbWVyIGbDvHIgaGV1dGUgc2luZCB2b3JiZWkuIixqYToi5pys5pel44Gu44OH44Kk44Om44O844K544Gv57WC5LqG44GX44G+44GX44Gf44CCIixrbzoi7Jik64qYIOuMgOyLpOydgCDrp4jqsJDrkJjsl4jsirXri4jri6QuIixmcjoiTGVzIGNoYW1icmVzIMOgIGzigJloZXVyZSBk4oCZYXVqb3VyZOKAmWh1aSBzb250IHRlcm1pbsOpZXMuIixlczoiTGFzIGhhYml0YWNpb25lcyBwb3IgaG9yYXMgZGUgaG95IGhhbiB0ZXJtaW5hZG8uIn0sIlJvb21zIGJ5IHRoZSBob3VyIGdvIG9uIHNhbGUgdG9kYXkgZnJvbSB7MH0uIjp7ZGU6IlRhZ2VzemltbWVyIHNpbmQgaGV1dGUgYWIgezB9IGJ1Y2hiYXIuIixqYToi5pys5pel44Gu44OH44Kk44Om44O844K544GvezB944GL44KJ6LKp5aOy44GX44G+44GZ44CCIixrbzoi7Jik64qYIOuMgOyLpOydgCB7MH3rtoDthLAg7YyQ66ek7ZWp64uI64ukLiIsZnI6IkxlcyBjaGFtYnJlcyDDoCBs4oCZaGV1cmUgc29udCBlbiB2ZW50ZSBhdWpvdXJk4oCZaHVpIGTDqHMgezB9LiIsZXM6IkxhcyBoYWJpdGFjaW9uZXMgcG9yIGhvcmFzIHNhbGVuIGEgbGEgdmVudGEgaG95IGRlc2RlIGxhcyB7MH0uIn0sIlJvb21zIGJ5IHRoZSBob3VyIGFyZSBub3Qgb24gc2FsZSB5ZXQgdG9kYXkuIjp7ZGU6IlRhZ2VzemltbWVyIHNpbmQgaGV1dGUgbm9jaCBuaWNodCBidWNoYmFyLiIsamE6IuacrOaXpeOBruODh+OCpOODpuODvOOCueOBr+OBvuOBoOiyqeWjsuOBl+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuyYpOuKmCDrjIDsi6TsnYAg7JWE7KeBIO2MkOunpCDsoITsnoXri4jri6QuIixmcjoiTGVzIGNoYW1icmVzIMOgIGzigJloZXVyZSBuZSBzb250IHBhcyBlbmNvcmUgZW4gdmVudGUgYXVqb3VyZOKAmWh1aS4iLGVzOiJMYXMgaGFiaXRhY2lvbmVzIHBvciBob3JhcyBhw7puIG5vIGVzdMOhbiBhIGxhIHZlbnRhIGhveS4ifSwiTm8gcm9vbSBzbGVlcHMgYSBwYXJ0eSB0aGlzIHNpemU6IHRoZSBsYXJnZXN0IHNsZWVwcyB7MH0sIHNvIGl0IHRha2VzIHsxfSByb29tcy4iOntkZToiS2VpbiBaaW1tZXIgYmlldGV0IFBsYXR6IGbDvHIgc28gdmllbGUgUGVyc29uZW46IERhcyBncsO2w590ZSBmYXNzdCB7MH0sIGVzIGJyYXVjaHQgYWxzbyB7MX0gWmltbWVyLiIsamE6IuOBk+OBruS6uuaVsOOBp+aziuOBvuOCjOOCi+WuouWupOOBr+OBguOCiuOBvuOBm+OCk+OAguacgOWkp+OBruWuouWupOOBr3swfeWQjeOBvuOBp+OBruOBn+OCgeOAgXsxfeWupOW/heimgeOBp+OBmeOAgiIsa286IuydtCDsnbjsm5DsnbQg66y17J2EIOyImCDsnojripQg6rCd7Iuk7J20IOyXhuyKteuLiOuLpC4g6rCA7J6lIO2BsCDqsJ3si6TsnbQgezB966qF7J2066+A66GcIOqwneyLpCB7MX3qsJzqsIAg7ZWE7JqU7ZWp64uI64ukLiIsZnI6IkF1Y3VuZSBjaGFtYnJlIG7igJlhY2N1ZWlsbGUgYXV0YW50IGRlIHBlcnNvbm5lcyA6IGxhIHBsdXMgZ3JhbmRlIGVuIGFjY3VlaWxsZSB7MH0sIGlsIGZhdXQgZG9uYyB7MX0gY2hhbWJyZXMuIixlczoiTmluZ3VuYSBoYWJpdGFjacOzbiBhbG9qYSBhIHRhbnRhcyBwZXJzb25hczogbGEgbcOhcyBncmFuZGUgZXMgcGFyYSB7MH0sIGFzw60gcXVlIGhhY2VuIGZhbHRhIHsxfSBoYWJpdGFjaW9uZXMuIn0sIkEgcm9vbSBoZXJlIHNsZWVwcyBhdCBtb3N0IHswfSAtIGZvciBtb3JlLCBhc2sgdGhlIGhvdGVsIGRpcmVjdGx5LiI6e2RlOiJFaW4gWmltbWVyIGhpZXIgZmFzc3QgaMO2Y2hzdGVucyB7MH0gUGVyc29uZW4g4oCTIGbDvHIgbWVociB3ZW5kZW4gU2llIHNpY2ggZGlyZWt0IGFuIGRhcyBIb3RlbC4iLGphOiIx5a6k44Gu5a6a5ZOh44Gv5pyA5aSnezB95ZCN44Gn44GZ44CC44Gd44KM5Lul5LiK44Gv44Ob44OG44Or44Gr55u05o6l44GK5ZWP44GE5ZCI44KP44Gb44GP44Gg44GV44GE44CCIixrbzoi6rCd7Iuk64u5IOy1nOuMgCB7MH3rqoXsnoXri4jri6QuIOq3uCDsnbTsg4HsnYAg7Zi47YWU7JeQIOyngeygkSDrrLjsnZjtlZjshLjsmpQuIixmcjoiVW5lIGNoYW1icmUgaWNpIGFjY3VlaWxsZSBhdSBwbHVzIHswfSBwZXJzb25uZXMg4oCUIGF1LWRlbMOgLCBjb250YWN0ZXogZGlyZWN0ZW1lbnQgbOKAmWjDtHRlbC4iLGVzOiJBcXXDrSB1bmEgaGFiaXRhY2nDs24gYWxvamEgY29tbyBtw6F4aW1vIGEgezB9OyBwYXJhIG3DoXMsIGNvbnN1bHRlIGRpcmVjdGFtZW50ZSBhbCBob3RlbC4ifSwiTm8gcm9vbSBoZXJlIHNsZWVwcyBhIHBhcnR5IHRoaXMgc2l6ZS4iOntkZToiSGllciBnaWJ0IGVzIGtlaW4gWmltbWVyIGbDvHIgc28gdmllbGUgUGVyc29uZW4uIixqYToi44GT44Gu5Lq65pWw44Gn5rOK44G+44KM44KL5a6i5a6k44Gv44GC44KK44G+44Gb44KT44CCIixrbzoi7J20IOyduOybkOydtCDrrLXsnYQg7IiYIOyeiOuKlCDqsJ3si6TsnbQg7JeG7Iq164uI64ukLiIsZnI6IkF1Y3VuZSBjaGFtYnJlIGljaSBu4oCZYWNjdWVpbGxlIGF1dGFudCBkZSBwZXJzb25uZXMuIixlczoiQXF1w60gbmluZ3VuYSBoYWJpdGFjacOzbiBhbG9qYSBhIHRhbnRhcyBwZXJzb25hcy4ifSwiVG9kYXkncyByb29tcyBieSB0aGUgaG91ciBhcmUgc29sZCBvdXQuIjp7ZGU6IkRpZSBUYWdlc3ppbW1lciBmw7xyIGhldXRlIHNpbmQgYXVzZ2VidWNodC4iLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrnjga/muoDlrqTjgafjgZnjgIIiLGtvOiLsmKTripgg64yA7Iuk7J2AIOunpOynhOuQmOyXiOyKteuLiOuLpC4iLGZyOiJMZXMgY2hhbWJyZXMgw6AgbOKAmWhldXJlIGTigJlhdWpvdXJk4oCZaHVpIHNvbnQgY29tcGzDqHRlcy4iLGVzOiJMYXMgaGFiaXRhY2lvbmVzIHBvciBob3JhcyBkZSBob3kgZXN0w6FuIGFnb3RhZGFzLiJ9LCJObyByb29tIHR5cGUgaGFzIHswfSBsZWZ0IGZvciB0aG9zZSBkYXRlcy4iOntkZToiRsO8ciBkaWVzZSBEYXRlbiBoYXQga2VpbmUgWmltbWVya2F0ZWdvcmllIG5vY2ggezB9IFppbW1lciBmcmVpLiIsamE6IuOBk+OBruaXpeeoi+OBp3swfeWupOepuuOBhOOBpuOBhOOCi+WuouWupOOCv+OCpOODl+OBr+OBguOCiuOBvuOBm+OCk+OAgiIsa286IuydtCDrgqDsp5zsl5AgezB96rCc6rCAIOuCqOydgCDqsJ3si6Qg7Jyg7ZiV7J20IOyXhuyKteuLiOuLpC4iLGZyOiJBdWN1biB0eXBlIGRlIGNoYW1icmUgbuKAmWVuIGEgZW5jb3JlIHswfSDDoCBjZXMgZGF0ZXMuIixlczoiTmluZ8O6biB0aXBvIGRlIGhhYml0YWNpw7NuIHRpZW5lIHswfSBsaWJyZXMgZW4gZXNhcyBmZWNoYXMuIn0sIkV2ZXJ5IHJvb20gaXMgdGFrZW4gZm9yIHRob3NlIGRhdGVzLiI6e2RlOiJGw7xyIGRpZXNlIERhdGVuIGlzdCBhbGxlcyBhdXNnZWJ1Y2h0LiIsamE6IuOBk+OBruaXpeeoi+OBr+a6gOWupOOBp+OBmeOAgiIsa286IuydtCDrgqDsp5zripQg66qo65OgIOqwneyLpOydtCDsmIjslb3rkJjsl4jsirXri4jri6QuIixmcjoiVG91dCBlc3QgY29tcGxldCDDoCBjZXMgZGF0ZXMuIixlczoiVG9kbyBlc3TDoSBvY3VwYWRvIGVuIGVzYXMgZmVjaGFzLiJ9LCJPbmx5IHJhdGVzIHBhaWQgaW4gYWR2YW5jZSBhcmUgbGVmdCBoZXJlLCBhbmQgdGhpcyBib29rcyBvbmx5IHJvb21zIHBhaWQgYXQgdGhlIGhvdGVsLiI6e2RlOiJIaWVyIHNpbmQgbnVyIG5vY2ggVGFyaWZlIG1pdCBWb3JhdXN6YWhsdW5nIGZyZWksIHVuZCBoaWVyIGxhc3NlbiBzaWNoIG51ciBaaW1tZXIgbWl0IFphaGx1bmcgaW0gSG90ZWwgYnVjaGVuLiIsamE6Iuaui+OBo+OBpuOBhOOCi+OBruOBr+S6i+WJjeaJleOBhOOBruaWmemHkeOBruOBv+OBp+OAgeOBk+OBk+OBp+OBr+ePvuWcsOaJleOBhOOBruWuouWupOOBl+OBi+S6iOe0hOOBp+OBjeOBvuOBm+OCk+OAgiIsa286IuuCqOydgCDsmpTquIjsnYAg7ISg6rKw7KCc67+Q7J2066mwLCDsl6zquLDshJzripQg7ZiE7J6lIOqysOygnCDqsJ3si6Trp4wg7JiI7JW97ZWgIOyImCDsnojsirXri4jri6QuIixmcjoiSWwgbmUgcmVzdGUgaWNpIHF1ZSBkZXMgdGFyaWZzIHByw6lwYXnDqXMsIGV0IGNlIHNlcnZpY2UgbmUgcsOpc2VydmUgcXVlIGRlcyBjaGFtYnJlcyBwYXnDqWVzIMOgIGzigJlow7R0ZWwuIixlczoiU29sbyBxdWVkYW4gdGFyaWZhcyBkZSBwcmVwYWdvLCB5IGFxdcOtIHNvbG8gc2UgcmVzZXJ2YW4gaGFiaXRhY2lvbmVzIGNvbiBwYWdvIGVuIGVsIGhvdGVsLiJ9LCJObyByYXRlIGJvb2tzIHswfSByb29tcyBhdCBvbmNlIC0gYXNrIGZvciBmZXdlci4iOntkZToiS2VpbiBUYXJpZiBlcmxhdWJ0IHswfSBaaW1tZXIgYXVmIGVpbm1hbCDigJMgYml0dGUgd2VuaWdlciB3w6RobGVuLiIsamE6InswfeWupOOCkuS4gOW6puOBq+S6iOe0hOOBp+OBjeOCi+aWmemHkeOBr+OBguOCiuOBvuOBm+OCk+OAguWupOaVsOOCkua4m+OCieOBl+OBpuOBj+OBoOOBleOBhOOAgiIsa286Iu2VnCDrsojsl5Ag6rCd7IukIHswfeqwnOulvCDsmIjslb3tlaAg7IiYIOyeiOuKlCDsmpTquIjsnbQg7JeG7Iq164uI64ukLiDqsJ3si6Qg7IiY66W8IOykhOyXrCDso7zshLjsmpQuIixmcjoiQXVjdW4gdGFyaWYgbmUgcGVybWV0IGRlIHLDqXNlcnZlciB7MH0gY2hhbWJyZXMgw6AgbGEgZm9pcyDigJQgZGVtYW5kZXotZW4gbW9pbnMuIixlczoiTmluZ3VuYSB0YXJpZmEgcGVybWl0ZSByZXNlcnZhciB7MH0gaGFiaXRhY2lvbmVzIGEgbGEgdmV6OiBwaWRhIG1lbm9zLiJ9LCJUaGF0IG1hbnkgcm9vbXMgY2Fubm90IGJlIGJvb2tlZCBhdCBvbmNlIC0gYXNrIGZvciBmZXdlci4iOntkZToiU28gdmllbGUgWmltbWVyIGxhc3NlbiBzaWNoIG5pY2h0IGF1ZiBlaW5tYWwgYnVjaGVuIOKAkyBiaXR0ZSB3ZW5pZ2VyIHfDpGhsZW4uIixqYToi5LiA5bqm44Gr44GT44KM44Gg44GR44Gu5a6k5pWw44Gv5LqI57SE44Gn44GN44G+44Gb44KT44CC5a6k5pWw44KS5rib44KJ44GX44Gm44GP44Gg44GV44GE44CCIixrbzoi7ZWcIOuyiOyXkCDsnbTrp4ztgbzsnZgg6rCd7Iuk7J2AIOyYiOyVve2VoCDsiJgg7JeG7Iq164uI64ukLiDqsJ3si6Qg7IiY66W8IOykhOyXrCDso7zshLjsmpQuIixmcjoiSW1wb3NzaWJsZSBkZSByw6lzZXJ2ZXIgYXV0YW50IGRlIGNoYW1icmVzIMOgIGxhIGZvaXMg4oCUIGRlbWFuZGV6LWVuIG1vaW5zLiIsZXM6Ik5vIHNlIHB1ZWRlbiByZXNlcnZhciB0YW50YXMgaGFiaXRhY2lvbmVzIGEgbGEgdmV6OiBwaWRhIG1lbm9zLiJ9LCJOb3Qgb24gc2FsZSB5ZXQ6IHJvb21zIGFyZSBzb2xkIHVwIHRvIHswfSBkYXlzIGFoZWFkLiI6e2RlOiJOb2NoIG5pY2h0IGJ1Y2hiYXI6IFppbW1lciB3ZXJkZW4gaMO2Y2hzdGVucyB7MH0gVGFnZSBpbSBWb3JhdXMgdmVya2F1ZnQuIixqYToi44G+44Gg6LKp5aOy44GX44Gm44GE44G+44Gb44KT44CC5LqI57SE44GvezB95pel5YmN44GL44KJ5Y+X44GR5LuY44GR44G+44GZ44CCIixrbzoi7JWE7KeBIO2MkOunpCDsoITsnoXri4jri6QuIOqwneyLpOydgCDstZzrjIAgezB97J28IOyghOu2gO2EsCDtjJDrp6Ttlanri4jri6QuIixmcjoiUGFzIGVuY29yZSBlbiB2ZW50ZSA6IGxlcyBjaGFtYnJlcyBzb250IHZlbmR1ZXMganVzcXXigJnDoCB7MH0gam91cnMgw6AgbOKAmWF2YW5jZS4iLGVzOiJBw7puIG5vIGVzdMOhIGEgbGEgdmVudGE6IGxhcyBoYWJpdGFjaW9uZXMgc2UgdmVuZGVuIGNvbiBoYXN0YSB7MH0gZMOtYXMgZGUgYW50ZWxhY2nDs24uIn0sIk5vdCBvbiBzYWxlIHlldDogdGhvc2UgZGF0ZXMgYXJlIHRvbyBmYXIgYWhlYWQuIjp7ZGU6Ik5vY2ggbmljaHQgYnVjaGJhcjogRGllc2UgRGF0ZW4gbGllZ2VuIHp1IHdlaXQgaW4gZGVyIFp1a3VuZnQuIixqYToi44G+44Gg6LKp5aOy44GX44Gm44GE44G+44Gb44KT44CC5pel56iL44GM5YWI44GZ44GO44G+44GZ44CCIixrbzoi7JWE7KeBIO2MkOunpCDsoITsnoXri4jri6QuIOuCoOynnOqwgCDrhIjrrLQg66mJ64uI64ukLiIsZnI6IlBhcyBlbmNvcmUgZW4gdmVudGUgOiBjZXMgZGF0ZXMgc29udCB0cm9wIGxvaW50YWluZXMuIixlczoiQcO6biBubyBlc3TDoSBhIGxhIHZlbnRhOiBlc2FzIGZlY2hhcyBlc3TDoW4gZGVtYXNpYWRvIGxlam9zLiJ9LCJObyBhcnJpdmFscyBvbiB7MH0uIjp7ZGU6IkFtIHswfSBpc3Qga2VpbmUgQW5yZWlzZSBtw7ZnbGljaC4iLGphOiJ7MH3jga/jg4Hjgqfjg4Pjgq/jgqTjg7PjgafjgY3jgb7jgZvjgpPjgIIiLGtvOiJ7MH3sl5DripQg7LK07YGs7J247ZWgIOyImCDsl4bsirXri4jri6QuIixmcjoiUGFzIGTigJlhcnJpdsOpZSBsZSB7MH0uIixlczoiTm8gc2UgYWRtaXRlbiBsbGVnYWRhcyBlbCB7MH0uIn0sIk5vIGFycml2YWxzIHRoYXQgZGF5LiI6e2RlOiJBbiBkaWVzZW0gVGFnIGlzdCBrZWluZSBBbnJlaXNlIG3DtmdsaWNoLiIsamE6IuOBk+OBruaXpeOBr+ODgeOCp+ODg+OCr+OCpOODs+OBp+OBjeOBvuOBm+OCk+OAgiIsa286IuydtCDrgqDsnYAg7LK07YGs7J247ZWgIOyImCDsl4bsirXri4jri6QuIixmcjoiUGFzIGTigJlhcnJpdsOpZSBjZSBqb3VyLWzDoC4iLGVzOiJObyBzZSBhZG1pdGVuIGxsZWdhZGFzIGVzZSBkw61hLiJ9LCJObyBkZXBhcnR1cmVzIG9uIHswfS4iOntkZToiQW0gezB9IGlzdCBrZWluZSBBYnJlaXNlIG3DtmdsaWNoLiIsamE6InswfeOBr+ODgeOCp+ODg+OCr+OCouOCpuODiOOBp+OBjeOBvuOBm+OCk+OAgiIsa286InswfeyXkOuKlCDssrTtgazslYTsm4PtlaAg7IiYIOyXhuyKteuLiOuLpC4iLGZyOiJQYXMgZGUgZMOpcGFydCBsZSB7MH0uIixlczoiTm8gc2UgYWRtaXRlbiBzYWxpZGFzIGVsIHswfS4ifSwiTm8gZGVwYXJ0dXJlcyB0aGF0IGRheS4iOntkZToiQW4gZGllc2VtIFRhZyBpc3Qga2VpbmUgQWJyZWlzZSBtw7ZnbGljaC4iLGphOiLjgZPjga7ml6Xjga/jg4Hjgqfjg4Pjgq/jgqLjgqbjg4jjgafjgY3jgb7jgZvjgpPjgIIiLGtvOiLsnbQg64Kg7J2AIOyytO2BrOyVhOybg+2VoCDsiJgg7JeG7Iq164uI64ukLiIsZnI6IlBhcyBkZSBkw6lwYXJ0IGNlIGpvdXItbMOgLiIsZXM6Ik5vIHNlIGFkbWl0ZW4gc2FsaWRhcyBlc2UgZMOtYS4ifSwiVGhlIHN0YXkgaGFzIHRvIGJlIGF0IGxlYXN0IHswfSBuaWdodHMuIjp7ZGU6IkRlciBBdWZlbnRoYWx0IG11c3MgbWluZGVzdGVucyB7MH0gTsOkY2h0ZSBkYXVlcm4uIixqYToiezB95rOK5Lul5LiK44Gu5rue5Zyo44GM5b+F6KaB44Gn44GZ44CCIixrbzoi7LWc7IaMIHswfeuwlSDsnbTsg4Eg66i466y865+s7JW8IO2VqeuLiOuLpC4iLGZyOiJMZSBzw6lqb3VyIGRvaXQgZHVyZXIgYXUgbW9pbnMgezB9IG51aXRzLiIsZXM6IkxhIGVzdGFuY2lhIGRlYmUgc2VyIGRlIGFsIG1lbm9zIHswfSBub2NoZXMuIn0sIlRoZSBzdGF5IGlzIHRvbyBzaG9ydC4iOntkZToiRGVyIEF1ZmVudGhhbHQgaXN0IHp1IGt1cnouIixqYToi5rue5Zyo5pel5pWw44GM55+t44GZ44GO44G+44GZ44CCIixrbzoi7IiZ67CVIOq4sOqwhOydtCDrhIjrrLQg7Ken7Iq164uI64ukLiIsZnI6IkxlIHPDqWpvdXIgZXN0IHRyb3AgY291cnQuIixlczoiTGEgZXN0YW5jaWEgZXMgZGVtYXNpYWRvIGNvcnRhLiJ9LCJUaGUgc3RheSBjYW4gYmUgYXQgbW9zdCB7MH0gbmlnaHRzLiI6e2RlOiJEZXIgQXVmZW50aGFsdCBkYXJmIGjDtmNoc3RlbnMgezB9IE7DpGNodGUgZGF1ZXJuLiIsamE6Iua7nuWcqOOBr+acgOWkp3swfeaziuOBvuOBp+OBp+OBmeOAgiIsa286Iuy1nOuMgCB7MH3rsJXquYzsp4Drp4wg66i466y8IOyImCDsnojsirXri4jri6QuIixmcjoiTGUgc8Opam91ciBwZXV0IGR1cmVyIGF1IHBsdXMgezB9IG51aXRzLiIsZXM6IkxhIGVzdGFuY2lhIHB1ZWRlIHNlciBkZSB7MH0gbm9jaGVzIGNvbW8gbcOheGltby4ifSwiVGhlIHN0YXkgaXMgdG9vIGxvbmcuIjp7ZGU6IkRlciBBdWZlbnRoYWx0IGlzdCB6dSBsYW5nLiIsamE6Iua7nuWcqOaXpeaVsOOBjOmVt+OBmeOBjuOBvuOBmeOAgiIsa286IuyImeuwlSDquLDqsITsnbQg64SI66y0IOq5geuLiOuLpC4iLGZyOiJMZSBzw6lqb3VyIGVzdCB0cm9wIGxvbmcuIixlczoiTGEgZXN0YW5jaWEgZXMgZGVtYXNpYWRvIGxhcmdhLiJ9LCJUaG9zZSBkYXRlcyBoYXZlIGEgYm9va2luZyBydWxlIC0gdHJ5IG90aGVyIGRhdGVzLiI6e2RlOiJGw7xyIGRpZXNlIERhdGVuIGdpbHQgZWluZSBCdWNodW5nc3JlZ2VsIOKAkyB2ZXJzdWNoZW4gU2llIGFuZGVyZSBEYXRlbi4iLGphOiLjgZPjga7ml6XnqIvjgavjga/kuojntITmnaHku7bjgYzjgYLjgorjgb7jgZnjgILliKXjga7ml6XnqIvjgpLjgYroqabjgZfjgY/jgaDjgZXjgYTjgIIiLGtvOiLsnbQg64Kg7Kec7JeQ64qUIOyYiOyVvSDsoJztlZzsnbQg7J6I7Iq164uI64ukLiDri6Trpbgg64Kg7Kec66W8IOyEoO2Dne2VtCDrs7TshLjsmpQuIixmcjoiQ2VzIGRhdGVzIHNvbnQgc291bWlzZXMgw6AgdW5lIHLDqGdsZSBkZSByw6lzZXJ2YXRpb24g4oCUIGVzc2F5ZXogZOKAmWF1dHJlcyBkYXRlcy4iLGVzOiJFc2FzIGZlY2hhcyB0aWVuZW4gdW5hIHJlc3RyaWNjacOzbiBkZSByZXNlcnZhOiBwcnVlYmUgb3RyYXMgZmVjaGFzLiJ9LCJOb3Qgb24gc2FsZSBmb3IgdGhvc2UgZGF0ZXMuIjp7ZGU6IkbDvHIgZGllc2UgRGF0ZW4gbmljaHQgYnVjaGJhci4iLGphOiLjgZPjga7ml6XnqIvjga/osqnlo7LjgZfjgabjgYTjgb7jgZvjgpPjgIIiLGtvOiLsnbQg64Kg7Kec7JeQ64qUIO2MkOunpO2VmOyngCDslYrsirXri4jri6QuIixmcjoiUGFzIGVuIHZlbnRlIMOgIGNlcyBkYXRlcy4iLGVzOiJObyBlc3TDoSBhIGxhIHZlbnRhIHBhcmEgZXNhcyBmZWNoYXMuIn0sIlRoaXMgaG90ZWwncyByb29tcyBhcmUgbm90IHNvbGQgaGVyZS4iOntkZToiRGllIFppbW1lciBkaWVzZXMgSG90ZWxzIHdlcmRlbiBoaWVyIG5pY2h0IHZlcmthdWZ0LiIsamE6IuOBk+OBruODm+ODhuODq+OBruWuouWupOOBr+OBk+OBk+OBp+OBr+iyqeWjsuOBl+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuydtCDtmLjthZTsnZgg6rCd7Iuk7J2AIOyXrOq4sOyEnCDtjJDrp6TtlZjsp4Ag7JWK7Iq164uI64ukLiIsZnI6IkxlcyBjaGFtYnJlcyBkZSBjZXQgaMO0dGVsIG5lIHNvbnQgcGFzIHZlbmR1ZXMgaWNpLiIsZXM6IkxhcyBoYWJpdGFjaW9uZXMgZGUgZXN0ZSBob3RlbCBubyBzZSB2ZW5kZW4gYXF1w60uIn0sIlRoaXMgaG90ZWwncyByb29tcyBjb3VsZCBub3QgYmUgbG9va2VkIHVwIGp1c3Qgbm93IC0gdHJ5IGFnYWluIGluIGEgbW9tZW50LiI6e2RlOiJEaWUgWmltbWVyIGRpZXNlcyBIb3RlbHMga29ubnRlbiBnZXJhZGUgbmljaHQgYWJnZXJ1ZmVuIHdlcmRlbiDigJMgdmVyc3VjaGVuIFNpZSBlcyBnbGVpY2ggbm9jaCBlaW5tYWwuIixqYToi44GT44Gu44Ob44OG44Or44Gu5a6i5a6k44KS5LuK44Gv5Y+W5b6X44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CC5bCR44GX5b6M44Gr44KC44GG5LiA5bqm44GK6Kmm44GX44GP44Gg44GV44GE44CCIixrbzoi7KeA6riI7J2AIOydtCDtmLjthZTsnZgg6rCd7Iuk7J2EIOyhsO2ajO2VmOyngCDrqrvtlojsirXri4jri6QuIOyeoOyLnCDtm4Qg64uk7IucIOyLnOuPhO2VtCDso7zshLjsmpQuIixmcjoiTGVzIGNoYW1icmVzIGRlIGNldCBow7R0ZWwgbuKAmW9udCBwYXMgcHUgw6p0cmUgY29uc3VsdMOpZXMgcG91ciBs4oCZaW5zdGFudCDigJQgcsOpZXNzYXlleiBkYW5zIHVuIG1vbWVudC4iLGVzOiJObyBzZSBwdWRpZXJvbiBjb25zdWx0YXIgbGFzIGhhYml0YWNpb25lcyBkZSBlc3RlIGhvdGVsIGFob3JhIG1pc21vOiBpbnTDqW50ZWxvIGRlIG51ZXZvIGVuIHVuIG1vbWVudG8uIn0sIlRoZSBwcmljZSBvciB0ZXJtcyBjaGFuZ2VkIGZyb20gd2hhdCB5b3Ugd2VyZSBzaG93biwgc28gaXQgd2FzIG5vdCBib29rZWQgYXQgdGhlIG5ldyBvbmVzLiI6e2RlOiJQcmVpcyBvZGVyIEJlZGluZ3VuZ2VuIGhhYmVuIHNpY2ggZ2VnZW7DvGJlciBkZXIgQW56ZWlnZSBnZcOkbmRlcnQsIGRhaGVyIHd1cmRlIG5pY2h0IHp1IGRlbiBuZXVlbiBnZWJ1Y2h0LiIsamE6IuihqOekuuOBleOCjOOBn+aWmemHkeOBvuOBn+OBr+adoeS7tuOBjOWkieOCj+OBo+OBn+OBn+OCgeOAgeaWsOOBl+OBhOadoeS7tuOBp+OBr+S6iOe0hOOBl+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuuztOyXrCDrk5zrprAg7JqU6riI7J2064KYIOyhsOqxtOydtCDrsJTrgIzslrQg7IOIIOyhsOqxtOycvOuhnOuKlCDsmIjslb3tlZjsp4Ag7JWK7JWY7Iq164uI64ukLiIsZnI6IkxlIHByaXggb3UgbGVzIGNvbmRpdGlvbnMgb250IGNoYW5nw6kgcGFyIHJhcHBvcnQgw6AgY2UgcXVpIHZvdXMgYSDDqXTDqSBtb250csOpIDogcmllbiBu4oCZYSDDqXTDqSByw6lzZXJ2w6kgYXV4IG5vdXZlbGxlcyBjb25kaXRpb25zLiIsZXM6IkVsIHByZWNpbyBvIGxhcyBjb25kaWNpb25lcyBjYW1iaWFyb24gcmVzcGVjdG8gYSBsbyBxdWUgc2UgbGUgbW9zdHLDsywgYXPDrSBxdWUgbm8gc2UgcmVzZXJ2w7MgY29uIGxvcyBudWV2b3MuIn0sIlRoaXMgc3RheSB3YXMgaGVsZCBiYWNrIGJ5IGEgYm9va2luZyBsaW1pdCBmb3Igbm93IC0gYm9vayBmZXdlciwgb3IgdHJ5IGxhdGVyLiI6e2RlOiJEaWVzZXIgQXVmZW50aGFsdCB3aXJkIHZvcmVyc3QgZHVyY2ggZWluIEJ1Y2h1bmdzbGltaXQgenVyw7xja2dlaGFsdGVuIOKAkyBidWNoZW4gU2llIHdlbmlnZXIgb2RlciB2ZXJzdWNoZW4gU2llIGVzIHNww6R0ZXIuIixqYToi44GT44Gu5rue5Zyo44Gv5LqI57SE5LiK6ZmQ44Gu44Gf44KB54++5Zyo44GK5Y+X44GR44Gn44GN44G+44Gb44KT44CC5pWw44KS5rib44KJ44GZ44GL44CB5b6M44Gn44GK6Kmm44GX44GP44Gg44GV44GE44CCIixrbzoi7J20IOyImeuwleydgCDsmIjslb0g7ZWc64+E66GcIOyduO2VtCDsp4DquIjsnYAg7JiI7JW965CY7KeAIOyViuyVmOyKteuLiOuLpC4g7IiY65+J7J2EIOykhOydtOqxsOuCmCDrgpjspJHsl5Ag64uk7IucIOyLnOuPhO2VtCDso7zshLjsmpQuIixmcjoiQ2Ugc8Opam91ciBlc3QgYmxvcXXDqSBwb3VyIGzigJlpbnN0YW50IHBhciB1bmUgbGltaXRlIGRlIHLDqXNlcnZhdGlvbiDigJQgcsOpc2VydmV6IG1vaW5zLCBvdSByw6llc3NheWV6IHBsdXMgdGFyZC4iLGVzOiJFc3RhIGVzdGFuY2lhIHF1ZWTDsyByZXRlbmlkYSBwb3IgdW4gbMOtbWl0ZSBkZSByZXNlcnZhczogcmVzZXJ2ZSBtZW5vcyBvIGludMOpbnRlbG8gbcOhcyB0YXJkZS4ifSwiQ2hlY2staW4gaGFzIHBhc3NlZCAtIHRvZGF5IGlzIHswfS4iOntkZToiRGVyIEFucmVpc2V0YWcgaXN0IHZvcmJlaSDigJMgaGV1dGUgaXN0IHswfS4iLGphOiLjg4Hjgqfjg4Pjgq/jgqTjg7Pml6Xjga/pgY7jgY7jgabjgYTjgb7jgZnjgILmnKzml6Xjga97MH3jgafjgZnjgIIiLGtvOiLssrTtgazsnbgg64Kg7Kec6rCAIOyngOuCrOyKteuLiOuLpC4g7Jik64qY7J2AIHswfeyeheuLiOuLpC4iLGZyOiJMYSBkYXRlIGTigJlhcnJpdsOpZSBlc3QgcGFzc8OpZSDigJQgbm91cyBzb21tZXMgbGUgezB9LiIsZXM6IkxhIGZlY2hhIGRlIGxsZWdhZGEgeWEgcGFzw7M6IGhveSBlcyB7MH0uIn0sIkNoZWNrLWluIGhhcyBwYXNzZWQuIjp7ZGU6IkRlciBBbnJlaXNldGFnIGlzdCB2b3JiZWkuIixqYToi44OB44Kn44OD44Kv44Kk44Oz5pel44Gv6YGO44GO44Gm44GE44G+44GZ44CCIixrbzoi7LK07YGs7J24IOuCoOynnOqwgCDsp4DrgqzsirXri4jri6QuIixmcjoiTGEgZGF0ZSBk4oCZYXJyaXbDqWUgZXN0IHBhc3PDqWUuIixlczoiTGEgZmVjaGEgZGUgbGxlZ2FkYSB5YSBwYXPDsy4ifSwiQ2hlY2stb3V0IGhhcyB0byBiZSBhZnRlciBjaGVjay1pbiAtIG9uZSBuaWdodCBtZWFucyBsZWF2aW5nIHRoZSBuZXh0IGRheS4iOntkZToiRGllIEFicmVpc2UgbXVzcyBuYWNoIGRlciBBbnJlaXNlIGxpZWdlbiDigJMgZWluZSBOYWNodCBoZWnDn3QgQWJyZWlzZSBhbSBuw6RjaHN0ZW4gVGFnLiIsamE6IuODgeOCp+ODg+OCr+OCouOCpuODiOOBr+ODgeOCp+ODg+OCr+OCpOODs+OCiOOCiuW+jOOBruaXpeOBq+OBl+OBpuOBj+OBoOOBleOBhO+8iDHms4rjgarjgonnv4zml6XvvInjgIIiLGtvOiLssrTtgazslYTsm4PsnYAg7LK07YGs7J24IOydtO2bhOyXrOyVvCDtlanri4jri6QuIDHrsJXsnbTrqbQg64uk7J2MIOuCoCDssrTtgazslYTsm4PsnoXri4jri6QuIixmcjoiTGUgZMOpcGFydCBkb2l0IHN1aXZyZSBs4oCZYXJyaXbDqWUg4oCUIHVuZSBudWl0LCBj4oCZZXN0IHBhcnRpciBsZSBsZW5kZW1haW4uIixlczoiTGEgc2FsaWRhIGRlYmUgc2VyIHBvc3RlcmlvciBhIGxhIGxsZWdhZGE6IHVuYSBub2NoZSBzaWduaWZpY2Egc2FsaXIgYWwgZMOtYSBzaWd1aWVudGUuIn0sIkF0IG1vc3QgezB9IG5pZ2h0cyBjYW4gYmUgYm9va2VkIGF0IG9uY2UuIjp7ZGU6IkjDtmNoc3RlbnMgezB9IE7DpGNodGUgbGFzc2VuIHNpY2ggYXVmIGVpbm1hbCBidWNoZW4uIixqYToi5LiA5bqm44Gr5LqI57SE44Gn44GN44KL44Gu44Gv5pyA5aSnezB95rOK44Gn44GZ44CCIixrbzoi7ZWcIOuyiOyXkCDstZzrjIAgezB967CV6rmM7KeAIOyYiOyVve2VoCDsiJgg7J6I7Iq164uI64ukLiIsZnI6IkF1IHBsdXMgezB9IG51aXRzIHBldXZlbnQgw6p0cmUgcsOpc2VydsOpZXMgw6AgbGEgZm9pcy4iLGVzOiJTZSBwdWVkZW4gcmVzZXJ2YXIgY29tbyBtw6F4aW1vIHswfSBub2NoZXMgYSBsYSB2ZXouIn0sIlRoYXQgbWFueSBuaWdodHMgY2Fubm90IGJlIGJvb2tlZCBhdCBvbmNlLiI6e2RlOiJTbyB2aWVsZSBOw6RjaHRlIGxhc3NlbiBzaWNoIG5pY2h0IGF1ZiBlaW5tYWwgYnVjaGVuLiIsamE6IuS4gOW6puOBq+OBk+OCjOOBoOOBkeOBruaziuaVsOOBr+S6iOe0hOOBp+OBjeOBvuOBm+OCk+OAgiIsa286Iu2VnCDrsojsl5Ag7J2066eM7YG87J2YIOuwleyImOuKlCDsmIjslb3tlaAg7IiYIOyXhuyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIHLDqXNlcnZlciBhdXRhbnQgZGUgbnVpdHMgw6AgbGEgZm9pcy4iLGVzOiJObyBzZSBwdWVkZW4gcmVzZXJ2YXIgdGFudGFzIG5vY2hlcyBhIGxhIHZlei4ifSwiQ2hvb3NlIHRoZSBkYXRlcyBhbmQgdGhlIGd1ZXN0cyBhZ2Fpbi4iOntkZToiV8OkaGxlbiBTaWUgRGF0ZW4gdW5kIEfDpHN0ZSBiaXR0ZSBuZXUuIixqYToi5pel56iL44Go5Lq65pWw44KS6YG444Gz55u044GX44Gm44GP44Gg44GV44GE44CCIixrbzoi64Kg7Kec7JmAIOyduOybkOydhCDri6Tsi5wg7ISg7YOd7ZW0IOyjvOyEuOyalC4iLGZyOiJDaG9pc2lzc2V6IMOgIG5vdXZlYXUgbGVzIGRhdGVzIGV0IGxlIG5vbWJyZSBkZSBwZXJzb25uZXMuIixlczoiVnVlbHZhIGEgZWxlZ2lyIGxhcyBmZWNoYXMgeSBsb3MgaHXDqXNwZWRlcy4ifSwiVGhvc2UgZGF0ZXMgY2Fubm90IGJlIGJvb2tlZCBoZXJlLiI6e2RlOiJEaWVzZSBEYXRlbiBzaW5kIGhpZXIgbmljaHQgYnVjaGJhci4iLGphOiLjgZPjga7ml6XnqIvjga/jgZPjgZPjgafjga/kuojntITjgafjgY3jgb7jgZvjgpPjgIIiLGtvOiLsnbQg64Kg7Kec64qUIOyXrOq4sOyEnCDsmIjslb3tlaAg7IiYIOyXhuyKteuLiOuLpC4iLGZyOiJDZXMgZGF0ZXMgbmUgcGV1dmVudCBwYXMgw6p0cmUgcsOpc2VydsOpZXMgaWNpLiIsZXM6IkVzYXMgZmVjaGFzIG5vIHNlIHB1ZWRlbiByZXNlcnZhciBhcXXDrS4ifSwiTm8gcm9vbSBoZXJlIHNsZWVwcyB7MH0iOntkZToiSGllciBnaWJ0IGVzIGtlaW4gWmltbWVyIGbDvHIgezB9IFBlcnNvbmVuIixqYToiezB95ZCN44Gn5rOK44G+44KM44KL5a6i5a6k44Gv44GC44KK44G+44Gb44KTIixrbzoiezB966qF7J20IOusteydhCDqsJ3si6TsnbQg7JeG7Iq164uI64ukIixmcjoiQXVjdW5lIGNoYW1icmUgaWNpIHBvdXIgezB9IHBlcnNvbm5lcyIsZXM6IkFxdcOtIG5vIGhheSBoYWJpdGFjacOzbiBwYXJhIHswfSBwZXJzb25hcyJ9LCJUaGUgbGFyZ2VzdCBzbGVlcHMgezB9LiBCb29rIHsxfSByb29tcywgZWFjaCBmb3IgdXAgdG8gezJ9LCBhbmQgdGhlIHszfSBvZiB5b3UgZml0LiI6e2RlOiJEYXMgZ3LDtsOfdGUgZmFzc3QgezB9IFBlcnNvbmVuLiBCdWNoZW4gU2llIHsxfSBaaW1tZXIgbWl0IGplIGJpcyB6dSB7Mn0gUGVyc29uZW4sIGRhbm4gZmluZGVuIGFsbGUgezN9IFBsYXR6LiIsamE6IuacgOWkp+OBruWuouWupOOBr3swfeWQjeOBvuOBp+OBp+OBmeOAgjHlrqR7Mn3lkI3jgb7jgafjgad7MX3lrqTkuojntITjgZnjgozjgbDjgIF7M33lkI3lhajlk6HjgYzms4rjgb7jgozjgb7jgZnjgIIiLGtvOiLqsIDsnqUg7YGwIOqwneyLpOydgCB7MH3rqoXquYzsp4DsnoXri4jri6QuIOqwneyLpOuLuSDstZzrjIAgezJ966qF7Jy866GcIHsxfeqwnOulvCDsmIjslb3tlZjrqbQgezN966qFIOuqqOuRkCDrrLXsnYQg7IiYIOyeiOyKteuLiOuLpC4iLGZyOiJMYSBwbHVzIGdyYW5kZSBhY2N1ZWlsbGUgezB9IHBlcnNvbm5lcy4gUsOpc2VydmV6IHsxfSBjaGFtYnJlcyBkZSB7Mn0gcGVyc29ubmVzIGF1IHBsdXMsIGV0IHZvdXMgc2VyZXogbG9nw6lzIHRvdXMgbGVzIHszfS4iLGVzOiJMYSBtw6FzIGdyYW5kZSBlcyBwYXJhIHswfS4gUmVzZXJ2ZSB7MX0gaGFiaXRhY2lvbmVzIGRlIGhhc3RhIHsyfSBjYWRhIHVuYSB5IGNhYmVuIGxvcyB7M30uIn0sIlRyeSBmZXdlciBndWVzdHMgaW4gZWFjaCByb29tLiI6e2RlOiJWZXJzdWNoZW4gU2llIHdlbmlnZXIgR8Okc3RlIHBybyBaaW1tZXIuIixqYToiMeWupOOBguOBn+OCiuOBruS6uuaVsOOCkua4m+OCieOBl+OBpuOBv+OBpuOBj+OBoOOBleOBhOOAgiIsa286IuqwneyLpOuLuSDsnbjsm5DsnYQg7KSE7JesIOuztOyEuOyalC4iLGZyOiJFc3NheWV6IG1vaW5zIGRlIHBlcnNvbm5lcyBwYXIgY2hhbWJyZS4iLGVzOiJQcnVlYmUgY29uIG1lbm9zIGh1w6lzcGVkZXMgcG9yIGhhYml0YWNpw7NuLiJ9LCJCb29rIHswfSByb29tcywgezF9IGluIGVhY2giOntkZToiezB9IFppbW1lciBidWNoZW4sIGplIHsxfSIsamE6InswfeWupOS6iOe0hO+8iDHlrqR7MX3lkI3vvIkiLGtvOiLqsJ3si6QgezB96rCcIOyYiOyVvSwg6rCd7Iuk64u5IHsxfeuqhSIsZnI6IlLDqXNlcnZlciB7MH0gY2hhbWJyZXMsIHsxfSBwYXIgY2hhbWJyZSIsZXM6IlJlc2VydmFyIHswfSBoYWJpdGFjaW9uZXMsIHsxfSBlbiBjYWRhIHVuYSJ9LCJBcnJpdmUgYW5vdGhlciBkYXkgwrcgezB9IGZyb20iOntkZToiQW5kZXJlciBBbnJlaXNldGFnIMK3IFByZWlzZSBmw7xyIHswfSIsamE6IuWIpeOBruaXpeOBq+ODgeOCp+ODg+OCr+OCpOODsyDCtyB7MH3jga7mnIDlrokiLGtvOiLri6Trpbgg64KgIOyytO2BrOyduCDCtyB7MH0g7LWc7KCA6rCAIixmcjoiQXV0cmUgam91ciBk4oCZYXJyaXbDqWUgwrcgcHJpeCBwb3VyIHswfSIsZXM6Ik90cm8gZMOtYSBkZSBsbGVnYWRhIMK3IHByZWNpbyBwb3IgezB9In0sIkdyZWVuOiB0aGUgbG93ZXN0Ijp7ZGU6Ikdyw7xuOiBhbSBnw7xuc3RpZ3N0ZW4iLGphOiLnt5HvvJrmnIDlrokiLGtvOiLstIjroZ3sg4k6IOy1nOyggOqwgCIsZnI6IlZlcnQgOiBsZSBtb2lucyBjaGVyIixlczoiVmVyZGU6IGVsIG3DoXMgYmFyYXRvIn0sIk5lYXJieSBhcnJpdmFsIGRhdGVzIjp7ZGU6IkFucmVpc2V0YWdlIGluIGRlciBOw6RoZSIsamE6Iui/keOBhOaXpeeoiyIsa286IuqwgOq5jOyatCDssrTtgazsnbgg64Kg7KecIixmcjoiRGF0ZXMgZOKAmWFycml2w6llIHByb2NoZXMiLGVzOiJGZWNoYXMgZGUgbGxlZ2FkYSBjZXJjYW5hcyJ9LCJBcnJpdmUgezB9Ijp7ZGU6IkFucmVpc2UgezB9IixqYToiezB944OB44Kn44OD44Kv44Kk44OzIixrbzoiezB9IOyytO2BrOyduCIsZnI6IkFycml2w6llIHswfSIsZXM6IkxsZWdhZGEgezB9In0sIiwgbm90aGluZyBsZWZ0Ijp7ZGU6IiwgYXVzZ2VidWNodCIsamE6IuOAgea6gOWupCIsa286Iiwg66ek7KeEIixmcjoiLCBjb21wbGV0IixlczoiLCBjb21wbGV0byJ9LCIsIHRoZSBsb3dlc3QiOntkZToiLCBhbSBnw7xuc3RpZ3N0ZW4iLGphOiLjgIHmnIDlrokiLGtvOiIsIOy1nOyggOqwgCIsZnI6IiwgbGUgbW9pbnMgY2hlciIsZXM6IiwgZWwgbcOhcyBiYXJhdG8ifSxGdWxsOlB3LExvd2VzdDp4dywiSG93IGxvbmciOntkZToiQXVmZW50aGFsdCIsamE6IuWIqeeUqOaWueazlSIsa286IuydtOyaqSDrsKnsi50iLGZyOiJUeXBlIGRlIHPDqWpvdXIiLGVzOiJUaXBvIGRlIGVzdGFuY2lhIn0sT3Zlcm5pZ2h0Okl3LCJCeSB0aGUgaG91ciDCtyB0b2RheSI6e2RlOiJUYWdlc3ppbW1lciDCtyBoZXV0ZSIsamE6IuODh+OCpOODpuODvOOCuSDCtyDmnKzml6UiLGtvOiLrjIDsi6Qgwrcg7Jik64qYIixmcjoiw4AgbOKAmWhldXJlIMK3IGF1am91cmTigJlodWkiLGVzOiJQb3IgaG9yYXMgwrcgaG95In0sIkxvb2tpbmcgdXAgcm9vbXMiOntkZToiWmltbWVyIHdlcmRlbiBnZXN1Y2h0IixqYToi5a6i5a6k44KS5qSc57Si5LitIixrbzoi6rCd7IukIOyhsO2ajCDspJEiLGZyOiJSZWNoZXJjaGUgZGVzIGNoYW1icmVzIixlczoiQnVzY2FuZG8gaGFiaXRhY2lvbmVzIn0sIlNlZSByb29tcyBmb3IgYSBuaWdodCI6e2RlOiJaaW1tZXIgZsO8ciBlaW5lIE5hY2h0IGFuc2VoZW4iLGphOiLlrr/ms4rjga7lrqLlrqTjgpLopovjgosiLGtvOiLsiJnrsJUg6rCd7IukIOuztOq4sCIsZnI6IlZvaXIgbGVzIGNoYW1icmVzIHBvdXIgdW5lIG51aXQiLGVzOiJWZXIgaGFiaXRhY2lvbmVzIHBhcmEgdW5hIG5vY2hlIn0sIkJ5IHRoZSBob3VyLCB0b2RheSI6e2RlOiJUYWdlc3ppbW1lciwgaGV1dGUiLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrkiLGtvOiLsmKTripgg64yA7IukIixmcjoiw4AgbOKAmWhldXJlLCBhdWpvdXJk4oCZaHVpIixlczoiUG9yIGhvcmFzLCBob3kifSwiQ2hvb3NlIHlvdXIgcm9vbSI6e2RlOiJXw6RobGVuIFNpZSBJaHIgWmltbWVyIixqYToi5a6i5a6k44KS6YG444G2Iixrbzoi6rCd7IukIOyEoO2DnSIsZnI6IkNob2lzaXNzZXogdm90cmUgY2hhbWJyZSIsZXM6IkVsaWphIHN1IGhhYml0YWNpw7NuIn0sInswfSDCtyBwaWNrIHdoZW4geW91IGFycml2ZSDCtyB0YXhlcyBpbiI6e2RlOiJ7MH0gwrcgQW5rdW5mdHN6ZWl0IHfDpGhsZW4gwrcgaW5rbC4gU3RldWVybiIsamE6InswfSDCtyDliLDnnYDmmYLliLvjgpLpgbjmip4gwrcg56iO6L6844G/IixrbzoiezB9IMK3IOuPhOywqSDsi5zqsIQg7ISg7YOdIMK3IOyEuOq4iCDtj6ztlagiLGZyOiJ7MH0gwrcgY2hvaXNpc3NleiBs4oCZaGV1cmUgZOKAmWFycml2w6llIMK3IHRheGVzIGNvbXByaXNlcyIsZXM6InswfSDCtyBlbGlqYSBsYSBob3JhIGRlIGxsZWdhZGEgwrcgaW1wdWVzdG9zIGluY2x1aWRvcyJ9LCIsIHswfSByYXRlcyI6e2RlOiIsIHswfSBUYXJpZmUiLGphOiLjgIHmlpnph5F7MH3ku7YiLGtvOiIsIOyalOq4iCB7MH3qsJwiLGZyOiIsIHswfSB0YXJpZnMiLGVzOiIsIHswfSB0YXJpZmFzIn0sIiDCtyBwcmljZXMgZm9yIHswfSwgdGF4ZXMgaW4iOntkZToiIMK3IFByZWlzZSBmw7xyIHswfSwgaW5rbC4gU3RldWVybiIsamE6IiDCtyB7MH3jga7nqI7ovrzjgb/mlpnph5EiLGtvOiIgwrcgezB9IOyEuOq4iCDtj6ztlagg7JqU6riIIixmcjoiIMK3IHByaXggcG91ciB7MH0sIHRheGVzIGNvbXByaXNlcyIsZXM6IiDCtyBwcmVjaW9zIHBhcmEgezB9LCBpbXB1ZXN0b3MgaW5jbHVpZG9zIn0sIkdvb2QgdG8ga25vdyI6e2RlOiJHdXQgenUgd2lzc2VuIixqYToi44GU5qGI5YaFIixrbzoi7JWM7JWEIOuRkOyEuOyalCIsZnI6IkJvbiDDoCBzYXZvaXIiLGVzOiJJbmZvcm1hY2nDs24gw7p0aWwifSwiQWRkLW9ucyBhbmQgZXhwZXJpZW5jZXMiOntkZToiRXh0cmFzIHVuZCBFcmxlYm5pc3NlIixqYToi44Kq44OX44K344On44Oz44Go5L2T6aiTIixrbzoi7LaU6rCAIOyEnOu5hOyKpCDrsI8g7LK07ZeYIixmcjoiT3B0aW9ucyBldCBleHDDqXJpZW5jZXMiLGVzOiJFeHRyYXMgeSBleHBlcmllbmNpYXMifSwicGVyIHBlcnNvbiBwZXIgbmlnaHQiOntkZToicHJvIFBlcnNvbiB1bmQgTmFjaHQiLGphOiIx5ZCNMeaziuOBguOBn+OCiiIsa286IjHsnbggMeuwleuLuSIsZnI6InBhciBwZXJzb25uZSBldCBwYXIgbnVpdCIsZXM6InBvciBwZXJzb25hIHkgbm9jaGUifSwicGVyIG5pZ2h0Ijp7ZGU6InBybyBOYWNodCIsamE6IjHms4rjgYLjgZ/jgooiLGtvOiIx67CV64u5IixmcjoicGFyIG51aXQiLGVzOiJwb3Igbm9jaGUifSwicGVyIHN0YXkiOntkZToicHJvIEF1ZmVudGhhbHQiLGphOiIx5rue5Zyo44GC44Gf44KKIixrbzoi7IiZ67CV64u5IixmcjoicGFyIHPDqWpvdXIiLGVzOiJwb3IgZXN0YW5jaWEifSwicGVyIHBlcnNvbiI6e2RlOiJwcm8gUGVyc29uIixqYToiMeWQjeOBguOBn+OCiiIsa286IjHsnbjri7kiLGZyOiJwYXIgcGVyc29ubmUiLGVzOiJwb3IgcGVyc29uYSJ9LGVhY2g6UncsInBlciB0cmlwIjp7ZGU6InBybyBGYWhydCIsamE6IjHlm57jgYLjgZ/jgooiLGtvOiIx7ZqM64u5IixmcjoicGFyIHRyYWpldCIsZXM6InBvciB0cmF5ZWN0byJ9LCJwZXIgezB9Ijp7ZGU6InBybyB7MH0iLGphOiJ7MH3jgYLjgZ/jgooiLGtvOiJ7MH3ri7kiLGZyOiJwYXIgezB9IixlczoicG9yIHswfSJ9LCJBZGQtb25zIGZvciB7MH0iOntkZToiRXh0cmFzIGbDvHIgezB9IixqYToiezB944Gu44Kq44OX44K344On44OzIixrbzoiezB9IOy2lOqwgCDshJzruYTsiqQiLGZyOiJPcHRpb25zIHBvdXIgezB9IixlczoiRXh0cmFzIHBhcmEgezB9In0sIkVhY2ggY2hhbmdlIGlzIHNob3duIHdpdGggaXRzIG5ldyB0b3RhbCBiZWZvcmUgYW55dGhpbmcgbW92ZXMuIE5vdGhpbmcgaXMgY2hhcmdlZCBoZXJlLiI6e2RlOiJKZWRlIMOEbmRlcnVuZyB3aXJkIG1pdCBpaHJlbSBuZXVlbiBHZXNhbXRwcmVpcyBhbmdlemVpZ3QsIGJldm9yIGV0d2FzIGdlw6RuZGVydCB3aXJkLiBIaWVyIHdpcmQgbmljaHRzIGJlcmVjaG5ldC4iLGphOiLlpInmm7Tjga/jgZnjgbnjgabjgIHlj43mmKDjgZnjgovliY3jgavmlrDjgZfjgYTlkIjoqIjjgpLooajnpLrjgZfjgb7jgZnjgILjgZPjgZPjgafjga/oq4vmsYLjgZXjgozjgb7jgZvjgpPjgIIiLGtvOiLrqqjrk6Ag67OA6rK97J2AIOuwmOyYgSDsoITsl5Ag7IOIIO2VqeqzhOulvCDrqLzsoIAg67O07JesIOuTnOumveuLiOuLpC4g7Jes6riw7ISc64qUIOqysOygnOuQmOyngCDslYrsirXri4jri6QuIixmcjoiQ2hhcXVlIG1vZGlmaWNhdGlvbiBlc3QgYWZmaWNow6llIGF2ZWMgc29uIG5vdXZlYXUgdG90YWwgYXZhbnQgZOKAmcOqdHJlIGFwcGxpcXXDqWUuIFJpZW4gbuKAmWVzdCBmYWN0dXLDqSBpY2kuIixlczoiQ2FkYSBjYW1iaW8gc2UgbXVlc3RyYSBjb24gc3UgbnVldm8gdG90YWwgYW50ZXMgZGUgYXBsaWNhcnNlLiBBcXXDrSBubyBzZSBjb2JyYSBuYWRhLiJ9LCJCYWNrIHRvIHlvdXIgYm9va2luZ3MiOntkZToiWnVyw7xjayB6dSBJaHJlbiBCdWNodW5nZW4iLGphOiLkuojntITkuIDopqfjgavmiLvjgosiLGtvOiLrgrQg7JiI7JW97Jy866GcIOuPjOyVhOqwgOq4sCIsZnI6IlJldG91ciDDoCB2b3MgcsOpc2VydmF0aW9ucyIsZXM6IlZvbHZlciBhIHN1cyByZXNlcnZhcyJ9LCJXaGF0IGl0IG9mZmVycyBiZXNpZGUgdGhlIHJvb20iOntkZToiV2FzIGVzIG5lYmVuIGRlbSBaaW1tZXIgYmlldGV0IixqYToi5a6i5a6k5Lul5aSW44Gu44K144O844OT44K5Iixrbzoi6rCd7IukIOyZuCDshJzruYTsiqQiLGZyOiJDZSBxdeKAmWlsIHByb3Bvc2UgZW4gcGx1cyBkZSBsYSBjaGFtYnJlIixlczoiTG8gcXVlIG9mcmVjZSBhZGVtw6FzIGRlIGxhIGhhYml0YWNpw7NuIn0sIkJhY2sgdG8gezB9Ijp7ZGU6Ilp1csO8Y2sgenUgezB9IixqYToiezB944Gr5oi744KLIixrbzoiezB9KOycvCnroZwg64+M7JWE6rCA6riwIixmcjoiUmV0b3VyIMOgIHswfSIsZXM6IlZvbHZlciBhIHswfSJ9LCIg4oCUIG9uIHRoZSBuZXh0IHN0ZXAiOntkZToiIOKAlCBpbSBuw6RjaHN0ZW4gU2Nocml0dCIsamE6Iu+8iOasoeOBrueUu+mdouOBp++8iSIsa286IiDigJQg64uk7J2MIOuLqOqzhOyXkOyEnCIsZnI6IiDigJQgw6AgbOKAmcOpdGFwZSBzdWl2YW50ZSIsZXM6IiDigJQgZW4gZWwgc2lndWllbnRlIHBhc28ifSwiYmVmb3JlIHRheGVzIjp7ZGU6Inp6Z2wuIFN0ZXVlcm4iLGphOiLnqI7liKUiLGtvOiLshLjquIgg67OE64+EIixmcjoiaG9ycyB0YXhlcyIsZXM6InNpbiBpbXB1ZXN0b3MifSwiezB9IGEgbmlnaHQiOntkZToiezB9IHBybyBOYWNodCIsamE6IjHms4ogezB9IixrbzoiMeuwlSB7MH0iLGZyOiJ7MH0gcGFyIG51aXQiLGVzOiJ7MH0gcG9yIG5vY2hlIn0sInswfSBlYWNoIjp7ZGU6InswfSBwcm8gU3TDvGNrIixqYToiMeeCuSB7MH0iLGtvOiLqsJzri7kgezB9IixmcjoiezB9IGzigJl1bml0w6kiLGVzOiJ7MH0gY2FkYSB1bm8ifSxRdWFudGl0eTpFdywiUm9vbXMgYW5kIGFkZC1vbnMiOntkZToiWmltbWVyIHVuZCBFeHRyYXMiLGphOiLlrqLlrqTjgajjgqrjg5fjgrfjg6fjg7MiLGtvOiLqsJ3si6Qg67CPIOy2lOqwgCDshJzruYTsiqQiLGZyOiJDaGFtYnJlcyBldCBvcHRpb25zIixlczoiSGFiaXRhY2lvbmVzIHkgZXh0cmFzIn0sIlRheGVzIGFuZCBmZWVzIjp7ZGU6IlN0ZXVlcm4gdW5kIEdlYsO8aHJlbiIsamE6IueojuODu+OCteODvOODk+OCueaWmSIsa286IuyEuOq4iCDrsI8g7IiY7IiY66OMIixmcjoiVGF4ZXMgZXQgZnJhaXMiLGVzOiJJbXB1ZXN0b3MgeSB0YXNhcyJ9LEluY2x1ZGVkOk93LCJUYXhlcyBhbmQgZmVlcyBpbiI6e2RlOiJpbmtsLiBTdGV1ZXJuIHVuZCBHZWLDvGhyZW4iLGphOiLnqI7jg7vjgrXjg7zjg5Pjgrnmlpnovrzjgb8iLGtvOiLshLjquIgg67CPIOyImOyImOujjCDtj6ztlagiLGZyOiJ0YXhlcyBldCBmcmFpcyBjb21wcmlzIixlczoiaW1wdWVzdG9zIHkgdGFzYXMgaW5jbHVpZG9zIn0sIlBvaW50cyB0aGlzIGVhcm5zIjp7ZGU6IkRhZsO8ciBlcmhhbHRlbmUgUHVua3RlIixqYToi542y5b6X44Od44Kk44Oz44OIIixrbzoi7KCB66a9IO2PrOyduO2KuCIsZnI6IlBvaW50cyBnYWduw6lzIixlczoiUHVudG9zIHF1ZSBzdW1hIn0sIlRoaXMgaXMgYSB0ZXN0IGVudmlyb25tZW50LiBCb29raW5nIGhlcmUgbWFrZXMgYSBzaW11bGF0ZWQgYm9va2luZywgbm90IGEgezB9IHJlc2VydmF0aW9uLCBhbmQgbm90aGluZyBpcyBwYWlkLiI6e2RlOiJEaWVzIGlzdCBlaW5lIFRlc3R1bWdlYnVuZy4gRWluZSBCdWNodW5nIGhpZXIgaXN0IHNpbXVsaWVydCwga2VpbmUgUmVzZXJ2aWVydW5nIGJlaSB7MH0sIHVuZCBlcyB3aXJkIG5pY2h0cyBiZXphaGx0LiIsamE6IuOBk+OCjOOBr+ODhuOCueODiOeSsOWig+OBp+OBmeOAguOBk+OBk+OBp+OBruS6iOe0hOOBr+aooeaTrOS6iOe0hOOBp+OAgXswfeOBruWun+mam+OBruS6iOe0hOOBp+OBr+OBquOBj+OAgeaUr+aJleOBhOOCgueZuueUn+OBl+OBvuOBm+OCk+OAgiIsa286Iu2FjOyKpO2KuCDtmZjqsr3snoXri4jri6QuIOyXrOq4sOyEnCDsmIjslb3tlZjrqbQg66qo7J2YIOyYiOyVveydtCDrp4zrk6TslrTsp4DrqbAsIHswfeydmCDsi6TsoJwg7JiI7JW97J20IOyVhOuLiOqzoCDqsrDsoJzrj4Qg65CY7KeAIOyViuyKteuLiOuLpC4iLGZyOiJDZWNpIGVzdCB1biBlbnZpcm9ubmVtZW50IGRlIHRlc3QuIFLDqXNlcnZlciBpY2kgY3LDqWUgdW5lIHLDqXNlcnZhdGlvbiBzaW11bMOpZSwgcGFzIHVuZSByw6lzZXJ2YXRpb24gY2hleiB7MH0sIGV0IHJpZW4gbuKAmWVzdCBwYXnDqS4iLGVzOiJFc3RlIGVzIHVuIGVudG9ybm8gZGUgcHJ1ZWJhLiBSZXNlcnZhciBhcXXDrSBjcmVhIHVuYSByZXNlcnZhIHNpbXVsYWRhLCBubyB1bmEgcmVzZXJ2YSBlbiB7MH0sIHkgbm8gc2UgcGFnYSBuYWRhLiJ9LCJOb3RoaW5nIGlzIGNoYXJnZWQgaGVyZS4gQm9va2luZyBtYWtlcyBhIHJlc2VydmF0aW9uIHdpdGggezB9LCBwYWlkIGF0IHRoZSBob3RlbCwgYW5kIGdpdmVzIHlvdSBhIGNvbmZpcm1hdGlvbiBjb2RlLiI6e2RlOiJIaWVyIHdpcmQgbmljaHRzIGJlcmVjaG5ldC4gRGllIEJ1Y2h1bmcgZXJzdGVsbHQgZWluZSBSZXNlcnZpZXJ1bmcgYmVpIHswfSwgYmV6YWhsdCB3aXJkIGltIEhvdGVsLCB1bmQgU2llIGVyaGFsdGVuIGVpbmVuIEJlc3TDpHRpZ3VuZ3Njb2RlLiIsamE6IuOBk+OBk+OBp+OBr+iri+axguOBleOCjOOBvuOBm+OCk+OAguS6iOe0hOOBmeOCi+OBqHswfeOBp+ePvuWcsOaJleOBhOOBruS6iOe0hOOBjOS9nOaIkOOBleOCjOOAgeeiuuiqjeeVquWPt+OBjOWxiuOBjeOBvuOBmeOAgiIsa286IuyXrOq4sOyEnOuKlCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiDsmIjslb3tlZjrqbQgezB97JeQIO2YhOyepSDqsrDsoJwg7JiI7JW97J20IOunjOuTpOyWtOyngOqzoCDtmZXsnbgg67KI7Zi466W8IOuwm+yKteuLiOuLpC4iLGZyOiJSaWVuIG7igJllc3QgZmFjdHVyw6kgaWNpLiBMYSByw6lzZXJ2YXRpb24gZXN0IGZhaXRlIGF1cHLDqHMgZGUgezB9LCBwYXlhYmxlIMOgIGzigJlow7R0ZWwsIGV0IHZvdXMgcmVjZXZleiB1biBjb2RlIGRlIGNvbmZpcm1hdGlvbi4iLGVzOiJBcXXDrSBubyBzZSBjb2JyYSBuYWRhLiBMYSByZXNlcnZhIHNlIGhhY2UgY29uIHswfSwgY29uIHBhZ28gZW4gZWwgaG90ZWwsIHkgcmVjaWJlIHVuIGPDs2RpZ28gZGUgY29uZmlybWFjacOzbi4ifSwiTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIFRoaXMgaXMgYSBkZW1vbnN0cmF0aW9uOiByZXF1ZXN0aW5nIGEgYm9va2luZyBnaXZlcyB5b3UgYSBjb25maXJtYXRpb24gY29kZSwgYnV0IHswfSBkb2VzIG5vdCByZWNlaXZlIGl0IGFuZCBubyByb29tIGlzIGhlbGQuIjp7ZGU6IkhpZXIgd2lyZCBuaWNodHMgYmVyZWNobmV0LiBEaWVzIGlzdCBlaW5lIERlbW9uc3RyYXRpb246IEVpbmUgQnVjaHVuZ3NhbmZyYWdlIGxpZWZlcnQgZWluZW4gQmVzdMOkdGlndW5nc2NvZGUsIGFiZXIgezB9IGVyaMOkbHQgc2llIG5pY2h0LCB1bmQgZXMgd2lyZCBrZWluIFppbW1lciByZXNlcnZpZXJ0LiIsamE6IuOBk+OBk+OBp+OBr+iri+axguOBleOCjOOBvuOBm+OCk+OAguOBk+OCjOOBr+ODh+ODouOBp+OBmeOAguS6iOe0hOOCkuS+nemgvOOBmeOCi+OBqOeiuuiqjeeVquWPt+OBjOWHuuOBvuOBmeOBjOOAgXswfeOBq+OBr+WxiuOBi+OBmuOAgeWuouWupOOCgueiuuS/neOBleOCjOOBvuOBm+OCk+OAgiIsa286IuyXrOq4sOyEnOuKlCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiDrjbDrqqjsnoXri4jri6QuIOyYiOyVveydhCDsmpTssq3tlZjrqbQg7ZmV7J24IOuyiO2YuOqwgCDrgpjsmKTsp4Drp4wgezB97JeQ64qUIOyghOuLrOuQmOyngCDslYrsnLzrqbAg6rCd7Iuk64+EIO2ZleuztOuQmOyngCDslYrsirXri4jri6QuIixmcjoiUmllbiBu4oCZZXN0IGZhY3R1csOpIGljaS4gQ2VjaSBlc3QgdW5lIGTDqW1vbnN0cmF0aW9uIDogZGVtYW5kZXIgdW5lIHLDqXNlcnZhdGlvbiB2b3VzIGRvbm5lIHVuIGNvZGUgZGUgY29uZmlybWF0aW9uLCBtYWlzIHswfSBuZSBsYSByZcOnb2l0IHBhcyBldCBhdWN1bmUgY2hhbWJyZSBu4oCZZXN0IHJldGVudWUuIixlczoiQXF1w60gbm8gc2UgY29icmEgbmFkYS4gRXMgdW5hIGRlbW9zdHJhY2nDs246IHNvbGljaXRhciB1bmEgcmVzZXJ2YSBsZSBkYSB1biBjw7NkaWdvIGRlIGNvbmZpcm1hY2nDs24sIHBlcm8gezB9IG5vIGxhIHJlY2liZSB5IG5vIHNlIHJldGllbmUgbmluZ3VuYSBoYWJpdGFjacOzbi4ifSwiTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIFJlcXVlc3RpbmcgYSBib29raW5nIGFza3MgezB9IHRvIGhvbGQgdGhlIHJvb21zIGFuZCBnaXZlcyB5b3UgYSBjb25maXJtYXRpb24gY29kZS4iOntkZToiSGllciB3aXJkIG5pY2h0cyBiZXJlY2huZXQuIE1pdCBkZXIgQnVjaHVuZ3NhbmZyYWdlIGJpdHRlbiBTaWUgezB9LCBkaWUgWmltbWVyIHp1IHJlc2VydmllcmVuLCB1bmQgU2llIGVyaGFsdGVuIGVpbmVuIEJlc3TDpHRpZ3VuZ3Njb2RlLiIsamE6IuOBk+OBk+OBp+OBr+iri+axguOBleOCjOOBvuOBm+OCk+OAguS6iOe0hOOCkuS+nemgvOOBmeOCi+OBqHswfeOBjOWuouWupOOCkueiuuS/neOBl+OAgeeiuuiqjeeVquWPt+OBjOWxiuOBjeOBvuOBmeOAgiIsa286IuyXrOq4sOyEnOuKlCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiDsmIjslb3snYQg7JqU7LKt7ZWY66m0IHswfeyXkOyEnCDqsJ3si6TsnYQg7ZmV67O07ZWY6rOgIO2ZleyduCDrsojtmLjrpbwg65Oc66a964uI64ukLiIsZnI6IlJpZW4gbuKAmWVzdCBmYWN0dXLDqSBpY2kuIERlbWFuZGVyIHVuZSByw6lzZXJ2YXRpb24gZGVtYW5kZSDDoCB7MH0gZGUgcmV0ZW5pciBsZXMgY2hhbWJyZXMgZXQgdm91cyBkb25uZSB1biBjb2RlIGRlIGNvbmZpcm1hdGlvbi4iLGVzOiJBcXXDrSBubyBzZSBjb2JyYSBuYWRhLiBTb2xpY2l0YXIgdW5hIHJlc2VydmEgcGlkZSBhIHswfSBxdWUgcmV0ZW5nYSBsYXMgaGFiaXRhY2lvbmVzIHkgbGUgZGEgdW4gY8OzZGlnbyBkZSBjb25maXJtYWNpw7NuLiJ9LCIsICI6e2RlOiIsICIsamE6IuOAgSIsa286IiwgIixmcjoiLCAiLGVzOiIsICJ9LCIgYW5kICI6e2RlOiIgdW5kICIsamE6IuOBqCIsa286IiDrsI8gIixmcjoiIGV0ICIsZXM6IiB5ICJ9LCJUaGVzZSBzdGF5cyBhcmUgd2l0aCB7MH0uIEVhY2ggZ3JvdXAncyBhcmUgYm9va2VkIG9uIHRoZWlyIG93bi4iOntkZToiRGllc2UgQXVmZW50aGFsdGUgc2luZCBiZWkgezB9LiBKZWRlIEdydXBwZSB3aXJkIHNlcGFyYXQgZ2VidWNodC4iLGphOiLjgZPjgozjgonjga7mu57lnKjjga97MH3jgafjgZnjgILjgrDjg6vjg7zjg5fjgZTjgajjgavliKXjgIXjgavkuojntITjgZfjgb7jgZnjgIIiLGtvOiLsnbQg7IiZ67CV65Ok7J2AIHswfSDshozsho3snoXri4jri6QuIOq3uOujueuzhOuhnCDrlLDroZwg7JiI7JW97ZWp64uI64ukLiIsZnI6IkNlcyBzw6lqb3VycyBzb250IGNoZXogezB9LiBDZXV4IGRlIGNoYXF1ZSBncm91cGUgc2UgcsOpc2VydmVudCBzw6lwYXLDqW1lbnQuIixlczoiRXN0YXMgZXN0YW5jaWFzIHNvbiBjb24gezB9LiBMYXMgZGUgY2FkYSBncnVwbyBzZSByZXNlcnZhbiBwb3Igc2VwYXJhZG8uIn0sIkJvb2sgdGhlIHswfSBzdGF5cyI6e2RlOiJBdWZlbnRoYWx0ZSBiZWkgezB9IGJ1Y2hlbiIsamE6InswfeOBrua7nuWcqOOCkuS6iOe0hCIsa286InswfSDsiJnrsJUg7JiI7JW9IixmcjoiUsOpc2VydmVyIGxlcyBzw6lqb3VycyB7MH0iLGVzOiJSZXNlcnZhciBsYXMgZXN0YW5jaWFzIGRlIHswfSJ9LCJUaGUgdHJpcCBpcyBlbXB0eS4iOntkZToiRGllIFJlaXNlIGlzdCBub2NoIGxlZXIuIixqYToi5peF56iL44Gv44G+44Gg56m644Gn44GZ44CCIixrbzoi7Jes7ZaJIOydvOygleydtCDruYTslrQg7J6I7Iq164uI64ukLiIsZnI6IkxlIHZveWFnZSBlc3QgdmlkZS4iLGVzOiJFbCB2aWFqZSBlc3TDoSB2YWPDrW8uIn0sIkJyb3dzZSBob3RlbHMgb24gezB9Ijp7ZGU6IkhvdGVscyBhdWYgezB9IGFuc2VoZW4iLGphOiJ7MH3jga7jg5vjg4bjg6vjgpLopovjgosiLGtvOiJ7MH3snZgg7Zi47YWUIOuRmOufrOuztOq4sCIsZnI6IlBhcmNvdXJpciBsZXMgaMO0dGVscyBzdXIgezB9IixlczoiVmVyIGhvdGVsZXMgZW4gezB9In0sIkJyb3dzZSB7MH0gaG90ZWxzIjp7ZGU6IkhvdGVscyB2b24gezB9IGFuc2VoZW4iLGphOiJ7MH3jga7jg5vjg4bjg6vjgpLopovjgosiLGtvOiJ7MH0g7Zi47YWUIOuRmOufrOuztOq4sCIsZnI6IlBhcmNvdXJpciBsZXMgaMO0dGVscyB7MH0iLGVzOiJWZXIgaG90ZWxlcyBkZSB7MH0ifSwiUmV2aWV3IGFuZCBib29rIjp7ZGU6IlByw7xmZW4gdW5kIGJ1Y2hlbiIsamE6IueiuuiqjeOBl+OBpuS6iOe0hCIsa286Iu2ZleyduCDtm4Qg7JiI7JW9IixmcjoiVsOpcmlmaWVyIGV0IHLDqXNlcnZlciIsZXM6IlJldmlzYXIgeSByZXNlcnZhciJ9LCIxIGl0ZW0iOntkZToiMSBQb3NpdGlvbiIsamE6IjHku7YiLGtvOiIx6rCcIO2VreuqqSIsZnI6IjEgw6lsw6ltZW50IixlczoiMSBlbGVtZW50byJ9LCJ7MH0gaXRlbXMiOntkZToiezB9IFBvc2l0aW9uZW4iLGphOiJ7MH3ku7YiLGtvOiJ7MH3qsJwg7ZWt66qpIixmcjoiezB9IMOpbMOpbWVudHMiLGVzOiJ7MH0gZWxlbWVudG9zIn0sIlByaWNlZCBpbiB7MH0sIHNlcGFyYXRlbHkuIE5vdGhpbmcgaGVyZSBjb252ZXJ0cyBvbmUgaW50byB0aGUgb3RoZXI7IGVhY2ggaG90ZWwgaXMgYm9va2VkIGFuZCBwYWlkIGluIGl0cyBvd24uIjp7ZGU6IkdldHJlbm50IGluIHswfSBiZXJlY2huZXQuIEhpZXIgd2lyZCBuaWNodHMgdW1nZXJlY2huZXQ7IGplZGVzIEhvdGVsIHdpcmQgaW4gc2VpbmVyIGVpZ2VuZW4gV8OkaHJ1bmcgZ2VidWNodCB1bmQgYmV6YWhsdC4iLGphOiJ7MH3jgaflgIvliKXjgavooajnpLrjgZfjgabjgYTjgb7jgZnjgILjgZPjgZPjgafjga/mj5vnrpfjgZfjgb7jgZvjgpPjgILlkITjg5vjg4bjg6vjga/jgZ3jgozjgZ7jgozjga7pgJrosqjjgafkuojntITjg7vmlK/miZXjgYTjgZfjgb7jgZnjgIIiLGtvOiJ7MH0o7Jy8KeuhnCDrlLDroZwg7ZGc7Iuc65Cp64uI64ukLiDsl6zquLDshJzripQg7ZmY7IKw7ZWY7KeAIOyViuycvOupsCwg6rCBIO2YuO2FlOydgCDsnpDssrQg7Ya17ZmU66GcIOyYiOyVve2VmOqzoCDqsrDsoJztlanri4jri6QuIixmcjoiUHJpeCBlbiB7MH0sIHPDqXBhcsOpbWVudC4gUmllbiBu4oCZZXN0IGNvbnZlcnRpIGljaSA7IGNoYXF1ZSBow7R0ZWwgZXN0IHLDqXNlcnbDqSBldCBwYXnDqSBkYW5zIHNhIHByb3ByZSBkZXZpc2UuIixlczoiUHJlY2lvcyBlbiB7MH0sIHBvciBzZXBhcmFkby4gQXF1w60gbm8gc2UgY29udmllcnRlIG5hZGE7IGNhZGEgaG90ZWwgc2UgcmVzZXJ2YSB5IHNlIHBhZ2EgZW4gc3UgcHJvcGlhIG1vbmVkYS4ifSwiSW4gezB9LCBnb2VzIHdpdGggYSBzdGF5IC0gbm90IGluIHRoZSB0b3RhbCI6e2RlOiJJbiB7MH0sIGdlaMO2cnQgenUgZWluZW0gQXVmZW50aGFsdCDigJMgbmljaHQgaW0gR2VzYW10cHJlaXMiLGphOiJ7MH3lu7rjgabjg7vmu57lnKjjgajkuIDnt5LjgavkuojntITvvIjlkIjoqIjjgavjga/lkKvjgb7jgozjgb7jgZvjgpPvvIkiLGtvOiJ7MH0sIOyImeuwleqzvCDtlajqu5gg7JiI7JW9IOKAlCDtlanqs4Tsl5Ag7Y+s7ZWo65CY7KeAIOyViuydjCIsZnI6IkVuIHswfSwgdmEgYXZlYyB1biBzw6lqb3VyIOKAlCBob3JzIHRvdGFsIixlczoiRW4gezB9LCB2YSBjb24gdW5hIGVzdGFuY2lhOyBubyBpbmNsdWlkbyBlbiBlbCB0b3RhbCJ9LCJUb3RhbCBpbiB7MH0iOntkZToiR2VzYW10IGluIHswfSIsamE6IuWQiOioiO+8iHswfe+8iSIsa286Iu2VqeqzhCAoezB9KSIsZnI6IlRvdGFsIGVuIHswfSIsZXM6IlRvdGFsIGVuIHswfSJ9LFRvdGFsOlp3LCJBIHswfSBtZW1iZXI/Ijp7ZGU6Ik1pdGdsaWVkIGJlaSB7MH0/IixqYToiezB95Lya5ZOh44Gu5pa5IixrbzoiezB9IO2ajOybkOydtOyLoOqwgOyalD8iLGZyOiJNZW1icmUgezB9ID8iLGVzOiLCv0VzIG1pZW1icm8gZGUgezB9PyJ9LCJTaWduIGluIGZvciB0aGUgbWVtYmVyIHJhdGUiOntkZToiQW5tZWxkZW4gZsO8ciBkZW4gTWl0Z2xpZWRlcnByZWlzIixqYToi44Ot44Kw44Kk44Oz44GX44Gm5Lya5ZOh5paZ6YeR44Gn5LqI57SEIixrbzoi66Gc6re47J247ZWY6rOgIO2ajOybkCDsmpTquIgg67Cb6riwIixmcjoiQ29ubmVjdGV6LXZvdXMgcG91ciBsZSB0YXJpZiBtZW1icmUiLGVzOiJJbmljaWUgc2VzacOzbiBwYXJhIGxhIHRhcmlmYSBkZSBtaWVtYnJvIn0sIkdvZXMgd2l0aCBhIHN0YXkiOntkZToiTnVyIG1pdCBBdWZlbnRoYWx0IixqYToi5a6/5rOK44Go44K744OD44OI44Gn5LqI57SEIixrbzoi7IiZ67CV6rO8IO2VqOq7mCDsmIjslb0iLGZyOiJBdmVjIHVuIHPDqWpvdXIiLGVzOiJWYSBjb24gdW5hIGVzdGFuY2lhIn0sInswfSBpcyB7MX0ncyBzZXJ2aWNlIGZvciBpdHMgZ3Vlc3RzLCBzbyBpdCBpcyBib29rZWQgd2l0aCBhIHJvb20gdGhlcmUgLSBvciBhZGRlZCB0byBhIGJvb2tpbmcgeW91IGFscmVhZHkgaGF2ZS4iOntkZToiezB9IGlzdCBlaW4gU2VydmljZSB2b24gezF9IGbDvHIgc2VpbmUgR8Okc3RlIHVuZCB3aXJkIGRhaGVyIG1pdCBlaW5lbSBaaW1tZXIgZG9ydCBnZWJ1Y2h0IOKAkyBvZGVyIHp1IGVpbmVyIGJlc3RlaGVuZGVuIEJ1Y2h1bmcgaGluenVnZWbDvGd0LiIsamE6InswfeOBr3sxfeOBjOWuv+aziuiAheWQkeOBkeOBq+aPkOS+m+OBmeOCi+OCteODvOODk+OCueOBruOBn+OCgeOAgeOBneOBk+OBp+OBruWuouWupOOBqOS4gOe3kuOBq+S6iOe0hOOBmeOCi+OBi+OAgeaXouWtmOOBruS6iOe0hOOBq+i/veWKoOOBl+OBvuOBmeOAgiIsa286InswfeydgCjripQpIHsxfeydtCjqsIApIO2IrOyImeqwneyXkOqyjCDsoJzqs7XtlZjripQg7ISc67mE7Iqk7J2066+A66GcIOq3uOqzs+ydmCDqsJ3si6Tqs7wg7ZWo6ruYIOyYiOyVve2VmOqxsOuCmCDquLDsobQg7JiI7JW97JeQIOy2lOqwgO2VqeuLiOuLpC4iLGZyOiJ7MH0gZXN0IHVuIHNlcnZpY2UgZGUgezF9IHBvdXIgc2VzIGNsaWVudHMgOiBpbCBzZSByw6lzZXJ2ZSBhdmVjIHVuZSBjaGFtYnJlIHN1ciBwbGFjZSDigJQgb3Ugc+KAmWFqb3V0ZSDDoCB1bmUgcsOpc2VydmF0aW9uIGV4aXN0YW50ZS4iLGVzOiJ7MH0gZXMgdW4gc2VydmljaW8gZGUgezF9IHBhcmEgc3VzIGh1w6lzcGVkZXMsIGFzw60gcXVlIHNlIHJlc2VydmEgY29uIHVuYSBoYWJpdGFjacOzbiBhbGzDrSwgbyBzZSBhw7FhZGUgYSB1bmEgcmVzZXJ2YSBxdWUgeWEgdGVuZ2EuIn0sIlJvb21zIGF0IHswfSI6e2RlOiJaaW1tZXIgaW0gezB9IixqYToiezB944Gu5a6i5a6kIixrbzoiezB9IOqwneyLpCIsZnI6IkNoYW1icmVzIOKAkyB7MH0iLGVzOiJIYWJpdGFjaW9uZXMgZW4gezB9In0sIktpbmcgYmVkIjp7ZGU6IkRvcHBlbGJldHQiLGphOiLjgq3jg7PjgrDjg5njg4Pjg4kiLGtvOiLtgrkg67Kg65OcIixmcjoiTGl0IGtpbmcgc2l6ZSIsZXM6IkNhbWEga2luZyJ9LCJUd2luIGJlZHMiOntkZToiWndlaSBFaW56ZWxiZXR0ZW4iLGphOiLjg4TjgqTjg7Pjg5njg4Pjg4kiLGtvOiLtirjsnIgg67Kg65OcIixmcjoiTGl0cyBqdW1lYXV4IixlczoiRG9zIGNhbWFzIn0sIkhpZ2ggZmxvb3IiOntkZToiSG9oZSBFdGFnZSIsamE6IumrmOWxpOmajiIsa286IuqzoOy4tSIsZnI6IsOJdGFnZSDDqWxldsOpIixlczoiUGxhbnRhIGFsdGEifSwiTG93IGZsb29yIjp7ZGU6Ik5pZWRyaWdlIEV0YWdlIixqYToi5L2O5bGk6ZqOIixrbzoi7KCA7Li1Iixmcjoiw4l0YWdlIGJhcyIsZXM6IlBsYW50YSBpbmZlcmlvciJ9LCJRdWlldCByb29tIjp7ZGU6IlJ1aGlnZXMgWmltbWVyIixqYToi6Z2Z44GL44Gq5a6i5a6kIixrbzoi7KGw7Jqp7ZWcIOqwneyLpCIsZnI6IkNoYW1icmUgY2FsbWUiLGVzOiJIYWJpdGFjacOzbiB0cmFucXVpbGEifSwiQ29ubmVjdGluZyByb29tcyI6e2RlOiJWZXJiaW5kdW5nc3ppbW1lciIsamE6IuOCs+ODjeOCr+ODhuOCo+ODs+OCsOODq+ODvOODoCIsa286Iuy7pOuEpe2MheujuCIsZnI6IkNoYW1icmVzIGNvbW11bmljYW50ZXMiLGVzOiJIYWJpdGFjaW9uZXMgY29tdW5pY2FkYXMifSwiRWFybHkgY2hlY2staW4iOntkZToiRnLDvGhlIEFucmVpc2UiLGphOiLjgqLjg7zjg6rjg7zjg4Hjgqfjg4Pjgq/jgqTjg7MiLGtvOiLslrzrpqwg7LK07YGs7J24IixmcjoiQXJyaXbDqWUgYW50aWNpcMOpZSIsZXM6IkxsZWdhZGEgYW50aWNpcGFkYSJ9LCJBcnJpdmluZyBsYXRlIjp7ZGU6IlNww6R0ZSBBbmt1bmZ0IixqYToi5Yiw552A44GM6YGF44GP44Gq44KLIixrbzoi64qm7J2AIOuPhOywqSIsZnI6IkFycml2w6llIHRhcmRpdmUiLGVzOiJMbGVnYWRhIHRhcmTDrWEifSwiQWNjZXNzaWJsZSByb29tIjp7ZGU6IkJhcnJpZXJlZnJlaWVzIFppbW1lciIsamE6IuODkOODquOCouODleODquODvOODq+ODvOODoCIsa286IuustOyepeyVoCDqsJ3si6QiLGZyOiJDaGFtYnJlIGFjY2Vzc2libGUiLGVzOiJIYWJpdGFjacOzbiBhY2Nlc2libGUifSxCZWQ6TXcsRmxvb3I6cXcsQWxzbzpEdywiYWxsIHswfSBob3RlbHMiOntkZToiYWxsZSB7MH0gSG90ZWxzIixqYToiezB96LuS44GZ44G544GmIixrbzoi7Zi47YWUIHswfeqzsyDrqqjrkZAiLGZyOiJsZXMgezB9IGjDtHRlbHMiLGVzOiJsb3MgezB9IGhvdGVsZXMifSwiYWxsIHswfSBzdGF5cyI6e2RlOiJhbGxlIHswfSBBdWZlbnRoYWx0ZSIsamE6InswfeS7tuOBrua7nuWcqOOBmeOBueOBpiIsa286IuyImeuwlSB7MH3qsbQg66qo65GQIixmcjoibGVzIHswfSBzw6lqb3VycyIsZXM6ImxhcyB7MH0gZXN0YW5jaWFzIn0sIkNvbnRpbnVlIHRvIHBheW1lbnQiOntkZToiV2VpdGVyIHp1ciBaYWhsdW5nIixqYToi5pSv5omV44GE44G46YCy44KAIixrbzoi6rKw7KCc7ZWY6riwIixmcjoiQ29udGludWVyIHZlcnMgbGUgcGFpZW1lbnQiLGVzOiJDb250aW51YXIgYWwgcGFnbyJ9LCJUZXN0LWJvb2sgezB9Ijp7ZGU6IkpldHp0IHswfSB0ZXN0d2Vpc2UgYnVjaGVuIixqYToiezB944KS44OG44K544OI5LqI57SEIixrbzoiezB9IO2FjOyKpO2KuCDsmIjslb0iLGZyOiJSw6lzZXJ2ZXIgezB9IGVuIHRlc3QiLGVzOiJSZXNlcnZhciB7MH0gZGUgcHJ1ZWJhIn0sIkJvb2sgezB9Ijp7ZGU6IkpldHp0IHswfSBidWNoZW4iLGphOiJ7MH3jgpLkuojntIQiLGtvOiJ7MH0g7JiI7JW9IixmcjoiUsOpc2VydmVyIHswfSIsZXM6IlJlc2VydmFyIHswfSJ9LCJNYWtlIGEgdGVzdCBib29raW5nIjp7ZGU6IlRlc3RidWNodW5nIHZvcm5laG1lbiIsamE6IuODhuOCueODiOS6iOe0hOOBmeOCiyIsa286Iu2FjOyKpO2KuCDsmIjslb3tlZjquLAiLGZyOiJGYWlyZSB1bmUgcsOpc2VydmF0aW9uIHRlc3QiLGVzOiJIYWNlciB1bmEgcmVzZXJ2YSBkZSBwcnVlYmEifSwiQm9vayB7MH0gcm9vbXMiOntkZToiezB9IFppbW1lciBidWNoZW4iLGphOiJ7MH3lrqTjgpLkuojntIQiLGtvOiLqsJ3si6QgezB96rCcIOyYiOyVvSIsZnI6IlLDqXNlcnZlciB7MH0gY2hhbWJyZXMiLGVzOiJSZXNlcnZhciB7MH0gaGFiaXRhY2lvbmVzIn0sIkJvb2sgdGhpcyByb29tIjp7ZGU6IkRpZXNlcyBaaW1tZXIgYnVjaGVuIixqYToi44GT44Gu5a6i5a6k44KS5LqI57SEIixrbzoi7J20IOqwneyLpCDsmIjslb0iLGZyOiJSw6lzZXJ2ZXIgY2V0dGUgY2hhbWJyZSIsZXM6IlJlc2VydmFyIGVzdGEgaGFiaXRhY2nDs24ifSwiUmVxdWVzdCBib29raW5nIjp7ZGU6IkJ1Y2h1bmcgYW5mcmFnZW4iLGphOiLkuojntITjgpLkvp3poLwiLGtvOiLsmIjslb0g7JqU7LKtIixmcjoiRGVtYW5kZXIgbGEgcsOpc2VydmF0aW9uIixlczoiU29saWNpdGFyIHJlc2VydmEifSwiSG9sZCB7MH0gcm9vbXMiOntkZToiezB9IFppbW1lciByZXNlcnZpZXJlbiIsamE6InswfeWupOOCkueiuuS/nSIsa286IuqwneyLpCB7MH3qsJwg7ZmV67O0IixmcjoiUmV0ZW5pciB7MH0gY2hhbWJyZXMiLGVzOiJSZXRlbmVyIHswfSBoYWJpdGFjaW9uZXMifSwiSG9sZCB0aGlzIHJvb20iOntkZToiRGllc2VzIFppbW1lciByZXNlcnZpZXJlbiIsamE6IuOBk+OBruWuouWupOOCkueiuuS/nSIsa286IuydtCDqsJ3si6Qg7ZmV67O0IixmcjoiUmV0ZW5pciBjZXR0ZSBjaGFtYnJlIixlczoiUmV0ZW5lciBlc3RhIGhhYml0YWNpw7NuIn0sIldobyBpcyBzdGF5aW5nIjp7ZGU6IldlciDDvGJlcm5hY2h0ZXQiLGphOiLlrr/ms4rogIXmg4XloLEiLGtvOiLtiKzsiJnqsJ0g7KCV67O0IixmcjoiUXVpIHPDqWpvdXJuZSIsZXM6IlF1acOpbiBzZSBhbG9qYSJ9LCJGdWxsIG5hbWUiOntkZToiVm9sbHN0w6RuZGlnZXIgTmFtZSIsamE6Iuawj+WQjSIsa286IuydtOumhCIsZnI6Ik5vbSBjb21wbGV0IixlczoiTm9tYnJlIGNvbXBsZXRvIn0sIkFzIGl0IHNob3VsZCBhcHBlYXIgb24gdGhlIGJvb2tpbmciOntkZToiV2llIGVyIGF1ZiBkZXIgQnVjaHVuZyBzdGVoZW4gc29sbCIsamE6IuS6iOe0hOOBq+iomOi8ieOBmeOCi+awj+WQjSIsa286IuyYiOyVveyXkCDtkZzsi5zrkKAg7J2066aEIixmcjoiVGVsIHF14oCZaWwgZG9pdCBmaWd1cmVyIHN1ciBsYSByw6lzZXJ2YXRpb24iLGVzOiJUYWwgY29tbyBkZWJlIGZpZ3VyYXIgZW4gbGEgcmVzZXJ2YSJ9LEVtYWlsOkx3LCJGb3IgdGhlIGNvbmZpcm1hdGlvbiI6e2RlOiJGw7xyIGRpZSBCZXN0w6R0aWd1bmciLGphOiLnorroqo3jg6Hjg7zjg6vjga7pgIHku5jlhYgiLGtvOiLtmZXsnbgg66mU7J28IOyImOyLoOyaqSIsZnI6IlBvdXIgbGEgY29uZmlybWF0aW9uIixlczoiUGFyYSBsYSBjb25maXJtYWNpw7NuIn0sUGhvbmU6QncsIkZvciB0aGUgaG90ZWwgdG8gcmVhY2ggeW91Ijp7ZGU6IkRhbWl0IGRhcyBIb3RlbCBTaWUgZXJyZWljaGVuIGthbm4iLGphOiLjg5vjg4bjg6vjgYvjgonjga7pgKPntaHnlKgiLGtvOiLtmLjthZQg7Jew65297JqpIixmcjoiUG91ciBxdWUgbOKAmWjDtHRlbCBwdWlzc2Ugdm91cyBqb2luZHJlIixlczoiUGFyYSBxdWUgZWwgaG90ZWwgcHVlZGEgY29udGFjdGFybGUifSwiUmVxdWVzdHMgZm9yIHRoZSBob3RlbCI6e2RlOiJXw7xuc2NoZSBhbiBkYXMgSG90ZWwiLGphOiLjg5vjg4bjg6vjgbjjga7jg6rjgq/jgqjjgrnjg4giLGtvOiLtmLjthZQg7JqU7LKtIOyCrO2VrSIsZnI6IkRlbWFuZGVzIHBvdXIgbOKAmWjDtHRlbCIsZXM6IlBldGljaW9uZXMgcGFyYSBlbCBob3RlbCJ9LG9wdGlvbmFsOkh3LCJBcnJpdmluZyBhcm91bmQiOntkZToiQW5rdW5mdCBnZWdlbiIsamE6IuWIsOedgOS6iOWumiIsa286IuuPhOywqSDsmIjsoJUiLGZyOiJBcnJpdsOpZSB2ZXJzIixlczoiTGxlZ2FkYSBoYWNpYSJ9LCJBZnRlciAyMjowMCI6e2RlOiJOYWNoIDIyOjAwIixqYToiMjI6MDDku6XpmY0iLGtvOiIyMjowMCDsnbTtm4QiLGZyOiJBcHLDqHMgMjI6MDAiLGVzOiJEZXNwdcOpcyBkZSBsYXMgMjI6MDAifSwiQW55dGhpbmcgZWxzZSI6e2RlOiJTb25zdGlnZXMiLGphOiLjgZ3jga7ku5bjga7jg6rjgq/jgqjjgrnjg4giLGtvOiLquLDtg4Ag7JqU7LKtIixmcjoiQXV0cmUgY2hvc2UiLGVzOiJBbGdvIG3DoXMifSwiSW4geW91ciBvd24gd29yZHMiOntkZToiSW4gSWhyZW4gZWlnZW5lbiBXb3J0ZW4iLGphOiLjgZToh6rnlLHjgavjgYrmm7jjgY3jgY/jgaDjgZXjgYQiLGtvOiLsnpDsnKDroa3qsowg7KCB7Ja0IOyjvOyEuOyalCIsZnI6IkF2ZWMgdm9zIHByb3ByZXMgbW90cyIsZXM6IkNvbiBzdXMgcHJvcGlhcyBwYWxhYnJhcyJ9LCJUaGVzZSBnbyB0byB0aGUgZGVzayBhcyByZXF1ZXN0cy4gezB9IG1lZXRzIHdoYXQgaXQgY2FuIG9uIHRoZSBkYXk7IG5vbmUgb2YgaXQgaXMgaGVsZC4iOntkZToiRGllc2UgZ2VoZW4gYWxzIFfDvG5zY2hlIGFuIGRpZSBSZXplcHRpb24uIHswfSBlcmbDvGxsdCBhbSBUYWcsIHdhcyBtw7ZnbGljaCBpc3Q7IG5pY2h0cyBkYXZvbiBpc3QgZ2FyYW50aWVydC4iLGphOiLjgZPjgozjgonjga/jg6rjgq/jgqjjgrnjg4jjgajjgZfjgabjg5Xjg63jg7Pjg4jjgavkvJ3jgYjjgb7jgZnjgIJ7MH3jgYzlvZPml6XjgafjgY3jgovpmZDjgorlr77lv5zjgZfjgb7jgZnjgYzjgIHkv53oqLzjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLsmpTssq0g7IKs7ZWt7Jy866GcIO2UhOufsO2KuOyXkCDsoITri6zrkKnri4jri6QuIHswfeyXkOyEnCDri7nsnbwg6rCA64ql7ZWcIOunjO2BvCDrp57strAg65Oc66as7KeA66eMIOuztOyepeuQmOyngOuKlCDslYrsirXri4jri6QuIixmcjoiRWxsZXMgc29udCB0cmFuc21pc2VzIMOgIGxhIHLDqWNlcHRpb24gY29tbWUgZGVtYW5kZXMuIHswfSB5IHLDqXBvbmQgYXUgbWlldXggbGUgam91ciBtw6ptZSA7IHJpZW4gbuKAmWVzdCBnYXJhbnRpLiIsZXM6IlNlIGVudsOtYW4gYSByZWNlcGNpw7NuIGNvbW8gcGV0aWNpb25lcy4gezB9IGF0aWVuZGUgbG8gcXVlIHB1ZWRlIGVzZSBkw61hOyBuYWRhIGVzdMOhIGdhcmFudGl6YWRvLiJ9LCJSZW1lbWJlciB0aGUgYmVkLCBmbG9vciBhbmQgcm9vbSByZXF1ZXN0cyBvbiBteSB7MH0gZm9yIG5leHQgdGltZSI6e2RlOiJCZXR0LSwgRXRhZ2VuLSB1bmQgWmltbWVyd8O8bnNjaGUgaW4gbWVpbmVtIHswfS1Lb250byBmw7xyIGRhcyBuw6RjaHN0ZSBNYWwgc3BlaWNoZXJuIixqYToi44OZ44OD44OJ44O76ZqO5pWw44O75a6i5a6k44Gu44Oq44Kv44Ko44K544OI44KSezB944Ki44Kr44Km44Oz44OI44Gr5L+d5a2Y44GX44Gm5qyh5Zue44KC5L2/44GGIixrbzoi7Lmo64yALCDsuLUsIOqwneyLpCDsmpTssq3snYQg64K0IHswfSDqs4TsoJXsl5Ag7KCA7J6l7ZW0IOuLpOydjOyXkOuPhCDsgqzsmqkiLGZyOiJNw6ltb3Jpc2VyIGxlcyBkZW1hbmRlcyBkZSBsaXQsIGTigJnDqXRhZ2UgZXQgZGUgY2hhbWJyZSBzdXIgbW9uIGNvbXB0ZSB7MH0gcG91ciBsYSBwcm9jaGFpbmUgZm9pcyIsZXM6IlJlY29yZGFyIGxhcyBwZXRpY2lvbmVzIGRlIGNhbWEsIHBsYW50YSB5IGhhYml0YWNpw7NuIGVuIG1pIGN1ZW50YSB7MH0gcGFyYSBsYSBwcsOzeGltYSB2ZXoifSwiUmVtZW1iZXIgdGhlIGJlZCwgZmxvb3IgYW5kIHJvb20gcmVxdWVzdHMgb24gbXkgbWVtYmVyc2hpcCBmb3IgbmV4dCB0aW1lIjp7ZGU6IkJldHQtLCBFdGFnZW4tIHVuZCBaaW1tZXJ3w7xuc2NoZSBpbiBtZWluZXIgTWl0Z2xpZWRzY2hhZnQgZsO8ciBkYXMgbsOkY2hzdGUgTWFsIHNwZWljaGVybiIsamE6IuODmeODg+ODieODu+majuaVsOODu+WuouWupOOBruODquOCr+OCqOOCueODiOOCkuS8muWToeOCouOCq+OCpuODs+ODiOOBq+S/neWtmOOBl+OBpuasoeWbnuOCguS9v+OBhiIsa286Iuy5qOuMgCwg7Li1LCDqsJ3si6Qg7JqU7LKt7J2EIOuCtCDtmozsm5Ag6rOE7KCV7JeQIOyggOyepe2VtCDri6TsnYzsl5Drj4Qg7IKs7JqpIixmcjoiTcOpbW9yaXNlciBsZXMgZGVtYW5kZXMgZGUgbGl0LCBk4oCZw6l0YWdlIGV0IGRlIGNoYW1icmUgc3VyIG1vbiBjb21wdGUgbWVtYnJlIHBvdXIgbGEgcHJvY2hhaW5lIGZvaXMiLGVzOiJSZWNvcmRhciBsYXMgcGV0aWNpb25lcyBkZSBjYW1hLCBwbGFudGEgeSBoYWJpdGFjacOzbiBlbiBtaSBtZW1icmVzw61hIHBhcmEgbGEgcHLDs3hpbWEgdmV6In0sIk5leHQsIGEgcGF5bWVudCBwYWdlIGluIHRlc3QgbW9kZTogbm8gcmVhbCBtb25leSBtb3Zlcy4gQ2FyZCBkZXRhaWxzIGFyZSB0eXBlZCBvbmx5IHRoZXJlLCBhbmQgbm90aGluZyBpcyBib29rZWQgdW50aWwgaXQgaXMgcGFpZC4iOntkZToiQWxzIE7DpGNoc3RlcyBlaW5lIFphaGx1bmdzc2VpdGUgaW0gVGVzdG1vZHVzOiBFcyBmbGllw590IGtlaW4gZWNodGVzIEdlbGQuIEthcnRlbmRhdGVuIHdlcmRlbiBudXIgZG9ydCBlaW5nZWdlYmVuLCB1bmQgZ2VidWNodCB3aXJkIGVyc3QgbmFjaCBkZXIgWmFobHVuZy4iLGphOiLmrKHjga/jg4bjgrnjg4jjg6Ljg7zjg4njga7mlK/miZXjgYTjg5rjg7zjgrjjgafjgZnjgILlrp/pmpvjga7jgYrph5Hjga/li5XjgY3jgb7jgZvjgpPjgILjgqvjg7zjg4nmg4XloLHjga/jgZ3jga7jg5rjg7zjgrjjgafjga7jgb/lhaXlipvjgZfjgIHmlK/miZXjgYTjgYzmuIjjgoDjgb7jgafkuojntITjgZXjgozjgb7jgZvjgpPjgIIiLGtvOiLri6TsnYzsnYAg7YWM7Iqk7Yq4IOuqqOuTnCDqsrDsoJwg7Y6Y7J207KeA7J6F64uI64ukLiDsi6TsoJwg64+I7J2AIOyYpOqwgOyngCDslYrsirXri4jri6QuIOy5tOuTnCDsoJXrs7TripQg6re4IO2OmOydtOyngOyXkOyEnOunjCDsnoXroKXtlZjrqbAsIOqysOygnCDsoITsl5DripQg7JiI7JW965CY7KeAIOyViuyKteuLiOuLpC4iLGZyOiJFbnN1aXRlLCB1bmUgcGFnZSBkZSBwYWllbWVudCBlbiBtb2RlIHRlc3QgOiBhdWN1biBhcmdlbnQgcsOpZWwgbuKAmWVzdCBkw6liaXTDqS4gTGVzIGRvbm7DqWVzIGRlIGNhcnRlIHNlIHNhaXNpc3NlbnQgdW5pcXVlbWVudCBsw6AsIGV0IHJpZW4gbuKAmWVzdCByw6lzZXJ2w6kgYXZhbnQgbGUgcGFpZW1lbnQuIixlczoiQSBjb250aW51YWNpw7NuLCB1bmEgcMOhZ2luYSBkZSBwYWdvIGVuIG1vZG8gZGUgcHJ1ZWJhOiBubyBzZSBtdWV2ZSBkaW5lcm8gcmVhbC4gTG9zIGRhdG9zIGRlIGxhIHRhcmpldGEgc29sbyBzZSBlc2NyaWJlbiBhbGzDrSwgeSBubyBzZSByZXNlcnZhIG5hZGEgaGFzdGEgcXVlIHNlIHBhZ3VlLiJ9LCJOZXh0LCBhIHNlY3VyZSBwYXltZW50IHBhZ2U6IGNhcmQgZGV0YWlscyBhcmUgdHlwZWQgb25seSB0aGVyZS4gTm90aGluZyBpcyBib29rZWQgd2l0aCB7MH0gdW50aWwgaXQgaXMgcGFpZCwgYW5kIGlmIGl0IGNhbm5vdCBiZSwgYWxsIG9mIGl0IGdvZXMgYmFjay4iOntkZToiQWxzIE7DpGNoc3RlcyBlaW5lIHNpY2hlcmUgWmFobHVuZ3NzZWl0ZTogS2FydGVuZGF0ZW4gd2VyZGVuIG51ciBkb3J0IGVpbmdlZ2ViZW4uIEJlaSB7MH0gd2lyZCBlcnN0IG5hY2ggZGVyIFphaGx1bmcgZ2VidWNodCwgdW5kIGtsYXBwdCBkaWUgQnVjaHVuZyBuaWNodCwgd2lyZCBhbGxlcyBlcnN0YXR0ZXQuIixqYToi5qyh44Gv5a6J5YWo44Gq5pSv5omV44GE44Oa44O844K444Gn44GZ44CC44Kr44O844OJ5oOF5aCx44Gv44Gd44Gu44Oa44O844K444Gn44Gu44G/5YWl5Yqb44GX44G+44GZ44CC5pSv5omV44GE44GM5riI44KA44G+44GnezB944Gn44Gv5LqI57SE44GV44KM44Ga44CB5LqI57SE44Gn44GN44Gq44GL44Gj44Gf5aC05ZCI44Gv5YWo6aGN6L+U6YeR44GV44KM44G+44GZ44CCIixrbzoi64uk7J2M7J2AIOyViOyghO2VnCDqsrDsoJwg7Y6Y7J207KeA7J6F64uI64ukLiDsubTrk5wg7KCV67O064qUIOq3uCDtjpjsnbTsp4Dsl5DshJzrp4wg7J6F66Cl7ZWp64uI64ukLiDqsrDsoJwg7KCE7JeQ64qUIHswfeyXkCDsmIjslb3rkJjsp4Ag7JWK7Jy866mwLCDsmIjslb3snbQg7JWIIOuQmOuptCDsoITslaEg7ZmY67aI65Cp64uI64ukLiIsZnI6IkVuc3VpdGUsIHVuZSBwYWdlIGRlIHBhaWVtZW50IHPDqWN1cmlzw6llIDogbGVzIGRvbm7DqWVzIGRlIGNhcnRlIHNlIHNhaXNpc3NlbnQgdW5pcXVlbWVudCBsw6AuIFJpZW4gbuKAmWVzdCByw6lzZXJ2w6kgY2hleiB7MH0gYXZhbnQgbGUgcGFpZW1lbnQsIGV0IHNpIGxhIHLDqXNlcnZhdGlvbiDDqWNob3VlLCB0b3V0IGVzdCByZW1ib3Vyc8OpLiIsZXM6IkEgY29udGludWFjacOzbiwgdW5hIHDDoWdpbmEgZGUgcGFnbyBzZWd1cmE6IGxvcyBkYXRvcyBkZSBsYSB0YXJqZXRhIHNvbG8gc2UgZXNjcmliZW4gYWxsw60uIE5vIHNlIHJlc2VydmEgbmFkYSBjb24gezB9IGhhc3RhIHF1ZSBzZSBwYWd1ZSB5LCBzaSBubyBzZSBwdWVkZSwgc2UgZGV2dWVsdmUgdG9kby4ifSwiQSB0ZXN0IGJvb2tpbmc6IG5vdGhpbmcgaXMgaGVsZCBhbmQgbm90aGluZyBpcyBwYWlkLiI6e2RlOiJFaW5lIFRlc3RidWNodW5nOiBFcyB3aXJkIG5pY2h0cyByZXNlcnZpZXJ0IHVuZCBuaWNodHMgYmV6YWhsdC4iLGphOiLjg4bjgrnjg4jkuojntITjgafjgZnjgILlrqLlrqTjga/norrkv53jgZXjgozjgZrjgIHmlK/miZXjgYTjgoLjgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLthYzsiqTtirgg7JiI7JW97J6F64uI64ukLiDqsJ3si6TsnbQg7ZmV67O065CY7KeAIOyViuycvOupsCDqsrDsoJzrj4Qg7JeG7Iq164uI64ukLiIsZnI6IlVuZSByw6lzZXJ2YXRpb24gdGVzdCA6IHJpZW4gbuKAmWVzdCByZXRlbnUgZXQgcmllbiBu4oCZZXN0IHBhecOpLiIsZXM6IlVuYSByZXNlcnZhIGRlIHBydWViYTogbm8gc2UgcmV0aWVuZSBuYWRhIG5pIHNlIHBhZ2EgbmFkYS4ifSwiTm8gY2FyZCBpcyB0YWtlbiBhbmQgbm90aGluZyBpcyBjaGFyZ2VkLiBBIHJlc2VydmF0aW9uIHdpdGggezB9LCBwYWlkIGF0IHRoZSBob3RlbC4iOntkZToiRXMgd2lyZCBrZWluZSBLYXJ0ZSBlcmZhc3N0IHVuZCBuaWNodHMgYmVyZWNobmV0LiBFaW5lIFJlc2VydmllcnVuZyBiZWkgezB9LCBiZXphaGx0IGltIEhvdGVsLiIsamE6IuOCq+ODvOODieOBr+S4jeimgeOBp+OAgeiri+axguOCguOBguOCiuOBvuOBm+OCk+OAgnswfeOBp+OBruePvuWcsOaJleOBhOOBruS6iOe0hOOBp+OBmeOAgiIsa286Iuy5tOuTnCDrk7HroZ3rj4Qg6rKw7KCc64+EIOyXhuyKteuLiOuLpC4gezB97J2YIO2YhOyepSDqsrDsoJwg7JiI7JW97J6F64uI64ukLiIsZnI6IkF1Y3VuZSBjYXJ0ZSBu4oCZZXN0IGRlbWFuZMOpZSBldCByaWVuIG7igJllc3QgZmFjdHVyw6kuIFVuZSByw6lzZXJ2YXRpb24gY2hleiB7MH0sIHBheWFibGUgw6AgbOKAmWjDtHRlbC4iLGVzOiJObyBzZSBwaWRlIHRhcmpldGEgeSBubyBzZSBjb2JyYSBuYWRhLiBVbmEgcmVzZXJ2YSBjb24gezB9LCBjb24gcGFnbyBlbiBlbCBob3RlbC4ifSwiTm8gY2FyZCBpcyB0YWtlbiBhbmQgbm90aGluZyBpcyBjaGFyZ2VkLiBUaGlzIGlzIGEgZGVtb25zdHJhdGlvbjogezB9IGRvZXMgbm90IHJlY2VpdmUgaXQgYW5kIG5vIHJvb20gaXMgaGVsZC4iOntkZToiRXMgd2lyZCBrZWluZSBLYXJ0ZSBlcmZhc3N0IHVuZCBuaWNodHMgYmVyZWNobmV0LiBEaWVzIGlzdCBlaW5lIERlbW9uc3RyYXRpb246IHswfSBlcmjDpGx0IHNpZSBuaWNodCwgdW5kIGVzIHdpcmQga2VpbiBaaW1tZXIgcmVzZXJ2aWVydC4iLGphOiLjgqvjg7zjg4njga/kuI3opoHjgafjgIHoq4vmsYLjgoLjgYLjgorjgb7jgZvjgpPjgILjgZPjgozjga/jg4fjg6Ljga7jgZ/jgoHjgIF7MH3jgavjga/lsYrjgYvjgZrjgIHlrqLlrqTjgoLnorrkv53jgZXjgozjgb7jgZvjgpPjgIIiLGtvOiLsubTrk5wg65Ox66Gd64+EIOqysOygnOuPhCDsl4bsirXri4jri6QuIOuNsOuqqOydtOuvgOuhnCB7MH3sl5Ag7KCE64us65CY7KeAIOyViuycvOupsCDqsJ3si6Trj4Qg7ZmV67O065CY7KeAIOyViuyKteuLiOuLpC4iLGZyOiJBdWN1bmUgY2FydGUgbuKAmWVzdCBkZW1hbmTDqWUgZXQgcmllbiBu4oCZZXN0IGZhY3R1csOpLiBDZWNpIGVzdCB1bmUgZMOpbW9uc3RyYXRpb24gOiB7MH0gbmUgbGEgcmXDp29pdCBwYXMgZXQgYXVjdW5lIGNoYW1icmUgbuKAmWVzdCByZXRlbnVlLiIsZXM6Ik5vIHNlIHBpZGUgdGFyamV0YSB5IG5vIHNlIGNvYnJhIG5hZGEuIEVzIHVuYSBkZW1vc3RyYWNpw7NuOiB7MH0gbm8gbGEgcmVjaWJlIHkgbm8gc2UgcmV0aWVuZSBuaW5ndW5hIGhhYml0YWNpw7NuLiJ9LCJObyBjYXJkIGlzIHRha2VuIGFuZCBub3RoaW5nIGlzIGNoYXJnZWQuIFlvdSBwcmVzZW50IGEgY2FyZCBhdCBjaGVjay1pbi4iOntkZToiRXMgd2lyZCBrZWluZSBLYXJ0ZSBlcmZhc3N0IHVuZCBuaWNodHMgYmVyZWNobmV0LiBTaWUgbGVnZW4gYmVpIGRlciBBbnJlaXNlIGVpbmUgS2FydGUgdm9yLiIsamE6IuOCq+ODvOODieOBr+S4jeimgeOBp+OAgeiri+axguOCguOBguOCiuOBvuOBm+OCk+OAguODgeOCp+ODg+OCr+OCpOODs+aZguOBq+OCq+ODvOODieOCkuOBlOaPkOekuuOBj+OBoOOBleOBhOOAgiIsa286Iuy5tOuTnCDrk7HroZ3rj4Qg6rKw7KCc64+EIOyXhuyKteuLiOuLpC4g7LK07YGs7J24IOyLnCDsubTrk5zrpbwg7KCc7Iuc7ZWY7Iuc66m0IOuQqeuLiOuLpC4iLGZyOiJBdWN1bmUgY2FydGUgbuKAmWVzdCBkZW1hbmTDqWUgZXQgcmllbiBu4oCZZXN0IGZhY3R1csOpLiBWb3VzIHByw6lzZW50ZXogdW5lIGNhcnRlIMOgIGzigJlhcnJpdsOpZS4iLGVzOiJObyBzZSBwaWRlIHRhcmpldGEgeSBubyBzZSBjb2JyYSBuYWRhLiBQcmVzZW50YXLDoSB1bmEgdGFyamV0YSBhbCBsbGVnYXIuIn0sIlRoZSBib29raW5nIG5lZWRzIGEgbmFtZSBhbmQgYW4gZW1haWwuIjp7ZGU6IkbDvHIgZGllIEJ1Y2h1bmcgd2VyZGVuIE5hbWUgdW5kIEUtTWFpbCBiZW7DtnRpZ3QuIixqYToi5LqI57SE44Gr44Gv5rCP5ZCN44Go44Oh44O844Or44Ki44OJ44Os44K544GM5b+F6KaB44Gn44GZ44CCIixrbzoi7JiI7JW97JeQ64qUIOydtOumhOqzvCDsnbTrqZTsnbzsnbQg7ZWE7JqU7ZWp64uI64ukLiIsZnI6IkxhIHLDqXNlcnZhdGlvbiBkZW1hbmRlIHVuIG5vbSBldCB1biBlLW1haWwuIixlczoiTGEgcmVzZXJ2YSBuZWNlc2l0YSB1biBub21icmUgeSB1biBjb3JyZW8gZWxlY3Ryw7NuaWNvLiJ9LCJTaWduZWQgaW4iOntkZToiQW5nZW1lbGRldCIsamE6IuODreOCsOOCpOODs+S4rSIsa286IuuhnOq3uOyduOuQqCIsZnI6IkNvbm5lY3TDqSIsZXM6IlNlc2nDs24gaW5pY2lhZGEifSwiezB9IHBvaW50cyI6e2RlOiJ7MH0gUHVua3RlIixqYToiezB944Od44Kk44Oz44OIIixrbzoiezB97Y+s7J247Yq4IixmcjoiezB9IHBvaW50cyIsZXM6InswfSBwdW50b3MifSwiezB9JSBvZmYiOntkZToiezB9ICUgUmFiYXR0IixqYToiezB9JeOCquODlSIsa286InswfSUg7ZWg7J24Iixmcjoi4oiSezB9ICUiLGVzOiJ7MH0gJSBkZSBkZXNjdWVudG8ifSwiUm9vbSByYXRlcyBhbmQgdHJpcCB0b3RhbHMgbm93IHNob3cgdGhlIHswfSBtZW1iZXIgcmF0ZS4gTm90aGluZyBpcyBjaGFyZ2VkIGJ5IHNpZ25pbmcgaW4uIjp7ZGU6IlppbW1lcnByZWlzZSB1bmQgUmVpc2VzdW1tZW4gemVpZ2VuIGpldHp0IGRlbiBNaXRnbGllZGVycHJlaXMgezB9LiBEaWUgQW5tZWxkdW5nIGtvc3RldCBuaWNodHMuIixqYToi5a6i5a6k5paZ6YeR44Go5peF56iL44Gu5ZCI6KiI44GvezB95Lya5ZOh5paZ6YeR44Gn6KGo56S644GV44KM44G+44GZ44CC44Ot44Kw44Kk44Oz44GX44Gm44KC6KuL5rGC44Gv44GC44KK44G+44Gb44KT44CCIixrbzoi6rCd7IukIOyalOq4iOqzvCDsl6ztlokg7ZWp6rOE6rCAIOydtOygnCB7MH0g7ZqM7JuQIOyalOq4iOycvOuhnCDtkZzsi5zrkKnri4jri6QuIOuhnOq3uOyduO2VtOuPhCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiIsZnI6IkxlcyBwcml4IGRlcyBjaGFtYnJlcyBldCBsZXMgdG90YXV4IGR1IHZveWFnZSBhZmZpY2hlbnQgZMOpc29ybWFpcyBsZSB0YXJpZiBtZW1icmUgezB9LiBMYSBjb25uZXhpb24gbmUgZmFjdHVyZSByaWVuLiIsZXM6IkxhcyB0YXJpZmFzIHkgbG9zIHRvdGFsZXMgZGVsIHZpYWplIG11ZXN0cmFuIGFob3JhIGxhIHRhcmlmYSBkZSBtaWVtYnJvIHswfS4gSW5pY2lhciBzZXNpw7NuIG5vIGNvYnJhIG5hZGEuIn0sIlNhdmVkIGZvciB5b3VyIG5leHQgc3RheXMiOntkZToiRsO8ciBJaHJlIG7DpGNoc3RlbiBBdWZlbnRoYWx0ZSBnZXNwZWljaGVydCIsamE6IuasoeWbnuOBruWuv+aziueUqOOBq+S/neWtmOa4iOOBvyIsa286IuuLpOydjCDsiJnrsJXsnYQg7JyE7ZW0IOyggOyepeuQqCIsZnI6IkVucmVnaXN0csOpIHBvdXIgdm9zIHByb2NoYWlucyBzw6lqb3VycyIsZXM6Ikd1YXJkYWRvIHBhcmEgc3VzIHByw7N4aW1hcyBlc3RhbmNpYXMifSwiezB9IC0gdGlja2VkIG9uIHRoZSBib29raW5nIGZvcm0sIGFuZCBhc2tlZCBmb3Igb25seSB3aGVuIHlvdSBib29rIHdpdGggdGhlbS4iOntkZToiezB9IOKAkyBpbSBCdWNodW5nc2Zvcm11bGFyIHZvcmF1c2dld8OkaGx0IHVuZCBudXIgYW5nZWZyYWd0LCB3ZW5uIFNpZSBkb3J0IGJ1Y2hlbi4iLGphOiJ7MH3vvJrkuojntITjg5Xjgqnjg7zjg6Djgafoh6rli5XnmoTjgavjg4Hjgqfjg4Pjgq/jgZXjgozjgIHjgZ3jga7jg5vjg4bjg6vjgafkuojntITjgZnjgovjgajjgY3jgaDjgZHjg6rjgq/jgqjjgrnjg4jjgZXjgozjgb7jgZnjgIIiLGtvOiJ7MH0g4oCUIOyYiOyVvSDslpHsi53sl5Ag66+466asIOyytO2BrOuQmOupsCwg7ZW064u5IO2YuO2FlOyXkOyEnCDsmIjslb3tlaAg65WM66eMIOyalOyyreuQqeuLiOuLpC4iLGZyOiJ7MH0g4oCUIGNvY2jDqXMgZGFucyBsZSBmb3JtdWxhaXJlIGRlIHLDqXNlcnZhdGlvbiwgZXQgZGVtYW5kw6lzIHNldWxlbWVudCBxdWFuZCB2b3VzIHLDqXNlcnZleiBjaGV6IGV1eC4iLGVzOiJ7MH06IG1hcmNhZG9zIGVuIGVsIGZvcm11bGFyaW8gZGUgcmVzZXJ2YSwgeSBzb2xpY2l0YWRvcyBzb2xvIGN1YW5kbyByZXNlcnZlIGNvbiBlbGxvcy4ifSwiRm9yZ2V0IHRoZW0iOntkZToiVmVyZ2Vzc2VuIixqYToi5YmK6Zmk44GZ44KLIixrbzoi7IKt7KCcIixmcjoiTGVzIG91YmxpZXIiLGVzOiJPbHZpZGFybGFzIn0sIkZpbmQgYSBob3RlbCI6e2RlOiJIb3RlbCBmaW5kZW4iLGphOiLjg5vjg4bjg6vjgpLmjqLjgZkiLGtvOiLtmLjthZQg7LC+6riwIixmcjoiVHJvdXZlciB1biBow7R0ZWwiLGVzOiJCdXNjYXIgdW4gaG90ZWwifSwiU2lnbiBvdXQiOntkZToiQWJtZWxkZW4iLGphOiLjg63jgrDjgqLjgqbjg4giLGtvOiLroZzqt7jslYTsm4MiLGZyOiJTZSBkw6ljb25uZWN0ZXIiLGVzOiJDZXJyYXIgc2VzacOzbiJ9LCJObyBtZW1iZXJzaGlwIG1hdGNoZXMgdGhhdCBudW1iZXIgYW5kIHN1cm5hbWUuIENoZWNrIGJvdGggYXMgdGhleSBhcmUgcHJpbnRlZCDigJQgbm90aGluZyBlbHNlIGlzIG5lZWRlZCwgdGhpcyBjb25uZWN0b3IgbmV2ZXIgYXNrcyBmb3IgYSBwYXNzd29yZC4iOntkZToiS2VpbmUgTWl0Z2xpZWRzY2hhZnQgcGFzc3QgenUgZGllc2VyIE51bW1lciB1bmQgZGllc2VtIE5hY2huYW1lbi4gUHLDvGZlbiBTaWUgYmVpZGVzIHdpZSBhdWZnZWRydWNrdCDigJQgbWVociBpc3QgbmljaHQgbsO2dGlnLCBoaWVyIHdpcmQgbmllIG5hY2ggZWluZW0gUGFzc3dvcnQgZ2VmcmFndC4iLGphOiLjgZ3jga7kvJrlk6Hnlarlj7fjgajlp5PjgavkuIDoh7TjgZnjgovkvJrlk6Hmg4XloLHjga/jgYLjgorjgb7jgZvjgpPjgILljbDlrZfjganjgYrjgorjgavkuKHmlrnjgpLjgZTnorroqo3jgY/jgaDjgZXjgYTjgILjgZ3jgozku6XlpJbjga/kuI3opoHjgafjgIHjg5Hjgrnjg6/jg7zjg4njgpLmsYLjgoHjgovjgZPjgajjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLtlbTri7kg7ZqM7JuQIOuyiO2YuOyZgCDshLHsnbQg7J287LmY7ZWY64qUIO2ajOybkCDsoJXrs7TqsIAg7JeG7Iq164uI64ukLiDsnbjsh4TrkJwg64yA66GcIOuRkCDqsIDsp4Drpbwg7ZmV7J247ZW0IOyjvOyEuOyalC4g6re4IOyZuOyXkOuKlCDtlYTsmpQg7JeG7Jy866mwLCDruYTrsIDrsojtmLjripQg7KCI64yAIOusu+yngCDslYrsirXri4jri6QuIixmcjoiQXVjdW5lIGFkaMOpc2lvbiBuZSBjb3JyZXNwb25kIMOgIGNlIG51bcOpcm8gZXQgw6AgY2Ugbm9tLiBWw6lyaWZpZXogbGVzIGRldXggdGVscyBxdeKAmWlscyBzb250IGltcHJpbcOpcyDigJQgcmllbiBk4oCZYXV0cmUgbuKAmWVzdCBuw6ljZXNzYWlyZSwgY2Ugc2VydmljZSBuZSBkZW1hbmRlIGphbWFpcyBkZSBtb3QgZGUgcGFzc2UuIixlczoiTmluZ3VuYSBtZW1icmVzw61hIGNvaW5jaWRlIGNvbiBlc2UgbsO6bWVybyB5IGFwZWxsaWRvLiBDb21wcnVlYmUgYW1ib3MgdGFsIGNvbW8gYXBhcmVjZW4gaW1wcmVzb3M7IG5vIGhhY2UgZmFsdGEgbmFkYSBtw6FzLCBhcXXDrSBudW5jYSBzZSBwaWRlIHVuYSBjb250cmFzZcOxYS4ifSwiTWVtYmVyc2hpcCBudW1iZXIiOntkZToiTWl0Z2xpZWRzbnVtbWVyIixqYToi5Lya5ZOh55Wq5Y+3Iixrbzoi7ZqM7JuQIOuyiO2YuCIsZnI6Ik51bcOpcm8gZGUgbWVtYnJlIixlczoiTsO6bWVybyBkZSBtaWVtYnJvIn0sIkFzIGl0IGlzIHByaW50ZWQiOntkZToiV2llIGF1ZmdlZHJ1Y2t0IixqYToi5Y2w5a2X44Gp44GK44KK44Gr5YWl5YqbIixrbzoi7J247IeE65CcIOq3uOuMgOuhnCIsZnI6IlRlbCBxdeKAmWltcHJpbcOpIixlczoiVGFsIGNvbW8gYXBhcmVjZSBpbXByZXNvIn0sU3VybmFtZTpGdywiVGhlIHN1cm5hbWUgb24gaXQiOntkZToiRGVyIE5hY2huYW1lIGRhcmF1ZiIsamE6IuOCq+ODvOODieOBq+iomOi8ieOBruWnkyIsa286Iuy5tOuTnOyXkCDsoIHtnowg7ISxIixmcjoiTGUgbm9tIHF1aSB5IGZpZ3VyZSIsZXM6IkVsIGFwZWxsaWRvIHF1ZSBhcGFyZWNlIn0sIlNpZ24gaW4iOntkZToiQW5tZWxkZW4iLGphOiLjg63jgrDjgqTjg7MiLGtvOiLroZzqt7jsnbgiLGZyOiJTZSBjb25uZWN0ZXIiLGVzOiJJbmljaWFyIHNlc2nDs24ifSwiTm8gcGFzc3dvcmQgaXMgYXNrZWQgZm9yIGFuZCBub25lIGlzIHN0b3JlZC4gU2lnbmluZyBpbiBzaG93cyB0aGUgbWVtYmVyIHJhdGU7IG5vdGhpbmcgaXMgY2hhcmdlZC4iOntkZToiRXMgd2lyZCBrZWluIFBhc3N3b3J0IGFiZ2VmcmFndCBvZGVyIGdlc3BlaWNoZXJ0LiBEaWUgQW5tZWxkdW5nIHplaWd0IGRlbiBNaXRnbGllZGVycHJlaXM7IGVzIHdpcmQgbmljaHRzIGJlcmVjaG5ldC4iLGphOiLjg5Hjgrnjg6/jg7zjg4njga/kuI3opoHjgafjgIHkv53lrZjjgoLjgZfjgb7jgZvjgpPjgILjg63jgrDjgqTjg7PjgZnjgovjgajkvJrlk6Hmlpnph5HjgYzooajnpLrjgZXjgozjgb7jgZnjgILoq4vmsYLjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLruYTrsIDrsojtmLjrpbwg66y77KeA64+EIOyggOyepe2VmOyngOuPhCDslYrsirXri4jri6QuIOuhnOq3uOyduO2VmOuptCDtmozsm5Ag7JqU6riI7J20IO2RnOyLnOuQmOupsCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiIsZnI6IkF1Y3VuIG1vdCBkZSBwYXNzZSBu4oCZZXN0IGRlbWFuZMOpIG5pIGNvbnNlcnbDqS4gTGEgY29ubmV4aW9uIGFmZmljaGUgbGUgdGFyaWYgbWVtYnJlIDsgcmllbiBu4oCZZXN0IGZhY3R1csOpLiIsZXM6Ik5vIHNlIHBpZGUgbmkgc2UgZ3VhcmRhIG5pbmd1bmEgY29udHJhc2XDsWEuIEluaWNpYXIgc2VzacOzbiBtdWVzdHJhIGxhIHRhcmlmYSBkZSBtaWVtYnJvOyBubyBzZSBjb2JyYSBuYWRhLiJ9LCJSZXF1ZXN0ZWQsIG5vdCBoZWxkIjp7ZGU6IkFuZ2VmcmFndCwgbmljaHQgZ2FyYW50aWVydCIsamE6IuODquOCr+OCqOOCueODiOa4iOOBv++8iOS/neiovOOBquOBl++8iSIsa286IuyalOyyreuQqCAo67O07J6l65CY7KeAIOyViuydjCkiLGZyOiJEZW1hbmTDqSwgbm9uIGdhcmFudGkiLGVzOiJTb2xpY2l0YWRvLCBubyBnYXJhbnRpemFkbyJ9LCJ7MH0gKGhvdGVsIHRpbWUpIjp7ZGU6InswfSAoT3J0c3plaXQgZGVzIEhvdGVscykiLGphOiJ7MH3vvIjjg5vjg4bjg6vnj77lnLDmmYLplpPvvIkiLGtvOiJ7MH0gKO2YuO2FlCDtmITsp4Ag7Iuc6rCEKSIsZnI6InswfSAoaGV1cmUgZGUgbOKAmWjDtHRlbCkiLGVzOiJ7MH0gKGhvcmEgZGVsIGhvdGVsKSJ9LCJQYXkgdG8gZmluaXNoIGJvb2tpbmciOntkZToiQmV6YWhsZW4sIHVtIGRpZSBCdWNodW5nIGFienVzY2hsaWXDn2VuIixqYToi5pSv5omV44GE44Gn5LqI57SE44GM5a6M5LqG44GX44G+44GZIixrbzoi6rKw7KCc7ZWY66m0IOyYiOyVveydtCDsmYTro4zrkKnri4jri6QiLGZyOiJQYXlleiBwb3VyIGZpbmFsaXNlciBsYSByw6lzZXJ2YXRpb24iLGVzOiJQYWd1ZSBwYXJhIGNvbXBsZXRhciBsYSByZXNlcnZhIn0sIk5vdGhpbmcgaXMgYm9va2VkIHlldC4gT25jZSB0aGUgcGF5bWVudCBnb2VzIHRocm91Z2gsIHRoZSByb29tIGlzIGJvb2tlZCB3aXRoIHswfS4iOntkZToiTm9jaCBpc3QgbmljaHRzIGdlYnVjaHQuIFNvYmFsZCBkaWUgWmFobHVuZyBkdXJjaCBpc3QsIHdpcmQgZGFzIFppbW1lciBiZWkgezB9IGdlYnVjaHQuIixqYToi44G+44Gg5LqI57SE44GV44KM44Gm44GE44G+44Gb44KT44CC5pSv5omV44GE44GM5a6M5LqG44GZ44KL44Go44CBezB944Gn5a6i5a6k44GM5LqI57SE44GV44KM44G+44GZ44CCIixrbzoi7JWE7KeBIOyYiOyVveuQmOyngCDslYrslZjsirXri4jri6QuIOqysOygnOqwgCDsmYTro4zrkJjrqbQgezB97JeQIOqwneyLpOydtCDsmIjslb3rkKnri4jri6QuIixmcjoiUmllbiBu4oCZZXN0IGVuY29yZSByw6lzZXJ2w6kuIFVuZSBmb2lzIGxlIHBhaWVtZW50IHBhc3PDqSwgbGEgY2hhbWJyZSBlc3QgcsOpc2VydsOpZSBjaGV6IHswfS4iLGVzOiJBw7puIG5vIGhheSBuYWRhIHJlc2VydmFkby4gQ3VhbmRvIHNlIGNvbXBsZXRlIGVsIHBhZ28sIGxhIGhhYml0YWNpw7NuIHF1ZWRhcsOhIHJlc2VydmFkYSBjb24gezB9LiJ9LCJUbyBwYXkgbm93Ijp7ZGU6IkpldHp0IHp1IHphaGxlbiIsamE6IuOBiuaUr+aJleOBhOmHkemhjSIsa286IuqysOygnCDquIjslaEiLGZyOiLDgCBwYXllciBtYWludGVuYW50IixlczoiQSBwYWdhciBhaG9yYSJ9LCJQYXkgYnkgezB9Ijp7ZGU6IkJlemFobGVuIGJpcyB7MH0iLGphOiJ7MH3jgb7jgafjgavjgYrmlK/miZXjgYTjgY/jgaDjgZXjgYQiLGtvOiJ7MH3quYzsp4Ag6rKw7KCc7ZW0IOyjvOyEuOyalCIsZnI6IsOAIHBheWVyIGF2YW50IHswfSIsZXM6IlBhZ3VlIGFudGVzIGRlIGxhcyB7MH0ifSwiUGF5IHdpdGhpbiI6e2RlOiJWZXJibGVpYmVuZGUgWmVpdCIsamE6Iuaui+OCiuaZgumWkyIsa286IuuCqOydgCDsi5zqsIQiLGZyOiJUZW1wcyByZXN0YW50IixlczoiVGllbXBvIHJlc3RhbnRlIn0sIlBheSB7MH0gb24gdGhlIHNlY3VyZSBwYWdlIjp7ZGU6InswfSBhdWYgZGVyIHNpY2hlcmVuIFNlaXRlIGJlemFobGVuIixqYToi5a6J5YWo44Gq44Oa44O844K444GnezB944KS5pSv5omV44GGIixrbzoi7JWI7KCE7ZWcIO2OmOydtOyngOyXkOyEnCB7MH0g6rKw7KCcIixmcjoiUGF5ZXIgezB9IHN1ciBsYSBwYWdlIHPDqWN1cmlzw6llIixlczoiUGFnYXIgezB9IGVuIGxhIHDDoWdpbmEgc2VndXJhIn0sIlBhaWQgYWxyZWFkeT8gQ2hlY2sgbm93Ijp7ZGU6IlNjaG9uIGJlemFobHQ/IEpldHp0IHByw7xmZW4iLGphOiLmlK/miZXjgYTmuIjjgb/jga7loLTlkIjjga/ku4rjgZnjgZDnorroqo0iLGtvOiLsnbTrr7gg6rKw7KCc7ZWY7IWo64KY7JqUPyDsp4DquIgg7ZmV7J24IixmcjoiRMOpasOgIHBhecOpID8gVsOpcmlmaWVyIixlczoiwr9ZYSBwYWfDsz8gQ29tcHJvYmFyIGFob3JhIn0sIlRlc3QgbW9kZTogbm8gcmVhbCBtb25leSBtb3ZlcyAtIHVzZSBhIHRlc3QgY2FyZCBvbiB0aGUgcGF5bWVudCBwYWdlLiBDYXJkIGRldGFpbHMgYXJlIHR5cGVkIG9ubHkgdGhlcmUsIG5ldmVyIGhlcmUuIjp7ZGU6IlRlc3Rtb2R1czogRXMgZmxpZcOfdCBrZWluIGVjaHRlcyBHZWxkIOKAkyBudXR6ZW4gU2llIGF1ZiBkZXIgWmFobHVuZ3NzZWl0ZSBlaW5lIFRlc3RrYXJ0ZS4gS2FydGVuZGF0ZW4gd2VyZGVuIG51ciBkb3J0IGVpbmdlZ2ViZW4sIG5pZSBoaWVyLiIsamE6IuODhuOCueODiOODouODvOODie+8muWun+mam+OBruOBiumHkeOBr+WLleOBjeOBvuOBm+OCk+OAguaUr+aJleOBhOODmuODvOOCuOOBp+ODhuOCueODiOOCq+ODvOODieOCkuOBiuS9v+OBhOOBj+OBoOOBleOBhOOAguOCq+ODvOODieaDheWgseOBr+OBneOBruODmuODvOOCuOOBp+OBruOBv+WFpeWKm+OBl+OAgeOBk+OBk+OBp+OBr+WFpeWKm+OBl+OBvuOBm+OCk+OAgiIsa286Iu2FjOyKpO2KuCDrqqjrk5w6IOyLpOygnCDrj4jsnYAg7Jik6rCA7KeAIOyViuyKteuLiOuLpC4g6rKw7KCcIO2OmOydtOyngOyXkOyEnCDthYzsiqTtirgg7Lm065Oc66W8IOyCrOyaqe2VmOyEuOyalC4g7Lm065OcIOygleuztOuKlCDqt7gg7Y6Y7J207KeA7JeQ7ISc66eMIOyeheugpe2VmOupsCDsl6zquLDshJzripQg67Cb7KeAIOyViuyKteuLiOuLpC4iLGZyOiJNb2RlIHRlc3QgOiBhdWN1biBhcmdlbnQgcsOpZWwgbuKAmWVzdCBkw6liaXTDqSDigJQgdXRpbGlzZXogdW5lIGNhcnRlIGRlIHRlc3Qgc3VyIGxhIHBhZ2UgZGUgcGFpZW1lbnQuIExlcyBkb25uw6llcyBkZSBjYXJ0ZSBzZSBzYWlzaXNzZW50IHVuaXF1ZW1lbnQgbMOgLCBqYW1haXMgaWNpLiIsZXM6Ik1vZG8gZGUgcHJ1ZWJhOiBubyBzZSBtdWV2ZSBkaW5lcm8gcmVhbDsgdXNlIHVuYSB0YXJqZXRhIGRlIHBydWViYSBlbiBsYSBww6FnaW5hIGRlIHBhZ28uIExvcyBkYXRvcyBkZSBsYSB0YXJqZXRhIHNvbG8gc2UgZXNjcmliZW4gYWxsw60sIG51bmNhIGFxdcOtLiJ9LCJDYXJkIGRldGFpbHMgYXJlIHR5cGVkIG9ubHkgb24gdGhlIHBheW1lbnQgcGFnZSwgbmV2ZXIgaGVyZS4gSWYgdGhlIGhvdGVsIGRvZXMgbm90IGNvbmZpcm0sIGFsbCBvZiBpdCBnb2VzIGJhY2suIjp7ZGU6IkthcnRlbmRhdGVuIHdlcmRlbiBudXIgYXVmIGRlciBaYWhsdW5nc3NlaXRlIGVpbmdlZ2ViZW4sIG5pZSBoaWVyLiBCZXN0w6R0aWd0IGRhcyBIb3RlbCBuaWNodCwgd2lyZCBhbGxlcyBlcnN0YXR0ZXQuIixqYToi44Kr44O844OJ5oOF5aCx44Gv5pSv5omV44GE44Oa44O844K444Gn44Gu44G/5YWl5Yqb44GX44CB44GT44GT44Gn44Gv5YWl5Yqb44GX44G+44Gb44KT44CC44Ob44OG44Or44GM56K65a6a44GX44Gq44GL44Gj44Gf5aC05ZCI44Gv5YWo6aGN6L+U6YeR44GV44KM44G+44GZ44CCIixrbzoi7Lm065OcIOygleuztOuKlCDqsrDsoJwg7Y6Y7J207KeA7JeQ7ISc66eMIOyeheugpe2VmOupsCDsl6zquLDshJzripQg67Cb7KeAIOyViuyKteuLiOuLpC4g7Zi47YWU7J20IO2Zleygle2VmOyngCDslYrsnLzrqbQg7KCE7JWhIO2ZmOu2iOuQqeuLiOuLpC4iLGZyOiJMZXMgZG9ubsOpZXMgZGUgY2FydGUgc2Ugc2Fpc2lzc2VudCB1bmlxdWVtZW50IHN1ciBsYSBwYWdlIGRlIHBhaWVtZW50LCBqYW1haXMgaWNpLiBTaSBs4oCZaMO0dGVsIG5lIGNvbmZpcm1lIHBhcywgdG91dCBlc3QgcmVtYm91cnPDqS4iLGVzOiJMb3MgZGF0b3MgZGUgbGEgdGFyamV0YSBzb2xvIHNlIGVzY3JpYmVuIGVuIGxhIHDDoWdpbmEgZGUgcGFnbywgbnVuY2EgYXF1w60uIFNpIGVsIGhvdGVsIG5vIGNvbmZpcm1hLCBzZSBkZXZ1ZWx2ZSB0b2RvLiJ9LCJSZWZlcmVuY2UgezB9IMK3IGZvciB7MX0iOntkZToiUmVmZXJlbnogezB9IMK3IGbDvHIgezF9IixqYToi55Wq5Y+3IHswfSDCtyB7MX0iLGtvOiLrsojtmLggezB9IMK3IHsxfSIsZnI6IlLDqWbDqXJlbmNlIHswfSDCtyBwb3VyIHsxfSIsZXM6IlJlZmVyZW5jaWEgezB9IMK3IHBhcmEgezF9In0sInRpbWUgaXMgdXAiOntkZToiWmVpdCBhYmdlbGF1ZmVuIixqYToi5pmC6ZaT5YiH44KMIixrbzoi7Iuc6rCEIOy0iOqzvCIsZnI6InRlbXBzIMOpY291bMOpIixlczoic2UgYWNhYsOzIGVsIHRpZW1wbyJ9LCJDb3VsZCBub3QgY2hlY2sgdGhlIHBheW1lbnQganVzdCBub3cuIjp7ZGU6IkRpZSBaYWhsdW5nIGtvbm50ZSBnZXJhZGUgbmljaHQgZ2VwcsO8ZnQgd2VyZGVuLiIsamE6IuS7iuOBr+aUr+aJleOBhOeKtuazgeOCkueiuuiqjeOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyngOq4iOydgCDqsrDsoJwg7IOB7YOc66W8IO2ZleyduO2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSB2w6lyaWZpZXIgbGUgcGFpZW1lbnQgcG91ciBs4oCZaW5zdGFudC4iLGVzOiJObyBzZSBwdWRvIGNvbXByb2JhciBlbCBwYWdvIGFob3JhIG1pc21vLiJ9LCJOb3QgYm9va2VkIjp7ZGU6Ik5pY2h0IGdlYnVjaHQiLGphOiLkuojntITjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ8iLGtvOiLsmIjslb3rkJjsp4Ag7JWK7J2MIixmcjoiTm9uIHLDqXNlcnbDqSIsZXM6Ik5vIHJlc2VydmFkbyJ9LCJOb3QgYm9va2VkICh7MH0pIjp7ZGU6Ik5pY2h0IGdlYnVjaHQgKHswfSkiLGphOiLkuojntITjgafjgY3jgarjgYvjgaPjgZ/mu57lnKjvvIh7MH3ku7bvvIkiLGtvOiLsmIjslb3rkJjsp4Ag7JWK7J2MICh7MH3qsbQpIixmcjoiTm9uIHLDqXNlcnbDqXMgKHswfSkiLGVzOiJObyByZXNlcnZhZGFzICh7MH0pIn0sIkJvb2thYmxlIGluc3RlYWQsIHRoZSBzYW1lIG5pZ2h0cyI6e2RlOiJTdGF0dGRlc3NlbiBidWNoYmFyLCBnbGVpY2hlIE7DpGNodGUiLGphOiLlkIzjgZjml6XnqIvjgafkuojntITjgafjgY3jgovjg5vjg4bjg6siLGtvOiLqsJnsnYAg64Kg7Kec7JeQIOuMgOyLoCDsmIjslb0g6rCA64qlIixmcjoiUsOpc2VydmFibGUgw6AgbGEgcGxhY2UsIG3Dqm1lcyBudWl0cyIsZXM6IkRpc3BvbmlibGUgZW4gc3UgbHVnYXIsIG1pc21hcyBub2NoZXMifSwiezB9IGZvciB0aGUgc3RheSI6e2RlOiJ7MH0gZsO8ciBkZW4gQXVmZW50aGFsdCIsamE6Iua7nuWcqOWQiOioiCB7MH0iLGtvOiLsiJnrsJUg7ZWp6rOEIHswfSIsZnI6InswfSBwb3VyIGxlIHPDqWpvdXIiLGVzOiJ7MH0gcG9yIGxhIGVzdGFuY2lhIn0sIlRha2UgdGhpcyBpbnN0ZWFkIjp7ZGU6IlN0YXR0ZGVzc2VuIGRpZXNlcyIsamE6IuOBk+OBoeOCieOBq+WkieabtCIsa286IuydtOqzs+ycvOuhnCDrs4Dqsr0iLGZyOiJQcmVuZHJlIGNlbHVpLWNpIixlczoiRWxlZ2lyIGVzdGUifSwiVHJ5IGFnYWluIjp7ZGU6IkVybmV1dCB2ZXJzdWNoZW4iLGphOiLjgoLjgYbkuIDluqboqabjgZkiLGtvOiLri6Tsi5wg7Iuc64+EIixmcjoiUsOpZXNzYXllciIsZXM6IlJlaW50ZW50YXIifSwiRmluZCBhbm90aGVyIGhvdGVsIjp7ZGU6IkFuZGVyZXMgSG90ZWwgZmluZGVuIixqYToi5Yil44Gu44Ob44OG44Or44KS5o6i44GZIixrbzoi64uk66W4IO2YuO2FlCDssL7quLAiLGZyOiJUcm91dmVyIHVuIGF1dHJlIGjDtHRlbCIsZXM6IkJ1c2NhciBvdHJvIGhvdGVsIn0sIlRoYXQgc3RheSBjb3VsZCBub3QgYmUgYm9va2VkLiBOb3RoaW5nIHdhcyBjaGFyZ2VkLiI6e2RlOiJEaWVzZXIgQXVmZW50aGFsdCBrb25udGUgbmljaHQgZ2VidWNodCB3ZXJkZW4uIEVzIHd1cmRlIG5pY2h0cyBiZXJlY2huZXQuIixqYToi44GT44Gu5rue5Zyo44Gv5LqI57SE44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CC6KuL5rGC44Gv44GC44KK44G+44Gb44KT44CCIixrbzoi7J20IOyImeuwleydgCDsmIjslb3tlZjsp4Ag66q77ZaI7Iq164uI64ukLiDqsrDsoJzrkJjsp4Ag7JWK7JWY7Iq164uI64ukLiIsZnI6IkNlIHPDqWpvdXIgbuKAmWEgcGFzIHB1IMOqdHJlIHLDqXNlcnbDqS4gUmllbiBu4oCZYSDDqXTDqSBmYWN0dXLDqS4iLGVzOiJFc2EgZXN0YW5jaWEgbm8gc2UgcHVkbyByZXNlcnZhci4gTm8gc2UgY29icsOzIG5hZGEuIn0sIk5vbmUgb2YgdGhlIHswfSBzdGF5cyBjb3VsZCBiZSBib29rZWQuIE5vdGhpbmcgd2FzIGNoYXJnZWQuIjp7ZGU6IktlaW5lciBkZXIgezB9IEF1ZmVudGhhbHRlIGtvbm50ZSBnZWJ1Y2h0IHdlcmRlbi4gRXMgd3VyZGUgbmljaHRzIGJlcmVjaG5ldC4iLGphOiJ7MH3ku7bjga7mu57lnKjjga/jgYTjgZrjgozjgoLkuojntITjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgILoq4vmsYLjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLsiJnrsJUgezB96rG0IOuqqOuRkCDsmIjslb3tlZjsp4Ag66q77ZaI7Iq164uI64ukLiDqsrDsoJzrkJjsp4Ag7JWK7JWY7Iq164uI64ukLiIsZnI6IkF1Y3VuIGRlcyB7MH0gc8Opam91cnMgbuKAmWEgcHUgw6p0cmUgcsOpc2VydsOpLiBSaWVuIG7igJlhIMOpdMOpIGZhY3R1csOpLiIsZXM6Ik5vIHNlIHB1ZG8gcmVzZXJ2YXIgbmluZ3VuYSBkZSBsYXMgezB9IGVzdGFuY2lhcy4gTm8gc2UgY29icsOzIG5hZGEuIn0sIlRoZSByb29tIGlzIGhlbGQgZm9yIHlvdSB1bnRpbCB7MH0uIjp7ZGU6IkRhcyBaaW1tZXIgaXN0IGJpcyB7MH0gZsO8ciBTaWUgcmVzZXJ2aWVydC4iLGphOiLlrqLlrqTjga97MH3jgb7jgafnorrkv53jgZXjgozjgabjgYTjgb7jgZnjgIIiLGtvOiLqsJ3si6TsnYAgezB96rmM7KeAIO2ZleuztOuQmOyWtCDsnojsirXri4jri6QuIixmcjoiTGEgY2hhbWJyZSB2b3VzIGVzdCByZXRlbnVlIGp1c3F14oCZYXUgezB9LiIsZXM6IkxhIGhhYml0YWNpw7NuIHF1ZWRhIHJldGVuaWRhIGhhc3RhIGVsIHswfS4ifSwiQmVpbmcgY29uZmlybWVkIjp7ZGU6IldpcmQgYmVzdMOkdGlndCIsamE6IueiuuiqjeS4rSIsa286Iu2ZleyduCDspJEiLGZyOiJFbiBjb3VycyBkZSBjb25maXJtYXRpb24iLGVzOiJFbiBjb25maXJtYWNpw7NuIn0sIkNvZGUgb25jZSBjb25maXJtZWQiOntkZToiQ29kZSBuYWNoIEJlc3TDpHRpZ3VuZyIsamE6IueiuuiqjeW+jOOBq+eVquWPt+OCkueZuuihjCIsa286Iu2ZleyduCDtm4Qg67KI7Zi4IOuwnOq4iSIsZnI6IkNvZGUgYXByw6hzIGNvbmZpcm1hdGlvbiIsZXM6IkPDs2RpZ28gdHJhcyBsYSBjb25maXJtYWNpw7NuIn0sIkNvbmZpcm1hdGlvbiBjb2RlIjp7ZGU6IkJlc3TDpHRpZ3VuZ3Njb2RlIixqYToi56K66KqN55Wq5Y+3Iixrbzoi7ZmV7J24IOuyiO2YuCIsZnI6IkNvZGUgZGUgY29uZmlybWF0aW9uIixlczoiQ8OzZGlnbyBkZSBjb25maXJtYWNpw7NuIn0sIldhaXRpbmcgZm9yIHswfSB0byBjb25maXJtIHRoaXMgYm9va2luZyDigJQgdGhhdCB0YWtlcyB1cCB0byBlaWdodCBtaW51dGVzLiBNeSBib29raW5ncyBzaG93cyB3aGVuIGl0IGhhcy4iOntkZToiV2lyIHdhcnRlbiBhdWYgZGllIEJlc3TDpHRpZ3VuZyBkdXJjaCB7MH0g4oCUIGRhcyBkYXVlcnQgYmlzIHp1IGFjaHQgTWludXRlbi4gVW50ZXIg4oCeTWVpbmUgQnVjaHVuZ2Vu4oCcIHNlaGVuIFNpZSwgd2FubiBzaWUgZGEgaXN0LiIsamE6InswfeOBq+OCiOOCi+S6iOe0hOOBrueiuuiqjeOCkuW+heOBo+OBpuOBhOOBvuOBme+8iOacgOWkpzjliIbjgbvjganvvInjgILnorroqo3jgZXjgozjgovjgajjgIzkuojntITkuIDopqfjgI3jgavooajnpLrjgZXjgozjgb7jgZnjgIIiLGtvOiJ7MH3snZgg7JiI7JW9IO2ZleyduOydhCDquLDri6TrpqzripQg7KSR7J6F64uI64ukLiDstZzrjIAgOOu2hCDsoJXrj4Qg6rG466a964uI64ukLiDtmZXsnbjrkJjrqbQg4oCY64K0IOyYiOyVveKAmeyXkCDtkZzsi5zrkKnri4jri6QuIixmcjoiRW4gYXR0ZW50ZSBkZSBsYSBjb25maXJtYXRpb24gZGUgezB9IOKAlCBjZWxhIHByZW5kIGp1c3F14oCZw6AgaHVpdCBtaW51dGVzLiDCqyBNZXMgcsOpc2VydmF0aW9ucyDCuyBpbmRpcXVlIHF1YW5kIGPigJllc3QgZmFpdC4iLGVzOiJFc3BlcmFuZG8gYSBxdWUgezB9IGNvbmZpcm1lIGVzdGEgcmVzZXJ2YTsgdGFyZGEgaGFzdGEgb2NobyBtaW51dG9zLiBFbiDCq01pcyByZXNlcnZhc8K7IHZlcsOhIGN1w6FuZG8gc2UgY29uZmlybWEuIn0sIkFkZC1vbnMiOntkZToiRXh0cmFzIixqYToi44Kq44OX44K344On44OzIixrbzoi7LaU6rCAIOyEnOu5hOyKpCIsZnI6Ik9wdGlvbnMiLGVzOiJFeHRyYXMifSwiQ2FuY2VsIHswfSI6e2RlOiJ7MH0gc3Rvcm5pZXJlbiIsamE6InswfeOCkuOCreODo+ODs+OCu+ODqyIsa286InswfSDst6jshowiLGZyOiJBbm51bGVyIHswfSIsZXM6IkNhbmNlbGFyIHswfSJ9LCJUZXN0IGJvb2tpbmcgcGFpZCBhbmQgYm9va2VkIjp7ZGU6IlRlc3RidWNodW5nIGJlemFobHQgdW5kIGdlYnVjaHQiLGphOiLjg4bjgrnjg4jkuojntITvvJrmlK/miZXjgYTjg7vkuojntITlrozkuoYiLGtvOiLthYzsiqTtirgg7JiI7JW9IOqysOygnCDrsI8g7JiI7JW9IOyZhOujjCIsZnI6IlLDqXNlcnZhdGlvbiB0ZXN0IHBhecOpZSBldCByw6lzZXJ2w6llIixlczoiUmVzZXJ2YSBkZSBwcnVlYmEgcGFnYWRhIHkgcmVzZXJ2YWRhIn0sIlBhaWQgYW5kIGJvb2tlZCB3aXRoIHswfSI6e2RlOiJCZXphaGx0IHVuZCBiZWkgezB9IGdlYnVjaHQiLGphOiLmlK/miZXjgYTlrozkuobjg7t7MH3jgafkuojntITmuIjjgb8iLGtvOiLqsrDsoJwg7JmE66OMLCB7MH3sl5Ag7JiI7JW965CoIixmcjoiUGF5w6kgZXQgcsOpc2VydsOpIGNoZXogezB9IixlczoiUGFnYWRvIHkgcmVzZXJ2YWRvIGNvbiB7MH0ifSwiUGFpZCDigJQgd2FpdGluZyBmb3IgezB9IHRvIGNvbmZpcm0iOntkZToiQmV6YWhsdCDigJQgd2FydGV0IGF1ZiBCZXN0w6R0aWd1bmcgZHVyY2ggezB9IixqYToi5pSv5omV44GE5a6M5LqGIOKAlCB7MH3jga7norroqo3lvoXjgaEiLGtvOiLqsrDsoJwg7JmE66OMIOKAlCB7MH0g7ZmV7J24IOuMgOq4sCDspJEiLGZyOiJQYXnDqSDigJQgZW4gYXR0ZW50ZSBkZSBsYSBjb25maXJtYXRpb24gZGUgezB9IixlczoiUGFnYWRvIOKAlCBlc3BlcmFuZG8gbGEgY29uZmlybWFjacOzbiBkZSB7MH0ifSwiVGVzdCBib29raW5nIG1hZGUiOntkZToiVGVzdGJ1Y2h1bmcgZXJzdGVsbHQiLGphOiLjg4bjgrnjg4jkuojntITlrozkuoYiLGtvOiLthYzsiqTtirgg7JiI7JW9IOyZhOujjCIsZnI6IlLDqXNlcnZhdGlvbiB0ZXN0IGVmZmVjdHXDqWUiLGVzOiJSZXNlcnZhIGRlIHBydWViYSBoZWNoYSJ9LCJTZW50IHRvIHswfSI6e2RlOiJBbiB7MH0gZ2VzZW5kZXQiLGphOiJ7MH3jgavpgIHkv6HjgZfjgb7jgZfjgZ8iLGtvOiJ7MH3sl5Ag7KCE7Iah65CoIixmcjoiRW52b3nDqSDDoCB7MH0iLGVzOiJFbnZpYWRvIGEgezB9In0sIkJvb2tlZCB3aXRoIHswfSI6e2RlOiJCZWkgezB9IGdlYnVjaHQiLGphOiJ7MH3jgafkuojntITlrozkuoYiLGtvOiJ7MH3sl5Ag7JiI7JW9IOyZhOujjCIsZnI6IlLDqXNlcnbDqSBjaGV6IHswfSIsZXM6IlJlc2VydmFkbyBjb24gezB9In0sIkRlbW8gYm9va2luZyBtYWRlIjp7ZGU6IkRlbW9idWNodW5nIGVyc3RlbGx0IixqYToi44OH44Oi5LqI57SE5a6M5LqGIixrbzoi642w66qoIOyYiOyVvSDsmYTro4wiLGZyOiJSw6lzZXJ2YXRpb24gZMOpbW8gZWZmZWN0dcOpZSIsZXM6IlJlc2VydmEgZGUgZGVtb3N0cmFjacOzbiBoZWNoYSJ9LCJSb29tcyBoZWxkIjp7ZGU6IlppbW1lciByZXNlcnZpZXJ0IixqYToi5a6i5a6k44KS56K65L+d44GX44G+44GX44GfIixrbzoi6rCd7IukIO2ZleuztOuQqCIsZnI6IkNoYW1icmVzIHJldGVudWVzIixlczoiSGFiaXRhY2lvbmVzIHJldGVuaWRhcyJ9LCJSb29tIGhlbGQiOntkZToiWmltbWVyIHJlc2VydmllcnQiLGphOiLlrqLlrqTjgpLnorrkv53jgZfjgb7jgZfjgZ8iLGtvOiLqsJ3si6Qg7ZmV67O065CoIixmcjoiQ2hhbWJyZSByZXRlbnVlIixlczoiSGFiaXRhY2nDs24gcmV0ZW5pZGEifSwiV2FpdGluZyBmb3IgY29uZmlybWF0aW9uIjp7ZGU6IldhcnRlbiBhdWYgQmVzdMOkdGlndW5nIixqYToi56K66KqN5b6F44GhIixrbzoi7ZmV7J24IOuMgOq4sCDspJEiLGZyOiJFbiBhdHRlbnRlIGRlIGNvbmZpcm1hdGlvbiIsZXM6IkVzcGVyYW5kbyBjb25maXJtYWNpw7NuIn0sIkRlbW8gYm9va2luZyI6e2RlOiJEZW1vYnVjaHVuZyIsamE6IuODh+ODouS6iOe0hCIsa286IuuNsOuqqCDsmIjslb0iLGZyOiJSw6lzZXJ2YXRpb24gZMOpbW8iLGVzOiJSZXNlcnZhIGRlIGRlbW9zdHJhY2nDs24ifSwiVGVzdCBib29raW5nIGNvbmZpcm1lZCI6e2RlOiJUZXN0YnVjaHVuZyBiZXN0w6R0aWd0IixqYToi44OG44K544OI5LqI57SE56K65a6aIixrbzoi7YWM7Iqk7Yq4IOyYiOyVvSDtmZXsoJUiLGZyOiJSw6lzZXJ2YXRpb24gdGVzdCBjb25maXJtw6llIixlczoiUmVzZXJ2YSBkZSBwcnVlYmEgY29uZmlybWFkYSJ9LCJCb29raW5nIGNvbmZpcm1lZCI6e2RlOiJCdWNodW5nIGJlc3TDpHRpZ3QiLGphOiLkuojntITnorrlrpoiLGtvOiLsmIjslb0g7ZmV7KCVIixmcjoiUsOpc2VydmF0aW9uIGNvbmZpcm3DqWUiLGVzOiJSZXNlcnZhIGNvbmZpcm1hZGEifSwiVGhpcyBib29raW5nIG5vIGxvbmdlciBob2xkcyBhIHJvb20uIjp7ZGU6IkRpZXNlIEJ1Y2h1bmcgYmVsZWd0IGtlaW4gWmltbWVyIG1laHIuIixqYToi44GT44Gu5LqI57SE44Gn44Gv5a6i5a6k44GM56K65L+d44GV44KM44Gm44GE44G+44Gb44KT44CCIixrbzoi7J20IOyYiOyVveydgCDrjZQg7J207IOBIOqwneyLpOydhCDtmZXrs7TtlZjsp4Ag7JWK7Iq164uI64ukLiIsZnI6IkNldHRlIHLDqXNlcnZhdGlvbiBuZSByZXRpZW50IHBsdXMgZGUgY2hhbWJyZS4iLGVzOiJFc3RhIHJlc2VydmEgeWEgbm8gcmV0aWVuZSBuaW5ndW5hIGhhYml0YWNpw7NuLiJ9LCJ7MH0gb2YgezF9IHN0YXlzIGJvb2tlZCwgb25lIGNvZGUgZWFjaCI6e2RlOiJ7MH0gdm9uIHsxfSBBdWZlbnRoYWx0ZW4gZ2VidWNodCwgamUgZWluIENvZGUiLGphOiJ7MX3ku7bkuK17MH3ku7bjga7mu57lnKjjgpLkuojntITvvIjjgZ3jgozjgZ7jgoznorroqo3nlarlj7fjgYLjgorvvIkiLGtvOiLsiJnrsJUgezF96rG0IOykkSB7MH3qsbQg7JiI7JW9IOyZhOujjCwg6rG067OEIO2ZleyduCDrsojtmLgiLGZyOiJ7MH0gc8Opam91cnMgc3VyIHsxfSByw6lzZXJ2w6lzLCB1biBjb2RlIGNoYWN1biIsZXM6InswfSBkZSB7MX0gZXN0YW5jaWFzIHJlc2VydmFkYXMsIHVuIGPDs2RpZ28gY2FkYSB1bmEifSwiLCB7MH0gYmVpbmcgY29uZmlybWVkIjp7ZGU6IiwgezB9IGluIEJlc3TDpHRpZ3VuZyIsamE6IuOAgXswfeS7tueiuuiqjeS4rSIsa286IiwgezB96rG0IO2ZleyduCDspJEiLGZyOiIsIHswfSBlbiBjb3VycyBkZSBjb25maXJtYXRpb24iLGVzOiIsIHswfSBlbiBjb25maXJtYWNpw7NuIn0sIiAtIG9uZSBjb3VsZCBub3QgYmUsIGJlbG93Ijp7ZGU6IiDigJMgZWluZXIga29ubnRlIG5pY2h0IGdlYnVjaHQgd2VyZGVuLCBzaWVoZSB1bnRlbiIsamE6IuOAgjHku7bjga/kuojntITjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/vvIjkuIvoqJjlj4LnhafvvIkiLGtvOiIg4oCUIDHqsbTsnYAg7JiI7JW97ZWY7KeAIOuqu+2WiOyKteuLiOuLpCjslYTrnpgg7LC46rOgKSIsZnI6IiDigJQgdW4gbuKAmWEgcGFzIHB1IGzigJnDqnRyZSwgdm9pciBjaS1kZXNzb3VzIixlczoiOyB1bmEgbm8gc2UgcHVkbywgdmVyIGFiYWpvIn0sIiAtIHswfSBjb3VsZCBub3QgYmUsIGJlbG93Ijp7ZGU6IiDigJMgezB9IGtvbm50ZW4gbmljaHQgZ2VidWNodCB3ZXJkZW4sIHNpZWhlIHVudGVuIixqYToi44CCezB95Lu244Gv5LqI57SE44Gn44GN44G+44Gb44KT44Gn44GX44Gf77yI5LiL6KiY5Y+C54Wn77yJIixrbzoiIOKAlCB7MH3qsbTsnYAg7JiI7JW97ZWY7KeAIOuqu+2WiOyKteuLiOuLpCjslYTrnpgg7LC46rOgKSIsZnI6IiDigJQgezB9IG7igJlvbnQgcGFzIHB1IGzigJnDqnRyZSwgdm9pciBjaS1kZXNzb3VzIixlczoiOyB7MH0gbm8gc2UgcHVkaWVyb24sIHZlciBhYmFqbyJ9LCIuIjp7ZGU6Ii4iLGphOiLjgIIiLGtvOiIuIixmcjoiLiIsZXM6Ii4ifSwiezB9IGNvbmZpcm1hdGlvbiBjb2Rlcywgb25lIGZvciBlYWNoIGhvdGVsLiI6e2RlOiJ7MH0gQmVzdMOkdGlndW5nc2NvZGVzLCBlaW5lciBwcm8gSG90ZWwuIixqYToi56K66KqN55Wq5Y+344GvezB95Lu244CB44Ob44OG44Or44GU44Go44GrMeS7tuOBp+OBmeOAgiIsa286Iu2ZleyduCDrsojtmLggezB96rCcLCDtmLjthZTrp4jri6QgMeqwnOyeheuLiOuLpC4iLGZyOiJ7MH0gY29kZXMgZGUgY29uZmlybWF0aW9uLCB1biBwYXIgaMO0dGVsLiIsZXM6InswfSBjw7NkaWdvcyBkZSBjb25maXJtYWNpw7NuLCB1bm8gcG9yIGhvdGVsLiJ9LCJLZWVwIHRoaXMgY29kZTogd2l0aCBpdCBhbmQgeW91ciBlbWFpbCwgeW91IGNhbiBmaW5kIHRoaXMgYm9va2luZyBhZ2FpbiBmcm9tIGFueSBjaGF0LiI6e2RlOiJCZXdhaHJlbiBTaWUgZGllc2VuIENvZGUgYXVmOiBNaXQgaWhtIHVuZCBJaHJlciBFLU1haWwgZmluZGVuIFNpZSBkaWVzZSBCdWNodW5nIGluIGplZGVtIENoYXQgd2llZGVyLiIsamE6IuOBk+OBrueiuuiqjeeVquWPt+OCkuS/neeuoeOBl+OBpuOBj+OBoOOBleOBhOOAgueVquWPt+OBqOODoeODvOODq+OCouODieODrOOCueOBjOOBguOCjOOBsOOAgeOBqeOBruODgeODo+ODg+ODiOOBi+OCieOBp+OCguOBk+OBruS6iOe0hOOCkuaOouOBm+OBvuOBmeOAgiIsa286IuydtCDtmZXsnbgg67KI7Zi466W8IOuztOq0gO2VmOyEuOyalC4g67KI7Zi47JmAIOydtOuplOydvOunjCDsnojsnLzrqbQg7Ja065akIOyxhO2MheyXkOyEnOuToCDsnbQg7JiI7JW97J2EIOuLpOyLnCDssL7snYQg7IiYIOyeiOyKteuLiOuLpC4iLGZyOiJHYXJkZXogY2UgY29kZSA6IGF2ZWMgbHVpIGV0IHZvdHJlIGUtbWFpbCwgdm91cyByZXRyb3V2ZXJleiBjZXR0ZSByw6lzZXJ2YXRpb24gZGVwdWlzIG7igJlpbXBvcnRlIHF1ZWxsZSBjb252ZXJzYXRpb24uIixlczoiR3VhcmRlIGVzdGUgY8OzZGlnbzogY29uIMOpbCB5IHN1IGNvcnJlbyBlbGVjdHLDs25pY28gcHVlZGUgdm9sdmVyIGEgZW5jb250cmFyIGVzdGEgcmVzZXJ2YSBkZXNkZSBjdWFscXVpZXIgY2hhdC4ifSwiezB9IGJvb2tpbmdzLCBvbmUgZm9yIGVhY2ggc3RheS4gRWFjaCBob3RlbCBrZWVwcyBpdHMgb3duIG5pZ2h0cyB1bmRlciBpdHMgb3duIGNvZGUsIGFuZCBlYWNoIGlzIGNoYW5nZWQgb3IgY2FuY2VsbGVkIG9uIGl0cyBvd24uIjp7ZGU6InswfSBCdWNodW5nZW4sIGVpbmUgcHJvIEF1ZmVudGhhbHQuIEplZGVzIEhvdGVsIGbDvGhydCBzZWluZSBOw6RjaHRlIHVudGVyIGVpbmVtIGVpZ2VuZW4gQ29kZSwgdW5kIGplZGUgd2lyZCBlaW56ZWxuIGdlw6RuZGVydCBvZGVyIHN0b3JuaWVydC4iLGphOiLkuojntITjga97MH3ku7bjgafjgIHmu57lnKjjgZTjgajjgasx5Lu244Gn44GZ44CC5ZCE44Ob44OG44Or44GM44Gd44KM44Ge44KM44Gu56K66KqN55Wq5Y+344Gn566h55CG44GX44CB5aSJ5pu044KE44Kt44Oj44Oz44K744Or44KC5YCL5Yil44Gr6KGM44GE44G+44GZ44CCIixrbzoi7JiI7JW9IHswfeqxtCwg7IiZ67CV66eI64ukIDHqsbTsnoXri4jri6QuIO2YuO2FlOuniOuLpCDqsIHsnpDsnZgg7ZmV7J24IOuyiO2YuOuhnCDqtIDrpqzrkJjrqbAsIOuzgOqyveydtOuCmCDst6jshozrj4Qg6rCB6rCBIOuUsOuhnCDtlanri4jri6QuIixmcjoiezB9IHLDqXNlcnZhdGlvbnMsIHVuZSBwYXIgc8Opam91ci4gQ2hhcXVlIGjDtHRlbCBnYXJkZSBzZXMgbnVpdHMgc291cyBzb24gcHJvcHJlIGNvZGUsIGV0IGNoYWN1bmUgc2UgbW9kaWZpZSBvdSBz4oCZYW5udWxlIHPDqXBhcsOpbWVudC4iLGVzOiJ7MH0gcmVzZXJ2YXMsIHVuYSBwb3IgZXN0YW5jaWEuIENhZGEgaG90ZWwgZ3VhcmRhIHN1cyBub2NoZXMgY29uIHN1IHByb3BpbyBjw7NkaWdvLCB5IGNhZGEgdW5hIHNlIGNhbWJpYSBvIGNhbmNlbGEgcG9yIHNlcGFyYWRvLiJ9LCJ7MH0gYm9va2luZ3MsIG9uZSBmb3IgZWFjaCBzdGF5LiBFYWNoIGhvdGVsIGtlZXBzIGl0cyBvd24gbmlnaHRzIHVuZGVyIGl0cyBvd24gY29kZSwgYW5kIGVhY2ggaXMgY2FuY2VsbGVkIG9uIGl0cyBvd24uIjp7ZGU6InswfSBCdWNodW5nZW4sIGVpbmUgcHJvIEF1ZmVudGhhbHQuIEplZGVzIEhvdGVsIGbDvGhydCBzZWluZSBOw6RjaHRlIHVudGVyIGVpbmVtIGVpZ2VuZW4gQ29kZSwgdW5kIGplZGUgd2lyZCBlaW56ZWxuIHN0b3JuaWVydC4iLGphOiLkuojntITjga97MH3ku7bjgafjgIHmu57lnKjjgZTjgajjgasx5Lu244Gn44GZ44CC5ZCE44Ob44OG44Or44GM44Gd44KM44Ge44KM44Gu56K66KqN55Wq5Y+344Gn566h55CG44GX44CB44Kt44Oj44Oz44K744Or44KC5YCL5Yil44Gr6KGM44GE44G+44GZ44CCIixrbzoi7JiI7JW9IHswfeqxtCwg7IiZ67CV66eI64ukIDHqsbTsnoXri4jri6QuIO2YuO2FlOuniOuLpCDqsIHsnpDsnZgg7ZmV7J24IOuyiO2YuOuhnCDqtIDrpqzrkJjrqbAsIOy3qOyGjOuPhCDqsIHqsIEg65Sw66GcIO2VqeuLiOuLpC4iLGZyOiJ7MH0gcsOpc2VydmF0aW9ucywgdW5lIHBhciBzw6lqb3VyLiBDaGFxdWUgaMO0dGVsIGdhcmRlIHNlcyBudWl0cyBzb3VzIHNvbiBwcm9wcmUgY29kZSwgZXQgY2hhY3VuZSBz4oCZYW5udWxlIHPDqXBhcsOpbWVudC4iLGVzOiJ7MH0gcmVzZXJ2YXMsIHVuYSBwb3IgZXN0YW5jaWEuIENhZGEgaG90ZWwgZ3VhcmRhIHN1cyBub2NoZXMgY29uIHN1IHByb3BpbyBjw7NkaWdvLCB5IGNhZGEgdW5hIHNlIGNhbmNlbGEgcG9yIHNlcGFyYWRvLiJ9LCJQYWlkIGluIGFkdmFuY2U6IHswfS4iOntkZToiVm9yYXVzYmV6YWhsdDogezB9LiIsamE6IuS6i+WJjeaJleOBhOa4iOOBv++8mnswfeOAgiIsa286IuyEoOqysOygnCDsmYTro4w6IHswfS4iLGZyOiJQYXnDqSBk4oCZYXZhbmNlIDogezB9LiIsZXM6IlBhZ2FkbyBwb3IgYWRlbGFudGFkbzogezB9LiJ9LCJQYWlkIGluIHRlc3QgbW9kZSAtIG5vIHJlYWwgbW9uZXkgbW92ZWQsIGFuZCB0aGUgYm9va2luZyBpcyBpbiBhIHNpbXVsYXRlZCBzeXN0ZW0uIjp7ZGU6IkltIFRlc3Rtb2R1cyBiZXphaGx0IOKAkyBlcyBpc3Qga2VpbiBlY2h0ZXMgR2VsZCBnZWZsb3NzZW4sIHVuZCBkaWUgQnVjaHVuZyBsaWVndCBpbiBlaW5lbSBzaW11bGllcnRlbiBTeXN0ZW0uIixqYToi44OG44K544OI44Oi44O844OJ44Gn44Gu5pSv5omV44GE44Gn44GZ44CC5a6f6Zqb44Gu44GK6YeR44Gv5YuV44GE44Gm44GK44KJ44Ga44CB5LqI57SE44Gv5qih5pOs44K344K544OG44Og5LiK44Gr44GC44KK44G+44GZ44CCIixrbzoi7YWM7Iqk7Yq4IOuqqOuTnCDqsrDsoJzsnoXri4jri6QuIOyLpOygnCDrj4jsnYAg7Jik6rCA7KeAIOyViuyVmOqzoCDsmIjslb3snYAg66qo7J2YIOyLnOyKpO2FnOyXkCDsnojsirXri4jri6QuIixmcjoiUGF5w6kgZW4gbW9kZSB0ZXN0IOKAlCBhdWN1biBhcmdlbnQgcsOpZWwgbuKAmWEgw6l0w6kgZMOpYml0w6ksIGV0IGxhIHLDqXNlcnZhdGlvbiBlc3QgZGFucyB1biBzeXN0w6htZSBzaW11bMOpLiIsZXM6IlBhZ2FkbyBlbiBtb2RvIGRlIHBydWViYTogbm8gc2UgbW92acOzIGRpbmVybyByZWFsLCB5IGxhIHJlc2VydmEgZXN0w6EgZW4gdW4gc2lzdGVtYSBzaW11bGFkby4ifSwiTm90aGluZyBtb3JlIGlzIHBhaWQgYXQgdGhlIGhvdGVsIGZvciB0aGUgcm9vbS4gSWYgezB9IGRvZXMgbm90IGNvbmZpcm0gaXQsIGFsbCBvZiBpdCBnb2VzIGJhY2sgdG8geW91ciBjYXJkLiI6e2RlOiJJbSBIb3RlbCBpc3QgZsO8ciBkYXMgWmltbWVyIG5pY2h0cyBtZWhyIHp1IHphaGxlbi4gQmVzdMOkdGlndCB7MH0gbmljaHQsIGdlaHQgYWxsZXMgYXVmIElocmUgS2FydGUgenVyw7xjay4iLGphOiLjg5vjg4bjg6vjgaflrqLlrqTmlpnph5HjgpLov73liqDjgafmlK/miZXjgYblv4XopoHjga/jgYLjgorjgb7jgZvjgpPjgIJ7MH3jgYznorrlrprjgZfjgarjgYvjgaPjgZ/loLTlkIjjga/lhajpoY3jgqvjg7zjg4njgavov5Tph5HjgZXjgozjgb7jgZnjgIIiLGtvOiLtmLjthZTsl5DshJwg6rCd7IukIOyalOq4iOydhCDstpTqsIDroZwg64K07KeAIOyViuyKteuLiOuLpC4gezB97J20KOqwgCkg7ZmV7KCV7ZWY7KeAIOyViuycvOuptCDsoITslaEg7Lm065Oc66GcIO2ZmOu2iOuQqeuLiOuLpC4iLGZyOiJSaWVuIGRlIHBsdXMgbuKAmWVzdCDDoCBwYXllciDDoCBs4oCZaMO0dGVsIHBvdXIgbGEgY2hhbWJyZS4gU2kgezB9IG5lIGxhIGNvbmZpcm1lIHBhcywgdG91dCBlc3QgcmVtYm91cnPDqSBzdXIgdm90cmUgY2FydGUuIixlczoiTm8gaGF5IHF1ZSBwYWdhciBuYWRhIG3DoXMgZW4gZWwgaG90ZWwgcG9yIGxhIGhhYml0YWNpw7NuLiBTaSB7MH0gbm8gbGEgY29uZmlybWEsIHNlIGxlIGRldnVlbHZlIHRvZG8gYSBsYSB0YXJqZXRhLiJ9LCJBIHRlc3QgYm9va2luZy4iOntkZToiRWluZSBUZXN0YnVjaHVuZy4iLGphOiLjg4bjgrnjg4jkuojntITjgafjgZnjgIIiLGtvOiLthYzsiqTtirgg7JiI7JW97J6F64uI64ukLiIsZnI6IlVuZSByw6lzZXJ2YXRpb24gdGVzdC4iLGVzOiJVbmEgcmVzZXJ2YSBkZSBwcnVlYmEuIn0sIk1hZGUgaW4gYSBzaW11bGF0ZWQgY29weSBvZiB7MH0ncyBzeXN0ZW06IG5vdCBhIHsxfSByZXNlcnZhdGlvbiwgbm8gcm9vbSBpcyBoZWxkLCBhbmQgbm90aGluZyBpcyBwYWlkLiI6e2RlOiJJbiBlaW5lciBzaW11bGllcnRlbiBLb3BpZSBkZXMgU3lzdGVtcyB2b24gezB9IGVyc3RlbGx0OiBrZWluZSBSZXNlcnZpZXJ1bmcgYmVpIHsxfSwga2VpbiBaaW1tZXIgcmVzZXJ2aWVydCwgbmljaHRzIGJlemFobHQuIixqYToiezB944Gu44K344K544OG44Og44Gu5qih5pOs44Kz44OU44O844Gn5L2c5oiQ44GV44KM44Gf44KC44Gu44Gn44CBezF944Gu5a6f6Zqb44Gu5LqI57SE44Gn44Gv44GC44KK44G+44Gb44KT44CC5a6i5a6k44Gv56K65L+d44GV44KM44Ga44CB5pSv5omV44GE44KC44GC44KK44G+44Gb44KT44CCIixrbzoiezB9IOyLnOyKpO2FnOydmCDrqqjsnZgg7IKs67O47JeQ7IScIOunjOuTpOyWtOyhjOyKteuLiOuLpC4gezF97J2YIOyLpOygnCDsmIjslb3snbQg7JWE64uI66mwLCDqsJ3si6Trj4Qg7ZmV67O065CY7KeAIOyViuqzoCDqsrDsoJzrj4Qg7JeG7Iq164uI64ukLiIsZnI6IkZhaXRlIGRhbnMgdW5lIGNvcGllIHNpbXVsw6llIGR1IHN5c3TDqG1lIGRlIHswfSA6IHBhcyB1bmUgcsOpc2VydmF0aW9uIHsxfSwgYXVjdW5lIGNoYW1icmUgcmV0ZW51ZSwgcmllbiBkZSBwYXnDqS4iLGVzOiJIZWNoYSBlbiB1bmEgY29waWEgc2ltdWxhZGEgZGVsIHNpc3RlbWEgZGUgezB9OiBubyBlcyB1bmEgcmVzZXJ2YSBkZSB7MX0sIG5vIHNlIHJldGllbmUgbmluZ3VuYSBoYWJpdGFjacOzbiB5IG5vIHNlIHBhZ2EgbmFkYS4ifSwiTm90aGluZyBoYXMgYmVlbiBjaGFyZ2VkLiI6e2RlOiJFcyB3dXJkZSBuaWNodHMgYmVyZWNobmV0LiIsamE6Iuiri+axguOBr+OBguOCiuOBvuOBm+OCk+OAgiIsa286IuqysOygnOuQmOyngCDslYrslZjsirXri4jri6QuIixmcjoiUmllbiBu4oCZYSDDqXTDqSBmYWN0dXLDqS4iLGVzOiJObyBzZSBoYSBjb2JyYWRvIG5hZGEuIn0sIkVhY2ggaXMgezB9J3Mgb3duIHJlc2VydmF0aW9uLCBwYWlkIGF0IHRoZSBob3RlbC4gQSBjYXJkIGlzIHByZXNlbnRlZCBhdCBjaGVjay1pbiwgbm90IGhlcmUuIjp7ZGU6IkplZGUgaXN0IGVpbmUgUmVzZXJ2aWVydW5nIGRpcmVrdCBiZWkgezB9LCBiZXphaGx0IGltIEhvdGVsLiBFaW5lIEthcnRlIHdpcmQgYmVpIGRlciBBbnJlaXNlIHZvcmdlbGVndCwgbmljaHQgaGllci4iLGphOiLjgYTjgZrjgozjgoJ7MH3jga7mraPlvI/jgarkuojntITjgafjgIHnj77lnLDmiZXjgYTjgafjgZnjgILjgqvjg7zjg4njga/jg4Hjgqfjg4Pjgq/jgqTjg7PmmYLjgavmj5DnpLrjgZfjgIHjgZPjgZPjgafjga/kuI3opoHjgafjgZnjgIIiLGtvOiLrqqjrkZAgezB97J2YIOygleyLnSDsmIjslb3snbTrqbAg7ZiE7J6lIOqysOygnOyeheuLiOuLpC4g7Lm065Oc64qUIOyXrOq4sOyEnOqwgCDslYTri4jrnbwg7LK07YGs7J24IOyLnCDsoJzsi5ztlanri4jri6QuIixmcjoiQ2hhY3VuZSBlc3QgdW5lIHLDqXNlcnZhdGlvbiBwcm9wcmUgw6AgezB9LCBwYXlhYmxlIMOgIGzigJlow7R0ZWwuIFVuZSBjYXJ0ZSBlc3QgcHLDqXNlbnTDqWUgw6AgbOKAmWFycml2w6llLCBwYXMgaWNpLiIsZXM6IkNhZGEgdW5hIGVzIHVuYSByZXNlcnZhIHByb3BpYSBkZSB7MH0sIGNvbiBwYWdvIGVuIGVsIGhvdGVsLiBMYSB0YXJqZXRhIHNlIHByZXNlbnRhIGFsIGxsZWdhciwgbm8gYXF1w60uIn0sIlRoaXMgaXMgezB9J3Mgb3duIHJlc2VydmF0aW9uLCBwYWlkIGF0IHRoZSBob3RlbC4gQSBjYXJkIGlzIHByZXNlbnRlZCBhdCBjaGVjay1pbiwgbm90IGhlcmUuIjp7ZGU6IkRpZXMgaXN0IGVpbmUgUmVzZXJ2aWVydW5nIGRpcmVrdCBiZWkgezB9LCBiZXphaGx0IGltIEhvdGVsLiBFaW5lIEthcnRlIHdpcmQgYmVpIGRlciBBbnJlaXNlIHZvcmdlbGVndCwgbmljaHQgaGllci4iLGphOiLjgZPjgozjga97MH3jga7mraPlvI/jgarkuojntITjgafjgIHnj77lnLDmiZXjgYTjgafjgZnjgILjgqvjg7zjg4njga/jg4Hjgqfjg4Pjgq/jgqTjg7PmmYLjgavmj5DnpLrjgZfjgIHjgZPjgZPjgafjga/kuI3opoHjgafjgZnjgIIiLGtvOiJ7MH3snZgg7KCV7IudIOyYiOyVveydtOupsCDtmITsnqUg6rKw7KCc7J6F64uI64ukLiDsubTrk5zripQg7Jes6riw7ISc6rCAIOyVhOuLiOudvCDssrTtgazsnbgg7IucIOygnOyLnO2VqeuLiOuLpC4iLGZyOiJDZWNpIGVzdCB1bmUgcsOpc2VydmF0aW9uIHByb3ByZSDDoCB7MH0sIHBheWFibGUgw6AgbOKAmWjDtHRlbC4gVW5lIGNhcnRlIGVzdCBwcsOpc2VudMOpZSDDoCBs4oCZYXJyaXbDqWUsIHBhcyBpY2kuIixlczoiRXMgdW5hIHJlc2VydmEgcHJvcGlhIGRlIHswfSwgY29uIHBhZ28gZW4gZWwgaG90ZWwuIExhIHRhcmpldGEgc2UgcHJlc2VudGEgYWwgbGxlZ2FyLCBubyBhcXXDrS4ifSwiVGhpcyBpcyBhIGRlbW9uc3RyYXRpb24gYm9va2luZzogezB9IGhhcyBub3QgcmVjZWl2ZWQgaXQsIGFuZCBubyByb29tIGlzIGhlbGQgYXQgdGhlIGhvdGVsLnsxfSI6e2RlOiJEaWVzIGlzdCBlaW5lIERlbW9idWNodW5nOiB7MH0gaGF0IHNpZSBuaWNodCBlcmhhbHRlbiwgdW5kIGltIEhvdGVsIGlzdCBrZWluIFppbW1lciByZXNlcnZpZXJ0LnsxfSIsamE6IuOBk+OCjOOBr+ODh+ODouS6iOe0hOOBp+OBmeOAgnswfeOBq+OBr+WxiuOBhOOBpuOBiuOCieOBmuOAgeODm+ODhuODq+OBp+WuouWupOOCgueiuuS/neOBleOCjOOBpuOBhOOBvuOBm+OCk+OAgnsxfSIsa286IuuNsOuqqCDsmIjslb3snoXri4jri6QuIHswfeyXkOuKlCDsoITri6zrkJjsp4Ag7JWK7JWY7Jy866mwIO2YuO2FlOyXkCDqsJ3si6Trj4Qg7ZmV67O065CY7KeAIOyViuyVmOyKteuLiOuLpC57MX0iLGZyOiJDZWNpIGVzdCB1bmUgcsOpc2VydmF0aW9uIGRlIGTDqW1vbnN0cmF0aW9uIDogezB9IG5lIGzigJlhIHBhcyByZcOndWUsIGV0IGF1Y3VuZSBjaGFtYnJlIG7igJllc3QgcmV0ZW51ZSDDoCBs4oCZaMO0dGVsLnsxfSIsZXM6IkVzdGEgZXMgdW5hIHJlc2VydmEgZGUgZGVtb3N0cmFjacOzbjogezB9IG5vIGxhIGhhIHJlY2liaWRvIHkgbm8gc2UgcmV0aWVuZSBuaW5ndW5hIGhhYml0YWNpw7NuIGVuIGVsIGhvdGVsLnsxfSJ9LCJBIGNhcmQgaXMgcHJlc2VudGVkIGF0IGNoZWNrLWluLCBub3QgaGVyZS4iOntkZToiRWluZSBLYXJ0ZSB3aXJkIGJlaSBkZXIgQW5yZWlzZSB2b3JnZWxlZ3QsIG5pY2h0IGhpZXIuIixqYToi44Kr44O844OJ44Gv44OB44Kn44OD44Kv44Kk44Oz5pmC44Gr5o+Q56S644GX44CB44GT44GT44Gn44Gv5LiN6KaB44Gn44GZ44CCIixrbzoi7Lm065Oc64qUIOyXrOq4sOyEnOqwgCDslYTri4jrnbwg7LK07YGs7J24IOyLnCDsoJzsi5ztlanri4jri6QuIixmcjoiVW5lIGNhcnRlIGVzdCBwcsOpc2VudMOpZSDDoCBs4oCZYXJyaXbDqWUsIHBhcyBpY2kuIixlczoiTGEgdGFyamV0YSBzZSBwcmVzZW50YSBhbCBsbGVnYXIsIG5vIGFxdcOtLiJ9LCJBZGQtb25zIGZvciB0aGlzIHN0YXkiOntkZToiRXh0cmFzIGbDvHIgZGllc2VuIEF1ZmVudGhhbHQiLGphOiLjgZPjga7mu57lnKjjga7jgqrjg5fjgrfjg6fjg7MiLGtvOiLsnbQg7IiZ67CV7J2YIOy2lOqwgCDshJzruYTsiqQiLGZyOiJPcHRpb25zIHBvdXIgY2Ugc8Opam91ciIsZXM6IkV4dHJhcyBwYXJhIGVzdGEgZXN0YW5jaWEifSwiVGhpcyByYXRlIGNhbm5vdCBiZSBjYW5jZWxsZWQsIGFuZCBub3RoaW5nIG9mIGl0IGlzIHJlZnVuZGVkLiI6e2RlOiJEaWVzZXIgUHJlaXMgaXN0IG5pY2h0IHN0b3JuaWVyYmFyLCB1bmQgbmljaHRzIGRhdm9uIHdpcmQgZXJzdGF0dGV0LiIsamE6IuOBk+OBruaWmemHkeOBr+OCreODo+ODs+OCu+ODq+OBp+OBjeOBmuOAgei/lOmHkeOCguOBguOCiuOBvuOBm+OCk+OAgiIsa286IuydtCDsmpTquIjsnYAg7Leo7IaM7ZWgIOyImCDsl4bsnLzrqbAg7ZmY67aI65CY7KeAIOyViuyKteuLiOuLpC4iLGZyOiJDZSB0YXJpZiBu4oCZZXN0IHBhcyBhbm51bGFibGUsIGV0IHJpZW4gbuKAmWVuIGVzdCByZW1ib3Vyc8OpLiIsZXM6IkVzdGEgdGFyaWZhIG5vIHNlIHB1ZWRlIGNhbmNlbGFyIHkgbm8gc2UgcmVlbWJvbHNhIG5hZGEuIn0sIkNhbmNlbCB0aGlzIGJvb2tpbmciOntkZToiRGllc2UgQnVjaHVuZyBzdG9ybmllcmVuIixqYToi44GT44Gu5LqI57SE44KS44Kt44Oj44Oz44K744OrIixrbzoi7J20IOyYiOyVvSDst6jshowiLGZyOiJBbm51bGVyIGNldHRlIHLDqXNlcnZhdGlvbiIsZXM6IkNhbmNlbGFyIGVzdGEgcmVzZXJ2YSJ9LCJNb3JlIHRoYW4gb25lIGhvdGVsIGFuc3dlcnMgdG8g4oCcezB94oCdOiI6e2RlOiJNZWhyZXJlIEhvdGVscyBwYXNzZW4genUg4oCeezB94oCcOiIsamE6IuOAjHswfeOAjeOBq+ipsuW9k+OBmeOCi+ODm+ODhuODq+OBjOikh+aVsOOBguOCiuOBvuOBme+8miIsa286IuKAmHswfeKAmeyXkCDtlbTri7ntlZjripQg7Zi47YWU7J20IOyXrOufrCDqs7PsnoXri4jri6Q6IixmcjoiUGx1c2lldXJzIGjDtHRlbHMgY29ycmVzcG9uZGVudCDDoCDCqyB7MH0gwrsgOiIsZXM6IkhheSBtw6FzIGRlIHVuIGhvdGVsIHF1ZSBjb2luY2lkZSBjb24gwqt7MH3CuzoifSwiTm8gaG90ZWwgaGVyZSBieSB0aGF0IG5hbWUiOntkZToiSGllciBnaWJ0IGVzIGtlaW4gSG90ZWwgbWl0IGRpZXNlbSBOYW1lbiIsamE6IuOBneOBruWQjeWJjeOBruODm+ODhuODq+OBr+OBguOCiuOBvuOBm+OCkyIsa286Iuq3uCDsnbTrpoTsnZgg7Zi47YWU7J20IOyXhuyKteuLiOuLpCIsZnI6IkF1Y3VuIGjDtHRlbCBkZSBjZSBub20gaWNpIixlczoiTm8gaGF5IG5pbmfDum4gaG90ZWwgY29uIGVzZSBub21icmUifSwiVGhhdCBob3RlbCBpcyBub3QgaGVyZSI6e2RlOiJEaWVzZXMgSG90ZWwgaXN0IGhpZXIgbmljaHQgdmVyZsO8Z2JhciIsamE6IuOBneOBruODm+ODhuODq+OBr+imi+OBpOOBi+OCiuOBvuOBm+OCkyIsa286Iuq3uCDtmLjthZTsnYQg7LC+7J2EIOyImCDsl4bsirXri4jri6QiLGZyOiJDZXQgaMO0dGVsIG7igJllc3QgcGFzIGljaSIsZXM6IkVzZSBob3RlbCBubyBlc3TDoSBhcXXDrSJ9LCJUaGF0IHJvb20gaXMgbm90IGF2YWlsYWJsZSI6e2RlOiJEaWVzZXMgWmltbWVyIGlzdCBuaWNodCB2ZXJmw7xnYmFyIixqYToi44Gd44Gu5a6i5a6k44Gv5LqI57SE44Gn44GN44G+44Gb44KTIixrbzoi6re4IOqwneyLpOydgCDsmIjslb3tlaAg7IiYIOyXhuyKteuLiOuLpCIsZnI6IkNldHRlIGNoYW1icmUgbuKAmWVzdCBwYXMgZGlzcG9uaWJsZSIsZXM6IkVzYSBoYWJpdGFjacOzbiBubyBlc3TDoSBkaXNwb25pYmxlIn0sIlRoYXQgYWRkLW9uIGlzIG5vdCBhdmFpbGFibGUiOntkZToiRGllc2VzIEV4dHJhIGlzdCBuaWNodCB2ZXJmw7xnYmFyIixqYToi44Gd44Gu44Kq44OX44K344On44Oz44Gv5LqI57SE44Gn44GN44G+44Gb44KTIixrbzoi6re4IOy2lOqwgCDshJzruYTsiqTripQg7JiI7JW97ZWgIOyImCDsl4bsirXri4jri6QiLGZyOiJDZXR0ZSBvcHRpb24gbuKAmWVzdCBwYXMgZGlzcG9uaWJsZSIsZXM6IkVzZSBleHRyYSBubyBlc3TDoSBkaXNwb25pYmxlIn0sIlRoYXQgZ3JvdXAgaXMgbm90IGluIHRoaXMgbWFya2V0Ijp7ZGU6IkRpZXNlIEdydXBwZSBpc3QgaGllciBuaWNodCB2ZXJ0cmV0ZW4iLGphOiLjgZ3jga7jgrDjg6vjg7zjg5fjga/jgZPjgZPjgavjga/jgYLjgorjgb7jgZvjgpMiLGtvOiLqt7gg6re466O57J2AIOyXrOq4sOyXkCDsl4bsirXri4jri6QiLGZyOiJDZSBncm91cGUgbuKAmWVzdCBwYXMgcHLDqXNlbnQgaWNpIixlczoiRXNlIGdydXBvIG5vIGVzdMOhIGVuIGVzdGUgbWVyY2FkbyJ9LCJUaGlzIHRyaXAgaGFzIGV4cGlyZWQiOntkZToiRGllc2UgUmVpc2UgaXN0IGFiZ2VsYXVmZW4iLGphOiLjgZPjga7ml4XnqIvjga/mnJ/pmZDliIfjgozjgafjgZkiLGtvOiLsnbQg7Jes7ZaJIOydvOygleydgCDrp4zro4zrkJjsl4jsirXri4jri6QiLGZyOiJDZSB2b3lhZ2UgYSBleHBpcsOpIixlczoiRXN0ZSB2aWFqZSBoYSBjYWR1Y2FkbyJ9LCJUaGF0IGJvb2tpbmcgaGFzIGVuZGVkIjp7ZGU6IkRpZXNlIEJ1Y2h1bmcgaXN0IGJlZW5kZXQiLGphOiLjgZ3jga7kuojntITjga/ntYLkuobjgZfjgabjgYTjgb7jgZkiLGtvOiLqt7gg7JiI7JW97J2AIOyiheujjOuQmOyXiOyKteuLiOuLpCIsZnI6IkNldHRlIHLDqXNlcnZhdGlvbiBlc3QgdGVybWluw6llIixlczoiRXNhIHJlc2VydmEgaGEgdGVybWluYWRvIn0sIlRoYXQgbnVtYmVyIGRvZXMgbm90IHdvcmsiOntkZToiRGllc2UgQW56YWhsIGlzdCBuaWNodCBtw7ZnbGljaCIsamE6IuOBneOBruaVsOmHj+OBr+aMh+WumuOBp+OBjeOBvuOBm+OCkyIsa286Iuq3uCDsiJjrn4nsnYAg7ISg7YOd7ZWgIOyImCDsl4bsirXri4jri6QiLGZyOiJDZSBub21icmUgbmUgY29udmllbnQgcGFzIixlczoiRXNhIGNhbnRpZGFkIG5vIGVzIHbDoWxpZGEifSwiVGhhdCBzdGFydCB0aW1lIGlzIG5vdCBvcGVuIjp7ZGU6IkRpZXNlIEFua3VuZnRzemVpdCBpc3QgbmljaHQgdmVyZsO8Z2JhciIsamE6IuOBneOBruWIsOedgOaZguWIu+OBr+mBuOOBueOBvuOBm+OCkyIsa286Iuq3uCDrj4TssKkg7Iuc6rCE7J2AIOyEoO2Dne2VoCDsiJgg7JeG7Iq164uI64ukIixmcjoiQ2V0dGUgaGV1cmUgZOKAmWFycml2w6llIG7igJllc3QgcGFzIGRpc3BvbmlibGUiLGVzOiJFc2EgaG9yYSBkZSBsbGVnYWRhIG5vIGVzdMOhIGRpc3BvbmlibGUifSwiVGhpcyBjb3VsZCBub3QgYmUgYm9va2VkIjp7ZGU6IkRhcyBrb25udGUgbmljaHQgZ2VidWNodCB3ZXJkZW4iLGphOiLkuojntITjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ8iLGtvOiLsmIjslb3tlaAg7IiYIOyXhuyXiOyKteuLiOuLpCIsZnI6IkltcG9zc2libGUgZGUgcsOpc2VydmVyIixlczoiTm8gc2UgcHVkbyByZXNlcnZhciJ9LCJUcmlwcyBhcmUga2VwdCBmb3IgNCBob3VycyBhZnRlciB0aGVpciBsYXN0IGNoYW5nZSwgYW5kIHRoaXMgb25lIGhhcyBnb25lIC0gdHJ5aW5nIGFnYWluIHdpbGwgbm90IGJyaW5nIGl0IGJhY2suIEFzayB0aGUgYXNzaXN0YW50IHRvIHNob3cgeW91ciB0cmlwIGFnYWluLCBvciBzZWFyY2ggYWdhaW4gaGVyZS4iOntkZToiUmVpc2VuIHdlcmRlbiA0IFN0dW5kZW4gbmFjaCBkZXIgbGV0enRlbiDDhG5kZXJ1bmcgYXVmYmV3YWhydCwgdW5kIGRpZXNlIGlzdCBhYmdlbGF1ZmVuIOKAkyBlaW4gbmV1ZXIgVmVyc3VjaCBicmluZ3Qgc2llIG5pY2h0IHp1csO8Y2suIEJpdHRlbiBTaWUgZGVuIEFzc2lzdGVudGVuLCBJaHJlIFJlaXNlIGVybmV1dCBhbnp1emVpZ2VuLCBvZGVyIHN1Y2hlbiBTaWUgaGllciBuZXUuIixqYToi5peF56iL44Gv5pyA5b6M44Gu5aSJ5pu044GL44KJNOaZgumWk+S/neWtmOOBleOCjOOBvuOBmeOBjOOAgeOBk+OBruaXheeoi+OBr+acn+mZkOWIh+OCjOOBp+OBmeOAguWGjeippuihjOOBl+OBpuOCguaIu+OCiuOBvuOBm+OCk+OAguOCouOCt+OCueOCv+ODs+ODiOOBq+aXheeoi+OCkuOCguOBhuS4gOW6puihqOekuuOBl+OBpuOCguOCieOBhuOBi+OAgeOBk+OBk+OBp+aknOe0ouOBl+ebtOOBl+OBpuOBj+OBoOOBleOBhOOAgiIsa286IuyXrO2WiSDsnbzsoJXsnYAg66eI7KeA66eJIOuzgOqyvSDtm4QgNOyLnOqwhCDrj5nslYgg67O06rSA65CY66mwLCDsnbQg7J287KCV7J2AIOunjOujjOuQmOyXiOyKteuLiOuLpC4g64uk7IucIOyLnOuPhO2VtOuPhCDrs7XqtazrkJjsp4Ag7JWK7Iq164uI64ukLiDslrTsi5zsiqTthLTtirjsl5Dqsowg7Jes7ZaJIOydvOygleydhCDri6Tsi5wg67O07JesIOuLrOudvOqzoCDtlZjqsbDrgpgg7Jes6riw7IScIOuLpOyLnCDqsoDsg4ntlZjshLjsmpQuIixmcjoiTGVzIHZveWFnZXMgc29udCBjb25zZXJ2w6lzIDQgaGV1cmVzIGFwcsOocyBsZXVyIGRlcm5pw6hyZSBtb2RpZmljYXRpb24sIGV0IGNlbHVpLWNpIGEgZXhwaXLDqSDigJQgcsOpZXNzYXllciBuZSBsZSBmZXJhIHBhcyByZXZlbmlyLiBEZW1hbmRleiDDoCBs4oCZYXNzaXN0YW50IGRlIHLDqWFmZmljaGVyIHZvdHJlIHZveWFnZSwgb3UgcmVsYW5jZXogdW5lIHJlY2hlcmNoZSBpY2kuIixlczoiTG9zIHZpYWplcyBzZSBndWFyZGFuIDQgaG9yYXMgZGVzcHXDqXMgZGUgc3Ugw7psdGltbyBjYW1iaW8sIHkgZXN0ZSBoYSBjYWR1Y2Fkbzogdm9sdmVyIGEgaW50ZW50YXJsbyBubyBsbyByZWN1cGVyYXLDoS4gUGlkYSBhbCBhc2lzdGVudGUgcXVlIHZ1ZWx2YSBhIG1vc3RyYXIgc3UgdmlhamUgbyBidXNxdWUgZGUgbnVldm8gYXF1w60uIn0sInswfSBpcyBub3QgYSBzdGFydCB0aGlzIHJvb20gdGFrZXMuICI6e2RlOiJ7MH0gaXN0IGbDvHIgZGllc2VzIFppbW1lciBrZWluZSBtw7ZnbGljaGUgQW5rdW5mdHN6ZWl0LiAiLGphOiJ7MH3jga/jgZPjga7lrqLlrqTjga7liLDnnYDmmYLliLvjgajjgZfjgabpgbjjgbnjgb7jgZvjgpPjgIIiLGtvOiJ7MH3snYAo64qUKSDsnbQg6rCd7Iuk7J2YIOuPhOywqSDsi5zqsITsnLzroZwg7ISg7YOd7ZWgIOyImCDsl4bsirXri4jri6QuICIsZnI6InswfSBu4oCZZXN0IHBhcyB1bmUgaGV1cmUgZOKAmWFycml2w6llIHBvc3NpYmxlIHBvdXIgY2V0dGUgY2hhbWJyZS4gIixlczoiezB9IG5vIGVzIHVuYSBob3JhIGRlIGxsZWdhZGEgcG9zaWJsZSBwYXJhIGVzdGEgaGFiaXRhY2nDs24uICJ9LCJJdCBzdGFydHMgYmV0d2VlbiB7MH0gYW5kIHsxfSB0b2RheSwgZm9yIHsyfSBob3VycywgYW5kIGlzIGxlZnQgYnkgezN9LiI6e2RlOiJIZXV0ZSBBbmt1bmZ0IHp3aXNjaGVuIHswfSB1bmQgezF9LCBmw7xyIHsyfSBTdHVuZGVuLCBBYnJlaXNlIGJpcyB7M30uIixqYToi5pys5pelezB944CcezF944Gu6ZaT44Gr5Yiw552A44CBezJ95pmC6ZaT5Yip55So44CBezN944G+44Gn44Gr6YCA5a6k44Gn44GZ44CCIixrbzoi7Jik64qYIHswfX57MX0g7IKs7J207JeQIOuPhOywqe2VtCB7Mn3si5zqsIQg7J207Jqp7ZWY66mwIHszfeq5jOyngCDth7Tsi6Ttlanri4jri6QuIixmcjoiQXJyaXbDqWUgYXVqb3VyZOKAmWh1aSBlbnRyZSB7MH0gZXQgezF9LCBwb3VyIHsyfSBoZXVyZXMsIGTDqXBhcnQgYXZhbnQgezN9LiIsZXM6IkhveSBzZSBsbGVnYSBlbnRyZSBsYXMgezB9IHkgbGFzIHsxfSwgcG9yIHsyfSBob3JhcywgeSBzZSBzYWxlIGFudGVzIGRlIGxhcyB7M30uIn0sInswfSBoYXMgbm8gcm9vbSBieSB0aGF0IG5hbWUgZm9yIHRob3NlIG5pZ2h0cy4gVGhlc2UgYXJlIG9wZW4g4oCUIHRhcCBvbmUgdG8gcmVzZXJ2ZSBpdDoiOntkZToiezB9IGhhdCBmw7xyIGRpZXNlIE7DpGNodGUga2VpbiBaaW1tZXIgbWl0IGRpZXNlbSBOYW1lbi4gRGllc2Ugc2luZCBmcmVpIOKAlCB0aXBwZW4gU2llIGVpbmVzIGFuLCB1bSBlcyB6dSByZXNlcnZpZXJlbjoiLGphOiJ7MH3jgavjga/jgZPjga7ml6XnqIvjgafjgZ3jga7lkI3liY3jga7lrqLlrqTjgYzjgYLjgorjgb7jgZvjgpPjgILku6XkuIvjga/kuojntITjgafjgY3jgb7jgZnjgILjgr/jg4Pjg5fjgZfjgabkuojntITjgZfjgabjgY/jgaDjgZXjgYTvvJoiLGtvOiJ7MH3sl5DripQg7J20IOuCoOynnOyXkCDqt7gg7J2066aE7J2YIOqwneyLpOydtCDsl4bsirXri4jri6QuIOyVhOuemCDqsJ3si6TsnYAg7JiI7JW9IOqwgOuKpe2VqeuLiOuLpC4g64iM65+s7IScIOyYiOyVve2VmOyEuOyalDoiLGZyOiJ7MH0gbuKAmWEgcGFzIGRlIGNoYW1icmUgZGUgY2Ugbm9tIHBvdXIgY2VzIG51aXRzLiBDZWxsZXMtY2kgc29udCBsaWJyZXMg4oCUIHRvdWNoZXotZW4gdW5lIHBvdXIgbGEgcsOpc2VydmVyIDoiLGVzOiJ7MH0gbm8gdGllbmUgdW5hIGhhYml0YWNpw7NuIGNvbiBlc2Ugbm9tYnJlIHBhcmEgZXNhcyBub2NoZXMuIEVzdGFzIGVzdMOhbiBsaWJyZXM7IHRvcXVlIHVuYSBwYXJhIHJlc2VydmFybGE6In0sIlRoaXMgaG90ZWwgaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIFRoZXNlIGFyZSBvcGVuIOKAlCB0YXAgb25lIHRvIHJlc2VydmUgaXQ6Ijp7ZGU6IkRpZXNlcyBIb3RlbCBoYXQgZsO8ciBkaWVzZSBOw6RjaHRlIGtlaW4gWmltbWVyIG1pdCBkaWVzZW0gTmFtZW4uIERpZXNlIHNpbmQgZnJlaSDigJQgdGlwcGVuIFNpZSBlaW5lcyBhbiwgdW0gZXMgenUgcmVzZXJ2aWVyZW46IixqYToi44GT44Gu44Ob44OG44Or44Gr44Gv44GT44Gu5pel56iL44Gn44Gd44Gu5ZCN5YmN44Gu5a6i5a6k44GM44GC44KK44G+44Gb44KT44CC5Lul5LiL44Gv5LqI57SE44Gn44GN44G+44GZ44CC44K/44OD44OX44GX44Gm5LqI57SE44GX44Gm44GP44Gg44GV44GE77yaIixrbzoi7J20IO2YuO2FlOyXkOuKlCDsnbQg64Kg7Kec7JeQIOq3uCDsnbTrpoTsnZgg6rCd7Iuk7J20IOyXhuyKteuLiOuLpC4g7JWE656YIOqwneyLpOydgCDsmIjslb0g6rCA64ql7ZWp64uI64ukLiDriIzrn6zshJwg7JiI7JW97ZWY7IS47JqUOiIsZnI6IkNldCBow7R0ZWwgbuKAmWEgcGFzIGRlIGNoYW1icmUgZGUgY2Ugbm9tIHBvdXIgY2VzIG51aXRzLiBDZWxsZXMtY2kgc29udCBsaWJyZXMg4oCUIHRvdWNoZXotZW4gdW5lIHBvdXIgbGEgcsOpc2VydmVyIDoiLGVzOiJFc3RlIGhvdGVsIG5vIHRpZW5lIHVuYSBoYWJpdGFjacOzbiBjb24gZXNlIG5vbWJyZSBwYXJhIGVzYXMgbm9jaGVzLiBFc3RhcyBlc3TDoW4gbGlicmVzOyB0b3F1ZSB1bmEgcGFyYSByZXNlcnZhcmxhOiJ9LCJ7MH0gaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIEl0IGhhcyB7MX0uIjp7ZGU6InswfSBoYXQgZsO8ciBkaWVzZSBOw6RjaHRlIGtlaW4gWmltbWVyIG1pdCBkaWVzZW0gTmFtZW4uIFZlcmbDvGdiYXI6IHsxfS4iLGphOiJ7MH3jgavjga/jgZPjga7ml6XnqIvjgafjgZ3jga7lkI3liY3jga7lrqLlrqTjgYzjgYLjgorjgb7jgZvjgpPjgILkuojntITjgafjgY3jgovjga7jga97MX3jgafjgZnjgIIiLGtvOiJ7MH3sl5DripQg7J20IOuCoOynnOyXkCDqt7gg7J2066aE7J2YIOqwneyLpOydtCDsl4bsirXri4jri6QuIOyYiOyVvSDqsIDriqXtlZwg6rCd7IukOiB7MX0uIixmcjoiezB9IG7igJlhIHBhcyBkZSBjaGFtYnJlIGRlIGNlIG5vbSBwb3VyIGNlcyBudWl0cy4gSWwgcHJvcG9zZSB7MX0uIixlczoiezB9IG5vIHRpZW5lIHVuYSBoYWJpdGFjacOzbiBjb24gZXNlIG5vbWJyZSBwYXJhIGVzYXMgbm9jaGVzLiBUaWVuZSB7MX0uIn0sIlRoaXMgaG90ZWwgaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIEl0IGhhcyB7MH0uIjp7ZGU6IkRpZXNlcyBIb3RlbCBoYXQgZsO8ciBkaWVzZSBOw6RjaHRlIGtlaW4gWmltbWVyIG1pdCBkaWVzZW0gTmFtZW4uIFZlcmbDvGdiYXI6IHswfS4iLGphOiLjgZPjga7jg5vjg4bjg6vjgavjga/jgZPjga7ml6XnqIvjgafjgZ3jga7lkI3liY3jga7lrqLlrqTjgYzjgYLjgorjgb7jgZvjgpPjgILkuojntITjgafjgY3jgovjga7jga97MH3jgafjgZnjgIIiLGtvOiLsnbQg7Zi47YWU7JeQ64qUIOydtCDrgqDsp5zsl5Ag6re4IOydtOumhOydmCDqsJ3si6TsnbQg7JeG7Iq164uI64ukLiDsmIjslb0g6rCA64ql7ZWcIOqwneyLpDogezB9LiIsZnI6IkNldCBow7R0ZWwgbuKAmWEgcGFzIGRlIGNoYW1icmUgZGUgY2Ugbm9tIHBvdXIgY2VzIG51aXRzLiBJbCBwcm9wb3NlIHswfS4iLGVzOiJFc3RlIGhvdGVsIG5vIHRpZW5lIHVuYSBoYWJpdGFjacOzbiBjb24gZXNlIG5vbWJyZSBwYXJhIGVzYXMgbm9jaGVzLiBUaWVuZSB7MH0uIn0sIk5vdGhpbmcgd2FzIGJvb2tlZCBhbmQgbm90aGluZyB3YXMgY2hhcmdlZC4gVGhpcyBjb252ZXJzYXRpb24gaGFzIHJlYWNoZWQgaXRzIGJvb2tpbmcgbGltaXQ6IGNhbmNlbCBvbmUgeW91IGRvIG5vdCBuZWVkIGluIE15IGJvb2tpbmdzLCB0aGVuIHRyeSBhZ2Fpbi4iOntkZToiRXMgd3VyZGUgbmljaHRzIGdlYnVjaHQgdW5kIG5pY2h0cyBiZXJlY2huZXQuIERpZXNlciBDaGF0IGhhdCBzZWluIEJ1Y2h1bmdzbGltaXQgZXJyZWljaHQ6IFN0b3JuaWVyZW4gU2llIHVudGVyIOKAnk1laW5lIEJ1Y2h1bmdlbuKAnCBlaW5lLCBkaWUgU2llIG5pY2h0IGJyYXVjaGVuLCB1bmQgdmVyc3VjaGVuIFNpZSBlcyBkYW5uIGVybmV1dC4iLGphOiLkuojntITjgoLoq4vmsYLjgoLjgZXjgozjgabjgYTjgb7jgZvjgpPjgILjgZPjga7kvJroqbHjga7kuojntITmlbDjgYzkuIrpmZDjgavpgZTjgZfjgb7jgZfjgZ/jgILjgIzkuojntITkuIDopqfjgI3jgafkuI3opoHjgarkuojntITjgpLjgq3jg6Pjg7Pjgrvjg6vjgZfjgabjgYvjgonjgIHjgoLjgYbkuIDluqbjgYroqabjgZfjgY/jgaDjgZXjgYTjgIIiLGtvOiLsmIjslb3rj4Qg6rKw7KCc64+EIOuQmOyngCDslYrslZjsirXri4jri6QuIOydtCDrjIDtmZTsnZgg7JiI7JW9IO2VnOuPhOyXkCDrj4Tri6ztlojsirXri4jri6QuIOKAmOuCtCDsmIjslb3igJnsl5DshJwg7ZWE7JqUIOyXhuuKlCDsmIjslb3snYQg7Leo7IaM7ZWcIOuSpCDri6Tsi5wg7Iuc64+E7ZWY7IS47JqULiIsZnI6IlJpZW4gbuKAmWEgw6l0w6kgcsOpc2VydsOpIG5pIGZhY3R1csOpLiBDZXR0ZSBjb252ZXJzYXRpb24gYSBhdHRlaW50IHNhIGxpbWl0ZSBkZSByw6lzZXJ2YXRpb25zIDogYW5udWxlei1lbiB1bmUgZG9udCB2b3VzIG7igJlhdmV6IHBhcyBiZXNvaW4gZGFucyDCqyBNZXMgcsOpc2VydmF0aW9ucyDCuywgcHVpcyByw6llc3NheWV6LiIsZXM6Ik5vIHNlIHJlc2VydsOzIG5pIHNlIGNvYnLDsyBuYWRhLiBFc3RhIGNvbnZlcnNhY2nDs24gaGEgYWxjYW56YWRvIHN1IGzDrW1pdGUgZGUgcmVzZXJ2YXM6IGNhbmNlbGUgdW5hIHF1ZSBubyBuZWNlc2l0ZSBlbiDCq01pcyByZXNlcnZhc8K7IHkgdnVlbHZhIGEgaW50ZW50YXJsby4ifSwiVGhhdCBjb3VsZCBub3QgYmUgZG9uZS4iOntkZToiRGFzIGhhdCBuaWNodCBnZWtsYXBwdC4gQml0dGUgdmVyc3VjaGVuIFNpZSBlcyBzcMOkdGVyIGVybmV1dC4iLGphOiLlrozkuobjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgILlvozjgafjgoLjgYbkuIDluqbjgYroqabjgZfjgY/jgaDjgZXjgYTjgIIiLGtvOiLsmYTro4ztlZjsp4Ag66q77ZaI7Iq164uI64ukLiDsnqDsi5wg7ZuEIOuLpOyLnCDsi5zrj4TtlbQg7KO87IS47JqULiIsZnI6IkNlbGEgbuKAmWEgcGFzIHB1IMOqdHJlIGZhaXQuIFLDqWVzc2F5ZXogcGx1cyB0YXJkLiIsZXM6Ik5vIHNlIHB1ZG8gaGFjZXIuIEludMOpbnRlbG8gZGUgbnVldm8gbcOhcyB0YXJkZS4ifSwiQm9va2luZyBsaW1pdCByZWFjaGVkIjp7ZGU6IkJ1Y2h1bmdzbGltaXQgZXJyZWljaHQiLGphOiLkuojntITkuIrpmZDjgavpgZTjgZfjgb7jgZfjgZ8iLGtvOiLsmIjslb0g7ZWc64+EIOuPhOuLrCIsZnI6IkxpbWl0ZSBkZSByw6lzZXJ2YXRpb25zIGF0dGVpbnRlIixlczoiTMOtbWl0ZSBkZSByZXNlcnZhcyBhbGNhbnphZG8ifSwiVGhhdCBkaWQgbm90IHdvcmsiOntkZToiRGFzIGhhdCBuaWNodCBnZWtsYXBwdCIsamE6IuWujOS6huOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBnyIsa286IuyZhOujjO2VmOyngCDrqrvtlojsirXri4jri6QiLGZyOiJDZWxhIG7igJlhIHBhcyBmb25jdGlvbm7DqSIsZXM6Ik5vIGZ1bmNpb27DsyJ9LCJTZWUgYWxsIHJvb21zIjp7ZGU6IkFsbGUgWmltbWVyIGFuc2VoZW4iLGphOiLjgZnjgbnjgabjga7lrqLlrqTjgpLopovjgosiLGtvOiLrqqjrk6Ag6rCd7IukIOuztOq4sCIsZnI6IlZvaXIgdG91dGVzIGxlcyBjaGFtYnJlcyIsZXM6IlZlciB0b2RhcyBsYXMgaGFiaXRhY2lvbmVzIn0sIlNlZSB0aGUgcm9vbXMiOntkZToiWmltbWVyIGFuc2VoZW4iLGphOiLlrqLlrqTjgpLopovjgosiLGtvOiLqsJ3si6Qg67O06riwIixmcjoiVm9pciBsZXMgY2hhbWJyZXMiLGVzOiJWZXIgbGFzIGhhYml0YWNpb25lcyJ9LCJCYWNrIHRvIHdoZXJlIHlvdSB3ZXJlIjp7ZGU6Ilp1csO8Y2siLGphOiLliY3jga7nlLvpnaLjgavmiLvjgosiLGtvOiLsnbTsoIQg7ZmU66m07Jy866GcIixmcjoiUmV2ZW5pciBlbiBhcnJpw6hyZSIsZXM6IlZvbHZlciJ9LCJBc2sgdGhlIGFzc2lzdGFudCB0byBzaG93IGl0IGFnYWluIjp7ZGU6IkRlbiBBc3Npc3RlbnRlbiBiaXR0ZW4sIHNpZSBlcm5ldXQgYW56dXplaWdlbiIsamE6IuOCouOCt+OCueOCv+ODs+ODiOOBq+OCguOBhuS4gOW6puihqOekuuOBl+OBpuOCguOCieOBhiIsa286IuyWtOyLnOyKpO2EtO2KuOyXkOqyjCDri6Tsi5wg67O07JesIOuLrOudvOqzoCDtlZjquLAiLGZyOiJEZW1hbmRlciDDoCBs4oCZYXNzaXN0YW50IGRlIGxlIHLDqWFmZmljaGVyIixlczoiUGVkaXIgYWwgYXNpc3RlbnRlIHF1ZSBsbyB2dWVsdmEgYSBtb3N0cmFyIn0sIlNlYXJjaCBhZ2FpbiI6e2RlOiJOZXUgc3VjaGVuIixqYToi5qSc57Si44GX55u044GZIixrbzoi64uk7IucIOqygOyDiSIsZnI6IlJlbGFuY2VyIGxhIHJlY2hlcmNoZSIsZXM6IkJ1c2NhciBkZSBudWV2byJ9LCJBd2FpdGluZyBwYXltZW50Ijp7ZGU6IlphaGx1bmcgYXVzc3RlaGVuZCIsamE6IuaUr+aJleOBhOW+heOBoSIsa286IuqysOygnCDrjIDquLAiLGZyOiJFbiBhdHRlbnRlIGRlIHBhaWVtZW50IixlczoiUGVuZGllbnRlIGRlIHBhZ28ifSxSZXF1ZXN0ZWQ6VXcsQ29uZmlybWVkOlZ3LENhbmNlbGxlZDpXdyxFeHBpcmVkOkt3LCJOb3QgbWFkZSI6e2RlOiJOaWNodCB6dXN0YW5kZSBnZWtvbW1lbiIsamE6IuS4jeaIkOeriyIsa286IuuvuOyEseumvSIsZnI6Ik5vbiBlZmZlY3R1w6llIixlczoiTm8gcmVhbGl6YWRhIn0sIkJlaW5nIGNoZWNrZWQiOntkZToiV2lyZCBnZXByw7xmdCIsamE6IueFp+S8muS4rSIsa286IuqygO2GoCDspJEiLGZyOiJFbiBjb3VycyBkZSB2w6lyaWZpY2F0aW9uIixlczoiRW4gdmVyaWZpY2FjacOzbiJ9LCJBc2tlZCBmb3IgezB9Ijp7ZGU6IkFuZ2VmcmFndDogezB9IixqYToi44Oq44Kv44Ko44K544OI5riI44G/77yaezB9Iixrbzoi7JqU7LKt7ZWoOiB7MH0iLGZyOiJEZW1hbmTDqSA6IHswfSIsZXM6IlNvbGljaXRhZG86IHswfSJ9LCJUbyBiZSBwYWlkIjp7ZGU6Ik5vY2ggenUgemFobGVuIixqYToi5pyq5omV44GEIixrbzoi6rKw7KCcIOyYiOyglSIsZnI6IsOAIHBheWVyIixlczoiUG9yIHBhZ2FyIn0sIk5vdCBwYWlkIGluIHRpbWUiOntkZToiTmljaHQgcmVjaHR6ZWl0aWcgYmV6YWhsdCIsamE6Iuacn+mZkOWGheOBq+acquaJleOBhCIsa286Iuq4sO2VnCDrgrQg66+46rKw7KCcIixmcjoiTm9uIHBhecOpZSDDoCB0ZW1wcyIsZXM6Ik5vIHBhZ2FkYSBhIHRpZW1wbyJ9LCJSZWZ1bmQgdW5kZXIgd2F5Ijp7ZGU6IkVyc3RhdHR1bmcgbMOkdWZ0IixqYToi6L+U6YeR5omL57aa44GN5LitIixrbzoi7ZmY67aIIOynhO2WiSDspJEiLGZyOiJSZW1ib3Vyc2VtZW50IGVuIGNvdXJzIixlczoiUmVlbWJvbHNvIGVuIGN1cnNvIn0sIlJlZnVuZGVkIGluIGZ1bGwiOntkZToiVm9sbHN0w6RuZGlnIGVyc3RhdHRldCIsamE6IuWFqOmhjei/lOmHkea4iOOBvyIsa286IuyghOyVoSDtmZjrtojrkKgiLGZyOiJSZW1ib3Vyc8OpZSBpbnTDqWdyYWxlbWVudCIsZXM6IlJlZW1ib2xzYWRhIHBvciBjb21wbGV0byJ9LCJUb28gbWFueSB0cmllcyAtIHRyeSBhZ2FpbiBsYXRlci4iOntkZToiWnUgdmllbGUgVmVyc3VjaGUg4oCTIGJpdHRlIHNww6R0ZXIgZXJuZXV0IHZlcnN1Y2hlbi4iLGphOiLoqabooYzlm57mlbDjgYzlpJrjgZnjgY7jgb7jgZnjgILlvozjgafjgoLjgYbkuIDluqbjgYroqabjgZfjgY/jgaDjgZXjgYTjgIIiLGtvOiLsi5zrj4Qg7Zqf7IiY6rCAIOuEiOustCDrp47sirXri4jri6QuIOuCmOykkeyXkCDri6Tsi5wg7Iuc64+E7ZWY7IS47JqULiIsZnI6IlRyb3AgZGUgdGVudGF0aXZlcyDigJQgcsOpZXNzYXlleiBwbHVzIHRhcmQuIixlczoiRGVtYXNpYWRvcyBpbnRlbnRvczogaW50w6ludGVsbyBtw6FzIHRhcmRlLiJ9LCJObyBib29raW5nIG1hdGNoZXMgezB9IHdpdGggdGhhdCBlbWFpbC4gQm90aCBoYXZlIHRvIGJlIGFzIHRoZXkgYXJlIG9uIHRoZSBjb25maXJtYXRpb24uIjp7ZGU6IktlaW5lIEJ1Y2h1bmcgcGFzc3QgenUgezB9IG1pdCBkaWVzZXIgRS1NYWlsLiBCZWlkZXMgbXVzcyBzbyBzZWluIHdpZSBhdWYgZGVyIEJlc3TDpHRpZ3VuZy4iLGphOiJ7MH3jgajjgZPjga7jg6Hjg7zjg6vjgqLjg4njg6zjgrnjgavkuIDoh7TjgZnjgovkuojntITjga/jgYLjgorjgb7jgZvjgpPjgILjganjgaHjgonjgoLnorroqo3jg6Hjg7zjg6vjga7oqJjovInjganjgYrjgorjgavlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiJ7MH3smYAo6rO8KSDsnbQg7J2066mU7J287JeQIO2VtOuLue2VmOuKlCDsmIjslb3snbQg7JeG7Iq164uI64ukLiDrkZAg6rCA7KeAIOuqqOuRkCDtmZXsnbgg66mU7J287JeQIOygge2ejCDqt7jrjIDroZzsl6zslbwg7ZWp64uI64ukLiIsZnI6IkF1Y3VuZSByw6lzZXJ2YXRpb24gbmUgY29ycmVzcG9uZCDDoCB7MH0gYXZlYyBjZXQgZS1tYWlsLiBMZXMgZGV1eCBkb2l2ZW50IMOqdHJlIHRlbHMgcXXigJlpbmRpcXXDqXMgc3VyIGxhIGNvbmZpcm1hdGlvbi4iLGVzOiJOaW5ndW5hIHJlc2VydmEgY29pbmNpZGUgY29uIHswfSB5IGVzZSBjb3JyZW8gZWxlY3Ryw7NuaWNvLiBBbWJvcyBkZWJlbiBzZXIgdGFsIGNvbW8gYXBhcmVjZW4gZW4gbGEgY29uZmlybWFjacOzbi4ifSwiTm8gYm9va2luZ3MgaW4gdGhpcyBjb252ZXJzYXRpb24geWV0LiI6e2RlOiJJbiBkaWVzZW0gQ2hhdCBnaWJ0IGVzIG5vY2gga2VpbmUgQnVjaHVuZ2VuLiIsamE6IuOBk+OBruS8muipseOBp+OBruS6iOe0hOOBr+OBvuOBoOOBguOCiuOBvuOBm+OCk+OAgiIsa286IuydtCDrjIDtmZTsl5DripQg7JWE7KeBIOyYiOyVveydtCDsl4bsirXri4jri6QuIixmcjoiQXVjdW5lIHLDqXNlcnZhdGlvbiBkYW5zIGNldHRlIGNvbnZlcnNhdGlvbiBwb3VyIGzigJlpbnN0YW50LiIsZXM6IkHDum4gbm8gaGF5IHJlc2VydmFzIGVuIGVzdGEgY29udmVyc2FjacOzbi4ifSwiTm90IGtub3duIHlldCB3aGV0aGVyIHswfSBtYWRlIHRoaXMgYm9va2luZyDigJQgYSBwZXJzb24gaXMgY29uZmlybWluZyBpdC4iOntkZToiTm9jaCBpc3QgdW5rbGFyLCBvYiB7MH0gZGllc2UgQnVjaHVuZyBhbmdlbGVndCBoYXQg4oCUIGVpbiBNaXRhcmJlaXRlciBwcsO8ZnQgZXMuIixqYToiezB944Gn44GT44Gu5LqI57SE44GM5L2c5oiQ44GV44KM44Gf44GL44Gv44G+44Gg5YiG44GL44KK44G+44Gb44KT44CC5ouF5b2T6ICF44GM56K66KqN44GX44Gm44GE44G+44GZ44CCIixrbzoiezB97JeQ7IScIOydtCDsmIjslb3snbQg66eM65Ok7Ja07KGM64qU7KeAIOyVhOyngSDslYwg7IiYIOyXhuyKteuLiOuLpC4g64u064u57J6Q6rCAIO2ZleyduO2VmOqzoCDsnojsirXri4jri6QuIixmcjoiT24gbmUgc2FpdCBwYXMgZW5jb3JlIHNpIHswfSBhIGNyw6nDqSBjZXR0ZSByw6lzZXJ2YXRpb24g4oCUIHVuZSBwZXJzb25uZSBsYSB2w6lyaWZpZS4iLGVzOiJBw7puIG5vIHNlIHNhYmUgc2kgezB9IGNyZcOzIGVzdGEgcmVzZXJ2YTsgdW5hIHBlcnNvbmEgbG8gZXN0w6EgY29uZmlybWFuZG8uIn0sQ2FuY2VsOkd3LCJTZWUgYm9va2luZyB7MH0iOntkZToiQnVjaHVuZyB7MH0gYW5zZWhlbiIsamE6IuS6iOe0hCB7MH0g44Gu6Kmz57Sw44KS6KaL44KLIixrbzoi7JiI7JW9IHswfSDrs7TquLAiLGZyOiJWb2lyIGxhIHLDqXNlcnZhdGlvbiB7MH0iLGVzOiJWZXIgbGEgcmVzZXJ2YSB7MH0ifSxDYW5jZWxsaW5nOkp3LCJUaGUgaG90ZWwgY2hhcmdlcyI6e2RlOiJEYXMgSG90ZWwgYmVyZWNobmV0IixqYToi44Ob44OG44Or44Gu6KuL5rGC6aGNIixrbzoi7Zi47YWUIOyyreq1rOyVoSIsZnI6IkzigJlow7R0ZWwgZmFjdHVyZSIsZXM6IkVsIGhvdGVsIGNvYnJhIn0sIkNhbmNlbGxpbmcgd291bGQgY29zdCI6e2RlOiJFaW5lIFN0b3JuaWVydW5nIGtvc3RldCIsamE6IuOCreODo+ODs+OCu+ODq+aWmSIsa286Iuy3qOyGjCDsiJjsiJjro4wiLGZyOiJM4oCZYW5udWxhdGlvbiBjb8O7dGVyYWl0IixlczoiQ2FuY2VsYXIgY29zdGFyw61hIn0sIktlZXAgaXQiOntkZToiQmVoYWx0ZW4iLGphOiLjgq3jg6Pjg7Pjgrvjg6vjgZfjgarjgYQiLGtvOiLsnKDsp4DtlZjquLAiLGZyOiJMYSBnYXJkZXIiLGVzOiJNYW50ZW5lcmxhIn0sIkNhbmNlbCB0aGUgYm9va2luZyI6e2RlOiJCdWNodW5nIHN0b3JuaWVyZW4iLGphOiLkuojntITjgpLjgq3jg6Pjg7Pjgrvjg6vjgZnjgosiLGtvOiLsmIjslb0g7Leo7IaMIO2ZleyglSIsZnI6IkFubnVsZXIgbGEgcsOpc2VydmF0aW9uIixlczoiQ2FuY2VsYXIgbGEgcmVzZXJ2YSJ9LCJUaGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gY2FuY2VsIG9uIHRoaXMgYm9va2luZy4iOntkZToiQW4gZGllc2VyIEJ1Y2h1bmcgZ2lidCBlcyBuaWNodHMgbWVociB6dSBzdG9ybmllcmVuLiIsamE6IuOBk+OBruS6iOe0hOOBq+OCreODo+ODs+OCu+ODq+OBp+OBjeOCi+WGheWuueOBr+aui+OBo+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuydtCDsmIjslb3sl5DripQg642UIOydtOyDgSDst6jshoztlaAg64K07Jqp7J20IOyXhuyKteuLiOuLpC4iLGZyOiJJbCBuZSByZXN0ZSByaWVuIMOgIGFubnVsZXIgc3VyIGNldHRlIHLDqXNlcnZhdGlvbi4iLGVzOiJObyBxdWVkYSBuYWRhIHBvciBjYW5jZWxhciBlbiBlc3RhIHJlc2VydmEuIn0sQ2hhbmdlZDpZdyxDaGFuZ2luZzpRdyxXYXM6WHcsTm93OmVfLCJXb3VsZCBiZSI6e2RlOiJOZXUiLGphOiLlpInmm7TlvowiLGtvOiLrs4Dqsr0g7ZuEIixmcjoiQXByw6hzIixlczoiRGVzcHXDqXMifSwiVGhlIGRlc2sgb3dlcyI6e2RlOiJEYXMgSG90ZWwgZXJzdGF0dGV0IixqYToi44Ob44OG44Or44GL44KJ44Gu6L+U6YeRIixrbzoi7Zi47YWUIO2ZmOu2iOyVoSIsZnI6IkzigJlow7R0ZWwgdm91cyBkb2l0IixlczoiRWwgaG90ZWwgbGUgZGV2dWVsdmUifSwiV291bGQgY29tZSBiYWNrIjp7ZGU6IlfDvHJkZSBlcnN0YXR0ZXQiLGphOiLov5Tph5HkuojlrprpoY0iLGtvOiLtmZjrtogg7JiI7KCVIixmcjoiU2VyYWl0IHJlbWJvdXJzw6kiLGVzOiJTZSBkZXZvbHZlcsOtYSJ9LCJUaGUgZGVzayBhc2tzIGZvciI6e2RlOiJEYXMgSG90ZWwgdmVybGFuZ3QiLGphOiLov73liqDmlpnph5EiLGtvOiLstpTqsIAg7JqU6riIIixmcjoiTOKAmWjDtHRlbCBkZW1hbmRlIixlczoiRWwgaG90ZWwgcGlkZSJ9LCJXb3VsZCBjb3N0Ijp7ZGU6IlfDvHJkZSBrb3N0ZW4iLGphOiLlt67poY0iLGtvOiLssKjslaEiLGZyOiJDb8O7dGVyYWl0IixlczoiQ29zdGFyw61hIn0sIkxlYXZlIGl0Ijp7ZGU6IlNvIGxhc3NlbiIsamE6IuWkieabtOOBl+OBquOBhCIsa286IuuzgOqyvSDslYgg7ZWoIixmcjoiTmUgcmllbiBjaGFuZ2VyIixlczoiRGVqYXJsbyBhc8OtIn0sIlVwZGF0ZSB0aGUgYm9va2luZyI6e2RlOiJCdWNodW5nIGFrdHVhbGlzaWVyZW4iLGphOiLkuojntITjgpLmm7TmlrAiLGtvOiLsmIjslb0g7JeF642w7J207Yq4IixmcjoiTWV0dHJlIMOgIGpvdXIgbGEgcsOpc2VydmF0aW9uIixlczoiQWN0dWFsaXphciBsYSByZXNlcnZhIn0sIk1vdmUgdGhlIGJvb2tpbmciOntkZToiQnVjaHVuZyB2ZXJzY2hpZWJlbiIsamE6IuaXpeeoi+OCkuWkieabtOOBmeOCiyIsa286IuydvOyglSDrs4Dqsr0g7ZmV7KCVIixmcjoiRMOpcGxhY2VyIGxhIHLDqXNlcnZhdGlvbiIsZXM6Ik1vdmVyIGxhIHJlc2VydmEifSwiV2hhdCB0aGUgaG90ZWwgcHVibGlzaGVzIjp7ZGU6IldhcyBkYXMgSG90ZWwgdmVyw7ZmZmVudGxpY2h0IixqYToi44Ob44OG44Or44Gu5YWs6ZaL44Od44Oq44K344O8Iixrbzoi7Zi47YWUIOqzteqwnCDsoJXssYUiLGZyOiJDZSBxdWUgcHVibGllIGzigJlow7R0ZWwiLGVzOiJMbyBxdWUgcHVibGljYSBlbCBob3RlbCJ9LCJ7MH0gZG9lcyBub3QgcHVibGlzaCBhbnl0aGluZyBhYm91dCB0aGF0IGhlcmUuIjp7ZGU6InswfSB2ZXLDtmZmZW50bGljaHQgaGllciBuaWNodHMgZGF6dS4iLGphOiJ7MH3jga/jgZPjgozjgavjgaTjgYTjgabkvZXjgoLlhazplovjgZfjgabjgYTjgb7jgZvjgpPjgIIiLGtvOiJ7MH3snYAo64qUKSDsnbTsl5Ag6rSA7ZW0IOqzteqwnO2VnCDrgrTsmqnsnbQg7JeG7Iq164uI64ukLiIsZnI6InswfSBuZSBwdWJsaWUgcmllbiDDoCBjZSBzdWpldCBpY2kuIixlczoiezB9IG5vIHB1YmxpY2EgbmFkYSBzb2JyZSBlc28gYXF1w60uIn0sIlBlciBuaWdodCI6e2RlOiJQcm8gTmFjaHQiLGphOiIx5rOK44GC44Gf44KKIixrbzoiMeuwleuLuSIsZnI6IlBhciBudWl0IixlczoiUG9yIG5vY2hlIn0sIldob2xlIHN0YXkiOntkZToiR2VzYW10ZXIgQXVmZW50aGFsdCIsamE6Iua7nuWcqOWFqOS9kyIsa286IuyghOyytCDsiJnrsJUiLGZyOiJTw6lqb3VyIGNvbXBsZXQiLGVzOiJFc3RhbmNpYSBjb21wbGV0YSJ9LFNsZWVwczp0XywiUm9vbXMgbGVmdCI6e2RlOiJGcmVpZSBaaW1tZXIiLGphOiLmrovlrqTmlbAiLGtvOiLrgqjsnYAg6rCd7IukIixmcjoiQ2hhbWJyZXMgcmVzdGFudGVzIixlczoiSGFiaXRhY2lvbmVzIGxpYnJlcyJ9LEZyb206bl8sWWVzOm9fLE5vOnNfLCJOb3QgaW5jbHVkZWQiOntkZToiTmljaHQgZW50aGFsdGVuIixqYToi5ZCr44G+44KM44Gq44GEIixrbzoi67aI7Y+s7ZWoIixmcjoiTm9uIGluY2x1cyIsZXM6Ik5vIGluY2x1aWRvIn0sInswfSBpbmNsLiB0YXgiOntkZToiezB9IGlua2wuIFN0ZXVlcm4iLGphOiJ7MH3vvIjnqI7ovrzjgb/vvIkiLGtvOiJ7MH0gKOyEuOq4iCDtj6ztlagpIixmcjoiezB9IFRUQyIsZXM6InswfSBjb24gaW1wdWVzdG9zIn0sInRvdGFsIMK3IHswfS9uaWdodCI6e2RlOiJnZXNhbXQgwrcgezB9L05hY2h0IixqYToi5ZCI6KiIIMK3IDHms4p7MH0iLGtvOiLtlanqs4QgwrcgMeuwlSB7MH0iLGZyOiJ0b3RhbCDCtyB7MH0vbnVpdCIsZXM6InRvdGFsIMK3IHswfS9ub2NoZSJ9LCIgLyBuaWdodCI6e2RlOiIgLyBOYWNodCIsamE6IuOAnCAvIOaziiIsa286IiAvIDHrsJUiLGZyOiIgLyBudWl0IixlczoiIC8gbm9jaGUifSwiUHJpY2VzIGFyZSBpbiBlYWNoIGhvdGVsJ3Mgb3duIGN1cnJlbmN5ICh7MH0pLiBUaGV5IGFyZSBub3QgY29udmVydGVkLCBzbyB0aGUgY29sdW1ucyBhcmUgbm90IGEgcHJpY2UgcmFua2luZy4iOntkZToiRGllIFByZWlzZSBzaW5kIGluIGRlciBqZXdlaWxpZ2VuIFfDpGhydW5nIGRlcyBIb3RlbHMgKHswfSkuIFNpZSB3ZXJkZW4gbmljaHQgdW1nZXJlY2huZXQsIGRpZSBTcGFsdGVuIHNpbmQgYWxzbyBrZWluIFByZWlzdmVyZ2xlaWNoLiIsamE6IuaWmemHkeOBr+WQhOODm+ODhuODq+OBrumAmuiyqO+8iHswfe+8ieOBp+ihqOekuuOBl+OBpuOBhOOBvuOBmeOAguaPm+eul+OBl+OBpuOBhOOBquOBhOOBn+OCgeOAgeWIl+OCkuS4puOBueOBpuaWmemHkeOCkuavlOOBueOCi+OBk+OBqOOBr+OBp+OBjeOBvuOBm+OCk+OAgiIsa286IuyalOq4iOydgCDqsIEg7Zi47YWU7J2YIO2Gte2ZlCh7MH0p66GcIO2RnOyLnOuQqeuLiOuLpC4g7ZmY7IKw7ZWY7KeAIOyViuycvOuvgOuhnCDsl7Trgbzrpqwg6rCA6rKp7J2EIOu5hOq1kO2VoCDsiJgg7JeG7Iq164uI64ukLiIsZnI6IkxlcyBwcml4IHNvbnQgZGFucyBsYSBkZXZpc2UgZGUgY2hhcXVlIGjDtHRlbCAoezB9KS4gSWxzIG5lIHNvbnQgcGFzIGNvbnZlcnRpcyA6IGxlcyBjb2xvbm5lcyBuZSBmb3JtZW50IGRvbmMgcGFzIHVuIGNsYXNzZW1lbnQgcGFyIHByaXguIixlczoiTG9zIHByZWNpb3MgZXN0w6FuIGVuIGxhIG1vbmVkYSBkZSBjYWRhIGhvdGVsICh7MH0pLiBObyBzZSBjb252aWVydGVuLCBhc8OtIHF1ZSBsYXMgY29sdW1uYXMgbm8gc29uIHVuYSBjbGFzaWZpY2FjacOzbiBwb3IgcHJlY2lvLiJ9LCJPcGVuIGEgaG90ZWwgdG8gc2VlIGl0cyByb29tcyBmb3IgdGhlc2UgbmlnaHRzLiI6e2RlOiLDlmZmbmVuIFNpZSBlaW4gSG90ZWwsIHVtIHNlaW5lIFppbW1lciBmw7xyIGRpZXNlIE7DpGNodGUgenUgc2VoZW4uIixqYToi44Ob44OG44Or44KS6ZaL44GP44Go44CB44GT44Gu5pel56iL44Gu5a6i5a6k44GM6KaL44KJ44KM44G+44GZ44CCIixrbzoi7Zi47YWU7J2EIOyXtOuptCDsnbQg64Kg7Kec7J2YIOqwneyLpOydhCDrs7wg7IiYIOyeiOyKteuLiOuLpC4iLGZyOiJPdXZyZXogdW4gaMO0dGVsIHBvdXIgdm9pciBzZXMgY2hhbWJyZXMgcG91ciBjZXMgbnVpdHMuIixlczoiQWJyYSB1biBob3RlbCBwYXJhIHZlciBzdXMgaGFiaXRhY2lvbmVzIHBhcmEgZXNhcyBub2NoZXMuIn0sIk9wZW4gYSBob3RlbCB0byBzZWUgaXRzIHJvb21zLiI6e2RlOiLDlmZmbmVuIFNpZSBlaW4gSG90ZWwsIHVtIHNlaW5lIFppbW1lciB6dSBzZWhlbi4iLGphOiLjg5vjg4bjg6vjgpLplovjgY/jgajlrqLlrqTjgYzopovjgonjgozjgb7jgZnjgIIiLGtvOiLtmLjthZTsnYQg7Je066m0IOqwneyLpOydhCDrs7wg7IiYIOyeiOyKteuLiOuLpC4iLGZyOiJPdXZyZXogdW4gaMO0dGVsIHBvdXIgdm9pciBzZXMgY2hhbWJyZXMuIixlczoiQWJyYSB1biBob3RlbCBwYXJhIHZlciBzdXMgaGFiaXRhY2lvbmVzLiJ9LCJCb29rZWQgwrcgezB9Ijp7ZGU6IkdlYnVjaHQgwrcgezB9IixqYToi5LqI57SE5riI44G/IMK3IHswfSIsa286IuyYiOyVveuQqCDCtyB7MH0iLGZyOiJSw6lzZXJ2w6kgwrcgezB9IixlczoiUmVzZXJ2YWRvIMK3IHswfSJ9LCJJbiB0aGUgdHJpcCI6e2RlOiJJbiBkZXIgUmVpc2UiLGphOiLml4XnqIvjgavov73liqDmuIjjgb8iLGtvOiLsnbzsoJXsl5Ag7J6I7J2MIixmcjoiRGFucyBsZSB2b3lhZ2UiLGVzOiJFbiBlbCB2aWFqZSJ9LCJQbGFuIG9ubHkiOntkZToiTnVyIGdlcGxhbnQiLGphOiLoqIjnlLvjga7jgb8iLGtvOiLqs4Ttmo3rp4wiLGZyOiJQcsOpdnUgc2V1bGVtZW50IixlczoiU29sbyBwbGFuaWZpY2FkbyJ9LCJDaGVjayBvdXQgwrcgezB9Ijp7ZGU6IkFicmVpc2UgwrcgezB9IixqYToi44OB44Kn44OD44Kv44Ki44Km44OIIMK3IHswfSIsa286IuyytO2BrOyVhOybgyDCtyB7MH0iLGZyOiJEw6lwYXJ0IMK3IHswfSIsZXM6IlNhbGlkYSDCtyB7MH0ifSwiTmlnaHQgezB9IG9mIHsxfSDCtyB7Mn0iOntkZToiTmFjaHQgezB9IHZvbiB7MX0gwrcgezJ9IixqYToiezF95rOK5LitezB95rOK55uuIMK3IHsyfSIsa286InsxfeuwlSDspJEgezB967CV7Ke4IMK3IHsyfSIsZnI6Ik51aXQgezB9IHN1ciB7MX0gwrcgezJ9IixlczoiTm9jaGUgezB9IGRlIHsxfSDCtyB7Mn0ifSwiezB9IGhlcmUiOntkZToiezB9IGhpZXIiLGphOiLjgZPjgZPjgad7MH0iLGtvOiLsnbTqs7Psl5DshJwgezB9IixmcjoiezB9IGljaSIsZXM6InswfSBhcXXDrSJ9LCJPZiB0aGUgezB9IG9uIHRoZSBwbGFuLCB7MX0gYXJlIGluIHRoZSB0cmlwIG9yIGJvb2tlZDsgdGhlIHJlc3QgYXJlIG9ubHkgcGxhbm5lZC4iOntkZToiVm9uIGRlbiB7MH0gaW0gUGxhbiBzaW5kIHsxfSBpbiBkZXIgUmVpc2Ugb2RlciBnZWJ1Y2h0OyBkZXIgUmVzdCBpc3QgbnVyIGdlcGxhbnQuIixqYToi6KiI55S75Lit44GuezB95Lu244Gu44GG44Gh44CBezF95Lu244Gv5peF56iL44Gr6L+95Yqg5riI44G/44G+44Gf44Gv5LqI57SE5riI44G/44Gn44GZ44CC5q6L44KK44Gv6KiI55S744Gu44G/44Gn44GZ44CCIixrbzoi6rOE7ZqN7J2YIHswfeqxtCDspJEgezF96rG07J2AIOydvOygleyXkCDsnojqsbDrgpgg7JiI7JW965CY7JeI6rOgLCDrgpjrqLjsp4DripQg6rOE7ZqN66eMIOuQmOyWtCDsnojsirXri4jri6QuIixmcjoiU3VyIGxlcyB7MH0gZHUgcHJvZ3JhbW1lLCB7MX0gc29udCBkYW5zIGxlIHZveWFnZSBvdSByw6lzZXJ2w6lzIDsgbGUgcmVzdGUgZXN0IHNldWxlbWVudCBwcsOpdnUuIixlczoiRGUgbG9zIHswfSBkZWwgcGxhbiwgezF9IGVzdMOhbiBlbiBlbCB2aWFqZSBvIHJlc2VydmFkb3M7IGVsIHJlc3RvIHNvbG8gZXN0w6EgcGxhbmlmaWNhZG8uIn0sIkJvb2sgdGhpcyBzdGF5Ijp7ZGU6IkRpZXNlbiBBdWZlbnRoYWx0IGJ1Y2hlbiIsamE6IuOBk+OBrua7nuWcqOOCkuS6iOe0hCIsa286IuydtCDsiJnrsJUg7JiI7JW9IixmcjoiUsOpc2VydmVyIGNlIHPDqWpvdXIiLGVzOiJSZXNlcnZhciBlc3RhIGVzdGFuY2lhIn0sIkJvb2sgdGhlc2UgezB9IGhvdGVscyI6e2RlOiJEaWVzZSB7MH0gSG90ZWxzIGJ1Y2hlbiIsamE6IuOBk+OBrnswfei7kuOCkuS6iOe0hCIsa286IuydtCDtmLjthZQgezB96rOzIOyYiOyVvSIsZnI6IlLDqXNlcnZlciBjZXMgezB9IGjDtHRlbHMiLGVzOiJSZXNlcnZhciBlc3RvcyB7MH0gaG90ZWxlcyJ9LCJCb29rIHRoZXNlIHswfSBzdGF5cyI6e2RlOiJEaWVzZSB7MH0gQXVmZW50aGFsdGUgYnVjaGVuIixqYToi44GT44GuezB95Lu244Gu5rue5Zyo44KS5LqI57SEIixrbzoi7J20IOyImeuwlSB7MH3qsbQg7JiI7JW9IixmcjoiUsOpc2VydmVyIGNlcyB7MH0gc8Opam91cnMiLGVzOiJSZXNlcnZhciBlc3RhcyB7MH0gZXN0YW5jaWFzIn0sSG90ZWxzOnJfLCJUaGF0IGhvdGVsIGlzIG5vdCBpbiB0aGlzIGNvbm5lY3Rvci4iOntkZToiRGllc2VzIEhvdGVsIGlzdCBoaWVyIG5pY2h0IHZlcmbDvGdiYXIuIixqYToi44Gd44Gu44Ob44OG44Or44Gv44GT44GT44Gr44Gv44GC44KK44G+44Gb44KT44CCIixrbzoi6re4IO2YuO2FlOydgCDsl6zquLDsl5Ag7JeG7Iq164uI64ukLiIsZnI6IkNldCBow7R0ZWwgbuKAmWVzdCBwYXMgZGlzcG9uaWJsZSBpY2kuIixlczoiRXNlIGhvdGVsIG5vIGVzdMOhIGFxdcOtLiJ9LCJTaWduZWQgb3V0LiBSYXRlcyBhcmUgdGhlIHB1YmxpYyBvbmVzIGFnYWluLiI6e2RlOiJBYmdlbWVsZGV0LiBFcyBnZWx0ZW4gd2llZGVyIGRpZSDDtmZmZW50bGljaGVuIFByZWlzZS4iLGphOiLjg63jgrDjgqLjgqbjg4jjgZfjgb7jgZfjgZ/jgILmlpnph5Hjga/kuIDoiKzmlpnph5HjgavmiLvjgorjgb7jgZfjgZ/jgIIiLGtvOiLroZzqt7jslYTsm4PrkJjsl4jsirXri4jri6QuIOyalOq4iOydtCDri6Tsi5wg7J2867CYIOyalOq4iOycvOuhnCDtkZzsi5zrkKnri4jri6QuIixmcjoiRMOpY29ubmVjdMOpLiBMZXMgdGFyaWZzIHB1YmxpY3Mgc+KAmWFwcGxpcXVlbnQgZGUgbm91dmVhdS4iLGVzOiJTZXNpw7NuIGNlcnJhZGEuIFZ1ZWx2ZW4gYSBtb3N0cmFyc2UgbGFzIHRhcmlmYXMgcMO6YmxpY2FzLiJ9LCJUaGVyZSBpcyBub3RoaW5nIGluIHRoZSB0cmlwIHlldC4iOntkZToiSW4gZGVyIFJlaXNlIGlzdCBub2NoIG5pY2h0cy4iLGphOiLml4XnqIvjgavjga/jgb7jgaDkvZXjgoLjgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLsl6ztlokg7J287KCV7JeQIOyVhOyngSDslYTrrLTqsoPrj4Qg7JeG7Iq164uI64ukLiIsZnI6IklsIG7igJl5IGEgZW5jb3JlIHJpZW4gZGFucyBsZSB2b3lhZ2UuIixlczoiVG9kYXbDrWEgbm8gaGF5IG5hZGEgZW4gZWwgdmlhamUuIn0sIk5vIGJvb2tpbmcgaGVyZSBtYXRjaGVzIHRoYXQgY29kZS4iOntkZToiS2VpbmUgQnVjaHVuZyBwYXNzdCB6dSBkaWVzZW0gQ29kZS4iLGphOiLjgZ3jga7norroqo3nlarlj7fjgavkuIDoh7TjgZnjgovkuojntITjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLqt7gg7ZmV7J24IOuyiO2YuOyXkCDtlbTri7ntlZjripQg7JiI7JW97J20IOyXhuyKteuLiOuLpC4iLGZyOiJBdWN1bmUgcsOpc2VydmF0aW9uIG5lIGNvcnJlc3BvbmQgw6AgY2UgY29kZS4iLGVzOiJOaW5ndW5hIHJlc2VydmEgY29pbmNpZGUgY29uIGVzZSBjw7NkaWdvLiJ9LCJOb25lIG9mIHRob3NlIGFyZSBob3RlbHMgdGhpcyBjb25uZWN0b3Iga25vd3MuIjp7ZGU6IktlaW5lcyBkYXZvbiBpc3QgaGllciBlaW4gYmVrYW5udGVzIEhvdGVsLiIsamE6IuOBhOOBmuOCjOOCguOBk+OBk+OBp+aJseOBo+OBpuOBhOOCi+ODm+ODhuODq+OBp+OBr+OBguOCiuOBvuOBm+OCk+OAgiIsa286IuuqqOuRkCDsl6zquLDshJwg64uk66Oo64qUIO2YuO2FlOydtCDslYTri5nri4jri6QuIixmcjoiQXVjdW4gZOKAmWV1eCBu4oCZZXN0IHVuIGjDtHRlbCBjb25udSBpY2kuIixlczoiTmluZ3VubyBkZSBlbGxvcyBlcyB1biBob3RlbCBxdWUgc2UgY29ub3pjYSBhcXXDrS4ifSwiQW4gaXRpbmVyYXJ5IG5lZWRzIGF0IGxlYXN0IG9uZSBkYXkuIjp7ZGU6IkVpbiBSZWlzZXBsYW4gYnJhdWNodCBtaW5kZXN0ZW5zIGVpbmVuIFRhZy4iLGphOiLml4XnqIvoqIjnlLvjgavjga/lsJHjgarjgY/jgajjgoIx5pel44GM5b+F6KaB44Gn44GZ44CCIixrbzoi7Jes7ZaJIOqzhO2ajeyXkOuKlCDstZzshowg7ZWY66Oo6rCAIO2VhOyalO2VqeuLiOuLpC4iLGZyOiJVbiBpdGluw6lyYWlyZSBkb2l0IGNvbXB0ZXIgYXUgbW9pbnMgdW4gam91ci4iLGVzOiJVbiBpdGluZXJhcmlvIG5lY2VzaXRhIGFsIG1lbm9zIHVuIGTDrWEuIn0sIlRoZSBvbmUgb24gdGhlIGJvb2tpbmciOntkZToiRGllIGJlaSBkZXIgQnVjaHVuZyBhbmdlZ2ViZW5lIixqYToi5LqI57SE5pmC44Gu44Oh44O844Or44Ki44OJ44Os44K5Iixrbzoi7JiI7JW97ZWgIOuVjCDsk7Qg7J2066mU7J28IixmcjoiQ2VsdWkgdXRpbGlzw6kgcG91ciBsYSByw6lzZXJ2YXRpb24iLGVzOiJFbCBxdWUgdXPDsyBlbiBsYSByZXNlcnZhIn0sIkZpbmQgaXQiOntkZToiU3VjaGVuIixqYToi5qSc57SiIixrbzoi7LC+6riwIixmcjoiUmVjaGVyY2hlciIsZXM6IkJ1c2NhciJ9LCJOb2JvZHkgaXMgc2lnbmVkIGluLCBzbyB0aGVyZSBpcyBub3RoaW5nIHNhdmVkIHRvIGZvcmdldC4iOntkZToiTmllbWFuZCBpc3QgYW5nZW1lbGRldCwgYWxzbyBnaWJ0IGVzIG5pY2h0cyBHZXNwZWljaGVydGVzIHp1IHZlcmdlc3Nlbi4iLGphOiLjg63jgrDjgqTjg7PjgZfjgabjgYTjgarjgYTjgZ/jgoHjgIHliYrpmaTjgafjgY3jgovkv53lrZjlhoXlrrnjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLroZzqt7jsnbjtlZjsp4Ag7JWK7JWY7Jy866+A66GcIOyCreygnO2VoCDsoIDsnqUg64K07Jqp7J20IOyXhuyKteuLiOuLpC4iLGZyOiJQZXJzb25uZSBu4oCZZXN0IGNvbm5lY3TDqSA6IGlsIG7igJl5IGEgcmllbiBk4oCZZW5yZWdpc3Ryw6kgw6Agb3VibGllci4iLGVzOiJObyBoYXkgbmFkaWUgY29uIGxhIHNlc2nDs24gaW5pY2lhZGEsIGFzw60gcXVlIG5vIGhheSBuYWRhIGd1YXJkYWRvIHF1ZSBvbHZpZGFyLiJ9LCJTaWduIGluIHdpdGggdGhlIG1lbWJlcnNoaXAgbnVtYmVyIGFuZCB0aGUgc3VybmFtZSBwcmludGVkIG9uIHRoZSBjYXJkIHRvIHNlZSB0aGUgbWVtYmVyIHJhdGUgb24gZXZlcnkgcHJpY2UgaGVyZS4iOntkZToiTWVsZGVuIFNpZSBzaWNoIG1pdCBkZXIgTWl0Z2xpZWRzbnVtbWVyIHVuZCBkZW0gYXVmIGRlciBLYXJ0ZSBnZWRydWNrdGVuIE5hY2huYW1lbiBhbiwgdW0gYmVpIGplZGVtIFByZWlzIGhpZXIgZGVuIE1pdGdsaWVkZXJwcmVpcyB6dSBzZWhlbi4iLGphOiLjgqvjg7zjg4njgavljbDlrZfjgZXjgozjgZ/kvJrlk6Hnlarlj7fjgajlp5Pjgafjg63jgrDjgqTjg7PjgZnjgovjgajjgIHjgZPjgZPjga7jgZnjgbnjgabjga7mlpnph5HjgYzkvJrlk6Hmlpnph5HjgafooajnpLrjgZXjgozjgb7jgZnjgIIiLGtvOiLsubTrk5zsl5Ag7J247IeE65CcIO2ajOybkCDrsojtmLjsmYAg7ISx7Jy866GcIOuhnOq3uOyduO2VmOuptCDsl6zquLDsnZgg66qo65OgIOqwgOqyqeydtCDtmozsm5Ag7JqU6riI7Jy866GcIO2RnOyLnOuQqeuLiOuLpC4iLGZyOiJDb25uZWN0ZXotdm91cyBhdmVjIGxlIG51bcOpcm8gZGUgbWVtYnJlIGV0IGxlIG5vbSBpbXByaW3DqXMgc3VyIGxhIGNhcnRlIHBvdXIgdm9pciBsZSB0YXJpZiBtZW1icmUgc3VyIGNoYXF1ZSBwcml4IGljaS4iLGVzOiJJbmljaWUgc2VzacOzbiBjb24gZWwgbsO6bWVybyBkZSBtaWVtYnJvIHkgZWwgYXBlbGxpZG8gaW1wcmVzb3MgZW4gbGEgdGFyamV0YSBwYXJhIHZlciBsYSB0YXJpZmEgZGUgbWllbWJybyBlbiB0b2RvcyBsb3MgcHJlY2lvcy4ifSwiU29tZXRoaW5nIGNhbWUgYmFjayB0aGF0IHRoaXMgY2FyZCBkb2VzIG5vdCBrbm93IGhvdyB0byBkcmF3LiI6e2RlOiJFcyBrYW0gZXR3YXMgenVyw7xjaywgZGFzIGRpZXNlIEthcnRlIG5pY2h0IGRhcnN0ZWxsZW4ga2Fubi4iLGphOiLjgZPjga7jgqvjg7zjg4njgafjga/ooajnpLrjgafjgY3jgarjgYTlhoXlrrnjgYzov5TjgZXjgozjgb7jgZfjgZ/jgIIiLGtvOiLsnbQg7Lm065Oc6rCAIO2RnOyLnO2VoCDsiJgg7JeG64qUIOuCtOyaqeydtCDrj4zslYTsmZTsirXri4jri6QuIixmcjoiVW5lIHLDqXBvbnNlIGVzdCBhcnJpdsOpZSBxdWUgY2V0dGUgY2FydGUgbmUgc2FpdCBwYXMgYWZmaWNoZXIuIixlczoiTGxlZ8OzIGFsZ28gcXVlIGVzdGEgdGFyamV0YSBubyBzYWJlIG1vc3RyYXIuIn0sTmV4dDphXywiQ2hvb3NlIHRoZSBjaGVjay1pbiBhbmQgY2hlY2stb3V0IGRhdGVzIGJlZm9yZSB0aGUgcm9vbSBnb2VzIGludG8gdGhlIHRyaXAuIjp7ZGU6IlfDpGhsZW4gU2llIEFuLSB1bmQgQWJyZWlzZXRhZywgYmV2b3IgZGFzIFppbW1lciBpbiBkaWUgUmVpc2Uga29tbXQuIixqYToi5a6i5a6k44KS5peF56iL44Gr6L+95Yqg44GZ44KL5YmN44Gr44CB44OB44Kn44OD44Kv44Kk44Oz5pel44Go44OB44Kn44OD44Kv44Ki44Km44OI5pel44KS6YG444KT44Gn44GP44Gg44GV44GE44CCIixrbzoi6rCd7Iuk7J2EIOydvOygleyXkCDrhKPquLAg7KCE7JeQIOyytO2BrOyduOqzvCDssrTtgazslYTsm4Mg64Kg7Kec66W8IOyEoO2Dne2VmOyEuOyalC4iLGZyOiJDaG9pc2lzc2V6IGxlcyBkYXRlcyBk4oCZYXJyaXbDqWUgZXQgZGUgZMOpcGFydCBhdmFudCBk4oCZYWpvdXRlciBsYSBjaGFtYnJlIGF1IHZveWFnZS4iLGVzOiJFbGlqYSBsYXMgZmVjaGFzIGRlIGxsZWdhZGEgeSBzYWxpZGEgYW50ZXMgZGUgYcOxYWRpciBsYSBoYWJpdGFjacOzbiBhbCB2aWFqZS4ifSwiezB9L3sxfSBib29rZWQiOntkZToiezB9L3sxfSBnZWJ1Y2h0IixqYToiezB9L3sxfSDkuojntITmuIjjgb8iLGtvOiJ7MH0vezF9IOyYiOyVveuQqCIsZnI6InswfS97MX0gcsOpc2VydsOpcyIsZXM6InswfS97MX0gcmVzZXJ2YWRvcyJ9LCJ7MH0vezF9IGluIHRoZSB0cmlwIjp7ZGU6InswfS97MX0gaW4gZGVyIFJlaXNlIixqYToiezB9L3sxfSDml4XnqIvjgavov73liqDmuIjjgb8iLGtvOiJ7MH0vezF9IOydvOygleyXkCDsnojsnYwiLGZyOiJ7MH0vezF9IGRhbnMgbGUgdm95YWdlIixlczoiezB9L3sxfSBlbiBlbCB2aWFqZSJ9LCIxIGJvb2tpbmciOntkZToiMSBCdWNodW5nIixqYToi5LqI57SEMeS7tiIsa286IuyYiOyVvSAx6rG0IixmcjoiMSByw6lzZXJ2YXRpb24iLGVzOiIxIHJlc2VydmEifSwiezB9IGJvb2tpbmdzIjp7ZGU6InswfSBCdWNodW5nZW4iLGphOiLkuojntIR7MH3ku7YiLGtvOiLsmIjslb0gezB96rG0IixmcjoiezB9IHLDqXNlcnZhdGlvbnMiLGVzOiJ7MH0gcmVzZXJ2YXMifSwiezB9IMK3IHsxfSUgb2ZmIjp7ZGU6InswfSDCtyB7MX0gJSBSYWJhdHQiLGphOiJ7MH0gwrcgezF9JeOCquODlSIsa286InswfSDCtyB7MX0lIO2VoOyduCIsZnI6InswfSDCtyDiiJJ7MX0gJSIsZXM6InswfSDCtyB7MX0gJSBkZSBkZXNjdWVudG8ifSwiTWVtYmVyIMK3IHswfSUgb2ZmIjp7ZGU6Ik1pdGdsaWVkIMK3IHswfSAlIFJhYmF0dCIsamE6IuS8muWToSDCtyB7MH0l44Kq44OVIixrbzoi7ZqM7JuQIMK3IHswfSUg7ZWg7J24IixmcjoiTWVtYnJlIMK3IOKIknswfSAlIixlczoiTWllbWJybyDCtyB7MH0gJSBkZSBkZXNjdWVudG8ifSwiTWVtYmVyIHNpZ24gaW4iOntkZToiTWl0Z2xpZWRlci1Mb2dpbiIsamE6IuS8muWToeODreOCsOOCpOODsyIsa286Iu2ajOybkCDroZzqt7jsnbgiLGZyOiJDb25uZXhpb24gbWVtYnJlIixlczoiQWNjZXNvIGRlIG1pZW1icm9zIn0sIkNvdWxkIG5vdCBsb2FkIHRob3NlIG5pZ2h0cy4iOntkZToiRGllc2UgTsOkY2h0ZSBrb25udGVuIG5pY2h0IGdlbGFkZW4gd2VyZGVuLiIsamE6IuOBk+OBruaXpeeoi+OCkuiqreOBv+i+vOOCgeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuydtCDrgqDsp5zrpbwg67aI65+s7Jik7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGNoYXJnZXIgY2VzIG51aXRzLiIsZXM6Ik5vIHNlIHB1ZGllcm9uIGNhcmdhciBlc2FzIG5vY2hlcy4ifSwiQ2hlY2sgezB9IGJlZm9yZSBib29raW5nLiI6e2RlOiJWb3IgZGVyIEJ1Y2h1bmcgcHLDvGZlbjogezB9LiIsamE6IuS6iOe0hOWJjeOBq+eiuuiqjeOBl+OBpuOBj+OBoOOBleOBhO+8mnswfeOAgiIsa286IuyYiOyVvSDsoIQg7ZmV7J24OiB7MH0uIixmcjoiw4AgdsOpcmlmaWVyIGF2YW50IGRlIHLDqXNlcnZlciA6IHswfS4iLGVzOiJSZXZpc2UgYW50ZXMgZGUgcmVzZXJ2YXI6IHswfS4ifSwiezB9IHRoaW5ncyB0byBjaGVjayBiZWZvcmUgYm9va2luZzogezF9LiI6e2RlOiJ7MH0gUHVua3RlIHZvciBkZXIgQnVjaHVuZyBwcsO8ZmVuOiB7MX0uIixqYToi5LqI57SE5YmN44Gr56K66KqN44GZ44KL6aCF55uu44GMezB95Lu244GC44KK44G+44GZ77yaezF944CCIixrbzoi7JiI7JW9IOyghCDtmZXsnbjtlaAg7ZWt66qpIHswfeqwnDogezF9LiIsZnI6InswfSBwb2ludHMgw6AgdsOpcmlmaWVyIGF2YW50IGRlIHLDqXNlcnZlciA6IHsxfS4iLGVzOiJ7MH0gY29zYXMgcXVlIHJldmlzYXIgYW50ZXMgZGUgcmVzZXJ2YXI6IHsxfS4ifSwiQ291bGQgbm90IGNoYW5nZSB0aGUgdHJpcC4iOntkZToiRGllIFJlaXNlIGtvbm50ZSBuaWNodCBnZcOkbmRlcnQgd2VyZGVuLiIsamE6IuaXheeoi+OCkuabtOaWsOOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyXrO2WiSDsnbzsoJXsnYQg67OA6rK97ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIG1vZGlmaWVyIGxlIHZveWFnZS4iLGVzOiJObyBzZSBwdWRvIGNhbWJpYXIgZWwgdmlhamUuIn0sIkNvdWxkIG5vdCBsb2FkIHRoZSB0cmlwLiI6e2RlOiJEaWUgUmVpc2Uga29ubnRlIG5pY2h0IGdlbGFkZW4gd2VyZGVuLiIsamE6IuaXheeoi+OCkuiqreOBv+i+vOOCgeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyXrO2WiSDsnbzsoJXsnYQg67aI65+s7Jik7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGNoYXJnZXIgbGUgdm95YWdlLiIsZXM6Ik5vIHNlIHB1ZG8gY2FyZ2FyIGVsIHZpYWplLiJ9LCJDb3VsZCBub3QgbG9hZCB0aGUgaG90ZWxzLiI6e2RlOiJEaWUgSG90ZWxzIGtvbm50ZW4gbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIixqYToi44Ob44OG44Or5LiA6Kan44KS6Kqt44G/6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7Zi47YWUIOuqqeuhneydhCDrtojrn6zsmKTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hhcmdlciBsZXMgaMO0dGVscy4iLGVzOiJObyBzZSBwdWRpZXJvbiBjYXJnYXIgbG9zIGhvdGVsZXMuIn0sIkNvdWxkIG5vdCBsb2FkIHRob3NlIGhvdGVscy4iOntkZToiRGllc2UgSG90ZWxzIGtvbm50ZW4gbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIixqYToi44GT44KM44KJ44Gu44Ob44OG44Or44KS6Kqt44G/6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7J20IO2YuO2FlOuTpOydhCDrtojrn6zsmKTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hhcmdlciBjZXMgaMO0dGVscy4iLGVzOiJObyBzZSBwdWRpZXJvbiBjYXJnYXIgZXNvcyBob3RlbGVzLiJ9LCJDb3VsZCBub3QgZmlsdGVyIHRoZSBsaXN0LiI6e2RlOiJEaWUgTGlzdGUga29ubnRlIG5pY2h0IGdlZmlsdGVydCB3ZXJkZW4uIixqYToi5LiA6Kan44KS57We44KK6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi66qp66Gd7J2EIO2VhO2EsOunge2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSBmaWx0cmVyIGxhIGxpc3RlLiIsZXM6Ik5vIHNlIHB1ZG8gZmlsdHJhciBsYSBsaXN0YS4ifSwiQ291bGQgbm90IHJlb3JkZXIgdGhlIGxpc3QuIjp7ZGU6IkRpZSBMaXN0ZSBrb25udGUgbmljaHQgbmV1IHNvcnRpZXJ0IHdlcmRlbi4iLGphOiLkuIDopqfjgpLkuKbjgbnmm7/jgYjjgonjgozjgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLrqqnroZ3snYQg64uk7IucIOygleugrO2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSB0cmllciBsYSBsaXN0ZS4iLGVzOiJObyBzZSBwdWRvIHJlb3JkZW5hciBsYSBsaXN0YS4ifSwiQ291bGQgbm90IGxvYWQgdGhlIGFkZC1vbnMuIjp7ZGU6IkRpZSBFeHRyYXMga29ubnRlbiBuaWNodCBnZWxhZGVuIHdlcmRlbi4iLGphOiLjgqrjg5fjgrfjg6fjg7PjgpLoqq3jgb/ovrzjgoHjgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLstpTqsIAg7ISc67mE7Iqk66W8IOu2iOufrOyYpOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSBjaGFyZ2VyIGxlcyBvcHRpb25zLiIsZXM6Ik5vIHNlIHB1ZGllcm9uIGNhcmdhciBsb3MgZXh0cmFzLiJ9LCJDb3VsZCBub3Qgd29yayBvdXQgdGhhdCBjaGFuZ2UuIjp7ZGU6IkRpZXNlIMOEbmRlcnVuZyBrb25udGUgbmljaHQgYmVyZWNobmV0IHdlcmRlbi4iLGphOiLjgZPjga7lpInmm7TjgpLoqIjnrpfjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsnbQg67OA6rK97J2EIOqzhOyCsO2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSBjYWxjdWxlciBjZXR0ZSBtb2RpZmljYXRpb24uIixlczoiTm8gc2UgcHVkbyBjYWxjdWxhciBlc2UgY2FtYmlvLiJ9LCJDb3VsZCBub3QgbG9hZCB0aGF0IHBvbGljeS4iOntkZToiRGllc2UgUmljaHRsaW5pZSBrb25udGUgbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIixqYToi44GT44Gu44Od44Oq44K344O844KS6Kqt44G/6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7J20IOygleyxheydhCDrtojrn6zsmKTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hhcmdlciBjZXR0ZSBjb25kaXRpb24uIixlczoiTm8gc2UgcHVkbyBjYXJnYXIgZXNhIHBvbMOtdGljYS4ifSwiQ291bGQgbm90IHdvcmsgb3V0IHRoZSBmZWUuIjp7ZGU6IkRpZSBHZWLDvGhyIGtvbm50ZSBuaWNodCBiZXJlY2huZXQgd2VyZGVuLiIsamE6IuOCreODo+ODs+OCu+ODq+aWmeOCkuioiOeul+OBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286Iuy3qOyGjCDsiJjsiJjro4zrpbwg6rOE7IKw7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGNhbGN1bGVyIGxlcyBmcmFpcy4iLGVzOiJObyBzZSBwdWRvIGNhbGN1bGFyIGVsIGNhcmdvLiJ9LCJDb3VsZCBub3QgY2FuY2VsIHRoYXQgYm9va2luZy4iOntkZToiRGllc2UgQnVjaHVuZyBrb25udGUgbmljaHQgc3Rvcm5pZXJ0IHdlcmRlbi4iLGphOiLjgZPjga7kuojntITjgpLjgq3jg6Pjg7Pjgrvjg6vjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsnbQg7JiI7JW97J2EIOy3qOyGjO2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBk4oCZYW5udWxlciBjZXR0ZSByw6lzZXJ2YXRpb24uIixlczoiTm8gc2UgcHVkbyBjYW5jZWxhciBlc2EgcmVzZXJ2YS4ifSwiQ291bGQgbm90IGNoYW5nZSB0aGF0IGJvb2tpbmcuIjp7ZGU6IkRpZXNlIEJ1Y2h1bmcga29ubnRlIG5pY2h0IGdlw6RuZGVydCB3ZXJkZW4uIixqYToi44GT44Gu5LqI57SE44KS5aSJ5pu044Gn44GN44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7J20IOyYiOyVveydhCDrs4Dqsr3tlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgbW9kaWZpZXIgY2V0dGUgcsOpc2VydmF0aW9uLiIsZXM6Ik5vIHNlIHB1ZG8gY2FtYmlhciBlc2EgcmVzZXJ2YS4ifSwiQ291bGQgbm90IGNsZWFyIHRoZSBmaWx0ZXJzLiI6e2RlOiJEaWUgRmlsdGVyIGtvbm50ZW4gbmljaHQgenVyw7xja2dlc2V0enQgd2VyZGVuLiIsamE6Iue1nuOCiui+vOOBv+OCkuOCr+ODquOCouOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286Iu2VhO2EsOulvCDstIjquLDtmZTtlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZOKAmWVmZmFjZXIgbGVzIGZpbHRyZXMuIixlczoiTm8gc2UgcHVkaWVyb24gYm9ycmFyIGxvcyBmaWx0cm9zLiJ9LCJCb3RoIHRoZSBjb25maXJtYXRpb24gY29kZSBhbmQgdGhlIGVtYWlsIHRoZSBib29raW5nIHdhcyBtYWRlIHdpdGgsIHBsZWFzZS4iOntkZToiQml0dGUgc293b2hsIGRlbiBCZXN0w6R0aWd1bmdzY29kZSBhbHMgYXVjaCBkaWUgYmVpIGRlciBCdWNodW5nIHZlcndlbmRldGUgRS1NYWlsIGFuZ2ViZW4uIixqYToi56K66KqN55Wq5Y+344Go5LqI57SE5pmC44Gu44Oh44O844Or44Ki44OJ44Os44K544KS5Lih5pa55YWl5Yqb44GX44Gm44GP44Gg44GV44GE44CCIixrbzoi7ZmV7J24IOuyiO2YuOyZgCDsmIjslb3tlaAg65WMIOyTtCDsnbTrqZTsnbzsnYQg66qo65GQIOyeheugpe2VtCDso7zshLjsmpQuIixmcjoiSW5kaXF1ZXogbGUgY29kZSBkZSBjb25maXJtYXRpb24gZXQgbOKAmWUtbWFpbCB1dGlsaXPDqSBwb3VyIGxhIHLDqXNlcnZhdGlvbiwgc+KAmWlsIHZvdXMgcGxhw650LiIsZXM6IkluZGlxdWUgZWwgY8OzZGlnbyBkZSBjb25maXJtYWNpw7NuIHkgZWwgY29ycmVvIGVsZWN0csOzbmljbyBjb24gZWwgcXVlIHNlIGhpem8gbGEgcmVzZXJ2YSwgcG9yIGZhdm9yLiJ9LCJDb3VsZCBub3QgbG9vayB0aGF0IHVwLiI6e2RlOiJEYXMga29ubnRlIG5pY2h0IGFiZ2VydWZlbiB3ZXJkZW4uIixqYToi5qSc57Si44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7KGw7ZqM7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGZhaXJlIGNldHRlIHJlY2hlcmNoZS4iLGVzOiJObyBzZSBwdWRvIGNvbnN1bHRhci4ifSwiVGhpcyBhcHAgY2Fubm90IG9wZW4gZnVsbCBzY3JlZW4gaGVyZS4iOntkZToiRGllc2UgQXBwIGthbm4gaGllciBuaWNodCBpbSBWb2xsYmlsZCBnZcO2ZmZuZXQgd2VyZGVuLiIsamE6IuOBk+OBk+OBp+OBr+WFqOeUu+mdouOBp+mWi+OBkeOBvuOBm+OCk+OAgiIsa286IuyXrOq4sOyEnOuKlCDsoITssrQg7ZmU66m07Jy866GcIOyXtCDsiJgg7JeG7Iq164uI64ukLiIsZnI6IkNldHRlIGFwcGxpY2F0aW9uIG5lIHBldXQgcGFzIHPigJlvdXZyaXIgZW4gcGxlaW4gw6ljcmFuIGljaS4iLGVzOiJFc3RhIGFwbGljYWNpw7NuIG5vIHNlIHB1ZWRlIGFicmlyIGEgcGFudGFsbGEgY29tcGxldGEgYXF1w60uIn0sIkNvdWxkIG5vdCBsb2FkIG1vcmUgaG90ZWxzLiI6e2RlOiJXZWl0ZXJlIEhvdGVscyBrb25udGVuIG5pY2h0IGdlbGFkZW4gd2VyZGVuLiIsamE6IuOBu+OBi+OBruODm+ODhuODq+OCkuiqreOBv+i+vOOCgeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286Iu2YuO2FlOydhCDrjZQg67aI65+s7Jik7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGNoYXJnZXIgcGx1cyBk4oCZaMO0dGVscy4iLGVzOiJObyBzZSBwdWRpZXJvbiBjYXJnYXIgbcOhcyBob3RlbGVzLiJ9LCJCb3RoIHRoZSBtZW1iZXJzaGlwIG51bWJlciBhbmQgdGhlIHN1cm5hbWUgb24gaXQsIHBsZWFzZS4iOntkZToiQml0dGUgc293b2hsIGRpZSBNaXRnbGllZHNudW1tZXIgYWxzIGF1Y2ggZGVuIE5hY2huYW1lbiBkYXJhdWYgYW5nZWJlbi4iLGphOiLkvJrlk6Hnlarlj7fjgajjgqvjg7zjg4njgavoqJjovInjga7lp5PjgpLkuKHmlrnlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiLtmozsm5Ag67KI7Zi47JmAIOy5tOuTnOyXkCDsoIHtnowg7ISx7J2EIOuqqOuRkCDsnoXroKXtlbQg7KO87IS47JqULiIsZnI6IkluZGlxdWV6IGxlIG51bcOpcm8gZGUgbWVtYnJlIGV0IGxlIG5vbSBxdWkgeSBmaWd1cmUsIHPigJlpbCB2b3VzIHBsYcOudC4iLGVzOiJJbmRpcXVlIGVsIG7Dum1lcm8gZGUgbWllbWJybyB5IGVsIGFwZWxsaWRvIHF1ZSBhcGFyZWNlLCBwb3IgZmF2b3IuIn0sIkNvdWxkIG5vdCBzaWduIGluLiI6e2RlOiJBbm1lbGR1bmcgZmVobGdlc2NobGFnZW4uIixqYToi44Ot44Kw44Kk44Oz44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi66Gc6re47J247ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJDb25uZXhpb24gaW1wb3NzaWJsZS4iLGVzOiJObyBzZSBwdWRvIGluaWNpYXIgc2VzacOzbi4ifSwiQ291bGQgbm90IGZvcmdldCB0aGVtLiI6e2RlOiJMw7ZzY2hlbiBmZWhsZ2VzY2hsYWdlbi4iLGphOiLliYrpmaTjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsgq3soJztlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgbGVzIG91YmxpZXIuIixlczoiTm8gc2UgcHVkaWVyb24gb2x2aWRhci4ifSwiQ291bGQgbm90IGRvIHRoYXQganVzdCBub3cuIjp7ZGU6IkRhcyBnaW5nIGdlcmFkZSBuaWNodC4iLGphOiLku4rjga/lrozkuobjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsp4DquIjsnYAg7JmE66OM7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIHBvdXIgbOKAmWluc3RhbnQuIixlczoiTm8gc2UgcHVkbyBoYWNlciBhaG9yYSBtaXNtby4ifSwiQ291bGQgbm90IHB1dCBhbGwgb2YgdGhlbSBpbiB0aGUgdHJpcCBqdXN0IG5vdy4iOntkZToiR2VyYWRlIGtvbm50ZW4gbmljaHQgYWxsZSBpbiBkaWUgUmVpc2Ugw7xiZXJub21tZW4gd2VyZGVuLiIsamE6IuS7iuOBr+OBmeOBueOBpuOCkuaXheeoi+OBq+i/veWKoOOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyngOq4iOydgCDrqqjrkZAg7J287KCV7JeQIOuEo+yngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSB0b3VzIGxlcyBham91dGVyIGF1IHZveWFnZSBwb3VyIGzigJlpbnN0YW50LiIsZXM6Ik5vIHNlIHB1ZGllcm9uIGHDsWFkaXIgdG9kb3MgYWwgdmlhamUgYWhvcmEgbWlzbW8uIn0sIkNvdWxkIG5vdCBzZW5kIHRoYXQgdG8gdGhlIGNoYXQuIjp7ZGU6IkRhcyBrb25udGUgbmljaHQgYW4gZGVuIENoYXQgZ2VzZW5kZXQgd2VyZGVuLiIsamE6IuODgeODo+ODg+ODiOOBq+mAgeS/oeOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyxhO2MheycvOuhnCDrs7TrgrTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZOKAmWVudm95ZXIgY2VsYSBkYW5zIGxhIGNvbnZlcnNhdGlvbi4iLGVzOiJObyBzZSBwdWRvIGVudmlhciBhbCBjaGF0LiJ9LCJQbGVhc2Ugc2hvdyBteSB0cmlwIGFnYWluLiI6e2RlOiJCaXR0ZSB6ZWlnZW4gU2llIG1laW5lIFJlaXNlIGVybmV1dCBhbi4iLGphOiLml4XnqIvjgpLjgoLjgYbkuIDluqbooajnpLrjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiLsoJwg7Jes7ZaJIOydvOygleydhCDri6Tsi5wg67O07JesIOyjvOyEuOyalC4iLGZyOiJNZXJjaSBkZSByw6lhZmZpY2hlciBtb24gdm95YWdlLiIsZXM6IlBvciBmYXZvciwgdnVlbHZlIGEgbW9zdHJhciBtaSB2aWFqZS4ifSwiQ291bGQgbm90IHNpZ24gb3V0LiI6e2RlOiJBYm1lbGR1bmcgZmVobGdlc2NobGFnZW4uIixqYToi44Ot44Kw44Ki44Km44OI44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi66Gc6re47JWE7JuD7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJEw6ljb25uZXhpb24gaW1wb3NzaWJsZS4iLGVzOiJObyBzZSBwdWRvIGNlcnJhciBzZXNpw7NuLiJ9LCJmdWxsIG5hbWUiOntkZToiTmFtZSIsamE6Iuawj+WQjSIsa286IuydtOumhCIsZnI6Im5vbSBjb21wbGV0Iixlczoibm9tYnJlIGNvbXBsZXRvIn0sIlJlcXVpcmVkOiB0aGUgZ3Vlc3QncyBmdWxsIG5hbWUsIGFzIG9uIHRoZWlyIElELiI6e2RlOiJQZmxpY2h0ZmVsZDogZGVyIHZvbGxzdMOkbmRpZ2UgTmFtZSBkZXMgR2FzdGVzIHdpZSBpbSBBdXN3ZWlzLiIsamE6IuW/hemgiO+8mui6q+WIhuiovOaYjuabuOOBqOWQjOOBmOWuv+aziuiAheOBruawj+WQjeOAgiIsa286Iu2VhOyImDog7Iug67aE7Kad6rO8IOqwmeydgCDtiKzsiJnqsJ0g7J2066aELiIsZnI6Ik9ibGlnYXRvaXJlIDogbGUgbm9tIGNvbXBsZXQgZHUgY2xpZW50LCBjb21tZSBzdXIgc2EgcGnDqGNlIGTigJlpZGVudGl0w6kuIixlczoiT2JsaWdhdG9yaW86IGVsIG5vbWJyZSBjb21wbGV0byBkZWwgaHXDqXNwZWQsIGNvbW8gZW4gc3UgZG9jdW1lbnRvIGRlIGlkZW50aWRhZC4ifSxlbWFpbDppXywiVGhhdCBlbWFpbCBoYXMgbm8g4oCcQOKAnSBpbiBpdCDigJQgdGhlIGNvbmZpcm1hdGlvbiBuZWVkcyBhbiBhZGRyZXNzIGl0IGNhbiByZWFjaC4iOntkZToiRGllc2UgRS1NYWlsIGVudGjDpGx0IGtlaW4g4oCeQOKAnCDigJQgZsO8ciBkaWUgQmVzdMOkdGlndW5nIGJyYXVjaHQgZXMgZWluZSBlcnJlaWNoYmFyZSBBZHJlc3NlLiIsamE6IuODoeODvOODq+OCouODieODrOOCueOBq+OAjEDjgI3jgYzjgYLjgorjgb7jgZvjgpPjgILnorroqo3jg6Hjg7zjg6vjgYzlsYrjgY/jgqLjg4njg6zjgrnjgpLlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiLsnbTrqZTsnbzsl5Ag4oCYQOKAmeqwgCDsl4bsirXri4jri6QuIO2ZleyduCDrqZTsnbzsnYQg67Cb7J2EIOyImCDsnojripQg7KO87IaM66W8IOyeheugpe2VmOyEuOyalC4iLGZyOiJDZXQgZS1tYWlsIG5lIGNvbnRpZW50IHBhcyBkZSDCqyBAIMK7IOKAlCBsYSBjb25maXJtYXRpb24gYSBiZXNvaW4gZOKAmXVuZSBhZHJlc3NlIGpvaWduYWJsZS4iLGVzOiJFc2UgY29ycmVvIG5vIHRpZW5lIMKrQMK7OiBsYSBjb25maXJtYWNpw7NuIG5lY2VzaXRhIHVuYSBkaXJlY2Npw7NuIGEgbGEgcXVlIHB1ZWRhIGxsZWdhci4ifSwiUmVxdWlyZWQ6IHlvdXIgZW1haWwuIFdpdGggaXQgYW5kIHRoZSBjb25maXJtYXRpb24gY29kZSwgeW91IGNhbiBmaW5kIHRoaXMgYm9va2luZyBhZ2FpbiBmcm9tIGFueSBjaGF0LiI6e2RlOiJQZmxpY2h0ZmVsZDogSWhyZSBFLU1haWwuIE1pdCBpaHIgdW5kIGRlbSBCZXN0w6R0aWd1bmdzY29kZSBmaW5kZW4gU2llIGRpZXNlIEJ1Y2h1bmcgaW4gamVkZW0gQ2hhdCB3aWVkZXIuIixqYToi5b+F6aCI77ya44Oh44O844Or44Ki44OJ44Os44K544CC56K66KqN55Wq5Y+344Go5ZCI44KP44Gb44Gm44CB44Gp44Gu44OB44Oj44OD44OI44GL44KJ44Gn44KC44GT44Gu5LqI57SE44KS5o6i44Gb44G+44GZ44CCIixrbzoi7ZWE7IiYOiDsnbTrqZTsnbwuIOydtOuplOydvOqzvCDtmZXsnbgg67KI7Zi466GcIOyWtOuWpCDssYTtjIXsl5DshJzrk6Ag7J20IOyYiOyVveydhCDri6Tsi5wg7LC+7J2EIOyImCDsnojsirXri4jri6QuIixmcjoiT2JsaWdhdG9pcmUgOiB2b3RyZSBlLW1haWwuIEF2ZWMgbHVpIGV0IGxlIGNvZGUgZGUgY29uZmlybWF0aW9uLCB2b3VzIHJldHJvdXZlcmV6IGNldHRlIHLDqXNlcnZhdGlvbiBkZXB1aXMgbuKAmWltcG9ydGUgcXVlbGxlIGNvbnZlcnNhdGlvbi4iLGVzOiJPYmxpZ2F0b3Jpbzogc3UgY29ycmVvIGVsZWN0csOzbmljby4gQ29uIMOpbCB5IGVsIGPDs2RpZ28gZGUgY29uZmlybWFjacOzbiBwdWVkZSB2b2x2ZXIgYSBlbmNvbnRyYXIgZXN0YSByZXNlcnZhIGRlc2RlIGN1YWxxdWllciBjaGF0LiJ9LHBob25lOmNfLCJSZXF1aXJlZDogYSBwaG9uZSBudW1iZXIsIHNvIHRoZSBob3RlbCBjYW4gcmVhY2ggeW91LiI6e2RlOiJQZmxpY2h0ZmVsZDogZWluZSBUZWxlZm9ubnVtbWVyLCBkYW1pdCBkYXMgSG90ZWwgU2llIGVycmVpY2hlbiBrYW5uLiIsamE6IuW/hemgiO+8muODm+ODhuODq+OBi+OCiemAo+e1oeOBp+OBjeOCi+mbu+ipseeVquWPt+OAgiIsa286Iu2VhOyImDog7Zi47YWU7J20IOyXsOudve2VoCDsiJgg7J6I64qUIOyghO2ZlOuyiO2YuC4iLGZyOiJPYmxpZ2F0b2lyZSA6IHVuIG51bcOpcm8gZGUgdMOpbMOpcGhvbmUsIHBvdXIgcXVlIGzigJlow7R0ZWwgcHVpc3NlIHZvdXMgam9pbmRyZS4iLGVzOiJPYmxpZ2F0b3JpbzogdW4gbsO6bWVybyBkZSB0ZWzDqWZvbm8gcGFyYSBxdWUgZWwgaG90ZWwgcHVlZGEgY29udGFjdGFybGUuIn0sIkNvdWxkIG5vdCBhc2sgZm9yIHRob3NlIHJvb21zLiI6e2RlOiJEaWVzZSBaaW1tZXIga29ubnRlbiBuaWNodCBhbmdlZnJhZ3Qgd2VyZGVuLiIsamE6IuOBk+OBruWuouWupOOCkuS6iOe0hOS+nemgvOOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuydtCDqsJ3si6TsnYQg7JqU7LKt7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGRlbWFuZGVyIGNlcyBjaGFtYnJlcy4iLGVzOiJObyBzZSBwdWRpZXJvbiBzb2xpY2l0YXIgZXNhcyBoYWJpdGFjaW9uZXMuIn0sIkNvdWxkIG5vdCBvcGVuIHRoZSBwYXltZW50IHBhZ2UuIjp7ZGU6IkRpZSBaYWhsdW5nc3NlaXRlIGtvbm50ZSBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuLiIsamE6IuaUr+aJleOBhOODmuODvOOCuOOCkumWi+OBkeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuqysOygnCDtjpjsnbTsp4Drpbwg7Je07KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGTigJlvdXZyaXIgbGEgcGFnZSBkZSBwYWllbWVudC4iLGVzOiJObyBzZSBwdWRvIGFicmlyIGxhIHDDoWdpbmEgZGUgcGFnby4ifSwiQ291bGQgbm90IGxvYWQgeW91ciBib29raW5ncy4iOntkZToiSWhyZSBCdWNodW5nZW4ga29ubnRlbiBuaWNodCBnZWxhZGVuIHdlcmRlbi4iLGphOiLkuojntITkuIDopqfjgpLoqq3jgb/ovrzjgoHjgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLrgrQg7JiI7JW97J2EIOu2iOufrOyYpOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSBjaGFyZ2VyIHZvcyByw6lzZXJ2YXRpb25zLiIsZXM6Ik5vIHNlIHB1ZGllcm9uIGNhcmdhciBzdXMgcmVzZXJ2YXMuIn0sIkNvdWxkIG5vdCBsb2FkIHRoYXQgaG90ZWwuIjp7ZGU6IkRpZXNlcyBIb3RlbCBrb25udGUgbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIixqYToi44GT44Gu44Ob44OG44Or44KS6Kqt44G/6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7J20IO2YuO2FlOydhCDrtojrn6zsmKTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hhcmdlciBjZXQgaMO0dGVsLiIsZXM6Ik5vIHNlIHB1ZG8gY2FyZ2FyIGVzZSBob3RlbC4ifSwiV2hlcmUgdG8/IEEgY2l0eSwgYSBjb3VudHJ5IG9yIGEgaG90ZWwuIjp7ZGU6IldvaGluPyBFaW5lIFN0YWR0LCBlaW4gTGFuZCBvZGVyIGVpbiBIb3RlbC4iLGphOiLjganjgZPjgbjvvJ/pg73luILjg7vlm73jg7vjg5vjg4bjg6vlkI3jgpLlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiLslrTrlJTroZwg6rCA7Iuc64KY7JqUPyDrj4Tsi5wsIOq1reqwgCDrmJDripQg7Zi47YWU7J2EIOyeheugpe2VmOyEuOyalC4iLGZyOiJPw7kgPyBVbmUgdmlsbGUsIHVuIHBheXMgb3UgdW4gaMO0dGVsLiIsZXM6IsK/QSBkw7NuZGU/IFVuYSBjaXVkYWQsIHVuIHBhw61zIG8gdW4gaG90ZWwuIn0sIkNvdWxkIG5vdCBzZWFyY2gganVzdCBub3cuIjp7ZGU6IkRpZSBTdWNoZSBnaW5nIGdlcmFkZSBuaWNodC4iLGphOiLku4rjga/mpJzntKLjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsp4DquIjsnYAg6rKA7IOJ7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJSZWNoZXJjaGUgaW1wb3NzaWJsZSBwb3VyIGzigJlpbnN0YW50LiIsZXM6Ik5vIHNlIHB1ZG8gYnVzY2FyIGFob3JhIG1pc21vLiJ9LCJDb3VsZCBub3QgcHJpY2UgdGhvc2UgbmlnaHRzLiI6e2RlOiJGw7xyIGRpZXNlIE7DpGNodGUga29ubnRlIGtlaW4gUHJlaXMgZXJtaXR0ZWx0IHdlcmRlbi4iLGphOiLjgZPjga7ml6XnqIvjga7mlpnph5HjgpLlj5blvpfjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsnbQg64Kg7Kec7J2YIOyalOq4iOydhCDsobDtmoztlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hpZmZyZXIgY2VzIG51aXRzLiIsZXM6Ik5vIHNlIHB1ZG8gY290aXphciBlc2FzIG5vY2hlcy4ifSwiVGhpcyBjYXJkIGNvdWxkIG5vdCBiZSBkcmF3bi4gQXNrIGFnYWluIGluIHRoZSBjaGF0LiI6e2RlOiJEaWVzZSBLYXJ0ZSBrb25udGUgbmljaHQgYW5nZXplaWd0IHdlcmRlbi4gRnJhZ2VuIFNpZSBpbSBDaGF0IG5vY2ggZWlubWFsLiIsamE6IuOBk+OBruOCq+ODvOODieOCkuihqOekuuOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAguODgeODo+ODg+ODiOOBp+OCguOBhuS4gOW6puOBiuWwi+OBreOBj+OBoOOBleOBhOOAgiIsa286IuydtCDsubTrk5zrpbwg7ZGc7Iuc7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4g7LGE7YyF7JeQ7IScIOuLpOyLnCDsmpTssq3tlZjshLjsmpQuIixmcjoiQ2V0dGUgY2FydGUgbuKAmWEgcGFzIHB1IHPigJlhZmZpY2hlci4gUmVkZW1hbmRleiBkYW5zIGxhIGNvbnZlcnNhdGlvbi4iLGVzOiJObyBzZSBwdWRvIG1vc3RyYXIgZXN0YSB0YXJqZXRhLiBWdWVsdmEgYSBwcmVndW50YXIgZW4gZWwgY2hhdC4ifSwiQ291bGQgbm90IGNvbm5lY3QgdG8gdGhlIGhvc3QuIjp7ZGU6IktlaW5lIFZlcmJpbmR1bmcgenVyIEhvc3QtQXBwLiIsamE6IuODm+OCueODiOOBq+aOpee2muOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286Iu2YuOyKpO2KuOyXkCDsl7DqsrDtlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkNvbm5leGlvbiDDoCBs4oCZYXBwbGljYXRpb24gaMO0dGUgaW1wb3NzaWJsZS4iLGVzOiJObyBzZSBwdWRvIGNvbmVjdGFyIGNvbiBsYSBhcGxpY2FjacOzbiBhbmZpdHJpb25hLiJ9LCJQYXJ0aWFsIHdpbmRvdyI6e2RlOiJUZWlsd2Vpc2UgbWl0IEZlbnN0ZXIiLGphOiLkuIDpg6jnqpPjgYLjgooiLGtvOiLsnbzrtoAg7LC966y4IixmcjoiRmVuw6p0cmUgcGFydGllbGxlIixlczoiVmVudGFuYSBwYXJjaWFsIn0sIklubmVyIHdpbmRvdywgb250byBhIGNvdXJ0eWFyZCI6e2RlOiJJbm5lbmZlbnN0ZXIgenVtIExpY2h0aG9mIixqYToi5YaF56qT77yI5ZC544GN5oqc44GR5YG077yJIixrbzoi64K067aAIOywvSAo7KSR7KCVIOuwqe2WpSkiLGZyOiJGZW7DqnRyZSBpbnTDqXJpZXVyZSwgc3VyIGNvdXIiLGVzOiJWZW50YW5hIGludGVyaW9yLCBhIHVuIHBhdGlvIn0sIkJyZWFrZmFzdCBmb3IgezB9Ijp7ZGU6IkZyw7xoc3TDvGNrIGbDvHIgezB9IixqYToi5pyd6aOfezB95ZCN5YiGIixrbzoi7KGw7IudIHswfeyduCIsZnI6IlBldGl0LWTDqWpldW5lciBwb3VyIHswfSIsZXM6IkRlc2F5dW5vIHBhcmEgezB9In0sIkJ1ZmZldCBicmVha2Zhc3QgZm9yIHswfSI6e2RlOiJGcsO8aHN0w7xja3NidWZmZXQgZsO8ciB7MH0iLGphOiLmnJ3po5/jg5Pjg6Xjg4Pjg5Xjgqd7MH3lkI3liIYiLGtvOiLsobDsi50g67eU7Y6YIHswfeyduCIsZnI6IlBldGl0LWTDqWpldW5lciBidWZmZXQgcG91ciB7MH0iLGVzOiJEZXNheXVubyBidWbDqSBwYXJhIHswfSJ9LCJCdWZmZXQgYnJlYWtmYXN0Ijp7ZGU6IkZyw7xoc3TDvGNrc2J1ZmZldCIsamE6Iuacnemjn+ODk+ODpeODg+ODleOCp+S7mOOBjSIsa286IuyhsOyLnSDrt5Ttjpgg7Y+s7ZWoIixmcjoiUGV0aXQtZMOpamV1bmVyIGJ1ZmZldCIsZXM6IkRlc2F5dW5vIGJ1ZsOpIn0sIkhhbGYgYm9hcmQgZm9yIHswfSI6e2RlOiJIYWxicGVuc2lvbiBmw7xyIHswfSIsamE6IjLpo5/ku5jjgY3vvIh7MH3lkI3liIbvvIkiLGtvOiLtlZjtlIQg67O065OcIHswfeyduCIsZnI6IkRlbWktcGVuc2lvbiBwb3VyIHswfSIsZXM6Ik1lZGlhIHBlbnNpw7NuIHBhcmEgezB9In0sIkhhbGYgYm9hcmQiOntkZToiSGFsYnBlbnNpb24iLGphOiIy6aOf5LuY44GNIixrbzoi7ZWY7ZSEIOuztOuTnCIsZnI6IkRlbWktcGVuc2lvbiIsZXM6Ik1lZGlhIHBlbnNpw7NuIn0sIkZ1bGwgYm9hcmQgZm9yIHswfSI6e2RlOiJWb2xscGVuc2lvbiBmw7xyIHswfSIsamE6IjPpo5/ku5jjgY3vvIh7MH3lkI3liIbvvIkiLGtvOiLtkoAg67O065OcIHswfeyduCIsZnI6IlBlbnNpb24gY29tcGzDqHRlIHBvdXIgezB9IixlczoiUGVuc2nDs24gY29tcGxldGEgcGFyYSB7MH0ifSwiRnVsbCBib2FyZCI6e2RlOiJWb2xscGVuc2lvbiIsamE6IjPpo5/ku5jjgY0iLGtvOiLtkoAg67O065OcIixmcjoiUGVuc2lvbiBjb21wbMOodGUiLGVzOiJQZW5zacOzbiBjb21wbGV0YSJ9LCJBbGwgaW5jbHVzaXZlIGZvciB7MH0iOntkZToiQWxsLWluY2x1c2l2ZSBmw7xyIHswfSIsamE6IuOCquODvOODq+OCpOODs+OCr+ODq+ODvOOCt+ODlu+8iHswfeWQjeWIhu+8iSIsa286IuyYrOyduO2BtOujqOyLnOu4jCB7MH3snbgiLGZyOiJUb3V0IGNvbXByaXMgcG91ciB7MH0iLGVzOiJUb2RvIGluY2x1aWRvIHBhcmEgezB9In0sIkFsbCBpbmNsdXNpdmUiOntkZToiQWxsLWluY2x1c2l2ZSIsamE6IuOCquODvOODq+OCpOODs+OCr+ODq+ODvOOCt+ODliIsa286IuyYrOyduO2BtOujqOyLnOu4jCIsZnI6IlRvdXQgY29tcHJpcyIsZXM6IlRvZG8gaW5jbHVpZG8ifSwiU2luZ2xlIGJlZCI6e2RlOiJFaW56ZWxiZXR0IixqYToi44K344Oz44Kw44Or44OZ44OD44OJIixrbzoi7Iux6riAIOuyoOuTnCIsZnI6IkxpdCBzaW1wbGUiLGVzOiJDYW1hIGluZGl2aWR1YWwifX0sdV89eyIgwrcgezB95ZCr56iO5oC75Lu3IjoiIMK3IHswfeWQq+eohee4veWDuSIsIiDCtyDlj6/luKYgezB9IOWQjeWEv+erpSI6IiDCtyDlj6/luLYgezB9IOWQjeWFkuerpSIsIiDCtyDlj6/luKYgMSDlkI3lhL/nq6UiOiIgwrcg5Y+v5bi2IDEg5ZCN5YWS56ulIiwiIOi1ty/mmZoiOiIg6LW3L+aZmiIsIu+8jHswfSDliY0iOiLvvIx7MH0g5YmNIiwi77yMezB9IOauteehruiupOS4rSI6Iu+8jHswfSDmrrXnorroqo3kuK0iLCLvvIx7MH3otbciOiLvvIx7MH3otbciLCLvvIzkuIvkuIDmraXku5jmrL4iOiLvvIzkuIvkuIDmraXku5jmrL4iLCLvvIzlhaXkvY8iOiLvvIzlhaXkvY8iLCLvvIzmnIDkvY7ku7ciOiLvvIzmnIDkvY7lg7kiLCLvvIzlt7Lmu6EiOiLvvIzlt7Lmu78iLCLvvIzmraTku7fmoLzorqLlkI7kuI3og73pgIDmlLkiOiLvvIzmraTlg7nmoLzoqILlvozkuI3og73pgIDmlLkiLCLvvIznprvlupciOiLvvIzpm6LlupciLCLjgIEiOiLjgIEiLCLjgIF7MH0g56eN5Lu35qC8Ijoi44CBezB9IOeoruWDueagvCIsIu+8m+WPpuaciSB7MH0g5q615rKh6K6i5oiQ77yM6KeB5LiL5pa5Ijoi77yb5Y+m5pyJIHswfSDmrrXmspLoqILmiJDvvIzopovkuIvmlrkiLCLvvJvlj6bmnIkgMSDmrrXmsqHorqLmiJDvvIzop4HkuIvmlrkiOiLvvJvlj6bmnIkgMSDmrrXmspLoqILmiJDvvIzopovkuIvmlrkiLCLvvJoiOiLvvJoiLCLjgIIiOiLjgIIiLCLigJx7MH3igJ3lr7nlupTkuI3mraLkuIDlrrbphZLlupfvvJoiOiLigJx7MH3igJ3lsI3mh4nkuI3mraLkuIDlrrbphZLlupfvvJoiLCLigJx7MH3igJ3msqHmnInnu5PmnpwiOiLigJx7MH3igJ3mspLmnInntZDmnpwiLCJ7MH0gwrcg5LyY5oOgIHsxfSUiOiJ7MH0gwrcg5YSq5oOgIHsxfSUiLCJ7MH0gwrcg6YCJ5aW95Yiw5bqX5pe26Ze0IMK3IOWQq+eojui0uSI6InswfSDCtyDpgbjlpb3liLDlupfmmYLplpMgwrcg5ZCr56iF6LK7IiwiezB9IOS4jeiDveS9nOS4uuWIsOW6l+aXtumXtOOAgiI6InswfSDkuI3og73kvZzngrrliLDlupfmmYLplpPjgIIiLCJ7MH0g5Lq6IMK3IDEg6Ze0IjoiezB9IOS6uiDCtyAxIOmWkyIsInswfSDlkKvnqI4iOiJ7MH0g5ZCr56iFIiwiezB9IOWutiI6InswfSDlrrYiLCJ7MH0g5a625a+55q+UIjoiezB9IOWutuWwjeavlCIsInswfSDlrrbphZLlupciOiJ7MH0g5a626YWS5bqXIiwiezB9IOWutumFkuW6l++8jOaMieS9oOmAieeahOaXpeacn+aKpeS7t+OAgiI6InswfSDlrrbphZLlupfvvIzmjInkvaDpgbjnmoTml6XmnJ/loLHlg7njgIIiLCJ7MH0g5a626YWS5bqX77yM5p2l6IeqIHsxfSDkuKrpm4blm6LvvIzmjInkvaDpgInnmoTml6XmnJ/miqXku7fjgIIiOiJ7MH0g5a626YWS5bqX77yM5L6G6IeqIHsxfSDlgIvpm4blnJjvvIzmjInkvaDpgbjnmoTml6XmnJ/loLHlg7njgIIiLCJ7MH0g5oC75Lu3IjoiezB9IOe4veWDuSIsInswfSDmrrXpg73msqHog73pooTorqLvvIzmsqHmnInmiaPmrL7jgIIiOiJ7MH0g5q616YO95rKS6IO96aCQ6KiC77yM5rKS5pyJ5omj5qy+44CCIiwiezB9IOautemHjOiuouaIkCB7MX0g5q6177yM5q+P5q615LiA5Liq56Gu6K6k56CBIjoiezB9IOauteijoeioguaIkCB7MX0g5q6177yM5q+P5q615LiA5YCL56K66KqN56K8IiwiezB9IOavj+aZmiI6InswfSDmr4/mmZoiLCJ7MH0g55qE6ZmE5Yqg5pyN5YqhIjoiezB9IOeahOmZhOWKoOacjeWLmSIsInswfSDnp43ku7fmoLwiOiJ7MH0g56iu5YO55qC8IiwiezB9IOenjeWPr+S9jyB7MX0g5Lq655qE5oi/5Z6LIjoiezB9IOeoruWPr+S9jyB7MX0g5Lq655qE5oi/5Z6LIiwiezB9IOenjeaIv+WeiyI6InswfSDnqK7miL/lnosiLCJ7MH0g56ev5YiGIjoiezB9IOepjeWIhiIsInswfSDnrJTpooTorqIiOiJ7MH0g562G6aCQ6KiCIiwiezB9IOmhuSI6InswfSDpoIUiLCJ7MH3igJN7MX0gwrcgezJ9IOWJjeemu+W6lyI6InswfeKAk3sxfSDCtyB7Mn0g5YmN6Zui5bqXIiwiezB977yM5ZCr56iO6LS5IjoiezB977yM5ZCr56iF6LK7IiwiezB977yM6ZqP5L2P5a6/5LiA6LW36K6i77yM5LiN6K6h5YWl5oC75Lu3IjoiezB977yM6Zqo5L2P5a6/5LiA6LW36KiC77yM5LiN6KiI5YWl57i95YO5IiwiezB977yM6aKE6K6i5pe25Lya6Ieq5Yqo5Yu+6YCJ77yM5Y+q5Zyo5L2g55So5a6D5Lus6aKE6K6i5pe25omN5o+Q5Ye644CCIjoiezB977yM6aCQ6KiC5pmC5pyD6Ieq5YuV5Yu+6YG477yM5Y+q5Zyo5L2g55So5a6D5YCR6aCQ6KiC5pmC5omN5o+Q5Ye644CCIiwiezB944CBezF96Ze077yM5ZCr56iO6LS5IjoiezB944CBezF96ZaT77yM5ZCr56iF6LK7IiwiezB944CBezF96Ze05oC75Lu377yM5ZCr56iO6LS5IjoiezB944CBezF96ZaT57i95YO577yM5ZCr56iF6LK7IiwiezB944CBezF96Ze055qE5ZCr56iO5oC75Lu3IjoiezB944CBezF96ZaT55qE5ZCr56iF57i95YO5IiwiezB977yI6YWS5bqX5b2T5Zyw5pe26Ze077yJIjoiezB977yI6YWS5bqX55W25Zyw5pmC6ZaT77yJIiwiezB95LiN6IO95YWl5L2P44CCIjoiezB95LiN6IO95YWl5L2P44CCIiwiezB95LiN6IO96YCA5oi/44CCIjoiezB95LiN6IO96YCA5oi/44CCIiwiezB95Lu3IjoiezB95YO5IiwiezB95Lya5ZGY77yfIjoiezB95pyD5ZOh77yfIiwiezB95Lya5ZGY5Lu3IjoiezB95pyD5ZOh5YO5IiwiezB95L2NIjoiezB95L2NIiwiezB95YWl5L2PIjoiezB95YWl5L2PIiwiezB95YWo6YOoIHsxfSDlrrYiOiJ7MH3lhajpg6ggezF9IOWutiIsInswfeWcqOi/meS6m+aXpeacn+ayoeaciei/meS4quaIv+Wei++8jOWPr+iuoueahOacie+8mnsxfeOAgiI6InswfeWcqOmAmeS6m+aXpeacn+aykuaciemAmeWAi+aIv+Wei++8jOWPr+iogueahOacie+8mnsxfeOAgiIsInswfeWcqOi/meS6m+aXpeacn+ayoeaciei/meS4quaIv+Wei+OAguS4i+mdoui/meS6m+WPr+S7peiuou+8jOeCueS4gOS4i+WNs+WPr+mihOiuou+8miI6InswfeWcqOmAmeS6m+aXpeacn+aykuaciemAmeWAi+aIv+Wei+OAguS4i+mdoumAmeS6m+WPr+S7peiogu+8jOm7nuS4gOS4i+WNs+WPr+mgkOiogu+8miIsInswfeWwj+aXtiI6InswfeWwj+aZgiIsInswfeaAu+S7t++8jOWQq+eojui0uSI6Inswfee4veWDue+8jOWQq+eoheiyuyIsInswfeaXqSI6InswfeaXqSIsInswfeaYr3sxfeS4uuS9j+WuouaPkOS+m+eahOacjeWKoe+8jOimgeWSjOmCo+mHjOeahOaIv+mXtOS4gOi1t+iuou+8jOaIluWKoOWIsOS9oOW3suacieeahOmihOiuouS4iuOAgiI6InswfeaYr3sxfeeCuuS9j+WuouaPkOS+m+eahOacjeWLme+8jOimgeWSjOmCo+ijoeeahOaIv+mWk+S4gOi1t+iogu+8jOaIluWKoOWIsOS9oOW3suacieeahOmgkOioguS4iuOAgiIsInswfeaZmiI6InswfeaZmiIsInswfeayoeacieWFrOW4g+i/meaWuemdoueahOaUv+etluOAgiI6InswfeaykuacieWFrOS9iOmAmeaWuemdoueahOaUv+etluOAgiIsInswfeeahOWQq+eojuaAu+S7tyI6InswfeeahOWQq+eohee4veWDuSIsInswfeeahOaIv+mXtCI6InswfeeahOaIv+mWkyIsInswfemXtCI6InswfemWkyIsInswfemXtCDDlyI6InswfemWkyDDlyIsInswfemZhOWKoOacjeWKoSI6InswfemZhOWKoOacjeWLmSIsIjxiPuWQq+aXqemkkDwvYj4iOiI8Yj7lkKvml6nppJA8L2I+IiwnPHNwYW4gY2xhc3M9InQtcHJlIj4g6LW3PC9zcGFuPic6JzxzcGFuIGNsYXNzPSJ0LXByZSI+IOi1tzwvc3Bhbj4nLCIxIOS6uiDCtyAxIOmXtCI6IjEg5Lq6IMK3IDEg6ZaTIiwiMSDlrrYiOiIxIOWutiIsIjEg56eN5Lu35qC8IjoiMSDnqK7lg7nmoLwiLCIxIOenjeWPr+S9jyB7MH0g5Lq655qE5oi/5Z6LIjoiMSDnqK7lj6/kvY8gezB9IOS6uueahOaIv+WeiyIsIjEg56eN5oi/5Z6LIjoiMSDnqK7miL/lnosiLCIxIOeslOmihOiuoiI6IjEg562G6aCQ6KiCIiwiMSDpobkiOiIxIOmghSIsIjHkvY0iOiIx5L2NIiwiMeWwj+aXtiI6IjHlsI/mmYIiLCIx5pmaIjoiMeaZmiIsIjHpl7QiOiIx6ZaTIiwiMjI6MDAg5Lul5ZCOIjoiMjI6MDAg5Lul5b6MIiwi5LiA5qyh5pyA5aSa6K6iIHswfSDmmZrjgIIiOiLkuIDmrKHmnIDlpJroqIIgezB9IOaZmuOAgiIsIuS4gOasoeiuouS4jeS6hui/meS5iOWkmuaZmuOAgiI6IuS4gOasoeioguS4jeS6humAmem6vOWkmuaZmuOAgiIsIuS4gOasoeiuouS4jeS6hui/meS5iOWkmumXtO+8jOivt+WwkeiuouWHoOmXtOOAgiI6IuS4gOasoeioguS4jeS6humAmem6vOWkmumWk++8jOiri+WwkeioguW5vumWk+OAgiIsIuS4gOmXtOacgOWkmuS9jyB7MH0g5Lq677yM5Lq65pu05aSa6K+355u05o6l6IGU57O76YWS5bqX44CCIjoi5LiA6ZaT5pyA5aSa5L2PIHswfSDkurrvvIzkurrmm7TlpJroq4vnm7TmjqXoga/ntaHphZLlupfjgIIiLOS4ieaXqToi5LiJ5pepIizkuIrkuIDpobU6IuS4iuS4gOmggSIs5LiK5Liq5pyIOiLkuIrlgIvmnIgiLCLkuIvkuIDmraXmmK/lronlhajku5jmrL7pobXvvIzljaHlj7flj6rlnKjpgqPph4zloavlhpnjgILku5jmrL7miJDlip/liY3kuI3kvJrlnKh7MH3pooTorqLvvJvorqLkuI3miJDkvJrlhajpop3pgIDlm57jgIIiOiLkuIvkuIDmraXmmK/lronlhajku5jmrL7poIHvvIzljaHomZ/lj6rlnKjpgqPoo6Hloavlr6vjgILku5jmrL7miJDlip/liY3kuI3mnIPlnKh7MH3poJDoqILvvJvoqILkuI3miJDmnIPlhajpoY3pgIDlm57jgIIiLCLkuIvkuIDmraXmmK/mtYvor5XmqKHlvI/nmoTku5jmrL7pobXvvIzkuI3kvJrnnJ/lrp7miaPmrL7jgILljaHlj7flj6rlnKjku5jmrL7pobXloavlhpnvvIzku5jmrL7miJDlip/liY3kuI3kvJrpooTorqLjgIIiOiLkuIvkuIDmraXmmK/muKzoqabmqKHlvI/nmoTku5jmrL7poIHvvIzkuI3mnIPnnJ/lr6bmiaPmrL7jgILljaHomZ/lj6rlnKjku5jmrL7poIHloavlr6vvvIzku5jmrL7miJDlip/liY3kuI3mnIPpoJDoqILjgIIiLOS4i+S4gOmhtToi5LiL5LiA6aCBIizkuIvkuKrmnIg6IuS4i+WAi+aciCIs5LiN5Y+W5raI5LqGOiLkuI3lj5bmtojkuoYiLOS4jeWPr+WPlua2iDoi5LiN5Y+v5Y+W5raIIizkuI3lkKs6IuS4jeWQqyIs5LiN5ZCr5pepOiLkuI3lkKvml6kiLOS4jeaUueS6hjoi5LiN5pS55LqGIiwi5LiN55So57uR5Y2h77yM5Lmf5LiN5omj5qy+44CC5YWl5L2P5pe25Zyo5YmN5Y+w5Ye656S66ZO26KGM5Y2h5Y2z5Y+v44CCIjoi5LiN55So57aB5Y2h77yM5Lmf5LiN5omj5qy+44CC5YWl5L2P5pmC5Zyo5YmN6Ie65Ye656S66YqA6KGM5Y2h5Y2z5Y+v44CCIiwi5LiN55So57uR5Y2h77yM5Lmf5LiN5omj5qy+44CC6L+Z5piv5ZyoezB955qE6aKE6K6i77yM5Yiw5bqX5LuY5qy+44CCIjoi5LiN55So57aB5Y2h77yM5Lmf5LiN5omj5qy+44CC6YCZ5piv5ZyoezB955qE6aCQ6KiC77yM5Yiw5bqX5LuY5qy+44CCIiwi5LiN55So57uR5Y2h77yM5Lmf5LiN5omj5qy+44CC6L+Z5piv5ryU56S677yMezB95LiN5Lya5pS25Yiw77yM5Lmf5LiN5L+d55WZ5oi/6Ze044CCIjoi5LiN55So57aB5Y2h77yM5Lmf5LiN5omj5qy+44CC6YCZ5piv5ryU56S677yMezB95LiN5pyD5pS25Yiw77yM5Lmf5LiN5L+d55WZ5oi/6ZaT44CCIiwi5LiN6ZyA6KaB5a+G56CB77yM5Lmf5LiN5Lya5L+d5a2Y5Lu75L2V5a+G56CB44CC55m75b2V5ZCO5pi+56S65Lya5ZGY5Lu377yM5LiN5Lya5omj5qy+44CCIjoi5LiN6ZyA6KaB5a+G56K877yM5Lmf5LiN5pyD5YSy5a2Y5Lu75L2V5a+G56K844CC55m75YWl5b6M6aGv56S65pyD5ZOh5YO577yM5LiN5pyD5omj5qy+44CCIizkuI7or4Hku7bkuIDoh7Q6IuiIh+itieS7tuS4gOiHtCIs5Li66L+Z5qyh5L2P5a6/5Yqg6LStOiLngrrpgJnmrKHkvY/lrr/liqDos7wiLOS6uuaVsDoi5Lq65pW4IizkurrmlbDlkozpl7TmlbA6IuS6uuaVuOWSjOmWk+aVuCIsIuS7heWJqSB7MH0g6Ze0Ijoi5YOF5YmpIHswfSDplpMiLOS7heiuoeWIkjoi5YOF6KiI5YqDIiwi5LuK5aSpIHswfSDlvIDljZYiOiLku4rlpKkgezB9IOmWi+izoyIsIuS7iuWkqXswfSI6IuS7iuWkqXswfSIs5LuK5aSp5rKh5pyJ6ZKf54K55oi/OiLku4rlpKnmspLmnInpkJjpu57miL8iLCLku4rlpKnnmoTpkp/ngrnmiL8gezB9IOW8gOWNluOAgiI6IuS7iuWkqeeahOmQmOm7nuaIvyB7MH0g6ZaL6LOj44CCIiwi5LuK5aSp55qE6ZKf54K55oi/77yM5ZCr56iO5Lu3Ijoi5LuK5aSp55qE6ZCY6bue5oi/77yM5ZCr56iF5YO5Iiwi5LuK5aSp55qE6ZKf54K55oi/77yM6YCJ5LiA5a625YaN5oyR5Yiw5bqX5pe26Ze044CCIjoi5LuK5aSp55qE6ZCY6bue5oi/77yM6YG45LiA5a625YaN5oyR5Yiw5bqX5pmC6ZaT44CCIiwi5LuK5aSp55qE6ZKf54K55oi/5bey57uP57uT5p2f5LqG77yM5pyA5pmaIHswfSDlvIDlp4vjgIIiOiLku4rlpKnnmoTpkJjpu57miL/lt7LntpPntZDmnZ/kuobvvIzmnIDmmZogezB9IOmWi+Wni+OAgiIsIuS7iuWkqeeahOmSn+eCueaIv+W3sue7j+e7k+adn+S6huOAgiI6IuS7iuWkqeeahOmQmOm7nuaIv+W3sue2k+e1kOadn+S6huOAgiIs5LuK5aSp55qE6ZKf54K55oi/5bey57uT5p2fOiLku4rlpKnnmoTpkJjpu57miL/lt7LntZDmnZ8iLOS7iuWkqeeahOmSn+eCueaIv+W3suiuoua7oToi5LuK5aSp55qE6ZCY6bue5oi/5bey6KiC5ru/Iiwi5LuK5aSp55qE6ZKf54K55oi/6L+Y5rKh5byA5Y2W44CCIjoi5LuK5aSp55qE6ZCY6bue5oi/6YKE5rKS6ZaL6LOj44CCIiwi5LuK5aSp55qE6ZKf54K55oi/6YO96K6i5ruh5LqG44CCIjoi5LuK5aSp55qE6ZCY6bue5oi/6YO96KiC5ru/5LqG44CCIizku4rml6Xpkp/ngrnmiL86IuS7iuaXpemQmOm7nuaIvyIs5LuY5qy+OiLku5jmrL4iLOS7mOasvuWQjuWujOaIkOmihOiuojoi5LuY5qy+5b6M5a6M5oiQ6aCQ6KiCIiwi5Lu35qC85Li65b2T5aSp5YWl5L2PIHswfeeahOaAu+S7t++8jOWQq+eoju+8m+ayoeacieS7t+agvOeahOaXpeWtkOacquaKpeS7t+OAgiI6IuWDueagvOeCuueVtuWkqeWFpeS9jyB7MH3nmoTnuL3lg7nvvIzlkKvnqIXvvJvmspLmnInlg7nmoLznmoTml6XlrZDmnKrloLHlg7njgIIiLOS7t+agvOS7juS9juWIsOmrmDoi5YO55qC85b6e5L2O5Yiw6auYIizku7fmoLzku47pq5jliLDkvY46IuWDueagvOW+numrmOWIsOS9jiIsIuS7t+agvOWIhuWIq+S7pSB7MH0g6K6h77yM6L+Z6YeM5LiN5YGa5o2i566X77yM5omA5Lul5LiN5oyJ5Lu35qC85o6S5bqP44CC5Y+q55yL5LiA5Liq5Z+O5biC5oiW5Zu95a6277yM5bCx5Y+q5pyJ5LiA56eN5biB56eN44CCIjoi5YO55qC85YiG5Yil5LulIHswfSDoqIjvvIzpgJnoo6HkuI3lgZrmj5vnrpfvvIzmiYDku6XkuI3mjInlg7nmoLzmjpLluo/jgILlj6rnnIvkuIDlgIvln47luILmiJblnIvlrrbvvIzlsLHlj6rmnInkuIDnqK7luaPnqK7jgIIiLCLku7fmoLzmiJbmnaHmrL7lkozkvaDnnIvliLDnmoTkuI3kuIDmoLfkuobvvIzmiYDku6XmsqHmnInmjInmlrDku7fmoLzpooTorqLjgIIiOiLlg7nmoLzmiJbmop3mrL7lkozkvaDnnIvliLDnmoTkuI3kuIDmqKPkuobvvIzmiYDku6XmspLmnInmjInmlrDlg7nmoLzpoJDoqILjgIIiLCLkvJjmg6AgezB9JSI6IuWEquaDoCB7MH0lIizkvJrlkZg6Iuacg+WToSIsIuS8muWRmCDCtyDkvJjmg6AgezB9JSI6Iuacg+WToSDCtyDlhKrmg6AgezB9JSIs5Lya5ZGY5Y+3OiLmnIPlk6HomZ8iLCLkvJrlkZjlj7flkozlp5PmsI/lr7nkuI3kuIrjgILor7fmjInljaHkuIrljbDnmoTmoLjlr7nkuKTpobnljbPlj6/vvIzov5nph4zku47kuI3opoHmsYLlr4bnoIHjgIIiOiLmnIPlk6HomZ/lkozlp5PmsI/lsI3kuI3kuIrjgILoq4vmjInljaHkuIrljbDnmoTmoLjlsI3lhanpoIXljbPlj6/vvIzpgJnoo6Hlvp7kuI3opoHmsYLlr4bnorzjgIIiLOS8muWRmOeZu+W9lToi5pyD5ZOh55m75YWlIizkvY3nva46IuS9jee9riIs5L2O5qW85bGCOiLkvY7mqJPlsaQiLCLkvY/nmoTmmZrmlbDlpKrlpJrkuobjgIIiOiLkvY/nmoTmmZrmlbjlpKrlpJrkuobjgIIiLCLkvY/nmoTmmZrmlbDlpKrlsJHkuobjgIIiOiLkvY/nmoTmmZrmlbjlpKrlsJHkuobjgIIiLOS/g+mUgDoi5L+D6Yq3Iiwi5L+d55WZIHswfSDpl7QiOiLkv53nlZkgezB9IOmWkyIs5L+d55WZ6L+Z6Ze05oi/OiLkv53nlZnpgJnplpPmiL8iLOS/ruaUuToi5L+u5pS5Iizkv67mlLnml6XmnJ86IuS/ruaUueaXpeacnyIs5L+u5pS56aKE6K6iOiLkv67mlLnpoJDoqIIiLOWFjei0ueWPlua2iDoi5YWN6LK75Y+W5raIIizlhaXkvY86IuWFpeS9jyIs5YWl5L2P5Lq65L+h5oGvOiLlhaXkvY/kurros4foqIoiLOWFpeS9j+aWueW8jzoi5YWl5L2P5pa55byPIiwi5YWl5L2P5pel5pyf5bey57uP6L+H5Y675LqG77yM5LuK5aSp5pivIHswfeOAgiI6IuWFpeS9j+aXpeacn+W3sue2k+mBjuWOu+S6hu+8jOS7iuWkqeaYryB7MH3jgIIiLCLlhaXkvY/ml6XmnJ/lt7Lnu4/ov4fljrvkuobjgIIiOiLlhaXkvY/ml6XmnJ/lt7LntpPpgY7ljrvkuobjgIIiLCLlhaXkvY/ml7blnKjliY3lj7Dlh7rnpLrpk7booYzljaHvvIzov5nph4zkuI3mlLbmrL7jgIIiOiLlhaXkvY/mmYLlnKjliY3oh7rlh7rnpLrpioDooYzljaHvvIzpgJnoo6HkuI3mlLbmrL7jgIIiLOWFpeS9j+mhu+efpToi5YWl5L2P6aCI55+lIizlhajljIU6IuWFqOWMhSIsIuWFqOWMhSDDlyB7MH0iOiLlhajljIUgw5cgezB9Iiwi5YWo6YOoIHswfSDlrrYiOiLlhajpg6ggezB9IOWutiIsIuWFqOmDqCB7MH0g5q615L2P5a6/Ijoi5YWo6YOoIHswfSDmrrXkvY/lrr8iLOWFqOmDqOebrueahOWcsDoi5YWo6YOo55uu55qE5ZywIizlhajpg6jphZLlupc6IuWFqOmDqOmFkuW6lyIsIuWFsSB7MH0iOiLlhbEgezB9Iiwi5YWxIHswfSDkuKrnoa7orqTnoIHvvIzmr4/lrrbphZLlupfkuIDkuKrjgIIiOiLlhbEgezB9IOWAi+eiuuiqjeeivO+8jOavj+WutumFkuW6l+S4gOWAi+OAgiIsIuWFsSB7MH0g5a62Ijoi5YWxIHswfSDlrrYiLCLlhbEgezB9IOeslOmihOiuou+8jOavj+auteS9j+Wuv+S4gOeslO+8jOWQhOacieiHquW3seeahOehruiupOegge+8jOS/ruaUueaIluWPlua2iOmDveimgeWIhuWIq+i/m+ihjOOAgiI6IuWFsSB7MH0g562G6aCQ6KiC77yM5q+P5q615L2P5a6/5LiA562G77yM5ZCE5pyJ6Ieq5bex55qE56K66KqN56K877yM5L+u5pS55oiW5Y+W5raI6YO96KaB5YiG5Yil6YCy6KGM44CCIiwi5YWxIHswfSDnrJTpooTorqLvvIzmr4/mrrXkvY/lrr/kuIDnrJTvvIzlkITmnInoh6rlt7HnmoTnoa7orqTnoIHvvIzlj5bmtojpg73opoHliIbliKvov5vooYzjgIIiOiLlhbEgezB9IOethumgkOiogu+8jOavj+auteS9j+Wuv+S4gOethu+8jOWQhOacieiHquW3seeahOeiuuiqjeeivO+8jOWPlua2iOmDveimgeWIhuWIpemAsuihjOOAgiIs5YWz6ZetOiLpl5zplokiLOWFtuS7ljoi5YW25LuWIizlhbbku5bpnIDmsYI6IuWFtuS7lumcgOaxgiIsIuWGheeqlyjmnJ3lpKnkupUpIjoi5YWn56qXKOacneWkqeS6lSkiLCLlho3mmL7npLogezB9IOWutiI6IuWGjemhr+ekuiB7MH0g5a62Iizlho3or5XkuIDmrKE6IuWGjeippuS4gOasoSIs5pyA5L2OOiLmnIDkvY4iLCLmnIDkvY7vvJp7MH3lhaXkvY/vvIx7MX3otbciOiLmnIDkvY7vvJp7MH3lhaXkvY/vvIx7MX3otbciLOacgOS9juS7tzoi5pyA5L2O5YO5Iiwi5pyA5aSa5Y+q6IO95L2PIHswfSDmmZrjgIIiOiLmnIDlpJrpmrvog73kvY8gezB9IOaZmuOAgiIsIuacgOWkp+eahOaIv+Wei+WPr+S9jyB7MH0g5Lq644CC6K6iIHsxfSDpl7TjgIHmr4/pl7TmjIkgezJ9IOS6uuiuou+8jHszfSDkuKrkurrlsLHog73kvY/kuIvjgIIiOiLmnIDlpKfnmoTmiL/lnovlj6/kvY8gezB9IOS6uuOAguiogiB7MX0g6ZaT44CB5q+P6ZaT5oyJIHsyfSDkurroqILvvIx7M30g5YCL5Lq65bCx6IO95L2P5LiL44CCIiwi5pyA5pmaIHswfSDnprvlupfjgIIiOiLmnIDmmZogezB9IOmbouW6l+OAgiIs5pyA5pma56a75bqXOiLmnIDmmZrpm6LlupciLCLlh4/lsJHkuIDpl7QgezB9Ijoi5rib5bCR5LiA6ZaTIHswfSIsIuWIhuWIq+S7pSB7MH0g6K6h5Lu377yM6L+Z6YeM5LiN5YGa5o2i566X77yb5q+P5a626YWS5bqX5oyJ6Ieq5bex55qE5biB56eN6aKE6K6i5ZKM5LuY5qy+44CCIjoi5YiG5Yil5LulIHswfSDoqIjlg7nvvIzpgJnoo6HkuI3lgZrmj5vnrpfvvJvmr4/lrrbphZLlupfmjInoh6rlt7HnmoTluaPnqK7poJDoqILlkozku5jmrL7jgIIiLOWIsOW6lzoi5Yiw5bqXIiwi5Yiw5bqX5LiN55So5YaN5LuY5oi/6LS544CC5aaC5p6cezB95rKh5pyJ56Gu6K6k77yM5qy+6aG55Lya5YWo6aKd6YCA5Zue5Y6f5Y2h44CCIjoi5Yiw5bqX5LiN55So5YaN5LuY5oi/6LK744CC5aaC5p6cezB95rKS5pyJ56K66KqN77yM5qy+6aCF5pyD5YWo6aGN6YCA5Zue5Y6f5Y2h44CCIizliLDlupfml7bpl7Q6IuWIsOW6l+aZgumWkyIs5Ymp5L2Z5oi/6Ze0OiLlianppJjmiL/plpMiLOWJqeS9meaXtumXtDoi5Ymp6aSY5pmC6ZaTIizljZXkurrluoo6IuWWruS6uuW6iiIs5Y2V5pepOiLllq7ml6kiLOWNoeS4iueahOWnk+awjzoi5Y2h5LiK55qE5aeT5rCPIiwi5Y2h5Y+35Y+q5Zyo5LuY5qy+6aG15aGr5YaZ77yM6L+Z6YeM5LiN5pS26ZuG44CC5aaC5p6c6YWS5bqX5rKh5pyJ56Gu6K6k77yM5qy+6aG55Lya5YWo6aKd6YCA5Zue44CCIjoi5Y2h6Jmf5Y+q5Zyo5LuY5qy+6aCB5aGr5a+r77yM6YCZ6KOh5LiN5pS26ZuG44CC5aaC5p6c6YWS5bqX5rKS5pyJ56K66KqN77yM5qy+6aCF5pyD5YWo6aGN6YCA5Zue44CCIizljp/mnaU6IuWOn+S+hiIs5Y675LuY5qy+OiLljrvku5jmrL4iLCLljrvlronlhajpobXpnaLku5jmrL4gezB9Ijoi5Y675a6J5YWo6aCB6Z2i5LuY5qy+IHswfSIs5Y675qC45a+5OiLljrvmoLjlsI0iLOWPjOW6ijoi6ZuZ5bqKIizlj4zml6k6IumbmeaXqSIs5Y+W5raIOiLlj5bmtogiLCLlj5bmtoh7MH0iOiLlj5bmtoh7MH0iLOWPlua2iOi/meeslOmihOiuojoi5Y+W5raI6YCZ562G6aCQ6KiCIizlj5bmtojpnIDmlK/ku5g6IuWPlua2iOmcgOaUr+S7mCIsIuWPpuaciSB7MH0g5a6256ym5ZCI5p2h5Lu277yM5L2G6LaF5Ye65LqG5Lu35qC85LiK6ZmQ44CCIjoi5Y+m5pyJIHswfSDlrrbnrKblkIjmop3ku7bvvIzkvYbotoXlh7rkuoblg7nmoLzkuIrpmZDjgIIiLCLlj6/kvY8gezB9IOS6uiI6IuWPr+S9jyB7MH0g5Lq6Iizlj6/kvY/kurrmlbA6IuWPr+S9j+S6uuaVuCIs5Y+v5b6X56ev5YiGOiLlj6/lvpfnqY3liIYiLCLlkITlrrbku7fmoLzmjInlkIToh6rluIHnp43vvIh7MH3vvInmmL7npLrvvIzkuI3lgZrmjaLnrpfvvIzmiYDku6XkuI3og73mjInliJfmr5Tku7fjgIIiOiLlkITlrrblg7nmoLzmjInlkIToh6rluaPnqK7vvIh7MH3vvInpoa/npLrvvIzkuI3lgZrmj5vnrpfvvIzmiYDku6XkuI3og73mjInliJfmr5Tlg7njgIIiLOWQjOaXpeacn+i/mOWPr+S7peiuojoi5ZCM5pel5pyf6YKE5Y+v5Lul6KiCIizlkKY6IuWQpiIs5ZCrOiLlkKsiLOWQq+WFqOmkkDoi5ZCr5YWo6aSQIiwi5ZCr5YWo6aSQIMOXIHswfSI6IuWQq+WFqOmkkCDDlyB7MH0iLOWQq+WNiumkkDoi5ZCr5Y2K6aSQIiwi5ZCr5Y2K6aSQIMOXIHswfSI6IuWQq+WNiumkkCDDlyB7MH0iLOWQq+aXqToi5ZCr5pepIizlkKvnqI7otLk6IuWQq+eoheiyuyIs5ZCr6Ieq5Yqp5pepOiLlkKvoh6rliqnml6kiLCLlkKvoh6rliqnml6kgw5cgezB9Ijoi5ZCr6Ieq5Yqp5pepIMOXIHswfSIs5ZKMOiLlkowiLOWTgeeJjDoi5ZOB54mMIizlm57liLDphZLlupfpppbpobU6IuWbnuWIsOmFkuW6l+mmlumggSIsIuWcqHswfeezu+e7n+eahOaooeaLn+WJr+acrOmHjOeUn+aIkO+8jOS4jeaYr+ecn+WunumihOiuou+8jOS4jeS/neeVmeaIv+mXtO+8jOS5n+S4jeS7mOasvuOAgiI6IuWcqHswfeezu+e1seeahOaooeaTrOWJr+acrOmHjOeUn+aIkO+8jOS4jeaYr+ecn+WvpumgkOiogu+8jOS4jeS/neeVmeaIv+mWk++8jOS5n+S4jeS7mOasvuOAgiIsIuWcqOatpOS9j3swfSI6IuWcqOatpOS9j3swfSIs5Zyw54K5OiLlnLDpu54iLCLln47luILjgIHlm73lrrbmiJbphZLlupflkI0iOiLln47luILjgIHlnIvlrrbmiJbphZLlupflkI0iLOWfjuW4guaIlumFkuW6l+WQjToi5Z+O5biC5oiW6YWS5bqX5ZCNIizln47mma86IuWfjuaZryIsIuWinuWKoOS4gOmXtCB7MH0iOiLlop7liqDkuIDplpMgezB9IizlpJrkuIDkuro6IuWkmuS4gOS6uiIs5aSa5LiA6Ze0OiLlpJrkuIDplpMiLOWknOWuteS7tzoi5aSc5a615YO5IizlpKfluoo6IuWkp+W6iiIs5aWX6aSQOiLlpZfppJAiLOWnk+WQjToi5aeT5ZCNIizlp5PmsI86IuWnk+awjyIs5a6J6Z2Z5oi/6Ze0OiLlronpnZzmiL/plpMiLOWujOaIkDoi5a6M5oiQIizlsIbpgIDlm546IuWwh+mAgOWbniIs5bCR5LiA5Lq6OiLlsJHkuIDkuroiLOWwkeS4gOmXtDoi5bCR5LiA6ZaTIiwi5bCd6K+V5qyh5pWw6L+H5aSa77yM6K+356iN5ZCO5YaN6K+V44CCIjoi5ZiX6Kmm5qyh5pW46YGO5aSa77yM6KuL56iN5b6M5YaN6Kmm44CCIizlt7LkuLrkuIvmrKHlhaXkvY/kv53lrZg6IuW3sueCuuS4i+asoeWFpeS9j+WEsuWtmCIsIuW3suS7mOasvu+8jHswfeW3suehruiupCI6IuW3suS7mOasvu+8jHswfeW3sueiuuiqjSIsIuW3suS7mOasvu+8jOetieW+hXswfeehruiupCI6IuW3suS7mOasvu+8jOetieW+hXswfeeiuuiqjSIs5bey5L+u5pS5OiLlt7Lkv67mlLkiLOW3suWFqOminemAgOasvjoi5bey5YWo6aGN6YCA5qy+Iizlt7Llj5bmtog6IuW3suWPlua2iCIs5bey5ZCrOiLlt7LlkKsiLCLlt7LlnKh7MH3pooTorqLmiJDlip8iOiLlt7LlnKh7MH3poJDoqILmiJDlip8iLOW3suWcqOihjOeoi+S4rToi5bey5Zyo6KGM56iL5LitIiwi5bey5o+Q5Lqk57uZezB9Ijoi5bey5o+Q5Lqk57WmezB9Iiwi5bey5o+Q5Ye677yaezB9Ijoi5bey5o+Q5Ye677yaezB9Iiwi5bey5o+Q5Ye655qE6ZyA5rGC77yI5LiN5L2c5L+d6K+B77yJIjoi5bey5o+Q5Ye655qE6ZyA5rGC77yI5LiN5L2c5L+d6K2J77yJIizlt7Lmu6E6IuW3sua7vyIs5bey55Sf5pWIOiLlt7LnlJ/mlYgiLOW3sueZu+W9lToi5bey55m75YWlIizlt7Lnoa7orqQ6IuW3sueiuuiqjSIsIuW3sue7j+S7mOi/h+S6hu+8n+eOsOWcqOWIt+aWsCI6IuW3sue2k+S7mOmBjuS6hu+8n+ePvuWcqOmHjeaWsOaVtOeQhiIsIuW3suiuoiDCtyB7MH0iOiLlt7LoqIIgwrcgezB9Iiwi5bey6K6iIHswfS97MX0iOiLlt7LoqIIgezB9L3sxfSIs5bey6LaF5pe2OiLlt7LotoXmmYIiLOW3sui+vumihOiuouS4iumZkDoi5bey6YGU6aCQ6KiC5LiK6ZmQIizlt7Lov4fmnJ86IuW3sumBjuacnyIsIuW3sumAgOWHuueZu+W9le+8jOS7t+agvOaBouWkjeS4uuWFrOW8gOS7t+OAgiI6IuW3sumAgOWHuueZu+WFpe+8jOWDueagvOaBouW+qeeCuuWFrOmWi+WDueOAgiIs5bey6aKE5LuYOiLlt7LpoJDku5giLCLlt7LpooTku5ggezB944CCIjoi5bey6aCQ5LuYIHswfeOAgiIs5bqK5Z6LOiLluorlnosiLCLlvZPliY3msqHmnInnmbvlvZXvvIzmsqHmnInlj6/muIXpmaTnmoTlgY/lpb3jgIIiOiLnlbbliY3mspLmnInnmbvlhaXvvIzmspLmnInlj6/muIXpmaTnmoTlgY/lpb3jgIIiLOW+heS7mOasvjoi5b6F5LuY5qy+IizlvoXnoa7orqQ6IuW+heeiuuiqjSIsIuW/heWhq++8muWFpeS9j+S6uuWnk+WQje+8jOS4juivgeS7tuS4gOiHtOOAgiI6IuW/heWhq++8muWFpeS9j+S6uuWnk+WQje+8jOiIh+itieS7tuS4gOiHtOOAgiIsIuW/heWhq++8muaJi+acuuWPt++8jOaWueS+v+mFkuW6l+iBlOezu+S9oOOAgiI6IuW/heWhq++8muaJi+apn+iZn+eivO+8jOaWueS+v+mFkuW6l+iBr+e1oeS9oOOAgiIsIuW/heWhq++8muaOpeaUtuehruiupOS/oeaBr+eahOmCrueuse+8jOWHreWug+WSjOehruiupOeggeaJvuWbnumihOiuouOAgiI6IuW/heWhq++8muaOpeaUtueiuuiqjeizh+ioiueahOmbu+WtkOmDteS7tu+8jOaGkeWug+WSjOeiuuiqjeeivOaJvuWbnumgkOioguOAgiIs5oC75Lu3OiLnuL3lg7kiLCLmgLvku7cgwrcg5q+P5pmaIHswfSI6Iue4veWDuSDCtyDmr4/mmZogezB9Iiwi5oOz5L2P5ZOq6YeM77yfIjoi5oOz5L2P5ZOq6KOh77yfIiwi5oOz5Y675ZOq6YeM77yf6L6T5YWl5Z+O5biC44CB5Zu95a625oiW6YWS5bqX5ZCN44CCIjoi5oOz5Y675ZOq6KOh77yf6Ly45YWl5Z+O5biC44CB5ZyL5a625oiW6YWS5bqX5ZCN44CCIizmiJHnmoTpooTorqI6IuaIkeeahOmgkOiogiIsIuaIv+S7t+WSjOihjOeoi+aAu+S7t+W3suaMiXswfeS8muWRmOS7t+aYvuekuuOAgueZu+W9leS4jeS8muaJo+asvuOAgiI6IuaIv+WDueWSjOihjOeoi+e4veWDueW3suaMiXswfeacg+WToeWDuemhr+ekuuOAgueZu+WFpeS4jeacg+aJo+asvuOAgiIsIuaIv+S7t+avj+aZmiB7MH0iOiLmiL/lg7nmr4/mmZogezB9IizmiL/lnos6IuaIv+WeiyIs5oi/6LS5OiLmiL/osrsiLOaIv+i0ueWSjOmZhOWKoOmhueebrjoi5oi/6LK75ZKM6ZmE5Yqg5bCI5qGIIiwi5oi/6Ze05Li65L2g5L+d55WZ5YiwIHswfeOAgiI6IuaIv+mWk+eCuuS9oOS/neeVmeWIsCB7MH3jgIIiLOaIv+mXtOS7peWklueahOmZhOWKoOacjeWKoToi5oi/6ZaT5Lul5aSW55qE6ZmE5Yqg5pyN5YuZIizmiL/pl7Tlt7Lkv53nlZk6IuaIv+mWk+W3suS/neeVmSIs5omL5py65Y+3OiLmiYvmqZ/omZ/norwiLCLmiZPlvIDkuIDlrrbphZLlupfvvIzmn6XnnIvmiL/pl7TjgIIiOiLplovllZ/kuIDlrrbphZLlupfvvIzmqqLoppbmiL/plpPjgIIiLCLmiZPlvIDkuIDlrrbphZLlupfvvIzmn6XnnIvov5nkupvml6XmnJ/nmoTmiL/pl7TjgIIiOiLplovllZ/kuIDlrrbphZLlupfvvIzmqqLoppbpgJnkupvml6XmnJ/nmoTmiL/plpPjgIIiLOaJvumFkuW6lzoi5om+6YWS5bqXIiwi5oqK5bqK5Z6L44CB5qW85bGC5ZKM5oi/6Ze06ZyA5rGC6K6w5Zyo5oiR55qEezB96LSm5oi36YeM77yM5LiL5qyh6Ieq5Yqo5bim5LiKIjoi5oqK5bqK5Z6L44CB5qiT5bGk5ZKM5oi/6ZaT6ZyA5rGC6KiY5Zyo5oiR55qEezB96LOs5oi26KOh77yM5LiL5qyh6Ieq5YuV5bi25LiKIiwi5oqK5bqK5Z6L44CB5qW85bGC5ZKM5oi/6Ze06ZyA5rGC6K6w5Zyo5oiR55qE5Lya5ZGY6LSm5oi36YeM77yM5LiL5qyh6Ieq5Yqo5bim5LiKIjoi5oqK5bqK5Z6L44CB5qiT5bGk5ZKM5oi/6ZaT6ZyA5rGC6KiY5Zyo5oiR55qE5pyD5ZOh6LOs5oi26KOh77yM5LiL5qyh6Ieq5YuV5bi25LiKIizmjInljaHkuIrljbDnmoTloavlhpk6IuaMieWNoeS4iuWNsOeahOWhq+WvqyIs5oyJ5Zyw5Yy6OiLmjInlnLDljYAiLOaMieaZmjoi5oyJ5pmaIizmjaLkuIDlrrY6IuaPm+S4gOWutiIsIuaNouS4quWfjuW4guOAgeWbveWutuaIlumFkuW6l+WQjeivleivleOAgiI6IuaPm+WAi+WfjuW4guOAgeWci+WutuaIlumFkuW6l+WQjeippuippuOAgiIsIuaNouS4quaXpeWtkOWFpeS9jyDCtyB7MH3otbfku7ciOiLmj5vlgIvml6XlrZDlhaXkvY8gwrcgezB96LW35YO5IizmjaLmiJDov5nlrrY6IuaPm+aIkOmAmeWutiIs5o6S5bqPOiLmjpLluo8iLOaOpeS4i+adpToi5o6l5LiL5L6GIizmjqXmlLbnoa7orqTkv6Hmga86IuaOpeaUtueiuuiqjeizh+ioiiIs5o6o6I2QOiLmjqjolqYiLOaPkOS6pOa1i+ivlemihOiuojoi5o+Q5Lqk5ris6Kmm6aCQ6KiCIizmj5DkuqTpooTorqI6IuaPkOS6pOmgkOiogiIs5o+Q5YmN5YWl5L2POiLmj5DliY3lhaXkvY8iLOaPkOWJjeiuouS8mOaDoDoi5o+Q5YmN6KiC5YSq5oOgIizmkJzntKI6IuaQnOWwiyIsIuaUtuWIsOS6hui/meW8oOWNoeeJh+aXoOazleaYvuekuueahOWGheWuueOAgiI6IuaUtuWIsOS6humAmeW8teWNoeeJh+eEoeazlemhr+ekuueahOWFp+WuueOAgiIs5pS55Li6OiLmlLnngroiLOaUueeci+aMieaZmuWFpeS9jzoi5pS555yL5oyJ5pma5YWl5L2PIizmlL/nrZY6IuaUv+etliIs5pWw6YePOiLmlbjph48iLOaVsOmHj+S4jeWvuToi5pW46YeP5LiN5bCNIizmlbTmrrXkvY/lrr86IuaVtOauteS9j+WuvyIs5pa55L6/6YWS5bqX6IGU57O75L2gOiLmlrnkvr/phZLlupfoga/ntaHkvaAiLOaXoOeqlzoi54Sh56qXIizml6Dpmpznoo3miL86IueEoemanOekmeaIvyIs5pep6aSQOiLml6nppJAiLOaYrzoi5pivIiwi5pi+56S656ysIHswfeKAk3sxfSDlrrbvvIzlhbEgezJ9IOWutuOAgiI6Iumhr+ekuuesrCB7MH3igJN7MX0g5a6277yM5YWxIHsyfSDlrrbjgIIiLCLmmL7npLrnrKwgMeKAk3swfSDlrrbvvIzlhbEgezF9IOWutuOAgiI6Iumhr+ekuuesrCAx4oCTezB9IOWutu+8jOWFsSB7MX0g5a6244CCIizmmZrliLA6IuaZmuWIsCIs5pqC5pe25peg5rOV6aKE6K6iOiLmmqvmmYLnhKHms5XpoJDoqIIiLCLmmoLml7bmsqHog73lhajpg6jliqDlhaXooYznqIvjgIIiOiLmmqvmmYLmspLog73lhajpg6jliqDlhaXooYznqIvjgIIiLCLmmoLml7bmsqHog73lrozmiJDjgIIiOiLmmqvmmYLmspLog73lrozmiJDjgIIiLCLmmoLml7bmsqHog73mkJzntKLjgIIiOiLmmqvmmYLmspLog73mkJzlsIvjgIIiLCLmmoLml7bmsqHog73mn6XliLDku5jmrL7nirbmgIHjgIIiOiLmmqvmmYLmspLog73mn6XliLDku5jmrL7ni4DmhYvjgIIiLOabtOaWsOmihOiuojoi5pu05paw6aCQ6KiCIizmnInnqpc6IuacieeqlyIs5pyJ6ZKf54K55oi/OiLmnInpkJjpu57miL8iLOacquWQq+eojui0uToi5pyq5ZCr56iF6LK7IizmnKrmiJDlip86IuacquaIkOWKnyIs5pyq6K6i5oiQOiLmnKroqILmiJAiLCLmnKrorqLmiJDvvIh7MH3vvIkiOiLmnKroqILmiJDvvIh7MH3vvIkiLOafpeaJvjoi5p+l6KmiIizmn6XnnIvku7fmoLw6IuaqouimluWDueagvCIsIuafpeeci+WFqOmDqCB7MH0g5a62Ijoi5qqi6KaW5YWo6YOoIHswfSDlrrYiLOafpeeci+WFqOmDqOaIv+Weizoi5qqi6KaW5YWo6YOo5oi/5Z6LIizmn6XnnIvlhajpg6jnm67nmoTlnLA6IuaqouimluWFqOmDqOebrueahOWcsCIs5p+l55yL5oi/5Z6LOiLmqqLoppbmiL/lnosiLOafpeeci+ihjOeoizoi5qqi6KaW6KGM56iLIiwi5p+l55yL6aKE6K6iIHswfSDnmoTor6bmg4UiOiLmqqLoppbpoJDoqIIgezB9IOeahOips+aDhSIs5qC45a6e5LitOiLmoLjlr6bkuK0iLOaguOWvueW5tumihOiuojoi5qC45bCN5Lim6aCQ6KiCIizmpbzlsYI6Iuaok+WxpCIs5q2j5Zyo5Y+W5raIOiLmraPlnKjlj5bmtogiLOato+WcqOafpeivouaIv+mXtDoi5q2j5Zyo5p+l6Kmi5oi/6ZaTIiwi5q2j5Zyo562JezB956Gu6K6k6L+Z56yU6aKE6K6i77yM5pyA5aSa57qm5YWr5YiG6ZKf44CC56Gu6K6k5ZCO5Y+v5Zyo4oCc5oiR55qE6aKE6K6i4oCd6YeM55yL5Yiw44CCIjoi5q2j5Zyo562JezB956K66KqN6YCZ562G6aCQ6KiC77yM5pyA5aSa57SE5YWr5YiG6ZCY44CC56K66KqN5b6M5Y+v5Zyo4oCc5oiR55qE6aCQ6KiC4oCd6KOh55yL5Yiw44CCIiwi5q2k5Lu35qC85LiN5Y+v5Y+W5raI77yM5bey5LuY5qy+6aG55LiN6YCA44CCIjoi5q2k5YO55qC85LiN5Y+v5Y+W5raI77yM5bey5LuY5qy+6aCF5LiN6YCA44CCIiwi5q2k5Lu35qC85LuF5YmpIHswfSDpl7QiOiLmraTlg7nmoLzlg4XliakgezB9IOmWkyIsIuavj3swfSI6Iuavj3swfSIs5q+P5Lq6OiLmr4/kuroiLOavj+S6uuavj+aZmjoi5q+P5Lq65q+P5pmaIizmr4/ku706Iuavj+S7vSIsIuavj+S7vSB7MH0iOiLmr4/ku70gezB9Iizmr4/mmZo6Iuavj+aZmiIsIuavj+aZmiB7MH0iOiLmr4/mmZogezB9Iiwi5q+P5pma77yM5pyq5ZCr56iO6LS5Ijoi5q+P5pma77yM5pyq5ZCr56iF6LK7Iizmr4/mrKHlhaXkvY86Iuavj+asoeWFpeS9jyIsIuavj+asoeaUueWKqOmDveS8muWFiOaYvuekuuaWsOeahOaAu+S7t++8jOehruiupOWQjuaJjeeUn+aViOOAgui/memHjOS4jeaJo+asvuOAgiI6Iuavj+asoeaUueWLlemDveacg+WFiOmhr+ekuuaWsOeahOe4veWDue+8jOeiuuiqjeW+jOaJjeeUn+aViOOAgumAmeijoeS4jeaJo+asvuOAgiIs5q+P6LafOiLmr4/otp8iLCLmr4/pl7QgezB9IOS6uiDCtyB7MX0g6Ze0Ijoi5q+P6ZaTIHswfSDkurogwrcgezF9IOmWkyIsIuavj+mXtCAxIOS6uiDCtyB7MH0g6Ze0Ijoi5q+P6ZaTIDEg5Lq6IMK3IHswfSDplpMiLOavj+mXtOWFpeS9j+S6uuaVsDoi5q+P6ZaT5YWl5L2P5Lq65pW4Iiwi5rKh5pyJ5L2O5LqO5Lu35qC85LiK6ZmQ55qE6YWS5bqX44CC5Lul5LiL5piv5pyA5o6l6L+R55qE5Yeg5a6277yM5Lu35qC855Wl6auY44CCIjoi5rKS5pyJ5L2O5pa85YO55qC85LiK6ZmQ55qE6YWS5bqX44CC5Lul5LiL5piv5pyA5o6l6L+R55qE5bm+5a6277yM5YO55qC855Wl6auY44CCIiwi5rKh5pyJ5Y+v5L2PIHswfSDkurrnmoTmiL/lnosiOiLmspLmnInlj6/kvY8gezB9IOS6uueahOaIv+WeiyIsIuayoeacieWSjOi/meS4quehruiupOeggeWvueW6lOeahOmihOiuouOAgiI6IuaykuacieWSjOmAmeWAi+eiuuiqjeeivOWwjeaHieeahOmgkOioguOAgiIsIuayoeacieaIv+S7t+iDveS4gOasoeiuoiB7MH0g6Ze077yM6K+35bCR6K6i5Yeg6Ze044CCIjoi5rKS5pyJ5oi/5YO56IO95LiA5qyh6KiCIHswfSDplpPvvIzoq4vlsJHoqILlub7plpPjgIIiLCLmsqHmnInmiaPmrL7jgIIiOiLmspLmnInmiaPmrL7jgIIiLCLmsqHmnInmib7liLDkuI7igJx7MH3igJ3nm7jnrKbnmoTnu5PmnpzvvIzku6XkuIvmmK97MX3jgIIiOiLmspLmnInmib7liLDoiIfigJx7MH3igJ3nm7jnrKbnmoTntZDmnpzvvIzku6XkuIvmmK97MX3jgIIiLCLmsqHmnInmib7liLDkuI7igJx7MH3igJ3nm7jnrKbnmoTnu5PmnpzvvIzmlLnkuLrlnKh7MX3ph4zmib7jgIIiOiLmspLmnInmib7liLDoiIfigJx7MH3igJ3nm7jnrKbnmoTntZDmnpzvvIzmlLnngrrlnKh7MX3oo6Hmib7jgIIiLCLmsqHmnInmib7liLDnoa7orqTnoIEgezB9IOWSjOi/meS4qumCrueuseWvueW6lOeahOmihOiuouOAguS4pOmhuemDveimgeWSjOehruiupOS/oeaBr+S4iueahOS4gOiHtOOAgiI6IuaykuacieaJvuWIsOeiuuiqjeeivCB7MH0g5ZKM6YCZ5YCL6Zu75a2Q6YO15Lu25bCN5oeJ55qE6aCQ6KiC44CC5YWp6aCF6YO96KaB5ZKM56K66KqN6LOH6KiK5LiK55qE5LiA6Ie044CCIizmsqHmnInmib7liLDov5nlrrbphZLlupc6IuaykuacieaJvuWIsOmAmeWutumFkuW6lyIs5rKh5pyJ56ym5ZCI5p2h5Lu255qE6YWS5bqXOiLmspLmnInnrKblkIjmop3ku7bnmoTphZLlupciLCLmsqHmnInog73kvY/ov5nkuYjlpJrkurrnmoTmiL/lnovvvJrmnIDlpKfnmoTlj6/kvY8gezB9IOS6uu+8jOmcgOimgeiuoiB7MX0g6Ze044CCIjoi5rKS5pyJ6IO95L2P6YCZ6bq85aSa5Lq655qE5oi/5Z6L77ya5pyA5aSn55qE5Y+v5L2PIHswfSDkurrvvIzpnIDopoHoqIIgezF9IOmWk+OAgiIsIuayoeacieiDveS9j+i/meS5iOWkmuS6uueahOaIv+Wei+OAgiI6IuaykuacieiDveS9j+mAmem6vOWkmuS6uueahOaIv+Wei+OAgiIsIuayoeiDveS4uui/meS6m+aXpeacn+aKpeS7t+OAgiI6IuaykuiDveeCuumAmeS6m+aXpeacn+WgseWDueOAgiIsIuayoeiDveS/ruaUuei/meeslOmihOiuouOAgiI6IuaykuiDveS/ruaUuemAmeethumgkOioguOAgiIsIuayoeiDveWKoOi9veS9oOeahOmihOiuouOAgiI6IuaykuiDvei8ieWFpeS9oOeahOmgkOioguOAgiIsIuayoeiDveWKoOi9veabtOWkmumFkuW6l+OAgiI6IuaykuiDvei8ieWFpeabtOWkmumFkuW6l+OAgiIsIuayoeiDveWKoOi9veihjOeoi+OAgiI6IuaykuiDvei8ieWFpeihjOeoi+OAgiIsIuayoeiDveWKoOi9vei/meS6m+aXpeacn+OAgiI6IuaykuiDvei8ieWFpemAmeS6m+aXpeacn+OAgiIsIuayoeiDveWKoOi9vei/meS6m+mFkuW6l+OAgiI6IuaykuiDvei8ieWFpemAmeS6m+mFkuW6l+OAgiIsIuayoeiDveWKoOi9vei/meWutumFkuW6l+OAgiI6IuaykuiDvei8ieWFpemAmeWutumFkuW6l+OAgiIsIuayoeiDveWKoOi9vei/meadoeaUv+etluOAgiI6IuaykuiDvei8ieWFpemAmeaineaUv+etluOAgiIsIuayoeiDveWKoOi9vemFkuW6l+OAgiI6IuaykuiDvei8ieWFpemFkuW6l+OAgiIsIuayoeiDveWKoOi9vemFkuW6l+WIl+ihqOOAgiI6IuaykuiDvei8ieWFpemFkuW6l+WIl+ihqOOAgiIsIuayoeiDveWKoOi9vemZhOWKoOacjeWKoeOAgiI6IuaykuiDvei8ieWFpemZhOWKoOacjeWLmeOAgiIsIuayoeiDveWPkemAgeWIsOWvueivneOAgiI6IuaykuiDveWCs+mAgeWIsOWwjeipseOAgiIsIuayoeiDveWPlua2iOi/meeslOmihOiuouOAgiI6IuaykuiDveWPlua2iOmAmeethumgkOioguOAgiIs5rKh6IO95a6M5oiQOiLmspLog73lrozmiJAiLCLmsqHog73miZPlvIDku5jmrL7pobXjgIIiOiLmspLog73plovllZ/ku5jmrL7poIHjgIIiLCLmsqHog73mj5DkuqTpooTorqLjgIIiOiLmspLog73mj5DkuqTpoJDoqILjgIIiLCLmsqHog73mm7TmlrDooYznqIvjgIIiOiLmspLog73mm7TmlrDooYznqIvjgIIiLCLmsqHog73mn6XliLDjgIIiOiLmspLog73mn6XliLDjgIIiLCLmsqHog73muIXpmaTjgIIiOiLmspLog73muIXpmaTjgIIiLCLmsqHog73muIXpmaTnrZvpgInjgIIiOiLmspLog73muIXpmaTnr6npgbjjgIIiLCLmsqHog73nmbvlvZXjgIIiOiLmspLog73nmbvlhaXjgIIiLCLmsqHog73nrZvpgInliJfooajjgIIiOiLmspLog73nr6npgbjliJfooajjgIIiLCLmsqHog73orqHnrpflj5bmtojotLnnlKjjgIIiOiLmspLog73oqIjnrpflj5bmtojosrvnlKjjgIIiLCLmsqHog73orqHnrpfov5nmrKHkv67mlLnjgIIiOiLmspLog73oqIjnrpfpgJnmrKHkv67mlLnjgIIiLCLmsqHog73ov57mjqXliLDlrr/kuLvjgIIiOiLmspLog73pgKPnt5rliLDlrr/kuLvjgIIiLCLmsqHog73pgIDlh7rnmbvlvZXjgIIiOiLmspLog73pgIDlh7rnmbvlhaXjgIIiLCLmsqHog73ph43mlrDmjpLluo/jgIIiOiLmspLog73ph43mlrDmjpLluo/jgIIiLOayoeiDvemihOiuojoi5rKS6IO96aCQ6KiCIiwi5rWL6K+V5qih5byP77ya5LiN5Lya55yf5a6e5omj5qy+77yM6K+35Zyo5LuY5qy+6aG155So5rWL6K+V5Y2h44CC5Y2h5Y+35Y+q5Zyo5LuY5qy+6aG15aGr5YaZ77yM6L+Z6YeM5LiN5pS26ZuG44CCIjoi5ris6Kmm5qih5byP77ya5LiN5pyD55yf5a+m5omj5qy+77yM6KuL5Zyo5LuY5qy+6aCB55So5ris6Kmm5Y2h44CC5Y2h6Jmf5Y+q5Zyo5LuY5qy+6aCB5aGr5a+r77yM6YCZ6KOh5LiN5pS26ZuG44CCIiwi5rWL6K+V5qih5byP5LuY5qy+77yM5rKh5pyJ55yf5a6e5omj5qy+77yb6K6i5Y2V5Zyo5qih5ouf57O757uf6YeM44CCIjoi5ris6Kmm5qih5byP5LuY5qy+77yM5rKS5pyJ55yf5a+m5omj5qy+77yb6KiC5Zau5Zyo5qih5pOs57O757Wx6KOh44CCIiwi5rWL6K+V6aKE6K6i77ya5LiN5L+d55WZ5oi/6Ze077yM5Lmf5LiN5LuY5qy+44CCIjoi5ris6Kmm6aCQ6KiC77ya5LiN5L+d55WZ5oi/6ZaT77yM5Lmf5LiN5LuY5qy+44CCIiwi5rWL6K+V6aKE6K6iezB9Ijoi5ris6Kmm6aCQ6KiCezB9IizmtYvor5XpooTorqLlt7Lku5jmrL7lubborqLlpb06Iua4rOippumgkOioguW3suS7mOasvuS4puioguWlvSIs5rWL6K+V6aKE6K6i5bey5o+Q5LqkOiLmuKzoqabpoJDoqILlt7Lmj5DkuqQiLOa1i+ivlemihOiuouW3suehruiupDoi5ris6Kmm6aCQ6KiC5bey56K66KqNIiwi5rWP6KeIezB955qE6YWS5bqXIjoi54CP6Ka9ezB955qE6YWS5bqXIiwi5rWP6KeI5YWo6YOoIHswfSDlrrbphZLlupciOiLngI/opr3lhajpg6ggezB9IOWutumFkuW6lyIs5rWP6KeI5YWo6YOo6YWS5bqXOiLngI/opr3lhajpg6jphZLlupciLCLmt7vliqAgezB9Ijoi5paw5aKeIHswfSIs5riF6ZmkOiLmuIXpmaQiLOa4hemZpOi/meS6m+WBj+WlvToi5riF6Zmk6YCZ5Lqb5YGP5aW9IizmvJTnpLo6Iua8lOekuiIs5ryU56S66aKE6K6iOiLmvJTnpLrpoJDoqIIiLOa8lOekuumihOiuouW3suaPkOS6pDoi5ryU56S66aCQ6KiC5bey5o+Q5LqkIiwi54K56YCJ5YWl5L2P6YKj5aSp44CCIjoi6bue6YG45YWl5L2P6YKj5aSp44CCIiwi54K56YCJ56a75bqX6YKj5aSp44CCIjoi6bue6YG46Zui5bqX6YKj5aSp44CCIizng63pl6jln47luII6IueGsemWgOWfjuW4giIs546w5ZyoOiLnj77lnKgiLCLnjrDlnKjov5jmsqHmnInpooTorqLjgILku5jmrL7miJDlip/lkI7vvIzmiL/pl7TmiY3kvJrlnKh7MH3orqLlpb3jgIIiOiLnj77lnKjpgoTmspLmnInpoJDoqILjgILku5jmrL7miJDlip/lvozvvIzmiL/plpPmiY3mnIPlnKh7MH3oqILlpb3jgIIiLOeUqOS9oOiHquW3seeahOivneWGmToi55So5L2g6Ieq5bex55qE6Kmx5a+rIiwi55So5Y2h5LiK5Y2w55qE5Lya5ZGY5Y+35ZKM5aeT5rCP55m75b2V77yM6L+Z6YeM55qE5q+P5Liq5Lu35qC86YO95Lya5pi+56S65Lya5ZGY5Lu344CCIjoi55So5Y2h5LiK5Y2w55qE5pyD5ZOh6Jmf5ZKM5aeT5rCP55m75YWl77yM6YCZ6KOh55qE5q+P5YCL5YO55qC86YO95pyD6aGv56S65pyD5ZOh5YO544CCIiznlKjnoa7orqTnoIHmn6Xmib7pooTorqI6IueUqOeiuuiqjeeivOafpeipoumgkOiogiIs55m75b2VOiLnmbvlhaUiLOeZu+W9leS6q+S8muWRmOS7tzoi55m75YWl5Lqr5pyD5ZOh5YO5Iiznm67nmoTlnLA6IuebrueahOWcsCIsIuebuOavlHswfSI6IuebuOavlHswfSIs55yL5oyJ5pma5YWl5L2P55qE5oi/6Ze0OiLnnIvmjInmmZrlhaXkvY/nmoTmiL/plpMiLOehruiupOS4rToi56K66KqN5LitIiznoa7orqTlj5bmtog6IueiuuiqjeWPlua2iCIs56Gu6K6k5ZCO57uZ5Ye656Gu6K6k56CBOiLnorroqo3lvozntablh7rnorroqo3norwiLOehruiupOaUueacnzoi56K66KqN5pS55pyfIiznoa7orqTnoIE6IueiuuiqjeeivCIsIuekuuS+i+S7t+agvOWSjOaIv+Wei++8jOi/memHjOaXoOazleecn+WunumihOiuouOAgiI6IuekuuS+i+WDueagvOWSjOaIv+Wei++8jOmAmeijoeeEoeazleecn+WvpumgkOioguOAgiIs56a75bqXOiLpm6LlupciLCLnprvlupcgwrcgezB9Ijoi6Zui5bqXIMK3IHswfSIsIuemu+W6l+imgeaZmuS6juWFpeS9j++8muS9j+S4gOaZmuWwseaYr+esrOS6jOWkqeemu+W6l+OAgiI6IumbouW6l+imgeaZmuaWvOWFpeS9j++8muS9j+S4gOaZmuWwseaYr+esrOS6jOWkqembouW6l+OAgiIs56iO6LS5OiLnqIXosrsiLCLnrKwgezB94oCTezF9IOWutu+8jOWFsSB7Mn0g5a62Ijoi56ysIHswfeKAk3sxfSDlrrbvvIzlhbEgezJ9IOWutiIsIuesrCB7MH0vezF9IOaZmiDCtyB7Mn0iOiLnrKwgezB9L3sxfSDmmZogwrcgezJ9IiznrYnlvoXnoa7orqQ6IuetieW+heeiuuiqjSIs562b6YCJOiLnr6npgbgiLOe7memFkuW6l+eahOmcgOaxgjoi57Wm6YWS5bqX55qE6ZyA5rGCIiznu7/oibLkuLrmnIDkvY7ku7c6Iue2oOiJsueCuuacgOS9juWDuSIsIue8luWPtyB7MH0gwrcgezF9Ijoi57eo6JmfIHswfSDCtyB7MX0iLOe/u+mhtToi57+76aCBIiwi6Iez5bCR6KaB5L2PIHswfSDmmZrjgIIiOiLoh7PlsJHopoHkvY8gezB9IOaZmuOAgiIs6KGM56iLOiLooYznqIsiLCLooYznqIvkuK0gezB9L3sxfSI6IuihjOeoi+S4rSB7MH0vezF9Iiwi6KGM56iL5Y+q5Zyo5pyA5ZCO5LiA5qyh5pS55Yqo5ZCO5L+d55WZIDQg5bCP5pe277yM6L+Z5Liq5bey57uP6L+H5pyf77yM5YaN6K+V5Lmf5LiN5Lya5oGi5aSN44CC6K+36K6p5Yqp5omL6YeN5paw5pi+56S66KGM56iL77yM5oiW5Zyo6L+Z6YeM6YeN5paw5pCc57Si44CCIjoi6KGM56iL5Y+q5Zyo5pyA5b6M5LiA5qyh5pS55YuV5b6M5L+d55WZIDQg5bCP5pmC77yM6YCZ5YCL5bey57aT6YGO5pyf77yM5YaN6Kmm5Lmf5LiN5pyD5oGi5b6p44CC6KuL6K6T5Yqp5omL6YeN5paw6aGv56S66KGM56iL77yM5oiW5Zyo6YCZ6KOh6YeN5paw5pCc5bCL44CCIizooYznqIvorqHliJI6IuihjOeoi+ioiOWKgyIsIuihjOeoi+iuoeWIkuiHs+WwkemcgOimgeS4gOWkqeOAgiI6IuihjOeoi+ioiOWKg+iHs+WwkemcgOimgeS4gOWkqeOAgiIsIuihjOeoi+mHjOi/mOayoeacieWGheWuueOAgiI6IuihjOeoi+ijoemChOaykuacieWFp+WuueOAgiIsIuiuoeWIkuS4reeahCB7MH0g6aG56YeM77yMezF9IOmhueW3suWcqOihjOeoi+S4reaIluW3sumihOiuou+8jOWFtuS9meWPquaYr+iuoeWIkuOAgiI6IuioiOWKg+S4reeahCB7MH0g6aCF6KOh77yMezF9IOmgheW3suWcqOihjOeoi+S4reaIluW3sumgkOiogu+8jOWFtumkmOWPquaYr+ioiOWKg+OAgiIsIuiuoiB7MH0g6Ze077yM5q+P6Ze05oyJIHsxfSDkuroiOiLoqIIgezB9IOmWk++8jOavj+mWk+aMiSB7MX0g5Lq6IizorqnliqnmiYvph43mlrDmmL7npLrooYznqIs6Iuiuk+WKqeaJi+mHjeaWsOmhr+ekuuihjOeoiyIs6K6+5pa9OiLoqK3mlr0iLOivhOWIhjoi6KmV5YiGIiwi6K+E5YiGIHswfe+8jHsxfSDmnaHngrnor4QiOiLoqZXliIYgezB977yMezF9IOainem7nuiplSIsIuivleivleaKiuavj+mXtOS6uuaVsOaUueWwkeOAgiI6IuippuippuaKiuavj+mWk+S6uuaVuOaUueWwkeOAgiIs6K+l5oi/5Z6L5pqC5LiN5Y+v6K6iOiLoqbLmiL/lnovmmqvkuI3lj6/oqIIiLOivreiogDoi6Kqe6KiAIiwi6K+35L+d5a2Y6L+Z5Liq56Gu6K6k56CB44CC5Yet5a6D5ZKM5L2g55qE6YKu566x77yM5Zyo5Lu75L2V5a+56K+d6YeM6YO96IO95om+5Zue6L+Z56yU6aKE6K6i44CCIjoi6KuL5YSy5a2Y6YCZ5YCL56K66KqN56K844CC5oaR5a6D5ZKM5L2g55qE6Zu75a2Q6YO15Lu277yM5Zyo5Lu75L2V5bCN6Kmx6KOh6YO96IO95om+5Zue6YCZ562G6aCQ6KiC44CCIiwi6K+35YWI6YCJ5aW95YWl5L2P5ZKM56a75bqX5pel5pyf77yM5YaN5oqK5oi/6Ze05Yqg5YWl6KGM56iL44CCIjoi6KuL5YWI6YG45aW95YWl5L2P5ZKM6Zui5bqX5pel5pyf77yM5YaN5oqK5oi/6ZaT5Yqg5YWl6KGM56iL44CCIiwi6K+35ZCM5pe25aGr5YaZ5Lya5ZGY5Y+35ZKM5Y2h5LiK55qE5aeT5rCP44CCIjoi6KuL5ZCM5pmC5aGr5a+r5pyD5ZOh6Jmf5ZKM5Y2h5LiK55qE5aeT5rCP44CCIiwi6K+35ZCM5pe25aGr5YaZ56Gu6K6k56CB5ZKM6aKE6K6i5pe255So55qE6YKu566x44CCIjoi6KuL5ZCM5pmC5aGr5a+r56K66KqN56K85ZKM6aCQ6KiC5pmC55So55qE6Zu75a2Q6YO15Lu244CCIiwi6K+35ZyoIHswfSDliY3ku5jmrL4iOiLoq4vlnKggezB9IOWJjeS7mOasviIsIuivt+mHjeaWsOaYvuekuuaIkeeahOihjOeoi+OAgiI6Iuiri+mHjeaWsOmhr+ekuuaIkeeahOihjOeoi+OAgiIsIuivt+mHjeaWsOmAieWlveWFpeS9j+aXpeacn+WSjOS6uuaVsOOAgiI6Iuiri+mHjeaWsOmBuOWlveWFpeS9j+aXpeacn+WSjOS6uuaVuOOAgiIs6LW35Lu3OiLotbflg7kiLOi2heWHujoi6LaF5Ye6IizotoXml7bmnKrku5g6Iui2heaZguacquS7mCIs6L+U5ZueOiLov5Tlm54iLCLov5Tlm557MH0iOiLov5Tlm557MH0iLOi/lOWbnuaIkeeahOmihOiuojoi6L+U5Zue5oiR55qE6aCQ6KiCIiwi6L+Y5LiN56Gu5a6aezB95piv5ZCm5bey55Sf5oiQ6L+Z56yU6aKE6K6i77yM5q2j5Zyo5Lq65bel5qC45a6e44CCIjoi6YKE5LiN56K65a6aezB95piv5ZCm5bey55Sf5oiQ6YCZ562G6aCQ6KiC77yM5q2j5Zyo5Lq65bel5qC45a+m44CCIiwi6L+Y5YmpIHswfSI6IumChOWJqSB7MH0iLCLov5jmsqHlvIDljZbvvJrlj6rog73orqIgezB9IOWkqeS7peWGheeahOaIv+mXtOOAgiI6IumChOaykumWi+izo++8muWPquiDveiogiB7MH0g5aSp5Lul5YWn55qE5oi/6ZaT44CCIiwi6L+Y5rKh5byA5Y2W77ya5pel5pyf5aSq6L+c5LqG44CCIjoi6YKE5rKS6ZaL6LOj77ya5pel5pyf5aSq6YGg5LqG44CCIiwi6L+Z5LiA5q2l5rKh6IO95a6M5oiQ77yM6K+356iN5ZCO5YaN6K+V44CCIjoi6YCZ5LiA5q2l5rKS6IO95a6M5oiQ77yM6KuL56iN5b6M5YaN6Kmm44CCIiwi6L+Z5LiA5q615pqC5pe26KKr6aKE6K6i5LiK6ZmQ5oyh5LiL5LqG77yM5bCR6K6i5LiA5Lqb5oiW56iN5ZCO5YaN6K+V44CCIjoi6YCZ5LiA5q615pqr5pmC6KKr6aCQ6KiC5LiK6ZmQ5pOL5LiL5LqG77yM5bCR6KiC5LiA5Lqb5oiW56iN5b6M5YaN6Kmm44CCIiwi6L+Z5LiA5q615rKh6IO96aKE6K6i77yM5rKh5pyJ5omj5qy+44CCIjoi6YCZ5LiA5q615rKS6IO96aCQ6KiC77yM5rKS5pyJ5omj5qy+44CCIizov5nkuKrliLDlupfml7bpl7TkuI3lj6/pgIk6IumAmeWAi+WIsOW6l+aZgumWk+S4jeWPr+mBuCIs6L+Z5Liq6KGM56iL5bey6L+H5pyfOiLpgJnlgIvooYznqIvlt7LpgY7mnJ8iLCLov5nkupvkvJrkvZzkuLrpnIDmsYLovaznu5nliY3lj7DvvIx7MH3lvZPlpKnlsL3ph4/mu6HotrPvvIzkvYbkuI3kvZzkv53or4HjgIIiOiLpgJnkupvmnIPkvZzngrrpnIDmsYLovYnntabliY3oh7rvvIx7MH3nlbblpKnlhJjph4/mu7/otrPvvIzkvYbkuI3kvZzkv53orYnjgIIiLCLov5nkupvkvY/lrr/liIblsZ57MH3vvIzmr4/kuKrpm4blm6LnmoTopoHliIblvIDpooTorqLjgIIiOiLpgJnkupvkvY/lrr/liIblsax7MH3vvIzmr4/lgIvpm4blnJjnmoTopoHliIbplovpoJDoqILjgIIiLCLov5nkupvml6XmnJ/kuI3lvIDmlL7pooTorqLjgIIiOiLpgJnkupvml6XmnJ/kuI3plovmlL7poJDoqILjgIIiLCLov5nkupvml6XmnJ/mnInlhaXkvY/pmZDliLbvvIzmjaLkuKrml6XmnJ/or5Xor5XjgIIiOiLpgJnkupvml6XmnJ/mnInlhaXkvY/pmZDliLbvvIzmj5vlgIvml6XmnJ/oqaboqabjgIIiLCLov5nkupvml6XmnJ/msqHmnInlk6rkuKrmiL/lnovov5jliakgezB9IOmXtOOAgiI6IumAmeS6m+aXpeacn+aykuacieWTquWAi+aIv+Wei+mChOWJqSB7MH0g6ZaT44CCIizov5nkupvml6XmnJ/msqHmnInnqbrmiL86IumAmeS6m+aXpeacn+aykuacieepuuaIvyIsIui/meS6m+aXpeacn+eahOaIv+mXtOmDveiuoua7oeS6huOAgiI6IumAmeS6m+aXpeacn+eahOaIv+mWk+mDveiogua7v+S6huOAgiIsIui/meS6m+aXpeacn+i/memHjOiuouS4jeS6huOAgiI6IumAmeS6m+aXpeacn+mAmeijoeioguS4jeS6huOAgiIsIui/meS6m+mDveS4jeaYr+i/memHjOeahOmFkuW6l+OAgiI6IumAmeS6m+mDveS4jeaYr+mAmeijoeeahOmFkuW6l+OAgiIsIui/meWkqeS4jeiDveWFpeS9j+OAgiI6IumAmeWkqeS4jeiDveWFpeS9j+OAgiIsIui/meWkqeS4jeiDvemAgOaIv+OAgiI6IumAmeWkqeS4jeiDvemAgOaIv+OAgiIsIui/meWutuS7iuWkqeS4jeWNlumSn+eCueaIv+OAgiI6IumAmeWutuS7iuWkqeS4jeizo+mQmOm7nuaIv+OAgiIsIui/meWutumFkuW6l+WcqOi/meS6m+aXpeacn+ayoeaciei/meS4quaIv+Wei++8jOWPr+iuoueahOacie+8mnswfeOAgiI6IumAmeWutumFkuW6l+WcqOmAmeS6m+aXpeacn+aykuaciemAmeWAi+aIv+Wei++8jOWPr+iogueahOacie+8mnswfeOAgiIsIui/meWutumFkuW6l+WcqOi/meS6m+aXpeacn+ayoeaciei/meS4quaIv+Wei+OAguS4i+mdoui/meS6m+WPr+S7peiuou+8jOeCueS4gOS4i+WNs+WPr+mihOiuou+8miI6IumAmeWutumFkuW6l+WcqOmAmeS6m+aXpeacn+aykuaciemAmeWAi+aIv+Wei+OAguS4i+mdoumAmeS6m+WPr+S7peiogu+8jOm7nuS4gOS4i+WNs+WPr+mgkOiogu+8miIsIui/meWutumFkuW6l+eahOaIv+mXtOS4jeWcqOi/memHjOWHuuWUruOAgiI6IumAmeWutumFkuW6l+eahOaIv+mWk+S4jeWcqOmAmeijoeWHuuWUruOAgiIsIui/meW8oOWNoeeJh+ayoeiDveaYvuekuu+8jOivt+WcqOWvueivnemHjOWGjemXruS4gOasoeOAgiI6IumAmeW8teWNoeeJh+aykuiDvemhr+ekuu+8jOiri+WcqOWwjeipseijoeWGjeWVj+S4gOasoeOAgiIsIui/meaYr3swfeeahOato+W8j+mihOiuou+8jOWIsOW6l+S7mOasvu+8m+WFpeS9j+aXtuWcqOWJjeWPsOWHuuekuumTtuihjOWNoe+8jOi/memHjOS4jeaUtuasvuOAgiI6IumAmeaYr3swfeeahOato+W8j+mgkOiogu+8jOWIsOW6l+S7mOasvu+8m+WFpeS9j+aZguWcqOWJjeiHuuWHuuekuumKgOihjOWNoe+8jOmAmeijoeS4jeaUtuasvuOAgiIsIui/meaYr+a1i+ivleeOr+Wig++8muWcqOi/memHjOmihOiuouWPquS8mueUn+aIkOaooeaLn+iuouWNle+8jOS4jeaYr3swfeeahOecn+WunumihOiuou+8jOS5n+S4jeS7mOasvuOAgiI6IumAmeaYr+a4rOippueSsOWig++8muWcqOmAmeijoemgkOioguWPquacg+eUn+aIkOaooeaTrOioguWWru+8jOS4jeaYr3swfeeahOecn+WvpumgkOiogu+8jOS5n+S4jeS7mOasvuOAgiIsIui/meaYr+a1i+ivlemihOiuouOAgiI6IumAmeaYr+a4rOippumgkOioguOAgiIsIui/meaYr+a8lOekuumihOiuou+8mnswfeayoeacieaUtuWIsO+8jOmFkuW6l+S5n+ayoeacieS4uuS9oOS/neeVmeaIv+mXtOOAgnsxfSI6IumAmeaYr+a8lOekuumgkOiogu+8mnswfeaykuacieaUtuWIsO+8jOmFkuW6l+S5n+aykuacieeCuuS9oOS/neeVmeaIv+mWk+OAgnsxfSIsIui/measoeWvueivnemHjOi/mOayoeaciemihOiuouOAgiI6IumAmeasoeWwjeipseijoemChOaykuaciemgkOioguOAgiIsIui/measoeayoeaciemihOiuouaIkOWKn++8jOS5n+ayoeacieaJo+asvuOAgui/meauteWvueivnemHjOeahOmihOiuouW3suWIsOS4iumZkO+8muivt+WFiOWcqOKAnOaIkeeahOmihOiuouKAnemHjOWPlua2iOS4jemcgOimgeeahO+8jOWGjeivleS4gOasoeOAgiI6IumAmeasoeaykuaciemgkOioguaIkOWKn++8jOS5n+aykuacieaJo+asvuOAgumAmeauteWwjeipseijoeeahOmgkOioguW3suWIsOS4iumZkO+8muiri+WFiOWcqOKAnOaIkeeahOmgkOioguKAneijoeWPlua2iOS4jemcgOimgeeahO+8jOWGjeippuS4gOasoeOAgiIsIui/measoeayoeiDveafpeWIsOi/meWutumFkuW6l+eahOaIv+mXtO+8jOeojeWQjuWGjeivleS4gOasoeOAgiI6IumAmeasoeaykuiDveafpeWIsOmAmeWutumFkuW6l+eahOaIv+mWk++8jOeojeW+jOWGjeippuS4gOasoeOAgiIsIui/meeslOmihOiuouW3suS4jeWGjeWNoOeUqOaIv+mXtOOAgiI6IumAmeethumgkOioguW3suS4jeWGjeS9lOeUqOaIv+mWk+OAgiIsIui/meeslOmihOiuouW3suayoeacieWPr+WPlua2iOeahOWGheWuueOAgiI6IumAmeethumgkOioguW3suaykuacieWPr+WPlua2iOeahOWFp+WuueOAgiIs6L+Z56yU6aKE6K6i5bey57uT5p2fOiLpgJnnrYbpoJDoqILlt7LntZDmnZ8iLCLov5nph4zkuI3miaPmrL7jgILmj5DkuqTlkI57MH3kvJrkuLrkvaDkv53nlZnmiL/pl7TvvIzlubbnu5nkvaDkuIDkuKrnoa7orqTnoIHjgIIiOiLpgJnoo6HkuI3miaPmrL7jgILmj5DkuqTlvox7MH3mnIPngrrkvaDkv53nlZnmiL/plpPvvIzkuKbntabkvaDkuIDlgIvnorroqo3norzjgIIiLCLov5nph4zkuI3miaPmrL7jgILov5nmmK/mvJTnpLrvvJrmj5DkuqTlkI7kvJrlvpfliLDnoa7orqTnoIHvvIzkvYZ7MH3kuI3kvJrmlLbliLDvvIzkuZ/kuI3kvJrkuLrkvaDkv53nlZnmiL/pl7TjgIIiOiLpgJnoo6HkuI3miaPmrL7jgILpgJnmmK/mvJTnpLrvvJrmj5DkuqTlvozmnIPlvpfliLDnorroqo3norzvvIzkvYZ7MH3kuI3mnIPmlLbliLDvvIzkuZ/kuI3mnIPngrrkvaDkv53nlZnmiL/plpPjgIIiLCLov5nph4zkuI3miaPmrL7jgILpooTorqLkvJrlnKh7MH3nlJ/miJDkuIDnrJTliLDlupfku5jmrL7nmoTorqLljZXvvIzlubbnu5nkvaDkuIDkuKrnoa7orqTnoIHjgIIiOiLpgJnoo6HkuI3miaPmrL7jgILpoJDoqILmnIPlnKh7MH3nlJ/miJDkuIDnrYbliLDlupfku5jmrL7nmoToqILllq7vvIzkuKbntabkvaDkuIDlgIvnorroqo3norzjgIIiLCLov5nph4zlj6rmnInpnIDopoHpooTku5jnmoTmiL/ku7fvvIzov5nph4zlj6rog73orqLliLDlupfku5jmrL7nmoTmiL/pl7TjgIIiOiLpgJnoo6Hlj6rmnInpnIDopoHpoJDku5jnmoTmiL/lg7nvvIzpgJnoo6Hlj6rog73oqILliLDlupfku5jmrL7nmoTmiL/plpPjgIIiLCLov5nph4zml6Dms5XlhajlsY/miZPlvIDjgIIiOiLpgJnoo6HnhKHms5XlhajlsY/plovllZ/jgIIiLOi/memHjOavj+WutumDveWPr+S7peWFjei0ueWPlua2iDoi6YCZ6KOh5q+P5a626YO95Y+v5Lul5YWN6LK75Y+W5raIIiwi6L+Z6YeM5rKh5pyJ5L2N5LqO4oCcezB94oCd5oiW6ZmE6L+R55qE6YWS5bqX44CC5o2i5Liq5Z+O5biC5oiW5Zu95a626K+V6K+V44CCIjoi6YCZ6KOh5rKS5pyJ5L2N5pa84oCcezB94oCd5oiW6ZmE6L+R55qE6YWS5bqX44CC5o+b5YCL5Z+O5biC5oiW5ZyL5a626Kmm6Kmm44CCIiwi6L+Z6YeM5rKh5pyJ5Y+v5L2PIHswfSDkurrnmoTmiL/lnosiOiLpgJnoo6HmspLmnInlj6/kvY8gezB9IOS6uueahOaIv+WeiyIs6L+Z6YeM5rKh5pyJ5a+55bqU55qE6YWS5bqXOiLpgJnoo6HmspLmnInlsI3mh4nnmoTphZLlupciLOi/memHjOayoeaciei/meS4qumbhuWbojoi6YCZ6KOh5rKS5pyJ6YCZ5YCL6ZuG5ZyYIiwi6L+Z6YeM5rKh5pyJ6L+Z5a626YWS5bqX44CCIjoi6YCZ6KOh5rKS5pyJ6YCZ5a626YWS5bqX44CCIiwi6L+Z6YeM55qEIHswfSDlrrbphZLlupfvvIzmsqHmnInkuIDlrrblkIzml7bmu6HotrPov5nkupvmnaHku7bjgIIiOiLpgJnoo6HnmoQgezB9IOWutumFkuW6l++8jOaykuacieS4gOWutuWQjOaZgua7v+i2s+mAmeS6m+aineS7tuOAgiIsIui/memXtOmSn+eCueaIv+S7iuWkqSB7MH3igJN7MX0g5LmL6Ze05Yiw5bqX77yM5L2PIHsyfSDlsI/ml7bvvIzmnIDmmZogezN9IOemu+W6l+OAgiI6IumAmemWk+mQmOm7nuaIv+S7iuWkqSB7MH3igJN7MX0g5LmL6ZaT5Yiw5bqX77yM5L2PIHsyfSDlsI/mmYLvvIzmnIDmmZogezN9IOmbouW6l+OAgiIs6L+Z6aG56ZmE5Yqg5pyN5Yqh6K6i5LiN5LqGOiLpgJnpoIXpmYTliqDmnI3li5noqILkuI3kuoYiLOi/numAmuaIvzoi6YCj6YCa5oi/IizpgIDlh7rnmbvlvZU6IumAgOWHuueZu+WFpSIs6YCA5qy+5LitOiLpgIDmrL7kuK0iLOmAieWhqzoi6YG45aGrIizpgInlpb3ml6XmnJ/nnIvku7fmoLw6IumBuOWlveaXpeacn+eci+WDueagvCIs6YCJ5aW95pel5pyf55yL5L2P5a6/5oC75Lu3OiLpgbjlpb3ml6XmnJ/nnIvkvY/lrr/nuL3lg7kiLOmAieaIv+Weizoi6YG45oi/5Z6LIizpgInmi6nlhaXkvY/ml6XmnJ86IumBuOaTh+WFpeS9j+aXpeacnyIs6YCJ5oup5oi/5Z6LOiLpgbjmk4fmiL/lnosiLOmAieaLqeaXpeacnzoi6YG45pOH5pel5pyfIizpgInmi6nnprvlupfml6XmnJ86IumBuOaTh+mbouW6l+aXpeacnyIs6YCJ5pel5pyfOiLpgbjml6XmnJ8iLOmAiemFkuW6lzoi6YG46YWS5bqXIizpgq7nrrE6Iumbu+WtkOmDteS7tiIsIumCrueusemHjOayoeacieKAnEDigJ3vvIzor7floavlhpnog73mlLbliLDnoa7orqTkv6Hmga/nmoTlnLDlnYDjgIIiOiLpm7vlrZDpg7Xku7boo6HmspLmnInigJxA4oCd77yM6KuL5aGr5a+r6IO95pS25Yiw56K66KqN6LOH6KiK55qE5Zyw5Z2A44CCIizpg6jliIbmnInnqpc6IumDqOWIhuacieeqlyIs6YWS5bqXOiLphZLlupciLOmFkuW6l+WFrOW4g+eahOaUv+etljoi6YWS5bqX5YWs5L2I55qE5pS/562WIizphZLlupflupTpgIA6IumFkuW6l+aHiemAgCIs6YWS5bqX5pS25Y+WOiLphZLlupfmlLblj5YiLCLphZLlupfns7vnu5/nmoTmtYvor5Xlia/mnKzvvIzov5nph4znmoTpooTorqLpg73kuI3mmK/nnJ/lrp7pooTorqLjgIIiOiLphZLlupfns7vntbHnmoTmuKzoqablia/mnKzvvIzpgJnoo6HnmoTpoJDoqILpg73kuI3mmK/nnJ/lr6bpoJDoqILjgIIiLOmFkuW6l+iuvuaWvToi6YWS5bqX6Kit5pa9IizphZLlupfpmYTliqDmnI3liqE6IumFkuW6l+mZhOWKoOacjeWLmSIs6YWS5bqX6ZuG5ZuiOiLphZLlupfpm4blnJgiLOmHjeaWsOaQnOe0ojoi6YeN5paw5pCc5bCLIizph43or5U6IumHjeippiIsIumSn+eCueaIvyDCtyDku4rlpKkiOiLpkJjpu57miL8gwrcg5LuK5aSpIizpl7TmlbA6IumWk+aVuCIs6ZmE5Yqg5pyN5YqhOiLpmYTliqDmnI3li5kiLOmZhOWKoOacjeWKoeWSjOS9k+mqjDoi6ZmE5Yqg5pyN5YuZ5ZKM6auU6amXIizpmYTov5HnmoTlhaXkvY/ml6XmnJ86IumZhOi/keeahOWFpeS9j+aXpeacnyIs6ZmQ5pe254m55Lu3OiLpmZDmmYLnibnlg7kiLOmbhuWbojoi6ZuG5ZyYIizpnIDku5jmrL46IumcgOS7mOasviIs6ZyA6KGl5beu5Lu3OiLpnIDoo5zlt67lg7kiLOmcgOmaj+S9j+Wuv+S4gOi1t+iuojoi6ZyA6Zqo5L2P5a6/5LiA6LW36KiCIizpnIDpooTku5g6IumcgOmgkOS7mCIsIumdouenr+WkpyB7MH0gbcKyIjoi6Z2i56mN5aSnIHswfSBtwrIiLCLpnaLnp6/lsI8gezB9IG3CsiI6IumdouepjeWwjyB7MH0gbcKyIizpooTorqHliLDlupc6IumgkOioiOWIsOW6lyIs6aKE6K6iOiLpoJDoqIIiLCLpooTorqIgezB9IOmXtCI6IumgkOiogiB7MH0g6ZaTIiwi6aKE6K6iezB9Ijoi6aCQ6KiCezB9Iiwi6aKE6K6iezB977yMezF95Yiw5bqXIjoi6aCQ6KiCezB977yMezF95Yiw5bqXIiwi6aKE6K6iezB955qE5L2P5a6/Ijoi6aCQ6KiCezB955qE5L2P5a6/Iiwi6aKE6K6i5YmN5pyJIHswfSDpobnpnIDopoHmo4Dmn6XvvJp7MX3jgIIiOiLpoJDoqILliY3mnIkgezB9IOmghemcgOimgeaqouafpe+8mnsxfeOAgiIsIumihOiuouWJjeivt+ajgOafpe+8mnswfeOAgiI6IumgkOioguWJjeiri+aqouafpe+8mnswfeOAgiIs6aKE6K6i5bey56Gu6K6kOiLpoJDoqILlt7Lnorroqo0iLOmihOiuouaXtueUqOeahOmCrueusToi6aCQ6KiC5pmC55So55qE6Zu75a2Q6YO15Lu2IizpooTorqLmraXpqqQ6IumgkOioguatpempnyIsIumihOiuoui/mSB7MH0g5a62Ijoi6aCQ6KiC6YCZIHswfSDlrrYiLCLpooTorqLov5kgezB9IOauteS9j+WuvyI6IumgkOiogumAmSB7MH0g5q615L2P5a6/IizpooTorqLov5nkuIDmrrU6IumgkOiogumAmeS4gOautSIs6aKE6K6i6L+Z6Ze05oi/OiLpoJDoqILpgJnplpPmiL8iLCLpooTorqLpnIDopoHloavlhpnlp5PlkI3lkozpgq7nrrHjgIIiOiLpoJDoqILpnIDopoHloavlr6vlp5PlkI3lkozpm7vlrZDpg7Xku7bjgIIiLOmrmOalvOWxgjoi6auY5qiT5bGkIn0sdXU9WyJ6aCIsInpoLUhhbnQiLCJlbiIsImRlIiwiamEiLCJrbyIsImZyIiwiZXMiXSwkZD17emg6IueugOS9k+S4reaWhyIsInpoLUhhbnQiOiLnuYHpq5TkuK3mlociLGVuOiJFbmdsaXNoIixkZToiRGV1dHNjaCIsamE6IuaXpeacrOiqniIsa286Iu2VnOq1reyWtCIsZnI6IkZyYW7Dp2FpcyIsZXM6IkVzcGHDsW9sIn0sTmU9e3poOiJ6aC1DTiIsInpoLUhhbnQiOiJ6aC1UVyIsZW46ImVuLUdCIixkZToiZGUtREUiLGphOiJqYS1KUCIsa286ImtvLUtSIixmcjoiZnItRlIiLGVzOiJlcy1FUyJ9LHhhPWU9PntpZih0eXBlb2YgZSE9InN0cmluZyJ8fCFlLnRyaW0oKSlyZXR1cm47Y29uc3QgdD1lLnRyaW0oKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL18vZywiLSIpO2lmKHQ9PT0iemgifHx0LnN0YXJ0c1dpdGgoInpoLSIpKXJldHVybi8oXnwtKShoYW50fHR3fGhrfG1vKSgtfCQpLy50ZXN0KHQpPyJ6aC1IYW50IjoiemgiO2Zvcihjb25zdCBuIG9mWyJkZSIsImphIiwia28iLCJmciIsImVzIl0paWYodD09PW58fHQuc3RhcnRzV2l0aChgJHtufS1gKSlyZXR1cm4gbjtyZXR1cm4iZW4ifSxkXz1lPT57Y29uc3QgdD1uZXcgTWFwLG49W107Zm9yKGNvbnN0W28sc11vZiBlKXtpZihzPT09dm9pZCAwfHwhbyljb250aW51ZTtpZighL1x7XGQrXH0vLnRlc3Qobykpe3Quc2V0KG8scyk7Y29udGludWV9Y29uc3Qgcj1bXSxpPW8uc3BsaXQoLyhce1xkK1x9KS8pLm1hcChjPT57Y29uc3QgdT0vXlx7KFxkKylcfSQvLmV4ZWMoYyk7cmV0dXJuIHU/KHIucHVzaChOdW1iZXIodVsxXSkpLCIoW1xcc1xcU10qPykiKTpjLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXVxcXS9nLCJcXCQmIil9KS5qb2luKCIiKTtuLnB1c2goe3JlOm5ldyBSZWdFeHAoYF4ke2l9JGApLG9yZGVyOnIsdG86cyx3ZWlnaHQ6by5yZXBsYWNlKC9ce1xkK1x9L2csIiIpLmxlbmd0aH0pfXJldHVybiBuLnNvcnQoKG8scyk9PnMud2VpZ2h0LW8ud2VpZ2h0KSx7ZXhhY3Q6dCxwYXR0ZXJuczpufX0sd2Q9bmV3IE1hcCxoXz1lPT57Y29uc3QgdD13ZC5nZXQoZSk7aWYodClyZXR1cm4gdDtjb25zdCBuPWU9PT0iemgtSGFudCI/T2JqZWN0LmVudHJpZXModV8pOk9iamVjdC5lbnRyaWVzKGxfKS5tYXAoKFtzLHJdKT0+W3MscltlXV0pLG89ZF8obik7cmV0dXJuIHdkLnNldChlLG8pLG99LGNzPW5ldyBNYXAscF89KGUsdCk9PntpZighdClyZXR1cm4gdDtjb25zdCBuPWAke2V9XDAke3R9YCxvPWNzLmdldChuKTtpZihvIT09dm9pZCAwKXJldHVybiBvO2NvbnN0e2V4YWN0OnMscGF0dGVybnM6cn09aF8oZSk7bGV0IGk9cy5nZXQodCk7aWYoaT09PXZvaWQgMClmb3IoY29uc3QgdSBvZiByKXtjb25zdCBkPXUucmUuZXhlYyh0KTtpZighZCljb250aW51ZTtjb25zdCBoPW5ldyBNYXAodS5vcmRlci5tYXAoKHAsbSk9PltwLGRbbSsxXT8/IiJdKSk7aT11LnRvLnJlcGxhY2UoL1x7KFxkKylcfS9nLChwLG0pPT5oLmdldChOdW1iZXIobSkpPz8iIik7YnJlYWt9Y29uc3QgYz1pPz90O3JldHVybiBjcy5zaXplPjRlMyYmY3MuY2xlYXIoKSxjcy5zZXQobixjKSxjfTtsZXQgX2Q9IiI7Y29uc3QgYmc9KGUsdCxuPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCk9PntpZighZSlyZXR1cm47KGUudGhlbWU9PT0ibGlnaHQifHxlLnRoZW1lPT09ImRhcmsiKSYmdC5hcHBseURvY3VtZW50VGhlbWUoZS50aGVtZSk7Y29uc3Qgbz1lLnN0eWxlcz8udmFyaWFibGVzO28mJnR5cGVvZiBvPT0ib2JqZWN0IiYmdC5hcHBseUhvc3RTdHlsZVZhcmlhYmxlcyhvKTtjb25zdCBzPWUuc3R5bGVzPy5jc3M/LmZvbnRzO3R5cGVvZiBzPT0ic3RyaW5nIiYmcyYmcyE9PV9kJiYodC5hcHBseUhvc3RGb250cyhzKSxfZD1zKTtjb25zdCByPWUuc2FmZUFyZWFJbnNldHM7aWYocilmb3IoY29uc3QgaSBvZlsidG9wIiwicmlnaHQiLCJib3R0b20iLCJsZWZ0Il0pe2NvbnN0IGM9TnVtYmVyKHJbaV0/PzApO24uc3R5bGUuc2V0UHJvcGVydHkoYC0taW5zZXQtJHtpfWAsYCR7TnVtYmVyLmlzRmluaXRlKGMpJiZjPjA/YzowfXB4YCl9fSx2Zz1lPT5lLnJlcGxhY2UoL1smPD4iJ10vZyx0PT4oeyImIjoiJmFtcDsiLCI8IjoiJmx0OyIsIj4iOiImZ3Q7IiwnIic6IiZxdW90OyIsIiciOiImIzM5OyJ9KVt0XSksbV89Jzxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTEwIDMuNSA1LjUgOCAxMCAxMi41IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjgiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPicsZl89Jzxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTYgMy41IDEwLjUgOCA2IDEyLjUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+JyxnXz0nPHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMy41IDYgOCAxMC41IDEyLjUgNiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS44IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4nLGJfPSc8c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik05LjUgMi41aDR2NE02LjUgMTMuNWgtNHYtNE0xMy41IDIuNSA5IDdNMi41IDEzLjUgNyA5IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPicsdl89ZT0+e2NvbnN0IHQ9TWF0aC5tYXgoMCxNYXRoLmZsb29yKGUudG90YWwpKSxuPU1hdGgubWF4KDAsTWF0aC5mbG9vcihlLmZyb20pKSxvPU1hdGgubWF4KDAsTWF0aC5mbG9vcihlLmNvdW50KSkscz1uPjAscj1uK288dDtpZighcyYmIXIpcmV0dXJuIiI7Y29uc3QgaT1lLm5vdW4/YCAke3ZnKGUubm91bil9YDoiIixjPW8/YCR7bisxfeKAkyR7bitvfSBvZiAke3R9YDpgMCBvZiAke3R9YDtyZXR1cm5gPG5hdiBjbGFzcz0iY2stcGFnZXIiIGFyaWEtbGFiZWw9IlBhZ2VzIj48YnV0dG9uIGNsYXNzPSJjay1wYWdlci1idG4iIHR5cGU9ImJ1dHRvbiIgJHtlLnByZXZ9JHtzPyIiOiIgZGlzYWJsZWQifSBhcmlhLWxhYmVsPSJQcmV2aW91cyR7aX0iPiR7bV99PHNwYW4+UHJldmlvdXM8L3NwYW4+PC9idXR0b24+PHNwYW4gY2xhc3M9ImNrLXBhZ2VyLW4iPiR7Y308L3NwYW4+PGJ1dHRvbiBjbGFzcz0iY2stcGFnZXItYnRuIiB0eXBlPSJidXR0b24iICR7ZS5uZXh0fSR7cj8iIjoiIGRpc2FibGVkIn0gYXJpYS1sYWJlbD0iTmV4dCR7aX0iPjxzcGFuPk5leHQ8L3NwYW4+JHtmX308L2J1dHRvbj48L25hdj4ke2UuYWxsP2A8YnV0dG9uIGNsYXNzPSJjay1wYWdlci1hbGwiIHR5cGU9ImJ1dHRvbiIgJHtlLmFsbH0+PHNwYW4+VmlldyBhbGwgJHt0fTwvc3Bhbj4ke2JffTwvYnV0dG9uPmA6IiJ9YH0sa189KGUsdCk9PmA8YnV0dG9uIGNsYXNzPSJjay1wYWdlci1hbGwiIHR5cGU9ImJ1dHRvbiIgJHt0fT48c3BhbiBkYXRhLWxhYmVsPiR7dmcoZSl9PC9zcGFuPiR7Z199PC9idXR0b24+YCx4ZT1uZXcgbHUoe25hbWU6ImhvdGVsLXN0b3JlZnJvbnQiLHZlcnNpb246IjEuMC4wIn0se29wZW5MaW5rczp7fSxhdmFpbGFibGVEaXNwbGF5TW9kZXM6WyJpbmxpbmUiLCJmdWxsc2NyZWVuIl19KSxrZz17YXBwbHlEb2N1bWVudFRoZW1lOkckLGFwcGx5SG9zdFN0eWxlVmFyaWFibGVzOkokLGFwcGx5SG9zdEZvbnRzOlkkfSxxPWU9PmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGUpLGw9ZT0+U3RyaW5nKGU/PyIiKS5yZXBsYWNlKC9bJjw+IiddL2csdD0+dD09PSImIj8iJmFtcDsiOnQ9PT0iPCI/IiZsdDsiOnQ9PT0iPiI/IiZndDsiOnQ9PT0nIic/IiZxdW90OyI6IiYjMzk7Iik7bGV0IGplPSIiLEFzPSIiLElhPSIiO2NvbnN0IHlfPSgpPT5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZGF0YXNldC50aGVtZT09PSJkYXJrIixkdT0oKT0+e2NvbnN0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJyYW5kIik7aWYoIWV8fCFBcylyZXR1cm47Y29uc3QgdD15XygpJiYhIUlhLG49dD9JYTpBcztlLmdldEF0dHJpYnV0ZSgic3JjIikhPT1uJiYoZS5zcmM9biksZS5jbGFzc0xpc3QudG9nZ2xlKCJkYXJrLWFydCIsdCl9O2xldCBmYT0hMSxSYT0iIixFYT0iIixodT17fSxwdT0hMSx5Zz0iIixqPXtjaGVja0luOiIiLGNoZWNrT3V0OiIiLGd1ZXN0czoyfSxWPTE7Y29uc3QgVXQ9NTtsZXQgbmU9bnVsbCxmdD1bXSxpdD0iIixmZT1bXSxQPW51bGwsenM9MDtjb25zdCAkXz1uZXcgU2V0KFsiZm9yZ2V0UHJlZmVyZW5jZXMiLCJhZGRUb1RyaXAiLCJjbGVhclRyaXAiLCJyZXF1ZXN0Qm9va2luZyIsImNhbmNlbEJvb2tpbmciLCJjaGFuZ2VCb29raW5nIiwic2lnbkluIiwic2lnbk91dCJdKSxDdD1lPT57Y29uc3QgdD1TdHJpbmcoZT8udmlldz8/IiIpO3JldHVybiB0PT09ImhvdGVsInx8dD09PSJuby1yb29tcyJ8fHQ9PT0ibmVlZHMtZGF0ZXMiP2Bob3RlbDoke2UuaG90ZWw/LmlkPz8iIn1gOnQ9PT0iZXh0cmFzIj9lLmZvckJvb2tpbmc/YGV4dHJhczpib29raW5nOiR7ZS5mb3JCb29raW5nLmNvbmZpcm1hdGlvbkNvZGV9YDpgZXh0cmFzOiR7ZS5ob3RlbD8uaWQ/PyIifWA6dD09PSJwb2xpY3kifHx0PT09InBvbGljaWVzInx8dD09PSJwb2xpY3ktbWlzc2luZyI/YHBvbGljeToke2UuaG90ZWw/LmlkPz8iIn06JHtlLnRvcGljPz8iIn1gOnQ9PT0iY2FuY2VsbGF0aW9uLXByZXZpZXciP2BjYW5jZWw6JHtlLmJvb2tpbmc/LmNvbmZpcm1hdGlvbkNvZGU/PyIifWA6dD09PSJjaGFuZ2UtcHJldmlldyI/YGNoYW5nZToke2UuY29uZmlybWF0aW9uQ29kZT8/ZS5ib29raW5nPy5jb25maXJtYXRpb25Db2RlPz8iIn1gOnQ9PT0iZGVzdGluYXRpb25zIj9gZGVzdGluYXRpb25zOiR7ZS5zY29wZT8ubmFtZT8/IiJ9YDp0PT09ImhvdGVscyJ8fHQ9PT0ibm8taG90ZWxzIj9gaG90ZWxzOiR7ZS5hc2s/LmNpdHk/PyIifToke2UuYXNrPy5xdWVyeT8/ZS5xdWVyeT8/IiJ9YDp0fSxObj1lPT57IVB8fF9fLmhhcyhTdHJpbmcoUC52aWV3KSl8fEN0KGUpIT09Q3QoUCkmJihmZT1bLi4uZmUse3BheWxvYWQ6UCxsYWJlbDpTXyhQKSx2ZXJzaW9uOnpzfV0uc2xpY2UoLTYpKX0sd189ZT0+e2NvbnN0IHQ9U3RyaW5nKGU/LnZpZXc/PyIiKSxuPWU/LnN0YXk/LmNoZWNrSW4/e2NoZWNrSW46ZS5zdGF5LmNoZWNrSW4sY2hlY2tPdXQ6ZS5zdGF5LmNoZWNrT3V0LGd1ZXN0czplLnN0YXkuZ3Vlc3RzPz8yfTp7fTtpZih0PT09InRyaXAiKXJldHVybntrZXk6InZpZXdUcmlwIixhcmdzOnt9fTtpZih0PT09ImJvb2tpbmdzIilyZXR1cm57a2V5OiJsaXN0Qm9va2luZ3MiLGFyZ3M6e319O2lmKCh0PT09ImhvdGVscyJ8fHQ9PT0iZGVzdGluYXRpb25zInx8dD09PSJuby1ob3RlbHMiJiZlLmFzaykmJmUuYXNrKXJldHVybntrZXk6Imxpc3RIb3RlbHMiLGFyZ3M6ey4uLmUuYXNrfX07aWYodD09PSJjb21wYXJpc29uIiYmQXJyYXkuaXNBcnJheShlLmNvbHVtbnMpKXJldHVybntrZXk6ImNvbXBhcmUiLGFyZ3M6ey4uLm4sLi4uZS50aXRsZT97dGl0bGU6ZS50aXRsZX06e30sLi4uZS5yZWNvbW1lbmRlZD97cmVjb21tZW5kZWQ6ZS5yZWNvbW1lbmRlZH06e30sZW50cmllczplLmNvbHVtbnMubWFwKG89Pih7aG90ZWw6by5ob3RlbD8uaWQsLi4uby5iZXN0Rm9yP3tiZXN0Rm9yOm8uYmVzdEZvcn06e30sLi4uby5wcm9zPy5sZW5ndGg/e3Byb3M6by5wcm9zfTp7fSwuLi5vLmNvbnM/Lmxlbmd0aD97Y29uczpvLmNvbnN9Ont9fSkpfX07aWYoKHQ9PT0iaG90ZWwifHx0PT09Im5vLXJvb21zIikmJmUuaG90ZWw/LmlkKXJldHVybntrZXk6ImdldEhvdGVsIixhcmdzOntob3RlbDplLmhvdGVsLmlkLC4uLm4sLi4uZS5yb29tc193YW50ZWQ/e3Jvb21zOmUucm9vbXNfd2FudGVkfTp7fX19O2lmKHQ9PT0iZXh0cmFzIiYmZS5mb3JCb29raW5nKXJldHVybntrZXk6Imxpc3RFeHRyYXMiLGFyZ3M6Y3QoU3RyaW5nKGUuZm9yQm9va2luZy5jb25maXJtYXRpb25Db2RlKSl9O2lmKHQ9PT0iZXh0cmFzIiYmZS5ob3RlbD8uaWQpcmV0dXJue2tleToibGlzdEV4dHJhcyIsYXJnczp7aG90ZWw6ZS5ob3RlbC5pZCwuLi5ufX07aWYodD09PSJpdGluZXJhcnkiKXJldHVybntrZXk6Iml0aW5lcmFyeSIsYXJnczp7dGl0bGU6ZS50aXRsZSwuLi5uLGRheXM6KGUuZGF5cz8/W10pLm1hcChvPT4oe2xhYmVsOm8ubGFiZWwsLi4uby5ub3RlP3tub3RlOm8ubm90ZX06e30saXRlbXM6KG8uaXRlbXM/P1tdKS5tYXAocz0+cy5pZCl9KSl9fX0sU2Q9ZT0+e2ZlPWZlLmZpbHRlcih0PT4hZS5pbmNsdWRlcyhTdHJpbmcodC5wYXlsb2FkPy52aWV3KSkpfSxfXz1uZXcgU2V0KFsiZmluZC1ib29raW5nIiwiYm9va2luZyIsImNhbmNlbGxlZCIsImNoYW5nZWQiLCJlcnJvciIsIm5lZWRzLWd1ZXN0Iiwic2lnbmVkLW91dCIsIm1lbWJlci1zaWduLWluIiwibWVtYmVyLW5vdC1mb3VuZCJdKSxTXz1lPT57Y29uc3QgdD1TdHJpbmcoZT8udmlldz8/IiIpO2lmKHQ9PT0iY29tcGFyaXNvbiIpcmV0dXJuIGEoYCR7KGUuY29sdW1ucz8/W10pLmxlbmd0aH0gc2lkZSBieSBzaWRlYCxgJHsoZS5jb2x1bW5zPz9bXSkubGVuZ3RofSDlrrblr7nmr5RgKTtpZih0PT09Iml0aW5lcmFyeSIpcmV0dXJuIGEoInRoZSBwbGFuIiwi6KGM56iL6K6h5YiSIik7aWYodD09PSJuby1ob3RlbHMiKXJldHVybiBhKCJ0aGUgc2VhcmNoIiwi5pCc57SiIik7aWYodD09PSJkZXN0aW5hdGlvbnMiKXJldHVybiBlLnNjb3BlPy5uYW1lP1N0cmluZyhlLnNjb3BlLm5hbWUpOmEoImFsbCBkZXN0aW5hdGlvbnMiLCLlhajpg6jnm67nmoTlnLAiKTtpZih0PT09ImhvdGVscyIpe2lmKGUuYXNrPy5jaXR5KXJldHVybiBTdHJpbmcoZS5hc2suY2l0eSk7Y29uc3Qgbj1bLi4ubmV3IFNldCgoZS5ob3RlbHM/P1tdKS5tYXAobz0+U3RyaW5nKG8uY2l0eSkpKV07cmV0dXJuIG4ubGVuZ3RoPT09MT9TdHJpbmcoblswXSk6YShgJHtlLnRvdGFsPz8wfSBob3RlbHNgLGAke2UudG90YWw/PzB9IOWutumFkuW6l2ApfXJldHVybiB0PT09ImhvdGVsInx8dD09PSJuby1yb29tcyJ8fHQ9PT0ibmVlZHMtZGF0ZXMiP1N0cmluZyhlLmhvdGVsPy5uYW1lPz9hKCJ0aGUgaG90ZWwiLCLphZLlupciKSk6dD09PSJjYW5jZWxsYXRpb24tcHJldmlldyI/YSgidGhlIGNhbmNlbGxhdGlvbiIsIuWPlua2iCIpOnQ9PT0iY2hhbmdlLXByZXZpZXciP2EoInRoZSBjaGFuZ2UiLCLkv67mlLkiKTp0PT09Im1lbWJlciI/YSgieW91ciBtZW1iZXJzaGlwIiwi5Lya5ZGYIik6dD09PSJleHRyYXMiP2UuZm9yQm9va2luZz9hKGBhZGQtb25zIGZvciAke2UuZm9yQm9va2luZy5jb25maXJtYXRpb25Db2RlfWAsYCR7ZS5mb3JCb29raW5nLmNvbmZpcm1hdGlvbkNvZGV9IOeahOmZhOWKoOacjeWKoWApOmUuaG90ZWw/Lm5hbWU/YShgJHtTdHJpbmcoZS5ob3RlbC5uYW1lKX0gYWRkLW9uc2AsYCR7U3RyaW5nKGUuaG90ZWwubmFtZSl96ZmE5Yqg5pyN5YqhYCk6YSgidGhlIGhvdGVsIGFkZC1vbnMiLCLphZLlupfpmYTliqDmnI3liqEiKTp0PT09InRyaXAiP2EoInRoZSB0cmlwIiwi6KGM56iLIik6dD09PSJib29raW5ncyI/YSgieW91ciBib29raW5ncyIsIuaIkeeahOmihOiuoiIpOnQ9PT0icG9saWN5Inx8dD09PSJwb2xpY2llcyI/YSgidGhlIHBvbGljaWVzIiwi5pS/562WIik6YSgiYmFjayIsIui/lOWbniIpfSwkZz0oKT0+e2NvbnN0IGU9cSgiYmFja2J0biIpLHQ9ZmUuYXQoLTEpO2UuaGlkZGVuPSF0LHQmJihlLmlubmVySFRNTD1gJHtJLmNoZXZMfTxzcGFuPiR7bCh0LmxhYmVsKX08L3NwYW4+YCksd2coKX0sal89e2hvdGVsczoxLGhvdGVsOjIsIm5vLXJvb21zIjoyLCJuZWVkcy1kYXRlcyI6Mix0cmlwOjMsIm5lZWRzLWd1ZXN0IjozLGJvb2tpbmc6NH0sVF89ZT0+e2xldCB0PWpfW1N0cmluZyhlPy52aWV3Pz8iIildPz8wO2U/LnZpZXc9PT0idHJpcCImJiEoZS5saW5lcz8/W10pLmxlbmd0aCYmKHQ9MCksZT8udmlldz09PSJob3RlbHMiJiYhKGUuaG90ZWxzPz9bXSkubGVuZ3RoJiYodD0wKTtjb25zdCBuPWU/LnZpZXc9PT0iYm9va2luZyImJmU/LmJvb2tpbmc/LnN0YXR1cz09PSJhd2FpdGluZy1wYXltZW50IjtuJiYodD0zKSxlPy5vcGVuZWQmJiFuJiYodD0wKSxxKCJmbG93MyIpLnRleHRDb250ZW50PW4/YSgiUGF5Iiwi5LuY5qy+Iik6YSgiQm9vayIsIumihOiuoiIpO2NvbnN0IG89cSgiZmxvdyIpO28uaGlkZGVuPSF0O2Zvcihjb25zdCBzIG9mIG8ucXVlcnlTZWxlY3RvckFsbCgibGkiKSl7Y29uc3Qgcj1OdW1iZXIocy5kYXRhc2V0LnN0ZXApO3MuY2xhc3NMaXN0LnRvZ2dsZSgiZG9uZSIscjx0KSxyPT09dD9zLnNldEF0dHJpYnV0ZSgiYXJpYS1jdXJyZW50Iiwic3RlcCIpOnMucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWN1cnJlbnQiKX13ZygpfSx3Zz0oKT0+e3EoInN1YmhlYWQiKS5oaWRkZW49cSgiYmFja2J0biIpLmhpZGRlbiYmcSgiZmxvdyIpLmhpZGRlbn07bGV0IFZ0PSIiLE9hPSIiLE50PTAsRm49ITEsbHM9IiI7Y29uc3QgX2c9ZT0+e2NvbnN0IHQ9ZT8uWyJjdXJsZXNzL3RyaXAiXTtpZighdClyZXR1cm47Y29uc3Qgbj10eXBlb2YgdC5mcm9tPT0ic3RyaW5nIj90LmZyb206IiI7biYmbHMmJm4hPT1sc3x8KG4mJiFscyYmKGxzPW4pLHR5cGVvZiB0LnRyaXBJZD09InN0cmluZyImJnQudHJpcElkJiYoT2E9dC50cmlwSWQpLE50PU51bWJlcih0LmNvdW50Pz8wKSxBcnJheS5pc0FycmF5KHQubGluZXMpJiYoZnQ9dC5saW5lcyxGbj0hMCkpfSxTZz1lPT5PYT97Li4uZSx0cmlwOk9hfTplLGpnPW5ldyBNYXAsQV89ZT0+e2NvbnN0IHQ9W2U/LmJvb2tpbmcsLi4uQXJyYXkuaXNBcnJheShlPy5ib29raW5ncyk/ZS5ib29raW5nczpbXV07Zm9yKGNvbnN0IG4gb2YgdCluPy5jb25maXJtYXRpb25Db2RlJiZuPy5ndWVzdD8uZW1haWwmJmpnLnNldChTdHJpbmcobi5jb25maXJtYXRpb25Db2RlKS50b1VwcGVyQ2FzZSgpLFN0cmluZyhuLmd1ZXN0LmVtYWlsKSl9LGN0PWU9Pntjb25zdCB0PWpnLmdldChlLnRvVXBwZXJDYXNlKCkpO3JldHVybiB0P3tib29raW5nOmUsZW1haWw6dH06e2Jvb2tpbmc6ZX19LFRnPWU9Pmh1W2VdPz8iIixRbz1lPT4hIWh1W2VdLHpfPVFvO2xldCBBZz0iaG9sZCIsbXU9ITEsemc9ITEsbWU9bnVsbCx1dD0iIjtjb25zdCBQdD1lPT5tZSYmZT9tZS5zdXBwbGllcnMuZmluZCh0PT50LmlkPT09ZSk6dm9pZCAwLFVlPWU9Pntjb25zdCB0PVB0KGUpO2lmKCF0KXJldHVybntuYW1lOmplLGJvb2tpbmdNb2RlOkFnLGRlbW86cHUsc2FuZGJveDptdSxwaG9uZVJlcXVpcmVkOnpnLGV4dHJhczohMCxjaGFuZ2VzOiEwfTtjb25zdCBuPXQuY2FwYWJpbGl0aWVzPz97fTtyZXR1cm57bmFtZTpTdHJpbmcodC5uYW1lKSxib29raW5nTW9kZTpuLmJvb2tpbmc9PT0icGF5LWF0LWhvdGVsIj8icGF5LWF0LWhvdGVsIjoiaG9sZCIsZGVtbzp0Lm1vZGUhPT0ibGl2ZSIsc2FuZGJveDp0Lm1vZGU9PT0ic2FuZGJveCIscGhvbmVSZXF1aXJlZDohIW4ucmVxdWlyZXNQaG9uZSxleHRyYXM6bi5leHRyYXMhPT0hMSxjaGFuZ2VzOm4uY2hhbmdlcyE9PSExfX0sT249ZT0+e2NvbnN0IHQ9ZT8uYnJhbmQ/U3RyaW5nKGUuYnJhbmQpOiIiLG49UHQoZT8uc3VwcGxpZXIpO2lmKCFuKXJldHVybiB0O2NvbnN0IG89U3RyaW5nKG4ubmFtZSk7cmV0dXJuIHQmJnQhPT1vP2Ake299IMK3ICR7dH1gOm99LGpkPSgpPT4obWU/bWUuc3VwcGxpZXJzLm1hcChlPT5lLmNhcGFiaWxpdGllcz8uY29kZVByZWZpeCkuZmlsdGVyKEJvb2xlYW4pOkVhP1tFYV06W10pLm1hcChlPT5gJHtlfS3igKZgKS5qb2luKCIgb3IgIiksZnU9ZT0+bWU/Wy4uLm5ldyBTZXQoZS5tYXAodD0+U3RyaW5nKHQuc3VwcGxpZXI/PyIiKSkuZmlsdGVyKEJvb2xlYW4pKV06W107bGV0IFRuPSExO2NvbnN0IFRkPWU9PntUbj1lLGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5jYXJkIik/LmNsYXNzTGlzdC50b2dnbGUoImJ1c3kiLGUpfTtsZXQgQ3M9MCxDZz0iIixOZz0iIjtjb25zdCBsdD0oKT0+e2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiLmhlYWQiKTtpZighZSlyZXR1cm47Y29uc3QgdD0oKT0+ZS5zY3JvbGxJbnRvVmlldyh7YmxvY2s6Im5lYXJlc3QiLGlubGluZToibmVhcmVzdCJ9KTt0KCksc2V0VGltZW91dCh0LDE4MCl9LE09KGUsdD17fSxuPXt9KT0+e2NvbnN0IG89VGcoZSk7aWYoIW8pcmV0dXJuIFByb21pc2UucmVqZWN0KG5ldyBFcnJvcihgbm8gdG9vbCBmb3IgJHtlfWApKTtpZihUbilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1RkKCEwKTtjb25zdCBzPUNzO3JldHVybiB4ZS5jYWxsU2VydmVyVG9vbCh7bmFtZTpvLGFyZ3VtZW50czpTZyh0KX0pLmZpbmFsbHkoKCk9PlRkKCExKSkudGhlbihyPT57X2cocj8uX21ldGEpO2NvbnN0IGk9cj8uc3RydWN0dXJlZENvbnRlbnQsYz1pJiZuLmZvbGQ/bi5mb2xkKGkpOmksdT0kXy5oYXMoZSkmJmMmJmMudmlldyE9PSJlcnJvciI7aWYocz09PUNzJiZjKXtDZz1pP0pTT04uc3RyaW5naWZ5KGkpOiIiLE5nPUpTT04uc3RyaW5naWZ5KGMpO2NvbnN0IGQ9Q3QoYykhPT1DdChQKTtkJiYoWj1udWxsKSxuLnB1c2ghPT0hMSYmIW4uc3RheSYmTm4oYyksdSYmKHpzKz0xKSxjLnZpZXc9PT0iYm9va2luZyImJihTZChbInRyaXAiLCJuZWVkcy1kYXRlcyIsIm5lZWRzLWd1ZXN0Il0pLEFycmF5LmlzQXJyYXkoYy5mYWlsZWQpJiZjLmZhaWxlZC5sZW5ndGh8fChBZT1udWxsKSksKGMudmlldz09PSJjYW5jZWxsZWQifHxjLnZpZXc9PT0iY2hhbmdlZCIpJiZTZChbImNhbmNlbGxhdGlvbi1wcmV2aWV3IiwiY2hhbmdlLXByZXZpZXciXSksbi5zdGF5JiZjLnZpZXc9PT0idHJpcCImJlA/KEZufHwoZnQ9Yy5saW5lcz8/W10pLE50PUZuP050OmZ0Lmxlbmd0aCwkZShQKSk6KCRlKGMpLGQmJmx0KCkpfWVsc2UgdSYmKHpzKz0xKTtyZXR1cm4gQ18ocixuLm5vdGUpLHJ9KX0sQ189KGUsdCk9Pntjb25zdCBuPShlPy5jb250ZW50Pz9bXSkuZmluZChvPT5vPy50eXBlPT09InRleHQiKT8udGV4dDshbnx8IXhlLmdldEhvc3RDYXBhYmlsaXRpZXMoKT8udXBkYXRlTW9kZWxDb250ZXh0fHx4ZS51cGRhdGVNb2RlbENvbnRleHQoe2NvbnRlbnQ6W3t0eXBlOiJ0ZXh0Iix0ZXh0OnQ/YCR7dH0gJHtTdHJpbmcobil9YDpTdHJpbmcobil9XX0pLmNhdGNoKCgpPT57fSl9O2xldCBvYT0hMTtjb25zdCBOXz0iKFRoZSBjYXJkIHByaWNlZCBpdHMgb3duIGRlZmF1bHQgZGF0ZXMsIHRvbmlnaHQsIHRvIHNob3cgdGhlIHJvb21zOyB0aGUgZ3Vlc3QgaGFzIG5vdCBjaG9zZW4gdGhlbS4pIix2dD1lPT57bGV0IHQ9MDtmb3IobGV0IG49MDtuPGUubGVuZ3RoO24rPTEpdD0odCozMStlLmNoYXJDb2RlQXQobikpJTM2MDtyZXR1cm5gLS1zaG90LWE6aHNsKCR7dH0gNDIlIDM0JSk7LS1zaG90LWI6aHNsKCR7KHQrMzgpJTM2MH0gNDYlIDIyJSlgfSxNdD1lPT57Y29uc3QgdD1TdHJpbmcoZT8/IiIpLG49L15ccypb44CQXFtdXHMqKOaooeaLn3xzaW11bGF0ZWR8dGVzdClccypb44CRXF1dXHMqL2kuZXhlYyh0KSxvPWwoKG4/dC5zbGljZShuWzBdLmxlbmd0aCk6dCkucmVwbGFjZSgvLS9nLCLigJEiKSk7cmV0dXJuIG4/YDxzcGFuIGNsYXNzPSJzaW0iPiR7bChuWzFdKX08L3NwYW4+JHtvfWA6b30sa3Q9ZT0+ZS5yZXBsYWNlKC9eXHMqW+OAkFxbXVxzKijmqKHmi598c2ltdWxhdGVkfHRlc3QpXHMqW+OAkVxdXVxzKi9pLCIiKS5yZXBsYWNlKC9bXlxwe0x9XHB7Tn0gXS9ndSwiICIpLnNwbGl0KC9ccysvKS5maWx0ZXIoQm9vbGVhbikuc2xpY2UoMCwyKS5tYXAodD0+dFswXT8udG9VcHBlckNhc2UoKT8/IiIpLmpvaW4oIiIpLFBnPSc8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiBmaWxsPSJjdXJyZW50Q29sb3IiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMTIgMy41bDIuNiA1LjMgNS45LjktNC4zIDQuMSAxIDUuOEwxMiAxNi45IDYuOCAxOS42bDEtNS44TDMuNSA5LjdsNS45LS45eiIvPjwvc3ZnPicsbGU9KGUsdD0xLjgpPT5gPHN2ZyBjbGFzcz0iaWNvIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IiR7dH0iIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPiR7ZX08L3N2Zz5gLEk9e2NhbGVuZGFyOmxlKCc8cmVjdCB4PSIzLjUiIHk9IjUiIHdpZHRoPSIxNyIgaGVpZ2h0PSIxNS41IiByeD0iMi41Ii8+PHBhdGggZD0iTTMuNSA5LjVoMTdNOCAzdjRNMTYgM3Y0Ii8+Jyksc2VhcmNoOmxlKCc8Y2lyY2xlIGN4PSIxMSIgY3k9IjExIiByPSI2LjUiLz48cGF0aCBkPSJtMjAgMjAtNC4yLTQuMiIvPicpLGNoZWNrOmxlKCc8cGF0aCBkPSJtNSAxMi41IDQuNSA0LjVMMTkgNy41Ii8+JywyKSxkb25lOmxlKCc8cGF0aCBkPSJtNiAxMi41IDQgNCA4LTkiLz4nLDIuNiksYWxlcnQ6bGUoJzxwYXRoIGQ9Ik0xMiA0LjIgMyAxOS41aDE4eiIvPjxwYXRoIGQ9Ik0xMiAxMHY0LjJNMTIgMTdoLjAxIi8+JyksZXJyb3I6bGUoJzxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjguNSIvPjxwYXRoIGQ9Ik0xMiA3Ljh2NU0xMiAxNi4yaC4wMSIvPicpLGNsb2NrOmxlKCc8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI4LjUiLz48cGF0aCBkPSJNMTIgNy41VjEybDMgMiIvPicpLGJlZDpsZSgnPHBhdGggZD0iTTMgMTguNVY2LjVNMyAxNGgxOHY0LjVNMjEgMTR2LTIuNWEzIDMgMCAwIDAtMy0zaC03VjE0Ii8+PGNpcmNsZSBjeD0iNyIgY3k9IjExIiByPSIxLjgiLz4nKSx1c2VyczpsZSgnPGNpcmNsZSBjeD0iOSIgY3k9IjguNSIgcj0iMy4yIi8+PHBhdGggZD0iTTMuNSAxOWE1LjUgNS41IDAgMCAxIDExIDBNMTYgNS42YTMgMyAwIDAgMSAwIDUuOE0xNy41IDE0YTUgNSAwIDAgMSAzIDUiLz4nKSxzaXplOmxlKCc8cGF0aCBkPSJNNCA5VjRoNU0yMCAxNXY1aC01TTQgNGw2IDZNMjAgMjBsLTYtNiIvPicpLHZpZXc6bGUoJzxwYXRoIGQ9Ik0yLjUgMTJTNiA1LjUgMTIgNS41IDIxLjUgMTIgMjEuNSAxMiAxOCAxOC41IDEyIDE4LjUgMi41IDEyIDIuNSAxMnoiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIyLjgiLz4nKSxjdXA6bGUoJzxwYXRoIGQ9Ik00IDloMTJ2NWE1IDUgMCAwIDEtNSA1SDlhNSA1IDAgMCAxLTUtNXpNMTYgMTAuNWgxLjVhMi41IDIuNSAwIDAgMSAwIDVIMTZNOCAzLjVWNk0xMiAzLjVWNiIvPicpLGluZm86bGUoJzxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjguNSIvPjxwYXRoIGQ9Ik0xMiAxMXY1LjJNMTIgNy44aC4wMSIvPicpLHdpbmRvdzpsZSgnPHJlY3QgeD0iNC41IiB5PSI0IiB3aWR0aD0iMTUiIGhlaWdodD0iMTYiIHJ4PSIxLjUiLz48cGF0aCBkPSJNMTIgNHYxNk00LjUgMTJoMTUiLz4nKSxsb2NrOmxlKCc8cmVjdCB4PSI0LjUiIHk9IjEwLjUiIHdpZHRoPSIxNSIgaGVpZ2h0PSIxMCIgcng9IjIuMiIvPjxwYXRoIGQ9Ik04IDEwLjVWNy41YTQgNCAwIDAgMSA4IDB2MyIvPicpLHBpbjpsZSgnPHBhdGggZD0iTTEyIDIxcy02LjUtNS42LTYuNS0xMWE2LjUgNi41IDAgMCAxIDEzIDBDMTguNSAxNS40IDEyIDIxIDEyIDIxeiIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTAiIHI9IjIuNCIvPicpLGNoZXZMOmxlKCc8cGF0aCBkPSJtMTQuNSA2LTYgNiA2IDYiLz4nLDIpLGNoZXZSOmxlKCc8cGF0aCBkPSJtOS41IDYgNiA2LTYgNiIvPicsMiksYXJyb3c6bGUoJzxwYXRoIGQ9Ik01IDEyaDE0TTEzIDZsNiA2LTYgNiIvPicsMiksc2xpZGVyczpsZSgnPHBhdGggZD0iTTQgN2gxME0xOCA3aDJNNCAxN2g0TTEyIDE3aDgiLz48Y2lyY2xlIGN4PSIxNiIgY3k9IjciIHI9IjIiLz48Y2lyY2xlIGN4PSIxMCIgY3k9IjE3IiByPSIyIi8+Jyksc29ydDpsZSgnPHBhdGggZD0iTTcgNHYxNk0zLjUgNy41IDcgNGwzLjUgMy41TTE3IDIwVjRNMTMuNSAxNi41IDE3IDIwbDMuNS0zLjUiLz4nKSx0YWc6bGUoJzxwYXRoIGQ9Ik0zLjUgMTIuNXYtOGExIDEgMCAwIDEgMS0xaDhsOCA4LTkgOXoiLz48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iMS40Ii8+Jyl9O2xldCBOPSJlbiI7Y29uc3QgYT0oZSx0KT0+Tj09PSJlbiI/ZTpOPT09InpoIj90OnBfKE4sTj09PSJ6aC1IYW50Ij90OmUpLG5uPSgpPT5OPT09InpoInx8Tj09PSJ6aC1IYW50Iix4Zz1bIuWRqOaXpSIsIuWRqOS4gCIsIuWRqOS6jCIsIuWRqOS4iSIsIuWRqOWbmyIsIuWRqOS6lCIsIuWRqOWFrSJdLFBfPSgpPT5bMCwxLDIsMyw0LDUsNl0ubWFwKGU9Pm5ldyBEYXRlKERhdGUuVVRDKDIwMjQsMCwxK2UsMTIpKS50b0xvY2FsZURhdGVTdHJpbmcoTmVbTl0se3dlZWtkYXk6InNob3J0Iix0aW1lWm9uZToiVVRDIn0pLnJlcGxhY2UoL1wuJC8sIiIpKSxjZT1lPT5lPjA/ZT09PTE/YSgiMSBuaWdodCIsIjHmmZoiKTphKGAke2V9IG5pZ2h0c2AsYCR7ZX3mmZpgKToiIixKZT1lPT5OdW1iZXIoZSk9PT0xP2EoIjEgaG91ciIsIjHlsI/ml7YiKTphKGAke2V9IGhvdXJzYCxgJHtlfeWwj+aXtmApLHhfPWU9PmU9PT0xP2EoIjEgcm9vbSIsIjHpl7QiKTphKGAke2V9IHJvb21zYCxgJHtlfemXtGApLEtlPWU9Pntjb25zdCB0PW5ldyBEYXRlKGAke2V9VDEyOjAwOjAwWmApO2lmKE51bWJlci5pc05hTih0LmdldFRpbWUoKSkpcmV0dXJue21kOmUsZG93OiIiLGxvbmc6ZSxkYXk6ZSxtb246IiJ9O2NvbnN0IG49dC5nZXRVVENNb250aCgpKzEsbz10LmdldFVUQ0RhdGUoKTtpZihOPT09InpoIil7Y29uc3Qgcj14Z1t0LmdldFVUQ0RheSgpXT8/IiI7cmV0dXJue21kOmAke2595pyIJHtvfeaXpWAsZG93OnIsbG9uZzpgJHt0LmdldFVUQ0Z1bGxZZWFyKCl95bm0JHtufeaciCR7b33ml6UgJHtyLnJlcGxhY2UoIuWRqCIsIuaYn+acnyIpfWAsZGF5OlN0cmluZyhvKSxtb246YCR7bn3mnIhgfX1jb25zdCBzPXI9PnQudG9Mb2NhbGVEYXRlU3RyaW5nKE5lW05dLHsuLi5yLHRpbWVab25lOiJVVEMifSk7cmV0dXJuIE4hPT0iZW4iP3ttZDpzKHttb250aDoic2hvcnQiLGRheToibnVtZXJpYyJ9KSxkb3c6cyh7d2Vla2RheToic2hvcnQifSksbG9uZzpzKHt3ZWVrZGF5OiJsb25nIixkYXk6Im51bWVyaWMiLG1vbnRoOiJsb25nIix5ZWFyOiJudW1lcmljIn0pLGRheTpTdHJpbmcobyksbW9uOnMoe21vbnRoOiJzaG9ydCJ9KX06e21kOmAke299ICR7cyh7bW9udGg6InNob3J0In0pfWAsZG93OnMoe3dlZWtkYXk6InNob3J0In0pLGxvbmc6cyh7d2Vla2RheToibG9uZyIsZGF5OiJudW1lcmljIixtb250aDoibG9uZyIseWVhcjoibnVtZXJpYyJ9KSxkYXk6U3RyaW5nKG8pLG1vbjpzKHttb250aDoic2hvcnQifSl9fSxJXz1lPT5lJiZ0eXBlb2YgZS52YWx1ZT09Im51bWJlciI/YDxzcGFuIGNsYXNzPSJyYXRlIiBhcmlhLWxhYmVsPSIke2woYShgUmF0ZWQgJHtlLnZhbHVlfSBieSAke2UuY291bnR9IGd1ZXN0c2AsYOivhOWIhiAke2UudmFsdWV977yMJHtlLmNvdW50fSDmnaHngrnor4RgKSl9Ij4ke1BnfSR7bChlLnZhbHVlKX08c21hbGw+KCR7bChOdW1iZXIoZS5jb3VudCkudG9Mb2NhbGVTdHJpbmcoTmVbTl0pKX0pPC9zbWFsbD48L3NwYW4+YDoiIixSXz0iRGVtb25zdHJhdGlvbiBkYXRhOiB0aGVzZSByYXRlcyBhbmQgcm9vbSBjb3VudHMgd2VyZSBtYWRlIHVwIGZvciB0aGlzIGRlbW8uIixBZD1lPT57Y29uc3QgdD1yPT5yPD0uMDM5Mjg/ci8xMi45MjooKHIrLjA1NSkvMS4wNTUpKioyLjQsW24sbyxzXT1bMSwzLDVdLm1hcChyPT50KE51bWJlci5wYXJzZUludChlLnNsaWNlKHIscisyKSwxNikvMjU1KSk7cmV0dXJuIC4yMTI2KihuPz8wKSsuNzE1Mioobz8/MCkrLjA3MjIqKHM/PzApfSxhdD0oZSx0KT0+e2NvbnN0W24sb109W0FkKGUpLEFkKHQpXS5zb3J0KChzLHIpPT5yLXMpO3JldHVybigobj8/MCkrLjA1KS8oKG8/PzApKy4wNSl9LG1zPWU9PnR5cGVvZiBlPT0ic3RyaW5nIiYmL14jWzAtOWEtZl17Nn0kL2kudGVzdChlKSxaZT17bGlnaHQ6IiNmZmZmZmYiLGRhcms6IiMxMTE3MjMiLGluazoiIzBjMTQyNCIsaW5rRGFyazoiI2VlZjJmOSJ9LElnPWU9PntpZighbXMoZSkpcmV0dXJuO2NvbnN0IHQ9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O3Quc3R5bGUuc2V0UHJvcGVydHkoIi0tYWNjZW50LXJhdyIsZSksdC5kYXRhc2V0LmFjY2VudD0iIixhdChlLFplLmRhcmspPDM/dC5kYXRhc2V0LmFjY2VudERpbT0iIjpkZWxldGUgdC5kYXRhc2V0LmFjY2VudERpbX0sZ2E9e3NhbnM6Z2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoIi0tZi1zYW5zIikudHJpbSgpfHwic2Fucy1zZXJpZiIsZGlzcGxheTpnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZSgiLS1mLWRpc3BsYXkiKS50cmltKCl8fCJzZXJpZiJ9LHpkPW5ldyBTZXQoWy4uLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2xpbmtbcmVsPSJzdHlsZXNoZWV0Il0nKV0ubWFwKGU9PmUuZ2V0QXR0cmlidXRlKCJocmVmIik/PyIiKSksUmc9ZT0+e2lmKCFlfHwhQXJyYXkuaXNBcnJheShlLmNzcykpcmV0dXJuO2NvbnN0IHQ9bj0+dHlwZW9mIG49PSJzdHJpbmciJiYvXiJbQS1aYS16MC05IF0rIigsICJbQS1aYS16MC05IF0rIikqJC8udGVzdChuKT9uOiIiO2Zvcihjb25zdCBuIG9mIGUuY3NzKXtpZih0eXBlb2YgbiE9InN0cmluZyJ8fHpkLmhhcyhuKXx8IS9eKGh0dHBzOlwvXC9bXlxzIic8Pl0rfGh0dHA6XC9cLyhsb2NhbGhvc3R8MTI3XC4wXC4wXC4xKSg6XGQrKT9cL1teXHMiJzw+XSopJC8udGVzdChuKSljb250aW51ZTt6ZC5hZGQobik7Y29uc3Qgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7by5yZWw9InN0eWxlc2hlZXQiLG8uaHJlZj1uLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQobyl9RWc9e2JvZHk6dChlLmJvZHkpLGRpc3BsYXk6dChlLmRpc3BsYXkpLG51bWVyaWM6dChlLm51bWVyaWMpfSxPZygpfTtsZXQgRWc9e2JvZHk6IiIsZGlzcGxheToiIixudW1lcmljOiIifTtjb25zdCBFXz17InpoLUhhbnQiOntzYW5zOiciUGluZ0ZhbmcgVEMiLCAiTWljcm9zb2Z0IEpoZW5nSGVpIiwgIk5vdG8gU2FucyBUQyIsICJOb3RvIFNhbnMgQ0pLIFRDIicsc2VyaWY6JyJTb25ndGkgVEMiLCAiUE1pbmdMaVUiLCAiTm90byBTZXJpZiBUQyIsICJOb3RvIFNlcmlmIENKSyBUQyInfSxqYTp7c2FuczonIkhpcmFnaW5vIFNhbnMiLCAiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvTiIsICJZdSBHb3RoaWMiLCBNZWlyeW8sICJOb3RvIFNhbnMgSlAiLCAiTm90byBTYW5zIENKSyBKUCInLHNlcmlmOiciSGlyYWdpbm8gTWluY2hvIFByb04iLCAiWXUgTWluY2hvIiwgIk5vdG8gU2VyaWYgSlAiLCAiTm90byBTZXJpZiBDSksgSlAiJ30sa286e3NhbnM6JyJBcHBsZSBTRCBHb3RoaWMgTmVvIiwgIk1hbGd1biBHb3RoaWMiLCAiTm90byBTYW5zIEtSIiwgIk5vdG8gU2FucyBDSksgS1IiJyxzZXJpZjonIkFwcGxlTXl1bmdqbyIsIEJhdGFuZywgIk5vdG8gU2VyaWYgS1IiLCAiTm90byBTZXJpZiBDSksgS1IiJ319LE9nPSgpPT57Y29uc3QgZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsdD1FX1tOXSxuPWM9PnQ/Yy5zcGxpdCgiLCAiKS5maWx0ZXIodT0+IS8gU0NcYi8udGVzdCh1KSkuam9pbigiLCAiKTpjLG89KGMsdSxkKT0+W24oYyksdSxkXS5maWx0ZXIoQm9vbGVhbikuam9pbigiLCAiKSx7Ym9keTpzLGRpc3BsYXk6cixudW1lcmljOml9PUVnO3N8fHQ/ZS5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1mLXNhbnMiLG8ocyx0Py5zYW5zLGdhLnNhbnMpKTplLnN0eWxlLnJlbW92ZVByb3BlcnR5KCItLWYtc2FucyIpLHJ8fHQ/ZS5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1mLWRpc3BsYXkiLG8ocix0Py5zZXJpZixnYS5kaXNwbGF5KSk6ZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgiLS1mLWRpc3BsYXkiKSxpJiYoZS5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1mLW51bSIsbyhpLHQ/LnNhbnMsZ2Euc2FucykpLGUuc2V0QXR0cmlidXRlKCJkYXRhLWZvbnQtbnVtIiwiIikpfSxaZz1lPT57Y29uc3QgdD10eXBlb2YgZT09InN0cmluZyI/e2NvbG9yOmV9OmU7aWYoIXR8fCFtcyh0LmNvbG9yKSlyZXR1cm47Y29uc3Qgbj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbz0ocyxyKT0+bi5zdHlsZS5zZXRQcm9wZXJ0eShzLHIpO28oIi0tYnJhbmQiLHQuY29sb3IpLG8oIi0tYnJhbmQtaG92ZXIiLG1zKHQuaG92ZXIpP3QuaG92ZXI6YGNvbG9yLW1peChpbiBzcmdiLCAke3QuY29sb3J9IDg4JSwgYmxhY2spYCksbygiLS1icmFuZC1wcmVzcyIsbXModC5wcmVzcyk/dC5wcmVzczpgY29sb3ItbWl4KGluIHNyZ2IsICR7dC5jb2xvcn0gNzglLCBibGFjaylgKSxvKCItLWJyYW5kLW9uIixhdCh0LmNvbG9yLCIjZmZmZmZmIik+PWF0KHQuY29sb3IsWmUuaW5rKT8iI2ZmZmZmZiI6WmUuaW5rKSxvKCItLWJyYW5kLWluayIsYXQodC5jb2xvcixaZS5saWdodCk+PTQuNT90LmNvbG9yOlplLmluayksbygiLS1icmFuZC1mb2N1cyIsYXQodC5jb2xvcixaZS5saWdodCk+PTM/dC5jb2xvcjpaZS5pbmspLG8oIi0tYnJhbmQtaW5rLWRhcmsiLGF0KHQuY29sb3IsWmUuZGFyayk+PTQuNT90LmNvbG9yOlplLmlua0RhcmspLG8oIi0tYnJhbmQtZm9jdXMtZGFyayIsYXQodC5jb2xvcixaZS5kYXJrKT49Mz90LmNvbG9yOlplLmlua0RhcmspLG4uZGF0YXNldC5icmFuZD0iIixhdCh0LmNvbG9yLFplLmRhcmspPDM/bi5kYXRhc2V0LmJyYW5kRGFya0RpbT0iIjpkZWxldGUgbi5kYXRhc2V0LmJyYW5kRGFya0RpbX0sT189KCk9Pntjb25zdCBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjdXJsZXNzLXRoZW1lIik7aWYoISghZXx8ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSE9PSJhcHBsaWNhdGlvbi9qc29uIikpdHJ5e2NvbnN0IHQ9SlNPTi5wYXJzZShlLnRleHRDb250ZW50Pz8iIik7dD8uYWNjZW50JiZJZyh0LmFjY2VudCksdD8ucHJpbWFyeSYmWmcodC5wcmltYXJ5KSx0Py5mb250cyYmUmcodC5mb250cyl9Y2F0Y2h7fX07T18oKTtjb25zdCBaXz0oKT0+e0RfKCksZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmxhbmc9Tj09PSJ6aC1IYW50Ij8iemgtSGFudC1UVyI6TmVbTl0scSgiaG9tZSIpLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsYSgiQmFjayB0byB0aGUgaG90ZWxzIiwi5Zue5Yiw6YWS5bqX6aaW6aG1IikpLHEoImhlYWR0cmlwIikuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixhKCJWaWV3IHRoZSB0cmlwIiwi5p+l55yL6KGM56iLIikpLHEoImhlYWR0cmlwd29yZCIpLnRleHRDb250ZW50PWEoIlRyaXAiLCLooYznqIsiKSxxKCJmbG93Iikuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixhKCJCb29raW5nIHN0ZXBzIiwi6aKE6K6i5q2l6aqkIikpLHEoImZsb3cxIikudGV4dENvbnRlbnQ9YSgiSG90ZWwiLCLpgInphZLlupciKSxxKCJmbG93MiIpLnRleHRDb250ZW50PWEoIlJvb20iLCLpgInmiL/lnosiKSxxKCJmbG93MyIpLnRleHRDb250ZW50PWEoIkJvb2siLCLpooTorqIiKX0sTWc9ImN1cmxlc3MuaG90ZWwubGFuZyIsTV89KCk9Pnt0cnl7Y29uc3QgZT13aW5kb3cubG9jYWxTdG9yYWdlPy5nZXRJdGVtKE1nKTtyZXR1cm4gdXUuaW5jbHVkZXMoZT8/IiIpP2U6dm9pZCAwfWNhdGNoe3JldHVybn19O2xldCBxZz1NXygpLFphO2NvbnN0IHFfPSgpPT5xZz8/WmE/P3hhKHdpbmRvdy5vcGVuYWk/LmxvY2FsZSk/P3hhKG5hdmlnYXRvci5sYW5ndWFnZSk/PyJlbiIsc2E9KGU9ITApPT57Y29uc3QgdD1xXygpO3Q9PT1OJiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZGF0YXNldC5sYW5nU2V0fHwoTj10LGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kYXRhc2V0LmxhbmdTZXQ9IiIsWl8oKSxPZygpLGUmJlAmJiRlKFApKX0sRF89KCk9PntxKCJsYW5nbm93IikudGV4dENvbnRlbnQ9WyJlbiIsImRlIiwiZnIiLCJlcyJdLmluY2x1ZGVzKE4pP04udG9VcHBlckNhc2UoKTokZFtOXSxxKCJsYW5nYnRuIikuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixhKCJMYW5ndWFnZSIsIuivreiogCIpKSxxKCJsYW5nbWVudSIpLmlubmVySFRNTD11dS5tYXAoZT0+YDxidXR0b24gdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbXJhZGlvIiBhcmlhLWNoZWNrZWQ9IiR7ZT09PU4/InRydWUiOiJmYWxzZSJ9IiBkYXRhLWxhbmc9IiR7ZX0iIGxhbmc9IiR7TmVbZV19Ij4keyRkW2VdfTwvYnV0dG9uPmApLmpvaW4oIiIpfSxMXz0oKT0+e3EoImRlbW9zdHJpcCIpLmhpZGRlbj0hcHUscSgiZGVtb3RleHQiKS50ZXh0Q29udGVudD1tdT9hKGplP2BBIHRlc3QgY29weSBvZiAke2plfSdzIHN5c3RlbSDigJQgbm90aGluZyBoZXJlIGlzIGEgcmVhbCBib29raW5nLmA6IkEgdGVzdCBjb3B5IG9mIHRoZSBob3RlbCdzIHN5c3RlbSDigJQgbm90aGluZyBoZXJlIGlzIGEgcmVhbCBib29raW5nLiIsIumFkuW6l+ezu+e7n+eahOa1i+ivleWJr+acrO+8jOi/memHjOeahOmihOiuoumDveS4jeaYr+ecn+WunumihOiuouOAgiIpOmEoIlNhbXBsZSByYXRlcyBhbmQgcm9vbXMg4oCUIG5vdGhpbmcgaGVyZSBjYW4gcmVhbGx5IGJlIGJvb2tlZC4iLCLnpLrkvovku7fmoLzlkozmiL/lnovvvIzov5nph4zml6Dms5XnnJ/lrp7pooTorqLjgIIiKSxxKCJkZW1vbGFiZWwiKS50ZXh0Q29udGVudD1hKCJEZW1vIiwi5ryU56S6IikscSgiZGVtb3N0cmlwIikudGl0bGU9eWd8fFJffSxfZT1lPT57Y29uc3QgdD1LZShlKTtyZXR1cm4gdC5kb3c/Tj09PSJ6aCI/YCR7dC5tZH0gJHt0LmRvd31gOk49PT0iZW4iP2Ake3QuZG93fSAke3QubWR9YDpuZXcgRGF0ZShgJHtlfVQxMjowMDowMFpgKS50b0xvY2FsZURhdGVTdHJpbmcoTmVbTl0se3dlZWtkYXk6InNob3J0IixkYXk6Im51bWVyaWMiLG1vbnRoOiJzaG9ydCIsdGltZVpvbmU6IlVUQyJ9KTplfSxiZT0oZSx0KT0+TWF0aC5yb3VuZCgoRGF0ZS5wYXJzZShgJHt0fVQxMjowMDowMFpgKS1EYXRlLnBhcnNlKGAke2V9VDEyOjAwOjAwWmApKS84NjRlNSksWG89ZT0+ZT8uY2hlY2tJbiYmZT8uY2hlY2tPdXQ/ZS5jaGVja091dDw9ZS5jaGVja0luP19lKGUuY2hlY2tJbik6YCR7X2UoZS5jaGVja0luKX0g4oCTICR7X2UoZS5jaGVja091dCl9IMK3ICR7Y2UoYmUoZS5jaGVja0luLGUuY2hlY2tPdXQpKX1gOiIiLE5zPShlLHQsbik9Pntjb25zdCBvPWZ0LmZpbmQocz0+cy5raW5kPT09InJvb20iJiZzLmhvdGVsSWQ9PT1lJiZzLnJvb21SZWY9PT10JiZzLnN0YXk/LmNoZWNrSW49PT1uPy5jaGVja0luJiZzLnN0YXk/LmNoZWNrT3V0PT09bj8uY2hlY2tPdXQpO3JldHVybiBOdW1iZXIobz8ucXVhbnRpdHk/PzApfSxCXz0oZSx0KT0+e2NvbnN0IG49ZnQuZmluZChvPT5vLmtpbmQ9PT0iZXh0cmEiJiZvLmhvdGVsSWQ9PT1lJiZvLmV4dHJhUmVmPT09dCk7cmV0dXJuIE51bWJlcihuPy5xdWFudGl0eT8/MCl9LFBzPShlLHQsbixvPTEpPT50PjA/YDxzcGFuIGNsYXNzPSJzdGVwIj4KICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iICR7ZX0gZGF0YS1uPSIke3QtMX0iIGFyaWEtbGFiZWw9IiR7bChhKGBPbmUgZmV3ZXIgJHtufWAsYOWHj+WwkeS4gOmXtCAke259YCkpfSI+4oiSPC9idXR0b24+CiAgICAgICAgIDxzcGFuIGNsYXNzPSJuIj4ke3R9PC9zcGFuPgogICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgJHtlfSBkYXRhLW49IiR7dCsxfSIgYXJpYS1sYWJlbD0iJHtsKGEoYE9uZSBtb3JlICR7bn1gLGDlop7liqDkuIDpl7QgJHtufWApKX0iPis8L2J1dHRvbj4KICAgICAgIDwvc3Bhbj5gOmA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImFkZCIgJHtlfSBkYXRhLW49IiR7b30iIGFyaWEtbGFiZWw9IiR7bChhKGBBZGQgJHtufWAsYOa3u+WKoCAke259YCkpfSI+CiAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIKICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMTIgNXYxNE01IDEyaDE0Ii8+PC9zdmc+CiAgICAgICA8L2J1dHRvbj5gLERnPShlLHQpPT57Y29uc3Qgbj10fHxGZygpO3JldHVybighai5jaGVja0lufHxqLmNoZWNrSW48bikmJihqLmNoZWNrSW49biksKCFqLmNoZWNrT3V0fHxqLmNoZWNrT3V0PD1qLmNoZWNrSW4pJiYoai5jaGVja091dD1JdChqLmNoZWNrSW4sMSkpLHJhKCJjaSIsbix7cm9vbXM6dnUoImRhdGEtcm9vbXMtbiIsInJuIil9KX0sZ3U9e2NpOlsiY2kiLCJjbyJdLGxjaTpbImxjaSIsImxjbyJdLGRjaTpbImRjaSIsImRjbyJdfSxIXz0xMztsZXQgWj1udWxsO2NvbnN0IGJ1PXt9LGZzPWU9PmAke2Uuc2xpY2UoMCw3KX0tMDFgLE1hPShlLHQpPT57Y29uc3Qgbj1uZXcgRGF0ZShgJHtlfVQxMjowMDowMFpgKTtyZXR1cm4gbi5zZXRVVENNb250aChuLmdldFVUQ01vbnRoKCkrdCwxKSxuLnRvSVNPU3RyaW5nKCkuc2xpY2UoMCwxMCl9LHhzPTg7bGV0IEJ0PSExO2NvbnN0IExnPSgpPT5WPjE/ai5ndWVzdHM9PT0xP2EoYDEgZ3Vlc3QgcGVyIHJvb20gwrcgJHtWfSByb29tc2AsYOavj+mXtCAxIOS6uiDCtyAke1Z9IOmXtGApOmEoYCR7ai5ndWVzdHN9IGd1ZXN0cyBwZXIgcm9vbSDCtyAke1Z9IHJvb21zYCxg5q+P6Ze0ICR7ai5ndWVzdHN9IOS6uiDCtyAke1Z9IOmXtGApOmouZ3Vlc3RzPT09MT9hKCIxIGd1ZXN0IMK3IDEgcm9vbSIsIjEg5Lq6IMK3IDEg6Ze0Iik6YShgJHtqLmd1ZXN0c30gZ3Vlc3RzIMK3IDEgcm9vbWAsYCR7ai5ndWVzdHN9IOS6uiDCtyAxIOmXtGApLHZ1PShlLHQpPT5gCiAgPGRpdiBjbGFzcz0id2hlbi1yb29tcyB3aGVuLXBhcnR5IiByb2xlPSJncm91cCIgYXJpYS1sYWJlbD0iJHthKCJHdWVzdHMgYW5kIHJvb21zIiwi5Lq65pWw5ZKM6Ze05pWwIil9Ij4KICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icGFydHktdGlsZSIgZGF0YS1wYXJ0eSBhcmlhLWV4cGFuZGVkPSIke0J0PyJ0cnVlIjoiZmFsc2UifSIgYXJpYS1jb250cm9scz0iJHt0fS1wYW5lbCI+CiAgICAgIDxzcGFuIGNsYXNzPSJ3bCI+JHthKCJHdWVzdHMiLCLkurrmlbAiKX08L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJwYXJ0eS12IiBkYXRhLXBhcnR5LXdvcmRzPiR7bChMZygpKX08L3NwYW4+CiAgICAgICR7SS5jaGV2Un0KICAgIDwvYnV0dG9uPgogICAgPGRpdiBjbGFzcz0icGFydHktcGFuZWwiIGlkPSIke3R9LXBhbmVsIiR7QnQ/IiI6IiBoaWRkZW4ifT4KICAgICAgPGRpdiBjbGFzcz0icGFydHktcm93Ij4KICAgICAgICA8c3Bhbj4ke2EoIkd1ZXN0cyBpbiBlYWNoIHJvb20iLCLmr4/pl7TlhaXkvY/kurrmlbAiKX08L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9InN0ZXAgbGlnaHQiPgogICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGRhdGEtZ3Vlc3RzLW49Ii0xIiBkYXRhLW9uPSIke2V9IiBhcmlhLWxhYmVsPSIke2EoIk9uZSBmZXdlciBndWVzdCIsIuWwkeS4gOS6uiIpfSIke2ouZ3Vlc3RzPD0xPyIgZGlzYWJsZWQiOiIifT7iiJI8L2J1dHRvbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJuIiBkYXRhLWd1ZXN0cy1zaG93bj4ke2woai5ndWVzdHMpfTwvc3Bhbj4KICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBkYXRhLWd1ZXN0cy1uPSIxIiBkYXRhLW9uPSIke2V9IiBhcmlhLWxhYmVsPSIke2EoIk9uZSBtb3JlIGd1ZXN0Iiwi5aSa5LiA5Lq6Iil9IiR7ai5ndWVzdHM+PXhzPyIgZGlzYWJsZWQiOiIifT4rPC9idXR0b24+CiAgICAgICAgPC9zcGFuPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGFydHktcm93Ij4KICAgICAgICA8c3Bhbj4ke2EoIlJvb21zIiwi6Ze05pWwIil9PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJzdGVwIGxpZ2h0Ij4KICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiAke2V9PSItMSIgYXJpYS1sYWJlbD0iJHthKCJPbmUgZmV3ZXIgcm9vbSIsIuWwkeS4gOmXtCIpfSIke1Y8PTE/IiBkaXNhYmxlZCI6IiJ9PuKIkjwvYnV0dG9uPgogICAgICAgICAgPHNwYW4gY2xhc3M9Im4iIGlkPSIke3R9Ij4ke2woVil9PC9zcGFuPgogICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iICR7ZX09IjEiIGFyaWEtbGFiZWw9IiR7YSgiT25lIG1vcmUgcm9vbSIsIuWkmuS4gOmXtCIpfSIke1Y+PVV0PyIgZGlzYWJsZWQiOiIifT4rPC9idXR0b24+CiAgICAgICAgPC9zcGFuPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PmAscmE9KGUsdCxuKT0+e2J1W2VdPXttaW46dCxyb29tczpuLnJvb21zLHNpZGU6bi5zaWRlPz8iIixwZW5kaW5nOiEhbi5wZW5kaW5nfTtjb25zdFtvLHNdPWd1W2VdLHI9YmUoai5jaGVja0luLGouY2hlY2tPdXQpLGk9KGMsdSxkKT0+e2NvbnN0IGg9S2UodSkscD1aPy5wYWlyPT09ZSYmWi5waWNraW5nPT09YztyZXR1cm4gbi5wZW5kaW5nJiYhcD9gPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJ3aGVuLXRpbGUiIGRhdGEtY2FsPSIke2V9OiR7Y30iIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSIke2R9LiAke2EoIkNob29zZSBhIGRhdGUiLCLpgInmi6nml6XmnJ8iKX0iPgogICAgICAgIDxzcGFuIGNsYXNzPSJ3bCI+JHtkfTwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0id3Ygd3YtZW1wdHkiPiR7YSgiQWRkIGRhdGUiLCLpgInml6XmnJ8iKX08L3NwYW4+CiAgICAgIDwvYnV0dG9uPmA6YDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0id2hlbi10aWxlIiBkYXRhLWNhbD0iJHtlfToke2N9IiBhcmlhLWV4cGFuZGVkPSIke3A/InRydWUiOiJmYWxzZSJ9IiBhcmlhLWxhYmVsPSIke2R9LCAke2woaC5sb25nKX0uICR7YSgiQ2hhbmdlIHRoZSBkYXRlcyIsIuS/ruaUueaXpeacnyIpfSI+CiAgICAgICAgPHNwYW4gY2xhc3M9IndsIj4ke2R9PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJ3diI+JHtsKGgubWQpfTxzbWFsbD4ke2woaC5kb3cpfTwvc21hbGw+PC9zcGFuPgogICAgICA8L2J1dHRvbj5gfTtyZXR1cm5gCiAgPGRpdiBjbGFzcz0id2hlbmJhciR7bi5wZW5kaW5nPyIgcGVuZGluZyI6IiJ9IiBkYXRhLXdoZW49IiR7ZX0iPgogICAgPGRpdiBjbGFzcz0id2hlbi1kYXRlcyI+CiAgICAgICR7aSgiaW4iLGouY2hlY2tJbixhKCJDaGVjay1pbiIsIuWFpeS9jyIpKX0KICAgICAgPHNwYW4gY2xhc3M9IndoZW4tbiIke2U9PT0iY2kiPycgaWQ9Im5pZ2h0cyInOiIifT4ke24ucGVuZGluZz8i4oaSIjpsKGNlKHIpKX08L3NwYW4+CiAgICAgICR7aSgib3V0IixqLmNoZWNrT3V0LGEoIkNoZWNrLW91dCIsIuemu+W6lyIpKX0KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0id2hlbi1zaWRlIj4ke24ucm9vbXN9JHtuLnNpZGU/PyIifTwvZGl2PgogICAgPGlucHV0IHR5cGU9ImRhdGUiIGlkPSIke299IiB2YWx1ZT0iJHtsKGouY2hlY2tJbil9IiBtaW49IiR7bCh0KX0iIGhpZGRlbj4KICAgIDxpbnB1dCB0eXBlPSJkYXRlIiBpZD0iJHtzfSIgdmFsdWU9IiR7bChqLmNoZWNrT3V0KX0iIG1pbj0iJHtsKEl0KGouY2hlY2tJbiwxKSl9IiBoaWRkZW4+CiAgICAke1o/LnBhaXI9PT1lP0ZfKCk6IiJ9CiAgPC9kaXY+YH0sRl89KCk9PntpZighWilyZXR1cm4iIjtjb25zdCBlPVosdD1mcyhlLm1pbiksbj1NYSh0LEhfLTEpLG89aD0+KEtlKGgpLF9lKGgpKSxzPW5ldyBNYXAoZS5wYWlyPT09ImNpIiYmZS5waWNraW5nPT09ImluIiYmQXJyYXkuaXNBcnJheShQPy5kYXRlcyk/UC5kYXRlcy5maWx0ZXIoaD0+aC5mcm9tKS5tYXAoaD0+W1N0cmluZyhoLmNoZWNrSW4pLGhdKTpbXSkscj1bLi4ucy52YWx1ZXMoKV0uZmluZChoPT5oLmxvd2VzdCk/P1suLi5zLnZhbHVlcygpXS5maW5kKGg9PmguYmVzdCksaT1iZShTdHJpbmcoUD8uc3RheT8uY2hlY2tJbj8/IiIpLFN0cmluZyhQPy5zdGF5Py5jaGVja091dD8/IiIpKXx8MSxjPWUucGlja2luZz09PSJpbiI/YSgiQ2hvb3NlIGNoZWNrLWluIiwi6YCJ5oup5YWl5L2P5pel5pyfIik6YSgiQ2hvb3NlIGNoZWNrLW91dCIsIumAieaLqeemu+W6l+aXpeacnyIpLHU9ZS5pbiYmZS5vdXQ/YCR7byhlLmluKX0g4oCTICR7byhlLm91dCl9IMK3ICR7Y2UoYmUoZS5pbixlLm91dCkpfWA6ZS5pbj9gJHthKCJDaGVjay1pbiIsIuWFpeS9jyIpfSAke28oZS5pbil9YDoiIixkPWg9Pntjb25zdCBwPW5ldyBEYXRlKGAke2h9VDEyOjAwOjAwWmApLG09Tj09PSJ6aCI/YCR7cC5nZXRVVENGdWxsWWVhcigpfeW5tCR7cC5nZXRVVENNb250aCgpKzF95pyIYDpwLnRvTG9jYWxlRGF0ZVN0cmluZyhOZVtOXSx7bW9udGg6ImxvbmciLHllYXI6Im51bWVyaWMiLHRpbWVab25lOiJVVEMifSkseT0ocC5nZXRVVENEYXkoKSs2KSU3LCQ9bmV3IERhdGUoRGF0ZS5VVEMocC5nZXRVVENGdWxsWWVhcigpLHAuZ2V0VVRDTW9udGgoKSsxLDApKS5nZXRVVENEYXRlKCksXz1bXTtmb3IobGV0IEM9MDtDPHk7Qys9MSlfLnB1c2goJzxzcGFuIGNsYXNzPSJjZCBibGFuayI+PC9zcGFuPicpO2ZvcihsZXQgQz0xO0M8PSQ7Qys9MSl7Y29uc3QgVD1gJHtoLnNsaWNlKDAsOCl9JHtTdHJpbmcoQykucGFkU3RhcnQoMiwiMCIpfWAsQT1UPGUubWluLFI9VD09PWUuaW4scmU9VD09PWUub3V0LFk9WyJjZCIsUj8iaW4iOiIiLFImJmUub3V0PyJoYXMtb3V0IjoiIixyZT8ib3V0IjoiIixlLmluJiZlLm91dCYmVD5lLmluJiZUPGUub3V0PyJiZXR3ZWVuIjoiIixUPT09ZS5taW4/InRvZGF5IjoiIixzLmhhcyhUKT8iaGFzLXAiOiIiLHMuZ2V0KFQpPy5sb3dlc3Q/Imxvd2VzdCI6IiIsZS5waWNraW5nPT09Im91dCImJmUuaW4mJlQ8ZS5pbj8iYmVmb3JlIjoiIl0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiAiKSxHPXMuZ2V0KFQpPy5mcm9tO18ucHVzaChgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSIke1l9IiBkYXRhLWRheT0iJHtUfSIke0E/IiBkaXNhYmxlZCI6IiJ9IGFyaWEtbGFiZWw9IiR7bChLZShUKS5sb25nKX0ke1I/YSgiLCBjaGVjay1pbiIsIu+8jOWFpeS9jyIpOnJlP2EoIiwgY2hlY2stb3V0Iiwi77yM56a75bqXIik6IiJ9JHtHP2woYShgLCBmcm9tICR7R31gLGDvvIwke0d96LW3YCkpOiIifSIke1J8fHJlPycgYXJpYS1wcmVzc2VkPSJ0cnVlIic6IiJ9PjxzcGFuPjxiIGNsYXNzPSJjZC1uIj4ke0N9PC9iPiR7Rz9gPGkgY2xhc3M9ImNkLXAiPiR7bChHKX08L2k+YDoiIn08L3NwYW4+PC9idXR0b24+YCl9cmV0dXJuYDxkaXYgY2xhc3M9ImNhbC1tb250aCI+CiAgICAgICAgPGRpdiBjbGFzcz0iY2FsLW10Ij4ke2wobSl9PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iY2FsLWdyaWQiPiR7KE49PT0iemgiP1si5LiAIiwi5LqMIiwi5LiJIiwi5ZubIiwi5LqUIiwi5YWtIiwi5pelIl06Tj09PSJlbiI/WyJNbyIsIlR1IiwiV2UiLCJUaCIsIkZyIiwiU2EiLCJTdSJdOlBfKCkpLm1hcChDPT5gPHNwYW4gY2xhc3M9ImNhbC1kb3ciIGFyaWEtaGlkZGVuPSJ0cnVlIj4ke0N9PC9zcGFuPmApLmpvaW4oIiIpfSR7Xy5qb2luKCIiKX08L2Rpdj4KICAgICAgPC9kaXY+YH07cmV0dXJuYAogICAgPGRpdiBjbGFzcz0iY2FsIiByb2xlPSJncm91cCIgYXJpYS1sYWJlbD0iJHtjfSI+CiAgICAgIDxkaXYgY2xhc3M9ImNhbC10b3AiPgogICAgICAgIDxkaXYgY2xhc3M9ImNhbC1zYXkiIGFyaWEtbGl2ZT0icG9saXRlIj4ke2N9PHNtYWxsPiR7bCh1KX08L3NtYWxsPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImNhbC1uYXYiPgogICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGRhdGEtY2FsLW5hdj0iLTEiIGFyaWEtbGFiZWw9IiR7YSgiUHJldmlvdXMgbW9udGgiLCLkuIrkuKrmnIgiKX0iJHtlLm1vbnRoPD10PyIgZGlzYWJsZWQiOiIifT4ke0kuY2hldkx9PC9idXR0b24+CiAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgZGF0YS1jYWwtbmF2PSIxIiBhcmlhLWxhYmVsPSIke2EoIk5leHQgbW9udGgiLCLkuIvkuKrmnIgiKX0iJHtlLm1vbnRoPj1uPyIgZGlzYWJsZWQiOiIifT4ke0kuY2hldlJ9PC9idXR0b24+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJjYWwtbW9udGhzIj4ke2QoZS5tb250aCl9JHtkKE1hKGUubW9udGgsMSkpfTwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJjYWwtZm9vdCI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImNhbC1sZWdlbmQiPiR7cj9gPHNwYW4gY2xhc3M9ImNhbC1iZXN0Ij4ke2woYShgTG93ZXN0OiBhcnJpdmUgJHtvKFN0cmluZyhyLmNoZWNrSW4pKX0sIGZyb20gJHtyLmZyb219YCxg5pyA5L2O77yaJHtvKFN0cmluZyhyLmNoZWNrSW4pKX3lhaXkvY/vvIwke3IuZnJvbX3otbdgKSl9PC9zcGFuPmA6ZS5waWNraW5nPT09ImluIj9hKCJUYXAgdGhlIG5pZ2h0IHlvdSBhcnJpdmUuIiwi54K56YCJ5YWl5L2P6YKj5aSp44CCIik6YSgiVGFwIHRoZSBtb3JuaW5nIHlvdSBsZWF2ZS4iLCLngrnpgInnprvlupfpgqPlpKnjgIIiKX0ke3Muc2l6ZT9gPHNtYWxsPiR7bChhKGBQcmljZXM6ICR7Y2UoaSl9IGZyb20gdGhhdCBkYXksIHRheGVzIGluLiBEYXlzIHdpdGhvdXQgb25lIHdlcmUgbm90IHF1b3RlZC5gLGDku7fmoLzkuLrlvZPlpKnlhaXkvY8gJHtjZShpKX3nmoTmgLvku7fvvIzlkKvnqI7vvJvmsqHmnInku7fmoLznmoTml6XlrZDmnKrmiqXku7fjgIJgKSl9PC9zbWFsbD5gOiIifTwvc3Bhbj4KICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBzb2Z0IHNtIiB0eXBlPSJidXR0b24iIGRhdGEtY2FsLWNsb3NlPiR7ZS5pbiYmZS5vdXQ/YSgiRG9uZSIsIuWujOaIkCIpOmEoIkNsb3NlIiwi5YWz6ZetIil9PC9idXR0b24+CiAgICAgIDwvZGl2PgogICAgPC9kaXY+YH0seHQ9KGUsdCk9Pntjb25zdCBuPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYC53aGVuYmFyW2RhdGEtd2hlbj0iJHtlfSJdYCksbz1idVtlXTshbnx8IW98fChuLm91dGVySFRNTD1yYShlLG8ubWluLHtyb29tczpvLnJvb21zLHNpZGU6by5zaWRlLHBlbmRpbmc6by5wZW5kaW5nfSksdCYmZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0KT8uZm9jdXMoKSl9LFVfPShlLHQpPT57Y29uc3Qgbj1idVtlXTtpZighbilyZXR1cm47aWYoWiYmWi5wYWlyPT09ZSYmWi5waWNraW5nPT09dCl7Wj1udWxsLHh0KGUsYFtkYXRhLWNhbD0iJHtlfToke3R9Il1gKTtyZXR1cm59Y29uc3Qgbz1qLmNoZWNrSW4scz1qLmNoZWNrT3V0O1o9e3BhaXI6ZSxwaWNraW5nOnQsbW9udGg6ZnModD09PSJvdXQiJiZzP3M6b3x8bi5taW4pLGluOm8sb3V0OnMsbWluOm4ubWlufSxaLm1vbnRoPGZzKG4ubWluKSYmKFoubW9udGg9ZnMobi5taW4pKSx4dChlLGBbZGF0YS1jYWw9IiR7ZX06JHt0fSJdYCl9LEJnPSgpPT57aWYoIVo/LmluKXJldHVybjtjb25zdHtwYWlyOmV9PVosdD1aLmluLG49Wi5vdXQmJloub3V0PnQ/Wi5vdXQ6SXQodCwxKTtaPW51bGw7Y29uc3RbbyxzXT1ndVtlXSxyPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG8pLGk9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQocyk7IXJ8fCFpfHwoaS52YWx1ZT1uLHIudmFsdWU9dCxyLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJjaGFuZ2UiLHtidWJibGVzOiEwfSkpLHh0KGUsYFtkYXRhLWNhbD0iJHtlfTppbiJdYCkpfSxWXz1lPT57aWYoIVp8fGU8Wi5taW4pcmV0dXJuO2NvbnN0e3BhaXI6dH09WjtpZihaLnBpY2tpbmc9PT0iaW4ifHwhWi5pbnx8ZTw9Wi5pbil7Wi5pbj1lLCghWi5vdXR8fFoub3V0PD1lKSYmKFoub3V0PSIiKSxaLnBpY2tpbmc9Im91dCIseHQodCxgW2RhdGEtZGF5PSIke2V9Il1gKTtyZXR1cm59Wi5vdXQ9ZSxCZygpfSxIZz0oKT0+Y2Uoai5jaGVja0luJiZqLmNoZWNrT3V0P2JlKGouY2hlY2tJbixqLmNoZWNrT3V0KTowKSxJdD0oZSx0KT0+bmV3IERhdGUoRGF0ZS5wYXJzZShgJHtlfVQxMjowMDowMFpgKSt0Kjg2NGU1KS50b0lTT1N0cmluZygpLnNsaWNlKDAsMTApLEZnPSgpPT5uZXcgRGF0ZShEYXRlLm5vdygpLW5ldyBEYXRlKCkuZ2V0VGltZXpvbmVPZmZzZXQoKSo2ZTQpLnRvSVNPU3RyaW5nKCkuc2xpY2UoMCwxMCksVWc9ZT0+e2NvbnN0IHQ9Wy4uLmU/LnRvZGF5P1tlLnRvZGF5Lm1pbixlLnRvZGF5Lm1heF06W10sLi4uKGU/LmhvdGVscz8/W10pLm1hcChvPT5TdHJpbmcoby50b2RheVRoZXJlPz8iIikpXS5maWx0ZXIobz0+L15cZHs0fS1cZHsyfS1cZHsyfSQvLnRlc3QobykpLnNvcnQoKSxuPUZnKCk7cmV0dXJue21pbjpbdFswXT8/bixuXS5zb3J0KClbMF0/P24sc3RhcnQ6dC5hdCgtMSk/P259fSxXXz1lPT57Y29uc3R7bWluOnQsc3RhcnQ6bn09VWcoZSk7KCFqLmNoZWNrSW58fGouY2hlY2tJbjx0KSYmKGouY2hlY2tJbj1uKSwoIWouY2hlY2tPdXR8fGouY2hlY2tPdXQ8PWouY2hlY2tJbikmJihqLmNoZWNrT3V0PUl0KGouY2hlY2tJbiwxKSk7Y29uc3Qgbz1yYSgiZGNpIix0LHtyb29tczp2dSgiZGF0YS1yb29tcy1uIiwicm4iKSxzaWRlOmUuc2NvcGU/IiI6YDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJmaW5kIj4ke0kuc2VhcmNofSR7YSgiU2VhcmNoIiwi5pCc57SiIil9PC9idXR0b24+YH0pLHM9YDxkaXYgY2xhc3M9InNlYXJjaCI+CiAgICAgIDxsYWJlbCBjbGFzcz0id2hlcmUiPiR7SS5waW59PGlucHV0IGlkPSJ3aGVyZSIgdHlwZT0ic2VhcmNoIiBhdXRvY29tcGxldGU9Im9mZiIgcGxhY2Vob2xkZXI9IiR7YSgiQSBjaXR5LCBhIGNvdW50cnkgb3IgYSBob3RlbCIsIuWfjuW4guOAgeWbveWutuaIlumFkuW6l+WQjSIpfSIgYXJpYS1sYWJlbD0iJHthKCJXaGVyZSB0byIsIuebrueahOWcsCIpfSI+PC9sYWJlbD4KICAgICAgJHtvfQogICAgPC9kaXY+YCxyPWQ9PmA8ZGl2IGNsYXNzPSJwbGFjZXMiPiR7ZC5tYXAoKGgscCk9PmA8YnV0dG9uIGNsYXNzPSJjaGlwIHBsYWNlIiB0eXBlPSJidXR0b24iIGRhdGEtcGxhY2U9IiR7bChoLm5hbWUpfSIke3A+PV90PyIgaGlkZGVuIjoiIn0+JHtsKGgubmFtZSl9IDxzbWFsbD4ke2woaC5jb3VudCl9PC9zbWFsbD48L2J1dHRvbj5gKS5qb2luKCIiKX0ke2QubGVuZ3RoPl90P2A8YnV0dG9uIGNsYXNzPSJjaGlwIHBsYWNlIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJtb3JlLXBsYWNlcyI+KyR7ZC5sZW5ndGgtX3R9IG1vcmU8L2J1dHRvbj5gOiIifTwvZGl2PmAsaT1lLnNjb3BlO2lmKGkpcmV0dXJuW2A8ZGl2IGNsYXNzPSJoZWxsbyI+PGgyIGNsYXNzPSJoLW5hbWUiPiR7bChpLm5hbWUpfTwvaDI+PGRpdiBjbGFzcz0iaC13aGVyZSI+JHtsKGUudG90YWwpfSAke2woZS52b2NhYj8ubm91blBsdXJhbD8/ImhvdGVscyIpfSBpbiAke2woKGkuY2l0aWVzPz9bXSkubGVuZ3RoKX0gY2l0aWVzPC9kaXY+PC9kaXY+YCxgPGRpdiBjbGFzcz0ic2VhcmNoIj4ke299PC9kaXY+YCxyKGkuY2l0aWVzPz9bXSksYDxkaXYgY2xhc3M9ImZvb3QiPjxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtcGxhY2UtYWxsPSIke2woaS5uYW1lKX0iPiR7bChhKGBBbGwgJHtlLnRvdGFsfSBpbiAke2kubmFtZX1gLGAke2kubmFtZX3lhajpg6ggJHtlLnRvdGFsfSDlrrZgKSl9PC9idXR0b24+PC9kaXY+YF0uam9pbigiIik7Y29uc3QgYz1lLnJlZ2lvbnM/P1tdLHU9Yy5mbGF0TWFwKGQ9PmQuY291bnRyaWVzPz9bXSkuZmxhdE1hcChkPT5kLmNpdGllcz8/W10pLm1hcCgoZCxoKT0+KHtjOmQsaTpofSkpLnNvcnQoKGQsaCk9Pk51bWJlcihoLmMuY291bnQpLU51bWJlcihkLmMuY291bnQpfHxkLmktaC5pKS5zbGljZSgwLF90KS5tYXAoKHtjOmR9KT0+ZCk7cmV0dXJuW2A8ZGl2IGNsYXNzPSJoZWxsbyI+PGgyIGNsYXNzPSJoLW5hbWUiPiR7YSgiV2hlcmUgdG8/Iiwi5oOz5L2P5ZOq6YeM77yfIil9PC9oMj48ZGl2IGNsYXNzPSJoLXdoZXJlIj4ke2woTj09PSJlbiI/YCR7ZS50b3RhbH0gJHtlLnZvY2FiPy5ub3VuUGx1cmFsPz8iaG90ZWxzIn0ke21lP2AgZnJvbSAke21lLnN1cHBsaWVycy5sZW5ndGh9IGdyb3Vwc2A6IiJ9LCBwcmljZWQgZm9yIHRoZSBuaWdodHMgeW91IGNob29zZS5gOm1lP2EoYCR7ZS50b3RhbH0gaG90ZWxzIGZyb20gJHttZS5zdXBwbGllcnMubGVuZ3RofSBncm91cHMsIHByaWNlZCBmb3IgdGhlIG5pZ2h0cyB5b3UgY2hvb3NlLmAsYCR7ZS50b3RhbH0g5a626YWS5bqX77yM5p2l6IeqICR7bWUuc3VwcGxpZXJzLmxlbmd0aH0g5Liq6ZuG5Zui77yM5oyJ5L2g6YCJ55qE5pel5pyf5oql5Lu344CCYCk6YShgJHtlLnRvdGFsfSBob3RlbHMsIHByaWNlZCBmb3IgdGhlIG5pZ2h0cyB5b3UgY2hvb3NlLmAsYCR7ZS50b3RhbH0g5a626YWS5bqX77yM5oyJ5L2g6YCJ55qE5pel5pyf5oql5Lu344CCYCkpfTwvZGl2PjwvZGl2PmAscyxtZSYmbWUuc3VwcGxpZXJzLmxlbmd0aD4xP2A8ZGl2IGNsYXNzPSJyZWdpb24iPjxkaXYgY2xhc3M9ImNvdW50cnluYW1lIj4ke2EoIkhvdGVsIGdyb3VwcyIsIumFkuW6l+mbhuWboiIpfTwvZGl2PjxkaXYgY2xhc3M9InBsYWNlcyBncm91cHMiPiR7bWUuc3VwcGxpZXJzLm1hcChkPT5gPGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSBncm91cCIgdHlwZT0iYnV0dG9uIiBkYXRhLWdyb3VwLWhvbWU9IiR7bChkLmlkKX0iPiR7ZC5sb2dvVXJsP2A8aW1nIHNyYz0iJHtsKGQubG9nb1VybCl9IiBhbHQ9IiI+YDoiIn0ke2woZC5uYW1lKX08L2J1dHRvbj5gKS5qb2luKCIiKX08L2Rpdj48L2Rpdj5gOiIiLHUubGVuZ3RoP2A8ZGl2IGNsYXNzPSJyZWdpb24iPjxkaXYgY2xhc3M9ImNvdW50cnluYW1lIj4ke2EoIlRvcCBjaXRpZXMiLCLng63pl6jln47luIIiKX08L2Rpdj4ke3IodSl9PC9kaXY+YDoiIixjLmxlbmd0aD4xP2A8ZGl2IGNsYXNzPSJyZWdpb24iPjxkaXYgY2xhc3M9ImNvdW50cnluYW1lIj4ke2EoIkJ5IHJlZ2lvbiIsIuaMieWcsOWMuiIpfTwvZGl2PjxkaXYgY2xhc3M9InBsYWNlcyI+JHtjLm1hcCgoZCxoKT0+YDxidXR0b24gY2xhc3M9ImNoaXAgcGxhY2UgdGFiIiB0eXBlPSJidXR0b24iIGRhdGEtcmVnaW9uPSIke2h9IiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+JHtsKGQubmFtZSl9IDxzbWFsbD4ke2woZC5jb3VudCl9PC9zbWFsbD48L2J1dHRvbj5gKS5qb2luKCIiKX08L2Rpdj48L2Rpdj5gOiIiLC4uLmMubWFwKChkLGgpPT5gCiAgICAgIDxkaXYgY2xhc3M9InJlZ2lvbiIgZGF0YS1yZWdpb24tYm9keT0iJHtofSIgaGlkZGVuPgogICAgICAgICR7KGQuY291bnRyaWVzPz9bXSkubWFwKChwLG0pPT57Y29uc3QgeT1wLmNpdGllcz8/W10sJD15Lmxlbmd0aD09PTE/eVswXTp2b2lkIDA7cmV0dXJuYAogICAgICAgICAgPGRpdiBjbGFzcz0iZGVzdCIke20+PWJhPyIgaGlkZGVuIjoiIn0+CiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImRlc3QtY291bnRyeSIgdHlwZT0iYnV0dG9uIiBkYXRhLXBsYWNlPSIke2wocC5uYW1lKX0iPiR7bChwLm5hbWUpfSR7JCYmJC5uYW1lIT09cC5uYW1lP2A8c21hbGw+IMK3ICR7bCgkLm5hbWUpfTwvc21hbGw+YDoiIn0gPHNtYWxsIGNsYXNzPSJuIj4ke2wocC5jb3VudCl9PC9zbWFsbD48L2J1dHRvbj4KICAgICAgICAgICAgJHt5Lmxlbmd0aD4xP3IoeSk6IiJ9CiAgICAgICAgICA8L2Rpdj5gfSkuam9pbigiIil9CiAgICAgICAgJHsoZC5jb3VudHJpZXM/P1tdKS5sZW5ndGg+YmE/YDxkaXYgY2xhc3M9InBsYWNlcyI+PGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0ibW9yZS1jb3VudHJpZXMiPiskeyhkLmNvdW50cmllcz8/W10pLmxlbmd0aC1iYX0gbW9yZSBjb3VudHJpZXM8L2J1dHRvbj48L2Rpdj5gOiIifQogICAgICA8L2Rpdj5gKSxgPGRpdiBjbGFzcz0iZm9vdCI+CiAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYWxsLWhvdGVscyI+JHtsKE49PT0iZW4iP2BCcm93c2UgYWxsICR7ZS50b3RhbH0gJHtlLnZvY2FiPy5ub3VuUGx1cmFsPz8iaG90ZWxzIn1gOmEoYEJyb3dzZSBhbGwgJHtlLnRvdGFsfSBob3RlbHNgLGDmtY/op4jlhajpg6ggJHtlLnRvdGFsfSDlrrbphZLlupdgKSl9PC9idXR0b24+CiAgICAgPC9kaXY+YCxgPGRpdiBjbGFzcz0iaG9tZS1saW5rcyI+CiAgICAgICA8YnV0dG9uIGNsYXNzPSJsaW5reSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiTXkgYm9va2luZ3MiLCLmiJHnmoTpooTorqIiKX08L2J1dHRvbj4KICAgICAgIDxzcGFuIGFyaWEtaGlkZGVuPSJ0cnVlIj7Ctzwvc3Bhbj4KICAgICAgIDxidXR0b24gY2xhc3M9Imxpbmt5IiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJmaW5kLWJvb2tpbmciPiR7YSgiRmluZCBhIGJvb2tpbmcgYnkgaXRzIGNvZGUiLCLnlKjnoa7orqTnoIHmn6Xmib7pooTorqIiKX08L2J1dHRvbj4KICAgICA8L2Rpdj5gXS5qb2luKCIiKX0sX3Q9OCxiYT02LFZnPShlLHQ9ITEpPT57Y29uc3Qgbj1lLmZvclN0YXk7aWYobilyZXR1cm5gPHNwYW4gY2xhc3M9InQtZnJvbSI+JHtsKG4udG90YWwpfTxzbWFsbCBjbGFzcz0idC1zdWIiPjxzcGFuIGNsYXNzPSJuYiI+JHtsKFtOdW1iZXIobi5yb29tcyk+MT9hKGAke24ucm9vbXN9IHJvb21zIMOXYCxgJHtuLnJvb21zfemXtCDDl2ApOiIiLE51bWJlcihuLmhvdXJzKT4wP2EoYCR7SmUobi5ob3Vycyl9IHRvZGF5YCxg5LuK5aSpJHtKZShuLmhvdXJzKX1gKTpjZShOdW1iZXIobi5uaWdodHMpKV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiAiKSl9PC9zcGFuPjxzcGFuIGNsYXNzPSJ0LXNlcCI+IMK3IDwvc3Bhbj48c3BhbiBjbGFzcz0ibmIiPiR7YSgidGF4ZXMgaW4iLCLlkKvnqI7otLkiKX08L3NwYW4+PC9zbWFsbD48L3NwYW4+YDtpZihlLm5vUm9vbXNGb3JTdGF5KXtjb25zdCBvPWUubm9Sb29tc0ZvclN0YXlDb2RlLHM9ZS5ub1Jvb21zRm9yU3RheUFyZ3M/P3t9O3JldHVybmA8c3BhbiBjbGFzcz0idC1mcm9tIHQtbm9uZSI+JHsobz9vPT09InBhcnR5Ijovc2xlZXBzLy50ZXN0KFN0cmluZyhlLm5vUm9vbXNGb3JTdGF5KSkpP2woYShgTm8gcm9vbSBzbGVlcHMgJHtqLmd1ZXN0c31gLGDmsqHmnInlj6/kvY8gJHtqLmd1ZXN0c30g5Lq655qE5oi/5Z6LYCkpOm89PT0iaG91cmx5LW92ZXIiP2woYSgiVG9kYXkncyBob3VycyBhcmUgb3ZlciIsIuS7iuWkqeeahOmSn+eCueaIv+W3sue7k+adnyIpKTpvPT09ImhvdXJseS1ub3QteWV0IiYmcy5vcGVuc0F0P2woYShgT24gc2FsZSB0b2RheSBmcm9tICR7cy5vcGVuc0F0fWAsYOS7iuWkqSAke3Mub3BlbnNBdH0g5byA5Y2WYCkpOm89PT0iaG91cmx5LW5vbmUiP2EoIk5vIHJvb21zIGJ5IHRoZSBob3VyIHRvZGF5Iiwi5LuK5aSp5rKh5pyJ6ZKf54K55oi/Iik6bz09PSJzb2xkLW91dCImJnQ/YSgiU29sZCBvdXQgYnkgdGhlIGhvdXIgdG9kYXkiLCLku4rlpKnnmoTpkp/ngrnmiL/lt7LorqLmu6EiKTphKCJObyByb29tIGZvciB0aGVzZSBkYXRlcyIsIui/meS6m+aXpeacn+ayoeacieepuuaIvyIpfTwvc3Bhbj5gfXJldHVybiBlLmZyb21OaWdodGx5P2A8c3BhbiBjbGFzcz0idC1mcm9tIj48c3BhbiBjbGFzcz0idC1wcmUiPiR7YSgiRnJvbSAiLCIiKX08L3NwYW4+JHtsKGUuZnJvbU5pZ2h0bHkpfSR7YSgiIiwnPHNwYW4gY2xhc3M9InQtcHJlIj4g6LW3PC9zcGFuPicpfTxzbWFsbD4ke2EoIiAvIG5pZ2h0ICsgdGF4Iiwi5q+P5pma77yM5pyq5ZCr56iO6LS5Iil9PC9zbWFsbD48L3NwYW4+YDpgPHNwYW4gY2xhc3M9InQtZnJvbSB0LW5vbmUiPiR7YSgiQWRkIGRhdGVzIGZvciBwcmljZXMiLCLpgInlpb3ml6XmnJ/nnIvku7fmoLwiKX08L3NwYW4+YH07bGV0IHFhPSExO2NvbnN0IEtfPWU9Pntjb25zdCB0PWUuZm9yU3RheTtpZighdClyZXR1cm4iIjtjb25zdCBuPVtlLmxvd2VzdD9gPHNwYW4gY2xhc3M9ImJhZGdlIGdvb2QiPiR7YSgiTG93ZXN0IHByaWNlIiwi5pyA5L2O5Lu3Iil9PC9zcGFuPmA6IiIsLi4uUWcodC5sYWJlbHMsdC5tZWFsKSx0LmZyZWVDYW5jZWxsYXRpb24mJiFxYT9gPHNwYW4gY2xhc3M9InBlcmsiPiR7SS5jaGVja30ke2EoIkZyZWUgY2FuY2VsbGF0aW9uIiwi5YWN6LS55Y+W5raIIil9PC9zcGFuPmA6IiIsTnVtYmVyKHQucm9vbXNMZWZ0KTw9Mz9gPHNwYW4gY2xhc3M9ImJhZGdlIHdhcm4iPiR7SS5jbG9ja30ke2woYShgJHt0LnJvb21zTGVmdH0gbGVmdGAsYOS7heWJqSAke3Qucm9vbXNMZWZ0fSDpl7RgKSl9PC9zcGFuPmA6IiJdLmZpbHRlcihCb29sZWFuKTtyZXR1cm4gbi5sZW5ndGg/YDxzcGFuIGNsYXNzPSJ0LXRhZ3MiPiR7bi5qb2luKCIiKX08L3NwYW4+YDoiIn0sSHQ9KCk9PmouY2hlY2tJbiYmai5jaGVja091dD97Y2hlY2tJbjpqLmNoZWNrSW4sY2hlY2tPdXQ6ai5jaGVja091dCxndWVzdHM6ai5ndWVzdHMsLi4uVj4xP3tyb29tczpWfTp7fX06e30sZ3M9ZT0+e2NvbnN0e2NoZWNrSW46dCxjaGVja091dDpuLGd1ZXN0czpvLHJvb21zOnMsLi4ucn09ZT8/e307cmV0dXJuIHJ9LEdfPShlLHQpPT57Y29uc3R7bWluOm4sc3RhcnQ6b309VWcodCk7cmV0dXJuKCFqLmNoZWNrSW58fGouY2hlY2tJbjxuKSYmKGouY2hlY2tJbj1vKSwoIWouY2hlY2tPdXR8fGouY2hlY2tPdXQ8PWouY2hlY2tJbikmJihqLmNoZWNrT3V0PUl0KGouY2hlY2tJbiwxKSkscmEoImxjaSIsbix7cm9vbXM6dnUoImRhdGEtbGlzdC1yb29tcyIsImxybiIpLHNpZGU6ZT8iIjpgPGJ1dHRvbiBjbGFzcz0iZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InByaWNlLWxpc3QiPiR7YSgiU2hvdyBwcmljZXMiLCLmn6XnnIvku7fmoLwiKX08L2J1dHRvbj5gLHBlbmRpbmc6IWV9KX07bGV0IEdlPSJkYXRlcyI7Y29uc3QgV2c9ImRhdGVzIixicz1lPT57Y29uc3QgdD1lPz97fTtyZXR1cm57Li4udC5ncm91cHx8dC5zdXBwbGllcj97Z3JvdXA6dC5ncm91cHx8dC5zdXBwbGllcn06e30sLi4udC5icmFuZD97YnJhbmQ6dC5icmFuZH06e30sLi4uQXJyYXkuaXNBcnJheSh0LmZhY2lsaXRpZXMpJiZ0LmZhY2lsaXRpZXMubGVuZ3RoP3tmYWNpbGl0aWVzOnQuZmFjaWxpdGllc306e30sLi4udC5mcmVlQ2FuY2VsbGF0aW9uP3tmcmVlQ2FuY2VsbGF0aW9uOiEwfTp7fSwuLi50LmJyZWFrZmFzdD97YnJlYWtmYXN0OiEwfTp7fX19LENkPWU9Pntjb25zdHtncm91cDp0LHN1cHBsaWVyOm4sYnJhbmQ6byxmYWNpbGl0aWVzOnMsZnJlZUNhbmNlbGxhdGlvbjpyLGJyZWFrZmFzdDppLC4uLmN9PWU/P3t9O3JldHVybiBjfSxKXz1lPT57Y29uc3QgdD1icyhlKTtyZXR1cm4odC5ncm91cD8xOjApKyh0LmJyYW5kPzE6MCkrKHQuZmFjaWxpdGllcz8ubGVuZ3RoPz8wKSsodC5mcmVlQ2FuY2VsbGF0aW9uPzE6MCkrKHQuYnJlYWtmYXN0PzE6MCkrKGU/LmhvdXJseT8xOjApfSxZXz1lPT57aWYoIWUucmVmaW5lJiYhZS5ob3VybHkpcmV0dXJuIiI7Y29uc3QgdD1lLnJlZmluZT8/e30sbj0ocyxyLGksYyk9PmA8YnV0dG9uIGNsYXNzPSJjaGlwIHBsYWNlIHNvcnQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1maWx0ZXI9IiR7bChzKX0iIGFyaWEtcHJlc3NlZD0iJHtjPyJ0cnVlIjoiZmFsc2UifSI+JHtsKHIpfSR7aT09PXZvaWQgMD8iIjpgIDxzbWFsbD4ke2woaSl9PC9zbWFsbD5gfTwvYnV0dG9uPmAsbz0ocyxyKT0+ci5sZW5ndGg/YDxkaXYgY2xhc3M9ImZncm91cCI+PHNwYW4gY2xhc3M9InNvcnRzLWsiPiR7bChzKX08L3NwYW4+JHtyLmpvaW4oIiIpfTwvZGl2PmA6IiI7cmV0dXJuW28oYSgiR3JvdXAiLCLpm4blm6IiKSwodC5ncm91cHM/P1tdKS5tYXAocz0+bihgZ3JvdXA6JHtzLmlkfWAsU3RyaW5nKFB0KHMuaWQpPy5uYW1lPz9zLmlkKSxzLmNvdW50LHMub24pKSksbyhhKCJCcmFuZCIsIuWTgeeJjCIpLCh0LmJyYW5kcz8/W10pLm1hcChzPT5uKGBicmFuZDoke3MubmFtZX1gLHMubmFtZSxzLmNvdW50LHMub24pKSksbyhhKCJIYXMiLCLorr7mlr0iKSwodC5mYWNpbGl0aWVzPz9bXSkubWFwKHM9Pm4oYGZhY2lsaXR5OiR7cy5rZXl9YCxzLmxhYmVsLHMuY291bnQscy5vbikpKSxvKGEoIlJvb20iLCLmiL/lnosiKSxbLi4uKHQucm9vbT8/W10pLm1hcChzPT5uKHMua2V5LHMubGFiZWwscy5jb3VudCxzLm9uKSksLi4uZS5ob3VybHk/W24oImhvdXJseSIsYSgiQnkgdGhlIGhvdXIgdG9kYXkiLCLmnInpkp/ngrnmiL8iKSx2b2lkIDAsISFlLmFzaz8uaG91cmx5KV06W11dKV0uam9pbigiIil9LERhPWU9PiEhZT8uYXNrPy5ob3VybHl8fChlPy5ob3RlbHM/P1tdKS5zb21lKHQ9Pk51bWJlcih0LmZvclN0YXk/LmhvdXJzKT4wKSxLZz0oZSx0LG4pPT57Y29uc3Qgbz0hIWUuc3RheT8uY2hlY2tJbixzPUpfKGUuYXNrKSxyPVlfKGUpLGk9R2cuZmluZCgoW2RdKT0+ZD09PW4pLGM9aT9hKGlbMV0saVsyXSk6YSgiUmVjb21tZW5kZWQiLCLmjqjojZAiKSx1PShkLGgpPT5gPGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSB0b29sIiB0eXBlPSJidXR0b24iIGRhdGEtcGFuZWw9IiR7ZH0iIGFyaWEtZXhwYW5kZWQ9IiR7R2U9PT1kPyJ0cnVlIjoiZmFsc2UifSI+JHtofTwvYnV0dG9uPmA7cmV0dXJuYAogICAgJHtEYShlKT9gPGRpdiBjbGFzcz0iaG91ci1ub3RlIj4ke0kuY2xvY2t9PHNwYW4+JHthKCJSb29tcyBieSB0aGUgaG91ciwgdG9kYXkuIFBpY2sgYSBob3RlbCB0byBjaG9vc2Ugd2hlbiB5b3UgYXJyaXZlLiIsIuS7iuWkqeeahOmSn+eCueaIv++8jOmAieS4gOWutuWGjeaMkeWIsOW6l+aXtumXtOOAgiIpfTwvc3Bhbj48YnV0dG9uIGNsYXNzPSJsaW5reSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0ibmlnaHRseS1saXN0Ij4ke2EoIlN0YXkgdGhlIG5pZ2h0IGluc3RlYWQiLCLmlLnnnIvmjInmmZrlhaXkvY8iKX08L2J1dHRvbj48L2Rpdj5gOkdfKG8sZSl9CiAgICAke3R8fHJ8fHM/YDxkaXYgY2xhc3M9InBsYWNlcyB0b29sYmFyIj4KICAgICAgJHt0P3UoInNvcnQiLGAke0kuc29ydH08c3Bhbj4ke2EoIlNvcnQiLCLmjpLluo8iKX0ke2EoIjogIiwi77yaIil9JHtsKGMpfTwvc3Bhbj5gKToiIn0KICAgICAgJHtyfHxzP3UoImZpbHRlcnMiLGAke0kuc2xpZGVyc308c3Bhbj4ke2EoIkZpbHRlcnMiLCLnrZvpgIkiKX0ke3M/YCDCtyAke3N9YDoiIn08L3NwYW4+YCk6IiJ9CiAgICAgICR7cz9gPGJ1dHRvbiBjbGFzcz0ibGlua3kiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImNsZWFyLWZpbHRlcnMiPiR7YSgiQ2xlYXIiLCLmuIXpmaQiKX08L2J1dHRvbj5gOiIifQogICAgPC9kaXY+YDoiIn0KICAgICR7dD9gPGRpdiBjbGFzcz0iZmlsdGVyLXBhbmVsIiBkYXRhLXBhbmVsLWJvZHk9InNvcnQiJHtHZT09PSJzb3J0Ij8iIjoiIGhpZGRlbiJ9PiR7dH08L2Rpdj5gOiIifQogICAgJHtyP2A8ZGl2IGNsYXNzPSJmaWx0ZXItcGFuZWwiIGRhdGEtcGFuZWwtYm9keT0iZmlsdGVycyIke0dlPT09ImZpbHRlcnMiPyIiOiIgaGlkZGVuIn0+JHtyfTwvZGl2PmA6IiJ9YH0sR2c9W1siZ3JvdXAiLCJSZWNvbW1lbmRlZCIsIuaOqOiNkCJdLFsicHJpY2UtbG93IiwiTG93ZXN0IHByaWNlIiwi5Lu35qC85LuO5L2O5Yiw6auYIl0sWyJwcmljZS1oaWdoIiwiSGlnaGVzdCBwcmljZSIsIuS7t+agvOS7jumrmOWIsOS9jiJdLFsicmF0aW5nIiwiUmF0aW5nIiwi6K+E5YiGIl1dLFFfPTM7bGV0IFVuPSJpbmxpbmUiLEpnPVtdO2NvbnN0IFZuPSgpPT5Vbj09PSJmdWxsc2NyZWVuIixrdT0oKT0+e2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NvbnRlbnQgLnRpbGVzIik7aWYoZT8ub2Zmc2V0V2lkdGgpe2NvbnN0IG89Z2V0Q29tcHV0ZWRTdHlsZShlKS5ncmlkVGVtcGxhdGVDb2x1bW5zLnNwbGl0KCIgIikuZmlsdGVyKEJvb2xlYW4pLmxlbmd0aDtpZihvPjApcmV0dXJuIG99Y29uc3QgdD13aW5kb3cuaW5uZXJXaWR0aHx8cSgiY29udGVudCIpLmNsaWVudFdpZHRofHwwO2lmKHQ8PTUyMClyZXR1cm4gMTtjb25zdCBuPXEoImNvbnRlbnQiKS5jbGllbnRXaWR0aHx8dC00MDtyZXR1cm4gTWF0aC5tYXgoMSxNYXRoLmZsb29yKChuKzE0KS8yMzQpKXx8Mn07bGV0IHl1PTA7Y29uc3QgWF89NSxhYT0oZT0wKT0+e2NvbnN0IHQ9eXV8fGt1KCksbj10PT09MT9YXzpNYXRoLm1heCgyLHQqUV8pO3JldHVybiBlPm4mJmU8PW4rTWF0aC5tYXgoMix0KT9lOm59O2xldCBJcz0wO2NvbnN0IGVTPWU9Pk49PT0iZW4iP2U6ZS5yZXBsYWNlKC8+UHJldmlvdXM8L2csYD4ke2EoIlByZXZpb3VzIHBhZ2UiLCLkuIrkuIDpobUiKX08YCkucmVwbGFjZSgvPk5leHQ8L2csYD4ke2EoIk5leHQgcGFnZSIsIuS4i+S4gOmhtSIpfTxgKS5yZXBsYWNlKC9hcmlhLWxhYmVsPSJQcmV2aW91c1teIl0qIi9nLGBhcmlhLWxhYmVsPSIke2EoIlByZXZpb3VzIHBhZ2UiLCLkuIrkuIDpobUiKX0iYCkucmVwbGFjZSgvYXJpYS1sYWJlbD0iTmV4dFteIl0qIi9nLGBhcmlhLWxhYmVsPSIke2EoIk5leHQgcGFnZSIsIuS4i+S4gOmhtSIpfSJgKS5yZXBsYWNlKC9hcmlhLWxhYmVsPSJQYWdlcyIvZyxgYXJpYS1sYWJlbD0iJHthKCJQYWdlcyIsIue/u+mhtSIpfSJgKS5yZXBsYWNlKC8oXGQrKeKAkyhcZCspIG9mIChcZCspL2csKHQsbixvLHMpPT5hKGAke2594oCTJHtvfSBvZiAke3N9YCxg56ysICR7bn3igJMke299IOWutu+8jOWFsSAke3N9IOWutmApKS5yZXBsYWNlKC8wIG9mIChcZCspL2csKHQsbik9PmEoYDAgb2YgJHtufWAsYOWFsSAke259IOWutmApKS5yZXBsYWNlKC9WaWV3IGFsbCAoXGQrKS9nLCh0LG4pPT5hKGBWaWV3IGFsbCAke259YCxg5p+l55yL5YWo6YOoICR7bn0g5a62YCkpLHRTPShlLHQpPT5OPT09ImVuIj9gJHt0fSAke3Q9PT0xP2Uudm9jYWI/Lm5vdW4/PyJob3RlbCI6ZS52b2NhYj8ubm91blBsdXJhbD8/ImhvdGVscyJ9YDp0PT09MT9hKCIxIGhvdGVsIiwiMSDlrrYiKTphKGAke3R9IGhvdGVsc2AsYCR7dH0g5a62YCksblM9ZT0+e0lzPWFhKE51bWJlcihlLnRvdGFsPz8oZS5ob3RlbHM/P1tdKS5sZW5ndGgpLU51bWJlcihlLm9mZnNldD8/MCkpO2NvbnN0IHQ9Vm4oKT9lLmhvdGVscz8/W106KGUuaG90ZWxzPz9bXSkuc2xpY2UoMCxJcyk7cWE9dC5sZW5ndGg+MSYmdC5ldmVyeShUPT5ULmZvclN0YXk/LmZyZWVDYW5jZWxsYXRpb24pO2NvbnN0IG49Wy4uLm5ldyBTZXQodC5tYXAoVD0+U3RyaW5nKFQuY2l0eSkpKV0sbz1UPT57Y29uc3QgQT10LmZpbmQoUj0+Ui5jaXR5PT09VCk/LmNvdW50cnk7cmV0dXJuIEEmJiFTdHJpbmcoQSkuc3RhcnRzV2l0aChUKT9TdHJpbmcoQSk6IiJ9LHM9Wy4uLm5ldyBTZXQodC5tYXAoVD0+U3RyaW5nKFQuY291bnRyeT8/IiIpKSldLHI9cy5sZW5ndGg+MSxpPVQ9PmAKICAgIDxkaXYgY2xhc3M9ImNpdHlncm91cCI+CiAgICAgICR7bi5sZW5ndGg+MT9gPGRpdiBjbGFzcz0iY2l0eW5hbWUiPiR7bChUKX0keyFyJiZvKFQpP2A8c21hbGw+IMK3ICR7bChvKFQpKX08L3NtYWxsPmA6IiJ9PC9kaXY+YDoiIn0KICAgICAgPGRpdiBjbGFzcz0idGlsZXMiPgogICAgICAgICR7dC5maWx0ZXIoQT0+QS5jaXR5PT09VCkubWFwKEE9PmAKICAgICAgICAgIDxidXR0b24gY2xhc3M9InRpbGUke0EubG93ZXN0PyIgbG93ZXN0IjoiIn0iIHR5cGU9ImJ1dHRvbiIgZGF0YS1ob3RlbD0iJHtsKEEuaWQpfSI+CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0LXNob3QiIHN0eWxlPSIke3Z0KFN0cmluZyhBLmlkKSl9Ij4KICAgICAgICAgICAgICAke0EuaW1hZ2VVcmw/YDxpbWcgc3JjPSIke2woQS5pbWFnZVVybCl9IiBhbHQ9IiI+YDoiIn0KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idC1tYXJrIj4ke2woa3QoU3RyaW5nKEEubmFtZSkpKX08L3NwYW4+CiAgICAgICAgICAgICAgJHtPbihBKT9gPHNwYW4gY2xhc3M9InQtYnJhbmQiPiR7bChPbihBKSl9PC9zcGFuPmA6IiJ9CiAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InQtYm9keSI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InQtbmFtZSI+JHtNdChBLm5hbWUpfTwvc3Bhbj4KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idC1tZXRhIj4KICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0LXdoZXJlIj4ke2woW0EuYXJlYSxuLmxlbmd0aD4xfHxTdHJpbmcoQS5uYW1lKS5pbmNsdWRlcyhTdHJpbmcoQS5jaXR5KSk/IiI6QS5jaXR5XS5maWx0ZXIoQm9vbGVhbikuam9pbigiIMK3ICIpKX08L3NwYW4+CiAgICAgICAgICAgICAgICAke0lfKEEucmF0aW5nKX0KICAgICAgICAgICAgICA8L3NwYW4+CiAgICAgICAgICAgICAgJHtLXyhBKX0KICAgICAgICAgICAgICA8c3BhbiBjbGFzcz0idC1mb290Ij4ke1ZnKEEsRGEoZSkpfTxzcGFuIGNsYXNzPSJ0LWdvIiBhcmlhLWhpZGRlbj0idHJ1ZSI+JHtJLmNoZXZSfTwvc3Bhbj48L3NwYW4+CiAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgIDwvYnV0dG9uPmApLmpvaW4oIiIpfQogICAgICA8L2Rpdj4KICAgIDwvZGl2PmAsYz1OdW1iZXIoZS50b3RhbD8/dC5sZW5ndGgpLHU9TnVtYmVyKGUub2Zmc2V0Pz8wKSxkPWMtdS10Lmxlbmd0aCxoPWUucGxhY2VzPz9bXTtlLmFzaz8uY2l0eTtjb25zdCBwPWgubGVuZ3RoP2A8ZGl2IGNsYXNzPSJwbGFjZXMiIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSIke2EoIldoZXJlIiwi5Zyw54K5Iil9Ij4KICAgICAgICAgICAke2gubWFwKChULEEpPT5gPGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSIgdHlwZT0iYnV0dG9uIiBkYXRhLXBsYWNlPSIke2woVC5wbGFjZSl9IiR7QT49X3Q/IiBoaWRkZW4iOiIifT4ke2woVC5sYWJlbCl9IDxzbWFsbD4ke2woVC5jb3VudCl9PC9zbWFsbD48L2J1dHRvbj5gKS5qb2luKCIiKX0KICAgICAgICAgICAke2gubGVuZ3RoPl90P2A8YnV0dG9uIGNsYXNzPSJjaGlwIHBsYWNlIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJtb3JlLXBsYWNlcyI+KyR7aC5sZW5ndGgtX3R9IG1vcmU8L2J1dHRvbj5gOiIifQogICAgICAgICA8L2Rpdj5gOiIiLG09U3RyaW5nKGUuc29ydD8/Imdyb3VwIikseT0hKChlLmN1cnJlbmNpZXM/P1tdKS5sZW5ndGg+MSksJD10Lmxlbmd0aD4xP2A8ZGl2IGNsYXNzPSJwbGFjZXMiIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSIke2EoIk9yZGVyIiwi5o6S5bqPIil9Ij4ke0dnLmZpbHRlcigoW1RdKT0+eXx8IVQuc3RhcnRzV2l0aCgicHJpY2UiKSkubWFwKChbVCxBLFJdKT0+YDxidXR0b24gY2xhc3M9ImNoaXAgcGxhY2Ugc29ydCIgdHlwZT0iYnV0dG9uIiBkYXRhLXNvcnQ9IiR7VH0iIGFyaWEtcHJlc3NlZD0iJHtUPT09bT8idHJ1ZSI6ImZhbHNlIn0iPiR7YShBLFIpfTwvYnV0dG9uPmApLmpvaW4oIiIpfTwvZGl2PmA6IiIsXz1lLmFzaz8uY2l0eT9TdHJpbmcoZS5hc2suY2l0eSk6ZS5hc2s/LnF1ZXJ5P2DigJwke1N0cmluZyhlLmFzay5xdWVyeSl94oCdYDpuLmxlbmd0aD09PTE/U3RyaW5nKG5bMF0pOk49PT0iZW4iP2BBbGwgJHtlLnZvY2FiPy5ub3VuUGx1cmFsPz8iaG90ZWxzIn1gOmEoIkFsbCBob3RlbHMiLCLlhajpg6jphZLlupciKSxDPSEhZS5zdGF5Py5jaGVja0luO3JldHVybltgPGRpdiBjbGFzcz0ibGlzdC1oIj48aDIgY2xhc3M9ImgtbmFtZSI+JHtsKF8pfTwvaDI+PGRpdiBjbGFzcz0iaC13aGVyZSI+JHtsKGAke3RTKGUsYyl9IMK3ICR7RGEoZSk/YSgiYnkgdGhlIGhvdXIgdG9kYXksIHRheGVzIGluIiwi5LuK5aSp55qE6ZKf54K55oi/77yM5ZCr56iO5Lu3Iik6Qz9WPjE/YShgcHJpY2VzIGZvciAke2NlKGJlKGUuc3RheS5jaGVja0luLGUuc3RheS5jaGVja091dCkpfSwgJHtWfSByb29tcywgdGF4ZXMgaW5gLGAke2NlKGJlKGUuc3RheS5jaGVja0luLGUuc3RheS5jaGVja091dCkpfeOAgSR7Vn3pl7TnmoTlkKvnqI7mgLvku7dgKTphKGBwcmljZXMgZm9yICR7Y2UoYmUoZS5zdGF5LmNoZWNrSW4sZS5zdGF5LmNoZWNrT3V0KSl9LCB0YXhlcyBpbmAsYCR7Y2UoYmUoZS5zdGF5LmNoZWNrSW4sZS5zdGF5LmNoZWNrT3V0KSl955qE5ZCr56iO5oC75Lu3YCk6YSgiYWRkIGRhdGVzIHRvIHNlZSB3aGF0IGEgc3RheSBjb3N0cyIsIumAieWlveaXpeacn+eci+S9j+Wuv+aAu+S7tyIpfWApfSR7cWE/YDwvZGl2PjxkaXYgY2xhc3M9ImgtZnJlZSI+JHtJLmNoZWNrfSR7YSgiRXZlcnkgaG90ZWwgaGVyZSBpcyBmcmVlIHRvIGNhbmNlbCIsIui/memHjOavj+WutumDveWPr+S7peWFjei0ueWPlua2iCIpfWA6IiJ9PC9kaXY+PC9kaXY+YCxwLEtnKGUsJCxtKSxlLndpZGVuZWQ/YDxkaXYgY2xhc3M9Indhcm5ub3RlIj4ke2woYShgTm90aGluZyBtYXRjaGVkICR7ZS53aWRlbmVkLmZyb219LiBUaGVzZSBhcmUgJHtlLndpZGVuZWQudG99LmAsYOayoeacieaJvuWIsOS4juKAnCR7ZS53aWRlbmVkLmZyb2194oCd55u456ym55qE57uT5p6c77yM5Lul5LiL5pivJHtlLndpZGVuZWQudG9944CCYCkpfTwvZGl2PmA6IiIsYDxkaXY+JHtyP3MubWFwKFQ9PmA8ZGl2IGNsYXNzPSJjb3VudHJ5bmFtZSI+JHtsKFQpfTwvZGl2PiR7bi5maWx0ZXIoQT0+dC5zb21lKFI9PlIuY2l0eT09PUEmJlN0cmluZyhSLmNvdW50cnk/PyIiKT09PVQpKS5tYXAoaSkuam9pbigiIil9YCkuam9pbigiIik6bi5tYXAoaSkuam9pbigiIil9PC9kaXY+YCwoZS5jdXJyZW5jaWVzPz9bXSkubGVuZ3RoPjE/YDxkaXYgY2xhc3M9Im5vdGUiPiR7bChhKGBRdW90ZWQgaW4gJHtlLmN1cnJlbmNpZXMuam9pbigiLCAiKX0g4oCUIG5vIHJhdGUgaXMgYXBwbGllZCBoZXJlLCBzbyB0aGlzIGlzIG5vdCBhIHByaWNlIG9yZGVyLiBPbmUgY2l0eSBvciBvbmUgY291bnRyeSBnaXZlcyBvbmUgY3VycmVuY3kuYCxg5Lu35qC85YiG5Yir5LulICR7ZS5jdXJyZW5jaWVzLmpvaW4oIuOAgSIpfSDorqHvvIzov5nph4zkuI3lgZrmjaLnrpfvvIzmiYDku6XkuI3mjInku7fmoLzmjpLluo/jgILlj6rnnIvkuIDkuKrln47luILmiJblm73lrrbvvIzlsLHlj6rmnInkuIDnp43luIHnp43jgIJgKSl9PC9kaXY+YDoiIixlLm92ZXJCdWRnZXQ/YDxkaXYgY2xhc3M9Im5vdGUiPiR7bChhKGAke2Uub3ZlckJ1ZGdldH0gbW9yZSBtYXRjaGVkIGFuZCBjYW1lIGluIG92ZXIgdGhlIHByaWNlIGNlaWxpbmcuYCxg5Y+m5pyJICR7ZS5vdmVyQnVkZ2V0fSDlrrbnrKblkIjmnaHku7bvvIzkvYbotoXlh7rkuobku7fmoLzkuIrpmZDjgIJgKSl9PC9kaXY+YDoiIixWbigpP2Q+MD9gPGRpdiBjbGFzcz0ibm90ZSI+JHtsKHU/YShgU2hvd2luZyAke3UrMX3igJMke3UrdC5sZW5ndGh9IG9mICR7Y30uYCxg5pi+56S656ysICR7dSsxfeKAkyR7dSt0Lmxlbmd0aH0g5a6277yM5YWxICR7Y30g5a6244CCYCk6YShgU2hvd2luZyAke3QubGVuZ3RofSBvZiAke2N9LmAsYOaYvuekuuesrCAx4oCTJHt0Lmxlbmd0aH0g5a6277yM5YWxICR7Y30g5a6244CCYCkpfTwvZGl2PgogICAgICAgICAgICR7a18oYShgU2hvdyAke01hdGgubWluKDEyLGQpfSBtb3JlYCxg5YaN5pi+56S6ICR7TWF0aC5taW4oMTIsZCl9IOWutmApLCdkYXRhLWFjdD0ibW9yZS1ob3RlbHMiJyl9YDoiIjplUyh2Xyh7ZnJvbTp1LGNvdW50OnQubGVuZ3RoLHRvdGFsOk51bWJlcihjKSxwcmV2OidkYXRhLWFjdD0icGFnZS1wcmV2IicsbmV4dDonZGF0YS1hY3Q9InBhZ2UtbmV4dCInLGFsbDpKZy5pbmNsdWRlcygiZnVsbHNjcmVlbiIpPydkYXRhLWFjdD0iZnVsbHNjcmVlbiInOm51bGwsbm91bjoiaG90ZWxzIn0pKV0uam9pbigiIil9LG9TPWU9Pntjb25zdCB0PWUubmVhcmVzdD8/W10sbj1lLndpZGVuZWQ/YDxkaXYgY2xhc3M9Indhcm5ub3RlIj4ke2woYShgTm90aGluZyBtYXRjaGVkICR7ZS53aWRlbmVkLmZyb219LCBzbyB0aGlzIGxvb2tlZCBpbiAke2Uud2lkZW5lZC50b30uYCxg5rKh5pyJ5om+5Yiw5LiO4oCcJHtlLndpZGVuZWQuZnJvbX3igJ3nm7jnrKbnmoTnu5PmnpzvvIzmlLnkuLrlnKgke2Uud2lkZW5lZC50b33ph4zmib7jgIJgKSl9PC9kaXY+YDoiIjtpZihlLmJlZm9yZUZpbHRlcnMpcmV0dXJuIEdlPSJmaWx0ZXJzIixbbixgPGRpdiBjbGFzcz0id2Fybm5vdGUiPiR7bChOPT09ImVuIj9lLndoeT8/YE5vbmUgb2YgdGhlICR7ZS5iZWZvcmVGaWx0ZXJzfSBoZXJlIGhhcyBhbGwgb2YgdGhvc2UgdG9nZXRoZXIuYDphKGBOb25lIG9mIHRoZSAke2UuYmVmb3JlRmlsdGVyc30gaG90ZWxzIGhlcmUgaGFzIGFsbCBvZiB0aG9zZSB0b2dldGhlci5gLGDov5nph4znmoQgJHtlLmJlZm9yZUZpbHRlcnN9IOWutumFkuW6l++8jOayoeacieS4gOWutuWQjOaXtua7oei2s+i/meS6m+adoeS7tuOAgmApKX08L2Rpdj5gLEtnKGUsIiIsU3RyaW5nKGUuYXNrPy5zb3J0Pz8iZ3JvdXAiKSldLmpvaW4oIiIpO2lmKCF0Lmxlbmd0aCl7Y29uc3Qgbz1TdHJpbmcoZS5hc2s/LmNpdHk/P2UucXVlcnk/P2Uud2lkZW5lZD8uZnJvbT8/IiIpO3JldHVybmAke259CiAgICAgIDxkaXYgY2xhc3M9InN0YXRlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0ZS1pY28iPiR7SS5zZWFyY2h9PC9kaXY+CiAgICAgICAgPGgyIGNsYXNzPSJzdGF0ZS10Ij4ke28/bChhKGBOb3RoaW5nIGluIOKAnCR7b33igJ1gLGDigJwke2994oCd5rKh5pyJ57uT5p6cYCkpOmEoIk5vIGhvdGVscyBtYXRjaCIsIuayoeacieespuWQiOadoeS7tueahOmFkuW6lyIpfTwvaDI+CiAgICAgICAgPHAgY2xhc3M9InN0YXRlLWQiPiR7bz9sKGEoYE5vIGhvdGVsIGhlcmUgaXMgaW4gb3IgbmVhciDigJwke2994oCdLiBUcnkgYSBjaXR5IG9yIGEgY291bnRyeS5gLGDov5nph4zmsqHmnInkvY3kuo7igJwke2994oCd5oiW6ZmE6L+R55qE6YWS5bqX44CC5o2i5Liq5Z+O5biC5oiW5Zu95a626K+V6K+V44CCYCkpOmEoIlRyeSBhIGNpdHksIGEgY291bnRyeSBvciBhIGhvdGVsIG5hbWUuIiwi5o2i5Liq5Z+O5biC44CB5Zu95a625oiW6YWS5bqX5ZCN6K+V6K+V44CCIil9PC9wPgogICAgICAgIDxkaXYgY2xhc3M9InNlYXJjaCByZXRyeSI+CiAgICAgICAgICA8bGFiZWwgY2xhc3M9IndoZXJlIj4ke0kuc2VhcmNofTxpbnB1dCBpZD0id2hlcmUiIHR5cGU9InNlYXJjaCIgYXV0b2NvbXBsZXRlPSJvZmYiIHBsYWNlaG9sZGVyPSIke2EoIkNpdHkgb3IgaG90ZWwiLCLln47luILmiJbphZLlupflkI0iKX0iIGFyaWEtbGFiZWw9IiR7YSgiV2hlcmUgdG8iLCLnm67nmoTlnLAiKX0iPjwvbGFiZWw+CiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iZmluZCI+JHthKCJTZWFyY2giLCLmkJzntKIiKX08L2J1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJmb290Ij48YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iaG9tZSI+JHtJLnBpbn0ke2EoIlNlZSBldmVyeSBkZXN0aW5hdGlvbiIsIuafpeeci+WFqOmDqOebrueahOWcsCIpfTwvYnV0dG9uPjwvZGl2PgogICAgICA8L2Rpdj5gfXJldHVybltuLGA8ZGl2IGNsYXNzPSJ3YXJubm90ZSI+JHtsKHQubGVuZ3RoPT09MT9hKCJOb3RoaW5nIGNhbWUgaW4gdW5kZXIgdGhlIHByaWNlIGNlaWxpbmcuIFRoZSBuZWFyZXN0IGlzIG92ZXIgaXQuIiwi5rKh5pyJ5L2O5LqO5Lu35qC85LiK6ZmQ55qE6YWS5bqX44CC5Lul5LiL5piv5pyA5o6l6L+R55qE5Yeg5a6277yM5Lu35qC855Wl6auY44CCIik6YSgiTm90aGluZyBjYW1lIGluIHVuZGVyIHRoZSBwcmljZSBjZWlsaW5nLiBUaGUgbmVhcmVzdCBhcmUgb3ZlciBpdC4iLCLmsqHmnInkvY7kuo7ku7fmoLzkuIrpmZDnmoTphZLlupfjgILku6XkuIvmmK/mnIDmjqXov5HnmoTlh6DlrrbvvIzku7fmoLznlaXpq5jjgIIiKSl9PC9kaXY+YCxgPGRpdiBjbGFzcz0idGlsZXMiPiR7dC5tYXAobz0+YAogICAgICA8YnV0dG9uIGNsYXNzPSJ0aWxlIG92ZXIiIHR5cGU9ImJ1dHRvbiIgZGF0YS1ob3RlbD0iJHtsKG8uaWQpfSI+CiAgICAgICAgPHNwYW4gY2xhc3M9InQtc2hvdCIgc3R5bGU9IiR7dnQoU3RyaW5nKG8uaWQpKX0iPgogICAgICAgICAgJHtvLmltYWdlVXJsP2A8aW1nIHNyYz0iJHtsKG8uaW1hZ2VVcmwpfSIgYWx0PSIiPmA6IiJ9CiAgICAgICAgICA8c3BhbiBjbGFzcz0idC1tYXJrIj4ke2woa3QoU3RyaW5nKG8ubmFtZSkpKX08L3NwYW4+CiAgICAgICAgPC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJ0LWJvZHkiPgogICAgICAgICAgPHNwYW4gY2xhc3M9InQtbmFtZSI+JHtsKG8ubmFtZSl9PC9zcGFuPgogICAgICAgICAgPHNwYW4gY2xhc3M9InQtd2hlcmUiPiR7bChbby5hcmVhLG8uY2l0eV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiDCtyAiKSl9PC9zcGFuPgogICAgICAgICAgPHNwYW4gY2xhc3M9InQtZm9vdCI+CiAgICAgICAgICAgICR7Vmcobyl9CiAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJiYWRnZSB3YXJuIj4ke2EoIk92ZXIiLCLotoXlh7oiKX08L3NwYW4+CiAgICAgICAgICA8L3NwYW4+CiAgICAgICAgPC9zcGFuPgogICAgICA8L2J1dHRvbj5gKS5qb2luKCIiKX08L2Rpdj5gXS5qb2luKCIiKX0sWWc9ZT0+e2NvbnN0IHQ9W2UuYXJlYSxlLmNpdHksU3RyaW5nKGUuY291bnRyeT8/IiIpLnN0YXJ0c1dpdGgoU3RyaW5nKGUuY2l0eSkpfHxubigpJiYhb24oU3RyaW5nKGUuY291bnRyeT8/IiIpKT8iIjplLmNvdW50cnldLmZpbHRlcihCb29sZWFuKS5qb2luKCIgwrcgIik7cmV0dXJuYAogIDxkaXYgY2xhc3M9Imhlcm8iIHN0eWxlPSIke3Z0KFN0cmluZyhlLmlkKSl9Ij4KICAgICR7ZS5pbWFnZVVybD9gPGltZyBzcmM9IiR7bChlLmltYWdlVXJsKX0iIGFsdD0iIj5gOiIifQogICAgPHNwYW4gY2xhc3M9InQtbWFyayI+JHtsKGt0KFN0cmluZyhlLm5hbWUpKSl9PC9zcGFuPgogICAgPGRpdiBjbGFzcz0iaGVyby10eHQiPgogICAgICAke09uKGUpJiYhU3RyaW5nKGUubmFtZSkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhPbihlKS50b0xvd2VyQ2FzZSgpKT9gPHNwYW4gY2xhc3M9InQtYnJhbmQiPiR7bChPbihlKSl9PC9zcGFuPmA6IiJ9CiAgICAgIDxoMiBjbGFzcz0iaG90ZWwtbmFtZSI+JHtNdChlLm5hbWUpfTwvaDI+CiAgICAgIDxkaXYgY2xhc3M9Imhlcm8td2hlcmUiPjxzcGFuPiR7bCh0KX08L3NwYW4+JHtlLnJhdGluZz9gPHNwYW4gY2xhc3M9InJhdGUiPiR7UGd9JHtsKGUucmF0aW5nLnZhbHVlKX08c21hbGw+KCR7bChOdW1iZXIoZS5yYXRpbmcuY291bnQpLnRvTG9jYWxlU3RyaW5nKE5lW05dKSl9KTwvc21hbGw+PC9zcGFuPmA6IiJ9PC9kaXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KICAke2Uuc3VtbWFyeT8vXlxzKijmqKHmi5/mlbDmja58c2ltdWxhdGVkfHRlc3QgZGF0YSkvaS50ZXN0KFN0cmluZyhlLnN1bW1hcnkpKT9gPGRpdiBjbGFzcz0iaC1zdW0gc2ltLW5vdGUiPiR7SS5pbmZvfTxzcGFuPiR7bChlLnN1bW1hcnkpfTwvc3Bhbj48L2Rpdj5gOmA8ZGl2IGNsYXNzPSJoLXN1bSI+JHtsKGUuc3VtbWFyeSl9PC9kaXY+YDoiIn0KICAkeyhlLmFtZW5pdGllcz8/W10pLmxlbmd0aD9gPHVsIGNsYXNzPSJhbWVuIiBhcmlhLWxhYmVsPSIke2EoIldoYXQgdGhlIGhvdGVsIGhhcyIsIumFkuW6l+iuvuaWvSIpfSI+JHtlLmFtZW5pdGllcy5zbGljZSgwLDgpLm1hcChuPT5gPGxpPiR7bChuKX08L2xpPmApLmpvaW4oIiIpfTwvdWw+YDoiIn1gfSxzUz17InJvb20tb25seSI6e3RleHQ6IlJvb20gb25seSIsemg6IuS4jeWQq+aXqSJ9LGJyZWFrZmFzdDp7dGV4dDoiQnJlYWtmYXN0Iix6aDoi5ZCr5pepIn0sImJyZWFrZmFzdC0xIjp7dGV4dDoiQnJlYWtmYXN0IGZvciAxIix6aDoi5Y2V5pepIn0sImJyZWFrZmFzdC0yIjp7dGV4dDoiQnJlYWtmYXN0IGZvciAyIix6aDoi5Y+M5pepIn0sImJyZWFrZmFzdC0zIjp7dGV4dDoiQnJlYWtmYXN0IGZvciAzIix6aDoi5LiJ5pepIn0scGFja2FnZTp7dGV4dDoiUGFja2FnZSIsemg6IuWll+mkkCJ9LCJmbGFzaC1zYWxlIjp7dGV4dDoiRmxhc2ggc2FsZSIsemg6IumZkOaXtueJueS7tyIsc2F2ZTohMH0sIm5pZ2h0LXNuYWNrIjp7dGV4dDoiTGF0ZS1uaWdodCByYXRlIix6aDoi5aSc5a615Lu3IixzYXZlOiEwfSwiZWFybHktYm9va2luZyI6e3RleHQ6IkJvb2stYWhlYWQgcmF0ZSIsemg6IuaPkOWJjeiuouS8mOaDoCIsc2F2ZTohMH0scHJvbW90aW9uOnt0ZXh0OiJQcm9tb3Rpb24iLHpoOiLkv4PplIAiLHNhdmU6ITB9fSwkdT0oZSx0PW5ldyBTZXQpPT5bRnQoZSkmJiF0LmhhcygiYmVkcyIpP2A8bGk+JHtJLmJlZH0ke2woRnQoZSkpfTwvbGk+YDoiIix0Lmhhcygic2xlZXBzIik/IiI6YDxsaT4ke0kudXNlcnN9JHtsKGEoYFNsZWVwcyAke2Uuc2xlZXBzfWAsYOWPr+S9jyAke2Uuc2xlZXBzfSDkurpgKSl9JHtOdW1iZXIoZS5tYXhDaGlsZHJlbik+MD9sKE51bWJlcihlLm1heENoaWxkcmVuKT09PTE/YSgiIMK3IDEgY2hpbGQiLCIgwrcg5Y+v5bimIDEg5ZCN5YS/56ulIik6YShgIMK3ICR7ZS5tYXhDaGlsZHJlbn0gY2hpbGRyZW5gLGAgwrcg5Y+v5bimICR7ZS5tYXhDaGlsZHJlbn0g5ZCN5YS/56ulYCkpOiIifTwvbGk+YCxlLnNpemVTcW0/YDxsaT4ke0kuc2l6ZX0ke2woZS5zaXplU3FtKX0gbcKyPC9saT5gOiIiLChlLnZpZXd8fGUud2luZG93KSYmIXQuaGFzKCJ2aWV3Iik/YDxsaT4ke2Uud2luZG93fHwvd2luZG93fOeqly9pLnRlc3QoU3RyaW5nKGUudmlldykpP0kud2luZG93Okkudmlld30ke2wob2IoZSkpfTwvbGk+YDoiIl0uam9pbigiIiksd3U9ZT0+e2NvbnN0IHQ9QXJyYXkuaXNBcnJheShlLmxhYmVscyk/ZS5sYWJlbHM6W107cmV0dXJuW2UuYnJlYWtmYXN0JiYhKGUubWVhbCYmU3UoZS5tZWFsKSkmJiF0LnNvbWUobj0+bi5zdGFydHNXaXRoKCJicmVha2Zhc3QiKSk/YDxsaSBjbGFzcz0icGVyayI+JHtJLmN1cH08c3Bhbj4ke2EoIjxiPkJyZWFrZmFzdDwvYj4gaW5jbHVkZWQiLCI8Yj7lkKvml6nppJA8L2I+Iil9PC9zcGFuPjwvbGk+YDoiIixlLmhvdXJseT8iIjplLnJlZnVuZGFibGU/YDxsaSBjbGFzcz0icGVyayI+JHtJLmNoZWNrfTxzcGFuPjxiPiR7YSgiRnJlZSBjYW5jZWxsYXRpb24iLCLlhY3otLnlj5bmtogiKX08L2I+JHtlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbD9sKGEoYCB1bnRpbCAke1hnKGUuZnJlZUNhbmNlbGxhdGlvbkxvY2FsLGUuZnJlZUNhbmNlbGxhdGlvbkxvY2FsSXNvKX1gLGDvvIwke1J0KGUuZnJlZUNhbmNlbGxhdGlvbkxvY2FsLGUuZnJlZUNhbmNlbGxhdGlvbkxvY2FsSXNvKX0g5YmNYCkpOiIifTwvc3Bhbj48L2xpPmA6YDxsaSBjbGFzcz0icGVyayB3YXJuIj4ke0kuYWxlcnR9PHNwYW4+PGI+JHthKCJOb24tcmVmdW5kYWJsZSIsIuS4jeWPr+WPlua2iCIpfTwvYj4ke2EoIiDigJQgdGhpcyByYXRlIGNhbm5vdCBiZSBjYW5jZWxsZWQiLCLvvIzmraTku7fmoLzorqLlkI7kuI3og73pgIDmlLkiKX08L3NwYW4+PC9saT5gLGUubWVtYmVyUmF0ZT9gPGxpIGNsYXNzPSJwZXJrIHNhdmUiPiR7SS50YWd9PHNwYW4+PGI+JHtsKGEoYCR7ZS5tZW1iZXJSYXRlLnRpZXJ9IG1lbWJlciByYXRlYCxgJHtlLm1lbWJlclJhdGUudGllcn3kvJrlkZjku7dgKSl9PC9iPiR7YSgiIGFwcGxpZWQiLCLlt7LnlJ/mlYgiKX08L3NwYW4+PC9saT5gOiIiLGUucGF5bWVudD09PSJwcmVwYWlkIj9gPGxpIGNsYXNzPSJwZXJrIj4ke0kubG9ja308c3Bhbj48Yj4ke2EoIlBhaWQgaW4gYWR2YW5jZSIsIumcgOmihOS7mCIpfTwvYj48L3NwYW4+PC9saT5gOiIiXS5qb2luKCIiKX0sclM9bmV3IFNldChbInJvb20tb25seSIsImJyZWFrZmFzdCIsImJyZWFrZmFzdC0xIiwiYnJlYWtmYXN0LTIiLCJicmVha2Zhc3QtMyJdKSxRZz0oZSx0KT0+e2NvbnN0IG49dD9TdSh0KToiIjtyZXR1cm5bbj9gPHNwYW4gY2xhc3M9ImJhZGdlIj4ke2wobil9PC9zcGFuPmA6IiIsLi4uKEFycmF5LmlzQXJyYXkoZSk/ZTpbXSkuZmlsdGVyKG89PiEobiYmclMuaGFzKG8pKSkubWFwKG89PnNTW29dKS5maWx0ZXIoQm9vbGVhbikubWFwKG89PmA8c3BhbiBjbGFzcz0iYmFkZ2Uke28/LnNhdmU/IiBnb29kIjoiIn0iPiR7bChhKG8/LnRleHQ/PyIiLG8/LnpoPz8iIikpfTwvc3Bhbj5gKV0uZmlsdGVyKEJvb2xlYW4pfSxfdT1lPT57Y29uc3QgdD1RZyhlLmxhYmVscyxlLm1lYWwpO3JldHVybiB0Lmxlbmd0aD9gPGRpdiBjbGFzcz0iYmFkZ2VzIj4ke3Quam9pbigiIil9PC9kaXY+YDoiIn0sYVM9e1dpbmRvdzoi5pyJ56qXIiwiTm8gd2luZG93Ijoi5peg56qXIiwiUm9vbSBvbmx5Ijoi5LiN5ZCr5pepIiwiQnJlYWtmYXN0IGluY2x1ZGVkIjoi5ZCr5pepIixDaXR5OiLln47mma8ifSxMYT1bIkphbiIsIkZlYiIsIk1hciIsIkFwciIsIk1heSIsIkp1biIsIkp1bCIsIkF1ZyIsIlNlcCIsIk9jdCIsIk5vdiIsIkRlYyJdLEJhPVsiU3VuIiwiTW9uIiwiVHVlIiwiV2VkIiwiVGh1IiwiRnJpIiwiU2F0Il0sWGc9KGUsdCk9Pk49PT0iZW4iP1J0KGUsdCkucmVwbGFjZSgvIC9nLCLCoCIpOlJ0KGUsdCksZWI9KGUsdCxuLG8pPT57aWYoTj09PSJlbiIpcmV0dXJuYCR7QmFbbl19ICR7dH0gJHtMYVtlXX0sICR7b31gO2lmKE49PT0iemgiKXJldHVybmAke2UrMX3mnIgke3R95pelICR7eGdbbl19ICR7b31gO2NvbnN0IHM9bmV3IERhdGUoRGF0ZS5VVEMoMjAyNCxlLHQsMTIpKS50b0xvY2FsZURhdGVTdHJpbmcoTmVbTl0se2RheToibnVtZXJpYyIsbW9udGg6InNob3J0Iix0aW1lWm9uZToiVVRDIn0pLHI9bmV3IERhdGUoRGF0ZS5VVEMoMjAyNCwwLDcrbiwxMikpLnRvTG9jYWxlRGF0ZVN0cmluZyhOZVtOXSx7d2Vla2RheToic2hvcnQiLHRpbWVab25lOiJVVEMifSk7cmV0dXJuIE49PT0iamEiP2Ake3N9KCR7cn0pICR7b31gOk49PT0ia28iP2Ake3N9ICgke3J9KSAke299YDpOPT09ImZyIj9gJHtyfSAke3N9LCAke299YDpOPT09ImRlInx8Tj09PSJlcyI/YCR7cn0sICR7c30sICR7b31gOmAke3N9ICR7cn0gJHtvfWB9LFJ0PShlLHQpPT57Y29uc3Qgbj1OIT09InpoIiYmdHlwZW9mIHQ9PSJzdHJpbmciPy9eKFxkezR9KS0oXGR7Mn0pLShcZHsyfSlUKFxkezJ9OlxkezJ9KSg/OjpcZHsyfSg/OlwuXGQrKT8pPyg/OlsrLV1cZHsyfTo/XGR7Mn0pPyQvLmV4ZWModCk6bnVsbDtpZighbilyZXR1cm4ganUoZSk7Y29uc3RbbyxzLHJdPVtOdW1iZXIoblsxXSksTnVtYmVyKG5bMl0pLTEsTnVtYmVyKG5bM10pXTtyZXR1cm4gZWIocyxyLG5ldyBEYXRlKERhdGUuVVRDKG8scyxyKSkuZ2V0VVRDRGF5KCksbls0XT8/IiIpfSx0Yj17eWVzOlsiV2luZG93Iiwi5pyJ56qXIl0sbm86WyJObyB3aW5kb3ciLCLml6DnqpciXSxwYXJ0aWFsOlsiUGFydGlhbCB3aW5kb3ciLCLpg6jliIbmnInnqpciXSxpbm5lcjpbIklubmVyIHdpbmRvdywgb250byBhIGNvdXJ0eWFyZCIsIuWGheeqlyjmnJ3lpKnkupUpIl19LG5iPWU9Pntjb25zdCB0PXRiW1N0cmluZyhlKV07cmV0dXJuIHQ/YSh0WzBdLHRbMV0pOiIifSxpUz1lPT5lPD0wP2EoIlJvb20gb25seSIsIuS4jeWQq+aXqSIpOmU9PT0xP2EoIkJyZWFrZmFzdCBmb3IgMSIsIuWNleaXqSIpOmU9PT0yP2EoIkJyZWFrZmFzdCBmb3IgMiIsIuWPjOaXqSIpOmU9PT0zP2EoIkJyZWFrZmFzdCBmb3IgMyIsIuS4ieaXqSIpOmEoYEJyZWFrZmFzdCBmb3IgJHtlfWAsYCR7ZX3ml6lgKSxvYj1lPT5OIT09InpoIiYmbmIoZS53aW5kb3cpfHxqdShlLnZpZXcpLFN1PWU9Pntjb25zdCB0PU51bWJlcihlPy5jb3VudCl8fDA7c3dpdGNoKGU/LnBsYW4pe2Nhc2Uibm9uZSI6cmV0dXJuIGEoIlJvb20gb25seSIsIuS4jeWQq+aXqSIpO2Nhc2UiYnJlYWtmYXN0IjpyZXR1cm4gdD4wP2lTKHQpOmEoIkJyZWFrZmFzdCIsIuWQq+aXqSIpO2Nhc2UiYnVmZmV0LWJyZWFrZmFzdCI6cmV0dXJuIHQ+MT9hKGBCdWZmZXQgYnJlYWtmYXN0IGZvciAke3R9YCxg5ZCr6Ieq5Yqp5pepIMOXICR7dH1gKTphKCJCdWZmZXQgYnJlYWtmYXN0Iiwi5ZCr6Ieq5Yqp5pepIik7Y2FzZSJoYWxmLWJvYXJkIjpyZXR1cm4gdD4xP2EoYEhhbGYgYm9hcmQgZm9yICR7dH1gLGDlkKvljYrppJAgw5cgJHt0fWApOmEoIkhhbGYgYm9hcmQiLCLlkKvljYrppJAiKTtjYXNlImZ1bGwtYm9hcmQiOnJldHVybiB0PjE/YShgRnVsbCBib2FyZCBmb3IgJHt0fWAsYOWQq+WFqOmkkCDDlyAke3R9YCk6YSgiRnVsbCBib2FyZCIsIuWQq+WFqOmkkCIpO2Nhc2UiYWxsLWluY2x1c2l2ZSI6cmV0dXJuIHQ+MT9hKGBBbGwgaW5jbHVzaXZlIGZvciAke3R9YCxg5YWo5YyFIMOXICR7dH1gKTphKCJBbGwgaW5jbHVzaXZlIiwi5YWo5YyFIik7ZGVmYXVsdDpyZXR1cm4iIn19LGNTPXtraW5nOlsiS2luZyBiZWQiLCLlpKfluooiXSx0d2luOlsiVHdpbiBiZWRzIiwi5Y+M5bqKIl0sc2luZ2xlOlsiU2luZ2xlIGJlZCIsIuWNleS6uuW6iiJdfSxzYj1lPT5BcnJheS5pc0FycmF5KGUpP2UubWFwKHQ9Pntjb25zdCBuPWNTW1N0cmluZyh0Py5raW5kKV07cmV0dXJuW24/YShuWzBdLG5bMV0pOlN0cmluZyh0Py5uYW1lPz8iIiksdD8uc2l6ZT9TdHJpbmcodC5zaXplKToiIl0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiAiKX0pLmZpbHRlcihCb29sZWFuKS5qb2luKCIgLyAiKToiIixGdD1lPT5OIT09InpoIiYmc2IoZS5iZWRUeXBlcyl8fChlLmJlZHM/U3RyaW5nKGUuYmVkcyk6IiIpLHJiPWU9Pntjb25zdCB0PWUubWVhbCxuPUFycmF5LmlzQXJyYXkoZS5iZWRUeXBlcyl8fHRiW1N0cmluZyhlLndpbmRvdyldfHx0Py5wbGFuO3JldHVybiBOPT09InpoInx8IW4/ZS5kZXRhaWw/anUoZS5kZXRhaWwpOiIiOltzYihlLmJlZFR5cGVzKSxuYihlLndpbmRvdyksdD9TdSh0KToiIixlLmhvdXJseT8uc3RhcnQ/YCR7ZS5ob3VybHkuc3RhcnR94oCTJHthYihlLmhvdXJseS5zdGFydCxOdW1iZXIoZS5ob3VybHkuaG91cnMpKX1gOiIiXS5maWx0ZXIoQm9vbGVhbikuam9pbigiIMK3ICIpfSxqdT1lPT57Y29uc3QgdD1TdHJpbmcoZT8/IiIpO3JldHVybiBOPT09ImVuIj90OnQuc3BsaXQoIiDCtyAiKS5tYXAobj0+e2NvbnN0IG89L14oXHd7M30pIChcZHsxLDJ9KSAoXHd7M30pLD8gKFxkezEsMn06XGR7Mn0pJC8uZXhlYyhuLnRyaW0oKSk7aWYobyYmTGEuaW5jbHVkZXMob1szXT8/IiIpJiZCYS5pbmNsdWRlcyhvWzFdPz8iIikpcmV0dXJuIGViKExhLmluZGV4T2Yob1szXT8/IiIpLE51bWJlcihvWzJdKSxCYS5pbmRleE9mKG9bMV0/PyIiKSxvWzRdPz8iIik7Y29uc3Qgcz1hU1tuLnRyaW0oKV07cmV0dXJuIHM/YShuLnRyaW0oKSxzKTpufSkuam9pbigiIMK3ICIpfSxsUz0oZSx0LG4pPT5gJHtfZShlKX0gwrcgJHt0feKAkyR7YWIodCxuKX0gwrcgJHtKZShuKX1gLGFiPShlLHQpPT57Y29uc3RbbixvXT1lLnNwbGl0KCI6IikubWFwKE51bWJlcikscz0obj8/MCkqNjArKG8/PzApK3QqNjA7cmV0dXJuYCR7U3RyaW5nKE1hdGguZmxvb3Iocy82MCklMjQpLnBhZFN0YXJ0KDIsIjAiKX06JHtTdHJpbmcocyU2MCkucGFkU3RhcnQoMiwiMCIpfWB9LGlhPShlLHQpPT50Py5zdGFydCYmZT8uY2hlY2tJbj9sUyhTdHJpbmcoZS5jaGVja0luKSxTdHJpbmcodC5zdGFydCksTnVtYmVyKHQuaG91cnMpKTpYbyhlKSxjYT0oZSx0KT0+e2lmKCFlPy5jaGVja0lufHwhZT8uY2hlY2tPdXQpcmV0dXJuIiI7Y29uc3Qgbj0ocyxyLGk9IiIpPT57Y29uc3QgYz1LZShyKTtyZXR1cm5gPGRpdiBjbGFzcz0iYmFuZC1kIj48c3BhbiBjbGFzcz0id2wiPiR7c308L3NwYW4+PHNwYW4gY2xhc3M9Ind2Ij4ke2woYy5tZCl9PHNtYWxsPiR7bChjLmRvdyl9JHtpfTwvc21hbGw+PC9zcGFuPjwvZGl2PmB9O2lmKHQ/LnN0YXJ0KXtjb25zdFtzLHJdPVN0cmluZyh0LnN0YXJ0KS5zcGxpdCgiOiIpLm1hcChOdW1iZXIpLGk9KHM/PzApKjYwKyhyPz8wKStOdW1iZXIodC5ob3VycykqNjAsYz1gJHtTdHJpbmcoTWF0aC5mbG9vcihpLzYwKSUyNCkucGFkU3RhcnQoMiwiMCIpfToke1N0cmluZyhpJTYwKS5wYWRTdGFydCgyLCIwIil9YDtyZXR1cm5gPGRpdiBjbGFzcz0iYmFuZCIgcm9sZT0iZ3JvdXAiIGFyaWEtbGFiZWw9IiR7bChpYShlLHQpKX0iPiR7bihhKCJBcnJpdmUiLCLliLDlupciKSxlLmNoZWNrSW4sYCAke2wodC5zdGFydCl9YCl9PHNwYW4gY2xhc3M9IndoZW4tbiI+JHtsKEplKHQuaG91cnMpKX08L3NwYW4+PGRpdiBjbGFzcz0iYmFuZC1kIj48c3BhbiBjbGFzcz0id2wiPiR7YSgiTGVhdmUgYnkiLCLmnIDmmZrnprvlupciKX08L3NwYW4+PHNwYW4gY2xhc3M9Ind2Ij4ke2woYyl9PC9zcGFuPjwvZGl2PjwvZGl2PmB9Y29uc3Qgbz1OdW1iZXIoZS5ndWVzdHMpPjA/ZFMoTnVtYmVyKGUuZ3Vlc3RzKSk6IiI7cmV0dXJuYDxkaXYgY2xhc3M9ImJhbmQiIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSIke2woW1hvKGUpLG9dLmZpbHRlcihCb29sZWFuKS5qb2luKCIsICIpKX0iPiR7bihhKCJDaGVjay1pbiIsIuWFpeS9jyIpLGUuY2hlY2tJbil9PHNwYW4gY2xhc3M9IndoZW4tbiI+JHtsKGNlKGJlKGUuY2hlY2tJbixlLmNoZWNrT3V0KSkpfSR7bz9gPHNtYWxsPiR7bChvKX08L3NtYWxsPmA6IiJ9PC9zcGFuPiR7bihhKCJDaGVjay1vdXQiLCLnprvlupciKSxlLmNoZWNrT3V0KX08L2Rpdj5gfSx1Uz0oZSx0KT0+dCE9PTI/ZT09PTE/YShgMSByb29tIHR5cGUgdGhhdCBzbGVlcHMgJHt0fWAsYDEg56eN5Y+v5L2PICR7dH0g5Lq655qE5oi/5Z6LYCk6YShgJHtlfSByb29tIHR5cGVzIHRoYXQgc2xlZXAgJHt0fWAsYCR7ZX0g56eN5Y+v5L2PICR7dH0g5Lq655qE5oi/5Z6LYCk6ZT09PTE/YSgiMSByb29tIHR5cGUiLCIxIOenjeaIv+WeiyIpOmEoYCR7ZX0gcm9vbSB0eXBlc2AsYCR7ZX0g56eN5oi/5Z6LYCksZFM9ZT0+ZT09PTE/YSgiMSBndWVzdCIsIjHkvY0iKTphKGAke2V9IGd1ZXN0c2AsYCR7ZX3kvY1gKSxpYj1lPT57Y29uc3QgdD11PT57Y29uc3QgZD0vXihcZHsxLDJ9KTooXGR7Mn0pJC8uZXhlYyhTdHJpbmcodT8/IiIpKTtyZXR1cm4gZD9OdW1iZXIoZFsxXSkqNjArTnVtYmVyKGRbMl0pOnZvaWQgMH0sbj10KGU/LmVhcmxpZXN0U3RhcnQpLG89dChlPy5sYXRlc3RTdGFydCkscz10KGU/LmxhdGVzdEVuZCk/PzE0NDAscj1OdW1iZXIoZT8uaG91cnMpfHwwO2lmKG49PT12b2lkIDB8fG89PT12b2lkIDApcmV0dXJuW107Y29uc3QgaT1NYXRoLmNlaWwobi81KSo1LGM9aTw9bz9baV06W107Zm9yKGxldCB1PU1hdGguY2VpbCgoaSsxKS82MCkqNjA7dTw9bzt1Kz02MCljLnB1c2godSk7cmV0dXJuIGMuZmlsdGVyKHU9PnU8PW8mJnUrcio2MDw9cykubWFwKHU9PmAke1N0cmluZyhNYXRoLmZsb29yKHUvNjApKS5wYWRTdGFydCgyLCIwIil9OiR7U3RyaW5nKHUlNjApLnBhZFN0YXJ0KDIsIjAiKX1gKX0sdXM9KGUsdCk9Pntjb25zdCBuPS9eKFxkezEsMn0pOihcZHsyfSkkLy5leGVjKGUpO2lmKCFuKXJldHVybiBTdHJpbmcodD8ubGF0ZXN0RW5kPz8iIik7Y29uc3Qgbz1OdW1iZXIoblsxXSkqNjArTnVtYmVyKG5bMl0pKyhOdW1iZXIodD8uaG91cnMpfHwwKSo2MCxzPS9eKFxkezEsMn0pOihcZHsyfSkkLy5leGVjKFN0cmluZyh0Py5sYXRlc3RFbmQ/PyIiKSkscj1zP051bWJlcihzWzFdKSo2MCtOdW1iZXIoc1syXSk6byxpPU1hdGgubWluKG8scik7cmV0dXJuYCR7U3RyaW5nKE1hdGguZmxvb3IoaS82MCklMjQpLnBhZFN0YXJ0KDIsIjAiKX06JHtTdHJpbmcoaSU2MCkucGFkU3RhcnQoMiwiMCIpfWB9LFR1PW5ldyBNYXAsQXU9KGUsdCxuLG8pPT57Y29uc3Qgcz10LmhvdXJseT9pYih0LmhvdXJseSk6W10scj10LmhvdXJseT9UdS5nZXQoU3RyaW5nKHQuaWQpKT8/c1swXT8/IiI6IiI7cmV0dXJuYAogICAgICA8ZGl2IGNsYXNzPSJyb29tLWJ1eSI+CiAgICAgICAgPGRpdiBjbGFzcz0icHJpY2UiPgogICAgICAgICAgJHt0LnB1YmxpY1N0YXlUb3RhbD9gPGRpdiBjbGFzcz0icC13YXMiPiR7bCh0LnB1YmxpY1Jvb21zVG90YWw/P3QucHVibGljU3RheVRvdGFsKX08L2Rpdj5gOiIifQogICAgICAgICAgPGRpdiBjbGFzcz0icC10b3RhbCI+JHtsKHQucm9vbXNUb3RhbD8/dC5zdGF5VG90YWwpfTwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icC11bml0Ij4ke3QuaG91cmx5P2woVj4xP2EoYEZvciAke0plKHQuaG91cmx5LmhvdXJzKX0sICR7Vn0gcm9vbXMsIHRheGVzIGluYCxgJHtKZSh0LmhvdXJseS5ob3Vycyl944CBJHtWfemXtO+8jOWQq+eojui0uWApOmEoYEZvciAke0plKHQuaG91cmx5LmhvdXJzKX0sIHRheGVzIGluYCxgJHtKZSh0LmhvdXJseS5ob3Vycyl977yM5ZCr56iO6LS5YCkpOmwoVj4xP2EoYFRvdGFsIGZvciAke2NlKGJlKG4uY2hlY2tJbixuLmNoZWNrT3V0KSl9LCAke1Z9IHJvb21zLCB0YXhlcyBpbmAsYCR7Y2UoYmUobi5jaGVja0luLG4uY2hlY2tPdXQpKX3jgIEke1Z96Ze05oC75Lu377yM5ZCr56iO6LS5YCk6YShgVG90YWwgZm9yICR7Y2UoYmUobi5jaGVja0luLG4uY2hlY2tPdXQpKX0sIHRheGVzIGluYCxgJHtjZShiZShuLmNoZWNrSW4sbi5jaGVja091dCkpfeaAu+S7t++8jOWQq+eojui0uWApKX08L2Rpdj4KICAgICAgICAgICR7dC5ob3VybHk/IiI6YDxkaXYgY2xhc3M9InAtbmlnaHQiPiR7bChhKGBSb29tIHJhdGUgJHt0Lm5pZ2h0bHl9IGEgbmlnaHRgLGDmiL/ku7fmr4/mmZogJHt0Lm5pZ2h0bHl9YCkpfTwvZGl2PmB9CiAgICAgICAgICAke3QubWVtYmVyUmF0ZT9gPGRpdiBjbGFzcz0icC1tZW1iZXIiPiR7bChhKGAke3QubWVtYmVyUmF0ZS50aWVyfSByYXRlYCxgJHt0Lm1lbWJlclJhdGUudGllcn3ku7dgKSl9PC9kaXY+YDoiIn0KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhY3Rpb24iPiR7bz9gJHtQcyhgZGF0YS1hZGQtcm9vbT0iJHtsKHQuaWQpfSIgZGF0YS1ob3RlbD0iJHtsKGUuaWQpfSJgLG8sU3RyaW5nKHQubmFtZSksVil9PGJ1dHRvbiBjbGFzcz0iZ28gc20iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InRyaXAiPiR7YSgiUmV2aWV3Iiwi5Y675qC45a+5Iil9JHtJLmFycm93fTwvYnV0dG9uPmA6dC5ob3VybHk/YDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iZ28gYWRkIiBkYXRhLWFkZC1yb29tPSIke2wodC5pZCl9IiBkYXRhLWhvdGVsPSIke2woZS5pZCl9IiBkYXRhLW49IiR7bChWKX0iIGRhdGEtc3RhcnQ9IiR7bChyKX0iJHtyPyIiOiIgZGlzYWJsZWQifSBhcmlhLWxhYmVsPSIke2woYShgUmVzZXJ2ZSAke3QubmFtZX0gZnJvbSAke3J9YCxg6aKE6K6iJHt0Lm5hbWV977yMJHtyfeWIsOW6l2ApKX0iPiR7YSgiUmVzZXJ2ZSIsIumihOiuoiIpfSR7cj9gIMK3ICR7bChyKX1gOiIifTwvYnV0dG9uPmA6YDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iZ28gYWRkIiBkYXRhLWFkZC1yb29tPSIke2wodC5pZCl9IiBkYXRhLWhvdGVsPSIke2woZS5pZCl9IiBkYXRhLW49IiR7bChWKX0iIGFyaWEtbGFiZWw9IiR7bChhKGBSZXNlcnZlICR7dC5uYW1lfWAsYOmihOiuoiR7dC5uYW1lfWApKX0iPiR7YSgiUmVzZXJ2ZSIsIumihOiuoiIpfTwvYnV0dG9uPmB9PC9kaXY+CiAgICAgIDwvZGl2PmB9LGNiPWU9Pk51bWJlcihlLnJvb21zTGVmdCk8PTM/YDxzcGFuIGNsYXNzPSJiYWRnZSB3YXJuIGxlZnQiPiR7SS5jbG9ja30ke2woYShgJHtlLnJvb21zTGVmdH0gbGVmdCBhdCB0aGlzIHJhdGVgLGDmraTku7fmoLzku4XliakgJHtlLnJvb21zTGVmdH0g6Ze0YCkpfTwvc3Bhbj5gOiIiLGhTPShlLHQpPT57Y29uc3Qgbj1uZXcgU2V0O2lmKCF0KXJldHVybntsZWFkOiIiLHNhaWQ6bn07Y29uc3Qgbz1bXTsoZS53aW5kb3c/P2UudmlldykmJihlLndpbmRvdz8/ZS52aWV3KSE9PSh0LndpbmRvdz8/dC52aWV3KSYmKG8ucHVzaChvYihlKSksbi5hZGQoInZpZXciKSksRnQoZSkmJkZ0KGUpIT09RnQodCkmJihvLnB1c2goRnQoZSkpLG4uYWRkKCJiZWRzIikpO2NvbnN0IHM9TnVtYmVyKGUuc2l6ZVNxbSkscj1OdW1iZXIodC5zaXplU3FtKTtzJiZyJiZzIT09ciYmby5wdXNoKHM+cj9hKGAke3Mtcn0gbcKyIGxhcmdlcmAsYOmdouenr+WkpyAke3Mtcn0gbcKyYCk6YShgJHtyLXN9IG3CsiBzbWFsbGVyYCxg6Z2i56ev5bCPICR7ci1zfSBtwrJgKSksTnVtYmVyKGUuc2xlZXBzKT5OdW1iZXIodC5zbGVlcHMpJiYoby5wdXNoKGEoYHNsZWVwcyAke2Uuc2xlZXBzfWAsYOWPr+S9jyAke2Uuc2xlZXBzfSDkurpgKSksbi5hZGQoInNsZWVwcyIpKTtjb25zdCBpPVN0cmluZyh0LnJvb21UeXBlPy5uYW1lPz90Lm5hbWU/PyIiKTtyZXR1cm57bGVhZDpvLmxlbmd0aD9gPHAgY2xhc3M9InJvb20tbGVhZCI+PHNwYW4gY2xhc3M9ImxlYWQtayI+JHtsKGEoYFVubGlrZSAke2l9YCxg55u45q+UJHtpfWApKX08L3NwYW4+JHtsKG8uc2xpY2UoMCwzKS5qb2luKCIgwrcgIikpfTwvcD5gOiIiLHNhaWQ6bn19LHBTPShlLHQsbixvKT0+e2NvbnN0IHM9TnMoU3RyaW5nKGUuaWQpLFN0cmluZyh0LmlkKSxuKTtyZXR1cm5gCiAgICA8YXJ0aWNsZSBjbGFzcz0icm9vbSR7cz8iIGhlbGQiOiIifSI+CiAgICAgIDxzcGFuIGNsYXNzPSJyb29tLXNob3QiIHN0eWxlPSIke3Z0KGAke2UuaWR9OiR7dC5pZH1gKX0iPgogICAgICAgICR7dC5pbWFnZVVybD9gPGltZyBzcmM9IiR7bCh0LmltYWdlVXJsKX0iIGFsdD0iIj5gOmwoa3QoU3RyaW5nKHQubmFtZSkpKX0KICAgICAgPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJyb29tLW1haW4iPgogICAgICAgIDxoMyBjbGFzcz0icm9vbS1uYW1lIj4ke2wodC5uYW1lKX08L2gzPgogICAgICAgICR7bz8ubGVhZD8/IiJ9CiAgICAgICAgPHVsIGNsYXNzPSJmYWN0cyI+JHskdSh0LG8/LnNhaWQpfTwvdWw+CiAgICAgICAgJHtfdSh0KX0KICAgICAgICA8dWwgY2xhc3M9InBlcmtzIj4ke3d1KHQpfTwvdWw+CiAgICAgICAgJHtjYih0KX0KICAgICAgPC9kaXY+CiAgICAgICR7QXUoZSx0LG4scyl9CiAgICA8L2FydGljbGU+YH0sbVM9KGUsdCxuLG8pPT57Y29uc3Qgcz10WzBdPz97fSxyPVN0cmluZyhzLnJvb21UeXBlPy5uYW1lPz9zLm5hbWUpO3JldHVybmAKICAgIDxhcnRpY2xlIGNsYXNzPSJydHlwZSR7dC5zb21lKGM9Pk5zKFN0cmluZyhlLmlkKSxTdHJpbmcoYy5pZCksbik+MCk/IiBoZWxkIjoiIn0iPgogICAgICA8ZGl2IGNsYXNzPSJydHlwZS1oZWFkIj4KICAgICAgICA8c3BhbiBjbGFzcz0icm9vbS1zaG90IiBzdHlsZT0iJHt2dChgJHtlLmlkfToke3Mucm9vbVR5cGU/LmlkPz9zLmlkfWApfSI+CiAgICAgICAgICAke3MuaW1hZ2VVcmw/YDxpbWcgc3JjPSIke2wocy5pbWFnZVVybCl9IiBhbHQ9IiI+YDpsKGt0KHIpKX0KICAgICAgICA8L3NwYW4+CiAgICAgICAgPGRpdiBjbGFzcz0icm9vbS1tYWluIj4KICAgICAgICAgIDxoMyBjbGFzcz0icm9vbS1uYW1lIj4ke2wocil9PC9oMz4KICAgICAgICAgICR7bz8ubGVhZD8/IiJ9CiAgICAgICAgICA8dWwgY2xhc3M9ImZhY3RzIj4keyR1KHMsbz8uc2FpZCl9PC91bD4KICAgICAgICAgIDxkaXYgY2xhc3M9InJ0eXBlLW4iPiR7bCh0Lmxlbmd0aD09PTE/YSgiMSByYXRlIiwiMSDnp43ku7fmoLwiKTphKGAke3QubGVuZ3RofSByYXRlc2AsYCR7dC5sZW5ndGh9IOenjeS7t+agvGApKX08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InJhdGVzIj4ke3QubWFwKGM9Pntjb25zdCB1PU5zKFN0cmluZyhlLmlkKSxTdHJpbmcoYy5pZCksbik7cmV0dXJuYAogICAgICAgIDxkaXYgY2xhc3M9InJyYXRlJHt1PyIgaGVsZCI6IiJ9Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9InJhdGUtbWFpbiI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJhdGUtbmFtZSI+JHtsKGMucmF0ZT8ubmFtZT8/Yy5uYW1lKX08L2Rpdj4KICAgICAgICAgICAgJHtfdShjKX0KICAgICAgICAgICAgPHVsIGNsYXNzPSJwZXJrcyI+JHt3dShjKX08L3VsPgogICAgICAgICAgICAke2NiKGMpfQogICAgICAgICAgPC9kaXY+CiAgICAgICAgICAke0F1KGUsYyxuLHUpfQogICAgICAgIDwvZGl2PmB9KS5qb2luKCIiKX08L2Rpdj4KICAgIDwvYXJ0aWNsZT5gfSxmUz0oZSx0LG4pPT57Y29uc3Qgbz1OcyhTdHJpbmcoZS5pZCksU3RyaW5nKHQuaWQpLG4pLHM9aWIodC5ob3VybHkpLHI9VHUuZ2V0KFN0cmluZyh0LmlkKSk/P3NbMF07cmV0dXJuYAogICAgPGFydGljbGUgY2xhc3M9InJvb20gaG91cmx5JHtvPyIgaGVsZCI6IiJ9Ij4KICAgICAgPHNwYW4gY2xhc3M9InJvb20tc2hvdCIgc3R5bGU9IiR7dnQoYCR7ZS5pZH06JHt0LmlkfWApfSI+CiAgICAgICAgJHt0LmltYWdlVXJsP2A8aW1nIHNyYz0iJHtsKHQuaW1hZ2VVcmwpfSIgYWx0PSIiPmA6bChrdChTdHJpbmcodC5uYW1lKSkpfQogICAgICA8L3NwYW4+CiAgICAgIDxkaXYgY2xhc3M9InJvb20tbWFpbiI+CiAgICAgICAgPGgzIGNsYXNzPSJyb29tLW5hbWUiPiR7bCh0LnJvb21UeXBlPy5uYW1lPz90Lm5hbWUpfTxzcGFuIGNsYXNzPSJyb29tLWhvdXJzIj4gwrcgJHtsKEplKHQuaG91cmx5LmhvdXJzKSl9PC9zcGFuPjwvaDM+CiAgICAgICAgPHVsIGNsYXNzPSJmYWN0cyI+JHskdSh0KX08L3VsPgogICAgICAgICR7X3UodCl9CiAgICAgICAgPHVsIGNsYXNzPSJwZXJrcyI+JHt3dSh0KX08L3VsPgogICAgICAgIDxkaXYgY2xhc3M9InN0YXJ0cyIgcm9sZT0iZ3JvdXAiIGFyaWEtbGFiZWw9IiR7YSgiU3RhcnQgdGltZSIsIuWIsOW6l+aXtumXtCIpfSI+CiAgICAgICAgICA8c3BhbiBjbGFzcz0id2wiPiR7YSgiQXJyaXZlIGF0Iiwi5Yiw5bqX5pe26Ze0Iil9PC9zcGFuPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2hpcHMiPiR7cy5tYXAoaT0+YDxidXR0b24gY2xhc3M9ImNoaXAgYXNrIiB0eXBlPSJidXR0b24iIGRhdGEtaG91ci1zdGFydD0iJHtsKGkpfSIgZGF0YS1yb29tPSIke2wodC5pZCl9IiBhcmlhLXByZXNzZWQ9IiR7aT09PXI/InRydWUiOiJmYWxzZSJ9Ij4ke2woaSl9PC9idXR0b24+YCkuam9pbigiIil9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJub3RlIj4ke2wocj9hKGAke3J94oCTJHt1cyhyLHQuaG91cmx5KX0gwrcgbGVhdmUgYnkgJHt1cyhyLHQuaG91cmx5KX1gLGAke3J94oCTJHt1cyhyLHQuaG91cmx5KX0gwrcgJHt1cyhyLHQuaG91cmx5KX0g5YmN56a75bqXYCk6YShgT3V0IGJ5ICR7dC5ob3VybHkubGF0ZXN0RW5kfSBhdCB0aGUgbGF0ZXN0LmAsYOacgOaZmiAke3QuaG91cmx5LmxhdGVzdEVuZH0g56a75bqX44CCYCkpfTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgJHtBdShlLHQsbixvKX0KICAgIDwvYXJ0aWNsZT5gfSxnUz0oZSx0LG4pPT57Y29uc3Qgbz10LmZpbHRlcihjPT5jLmhvdXJseSkscz10LmZpbHRlcihjPT4hYy5ob3VybHkpLHI9W10saT1uZXcgTWFwO2Zvcihjb25zdCBjIG9mIHMpe2NvbnN0IHU9Yy5yb29tVHlwZT8uaWQ/U3RyaW5nKGMucm9vbVR5cGUuaWQpOiIiO2lmKCF1KXtyLnB1c2goW2NdKTtjb250aW51ZX1jb25zdCBkPWkuZ2V0KHUpO2lmKGQpZC5wdXNoKGMpO2Vsc2V7Y29uc3QgaD1bY107aS5zZXQodSxoKSxyLnB1c2goaCl9fXJldHVybltyLmxlbmd0aD9gPGRpdiBjbGFzcz0icm9vbXMiPiR7ci5tYXAoKGMsdSk9Pntjb25zdCBkPWhTKGNbMF0sclt1LTFdPy5bMF0pO3JldHVybiBjLmxlbmd0aD4xfHxjWzBdPy5yb29tVHlwZT9tUyhlLGMsbixkKTpwUyhlLGNbMF0sbixkKX0pLmpvaW4oIiIpfTwvZGl2PmA6IiIsby5sZW5ndGg/YDxkaXYgY2xhc3M9InJvb21zIj4ke28ubWFwKGM9PmZTKGUsYyxuKSkuam9pbigiIil9PC9kaXY+YDoiIl0uam9pbigiIil9LGxiPXsiaG91cmx5LW5vbmUiOigpPT5hKCJUaGlzIGhvdGVsIHNlbGxzIG5vIHJvb21zIGJ5IHRoZSBob3VyIHRvZGF5LiIsIui/meWutuS7iuWkqeS4jeWNlumSn+eCueaIv+OAgiIpLCJob3VybHktb3ZlciI6ZT0+ZS5sYXN0U3RhcnQ/YShgVG9kYXkncyByb29tcyBieSB0aGUgaG91ciBhcmUgb3ZlciAtIHRoZSBsYXN0IHN0YXJ0IHdhcyAke2UubGFzdFN0YXJ0fS5gLGDku4rlpKnnmoTpkp/ngrnmiL/lt7Lnu4/nu5PmnZ/kuobvvIzmnIDmmZogJHtlLmxhc3RTdGFydH0g5byA5aeL44CCYCk6YSgiVG9kYXkncyByb29tcyBieSB0aGUgaG91ciBhcmUgb3Zlci4iLCLku4rlpKnnmoTpkp/ngrnmiL/lt7Lnu4/nu5PmnZ/kuobjgIIiKSwiaG91cmx5LW5vdC15ZXQiOmU9PmUub3BlbnNBdD9hKGBSb29tcyBieSB0aGUgaG91ciBnbyBvbiBzYWxlIHRvZGF5IGZyb20gJHtlLm9wZW5zQXR9LmAsYOS7iuWkqeeahOmSn+eCueaIvyAke2Uub3BlbnNBdH0g5byA5Y2W44CCYCk6YSgiUm9vbXMgYnkgdGhlIGhvdXIgYXJlIG5vdCBvbiBzYWxlIHlldCB0b2RheS4iLCLku4rlpKnnmoTpkp/ngrnmiL/ov5jmsqHlvIDljZbjgIIiKSxwYXJ0eTplPT5OdW1iZXIoZS5sYXJnZXN0KT4wP051bWJlcihlLnJvb21zKT4wP2EoYE5vIHJvb20gc2xlZXBzIGEgcGFydHkgdGhpcyBzaXplOiB0aGUgbGFyZ2VzdCBzbGVlcHMgJHtlLmxhcmdlc3R9LCBzbyBpdCB0YWtlcyAke2Uucm9vbXN9IHJvb21zLmAsYOayoeacieiDveS9j+i/meS5iOWkmuS6uueahOaIv+Wei++8muacgOWkp+eahOWPr+S9jyAke2UubGFyZ2VzdH0g5Lq677yM6ZyA6KaB6K6iICR7ZS5yb29tc30g6Ze044CCYCk6YShgQSByb29tIGhlcmUgc2xlZXBzIGF0IG1vc3QgJHtlLmxhcmdlc3R9IC0gZm9yIG1vcmUsIGFzayB0aGUgaG90ZWwgZGlyZWN0bHkuYCxg5LiA6Ze05pyA5aSa5L2PICR7ZS5sYXJnZXN0fSDkurrvvIzkurrmm7TlpJror7fnm7TmjqXogZTns7vphZLlupfjgIJgKTphKCJObyByb29tIGhlcmUgc2xlZXBzIGEgcGFydHkgdGhpcyBzaXplLiIsIuayoeacieiDveS9j+i/meS5iOWkmuS6uueahOaIv+Wei+OAgiIpLCJzb2xkLW91dCI6ZT0+ZS5ob3VybHk/YSgiVG9kYXkncyByb29tcyBieSB0aGUgaG91ciBhcmUgc29sZCBvdXQuIiwi5LuK5aSp55qE6ZKf54K55oi/6YO96K6i5ruh5LqG44CCIik6TnVtYmVyKGUucm9vbXMpPjE/YShgTm8gcm9vbSB0eXBlIGhhcyAke2Uucm9vbXN9IGxlZnQgZm9yIHRob3NlIGRhdGVzLmAsYOi/meS6m+aXpeacn+ayoeacieWTquS4quaIv+Wei+i/mOWJqSAke2Uucm9vbXN9IOmXtOOAgmApOmEoIkV2ZXJ5IHJvb20gaXMgdGFrZW4gZm9yIHRob3NlIGRhdGVzLiIsIui/meS6m+aXpeacn+eahOaIv+mXtOmDveiuoua7oeS6huOAgiIpLCJwcmVwYWlkLW9ubHkiOigpPT5hKCJPbmx5IHJhdGVzIHBhaWQgaW4gYWR2YW5jZSBhcmUgbGVmdCBoZXJlLCBhbmQgdGhpcyBib29rcyBvbmx5IHJvb21zIHBhaWQgYXQgdGhlIGhvdGVsLiIsIui/memHjOWPquaciemcgOimgemihOS7mOeahOaIv+S7t++8jOi/memHjOWPquiDveiuouWIsOW6l+S7mOasvueahOaIv+mXtOOAgiIpLCJ0b28tbWFueS1yb29tcyI6ZT0+TnVtYmVyKGUucm9vbXMpPjA/YShgTm8gcmF0ZSBib29rcyAke2Uucm9vbXN9IHJvb21zIGF0IG9uY2UgLSBhc2sgZm9yIGZld2VyLmAsYOayoeacieaIv+S7t+iDveS4gOasoeiuoiAke2Uucm9vbXN9IOmXtO+8jOivt+WwkeiuouWHoOmXtOOAgmApOmEoIlRoYXQgbWFueSByb29tcyBjYW5ub3QgYmUgYm9va2VkIGF0IG9uY2UgLSBhc2sgZm9yIGZld2VyLiIsIuS4gOasoeiuouS4jeS6hui/meS5iOWkmumXtO+8jOivt+WwkeiuouWHoOmXtOOAgiIpLCJ0b28tZmFyIjplPT5OdW1iZXIoZS5kYXlzKT4wP2EoYE5vdCBvbiBzYWxlIHlldDogcm9vbXMgYXJlIHNvbGQgdXAgdG8gJHtlLmRheXN9IGRheXMgYWhlYWQuYCxg6L+Y5rKh5byA5Y2W77ya5Y+q6IO96K6iICR7ZS5kYXlzfSDlpKnku6XlhoXnmoTmiL/pl7TjgIJgKTphKCJOb3Qgb24gc2FsZSB5ZXQ6IHRob3NlIGRhdGVzIGFyZSB0b28gZmFyIGFoZWFkLiIsIui/mOayoeW8gOWNlu+8muaXpeacn+Wkqui/nOS6huOAgiIpLCJzdGF5LXJ1bGUiOmU9Pntjb25zdCB0PWUuZGF0ZT9fZShTdHJpbmcoZS5kYXRlKSk6IiI7cmV0dXJuIGUucnVsZT09PSJuby1hcnJpdmFsIj90P2EoYE5vIGFycml2YWxzIG9uICR7dH0uYCxgJHt0feS4jeiDveWFpeS9j+OAgmApOmEoIk5vIGFycml2YWxzIHRoYXQgZGF5LiIsIui/meWkqeS4jeiDveWFpeS9j+OAgiIpOmUucnVsZT09PSJuby1kZXBhcnR1cmUiP3Q/YShgTm8gZGVwYXJ0dXJlcyBvbiAke3R9LmAsYCR7dH3kuI3og73pgIDmiL/jgIJgKTphKCJObyBkZXBhcnR1cmVzIHRoYXQgZGF5LiIsIui/meWkqeS4jeiDvemAgOaIv+OAgiIpOmUucnVsZT09PSJtaW4tc3RheSI/TnVtYmVyKGUubmlnaHRzKT4wP2EoYFRoZSBzdGF5IGhhcyB0byBiZSBhdCBsZWFzdCAke2UubmlnaHRzfSBuaWdodHMuYCxg6Iez5bCR6KaB5L2PICR7ZS5uaWdodHN9IOaZmuOAgmApOmEoIlRoZSBzdGF5IGlzIHRvbyBzaG9ydC4iLCLkvY/nmoTmmZrmlbDlpKrlsJHkuobjgIIiKTplLnJ1bGU9PT0ibWF4LXN0YXkiP051bWJlcihlLm5pZ2h0cyk+MD9hKGBUaGUgc3RheSBjYW4gYmUgYXQgbW9zdCAke2UubmlnaHRzfSBuaWdodHMuYCxg5pyA5aSa5Y+q6IO95L2PICR7ZS5uaWdodHN9IOaZmuOAgmApOmEoIlRoZSBzdGF5IGlzIHRvbyBsb25nLiIsIuS9j+eahOaZmuaVsOWkquWkmuS6huOAgiIpOmEoIlRob3NlIGRhdGVzIGhhdmUgYSBib29raW5nIHJ1bGUgLSB0cnkgb3RoZXIgZGF0ZXMuIiwi6L+Z5Lqb5pel5pyf5pyJ5YWl5L2P6ZmQ5Yi277yM5o2i5Liq5pel5pyf6K+V6K+V44CCIil9LGNsb3NlZDooKT0+YSgiTm90IG9uIHNhbGUgZm9yIHRob3NlIGRhdGVzLiIsIui/meS6m+aXpeacn+S4jeW8gOaUvumihOiuouOAgiIpLCJub25lLW9uLXNhbGUiOigpPT5hKCJUaGlzIGhvdGVsJ3Mgcm9vbXMgYXJlIG5vdCBzb2xkIGhlcmUuIiwi6L+Z5a626YWS5bqX55qE5oi/6Ze05LiN5Zyo6L+Z6YeM5Ye65ZSu44CCIiksdW5yZWFjaGFibGU6KCk9PmEoIlRoaXMgaG90ZWwncyByb29tcyBjb3VsZCBub3QgYmUgbG9va2VkIHVwIGp1c3Qgbm93IC0gdHJ5IGFnYWluIGluIGEgbW9tZW50LiIsIui/measoeayoeiDveafpeWIsOi/meWutumFkuW6l+eahOaIv+mXtO+8jOeojeWQjuWGjeivleS4gOasoeOAgiIpLCJwcmljZS1jaGFuZ2VkIjooKT0+YSgiVGhlIHByaWNlIG9yIHRlcm1zIGNoYW5nZWQgZnJvbSB3aGF0IHlvdSB3ZXJlIHNob3duLCBzbyBpdCB3YXMgbm90IGJvb2tlZCBhdCB0aGUgbmV3IG9uZXMuIiwi5Lu35qC85oiW5p2h5qy+5ZKM5L2g55yL5Yiw55qE5LiN5LiA5qC35LqG77yM5omA5Lul5rKh5pyJ5oyJ5paw5Lu35qC86aKE6K6i44CCIiksbGltaXRlZDooKT0+YSgiVGhpcyBzdGF5IHdhcyBoZWxkIGJhY2sgYnkgYSBib29raW5nIGxpbWl0IGZvciBub3cgLSBib29rIGZld2VyLCBvciB0cnkgbGF0ZXIuIiwi6L+Z5LiA5q615pqC5pe26KKr6aKE6K6i5LiK6ZmQ5oyh5LiL5LqG77yM5bCR6K6i5LiA5Lqb5oiW56iN5ZCO5YaN6K+V44CCIiksImRhdGVzLXBhc3QiOmU9PmUudG9kYXk/YShgQ2hlY2staW4gaGFzIHBhc3NlZCAtIHRvZGF5IGlzICR7X2UoU3RyaW5nKGUudG9kYXkpKX0uYCxg5YWl5L2P5pel5pyf5bey57uP6L+H5Y675LqG77yM5LuK5aSp5pivICR7X2UoU3RyaW5nKGUudG9kYXkpKX3jgIJgKTphKCJDaGVjay1pbiBoYXMgcGFzc2VkLiIsIuWFpeS9j+aXpeacn+W3sue7j+i/h+WOu+S6huOAgiIpLCJkYXRlcy1vcmRlciI6KCk9PmEoIkNoZWNrLW91dCBoYXMgdG8gYmUgYWZ0ZXIgY2hlY2staW4gLSBvbmUgbmlnaHQgbWVhbnMgbGVhdmluZyB0aGUgbmV4dCBkYXkuIiwi56a75bqX6KaB5pma5LqO5YWl5L2P77ya5L2P5LiA5pma5bCx5piv56ys5LqM5aSp56a75bqX44CCIiksInN0YXktdG9vLWxvbmciOmU9Pk51bWJlcihlLm5pZ2h0cyk+MD9hKGBBdCBtb3N0ICR7ZS5uaWdodHN9IG5pZ2h0cyBjYW4gYmUgYm9va2VkIGF0IG9uY2UuYCxg5LiA5qyh5pyA5aSa6K6iICR7ZS5uaWdodHN9IOaZmuOAgmApOmEoIlRoYXQgbWFueSBuaWdodHMgY2Fubm90IGJlIGJvb2tlZCBhdCBvbmNlLiIsIuS4gOasoeiuouS4jeS6hui/meS5iOWkmuaZmuOAgiIpLCJzdGF5LWludmFsaWQiOigpPT5hKCJDaG9vc2UgdGhlIGRhdGVzIGFuZCB0aGUgZ3Vlc3RzIGFnYWluLiIsIuivt+mHjeaWsOmAieWlveWFpeS9j+aXpeacn+WSjOS6uuaVsOOAgiIpLHVuYXZhaWxhYmxlOigpPT5hKCJUaG9zZSBkYXRlcyBjYW5ub3QgYmUgYm9va2VkIGhlcmUuIiwi6L+Z5Lqb5pel5pyf6L+Z6YeM6K6i5LiN5LqG44CCIil9LFJzPShlLHQsbik9Pntjb25zdCBvPU4hPT0iZW4iJiZ0eXBlb2YgdD09InN0cmluZyI/bGJbdF06dm9pZCAwO3JldHVybiBvP28obiYmdHlwZW9mIG49PSJvYmplY3QiP246e30pOlN0cmluZyhlPz8iIil9LE5kPShlLHQsbik9PntpZih0P3QhPT0icGFydHkiOiEvXGJzbGVlcHNcYnxjYW4gdGFrZSBcZCsgZ3Vlc3RzLy50ZXN0KGUpKXJldHVybiIiO2NvbnN0IG89TnVtYmVyKCh0PT09InBhcnR5Ij9uPy5sYXJnZXN0OnZvaWQgMCk/Py9sYXJnZXN0IHNsZWVwcyAoXGQrKS8uZXhlYyhlKT8uWzFdPz8wKSxzPWouZ3Vlc3RzKlYscj1vPjA/TWF0aC5taW4oVXQsTWF0aC5jZWlsKHMvbykpOjAsaT1yP01hdGguY2VpbChzL3IpOjA7cmV0dXJuYDxkaXYgY2xhc3M9InN0YXRlIj4KICAgIDxkaXYgY2xhc3M9InN0YXRlLWljbyI+JHtJLnVzZXJzfTwvZGl2PgogICAgPGgzIGNsYXNzPSJzdGF0ZS10Ij4ke2woYShgTm8gcm9vbSBoZXJlIHNsZWVwcyAke2ouZ3Vlc3RzfWAsYOi/memHjOayoeacieWPr+S9jyAke2ouZ3Vlc3RzfSDkurrnmoTmiL/lnotgKSl9PC9oMz4KICAgIDxwIGNsYXNzPSJzdGF0ZS1kIj4ke2wociYmaTw9bz9hKGBUaGUgbGFyZ2VzdCBzbGVlcHMgJHtvfS4gQm9vayAke3J9IHJvb21zLCBlYWNoIGZvciB1cCB0byAke2l9LCBhbmQgdGhlICR7c30gb2YgeW91IGZpdC5gLGDmnIDlpKfnmoTmiL/lnovlj6/kvY8gJHtvfSDkurrjgILorqIgJHtyfSDpl7TjgIHmr4/pl7TmjIkgJHtpfSDkurrorqLvvIwke3N9IOS4quS6uuWwseiDveS9j+S4i+OAgmApOmEoIlRyeSBmZXdlciBndWVzdHMgaW4gZWFjaCByb29tLiIsIuivleivleaKiuavj+mXtOS6uuaVsOaUueWwkeOAgiIpKX08L3A+CiAgICAke3ImJmk8PW8/YDxkaXYgY2xhc3M9ImZvb3QiPjxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtc3BsaXQ9IiR7cn06JHtpfSI+JHtsKGEoYEJvb2sgJHtyfSByb29tcywgJHtpfSBpbiBlYWNoYCxg6K6iICR7cn0g6Ze077yM5q+P6Ze05oyJICR7aX0g5Lq6YCkpfTwvYnV0dG9uPjwvZGl2PmA6IiJ9CiAgPC9kaXY+YH0sYlM9KGUsdCxuPTApPT4hQXJyYXkuaXNBcnJheSh0KXx8dC5sZW5ndGg8Mj8iIjpgCiAgPGRpdiBjbGFzcz0ic3RyaXAtaCI+JHtsKGEoYEFycml2ZSBhbm90aGVyIGRheSDCtyAke2NlKG4pfSBmcm9tYCxg5o2i5Liq5pel5a2Q5YWl5L2PIMK3ICR7Y2Uobil96LW35Lu3YCkpfSR7dC5maWx0ZXIobz0+by5sb3dlc3QpLmxlbmd0aD4xP2A8c21hbGwgY2xhc3M9InN0cmlwLWtleSI+JHthKCJHcmVlbjogdGhlIGxvd2VzdCIsIue7v+iJsuS4uuacgOS9juS7tyIpfTwvc21hbGw+YDoiIn08L2Rpdj4KICA8ZGl2IGNsYXNzPSJmbGV4LWRhdGVzIiByb2xlPSJncm91cCIgc3R5bGU9Ii0tbjoke3QubGVuZ3RofSIgYXJpYS1sYWJlbD0iJHthKCJOZWFyYnkgYXJyaXZhbCBkYXRlcyIsIumZhOi/keeahOWFpeS9j+aXpeacnyIpfSI+CiAgICAke3QubWFwKChvLHMpPT5gPGJ1dHRvbiBjbGFzcz0iZmQke28uY2hvc2VuPyIgb24iOiIifSR7by5mcm9tPyIiOiIgb3V0In0ke28uYmVzdD8iIGJlc3QiOiIifSR7by5sb3dlc3Q/IiBsb3dlc3QiOiIifSIgdHlwZT0iYnV0dG9uIiBkYXRhLWhvdGVsPSIke2woZSl9IiBkYXRhLWNpPSIke2woby5jaGVja0luKX0iIGRhdGEtY289IiR7bChvLmNoZWNrT3V0KX0iIGFyaWEtbGFiZWw9IiR7bChhKGBBcnJpdmUgJHtfZShTdHJpbmcoby5jaGVja0luKSl9YCxgJHtfZShTdHJpbmcoby5jaGVja0luKSl95YWl5L2PYCkrKG8uZnJvbT9hKGAsIGZyb20gJHtvLmZyb219YCxg77yMJHtvLmZyb2196LW3YCk6YSgiLCBub3RoaW5nIGxlZnQiLCLvvIzlt7Lmu6EiKSkrKG8ubG93ZXN0P2EoIiwgdGhlIGxvd2VzdCIsIu+8jOacgOS9juS7tyIpOiIiKSl9Ij4KICAgICAgICA8c3BhbiBjbGFzcz0iZmQtZGF5Ij4ke3M9PT0wfHxLZShTdHJpbmcoby5jaGVja0luKSkubW9uIT09S2UoU3RyaW5nKHRbcy0xXT8uY2hlY2tJbikpLm1vbj9gPHNwYW4gY2xhc3M9ImZkLW1vbiI+JHtsKEtlKFN0cmluZyhvLmNoZWNrSW4pKS5tb24pfTwvc3Bhbj5gOic8c3BhbiBjbGFzcz0iZmQtbW9uIiBhcmlhLWhpZGRlbj0idHJ1ZSI+Jm5ic3A7PC9zcGFuPid9PHNwYW4gY2xhc3M9ImZkLWRvdyI+JHtsKEtlKFN0cmluZyhvLmNoZWNrSW4pKS5kb3cpfTwvc3Bhbj48c3BhbiBjbGFzcz0iZmQtZG4iPiR7bChLZShTdHJpbmcoby5jaGVja0luKSkuZGF5KX08L3NwYW4+PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJmZC1wcmljZSI+JHtvLmZyb20/bChvLmZyb20pOmEoIkZ1bGwiLCLlt7Lmu6EiKX08L3NwYW4+JHtvLmxvd2VzdCYmdC5maWx0ZXIocj0+ci5sb3dlc3QpLmxlbmd0aD09PTE/YDxzcGFuIGNsYXNzPSJmZC1sb3ciPiR7YSgiTG93ZXN0Iiwi5pyA5L2OIil9PC9zcGFuPmA6IiJ9CiAgICAgIDwvYnV0dG9uPmApLmpvaW4oIiIpfQogIDwvZGl2PmAsUGQ9ZT0+e2NvbnN0IHQ9ZS5ob3RlbD8/e30sbj1lLnJvb21zPz9bXSxvPWUuc3RheT8/aixzPW4ubGVuZ3RoPjAmJm4uZXZlcnkoaT0+aS5ob3VybHkpfHwhIWUuaG91cmx5JiYhIW8/LmNoZWNrSW4mJm8uY2hlY2tJbj09PW8uY2hlY2tPdXQscj1uZXcgU2V0KG4ubWFwKGk9PlN0cmluZyhpLnJvb21UeXBlPy5pZD8/aS5pZCkpKS5zaXplO3JldHVybltZZyh0KSxlLmhvdXJseSYmdC5zZWxsc0hvdXJseSE9PSExP2A8ZGl2IGNsYXNzPSJzZWciIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSIke2EoIkhvdyBsb25nIiwi5YWl5L2P5pa55byPIil9Ij4KICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InNlZy1iIiBkYXRhLWFjdD0ibmlnaHRseSIgYXJpYS1wcmVzc2VkPSIke3M/ImZhbHNlIjoidHJ1ZSJ9Ij4ke0kuY2FsZW5kYXJ9JHthKCJPdmVybmlnaHQiLCLmjInmmZoiKX08L2J1dHRvbj4KICAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9InNlZy1iIiBkYXRhLWFjdD0iaG91cmx5IiBkYXRhLWhvdGVsLWlkPSIke2wodC5pZCl9IiBhcmlhLXByZXNzZWQ9IiR7cz8idHJ1ZSI6ImZhbHNlIn0iPiR7SS5jbG9ja30ke2EoIkJ5IHRoZSBob3VyIMK3IHRvZGF5Iiwi6ZKf54K55oi/IMK3IOS7iuWkqSIpfTwvYnV0dG9uPgogICAgICAgICA8L2Rpdj5gOiIiLHM/IiI6RGcoU3RyaW5nKHQuaWQpLHQudG9kYXlUaGVyZSksc3x8ZS5ub1Jvb21zJiZOZChTdHJpbmcoZS5ub1Jvb21zKSxlLm5vUm9vbXNDb2RlLGUubm9Sb29tc0FyZ3MpPyIiOmJTKFN0cmluZyh0LmlkKSxlLmRhdGVzLGJlKG8uY2hlY2tJbixvLmNoZWNrT3V0KSksZS5uZWVkc0RhdGVzP2A8ZGl2IGNsYXNzPSJza2VsIiByb2xlPSJzdGF0dXMiIGFyaWEtbGFiZWw9IiR7YSgiTG9va2luZyB1cCByb29tcyIsIuato+WcqOafpeivouaIv+mXtCIpfSI+PGRpdiBjbGFzcz0ic2sgc2stYmFyIj48L2Rpdj48ZGl2IGNsYXNzPSJzayBzay1iYXIiPjwvZGl2PjwvZGl2PmA6ZS5ub1Jvb21zJiZzP2A8ZGl2IGNsYXNzPSJzdGF0ZSI+CiAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJzdGF0ZS1pY28iPiR7SS5jbG9ja308L2Rpdj4KICAgICAgICAgICAgIDxoMyBjbGFzcz0ic3RhdGUtdCI+JHthKCJObyByb29tcyBieSB0aGUgaG91ciB0b2RheSIsIuS7iuWkqeayoeaciemSn+eCueaIvyIpfTwvaDM+CiAgICAgICAgICAgICA8cCBjbGFzcz0ic3RhdGUtZCI+JHtsKFJzKGUubm9Sb29tcyxlLm5vUm9vbXNDb2RlLHsuLi5lLm5vUm9vbXNBcmdzPz97fSxob3VybHk6ITB9KSl9PC9wPgogICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdCI+PGJ1dHRvbiBjbGFzcz0iZ28gc29mdCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0ibmlnaHRseSI+JHtJLmNhbGVuZGFyfSR7YSgiU2VlIHJvb21zIGZvciBhIG5pZ2h0Iiwi55yL5oyJ5pma5YWl5L2P55qE5oi/6Ze0Iil9PC9idXR0b24+PC9kaXY+CiAgICAgICAgICAgPC9kaXY+YDplLm5vUm9vbXM/TmQoU3RyaW5nKGUubm9Sb29tcyksZS5ub1Jvb21zQ29kZSxlLm5vUm9vbXNBcmdzKXx8YDxkaXYgY2xhc3M9ImVyciI+JHtsKFJzKGUubm9Sb29tcyxlLm5vUm9vbXNDb2RlLGUubm9Sb29tc0FyZ3MpKX08L2Rpdj5gOmA8aDMgY2xhc3M9InNlYyI+JHtzP2EoIkJ5IHRoZSBob3VyLCB0b2RheSIsIuS7iuaXpemSn+eCueaIvyIpOmEoIkNob29zZSB5b3VyIHJvb20iLCLpgInmi6nmiL/lnosiKX0gPHNtYWxsIGNsYXNzPSJzZWMtbiI+JHtsKHM/YShgJHtfZShTdHJpbmcoby5jaGVja0luKSl9IMK3IHBpY2sgd2hlbiB5b3UgYXJyaXZlIMK3IHRheGVzIGluYCxgJHtfZShTdHJpbmcoby5jaGVja0luKSl9IMK3IOmAieWlveWIsOW6l+aXtumXtCDCtyDlkKvnqI7otLlgKTp1UyhyLE51bWJlcihvLmd1ZXN0cykpKyhuLmxlbmd0aD5yP2EoYCwgJHtuLmxlbmd0aH0gcmF0ZXNgLGDjgIEke24ubGVuZ3RofSDnp43ku7fmoLxgKToiIikrYShgIMK3IHByaWNlcyBmb3IgJHtjZShiZShvLmNoZWNrSW4sby5jaGVja091dCkpfSwgdGF4ZXMgaW5gLGAgwrcgJHtjZShiZShvLmNoZWNrSW4sby5jaGVja091dCkpfeWQq+eojuaAu+S7t2ApKX08L3NtYWxsPjwvaDM+CiAgICAgICAgICAgJHtnUyh0LG4sbyl9YCwoZS5leHRyYXM/P1tdKS5sZW5ndGh8fChlLnBvbGljaWVzPz9bXSkubGVuZ3RoP2A8ZGl2IGNsYXNzPSJnb29kLXRvLWtub3ciPgogICAgICAgICAgIDxoMyBjbGFzcz0ic2VjIj4ke2EoIkdvb2QgdG8ga25vdyIsIuWFpeS9j+mhu+efpSIpfTwvaDM+CiAgICAgICAgICAgJHsoZS5wb2xpY2llcz8/W10pLmxlbmd0aD9gPGRpdiBjbGFzcz0ibGlua3MiPiR7ZS5wb2xpY2llcy5tYXAoaT0+YDxidXR0b24gY2xhc3M9Imxpbmstcm93IiB0eXBlPSJidXR0b24iIGRhdGEtcG9saWN5PSIke2woaS50b3BpYyl9IiBkYXRhLWhvdGVsPSIke2wodC5pZCl9Ij48c3Bhbj4ke2woaS50aXRsZSl9PC9zcGFuPiR7SS5jaGV2Un08L2J1dHRvbj5gKS5qb2luKCIiKX08L2Rpdj5gOiIifQogICAgICAgICAgICR7KGUuZXh0cmFzPz9bXSkubGVuZ3RoP2A8YnV0dG9uIGNsYXNzPSJnbyBzb2Z0IiB0eXBlPSJidXR0b24iIGRhdGEtZXh0cmFzPSIke2wodC5pZCl9Ij4ke2EoIkFkZC1vbnMgYW5kIGV4cGVyaWVuY2VzIiwi6ZmE5Yqg5pyN5Yqh5ZKM5L2T6aqMIil9JHtJLmFycm93fTwvYnV0dG9uPmA6IiJ9CiAgICAgICAgIDwvZGl2PmA6IiJdLmpvaW4oIiIpfSx2Uz17InBlcnNvbi1uaWdodCI6WyJwZXIgcGVyc29uIHBlciBuaWdodCIsIuavj+S6uuavj+aZmiJdLG5pZ2h0OlsicGVyIG5pZ2h0Iiwi5q+P5pmaIl0sc3RheTpbInBlciBzdGF5Iiwi5q+P5qyh5YWl5L2PIl0scGVyc29uOlsicGVyIHBlcnNvbiIsIuavj+S6uiJdLGl0ZW06WyJlYWNoIiwi5q+P5Lu9Il0sdHJpcDpbInBlciB0cmlwIiwi5q+P6LafIl19LHhkPWU9Pntjb25zdCB0PXZTW1N0cmluZyhlKV07cmV0dXJuIHQ/YSh0WzBdLHRbMV0pOmEoYHBlciAke2V9YCxg5q+PJHtlfWApfSxrUz1lPT57Y29uc3QgdD1lLmhvdGVsPz97fSxuPWUuZXh0cmFzPz9bXSxvPWUuZm9yQm9va2luZztyZXR1cm4gbz9bYDxkaXY+PGRpdiBjbGFzcz0iaC1uYW1lIj4ke2woYShgQWRkLW9ucyBmb3IgJHtvLmNvbmZpcm1hdGlvbkNvZGV9YCxgJHtvLmNvbmZpcm1hdGlvbkNvZGV9IOeahOmZhOWKoOacjeWKoWApKX08L2Rpdj48ZGl2IGNsYXNzPSJoLXdoZXJlIj4ke2wodC5uYW1lKX0gwrcgJHtsKFhvKG8uc3RheSkpfTwvZGl2PjwvZGl2PmAsYDxkaXYgY2xhc3M9InJvd3MiPiR7bi5tYXAocz0+YAogICAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJib2R5Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibmFtZSI+JHtsKHMubmFtZSl9PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1ldGEiPiR7bChzLmRlc2NyaXB0aW9uKX08L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0icHJpY2UiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJwLXRvdGFsIj4ke2wocy5wcmljZSl9PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InAtdW5pdCI+JHtsKHhkKHMucGVyKSl9PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImFjdGlvbiI+JHtQcyhgZGF0YS1ib29raW5nLWV4dHJhPSIke2wocy5pZCl9IiBkYXRhLWJvb2tpbmc9IiR7bChvLmNvbmZpcm1hdGlvbkNvZGUpfSJgLE51bWJlcihvLmhlbGQ/LltzLmlkXT8/MCksU3RyaW5nKHMubmFtZSkpfTwvZGl2PgogICAgICAgIDwvZGl2PmApLmpvaW4oIiIpfTwvZGl2PmAsYDxkaXYgY2xhc3M9Im5vdGUiPiR7YSgiRWFjaCBjaGFuZ2UgaXMgc2hvd24gd2l0aCBpdHMgbmV3IHRvdGFsIGJlZm9yZSBhbnl0aGluZyBtb3Zlcy4gTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIiwi5q+P5qyh5pS55Yqo6YO95Lya5YWI5pi+56S65paw55qE5oC75Lu377yM56Gu6K6k5ZCO5omN55Sf5pWI44CC6L+Z6YeM5LiN5omj5qy+44CCIil9PC9kaXY+YCxgPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImJvb2tpbmdzIj4ke2EoIkJhY2sgdG8geW91ciBib29raW5ncyIsIui/lOWbnuaIkeeahOmihOiuoiIpfTwvYnV0dG9uPmBdLmpvaW4oIiIpOltgPGRpdj48ZGl2IGNsYXNzPSJoLW5hbWUiPiR7bCh0Lm5hbWUpfTwvZGl2PjxkaXYgY2xhc3M9Imgtd2hlcmUiPiR7YSgiV2hhdCBpdCBvZmZlcnMgYmVzaWRlIHRoZSByb29tIiwi5oi/6Ze05Lul5aSW55qE6ZmE5Yqg5pyN5YqhIil9PC9kaXY+PC9kaXY+YCxgPGRpdiBjbGFzcz0icm93cyI+JHtuLm1hcChzPT5gCiAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgPGRpdiBjbGFzcz0iYm9keSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lIj4ke2wocy5uYW1lKX08L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9Im1ldGEiPiR7bChzLmRlc2NyaXB0aW9uKX08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwcmljZSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwLXRvdGFsIj4ke2wocy5wcmljZSl9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwLXVuaXQiPiR7bCh4ZChzLnBlcikpfTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFjdGlvbiI+JHtQcyhgZGF0YS1hZGQtZXh0cmE9IiR7bChzLmlkKX0iIGRhdGEtaG90ZWw9IiR7bCh0LmlkKX0iYCxCXyhTdHJpbmcodC5pZCksU3RyaW5nKHMuaWQpKSxTdHJpbmcocy5uYW1lKSl9PC9kaXY+CiAgICAgIDwvZGl2PmApLmpvaW4oIiIpfTwvZGl2PmAsYDxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtaG90ZWw9IiR7bCh0LmlkKX0iPiR7bChhKGBCYWNrIHRvICR7dC5uYW1lfWAsYOi/lOWbniR7dC5uYW1lfWApKX08L2J1dHRvbj5gXS5qb2luKCIiKX07bGV0IGxhPSExO2NvbnN0IHlTPShlLHQ9ITEsbj0hMSk9Pntjb25zdCBvPWUua2luZD09PSJyb29tIj9gZGF0YS1hZGQtcm9vbT0iJHtsKGUucm9vbVJlZil9IiBkYXRhLWhvdGVsPSIke2woZS5ob3RlbElkKX0iIGRhdGEtY2k9IiR7bChlLnN0YXk/LmNoZWNrSW4pfSIgZGF0YS1jbz0iJHtsKGUuc3RheT8uY2hlY2tPdXQpfSIgZGF0YS1ndT0iJHtsKGUuc3RheT8uZ3Vlc3RzKX0iYDpgZGF0YS1hZGQtZXh0cmE9IiR7bChlLmV4dHJhUmVmPz9lLnRpdGxlKX0iIGRhdGEtaG90ZWw9IiR7bChlLmhvdGVsSWQpfSIke2UuZGF5P2AgZGF0YS1kYXk9IiR7bChlLmRheSl9ImA6IiJ9YCxzPWUua2luZCE9PSJyb29tInx8ZS5ob3VybHk/IiI6ZS5yZWZ1bmRhYmxlPT09ITE/YDxsaSBjbGFzcz0icGVyayB3YXJuIj4ke0kuYWxlcnR9PHNwYW4+PGI+JHthKCJOb24tcmVmdW5kYWJsZSIsIuS4jeWPr+WPlua2iCIpfTwvYj4ke2EoIiDigJQgdGhpcyByYXRlIGNhbm5vdCBiZSBjYW5jZWxsZWQiLCLvvIzmraTku7fmoLzorqLlkI7kuI3og73pgIDmlLkiKX08L3NwYW4+PC9saT5gOmA8bGkgY2xhc3M9InBlcmsiPiR7SS5jaGVja308c3Bhbj48Yj4ke2EoIkZyZWUgY2FuY2VsbGF0aW9uIiwi5YWN6LS55Y+W5raIIil9PC9iPiR7ZS5mcmVlQ2FuY2VsbGF0aW9uTG9jYWw/bChhKGAgdW50aWwgJHtYZyhlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbCxlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbElzbyl9YCxg77yMJHtSdChlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbCxlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbElzbyl9IOWJjWApKToiIn08L3NwYW4+PC9saT5gLHI9ZS5raW5kPT09InJvb20iJiZlLnBheW1lbnQ9PT0icHJlcGFpZCI/YDxsaSBjbGFzcz0icGVyayI+JHtJLmxvY2t9PHNwYW4+PGI+JHthKCJQYWlkIGluIGFkdmFuY2UiLCLpnIDpooTku5giKX08L2I+JHthKCIg4oCUIG9uIHRoZSBuZXh0IHN0ZXAiLCLvvIzkuIvkuIDmraXku5jmrL4iKX08L3NwYW4+PC9saT5gOiIiO3JldHVybmAKICAgIDxkaXYgY2xhc3M9InJvdyBsaW5lIj4KICAgICAgPGRpdiBjbGFzcz0iYm9keSI+CiAgICAgICAgPGRpdiBjbGFzcz0ibmFtZSI+JHtsKGUudGl0bGUpfTwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im1ldGEiPiR7dCYmUHQoZS5zdXBwbGllcik/YDxzcGFuIGNsYXNzPSJiYWRnZSI+JHtsKFB0KGUuc3VwcGxpZXIpLm5hbWUpfTwvc3Bhbj4gYDoiIn0ke2woZS5raW5kPT09InJvb20iP1tuPyIiOmUuaG90ZWxOYW1lLG4/IiI6aWEoZS5zdGF5LGUuaG91cmx5KSxyYihlKV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiDCtyAiKTpgJHtlLmhvdGVsTmFtZX0ke2UuZGV0YWlsP2AgwrcgJHtlLmRldGFpbH1gOiIifWApfTwvZGl2PgogICAgICAgICR7c3x8cj9gPHVsIGNsYXNzPSJwZXJrcyI+JHtzfSR7cn08L3VsPmA6IiJ9CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJwcmljZSI+CiAgICAgICAgPGRpdiBjbGFzcz0icC1saW5lIj4ke2woZS50b3RhbCl9PC9kaXY+CiAgICAgICAgJHtlLmtpbmQ9PT0icm9vbSImJmxhP2A8ZGl2IGNsYXNzPSJwLXVuaXQiPiR7YSgiYmVmb3JlIHRheGVzIiwi5pyq5ZCr56iO6LS5Iil9PC9kaXY+YDoiIn0KICAgICAgICA8ZGl2IGNsYXNzPSJwLXVuaXQiPiR7ZS5raW5kPT09InJvb20iJiZlLmhvdXJseT9sKEplKGUuaG91cmx5LmhvdXJzKSk6ZS5raW5kPT09InJvb20iP2woYShgJHtlLnVuaXR9IGEgbmlnaHRgLGDmr4/mmZogJHtlLnVuaXR9YCkpOmwoYShgJHtlLnVuaXR9IGVhY2hgLGDmr4/ku70gJHtlLnVuaXR9YCkpfTwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iYWN0aW9uIj48c3BhbiBjbGFzcz0id2wiPiR7ZS5raW5kPT09InJvb20iP2EoIlJvb21zIiwi6Ze05pWwIik6YSgiUXVhbnRpdHkiLCLmlbDph48iKX08L3NwYW4+JHtQcyhvLE51bWJlcihlLmtpbmQ9PT0iZXh0cmEiP2Uub3JkZXJlZD8/ZS5xdWFudGl0eT8/MTplLnF1YW50aXR5Pz8xKSxTdHJpbmcoZS50aXRsZSkpfTwvZGl2PgogICAgPC9kaXY+YH0sSGE9KGUsdCk9PmA8ZGl2IGNsYXNzPSJzdW1zIj4KICAgICA8ZGl2IGNsYXNzPSJzdW0iPjxzcGFuPiR7IUFycmF5LmlzQXJyYXkoZS5saW5lcyl8fGUubGluZXMuc29tZShuPT5uLmtpbmQ9PT0iZXh0cmEiKT9hKCJSb29tcyBhbmQgYWRkLW9ucyIsIuaIv+i0ueWSjOmZhOWKoOmhueebriIpOmEoIlJvb21zIiwi5oi/6LS5Iil9PC9zcGFuPjxzcGFuPiR7bChlLnN1YnRvdGFsKX08L3NwYW4+PC9kaXY+CiAgICAgPGRpdiBjbGFzcz0ic3VtIj48c3Bhbj4ke2EoIlRheGVzIGFuZCBmZWVzIiwi56iO6LS5Iil9PC9zcGFuPjxzcGFuPiR7bChlLnRheGVzQW5kRmVlcz09PSJJbmNsdWRlZCI/YSgiSW5jbHVkZWQiLCLlt7LlkKsiKTplLnRheGVzQW5kRmVlcyl9PC9zcGFuPjwvZGl2PgogICAgICR7ZS5tZW1iZXJTYXZpbmc/YDxkaXYgY2xhc3M9InN1bSBnb29kIj48c3Bhbj4ke2woYShgJHtlLm1lbWJlclNhdmluZy50aWVyfSBtZW1iZXIgcmF0ZWAsYCR7ZS5tZW1iZXJTYXZpbmcudGllcn3kvJrlkZjku7dgKSl9PC9zcGFuPjxzcGFuPuKIkiAke2woZS5tZW1iZXJTYXZpbmcuc2F2ZWQpfTwvc3Bhbj48L2Rpdj5gOiIifQogICAgIDxkaXYgY2xhc3M9InN1bSB0b3RhbCI+PHNwYW4+JHtsKHQpfTxzbWFsbD4ke2EoIlRheGVzIGFuZCBmZWVzIGluIiwi5ZCr56iO6LS5Iil9PC9zbWFsbD48L3NwYW4+PHNwYW4+JHtsKGUudG90YWwpfTwvc3Bhbj48L2Rpdj4KICAgICAke2UubWVtYmVyU2F2aW5nP2A8ZGl2IGNsYXNzPSJzdW0iPjxzcGFuPiR7YSgiUG9pbnRzIHRoaXMgZWFybnMiLCLlj6/lvpfnp6/liIYiKX08L3NwYW4+PHNwYW4+JHtsKE51bWJlcihlLm1lbWJlclNhdmluZy5wb2ludHMpLnRvTG9jYWxlU3RyaW5nKE5lW05dKSl9PC9zcGFuPjwvZGl2PmA6IiJ9CiAgIDwvZGl2PmAsJFM9ZT0+YDxkaXYgY2xhc3M9Im5vdGUiPiR7bChlLnNhbmRib3g/YShgVGhpcyBpcyBhIHRlc3QgZW52aXJvbm1lbnQuIEJvb2tpbmcgaGVyZSBtYWtlcyBhIHNpbXVsYXRlZCBib29raW5nLCBub3QgYSAke2UubmFtZX0gcmVzZXJ2YXRpb24sIGFuZCBub3RoaW5nIGlzIHBhaWQuYCxg6L+Z5piv5rWL6K+V546v5aKD77ya5Zyo6L+Z6YeM6aKE6K6i5Y+q5Lya55Sf5oiQ5qih5ouf6K6i5Y2V77yM5LiN5pivJHtkZShlLm5hbWUpfeeahOecn+WunumihOiuou+8jOS5n+S4jeS7mOasvuOAgmApOmUuYm9va2luZ01vZGU9PT0icGF5LWF0LWhvdGVsIj9hKGBOb3RoaW5nIGlzIGNoYXJnZWQgaGVyZS4gQm9va2luZyBtYWtlcyBhIHJlc2VydmF0aW9uIHdpdGggJHtlLm5hbWV9LCBwYWlkIGF0IHRoZSBob3RlbCwgYW5kIGdpdmVzIHlvdSBhIGNvbmZpcm1hdGlvbiBjb2RlLmAsYOi/memHjOS4jeaJo+asvuOAgumihOiuouS8muWcqCR7ZGUoZS5uYW1lKX3nlJ/miJDkuIDnrJTliLDlupfku5jmrL7nmoTorqLljZXvvIzlubbnu5nkvaDkuIDkuKrnoa7orqTnoIHjgIJgKTplLmRlbW8/YShgTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIFRoaXMgaXMgYSBkZW1vbnN0cmF0aW9uOiByZXF1ZXN0aW5nIGEgYm9va2luZyBnaXZlcyB5b3UgYSBjb25maXJtYXRpb24gY29kZSwgYnV0ICR7ZS5uYW1lfSBkb2VzIG5vdCByZWNlaXZlIGl0IGFuZCBubyByb29tIGlzIGhlbGQuYCxg6L+Z6YeM5LiN5omj5qy+44CC6L+Z5piv5ryU56S677ya5o+Q5Lqk5ZCO5Lya5b6X5Yiw56Gu6K6k56CB77yM5L2GJHtkZShlLm5hbWUpfeS4jeS8muaUtuWIsO+8jOS5n+S4jeS8muS4uuS9oOS/neeVmeaIv+mXtOOAgmApOmEoYE5vdGhpbmcgaXMgY2hhcmdlZCBoZXJlLiBSZXF1ZXN0aW5nIGEgYm9va2luZyBhc2tzICR7ZS5uYW1lfSB0byBob2xkIHRoZSByb29tcyBhbmQgZ2l2ZXMgeW91IGEgY29uZmlybWF0aW9uIGNvZGUuYCxg6L+Z6YeM5LiN5omj5qy+44CC5o+Q5Lqk5ZCOJHtkZShlLm5hbWUpfeS8muS4uuS9oOS/neeVmeaIv+mXtO+8jOW5tue7meS9oOS4gOS4quehruiupOeggeOAgmApKX08L2Rpdj5gLEZhPWU9PmUubGVuZ3RoPDI/ZVswXT8/IiI6YCR7ZS5zbGljZSgwLC0xKS5qb2luKGEoIiwgIiwi44CBIikpfSR7YSgiIGFuZCAiLCLlkowiKX0ke2VbZS5sZW5ndGgtMV19YCx3Uz1lPT57Y29uc3QgdD1mdShlKTtpZih0Lmxlbmd0aD4xKXtjb25zdCBuPXQuaW5jbHVkZXModXQpP3V0OiIiO3JldHVybltgPGRpdiBjbGFzcz0ibm90ZSI+JHtsKGEoYFRoZXNlIHN0YXlzIGFyZSB3aXRoICR7RmEodC5tYXAobz0+VWUobykubmFtZSkpfS4gRWFjaCBncm91cCdzIGFyZSBib29rZWQgb24gdGhlaXIgb3duLmAsYOi/meS6m+S9j+Wuv+WIhuWxniR7RmEodC5tYXAobz0+VWUobykubmFtZSkpfe+8jOavj+S4qumbhuWboueahOimgeWIhuW8gOmihOiuouOAgmApKX08L2Rpdj5gLC4uLnQubWFwKG89Pntjb25zdCBzPVVlKG8pO3JldHVybmA8ZGl2IGNsYXNzPSJmb290Ij48YnV0dG9uIGNsYXNzPSJnbyR7biYmbiE9PW8/IiBxdWlldCI6IiJ9IiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJhc2stYm9vayIgZGF0YS1ncm91cD0iJHtsKG8pfSI+JHtsKGEoYEJvb2sgdGhlICR7cy5uYW1lfSBzdGF5c2AsYOmihOiuoiR7cy5uYW1lfeeahOS9j+Wuv2ApKX08L2J1dHRvbj48L2Rpdj4keyRTKHMpfWB9KSxuP1VhKCEwLFVlKG4pKToiIl19cmV0dXJuW1VhKCEwLFVlKHRbMF0pKV19LHp1PSgpPT5VZSh1dHx8ZnUoUD8ubGluZXM/P1tdKVswXSksX1M9ZT0+e2NvbnN0IHQ9ZS5saW5lcz8/W107aWYobGE9ISFlLnRheGVzQW5kRmVlcyYmZS50YXhlc0FuZEZlZXMhPT0iSW5jbHVkZWQiLHQubGVuZ3RoPT09MClyZXR1cm5bYDxkaXYgY2xhc3M9ImVtcHR5Ij4ke2EoIlRoZSB0cmlwIGlzIGVtcHR5LiIsIuihjOeoi+mHjOi/mOayoeacieWGheWuueOAgiIpfTwvZGl2PmAsYDxkaXYgY2xhc3M9ImZvb3QiPjxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJob21lIj4ke2woZGUoamUpPT09IumFkuW6lyI/YShtZT9gQnJvd3NlIGhvdGVscyBvbiAke2plfWA6YEJyb3dzZSAke2plfSBob3RlbHNgLCLmtY/op4jlhajpg6jphZLlupciKTptZT9hKGBCcm93c2UgaG90ZWxzIG9uICR7amV9YCxg5rWP6KeIJHtqZX3nmoTphZLlupdgKTphKGBCcm93c2UgJHtqZX0gaG90ZWxzYCxg5rWP6KeIJHtqZX3nmoTphZLlupdgKSl9PC9idXR0b24+PC9kaXY+YF0uam9pbigiIik7Y29uc3Qgbj1bLi4ubmV3IFNldCh0Lm1hcChpPT5TdHJpbmcoaS5kYXk/PyIiKSkpXS5zb3J0KCksbz10LmZpbHRlcihpPT5pLmtpbmQ9PT0icm9vbSIpLHM9Wy4uLm5ldyBTZXQoby5tYXAoaT0+U3RyaW5nKGkuaG90ZWxOYW1lPz8iIikpKV0uZmlsdGVyKEJvb2xlYW4pLHI9cy5sZW5ndGg9PT0xJiZuZXcgU2V0KG8ubWFwKGk9PmAke2kuc3RheT8uY2hlY2tJbn18JHtpLnN0YXk/LmNoZWNrT3V0fXwke2kuaG91cmx5Py5zdGFydD8/IiJ9YCkpLnNpemU9PT0xO3JldHVybltgPGRpdiBjbGFzcz0icmV2aWV3LWgiPjxoMiBjbGFzcz0iaC1uYW1lIj4ke2EoIlJldmlldyBhbmQgYm9vayIsIuaguOWvueW5tumihOiuoiIpfTwvaDI+PGRpdiBjbGFzcz0iaC13aGVyZSI+JHtzLmxlbmd0aD09PTE/TXQoc1swXSk6bChzLmxlbmd0aD9hKGAke3MubGVuZ3RofSBob3RlbHNgLGAke3MubGVuZ3RofSDlrrbphZLlupdgKTp0Lmxlbmd0aD09PTE/YSgiMSBpdGVtIiwiMSDpobkiKTphKGAke3QubGVuZ3RofSBpdGVtc2AsYCR7dC5sZW5ndGh9IOmhuWApKX08L2Rpdj48L2Rpdj5gLHI/Y2Eob1swXT8uc3RheSxvWzBdPy5ob3VybHkpOiIiLG4ubWFwKGk9PmAKICAgICAgJHtpJiZuLmxlbmd0aD4xP2A8ZGl2IGNsYXNzPSJkYXkiPiR7bChfZShpKSl9PC9kaXY+YDoiIn0KICAgICAgPGRpdiBjbGFzcz0icm93cyI+JHt0LmZpbHRlcihjPT5TdHJpbmcoYy5kYXk/PyIiKT09PWkpLm1hcChjPT55UyhjLGZ1KHQpLmxlbmd0aD4xLHIpKS5qb2luKCIiKX08L2Rpdj5gKS5qb2luKCIiKSwoZS5kcm9wcGVkPz9bXSkubGVuZ3RoP2A8ZGl2IGNsYXNzPSJlcnIiPiR7ZS5kcm9wcGVkLm1hcChpPT5gJHtsKGkudGl0bGUpfTogJHtsKGkud2h5KX1gKS5qb2luKCI8YnI+Iil9PC9kaXY+YDoiIiwuLi5BcnJheS5pc0FycmF5KGUuZ3JvdXBzKSYmZS5ncm91cHMubGVuZ3RoPjE/W2A8ZGl2IGNsYXNzPSJub3RlIj4ke2woYShgUHJpY2VkIGluICR7ZHMoZS5jdXJyZW5jaWVzPz9bXSl9LCBzZXBhcmF0ZWx5LiBOb3RoaW5nIGhlcmUgY29udmVydHMgb25lIGludG8gdGhlIG90aGVyOyBlYWNoIGhvdGVsIGlzIGJvb2tlZCBhbmQgcGFpZCBpbiBpdHMgb3duLmAsYOWIhuWIq+S7pSAke2RzKGUuY3VycmVuY2llcz8/W10pfSDorqHku7fvvIzov5nph4zkuI3lgZrmjaLnrpfvvJvmr4/lrrbphZLlupfmjInoh6rlt7HnmoTluIHnp43pooTorqLlkozku5jmrL7jgIJgKSl9PC9kaXY+YCwuLi5lLmdyb3Vwcy5tYXAoaT0+SGEoaSxpLmdvZXNXaXRoQVN0YXk/YShgSW4gJHtpLmN1cnJlbmN5fSwgZ29lcyB3aXRoIGEgc3RheSAtIG5vdCBpbiB0aGUgdG90YWxgLGAke2kuY3VycmVuY3l977yM6ZqP5L2P5a6/5LiA6LW36K6i77yM5LiN6K6h5YWl5oC75Lu3YCk6YShgVG90YWwgaW4gJHtpLmN1cnJlbmN5fWAsYCR7aS5jdXJyZW5jeX0g5oC75Lu3YCkpKV06W0hhKGUsYSgiVG90YWwiLCLmgLvku7ciKSldLG5lfHwhUW8oInNpZ25JbiIpPyIiOmA8ZGl2IGNsYXNzPSJtZW1iZXItb2ZmZXIiPiR7SS50YWd9PHNwYW4+JHtsKGEoYEEgJHtSYXx8amV9IG1lbWJlcj9gLGAke1JhfHxqZX3kvJrlkZjvvJ9gKSl9IDxidXR0b24gY2xhc3M9Imxpbmt5IiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJhc2stc2lnbi1pbiI+JHthKCJTaWduIGluIGZvciB0aGUgbWVtYmVyIHJhdGUiLCLnmbvlvZXkuqvkvJrlkZjku7ciKX08L2J1dHRvbj48L3NwYW4+PC9kaXY+JHtPcygpfWAsLi4uQXJyYXkuaXNBcnJheShlLm5lZWRzUm9vbSkmJmUubmVlZHNSb29tLmxlbmd0aD9lLm5lZWRzUm9vbS5tYXAoaT0+YDxkaXYgY2xhc3M9ImFza2VkIj4KICAgICAgICAgICAgIDxiPiR7YSgiR29lcyB3aXRoIGEgc3RheSIsIumcgOmaj+S9j+Wuv+S4gOi1t+iuoiIpfTwvYj4KICAgICAgICAgICAgIDxzcGFuPiR7bChhKGAke2RzKGkuZXh0cmFzPz9bXSl9IGlzICR7aS5ob3RlbE5hbWV9J3Mgc2VydmljZSBmb3IgaXRzIGd1ZXN0cywgc28gaXQgaXMgYm9va2VkIHdpdGggYSByb29tIHRoZXJlIC0gb3IgYWRkZWQgdG8gYSBib29raW5nIHlvdSBhbHJlYWR5IGhhdmUuYCxgJHtkcyhpLmV4dHJhcz8/W10pfeaYryR7aS5ob3RlbE5hbWV95Li65L2P5a6i5o+Q5L6b55qE5pyN5Yqh77yM6KaB5ZKM6YKj6YeM55qE5oi/6Ze05LiA6LW36K6i77yM5oiW5Yqg5Yiw5L2g5bey5pyJ55qE6aKE6K6i5LiK44CCYCkpfTwvc3Bhbj4KICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3QiPgogICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLWhvdGVsPSIke2woaS5ob3RlbElkKX0iPiR7bChhKGBSb29tcyBhdCAke2kuaG90ZWxOYW1lfWAsYCR7aS5ob3RlbE5hbWV955qE5oi/6Ze0YCkpfTwvYnV0dG9uPgogICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiTXkgYm9va2luZ3MiLCLmiJHnmoTpooTorqIiKX08L2J1dHRvbj4KICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgIDwvZGl2PmApOlsuLi53Uyh0KV1dLmpvaW4oIiIpfSxTUz1be2lkOiJraW5nLWJlZCIsbGFiZWw6IktpbmcgYmVkIix6aDoi5aSn5bqKIn0se2lkOiJ0d2luLWJlZHMiLGxhYmVsOiJUd2luIGJlZHMiLHpoOiLlj4zluooifSx7aWQ6ImhpZ2gtZmxvb3IiLGxhYmVsOiJIaWdoIGZsb29yIix6aDoi6auY5qW85bGCIn0se2lkOiJsb3ctZmxvb3IiLGxhYmVsOiJMb3cgZmxvb3IiLHpoOiLkvY7mpbzlsYIifSx7aWQ6InF1aWV0LXJvb20iLGxhYmVsOiJRdWlldCByb29tIix6aDoi5a6J6Z2Z5oi/6Ze0In0se2lkOiJjb25uZWN0aW5nLXJvb21zIixsYWJlbDoiQ29ubmVjdGluZyByb29tcyIsemg6Iui/numAmuaIvyJ9LHtpZDoiZWFybHktY2hlY2staW4iLGxhYmVsOiJFYXJseSBjaGVjay1pbiIsemg6IuaPkOWJjeWFpeS9jyJ9LHtpZDoibGF0ZS1hcnJpdmFsIixsYWJlbDoiQXJyaXZpbmcgbGF0ZSIsemg6IuaZmuWIsCJ9LHtpZDoiYWNjZXNzaWJsZS1yb29tIixsYWJlbDoiQWNjZXNzaWJsZSByb29tIix6aDoi5peg6Zqc56KN5oi/In1dLEVzPWU9Pntjb25zdCB0PVNTLmZpbmQobj0+bi5pZD09PWUpO3JldHVybiB0P2EodC5sYWJlbCx0LnpoKTplfSxqUz17ImtpbmctYmVkIjoidHdpbi1iZWRzIiwidHdpbi1iZWRzIjoia2luZy1iZWQiLCJoaWdoLWZsb29yIjoibG93LWZsb29yIiwibG93LWZsb29yIjoiaGlnaC1mbG9vciJ9LFRTPVt7ZW46IkJlZCIsemg6IuW6iuWeiyIsaWRzOlsia2luZy1iZWQiLCJ0d2luLWJlZHMiXX0se2VuOiJGbG9vciIsemg6IualvOWxgiIsaWRzOlsiaGlnaC1mbG9vciIsImxvdy1mbG9vciJdfSx7ZW46IkFsc28iLHpoOiLlhbbku5YiLGlkczpbInF1aWV0LXJvb20iLCJjb25uZWN0aW5nLXJvb21zIiwiZWFybHktY2hlY2staW4iLCJhY2Nlc3NpYmxlLXJvb20iXX1dLEFTPVsiMTI6MDAiLCIxNDowMCIsIjE2OjAwIiwiMTg6MDAiLCIyMDowMCIsIjIyOjAwIiwiMjM6MzAiXTtsZXQgQWU9bnVsbDtjb25zdCBVYT0oZT0hMSx0PXp1KCkpPT57Y29uc3Qgbj1BZT9BZS5yZXF1ZXN0czpuZT8ucHJlZmVyZW5jZXM/P1tdLG89UD8udmlldz09PSJ0cmlwIiYmIShBcnJheS5pc0FycmF5KFAuZ3JvdXBzKSYmUC5ncm91cHMubGVuZ3RoPjEpP1N0cmluZyhQLnRvdGFsPz8iIik6IiIscz0oUD8ubGluZXM/P1tdKS5maWx0ZXIobT0+bS5raW5kPT09InJvb20iKSxyPXMucmVkdWNlKChtLHkpPT5tK051bWJlcih5LnF1YW50aXR5Pz8xKSwwKSxpPXMuc29tZShtPT5tLnBheW1lbnQ9PT0icHJlcGFpZCIpLGM9bmV3IFNldChzLm1hcChtPT5gJHttLmhvdGVsSWR9fCR7bS5zdGF5Py5jaGVja0lufXwke20uc3RheT8uY2hlY2tPdXR9fCR7bS5ob3VybHk/LnN0YXJ0Pz8iIn1gKSkuc2l6ZSxkPW5ldyBTZXQocy5tYXAobT0+U3RyaW5nKG0uaG90ZWxJZCkpKS5zaXplPT09Yz9hKGBhbGwgJHtjfSBob3RlbHNgLGDlhajpg6ggJHtjfSDlrrZgKTphKGBhbGwgJHtjfSBzdGF5c2AsYOWFqOmDqCAke2N9IOauteS9j+Wuv2ApLGg9aT9hKCJDb250aW51ZSB0byBwYXltZW50Iiwi5Y675LuY5qy+Iik6Yz4xP3Quc2FuZGJveD9hKGBUZXN0LWJvb2sgJHtkfWAsYOa1i+ivlemihOiuoiR7ZH1gKTphKGBCb29rICR7ZH1gLGDpooTorqIke2R9YCk6dC5zYW5kYm94P2EoIk1ha2UgYSB0ZXN0IGJvb2tpbmciLCLmj5DkuqTmtYvor5XpooTorqIiKTp0LmJvb2tpbmdNb2RlPT09InBheS1hdC1ob3RlbCI/cj4xP2EoYEJvb2sgJHtyfSByb29tc2AsYOmihOiuoiAke3J9IOmXtGApOmEoIkJvb2sgdGhpcyByb29tIiwi6aKE6K6i6L+Z6Ze05oi/Iik6dC5kZW1vP2EoIlJlcXVlc3QgYm9va2luZyIsIuaPkOS6pOmihOiuoiIpOnI+MT9hKGBIb2xkICR7cn0gcm9vbXNgLGDkv53nlZkgJHtyfSDpl7RgKTphKCJIb2xkIHRoaXMgcm9vbSIsIuS/neeVmei/memXtOaIvyIpLHA9QWU/LmFycml2aW5nQXQ/PyIiO3JldHVybmAKICA8ZGl2IGNsYXNzPSJmb3JtIiBpZD0iZ3Vlc3QiJHtlPyIiOiIgaGlkZGVuIn0+CiAgICA8aDMgY2xhc3M9ImZvcm0taCI+JHthKCJXaG8gaXMgc3RheWluZyIsIuWFpeS9j+S6uuS/oeaBryIpfTwvaDM+CiAgICA8bGFiZWw+JHthKCJGdWxsIG5hbWUiLCLlp5PlkI0iKX08aW5wdXQgaWQ9ImduYW1lIiB0eXBlPSJ0ZXh0IiBhdXRvY29tcGxldGU9Im9mZiIgcGxhY2Vob2xkZXI9IiR7YSgiQXMgaXQgc2hvdWxkIGFwcGVhciBvbiB0aGUgYm9va2luZyIsIuS4juivgeS7tuS4gOiHtCIpfSIgdmFsdWU9IiR7bChBZT8ubmFtZT8/IiIpfSI+PC9sYWJlbD4KICAgIDxkaXYgY2xhc3M9IiR7dC5waG9uZVJlcXVpcmVkPyJ0d28iOiJvbmUifSI+CiAgICAgIDxsYWJlbD4ke2EoIkVtYWlsIiwi6YKu566xIil9PGlucHV0IGlkPSJnbWFpbCIgdHlwZT0iZW1haWwiIGF1dG9jb21wbGV0ZT0ib2ZmIiBwbGFjZWhvbGRlcj0iJHthKCJGb3IgdGhlIGNvbmZpcm1hdGlvbiIsIuaOpeaUtuehruiupOS/oeaBryIpfSIgdmFsdWU9IiR7bChBZT8uZW1haWw/PyIiKX0iPjwvbGFiZWw+JHt0LnBob25lUmVxdWlyZWQ/YAogICAgICA8bGFiZWw+JHthKCJQaG9uZSIsIuaJi+acuuWPtyIpfTxpbnB1dCBpZD0iZ3Bob25lIiB0eXBlPSJ0ZWwiIGF1dG9jb21wbGV0ZT0ib2ZmIiBwbGFjZWhvbGRlcj0iJHthKCJGb3IgdGhlIGhvdGVsIHRvIHJlYWNoIHlvdSIsIuaWueS+v+mFkuW6l+iBlOezu+S9oCIpfSIgdmFsdWU9IiR7bChBZT8ucGhvbmU/PyIiKX0iPjwvbGFiZWw+YDoiIn0KICAgIDwvZGl2PgogICAgPGRldGFpbHMgY2xhc3M9ImFza3MiJHtuLmxlbmd0aHx8QWU/Lm5vdGVzfHxwPyIgb3BlbiI6IiJ9PgogICAgICA8c3VtbWFyeT4ke2EoIlJlcXVlc3RzIGZvciB0aGUgaG90ZWwiLCLnu5nphZLlupfnmoTpnIDmsYIiKX0gPHNtYWxsPiR7YSgib3B0aW9uYWwiLCLpgInloasiKX08L3NtYWxsPjwvc3VtbWFyeT4KICAgICAgPGRpdiBjbGFzcz0iYXNrcy1ib2R5Ij4KICAgICAgICAke1RTLm1hcChtPT5gPGRpdiBjbGFzcz0iYXNrLWdyb3VwIiByb2xlPSJncm91cCIgYXJpYS1sYWJlbD0iJHthKG0uZW4sbS56aCl9Ij4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJ3bCI+JHthKG0uZW4sbS56aCl9PC9zcGFuPgogICAgICAgICAgPGRpdiBjbGFzcz0iY2hpcHMiPiR7bS5pZHMubWFwKHk9PmA8YnV0dG9uIGNsYXNzPSJjaGlwIGFzayIgdHlwZT0iYnV0dG9uIiBkYXRhLWFzaz0iJHtsKHkpfSIgYXJpYS1wcmVzc2VkPSIke24uaW5jbHVkZXMoeSk/InRydWUiOiJmYWxzZSJ9Ij4ke2woRXMoeSkpfTwvYnV0dG9uPmApLmpvaW4oIiIpfTwvZGl2PgogICAgICAgIDwvZGl2PmApLmpvaW4oIiIpfQogICAgICAgIDxkaXYgY2xhc3M9ImFzay1ncm91cCIgcm9sZT0iZ3JvdXAiIGFyaWEtbGFiZWw9IiR7YSgiQXJyaXZpbmcgYXJvdW5kIiwi6aKE6K6h5Yiw5bqXIil9Ij4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJ3bCI+JHthKCJBcnJpdmluZyBhcm91bmQiLCLpooTorqHliLDlupciKX08L3NwYW4+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjaGlwcyI+JHtBUy5tYXAobT0+YDxidXR0b24gY2xhc3M9ImNoaXAgYXNrIiB0eXBlPSJidXR0b24iIGRhdGEtYXJyaXZlPSIke219IiBhcmlhLXByZXNzZWQ9IiR7cD09PW0/InRydWUiOiJmYWxzZSJ9Ij4ke209PT0iMjM6MzAiP2EoIkFmdGVyIDIyOjAwIiwiMjI6MDAg5Lul5ZCOIik6bX08L2J1dHRvbj5gKS5qb2luKCIiKX08L2Rpdj4KICAgICAgICAgIDxpbnB1dCBpZD0iZ3RpbWUiIHR5cGU9ImhpZGRlbiIgdmFsdWU9IiR7bChwKX0iPgogICAgICAgIDwvZGl2PgogICAgICAgIDxsYWJlbD4ke2EoIkFueXRoaW5nIGVsc2UiLCLlhbbku5bpnIDmsYIiKX08aW5wdXQgaWQ9Imdub3RlIiB0eXBlPSJ0ZXh0IiBhdXRvY29tcGxldGU9Im9mZiIgcGxhY2Vob2xkZXI9IiR7YSgiSW4geW91ciBvd24gd29yZHMiLCLnlKjkvaDoh6rlt7HnmoTor53lhpkiKX0iIHZhbHVlPSIke2woQWU/Lm5vdGVzPz8iIil9Ij48L2xhYmVsPgogICAgICAgIDxkaXYgY2xhc3M9Im5vdGUiPiR7bChhKGBUaGVzZSBnbyB0byB0aGUgZGVzayBhcyByZXF1ZXN0cy4gJHt0Lm5hbWV9IG1lZXRzIHdoYXQgaXQgY2FuIG9uIHRoZSBkYXk7IG5vbmUgb2YgaXQgaXMgaGVsZC5gLGDov5nkupvkvJrkvZzkuLrpnIDmsYLovaznu5nliY3lj7DvvIwke2RlKHQubmFtZSl95b2T5aSp5bC96YeP5ruh6Laz77yM5L2G5LiN5L2c5L+d6K+B44CCYCkpfTwvZGl2PgogICAgICAgICR7bmU/YDxsYWJlbCBjbGFzcz0icmVtZW1iZXIiPjxpbnB1dCBpZD0iZ3JlbWVtYmVyIiB0eXBlPSJjaGVja2JveCIke0FlPy5yZW1lbWJlcj8iIGNoZWNrZWQiOiIifT4gJHtsKG5lLnByb2dyYW1tZT9hKGBSZW1lbWJlciB0aGUgYmVkLCBmbG9vciBhbmQgcm9vbSByZXF1ZXN0cyBvbiBteSAke25lLnByb2dyYW1tZX0gZm9yIG5leHQgdGltZWAsYOaKiuW6iuWei+OAgealvOWxguWSjOaIv+mXtOmcgOaxguiusOWcqOaIkeeahCR7bmUucHJvZ3JhbW1lfei0puaIt+mHjO+8jOS4i+asoeiHquWKqOW4puS4imApOmEoIlJlbWVtYmVyIHRoZSBiZWQsIGZsb29yIGFuZCByb29tIHJlcXVlc3RzIG9uIG15IG1lbWJlcnNoaXAgZm9yIG5leHQgdGltZSIsIuaKiuW6iuWei+OAgealvOWxguWSjOaIv+mXtOmcgOaxguiusOWcqOaIkeeahOS8muWRmOi0puaIt+mHjO+8jOS4i+asoeiHquWKqOW4puS4iiIpKX08L2xhYmVsPmA6IiJ9CiAgICAgIDwvZGl2PgogICAgPC9kZXRhaWxzPgogICAgPGJ1dHRvbiBjbGFzcz0iZ28gYmlnIGJsb2NrIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJib29rIj4ke2h9JHtvP2A8c3BhbiBjbGFzcz0icHJpY2UtaW4iPiR7bChvKX08L3NwYW4+YDoiIn08L2J1dHRvbj4KICAgIDxkaXYgY2xhc3M9InRydXN0Ij4ke0kubG9ja308c3Bhbj4ke2woaT90LnNhbmRib3g/YSgiTmV4dCwgYSBwYXltZW50IHBhZ2UgaW4gdGVzdCBtb2RlOiBubyByZWFsIG1vbmV5IG1vdmVzLiBDYXJkIGRldGFpbHMgYXJlIHR5cGVkIG9ubHkgdGhlcmUsIGFuZCBub3RoaW5nIGlzIGJvb2tlZCB1bnRpbCBpdCBpcyBwYWlkLiIsIuS4i+S4gOatpeaYr+a1i+ivleaooeW8j+eahOS7mOasvumhte+8jOS4jeS8muecn+WunuaJo+asvuOAguWNoeWPt+WPquWcqOS7mOasvumhteWhq+WGme+8jOS7mOasvuaIkOWKn+WJjeS4jeS8mumihOiuouOAgiIpOmEoYE5leHQsIGEgc2VjdXJlIHBheW1lbnQgcGFnZTogY2FyZCBkZXRhaWxzIGFyZSB0eXBlZCBvbmx5IHRoZXJlLiBOb3RoaW5nIGlzIGJvb2tlZCB3aXRoICR7dC5uYW1lfSB1bnRpbCBpdCBpcyBwYWlkLCBhbmQgaWYgaXQgY2Fubm90IGJlLCBhbGwgb2YgaXQgZ29lcyBiYWNrLmAsYOS4i+S4gOatpeaYr+WuieWFqOS7mOasvumhte+8jOWNoeWPt+WPquWcqOmCo+mHjOWhq+WGmeOAguS7mOasvuaIkOWKn+WJjeS4jeS8muWcqCR7ZGUodC5uYW1lKX3pooTorqLvvJvorqLkuI3miJDkvJrlhajpop3pgIDlm57jgIJgKTp0LnNhbmRib3g/YSgiQSB0ZXN0IGJvb2tpbmc6IG5vdGhpbmcgaXMgaGVsZCBhbmQgbm90aGluZyBpcyBwYWlkLiIsIua1i+ivlemihOiuou+8muS4jeS/neeVmeaIv+mXtO+8jOS5n+S4jeS7mOasvuOAgiIpOnQuYm9va2luZ01vZGU9PT0icGF5LWF0LWhvdGVsIj9hKGBObyBjYXJkIGlzIHRha2VuIGFuZCBub3RoaW5nIGlzIGNoYXJnZWQuIEEgcmVzZXJ2YXRpb24gd2l0aCAke3QubmFtZX0sIHBhaWQgYXQgdGhlIGhvdGVsLmAsYOS4jeeUqOe7keWNoe+8jOS5n+S4jeaJo+asvuOAgui/meaYr+WcqCR7ZGUodC5uYW1lKX3nmoTpooTorqLvvIzliLDlupfku5jmrL7jgIJgKTp0LmRlbW8/YShgTm8gY2FyZCBpcyB0YWtlbiBhbmQgbm90aGluZyBpcyBjaGFyZ2VkLiBUaGlzIGlzIGEgZGVtb25zdHJhdGlvbjogJHt0Lm5hbWV9IGRvZXMgbm90IHJlY2VpdmUgaXQgYW5kIG5vIHJvb20gaXMgaGVsZC5gLGDkuI3nlKjnu5HljaHvvIzkuZ/kuI3miaPmrL7jgILov5nmmK/mvJTnpLrvvIwke2RlKHQubmFtZSl95LiN5Lya5pS25Yiw77yM5Lmf5LiN5L+d55WZ5oi/6Ze044CCYCk6YSgiTm8gY2FyZCBpcyB0YWtlbiBhbmQgbm90aGluZyBpcyBjaGFyZ2VkLiBZb3UgcHJlc2VudCBhIGNhcmQgYXQgY2hlY2staW4uIiwi5LiN55So57uR5Y2h77yM5Lmf5LiN5omj5qy+44CC5YWl5L2P5pe25Zyo5YmN5Y+w5Ye656S66ZO26KGM5Y2h5Y2z5Y+v44CCIikpfTwvc3Bhbj48L2Rpdj4KICA8L2Rpdj5gfSxkcz1lPT5OPT09ImVuIj9lLmpvaW4oIiBhbmQgIik6bm4oKT9lLmpvaW4oIuOAgSIpOm5ldyBJbnRsLkxpc3RGb3JtYXQoTmVbTl0se3R5cGU6ImNvbmp1bmN0aW9uIn0pLmZvcm1hdChlKSxQbj1lPT5lLmxlbmd0aD4xP2Ake2Uuc2xpY2UoMCwtMSkuam9pbihhKCIsICIsIuOAgSIpKX0ke2EoIiBhbmQgIiwi5ZKMIil9JHtlLmF0KC0xKX1gOmVbMF0/PyIiLHpTPWU9PltgPGRpdiBjbGFzcz0iZXJyIj4ke2woTj09PSJlbiI/YFRoZSBib29raW5nIG5lZWRzICR7UG4oZS5taXNzaW5nPz9bXSl8fCJhIG5hbWUgYW5kIGFuIGVtYWlsIn0uYDphKCJUaGUgYm9va2luZyBuZWVkcyBhIG5hbWUgYW5kIGFuIGVtYWlsLiIsIumihOiuoumcgOimgeWhq+WGmeWnk+WQjeWSjOmCrueuseOAgiIpKX08L2Rpdj5gLFVhKCEwKV0uam9pbigiIiksQ1M9ZT0+e2NvbnN0IHQ9ZS5tZW1iZXI/P3t9O3JldHVybltgPGRpdiBjbGFzcz0iY29uZiI+CiAgICAgICA8ZGl2IGNsYXNzPSJub3RlIj4ke2wodC5wcm9ncmFtbWUpfTwvZGl2PgogICAgICAgJHt0Lm5hbWU/YDxkaXYgY2xhc3M9IndoZXJlIj4ke2wodC5uYW1lKX08L2Rpdj5gOmA8ZGl2IGNsYXNzPSJ3aGVyZSI+JHthKCJTaWduZWQgaW4iLCLlt7LnmbvlvZUiKX08L2Rpdj5gfQogICAgICAgPGRpdiBjbGFzcz0iY29kZSIgc3R5bGU9ImZvbnQtc2l6ZToyMHB4Ij4ke2wodC50aWVyPy5uYW1lKX08L2Rpdj4KICAgICAgICR7dHlwZW9mIHQucG9pbnRzPT0ibnVtYmVyIj9gPGRpdiBjbGFzcz0id2hlbiI+JHtsKGEoYCR7dC5wb2ludHMudG9Mb2NhbGVTdHJpbmcoTmVbTl0pfSBwb2ludHNgLGAke3QucG9pbnRzLnRvTG9jYWxlU3RyaW5nKE5lW05dKX0g56ev5YiGYCkpfTwvZGl2PmA6IiJ9CiAgICAgPC9kaXY+YCxgPGRpdiBjbGFzcz0idW5wYWlkIj48Yj4ke2woYShgJHtNYXRoLnJvdW5kKCh0LnRpZXI/LmRpc2NvdW50Pz8wKSoxMDApfSUgb2ZmYCxg5LyY5oOgICR7TWF0aC5yb3VuZCgodC50aWVyPy5kaXNjb3VudD8/MCkqMTAwKX0lYCkpfTwvYj48c3Bhbj4ke2woYShgUm9vbSByYXRlcyBhbmQgdHJpcCB0b3RhbHMgbm93IHNob3cgdGhlICR7dC50aWVyPy5uYW1lfSBtZW1iZXIgcmF0ZS4gTm90aGluZyBpcyBjaGFyZ2VkIGJ5IHNpZ25pbmcgaW4uYCxg5oi/5Lu35ZKM6KGM56iL5oC75Lu35bey5oyJJHt0LnRpZXI/Lm5hbWV95Lya5ZGY5Lu35pi+56S644CC55m75b2V5LiN5Lya5omj5qy+44CCYCkpfTwvc3Bhbj48L2Rpdj5gLCh0LnByZWZlcmVuY2VzPz9bXSkubGVuZ3RoP2A8ZGl2IGNsYXNzPSJhc2tlZCI+CiAgICAgICAgICAgPGI+JHthKCJTYXZlZCBmb3IgeW91ciBuZXh0IHN0YXlzIiwi5bey5Li65LiL5qyh5YWl5L2P5L+d5a2YIil9PC9iPgogICAgICAgICAgIDxzcGFuPiR7bChhKGAke3QucHJlZmVyZW5jZXMubWFwKEVzKS5qb2luKCIsICIpfSAtIHRpY2tlZCBvbiB0aGUgYm9va2luZyBmb3JtLCBhbmQgYXNrZWQgZm9yIG9ubHkgd2hlbiB5b3UgYm9vayB3aXRoIHRoZW0uYCxgJHt0LnByZWZlcmVuY2VzLm1hcChFcykuam9pbigi44CBIil977yM6aKE6K6i5pe25Lya6Ieq5Yqo5Yu+6YCJ77yM5Y+q5Zyo5L2g55So5a6D5Lus6aKE6K6i5pe25omN5o+Q5Ye644CCYCkpfTwvc3Bhbj4KICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJsaW5reSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iZm9yZ2V0LXByZWZzIj4ke2EoIkZvcmdldCB0aGVtIiwi5riF6Zmk6L+Z5Lqb5YGP5aW9Iil9PC9idXR0b24+CiAgICAgICAgIDwvZGl2PmA6IiIsYDxkaXYgY2xhc3M9ImZvb3QiPgogICAgICAgPGJ1dHRvbiBjbGFzcz0iZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImhvbWUiPiR7YSgiRmluZCBhIGhvdGVsIiwi5om+6YWS5bqXIil9PC9idXR0b24+CiAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0ic2lnbi1vdXQiPiR7YSgiU2lnbiBvdXQiLCLpgIDlh7rnmbvlvZUiKX08L2J1dHRvbj4KICAgICA8L2Rpdj5gXS5qb2luKCIiKX0sTlM9KCk9PltgPGRpdiBjbGFzcz0iZXJyIj4ke2EoIk5vIG1lbWJlcnNoaXAgbWF0Y2hlcyB0aGF0IG51bWJlciBhbmQgc3VybmFtZS4gQ2hlY2sgYm90aCBhcyB0aGV5IGFyZSBwcmludGVkIOKAlCBub3RoaW5nIGVsc2UgaXMgbmVlZGVkLCB0aGlzIGNvbm5lY3RvciBuZXZlciBhc2tzIGZvciBhIHBhc3N3b3JkLiIsIuS8muWRmOWPt+WSjOWnk+awj+WvueS4jeS4iuOAguivt+aMieWNoeS4iuWNsOeahOaguOWvueS4pOmhueWNs+WPr++8jOi/memHjOS7juS4jeimgeaxguWvhueggeOAgiIpfTwvZGl2PmAsT3MoITApXS5qb2luKCIiKSxPcz0oZT0hMSk9PmAKICA8ZGl2IGNsYXNzPSJmb3JtIiBpZD0ic2lnbmluIiR7ZT8iIjoiIGhpZGRlbiJ9PgogICAgPGRpdiBjbGFzcz0idHdvIj4KICAgICAgPGxhYmVsPiR7YSgiTWVtYmVyc2hpcCBudW1iZXIiLCLkvJrlkZjlj7ciKX08aW5wdXQgaWQ9Im1udW0iIHR5cGU9InRleHQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBwbGFjZWhvbGRlcj0iJHthKCJBcyBpdCBpcyBwcmludGVkIiwi5oyJ5Y2h5LiK5Y2w55qE5aGr5YaZIil9Ij48L2xhYmVsPgogICAgICA8bGFiZWw+JHthKCJTdXJuYW1lIiwi5aeT5rCPIil9PGlucHV0IGlkPSJtc3VyIiB0eXBlPSJ0ZXh0IiBhdXRvY29tcGxldGU9Im9mZiIgcGxhY2Vob2xkZXI9IiR7YSgiVGhlIHN1cm5hbWUgb24gaXQiLCLljaHkuIrnmoTlp5PmsI8iKX0iPjwvbGFiZWw+CiAgICA8L2Rpdj4KICAgIDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJzaWduLWluIj4ke2EoIlNpZ24gaW4iLCLnmbvlvZUiKX08L2J1dHRvbj4KICAgIDxkaXYgY2xhc3M9Im5vdGUiPiR7YSgiTm8gcGFzc3dvcmQgaXMgYXNrZWQgZm9yIGFuZCBub25lIGlzIHN0b3JlZC4gU2lnbmluZyBpbiBzaG93cyB0aGUgbWVtYmVyIHJhdGU7IG5vdGhpbmcgaXMgY2hhcmdlZC4iLCLkuI3pnIDopoHlr4bnoIHvvIzkuZ/kuI3kvJrkv53lrZjku7vkvZXlr4bnoIHjgILnmbvlvZXlkI7mmL7npLrkvJrlkZjku7fvvIzkuI3kvJrmiaPmrL7jgIIiKX08L2Rpdj4KICA8L2Rpdj5gLFBTPWU9Pntjb25zdCB0PWUucmVxdWVzdGVkPz9bXTtyZXR1cm4gdC5sZW5ndGg/YDxkaXYgY2xhc3M9ImFza2VkJHtlLmFjY2Vzc2liaWxpdHk/IiBmbGFnIjoiIn0iPgogICAgPGI+JHthKCJSZXF1ZXN0ZWQsIG5vdCBoZWxkIiwi5bey5o+Q5Ye655qE6ZyA5rGC77yI5LiN5L2c5L+d6K+B77yJIil9PC9iPgogICAgJHt0Lm1hcChuPT5gPHNwYW4+JHtsKG4pfTwvc3Bhbj5gKS5qb2luKCIiKX0KICA8L2Rpdj5gOiIifSxJZD1lPT5lLmhvbGRVbnRpbExvY2FsP2EoYCR7UnQoZS5ob2xkVW50aWxMb2NhbCxlLmhvbGRVbnRpbExvY2FsSXNvKX0gKGhvdGVsIHRpbWUpYCxgJHtSdChlLmhvbGRVbnRpbExvY2FsLGUuaG9sZFVudGlsTG9jYWxJc28pfe+8iOmFkuW6l+W9k+WcsOaXtumXtO+8iWApOmAke1N0cmluZyhlLmhvbGRVbnRpbD8/IiIpLnNsaWNlKDAsMTYpLnJlcGxhY2UoIlQiLCIgIil9IFVUQ2AseFM9KGUsdCk9Pntjb25zdCBuPXQucGF5bWVudD8/e30se25hbWU6byxzYW5kYm94OnN9PVVlKHQuc3VwcGxpZXIpLHI9bi5wYXlCeUxvY2FsP1J0KG4ucGF5QnlMb2NhbCxuLnBheUJ5TG9jYWxJc28pOiIiO3JldHVybltgPGRpdiBjbGFzcz0iYm9va2VkIHBheSIgcm9sZT0ic3RhdHVzIj4KICAgICAgIDxkaXYgY2xhc3M9ImJvb2tlZC1tYXJrIHBheSI+JHtJLmxvY2t9PC9kaXY+CiAgICAgICA8aDIgY2xhc3M9ImJvb2tlZC10Ij4ke2EoIlBheSB0byBmaW5pc2ggYm9va2luZyIsIuS7mOasvuWQjuWujOaIkOmihOiuoiIpfTwvaDI+CiAgICAgICA8cCBjbGFzcz0iYm9va2VkLXMiPiR7bChhKGBOb3RoaW5nIGlzIGJvb2tlZCB5ZXQuIE9uY2UgdGhlIHBheW1lbnQgZ29lcyB0aHJvdWdoLCB0aGUgcm9vbSBpcyBib29rZWQgd2l0aCAke299LmAsYOeOsOWcqOi/mOayoeaciemihOiuouOAguS7mOasvuaIkOWKn+WQju+8jOaIv+mXtOaJjeS8muWcqCR7ZGUobyl96K6i5aW944CCYCkpfTwvcD4KICAgICA8L2Rpdj5gLGA8ZGl2IGNsYXNzPSJwYXlib3giPgogICAgICAgPGRpdiBjbGFzcz0id2wiPiR7YSgiVG8gcGF5IG5vdyIsIumcgOS7mOasviIpfTwvZGl2PgogICAgICAgPGRpdiBjbGFzcz0icGF5LWFtb3VudCI+JHtsKG4uYW1vdW50Pz8iIil9PC9kaXY+CiAgICAgICAke24ucGF5Qnk/YDxkaXYgY2xhc3M9InBheS1ieSI+JHtJLmNsb2NrfTxzcGFuPiR7bChyP2EoYFBheSBieSAke3J9YCxg6K+35ZyoICR7cn0g5YmN5LuY5qy+YCk6YSgiUGF5IHdpdGhpbiIsIuWJqeS9meaXtumXtCIpKX08YnI+PGIgY2xhc3M9ImNvdW50ZG93biBuYiIgZGF0YS11bnRpbD0iJHtsKG4ucGF5QnkpfSI+JHtsKHViKFN0cmluZyhuLnBheUJ5KSkpfTwvYj48L3NwYW4+PC9kaXY+YDoiIn0KICAgICAgICR7bi51cmw/YDxidXR0b24gY2xhc3M9ImdvIGJpZyBibG9jayIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0icGF5IiBkYXRhLXVybD0iJHtsKG4udXJsKX0iIGRhdGEtY29kZT0iJHtsKHQuY29uZmlybWF0aW9uQ29kZSl9IiBkYXRhLXVudGlsPSIke2wobi5wYXlCeT8/IiIpfSI+JHtJLmxvY2t9JHtsKGEoYFBheSAke24uYW1vdW50Pz8iIn0gb24gdGhlIHNlY3VyZSBwYWdlYCxg5Y675a6J5YWo6aG16Z2i5LuY5qy+ICR7bi5hbW91bnQ/PyIifWApKX08L2J1dHRvbj5gOiIifQogICAgICAgPGJ1dHRvbiBjbGFzcz0ibGlua3kgcGF5LWNoZWNrIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJwYXktY2hlY2siIGRhdGEtY29kZT0iJHtsKHQuY29uZmlybWF0aW9uQ29kZSl9Ij4ke2EoIlBhaWQgYWxyZWFkeT8gQ2hlY2sgbm93Iiwi5bey57uP5LuY6L+H5LqG77yf546w5Zyo5Yi35pawIil9PC9idXR0b24+CiAgICAgICA8ZGl2IGNsYXNzPSJ0cnVzdCI+JHtJLmxvY2t9PHNwYW4+JHtsKHM/YSgiVGVzdCBtb2RlOiBubyByZWFsIG1vbmV5IG1vdmVzIC0gdXNlIGEgdGVzdCBjYXJkIG9uIHRoZSBwYXltZW50IHBhZ2UuIENhcmQgZGV0YWlscyBhcmUgdHlwZWQgb25seSB0aGVyZSwgbmV2ZXIgaGVyZS4iLCLmtYvor5XmqKHlvI/vvJrkuI3kvJrnnJ/lrp7miaPmrL7vvIzor7flnKjku5jmrL7pobXnlKjmtYvor5XljaHjgILljaHlj7flj6rlnKjku5jmrL7pobXloavlhpnvvIzov5nph4zkuI3mlLbpm4bjgIIiKTphKCJDYXJkIGRldGFpbHMgYXJlIHR5cGVkIG9ubHkgb24gdGhlIHBheW1lbnQgcGFnZSwgbmV2ZXIgaGVyZS4gSWYgdGhlIGhvdGVsIGRvZXMgbm90IGNvbmZpcm0sIGFsbCBvZiBpdCBnb2VzIGJhY2suIiwi5Y2h5Y+35Y+q5Zyo5LuY5qy+6aG15aGr5YaZ77yM6L+Z6YeM5LiN5pS26ZuG44CC5aaC5p6c6YWS5bqX5rKh5pyJ56Gu6K6k77yM5qy+6aG55Lya5YWo6aKd6YCA5Zue44CCIikpfTwvc3Bhbj48L2Rpdj4KICAgICA8L2Rpdj5gLGA8ZGl2IGNsYXNzPSJwYXktZm9yIj4KICAgICAgIDxkaXYgY2xhc3M9IndoZXJlIj4ke010KHQuaG90ZWxOYW1lKX08L2Rpdj4KICAgICAgICR7Y2EodC5zdGF5LHQuaG91cmx5KX0KICAgICAgIDxkaXYgY2xhc3M9InJvd3MiPiR7KHQucXVvdGU/LmxpbmVzPz9bXSkubWFwKHBiKS5qb2luKCIiKX08L2Rpdj4KICAgICAgIDxkaXYgY2xhc3M9Im5vdGUiPiR7bChhKGBSZWZlcmVuY2UgJHt0LmNvbmZpcm1hdGlvbkNvZGV9IMK3IGZvciAke1t0Lmd1ZXN0Py5uYW1lLHQuZ3Vlc3Q/LmVtYWlsXS5maWx0ZXIoQm9vbGVhbikuam9pbigiLCAiKX1gLGDnvJblj7cgJHt0LmNvbmZpcm1hdGlvbkNvZGV9IMK3ICR7W3QuZ3Vlc3Q/Lm5hbWUsdC5ndWVzdD8uZW1haWxdLmZpbHRlcihCb29sZWFuKS5qb2luKCLvvIwiKX1gKSl9PC9kaXY+CiAgICAgPC9kaXY+YF0uam9pbigiIil9LElTPWU9PltlPy5uYW1lLGU/LmVtYWlsXS5maWx0ZXIoQm9vbGVhbikubWFwKHQ9PmA8c3BhbiBjbGFzcz0ibmIiPiR7bCh0KX08L3NwYW4+YCkuam9pbignPHNwYW4gYXJpYS1oaWRkZW49InRydWUiPiDCtyA8L3NwYW4+JyksdWI9ZT0+e2NvbnN0IHQ9TWF0aC5tYXgoMCxEYXRlLnBhcnNlKGUpLURhdGUubm93KCkpO2lmKCF0KXJldHVybiBhKCJ0aW1lIGlzIHVwIiwi5bey6LaF5pe2Iik7Y29uc3Qgbj1jPT5TdHJpbmcoYykucGFkU3RhcnQoMiwiMCIpLG89TWF0aC5mbG9vcih0LzM2ZTUpLHM9TWF0aC5mbG9vcih0JTM2ZTUvNmU0KSxyPU1hdGguZmxvb3IodCU2ZTQvMWUzKSxpPW8/YCR7b306JHtuKHMpfToke24ocil9YDpgJHtzfToke24ocil9YDtyZXR1cm4gYShgJHtpfSBsZWZ0YCxg6L+Y5YmpICR7aX1gKX07c2V0SW50ZXJ2YWwoKCk9Pntmb3IoY29uc3QgZSBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuY291bnRkb3duW2RhdGEtdW50aWxdIikpZS50ZXh0Q29udGVudD11YihlLmRhdGFzZXQudW50aWw/PyIiKX0sMWUzKTtsZXQgemU9bnVsbDtjb25zdCBWYT04ZTMsQ3U9KCk9Pnt6ZT8udGltZXImJmNsZWFyVGltZW91dCh6ZS50aW1lciksemU9bnVsbH0sUlM9ZT0+dD0+e2NvbnN0IG49KHQ/LmJvb2tpbmdzPz9bXSkuZmluZChvPT5TdHJpbmcoby5jb25maXJtYXRpb25Db2RlKS50b1VwcGVyQ2FzZSgpPT09ZS50b1VwcGVyQ2FzZSgpKTtyZXR1cm4hbnx8IVsiYXdhaXRpbmctcGF5bWVudCIsInJlcXVlc3RlZCIsImNvbmZpcm1lZCJdLmluY2x1ZGVzKFN0cmluZyhuLnN0YXR1cykpP3Q6ey4uLnQsdmlldzoiYm9va2luZyIsYm9va2luZzpuLGJvb2tpbmdzOnZvaWQgMCx0b3RhbDpuLnF1b3RlPy50b3RhbH19LGRiPWU9PntDdSgpLE0oImxpc3RCb29raW5ncyIsY3QoZSkse3B1c2g6ITEsZm9sZDpSUyhlKX0pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBjaGVjayB0aGUgcGF5bWVudCBqdXN0IG5vdy4iLCLmmoLml7bmsqHog73mn6XliLDku5jmrL7nirbmgIHjgIIiKSkpfSxSZD1lPT4hIWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYCNjb250ZW50IFtkYXRhLWFjdD0icGF5Il1bZGF0YS1jb2RlPSIke0NTUy5lc2NhcGUoZSl9Il1gKSxOdT1lPT57Y29uc3QgdD1UZygibGlzdEJvb2tpbmdzIik7aWYoIXR8fCF6ZXx8emUuY29kZSE9PWUpcmV0dXJuO2lmKCFSZChlKXx8RGF0ZS5ub3coKT56ZS51bnRpbCs2ZTQpe0N1KCk7cmV0dXJufWNvbnN0IG49bz0+e3plPy5jb2RlPT09ZSYmKHplLnRpbWVyPXNldFRpbWVvdXQoKCk9Pk51KGUpLG8pKX07eGUuY2FsbFNlcnZlclRvb2woe25hbWU6dCxhcmd1bWVudHM6U2coY3QoZSkpfSkudGhlbihvPT57Y29uc3Qgcz0obz8uc3RydWN0dXJlZENvbnRlbnQ/LmJvb2tpbmdzPz9bXSkuZmluZChyPT5TdHJpbmcoci5jb25maXJtYXRpb25Db2RlKS50b1VwcGVyQ2FzZSgpPT09ZS50b1VwcGVyQ2FzZSgpKTtzJiZzLnN0YXR1cyE9PSJhd2FpdGluZy1wYXltZW50IiYmUmQoZSk/ZGIoZSk6bihWYSl9KS5jYXRjaCgoKT0+bihWYSoyKSl9LGhiPSgpPT57emUmJmRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSE9PSJoaWRkZW4iJiYoemUudGltZXImJmNsZWFyVGltZW91dCh6ZS50aW1lciksTnUoemUuY29kZSkpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIixoYik7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImZvY3VzIixoYik7Y29uc3QgRWQ9ZT0+ZS5sZW5ndGg/YDxzZWN0aW9uIGNsYXNzPSJmYWlsZWQiIGFyaWEtbGFiZWw9IiR7bChhKCJOb3QgYm9va2VkIiwi5pyq6K6i5oiQIikpfSI+CiAgICAgICAgIDxoMyBjbGFzcz0ic2VjIj4ke2woYShgTm90IGJvb2tlZCAoJHtlLmxlbmd0aH0pYCxg5pyq6K6i5oiQ77yIJHtlLmxlbmd0aH3vvIlgKSl9PC9oMz4KICAgICAgICAgJHtlLm1hcCgodCxuKT0+e2NvbnN0IG89QXJyYXkuaXNBcnJheSh0LmFsdGVybmF0aXZlcyk/dC5hbHRlcm5hdGl2ZXM6W107cmV0dXJuYDxkaXYgY2xhc3M9ImZhaWwiPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmYWlsLWgiPiR7SS5lcnJvcn08ZGl2PjxkaXYgY2xhc3M9IndoZXJlIj4ke010KFN0cmluZyh0LmhvdGVsTmFtZT8/IiIpKX08L2Rpdj4ke2NhKHQuc3RheSx0LmhvdXJseSl9PC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgIDxwIGNsYXNzPSJmYWlsLXdoeSI+JHtsKFJzKHQud2h5LHQuY29kZSx0LmFyZ3MpKX08L3A+CiAgICAgICAgICAgICAgICR7by5sZW5ndGg/YDxkaXYgY2xhc3M9ImZhaWwtYWx0cyI+PGRpdiBjbGFzcz0ibm90ZSI+JHtsKGEoIkJvb2thYmxlIGluc3RlYWQsIHRoZSBzYW1lIG5pZ2h0cyIsIuWQjOaXpeacn+i/mOWPr+S7peiuoiIpKX08L2Rpdj4ke28ubWFwKChzLHIpPT5gPGRpdiBjbGFzcz0iYWx0Ij48ZGl2IGNsYXNzPSJhbHQtdCI+PGI+JHtsKHMubmFtZSl9PC9iPjxzbWFsbD4ke2woW3Mucm9vbSxzLnRvdGFsP2EoYCR7cy50b3RhbH0gZm9yIHRoZSBzdGF5YCxg5YWxICR7cy50b3RhbH1gKToiIl0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiDCtyAiKSl9PC9zbWFsbD48L2Rpdj48YnV0dG9uIGNsYXNzPSJnbyBzbSIgdHlwZT0iYnV0dG9uIiBkYXRhLXN3YXA9IiR7bn06JHtyfSI+JHtsKGEoIlRha2UgdGhpcyBpbnN0ZWFkIiwi5o2i5oiQ6L+Z5a62IikpfTwvYnV0dG9uPjwvZGl2PmApLmpvaW4oIiIpfTwvZGl2PmA6IiJ9CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhaWwtZm9vdCI+PGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQgc20iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InJldHJ5LXRyaXAiPiR7bChhKCJUcnkgYWdhaW4iLCLph43or5UiKSl9PC9idXR0b24+JHt0LmNpdHk/YDxidXR0b24gY2xhc3M9Imxpbmt5IiB0eXBlPSJidXR0b24iIGRhdGEtcmVzZWFyY2g9IiR7bn0iPiR7bChhKCJGaW5kIGFub3RoZXIgaG90ZWwiLCLmjaLkuIDlrrYiKSl9PC9idXR0b24+YDoiIn08L2Rpdj4KICAgICAgICAgICAgIDwvZGl2PmB9KS5qb2luKCIiKX0KICAgICAgIDwvc2VjdGlvbj5gOiIiLE9kPSgpPT57aWYoQWUpcmV0dXJuO2NvbnN0IGU9UD8/e30sdD1BcnJheS5pc0FycmF5KGUuYm9va2luZ3MpJiZlLmJvb2tpbmdzWzBdPy5ndWVzdHx8ZS5ib29raW5nPy5ndWVzdDshdD8ubmFtZXx8IXQ/LmVtYWlsfHwoQWU9e25hbWU6U3RyaW5nKHQubmFtZSksZW1haWw6U3RyaW5nKHQuZW1haWwpLC4uLnQucGhvbmU/e3Bob25lOlN0cmluZyh0LnBob25lKX06e30sbm90ZXM6IiIsYXJyaXZpbmdBdDoiIixyZXF1ZXN0czpbXSxyZW1lbWJlcjohMX0pfSxFUz1lPT57Y29uc3QgdD1BcnJheS5pc0FycmF5KGUuZmFpbGVkKT9lLmZhaWxlZDpbXTtpZighZS5ib29raW5nJiYhKEFycmF5LmlzQXJyYXkoZS5ib29raW5ncykmJmUuYm9va2luZ3MubGVuZ3RoKSYmdC5sZW5ndGgpcmV0dXJuW2A8ZGl2IGNsYXNzPSJib29rZWQgZW5kZWQiIHJvbGU9InN0YXR1cyI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImJvb2tlZC1tYXJrIj4ke0kuZXJyb3J9PC9kaXY+CiAgICAgICAgIDxoMiBjbGFzcz0iYm9va2VkLXQiPiR7bChhKCJOb3QgYm9va2VkIiwi5rKh6IO96aKE6K6iIikpfTwvaDI+CiAgICAgICAgIDxwIGNsYXNzPSJib29rZWQtcyI+JHtsKHQubGVuZ3RoPT09MT9hKCJUaGF0IHN0YXkgY291bGQgbm90IGJlIGJvb2tlZC4gTm90aGluZyB3YXMgY2hhcmdlZC4iLCLov5nkuIDmrrXmsqHog73pooTorqLvvIzmsqHmnInmiaPmrL7jgIIiKTphKGBOb25lIG9mIHRoZSAke3QubGVuZ3RofSBzdGF5cyBjb3VsZCBiZSBib29rZWQuIE5vdGhpbmcgd2FzIGNoYXJnZWQuYCxgJHt0Lmxlbmd0aH0g5q616YO95rKh6IO96aKE6K6i77yM5rKh5pyJ5omj5qy+44CCYCkpfTwvcD4KICAgICAgIDwvZGl2PmAsRWQodCldLmpvaW4oIiIpO2NvbnN0IG49QXJyYXkuaXNBcnJheShlLmJvb2tpbmdzKSYmZS5ib29raW5ncy5sZW5ndGg/ZS5ib29raW5nczpbZS5ib29raW5nPz97fV0sbz1uLmZpbmQoeD0+eD8uc3RhdHVzPT09ImF3YWl0aW5nLXBheW1lbnQiJiZ4Py5wYXltZW50KTtpZihvJiZuLmxlbmd0aD09PTEpcmV0dXJuIHhTKGUsbyk7Y29uc3Qgcz1uLmxlbmd0aD4xLHI9bi5maWx0ZXIoeD0+eD8ucGVuZGluZykubGVuZ3RoLHtuYW1lOmksYm9va2luZ01vZGU6YyxkZW1vOnUsc2FuZGJveDpkLC4uLmh9PVVlKG5bMF0/LnN1cHBsaWVyKSxwPXg9PnpfKHgpJiYoeD09PSJsaXN0RXh0cmFzIj9oLmV4dHJhczp4PT09ImNoYW5nZUJvb2tpbmciP2guY2hhbmdlczohMCksbT14PT5jPT09ImhvbGQiJiYhdSYmKHguaG9sZFVudGlsTG9jYWx8fHguaG9sZFVudGlsKT9gPGRpdiBjbGFzcz0icmVtaW5kIj4ke0kuY2xvY2t9PHNwYW4+JHtsKGEoYFRoZSByb29tIGlzIGhlbGQgZm9yIHlvdSB1bnRpbCAke0lkKHgpfS5gLGDmiL/pl7TkuLrkvaDkv53nlZnliLAgJHtJZCh4KX3jgIJgKSl9PC9zcGFuPjwvZGl2PmA6IiIseT0oeCxRZSx5dCk9PihsYT0hIXgucXVvdGU/LnRheGVzQW5kRmVlcyYmeC5xdW90ZS50YXhlc0FuZEZlZXMhPT0iSW5jbHVkZWQiLFt4LnBlbmRpbmc/YDxkaXYgY2xhc3M9ImNvbmYgdGlja2V0Ij4KICAgICAgICAgPGRpdiBjbGFzcz0ibm90ZSI+JHthKCJCZWluZyBjb25maXJtZWQiLCLnoa7orqTkuK0iKX08L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29kZSBwZW5kaW5nIj4ke2EoIkNvZGUgb25jZSBjb25maXJtZWQiLCLnoa7orqTlkI7nu5nlh7rnoa7orqTnoIEiKX08L2Rpdj5gOmA8ZGl2IGNsYXNzPSJjb25mIHRpY2tldCI+CiAgICAgICAgIDxkaXYgY2xhc3M9Im5vdGUiPiR7YSgiQ29uZmlybWF0aW9uIGNvZGUiLCLnoa7orqTnoIEiKX08L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29kZSI+JHtsKHguY29uZmlybWF0aW9uQ29kZSl9PC9kaXY+YCxgCiAgICAgICAgIDxkaXYgY2xhc3M9IndoZXJlIj4ke010KHguaG90ZWxOYW1lKX08L2Rpdj4KICAgICAgICAgJHtjYSh4LnN0YXkseC5ob3VybHkpfQogICAgICAgICA8ZGl2IGNsYXNzPSJ3aGVuIj4ke0lTKHguZ3Vlc3QpfTwvZGl2PgogICAgICAgPC9kaXY+YCxtKHgpLGM9PT0icGF5LWF0LWhvdGVsIiYmeC5zdGF0dXM9PT0icmVxdWVzdGVkIj9gPGRpdiBjbGFzcz0icmVtaW5kIj4ke0kuY2xvY2t9PHNwYW4+JHtsKGEoYFdhaXRpbmcgZm9yICR7aX0gdG8gY29uZmlybSB0aGlzIGJvb2tpbmcg4oCUIHRoYXQgdGFrZXMgdXAgdG8gZWlnaHQgbWludXRlcy4gTXkgYm9va2luZ3Mgc2hvd3Mgd2hlbiBpdCBoYXMuYCxg5q2j5Zyo562JJHtkZShpKX3noa7orqTov5nnrJTpooTorqLvvIzmnIDlpJrnuqblhavliIbpkp/jgILnoa7orqTlkI7lj6/lnKjigJzmiJHnmoTpooTorqLigJ3ph4znnIvliLDjgIJgKSl9PC9zcGFuPjwvZGl2PmA6IiIsYDxkaXYgY2xhc3M9InJvd3MiPiR7KHgucXVvdGU/LmxpbmVzPz9bXSkubWFwKHBiKS5qb2luKCIiKX08L2Rpdj5gLHgucXVvdGU/LnN1YnRvdGFsJiZ4LnF1b3RlPy50YXhlc0FuZEZlZXM/SGEoe3N1YnRvdGFsOngucXVvdGUuc3VidG90YWwsdGF4ZXNBbmRGZWVzOngucXVvdGUudGF4ZXNBbmRGZWVzLHRvdGFsOlFlLGxpbmVzOngucXVvdGUubGluZXM/P1tdfSxhKCJUb3RhbCIsIuaAu+S7tyIpKTpgPGRpdiBjbGFzcz0ibW9uZXktb3V0Ij48c3Bhbj4ke2EoIlRvdGFsIiwi5oC75Lu3Iil9PC9zcGFuPjxzcGFuPiR7bChRZSl9PC9zcGFuPjwvZGl2PmAsUFMoeXQpLHM/YDxkaXYgY2xhc3M9ImZvb3QiPgogICAgICAgICAgICAgJHtwKCJsaXN0RXh0cmFzIik/YDxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtYm9va2luZy1leHRyYXM9IiR7bCh4LmNvbmZpcm1hdGlvbkNvZGUpfSI+JHthKCJBZGQtb25zIiwi6ZmE5Yqg5pyN5YqhIil9PC9idXR0b24+YDoiIn0KICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtY2FuY2VsPSIke2woeC5jb25maXJtYXRpb25Db2RlKX0iPiR7bChhKGBDYW5jZWwgJHt4LmhvdGVsTmFtZX1gLGDlj5bmtogke3guaG90ZWxOYW1lfWApKX08L2J1dHRvbj4KICAgICAgICAgICA8L2Rpdj5gOiIiXS5qb2luKCIiKSksJD1jPT09InBheS1hdC1ob3RlbCImJm4uc29tZSh4PT54LnN0YXR1cz09PSJyZXF1ZXN0ZWQiKSxfPXM/IiI6blswXT8ucGF5bWVudD8uc3RhdHVzPT09InBhaWQiP1N0cmluZyhuWzBdLnBheW1lbnQuYW1vdW50Pz8iIik6IiIsQz0hcyYmblswXT8ucGF5bWVudD8uc3RhdHVzPT09InBhaWQiLFQ9Qz9uWzBdPy5zdGF0dXM9PT0iY29uZmlybWVkIj9kP2EoIlRlc3QgYm9va2luZyBwYWlkIGFuZCBib29rZWQiLCLmtYvor5XpooTorqLlt7Lku5jmrL7lubborqLlpb0iKTphKGBQYWlkIGFuZCBib29rZWQgd2l0aCAke2l9YCxg5bey5LuY5qy+77yMJHtkZShpKX3lt7Lnoa7orqRgKTphKGBQYWlkIOKAlCB3YWl0aW5nIGZvciAke2l9IHRvIGNvbmZpcm1gLGDlt7Lku5jmrL7vvIznrYnlvoUke2RlKGkpfeehruiupGApOmQ/YSgiVGVzdCBib29raW5nIG1hZGUiLCLmtYvor5XpooTorqLlt7Lmj5DkuqQiKTpjPT09InBheS1hdC1ob3RlbCI/JD9hKGBTZW50IHRvICR7aX1gLGDlt7Lmj5DkuqTnu5kke2RlKGkpfWApOmEoYEJvb2tlZCB3aXRoICR7aX1gLGDlt7LlnKgke2RlKGkpfemihOiuouaIkOWKn2ApOnU/YSgiRGVtbyBib29raW5nIG1hZGUiLCLmvJTnpLrpooTorqLlt7Lmj5DkuqQiKTphKHM/IlJvb21zIGhlbGQiOiJSb29tIGhlbGQiLCLmiL/pl7Tlt7Lkv53nlZkiKSxBPVN0cmluZyhuWzBdPy5zdGF0dXM/PyIiKSxSPSFzJiZbImNhbmNlbGxlZCIsImV4cGlyZWQiLCJmYWlsZWQiXS5pbmNsdWRlcyhBKSxyZT0hcyYmKEE9PT0idW5jb25maXJtZWQifHxBPT09InJlcXVlc3RlZCImJmM9PT0icGF5LWF0LWhvdGVsIiksWT0hIWUub3BlbmVkJiYhcyxHPVk/Uj9hKFpuW0FdPy5bMF0/PyJFbmRlZCIsWm5bQV0/LlsxXT8/IuW3sue7k+adnyIpOkM/VDpyZT9hKCJXYWl0aW5nIGZvciBjb25maXJtYXRpb24iLCLnrYnlvoXnoa7orqQiKTpBPT09InJlcXVlc3RlZCI/dT9hKCJEZW1vIGJvb2tpbmciLCLmvJTnpLrpooTorqIiKTphKCJSb29tIGhlbGQiLCLmiL/pl7Tlt7Lkv53nlZkiKTpkP2EoIlRlc3QgYm9va2luZyBjb25maXJtZWQiLCLmtYvor5XpooTorqLlt7Lnoa7orqQiKTphKCJCb29raW5nIGNvbmZpcm1lZCIsIumihOiuouW3suehruiupCIpOlQ7cmV0dXJuW2A8ZGl2IGNsYXNzPSJib29rZWQke1kmJlI/IiBlbmRlZCI6WSYmcmU/IiB3YWl0aW5nIjoiIn0iIHJvbGU9InN0YXR1cyI+CiAgICAgICA8ZGl2IGNsYXNzPSJib29rZWQtbWFyayI+JHtZJiZSP0kuZXJyb3I6WSYmcmU/SS5jbG9jazpJLmRvbmV9PC9kaXY+CiAgICAgICA8aDIgY2xhc3M9ImJvb2tlZC10Ij4ke2woRyl9PC9oMj4KICAgICAgIDxwIGNsYXNzPSJib29rZWQtcyI+JHtsKFkmJlI/YSgiVGhpcyBib29raW5nIG5vIGxvbmdlciBob2xkcyBhIHJvb20uIiwi6L+Z56yU6aKE6K6i5bey5LiN5YaN5Y2g55So5oi/6Ze044CCIik6dC5sZW5ndGh8fHMmJnI/YShgJHtuLmxlbmd0aC1yfSBvZiAke24ubGVuZ3RoK3QubGVuZ3RofSBzdGF5cyBib29rZWQsIG9uZSBjb2RlIGVhY2hgLGAke24ubGVuZ3RoK3QubGVuZ3RofSDmrrXph4zorqLmiJAgJHtuLmxlbmd0aC1yfSDmrrXvvIzmr4/mrrXkuIDkuKrnoa7orqTnoIFgKSsocj9hKGAsICR7cn0gYmVpbmcgY29uZmlybWVkYCxg77yMJHtyfSDmrrXnoa7orqTkuK1gKToiIikrKHQubGVuZ3RoPT09MT9hKCIgLSBvbmUgY291bGQgbm90IGJlLCBiZWxvdyIsIu+8m+WPpuaciSAxIOauteayoeiuouaIkO+8jOingeS4i+aWuSIpOnQubGVuZ3RoP2EoYCAtICR7dC5sZW5ndGh9IGNvdWxkIG5vdCBiZSwgYmVsb3dgLGDvvJvlj6bmnIkgJHt0Lmxlbmd0aH0g5q615rKh6K6i5oiQ77yM6KeB5LiL5pa5YCk6IiIpK2EoIi4iLCLjgIIiKTpzP2EoYCR7bi5sZW5ndGh9IGNvbmZpcm1hdGlvbiBjb2Rlcywgb25lIGZvciBlYWNoIGhvdGVsLmAsYOWFsSAke24ubGVuZ3RofSDkuKrnoa7orqTnoIHvvIzmr4/lrrbphZLlupfkuIDkuKrjgIJgKTphKCJLZWVwIHRoaXMgY29kZTogd2l0aCBpdCBhbmQgeW91ciBlbWFpbCwgeW91IGNhbiBmaW5kIHRoaXMgYm9va2luZyBhZ2FpbiBmcm9tIGFueSBjaGF0LiIsIuivt+S/neWtmOi/meS4quehruiupOeggeOAguWHreWug+WSjOS9oOeahOmCrueuse+8jOWcqOS7u+S9leWvueivnemHjOmDveiDveaJvuWbnui/meeslOmihOiuouOAgiIpKX08L3A+CiAgICAgPC9kaXY+YCwuLi5uLm1hcCh4PT5zP3koeCxTdHJpbmcoeC50b3RhbD8/IiIpLHgpOnkoeCxTdHJpbmcoZS50b3RhbD8/IiIpLGUpKSxFZCh0KSxzP2A8ZGl2IGNsYXNzPSJub3RlIj4ke2wocCgiY2hhbmdlQm9va2luZyIpP2EoYCR7bi5sZW5ndGh9IGJvb2tpbmdzLCBvbmUgZm9yIGVhY2ggc3RheS4gRWFjaCBob3RlbCBrZWVwcyBpdHMgb3duIG5pZ2h0cyB1bmRlciBpdHMgb3duIGNvZGUsIGFuZCBlYWNoIGlzIGNoYW5nZWQgb3IgY2FuY2VsbGVkIG9uIGl0cyBvd24uYCxg5YWxICR7bi5sZW5ndGh9IOeslOmihOiuou+8jOavj+auteS9j+Wuv+S4gOeslO+8jOWQhOacieiHquW3seeahOehruiupOegge+8jOS/ruaUueaIluWPlua2iOmDveimgeWIhuWIq+i/m+ihjOOAgmApOmEoYCR7bi5sZW5ndGh9IGJvb2tpbmdzLCBvbmUgZm9yIGVhY2ggc3RheS4gRWFjaCBob3RlbCBrZWVwcyBpdHMgb3duIG5pZ2h0cyB1bmRlciBpdHMgb3duIGNvZGUsIGFuZCBlYWNoIGlzIGNhbmNlbGxlZCBvbiBpdHMgb3duLmAsYOWFsSAke24ubGVuZ3RofSDnrJTpooTorqLvvIzmr4/mrrXkvY/lrr/kuIDnrJTvvIzlkITmnInoh6rlt7HnmoTnoa7orqTnoIHvvIzlj5bmtojpg73opoHliIbliKvov5vooYzjgIJgKSl9PC9kaXY+YDoiIixfP2A8ZGl2IGNsYXNzPSJ1bnBhaWQgcGFpZCI+CiAgICAgICA8Yj4ke2woYShgUGFpZCBpbiBhZHZhbmNlOiAke199LmAsYOW3sumihOS7mCAke19944CCYCkpfTwvYj4KICAgICAgIDxzcGFuPiR7bChkP2EoIlBhaWQgaW4gdGVzdCBtb2RlIC0gbm8gcmVhbCBtb25leSBtb3ZlZCwgYW5kIHRoZSBib29raW5nIGlzIGluIGEgc2ltdWxhdGVkIHN5c3RlbS4iLCLmtYvor5XmqKHlvI/ku5jmrL7vvIzmsqHmnInnnJ/lrp7miaPmrL7vvJvorqLljZXlnKjmqKHmi5/ns7vnu5/ph4zjgIIiKTphKGBOb3RoaW5nIG1vcmUgaXMgcGFpZCBhdCB0aGUgaG90ZWwgZm9yIHRoZSByb29tLiBJZiAke2l9IGRvZXMgbm90IGNvbmZpcm0gaXQsIGFsbCBvZiBpdCBnb2VzIGJhY2sgdG8geW91ciBjYXJkLmAsYOWIsOW6l+S4jeeUqOWGjeS7mOaIv+i0ueOAguWmguaenCR7ZGUoaSl95rKh5pyJ56Gu6K6k77yM5qy+6aG55Lya5YWo6aKd6YCA5Zue5Y6f5Y2h44CCYCkpfTwvc3Bhbj4KICAgICA8L2Rpdj5gOmQ/YDxkaXYgY2xhc3M9InVucGFpZCI+CiAgICAgICA8Yj4ke2EoIkEgdGVzdCBib29raW5nLiIsIui/meaYr+a1i+ivlemihOiuouOAgiIpfTwvYj4KICAgICAgIDxzcGFuPiR7bChhKGBNYWRlIGluIGEgc2ltdWxhdGVkIGNvcHkgb2YgJHtpfSdzIHN5c3RlbTogbm90IGEgJHtpfSByZXNlcnZhdGlvbiwgbm8gcm9vbSBpcyBoZWxkLCBhbmQgbm90aGluZyBpcyBwYWlkLmAsYOWcqCR7ZGUoaSl957O757uf55qE5qih5ouf5Ymv5pys6YeM55Sf5oiQ77yM5LiN5piv55yf5a6e6aKE6K6i77yM5LiN5L+d55WZ5oi/6Ze077yM5Lmf5LiN5LuY5qy+44CCYCkpfTwvc3Bhbj4KICAgICA8L2Rpdj5gOmM9PT0icGF5LWF0LWhvdGVsIj9gPGRpdiBjbGFzcz0idW5wYWlkIj4KICAgICAgIDxiPiR7YSgiTm90aGluZyBoYXMgYmVlbiBjaGFyZ2VkLiIsIuayoeacieaJo+asvuOAgiIpfTwvYj4KICAgICAgIDxzcGFuPiR7bChzP2EoYEVhY2ggaXMgJHtpfSdzIG93biByZXNlcnZhdGlvbiwgcGFpZCBhdCB0aGUgaG90ZWwuIEEgY2FyZCBpcyBwcmVzZW50ZWQgYXQgY2hlY2staW4sIG5vdCBoZXJlLmAsYOi/meaYryR7ZGUoaSl955qE5q2j5byP6aKE6K6i77yM5Yiw5bqX5LuY5qy+77yb5YWl5L2P5pe25Zyo5YmN5Y+w5Ye656S66ZO26KGM5Y2h77yM6L+Z6YeM5LiN5pS25qy+44CCYCk6YShgVGhpcyBpcyAke2l9J3Mgb3duIHJlc2VydmF0aW9uLCBwYWlkIGF0IHRoZSBob3RlbC4gQSBjYXJkIGlzIHByZXNlbnRlZCBhdCBjaGVjay1pbiwgbm90IGhlcmUuYCxg6L+Z5pivJHtkZShpKX3nmoTmraPlvI/pooTorqLvvIzliLDlupfku5jmrL7vvJvlhaXkvY/ml7blnKjliY3lj7Dlh7rnpLrpk7booYzljaHvvIzov5nph4zkuI3mlLbmrL7jgIJgKSl9PC9zcGFuPgogICAgIDwvZGl2PmA6dT9gPGRpdiBjbGFzcz0idW5wYWlkIj4KICAgICAgIDxiPiR7YSgiTm90aGluZyBoYXMgYmVlbiBjaGFyZ2VkLiIsIuayoeacieaJo+asvuOAgiIpfTwvYj4KICAgICAgIDxzcGFuPiR7YShgVGhpcyBpcyBhIGRlbW9uc3RyYXRpb24gYm9va2luZzogJHtsKGkpfSBoYXMgbm90IHJlY2VpdmVkIGl0LCBhbmQgbm8gcm9vbSBpcyBoZWxkIGF0IHRoZSBob3RlbC5gLGDov5nmmK/mvJTnpLrpooTorqLvvJoke2woZGUoaSkpfeayoeacieaUtuWIsO+8jOmFkuW6l+S5n+ayoeacieS4uuS9oOS/neeVmeaIv+mXtOOAgmApfTwvc3Bhbj4KICAgICA8L2Rpdj5gOmA8ZGl2IGNsYXNzPSJ1bnBhaWQiPgogICAgICAgPGI+JHthKCJOb3RoaW5nIGhhcyBiZWVuIGNoYXJnZWQuIiwi5rKh5pyJ5omj5qy+44CCIil9PC9iPgogICAgICAgPHNwYW4+JHthKCJBIGNhcmQgaXMgcHJlc2VudGVkIGF0IGNoZWNrLWluLCBub3QgaGVyZS4iLCLlhaXkvY/ml7blnKjliY3lj7Dlh7rnpLrpk7booYzljaHvvIzov5nph4zkuI3mlLbmrL7jgIIiKX08L3NwYW4+CiAgICAgPC9kaXY+YCxgPGRpdiBjbGFzcz0iZm9vdCI+CiAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiTXkgYm9va2luZ3MiLCLmiJHnmoTpooTorqIiKX08L2J1dHRvbj4KICAgICAgICR7c3x8Unx8cnx8IXAoImxpc3RFeHRyYXMiKT8iIjpgPGJ1dHRvbiBjbGFzcz0iZ28gc29mdCIgdHlwZT0iYnV0dG9uIiBkYXRhLWJvb2tpbmctZXh0cmFzPSIke2woblswXT8uY29uZmlybWF0aW9uQ29kZSl9Ij4ke2EoIkFkZC1vbnMgZm9yIHRoaXMgc3RheSIsIuS4uui/measoeS9j+Wuv+WKoOi0rSIpfTwvYnV0dG9uPmB9CiAgICAgPC9kaXY+YCxzfHxSfHxyPyIiOihuWzBdPy5xdW90ZT8ubGluZXM/P1tdKS5zb21lKHg9Pngua2luZD09PSJyb29tIikmJihuWzBdPy5xdW90ZT8ubGluZXM/P1tdKS5maWx0ZXIoeD0+eC5raW5kPT09InJvb20iKS5ldmVyeSh4PT54LnJlZnVuZGFibGU9PT0hMSk/YDxwIGNsYXNzPSJxdWlldC1lbmQgbm90ZSI+JHtsKGEoIlRoaXMgcmF0ZSBjYW5ub3QgYmUgY2FuY2VsbGVkLCBhbmQgbm90aGluZyBvZiBpdCBpcyByZWZ1bmRlZC4iLCLmraTku7fmoLzkuI3lj6/lj5bmtojvvIzlt7Lku5jmrL7pobnkuI3pgIDjgIIiKSl9PC9wPmA6YDxkaXYgY2xhc3M9InF1aWV0LWVuZCI+PGJ1dHRvbiBjbGFzcz0ibGlua3kgZGFuZ2VyIiB0eXBlPSJidXR0b24iIGRhdGEtY2FuY2VsPSIke2woblswXT8uY29uZmlybWF0aW9uQ29kZSl9Ij4ke2EoIkNhbmNlbCB0aGlzIGJvb2tpbmciLCLlj5bmtojov5nnrJTpooTorqIiKX08L2J1dHRvbj48L2Rpdj5gXS5qb2luKCIiKX0sUHU9KGUsdCxuKT0+YDxkaXYgY2xhc3M9Im5vdGUiPiR7bChOPT09ImVuIj9gTW9yZSB0aGFuIG9uZSAke24/PyJob3RlbCJ9IGFuc3dlcnMgdG8g4oCcJHtlfeKAnTpgOmEoYE1vcmUgdGhhbiBvbmUgaG90ZWwgYW5zd2VycyB0byDigJwke2V94oCdOmAsYOKAnCR7ZX3igJ3lr7nlupTkuI3mraLkuIDlrrbphZLlupfvvJpgKSl9PC9kaXY+CiAgPGRpdiBjbGFzcz0icGxhY2VzIj4ke3QubWFwKG89PmA8YnV0dG9uIGNsYXNzPSJjaGlwIHBsYWNlIiB0eXBlPSJidXR0b24iIGRhdGEtaG90ZWw9IiR7bChvLmlkKX0iPiR7bChvLm5hbWUpfSR7by5jaXR5P2AgPHNtYWxsPiR7bChvLmNpdHkpfTwvc21hbGw+YDoiIn08L2J1dHRvbj5gKS5qb2luKCIiKX08L2Rpdj5gLHh1PWU9Pntjb25zdCB0PWUuZHJvcHBlZD8/W10sbj10LmZpbHRlcihvPT4hKG8uY2FuZGlkYXRlcz8/W10pLmxlbmd0aCk7cmV0dXJuW24ubGVuZ3RoP2A8ZGl2IGNsYXNzPSJlcnIiPiR7bi5tYXAobz0+YCR7bChvLm5hbWUpfTogJHtsKE49PT0iZW4iP28ud2h5OmEoIk5vIGhvdGVsIGhlcmUgYnkgdGhhdCBuYW1lIiwi6L+Z6YeM5rKh5pyJ5a+55bqU55qE6YWS5bqXIikpfWApLmpvaW4oIjxicj4iKX08L2Rpdj5gOiIiLC4uLnQuZmlsdGVyKG89PihvLmNhbmRpZGF0ZXM/P1tdKS5sZW5ndGgpLm1hcChvPT5QdShvLm5hbWUsby5jYW5kaWRhdGVzLGUudm9jYWI/Lm5vdW4pKV0uam9pbigiIil9LE9TPS9cYihhdCBvbmNlfHRvbyBtYW55fGFuIGhvdXJ8cGVyIGhvdXJ8aW4gdGhlIGxhc3QgaG91cnxsaW1pdHx0cnkgYWdhaW4gKGxhdGVyfGluKSlcYi9pLFpTPXsiaG90ZWwtbm90LWZvdW5kIjpbIlRoYXQgaG90ZWwgaXMgbm90IGhlcmUiLCLmsqHmnInmib7liLDov5nlrrbphZLlupciXSwibm8tc3VjaC1yb29tIjpbIlRoYXQgcm9vbSBpcyBub3QgYXZhaWxhYmxlIiwi6K+l5oi/5Z6L5pqC5LiN5Y+v6K6iIl0sIm5vLXJvb20tbmFtZWQiOlsiVGhhdCByb29tIGlzIG5vdCBhdmFpbGFibGUiLCLor6XmiL/lnovmmoLkuI3lj6/orqIiXSwibm8tc3VjaC1leHRyYSI6WyJUaGF0IGFkZC1vbiBpcyBub3QgYXZhaWxhYmxlIiwi6L+Z6aG56ZmE5Yqg5pyN5Yqh6K6i5LiN5LqGIl0sIm5vLXN1Y2gtZ3JvdXAiOlsiVGhhdCBncm91cCBpcyBub3QgaW4gdGhpcyBtYXJrZXQiLCLov5nph4zmsqHmnInov5nkuKrpm4blm6IiXSwidHJpcC1nb25lIjpbIlRoaXMgdHJpcCBoYXMgZXhwaXJlZCIsIui/meS4quihjOeoi+W3sui/h+acnyJdLCJib29raW5nLWVuZGVkIjpbIlRoYXQgYm9va2luZyBoYXMgZW5kZWQiLCLov5nnrJTpooTorqLlt7Lnu5PmnZ8iXSwiYmFkLWNvdW50IjpbIlRoYXQgbnVtYmVyIGRvZXMgbm90IHdvcmsiLCLmlbDph4/kuI3lr7kiXSwic3RhcnQtdGltZSI6WyJUaGF0IHN0YXJ0IHRpbWUgaXMgbm90IG9wZW4iLCLov5nkuKrliLDlupfml7bpl7TkuI3lj6/pgIkiXSwibm90LWJvb2thYmxlIjpbIlRoaXMgY291bGQgbm90IGJlIGJvb2tlZCIsIuaaguaXtuaXoOazlemihOiuoiJdfSxvbj1lPT4vW+OQgC3pv79dLy50ZXN0KGUpLGRlPWU9PmUmJiFvbihlKT8i6YWS5bqXIjplLE1TPWU9PntpZigoZS5jYW5kaWRhdGVzPz9bXSkubGVuZ3RoKXJldHVybiBQdShlLnF1ZXJ5LGUuY2FuZGlkYXRlcyxlLnZvY2FiPy5ub3VuKTtjb25zdCB0PWUucm9vbXM/P1tdLG49ZS5lcnJvcj09PSJzdGFydC10aW1lIj9lLndpbmRvdzp2b2lkIDAsbz1lLmVycm9yPT09Im5vLXN1Y2gtcm9vbSImJmUuaG90ZWw/LmlkJiZlLnN0YXk/LmNoZWNrSW4mJnQuZXZlcnkocD0+cC5pZCk/YDxkaXYgY2xhc3M9ImxpbmtzIj4ke3QubWFwKHA9PmA8YnV0dG9uIGNsYXNzPSJsaW5rLXJvdyBhZGQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hZGQtcm9vbT0iJHtsKHAuaWQpfSIgZGF0YS1ob3RlbD0iJHtsKGUuaG90ZWwuaWQpfSIgZGF0YS1uPSIxIiBkYXRhLWNpPSIke2woZS5zdGF5LmNoZWNrSW4pfSIgZGF0YS1jbz0iJHtsKGUuc3RheS5jaGVja091dCl9IiBkYXRhLWd1PSIke2woZS5zdGF5Lmd1ZXN0cz8/ai5ndWVzdHMpfSI+PHNwYW4+JHtsKHAubmFtZSl9PC9zcGFuPjxzcGFuIGNsYXNzPSJsaW5rLWdvIj4ke2EoIlJlc2VydmUiLCLpooTorqIiKX0ke0kuY2hldlJ9PC9zcGFuPjwvYnV0dG9uPmApLmpvaW4oIiIpfTwvZGl2PmA6IiIscz1TdHJpbmcoZS5kZXRhaWw/P2Uud2h5Pz8iIikscj1PUy50ZXN0KHMpLGk9ZS5lcnJvcj09PSJ0cmlwLWdvbmUiLGM9aT9hKCJUcmlwcyBhcmUga2VwdCBmb3IgNCBob3VycyBhZnRlciB0aGVpciBsYXN0IGNoYW5nZSwgYW5kIHRoaXMgb25lIGhhcyBnb25lIC0gdHJ5aW5nIGFnYWluIHdpbGwgbm90IGJyaW5nIGl0IGJhY2suIEFzayB0aGUgYXNzaXN0YW50IHRvIHNob3cgeW91ciB0cmlwIGFnYWluLCBvciBzZWFyY2ggYWdhaW4gaGVyZS4iLCLooYznqIvlj6rlnKjmnIDlkI7kuIDmrKHmlLnliqjlkI7kv53nlZkgNCDlsI/ml7bvvIzov5nkuKrlt7Lnu4/ov4fmnJ/vvIzlho3or5XkuZ/kuI3kvJrmgaLlpI3jgILor7forqnliqnmiYvph43mlrDmmL7npLrooYznqIvvvIzmiJblnKjov5nph4zph43mlrDmkJzntKLjgIIiKTpuPyhlLnF1ZXJ5P2EoYCR7ZS5xdWVyeX0gaXMgbm90IGEgc3RhcnQgdGhpcyByb29tIHRha2VzLiBgLGAke2UucXVlcnl9IOS4jeiDveS9nOS4uuWIsOW6l+aXtumXtOOAgmApOiIiKSthKGBJdCBzdGFydHMgYmV0d2VlbiAke24uZWFybGllc3RTdGFydH0gYW5kICR7bi5sYXRlc3RTdGFydH0gdG9kYXksIGZvciAke24uaG91cnN9IGhvdXJzLCBhbmQgaXMgbGVmdCBieSAke24ubGF0ZXN0RW5kfS5gLGDov5npl7Tpkp/ngrnmiL/ku4rlpKkgJHtuLmVhcmxpZXN0U3RhcnR94oCTJHtuLmxhdGVzdFN0YXJ0fSDkuYvpl7TliLDlupfvvIzkvY8gJHtuLmhvdXJzfSDlsI/ml7bvvIzmnIDmmZogJHtuLmxhdGVzdEVuZH0g56a75bqX44CCYCk6ZS5lcnJvcj09PSJuby1zdWNoLXJvb20iJiZ0Lmxlbmd0aD9vP2UuaG90ZWw/Lm5hbWU/YShgJHtlLmhvdGVsLm5hbWV9IGhhcyBubyByb29tIGJ5IHRoYXQgbmFtZSBmb3IgdGhvc2UgbmlnaHRzLiBUaGVzZSBhcmUgb3BlbiDigJQgdGFwIG9uZSB0byByZXNlcnZlIGl0OmAsYCR7ZS5ob3RlbC5uYW1lfeWcqOi/meS6m+aXpeacn+ayoeaciei/meS4quaIv+Wei+OAguS4i+mdoui/meS6m+WPr+S7peiuou+8jOeCueS4gOS4i+WNs+WPr+mihOiuou+8mmApOmEoIlRoaXMgaG90ZWwgaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIFRoZXNlIGFyZSBvcGVuIOKAlCB0YXAgb25lIHRvIHJlc2VydmUgaXQ6Iiwi6L+Z5a626YWS5bqX5Zyo6L+Z5Lqb5pel5pyf5rKh5pyJ6L+Z5Liq5oi/5Z6L44CC5LiL6Z2i6L+Z5Lqb5Y+v5Lul6K6i77yM54K55LiA5LiL5Y2z5Y+v6aKE6K6i77yaIik6ZS5ob3RlbD8ubmFtZT9hKGAke2UuaG90ZWwubmFtZX0gaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIEl0IGhhcyAke1BuKHQubWFwKHA9PlN0cmluZyhwLm5hbWUpKSl9LmAsYCR7ZS5ob3RlbC5uYW1lfeWcqOi/meS6m+aXpeacn+ayoeaciei/meS4quaIv+Wei++8jOWPr+iuoueahOacie+8miR7UG4odC5tYXAocD0+U3RyaW5nKHAubmFtZSkpKX3jgIJgKTphKGBUaGlzIGhvdGVsIGhhcyBubyByb29tIGJ5IHRoYXQgbmFtZSBmb3IgdGhvc2UgbmlnaHRzLiBJdCBoYXMgJHtQbih0Lm1hcChwPT5TdHJpbmcocC5uYW1lKSkpfS5gLGDov5nlrrbphZLlupflnKjov5nkupvml6XmnJ/msqHmnInov5nkuKrmiL/lnovvvIzlj6/orqLnmoTmnInvvJoke1BuKHQubWFwKHA9PlN0cmluZyhwLm5hbWUpKSl944CCYCk6ciYmTiE9PSJlbiImJiEobm4oKSYmb24ocykpP2EoIk5vdGhpbmcgd2FzIGJvb2tlZCBhbmQgbm90aGluZyB3YXMgY2hhcmdlZC4gVGhpcyBjb252ZXJzYXRpb24gaGFzIHJlYWNoZWQgaXRzIGJvb2tpbmcgbGltaXQ6IGNhbmNlbCBvbmUgeW91IGRvIG5vdCBuZWVkIGluIE15IGJvb2tpbmdzLCB0aGVuIHRyeSBhZ2Fpbi4iLCLov5nmrKHmsqHmnInpooTorqLmiJDlip/vvIzkuZ/msqHmnInmiaPmrL7jgILov5nmrrXlr7nor53ph4znmoTpooTorqLlt7LliLDkuIrpmZDvvJror7flhYjlnKjigJzmiJHnmoTpooTorqLigJ3ph4zlj5bmtojkuI3pnIDopoHnmoTvvIzlho3or5XkuIDmrKHjgIIiKTpzJiYoTj09PSJlbiJ8fG5uKCkmJm9uKHMpKT9zOmEoIlRoYXQgY291bGQgbm90IGJlIGRvbmUuIiwi6L+Z5LiA5q2l5rKh6IO95a6M5oiQ77yM6K+356iN5ZCO5YaN6K+V44CCIiksdT1aU1tTdHJpbmcoZS5lcnJvcildLGQ9cj9hKCJCb29raW5nIGxpbWl0IHJlYWNoZWQiLCLlt7Lovr7pooTorqLkuIrpmZAiKTp1P2EodVswXSx1WzFdKTphKCJUaGF0IGRpZCBub3Qgd29yayIsIuayoeiDveWujOaIkCIpLGg9W2UuaG90ZWw/LmlkP2A8YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLWhvdGVsPSIke2woZS5ob3RlbC5pZCl9IiR7ZS5zdGF5Py5jaGVja0luP2AgZGF0YS1jaT0iJHtsKGUuc3RheS5jaGVja0luKX0iIGRhdGEtY289IiR7bChlLnN0YXkuY2hlY2tPdXQpfSJgOiIifT4ke2wobz9hKCJTZWUgYWxsIHJvb21zIiwi5p+l55yL5YWo6YOo5oi/5Z6LIik6YSgiU2VlIHRoZSByb29tcyIsIuafpeeci+aIv+WeiyIpKX08L2J1dHRvbj5gOiIiLHImJlFvKCJsaXN0Qm9va2luZ3MiKT9gPGJ1dHRvbiBjbGFzcz0iZ28ke2UuaG90ZWw/LmlkPyIgcXVpZXQiOiIifSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiTXkgYm9va2luZ3MiLCLmiJHnmoTpooTorqIiKX08L2J1dHRvbj5gOiIiLCFlLmhvdGVsPy5pZCYmIXImJmZlLmxlbmd0aD9gPGJ1dHRvbiBjbGFzcz0iZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImJhY2siPiR7SS5jaGV2TH0ke2woZmUuYXQoLTEpPy5sYWJlbD9hKGBCYWNrIHRvICR7ZmUuYXQoLTEpPy5sYWJlbH1gLCLov5Tlm54iKTphKCJCYWNrIHRvIHdoZXJlIHlvdSB3ZXJlIiwi6L+U5ZueIikpfTwvYnV0dG9uPmA6IiIsTnQ+MD9gPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InRyaXAiPiR7YSgiVmlldyB0aGUgdHJpcCIsIuafpeeci+ihjOeoiyIpfTwvYnV0dG9uPmA6IiJdLmZpbHRlcihCb29sZWFuKTtyZXR1cm4gaSYmaC5zcGxpY2UoMCxoLmxlbmd0aCxgPGJ1dHRvbiBjbGFzcz0iZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImFzay10cmlwLWFnYWluIj4ke2EoIkFzayB0aGUgYXNzaXN0YW50IHRvIHNob3cgaXQgYWdhaW4iLCLorqnliqnmiYvph43mlrDmmL7npLrooYznqIsiKX08L2J1dHRvbj5gLGA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iaG9tZSI+JHthKCJTZWFyY2ggYWdhaW4iLCLph43mlrDmkJzntKIiKX08L2J1dHRvbj5gKSxoLmxlbmd0aHx8aC5wdXNoKGA8YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iaG9tZSI+JHthKCJGaW5kIGEgaG90ZWwiLCLmib7phZLlupciKX08L2J1dHRvbj5gKSxgCiAgICA8ZGl2IGNsYXNzPSJzdGF0ZSAke3I/ImxpbWl0IjoiZXJyb3IifSIgcm9sZT0iYWxlcnQiPgogICAgICA8ZGl2IGNsYXNzPSJzdGF0ZS1pY28iPiR7cj9JLmNsb2NrOkkuZXJyb3J9PC9kaXY+CiAgICAgIDxoMiBjbGFzcz0ic3RhdGUtdCI+JHtsKGQpfTwvaDI+CiAgICAgIDxwIGNsYXNzPSJzdGF0ZS1kIj4ke2woYyl9PC9wPgogICAgICAke299CiAgICAgIDxkaXYgY2xhc3M9ImZvb3QiPiR7aC5qb2luKCIiKX08L2Rpdj4KICAgIDwvZGl2PmB9LHBiPWU9PmAKICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPGRpdiBjbGFzcz0iYm9keSI+CiAgICAgIDxkaXYgY2xhc3M9Im5hbWUiPiR7bChlLnRpdGxlKX08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ibWV0YSI+JHtsKHJiKGUpfHwoZS5raW5kPT09InJvb20iP2lhKGUuc3RheSxlLmhvdXJseSk6IiIpKX08L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icHJpY2UiPjxkaXYgY2xhc3M9InAtbGluZSI+JHtsKGUudG90YWwpfTwvZGl2PiR7ZS5raW5kPT09InJvb20iJiZsYT9gPGRpdiBjbGFzcz0icC11bml0Ij4ke2EoImJlZm9yZSB0YXhlcyIsIuacquWQq+eojui0uSIpfTwvZGl2PmA6IiJ9PC9kaXY+CiAgPC9kaXY+YCxxUz17ImF3YWl0aW5nLXBheW1lbnQiOiJ3YXJuIixyZXF1ZXN0ZWQ6Indhcm4iLGNvbmZpcm1lZDoiZ29vZCIsY2FuY2VsbGVkOiJiYWQiLGV4cGlyZWQ6ImJhZCIsZmFpbGVkOiJiYWQiLHVuY29uZmlybWVkOiJ3YXJuIn0sWm49eyJhd2FpdGluZy1wYXltZW50IjpbIkF3YWl0aW5nIHBheW1lbnQiLCLlvoXku5jmrL4iXSxyZXF1ZXN0ZWQ6WyJSZXF1ZXN0ZWQiLCLlvoXnoa7orqQiXSxjb25maXJtZWQ6WyJDb25maXJtZWQiLCLlt7Lnoa7orqQiXSxjYW5jZWxsZWQ6WyJDYW5jZWxsZWQiLCLlt7Llj5bmtogiXSxleHBpcmVkOlsiRXhwaXJlZCIsIuW3sui/h+acnyJdLGZhaWxlZDpbIk5vdCBtYWRlIiwi5pyq5oiQ5YqfIl0sdW5jb25maXJtZWQ6WyJCZWluZyBjaGVja2VkIiwi5qC45a6e5LitIl19LERTPWU9Pntjb25zdCB0PWUucmVxdWVzdHM/LmtpbmRzPz9bXTtpZighdC5sZW5ndGgpcmV0dXJuIiI7Y29uc3Qgbj10Lm1hcChFcyk7cmV0dXJuYDxkaXYgY2xhc3M9Im1ldGEgYXNrZWQtbGluZSI+JHtsKGEoYEFza2VkIGZvciAke24uam9pbigiLCAiKS50b0xvd2VyQ2FzZSgpfWAsYOW3suaPkOWHuu+8miR7bi5qb2luKCLjgIEiKX1gKSl9PC9kaXY+YH0sTFM9e2F3YWl0aW5nOlsiVG8gYmUgcGFpZCIsIuW+heS7mOasviIsIndhcm4iXSxwYWlkOlsiUGFpZCBpbiBhZHZhbmNlIiwi5bey6aKE5LuYIiwiZ29vZCJdLGxhcHNlZDpbIk5vdCBwYWlkIGluIHRpbWUiLCLotoXml7bmnKrku5giLCIiXSxyZWZ1bmRpbmc6WyJSZWZ1bmQgdW5kZXIgd2F5Iiwi6YCA5qy+5LitIiwiIl0scmVmdW5kZWQ6WyJSZWZ1bmRlZCBpbiBmdWxsIiwi5bey5YWo6aKd6YCA5qy+IiwiIl19LEJTPWU9Pntjb25zdCB0PUxTW1N0cmluZyhlPy5wYXltZW50Py5zdGF0dXM/PyIiKV07cmV0dXJuIHQ/YDxzcGFuIGNsYXNzPSJiYWRnZSAke3RbMl19Ij4ke2EodFswXSx0WzFdKX08L3NwYW4+YDoiIn0sSFM9ZT0+e2NvbnN0IHQ9ZS5ib29raW5ncz8/W10sbj1lLm5vdEZvdW5kP2A8ZGl2IGNsYXNzPSJlcnIiPiR7bChlLnRvb01hbnk/TiE9PSJlbiImJiEobm4oKSYmb24oU3RyaW5nKGUubm90Rm91bmRMaW5lPz8iIikpKT9hKCJUb28gbWFueSB0cmllcyAtIHRyeSBhZ2FpbiBsYXRlci4iLCLlsJ3or5XmrKHmlbDov4flpJrvvIzor7fnqI3lkI7lho3or5XjgIIiKTplLm5vdEZvdW5kTGluZTphKGBObyBib29raW5nIG1hdGNoZXMgJHtlLm5vdEZvdW5kfSB3aXRoIHRoYXQgZW1haWwuIEJvdGggaGF2ZSB0byBiZSBhcyB0aGV5IGFyZSBvbiB0aGUgY29uZmlybWF0aW9uLmAsYOayoeacieaJvuWIsOehruiupOeggSAke2Uubm90Rm91bmR9IOWSjOi/meS4qumCrueuseWvueW6lOeahOmihOiuouOAguS4pOmhuemDveimgeWSjOehruiupOS/oeaBr+S4iueahOS4gOiHtOOAgmApKX08L2Rpdj5gOiIiO3JldHVybiBlLm5vdEZvdW5kJiZ0Lmxlbmd0aD09PTA/YCR7bn0KICAgICAgPGRpdiBjbGFzcz0iZm9vdCI+PGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImZpbmQtYm9va2luZyI+JHthKCJUcnkgYWdhaW4iLCLlho3or5XkuIDmrKEiKX08L2J1dHRvbj48L2Rpdj5gOnQubGVuZ3RoPT09MD9gPGRpdiBjbGFzcz0iZW1wdHkiPiR7YSgiTm8gYm9va2luZ3MgaW4gdGhpcyBjb252ZXJzYXRpb24geWV0LiIsIui/measoeWvueivnemHjOi/mOayoeaciemihOiuouOAgiIpfTwvZGl2PmA6W24sYDxkaXYgY2xhc3M9InJvd3MiPiR7dC5tYXAobz0+YAogICAgICA8ZGl2IGNsYXNzPSJyb3cgYm9va2luZy1yb3ciIGRhdGEtb3Blbi1ib29raW5nPSIke2woby5jb25maXJtYXRpb25Db2RlKX0iPgogICAgICAgIDxkaXYgY2xhc3M9ImJvZHkiPgogICAgICAgICAgPGRpdiBjbGFzcz0ibmFtZSI+JHtNdChvLmhvdGVsTmFtZSl9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJtZXRhIj4ke2woby5jb25maXJtYXRpb25Db2RlKX0gwrcgJHtsKGlhKG8uc3RheSxvLmhvdXJseSkpfTwvZGl2PgogICAgICAgICAgJHtEUyhvKX0KICAgICAgICAgIDxkaXYgY2xhc3M9ImJhZGdlcyI+JHtCUyhvKX08c3BhbiBjbGFzcz0iYmFkZ2UgJHtxU1tTdHJpbmcoby5zdGF0dXMpXT8/IiJ9Ij4ke2woWm5bU3RyaW5nKG8uc3RhdHVzKV0/YShabltTdHJpbmcoby5zdGF0dXMpXT8uWzBdPz8iIixabltTdHJpbmcoby5zdGF0dXMpXT8uWzFdPz8iIik6by5zdGF0dXMpfTwvc3Bhbj48L2Rpdj4KICAgICAgICAgICR7by5zdGF0dXM9PT0idW5jb25maXJtZWQiP2A8ZGl2IGNsYXNzPSJtZXRhIj4ke2woYShgTm90IGtub3duIHlldCB3aGV0aGVyICR7VWUoby5zdXBwbGllcikubmFtZX0gbWFkZSB0aGlzIGJvb2tpbmcg4oCUIGEgcGVyc29uIGlzIGNvbmZpcm1pbmcgaXQuYCxg6L+Y5LiN56Gu5a6aJHtVZShvLnN1cHBsaWVyKS5uYW1lfeaYr+WQpuW3sueUn+aIkOi/meeslOmihOiuou+8jOato+WcqOS6uuW3peaguOWunuOAgmApKX08L2Rpdj5gOiIifQogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9InByaWNlIj48ZGl2IGNsYXNzPSJwLXRvdGFsIj4ke2woby5xdW90ZT8udG90YWw/PyIiKX08L2Rpdj48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJhY3Rpb24iPiR7by5zdGF0dXM9PT0iYXdhaXRpbmctcGF5bWVudCImJm8ucGF5bWVudD8udXJsP2A8YnV0dG9uIGNsYXNzPSJnbyBzbSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0icGF5IiBkYXRhLXVybD0iJHtsKG8ucGF5bWVudC51cmwpfSIgZGF0YS1jb2RlPSIke2woby5jb25maXJtYXRpb25Db2RlKX0iIGRhdGEtdW50aWw9IiR7bChvLnBheW1lbnQucGF5Qnk/PyIiKX0iPiR7YSgiUGF5Iiwi5Y675LuY5qy+Iil9ICR7bChvLnBheW1lbnQuYW1vdW50Pz8iIil9PC9idXR0b24+YDpvLnN0YXR1cz09PSJyZXF1ZXN0ZWQifHxvLnN0YXR1cz09PSJjb25maXJtZWQiP2Ake1FvKCJsaXN0RXh0cmFzIikmJlVlKG8uc3VwcGxpZXIpLmV4dHJhcz9gPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQgc20iIHR5cGU9ImJ1dHRvbiIgZGF0YS1ib29raW5nLWV4dHJhcz0iJHtsKG8uY29uZmlybWF0aW9uQ29kZSl9Ij4ke2EoIkFkZC1vbnMiLCLpmYTliqDmnI3liqEiKX08L2J1dHRvbj5gOiIifQogICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCBzbSIgdHlwZT0iYnV0dG9uIiBkYXRhLWNhbmNlbD0iJHtsKG8uY29uZmlybWF0aW9uQ29kZSl9Ij4ke2EoIkNhbmNlbCIsIuWPlua2iCIpfTwvYnV0dG9uPmA6IiJ9PGJ1dHRvbiBjbGFzcz0ib3Blbi1nbyIgdHlwZT0iYnV0dG9uIiBkYXRhLW9wZW4tYm9va2luZz0iJHtsKG8uY29uZmlybWF0aW9uQ29kZSl9IiBhcmlhLWxhYmVsPSIke2woYShgU2VlIGJvb2tpbmcgJHtvLmNvbmZpcm1hdGlvbkNvZGV9YCxg5p+l55yL6aKE6K6iICR7by5jb25maXJtYXRpb25Db2RlfSDnmoTor6bmg4VgKSl9Ij4ke0kuY2hldlJ9PC9idXR0b24+PC9kaXY+CiAgICAgIDwvZGl2PmApLmpvaW4oIiIpfTwvZGl2PmBdLmpvaW4oIiIpfSxaZD1lPT57Y29uc3QgdD1lLnZpZXc9PT0iY2FuY2VsbGVkIixuPWUuYm9va2luZz8/e307cmV0dXJuW2A8ZGl2IGNsYXNzPSJjb25mIj4KICAgICAgIDxkaXYgY2xhc3M9Im5vdGUiPiR7dD9hKCJDYW5jZWxsZWQiLCLlt7Llj5bmtogiKTphKCJDYW5jZWxsaW5nIiwi5q2j5Zyo5Y+W5raIIil9PC9kaXY+CiAgICAgICA8ZGl2IGNsYXNzPSJjb2RlIj4ke2wobi5jb25maXJtYXRpb25Db2RlKX08L2Rpdj4KICAgICA8L2Rpdj5gLGA8ZGl2IGNsYXNzPSJzdW1zIj4KICAgICAgIDxkaXYgY2xhc3M9InN1bSB0b3RhbCI+PHNwYW4+JHt0P2EoIlRoZSBob3RlbCBjaGFyZ2VzIiwi6YWS5bqX5pS25Y+WIik6YSgiQ2FuY2VsbGluZyB3b3VsZCBjb3N0Iiwi5Y+W5raI6ZyA5pSv5LuYIil9PC9zcGFuPjxzcGFuPiR7bChlLmZlZSl9PC9zcGFuPjwvZGl2PgogICAgIDwvZGl2PmAsYDxkaXYgY2xhc3M9Im5vdGUiPiR7bChlLnJ1bGUpfTwvZGl2PmAsdD8iIjplLmNhbmNlbGxhYmxlP2A8ZGl2IGNsYXNzPSJmb290Ij4KICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJib29raW5ncyI+JHthKCJLZWVwIGl0Iiwi5LiN5Y+W5raI5LqGIil9PC9idXR0b24+CiAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBkYW5nZXIiIHR5cGU9ImJ1dHRvbiIgZGF0YS1jb25maXJtLWNhbmNlbD0iJHtsKG4uY29uZmlybWF0aW9uQ29kZSl9Ij4ke2EoIkNhbmNlbCB0aGUgYm9va2luZyIsIuehruiupOWPlua2iCIpfTwvYnV0dG9uPgogICAgICAgICAgIDwvZGl2PmA6YDxkaXYgY2xhc3M9Im5vdGUiPiR7YSgiVGhlcmUgaXMgbm90aGluZyBsZWZ0IHRvIGNhbmNlbCBvbiB0aGlzIGJvb2tpbmcuIiwi6L+Z56yU6aKE6K6i5bey5rKh5pyJ5Y+v5Y+W5raI55qE5YaF5a6544CCIil9PC9kaXY+YF0uam9pbigiIil9LE1kPWU9Pntjb25zdCB0PWUudmlldz09PSJjaGFuZ2VkIixuPWUuYm9va2luZz8/e30sbz1lLmZyb20/P3t9LHM9ZS50byxyPSEhcyYmKHMuY2hlY2tJbiE9PW8uY2hlY2tJbnx8cy5jaGVja091dCE9PW8uY2hlY2tPdXR8fE51bWJlcihzLnJvb21zKSE9PU51bWJlcihvLnJvb21zKXx8cy5yb29tTmFtZSE9PW8ucm9vbU5hbWUpLGk9KGMsdSxkKT0+dT9gPGRpdiBjbGFzcz0ibGVnJHtkPyIgd2FzIjoiIn0iPgogICAgICAgICAgIDxkaXYgY2xhc3M9ImxlZ2siPiR7bChjKX08L2Rpdj4KICAgICAgICAgICA8ZGl2IGNsYXNzPSJsZWd2Ij4ke2woX2UoU3RyaW5nKHUuY2hlY2tJbikpKX0g4oaSICR7bChfZShTdHJpbmcodS5jaGVja091dCkpKX0gwrcgJHtsKGNlKE51bWJlcih1Lm5pZ2h0cykpKX08L2Rpdj4KICAgICAgICAgICA8ZGl2IGNsYXNzPSJsZWdtIj4ke2wodS5yb29tTmFtZSl9JHtOdW1iZXIodS5yb29tcyk+MT9gIMK3ICR7bCh4XyhOdW1iZXIodS5yb29tcykpKX1gOiIifSDCtyAke2wodS50b3RhbCl9PC9kaXY+CiAgICAgICAgIDwvZGl2PmA6IiI7cmV0dXJuW2A8ZGl2IGNsYXNzPSJjb25mIj4KICAgICAgIDxkaXYgY2xhc3M9Im5vdGUiPiR7dD9hKCJDaGFuZ2VkIiwi5bey5L+u5pS5Iik6YSgiQ2hhbmdpbmciLCLkv67mlLnpooTorqIiKX08L2Rpdj4KICAgICAgIDxkaXYgY2xhc3M9ImNvZGUiPiR7bChuLmNvbmZpcm1hdGlvbkNvZGUpfTwvZGl2PgogICAgIDwvZGl2PmAsZS5ob3RlbE5hbWU/YDxkaXYgY2xhc3M9Imgtd2hlcmUiPiR7bChlLmhvdGVsTmFtZSl9PC9kaXY+YDoiIixgPGRpdiBjbGFzcz0ibGVncyI+JHtpKHQ/YSgiV2FzIiwi5Y6f5p2lIik6YSgiTm93Iiwi546w5ZyoIiksZS5mcm9tLHIpfSR7aSh0P2EoIk5vdyIsIueOsOWcqCIpOmEoIldvdWxkIGJlIiwi5pS55Li6IiksZS50bywhMSl9PC9kaXY+YCxlLmFkZE9uP2A8ZGl2IGNsYXNzPSJzdW1zIj48ZGl2IGNsYXNzPSJzdW0iPjxzcGFuPiR7bChlLmFkZE9uLm5hbWUpfTwvc3Bhbj48c3Bhbj4ke2woZS5hZGRPbi5mcm9tKX0g4oaSICR7bChlLmFkZE9uLnRvKX08L3NwYW4+PC9kaXY+PC9kaXY+YDoiIixlLmRpZmZlcmVuY2U/YDxkaXYgY2xhc3M9InN1bXMiPjxkaXYgY2xhc3M9InN1bSB0b3RhbCI+PHNwYW4+JHtlLnJlZnVuZER1ZT90P2EoIlRoZSBkZXNrIG93ZXMiLCLphZLlupflupTpgIAiKTphKCJXb3VsZCBjb21lIGJhY2siLCLlsIbpgIDlm54iKTphKHQ/IlRoZSBkZXNrIGFza3MgZm9yIjoiV291bGQgY29zdCIsIumcgOihpeW3ruS7tyIpfTwvc3Bhbj48c3Bhbj4ke2woZS5kaWZmZXJlbmNlKX08L3NwYW4+PC9kaXY+PC9kaXY+YDoiIixgPGRpdiBjbGFzcz0ibm90ZSI+JHtsKGUucnVsZSl9PC9kaXY+YCx0P2A8ZGl2IGNsYXNzPSJmb290Ij48YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiTXkgYm9va2luZ3MiLCLmiJHnmoTpooTorqIiKX08L2J1dHRvbj48L2Rpdj5gOmUuY2hhbmdlYWJsZT9gPGRpdiBjbGFzcz0iZm9vdCI+CiAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiTGVhdmUgaXQiLCLkuI3mlLnkuoYiKX08L2J1dHRvbj4KICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtY29uZmlybS1jaGFuZ2U9IiR7bChuLmNvbmZpcm1hdGlvbkNvZGUpfSI+JHtlLmFkZE9uJiZlLmZyb20/LmNoZWNrSW49PT1lLnRvPy5jaGVja0luJiZlLmZyb20/LmNoZWNrT3V0PT09ZS50bz8uY2hlY2tPdXQ/YSgiVXBkYXRlIHRoZSBib29raW5nIiwi5pu05paw6aKE6K6iIik6YSgiTW92ZSB0aGUgYm9va2luZyIsIuehruiupOaUueacnyIpfTwvYnV0dG9uPgogICAgICAgICAgIDwvZGl2PmA6IiJdLmpvaW4oIiIpfSx2YT1lPT57Y29uc3QgdD1lLmhvdGVsPz97fSxuPWUudmlldz09PSJwb2xpY3kiP2A8aDQ+JHtsKGUudGl0bGUpfTwvaDQ+JHtsKGUudGV4dCl9YDooZS50b3BpY3M/P1tdKS5tYXAobz0+YDxoND4ke2woby50aXRsZSl9PC9oND4ke2woby50ZXh0KX1gKS5qb2luKCIiKTtyZXR1cm5bYDxkaXY+PGRpdiBjbGFzcz0iaC1uYW1lIj4ke2wodC5uYW1lKX08L2Rpdj48ZGl2IGNsYXNzPSJoLXdoZXJlIj4ke2EoIldoYXQgdGhlIGhvdGVsIHB1Ymxpc2hlcyIsIumFkuW6l+WFrOW4g+eahOaUv+etliIpfTwvZGl2PjwvZGl2PmAsZS52aWV3PT09InBvbGljeS1taXNzaW5nIj9gPGRpdiBjbGFzcz0iZW1wdHkiPiR7bChhKGAke3QubmFtZX0gZG9lcyBub3QgcHVibGlzaCBhbnl0aGluZyBhYm91dCB0aGF0IGhlcmUuYCxgJHt0Lm5hbWV95rKh5pyJ5YWs5biD6L+Z5pa56Z2i55qE5pS/562W44CCYCkpfTwvZGl2PmA6YDxkaXYgY2xhc3M9InByb3NlIj4ke259PC9kaXY+YCxgPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1ob3RlbD0iJHtsKHQuaWQpfSI+JHtsKGEoYEJhY2sgdG8gJHt0Lm5hbWV9YCxg6L+U5ZueJHt0Lm5hbWV9YCkpfTwvYnV0dG9uPmBdLmpvaW4oIiIpfSxxZD17V2hlcmU6IuS9jee9riIsQnJhbmQ6IuWTgeeJjCIsUm9vbToi5oi/5Z6LIiwiUGVyIG5pZ2h0Ijoi5q+P5pmaIiwiV2hvbGUgc3RheSI6IuaVtOauteS9j+WuvyIsIkZyZWUgY2FuY2VsbGF0aW9uIjoi5YWN6LS55Y+W5raIIixCcmVha2Zhc3Q6IuaXqemkkCIsU2xlZXBzOiLlj6/kvY/kurrmlbAiLCJSb29tcyBsZWZ0Ijoi5Ymp5L2Z5oi/6Ze0IixGcm9tOiLotbfku7ciLFJhdGluZzoi6K+E5YiGIn0sRGQ9e1llczoi5pivIixObzoi5ZCmIixJbmNsdWRlZDoi5ZCrIiwiTm90IGluY2x1ZGVkIjoi5LiN5ZCrIn0sRlM9ZT0+TiE9PSJlbiImJnFkW2VdP2EoZSxxZFtlXSk6ZSxVUz1lPT5OPT09ImVuIj9lOkRkW2VdP2EoZSxEZFtlXSk6LyBpbmNsXC4gdGF4JC8udGVzdChlKT9hKGAke2UucmVwbGFjZSgvIGluY2xcLiB0YXgkLywiIil9IGluY2wuIHRheGAsYCR7ZS5yZXBsYWNlKC8gaW5jbFwuIHRheCQvLCIiKX0g5ZCr56iOYCk6LyBhIG5pZ2h0JC8udGVzdChlKT9hKGAke2UucmVwbGFjZSgvIGEgbmlnaHQkLywiIil9IGEgbmlnaHRgLGAke2UucmVwbGFjZSgvIGEgbmlnaHQkLywiIil9IOavj+aZmmApOmUsVlM9ZT0+e2NvbnN0IHQ9ZS5jb2x1bW5zPz9bXSxuPWUucm93TGFiZWxzPz9bXSxvPXQuc29tZShyPT5yLnJlY29tbWVuZGVkKSxzPXI9PmAKICAgIDxkaXYgY2xhc3M9ImNtcC1oZWFkJHtyLnJlY29tbWVuZGVkPyIgcGljayI6IiJ9JHtvPyIgbWFya2VkIjoiIn0iPgogICAgICAke28/YDxkaXYgY2xhc3M9InBpY2ttYXJrJHtyLnJlY29tbWVuZGVkPyIiOiIgbm9uZSJ9Ij4ke3IucmVjb21tZW5kZWQ/YSgiUmVjb21tZW5kZWQiLCLmjqjojZAiKToiIn08L2Rpdj5gOiIifQogICAgICA8YnV0dG9uIGNsYXNzPSJ0LXNob3QiIHR5cGU9ImJ1dHRvbiIgZGF0YS1ob3RlbD0iJHtsKHIuaG90ZWwuaWQpfSIgc3R5bGU9IiR7dnQoU3RyaW5nKHIuaG90ZWwuaWQpKX0iPgogICAgICAgICR7ci5ob3RlbC5pbWFnZVVybD9gPGltZyBzcmM9IiR7bChyLmhvdGVsLmltYWdlVXJsKX0iIGFsdD0iIj5gOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJ0LW1hcmsiPiR7bChrdChTdHJpbmcoci5ob3RlbC5uYW1lKSkpfTwvc3Bhbj4KICAgICAgPC9idXR0b24+CiAgICAgIDxkaXYgY2xhc3M9ImNvbC1uYW1lIj4ke2woci5ob3RlbC5uYW1lKX0ke1B0KHIuaG90ZWwuc3VwcGxpZXIpP2A8c21hbGwgY2xhc3M9ImNvbC1ncm91cCI+JHtsKFB0KHIuaG90ZWwuc3VwcGxpZXIpLm5hbWUpfTwvc21hbGw+YDoiIn08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29sLXByaWNlIj4ke3IucHJpY2U/YCR7bChyLnByaWNlLnN0YXlUb3RhbCl9PHNtYWxsIGNsYXNzPSJzdWIiPiR7bChhKGB0b3RhbCDCtyAke3IucHJpY2UubmlnaHRseX0vbmlnaHRgLGDmgLvku7cgwrcg5q+P5pmaICR7ci5wcmljZS5uaWdodGx5fWApKX08L3NtYWxsPmA6ci5mcm9tP2A8c21hbGw+JHthKCJGcm9tICIsIiIpfTwvc21hbGw+JHtsKHIuZnJvbSl9PHNtYWxsPiR7YSgiIC8gbmlnaHQiLCIg6LW3L+aZmiIpfTwvc21hbGw+YDoiIn08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0id2h5JHtyLmJlc3RGb3I/IiI6IiBub25lIn0iPiR7ci5iZXN0Rm9yP2woci5iZXN0Rm9yKToiIn08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGMiPiR7Wy4uLihyLnByb3M/P1tdKS5tYXAoaT0+YDxkaXYgY2xhc3M9InBybyI+PHNwYW4gY2xhc3M9Im0iPis8L3NwYW4+PHNwYW4+JHtsKGkpfTwvc3Bhbj48L2Rpdj5gKSwuLi4oci5jb25zPz9bXSkubWFwKGk9PmA8ZGl2IGNsYXNzPSJjb24iPjxzcGFuIGNsYXNzPSJtIj7iiJI8L3NwYW4+PHNwYW4+JHtsKGkpfTwvc3Bhbj48L2Rpdj5gKV0uam9pbigiIil9PC9kaXY+CiAgICA8L2Rpdj5gO3JldHVybltlLnRpdGxlP2A8ZGl2IGNsYXNzPSJoLW5hbWUiPiR7bChlLnRpdGxlKX08L2Rpdj5gOiIiLGUuc3RheT9gPGRpdiBjbGFzcz0iaC13aGVyZSI+JHtsKFhvKGUuc3RheSkpfTwvZGl2PmA6IiIsQXJyYXkuaXNBcnJheShlLmN1cnJlbmNpZXMpJiZlLmN1cnJlbmNpZXMubGVuZ3RoPjE/YDxkaXYgY2xhc3M9Im5vdGUiPiR7bChhKGBQcmljZXMgYXJlIGluIGVhY2ggaG90ZWwncyBvd24gY3VycmVuY3kgKCR7ZS5jdXJyZW5jaWVzLmpvaW4oIiwgIil9KS4gVGhleSBhcmUgbm90IGNvbnZlcnRlZCwgc28gdGhlIGNvbHVtbnMgYXJlIG5vdCBhIHByaWNlIHJhbmtpbmcuYCxg5ZCE5a625Lu35qC85oyJ5ZCE6Ieq5biB56eN77yIJHtlLmN1cnJlbmNpZXMuam9pbigi44CBIil977yJ5pi+56S677yM5LiN5YGa5o2i566X77yM5omA5Lul5LiN6IO95oyJ5YiX5q+U5Lu344CCYCkpfTwvZGl2PmA6IiIsYDxkaXYgY2xhc3M9ImNtcC13cmFwIj48ZGl2IGNsYXNzPSJjbXAke3QubGVuZ3RoPj00PyIgZm91ciI6IiJ9IiBzdHlsZT0iLS1jb2xzOiR7dC5sZW5ndGh9Oy0taGVhZC1yb3dzOiR7bz82OjV9Ij4KICAgICAgIDxkaXYgY2xhc3M9ImNtcC1jb3JuZXIiPjwvZGl2PgogICAgICAgJHt0Lm1hcChzKS5qb2luKCIiKX0KICAgICAgICR7bi5tYXAoKHIsaSk9PmA8ZGl2IGNsYXNzPSJrIj4ke2woRlMocikpfTwvZGl2PiR7dC5tYXAoYz0+YDxkaXYgY2xhc3M9InYke2klMj8iIGFsdCI6IiJ9Ij4ke2woVVMoYy5yb3dzPy5baV0/LnZhbHVlPz8i4oCUIikpfTwvZGl2PmApLmpvaW4oIiIpfWApLmpvaW4oIiIpfQogICAgIDwvZGl2PjwvZGl2PmAseHUoZSksYDxkaXYgY2xhc3M9Im5vdGUiPiR7bChOPT09ImVuIj9gT3BlbiBhICR7ZS52b2NhYj8ubm91bj8/ImhvdGVsIn0gdG8gc2VlIGl0cyByb29tcyR7ZS5zdGF5Py5jaGVja0luPyIgZm9yIHRoZXNlIG5pZ2h0cyI6IiJ9LmA6ZS5zdGF5Py5jaGVja0luP2EoIk9wZW4gYSBob3RlbCB0byBzZWUgaXRzIHJvb21zIGZvciB0aGVzZSBuaWdodHMuIiwi5omT5byA5LiA5a626YWS5bqX77yM5p+l55yL6L+Z5Lqb5pel5pyf55qE5oi/6Ze044CCIik6YSgiT3BlbiBhIGhvdGVsIHRvIHNlZSBpdHMgcm9vbXMuIiwi5omT5byA5LiA5a626YWS5bqX77yM5p+l55yL5oi/6Ze044CCIikpfTwvZGl2PmBdLmpvaW4oIiIpfSxXUz1lPT57Y29uc3QgdD1lLmRheXM/P1tdLG49Yz0+YDxzcGFuIGNsYXNzPSJpbnN0YXRlICR7Yy5ib29rZWR8fGMuaW5UcmlwPyJ5ZXMiOiJubyJ9Ij4ke2MuYm9va2VkP2EoYEJvb2tlZCDCtyAke2woYy5ib29rZWQpfWAsYOW3suiuoiDCtyAke2woYy5ib29rZWQpfWApOmMuaW5UcmlwP2EoIkluIHRoZSB0cmlwIiwi5bey5Zyo6KGM56iL5LitIik6YSgiUGxhbiBvbmx5Iiwi5LuF6K6h5YiSIil9PC9zcGFuPmAsbz1jPT5gIGRhdGEtaG90ZWw9IiR7bChjLmlkKX0iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiJHtjLmNoZWNrSW4/YCBkYXRhLWNpPSIke2woYy5jaGVja0luKX0iIGRhdGEtY289IiR7bChjLmNoZWNrT3V0KX0iYDoiIn1gLHM9Yz0+Yy5jaGVja291dD9gPGRpdiBjbGFzcz0icGxhbi1uaWdodCIke28oYyl9PjxzcGFuPiR7YShgQ2hlY2sgb3V0IMK3ICR7bChjLm5hbWUpfWAsYOemu+W6lyDCtyAke2woYy5uYW1lKX1gKX08L3NwYW4+PC9kaXY+YDpOdW1iZXIoYy5uaWdodD8/MSk+MT9gPGRpdiBjbGFzcz0icGxhbi1uaWdodCIke28oYyl9PgogICAgICAgICAgIDxzcGFuPiR7bChhKGBOaWdodCAke2MubmlnaHR9IG9mICR7Yy5uaWdodHN9IMK3ICR7Yy5uYW1lfWAsYOesrCAke2MubmlnaHR9LyR7Yy5uaWdodHN9IOaZmiDCtyAke2MubmFtZX1gKSl9PC9zcGFuPiR7bihjKX0KICAgICAgICAgPC9kaXY+YDpgPGRpdiBjbGFzcz0icGxhbi1zdGF5IiR7byhjKX0+CiAgICAgICAgICAgPHNwYW4gY2xhc3M9InBzLXNob3QiIHN0eWxlPSIke3Z0KFN0cmluZyhjLmlkKSl9Ij4ke2MuaW1hZ2VVcmw/YDxpbWcgc3JjPSIke2woYy5pbWFnZVVybCl9IiBhbHQ9IiI+YDpgPHNwYW4gY2xhc3M9InQtbWFyayI+JHtsKGt0KFN0cmluZyhjLm5hbWUpKSl9PC9zcGFuPmB9PC9zcGFuPgogICAgICAgICAgIDxzcGFuIGNsYXNzPSJwcy1ib2R5Ij4KICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJuYW1lIj4ke2woYy5uYW1lKX08L3NwYW4+CiAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWV0YSI+JHtsKFtjLmRldGFpbCxjLm5pZ2h0cz9hKGAke2NlKGMubmlnaHRzKX0gaGVyZWAsYOWcqOatpOS9jyR7Y2UoYy5uaWdodHMpfWApOiIiXS5maWx0ZXIoQm9vbGVhbikuam9pbigiIMK3ICIpKX08L3NwYW4+CiAgICAgICAgICAgICAke2MucHJpY2U/YDxzcGFuIGNsYXNzPSJwcy1wcmljZSI+JHtsKGMucHJpY2UpfTwvc3Bhbj5gOiIifQogICAgICAgICAgICAgJHtuKGMpfQogICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgPC9kaXY+YCxyPWM9PmAKICAgIDxkaXYgY2xhc3M9InBsYW4taXRlbSI+CiAgICAgIDxkaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibmFtZSI+JHtsKGMubmFtZSl9PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibWV0YSI+JHtsKFtjLmRldGFpbCxjLnByaWNlXS5maWx0ZXIoQm9vbGVhbikuam9pbigiIMK3ICIpKX08L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgICR7bihjKX0KICAgIDwvZGl2PmAsaT1jPT4oYy5wbGFuPz9bXSkubGVuZ3RoP2A8b2wgY2xhc3M9Im1vbWVudHMiPiR7Yy5wbGFuLm1hcCh1PT5gPGxpPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ3aGVuIj4ke2wodS50aW1lPz8iIil9PC9zcGFuPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ3aGF0Ij48Yj4ke2wodS53aGF0KX08L2I+JHt1Lm5vdGU/YDxzbWFsbD4ke2wodS5ub3RlKX08L3NtYWxsPmA6IiJ9PC9zcGFuPgogICAgICAgICAgICA8L2xpPmApLmpvaW4oIiIpfTwvb2w+YDoiIjtyZXR1cm5bYDxkaXY+CiAgICAgICA8ZGl2IGNsYXNzPSJoLW5hbWUiPiR7bChlLnRpdGxlKX08L2Rpdj4KICAgICAgICR7ZS5zdGF5P2A8ZGl2IGNsYXNzPSJoLXdoZXJlIj4ke2woWG8oZS5zdGF5KSl9PC9kaXY+YDoiIn0KICAgICA8L2Rpdj5gLGA8ZGl2IGNsYXNzPSJnYXAiPjxiPiR7bChOdW1iZXIoZS5pblRyaXA/PzApK051bWJlcihlLmJvb2tlZD8/MCkpfS8ke2woZS5wbGFubmVkKX08L2I+PHNwYW4+JHtsKE49PT0iZW4iP2UuZ2FwPz8iIjphKGBPZiB0aGUgJHtlLnBsYW5uZWR9IG9uIHRoZSBwbGFuLCAke051bWJlcihlLmluVHJpcD8/MCkrTnVtYmVyKGUuYm9va2VkPz8wKX0gYXJlIGluIHRoZSB0cmlwIG9yIGJvb2tlZDsgdGhlIHJlc3QgYXJlIG9ubHkgcGxhbm5lZC5gLGDorqHliJLkuK3nmoQgJHtlLnBsYW5uZWR9IOmhuemHjO+8jCR7TnVtYmVyKGUuaW5UcmlwPz8wKStOdW1iZXIoZS5ib29rZWQ/PzApfSDpobnlt7LlnKjooYznqIvkuK3miJblt7LpooTorqLvvIzlhbbkvZnlj6rmmK/orqHliJLjgIJgKSl9PC9zcGFuPjwvZGl2PmAsYDxkaXYgY2xhc3M9ImRheXMiPiR7dC5tYXAoKGMsdSk9PmAKICAgICAgPGRpdiBjbGFzcz0iZGF5cm93Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJkYXludW0iPjxiPiR7dSsxfTwvYj48aT48L2k+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iZGF5Ym9keSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJkYXlsYWJlbCI+JHtsKGMubGFiZWwpfSR7Yy5kYXRlP2A8c21hbGw+IMK3ICR7bChHUyhTdHJpbmcoYy5kYXRlKSkpfTwvc21hbGw+YDoiIn08L2Rpdj4KICAgICAgICAgICR7Yy5ub3RlP2A8ZGl2IGNsYXNzPSJkYXlub3RlIj4ke2woYy5ub3RlKX08L2Rpdj5gOiIifQogICAgICAgICAgJHtpKGMpfQogICAgICAgICAgJHsoYy5pdGVtcz8/W10pLm1hcChkPT5kLmtpbmQ9PT0iaG90ZWwiP3MoZCk6cihkKSkuam9pbigiIil9CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PmApLmpvaW4oIiIpfTwvZGl2PmAseHUoZSksS1MoZSldLmpvaW4oIiIpfSxLUz1lPT57Y29uc3QgdD1tYihlKTtpZih0PDApcmV0dXJuIiI7Y29uc3Qgbj1lLnN1Z2dlc3Rpb25zW3RdLmFza3Msbz1bLi4ubmV3IFNldChuLm1hcChpPT5TdHJpbmcoaS5hcmdzPy5ob3RlbD8/IiIpKSldLHM9aT0+KGUuZGF5cz8/W10pLmZsYXRNYXAoYz0+Yy5pdGVtcz8/W10pLmZpbmQoYz0+Yy5raW5kPT09ImhvdGVsIiYmYy5pZD09PWkpPy5uYW1lLHI9bi5sZW5ndGg9PT0xP3Mob1swXT8/IiIpP2EoYEJvb2sgJHtzKG9bMF0/PyIiKX1gLGDpooTorqIke3Mob1swXT8/IiIpfWApOmEoIkJvb2sgdGhpcyBzdGF5Iiwi6aKE6K6i6L+Z5LiA5q61Iik6by5sZW5ndGg9PT1uLmxlbmd0aD9hKGBCb29rIHRoZXNlICR7bi5sZW5ndGh9IGhvdGVsc2AsYOmihOiuoui/mSAke24ubGVuZ3RofSDlrrZgKTphKGBCb29rIHRoZXNlICR7bi5sZW5ndGh9IHN0YXlzYCxg6aKE6K6i6L+ZICR7bi5sZW5ndGh9IOauteS9j+Wuv2ApO3JldHVybmA8ZGl2IGNsYXNzPSJmb290Ij48YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLXN1Z2dlc3Q9IiR7dH0iPiR7bChyKX08L2J1dHRvbj48L2Rpdj5gfSxHUz1lPT5fZShlKSwkZT0oZSx0PSExKT0+e2lmKCFlfHx0eXBlb2YgZSE9Im9iamVjdCIpcmV0dXJuO2NvbnN0IG49dCYmZS52aWV3PT09Im1lbWJlciImJm5lP3suLi5lLG1lbWJlcjpuZX06ZTtBXyhuKSxuLnRvb2xOYW1lcyYmKGh1PW4udG9vbE5hbWVzKSwobi5ib29raW5nTW9kZT09PSJwYXktYXQtaG90ZWwifHxuLmJvb2tpbmdNb2RlPT09ImhvbGQiKSYmKEFnPW4uYm9va2luZ01vZGUpLHR5cGVvZiBuLnRvb2xOYW1lcz09Im9iamVjdCImJihtdT1uLnNhbmRib3g9PT0hMCx6Zz1uLnBob25lUmVxdWlyZWQ9PT0hMCksc2EoITEpLG4uYnJhbmQmJihqZT1TdHJpbmcobi5icmFuZCkpLG4uYWNjZW50JiZJZyhuLmFjY2VudCksbi5wcmltYXJ5JiZaZyhuLnByaW1hcnkpLG4uZm9udHMmJlJnKG4uZm9udHMpLG4ubG9nb1VybCYmKEFzPVN0cmluZyhuLmxvZ29VcmwpKSxuLmxvZ29EYXJrVXJsJiYoSWE9U3RyaW5nKG4ubG9nb0RhcmtVcmwpKSxuLnNob3dOYW1lPT09ITAmJihmYT0hMCksbi5wcm9ncmFtbWUmJihSYT1TdHJpbmcobi5wcm9ncmFtbWUpKSxuLm1hcmtldCYmQXJyYXkuaXNBcnJheShuLm1hcmtldC5zdXBwbGllcnMpJiYobWU9bi5tYXJrZXQpLG4udmlldz09PSJib29raW5nIiYmKHV0PSIiKSxuLmNvZGVQcmVmaXgmJihFYT1TdHJpbmcobi5jb2RlUHJlZml4KSksdHlwZW9mIG4uZGVtbz09ImJvb2xlYW4iJiYocHU9bi5kZW1vKSxuLmRlbW9Ob3RlJiYoeWc9U3RyaW5nKG4uZGVtb05vdGUpKSx0eXBlb2Ygbi5yb29tc193YW50ZWQ9PSJudW1iZXIiP1Y9bi5yb29tc193YW50ZWQ6KG4udmlldz09PSJob3RlbHMifHxuLnZpZXc9PT0iZGVzdGluYXRpb25zInx8bi52aWV3PT09Im5vLWhvdGVscyIpJiZuLnN0YXk/LmNoZWNrSW4mJiFLdCYmKFY9TWF0aC5tYXgoMSxOdW1iZXIobi5hc2s/LnJvb21zPz8xKXx8MSkpLHR8fChuLnZpZXc9PT0ibWVtYmVyIiYmbi5tZW1iZXI/LnRpZXI/Lm5hbWU/bmU9bi5tZW1iZXI6bi5tZW1iZXI/LnRpZXI/Lm5hbWUmJihuZT1uZT8ucHJvZ3JhbW1lPT09bi5tZW1iZXIucHJvZ3JhbW1lJiZuZT8udGllcj8ubmFtZT09PW4ubWVtYmVyLnRpZXIubmFtZT97Li4ubmUsLi4ubi5tZW1iZXIscHJlZmVyZW5jZXM6bi5tZW1iZXIucHJlZmVyZW5jZXN9Om4ubWVtYmVyKSwobi52aWV3PT09InNpZ25lZC1vdXQifHxuLnNpZ25lZEluPT09ITEpJiYobmU9bnVsbCkpLG4uc3RheT8uY2hlY2tJbiYmbi5zdGF5LmNoZWNrT3V0Pm4uc3RheS5jaGVja0luJiYhTW4mJiFLdCYmKGo9e2NoZWNrSW46bi5zdGF5LmNoZWNrSW4sY2hlY2tPdXQ6bi5zdGF5LmNoZWNrT3V0LGd1ZXN0czpuLnN0YXkuZ3Vlc3RzPz8yfSksIUZuJiYobi52aWV3PT09InRyaXAifHxuLnZpZXc9PT0ibmVlZHMtZGF0ZXMiKSYmKGZ0PW4ubGluZXM/P1tdKSwobi52aWV3PT09ImJvb2tpbmcifHxuLnZpZXc9PT0iZW1wdHktdHJpcCIpJiYoZnQ9W10sTnQ9MCksaXQ9U3RyaW5nKG4udmlldz8/IiIpLCRnKCksVF8obiksZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNrbG9nbyIpPy5yZW1vdmUoKTtjb25zdCBvPXEoImJyYW5kIik7QXM/KGR1KCksby5oaWRkZW49ITEscSgidGl0bGUiKS5oaWRkZW49IWZhLGZhJiYocSgidGl0bGUiKS50ZXh0Q29udGVudD1qZXx8YSgiSG90ZWxzIiwi6YWS5bqXIikpKTooby5oaWRkZW49ITAscSgidGl0bGUiKS5oaWRkZW49ITEscSgidGl0bGUiKS50ZXh0Q29udGVudD1qZXx8YSgiSG90ZWxzIiwi6YWS5bqXIikpLHEoInN1YiIpLnRleHRDb250ZW50PVFTKG4pLExfKCksZWooKSxYUygpO2NvbnN0IHM9e2hvdGVsczpuUyxkZXN0aW5hdGlvbnM6V18sIm5vLWhvdGVscyI6b1MsaG90ZWw6UGQsIm5vLXJvb21zIjpQZCwiaG90ZWwtbm90LWZvdW5kIjpoPT4oaC5jYW5kaWRhdGVzPz9bXSkubGVuZ3RoP1B1KGgucXVlcnksaC5jYW5kaWRhdGVzLGgudm9jYWI/Lm5vdW4pOmA8ZGl2IGNsYXNzPSJlbXB0eSI+JHthKCJUaGF0IGhvdGVsIGlzIG5vdCBpbiB0aGlzIGNvbm5lY3Rvci4iLCLov5nph4zmsqHmnInov5nlrrbphZLlupfjgIIiKX08L2Rpdj5gLGV4dHJhczprUyx0cmlwOl9TLCJuZWVkcy1kYXRlcyI6WVMsYm9va2luZzpFUywibmVlZHMtZ3Vlc3QiOnpTLG1lbWJlcjpDUywibWVtYmVyLW5vdC1mb3VuZCI6TlMsInNpZ25lZC1vdXQiOigpPT5gPGRpdiBjbGFzcz0iZW1wdHkiPiR7YSgiU2lnbmVkIG91dC4gUmF0ZXMgYXJlIHRoZSBwdWJsaWMgb25lcyBhZ2Fpbi4iLCLlt7LpgIDlh7rnmbvlvZXvvIzku7fmoLzmgaLlpI3kuLrlhazlvIDku7fjgIIiKX08L2Rpdj48ZGl2IGNsYXNzPSJmb290Ij48YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iaG9tZSI+JHthKCJGaW5kIGEgaG90ZWwiLCLmib7phZLlupciKX08L2J1dHRvbj48L2Rpdj5gLCJlbXB0eS10cmlwIjooKT0+YDxkaXYgY2xhc3M9ImVtcHR5Ij4ke2EoIlRoZXJlIGlzIG5vdGhpbmcgaW4gdGhlIHRyaXAgeWV0LiIsIuihjOeoi+mHjOi/mOayoeacieWGheWuueOAgiIpfTwvZGl2PmAsYm9va2luZ3M6SFMsImNhbmNlbGxhdGlvbi1wcmV2aWV3IjpaZCxjYW5jZWxsZWQ6WmQsImNoYW5nZS1wcmV2aWV3IjpNZCxjaGFuZ2VkOk1kLCJib29raW5nLW5vdC1mb3VuZCI6KCk9PmA8ZGl2IGNsYXNzPSJlbXB0eSI+JHthKCJObyBib29raW5nIGhlcmUgbWF0Y2hlcyB0aGF0IGNvZGUuIiwi5rKh5pyJ5ZKM6L+Z5Liq56Gu6K6k56CB5a+55bqU55qE6aKE6K6i44CCIil9PC9kaXY+YCxjb21wYXJpc29uOlZTLCJub3RoaW5nLXRvLWNvbXBhcmUiOmg9PihoLmRyb3BwZWQ/P1tdKS5zb21lKHA9PihwLmNhbmRpZGF0ZXM/P1tdKS5sZW5ndGgpP3h1KGgpOmA8ZGl2IGNsYXNzPSJlbXB0eSI+JHthKCJOb25lIG9mIHRob3NlIGFyZSBob3RlbHMgdGhpcyBjb25uZWN0b3Iga25vd3MuIiwi6L+Z5Lqb6YO95LiN5piv6L+Z6YeM55qE6YWS5bqX44CCIil9PC9kaXY+YCxpdGluZXJhcnk6V1MsImVtcHR5LWl0aW5lcmFyeSI6KCk9PmA8ZGl2IGNsYXNzPSJlbXB0eSI+JHthKCJBbiBpdGluZXJhcnkgbmVlZHMgYXQgbGVhc3Qgb25lIGRheS4iLCLooYznqIvorqHliJLoh7PlsJHpnIDopoHkuIDlpKnjgIIiKX08L2Rpdj5gLHBvbGljeTp2YSxwb2xpY2llczp2YSwicG9saWN5LW1pc3NpbmciOnZhLGVycm9yOk1TLCJmaW5kLWJvb2tpbmciOigpPT5bJzxkaXYgY2xhc3M9Im5vdGUiPkEgYm9va2luZyBtYWRlIGluIGFub3RoZXIgY29udmVyc2F0aW9uIGlzIGZvdW5kIHdpdGggdGhlIGNvbmZpcm1hdGlvbiBjb2RlIGFuZCB0aGUgZW1haWwgaXQgd2FzIG1hZGUgd2l0aCAtIGJvdGgsIGFzIHRoZXkgYXJlIG9uIHRoZSBjb25maXJtYXRpb24uPC9kaXY+JyxgPGRpdiBjbGFzcz0iZm9ybSI+CiAgICAgICAgICAgPGRpdiBjbGFzcz0idHdvIj4KICAgICAgICAgICAgIDxsYWJlbD4ke2EoIkNvbmZpcm1hdGlvbiBjb2RlIiwi56Gu6K6k56CBIil9PGlucHV0IGlkPSJmY29kZSIgdHlwZT0idGV4dCIgYXV0b2NvbXBsZXRlPSJvZmYiJHtqZCgpP2AgcGxhY2Vob2xkZXI9IiR7bChqZCgpKX0iYDoiIn0+PC9sYWJlbD4KICAgICAgICAgICAgIDxsYWJlbD4ke2EoIkVtYWlsIiwi6YKu566xIil9PGlucHV0IGlkPSJmbWFpbCIgdHlwZT0iZW1haWwiIGF1dG9jb21wbGV0ZT0ib2ZmIiBwbGFjZWhvbGRlcj0iJHthKCJUaGUgb25lIG9uIHRoZSBib29raW5nIiwi6aKE6K6i5pe255So55qE6YKu566xIil9Ij48L2xhYmVsPgogICAgICAgICAgIDwvZGl2PgogICAgICAgICAgIDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJsb29rdXAtYm9va2luZyI+JHthKCJGaW5kIGl0Iiwi5p+l5om+Iil9PC9idXR0b24+CiAgICAgICAgIDwvZGl2PmBdLmpvaW4oIiIpLCJuby1tZW1iZXIiOigpPT5gPGRpdiBjbGFzcz0iZW1wdHkiPiR7YSgiTm9ib2R5IGlzIHNpZ25lZCBpbiwgc28gdGhlcmUgaXMgbm90aGluZyBzYXZlZCB0byBmb3JnZXQuIiwi5b2T5YmN5rKh5pyJ55m75b2V77yM5rKh5pyJ5Y+v5riF6Zmk55qE5YGP5aW944CCIil9PC9kaXY+JHtPcyghMCl9YCwibWVtYmVyLXNpZ24taW4iOigpPT5bYDxkaXYgY2xhc3M9Im5vdGUiPiR7YSgiU2lnbiBpbiB3aXRoIHRoZSBtZW1iZXJzaGlwIG51bWJlciBhbmQgdGhlIHN1cm5hbWUgcHJpbnRlZCBvbiB0aGUgY2FyZCB0byBzZWUgdGhlIG1lbWJlciByYXRlIG9uIGV2ZXJ5IHByaWNlIGhlcmUuIiwi55So5Y2h5LiK5Y2w55qE5Lya5ZGY5Y+35ZKM5aeT5rCP55m75b2V77yM6L+Z6YeM55qE5q+P5Liq5Lu35qC86YO95Lya5pi+56S65Lya5ZGY5Lu344CCIil9PC9kaXY+YCxPcyghMCldLmpvaW4oIiIpfTsoaXQ9PT0iaG90ZWwifHxpdD09PSJuby1yb29tcyJ8fGl0PT09Im5lZWRzLWRhdGVzIikmJm4uaG90ZWw/LmlkPyhWdD1TdHJpbmcobi5ob3RlbC5pZCksbi5uZWVkc0RhdGVzJiZzZXRUaW1lb3V0KCgpPT5XdCgwLCFvYSksMCkpOihWdD0iIixJdSgpKTtjb25zdCByPUN0KG4pIT09Q3QoUCk7UD1uO2NvbnN0IGk9c1tpdF07cSgiY29udGVudCIpLmlubmVySFRNTD0oaT9pKG4pOmA8ZGl2IGNsYXNzPSJlcnIiPiR7bChuLmVycm9yPz9hKCJTb21ldGhpbmcgY2FtZSBiYWNrIHRoYXQgdGhpcyBjYXJkIGRvZXMgbm90IGtub3cgaG93IHRvIGRyYXcuIiwi5pS25Yiw5LqG6L+Z5byg5Y2h54mH5peg5rOV5pi+56S655qE5YaF5a6544CCIikpfSR7bi5kZXRhaWw/YDxicj4ke2wobi5kZXRhaWwpfWA6IiJ9PC9kaXY+YCkrSlMobik7Y29uc3QgYz1xKCJjb250ZW50Iik7Yy5jbGFzc0xpc3QucmVtb3ZlKCJlbnRlciIpLHImJmRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSE9PSJoaWRkZW4iJiYoYy5vZmZzZXRXaWR0aCxjLmNsYXNzTGlzdC5hZGQoImVudGVyIikpO2NvbnN0IHU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NvbnRlbnQgLmZsZXgtZGF0ZXMiKSxkPXU/LnF1ZXJ5U2VsZWN0b3IoIi5mZC5vbiIpO2lmKHUmJmQpe2NvbnN0IGg9Wy4uLnUucXVlcnlTZWxlY3RvckFsbCgiLmZkIildLHA9aFswXT8ub2Zmc2V0TGVmdD8/MCxtPWQub2Zmc2V0TGVmdC0odS5jbGllbnRXaWR0aC1kLm9mZnNldFdpZHRoKS8yLHk9aC5maWx0ZXIoXz0+Xy5vZmZzZXRMZWZ0PD1tKzEpLnBvcCgpPz9oWzBdO3Uuc2Nyb2xsTGVmdD1NYXRoLm1heCgwLCh5Py5vZmZzZXRMZWZ0Pz9wKS1wKTtjb25zdCAkPSgpPT57dS5jbGFzc0xpc3QudG9nZ2xlKCJhdC1zdGFydCIsdS5zY3JvbGxMZWZ0PD0yKSx1LmNsYXNzTGlzdC50b2dnbGUoImF0LWVuZCIsdS5zY3JvbGxMZWZ0K3UuY2xpZW50V2lkdGg+PXUuc2Nyb2xsV2lkdGgtMil9OyQoKSx1LmFkZEV2ZW50TGlzdGVuZXIoInNjcm9sbCIsJCx7cGFzc2l2ZTohMH0pfWl0PT09ImhvdGVscyImJiFWbigpJiYoeXU9a3UoKSxhYShOdW1iZXIobi50b3RhbD8/MCktTnVtYmVyKG4ub2Zmc2V0Pz8wKSkhPT1JcyYmJGUobix0KSl9LG1iPWU9PmU/LnZpZXc9PT0iaXRpbmVyYXJ5Ij8oZS5zdWdnZXN0aW9ucz8/W10pLmZpbmRJbmRleCh0PT5BcnJheS5pc0FycmF5KHQ/LmFza3MpJiZ0LmFza3MubGVuZ3RoPjAmJnQuYXNrcy5ldmVyeShuPT5uPy50b29sPT09ImFkZFRvVHJpcCIpKTotMSxKUz1lPT57Y29uc3QgdD0hIXhlLmdldEhvc3RDYXBhYmlsaXRpZXMoKT8ubWVzc2FnZSxuPXI9PmwoU3RyaW5nKHI/PyIiKS5yZXBsYWNlKC8iKFteIl0qKSIvZywi4oCcJDHigJ0iKSksbz1tYihlKSxzPShlLnN1Z2dlc3Rpb25zPz9bXSkubWFwKChyLGkpPT5pPT09bz8iIjpyPy5hc2t8fHI/LmFza3M/Lmxlbmd0aD9gPGJ1dHRvbiBjbGFzcz0iY2hpcCBuZXh0IiB0eXBlPSJidXR0b24iIGRhdGEtc3VnZ2VzdD0iJHtpfSI+PHNwYW4+JHtuKHIubGFiZWwpfTwvc3Bhbj4ke0kuYXJyb3d9PC9idXR0b24+YDpyPy5zYXkmJnQ/YDxidXR0b24gY2xhc3M9ImNoaXAgbmV4dCBzYXkiIHR5cGU9ImJ1dHRvbiIgZGF0YS1zdWdnZXN0PSIke2l9Ij48c3Bhbj4ke24oci5sYWJlbCl9IDxzbWFsbD7CtyBpbiB0aGUgY2hhdDwvc21hbGw+PC9zcGFuPiR7SS5hcnJvd308L2J1dHRvbj5gOiIiKS5qb2luKCIiKTtyZXR1cm4gcz9gPGRpdiBjbGFzcz0ic3VnZ2VzdCI+PGRpdiBjbGFzcz0id2wiPiR7YSgiTmV4dCIsIuaOpeS4i+adpSIpfTwvZGl2PiR7c308L2Rpdj5gOiIifSxZUz1lPT5bZS5ob3RlbD9ZZyhlLmhvdGVsKToiIixgPGRpdiBjbGFzcz0iZXJyIj4ke2woTiE9PSJlbiImJmUud2h5Q29kZSYmbGJbU3RyaW5nKGUud2h5Q29kZSldP1JzKGUud2h5LGUud2h5Q29kZSxlLndoeUFyZ3MpOk4hPT0iZW4iJiYhKG5uKCkmJm9uKFN0cmluZyhlLndoeT8/IiIpKSk/YSgiQ2hvb3NlIHRoZSBjaGVjay1pbiBhbmQgY2hlY2stb3V0IGRhdGVzIGJlZm9yZSB0aGUgcm9vbSBnb2VzIGludG8gdGhlIHRyaXAuIiwi6K+35YWI6YCJ5aW95YWl5L2P5ZKM56a75bqX5pel5pyf77yM5YaN5oqK5oi/6Ze05Yqg5YWl6KGM56iL44CCIik6ZS53aHk/PyJXaGljaCBuaWdodHM/IEEgcm9vbSBuZWVkcyBhIGNoZWNrLWluIGFuZCBhIGNoZWNrLW91dCBkYXRlLiIpfTwvZGl2PmAsRGcoU3RyaW5nKGUuaG90ZWw/LmlkPz8iIiksZS5ob3RlbD8udG9kYXlUaGVyZSldLmpvaW4oIiIpLFFTPWU9PmUudmlldz09PSJob3RlbHMifHxlLnZpZXc9PT0iaG90ZWwifHxlLnZpZXc9PT0ibm8tcm9vbXMifHxlLnZpZXc9PT0idHJpcCI/IiI6ZS52aWV3PT09ImNvbXBhcmlzb24iP2EoYCR7KGUuY29sdW1ucz8/W10pLmxlbmd0aH0gc2lkZSBieSBzaWRlYCxgJHsoZS5jb2x1bW5zPz9bXSkubGVuZ3RofSDlrrblr7nmr5RgKTplLnZpZXc9PT0iaXRpbmVyYXJ5Ij9OdW1iZXIoZS5ib29rZWQpPjA/YShgJHtlLmJvb2tlZH0vJHtlLnBsYW5uZWR9IGJvb2tlZGAsYOW3suiuoiAke2UuYm9va2VkfS8ke2UucGxhbm5lZH1gKTphKGAke2UuaW5UcmlwfS8ke2UucGxhbm5lZH0gaW4gdGhlIHRyaXBgLGDooYznqIvkuK0gJHtlLmluVHJpcH0vJHtlLnBsYW5uZWR9YCk6ZS52aWV3PT09ImJvb2tpbmdzIj9OdW1iZXIoZS5jb3VudCk9PT0xP2EoIjEgYm9va2luZyIsIjEg56yU6aKE6K6iIik6YShgJHtlLmNvdW50Pz8wfSBib29raW5nc2AsYCR7ZS5jb3VudD8/MH0g56yU6aKE6K6iYCk6IiIsWFM9KCk9Pntjb25zdCBlPXEoIm1lbWJlcmNoaXAiKTtuZT8oZS5oaWRkZW49ITEsZS50ZXh0Q29udGVudD1uZS50aWVyPy5uYW1lP2EoYCR7bmUudGllci5uYW1lfSDCtyAke01hdGgucm91bmQoKG5lLnRpZXI/LmRpc2NvdW50Pz8wKSoxMDApfSUgb2ZmYCxgJHtuZS50aWVyLm5hbWV9IMK3IOS8mOaDoCAke01hdGgucm91bmQoKG5lLnRpZXI/LmRpc2NvdW50Pz8wKSoxMDApfSVgKTphKGBNZW1iZXIgwrcgJHtNYXRoLnJvdW5kKChuZS50aWVyPy5kaXNjb3VudD8/MCkqMTAwKX0lIG9mZmAsYOS8muWRmCDCtyDkvJjmg6AgJHtNYXRoLnJvdW5kKChuZS50aWVyPy5kaXNjb3VudD8/MCkqMTAwKX0lYCksZS5zZXRBdHRyaWJ1dGUoImRhdGEtYWN0IiwibWVtYmVyIiksZS5zZXRBdHRyaWJ1dGUoInRpdGxlIixbbmUubmFtZSxuZS5wcm9ncmFtbWVdLmZpbHRlcih0PT50eXBlb2YgdD09InN0cmluZyImJnQpLmpvaW4oIiDCtyAiKSkpOihlLmhpZGRlbj0hUW8oInNpZ25JbiIpfHxpdD09PSJtZW1iZXItbm90LWZvdW5kIixlLnRleHRDb250ZW50PWEoIk1lbWJlciBzaWduIGluIiwi5Lya5ZGY55m75b2VIiksZS5zZXRBdHRyaWJ1dGUoImRhdGEtYWN0IiwiYXNrLXNpZ24taW4iKSxlLnJlbW92ZUF0dHJpYnV0ZSgidGl0bGUiKSl9LGVqPSgpPT57Y29uc3QgZT1xKCJoZWFkdHJpcCIpLHQ9Rm4/TnQ6TnR8fGZ0Lmxlbmd0aDtlLmhpZGRlbj10PT09MHx8aXQ9PT0idHJpcCIscSgiaGVhZHRyaXBuIikudGV4dENvbnRlbnQ9U3RyaW5nKHQpfSxrYT0oKT0+e2NvbnN0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNpIiksdD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY28iKSxuPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJndSIpO2o9e2NoZWNrSW46ZT8udmFsdWU/P2ouY2hlY2tJbixjaGVja091dDp0Py52YWx1ZT8/ai5jaGVja091dCxndWVzdHM6TnVtYmVyKG4/LnZhbHVlPz9qLmd1ZXN0cyl8fDJ9fSx4bj0oZT17fSk9PmouY2hlY2tJbiYmai5jaGVja091dD97Y2hlY2tJbjpqLmNoZWNrSW4sY2hlY2tPdXQ6ai5jaGVja091dCxndWVzdHM6ai5ndWVzdHMsLi4uZX06ZTtsZXQgV2EsTW49ITE7Y29uc3QgSXU9KCk9PntjbGVhclRpbWVvdXQoV2EpLE1uPSExfSxXdD0oZT0wLHQ9ITEpPT57VnQmJihjbGVhclRpbWVvdXQoV2EpLE1uPSEwLFdhPXNldFRpbWVvdXQoKCk9PntpZighVnQpe01uPSExO3JldHVybn1pZihUbil7V3QoMTUwLHQpO3JldHVybn1Nbj0hMSxNKCJnZXRIb3RlbCIse2hvdGVsOlZ0LHJvb21zOlYsLi4ueG4oKX0sdD97bm90ZTpOX306e30pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBsb2FkIHRob3NlIG5pZ2h0cy4iLCLmsqHog73liqDovb3ov5nkupvml6XmnJ/jgIIiKSkpfSxlKSl9LGhzPSgpPT57Zm9yKGNvbnN0IGUgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtcm9vbXMtbl0sW2RhdGEtbGlzdC1yb29tc10iKSl7Y29uc3QgdD1OdW1iZXIoZS5nZXRBdHRyaWJ1dGUoImRhdGEtcm9vbXMtbiIpPz9lLmdldEF0dHJpYnV0ZSgiZGF0YS1saXN0LXJvb21zIikpO2UuZGlzYWJsZWQ9dDwwP1Y8PTE6Vj49VXR9Zm9yKGNvbnN0IGUgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtZ3Vlc3RzLW5dIikpe2NvbnN0IHQ9TnVtYmVyKGUuZ2V0QXR0cmlidXRlKCJkYXRhLWd1ZXN0cy1uIikpO2UuZGlzYWJsZWQ9dDwwP2ouZ3Vlc3RzPD0xOmouZ3Vlc3RzPj14c31mb3IoY29uc3QgZSBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1ndWVzdHMtc2hvd25dIikpZS50ZXh0Q29udGVudD1TdHJpbmcoai5ndWVzdHMpO2Zvcihjb25zdCBlIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLXBhcnR5LXdvcmRzXSIpKWUudGV4dENvbnRlbnQ9TGcoKX0sTz1lPT57Zm9yKGNvbnN0IHQgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnNhaWQiKSl0LnJlbW92ZSgpO3EoImNvbnRlbnQiKS5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyYmVnaW4iLGA8ZGl2IGNsYXNzPSJlcnIgc2FpZCIgcm9sZT0iYWxlcnQiPiR7bChlKX08L2Rpdj5gKX0sdGo9ZT0+e2Zvcihjb25zdCBuIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5maWVsZC1lcnIsLmZvcm0tZXJyIikpbi5yZW1vdmUoKTtmb3IoY29uc3QgbiBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdbYXJpYS1pbnZhbGlkPSJ0cnVlIl0nKSluLnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1pbnZhbGlkIik7aWYoIWUubGVuZ3RoKXJldHVybjtmb3IoY29uc3Rbbiwsb11vZiBlKXtjb25zdCBzPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG4pO3MmJihzLnNldEF0dHJpYnV0ZSgiYXJpYS1pbnZhbGlkIiwidHJ1ZSIpLHMuc2V0QXR0cmlidXRlKCJhcmlhLWRlc2NyaWJlZGJ5IixgJHtufS1lcnJgKSxzLmluc2VydEFkamFjZW50SFRNTCgiYWZ0ZXJlbmQiLGA8c3BhbiBjbGFzcz0iZmllbGQtZXJyIiBpZD0iJHtufS1lcnIiPiR7SS5lcnJvcn08c3Bhbj4ke2wobyl9PC9zcGFuPjwvc3Bhbj5gKSl9Y29uc3QgdD1lLm1hcCgoWyxuXSk9Pm4pO2RvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNndWVzdCBbZGF0YS1hY3Q9ImJvb2siXScpPy5pbnNlcnRBZGphY2VudEhUTUwoImJlZm9yZWJlZ2luIixgPGRpdiBjbGFzcz0iZm9ybS1lcnIiIHJvbGU9ImFsZXJ0Ij4ke0kuZXJyb3J9PHNwYW4+JHtsKGUubGVuZ3RoPT09MT9hKGBDaGVjayAke3RbMF19IGJlZm9yZSBib29raW5nLmAsYOmihOiuouWJjeivt+ajgOafpe+8miR7dFswXX3jgIJgKTphKGAke2UubGVuZ3RofSB0aGluZ3MgdG8gY2hlY2sgYmVmb3JlIGJvb2tpbmc6ICR7RmEodCl9LmAsYOmihOiuouWJjeaciSAke2UubGVuZ3RofSDpobnpnIDopoHmo4Dmn6XvvJoke3Quam9pbigi44CBIil944CCYCkpfTwvc3Bhbj48L2Rpdj5gKSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZChlWzBdWzBdKT8uZm9jdXMoKX07ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiaW5wdXQiLGU9Pntjb25zdCB0PWUudGFyZ2V0OyF0Py5jbG9zZXN0KCIjZ3Vlc3QiKXx8dC5nZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIpIT09InRydWUifHx0LnZhbHVlLnRyaW0oKSYmKHQucmVtb3ZlQXR0cmlidXRlKCJhcmlhLWludmFsaWQiKSx0LnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1kZXNjcmliZWRieSIpLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGAke3QuaWR9LWVycmApPy5yZW1vdmUoKSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZ3Vlc3QgW2FyaWEtaW52YWxpZD0idHJ1ZSJdJyl8fGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNndWVzdCAuZm9ybS1lcnIiKT8ucmVtb3ZlKCkpfSk7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGU9Pntjb25zdCB0PWUudGFyZ2V0Py5jbG9zZXN0KCJbZGF0YS1ob3RlbF0sW2RhdGEtYWN0XSxbZGF0YS1wb2xpY3ldLFtkYXRhLWNhbmNlbF0sW2RhdGEtY29uZmlybS1jYW5jZWxdLFtkYXRhLWNvbmZpcm0tY2hhbmdlXSxbZGF0YS1leHRyYXNdLFtkYXRhLXJvb21zLW5dLFtkYXRhLWFza10sW2RhdGEtYm9va2luZy1leHRyYXNdLFtkYXRhLWJvb2tpbmctZXh0cmFdLFtkYXRhLXN1Z2dlc3RdLFtkYXRhLXBsYWNlXSxbZGF0YS1wbGFjZS1hbGxdLFtkYXRhLXNvcnRdLFtkYXRhLWxpc3Qtcm9vbXNdLFtkYXRhLWZpbHRlcl0sW2RhdGEtcGFuZWxdLFtkYXRhLXJlZ2lvbl0sW2RhdGEtZ3JvdXAtaG9tZV0sW2RhdGEtY2FsXSxbZGF0YS1kYXldLFtkYXRhLWNhbC1uYXZdLFtkYXRhLWNhbC1jbG9zZV0sW2RhdGEtaG91ci1zdGFydF0sW2RhdGEtYXJyaXZlXSxbZGF0YS1wYXJ0eV0sW2RhdGEtZ3Vlc3RzLW5dLFtkYXRhLXNwbGl0XSxbZGF0YS1vcGVuLWJvb2tpbmddLFtkYXRhLXN3YXBdLFtkYXRhLXJlc2VhcmNoXSxbZGF0YS1sYW5nXSIpO2lmKCF0KXJldHVybjtjb25zdCBuPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNhbCIpO2lmKG4hPT1udWxsKXtjb25zdFt2LFNdPW4uc3BsaXQoIjoiKTtndVt2XSYmVV8odixTPT09Im91dCI/Im91dCI6ImluIik7cmV0dXJufWNvbnN0IG89dC5nZXRBdHRyaWJ1dGUoImRhdGEtZGF5Iik7aWYobyE9PW51bGwpe1ZfKG8pO3JldHVybn1jb25zdCBzPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNhbC1uYXYiKTtpZihzIT09bnVsbCYmWil7Wi5tb250aD1NYShaLm1vbnRoLE51bWJlcihzKSkseHQoWi5wYWlyLGBbZGF0YS1jYWwtbmF2PSIke3N9Il1gKTtyZXR1cm59aWYodC5oYXNBdHRyaWJ1dGUoImRhdGEtY2FsLWNsb3NlIikmJlope2NvbnN0e3BhaXI6dn09WjtaLmluP0JnKCk6KFo9bnVsbCx4dCh2KSk7cmV0dXJufWNvbnN0IHI9dC5nZXRBdHRyaWJ1dGUoImRhdGEtYXNrIik7aWYociE9PW51bGwpe2NvbnN0IHY9dC5nZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIpIT09InRydWUiO3Quc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLFN0cmluZyh2KSk7Y29uc3QgUz1qU1tyXTt2JiZTJiZkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAuYXNrW2RhdGEtYXNrPSIke1N9Il1gKT8uc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLCJmYWxzZSIpLEthKCk7cmV0dXJufWNvbnN0IGk9dC5nZXRBdHRyaWJ1dGUoImRhdGEtc3BsaXQiKTtpZihpIT09bnVsbCl7Y29uc3RbdixTXT1pLnNwbGl0KCI6IikubWFwKE51bWJlcik7a2EoKSxWPU1hdGgubWluKFV0LE1hdGgubWF4KDEsdnx8MSkpLGouZ3Vlc3RzPU1hdGgubWluKHhzLE1hdGgubWF4KDEsU3x8MSkpLGhzKCksV3QoMCk7cmV0dXJufWlmKHQuaGFzQXR0cmlidXRlKCJkYXRhLXBhcnR5Iikpe0J0PSFCdDtmb3IoY29uc3QgdiBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1wYXJ0eV0iKSl2LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsU3RyaW5nKEJ0KSk7Zm9yKGNvbnN0IHYgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLnBhcnR5LXBhbmVsIikpdi5oaWRkZW49IUJ0O3JldHVybn1jb25zdCBjPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWd1ZXN0cy1uIik7aWYoYyE9PW51bGwpe3QuZ2V0QXR0cmlidXRlKCJkYXRhLW9uIik9PT0iZGF0YS1yb29tcy1uIiYma2EoKSxqLmd1ZXN0cz1NYXRoLm1pbih4cyxNYXRoLm1heCgxLGouZ3Vlc3RzK051bWJlcihjKSkpLGhzKCksdC5nZXRBdHRyaWJ1dGUoImRhdGEtb24iKT09PSJkYXRhLWxpc3Qtcm9vbXMiP3FuKDQ1MCk6VnQmJld0KDQ1MCk7cmV0dXJufWNvbnN0IHU9dC5nZXRBdHRyaWJ1dGUoImRhdGEtbGlzdC1yb29tcyIpO2lmKHUhPT1udWxsKXtWPU1hdGgubWluKFV0LE1hdGgubWF4KDEsVitOdW1iZXIodSkpKTtjb25zdCB2PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJscm4iKTt2JiYodi50ZXh0Q29udGVudD1TdHJpbmcoVikpLGhzKCkscW4oNDUwKTtyZXR1cm59Y29uc3QgZD10LmdldEF0dHJpYnV0ZSgiZGF0YS1yb29tcy1uIik7aWYoZCE9PW51bGwpe2thKCksVj1NYXRoLm1pbihVdCxNYXRoLm1heCgxLFYrTnVtYmVyKGQpKSk7Y29uc3Qgdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicm4iKTt2JiYodi50ZXh0Q29udGVudD1TdHJpbmcoVikpLGhzKCk7Y29uc3QgUz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibmlnaHRzIik7UyYmKFMudGV4dENvbnRlbnQ9SGcoKSksV3QoNDUwKTtyZXR1cm59Y29uc3QgaD10LmdldEF0dHJpYnV0ZSgiZGF0YS1hcnJpdmUiKTtpZihoIT09bnVsbCl7Y29uc3Qgdj10LmdldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIikhPT0idHJ1ZSI7Zm9yKGNvbnN0IEggb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtYXJyaXZlXSIpKUguc2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiLFN0cmluZyh2JiZIPT09dCkpO2NvbnN0IFM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImd0aW1lIik7UyYmKFMudmFsdWU9dj9oOiIiKSxLYSgpO3JldHVybn1jb25zdCBwPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWhvdXItc3RhcnQiKTtpZihwIT09bnVsbCl7VHUuc2V0KHQuZ2V0QXR0cmlidXRlKCJkYXRhLXJvb20iKT8/IiIscCksUCYmJGUoUCk7cmV0dXJufWNvbnN0IG09dC5nZXRBdHRyaWJ1dGUoImRhdGEtYWRkLXJvb20iKTtpZihtIT09bnVsbCYmdC5oYXNBdHRyaWJ1dGUoImRhdGEtc3RhcnQiKSl7TSgiYWRkVG9UcmlwIix7aG90ZWw6dC5nZXRBdHRyaWJ1dGUoImRhdGEtaG90ZWwiKT8/IiIscm9vbTptLHN0YXJ0VGltZTp0LmdldEF0dHJpYnV0ZSgiZGF0YS1zdGFydCIpPz8iIixyb29tczpOdW1iZXIodC5nZXRBdHRyaWJ1dGUoImRhdGEtbiIpPz8xKXx8MSxndWVzdHM6ai5ndWVzdHN9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgY2hhbmdlIHRoZSB0cmlwLiIsIuayoeiDveabtOaWsOihjOeoi+OAgiIpKSk7cmV0dXJufWlmKG0hPT1udWxsKXtjb25zdCB2PXQuZ2V0QXR0cmlidXRlKCJkYXRhLWhvdGVsIik/PyIiLFM9dC5jbGFzc0xpc3QuY29udGFpbnMoImFkZCIpJiYhdC5oYXNBdHRyaWJ1dGUoImRhdGEtY2kiKT9WOk51bWJlcih0LmdldEF0dHJpYnV0ZSgiZGF0YS1uIik/PzEpLEg9dC5oYXNBdHRyaWJ1dGUoImRhdGEtY2kiKT97Y2hlY2tJbjp0LmdldEF0dHJpYnV0ZSgiZGF0YS1jaSIpPz8iIixjaGVja091dDp0LmdldEF0dHJpYnV0ZSgiZGF0YS1jbyIpPz8iIixndWVzdHM6TnVtYmVyKHQuZ2V0QXR0cmlidXRlKCJkYXRhLWd1Iik/PzIpfTp4bigpO00oImFkZFRvVHJpcCIse2hvdGVsOnYscm9vbTptLHJvb21zOlMsLi4uSH0se3N0YXk6ISF0LmNsb3Nlc3QoIi5yb29tIikmJiF0LmNsYXNzTGlzdC5jb250YWlucygiYWRkIil9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgY2hhbmdlIHRoZSB0cmlwLiIsIuayoeiDveabtOaWsOihjOeoi+OAgiIpKSk7cmV0dXJufWNvbnN0IHk9dC5nZXRBdHRyaWJ1dGUoImRhdGEtbGFuZyIpO2lmKHkhPT1udWxsKXtpZih1dS5pbmNsdWRlcyh5KSl7cWc9eTt0cnl7d2luZG93LmxvY2FsU3RvcmFnZT8uc2V0SXRlbShNZyx5KX1jYXRjaHt9fXEoImxhbmdtZW51IikuaGlkZGVuPSEwLHEoImxhbmdidG4iKS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCJmYWxzZSIpLHNhKCk7cmV0dXJufWlmKHQuZ2V0QXR0cmlidXRlKCJkYXRhLWFjdCIpPT09ImxhbmctbWVudSIpe2NvbnN0IHY9cSgibGFuZ21lbnUiKS5oaWRkZW47cSgibGFuZ21lbnUiKS5oaWRkZW49IXYscSgibGFuZ2J0biIpLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsdj8idHJ1ZSI6ImZhbHNlIik7cmV0dXJufWNvbnN0ICQ9dC5nZXRBdHRyaWJ1dGUoImRhdGEtc3dhcCIpO2lmKCQhPT1udWxsKXtPZCgpO2NvbnN0W3YsU109JC5zcGxpdCgiOiIpLm1hcChOdW1iZXIpLEg9KFA/LmZhaWxlZD8/W10pW3Y/Py0xXSx1ZT1IPy5hbHRlcm5hdGl2ZXM/LltTPz8tMV07aWYoIUh8fCF1ZT8ucm9vbSlyZXR1cm47Y29uc3QgV2U9e2NoZWNrSW46SC5zdGF5Py5jaGVja0luLGNoZWNrT3V0Okguc3RheT8uY2hlY2tPdXQsZ3Vlc3RzOkguc3RheT8uZ3Vlc3RzPz9qLmd1ZXN0c307KGFzeW5jKCk9Pntmb3IoY29uc3QgRmUgb2YgSC5yb29tUmVmcz8/W10pYXdhaXQgTSgiYWRkVG9UcmlwIix7aG90ZWw6SC5ob3RlbElkLHJvb206RmUscm9vbXM6MCwuLi5XZX0se3N0YXk6ITB9KTtmb3IoY29uc3QgRmUgb2YgSC5leHRyYVJlZnM/P1tdKWF3YWl0IE0oImFkZFRvVHJpcCIse2hvdGVsOkguaG90ZWxJZCxleHRyYTpGZSxxdWFudGl0eTowfSx7c3RheTohMH0pO2F3YWl0IE0oImFkZFRvVHJpcCIse2hvdGVsOnVlLmhvdGVsSWQscm9vbTp1ZS5yb29tLHJvb21zOkgucm9vbXM/PzEsLi4uV2V9KX0pKCkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGNoYW5nZSB0aGUgdHJpcC4iLCLmsqHog73mm7TmlrDooYznqIvjgIIiKSkpO3JldHVybn1pZih0LmdldEF0dHJpYnV0ZSgiZGF0YS1hY3QiKT09PSJyZXRyeS10cmlwIil7T2QoKSxNKCJ2aWV3VHJpcCIse30pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBsb2FkIHRoZSB0cmlwLiIsIuayoeiDveWKoOi9veihjOeoi+OAgiIpKSk7cmV0dXJufWNvbnN0IF89dC5nZXRBdHRyaWJ1dGUoImRhdGEtcmVzZWFyY2giKTtpZihfIT09bnVsbCl7Y29uc3Qgdj0oUD8uZmFpbGVkPz9bXSlbTnVtYmVyKF8pXTtpZighdj8uY2l0eSlyZXR1cm47TSgibGlzdEhvdGVscyIse2NpdHk6di5jaXR5LGNoZWNrSW46di5zdGF5Py5jaGVja0luLGNoZWNrT3V0OnYuc3RheT8uY2hlY2tPdXQsZ3Vlc3RzOnYuc3RheT8uZ3Vlc3RzPz9qLmd1ZXN0cywuLi5OdW1iZXIodi5yb29tcyk+MT97cm9vbXM6TnVtYmVyKHYucm9vbXMpfTp7fX0pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBsb2FkIHRoZSBob3RlbHMuIiwi5rKh6IO95Yqg6L296YWS5bqX44CCIikpKTtyZXR1cm59Y29uc3QgQz10LmdldEF0dHJpYnV0ZSgiZGF0YS1hZGQtZXh0cmEiKTtpZihDIT09bnVsbCl7Y29uc3Qgdj10LmdldEF0dHJpYnV0ZSgiZGF0YS1kYXkiKTtNKCJhZGRUb1RyaXAiLHtob3RlbDp0LmdldEF0dHJpYnV0ZSgiZGF0YS1ob3RlbCIpPz8iIixleHRyYTpDLHF1YW50aXR5Ok51bWJlcih0LmdldEF0dHJpYnV0ZSgiZGF0YS1uIik/PzEpLC4uLnY/e2RheTp2fTp7fX0pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBjaGFuZ2UgdGhlIHRyaXAuIiwi5rKh6IO95pu05paw6KGM56iL44CCIikpKTtyZXR1cm59Y29uc3QgVD10LmdldEF0dHJpYnV0ZSgiZGF0YS1wbGFjZSIpO2lmKFQhPT1udWxsKXtjb25zdCB2PVA/LmFzaz8uc29ydCxTPVA/LnZpZXc9PT0iaG90ZWxzIj9QPy5hc2s/LnF1ZXJ5OnZvaWQgMDtHYSgpO2NvbnN0IEg9UD8udmlldz09PSJkZXN0aW5hdGlvbnMifHwhIVA/LnN0YXk/LmNoZWNrSW47TSgibGlzdEhvdGVscyIsey4uLlQ/e2NpdHk6VH06e30sLi4udj97c29ydDp2fTp7fSwuLi5UJiZTP3txdWVyeTpTfTp7fSwuLi5QPy52aWV3PT09ImhvdGVscyI/YnMoUD8uYXNrKTp7fSwuLi5IP0h0KCk6e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aG9zZSBob3RlbHMuIiwi5rKh6IO95Yqg6L296L+Z5Lqb6YWS5bqX44CCIikpKTtyZXR1cm59Y29uc3QgQT10LmdldEF0dHJpYnV0ZSgiZGF0YS1ncm91cC1ob21lIik7aWYoQSl7TSgibGlzdEhvdGVscyIse2FsbDohMCxncm91cDpBLC4uLkh0KCl9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aG9zZSBob3RlbHMuIiwi5rKh6IO95Yqg6L296L+Z5Lqb6YWS5bqX44CCIikpKTtyZXR1cm59Y29uc3QgUj10LmdldEF0dHJpYnV0ZSgiZGF0YS1maWx0ZXIiKTtpZihSPT09ImhvdXJseSIpe2NvbnN0e2hvdXJseTp2LC4uLlN9PVA/LmFzaz8/e307TSgibGlzdEhvdGVscyIsey4uLmdzKFMpLC4uLnY/e306e2hvdXJseTohMH19KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgZmlsdGVyIHRoZSBsaXN0LiIsIuayoeiDveetm+mAieWIl+ihqOOAgiIpKSk7cmV0dXJufWlmKFIhPT1udWxsKXtjb25zdCB2PVA/LmFzaz8/e30sUz1icyh2KTtpZihSLnN0YXJ0c1dpdGgoImdyb3VwOiIpKXtjb25zdCB1ZT1SLnNsaWNlKDYpO1MuZ3JvdXA9Uy5ncm91cD09PXVlP3ZvaWQgMDp1ZX1lbHNlIGlmKFIuc3RhcnRzV2l0aCgiYnJhbmQ6Iikpe2NvbnN0IHVlPVIuc2xpY2UoNik7Uy5icmFuZD1TLmJyYW5kPT09dWU/dm9pZCAwOnVlfWVsc2UgaWYoUi5zdGFydHNXaXRoKCJmYWNpbGl0eToiKSl7Y29uc3QgdWU9Ui5zbGljZSg5KSxXZT1TLmZhY2lsaXRpZXM/P1tdO1MuZmFjaWxpdGllcz1XZS5pbmNsdWRlcyh1ZSk/V2UuZmlsdGVyKEZlPT5GZSE9PXVlKTpbLi4uV2UsdWVdfWVsc2UoUj09PSJmcmVlQ2FuY2VsbGF0aW9uInx8Uj09PSJicmVha2Zhc3QiKSYmKFNbUl09IVNbUl0pO2NvbnN0IEg9YnMoUyk7TSgibGlzdEhvdGVscyIsey4uLkNkKHYpLC4uLkh9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgZmlsdGVyIHRoZSBsaXN0LiIsIuayoeiDveetm+mAieWIl+ihqOOAgiIpKSk7cmV0dXJufWNvbnN0IHJlPXQuZ2V0QXR0cmlidXRlKCJkYXRhLXNvcnQiKTtpZihyZSE9PW51bGwpe0dlPVdnO2NvbnN0e3NvcnQ6diwuLi5TfT1QPy5hc2s/P3t9O00oImxpc3RIb3RlbHMiLHsuLi5TLC4uLnJlIT09Imdyb3VwIj97c29ydDpyZX06e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgcmVvcmRlciB0aGUgbGlzdC4iLCLmsqHog73ph43mlrDmjpLluo/jgIIiKSkpO3JldHVybn1jb25zdCBZPXQuZ2V0QXR0cmlidXRlKCJkYXRhLXBsYWNlLWFsbCIpO2lmKFkhPT1udWxsKXtNKCJsaXN0SG90ZWxzIix7Y2l0eTpZLGFsbDohMCwuLi5IdCgpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhvc2UgaG90ZWxzLiIsIuayoeiDveWKoOi9vei/meS6m+mFkuW6l+OAgiIpKSk7cmV0dXJufWNvbnN0IEc9dC5nZXRBdHRyaWJ1dGUoImRhdGEtYm9va2luZy1leHRyYXMiKTtpZihHIT09bnVsbCl7TSgibGlzdEV4dHJhcyIsY3QoRykpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBsb2FkIHRoZSBhZGQtb25zLiIsIuayoeiDveWKoOi9vemZhOWKoOacjeWKoeOAgiIpKSk7cmV0dXJufWNvbnN0IHg9dC5nZXRBdHRyaWJ1dGUoImRhdGEtYm9va2luZy1leHRyYSIpO2lmKHghPT1udWxsKXtNKCJwcmV2aWV3Q2hhbmdlIix7Li4uY3QodC5nZXRBdHRyaWJ1dGUoImRhdGEtYm9va2luZyIpPz8iIiksZXh0cmE6eCxxdWFudGl0eTpOdW1iZXIodC5nZXRBdHRyaWJ1dGUoImRhdGEtbiIpPz8xKX0pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCB3b3JrIG91dCB0aGF0IGNoYW5nZS4iLCLmsqHog73orqHnrpfov5nmrKHkv67mlLnjgIIiKSkpO3JldHVybn1jb25zdCBRZT10LmdldEF0dHJpYnV0ZSgiZGF0YS1leHRyYXMiKTtpZihRZSE9PW51bGwpe00oImxpc3RFeHRyYXMiLHtob3RlbDpRZSwuLi54bigpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhlIGFkZC1vbnMuIiwi5rKh6IO95Yqg6L296ZmE5Yqg5pyN5Yqh44CCIikpKTtyZXR1cm59Y29uc3QgeXQ9dC5nZXRBdHRyaWJ1dGUoImRhdGEtcG9saWN5Iik7aWYoeXQhPT1udWxsKXtNKCJwb2xpY2llcyIse2hvdGVsOnQuZ2V0QXR0cmlidXRlKCJkYXRhLWhvdGVsIik/PyIiLHRvcGljOnl0fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhhdCBwb2xpY3kuIiwi5rKh6IO95Yqg6L296L+Z5p2h5pS/562W44CCIikpKTtyZXR1cm59Y29uc3QgcXQ9dC5nZXRBdHRyaWJ1dGUoImRhdGEtY2FuY2VsIik7aWYocXQhPT1udWxsKXtNKCJwcmV2aWV3Q2FuY2VsbGF0aW9uIixjdChxdCkpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCB3b3JrIG91dCB0aGUgZmVlLiIsIuayoeiDveiuoeeul+WPlua2iOi0ueeUqOOAgiIpKSk7cmV0dXJufWNvbnN0IEFuPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNvbmZpcm0tY2FuY2VsIik7aWYoQW4hPT1udWxsKXtNKCJjYW5jZWxCb29raW5nIix7Li4uY3QoQW4pLGNvbmZpcm1lZDohMH0pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBjYW5jZWwgdGhhdCBib29raW5nLiIsIuayoeiDveWPlua2iOi/meeslOmihOiuouOAgiIpKSk7cmV0dXJufWNvbnN0IGVzPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNvbmZpcm0tY2hhbmdlIik7aWYoZXMhPT1udWxsKXtjb25zdCB2PVA/LnRvPz97fSxTPVA/LmZyb20/P3t9LEg9UD8uYWRkT24sdWU9di5jaGVja0luJiYodi5jaGVja0luIT09Uy5jaGVja0lufHx2LmNoZWNrT3V0IT09Uy5jaGVja091dCk7TSgiY2hhbmdlQm9va2luZyIsey4uLmN0KGVzKSxjb25maXJtZWQ6ITAsLi4udWU/e2NoZWNrSW46di5jaGVja0luLGNoZWNrT3V0OnYuY2hlY2tPdXR9Ont9LC4uLkg/LmlkP3tleHRyYTpILmlkLHF1YW50aXR5Ok51bWJlcihILnRvKX06e30sLi4udi5yb29tcyE9PXZvaWQgMCYmTnVtYmVyKHYucm9vbXMpIT09TnVtYmVyKFMucm9vbXMpP3tyb29tczpOdW1iZXIodi5yb29tcyl9Ont9LC4uLnYucm9vbU5hbWUmJnYucm9vbU5hbWUhPT1TLnJvb21OYW1lP3tyb29tOnYucm9vbU5hbWV9Ont9fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGNoYW5nZSB0aGF0IGJvb2tpbmcuIiwi5rKh6IO95L+u5pS56L+Z56yU6aKE6K6i44CCIikpKTtyZXR1cm59Y29uc3QgSz10LmdldEF0dHJpYnV0ZSgiZGF0YS1hY3QiKTtpZihLPT09ImJhY2siKXtMZCgpO3JldHVybn1jb25zdCBSdT1LPT09ImJvb2tpbmdzIj8iYm9va2luZ3MiOnQuaGFzQXR0cmlidXRlKCJkYXRhLWhvdGVsIikmJiF0Lmhhc0F0dHJpYnV0ZSgiZGF0YS1jaSIpP2Bob3RlbDoke3QuZ2V0QXR0cmlidXRlKCJkYXRhLWhvdGVsIil9YDoiIjtpZihSdSYmZmUubGVuZ3RoJiZDdChmZS5hdCgtMSk/LnBheWxvYWQpPT09UnUpe0xkKCk7cmV0dXJufWNvbnN0IEV1PXQuZ2V0QXR0cmlidXRlKCJkYXRhLXJlZ2lvbiIpO2lmKEV1IT09bnVsbCl7Y29uc3Qgdj10LmdldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIpIT09InRydWUiO2Zvcihjb25zdCBTIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLXJlZ2lvbl0iKSlTLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsU3RyaW5nKHYmJlM9PT10KSk7Zm9yKGNvbnN0IFMgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtcmVnaW9uLWJvZHldIikpUy5oaWRkZW49IXZ8fFMuZ2V0QXR0cmlidXRlKCJkYXRhLXJlZ2lvbi1ib2R5IikhPT1FdTtyZXR1cm59aWYoSz09PSJtb3JlLWNvdW50cmllcyIpe2Zvcihjb25zdCB2IG9mKHQuY2xvc2VzdCgiW2RhdGEtcmVnaW9uLWJvZHldIik/P2RvY3VtZW50KS5xdWVyeVNlbGVjdG9yQWxsKCIuZGVzdFtoaWRkZW5dIikpdi5oaWRkZW49ITE7dC5jbG9zZXN0KCIucGxhY2VzIik/LnJlbW92ZSgpO3JldHVybn1pZihLPT09Im1vcmUtcGxhY2VzIil7Zm9yKGNvbnN0IHYgb2YodC5jbG9zZXN0KCIucGxhY2VzIik/P2RvY3VtZW50KS5xdWVyeVNlbGVjdG9yQWxsKCIuY2hpcC5wbGFjZVtoaWRkZW5dIikpdi5oaWRkZW49ITE7dC5yZW1vdmUoKTtyZXR1cm59Y29uc3QgdWE9dC5nZXRBdHRyaWJ1dGUoImRhdGEtcGFuZWwiKTtpZih1YSE9PW51bGwpe0dlPUdlPT09dWE/IiI6dWE7Zm9yKGNvbnN0IHYgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtcGFuZWwtYm9keV0iKSl2LmhpZGRlbj12LmdldEF0dHJpYnV0ZSgiZGF0YS1wYW5lbC1ib2R5IikhPT1HZTtmb3IoY29uc3QgdiBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1wYW5lbF0iKSl2LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsU3RyaW5nKHYuZ2V0QXR0cmlidXRlKCJkYXRhLXBhbmVsIik9PT1HZSkpO3JldHVybn1pZihLPT09ImNsZWFyLWZpbHRlcnMiKXtjb25zdHtob3VybHk6diwuLi5TfT1DZChQPy5hc2spO00oImxpc3RIb3RlbHMiLHY/Z3MoUyk6UykuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGNsZWFyIHRoZSBmaWx0ZXJzLiIsIuayoeiDvea4hemZpOetm+mAieOAgiIpKSk7cmV0dXJufWlmKEs9PT0iYWxsLWhvdGVscyIpe0dhKCksTSgibGlzdEhvdGVscyIse2FsbDohMCwuLi5IdCgpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhlIGhvdGVscy4iLCLmsqHog73liqDovb3phZLlupfjgIIiKSkpO3JldHVybn1pZihLPT09InByaWNlLWxpc3QiKXtxbigwKTtyZXR1cm59aWYoSz09PSJmaW5kLWJvb2tpbmciKXtjb25zdCB2PXt2aWV3OiJmaW5kLWJvb2tpbmcifTtObih2KSwkZSh2KSxsdCgpLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmY29kZSIpPy5mb2N1cygpO3JldHVybn1pZihLPT09Imxvb2t1cC1ib29raW5nIil7Y29uc3Qgdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmNvZGUiKT8udmFsdWUudHJpbSgpPz8iIixTPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmbWFpbCIpPy52YWx1ZS50cmltKCk/PyIiO2lmKCF2fHwhUy5pbmNsdWRlcygiQCIpKXtPKGEoIkJvdGggdGhlIGNvbmZpcm1hdGlvbiBjb2RlIGFuZCB0aGUgZW1haWwgdGhlIGJvb2tpbmcgd2FzIG1hZGUgd2l0aCwgcGxlYXNlLiIsIuivt+WQjOaXtuWhq+WGmeehruiupOeggeWSjOmihOiuouaXtueUqOeahOmCrueuseOAgiIpKTtyZXR1cm59TSgibGlzdEJvb2tpbmdzIix7Ym9va2luZzp2LGVtYWlsOlN9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9vayB0aGF0IHVwLiIsIuayoeiDveafpeWIsOOAgiIpKSk7cmV0dXJufWlmKEs9PT0iZmluZCIpe2ZiKCk7cmV0dXJufWlmKEs9PT0icGFnZS1uZXh0Inx8Sz09PSJwYWdlLXByZXYiKXtjb25zdCB2PVA7aWYoIXZ8fHYudmlldyE9PSJob3RlbHMiKXJldHVybjtjb25zdCBTPWFhKCksSD1OdW1iZXIodi5vZmZzZXQ/PzApLHVlPU1hdGgubWluKFMsKHYuaG90ZWxzPz9bXSkubGVuZ3RoKTtNKCJsaXN0SG90ZWxzIix7Li4udi5hc2s/P3t9LG9mZnNldDpLPT09InBhZ2UtbmV4dCI/SCt1ZTpNYXRoLm1heCgwLEgtUyksbGltaXQ6U30pLnRoZW4obHQpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBsb2FkIHRob3NlIGhvdGVscy4iLCLmsqHog73liqDovb3ov5nkupvphZLlupfjgIIiKSkpO3JldHVybn1pZihLPT09ImZ1bGxzY3JlZW4iKXt4ZS5yZXF1ZXN0RGlzcGxheU1vZGUoe21vZGU6ImZ1bGxzY3JlZW4ifSkudGhlbih2PT57VW49U3RyaW5nKHY/Lm1vZGU/P1VuKTtjb25zdCBTPVA7aWYoIVMpcmV0dXJuO2NvbnN0IEg9TnVtYmVyKFMudG90YWw/PzApO1ZuKCkmJlMudmlldz09PSJob3RlbHMiJiYoTnVtYmVyKFMub2Zmc2V0Pz8wKT4wfHwoUy5ob3RlbHM/P1tdKS5sZW5ndGg8TWF0aC5taW4oMTIsSCkpP00oImxpc3RIb3RlbHMiLHsuLi5TLmFzaz8/e30sbGltaXQ6MTJ9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aGUgaG90ZWxzLiIsIuayoeiDveWKoOi9vemFkuW6l+OAgiIpKSk6JGUoUyl9KS5jYXRjaCgoKT0+TyhhKCJUaGlzIGFwcCBjYW5ub3Qgb3BlbiBmdWxsIHNjcmVlbiBoZXJlLiIsIui/memHjOaXoOazleWFqOWxj+aJk+W8gOOAgiIpKSk7cmV0dXJufWlmKEs9PT0ibW9yZS1ob3RlbHMiKXtjb25zdCB2PVA7aWYoIXZ8fHYudmlldyE9PSJob3RlbHMiKXJldHVybjtNKCJsaXN0SG90ZWxzIix7Li4udi5hc2s/P3t9LG9mZnNldDpOdW1iZXIodi5vZmZzZXQ/PzApKyh2LmhvdGVscz8/W10pLmxlbmd0aCxsaW1pdDoxMn0se2ZvbGQ6Uz0+Uz8udmlldz09PSJob3RlbHMiP3suLi5TLGhvdGVsczpbLi4udi5ob3RlbHM/P1tdLC4uLlMuaG90ZWxzPz9bXV0sc2hvd246KHYuaG90ZWxzPz9bXSkubGVuZ3RoKyhTLmhvdGVscz8/W10pLmxlbmd0aCxvZmZzZXQ6TnVtYmVyKHYub2Zmc2V0Pz8wKSxwbGFjZXM6di5wbGFjZXMsLi4udi53aWRlbmVkP3t3aWRlbmVkOnYud2lkZW5lZH06e319OlN9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCBtb3JlIGhvdGVscy4iLCLmsqHog73liqDovb3mm7TlpJrphZLlupfjgIIiKSkpO3JldHVybn1pZihLPT09ImhvbWUiKXtNKCJsaXN0SG90ZWxzIix7fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhlIGhvdGVscy4iLCLmsqHog73liqDovb3phZLlupfjgIIiKSkpO3JldHVybn1pZigoSz09PSJtZW1iZXIifHxLPT09ImZpbmQtYm9va2luZyJ8fEs9PT0iYXNrLXNpZ24taW4iKSYmVG4pcmV0dXJuO2lmKEs9PT0ibWVtYmVyIil7aWYoIW5lKXJldHVybjtjb25zdCB2PXt2aWV3OiJtZW1iZXIiLG1lbWJlcjpuZX07Tm4odiksJGUodiksbHQoKTtyZXR1cm59aWYoSz09PSJhc2stc2lnbi1pbiIpe2NvbnN0IHY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZ25pbiIpO2lmKHYpdi5oaWRkZW49ITE7ZWxzZXtjb25zdCBTPXt2aWV3OiJtZW1iZXItc2lnbi1pbiJ9O05uKFMpLCRlKFMpLGx0KCl9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1udW0iKT8uZm9jdXMoKTtyZXR1cm59aWYoSz09PSJzaWduLWluIil7Y29uc3Qgdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW51bSIpPy52YWx1ZS50cmltKCk/PyIiLFM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1zdXIiKT8udmFsdWUudHJpbSgpPz8iIjtpZighdnx8IVMpe08oYSgiQm90aCB0aGUgbWVtYmVyc2hpcCBudW1iZXIgYW5kIHRoZSBzdXJuYW1lIG9uIGl0LCBwbGVhc2UuIiwi6K+35ZCM5pe25aGr5YaZ5Lya5ZGY5Y+35ZKM5Y2h5LiK55qE5aeT5rCP44CCIikpO3JldHVybn1NKCJzaWduSW4iLHtudW1iZXI6dixzdXJuYW1lOlN9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3Qgc2lnbiBpbi4iLCLmsqHog73nmbvlvZXjgIIiKSkpO3JldHVybn1pZihLPT09ImZvcmdldC1wcmVmcyIpe00oImZvcmdldFByZWZlcmVuY2VzIix7fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGZvcmdldCB0aGVtLiIsIuayoeiDvea4hemZpOOAgiIpKSk7cmV0dXJufWNvbnN0IE91PXQuZ2V0QXR0cmlidXRlKCJkYXRhLXN1Z2dlc3QiKTtpZihPdSE9PW51bGwpe2NvbnN0IHY9KFA/LnN1Z2dlc3Rpb25zPz9bXSlbTnVtYmVyKE91KV07dj8uYXNrPy50b29sP00oU3RyaW5nKHYuYXNrLnRvb2wpLHYuYXNrLmFyZ3M/P3t9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgZG8gdGhhdCBqdXN0IG5vdy4iLCLmmoLml7bmsqHog73lrozmiJDjgIIiKSkpOkFycmF5LmlzQXJyYXkodj8uYXNrcykmJnYuYXNrcy5sZW5ndGg/KGFzeW5jKCk9Pntmb3IoY29uc3RbUyxIXW9mIHYuYXNrcy5lbnRyaWVzKCkpYXdhaXQgTShTdHJpbmcoSC50b29sKSxILmFyZ3M/P3t9LHtwdXNoOlM9PT0wfSl9KSgpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBwdXQgYWxsIG9mIHRoZW0gaW4gdGhlIHRyaXAganVzdCBub3cuIiwi5pqC5pe25rKh6IO95YWo6YOo5Yqg5YWl6KGM56iL44CCIikpKTp2Py5zYXkmJnhlLnNlbmRNZXNzYWdlKHtyb2xlOiJ1c2VyIixjb250ZW50Olt7dHlwZToidGV4dCIsdGV4dDpTdHJpbmcodi5zYXkpfV19KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3Qgc2VuZCB0aGF0IHRvIHRoZSBjaGF0LiIsIuayoeiDveWPkemAgeWIsOWvueivneOAgiIpKSk7cmV0dXJufWlmKEs9PT0iYXNrLXRyaXAtYWdhaW4iKXt4ZS5zZW5kTWVzc2FnZSh7cm9sZToidXNlciIsY29udGVudDpbe3R5cGU6InRleHQiLHRleHQ6YSgiUGxlYXNlIHNob3cgbXkgdHJpcCBhZ2Fpbi4iLCLor7fph43mlrDmmL7npLrmiJHnmoTooYznqIvjgIIiKX1dfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IHNlbmQgdGhhdCB0byB0aGUgY2hhdC4iLCLmsqHog73lj5HpgIHliLDlr7nor53jgIIiKSkpO3JldHVybn1pZihLPT09InNpZ24tb3V0Iil7bmU9bnVsbCxNKCJzaWduT3V0Iix7fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IHNpZ24gb3V0LiIsIuayoeiDvemAgOWHuueZu+W9leOAgiIpKSk7cmV0dXJufWlmKEs9PT0iYXNrLWJvb2siKXtjb25zdCB2PXQuZ2V0QXR0cmlidXRlKCJkYXRhLWdyb3VwIik7diYmdiE9PXV0JiYodXQ9diwkZShQKSk7Y29uc3QgUz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3Vlc3QiKTtTJiYoUy5oaWRkZW49ITEpLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJnbmFtZSIpPy5mb2N1cygpO3JldHVybn1pZihLPT09ImJvb2siKXtjb25zdHtwaG9uZVJlcXVpcmVkOnZ9PXp1KCksUz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ25hbWUiKT8udmFsdWUudHJpbSgpPz8iIixIPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJnbWFpbCIpPy52YWx1ZS50cmltKCk/PyIiLHVlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncGhvbmUiKT8udmFsdWUudHJpbSgpPz8iIixXZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ25vdGUiKT8udmFsdWUudHJpbSgpPz8iIixGZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3RpbWUiKT8udmFsdWUudHJpbSgpPz8iIix6bj1bLi4uZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtYXNrXVthcmlhLXByZXNzZWQ9InRydWUiXScpXS5tYXAoa2I9PmtiLmRhdGFzZXQuYXNrPz8iIik7KEZlP0ZlPj0iMjI6MDAiOihuZT8ucHJlZmVyZW5jZXM/P1tdKS5pbmNsdWRlcygibGF0ZS1hcnJpdmFsIikpJiYhem4uaW5jbHVkZXMoImxhdGUtYXJyaXZhbCIpJiZ6bi5wdXNoKCJsYXRlLWFycml2YWwiKTtjb25zdCBxdT0hIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmVtZW1iZXIiKT8uY2hlY2tlZDtBZT17bmFtZTpTLGVtYWlsOkgsLi4udj97cGhvbmU6dWV9Ont9LG5vdGVzOldlLGFycml2aW5nQXQ6RmUscmVxdWVzdHM6em4scmVtZW1iZXI6cXV9O2NvbnN0IENuPVtdO2lmKFN8fENuLnB1c2goWyJnbmFtZSIsYSgiZnVsbCBuYW1lIiwi5aeT5ZCNIiksYSgiUmVxdWlyZWQ6IHRoZSBndWVzdCdzIGZ1bGwgbmFtZSwgYXMgb24gdGhlaXIgSUQuIiwi5b+F5aGr77ya5YWl5L2P5Lq65aeT5ZCN77yM5LiO6K+B5Lu25LiA6Ie044CCIildKSxILmluY2x1ZGVzKCJAIil8fENuLnB1c2goWyJnbWFpbCIsYSgiZW1haWwiLCLpgq7nrrEiKSxIP2EoIlRoYXQgZW1haWwgaGFzIG5vIOKAnEDigJ0gaW4gaXQg4oCUIHRoZSBjb25maXJtYXRpb24gbmVlZHMgYW4gYWRkcmVzcyBpdCBjYW4gcmVhY2guIiwi6YKu566x6YeM5rKh5pyJ4oCcQOKAne+8jOivt+Whq+WGmeiDveaUtuWIsOehruiupOS/oeaBr+eahOWcsOWdgOOAgiIpOmEoIlJlcXVpcmVkOiB5b3VyIGVtYWlsLiBXaXRoIGl0IGFuZCB0aGUgY29uZmlybWF0aW9uIGNvZGUsIHlvdSBjYW4gZmluZCB0aGlzIGJvb2tpbmcgYWdhaW4gZnJvbSBhbnkgY2hhdC4iLCLlv4XloavvvJrmjqXmlLbnoa7orqTkv6Hmga/nmoTpgq7nrrHvvIzlh63lroPlkoznoa7orqTnoIHmib7lm57pooTorqLjgIIiKV0pLHYmJnVlLnJlcGxhY2UoL1xEL2csIiIpLmxlbmd0aDw2JiZDbi5wdXNoKFsiZ3Bob25lIixhKCJwaG9uZSIsIuaJi+acuuWPtyIpLGEoIlJlcXVpcmVkOiBhIHBob25lIG51bWJlciwgc28gdGhlIGhvdGVsIGNhbiByZWFjaCB5b3UuIiwi5b+F5aGr77ya5omL5py65Y+377yM5pa55L6/6YWS5bqX6IGU57O75L2g44CCIildKSx0aihDbiksQ24ubGVuZ3RoKXJldHVybjtNKCJyZXF1ZXN0Qm9va2luZyIse25hbWU6UyxlbWFpbDpILC4uLnY/e3Bob25lOnVlfTp7fSwuLi5tZSYmdXQ/e2dyb3VwOnV0fTp7fSwuLi5XZT97bm90ZXM6V2V9Ont9LC4uLkZlP3thcnJpdmluZ0F0OkZlfTp7fSwuLi56bi5sZW5ndGg/e3JlcXVlc3RzOnpufTp7fSwuLi5xdT97cmVtZW1iZXJSZXF1ZXN0czohMH06e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgYXNrIGZvciB0aG9zZSByb29tcy4iLCLmsqHog73mj5DkuqTpooTorqLjgIIiKSkpO3JldHVybn1jb25zdCBadT10LmdldEF0dHJpYnV0ZSgiZGF0YS1vcGVuLWJvb2tpbmciKTtpZihadSE9PW51bGwmJlA/LnZpZXc9PT0iYm9va2luZ3MiKXtjb25zdCB2PShQLmJvb2tpbmdzPz9bXSkuZmluZChIPT5TdHJpbmcoSC5jb25maXJtYXRpb25Db2RlKT09PVp1KTtpZighdilyZXR1cm47Y29uc3QgUz17Li4uUCx2aWV3OiJib29raW5nIixib29raW5nOnYsYm9va2luZ3M6dm9pZCAwLHRvdGFsOnYucXVvdGU/LnRvdGFsLG9wZW5lZDohMCxzdWdnZXN0aW9uczp2b2lkIDB9O05uKFMpLCRlKFMpLGx0KCk7cmV0dXJufWlmKEs9PT0icGF5Iil7Y29uc3Qgdj10LmdldEF0dHJpYnV0ZSgiZGF0YS11cmwiKT8/IiIsUz10LmdldEF0dHJpYnV0ZSgiZGF0YS1jb2RlIik/PyIiO2lmKCF2KXJldHVybjt4ZS5vcGVuTGluayh7dXJsOnZ9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3Qgb3BlbiB0aGUgcGF5bWVudCBwYWdlLiIsIuayoeiDveaJk+W8gOS7mOasvumhteOAgiIpKSk7Y29uc3QgSD1EYXRlLnBhcnNlKHQuZ2V0QXR0cmlidXRlKCJkYXRhLXVudGlsIik/PyIiKXx8RGF0ZS5ub3coKSsxNSo2ZTQ7Q3UoKSx6ZT17Y29kZTpTLHVudGlsOkh9LHplLnRpbWVyPXNldFRpbWVvdXQoKCk9Pk51KFMpLFZhKTtyZXR1cm59aWYoSz09PSJwYXktY2hlY2siKXtjb25zdCB2PXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNvZGUiKT8/IiI7diYmZGIodik7cmV0dXJufWlmKEs9PT0ibmlnaHRseS1saXN0Iil7Y29uc3R7aG91cmx5OnYsLi4uU309Z3MoUD8uYXNrKTtNKCJsaXN0SG90ZWxzIixTKS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aGUgaG90ZWxzLiIsIuayoeiDveWKoOi9vemFkuW6l+WIl+ihqOOAgiIpKSk7cmV0dXJufWlmKEs9PT0iYm9va2luZ3MiKXtNKCJsaXN0Qm9va2luZ3MiLHt9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB5b3VyIGJvb2tpbmdzLiIsIuayoeiDveWKoOi9veS9oOeahOmihOiuouOAgiIpKSk7cmV0dXJufWlmKEs9PT0idHJpcCIpe00oInZpZXdUcmlwIix7fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhlIHRyaXAuIiwi5rKh6IO95Yqg6L296KGM56iL44CCIikpKTtyZXR1cm59aWYoKEs9PT0iaG91cmx5Inx8Sz09PSJuaWdodGx5IikmJlA/LmhvdGVsPy5pZCl7Y29uc3Qgdj1TdHJpbmcoUC5ob3RlbC5pZCk7TSgiZ2V0SG90ZWwiLEs9PT0iaG91cmx5Ij97aG90ZWw6dixob3VybHk6ITAsZ3Vlc3RzOmouZ3Vlc3RzfTp7aG90ZWw6diwuLi54bigpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhhdCBob3RlbC4iLCLmsqHog73liqDovb3ov5nlrrbphZLlupfjgIIiKSkpO3JldHVybn1jb25zdCBNdT10LmdldEF0dHJpYnV0ZSgiZGF0YS1ob3RlbCIpO2lmKE11KXtjb25zdCB2PXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNpIiksUz10LmdldEF0dHJpYnV0ZSgiZGF0YS1jbyIpO3YmJlMmJihqLmNoZWNrSW49dixqLmNoZWNrT3V0PVMpLE0oImdldEhvdGVsIix7aG90ZWw6TXUsLi4ueG4oKSwuLi5qLmNoZWNrSW4mJlY+MT97cm9vbXM6Vn06e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aGF0IGhvdGVsLiIsIuayoeiDveWKoOi9vei/meWutumFkuW6l+OAgiIpKSl9fSk7Y29uc3QgS2E9KCk9PntpZighZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImduYW1lIikpcmV0dXJuO2NvbnN0IGU9dD0+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodCk/LnZhbHVlPz8iIjtBZT17bmFtZTplKCJnbmFtZSIpLGVtYWlsOmUoImdtYWlsIiksLi4uenUoKS5waG9uZVJlcXVpcmVkP3twaG9uZTplKCJncGhvbmUiKX06e30sbm90ZXM6ZSgiZ25vdGUiKSxhcnJpdmluZ0F0OmUoImd0aW1lIikscmVxdWVzdHM6Wy4uLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ1tkYXRhLWFza11bYXJpYS1wcmVzc2VkPSJ0cnVlIl0nKV0ubWFwKHQ9PnQuZGF0YXNldC5hc2s/PyIiKSxyZW1lbWJlcjohIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmVtZW1iZXIiKT8uY2hlY2tlZH19O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixlPT57Y29uc3QgdD1lLnRhcmdldD8uaWQ/PyIiO1siZ25hbWUiLCJnbWFpbCIsImdwaG9uZSIsImdub3RlIiwiZ3RpbWUiLCJncmVtZW1iZXIiXS5pbmNsdWRlcyh0KSYmS2EoKX0pO2NvbnN0IExkPSgpPT57Zm9yKDtmZS5hdCgtMSk/LnBheWxvYWQ/LnZpZXc9PT0ibWVtYmVyIiYmIW5lOylmZT1mZS5zbGljZSgwLC0xKTtjb25zdCBlPWZlLmF0KC0xKTtpZighZXx8VG4peyRnKCk7cmV0dXJufWZlPWZlLnNsaWNlKDAsLTEpLENzKz0xLEl1KCksZ2IoKTtjb25zdCB0PWUudmVyc2lvbj09PXpzP3ZvaWQgMDp3XyhlLnBheWxvYWQpO3Q/KFA9ZS5wYXlsb2FkLE0odC5rZXksdC5hcmdzLHtwdXNoOiExfSkuY2F0Y2goKCk9PiRlKGUucGF5bG9hZCwhMCkpLmZpbmFsbHkobHQpKTooJGUoZS5wYXlsb2FkLCEwKSxsdCgpKX0sZmI9KCk9Pntjb25zdCBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3aGVyZSIpPy52YWx1ZS50cmltKCk/PyIiO2lmKCFlKXtPKGEoIldoZXJlIHRvPyBBIGNpdHksIGEgY291bnRyeSBvciBhIGhvdGVsLiIsIuaDs+WOu+WTqumHjO+8n+i+k+WFpeWfjuW4guOAgeWbveWutuaIlumFkuW6l+WQjeOAgiIpKTtyZXR1cm59R2EoKTtjb25zdCBuPShQPy5yZWdpb25zPz9bXSkuZmxhdE1hcChvPT4oby5jb3VudHJpZXM/P1tdKS5mbGF0TWFwKHM9PltzLm5hbWUsLi4uKHMuY2l0aWVzPz9bXSkubWFwKHI9PnIubmFtZSldKSkuZmluZChvPT5vLnRvTG93ZXJDYXNlKCk9PT1lLnRvTG93ZXJDYXNlKCkpO00oImxpc3RIb3RlbHMiLHsuLi5uP3tjaXR5Om59OntxdWVyeTplfSwuLi5IdCgpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IHNlYXJjaCBqdXN0IG5vdy4iLCLmmoLml7bmsqHog73mkJzntKLjgIIiKSkpfSxHYT0oKT0+e2NvbnN0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRjaSIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRjbyIpO2U/LnZhbHVlJiYoai5jaGVja0luPWUudmFsdWUpLHQ/LnZhbHVlJiYoai5jaGVja091dD10LnZhbHVlKSxlPy52YWx1ZSYmKG9hPSEwKX07bGV0IEphLEt0PSExO2NvbnN0IGdiPSgpPT57Y2xlYXJUaW1lb3V0KEphKSxLdD0hMX0sbmo9ZT0+ZT8udmlldz09PSJob3RlbHMifHxlPy52aWV3PT09Im5vLWhvdGVscyImJiEhZT8uYXNrLHFuPShlPTApPT57Y2xlYXJUaW1lb3V0KEphKSxLdD0hMCxKYT1zZXRUaW1lb3V0KCgpPT57aWYoIW5qKFApKXtLdD0hMTtyZXR1cm59aWYoVG4pe3FuKDE1MCk7cmV0dXJufUt0PSExLE0oImxpc3RIb3RlbHMiLHsuLi5ncyhQPy5hc2spLC4uLkh0KCl9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgcHJpY2UgdGhvc2UgbmlnaHRzLiIsIuayoeiDveS4uui/meS6m+aXpeacn+aKpeS7t+OAgiIpKSl9LGUpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixlPT57aWYoZS50YXJnZXQ/LmlkPT09IndoZXJlIiYmZS5rZXk9PT0iRW50ZXIiJiYhZS5pc0NvbXBvc2luZyl7ZS5wcmV2ZW50RGVmYXVsdCgpLGZiKCk7cmV0dXJufWlmKGUua2V5PT09IkVzY2FwZSImJlope2NvbnN0e3BhaXI6bn09WjtaPW51bGwseHQobixgW2RhdGEtY2FsPSIke259OmluIl1gKTtyZXR1cm59Y29uc3QgdD1lLnRhcmdldDshdHx8dC5nZXRBdHRyaWJ1dGUoInJvbGUiKSE9PSJidXR0b24ifHxlLmtleSE9PSJFbnRlciImJmUua2V5IT09IiAifHwoZS5wcmV2ZW50RGVmYXVsdCgpLHQuY2xpY2soKSl9KTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW92ZXIiLGU9PntpZighWnx8Wi5waWNraW5nIT09Im91dCJ8fCFaLmluKXJldHVybjtjb25zdCB0PWUudGFyZ2V0Py5jbG9zZXN0Py4oIi5jZFtkYXRhLWRheV0iKSxuPXQmJiF0Lmhhc0F0dHJpYnV0ZSgiZGlzYWJsZWQiKT90LmRhdGFzZXQuZGF5Pz8iIjoiIixvPVouaW47Zm9yKGNvbnN0IHMgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmNhbCAuY2RbZGF0YS1kYXldIikpe2NvbnN0IHI9cy5kYXRhc2V0LmRheT8/IiI7cy5jbGFzc0xpc3QudG9nZ2xlKCJyZWFjaCIsISFuJiZuPm8mJnI+byYmcjxuKSxzLmNsYXNzTGlzdC50b2dnbGUoInJlYWNoLWVuZCIsISFuJiZuPm8mJnI9PT1uKX19KTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGU9Pntjb25zdCB0PWUudGFyZ2V0O3Q/LnR5cGU9PT0iZGF0ZSImJihvYT0hMCk7Y29uc3Qgbz17ZGNpOlsiZGNpIiwiZGNvIl0sZGNvOlsiZGNpIiwiZGNvIl0sbGNpOlsibGNpIiwibGNvIl0sbGNvOlsibGNpIiwibGNvIl19W3Q/LmlkPz8iIl07aWYobyl7Y29uc3QgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChvWzBdKSx1PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG9bMV0pO2lmKCFjfHwhdSlyZXR1cm47aWYodC5pZD09PW9bMF0mJmMudmFsdWUpe2NvbnN0IGQ9SXQoYy52YWx1ZSwxKTt1Lm1pbj1kLCghdS52YWx1ZXx8dS52YWx1ZTw9Yy52YWx1ZSkmJih1LnZhbHVlPWQpfWouY2hlY2tJbj1jLnZhbHVlfHxqLmNoZWNrSW4sai5jaGVja091dD11LnZhbHVlfHxqLmNoZWNrT3V0LG9bMF09PT0ibGNpIiYmcW4oMzAwKTtyZXR1cm59aWYodD8uaWQhPT0iY2kiJiZ0Py5pZCE9PSJjbyIpcmV0dXJuO2NvbnN0IHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNpIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY28iKTtpZighc3x8IXIpcmV0dXJuO2lmKHQuaWQ9PT0iY2kiJiZzLnZhbHVlKXtjb25zdCBjPUl0KHMudmFsdWUsMSk7ci5taW49YywoIXIudmFsdWV8fHIudmFsdWU8PXMudmFsdWUpJiYoci52YWx1ZT1jKX1qLmNoZWNrSW49cy52YWx1ZXx8ai5jaGVja0luLGouY2hlY2tPdXQ9ci52YWx1ZXx8ai5jaGVja091dDtjb25zdCBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuaWdodHMiKTtpJiYoaS50ZXh0Q29udGVudD1IZygpKSxXdCgpfSk7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGU9Pntjb25zdCB0PWUudGFyZ2V0O3Q/LnRhZ05hbWU9PT0iSU1HIiYmdC5jbG9zZXN0KCIjY29udGVudCIpJiZ0LnJlbW92ZSgpfSwhMCk7Y29uc3QgYmI9KGUsdCk9Pnt0cnl7X2codCk7Y29uc3Qgbj1lP0pTT04uc3RyaW5naWZ5KGUpOiIiO2lmKG4mJm49PT1DZyYmSlNPTi5zdHJpbmdpZnkoUCk9PT1OZylyZXR1cm47ZT8uc3RheT8uY2hlY2tJbiYmKG9hPSEwKSxmZT1bXSxDcys9MSxJdSgpLGdiKCksR2U9V2csWj1udWxsLCRlKGUpfWNhdGNoKG4pe2NvbnNvbGUuZXJyb3IoIltjYXJkXSByZW5kZXIgZmFpbGVkIixuKSxxKCJjb250ZW50IikuaW5uZXJIVE1MPWA8ZGl2IGNsYXNzPSJlbXB0eSI+JHthKCJUaGlzIGNhcmQgY291bGQgbm90IGJlIGRyYXduLiBBc2sgYWdhaW4gaW4gdGhlIGNoYXQuIiwi6L+Z5byg5Y2h54mH5rKh6IO95pi+56S677yM6K+35Zyo5a+56K+d6YeM5YaN6Zeu5LiA5qyh44CCIil9PC9kaXY+YH19O3hlLm9udG9vbHJlc3VsdD1lPT5iYihlPy5zdHJ1Y3R1cmVkQ29udGVudCxlPy5fbWV0YSk7Y29uc3QgdmI9ZT0+e2NvbnN0IHQ9eGEoZT8ubG9jYWxlKTt0JiZ0IT09WmEmJihaYT10LHNhKCkpLEFycmF5LmlzQXJyYXkoZT8uYXZhaWxhYmxlRGlzcGxheU1vZGVzKSYmKEpnPWUuYXZhaWxhYmxlRGlzcGxheU1vZGVzLm1hcChTdHJpbmcpKSx0eXBlb2YgZT8uZGlzcGxheU1vZGU9PSJzdHJpbmciJiZlLmRpc3BsYXlNb2RlIT09VW4mJihVbj1lLmRpc3BsYXlNb2RlLFA/LnZpZXc9PT0iaG90ZWxzIiYmJGUoUCkpfTtsZXQgQmQ7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsKCk9PntjbGVhclRpbWVvdXQoQmQpLEJkPXNldFRpbWVvdXQoKCk9PntpZihQPy52aWV3IT09ImhvdGVscyJ8fFZuKCkpcmV0dXJuO3l1PWt1KCk7Y29uc3QgZT1OdW1iZXIoUC50b3RhbD8/MCktTnVtYmVyKFAub2Zmc2V0Pz8wKTthYShlKSE9PUlzJiYkZShQKX0sMTUwKX0pO3hlLm9uaG9zdGNvbnRleHRjaGFuZ2VkPWU9PntiZyhlLGtnKSx2YihlKSxkdSgpfTtzYSghMSk7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGU9PnshcSgibGFuZ21lbnUiKS5oaWRkZW4mJiFlLnRhcmdldD8uY2xvc2VzdD8uKCIubGFuZ3BpY2siKSYmKHEoImxhbmdtZW51IikuaGlkZGVuPSEwLHEoImxhbmdidG4iKS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCJmYWxzZSIpKX0pO3hlLmNvbm5lY3QoKS50aGVuKCgpPT57Y29uc3QgZT14ZS5nZXRIb3N0Q29udGV4dCgpO2JnKGUsa2cpLHZiKGUpLGR1KCk7Y29uc3QgdD1lPy50b29sSW5mbz8ucmVzdWx0Py5zdHJ1Y3R1cmVkQ29udGVudDt0JiZiYih0LGU/LnRvb2xJbmZvPy5yZXN1bHQ/Ll9tZXRhKX0pLmNhdGNoKCgpPT57cSgiY29udGVudCIpLmlubmVySFRNTD1gPGRpdiBjbGFzcz0iZW1wdHkiPiR7YSgiQ291bGQgbm90IGNvbm5lY3QgdG8gdGhlIGhvc3QuIiwi5rKh6IO96L+e5o6l5Yiw5a6/5Li744CCIil9PC9kaXY+YH0pOzwvc2NyaXB0PgogICAgPHN0eWxlIHJlbD0ic3R5bGVzaGVldCIgY3Jvc3NvcmlnaW4+OnJvb3R7LS1raXQtYmc6ICNmZmZmZmY7LS1raXQtYmctc29mdDogI2Y2ZjdmOTstLWtpdC1mZzogIzFhMWYyYjstLWtpdC1mZy1zb2Z0OiAjNjI2YjdhOy0ta2l0LWZnLWZhaW50OiAjOGE5M2ExOy0ta2l0LWxpbmU6ICNlM2U3ZWQ7LS1raXQtYWNjZW50OiAjMWExZjJiOy0ta2l0LWFjY2VudC1mZzogI2ZmZmZmZjstLWtpdC1saW5rOiAjMjU2M2ViOy0ta2l0LWdvb2Q6ICMxYTdmNWE7LS1raXQtZ29vZC1iZzogI2RkZjNlNDstLWtpdC1iYWQ6ICNiMzI2MWU7LS1raXQtYmFkLWJnOiAjZmJlNmU0Oy0ta2l0LXdhcm46ICM4YTVhMDA7LS1raXQtd2Fybi1iZzogI2ZkZjBkNTstLWtpdC1yaW5nOiAjMjU2M2VifVtkYXRhLXRoZW1lPWRhcmtdey0ta2l0LWJnOiAjMWQxZjIzOy0ta2l0LWJnLXNvZnQ6ICMyNjI5MmU7LS1raXQtZmc6ICNlY2VlZjE7LS1raXQtZmctc29mdDogI2E0YWJiNjstLWtpdC1mZy1mYWludDogIzdjODQ5MTstLWtpdC1saW5lOiAjMzYzYTQxOy0ta2l0LWFjY2VudDogI2VjZWVmMTstLWtpdC1hY2NlbnQtZmc6ICMxZDFmMjM7LS1raXQtbGluazogIzdhYTdmZjstLWtpdC1nb29kOiAjNmZkM2EyOy0ta2l0LWdvb2QtYmc6ICMxZjNhMmQ7LS1raXQtYmFkOiAjZmY4YTgwOy0ta2l0LWJhZC1iZzogIzNkMjMyMjstLWtpdC13YXJuOiAjZjJjNDZiOy0ta2l0LXdhcm4tYmc6ICMzYTMwMjA7LS1raXQtcmluZzogIzdhYTdmZn06cm9vdHstLWJnOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnksIHZhcigtLWtpdC1iZykpOy0tYmctc29mdDogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnksIHZhcigtLWtpdC1iZy1zb2Z0KSk7LS1mZzogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCB2YXIoLS1raXQtZmcpKTstLWZnLXNvZnQ6IHZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5LCB2YXIoLS1raXQtZmctc29mdCkpOy0tZmctZmFpbnQ6IHZhcigtLWNvbG9yLXRleHQtdGVydGlhcnksIHZhcigtLWtpdC1mZy1mYWludCkpOy0tbGluZTogdmFyKC0tY29sb3ItYm9yZGVyLXByaW1hcnksIHZhcigtLWtpdC1saW5lKSk7LS1hY2NlbnQ6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtaW52ZXJzZSwgdmFyKC0ta2l0LWFjY2VudCkpOy0tYWNjZW50LWZnOiB2YXIoLS1jb2xvci10ZXh0LWludmVyc2UsIHZhcigtLWtpdC1hY2NlbnQtZmcpKTstLWxpbms6IHZhcigtLWNvbG9yLXRleHQtaW5mbywgdmFyKC0ta2l0LWxpbmspKTstLWdvb2Q6IHZhcigtLWNvbG9yLXRleHQtc3VjY2VzcywgdmFyKC0ta2l0LWdvb2QpKTstLWdvb2QtYmc6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtc3VjY2VzcywgdmFyKC0ta2l0LWdvb2QtYmcpKTstLWJhZDogdmFyKC0tY29sb3ItdGV4dC1kYW5nZXIsIHZhcigtLWtpdC1iYWQpKTstLWJhZC1iZzogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1kYW5nZXIsIHZhcigtLWtpdC1iYWQtYmcpKTstLXdhcm46IHZhcigtLWNvbG9yLXRleHQtd2FybmluZywgdmFyKC0ta2l0LXdhcm4pKTstLXdhcm4tYmc6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtd2FybmluZywgdmFyKC0ta2l0LXdhcm4tYmcpKTstLXJpbmc6IHZhcigtLWNvbG9yLXJpbmctcHJpbWFyeSwgdmFyKC0ta2l0LXJpbmcpKTstLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZywgMTRweCk7LS1yYWRpdXMtc206IHZhcigtLWJvcmRlci1yYWRpdXMtc20sIDlweCk7LS1mb250OiB2YXIoLS1mb250LXNhbnMsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgIlNlZ29lIFVJIiwgUm9ib3RvLCBzYW5zLXNlcmlmKTstLW1vbm86IHZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlLCAiU0YgTW9ubyIsIE1lbmxvLCBtb25vc3BhY2UpOy0tc2hhZG93OiB2YXIoLS1zaGFkb3ctc20sIDAgMXB4IDJweCByZ2JhKDEwLCAyMCwgNDAsIC4wNCksIDAgMnB4IDVweCByZ2JhKDEwLCAyMCwgNDAsIC4wNCkpfSp7Ym94LXNpemluZzpib3JkZXItYm94fWJvZHl7bWFyZ2luOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udCk7Y29sb3I6dmFyKC0tZmcpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZH0uY2FyZHtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKTtiYWNrZ3JvdW5kOnZhcigtLWJnKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdyk7bWF4LXdpZHRoOjU2MHB4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWxlZnQ6dmFyKC0taW5zZXQtbGVmdCwgMHB4KTtwYWRkaW5nLXJpZ2h0OnZhcigtLWluc2V0LXJpZ2h0LCAwcHgpfS5oZWFke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjE0cHggMThweCAwfS5oZWFkIC50aXRsZXtmb250LXNpemU6MTVweDtmb250LXdlaWdodDo2NTA7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5oZWFkIC50aXRsZVtoaWRkZW5de2Rpc3BsYXk6bm9uZX0jY29udGVudHtwYWRkaW5nOjEwcHggMThweCAxOHB4fS5yZWZyZXNoe21hcmdpbi1sZWZ0OjhweDthbGlnbi1zZWxmOmNlbnRlcjtmbGV4Om5vbmU7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjt3aWR0aDoyOHB4O2hlaWdodDoyOHB4O3BhZGRpbmc6MDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1iZyk7Y29sb3I6dmFyKC0tZmctc29mdCk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjEycyxjb2xvciAuMTJzfS5yZWZyZXNoOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2NvbG9yOnZhcigtLWZnKTtib3JkZXItY29sb3I6dmFyKC0tZmctc29mdCl9LnJlZnJlc2g6ZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHQ7b3BhY2l0eTouNn0ucmVmcmVzaFtoaWRkZW5de2Rpc3BsYXk6bm9uZX0ucmVmcmVzaCBzdmd7d2lkdGg6MTNweDtoZWlnaHQ6MTNweDtkaXNwbGF5OmJsb2NrfS5yZWZyZXNoLmJ1c3kgc3Zne2FuaW1hdGlvbjpraXQtc3BpbiAuN3MgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMga2l0LXNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0uZW1wdHl7cGFkZGluZzoxOHB4IDA7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6dmFyKC0tZmctc29mdCk7Zm9udC1zaXplOjEzcHh9LmhpbnR7bWFyZ2luLXRvcDo4cHg7Zm9udC1zaXplOjEycHg7Y29sb3I6dmFyKC0tZmctc29mdCk7dGV4dC1hbGlnbjpjZW50ZXJ9Lm5vdGV7Zm9udC1zaXplOjEyLjVweDtjb2xvcjp2YXIoLS1mZy1zb2Z0KTtwYWRkaW5nOjAgMCAxMHB4fS5tb25ve2ZvbnQtZmFtaWx5OnZhcigtLW1vbm8pO2ZvbnQtc2l6ZToxMS41cHg7Y29sb3I6dmFyKC0tZmctZmFpbnQpfS5iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6M3B4IDlweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZToxMS41cHg7Zm9udC13ZWlnaHQ6NjAwO3doaXRlLXNwYWNlOm5vd3JhcH0uYmFkZ2Uub2t7Y29sb3I6dmFyKC0tZ29vZCk7YmFja2dyb3VuZDp2YXIoLS1nb29kLWJnKX0uYmFkZ2Uud2FybiwuYmFkZ2UudG9kb3tjb2xvcjp2YXIoLS13YXJuKTtiYWNrZ3JvdW5kOnZhcigtLXdhcm4tYmcpfS5iYWRnZS5lcnJ7Y29sb3I6dmFyKC0tYmFkKTtiYWNrZ3JvdW5kOnZhcigtLWJhZC1iZyl9LmJ1eXttYXJnaW4tdG9wOjE0cHg7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjQ0cHg7cGFkZGluZzoxMXB4IDE0cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1hY2NlbnQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50LWZnKTtmb250LWZhbWlseTp2YXIoLS1mb250KTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo2NTA7Y3Vyc29yOnBvaW50ZXJ9LmJ1eTpkaXNhYmxlZHtiYWNrZ3JvdW5kOnZhcigtLWJnLXNvZnQpO2JvcmRlci1jb2xvcjp2YXIoLS1saW5lKTtjb2xvcjp2YXIoLS1mZy1mYWludCk7Y3Vyc29yOmRlZmF1bHR9LmJ1eS5hbHQsLmdob3N0e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tZmcpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tbGluZSl9Lmdob3N0e2ZsZXg6MTttaW4taGVpZ2h0OjQwcHg7cGFkZGluZzo5cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udCk7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tZmctc29mdCk7Y3Vyc29yOnBvaW50ZXJ9Lmxpbmt7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO3BhZGRpbmc6NnB4IDAgMDtjb2xvcjp2YXIoLS1saW5rKTtmb250LWZhbWlseTp2YXIoLS1mb250KTtmb250LXNpemU6MTIuNXB4O2N1cnNvcjpwb2ludGVyO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnF0eXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHh9LnF0eSBidXR0b257d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWJnKTtjb2xvcjp2YXIoLS1mZyk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udCk7Zm9udC1zaXplOjE3cHg7bGluZS1oZWlnaHQ6MTtjdXJzb3I6cG9pbnRlcn0ucXR5IHNwYW57bWluLXdpZHRoOjI2cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjEzLjVweDtmb250LXdlaWdodDo2NTB9LmNrLXBhZ2Vye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXdyYXA6d3JhcDtnYXA6OHB4IDEycHg7bWFyZ2luLXRvcDoxNHB4fS5jay1wYWdlci1idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NHB4O21pbi13aWR0aDoxMTJweDtoZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTRweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWJnKTtjb2xvcjp2YXIoLS1mZyk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udCk7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xMnMsYm9yZGVyLWNvbG9yIC4xMnMsY29sb3IgLjEyc30uY2stcGFnZXItYnRuIHN2ZywuY2stcGFnZXItYWxsIHN2Z3t3aWR0aDoxNHB4O2hlaWdodDoxNHB4O2ZsZXg6bm9uZX0uY2stcGFnZXItYnRuOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2JhY2tncm91bmQ6dmFyKC0tYmctc29mdCk7Ym9yZGVyLWNvbG9yOnZhcigtLWZnLWZhaW50KX0uY2stcGFnZXItYnRuOmFjdGl2ZTpub3QoOmRpc2FibGVkKXt0cmFuc2Zvcm06dHJhbnNsYXRlWSguNXB4KX0uY2stcGFnZXItYnRuOmRpc2FibGVke2NvbG9yOnZhcigtLWZnLWZhaW50KTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O29wYWNpdHk6LjY7Y3Vyc29yOmRlZmF1bHR9LmNrLXBhZ2VyLW57bWluLXdpZHRoOjhjaDt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tZmctc29mdCk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5jay1wYWdlci1hbGx7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3dpZHRoOmZpdC1jb250ZW50O2hlaWdodDozMnB4O21hcmdpbjo2cHggYXV0byAwO3BhZGRpbmc6MCAxMnB4O2JvcmRlcjowO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDpub25lO2NvbG9yOnZhcigtLWZnLXNvZnQpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQpO2ZvbnQtc2l6ZToxMi41cHg7Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTJzLGNvbG9yIC4xMnN9LmNrLXBhZ2VyLWFsbDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXNvZnQpO2NvbG9yOnZhcigtLWZnKX0uY2stcGFnZXItYWxsOmZpcnN0LWNoaWxkLC5ncmlkKy5jay1wYWdlci1hbGx7bWFyZ2luLXRvcDoxNHB4fWJ1dHRvbjpmb2N1cy12aXNpYmxlLGE6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1yaW5nKTtvdXRsaW5lLW9mZnNldDoycHh9QG1lZGlhKG1heC13aWR0aDo0MzBweCl7LmNhcmR7Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykgLSAycHgpfS5oZWFke3BhZGRpbmc6MTJweCAxNHB4IDB9I2NvbnRlbnR7cGFkZGluZzo4cHggMTRweCAxNHB4fS5idXl7bWluLWhlaWdodDo0OHB4O2ZvbnQtc2l6ZToxNXB4fS5naG9zdHttaW4taGVpZ2h0OjQ0cHg7Zm9udC1zaXplOjEzLjVweH0uY2stcGFnZXItYnRue21pbi13aWR0aDoxMDRweDtoZWlnaHQ6NDBweH0uY2stcGFnZXItYWxse2hlaWdodDozNnB4fS5xdHkgYnV0dG9ue3dpZHRoOjQycHg7aGVpZ2h0OjQycHg7Zm9udC1zaXplOjE5cHh9LnJlZnJlc2h7d2lkdGg6MzRweDtoZWlnaHQ6MzRweH0uaGludCwubm90ZSwuZW1wdHl7Zm9udC1zaXplOjEzcHh9fUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LnJlZnJlc2guYnVzeSBzdmd7YW5pbWF0aW9uOm5vbmV9Knt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fX06cm9vdHstLWJmLXByaW1hcnk6ICMxZDRlZDg7LS1iZi1zdWNjZXNzOiAjMDU5NjY5Oy0tYmYtd2FybmluZzogI2Q5NzcwNjstLWJmLWVycm9yOiAjZWY0NDQ0Oy0tYmYtaW5mbzogIzI1NjNlYjstLWJmLXN1cmZhY2U6ICNmZmZmZmY7LS1jLWJnOiB2YXIoLS1iZi1zdXJmYWNlKTstLWMtc3VuazogI2Y0ZjZmYTstLWMtcmFpc2U6ICNmZmZmZmY7LS1jLWluazogIzBjMTQyNDstLWMtaW5rLTI6ICMzZjRjNjM7LS1jLWluay0zOiAjNWI2ODdlOy0tYy1saW5lOiAjZTNlOGYwOy0tYy1saW5lLTI6ICNjY2Q0ZTE7LS1jLXByaW1hcnk6IHZhcigtLWJmLXByaW1hcnkpOy0tYy1wcmltYXJ5LWhvdmVyOiAjMWE0NGMyOy0tYy1wcmltYXJ5LXByZXNzOiAjMTYzYWE2Oy0tYy1wcmltYXJ5LWluazogIzFkNGVkODstLWMtcHJpbWFyeS1zb2Z0OiAjZWRmMmZlOy0tYy1wcmltYXJ5LXNvZnQtMjogI2RiZTVmZDstLWMtb24tcHJpbWFyeTogI2ZmZmZmZjstLWMtc3VjY2VzczogdmFyKC0tYmYtc3VjY2Vzcyk7LS1jLXN1Y2Nlc3MtaW5rOiAjMDQ3ODU3Oy0tYy1zdWNjZXNzLXNvZnQ6ICNlN2Y2ZWY7LS1jLXdhcm5pbmc6IHZhcigtLWJmLXdhcm5pbmcpOy0tYy13YXJuaW5nLWluazogI2I0NTMwOTstLWMtd2FybmluZy1zb2Z0OiAjZmRmM2UyOy0tYy1lcnJvcjogdmFyKC0tYmYtZXJyb3IpOy0tYy1lcnJvci1pbms6ICNjNDJiMmI7LS1jLWVycm9yLXNvZnQ6ICNmZGVkZWQ7LS1jLWluZm86IHZhcigtLWJmLWluZm8pOy0tYy1pbmZvLWluazogIzFmNTVkNjstLWMtaW5mby1zb2Z0OiAjZWRmM2ZlOy0tYy1zdGFyOiAjYjc3OTFmOy0tYy1zaGFkb3c6IDAgMXB4IDJweCByZ2IoMTYgMjQgNDAgLyA1JSksIDAgMXB4IDFweCByZ2IoMTYgMjQgNDAgLyAzJSk7LS1jLXNoYWRvdy0yOiAwIDFweCAycHggcmdiKDE2IDI0IDQwIC8gNiUpLCAwIDhweCAyNHB4IC0xMHB4IHJnYigxNiAyNCA0MCAvIDE4JSk7LS1jLXNoYWRvdy1jYXJkOiAwIDFweCAycHggcmdiKDE2IDI0IDQwIC8gNCUpLCAwIDEycHggMzJweCAtMThweCByZ2IoMTYgMjQgNDAgLyAyMiUpOy0tYy1zY3JpbTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiKDggMTIgMjIgLyAwJSkgMzUlLCByZ2IoOCAxMiAyMiAvIDcyJSkgMTAwJSk7LS1yLWNhcmQ6IDIwcHg7LS1yLWxnOiAxNnB4Oy0tci1tZDogMTJweDstLXItc206IDlweDstLWYtc2FuczogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU0YgUHJvIFRleHQiLCAiU2Vnb2UgVUkgVmFyaWFibGUgVGV4dCIsICJTZWdvZSBVSSIsIFJvYm90bywgIkhlbHZldGljYSBOZXVlIiwgIlBpbmdGYW5nIFNDIiwgIkhpcmFnaW5vIFNhbnMgR0IiLCAiTWljcm9zb2Z0IFlhSGVpIiwgc2Fucy1zZXJpZjstLWYtZGlzcGxheTogIklvd2FuIE9sZCBTdHlsZSIsICJQYWxhdGlubyBMaW5vdHlwZSIsIFBhbGF0aW5vLCAiQm9vayBBbnRpcXVhIiwgR2VvcmdpYSwgIlNvbmd0aSBTQyIsICJTVFNvbmciLCAiU2ltU3VuIiwgc2VyaWY7LS1mLW1vbm86IHVpLW1vbm9zcGFjZSwgIlNGIE1vbm8iLCAiSmV0QnJhaW5zIE1vbm8iLCBNZW5sbywgQ29uc29sYXMsIG1vbm9zcGFjZTstLWVhc2U6IGN1YmljLWJlemllciguMiwgLjcsIC4yLCAxKX1bZGF0YS10aGVtZT1kYXJrXXstLWMtYmc6ICMxMTE3MjM7LS1jLXN1bms6ICMwYjEwMWE7LS1jLXJhaXNlOiAjMTgyMDMxOy0tYy1pbms6ICNlZWYyZjk7LS1jLWluay0yOiAjYjRiZmQxOy0tYy1pbmstMzogIzhmOWJiMTstLWMtbGluZTogIzI0MzA0ODstLWMtbGluZS0yOiAjMzU0MzVmOy0tYy1wcmltYXJ5OiAjM2E2OGYyOy0tYy1wcmltYXJ5LWhvdmVyOiAjMmY1ZGU2Oy0tYy1wcmltYXJ5LXByZXNzOiAjMjg1MmQyOy0tYy1wcmltYXJ5LWluazogIzkzYjJmZjstLWMtcHJpbWFyeS1zb2Z0OiAjMTgyNjRhOy0tYy1wcmltYXJ5LXNvZnQtMjogIzIxMzQ2NzstLWMtb24tcHJpbWFyeTogI2ZmZmZmZjstLWMtc3VjY2VzczogIzEyYjg4NjstLWMtc3VjY2Vzcy1pbms6ICM0ZmQ4YTY7LS1jLXN1Y2Nlc3Mtc29mdDogIzBmMmMyNzstLWMtd2FybmluZzogI2YwYTAzMjstLWMtd2FybmluZy1pbms6ICNmNmJkNWY7LS1jLXdhcm5pbmctc29mdDogIzMzMjUwZjstLWMtZXJyb3I6ICNmMjY0NjQ7LS1jLWVycm9yLWluazogI2ZmOGY4ZjstLWMtZXJyb3Itc29mdDogIzNhMWExZjstLWMtaW5mbzogIzViOGNmZjstLWMtaW5mby1pbms6ICM5ZGJhZmY7LS1jLWluZm8tc29mdDogIzE2MjMzZjstLWMtc3RhcjogI2YyYzQ2YjstLWMtc2hhZG93OiAwIDFweCAycHggcmdiKDAgMCAwIC8gMzAlKTstLWMtc2hhZG93LTI6IDAgMXB4IDJweCByZ2IoMCAwIDAgLyAzNSUpLCAwIDEwcHggMjhweCAtMTJweCByZ2IoMCAwIDAgLyA2MCUpOy0tYy1zaGFkb3ctY2FyZDogMCAxcHggMCByZ2IoMjU1IDI1NSAyNTUgLyAzJSkgaW5zZXQsIDAgMThweCA0MHB4IC0yNHB4IHJnYigwIDAgMCAvIDcwJSk7Y29sb3Itc2NoZW1lOmRhcmt9OnJvb3QsW2RhdGEtdGhlbWU9ZGFya117LS1iZzogdmFyKC0tYy1iZyk7LS1iZy1zb2Z0OiB2YXIoLS1jLXN1bmspOy0tZmc6IHZhcigtLWMtaW5rKTstLWZnLXNvZnQ6IHZhcigtLWMtaW5rLTIpOy0tZmctZmFpbnQ6IHZhcigtLWMtaW5rLTMpOy0tbGluZTogdmFyKC0tYy1saW5lKTstLWFjY2VudDogdmFyKC0tYy1wcmltYXJ5KTstLWFjY2VudC1mZzogdmFyKC0tYy1vbi1wcmltYXJ5KTstLWxpbms6IHZhcigtLWMtcHJpbWFyeS1pbmspOy0tZ29vZDogdmFyKC0tYy1zdWNjZXNzLWluayk7LS1nb29kLWJnOiB2YXIoLS1jLXN1Y2Nlc3Mtc29mdCk7LS1iYWQ6IHZhcigtLWMtZXJyb3ItaW5rKTstLWJhZC1iZzogdmFyKC0tYy1lcnJvci1zb2Z0KTstLXdhcm46IHZhcigtLWMtd2FybmluZy1pbmspOy0td2Fybi1iZzogdmFyKC0tYy13YXJuaW5nLXNvZnQpOy0tcmluZzogdmFyKC0tYy1wcmltYXJ5KTstLXJhZGl1czogdmFyKC0tci1jYXJkKTstLXJhZGl1cy1zbTogdmFyKC0tci1zbSk7LS1mb250OiB2YXIoLS1mLXNhbnMpOy0tbW9ubzogdmFyKC0tZi1tb25vKTstLXNoYWRvdzogdmFyKC0tYy1zaGFkb3ctY2FyZCl9W2hpZGRlbl17ZGlzcGxheTpub25lIWltcG9ydGFudH1odG1se2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Ym9keXtwYWRkaW5nOjAgMCAxNHB4fWJvZHl7Zm9udC1mYW1pbHk6dmFyKC0tZi1zYW5zKTtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxLjQ1O2NvbG9yOnZhcigtLWMtaW5rKTt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJrZXJuIiwiY3YxMSJ9LmNhcmR7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjc2MHB4O2JhY2tncm91bmQ6dmFyKC0tYy1iZyk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1jYXJkKTtib3gtc2hhZG93OnZhcigtLWMtc2hhZG93LWNhcmQpfWJ1dHRvbixpbnB1dHtmb250LWZhbWlseTppbmhlcml0fWJ1dHRvbnstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9OndoZXJlKGJ1dHRvbixhLGlucHV0LHN1bW1hcnksW3JvbGU9YnV0dG9uXSk6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1jLWZvY3VzKTtvdXRsaW5lLW9mZnNldDoycHh9LnAtdG90YWwsLnAtd2FzLC5wLXVuaXQsLnQtZnJvbSwuc3VtLC5tb25leS1vdXQsLmZkLXByaWNlLC5jb2wtcHJpY2UsLnBzLXByaWNlLC5jb2RlLC5uLC53diwuY2R7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5oZWFke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7bWluLWhlaWdodDo2MHB4O3BhZGRpbmc6MTJweCAxNnB4IDEwcHggMjBweH0uaG9tZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDttaW4td2lkdGg6MDttYXJnaW46MCBhdXRvIDAgMDtwYWRkaW5nOjRweCA2cHggNHB4IDA7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLXNtKTtiYWNrZ3JvdW5kOm5vbmU7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgdmFyKC0tZWFzZSl9LmhvbWU6aG92ZXJ7b3BhY2l0eTouNzh9LmhlYWQgLmJyYW5ke21heC1oZWlnaHQ6MzRweDttYXgtd2lkdGg6MTUwcHg7b2JqZWN0LWZpdDpjb250YWlufVtkYXRhLXRoZW1lPWRhcmtdIC5oZWFkIC5icmFuZHtiYWNrZ3JvdW5kOiNlOWVkZjR9LmhlYWQgLnRpdGxle2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjY4MDtsZXR0ZXItc3BhY2luZzotLjAxNWVtfS5oZWFkIC5zdWJ7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1NTA7dGV4dC1hbGlnbjplbmQ7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5oZWFkIC5zdWI6ZW1wdHl7ZGlzcGxheTpub25lfS5tZW1iZXJjaGlwLC5oZWFkdHJpcHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2hlaWdodDozMnB4O3BhZGRpbmc6MCAxMnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluayk7Zm9udDppbmhlcml0O2ZvbnQtc2l6ZToxMi41cHg7Zm9udC13ZWlnaHQ6NjIwO3doaXRlLXNwYWNlOm5vd3JhcDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKX0ubWVtYmVyY2hpcDpob3ZlciwuaGVhZHRyaXA6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfS5oZWFkdHJpcHtiYWNrZ3JvdW5kOnZhcigtLWMtaW5rKTtib3JkZXItY29sb3I6dmFyKC0tYy1pbmspO2NvbG9yOnZhcigtLWMtYmcpO3BhZGRpbmc6MCAxMnB4IDAgMTBweH0uaGVhZHRyaXA6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLWluay0yKTtib3JkZXItY29sb3I6dmFyKC0tYy1pbmstMil9LnN1YmhlYWR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDtwYWRkaW5nOjAgMjBweCAxMHB4fS5iYWNrYnRue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7bWF4LXdpZHRoOjUwJTtoZWlnaHQ6MzBweDtwYWRkaW5nOjAgMTJweCAwIDhweDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo2MDA7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2N1cnNvcjpwb2ludGVyfS5iYWNrYnRuOmhvdmVye2NvbG9yOnZhcigtLWMtaW5rKTtiYWNrZ3JvdW5kOnZhcigtLWMtbGluZSl9LmZsb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21hcmdpbjowO3BhZGRpbmc6MDtsaXN0LXN0eWxlOm5vbmU7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLWMtaW5rLTMpfS5iYWNrYnRuOm5vdChbaGlkZGVuXSkrLmZsb3d7bWFyZ2luLWlubGluZS1zdGFydDphdXRvfS5mbG93IGxpe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5mbG93IGxpK2xpOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjE4cHg7aGVpZ2h0OjEuNXB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6dmFyKC0tYy1saW5lLTIpfS5mbG93IC5mZG90e2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtib3JkZXItcmFkaXVzOjk5OXB4O2JvcmRlcjoxLjVweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZmxvdyBsaS5kb25le2NvbG9yOnZhcigtLWMtaW5rLTIpfS5mbG93IGxpLmRvbmUgLmZkb3R7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSk7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnkpO2NvbG9yOnRyYW5zcGFyZW50fS5mbG93IGxpLmRvbmUgLmZkb3Q6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjZweDt0b3A6M3B4O3dpZHRoOjRweDtoZWlnaHQ6OHB4O2JvcmRlcjpzb2xpZCB2YXIoLS1jLW9uLXByaW1hcnkpO2JvcmRlci13aWR0aDowIDJweCAycHggMDt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKX0uZmxvdyBsaS5kb25lK2xpOmJlZm9yZSwuZmxvdyBsaVthcmlhLWN1cnJlbnQ9c3RlcF06YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5KX0uZmxvdyBsaVthcmlhLWN1cnJlbnQ9c3RlcF17Y29sb3I6dmFyKC0tYy1pbmspfS5mbG93IGxpW2FyaWEtY3VycmVudD1zdGVwXSAuZmRvdHtib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1jLXByaW1hcnktc29mdCl9LmJ1c3liYXJ7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MCAwIGF1dG87aGVpZ2h0OjNweDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWNhcmQpIHZhcigtLXItY2FyZCkgMCAwO3BvaW50ZXItZXZlbnRzOm5vbmV9LmNhcmQuYnVzeSAuYnVzeWJhcjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3dpZHRoOjQwJTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCx2YXIoLS1jLXByaW1hcnkpLHRyYW5zcGFyZW50KTthbmltYXRpb246YnVzeSAxLjFzIHZhcigtLWVhc2UpIGluZmluaXRlfUBrZXlmcmFtZXMgYnVzeXswJXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlKDI2MCUpfX0uY2FyZC5idXN5ICNjb250ZW50e29wYWNpdHk6LjU1O3RyYW5zaXRpb246b3BhY2l0eSAuMnMgdmFyKC0tZWFzZSkgLjEyc30uY2FyZC5idXN5IGJ1dHRvbiwuY2FyZC5idXN5IGlucHV0e3BvaW50ZXItZXZlbnRzOm5vbmV9I2NvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTZweDtwYWRkaW5nOjRweCAyMHB4IDIwcHh9LmgtbmFtZXttYXJnaW46MDtmb250LXNpemU6MjFweDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0uMDJlbX0uaC13aGVyZXttYXJnaW4tdG9wOjRweDtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTNweH0uaC1zdW17Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MS42O2NvbG9yOnZhcigtLWMtaW5rLTIpfS5ub3Rle3BhZGRpbmc6MDtmb250LXNpemU6MTIuNXB4O2xpbmUtaGVpZ2h0OjEuNTU7Y29sb3I6dmFyKC0tYy1pbmstMyl9LmVtcHR5e3BhZGRpbmc6MjhweCA4cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7Y29sb3I6dmFyKC0tYy1pbmstMyl9LnByb3Nle2ZvbnQtc2l6ZToxMy41cHg7bGluZS1oZWlnaHQ6MS42NTtjb2xvcjp2YXIoLS1jLWluay0yKTt3aGl0ZS1zcGFjZTpwcmUtbGluZX0ucHJvc2UgaDR7bWFyZ2luOjE0cHggMCA0cHg7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjY1MH0ucHJvc2UgaDQ6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5zZWN7bWFyZ2luOjRweCAwIC02cHg7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0OjY4MDtsZXR0ZXItc3BhY2luZzotLjAxZW19LnNlYy1ue2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDoycHg7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6MH0uaWNve2ZsZXg6bm9uZTt3aWR0aDoxNnB4O2hlaWdodDoxNnB4fS5lcnIsLndhcm5ub3RlLC51bnBhaWQsLmFza2VkLC5nYXB7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtwYWRkaW5nOjEycHggMTRweCAxMnB4IDE2cHg7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MS41NX0uZXJyOmJlZm9yZSwud2Fybm5vdGU6YmVmb3JlLC51bnBhaWQ6YmVmb3JlLC5hc2tlZDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDoxMHB4IGF1dG8gMTBweCAwO3dpZHRoOjNweDtib3JkZXItcmFkaXVzOjAgM3B4IDNweCAwO2JhY2tncm91bmQ6Y3VycmVudENvbG9yfS5lcnJ7YmFja2dyb3VuZDp2YXIoLS1jLWVycm9yLXNvZnQpO2NvbG9yOnZhcigtLWMtZXJyb3ItaW5rKX0ud2Fybm5vdGV7YmFja2dyb3VuZDp2YXIoLS1jLXdhcm5pbmctc29mdCk7Y29sb3I6dmFyKC0tYy13YXJuaW5nLWluayl9LnVucGFpZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7YmFja2dyb3VuZDp2YXIoLS1jLWluZm8tc29mdCk7Y29sb3I6dmFyKC0tYy1pbmstMil9LnVucGFpZDpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1jLWluZm8pfS51bnBhaWQgYntjb2xvcjp2YXIoLS1jLWluZm8taW5rKTtmb250LXdlaWdodDo2ODB9LmFza2Vke2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayk7Y29sb3I6dmFyKC0tYy1pbmstMil9LmFza2VkOmJlZm9yZXtiYWNrZ3JvdW5kOnZhcigtLWMtbGluZS0yKX0uYXNrZWQgYntjb2xvcjp2YXIoLS1jLWluayk7Zm9udC13ZWlnaHQ6NjUwfS5hc2tlZC5mbGFne2JhY2tncm91bmQ6dmFyKC0tYy13YXJuaW5nLXNvZnQpfS5hc2tlZC5mbGFnOmJlZm9yZXtiYWNrZ3JvdW5kOnZhcigtLWMtd2FybmluZyl9LmFza2VkIC5mb290e21hcmdpbi10b3A6NnB4fS5kZW1vc3RyaXB7ZGlzcGxheTpmbGV4O2dhcDoxMHB4O2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW46MCAwIDEycHg7cGFkZGluZzo4cHggMjBweDtib3JkZXItYmxvY2s6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7YmFja2dyb3VuZDp2YXIoLS1jLWluZm8tc29mdCk7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MS41fS5kZW1vc3RyaXAgYntmbGV4Om5vbmU7cGFkZGluZzoxcHggN3B4O2JvcmRlci1yYWRpdXM6NnB4O2JhY2tncm91bmQ6dmFyKC0tYy1pbmZvKTtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMDhlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9W2RhdGEtdGhlbWU9ZGFya10gLmRlbW9zdHJpcCBie2JhY2tncm91bmQ6IzJmNWZkNn0uZ297ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6OHB4O21pbi1oZWlnaHQ6NDRweDtwYWRkaW5nOjAgMThweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtcHJpbWFyeSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeSk7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjE0LjVweDtmb250LXdlaWdodDo2NTA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTtsaW5lLWhlaWdodDoxLjI7dGV4dC1hbGlnbjpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7Ym94LXNoYWRvdzowIDFweCAjZmZmZmZmMjkgaW5zZXQsMCAxcHggMnB4ICMxMDE4MjgxZjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKSx0cmFuc2Zvcm0gLjFzIHZhcigtLWVhc2UpfS5nbzpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1ob3Zlcik7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeS1ob3Zlcil9LmdvOmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1wcmVzcyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMXB4KX0uZ28gLmljb3t3aWR0aDoxOHB4O2hlaWdodDoxOHB4fS5nbyAucHJpY2UtaW57cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTBweDttYXJnaW4taW5saW5lLXN0YXJ0OjJweDtib3JkZXItaW5saW5lLXN0YXJ0OjFweCBzb2xpZCByZ2IoMjU1IDI1NSAyNTUgLyAzMiUpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZ28uc29mdHtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5LXNvZnQpO2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspO2JveC1zaGFkb3c6bm9uZX0uZ28uc29mdDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0LTIpO2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnktc29mdC0yKX0uZ28uaW52ZXJ0ZWR7YmFja2dyb3VuZDp2YXIoLS1jLWluayk7Ym9yZGVyLWNvbG9yOnZhcigtLWMtaW5rKTtjb2xvcjp2YXIoLS1jLWJnKTtib3gtc2hhZG93Om5vbmV9LmdvLmludmVydGVkOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYy1pbmstMik7Ym9yZGVyLWNvbG9yOnZhcigtLWMtaW5rLTIpfS5nby5xdWlldHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp2YXIoLS1jLWxpbmUtMik7Y29sb3I6dmFyKC0tYy1pbmspO2JveC1zaGFkb3c6bm9uZX0uZ28ucXVpZXQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2JvcmRlci1jb2xvcjp2YXIoLS1jLWluay0zKX0uZ28uZGFuZ2Vye2JhY2tncm91bmQ6I2M0MmIyYjtib3JkZXItY29sb3I6I2M0MmIyYjtjb2xvcjojZmZmfS5nby5kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZDojYTkyMjIyO2JvcmRlci1jb2xvcjojYTkyMjIyfS5nby5ibG9ja3t3aWR0aDoxMDAlfS5nby5iaWd7bWluLWhlaWdodDo1MnB4O2ZvbnQtc2l6ZToxNS41cHg7Ym9yZGVyLXJhZGl1czoxNHB4fS5nby5zbXttaW4taGVpZ2h0OjM2cHg7cGFkZGluZzowIDE0cHg7Zm9udC1zaXplOjEzcHg7Ym9yZGVyLXJhZGl1czoxMHB4fS5mb290e2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6OHB4fS5mb290Pi5nb3tmbGV4OjEgMSBhdXRvfS5saW5reXtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspO2ZvbnQ6aW5oZXJpdDtmb250LXdlaWdodDo2MDA7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOjFweDt0ZXh0LXVuZGVybGluZS1vZmZzZXQ6M3B4O2N1cnNvcjpwb2ludGVyfS5zdGVwe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7cGFkZGluZzoycHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKX0uc3RlcCBidXR0b257ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjt3aWR0aDozMnB4O2hlaWdodDozMnB4O2JvcmRlcjowO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjppbmhlcml0O2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDoxO2N1cnNvcjpwb2ludGVyfS5zdGVwIGJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LnN0ZXAgLm57bWluLXdpZHRoOjIycHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NzAwfS5zdGVwLmxpZ2h0e2JhY2tncm91bmQ6dmFyKC0tYy1iZyk7Y29sb3I6dmFyKC0tYy1pbmspO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO3BhZGRpbmc6MnB4fS5zdGVwLmxpZ2h0IGJ1dHRvbnt3aWR0aDozMHB4O2hlaWdodDozMHB4fS5zdGVwLmxpZ2h0IGJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmFkZHtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKX0uYWRkOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpO2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspO2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5LXNvZnQpfS5nby5hZGR7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztib3JkZXItcmFkaXVzOnZhcigtLXItbWQpO2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpO2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jLW9uLXByaW1hcnkpfS5nby5hZGQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktaG92ZXIpO2NvbG9yOnZhcigtLWMtb24tcHJpbWFyeSl9LmNoaXBzLC5wbGFjZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo4cHh9LmNoaXB7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDttaW4taGVpZ2h0OjMwcHg7cGFkZGluZzowIDEycHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1MjB9YnV0dG9uLmNoaXB7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgdmFyKC0tZWFzZSl9YnV0dG9uLmNoaXA6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSk7Y29sb3I6dmFyKC0tYy1pbmspfS5jaGlwIHNtYWxse2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMS41cHg7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5jaGlwLnBsYWNle21pbi1oZWlnaHQ6MzRweDtwYWRkaW5nOjAgMTRweDtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NTYwfS5jaGlwLnBsYWNlLnRhYntmb250LXdlaWdodDo2NTB9LmNoaXAucGxhY2UudGFiW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0sLmNoaXAucGxhY2UudG9vbFthcmlhLWV4cGFuZGVkPXRydWVde2JvcmRlci1jb2xvcjp2YXIoLS1jLWluayk7YmFja2dyb3VuZDp2YXIoLS1jLWluayk7Y29sb3I6dmFyKC0tYy1iZyl9LmNoaXAucGxhY2UudGFiW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gc21hbGx7Y29sb3I6aW5oZXJpdDtvcGFjaXR5Oi43fS5jaGlwLnBsYWNlLmdyb3VwIGltZ3toZWlnaHQ6MjBweDt3aWR0aDphdXRvO2JvcmRlci1yYWRpdXM6NXB4fS5jaGlwLnNvcnRbYXJpYS1wcmVzc2VkPXRydWVdLC5jaGlwLmFza1thcmlhLXByZXNzZWQ9dHJ1ZV17Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSk7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCk7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9LmNoaXAuc29ydFthcmlhLXByZXNzZWQ9dHJ1ZV0gc21hbGx7Y29sb3I6aW5oZXJpdH0uY2hpcC5hc2tbYXJpYS1wcmVzc2VkPXRydWVdOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjZweDtoZWlnaHQ6MTBweDttYXJnaW46LTNweCAycHggMCAwO2JvcmRlcjpzb2xpZCBjdXJyZW50Q29sb3I7Ym9yZGVyLXdpZHRoOjAgMnB4IDJweCAwO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpfS5iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2hlaWdodDoyNHB4O3BhZGRpbmc6MCA5cHg7Ym9yZGVyLXJhZGl1czo3cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjYyMDt3aGl0ZS1zcGFjZTpub3dyYXB9LmJhZGdlLmdvb2R7YmFja2dyb3VuZDp2YXIoLS1jLXN1Y2Nlc3Mtc29mdCk7Y29sb3I6dmFyKC0tYy1zdWNjZXNzLWluayl9LmJhZGdlLndhcm57YmFja2dyb3VuZDp2YXIoLS1jLXdhcm5pbmctc29mdCk7Y29sb3I6dmFyKC0tYy13YXJuaW5nLWluayl9LmJhZGdlLmJhZHtiYWNrZ3JvdW5kOnZhcigtLWMtZXJyb3Itc29mdCk7Y29sb3I6dmFyKC0tYy1lcnJvci1pbmspfS5iYWRnZS5pbmZve2JhY2tncm91bmQ6dmFyKC0tYy1pbmZvLXNvZnQpO2NvbG9yOnZhcigtLWMtaW5mby1pbmspfS5iYWRnZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo2cHh9LndoZW5iYXJ7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpIGF1dG87Z2FwOjEwcHg7YWxpZ24taXRlbXM6c3RyZXRjaH0ud2hlbi1kYXRlc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciBhdXRvIDFmcjthbGlnbi1pdGVtczpzdHJldGNoO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO292ZXJmbG93OmhpZGRlbn0ud2hlbi10aWxle2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MnB4O21pbi13aWR0aDowO3BhZGRpbmc6MTBweCAxNHB4O2JvcmRlcjowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7dGV4dC1hbGlnbjpzdGFydDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKX0ud2hlbi10aWxlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX0ud2hlbi10aWxlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCk7Ym94LXNoYWRvdzppbnNldCAwIC0ycHggMCB2YXIoLS1jLXByaW1hcnkpfS53aGVuLXRpbGU6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDotM3B4O2JvcmRlci1yYWRpdXM6MTJweH0ud2x7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NjUwO2xldHRlci1zcGFjaW5nOi4wNmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ud3Z7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmJhc2VsaW5lO2dhcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwO2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MTVweDtmb250LXdlaWdodDo2NTA7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS53diBzbWFsbHtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTIuNXB4O2ZvbnQtd2VpZ2h0OjU1MH0ud2hlbi1zYXl7Z3JpZC1jb2x1bW46MSAvIC0xO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjYwMH0ud2hlbmJhci5wZW5kaW5nIC53aGVuLWRhdGVze2JvcmRlci1zdHlsZTpkYXNoZWR9LndoZW5iYXIucGVuZGluZyAud3Z7Y29sb3I6dmFyKC0tYy1pbmstMyl9LndoZW4tbntkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO2FsaWduLXNlbGY6Y2VudGVyO3BhZGRpbmc6M3B4IDhweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjY1MDt3aGl0ZS1zcGFjZTpub3dyYXB9LndoZW4tc2lkZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6c3RyZXRjaDtnYXA6OHB4fS53aGVuLXJvb21ze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6NnB4IDEwcHggNnB4IDE0cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6dmFyKC0tYy1iZyl9LndoZW4tcm9vbXMgLnN0ZXAubGlnaHR7Ym9yZGVyOjA7cGFkZGluZzowO21hcmdpbi1pbmxpbmUtc3RhcnQ6LTZweH0ud2hlbi1zaWRlIC5nb3tib3JkZXItcmFkaXVzOjE0cHh9LmNhbHtncmlkLWNvbHVtbjoxIC8gLTE7cGFkZGluZzoxNHB4IDE0cHggMTJweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWxnKTtiYWNrZ3JvdW5kOnZhcigtLWMtcmFpc2UpO2JveC1zaGFkb3c6dmFyKC0tYy1zaGFkb3ctMik7YW5pbWF0aW9uOnJpc2UgLjE4cyB2YXIoLS1lYXNlKX1Aa2V5ZnJhbWVzIHJpc2V7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC00cHgpfX0uY2FsLXRvcHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDo4cHg7bWFyZ2luLWJvdHRvbTo4cHh9LmNhbC1zYXl7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NjUwO2NvbG9yOnZhcigtLWMtaW5rKX0uY2FsLXNheSBzbWFsbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS1jLWluay0zKX0uY2FsLW5hdntkaXNwbGF5OmZsZXg7Z2FwOjRweH0uY2FsLW5hdiBidXR0b257ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjt3aWR0aDozNHB4O2hlaWdodDozNHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluayk7Y3Vyc29yOnBvaW50ZXJ9LmNhbC1uYXYgYnV0dG9uOmRpc2FibGVke29wYWNpdHk6LjM1O2N1cnNvcjpkZWZhdWx0fS5jYWwtbmF2IGJ1dHRvbjpob3Zlcjpub3QoOmRpc2FibGVkKXtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmNhbC1tb250aHN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjIwcHh9LmNhbC1tb250aCsuY2FsLW1vbnRoe2Rpc3BsYXk6bm9uZX0uY2FsLW10e21hcmdpbjowIDAgNnB4IDRweDtmb250LXNpemU6MTMuNXB4O2ZvbnQtd2VpZ2h0OjY4MH0uY2FsLWdyaWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNyxtaW5tYXgoMCwxZnIpKTtyb3ctZ2FwOjJweH0uY2FsLWRvd3twYWRkaW5nOjRweCAwIDZweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo2NTA7Y29sb3I6dmFyKC0tYy1pbmstMyl9LmNke3Bvc2l0aW9uOnJlbGF0aXZlO21pbi13aWR0aDowO2hlaWdodDo0MHB4O3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLWMtaW5rKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEzLjVweDtmb250LXdlaWdodDo1NjA7Y3Vyc29yOnBvaW50ZXJ9LmNkPnNwYW57cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7d2lkdGg6bWluKDM4cHgsMTAwJSk7aGVpZ2h0OjM4cHg7bWFyZ2luOjFweCBhdXRvO2JvcmRlci1yYWRpdXM6OTk5cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xMnMgdmFyKC0tZWFzZSl9LmNkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpPnNwYW57YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHZhcigtLWMtbGluZS0yKX0uY2Q6ZGlzYWJsZWR7Y29sb3I6dmFyKC0tYy1pbmstMyk7b3BhY2l0eTouNDU7Y3Vyc29yOmRlZmF1bHR9LmNkLnRvZGF5PnNwYW46YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206NXB4O2xlZnQ6NTAlO3dpZHRoOjRweDtoZWlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi0ycHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcn0uY2QuYmV0d2VlbjpiZWZvcmUsLmNkLmluLmhhcy1vdXQ6YmVmb3JlLC5jZC5vdXQ6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MXB4IDA7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCl9LmNkLm91dDpiZWZvcmV7cmlnaHQ6NTAlfS5jZC5pbj5zcGFuLC5jZC5vdXQ+c3BhbntiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeSk7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KTtmb250LXdlaWdodDo3MDB9LmNkLmluOmhvdmVyPnNwYW4sLmNkLm91dDpob3Zlcj5zcGFue2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5LWhvdmVyKTtib3gtc2hhZG93Om5vbmV9LmNkLnJlYWNoOmJlZm9yZSwuY2QucmVhY2gtZW5kOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjFweCAwO2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5LXNvZnQpfS5jZC5yZWFjaC1lbmQ6YmVmb3Jle3JpZ2h0OjUwJX0uY2QucmVhY2gtZW5kPnNwYW57Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxLjVweCB2YXIoLS1jLXByaW1hcnkpfS5jZC5oYXMtcD5zcGFuOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0cHg7cmlnaHQ6NnB4O3dpZHRoOjVweDtoZWlnaHQ6NXB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLWxpbmUtMil9LmNkLmJlc3Q+c3BhbjpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1jLXN1Y2Nlc3MpfS5jYWwtYmVzdHtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKTtmb250LXdlaWdodDo2NTB9LmNhbC1iZXN0OmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjdweDtoZWlnaHQ6N3B4O21hcmdpbi1pbmxpbmUtZW5kOjZweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzKX0uY2QuYmxhbmt7cG9pbnRlci1ldmVudHM6bm9uZX0uY2FsLWZvb3R7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTBweDttYXJnaW4tdG9wOjEwcHg7cGFkZGluZy10b3A6MTBweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2ZvbnQtc2l6ZToxMi41cHg7Y29sb3I6dmFyKC0tYy1pbmstMyl9LmZsZXgtZGF0ZXN7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpncmlkO2dyaWQtYXV0by1mbG93OmNvbHVtbjtncmlkLWF1dG8tY29sdW1uczptaW5tYXgoMTA4cHgsMWZyKTtnYXA6NnB4O292ZXJmbG93LXg6YXV0bztzY3JvbGxiYXItd2lkdGg6bm9uZTtzY3JvbGwtc25hcC10eXBlOnggcHJveGltaXR5O3BhZGRpbmc6MnB4O21hcmdpbjotMnB4O21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMwMDAgY2FsYygxMDAlIC0gMjhweCksdHJhbnNwYXJlbnQpfS5mbGV4LWRhdGVzLmF0LWVuZHttYXNrLWltYWdlOm5vbmV9LmZke3Njcm9sbC1zbmFwLWFsaWduOmNlbnRlcn0uZmxleC1kYXRlczo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS5mZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjJweDtwYWRkaW5nOjlweCAxMXB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluayk7Zm9udDppbmhlcml0O3RleHQtYWxpZ246c3RhcnQ7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgdmFyKC0tZWFzZSl9LmZkOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpfS5mZC1kYXl7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjExLjVweDtmb250LXdlaWdodDo2MDA7d2hpdGUtc3BhY2U6bm93cmFwfS5mZC1wcmljZXtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo3MDA7d2hpdGUtc3BhY2U6bm93cmFwfS5mZC5vbntib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5KTtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCB2YXIoLS1jLXByaW1hcnkpfS5mZC5vbiAuZmQtZGF5e2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspfS5mZC5iZXN0IC5mZC1wcmljZXtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0uZmQuYmVzdCAuZmQtZGF5OmFmdGVye2NvbnRlbnQ6IiDCtyBMb3dlc3QiO2NvbG9yOnZhcigtLWMtc3VjY2Vzcy1pbmspO2ZvbnQtd2VpZ2h0OjcwMH0uZmQub3V0e2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtib3JkZXItc3R5bGU6ZGFzaGVkfS5mZC5vdXQgLmZkLXByaWNle2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtd2VpZ2h0OjYwMH0uaGVsbG97ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4fS5oZWxsbyAuaC1uYW1le2ZvbnQtc2l6ZToyNHB4fS5zZWFyY2h7ZGlzcGxheTpncmlkO2dhcDoxMHB4O3BhZGRpbmc6MTJweDtib3JkZXItcmFkaXVzOjE4cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfS5zZWFyY2ggLndoZXJle3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzowIDE0cHg7bWluLWhlaWdodDo1MnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZTowfS5zZWFyY2ggLndoZXJlOmZvY3VzLXdpdGhpbntib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1jLXByaW1hcnktc29mdCl9LnNlYXJjaCAud2hlcmUgLmljb3t3aWR0aDoxOHB4O2hlaWdodDoxOHB4fS5zZWFyY2ggLndoZXJlIGlucHV0e2ZsZXg6MTttaW4td2lkdGg6MDtoZWlnaHQ6NTBweDtib3JkZXI6MDtvdXRsaW5lOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS1jLWluayk7Zm9udDppbmhlcml0O2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0OjU1MH0uc2VhcmNoIC53aGVyZSBpbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC13ZWlnaHQ6NDUwfS5zZWFyY2ggLndoZW4tZGF0ZXMsLnNlYXJjaCAud2hlbi1yb29tc3tib3JkZXItY29sb3I6dmFyKC0tYy1saW5lLTIpfS5yZWdpb257ZGlzcGxheTpncmlkO2dhcDoxMHB4fS5jb3VudHJ5bmFtZXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDdlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmNvdW50cnluYW1lIHNtYWxse2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzowO3RleHQtdHJhbnNmb3JtOm5vbmV9LmRlc3R7ZGlzcGxheTpncmlkO2dhcDo4cHg7cGFkZGluZzoxMHB4IDAgMTJweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpfS5kZXN0Omxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbTowfS5kZXN0LWNvdW50cnl7anVzdGlmeS1zZWxmOnN0YXJ0O3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOm5vbmU7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6MTQuNXB4O2ZvbnQtd2VpZ2h0OjY1MDt0ZXh0LWFsaWduOnN0YXJ0O2N1cnNvcjpwb2ludGVyfS5kZXN0LWNvdW50cnkgc21hbGx7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC13ZWlnaHQ6NTAwfS5kZXN0LWNvdW50cnk6aG92ZXJ7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9LnRvb2xiYXJ7Z2FwOjhweH0uY2hpcC5wbGFjZS50b29se2dhcDo3cHg7Zm9udC13ZWlnaHQ6NjIwfS5jaGlwLnBsYWNlLnRvb2wgLmljb3t3aWR0aDoxNXB4O2hlaWdodDoxNXB4O29wYWNpdHk6Ljh9LmZpbHRlci1wYW5lbHtkaXNwbGF5OmdyaWQ7Z2FwOjEycHg7cGFkZGluZzoxNHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfS5mZ3JvdXB7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4fS5zb3J0cy1re21pbi13aWR0aDo1MnB4O2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDZlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmNpdHlncm91cHtkaXNwbGF5OmdyaWQ7Z2FwOjEwcHh9LmNpdHlncm91cCsuY2l0eWdyb3Vwe21hcmdpbi10b3A6OHB4fS5jaXR5bmFtZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7Z2FwOjZweDtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uY2l0eW5hbWUgc21hbGx7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1MDB9LnRpbGVze2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KGF1dG8tZmlsbCxtaW5tYXgoMjIwcHgsMWZyKSk7Z2FwOjE0cHh9LnRpbGV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nOjA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSk7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7dGV4dC1hbGlnbjpzdGFydDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMThzIHZhcigtLWVhc2UpLGJveC1zaGFkb3cgLjE4cyB2YXIoLS1lYXNlKSx0cmFuc2Zvcm0gLjE4cyB2YXIoLS1lYXNlKX0udGlsZTpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYy1saW5lLTIpO2JveC1zaGFkb3c6dmFyKC0tYy1zaGFkb3ctMik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9LnRpbGU6aG92ZXIgLnQtc2hvdCBpbWd7dHJhbnNmb3JtOnNjYWxlKDEuMDMpfS50LXNob3R7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjthc3BlY3QtcmF0aW86NCAvIDM7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0MGRlZyx2YXIoLS1zaG90LWEpLHZhcigtLXNob3QtYikpO2NvbG9yOiNmZmZ9LnQtc2hvdCBpbWcsLmhlcm8gaW1nLC50aHVtYiBpbWcsLnJvb20tc2hvdCBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjE7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyO3RyYW5zaXRpb246dHJhbnNmb3JtIC41cyB2YXIoLS1lYXNlKX0udC1tYXJre3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MDtmb250LWZhbWlseTp2YXIoLS1mLWRpc3BsYXkpO2ZvbnQtc2l6ZTozMHB4O2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDRlbTtvcGFjaXR5Oi45fS50LWJyYW5ke3Bvc2l0aW9uOmFic29sdXRlO2luc2V0LWJsb2NrLXN0YXJ0OjEwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OjEwcHg7ei1pbmRleDoyO3BhZGRpbmc6M3B4IDlweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6IzBhMGUxODk0O2NvbG9yOiNmZmY7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NjUwO2xldHRlci1zcGFjaW5nOi4wMmVtO2JhY2tkcm9wLWZpbHRlcjpibHVyKDZweCl9LnQtYm9keXtkaXNwbGF5OmZsZXg7ZmxleDoxO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6M3B4O3BhZGRpbmc6MTJweCAxNHB4IDE0cHh9LnQtbmFtZXt0ZXh0LXdyYXA6cHJldHR5O2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjI7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NjUwO2xpbmUtaGVpZ2h0OjEuMztsZXR0ZXItc3BhY2luZzotLjAxZW19LnQtd2hlcmU6ZW1wdHl7ZGlzcGxheTpub25lfS50LW1ldGF7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O21pbi13aWR0aDowfS50LW1ldGEgLnJhdGV7bWFyZ2luLWlubGluZS1zdGFydDphdXRvfS50LXdoZXJle21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTIuNXB4O3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS50LWZvb3R7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtZW5kO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDo4cHg7bWFyZ2luLXRvcDphdXRvO3BhZGRpbmctdG9wOjEwcHh9LnQtZnJvbXtkaXNwbGF5OmJsb2NrO2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MThweDtmb250LXdlaWdodDo3NTA7bGluZS1oZWlnaHQ6MS4xNTtsZXR0ZXItc3BhY2luZzotLjAxZW19LnQtZnJvbSBzbWFsbCwudC1zdWJ7ZGlzcGxheTpibG9jaztjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzowfS50LWZyb20gLnQtcHJle2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjU1MDtjb2xvcjp2YXIoLS1jLWluay0zKX0udC1mcm9tLnQtbm9uZXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo2MDB9LnJhdGV7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo2NTA7d2hpdGUtc3BhY2U6bm93cmFwfS5yYXRlIHN2Z3tjb2xvcjp2YXIoLS1jLWluayl9LnJhdGUgLnQtZnJvbXtkaXNwbGF5OmlubGluZX0ucmF0ZSBzbWFsbHtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXdlaWdodDo1MDB9LnQtdGFnc3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjZweDttYXJnaW4tdG9wOjhweH0udC10YWdzIC5wZXJre2ZvbnQtc2l6ZToxMnB4fS50aWxlLm92ZXJ7b3BhY2l0eTouOTJ9Lmhlcm97cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjttYXJnaW46LTRweCAtMjBweCAwO2FzcGVjdC1yYXRpbzoxNiAvIDg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0MGRlZyx2YXIoLS1zaG90LWEpLHZhcigtLXNob3QtYikpO2NvbG9yOiNmZmZ9Lmhlcm8gaW1ne29iamVjdC1wb3NpdGlvbjpjZW50ZXIgNTglfS5oZXJvOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjE7YmFja2dyb3VuZDp2YXIoLS1jLXNjcmltKX0uaGVybyAudC1tYXJre2ZvbnQtc2l6ZTo0NHB4fS5oZXJvLXR4dHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDphdXRvIDAgMDt6LWluZGV4OjI7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O3BhZGRpbmc6MCAyMHB4IDE4cHg7Y29sb3I6I2ZmZn0uaGVyby10eHQgLnQtYnJhbmR7cG9zaXRpb246c3RhdGljO2FsaWduLXNlbGY6ZmxleC1zdGFydH0uaG90ZWwtbmFtZXttYXJnaW46MDtoeXBoZW5zOm5vbmU7Zm9udC1mYW1pbHk6dmFyKC0tZi1kaXNwbGF5KTtmb250LXNpemU6MjhweDtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MS4xO2xldHRlci1zcGFjaW5nOi0uMDFlbTt0ZXh0LXdyYXA6YmFsYW5jZTt0ZXh0LXNoYWRvdzowIDFweCAxOHB4IHJnYigwIDAgMCAvIDMwJSl9Lmhlcm8td2hlcmV7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4IDEwcHg7Y29sb3I6I2ZmZmZmZmU1O2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjU1MH0uaGVyby13aGVyZSAucmF0ZXtjb2xvcjojZmZmfS5oZXJvLXdoZXJlIC5yYXRlIHN2Z3tjb2xvcjojZmZkMjdhfS5oZXJvLXdoZXJlIC5yYXRlIHNtYWxse2NvbG9yOiNmZmZmZmZjNztmb250LXdlaWdodDo1MDB9LmFtZW57ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo2cHggMTZweDttYXJnaW46MDtwYWRkaW5nOjA7bGlzdC1zdHlsZTpub25lO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxM3B4fS5hbWVuIGxpe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo3cHh9LmFtZW4gbGk6YmVmb3Jle2NvbnRlbnQ6IiI7d2lkdGg6NXB4O2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeSk7b3BhY2l0eTouN30ucm9vbXN7ZGlzcGxheTpncmlkO2dhcDoxMnB4fS5yb29te2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MTE2cHggMWZyO2dyaWQtdGVtcGxhdGUtYXJlYXM6InNob3QgbWFpbiIgImJ1eSBidXkiO2dhcDoxMnB4IDE0cHg7cGFkZGluZzoxMnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXItbGcpO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSk7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE4cyB2YXIoLS1lYXNlKSxib3gtc2hhZG93IC4xOHMgdmFyKC0tZWFzZSl9LnJvb206aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWMtbGluZS0yKX0ucm9vbS5oZWxke2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLWMtcHJpbWFyeSl9LnJvb20tc2hvdHtncmlkLWFyZWE6c2hvdDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO2FzcGVjdC1yYXRpbzoxO292ZXJmbG93OmhpZGRlbjtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQwZGVnLHZhcigtLXNob3QtYSksdmFyKC0tc2hvdC1iKSk7Y29sb3I6I2ZmZjtmb250LWZhbWlseTp2YXIoLS1mLWRpc3BsYXkpO2ZvbnQtc2l6ZToyMnB4fS5yb29tLW1haW57Z3JpZC1hcmVhOm1haW47ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O21pbi13aWR0aDowfS5yb29tLW5hbWV7bWFyZ2luOjA7Zm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6NjgwO2xpbmUtaGVpZ2h0OjEuMztsZXR0ZXItc3BhY2luZzotLjAxZW19LmZhY3Rze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6MnB4IDEycHg7bWFyZ2luOjA7cGFkZGluZzowO2xpc3Qtc3R5bGU6bm9uZTtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTIuNXB4fS5mYWN0cyBsaXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4fS5mYWN0cyAuaWNve3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7b3BhY2l0eTouODV9LnBlcmtze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDttYXJnaW46MnB4IDAgMDtwYWRkaW5nOjA7bGlzdC1zdHlsZTpub25lfS5wZXJre2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo3cHg7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MS4zNX0ucGVyayAuaWNve21hcmdpbi10b3A6MXB4O2NvbG9yOnZhcigtLWMtaW5rKX0ucGVyayBie2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXdlaWdodDo2NTB9LnBlcmsud2FybiwucGVyay53YXJuIC5pY28sLnBlcmsud2FybiBie2NvbG9yOnZhcigtLWMtd2FybmluZy1pbmspfS5wZXJrLnNhdmUsLnBlcmsuc2F2ZSAuaWNvLC5wZXJrLnNhdmUgYntjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0ucm9vbS1idXl7Z3JpZC1hcmVhOmJ1eTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O3BhZGRpbmctdG9wOjEycHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKX0ucm9vbS1idXkgLnByaWNle2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjFweDttaW4td2lkdGg6MH0ucm9vbS1idXkgLmFjdGlvbntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHh9LnAtdG90YWx7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0Ojc1MDtsaW5lLWhlaWdodDoxLjE1O2xldHRlci1zcGFjaW5nOi0uMDE1ZW19LnAtdW5pdHtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1NTB9LnAtbmlnaHR7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEycHh9LnAtd2Fze2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMi41cHg7dGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaH0ucC1tZW1iZXJ7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O21hcmdpbi10b3A6M3B4O3BhZGRpbmc6MXB4IDdweDtib3JkZXItcmFkaXVzOjZweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3VjY2Vzcy1zb2Z0KTtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjcwMH0ubGVmdHthbGlnbi1zZWxmOmZsZXgtc3RhcnR9LnJ0eXBlIC5yb29tLXNob3QsLnJ0eXBlIC5yb29tLW1haW4sLnJ0eXBlIC5yb29tLWJ1eXtncmlkLWFyZWE6YXV0b30ucnR5cGV7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXItbGcpO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSl9LnJ0eXBlLmhlbGR7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSl9LnJ0eXBlLWhlYWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczo5NnB4IG1pbm1heCgwLDFmcik7Z2FwOjEycHg7cGFkZGluZzoxMnB4fS5ydHlwZS1oZWFkIC5yb29tLXNob3R7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjA7YXNwZWN0LXJhdGlvOjE7YWxpZ24tc2VsZjpzdGFydH0ucnR5cGUtbntjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo2MDB9LnJhdGVze2Rpc3BsYXk6Z3JpZH0ucnJhdGV7ZGlzcGxheTpncmlkO2dhcDoxMHB4O3BhZGRpbmc6MTJweCAxNHB4IDE0cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKX0ucnJhdGUuaGVsZHtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KX0ucmF0ZS1tYWlue2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDttaW4td2lkdGg6MH0ucmF0ZS1uYW1le2ZvbnQtc2l6ZToxNC41cHg7Zm9udC13ZWlnaHQ6NjUwO2xpbmUtaGVpZ2h0OjEuM30ucnJhdGUgLnJvb20tYnV5e3BhZGRpbmctdG9wOjA7Ym9yZGVyLXRvcDowfS5zZWd7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDo0cHg7cGFkZGluZzo0cHg7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX0uc2VnLWJ7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6N3B4O21pbi1oZWlnaHQ6NDBweDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEzLjVweDtmb250LXdlaWdodDo2MjA7Y3Vyc29yOnBvaW50ZXJ9LnNlZy1iW2FyaWEtcHJlc3NlZD10cnVlXXtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKTtib3gtc2hhZG93OnZhcigtLWMtc2hhZG93KX0uc3RhcnRze2Rpc3BsYXk6Z3JpZDtnYXA6OHB4O21hcmdpbi10b3A6NHB4fS5zdGFydHMgLmNoaXB7bWluLWhlaWdodDozNHB4O2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZ29vZC10by1rbm93LC5yb3dze2Rpc3BsYXk6Z3JpZDtnYXA6MTBweH0ucm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSBhdXRvIGF1dG87YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6MTRweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWxnKTtiYWNrZ3JvdW5kOnZhcigtLWMtcmFpc2UpfS5yb3cud2l0aHRodW1ie2dyaWQtdGVtcGxhdGUtY29sdW1uczo2NHB4IG1pbm1heCgwLDFmcikgYXV0byBhdXRvfS50aHVtYntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjY0cHg7aGVpZ2h0OjY0cHg7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxNDBkZWcsdmFyKC0tc2hvdC1hKSx2YXIoLS1zaG90LWIpKTtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjcwMH0ucm93IC5ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDttaW4td2lkdGg6MH0ucm93IC5uYW1le2ZvbnQtc2l6ZToxNC41cHg7Zm9udC13ZWlnaHQ6NjUwO2xpbmUtaGVpZ2h0OjEuM30ucm93IC5tZXRhe2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMi41cHg7bGluZS1oZWlnaHQ6MS40NX0ucm93IC5wcmljZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDoxcHg7dGV4dC1hbGlnbjplbmR9LnJvdyAucC10b3RhbHtmb250LXNpemU6MTZweH0ucm93IC5hY3Rpb257ZGlzcGxheTpmbGV4O2dhcDo4cHh9LmRheXttYXJnaW46NHB4IDAgLTZweDtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDdlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmJhbmR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgYXV0byAxZnI7YWxpZ24taXRlbXM6Y2VudGVyO292ZXJmbG93OmhpZGRlbjtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6dmFyKC0tYy1iZyl9LmJhbmQtZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7cGFkZGluZzoxMHB4IDE0cHg7dGV4dC1hbGlnbjpzdGFydH0uYmFuZC1kOmxhc3QtY2hpbGR7YWxpZ24taXRlbXM6ZmxleC1lbmQ7dGV4dC1hbGlnbjplbmR9LmJhbmQgLndoZW4tbntiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKX0uY29uZiAuYmFuZHttYXJnaW4tdG9wOjZweDtib3JkZXItc3R5bGU6ZGFzaGVkO2JvcmRlci1jb2xvcjp2YXIoLS1jLWxpbmUtMil9LnJldmlldy1oe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uc3Vtc3tkaXNwbGF5OmdyaWQ7Z2FwOjhweDtwYWRkaW5nOjE0cHggMTZweDtib3JkZXItcmFkaXVzOnZhcigtLXItbGcpO2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX0uc3Vte2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTJweDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTMuNXB4fS5zdW0gc3BhbjpsYXN0LWNoaWxke2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXdlaWdodDo2MDA7dGV4dC1hbGlnbjplbmR9LnN1bS5nb29kIHNwYW4sLnN1bS5nb29kIHNwYW46bGFzdC1jaGlsZHtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKTtmb250LXdlaWdodDo2NTB9LnN1bS50b3RhbHthbGlnbi1pdGVtczpiYXNlbGluZTttYXJnaW4tdG9wOjRweDtwYWRkaW5nLXRvcDoxMnB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWMtbGluZS0yKTtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NzAwfS5zdW0udG90YWwgc3BhbjpsYXN0LWNoaWxke2ZvbnQtc2l6ZToyNHB4O2ZvbnQtd2VpZ2h0Ojc4MDtsZXR0ZXItc3BhY2luZzotLjAyZW19LnN1bS50b3RhbCBzbWFsbHtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6MXB4O2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMH0uZm9ybXtkaXNwbGF5OmdyaWQ7Z2FwOjE0cHg7cGFkZGluZzoxNnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXItbGcpO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSl9LmZvcm0taHttYXJnaW46MDtmb250LXNpemU6MTVweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS50d297ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDoxMnB4fS5mb3JtIGxhYmVse2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTIuNXB4O2ZvbnQtd2VpZ2h0OjY1MH0uZm9ybSBpbnB1dFt0eXBlPXRleHRdLC5mb3JtIGlucHV0W3R5cGU9ZW1haWxdLC5mb3JtIGlucHV0W3R5cGU9dGVsXSwuZm9ybSBpbnB1dFt0eXBlPXRpbWVde3dpZHRoOjEwMCU7bWluLXdpZHRoOjA7aGVpZ2h0OjQ2cHg7cGFkZGluZzowIDEzcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NTAwO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgdmFyKC0tZWFzZSksYm94LXNoYWRvdyAuMTVzIHZhcigtLWVhc2UpfS5mb3JtIGlucHV0W2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tYy1lcnJvcik7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tYy1lcnJvci1zb2Z0KX0uZmllbGQtZXJye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo2cHg7Y29sb3I6dmFyKC0tYy1lcnJvci1pbmspO2ZvbnQtc2l6ZToxMi41cHg7Zm9udC13ZWlnaHQ6NTUwO2xpbmUtaGVpZ2h0OjEuNH0uZmllbGQtZXJyIC5pY297d2lkdGg6MTVweDtoZWlnaHQ6MTVweDttYXJnaW4tdG9wOjFweH0uZm9ybSBpbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC13ZWlnaHQ6NDAwfS5mb3JtIGlucHV0OmZvY3Vze291dGxpbmU6MDtib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1jLXByaW1hcnktc29mdCl9LmFza3N7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKTtwYWRkaW5nLXRvcDoxMnB4fS5hc2tzIHN1bW1hcnl7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MTMuNXB4O2ZvbnQtd2VpZ2h0OjY1MDtjdXJzb3I6cG9pbnRlcjtsaXN0LXN0eWxlOm5vbmV9LmFza3Mgc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlcntkaXNwbGF5Om5vbmV9LmFza3Mgc3VtbWFyeTphZnRlcntjb250ZW50OiIiO3dpZHRoOjdweDtoZWlnaHQ6N3B4O21hcmdpbjotM3B4IDAgMCBhdXRvO2JvcmRlcjpzb2xpZCB2YXIoLS1jLWluay0zKTtib3JkZXItd2lkdGg6MCAxLjc1cHggMS43NXB4IDA7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE1cyB2YXIoLS1lYXNlKX0uYXNrc1tvcGVuXSBzdW1tYXJ5OmFmdGVye21hcmdpbi10b3A6M3B4O3RyYW5zZm9ybTpyb3RhdGUoLTEzNWRlZyl9LmFza3Mgc3VtbWFyeSBzbWFsbHtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXdlaWdodDo1MDB9LmFza3MtYm9keXtkaXNwbGF5OmdyaWQ7Z2FwOjEycHg7bWFyZ2luLXRvcDoxMnB4fS5mb3JtIGxhYmVsLnJlbWVtYmVye2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo4cHg7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1MDB9LmZvcm0gbGFiZWwucmVtZW1iZXIgaW5wdXR7bWFyZ2luOjJweCAwIDA7YWNjZW50LWNvbG9yOnZhcigtLWMtcHJpbWFyeSl9LnRydXN0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo4cHg7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEyLjVweDtsaW5lLWhlaWdodDoxLjV9LnRydXN0IC5pY297bWFyZ2luLXRvcDoxcHg7Y29sb3I6dmFyKC0tYy1pbmstMil9LmJvb2tlZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6MTBweCAwIDRweDt0ZXh0LWFsaWduOmNlbnRlcn0uYm9va2VkLW1hcmt7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjt3aWR0aDo1NnB4O2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1Y2Nlc3Mtc29mdCk7Y29sb3I6dmFyKC0tYy1zdWNjZXNzKTthbmltYXRpb246cG9wIC40NXMgdmFyKC0tZWFzZSl9LmJvb2tlZC1tYXJrIC5pY297d2lkdGg6MjhweDtoZWlnaHQ6MjhweH0uYm9va2VkLW1hcmsudGVzdHtiYWNrZ3JvdW5kOnZhcigtLWMtaW5mby1zb2Z0KTtjb2xvcjp2YXIoLS1jLWluZm8pfUBrZXlmcmFtZXMgcG9wezAle3RyYW5zZm9ybTpzY2FsZSguNik7b3BhY2l0eTowfTYwJXt0cmFuc2Zvcm06c2NhbGUoMS4wNik7b3BhY2l0eToxfX0uYm9va2VkLXR7bWFyZ2luOjA7Zm9udC1zaXplOjIycHg7Zm9udC13ZWlnaHQ6NzUwO2xldHRlci1zcGFjaW5nOi0uMDJlbX0uYm9va2VkLXN7bWF4LXdpZHRoOjQ0Y2g7bWFyZ2luOjA7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEzLjVweDtsaW5lLWhlaWdodDoxLjV9LmNvbmZ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpncmlkO2dhcDo0cHg7cGFkZGluZzoxOHB4IDIwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7YmFja2dyb3VuZDp2YXIoLS1jLXJhaXNlKTt0ZXh0LWFsaWduOmNlbnRlcn0uY29uZiAubm90ZXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDhlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmNvZGV7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtZmFtaWx5OnZhcigtLWYtbW9ubyk7Zm9udC1zaXplOjI2cHg7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4wOGVtfS5jb25mLnRpY2tldCAud2hlcmV7cG9zaXRpb246cmVsYXRpdmV9LmNvbmYudGlja2V0IC53aGVyZTpiZWZvcmUsLmNvbmYudGlja2V0IC53aGVyZTphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMTBweDt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1iZyl9LmNvbmYudGlja2V0IC53aGVyZTpiZWZvcmV7bGVmdDotMzFweDtjbGlwLXBhdGg6aW5zZXQoMCAwIDAgNTAlKX0uY29uZi50aWNrZXQgLndoZXJlOmFmdGVye3JpZ2h0Oi0zMXB4O2NsaXAtcGF0aDppbnNldCgwIDUwJSAwIDApfS5jb25mIC53aGVyZXttYXJnaW4tdG9wOjhweDtwYWRkaW5nLXRvcDoxMnB4O2JvcmRlci10b3A6MXB4IGRhc2hlZCB2YXIoLS1jLWxpbmUtMik7Zm9udC1mYW1pbHk6dmFyKC0tZi1kaXNwbGF5KTtmb250LXNpemU6MTlweDtmb250LXdlaWdodDo2MDB9LmNvbmYgLndoZW57Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEzcHh9Lm1vbmV5LW91dHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHg7cGFkZGluZzoxNHB4IDE2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWxnKTtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayk7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NjUwfS5tb25leS1vdXQgc3BhbjpsYXN0LWNoaWxke2ZvbnQtc2l6ZToyMnB4O2ZvbnQtd2VpZ2h0Ojc4MDtsZXR0ZXItc3BhY2luZzotLjAyZW19LnF1aWV0LWVuZHtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tdG9wOi00cHh9Lmxpbmt5LmRhbmdlcntjb2xvcjp2YXIoLS1jLWVycm9yLWluayk7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NjAwfS5ob21lLWxpbmtze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHggMTBweDtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTNweH0uYXNrZWQtbGluZXtmb250LXN0eWxlOml0YWxpY30ubGVnc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjEwcHh9LmxlZ3tkaXNwbGF5OmdyaWQ7Z2FwOjRweDtwYWRkaW5nOjEycHggMTRweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKX0ubGVnLndhc3tiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmxlZy53YXMgLmxlZ3Z7dGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaDtjb2xvcjp2YXIoLS1jLWluay0zKX0ubGVna3tjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjA3ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5sZWd2e2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjY1MH0ubGVnbXtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTIuNXB4fS5zdGF0ZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6MjJweCAxMnB4IDhweDt0ZXh0LWFsaWduOmNlbnRlcn0uc3RhdGUtaWNve2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7d2lkdGg6NTJweDtoZWlnaHQ6NTJweDttYXJnaW4tYm90dG9tOjRweDtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2NvbG9yOnZhcigtLWMtaW5rLTIpfS5zdGF0ZS1pY28gLmljb3t3aWR0aDoyNHB4O2hlaWdodDoyNHB4fS5zdGF0ZS5lcnJvciAuc3RhdGUtaWNve2JhY2tncm91bmQ6dmFyKC0tYy1lcnJvci1zb2Z0KTtjb2xvcjp2YXIoLS1jLWVycm9yKX0uc3RhdGUubGltaXQgLnN0YXRlLWljb3tiYWNrZ3JvdW5kOnZhcigtLWMtd2FybmluZy1zb2Z0KTtjb2xvcjp2YXIoLS1jLXdhcm5pbmctaW5rKX0uc3RhdGUtdHttYXJnaW46MDtmb250LXNpemU6MThweDtmb250LXdlaWdodDo3MjA7bGV0dGVyLXNwYWNpbmc6LS4wMTVlbX0uc3RhdGUtZHttYXgtd2lkdGg6NDZjaDttYXJnaW46MDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTMuNXB4O2xpbmUtaGVpZ2h0OjEuNTV9LnN0YXRlIC5mb290e2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLXRvcDo4cHh9LnN0YXRlIC5mb290Pi5nb3tmbGV4OjAgMSBhdXRvfS5za2Vse2Rpc3BsYXk6Z3JpZDtnYXA6MTRweH1bZGF0YS10aGVtZT1kYXJrXSAuc2t7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzE3MjAzMywjMjQzMDQ5LCMxNzIwMzMpfS5za3tib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdmFyKC0tYy1zdW5rKSAwJSx2YXIoLS1jLWxpbmUpIDUwJSx2YXIoLS1jLXN1bmspIDEwMCUpO2JhY2tncm91bmQtc2l6ZToyMDAlIDEwMCU7YW5pbWF0aW9uOnNoaW1tZXIgMS40cyBsaW5lYXIgaW5maW5pdGV9LnNrLWxvZ297ZGlzcGxheTpibG9jazt3aWR0aDoxMTJweDtoZWlnaHQ6MzBweH0uc2stYmFye2hlaWdodDo2MHB4O2JvcmRlci1yYWRpdXM6MTRweH0uc2stdGlsZXN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoYXV0by1maWxsLG1pbm1heCgyMjBweCwxZnIpKTtnYXA6MTRweH0uc2stdGlsZXtkaXNwbGF5OmdyaWQ7Z2FwOjEwcHh9LnNrLWltZ3thc3BlY3QtcmF0aW86NCAvIDM7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWxnKX0uc2stbGluZXtoZWlnaHQ6MTRweDt3aWR0aDo4MCV9LnNrLWxpbmUuc2hvcnR7d2lkdGg6NDUlfUBrZXlmcmFtZXMgc2hpbW1lcnswJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjIwMCUgMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMDAlIDB9fS5jbXAtd3JhcHtvdmVyZmxvdy14OmF1dG87bWFyZ2luLWlubGluZTotMnB4O3BhZGRpbmc6MnB4fS5jbXB7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoNzZweCw5NnB4KSByZXBlYXQodmFyKC0tY29scyksbWlubWF4KDEyNHB4LDFmcikpO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Y29sdW1uLWdhcDoxMHB4fS5jbXAuZm91cntncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDU2cHgsNzJweCkgcmVwZWF0KHZhcigtLWNvbHMpLG1pbm1heCgxMDRweCwxZnIpKX0uY21wLWNvcm5lcntncmlkLWNvbHVtbjoxO2dyaWQtcm93OjEgLyBzcGFuIHZhcigtLWhlYWQtcm93cywgNSl9LmNtcC1oZWFke2Rpc3BsYXk6Z3JpZDtncmlkLXJvdzoxIC8gc3BhbiB2YXIoLS1oZWFkLXJvd3MsIDUpO2dyaWQtdGVtcGxhdGUtcm93czpzdWJncmlkO3Jvdy1nYXA6OHB4O2FsaWduLWNvbnRlbnQ6c3RhcnQ7bWluLXdpZHRoOjA7cGFkZGluZy1ib3R0b206MTRweDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7YmFja2dyb3VuZDp2YXIoLS1jLXJhaXNlKX0uY21wLWhlYWQ+LmNvbC1uYW1lLC5jbXAtaGVhZD4uY29sLXByaWNlLC5jbXAtaGVhZD4ud2h5LC5jbXAtaGVhZD4ucGN7bWFyZ2luLWlubGluZToxMnB4fS5jbXAtaGVhZC5waWNre2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLWMtcHJpbWFyeSl9LmNtcC1oZWFkIC50LXNob3R7YXNwZWN0LXJhdGlvOjE2IC8gMTA7d2lkdGg6MTAwJTtwYWRkaW5nOjA7Ym9yZGVyOjA7Y3Vyc29yOnBvaW50ZXJ9LnBpY2ttYXJre3BhZGRpbmc6NHB4IDhweDtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeSk7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KTtmb250LXNpemU6MTAuNXB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMDdlbTt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnBpY2ttYXJrLm5vbmV7dmlzaWJpbGl0eTpoaWRkZW59LmNvbC1uYW1le21hcmdpbi10b3A6MnB4O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjY4MDtsaW5lLWhlaWdodDoxLjN9LmNvbC1ncm91cHtkaXNwbGF5OmJsb2NrO2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMS41cHg7Zm9udC13ZWlnaHQ6NTAwfS5jb2wtcHJpY2V7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzgwO2xldHRlci1zcGFjaW5nOi0uMDE1ZW19LmNvbC1wcmljZSBzbWFsbHtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjU1MDtsZXR0ZXItc3BhY2luZzowfS5jb2wtcHJpY2Ugc21hbGwuc3Vie2Rpc3BsYXk6YmxvY2t9LndoeXtwYWRkaW5nLWlubGluZS1zdGFydDo5cHg7Ym9yZGVyLWlubGluZS1zdGFydDoycHggc29saWQgdmFyKC0tYy1wcmltYXJ5LXNvZnQtMik7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEyLjVweDtmb250LXN0eWxlOml0YWxpYztsaW5lLWhlaWdodDoxLjV9LndoeS5ub25le3BhZGRpbmc6MDtib3JkZXI6MH0ucGN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjEuNDV9LnBjIGRpdntkaXNwbGF5OmZsZXg7Z2FwOjZweH0ucGMgLm17ZmxleDowIDAgYXV0bztmb250LXdlaWdodDo3NTB9LnBjIC5wcm8gLm17Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9LnBjIC5jb24gLm17Y29sb3I6dmFyKC0tYy1pbmstMyl9LmNtcCAuaywuY21wIC52e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzo4cHggMTBweDtmb250LXNpemU6MTIuNXB4O2xpbmUtaGVpZ2h0OjEuNDV9LmNtcCAua3twb3NpdGlvbjpzdGlja3k7aW5zZXQtaW5saW5lLXN0YXJ0OjA7Z3JpZC1jb2x1bW46MTtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtd2VpZ2h0OjYwMH0uY21wIC52LmFsdCwuY21wIC5rOmhhcygrLnYuYWx0KXtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmRheXN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZGF5cm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MzBweCAxZnI7Z2FwOjEycHh9LmRheW51bXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4fS5kYXludW0gYntkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKTtmb250LXNpemU6MTIuNXB4O2ZvbnQtd2VpZ2h0Ojc1MDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LmRheW51bSBpe2ZsZXg6MTt3aWR0aDoycHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDp2YXIoLS1jLWxpbmUpfS5kYXlyb3c6bGFzdC1jaGlsZCAuZGF5bnVtIGl7ZGlzcGxheTpub25lfS5kYXlib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDttaW4td2lkdGg6MDtwYWRkaW5nOjNweCAwIDE4cHh9LmRheWxhYmVse2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0OjY4MDtsaW5lLWhlaWdodDoxLjN9LmRheWxhYmVsIHNtYWxse2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtd2VpZ2h0OjUwMH0uZGF5bm90ZXtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxLjU1fS5tb21lbnRze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDttYXJnaW46MnB4IDAgMDtwYWRkaW5nOjA7bGlzdC1zdHlsZTpub25lfS5tb21lbnRzIGxpe2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6ODRweCAxZnI7Z2FwOjEwcHg7YWxpZ24taXRlbXM6YmFzZWxpbmV9Lm1vbWVudHMgLndoZW57b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjA1ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5tb21lbnRzIC53aGF0e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjFweDtmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxLjR9Lm1vbWVudHMgLndoYXQgYntmb250LXdlaWdodDo2MjB9Lm1vbWVudHMgLndoYXQgc21hbGx7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEycHh9LnBsYW4tc3RheXtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjEwNHB4IDFmcjtnYXA6MTJweDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1tZCk7YmFja2dyb3VuZDp2YXIoLS1jLXJhaXNlKTtjdXJzb3I6cG9pbnRlcn0ucGxhbi1zdGF5OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jLWxpbmUtMil9LnBsYW4tc3RheSAucHMtc2hvdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO21pbi1oZWlnaHQ6OTJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tc2hvdC1hKSx2YXIoLS1zaG90LWIpKTtjb2xvcjojZmZmfS5wbGFuLXN0YXkgLnBzLXNob3QgaW1ne3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyfS5wbGFuLXN0YXkgLnBzLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo0cHg7bWluLXdpZHRoOjA7cGFkZGluZzoxMHB4IDEycHggMTBweCAwfS5wbGFuLXN0YXkgLm5hbWV7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NjgwO2xpbmUtaGVpZ2h0OjEuM30ucGxhbi1zdGF5IC5tZXRhe2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4fS5wbGFuLXN0YXkgLnBzLXByaWNle2ZvbnQtc2l6ZToxMy41cHg7Zm9udC13ZWlnaHQ6NzAwfS5wbGFuLW5pZ2h0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjhweDtwYWRkaW5nLXRvcDo2cHg7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHZhcigtLWMtbGluZS0yKTtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTIuNXB4O2N1cnNvcjpwb2ludGVyfS5wbGFuLWl0ZW17ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgYXV0bzthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjEwcHggMTJweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKX0ucGxhbi1pdGVtIC5uYW1le2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjY1MH0ucGxhbi1pdGVtIC5tZXRhe2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4fS5pbnN0YXRle3BhZGRpbmc6M3B4IDlweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjcwMDt3aGl0ZS1zcGFjZTpub3dyYXB9Lmluc3RhdGUueWVze2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzLXNvZnQpO2NvbG9yOnZhcigtLWMtc3VjY2Vzcy1pbmspfS5pbnN0YXRlLm5ve2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0yKX0uZ2Fwe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxMHB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0yKX0uZ2FwIGJ7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0Ojc4MDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LnN1Z2dlc3R7ZGlzcGxheTpncmlkO2dhcDo2cHg7cGFkZGluZy10b3A6MTRweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpfS5zdWdnZXN0IC53bHttYXJnaW4tYm90dG9tOjJweH0uY2hpcC5uZXh0e2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O3dpZHRoOjEwMCU7bWluLWhlaWdodDo0NHB4O3BhZGRpbmc6OHB4IDE0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MTMuNXB4O2ZvbnQtd2VpZ2h0OjU2MDtsaW5lLWhlaWdodDoxLjM1O3RleHQtYWxpZ246c3RhcnR9LmNoaXAubmV4dCAuaWNve2ZsZXg6bm9uZTtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKX0uc3VnZ2VzdCAuY2hpcC5zYXkgc21hbGx7Y29sb3I6dmFyKC0tYy1pbmstMyl9LmNrLXBhZ2VyLWJ0bntoZWlnaHQ6NDBweDtib3JkZXItY29sb3I6dmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1tZCk7Zm9udC13ZWlnaHQ6NjAwfS5jay1wYWdlci1ue2NvbG9yOnZhcigtLWMtaW5rLTMpfS5wLWxpbmV7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxNC41cHg7Zm9udC13ZWlnaHQ6NjUwfS5yb3cubGluZSAucC11bml0e2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtd2VpZ2h0OjUwMH0ucm93LmxpbmUgLnBlcmtze21hcmdpbi10b3A6NHB4fS5tZW1iZXItb2ZmZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjEycHggMTRweDtib3JkZXItcmFkaXVzOnZhcigtLXItbWQpO2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzLXNvZnQpO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxM3B4fS5tZW1iZXItb2ZmZXIgLmljbywubWVtYmVyLW9mZmVyIC5saW5reXtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0uYXNrLWdyb3Vwe2Rpc3BsYXk6Z3JpZDtnYXA6OHB4fS5saW5rc3tkaXNwbGF5OmdyaWQ7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXItbWQpfS5saW5rLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O21pbi1oZWlnaHQ6NDZweDtwYWRkaW5nOjAgMTRweDtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSk7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1NjA7dGV4dC1hbGlnbjpzdGFydDtjdXJzb3I6cG9pbnRlcn0ubGluay1yb3c6Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcDowfS5saW5rLXJvdzpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9Lmxpbmstcm93IC5pY297Y29sb3I6dmFyKC0tYy1pbmstMyl9LnN0cmlwLWh7bWFyZ2luLWJvdHRvbTotOHB4O2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjYwMH0uZmQubG93ZXN0IC5mZC1wcmljZXtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0uZmQubG93ZXN0e2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1jLXN1Y2Nlc3MpIDQ1JSx2YXIoLS1jLWxpbmUpKX0udGlsZS5sb3dlc3QgLnQtZnJvbXtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0udC1nb3tkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWFyZ2luLWlubGluZS1zdGFydDphdXRvO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2NvbG9yOnZhcigtLWMtaW5rLTIpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTVzIHZhcigtLWVhc2UpLGNvbG9yIC4xNXMgdmFyKC0tZWFzZSl9LnQtZ28gLmljb3t3aWR0aDoxNXB4O2hlaWdodDoxNXB4fS50aWxlOmhvdmVyIC50LWdve2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jLW9uLXByaW1hcnkpfS5yZW1pbmR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjEwcHg7cGFkZGluZzoxMnB4IDE0cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWMtd2FybmluZy1zb2Z0KTtjb2xvcjp2YXIoLS1jLXdhcm5pbmctaW5rKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo1NjA7bGluZS1oZWlnaHQ6MS41fS5yZW1pbmQgLmljb3ttYXJnaW4tdG9wOjFweH0uY2R7aGVpZ2h0OjUycHh9LmNkPnNwYW57d2lkdGg6bWluKDM2cHgsMTAwJSk7aGVpZ2h0OjM2cHg7bWFyZ2luLXRvcDowfS5jZC1we3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3otaW5kZXg6MTtvdmVyZmxvdzpoaWRkZW47Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjkuNXB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzotLjAyZW07dGV4dC1hbGlnbjpjZW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwfS5jZC5iZXR3ZWVuOmJlZm9yZSwuY2QuaW4uaGFzLW91dDpiZWZvcmUsLmNkLm91dDpiZWZvcmUsLmNkLnJlYWNoOmJlZm9yZSwuY2QucmVhY2gtZW5kOmJlZm9yZXtpbnNldDoxcHggMCAxM3B4fS5jZC5oYXMtcD5zcGFuOmJlZm9yZXtkaXNwbGF5Om5vbmV9LmNkLmJlZm9yZTpub3QoOmRpc2FibGVkKXtjb2xvcjp2YXIoLS1jLWluay0zKX0uY2Q6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjB9LmNkOmZvY3VzLXZpc2libGU+c3BhbntvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1jLWZvY3VzKTtvdXRsaW5lLW9mZnNldDoycHh9LmNhbC1tdHttYXJnaW4tbGVmdDowfVtkYXRhLXRoZW1lPWRhcmtdIC5jZDpkaXNhYmxlZHtvcGFjaXR5Oi42fS53di1lbXB0eXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXdlaWdodDo2MDB9LnNrLXNheXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo2MDB9LnN0ZXAgYnV0dG9uOmRpc2FibGVke29wYWNpdHk6LjM7Y3Vyc29yOmRlZmF1bHR9LnNlYXJjaC5yZXRyeXtkaXNwbGF5OmZsZXg7Z2FwOjhweDt3aWR0aDoxMDAlO21heC13aWR0aDo0NDBweDttYXJnaW46OHB4IGF1dG8gMDtwYWRkaW5nOjA7YmFja2dyb3VuZDpub25lfS5zZWFyY2gucmV0cnkgLndoZXJle2ZsZXg6MTttaW4taGVpZ2h0OjQ4cHh9LnNlYXJjaC5yZXRyeSAud2hlcmUgaW5wdXR7aGVpZ2h0OjQ2cHh9LnQtbmFtZSwuaG90ZWwtbmFtZSwucm9vbS1uYW1lLC5yYXRlLW5hbWUsLmNvbmYgLndoZXJlLC5yb3cgLm5hbWUsLmNvbC1uYW1le3dvcmQtYnJlYWs6a2VlcC1hbGw7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZX0uaGVhZHRyaXAtbntkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO21pbi13aWR0aDoyMHB4O2hlaWdodDoyMHB4O3BhZGRpbmc6MCA2cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0Ojc1MH0uaGVhZCAuYnJhbmR7Ym94LXNpemluZzpjb250ZW50LWJveDtwYWRkaW5nOjVweCAxMHB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7LmNhbC1tb250aHN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9LmNhbC1tb250aCsuY2FsLW1vbnRoe2Rpc3BsYXk6YmxvY2t9LnJvb217Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjE2OHB4IG1pbm1heCgwLDFmcik7Z3JpZC10ZW1wbGF0ZS1hcmVhczoic2hvdCBtYWluIiAic2hvdCBidXkiO2FsaWduLWl0ZW1zOnN0YXJ0O3BhZGRpbmc6MTRweH0ucm9vbS1zaG90e2FzcGVjdC1yYXRpbzphdXRvO2FsaWduLXNlbGY6c3RyZXRjaDttaW4taGVpZ2h0OjE1MHB4fS5ydHlwZS1oZWFke2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMzJweCBtaW5tYXgoMCwxZnIpfS5oZXJve2FzcGVjdC1yYXRpbzoxNiAvIDd9LmhvdGVsLW5hbWV7Zm9udC1zaXplOjMycHh9fUBtZWRpYShtYXgtd2lkdGg6NTIwcHgpey5oZWFke21pbi1oZWlnaHQ6NTZweDtwYWRkaW5nOjEwcHggMTJweCA4cHggMTZweH0uc3ViaGVhZHtwYWRkaW5nOjAgMTZweCA4cHh9LmRlbW9zdHJpcHtwYWRkaW5nOjhweCAxNnB4fSNjb250ZW50e2dhcDoxNHB4O3BhZGRpbmc6MnB4IDE2cHggMTZweH0uaGVyb3ttYXJnaW4taW5saW5lOi0xNnB4O2FzcGVjdC1yYXRpbzo0IC8gM30uaGVyby10eHR7cGFkZGluZzowIDE2cHggMTZweH0uaG90ZWwtbmFtZXtmb250LXNpemU6MjVweH0ud2hlbmJhcntncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKX0ud2hlbi1zaWRle2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcn0ud2hlbi1yb29tc3tmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS53aGVuLXNpZGUgLmdve21pbi1oZWlnaHQ6NDhweH0ud2hlbi1zaWRlOm5vdCg6aGFzKC5nbykpe2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9LndoZW5iYXI6bm90KDpoYXMoLmdvKSl7Z2FwOjA7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpfS53aGVuYmFyOm5vdCg6aGFzKC5nbykpIC53aGVuLWRhdGVze2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MH0ud2hlbmJhcjpub3QoOmhhcyguZ28pKSAud2hlbi1yb29tc3twYWRkaW5nOjhweCAxMHB4IDhweCAxNHB4O2JvcmRlcjowO2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czowfS53aGVuYmFyOm5vdCg6aGFzKC5nbykpIC5jYWx7Ym9yZGVyOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lfS50aWxlc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dhcDoxMHB4fS50aWxle2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpzdHJldGNofS50LXNob3R7ZmxleDowIDAgMTEycHg7YXNwZWN0LXJhdGlvOmF1dG87bWluLWhlaWdodDoxMzJweH0udC1icmFuZHtpbnNldC1ibG9jay1zdGFydDo4cHg7aW5zZXQtaW5saW5lLXN0YXJ0OjhweDtwYWRkaW5nOjJweCA3cHg7Zm9udC1zaXplOjEwcHh9LnQtYm9keXtwYWRkaW5nOjExcHggMTJweCAxMnB4O21pbi13aWR0aDowfS50LW5hbWV7Zm9udC1zaXplOjE0LjVweH0udC1mcm9te2ZvbnQtc2l6ZToxN3B4fS5zay10aWxlc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfS5zay10aWxle2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMTJweCAxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gYXV0byAxZnI7Y29sdW1uLWdhcDoxMnB4fS5zay1pbWd7Z3JpZC1yb3c6MSAvIHNwYW4gMzthc3BlY3QtcmF0aW86YXV0bztoZWlnaHQ6MTIwcHh9LnR3b3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfS5yb3csLnJvdy53aXRodGh1bWJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgYXV0b30ucm93IC50aHVtYntkaXNwbGF5Om5vbmV9LnJvdyAuYWN0aW9ue2dyaWQtY29sdW1uOjEgLyAtMTtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnJvdyAuYWN0aW9uOmVtcHR5e2Rpc3BsYXk6bm9uZX0uYmFja2J0bjpub3QoW2hpZGRlbl0pKy5mbG93IC5mbGFiZWx7ZGlzcGxheTpub25lfS5iYWNrYnRuOm5vdChbaGlkZGVuXSkrLmZsb3cgbGlbYXJpYS1jdXJyZW50PXN0ZXBdIC5mbGFiZWx7ZGlzcGxheTppbmxpbmV9LmZsb3cgbGkrbGk6YmVmb3Jle3dpZHRoOjEycHh9LmxlZ3N7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn0uY21we2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoNjhweCw4NHB4KSByZXBlYXQodmFyKC0tY29scyksbWlubWF4KDExOHB4LDFmcikpfS5nb3ttaW4taGVpZ2h0OjQ4cHh9LnJvb20tYnV5e2ZsZXgtd3JhcDp3cmFwfS5yb29tLWJ1eSAuYWN0aW9ue2ZsZXg6MSAxIDEwMCV9LnJvb20tYnV5IC5hY3Rpb24gLmdve2ZsZXg6MSAxIDB9LnJ0eXBlLWhlYWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjc2cHggbWlubWF4KDAsMWZyKX0uZ28uc217bWluLWhlaWdodDo0MHB4fS5jaGlwLC5jaGlwLnBsYWNle21pbi1oZWlnaHQ6MzhweH0ubWVtYmVyY2hpcCwuaGVhZHRyaXB7aGVpZ2h0OjM2cHh9LnN0ZXAubGlnaHQgYnV0dG9uLC5zdGVwIGJ1dHRvbnt3aWR0aDozNnB4O2hlaWdodDozNnB4fX0jY29udGVudC5lbnRlcj4qe2FuaW1hdGlvbjplbnRlciAuMjhzIHZhcigtLWVhc2UpIGJvdGh9I2NvbnRlbnQuZW50ZXI+Om50aC1jaGlsZCgyKXthbmltYXRpb24tZGVsYXk6LjAzc30jY29udGVudC5lbnRlcj46bnRoLWNoaWxkKDMpe2FuaW1hdGlvbi1kZWxheTouMDZzfSNjb250ZW50LmVudGVyPjpudGgtY2hpbGQobis0KXthbmltYXRpb24tZGVsYXk6LjA5c31Aa2V5ZnJhbWVzIGVudGVyezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg2cHgpfX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2UpeyosKjpiZWZvcmUsKjphZnRlcnthbmltYXRpb246bm9uZSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpub25lIWltcG9ydGFudH0uY2FyZC5idXN5IC5idXN5YmFyOmJlZm9yZXt3aWR0aDoxMDAlO3RyYW5zZm9ybTpub25lO29wYWNpdHk6LjZ9LnNre2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX19LmJvb2tlZC1tYXJrLnBheXtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtjb2xvcjp2YXIoLS1jLXByaW1hcnkpfS5wYXlib3h7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDtwYWRkaW5nOjE2cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7YmFja2dyb3VuZDp2YXIoLS1jLWJnKX0ucGF5LWFtb3VudHtmb250LXNpemU6MzBweDtmb250LXdlaWdodDo3MjA7bGluZS1oZWlnaHQ6MS4xO2xldHRlci1zcGFjaW5nOi0uMDFlbTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7Y29sb3I6dmFyKC0tYy1pbmspfS5wYXktYnl7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjhweDtwYWRkaW5nOjEwcHggMTJweDtib3JkZXItcmFkaXVzOnZhcigtLXItbWQpO2JhY2tncm91bmQ6dmFyKC0tYy13YXJuaW5nLXNvZnQpO2NvbG9yOnZhcigtLWMtd2FybmluZy1pbmspO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjU2MDtsaW5lLWhlaWdodDoxLjV9LnBheS1ieSAuY291bnRkb3due2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30udW5wYWlkLnBhaWR7YmFja2dyb3VuZDp2YXIoLS1jLXN1Y2Nlc3Mtc29mdCl9LnVucGFpZC5wYWlkOmJlZm9yZXtiYWNrZ3JvdW5kOnZhcigtLWMtc3VjY2Vzcyl9LnVucGFpZC5wYWlkIGJ7Y29sb3I6dmFyKC0tYy1zdWNjZXNzLWluayl9LmNhbC1ncmlke3Jvdy1nYXA6NHB4fS5jZHtoZWlnaHQ6NTBweH0uY2Q+c3BhbntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDoxcHg7d2lkdGg6Y2FsYygxMDAlIC0gNHB4KTttYXgtd2lkdGg6NjRweDtoZWlnaHQ6MTAwJTttYXJnaW46MCBhdXRvO2JvcmRlci1yYWRpdXM6MTBweH0uY2Qtbntmb250LXdlaWdodDppbmhlcml0O2xpbmUtaGVpZ2h0OjEuMX0uY2QtcHtwb3NpdGlvbjpzdGF0aWM7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxMC41cHg7Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjEuMTU7bGV0dGVyLXNwYWNpbmc6LS4wMmVtO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uY2QubG93ZXN0IC5jZC1we2NvbG9yOnZhcigtLWMtc3VjY2Vzcy1pbmspO2ZvbnQtd2VpZ2h0Ojc1MH0uY2QudG9kYXk+c3BhbjphZnRlcntkaXNwbGF5Om5vbmV9LmNkLnRvZGF5IC5jZC1ue3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgMnB4O3RleHQtdW5kZXJsaW5lLW9mZnNldDozcHh9LmNkLmJldHdlZW46YmVmb3JlLC5jZC5pbi5oYXMtb3V0OmJlZm9yZSwuY2Qub3V0OmJlZm9yZSwuY2QucmVhY2g6YmVmb3JlLC5jZC5yZWFjaC1lbmQ6YmVmb3Jle2luc2V0OjB9LmNkLmluLmhhcy1vdXQ6YmVmb3Jle2xlZnQ6NTAlfS5jZC5vdXQ6YmVmb3JlLC5jZC5yZWFjaC1lbmQ6YmVmb3Jle3JpZ2h0OjUwJX0uY2QuaW4+c3BhbiwuY2Qub3V0PnNwYW57YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnkpO2NvbG9yOnZhcigtLWMtb24tcHJpbWFyeSl9LmNkLmluIC5jZC1wLC5jZC5vdXQgLmNkLXB7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KX0uY2Q6Zm9jdXMtdmlzaWJsZT5zcGFue291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWMtZm9jdXMpO291dGxpbmUtb2Zmc2V0OjFweH0uY2QuaW46Zm9jdXMtdmlzaWJsZT5zcGFuLC5jZC5vdXQ6Zm9jdXMtdmlzaWJsZT5zcGFue291dGxpbmUtY29sb3I6dmFyKC0tYy1pbmspfS5jYWwtbGVnZW5ke2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweDttaW4td2lkdGg6MH0uY2FsLWxlZ2VuZCBzbWFsbHtmb250LXNpemU6MTEuNXB4O2xpbmUtaGVpZ2h0OjEuNDtjb2xvcjp2YXIoLS1jLWluay0zKX0uZmxleC1kYXRlc3tzY3JvbGwtc25hcC10eXBlOnggbWFuZGF0b3J5O3Njcm9sbC1wYWRkaW5nLWlubGluZToycHg7bWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsIzAwMCAxMnB4LCMwMDAgY2FsYygxMDAlIC0gMjhweCksdHJhbnNwYXJlbnQpfS5mbGV4LWRhdGVzIC5mZHtzY3JvbGwtc25hcC1hbGlnbjpzdGFydH0uZmxleC1kYXRlcy5hdC1zdGFydHttYXNrLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjMDAwIGNhbGMoMTAwJSAtIDI4cHgpLHRyYW5zcGFyZW50KX0uZmxleC1kYXRlcy5hdC1lbmR7bWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsIzAwMCAxMnB4KX0uZmxleC1kYXRlcy5hdC1zdGFydC5hdC1lbmR7bWFzay1pbWFnZTpub25lfS5mb3JtIGlucHV0W2FyaWEtaW52YWxpZD10cnVlXSwuZm9ybSBpbnB1dFthcmlhLWludmFsaWQ9dHJ1ZV06Zm9jdXN7Ym9yZGVyLWNvbG9yOnZhcigtLWMtZXJyb3IpO2JveC1zaGFkb3c6MCAwIDAgM3B4IHZhcigtLWMtZXJyb3Itc29mdCl9LmZvcm0tZXJye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo4cHg7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWMtZXJyb3Itc29mdCk7Y29sb3I6dmFyKC0tYy1lcnJvci1pbmspO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjQ1fS5mb3JtLWVyciAuaWNve2ZsZXg6bm9uZTt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O21hcmdpbi10b3A6MXB4fS5zdGF0ZSAuZm9vdD4uZ297d2hpdGUtc3BhY2U6bm93cmFwfS5zdGF0ZSAubGlua3N7YWxpZ24tc2VsZjpzdHJldGNoO21hcmdpbi10b3A6NnB4O3RleHQtYWxpZ246c3RhcnR9LmxpbmstZ297ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKTtmb250LXdlaWdodDo2NTB9LmxpbmstZ28gLmljb3tjb2xvcjppbmhlcml0fUBtZWRpYShtYXgtd2lkdGg6NTIwcHgpey5zdGF0ZSAuZm9vdHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24tc2VsZjpzdHJldGNofS5zdGF0ZSAuZm9vdD4uZ297d2lkdGg6MTAwJX19LmhlYWQgLmJyYW5ke21heC1oZWlnaHQ6MzhweDtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6bm9uZX1bZGF0YS10aGVtZT1kYXJrXSAuaGVhZCAuYnJhbmR7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6I2RmZTVlZTtmaWx0ZXI6YnJpZ2h0bmVzcyguOSl9LmJhbmQgLndoZW4tbntsaW5lLWhlaWdodDoxLjI1O3RleHQtYWxpZ246Y2VudGVyfS5iYW5kIC53aGVuLW4gc21hbGx7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTAuNXB4O2ZvbnQtd2VpZ2h0OjYwMDtvcGFjaXR5Oi44NX0uaGVhZCAudGl0bGU6ZW1wdHl7ZGlzcGxheTpub25lfS5zay1sb2dve29yZGVyOi0xfS5za2Vse2dhcDoxMnB4fS5zay1zdWJ7d2lkdGg6NTglO2hlaWdodDoxNHB4O21hcmdpbi10b3A6LTZweH0uc2stYmFye2hlaWdodDoxMThweH0uc2stY2hpcHN7ZGlzcGxheTpmbGV4O2dhcDoxMHB4fS5zay1jaGlwe3dpZHRoOjE2OHB4O2hlaWdodDo0MHB4O2JvcmRlci1yYWRpdXM6OTk5cHh9LnNrLWNoaXAuc2hvcnR7d2lkdGg6MTA0cHh9LnNrLXNheXtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LS4wMTVlbX0uc3RlcCBidXR0b246ZGlzYWJsZWR7b3BhY2l0eTouNDV9Lm5ie2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxMDAlO292ZXJmbG93LXdyYXA6YW55d2hlcmV9LmNvbmYudGlja2V0IC53aGVyZTpiZWZvcmUsLmNvbmYudGlja2V0IC53aGVyZTphZnRlcntjbGlwLXBhdGg6bm9uZTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyl9LmNvbmYudGlja2V0IC53aGVyZTpiZWZvcmV7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1jLWxpbmUpO2JvcmRlci1yaWdodC1jb2xvcjp2YXIoLS1jLWxpbmUpfS5jb25mLnRpY2tldCAud2hlcmU6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1jLWxpbmUpO2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLWMtbGluZSl9LnF1aWV0LWVuZHttYXJnaW4tdG9wOjZweH0uc3RlcCBidXR0b24sLnN0ZXAubGlnaHQgYnV0dG9uLC5jYWwtbmF2IGJ1dHRvbnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4fS5jYWwtZm9vdCAubGlua3l7bWluLWhlaWdodDo0MHB4O3BhZGRpbmc6MCA2cHg7bWFyZ2luOi04cHggLTZweH0udC1tZXRhOm5vdCg6aGFzKC5yYXRlKSk6aGFzKC50LXdoZXJlOmVtcHR5KXtkaXNwbGF5Om5vbmV9LnN0YXRlIC5saW5rLXJvd3t3aWR0aDoxMDAlfS5saW5rLXJvdz5zcGFuOmZpcnN0LWNoaWxke2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7bGluZS1oZWlnaHQ6MS4zNTt0ZXh0LWFsaWduOnN0YXJ0fS5saW5rLWdve2ZsZXg6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9LmNvbmYgLndoZW4gLm5ie2Rpc3BsYXk6YmxvY2t9LmNvbmYgLndoZW4gLm5iK3NwYW5bYXJpYS1oaWRkZW5de2Rpc3BsYXk6bm9uZX0uc2lte2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1pbmxpbmUtZW5kOjZweDtwYWRkaW5nOjFweCA2cHg7Ym9yZGVyOjFweCBzb2xpZCBjdXJyZW50Q29sb3I7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC1mYW1pbHk6dmFyKC0tZi1zYW5zKTtmb250LXNpemU6LjVlbTtmb250LXdlaWdodDo2NTA7bGV0dGVyLXNwYWNpbmc6LjAyZW07bGluZS1oZWlnaHQ6MS41O3ZlcnRpY2FsLWFsaWduOi4zNWVtO29wYWNpdHk6Ljh9LnQtbmFtZSAuc2ltLC5jb25mIC53aGVyZSAuc2lte2ZvbnQtc2l6ZToxMC41cHg7dmVydGljYWwtYWxpZ246LjE1ZW19LnNpbS1ub3Rle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo3cHg7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MS41fS5zaW0tbm90ZSAuaWNve2ZsZXg6bm9uZTt3aWR0aDoxNHB4O2hlaWdodDoxNHB4O21hcmdpbi10b3A6MnB4fS5yb29tLWxlYWR7bWFyZ2luOjA7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjR9LmxlYWQta3tkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MXB4O2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspO2ZvbnQtc2l6ZToxMC41cHg7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4wOGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX06bGFuZyh6aCkgLmxlYWQta3tsZXR0ZXItc3BhY2luZzouMDJlbX0uaC1mcmVle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDttYXJnaW4tdG9wOjZweDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTIuNXB4O2ZvbnQtd2VpZ2h0OjYwMH0uaC1mcmVlIC5pY297d2lkdGg6MTRweDtoZWlnaHQ6MTRweH06cm9vdHstLXItbGc6IDEycHh9OnJvb3QgLmgtbmFtZXtmb250LXNpemU6MjRweDtmb250LXdlaWdodDo4MDA7bGV0dGVyLXNwYWNpbmc6LS4wMmVtfTpyb290IC53diw6cm9vdCAudC1mcm9tLDpyb290IC5wLXRvdGFsLDpyb290IC5mZC1wcmljZSw6cm9vdCAuZmQtZG4sOnJvb3QgLmNkLXB7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zIGxpbmluZy1udW1zfTpyb290IC53dntmb250LXNpemU6MjBweDtmb250LXdlaWdodDo3NTA7bGV0dGVyLXNwYWNpbmc6LS4wMTVlbX06cm9vdCAudGlsZXN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MDtib3JkZXItdG9wOjEuNXB4IHNvbGlkIHZhcigtLWMtaW5rKX06cm9vdCAudGlsZXtwb3NpdGlvbjpyZWxhdGl2ZTtmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6c3RyZXRjaDtib3JkZXI6MDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fTpyb290IC50aWxlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtib3gtc2hhZG93Om5vbmU7dHJhbnNmb3JtOm5vbmV9OnJvb3QgLnRpbGUubG93ZXN0OmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjAgYXV0byAwIDA7d2lkdGg6M3B4O2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzKX06cm9vdCAudC1zaG90e2ZsZXg6MCAwIDEwNHB4O3dpZHRoOjEwNHB4O21pbi1oZWlnaHQ6MDthc3BlY3QtcmF0aW86MTttYXJnaW46MTRweCAwIDE0cHggMTJweDtib3JkZXItcmFkaXVzOjEwcHg7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0fTpyb290IC50LWJyYW5ke2Rpc3BsYXk6bm9uZX06cm9vdCAudC1ib2R5e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSBhdXRvO2dyaWQtdGVtcGxhdGUtYXJlYXM6Im5hbWUgZm9vdCIgIm1ldGEgZm9vdCIgInRhZ3MgZm9vdCI7YWxpZ24tY29udGVudDpzdGFydDtnYXA6NXB4IDE0cHg7cGFkZGluZzoxNHB4IDEycHggMTRweCAxNHB4fTpyb290IC50LW5hbWV7Z3JpZC1hcmVhOm5hbWU7Zm9udC1mYW1pbHk6dmFyKC0tZi1kaXNwbGF5KTtmb250LXNpemU6MTcuNXB4O2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTstd2Via2l0LWxpbmUtY2xhbXA6MztsaW5lLWNsYW1wOjN9OnJvb3QgLnQtbWV0YXtncmlkLWFyZWE6bWV0YTtmbGV4LXdyYXA6d3JhcDtnYXA6MnB4IDEwcHh9OnJvb3QgLnQtbWV0YSAucmF0ZXttYXJnaW4taW5saW5lLXN0YXJ0OjB9OnJvb3QgLnQtd2hlcmV7d2hpdGUtc3BhY2U6bm9ybWFsO292ZXJmbG93OnZpc2libGV9OnJvb3QgLnQtdGFnc3tncmlkLWFyZWE6dGFnczttYXJnaW4tdG9wOjNweH06cm9vdCAudC1mb290e2dyaWQtYXJlYTpmb290O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpmbGV4LWVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDttYXJnaW46MDtwYWRkaW5nOjA7dGV4dC1hbGlnbjplbmR9OnJvb3QgLnQtZnJvbXtmb250LXNpemU6MTlweDtmb250LXdlaWdodDo3NTB9OnJvb3QgLnQtZnJvbSBzbWFsbCw6cm9vdCAudC1zdWJ7bWF4LXdpZHRoOjc2cHg7bWFyZ2luLXRvcDoycHg7bWFyZ2luLWlubGluZS1zdGFydDphdXRvO2ZvbnQtc2l6ZToxMXB4O2xpbmUtaGVpZ2h0OjEuMzt3aGl0ZS1zcGFjZTpub3JtYWx9OnJvb3QgLnQtZ297ZGlzcGxheTpub25lfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpezpyb290IC50LXNob3R7ZmxleC1iYXNpczoxMzZweDt3aWR0aDoxMzZweH06cm9vdCAudC1uYW1le2ZvbnQtc2l6ZToxOXB4fTpyb290IC50LWZyb20gc21hbGwsOnJvb3QgLnQtc3Vie21heC13aWR0aDpub25lfX06cm9vdCAjY29udGVudDpoYXMoPi5oZXJvKT4uaGVyb3tvcmRlcjotNjthc3BlY3QtcmF0aW86MTYgLyA5fTpyb290ICNjb250ZW50Omhhcyg+Lmhlcm8pPi5zaW0tbm90ZXtvcmRlcjotNTttYXJnaW4tdG9wOi02cHh9OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+LnNlZ3tvcmRlcjotNH06cm9vdCAjY29udGVudDpoYXMoPi5oZXJvKT4ud2hlbmJhcntvcmRlcjotM306cm9vdCAjY29udGVudDpoYXMoPi5oZXJvKT4uc3RyaXAtaHtvcmRlcjotMjttYXJnaW4tYm90dG9tOi04cHg7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMDZlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9OnJvb3Q6bGFuZyh6aCkgLnN0cmlwLWh7bGV0dGVyLXNwYWNpbmc6LjAyZW19OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+LmZsZXgtZGF0ZXN7b3JkZXI6LTE7Z3JpZC1hdXRvLWZsb3c6Y29sdW1uO2dyaWQtYXV0by1jb2x1bW5zOm1pbm1heChtYXgtY29udGVudCwxZnIpO2dhcDowO21hcmdpbjowO3BhZGRpbmc6MDtvdmVyZmxvdy14OmF1dG87Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czoxMnB4O21hc2staW1hZ2U6bm9uZX06cm9vdCAuZmR7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7cGFkZGluZzo5cHggNnB4IDExcHg7Ym9yZGVyOjA7Ym9yZGVyLWlubGluZS1lbmQ6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym94LXNoYWRvdzpub25lO3RleHQtYWxpZ246Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMjVzIHZhcigtLWVhc2UpLGNvbG9yIC4yNXMgdmFyKC0tZWFzZSl9OnJvb3QgLmZkOmxhc3QtY2hpbGR7Ym9yZGVyLWlubGluZS1lbmQ6MH06cm9vdCAuZmQtZGF5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDowO2NvbG9yOnZhcigtLWMtaW5rLTMpfTpyb290IC5mZC1tb24sOnJvb3QgLmZkLWRvd3tmb250LXNpemU6MTAuNXB4O2ZvbnQtd2VpZ2h0OjY1MDtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9OnJvb3QgLmZkLW1vbntjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKX06cm9vdCAuZmQtZG57Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0Ojc1MDtsaW5lLWhlaWdodDoxLjE1fTpyb290IC5mZC1wcmljZXtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo2NTB9OnJvb3QgLmZkLm9ue2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jLW9uLXByaW1hcnkpO2JveC1zaGFkb3c6bm9uZX06cm9vdCAuZmQub24gLmZkLWRheSw6cm9vdCAuZmQub24gLmZkLWRuLDpyb290IC5mZC5vbiAuZmQtbW9uLDpyb290IC5mZC5vbiAuZmQtcHJpY2V7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KX06cm9vdCAuZmQubG93ZXN0Om5vdCgub24pe2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzLXNvZnQpfTpyb290IC5mZC5iZXN0IC5mZC1kYXk6YWZ0ZXJ7Y29udGVudDpub25lfTpyb290IC5mZC1sb3d7Y29sb3I6dmFyKC0tYy1zdWNjZXNzLWluayk7Zm9udC1zaXplOjkuNXB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9OnJvb3QgLmZkLm9uIC5mZC1sb3d7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KX1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXs6cm9vdCAuaGVyb3thc3BlY3QtcmF0aW86MjEgLyA5fX06cm9vdCAucm9vbXN7Z2FwOjA7Ym9yZGVyLXRvcDoxLjVweCBzb2xpZCB2YXIoLS1jLWluayl9OnJvb3QgLnJ0eXBlLDpyb290IC5yb29te2JvcmRlcjowO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9OnJvb3QgLnJvb217Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtncmlkLXRlbXBsYXRlLWFyZWFzOiJzaG90IiAibWFpbiIgImJ1eSI7cGFkZGluZzoxNnB4IDB9OnJvb3QgLnJ0eXBlLWhlYWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MTJweDtwYWRkaW5nOjE2cHggMCA4cHh9OnJvb3QgLnJvb20tc2hvdCw6cm9vdCAucnR5cGUtaGVhZCAucm9vbS1zaG90e2FsaWduLXNlbGY6c3RhcnQ7d2lkdGg6MTAwJTtoZWlnaHQ6YXV0bzthc3BlY3QtcmF0aW86MTYgLyA5O2JvcmRlci1yYWRpdXM6MTBweH06cm9vdCAucm9vbS1uYW1le2ZvbnQtc2l6ZToxN3B4O2ZvbnQtd2VpZ2h0Ojc1MH06cm9vdCAucnJhdGV7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtwYWRkaW5nOjEycHggMDtib3JkZXItdG9wOjFweCBkYXNoZWQgdmFyKC0tYy1saW5lKX06cm9vdCAucnJhdGUgLnJvb20tYnV5LDpyb290IC5yb29tIC5yb29tLWJ1eXtib3JkZXItdG9wOjA7cGFkZGluZy10b3A6MH06cm9vdCAucC10b3RhbHtmb250LXNpemU6MjBweH1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXs6cm9vdCAucm9vbXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjQwcHggbWlubWF4KDAsMWZyKTtncmlkLXRlbXBsYXRlLWFyZWFzOiJzaG90IG1haW4iICJzaG90IGJ1eSI7Z2FwOjEwcHggMThweH06cm9vdCAucnR5cGUtaGVhZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjQwcHggbWlubWF4KDAsMWZyKTtnYXA6MThweH06cm9vdCAucm9vbS1zaG90LDpyb290IC5ydHlwZS1oZWFkIC5yb29tLXNob3R7YXNwZWN0LXJhdGlvOjQgLyAzfTpyb290IC5ycmF0ZXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSBhdXRvO2FsaWduLWl0ZW1zOnN0YXJ0O2dhcDoxOHB4fTpyb290IC5ycmF0ZSAucm9vbS1idXl7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO3RleHQtYWxpZ246ZW5kfTpyb290IC5ycmF0ZSAucm9vbS1idXkgLnByaWNle2FsaWduLWl0ZW1zOmZsZXgtZW5kfX06cm9vdCAuZ297d2hpdGUtc3BhY2U6bm93cmFwfUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7OnJvb3QgLnRpbGUsOnJvb3QgLmZkLDpyb290IC50LXNob3QgaW1ne3RyYW5zaXRpb246bm9uZX19LmxlYWQta3tkaXNwbGF5OmlubGluZTttYXJnaW46MDtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6aW5oZXJpdDtmb250LXdlaWdodDo1NTA7bGV0dGVyLXNwYWNpbmc6MDt0ZXh0LXRyYW5zZm9ybTpub25lfS5sZWFkLWs6YWZ0ZXJ7Y29udGVudDoiOiAifTpsYW5nKHpoKSAubGVhZC1rOmFmdGVye2NvbnRlbnQ6Iu+8miJ9QG1lZGlhKG1heC13aWR0aDo1MjBweCl7OnJvb3QgLnQtc2hvdHtmbGV4LWJhc2lzOjg4cHg7d2lkdGg6ODhweH06cm9vdCAudC1ib2R5e2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpIGF1dG87Z3JpZC10ZW1wbGF0ZS1hcmVhczoibmFtZSBuYW1lIiAibWV0YSBtZXRhIiAidGFncyBmb290IjthbGlnbi1pdGVtczplbmR9OnJvb3QgLnQtbmFtZXtmb250LXNpemU6MTdweDstd2Via2l0LWxpbmUtY2xhbXA6dW5zZXQ7bGluZS1jbGFtcDpub25lO2Rpc3BsYXk6YmxvY2t9OnJvb3QgLnQtdGFnc3thbGlnbi1zZWxmOmVuZDttYXJnaW4tdG9wOjZweH06cm9vdCAudC10YWdzOmVtcHR5e2dyaWQtY29sdW1uOjEgLyAtMX19OnJvb3QgLmZke3BhZGRpbmc6OXB4IDNweCAxMXB4fTpyb290IC5mZC1wcmljZXtmb250LXNpemU6MTEuNXB4O2xldHRlci1zcGFjaW5nOi0uMDJlbX1bZGF0YS10aGVtZT1kYXJrXSAuaGVhZCAuYnJhbmR7cGFkZGluZzo1cHggOXB4O2JvcmRlci1yYWRpdXM6OXB4O2JhY2tncm91bmQ6I2QzZDllMztib3gtc2hhZG93Om5vbmU7ZmlsdGVyOmJyaWdodG5lc3MoLjgpfVtkYXRhLXRoZW1lPWRhcmtdIC5oZWFkIC5icmFuZC5kYXJrLWFydHtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6bm9uZTtmaWx0ZXI6bm9uZX0ud2hlbmJhciAud2hlbi1yb29tcy53aGVuLXBhcnR5LC5zZWFyY2ggLndoZW4tcm9vbXMud2hlbi1wYXJ0eXtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtnYXA6MDtwYWRkaW5nOjB9LnBhcnR5LXRpbGV7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpIGF1dG87YWxpZ24taXRlbXM6Y2VudGVyO2NvbHVtbi1nYXA6OHB4O3Jvdy1nYXA6MnB4O3dpZHRoOjEwMCU7bWluLWhlaWdodDo1MnB4O3BhZGRpbmc6OHB4IDEycHggOHB4IDE0cHg7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO2NvbG9yOmluaGVyaXQ7Zm9udDppbmhlcml0O3RleHQtYWxpZ246c3RhcnQ7Y3Vyc29yOnBvaW50ZXJ9LnBhcnR5LXRpbGUgLndse2dyaWQtY29sdW1uOjF9LnBhcnR5LXZ7Z3JpZC1jb2x1bW46MTtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30ucGFydHktdGlsZSAuaWNve2dyaWQtY29sdW1uOjI7Z3JpZC1yb3c6MSAvIHNwYW4gMjtjb2xvcjp2YXIoLS1jLWluay0zKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgdmFyKC0tZWFzZSl9LnBhcnR5LXRpbGVbYXJpYS1leHBhbmRlZD10cnVlXSAuaWNve3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfS5wYXJ0eS10aWxlOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgdmFyKC0tYy1mb2N1cyk7b3V0bGluZS1vZmZzZXQ6LTJweDtib3JkZXItcmFkaXVzOjEycHh9LnBhcnR5LXBhbmVse2Rpc3BsYXk6Z3JpZDtnYXA6MnB4O3BhZGRpbmc6NHB4IDEwcHggOHB4IDE0cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKX0ucGFydHktcGFuZWxbaGlkZGVuXXtkaXNwbGF5Om5vbmV9LnBhcnR5LXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxMy41cHg7Zm9udC13ZWlnaHQ6NjAwfS5wYXJ0eS1yb3cgLnN0ZXAubGlnaHR7Ym9yZGVyOjA7cGFkZGluZzowfUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LnBhcnR5LXRpbGUgLmljb3t0cmFuc2l0aW9uOm5vbmV9fS5wYXJ0eS12e3doaXRlLXNwYWNlOm5vd3JhcH06cm9vdCAuZmxleC1kYXRlczpub3QoLmF0LWVuZCl7bWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzAwMCBjYWxjKDEwMCUgLSAyNHB4KSx0cmFuc3BhcmVudCl9OnJvb3QgLmZsZXgtZGF0ZXM6bm90KC5hdC1zdGFydCk6bm90KC5hdC1lbmQpe21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50LCMwMDAgMTJweCwjMDAwIGNhbGMoMTAwJSAtIDI0cHgpLHRyYW5zcGFyZW50KX06cm9vdCAuZmxleC1kYXRlcy5hdC1lbmQ6bm90KC5hdC1zdGFydCl7bWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsIzAwMCAxMnB4KX06cm9vdCAuZmR7cGFkZGluZzo5cHggMnB4IDExcHh9OnJvb3QgLmZkLWxvd3tmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjB9OnJvb3QgLmZkLXByaWNle2ZvbnQtc2l6ZToxMXB4fS5oLXdoZXJlIC5zaW17Zm9udC1zaXplOjEwcHg7dmVydGljYWwtYWxpZ246LjFlbX0uY29uZiAuYmFuZCAud3Z7Zm9udC1zaXplOjE3cHh9QG1lZGlhKG1heC13aWR0aDo0MjBweCl7LmNvbmYgLmJhbmQgLnd2IHNtYWxse2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjFweCAwIDB9LmNvbmYgLmJhbmQtZHtwYWRkaW5nOjlweCAxMHB4fX0ucGF5LWZvcntkaXNwbGF5OmdyaWQ7Z2FwOjEwcHh9LnBheS1mb3IgLndoZXJle2ZvbnQtZmFtaWx5OnZhcigtLWYtZGlzcGxheSk7Zm9udC1zaXplOjE5cHg7Zm9udC13ZWlnaHQ6NjAwfS5wYXktZm9yIC5ub3Rle2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4fXAucXVpZXQtZW5ke21hcmdpbjo2cHggMCAwO3RleHQtYWxpZ246Y2VudGVyfS5saW5rcyAubGluay1yb3d7Ym9yZGVyLXJhZGl1czowfSNjb250ZW50Omhhcygud2hlbmJhciAuY2FsKT4uc3RyaXAtaCwjY29udGVudDpoYXMoLndoZW5iYXIgLmNhbCk+LmZsZXgtZGF0ZXN7ZGlzcGxheTpub25lfS5jZC5iZWZvcmU6bm90KDpkaXNhYmxlZCl7Y29sb3I6dmFyKC0tYy1pbmspfS5jZC5pbjpmb2N1cy12aXNpYmxlPnNwYW4sLmNkLm91dDpmb2N1cy12aXNpYmxlPnNwYW57b3V0bGluZS1jb2xvcjp2YXIoLS1jLWZvY3VzKTtvdXRsaW5lLW9mZnNldDoycHh9LmNhbC1mb290IC5nb3ttaW4taGVpZ2h0OjM2cHh9OnJvb3QgLnQtZm9vdHtmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6NnB4fTpyb290IC50LWZvb3QgLnQtZnJvbXt0ZXh0LWFsaWduOmVuZH06cm9vdCAudC1nb3tkaXNwbGF5OmdyaWQ7d2lkdGg6MjJweDtoZWlnaHQ6MjJweDttYXJnaW4tdG9wOjJweDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLWMtaW5rLTMpfTpyb290IC50aWxlOmhvdmVyIC50LWdve2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7OnJvb3QgLnQtc2hvdHtmbGV4LWJhc2lzOjE1MnB4O3dpZHRoOjE1MnB4O2FzcGVjdC1yYXRpbzo0IC8gM319OnJvb3QgLnQtZnJvbS50LW5vbmV7bWF4LXdpZHRoOjEwOHB4O2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMi41cHg7Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjEuMzU7dGV4dC1hbGlnbjplbmR9OnJvb3QgLnQtZnJvbSBzbWFsbCw6cm9vdCAudC1zdWJ7bWF4LXdpZHRoOjEwNHB4fS5wYXJ0eS1yb3cgLnN0ZXAgYnV0dG9uLC53aGVuLXJvb21zIC5zdGVwIGJ1dHRvbnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfS5wYXJ0eS1yb3cgLnN0ZXAgYnV0dG9uOmRpc2FibGVkLC53aGVuLXJvb21zIC5zdGVwIGJ1dHRvbjpkaXNhYmxlZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5zZWctYlthcmlhLXByZXNzZWQ9dHJ1ZV17YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCk7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxLjVweCB2YXIoLS1jLXByaW1hcnkpfS5yb29tLWhvdXJze2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspfS5zay10aWxlc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfS5zay10aWxle2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMDRweCAxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gYXV0byAxZnI7Y29sdW1uLWdhcDoxNHB4fS5zay1pbWd7Z3JpZC1yb3c6MSAvIHNwYW4gMzthc3BlY3QtcmF0aW86YXV0bztoZWlnaHQ6MTA0cHh9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7LnNrLXRpbGV7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjE1MnB4IDFmcn0uc2staW1ne2hlaWdodDoxMTRweH19OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+Lmhlcm97YXNwZWN0LXJhdGlvOjIgLyAxfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpezpyb290ICNjb250ZW50Omhhcyg+Lmhlcm8pPi5oZXJve2FzcGVjdC1yYXRpbzozIC8gMX19OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+Lmgtc3VtOm5vdCguc2ltLW5vdGUpLDpyb290ICNjb250ZW50Omhhcyg+Lmhlcm8pPi5hbWVue29yZGVyOjF9OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+Lmdvb2QtdG8ta25vd3tvcmRlcjoyfTpyb290IC5yb29tLXNob3QsOnJvb3QgLnJ0eXBlLWhlYWQgLnJvb20tc2hvdHthc3BlY3QtcmF0aW86MiAvIDF9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7OnJvb3QgLnJvb20tc2hvdCw6cm9vdCAucnR5cGUtaGVhZCAucm9vbS1zaG90e2FzcGVjdC1yYXRpbzo0IC8gM319OnJvb3QgLnJvb20uaG91cmx5e2dyaWQtdGVtcGxhdGUtY29sdW1uczo5NnB4IG1pbm1heCgwLDFmcik7Z3JpZC10ZW1wbGF0ZS1hcmVhczoic2hvdCBtYWluIiAiYnV5IGJ1eSJ9OnJvb3QgLnJvb20uaG91cmx5IC5yb29tLXNob3R7YXNwZWN0LXJhdGlvOjF9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7OnJvb3QgLnRpbGVze2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2NvbHVtbi1nYXA6MjJweH06cm9vdCAudC1zaG90e2ZsZXgtYmFzaXM6MTA4cHg7d2lkdGg6MTA4cHg7YXNwZWN0LXJhdGlvOjF9OnJvb3QgLnQtbmFtZXtmb250LXNpemU6MTdweH0uc2stdGlsZXN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9LnNrLXRpbGV7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjEwOHB4IDFmcn0uc2staW1ne2hlaWdodDoxMDhweH19OnJvb3QgLnQtc3ViIC5uYntkaXNwbGF5OmJsb2NrfTpyb290IC50LXN1YiAudC1zZXB7ZGlzcGxheTpub25lfS5jaGlwOm5vdCgudG9vbCk6bm90KC5uZXh0KXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfWJ1dHRvbi5jaGlwOm5vdCgudG9vbCk6bm90KC5uZXh0KTpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYy1saW5lLTIpO2JhY2tncm91bmQ6dmFyKC0tYy1iZyl9LmNoaXBbYXJpYS1wcmVzc2VkPXRydWVdOm5vdCgudG9vbCl7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSk7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCk7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9LnN0ZXB7Z2FwOjRweDtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uc3RlcCBidXR0b257d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX0uc3RlcCBidXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCl7YmFja2dyb3VuZDp2YXIoLS1jLWxpbmUpfS5zdGVwIGJ1dHRvbjpkaXNhYmxlZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fTpyb290IC5yb3dze2dhcDowO2JvcmRlci10b3A6MS41cHggc29saWQgdmFyKC0tYy1pbmspfTpyb290IC5yb3dzPi5yb3d7cGFkZGluZzoxNHB4IDA7Ym9yZGVyOjA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ucGF5LWNoZWNre2p1c3RpZnktc2VsZjpjZW50ZXI7bWluLWhlaWdodDozNnB4O2ZvbnQtc2l6ZToxM3B4fS5zdGF0ZS1ke3RleHQtd3JhcDpwcmV0dHl9Lmhlcm8td2hlcmUgLnJhdGUgc3Zne2NvbG9yOiNmZmZ9LnN0cmlwLWtleXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6OHB4O2NvbG9yOnZhcigtLWMtc3VjY2Vzcy1pbmspO2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjY1MDtsZXR0ZXItc3BhY2luZzowO3RleHQtdHJhbnNmb3JtOm5vbmV9LnN0cmlwLWtleTpiZWZvcmV7Y29udGVudDoiIjt3aWR0aDo4cHg7aGVpZ2h0OjhweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3VjY2Vzcy1zb2Z0KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCB2YXIoLS1jLXN1Y2Nlc3MpfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpezpyb290IC50LWJvZHl7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgYXV0bztncmlkLXRlbXBsYXRlLWFyZWFzOiJuYW1lIG5hbWUiICJtZXRhIG1ldGEiICJ0YWdzIGZvb3QiO2FsaWduLWl0ZW1zOmVuZH06cm9vdCAudC1uYW1le2Rpc3BsYXk6YmxvY2s7LXdlYmtpdC1saW5lLWNsYW1wOnVuc2V0O2xpbmUtY2xhbXA6bm9uZX06cm9vdCAudC10YWdzOmVtcHR5e2dyaWQtY29sdW1uOjEgLyAtMX19OnJvb3QgLnQtZm9vdHtncmlkLWFyZWE6Zm9vdDtqdXN0aWZ5LXNlbGY6ZW5kfTpyb290IC50LXN1Ynt0ZXh0LWFsaWduOmVuZH1AbWVkaWEobWF4LXdpZHRoOjQyMHB4KXs6cm9vdCAuZmQtcHJpY2V7Zm9udC1zaXplOjEwLjVweDtsZXR0ZXItc3BhY2luZzotLjAzZW19OnJvb3QgLmZkLWRue2ZvbnQtc2l6ZToxOHB4fX0ucGFydHktdnt3aGl0ZS1zcGFjZTpub3JtYWx9OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+LmFtZW57b3JkZXI6LTV9LnJldmlldy1oIC5oLXdoZXJle21hcmdpbi10b3A6MnB4O2NvbG9yOnZhcigtLWMtaW5rKTtmb250LWZhbWlseTp2YXIoLS1mLWRpc3BsYXkpO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjYwMH0uYmFuZC1kOmxhc3QtY2hpbGR7YWxpZ24taXRlbXM6ZmxleC1zdGFydDt0ZXh0LWFsaWduOnN0YXJ0fS5yb29tLWhvdXJze2NvbG9yOnZhcigtLWMtaW5rLTIpfS5yb3cgLmFjdGlvbntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHh9LnJvdyAuYWN0aW9uIC53bHttYXJnaW46MH06cm9vdHstLWMtYWNjZW50OiB2YXIoLS1jLWluayl9OnJvb3RbZGF0YS1hY2NlbnRdIC5jYXJke2JvcmRlci10b3A6M3B4IHNvbGlkIHZhcigtLWMtYWNjZW50KX06cm9vdFtkYXRhLWFjY2VudF0gLnRpbGVzLDpyb290W2RhdGEtYWNjZW50XSAucm9vbXMsOnJvb3RbZGF0YS1hY2NlbnRdIC5yb3dze2JvcmRlci10b3AtY29sb3I6dmFyKC0tYy1hY2NlbnQpfTpyb290W2RhdGEtYWNjZW50XSAuaGVyby10eHQ6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jazt3aWR0aDoyOHB4O2hlaWdodDoycHg7bWFyZ2luLWJvdHRvbToycHg7YmFja2dyb3VuZDp2YXIoLS1jLWFjY2VudCl9OnJvb3RbZGF0YS1hY2NlbnRdIC5wYXktZm9yIC53aGVyZTpiZWZvcmUsOnJvb3RbZGF0YS1hY2NlbnRdIC5yZXZpZXctaCAuaC13aGVyZTpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO3dpZHRoOjIycHg7aGVpZ2h0OjJweDttYXJnaW4tYm90dG9tOjZweDtiYWNrZ3JvdW5kOnZhcigtLWMtYWNjZW50KX06cm9vdFtkYXRhLWFjY2VudF0gLmNvbmYgLndoZXJle2JvcmRlci10b3AtY29sb3I6dmFyKC0tYy1hY2NlbnQpfTpyb290W2RhdGEtYWNjZW50XSAuZmQub257Ym94LXNoYWRvdzppbnNldCAwIC0zcHggMCB2YXIoLS1jLWFjY2VudCl9OnJvb3RbZGF0YS1hY2NlbnRdIC5jZC5pbj5zcGFuLDpyb290W2RhdGEtYWNjZW50XSAuY2Qub3V0PnNwYW57Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYy1iZyksMCAwIDAgMy41cHggdmFyKC0tYy1hY2NlbnQpfS5ib29raW5nLXJvd3tjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKX0uYm9va2luZy1yb3c6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfTpyb290IC5yb3dzPi5ib29raW5nLXJvd3twYWRkaW5nLWlubGluZTo4cHg7bWFyZ2luLWlubGluZTotOHB4O2JvcmRlci1yYWRpdXM6MTBweH0ub3Blbi1nb3tkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLWMtaW5rLTMpO2N1cnNvcjpwb2ludGVyfS5vcGVuLWdvOmhvdmVyLC5ib29raW5nLXJvdzpob3ZlciAub3Blbi1nb3tjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKX0ub3Blbi1nbzpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWMtZm9jdXMpO291dGxpbmUtb2Zmc2V0OjFweH0uYm9va2VkLndhaXRpbmcgLmJvb2tlZC1tYXJre2JhY2tncm91bmQ6dmFyKC0tYy13YXJuaW5nLXNvZnQpO2NvbG9yOnZhcigtLWMtd2FybmluZy1pbmspfS5ib29rZWQuZW5kZWQgLmJvb2tlZC1tYXJre2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0zKX1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXs6cm9vdCAucnR5cGV7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMDBweCBtaW5tYXgoMCwxZnIpO2NvbHVtbi1nYXA6MjBweDtwYWRkaW5nOjE2cHggMCA2cHh9OnJvb3QgLnJ0eXBlLWhlYWR7ZGlzcGxheTpjb250ZW50c306cm9vdCAucnR5cGUtaGVhZCAucm9vbS1zaG90e2dyaWQtY29sdW1uOjE7Z3JpZC1yb3c6MSAvIHNwYW4gMjthc3BlY3QtcmF0aW86NCAvIDN9OnJvb3QgLnJ0eXBlIC5yb29tLW1haW57Z3JpZC1jb2x1bW46MjtncmlkLXJvdzoxO3BhZGRpbmctYm90dG9tOjRweH06cm9vdCAucnR5cGUgLnJhdGVze2dyaWQtY29sdW1uOjI7Z3JpZC1yb3c6MjthbGlnbi1zZWxmOnN0YXJ0fTpyb290IC5ycmF0ZXtwYWRkaW5nOjEwcHggMDtnYXA6MTRweH06cm9vdCAucnJhdGUgLnJhdGUtbWFpbntnYXA6NHB4fTpyb290IC5yb29te2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMDBweCBtaW5tYXgoMCwxZnIpO2dhcDo4cHggMjBweDtwYWRkaW5nOjE2cHggMH06cm9vdCAucm9vbS1zaG90e2FzcGVjdC1yYXRpbzo0IC8gM306cm9vdCAuZmxleC1kYXRlc3t3aWR0aDptYXgtY29udGVudDttYXgtd2lkdGg6MTAwJTtncmlkLWF1dG8tY29sdW1uczptaW5tYXgoODRweCwxMDRweCl9OnJvb3QgLmZke3BhZGRpbmc6OHB4IDZweCAxMHB4fX1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXs6cm9vdCAucnJhdGUgLnJvb20tYnV5e2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjE2cHh9OnJvb3QgLnJyYXRlIC5yb29tLWJ1eSAucHJpY2V7YWxpZ24taXRlbXM6ZmxleC1lbmQ7dGV4dC1hbGlnbjplbmR9fTpyb290W2RhdGEtYWNjZW50XXstLWMtYWNjZW50OiB2YXIoLS1hY2NlbnQtcmF3KX06cm9vdFtkYXRhLXRoZW1lPWRhcmtdW2RhdGEtYWNjZW50LWRpbV17LS1jLWFjY2VudDogdmFyKC0tYy1saW5lLTIpfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpezpyb290IC5mbGV4LWRhdGVze3dpZHRoOm1pbigxMDAlLGNhbGModmFyKC0tbiwgNykgKiAxMThweCkpO2dyaWQtYXV0by1jb2x1bW5zOm1pbm1heCgwLDFmcil9OnJvb3QgLmZke2dhcDozcHg7cGFkZGluZzoxMnB4IDhweCAxNHB4fTpyb290IC5mZC1kbntmb250LXNpemU6MjJweH06cm9vdCAuZmQtcHJpY2V7Zm9udC1zaXplOjEyLjVweDtsZXR0ZXItc3BhY2luZzowfX06cm9vdHstLWMtZm9jdXM6IHZhcigtLWMtcHJpbWFyeSl9OnJvb3RbZGF0YS1icmFuZF06bm90KFtkYXRhLXRoZW1lPWRhcmtdKXstLWMtcHJpbWFyeTogdmFyKC0tYnJhbmQpOy0tYy1wcmltYXJ5LWhvdmVyOiB2YXIoLS1icmFuZC1ob3Zlcik7LS1jLXByaW1hcnktcHJlc3M6IHZhcigtLWJyYW5kLXByZXNzKTstLWMtb24tcHJpbWFyeTogdmFyKC0tYnJhbmQtb24pOy0tYy1wcmltYXJ5LWluazogdmFyKC0tYnJhbmQtaW5rKTstLWMtcHJpbWFyeS1zb2Z0OiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQpIDEyJSwgI2ZmZmZmZik7LS1jLXByaW1hcnktc29mdC0yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQpIDIyJSwgI2ZmZmZmZik7LS1jLWZvY3VzOiB2YXIoLS1icmFuZC1mb2N1cyl9W2RhdGEtdGhlbWU9ZGFya106cm9vdFtkYXRhLWJyYW5kXTpub3QoW2RhdGEtYnJhbmQtZGFyay1kaW1dKXstLWMtcHJpbWFyeTogdmFyKC0tYnJhbmQpOy0tYy1wcmltYXJ5LWhvdmVyOiB2YXIoLS1icmFuZC1ob3Zlcik7LS1jLXByaW1hcnktcHJlc3M6IHZhcigtLWJyYW5kLXByZXNzKTstLWMtb24tcHJpbWFyeTogdmFyKC0tYnJhbmQtb24pOy0tYy1wcmltYXJ5LWluazogdmFyKC0tYnJhbmQtaW5rLWRhcmspOy0tYy1wcmltYXJ5LXNvZnQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1icmFuZCkgMTYlLCAjMTExNzIzKTstLWMtcHJpbWFyeS1zb2Z0LTI6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1icmFuZCkgMjYlLCAjMTExNzIzKTstLWMtZm9jdXM6IHZhcigtLWJyYW5kLWZvY3VzLWRhcmspfS5iYWRnZS53YXJue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHh9LmJhZGdlLndhcm4gLmljb3t3aWR0aDoxMnB4O2hlaWdodDoxMnB4O2ZsZXg6bm9uZX0uaG91ci1ub3Rle2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweCAxMHB4O3BhZGRpbmc6MTBweCAxNHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6MTJweDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo1NTB9LmhvdXItbm90ZSAuaWNve2ZsZXg6bm9uZTt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2NvbG9yOnZhcigtLWMtaW5rLTMpfS5ob3VyLW5vdGUgc3BhbntmbGV4OjEgMSAyMDBweH0uaG91ci1ub3RlIC5saW5reXttaW4taGVpZ2h0OjMycHh9OnJvb3RbZGF0YS1mb250LW51bV0gOmlzKC50LWZyb20sLnN1bSwubW9uZXktb3V0LC5mZC1wcmljZSwuY29sLXByaWNlLC5wcy1wcmljZSwubiwud3YsLmNkLXAsLnAtdG90YWwsLmZkLWRuLC5wYXktYW1vdW50LC5wcmljZS1pbil7Zm9udC1mYW1pbHk6dmFyKC0tZi1udW0pfS5mYWlsZWR7bWFyZ2luLXRvcDoxOHB4fS5mYWlsZWQgLmZhaWx7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7cGFkZGluZzoxMnB4IDE0cHg7bWFyZ2luLXRvcDoxMHB4O2JhY2tncm91bmQ6dmFyKC0tYmFkLWJnKX0uZmFpbGVkIC5mYWlsLWh7ZGlzcGxheTpmbGV4O2dhcDoxMHB4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Y29sb3I6dmFyKC0tYmFkKX0uZmFpbGVkIC5mYWlsLWggLndoZXJle2NvbG9yOnZhcigtLWZnKX0uZmFpbGVkIC5mYWlsLXdoeXttYXJnaW46OHB4IDAgMDtjb2xvcjp2YXIoLS1mZyl9LmZhaWxlZCAuZmFpbC1hbHRze21hcmdpbi10b3A6MTBweDtiYWNrZ3JvdW5kOnZhcigtLWJnKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7cGFkZGluZzo4cHggMTBweH0uZmFpbGVkIC5hbHR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTJweDtwYWRkaW5nOjhweCAwO2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWxpbmUpfS5mYWlsZWQgLmFsdDpmaXJzdC1vZi10eXBle2JvcmRlci10b3A6MH0uZmFpbGVkIC5hbHQtdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi13aWR0aDowfS5mYWlsZWQgLmFsdC10IHNtYWxse2NvbG9yOnZhcigtLWZnLXNvZnQpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZmFpbGVkIC5mYWlsLWZvb3R7ZGlzcGxheTpmbGV4O2dhcDoxMnB4O2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tdG9wOjEwcHh9LmxhbmdwaWNre3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6bm9uZX0ubGFuZ2J0bntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2hlaWdodDozMnB4O21pbi13aWR0aDo0NHB4O3BhZGRpbmc6MCAxMHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NjAwO3doaXRlLXNwYWNlOm5vd3JhcDtjdXJzb3I6cG9pbnRlcn0ubGFuZ2J0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmxhbmdtZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDpjYWxjKDEwMCUgKyA2cHgpO3JpZ2h0OjA7ei1pbmRleDozMDtkaXNwbGF5OmdyaWQ7bWluLXdpZHRoOjE0OHB4O3BhZGRpbmc6NnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1tZCk7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtib3gtc2hhZG93OnZhcigtLWMtc2hhZG93LWNhcmQpfS5sYW5nbWVudSBidXR0b257ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTJweDttaW4taGVpZ2h0OjQwcHg7cGFkZGluZzowIDEwcHg7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLXNtKTtiYWNrZ3JvdW5kOm5vbmU7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6MTRweDt0ZXh0LWFsaWduOmxlZnQ7Y3Vyc29yOnBvaW50ZXJ9LmxhbmdtZW51IGJ1dHRvbjpob3ZlciwubGFuZ21lbnUgYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXXtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmxhbmdtZW51IGJ1dHRvblthcmlhLWNoZWNrZWQ9dHJ1ZV06YWZ0ZXJ7Y29udGVudDoi4pyTIjtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKTtmb250LXdlaWdodDo3MDB9PC9zdHlsZT4KICA8L2hlYWQ+CiAgPGJvZHk+CiAgICA8ZGl2IGNsYXNzPSJjYXJkIj4KICAgICAgPCEtLSBBIGNhbGwgb3V0IHRvIHRoZSBzZXJ2ZXI6IGEgbGluZSBhbG9uZyB0aGUgdG9wIC0gc2VlIGBzZXRCdXN5YC4gLS0+CiAgICAgIDxkaXYgY2xhc3M9ImJ1c3liYXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iaGVhZCI+CiAgICAgICAgPCEtLSBUaGUgZ3JvdXAncyB3b3JkbWFyayBhcnJpdmVzIFdJVEggVEhFIERBVEEgYXMgYGxvZ29VcmxgLiBOb3RoaW5nIGlzCiAgICAgICAgICAgICBiYWtlZCBpbiBoZXJlOiBhIGxvZ28gY29tcGlsZWQgaW50byB0aGUgY2FyZCBpcyB0aGUgZmlyc3QgYnJhbmQncywKICAgICAgICAgICAgIGFuZCBldmVyeSBob3RlbCBncm91cCBhZnRlciB0aGVtIHdvdWxkIHdlYXIgaXQuIFRoZSBicmFuZCBpcyBhbHNvCiAgICAgICAgICAgICB0aGUgd2F5IGhvbWUsIG9uIGV2ZXJ5IHZpZXcgKHJvYmluLCAyMDI2LTA5LTE4KS4gLS0+CiAgICAgICAgPGJ1dHRvbiBjbGFzcz0iaG9tZSIgaWQ9ImhvbWUiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImhvbWUiIGFyaWEtbGFiZWw9IkJhY2sgdG8gdGhlIGhvdGVscyI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJicmFuZCIgaWQ9ImJyYW5kIiBhbHQ9IiIgaGlkZGVuPgogICAgICAgICAgPHNwYW4gY2xhc3M9InRpdGxlIiBpZD0idGl0bGUiPjwvc3Bhbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJzayBzay1sb2dvIiBpZD0ic2tsb2dvIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPgogICAgICAgIDwvYnV0dG9uPgogICAgICAgIDxzcGFuIGNsYXNzPSJzdWIiIGlkPSJzdWIiPjwvc3Bhbj4KICAgICAgICA8IS0tIFRoZSB0aWVyLCBvciB0aGUgd2F5IGluLiBBIG1lbWJlciByYXRlIGlzIGEgZmFjdCBhYm91dCBldmVyeSBwcmljZQogICAgICAgICAgICAgb24gdGhlIGNhcmQsIHNvIGl0IGJlbG9uZ3MgaW4gdGhlIGhlYWRlciByYXRoZXIgdGhhbiBvbiBvbmUgdmlldy4gLS0+CiAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibWVtYmVyY2hpcCIgaWQ9Im1lbWJlcmNoaXAiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImFzay1zaWduLWluIiBoaWRkZW4+PC9idXR0b24+CiAgICAgICAgPCEtLSBUaGUgdHJpcCwgZnJvbSB0aGUgdG9wOiBhIGZvb3Rlci1vbmx5IGNhcnQgbWVhbnMgc2Nyb2xsaW5nIHBhc3QKICAgICAgICAgICAgIHR3ZW50eSB0aWxlcyB0byByZWFjaCBpdCAodGhlIHNob3BwaW5nIGNhcmQsIDIwMjYtMDktMTcpLiAtLT4KICAgICAgICA8YnV0dG9uIGNsYXNzPSJoZWFkdHJpcCIgaWQ9ImhlYWR0cmlwIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJ0cmlwIiBoaWRkZW4gYXJpYS1sYWJlbD0iVmlldyB0aGUgdHJpcCI+CiAgICAgICAgICA8IS0tIEEgc3VpdGNhc2U6IGEgdHJpcCBvZiBzdGF5cywgbm90IGEgc2hvcHBpbmcgYmFnLiAtLT4KICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIgogICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgICAgICA8cmVjdCB4PSIzLjUiIHk9IjciIHdpZHRoPSIxNyIgaGVpZ2h0PSIxMi41IiByeD0iMi41IiAvPgogICAgICAgICAgICA8cGF0aCBkPSJNOSA3VjUuNUExLjUgMS41IDAgMCAxIDEwLjUgNGgzQTEuNSAxLjUgMCAwIDEgMTUgNS41VjdNMy41IDEyLjVoMTciIC8+CiAgICAgICAgICA8L3N2Zz4KICAgICAgICAgIDxzcGFuIGlkPSJoZWFkdHJpcHdvcmQiPlRyaXA8L3NwYW4+PHNwYW4gY2xhc3M9ImhlYWR0cmlwLW4iIGlkPSJoZWFkdHJpcG4iPjA8L3NwYW4+CiAgICAgICAgPC9idXR0b24+CiAgICAgICAgPCEtLSBUaGUgY2FyZCdzIGxhbmd1YWdlLCB0aGUgZ3Vlc3QncyB0byBjaG9vc2UgKHJvYmluLCAyMDI2LTEwLTE0KToKICAgICAgICAgICAgIGVpZ2h0LCBlYWNoIGxpc3RlZCBpbiBpdHMgb3duIHdvcmRzIC0gc2VlIGBwaWNrTGFuZ2AuIC0tPgogICAgICAgIDxkaXYgY2xhc3M9ImxhbmdwaWNrIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImxhbmdidG4iIGlkPSJsYW5nYnRuIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJsYW5nLW1lbnUiIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJMYW5ndWFnZSI+CiAgICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIgogICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD0iMS44IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICAgICAgICAgICAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI4LjUiIC8+CiAgICAgICAgICAgICAgPHBhdGggZD0iTTMuNSAxMmgxN00xMiAzLjVjMi40IDIuNiAzLjYgNS40IDMuNiA4LjVzLTEuMiA1LjktMy42IDguNWMtMi40LTIuNi0zLjYtNS40LTMuNi04LjVTOS42IDYuMSAxMiAzLjVaIiAvPgogICAgICAgICAgICA8L3N2Zz4KICAgICAgICAgICAgPHNwYW4gaWQ9Imxhbmdub3ciPkVOPC9zcGFuPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nbWVudSIgaWQ9ImxhbmdtZW51IiByb2xlPSJtZW51IiBoaWRkZW4+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8IS0tIEV2ZXJ5IHJhdGUgb24gYSBkZW1vbnN0cmF0aW9uIHdhcyBtYWRlIHVwOiBzYWlkIG9uY2UsIGhlcmUsIG9uIGV2ZXJ5CiAgICAgICAgICAgdmlldyAtIHNlZSBcYHBhaW50RGVtb1xgLiAtLT4KICAgICAgPGRpdiBjbGFzcz0iZGVtb3N0cmlwIiBpZD0iZGVtb3N0cmlwIiByb2xlPSJub3RlIiBoaWRkZW4+PGIgaWQ9ImRlbW9sYWJlbCI+RGVtbzwvYj48c3BhbiBpZD0iZGVtb3RleHQiPjwvc3Bhbj48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic3ViaGVhZCIgaWQ9InN1YmhlYWQiIGhpZGRlbj4KICAgICAgICA8IS0tIE9uZSBzdGVwIGJhY2sgSU5TSURFIHRoZSBjYXJkIC0gdGhlIHRocmVlIGhvdGVscyB0aGV5IHdlcmUgY29tcGFyaW5nCiAgICAgICAgICAgICB3aGVuIHRoZXkgdGFwcGVkIG9uZSAocm9iaW4sIDIwMjYtMDktMjEpLiBUaGUgYnJhbmQgYWJvdmUgZ29lcyBob21lLAogICAgICAgICAgICAgd2hpY2ggaXMgYSBkaWZmZXJlbnQgYW5zd2VyLiAtLT4KICAgICAgICA8YnV0dG9uIGNsYXNzPSJiYWNrYnRuIiBpZD0iYmFja2J0biIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYmFjayIgaGlkZGVuPjwvYnV0dG9uPgogICAgICAgIDwhLS0gQm9va2luZyBhIHJvb20gaXMgdGhyZWUgc3RlcHMsIGFuZCB0aGUgY2FyZCBzYXlzIHdoaWNoIG9uZSB0aGlzIGlzLiAtLT4KICAgICAgICA8b2wgY2xhc3M9ImZsb3ciIGlkPSJmbG93IiBhcmlhLWxhYmVsPSJCb29raW5nIHN0ZXBzIiBoaWRkZW4+CiAgICAgICAgICA8bGkgZGF0YS1zdGVwPSIxIj48c3BhbiBjbGFzcz0iZmRvdCI+MTwvc3Bhbj48c3BhbiBjbGFzcz0iZmxhYmVsIiBpZD0iZmxvdzEiPkhvdGVsPC9zcGFuPjwvbGk+CiAgICAgICAgICA8bGkgZGF0YS1zdGVwPSIyIj48c3BhbiBjbGFzcz0iZmRvdCI+Mjwvc3Bhbj48c3BhbiBjbGFzcz0iZmxhYmVsIiBpZD0iZmxvdzIiPlJvb208L3NwYW4+PC9saT4KICAgICAgICAgIDxsaSBkYXRhLXN0ZXA9IjMiPjxzcGFuIGNsYXNzPSJmZG90Ij4zPC9zcGFuPjxzcGFuIGNsYXNzPSJmbGFiZWwiIGlkPSJmbG93MyI+Qm9vazwvc3Bhbj48L2xpPgogICAgICAgIDwvb2w+CiAgICAgIDwvZGl2PgogICAgICA8IS0tIEJlZm9yZSB0aGUgZmlyc3QgYW5zd2VyOiB0aGUgc2hhcGVzIG9mIHdoYXQgaXMgY29taW5nLCBub3QgYSB3b3JkLiAtLT4KICAgICAgPGRpdiBpZD0iY29udGVudCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2tlbCIgcm9sZT0ic3RhdHVzIiBhcmlhLWxhYmVsPSJMb2FkaW5nIj4KICAgICAgICAgIDwhLS0gVGhlIHNoYXBlcyBvZiB0aGUgbGlzdCB0aGF0IGlzIGNvbWluZywgd2hlcmUgdGhleSB3aWxsIGJlOiBhCiAgICAgICAgICAgICAgIHRpdGxlLCBpdHMgbGluZSwgdGhlIGRhdGVzLCB0aGUgc29ydCBhbmQgZmlsdGVycywgdGhlIHRpbGVzLiAtLT4KICAgICAgICAgIDxkaXYgY2xhc3M9InNrLXNheSI+RmluZGluZyBob3RlbHPigKY8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNrIHNrLWxpbmUgc2stc3ViIj48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNrIHNrLWJhciI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzay1jaGlwcyI+PGRpdiBjbGFzcz0ic2sgc2stY2hpcCI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stY2hpcCBzaG9ydCI+PC9kaXY+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzay10aWxlcyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNrLXRpbGUiPjxkaXYgY2xhc3M9InNrIHNrLWltZyI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stbGluZSI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stbGluZSBzaG9ydCI+PC9kaXY+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNrLXRpbGUiPjxkaXYgY2xhc3M9InNrIHNrLWltZyI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stbGluZSI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stbGluZSBzaG9ydCI+PC9kaXY+PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2JvZHk+CjwvaHRtbD4K', 'base64').toString('utf8');
5
+ export const HOTEL_CARD_HTML = Buffer.from('PCFkb2N0eXBlIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KICA8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgogICAgPG1ldGEgbmFtZT0idmlld3BvcnQiIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xIiAvPgogICAgPHRpdGxlPkhvdGVsczwvdGl0bGU+CiAgICA8c2NyaXB0IHR5cGU9Im1vZHVsZSIgY3Jvc3NvcmlnaW4+Y29uc3QgUGI9KGZ1bmN0aW9uKCl7Y29uc3QgdD10eXBlb2YgZG9jdW1lbnQ8InUiJiZkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIikucmVsTGlzdDtyZXR1cm4gdCYmdC5zdXBwb3J0cyYmdC5zdXBwb3J0cygibW9kdWxlcHJlbG9hZCIpPyJtb2R1bGVwcmVsb2FkIjoicHJlbG9hZCJ9KSgpLHhiPWZ1bmN0aW9uKGUsdCl7cmV0dXJuIG5ldyBVUkwoZSx0KS5ocmVmfSxHdT17fSxJYj1mdW5jdGlvbih0LG4sbyl7bGV0IHM9UHJvbWlzZS5yZXNvbHZlKCk7aWYobiYmbi5sZW5ndGg+MCl7bGV0IGk9ZnVuY3Rpb24odSl7cmV0dXJuIFByb21pc2UuYWxsKHUubWFwKHA9PlByb21pc2UucmVzb2x2ZShwKS50aGVuKG09Pih7c3RhdHVzOiJmdWxmaWxsZWQiLHZhbHVlOm19KSxtPT4oe3N0YXR1czoicmVqZWN0ZWQiLHJlYXNvbjptfSkpKSl9O2NvbnN0IGM9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImxpbmsiKSxoPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIm1ldGFbcHJvcGVydHk9Y3NwLW5vbmNlXSIpLGQ9aD8ubm9uY2V8fGg/LmdldEF0dHJpYnV0ZSgibm9uY2UiKTtzPWkobi5tYXAodT0+e2lmKHU9eGIodSxvKSx1IGluIEd1KXJldHVybjtHdVt1XT0hMDtjb25zdCBwPXUuZW5kc1dpdGgoIi5jc3MiKSxtPXA/J1tyZWw9InN0eWxlc2hlZXQiXSc6IiI7aWYoISFvKWZvcihsZXQgUz1jLmxlbmd0aC0xO1M+PTA7Uy0tKXtjb25zdCBOPWNbU107aWYoTi5ocmVmPT09dSYmKCFwfHxOLnJlbD09PSJzdHlsZXNoZWV0IikpcmV0dXJufWVsc2UgaWYoZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgbGlua1tocmVmPSIke3V9Il0ke219YCkpcmV0dXJuO2NvbnN0ICQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgibGluayIpO2lmKCQucmVsPXA/InN0eWxlc2hlZXQiOlBiLHB8fCgkLmFzPSJzY3JpcHQiKSwkLmNyb3NzT3JpZ2luPSIiLCQuaHJlZj11LGQmJiQuc2V0QXR0cmlidXRlKCJub25jZSIsZCksZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZCgkKSxwKXJldHVybiBuZXcgUHJvbWlzZSgoUyxOKT0+eyQuYWRkRXZlbnRMaXN0ZW5lcigibG9hZCIsUyksJC5hZGRFdmVudExpc3RlbmVyKCJlcnJvciIsKCk9Pk4obmV3IEVycm9yKGBVbmFibGUgdG8gcHJlbG9hZCBDU1MgZm9yICR7dX1gKSkpfSl9KSl9ZnVuY3Rpb24gcihpKXtjb25zdCBjPW5ldyBFdmVudCgidml0ZTpwcmVsb2FkRXJyb3IiLHtjYW5jZWxhYmxlOiEwfSk7aWYoYy5wYXlsb2FkPWksd2luZG93LmRpc3BhdGNoRXZlbnQoYyksIWMuZGVmYXVsdFByZXZlbnRlZCl0aHJvdyBpfXJldHVybiBzLnRoZW4oaT0+e2Zvcihjb25zdCBjIG9mIGl8fFtdKWMuc3RhdHVzPT09InJlamVjdGVkIiYmcihjLnJlYXNvbik7cmV0dXJuIHQoKS5jYXRjaChyKX0pfTtmdW5jdGlvbiBFYihlKXtyZXR1cm4gZX1mdW5jdGlvbiBSYihlKXtyZXR1cm4gZX1mdW5jdGlvbiBGcygpe3JldHVybiBlPT5lfWZ1bmN0aW9uIE9iKGUpe31mdW5jdGlvbiBNYihlKXt0aHJvdyBuZXcgRXJyb3IoIlVuZXhwZWN0ZWQgdmFsdWUgaW4gZXhoYXVzdGl2ZSBjaGVjayIpfWZ1bmN0aW9uIFpiKGUpe31mdW5jdGlvbiB6YShlKXtjb25zdCB0PU9iamVjdC52YWx1ZXMoZSkuZmlsdGVyKG89PnR5cGVvZiBvPT0ibnVtYmVyIik7cmV0dXJuIE9iamVjdC5lbnRyaWVzKGUpLmZpbHRlcigoW28sc10pPT50LmluZGV4T2YoK28pPT09LTEpLm1hcCgoW28sc10pPT5zKX1mdW5jdGlvbiBDYShlLHQ9InwiKXtyZXR1cm4gZS5tYXAobj0+Y2kobikpLmpvaW4odCl9ZnVuY3Rpb24ganMoZSx0KXtyZXR1cm4gdHlwZW9mIHQ9PSJiaWdpbnQiP3QudG9TdHJpbmcoKTp0fWNsYXNzIHFie2NvbnN0cnVjdG9yKHQpe3RoaXMuX2dldHRlcj10LHRoaXMuX3ZhbHVlPXZvaWQgMH1nZXQgdmFsdWUoKXtjb25zdCB0PXRoaXMuX2dldHRlcjtyZXR1cm4gdCE9PXZvaWQgMCYmKHRoaXMuX3ZhbHVlPXQoKSx0aGlzLl9nZXR0ZXI9dm9pZCAwKSx0aGlzLl92YWx1ZX19ZnVuY3Rpb24gWG4oZSl7cmV0dXJuIG5ldyBxYihlKX1mdW5jdGlvbiBhaShlKXtyZXR1cm4gZT09bnVsbH1mdW5jdGlvbiBndChlKXtjb25zdCB0PWUuc3RhcnRzV2l0aCgiXiIpPzE6MCxuPWUuZW5kc1dpdGgoIiQiKT9lLmxlbmd0aC0xOmUubGVuZ3RoO3JldHVybiBlLnNsaWNlKHQsbil9ZnVuY3Rpb24gUWQoZSx0KXtjb25zdCBuPWUvdCxvPU1hdGgucm91bmQobikscz00Kk51bWJlci5FUFNJTE9OKk1hdGgubWF4KE1hdGguYWJzKG4pLDEpO3JldHVybiBNYXRoLmFicyhuLW8pPHM/MDpuLW99Y29uc3QgSnU9U3ltYm9sKCJldmFsdWF0aW5nIik7ZnVuY3Rpb24gWGQoZSx0LG4pe2xldCBvO09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2dldCgpe2lmKG8hPT1KdSlyZXR1cm4gbz09PXZvaWQgMCYmKG89SnUsbz1uKCkpLG99LHNldChzKXtPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHt2YWx1ZTpzfSl9LGNvbmZpZ3VyYWJsZTohMH0pfWZ1bmN0aW9uIERiKGUpe3JldHVybiBPYmplY3QuY3JlYXRlKE9iamVjdC5nZXRQcm90b3R5cGVPZihlKSxPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyhlKSl9ZnVuY3Rpb24gTHQoZSx0LG4pe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4sd3JpdGFibGU6ITAsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9KX1mdW5jdGlvbiBVcyhlKXtjb25zdCB0PU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZSwic2hhcGUiKTtyZXR1cm4gdD8uZ2V0P3QuZ2V0LnJhdzp0Py52YWx1ZX1mdW5jdGlvbiBzdChlKXtyZXR1cm4gVXMoZS5fem9kLmRlZik/P2UuX3pvZC5kZWYuc2hhcGV9ZnVuY3Rpb24gZWgoZSx0LG4pe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2dldCgpe2NvbnN0IG89bigpO3JldHVybiBMdCh0aGlzLHQsbyksb30sZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9KX1mdW5jdGlvbiB0aChlLHQsbil7dCBpbiBlP0x0KGUsdCxuKTplW3RdPW59ZnVuY3Rpb24gTnQoZSx0LG4sbyl7Y29uc3Qgcz1zdCh0KTtmb3IoY29uc3QgciBvZiBuKXtjb25zdCBpPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocyxyKTtpLmVudW1lcmFibGUmJihpLmdldD9laChlLHIsKCk9Pntjb25zdCBjPXQuX3pvZC5kZWYuc2hhcGVbcl07cmV0dXJuIG8/byhjLHIpOmN9KTp0aChlLHIsbz9vKGkudmFsdWUscik6aS52YWx1ZSkpfX1mdW5jdGlvbiBMYihlLHQpe2Zvcihjb25zdCBuIG9mIFJlZmxlY3Qub3duS2V5cyh0KSl7Y29uc3Qgbz1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsbik7by5lbnVtZXJhYmxlJiYoby5nZXQ/ZWgoZSxuLCgpPT50W25dKTp0aChlLG4sby52YWx1ZSkpfX1mdW5jdGlvbiBTZSguLi5lKXtjb25zdCB0PXt9O2Zvcihjb25zdCBuIG9mIGUpe2NvbnN0IG89T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcnMobik7T2JqZWN0LmFzc2lnbih0LG8pfXJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydGllcyh7fSx0KX1mdW5jdGlvbiBCYihlKXtyZXR1cm4gU2UoZS5fem9kLmRlZil9ZnVuY3Rpb24gSGIoZSx0KXtyZXR1cm4gdD90LnJlZHVjZSgobixvKT0+bj8uW29dLGUpOmV9ZnVuY3Rpb24gRmIoZSl7Y29uc3QgdD1PYmplY3Qua2V5cyhlKSxuPXQubWFwKG89PmVbb10pO3JldHVybiBQcm9taXNlLmFsbChuKS50aGVuKG89Pntjb25zdCBzPXt9O2ZvcihsZXQgcj0wO3I8dC5sZW5ndGg7cisrKXNbdFtyXV09b1tyXTtyZXR1cm4gc30pfWZ1bmN0aW9uIFViKGU9MTApe2NvbnN0IHQ9ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6IjtsZXQgbj0iIjtmb3IobGV0IG89MDtvPGU7bysrKW4rPXRbTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKnQubGVuZ3RoKV07cmV0dXJuIG59ZnVuY3Rpb24gbmgoZSl7cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUpfWZ1bmN0aW9uIG9oKGUpe3JldHVybiBlLnRvTG93ZXJDYXNlKCkudHJpbSgpLnJlcGxhY2UoL1teXHdccy1dL2csIiIpLnJlcGxhY2UoL1tcc18tXSsvZywiLSIpLnJlcGxhY2UoL14tK3wtKyQvZywiIil9Y29uc3QgaWk9ImNhcHR1cmVTdGFja1RyYWNlImluIEVycm9yP0Vycm9yLmNhcHR1cmVTdGFja1RyYWNlOiguLi5lKT0+e307ZnVuY3Rpb24gZW4oZSl7cmV0dXJuIHR5cGVvZiBlPT0ib2JqZWN0IiYmZSE9PW51bGwmJiFBcnJheS5pc0FycmF5KGUpfWNvbnN0IHNoPVhuKCgpPT57aWYoQWUuaml0bGVzc3x8dHlwZW9mIG5hdmlnYXRvcjwidSImJm5hdmlnYXRvcj8udXNlckFnZW50Py5pbmNsdWRlcygiQ2xvdWRmbGFyZSIpKXJldHVybiExO3RyeXtjb25zdCBlPUZ1bmN0aW9uO3JldHVybiBuZXcgZSgiIiksITB9Y2F0Y2h7cmV0dXJuITF9fSk7ZnVuY3Rpb24ga3QoZSl7aWYoZW4oZSk9PT0hMSlyZXR1cm4hMTtjb25zdCB0PWUuY29uc3RydWN0b3I7aWYodD09PXZvaWQgMHx8dHlwZW9mIHQhPSJmdW5jdGlvbiIpcmV0dXJuITA7Y29uc3Qgbj10LnByb3RvdHlwZTtyZXR1cm4hKGVuKG4pPT09ITF8fE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChuLCJpc1Byb3RvdHlwZU9mIik9PT0hMSl9ZnVuY3Rpb24gVnMoZSl7cmV0dXJuIGt0KGUpP3suLi5lfTpBcnJheS5pc0FycmF5KGUpP1suLi5lXTplIGluc3RhbmNlb2YgTWFwP25ldyBNYXAoZSk6ZSBpbnN0YW5jZW9mIFNldD9uZXcgU2V0KGUpOmV9ZnVuY3Rpb24gVmIoZSl7bGV0IHQ9MDtmb3IoY29uc3QgbiBpbiBlKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLG4pJiZ0Kys7cmV0dXJuIHR9Y29uc3QgV2I9ZT0+e2NvbnN0IHQ9dHlwZW9mIGU7c3dpdGNoKHQpe2Nhc2UidW5kZWZpbmVkIjpyZXR1cm4idW5kZWZpbmVkIjtjYXNlInN0cmluZyI6cmV0dXJuInN0cmluZyI7Y2FzZSJudW1iZXIiOnJldHVybiBOdW1iZXIuaXNOYU4oZSk/Im5hbiI6Im51bWJlciI7Y2FzZSJib29sZWFuIjpyZXR1cm4iYm9vbGVhbiI7Y2FzZSJmdW5jdGlvbiI6cmV0dXJuImZ1bmN0aW9uIjtjYXNlImJpZ2ludCI6cmV0dXJuImJpZ2ludCI7Y2FzZSJzeW1ib2wiOnJldHVybiJzeW1ib2wiO2Nhc2Uib2JqZWN0IjpyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8iYXJyYXkiOmU9PT1udWxsPyJudWxsIjplLnRoZW4mJnR5cGVvZiBlLnRoZW49PSJmdW5jdGlvbiImJmUuY2F0Y2gmJnR5cGVvZiBlLmNhdGNoPT0iZnVuY3Rpb24iPyJwcm9taXNlIjp0eXBlb2YgTWFwPCJ1IiYmZSBpbnN0YW5jZW9mIE1hcD8ibWFwIjp0eXBlb2YgU2V0PCJ1IiYmZSBpbnN0YW5jZW9mIFNldD8ic2V0Ijp0eXBlb2YgRGF0ZTwidSImJmUgaW5zdGFuY2VvZiBEYXRlPyJkYXRlIjp0eXBlb2YgRmlsZTwidSImJmUgaW5zdGFuY2VvZiBGaWxlPyJmaWxlIjoib2JqZWN0IjtkZWZhdWx0OnRocm93IG5ldyBFcnJvcihgVW5rbm93biBkYXRhIHR5cGU6ICR7dH1gKX19LFRzPW5ldyBTZXQoWyJzdHJpbmciLCJudW1iZXIiLCJzeW1ib2wiXSkscmg9bmV3IFNldChbInN0cmluZyIsIm51bWJlciIsImJpZ2ludCIsImJvb2xlYW4iLCJzeW1ib2wiLCJ1bmRlZmluZWQiXSk7ZnVuY3Rpb24gcnQoZSl7cmV0dXJuIGUucmVwbGFjZSgvWy4qKz9eJHt9KCl8W1xdXFxdL2csIlxcJCYiKX1mdW5jdGlvbiBsZShlLHQsbil7Y29uc3Qgbz1uZXcgZS5fem9kLmNvbnN0cih0Pz9lLl96b2QuZGVmKTtyZXR1cm4oIXR8fG4/LnBhcmVudCkmJihvLl96b2QucGFyZW50PWUpLG99ZnVuY3Rpb24gdyhlKXtjb25zdCB0PWU7aWYoIXQpcmV0dXJue307aWYodHlwZW9mIHQ9PSJzdHJpbmciKXJldHVybntlcnJvcjooKT0+dH07aWYodD8ubWVzc2FnZSE9PXZvaWQgMCl7aWYodD8uZXJyb3IhPT12b2lkIDApdGhyb3cgbmV3IEVycm9yKCJDYW5ub3Qgc3BlY2lmeSBib3RoIGBtZXNzYWdlYCBhbmQgYGVycm9yYCBwYXJhbXMiKTt0LmVycm9yPXQubWVzc2FnZX1yZXR1cm4gZGVsZXRlIHQubWVzc2FnZSx0eXBlb2YgdC5lcnJvcj09InN0cmluZyI/ey4uLnQsZXJyb3I6KCk9PnQuZXJyb3J9OnR9ZnVuY3Rpb24gS2IoZSl7bGV0IHQ7cmV0dXJuIG5ldyBQcm94eSh7fSx7Z2V0KG4sbyxzKXtyZXR1cm4gdD8/KHQ9ZSgpKSxSZWZsZWN0LmdldCh0LG8scyl9LHNldChuLG8scyxyKXtyZXR1cm4gdD8/KHQ9ZSgpKSxSZWZsZWN0LnNldCh0LG8scyxyKX0saGFzKG4sbyl7cmV0dXJuIHQ/Pyh0PWUoKSksUmVmbGVjdC5oYXModCxvKX0sZGVsZXRlUHJvcGVydHkobixvKXtyZXR1cm4gdD8/KHQ9ZSgpKSxSZWZsZWN0LmRlbGV0ZVByb3BlcnR5KHQsbyl9LG93bktleXMobil7cmV0dXJuIHQ/Pyh0PWUoKSksUmVmbGVjdC5vd25LZXlzKHQpfSxnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixvKXtyZXR1cm4gdD8/KHQ9ZSgpKSxSZWZsZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih0LG8pfSxkZWZpbmVQcm9wZXJ0eShuLG8scyl7cmV0dXJuIHQ/Pyh0PWUoKSksUmVmbGVjdC5kZWZpbmVQcm9wZXJ0eSh0LG8scyl9fSl9ZnVuY3Rpb24gY2koZSl7cmV0dXJuIHR5cGVvZiBlPT0iYmlnaW50Ij9lLnRvU3RyaW5nKCkrIm4iOnR5cGVvZiBlPT0ic3RyaW5nIj9gIiR7ZX0iYDpgJHtlfWB9ZnVuY3Rpb24gYWgoZSl7cmV0dXJuIE9iamVjdC5rZXlzKGUpLmZpbHRlcih0PT5lW3RdLl96b2Qub3B0aW4hPT12b2lkIDAmJmVbdF0uX3pvZC5vcHRvdXQ9PT0ib3B0aW9uYWwiKX1jb25zdCBpaD17c2FmZWludDpbTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVIsTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJdLGludDMyOlstMjE0NzQ4MzY0OCwyMTQ3NDgzNjQ3XSx1aW50MzI6WzAsNDI5NDk2NzI5NV0sZmxvYXQzMjpbLTM0MDI4MjM0NjYzODUyODg2ZTIyLDM0MDI4MjM0NjYzODUyODg2ZTIyXSxmbG9hdDY0OlstTnVtYmVyLk1BWF9WQUxVRSxOdW1iZXIuTUFYX1ZBTFVFXX0sY2g9e2ludDY0OltCaWdJbnQoIi05MjIzMzcyMDM2ODU0Nzc1ODA4IiksQmlnSW50KCI5MjIzMzcyMDM2ODU0Nzc1ODA3IildLHVpbnQ2NDpbQmlnSW50KDApLEJpZ0ludCgiMTg0NDY3NDQwNzM3MDk1NTE2MTUiKV19O2Z1bmN0aW9uIGxoKGUsdCl7Y29uc3Qgbj1lLl96b2QuZGVmLG89bi5jaGVja3M7aWYobyYmby5sZW5ndGg+MCl0aHJvdyBuZXcgRXJyb3IoIi5waWNrKCkgY2Fubm90IGJlIHVzZWQgb24gb2JqZWN0IHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50cyIpO2NvbnN0IHI9e307cmV0dXJuIE50KHIsZSxXcyhlLHQpKSxsZShlLFNlKG4se3NoYXBlOnIsY2hlY2tzOltdfSkpfWZ1bmN0aW9uIFdzKGUsdCl7Y29uc3Qgbj1zdChlKSxvPVtdO2Zvcihjb25zdCBzIG9mIFJlZmxlY3Qub3duS2V5cyh0KSl7aWYoIU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IobixzKT8uZW51bWVyYWJsZSl0aHJvdyBuZXcgRXJyb3IoYFVucmVjb2duaXplZCBrZXk6ICIke1N0cmluZyhzKX0iYCk7dFtzXSYmby5wdXNoKHMpfXJldHVybiBvfWZ1bmN0aW9uIHVoKGUsdCl7Y29uc3Qgbj1lLl96b2QuZGVmLG89bi5jaGVja3M7aWYobyYmby5sZW5ndGg+MCl0aHJvdyBuZXcgRXJyb3IoIi5vbWl0KCkgY2Fubm90IGJlIHVzZWQgb24gb2JqZWN0IHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50cyIpO2NvbnN0IHI9bmV3IFNldChXcyhlLHQpKSxpPXt9O3JldHVybiBOdChpLGUsUmVmbGVjdC5vd25LZXlzKHN0KGUpKS5maWx0ZXIoYz0+IXIuaGFzKGMpKSksbGUoZSxTZShuLHtzaGFwZTppLGNoZWNrczpbXX0pKX1mdW5jdGlvbiBkaChlLHQpe2lmKCFrdCh0KSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQgdG8gZXh0ZW5kOiBleHBlY3RlZCBhIHBsYWluIG9iamVjdCIpO2NvbnN0IG49ZS5fem9kLmRlZi5jaGVja3M7aWYobiYmbi5sZW5ndGg+MCl7Y29uc3Qgcz1zdChlKTtmb3IoY29uc3QgciBvZiBSZWZsZWN0Lm93bktleXModCkpaWYoT2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihzLHIpIT09dm9pZCAwKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IG92ZXJ3cml0ZSBrZXlzIG9uIG9iamVjdCBzY2hlbWFzIGNvbnRhaW5pbmcgcmVmaW5lbWVudHMuIFVzZSBgLnNhZmVFeHRlbmQoKWAgaW5zdGVhZC4iKX1yZXR1cm4gbGUoZSxTZShlLl96b2QuZGVmLHtzaGFwZTpoaChlLHQpfSkpfWZ1bmN0aW9uIGhoKGUsdCl7Y29uc3Qgbj17fTtyZXR1cm4gTnQobixlLFJlZmxlY3Qub3duS2V5cyhzdChlKSkpLExiKG4sdCksbn1mdW5jdGlvbiBwaChlLHQpe2lmKCFrdCh0KSl0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQgdG8gc2FmZUV4dGVuZDogZXhwZWN0ZWQgYSBwbGFpbiBvYmplY3QiKTtyZXR1cm4gbGUoZSxTZShlLl96b2QuZGVmLHtzaGFwZTpoaChlLHQpfSkpfWZ1bmN0aW9uIG1oKGUsdCl7aWYoIXQ/Ll96b2Q/LmRlZil0aHJvdyBuZXcgRXJyb3IoIkludmFsaWQgaW5wdXQgdG8gbWVyZ2U6IGV4cGVjdGVkIGFuIG9iamVjdCBzY2hlbWEuIFRvIG1lcmdlIGEgcGxhaW4gc2hhcGUsIHVzZSBgLmV4dGVuZCgpYC4iKTtpZihlLl96b2QuZGVmLmNoZWNrcz8ubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiLm1lcmdlKCkgY2Fubm90IGJlIHVzZWQgb24gb2JqZWN0IHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50cy4gVXNlIC5zYWZlRXh0ZW5kKCkgaW5zdGVhZC4iKTtjb25zdCBuPXt9O050KG4sZSxSZWZsZWN0Lm93bktleXMoc3QoZSkpKSxOdChuLHQsUmVmbGVjdC5vd25LZXlzKHN0KHQpKSk7Y29uc3Qgbz1TZShlLl96b2QuZGVmLHtzaGFwZTpuLGdldCBjYXRjaGFsbCgpe3JldHVybiB0Ll96b2QuZGVmLmNhdGNoYWxsfSxjaGVja3M6dC5fem9kLmRlZi5jaGVja3M/P1tdfSk7cmV0dXJuIGxlKGUsbyl9ZnVuY3Rpb24gTmEoZSx0LG4sbz0icGFydGlhbCIpe2NvbnN0IHI9dC5fem9kLmRlZi5jaGVja3M7aWYociYmci5sZW5ndGg+MCl0aHJvdyBuZXcgRXJyb3IoYC4ke299KCkgY2Fubm90IGJlIHVzZWQgb24gb2JqZWN0IHNjaGVtYXMgY29udGFpbmluZyByZWZpbmVtZW50c2ApO2NvbnN0IGM9bj9uZXcgU2V0KFdzKHQsbikpOnZvaWQgMCxoPXt9O3JldHVybiBOdChoLHQsUmVmbGVjdC5vd25LZXlzKHN0KHQpKSxlJiYoKGQsdSk9PmMmJiFjLmhhcyh1KT9kOm5ldyBlKHt0eXBlOiJvcHRpb25hbCIsaW5uZXJUeXBlOmR9KSkpLGxlKHQsU2UodC5fem9kLmRlZix7c2hhcGU6aCxjaGVja3M6W119KSl9ZnVuY3Rpb24gZmgoZSx0LG4pe2NvbnN0IG89bj9uZXcgU2V0KFdzKHQsbikpOnZvaWQgMCxzPXt9O3JldHVybiBOdChzLHQsUmVmbGVjdC5vd25LZXlzKHN0KHQpKSwocixpKT0+byYmIW8uaGFzKGkpP3I6bmV3IGUoe3R5cGU6Im5vbm9wdGlvbmFsIixpbm5lclR5cGU6cn0pKSxsZSh0LFNlKHQuX3pvZC5kZWYse3NoYXBlOnN9KSl9ZnVuY3Rpb24gUGUoZSx0PTApe2lmKGUuYWJvcnRlZD09PSEwKXJldHVybiEwO2ZvcihsZXQgbj10O248ZS5pc3N1ZXMubGVuZ3RoO24rKylpZihlLmlzc3Vlc1tuXT8uY29udGludWUhPT0hMClyZXR1cm4hMDtyZXR1cm4hMX1mdW5jdGlvbiBnaChlLHQ9MCl7aWYoZS5hYm9ydGVkPT09ITApcmV0dXJuITA7Zm9yKGxldCBuPXQ7bjxlLmlzc3Vlcy5sZW5ndGg7bisrKWlmKGUuaXNzdWVzW25dPy5jb250aW51ZT09PSExKXJldHVybiEwO3JldHVybiExfWZ1bmN0aW9uIERlKGUsdCl7cmV0dXJuIHQubWFwKG49Pnt2YXIgbztyZXR1cm4obz1uKS5wYXRoPz8oby5wYXRoPVtdKSxuLnBhdGgudW5zaGlmdChlKSxufSl9ZnVuY3Rpb24gVXQoZSl7cmV0dXJuIHR5cGVvZiBlPT0ic3RyaW5nIj9lOmU/Lm1lc3NhZ2V9ZnVuY3Rpb24gUGEoZSx0LG4pe3ZhciBvO2ZvcihsZXQgcz10O3M8ZS5sZW5ndGg7cysrKShvPWVbc10pLnNjaGVtYT8/KG8uc2NoZW1hPW4pfWZ1bmN0aW9uIEZlKGUsdCxuKXt2YXIgbztjb25zdCBzPWUuaW5zdD8uX3pvZD8udHJhaXRzO3M/LmhhcygiJFpvZFR5cGUiKSYmKHMuaGFzKCIkWm9kQ2hlY2siKT8obz1lKS5zY2hlbWE/PyhvLnNjaGVtYT1lLmluc3QpOmUuc2NoZW1hPWUuaW5zdCk7Y29uc3Qgcj1lLnNjaGVtYSE9PWUuaW5zdD9lLnNjaGVtYT8uX3pvZC5kZWY/LmVycm9yOnZvaWQgMCxpPWUubWVzc2FnZT9lLm1lc3NhZ2U6VXQoZS5pbnN0Py5fem9kLmRlZj8uZXJyb3I/LihlKSk/P1V0KHI/LihlKSk/P1V0KHQ/LmVycm9yPy4oZSkpPz9VdChuLmN1c3RvbUVycm9yPy4oZSkpPz9VdChuLmxvY2FsZUVycm9yPy4oZSkpPz8iSW52YWxpZCBpbnB1dCIsYz17fTtmb3IoY29uc3QgaCBvZiBPYmplY3Qua2V5cyhlKSloPT09Imluc3QifHxoPT09InNjaGVtYSJ8fGg9PT0iY29udGludWUifHxoPT09ImlucHV0Inx8aD09PSJfX3Byb3RvX18ifHwoY1toXT1lW2hdKTtyZXR1cm4gYy5wYXRoPz8oYy5wYXRoPVtdKSxjLm1lc3NhZ2U9aSx0Py5yZXBvcnRJbnB1dCYmKGMuaW5wdXQ9ZS5pbnB1dCksY31mdW5jdGlvbiBLcyhlKXtyZXR1cm4gZSBpbnN0YW5jZW9mIFNldD8ic2V0IjplIGluc3RhbmNlb2YgTWFwPyJtYXAiOmUgaW5zdGFuY2VvZiBGaWxlPyJmaWxlIjoidW5rbm93biJ9Y29uc3QgR2I9L1tcdUQ4MDAtXHVEQkZGXS87ZnVuY3Rpb24gR3MoZSl7Y29uc3QgdD1lLmxlbmd0aDtpZighR2IudGVzdChlKSlyZXR1cm4gdDtsZXQgbj10O2ZvcihsZXQgbz0wO288dC0xO28rKykoZS5jaGFyQ29kZUF0KG8pJjY0NTEyKT09PTU1Mjk2JiYoZS5jaGFyQ29kZUF0KG8rMSkmNjQ1MTIpPT09NTYzMjAmJihuLS0sbysrKTtyZXR1cm4gbn1mdW5jdGlvbiBKcyhlKXtyZXR1cm4gQXJyYXkuaXNBcnJheShlKT8iYXJyYXkiOnR5cGVvZiBlPT0ic3RyaW5nIj8ic3RyaW5nIjoidW5rbm93biJ9ZnVuY3Rpb24gYmgoZSl7Y29uc3QgdD10eXBlb2YgZTtzd2l0Y2godCl7Y2FzZSJudW1iZXIiOnJldHVybiBOdW1iZXIuaXNOYU4oZSk/Im5hbiI6Im51bWJlciI7Y2FzZSJvYmplY3QiOntpZihlPT09bnVsbClyZXR1cm4ibnVsbCI7aWYoQXJyYXkuaXNBcnJheShlKSlyZXR1cm4iYXJyYXkiO2NvbnN0IG49ZTtpZihuJiZPYmplY3QuZ2V0UHJvdG90eXBlT2YobikhPT1PYmplY3QucHJvdG90eXBlJiYiY29uc3RydWN0b3IiaW4gbiYmbi5jb25zdHJ1Y3RvcilyZXR1cm4gbi5jb25zdHJ1Y3Rvci5uYW1lfX1yZXR1cm4gdH1mdW5jdGlvbiB0biguLi5lKXtjb25zdFt0LG4sb109ZTtyZXR1cm4gdHlwZW9mIHQ9PSJzdHJpbmciP3ttZXNzYWdlOnQsY29kZToiY3VzdG9tIixpbnB1dDpuLGluc3Q6b306ey4uLnR9fWZ1bmN0aW9uIEpiKGUpe3JldHVybiBPYmplY3QuZW50cmllcyhlKS5maWx0ZXIoKFt0LG5dKT0+TnVtYmVyLmlzTmFOKE51bWJlci5wYXJzZUludCh0LDEwKSkpLm1hcCh0PT50WzFdKX1mdW5jdGlvbiB2aChlKXtjb25zdCB0PWF0b2IoZSksbj1uZXcgVWludDhBcnJheSh0Lmxlbmd0aCk7Zm9yKGxldCBvPTA7bzx0Lmxlbmd0aDtvKyspbltvXT10LmNoYXJDb2RlQXQobyk7cmV0dXJuIG59ZnVuY3Rpb24ga2goZSl7bGV0IHQ9IiI7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKyspdCs9U3RyaW5nLmZyb21DaGFyQ29kZShlW25dKTtyZXR1cm4gYnRvYSh0KX1mdW5jdGlvbiBZYihlKXtjb25zdCB0PWUucmVwbGFjZSgvLS9nLCIrIikucmVwbGFjZSgvXy9nLCIvIiksbj0iPSIucmVwZWF0KCg0LXQubGVuZ3RoJTQpJTQpO3JldHVybiB2aCh0K24pfWZ1bmN0aW9uIFFiKGUpe3JldHVybiBraChlKS5yZXBsYWNlKC9cKy9nLCItIikucmVwbGFjZSgvXC8vZywiXyIpLnJlcGxhY2UoLz0vZywiIil9ZnVuY3Rpb24gWGIoZSl7Y29uc3QgdD1lLnJlcGxhY2UoL14weC8sIiIpO2lmKHQubGVuZ3RoJTIhPT0wKXRocm93IG5ldyBFcnJvcigiSW52YWxpZCBoZXggc3RyaW5nIGxlbmd0aCIpO2NvbnN0IG49bmV3IFVpbnQ4QXJyYXkodC5sZW5ndGgvMik7Zm9yKGxldCBvPTA7bzx0Lmxlbmd0aDtvKz0yKW5bby8yXT1OdW1iZXIucGFyc2VJbnQodC5zbGljZShvLG8rMiksMTYpO3JldHVybiBufWZ1bmN0aW9uIGV2KGUpe3JldHVybiBBcnJheS5mcm9tKGUpLm1hcCh0PT50LnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCIwIikpLmpvaW4oIiIpfWNsYXNzIHR2e2NvbnN0cnVjdG9yKC4uLnQpe319ZnVuY3Rpb24geWgoZSx0KXtmb3IoY29uc3QgbiBpbiB0KXtjb25zdCBvPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodCxuKTtvLmdldD9PYmplY3QuZGVmaW5lUHJvcGVydHkoZSxuLHsuLi5vLGVudW1lcmFibGU6ITF9KTpudihlLG4sby52YWx1ZSl9fWZ1bmN0aW9uIGF0KGUsdCxuLG89ITApe3JldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkoZSx0LHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsZW51bWVyYWJsZTpvLHZhbHVlOm59KSxufWZ1bmN0aW9uIFlzKGUsdCxuKXtyZXR1cm4gYXQoZSx0LG4sITEpfWZ1bmN0aW9uIGVvKGUsdCl7Zm9yKGNvbnN0IG4gaW4gZSl7Y29uc3Qgbz1lW25dO09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0LG4se2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiEwLGdldCgpe3JldHVybiBhdCh0aGlzLG4sbyh0aGlzKSl9LHNldChzKXthdCh0aGlzLG4scyl9fSl9cmV0dXJuIHR9ZnVuY3Rpb24gbnYoZSx0LG4pe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2NvbmZpZ3VyYWJsZTohMCxnZXQoKXtyZXR1cm4gdGhpcz09bnVsbD9uOmF0KHRoaXMsdCxuLmJpbmQodGhpcykpfSxzZXQobyl7YXQodGhpcyx0LG8pfX0pfWZ1bmN0aW9uIG92KGUsdCl7Y29uc3Qgbj1PYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk7cmV0dXJuIHQgaW4gbj92b2lkIDA6bn1sZXQga2EsdXQ9ITE7Y29uc3Qgc3Y9e2NvbmZpZ3VyYWJsZTohMCxnZXQoKXt1dD0hMH19O2Z1bmN0aW9uIFYoZSx0LG4pe2NvbnN0IG89T2JqZWN0LmdldFByb3RvdHlwZU9mKGUuX3pvZCk7aWYodCBpbiBvJiZrYSE9PWUuX3pvZCl7a2E9dm9pZCAwO3JldHVybn1rYT1lLl96b2QsT2JqZWN0LmRlZmluZVByb3BlcnR5KG8sdCx7Y29uZmlndXJhYmxlOiEwLGdldCgpe09iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLHQsc3YpO2NvbnN0IHM9dXQ7dXQ9ITE7dHJ5e2NvbnN0IHI9bih0aGlzKTtyZXR1cm4gdXQ/ZGVsZXRlIHRoaXNbdF06T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnJ9KSx1dD11dHx8cyxyfWNhdGNoKHIpe3Rocm93IGRlbGV0ZSB0aGlzW3RdLHV0PXV0fHxzLHJ9fSxzZXQocyl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOnN9KX19KX1mdW5jdGlvbiAkaChlLHQsbixvKXtjb25zdCBzPW92KGUsdCk7cyYmT2JqZWN0LmRlZmluZVByb3BlcnR5KHMsdCx7Y29uZmlndXJhYmxlOiEwLGdldCgpe2NvbnN0IHI9e2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCxlbnVtZXJhYmxlOm8sdmFsdWU6dm9pZCAwfTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCxyKSxyLnZhbHVlPW4odGhpcyksT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCxyKSxyLnZhbHVlfSxzZXQocil7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLGVudW1lcmFibGU6byx2YWx1ZTpyfSl9fSl9Y29uc3Qgd2g9In5jb25zdGFudENhdGNoIjtmdW5jdGlvbiBsaShlKXtjb25zdCB0PSgpPT5lO3JldHVybiB0W3doXT0hMCx0fWNvbnN0IHVpPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCxCSUdJTlRfRk9STUFUX1JBTkdFUzpjaCxDT05TVEFOVF9DQVRDSDp3aCxDbGFzczp0dixOVU1CRVJfRk9STUFUX1JBTkdFUzppaCxhYm9ydGVkOlBlLGFsbG93c0V2YWw6c2gsYXNzZXJ0OlpiLGFzc2VydEVxdWFsOkViLGFzc2VydElzOk9iLGFzc2VydE5ldmVyOk1iLGFzc2VydE5vdEVxdWFsOlJiLGFzc2lnblByb3A6THQsYXR0YWNoU2NoZW1hOlBhLGJhc2U2NFRvVWludDhBcnJheTp2aCxiYXNlNjR1cmxUb1VpbnQ4QXJyYXk6WWIsY2FjaGVkOlhuLGNhcHR1cmVTdGFja1RyYWNlOmlpLGNsZWFuRW51bTpKYixjbGVhblJlZ2V4Omd0LGNsb25lOmxlLGNsb25lRGVmOkJiLGNvZGVQb2ludExlbmd0aDpHcyxjb25zdGFudENhdGNoOmxpLGNyZWF0ZVRyYW5zcGFyZW50UHJveHk6S2IsZGVmaW5lTGF6eTpYZCxkZWZpbmVMYXp5SW50ZXJuYWw6VixkZXJpdmVkOmVvLGVzYzpuaCxlc2NhcGVSZWdleDpydCxleHBsaWNpdGx5QWJvcnRlZDpnaCxleHRlbmQ6ZGgsZmluYWxpemVJc3N1ZTpGZSxmbG9hdFNhZmVSZW1haW5kZXI6UWQsZ2V0RWxlbWVudEF0UGF0aDpIYixnZXRFbnVtVmFsdWVzOnphLGdldExlbmd0aGFibGVPcmlnaW46SnMsZ2V0UGFyc2VkVHlwZTpXYixnZXRTaXphYmxlT3JpZ2luOktzLGhleFRvVWludDhBcnJheTpYYixoaWRlOllzLGluc3RhbGxMYXp5UHJvcDokaCxpc09iamVjdDplbixpc1BsYWluT2JqZWN0Omt0LGlzc3VlOnRuLGpvaW5WYWx1ZXM6Q2EsanNvblN0cmluZ2lmeVJlcGxhY2VyOmpzLG1lbWJlcnM6eWgsbWVyZ2U6bWgsbWVyZ2VEZWZzOlNlLG5vcm1hbGl6ZVBhcmFtczp3LG51bGxpc2g6YWksbnVtS2V5czpWYixvYmplY3RDbG9uZTpEYixvbWl0OnVoLG9wdGlvbmFsS2V5czphaCxvd246YXQscGFyc2VkVHlwZTpiaCxwYXJ0aWFsOk5hLHBpY2s6bGgscHJlZml4SXNzdWVzOkRlLHByaW1pdGl2ZVR5cGVzOnJoLHByb21pc2VBbGxPYmplY3Q6RmIscHJvcGVydHlLZXlUeXBlczpUcyxyYW5kb21TdHJpbmc6VWIscmF3U2hhcGU6VXMscmVxdWlyZWQ6Zmgsc2FmZUV4dGVuZDpwaCxzaGFsbG93Q2xvbmU6VnMsc2x1Z2lmeTpvaCxzdHJpbmdpZnlQcmltaXRpdmU6Y2ksdG9ab2Q6RnMsdWludDhBcnJheVRvQmFzZTY0OmtoLHVpbnQ4QXJyYXlUb0Jhc2U2NHVybDpRYix1aW50OEFycmF5VG9IZXg6ZXYsdW53cmFwTWVzc2FnZTpVdH0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKTt2YXIgWXU7Y29uc3QgZGk9T2JqZWN0LmZyZWV6ZSh7c3RhdHVzOiJhYm9ydGVkIn0pLHlhPXt2YWx1ZTp2b2lkIDAsZW51bWVyYWJsZTohMX07bGV0IFF1PSJjYXB0dXJlU3RhY2tUcmFjZSJpbiBFcnJvcj9FcnJvcjpudWxsO2Z1bmN0aW9uIHJ2KGUpe2NvbnN0IHQ9UXU7aWYodCl7Y29uc3Qgbj10LnN0YWNrVHJhY2VMaW1pdDtpZih0eXBlb2Ygbj09Im51bWJlciIpe3RyeXt0LnN0YWNrVHJhY2VMaW1pdD0wfWNhdGNoe3JldHVybiBRdT1udWxsLG5ldyBlfXRyeXtyZXR1cm4gbmV3IGV9ZmluYWxseXt0LnN0YWNrVHJhY2VMaW1pdD1ufX19cmV0dXJuIG5ldyBlfWZ1bmN0aW9uIGYoZSx0LG4sbyl7Y29uc3Qgcz17fTtmdW5jdGlvbiByKG0pe3RoaXMuZGVmPW0sdGhpcy5jb25zdHI9cCx0aGlzLnRyYWl0cz1uZXcgU2V0fXIucHJvdG90eXBlPXM7Y29uc3QgaT1uLGM9aSYmbmV3IFdlYWtTZXQ7ZnVuY3Rpb24gaChtLHkpe2lmKG0uX3pvZCl7aWYobS5fem9kLnRyYWl0cy5oYXMoZSkpcmV0dXJufWVsc2V7eWEudmFsdWU9bmV3IHIoeSk7dHJ5e09iamVjdC5kZWZpbmVQcm9wZXJ0eShtLCJfem9kIix5YSl9ZmluYWxseXt5YS52YWx1ZT12b2lkIDB9fWlmKG0uX3pvZC50cmFpdHMuYWRkKGUpLHQobSx5KSxjKXtjb25zdCBTPU9iamVjdC5nZXRQcm90b3R5cGVPZihtKSxOPW0uX3pvZC5jb25zdHIucHJvdG90eXBlO2xldCBFPVM7Zm9yKDtFJiZFIT09TjspRT1PYmplY3QuZ2V0UHJvdG90eXBlT2YoRSk7Y29uc3QgVD1FPz9TO2MuaGFzKFQpfHwoYy5hZGQoVCkseWgoVCxpKSl9Y29uc3QgJD1wLnByb3RvdHlwZTtmb3IoY29uc3QgUyBpbiAkKU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCgkLFMpJiYoUyBpbiBtfHwobVtTXT0kW1NdLmJpbmQobSkpKX1jb25zdCBkPW8/LlBhcmVudD8/T2JqZWN0O2NsYXNzIHUgZXh0ZW5kcyBke31PYmplY3QuZGVmaW5lUHJvcGVydHkodSwibmFtZSIse3ZhbHVlOmV9KTtmdW5jdGlvbiBwKG0pe2NvbnN0IHk9bz8uUGFyZW50P3J2KHUpOnRoaXM7aCh5LG0pO2NvbnN0ICQ9eS5fem9kLmRlZmVycmVkO2lmKCQpe2Zvcihjb25zdCBOIG9mICQpTigpO3kuX3pvZC5kZWZlcnJlZD12b2lkIDB9Y29uc3QgUz1nbG9iYWxUaGlzLl9fem9kX2dsb2JhbENvbmZpZz8ucG9zdFByb2Nlc3NvcjtyZXR1cm4gUyYmUyh5KSx5fXJldHVybiBPYmplY3QuZGVmaW5lUHJvcGVydHkocCwiaW5pdCIse3ZhbHVlOmh9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkocCxTeW1ib2wuaGFzSW5zdGFuY2Use3ZhbHVlOm09Pm8/LlBhcmVudCYmbSBpbnN0YW5jZW9mIG8uUGFyZW50PyEwOm0/Ll96b2Q/LnRyYWl0cz8uaGFzKGUpfSksT2JqZWN0LmRlZmluZVByb3BlcnR5KHAsIm5hbWUiLHt2YWx1ZTplfSkscH1jb25zdCBoaT1TeW1ib2woInpvZF9icmFuZCIpO2NsYXNzIGJ0IGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoKXtzdXBlcigiRW5jb3VudGVyZWQgUHJvbWlzZSBkdXJpbmcgc3luY2hyb25vdXMgcGFyc2UuIFVzZSAucGFyc2VBc3luYygpIGluc3RlYWQuIil9fWNsYXNzIFFzIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IodCl7c3VwZXIoYEVuY291bnRlcmVkIHVuaWRpcmVjdGlvbmFsIHRyYW5zZm9ybSBkdXJpbmcgZW5jb2RlOiAke3R9YCksdGhpcy5uYW1lPSJab2RFbmNvZGVFcnJvciJ9fShZdT1nbG9iYWxUaGlzKS5fX3pvZF9nbG9iYWxDb25maWc/PyhZdS5fX3pvZF9nbG9iYWxDb25maWc9e30pO2NvbnN0IEFlPWdsb2JhbFRoaXMuX196b2RfZ2xvYmFsQ29uZmlnO2Z1bmN0aW9uIG1lKGUpe3JldHVybiBlJiZPYmplY3QuYXNzaWduKEFlLGUpLEFlfWZ1bmN0aW9uIGF2KCl7Y29uc3QgZT10aGlzLl96b2Q7cmV0dXJuIGUubWVzc2FnZT8/KGUubWVzc2FnZT1KU09OLnN0cmluZ2lmeShlLmRlZixqcywyKSksZS5tZXNzYWdlfWZ1bmN0aW9uIGl2KGUpe3RoaXMuX3pvZC5tZXNzYWdlPWV9Y29uc3QgY3Y9e2dldDphdixzZXQ6aXYsZW51bWVyYWJsZTohMCxjb25maWd1cmFibGU6ITB9LCRhPXt2YWx1ZTp2b2lkIDAsZW51bWVyYWJsZTohMX0sWHU9bmV3IFdlYWtTZXQoW09iamVjdC5wcm90b3R5cGUsRXJyb3IucHJvdG90eXBlXSksU2g9KGUsdCk9PntlLm5hbWU9IiRab2RFcnJvciIsJGEudmFsdWU9dCxPYmplY3QuZGVmaW5lUHJvcGVydHkoZSwiaXNzdWVzIiwkYSksJGEudmFsdWU9dm9pZCAwLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJtZXNzYWdlIixjdik7Y29uc3Qgbj1PYmplY3QuZ2V0UHJvdG90eXBlT2YoZSk7WHUuaGFzKG4pfHwoWHUuYWRkKG4pLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShuLCJ0b1N0cmluZyIse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiExLGdldCgpe2NvbnN0IG89KCk9PnRoaXMubWVzc2FnZTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsInRvU3RyaW5nIix7dmFsdWU6byxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KSxvfSxzZXQobyl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsInRvU3RyaW5nIix7dmFsdWU6byxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KX19KSl9LF9oPWYoIiRab2RFcnJvciIsU2gpLE1lPWYoIiRab2RFcnJvciIsU2gsdm9pZCAwLHtQYXJlbnQ6RXJyb3J9KTtmdW5jdGlvbiBsdihlLHQsbil7cmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChlLHQpfHwodD09PSJfX3Byb3RvX18iP09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse3ZhbHVlOm4oKSx3cml0YWJsZTohMCxlbnVtZXJhYmxlOiEwLGNvbmZpZ3VyYWJsZTohMH0pOmVbdF09bigpKSxlW3RdfWZ1bmN0aW9uIFhzKGUsdD1uPT5uLm1lc3NhZ2Upe2NvbnN0IG49e30sbz1bXTtmb3IoY29uc3QgcyBvZiBlLmlzc3VlcylzLnBhdGgubGVuZ3RoPjA/bHYobixzLnBhdGhbMF0sKCk9PltdKS5wdXNoKHQocykpOm8ucHVzaCh0KHMpKTtyZXR1cm57Zm9ybUVycm9yczpvLGZpZWxkRXJyb3JzOm59fWZ1bmN0aW9uIGVyKGUsdD1uPT5uLm1lc3NhZ2Upe2NvbnN0IG49e19lcnJvcnM6W119LG89KHMscj1bXSk9Pntmb3IoY29uc3QgaSBvZiBzLmlzc3VlcylpZihpLmNvZGU9PT0iaW52YWxpZF91bmlvbiImJmkuZXJyb3JzLmxlbmd0aClpLmVycm9ycy5tYXAoYz0+byh7aXNzdWVzOmN9LFsuLi5yLC4uLmkucGF0aF0pKTtlbHNlIGlmKGkuY29kZT09PSJpbnZhbGlkX2tleSIpbyh7aXNzdWVzOmkuaXNzdWVzfSxbLi4uciwuLi5pLnBhdGhdKTtlbHNlIGlmKGkuY29kZT09PSJpbnZhbGlkX2VsZW1lbnQiKW8oe2lzc3VlczppLmlzc3Vlc30sWy4uLnIsLi4uaS5wYXRoXSk7ZWxzZXtjb25zdCBjPVsuLi5yLC4uLmkucGF0aF07aWYoYy5sZW5ndGg9PT0wKW4uX2Vycm9ycy5wdXNoKHQoaSkpO2Vsc2V7bGV0IGg9bixkPTA7Zm9yKDtkPGMubGVuZ3RoOyl7Y29uc3QgdT1jW2RdLHA9ZD09PWMubGVuZ3RoLTE7aWYodT09PSJfZXJyb3JzIil7cCYmaC5fZXJyb3JzLnB1c2godChpKSksZCsrO2NvbnRpbnVlfU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChoLHUpfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoaCx1LHt2YWx1ZTp7X2Vycm9yczpbXX0sZW51bWVyYWJsZTohMCx3cml0YWJsZTohMCxjb25maWd1cmFibGU6ITB9KTtjb25zdCBtPWhbdV07cCYmbS5fZXJyb3JzLnB1c2godChpKSksaD1tLGQrK319fX07cmV0dXJuIG8oZSksbn1mdW5jdGlvbiBwaShlLHQ9bj0+bi5tZXNzYWdlKXtjb25zdCBuPXtlcnJvcnM6W119LG89KHMscj1bXSk9Pnt2YXIgaTtmb3IoY29uc3QgYyBvZiBzLmlzc3VlcylpZihjLmNvZGU9PT0iaW52YWxpZF91bmlvbiImJmMuZXJyb3JzLmxlbmd0aCljLmVycm9ycy5tYXAoaD0+byh7aXNzdWVzOmh9LFsuLi5yLC4uLmMucGF0aF0pKTtlbHNlIGlmKGMuY29kZT09PSJpbnZhbGlkX2tleSIpbyh7aXNzdWVzOmMuaXNzdWVzfSxbLi4uciwuLi5jLnBhdGhdKTtlbHNlIGlmKGMuY29kZT09PSJpbnZhbGlkX2VsZW1lbnQiKW8oe2lzc3VlczpjLmlzc3Vlc30sWy4uLnIsLi4uYy5wYXRoXSk7ZWxzZXtjb25zdCBoPVsuLi5yLC4uLmMucGF0aF07aWYoaC5sZW5ndGg9PT0wKXtuLmVycm9ycy5wdXNoKHQoYykpO2NvbnRpbnVlfWxldCBkPW4sdT0wO2Zvcig7dTxoLmxlbmd0aDspe2NvbnN0IHA9aFt1XSxtPXU9PT1oLmxlbmd0aC0xO3R5cGVvZiBwPT0ic3RyaW5nIj8oZC5wcm9wZXJ0aWVzPz8oZC5wcm9wZXJ0aWVzPXt9KSxPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoZC5wcm9wZXJ0aWVzLHApfHxPYmplY3QuZGVmaW5lUHJvcGVydHkoZC5wcm9wZXJ0aWVzLHAse3ZhbHVlOntlcnJvcnM6W119LGVudW1lcmFibGU6ITAsd3JpdGFibGU6ITAsY29uZmlndXJhYmxlOiEwfSksZD1kLnByb3BlcnRpZXNbcF0pOihkLml0ZW1zPz8oZC5pdGVtcz1bXSksKGk9ZC5pdGVtcylbcF0/PyhpW3BdPXtlcnJvcnM6W119KSxkPWQuaXRlbXNbcF0pLG0mJmQuZXJyb3JzLnB1c2godChjKSksdSsrfX19O3JldHVybiBvKGUpLG59ZnVuY3Rpb24gamgoZSl7Y29uc3QgdD1bXSxuPWUubWFwKG89PnR5cGVvZiBvPT0ib2JqZWN0Ij9vLmtleTpvKTtmb3IoY29uc3QgbyBvZiBuKXR5cGVvZiBvPT0ibnVtYmVyIj90LnB1c2goYFske299XWApOnR5cGVvZiBvPT0ic3ltYm9sIj90LnB1c2goYFske0pTT04uc3RyaW5naWZ5KFN0cmluZyhvKSl9XWApOi9bXlx3JF0vLnRlc3Qobyk/dC5wdXNoKGBbJHtKU09OLnN0cmluZ2lmeShvKX1dYCk6KHQubGVuZ3RoJiZ0LnB1c2goIi4iKSx0LnB1c2gobykpO3JldHVybiB0LmpvaW4oIiIpfWZ1bmN0aW9uIG1pKGUpe2NvbnN0IHQ9W10sbj1bLi4uZS5pc3N1ZXNdLnNvcnQoKG8scyk9PihvLnBhdGg/P1tdKS5sZW5ndGgtKHMucGF0aD8/W10pLmxlbmd0aCk7Zm9yKGNvbnN0IG8gb2Ygbil0LnB1c2goYOKcliAke28ubWVzc2FnZX1gKSxvLnBhdGg/Lmxlbmd0aCYmdC5wdXNoKGAgIOKGkiBhdCAke2poKG8ucGF0aCl9YCk7cmV0dXJuIHQuam9pbihgCmApfWZ1bmN0aW9uIHRyKGUsdCl7cmV0dXJue2NhbGxlZTp0Py5jYWxsZWU/P2UsRXJyOnQ/LkVycn19Y29uc3QgdG89ZT0+e2NvbnN0IHQ9KG4sbyxzLHIpPT57Y29uc3QgaT1zP3suLi5zLGFzeW5jOiExfTp7YXN5bmM6ITF9LGM9bi5fem9kLnJ1bih7dmFsdWU6byxpc3N1ZXM6W119LGkpO2lmKGMgaW5zdGFuY2VvZiBQcm9taXNlKXRocm93IG5ldyBidDtpZihjLmlzc3Vlcy5sZW5ndGgpe2NvbnN0IGg9bmV3KHI/LkVycj8/ZSkoYy5pc3N1ZXMubWFwKGQ9PkZlKGQsaSxtZSgpKSkpO3Rocm93IGlpKGgscj8uY2FsbGVlPz90KSxofXJldHVybiBjLnZhbHVlfTtyZXR1cm4gdH0seGE9dG8oTWUpLG5vPWU9Pntjb25zdCB0PWFzeW5jKG4sbyxzLHIpPT57Y29uc3QgaT1zP3suLi5zLGFzeW5jOiEwfTp7YXN5bmM6ITB9O2xldCBjPW4uX3pvZC5ydW4oe3ZhbHVlOm8saXNzdWVzOltdfSxpKTtpZihjIGluc3RhbmNlb2YgUHJvbWlzZSYmKGM9YXdhaXQgYyksYy5pc3N1ZXMubGVuZ3RoKXtjb25zdCBoPW5ldyhyPy5FcnI/P2UpKGMuaXNzdWVzLm1hcChkPT5GZShkLGksbWUoKSkpKTt0aHJvdyBpaShoLHI/LmNhbGxlZT8/dCksaH1yZXR1cm4gYy52YWx1ZX07cmV0dXJuIHR9LElhPW5vKE1lKSxvbz1lPT4odCxuLG8pPT57Y29uc3Qgcz1vP3suLi5vLGFzeW5jOiExfTp7YXN5bmM6ITF9LHI9dC5fem9kLnJ1bih7dmFsdWU6bixpc3N1ZXM6W119LHMpO2lmKHIgaW5zdGFuY2VvZiBQcm9taXNlKXRocm93IG5ldyBidDtyZXR1cm4gci5pc3N1ZXMubGVuZ3RoP0FoKGUsci5pc3N1ZXMscyk6e3N1Y2Nlc3M6ITAsZGF0YTpyLnZhbHVlfX0sVGg9b28oTWUpO2Z1bmN0aW9uIEFoKGUsdCxuKXtsZXQgbztyZXR1cm57c3VjY2VzczohMSxnZXQgZXJyb3IoKXtyZXR1cm4gb3x8KG89bmV3IGUodC5tYXAocz0+RmUocyxuLG1lKCkpKSksdD12b2lkIDAsbj12b2lkIDApLG99LHNldCBlcnJvcihzKXtvPXMsdD12b2lkIDAsbj12b2lkIDB9fX1jb25zdCBzbz1lPT5hc3luYyh0LG4sbyk9Pntjb25zdCBzPW8/ey4uLm8sYXN5bmM6ITB9Onthc3luYzohMH07bGV0IHI9dC5fem9kLnJ1bih7dmFsdWU6bixpc3N1ZXM6W119LHMpO3JldHVybiByIGluc3RhbmNlb2YgUHJvbWlzZSYmKHI9YXdhaXQgciksci5pc3N1ZXMubGVuZ3RoP0FoKGUsci5pc3N1ZXMscyk6e3N1Y2Nlc3M6ITAsZGF0YTpyLnZhbHVlfX0sdXY9c28oTWUpLGR2PVN5bWJvbC5mb3IoInpvZC5jb21waWxlLmludmFsaWQiKSxodj1TeW1ib2wuZm9yKCJ6b2QuY29tcGlsZS5mYWxsYmFjayIpLG5yPSgoZSx0LG4pPT57Y29uc3Qgbz1lLl96b2QuYmFnLnZhbGlkYXRvcjtpZihvIT09dm9pZCAwKXtpZihvKHQpIT09ZHYpcmV0dXJuITA7aWYoby5kZWZpbml0ZT09PSEwJiZuPT09dm9pZCAwKXJldHVybiExfXJldHVybiBwdihlLHQsbil9KTtmdW5jdGlvbiBwdihlLHQsbil7Y29uc3Qgbz1uP3suLi5uLGFzeW5jOiExLGFib3J0RWFybHk6ITB9Onthc3luYzohMSxhYm9ydEVhcmx5OiEwfSxzPWUuX3pvZC5iYWcuZmFsbGJhY2tSdW47bGV0IHI7aWYocz8ob1todl09ITAscj1zKHt2YWx1ZTp0LGlzc3VlczpbXX0sbykpOnI9ZS5fem9kLnJ1bih7dmFsdWU6dCxpc3N1ZXM6W119LG8pLHIgaW5zdGFuY2VvZiBQcm9taXNlKXRocm93IG5ldyBidDtyZXR1cm4gci5pc3N1ZXMubGVuZ3RoPT09MH1jb25zdCBvcj1hc3luYyhlLHQsbik9Pntjb25zdCBvPW4/ey4uLm4sYXN5bmM6ITAsYWJvcnRFYXJseTohMH06e2FzeW5jOiEwLGFib3J0RWFybHk6ITB9O2xldCBzPWUuX3pvZC5ydW4oe3ZhbHVlOnQsaXNzdWVzOltdfSxvKTtyZXR1cm4gcyBpbnN0YW5jZW9mIFByb21pc2UmJihzPWF3YWl0IHMpLHMuaXNzdWVzLmxlbmd0aD09PTB9LGZpPWU9Pntjb25zdCB0PXRvKGUpLG49KG8scyxyLGkpPT57Y29uc3QgYz1yP3suLi5yLGRpcmVjdGlvbjoiYmFja3dhcmQifTp7ZGlyZWN0aW9uOiJiYWNrd2FyZCJ9O3JldHVybiB0KG8scyxjLHRyKG4saSkpfTtyZXR1cm4gbn0sbXY9ZmkoTWUpLGdpPWU9Pntjb25zdCB0PXRvKGUpLG49KG8scyxyLGkpPT50KG8scyxyLHRyKG4saSkpO3JldHVybiBufSxmdj1naShNZSksYmk9ZT0+e2NvbnN0IHQ9bm8oZSksbj1hc3luYyhvLHMscixpKT0+e2NvbnN0IGM9cj97Li4ucixkaXJlY3Rpb246ImJhY2t3YXJkIn06e2RpcmVjdGlvbjoiYmFja3dhcmQifTtyZXR1cm4gYXdhaXQgdChvLHMsYyx0cihuLGkpKX07cmV0dXJuIG59LGd2PWJpKE1lKSx2aT1lPT57Y29uc3QgdD1ubyhlKSxuPWFzeW5jKG8scyxyLGkpPT5hd2FpdCB0KG8scyxyLHRyKG4saSkpO3JldHVybiBufSxidj12aShNZSksa2k9ZT0+KHQsbixvKT0+e2NvbnN0IHM9bz97Li4ubyxkaXJlY3Rpb246ImJhY2t3YXJkIn06e2RpcmVjdGlvbjoiYmFja3dhcmQifTtyZXR1cm4gb28oZSkodCxuLHMpfSx2dj1raShNZSkseWk9ZT0+KHQsbixvKT0+b28oZSkodCxuLG8pLGt2PXlpKE1lKSwkaT1lPT5hc3luYyh0LG4sbyk9Pntjb25zdCBzPW8/ey4uLm8sZGlyZWN0aW9uOiJiYWNrd2FyZCJ9OntkaXJlY3Rpb246ImJhY2t3YXJkIn07cmV0dXJuIHNvKGUpKHQsbixzKX0seXY9JGkoTWUpLHdpPWU9PmFzeW5jKHQsbixvKT0+c28oZSkodCxuLG8pLCR2PXdpKE1lKSx6aD0vXltjQ11bMC05YS16XXs2LH0kLyxDaD0vXlswLTlhLXpdKyQvLE5oPS9eWzAtN11bMC05QS1ISktNTlAtVFYtWmEtaGprbW5wLXR2LXpdezI1fSQvLFBoPS9eWzAtOWEtdkEtVl17MjB9JC8seGg9L15bQS1aYS16MC05XXsyN30kLyxJaD0vXlthLXpBLVowLTlfLV17MjF9JC87ZnVuY3Rpb24gRWgoZSl7cmV0dXJuIG5ldyBSZWdFeHAoYF5bYS16QS1aMC05Xy1deyR7ZX19JGApfWNvbnN0IFJoPS9eUCg/OihcZCtXKXwoPyEuKlcpKD89XGR8VFxkKShcZCtZKT8oXGQrTSk/KFxkK0QpPyhUKD89XGQpKFxkK0gpPyhcZCtNKT8oXGQrKFsuLF1cZCspP1MpPyk/KSQvLHd2PS9eWy0rXT9QKD8hJCkoPzooPzpbLStdP1xkK1kpfCg/OlstK10/XGQrWy4sXVxkK1kkKSk/KD86KD86Wy0rXT9cZCtNKXwoPzpbLStdP1xkK1suLF1cZCtNJCkpPyg/Oig/OlstK10/XGQrVyl8KD86Wy0rXT9cZCtbLixdXGQrVyQpKT8oPzooPzpbLStdP1xkK0QpfCg/OlstK10/XGQrWy4sXVxkK0QkKSk/KD86VCg/PVtcZCstXSkoPzooPzpbLStdP1xkK0gpfCg/OlstK10/XGQrWy4sXVxkK0gkKSk/KD86KD86Wy0rXT9cZCtNKXwoPzpbLStdP1xkK1suLF1cZCtNJCkpPyg/OlstK10/XGQrKD86Wy4sXVxkKyk/Uyk/KT8/JC8sT2g9L14oWzAtOWEtZkEtRl17OH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17NH0tWzAtOWEtZkEtRl17MTJ9KSQvLG5uPWU9PmU/bmV3IFJlZ0V4cChgXihbMC05YS1mQS1GXXs4fS1bMC05YS1mQS1GXXs0fS0ke2V9WzAtOWEtZkEtRl17M30tWzg5YWJBQl1bMC05YS1mQS1GXXszfS1bMC05YS1mQS1GXXsxMn0pJGApOi9eKFswLTlhLWZBLUZdezh9LVswLTlhLWZBLUZdezR9LVsxLThdWzAtOWEtZkEtRl17M30tWzg5YWJBQl1bMC05YS1mQS1GXXszfS1bMC05YS1mQS1GXXsxMn18MDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwfGZmZmZmZmZmLWZmZmYtZmZmZi1mZmZmLWZmZmZmZmZmZmZmZikkLyxTdj1ubig0KSxfdj1ubig2KSxqdj1ubig3KSxNaD0vXig/OltBLVphLXowLTlfJytcLV0rXC4pKltBLVphLXowLTlfJytcLV0qW0EtWmEtejAtOV8rLV1AKD86W0EtWmEtejAtOV1bQS1aYS16MC05XC1dKlwuKStbQS1aYS16XXsyLH0kLyxUdj0vXlthLXpBLVowLTkuISMkJSYnKisvPT9eX2B7fH1+LV0rQFthLXpBLVowLTldKD86W2EtekEtWjAtOS1dezAsNjF9W2EtekEtWjAtOV0pPyg/OlwuW2EtekEtWjAtOV0oPzpbYS16QS1aMC05LV17MCw2MX1bYS16QS1aMC05XSk/KSokLyxBdj0vXigoW148PigpXFtcXVxcLiw7OlxzQCJdKyhcLltePD4oKVxbXF1cXC4sOzpcc0AiXSspKil8KCIuKyIpKUAoKFxbWzAtOV17MSwzfVwuWzAtOV17MSwzfVwuWzAtOV17MSwzfVwuWzAtOV17MSwzfV0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLyxaaD0vXlteXHNAIl17MSw2NH1AW15cc0BdezEsMjU1fSQvdSx6dj1aaCxDdj0vXlthLXpBLVowLTkuISMkJSYnKisvPT9eX2B7fH1+LV0rQFthLXpBLVowLTldKD86W2EtekEtWjAtOS1dezAsNjF9W2EtekEtWjAtOV0pPyg/OlwuW2EtekEtWjAtOV0oPzpbYS16QS1aMC05LV17MCw2MX1bYS16QS1aMC05XSk/KSokLyxOdj0iXig/PVtcXHNcXFNdKltcXHB7RXh0ZW5kZWRfUGljdG9ncmFwaGljfVxccHtSZWdpb25hbF9JbmRpY2F0b3J9XFx1MjBFM10pW1xccHtFeHRlbmRlZF9QaWN0b2dyYXBoaWN9XFxwe0Vtb2ppX0NvbXBvbmVudH1dKyQiO2Z1bmN0aW9uIHFoKCl7cmV0dXJuIG5ldyBSZWdFeHAoTnYsInUiKX1jb25zdCBEaD0vXig/Oig/OjI1WzAtNV18MlswLTRdWzAtOV18MVswLTldWzAtOV18WzEtOV1bMC05XXxbMC05XSlcLil7M30oPzoyNVswLTVdfDJbMC00XVswLTldfDFbMC05XVswLTldfFsxLTldWzAtOV18WzAtOV0pJC8sTGg9L14oKFswLTlhLWZBLUZdezEsNH06KXs3fVswLTlhLWZBLUZdezEsNH18KFswLTlhLWZBLUZdezEsNH06KXsxLDd9OnwoWzAtOWEtZkEtRl17MSw0fTopezEsNn06WzAtOWEtZkEtRl17MSw0fXwoWzAtOWEtZkEtRl17MSw0fTopezEsNX0oOlswLTlhLWZBLUZdezEsNH0pezEsMn18KFswLTlhLWZBLUZdezEsNH06KXsxLDR9KDpbMC05YS1mQS1GXXsxLDR9KXsxLDN9fChbMC05YS1mQS1GXXsxLDR9Oil7MSwzfSg6WzAtOWEtZkEtRl17MSw0fSl7MSw0fXwoWzAtOWEtZkEtRl17MSw0fTopezEsMn0oOlswLTlhLWZBLUZdezEsNH0pezEsNX18WzAtOWEtZkEtRl17MSw0fTooKDpbMC05YS1mQS1GXXsxLDR9KXsxLDZ9KXw6KCg6WzAtOWEtZkEtRl17MSw0fSl7MSw3fXw6KSkkLyxCaD1lPT57Y29uc3QgdD1ydChlPz8iOiIpO3JldHVybiBuZXcgUmVnRXhwKGBeKD86WzAtOUEtRl17Mn0ke3R9KXs1fVswLTlBLUZdezJ9JHxeKD86WzAtOWEtZl17Mn0ke3R9KXs1fVswLTlhLWZdezJ9JGApfSxIaD0vXigoMjVbMC01XXwyWzAtNF1bMC05XXwxWzAtOV1bMC05XXxbMS05XVswLTldfFswLTldKVwuKXszfSgyNVswLTVdfDJbMC00XVswLTldfDFbMC05XVswLTldfFsxLTldWzAtOV18WzAtOV0pXC8oWzAtOV18WzEtMl1bMC05XXwzWzAtMl0pJC8sRmg9L14oKFswLTlhLWZBLUZdezEsNH06KXs3fVswLTlhLWZBLUZdezEsNH18KFswLTlhLWZBLUZdezEsNH06KXsxLDd9OnwoWzAtOWEtZkEtRl17MSw0fTopezEsNn06WzAtOWEtZkEtRl17MSw0fXwoWzAtOWEtZkEtRl17MSw0fTopezEsNX0oOlswLTlhLWZBLUZdezEsNH0pezEsMn18KFswLTlhLWZBLUZdezEsNH06KXsxLDR9KDpbMC05YS1mQS1GXXsxLDR9KXsxLDN9fChbMC05YS1mQS1GXXsxLDR9Oil7MSwzfSg6WzAtOWEtZkEtRl17MSw0fSl7MSw0fXwoWzAtOWEtZkEtRl17MSw0fTopezEsMn0oOlswLTlhLWZBLUZdezEsNH0pezEsNX18WzAtOWEtZkEtRl17MSw0fTooKDpbMC05YS1mQS1GXXsxLDR9KXsxLDZ9KXw6KCg6WzAtOWEtZkEtRl17MSw0fSl7MSw3fXw6KSlcLygxMlswLThdfDFbMDFdWzAtOV18WzEtOV0/WzAtOV0pJC8sUHY9L14kfF4oPzpbMC05YS16QS1aKy9dezR9KSooPzooPzpbMC05YS16QS1aKy9dezJ9PT0pfCg/OlswLTlhLXpBLVorL117M309KSk/JC8seHY9L14oPzpbQS1aYS16MC05Xy1dezR9KSooPzpbQS1aYS16MC05Xy1dezIsM30pPyQvLFVoPS9eKD89LnsxLDI1M31cLj8kKVthLXpBLVowLTldKD86W2EtekEtWjAtOS1dezAsNjF9W2EtekEtWjAtOV0pPyg/OlwuW2EtekEtWjAtOV0oPzpbLTAtOWEtekEtWl17MCw2MX1bMC05YS16QS1aXSk/KSpcLj8kLyxWaD0vXig/PS57MSwyNTN9JCkoW2EtekEtWjAtOV0oPzpbYS16QS1aMC05LV17MCw2MX1bYS16QS1aMC05XSk/XC4pK1thLXpBLVpdezIsNjN9JC8sU2k9L15odHRwcz8kLyxXaD0vXlwrWzEtOV1cZHs2LDE0fSQvLF9pPS9eXGQoPzpbIC1dP1xkKXsxMSwxOH0kLyxLaD0vXig/OkFFRHxBRk58QUxMfEFNRHxBT0F8QVJTfEFVRHxBV0d8QVpOfEJBTXxCQkR8QkRUfEJIRHxCSUZ8Qk1EfEJORHxCT0J8Qk9WfEJSTHxCU0R8QlROfEJXUHxCWU58QlpEfENBRHxDREZ8Q0hFfENIRnxDSFd8Q0xGfENMUHxDTll8Q09QfENPVXxDUkN8Q1VQfENWRXxDWkt8REpGfERLS3xET1B8RFpEfEVHUHxFUk58RVRCfEVVUnxGSkR8RktQfEdCUHxHRUx8R0hTfEdJUHxHTUR8R05GfEdUUXxHWUR8SEtEfEhOTHxIVEd8SFVGfElEUnxJTFN8SU5SfElRRHxJUlJ8SVNLfEpNRHxKT0R8SlBZfEtFU3xLR1N8S0hSfEtNRnxLUFd8S1JXfEtXRHxLWUR8S1pUfExBS3xMQlB8TEtSfExSRHxMU0x8TFlEfE1BRHxNREx8TUdBfE1LRHxNTUt8TU5UfE1PUHxNUlV8TVVSfE1WUnxNV0t8TVhOfE1YVnxNWVJ8TVpOfE5BRHxOR058TklPfE5PS3xOUFJ8TlpEfE9NUnxQQUJ8UEVOfFBHS3xQSFB8UEtSfFBMTnxQWUd8UUFSfFJPTnxSU0R8UlVCfFJXRnxTQVJ8U0JEfFNDUnxTREd8U0VLfFNHRHxTSFB8U0xFfFNPU3xTUkR8U1NQfFNUTnxTVkN8U1lQfFNaTHxUSEJ8VEpTfFRNVHxUTkR8VE9QfFRSWXxUVER8VFdEfFRaU3xVQUh8VUdYfFVTRHxVU058VVlJfFVZVXxVWVd8VVpTfFZFRHxWRVN8Vk5EfFZVVnxXU1R8WEFEfFhBRnxYQUd8WEFVfFhCQXxYQkJ8WEJDfFhCRHxYQ0R8WENHfFhEUnxYT0Z8WFBEfFhQRnxYUFR8WFNVfFhUU3xYVUF8WFhYfFlFUnxaQVJ8Wk1XfFpXRykkLyxqaT0vXltBLVpdezJ9KD8hMDB8MDF8OTkpXGR7Mn1bQS1aMC05XXsxMSwzMH0kLyxHaD0iKD86KD86XFxkXFxkWzI0NjhdWzA0OF18XFxkXFxkWzEzNTc5XVsyNl18XFxkXFxkMFs0OF18WzAyNDY4XVswNDhdMDB8WzEzNTc5XVsyNl0wMCktMDItMjl8XFxkezR9LSg/Oig/OjBbMTM1NzhdfDFbMDJdKS0oPzowWzEtOV18WzEyXVxcZHwzWzAxXSl8KD86MFs0NjldfDExKS0oPzowWzEtOV18WzEyXVxcZHwzMCl8KD86MDIpLSg/OjBbMS05XXwxXFxkfDJbMC04XSkpKSI7ZnVuY3Rpb24gSXYoZSl7cmV0dXJuIG5ldyBSZWdFeHAoYF4ke2V9JGApfWNvbnN0IEpoPUl2KEdoKTtmdW5jdGlvbiBFYShlKXtjb25zdCB0PSIoPzpbMDFdXFxkfDJbMC0zXSk6WzAtNV1cXGQiO3JldHVybiB0eXBlb2YgZS5wcmVjaXNpb249PSJudW1iZXIiP2UucHJlY2lzaW9uPT09LTE/YCR7dH1gOmUucHJlY2lzaW9uPT09MD9gJHt0fTpbMC01XVxcZGA6YCR7dH06WzAtNV1cXGRcXC5cXGR7JHtlLnByZWNpc2lvbn19YDplLnNlY29uZHM/YCR7dH06WzAtNV1cXGQoPzpcXC5cXGQrKT9gOmAke3R9KD86OlswLTVdXFxkKD86XFwuXFxkKyk/KT9gfWZ1bmN0aW9uIFloKGUpe3JldHVybiBuZXcgUmVnRXhwKGBeJHtFYShlKX0kYCl9ZnVuY3Rpb24gUWgoZSl7Y29uc3QgdD1bIloiXTtlLm9mZnNldCYmdC5wdXNoKCIoWystXSg/OlswMV1cXGR8MlswLTNdKTpbMC01XVxcZCkiKTtjb25zdCBuPWAke0VhKHtwcmVjaXNpb246ZS5wcmVjaXNpb24sc2Vjb25kczohMH0pfSg/OiR7dC5qb2luKCJ8Iil9KWAsbz1lLmxvY2FsP2Ake259fCR7RWEoe3ByZWNpc2lvbjplLnByZWNpc2lvbn0pfWA6bjtyZXR1cm4gbmV3IFJlZ0V4cChgXiR7R2h9VCg/OiR7b30pJGApfWNvbnN0IFhoPS9eW1xzXFNdezAsfSQvLGVwPWU9Pntjb25zdCB0PWU/YFtcXHNcXFNdeyR7ZT8ubWluaW11bT8/MH0sJHtlPy5tYXhpbXVtPz8iIn19YDoiW1xcc1xcU10qIjtyZXR1cm4gbmV3IFJlZ0V4cChgXiR7dH0kYCl9LHRwPS9eLT9cZCtuPyQvLG5wPS9eLT9cZCskLyxzcj0vXi0/XGQrKD86XC5cZCspPyQvLG9wPS9eKD86dHJ1ZXxmYWxzZSkkL2ksc3A9L15udWxsJC9pLHJwPS9edW5kZWZpbmVkJC9pLGFwPS9eW15BLVpdKiQvLGlwPS9eW15hLXpdKiQvLGNwPS9eWzAtOWEtZkEtRl0qJC87ZnVuY3Rpb24gcm8oZSx0KXtyZXR1cm4gbmV3IFJlZ0V4cChgXltBLVphLXowLTkrL117JHtlfX0ke3R9JGApfWZ1bmN0aW9uIGFvKGUpe3JldHVybiBuZXcgUmVnRXhwKGBeW0EtWmEtejAtOV8tXXske2V9fSRgKX1jb25zdCBFdj0vXlswLTlhLWZBLUZdezMyfSQvLFJ2PXJvKDIyLCI9PSIpLE92PWFvKDIyKSxNdj0vXlswLTlhLWZBLUZdezQwfSQvLFp2PXJvKDI3LCI9IikscXY9YW8oMjcpLER2PS9eWzAtOWEtZkEtRl17NjR9JC8sTHY9cm8oNDMsIj0iKSxCdj1hbyg0MyksSHY9L15bMC05YS1mQS1GXXs5Nn0kLyxGdj1ybyg2NCwiIiksVXY9YW8oNjQpLFZ2PS9eWzAtOWEtZkEtRl17MTI4fSQvLFd2PXJvKDg2LCI9PSIpLEt2PWFvKDg2KSxycj1PYmplY3QuZnJlZXplKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7X19wcm90b19fOm51bGwsYW55U3RyaW5nOlhoLGJhc2U2NDpQdixiYXNlNjR1cmw6eHYsYmlnaW50OnRwLGJvb2xlYW46b3AsYnJvd3NlckVtYWlsOkN2LGNpZHJ2NDpIaCxjaWRydjY6RmgsY3JlZGl0Q2FyZDpfaSxjdWlkOnpoLGN1aWQyOkNoLGN1cnJlbmN5Q29kZTpLaCxkYXRlOkpoLGRhdGV0aW1lOlFoLGRvbWFpbjpWaCxkdXJhdGlvbjpSaCxlMTY0OldoLGVtYWlsOk1oLGVtb2ppOnFoLGV4dGVuZGVkRHVyYXRpb246d3YsZ3VpZDpPaCxoZXg6Y3AsaG9zdG5hbWU6VWgsaHRtbDVFbWFpbDpUdixodHRwUHJvdG9jb2w6U2ksaWJhbjpqaSxpZG5FbWFpbDp6dixpbnRlZ2VyOm5wLGlwdjQ6RGgsaXB2NjpMaCxrc3VpZDp4aCxsb3dlcmNhc2U6YXAsbWFjOkJoLG1kNV9iYXNlNjQ6UnYsbWQ1X2Jhc2U2NHVybDpPdixtZDVfaGV4OkV2LG5hbm9pZDpJaCxuYW5vaWRPZkxlbmd0aDpFaCxudWxsOnNwLG51bWJlcjpzcixyZmM1MzIyRW1haWw6QXYsc2hhMV9iYXNlNjQ6WnYsc2hhMV9iYXNlNjR1cmw6cXYsc2hhMV9oZXg6TXYsc2hhMjU2X2Jhc2U2NDpMdixzaGEyNTZfYmFzZTY0dXJsOkJ2LHNoYTI1Nl9oZXg6RHYsc2hhMzg0X2Jhc2U2NDpGdixzaGEzODRfYmFzZTY0dXJsOlV2LHNoYTM4NF9oZXg6SHYsc2hhNTEyX2Jhc2U2NDpXdixzaGE1MTJfYmFzZTY0dXJsOkt2LHNoYTUxMl9oZXg6VnYsc3RyaW5nOmVwLHRpbWU6WWgsdWxpZDpOaCx1bmRlZmluZWQ6cnAsdW5pY29kZUVtYWlsOlpoLHVwcGVyY2FzZTppcCx1dWlkOm5uLHV1aWQ0OlN2LHV1aWQ2Ol92LHV1aWQ3Omp2LHhpZDpQaH0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKSxjZT1mKCIkWm9kQ2hlY2siLChlLHQpPT57dmFyIG47ZS5fem9kPz8oZS5fem9kPXt9KSxlLl96b2QuZGVmPXQsKG49ZS5fem9kKS5vbmF0dGFjaD8/KG4ub25hdHRhY2g9W10pfSksVGk9ZT0+e2NvbnN0IHQ9ZS52YWx1ZTtyZXR1cm4hYWkodCkmJnQuc2l6ZSE9PXZvaWQgMH0sQWk9ZT0+e2NvbnN0IHQ9ZS52YWx1ZTtyZXR1cm4hYWkodCkmJnQubGVuZ3RoIT09dm9pZCAwfSxBcz17bnVtYmVyOiJudW1iZXIiLGJpZ2ludDoiYmlnaW50IixvYmplY3Q6ImRhdGUifSx6aT1mKCIkWm9kQ2hlY2tMZXNzVGhhbiIsKGUsdCk9PntjZS5pbml0KGUsdCk7Y29uc3Qgbj1Bc1t0eXBlb2YgdC52YWx1ZV07ZS5fem9kLmNoZWNrPW89PnsodC5pbmNsdXNpdmU/by52YWx1ZTw9dC52YWx1ZTpvLnZhbHVlPHQudmFsdWUpfHxvLmlzc3Vlcy5wdXNoKHtvcmlnaW46QXNbdHlwZW9mIG8udmFsdWVdPz9uLGNvZGU6InRvb19iaWciLG1heGltdW06dHlwZW9mIHQudmFsdWU9PSJvYmplY3QiP3QudmFsdWUuZ2V0VGltZSgpOnQudmFsdWUsaW5wdXQ6by52YWx1ZSxpbmNsdXNpdmU6dC5pbmNsdXNpdmUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksQ2k9ZigiJFpvZENoZWNrR3JlYXRlclRoYW4iLChlLHQpPT57Y2UuaW5pdChlLHQpO2NvbnN0IG49QXNbdHlwZW9mIHQudmFsdWVdO2UuX3pvZC5jaGVjaz1vPT57KHQuaW5jbHVzaXZlP28udmFsdWU+PXQudmFsdWU6by52YWx1ZT50LnZhbHVlKXx8by5pc3N1ZXMucHVzaCh7b3JpZ2luOkFzW3R5cGVvZiBvLnZhbHVlXT8/bixjb2RlOiJ0b29fc21hbGwiLG1pbmltdW06dHlwZW9mIHQudmFsdWU9PSJvYmplY3QiP3QudmFsdWUuZ2V0VGltZSgpOnQudmFsdWUsaW5wdXQ6by52YWx1ZSxpbmNsdXNpdmU6dC5pbmNsdXNpdmUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksbHA9ZigiJFpvZENoZWNrTXVsdGlwbGVPZiIsKGUsdCk9PntjZS5pbml0KGUsdCksZS5fem9kLmNoZWNrPW49PntpZih0eXBlb2Ygbi52YWx1ZSE9dHlwZW9mIHQudmFsdWUpdGhyb3cgbmV3IEVycm9yKCJDYW5ub3QgbWl4IG51bWJlciBhbmQgYmlnaW50IGluIG11bHRpcGxlX29mIGNoZWNrLiIpOyh0eXBlb2Ygbi52YWx1ZT09ImJpZ2ludCI/dC52YWx1ZSE9PUJpZ0ludCgwKSYmbi52YWx1ZSV0LnZhbHVlPT09QmlnSW50KDApOlFkKG4udmFsdWUsdC52YWx1ZSk9PT0wKXx8bi5pc3N1ZXMucHVzaCh7b3JpZ2luOnR5cGVvZiBuLnZhbHVlLGNvZGU6Im5vdF9tdWx0aXBsZV9vZiIsZGl2aXNvcjp0LnZhbHVlLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksdXA9ZigiJFpvZENoZWNrTnVtYmVyRm9ybWF0IiwoZSx0KT0+e2NlLmluaXQoZSx0KSx0LmZvcm1hdD10LmZvcm1hdHx8ImZsb2F0NjQiO2NvbnN0IG49dC5mb3JtYXQ/LmluY2x1ZGVzKCJpbnQiKSxvPW4/ImludCI6Im51bWJlciIsW3Mscl09aWhbdC5mb3JtYXRdO2UuX3pvZC5jaGVjaz1pPT57Y29uc3QgYz1pLnZhbHVlO2lmKG4pe2lmKCFOdW1iZXIuaXNJbnRlZ2VyKGMpKXtpLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDpvLGZvcm1hdDp0LmZvcm1hdCxjb2RlOiJpbnZhbGlkX3R5cGUiLGNvbnRpbnVlOiExLGlucHV0OmMsaW5zdDplfSk7cmV0dXJufWlmKCFOdW1iZXIuaXNTYWZlSW50ZWdlcihjKSl7Yz4wP2kuaXNzdWVzLnB1c2goe2lucHV0OmMsY29kZToidG9vX2JpZyIsbWF4aW11bTpOdW1iZXIuTUFYX1NBRkVfSU5URUdFUixub3RlOiJJbnRlZ2VycyBtdXN0IGJlIHdpdGhpbiB0aGUgc2FmZSBpbnRlZ2VyIHJhbmdlLiIsaW5zdDplLG9yaWdpbjpvLGluY2x1c2l2ZTohMCxjb250aW51ZTohdC5hYm9ydH0pOmkuaXNzdWVzLnB1c2goe2lucHV0OmMsY29kZToidG9vX3NtYWxsIixtaW5pbXVtOk51bWJlci5NSU5fU0FGRV9JTlRFR0VSLG5vdGU6IkludGVnZXJzIG11c3QgYmUgd2l0aGluIHRoZSBzYWZlIGludGVnZXIgcmFuZ2UuIixpbnN0OmUsb3JpZ2luOm8saW5jbHVzaXZlOiEwLGNvbnRpbnVlOiF0LmFib3J0fSk7cmV0dXJufX1jPHMmJmkuaXNzdWVzLnB1c2goe29yaWdpbjoibnVtYmVyIixpbnB1dDpjLGNvZGU6InRvb19zbWFsbCIsbWluaW11bTpzLGluY2x1c2l2ZTohMCxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KSxjPnImJmkuaXNzdWVzLnB1c2goe29yaWdpbjoibnVtYmVyIixpbnB1dDpjLGNvZGU6InRvb19iaWciLG1heGltdW06cixpbmNsdXNpdmU6ITAsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksZHA9ZigiJFpvZENoZWNrQmlnSW50Rm9ybWF0IiwoZSx0KT0+e2NlLmluaXQoZSx0KTtjb25zdFtuLG9dPWNoW3QuZm9ybWF0XTtlLl96b2QuY2hlY2s9cz0+e2NvbnN0IHI9cy52YWx1ZTtyPG4mJnMuaXNzdWVzLnB1c2goe29yaWdpbjoiYmlnaW50IixpbnB1dDpyLGNvZGU6InRvb19zbWFsbCIsbWluaW11bTpuLGluY2x1c2l2ZTohMCxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KSxyPm8mJnMuaXNzdWVzLnB1c2goe29yaWdpbjoiYmlnaW50IixpbnB1dDpyLGNvZGU6InRvb19iaWciLG1heGltdW06byxpbmNsdXNpdmU6ITAsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksaHA9ZigiJFpvZENoZWNrTWF4U2l6ZSIsKGUsdCk9Pnt2YXIgbjtjZS5pbml0KGUsdCksKG49ZS5fem9kLmRlZikud2hlbj8/KG4ud2hlbj1UaSksZS5fem9kLmNoZWNrPW89Pntjb25zdCBzPW8udmFsdWU7cy5zaXplPD10Lm1heGltdW18fG8uaXNzdWVzLnB1c2goe29yaWdpbjpLcyhzKSxjb2RlOiJ0b29fYmlnIixtYXhpbXVtOnQubWF4aW11bSxpbmNsdXNpdmU6ITAsaW5wdXQ6cyxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxwcD1mKCIkWm9kQ2hlY2tNaW5TaXplIiwoZSx0KT0+e3ZhciBuO2NlLmluaXQoZSx0KSwobj1lLl96b2QuZGVmKS53aGVuPz8obi53aGVuPVRpKSxlLl96b2QuY2hlY2s9bz0+e2NvbnN0IHM9by52YWx1ZTtzLnNpemU+PXQubWluaW11bXx8by5pc3N1ZXMucHVzaCh7b3JpZ2luOktzKHMpLGNvZGU6InRvb19zbWFsbCIsbWluaW11bTp0Lm1pbmltdW0saW5jbHVzaXZlOiEwLGlucHV0OnMsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksbXA9ZigiJFpvZENoZWNrU2l6ZUVxdWFscyIsKGUsdCk9Pnt2YXIgbjtjZS5pbml0KGUsdCksKG49ZS5fem9kLmRlZikud2hlbj8/KG4ud2hlbj1UaSksZS5fem9kLmNoZWNrPW89Pntjb25zdCBzPW8udmFsdWUscj1zLnNpemU7aWYocj09PXQuc2l6ZSlyZXR1cm47Y29uc3QgaT1yPnQuc2l6ZTtvLmlzc3Vlcy5wdXNoKHtvcmlnaW46S3MocyksLi4uaT97Y29kZToidG9vX2JpZyIsbWF4aW11bTp0LnNpemV9Ontjb2RlOiJ0b29fc21hbGwiLG1pbmltdW06dC5zaXplfSxpbmNsdXNpdmU6ITAsZXhhY3Q6ITAsaW5wdXQ6by52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxmcD1mKCIkWm9kQ2hlY2tNYXhMZW5ndGgiLChlLHQpPT57dmFyIG47Y2UuaW5pdChlLHQpLChuPWUuX3pvZC5kZWYpLndoZW4/PyhuLndoZW49QWkpLGUuX3pvZC5jaGVjaz1vPT57Y29uc3Qgcz1vLnZhbHVlLHI9cy5sZW5ndGg7aWYoKHR5cGVvZiBzPT0ic3RyaW5nIiYmcj50Lm1heGltdW0/R3Mocyk6cik8PXQubWF4aW11bSlyZXR1cm47Y29uc3QgYz1KcyhzKTtvLmlzc3Vlcy5wdXNoKHtvcmlnaW46Yyxjb2RlOiJ0b29fYmlnIixtYXhpbXVtOnQubWF4aW11bSxpbmNsdXNpdmU6ITAsaW5wdXQ6cyxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxncD1mKCIkWm9kQ2hlY2tNaW5MZW5ndGgiLChlLHQpPT57dmFyIG47Y2UuaW5pdChlLHQpLChuPWUuX3pvZC5kZWYpLndoZW4/PyhuLndoZW49QWkpLGUuX3pvZC5jaGVjaz1vPT57Y29uc3Qgcz1vLnZhbHVlLHI9cy5sZW5ndGg7aWYoKHR5cGVvZiBzPT0ic3RyaW5nIiYmcj49dC5taW5pbXVtJiZyPHQubWluaW11bSoyP0dzKHMpOnIpPj10Lm1pbmltdW0pcmV0dXJuO2NvbnN0IGM9SnMocyk7by5pc3N1ZXMucHVzaCh7b3JpZ2luOmMsY29kZToidG9vX3NtYWxsIixtaW5pbXVtOnQubWluaW11bSxpbmNsdXNpdmU6ITAsaW5wdXQ6cyxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxicD1mKCIkWm9kQ2hlY2tMZW5ndGhFcXVhbHMiLChlLHQpPT57dmFyIG47Y2UuaW5pdChlLHQpLChuPWUuX3pvZC5kZWYpLndoZW4/PyhuLndoZW49QWkpLGUuX3pvZC5jaGVjaz1vPT57Y29uc3Qgcz1vLnZhbHVlLHI9cy5sZW5ndGgsaT10eXBlb2Ygcz09InN0cmluZyImJnI+PXQubGVuZ3RoJiZyPD10Lmxlbmd0aCoyP0dzKHMpOnI7aWYoaT09PXQubGVuZ3RoKXJldHVybjtjb25zdCBjPUpzKHMpLGg9aT50Lmxlbmd0aDtvLmlzc3Vlcy5wdXNoKHtvcmlnaW46YywuLi5oP3tjb2RlOiJ0b29fYmlnIixtYXhpbXVtOnQubGVuZ3RofTp7Y29kZToidG9vX3NtYWxsIixtaW5pbXVtOnQubGVuZ3RofSxpbmNsdXNpdmU6ITAsZXhhY3Q6ITAsaW5wdXQ6by52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxpbz1mKCIkWm9kQ2hlY2tTdHJpbmdGb3JtYXQiLChlLHQpPT57dmFyIG4sbztjZS5pbml0KGUsdCksdC5wYXR0ZXJuPyhuPWUuX3pvZCkuY2hlY2s/PyhuLmNoZWNrPXM9Pnt0LnBhdHRlcm4ubGFzdEluZGV4PTAsIXQucGF0dGVybi50ZXN0KHMudmFsdWUpJiZzLmlzc3Vlcy5wdXNoKHtvcmlnaW46InN0cmluZyIsY29kZToiaW52YWxpZF9mb3JtYXQiLGZvcm1hdDp0LmZvcm1hdCxpbnB1dDpzLnZhbHVlLC4uLnQucGF0dGVybj97cGF0dGVybjp0LnBhdHRlcm4udG9TdHJpbmcoKX06e30saW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9KToobz1lLl96b2QpLmNoZWNrPz8oby5jaGVjaz0oKT0+e30pfSksdnA9ZigiJFpvZENoZWNrUmVnZXgiLChlLHQpPT57aW8uaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57dC5wYXR0ZXJuLmxhc3RJbmRleD0wLCF0LnBhdHRlcm4udGVzdChuLnZhbHVlKSYmbi5pc3N1ZXMucHVzaCh7b3JpZ2luOiJzdHJpbmciLGNvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InJlZ2V4IixpbnB1dDpuLnZhbHVlLHBhdHRlcm46dC5wYXR0ZXJuLnRvU3RyaW5nKCksaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksa3A9ZigiJFpvZENoZWNrTG93ZXJDYXNlIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1hcCksaW8uaW5pdChlLHQpfSkseXA9ZigiJFpvZENoZWNrVXBwZXJDYXNlIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1pcCksaW8uaW5pdChlLHQpfSksJHA9ZigiJFpvZENoZWNrSW5jbHVkZXMiLChlLHQpPT57Y2UuaW5pdChlLHQpO2NvbnN0IG49cnQodC5pbmNsdWRlcyksbz1uZXcgUmVnRXhwKHR5cGVvZiB0LnBvc2l0aW9uPT0ibnVtYmVyIj9gXi57JHt0LnBvc2l0aW9ufSx9JHtufWA6bik7dC5wYXR0ZXJuPW8sZS5fem9kLmNoZWNrPXM9PntzLnZhbHVlLmluY2x1ZGVzKHQuaW5jbHVkZXMsdC5wb3NpdGlvbil8fHMuaXNzdWVzLnB1c2goe29yaWdpbjoic3RyaW5nIixjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJpbmNsdWRlcyIsaW5jbHVkZXM6dC5pbmNsdWRlcyxpbnB1dDpzLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pfX0pLHdwPWYoIiRab2RDaGVja1N0YXJ0c1dpdGgiLChlLHQpPT57Y2UuaW5pdChlLHQpO2NvbnN0IG49bmV3IFJlZ0V4cChgXiR7cnQodC5wcmVmaXgpfS4qYCk7dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPW4pLGUuX3pvZC5jaGVjaz1vPT57by52YWx1ZS5zdGFydHNXaXRoKHQucHJlZml4KXx8by5pc3N1ZXMucHVzaCh7b3JpZ2luOiJzdHJpbmciLGNvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InN0YXJ0c193aXRoIixwcmVmaXg6dC5wcmVmaXgsaW5wdXQ6by52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxTcD1mKCIkWm9kQ2hlY2tFbmRzV2l0aCIsKGUsdCk9PntjZS5pbml0KGUsdCk7Y29uc3Qgbj1uZXcgUmVnRXhwKGAuKiR7cnQodC5zdWZmaXgpfSRgKTt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49biksZS5fem9kLmNoZWNrPW89PntvLnZhbHVlLmVuZHNXaXRoKHQuc3VmZml4KXx8by5pc3N1ZXMucHVzaCh7b3JpZ2luOiJzdHJpbmciLGNvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImVuZHNfd2l0aCIsc3VmZml4OnQuc3VmZml4LGlucHV0Om8udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSk7ZnVuY3Rpb24genMoZSx0LG4pe2UuaXNzdWVzLmxlbmd0aCYmdC5pc3N1ZXMucHVzaCguLi5EZShuLGUuaXNzdWVzKSl9Y29uc3QgX3A9ZigiJFpvZENoZWNrUHJvcGVydHkiLChlLHQpPT57Y2UuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57Y29uc3Qgbz10LnNjaGVtYS5fem9kLnJ1bih7dmFsdWU6bi52YWx1ZVt0LnByb3BlcnR5XSxpc3N1ZXM6W119LHt9KTtpZihvIGluc3RhbmNlb2YgUHJvbWlzZSlyZXR1cm4gby50aGVuKHM9PnpzKHMsbix0LnByb3BlcnR5KSk7enMobyxuLHQucHJvcGVydHkpfX0pLGpwPWYoIiRab2RDaGVja1Byb3BlcnRpZXMiLChlLHQpPT57Y2UuaW5pdChlLHQpLFlzKGUsU3ltYm9sLml0ZXJhdG9yLGZ1bmN0aW9uKigpe3lpZWxkIGV9KTtsZXQgbjtlLl96b2QuY2hlY2s9bz0+e2lmKG8udmFsdWU9PW51bGwpe28uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJvYmplY3QiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6by52YWx1ZSxpbnN0OmV9KTtyZXR1cm59bj8/KG49UmVmbGVjdC5vd25LZXlzKHQuc2hhcGUpLm1hcChpPT5baSx0LnNoYXBlW2ldXSkpO2NvbnN0IHM9by52YWx1ZTtsZXQgcjtmb3IoY29uc3RbaSxjXW9mIG4pe2NvbnN0IGg9Yy5fem9kLnJ1bih7dmFsdWU6c1tpXSxpc3N1ZXM6W119LHt9KTtoIGluc3RhbmNlb2YgUHJvbWlzZT8ocj8/KHI9W10pLHIucHVzaChoLnRoZW4oZD0+enMoZCxvLGkpKSkpOnpzKGgsbyxpKX1pZihyKXJldHVybiBQcm9taXNlLmFsbChyKS50aGVuKCgpPT57fSl9fSksVHA9ZigiJFpvZENoZWNrTWltZVR5cGUiLChlLHQpPT57Y2UuaW5pdChlLHQpO2NvbnN0IG49bmV3IFNldCh0Lm1pbWUpO2UuX3pvZC5jaGVjaz1vPT57bi5oYXMoby52YWx1ZS50eXBlKXx8by5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF92YWx1ZSIsdmFsdWVzOnQubWltZSxpbnB1dDpvLnZhbHVlLnR5cGUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksQXA9ZigiJFpvZENoZWNrT3ZlcndyaXRlIiwoZSx0KT0+e2NlLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e24udmFsdWU9dC50eChuLnZhbHVlKX19KTtjbGFzcyB6cHtjb25zdHJ1Y3Rvcih0PVtdLG49e30pe3RoaXMuY29udGVudD1bXSx0aGlzLmluZGVudD0wLHRoaXMuYXJncz10LHRoaXMuY2xvc2VkPW59aW5kZW50ZWQodCl7dGhpcy5pbmRlbnQrPTE7dHJ5e3QodGhpcyl9ZmluYWxseXt0aGlzLmluZGVudC09MX19d3JpdGUodCl7aWYodHlwZW9mIHQ9PSJmdW5jdGlvbiIpe3QodGhpcyx7ZXhlY3V0aW9uOiJzeW5jIn0pLHQodGhpcyx7ZXhlY3V0aW9uOiJhc3luYyJ9KTtyZXR1cm59Y29uc3Qgbz10LnNwbGl0KGAKYCkuZmlsdGVyKGk9PmkpLHM9TWF0aC5taW4oLi4uby5tYXAoaT0+aS5sZW5ndGgtaS50cmltU3RhcnQoKS5sZW5ndGgpKSxyPW8ubWFwKGk9Pmkuc2xpY2UocykpLm1hcChpPT4iICIucmVwZWF0KHRoaXMuaW5kZW50KjIpK2kpO2Zvcihjb25zdCBpIG9mIHIpdGhpcy5jb250ZW50LnB1c2goaSl9Y29tcGlsZSgpe2NvbnN0IHQ9RnVuY3Rpb24sbj10aGlzPy5jb250ZW50Pz9bIiJdO3JldHVybiBuZXcgdCguLi5PYmplY3Qua2V5cyh0aGlzLmNsb3NlZCksYHJldHVybiBmdW5jdGlvbiAoJHt0aGlzLmFyZ3Muam9pbigiLCAiKX0pIHsKJHtuLmpvaW4oYApgKX0KfTtgKSguLi5PYmplY3QudmFsdWVzKHRoaXMuY2xvc2VkKSl9fWNvbnN0IENwPXttYWpvcjo0LG1pbm9yOjYscGF0Y2g6NX0sRD1mKCIkWm9kVHlwZSIsKGUsdCk9Pnt2YXIgbjtlPz8oZT17fSksZS5fem9kLmRlZj10LGUuX3pvZC5iYWc9ZS5fem9kLmJhZ3x8e30sZS5fem9kLnZlcnNpb249Q3A7Y29uc3Qgbz1lLl96b2QuZGVmLmNoZWNrcyxzPWUuX3pvZC50cmFpdHMuaGFzKCIkWm9kQ2hlY2siKT9bZSwuLi5vPz9bXV06bz8ubGVuZ3RoP1suLi5vXTpbXTtmb3IoY29uc3QgciBvZiBzKWZvcihjb25zdCBpIG9mIHIuX3pvZC5vbmF0dGFjaClpKGUpO2lmKHMubGVuZ3RoPT09MCkobj1lLl96b2QpLmRlZmVycmVkPz8obi5kZWZlcnJlZD1bXSksZS5fem9kLmRlZmVycmVkPy5wdXNoKCgpPT57ZS5fem9kLnJ1bj1lLl96b2QucGFyc2V9KTtlbHNle2NvbnN0IHI9KGMsaCxkKT0+e2lmKGMubWVtbylyZXR1cm4gYztsZXQgdT1QZShjKSxwO2Zvcihjb25zdCBtIG9mIGgpe2lmKG0uX3pvZC5kZWYud2hlbil7aWYoZ2goYyl8fCFtLl96b2QuZGVmLndoZW4oYykpY29udGludWV9ZWxzZSBpZih1KWNvbnRpbnVlO2NvbnN0IHk9Yy5pc3N1ZXMubGVuZ3RoLCQ9bS5fem9kLmNoZWNrKGMpO2lmKCQgaW5zdGFuY2VvZiBQcm9taXNlJiZkPy5hc3luYz09PSExKXRocm93IG5ldyBidDtpZihwfHwkIGluc3RhbmNlb2YgUHJvbWlzZSlwPShwPz9Qcm9taXNlLnJlc29sdmUoKSkudGhlbihhc3luYygpPT57YXdhaXQgJCxjLmlzc3Vlcy5sZW5ndGghPT15JiYoUGEoYy5pc3N1ZXMseSxlKSx1fHwodT1QZShjLHkpKSl9KTtlbHNle2lmKGMuaXNzdWVzLmxlbmd0aD09PXkpY29udGludWU7UGEoYy5pc3N1ZXMseSxlKSx1fHwodT1QZShjLHkpKX19cmV0dXJuIHA/cC50aGVuKCgpPT5jKTpjfSxpPShjLGgsZCk9PntpZihQZShjKSlyZXR1cm4gYy5hYm9ydGVkPSEwLGM7Y29uc3QgdT1yKGgscyxkKTtpZih1IGluc3RhbmNlb2YgUHJvbWlzZSl7aWYoZC5hc3luYz09PSExKXRocm93IG5ldyBidDtyZXR1cm4gdS50aGVuKHA9PmUuX3pvZC5wYXJzZShwLGQpKX1yZXR1cm4gZS5fem9kLnBhcnNlKHUsZCl9O2UuX3pvZC5ydW49KGMsaCk9PntpZihoLnNraXBDaGVja3MpcmV0dXJuIGUuX3pvZC5wYXJzZShjLGgpO2lmKGguZGlyZWN0aW9uPT09ImJhY2t3YXJkIil7Y29uc3QgdT1lLl96b2QucGFyc2Uoe3ZhbHVlOmMudmFsdWUsaXNzdWVzOltdfSx7Li4uaCxza2lwQ2hlY2tzOiEwfSk7cmV0dXJuIHUgaW5zdGFuY2VvZiBQcm9taXNlP3UudGhlbihwPT5pKHAsYyxoKSk6aSh1LGMsaCl9Y29uc3QgZD1lLl96b2QucGFyc2UoYyxoKTtpZihkIGluc3RhbmNlb2YgUHJvbWlzZSl7aWYoaC5hc3luYz09PSExKXRocm93IG5ldyBidDtyZXR1cm4gZC50aGVuKHU9PnIodSxzLGgpKX1yZXR1cm4gcihkLHMsaCl9fX0se2dldCJ+c3RhbmRhcmQiKCl7cmV0dXJuIFlzKHRoaXMsIn5zdGFuZGFyZCIsTmkodGhpcykpfSxzZXQifnN0YW5kYXJkIihlKXthdCh0aGlzLCJ+c3RhbmRhcmQiLGUpfX0pLE5wPShlLHQpPT5lLmlzc3Vlcy5sZW5ndGg/e2lzc3VlczplLmlzc3Vlcy5tYXAobj0+RmUobix0LG1lKCkpKX06e3ZhbHVlOmUudmFsdWV9O2FzeW5jIGZ1bmN0aW9uIEd2KGUsdCl7Y29uc3Qgbj17YXN5bmM6ITB9O3JldHVybiBOcChhd2FpdCBlLl96b2QucnVuKHt2YWx1ZTp0LGlzc3VlczpbXX0sbiksbil9ZnVuY3Rpb24gTmkoZSl7cmV0dXJue3ZhbGlkYXRlOnQ9Pntjb25zdCBuPXthc3luYzohMX07dHJ5e2NvbnN0IG89ZS5fem9kLnJ1bih7dmFsdWU6dCxpc3N1ZXM6W119LG4pO2lmKCEobyBpbnN0YW5jZW9mIFByb21pc2UpKXJldHVybiBOcChvLG4pfWNhdGNoe31yZXR1cm4gR3YoZSx0KX0sdmVuZG9yOiJ6b2QiLHZlcnNpb246MX19Y29uc3QgY289ZigiJFpvZFN0cmluZyIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGF0dGVybj10LnBhdHRlcm4/P1hoLGUuX3pvZC5wYXJzZT0obixvKT0+e2lmKHQuY29lcmNlKXRyeXtuLnZhbHVlPVN0cmluZyhuLnZhbHVlKX1jYXRjaHt9cmV0dXJuIHR5cGVvZiBuLnZhbHVlPT0ic3RyaW5nInx8bi5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6InN0cmluZyIsY29kZToiaW52YWxpZF90eXBlIixpbnB1dDpuLnZhbHVlLGluc3Q6ZX0pLG59fSkscmU9ZigiJFpvZFN0cmluZ0Zvcm1hdCIsKGUsdCk9Pntpby5pbml0KGUsdCksY28uaW5pdChlLHQpfSksUHA9ZigiJFpvZEdVSUQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPU9oKSxyZS5pbml0KGUsdCl9KSx4cD1mKCIkWm9kVVVJRCIsKGUsdCk9PntpZih0LnZlcnNpb24pe2NvbnN0IG89e3YxOjEsdjI6Mix2MzozLHY0OjQsdjU6NSx2Njo2LHY3Ojcsdjg6OH1bdC52ZXJzaW9uXTtpZihvPT09dm9pZCAwKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBVVUlEIHZlcnNpb246ICIke3QudmVyc2lvbn0iYCk7dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPW5uKG8pKX1lbHNlIHQucGF0dGVybj8/KHQucGF0dGVybj1ubigpKTtyZS5pbml0KGUsdCl9KSxJcD1mKCIkWm9kRW1haWwiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPU1oKSxyZS5pbml0KGUsdCl9KSxQaT0xLFZuPTI7ZnVuY3Rpb24geGkoZSl7dHJ5e3JldHVybiB0eXBlb2YgVVJMPCJ1IiYmdHlwZW9mIFVSTC5jYW5QYXJzZT09ImZ1bmN0aW9uIj9VUkwuY2FuUGFyc2UoZSk6KG5ldyBVUkwoZSksITApfWNhdGNoe3JldHVybiExfX1mdW5jdGlvbiBFcChlLHQpe3JldHVybiEoIm5vcm1hbGl6ZSJpbiB0KSYmISgiaG9zdG5hbWUiaW4gdCkmJiEoInByb3RvY29sImluIHQpP3hpKGUpfHxWbjpScChlLHQpfWZ1bmN0aW9uIFJwKGUsdCl7aWYoIXQubm9ybWFsaXplJiZ0LnByb3RvY29sPy5zb3VyY2U9PT1TaS5zb3VyY2UmJiEvXmh0dHBzPzpcL1wvL2kudGVzdChlKSlyZXR1cm4gUGk7dHJ5e2lmKHR5cGVvZiBVUkw8InUiKXtjb25zdCBuPVVSTDtpZih0eXBlb2Ygbi5wYXJzZT09ImZ1bmN0aW9uIilyZXR1cm4gbi5wYXJzZShlKT8/Vm59cmV0dXJuIG5ldyBVUkwoZSl9Y2F0Y2h7cmV0dXJuIFZufX1jb25zdCBKdj0vW1x0XG5ccl0vZztmdW5jdGlvbiBSYShlKXtyZXR1cm4gZS5yZXBsYWNlKEp2LCIiKX1mdW5jdGlvbiBPcChlLHQpe3JldHVybiB0Lmxhc3RJbmRleD0wLHQudGVzdChlLmhvc3RuYW1lKX1mdW5jdGlvbiBNcChlLHQpe3JldHVybiB0Lmxhc3RJbmRleD0wLHQudGVzdChlLnByb3RvY29sLmVuZHNXaXRoKCI6Iik/ZS5wcm90b2NvbC5zbGljZSgwLC0xKTplLnByb3RvY29sKX1jb25zdCBacD1mKCIkWm9kVVJMIiwoZSx0KT0+e3JlLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e3RyeXtjb25zdCBvPW4udmFsdWUudHJpbSgpLHM9RXAobyx0KTtpZihzPT09UGkpe24uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InVybCIsbm90ZToiSW52YWxpZCBVUkwgZm9ybWF0IixpbnB1dDpuLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pO3JldHVybn1pZihzPT09Vm4pe24uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InVybCIsaW5wdXQ6bi52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KTtyZXR1cm59aWYocz09PSEwKXtuLnZhbHVlPVJhKG8pO3JldHVybn10Lmhvc3RuYW1lJiYhT3Aocyx0Lmhvc3RuYW1lKSYmbi5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF9mb3JtYXQiLGZvcm1hdDoidXJsIixub3RlOiJJbnZhbGlkIGhvc3RuYW1lIixwYXR0ZXJuOnQuaG9zdG5hbWUuc291cmNlLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSksdC5wcm90b2NvbCYmIU1wKHMsdC5wcm90b2NvbCkmJm4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6InVybCIsbm90ZToiSW52YWxpZCBwcm90b2NvbCIscGF0dGVybjp0LnByb3RvY29sLnNvdXJjZSxpbnB1dDpuLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pLG4udmFsdWU9dC5ub3JtYWxpemU/cy5ocmVmOlJhKG8pO3JldHVybn1jYXRjaHtuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJ1cmwiLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fX0pLHFwPWYoIiRab2RFbW9qaSIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49cWgoKSkscmUuaW5pdChlLHQpfSksRHA9ZigiJFpvZE5hbm9JRCIsKGUsdCk9PntpZih0Lmxlbmd0aCE9PXZvaWQgMCYmKCFOdW1iZXIuaXNJbnRlZ2VyKHQubGVuZ3RoKXx8dC5sZW5ndGg8MSkpdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIG5hbm9pZCBsZW5ndGg6ICR7dC5sZW5ndGh9YCk7dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPXQubGVuZ3RoPT09dm9pZCAwP0loOkVoKHQubGVuZ3RoKSkscmUuaW5pdChlLHQpfSksTHA9ZigiJFpvZENVSUQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPXpoKSxyZS5pbml0KGUsdCl9KSxCcD1mKCIkWm9kQ1VJRDIiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPUNoKSxyZS5pbml0KGUsdCl9KSxIcD1mKCIkWm9kVUxJRCIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49TmgpLHJlLmluaXQoZSx0KX0pLEZwPWYoIiRab2RYSUQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPVBoKSxyZS5pbml0KGUsdCl9KSxVcD1mKCIkWm9kS1NVSUQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPXhoKSxyZS5pbml0KGUsdCl9KSxWcD1mKCIkWm9kSVNPRGF0ZVRpbWUiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPVFoKHQpKSxyZS5pbml0KGUsdCl9KSxXcD1mKCIkWm9kSVNPRGF0ZSIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49SmgpLHJlLmluaXQoZSx0KX0pLEtwPWYoIiRab2RJU09UaW1lIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1ZaCh0KSkscmUuaW5pdChlLHQpfSksR3A9ZigiJFpvZElTT0R1cmF0aW9uIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1SaCkscmUuaW5pdChlLHQpfSksSnA9ZigiJFpvZElQdjQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPURoKSxyZS5pbml0KGUsdCl9KSxZdj0vXlswLTlhLWZBLUY6Ll0rJC87ZnVuY3Rpb24gSWkoZSl7cmV0dXJuIFl2LnRlc3QoZSk/eGkoYGh0dHA6Ly9bJHtlfV1gKTohMX1jb25zdCBZcD1mKCIkWm9kSVB2NiIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49TGgpLHJlLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e0lpKG4udmFsdWUpfHxuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJpcHY2IixpbnB1dDpuLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pfX0pLFFwPWYoIiRab2RNQUMiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPUJoKHQuZGVsaW1pdGVyKSkscmUuaW5pdChlLHQpfSksWHA9ZigiJFpvZENJRFJ2NCIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49SGgpLHJlLmluaXQoZSx0KX0pO2Z1bmN0aW9uIGVtKGUpe2NvbnN0IHQ9ZS5zcGxpdCgiLyIpO2lmKHQubGVuZ3RoIT09MilyZXR1cm4hMTtjb25zdFtuLG9dPXQ7aWYoIW8pcmV0dXJuITE7Y29uc3Qgcz1OdW1iZXIobyk7cmV0dXJuYCR7c31gIT09b3x8czwwfHxzPjEyOD8hMTpJaShuKX1jb25zdCB0bT1mKCIkWm9kQ0lEUnY2IiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1GaCkscmUuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57ZW0obi52YWx1ZSl8fG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImNpZHJ2NiIsaW5wdXQ6bi52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KTtmdW5jdGlvbiBFaShlKXtpZihlPT09IiIpcmV0dXJuITA7aWYoL1xzLy50ZXN0KGUpfHxlLmxlbmd0aCU0IT09MClyZXR1cm4hMTt0cnl7cmV0dXJuIGF0b2IoZSksITB9Y2F0Y2h7cmV0dXJuITF9fWNvbnN0IG5tPS9eWzAtOWEtekEtWisvXSo9ezAsMn0kLyxvbT1mKCIkWm9kQmFzZTY0IiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1ubSkscmUuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57RWkobi52YWx1ZSl8fG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImJhc2U2NCIsaW5wdXQ6bi52YWx1ZSxpbnN0OmUsY29udGludWU6IXQuYWJvcnR9KX19KSxSaT0vXltBLVphLXowLTlfLV0qJC87ZnVuY3Rpb24gc20oZSl7aWYoIVJpLnRlc3QoZSkpcmV0dXJuITE7Y29uc3QgdD1lLnJlcGxhY2UoL1stX10vZyxvPT5vPT09Ii0iPyIrIjoiLyIpLG49dC5wYWRFbmQoTWF0aC5jZWlsKHQubGVuZ3RoLzQpKjQsIj0iKTtyZXR1cm4gRWkobil9Y29uc3Qgcm09ZigiJFpvZEJhc2U2NFVSTCIsKGUsdCk9Pnt0LnBhdHRlcm4/Pyh0LnBhdHRlcm49UmkpLHJlLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e3NtKG4udmFsdWUpfHxuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJiYXNlNjR1cmwiLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksYW09ZigiJFpvZEUxNjQiLChlLHQpPT57dC5wYXR0ZXJuPz8odC5wYXR0ZXJuPVdoKSxyZS5pbml0KGUsdCl9KSxRdj0vWy0gXS9nO2Z1bmN0aW9uIFh2KGUpe2xldCB0PWUubGVuZ3RoLG49MSxvPTA7Zm9yKDt0Oyl7Y29uc3Qgcz1lLmNoYXJDb2RlQXQoLS10KS00ODtuXj0xLG8rPW4/WzAsMiw0LDYsOCwxLDMsNSw3LDldW3NdOnN9cmV0dXJuIG8lMTA9PT0wfWZ1bmN0aW9uIGltKGUpe3JldHVybiBfaS50ZXN0KGUpP1h2KGUucmVwbGFjZShRdiwiIikpOiExfWNvbnN0IGNtPWYoIiRab2RDcmVkaXRDYXJkIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1faSkscmUuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57aW0obi52YWx1ZSl8fG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImNyZWRpdF9jYXJkIixpbnB1dDpuLnZhbHVlLGluc3Q6ZSxjb250aW51ZTohdC5hYm9ydH0pfX0pO2Z1bmN0aW9uIGVrKGUpe2xldCB0PTA7Y29uc3Qgbj1lLmxlbmd0aDtmb3IobGV0IG89NDtvPG47bysrKXtjb25zdCBzPWUuY2hhckNvZGVBdChvKTt0PShzPj02NT90KjEwMCsocy01NSk6dCoxMCsocy00OCkpJTk3fWZvcihsZXQgbz0wO288NDtvKyspe2NvbnN0IHM9ZS5jaGFyQ29kZUF0KG8pO3Q9KHM+PTY1P3QqMTAwKyhzLTU1KTp0KjEwKyhzLTQ4KSklOTd9cmV0dXJuIHQ9PT0xfWZ1bmN0aW9uIGxtKGUpe3JldHVybiBqaS50ZXN0KGUpP2VrKGUpOiExfWNvbnN0IHVtPWYoIiRab2RJQkFOIiwoZSx0KT0+e3QucGF0dGVybj8/KHQucGF0dGVybj1qaSkscmUuaW5pdChlLHQpLGUuX3pvZC5jaGVjaz1uPT57bG0obi52YWx1ZSl8fG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6ImliYW4iLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSk7ZnVuY3Rpb24gZG0oZSx0PW51bGwpe3RyeXtjb25zdCBuPWUuc3BsaXQoIi4iKTtpZihuLmxlbmd0aCE9PTMpcmV0dXJuITE7Y29uc3Rbb109bjtpZighbylyZXR1cm4hMTtjb25zdCBzPUpTT04ucGFyc2UoYXRvYihvKSk7cmV0dXJuISgidHlwImluIHMmJnM/LnR5cCE9PSJKV1QifHwhcy5hbGd8fHQmJighKCJhbGciaW4gcyl8fHMuYWxnIT09dCkpfWNhdGNoe3JldHVybiExfX1jb25zdCBobT1mKCIkWm9kSldUIiwoZSx0KT0+e3JlLmluaXQoZSx0KSxlLl96b2QuY2hlY2s9bj0+e2RtKG4udmFsdWUsdC5hbGcpfHxuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OiJqd3QiLGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSkscG09ZigiJFpvZEN1c3RvbVN0cmluZ0Zvcm1hdCIsKGUsdCk9PntyZS5pbml0KGUsdCksZS5fem9kLmNoZWNrPW49Pnt0LmZuKG4udmFsdWUpfHxuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2Zvcm1hdCIsZm9ybWF0OnQuZm9ybWF0LGlucHV0Om4udmFsdWUsaW5zdDplLGNvbnRpbnVlOiF0LmFib3J0fSl9fSksT2k9ZigiJFpvZE51bWJlciIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGF0dGVybj1zcixlLl96b2QucGFyc2U9KG4sbyk9PntpZih0LmNvZXJjZSl0cnl7bi52YWx1ZT1OdW1iZXIobi52YWx1ZSl9Y2F0Y2h7fWNvbnN0IHM9bi52YWx1ZTtpZih0eXBlb2Ygcz09Im51bWJlciImJiFOdW1iZXIuaXNOYU4ocykmJk51bWJlci5pc0Zpbml0ZShzKSlyZXR1cm4gbjtjb25zdCByPXR5cGVvZiBzPT0ibnVtYmVyIj9OdW1iZXIuaXNOYU4ocyk/Ik5hTiI6TnVtYmVyLmlzRmluaXRlKHMpP3ZvaWQgMDpTdHJpbmcocyk6dm9pZCAwO3JldHVybiBuLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoibnVtYmVyIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnMsaW5zdDplLC4uLnI/e3JlY2VpdmVkOnJ9Ont9fSksbn19KSxtbT1mKCIkWm9kTnVtYmVyRm9ybWF0IiwoZSx0KT0+e3VwLmluaXQoZSx0KSxPaS5pbml0KGUsdCl9KSxNaT1mKCIkWm9kQm9vbGVhbiIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGF0dGVybj1vcCxlLl96b2QucGFyc2U9KG4sbyk9PntpZih0LmNvZXJjZSl0cnl7bi52YWx1ZT0hIW4udmFsdWV9Y2F0Y2h7fWNvbnN0IHM9bi52YWx1ZTtyZXR1cm4gdHlwZW9mIHM9PSJib29sZWFuInx8bi5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6ImJvb2xlYW4iLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cyxpbnN0OmV9KSxufX0pLFppPWYoIiRab2RCaWdJbnQiLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhdHRlcm49dHAsZS5fem9kLnBhcnNlPShuLG8pPT57aWYodC5jb2VyY2UpdHJ5e24udmFsdWU9QmlnSW50KG4udmFsdWUpfWNhdGNoe31yZXR1cm4gdHlwZW9mIG4udmFsdWU9PSJiaWdpbnQifHxuLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoiYmlnaW50Iixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0Om4udmFsdWUsaW5zdDplfSksbn19KSxmbT1mKCIkWm9kQmlnSW50Rm9ybWF0IiwoZSx0KT0+e2RwLmluaXQoZSx0KSxaaS5pbml0KGUsdCl9KSxnbT1mKCIkWm9kU3ltYm9sIiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXJzZT0obixvKT0+e2NvbnN0IHM9bi52YWx1ZTtyZXR1cm4gdHlwZW9mIHM9PSJzeW1ib2wifHxuLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoic3ltYm9sIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnMsaW5zdDplfSksbn19KSxibT1mKCIkWm9kVW5kZWZpbmVkIiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXR0ZXJuPXJwLGUuX3pvZC52YWx1ZXM9bmV3IFNldChbdm9pZCAwXSksZS5fem9kLnBhcnNlPShuLG8pPT57Y29uc3Qgcz1uLnZhbHVlO3JldHVybiB0eXBlb2Ygcz4idSJ8fG4uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJ1bmRlZmluZWQiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cyxpbnN0OmV9KSxufX0pLHZtPWYoIiRab2ROdWxsIiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXR0ZXJuPXNwLGUuX3pvZC52YWx1ZXM9bmV3IFNldChbbnVsbF0pLGUuX3pvZC5wYXJzZT0obixvKT0+e2NvbnN0IHM9bi52YWx1ZTtyZXR1cm4gcz09PW51bGx8fG4uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJudWxsIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnMsaW5zdDplfSksbn19KSxrbT1mKCIkWm9kQW55IiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXJzZT1uPT5ufSkseW09ZigiJFpvZFVua25vd24iLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhcnNlPW49Pm59KSwkbT1mKCIkWm9kTmV2ZXIiLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhcnNlPShuLG8pPT4obi5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6Im5ldmVyIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0Om4udmFsdWUsaW5zdDplfSksbil9KSx3bT1mKCIkWm9kVm9pZCIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGFyc2U9KG4sbyk9Pntjb25zdCBzPW4udmFsdWU7cmV0dXJuIHR5cGVvZiBzPiJ1Inx8bi5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6InZvaWQiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cyxpbnN0OmV9KSxufX0pLFNtPWYoIiRab2REYXRlIiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5wYXJzZT0obixvKT0+e2lmKHQuY29lcmNlKXRyeXtuLnZhbHVlPW5ldyBEYXRlKG4udmFsdWUpfWNhdGNoe31jb25zdCBzPW4udmFsdWUscj1zIGluc3RhbmNlb2YgRGF0ZTtyZXR1cm4gciYmIU51bWJlci5pc05hTihzLmdldFRpbWUoKSl8fG4uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJkYXRlIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnMsLi4ucj97cmVjZWl2ZWQ6IkludmFsaWQgRGF0ZSJ9Ont9LGluc3Q6ZX0pLG59fSk7ZnVuY3Rpb24gZWQoZSx0LG4pe2UuaXNzdWVzLmxlbmd0aCYmdC5pc3N1ZXMucHVzaCguLi5EZShuLGUuaXNzdWVzKSksdC52YWx1ZVtuXT1lLnZhbHVlfWNvbnN0IF9tPWYoIiRab2RBcnJheSIsKGUsdCk9PntELmluaXQoZSx0KTtjb25zdCBuPUFlLm1lbW9pemVyO24/LmF0dGFjaChlKSxlLl96b2QucGFyc2U9KG8scyk9Pntjb25zdCByPW8udmFsdWU7aWYoIUFycmF5LmlzQXJyYXkocikpcmV0dXJuIG8uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJhcnJheSIsY29kZToiaW52YWxpZF90eXBlIixpbnB1dDpyLGluc3Q6ZX0pLG87by52YWx1ZT1uP24uYWxsb2MoZSxvLEFycmF5KHIubGVuZ3RoKSxzKTpBcnJheShyLmxlbmd0aCk7Y29uc3QgaT1bXSxjPXM/LmFib3J0RWFybHk7Zm9yKGxldCBoPTA7aDxyLmxlbmd0aDtoKyspe2NvbnN0IGQ9cltoXSx1PXQuZWxlbWVudC5fem9kLnJ1bih7dmFsdWU6ZCxpc3N1ZXM6W119LHMpO2lmKHUgaW5zdGFuY2VvZiBQcm9taXNlKWkucHVzaCh1LnRoZW4ocD0+ZWQocCxvLGgpKSk7ZWxzZSBpZihlZCh1LG8saCksYyYmdS5pc3N1ZXMubGVuZ3RoIT09MCYmUGUodSkpYnJlYWt9cmV0dXJuIGkubGVuZ3RoP1Byb21pc2UuYWxsKGkpLnRoZW4oKCk9Pm8pOm99fSk7ZnVuY3Rpb24gQ3MoZSx0LG4sbyxzLHIpe2NvbnN0IGk9biBpbiBvLGM9cj09PSJvcHRpb25hbCI7aWYoISghaSYmYyYmcz09PSJvcHRpb25hbCIpKXtpZihlLmlzc3Vlcy5sZW5ndGgpe2lmKHMhPT12b2lkIDAmJmMmJiFpKXJldHVybjt0Lmlzc3Vlcy5wdXNoKC4uLkRlKG4sZS5pc3N1ZXMpKX1pZighaSYmcz09PXZvaWQgMCl7ZS5pc3N1ZXMubGVuZ3RofHx0Lmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX3R5cGUiLGV4cGVjdGVkOiJub25vcHRpb25hbCIsaW5wdXQ6dm9pZCAwLHBhdGg6W25dfSk7cmV0dXJufWUudmFsdWU9PT12b2lkIDA/KGl8fHM9PT0iZGVmYXVsdGVkIiYmIWMpJiYodC52YWx1ZVtuXT12b2lkIDApOnQudmFsdWVbbl09ZS52YWx1ZX19Y29uc3QgdGs9W107ZnVuY3Rpb24gam0oZSl7Y29uc3QgdD1PYmplY3Qua2V5cyhlLnNoYXBlKSxuPU9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZS5zaGFwZSksbz1uLmxlbmd0aD9uOnRrLHM9by5sZW5ndGg/Wy4uLnQsLi4ub106dDtmb3IoY29uc3QgaSBvZiBzKWlmKCFlLnNoYXBlPy5baV0/Ll96b2Q/LnRyYWl0cz8uaGFzKCIkWm9kVHlwZSIpKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBlbGVtZW50IGF0IGtleSAiJHtTdHJpbmcoaSl9IjogZXhwZWN0ZWQgYSBab2Qgc2NoZW1hYCk7Y29uc3Qgcj1haChlLnNoYXBlKTtyZXR1cm57Li4uZSxhbGxLZXlzOnMsc3ltYm9sS2V5czpvLGtleVNldDpuZXcgU2V0KHQpLG51bUtleXM6dC5sZW5ndGgsb3B0aW9uYWxLZXlzOm5ldyBTZXQocil9fWZ1bmN0aW9uIFRtKGUsdCxuLG8scyxyLGkpe2NvbnN0IGM9W10saD1zLmtleVNldCxkPXMuY2F0Y2hhbGwuX3pvZCx1PWQuZGVmLnR5cGUscD1kLm9wdGluLG09ZC5vcHRvdXQ7bGV0IHk9MDtmb3IoY29uc3QgJCBpbiB0KXtpZihpJiZuLmlzc3Vlcy5sZW5ndGghPT15KXtpZihQZShuLHkpKWJyZWFrO3k9bi5pc3N1ZXMubGVuZ3RofWlmKGguaGFzKCQpKWNvbnRpbnVlO2lmKCQ9PT0iX19wcm90b19fIil7dT09PSJuZXZlciImJmMucHVzaCgkKTtjb250aW51ZX1pZih1PT09Im5ldmVyIil7Yy5wdXNoKCQpO2NvbnRpbnVlfWNvbnN0IFM9ZC5ydW4oe3ZhbHVlOnRbJF0saXNzdWVzOltdfSxvKTtTIGluc3RhbmNlb2YgUHJvbWlzZT9lLnB1c2goUy50aGVuKE49PkNzKE4sbiwkLHQscCxtKSkpOkNzKFMsbiwkLHQscCxtKX1yZXR1cm4gYy5sZW5ndGgmJm4uaXNzdWVzLnB1c2goe2NvZGU6InVucmVjb2duaXplZF9rZXlzIixrZXlzOmMsaW5wdXQ6dCxpbnN0OnIsY29udGludWU6ITB9KSxlLmxlbmd0aD9Qcm9taXNlLmFsbChlKS50aGVuKCgpPT5uKTpufWNvbnN0IEFtPWYoIiRab2RPYmplY3QiLChlLHQpPT57RC5pbml0KGUsdCk7Y29uc3Qgbj1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKHQsInNoYXBlIiksbz1uPy5nZXQ/bi5nZXQucmF3OnQuc2hhcGU/P3t9O2lmKG8pe2NvbnN0IGQ9KCk9Pntjb25zdCB1PXsuLi5vfTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHQsInNoYXBlIix7dmFsdWU6dX0pLGQucmF3PXUsdX07ZC5yYXc9byxPYmplY3QuZGVmaW5lUHJvcGVydHkodCwic2hhcGUiLHtnZXQ6ZH0pfWNvbnN0IHM9WG4oKCk9PmptKHQpKTtWKGUsInByb3BWYWx1ZXMiLGQ9Pntjb25zdCB1PWQuZGVmLnNoYXBlLHA9e307Zm9yKGNvbnN0IG0gaW4gdSl7Y29uc3QgeT11W21dLl96b2Q7aWYoeS52YWx1ZXMpe09iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwLG0pfHxMdChwLG0sbmV3IFNldCk7Zm9yKGNvbnN0ICQgb2YgeS52YWx1ZXMpcFttXS5hZGQoJCk7eS5vcHRpbiE9PXZvaWQgMCYmcFttXS5hZGQodm9pZCAwKX19cmV0dXJuIHB9KTtjb25zdCByPWVuLGk9dC5jYXRjaGFsbDtsZXQgYztjb25zdCBoPUFlLm1lbW9pemVyO2g/LmF0dGFjaChlKSxlLl96b2QucGFyc2U9KGQsdSk9PntjPz8oYz1zLnZhbHVlKTtjb25zdCBwPWQudmFsdWU7aWYoIXIocCkpcmV0dXJuIGQuaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJvYmplY3QiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cCxpbnN0OmV9KSxkO2QudmFsdWU9aD9oLmFsbG9jKGUsZCx7fSx1KTp7fTtjb25zdCBtPVtdLHk9Yy5zaGFwZSwkPXU/LmFib3J0RWFybHk7bGV0IFM9ZC5pc3N1ZXMubGVuZ3RoO2Zvcihjb25zdCBOIG9mIGMuYWxsS2V5cyl7aWYoJCYmZC5pc3N1ZXMubGVuZ3RoIT09Uyl7aWYoUGUoZCxTKSlicmVhaztTPWQuaXNzdWVzLmxlbmd0aH1pZihOPT09Il9fcHJvdG9fXyIpY29udGludWU7Y29uc3QgRT15W05dLFQ9RS5fem9kLm9wdGluLEE9RS5fem9kLm9wdG91dCxRPUUuX3pvZC5ydW4oe3ZhbHVlOnBbTl0saXNzdWVzOltdfSx1KTtRIGluc3RhbmNlb2YgUHJvbWlzZT9tLnB1c2goUS50aGVuKFg9PkNzKFgsZCxOLHAsVCxBKSkpOkNzKFEsZCxOLHAsVCxBKX1yZXR1cm4gaT9UbShtLHAsZCx1LHMudmFsdWUsZSwkPT09ITApOm0ubGVuZ3RoP1Byb21pc2UuYWxsKG0pLnRoZW4oKCk9PmQpOmR9fSksem09ZigiJFpvZE9iamVjdEpJVCIsKGUsdCk9PntBbS5pbml0KGUsdCk7Y29uc3Qgbj1lLl96b2QucGFyc2Usbz1YbigoKT0+am0odCkpLHM9QWUubWVtb2l6ZXIscj15PT57Y29uc3QgJD1vLnZhbHVlLFM9JC5zeW1ib2xLZXlzLE49bmV3IHpwKFsicGF5bG9hZCIsImN0eCJdLHtzaGFwZTp5LGluc3Q6ZSxtZW1vOnMsc3ltczpTfSksRT1YPT5gc2hhcGVbJHtYfV0uX3pvZC5ydW4oeyB2YWx1ZTogaW5wdXRbJHtYfV0sIGlzc3VlczogW10gfSwgY3R4KWAsVD0oWCxKKT0+YAogICAgICAgICAgbGV0ICR7WH1fYWIgPSBmYWxzZTsKICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgJHtYfS5pc3N1ZXMubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgY29uc3QgaXNzID0gJHtYfS5pc3N1ZXNbaV07CiAgICAgICAgICAgIGlzcy5wYXRoID0gaXNzLnBhdGggPyBbJHtKfSwgLi4uaXNzLnBhdGhdIDogWyR7Sn1dOwogICAgICAgICAgICBwYXlsb2FkLmlzc3Vlcy5wdXNoKGlzcyk7CiAgICAgICAgICAgIGlmIChpc3MuY29udGludWUgIT09IHRydWUpICR7WH1fYWIgPSB0cnVlOwogICAgICAgICAgfQogICAgICAgICAgaWYgKCR7WH1fYWIgJiYgY3R4ICYmIGN0eC5hYm9ydEVhcmx5KSB7CiAgICAgICAgICAgIHBheWxvYWQudmFsdWUgPSBuZXdSZXN1bHQ7CiAgICAgICAgICAgIHJldHVybiBwYXlsb2FkOwogICAgICAgICAgfWA7Ti53cml0ZSgiY29uc3QgaW5wdXQgPSBwYXlsb2FkLnZhbHVlOyIpO2NvbnN0IEE9T2JqZWN0LmNyZWF0ZShudWxsKTtsZXQgUT0wO2Zvcihjb25zdCBYIG9mICQuYWxsS2V5cylBW1hdPWBrZXlfJHtRKyt9YDtOLndyaXRlKHM/ImNvbnN0IG5ld1Jlc3VsdCA9IG1lbW8uYWxsb2MoaW5zdCwgcGF5bG9hZCwge30sIGN0eCk7IjoiY29uc3QgbmV3UmVzdWx0ID0ge307Iik7Zm9yKGNvbnN0IFggb2YgJC5hbGxLZXlzKXtpZihYPT09Il9fcHJvdG9fXyIpY29udGludWU7Y29uc3QgSj1BW1hdLFA9dHlwZW9mIFg9PSJzeW1ib2wiP2BzeW1zWyR7Uy5pbmRleE9mKFgpfV1gOm5oKFgpLHR0PWAke1B9IGluIGlucHV0YCxBdD15W1hdLEZ0PUF0Py5fem9kPy5vcHRpbixJbj1GdCE9PXZvaWQgMCxhcz1BdD8uX3pvZD8ub3B0b3V0PT09Im9wdGlvbmFsIjtpZihOLndyaXRlKGBjb25zdCAke0p9ID0gJHtFKFApfTtgKSxJbiYmYXMpe2NvbnN0IEc9RnQ9PT0ib3B0aW9uYWwiP2Ake0p9X3ByZXNlbnRgOmAke0p9LnZhbHVlICE9PSB1bmRlZmluZWQgfHwgJHtKfV9wcmVzZW50YDtOLndyaXRlKGAKICAgICAgICBjb25zdCAke0p9X3ByZXNlbnQgPSAke3R0fTsKICAgICAgICBpZiAoISR7Sn0uaXNzdWVzLmxlbmd0aCB8fCAke0p9X3ByZXNlbnQpIHsKICAgICAgICAgIGlmICgke0p9Lmlzc3Vlcy5sZW5ndGgpIHske1QoSixQKX0KICAgICAgICAgIH0KCiAgICAgICAgICBpZiAoJHtHfSkgewogICAgICAgICAgICBuZXdSZXN1bHRbJHtQfV0gPSAke0p9LnZhbHVlOwogICAgICAgICAgfQogICAgICAgIH0KCiAgICAgIGApfWVsc2UgSW4/KE4ud3JpdGUoYAogICAgICAgIGlmICgke0p9Lmlzc3Vlcy5sZW5ndGgpIHske1QoSixQKX0KICAgICAgICB9CiAgICAgIGApLEZ0PT09ImRlZmF1bHRlZCI/Ti53cml0ZShgbmV3UmVzdWx0WyR7UH1dID0gJHtKfS52YWx1ZTtgKTpOLndyaXRlKGAKICAgICAgICBpZiAoJHtKfS52YWx1ZSAhPT0gdW5kZWZpbmVkIHx8ICR7dHR9KSB7CiAgICAgICAgICBuZXdSZXN1bHRbJHtQfV0gPSAke0p9LnZhbHVlOwogICAgICAgIH0KICAgICAgYCkpOk4ud3JpdGUoYAogICAgICAgIGNvbnN0ICR7Sn1fcHJlc2VudCA9ICR7dHR9OwogICAgICAgIGlmICgke0p9Lmlzc3Vlcy5sZW5ndGgpIHske1QoSixQKX0KICAgICAgICB9CiAgICAgICAgaWYgKCEke0p9X3ByZXNlbnQgJiYgISR7Sn0uaXNzdWVzLmxlbmd0aCkgewogICAgICAgICAgcGF5bG9hZC5pc3N1ZXMucHVzaCh7CiAgICAgICAgICAgIGNvZGU6ICJpbnZhbGlkX3R5cGUiLAogICAgICAgICAgICBleHBlY3RlZDogIm5vbm9wdGlvbmFsIiwKICAgICAgICAgICAgaW5wdXQ6IHVuZGVmaW5lZCwKICAgICAgICAgICAgcGF0aDogWyR7UH1dCiAgICAgICAgICB9KTsKICAgICAgICAgIGlmIChjdHggJiYgY3R4LmFib3J0RWFybHkpIHsKICAgICAgICAgICAgcGF5bG9hZC52YWx1ZSA9IG5ld1Jlc3VsdDsKICAgICAgICAgICAgcmV0dXJuIHBheWxvYWQ7CiAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBpZiAoJHtKfV9wcmVzZW50KSB7CiAgICAgICAgICBuZXdSZXN1bHRbJHtQfV0gPSAke0p9LnZhbHVlOwogICAgICAgIH0KCiAgICAgIGApfXJldHVybiBOLndyaXRlKCJwYXlsb2FkLnZhbHVlID0gbmV3UmVzdWx0OyIpLE4ud3JpdGUoInJldHVybiBwYXlsb2FkOyIpLE4uY29tcGlsZSgpfTtsZXQgaTtjb25zdCBjPWVuLGg9IUFlLmppdGxlc3MsdT1oJiZzaC52YWx1ZSxwPXQuY2F0Y2hhbGw7bGV0IG07ZS5fem9kLnBhcnNlPSh5LCQpPT57bT8/KG09by52YWx1ZSk7Y29uc3QgUz15LnZhbHVlO3JldHVybiBjKFMpP2gmJnUmJiQ/LmFzeW5jPT09ITEmJiQuaml0bGVzcyE9PSEwPyhpfHwoaT1yKHQuc2hhcGUpKSx5PWkoeSwkKSxwP1RtKFtdLFMseSwkLG0sZSwkPy5hYm9ydEVhcmx5PT09ITApOnkpOm4oeSwkKTooeS5pc3N1ZXMucHVzaCh7ZXhwZWN0ZWQ6Im9iamVjdCIsY29kZToiaW52YWxpZF90eXBlIixpbnB1dDpTLGluc3Q6ZX0pLHkpfX0pO2Z1bmN0aW9uIHRkKGUsdCxuLG8pe2Zvcihjb25zdCByIG9mIGUpaWYoci5pc3N1ZXMubGVuZ3RoPT09MClyZXR1cm4gdC52YWx1ZT1yLnZhbHVlLHQ7Y29uc3Qgcz1lLmZpbHRlcihyPT4hUGUocikpO3JldHVybiBzLmxlbmd0aD09PTE/KHQudmFsdWU9c1swXS52YWx1ZSxzWzBdKToodC5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF91bmlvbiIsaW5wdXQ6dC52YWx1ZSxpbnN0Om4sZXJyb3JzOmUubWFwKHI9PnIuaXNzdWVzLm1hcChpPT5GZShpLG8sbWUoKSkpKX0pLHQpfWNvbnN0IGFyPWYoIiRab2RVbmlvbiIsKGUsdCk9PntELmluaXQoZSx0KSxWKGUsIm9wdGluIixvPT5vLmRlZi5vcHRpb25zLnNvbWUocz0+cy5fem9kLm9wdGluPT09ImRlZmF1bHRlZCIpPyJkZWZhdWx0ZWQiOm8uZGVmLm9wdGlvbnMuc29tZShzPT5zLl96b2Qub3B0aW4hPT12b2lkIDApPyJvcHRpb25hbCI6dm9pZCAwKSxWKGUsIm9wdG91dCIsbz0+by5kZWYub3B0aW9ucy5zb21lKHM9PnMuX3pvZC5vcHRvdXQ9PT0ib3B0aW9uYWwiKT8ib3B0aW9uYWwiOnZvaWQgMCksVihlLCJ2YWx1ZXMiLG89PntpZihvLmRlZi5vcHRpb25zLmV2ZXJ5KHM9PnMuX3pvZC52YWx1ZXMpKXJldHVybiBuZXcgU2V0KG8uZGVmLm9wdGlvbnMuZmxhdE1hcChzPT5BcnJheS5mcm9tKHMuX3pvZC52YWx1ZXMpKSl9KSxWKGUsInBhdHRlcm4iLG89PntpZihvLmRlZi5vcHRpb25zLmV2ZXJ5KHM9PnMuX3pvZC5wYXR0ZXJuKSl7Y29uc3Qgcz1vLmRlZi5vcHRpb25zLm1hcChyPT5yLl96b2QucGF0dGVybik7cmV0dXJuIG5ldyBSZWdFeHAoYF4oJHtzLm1hcChyPT5ndChyLnNvdXJjZSkpLmpvaW4oInwiKX0pJGApfX0pO2NvbnN0IG49dC5vcHRpb25zLmxlbmd0aD09PTE/dC5vcHRpb25zWzBdLl96b2QucnVuOm51bGw7ZS5fem9kLnBhcnNlPShvLHMpPT57aWYobilyZXR1cm4gbihvLHMpO2xldCByPSExO2NvbnN0IGk9W107Zm9yKGNvbnN0IGMgb2YgdC5vcHRpb25zKXtjb25zdCBoPWMuX3pvZC5ydW4oe3ZhbHVlOm8udmFsdWUsaXNzdWVzOltdfSxzKTtpZihoIGluc3RhbmNlb2YgUHJvbWlzZSlpLnB1c2goaCkscj0hMDtlbHNle2lmKGguaXNzdWVzLmxlbmd0aD09PTApcmV0dXJuIGg7aS5wdXNoKGgpfX1yZXR1cm4gcj9Qcm9taXNlLmFsbChpKS50aGVuKGM9PnRkKGMsbyxlLHMpKTp0ZChpLG8sZSxzKX19KTtmdW5jdGlvbiBuZChlLHQsbixvKXtjb25zdCBzPVtdO2ZvcihsZXQgcj0wO3I8ZS5sZW5ndGg7cisrKWVbcl0uaXNzdWVzLmxlbmd0aD09PTAmJnMucHVzaChyKTtyZXR1cm4gcy5sZW5ndGg9PT0xPyh0LnZhbHVlPWVbc1swXV0udmFsdWUsdCk6KHMubGVuZ3RoPT09MD90Lmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX3VuaW9uIixpbnB1dDp0LnZhbHVlLGluc3Q6bixlcnJvcnM6ZS5tYXAocj0+ci5pc3N1ZXMubWFwKGk9PkZlKGksbyxtZSgpKSkpfSk6dC5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF91bmlvbiIsaW5wdXQ6dC52YWx1ZSxpbnN0Om4sZXJyb3JzOltdLGluY2x1c2l2ZTohMSxtYXRjaGVzOnN9KSx0KX1jb25zdCBDbT1mKCIkWm9kWG9yIiwoZSx0KT0+e2FyLmluaXQoZSx0KSx0LmluY2x1c2l2ZT0hMTtjb25zdCBuPXQub3B0aW9ucy5sZW5ndGg9PT0xP3Qub3B0aW9uc1swXS5fem9kLnJ1bjpudWxsO2UuX3pvZC5wYXJzZT0obyxzKT0+e2lmKG4pcmV0dXJuIG4obyxzKTtsZXQgcj0hMTtjb25zdCBpPVtdO2Zvcihjb25zdCBjIG9mIHQub3B0aW9ucyl7Y29uc3QgaD1jLl96b2QucnVuKHt2YWx1ZTpvLnZhbHVlLGlzc3VlczpbXX0scyk7aCBpbnN0YW5jZW9mIFByb21pc2U/KGkucHVzaChoKSxyPSEwKTppLnB1c2goaCl9cmV0dXJuIHI/UHJvbWlzZS5hbGwoaSkudGhlbihjPT5uZChjLG8sZSxzKSk6bmQoaSxvLGUscyl9fSk7ZnVuY3Rpb24gcWkoZSx0KXtjb25zdCBuPWUuX3pvZDtsZXQgbz1uLmJhZy5vcHRpb25zTWFwO298fChvPU5tKG4uZGVmKSxuLmJhZy5vcHRpb25zTWFwPW8pO2NvbnN0IHM9by5nZXQodCk7aWYocz09PW51bGwpdGhyb3cgbmV3IEVycm9yKGBBbWJpZ3VvdXMgZGlzY3JpbWluYXRvciB2YWx1ZSAiJHtTdHJpbmcodCl9ImApO3JldHVybiBzfWZ1bmN0aW9uIE5tKGUpe2NvbnN0IHQ9bmV3IE1hcDtmb3IoY29uc3QgbiBvZiBlLm9wdGlvbnMpe2NvbnN0IG89bi5fem9kLnByb3BWYWx1ZXM/LltlLmRpc2NyaW1pbmF0b3JdO2lmKCFvfHxvLnNpemU9PT0wKXRocm93IG5ldyBFcnJvcihgSW52YWxpZCBkaXNjcmltaW5hdGVkIHVuaW9uIG9wdGlvbiBhdCBpbmRleCAiJHtlLm9wdGlvbnMuaW5kZXhPZihuKX0iYCk7Zm9yKGNvbnN0IHMgb2YgbylpZih0LmhhcyhzKSl7aWYocyE9PXZvaWQgMCl0aHJvdyBuZXcgRXJyb3IoYER1cGxpY2F0ZSBkaXNjcmltaW5hdG9yIHZhbHVlICIke1N0cmluZyhzKX0iYCk7dC5zZXQocyxudWxsKX1lbHNlIHQuc2V0KHMsbil9cmV0dXJuIHR9Y29uc3QgUG09ZigiJFpvZERpc2NyaW1pbmF0ZWRVbmlvbiIsKGUsdCk9Pnt0LmluY2x1c2l2ZT0hMSxhci5pbml0KGUsdCk7Y29uc3Qgbj1lLl96b2QucGFyc2U7VihlLCJwcm9wVmFsdWVzIixzPT57Y29uc3Qgcj17fTtsZXQgaT0wO2Zvcihjb25zdCBjIG9mIHMuZGVmLm9wdGlvbnMpe2NvbnN0IGg9Yy5fem9kLnByb3BWYWx1ZXM7aWYoIWh8fE9iamVjdC5rZXlzKGgpLmxlbmd0aD09PTApdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGRpc2NyaW1pbmF0ZWQgdW5pb24gb3B0aW9uIGF0IGluZGV4ICIke3MuZGVmLm9wdGlvbnMuaW5kZXhPZihjKX0iYCk7aFtzLmRlZi5kaXNjcmltaW5hdG9yXT8uaGFzKHZvaWQgMCkmJmkrKztmb3IoY29uc3RbZCx1XW9mIE9iamVjdC5lbnRyaWVzKGgpKXtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocixkKXx8THQocixkLG5ldyBTZXQpO2Zvcihjb25zdCBwIG9mIHUpcltkXS5hZGQocCl9fXJldHVybiFzLmRlZi51bmlvbkZhbGxiYWNrJiZpPjEmJnJbcy5kZWYuZGlzY3JpbWluYXRvcl0/LmRlbGV0ZSh2b2lkIDApLHJ9KSx0Lm9wdGlvbnMuZm9yRWFjaCgocyxyKT0+e2NvbnN0IGk9VXMocy5fem9kLmRlZik7aWYoaSYmIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChpLHQuZGlzY3JpbWluYXRvcikpdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGRpc2NyaW1pbmF0ZWQgdW5pb24gb3B0aW9uIGF0IGluZGV4ICIke3J9ImApfSk7Y29uc3Qgbz1YbigoKT0+Tm0odCkpO2UuX3pvZC5wYXJzZT0ocyxyKT0+e2NvbnN0IGk9cy52YWx1ZTtpZighZW4oaSkpcmV0dXJuIHMuaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdHlwZSIsZXhwZWN0ZWQ6Im9iamVjdCIsaW5wdXQ6aSxpbnN0OmV9KSxzO2NvbnN0IGM9aT8uW3QuZGlzY3JpbWluYXRvcl0saD1vLnZhbHVlLmdldChjKTtyZXR1cm4gaCYmKGMhPT12b2lkIDB8fHIuZGlyZWN0aW9uIT09ImJhY2t3YXJkIik/aC5fem9kLnJ1bihzLHIpOnQudW5pb25GYWxsYmFja3x8ci5kaXJlY3Rpb249PT0iYmFja3dhcmQiP24ocyxyKToocy5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF91bmlvbiIsZXJyb3JzOltdLG5vdGU6Ik5vIG1hdGNoaW5nIGRpc2NyaW1pbmF0b3IiLGRpc2NyaW1pbmF0b3I6dC5kaXNjcmltaW5hdG9yLG9wdGlvbnM6QXJyYXkuZnJvbShvLnZhbHVlLmtleXMoKSkuZmlsdGVyKGQ9Pm8udmFsdWUuZ2V0KGQpIT09bnVsbCksaW5wdXQ6aSxwYXRoOlt0LmRpc2NyaW1pbmF0b3JdLGluc3Q6ZX0pLHMpfX0pLHhtPWYoIiRab2RJbnRlcnNlY3Rpb24iLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhcnNlPShuLG8pPT57Y29uc3Qgcz1uLnZhbHVlLHI9dC5sZWZ0Ll96b2QucnVuKHt2YWx1ZTpzLGlzc3VlczpbXX0sbyksaT10LnJpZ2h0Ll96b2QucnVuKHt2YWx1ZTpzLGlzc3VlczpbXX0sbyk7cmV0dXJuIHIgaW5zdGFuY2VvZiBQcm9taXNlfHxpIGluc3RhbmNlb2YgUHJvbWlzZT9Qcm9taXNlLmFsbChbcixpXSkudGhlbigoW2gsZF0pPT5vZChuLGgsZCkpOm9kKG4scixpKX19KTtmdW5jdGlvbiBOcyhlLHQpe2lmKGU9PT10KXJldHVybnt2YWxpZDohMCxkYXRhOmV9O2lmKGUgaW5zdGFuY2VvZiBEYXRlJiZ0IGluc3RhbmNlb2YgRGF0ZSYmK2U9PSt0KXJldHVybnt2YWxpZDohMCxkYXRhOmV9O2lmKGt0KGUpJiZrdCh0KSl7Y29uc3Qgbj1PYmplY3Qua2V5cyh0KSxvPU9iamVjdC5rZXlzKGUpLmZpbHRlcihyPT5uLmluZGV4T2YocikhPT0tMSkscz17Li4uZSwuLi50fTtPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywiX19wcm90b19fIikmJmRlbGV0ZSBzLl9fcHJvdG9fXztmb3IoY29uc3QgciBvZiBvKXtpZihyPT09Il9fcHJvdG9fXyIpY29udGludWU7Y29uc3QgaT1OcyhlW3JdLHRbcl0pO2lmKCFpLnZhbGlkKXJldHVybnt2YWxpZDohMSxtZXJnZUVycm9yUGF0aDpbciwuLi5pLm1lcmdlRXJyb3JQYXRoXX07c1tyXT1pLmRhdGF9cmV0dXJue3ZhbGlkOiEwLGRhdGE6c319aWYoQXJyYXkuaXNBcnJheShlKSYmQXJyYXkuaXNBcnJheSh0KSl7aWYoZS5sZW5ndGghPT10Lmxlbmd0aClyZXR1cm57dmFsaWQ6ITEsbWVyZ2VFcnJvclBhdGg6W119O2NvbnN0IG49W107Zm9yKGxldCBvPTA7bzxlLmxlbmd0aDtvKyspe2NvbnN0IHM9ZVtvXSxyPXRbb10saT1OcyhzLHIpO2lmKCFpLnZhbGlkKXJldHVybnt2YWxpZDohMSxtZXJnZUVycm9yUGF0aDpbbywuLi5pLm1lcmdlRXJyb3JQYXRoXX07bi5wdXNoKGkuZGF0YSl9cmV0dXJue3ZhbGlkOiEwLGRhdGE6bn19cmV0dXJue3ZhbGlkOiExLG1lcmdlRXJyb3JQYXRoOltdfX1mdW5jdGlvbiBvZChlLHQsbil7Y29uc3Qgbz1uZXcgTWFwO2xldCBzO2NvbnN0IHI9bmV3IE1hcCxpPShkLHUpPT57bGV0IHA7aWYoZC5jb2RlPT09InVucmVjb2duaXplZF9rZXlzIiYmIWQucGF0aD8ubGVuZ3RoKXM/PyhzPWQpLHA9ZC5rZXlzO2Vsc2UgaWYoZC5jb2RlPT09ImludmFsaWRfa2V5IiYmZC5vcmlnaW49PT0icmVjb3JkIiYmZC5wYXRoPy5sZW5ndGg9PT0xKXtjb25zdCBtPVN0cmluZyhkLnBhdGhbMF0pO3IuaGFzKG0pfHxyLnNldChtLGQpLHA9W21dfWVsc2UgcmV0dXJuITE7Zm9yKGNvbnN0IG0gb2YgcClvLmhhcyhtKXx8by5zZXQobSx7fSksby5nZXQobSlbdV09ITA7cmV0dXJuITB9O2Zvcihjb25zdCBkIG9mIHQuaXNzdWVzKWkoZCwibCIpfHxlLmlzc3Vlcy5wdXNoKGQpO2Zvcihjb25zdCBkIG9mIG4uaXNzdWVzKWkoZCwiciIpfHxlLmlzc3Vlcy5wdXNoKGQpO2NvbnN0IGM9Wy4uLm9dLmZpbHRlcigoWyxkXSk9PmQubCYmZC5yKS5tYXAoKFtkXSk9PmQpO2lmKGMubGVuZ3RoKXtjb25zdCBkPXM/Yy5maWx0ZXIodT0+cy5rZXlzLmluY2x1ZGVzKHUpKTpbXTtkLmxlbmd0aCYmZS5pc3N1ZXMucHVzaCh7Li4ucyxrZXlzOmR9KTtmb3IoY29uc3QgdSBvZiBjKSFkLmluY2x1ZGVzKHUpJiZyLmhhcyh1KSYmZS5pc3N1ZXMucHVzaChyLmdldCh1KSl9Y29uc3QgaD1Ocyh0LnZhbHVlLG4udmFsdWUpO2lmKCFoLnZhbGlkKXtpZihQZShlKSlyZXR1cm4gZTt0aHJvdyBuZXcgRXJyb3IoYFVubWVyZ2FibGUgaW50ZXJzZWN0aW9uLiBFcnJvciBwYXRoOiAke0pTT04uc3RyaW5naWZ5KGgubWVyZ2VFcnJvclBhdGgpfWApfXJldHVybiBlLnZhbHVlPWguZGF0YSxlfWNvbnN0IERpPWYoIiRab2RUdXBsZSIsKGUsdCk9PntELmluaXQoZSx0KTtjb25zdCBuPXQuaXRlbXMsbz1BZS5tZW1vaXplcjtvPy5hdHRhY2goZSksZS5fem9kLnBhcnNlPShzLHIpPT57Y29uc3QgaT1zLnZhbHVlO2lmKCFBcnJheS5pc0FycmF5KGkpKXJldHVybiBzLmlzc3Vlcy5wdXNoKHtpbnB1dDppLGluc3Q6ZSxleHBlY3RlZDoidHVwbGUiLGNvZGU6ImludmFsaWRfdHlwZSJ9KSxzO3MudmFsdWU9bz9vLmFsbG9jKGUscyxbXSxyKTpbXTtjb25zdCBjPVtdLGg9c2Qobiwib3B0aW4iKSxkPXNkKG4sIm9wdG91dCIpO2lmKCF0LnJlc3Qpe2lmKGkubGVuZ3RoPGgpcmV0dXJuIHMuaXNzdWVzLnB1c2goe2NvZGU6InRvb19zbWFsbCIsbWluaW11bTpoLGluY2x1c2l2ZTohMCxpbnB1dDppLGluc3Q6ZSxvcmlnaW46ImFycmF5In0pLHM7aS5sZW5ndGg+bi5sZW5ndGgmJnMuaXNzdWVzLnB1c2goe2NvZGU6InRvb19iaWciLG1heGltdW06bi5sZW5ndGgsaW5jbHVzaXZlOiEwLGlucHV0OmksaW5zdDplLG9yaWdpbjoiYXJyYXkifSl9Y29uc3QgdT1uZXcgQXJyYXkobi5sZW5ndGgpLHA9dC5yZXN0P3I/LmFib3J0RWFybHk6dm9pZCAwO2xldCBtPSExO2ZvcihsZXQgeT0wO3k8bi5sZW5ndGg7eSsrKXtjb25zdCAkPW5beV0uX3pvZC5ydW4oe3ZhbHVlOmlbeV0saXNzdWVzOltdfSxyKTskIGluc3RhbmNlb2YgUHJvbWlzZT9jLnB1c2goJC50aGVuKFM9Pnt1W3ldPVN9KSk6KHVbeV09JCxwJiYhbSYmJC5pc3N1ZXMubGVuZ3RoJiYobT1QZSgkKSkpfWlmKHQucmVzdCYmIW0pe2xldCB5PW4ubGVuZ3RoLTE7Y29uc3QgJD1pLnNsaWNlKG4ubGVuZ3RoKTtsZXQgUz1zLmlzc3Vlcy5sZW5ndGg7Zm9yKGNvbnN0IE4gb2YgJCl7aWYocCYmcy5pc3N1ZXMubGVuZ3RoIT09Uyl7aWYoUGUocyxTKSlicmVhaztTPXMuaXNzdWVzLmxlbmd0aH15Kys7Y29uc3QgRT10LnJlc3QuX3pvZC5ydW4oe3ZhbHVlOk4saXNzdWVzOltdfSxyKTtFIGluc3RhbmNlb2YgUHJvbWlzZT9jLnB1c2goRS50aGVuKFQ9PnJkKFQscyx5KSkpOnJkKEUscyx5KX19cmV0dXJuIGMubGVuZ3RoP1Byb21pc2UuYWxsKGMpLnRoZW4oKCk9PmFkKHUscyxuLGksZCkpOmFkKHUscyxuLGksZCl9fSk7ZnVuY3Rpb24gc2QoZSx0KXtmb3IobGV0IG49ZS5sZW5ndGgtMTtuPj0wO24tLSlpZighKHQ9PT0ib3B0aW4iP2Vbbl0uX3pvZC5vcHRpbiE9PXZvaWQgMDplW25dLl96b2Qub3B0b3V0PT09Im9wdGlvbmFsIikpcmV0dXJuIG4rMTtyZXR1cm4gMH1mdW5jdGlvbiByZChlLHQsbil7ZS5pc3N1ZXMubGVuZ3RoJiZ0Lmlzc3Vlcy5wdXNoKC4uLkRlKG4sZS5pc3N1ZXMpKSx0LnZhbHVlW25dPWUudmFsdWV9ZnVuY3Rpb24gYWQoZSx0LG4sbyxzKXtmb3IobGV0IHI9MDtyPG4ubGVuZ3RoO3IrKyl7Y29uc3QgaT1lW3JdLGM9cjxvLmxlbmd0aDtpZighYyYmcj49cyYmbltyXS5fem9kLm9wdGluPT09Im9wdGlvbmFsIil7dC52YWx1ZS5sZW5ndGg9cjticmVha31pZihpLmlzc3Vlcy5sZW5ndGgpe2lmKCFjJiZyPj1zKXt0LnZhbHVlLmxlbmd0aD1yO2JyZWFrfXQuaXNzdWVzLnB1c2goLi4uRGUocixpLmlzc3VlcykpfXQudmFsdWVbcl09aS52YWx1ZX1mb3IobGV0IHI9dC52YWx1ZS5sZW5ndGgtMTtyPj1vLmxlbmd0aCYmKG5bcl0uX3pvZC5vcHRvdXQ9PT0ib3B0aW9uYWwiJiZ0LnZhbHVlW3JdPT09dm9pZCAwKTtyLS0pdC52YWx1ZS5sZW5ndGg9cjtyZXR1cm4gdH1jb25zdCBJbT1mKCIkWm9kUmVjb3JkIiwoZSx0KT0+e0QuaW5pdChlLHQpO2NvbnN0IG49QWUubWVtb2l6ZXI7bj8uYXR0YWNoKGUpLGUuX3pvZC5wYXJzZT0obyxzKT0+e2NvbnN0IHI9by52YWx1ZTtpZigha3QocikpcmV0dXJuIG8uaXNzdWVzLnB1c2goe2V4cGVjdGVkOiJyZWNvcmQiLGNvZGU6ImludmFsaWRfdHlwZSIsaW5wdXQ6cixpbnN0OmV9KSxvO2NvbnN0IGk9W10sYz10LmtleVR5cGUuX3pvZC52YWx1ZXM7aWYoYyYmIXQucGFydGlhbCl7by52YWx1ZT1uP24uYWxsb2MoZSxvLHt9LHMpOnt9O2NvbnN0IGg9bmV3IFNldDtmb3IoY29uc3QgdSBvZiBjKWlmKHR5cGVvZiB1PT0ic3RyaW5nInx8dHlwZW9mIHU9PSJudW1iZXIifHx0eXBlb2YgdT09InN5bWJvbCIpe2lmKGguYWRkKHR5cGVvZiB1PT0ibnVtYmVyIj91LnRvU3RyaW5nKCk6dSksdT09PSJfX3Byb3RvX18iKWNvbnRpbnVlO2NvbnN0IHA9dC5rZXlUeXBlLl96b2QucnVuKHt2YWx1ZTp1LGlzc3VlczpbXX0scyk7aWYocCBpbnN0YW5jZW9mIFByb21pc2UpdGhyb3cgbmV3IEVycm9yKCJBc3luYyBzY2hlbWFzIG5vdCBzdXBwb3J0ZWQgaW4gb2JqZWN0IGtleXMgY3VycmVudGx5Iik7aWYocC5pc3N1ZXMubGVuZ3RoKXtvLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2tleSIsb3JpZ2luOiJyZWNvcmQiLGlzc3VlczpwLmlzc3Vlcy5tYXAoJD0+RmUoJCxzLG1lKCkpKSxpbnB1dDp1LHBhdGg6W3VdLGluc3Q6ZX0pO2NvbnRpbnVlfWNvbnN0IG09cC52YWx1ZTtpZihtPT09Il9fcHJvdG9fXyIpY29udGludWU7Y29uc3QgeT10LnZhbHVlVHlwZS5fem9kLnJ1bih7dmFsdWU6clt1XSxpc3N1ZXM6W119LHMpO3kgaW5zdGFuY2VvZiBQcm9taXNlP2kucHVzaCh5LnRoZW4oJD0+eyQuaXNzdWVzLmxlbmd0aCYmby5pc3N1ZXMucHVzaCguLi5EZSh1LCQuaXNzdWVzKSksby52YWx1ZVttXT0kLnZhbHVlfSkpOih5Lmlzc3Vlcy5sZW5ndGgmJm8uaXNzdWVzLnB1c2goLi4uRGUodSx5Lmlzc3VlcykpLG8udmFsdWVbbV09eS52YWx1ZSl9bGV0IGQ7Zm9yKGNvbnN0IHUgaW4gcilpZighaC5oYXModSkpaWYodC5tb2RlPT09Imxvb3NlIil7aWYodT09PSJfX3Byb3RvX18iKWNvbnRpbnVlO28udmFsdWVbdV09clt1XX1lbHNlIGQ9ZD8/W10sZC5wdXNoKHUpO2QmJmQubGVuZ3RoPjAmJm8uaXNzdWVzLnB1c2goe2NvZGU6InVucmVjb2duaXplZF9rZXlzIixpbnB1dDpyLGluc3Q6ZSxrZXlzOmQsY29udGludWU6ITB9KX1lbHNle28udmFsdWU9bj9uLmFsbG9jKGUsbyx7fSxzKTp7fTtsZXQgaDtmb3IoY29uc3QgZCBvZiBSZWZsZWN0Lm93bktleXMocikpe2lmKGQ9PT0iX19wcm90b19fInx8IU9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChyLGQpKWNvbnRpbnVlO2xldCB1PXQua2V5VHlwZS5fem9kLnJ1bih7dmFsdWU6ZCxpc3N1ZXM6W119LHMpO2lmKHUgaW5zdGFuY2VvZiBQcm9taXNlKXRocm93IG5ldyBFcnJvcigiQXN5bmMgc2NoZW1hcyBub3Qgc3VwcG9ydGVkIGluIG9iamVjdCBrZXlzIGN1cnJlbnRseSIpO2lmKHR5cGVvZiBkPT0ic3RyaW5nIiYmc3IudGVzdChkKSYmdS5pc3N1ZXMubGVuZ3RoKXtjb25zdCAkPXQua2V5VHlwZS5fem9kLnJ1bih7dmFsdWU6TnVtYmVyKGQpLGlzc3VlczpbXX0scyk7aWYoJCBpbnN0YW5jZW9mIFByb21pc2UpdGhyb3cgbmV3IEVycm9yKCJBc3luYyBzY2hlbWFzIG5vdCBzdXBwb3J0ZWQgaW4gb2JqZWN0IGtleXMgY3VycmVudGx5Iik7JC5pc3N1ZXMubGVuZ3RoPT09MCYmKHU9JCl9aWYodS5pc3N1ZXMubGVuZ3RoKXt0Lm1vZGU9PT0ibG9vc2UiP28udmFsdWVbZF09cltkXTpjPyhoPWg/P1tdLGgucHVzaChkKSk6by5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF9rZXkiLG9yaWdpbjoicmVjb3JkIixpc3N1ZXM6dS5pc3N1ZXMubWFwKCQ9PkZlKCQscyxtZSgpKSksaW5wdXQ6ZCxwYXRoOltkXSxpbnN0OmV9KTtjb250aW51ZX1jb25zdCBtPXUudmFsdWU7aWYobT09PSJfX3Byb3RvX18iKWNvbnRpbnVlO2NvbnN0IHk9dC52YWx1ZVR5cGUuX3pvZC5ydW4oe3ZhbHVlOnJbZF0saXNzdWVzOltdfSxzKTt5IGluc3RhbmNlb2YgUHJvbWlzZT9pLnB1c2goeS50aGVuKCQ9PnskLmlzc3Vlcy5sZW5ndGgmJm8uaXNzdWVzLnB1c2goLi4uRGUoZCwkLmlzc3VlcykpLG8udmFsdWVbbV09JC52YWx1ZX0pKTooeS5pc3N1ZXMubGVuZ3RoJiZvLmlzc3Vlcy5wdXNoKC4uLkRlKGQseS5pc3N1ZXMpKSxvLnZhbHVlW21dPXkudmFsdWUpfWgmJmgubGVuZ3RoPjAmJm8uaXNzdWVzLnB1c2goe2NvZGU6InVucmVjb2duaXplZF9rZXlzIixpbnB1dDpyLGluc3Q6ZSxrZXlzOmgsY29udGludWU6ITB9KX1yZXR1cm4gaS5sZW5ndGg/UHJvbWlzZS5hbGwoaSkudGhlbigoKT0+byk6b319KSxFbT1mKCIkWm9kTWFwIiwoZSx0KT0+e0QuaW5pdChlLHQpO2NvbnN0IG49QWUubWVtb2l6ZXI7bj8uYXR0YWNoKGUpLGUuX3pvZC5wYXJzZT0obyxzKT0+e2NvbnN0IHI9by52YWx1ZTtpZighKHIgaW5zdGFuY2VvZiBNYXApKXJldHVybiBvLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoibWFwIixjb2RlOiJpbnZhbGlkX3R5cGUiLGlucHV0OnIsaW5zdDplfSksbztjb25zdCBpPVtdO28udmFsdWU9bj9uLmFsbG9jKGUsbyxuZXcgTWFwLHMpOm5ldyBNYXA7Y29uc3QgYz1zPy5hYm9ydEVhcmx5O2xldCBoPW8uaXNzdWVzLmxlbmd0aDtmb3IoY29uc3RbZCx1XW9mIHIpe2lmKGMmJm8uaXNzdWVzLmxlbmd0aCE9PWgpe2lmKFBlKG8saCkpYnJlYWs7aD1vLmlzc3Vlcy5sZW5ndGh9Y29uc3QgcD10LmtleVR5cGUuX3pvZC5ydW4oe3ZhbHVlOmQsaXNzdWVzOltdfSxzKSxtPXQudmFsdWVUeXBlLl96b2QucnVuKHt2YWx1ZTp1LGlzc3VlczpbXX0scyk7cCBpbnN0YW5jZW9mIFByb21pc2V8fG0gaW5zdGFuY2VvZiBQcm9taXNlP2kucHVzaChQcm9taXNlLmFsbChbcCxtXSkudGhlbigoW3ksJF0pPT57aWQoeSwkLG8sZCxyLGUscyl9KSk6aWQocCxtLG8sZCxyLGUscyl9cmV0dXJuIGkubGVuZ3RoP1Byb21pc2UuYWxsKGkpLnRoZW4oKCk9Pm8pOm99fSk7ZnVuY3Rpb24gaWQoZSx0LG4sbyxzLHIsaSl7ZS5pc3N1ZXMubGVuZ3RoJiYoVHMuaGFzKHR5cGVvZiBvKT9uLmlzc3Vlcy5wdXNoKC4uLkRlKG8sZS5pc3N1ZXMpKTpuLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX2tleSIsb3JpZ2luOiJtYXAiLGlucHV0OnMsaW5zdDpyLGlzc3VlczplLmlzc3Vlcy5tYXAoYz0+RmUoYyxpLG1lKCkpKX0pKSx0Lmlzc3Vlcy5sZW5ndGgmJihUcy5oYXModHlwZW9mIG8pP24uaXNzdWVzLnB1c2goLi4uRGUobyx0Lmlzc3VlcykpOm4uaXNzdWVzLnB1c2goe29yaWdpbjoibWFwIixjb2RlOiJpbnZhbGlkX2VsZW1lbnQiLGlucHV0OnMsaW5zdDpyLGtleTpvLGlzc3Vlczp0Lmlzc3Vlcy5tYXAoYz0+RmUoYyxpLG1lKCkpKX0pKSxuLnZhbHVlLnNldChlLnZhbHVlLHQudmFsdWUpfWNvbnN0IFJtPWYoIiRab2RTZXQiLChlLHQpPT57RC5pbml0KGUsdCk7Y29uc3Qgbj1BZS5tZW1vaXplcjtuPy5hdHRhY2goZSksZS5fem9kLnBhcnNlPShvLHMpPT57Y29uc3Qgcj1vLnZhbHVlO2lmKCEociBpbnN0YW5jZW9mIFNldCkpcmV0dXJuIG8uaXNzdWVzLnB1c2goe2lucHV0OnIsaW5zdDplLGV4cGVjdGVkOiJzZXQiLGNvZGU6ImludmFsaWRfdHlwZSJ9KSxvO2NvbnN0IGk9W107by52YWx1ZT1uP24uYWxsb2MoZSxvLG5ldyBTZXQscyk6bmV3IFNldDtjb25zdCBjPXM/LmFib3J0RWFybHk7bGV0IGg9by5pc3N1ZXMubGVuZ3RoO2Zvcihjb25zdCBkIG9mIHIpe2lmKGMmJm8uaXNzdWVzLmxlbmd0aCE9PWgpe2lmKFBlKG8saCkpYnJlYWs7aD1vLmlzc3Vlcy5sZW5ndGh9Y29uc3QgdT10LnZhbHVlVHlwZS5fem9kLnJ1bih7dmFsdWU6ZCxpc3N1ZXM6W119LHMpO3UgaW5zdGFuY2VvZiBQcm9taXNlP2kucHVzaCh1LnRoZW4ocD0+Y2QocCxvKSkpOmNkKHUsbyl9cmV0dXJuIGkubGVuZ3RoP1Byb21pc2UuYWxsKGkpLnRoZW4oKCk9Pm8pOm99fSk7ZnVuY3Rpb24gY2QoZSx0KXtlLmlzc3Vlcy5sZW5ndGgmJnQuaXNzdWVzLnB1c2goLi4uZS5pc3N1ZXMpLHQudmFsdWUuYWRkKGUudmFsdWUpfWNvbnN0IE9tPWYoIiRab2RFbnVtIiwoZSx0KT0+e0QuaW5pdChlLHQpO2NvbnN0IG49emEodC5lbnRyaWVzKSxvPW5ldyBTZXQobik7ZS5fem9kLnZhbHVlcz1vLFYoZSwicGF0dGVybiIscz0+e2NvbnN0IHI9emEocy5kZWYuZW50cmllcykuZmlsdGVyKGk9PlRzLmhhcyh0eXBlb2YgaSkpO3JldHVybiBuZXcgUmVnRXhwKHIubGVuZ3RoP2BeKCR7ci5tYXAoaT0+cnQoaS50b1N0cmluZygpKSkuam9pbigifCIpfSkkYDoiXlteXFxzXFxTXSQiKX0pLGUuX3pvZC5wYXJzZT0ocyxyKT0+e2NvbnN0IGk9cy52YWx1ZTtyZXR1cm4gby5oYXMoaSl8fHMuaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdmFsdWUiLHZhbHVlczpuLGlucHV0OmksaW5zdDplfSksc319KSxNbT1mKCIkWm9kTGl0ZXJhbCIsKGUsdCk9PntELmluaXQoZSx0KTtjb25zdCBuPW5ldyBTZXQodC52YWx1ZXMpO2UuX3pvZC52YWx1ZXM9bixWKGUsInBhdHRlcm4iLG89Pntjb25zdCBzPW8uZGVmLnZhbHVlcztyZXR1cm4gbmV3IFJlZ0V4cChzLmxlbmd0aD9gXigke3MubWFwKHI9PnR5cGVvZiByPT0ic3RyaW5nIj9ydChyKTpyP3J0KHIudG9TdHJpbmcoKSk6U3RyaW5nKHIpKS5qb2luKCJ8Iil9KSRgOiJeW15cXHNcXFNdJCIpfSksZS5fem9kLnBhcnNlPShvLHMpPT57Y29uc3Qgcj1vLnZhbHVlO3JldHVybiBuLmhhcyhyKXx8by5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF92YWx1ZSIsdmFsdWVzOnQudmFsdWVzLGlucHV0OnIsaW5zdDplfSksb319KSxabT1mKCIkWm9kRmlsZSIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGFyc2U9KG4sbyk9Pntjb25zdCBzPW4udmFsdWU7cmV0dXJuIHMgaW5zdGFuY2VvZiBGaWxlfHxuLmlzc3Vlcy5wdXNoKHtleHBlY3RlZDoiZmlsZSIsY29kZToiaW52YWxpZF90eXBlIixpbnB1dDpzLGluc3Q6ZX0pLG59fSkscW09ZigiJFpvZFRyYW5zZm9ybSIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2Qub3B0aW49Im9wdGlvbmFsIixBZS5tZW1vaXplcj8uZ3VhcmQoZSksZS5fem9kLnBhcnNlPShuLG8pPT57aWYoby5kaXJlY3Rpb249PT0iYmFja3dhcmQiKXRocm93IG5ldyBRcyhlLmNvbnN0cnVjdG9yLm5hbWUpO2NvbnN0IHM9dC50cmFuc2Zvcm0obi52YWx1ZSxuKTtpZihvLmFzeW5jKXJldHVybihzIGluc3RhbmNlb2YgUHJvbWlzZT9zOlByb21pc2UucmVzb2x2ZShzKSkudGhlbihpPT4obi52YWx1ZT1pLG4pKTtpZihzIGluc3RhbmNlb2YgUHJvbWlzZSl0aHJvdyBuZXcgYnQ7cmV0dXJuIG4udmFsdWU9cyxufX0pO2Z1bmN0aW9uIGxkKGUsdCl7cmV0dXJuIGUudmFsdWU9dC5pc3N1ZXMubGVuZ3RoP3ZvaWQgMDp0LnZhbHVlLGV9Y29uc3QgTGk9ZigiJFpvZE9wdGlvbmFsIiwoZSx0KT0+e0QuaW5pdChlLHQpLFYoZSwib3B0aW4iLG49Pm4uZGVmLmlubmVyVHlwZS5fem9kLm9wdGluPT09ImRlZmF1bHRlZCI/ImRlZmF1bHRlZCI6Im9wdGlvbmFsIiksZS5fem9kLm9wdG91dD0ib3B0aW9uYWwiLFYoZSwidmFsdWVzIixuPT57Y29uc3Qgbz1uLmRlZi5pbm5lclR5cGUuX3pvZC52YWx1ZXM7cmV0dXJuIG8/bmV3IFNldChbLi4ubyx2b2lkIDBdKTp2b2lkIDB9KSxWKGUsInBhdHRlcm4iLG49Pntjb25zdCBvPW4uZGVmLmlubmVyVHlwZS5fem9kLnBhdHRlcm47cmV0dXJuIG8/bmV3IFJlZ0V4cChgXigke2d0KG8uc291cmNlKX0pPyRgKTp2b2lkIDB9KSxlLl96b2QucGFyc2U9KG4sbyk9PntpZihuLnZhbHVlPT09dm9pZCAwKXtpZih0LmlubmVyVHlwZS5fem9kLm9wdGluIT09ImRlZmF1bHRlZCIpcmV0dXJuIG47Y29uc3Qgcz10LmlubmVyVHlwZS5fem9kLnJ1bih7dmFsdWU6bi52YWx1ZSxpc3N1ZXM6W119LG8pO3JldHVybiBzIGluc3RhbmNlb2YgUHJvbWlzZT9zLnRoZW4ocj0+bGQobixyKSk6bGQobixzKX1yZXR1cm4gdC5pbm5lclR5cGUuX3pvZC5ydW4obixvKX19KSxEbT1mKCIkWm9kRXhhY3RPcHRpb25hbCIsKGUsdCk9PntMaS5pbml0KGUsdCksVihlLCJ2YWx1ZXMiLG49Pm4uZGVmLmlubmVyVHlwZS5fem9kLnZhbHVlcyksVihlLCJwYXR0ZXJuIixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC5wYXR0ZXJuKSxlLl96b2QucGFyc2U9KG4sbyk9PnQuaW5uZXJUeXBlLl96b2QucnVuKG4sbyl9KSxMbT1mKCIkWm9kTnVsbGFibGUiLChlLHQpPT57RC5pbml0KGUsdCksVihlLCJvcHRpbiIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2Qub3B0aW4pLFYoZSwib3B0b3V0IixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC5vcHRvdXQpLFYoZSwicGF0dGVybiIsbj0+e2NvbnN0IG89bi5kZWYuaW5uZXJUeXBlLl96b2QucGF0dGVybjtyZXR1cm4gbz9uZXcgUmVnRXhwKGBeKCR7Z3Qoby5zb3VyY2UpfXxudWxsKSRgKTp2b2lkIDB9KSxWKGUsInZhbHVlcyIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2QudmFsdWVzP25ldyBTZXQoWy4uLm4uZGVmLmlubmVyVHlwZS5fem9kLnZhbHVlcyxudWxsXSk6dm9pZCAwKSxlLl96b2QucGFyc2U9KG4sbyk9Pm4udmFsdWU9PT1udWxsP246dC5pbm5lclR5cGUuX3pvZC5ydW4obixvKX0pLEJtPWYoIiRab2REZWZhdWx0IiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5vcHRpbj0iZGVmYXVsdGVkIixWKGUsInZhbHVlcyIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2QudmFsdWVzKSxlLl96b2QucGFyc2U9KG4sbyk9PntpZihvLmRpcmVjdGlvbj09PSJiYWNrd2FyZCIpcmV0dXJuIHQuaW5uZXJUeXBlLl96b2QucnVuKG4sbyk7aWYobi52YWx1ZT09PXZvaWQgMClyZXR1cm4gbi52YWx1ZT10LmRlZmF1bHRWYWx1ZSxuO2NvbnN0IHM9dC5pbm5lclR5cGUuX3pvZC5ydW4obixvKTtyZXR1cm4gcyBpbnN0YW5jZW9mIFByb21pc2U/cy50aGVuKHI9PnVkKHIsdCkpOnVkKHMsdCl9fSk7ZnVuY3Rpb24gdWQoZSx0KXtyZXR1cm4gZS52YWx1ZT09PXZvaWQgMCYmKGUudmFsdWU9dC5kZWZhdWx0VmFsdWUpLGV9Y29uc3QgSG09ZigiJFpvZFByZWZhdWx0IiwoZSx0KT0+e0QuaW5pdChlLHQpLGUuX3pvZC5vcHRpbj0iZGVmYXVsdGVkIixWKGUsInZhbHVlcyIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2QudmFsdWVzKSxlLl96b2QucGFyc2U9KG4sbyk9PihvLmRpcmVjdGlvbj09PSJiYWNrd2FyZCJ8fG4udmFsdWU9PT12b2lkIDAmJihuLnZhbHVlPXQuZGVmYXVsdFZhbHVlKSx0LmlubmVyVHlwZS5fem9kLnJ1bihuLG8pKX0pLEZtPWYoIiRab2ROb25PcHRpb25hbCIsKGUsdCk9PntELmluaXQoZSx0KSxWKGUsInZhbHVlcyIsbj0+e2NvbnN0IG89bi5kZWYuaW5uZXJUeXBlLl96b2QudmFsdWVzO3JldHVybiBvP25ldyBTZXQoWy4uLm9dLmZpbHRlcihzPT5zIT09dm9pZCAwKSk6dm9pZCAwfSksZS5fem9kLnBhcnNlPShuLG8pPT57Y29uc3Qgcz10LmlubmVyVHlwZS5fem9kLnJ1bihuLG8pO3JldHVybiBzIGluc3RhbmNlb2YgUHJvbWlzZT9zLnRoZW4ocj0+ZGQocixlKSk6ZGQocyxlKX19KTtmdW5jdGlvbiBkZChlLHQpe3JldHVybiFlLmlzc3Vlcy5sZW5ndGgmJmUudmFsdWU9PT12b2lkIDAmJmUuaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdHlwZSIsZXhwZWN0ZWQ6Im5vbm9wdGlvbmFsIixpbnB1dDplLnZhbHVlLGluc3Q6dH0pLGV9Y29uc3QgVW09ZigiJFpvZFN1Y2Nlc3MiLChlLHQpPT57RC5pbml0KGUsdCksZS5fem9kLnBhcnNlPShuLG8pPT57aWYoby5kaXJlY3Rpb249PT0iYmFja3dhcmQiKXRocm93IG5ldyBRcygiWm9kU3VjY2VzcyIpO2NvbnN0IHM9dC5pbm5lclR5cGUuX3pvZC5ydW4obixvKTtyZXR1cm4gcyBpbnN0YW5jZW9mIFByb21pc2U/cy50aGVuKHI9PihuLnZhbHVlPXIuaXNzdWVzLmxlbmd0aD09PTAsbikpOihuLnZhbHVlPXMuaXNzdWVzLmxlbmd0aD09PTAsbil9fSk7ZnVuY3Rpb24gaGQoZSx0LG4sbyl7cmV0dXJuIHQuaXNzdWVzLmxlbmd0aD8oZS52YWx1ZT1uLmNhdGNoVmFsdWUoey4uLnQsdmFsdWU6ZS52YWx1ZSxlcnJvcjp7aXNzdWVzOnQuaXNzdWVzLm1hcChzPT5GZShzLG8sbWUoKSkpfSxpbnB1dDplLnZhbHVlfSksZSk6KGUudmFsdWU9dC52YWx1ZSx0Lm1lbW8mJihlLm1lbW89ITApLGUpfWNvbnN0IFZtPWYoIiRab2RDYXRjaCIsKGUsdCk9PntELmluaXQoZSx0KSxWKGUsIm9wdGluIixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC5vcHRpbj09PSJkZWZhdWx0ZWQiPyJkZWZhdWx0ZWQiOiJvcHRpb25hbCIpLFYoZSwib3B0b3V0IixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC5vcHRvdXQpLFYoZSwidmFsdWVzIixuPT5uLmRlZi5pbm5lclR5cGUuX3pvZC52YWx1ZXMpLGUuX3pvZC5wYXJzZT0obixvKT0+e2lmKG8uZGlyZWN0aW9uPT09ImJhY2t3YXJkIilyZXR1cm4gdC5pbm5lclR5cGUuX3pvZC5ydW4obixvKTtjb25zdCBzPXQuaW5uZXJUeXBlLl96b2QucnVuKHt2YWx1ZTpuLnZhbHVlLGlzc3VlczpbXX0sbyk7cmV0dXJuIHMgaW5zdGFuY2VvZiBQcm9taXNlP3MudGhlbihyPT5oZChuLHIsdCxvKSk6aGQobixzLHQsbyl9fSksV209ZigiJFpvZE5hTiIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGFyc2U9KG4sbyk9PigodHlwZW9mIG4udmFsdWUhPSJudW1iZXIifHwhTnVtYmVyLmlzTmFOKG4udmFsdWUpKSYmbi5pc3N1ZXMucHVzaCh7aW5wdXQ6bi52YWx1ZSxpbnN0OmUsZXhwZWN0ZWQ6Im5hbiIsY29kZToiaW52YWxpZF90eXBlIn0pLG4pfSksQmk9ZigiJFpvZFBpcGUiLChlLHQpPT57RC5pbml0KGUsdCksVihlLCJ2YWx1ZXMiLG49Pm4uZGVmLmluLl96b2QudmFsdWVzKSxWKGUsIm9wdGluIixuPT5uLmRlZi5pbi5fem9kLm9wdGluKSxWKGUsIm9wdG91dCIsbj0+bi5kZWYub3V0Ll96b2Qub3B0b3V0KSxWKGUsInByb3BWYWx1ZXMiLG49Pm4uZGVmLmluLl96b2QucHJvcFZhbHVlcyksZS5fem9kLnBhcnNlPShuLG8pPT57aWYoby5kaXJlY3Rpb249PT0iYmFja3dhcmQiKXtjb25zdCByPXQub3V0Ll96b2QucnVuKG4sbyk7cmV0dXJuIHIgaW5zdGFuY2VvZiBQcm9taXNlP3IudGhlbihpPT5pcyhpLHQuaW4sbykpOmlzKHIsdC5pbixvKX1jb25zdCBzPXQuaW4uX3pvZC5ydW4obixvKTtyZXR1cm4gcyBpbnN0YW5jZW9mIFByb21pc2U/cy50aGVuKHI9PmlzKHIsdC5vdXQsbykpOmlzKHMsdC5vdXQsbyl9fSk7ZnVuY3Rpb24gaXMoZSx0LG4pe3JldHVybiBlLmlzc3Vlcy5zb21lKG89Pm8uY29kZSE9PSJ1bnJlY29nbml6ZWRfa2V5cyIpPyhlLmFib3J0ZWQ9ITAsZSk6dC5fem9kLnJ1bih7dmFsdWU6ZS52YWx1ZSxpc3N1ZXM6ZS5pc3N1ZXN9LG4pfWNvbnN0IEhpPWYoIiRab2RDb2RlYyIsKGUsdCk9PntELmluaXQoZSx0KSxWKGUsInZhbHVlcyIsbj0+bi5kZWYuaW4uX3pvZC52YWx1ZXMpLFYoZSwib3B0aW4iLG49Pm4uZGVmLmluLl96b2Qub3B0aW4pLFYoZSwib3B0b3V0IixuPT5uLmRlZi5vdXQuX3pvZC5vcHRvdXQpLFYoZSwicHJvcFZhbHVlcyIsbj0+bi5kZWYuaW4uX3pvZC5wcm9wVmFsdWVzKSxlLl96b2QucGFyc2U9KG4sbyk9PntpZigoby5kaXJlY3Rpb258fCJmb3J3YXJkIik9PT0iZm9yd2FyZCIpe2NvbnN0IHI9dC5pbi5fem9kLnJ1bihuLG8pO3JldHVybiByIGluc3RhbmNlb2YgUHJvbWlzZT9yLnRoZW4oaT0+Y3MoaSx0LG8pKTpjcyhyLHQsbyl9ZWxzZXtjb25zdCByPXQub3V0Ll96b2QucnVuKG4sbyk7cmV0dXJuIHIgaW5zdGFuY2VvZiBQcm9taXNlP3IudGhlbihpPT5jcyhpLHQsbykpOmNzKHIsdCxvKX19fSk7ZnVuY3Rpb24gY3MoZSx0LG4pe2lmKGUuaXNzdWVzLmxlbmd0aClyZXR1cm4gZS5hYm9ydGVkPSEwLGU7aWYoKG4uZGlyZWN0aW9ufHwiZm9yd2FyZCIpPT09ImZvcndhcmQiKXtjb25zdCBzPXQudHJhbnNmb3JtKGUudmFsdWUsZSk7cmV0dXJuIHMgaW5zdGFuY2VvZiBQcm9taXNlP3MudGhlbihyPT5scyhlLHIsdC5vdXQsbikpOmxzKGUscyx0Lm91dCxuKX1lbHNle2NvbnN0IHM9dC5yZXZlcnNlVHJhbnNmb3JtKGUudmFsdWUsZSk7cmV0dXJuIHMgaW5zdGFuY2VvZiBQcm9taXNlP3MudGhlbihyPT5scyhlLHIsdC5pbixuKSk6bHMoZSxzLHQuaW4sbil9fWZ1bmN0aW9uIGxzKGUsdCxuLG8pe3JldHVybiBlLmlzc3Vlcy5sZW5ndGg/KGUuYWJvcnRlZD0hMCxlKTpuLl96b2QucnVuKHt2YWx1ZTp0LGlzc3VlczplLmlzc3Vlc30sbyl9Y29uc3QgS209ZigiJFpvZFByZXByb2Nlc3MiLChlLHQpPT57QmkuaW5pdChlLHQpfSksR209ZigiJFpvZFJlYWRvbmx5IiwoZSx0KT0+e0QuaW5pdChlLHQpLFYoZSwicHJvcFZhbHVlcyIsbj0+bi5kZWYuaW5uZXJUeXBlLl96b2QucHJvcFZhbHVlcyksVihlLCJ2YWx1ZXMiLG49Pm4uZGVmLmlubmVyVHlwZS5fem9kLnZhbHVlcyksVihlLCJvcHRpbiIsbj0+bi5kZWYuaW5uZXJUeXBlPy5fem9kPy5vcHRpbiksVihlLCJvcHRvdXQiLG49Pm4uZGVmLmlubmVyVHlwZT8uX3pvZD8ub3B0b3V0KSxlLl96b2QucGFyc2U9KG4sbyk9PntpZihvLmRpcmVjdGlvbj09PSJiYWNrd2FyZCIpcmV0dXJuIHQuaW5uZXJUeXBlLl96b2QucnVuKG4sbyk7Y29uc3Qgcz10LmlubmVyVHlwZS5fem9kLnJ1bihuLG8pO3JldHVybiBzIGluc3RhbmNlb2YgUHJvbWlzZT9zLnRoZW4ocGQpOnBkKHMpfX0pO2Z1bmN0aW9uIHBkKGUpe3JldHVybiBlLm1lbW98fChlLnZhbHVlPU9iamVjdC5mcmVlemUoZS52YWx1ZSkpLGV9ZnVuY3Rpb24gbmsoZSl7Y29uc3QgdD1lLl96b2QuZGVmO2xldCBuPXQucGF0dGVybixvPSEhdC5mb3JtYXQ/LmluY2x1ZGVzKCJpbnQiKSxzLHI7Zm9yKGNvbnN0IGMgb2YgdC5jaGVja3M/P1tdKXtjb25zdCBoPWMuX3pvZC5kZWY7aC5wYXR0ZXJuJiYobj1oLnBhdHRlcm4pLG98fChvPSEhaC5mb3JtYXQ/LmluY2x1ZGVzKCJpbnQiKSk7Y29uc3QgZD1oLm1pbmltdW0/P2gubGVuZ3RoLHU9aC5tYXhpbXVtPz9oLmxlbmd0aDtkIT09dm9pZCAwJiYocz09PXZvaWQgMHx8ZD5zKSYmKHM9ZCksdSE9PXZvaWQgMCYmKHI9PT12b2lkIDB8fHU8cikmJihyPXUpfWlmKG4pcmV0dXJuIG4uc291cmNlO2lmKHMhPT12b2lkIDAmJnIhPT12b2lkIDAmJnM+cilyZXR1cm4iKD8hKSI7aWYocyE9PXZvaWQgMHx8ciE9PXZvaWQgMClyZXR1cm4gZXAoe21pbmltdW06cyxtYXhpbXVtOnJ9KS5zb3VyY2U7Y29uc3QgaT1lLl96b2QucGF0dGVybjtyZXR1cm4obyYmaT09PXNyP25wOmkpPy5zb3VyY2V9ZnVuY3Rpb24gT2EoZSl7Y29uc3QgdD1lLl96b2QuZGVmLG49ZS5fem9kLnBhdHRlcm4/LnNvdXJjZSxvPXQuaW5uZXJUeXBlPz9lLl96b2QuaW5uZXJUeXBlO2lmKG8pe2NvbnN0IHM9by5fem9kLnBhdHRlcm4/LnNvdXJjZSxyPU9hKG8pO3JldHVybiBuJiZzJiZyJiZyIT09cz9uLnJlcGxhY2UoZ3QocyksKCk9Pmd0KHIpKTpufWlmKHQub3B0aW9ucyl7Y29uc3Qgcz10Lm9wdGlvbnMubWFwKE9hKTtpZihzLmV2ZXJ5KEJvb2xlYW4pKXJldHVybmBeKCR7cy5tYXAocj0+Z3QocikpLmpvaW4oInwiKX0pJGB9cmV0dXJuIG5rKGUpfWNvbnN0IEptPWYoIiRab2RUZW1wbGF0ZUxpdGVyYWwiLChlLHQpPT57RC5pbml0KGUsdCk7Y29uc3Qgbj1bXTtmb3IoY29uc3QgbyBvZiB0LnBhcnRzKWlmKHR5cGVvZiBvPT0ib2JqZWN0IiYmbyE9PW51bGwpe2NvbnN0IHM9T2Eobyk7aWYoIXMpdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlbXBsYXRlIGxpdGVyYWwgcGFydCwgbm8gcGF0dGVybiBmb3VuZDogJHtbLi4uby5fem9kLnRyYWl0c10uc2hpZnQoKX1gKTtuLnB1c2goZ3QocykpfWVsc2UgaWYobz09PW51bGx8fHJoLmhhcyh0eXBlb2Ygbykpbi5wdXNoKHJ0KGAke299YCkpO2Vsc2UgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHRlbXBsYXRlIGxpdGVyYWwgcGFydDogJHtvfWApO2UuX3pvZC5wYXR0ZXJuPW5ldyBSZWdFeHAoYF4ke24uam9pbigiIil9JGApLGUuX3pvZC5wYXJzZT0obyxzKT0+dHlwZW9mIG8udmFsdWUhPSJzdHJpbmciPyhvLmlzc3Vlcy5wdXNoKHtpbnB1dDpvLnZhbHVlLGluc3Q6ZSxleHBlY3RlZDoic3RyaW5nIixjb2RlOiJpbnZhbGlkX3R5cGUifSksbyk6KGUuX3pvZC5wYXR0ZXJuLmxhc3RJbmRleD0wLGUuX3pvZC5wYXR0ZXJuLnRlc3Qoby52YWx1ZSl8fG8uaXNzdWVzLnB1c2goe2lucHV0Om8udmFsdWUsaW5zdDplLGNvZGU6ImludmFsaWRfZm9ybWF0Iixmb3JtYXQ6dC5mb3JtYXQ/PyJ0ZW1wbGF0ZV9saXRlcmFsIixwYXR0ZXJuOmUuX3pvZC5wYXR0ZXJuLnNvdXJjZX0pLG8pfSksWW09ZigiJFpvZEZ1bmN0aW9uIiwoZSx0KT0+KEQuaW5pdChlLHQpLE9iamVjdC5kZWZpbmVQcm9wZXJ0eShlLCJfZGVmIix7dmFsdWU6dH0pLGUuX3pvZC5kZWY9dCxlLmltcGxlbWVudD1uPT57aWYodHlwZW9mIG4hPSJmdW5jdGlvbiIpdGhyb3cgbmV3IEVycm9yKCJpbXBsZW1lbnQoKSBtdXN0IGJlIGNhbGxlZCB3aXRoIGEgZnVuY3Rpb24iKTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KGZ1bmN0aW9uKC4uLm8pe2NvbnN0IHM9ZS5fZGVmLmlucHV0P3hhKGUuX2RlZi5pbnB1dCxvKTpvLHI9UmVmbGVjdC5hcHBseShuLHRoaXMscyk7cmV0dXJuIGUuX2RlZi5vdXRwdXQ/eGEoZS5fZGVmLm91dHB1dCxyKTpyfSwiX3pvZCIse3ZhbHVlOmUuX3pvZCxlbnVtZXJhYmxlOiExfSl9LGUuaW1wbGVtZW50QXN5bmM9bj0+e2lmKHR5cGVvZiBuIT0iZnVuY3Rpb24iKXRocm93IG5ldyBFcnJvcigiaW1wbGVtZW50QXN5bmMoKSBtdXN0IGJlIGNhbGxlZCB3aXRoIGEgZnVuY3Rpb24iKTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KGFzeW5jIGZ1bmN0aW9uKC4uLm8pe2NvbnN0IHM9ZS5fZGVmLmlucHV0P2F3YWl0IElhKGUuX2RlZi5pbnB1dCxvKTpvLHI9YXdhaXQgUmVmbGVjdC5hcHBseShuLHRoaXMscyk7cmV0dXJuIGUuX2RlZi5vdXRwdXQ/YXdhaXQgSWEoZS5fZGVmLm91dHB1dCxyKTpyfSwiX3pvZCIse3ZhbHVlOmUuX3pvZCxlbnVtZXJhYmxlOiExfSl9LGUuX3pvZC5wYXJzZT0obixvKT0+dHlwZW9mIG4udmFsdWUhPSJmdW5jdGlvbiI/KG4uaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdHlwZSIsZXhwZWN0ZWQ6ImZ1bmN0aW9uIixpbnB1dDpuLnZhbHVlLGluc3Q6ZX0pLG4pOihlLl9kZWYub3V0cHV0JiZlLl9kZWYub3V0cHV0Ll96b2QuZGVmLnR5cGU9PT0icHJvbWlzZSI/bi52YWx1ZT1lLmltcGxlbWVudEFzeW5jKG4udmFsdWUpOm4udmFsdWU9ZS5pbXBsZW1lbnQobi52YWx1ZSksbiksZS5pbnB1dD0oLi4ubik9Pntjb25zdCBvPWUuY29uc3RydWN0b3I7cmV0dXJuIEFycmF5LmlzQXJyYXkoblswXSk/bmV3IG8oe3R5cGU6ImZ1bmN0aW9uIixpbnB1dDpuZXcgRGkoe3R5cGU6InR1cGxlIixpdGVtczpuWzBdLHJlc3Q6blsxXX0pLG91dHB1dDplLl9kZWYub3V0cHV0fSk6bmV3IG8oe3R5cGU6ImZ1bmN0aW9uIixpbnB1dDpuWzBdLG91dHB1dDplLl9kZWYub3V0cHV0fSl9LGUub3V0cHV0PW49Pntjb25zdCBvPWUuY29uc3RydWN0b3I7cmV0dXJuIG5ldyBvKHt0eXBlOiJmdW5jdGlvbiIsaW5wdXQ6ZS5fZGVmLmlucHV0LG91dHB1dDpufSl9LGUpKSxRbT1mKCIkWm9kUHJvbWlzZSIsKGUsdCk9PntELmluaXQoZSx0KSxlLl96b2QucGFyc2U9KG4sbyk9PlByb21pc2UucmVzb2x2ZShuLnZhbHVlKS50aGVuKHM9PnQuaW5uZXJUeXBlLl96b2QucnVuKHt2YWx1ZTpzLGlzc3VlczpbXX0sbykpfSksRmk9ZigiJFpvZExhenkiLChlLHQpPT57RC5pbml0KGUsdCksWGQoZS5fem9kLCJpbm5lclR5cGUiLCgpPT57Y29uc3Qgbj10O3JldHVybiBuLl9jYWNoZWRJbm5lcnx8KG4uX2NhY2hlZElubmVyPXQuZ2V0dGVyKCkpLG4uX2NhY2hlZElubmVyfSksVihlLCJwYXR0ZXJuIixuPT5uLmlubmVyVHlwZT8uX3pvZD8ucGF0dGVybiksVihlLCJwcm9wVmFsdWVzIixuPT5uLmlubmVyVHlwZT8uX3pvZD8ucHJvcFZhbHVlcyksVihlLCJvcHRpbiIsbj0+bi5pbm5lclR5cGU/Ll96b2Q/Lm9wdGluPz92b2lkIDApLFYoZSwib3B0b3V0IixuPT5uLmlubmVyVHlwZT8uX3pvZD8ub3B0b3V0Pz92b2lkIDApLGUuX3pvZC5wYXJzZT0obixvKT0+ZS5fem9kLmlubmVyVHlwZS5fem9kLnJ1bihuLG8pfSksWG09ZigiJFpvZEN1c3RvbSIsKGUsdCk9PntjZS5pbml0KGUsdCksRC5pbml0KGUsdCksZS5fem9kLnBhcnNlPShuLG8pPT5uLGUuX3pvZC5jaGVjaz1uPT57Y29uc3Qgbz1uLnZhbHVlLHM9dC5mbihvKTtpZihzIGluc3RhbmNlb2YgUHJvbWlzZSlyZXR1cm4gcy50aGVuKHI9Pm1kKHIsbixvLGUpKTttZChzLG4sbyxlKX19KTtmdW5jdGlvbiBtZChlLHQsbixvKXtpZighZSl7Y29uc3Qgcz17Y29kZToiY3VzdG9tIixpbnB1dDpuLGluc3Q6byxwYXRoOlsuLi5vLl96b2QuZGVmLnBhdGg/P1tdXSxjb250aW51ZTohby5fem9kLmRlZi5hYm9ydH07by5fem9kLmRlZi5wYXJhbXMmJihzLnBhcmFtcz1vLl96b2QuZGVmLnBhcmFtcyksdC5pc3N1ZXMucHVzaCh0bihzKSl9fWNsYXNzIGVmIGV4dGVuZHMgRXJyb3J7Y29uc3RydWN0b3IoKXtzdXBlcigiQ2Fubm90IHBhcnNlIGEgcmVmZXJlbmNlIGN5Y2xlIHRoYXQgY2xvc2VzIHRocm91Z2ggYSB0cmFuc2Zvcm0iKSx0aGlzLm5hbWU9IlpvZEN5Y2xpY0Vycm9yIn19Y29uc3QgTWE9In5tZW1vIixmZD1bXTtmdW5jdGlvbiB0ZihlKXtyZXR1cm4gZSE9PW51bGwmJnR5cGVvZiBlPT0ib2JqZWN0In1mdW5jdGlvbiB3YShlKXtyZXR1cm4gZS5tYXAodD0+dC5wYXRoP3suLi50LHBhdGg6dC5wYXRoLnNsaWNlKCl9OnsuLi50fSl9Y29uc3QgbmY9bmV3IFdlYWtNYXAsVnQ9MCx5cz0xLHFuPTI7ZnVuY3Rpb24gRG4oZSx0LG4pe2NvbnN0IG89bmYuZ2V0KGUpO2lmKG8hPT12b2lkIDApcmV0dXJuIG8/cW46VnQ7aWYodC5oYXMoZSkpcmV0dXJuIHFuO3QuYWRkKGUpO2xldCBzPVZ0O2NvbnN0IHI9dT0+e2lmKHMhPT1xbiYmdT8uX3pvZCl7Y29uc3QgcD1Ebih1LHQsbik7cD5zJiYocz1wKX19LGk9KHUscCk9PntsZXQgbT1WdDtmb3IoY29uc3QgeSBvZiBSZWZsZWN0Lm93bktleXModSkpe2NvbnN0ICQ9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcih1LHkpO2lmKCEkLmVudW1lcmFibGUpY29udGludWU7Y29uc3QgUz0kLmdldD95czokLnZhbHVlPy5fem9kP0RuKCQudmFsdWUsdCxuKTpWdDtTPm0mJihtPVMpfXJldHVybiBtfSxjPXU9Pnt1PnMmJihzPXUpfSxoPWUuX3pvZC5kZWY7c3dpdGNoKGgudHlwZSl7Y2FzZSJvYmplY3QiOntjb25zdCB1PVVzKGgpO2ModT9pKHUpOnlzKSxyKGguY2F0Y2hhbGwpO2JyZWFrfWNhc2UiYXJyYXkiOnIoaC5lbGVtZW50KTticmVhaztjYXNlInR1cGxlIjpmb3IoY29uc3QgdSBvZiBoLml0ZW1zKXIodSk7cihoLnJlc3QpO2JyZWFrO2Nhc2UicmVjb3JkIjpjYXNlIm1hcCI6cihoLmtleVR5cGUpLHIoaC52YWx1ZVR5cGUpO2JyZWFrO2Nhc2Uic2V0IjpyKGgudmFsdWVUeXBlKTticmVhaztjYXNlInVuaW9uIjpmb3IoY29uc3QgdSBvZiBoLm9wdGlvbnMpcih1KTticmVhaztjYXNlImludGVyc2VjdGlvbiI6cihoLmxlZnQpLHIoaC5yaWdodCk7YnJlYWs7Y2FzZSJvcHRpb25hbCI6Y2FzZSJudWxsYWJsZSI6Y2FzZSJkZWZhdWx0IjpjYXNlInByZWZhdWx0IjpjYXNlImNhdGNoIjpjYXNlInJlYWRvbmx5IjpjYXNlIm5vbm9wdGlvbmFsIjpjYXNlInByb21pc2UiOmNhc2Uic3VjY2VzcyI6cihoLmlubmVyVHlwZSk7YnJlYWs7Y2FzZSJwaXBlIjpyKGguaW4pLHIoaC5vdXQpO2JyZWFrO2Nhc2UiZnVuY3Rpb24iOnIoaC5pbnB1dCkscihoLm91dHB1dCk7YnJlYWs7Y2FzZSJsYXp5Ijp7Y29uc3QgdT1oLl9jYWNoZWRJbm5lcj8/KG4/ZS5fem9kLmlubmVyVHlwZTp2b2lkIDApO2ModT9Ebih1LHQsITEpOnlzKTticmVha31jYXNlInRlbXBsYXRlX2xpdGVyYWwiOmNhc2Uic3RyaW5nIjpjYXNlIm51bWJlciI6Y2FzZSJpbnQiOmNhc2UiYm9vbGVhbiI6Y2FzZSJiaWdpbnQiOmNhc2Uic3ltYm9sIjpjYXNlInVuZGVmaW5lZCI6Y2FzZSJudWxsIjpjYXNlInZvaWQiOmNhc2UibmV2ZXIiOmNhc2UiYW55IjpjYXNlInVua25vd24iOmNhc2UiZGF0ZSI6Y2FzZSJuYW4iOmNhc2UiZW51bSI6Y2FzZSJsaXRlcmFsIjpjYXNlImZpbGUiOmNhc2UidHJhbnNmb3JtIjpjYXNlImN1c3RvbSI6YnJlYWs7ZGVmYXVsdDpmb3IoY29uc3QgdSBpbiBoKXtjb25zdCBwPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoaCx1KTtpZighcHx8cC5nZXQpY29udGludWU7Y29uc3QgbT1wLnZhbHVlO2lmKCEoIW18fHR5cGVvZiBtIT0ib2JqZWN0Iikpe2lmKG0uX3pvZClyKG0pO2Vsc2UgaWYoQXJyYXkuaXNBcnJheShtKSlmb3IoY29uc3QgeSBvZiBtKXIoeSl9fX1yZXR1cm4gdC5kZWxldGUoZSksb2soZSxzKX1mdW5jdGlvbiBvayhlLHQpe3JldHVybiB0IT09eXMmJm5mLnNldChlLHQ9PT1xbiksdH1mdW5jdGlvbiBzayhlKXtyZXR1cm4gRG4oZSxuZXcgU2V0LCEwKSE9PVZ0fWZ1bmN0aW9uIHJrKGUsdCl7bGV0IG49ZS5idWNrZXRzLmdldCh0KTtyZXR1cm4gbnx8KG49bmV3IFdlYWtNYXAsZS5idWNrZXRzLnNldCh0LG4pKSxufWxldCB1cztjb25zdCBkcz1bXSxhaz17YWxsb2MoZSx0LG4pe2NvbnN0IG89dXM7aWYoIW8pcmV0dXJuIG47dXM9dm9pZCAwO2NvbnN0IHM9e3ZhbHVlOm4saXNzdWVzOm51bGx9O3JldHVybiBvLnNldCh0LnZhbHVlLHMpLGRzLnB1c2gocyksbn0sZ3VhcmQoZSl7dmFyIHQ7KHQ9ZS5fem9kKS5kZWZlcnJlZD8/KHQuZGVmZXJyZWQ9W10pLGUuX3pvZC5kZWZlcnJlZC5wdXNoKCgpPT57Y29uc3Qgbj1lLl96b2QucGFyc2Usbz0ocyxyKT0+e2lmKHIuZGlyZWN0aW9uIT09ImJhY2t3YXJkIiYmb2YocixzLnZhbHVlKSl0aHJvdyBuZXcgZWY7cmV0dXJuIG4ocyxyKX07ZS5fem9kLnBhcnNlPW8sZS5fem9kLnJ1bj09PW4mJihlLl96b2QucnVuPW8pfSl9LGF0dGFjaChlKXt2YXIgdDtsZXQgbixvPSExLHMscjsodD1lLl96b2QpLmRlZmVycmVkPz8odC5kZWZlcnJlZD1bXSksZS5fem9kLmRlZmVycmVkLnB1c2goKCk9Pntjb25zdCBpPWUuX3pvZC5wYXJzZSxjPShoLGQpPT57aWYobj09PXZvaWQgMCl7Y29uc3QgRT1EbihlLG5ldyBTZXQsITEpO2lmKEU9PT1WdClyZXR1cm4gZS5fem9kLnBhcnNlPWksZS5fem9kLnJ1bj09PWMmJihlLl96b2QucnVuPWkpLGkoaCxkKTtFPT09cW58fG8/bj0hMDpvPSEwfWNvbnN0IHU9aC52YWx1ZTtpZighdGYodSkpcmV0dXJuIGkoaCxkKTtsZXQgcD1kW01hXTtwfHwocD17YnVja2V0czpuZXcgV2Vha01hcCxiYWNrRWRnZXM6dm9pZCAwfSxkW01hXT1wKTtsZXQgbTtzPT09ZD9tPXI6KG09cmsocCxlKSxzPWQscj1tKTtjb25zdCB5PW0uZ2V0KHUpO2lmKHkpcmV0dXJuIGgudmFsdWU9eS52YWx1ZSx5Lmlzc3Vlcz95Lmlzc3Vlcy5sZW5ndGgmJmguaXNzdWVzLnB1c2goLi4ud2EoeS5pc3N1ZXMpKTooaC5tZW1vPSEwLHAuYmFja0VkZ2VzPz8ocC5iYWNrRWRnZXM9bmV3IFdlYWtTZXQpLHAuYmFja0VkZ2VzLmFkZCh5LnZhbHVlKSksaDt1cz1tO2NvbnN0ICQ9ZHMubGVuZ3RoLFM9aShoLGQpO3VzPXZvaWQgMDtjb25zdCBOPWRzLmxlbmd0aD4kP2RzLnBvcCgpOnZvaWQgMDtyZXR1cm4gUyBpbnN0YW5jZW9mIFByb21pc2U/Uy50aGVuKEU9PihOJiYoTi5pc3N1ZXM9RS5pc3N1ZXMubGVuZ3RoP3dhKEUuaXNzdWVzKTpmZCksRSkpOihOJiYoTi5pc3N1ZXM9Uy5pc3N1ZXMubGVuZ3RoP3dhKFMuaXNzdWVzKTpmZCksUyl9O2UuX3pvZC5wYXJzZT1jLGUuX3pvZC5ydW49PT1pJiYoZS5fem9kLnJ1bj1jKX0pfX07ZnVuY3Rpb24gaXIoKXtyZXR1cm4gYWt9ZnVuY3Rpb24gb2YoZSx0KXtjb25zdCBuPWVbTWFdPy5iYWNrRWRnZXM7cmV0dXJuIG4hPT12b2lkIDAmJnRmKHQpJiZuLmhhcyh0KX1jb25zdCBpaz0oKT0+e2NvbnN0IGU9e3N0cmluZzp7dW5pdDoiY2hhcmFjdGVycyIsdmVyYjoidG8gaGF2ZSJ9LGZpbGU6e3VuaXQ6ImJ5dGVzIix2ZXJiOiJ0byBoYXZlIn0sYXJyYXk6e3VuaXQ6Iml0ZW1zIix2ZXJiOiJ0byBoYXZlIn0sc2V0Ont1bml0OiJpdGVtcyIsdmVyYjoidG8gaGF2ZSJ9LG1hcDp7dW5pdDoiZW50cmllcyIsdmVyYjoidG8gaGF2ZSJ9fTtmdW5jdGlvbiB0KHIpe3JldHVybiBlW3JdPz9udWxsfWNvbnN0IG49e3JlZ2V4OiJpbnB1dCIsZW1haWw6ImVtYWlsIGFkZHJlc3MiLHVybDoiVVJMIixlbW9qaToiZW1vamkiLHV1aWQ6IlVVSUQiLHV1aWR2NDoiVVVJRHY0Iix1dWlkdjY6IlVVSUR2NiIsbmFub2lkOiJuYW5vaWQiLGd1aWQ6IkdVSUQiLGN1aWQ6ImN1aWQiLGN1aWQyOiJjdWlkMiIsdWxpZDoiVUxJRCIseGlkOiJYSUQiLGtzdWlkOiJLU1VJRCIsZGF0ZXRpbWU6IklTTyBkYXRldGltZSIsZGF0ZToiSVNPIGRhdGUiLHRpbWU6IklTTyB0aW1lIixkdXJhdGlvbjoiSVNPIGR1cmF0aW9uIixpcHY0OiJJUHY0IGFkZHJlc3MiLGlwdjY6IklQdjYgYWRkcmVzcyIsbWFjOiJNQUMgYWRkcmVzcyIsY2lkcnY0OiJJUHY0IHJhbmdlIixjaWRydjY6IklQdjYgcmFuZ2UiLGJhc2U2NDoiYmFzZTY0LWVuY29kZWQgc3RyaW5nIixiYXNlNjR1cmw6ImJhc2U2NHVybC1lbmNvZGVkIHN0cmluZyIsanNvbl9zdHJpbmc6IkpTT04gc3RyaW5nIixlMTY0OiJFLjE2NCBudW1iZXIiLGN1cnJlbmN5X2NvZGU6ImN1cnJlbmN5IGNvZGUiLGNyZWRpdF9jYXJkOiJjcmVkaXQgY2FyZCBudW1iZXIiLGliYW46IklCQU4iLGp3dDoiSldUIix0ZW1wbGF0ZV9saXRlcmFsOiJpbnB1dCJ9LG89e25hbjoiTmFOIn07ZnVuY3Rpb24gcyhyLGkpe3JldHVybiByPT09Im51bWJlciImJnR5cGVvZiBpPT0ibnVtYmVyIiYmIU51bWJlci5pc0Zpbml0ZShpKT9TdHJpbmcoaSk6b1tyXT8/cn1yZXR1cm4gcj0+e3N3aXRjaChyLmNvZGUpe2Nhc2UiaW52YWxpZF90eXBlIjp7Y29uc3QgaT1zKHIuZXhwZWN0ZWQpLGM9Ymgoci5pbnB1dCksaD1zKGMsci5pbnB1dCk7cmV0dXJuYEludmFsaWQgaW5wdXQ6IGV4cGVjdGVkICR7aX0sIHJlY2VpdmVkICR7aH1gfWNhc2UiaW52YWxpZF92YWx1ZSI6cmV0dXJuIHIudmFsdWVzLmxlbmd0aD09PTE/YEludmFsaWQgaW5wdXQ6IGV4cGVjdGVkICR7Y2koci52YWx1ZXNbMF0pfWA6YEludmFsaWQgb3B0aW9uOiBleHBlY3RlZCBvbmUgb2YgJHtDYShyLnZhbHVlcywifCIpfWA7Y2FzZSJ0b29fYmlnIjp7Y29uc3QgaT1yLmV4YWN0PyJleGFjdGx5ICI6ci5pbmNsdXNpdmU/Ijw9IjoiPCIsYz10KHIub3JpZ2luKTtyZXR1cm4gYz9gVG9vIGJpZzogZXhwZWN0ZWQgJHtyLm9yaWdpbj8/InZhbHVlIn0gdG8gaGF2ZSAke2l9JHtyLm1heGltdW0udG9TdHJpbmcoKX0gJHtjLnVuaXQ/PyJlbGVtZW50cyJ9YDpgVG9vIGJpZzogZXhwZWN0ZWQgJHtyLm9yaWdpbj8/InZhbHVlIn0gdG8gYmUgJHtpfSR7ci5tYXhpbXVtLnRvU3RyaW5nKCl9YH1jYXNlInRvb19zbWFsbCI6e2NvbnN0IGk9ci5leGFjdD8iZXhhY3RseSAiOnIuaW5jbHVzaXZlPyI+PSI6Ij4iLGM9dChyLm9yaWdpbik7cmV0dXJuIGM/YFRvbyBzbWFsbDogZXhwZWN0ZWQgJHtyLm9yaWdpbn0gdG8gaGF2ZSAke2l9JHtyLm1pbmltdW0udG9TdHJpbmcoKX0gJHtjLnVuaXR9YDpgVG9vIHNtYWxsOiBleHBlY3RlZCAke3Iub3JpZ2lufSB0byBiZSAke2l9JHtyLm1pbmltdW0udG9TdHJpbmcoKX1gfWNhc2UiaW52YWxpZF9mb3JtYXQiOntjb25zdCBpPXI7cmV0dXJuIGkuZm9ybWF0PT09InN0YXJ0c193aXRoIj9gSW52YWxpZCBzdHJpbmc6IG11c3Qgc3RhcnQgd2l0aCAiJHtpLnByZWZpeH0iYDppLmZvcm1hdD09PSJlbmRzX3dpdGgiP2BJbnZhbGlkIHN0cmluZzogbXVzdCBlbmQgd2l0aCAiJHtpLnN1ZmZpeH0iYDppLmZvcm1hdD09PSJpbmNsdWRlcyI/YEludmFsaWQgc3RyaW5nOiBtdXN0IGluY2x1ZGUgIiR7aS5pbmNsdWRlc30iYDppLmZvcm1hdD09PSJyZWdleCI/YEludmFsaWQgc3RyaW5nOiBtdXN0IG1hdGNoIHBhdHRlcm4gJHtpLnBhdHRlcm59YDpgSW52YWxpZCAke25baS5mb3JtYXRdPz9yLmZvcm1hdH1gfWNhc2Uibm90X211bHRpcGxlX29mIjpyZXR1cm5gSW52YWxpZCBudW1iZXI6IG11c3QgYmUgYSBtdWx0aXBsZSBvZiAke3IuZGl2aXNvcn1gO2Nhc2UidW5yZWNvZ25pemVkX2tleXMiOnJldHVybmBVbnJlY29nbml6ZWQga2V5JHtyLmtleXMubGVuZ3RoPjE/InMiOiIifTogJHtDYShyLmtleXMsIiwgIil9YDtjYXNlImludmFsaWRfa2V5IjpyZXR1cm5gSW52YWxpZCBrZXkgaW4gJHtyLm9yaWdpbn1gO2Nhc2UiaW52YWxpZF91bmlvbiI6cmV0dXJuIHIub3B0aW9ucyYmQXJyYXkuaXNBcnJheShyLm9wdGlvbnMpJiZyLm9wdGlvbnMubGVuZ3RoPjA/YEludmFsaWQgZGlzY3JpbWluYXRvciB2YWx1ZS4gRXhwZWN0ZWQgJHtyLm9wdGlvbnMubWFwKGM9PmAnJHtjfSdgKS5qb2luKCIgfCAiKX1gOnIuaW5jbHVzaXZlPT09ITE/IkludmFsaWQgaW5wdXQ6IG1vcmUgdGhhbiBvbmUgb3B0aW9uIG1hdGNoZWQiOiJJbnZhbGlkIGlucHV0IjtjYXNlImludmFsaWRfZWxlbWVudCI6cmV0dXJuYEludmFsaWQgdmFsdWUgaW4gJHtyLm9yaWdpbn1gO2RlZmF1bHQ6cmV0dXJuIkludmFsaWQgaW5wdXQifX19O2Z1bmN0aW9uIHNmKCl7cmV0dXJue2xvY2FsZUVycm9yOmlrKCl9fWNvbnN0IFVpPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCxlbjpzZn0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKTt2YXIgZ2Q7Y29uc3QgVmk9U3ltYm9sKCJab2RPdXRwdXQiKSxXaT1TeW1ib2woIlpvZElucHV0Iik7Y2xhc3MgcmZ7Y29uc3RydWN0b3IoKXt0aGlzLl9tYXA9bmV3IFdlYWtNYXAsdGhpcy5faWRtYXA9bmV3IE1hcH1hZGQodCwuLi5uKXtjb25zdCBvPW5bMF07cmV0dXJuIHRoaXMuX21hcC5zZXQodCxvKSxvJiZ0eXBlb2Ygbz09Im9iamVjdCImJiJpZCJpbiBvJiZ0aGlzLl9pZG1hcC5zZXQoby5pZCx0KSx0aGlzfWNsZWFyKCl7cmV0dXJuIHRoaXMuX21hcD1uZXcgV2Vha01hcCx0aGlzLl9pZG1hcD1uZXcgTWFwLHRoaXN9cmVtb3ZlKHQpe2NvbnN0IG49dGhpcy5fbWFwLmdldCh0KTtyZXR1cm4gbiYmdHlwZW9mIG49PSJvYmplY3QiJiYiaWQiaW4gbiYmdGhpcy5faWRtYXAuZGVsZXRlKG4uaWQpLHRoaXMuX21hcC5kZWxldGUodCksdGhpc31nZXQodCl7Y29uc3Qgbj10Ll96b2QucGFyZW50O2lmKG4pe2NvbnN0IG89ey4uLnRoaXMuZ2V0KG4pPz97fX07ZGVsZXRlIG8uaWQ7Y29uc3Qgcz17Li4ubywuLi50aGlzLl9tYXAuZ2V0KHQpfTtyZXR1cm4gT2JqZWN0LmtleXMocykubGVuZ3RoP3M6dm9pZCAwfXJldHVybiB0aGlzLl9tYXAuZ2V0KHQpfWhhcyh0KXtyZXR1cm4gdGhpcy5fbWFwLmhhcyh0KX19ZnVuY3Rpb24gY3IoKXtyZXR1cm4gbmV3IHJmfShnZD1nbG9iYWxUaGlzKS5fX3pvZF9nbG9iYWxSZWdpc3RyeT8/KGdkLl9fem9kX2dsb2JhbFJlZ2lzdHJ5PWNyKCkpO2NvbnN0IExlPWdsb2JhbFRoaXMuX196b2RfZ2xvYmFsUmVnaXN0cnksS2k9KCk9Pnt0aHJvdyBuZXcgRXJyb3IoInpvZCBjb21waWxlKCkgaXMgbm90IGJ1bmRsZWQgaW50byBjYXJkcyAtIHNlZSBwYWNrYWdlcy9pbnRlcm5hbC9jYXJkLWtpdC92aXRlLXNsaW0ubWpzIil9O2NsYXNzIEdpIGV4dGVuZHMgRXJyb3J7fWNsYXNzIEppIGV4dGVuZHMgRXJyb3J7fWNsYXNzIFlpIGV4dGVuZHMgRXJyb3J7fWNvbnN0IFFpPUtpLFhpPUtpLGNrPUtpO2Z1bmN0aW9uIGxyKGUpe3JldHVybiBlLmNoZWNrcyYmKGUuY2hlY2tzPVsuLi5lLmNoZWNrc10pLGV9ZnVuY3Rpb24gYWYoZSx0KXtyZXR1cm4gbmV3IGUobHIoe3R5cGU6InN0cmluZyIsLi4udyh0KX0pKX1mdW5jdGlvbiBjZihlLHQpe3JldHVybiBuZXcgZShscih7dHlwZToic3RyaW5nIixjb2VyY2U6ITAsLi4udyh0KX0pKX1mdW5jdGlvbiBlYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImVtYWlsIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIHRjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiZ3VpZCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBuYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6InV1aWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gb2MoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJ1dWlkIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsdmVyc2lvbjoidjQiLC4uLncodCl9KX1mdW5jdGlvbiBzYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6InV1aWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSx2ZXJzaW9uOiJ2NiIsLi4udyh0KX0pfWZ1bmN0aW9uIHJjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoidXVpZCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLHZlcnNpb246InY3IiwuLi53KHQpfSl9ZnVuY3Rpb24gdXIoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJ1cmwiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gYWMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJlbW9qaSIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBpYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6Im5hbm9pZCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBjYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImN1aWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gbGMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJjdWlkMiIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiB1YyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6InVsaWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gZGMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJ4aWQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gaGMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJrc3VpZCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiBwYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImlwdjQiLGNoZWNrOiJzdHJpbmdfZm9ybWF0IixhYm9ydDohMSwuLi53KHQpfSl9ZnVuY3Rpb24gbWMoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJpcHY2IixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGxmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoibWFjIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGZjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiY2lkcnY0IixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGdjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiY2lkcnY2IixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGJjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiYmFzZTY0IixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIHZjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiYmFzZTY0dXJsIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGtjKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiZTE2NCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiB1ZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImNyZWRpdF9jYXJkIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsYWJvcnQ6ITEsLi4udyh0KX0pfWZ1bmN0aW9uIGRmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoiaWJhbiIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1mdW5jdGlvbiB5YyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6Imp3dCIsY2hlY2s6InN0cmluZ19mb3JtYXQiLGFib3J0OiExLC4uLncodCl9KX1jb25zdCAkYz17QW55Om51bGwsTWludXRlOi0xLFNlY29uZDowLE1pbGxpc2Vjb25kOjMsTWljcm9zZWNvbmQ6Nn07ZnVuY3Rpb24gd2MoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJkYXRldGltZSIsY2hlY2s6InN0cmluZ19mb3JtYXQiLG9mZnNldDohMSxsb2NhbDohMSxwcmVjaXNpb246bnVsbCwuLi53KHQpfSl9ZnVuY3Rpb24gU2MoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InN0cmluZyIsZm9ybWF0OiJkYXRlIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsLi4udyh0KX0pfWZ1bmN0aW9uIF9jKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdHJpbmciLGZvcm1hdDoidGltZSIsY2hlY2s6InN0cmluZ19mb3JtYXQiLHByZWNpc2lvbjpudWxsLC4uLncodCl9KX1mdW5jdGlvbiBqYyhlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3RyaW5nIixmb3JtYXQ6ImR1cmF0aW9uIixjaGVjazoic3RyaW5nX2Zvcm1hdCIsLi4udyh0KX0pfWZ1bmN0aW9uIGhmKGUsdCl7cmV0dXJuIG5ldyBlKGxyKHt0eXBlOiJudW1iZXIiLGNoZWNrczpbXSwuLi53KHQpfSkpfWZ1bmN0aW9uIHBmKGUsdCl7cmV0dXJuIG5ldyBlKGxyKHt0eXBlOiJudW1iZXIiLGNvZXJjZTohMCxjaGVja3M6W10sLi4udyh0KX0pKX1mdW5jdGlvbiBtZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToibnVtYmVyIixjaGVjazoibnVtYmVyX2Zvcm1hdCIsYWJvcnQ6ITEsZm9ybWF0OiJzYWZlaW50IiwuLi53KHQpfSl9ZnVuY3Rpb24gZmYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6Im51bWJlciIsY2hlY2s6Im51bWJlcl9mb3JtYXQiLGFib3J0OiExLGZvcm1hdDoiZmxvYXQzMiIsLi4udyh0KX0pfWZ1bmN0aW9uIGdmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJudW1iZXIiLGNoZWNrOiJudW1iZXJfZm9ybWF0IixhYm9ydDohMSxmb3JtYXQ6ImZsb2F0NjQiLC4uLncodCl9KX1mdW5jdGlvbiBiZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToibnVtYmVyIixjaGVjazoibnVtYmVyX2Zvcm1hdCIsYWJvcnQ6ITEsZm9ybWF0OiJpbnQzMiIsLi4udyh0KX0pfWZ1bmN0aW9uIHZmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJudW1iZXIiLGNoZWNrOiJudW1iZXJfZm9ybWF0IixhYm9ydDohMSxmb3JtYXQ6InVpbnQzMiIsLi4udyh0KX0pfWZ1bmN0aW9uIGtmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJib29sZWFuIiwuLi53KHQpfSl9ZnVuY3Rpb24geWYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6ImJvb2xlYW4iLGNvZXJjZTohMCwuLi53KHQpfSl9ZnVuY3Rpb24gJGYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6ImJpZ2ludCIsLi4udyh0KX0pfWZ1bmN0aW9uIHdmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJiaWdpbnQiLGNvZXJjZTohMCwuLi53KHQpfSl9ZnVuY3Rpb24gU2YoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6ImJpZ2ludCIsY2hlY2s6ImJpZ2ludF9mb3JtYXQiLGFib3J0OiExLGZvcm1hdDoiaW50NjQiLC4uLncodCl9KX1mdW5jdGlvbiBfZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToiYmlnaW50IixjaGVjazoiYmlnaW50X2Zvcm1hdCIsYWJvcnQ6ITEsZm9ybWF0OiJ1aW50NjQiLC4uLncodCl9KX1mdW5jdGlvbiBqZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToic3ltYm9sIiwuLi53KHQpfSl9ZnVuY3Rpb24gVGYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InVuZGVmaW5lZCIsLi4udyh0KX0pfWZ1bmN0aW9uIEFmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJudWxsIiwuLi53KHQpfSl9ZnVuY3Rpb24gemYoZSl7cmV0dXJuIG5ldyBlKHt0eXBlOiJhbnkifSl9ZnVuY3Rpb24gQ2YoZSl7cmV0dXJuIG5ldyBlKHt0eXBlOiJ1bmtub3duIn0pfWZ1bmN0aW9uIE5mKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJuZXZlciIsLi4udyh0KX0pfWZ1bmN0aW9uIFBmKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJ2b2lkIiwuLi53KHQpfSl9ZnVuY3Rpb24geGYoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6ImRhdGUiLC4uLncodCl9KX1mdW5jdGlvbiBJZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToiZGF0ZSIsY29lcmNlOiEwLC4uLncodCl9KX1mdW5jdGlvbiBFZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToibmFuIiwuLi53KHQpfSl9ZnVuY3Rpb24gaXQoZSx0KXtyZXR1cm4gbmV3IHppKHtjaGVjazoibGVzc190aGFuIiwuLi53KHQpLHZhbHVlOmUsaW5jbHVzaXZlOiExfSl9ZnVuY3Rpb24gRWUoZSx0KXtyZXR1cm4gbmV3IHppKHtjaGVjazoibGVzc190aGFuIiwuLi53KHQpLHZhbHVlOmUsaW5jbHVzaXZlOiEwfSl9ZnVuY3Rpb24gY3QoZSx0KXtyZXR1cm4gbmV3IENpKHtjaGVjazoiZ3JlYXRlcl90aGFuIiwuLi53KHQpLHZhbHVlOmUsaW5jbHVzaXZlOiExfSl9ZnVuY3Rpb24gUmUoZSx0KXtyZXR1cm4gbmV3IENpKHtjaGVjazoiZ3JlYXRlcl90aGFuIiwuLi53KHQpLHZhbHVlOmUsaW5jbHVzaXZlOiEwfSl9ZnVuY3Rpb24gZHIoZSl7cmV0dXJuIGN0KDAsZSl9ZnVuY3Rpb24gaHIoZSl7cmV0dXJuIGl0KDAsZSl9ZnVuY3Rpb24gcHIoZSl7cmV0dXJuIEVlKDAsZSl9ZnVuY3Rpb24gbXIoZSl7cmV0dXJuIFJlKDAsZSl9ZnVuY3Rpb24gUHQoZSx0KXtyZXR1cm4gbmV3IGxwKHtjaGVjazoibXVsdGlwbGVfb2YiLC4uLncodCksdmFsdWU6ZX0pfWZ1bmN0aW9uIEJ0KGUsdCl7cmV0dXJuIG5ldyBocCh7Y2hlY2s6Im1heF9zaXplIiwuLi53KHQpLG1heGltdW06ZX0pfWZ1bmN0aW9uIGx0KGUsdCl7cmV0dXJuIG5ldyBwcCh7Y2hlY2s6Im1pbl9zaXplIiwuLi53KHQpLG1pbmltdW06ZX0pfWZ1bmN0aW9uIGRuKGUsdCl7cmV0dXJuIG5ldyBtcCh7Y2hlY2s6InNpemVfZXF1YWxzIiwuLi53KHQpLHNpemU6ZX0pfWZ1bmN0aW9uIGhuKGUsdCl7cmV0dXJuIG5ldyBmcCh7Y2hlY2s6Im1heF9sZW5ndGgiLC4uLncodCksbWF4aW11bTplfSl9ZnVuY3Rpb24geXQoZSx0KXtyZXR1cm4gbmV3IGdwKHtjaGVjazoibWluX2xlbmd0aCIsLi4udyh0KSxtaW5pbXVtOmV9KX1mdW5jdGlvbiBwbihlLHQpe3JldHVybiBuZXcgYnAoe2NoZWNrOiJsZW5ndGhfZXF1YWxzIiwuLi53KHQpLGxlbmd0aDplfSl9ZnVuY3Rpb24gbG8oZSx0KXtyZXR1cm4gbmV3IHZwKHtjaGVjazoic3RyaW5nX2Zvcm1hdCIsZm9ybWF0OiJyZWdleCIsLi4udyh0KSxwYXR0ZXJuOmV9KX1mdW5jdGlvbiB1byhlKXtyZXR1cm4gbmV3IGtwKHtjaGVjazoic3RyaW5nX2Zvcm1hdCIsZm9ybWF0OiJsb3dlcmNhc2UiLC4uLncoZSl9KX1mdW5jdGlvbiBobyhlKXtyZXR1cm4gbmV3IHlwKHtjaGVjazoic3RyaW5nX2Zvcm1hdCIsZm9ybWF0OiJ1cHBlcmNhc2UiLC4uLncoZSl9KX1mdW5jdGlvbiBwbyhlLHQpe3JldHVybiBuZXcgJHAoe2NoZWNrOiJzdHJpbmdfZm9ybWF0Iixmb3JtYXQ6ImluY2x1ZGVzIiwuLi53KHQpLGluY2x1ZGVzOmV9KX1mdW5jdGlvbiBtbyhlLHQpe3JldHVybiBuZXcgd3Aoe2NoZWNrOiJzdHJpbmdfZm9ybWF0Iixmb3JtYXQ6InN0YXJ0c193aXRoIiwuLi53KHQpLHByZWZpeDplfSl9ZnVuY3Rpb24gZm8oZSx0KXtyZXR1cm4gbmV3IFNwKHtjaGVjazoic3RyaW5nX2Zvcm1hdCIsZm9ybWF0OiJlbmRzX3dpdGgiLC4uLncodCksc3VmZml4OmV9KX1mdW5jdGlvbiBmcihlLHQsbil7cmV0dXJuIG5ldyBfcCh7Y2hlY2s6InByb3BlcnR5Iixwcm9wZXJ0eTplLHNjaGVtYTp0LC4uLncobil9KX1mdW5jdGlvbiBnbyhlLHQpe3JldHVybiBuZXcganAoe2NoZWNrOiJwcm9wZXJ0aWVzIixzaGFwZTplLC4uLncodCl9KX1mdW5jdGlvbiBibyhlLHQpe3JldHVybiBuZXcgVHAoe2NoZWNrOiJtaW1lX3R5cGUiLG1pbWU6ZSwuLi53KHQpfSl9ZnVuY3Rpb24gZXQoZSl7cmV0dXJuIG5ldyBBcCh7Y2hlY2s6Im92ZXJ3cml0ZSIsdHg6ZX0pfWZ1bmN0aW9uIHZvKGUpe3JldHVybiBldCh0PT50Lm5vcm1hbGl6ZShlKSl9ZnVuY3Rpb24ga28oKXtyZXR1cm4gZXQoZT0+ZS50cmltKCkpfWZ1bmN0aW9uIHlvKCl7cmV0dXJuIGV0KGU9PmUudG9Mb3dlckNhc2UoKSl9ZnVuY3Rpb24gJG8oKXtyZXR1cm4gZXQoZT0+ZS50b1VwcGVyQ2FzZSgpKX1mdW5jdGlvbiB3bygpe3JldHVybiBldChlPT5vaChlKSl9ZnVuY3Rpb24gUmYoZSx0LG4pe3JldHVybiBuZXcgZSh7dHlwZToiYXJyYXkiLGVsZW1lbnQ6dCwuLi53KG4pfSl9ZnVuY3Rpb24gbGsoZSx0LG4pe3JldHVybiBuZXcgZSh7dHlwZToidW5pb24iLG9wdGlvbnM6dCwuLi53KG4pfSl9ZnVuY3Rpb24gdWsoZSx0LG4pe3JldHVybiBuZXcgZSh7dHlwZToidW5pb24iLG9wdGlvbnM6dCxpbmNsdXNpdmU6ITEsLi4udyhuKX0pfWZ1bmN0aW9uIGRrKGUsdCxuLG8pe3JldHVybiBuZXcgZSh7dHlwZToidW5pb24iLG9wdGlvbnM6bixkaXNjcmltaW5hdG9yOnQsLi4udyhvKX0pfWZ1bmN0aW9uIGhrKGUsdCxuKXtyZXR1cm4gbmV3IGUoe3R5cGU6ImludGVyc2VjdGlvbiIsbGVmdDp0LHJpZ2h0Om59KX1mdW5jdGlvbiBwayhlLHQsbixvKXtjb25zdCBzPW4gaW5zdGFuY2VvZiBELHI9cz9vOm4saT1zP246bnVsbDtyZXR1cm4gbmV3IGUoe3R5cGU6InR1cGxlIixpdGVtczp0LHJlc3Q6aSwuLi53KHIpfSl9ZnVuY3Rpb24gbWsoZSx0LG4sbyl7cmV0dXJuIG5ldyBlKHt0eXBlOiJyZWNvcmQiLGtleVR5cGU6dCx2YWx1ZVR5cGU6biwuLi53KG8pfSl9ZnVuY3Rpb24gZmsoZSx0LG4sbyl7cmV0dXJuIG5ldyBlKHt0eXBlOiJtYXAiLGtleVR5cGU6dCx2YWx1ZVR5cGU6biwuLi53KG8pfSl9ZnVuY3Rpb24gZ2soZSx0LG4pe3JldHVybiBuZXcgZSh7dHlwZToic2V0Iix2YWx1ZVR5cGU6dCwuLi53KG4pfSl9ZnVuY3Rpb24gYmsoZSx0LG4pe2NvbnN0IG89QXJyYXkuaXNBcnJheSh0KT9PYmplY3QuZnJvbUVudHJpZXModC5tYXAocz0+W3Msc10pKTp0O3JldHVybiBuZXcgZSh7dHlwZToiZW51bSIsZW50cmllczpvLC4uLncobil9KX1mdW5jdGlvbiB2ayhlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJlbnVtIixlbnRyaWVzOnQsLi4udyhuKX0pfWZ1bmN0aW9uIGtrKGUsdCxuKXtyZXR1cm4gbmV3IGUoe3R5cGU6ImxpdGVyYWwiLHZhbHVlczpBcnJheS5pc0FycmF5KHQpP3Q6W3RdLC4uLncobil9KX1mdW5jdGlvbiBPZihlLHQpe3JldHVybiBuZXcgZSh7dHlwZToiZmlsZSIsLi4udyh0KX0pfWZ1bmN0aW9uIHlrKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJ0cmFuc2Zvcm0iLHRyYW5zZm9ybTp0fSl9ZnVuY3Rpb24gJGsoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6Im9wdGlvbmFsIixpbm5lclR5cGU6dH0pfWZ1bmN0aW9uIHdrKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJudWxsYWJsZSIsaW5uZXJUeXBlOnR9KX1mdW5jdGlvbiBTayhlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJkZWZhdWx0Iixpbm5lclR5cGU6dCxnZXQgZGVmYXVsdFZhbHVlKCl7cmV0dXJuIHR5cGVvZiBuPT0iZnVuY3Rpb24iP24oKTpWcyhuKX19KX1mdW5jdGlvbiBfayhlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJub25vcHRpb25hbCIsaW5uZXJUeXBlOnQsLi4udyhuKX0pfWZ1bmN0aW9uIGprKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJzdWNjZXNzIixpbm5lclR5cGU6dH0pfWZ1bmN0aW9uIFRrKGUsdCxuKXtyZXR1cm4gbmV3IGUoe3R5cGU6ImNhdGNoIixpbm5lclR5cGU6dCxjYXRjaFZhbHVlOnR5cGVvZiBuPT0iZnVuY3Rpb24iP246bGkobil9KX1mdW5jdGlvbiBBayhlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJwaXBlIixpbjp0LG91dDpufSl9ZnVuY3Rpb24gemsoZSx0KXtyZXR1cm4gbmV3IGUoe3R5cGU6InJlYWRvbmx5Iixpbm5lclR5cGU6dH0pfWZ1bmN0aW9uIENrKGUsdCxuKXtyZXR1cm4gbmV3IGUoe3R5cGU6InRlbXBsYXRlX2xpdGVyYWwiLHBhcnRzOnQsLi4udyhuKX0pfWZ1bmN0aW9uIE5rKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJsYXp5IixnZXR0ZXI6dH0pfWZ1bmN0aW9uIFBrKGUsdCl7cmV0dXJuIG5ldyBlKHt0eXBlOiJwcm9taXNlIixpbm5lclR5cGU6dH0pfWZ1bmN0aW9uIE1mKGUsdCxuKXtjb25zdCBvPXcobik7cmV0dXJuIG8uYWJvcnQ/PyhvLmFib3J0PSEwKSxuZXcgZSh7dHlwZToiY3VzdG9tIixjaGVjazoiY3VzdG9tIixmbjp0LC4uLm99KX1mdW5jdGlvbiBaZihlLHQsbil7cmV0dXJuIG5ldyBlKHt0eXBlOiJjdXN0b20iLGNoZWNrOiJjdXN0b20iLGZuOnQsLi4udyhuKX0pfWZ1bmN0aW9uIHFmKGUsdCl7Y29uc3Qgbj1EZihvPT4oby5hZGRJc3N1ZT1zPT57aWYodHlwZW9mIHM9PSJzdHJpbmciKW8uaXNzdWVzLnB1c2godG4ocyxvLnZhbHVlLG4uX3pvZC5kZWYpKTtlbHNle2NvbnN0IHI9cztyLmZhdGFsJiYoci5jb250aW51ZT0hMSksci5jb2RlPz8oci5jb2RlPSJjdXN0b20iKSwiaW5wdXQiaW4gcnx8KHIuaW5wdXQ9by52YWx1ZSksci5pbnN0Pz8oci5pbnN0PW4pLHIuY29udGludWU/PyhyLmNvbnRpbnVlPSFuLl96b2QuZGVmLmFib3J0KSxvLmlzc3Vlcy5wdXNoKHRuKHIpKX19LGUoby52YWx1ZSxvKSksdCk7cmV0dXJuIG59ZnVuY3Rpb24gRGYoZSx0KXtjb25zdCBuPW5ldyBjZSh7Y2hlY2s6ImN1c3RvbSIsLi4udyh0KX0pO3JldHVybiBuLl96b2QuY2hlY2s9ZSxufWZ1bmN0aW9uIExmKGUpe2NvbnN0IHQ9bmV3IGNlKHtjaGVjazoiZGVzY3JpYmUifSk7cmV0dXJuIHQuX3pvZC5vbmF0dGFjaD1bbj0+e2NvbnN0IG89TGUuZ2V0KG4pPz97fTtMZS5hZGQobix7Li4ubyxkZXNjcmlwdGlvbjplfSl9XSx0Ll96b2QuY2hlY2s9KCk9Pnt9LHR9ZnVuY3Rpb24gQmYoZSl7Y29uc3QgdD1uZXcgY2Uoe2NoZWNrOiJtZXRhIn0pO3JldHVybiB0Ll96b2Qub25hdHRhY2g9W249Pntjb25zdCBvPUxlLmdldChuKT8/e307TGUuYWRkKG4sey4uLm8sLi4uZX0pfV0sdC5fem9kLmNoZWNrPSgpPT57fSx0fWZ1bmN0aW9uIEhmKGUsdCl7Y29uc3Qgbj13KHQpO2xldCBvPW4udHJ1dGh5Pz9bInRydWUiLCIxIiwieWVzIiwib24iLCJ5IiwiZW5hYmxlZCJdLHM9bi5mYWxzeT8/WyJmYWxzZSIsIjAiLCJubyIsIm9mZiIsIm4iLCJkaXNhYmxlZCJdO24uY2FzZSE9PSJzZW5zaXRpdmUiJiYobz1vLm1hcCh5PT50eXBlb2YgeT09InN0cmluZyI/eS50b0xvd2VyQ2FzZSgpOnkpLHM9cy5tYXAoeT0+dHlwZW9mIHk9PSJzdHJpbmciP3kudG9Mb3dlckNhc2UoKTp5KSk7Y29uc3Qgcj1uZXcgU2V0KG8pLGk9bmV3IFNldChzKSxjPWUuQ29kZWM/P0hpLGg9ZS5Cb29sZWFuPz9NaSxkPWUuU3RyaW5nPz9jbyx1PW5ldyBkKHt0eXBlOiJzdHJpbmciLGVycm9yOm4uZXJyb3J9KSxwPW5ldyBoKHt0eXBlOiJib29sZWFuIixlcnJvcjpuLmVycm9yfSksbT1uZXcgYyh7dHlwZToicGlwZSIsaW46dSxvdXQ6cCx0cmFuc2Zvcm06KCh5LCQpPT57bGV0IFM9eTtyZXR1cm4gbi5jYXNlIT09InNlbnNpdGl2ZSImJihTPVMudG9Mb3dlckNhc2UoKSksci5oYXMoUyk/ITA6aS5oYXMoUyk/ITE6KCQuaXNzdWVzLnB1c2goe2NvZGU6ImludmFsaWRfdmFsdWUiLGV4cGVjdGVkOiJzdHJpbmdib29sIix2YWx1ZXM6Wy4uLnIsLi4uaV0saW5wdXQ6JC52YWx1ZSxpbnN0Om0sY29udGludWU6ITF9KSx7fSl9KSxyZXZlcnNlVHJhbnNmb3JtOigoeSwkKT0+eT09PSEwP29bMF18fCJ0cnVlIjpzWzBdfHwiZmFsc2UiKSxlcnJvcjpuLmVycm9yfSk7cmV0dXJuIG0uX3pvZC5iYWcudHJ1dGh5PW8sbS5fem9kLmJhZy5mYWxzeT1zLG0uX3pvZC5iYWcuY2FzZT1uLmNhc2U/PyJpbnNlbnNpdGl2ZSIsbX1mdW5jdGlvbiBtbihlLHQsbixvPXt9KXtjb25zdCBzPXcobykscj17Y2hlY2s6InN0cmluZ19mb3JtYXQiLHR5cGU6InN0cmluZyIsZm9ybWF0OnQsZm46dHlwZW9mIG49PSJmdW5jdGlvbiI/bjpjPT5uLnRlc3QoYyksLi4uc307cmV0dXJuIG4gaW5zdGFuY2VvZiBSZWdFeHAmJihyLnBhdHRlcm49biksbmV3IGUocil9Y29uc3QgeGs9KCk9Pih7fSksSWs9KCk9Pih7fSksRWs9KCk9Pih7fSksUms9KCk9Pih7fSksT2s9KCk9Pih7fSksRmY9KCk9PigpPT4oe30pLFphPSgpPT4oKT0+KHt9KSxNaz0oKT0+KHt9KSxCZT0oKT0+KHt9KSxaaz0oKT0+KHt9KSxxaz0oKT0+KHt9KSxEaz0oKT0+KHt9KSxMaz0oKT0+KHt9KSxCaz0oKT0+KHt9KSxIaz0oKT0+KHt9KSxGaz0oKT0+KHt9KSxVaz0oKT0+KHt9KSxWaz0oKT0+KHt9KSxXaz0oKT0+KHt9KSxLaz0oKT0+KHt9KSxHaz0oKT0+KHt9KSxKaz0oKT0+KHt9KSxZaz0oKT0+KHt9KSxRaz0oKT0+KHt9KSxYaz0oKT0+KHt9KSxleT0oKT0+KHt9KSx0eT0oKT0+KHt9KSxueT0oKT0+KHt9KSxveT0oKT0+KHt9KSxzeT0oKT0+KHt9KSxyeT0oKT0+KHt9KSxheT0oKT0+KHt9KSxpeT0oKT0+KHt9KSxjeT0oKT0+KHt9KSxVZj0oKT0+KHt9KSxseT0oKT0+KHt9KSx1eT0oKT0+KHt9KSxkeT0oKT0+KHt9KSxoeT0oKT0+KHt9KSxweT0oKT0+KHt9KSxteT0oKT0+KHt9KSxmeT0oKT0+KHt9KSxneT0oKT0+KHt9KSxieT0oKT0+KHt9KSx2eT0oKT0+KHt9KSxreT0oKT0+KHt9KSxWZj0oKT0+KHt9KSx5eT0oKT0+KHt9KSxUYz0oKT0+KHt9KTtjbGFzcyAkeXt9Y29uc3Qgd3k9T2JqZWN0LmZyZWV6ZShPYmplY3QuZGVmaW5lUHJvcGVydHkoe19fcHJvdG9fXzpudWxsfSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSkpLFdmPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCwkWm9kQW55OmttLCRab2RBcnJheTpfbSwkWm9kQXN5bmNFcnJvcjpidCwkWm9kQmFzZTY0Om9tLCRab2RCYXNlNjRVUkw6cm0sJFpvZEJpZ0ludDpaaSwkWm9kQmlnSW50Rm9ybWF0OmZtLCRab2RCb29sZWFuOk1pLCRab2RDSURSdjQ6WHAsJFpvZENJRFJ2Njp0bSwkWm9kQ1VJRDpMcCwkWm9kQ1VJRDI6QnAsJFpvZENhdGNoOlZtLCRab2RDaGVjazpjZSwkWm9kQ2hlY2tCaWdJbnRGb3JtYXQ6ZHAsJFpvZENoZWNrRW5kc1dpdGg6U3AsJFpvZENoZWNrR3JlYXRlclRoYW46Q2ksJFpvZENoZWNrSW5jbHVkZXM6JHAsJFpvZENoZWNrTGVuZ3RoRXF1YWxzOmJwLCRab2RDaGVja0xlc3NUaGFuOnppLCRab2RDaGVja0xvd2VyQ2FzZTprcCwkWm9kQ2hlY2tNYXhMZW5ndGg6ZnAsJFpvZENoZWNrTWF4U2l6ZTpocCwkWm9kQ2hlY2tNaW1lVHlwZTpUcCwkWm9kQ2hlY2tNaW5MZW5ndGg6Z3AsJFpvZENoZWNrTWluU2l6ZTpwcCwkWm9kQ2hlY2tNdWx0aXBsZU9mOmxwLCRab2RDaGVja051bWJlckZvcm1hdDp1cCwkWm9kQ2hlY2tPdmVyd3JpdGU6QXAsJFpvZENoZWNrUHJvcGVydGllczpqcCwkWm9kQ2hlY2tQcm9wZXJ0eTpfcCwkWm9kQ2hlY2tSZWdleDp2cCwkWm9kQ2hlY2tTaXplRXF1YWxzOm1wLCRab2RDaGVja1N0YXJ0c1dpdGg6d3AsJFpvZENoZWNrU3RyaW5nRm9ybWF0OmlvLCRab2RDaGVja1VwcGVyQ2FzZTp5cCwkWm9kQ29kZWM6SGksJFpvZENyZWRpdENhcmQ6Y20sJFpvZEN1c3RvbTpYbSwkWm9kQ3VzdG9tU3RyaW5nRm9ybWF0OnBtLCRab2RDeWNsaWNFcnJvcjplZiwkWm9kRGF0ZTpTbSwkWm9kRGVmYXVsdDpCbSwkWm9kRGlzY3JpbWluYXRlZFVuaW9uOlBtLCRab2RFMTY0OmFtLCRab2RFbWFpbDpJcCwkWm9kRW1vamk6cXAsJFpvZEVuY29kZUVycm9yOlFzLCRab2RFbnVtOk9tLCRab2RFcnJvcjpfaCwkWm9kRXhhY3RPcHRpb25hbDpEbSwkWm9kRmlsZTpabSwkWm9kRnVuY3Rpb246WW0sJFpvZEdVSUQ6UHAsJFpvZElCQU46dW0sJFpvZElQdjQ6SnAsJFpvZElQdjY6WXAsJFpvZElTT0RhdGU6V3AsJFpvZElTT0RhdGVUaW1lOlZwLCRab2RJU09EdXJhdGlvbjpHcCwkWm9kSVNPVGltZTpLcCwkWm9kSW50ZXJzZWN0aW9uOnhtLCRab2RKV1Q6aG0sJFpvZEtTVUlEOlVwLCRab2RMYXp5OkZpLCRab2RMaXRlcmFsOk1tLCRab2RNQUM6UXAsJFpvZE1hcDpFbSwkWm9kTmFOOldtLCRab2ROYW5vSUQ6RHAsJFpvZE5ldmVyOiRtLCRab2ROb25PcHRpb25hbDpGbSwkWm9kTnVsbDp2bSwkWm9kTnVsbGFibGU6TG0sJFpvZE51bWJlcjpPaSwkWm9kTnVtYmVyRm9ybWF0Om1tLCRab2RPYmplY3Q6QW0sJFpvZE9iamVjdEpJVDp6bSwkWm9kT3B0aW9uYWw6TGksJFpvZFBpcGU6QmksJFpvZFByZWZhdWx0OkhtLCRab2RQcmVwcm9jZXNzOkttLCRab2RQcm9taXNlOlFtLCRab2RSZWFkb25seTpHbSwkWm9kUmVhbEVycm9yOk1lLCRab2RSZWNvcmQ6SW0sJFpvZFJlZ2lzdHJ5OnJmLCRab2RTZXQ6Um0sJFpvZFN0cmluZzpjbywkWm9kU3RyaW5nRm9ybWF0OnJlLCRab2RTdWNjZXNzOlVtLCRab2RTeW1ib2w6Z20sJFpvZFRlbXBsYXRlTGl0ZXJhbDpKbSwkWm9kVHJhbnNmb3JtOnFtLCRab2RUdXBsZTpEaSwkWm9kVHlwZTpELCRab2RVTElEOkhwLCRab2RVUkw6WnAsJFpvZFVVSUQ6eHAsJFpvZFVuZGVmaW5lZDpibSwkWm9kVW5pb246YXIsJFpvZFVua25vd246eW0sJFpvZFZvaWQ6d20sJFpvZFhJRDpGcCwkWm9kWG9yOkNtLCRicmFuZDpoaSwkY29uc3RydWN0b3I6ZiwkaW5wdXQ6V2ksJG91dHB1dDpWaSxEb2M6enAsSU5WQUxJRDpHaSxKU09OU2NoZW1hOnd5LEpTT05TY2hlbWFHZW5lcmF0b3I6JHksTkVWRVI6ZGksVGltZVByZWNpc2lvbjokYyxVUkxfQkFEX0ZPUk1BVDpQaSxVUkxfVU5QQVJTRUFCTEU6Vm4sWm9kQ29tcGlsZUFzeW5jRXJyb3I6SmksWm9kQ29tcGlsZVVuc3VwcG9ydGVkRXJyb3I6WWksX2FueTp6ZixfYXJyYXk6UmYsX2Jhc2U2NDpiYyxfYmFzZTY0dXJsOnZjLF9iaWdpbnQ6JGYsX2Jvb2xlYW46a2YsX2NhdGNoOlRrLF9jaGVjazpEZixfY2lkcnY0OmZjLF9jaWRydjY6Z2MsX2NvZXJjZWRCaWdpbnQ6d2YsX2NvZXJjZWRCb29sZWFuOnlmLF9jb2VyY2VkRGF0ZTpJZixfY29lcmNlZE51bWJlcjpwZixfY29lcmNlZFN0cmluZzpjZixfY3JlZGl0Q2FyZDp1ZixfY3VpZDpjYyxfY3VpZDI6bGMsX2N1c3RvbTpNZixfZGF0ZTp4ZixfZGVjb2RlOmdpLF9kZWNvZGVBc3luYzp2aSxfZGVmYXVsdDpTayxfZGlzY3JpbWluYXRlZFVuaW9uOmRrLF9lMTY0OmtjLF9lbWFpbDplYyxfZW1vamk6YWMsX2VuY29kZTpmaSxfZW5jb2RlQXN5bmM6YmksX2VuZHNXaXRoOmZvLF9lbnVtOmJrLF9maWxlOk9mLF9mbG9hdDMyOmZmLF9mbG9hdDY0OmdmLF9ndDpjdCxfZ3RlOlJlLF9ndWlkOnRjLF9pYmFuOmRmLF9pbmNsdWRlczpwbyxfaW50Om1mLF9pbnQzMjpiZixfaW50NjQ6U2YsX2ludGVyc2VjdGlvbjpoayxfaXB2NDpwYyxfaXB2NjptYyxfaXNvRGF0ZTpTYyxfaXNvRGF0ZVRpbWU6d2MsX2lzb0R1cmF0aW9uOmpjLF9pc29UaW1lOl9jLF9qd3Q6eWMsX2tzdWlkOmhjLF9sYXp5Ok5rLF9sZW5ndGg6cG4sX2xpdGVyYWw6a2ssX2xvd2VyY2FzZTp1byxfbHQ6aXQsX2x0ZTpFZSxfbWFjOmxmLF9tYXA6ZmssX21heDpFZSxfbWF4TGVuZ3RoOmhuLF9tYXhTaXplOkJ0LF9taW1lOmJvLF9taW46UmUsX21pbkxlbmd0aDp5dCxfbWluU2l6ZTpsdCxfbXVsdGlwbGVPZjpQdCxfbmFuOkVmLF9uYW5vaWQ6aWMsX25hdGl2ZUVudW06dmssX25lZ2F0aXZlOmhyLF9uZXZlcjpOZixfbm9ubmVnYXRpdmU6bXIsX25vbm9wdGlvbmFsOl9rLF9ub25wb3NpdGl2ZTpwcixfbm9ybWFsaXplOnZvLF9udWxsOkFmLF9udWxsYWJsZTp3ayxfbnVtYmVyOmhmLF9vcHRpb25hbDokayxfb3ZlcndyaXRlOmV0LF9wYXJzZTp0byxfcGFyc2VBc3luYzpubyxfcGlwZTpBayxfcG9zaXRpdmU6ZHIsX3Byb21pc2U6UGssX3Byb3BlcnRpZXM6Z28sX3Byb3BlcnR5OmZyLF9yZWFkb25seTp6ayxfcmVjb3JkOm1rLF9yZWZpbmU6WmYsX3JlZ2V4OmxvLF9zYWZlRGVjb2RlOnlpLF9zYWZlRGVjb2RlQXN5bmM6d2ksX3NhZmVFbmNvZGU6a2ksX3NhZmVFbmNvZGVBc3luYzokaSxfc2FmZVBhcnNlOm9vLF9zYWZlUGFyc2VBc3luYzpzbyxfc2V0OmdrLF9zaXplOmRuLF9zbHVnaWZ5OndvLF9zdGFydHNXaXRoOm1vLF9zdHJpbmc6YWYsX3N0cmluZ0Zvcm1hdDptbixfc3RyaW5nYm9vbDpIZixfc3VjY2Vzczpqayxfc3VwZXJSZWZpbmU6cWYsX3N5bWJvbDpqZixfdGVtcGxhdGVMaXRlcmFsOkNrLF90b0xvd2VyQ2FzZTp5byxfdG9VcHBlckNhc2U6JG8sX3RyYW5zZm9ybTp5ayxfdHJpbTprbyxfdHVwbGU6cGssX3VpbnQzMjp2ZixfdWludDY0Ol9mLF91bGlkOnVjLF91bmRlZmluZWQ6VGYsX3VuaW9uOmxrLF91bmtub3duOkNmLF91cHBlcmNhc2U6aG8sX3VybDp1cixfdXVpZDpuYyxfdXVpZHY0Om9jLF91dWlkdjY6c2MsX3V1aWR2NzpyYyxfdm9pZDpQZixfeGlkOmRjLF94b3I6dWssYmFzZTY0Q2hhcnNldDpubSxiYXNlNjR1cmxDaGFyc2V0OlJpLGNhblBhcnNlVVJMOnhpLGNsb25lOmxlLGNvbXBpbGU6UWksY29tcGlsZUZuOmNrLGNvbmZpZzptZSxjcmVhdGVTdGFuZGFyZEpTT05TY2hlbWFNZXRob2Q6WmEsY3JlYXRlVG9KU09OU2NoZW1hTWV0aG9kOkZmLGRlY29kZTpmdixkZWNvZGVBc3luYzpidixkZXNjcmliZTpMZixlbmNvZGU6bXYsZW5jb2RlQXN5bmM6Z3YsZXh0cmFjdERlZnM6UmssZmluYWxpemU6T2ssZmxhdHRlbkVycm9yOlhzLGZvcm1hdEVycm9yOmVyLGdldERpc2NyaW1pbmF0ZWRPcHRpb246cWksZ2xvYmFsQ29uZmlnOkFlLGdsb2JhbFJlZ2lzdHJ5OkxlLGhhbmRsZVVucmVwcmVzZW50YWJsZTpJayxpbml0aWFsaXplQ29udGV4dDp4ayxpc0JhY2tFZGdlOm9mLGlzUmVjdXJzaXZlU2NoZW1hOnNrLGlzVmFsaWRCYXNlNjQ6RWksaXNWYWxpZEJhc2U2NFVSTDpzbSxpc1ZhbGlkQ0lEUnY2OmVtLGlzVmFsaWRDcmVkaXRDYXJkOmltLGlzVmFsaWRJQkFOOmxtLGlzVmFsaWRJUHY2OklpLGlzVmFsaWRKV1Q6ZG0sbG9jYWxlczpVaSxtZW1vaXplcjppcixtZXJnZVZhbHVlczpOcyxtZXRhOkJmLHBhcnNlOnhhLHBhcnNlQXN5bmM6SWEscGFyc2VVUkxPYmplY3Q6UnAscHJldHRpZnlFcnJvcjptaSxwcm9jZXNzOk1rLHByb2Nlc3NTY2hlbWE6RWsscmVnZXhlczpycixyZWdpc3RyeTpjcixzYWZlRGVjb2RlOmt2LHNhZmVEZWNvZGVBc3luYzokdixzYWZlRW5jb2RlOnZ2LHNhZmVFbmNvZGVBc3luYzp5dixzYWZlUGFyc2U6VGgsc2FmZVBhcnNlQXN5bmM6dXYsc3RhbmRhcmRQcm9wczpOaSxzdHJpcFRhYkFuZE5ld2xpbmU6UmEsdG9Eb3RQYXRoOmpoLHRvSlNPTlNjaGVtYTpUYyx0b1pvZDpGcyx0cmVlaWZ5RXJyb3I6cGksdXJsSG9zdG5hbWVPazpPcCx1cmxQcm90b2NvbE9rOk1wLHV0aWw6dWksdmFsaWRhdGU6bnIsdmFsaWRhdGVBc3luYzpvcix2YWxpZGF0ZVVSTDpFcCx2ZXJzaW9uOkNwLHdpdGhQYXJzZXI6WGl9LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSksYmQ9U3ltYm9sKCJ6LnZpc2l0L3Jlc29sdmluZyIpO2Z1bmN0aW9uIEFjKGUsdCl7Y29uc3Qgbj10eXBlb2YgdD09ImZ1bmN0aW9uIj90OihpLGMpPT57Y29uc3QgaD10W2kuX3pvZC5kZWYudHlwZV07cmV0dXJuIGg/aChpLGMpOml9LG89bmV3IE1hcDtmdW5jdGlvbiBzKGkpe2NvbnN0IGM9by5nZXQoaSk7aWYoYz09PWJkKXJldHVybiBuZXcgRmkoe3R5cGU6ImxhenkiLGdldHRlcjooKT0+by5nZXQoaSl9KTtpZihjIT09dm9pZCAwKXJldHVybiBjO28uc2V0KGksYmQpO2NvbnN0IGg9cihpKSxkPW4oaCxoIT09aSk7cmV0dXJuIG8uc2V0KGksZCksZH1mdW5jdGlvbiByKGkpe2NvbnN0IGM9aS5fem9kLmRlZjtzd2l0Y2goYy50eXBlKXtjYXNlIm9iamVjdCI6e2NvbnN0IGQ9Yy5zaGFwZSx1PU9iamVjdC5rZXlzKGQpO2xldCBwPSExO2NvbnN0IG09e307Zm9yKGNvbnN0ICQgb2YgdSl7Y29uc3QgUz1zKGRbJF0pO1MhPT1kWyRdJiYocD0hMCksbVskXT1TfWxldCB5PWMuY2F0Y2hhbGw7cmV0dXJuIGMuY2F0Y2hhbGwmJih5PXMoYy5jYXRjaGFsbCkseSE9PWMuY2F0Y2hhbGwmJihwPSEwKSkscD9sZShpLHsuLi5jLHNoYXBlOm0sY2F0Y2hhbGw6eX0pOml9Y2FzZSJhcnJheSI6e2NvbnN0IGQ9cyhjLmVsZW1lbnQpO3JldHVybiBkPT09Yy5lbGVtZW50P2k6bGUoaSx7Li4uYyxlbGVtZW50OmR9KX1jYXNlInR1cGxlIjp7Y29uc3QgZD1jLml0ZW1zO2xldCB1PSExO2NvbnN0IHA9W107Zm9yKGNvbnN0IHkgb2YgZCl7Y29uc3QgJD1zKHkpOyQhPT15JiYodT0hMCkscC5wdXNoKCQpfWxldCBtPWMucmVzdDtyZXR1cm4gYy5yZXN0JiYobT1zKGMucmVzdCksbSE9PWMucmVzdCYmKHU9ITApKSx1P2xlKGksey4uLmMsaXRlbXM6cCxyZXN0Om19KTppfWNhc2UicmVjb3JkIjpjYXNlIm1hcCI6e2NvbnN0IGQ9cyhjLmtleVR5cGUpLHU9cyhjLnZhbHVlVHlwZSk7cmV0dXJuIGQ9PT1jLmtleVR5cGUmJnU9PT1jLnZhbHVlVHlwZT9pOmxlKGksey4uLmMsa2V5VHlwZTpkLHZhbHVlVHlwZTp1fSl9Y2FzZSJzZXQiOntjb25zdCBkPXMoYy52YWx1ZVR5cGUpO3JldHVybiBkPT09Yy52YWx1ZVR5cGU/aTpsZShpLHsuLi5jLHZhbHVlVHlwZTpkfSl9Y2FzZSJ1bmlvbiI6e2NvbnN0IGQ9Yy5vcHRpb25zO2xldCB1PSExO2NvbnN0IHA9W107Zm9yKGNvbnN0IG0gb2YgZCl7Y29uc3QgeT1zKG0pO3khPT1tJiYodT0hMCkscC5wdXNoKHkpfXJldHVybiB1P2xlKGksey4uLmMsb3B0aW9uczpwfSk6aX1jYXNlImludGVyc2VjdGlvbiI6e2NvbnN0IGQ9cyhjLmxlZnQpLHU9cyhjLnJpZ2h0KTtyZXR1cm4gZD09PWMubGVmdCYmdT09PWMucmlnaHQ/aTpsZShpLHsuLi5jLGxlZnQ6ZCxyaWdodDp1fSl9Y2FzZSJvcHRpb25hbCI6Y2FzZSJudWxsYWJsZSI6Y2FzZSJkZWZhdWx0IjpjYXNlInByZWZhdWx0IjpjYXNlImNhdGNoIjpjYXNlInJlYWRvbmx5IjpjYXNlIm5vbm9wdGlvbmFsIjpjYXNlInByb21pc2UiOmNhc2Uic3VjY2VzcyI6e2NvbnN0IGQ9cyhjLmlubmVyVHlwZSk7cmV0dXJuIGQ9PT1jLmlubmVyVHlwZT9pOmxlKGksey4uLmMsaW5uZXJUeXBlOmR9KX1jYXNlInBpcGUiOntjb25zdCBkPXMoYy5pbiksdT1zKGMub3V0KTtyZXR1cm4gZD09PWMuaW4mJnU9PT1jLm91dD9pOmxlKGksey4uLmMsaW46ZCxvdXQ6dX0pfWNhc2UiZnVuY3Rpb24iOntjb25zdCBkPXMoYy5pbnB1dCksdT1zKGMub3V0cHV0KTtyZXR1cm4gZD09PWMuaW5wdXQmJnU9PT1jLm91dHB1dD9pOmxlKGksey4uLmMsaW5wdXQ6ZCxvdXRwdXQ6dX0pfWNhc2UibGF6eSI6e2NvbnN0IGQ9Yy5nZXR0ZXIse19jYWNoZWRJbm5lcjp1LC4uLnB9PWM7cmV0dXJuIGxlKGksey4uLnAsZ2V0dGVyOigpPT5zKGQoKSl9KX1jYXNlInRlbXBsYXRlX2xpdGVyYWwiOmNhc2Uic3RyaW5nIjpjYXNlIm51bWJlciI6Y2FzZSJpbnQiOmNhc2UiYm9vbGVhbiI6Y2FzZSJiaWdpbnQiOmNhc2Uic3ltYm9sIjpjYXNlInVuZGVmaW5lZCI6Y2FzZSJudWxsIjpjYXNlInZvaWQiOmNhc2UibmV2ZXIiOmNhc2UiYW55IjpjYXNlInVua25vd24iOmNhc2UiZGF0ZSI6Y2FzZSJuYW4iOmNhc2UiZW51bSI6Y2FzZSJsaXRlcmFsIjpjYXNlImZpbGUiOmNhc2UidHJhbnNmb3JtIjpjYXNlImN1c3RvbSI6cmV0dXJuIGk7ZGVmYXVsdDpyZXR1cm4gaX19cmV0dXJuIHMoZSl9ZnVuY3Rpb24gemMoZSl7cmV0dXJuISFlLl96b2R9ZnVuY3Rpb24gS2YoZSx0KXtyZXR1cm4gemMoZSk/VGgoZSx0KTplLnNhZmVQYXJzZSh0KX1mdW5jdGlvbiBTeShlKXtpZighZSlyZXR1cm47bGV0IHQ7aWYoemMoZSk/dD1lLl96b2Q/LmRlZj8uc2hhcGU6dD1lLnNoYXBlLCEhdCl7aWYodHlwZW9mIHQ9PSJmdW5jdGlvbiIpdHJ5e3JldHVybiB0KCl9Y2F0Y2h7cmV0dXJufXJldHVybiB0fX1mdW5jdGlvbiBfeShlKXtpZih6YyhlKSl7Y29uc3Qgcj1lLl96b2Q/LmRlZjtpZihyKXtpZihyLnZhbHVlIT09dm9pZCAwKXJldHVybiByLnZhbHVlO2lmKEFycmF5LmlzQXJyYXkoci52YWx1ZXMpJiZyLnZhbHVlcy5sZW5ndGg+MClyZXR1cm4gci52YWx1ZXNbMF19fWNvbnN0IG49ZS5fZGVmO2lmKG4pe2lmKG4udmFsdWUhPT12b2lkIDApcmV0dXJuIG4udmFsdWU7aWYoQXJyYXkuaXNBcnJheShuLnZhbHVlcykmJm4udmFsdWVzLmxlbmd0aD4wKXJldHVybiBuLnZhbHVlc1swXX1jb25zdCBvPWUudmFsdWU7aWYobyE9PXZvaWQgMClyZXR1cm4gb31jb25zdCBqeT1PYmplY3QuZnJlZXplKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7X19wcm90b19fOm51bGwsZW5kc1dpdGg6Zm8sZ3Q6Y3QsZ3RlOlJlLGluY2x1ZGVzOnBvLGxlbmd0aDpwbixsb3dlcmNhc2U6dW8sbHQ6aXQsbHRlOkVlLG1heExlbmd0aDpobixtYXhTaXplOkJ0LG1pbWU6Ym8sbWluTGVuZ3RoOnl0LG1pblNpemU6bHQsbXVsdGlwbGVPZjpQdCxuZWdhdGl2ZTpocixub25uZWdhdGl2ZTptcixub25wb3NpdGl2ZTpwcixub3JtYWxpemU6dm8sb3ZlcndyaXRlOmV0LHBvc2l0aXZlOmRyLHByb3BlcnRpZXM6Z28scHJvcGVydHk6ZnIscmVnZXg6bG8sc2l6ZTpkbixzbHVnaWZ5OndvLHN0YXJ0c1dpdGg6bW8sdG9Mb3dlckNhc2U6eW8sdG9VcHBlckNhc2U6JG8sdHJpbTprbyx1cHBlcmNhc2U6aG99LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSksdmQ9bmV3IFdlYWtTZXQoW09iamVjdC5wcm90b3R5cGUsRXJyb3IucHJvdG90eXBlXSk7ZnVuY3Rpb24gaHMoZSx0LG4pe09iamVjdC5kZWZpbmVQcm9wZXJ0eShlLHQse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiExLGdldCgpe2NvbnN0IG89bih0aGlzKTtyZXR1cm4gT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7dmFsdWU6byxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KSxvfSxzZXQobyl7T2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsdCx7dmFsdWU6byxjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITB9KX19KX1jb25zdCBHZj0oZSx0KT0+e19oLmluaXQoZSx0KSxlLm5hbWU9IlpvZEVycm9yIjtjb25zdCBuPU9iamVjdC5nZXRQcm90b3R5cGVPZihlKTt2ZC5oYXMobil8fCh2ZC5hZGQobiksaHMobiwiZm9ybWF0IixvPT5zPT5lcihvLHMpKSxocyhuLCJmbGF0dGVuIixvPT5zPT5YcyhvLHMpKSxocyhuLCJhZGRJc3N1ZSIsbz0+cz0+e28uaXNzdWVzLnB1c2gocyksby5tZXNzYWdlPUpTT04uc3RyaW5naWZ5KG8uaXNzdWVzLGpzLDIpfSksaHMobiwiYWRkSXNzdWVzIixvPT5zPT57by5pc3N1ZXMucHVzaCguLi5zKSxvLm1lc3NhZ2U9SlNPTi5zdHJpbmdpZnkoby5pc3N1ZXMsanMsMil9KSxPYmplY3QuZGVmaW5lUHJvcGVydHkobiwiaXNFbXB0eSIse2NvbmZpZ3VyYWJsZTohMCxlbnVtZXJhYmxlOiExLGdldCgpe3JldHVybiB0aGlzLmlzc3Vlcy5sZW5ndGg9PT0wfX0pKX0sSmY9ZigiWm9kRXJyb3IiLEdmKSx4ZT1mKCJab2RFcnJvciIsR2Ysdm9pZCAwLHtQYXJlbnQ6RXJyb3J9KSxDYz10byh4ZSksTmM9bm8oeGUpLFBjPW9vKHhlKSx4Yz1zbyh4ZSksSWM9ZmkoeGUpLEVjPWdpKHhlKSxSYz1iaSh4ZSksT2M9dmkoeGUpLE1jPWtpKHhlKSxaYz15aSh4ZSkscWM9JGkoeGUpLERjPXdpKHhlKTtmdW5jdGlvbiBUeSgpe0FlLmxvY2FsZUVycm9yfHxtZShzZigpKX1mdW5jdGlvbiBIdCgpe0FlLm1lbW9pemVyfHxtZSh7bWVtb2l6ZXI6aXIoKX0pfWNvbnN0IEI9ZigiWm9kVHlwZSIsKGUsdCk9PihUeSgpLEQuaW5pdChlLHQpLGUuZGVmPXQsZS50eXBlPXQudHlwZSxlKSx7Y2hlY2soLi4uZSl7Y29uc3QgdD10aGlzLmRlZjtyZXR1cm4gdGhpcy5jbG9uZShTZSh0LHtjaGVja3M6Wy4uLnQuY2hlY2tzPz9bXSwuLi5lLm1hcChuPT50eXBlb2Ygbj09ImZ1bmN0aW9uIj97X3pvZDp7Y2hlY2s6bixkZWY6e2NoZWNrOiJjdXN0b20ifSxvbmF0dGFjaDpbXX19Om4pXX0pLHtwYXJlbnQ6ITB9KX0sd2l0aCguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayguLi5lKX0sY2xvbmUoZSx0KXtyZXR1cm4gbGUodGhpcyxlLHQpfSxicmFuZCgpe3JldHVybiB0aGlzfSxyZWdpc3RlcihlLHQpe3JldHVybiBlLmFkZCh0aGlzLHQpLHRoaXN9LHJlZmluZShlLHQpe3JldHVybiB0aGlzLmNoZWNrKG9hKGUsdCkpfSxzdXBlclJlZmluZShlLHQpe3JldHVybiB0aGlzLmNoZWNrKHNhKGUsdCkpfSxvdmVyd3JpdGUoZSl7cmV0dXJuIHRoaXMuY2hlY2soZXQoZSkpfSxvcHRpb25hbCgpe3JldHVybiBhZSh0aGlzKX0sZXhhY3RPcHRpb25hbCgpe3JldHVybiBNcih0aGlzKX0sbnVsbGFibGUoKXtyZXR1cm4gc24odGhpcyl9LG51bGxpc2goKXtyZXR1cm4gYWUoc24odGhpcykpfSxub25vcHRpb25hbChlKXtyZXR1cm4gSHIodGhpcyxlKX0sYXJyYXkoKXtyZXR1cm4gUih0aGlzKX0sb3IoZSl7cmV0dXJuIFUoW3RoaXMsZV0pfSxhbmQoZSl7cmV0dXJuIFRuKHRoaXMsZSl9LHRyYW5zZm9ybShlKXtyZXR1cm4gS24odGhpcyxWbyhlKSl9LGRlZmF1bHQoZSl7cmV0dXJuIERyKHRoaXMsZSl9LHByZWZhdWx0KGUpe3JldHVybiBCcih0aGlzLGUpfSxjYXRjaChlKXtyZXR1cm4gVnIodGhpcyxlKX0scGlwZShlKXtyZXR1cm4gS24odGhpcyxlKX0scmVhZG9ubHkoKXtyZXR1cm4gSnIodGhpcyl9LGRlc2NyaWJlKGUpe2NvbnN0IHQ9dGhpcy5jbG9uZSgpO3JldHVybiBMZS5hZGQodCx7ZGVzY3JpcHRpb246ZX0pLHR9LG1ldGEoLi4uZSl7aWYoZS5sZW5ndGg9PT0wKXJldHVybiBMZS5nZXQodGhpcyk7Y29uc3QgdD10aGlzLmNsb25lKCk7cmV0dXJuIExlLmFkZCh0LGVbMF0pLHR9LGlzT3B0aW9uYWwoKXtyZXR1cm4gdGhpcy5zYWZlUGFyc2Uodm9pZCAwKS5zdWNjZXNzfSxpc051bGxhYmxlKCl7cmV0dXJuIHRoaXMuc2FmZVBhcnNlKG51bGwpLnN1Y2Nlc3N9LGFwcGx5KGUsLi4udCl7cmV0dXJuIHQubGVuZ3RoPT09MD9lKHRoaXMpOmUodGhpcywuLi50KX0sZ2V0In5zdGFuZGFyZCIoKXtyZXR1cm4gWXModGhpcywifnN0YW5kYXJkIix7Li4uTmkodGhpcyksanNvblNjaGVtYTp7aW5wdXQ6WmEoKSxvdXRwdXQ6WmEoKX19KX0sc2V0In5zdGFuZGFyZCIoZSl7YXQodGhpcywifnN0YW5kYXJkIixlKX0scGFyc2U6ZnVuY3Rpb24gZSh0LG4pe3JldHVybiBDYyh0aGlzLHQsbix7Y2FsbGVlOmV9KX0scGFyc2VBc3luYzphc3luYyBmdW5jdGlvbiBlKHQsbil7cmV0dXJuIGF3YWl0IE5jKHRoaXMsdCxuLHtjYWxsZWU6ZX0pfSxzYWZlUGFyc2UoZSx0KXtyZXR1cm4gUGModGhpcyxlLHQpfSxhc3luYyBzYWZlUGFyc2VBc3luYyhlLHQpe3JldHVybiB4Yyh0aGlzLGUsdCl9LGdldCBzcGEoKXtyZXR1cm4gdGhpcz8uc2FmZVBhcnNlQXN5bmN9LHNldCBzcGEoZSl7YXQodGhpcywic3BhIixlKX0sdmFsaWRhdGUoZSx0KXtyZXR1cm4gbnIodGhpcyxlLHQpfSx2YWxpZGF0ZUFzeW5jKGUsdCl7cmV0dXJuIG9yKHRoaXMsZSx0KX0sZW5jb2RlOmZ1bmN0aW9uIGUodCxuKXtyZXR1cm4gSWModGhpcyx0LG4se2NhbGxlZTplfSl9LGRlY29kZTpmdW5jdGlvbiBlKHQsbil7cmV0dXJuIEVjKHRoaXMsdCxuLHtjYWxsZWU6ZX0pfSxlbmNvZGVBc3luYzphc3luYyBmdW5jdGlvbiBlKHQsbil7cmV0dXJuIGF3YWl0IFJjKHRoaXMsdCxuLHtjYWxsZWU6ZX0pfSxkZWNvZGVBc3luYzphc3luYyBmdW5jdGlvbiBlKHQsbil7cmV0dXJuIGF3YWl0IE9jKHRoaXMsdCxuLHtjYWxsZWU6ZX0pfSxzYWZlRW5jb2RlKGUsdCl7cmV0dXJuIE1jKHRoaXMsZSx0KX0sc2FmZURlY29kZShlLHQpe3JldHVybiBaYyh0aGlzLGUsdCl9LGFzeW5jIHNhZmVFbmNvZGVBc3luYyhlLHQpe3JldHVybiBxYyh0aGlzLGUsdCl9LGFzeW5jIHNhZmVEZWNvZGVBc3luYyhlLHQpe3JldHVybiBEYyh0aGlzLGUsdCl9LHRvSlNPTlNjaGVtYShlKXtyZXR1cm4gRmYoKShlKX0sZ2V0IGRlc2NyaXB0aW9uKCl7cmV0dXJuIExlLmdldCh0aGlzKT8uZGVzY3JpcHRpb259LGdldCBfZGVmKCl7cmV0dXJuIHRoaXMuX3pvZC5kZWZ9fSksU289ZigiX1pvZFN0cmluZyIsKGUsdCk9Pntjby5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PlprKCl9LGVvKHtmb3JtYXQ6ZT0+QmUoKS5mb3JtYXQ/P251bGwsbWluTGVuZ3RoOmU9PkJlKCkubWluaW11bT8/bnVsbCxtYXhMZW5ndGg6ZT0+QmUoKS5tYXhpbXVtPz9udWxsfSx7cmVnZXgoLi4uZSl7cmV0dXJuIHRoaXMuY2hlY2sobG8oLi4uZSkpfSxpbmNsdWRlcyguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhwbyguLi5lKSl9LHN0YXJ0c1dpdGgoLi4uZSl7cmV0dXJuIHRoaXMuY2hlY2sobW8oLi4uZSkpfSxlbmRzV2l0aCguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhmbyguLi5lKSl9LG1pbiguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayh5dCguLi5lKSl9LG1heCguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhobiguLi5lKSl9LGxlbmd0aCguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayhwbiguLi5lKSl9LG5vbmVtcHR5KC4uLmUpe3JldHVybiB0aGlzLmNoZWNrKHl0KDEsLi4uZSkpfSxsb3dlcmNhc2UoZSl7cmV0dXJuIHRoaXMuY2hlY2sodW8oZSkpfSx1cHBlcmNhc2UoZSl7cmV0dXJuIHRoaXMuY2hlY2soaG8oZSkpfSx0cmltKCl7cmV0dXJuIHRoaXMuY2hlY2soa28oKSl9LG5vcm1hbGl6ZSguLi5lKXtyZXR1cm4gdGhpcy5jaGVjayh2byguLi5lKSl9LHRvTG93ZXJDYXNlKCl7cmV0dXJuIHRoaXMuY2hlY2soeW8oKSl9LHRvVXBwZXJDYXNlKCl7cmV0dXJuIHRoaXMuY2hlY2soJG8oKSl9LHNsdWdpZnkoKXtyZXR1cm4gdGhpcy5jaGVjayh3bygpKX19KSksZm49ZigiWm9kU3RyaW5nIiwoZSx0KT0+e2NvLmluaXQoZSx0KSxTby5pbml0KGUsdCl9LHtlbWFpbChlKXtyZXR1cm4gdGhpcy5jaGVjayhlYyhfbyxlKSl9LHVybChlKXtyZXR1cm4gdGhpcy5jaGVjayh1cih5bixlKSl9LGp3dChlKXtyZXR1cm4gdGhpcy5jaGVjayh5YyhEbyxlKSl9LGVtb2ppKGUpe3JldHVybiB0aGlzLmNoZWNrKGFjKFRvLGUpKX0sZ3VpZChlKXtyZXR1cm4gdGhpcy5jaGVjayh0YyhqbyxlKSl9LHV1aWQoZSl7cmV0dXJuIHRoaXMuY2hlY2sobmMoR2UsZSkpfSx1dWlkdjQoZSl7cmV0dXJuIHRoaXMuY2hlY2sob2MoR2UsZSkpfSx1dWlkdjYoZSl7cmV0dXJuIHRoaXMuY2hlY2soc2MoR2UsZSkpfSx1dWlkdjcoZSl7cmV0dXJuIHRoaXMuY2hlY2socmMoR2UsZSkpfSxuYW5vaWQoZSl7cmV0dXJuIHRoaXMuY2hlY2soaWMoQW8sZSkpfSxjdWlkKGUpe3JldHVybiB0aGlzLmNoZWNrKGNjKHpvLGUpKX0sY3VpZDIoZSl7cmV0dXJuIHRoaXMuY2hlY2sobGMoQ28sZSkpfSx1bGlkKGUpe3JldHVybiB0aGlzLmNoZWNrKHVjKE5vLGUpKX0sYmFzZTY0KGUpe3JldHVybiB0aGlzLmNoZWNrKGJjKE1vLGUpKX0sYmFzZTY0dXJsKGUpe3JldHVybiB0aGlzLmNoZWNrKHZjKFpvLGUpKX0seGlkKGUpe3JldHVybiB0aGlzLmNoZWNrKGRjKFBvLGUpKX0sa3N1aWQoZSl7cmV0dXJuIHRoaXMuY2hlY2soaGMoeG8sZSkpfSxpcHY0KGUpe3JldHVybiB0aGlzLmNoZWNrKHBjKElvLGUpKX0saXB2NihlKXtyZXR1cm4gdGhpcy5jaGVjayhtYyhFbyxlKSl9LGNpZHJ2NChlKXtyZXR1cm4gdGhpcy5jaGVjayhmYyhSbyxlKSl9LGNpZHJ2NihlKXtyZXR1cm4gdGhpcy5jaGVjayhnYyhPbyxlKSl9LGUxNjQoZSl7cmV0dXJuIHRoaXMuY2hlY2soa2MocW8sZSkpfSxkYXRldGltZShlKXtyZXR1cm4gdGhpcy5jaGVjayh3YyhnbixlKSl9LGRhdGUoZSl7cmV0dXJuIHRoaXMuY2hlY2soU2MoYm4sZSkpfSx0aW1lKGUpe3JldHVybiB0aGlzLmNoZWNrKF9jKHZuLGUpKX0sZHVyYXRpb24oZSl7cmV0dXJuIHRoaXMuY2hlY2soamMoa24sZSkpfX0pO2Z1bmN0aW9uIGcoZSl7cmV0dXJuIGFmKGZuLGUpfWNvbnN0IG9lPWYoIlpvZFN0cmluZ0Zvcm1hdCIsKGUsdCk9PntyZS5pbml0KGUsdCksU28uaW5pdChlLHQpfSksZ249ZigiWm9kSVNPRGF0ZVRpbWUiLChlLHQpPT57VnAuaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pLGJuPWYoIlpvZElTT0RhdGUiLChlLHQpPT57V3AuaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pLHZuPWYoIlpvZElTT1RpbWUiLChlLHQpPT57S3AuaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pLGtuPWYoIlpvZElTT0R1cmF0aW9uIiwoZSx0KT0+e0dwLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KSxfbz1mKCJab2RFbWFpbCIsKGUsdCk9PntJcC5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gTGMoZSl7cmV0dXJuIGVjKF9vLGUpfWNvbnN0IGpvPWYoIlpvZEdVSUQiLChlLHQpPT57UHAuaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pO2Z1bmN0aW9uIEJjKGUpe3JldHVybiB0YyhqbyxlKX1jb25zdCBHZT1mKCJab2RVVUlEIiwoZSx0KT0+e3hwLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBIYyhlKXtyZXR1cm4gbmMoR2UsZSl9ZnVuY3Rpb24gRmMoZSl7cmV0dXJuIG9jKEdlLGUpfWZ1bmN0aW9uIFVjKGUpe3JldHVybiBzYyhHZSxlKX1mdW5jdGlvbiBWYyhlKXtyZXR1cm4gcmMoR2UsZSl9Y29uc3QgeW49ZigiWm9kVVJMIiwoZSx0KT0+e1pwLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBXYyhlKXtyZXR1cm4gdXIoeW4sZSl9ZnVuY3Rpb24gS2MoZSl7cmV0dXJuIHVyKHluLHtwcm90b2NvbDpTaSxob3N0bmFtZTpWaCwuLi53KGUpfSl9Y29uc3QgVG89ZigiWm9kRW1vamkiLChlLHQpPT57cXAuaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pO2Z1bmN0aW9uIEdjKGUpe3JldHVybiBhYyhUbyxlKX1jb25zdCBBbz1mKCJab2ROYW5vSUQiLChlLHQpPT57RHAuaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pO2Z1bmN0aW9uIEpjKGUpe3JldHVybiBpYyhBbyxlKX1jb25zdCB6bz1mKCJab2RDVUlEIiwoZSx0KT0+e0xwLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBZYyhlKXtyZXR1cm4gY2Moem8sZSl9Y29uc3QgQ289ZigiWm9kQ1VJRDIiLChlLHQpPT57QnAuaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pO2Z1bmN0aW9uIFFjKGUpe3JldHVybiBsYyhDbyxlKX1jb25zdCBObz1mKCJab2RVTElEIiwoZSx0KT0+e0hwLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBYYyhlKXtyZXR1cm4gdWMoTm8sZSl9Y29uc3QgUG89ZigiWm9kWElEIiwoZSx0KT0+e0ZwLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBlbChlKXtyZXR1cm4gZGMoUG8sZSl9Y29uc3QgeG89ZigiWm9kS1NVSUQiLChlLHQpPT57VXAuaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pO2Z1bmN0aW9uIHRsKGUpe3JldHVybiBoYyh4byxlKX1jb25zdCBJbz1mKCJab2RJUHY0IiwoZSx0KT0+e0pwLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBubChlKXtyZXR1cm4gcGMoSW8sZSl9Y29uc3QgZ3I9ZigiWm9kTUFDIiwoZSx0KT0+e1FwLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KTtmdW5jdGlvbiBvbChlKXtyZXR1cm4gbGYoZ3IsZSl9Y29uc3QgRW89ZigiWm9kSVB2NiIsKGUsdCk9PntZcC5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gc2woZSl7cmV0dXJuIG1jKEVvLGUpfWNvbnN0IFJvPWYoIlpvZENJRFJ2NCIsKGUsdCk9PntYcC5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gcmwoZSl7cmV0dXJuIGZjKFJvLGUpfWNvbnN0IE9vPWYoIlpvZENJRFJ2NiIsKGUsdCk9Pnt0bS5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gYWwoZSl7cmV0dXJuIGdjKE9vLGUpfWNvbnN0IE1vPWYoIlpvZEJhc2U2NCIsKGUsdCk9PntvbS5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gaWwoZSl7cmV0dXJuIGJjKE1vLGUpfWNvbnN0IFpvPWYoIlpvZEJhc2U2NFVSTCIsKGUsdCk9PntybS5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gY2woZSl7cmV0dXJuIHZjKFpvLGUpfWNvbnN0IHFvPWYoIlpvZEUxNjQiLChlLHQpPT57YW0uaW5pdChlLHQpLG9lLmluaXQoZSx0KX0pO2Z1bmN0aW9uIGxsKGUpe3JldHVybiBrYyhxbyxlKX1jb25zdCBicj1mKCJab2RDcmVkaXRDYXJkIiwoZSx0KT0+e2NtLmluaXQoZSx0KSxvZS5pbml0KGUsdCl9KTtmdW5jdGlvbiB1bChlKXtyZXR1cm4gdWYoYnIsZSl9Y29uc3QgdnI9ZigiWm9kSUJBTiIsKGUsdCk9Pnt1bS5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gZGwoZSl7cmV0dXJuIGRmKHZyLGUpfWNvbnN0IERvPWYoIlpvZEpXVCIsKGUsdCk9PntobS5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gaGwoZSl7cmV0dXJuIHljKERvLGUpfWNvbnN0IHd0PWYoIlpvZEN1c3RvbVN0cmluZ0Zvcm1hdCIsKGUsdCk9PntwbS5pbml0KGUsdCksb2UuaW5pdChlLHQpfSk7ZnVuY3Rpb24gcGwoZSx0LG49e30pe3JldHVybiBtbih3dCxlLHQsbil9ZnVuY3Rpb24gbWwoZSl7cmV0dXJuIG1uKHd0LCJob3N0bmFtZSIsVWgsZSl9ZnVuY3Rpb24gZmwoZSl7cmV0dXJuIG1uKHd0LCJoZXgiLGNwLGUpfWZ1bmN0aW9uIGdsKGUpe3JldHVybiBtbih3dCwiY3VycmVuY3lfY29kZSIsS2gsZSl9ZnVuY3Rpb24gYmwoZSx0KXtjb25zdCBuPXQ/LmVuYz8/ImhleCIsbz1gJHtlfV8ke259YCxzPXJyW29dO2lmKCFzKXRocm93IG5ldyBFcnJvcihgVW5yZWNvZ25pemVkIGhhc2ggZm9ybWF0OiAke299YCk7cmV0dXJuIG1uKHd0LG8scyx0KX1jb25zdCAkbj1mKCJab2ROdW1iZXIiLChlLHQpPT57T2kuaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5xaygpLGUuaXNGaW5pdGU9ITB9LGVvKHttaW5WYWx1ZTplPT57Y29uc3R7bWluaW11bTp0LGV4Y2x1c2l2ZU1pbmltdW06bn09QmUoKTtyZXR1cm4gTWF0aC5tYXgodD8/TnVtYmVyLk5FR0FUSVZFX0lORklOSVRZLG4/P051bWJlci5ORUdBVElWRV9JTkZJTklUWSl9LG1heFZhbHVlOmU9Pntjb25zdHttYXhpbXVtOnQsZXhjbHVzaXZlTWF4aW11bTpufT1CZSgpO3JldHVybiBNYXRoLm1pbih0Pz9OdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFksbj8/TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZKX0saXNJbnQ6ZT0+e2NvbnN0e2lzSW50OnQsbXVsdGlwbGVPZjpufT1CZSgpO3JldHVybiEhdHx8ISFuPy5zb21lKE51bWJlci5pc1NhZmVJbnRlZ2VyKX0sZm9ybWF0OmU9PkJlKCkuZm9ybWF0Pz9udWxsfSx7Z3QoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhjdChlLHQpKX0sZ3RlKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soUmUoZSx0KSl9LG1pbihlLHQpe3JldHVybiB0aGlzLmNoZWNrKFJlKGUsdCkpfSxsdChlLHQpe3JldHVybiB0aGlzLmNoZWNrKGl0KGUsdCkpfSxsdGUoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhFZShlLHQpKX0sbWF4KGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soRWUoZSx0KSl9LGludChlKXtyZXR1cm4gdGhpcy5jaGVjayhXbihlKSl9LHNhZmUoZSl7cmV0dXJuIHRoaXMuY2hlY2soV24oZSkpfSxwb3NpdGl2ZShlKXtyZXR1cm4gdGhpcy5jaGVjayhjdCgwLGUpKX0sbm9ubmVnYXRpdmUoZSl7cmV0dXJuIHRoaXMuY2hlY2soUmUoMCxlKSl9LG5lZ2F0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKGl0KDAsZSkpfSxub25wb3NpdGl2ZShlKXtyZXR1cm4gdGhpcy5jaGVjayhFZSgwLGUpKX0sbXVsdGlwbGVPZihlLHQpe3JldHVybiB0aGlzLmNoZWNrKFB0KGUsdCkpfSxzdGVwKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soUHQoZSx0KSl9LGZpbml0ZSgpe3JldHVybiB0aGlzfX0pKTtmdW5jdGlvbiBMKGUpe3JldHVybiBoZigkbixlKX1jb25zdCBTdD1mKCJab2ROdW1iZXJGb3JtYXQiLChlLHQpPT57bW0uaW5pdChlLHQpLCRuLmluaXQoZSx0KX0pO2Z1bmN0aW9uIFduKGUpe3JldHVybiBtZihTdCxlKX1mdW5jdGlvbiB2bChlKXtyZXR1cm4gZmYoU3QsZSl9ZnVuY3Rpb24ga2woZSl7cmV0dXJuIGdmKFN0LGUpfWZ1bmN0aW9uIHlsKGUpe3JldHVybiBiZihTdCxlKX1mdW5jdGlvbiAkbChlKXtyZXR1cm4gdmYoU3QsZSl9Y29uc3Qgd249ZigiWm9kQm9vbGVhbiIsKGUsdCk9PntNaS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PkRrKCl9KTtmdW5jdGlvbiBuZShlKXtyZXR1cm4ga2Yod24sZSl9Y29uc3QgU249ZigiWm9kQmlnSW50IiwoZSx0KT0+e1ppLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+TGsoKX0sZW8oe21pblZhbHVlOmU9PkJlKCkubWluaW11bT8/bnVsbCxtYXhWYWx1ZTplPT5CZSgpLm1heGltdW0/P251bGwsZm9ybWF0OmU9PkJlKCkuZm9ybWF0Pz9udWxsfSx7Z3RlKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soUmUoZSx0KSl9LG1pbihlLHQpe3JldHVybiB0aGlzLmNoZWNrKFJlKGUsdCkpfSxndChlLHQpe3JldHVybiB0aGlzLmNoZWNrKGN0KGUsdCkpfSxsdChlLHQpe3JldHVybiB0aGlzLmNoZWNrKGl0KGUsdCkpfSxsdGUoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhFZShlLHQpKX0sbWF4KGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soRWUoZSx0KSl9LHBvc2l0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKGN0KEJpZ0ludCgwKSxlKSl9LG5lZ2F0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKGl0KEJpZ0ludCgwKSxlKSl9LG5vbnBvc2l0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKEVlKEJpZ0ludCgwKSxlKSl9LG5vbm5lZ2F0aXZlKGUpe3JldHVybiB0aGlzLmNoZWNrKFJlKEJpZ0ludCgwKSxlKSl9LG11bHRpcGxlT2YoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhQdChlLHQpKX19KSk7ZnVuY3Rpb24gd2woZSl7cmV0dXJuICRmKFNuLGUpfWNvbnN0IExvPWYoIlpvZEJpZ0ludEZvcm1hdCIsKGUsdCk9PntmbS5pbml0KGUsdCksU24uaW5pdChlLHQpfSk7ZnVuY3Rpb24gU2woZSl7cmV0dXJuIFNmKExvLGUpfWZ1bmN0aW9uIF9sKGUpe3JldHVybiBfZihMbyxlKX1jb25zdCBrcj1mKCJab2RTeW1ib2wiLChlLHQpPT57Z20uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5CaygpfSk7ZnVuY3Rpb24gamwoZSl7cmV0dXJuIGpmKGtyLGUpfWNvbnN0IHlyPWYoIlpvZFVuZGVmaW5lZCIsKGUsdCk9PntibS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PkZrKCl9KTtmdW5jdGlvbiBvbihlKXtyZXR1cm4gVGYoeXIsZSl9Y29uc3QgJHI9ZigiWm9kTnVsbCIsKGUsdCk9Pnt2bS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PkhrKCl9KTtmdW5jdGlvbiBCbyhlKXtyZXR1cm4gQWYoJHIsZSl9Y29uc3Qgd3I9ZigiWm9kQW55IiwoZSx0KT0+e2ttLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+V2soKX0pO2Z1bmN0aW9uIEhvKCl7cmV0dXJuIHpmKHdyKX1jb25zdCBTcj1mKCJab2RVbmtub3duIiwoZSx0KT0+e3ltLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+S2soKX0pO2Z1bmN0aW9uIHRlKCl7cmV0dXJuIENmKFNyKX1jb25zdCBfcj1mKCJab2ROZXZlciIsKGUsdCk9PnskbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PlZrKCl9KTtmdW5jdGlvbiB4dChlKXtyZXR1cm4gTmYoX3IsZSl9Y29uc3QganI9ZigiWm9kVm9pZCIsKGUsdCk9Pnt3bS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PlVrKCl9KTtmdW5jdGlvbiBUbChlKXtyZXR1cm4gUGYoanIsZSl9Y29uc3QgRm89ZigiWm9kRGF0ZSIsKGUsdCk9PntTbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PkdrKCksZS5taW49KG4sbyk9PmUuY2hlY2soUmUobixvKSksZS5tYXg9KG4sbyk9PmUuY2hlY2soRWUobixvKSl9LGVvKHttaW5EYXRlOmU9Pntjb25zdHttaW5pbXVtOnR9PUJlKCk7cmV0dXJuIHQ/bmV3IERhdGUodCk6bnVsbH0sbWF4RGF0ZTplPT57Y29uc3R7bWF4aW11bTp0fT1CZSgpO3JldHVybiB0P25ldyBEYXRlKHQpOm51bGx9fSx7fSkpO2Z1bmN0aW9uIEFsKGUpe3JldHVybiB4ZihGbyxlKX1jb25zdCBUcj1mKCJab2RBcnJheSIsKGUsdCk9PntIdCgpLF9tLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+aXkoKSxlLmVsZW1lbnQ9dC5lbGVtZW50fSx7bWluKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soeXQoZSx0KSl9LG5vbmVtcHR5KGUpe3JldHVybiB0aGlzLmNoZWNrKHl0KDEsZSkpfSxtYXgoZSx0KXtyZXR1cm4gdGhpcy5jaGVjayhobihlLHQpKX0sbGVuZ3RoKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2socG4oZSx0KSl9LHVud3JhcCgpe3JldHVybiB0aGlzLmVsZW1lbnR9fSk7ZnVuY3Rpb24gUihlLHQpe3JldHVybiBSZihUcixlLHQpfWZ1bmN0aW9uIHpsKGUpe2NvbnN0IHQ9ZS5fem9kLmRlZi5zaGFwZTtyZXR1cm4ga2UoT2JqZWN0LmtleXModCkpfWNvbnN0IF9uPWYoIlpvZE9iamVjdCIsKGUsdCk9PntIdCgpLHptLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+Y3koKSwkaChlLCJzaGFwZSIsbj0+bi5fem9kLmRlZi5zaGFwZSwhMSl9LHtrZXlvZigpe3JldHVybiBrZShPYmplY3Qua2V5cyh0aGlzLl96b2QuZGVmLnNoYXBlKSl9LGNhdGNoYWxsKGUpe3JldHVybiB0aGlzLmNsb25lKFNlKHRoaXMuX3pvZC5kZWYse2NhdGNoYWxsOmV9KSl9LHBhc3N0aHJvdWdoKCl7cmV0dXJuIHRoaXMuY2xvbmUoU2UodGhpcy5fem9kLmRlZix7Y2F0Y2hhbGw6dGUoKX0pKX0sbG9vc2UoKXtyZXR1cm4gdGhpcy5jbG9uZShTZSh0aGlzLl96b2QuZGVmLHtjYXRjaGFsbDp0ZSgpfSkpfSxzdHJpY3QoKXtyZXR1cm4gdGhpcy5jbG9uZShTZSh0aGlzLl96b2QuZGVmLHtjYXRjaGFsbDp4dCgpfSkpfSxzdHJpcCgpe3JldHVybiB0aGlzLmNsb25lKFNlKHRoaXMuX3pvZC5kZWYse2NhdGNoYWxsOnZvaWQgMH0pKX0sZXh0ZW5kKGUpe3JldHVybiBkaCh0aGlzLGUpfSxzYWZlRXh0ZW5kKGUpe3JldHVybiBwaCh0aGlzLGUpfSxtZXJnZShlKXtyZXR1cm4gbWgodGhpcyxlKX0scGljayhlKXtyZXR1cm4gbGgodGhpcyxlKX0sb21pdChlKXtyZXR1cm4gdWgodGhpcyxlKX0scGFydGlhbCguLi5lKXtyZXR1cm4gTmEoQW4sdGhpcyxlWzBdKX0sZXhhY3RQYXJ0aWFsKC4uLmUpe3JldHVybiBOYShXbyx0aGlzLGVbMF0sImV4YWN0UGFydGlhbCIpfSxyZXF1aXJlZCguLi5lKXtyZXR1cm4gZmgoS28sdGhpcyxlWzBdKX19KTtmdW5jdGlvbiBrKGUsdCl7Y29uc3Qgbj17dHlwZToib2JqZWN0IixzaGFwZTplPz97fSwuLi53KHQpfTtyZXR1cm4gbmV3IF9uKG4pfWZ1bmN0aW9uIENsKGUsdCl7cmV0dXJuIG5ldyBfbih7dHlwZToib2JqZWN0IixzaGFwZTplLGNhdGNoYWxsOnh0KCksLi4udyh0KX0pfWZ1bmN0aW9uIGJlKGUsdCl7cmV0dXJuIG5ldyBfbih7dHlwZToib2JqZWN0IixzaGFwZTplLGNhdGNoYWxsOnRlKCksLi4udyh0KX0pfWNvbnN0IGpuPWYoIlpvZFVuaW9uIiwoZSx0KT0+e2FyLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+VWYoKSxlLm9wdGlvbnM9dC5vcHRpb25zfSk7ZnVuY3Rpb24gVShlLHQpe3JldHVybiBuZXcgam4oe3R5cGU6InVuaW9uIixvcHRpb25zOmUsLi4udyh0KX0pfWNvbnN0IEFyPWYoIlpvZFhvciIsKGUsdCk9Pntqbi5pbml0KGUsdCksQ20uaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5VZigpLGUub3B0aW9ucz10Lm9wdGlvbnN9KTtmdW5jdGlvbiBObChlLHQpe3JldHVybiBuZXcgQXIoe3R5cGU6InVuaW9uIixvcHRpb25zOmUsaW5jbHVzaXZlOiExLC4uLncodCl9KX1jb25zdCB6cj1mKCJab2REaXNjcmltaW5hdGVkVW5pb24iLChlLHQpPT57am4uaW5pdChlLHQpLFBtLmluaXQoZSx0KX0pO2Z1bmN0aW9uIFVvKGUsdCxuKXtyZXR1cm4gbmV3IHpyKHt0eXBlOiJ1bmlvbiIsb3B0aW9uczp0LGRpc2NyaW1pbmF0b3I6ZSwuLi53KG4pfSl9Y29uc3QgQ3I9ZigiWm9kSW50ZXJzZWN0aW9uIiwoZSx0KT0+e3htLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+bHkoKX0pO2Z1bmN0aW9uIFRuKGUsdCl7cmV0dXJuIG5ldyBDcih7dHlwZToiaW50ZXJzZWN0aW9uIixsZWZ0OmUscmlnaHQ6dH0pfWNvbnN0IE5yPWYoIlpvZFR1cGxlIiwoZSx0KT0+e0h0KCksRGkuaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT51eSgpfSx7cmVzdChlKXtyZXR1cm4gdGhpcy5jbG9uZSh7Li4udGhpcy5fem9kLmRlZixyZXN0OmV9KX0scGFydGlhbCgpe2NvbnN0IGU9dGhpcy5fem9kLmRlZjtpZihlLmNoZWNrcz8ubGVuZ3RoKXRocm93IG5ldyBFcnJvcigiLnBhcnRpYWwoKSBjYW5ub3QgYmUgdXNlZCBvbiB0dXBsZSBzY2hlbWFzIGNvbnRhaW5pbmcgcmVmaW5lbWVudHMiKTtyZXR1cm4gdGhpcy5jbG9uZSh7Li4uZSxpdGVtczplLml0ZW1zLm1hcCh0PT5uZXcgQW4oe3R5cGU6Im9wdGlvbmFsIixpbm5lclR5cGU6dH0pKX0pfX0pO2Z1bmN0aW9uIFByKGUsdCxuKXtjb25zdCBvPXQgaW5zdGFuY2VvZiBELHM9bz9uOnQscj1vP3Q6bnVsbDtyZXR1cm4gbmV3IE5yKHt0eXBlOiJ0dXBsZSIsaXRlbXM6ZSxyZXN0OnIsLi4udyhzKX0pfWNvbnN0IEl0PWYoIlpvZFJlY29yZCIsKGUsdCk9PntIdCgpLEltLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+ZHkoKSxlLmtleVR5cGU9dC5rZXlUeXBlLGUudmFsdWVUeXBlPXQudmFsdWVUeXBlfSk7ZnVuY3Rpb24gSyhlLHQsbil7cmV0dXJuIXR8fCF0Ll96b2Q/bmV3IEl0KHt0eXBlOiJyZWNvcmQiLGtleVR5cGU6ZygpLHZhbHVlVHlwZTplLC4uLncodCl9KTpuZXcgSXQoe3R5cGU6InJlY29yZCIsa2V5VHlwZTplLHZhbHVlVHlwZTp0LC4uLncobil9KX1mdW5jdGlvbiBQbChlLHQsbil7cmV0dXJuIG5ldyBJdCh7dHlwZToicmVjb3JkIixrZXlUeXBlOmUsdmFsdWVUeXBlOnQsLi4udyhuKSxwYXJ0aWFsOiEwfSl9ZnVuY3Rpb24geGwoZSx0LG4pe3JldHVybiBuZXcgSXQoe3R5cGU6InJlY29yZCIsa2V5VHlwZTplLHZhbHVlVHlwZTp0LG1vZGU6Imxvb3NlIiwuLi53KG4pfSl9Y29uc3QgeHI9ZigiWm9kTWFwIiwoZSx0KT0+e0h0KCksRW0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5yeSgpLGUua2V5VHlwZT10LmtleVR5cGUsZS52YWx1ZVR5cGU9dC52YWx1ZVR5cGUsZS5taW49KC4uLm4pPT5lLmNoZWNrKGx0KC4uLm4pKSxlLm5vbmVtcHR5PW49PmUuY2hlY2sobHQoMSxuKSksZS5tYXg9KC4uLm4pPT5lLmNoZWNrKEJ0KC4uLm4pKSxlLnNpemU9KC4uLm4pPT5lLmNoZWNrKGRuKC4uLm4pKX0pO2Z1bmN0aW9uIElsKGUsdCxuKXtyZXR1cm4gbmV3IHhyKHt0eXBlOiJtYXAiLGtleVR5cGU6ZSx2YWx1ZVR5cGU6dCwuLi53KG4pfSl9Y29uc3QgSXI9ZigiWm9kU2V0IiwoZSx0KT0+e0h0KCksUm0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5heSgpLGUubWluPSguLi5uKT0+ZS5jaGVjayhsdCguLi5uKSksZS5ub25lbXB0eT1uPT5lLmNoZWNrKGx0KDEsbikpLGUubWF4PSguLi5uKT0+ZS5jaGVjayhCdCguLi5uKSksZS5zaXplPSguLi5uKT0+ZS5jaGVjayhkbiguLi5uKSl9KTtmdW5jdGlvbiBFbChlLHQpe3JldHVybiBuZXcgSXIoe3R5cGU6InNldCIsdmFsdWVUeXBlOmUsLi4udyh0KX0pfWNvbnN0IEV0PWYoIlpvZEVudW0iLChlLHQpPT57T20uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obyxzLHIpPT5KaygpLGUuZW51bT10LmVudHJpZXMsZS5vcHRpb25zPVsuLi5lLl96b2QudmFsdWVzXTtjb25zdCBuPW5ldyBTZXQoT2JqZWN0LmtleXModC5lbnRyaWVzKSk7ZS5leHRyYWN0PShvLHMpPT57Y29uc3Qgcj17fTtmb3IoY29uc3QgaSBvZiBvKWlmKG4uaGFzKGkpKXJbaV09dC5lbnRyaWVzW2ldO2Vsc2UgdGhyb3cgbmV3IEVycm9yKGBLZXkgJHtpfSBub3QgZm91bmQgaW4gZW51bWApO3JldHVybiBuZXcgRXQoey4uLnQsY2hlY2tzOltdLC4uLncocyksZW50cmllczpyfSl9LGUuZXhjbHVkZT0obyxzKT0+e2NvbnN0IHI9ey4uLnQuZW50cmllc307Zm9yKGNvbnN0IGkgb2YgbylpZihuLmhhcyhpKSlkZWxldGUgcltpXTtlbHNlIHRocm93IG5ldyBFcnJvcihgS2V5ICR7aX0gbm90IGZvdW5kIGluIGVudW1gKTtyZXR1cm4gbmV3IEV0KHsuLi50LGNoZWNrczpbXSwuLi53KHMpLGVudHJpZXM6cn0pfX0pO2Z1bmN0aW9uIGtlKGUsdCl7Y29uc3Qgbj1BcnJheS5pc0FycmF5KGUpP09iamVjdC5mcm9tRW50cmllcyhlLm1hcChvPT5bbyxvXSkpOmU7cmV0dXJuIG5ldyBFdCh7dHlwZToiZW51bSIsZW50cmllczpuLC4uLncodCl9KX1mdW5jdGlvbiBSbChlLHQpe3JldHVybiBuZXcgRXQoe3R5cGU6ImVudW0iLGVudHJpZXM6ZSwuLi53KHQpfSl9Y29uc3QgRXI9ZigiWm9kTGl0ZXJhbCIsKGUsdCk9PntNbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PllrKCksZS52YWx1ZXM9bmV3IFNldCh0LnZhbHVlcyksT2JqZWN0LmRlZmluZVByb3BlcnR5KGUsInZhbHVlIix7Z2V0KCl7aWYodC52YWx1ZXMubGVuZ3RoPjEpdGhyb3cgbmV3IEVycm9yKCJUaGlzIHNjaGVtYSBjb250YWlucyBtdWx0aXBsZSB2YWxpZCBsaXRlcmFsIHZhbHVlcy4gVXNlIGAudmFsdWVzYCBpbnN0ZWFkLiIpO3JldHVybiB0LnZhbHVlc1swXX19KX0pO2Z1bmN0aW9uIGIoZSx0KXtyZXR1cm4gbmV3IEVyKHt0eXBlOiJsaXRlcmFsIix2YWx1ZXM6QXJyYXkuaXNBcnJheShlKT9lOltlXSwuLi53KHQpfSl9Y29uc3QgUnI9ZigiWm9kRmlsZSIsKGUsdCk9PntabS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PmV5KCksZS5taW49KG4sbyk9PmUuY2hlY2sobHQobixvKSksZS5tYXg9KG4sbyk9PmUuY2hlY2soQnQobixvKSksZS5taW1lPShuLG8pPT5lLmNoZWNrKGJvKEFycmF5LmlzQXJyYXkobik/bjpbbl0sbykpfSk7ZnVuY3Rpb24gT2woZSl7cmV0dXJuIE9mKFJyLGUpfWNvbnN0IE9yPWYoIlpvZFRyYW5zZm9ybSIsKGUsdCk9PntIdCgpLHFtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+c3koKSxlLl96b2QucGFyc2U9KG4sbyk9PntpZihvLmRpcmVjdGlvbj09PSJiYWNrd2FyZCIpdGhyb3cgbmV3IFFzKGUuY29uc3RydWN0b3IubmFtZSk7bi5hZGRJc3N1ZT1yPT57aWYodHlwZW9mIHI9PSJzdHJpbmciKW4uaXNzdWVzLnB1c2godG4ocixuLnZhbHVlLHQpKTtlbHNle2NvbnN0IGk9cjtpLmZhdGFsJiYoaS5jb250aW51ZT0hMSksaS5jb2RlPz8oaS5jb2RlPSJjdXN0b20iKSwiaW5wdXQiaW4gaXx8KGkuaW5wdXQ9bi52YWx1ZSksaS5pbnN0Pz8oaS5pbnN0PWUpLG4uaXNzdWVzLnB1c2godG4oaSkpfX07Y29uc3Qgcz10LnRyYW5zZm9ybShuLnZhbHVlLG4pO3JldHVybiBzIGluc3RhbmNlb2YgUHJvbWlzZT9zLnRoZW4ocj0+KG4udmFsdWU9cixuKSk6KG4udmFsdWU9cyxuKX19KTtmdW5jdGlvbiBWbyhlKXtyZXR1cm4gbmV3IE9yKHt0eXBlOiJ0cmFuc2Zvcm0iLHRyYW5zZm9ybTplfSl9Y29uc3QgQW49ZigiWm9kT3B0aW9uYWwiLChlLHQpPT57TGkuaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5WZigpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZX0pO2Z1bmN0aW9uIGFlKGUpe3JldHVybiBuZXcgQW4oe3R5cGU6Im9wdGlvbmFsIixpbm5lclR5cGU6ZX0pfWNvbnN0IFdvPWYoIlpvZEV4YWN0T3B0aW9uYWwiLChlLHQpPT57RG0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5WZigpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZX0pO2Z1bmN0aW9uIE1yKGUpe3JldHVybiBuZXcgV28oe3R5cGU6Im9wdGlvbmFsIixpbm5lclR5cGU6ZX0pfWNvbnN0IFpyPWYoIlpvZE51bGxhYmxlIiwoZSx0KT0+e0xtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+aHkoKSxlLnVud3JhcD0oKT0+ZS5fem9kLmRlZi5pbm5lclR5cGV9KTtmdW5jdGlvbiBzbihlKXtyZXR1cm4gbmV3IFpyKHt0eXBlOiJudWxsYWJsZSIsaW5uZXJUeXBlOmV9KX1mdW5jdGlvbiBNbChlKXtyZXR1cm4gYWUoc24oZSkpfWNvbnN0IHFyPWYoIlpvZERlZmF1bHQiLChlLHQpPT57Qm0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5teSgpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZSxlLnJlbW92ZURlZmF1bHQ9ZS51bndyYXB9KTtmdW5jdGlvbiBEcihlLHQpe3JldHVybiBuZXcgcXIoe3R5cGU6ImRlZmF1bHQiLGlubmVyVHlwZTplLGdldCBkZWZhdWx0VmFsdWUoKXtyZXR1cm4gdHlwZW9mIHQ9PSJmdW5jdGlvbiI/dCgpOlZzKHQpfX0pfWNvbnN0IExyPWYoIlpvZFByZWZhdWx0IiwoZSx0KT0+e0htLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+ZnkoKSxlLnVud3JhcD0oKT0+ZS5fem9kLmRlZi5pbm5lclR5cGV9KTtmdW5jdGlvbiBCcihlLHQpe3JldHVybiBuZXcgTHIoe3R5cGU6InByZWZhdWx0Iixpbm5lclR5cGU6ZSxnZXQgZGVmYXVsdFZhbHVlKCl7cmV0dXJuIHR5cGVvZiB0PT0iZnVuY3Rpb24iP3QoKTpWcyh0KX19KX1jb25zdCBLbz1mKCJab2ROb25PcHRpb25hbCIsKGUsdCk9PntGbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PnB5KCksZS51bndyYXA9KCk9PmUuX3pvZC5kZWYuaW5uZXJUeXBlfSk7ZnVuY3Rpb24gSHIoZSx0KXtyZXR1cm4gbmV3IEtvKHt0eXBlOiJub25vcHRpb25hbCIsaW5uZXJUeXBlOmUsLi4udyh0KX0pfWNvbnN0IEZyPWYoIlpvZFN1Y2Nlc3MiLChlLHQpPT57VW0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT50eSgpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZX0pO2Z1bmN0aW9uIFpsKGUpe3JldHVybiBuZXcgRnIoe3R5cGU6InN1Y2Nlc3MiLGlubmVyVHlwZTplfSl9Y29uc3QgVXI9ZigiWm9kQ2F0Y2giLChlLHQpPT57Vm0uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT5neSgpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZSxlLnJlbW92ZUNhdGNoPWUudW53cmFwfSk7ZnVuY3Rpb24gVnIoZSx0KXtyZXR1cm4gbmV3IFVyKHt0eXBlOiJjYXRjaCIsaW5uZXJUeXBlOmUsY2F0Y2hWYWx1ZTp0eXBlb2YgdD09ImZ1bmN0aW9uIj90OmxpKHQpfSl9Y29uc3QgV3I9ZigiWm9kTmFOIiwoZSx0KT0+e1dtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+UWsoKX0pO2Z1bmN0aW9uIHFsKGUpe3JldHVybiBFZihXcixlKX1jb25zdCB6bj1mKCJab2RQaXBlIiwoZSx0KT0+e0JpLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+YnkoKSxlLmluPXQuaW4sZS5vdXQ9dC5vdXR9KTtmdW5jdGlvbiBLbihlLHQpe3JldHVybiBuZXcgem4oe3R5cGU6InBpcGUiLGluOmUsb3V0OnR9KX1jb25zdCBDbj1mKCJab2RDb2RlYyIsKGUsdCk9Pnt6bi5pbml0KGUsdCksSGkuaW5pdChlLHQpfSk7ZnVuY3Rpb24gRGwoZSx0LG4pe3JldHVybiBuZXcgQ24oe3R5cGU6InBpcGUiLGluOmUsb3V0OnQsdHJhbnNmb3JtOm4uZGVjb2RlLHJldmVyc2VUcmFuc2Zvcm06bi5lbmNvZGV9KX1mdW5jdGlvbiBMbChlKXtjb25zdCB0PWUuX3pvZC5kZWY7cmV0dXJuIG5ldyBDbih7dHlwZToicGlwZSIsaW46dC5vdXQsb3V0OnQuaW4sdHJhbnNmb3JtOnQucmV2ZXJzZVRyYW5zZm9ybSxyZXZlcnNlVHJhbnNmb3JtOnQudHJhbnNmb3JtfSl9Y29uc3QgS3I9ZigiWm9kUHJlcHJvY2VzcyIsKGUsdCk9Pnt6bi5pbml0KGUsdCksS20uaW5pdChlLHQpfSksR3I9ZigiWm9kUmVhZG9ubHkiLChlLHQpPT57R20uaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT52eSgpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmlubmVyVHlwZX0pO2Z1bmN0aW9uIEpyKGUpe3JldHVybiBuZXcgR3Ioe3R5cGU6InJlYWRvbmx5Iixpbm5lclR5cGU6ZX0pfWNvbnN0IFlyPWYoIlpvZFRlbXBsYXRlTGl0ZXJhbCIsKGUsdCk9PntKbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9PlhrKCl9KTtmdW5jdGlvbiBCbChlLHQpe3JldHVybiBuZXcgWXIoe3R5cGU6InRlbXBsYXRlX2xpdGVyYWwiLHBhcnRzOmUsLi4udyh0KX0pfWNvbnN0IFFyPWYoIlpvZExhenkiLChlLHQpPT57RmkuaW5pdChlLHQpLEIuaW5pdChlLHQpLGUuX3pvZC5wcm9jZXNzSlNPTlNjaGVtYT0obixvLHMpPT55eSgpLGUudW53cmFwPSgpPT5lLl96b2QuZGVmLmdldHRlcigpfSk7ZnVuY3Rpb24gWHIoZSl7cmV0dXJuIG5ldyBRcih7dHlwZToibGF6eSIsZ2V0dGVyOmV9KX1jb25zdCBlYT1mKCJab2RQcm9taXNlIiwoZSx0KT0+e1FtLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+a3koKSxlLnVud3JhcD0oKT0+ZS5fem9kLmRlZi5pbm5lclR5cGV9KTtmdW5jdGlvbiBIbChlKXtyZXR1cm4gbmV3IGVhKHt0eXBlOiJwcm9taXNlIixpbm5lclR5cGU6ZX0pfWNvbnN0IHRhPWYoIlpvZEZ1bmN0aW9uIiwoZSx0KT0+e1ltLmluaXQoZSx0KSxCLmluaXQoZSx0KSxlLl96b2QucHJvY2Vzc0pTT05TY2hlbWE9KG4sbyxzKT0+b3koKX0pO2Z1bmN0aW9uIHJuKGUpe3JldHVybiBuZXcgdGEoe3R5cGU6ImZ1bmN0aW9uIixpbnB1dDpBcnJheS5pc0FycmF5KGU/LmlucHV0KT9QcihlPy5pbnB1dCk6ZT8uaW5wdXQ/P1IodGUoKSksb3V0cHV0OmU/Lm91dHB1dD8/dGUoKX0pfWNvbnN0IE5uPWYoIlpvZEN1c3RvbSIsKGUsdCk9PntYbS5pbml0KGUsdCksQi5pbml0KGUsdCksZS5fem9kLnByb2Nlc3NKU09OU2NoZW1hPShuLG8scyk9Pm55KCl9KTtmdW5jdGlvbiBGbChlKXtjb25zdCB0PW5ldyBjZSh7Y2hlY2s6ImN1c3RvbSJ9KTtyZXR1cm4gdC5fem9kLmNoZWNrPWUsdH1mdW5jdGlvbiBuYShlLHQpe3JldHVybiBNZihObixlPz8oKCk9PiEwKSx0KX1mdW5jdGlvbiBvYShlLHQ9e30pe3JldHVybiBaZihObixlLHQpfWZ1bmN0aW9uIHNhKGUsdCl7cmV0dXJuIHFmKGUsdCl9Y29uc3QgVWw9TGYsVmw9QmYscmE9ZigiWm9kSW5zdGFuY2VPZiIsKGUsdCk9PntObi5pbml0KGUsdCl9LHtwcm9wZXJ0aWVzKGUsdCl7cmV0dXJuIHRoaXMuY2hlY2soZ28oZSx0KSl9fSk7ZnVuY3Rpb24gV2woZSx0PXt9KXtjb25zdCBuPW5ldyByYSh7dHlwZToiY3VzdG9tIixjaGVjazoiY3VzdG9tIixmbjpvPT5vIGluc3RhbmNlb2YgZSxhYm9ydDohMCwuLi53KHQpfSk7cmV0dXJuIG4uX3pvZC5iYWcuQ2xhc3M9ZSxuLl96b2QuY2hlY2s9bz0+e28udmFsdWUgaW5zdGFuY2VvZiBlfHxvLmlzc3Vlcy5wdXNoKHtjb2RlOiJpbnZhbGlkX3R5cGUiLGV4cGVjdGVkOmUubmFtZSxpbnB1dDpvLnZhbHVlLGluc3Q6bixwYXRoOlsuLi5uLl96b2QuZGVmLnBhdGg/P1tdXX0pfSxufWNvbnN0IEtsPSguLi5lKT0+SGYoe0NvZGVjOkNuLEJvb2xlYW46d24sU3RyaW5nOmZufSwuLi5lKTtmdW5jdGlvbiBHbChlKXtjb25zdCB0PVhyKCgpPT5VKFtnKGUpLEwoKSxuZSgpLEJvKCksUih0KSxLKGcoKSx0KV0pKTtyZXR1cm4gdH1mdW5jdGlvbiBHbyhlLHQpe3JldHVybiBuZXcgS3Ioe3R5cGU6InBpcGUiLGluOlZvKGUpLG91dDp0fSl9Y29uc3QgQXk9T2JqZWN0LmZyZWV6ZShPYmplY3QuZGVmaW5lUHJvcGVydHkoe19fcHJvdG9fXzpudWxsLFpvZEFueTp3cixab2RBcnJheTpUcixab2RCYXNlNjQ6TW8sWm9kQmFzZTY0VVJMOlpvLFpvZEJpZ0ludDpTbixab2RCaWdJbnRGb3JtYXQ6TG8sWm9kQm9vbGVhbjp3bixab2RDSURSdjQ6Um8sWm9kQ0lEUnY2Ok9vLFpvZENVSUQ6em8sWm9kQ1VJRDI6Q28sWm9kQ2F0Y2g6VXIsWm9kQ29kZWM6Q24sWm9kQ3JlZGl0Q2FyZDpicixab2RDdXN0b206Tm4sWm9kQ3VzdG9tU3RyaW5nRm9ybWF0Ond0LFpvZERhdGU6Rm8sWm9kRGVmYXVsdDpxcixab2REaXNjcmltaW5hdGVkVW5pb246enIsWm9kRTE2NDpxbyxab2RFbWFpbDpfbyxab2RFbW9qaTpUbyxab2RFbnVtOkV0LFpvZEV4YWN0T3B0aW9uYWw6V28sWm9kRmlsZTpScixab2RGdW5jdGlvbjp0YSxab2RHVUlEOmpvLFpvZElCQU46dnIsWm9kSVB2NDpJbyxab2RJUHY2OkVvLFpvZElTT0RhdGU6Ym4sWm9kSVNPRGF0ZVRpbWU6Z24sWm9kSVNPRHVyYXRpb246a24sWm9kSVNPVGltZTp2bixab2RJbnN0YW5jZU9mOnJhLFpvZEludGVyc2VjdGlvbjpDcixab2RKV1Q6RG8sWm9kS1NVSUQ6eG8sWm9kTGF6eTpRcixab2RMaXRlcmFsOkVyLFpvZE1BQzpncixab2RNYXA6eHIsWm9kTmFOOldyLFpvZE5hbm9JRDpBbyxab2ROZXZlcjpfcixab2ROb25PcHRpb25hbDpLbyxab2ROdWxsOiRyLFpvZE51bGxhYmxlOlpyLFpvZE51bWJlcjokbixab2ROdW1iZXJGb3JtYXQ6U3QsWm9kT2JqZWN0Ol9uLFpvZE9wdGlvbmFsOkFuLFpvZFBpcGU6em4sWm9kUHJlZmF1bHQ6THIsWm9kUHJlcHJvY2VzczpLcixab2RQcm9taXNlOmVhLFpvZFJlYWRvbmx5OkdyLFpvZFJlY29yZDpJdCxab2RTZXQ6SXIsWm9kU3RyaW5nOmZuLFpvZFN0cmluZ0Zvcm1hdDpvZSxab2RTdWNjZXNzOkZyLFpvZFN5bWJvbDprcixab2RUZW1wbGF0ZUxpdGVyYWw6WXIsWm9kVHJhbnNmb3JtOk9yLFpvZFR1cGxlOk5yLFpvZFR5cGU6Qixab2RVTElEOk5vLFpvZFVSTDp5bixab2RVVUlEOkdlLFpvZFVuZGVmaW5lZDp5cixab2RVbmlvbjpqbixab2RVbmtub3duOlNyLFpvZFZvaWQ6anIsWm9kWElEOlBvLFpvZFhvcjpBcixfWm9kU3RyaW5nOlNvLF9kZWZhdWx0OkRyLF9mdW5jdGlvbjpybixhbnk6SG8sYXJyYXk6UixiYXNlNjQ6aWwsYmFzZTY0dXJsOmNsLGJpZ2ludDp3bCxib29sZWFuOm5lLGNhdGNoOlZyLGNoZWNrOkZsLGNpZHJ2NDpybCxjaWRydjY6YWwsY29kZWM6RGwsY3JlZGl0Q2FyZDp1bCxjdWlkOlljLGN1aWQyOlFjLGN1cnJlbmN5Q29kZTpnbCxjdXN0b206bmEsZGF0ZTpBbCxkZXNjcmliZTpVbCxkaXNjcmltaW5hdGVkVW5pb246VW8sZTE2NDpsbCxlbWFpbDpMYyxlbW9qaTpHYyxlbnVtOmtlLGV4YWN0T3B0aW9uYWw6TXIsZmlsZTpPbCxmbG9hdDMyOnZsLGZsb2F0NjQ6a2wsZnVuY3Rpb246cm4sZ3VpZDpCYyxoYXNoOmJsLGhleDpmbCxob3N0bmFtZTptbCxodHRwVXJsOktjLGliYW46ZGwsaW5zdGFuY2VvZjpXbCxpbnQ6V24saW50MzI6eWwsaW50NjQ6U2wsaW50ZXJzZWN0aW9uOlRuLGludmVydENvZGVjOkxsLGlwdjQ6bmwsaXB2NjpzbCxqc29uOkdsLGp3dDpobCxrZXlvZjp6bCxrc3VpZDp0bCxsYXp5OlhyLGxpdGVyYWw6Yixsb29zZU9iamVjdDpiZSxsb29zZVJlY29yZDp4bCxtYWM6b2wsbWFwOklsLG1ldGE6VmwsbmFuOnFsLG5hbm9pZDpKYyxuYXRpdmVFbnVtOlJsLG5ldmVyOnh0LG5vbm9wdGlvbmFsOkhyLG51bGw6Qm8sbnVsbGFibGU6c24sbnVsbGlzaDpNbCxudW1iZXI6TCxvYmplY3Q6ayxvcHRpb25hbDphZSxwYXJ0aWFsUmVjb3JkOlBsLHBpcGU6S24scHJlZmF1bHQ6QnIscHJlcHJvY2VzczpHbyxwcm9taXNlOkhsLHJlYWRvbmx5OkpyLHJlY29yZDpLLHJlZmluZTpvYSxzZXQ6RWwsc3RyaWN0T2JqZWN0OkNsLHN0cmluZzpnLHN0cmluZ0Zvcm1hdDpwbCxzdHJpbmdib29sOktsLHN1Y2Nlc3M6Wmwsc3VwZXJSZWZpbmU6c2Esc3ltYm9sOmpsLHRlbXBsYXRlTGl0ZXJhbDpCbCx0cmFuc2Zvcm06Vm8sdHVwbGU6UHIsdWludDMyOiRsLHVpbnQ2NDpfbCx1bGlkOlhjLHVuZGVmaW5lZDpvbix1bmlvbjpVLHVua25vd246dGUsdXJsOldjLHV1aWQ6SGMsdXVpZHY0OkZjLHV1aWR2NjpVYyx1dWlkdjc6VmMsdm9pZDpUbCx4aWQ6ZWwseG9yOk5sfSxTeW1ib2wudG9TdHJpbmdUYWcse3ZhbHVlOiJNb2R1bGUifSkpLFlmPXtpbnZhbGlkX3R5cGU6ImludmFsaWRfdHlwZSIsdG9vX2JpZzoidG9vX2JpZyIsdG9vX3NtYWxsOiJ0b29fc21hbGwiLGludmFsaWRfZm9ybWF0OiJpbnZhbGlkX2Zvcm1hdCIsbm90X211bHRpcGxlX29mOiJub3RfbXVsdGlwbGVfb2YiLHVucmVjb2duaXplZF9rZXlzOiJ1bnJlY29nbml6ZWRfa2V5cyIsaW52YWxpZF91bmlvbjoiaW52YWxpZF91bmlvbiIsaW52YWxpZF9rZXk6ImludmFsaWRfa2V5IixpbnZhbGlkX2VsZW1lbnQ6ImludmFsaWRfZWxlbWVudCIsaW52YWxpZF92YWx1ZToiaW52YWxpZF92YWx1ZSIsY3VzdG9tOiJjdXN0b20ifTtmdW5jdGlvbiBRZihlKXttZSh7Y3VzdG9tRXJyb3I6ZX0pfWZ1bmN0aW9uIFhmKCl7cmV0dXJuIG1lKCkuY3VzdG9tRXJyb3J9dmFyIFBzO1BzfHwoUHM9e30pO2Z1bmN0aW9uIGVnKGUpe3JldHVybiB3YyhnbixlKX1mdW5jdGlvbiB6eShlKXtyZXR1cm4gU2MoYm4sZSl9ZnVuY3Rpb24gQ3koZSl7cmV0dXJuIF9jKHZuLGUpfWZ1bmN0aW9uIE55KGUpe3JldHVybiBqYyhrbixlKX1jb25zdCBKbD1PYmplY3QuZnJlZXplKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7X19wcm90b19fOm51bGwsWm9kSVNPRGF0ZTpibixab2RJU09EYXRlVGltZTpnbixab2RJU09EdXJhdGlvbjprbixab2RJU09UaW1lOnZuLGRhdGU6enksZGF0ZXRpbWU6ZWcsZHVyYXRpb246TnksdGltZTpDeX0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKSxDPXsuLi5BeSwuLi5qeSxpc286Smx9LFB5PW5ldyBTZXQoWyIkc2NoZW1hIiwiJHJlZiIsIiRkZWZzIiwiZGVmaW5pdGlvbnMiLCIkaWQiLCJpZCIsIiRjb21tZW50IiwiJGFuY2hvciIsIiR2b2NhYnVsYXJ5IiwiJGR5bmFtaWNSZWYiLCIkZHluYW1pY0FuY2hvciIsInR5cGUiLCJlbnVtIiwiY29uc3QiLCJhbnlPZiIsIm9uZU9mIiwiYWxsT2YiLCJub3QiLCJwcm9wZXJ0aWVzIiwicmVxdWlyZWQiLCJhZGRpdGlvbmFsUHJvcGVydGllcyIsInBhdHRlcm5Qcm9wZXJ0aWVzIiwicHJvcGVydHlOYW1lcyIsIm1pblByb3BlcnRpZXMiLCJtYXhQcm9wZXJ0aWVzIiwiaXRlbXMiLCJwcmVmaXhJdGVtcyIsImFkZGl0aW9uYWxJdGVtcyIsIm1pbkl0ZW1zIiwibWF4SXRlbXMiLCJ1bmlxdWVJdGVtcyIsImNvbnRhaW5zIiwibWluQ29udGFpbnMiLCJtYXhDb250YWlucyIsIm1pbkxlbmd0aCIsIm1heExlbmd0aCIsInBhdHRlcm4iLCJmb3JtYXQiLCJtaW5pbXVtIiwibWF4aW11bSIsImV4Y2x1c2l2ZU1pbmltdW0iLCJleGNsdXNpdmVNYXhpbXVtIiwibXVsdGlwbGVPZiIsImRlc2NyaXB0aW9uIiwiZGVmYXVsdCIsImNvbnRlbnRFbmNvZGluZyIsImNvbnRlbnRNZWRpYVR5cGUiLCJjb250ZW50U2NoZW1hIiwidW5ldmFsdWF0ZWRJdGVtcyIsInVuZXZhbHVhdGVkUHJvcGVydGllcyIsImlmIiwidGhlbiIsImVsc2UiLCJkZXBlbmRlbnRTY2hlbWFzIiwiZGVwZW5kZW50UmVxdWlyZWQiLCJudWxsYWJsZSIsInJlYWRPbmx5Il0pO2Z1bmN0aW9uIHh5KGUsdCl7Y29uc3Qgbj1lLiRzY2hlbWE7cmV0dXJuIG49PT0iaHR0cHM6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQvMjAyMC0xMi9zY2hlbWEiPyJkcmFmdC0yMDIwLTEyIjpuPT09Imh0dHA6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQtMDcvc2NoZW1hIyI/ImRyYWZ0LTciOm49PT0iaHR0cDovL2pzb24tc2NoZW1hLm9yZy9kcmFmdC0wNC9zY2hlbWEjIj8iZHJhZnQtNCI6dD8/ImRyYWZ0LTIwMjAtMTIifWZ1bmN0aW9uIGtkKGUsdCl7cmV0dXJuIGUubWFwKChuLG8pPT5vPHQ/bjpuLm9wdGlvbmFsKCkpfWZ1bmN0aW9uIEl5KGUpe3JldHVybiBlLnJlcGxhY2UoL34xL2csIi8iKS5yZXBsYWNlKC9+MC9nLCJ+Iil9ZnVuY3Rpb24gRXkoZSx0KXtpZighZS5zdGFydHNXaXRoKCIjIikpdGhyb3cgbmV3IEVycm9yKCJFeHRlcm5hbCAkcmVmIGlzIG5vdCBzdXBwb3J0ZWQsIG9ubHkgbG9jYWwgcmVmcyAoIy8uLi4pIGFyZSBhbGxvd2VkIik7Y29uc3Qgbj1lLnNsaWNlKDEpLnNwbGl0KCIvIikuZmlsdGVyKEJvb2xlYW4pO2lmKG4ubGVuZ3RoPT09MClyZXR1cm4gdC5yb290U2NoZW1hO2NvbnN0IG89dC52ZXJzaW9uPT09ImRyYWZ0LTIwMjAtMTIiPyIkZGVmcyI6ImRlZmluaXRpb25zIjtpZihuWzBdPT09byl7Y29uc3Qgcz1uWzFdPT09dm9pZCAwP3ZvaWQgMDpJeShuWzFdKTtpZighc3x8IXQuZGVmc1tzXSl0aHJvdyBuZXcgRXJyb3IoYFJlZmVyZW5jZSBub3QgZm91bmQ6ICR7ZX1gKTtyZXR1cm4gdC5kZWZzW3NdfXRocm93IG5ldyBFcnJvcihgUmVmZXJlbmNlIG5vdCBmb3VuZDogJHtlfWApfWZ1bmN0aW9uIFJ5KGUsdCl7cmV0dXJuIEMudHJhbnNmb3JtKG89Pm8pLmNoZWNrKG89Pntjb25zdCBzPW8udmFsdWU7aWYodHlwZW9mIHMhPSJvYmplY3QifHxzPT09bnVsbHx8QXJyYXkuaXNBcnJheShzKSlyZXR1cm47Y29uc3Qgcj1PYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyhzKTtpZih0Lm1pblByb3BlcnRpZXMhPT12b2lkIDAmJnIubGVuZ3RoPHQubWluUHJvcGVydGllcyYmby5pc3N1ZXMucHVzaCh7b3JpZ2luOiJvYmplY3QiLGNvZGU6InRvb19zbWFsbCIsbWluaW11bTp0Lm1pblByb3BlcnRpZXMsaW5jbHVzaXZlOiEwLG1lc3NhZ2U6YFRvbyBzbWFsbDogZXhwZWN0ZWQgb2JqZWN0IHRvIGhhdmUgPj0ke3QubWluUHJvcGVydGllc30gcHJvcGVydGllc2AsaW5wdXQ6cyxpbnN0OmUsY29udGludWU6ITB9KSx0Lm1heFByb3BlcnRpZXMhPT12b2lkIDAmJnIubGVuZ3RoPnQubWF4UHJvcGVydGllcyYmby5pc3N1ZXMucHVzaCh7b3JpZ2luOiJvYmplY3QiLGNvZGU6InRvb19iaWciLG1heGltdW06dC5tYXhQcm9wZXJ0aWVzLGluY2x1c2l2ZTohMCxtZXNzYWdlOmBUb28gYmlnOiBleHBlY3RlZCBvYmplY3QgdG8gaGF2ZSA8PSR7dC5tYXhQcm9wZXJ0aWVzfSBwcm9wZXJ0aWVzYCxpbnB1dDpzLGluc3Q6ZSxjb250aW51ZTohMH0pLHQua2V5U2NoZW1hKWZvcihjb25zdCBpIG9mIHIpe2NvbnN0IGM9dC5rZXlTY2hlbWEuc2FmZVBhcnNlKGkpO2Muc3VjY2Vzc3x8by5pc3N1ZXMucHVzaCh7Y29kZToiaW52YWxpZF9rZXkiLG9yaWdpbjoicmVjb3JkIixpc3N1ZXM6Yy5lcnJvci5pc3N1ZXMsaW5wdXQ6aSxwYXRoOltpXSxjb250aW51ZTohMH0pfX0pLnBpcGUoZSl9ZnVuY3Rpb24gcWEoZSx0KXtpZihlPT09bnVsbClyZXR1cm4ieiI7Y29uc3Qgbj10eXBlb2YgZTtpZihuIT09Im9iamVjdCIpe2lmKG49PT0ibnVtYmVyIiYmTnVtYmVyLmlzTmFOKGUpKXJldHVybiBudWxsO2NvbnN0IG89U3RyaW5nKGUpO3JldHVybmAke25bMF19JHtvLmxlbmd0aH06JHtvfWB9aWYodC5oYXMoZSkpcmV0dXJuIG51bGw7dC5hZGQoZSk7dHJ5e2lmKEFycmF5LmlzQXJyYXkoZSkpe2NvbnN0IHI9W107Zm9yKGNvbnN0IGkgb2YgZSl7Y29uc3QgYz1xYShpLHQpO2lmKGM9PT1udWxsKXJldHVybiBudWxsO3IucHVzaChjKX1yZXR1cm5gYSR7ci5sZW5ndGh9Olske3Iuam9pbigiLCIpfV1gfWNvbnN0IG89T2JqZWN0LmtleXMoZSkuc29ydCgpLHM9W107Zm9yKGNvbnN0IHIgb2Ygbyl7Y29uc3QgaT1xYShlW3JdLHQpO2lmKGk9PT1udWxsKXJldHVybiBudWxsO3MucHVzaChgJHtyLmxlbmd0aH06JHtyfT0ke2l9YCl9cmV0dXJuYG8ke3MubGVuZ3RofTp7JHtzLmpvaW4oIiwiKX19YH1maW5hbGx5e3QuZGVsZXRlKGUpfX1jb25zdCBPeT1uZXcgU2V0KFsiaXRlbXMiLCJwcmVmaXhJdGVtcyIsImFkZGl0aW9uYWxJdGVtcyIsImFkZGl0aW9uYWxQcm9wZXJ0aWVzIiwiY29udGFpbnMiLCJwcm9wZXJ0eU5hbWVzIiwibm90IiwiaWYiLCJ0aGVuIiwiZWxzZSIsImFsbE9mIiwiYW55T2YiLCJvbmVPZiIsInVuZXZhbHVhdGVkSXRlbXMiLCJ1bmV2YWx1YXRlZFByb3BlcnRpZXMiLCJjb250ZW50U2NoZW1hIl0pLE15PW5ldyBTZXQoWyJwcm9wZXJ0aWVzIiwicGF0dGVyblByb3BlcnRpZXMiLCJkZXBlbmRlbnRTY2hlbWFzIiwiZGVwZW5kZW5jaWVzIiwiJGRlZnMiLCJkZWZpbml0aW9ucyJdKTtmdW5jdGlvbiBMbihlKXtyZXR1cm4gdHlwZW9mIGUhPSJvYmplY3QifHxlPT09bnVsbD8hMTpBcnJheS5pc0FycmF5KGUpP2Uuc29tZShMbik6dHlwZW9mIGUuJHJlZj09InN0cmluZyI/ITA6T2JqZWN0LmVudHJpZXMoZSkuc29tZSgoW3Qsbl0pPT5PeS5oYXModCk/TG4obik6IU15Lmhhcyh0KXx8dHlwZW9mIG4hPSJvYmplY3QifHxuPT09bnVsbD8hMTpPYmplY3QudmFsdWVzKG4pLnNvbWUoTG4pKX1mdW5jdGlvbiB5ZChlKXtyZXR1cm4gZT09PTE/ImVsZW1lbnQiOiJlbGVtZW50cyJ9ZnVuY3Rpb24gWnkoZSx0KXtyZXR1cm4gQy50cmFuc2Zvcm0obz0+bykuY2hlY2sobz0+e2NvbnN0IHM9by52YWx1ZTtpZihBcnJheS5pc0FycmF5KHMpKXtpZih0LnVuaXF1ZUl0ZW1zPT09ITApe2NvbnN0IHI9bmV3IE1hcDtmb3IobGV0IGk9MDtpPHMubGVuZ3RoO2krKyl7Y29uc3QgYz1xYShzW2ldLG5ldyBTZXQpO2lmKGM9PT1udWxsKWNvbnRpbnVlO2NvbnN0IGg9ci5nZXQoYyk7aWYoaD09PXZvaWQgMCl7ci5zZXQoYyxpKTtjb250aW51ZX1vLmlzc3Vlcy5wdXNoKHtjb2RlOiJjdXN0b20iLG1lc3NhZ2U6YEFycmF5IGl0ZW1zIG11c3QgYmUgdW5pcXVlOiBlbGVtZW50IGF0IGluZGV4ICR7aX0gZHVwbGljYXRlcyB0aGUgb25lIGF0IGluZGV4ICR7aH1gLGlucHV0OnMscGF0aDpbaV0sY29udGludWU6ITB9KX19aWYodC5jb250YWluc1NjaGVtYSl7Y29uc3Qgcj10Lm1pbkNvbnRhaW5zPz8xLGk9dC5tYXhDb250YWlucyE9PXZvaWQgMD90Lm1heENvbnRhaW5zKzE6TnVtYmVyLlBPU0lUSVZFX0lORklOSVRZO2xldCBjPTA7Zm9yKGNvbnN0IGggb2YgcylpZih0LmNvbnRhaW5zU2NoZW1hLnNhZmVQYXJzZShoKS5zdWNjZXNzJiYrK2M+PWkpYnJlYWs7YzxyJiZvLmlzc3Vlcy5wdXNoKHtjb2RlOiJjdXN0b20iLG1lc3NhZ2U6YEFycmF5IG11c3QgY29udGFpbiBhdCBsZWFzdCAke3J9IG1hdGNoaW5nICR7eWQocil9OyBmb3VuZCAke2N9YCxpbnB1dDpzLGNvbnRpbnVlOiEwfSksdC5tYXhDb250YWlucyE9PXZvaWQgMCYmYz50Lm1heENvbnRhaW5zJiZvLmlzc3Vlcy5wdXNoKHtjb2RlOiJjdXN0b20iLG1lc3NhZ2U6YEFycmF5IG11c3QgY29udGFpbiBhdCBtb3N0ICR7dC5tYXhDb250YWluc30gbWF0Y2hpbmcgJHt5ZCh0Lm1heENvbnRhaW5zKX1gLGlucHV0OnMsY29udGludWU6ITB9KX19fSkucGlwZShlKX1mdW5jdGlvbiAkZChlLHQpe2lmKGUhPT0hMSlyZXR1cm4gZT09PXZvaWQgMHx8ZT09PSEwP0MuYW55KCk6amUoZSx0KX1jb25zdCBxeT0vXig/OlswMV1cZHwyWzAtM10pOlswLTVdXGQ6WzAtNV1cZCg/OlwuXGQrKT8oPzpafFsrLV0oPzpbMDFdXGR8MlswLTNdKTpbMC01XVxkKSQvO2Z1bmN0aW9uIHRnKGUsdCl7aWYoZS5ub3QhPT12b2lkIDApe2lmKHR5cGVvZiBlLm5vdD09Im9iamVjdCImJk9iamVjdC5rZXlzKGUubm90KS5sZW5ndGg9PT0wKXJldHVybiBDLm5ldmVyKCk7dGhyb3cgbmV3IEVycm9yKCJub3QgaXMgbm90IHN1cHBvcnRlZCBpbiBab2QgKGV4Y2VwdCB7IG5vdDoge30gfSBmb3IgbmV2ZXIpIil9aWYoZS51bmV2YWx1YXRlZEl0ZW1zIT09dm9pZCAwKXRocm93IG5ldyBFcnJvcigidW5ldmFsdWF0ZWRJdGVtcyBpcyBub3Qgc3VwcG9ydGVkIik7aWYoZS51bmV2YWx1YXRlZFByb3BlcnRpZXMhPT12b2lkIDApdGhyb3cgbmV3IEVycm9yKCJ1bmV2YWx1YXRlZFByb3BlcnRpZXMgaXMgbm90IHN1cHBvcnRlZCIpO2lmKGUuaWYhPT12b2lkIDB8fGUudGhlbiE9PXZvaWQgMHx8ZS5lbHNlIT09dm9pZCAwKXRocm93IG5ldyBFcnJvcigiQ29uZGl0aW9uYWwgc2NoZW1hcyAoaWYvdGhlbi9lbHNlKSBhcmUgbm90IHN1cHBvcnRlZCIpO2lmKGUuZGVwZW5kZW50U2NoZW1hcyE9PXZvaWQgMHx8ZS5kZXBlbmRlbnRSZXF1aXJlZCE9PXZvaWQgMCl0aHJvdyBuZXcgRXJyb3IoImRlcGVuZGVudFNjaGVtYXMgYW5kIGRlcGVuZGVudFJlcXVpcmVkIGFyZSBub3Qgc3VwcG9ydGVkIik7aWYoZS4kcmVmKXtjb25zdCBzPWUuJHJlZjtpZih0LnJlZnMuaGFzKHMpKXJldHVybiB0LnJlZnMuZ2V0KHMpO2lmKHQucHJvY2Vzc2luZy5oYXMocykpcmV0dXJuIEMubGF6eSgoKT0+e2lmKCF0LnJlZnMuaGFzKHMpKXRocm93IG5ldyBFcnJvcihgQ2lyY3VsYXIgcmVmZXJlbmNlIG5vdCByZXNvbHZlZDogJHtzfWApO3JldHVybiB0LnJlZnMuZ2V0KHMpfSk7dC5wcm9jZXNzaW5nLmFkZChzKTtjb25zdCByPUV5KHMsdCksaT1qZShyLHQpO3JldHVybiB0LnJlZnMuc2V0KHMsaSksdC5wcm9jZXNzaW5nLmRlbGV0ZShzKSxpfWlmKGUuZW51bSE9PXZvaWQgMCl7Y29uc3Qgcz1lLmVudW07aWYodC52ZXJzaW9uPT09Im9wZW5hcGktMy4wIiYmZS5udWxsYWJsZT09PSEwJiZzLmxlbmd0aD09PTEmJnNbMF09PT1udWxsKXJldHVybiBDLm51bGwoKTtpZihzLmxlbmd0aD09PTApcmV0dXJuIEMubmV2ZXIoKTtpZihzLmxlbmd0aD09PTEpcmV0dXJuIEMubGl0ZXJhbChzWzBdKTtpZihzLmV2ZXJ5KGk9PnR5cGVvZiBpPT0ic3RyaW5nIikpcmV0dXJuIEMuZW51bShzKTtjb25zdCByPXMubWFwKGk9PkMubGl0ZXJhbChpKSk7cmV0dXJuIHIubGVuZ3RoPDI/clswXTpDLnVuaW9uKFtyWzBdLHJbMV0sLi4uci5zbGljZSgyKV0pfWlmKGUuY29uc3QhPT12b2lkIDApcmV0dXJuIEMubGl0ZXJhbChlLmNvbnN0KTtjb25zdCBuPWUudHlwZTtpZihBcnJheS5pc0FycmF5KG4pKXtjb25zdCBzPW4ubWFwKHI9Pntjb25zdCBpPXsuLi5lLHR5cGU6cn07cmV0dXJuIHRnKGksdCl9KTtyZXR1cm4gcy5sZW5ndGg9PT0wP0MubmV2ZXIoKTpzLmxlbmd0aD09PTE/c1swXTpDLnVuaW9uKHMpfWlmKCFuKXJldHVybiBDLmFueSgpO2xldCBvO3N3aXRjaChuKXtjYXNlInN0cmluZyI6e2xldCBzPUMuc3RyaW5nKCk7aWYoZS5mb3JtYXQpe2NvbnN0IHI9ZS5mb3JtYXQ7cj09PSJlbWFpbCI/cz1zLmNoZWNrKEMuZW1haWwoKSk6cj09PSJ1cmkifHxyPT09InVyaS1yZWZlcmVuY2UiP3M9cy5jaGVjayhDLnVybCgpKTpyPT09InV1aWQifHxyPT09Imd1aWQiP3M9cy5jaGVjayhDLnV1aWQoKSk6cj09PSJkYXRlLXRpbWUiP3M9cy5jaGVjayhDLmlzby5kYXRldGltZSh7b2Zmc2V0OiEwfSkpOnI9PT0iZGF0ZSI/cz1zLmNoZWNrKEMuaXNvLmRhdGUoKSk6cj09PSJ0aW1lIj9zPXMuY2hlY2soQy5yZWdleChxeSkpOnI9PT0iZHVyYXRpb24iP3M9cy5jaGVjayhDLmlzby5kdXJhdGlvbigpKTpyPT09Imhvc3RuYW1lIj9zPXMuY2hlY2soQy5ob3N0bmFtZSgpKTpyPT09ImlwdjQiP3M9cy5jaGVjayhDLmlwdjQoKSk6cj09PSJpcHY2Ij9zPXMuY2hlY2soQy5pcHY2KCkpOnI9PT0ibWFjIj9zPXMuY2hlY2soQy5tYWMoKSk6cj09PSJjaWRyIj9zPXMuY2hlY2soQy5jaWRydjQoKSk6cj09PSJjaWRyLXY2Ij9zPXMuY2hlY2soQy5jaWRydjYoKSk6cj09PSJiYXNlNjQiP3M9cy5jaGVjayhDLmJhc2U2NCgpKTpyPT09ImJhc2U2NHVybCI/cz1zLmNoZWNrKEMuYmFzZTY0dXJsKCkpOnI9PT0iZTE2NCI/cz1zLmNoZWNrKEMuZTE2NCgpKTpyPT09ImNyZWRpdF9jYXJkIj9zPXMuY2hlY2soQy5jcmVkaXRDYXJkKCkpOnI9PT0iaWJhbiI/cz1zLmNoZWNrKEMuaWJhbigpKTpyPT09Imp3dCI/cz1zLmNoZWNrKEMuand0KCkpOnI9PT0iZW1vamkiP3M9cy5jaGVjayhDLmVtb2ppKCkpOnI9PT0ibmFub2lkIj9zPXMuY2hlY2soQy5uYW5vaWQoKSk6cj09PSJjdWlkIj9zPXMuY2hlY2soQy5jdWlkKCkpOnI9PT0iY3VpZDIiP3M9cy5jaGVjayhDLmN1aWQyKCkpOnI9PT0idWxpZCI/cz1zLmNoZWNrKEMudWxpZCgpKTpyPT09InhpZCI/cz1zLmNoZWNrKEMueGlkKCkpOnI9PT0ia3N1aWQiJiYocz1zLmNoZWNrKEMua3N1aWQoKSkpfXR5cGVvZiBlLm1pbkxlbmd0aD09Im51bWJlciImJihzPXMubWluKGUubWluTGVuZ3RoKSksdHlwZW9mIGUubWF4TGVuZ3RoPT0ibnVtYmVyIiYmKHM9cy5tYXgoZS5tYXhMZW5ndGgpKSxlLnBhdHRlcm4mJihzPXMucmVnZXgobmV3IFJlZ0V4cChlLnBhdHRlcm4pKSksbz1zO2JyZWFrfWNhc2UibnVtYmVyIjpjYXNlImludGVnZXIiOntsZXQgcz1uPT09ImludGVnZXIiP0MubnVtYmVyKCkuaW50KCk6Qy5udW1iZXIoKTt0eXBlb2YgZS5taW5pbXVtPT0ibnVtYmVyIiYmZS5leGNsdXNpdmVNaW5pbXVtIT09ITAmJihzPXMubWluKGUubWluaW11bSkpLHR5cGVvZiBlLm1heGltdW09PSJudW1iZXIiJiZlLmV4Y2x1c2l2ZU1heGltdW0hPT0hMCYmKHM9cy5tYXgoZS5tYXhpbXVtKSksdHlwZW9mIGUuZXhjbHVzaXZlTWluaW11bT09Im51bWJlciI/cz1zLmd0KGUuZXhjbHVzaXZlTWluaW11bSk6ZS5leGNsdXNpdmVNaW5pbXVtPT09ITAmJnR5cGVvZiBlLm1pbmltdW09PSJudW1iZXIiJiYocz1zLmd0KGUubWluaW11bSkpLHR5cGVvZiBlLmV4Y2x1c2l2ZU1heGltdW09PSJudW1iZXIiP3M9cy5sdChlLmV4Y2x1c2l2ZU1heGltdW0pOmUuZXhjbHVzaXZlTWF4aW11bT09PSEwJiZ0eXBlb2YgZS5tYXhpbXVtPT0ibnVtYmVyIiYmKHM9cy5sdChlLm1heGltdW0pKSx0eXBlb2YgZS5tdWx0aXBsZU9mPT0ibnVtYmVyIiYmKHM9cy5tdWx0aXBsZU9mKGUubXVsdGlwbGVPZikpLG89czticmVha31jYXNlImJvb2xlYW4iOntvPUMuYm9vbGVhbigpO2JyZWFrfWNhc2UibnVsbCI6e289Qy5udWxsKCk7YnJlYWt9Y2FzZSJvYmplY3QiOntjb25zdCBzPXt9LHI9ZS5wcm9wZXJ0aWVzfHx7fSxpPW5ldyBTZXQoZS5yZXF1aXJlZHx8W10pLGM9dHlwZW9mIGUuYWRkaXRpb25hbFByb3BlcnRpZXM9PSJvYmplY3QiP2plKGUuYWRkaXRpb25hbFByb3BlcnRpZXMsdCk6dm9pZCAwO2Zvcihjb25zdFtwLG1db2YgT2JqZWN0LmVudHJpZXMocikpe2NvbnN0IHk9amUobSx0KTtMdChzLHAsaS5oYXMocCk/eTp5Lm9wdGlvbmFsKCkpfWlmKGUucGF0dGVyblByb3BlcnRpZXMpe2NvbnN0IHA9ZS5wYXR0ZXJuUHJvcGVydGllcyxtPU9iamVjdC5rZXlzKHApLHk9W107Zm9yKGNvbnN0IFMgb2YgbSl7Y29uc3QgTj1qZShwW1NdLHQpLEU9Qy5zdHJpbmcoKS5yZWdleChuZXcgUmVnRXhwKFMpKTt5LnB1c2goQy5sb29zZVJlY29yZChFLE4pKX1jb25zdCAkPVtdO2lmKE9iamVjdC5rZXlzKHMpLmxlbmd0aD4wJiYkLnB1c2goQy5vYmplY3QocykucGFzc3Rocm91Z2goKSksJC5wdXNoKC4uLnkpLCQubGVuZ3RoPT09MClvPUMub2JqZWN0KHt9KS5wYXNzdGhyb3VnaCgpO2Vsc2UgaWYoJC5sZW5ndGg9PT0xKW89JFswXTtlbHNle2xldCBTPUMuaW50ZXJzZWN0aW9uKCRbMF0sJFsxXSk7Zm9yKGxldCBOPTI7TjwkLmxlbmd0aDtOKyspUz1DLmludGVyc2VjdGlvbihTLCRbTl0pO289U31pZihlLmFkZGl0aW9uYWxQcm9wZXJ0aWVzPT09ITEpe2NvbnN0IFM9T2JqZWN0LmtleXMocyksTj1tLm1hcChUPT5uZXcgUmVnRXhwKFQpKSxFPW87bz1vLmNoZWNrKFQ9PntpZigha3QoVC52YWx1ZSkpcmV0dXJuO2NvbnN0IEE9W107Zm9yKGNvbnN0IFEgb2YgT2JqZWN0LmtleXMoVC52YWx1ZSkpUy5pbmNsdWRlcyhRKXx8Ti5zb21lKFg9PlgudGVzdChRKSl8fEEucHVzaChRKTtBLmxlbmd0aCYmVC5pc3N1ZXMucHVzaCh7Y29kZToidW5yZWNvZ25pemVkX2tleXMiLGtleXM6QSxpbnB1dDpULnZhbHVlLGluc3Q6RX0pfSl9fWVsc2V7Y29uc3QgcD1DLm9iamVjdChzKTtlLmFkZGl0aW9uYWxQcm9wZXJ0aWVzPT09ITE/bz1wLnN0cmljdCgpOmM/bz1wLmNhdGNoYWxsKGMpOm89cC5wYXNzdGhyb3VnaCgpfWNvbnN0IGg9ZS5wcm9wZXJ0eU5hbWVzIT09dm9pZCAwJiZlLnByb3BlcnR5TmFtZXMhPT0hMCxkPXR5cGVvZiBlLm1pblByb3BlcnRpZXM9PSJudW1iZXIiP2UubWluUHJvcGVydGllczp2b2lkIDAsdT10eXBlb2YgZS5tYXhQcm9wZXJ0aWVzPT0ibnVtYmVyIj9lLm1heFByb3BlcnRpZXM6dm9pZCAwO2lmKGh8fGQhPT12b2lkIDB8fHUhPT12b2lkIDApe2xldCBwO2lmKGgpe2NvbnN0IG09dHlwZW9mIGUucHJvcGVydHlOYW1lcz09Im9iamVjdCImJmUucHJvcGVydHlOYW1lcy50eXBlPT09dm9pZCAwP3t0eXBlOiJzdHJpbmciLC4uLmUucHJvcGVydHlOYW1lc306ZS5wcm9wZXJ0eU5hbWVzO3A9amUobSx0KX1vPVJ5KG8se2tleVNjaGVtYTpwLG1pblByb3BlcnRpZXM6ZCxtYXhQcm9wZXJ0aWVzOnV9KX1icmVha31jYXNlImFycmF5Ijp7Y29uc3Qgcz1lLnByZWZpeEl0ZW1zLHI9ZS5pdGVtcztpZihzJiZBcnJheS5pc0FycmF5KHMpKXtjb25zdCBpPXR5cGVvZiBlLm1pbkl0ZW1zPT0ibnVtYmVyIj9lLm1pbkl0ZW1zOjAsYz1zLm1hcChwPT5qZShwLHQpKSxoPWtkKGMsaSksZD1BcnJheS5pc0FycmF5KHIpP3ZvaWQgMDokZChyLHQpLHU9Qy50dXBsZShoKTtvPWQ/dS5yZXN0KGQpOnUsdHlwZW9mIGUubWluSXRlbXM9PSJudW1iZXIiJiYobz1vLmNoZWNrKEMubWluTGVuZ3RoKGUubWluSXRlbXMpKSksdHlwZW9mIGUubWF4SXRlbXM9PSJudW1iZXIiJiYobz1vLmNoZWNrKEMubWF4TGVuZ3RoKGUubWF4SXRlbXMpKSl9ZWxzZSBpZihBcnJheS5pc0FycmF5KHIpKXtjb25zdCBpPXR5cGVvZiBlLm1pbkl0ZW1zPT0ibnVtYmVyIj9lLm1pbkl0ZW1zOjAsYz1yLm1hcChwPT5qZShwLHQpKSxoPWtkKGMsaSksZD0kZChlLmFkZGl0aW9uYWxJdGVtcyx0KSx1PUMudHVwbGUoaCk7bz1kP3UucmVzdChkKTp1LHR5cGVvZiBlLm1pbkl0ZW1zPT0ibnVtYmVyIiYmKG89by5jaGVjayhDLm1pbkxlbmd0aChlLm1pbkl0ZW1zKSkpLHR5cGVvZiBlLm1heEl0ZW1zPT0ibnVtYmVyIiYmKG89by5jaGVjayhDLm1heExlbmd0aChlLm1heEl0ZW1zKSkpfWVsc2UgaWYociE9PXZvaWQgMCl7Y29uc3QgaT1qZShyLHQpO2xldCBjPUMuYXJyYXkoaSk7dHlwZW9mIGUubWluSXRlbXM9PSJudW1iZXIiJiYoYz1jLm1pbihlLm1pbkl0ZW1zKSksdHlwZW9mIGUubWF4SXRlbXM9PSJudW1iZXIiJiYoYz1jLm1heChlLm1heEl0ZW1zKSksbz1jfWVsc2Ugbz1DLmFycmF5KEMuYW55KCkpOyhlLnVuaXF1ZUl0ZW1zPT09ITB8fGUuY29udGFpbnMhPT12b2lkIDApJiYobz1aeShvLHt1bmlxdWVJdGVtczplLnVuaXF1ZUl0ZW1zPT09ITAsY29udGFpbnNTY2hlbWE6ZS5jb250YWlucyE9PXZvaWQgMD9qZShlLmNvbnRhaW5zLHQpOnZvaWQgMCxtaW5Db250YWluczp0eXBlb2YgZS5taW5Db250YWlucz09Im51bWJlciI/ZS5taW5Db250YWluczp2b2lkIDAsbWF4Q29udGFpbnM6dHlwZW9mIGUubWF4Q29udGFpbnM9PSJudW1iZXIiP2UubWF4Q29udGFpbnM6dm9pZCAwfSkpO2JyZWFrfWRlZmF1bHQ6dGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCB0eXBlOiAke259YCl9cmV0dXJuIG99ZnVuY3Rpb24gamUoZSx0KXtpZih0eXBlb2YgZT09ImJvb2xlYW4iKXJldHVybiBlP0MuYW55KCk6Qy5uZXZlcigpO2xldCBuPXRnKGUsdCk7Y29uc3Qgbz1lLnR5cGV8fGUuZW51bSE9PXZvaWQgMHx8ZS5jb25zdCE9PXZvaWQgMDtpZihlLmFueU9mJiZBcnJheS5pc0FycmF5KGUuYW55T2YpKXtjb25zdCBjPWUuYW55T2YubWFwKGQ9PmplKGQsdCkpLGg9Qy51bmlvbihjKTtuPW8/Qy5pbnRlcnNlY3Rpb24obixoKTpofWlmKGUub25lT2YmJkFycmF5LmlzQXJyYXkoZS5vbmVPZikpe2NvbnN0IGM9ZS5vbmVPZi5tYXAoZD0+amUoZCx0KSksaD1DLnhvcihjKTtuPW8/Qy5pbnRlcnNlY3Rpb24obixoKTpofWlmKGUuYWxsT2YmJkFycmF5LmlzQXJyYXkoZS5hbGxPZikpaWYoZS5hbGxPZi5sZW5ndGg9PT0wKW49bz9uOkMuYW55KCk7ZWxzZXtsZXQgYz1vP246amUoZS5hbGxPZlswXSx0KTtjb25zdCBoPW8/MDoxO2ZvcihsZXQgZD1oO2Q8ZS5hbGxPZi5sZW5ndGg7ZCsrKWM9Qy5pbnRlcnNlY3Rpb24oYyxqZShlLmFsbE9mW2RdLHQpKTtuPWN9ZS5udWxsYWJsZT09PSEwJiZ0LnZlcnNpb249PT0ib3BlbmFwaS0zLjAiJiYobj1DLm51bGxhYmxlKG4pKSxlLnJlYWRPbmx5PT09ITAmJihuPUMucmVhZG9ubHkobikpLGUuZGVmYXVsdCE9PXZvaWQgMCYmKG49bi5kZWZhdWx0KGUuZGVmYXVsdCkpO2NvbnN0IHM9e30scj1bIiRpZCIsImlkIiwiJGNvbW1lbnQiLCIkYW5jaG9yIiwiJHZvY2FidWxhcnkiLCIkZHluYW1pY1JlZiIsIiRkeW5hbWljQW5jaG9yIl07Zm9yKGNvbnN0IGMgb2YgciljIGluIGUmJihzW2NdPWVbY10pO2NvbnN0IGk9WyJjb250ZW50RW5jb2RpbmciLCJjb250ZW50TWVkaWFUeXBlIiwiY29udGVudFNjaGVtYSJdO2Zvcihjb25zdCBjIG9mIGkpYyBpbiBlJiYoc1tjXT1lW2NdKTtpZihlLnR5cGU9PT0ib2JqZWN0IiYmZS4kcmVmPT09dm9pZCAwKXtlLnByb3BlcnR5TmFtZXMhPT12b2lkIDAmJiFMbihlLnByb3BlcnR5TmFtZXMpJiYocy5wcm9wZXJ0eU5hbWVzPWUucHJvcGVydHlOYW1lcyk7Zm9yKGNvbnN0IGMgb2ZbIm1pblByb3BlcnRpZXMiLCJtYXhQcm9wZXJ0aWVzIl0pZVtjXSE9PXZvaWQgMCYmKHNbY109ZVtjXSl9aWYoZS50eXBlPT09ImFycmF5IiYmZS4kcmVmPT09dm9pZCAwKXtlLmNvbnRhaW5zIT09dm9pZCAwJiYhTG4oZS5jb250YWlucykmJihzLmNvbnRhaW5zPWUuY29udGFpbnMpO2Zvcihjb25zdCBjIG9mWyJ1bmlxdWVJdGVtcyIsIm1pbkNvbnRhaW5zIiwibWF4Q29udGFpbnMiXSllW2NdIT09dm9pZCAwJiYoc1tjXT1lW2NdKX1mb3IoY29uc3QgYyBvZiBPYmplY3Qua2V5cyhlKSlQeS5oYXMoYyl8fEx0KHMsYyxlW2NdKTtyZXR1cm4gT2JqZWN0LmtleXMocykubGVuZ3RoPjAmJnQucmVnaXN0cnkuYWRkKG4scyksZS5kZXNjcmlwdGlvbiYmKG49bi5kZXNjcmliZShlLmRlc2NyaXB0aW9uKSksbn1mdW5jdGlvbiBuZyhlLHQpe2lmKHR5cGVvZiBlPT0iYm9vbGVhbiIpcmV0dXJuIGU/Qy5hbnkoKTpDLm5ldmVyKCk7bGV0IG47dHJ5e249SlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShlKSl9Y2F0Y2h7dGhyb3cgbmV3IEVycm9yKCJmcm9tSlNPTlNjaGVtYSBpbnB1dCBpcyBub3QgdmFsaWQgSlNPTiAocG9zc2libHkgY3ljbGljKTsgdXNlICRkZWZzLyRyZWYgZm9yIHJlY3Vyc2l2ZSBzY2hlbWFzIil9Y29uc3Qgbz14eShuLHQ/LmRlZmF1bHRUYXJnZXQpLHM9bi4kZGVmc3x8bi5kZWZpbml0aW9uc3x8e30scj17dmVyc2lvbjpvLGRlZnM6cyxyZWZzOm5ldyBNYXAscHJvY2Vzc2luZzpuZXcgU2V0LHJvb3RTY2hlbWE6bixyZWdpc3RyeTp0Py5yZWdpc3RyeT8/TGV9O3JldHVybiBqZShuLHIpfWZ1bmN0aW9uIG9nKGUpe3JldHVybiBBYyhlLHtvYmplY3Q6dD0+dC5wYXJ0aWFsKCksdW5pb246dD0+e2NvbnN0IG49dC5fem9kLmRlZjtyZXR1cm4gbi5kaXNjcmltaW5hdG9yPT09dm9pZCAwP3Q6VShuLm9wdGlvbnMpfX0pfWZ1bmN0aW9uIER5KGUsdCl7aWYoIXQ/Lmxlbmd0aClyZXR1cm4gZTtjb25zdCBuPWUuX3pvZC5kZWY7cmV0dXJuIGxlKGUsU2Uobix7Y2hlY2tzOlsuLi5uLmNoZWNrcz8/W10sLi4udF19KSx7cGFyZW50OiEwfSl9ZnVuY3Rpb24gc2coZSl7cmV0dXJuIER5KGUub3V0LGUuY2hlY2tzKX1mdW5jdGlvbiBMeShlKXtyZXR1cm4gZS5pbi5fem9kLnRyYWl0cy5oYXMoIiRab2RUcmFuc2Zvcm0iKT9zZyhlKTplLmlufWZ1bmN0aW9uIHJnKGUpe3JldHVybiBBYyhlLHtwaXBlOnQ9Pkx5KHQuX3pvZC5kZWYpLGRlZmF1bHQ6KHQsbik9Pm4/YWUodC5fem9kLmRlZi5pbm5lclR5cGUpOnQsY2F0Y2g6KHQsbik9Pm4/dC5fem9kLmRlZi5pbm5lclR5cGU6dH0pfWZ1bmN0aW9uIGFnKGUpe3JldHVybiBBYyhlLHtwaXBlOnQ9PnNnKHQuX3pvZC5kZWYpLHByZWZhdWx0Oih0LG4pPT5uP3QuX3pvZC5kZWYuaW5uZXJUeXBlOnR9KX1mdW5jdGlvbiBCeShlKXtyZXR1cm4gY2YoZm4sZSl9ZnVuY3Rpb24gSHkoZSl7cmV0dXJuIHBmKCRuLGUpfWZ1bmN0aW9uIEZ5KGUpe3JldHVybiB5Zih3bixlKX1mdW5jdGlvbiBVeShlKXtyZXR1cm4gd2YoU24sZSl9ZnVuY3Rpb24gVnkoZSl7cmV0dXJuIElmKEZvLGUpfWNvbnN0IGlnPU9iamVjdC5mcmVlemUoT2JqZWN0LmRlZmluZVByb3BlcnR5KHtfX3Byb3RvX186bnVsbCxiaWdpbnQ6VXksYm9vbGVhbjpGeSxkYXRlOlZ5LG51bWJlcjpIeSxzdHJpbmc6Qnl9LFN5bWJvbC50b1N0cmluZ1RhZyx7dmFsdWU6Ik1vZHVsZSJ9KSksd2Q9T2JqZWN0LmZyZWV6ZShPYmplY3QuZGVmaW5lUHJvcGVydHkoe19fcHJvdG9fXzpudWxsLCRicmFuZDpoaSwkaW5wdXQ6V2ksJG91dHB1dDpWaSxJTlZBTElEOkdpLE5FVkVSOmRpLFRpbWVQcmVjaXNpb246JGMsWm9kQW55OndyLFpvZEFycmF5OlRyLFpvZEJhc2U2NDpNbyxab2RCYXNlNjRVUkw6Wm8sWm9kQmlnSW50OlNuLFpvZEJpZ0ludEZvcm1hdDpMbyxab2RCb29sZWFuOnduLFpvZENJRFJ2NDpSbyxab2RDSURSdjY6T28sWm9kQ1VJRDp6byxab2RDVUlEMjpDbyxab2RDYXRjaDpVcixab2RDb2RlYzpDbixab2RDb21waWxlQXN5bmNFcnJvcjpKaSxab2RDb21waWxlVW5zdXBwb3J0ZWRFcnJvcjpZaSxab2RDcmVkaXRDYXJkOmJyLFpvZEN1c3RvbTpObixab2RDdXN0b21TdHJpbmdGb3JtYXQ6d3QsWm9kRGF0ZTpGbyxab2REZWZhdWx0OnFyLFpvZERpc2NyaW1pbmF0ZWRVbmlvbjp6cixab2RFMTY0OnFvLFpvZEVtYWlsOl9vLFpvZEVtb2ppOlRvLFpvZEVudW06RXQsWm9kRXJyb3I6SmYsWm9kRXhhY3RPcHRpb25hbDpXbyxab2RGaWxlOlJyLGdldCBab2RGaXJzdFBhcnR5VHlwZUtpbmQoKXtyZXR1cm4gUHN9LFpvZEZ1bmN0aW9uOnRhLFpvZEdVSUQ6am8sWm9kSUJBTjp2cixab2RJUHY0OklvLFpvZElQdjY6RW8sWm9kSVNPRGF0ZTpibixab2RJU09EYXRlVGltZTpnbixab2RJU09EdXJhdGlvbjprbixab2RJU09UaW1lOnZuLFpvZEluc3RhbmNlT2Y6cmEsWm9kSW50ZXJzZWN0aW9uOkNyLFpvZElzc3VlQ29kZTpZZixab2RKV1Q6RG8sWm9kS1NVSUQ6eG8sWm9kTGF6eTpRcixab2RMaXRlcmFsOkVyLFpvZE1BQzpncixab2RNYXA6eHIsWm9kTmFOOldyLFpvZE5hbm9JRDpBbyxab2ROZXZlcjpfcixab2ROb25PcHRpb25hbDpLbyxab2ROdWxsOiRyLFpvZE51bGxhYmxlOlpyLFpvZE51bWJlcjokbixab2ROdW1iZXJGb3JtYXQ6U3QsWm9kT2JqZWN0Ol9uLFpvZE9wdGlvbmFsOkFuLFpvZFBpcGU6em4sWm9kUHJlZmF1bHQ6THIsWm9kUHJlcHJvY2VzczpLcixab2RQcm9taXNlOmVhLFpvZFJlYWRvbmx5OkdyLFpvZFJlYWxFcnJvcjp4ZSxab2RSZWNvcmQ6SXQsWm9kU2V0OklyLFpvZFN0cmluZzpmbixab2RTdHJpbmdGb3JtYXQ6b2UsWm9kU3VjY2VzczpGcixab2RTeW1ib2w6a3IsWm9kVGVtcGxhdGVMaXRlcmFsOllyLFpvZFRyYW5zZm9ybTpPcixab2RUdXBsZTpOcixab2RUeXBlOkIsWm9kVUxJRDpObyxab2RVUkw6eW4sWm9kVVVJRDpHZSxab2RVbmRlZmluZWQ6eXIsWm9kVW5pb246am4sWm9kVW5rbm93bjpTcixab2RWb2lkOmpyLFpvZFhJRDpQbyxab2RYb3I6QXIsX1pvZFN0cmluZzpTbyxfZGVmYXVsdDpEcixfZnVuY3Rpb246cm4sYW55OkhvLGFycmF5OlIsYmFzZTY0OmlsLGJhc2U2NHVybDpjbCxiaWdpbnQ6d2wsYm9vbGVhbjpuZSxjYXRjaDpWcixjaGVjazpGbCxjaWRydjQ6cmwsY2lkcnY2OmFsLGNsb25lOmxlLGNvZGVjOkRsLGNvZXJjZTppZyxjb21waWxlOlFpLGNvbmZpZzptZSxjb3JlOldmLGNyZWRpdENhcmQ6dWwsY3VpZDpZYyxjdWlkMjpRYyxjdXJyZW5jeUNvZGU6Z2wsY3VzdG9tOm5hLGRhdGU6QWwsZGVjb2RlOkVjLGRlY29kZUFzeW5jOk9jLGRlZXBQYXJ0aWFsOm9nLGRlc2NyaWJlOlVsLGRpc2NyaW1pbmF0ZWRVbmlvbjpVbyxlMTY0OmxsLGVtYWlsOkxjLGVtb2ppOkdjLGVuY29kZTpJYyxlbmNvZGVBc3luYzpSYyxlbmRzV2l0aDpmbyxlbnVtOmtlLGV4YWN0T3B0aW9uYWw6TXIsZmlsZTpPbCxmbGF0dGVuRXJyb3I6WHMsZmxvYXQzMjp2bCxmbG9hdDY0OmtsLGZvcm1hdEVycm9yOmVyLGZyb21KU09OU2NoZW1hOm5nLGZ1bmN0aW9uOnJuLGdldERpc2NyaW1pbmF0ZWRPcHRpb246cWksZ2V0RXJyb3JNYXA6WGYsZ2xvYmFsUmVnaXN0cnk6TGUsZ3Q6Y3QsZ3RlOlJlLGd1aWQ6QmMsaGFzaDpibCxoZXg6ZmwsaG9zdG5hbWU6bWwsaHR0cFVybDpLYyxpYmFuOmRsLGluY2x1ZGVzOnBvLGlucHV0OnJnLGluc3RhbmNlb2Y6V2wsaW50OlduLGludDMyOnlsLGludDY0OlNsLGludGVyc2VjdGlvbjpUbixpbnZlcnRDb2RlYzpMbCxpcHY0Om5sLGlwdjY6c2wsaXNvOkpsLGpzb246R2wsand0OmhsLGtleW9mOnpsLGtzdWlkOnRsLGxhenk6WHIsbGVuZ3RoOnBuLGxpdGVyYWw6Yixsb2NhbGVzOlVpLGxvb3NlT2JqZWN0OmJlLGxvb3NlUmVjb3JkOnhsLGxvd2VyY2FzZTp1byxsdDppdCxsdGU6RWUsbWFjOm9sLG1hcDpJbCxtYXhMZW5ndGg6aG4sbWF4U2l6ZTpCdCxtZW1vaXplcjppcixtZXRhOlZsLG1pbWU6Ym8sbWluTGVuZ3RoOnl0LG1pblNpemU6bHQsbXVsdGlwbGVPZjpQdCxuYW46cWwsbmFub2lkOkpjLG5hdGl2ZUVudW06UmwsbmVnYXRpdmU6aHIsbmV2ZXI6eHQsbm9ubmVnYXRpdmU6bXIsbm9ub3B0aW9uYWw6SHIsbm9ucG9zaXRpdmU6cHIsbm9ybWFsaXplOnZvLG51bGw6Qm8sbnVsbGFibGU6c24sbnVsbGlzaDpNbCxudW1iZXI6TCxvYmplY3Q6ayxvcHRpb25hbDphZSxvdXRwdXQ6YWcsb3ZlcndyaXRlOmV0LHBhcnNlOkNjLHBhcnNlQXN5bmM6TmMscGFydGlhbFJlY29yZDpQbCxwaXBlOktuLHBvc2l0aXZlOmRyLHByZWZhdWx0OkJyLHByZXByb2Nlc3M6R28scHJldHRpZnlFcnJvcjptaSxwcm9taXNlOkhsLHByb3BlcnRpZXM6Z28scHJvcGVydHk6ZnIscmVhZG9ubHk6SnIscmVjb3JkOksscmVmaW5lOm9hLHJlZ2V4OmxvLHJlZ2V4ZXM6cnIscmVnaXN0cnk6Y3Isc2FmZURlY29kZTpaYyxzYWZlRGVjb2RlQXN5bmM6RGMsc2FmZUVuY29kZTpNYyxzYWZlRW5jb2RlQXN5bmM6cWMsc2FmZVBhcnNlOlBjLHNhZmVQYXJzZUFzeW5jOnhjLHNldDpFbCxzZXRFcnJvck1hcDpRZixzaXplOmRuLHNsdWdpZnk6d28sc3RhcnRzV2l0aDptbyxzdHJpY3RPYmplY3Q6Q2wsc3RyaW5nOmcsc3RyaW5nRm9ybWF0OnBsLHN0cmluZ2Jvb2w6S2wsc3VjY2VzczpabCxzdXBlclJlZmluZTpzYSxzeW1ib2w6amwsdGVtcGxhdGVMaXRlcmFsOkJsLHRvSlNPTlNjaGVtYTpUYyx0b0xvd2VyQ2FzZTp5byx0b1VwcGVyQ2FzZTokbyx0b1pvZDpGcyx0cmFuc2Zvcm06Vm8sdHJlZWlmeUVycm9yOnBpLHRyaW06a28sdHVwbGU6UHIsdWludDMyOiRsLHVpbnQ2NDpfbCx1bGlkOlhjLHVuZGVmaW5lZDpvbix1bmlvbjpVLHVua25vd246dGUsdXBwZXJjYXNlOmhvLHVybDpXYyx1dGlsOnVpLHV1aWQ6SGMsdXVpZHY0OkZjLHV1aWR2NjpVYyx1dWlkdjc6VmMsdmFsaWRhdGU6bnIsdmFsaWRhdGVBc3luYzpvcix2b2lkOlRsLHdpdGhQYXJzZXI6WGkseGlkOmVsLHhvcjpObH0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKSxXeT1PYmplY3QuZnJlZXplKE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh7X19wcm90b19fOm51bGwsJGJyYW5kOmhpLCRpbnB1dDpXaSwkb3V0cHV0OlZpLElOVkFMSUQ6R2ksTkVWRVI6ZGksVGltZVByZWNpc2lvbjokYyxab2RBbnk6d3IsWm9kQXJyYXk6VHIsWm9kQmFzZTY0Ok1vLFpvZEJhc2U2NFVSTDpabyxab2RCaWdJbnQ6U24sWm9kQmlnSW50Rm9ybWF0OkxvLFpvZEJvb2xlYW46d24sWm9kQ0lEUnY0OlJvLFpvZENJRFJ2NjpPbyxab2RDVUlEOnpvLFpvZENVSUQyOkNvLFpvZENhdGNoOlVyLFpvZENvZGVjOkNuLFpvZENvbXBpbGVBc3luY0Vycm9yOkppLFpvZENvbXBpbGVVbnN1cHBvcnRlZEVycm9yOllpLFpvZENyZWRpdENhcmQ6YnIsWm9kQ3VzdG9tOk5uLFpvZEN1c3RvbVN0cmluZ0Zvcm1hdDp3dCxab2REYXRlOkZvLFpvZERlZmF1bHQ6cXIsWm9kRGlzY3JpbWluYXRlZFVuaW9uOnpyLFpvZEUxNjQ6cW8sWm9kRW1haWw6X28sWm9kRW1vamk6VG8sWm9kRW51bTpFdCxab2RFcnJvcjpKZixab2RFeGFjdE9wdGlvbmFsOldvLFpvZEZpbGU6UnIsZ2V0IFpvZEZpcnN0UGFydHlUeXBlS2luZCgpe3JldHVybiBQc30sWm9kRnVuY3Rpb246dGEsWm9kR1VJRDpqbyxab2RJQkFOOnZyLFpvZElQdjQ6SW8sWm9kSVB2NjpFbyxab2RJU09EYXRlOmJuLFpvZElTT0RhdGVUaW1lOmduLFpvZElTT0R1cmF0aW9uOmtuLFpvZElTT1RpbWU6dm4sWm9kSW5zdGFuY2VPZjpyYSxab2RJbnRlcnNlY3Rpb246Q3IsWm9kSXNzdWVDb2RlOllmLFpvZEpXVDpEbyxab2RLU1VJRDp4byxab2RMYXp5OlFyLFpvZExpdGVyYWw6RXIsWm9kTUFDOmdyLFpvZE1hcDp4cixab2ROYU46V3IsWm9kTmFub0lEOkFvLFpvZE5ldmVyOl9yLFpvZE5vbk9wdGlvbmFsOktvLFpvZE51bGw6JHIsWm9kTnVsbGFibGU6WnIsWm9kTnVtYmVyOiRuLFpvZE51bWJlckZvcm1hdDpTdCxab2RPYmplY3Q6X24sWm9kT3B0aW9uYWw6QW4sWm9kUGlwZTp6bixab2RQcmVmYXVsdDpMcixab2RQcmVwcm9jZXNzOktyLFpvZFByb21pc2U6ZWEsWm9kUmVhZG9ubHk6R3IsWm9kUmVhbEVycm9yOnhlLFpvZFJlY29yZDpJdCxab2RTZXQ6SXIsWm9kU3RyaW5nOmZuLFpvZFN0cmluZ0Zvcm1hdDpvZSxab2RTdWNjZXNzOkZyLFpvZFN5bWJvbDprcixab2RUZW1wbGF0ZUxpdGVyYWw6WXIsWm9kVHJhbnNmb3JtOk9yLFpvZFR1cGxlOk5yLFpvZFR5cGU6Qixab2RVTElEOk5vLFpvZFVSTDp5bixab2RVVUlEOkdlLFpvZFVuZGVmaW5lZDp5cixab2RVbmlvbjpqbixab2RVbmtub3duOlNyLFpvZFZvaWQ6anIsWm9kWElEOlBvLFpvZFhvcjpBcixfWm9kU3RyaW5nOlNvLF9kZWZhdWx0OkRyLF9mdW5jdGlvbjpybixhbnk6SG8sYXJyYXk6UixiYXNlNjQ6aWwsYmFzZTY0dXJsOmNsLGJpZ2ludDp3bCxib29sZWFuOm5lLGNhdGNoOlZyLGNoZWNrOkZsLGNpZHJ2NDpybCxjaWRydjY6YWwsY2xvbmU6bGUsY29kZWM6RGwsY29lcmNlOmlnLGNvbXBpbGU6UWksY29uZmlnOm1lLGNvcmU6V2YsY3JlZGl0Q2FyZDp1bCxjdWlkOlljLGN1aWQyOlFjLGN1cnJlbmN5Q29kZTpnbCxjdXN0b206bmEsZGF0ZTpBbCxkZWNvZGU6RWMsZGVjb2RlQXN5bmM6T2MsZGVlcFBhcnRpYWw6b2csZGVmYXVsdDp3ZCxkZXNjcmliZTpVbCxkaXNjcmltaW5hdGVkVW5pb246VW8sZTE2NDpsbCxlbWFpbDpMYyxlbW9qaTpHYyxlbmNvZGU6SWMsZW5jb2RlQXN5bmM6UmMsZW5kc1dpdGg6Zm8sZW51bTprZSxleGFjdE9wdGlvbmFsOk1yLGZpbGU6T2wsZmxhdHRlbkVycm9yOlhzLGZsb2F0MzI6dmwsZmxvYXQ2NDprbCxmb3JtYXRFcnJvcjplcixmcm9tSlNPTlNjaGVtYTpuZyxmdW5jdGlvbjpybixnZXREaXNjcmltaW5hdGVkT3B0aW9uOnFpLGdldEVycm9yTWFwOlhmLGdsb2JhbFJlZ2lzdHJ5OkxlLGd0OmN0LGd0ZTpSZSxndWlkOkJjLGhhc2g6YmwsaGV4OmZsLGhvc3RuYW1lOm1sLGh0dHBVcmw6S2MsaWJhbjpkbCxpbmNsdWRlczpwbyxpbnB1dDpyZyxpbnN0YW5jZW9mOldsLGludDpXbixpbnQzMjp5bCxpbnQ2NDpTbCxpbnRlcnNlY3Rpb246VG4saW52ZXJ0Q29kZWM6TGwsaXB2NDpubCxpcHY2OnNsLGlzbzpKbCxqc29uOkdsLGp3dDpobCxrZXlvZjp6bCxrc3VpZDp0bCxsYXp5OlhyLGxlbmd0aDpwbixsaXRlcmFsOmIsbG9jYWxlczpVaSxsb29zZU9iamVjdDpiZSxsb29zZVJlY29yZDp4bCxsb3dlcmNhc2U6dW8sbHQ6aXQsbHRlOkVlLG1hYzpvbCxtYXA6SWwsbWF4TGVuZ3RoOmhuLG1heFNpemU6QnQsbWVtb2l6ZXI6aXIsbWV0YTpWbCxtaW1lOmJvLG1pbkxlbmd0aDp5dCxtaW5TaXplOmx0LG11bHRpcGxlT2Y6UHQsbmFuOnFsLG5hbm9pZDpKYyxuYXRpdmVFbnVtOlJsLG5lZ2F0aXZlOmhyLG5ldmVyOnh0LG5vbm5lZ2F0aXZlOm1yLG5vbm9wdGlvbmFsOkhyLG5vbnBvc2l0aXZlOnByLG5vcm1hbGl6ZTp2byxudWxsOkJvLG51bGxhYmxlOnNuLG51bGxpc2g6TWwsbnVtYmVyOkwsb2JqZWN0Omssb3B0aW9uYWw6YWUsb3V0cHV0OmFnLG92ZXJ3cml0ZTpldCxwYXJzZTpDYyxwYXJzZUFzeW5jOk5jLHBhcnRpYWxSZWNvcmQ6UGwscGlwZTpLbixwb3NpdGl2ZTpkcixwcmVmYXVsdDpCcixwcmVwcm9jZXNzOkdvLHByZXR0aWZ5RXJyb3I6bWkscHJvbWlzZTpIbCxwcm9wZXJ0aWVzOmdvLHByb3BlcnR5OmZyLHJlYWRvbmx5OkpyLHJlY29yZDpLLHJlZmluZTpvYSxyZWdleDpsbyxyZWdleGVzOnJyLHJlZ2lzdHJ5OmNyLHNhZmVEZWNvZGU6WmMsc2FmZURlY29kZUFzeW5jOkRjLHNhZmVFbmNvZGU6TWMsc2FmZUVuY29kZUFzeW5jOnFjLHNhZmVQYXJzZTpQYyxzYWZlUGFyc2VBc3luYzp4YyxzZXQ6RWwsc2V0RXJyb3JNYXA6UWYsc2l6ZTpkbixzbHVnaWZ5OndvLHN0YXJ0c1dpdGg6bW8sc3RyaWN0T2JqZWN0OkNsLHN0cmluZzpnLHN0cmluZ0Zvcm1hdDpwbCxzdHJpbmdib29sOktsLHN1Y2Nlc3M6Wmwsc3VwZXJSZWZpbmU6c2Esc3ltYm9sOmpsLHRlbXBsYXRlTGl0ZXJhbDpCbCx0b0pTT05TY2hlbWE6VGMsdG9Mb3dlckNhc2U6eW8sdG9VcHBlckNhc2U6JG8sdG9ab2Q6RnMsdHJhbnNmb3JtOlZvLHRyZWVpZnlFcnJvcjpwaSx0cmltOmtvLHR1cGxlOlByLHVpbnQzMjokbCx1aW50NjQ6X2wsdWxpZDpYYyx1bmRlZmluZWQ6b24sdW5pb246VSx1bmtub3duOnRlLHVwcGVyY2FzZTpobyx1cmw6V2MsdXRpbDp1aSx1dWlkOkhjLHV1aWR2NDpGYyx1dWlkdjY6VWMsdXVpZHY3OlZjLHZhbGlkYXRlOm5yLHZhbGlkYXRlQXN5bmM6b3Isdm9pZDpUbCx3aXRoUGFyc2VyOlhpLHhpZDplbCx4b3I6Tmwsejp3ZH0sU3ltYm9sLnRvU3RyaW5nVGFnLHt2YWx1ZToiTW9kdWxlIn0pKSxDdD0iaW8ubW9kZWxjb250ZXh0cHJvdG9jb2wvcmVsYXRlZC10YXNrIixhYT0iMi4wIixwZT1uYShlPT5lIT09bnVsbCYmKHR5cGVvZiBlPT0ib2JqZWN0Inx8dHlwZW9mIGU9PSJmdW5jdGlvbiIpKSxjZz1VKFtnKCksTCgpLmludCgpXSksbGc9ZygpO2JlKHt0dGw6TCgpLm9wdGlvbmFsKCkscG9sbEludGVydmFsOkwoKS5vcHRpb25hbCgpfSk7Y29uc3QgS3k9ayh7dHRsOkwoKS5vcHRpb25hbCgpfSksR3k9ayh7dGFza0lkOmcoKX0pLFlsPWJlKHtwcm9ncmVzc1Rva2VuOmNnLm9wdGlvbmFsKCksW0N0XTpHeS5vcHRpb25hbCgpfSksWmU9ayh7X21ldGE6WWwub3B0aW9uYWwoKX0pLEpvPVplLmV4dGVuZCh7dGFzazpLeS5vcHRpb25hbCgpfSksSnk9ZT0+Sm8uc2FmZVBhcnNlKGUpLnN1Y2Nlc3MseWU9ayh7bWV0aG9kOmcoKSxwYXJhbXM6WmUubG9vc2UoKS5vcHRpb25hbCgpfSksVWU9ayh7X21ldGE6WWwub3B0aW9uYWwoKX0pLFZlPWsoe21ldGhvZDpnKCkscGFyYW1zOlVlLmxvb3NlKCkub3B0aW9uYWwoKX0pLCRlPWJlKHtfbWV0YTpZbC5vcHRpb25hbCgpfSksWW89VShbZygpLEwoKS5pbnQoKV0pLHVnPWsoe2pzb25ycGM6YihhYSksaWQ6WW8sLi4ueWUuc2hhcGV9KS5zdHJpY3QoKSxTZD1lPT51Zy5zYWZlUGFyc2UoZSkuc3VjY2VzcyxkZz1rKHtqc29ucnBjOmIoYWEpLC4uLlZlLnNoYXBlfSkuc3RyaWN0KCksWXk9ZT0+ZGcuc2FmZVBhcnNlKGUpLnN1Y2Nlc3MsUWw9ayh7anNvbnJwYzpiKGFhKSxpZDpZbyxyZXN1bHQ6JGV9KS5zdHJpY3QoKSxwcz1lPT5RbC5zYWZlUGFyc2UoZSkuc3VjY2Vzczt2YXIgZWU7KGZ1bmN0aW9uKGUpe2VbZS5Db25uZWN0aW9uQ2xvc2VkPS0zMmUzXT0iQ29ubmVjdGlvbkNsb3NlZCIsZVtlLlJlcXVlc3RUaW1lb3V0PS0zMjAwMV09IlJlcXVlc3RUaW1lb3V0IixlW2UuUGFyc2VFcnJvcj0tMzI3MDBdPSJQYXJzZUVycm9yIixlW2UuSW52YWxpZFJlcXVlc3Q9LTMyNjAwXT0iSW52YWxpZFJlcXVlc3QiLGVbZS5NZXRob2ROb3RGb3VuZD0tMzI2MDFdPSJNZXRob2ROb3RGb3VuZCIsZVtlLkludmFsaWRQYXJhbXM9LTMyNjAyXT0iSW52YWxpZFBhcmFtcyIsZVtlLkludGVybmFsRXJyb3I9LTMyNjAzXT0iSW50ZXJuYWxFcnJvciIsZVtlLlVybEVsaWNpdGF0aW9uUmVxdWlyZWQ9LTMyMDQyXT0iVXJsRWxpY2l0YXRpb25SZXF1aXJlZCJ9KShlZXx8KGVlPXt9KSk7Y29uc3QgWGw9ayh7anNvbnJwYzpiKGFhKSxpZDpZby5vcHRpb25hbCgpLGVycm9yOmsoe2NvZGU6TCgpLmludCgpLG1lc3NhZ2U6ZygpLGRhdGE6dGUoKS5vcHRpb25hbCgpfSl9KS5zdHJpY3QoKSxReT1lPT5YbC5zYWZlUGFyc2UoZSkuc3VjY2VzcyxYeT1VKFt1ZyxkZyxRbCxYbF0pO1UoW1FsLFhsXSk7Y29uc3QgZXU9JGUuc3RyaWN0KCksZTA9VWUuZXh0ZW5kKHtyZXF1ZXN0SWQ6WW8ub3B0aW9uYWwoKSxyZWFzb246ZygpLm9wdGlvbmFsKCl9KSx0dT1WZS5leHRlbmQoe21ldGhvZDpiKCJub3RpZmljYXRpb25zL2NhbmNlbGxlZCIpLHBhcmFtczplMH0pLHQwPWsoe3NyYzpnKCksbWltZVR5cGU6ZygpLm9wdGlvbmFsKCksc2l6ZXM6UihnKCkpLm9wdGlvbmFsKCksdGhlbWU6a2UoWyJsaWdodCIsImRhcmsiXSkub3B0aW9uYWwoKX0pLFFvPWsoe2ljb25zOlIodDApLm9wdGlvbmFsKCl9KSxhbj1rKHtuYW1lOmcoKSx0aXRsZTpnKCkub3B0aW9uYWwoKX0pLGlhPWFuLmV4dGVuZCh7Li4uYW4uc2hhcGUsLi4uUW8uc2hhcGUsdmVyc2lvbjpnKCksd2Vic2l0ZVVybDpnKCkub3B0aW9uYWwoKSxkZXNjcmlwdGlvbjpnKCkub3B0aW9uYWwoKX0pLG4wPVRuKGsoe2FwcGx5RGVmYXVsdHM6bmUoKS5vcHRpb25hbCgpfSksSyhnKCksdGUoKSkpLG8wPUdvKGU9PmUmJnR5cGVvZiBlPT0ib2JqZWN0IiYmIUFycmF5LmlzQXJyYXkoZSkmJk9iamVjdC5rZXlzKGUpLmxlbmd0aD09PTA/e2Zvcm06e319OmUsVG4oayh7Zm9ybTpuMC5vcHRpb25hbCgpLHVybDpwZS5vcHRpb25hbCgpfSksSyhnKCksdGUoKSkub3B0aW9uYWwoKSkpLHMwPWJlKHtsaXN0OnBlLm9wdGlvbmFsKCksY2FuY2VsOnBlLm9wdGlvbmFsKCkscmVxdWVzdHM6YmUoe3NhbXBsaW5nOmJlKHtjcmVhdGVNZXNzYWdlOnBlLm9wdGlvbmFsKCl9KS5vcHRpb25hbCgpLGVsaWNpdGF0aW9uOmJlKHtjcmVhdGU6cGUub3B0aW9uYWwoKX0pLm9wdGlvbmFsKCl9KS5vcHRpb25hbCgpfSkscjA9YmUoe2xpc3Q6cGUub3B0aW9uYWwoKSxjYW5jZWw6cGUub3B0aW9uYWwoKSxyZXF1ZXN0czpiZSh7dG9vbHM6YmUoe2NhbGw6cGUub3B0aW9uYWwoKX0pLm9wdGlvbmFsKCl9KS5vcHRpb25hbCgpfSksYTA9ayh7ZXhwZXJpbWVudGFsOksoZygpLHBlKS5vcHRpb25hbCgpLHNhbXBsaW5nOmsoe2NvbnRleHQ6cGUub3B0aW9uYWwoKSx0b29sczpwZS5vcHRpb25hbCgpfSkub3B0aW9uYWwoKSxlbGljaXRhdGlvbjpvMC5vcHRpb25hbCgpLHJvb3RzOmsoe2xpc3RDaGFuZ2VkOm5lKCkub3B0aW9uYWwoKX0pLm9wdGlvbmFsKCksdGFza3M6czAub3B0aW9uYWwoKSxleHRlbnNpb25zOksoZygpLHBlKS5vcHRpb25hbCgpfSksaTA9WmUuZXh0ZW5kKHtwcm90b2NvbFZlcnNpb246ZygpLGNhcGFiaWxpdGllczphMCxjbGllbnRJbmZvOmlhfSksYzA9eWUuZXh0ZW5kKHttZXRob2Q6YigiaW5pdGlhbGl6ZSIpLHBhcmFtczppMH0pLGwwPWsoe2V4cGVyaW1lbnRhbDpLKGcoKSxwZSkub3B0aW9uYWwoKSxsb2dnaW5nOnBlLm9wdGlvbmFsKCksY29tcGxldGlvbnM6cGUub3B0aW9uYWwoKSxwcm9tcHRzOmsoe2xpc3RDaGFuZ2VkOm5lKCkub3B0aW9uYWwoKX0pLm9wdGlvbmFsKCkscmVzb3VyY2VzOmsoe3N1YnNjcmliZTpuZSgpLm9wdGlvbmFsKCksbGlzdENoYW5nZWQ6bmUoKS5vcHRpb25hbCgpfSkub3B0aW9uYWwoKSx0b29sczprKHtsaXN0Q2hhbmdlZDpuZSgpLm9wdGlvbmFsKCl9KS5vcHRpb25hbCgpLHRhc2tzOnIwLm9wdGlvbmFsKCksZXh0ZW5zaW9uczpLKGcoKSxwZSkub3B0aW9uYWwoKX0pLHUwPSRlLmV4dGVuZCh7cHJvdG9jb2xWZXJzaW9uOmcoKSxjYXBhYmlsaXRpZXM6bDAsc2VydmVySW5mbzppYSxpbnN0cnVjdGlvbnM6ZygpLm9wdGlvbmFsKCl9KSxkMD1WZS5leHRlbmQoe21ldGhvZDpiKCJub3RpZmljYXRpb25zL2luaXRpYWxpemVkIikscGFyYW1zOlVlLm9wdGlvbmFsKCl9KSxjYT15ZS5leHRlbmQoe21ldGhvZDpiKCJwaW5nIikscGFyYW1zOlplLm9wdGlvbmFsKCl9KSxoMD1rKHtwcm9ncmVzczpMKCksdG90YWw6YWUoTCgpKSxtZXNzYWdlOmFlKGcoKSl9KSxwMD1rKHsuLi5VZS5zaGFwZSwuLi5oMC5zaGFwZSxwcm9ncmVzc1Rva2VuOmNnfSksbnU9VmUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9wcm9ncmVzcyIpLHBhcmFtczpwMH0pLG0wPVplLmV4dGVuZCh7Y3Vyc29yOmxnLm9wdGlvbmFsKCl9KSxYbz15ZS5leHRlbmQoe3BhcmFtczptMC5vcHRpb25hbCgpfSksZXM9JGUuZXh0ZW5kKHtuZXh0Q3Vyc29yOmxnLm9wdGlvbmFsKCl9KSxmMD1rZShbIndvcmtpbmciLCJpbnB1dF9yZXF1aXJlZCIsImNvbXBsZXRlZCIsImZhaWxlZCIsImNhbmNlbGxlZCJdKSx0cz1rKHt0YXNrSWQ6ZygpLHN0YXR1czpmMCx0dGw6VShbTCgpLEJvKCldKSxjcmVhdGVkQXQ6ZygpLGxhc3RVcGRhdGVkQXQ6ZygpLHBvbGxJbnRlcnZhbDphZShMKCkpLHN0YXR1c01lc3NhZ2U6YWUoZygpKX0pLG91PSRlLmV4dGVuZCh7dGFzazp0c30pLGcwPVVlLm1lcmdlKHRzKSx4cz1WZS5leHRlbmQoe21ldGhvZDpiKCJub3RpZmljYXRpb25zL3Rhc2tzL3N0YXR1cyIpLHBhcmFtczpnMH0pLHN1PXllLmV4dGVuZCh7bWV0aG9kOmIoInRhc2tzL2dldCIpLHBhcmFtczpaZS5leHRlbmQoe3Rhc2tJZDpnKCl9KX0pLHJ1PSRlLm1lcmdlKHRzKSxhdT15ZS5leHRlbmQoe21ldGhvZDpiKCJ0YXNrcy9yZXN1bHQiKSxwYXJhbXM6WmUuZXh0ZW5kKHt0YXNrSWQ6ZygpfSl9KTskZS5sb29zZSgpO2NvbnN0IGl1PVhvLmV4dGVuZCh7bWV0aG9kOmIoInRhc2tzL2xpc3QiKX0pLGN1PWVzLmV4dGVuZCh7dGFza3M6Uih0cyl9KSxsdT15ZS5leHRlbmQoe21ldGhvZDpiKCJ0YXNrcy9jYW5jZWwiKSxwYXJhbXM6WmUuZXh0ZW5kKHt0YXNrSWQ6ZygpfSl9KSxiMD0kZS5tZXJnZSh0cyksaGc9ayh7dXJpOmcoKSxtaW1lVHlwZTphZShnKCkpLF9tZXRhOksoZygpLHRlKCkpLm9wdGlvbmFsKCl9KSxwZz1oZy5leHRlbmQoe3RleHQ6ZygpfSksdXU9ZygpLnJlZmluZShlPT57dHJ5e3JldHVybiBhdG9iKGUpLCEwfWNhdGNoe3JldHVybiExfX0se21lc3NhZ2U6IkludmFsaWQgQmFzZTY0IHN0cmluZyJ9KSxtZz1oZy5leHRlbmQoe2Jsb2I6dXV9KSxucz1rZShbInVzZXIiLCJhc3Npc3RhbnQiXSksUG49ayh7YXVkaWVuY2U6Uihucykub3B0aW9uYWwoKSxwcmlvcml0eTpMKCkubWluKDApLm1heCgxKS5vcHRpb25hbCgpLGxhc3RNb2RpZmllZDplZyh7b2Zmc2V0OiEwfSkub3B0aW9uYWwoKX0pLGZnPWsoey4uLmFuLnNoYXBlLC4uLlFvLnNoYXBlLHVyaTpnKCksZGVzY3JpcHRpb246YWUoZygpKSxtaW1lVHlwZTphZShnKCkpLHNpemU6YWUoTCgpKSxhbm5vdGF0aW9uczpQbi5vcHRpb25hbCgpLF9tZXRhOmFlKGJlKHt9KSl9KSx2MD1rKHsuLi5hbi5zaGFwZSwuLi5Rby5zaGFwZSx1cmlUZW1wbGF0ZTpnKCksZGVzY3JpcHRpb246YWUoZygpKSxtaW1lVHlwZTphZShnKCkpLGFubm90YXRpb25zOlBuLm9wdGlvbmFsKCksX21ldGE6YWUoYmUoe30pKX0pLGswPVhvLmV4dGVuZCh7bWV0aG9kOmIoInJlc291cmNlcy9saXN0Iil9KSxnZz1lcy5leHRlbmQoe3Jlc291cmNlczpSKGZnKX0pLHkwPVhvLmV4dGVuZCh7bWV0aG9kOmIoInJlc291cmNlcy90ZW1wbGF0ZXMvbGlzdCIpfSksJDA9ZXMuZXh0ZW5kKHtyZXNvdXJjZVRlbXBsYXRlczpSKHYwKX0pLGR1PVplLmV4dGVuZCh7dXJpOmcoKX0pLHcwPWR1LFMwPXllLmV4dGVuZCh7bWV0aG9kOmIoInJlc291cmNlcy9yZWFkIikscGFyYW1zOncwfSksYmc9JGUuZXh0ZW5kKHtjb250ZW50czpSKFUoW3BnLG1nXSkpfSksXzA9VmUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9yZXNvdXJjZXMvbGlzdF9jaGFuZ2VkIikscGFyYW1zOlVlLm9wdGlvbmFsKCl9KSxqMD1kdSxUMD15ZS5leHRlbmQoe21ldGhvZDpiKCJyZXNvdXJjZXMvc3Vic2NyaWJlIikscGFyYW1zOmowfSksQTA9ZHUsejA9eWUuZXh0ZW5kKHttZXRob2Q6YigicmVzb3VyY2VzL3Vuc3Vic2NyaWJlIikscGFyYW1zOkEwfSksQzA9VWUuZXh0ZW5kKHt1cmk6ZygpfSksTjA9VmUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9yZXNvdXJjZXMvdXBkYXRlZCIpLHBhcmFtczpDMH0pLFAwPWsoe25hbWU6ZygpLGRlc2NyaXB0aW9uOmFlKGcoKSkscmVxdWlyZWQ6YWUobmUoKSl9KSx4MD1rKHsuLi5hbi5zaGFwZSwuLi5Rby5zaGFwZSxkZXNjcmlwdGlvbjphZShnKCkpLGFyZ3VtZW50czphZShSKFAwKSksX21ldGE6YWUoYmUoe30pKX0pLEkwPVhvLmV4dGVuZCh7bWV0aG9kOmIoInByb21wdHMvbGlzdCIpfSksRTA9ZXMuZXh0ZW5kKHtwcm9tcHRzOlIoeDApfSksUjA9WmUuZXh0ZW5kKHtuYW1lOmcoKSxhcmd1bWVudHM6SyhnKCksZygpKS5vcHRpb25hbCgpfSksTzA9eWUuZXh0ZW5kKHttZXRob2Q6YigicHJvbXB0cy9nZXQiKSxwYXJhbXM6UjB9KSxodT1rKHt0eXBlOmIoInRleHQiKSx0ZXh0OmcoKSxhbm5vdGF0aW9uczpQbi5vcHRpb25hbCgpLF9tZXRhOksoZygpLHRlKCkpLm9wdGlvbmFsKCl9KSxwdT1rKHt0eXBlOmIoImltYWdlIiksZGF0YTp1dSxtaW1lVHlwZTpnKCksYW5ub3RhdGlvbnM6UG4ub3B0aW9uYWwoKSxfbWV0YTpLKGcoKSx0ZSgpKS5vcHRpb25hbCgpfSksbXU9ayh7dHlwZTpiKCJhdWRpbyIpLGRhdGE6dXUsbWltZVR5cGU6ZygpLGFubm90YXRpb25zOlBuLm9wdGlvbmFsKCksX21ldGE6SyhnKCksdGUoKSkub3B0aW9uYWwoKX0pLE0wPWsoe3R5cGU6YigidG9vbF91c2UiKSxuYW1lOmcoKSxpZDpnKCksaW5wdXQ6SyhnKCksdGUoKSksX21ldGE6SyhnKCksdGUoKSkub3B0aW9uYWwoKX0pLHZnPWsoe3R5cGU6YigicmVzb3VyY2UiKSxyZXNvdXJjZTpVKFtwZyxtZ10pLGFubm90YXRpb25zOlBuLm9wdGlvbmFsKCksX21ldGE6SyhnKCksdGUoKSkub3B0aW9uYWwoKX0pLGtnPWZnLmV4dGVuZCh7dHlwZTpiKCJyZXNvdXJjZV9saW5rIil9KSxvcz1VKFtodSxwdSxtdSxrZyx2Z10pLFowPWsoe3JvbGU6bnMsY29udGVudDpvc30pLHEwPSRlLmV4dGVuZCh7ZGVzY3JpcHRpb246ZygpLm9wdGlvbmFsKCksbWVzc2FnZXM6UihaMCl9KSxEMD1WZS5leHRlbmQoe21ldGhvZDpiKCJub3RpZmljYXRpb25zL3Byb21wdHMvbGlzdF9jaGFuZ2VkIikscGFyYW1zOlVlLm9wdGlvbmFsKCl9KSxMMD1rKHt0aXRsZTpnKCkub3B0aW9uYWwoKSxyZWFkT25seUhpbnQ6bmUoKS5vcHRpb25hbCgpLGRlc3RydWN0aXZlSGludDpuZSgpLm9wdGlvbmFsKCksaWRlbXBvdGVudEhpbnQ6bmUoKS5vcHRpb25hbCgpLG9wZW5Xb3JsZEhpbnQ6bmUoKS5vcHRpb25hbCgpfSksQjA9ayh7dGFza1N1cHBvcnQ6a2UoWyJyZXF1aXJlZCIsIm9wdGlvbmFsIiwiZm9yYmlkZGVuIl0pLm9wdGlvbmFsKCl9KSxmdT1rKHsuLi5hbi5zaGFwZSwuLi5Rby5zaGFwZSxkZXNjcmlwdGlvbjpnKCkub3B0aW9uYWwoKSxpbnB1dFNjaGVtYTprKHt0eXBlOmIoIm9iamVjdCIpLHByb3BlcnRpZXM6SyhnKCkscGUpLm9wdGlvbmFsKCkscmVxdWlyZWQ6UihnKCkpLm9wdGlvbmFsKCl9KS5jYXRjaGFsbCh0ZSgpKSxvdXRwdXRTY2hlbWE6ayh7dHlwZTpiKCJvYmplY3QiKSxwcm9wZXJ0aWVzOksoZygpLHBlKS5vcHRpb25hbCgpLHJlcXVpcmVkOlIoZygpKS5vcHRpb25hbCgpfSkuY2F0Y2hhbGwodGUoKSkub3B0aW9uYWwoKSxhbm5vdGF0aW9uczpMMC5vcHRpb25hbCgpLGV4ZWN1dGlvbjpCMC5vcHRpb25hbCgpLF9tZXRhOksoZygpLHRlKCkpLm9wdGlvbmFsKCl9KSx5Zz1Yby5leHRlbmQoe21ldGhvZDpiKCJ0b29scy9saXN0Iil9KSxIMD1lcy5leHRlbmQoe3Rvb2xzOlIoZnUpfSksbGE9JGUuZXh0ZW5kKHtjb250ZW50OlIob3MpLmRlZmF1bHQoW10pLHN0cnVjdHVyZWRDb250ZW50OksoZygpLHRlKCkpLm9wdGlvbmFsKCksaXNFcnJvcjpuZSgpLm9wdGlvbmFsKCl9KTtsYS5vcigkZS5leHRlbmQoe3Rvb2xSZXN1bHQ6dGUoKX0pKTtjb25zdCBGMD1Kby5leHRlbmQoe25hbWU6ZygpLGFyZ3VtZW50czpLKGcoKSx0ZSgpKS5vcHRpb25hbCgpfSksJGc9eWUuZXh0ZW5kKHttZXRob2Q6YigidG9vbHMvY2FsbCIpLHBhcmFtczpGMH0pLFUwPVZlLmV4dGVuZCh7bWV0aG9kOmIoIm5vdGlmaWNhdGlvbnMvdG9vbHMvbGlzdF9jaGFuZ2VkIikscGFyYW1zOlVlLm9wdGlvbmFsKCl9KTtrKHthdXRvUmVmcmVzaDpuZSgpLmRlZmF1bHQoITApLGRlYm91bmNlTXM6TCgpLmludCgpLm5vbm5lZ2F0aXZlKCkuZGVmYXVsdCgzMDApfSk7Y29uc3Qgd2c9a2UoWyJkZWJ1ZyIsImluZm8iLCJub3RpY2UiLCJ3YXJuaW5nIiwiZXJyb3IiLCJjcml0aWNhbCIsImFsZXJ0IiwiZW1lcmdlbmN5Il0pLFYwPVplLmV4dGVuZCh7bGV2ZWw6d2d9KSxXMD15ZS5leHRlbmQoe21ldGhvZDpiKCJsb2dnaW5nL3NldExldmVsIikscGFyYW1zOlYwfSksSzA9VWUuZXh0ZW5kKHtsZXZlbDp3Zyxsb2dnZXI6ZygpLm9wdGlvbmFsKCksZGF0YTp0ZSgpfSksRzA9VmUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9tZXNzYWdlIikscGFyYW1zOkswfSksSjA9ayh7bmFtZTpnKCkub3B0aW9uYWwoKX0pLFkwPWsoe2hpbnRzOlIoSjApLm9wdGlvbmFsKCksY29zdFByaW9yaXR5OkwoKS5taW4oMCkubWF4KDEpLm9wdGlvbmFsKCksc3BlZWRQcmlvcml0eTpMKCkubWluKDApLm1heCgxKS5vcHRpb25hbCgpLGludGVsbGlnZW5jZVByaW9yaXR5OkwoKS5taW4oMCkubWF4KDEpLm9wdGlvbmFsKCl9KSxRMD1rKHttb2RlOmtlKFsiYXV0byIsInJlcXVpcmVkIiwibm9uZSJdKS5vcHRpb25hbCgpfSksWDA9ayh7dHlwZTpiKCJ0b29sX3Jlc3VsdCIpLHRvb2xVc2VJZDpnKCkuZGVzY3JpYmUoIlRoZSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGNvcnJlc3BvbmRpbmcgdG9vbCBjYWxsLiIpLGNvbnRlbnQ6UihvcykuZGVmYXVsdChbXSksc3RydWN0dXJlZENvbnRlbnQ6ayh7fSkubG9vc2UoKS5vcHRpb25hbCgpLGlzRXJyb3I6bmUoKS5vcHRpb25hbCgpLF9tZXRhOksoZygpLHRlKCkpLm9wdGlvbmFsKCl9KSxlJD1VbygidHlwZSIsW2h1LHB1LG11XSksSXM9VW8oInR5cGUiLFtodSxwdSxtdSxNMCxYMF0pLHQkPWsoe3JvbGU6bnMsY29udGVudDpVKFtJcyxSKElzKV0pLF9tZXRhOksoZygpLHRlKCkpLm9wdGlvbmFsKCl9KSxuJD1Kby5leHRlbmQoe21lc3NhZ2VzOlIodCQpLG1vZGVsUHJlZmVyZW5jZXM6WTAub3B0aW9uYWwoKSxzeXN0ZW1Qcm9tcHQ6ZygpLm9wdGlvbmFsKCksaW5jbHVkZUNvbnRleHQ6a2UoWyJub25lIiwidGhpc1NlcnZlciIsImFsbFNlcnZlcnMiXSkub3B0aW9uYWwoKSx0ZW1wZXJhdHVyZTpMKCkub3B0aW9uYWwoKSxtYXhUb2tlbnM6TCgpLmludCgpLHN0b3BTZXF1ZW5jZXM6UihnKCkpLm9wdGlvbmFsKCksbWV0YWRhdGE6cGUub3B0aW9uYWwoKSx0b29sczpSKGZ1KS5vcHRpb25hbCgpLHRvb2xDaG9pY2U6UTAub3B0aW9uYWwoKX0pLG8kPXllLmV4dGVuZCh7bWV0aG9kOmIoInNhbXBsaW5nL2NyZWF0ZU1lc3NhZ2UiKSxwYXJhbXM6biR9KSxTZz0kZS5leHRlbmQoe21vZGVsOmcoKSxzdG9wUmVhc29uOmFlKGtlKFsiZW5kVHVybiIsInN0b3BTZXF1ZW5jZSIsIm1heFRva2VucyJdKS5vcihnKCkpKSxyb2xlOm5zLGNvbnRlbnQ6ZSR9KSxfZz0kZS5leHRlbmQoe21vZGVsOmcoKSxzdG9wUmVhc29uOmFlKGtlKFsiZW5kVHVybiIsInN0b3BTZXF1ZW5jZSIsIm1heFRva2VucyIsInRvb2xVc2UiXSkub3IoZygpKSkscm9sZTpucyxjb250ZW50OlUoW0lzLFIoSXMpXSl9KSxzJD1rKHt0eXBlOmIoImJvb2xlYW4iKSx0aXRsZTpnKCkub3B0aW9uYWwoKSxkZXNjcmlwdGlvbjpnKCkub3B0aW9uYWwoKSxkZWZhdWx0Om5lKCkub3B0aW9uYWwoKX0pLHIkPWsoe3R5cGU6Yigic3RyaW5nIiksdGl0bGU6ZygpLm9wdGlvbmFsKCksZGVzY3JpcHRpb246ZygpLm9wdGlvbmFsKCksbWluTGVuZ3RoOkwoKS5vcHRpb25hbCgpLG1heExlbmd0aDpMKCkub3B0aW9uYWwoKSxmb3JtYXQ6a2UoWyJlbWFpbCIsInVyaSIsImRhdGUiLCJkYXRlLXRpbWUiXSkub3B0aW9uYWwoKSxkZWZhdWx0OmcoKS5vcHRpb25hbCgpfSksYSQ9ayh7dHlwZTprZShbIm51bWJlciIsImludGVnZXIiXSksdGl0bGU6ZygpLm9wdGlvbmFsKCksZGVzY3JpcHRpb246ZygpLm9wdGlvbmFsKCksbWluaW11bTpMKCkub3B0aW9uYWwoKSxtYXhpbXVtOkwoKS5vcHRpb25hbCgpLGRlZmF1bHQ6TCgpLm9wdGlvbmFsKCl9KSxpJD1rKHt0eXBlOmIoInN0cmluZyIpLHRpdGxlOmcoKS5vcHRpb25hbCgpLGRlc2NyaXB0aW9uOmcoKS5vcHRpb25hbCgpLGVudW06UihnKCkpLGRlZmF1bHQ6ZygpLm9wdGlvbmFsKCl9KSxjJD1rKHt0eXBlOmIoInN0cmluZyIpLHRpdGxlOmcoKS5vcHRpb25hbCgpLGRlc2NyaXB0aW9uOmcoKS5vcHRpb25hbCgpLG9uZU9mOlIoayh7Y29uc3Q6ZygpLHRpdGxlOmcoKX0pKSxkZWZhdWx0OmcoKS5vcHRpb25hbCgpfSksbCQ9ayh7dHlwZTpiKCJzdHJpbmciKSx0aXRsZTpnKCkub3B0aW9uYWwoKSxkZXNjcmlwdGlvbjpnKCkub3B0aW9uYWwoKSxlbnVtOlIoZygpKSxlbnVtTmFtZXM6UihnKCkpLm9wdGlvbmFsKCksZGVmYXVsdDpnKCkub3B0aW9uYWwoKX0pLHUkPVUoW2kkLGMkXSksZCQ9ayh7dHlwZTpiKCJhcnJheSIpLHRpdGxlOmcoKS5vcHRpb25hbCgpLGRlc2NyaXB0aW9uOmcoKS5vcHRpb25hbCgpLG1pbkl0ZW1zOkwoKS5vcHRpb25hbCgpLG1heEl0ZW1zOkwoKS5vcHRpb25hbCgpLGl0ZW1zOmsoe3R5cGU6Yigic3RyaW5nIiksZW51bTpSKGcoKSl9KSxkZWZhdWx0OlIoZygpKS5vcHRpb25hbCgpfSksaCQ9ayh7dHlwZTpiKCJhcnJheSIpLHRpdGxlOmcoKS5vcHRpb25hbCgpLGRlc2NyaXB0aW9uOmcoKS5vcHRpb25hbCgpLG1pbkl0ZW1zOkwoKS5vcHRpb25hbCgpLG1heEl0ZW1zOkwoKS5vcHRpb25hbCgpLGl0ZW1zOmsoe2FueU9mOlIoayh7Y29uc3Q6ZygpLHRpdGxlOmcoKX0pKX0pLGRlZmF1bHQ6UihnKCkpLm9wdGlvbmFsKCl9KSxwJD1VKFtkJCxoJF0pLG0kPVUoW2wkLHUkLHAkXSksZiQ9VShbbSQscyQsciQsYSRdKSxnJD1Kby5leHRlbmQoe21vZGU6YigiZm9ybSIpLm9wdGlvbmFsKCksbWVzc2FnZTpnKCkscmVxdWVzdGVkU2NoZW1hOmsoe3R5cGU6Yigib2JqZWN0IikscHJvcGVydGllczpLKGcoKSxmJCkscmVxdWlyZWQ6UihnKCkpLm9wdGlvbmFsKCl9KX0pLGIkPUpvLmV4dGVuZCh7bW9kZTpiKCJ1cmwiKSxtZXNzYWdlOmcoKSxlbGljaXRhdGlvbklkOmcoKSx1cmw6ZygpLnVybCgpfSksdiQ9VShbZyQsYiRdKSxrJD15ZS5leHRlbmQoe21ldGhvZDpiKCJlbGljaXRhdGlvbi9jcmVhdGUiKSxwYXJhbXM6diR9KSx5JD1VZS5leHRlbmQoe2VsaWNpdGF0aW9uSWQ6ZygpfSksJCQ9VmUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9lbGljaXRhdGlvbi9jb21wbGV0ZSIpLHBhcmFtczp5JH0pLHckPSRlLmV4dGVuZCh7YWN0aW9uOmtlKFsiYWNjZXB0IiwiZGVjbGluZSIsImNhbmNlbCJdKSxjb250ZW50OkdvKGU9PmU9PT1udWxsP3ZvaWQgMDplLEsoZygpLFUoW2coKSxMKCksbmUoKSxSKGcoKSldKSkub3B0aW9uYWwoKSl9KSxTJD1rKHt0eXBlOmIoInJlZi9yZXNvdXJjZSIpLHVyaTpnKCl9KSxfJD1rKHt0eXBlOmIoInJlZi9wcm9tcHQiKSxuYW1lOmcoKX0pLGokPVplLmV4dGVuZCh7cmVmOlUoW18kLFMkXSksYXJndW1lbnQ6ayh7bmFtZTpnKCksdmFsdWU6ZygpfSksY29udGV4dDprKHthcmd1bWVudHM6SyhnKCksZygpKS5vcHRpb25hbCgpfSkub3B0aW9uYWwoKX0pLFQkPXllLmV4dGVuZCh7bWV0aG9kOmIoImNvbXBsZXRpb24vY29tcGxldGUiKSxwYXJhbXM6aiR9KSxBJD0kZS5leHRlbmQoe2NvbXBsZXRpb246YmUoe3ZhbHVlczpSKGcoKSkubWF4KDEwMCksdG90YWw6YWUoTCgpLmludCgpKSxoYXNNb3JlOmFlKG5lKCkpfSl9KSx6JD1rKHt1cmk6ZygpLnN0YXJ0c1dpdGgoImZpbGU6Ly8iKSxuYW1lOmcoKS5vcHRpb25hbCgpLF9tZXRhOksoZygpLHRlKCkpLm9wdGlvbmFsKCl9KSxDJD15ZS5leHRlbmQoe21ldGhvZDpiKCJyb290cy9saXN0IikscGFyYW1zOlplLm9wdGlvbmFsKCl9KSxOJD0kZS5leHRlbmQoe3Jvb3RzOlIoeiQpfSksUCQ9VmUuZXh0ZW5kKHttZXRob2Q6Yigibm90aWZpY2F0aW9ucy9yb290cy9saXN0X2NoYW5nZWQiKSxwYXJhbXM6VWUub3B0aW9uYWwoKX0pO1UoW2NhLGMwLFQkLFcwLE8wLEkwLGswLHkwLFMwLFQwLHowLCRnLHlnLHN1LGF1LGl1LGx1XSk7VShbdHUsbnUsZDAsUCQseHNdKTtVKFtldSxTZyxfZyx3JCxOJCxydSxjdSxvdV0pO1UoW2NhLG8kLGskLEMkLHN1LGF1LGl1LGx1XSk7VShbdHUsbnUsRzAsTjAsXzAsVTAsRDAseHMsJCRdKTtVKFtldSx1MCxBJCxxMCxFMCxnZywkMCxiZyxsYSxIMCxydSxjdSxvdV0pO2NsYXNzIFkgZXh0ZW5kcyBFcnJvcntjb25zdHJ1Y3Rvcih0LG4sbyl7c3VwZXIoYE1DUCBlcnJvciAke3R9OiAke259YCksdGhpcy5jb2RlPXQsdGhpcy5kYXRhPW8sdGhpcy5uYW1lPSJNY3BFcnJvciJ9c3RhdGljIGZyb21FcnJvcih0LG4sbyl7aWYodD09PWVlLlVybEVsaWNpdGF0aW9uUmVxdWlyZWQmJm8pe2NvbnN0IHM9bztpZihzLmVsaWNpdGF0aW9ucylyZXR1cm4gbmV3IHgkKHMuZWxpY2l0YXRpb25zLG4pfXJldHVybiBuZXcgWSh0LG4sbyl9fWNsYXNzIHgkIGV4dGVuZHMgWXtjb25zdHJ1Y3Rvcih0LG49YFVSTCBlbGljaXRhdGlvbiR7dC5sZW5ndGg+MT8icyI6IiJ9IHJlcXVpcmVkYCl7c3VwZXIoZWUuVXJsRWxpY2l0YXRpb25SZXF1aXJlZCxuLHtlbGljaXRhdGlvbnM6dH0pfWdldCBlbGljaXRhdGlvbnMoKXtyZXR1cm4gdGhpcy5kYXRhPy5lbGljaXRhdGlvbnM/P1tdfX1mdW5jdGlvbiB6dChlKXtyZXR1cm4gZT09PSJjb21wbGV0ZWQifHxlPT09ImZhaWxlZCJ8fGU9PT0iY2FuY2VsbGVkIn1uZXcgU2V0KCJBQkNERUZHSElKS0xNTk9QUVJTVFVWWFlaYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnh5ejAxMjM0NTY3ODkiKTtmdW5jdGlvbiBfZChlKXtjb25zdCBuPVN5KGUpPy5tZXRob2Q7aWYoIW4pdGhyb3cgbmV3IEVycm9yKCJTY2hlbWEgaXMgbWlzc2luZyBhIG1ldGhvZCBsaXRlcmFsIik7Y29uc3Qgbz1feShuKTtpZih0eXBlb2YgbyE9InN0cmluZyIpdGhyb3cgbmV3IEVycm9yKCJTY2hlbWEgbWV0aG9kIGxpdGVyYWwgbXVzdCBiZSBhIHN0cmluZyIpO3JldHVybiBvfWZ1bmN0aW9uIGpkKGUsdCl7Y29uc3Qgbj1LZihlLHQpO2lmKCFuLnN1Y2Nlc3MpdGhyb3cgbi5lcnJvcjtyZXR1cm4gbi5kYXRhfWNvbnN0IEkkPTZlNDtjbGFzcyBFJHtjb25zdHJ1Y3Rvcih0KXt0aGlzLl9vcHRpb25zPXQsdGhpcy5fcmVxdWVzdE1lc3NhZ2VJZD0wLHRoaXMuX3JlcXVlc3RIYW5kbGVycz1uZXcgTWFwLHRoaXMuX3JlcXVlc3RIYW5kbGVyQWJvcnRDb250cm9sbGVycz1uZXcgTWFwLHRoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzPW5ldyBNYXAsdGhpcy5fcmVzcG9uc2VIYW5kbGVycz1uZXcgTWFwLHRoaXMuX3Byb2dyZXNzSGFuZGxlcnM9bmV3IE1hcCx0aGlzLl90aW1lb3V0SW5mbz1uZXcgTWFwLHRoaXMuX3BlbmRpbmdEZWJvdW5jZWROb3RpZmljYXRpb25zPW5ldyBTZXQsdGhpcy5fdGFza1Byb2dyZXNzVG9rZW5zPW5ldyBNYXAsdGhpcy5fcmVxdWVzdFJlc29sdmVycz1uZXcgTWFwLHRoaXMuc2V0Tm90aWZpY2F0aW9uSGFuZGxlcih0dSxuPT57dGhpcy5fb25jYW5jZWwobil9KSx0aGlzLnNldE5vdGlmaWNhdGlvbkhhbmRsZXIobnUsbj0+e3RoaXMuX29ucHJvZ3Jlc3Mobil9KSx0aGlzLnNldFJlcXVlc3RIYW5kbGVyKGNhLG49Pih7fSkpLHRoaXMuX3Rhc2tTdG9yZT10Py50YXNrU3RvcmUsdGhpcy5fdGFza01lc3NhZ2VRdWV1ZT10Py50YXNrTWVzc2FnZVF1ZXVlLHRoaXMuX3Rhc2tTdG9yZSYmKHRoaXMuc2V0UmVxdWVzdEhhbmRsZXIoc3UsYXN5bmMobixvKT0+e2NvbnN0IHM9YXdhaXQgdGhpcy5fdGFza1N0b3JlLmdldFRhc2sobi5wYXJhbXMudGFza0lkLG8uc2Vzc2lvbklkKTtpZighcyl0aHJvdyBuZXcgWShlZS5JbnZhbGlkUGFyYW1zLCJGYWlsZWQgdG8gcmV0cmlldmUgdGFzazogVGFzayBub3QgZm91bmQiKTtyZXR1cm57Li4uc319KSx0aGlzLnNldFJlcXVlc3RIYW5kbGVyKGF1LGFzeW5jKG4sbyk9Pntjb25zdCBzPWFzeW5jKCk9Pntjb25zdCByPW4ucGFyYW1zLnRhc2tJZDtpZighYXdhaXQgdGhpcy5fdGFza1N0b3JlLmdldFRhc2socixvLnNlc3Npb25JZCkpdGhyb3cgbmV3IFkoZWUuSW52YWxpZFBhcmFtcyxgVGFzayBub3QgZm91bmQ6ICR7cn1gKTtpZih0aGlzLl90YXNrTWVzc2FnZVF1ZXVlKXtsZXQgYztmb3IoO2M9YXdhaXQgdGhpcy5fdGFza01lc3NhZ2VRdWV1ZS5kZXF1ZXVlKHIsby5zZXNzaW9uSWQpOyl7aWYoYy50eXBlPT09InJlc3BvbnNlInx8Yy50eXBlPT09ImVycm9yIil7Y29uc3QgaD1jLm1lc3NhZ2UsZD1oLmlkLHU9dGhpcy5fcmVxdWVzdFJlc29sdmVycy5nZXQoZCk7aWYodSlpZih0aGlzLl9yZXF1ZXN0UmVzb2x2ZXJzLmRlbGV0ZShkKSxjLnR5cGU9PT0icmVzcG9uc2UiKXUoaCk7ZWxzZXtjb25zdCBwPWgsbT1uZXcgWShwLmVycm9yLmNvZGUscC5lcnJvci5tZXNzYWdlLHAuZXJyb3IuZGF0YSk7dShtKX1lbHNle2NvbnN0IHA9Yy50eXBlPT09InJlc3BvbnNlIj8iUmVzcG9uc2UiOiJFcnJvciI7dGhpcy5fb25lcnJvcihuZXcgRXJyb3IoYCR7cH0gaGFuZGxlciBtaXNzaW5nIGZvciByZXF1ZXN0ICR7ZH1gKSl9Y29udGludWV9YXdhaXQgdGhpcy5fdHJhbnNwb3J0Py5zZW5kKGMubWVzc2FnZSx7cmVsYXRlZFJlcXVlc3RJZDpvLnJlcXVlc3RJZH0pfX1jb25zdCBpPWF3YWl0IHRoaXMuX3Rhc2tTdG9yZS5nZXRUYXNrKHIsby5zZXNzaW9uSWQpO2lmKCFpKXRocm93IG5ldyBZKGVlLkludmFsaWRQYXJhbXMsYFRhc2sgbm90IGZvdW5kOiAke3J9YCk7aWYoIXp0KGkuc3RhdHVzKSlyZXR1cm4gYXdhaXQgdGhpcy5fd2FpdEZvclRhc2tVcGRhdGUocixvLnNpZ25hbCxvLnNlc3Npb25JZCksYXdhaXQgcygpO2lmKHp0KGkuc3RhdHVzKSl7Y29uc3QgYz1hd2FpdCB0aGlzLl90YXNrU3RvcmUuZ2V0VGFza1Jlc3VsdChyLG8uc2Vzc2lvbklkKTtyZXR1cm4gdGhpcy5fY2xlYXJUYXNrUXVldWUocixvLnNlc3Npb25JZCksey4uLmMsX21ldGE6ey4uLmMuX21ldGEsW0N0XTp7dGFza0lkOnJ9fX19cmV0dXJuIGF3YWl0IHMoKX07cmV0dXJuIGF3YWl0IHMoKX0pLHRoaXMuc2V0UmVxdWVzdEhhbmRsZXIoaXUsYXN5bmMobixvKT0+e3RyeXtjb25zdHt0YXNrczpzLG5leHRDdXJzb3I6cn09YXdhaXQgdGhpcy5fdGFza1N0b3JlLmxpc3RUYXNrcyhuLnBhcmFtcz8uY3Vyc29yLG8uc2Vzc2lvbklkKTtyZXR1cm57dGFza3M6cyxuZXh0Q3Vyc29yOnIsX21ldGE6e319fWNhdGNoKHMpe3Rocm93IG5ldyBZKGVlLkludmFsaWRQYXJhbXMsYEZhaWxlZCB0byBsaXN0IHRhc2tzOiAke3MgaW5zdGFuY2VvZiBFcnJvcj9zLm1lc3NhZ2U6U3RyaW5nKHMpfWApfX0pLHRoaXMuc2V0UmVxdWVzdEhhbmRsZXIobHUsYXN5bmMobixvKT0+e3RyeXtjb25zdCBzPWF3YWl0IHRoaXMuX3Rhc2tTdG9yZS5nZXRUYXNrKG4ucGFyYW1zLnRhc2tJZCxvLnNlc3Npb25JZCk7aWYoIXMpdGhyb3cgbmV3IFkoZWUuSW52YWxpZFBhcmFtcyxgVGFzayBub3QgZm91bmQ6ICR7bi5wYXJhbXMudGFza0lkfWApO2lmKHp0KHMuc3RhdHVzKSl0aHJvdyBuZXcgWShlZS5JbnZhbGlkUGFyYW1zLGBDYW5ub3QgY2FuY2VsIHRhc2sgaW4gdGVybWluYWwgc3RhdHVzOiAke3Muc3RhdHVzfWApO2F3YWl0IHRoaXMuX3Rhc2tTdG9yZS51cGRhdGVUYXNrU3RhdHVzKG4ucGFyYW1zLnRhc2tJZCwiY2FuY2VsbGVkIiwiQ2xpZW50IGNhbmNlbGxlZCB0YXNrIGV4ZWN1dGlvbi4iLG8uc2Vzc2lvbklkKSx0aGlzLl9jbGVhclRhc2tRdWV1ZShuLnBhcmFtcy50YXNrSWQsby5zZXNzaW9uSWQpO2NvbnN0IHI9YXdhaXQgdGhpcy5fdGFza1N0b3JlLmdldFRhc2sobi5wYXJhbXMudGFza0lkLG8uc2Vzc2lvbklkKTtpZighcil0aHJvdyBuZXcgWShlZS5JbnZhbGlkUGFyYW1zLGBUYXNrIG5vdCBmb3VuZCBhZnRlciBjYW5jZWxsYXRpb246ICR7bi5wYXJhbXMudGFza0lkfWApO3JldHVybntfbWV0YTp7fSwuLi5yfX1jYXRjaChzKXt0aHJvdyBzIGluc3RhbmNlb2YgWT9zOm5ldyBZKGVlLkludmFsaWRSZXF1ZXN0LGBGYWlsZWQgdG8gY2FuY2VsIHRhc2s6ICR7cyBpbnN0YW5jZW9mIEVycm9yP3MubWVzc2FnZTpTdHJpbmcocyl9YCl9fSkpfWFzeW5jIF9vbmNhbmNlbCh0KXtpZighdC5wYXJhbXMucmVxdWVzdElkKXJldHVybjt0aGlzLl9yZXF1ZXN0SGFuZGxlckFib3J0Q29udHJvbGxlcnMuZ2V0KHQucGFyYW1zLnJlcXVlc3RJZCk/LmFib3J0KHQucGFyYW1zLnJlYXNvbil9X3NldHVwVGltZW91dCh0LG4sbyxzLHI9ITEpe3RoaXMuX3RpbWVvdXRJbmZvLnNldCh0LHt0aW1lb3V0SWQ6c2V0VGltZW91dChzLG4pLHN0YXJ0VGltZTpEYXRlLm5vdygpLHRpbWVvdXQ6bixtYXhUb3RhbFRpbWVvdXQ6byxyZXNldFRpbWVvdXRPblByb2dyZXNzOnIsb25UaW1lb3V0OnN9KX1fcmVzZXRUaW1lb3V0KHQpe2NvbnN0IG49dGhpcy5fdGltZW91dEluZm8uZ2V0KHQpO2lmKCFuKXJldHVybiExO2NvbnN0IG89RGF0ZS5ub3coKS1uLnN0YXJ0VGltZTtpZihuLm1heFRvdGFsVGltZW91dCYmbz49bi5tYXhUb3RhbFRpbWVvdXQpdGhyb3cgdGhpcy5fdGltZW91dEluZm8uZGVsZXRlKHQpLFkuZnJvbUVycm9yKGVlLlJlcXVlc3RUaW1lb3V0LCJNYXhpbXVtIHRvdGFsIHRpbWVvdXQgZXhjZWVkZWQiLHttYXhUb3RhbFRpbWVvdXQ6bi5tYXhUb3RhbFRpbWVvdXQsdG90YWxFbGFwc2VkOm99KTtyZXR1cm4gY2xlYXJUaW1lb3V0KG4udGltZW91dElkKSxuLnRpbWVvdXRJZD1zZXRUaW1lb3V0KG4ub25UaW1lb3V0LG4udGltZW91dCksITB9X2NsZWFudXBUaW1lb3V0KHQpe2NvbnN0IG49dGhpcy5fdGltZW91dEluZm8uZ2V0KHQpO24mJihjbGVhclRpbWVvdXQobi50aW1lb3V0SWQpLHRoaXMuX3RpbWVvdXRJbmZvLmRlbGV0ZSh0KSl9YXN5bmMgY29ubmVjdCh0KXtpZih0aGlzLl90cmFuc3BvcnQpdGhyb3cgbmV3IEVycm9yKCJBbHJlYWR5IGNvbm5lY3RlZCB0byBhIHRyYW5zcG9ydC4gQ2FsbCBjbG9zZSgpIGJlZm9yZSBjb25uZWN0aW5nIHRvIGEgbmV3IHRyYW5zcG9ydCwgb3IgdXNlIGEgc2VwYXJhdGUgUHJvdG9jb2wgaW5zdGFuY2UgcGVyIGNvbm5lY3Rpb24uIik7dGhpcy5fdHJhbnNwb3J0PXQ7Y29uc3Qgbj10aGlzLnRyYW5zcG9ydD8ub25jbG9zZTt0aGlzLl90cmFuc3BvcnQub25jbG9zZT0oKT0+e24/LigpLHRoaXMuX29uY2xvc2UoKX07Y29uc3Qgbz10aGlzLnRyYW5zcG9ydD8ub25lcnJvcjt0aGlzLl90cmFuc3BvcnQub25lcnJvcj1yPT57bz8uKHIpLHRoaXMuX29uZXJyb3Iocil9O2NvbnN0IHM9dGhpcy5fdHJhbnNwb3J0Py5vbm1lc3NhZ2U7dGhpcy5fdHJhbnNwb3J0Lm9ubWVzc2FnZT0ocixpKT0+e3M/LihyLGkpLHBzKHIpfHxReShyKT90aGlzLl9vbnJlc3BvbnNlKHIpOlNkKHIpP3RoaXMuX29ucmVxdWVzdChyLGkpOll5KHIpP3RoaXMuX29ubm90aWZpY2F0aW9uKHIpOnRoaXMuX29uZXJyb3IobmV3IEVycm9yKGBVbmtub3duIG1lc3NhZ2UgdHlwZTogJHtKU09OLnN0cmluZ2lmeShyKX1gKSl9LGF3YWl0IHRoaXMuX3RyYW5zcG9ydC5zdGFydCgpfV9vbmNsb3NlKCl7Y29uc3QgdD10aGlzLl9yZXNwb25zZUhhbmRsZXJzO3RoaXMuX3Jlc3BvbnNlSGFuZGxlcnM9bmV3IE1hcCx0aGlzLl9wcm9ncmVzc0hhbmRsZXJzLmNsZWFyKCksdGhpcy5fdGFza1Byb2dyZXNzVG9rZW5zLmNsZWFyKCksdGhpcy5fcGVuZGluZ0RlYm91bmNlZE5vdGlmaWNhdGlvbnMuY2xlYXIoKTtmb3IoY29uc3QgbyBvZiB0aGlzLl90aW1lb3V0SW5mby52YWx1ZXMoKSljbGVhclRpbWVvdXQoby50aW1lb3V0SWQpO3RoaXMuX3RpbWVvdXRJbmZvLmNsZWFyKCk7Zm9yKGNvbnN0IG8gb2YgdGhpcy5fcmVxdWVzdEhhbmRsZXJBYm9ydENvbnRyb2xsZXJzLnZhbHVlcygpKW8uYWJvcnQoKTt0aGlzLl9yZXF1ZXN0SGFuZGxlckFib3J0Q29udHJvbGxlcnMuY2xlYXIoKTtjb25zdCBuPVkuZnJvbUVycm9yKGVlLkNvbm5lY3Rpb25DbG9zZWQsIkNvbm5lY3Rpb24gY2xvc2VkIik7dGhpcy5fdHJhbnNwb3J0PXZvaWQgMCx0aGlzLm9uY2xvc2U/LigpO2Zvcihjb25zdCBvIG9mIHQudmFsdWVzKCkpbyhuKX1fb25lcnJvcih0KXt0aGlzLm9uZXJyb3I/Lih0KX1fb25ub3RpZmljYXRpb24odCl7Y29uc3Qgbj10aGlzLl9ub3RpZmljYXRpb25IYW5kbGVycy5nZXQodC5tZXRob2QpPz90aGlzLmZhbGxiYWNrTm90aWZpY2F0aW9uSGFuZGxlcjtuIT09dm9pZCAwJiZQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT5uKHQpKS5jYXRjaChvPT50aGlzLl9vbmVycm9yKG5ldyBFcnJvcihgVW5jYXVnaHQgZXJyb3IgaW4gbm90aWZpY2F0aW9uIGhhbmRsZXI6ICR7b31gKSkpfV9vbnJlcXVlc3QodCxuKXtjb25zdCBvPXRoaXMuX3JlcXVlc3RIYW5kbGVycy5nZXQodC5tZXRob2QpPz90aGlzLmZhbGxiYWNrUmVxdWVzdEhhbmRsZXIscz10aGlzLl90cmFuc3BvcnQscj10LnBhcmFtcz8uX21ldGE/LltDdF0/LnRhc2tJZCxpPXM/LnNlc3Npb25JZCxjPXRoaXMuX3Rhc2tTdG9yZTtsZXQgaD0hMCxkO2lmKHImJmMmJnRoaXMuX3Rhc2tNZXNzYWdlUXVldWUmJmkhPT12b2lkIDAmJihoPSExLGQ9KGFzeW5jKCk9PntpZighYXdhaXQgYy5nZXRUYXNrKHIsaSkpdGhyb3cgbmV3IFkoZWUuSW52YWxpZFBhcmFtcyxgVGFzayBub3QgZm91bmQ6ICR7cn1gKTtoPSEwfSkoKSksbz09PXZvaWQgMCl7Y29uc3QgJD17anNvbnJwYzoiMi4wIixpZDp0LmlkLGVycm9yOntjb2RlOmVlLk1ldGhvZE5vdEZvdW5kLG1lc3NhZ2U6Ik1ldGhvZCBub3QgZm91bmQifX07aWYociYmZCl7Y29uc3QgUz17dHlwZToiZXJyb3IiLG1lc3NhZ2U6JCx0aW1lc3RhbXA6RGF0ZS5ub3coKX07ZC50aGVuKCgpPT50aGlzLl9lbnF1ZXVlVGFza01lc3NhZ2UocixTLGkpLCgpPT5zPy5zZW5kKCQpKS5jYXRjaChOPT50aGlzLl9vbmVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIHNlbmQgYW4gZXJyb3IgcmVzcG9uc2U6ICR7Tn1gKSkpfWVsc2UgciYmdGhpcy5fdGFza01lc3NhZ2VRdWV1ZT90aGlzLl9lbnF1ZXVlVGFza01lc3NhZ2Uocix7dHlwZToiZXJyb3IiLG1lc3NhZ2U6JCx0aW1lc3RhbXA6RGF0ZS5ub3coKX0scz8uc2Vzc2lvbklkKS5jYXRjaChTPT50aGlzLl9vbmVycm9yKG5ldyBFcnJvcihgRmFpbGVkIHRvIGVucXVldWUgZXJyb3IgcmVzcG9uc2U6ICR7U31gKSkpOnM/LnNlbmQoJCkuY2F0Y2goUz0+dGhpcy5fb25lcnJvcihuZXcgRXJyb3IoYEZhaWxlZCB0byBzZW5kIGFuIGVycm9yIHJlc3BvbnNlOiAke1N9YCkpKTtyZXR1cm59Y29uc3QgdT1uZXcgQWJvcnRDb250cm9sbGVyO3RoaXMuX3JlcXVlc3RIYW5kbGVyQWJvcnRDb250cm9sbGVycy5zZXQodC5pZCx1KTtjb25zdCBwPUp5KHQucGFyYW1zKT90LnBhcmFtcy50YXNrOnZvaWQgMCxtPXRoaXMuX3Rhc2tTdG9yZT90aGlzLnJlcXVlc3RUYXNrU3RvcmUodCxzPy5zZXNzaW9uSWQpOnZvaWQgMCx5PXtzaWduYWw6dS5zaWduYWwsc2Vzc2lvbklkOnM/LnNlc3Npb25JZCxfbWV0YTp0LnBhcmFtcz8uX21ldGEsc2VuZE5vdGlmaWNhdGlvbjphc3luYyAkPT57aWYodS5zaWduYWwuYWJvcnRlZClyZXR1cm47Y29uc3QgUz17cmVsYXRlZFJlcXVlc3RJZDp0LmlkfTtyJiYoUy5yZWxhdGVkVGFzaz17dGFza0lkOnJ9KSxhd2FpdCB0aGlzLm5vdGlmaWNhdGlvbigkLFMpfSxzZW5kUmVxdWVzdDphc3luYygkLFMsTik9PntpZih1LnNpZ25hbC5hYm9ydGVkKXRocm93IG5ldyBZKGVlLkNvbm5lY3Rpb25DbG9zZWQsIlJlcXVlc3Qgd2FzIGNhbmNlbGxlZCIpO2NvbnN0IEU9ey4uLk4scmVsYXRlZFJlcXVlc3RJZDp0LmlkfTtyJiYhRS5yZWxhdGVkVGFzayYmKEUucmVsYXRlZFRhc2s9e3Rhc2tJZDpyfSk7Y29uc3QgVD1FLnJlbGF0ZWRUYXNrPy50YXNrSWQ/P3I7cmV0dXJuIFQmJm0mJmF3YWl0IG0udXBkYXRlVGFza1N0YXR1cyhULCJpbnB1dF9yZXF1aXJlZCIpLGF3YWl0IHRoaXMucmVxdWVzdCgkLFMsRSl9LGF1dGhJbmZvOm4/LmF1dGhJbmZvLHJlcXVlc3RJZDp0LmlkLHJlcXVlc3RJbmZvOm4/LnJlcXVlc3RJbmZvLHRhc2tJZDpyLHRhc2tTdG9yZTptLHRhc2tSZXF1ZXN0ZWRUdGw6cD8udHRsLGNsb3NlU1NFU3RyZWFtOm4/LmNsb3NlU1NFU3RyZWFtLGNsb3NlU3RhbmRhbG9uZVNTRVN0cmVhbTpuPy5jbG9zZVN0YW5kYWxvbmVTU0VTdHJlYW19OyhkPz9Qcm9taXNlLnJlc29sdmUoKSkudGhlbigoKT0+e2lmKGQmJnUuc2lnbmFsLmFib3J0ZWQpdGhyb3cgbmV3IFkoZWUuQ29ubmVjdGlvbkNsb3NlZCwiUmVxdWVzdCB3YXMgY2FuY2VsbGVkIik7cCYmdGhpcy5hc3NlcnRUYXNrSGFuZGxlckNhcGFiaWxpdHkodC5tZXRob2QpfSkudGhlbigoKT0+byh0LHkpKS50aGVuKGFzeW5jICQ9PntpZih1LnNpZ25hbC5hYm9ydGVkKXJldHVybjtjb25zdCBTPXtyZXN1bHQ6JCxqc29ucnBjOiIyLjAiLGlkOnQuaWR9O3ImJnRoaXMuX3Rhc2tNZXNzYWdlUXVldWU/YXdhaXQgdGhpcy5fZW5xdWV1ZVRhc2tNZXNzYWdlKHIse3R5cGU6InJlc3BvbnNlIixtZXNzYWdlOlMsdGltZXN0YW1wOkRhdGUubm93KCl9LHM/LnNlc3Npb25JZCk6YXdhaXQgcz8uc2VuZChTKX0sYXN5bmMgJD0+e2lmKHUuc2lnbmFsLmFib3J0ZWQpcmV0dXJuO2NvbnN0IFM9e2pzb25ycGM6IjIuMCIsaWQ6dC5pZCxlcnJvcjp7Y29kZTpOdW1iZXIuaXNTYWZlSW50ZWdlcigkLmNvZGUpPyQuY29kZTplZS5JbnRlcm5hbEVycm9yLG1lc3NhZ2U6JC5tZXNzYWdlPz8iSW50ZXJuYWwgZXJyb3IiLC4uLiQuZGF0YSE9PXZvaWQgMCYme2RhdGE6JC5kYXRhfX19O3ImJnRoaXMuX3Rhc2tNZXNzYWdlUXVldWUmJmg/YXdhaXQgdGhpcy5fZW5xdWV1ZVRhc2tNZXNzYWdlKHIse3R5cGU6ImVycm9yIixtZXNzYWdlOlMsdGltZXN0YW1wOkRhdGUubm93KCl9LHM/LnNlc3Npb25JZCk6YXdhaXQgcz8uc2VuZChTKX0pLmNhdGNoKCQ9PnRoaXMuX29uZXJyb3IobmV3IEVycm9yKGBGYWlsZWQgdG8gc2VuZCByZXNwb25zZTogJHskfWApKSkuZmluYWxseSgoKT0+e3RoaXMuX3JlcXVlc3RIYW5kbGVyQWJvcnRDb250cm9sbGVycy5nZXQodC5pZCk9PT11JiZ0aGlzLl9yZXF1ZXN0SGFuZGxlckFib3J0Q29udHJvbGxlcnMuZGVsZXRlKHQuaWQpfSl9X29ucHJvZ3Jlc3ModCl7Y29uc3R7cHJvZ3Jlc3NUb2tlbjpuLC4uLm99PXQucGFyYW1zLHM9TnVtYmVyKG4pLHI9dGhpcy5fcHJvZ3Jlc3NIYW5kbGVycy5nZXQocyk7aWYoIXIpe3RoaXMuX29uZXJyb3IobmV3IEVycm9yKGBSZWNlaXZlZCBhIHByb2dyZXNzIG5vdGlmaWNhdGlvbiBmb3IgYW4gdW5rbm93biB0b2tlbjogJHtKU09OLnN0cmluZ2lmeSh0KX1gKSk7cmV0dXJufWNvbnN0IGk9dGhpcy5fcmVzcG9uc2VIYW5kbGVycy5nZXQocyksYz10aGlzLl90aW1lb3V0SW5mby5nZXQocyk7aWYoYyYmaSYmYy5yZXNldFRpbWVvdXRPblByb2dyZXNzKXRyeXt0aGlzLl9yZXNldFRpbWVvdXQocyl9Y2F0Y2goaCl7dGhpcy5fcmVzcG9uc2VIYW5kbGVycy5kZWxldGUocyksdGhpcy5fcHJvZ3Jlc3NIYW5kbGVycy5kZWxldGUocyksdGhpcy5fY2xlYW51cFRpbWVvdXQocyksaShoKTtyZXR1cm59cihvKX1fb25yZXNwb25zZSh0KXtjb25zdCBuPU51bWJlcih0LmlkKSxvPXRoaXMuX3JlcXVlc3RSZXNvbHZlcnMuZ2V0KG4pO2lmKG8pe2lmKHRoaXMuX3JlcXVlc3RSZXNvbHZlcnMuZGVsZXRlKG4pLHBzKHQpKW8odCk7ZWxzZXtjb25zdCBpPW5ldyBZKHQuZXJyb3IuY29kZSx0LmVycm9yLm1lc3NhZ2UsdC5lcnJvci5kYXRhKTtvKGkpfXJldHVybn1jb25zdCBzPXRoaXMuX3Jlc3BvbnNlSGFuZGxlcnMuZ2V0KG4pO2lmKHM9PT12b2lkIDApe3RoaXMuX29uZXJyb3IobmV3IEVycm9yKGBSZWNlaXZlZCBhIHJlc3BvbnNlIGZvciBhbiB1bmtub3duIG1lc3NhZ2UgSUQ6ICR7SlNPTi5zdHJpbmdpZnkodCl9YCkpO3JldHVybn10aGlzLl9yZXNwb25zZUhhbmRsZXJzLmRlbGV0ZShuKSx0aGlzLl9jbGVhbnVwVGltZW91dChuKTtsZXQgcj0hMTtpZihwcyh0KSYmdC5yZXN1bHQmJnR5cGVvZiB0LnJlc3VsdD09Im9iamVjdCIpe2NvbnN0IGk9dC5yZXN1bHQ7aWYoaS50YXNrJiZ0eXBlb2YgaS50YXNrPT0ib2JqZWN0Iil7Y29uc3QgYz1pLnRhc2s7dHlwZW9mIGMudGFza0lkPT0ic3RyaW5nIiYmKHI9ITAsdGhpcy5fdGFza1Byb2dyZXNzVG9rZW5zLnNldChjLnRhc2tJZCxuKSl9fWlmKHJ8fHRoaXMuX3Byb2dyZXNzSGFuZGxlcnMuZGVsZXRlKG4pLHBzKHQpKXModCk7ZWxzZXtjb25zdCBpPVkuZnJvbUVycm9yKHQuZXJyb3IuY29kZSx0LmVycm9yLm1lc3NhZ2UsdC5lcnJvci5kYXRhKTtzKGkpfX1nZXQgdHJhbnNwb3J0KCl7cmV0dXJuIHRoaXMuX3RyYW5zcG9ydH1hc3luYyBjbG9zZSgpe2F3YWl0IHRoaXMuX3RyYW5zcG9ydD8uY2xvc2UoKX1hc3luYypyZXF1ZXN0U3RyZWFtKHQsbixvKXtjb25zdHt0YXNrOnN9PW8/P3t9O2lmKCFzKXt0cnl7eWllbGR7dHlwZToicmVzdWx0IixyZXN1bHQ6YXdhaXQgdGhpcy5yZXF1ZXN0KHQsbixvKX19Y2F0Y2goaSl7eWllbGR7dHlwZToiZXJyb3IiLGVycm9yOmkgaW5zdGFuY2VvZiBZP2k6bmV3IFkoZWUuSW50ZXJuYWxFcnJvcixTdHJpbmcoaSkpfX1yZXR1cm59bGV0IHI7dHJ5e2NvbnN0IGk9YXdhaXQgdGhpcy5yZXF1ZXN0KHQsb3Usbyk7aWYoaS50YXNrKXI9aS50YXNrLnRhc2tJZCx5aWVsZHt0eXBlOiJ0YXNrQ3JlYXRlZCIsdGFzazppLnRhc2t9O2Vsc2UgdGhyb3cgbmV3IFkoZWUuSW50ZXJuYWxFcnJvciwiVGFzayBjcmVhdGlvbiBkaWQgbm90IHJldHVybiBhIHRhc2siKTtmb3IoOzspe2NvbnN0IGM9YXdhaXQgdGhpcy5nZXRUYXNrKHt0YXNrSWQ6cn0sbyk7aWYoeWllbGR7dHlwZToidGFza1N0YXR1cyIsdGFzazpjfSx6dChjLnN0YXR1cykpe2Muc3RhdHVzPT09ImNvbXBsZXRlZCI/eWllbGR7dHlwZToicmVzdWx0IixyZXN1bHQ6YXdhaXQgdGhpcy5nZXRUYXNrUmVzdWx0KHt0YXNrSWQ6cn0sbixvKX06Yy5zdGF0dXM9PT0iZmFpbGVkIj95aWVsZHt0eXBlOiJlcnJvciIsZXJyb3I6bmV3IFkoZWUuSW50ZXJuYWxFcnJvcixgVGFzayAke3J9IGZhaWxlZGApfTpjLnN0YXR1cz09PSJjYW5jZWxsZWQiJiYoeWllbGR7dHlwZToiZXJyb3IiLGVycm9yOm5ldyBZKGVlLkludGVybmFsRXJyb3IsYFRhc2sgJHtyfSB3YXMgY2FuY2VsbGVkYCl9KTtyZXR1cm59aWYoYy5zdGF0dXM9PT0iaW5wdXRfcmVxdWlyZWQiKXt5aWVsZHt0eXBlOiJyZXN1bHQiLHJlc3VsdDphd2FpdCB0aGlzLmdldFRhc2tSZXN1bHQoe3Rhc2tJZDpyfSxuLG8pfTtyZXR1cm59Y29uc3QgaD1jLnBvbGxJbnRlcnZhbD8/dGhpcy5fb3B0aW9ucz8uZGVmYXVsdFRhc2tQb2xsSW50ZXJ2YWw/PzFlMzthd2FpdCBuZXcgUHJvbWlzZShkPT5zZXRUaW1lb3V0KGQsaCkpLG8/LnNpZ25hbD8udGhyb3dJZkFib3J0ZWQoKX19Y2F0Y2goaSl7eWllbGR7dHlwZToiZXJyb3IiLGVycm9yOmkgaW5zdGFuY2VvZiBZP2k6bmV3IFkoZWUuSW50ZXJuYWxFcnJvcixTdHJpbmcoaSkpfX19cmVxdWVzdCh0LG4sbyl7Y29uc3R7cmVsYXRlZFJlcXVlc3RJZDpzLHJlc3VtcHRpb25Ub2tlbjpyLG9ucmVzdW1wdGlvbnRva2VuOmksdGFzazpjLHJlbGF0ZWRUYXNrOmh9PW8/P3t9O3JldHVybiBuZXcgUHJvbWlzZSgoZCx1KT0+e2NvbnN0IHA9VD0+e3UoVCl9O2lmKCF0aGlzLl90cmFuc3BvcnQpe3AobmV3IEVycm9yKCJOb3QgY29ubmVjdGVkIikpO3JldHVybn1pZih0aGlzLl9vcHRpb25zPy5lbmZvcmNlU3RyaWN0Q2FwYWJpbGl0aWVzPT09ITApdHJ5e3RoaXMuYXNzZXJ0Q2FwYWJpbGl0eUZvck1ldGhvZCh0Lm1ldGhvZCksYyYmdGhpcy5hc3NlcnRUYXNrQ2FwYWJpbGl0eSh0Lm1ldGhvZCl9Y2F0Y2goVCl7cChUKTtyZXR1cm59bz8uc2lnbmFsPy50aHJvd0lmQWJvcnRlZCgpO2NvbnN0IG09dGhpcy5fcmVxdWVzdE1lc3NhZ2VJZCsrLHk9ey4uLnQsanNvbnJwYzoiMi4wIixpZDptfTtvPy5vbnByb2dyZXNzJiYodGhpcy5fcHJvZ3Jlc3NIYW5kbGVycy5zZXQobSxvLm9ucHJvZ3Jlc3MpLHkucGFyYW1zPXsuLi50LnBhcmFtcyxfbWV0YTp7Li4udC5wYXJhbXM/Ll9tZXRhfHx7fSxwcm9ncmVzc1Rva2VuOm19fSksYyYmKHkucGFyYW1zPXsuLi55LnBhcmFtcyx0YXNrOmN9KSxoJiYoeS5wYXJhbXM9ey4uLnkucGFyYW1zLF9tZXRhOnsuLi55LnBhcmFtcz8uX21ldGF8fHt9LFtDdF06aH19KTtjb25zdCAkPVQ9Pnt0aGlzLl9yZXNwb25zZUhhbmRsZXJzLmRlbGV0ZShtKSx0aGlzLl9wcm9ncmVzc0hhbmRsZXJzLmRlbGV0ZShtKSx0aGlzLl9jbGVhbnVwVGltZW91dChtKSx0aGlzLl90cmFuc3BvcnQ/LnNlbmQoe2pzb25ycGM6IjIuMCIsbWV0aG9kOiJub3RpZmljYXRpb25zL2NhbmNlbGxlZCIscGFyYW1zOntyZXF1ZXN0SWQ6bSxyZWFzb246U3RyaW5nKFQpfX0se3JlbGF0ZWRSZXF1ZXN0SWQ6cyxyZXN1bXB0aW9uVG9rZW46cixvbnJlc3VtcHRpb250b2tlbjppfSkuY2F0Y2goUT0+dGhpcy5fb25lcnJvcihuZXcgRXJyb3IoYEZhaWxlZCB0byBzZW5kIGNhbmNlbGxhdGlvbjogJHtRfWApKSk7Y29uc3QgQT1UIGluc3RhbmNlb2YgWT9UOm5ldyBZKGVlLlJlcXVlc3RUaW1lb3V0LFN0cmluZyhUKSk7dShBKX07dGhpcy5fcmVzcG9uc2VIYW5kbGVycy5zZXQobSxUPT57aWYoIW8/LnNpZ25hbD8uYWJvcnRlZCl7aWYoVCBpbnN0YW5jZW9mIEVycm9yKXJldHVybiB1KFQpO3RyeXtjb25zdCBBPUtmKG4sVC5yZXN1bHQpO0Euc3VjY2Vzcz9kKEEuZGF0YSk6dShBLmVycm9yKX1jYXRjaChBKXt1KEEpfX19KSxvPy5zaWduYWw/LmFkZEV2ZW50TGlzdGVuZXIoImFib3J0IiwoKT0+eyQobz8uc2lnbmFsPy5yZWFzb24pfSk7Y29uc3QgUz1vPy50aW1lb3V0Pz9JJCxOPSgpPT4kKFkuZnJvbUVycm9yKGVlLlJlcXVlc3RUaW1lb3V0LCJSZXF1ZXN0IHRpbWVkIG91dCIse3RpbWVvdXQ6U30pKTt0aGlzLl9zZXR1cFRpbWVvdXQobSxTLG8/Lm1heFRvdGFsVGltZW91dCxOLG8/LnJlc2V0VGltZW91dE9uUHJvZ3Jlc3M/PyExKTtjb25zdCBFPWg/LnRhc2tJZDtpZihFKXtjb25zdCBUPUE9Pntjb25zdCBRPXRoaXMuX3Jlc3BvbnNlSGFuZGxlcnMuZ2V0KG0pO1E/UShBKTp0aGlzLl9vbmVycm9yKG5ldyBFcnJvcihgUmVzcG9uc2UgaGFuZGxlciBtaXNzaW5nIGZvciBzaWRlLWNoYW5uZWxlZCByZXF1ZXN0ICR7bX1gKSl9O3RoaXMuX3JlcXVlc3RSZXNvbHZlcnMuc2V0KG0sVCksdGhpcy5fZW5xdWV1ZVRhc2tNZXNzYWdlKEUse3R5cGU6InJlcXVlc3QiLG1lc3NhZ2U6eSx0aW1lc3RhbXA6RGF0ZS5ub3coKX0pLmNhdGNoKEE9Pnt0aGlzLl9jbGVhbnVwVGltZW91dChtKSx1KEEpfSl9ZWxzZSB0aGlzLl90cmFuc3BvcnQuc2VuZCh5LHtyZWxhdGVkUmVxdWVzdElkOnMscmVzdW1wdGlvblRva2VuOnIsb25yZXN1bXB0aW9udG9rZW46aX0pLmNhdGNoKFQ9Pnt0aGlzLl9jbGVhbnVwVGltZW91dChtKSx1KFQpfSl9KX1hc3luYyBnZXRUYXNrKHQsbil7cmV0dXJuIHRoaXMucmVxdWVzdCh7bWV0aG9kOiJ0YXNrcy9nZXQiLHBhcmFtczp0fSxydSxuKX1hc3luYyBnZXRUYXNrUmVzdWx0KHQsbixvKXtyZXR1cm4gdGhpcy5yZXF1ZXN0KHttZXRob2Q6InRhc2tzL3Jlc3VsdCIscGFyYW1zOnR9LG4sbyl9YXN5bmMgbGlzdFRhc2tzKHQsbil7cmV0dXJuIHRoaXMucmVxdWVzdCh7bWV0aG9kOiJ0YXNrcy9saXN0IixwYXJhbXM6dH0sY3Usbil9YXN5bmMgY2FuY2VsVGFzayh0LG4pe3JldHVybiB0aGlzLnJlcXVlc3Qoe21ldGhvZDoidGFza3MvY2FuY2VsIixwYXJhbXM6dH0sYjAsbil9YXN5bmMgbm90aWZpY2F0aW9uKHQsbil7aWYoIXRoaXMuX3RyYW5zcG9ydCl0aHJvdyBuZXcgRXJyb3IoIk5vdCBjb25uZWN0ZWQiKTt0aGlzLmFzc2VydE5vdGlmaWNhdGlvbkNhcGFiaWxpdHkodC5tZXRob2QpO2NvbnN0IG89bj8ucmVsYXRlZFRhc2s/LnRhc2tJZDtpZihvKXtjb25zdCBjPXsuLi50LGpzb25ycGM6IjIuMCIscGFyYW1zOnsuLi50LnBhcmFtcyxfbWV0YTp7Li4udC5wYXJhbXM/Ll9tZXRhfHx7fSxbQ3RdOm4ucmVsYXRlZFRhc2t9fX07YXdhaXQgdGhpcy5fZW5xdWV1ZVRhc2tNZXNzYWdlKG8se3R5cGU6Im5vdGlmaWNhdGlvbiIsbWVzc2FnZTpjLHRpbWVzdGFtcDpEYXRlLm5vdygpfSk7cmV0dXJufWlmKCh0aGlzLl9vcHRpb25zPy5kZWJvdW5jZWROb3RpZmljYXRpb25NZXRob2RzPz9bXSkuaW5jbHVkZXModC5tZXRob2QpJiYhdC5wYXJhbXMmJiFuPy5yZWxhdGVkUmVxdWVzdElkJiYhbj8ucmVsYXRlZFRhc2spe2lmKHRoaXMuX3BlbmRpbmdEZWJvdW5jZWROb3RpZmljYXRpb25zLmhhcyh0Lm1ldGhvZCkpcmV0dXJuO3RoaXMuX3BlbmRpbmdEZWJvdW5jZWROb3RpZmljYXRpb25zLmFkZCh0Lm1ldGhvZCksUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKT0+e2lmKHRoaXMuX3BlbmRpbmdEZWJvdW5jZWROb3RpZmljYXRpb25zLmRlbGV0ZSh0Lm1ldGhvZCksIXRoaXMuX3RyYW5zcG9ydClyZXR1cm47bGV0IGM9ey4uLnQsanNvbnJwYzoiMi4wIn07bj8ucmVsYXRlZFRhc2smJihjPXsuLi5jLHBhcmFtczp7Li4uYy5wYXJhbXMsX21ldGE6ey4uLmMucGFyYW1zPy5fbWV0YXx8e30sW0N0XTpuLnJlbGF0ZWRUYXNrfX19KSx0aGlzLl90cmFuc3BvcnQ/LnNlbmQoYyxuKS5jYXRjaChoPT50aGlzLl9vbmVycm9yKGgpKX0pO3JldHVybn1sZXQgaT17Li4udCxqc29ucnBjOiIyLjAifTtuPy5yZWxhdGVkVGFzayYmKGk9ey4uLmkscGFyYW1zOnsuLi5pLnBhcmFtcyxfbWV0YTp7Li4uaS5wYXJhbXM/Ll9tZXRhfHx7fSxbQ3RdOm4ucmVsYXRlZFRhc2t9fX0pLGF3YWl0IHRoaXMuX3RyYW5zcG9ydC5zZW5kKGksbil9c2V0UmVxdWVzdEhhbmRsZXIodCxuKXtjb25zdCBvPV9kKHQpO3RoaXMuYXNzZXJ0UmVxdWVzdEhhbmRsZXJDYXBhYmlsaXR5KG8pLHRoaXMuX3JlcXVlc3RIYW5kbGVycy5zZXQobywocyxyKT0+e2NvbnN0IGk9amQodCxzKTtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG4oaSxyKSl9KX1yZW1vdmVSZXF1ZXN0SGFuZGxlcih0KXt0aGlzLl9yZXF1ZXN0SGFuZGxlcnMuZGVsZXRlKHQpfWFzc2VydENhblNldFJlcXVlc3RIYW5kbGVyKHQpe2lmKHRoaXMuX3JlcXVlc3RIYW5kbGVycy5oYXModCkpdGhyb3cgbmV3IEVycm9yKGBBIHJlcXVlc3QgaGFuZGxlciBmb3IgJHt0fSBhbHJlYWR5IGV4aXN0cywgd2hpY2ggd291bGQgYmUgb3ZlcnJpZGRlbmApfXNldE5vdGlmaWNhdGlvbkhhbmRsZXIodCxuKXtjb25zdCBvPV9kKHQpO3RoaXMuX25vdGlmaWNhdGlvbkhhbmRsZXJzLnNldChvLHM9Pntjb25zdCByPWpkKHQscyk7cmV0dXJuIFByb21pc2UucmVzb2x2ZShuKHIpKX0pfXJlbW92ZU5vdGlmaWNhdGlvbkhhbmRsZXIodCl7dGhpcy5fbm90aWZpY2F0aW9uSGFuZGxlcnMuZGVsZXRlKHQpfV9jbGVhbnVwVGFza1Byb2dyZXNzSGFuZGxlcih0KXtjb25zdCBuPXRoaXMuX3Rhc2tQcm9ncmVzc1Rva2Vucy5nZXQodCk7biE9PXZvaWQgMCYmKHRoaXMuX3Byb2dyZXNzSGFuZGxlcnMuZGVsZXRlKG4pLHRoaXMuX3Rhc2tQcm9ncmVzc1Rva2Vucy5kZWxldGUodCkpfWFzeW5jIF9lbnF1ZXVlVGFza01lc3NhZ2UodCxuLG8pe2lmKCF0aGlzLl90YXNrU3RvcmV8fCF0aGlzLl90YXNrTWVzc2FnZVF1ZXVlKXRocm93IG5ldyBFcnJvcigiQ2Fubm90IGVucXVldWUgdGFzayBtZXNzYWdlOiB0YXNrU3RvcmUgYW5kIHRhc2tNZXNzYWdlUXVldWUgYXJlIG5vdCBjb25maWd1cmVkIik7Y29uc3Qgcz10aGlzLl9vcHRpb25zPy5tYXhUYXNrUXVldWVTaXplO2F3YWl0IHRoaXMuX3Rhc2tNZXNzYWdlUXVldWUuZW5xdWV1ZSh0LG4sbz8/dGhpcy5fdHJhbnNwb3J0Py5zZXNzaW9uSWQscyl9YXN5bmMgX2NsZWFyVGFza1F1ZXVlKHQsbil7aWYodGhpcy5fdGFza01lc3NhZ2VRdWV1ZSl7Y29uc3Qgbz1hd2FpdCB0aGlzLl90YXNrTWVzc2FnZVF1ZXVlLmRlcXVldWVBbGwodCxuKTtmb3IoY29uc3QgcyBvZiBvKWlmKHMudHlwZT09PSJyZXF1ZXN0IiYmU2Qocy5tZXNzYWdlKSl7Y29uc3Qgcj1zLm1lc3NhZ2UuaWQsaT10aGlzLl9yZXF1ZXN0UmVzb2x2ZXJzLmdldChyKTtpPyhpKG5ldyBZKGVlLkludGVybmFsRXJyb3IsIlRhc2sgY2FuY2VsbGVkIG9yIGNvbXBsZXRlZCIpKSx0aGlzLl9yZXF1ZXN0UmVzb2x2ZXJzLmRlbGV0ZShyKSk6dGhpcy5fb25lcnJvcihuZXcgRXJyb3IoYFJlc29sdmVyIG1pc3NpbmcgZm9yIHJlcXVlc3QgJHtyfSBkdXJpbmcgdGFzayAke3R9IGNsZWFudXBgKSl9fX1hc3luYyBfd2FpdEZvclRhc2tVcGRhdGUodCxuLG8pe2xldCBzPXRoaXMuX29wdGlvbnM/LmRlZmF1bHRUYXNrUG9sbEludGVydmFsPz8xZTM7dHJ5e2NvbnN0IHI9YXdhaXQgdGhpcy5fdGFza1N0b3JlPy5nZXRUYXNrKHQsbyk7cj8ucG9sbEludGVydmFsJiYocz1yLnBvbGxJbnRlcnZhbCl9Y2F0Y2h7fXJldHVybiBuZXcgUHJvbWlzZSgocixpKT0+e2lmKG4uYWJvcnRlZCl7aShuZXcgWShlZS5JbnZhbGlkUmVxdWVzdCwiUmVxdWVzdCBjYW5jZWxsZWQiKSk7cmV0dXJufWNvbnN0IGM9c2V0VGltZW91dChyLHMpO24uYWRkRXZlbnRMaXN0ZW5lcigiYWJvcnQiLCgpPT57Y2xlYXJUaW1lb3V0KGMpLGkobmV3IFkoZWUuSW52YWxpZFJlcXVlc3QsIlJlcXVlc3QgY2FuY2VsbGVkIikpfSx7b25jZTohMH0pfSl9cmVxdWVzdFRhc2tTdG9yZSh0LG4pe2NvbnN0IG89dGhpcy5fdGFza1N0b3JlO2lmKCFvKXRocm93IG5ldyBFcnJvcigiTm8gdGFzayBzdG9yZSBjb25maWd1cmVkIik7cmV0dXJue2NyZWF0ZVRhc2s6YXN5bmMgcz0+e2lmKCF0KXRocm93IG5ldyBFcnJvcigiTm8gcmVxdWVzdCBwcm92aWRlZCIpO3JldHVybiBhd2FpdCBvLmNyZWF0ZVRhc2socyx0LmlkLHttZXRob2Q6dC5tZXRob2QscGFyYW1zOnQucGFyYW1zfSxuKX0sZ2V0VGFzazphc3luYyBzPT57Y29uc3Qgcj1hd2FpdCBvLmdldFRhc2socyxuKTtpZighcil0aHJvdyBuZXcgWShlZS5JbnZhbGlkUGFyYW1zLCJGYWlsZWQgdG8gcmV0cmlldmUgdGFzazogVGFzayBub3QgZm91bmQiKTtyZXR1cm4gcn0sc3RvcmVUYXNrUmVzdWx0OmFzeW5jKHMscixpKT0+e2F3YWl0IG8uc3RvcmVUYXNrUmVzdWx0KHMscixpLG4pO2NvbnN0IGM9YXdhaXQgby5nZXRUYXNrKHMsbik7aWYoYyl7Y29uc3QgaD14cy5wYXJzZSh7bWV0aG9kOiJub3RpZmljYXRpb25zL3Rhc2tzL3N0YXR1cyIscGFyYW1zOmN9KTthd2FpdCB0aGlzLm5vdGlmaWNhdGlvbihoKSx6dChjLnN0YXR1cykmJnRoaXMuX2NsZWFudXBUYXNrUHJvZ3Jlc3NIYW5kbGVyKHMpfX0sZ2V0VGFza1Jlc3VsdDpzPT5vLmdldFRhc2tSZXN1bHQocyxuKSx1cGRhdGVUYXNrU3RhdHVzOmFzeW5jKHMscixpKT0+e2NvbnN0IGM9YXdhaXQgby5nZXRUYXNrKHMsbik7aWYoIWMpdGhyb3cgbmV3IFkoZWUuSW52YWxpZFBhcmFtcyxgVGFzayAiJHtzfSIgbm90IGZvdW5kIC0gaXQgbWF5IGhhdmUgYmVlbiBjbGVhbmVkIHVwYCk7aWYoenQoYy5zdGF0dXMpKXRocm93IG5ldyBZKGVlLkludmFsaWRQYXJhbXMsYENhbm5vdCB1cGRhdGUgdGFzayAiJHtzfSIgZnJvbSB0ZXJtaW5hbCBzdGF0dXMgIiR7Yy5zdGF0dXN9IiB0byAiJHtyfSIuIFRlcm1pbmFsIHN0YXRlcyAoY29tcGxldGVkLCBmYWlsZWQsIGNhbmNlbGxlZCkgY2Fubm90IHRyYW5zaXRpb24gdG8gb3RoZXIgc3RhdGVzLmApO2F3YWl0IG8udXBkYXRlVGFza1N0YXR1cyhzLHIsaSxuKTtjb25zdCBoPWF3YWl0IG8uZ2V0VGFzayhzLG4pO2lmKGgpe2NvbnN0IGQ9eHMucGFyc2Uoe21ldGhvZDoibm90aWZpY2F0aW9ucy90YXNrcy9zdGF0dXMiLHBhcmFtczpofSk7YXdhaXQgdGhpcy5ub3RpZmljYXRpb24oZCksenQoaC5zdGF0dXMpJiZ0aGlzLl9jbGVhbnVwVGFza1Byb2dyZXNzSGFuZGxlcihzKX19LGxpc3RUYXNrczpzPT5vLmxpc3RUYXNrcyhzLG4pfX19ZnVuY3Rpb24gVGQoZSl7cmV0dXJuIGUhPT1udWxsJiZ0eXBlb2YgZT09Im9iamVjdCImJiFBcnJheS5pc0FycmF5KGUpfWZ1bmN0aW9uIFIkKGUsdCl7Y29uc3Qgbj17Li4uZX07Zm9yKGNvbnN0IG8gaW4gdCl7Y29uc3Qgcz1vLHI9dFtzXTtpZihyPT09dm9pZCAwKWNvbnRpbnVlO2NvbnN0IGk9bltzXTtUZChpKSYmVGQocik/bltzXT17Li4uaSwuLi5yfTpuW3NdPXJ9cmV0dXJuIG59KGU9PnR5cGVvZiByZXF1aXJlPCJ1Ij9yZXF1aXJlOnR5cGVvZiBQcm94eTwidSI/bmV3IFByb3h5KGUse2dldDoodCxuKT0+KHR5cGVvZiByZXF1aXJlPCJ1Ij9yZXF1aXJlOnQpW25dfSk6ZSkoZnVuY3Rpb24oZSl7aWYodHlwZW9mIHJlcXVpcmU8InUiKXJldHVybiByZXF1aXJlLmFwcGx5KHRoaXMsYXJndW1lbnRzKTt0aHJvdyBFcnJvcignRHluYW1pYyByZXF1aXJlIG9mICInK2UrJyIgaXMgbm90IHN1cHBvcnRlZCcpfSk7Y2xhc3MgTyQgZXh0ZW5kcyBFJHtfcmVnaXN0ZXJlZE1ldGhvZHM9bmV3IFNldDtfZXZlbnRTbG90cz1uZXcgTWFwO29uRXZlbnREaXNwYXRjaCh0LG4pe31fZW5zdXJlRXZlbnRTbG90KHQpe2xldCBuPXRoaXMuX2V2ZW50U2xvdHMuZ2V0KHQpO2lmKCFuKXtsZXQgbz10aGlzLmV2ZW50U2NoZW1hc1t0XTtpZighbyl0aHJvdyBFcnJvcihgVW5rbm93biBldmVudDogJHtTdHJpbmcodCl9YCk7bj17bGlzdGVuZXJzOltdfSx0aGlzLl9ldmVudFNsb3RzLnNldCh0LG4pO2xldCBzPW8uc2hhcGUubWV0aG9kLnZhbHVlO3RoaXMuX3JlZ2lzdGVyZWRNZXRob2RzLmFkZChzKTtsZXQgcj1uO3N1cGVyLnNldE5vdGlmaWNhdGlvbkhhbmRsZXIobyxpPT57bGV0IGM9aS5wYXJhbXM7dGhpcy5vbkV2ZW50RGlzcGF0Y2godCxjKSxyLm9uSGFuZGxlcj8uKGMpO2ZvcihsZXQgaCBvZlsuLi5yLmxpc3RlbmVyc10paChjKX0pfXJldHVybiBufXNldEV2ZW50SGFuZGxlcih0LG4pe2xldCBvPXRoaXMuX2Vuc3VyZUV2ZW50U2xvdCh0KTtvLm9uSGFuZGxlciYmbiYmY29uc29sZS53YXJuKGBbTUNQIEFwcHNdIG9uJHtTdHJpbmcodCl9IGhhbmRsZXIgcmVwbGFjZWQuIFVzZSBhZGRFdmVudExpc3RlbmVyKCIke1N0cmluZyh0KX0iLCDigKYpIHRvIGFkZCBtdWx0aXBsZSBsaXN0ZW5lcnMgd2l0aG91dCByZXBsYWNpbmcuYCksby5vbkhhbmRsZXI9bn1nZXRFdmVudEhhbmRsZXIodCl7cmV0dXJuIHRoaXMuX2V2ZW50U2xvdHMuZ2V0KHQpPy5vbkhhbmRsZXJ9YWRkRXZlbnRMaXN0ZW5lcih0LG4pe3RoaXMuX2Vuc3VyZUV2ZW50U2xvdCh0KS5saXN0ZW5lcnMucHVzaChuKX1yZW1vdmVFdmVudExpc3RlbmVyKHQsbil7bGV0IG89dGhpcy5fZXZlbnRTbG90cy5nZXQodCk7aWYoIW8pcmV0dXJuO2xldCBzPW8ubGlzdGVuZXJzLmluZGV4T2Yobik7cyE9PS0xJiZvLmxpc3RlbmVycy5zcGxpY2UocywxKX1zZXRSZXF1ZXN0SGFuZGxlcj0odCxuKT0+e3RoaXMuX2Fzc2VydE1ldGhvZE5vdFJlZ2lzdGVyZWQodCwic2V0UmVxdWVzdEhhbmRsZXIiKSxzdXBlci5zZXRSZXF1ZXN0SGFuZGxlcih0LG4pfTtzZXROb3RpZmljYXRpb25IYW5kbGVyPSh0LG4pPT57dGhpcy5fYXNzZXJ0TWV0aG9kTm90UmVnaXN0ZXJlZCh0LCJzZXROb3RpZmljYXRpb25IYW5kbGVyIiksc3VwZXIuc2V0Tm90aWZpY2F0aW9uSGFuZGxlcih0LG4pfTt3YXJuSWZSZXF1ZXN0SGFuZGxlclJlcGxhY2VkKHQsbixvKXtuJiZvJiZjb25zb2xlLndhcm4oYFtNQ1AgQXBwc10gJHt0fSBoYW5kbGVyIHJlcGxhY2VkLiBQcmV2aW91cyBoYW5kbGVyIHdpbGwgbm8gbG9uZ2VyIGJlIGNhbGxlZC5gKX1yZXBsYWNlUmVxdWVzdEhhbmRsZXI9KHQsbik9PntsZXQgbz10LnNoYXBlLm1ldGhvZC52YWx1ZTt0aGlzLl9yZWdpc3RlcmVkTWV0aG9kcy5hZGQobyksc3VwZXIuc2V0UmVxdWVzdEhhbmRsZXIodCxuKX07X2Fzc2VydE1ldGhvZE5vdFJlZ2lzdGVyZWQodCxuKXtsZXQgbz10LnNoYXBlLm1ldGhvZC52YWx1ZTtpZih0aGlzLl9yZWdpc3RlcmVkTWV0aG9kcy5oYXMobykpdGhyb3cgRXJyb3IoYEhhbmRsZXIgZm9yICIke299IiBhbHJlYWR5IHJlZ2lzdGVyZWQgKHZpYSAke259KS4gVXNlIGFkZEV2ZW50TGlzdGVuZXIoKSB0byBhdHRhY2ggbXVsdGlwbGUgbGlzdGVuZXJzLCBvciB0aGUgb24qIHNldHRlciBmb3IgcmVwbGFjZSBzZW1hbnRpY3MuYCk7dGhpcy5fcmVnaXN0ZXJlZE1ldGhvZHMuYWRkKG8pfX12YXIgTSQ9IjIwMjYtMDEtMjYiLFokPSJ1aS9ub3RpZmljYXRpb25zL3Rvb2wtaW5wdXQtcGFydGlhbCI7Y2xhc3MgcSR7ZXZlbnRUYXJnZXQ7ZXZlbnRTb3VyY2U7bWVzc2FnZUxpc3RlbmVyO2NvbnN0cnVjdG9yKHQ9d2luZG93LnBhcmVudCxuKXt0aGlzLmV2ZW50VGFyZ2V0PXQsdGhpcy5ldmVudFNvdXJjZT1uLHRoaXMubWVzc2FnZUxpc3RlbmVyPW89PntpZihuJiZvLnNvdXJjZSE9PXRoaXMuZXZlbnRTb3VyY2Upe2NvbnNvbGUuZGVidWcoIklnbm9yaW5nIG1lc3NhZ2UgZnJvbSB1bmtub3duIHNvdXJjZSIsbyk7cmV0dXJufWxldCBzPVh5LnNhZmVQYXJzZShvLmRhdGEpO3Muc3VjY2Vzcz8oY29uc29sZS5kZWJ1ZygiUGFyc2VkIG1lc3NhZ2UiLHMuZGF0YSksdGhpcy5vbm1lc3NhZ2U/LihzLmRhdGEpKTpvLmRhdGE/Lmpzb25ycGMhPT0iMi4wIj9jb25zb2xlLmRlYnVnKCJJZ25vcmluZyBub24tSlNPTi1SUEMgbWVzc2FnZSIscy5lcnJvci5tZXNzYWdlLG8pOihjb25zb2xlLmVycm9yKCJGYWlsZWQgdG8gcGFyc2UgbWVzc2FnZSIscy5lcnJvci5tZXNzYWdlLG8pLHRoaXMub25lcnJvcj8uKEVycm9yKCJJbnZhbGlkIEpTT04tUlBDIG1lc3NhZ2UgcmVjZWl2ZWQ6ICIrcy5lcnJvci5tZXNzYWdlKSkpfX1hc3luYyBzdGFydCgpe3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJtZXNzYWdlIix0aGlzLm1lc3NhZ2VMaXN0ZW5lcil9YXN5bmMgc2VuZCh0LG4pe3QubWV0aG9kIT09WiQmJmNvbnNvbGUuZGVidWcoIlNlbmRpbmcgbWVzc2FnZSIsdCksdGhpcy5ldmVudFRhcmdldC5wb3N0TWVzc2FnZSh0LCIqIil9YXN5bmMgY2xvc2UoKXt3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigibWVzc2FnZSIsdGhpcy5tZXNzYWdlTGlzdGVuZXIpLHRoaXMub25jbG9zZT8uKCl9b25jbG9zZTtvbmVycm9yO29ubWVzc2FnZTtzZXNzaW9uSWQ7c2V0UHJvdG9jb2xWZXJzaW9ufXZhciBEJD1VKFtiKCJsaWdodCIpLGIoImRhcmsiKV0pLmRlc2NyaWJlKCJDb2xvciB0aGVtZSBwcmVmZXJlbmNlIGZvciB0aGUgaG9zdCBlbnZpcm9ubWVudC4iKSxHbj1VKFtiKCJpbmxpbmUiKSxiKCJmdWxsc2NyZWVuIiksYigicGlwIildKS5kZXNjcmliZSgiRGlzcGxheSBtb2RlIGZvciBVSSBwcmVzZW50YXRpb24uIiksTCQ9VShbYigiLS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnkiKSxiKCItLWNvbG9yLWJhY2tncm91bmQtc2Vjb25kYXJ5IiksYigiLS1jb2xvci1iYWNrZ3JvdW5kLXRlcnRpYXJ5IiksYigiLS1jb2xvci1iYWNrZ3JvdW5kLWludmVyc2UiKSxiKCItLWNvbG9yLWJhY2tncm91bmQtZ2hvc3QiKSxiKCItLWNvbG9yLWJhY2tncm91bmQtaW5mbyIpLGIoIi0tY29sb3ItYmFja2dyb3VuZC1kYW5nZXIiKSxiKCItLWNvbG9yLWJhY2tncm91bmQtc3VjY2VzcyIpLGIoIi0tY29sb3ItYmFja2dyb3VuZC13YXJuaW5nIiksYigiLS1jb2xvci1iYWNrZ3JvdW5kLWRpc2FibGVkIiksYigiLS1jb2xvci10ZXh0LXByaW1hcnkiKSxiKCItLWNvbG9yLXRleHQtc2Vjb25kYXJ5IiksYigiLS1jb2xvci10ZXh0LXRlcnRpYXJ5IiksYigiLS1jb2xvci10ZXh0LWludmVyc2UiKSxiKCItLWNvbG9yLXRleHQtZ2hvc3QiKSxiKCItLWNvbG9yLXRleHQtaW5mbyIpLGIoIi0tY29sb3ItdGV4dC1kYW5nZXIiKSxiKCItLWNvbG9yLXRleHQtc3VjY2VzcyIpLGIoIi0tY29sb3ItdGV4dC13YXJuaW5nIiksYigiLS1jb2xvci10ZXh0LWRpc2FibGVkIiksYigiLS1jb2xvci1ib3JkZXItcHJpbWFyeSIpLGIoIi0tY29sb3ItYm9yZGVyLXNlY29uZGFyeSIpLGIoIi0tY29sb3ItYm9yZGVyLXRlcnRpYXJ5IiksYigiLS1jb2xvci1ib3JkZXItaW52ZXJzZSIpLGIoIi0tY29sb3ItYm9yZGVyLWdob3N0IiksYigiLS1jb2xvci1ib3JkZXItaW5mbyIpLGIoIi0tY29sb3ItYm9yZGVyLWRhbmdlciIpLGIoIi0tY29sb3ItYm9yZGVyLXN1Y2Nlc3MiKSxiKCItLWNvbG9yLWJvcmRlci13YXJuaW5nIiksYigiLS1jb2xvci1ib3JkZXItZGlzYWJsZWQiKSxiKCItLWNvbG9yLXJpbmctcHJpbWFyeSIpLGIoIi0tY29sb3ItcmluZy1zZWNvbmRhcnkiKSxiKCItLWNvbG9yLXJpbmctaW52ZXJzZSIpLGIoIi0tY29sb3ItcmluZy1pbmZvIiksYigiLS1jb2xvci1yaW5nLWRhbmdlciIpLGIoIi0tY29sb3ItcmluZy1zdWNjZXNzIiksYigiLS1jb2xvci1yaW5nLXdhcm5pbmciKSxiKCItLWZvbnQtc2FucyIpLGIoIi0tZm9udC1tb25vIiksYigiLS1mb250LXdlaWdodC1ub3JtYWwiKSxiKCItLWZvbnQtd2VpZ2h0LW1lZGl1bSIpLGIoIi0tZm9udC13ZWlnaHQtc2VtaWJvbGQiKSxiKCItLWZvbnQtd2VpZ2h0LWJvbGQiKSxiKCItLWZvbnQtdGV4dC14cy1zaXplIiksYigiLS1mb250LXRleHQtc20tc2l6ZSIpLGIoIi0tZm9udC10ZXh0LW1kLXNpemUiKSxiKCItLWZvbnQtdGV4dC1sZy1zaXplIiksYigiLS1mb250LWhlYWRpbmcteHMtc2l6ZSIpLGIoIi0tZm9udC1oZWFkaW5nLXNtLXNpemUiKSxiKCItLWZvbnQtaGVhZGluZy1tZC1zaXplIiksYigiLS1mb250LWhlYWRpbmctbGctc2l6ZSIpLGIoIi0tZm9udC1oZWFkaW5nLXhsLXNpemUiKSxiKCItLWZvbnQtaGVhZGluZy0yeGwtc2l6ZSIpLGIoIi0tZm9udC1oZWFkaW5nLTN4bC1zaXplIiksYigiLS1mb250LXRleHQteHMtbGluZS1oZWlnaHQiKSxiKCItLWZvbnQtdGV4dC1zbS1saW5lLWhlaWdodCIpLGIoIi0tZm9udC10ZXh0LW1kLWxpbmUtaGVpZ2h0IiksYigiLS1mb250LXRleHQtbGctbGluZS1oZWlnaHQiKSxiKCItLWZvbnQtaGVhZGluZy14cy1saW5lLWhlaWdodCIpLGIoIi0tZm9udC1oZWFkaW5nLXNtLWxpbmUtaGVpZ2h0IiksYigiLS1mb250LWhlYWRpbmctbWQtbGluZS1oZWlnaHQiKSxiKCItLWZvbnQtaGVhZGluZy1sZy1saW5lLWhlaWdodCIpLGIoIi0tZm9udC1oZWFkaW5nLXhsLWxpbmUtaGVpZ2h0IiksYigiLS1mb250LWhlYWRpbmctMnhsLWxpbmUtaGVpZ2h0IiksYigiLS1mb250LWhlYWRpbmctM3hsLWxpbmUtaGVpZ2h0IiksYigiLS1ib3JkZXItcmFkaXVzLXhzIiksYigiLS1ib3JkZXItcmFkaXVzLXNtIiksYigiLS1ib3JkZXItcmFkaXVzLW1kIiksYigiLS1ib3JkZXItcmFkaXVzLWxnIiksYigiLS1ib3JkZXItcmFkaXVzLXhsIiksYigiLS1ib3JkZXItcmFkaXVzLWZ1bGwiKSxiKCItLWJvcmRlci13aWR0aC1yZWd1bGFyIiksYigiLS1zaGFkb3ctaGFpcmxpbmUiKSxiKCItLXNoYWRvdy1zbSIpLGIoIi0tc2hhZG93LW1kIiksYigiLS1zaGFkb3ctbGciKV0pLmRlc2NyaWJlKCJDU1MgdmFyaWFibGUga2V5cyBhdmFpbGFibGUgdG8gTUNQIGFwcHMgZm9yIHRoZW1pbmcuIiksQiQ9SyhMJC5kZXNjcmliZShgU3R5bGUgdmFyaWFibGVzIGZvciB0aGVtaW5nIE1DUCBhcHBzLgoKSW5kaXZpZHVhbCBzdHlsZSBrZXlzIGFyZSBvcHRpb25hbCAtIGhvc3RzIG1heSBwcm92aWRlIGFueSBzdWJzZXQgb2YgdGhlc2UgdmFsdWVzLgpWYWx1ZXMgYXJlIHN0cmluZ3MgY29udGFpbmluZyBDU1MgdmFsdWVzIChjb2xvcnMsIHNpemVzLCBmb250IHN0YWNrcywgZXRjLikuCgpOb3RlOiBUaGlzIHR5cGUgdXNlcyBcYFJlY29yZDxLLCBzdHJpbmcgfCB1bmRlZmluZWQ+XGAgcmF0aGVyIHRoYW4gXGBQYXJ0aWFsPFJlY29yZDxLLCBzdHJpbmc+PlxgCmZvciBjb21wYXRpYmlsaXR5IHdpdGggWm9kIHNjaGVtYSBnZW5lcmF0aW9uLiBCb3RoIGFyZSBmdW5jdGlvbmFsbHkgZXF1aXZhbGVudCBmb3IgdmFsaWRhdGlvbi5gKSxVKFtnKCksb24oKV0pLmRlc2NyaWJlKGBTdHlsZSB2YXJpYWJsZXMgZm9yIHRoZW1pbmcgTUNQIGFwcHMuCgpJbmRpdmlkdWFsIHN0eWxlIGtleXMgYXJlIG9wdGlvbmFsIC0gaG9zdHMgbWF5IHByb3ZpZGUgYW55IHN1YnNldCBvZiB0aGVzZSB2YWx1ZXMuClZhbHVlcyBhcmUgc3RyaW5ncyBjb250YWluaW5nIENTUyB2YWx1ZXMgKGNvbG9ycywgc2l6ZXMsIGZvbnQgc3RhY2tzLCBldGMuKS4KCk5vdGU6IFRoaXMgdHlwZSB1c2VzIFxgUmVjb3JkPEssIHN0cmluZyB8IHVuZGVmaW5lZD5cYCByYXRoZXIgdGhhbiBcYFBhcnRpYWw8UmVjb3JkPEssIHN0cmluZz4+XGAKZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBab2Qgc2NoZW1hIGdlbmVyYXRpb24uIEJvdGggYXJlIGZ1bmN0aW9uYWxseSBlcXVpdmFsZW50IGZvciB2YWxpZGF0aW9uLmApKS5kZXNjcmliZShgU3R5bGUgdmFyaWFibGVzIGZvciB0aGVtaW5nIE1DUCBhcHBzLgoKSW5kaXZpZHVhbCBzdHlsZSBrZXlzIGFyZSBvcHRpb25hbCAtIGhvc3RzIG1heSBwcm92aWRlIGFueSBzdWJzZXQgb2YgdGhlc2UgdmFsdWVzLgpWYWx1ZXMgYXJlIHN0cmluZ3MgY29udGFpbmluZyBDU1MgdmFsdWVzIChjb2xvcnMsIHNpemVzLCBmb250IHN0YWNrcywgZXRjLikuCgpOb3RlOiBUaGlzIHR5cGUgdXNlcyBcYFJlY29yZDxLLCBzdHJpbmcgfCB1bmRlZmluZWQ+XGAgcmF0aGVyIHRoYW4gXGBQYXJ0aWFsPFJlY29yZDxLLCBzdHJpbmc+PlxgCmZvciBjb21wYXRpYmlsaXR5IHdpdGggWm9kIHNjaGVtYSBnZW5lcmF0aW9uLiBCb3RoIGFyZSBmdW5jdGlvbmFsbHkgZXF1aXZhbGVudCBmb3IgdmFsaWRhdGlvbi5gKTtrKHttZXRob2Q6YigidWkvb3Blbi1saW5rIikscGFyYW1zOmsoe3VybDpnKCkuZGVzY3JpYmUoIlVSTCB0byBvcGVuIGluIHRoZSBob3N0J3MgYnJvd3NlciIpfSl9KTt2YXIgSCQ9ayh7aXNFcnJvcjpuZSgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlRydWUgaWYgdGhlIGhvc3QgZmFpbGVkIHRvIG9wZW4gdGhlIFVSTCAoZS5nLiwgZHVlIHRvIHNlY3VyaXR5IHBvbGljeSkuIil9KS5wYXNzdGhyb3VnaCgpLEYkPWsoe2lzRXJyb3I6bmUoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJUcnVlIGlmIHRoZSBkb3dubG9hZCBmYWlsZWQgKGUuZy4sIHVzZXIgY2FuY2VsbGVkIG9yIGhvc3QgZGVuaWVkKS4iKX0pLnBhc3N0aHJvdWdoKCksVSQ9ayh7aXNFcnJvcjpuZSgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlRydWUgaWYgdGhlIGhvc3QgcmVqZWN0ZWQgb3IgZmFpbGVkIHRvIGRlbGl2ZXIgdGhlIG1lc3NhZ2UuIil9KS5wYXNzdGhyb3VnaCgpO2soe21ldGhvZDpiKCJ1aS9ub3RpZmljYXRpb25zL3NhbmRib3gtcHJveHktcmVhZHkiKSxwYXJhbXM6ayh7fSl9KTt2YXIgZ3U9ayh7Y29ubmVjdERvbWFpbnM6UihnKCkpLm9wdGlvbmFsKCkuZGVzY3JpYmUoYE9yaWdpbnMgZm9yIG5ldHdvcmsgcmVxdWVzdHMgKGZldGNoL1hIUi9XZWJTb2NrZXQpLgoKLSBNYXBzIHRvIENTUCBcYGNvbm5lY3Qtc3JjXGAgZGlyZWN0aXZlCi0gRW1wdHkgb3Igb21pdHRlZCDihpIgbm8gbmV0d29yayBjb25uZWN0aW9ucyAoc2VjdXJlIGRlZmF1bHQpYCkscmVzb3VyY2VEb21haW5zOlIoZygpKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJPcmlnaW5zIGZvciBzdGF0aWMgcmVzb3VyY2VzIChpbWFnZXMsIHNjcmlwdHMsIHN0eWxlc2hlZXRzLCBmb250cywgbWVkaWEpLlxuXG4tIE1hcHMgdG8gQ1NQIGBpbWctc3JjYCwgYHNjcmlwdC1zcmNgLCBgc3R5bGUtc3JjYCwgYGZvbnQtc3JjYCwgYG1lZGlhLXNyY2AgZGlyZWN0aXZlc1xuLSBXaWxkY2FyZCBzdWJkb21haW5zIHN1cHBvcnRlZDogYGh0dHBzOi8vKi5leGFtcGxlLmNvbWBcbi0gRW1wdHkgb3Igb21pdHRlZCDihpIgbm8gbmV0d29yayByZXNvdXJjZXMgKHNlY3VyZSBkZWZhdWx0KSIpLGZyYW1lRG9tYWluczpSKGcoKSkub3B0aW9uYWwoKS5kZXNjcmliZSgiT3JpZ2lucyBmb3IgbmVzdGVkIGlmcmFtZXMuXG5cbi0gTWFwcyB0byBDU1AgYGZyYW1lLXNyY2AgZGlyZWN0aXZlXG4tIEVtcHR5IG9yIG9taXR0ZWQg4oaSIG5vIG5lc3RlZCBpZnJhbWVzIGFsbG93ZWQgKGBmcmFtZS1zcmMgJ25vbmUnYCkiKSxiYXNlVXJpRG9tYWluczpSKGcoKSkub3B0aW9uYWwoKS5kZXNjcmliZSgiQWxsb3dlZCBiYXNlIFVSSXMgZm9yIHRoZSBkb2N1bWVudC5cblxuLSBNYXBzIHRvIENTUCBgYmFzZS11cmlgIGRpcmVjdGl2ZVxuLSBFbXB0eSBvciBvbWl0dGVkIOKGkiBvbmx5IHNhbWUgb3JpZ2luIGFsbG93ZWQgKGBiYXNlLXVyaSAnc2VsZidgKSIpfSksYnU9ayh7Y2FtZXJhOmsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlJlcXVlc3QgY2FtZXJhIGFjY2Vzcy5cblxuTWFwcyB0byBQZXJtaXNzaW9uIFBvbGljeSBgY2FtZXJhYCBmZWF0dXJlLiIpLG1pY3JvcGhvbmU6ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiUmVxdWVzdCBtaWNyb3Bob25lIGFjY2Vzcy5cblxuTWFwcyB0byBQZXJtaXNzaW9uIFBvbGljeSBgbWljcm9waG9uZWAgZmVhdHVyZS4iKSxnZW9sb2NhdGlvbjprKHt9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJSZXF1ZXN0IGdlb2xvY2F0aW9uIGFjY2Vzcy5cblxuTWFwcyB0byBQZXJtaXNzaW9uIFBvbGljeSBgZ2VvbG9jYXRpb25gIGZlYXR1cmUuIiksY2xpcGJvYXJkV3JpdGU6ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiUmVxdWVzdCBjbGlwYm9hcmQgd3JpdGUgYWNjZXNzLlxuXG5NYXBzIHRvIFBlcm1pc3Npb24gUG9saWN5IGBjbGlwYm9hcmQtd3JpdGVgIGZlYXR1cmUuIil9KTtrKHttZXRob2Q6YigidWkvbm90aWZpY2F0aW9ucy9zaXplLWNoYW5nZWQiKSxwYXJhbXM6ayh7d2lkdGg6TCgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIk5ldyB3aWR0aCBpbiBwaXhlbHMuIiksaGVpZ2h0OkwoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJOZXcgaGVpZ2h0IGluIHBpeGVscy4iKX0pfSk7dmFyIFYkPWsoe21ldGhvZDpiKCJ1aS9ub3RpZmljYXRpb25zL3Rvb2wtaW5wdXQiKSxwYXJhbXM6ayh7YXJndW1lbnRzOksoZygpLHRlKCkuZGVzY3JpYmUoIkNvbXBsZXRlIHRvb2wgY2FsbCBhcmd1bWVudHMgYXMga2V5LXZhbHVlIHBhaXJzLiIpKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJDb21wbGV0ZSB0b29sIGNhbGwgYXJndW1lbnRzIGFzIGtleS12YWx1ZSBwYWlycy4iKX0pfSksVyQ9ayh7bWV0aG9kOmIoInVpL25vdGlmaWNhdGlvbnMvdG9vbC1pbnB1dC1wYXJ0aWFsIikscGFyYW1zOmsoe2FyZ3VtZW50czpLKGcoKSx0ZSgpLmRlc2NyaWJlKCJQYXJ0aWFsIHRvb2wgY2FsbCBhcmd1bWVudHMgKGluY29tcGxldGUsIG1heSBjaGFuZ2UpLiIpKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJQYXJ0aWFsIHRvb2wgY2FsbCBhcmd1bWVudHMgKGluY29tcGxldGUsIG1heSBjaGFuZ2UpLiIpfSl9KSxLJD1rKHttZXRob2Q6YigidWkvbm90aWZpY2F0aW9ucy90b29sLWNhbmNlbGxlZCIpLHBhcmFtczprKHtyZWFzb246ZygpLm9wdGlvbmFsKCkuZGVzY3JpYmUoJ09wdGlvbmFsIHJlYXNvbiBmb3IgdGhlIGNhbmNlbGxhdGlvbiAoZS5nLiwgInVzZXIgYWN0aW9uIiwgInRpbWVvdXQiKS4nKX0pfSksRyQ9ayh7Zm9udHM6ZygpLm9wdGlvbmFsKCl9KSxKJD1rKHt2YXJpYWJsZXM6QiQub3B0aW9uYWwoKS5kZXNjcmliZSgiQ1NTIHZhcmlhYmxlcyBmb3IgdGhlbWluZyB0aGUgYXBwLiIpLGNzczpHJC5vcHRpb25hbCgpLmRlc2NyaWJlKCJDU1MgYmxvY2tzIHRoYXQgYXBwcyBjYW4gaW5qZWN0LiIpfSksWSQ9ayh7bWV0aG9kOmIoInVpL3Jlc291cmNlLXRlYXJkb3duIikscGFyYW1zOmsoe30pfSk7SyhnKCksdGUoKSk7dmFyIEFkPWsoe3RleHQ6ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyB0ZXh0IGNvbnRlbnQgYmxvY2tzLiIpLGltYWdlOmsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgaW1hZ2UgY29udGVudCBibG9ja3MuIiksYXVkaW86ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyBhdWRpbyBjb250ZW50IGJsb2Nrcy4iKSxyZXNvdXJjZTprKHt9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IHN1cHBvcnRzIHJlc291cmNlIGNvbnRlbnQgYmxvY2tzLiIpLHJlc291cmNlTGluazprKHt9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IHN1cHBvcnRzIHJlc291cmNlIGxpbmsgY29udGVudCBibG9ja3MuIiksc3RydWN0dXJlZENvbnRlbnQ6ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyBzdHJ1Y3R1cmVkIGNvbnRlbnQuIil9KTtrKHttZXRob2Q6YigidWkvbm90aWZpY2F0aW9ucy9yZXF1ZXN0LXRlYXJkb3duIikscGFyYW1zOmsoe30pLm9wdGlvbmFsKCl9KTt2YXIgUSQ9ayh7ZXhwZXJpbWVudGFsOksoZygpLEsoZygpLEhvKCkpLmRlc2NyaWJlKCJFeHBlcmltZW50YWwgZmVhdHVyZXMga2V5ZWQgYnkgaWRlbnRpZmllci4iKSkub3B0aW9uYWwoKS5kZXNjcmliZSgiRXhwZXJpbWVudGFsIGZlYXR1cmVzIGtleWVkIGJ5IGlkZW50aWZpZXIuIiksb3BlbkxpbmtzOmsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgb3BlbmluZyBleHRlcm5hbCBVUkxzLiIpLGRvd25sb2FkRmlsZTprKHt9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IHN1cHBvcnRzIGZpbGUgZG93bmxvYWRzIHZpYSB1aS9kb3dubG9hZC1maWxlLiIpLHNlcnZlclRvb2xzOmsoe2xpc3RDaGFuZ2VkOm5lKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyB0b29scy9saXN0X2NoYW5nZWQgbm90aWZpY2F0aW9ucy4iKX0pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3QgY2FuIHByb3h5IHRvb2wgY2FsbHMgdG8gdGhlIE1DUCBzZXJ2ZXIuIiksc2VydmVyUmVzb3VyY2VzOmsoe2xpc3RDaGFuZ2VkOm5lKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyByZXNvdXJjZXMvbGlzdF9jaGFuZ2VkIG5vdGlmaWNhdGlvbnMuIil9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IGNhbiBwcm94eSByZXNvdXJjZSByZWFkcyB0byB0aGUgTUNQIHNlcnZlci4iKSxsb2dnaW5nOmsoe30pLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3QgYWNjZXB0cyBsb2cgbWVzc2FnZXMuIiksc2FuZGJveDprKHtwZXJtaXNzaW9uczpidS5vcHRpb25hbCgpLmRlc2NyaWJlKCJQZXJtaXNzaW9ucyBncmFudGVkIGJ5IHRoZSBob3N0IChjYW1lcmEsIG1pY3JvcGhvbmUsIGdlb2xvY2F0aW9uKS4iKSxjc3A6Z3Uub3B0aW9uYWwoKS5kZXNjcmliZSgiQ1NQIGRvbWFpbnMgYXBwcm92ZWQgYnkgdGhlIGhvc3QuIil9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJTYW5kYm94IGNvbmZpZ3VyYXRpb24gYXBwbGllZCBieSB0aGUgaG9zdC4iKSx1cGRhdGVNb2RlbENvbnRleHQ6QWQub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBhY2NlcHRzIGNvbnRleHQgdXBkYXRlcyAodWkvdXBkYXRlLW1vZGVsLWNvbnRleHQpIHRvIGJlIGluY2x1ZGVkIGluIHRoZSBtb2RlbCdzIGNvbnRleHQgZm9yIGZ1dHVyZSB0dXJucy4iKSxtZXNzYWdlOkFkLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvc3Qgc3VwcG9ydHMgcmVjZWl2aW5nIGNvbnRlbnQgbWVzc2FnZXMgKHVpL21lc3NhZ2UpIGZyb20gdGhlIHZpZXcuIiksc2FtcGxpbmc6ayh7dG9vbHM6ayh7fSkub3B0aW9uYWwoKS5kZXNjcmliZSgiSG9zdCBzdXBwb3J0cyB0b29sIHVzZSB2aWEgYHRvb2xzYCBhbmQgYHRvb2xDaG9pY2VgIHBhcmFtZXRlcnMuIil9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IHN1cHBvcnRzIExMTSBzYW1wbGluZyAoc2FtcGxpbmcvY3JlYXRlTWVzc2FnZSkgZnJvbSB0aGUgdmlldy5cbk1pcnJvcnMgdGhlIE1DUCBgQ2xpZW50Q2FwYWJpbGl0aWVzLnNhbXBsaW5nYCBzaGFwZSBzbyBob3N0cyBjYW4gcGFzcyBpdCB0aHJvdWdoLiIpfSksWCQ9ayh7ZXhwZXJpbWVudGFsOksoZygpLEsoZygpLEhvKCkpLmRlc2NyaWJlKCJFeHBlcmltZW50YWwgZmVhdHVyZXMga2V5ZWQgYnkgaWRlbnRpZmllci4iKSkub3B0aW9uYWwoKS5kZXNjcmliZSgiRXhwZXJpbWVudGFsIGZlYXR1cmVzIGtleWVkIGJ5IGlkZW50aWZpZXIuIiksdG9vbHM6ayh7bGlzdENoYW5nZWQ6bmUoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJBcHAgc3VwcG9ydHMgdG9vbHMvbGlzdF9jaGFuZ2VkIG5vdGlmaWNhdGlvbnMuIil9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJBcHAgZXhwb3NlcyBNQ1Atc3R5bGUgdG9vbHMgdGhhdCB0aGUgaG9zdCBjYW4gY2FsbC4iKSxhdmFpbGFibGVEaXNwbGF5TW9kZXM6UihHbikub3B0aW9uYWwoKS5kZXNjcmliZSgiRGlzcGxheSBtb2RlcyB0aGUgYXBwIHN1cHBvcnRzLiIpfSk7ayh7bWV0aG9kOmIoInVpL25vdGlmaWNhdGlvbnMvaW5pdGlhbGl6ZWQiKSxwYXJhbXM6ayh7fSkub3B0aW9uYWwoKX0pO2soe2NzcDpndS5vcHRpb25hbCgpLmRlc2NyaWJlKCJDb250ZW50IFNlY3VyaXR5IFBvbGljeSBjb25maWd1cmF0aW9uIGZvciBVSSByZXNvdXJjZXMuIikscGVybWlzc2lvbnM6YnUub3B0aW9uYWwoKS5kZXNjcmliZSgiU2FuZGJveCBwZXJtaXNzaW9ucyByZXF1ZXN0ZWQgYnkgdGhlIFVJIHJlc291cmNlLiIpLGRvbWFpbjpnKCkub3B0aW9uYWwoKS5kZXNjcmliZShgRGVkaWNhdGVkIG9yaWdpbiBmb3IgdmlldyBzYW5kYm94LgoKVXNlZnVsIHdoZW4gdmlld3MgbmVlZCBzdGFibGUsIGRlZGljYXRlZCBvcmlnaW5zIGZvciBPQXV0aCBjYWxsYmFja3MsIENPUlMgcG9saWNpZXMsIG9yIEFQSSBrZXkgYWxsb3dsaXN0cy4KCioqSG9zdC1kZXBlbmRlbnQ6KiogVGhlIGZvcm1hdCBhbmQgdmFsaWRhdGlvbiBydWxlcyBmb3IgdGhpcyBmaWVsZCBhcmUgZGV0ZXJtaW5lZCBieSBlYWNoIGhvc3QuIFNlcnZlcnMgTVVTVCBjb25zdWx0IGhvc3Qtc3BlY2lmaWMgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGV4cGVjdGVkIGRvbWFpbiBmb3JtYXQuIENvbW1vbiBwYXR0ZXJucyBpbmNsdWRlOgotIEhhc2gtYmFzZWQgc3ViZG9tYWlucyAoZS5nLiwgXGB7aGFzaH0uY2xhdWRlbWNwY29udGVudC5jb21cYCkKLSBVUkwtZGVyaXZlZCBzdWJkb21haW5zIChlLmcuLCBcYHd3dy1leGFtcGxlLWNvbS5vYWl1c2VyY29udGVudC5jb21cYCkKCklmIG9taXR0ZWQsIGhvc3QgdXNlcyBkZWZhdWx0IHNhbmRib3ggb3JpZ2luICh0eXBpY2FsbHkgcGVyLWNvbnZlcnNhdGlvbikuYCkscHJlZmVyc0JvcmRlcjpuZSgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoYFZpc3VhbCBib3VuZGFyeSBwcmVmZXJlbmNlIC0gdHJ1ZSBpZiB2aWV3IHByZWZlcnMgYSB2aXNpYmxlIGJvcmRlci4KCkJvb2xlYW4gcmVxdWVzdGluZyB3aGV0aGVyIGEgdmlzaWJsZSBib3JkZXIgYW5kIGJhY2tncm91bmQgaXMgcHJvdmlkZWQgYnkgdGhlIGhvc3QuIFNwZWNpZnlpbmcgYW4gZXhwbGljaXQgdmFsdWUgZm9yIHRoaXMgaXMgcmVjb21tZW5kZWQgYmVjYXVzZSBob3N0cycgZGVmYXVsdHMgbWF5IHZhcnkuCgotIFxgdHJ1ZVxgOiByZXF1ZXN0IHZpc2libGUgYm9yZGVyICsgYmFja2dyb3VuZAotIFxgZmFsc2VcYDogcmVxdWVzdCBubyB2aXNpYmxlIGJvcmRlciArIGJhY2tncm91bmQKLSBvbWl0dGVkOiBob3N0IGRlY2lkZXMgYm9yZGVyYCl9KTtrKHttZXRob2Q6YigidWkvcmVxdWVzdC1kaXNwbGF5LW1vZGUiKSxwYXJhbXM6ayh7bW9kZTpHbi5kZXNjcmliZSgiVGhlIGRpc3BsYXkgbW9kZSBiZWluZyByZXF1ZXN0ZWQuIil9KX0pO3ZhciBldz1rKHttb2RlOkduLmRlc2NyaWJlKCJUaGUgZGlzcGxheSBtb2RlIHRoYXQgd2FzIGFjdHVhbGx5IHNldC4gTWF5IGRpZmZlciBmcm9tIHJlcXVlc3RlZCBpZiBub3Qgc3VwcG9ydGVkLiIpfSkucGFzc3Rocm91Z2goKSx0dz1VKFtiKCJtb2RlbCIpLGIoImFwcCIpXSkuZGVzY3JpYmUoIlRvb2wgdmlzaWJpbGl0eSBzY29wZSAtIHdobyBjYW4gYWNjZXNzIHRoZSB0b29sLiIpO2soe3Jlc291cmNlVXJpOmcoKS5vcHRpb25hbCgpLHZpc2liaWxpdHk6Uih0dykub3B0aW9uYWwoKS5kZXNjcmliZShgV2hvIGNhbiBhY2Nlc3MgdGhpcyB0b29sLiBEZWZhdWx0OiBbIm1vZGVsIiwgImFwcCJdCi0gIm1vZGVsIjogVG9vbCB2aXNpYmxlIHRvIGFuZCBjYWxsYWJsZSBieSB0aGUgYWdlbnQKLSAiYXBwIjogVG9vbCBjYWxsYWJsZSBieSB0aGUgYXBwIGZyb20gdGhpcyBzZXJ2ZXIgb25seWApLGNzcDp4dCgpLm9wdGlvbmFsKCkscGVybWlzc2lvbnM6eHQoKS5vcHRpb25hbCgpfSk7ayh7bWltZVR5cGVzOlIoZygpKS5vcHRpb25hbCgpLmRlc2NyaWJlKCdBcnJheSBvZiBzdXBwb3J0ZWQgTUlNRSB0eXBlcyBmb3IgVUkgcmVzb3VyY2VzLlxuTXVzdCBpbmNsdWRlIGAidGV4dC9odG1sO3Byb2ZpbGU9bWNwLWFwcCJgIGZvciBNQ1AgQXBwcyBzdXBwb3J0LicpfSk7ayh7bWV0aG9kOmIoInVpL2Rvd25sb2FkLWZpbGUiKSxwYXJhbXM6ayh7Y29udGVudHM6UihVKFt2ZyxrZ10pKS5kZXNjcmliZSgiUmVzb3VyY2UgY29udGVudHMgdG8gZG93bmxvYWQg4oCUIGVtYmVkZGVkIChpbmxpbmUgZGF0YSkgb3IgbGlua2VkIChob3N0IGZldGNoZXMpLiBVc2VzIHN0YW5kYXJkIE1DUCByZXNvdXJjZSB0eXBlcy4iKX0pfSk7ayh7bWV0aG9kOmIoInVpL21lc3NhZ2UiKSxwYXJhbXM6ayh7cm9sZTpiKCJ1c2VyIikuZGVzY3JpYmUoJ01lc3NhZ2Ugcm9sZSwgY3VycmVudGx5IG9ubHkgInVzZXIiIGlzIHN1cHBvcnRlZC4nKSxjb250ZW50OlIob3MpLmRlc2NyaWJlKCJNZXNzYWdlIGNvbnRlbnQgYmxvY2tzICh0ZXh0LCBpbWFnZSwgZXRjLikuIil9KX0pO2soe21ldGhvZDpiKCJ1aS9ub3RpZmljYXRpb25zL3NhbmRib3gtcmVzb3VyY2UtcmVhZHkiKSxwYXJhbXM6ayh7aHRtbDpnKCkuZGVzY3JpYmUoIkhUTUwgY29udGVudCB0byBsb2FkIGludG8gdGhlIGlubmVyIGlmcmFtZS4iKSxzYW5kYm94OmcoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJPcHRpb25hbCBvdmVycmlkZSBmb3IgdGhlIGlubmVyIGlmcmFtZSdzIHNhbmRib3ggYXR0cmlidXRlLiIpLGNzcDpndS5vcHRpb25hbCgpLmRlc2NyaWJlKCJDU1AgY29uZmlndXJhdGlvbiBmcm9tIHJlc291cmNlIG1ldGFkYXRhLiIpLHBlcm1pc3Npb25zOmJ1Lm9wdGlvbmFsKCkuZGVzY3JpYmUoIlNhbmRib3ggcGVybWlzc2lvbnMgZnJvbSByZXNvdXJjZSBtZXRhZGF0YS4iKX0pfSk7dmFyIG53PWsoe21ldGhvZDpiKCJ1aS9ub3RpZmljYXRpb25zL3Rvb2wtcmVzdWx0IikscGFyYW1zOmxhLmRlc2NyaWJlKCJTdGFuZGFyZCBNQ1AgdG9vbCBleGVjdXRpb24gcmVzdWx0LiIpfSksamc9ayh7dG9vbEluZm86ayh7aWQ6WW8ub3B0aW9uYWwoKS5kZXNjcmliZSgiSlNPTi1SUEMgaWQgb2YgdGhlIHRvb2xzL2NhbGwgcmVxdWVzdC4iKSx0b29sOmZ1LmRlc2NyaWJlKCJUb29sIGRlZmluaXRpb24gaW5jbHVkaW5nIG5hbWUsIGlucHV0U2NoZW1hLCBldGMuIil9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJNZXRhZGF0YSBvZiB0aGUgdG9vbCBjYWxsIHRoYXQgaW5zdGFudGlhdGVkIHRoaXMgQXBwLiIpLHRoZW1lOkQkLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkN1cnJlbnQgY29sb3IgdGhlbWUgcHJlZmVyZW5jZS4iKSxzdHlsZXM6SiQub3B0aW9uYWwoKS5kZXNjcmliZSgiU3R5bGUgY29uZmlndXJhdGlvbiBmb3IgdGhlbWluZyB0aGUgYXBwLiIpLGRpc3BsYXlNb2RlOkduLm9wdGlvbmFsKCkuZGVzY3JpYmUoIkhvdyB0aGUgVUkgaXMgY3VycmVudGx5IGRpc3BsYXllZC4iKSxhdmFpbGFibGVEaXNwbGF5TW9kZXM6UihHbikub3B0aW9uYWwoKS5kZXNjcmliZSgiRGlzcGxheSBtb2RlcyB0aGUgaG9zdCBzdXBwb3J0cy4iKSxjb250YWluZXJEaW1lbnNpb25zOlUoW2soe2hlaWdodDpMKCkuZGVzY3JpYmUoIkZpeGVkIGNvbnRhaW5lciBoZWlnaHQgaW4gcGl4ZWxzLiIpfSksayh7bWF4SGVpZ2h0OlUoW0woKSxvbigpXSkub3B0aW9uYWwoKS5kZXNjcmliZSgiTWF4aW11bSBjb250YWluZXIgaGVpZ2h0IGluIHBpeGVscy4iKX0pXSkuYW5kKFUoW2soe3dpZHRoOkwoKS5kZXNjcmliZSgiRml4ZWQgY29udGFpbmVyIHdpZHRoIGluIHBpeGVscy4iKX0pLGsoe21heFdpZHRoOlUoW0woKSxvbigpXSkub3B0aW9uYWwoKS5kZXNjcmliZSgiTWF4aW11bSBjb250YWluZXIgd2lkdGggaW4gcGl4ZWxzLiIpfSldKSkub3B0aW9uYWwoKS5kZXNjcmliZShgQ29udGFpbmVyIGRpbWVuc2lvbnMuIFJlcHJlc2VudHMgdGhlIGRpbWVuc2lvbnMgb2YgdGhlIGlmcmFtZSBvciBvdGhlcgpjb250YWluZXIgaG9sZGluZyB0aGUgYXBwLiBTcGVjaWZ5IGVpdGhlciB3aWR0aCBvciBtYXhXaWR0aCwgYW5kIGVpdGhlciBoZWlnaHQgb3IgbWF4SGVpZ2h0LmApLGxvY2FsZTpnKCkub3B0aW9uYWwoKS5kZXNjcmliZSgiVXNlcidzIGxhbmd1YWdlIGFuZCByZWdpb24gcHJlZmVyZW5jZSBpbiBCQ1AgNDcgZm9ybWF0LiIpLHRpbWVab25lOmcoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJVc2VyJ3MgdGltZXpvbmUgaW4gSUFOQSBmb3JtYXQuIiksdXNlckFnZW50OmcoKS5vcHRpb25hbCgpLmRlc2NyaWJlKCJIb3N0IGFwcGxpY2F0aW9uIGlkZW50aWZpZXIuIikscGxhdGZvcm06VShbYigid2ViIiksYigiZGVza3RvcCIpLGIoIm1vYmlsZSIpXSkub3B0aW9uYWwoKS5kZXNjcmliZSgiUGxhdGZvcm0gdHlwZSBmb3IgcmVzcG9uc2l2ZSBkZXNpZ24gZGVjaXNpb25zLiIpLGRldmljZUNhcGFiaWxpdGllczprKHt0b3VjaDpuZSgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIldoZXRoZXIgdGhlIGRldmljZSBzdXBwb3J0cyB0b3VjaCBpbnB1dC4iKSxob3ZlcjpuZSgpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIldoZXRoZXIgdGhlIGRldmljZSBzdXBwb3J0cyBob3ZlciBpbnRlcmFjdGlvbnMuIil9KS5vcHRpb25hbCgpLmRlc2NyaWJlKCJEZXZpY2UgaW5wdXQgY2FwYWJpbGl0aWVzLiIpLHNhZmVBcmVhSW5zZXRzOmsoe3RvcDpMKCkuZGVzY3JpYmUoIlRvcCBzYWZlIGFyZWEgaW5zZXQgaW4gcGl4ZWxzLiIpLHJpZ2h0OkwoKS5kZXNjcmliZSgiUmlnaHQgc2FmZSBhcmVhIGluc2V0IGluIHBpeGVscy4iKSxib3R0b206TCgpLmRlc2NyaWJlKCJCb3R0b20gc2FmZSBhcmVhIGluc2V0IGluIHBpeGVscy4iKSxsZWZ0OkwoKS5kZXNjcmliZSgiTGVmdCBzYWZlIGFyZWEgaW5zZXQgaW4gcGl4ZWxzLiIpfSkub3B0aW9uYWwoKS5kZXNjcmliZSgiTW9iaWxlIHNhZmUgYXJlYSBib3VuZGFyaWVzIGluIHBpeGVscy4iKX0pLnBhc3N0aHJvdWdoKCksb3c9ayh7bWV0aG9kOmIoInVpL25vdGlmaWNhdGlvbnMvaG9zdC1jb250ZXh0LWNoYW5nZWQiKSxwYXJhbXM6amcuZGVzY3JpYmUoIlBhcnRpYWwgY29udGV4dCB1cGRhdGUgY29udGFpbmluZyBvbmx5IGNoYW5nZWQgZmllbGRzLiIpfSk7ayh7bWV0aG9kOmIoInVpL3VwZGF0ZS1tb2RlbC1jb250ZXh0IikscGFyYW1zOmsoe2NvbnRlbnQ6Uihvcykub3B0aW9uYWwoKS5kZXNjcmliZSgiQ29udGV4dCBjb250ZW50IGJsb2NrcyAodGV4dCwgaW1hZ2UsIGV0Yy4pLiIpLHN0cnVjdHVyZWRDb250ZW50OksoZygpLHRlKCkuZGVzY3JpYmUoIlN0cnVjdHVyZWQgY29udGVudCBmb3IgbWFjaGluZS1yZWFkYWJsZSBjb250ZXh0IGRhdGEuIikpLm9wdGlvbmFsKCkuZGVzY3JpYmUoIlN0cnVjdHVyZWQgY29udGVudCBmb3IgbWFjaGluZS1yZWFkYWJsZSBjb250ZXh0IGRhdGEuIil9KX0pO2soe21ldGhvZDpiKCJ1aS9pbml0aWFsaXplIikscGFyYW1zOmsoe2FwcEluZm86aWEuZGVzY3JpYmUoIkFwcCBpZGVudGlmaWNhdGlvbiAobmFtZSBhbmQgdmVyc2lvbikuIiksYXBwQ2FwYWJpbGl0aWVzOlgkLmRlc2NyaWJlKCJGZWF0dXJlcyBhbmQgY2FwYWJpbGl0aWVzIHRoaXMgYXBwIHByb3ZpZGVzLiIpLHByb3RvY29sVmVyc2lvbjpnKCkuZGVzY3JpYmUoIlByb3RvY29sIHZlcnNpb24gdGhpcyBhcHAgc3VwcG9ydHMuIil9KX0pO3ZhciBzdz1rKHtwcm90b2NvbFZlcnNpb246ZygpLmRlc2NyaWJlKCdOZWdvdGlhdGVkIHByb3RvY29sIHZlcnNpb24gc3RyaW5nIChlLmcuLCAiMjAyNS0xMS0yMSIpLicpLGhvc3RJbmZvOmlhLmRlc2NyaWJlKCJIb3N0IGFwcGxpY2F0aW9uIGlkZW50aWZpY2F0aW9uIGFuZCB2ZXJzaW9uLiIpLGhvc3RDYXBhYmlsaXRpZXM6USQuZGVzY3JpYmUoIkZlYXR1cmVzIGFuZCBjYXBhYmlsaXRpZXMgcHJvdmlkZWQgYnkgdGhlIGhvc3QuIiksaG9zdENvbnRleHQ6amcuZGVzY3JpYmUoIlJpY2ggY29udGV4dCBhYm91dCB0aGUgaG9zdCBlbnZpcm9ubWVudC4iKX0pLnBhc3N0aHJvdWdoKCkscnc9e3RhcmdldDoiZHJhZnQtMjAyMC0xMiJ9O2FzeW5jIGZ1bmN0aW9uIHpkKGUsdCl7bGV0IG49ZVsifnN0YW5kYXJkIl07aWYobi5qc29uU2NoZW1hKXJldHVybiBuLmpzb25TY2hlbWFbdF0ocncpO2lmKG4udmVuZG9yPT09InpvZCIpe2xldHt6Om99PWF3YWl0IEliKCgpPT5Qcm9taXNlLnJlc29sdmUoKS50aGVuKCgpPT5XeSksdm9pZCAwLGltcG9ydC5tZXRhLnVybCk7cmV0dXJuIG8udG9KU09OU2NoZW1hKGUse2lvOnR9KX10aHJvdyBFcnJvcihgU2NoZW1hICh2ZW5kb3I6ICR7bi52ZW5kb3J9KSBkb2VzIG5vdCBpbXBsZW1lbnQgU3RhbmRhcmQgSlNPTiBTY2hlbWEgKH5zdGFuZGFyZC5qc29uU2NoZW1hKS4gVXNlIGEgbGlicmFyeSB0aGF0IGRvZXMgKHpvZCB2NCwgQXJrVHlwZSwgVmFsaWJvdCkgb3Igd3JhcCB5b3VyIHNjaGVtYSBhY2NvcmRpbmdseS5gKX1hc3luYyBmdW5jdGlvbiBDZChlLHQsbj0iIil7bGV0IG89YXdhaXQgZVsifnN0YW5kYXJkIl0udmFsaWRhdGUodCk7aWYoby5pc3N1ZXMpe2xldCBzPW8uaXNzdWVzLm1hcChyPT57bGV0IGk9ci5wYXRoPy5tYXAoYz0+dHlwZW9mIGM9PSJvYmplY3QiP2Mua2V5OmMpLmpvaW4oIi4iKTtyZXR1cm4gaT9gJHtpfTogJHtyLm1lc3NhZ2V9YDpyLm1lc3NhZ2V9KS5qb2luKCI7ICIpO3Rocm93IEVycm9yKG4rcyl9cmV0dXJuIG8udmFsdWV9ZnVuY3Rpb24gYXcoZSl7bGV0IHQ9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O3Quc2V0QXR0cmlidXRlKCJkYXRhLXRoZW1lIixlKSx0LnN0eWxlLmNvbG9yU2NoZW1lPWV9ZnVuY3Rpb24gaXcoZSx0PWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCl7Zm9yKGxldFtuLG9db2YgT2JqZWN0LmVudHJpZXMoZSkpbyE9PXZvaWQgMCYmdC5zdHlsZS5zZXRQcm9wZXJ0eShuLG8pfWZ1bmN0aW9uIGN3KGUpe2lmKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJfX21jcC1ob3N0LWZvbnRzIikpcmV0dXJuO2xldCB0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIik7dC5pZD0iX19tY3AtaG9zdC1mb250cyIsdC50ZXh0Q29udGVudD1lLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQodCl9Y2xhc3MgdnUgZXh0ZW5kcyBPJHtfYXBwSW5mbztfY2FwYWJpbGl0aWVzO29wdGlvbnM7X2hvc3RDYXBhYmlsaXRpZXM7X2hvc3RJbmZvO19ob3N0Q29udGV4dDtfcmVnaXN0ZXJlZFRvb2xzPXt9O19pbml0aWFsaXplZFNlbnQ9ITE7X2Fzc2VydEluaXRpYWxpemVkKHQpe2lmKHRoaXMuX2luaXRpYWxpemVkU2VudClyZXR1cm47bGV0IG49YFtleHQtYXBwc10gQXBwLiR7dH0oKSBjYWxsZWQgYmVmb3JlIGNvbm5lY3QoKSBjb21wbGV0ZWQgdGhlIHVpL2luaXRpYWxpemUgaGFuZHNoYWtlLiBBd2FpdCBhcHAuY29ubmVjdCgpIGJlZm9yZSBjYWxsaW5nIHRoaXMgbWV0aG9kLCBvciBtb3ZlIGRhdGEgbG9hZGluZyB0byBhbiBvbnRvb2xyZXN1bHQgaGFuZGxlci5gO2lmKHRoaXMub3B0aW9ucz8uc3RyaWN0KXRocm93IEVycm9yKG4pO2NvbnNvbGUud2FybihgJHtufS4gVGhpcyB3aWxsIHRocm93IGluIGEgZnV0dXJlIHJlbGVhc2UuYCl9ZXZlbnRTY2hlbWFzPXt0b29saW5wdXQ6ViQsdG9vbGlucHV0cGFydGlhbDpXJCx0b29scmVzdWx0Om53LHRvb2xjYW5jZWxsZWQ6SyQsaG9zdGNvbnRleHRjaGFuZ2VkOm93fTtzdGF0aWMgT05FX1NIT1RfRVZFTlRTPW5ldyBTZXQoWyJ0b29saW5wdXQiLCJ0b29saW5wdXRwYXJ0aWFsIiwidG9vbHJlc3VsdCIsInRvb2xjYW5jZWxsZWQiXSk7X2V2ZXJIYWRMaXN0ZW5lcj1uZXcgU2V0O19hc3NlcnRIYW5kbGVyVGltaW5nKHQpe2lmKCF2dS5PTkVfU0hPVF9FVkVOVFMuaGFzKHQpfHx0aGlzLl9ldmVySGFkTGlzdGVuZXIuaGFzKHQpfHwodGhpcy5fZXZlckhhZExpc3RlbmVyLmFkZCh0KSwhdGhpcy5faW5pdGlhbGl6ZWRTZW50KSlyZXR1cm47bGV0IG49YFtleHQtYXBwc10gIiR7U3RyaW5nKHQpfSIgaGFuZGxlciByZWdpc3RlcmVkIGFmdGVyIGNvbm5lY3QoKSBjb21wbGV0ZWQgdGhlIHVpL2luaXRpYWxpemUgaGFuZHNoYWtlLiBUaGUgaG9zdCBtYXkgaGF2ZSBhbHJlYWR5IHNlbnQgdGhpcyBub3RpZmljYXRpb24uIFJlZ2lzdGVyIGhhbmRsZXJzIGJlZm9yZSBjYWxsaW5nIGFwcC5jb25uZWN0KCkuYDtpZih0aGlzLm9wdGlvbnM/LnN0cmljdCl0aHJvdyBFcnJvcihuKTtjb25zb2xlLndhcm4obil9c2V0RXZlbnRIYW5kbGVyKHQsbil7biYmdGhpcy5fYXNzZXJ0SGFuZGxlclRpbWluZyh0KSxzdXBlci5zZXRFdmVudEhhbmRsZXIodCxuKX1hZGRFdmVudExpc3RlbmVyKHQsbil7dGhpcy5fYXNzZXJ0SGFuZGxlclRpbWluZyh0KSxzdXBlci5hZGRFdmVudExpc3RlbmVyKHQsbil9b25FdmVudERpc3BhdGNoKHQsbil7dD09PSJob3N0Y29udGV4dGNoYW5nZWQiJiYodGhpcy5faG9zdENvbnRleHQ9ey4uLnRoaXMuX2hvc3RDb250ZXh0LC4uLm59KX1jb25zdHJ1Y3Rvcih0LG49e30sbz17YXV0b1Jlc2l6ZTohMH0pe3N1cGVyKG8pLHRoaXMuX2FwcEluZm89dCx0aGlzLl9jYXBhYmlsaXRpZXM9bix0aGlzLm9wdGlvbnM9byxvLmFsbG93VW5zYWZlRXZhbHx8bWUoe2ppdGxlc3M6ITB9KSx0aGlzLnNldFJlcXVlc3RIYW5kbGVyKGNhLHM9Pihjb25zb2xlLmxvZygiUmVjZWl2ZWQgcGluZzoiLHMucGFyYW1zKSx7fSkpLHRoaXMuc2V0RXZlbnRIYW5kbGVyKCJob3N0Y29udGV4dGNoYW5nZWQiLHZvaWQgMCl9cmVnaXN0ZXJDYXBhYmlsaXRpZXModCl7aWYodGhpcy50cmFuc3BvcnQpdGhyb3cgRXJyb3IoIkNhbm5vdCByZWdpc3RlciBjYXBhYmlsaXRpZXMgYWZ0ZXIgdHJhbnNwb3J0IGlzIGVzdGFibGlzaGVkIik7dGhpcy5fY2FwYWJpbGl0aWVzPVIkKHRoaXMuX2NhcGFiaWxpdGllcyx0KX1yZWdpc3RlclRvb2wodCxuLG8pe2lmKHRoaXMuX3JlZ2lzdGVyZWRUb29sc1t0XSl0aHJvdyBFcnJvcihgVG9vbCAke3R9IGlzIGFscmVhZHkgcmVnaXN0ZXJlZGApO2xldCBzPXRoaXMscj0oKT0+e3MuX2luaXRpYWxpemVkU2VudCYmcy5fY2FwYWJpbGl0aWVzLnRvb2xzPy5saXN0Q2hhbmdlZCYmcy5zZW5kVG9vbExpc3RDaGFuZ2VkKCl9LGk9bi5pbnB1dFNjaGVtYSE9PXZvaWQgMCxjPXt0aXRsZTpuLnRpdGxlLGRlc2NyaXB0aW9uOm4uZGVzY3JpcHRpb24saW5wdXRTY2hlbWE6bi5pbnB1dFNjaGVtYSxvdXRwdXRTY2hlbWE6bi5vdXRwdXRTY2hlbWEsYW5ub3RhdGlvbnM6bi5hbm5vdGF0aW9ucyxfbWV0YTpuLl9tZXRhLGVuYWJsZWQ6ITAsZW5hYmxlKCl7dGhpcy5lbmFibGVkPSEwLHIoKX0sZGlzYWJsZSgpe3RoaXMuZW5hYmxlZD0hMSxyKCl9LHVwZGF0ZShoKXtPYmplY3QuYXNzaWduKHRoaXMsaCkscigpfSxyZW1vdmUoKXtzLl9yZWdpc3RlcmVkVG9vbHNbdF09PT1jJiYoZGVsZXRlIHMuX3JlZ2lzdGVyZWRUb29sc1t0XSxyKCkpfSxoYW5kbGVyOmFzeW5jKGgsZCk9PntpZighYy5lbmFibGVkKXRocm93IEVycm9yKGBUb29sICR7dH0gaXMgZGlzYWJsZWRgKTtsZXQgdTtpZihpKXtsZXQgcD1jLmlucHV0U2NoZW1hLG09cD9hd2FpdCBDZChwLGg/P3t9LGBJbnZhbGlkIGlucHV0IGZvciB0b29sICR7dH06IGApOmg/P3t9O3U9YXdhaXQgbyhtLGQpfWVsc2UgdT1hd2FpdCBvKGQpO3JldHVybiBjLm91dHB1dFNjaGVtYSYmIXUuaXNFcnJvciYmKHUuc3RydWN0dXJlZENvbnRlbnQ9YXdhaXQgQ2QoYy5vdXRwdXRTY2hlbWEsdS5zdHJ1Y3R1cmVkQ29udGVudCxgSW52YWxpZCBvdXRwdXQgZm9yIHRvb2wgJHt0fTogYCkpLHV9fTtyZXR1cm4gdGhpcy5fcmVnaXN0ZXJlZFRvb2xzW3RdPWMsIXRoaXMuX2NhcGFiaWxpdGllcy50b29scyYmIXRoaXMudHJhbnNwb3J0JiZ0aGlzLnJlZ2lzdGVyQ2FwYWJpbGl0aWVzKHt0b29sczp7bGlzdENoYW5nZWQ6ITB9fSksdGhpcy5lbnN1cmVUb29sSGFuZGxlcnNJbml0aWFsaXplZCgpLHIoKSxjfV90b29sSGFuZGxlcnNJbml0aWFsaXplZD0hMTtlbnN1cmVUb29sSGFuZGxlcnNJbml0aWFsaXplZCgpe3RoaXMuX3Rvb2xIYW5kbGVyc0luaXRpYWxpemVkfHwodGhpcy5fdG9vbEhhbmRsZXJzSW5pdGlhbGl6ZWQ9ITAsdGhpcy5vbmNhbGx0b29sPWFzeW5jKHQsbik9PntsZXQgbz10aGlzLl9yZWdpc3RlcmVkVG9vbHNbdC5uYW1lXTtpZighbyl0aHJvdyBFcnJvcihgVG9vbCAke3QubmFtZX0gbm90IGZvdW5kYCk7cmV0dXJuIG8uaGFuZGxlcih0LmFyZ3VtZW50cyxuKX0sdGhpcy5vbmxpc3R0b29scz1hc3luYyh0LG4pPT4oe3Rvb2xzOmF3YWl0IFByb21pc2UuYWxsKE9iamVjdC5lbnRyaWVzKHRoaXMuX3JlZ2lzdGVyZWRUb29scykuZmlsdGVyKChbbyxzXSk9PnMuZW5hYmxlZCkubWFwKGFzeW5jKFtvLHNdKT0+e2xldCByPXtuYW1lOm8sdGl0bGU6cy50aXRsZSxkZXNjcmlwdGlvbjpzLmRlc2NyaXB0aW9uLGlucHV0U2NoZW1hOnMuaW5wdXRTY2hlbWE/YXdhaXQgemQocy5pbnB1dFNjaGVtYSwiaW5wdXQiKTp7dHlwZToib2JqZWN0Iixwcm9wZXJ0aWVzOnt9fX07cmV0dXJuIHMub3V0cHV0U2NoZW1hJiYoci5vdXRwdXRTY2hlbWE9YXdhaXQgemQocy5vdXRwdXRTY2hlbWEsIm91dHB1dCIpKSxzLmFubm90YXRpb25zJiYoci5hbm5vdGF0aW9ucz1zLmFubm90YXRpb25zKSxzLl9tZXRhJiYoci5fbWV0YT1zLl9tZXRhKSxyfSkpfSkpfWFzeW5jIHNlbmRUb29sTGlzdENoYW5nZWQodD17fSl7dGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoInNlbmRUb29sTGlzdENoYW5nZWQiKSxhd2FpdCB0aGlzLm5vdGlmaWNhdGlvbih7bWV0aG9kOiJub3RpZmljYXRpb25zL3Rvb2xzL2xpc3RfY2hhbmdlZCIscGFyYW1zOnR9KX1nZXRIb3N0Q2FwYWJpbGl0aWVzKCl7cmV0dXJuIHRoaXMuX2hvc3RDYXBhYmlsaXRpZXN9Z2V0SG9zdFZlcnNpb24oKXtyZXR1cm4gdGhpcy5faG9zdEluZm99Z2V0SG9zdENvbnRleHQoKXtyZXR1cm4gdGhpcy5faG9zdENvbnRleHR9Z2V0IG9udG9vbGlucHV0KCl7cmV0dXJuIHRoaXMuZ2V0RXZlbnRIYW5kbGVyKCJ0b29saW5wdXQiKX1zZXQgb250b29saW5wdXQodCl7dGhpcy5zZXRFdmVudEhhbmRsZXIoInRvb2xpbnB1dCIsdCl9Z2V0IG9udG9vbGlucHV0cGFydGlhbCgpe3JldHVybiB0aGlzLmdldEV2ZW50SGFuZGxlcigidG9vbGlucHV0cGFydGlhbCIpfXNldCBvbnRvb2xpbnB1dHBhcnRpYWwodCl7dGhpcy5zZXRFdmVudEhhbmRsZXIoInRvb2xpbnB1dHBhcnRpYWwiLHQpfWdldCBvbnRvb2xyZXN1bHQoKXtyZXR1cm4gdGhpcy5nZXRFdmVudEhhbmRsZXIoInRvb2xyZXN1bHQiKX1zZXQgb250b29scmVzdWx0KHQpe3RoaXMuc2V0RXZlbnRIYW5kbGVyKCJ0b29scmVzdWx0Iix0KX1nZXQgb250b29sY2FuY2VsbGVkKCl7cmV0dXJuIHRoaXMuZ2V0RXZlbnRIYW5kbGVyKCJ0b29sY2FuY2VsbGVkIil9c2V0IG9udG9vbGNhbmNlbGxlZCh0KXt0aGlzLnNldEV2ZW50SGFuZGxlcigidG9vbGNhbmNlbGxlZCIsdCl9Z2V0IG9uaG9zdGNvbnRleHRjaGFuZ2VkKCl7cmV0dXJuIHRoaXMuZ2V0RXZlbnRIYW5kbGVyKCJob3N0Y29udGV4dGNoYW5nZWQiKX1zZXQgb25ob3N0Y29udGV4dGNoYW5nZWQodCl7dGhpcy5zZXRFdmVudEhhbmRsZXIoImhvc3Rjb250ZXh0Y2hhbmdlZCIsdCl9X29udGVhcmRvd247Z2V0IG9udGVhcmRvd24oKXtyZXR1cm4gdGhpcy5fb250ZWFyZG93bn1zZXQgb250ZWFyZG93bih0KXt0aGlzLndhcm5JZlJlcXVlc3RIYW5kbGVyUmVwbGFjZWQoIm9udGVhcmRvd24iLHRoaXMuX29udGVhcmRvd24sdCksdGhpcy5fb250ZWFyZG93bj10LHRoaXMucmVwbGFjZVJlcXVlc3RIYW5kbGVyKFkkLChuLG8pPT57aWYoIXRoaXMuX29udGVhcmRvd24pdGhyb3cgRXJyb3IoIk5vIG9udGVhcmRvd24gaGFuZGxlciBzZXQiKTtyZXR1cm4gdGhpcy5fb250ZWFyZG93bihuLnBhcmFtcyxvKX0pfV9vbmNhbGx0b29sO2dldCBvbmNhbGx0b29sKCl7cmV0dXJuIHRoaXMuX29uY2FsbHRvb2x9c2V0IG9uY2FsbHRvb2wodCl7dGhpcy53YXJuSWZSZXF1ZXN0SGFuZGxlclJlcGxhY2VkKCJvbmNhbGx0b29sIix0aGlzLl9vbmNhbGx0b29sLHQpLHRoaXMuX29uY2FsbHRvb2w9dCx0aGlzLnJlcGxhY2VSZXF1ZXN0SGFuZGxlcigkZywobixvKT0+e2lmKCF0aGlzLl9vbmNhbGx0b29sKXRocm93IEVycm9yKCJObyBvbmNhbGx0b29sIGhhbmRsZXIgc2V0Iik7cmV0dXJuIHRoaXMuX29uY2FsbHRvb2wobi5wYXJhbXMsbyl9KX1fb25saXN0dG9vbHM7Z2V0IG9ubGlzdHRvb2xzKCl7cmV0dXJuIHRoaXMuX29ubGlzdHRvb2xzfXNldCBvbmxpc3R0b29scyh0KXt0aGlzLndhcm5JZlJlcXVlc3RIYW5kbGVyUmVwbGFjZWQoIm9ubGlzdHRvb2xzIix0aGlzLl9vbmxpc3R0b29scyx0KSx0aGlzLl9vbmxpc3R0b29scz10LHRoaXMucmVwbGFjZVJlcXVlc3RIYW5kbGVyKHlnLChuLG8pPT57aWYoIXRoaXMuX29ubGlzdHRvb2xzKXRocm93IEVycm9yKCJObyBvbmxpc3R0b29scyBoYW5kbGVyIHNldCIpO3JldHVybiB0aGlzLl9vbmxpc3R0b29scyhuLnBhcmFtcyxvKX0pfWFzc2VydENhcGFiaWxpdHlGb3JNZXRob2QodCl7c3dpdGNoKHQpe2Nhc2Uic2FtcGxpbmcvY3JlYXRlTWVzc2FnZSI6aWYoIXRoaXMuX2hvc3RDYXBhYmlsaXRpZXM/LnNhbXBsaW5nKXRocm93IEVycm9yKGBIb3N0IGRvZXMgbm90IHN1cHBvcnQgc2FtcGxpbmcgKHJlcXVpcmVkIGZvciAke3R9KWApO2JyZWFrfX1hc3NlcnRSZXF1ZXN0SGFuZGxlckNhcGFiaWxpdHkodCl7c3dpdGNoKHQpe2Nhc2UidG9vbHMvY2FsbCI6Y2FzZSJ0b29scy9saXN0IjppZighdGhpcy5fY2FwYWJpbGl0aWVzLnRvb2xzKXRocm93IEVycm9yKGBDbGllbnQgZG9lcyBub3Qgc3VwcG9ydCB0b29sIGNhcGFiaWxpdHkgKHJlcXVpcmVkIGZvciAke3R9KWApO3JldHVybjtjYXNlInBpbmciOmNhc2UidWkvcmVzb3VyY2UtdGVhcmRvd24iOnJldHVybjtkZWZhdWx0OnRocm93IEVycm9yKGBObyBoYW5kbGVyIGZvciBtZXRob2QgJHt0fSByZWdpc3RlcmVkYCl9fWFzc2VydE5vdGlmaWNhdGlvbkNhcGFiaWxpdHkodCl7fWFzc2VydFRhc2tDYXBhYmlsaXR5KHQpe3Rocm93IEVycm9yKCJUYXNrcyBhcmUgbm90IHN1cHBvcnRlZCBpbiBNQ1AgQXBwcyIpfWFzc2VydFRhc2tIYW5kbGVyQ2FwYWJpbGl0eSh0KXt0aHJvdyBFcnJvcigiVGFzayBoYW5kbGVycyBhcmUgbm90IHN1cHBvcnRlZCBpbiBNQ1AgQXBwcyIpfWFzeW5jIGNhbGxTZXJ2ZXJUb29sKHQsbil7aWYodGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoImNhbGxTZXJ2ZXJUb29sIiksdHlwZW9mIHQ9PSJzdHJpbmciKXRocm93IEVycm9yKGBjYWxsU2VydmVyVG9vbCgpIGV4cGVjdHMgYW4gb2JqZWN0IGFzIGl0cyBmaXJzdCBhcmd1bWVudCwgYnV0IHJlY2VpdmVkIGEgc3RyaW5nICgiJHt0fSIpLiBEaWQgeW91IG1lYW46IGNhbGxTZXJ2ZXJUb29sKHsgbmFtZTogIiR7dH0iLCBhcmd1bWVudHM6IHsgLi4uIH0gfSk/YCk7cmV0dXJuIGF3YWl0IHRoaXMucmVxdWVzdCh7bWV0aG9kOiJ0b29scy9jYWxsIixwYXJhbXM6dH0sbGEse29ucHJvZ3Jlc3M6KCk9Pnt9LHJlc2V0VGltZW91dE9uUHJvZ3Jlc3M6ITAsLi4ubn0pfWFzeW5jIHJlYWRTZXJ2ZXJSZXNvdXJjZSh0LG4pe3JldHVybiB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgicmVhZFNlcnZlclJlc291cmNlIiksYXdhaXQgdGhpcy5yZXF1ZXN0KHttZXRob2Q6InJlc291cmNlcy9yZWFkIixwYXJhbXM6dH0sYmcsbil9YXN5bmMgbGlzdFNlcnZlclJlc291cmNlcyh0LG4pe3JldHVybiB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgibGlzdFNlcnZlclJlc291cmNlcyIpLGF3YWl0IHRoaXMucmVxdWVzdCh7bWV0aG9kOiJyZXNvdXJjZXMvbGlzdCIscGFyYW1zOnR9LGdnLG4pfWFzeW5jIGNyZWF0ZVNhbXBsaW5nTWVzc2FnZSh0LG4pe3RoaXMuX2Fzc2VydEluaXRpYWxpemVkKCJjcmVhdGVTYW1wbGluZ01lc3NhZ2UiKTtsZXQgbz10LnRvb2xzP19nOlNnO3JldHVybiBhd2FpdCB0aGlzLnJlcXVlc3Qoe21ldGhvZDoic2FtcGxpbmcvY3JlYXRlTWVzc2FnZSIscGFyYW1zOnR9LG8sbil9c2VuZE1lc3NhZ2UodCxuKXtyZXR1cm4gdGhpcy5fYXNzZXJ0SW5pdGlhbGl6ZWQoInNlbmRNZXNzYWdlIiksdGhpcy5yZXF1ZXN0KHttZXRob2Q6InVpL21lc3NhZ2UiLHBhcmFtczp0fSxVJCxuKX1zZW5kTG9nKHQpe3JldHVybiB0aGlzLm5vdGlmaWNhdGlvbih7bWV0aG9kOiJub3RpZmljYXRpb25zL21lc3NhZ2UiLHBhcmFtczp0fSl9dXBkYXRlTW9kZWxDb250ZXh0KHQsbil7cmV0dXJuIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKCJ1cGRhdGVNb2RlbENvbnRleHQiKSx0aGlzLnJlcXVlc3Qoe21ldGhvZDoidWkvdXBkYXRlLW1vZGVsLWNvbnRleHQiLHBhcmFtczp0fSxldSxuKX1vcGVuTGluayh0LG4pe3JldHVybiB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgib3BlbkxpbmsiKSx0aGlzLnJlcXVlc3Qoe21ldGhvZDoidWkvb3Blbi1saW5rIixwYXJhbXM6dH0sSCQsbil9c2VuZE9wZW5MaW5rPXRoaXMub3Blbkxpbms7ZG93bmxvYWRGaWxlKHQsbil7cmV0dXJuIHRoaXMuX2Fzc2VydEluaXRpYWxpemVkKCJkb3dubG9hZEZpbGUiKSx0aGlzLnJlcXVlc3Qoe21ldGhvZDoidWkvZG93bmxvYWQtZmlsZSIscGFyYW1zOnR9LEYkLG4pfXJlcXVlc3RUZWFyZG93bih0PXt9KXtyZXR1cm4gdGhpcy5ub3RpZmljYXRpb24oe21ldGhvZDoidWkvbm90aWZpY2F0aW9ucy9yZXF1ZXN0LXRlYXJkb3duIixwYXJhbXM6dH0pfXJlcXVlc3REaXNwbGF5TW9kZSh0LG4pe3JldHVybiB0aGlzLl9hc3NlcnRJbml0aWFsaXplZCgicmVxdWVzdERpc3BsYXlNb2RlIiksdGhpcy5yZXF1ZXN0KHttZXRob2Q6InVpL3JlcXVlc3QtZGlzcGxheS1tb2RlIixwYXJhbXM6dH0sZXcsbil9c2VuZFNpemVDaGFuZ2VkKHQpe3JldHVybiB0aGlzLm5vdGlmaWNhdGlvbih7bWV0aG9kOiJ1aS9ub3RpZmljYXRpb25zL3NpemUtY2hhbmdlZCIscGFyYW1zOnR9KX1zZXR1cFNpemVDaGFuZ2VkTm90aWZpY2F0aW9ucygpe2xldCB0PSExLG49MCxvPTAscz0oKT0+e3R8fCh0PSEwLHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKT0+e3Q9ITE7bGV0IGk9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LGM9aS5zdHlsZS5oZWlnaHQ7aS5zdHlsZS5oZWlnaHQ9Im1heC1jb250ZW50IjtsZXQgaD1NYXRoLmNlaWwoaS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQpO2kuc3R5bGUuaGVpZ2h0PWM7bGV0IGQ9TWF0aC5jZWlsKHdpbmRvdy5pbm5lcldpZHRoKTsoZCE9PW58fGghPT1vKSYmKG49ZCxvPWgsdGhpcy5zZW5kU2l6ZUNoYW5nZWQoe3dpZHRoOmQsaGVpZ2h0Omh9KSl9KSl9O3MoKTtsZXQgcj1uZXcgUmVzaXplT2JzZXJ2ZXIocyk7cmV0dXJuIHIub2JzZXJ2ZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLHIub2JzZXJ2ZShkb2N1bWVudC5ib2R5KSwoKT0+ci5kaXNjb25uZWN0KCl9YXN5bmMgY29ubmVjdCh0PW5ldyBxJCh3aW5kb3cucGFyZW50LHdpbmRvdy5wYXJlbnQpLG4pe2lmKHRoaXMudHJhbnNwb3J0KXRocm93IEVycm9yKCJBcHAgaXMgYWxyZWFkeSBjb25uZWN0ZWQuIENhbGwgY2xvc2UoKSBiZWZvcmUgY29ubmVjdGluZyBhZ2Fpbi4iKTt0aGlzLl9pbml0aWFsaXplZFNlbnQ9ITEsYXdhaXQgc3VwZXIuY29ubmVjdCh0KTt0cnl7bGV0IG89YXdhaXQgdGhpcy5yZXF1ZXN0KHttZXRob2Q6InVpL2luaXRpYWxpemUiLHBhcmFtczp7YXBwQ2FwYWJpbGl0aWVzOnRoaXMuX2NhcGFiaWxpdGllcyxhcHBJbmZvOnRoaXMuX2FwcEluZm8scHJvdG9jb2xWZXJzaW9uOk0kfX0sc3csbik7aWYobz09PXZvaWQgMCl0aHJvdyBFcnJvcihgU2VydmVyIHNlbnQgaW52YWxpZCBpbml0aWFsaXplIHJlc3VsdDogJHtvfWApO3RoaXMuX2hvc3RDYXBhYmlsaXRpZXM9by5ob3N0Q2FwYWJpbGl0aWVzLHRoaXMuX2hvc3RJbmZvPW8uaG9zdEluZm8sdGhpcy5faG9zdENvbnRleHQ9by5ob3N0Q29udGV4dCxhd2FpdCB0aGlzLm5vdGlmaWNhdGlvbih7bWV0aG9kOiJ1aS9ub3RpZmljYXRpb25zL2luaXRpYWxpemVkIn0pLHRoaXMuX2luaXRpYWxpemVkU2VudD0hMCx0aGlzLm9wdGlvbnM/LmF1dG9SZXNpemUmJnRoaXMuc2V0dXBTaXplQ2hhbmdlZE5vdGlmaWNhdGlvbnMoKX1jYXRjaChvKXt0aHJvdyB0aGlzLmNsb3NlKCksb319fWNvbnN0IGx3PXtkZToienVyw7xjayIsamE6IuaIu+OCiyIsa286IuuSpOuhnCIsZnI6InJldG91ciIsZXM6InZvbHZlciJ9LHV3PXtkZToiQmV6YWhsZW4iLGphOiLmlK/miZXjgYQiLGtvOiLqsrDsoJwiLGZyOiJQYXllciIsZXM6IlBhZ2FyIn0sZHc9e2RlOiJCdWNoZW4iLGphOiLkuojntIQiLGtvOiLsmIjslb0iLGZyOiJSw6lzZXJ2ZXIiLGVzOiJSZXNlcnZhciJ9LGh3PXtkZToiUmVpc2UiLGphOiLml4XnqIsiLGtvOiLsnbzsoJUiLGZyOiJWb3lhZ2UiLGVzOiJWaWFqZSJ9LHB3PXtkZToiSG90ZWwiLGphOiLjg5vjg4bjg6siLGtvOiLtmLjthZQiLGZyOiJIw7R0ZWwiLGVzOiJIb3RlbCJ9LG13PXtkZToiWmltbWVyIixqYToi5a6i5a6kIixrbzoi6rCd7IukIixmcjoiQ2hhbWJyZSIsZXM6IkhhYml0YWNpw7NuIn0sZnc9e2RlOiJTcHJhY2hlIixqYToi6KiA6KqeIixrbzoi7Ja47Ja0IixmcjoiTGFuZ3VlIixlczoiSWRpb21hIn0sZ3c9e2RlOiJEZW1vIixqYToi44OH44OiIixrbzoi642w66qoIixmcjoiRMOpbW8iLGVzOiJEZW1vIn0sYnc9e2RlOiJHw6RzdGUiLGphOiLkurrmlbAiLGtvOiLsnbjsm5AiLGZyOiJQZXJzb25uZXMiLGVzOiJIdcOpc3BlZGVzIn0sdnc9e2RlOiJaaW1tZXIiLGphOiLlrqLlrqQiLGtvOiLqsJ3si6QiLGZyOiJDaGFtYnJlcyIsZXM6IkhhYml0YWNpb25lcyJ9LGt3PXtkZToiRmVydGlnIixqYToi5a6M5LqGIixrbzoi7JmE66OMIixmcjoiVGVybWluw6kiLGVzOiJMaXN0byJ9LHl3PXtkZToiU2NobGllw59lbiIsamE6IumWieOBmOOCiyIsa286IuuLq+q4sCIsZnI6IkZlcm1lciIsZXM6IkNlcnJhciJ9LCR3PXtkZToiU3VjaGVuIixqYToi5qSc57SiIixrbzoi6rKA7IOJIixmcjoiUmVjaGVyY2hlciIsZXM6IkJ1c2NhciJ9LHd3PXtkZToiR3J1cHBlIixqYToi44Kw44Or44O844OXIixrbzoi6re466O5IixmcjoiR3JvdXBlIixlczoiR3J1cG8ifSxTdz17ZGU6Ik1hcmtlIixqYToi44OW44Op44Oz44OJIixrbzoi67iM656c65OcIixmcjoiTWFycXVlIixlczoiTWFyY2EifSxfdz17ZGU6IkF1c3N0YXR0dW5nIixqYToi6Kit5YKZIixrbzoi7Iuc7ISkIixmcjoiw4lxdWlwZW1lbnRzIixlczoiU2VydmljaW9zIn0sanc9e2RlOiJFbXBmb2hsZW4iLGphOiLjgYrjgZnjgZnjgoHpoIYiLGtvOiLstpTsspzsiJwiLGZyOiJSZWNvbW1hbmTDqXMiLGVzOiJSZWNvbWVuZGFkb3MifSxUdz17ZGU6IlNvcnRpZXJlbiIsamE6IuS4puOBueabv+OBiCIsa286IuygleugrCIsZnI6IlRyaWVyIixlczoiT3JkZW5hciJ9LEF3PXtkZToiRmlsdGVyIixqYToi57We44KK6L6844G/Iixrbzoi7ZWE7YSwIixmcjoiRmlsdHJlcyIsZXM6IkZpbHRyb3MifSx6dz17ZGU6Ilp1csO8Y2tzZXR6ZW4iLGphOiLjgq/jg6rjgqIiLGtvOiLstIjquLDtmZQiLGZyOiJFZmZhY2VyIixlczoiQm9ycmFyIn0sQ3c9e2RlOiJCZXdlcnR1bmciLGphOiLoqZXkvqHpoIYiLGtvOiLtj4nsoJDsiJwiLGZyOiJOb3RlIixlczoiVmFsb3JhY2nDs24ifSxOdz17ZGU6IlNlaXRlbiIsamE6IuODmuODvOOCuCIsa286Iu2OmOydtOyngCIsZnI6IlBhZ2VzIixlczoiUMOhZ2luYXMifSxQdz17ZGU6Ik9ydCIsamE6IuWgtOaJgCIsa286IuychOy5mCIsZnI6IkxpZXUiLGVzOiJMdWdhciJ9LHh3PXtkZToiUmVpaGVuZm9sZ2UiLGphOiLkuKbjgbPpoIYiLGtvOiLsoJXroKwiLGZyOiJPcmRyZSIsZXM6Ik9yZGVuIn0sSXc9e2RlOiJEYXLDvGJlciIsamE6Iui2hemBjiIsa286Iuy0iOqzvCIsZnI6IkF1LWRlc3N1cyIsZXM6IlBvciBlbmNpbWEifSxFdz17ZGU6IkZyw7xoc3TDvGNrIixqYToi5pyd6aOf5LuY44GNIixrbzoi7KGw7IudIO2PrO2VqCIsZnI6IlBldGl0LWTDqWpldW5lciIsZXM6IkRlc2F5dW5vIn0sUnc9e2RlOiJQYWtldCIsamE6IuODkeODg+OCseODvOOCuCIsa286Iu2MqO2CpOyngCIsZnI6IkZvcmZhaXQiLGVzOiJQYXF1ZXRlIn0sT3c9e2RlOiJBbmdlYm90IixqYToi44OX44Ot44Oi44O844K344On44OzIixrbzoi7ZSE66Gc66qo7IWYIixmcjoiUHJvbW90aW9uIixlczoiUHJvbW9jacOzbiJ9LE13PXtkZToiTWl0IEZlbnN0ZXIiLGphOiLnqpPjgYLjgooiLGtvOiLssL3rrLgg7J6I7J2MIixmcjoiQXZlYyBmZW7DqnRyZSIsZXM6IkNvbiB2ZW50YW5hIn0sWnc9e2RlOiJTdGFkdGJsaWNrIixqYToi44K344OG44Kj44OT44Ol44O8Iixrbzoi7Iuc7Yuw67ewIixmcjoiVnVlIHN1ciBsYSB2aWxsZSIsZXM6IlZpc3RhcyBhIGxhIGNpdWRhZCJ9LHF3PXtkZToiQW5rdW5mdCIsamE6IuWIsOedgCIsa286IuuPhOywqSIsZnI6IkFycml2w6llIixlczoiTGxlZ2FkYSJ9LER3PXtkZToiUHLDvGZlbiIsamE6IueiuuiqjeOBuCIsa286Iu2ZleyduO2VmOq4sCIsZnI6IlbDqXJpZmllciIsZXM6IlJldmlzYXIifSxMdz17ZGU6IlJlc2VydmllcmVuIixqYToi5LqI57SE44GZ44KLIixrbzoi7JiI7JW97ZWY6riwIixmcjoiUsOpc2VydmVyIixlczoiUmVzZXJ2YXIifSxCdz17ZGU6IkF1c2dlYnVjaHQiLGphOiLmuoDlrqQiLGtvOiLrp4zsi6QiLGZyOiJDb21wbGV0IixlczoiQ29tcGxldG8ifSxIdz17ZGU6IkJlc3RwcmVpcyIsamE6IuacgOWuiSIsa286Iuy1nOyggCIsZnI6Ik1laWxsZXVyIHByaXgiLGVzOiJNZWpvciBwcmVjaW8ifSxGdz17ZGU6IsOcYmVybmFjaHR1bmciLGphOiLlrr/ms4oiLGtvOiLsiJnrsJUiLGZyOiJOdWl0w6llIixlczoiUG9yIG5vY2hlcyJ9LFV3PXtkZToicHJvIFN0w7xjayIsamE6IjHngrnjgYLjgZ/jgooiLGtvOiLqsJzri7kiLGZyOiJs4oCZdW5pdMOpIixlczoiY2FkYSB1bm8ifSxWdz17ZGU6Ik1lbmdlIixqYToi5pWw6YePIixrbzoi7IiY65+JIixmcjoiUXVhbnRpdMOpIixlczoiQ2FudGlkYWQifSxXdz17ZGU6Iklua2x1c2l2ZSIsamE6Iui+vOOBvyIsa286Iu2PrO2VqCIsZnI6IkluY2x1cyIsZXM6IkluY2x1aWRvIn0sS3c9e2RlOiJHZXNhbXQiLGphOiLlkIjoqIgiLGtvOiLtlanqs4QiLGZyOiJUb3RhbCIsZXM6IlRvdGFsIn0sR3c9e2RlOiJCZXR0IixqYToi44OZ44OD44OJIixrbzoi7Lmo64yAIixmcjoiTGl0IixlczoiQ2FtYSJ9LEp3PXtkZToiRXRhZ2UiLGphOiLpmo7mlbAiLGtvOiLsuLUiLGZyOiLDiXRhZ2UiLGVzOiJQbGFudGEifSxZdz17ZGU6IkF1w59lcmRlbSIsamE6IuOBneOBruS7liIsa286Iuq4sO2DgCIsZnI6IkF1dHJlcyIsZXM6Ik90cm9zIn0sUXc9e2RlOiJFLU1haWwiLGphOiLjg6Hjg7zjg6vjgqLjg4njg6zjgrkiLGtvOiLsnbTrqZTsnbwiLGZyOiJFLW1haWwiLGVzOiJDb3JyZW8gZWxlY3Ryw7NuaWNvIn0sWHc9e2RlOiJUZWxlZm9uIixqYToi6Zu76Kmx55Wq5Y+3Iixrbzoi7KCE7ZmU67KI7Zi4IixmcjoiVMOpbMOpcGhvbmUiLGVzOiJUZWzDqWZvbm8ifSxlUz17ZGU6ImZyZWl3aWxsaWciLGphOiLku7vmhI8iLGtvOiLshKDtg50iLGZyOiJmYWN1bHRhdGlmIixlczoib3BjaW9uYWwifSx0Uz17ZGU6Ik5hY2huYW1lIixqYToi5aeTIixrbzoi7ISxIixmcjoiTm9tIixlczoiQXBlbGxpZG8ifSxuUz17ZGU6IkFuZ2VmcmFndCIsamE6IuS+nemgvOa4iOOBvyIsa286IuyalOyyreuQqCIsZnI6IkRlbWFuZMOpZSIsZXM6IlNvbGljaXRhZGEifSxvUz17ZGU6IkJlc3TDpHRpZ3QiLGphOiLnorrlrpoiLGtvOiLtmZXsoJUiLGZyOiJDb25maXJtw6llIixlczoiQ29uZmlybWFkYSJ9LHNTPXtkZToiU3Rvcm5pZXJ0IixqYToi44Kt44Oj44Oz44K744Or5riI44G/Iixrbzoi7Leo7IaM65CoIixmcjoiQW5udWzDqWUiLGVzOiJDYW5jZWxhZGEifSxyUz17ZGU6IkFiZ2VsYXVmZW4iLGphOiLmnJ/pmZDliIfjgowiLGtvOiLrp4zro4zrkKgiLGZyOiJFeHBpcsOpZSIsZXM6IkNhZHVjYWRhIn0sYVM9e2RlOiJTdG9ybmllcmVuIixqYToi44Kt44Oj44Oz44K744OrIixrbzoi7Leo7IaMIixmcjoiQW5udWxlciIsZXM6IkNhbmNlbGFyIn0saVM9e2RlOiJTdG9ybmllcnVuZyIsamE6IuOCreODo+ODs+OCu+ODq+aJi+e2muOBjSIsa286Iuy3qOyGjCDsp4TtlokiLGZyOiJBbm51bGF0aW9uIixlczoiQ2FuY2VsYWNpw7NuIn0sY1M9e2RlOiJHZcOkbmRlcnQiLGphOiLlpInmm7TmuIjjgb8iLGtvOiLrs4Dqsr3rkKgiLGZyOiJNb2RpZmnDqWUiLGVzOiJNb2RpZmljYWRhIn0sbFM9e2RlOiJCdWNodW5nIMOkbmRlcm4iLGphOiLkuojntITjga7lpInmm7QiLGtvOiLsmIjslb0g67OA6rK9IixmcjoiTW9kaWZpY2F0aW9uIixlczoiQ2FtYmlvIGRlIGxhIHJlc2VydmEifSx1Uz17ZGU6IlZvcmhlciIsamE6IuWkieabtOWJjSIsa286Iuq4sOyhtCIsZnI6IkF2YW50IixlczoiQW50ZXMifSxkUz17ZGU6IkpldHp0IixqYToi54++5ZyoIixrbzoi7ZiE7J6sIixmcjoiTWFpbnRlbmFudCIsZXM6IkFob3JhIn0saFM9e2RlOiJQZXJzb25lbiIsamE6IuWumuWToSIsa286IuyImOyaqSDsnbjsm5AiLGZyOiJDYXBhY2l0w6kiLGVzOiJDYXBhY2lkYWQifSxwUz17ZGU6IkFiIixqYToi5pyA5L2O5paZ6YeRIixrbzoi7LWc7KCA6rCAIixmcjoiw4AgcGFydGlyIGRlIixlczoiRGVzZGUifSxtUz17ZGU6IkphIixqYToi44GC44KKIixrbzoi7JiIIixmcjoiT3VpIixlczoiU8OtIn0sZlM9e2RlOiJOZWluIixqYToi44Gq44GXIixrbzoi7JWE64uI7JqUIixmcjoiTm9uIixlczoiTm8ifSxnUz17ZGU6IkhvdGVscyIsamE6IuODm+ODhuODqyIsa286Iu2YuO2FlCIsZnI6IkjDtHRlbHMiLGVzOiJIb3RlbGVzIn0sYlM9e2RlOiJBbHMgTsOkY2hzdGVzIixqYToi5qyh44Gu44K544OG44OD44OXIixrbzoi64uk7J2MIOuLqOqzhCIsZnI6IkVuc3VpdGUiLGVzOiJBIGNvbnRpbnVhY2nDs24ifSx2Uz17ZGU6IkUtTWFpbCIsamE6IuODoeODvOODq+OCouODieODrOOCuSIsa286IuydtOuplOydvCIsZnI6ImUtbWFpbCIsZXM6ImNvcnJlbyBlbGVjdHLDs25pY28ifSxrUz17ZGU6IlRlbGVmb25udW1tZXIiLGphOiLpm7voqbHnlarlj7ciLGtvOiLsoITtmZTrsojtmLgiLGZyOiJ0w6lsw6lwaG9uZSIsZXM6InRlbMOpZm9ubyJ9LHlTPXtkZToiU2ltdWxpZXJ0IixqYToi44K344Of44Ol44Os44O844K344On44OzIixrbzoi66qo7J2YIixmcjoiU2ltdWzDqSIsZXM6IlNpbXVsYWRvIn0sJFM9e2RlOiJBc2llbiIsamE6IuOCouOCuOOCoiIsa286IuyVhOyLnOyVhCIsZnI6IkFzaWUiLGVzOiJBc2lhIn0sd1M9e2RlOiJFdXJvcGEiLGphOiLjg6jjg7zjg63jg4Pjg5EiLGtvOiLsnKDrn70iLGZyOiJFdXJvcGUiLGVzOiJFdXJvcGEifSxTUz17ZGU6Ik96ZWFuaWVuIixqYToi44Kq44K744Ki44OL44KiIixrbzoi7Jik7IS47JWE64uI7JWEIixmcjoiT2PDqWFuaWUiLGVzOiJPY2VhbsOtYSJ9LF9TPXtkZToiQWZyaWthIixqYToi44Ki44OV44Oq44KrIixrbzoi7JWE7ZSE66as7Lm0IixmcjoiQWZyaXF1ZSIsZXM6IsOBZnJpY2EifSxqUz17ZGU6IldlaXRlcmUgUmVnaW9uZW4iLGphOiLjgZ3jga7ku5bjga7lnLDln58iLGtvOiLquLDtg4Ag7KeA7JetIixmcjoiQXV0cmVzIHLDqWdpb25zIixlczoiT3RyYXMgcmVnaW9uZXMifSxUUz17ZGU6IlBvb2wiLGphOiLjg5fjg7zjg6siLGtvOiLsiJjsmIHsnqUiLGZyOiJQaXNjaW5lIixlczoiUGlzY2luYSJ9LEFTPXtkZToiU3BhIixqYToi44K544ORIixrbzoi7Iqk7YyMIixmcjoiU3BhIixlczoiU3BhIn0selM9e2RlOiJTdHJhbmRsYWdlIixqYToi44OT44O844OB44OV44Ot44Oz44OIIixrbzoi7ZW067OAIixmcjoiQm9yZCBkZSBtZXIiLGVzOiJGcmVudGUgYSBsYSBwbGF5YSJ9LENTPXsiezB9IHNpZGUgYnkgc2lkZSI6e2RlOiJ7MH0gaW0gVmVyZ2xlaWNoIixqYToiezB96LuS44KS5q+U6LyDIixrbzoiezB96rOzIOu5hOq1kCIsZnI6InswfSBjw7R0ZSDDoCBjw7R0ZSIsZXM6InswfSBjb21wYXJhZG9zIn0sInRoZSBwbGFuIjp7ZGU6ImRpZSBSZWlzZXBsYW51bmciLGphOiLml4XnqIvjg5fjg6njg7MiLGtvOiLsl6ztlokg6rOE7ZqNIixmcjoibGUgcHJvZ3JhbW1lIixlczoiZWwgcGxhbiJ9LCJ0aGUgc2VhcmNoIjp7ZGU6ImRpZSBTdWNoZSIsamE6IuaknOe0oiIsa286IuqygOyDiSIsZnI6ImxhIHJlY2hlcmNoZSIsZXM6ImxhIGLDunNxdWVkYSJ9LCJhbGwgZGVzdGluYXRpb25zIjp7ZGU6ImFsbGUgUmVpc2V6aWVsZSIsamE6IuOBmeOBueOBpuOBruihjOOBjeWFiCIsa286IuyghOyytCDrqqnsoIHsp4AiLGZyOiJ0b3V0ZXMgbGVzIGRlc3RpbmF0aW9ucyIsZXM6InRvZG9zIGxvcyBkZXN0aW5vcyJ9LCJ7MH0gaG90ZWxzIjp7ZGU6InswfSBIb3RlbHMiLGphOiJ7MH3ou5Ljga7jg5vjg4bjg6siLGtvOiLtmLjthZQgezB96rOzIixmcjoiezB9IGjDtHRlbHMiLGVzOiJ7MH0gaG90ZWxlcyJ9LCJ0aGUgaG90ZWwiOntkZToiZGFzIEhvdGVsIixqYToi44Ob44OG44OrIixrbzoi7Zi47YWUIixmcjoibOKAmWjDtHRlbCIsZXM6ImVsIGhvdGVsIn0sInRoZSBjYW5jZWxsYXRpb24iOntkZToiZGllIFN0b3JuaWVydW5nIixqYToi44Kt44Oj44Oz44K744OrIixrbzoi7Leo7IaMIixmcjoibOKAmWFubnVsYXRpb24iLGVzOiJsYSBjYW5jZWxhY2nDs24ifSwidGhlIGNoYW5nZSI6e2RlOiJkaWUgw4RuZGVydW5nIixqYToi5aSJ5pu0Iixrbzoi67OA6rK9IixmcjoibGEgbW9kaWZpY2F0aW9uIixlczoiZWwgY2FtYmlvIn0sInlvdXIgbWVtYmVyc2hpcCI6e2RlOiJJaHJlIE1pdGdsaWVkc2NoYWZ0IixqYToi5Lya5ZOh5oOF5aCxIixrbzoi7ZqM7JuQIOygleuztCIsZnI6InZvdHJlIGFkaMOpc2lvbiIsZXM6InN1IG1lbWJyZXPDrWEifSwiYWRkLW9ucyBmb3IgezB9Ijp7ZGU6IkV4dHJhcyBmw7xyIHswfSIsamE6InswfeOBruOCquODl+OCt+ODp+ODsyIsa286InswfSDstpTqsIAg7ISc67mE7IqkIixmcjoib3B0aW9ucyBwb3VyIHswfSIsZXM6ImV4dHJhcyBwYXJhIHswfSJ9LCJ7MH0gYWRkLW9ucyI6e2RlOiJFeHRyYXMgdm9uIHswfSIsamE6InswfeOBruOCquODl+OCt+ODp+ODsyIsa286InswfSDstpTqsIAg7ISc67mE7IqkIixmcjoib3B0aW9ucyBkZSB7MH0iLGVzOiJleHRyYXMgZGUgezB9In0sInRoZSBob3RlbCBhZGQtb25zIjp7ZGU6ImRpZSBFeHRyYXMgZGVzIEhvdGVscyIsamE6IuODm+ODhuODq+OBruOCquODl+OCt+ODp+ODsyIsa286Iu2YuO2FlCDstpTqsIAg7ISc67mE7IqkIixmcjoibGVzIG9wdGlvbnMgZGUgbOKAmWjDtHRlbCIsZXM6ImxvcyBleHRyYXMgZGVsIGhvdGVsIn0sInRoZSB0cmlwIjp7ZGU6ImRpZSBSZWlzZSIsamE6IuaXheeoiyIsa286IuyXrO2WiSDsnbzsoJUiLGZyOiJsZSB2b3lhZ2UiLGVzOiJlbCB2aWFqZSJ9LCJ5b3VyIGJvb2tpbmdzIjp7ZGU6IklocmUgQnVjaHVuZ2VuIixqYToi5LqI57SE5LiA6KanIixrbzoi64K0IOyYiOyVvSIsZnI6InZvcyByw6lzZXJ2YXRpb25zIixlczoic3VzIHJlc2VydmFzIn0sInRoZSBwb2xpY2llcyI6e2RlOiJkaWUgUmljaHRsaW5pZW4iLGphOiLjg53jg6rjgrfjg7wiLGtvOiLsoJXssYUiLGZyOiJsZXMgY29uZGl0aW9ucyIsZXM6ImxhcyBwb2zDrXRpY2FzIn0sYmFjazpsdyxQYXk6dXcsQm9vazpkdywiMSBuaWdodCI6e2RlOiIxIE5hY2h0IixqYToiMeaziiIsa286IjHrsJUiLGZyOiIxIG51aXQiLGVzOiIxIG5vY2hlIn0sInswfSBuaWdodHMiOntkZToiezB9IE7DpGNodGUiLGphOiJ7MH3ms4oiLGtvOiJ7MH3rsJUiLGZyOiJ7MH0gbnVpdHMiLGVzOiJ7MH0gbm9jaGVzIn0sIjEgaG91ciI6e2RlOiIxIFN0dW5kZSIsamE6IjHmmYLplpMiLGtvOiIx7Iuc6rCEIixmcjoiMSBoZXVyZSIsZXM6IjEgaG9yYSJ9LCJ7MH0gaG91cnMiOntkZToiezB9IFN0dW5kZW4iLGphOiJ7MH3mmYLplpMiLGtvOiJ7MH3si5zqsIQiLGZyOiJ7MH0gaGV1cmVzIixlczoiezB9IGhvcmFzIn0sIjEgcm9vbSI6e2RlOiIxIFppbW1lciIsamE6IjHlrqQiLGtvOiLqsJ3si6QgMeqwnCIsZnI6IjEgY2hhbWJyZSIsZXM6IjEgaGFiaXRhY2nDs24ifSwiezB9IHJvb21zIjp7ZGU6InswfSBaaW1tZXIiLGphOiJ7MH3lrqQiLGtvOiLqsJ3si6QgezB96rCcIixmcjoiezB9IGNoYW1icmVzIixlczoiezB9IGhhYml0YWNpb25lcyJ9LCJSYXRlZCB7MH0gYnkgezF9IGd1ZXN0cyI6e2RlOiJCZXdlcnRldCBtaXQgezB9IHZvbiB7MX0gR8Okc3RlbiIsamE6IuipleS+oSB7MH3vvIh7MX3ku7bjga7jg6zjg5Pjg6Xjg7zvvIkiLGtvOiLtj4nsoJAgezB9ICjtm4TquLAgezF96rCcKSIsZnI6Ik5vdMOpIHswfSBwYXIgezF9IGNsaWVudHMiLGVzOiJWYWxvcmFkbyBjb24gezB9IHBvciB7MX0gaHXDqXNwZWRlcyJ9LCJCYWNrIHRvIHRoZSBob3RlbHMiOntkZToiWnVyw7xjayB6dSBkZW4gSG90ZWxzIixqYToi44Ob44OG44Or5LiA6Kan44Gr5oi744KLIixrbzoi7Zi47YWUIOuqqeuhneycvOuhnCIsZnI6IlJldG91ciBhdXggaMO0dGVscyIsZXM6IlZvbHZlciBhIGxvcyBob3RlbGVzIn0sIlZpZXcgdGhlIHRyaXAiOntkZToiUmVpc2UgYW5zZWhlbiIsamE6IuaXheeoi+OCkuimi+OCiyIsa286IuyXrO2WiSDsnbzsoJUg67O06riwIixmcjoiVm9pciBsZSB2b3lhZ2UiLGVzOiJWZXIgZWwgdmlhamUifSxUcmlwOmh3LCJCb29raW5nIHN0ZXBzIjp7ZGU6IkJ1Y2h1bmdzc2Nocml0dGUiLGphOiLkuojntITjga7miYvpoIYiLGtvOiLsmIjslb0g64uo6rOEIixmcjoiw4l0YXBlcyBkZSByw6lzZXJ2YXRpb24iLGVzOiJQYXNvcyBkZSBsYSByZXNlcnZhIn0sSG90ZWw6cHcsUm9vbTptdyxMYW5ndWFnZTpmdywiQSB0ZXN0IGNvcHkgb2YgezB9J3Mgc3lzdGVtIOKAlCBub3RoaW5nIGhlcmUgaXMgYSByZWFsIGJvb2tpbmcuIjp7ZGU6IkVpbmUgVGVzdGtvcGllIGRlcyBTeXN0ZW1zIHZvbiB7MH0g4oCUIGhpZXIgaXN0IG5pY2h0cyBlaW5lIGVjaHRlIEJ1Y2h1bmcuIixqYToiezB944Gu44K344K544OG44Og44Gu44OG44K544OI54mI44Gn44GZ44CC44GT44GT44Gn44Gu5LqI57SE44Gv5a6f6Zqb44Gu5LqI57SE44Gn44Gv44GC44KK44G+44Gb44KT44CCIixrbzoiezB9IOyLnOyKpO2FnOydmCDthYzsiqTtirgg7IKs67O47J6F64uI64ukLiDsl6zquLDshJwg7ZWcIOyYiOyVveydgCDsi6TsoJwg7JiI7JW97J20IOyVhOuLmeuLiOuLpC4iLGZyOiJVbmUgY29waWUgZGUgdGVzdCBkdSBzeXN0w6htZSBkZSB7MH0g4oCUIHJpZW4gaWNpIG7igJllc3QgdW5lIHZyYWllIHLDqXNlcnZhdGlvbi4iLGVzOiJVbmEgY29waWEgZGUgcHJ1ZWJhIGRlbCBzaXN0ZW1hIGRlIHswfTogbmFkYSBhcXXDrSBlcyB1bmEgcmVzZXJ2YSByZWFsLiJ9LCJBIHRlc3QgY29weSBvZiB0aGUgaG90ZWwncyBzeXN0ZW0g4oCUIG5vdGhpbmcgaGVyZSBpcyBhIHJlYWwgYm9va2luZy4iOntkZToiRWluZSBUZXN0a29waWUgZGVzIEhvdGVsc3lzdGVtcyDigJQgaGllciBpc3QgbmljaHRzIGVpbmUgZWNodGUgQnVjaHVuZy4iLGphOiLjg5vjg4bjg6vjga7jgrfjgrnjg4bjg6Djga7jg4bjgrnjg4jniYjjgafjgZnjgILjgZPjgZPjgafjga7kuojntITjga/lrp/pmpvjga7kuojntITjgafjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLtmLjthZQg7Iuc7Iqk7YWc7J2YIO2FjOyKpO2KuCDsgqzrs7jsnoXri4jri6QuIOyXrOq4sOyEnCDtlZwg7JiI7JW97J2AIOyLpOygnCDsmIjslb3snbQg7JWE64uZ64uI64ukLiIsZnI6IlVuZSBjb3BpZSBkZSB0ZXN0IGR1IHN5c3TDqG1lIGRlIGzigJlow7R0ZWwg4oCUIHJpZW4gaWNpIG7igJllc3QgdW5lIHZyYWllIHLDqXNlcnZhdGlvbi4iLGVzOiJVbmEgY29waWEgZGUgcHJ1ZWJhIGRlbCBzaXN0ZW1hIGRlbCBob3RlbDogbmFkYSBhcXXDrSBlcyB1bmEgcmVzZXJ2YSByZWFsLiJ9LCJTYW1wbGUgcmF0ZXMgYW5kIHJvb21zIOKAlCBub3RoaW5nIGhlcmUgY2FuIHJlYWxseSBiZSBib29rZWQuIjp7ZGU6IkJlaXNwaWVscHJlaXNlIHVuZCAtemltbWVyIOKAlCBoaWVyIGthbm4gbmljaHRzIHdpcmtsaWNoIGdlYnVjaHQgd2VyZGVuLiIsamE6IuOCteODs+ODl+ODq+OBruaWmemHkeOBqOWuouWupOOBp+OBmeOAguWun+mam+OBq+OBr+S6iOe0hOOBp+OBjeOBvuOBm+OCk+OAgiIsa286IuyYiOyLnCDsmpTquIjqs7wg6rCd7Iuk7J6F64uI64ukLiDsi6TsoJzroZwg7JiI7JW97ZWgIOyImCDsl4bsirXri4jri6QuIixmcjoiVGFyaWZzIGV0IGNoYW1icmVzIGTigJlleGVtcGxlIOKAlCByaWVuIGljaSBuZSBwZXV0IHZyYWltZW50IMOqdHJlIHLDqXNlcnbDqS4iLGVzOiJUYXJpZmFzIHkgaGFiaXRhY2lvbmVzIGRlIGVqZW1wbG86IGFxdcOtIG5vIHNlIHB1ZWRlIHJlc2VydmFyIGRlIHZlcmRhZC4ifSxEZW1vOmd3LCJPbmUgZmV3ZXIgezB9Ijp7ZGU6IkVpbiB7MH0gd2VuaWdlciIsamE6InswfeOCkjHlrqTmuJvjgonjgZkiLGtvOiJ7MH0gMeqwnCDspITsnbTquLAiLGZyOiJVbiB7MH0gZGUgbW9pbnMiLGVzOiJVbmEgezB9IG1lbm9zIn0sIk9uZSBtb3JlIHswfSI6e2RlOiJFaW4gezB9IG1laHIiLGphOiJ7MH3jgpIx5a6k5aKX44KE44GZIixrbzoiezB9IDHqsJwg64qY66as6riwIixmcjoiVW4gezB9IGRlIHBsdXMiLGVzOiJVbmEgezB9IG3DoXMifSwiQWRkIHswfSI6e2RlOiJ7MH0gaGluenVmw7xnZW4iLGphOiJ7MH3jgpLov73liqAiLGtvOiJ7MH0g7LaU6rCAIixmcjoiQWpvdXRlciB7MH0iLGVzOiJBw7FhZGlyIHswfSJ9LCIxIGd1ZXN0IHBlciByb29tIMK3IHswfSByb29tcyI6e2RlOiIxIEdhc3QgcHJvIFppbW1lciDCtyB7MH0gWmltbWVyIixqYToiMeWupDHlkI0gwrcgezB95a6kIixrbzoi6rCd7Iuk64u5IDHrqoUgwrcg6rCd7IukIHswfeqwnCIsZnI6IjEgcGVyc29ubmUgcGFyIGNoYW1icmUgwrcgezB9IGNoYW1icmVzIixlczoiMSBodcOpc3BlZCBwb3IgaGFiaXRhY2nDs24gwrcgezB9IGhhYml0YWNpb25lcyJ9LCJ7MH0gZ3Vlc3RzIHBlciByb29tIMK3IHsxfSByb29tcyI6e2RlOiJ7MH0gR8Okc3RlIHBybyBaaW1tZXIgwrcgezF9IFppbW1lciIsamE6IjHlrqR7MH3lkI0gwrcgezF95a6kIixrbzoi6rCd7Iuk64u5IHswfeuqhSDCtyDqsJ3si6QgezF96rCcIixmcjoiezB9IHBlcnNvbm5lcyBwYXIgY2hhbWJyZSDCtyB7MX0gY2hhbWJyZXMiLGVzOiJ7MH0gaHXDqXNwZWRlcyBwb3IgaGFiaXRhY2nDs24gwrcgezF9IGhhYml0YWNpb25lcyJ9LCIxIGd1ZXN0IMK3IDEgcm9vbSI6e2RlOiIxIEdhc3QgwrcgMSBaaW1tZXIiLGphOiIx5ZCNIMK3IDHlrqQiLGtvOiIx66qFIMK3IOqwneyLpCAx6rCcIixmcjoiMSBwZXJzb25uZSDCtyAxIGNoYW1icmUiLGVzOiIxIGh1w6lzcGVkIMK3IDEgaGFiaXRhY2nDs24ifSwiezB9IGd1ZXN0cyDCtyAxIHJvb20iOntkZToiezB9IEfDpHN0ZSDCtyAxIFppbW1lciIsamE6InswfeWQjSDCtyAx5a6kIixrbzoiezB966qFIMK3IOqwneyLpCAx6rCcIixmcjoiezB9IHBlcnNvbm5lcyDCtyAxIGNoYW1icmUiLGVzOiJ7MH0gaHXDqXNwZWRlcyDCtyAxIGhhYml0YWNpw7NuIn0sIkd1ZXN0cyBhbmQgcm9vbXMiOntkZToiR8Okc3RlIHVuZCBaaW1tZXIiLGphOiLkurrmlbDjgajpg6jlsYvmlbAiLGtvOiLsnbjsm5Ag67CPIOqwneyLpCIsZnI6IlBlcnNvbm5lcyBldCBjaGFtYnJlcyIsZXM6Ikh1w6lzcGVkZXMgeSBoYWJpdGFjaW9uZXMifSxHdWVzdHM6YncsIkd1ZXN0cyBpbiBlYWNoIHJvb20iOntkZToiR8Okc3RlIHBybyBaaW1tZXIiLGphOiIx5a6k44GC44Gf44KK44Gu5Lq65pWwIixrbzoi6rCd7Iuk64u5IOyduOybkCIsZnI6IlBlcnNvbm5lcyBwYXIgY2hhbWJyZSIsZXM6Ikh1w6lzcGVkZXMgcG9yIGhhYml0YWNpw7NuIn0sIk9uZSBmZXdlciBndWVzdCI6e2RlOiJFaW4gR2FzdCB3ZW5pZ2VyIixqYToiMeWQjea4m+OCieOBmSIsa286IjHrqoUg7KSE7J206riwIixmcjoiVW5lIHBlcnNvbm5lIGRlIG1vaW5zIixlczoiVW4gaHXDqXNwZWQgbWVub3MifSwiT25lIG1vcmUgZ3Vlc3QiOntkZToiRWluIEdhc3QgbWVociIsamE6IjHlkI3lopfjgoTjgZkiLGtvOiIx66qFIOuKmOumrOq4sCIsZnI6IlVuZSBwZXJzb25uZSBkZSBwbHVzIixlczoiVW4gaHXDqXNwZWQgbcOhcyJ9LFJvb21zOnZ3LCJPbmUgZmV3ZXIgcm9vbSI6e2RlOiJFaW4gWmltbWVyIHdlbmlnZXIiLGphOiIx5a6k5rib44KJ44GZIixrbzoi6rCd7IukIDHqsJwg7KSE7J206riwIixmcjoiVW5lIGNoYW1icmUgZGUgbW9pbnMiLGVzOiJVbmEgaGFiaXRhY2nDs24gbWVub3MifSwiT25lIG1vcmUgcm9vbSI6e2RlOiJFaW4gWmltbWVyIG1laHIiLGphOiIx5a6k5aKX44KE44GZIixrbzoi6rCd7IukIDHqsJwg64qY66as6riwIixmcjoiVW5lIGNoYW1icmUgZGUgcGx1cyIsZXM6IlVuYSBoYWJpdGFjacOzbiBtw6FzIn0sIkNob29zZSBhIGRhdGUiOntkZToiRGF0dW0gd8OkaGxlbiIsamE6IuaXpeS7mOOCkumBuOOBtiIsa286IuuCoOynnCDshKDtg50iLGZyOiJDaG9pc2lyIHVuZSBkYXRlIixlczoiRWxlZ2lyIHVuYSBmZWNoYSJ9LCJBZGQgZGF0ZSI6e2RlOiJEYXR1bSB3w6RobGVuIixqYToi5pel5LuY44KS6YG444G2Iixrbzoi64Kg7KecIOyEoO2DnSIsZnI6IkNob2lzaXIgbGEgZGF0ZSIsZXM6IkVsZWdpciBmZWNoYSJ9LCJDaGFuZ2UgdGhlIGRhdGVzIjp7ZGU6IkRhdGVuIMOkbmRlcm4iLGphOiLml6XnqIvjgpLlpInmm7QiLGtvOiLrgqDsp5wg67OA6rK9IixmcjoiTW9kaWZpZXIgbGVzIGRhdGVzIixlczoiQ2FtYmlhciBsYXMgZmVjaGFzIn0sIkNoZWNrLWluIjp7ZGU6IkFucmVpc2UiLGphOiLjg4Hjgqfjg4Pjgq/jgqTjg7MiLGtvOiLssrTtgazsnbgiLGZyOiJBcnJpdsOpZSIsZXM6IkxsZWdhZGEifSwiQ2hlY2stb3V0Ijp7ZGU6IkFicmVpc2UiLGphOiLjg4Hjgqfjg4Pjgq/jgqLjgqbjg4giLGtvOiLssrTtgazslYTsm4MiLGZyOiJEw6lwYXJ0IixlczoiU2FsaWRhIn0sIkNob29zZSBjaGVjay1pbiI6e2RlOiJBbnJlaXNldGFnIHfDpGhsZW4iLGphOiLjg4Hjgqfjg4Pjgq/jgqTjg7Pml6XjgpLpgbjjgbYiLGtvOiLssrTtgazsnbgg64Kg7KecIOyEoO2DnSIsZnI6IkNob2lzaXIgbOKAmWFycml2w6llIixlczoiRWxlZ2lyIGxhIGxsZWdhZGEifSwiQ2hvb3NlIGNoZWNrLW91dCI6e2RlOiJBYnJlaXNldGFnIHfDpGhsZW4iLGphOiLjg4Hjgqfjg4Pjgq/jgqLjgqbjg4jml6XjgpLpgbjjgbYiLGtvOiLssrTtgazslYTsm4Mg64Kg7KecIOyEoO2DnSIsZnI6IkNob2lzaXIgbGUgZMOpcGFydCIsZXM6IkVsZWdpciBsYSBzYWxpZGEifSwiLCBjaGVjay1pbiI6e2RlOiIsIEFucmVpc2UiLGphOiLjgIHjg4Hjgqfjg4Pjgq/jgqTjg7MiLGtvOiIsIOyytO2BrOyduCIsZnI6IiwgYXJyaXbDqWUiLGVzOiIsIGxsZWdhZGEifSwiLCBjaGVjay1vdXQiOntkZToiLCBBYnJlaXNlIixqYToi44CB44OB44Kn44OD44Kv44Ki44Km44OIIixrbzoiLCDssrTtgazslYTsm4MiLGZyOiIsIGTDqXBhcnQiLGVzOiIsIHNhbGlkYSJ9LCIsIGZyb20gezB9Ijp7ZGU6IiwgYWIgezB9IixqYToi44CBezB944GL44KJIixrbzoiLCB7MH3rtoDthLAiLGZyOiIsIMOgIHBhcnRpciBkZSB7MH0iLGVzOiIsIGRlc2RlIHswfSJ9LCJQcmV2aW91cyBtb250aCI6e2RlOiJWb3JoZXJpZ2VyIE1vbmF0IixqYToi5YmN44Gu5pyIIixrbzoi7J207KCEIOuLrCIsZnI6Ik1vaXMgcHLDqWPDqWRlbnQiLGVzOiJNZXMgYW50ZXJpb3IifSwiTmV4dCBtb250aCI6e2RlOiJOw6RjaHN0ZXIgTW9uYXQiLGphOiLmrKHjga7mnIgiLGtvOiLri6TsnYwg64usIixmcjoiTW9pcyBzdWl2YW50IixlczoiTWVzIHNpZ3VpZW50ZSJ9LCJMb3dlc3Q6IGFycml2ZSB7MH0sIGZyb20gezF9Ijp7ZGU6IkFtIGfDvG5zdGlnc3RlbjogQW5yZWlzZSB7MH0sIGFiIHsxfSIsamE6IuacgOWuie+8mnswfeODgeOCp+ODg+OCr+OCpOODs+OAgXsxfeOBi+OCiSIsa286Iuy1nOyggOqwgDogezB9IOyytO2BrOyduCwgezF967aA7YSwIixmcjoiTGUgbW9pbnMgY2hlciA6IGFycml2w6llIHswfSwgw6AgcGFydGlyIGRlIHsxfSIsZXM6IkxvIG3DoXMgYmFyYXRvOiBsbGVnYWRhIHswfSwgZGVzZGUgezF9In0sIlRhcCB0aGUgbmlnaHQgeW91IGFycml2ZS4iOntkZToiVGlwcGVuIFNpZSBhdWYgZGVuIEFucmVpc2V0YWcuIixqYToi44OB44Kn44OD44Kv44Kk44Oz44GZ44KL5pel44KS44K/44OD44OX44GX44Gm44GP44Gg44GV44GE44CCIixrbzoi7LK07YGs7J247ZWgIOuCoOynnOulvCDriITrpbTshLjsmpQuIixmcjoiVG91Y2hleiBsZSBqb3VyIGTigJlhcnJpdsOpZS4iLGVzOiJUb3F1ZSBlbCBkw61hIGRlIGxsZWdhZGEuIn0sIlRhcCB0aGUgbW9ybmluZyB5b3UgbGVhdmUuIjp7ZGU6IlRpcHBlbiBTaWUgYXVmIGRlbiBBYnJlaXNldGFnLiIsamE6IuODgeOCp+ODg+OCr+OCouOCpuODiOOBmeOCi+aXpeOCkuOCv+ODg+ODl+OBl+OBpuOBj+OBoOOBleOBhOOAgiIsa286IuyytO2BrOyVhOybg+2VoCDrgqDsp5zrpbwg64iE66W07IS47JqULiIsZnI6IlRvdWNoZXogbGUgam91ciBkZSBkw6lwYXJ0LiIsZXM6IlRvcXVlIGVsIGTDrWEgZGUgc2FsaWRhLiJ9LCJQcmljZXM6IHswfSBmcm9tIHRoYXQgZGF5LCB0YXhlcyBpbi4gRGF5cyB3aXRob3V0IG9uZSB3ZXJlIG5vdCBxdW90ZWQuIjp7ZGU6IlByZWlzZTogezB9IGFiIGRpZXNlbSBUYWcsIGlua2wuIFN0ZXVlcm4uIFRhZ2Ugb2huZSBQcmVpcyB3dXJkZW4gbmljaHQgYW5nZWZyYWd0LiIsamE6IuaWmemHke+8muOBneOBruaXpeOBi+OCieOBrnswfeOAgeeojui+vOOBv+OAguaWmemHkeOBruOBquOBhOaXpeOBr+imi+epjeOCguOCiuOBl+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuyalOq4iDog6re464Kg67aA7YSwIHswfSwg7IS46riIIO2PrO2VqC4g7JqU6riI7J20IOyXhuuKlCDrgqDsnYAg7KGw7ZqM7ZWY7KeAIOyViuyVmOyKteuLiOuLpC4iLGZyOiJQcml4IDogezB9IMOgIHBhcnRpciBkZSBjZSBqb3VyLCB0YXhlcyBjb21wcmlzZXMuIExlcyBqb3VycyBzYW5zIHByaXggbuKAmW9udCBwYXMgw6l0w6kgY2hpZmZyw6lzLiIsZXM6IlByZWNpb3M6IHswfSBkZXNkZSBlc2UgZMOtYSwgaW1wdWVzdG9zIGluY2x1aWRvcy4gTG9zIGTDrWFzIHNpbiBwcmVjaW8gbm8gc2UgY290aXphcm9uLiJ9LERvbmU6a3csQ2xvc2U6eXcsU2VhcmNoOiR3LCJBIGNpdHksIGEgY291bnRyeSBvciBhIGhvdGVsIjp7ZGU6IlN0YWR0LCBMYW5kIG9kZXIgSG90ZWwiLGphOiLpg73luILjg7vlm73jg7vjg5vjg4bjg6vlkI0iLGtvOiLrj4Tsi5wsIOq1reqwgCDrmJDripQg7Zi47YWUIixmcjoiVW5lIHZpbGxlLCB1biBwYXlzIG91IHVuIGjDtHRlbCIsZXM6IlVuYSBjaXVkYWQsIHVuIHBhw61zIG8gdW4gaG90ZWwifSwiV2hlcmUgdG8iOntkZToiUmVpc2V6aWVsIixqYToi6KGM44GN5YWIIixrbzoi66qp7KCB7KeAIixmcjoiRGVzdGluYXRpb24iLGVzOiJEZXN0aW5vIn0sIkFsbCB7MH0gaW4gezF9Ijp7ZGU6IkFsbGUgezB9IGluIHsxfSIsamE6InsxfeOBrnswfeOBmeOBueOBpiIsa286InsxfeydmCB7MH0g7KCE7LK0IixmcjoiVG91cyBsZXMgezB9IMOgIHsxfSIsZXM6IlRvZG9zIGxvcyB7MH0gZW4gezF9In0sIldoZXJlIHRvPyI6e2RlOiJXb2hpbiBzb2xsIGVzIGdlaGVuPyIsamE6IuOBqeOBk+OBq+aziuOBvuOCiuOBvuOBmeOBi++8nyIsa286IuyWtOuUlOyXkCDrqLjrrLTsi5zrgpjsmpQ/IixmcjoiT8O5IGFsbGV6LXZvdXMgPyIsZXM6IsK/QSBkw7NuZGUgdmE/In0sInswfSBob3RlbHMgZnJvbSB7MX0gZ3JvdXBzLCBwcmljZWQgZm9yIHRoZSBuaWdodHMgeW91IGNob29zZS4iOntkZToiezB9IEhvdGVscyB2b24gezF9IEdydXBwZW4sIG1pdCBQcmVpc2VuIGbDvHIgZGllIGdld8OkaGx0ZW4gTsOkY2h0ZS4iLGphOiJ7MX3jgrDjg6vjg7zjg5fjga57MH3ou5Ljga7jg5vjg4bjg6vjgILpgbjjgpPjgaDml6XnqIvjgafmlpnph5HjgpLooajnpLrjgZfjgb7jgZnjgIIiLGtvOiJ7MX3qsJwg6re466O57J2YIO2YuO2FlCB7MH3qs7MsIOyEoO2Dne2VnCDrgqDsp5wg6riw7KSA7Jy866GcIOyalOq4iOydhCDrs7Tsl6wg65Oc66a964uI64ukLiIsZnI6InswfSBow7R0ZWxzIGRlIHsxfSBncm91cGVzLCBhdSBwcml4IGRlcyBudWl0cyBxdWUgdm91cyBjaG9pc2lzc2V6LiIsZXM6InswfSBob3RlbGVzIGRlIHsxfSBncnVwb3MsIGNvbiBwcmVjaW9zIHBhcmEgbGFzIG5vY2hlcyBxdWUgZWxpamEuIn0sInswfSBob3RlbHMsIHByaWNlZCBmb3IgdGhlIG5pZ2h0cyB5b3UgY2hvb3NlLiI6e2RlOiJ7MH0gSG90ZWxzLCBtaXQgUHJlaXNlbiBmw7xyIGRpZSBnZXfDpGhsdGVuIE7DpGNodGUuIixqYToiezB96LuS44Gu44Ob44OG44Or44CC6YG444KT44Gg5pel56iL44Gn5paZ6YeR44KS6KGo56S644GX44G+44GZ44CCIixrbzoi7Zi47YWUIHswfeqzsywg7ISg7YOd7ZWcIOuCoOynnCDquLDspIDsnLzroZwg7JqU6riI7J2EIOuztOyXrCDrk5zrpr3ri4jri6QuIixmcjoiezB9IGjDtHRlbHMsIGF1IHByaXggZGVzIG51aXRzIHF1ZSB2b3VzIGNob2lzaXNzZXouIixlczoiezB9IGhvdGVsZXMsIGNvbiBwcmVjaW9zIHBhcmEgbGFzIG5vY2hlcyBxdWUgZWxpamEuIn0sIkhvdGVsIGdyb3VwcyI6e2RlOiJIb3RlbGdydXBwZW4iLGphOiLjg5vjg4bjg6vjgrDjg6vjg7zjg5ciLGtvOiLtmLjthZQg6re466O5IixmcjoiR3JvdXBlcyBow7R0ZWxpZXJzIixlczoiR3J1cG9zIGhvdGVsZXJvcyJ9LCJUb3AgY2l0aWVzIjp7ZGU6IkJlbGllYnRlIFN0w6RkdGUiLGphOiLkurrmsJfjga7pg73luIIiLGtvOiLsnbjquLAg64+E7IucIixmcjoiVmlsbGVzIHBoYXJlcyIsZXM6IkNpdWRhZGVzIGRlc3RhY2FkYXMifSwiQnkgcmVnaW9uIjp7ZGU6Ik5hY2ggUmVnaW9uIixqYToi5Zyw5Z+f5YilIixrbzoi7KeA7Jet67OEIixmcjoiUGFyIHLDqWdpb24iLGVzOiJQb3IgcmVnacOzbiJ9LCJCcm93c2UgYWxsIHswfSBob3RlbHMiOntkZToiQWxsZSB7MH0gSG90ZWxzIGFuc2VoZW4iLGphOiLlhah7MH3ou5Ljga7jg5vjg4bjg6vjgpLopovjgosiLGtvOiLtmLjthZQgezB96rOzIOuqqOuRkCDrs7TquLAiLGZyOiJWb2lyIGxlcyB7MH0gaMO0dGVscyIsZXM6IlZlciBsb3MgezB9IGhvdGVsZXMifSwiTXkgYm9va2luZ3MiOntkZToiTWVpbmUgQnVjaHVuZ2VuIixqYToi5LqI57SE5LiA6KanIixrbzoi64K0IOyYiOyVvSIsZnI6Ik1lcyByw6lzZXJ2YXRpb25zIixlczoiTWlzIHJlc2VydmFzIn0sIkZpbmQgYSBib29raW5nIGJ5IGl0cyBjb2RlIjp7ZGU6IkJ1Y2h1bmcgcGVyIENvZGUgZmluZGVuIixqYToi5LqI57SE55Wq5Y+344Gn5o6i44GZIixrbzoi7ZmV7J24IOuyiO2YuOuhnCDsmIjslb0g7LC+6riwIixmcjoiUmV0cm91dmVyIHVuZSByw6lzZXJ2YXRpb24gcGFyIHNvbiBjb2RlIixlczoiQnVzY2FyIHVuYSByZXNlcnZhIHBvciBzdSBjw7NkaWdvIn0sInswfSByb29tcyDDlyI6e2RlOiJ7MH0gWmltbWVyIMOXIixqYToiezB95a6kIMOXIixrbzoi6rCd7IukIHswfeqwnCDDlyIsZnI6InswfSBjaGFtYnJlcyDDlyIsZXM6InswfSBoYWJpdGFjaW9uZXMgw5cifSwiezB9IHRvZGF5Ijp7ZGU6InswfSBoZXV0ZSIsamE6IuacrOaXpSB7MH0iLGtvOiLsmKTripggezB9IixmcjoiezB9IGF1am91cmTigJlodWkiLGVzOiJ7MH0gaG95In0sInRheGVzIGluIjp7ZGU6Imlua2wuIFN0ZXVlcm4iLGphOiLnqI7ovrzjgb8iLGtvOiLshLjquIgg7Y+s7ZWoIixmcjoidGF4ZXMgY29tcHJpc2VzIixlczoiaW1wdWVzdG9zIGluY2x1aWRvcyJ9LCJObyByb29tIHNsZWVwcyB7MH0iOntkZToiS2VpbiBaaW1tZXIgZsO8ciB7MH0gUGVyc29uZW4iLGphOiJ7MH3lkI3jgafms4rjgb7jgozjgovlrqLlrqTjga/jgYLjgorjgb7jgZvjgpMiLGtvOiJ7MH3rqoXsnbQg66y17J2EIOqwneyLpOydtCDsl4bsirXri4jri6QiLGZyOiJBdWN1bmUgY2hhbWJyZSBwb3VyIHswfSBwZXJzb25uZXMiLGVzOiJOaW5ndW5hIGhhYml0YWNpw7NuIHBhcmEgezB9IHBlcnNvbmFzIn0sIlRvZGF5J3MgaG91cnMgYXJlIG92ZXIiOntkZToiRGllIFRhZ2VzemltbWVyIGbDvHIgaGV1dGUgc2luZCB2b3JiZWkiLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrnjga/ntYLkuobjgZfjgb7jgZfjgZ8iLGtvOiLsmKTripjsnZgg64yA7Iuk7J2AIOuniOqwkOuQmOyXiOyKteuLiOuLpCIsZnI6IkxlcyBjaGFtYnJlcyDDoCBs4oCZaGV1cmUgZOKAmWF1am91cmTigJlodWkgc29udCB0ZXJtaW7DqWVzIixlczoiTGFzIGhvcmFzIGRlIGhveSBoYW4gdGVybWluYWRvIn0sIk9uIHNhbGUgdG9kYXkgZnJvbSB7MH0iOntkZToiSGV1dGUgYWIgezB9IGJ1Y2hiYXIiLGphOiLmnKzml6UgezB9IOOBi+OCieiyqeWjsiIsa286IuyYpOuKmCB7MH3rtoDthLAg7YyQ66ekIixmcjoiRW4gdmVudGUgYXVqb3VyZOKAmWh1aSBkw6hzIHswfSIsZXM6IkEgbGEgdmVudGEgaG95IGRlc2RlIGxhcyB7MH0ifSwiTm8gcm9vbXMgYnkgdGhlIGhvdXIgdG9kYXkiOntkZToiSGV1dGUga2VpbmUgVGFnZXN6aW1tZXIiLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrnjga/jgYLjgorjgb7jgZvjgpMiLGtvOiLsmKTripgg64yA7IukIOqwneyLpOydtCDsl4bsirXri4jri6QiLGZyOiJQYXMgZGUgY2hhbWJyZSDDoCBs4oCZaGV1cmUgYXVqb3VyZOKAmWh1aSIsZXM6IkhveSBubyBoYXkgaGFiaXRhY2lvbmVzIHBvciBob3JhcyJ9LCJTb2xkIG91dCBieSB0aGUgaG91ciB0b2RheSI6e2RlOiJUYWdlc3ppbW1lciBoZXV0ZSBhdXNnZWJ1Y2h0IixqYToi5pys5pel44Gu44OH44Kk44Om44O844K544Gv5rqA5a6k44Gn44GZIixrbzoi7Jik64qYIOuMgOyLpCDqsJ3si6TsnbQg66ek7KeE65CY7JeI7Iq164uI64ukIixmcjoiQ2hhbWJyZXMgw6AgbOKAmWhldXJlIGNvbXBsw6h0ZXMgYXVqb3VyZOKAmWh1aSIsZXM6IkhhYml0YWNpb25lcyBwb3IgaG9yYXMgYWdvdGFkYXMgaG95In0sIk5vIHJvb20gZm9yIHRoZXNlIGRhdGVzIjp7ZGU6IktlaW5lIFppbW1lciBmw7xyIGRpZXNlIERhdGVuIixqYToi44GT44Gu5pel56iL44Gn56m65a6k44Gv44GC44KK44G+44Gb44KTIixrbzoi7J20IOuCoOynnOyXkCDruYgg6rCd7Iuk7J20IOyXhuyKteuLiOuLpCIsZnI6IkF1Y3VuZSBjaGFtYnJlIMOgIGNlcyBkYXRlcyIsZXM6Ik5vIGhheSBoYWJpdGFjaW9uZXMgcGFyYSBlc3RhcyBmZWNoYXMifSwiRnJvbSAiOntkZToiYWIgIixqYToiIixrbzoi7LWc7KCAICIsZnI6IsOAIHBhcnRpciBkZSAiLGVzOiJEZXNkZSAifSwiIC8gbmlnaHQgKyB0YXgiOntkZToiIC8gTmFjaHQgenpnbC4gU3RldWVybiIsamE6IuOAnCAvIOaziu+8iOeojuWIpe+8iSIsa286IiAvIDHrsJUgKOyEuOq4iCDrs4Trj4QpIixmcjoiIC8gbnVpdCBob3JzIHRheGVzIixlczoiIC8gbm9jaGUgKyBpbXB1ZXN0b3MifSwiQWRkIGRhdGVzIGZvciBwcmljZXMiOntkZToiRGF0ZW4gd8OkaGxlbiBmw7xyIFByZWlzZSIsamE6IuaXpeeoi+OCkumBuOOBtuOBqOaWmemHkeOBjOWHuuOBvuOBmSIsa286IuuCoOynnOulvCDqs6DrpbTrqbQg7JqU6riI7J20IOuztOyeheuLiOuLpCIsZnI6IkNob2lzaXNzZXogdm9zIGRhdGVzIHBvdXIgdm9pciBsZXMgcHJpeCIsZXM6IkVsaWphIGZlY2hhcyBwYXJhIHZlciBwcmVjaW9zIn0sIkxvd2VzdCBwcmljZSI6e2RlOiJHw7xuc3RpZ3N0ZXIgUHJlaXMiLGphOiLmlpnph5Hjga7lronjgYTpoIYiLGtvOiLrgq7snYAg6rCA6rKp7IicIixmcjoiUHJpeCBsZSBwbHVzIGJhcyIsZXM6IlByZWNpbyBtw6FzIGJham8ifSwiRnJlZSBjYW5jZWxsYXRpb24iOntkZToiS29zdGVubG9zZSBTdG9ybmllcnVuZyIsamE6IueEoeaWmeOCreODo+ODs+OCu+ODqyIsa286IuustOujjCDst6jshowiLGZyOiJBbm51bGF0aW9uIGdyYXR1aXRlIixlczoiQ2FuY2VsYWNpw7NuIGdyYXR1aXRhIn0sInswfSBsZWZ0Ijp7ZGU6Ik5vY2ggezB9IGZyZWkiLGphOiLmrovjgop7MH3lrqQiLGtvOiJ7MH3qsJwg64Ko7J2MIixmcjoiUGx1cyBxdWUgezB9IixlczoiUXVlZGFuIHswfSJ9LCJTaG93IHByaWNlcyI6e2RlOiJQcmVpc2UgYW56ZWlnZW4iLGphOiLmlpnph5HjgpLopovjgosiLGtvOiLsmpTquIgg67O06riwIixmcjoiVm9pciBsZXMgcHJpeCIsZXM6IlZlciBwcmVjaW9zIn0sR3JvdXA6d3csQnJhbmQ6U3csSGFzOl93LCJCeSB0aGUgaG91ciB0b2RheSI6e2RlOiJUYWdlc3ppbW1lciBoZXV0ZSIsamE6IuacrOaXpeODh+OCpOODpuODvOOCueOBguOCiiIsa286IuyYpOuKmCDrjIDsi6Qg6rCA64qlIixmcjoiQ2hhbWJyZSDDoCBs4oCZaGV1cmUgYXVqb3VyZOKAmWh1aSIsZXM6IlBvciBob3JhcyBob3kifSxSZWNvbW1lbmRlZDpqdywiUm9vbXMgYnkgdGhlIGhvdXIsIHRvZGF5LiBQaWNrIGEgaG90ZWwgdG8gY2hvb3NlIHdoZW4geW91IGFycml2ZS4iOntkZToiVGFnZXN6aW1tZXIgZsO8ciBoZXV0ZS4gV8OkaGxlbiBTaWUgZWluIEhvdGVsIHVuZCBkYW5uIElocmUgQW5rdW5mdHN6ZWl0LiIsamE6IuacrOaXpeOBruODh+OCpOODpuODvOOCueOBp+OBmeOAguODm+ODhuODq+OCkumBuOOCk+OBp+OBi+OCieWIsOedgOaZguWIu+OCkumBuOOCk+OBp+OBj+OBoOOBleOBhOOAgiIsa286IuyYpOuKmOydmCDrjIDsi6TsnoXri4jri6QuIO2YuO2FlOydhCDqs6Drpbgg65KkIOuPhOywqSDsi5zqsITsnYQg7ISg7YOd7ZWY7IS47JqULiIsZnI6IkNoYW1icmVzIMOgIGzigJloZXVyZSwgYXVqb3VyZOKAmWh1aS4gQ2hvaXNpc3NleiB1biBow7R0ZWwsIHB1aXMgdm90cmUgaGV1cmUgZOKAmWFycml2w6llLiIsZXM6IkhhYml0YWNpb25lcyBwb3IgaG9yYXMsIGhveS4gRWxpamEgdW4gaG90ZWwgeSBsdWVnbyBsYSBob3JhIGRlIGxsZWdhZGEuIn0sIlN0YXkgdGhlIG5pZ2h0IGluc3RlYWQiOntkZToiU3RhdHRkZXNzZW4gw7xiZXJuYWNodGVuIixqYToi5a6/5rOK44Gn5o6i44GZIixrbzoi7IiZ67CV7Jy866GcIOuztOq4sCIsZnI6IlBsdXTDtHQgcGFzc2VyIGxhIG51aXQiLGVzOiJNZWpvciBwYXNhciBsYSBub2NoZSJ9LFNvcnQ6VHcsIjogIjp7ZGU6IjogIixqYToi77yaIixrbzoiOiAiLGZyOiIgOiAiLGVzOiI6ICJ9LEZpbHRlcnM6QXcsQ2xlYXI6encsIkhpZ2hlc3QgcHJpY2UiOntkZToiSMO2Y2hzdGVyIFByZWlzIixqYToi5paZ6YeR44Gu6auY44GE6aCGIixrbzoi64aS7J2AIOqwgOqyqeyInCIsZnI6IlByaXggbGUgcGx1cyDDqWxldsOpIixlczoiUHJlY2lvIG3DoXMgYWx0byJ9LFJhdGluZzpDdywiUHJldmlvdXMgcGFnZSI6e2RlOiJadXLDvGNrIixqYToi5YmN44G4Iixrbzoi7J207KCEIixmcjoiUHLDqWPDqWRlbnQiLGVzOiJBbnRlcmlvciJ9LCJOZXh0IHBhZ2UiOntkZToiV2VpdGVyIixqYToi5qyh44G4Iixrbzoi64uk7J2MIixmcjoiU3VpdmFudCIsZXM6IlNpZ3VpZW50ZSJ9LFBhZ2VzOk53LCJ7MH3igJN7MX0gb2YgezJ9Ijp7ZGU6InswfeKAk3sxfSB2b24gezJ9IixqYToiezJ96LuS5LitIHswfeKAk3sxfSIsa286InsyfeqzsyDspJEgezB94oCTezF9IixmcjoiezB94oCTezF9IHN1ciB7Mn0iLGVzOiJ7MH3igJN7MX0gZGUgezJ9In0sIjAgb2YgezB9Ijp7ZGU6IjAgdm9uIHswfSIsamE6Inswfei7kuS4rSAwIixrbzoiezB96rOzIOykkSAwIixmcjoiMCBzdXIgezB9IixlczoiMCBkZSB7MH0ifSwiVmlldyBhbGwgezB9Ijp7ZGU6IkFsbGUgezB9IGFuc2VoZW4iLGphOiLlhah7MH3ou5LjgpLopovjgosiLGtvOiJ7MH3qs7Mg66qo65GQIOuztOq4sCIsZnI6IlZvaXIgbGVzIHswfSIsZXM6IlZlciBsb3MgezB9In0sIjEgaG90ZWwiOntkZToiMSBIb3RlbCIsamE6IjHou5IiLGtvOiLtmLjthZQgMeqzsyIsZnI6IjEgaMO0dGVsIixlczoiMSBob3RlbCJ9LFdoZXJlOlB3LE9yZGVyOnh3LCJBbGwgaG90ZWxzIjp7ZGU6IkFsbGUgSG90ZWxzIixqYToi44GZ44G544Gm44Gu44Ob44OG44OrIixrbzoi7KCE7LK0IO2YuO2FlCIsZnI6IlRvdXMgbGVzIGjDtHRlbHMiLGVzOiJUb2RvcyBsb3MgaG90ZWxlcyJ9LCJieSB0aGUgaG91ciB0b2RheSwgdGF4ZXMgaW4iOntkZToiVGFnZXN6aW1tZXIgaGV1dGUsIGlua2wuIFN0ZXVlcm4iLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrnjgIHnqI7ovrzjgb8iLGtvOiLsmKTripgg64yA7IukLCDshLjquIgg7Y+s7ZWoIixmcjoiw6AgbOKAmWhldXJlIGF1am91cmTigJlodWksIHRheGVzIGNvbXByaXNlcyIsZXM6InBvciBob3JhcyBob3ksIGltcHVlc3RvcyBpbmNsdWlkb3MifSwicHJpY2VzIGZvciB7MH0sIHsxfSByb29tcywgdGF4ZXMgaW4iOntkZToiUHJlaXNlIGbDvHIgezB9LCB7MX0gWmltbWVyLCBpbmtsLiBTdGV1ZXJuIixqYToiezB944O7ezF95a6k44Gu56iO6L6844G/5paZ6YeRIixrbzoiezB9LCDqsJ3si6QgezF96rCcIOyEuOq4iCDtj6ztlagg7JqU6riIIixmcjoicHJpeCBwb3VyIHswfSwgezF9IGNoYW1icmVzLCB0YXhlcyBjb21wcmlzZXMiLGVzOiJwcmVjaW9zIHBhcmEgezB9LCB7MX0gaGFiaXRhY2lvbmVzLCBpbXB1ZXN0b3MgaW5jbHVpZG9zIn0sInByaWNlcyBmb3IgezB9LCB0YXhlcyBpbiI6e2RlOiJQcmVpc2UgZsO8ciB7MH0sIGlua2wuIFN0ZXVlcm4iLGphOiJ7MH3jga7nqI7ovrzjgb/mlpnph5EiLGtvOiJ7MH0g7IS46riIIO2PrO2VqCDsmpTquIgiLGZyOiJwcml4IHBvdXIgezB9LCB0YXhlcyBjb21wcmlzZXMiLGVzOiJwcmVjaW9zIHBhcmEgezB9LCBpbXB1ZXN0b3MgaW5jbHVpZG9zIn0sImFkZCBkYXRlcyB0byBzZWUgd2hhdCBhIHN0YXkgY29zdHMiOntkZToiRGF0ZW4gd8OkaGxlbiBmw7xyIGRlbiBHZXNhbXRwcmVpcyIsamE6IuaXpeeoi+OCkumBuOOBtuOBqOe3j+mhjeOBjOWHuuOBvuOBmSIsa286IuuCoOynnOulvCDqs6DrpbTrqbQg7LSd7JWh7J20IOuztOyeheuLiOuLpCIsZnI6ImNob2lzaXNzZXogdm9zIGRhdGVzIHBvdXIgdm9pciBsZSBwcml4IGR1IHPDqWpvdXIiLGVzOiJlbGlqYSBmZWNoYXMgcGFyYSB2ZXIgZWwgcHJlY2lvIGRlIGxhIGVzdGFuY2lhIn0sIkV2ZXJ5IGhvdGVsIGhlcmUgaXMgZnJlZSB0byBjYW5jZWwiOntkZToiQWxsZSBIb3RlbHMgaGllciBzaW5kIGtvc3RlbmxvcyBzdG9ybmllcmJhciIsamE6IuOBk+OBk+OBruODm+ODhuODq+OBr+OBmeOBueOBpueEoeaWmeOCreODo+ODs+OCu+ODq+WPryIsa286IuydtOqzs+ydmCDrqqjrk6Ag7Zi47YWU7J2AIOustOujjCDst6jshowg6rCA64qlIixmcjoiVG91cyBjZXMgaMO0dGVscyBzb250IGFubnVsYWJsZXMgZ3JhdHVpdGVtZW50IixlczoiVG9kb3MgZXN0b3MgaG90ZWxlcyB0aWVuZW4gY2FuY2VsYWNpw7NuIGdyYXR1aXRhIn0sIk5vdGhpbmcgbWF0Y2hlZCB7MH0uIFRoZXNlIGFyZSB7MX0uIjp7ZGU6IktlaW5lIFRyZWZmZXIgZsO8ciB7MH0uIEhpZXIgc2luZCB7MX0uIixqYToiezB944Gr5LiA6Ie044GZ44KL57WQ5p6c44Gv44GC44KK44G+44Gb44KT44CC44GT44Gh44KJ44GvezF944Gn44GZ44CCIixrbzoiezB97JmAKOqzvCkg7J287LmY7ZWY64qUIOqysOqzvOqwgCDsl4bsirXri4jri6QuIOuMgOyLoCB7MX3snoXri4jri6QuIixmcjoiQXVjdW4gcsOpc3VsdGF0IHBvdXIgezB9LiBWb2ljaSB7MX0uIixlczoiTmFkYSBjb2luY2lkZSBjb24gezB9LiBFc3RvcyBzb24gezF9LiJ9LCJRdW90ZWQgaW4gezB9IOKAlCBubyByYXRlIGlzIGFwcGxpZWQgaGVyZSwgc28gdGhpcyBpcyBub3QgYSBwcmljZSBvcmRlci4gT25lIGNpdHkgb3Igb25lIGNvdW50cnkgZ2l2ZXMgb25lIGN1cnJlbmN5LiI6e2RlOiJQcmVpc2UgaW4gezB9IOKAlCBoaWVyIHdpcmQgbmljaHRzIHVtZ2VyZWNobmV0LCBkYWhlciBpc3QgZGllcyBrZWluZSBQcmVpc3JlaWhlbmZvbGdlLiBFaW5lIFN0YWR0IG9kZXIgZWluIExhbmQgZXJnaWJ0IGVpbmUgV8OkaHJ1bmcuIixqYToiezB944Gn6KGo56S644GX44Gm44GE44G+44GZ44CC5o+b566X44Gv44GX44Gq44GE44Gf44KB44CB5paZ6YeR6aCG44Gn44Gv44GC44KK44G+44Gb44KT44CC6YO95biC44GL5Zu944KSMeOBpOOBq+e1nuOCi+OBqOmAmuiyqOOBjDHjgaTjgavjgarjgorjgb7jgZnjgIIiLGtvOiJ7MH0o7Jy8KeuhnCDtkZzsi5zrkKnri4jri6QuIO2ZmOyCsO2VmOyngCDslYrsnLzrr4DroZwg6rCA6rKp7Iic7J20IOyVhOuLmeuLiOuLpC4g64+E7Iuc64KYIOq1reqwgCDtlZjrgpjrp4wg67O066m0IO2Gte2ZlOqwgCDtlZjrgpjqsIAg65Cp64uI64ukLiIsZnI6IlByaXggZW4gezB9IOKAlCByaWVuIG7igJllc3QgY29udmVydGkgaWNpLCBjZSBu4oCZZXN0IGRvbmMgcGFzIHVuIGNsYXNzZW1lbnQgcGFyIHByaXguIFVuZSB2aWxsZSBvdSB1biBwYXlzIGRvbm5lIHVuZSBzZXVsZSBkZXZpc2UuIixlczoiUHJlY2lvcyBlbiB7MH06IGFxdcOtIG5vIHNlIGNvbnZpZXJ0ZSBuYWRhLCBhc8OtIHF1ZSBubyBlcyB1biBvcmRlbiBwb3IgcHJlY2lvLiBVbmEgY2l1ZGFkIG8gdW4gcGHDrXMgZGEgdW5hIHNvbGEgbW9uZWRhLiJ9LCJ7MH0gbW9yZSBtYXRjaGVkIGFuZCBjYW1lIGluIG92ZXIgdGhlIHByaWNlIGNlaWxpbmcuIjp7ZGU6InswfSB3ZWl0ZXJlIHBhc3NlbiwgbGllZ2VuIGFiZXIgw7xiZXIgZGVtIFByZWlzbGltaXQuIixqYToi44G744GL44GrezB96LuS44GM5p2h5Lu244Gr5ZCI44GE44G+44GZ44GM44CB5LiK6ZmQ5paZ6YeR44KS6LaF44GI44Gm44GE44G+44GZ44CCIixrbzoi7KGw6rG07JeQIOunnuuKlCB7MH3qs7PsnbQg642UIOyeiOyngOunjCDqsIDqsqkg7IOB7ZWc7J2EIOuEmOyKteuLiOuLpC4iLGZyOiJ7MH0gYXV0cmVzIGNvcnJlc3BvbmRlbnQgbWFpcyBkw6lwYXNzZW50IGxlIHBsYWZvbmQgZGUgcHJpeC4iLGVzOiJ7MH0gbcOhcyBjb2luY2lkZW4gcGVybyBzdXBlcmFuIGVsIHByZWNpbyBtw6F4aW1vLiJ9LCJTaG93aW5nIHswfeKAk3sxfSBvZiB7Mn0uIjp7ZGU6InswfeKAk3sxfSB2b24gezJ9IHdlcmRlbiBhbmdlemVpZ3QuIixqYToiezJ96LuS5LitIHswfeKAk3sxfei7kuebruOCkuihqOekuuOBl+OBpuOBhOOBvuOBmeOAgiIsa286InsyfeqzsyDspJEgezB94oCTezF967KI7Ke466W8IOuztOyXrCDrk5zrpr3ri4jri6QuIixmcjoiQWZmaWNoYWdlIGRlIHswfSDDoCB7MX0gc3VyIHsyfS4iLGVzOiJNb3N0cmFuZG8gezB94oCTezF9IGRlIHsyfS4ifSwiU2hvd2luZyB7MH0gb2YgezF9LiI6e2RlOiJ7MH0gdm9uIHsxfSB3ZXJkZW4gYW5nZXplaWd0LiIsamE6Insxfei7kuS4rSB7MH3ou5LjgpLooajnpLrjgZfjgabjgYTjgb7jgZnjgIIiLGtvOiJ7MX3qs7Mg7KSRIHswfeqzs+ydhCDrs7Tsl6wg65Oc66a964uI64ukLiIsZnI6IkFmZmljaGFnZSBkZSB7MH0gc3VyIHsxfS4iLGVzOiJNb3N0cmFuZG8gezB9IGRlIHsxfS4ifSwiU2hvdyB7MH0gbW9yZSI6e2RlOiJ7MH0gd2VpdGVyZSBhbnplaWdlbiIsamE6IuOBleOCieOBq3swfei7kuOCkuihqOekuiIsa286InswfeqzsyDrjZQg67O06riwIixmcjoiQWZmaWNoZXIgezB9IGRlIHBsdXMiLGVzOiJNb3N0cmFyIHswfSBtw6FzIn0sIk5vdGhpbmcgbWF0Y2hlZCB7MH0sIHNvIHRoaXMgbG9va2VkIGluIHsxfS4iOntkZToiS2VpbmUgVHJlZmZlciBmw7xyIHswfSwgZGFoZXIgd3VyZGUgaW4gezF9IGdlc3VjaHQuIixqYToiezB944Gr5LiA6Ie044GZ44KL57WQ5p6c44GM44Gq44GE44Gf44KB44CBezF944Gn5o6i44GX44G+44GX44Gf44CCIixrbzoiezB97JmAKOqzvCkg7J287LmY7ZWY64qUIOqysOqzvOqwgCDsl4bslrQgezF97JeQ7IScIOywvuyVmOyKteuLiOuLpC4iLGZyOiJBdWN1biByw6lzdWx0YXQgcG91ciB7MH0gOiBsYSByZWNoZXJjaGUgYSBwb3J0w6kgc3VyIHsxfS4iLGVzOiJOYWRhIGNvaW5jaWRlIGNvbiB7MH0sIGFzw60gcXVlIHNlIGJ1c2PDsyBlbiB7MX0uIn0sIk5vbmUgb2YgdGhlIHswfSBob3RlbHMgaGVyZSBoYXMgYWxsIG9mIHRob3NlIHRvZ2V0aGVyLiI6e2RlOiJLZWluZXMgZGVyIHswfSBIb3RlbHMgaGllciBlcmbDvGxsdCBhbGxlcyB6dXNhbW1lbi4iLGphOiLjgZPjgZPjga57MH3ou5Ljga7jgYbjgaHjgIHjgZnjgbnjgabjga7mnaHku7bjgpLmuoDjgZ/jgZnjg5vjg4bjg6vjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLsnbTqs7PsnZgg7Zi47YWUIHswfeqzsyDspJEg66qo65OgIOyhsOqxtOydhCDqsJbstpgg6rOz7J2AIOyXhuyKteuLiOuLpC4iLGZyOiJBdWN1biBkZXMgezB9IGjDtHRlbHMgaWNpIG5lIHLDqXVuaXQgdG91dCBjZWxhLiIsZXM6Ik5pbmd1bm8gZGUgbG9zIHswfSBob3RlbGVzIGRlIGFxdcOtIHJlw7puZSB0b2RvIGVzby4ifSwiTm90aGluZyBpbiDigJx7MH3igJ0iOntkZToiTmljaHRzIGluIOKAnnswfeKAnCIsamE6IuOAjHswfeOAjeOBr+imi+OBpOOBi+OCiuOBvuOBm+OCkyIsa286IuKAmHswfeKAmSDqsrDqs7wg7JeG7J2MIixmcjoiUmllbiBwb3VyIMKrIHswfSDCuyIsZXM6Ik5hZGEgZW4gwqt7MH3CuyJ9LCJObyBob3RlbHMgbWF0Y2giOntkZToiS2VpbmUgcGFzc2VuZGVuIEhvdGVscyIsamE6IuadoeS7tuOBq+WQiOOBhuODm+ODhuODq+OBr+OBguOCiuOBvuOBm+OCkyIsa286IuyhsOqxtOyXkCDrp57ripQg7Zi47YWU7J20IOyXhuyKteuLiOuLpCIsZnI6IkF1Y3VuIGjDtHRlbCBuZSBjb3JyZXNwb25kIixlczoiTmluZ8O6biBob3RlbCBjb2luY2lkZSJ9LCJObyBob3RlbCBoZXJlIGlzIGluIG9yIG5lYXIg4oCcezB94oCdLiBUcnkgYSBjaXR5IG9yIGEgY291bnRyeS4iOntkZToiS2VpbiBIb3RlbCBoaWVyIGxpZWd0IGluIG9kZXIgYmVpIOKAnnswfeKAnC4gVmVyc3VjaGVuIFNpZSBlaW5lIFN0YWR0IG9kZXIgZWluIExhbmQuIixqYToi44CMezB944CN44KE44Gd44Gu5ZGo6L6644Gu44Ob44OG44Or44Gv44GC44KK44G+44Gb44KT44CC6YO95biC44KE5Zu944Gn5o6i44GX44Gm44G/44Gm44GP44Gg44GV44GE44CCIixrbzoi4oCYezB94oCZIOuYkOuKlCDqt7zsspjsl5Ag7J6I64qUIO2YuO2FlOydtCDsl4bsirXri4jri6QuIOuPhOyLnOuCmCDqta3qsIDroZwg7LC+7JWE67O07IS47JqULiIsZnI6IkF1Y3VuIGjDtHRlbCBpY2kgbuKAmWVzdCDDoCDCqyB7MH0gwrsgb3Ugw6AgcHJveGltaXTDqS4gRXNzYXlleiB1bmUgdmlsbGUgb3UgdW4gcGF5cy4iLGVzOiJOaW5nw7puIGhvdGVsIGVzdMOhIGVuIMKrezB9wrsgbyBjZXJjYS4gUHJ1ZWJlIHVuYSBjaXVkYWQgbyB1biBwYcOtcy4ifSwiVHJ5IGEgY2l0eSwgYSBjb3VudHJ5IG9yIGEgaG90ZWwgbmFtZS4iOntkZToiVmVyc3VjaGVuIFNpZSBlaW5lIFN0YWR0LCBlaW4gTGFuZCBvZGVyIGVpbmVuIEhvdGVsbmFtZW4uIixqYToi6YO95biC44O75Zu944O744Ob44OG44Or5ZCN44Gn5o6i44GX44Gm44G/44Gm44GP44Gg44GV44GE44CCIixrbzoi64+E7IucLCDqta3qsIAg65iQ64qUIO2YuO2FlCDsnbTrpoTsnLzroZwg7LC+7JWE67O07IS47JqULiIsZnI6IkVzc2F5ZXogdW5lIHZpbGxlLCB1biBwYXlzIG91IHVuIG5vbSBk4oCZaMO0dGVsLiIsZXM6IlBydWViZSB1bmEgY2l1ZGFkLCB1biBwYcOtcyBvIGVsIG5vbWJyZSBkZSB1biBob3RlbC4ifSwiQ2l0eSBvciBob3RlbCI6e2RlOiJTdGFkdCBvZGVyIEhvdGVsIixqYToi6YO95biC44G+44Gf44Gv44Ob44OG44Or5ZCNIixrbzoi64+E7IucIOuYkOuKlCDtmLjthZQiLGZyOiJWaWxsZSBvdSBow7R0ZWwiLGVzOiJDaXVkYWQgdSBob3RlbCJ9LCJTZWUgZXZlcnkgZGVzdGluYXRpb24iOntkZToiQWxsZSBSZWlzZXppZWxlIGFuc2VoZW4iLGphOiLjgZnjgbnjgabjga7ooYzjgY3lhYjjgpLopovjgosiLGtvOiLsoITssrQg66qp7KCB7KeAIOuztOq4sCIsZnI6IlZvaXIgdG91dGVzIGxlcyBkZXN0aW5hdGlvbnMiLGVzOiJWZXIgdG9kb3MgbG9zIGRlc3Rpbm9zIn0sIk5vdGhpbmcgY2FtZSBpbiB1bmRlciB0aGUgcHJpY2UgY2VpbGluZy4gVGhlIG5lYXJlc3QgaXMgb3ZlciBpdC4iOntkZToiTmljaHRzIGxpZWd0IHVudGVyIGRlbSBQcmVpc2xpbWl0LiBEYXMgbsOkY2hzdGdlbGVnZW5lIGxpZWd0IGRhcsO8YmVyLiIsamE6IuS4iumZkOaWmemHkeS7peS4i+OBruODm+ODhuODq+OBr+OBguOCiuOBvuOBm+OCk+OAguacgOOCgui/keOBhOODm+ODhuODq+OBr+OChOOChOS4iuWbnuOCiuOBvuOBmeOAgiIsa286IuqwgOqyqSDsg4HtlZwg7J207ZWY7J24IO2YuO2FlOydtCDsl4bsirXri4jri6QuIOqwgOyepSDqsIDquYzsmrQg6rOz7J2AIOyDge2VnOydhCDsobDquIgg64SY7Iq164uI64ukLiIsZnI6IlJpZW4gc291cyBsZSBwbGFmb25kIGRlIHByaXguIExlIHBsdXMgcHJvY2hlIGxlIGTDqXBhc3NlLiIsZXM6Ik5hZGEgcXVlZGEgcG9yIGRlYmFqbyBkZWwgcHJlY2lvIG3DoXhpbW8uIEVsIG3DoXMgY2VyY2FubyBsbyBzdXBlcmEuIn0sIk5vdGhpbmcgY2FtZSBpbiB1bmRlciB0aGUgcHJpY2UgY2VpbGluZy4gVGhlIG5lYXJlc3QgYXJlIG92ZXIgaXQuIjp7ZGU6Ik5pY2h0cyBsaWVndCB1bnRlciBkZW0gUHJlaXNsaW1pdC4gRGllIG7DpGNoc3RnZWxlZ2VuZW4gbGllZ2VuIGRhcsO8YmVyLiIsamE6IuS4iumZkOaWmemHkeS7peS4i+OBruODm+ODhuODq+OBr+OBguOCiuOBvuOBm+OCk+OAguacgOOCgui/keOBhOODm+ODhuODq+OBr+OChOOChOS4iuWbnuOCiuOBvuOBmeOAgiIsa286IuqwgOqyqSDsg4HtlZwg7J207ZWY7J24IO2YuO2FlOydtCDsl4bsirXri4jri6QuIOqwgOyepSDqsIDquYzsmrQg6rOz65Ok7J2AIOyDge2VnOydhCDsobDquIgg64SY7Iq164uI64ukLiIsZnI6IlJpZW4gc291cyBsZSBwbGFmb25kIGRlIHByaXguIExlcyBwbHVzIHByb2NoZXMgbGUgZMOpcGFzc2VudC4iLGVzOiJOYWRhIHF1ZWRhIHBvciBkZWJham8gZGVsIHByZWNpbyBtw6F4aW1vLiBMb3MgbcOhcyBjZXJjYW5vcyBsbyBzdXBlcmFuLiJ9LE92ZXI6SXcsIldoYXQgdGhlIGhvdGVsIGhhcyI6e2RlOiJBdXNzdGF0dHVuZyBkZXMgSG90ZWxzIixqYToi44Ob44OG44Or44Gu6Kit5YKZIixrbzoi7Zi47YWUIOyLnOyEpCIsZnI6IsOJcXVpcGVtZW50cyBkZSBs4oCZaMO0dGVsIixlczoiU2VydmljaW9zIGRlbCBob3RlbCJ9LCJSb29tIG9ubHkiOntkZToiT2huZSBGcsO8aHN0w7xjayIsamE6Iue0oOaziuOBvuOCiiIsa286IuyhsOyLnSDrtojtj6ztlagiLGZyOiJTYW5zIHBldGl0LWTDqWpldW5lciIsZXM6IlNvbG8gYWxvamFtaWVudG8ifSxCcmVha2Zhc3Q6RXcsIkJyZWFrZmFzdCBmb3IgMSI6e2RlOiJGcsO8aHN0w7xjayBmw7xyIDEiLGphOiLmnJ3po58x5ZCN5YiGIixrbzoi7KGw7IudIDHsnbgiLGZyOiJQZXRpdC1kw6lqZXVuZXIgcG91ciAxIixlczoiRGVzYXl1bm8gcGFyYSAxIn0sIkJyZWFrZmFzdCBmb3IgMiI6e2RlOiJGcsO8aHN0w7xjayBmw7xyIDIiLGphOiLmnJ3po58y5ZCN5YiGIixrbzoi7KGw7IudIDLsnbgiLGZyOiJQZXRpdC1kw6lqZXVuZXIgcG91ciAyIixlczoiRGVzYXl1bm8gcGFyYSAyIn0sIkJyZWFrZmFzdCBmb3IgMyI6e2RlOiJGcsO8aHN0w7xjayBmw7xyIDMiLGphOiLmnJ3po58z5ZCN5YiGIixrbzoi7KGw7IudIDPsnbgiLGZyOiJQZXRpdC1kw6lqZXVuZXIgcG91ciAzIixlczoiRGVzYXl1bm8gcGFyYSAzIn0sUGFja2FnZTpSdywiRmxhc2ggc2FsZSI6e2RlOiJCbGl0emFuZ2Vib3QiLGphOiLjgr/jgqTjg6Djgrvjg7zjg6siLGtvOiLtg4DsnoQg7Yq56rCAIixmcjoiVmVudGUgZmxhc2giLGVzOiJPZmVydGEgZmxhc2gifSwiTGF0ZS1uaWdodCByYXRlIjp7ZGU6IlNww6R0YnVjaGVyLVByZWlzIixqYToi5rex5aSc5paZ6YeRIixrbzoi7Ius7JW8IOyalOq4iCIsZnI6IlRhcmlmIGRlIGRlcm5pw6hyZSBtaW51dGUiLGVzOiJUYXJpZmEgbm9jdHVybmEifSwiQm9vay1haGVhZCByYXRlIjp7ZGU6IkZyw7xoYnVjaGVyLVByZWlzIixqYToi5pep5pyf5LqI57SE5paZ6YeRIixrbzoi7KGw6riwIOyYiOyVvSDsmpTquIgiLGZyOiJUYXJpZiByw6lzZXJ2YXRpb24gYW50aWNpcMOpZSIsZXM6IlRhcmlmYSBkZSByZXNlcnZhIGFudGljaXBhZGEifSxQcm9tb3Rpb246T3csIlNsZWVwcyB7MH0iOntkZToiRsO8ciB7MH0gUGVyc29uZW4iLGphOiJ7MH3lkI3jgb7jgaciLGtvOiLstZzrjIAgezB966qFIixmcjoiezB9IHBlcnNvbm5lcyIsZXM6IlBhcmEgezB9IHBlcnNvbmFzIn0sIiDCtyAxIGNoaWxkIjp7ZGU6IiDCtyAxIEtpbmQiLGphOiIgwrcg5a2Q44Gp44KCMeWQjeWPryIsa286IiDCtyDslrTrprDsnbQgMeuqhSIsZnI6IiDCtyAxIGVuZmFudCIsZXM6IiDCtyAxIG5pw7FvIn0sIiDCtyB7MH0gY2hpbGRyZW4iOntkZToiIMK3IHswfSBLaW5kZXIiLGphOiIgwrcg5a2Q44Gp44KCezB95ZCN5Y+vIixrbzoiIMK3IOyWtOumsOydtCB7MH3rqoUiLGZyOiIgwrcgezB9IGVuZmFudHMiLGVzOiIgwrcgezB9IG5pw7FvcyJ9LCI8Yj5CcmVha2Zhc3Q8L2I+IGluY2x1ZGVkIjp7ZGU6IjxiPkZyw7xoc3TDvGNrPC9iPiBpbmtsdXNpdmUiLGphOiI8Yj7mnJ3po588L2I+5LuY44GNIixrbzoiPGI+7KGw7IudPC9iPiDtj6ztlagiLGZyOiI8Yj5QZXRpdC1kw6lqZXVuZXI8L2I+IGluY2x1cyIsZXM6IjxiPkRlc2F5dW5vPC9iPiBpbmNsdWlkbyJ9LCIgdW50aWwgezB9Ijp7ZGU6IiBiaXMgezB9IixqYToi77yIezB944G+44Gn77yJIixrbzoiICh7MH3quYzsp4ApIixmcjoiIGp1c3F14oCZYXUgezB9IixlczoiIGhhc3RhIGVsIHswfSJ9LCJOb24tcmVmdW5kYWJsZSI6e2RlOiJOaWNodCBlcnN0YXR0YmFyIixqYToi6L+U6YeR5LiN5Y+vIixrbzoi7ZmY67aIIOu2iOqwgCIsZnI6Ik5vbiByZW1ib3Vyc2FibGUiLGVzOiJObyByZWVtYm9sc2FibGUifSwiIOKAlCB0aGlzIHJhdGUgY2Fubm90IGJlIGNhbmNlbGxlZCI6e2RlOiIg4oCUIGRpZXNlciBQcmVpcyBpc3QgbmljaHQgc3Rvcm5pZXJiYXIiLGphOiLvvIjjgZPjga7mlpnph5Hjga/jgq3jg6Pjg7Pjgrvjg6vjgafjgY3jgb7jgZvjgpPvvIkiLGtvOiIg4oCUIOydtCDsmpTquIjsnYAg7Leo7IaM7ZWgIOyImCDsl4bsirXri4jri6QiLGZyOiIg4oCUIGNlIHRhcmlmIG7igJllc3QgcGFzIGFubnVsYWJsZSIsZXM6IiDigJQgZXN0YSB0YXJpZmEgbm8gc2UgcHVlZGUgY2FuY2VsYXIifSwiezB9IG1lbWJlciByYXRlIjp7ZGU6Ik1pdGdsaWVkZXJwcmVpcyB7MH0iLGphOiJ7MH3kvJrlk6Hmlpnph5EiLGtvOiJ7MH0g7ZqM7JuQIOyalOq4iCIsZnI6IlRhcmlmIG1lbWJyZSB7MH0iLGVzOiJUYXJpZmEgZGUgbWllbWJybyB7MH0ifSwiIGFwcGxpZWQiOntkZToiIGFuZ2V3ZW5kZXQiLGphOiLjgpLpgannlKgiLGtvOiIg7KCB7JqpIixmcjoiIGFwcGxpcXXDqSIsZXM6IiBhcGxpY2FkYSJ9LCJQYWlkIGluIGFkdmFuY2UiOntkZToiVm9yYXVzemFobHVuZyIsamE6IuS6i+WJjeaJleOBhCIsa286IuyEoOqysOygnCIsZnI6IlByw6lwYXnDqSIsZXM6IlByZXBhZ28ifSxXaW5kb3c6TXcsIk5vIHdpbmRvdyI6e2RlOiJPaG5lIEZlbnN0ZXIiLGphOiLnqpPjgarjgZciLGtvOiLssL3rrLgg7JeG7J2MIixmcjoiU2FucyBmZW7DqnRyZSIsZXM6IlNpbiB2ZW50YW5hIn0sIkJyZWFrZmFzdCBpbmNsdWRlZCI6e2RlOiJGcsO8aHN0w7xjayBpbmtsdXNpdmUiLGphOiLmnJ3po5/ku5jjgY0iLGtvOiLsobDsi50g7Y+s7ZWoIixmcjoiUGV0aXQtZMOpamV1bmVyIGluY2x1cyIsZXM6IkRlc2F5dW5vIGluY2x1aWRvIn0sQ2l0eTpadyxBcnJpdmU6cXcsIkxlYXZlIGJ5Ijp7ZGU6IkFicmVpc2UgYmlzIixqYToi6YCA5a6k5pyf6ZmQIixrbzoi7Ye07IukIOyLnOqwhCIsZnI6IkTDqXBhcnQgYXZhbnQiLGVzOiJTYWxpZGEgYW50ZXMgZGUifSwiMSByb29tIHR5cGUgdGhhdCBzbGVlcHMgezB9Ijp7ZGU6IjEgWmltbWVya2F0ZWdvcmllIGbDvHIgezB9IFBlcnNvbmVuIixqYToiezB95ZCN44Gn5rOK44G+44KM44KL5a6i5a6k44K/44Kk44OXMeS7tiIsa286InswfeuqheydtCDrrLXsnYQg7IiYIOyeiOuKlCDqsJ3si6Qg7Jyg7ZiVIDHqsJwiLGZyOiIxIHR5cGUgZGUgY2hhbWJyZSBwb3VyIHswfSBwZXJzb25uZXMiLGVzOiIxIHRpcG8gZGUgaGFiaXRhY2nDs24gcGFyYSB7MH0gcGVyc29uYXMifSwiezB9IHJvb20gdHlwZXMgdGhhdCBzbGVlcCB7MX0iOntkZToiezB9IFppbW1lcmthdGVnb3JpZW4gZsO8ciB7MX0gUGVyc29uZW4iLGphOiJ7MX3lkI3jgafms4rjgb7jgozjgovlrqLlrqTjgr/jgqTjg5d7MH3ku7YiLGtvOiJ7MX3rqoXsnbQg66y17J2EIOyImCDsnojripQg6rCd7IukIOycoO2YlSB7MH3qsJwiLGZyOiJ7MH0gdHlwZXMgZGUgY2hhbWJyZSBwb3VyIHsxfSBwZXJzb25uZXMiLGVzOiJ7MH0gdGlwb3MgZGUgaGFiaXRhY2nDs24gcGFyYSB7MX0gcGVyc29uYXMifSwiMSByb29tIHR5cGUiOntkZToiMSBaaW1tZXJrYXRlZ29yaWUiLGphOiLlrqLlrqTjgr/jgqTjg5cx5Lu2Iixrbzoi6rCd7IukIOycoO2YlSAx6rCcIixmcjoiMSB0eXBlIGRlIGNoYW1icmUiLGVzOiIxIHRpcG8gZGUgaGFiaXRhY2nDs24ifSwiezB9IHJvb20gdHlwZXMiOntkZToiezB9IFppbW1lcmthdGVnb3JpZW4iLGphOiLlrqLlrqTjgr/jgqTjg5d7MH3ku7YiLGtvOiLqsJ3si6Qg7Jyg7ZiVIHswfeqwnCIsZnI6InswfSB0eXBlcyBkZSBjaGFtYnJlIixlczoiezB9IHRpcG9zIGRlIGhhYml0YWNpw7NuIn0sIjEgZ3Vlc3QiOntkZToiMSBHYXN0IixqYToiMeWQjSIsa286IjHrqoUiLGZyOiIxIHBlcnNvbm5lIixlczoiMSBodcOpc3BlZCJ9LCJ7MH0gZ3Vlc3RzIjp7ZGU6InswfSBHw6RzdGUiLGphOiJ7MH3lkI0iLGtvOiJ7MH3rqoUiLGZyOiJ7MH0gcGVyc29ubmVzIixlczoiezB9IGh1w6lzcGVkZXMifSwiRm9yIHswfSwgezF9IHJvb21zLCB0YXhlcyBpbiI6e2RlOiJGw7xyIHswfSwgezF9IFppbW1lciwgaW5rbC4gU3RldWVybiIsamE6InswfeODu3sxfeWupOOAgeeojui+vOOBvyIsa286InswfSwg6rCd7IukIHsxfeqwnCwg7IS46riIIO2PrO2VqCIsZnI6IlBvdXIgezB9LCB7MX0gY2hhbWJyZXMsIHRheGVzIGNvbXByaXNlcyIsZXM6IlBvciB7MH0sIHsxfSBoYWJpdGFjaW9uZXMsIGltcHVlc3RvcyBpbmNsdWlkb3MifSwiRm9yIHswfSwgdGF4ZXMgaW4iOntkZToiRsO8ciB7MH0sIGlua2wuIFN0ZXVlcm4iLGphOiJ7MH3jgIHnqI7ovrzjgb8iLGtvOiJ7MH0sIOyEuOq4iCDtj6ztlagiLGZyOiJQb3VyIHswfSwgdGF4ZXMgY29tcHJpc2VzIixlczoiUG9yIHswfSwgaW1wdWVzdG9zIGluY2x1aWRvcyJ9LCJUb3RhbCBmb3IgezB9LCB7MX0gcm9vbXMsIHRheGVzIGluIjp7ZGU6Ikdlc2FtdCBmw7xyIHswfSwgezF9IFppbW1lciwgaW5rbC4gU3RldWVybiIsamE6InswfeODu3sxfeWupOOBruWQiOioiO+8iOeojui+vOOBv++8iSIsa286InswfSwg6rCd7IukIHsxfeqwnCDtlanqs4QgKOyEuOq4iCDtj6ztlagpIixmcjoiVG90YWwgcG91ciB7MH0sIHsxfSBjaGFtYnJlcywgdGF4ZXMgY29tcHJpc2VzIixlczoiVG90YWwgcG9yIHswfSwgezF9IGhhYml0YWNpb25lcywgaW1wdWVzdG9zIGluY2x1aWRvcyJ9LCJUb3RhbCBmb3IgezB9LCB0YXhlcyBpbiI6e2RlOiJHZXNhbXQgZsO8ciB7MH0sIGlua2wuIFN0ZXVlcm4iLGphOiJ7MH3jga7lkIjoqIjvvIjnqI7ovrzjgb/vvIkiLGtvOiJ7MH0g7ZWp6rOEICjshLjquIgg7Y+s7ZWoKSIsZnI6IlRvdGFsIHBvdXIgezB9LCB0YXhlcyBjb21wcmlzZXMiLGVzOiJUb3RhbCBwb3IgezB9LCBpbXB1ZXN0b3MgaW5jbHVpZG9zIn0sIlJvb20gcmF0ZSB7MH0gYSBuaWdodCI6e2RlOiJaaW1tZXJwcmVpcyB7MH0gcHJvIE5hY2h0IixqYToi5a6i5a6k5paZ6YeRIDHms4p7MH0iLGtvOiLqsJ3si6Qg7JqU6riIIDHrsJUgezB9IixmcjoiUHJpeCBkZSBsYSBjaGFtYnJlIDogezB9IHBhciBudWl0IixlczoiVGFyaWZhIGRlIGxhIGhhYml0YWNpw7NuOiB7MH0gcG9yIG5vY2hlIn0sInswfSByYXRlIjp7ZGU6IlRhcmlmIHswfSIsamE6InswfeaWmemHkSIsa286InswfSDsmpTquIgiLGZyOiJUYXJpZiB7MH0iLGVzOiJUYXJpZmEgezB9In0sUmV2aWV3OkR3LCJSZXNlcnZlIHswfSBmcm9tIHsxfSI6e2RlOiJ7MH0gYWIgezF9IHJlc2VydmllcmVuIixqYToiezF944GL44KJezB944KS5LqI57SEIixrbzoiezF967aA7YSwIHswfSDsmIjslb0iLGZyOiJSw6lzZXJ2ZXIgezB9IMOgIHBhcnRpciBkZSB7MX0iLGVzOiJSZXNlcnZhciB7MH0gZGVzZGUgbGFzIHsxfSJ9LFJlc2VydmU6THcsIlJlc2VydmUgezB9Ijp7ZGU6InswfSByZXNlcnZpZXJlbiIsamE6InswfeOCkuS6iOe0hCIsa286InswfSDsmIjslb0iLGZyOiJSw6lzZXJ2ZXIgezB9IixlczoiUmVzZXJ2YXIgezB9In0sInswfSBsZWZ0IGF0IHRoaXMgcmF0ZSI6e2RlOiJOb2NoIHswfSB6dSBkaWVzZW0gUHJlaXMiLGphOiLjgZPjga7mlpnph5Hjgafmrovjgop7MH3lrqQiLGtvOiLsnbQg7JqU6riI7Jy866GcIHswfeqwnCDrgqjsnYwiLGZyOiJQbHVzIHF1ZSB7MH0gw6AgY2UgdGFyaWYiLGVzOiJRdWVkYW4gezB9IGEgZXN0YSB0YXJpZmEifSwiezB9IG3CsiBsYXJnZXIiOntkZToiezB9IG3CsiBncsO2w59lciIsamE6InswfSBtwrLluoPjgYQiLGtvOiJ7MH0gbcKyIOuNlCDrhJPsnYwiLGZyOiJ7MH0gbcKyIGRlIHBsdXMiLGVzOiJ7MH0gbcKyIG3DoXMgZ3JhbmRlIn0sInswfSBtwrIgc21hbGxlciI6e2RlOiJ7MH0gbcKyIGtsZWluZXIiLGphOiJ7MH0gbcKy54ut44GEIixrbzoiezB9IG3CsiDrjZQg7KKB7J2MIixmcjoiezB9IG3CsiBkZSBtb2lucyIsZXM6InswfSBtwrIgbcOhcyBwZXF1ZcOxYSJ9LCJzbGVlcHMgezB9Ijp7ZGU6ImbDvHIgezB9IFBlcnNvbmVuIixqYToiezB95ZCN44G+44GnIixrbzoi7LWc64yAIHswfeuqhSIsZnI6InswfSBwZXJzb25uZXMiLGVzOiJwYXJhIHswfSBwZXJzb25hcyJ9LCJVbmxpa2UgezB9Ijp7ZGU6IkltIFZlcmdsZWljaCB6dSB7MH0iLGphOiJ7MH3jgajmr5TjgbnjgaYiLGtvOiJ7MH0g64yA67mEIixmcjoiUGFyIHJhcHBvcnQgw6AgezB9IixlczoiQSBkaWZlcmVuY2lhIGRlIHswfSJ9LCIxIHJhdGUiOntkZToiMSBUYXJpZiIsamE6IuaWmemHkTHku7YiLGtvOiLsmpTquIggMeqwnCIsZnI6IjEgdGFyaWYiLGVzOiIxIHRhcmlmYSJ9LCJ7MH0gcmF0ZXMiOntkZToiezB9IFRhcmlmZSIsamE6IuaWmemHkXswfeS7tiIsa286IuyalOq4iCB7MH3qsJwiLGZyOiJ7MH0gdGFyaWZzIixlczoiezB9IHRhcmlmYXMifSwiU3RhcnQgdGltZSI6e2RlOiJBbmt1bmZ0c3plaXQiLGphOiLliLDnnYDmmYLliLsiLGtvOiLrj4TssKkg7Iuc6rCEIixmcjoiSGV1cmUgZOKAmWFycml2w6llIixlczoiSG9yYSBkZSBsbGVnYWRhIn0sIkFycml2ZSBhdCI6e2RlOiJBbmt1bmZ0c3plaXQiLGphOiLliLDnnYDmmYLliLsiLGtvOiLrj4TssKkg7Iuc6rCEIixmcjoiSGV1cmUgZOKAmWFycml2w6llIixlczoiSG9yYSBkZSBsbGVnYWRhIn0sInswfeKAk3sxfSDCtyBsZWF2ZSBieSB7Mn0iOntkZToiezB94oCTezF9IMK3IEFicmVpc2UgYmlzIHsyfSIsamE6InswfeKAk3sxfSDCtyB7Mn3jgb7jgafjgavpgIDlrqQiLGtvOiJ7MH3igJN7MX0gwrcgezJ96rmM7KeAIO2HtOyLpCIsZnI6InswfeKAk3sxfSDCtyBkw6lwYXJ0IGF2YW50IHsyfSIsZXM6InswfeKAk3sxfSDCtyBzYWxpZGEgYW50ZXMgZGUgbGFzIHsyfSJ9LCJPdXQgYnkgezB9IGF0IHRoZSBsYXRlc3QuIjp7ZGU6IkFicmVpc2Ugc3DDpHRlc3RlbnMgdW0gezB9LiIsamE6InswfeOBvuOBp+OBq+mAgOWupOOBl+OBpuOBj+OBoOOBleOBhOOAgiIsa286IuuKpuyWtOuPhCB7MH3quYzsp4Ag7Ye07Iuk7ZWY7IS47JqULiIsZnI6IkTDqXBhcnQgYXUgcGx1cyB0YXJkIMOgIHswfS4iLGVzOiJTYWxpZGEgYSBtw6FzIHRhcmRhciBhIGxhcyB7MH0uIn0sIlRoaXMgaG90ZWwgc2VsbHMgbm8gcm9vbXMgYnkgdGhlIGhvdXIgdG9kYXkuIjp7ZGU6IkRpZXNlcyBIb3RlbCBiaWV0ZXQgaGV1dGUga2VpbmUgVGFnZXN6aW1tZXIgYW4uIixqYToi44GT44Gu44Ob44OG44Or44Gv5pys5pel44OH44Kk44Om44O844K544KS6LKp5aOy44GX44Gm44GE44G+44Gb44KT44CCIixrbzoi7J20IO2YuO2FlOydgCDsmKTripgg64yA7Iuk7J2EIO2MkOunpO2VmOyngCDslYrsirXri4jri6QuIixmcjoiQ2V0IGjDtHRlbCBuZSB2ZW5kIHBhcyBkZSBjaGFtYnJlcyDDoCBs4oCZaGV1cmUgYXVqb3VyZOKAmWh1aS4iLGVzOiJFc3RlIGhvdGVsIG5vIHZlbmRlIGhhYml0YWNpb25lcyBwb3IgaG9yYXMgaG95LiJ9LCJUb2RheSdzIHJvb21zIGJ5IHRoZSBob3VyIGFyZSBvdmVyIC0gdGhlIGxhc3Qgc3RhcnQgd2FzIHswfS4iOntkZToiRGllIFRhZ2VzemltbWVyIGbDvHIgaGV1dGUgc2luZCB2b3JiZWkg4oCTIGRlciBsZXR6dGUgQmVnaW5uIHdhciB1bSB7MH0uIixqYToi5pys5pel44Gu44OH44Kk44Om44O844K544Gv57WC5LqG44GX44G+44GX44Gf77yI5pyA57WC6ZaL5aeL44GvezB977yJ44CCIixrbzoi7Jik64qYIOuMgOyLpOydgCDrp4jqsJDrkJjsl4jsirXri4jri6QuIOuniOyngOuniSDsi5zsnpEg7Iuc6rCE7J2AIHswfeyYgOyKteuLiOuLpC4iLGZyOiJMZXMgY2hhbWJyZXMgw6AgbOKAmWhldXJlIGTigJlhdWpvdXJk4oCZaHVpIHNvbnQgdGVybWluw6llcyDigJQgbGUgZGVybmllciBkw6lidXQgw6l0YWl0IMOgIHswfS4iLGVzOiJMYXMgaGFiaXRhY2lvbmVzIHBvciBob3JhcyBkZSBob3kgaGFuIHRlcm1pbmFkbzogZWwgw7psdGltbyBpbmljaW8gZnVlIGEgbGFzIHswfS4ifSwiVG9kYXkncyByb29tcyBieSB0aGUgaG91ciBhcmUgb3Zlci4iOntkZToiRGllIFRhZ2VzemltbWVyIGbDvHIgaGV1dGUgc2luZCB2b3JiZWkuIixqYToi5pys5pel44Gu44OH44Kk44Om44O844K544Gv57WC5LqG44GX44G+44GX44Gf44CCIixrbzoi7Jik64qYIOuMgOyLpOydgCDrp4jqsJDrkJjsl4jsirXri4jri6QuIixmcjoiTGVzIGNoYW1icmVzIMOgIGzigJloZXVyZSBk4oCZYXVqb3VyZOKAmWh1aSBzb250IHRlcm1pbsOpZXMuIixlczoiTGFzIGhhYml0YWNpb25lcyBwb3IgaG9yYXMgZGUgaG95IGhhbiB0ZXJtaW5hZG8uIn0sIlJvb21zIGJ5IHRoZSBob3VyIGdvIG9uIHNhbGUgdG9kYXkgZnJvbSB7MH0uIjp7ZGU6IlRhZ2VzemltbWVyIHNpbmQgaGV1dGUgYWIgezB9IGJ1Y2hiYXIuIixqYToi5pys5pel44Gu44OH44Kk44Om44O844K544GvezB944GL44KJ6LKp5aOy44GX44G+44GZ44CCIixrbzoi7Jik64qYIOuMgOyLpOydgCB7MH3rtoDthLAg7YyQ66ek7ZWp64uI64ukLiIsZnI6IkxlcyBjaGFtYnJlcyDDoCBs4oCZaGV1cmUgc29udCBlbiB2ZW50ZSBhdWpvdXJk4oCZaHVpIGTDqHMgezB9LiIsZXM6IkxhcyBoYWJpdGFjaW9uZXMgcG9yIGhvcmFzIHNhbGVuIGEgbGEgdmVudGEgaG95IGRlc2RlIGxhcyB7MH0uIn0sIlJvb21zIGJ5IHRoZSBob3VyIGFyZSBub3Qgb24gc2FsZSB5ZXQgdG9kYXkuIjp7ZGU6IlRhZ2VzemltbWVyIHNpbmQgaGV1dGUgbm9jaCBuaWNodCBidWNoYmFyLiIsamE6IuacrOaXpeOBruODh+OCpOODpuODvOOCueOBr+OBvuOBoOiyqeWjsuOBl+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuyYpOuKmCDrjIDsi6TsnYAg7JWE7KeBIO2MkOunpCDsoITsnoXri4jri6QuIixmcjoiTGVzIGNoYW1icmVzIMOgIGzigJloZXVyZSBuZSBzb250IHBhcyBlbmNvcmUgZW4gdmVudGUgYXVqb3VyZOKAmWh1aS4iLGVzOiJMYXMgaGFiaXRhY2lvbmVzIHBvciBob3JhcyBhw7puIG5vIGVzdMOhbiBhIGxhIHZlbnRhIGhveS4ifSwiTm8gcm9vbSBzbGVlcHMgYSBwYXJ0eSB0aGlzIHNpemU6IHRoZSBsYXJnZXN0IHNsZWVwcyB7MH0sIHNvIGl0IHRha2VzIHsxfSByb29tcy4iOntkZToiS2VpbiBaaW1tZXIgYmlldGV0IFBsYXR6IGbDvHIgc28gdmllbGUgUGVyc29uZW46IERhcyBncsO2w590ZSBmYXNzdCB7MH0sIGVzIGJyYXVjaHQgYWxzbyB7MX0gWmltbWVyLiIsamE6IuOBk+OBruS6uuaVsOOBp+aziuOBvuOCjOOCi+WuouWupOOBr+OBguOCiuOBvuOBm+OCk+OAguacgOWkp+OBruWuouWupOOBr3swfeWQjeOBvuOBp+OBruOBn+OCgeOAgXsxfeWupOW/heimgeOBp+OBmeOAgiIsa286IuydtCDsnbjsm5DsnbQg66y17J2EIOyImCDsnojripQg6rCd7Iuk7J20IOyXhuyKteuLiOuLpC4g6rCA7J6lIO2BsCDqsJ3si6TsnbQgezB966qF7J2066+A66GcIOqwneyLpCB7MX3qsJzqsIAg7ZWE7JqU7ZWp64uI64ukLiIsZnI6IkF1Y3VuZSBjaGFtYnJlIG7igJlhY2N1ZWlsbGUgYXV0YW50IGRlIHBlcnNvbm5lcyA6IGxhIHBsdXMgZ3JhbmRlIGVuIGFjY3VlaWxsZSB7MH0sIGlsIGZhdXQgZG9uYyB7MX0gY2hhbWJyZXMuIixlczoiTmluZ3VuYSBoYWJpdGFjacOzbiBhbG9qYSBhIHRhbnRhcyBwZXJzb25hczogbGEgbcOhcyBncmFuZGUgZXMgcGFyYSB7MH0sIGFzw60gcXVlIGhhY2VuIGZhbHRhIHsxfSBoYWJpdGFjaW9uZXMuIn0sIkEgcm9vbSBoZXJlIHNsZWVwcyBhdCBtb3N0IHswfSAtIGZvciBtb3JlLCBhc2sgdGhlIGhvdGVsIGRpcmVjdGx5LiI6e2RlOiJFaW4gWmltbWVyIGhpZXIgZmFzc3QgaMO2Y2hzdGVucyB7MH0gUGVyc29uZW4g4oCTIGbDvHIgbWVociB3ZW5kZW4gU2llIHNpY2ggZGlyZWt0IGFuIGRhcyBIb3RlbC4iLGphOiIx5a6k44Gu5a6a5ZOh44Gv5pyA5aSnezB95ZCN44Gn44GZ44CC44Gd44KM5Lul5LiK44Gv44Ob44OG44Or44Gr55u05o6l44GK5ZWP44GE5ZCI44KP44Gb44GP44Gg44GV44GE44CCIixrbzoi6rCd7Iuk64u5IOy1nOuMgCB7MH3rqoXsnoXri4jri6QuIOq3uCDsnbTsg4HsnYAg7Zi47YWU7JeQIOyngeygkSDrrLjsnZjtlZjshLjsmpQuIixmcjoiVW5lIGNoYW1icmUgaWNpIGFjY3VlaWxsZSBhdSBwbHVzIHswfSBwZXJzb25uZXMg4oCUIGF1LWRlbMOgLCBjb250YWN0ZXogZGlyZWN0ZW1lbnQgbOKAmWjDtHRlbC4iLGVzOiJBcXXDrSB1bmEgaGFiaXRhY2nDs24gYWxvamEgY29tbyBtw6F4aW1vIGEgezB9OyBwYXJhIG3DoXMsIGNvbnN1bHRlIGRpcmVjdGFtZW50ZSBhbCBob3RlbC4ifSwiTm8gcm9vbSBoZXJlIHNsZWVwcyBhIHBhcnR5IHRoaXMgc2l6ZS4iOntkZToiSGllciBnaWJ0IGVzIGtlaW4gWmltbWVyIGbDvHIgc28gdmllbGUgUGVyc29uZW4uIixqYToi44GT44Gu5Lq65pWw44Gn5rOK44G+44KM44KL5a6i5a6k44Gv44GC44KK44G+44Gb44KT44CCIixrbzoi7J20IOyduOybkOydtCDrrLXsnYQg7IiYIOyeiOuKlCDqsJ3si6TsnbQg7JeG7Iq164uI64ukLiIsZnI6IkF1Y3VuZSBjaGFtYnJlIGljaSBu4oCZYWNjdWVpbGxlIGF1dGFudCBkZSBwZXJzb25uZXMuIixlczoiQXF1w60gbmluZ3VuYSBoYWJpdGFjacOzbiBhbG9qYSBhIHRhbnRhcyBwZXJzb25hcy4ifSwiVG9kYXkncyByb29tcyBieSB0aGUgaG91ciBhcmUgc29sZCBvdXQuIjp7ZGU6IkRpZSBUYWdlc3ppbW1lciBmw7xyIGhldXRlIHNpbmQgYXVzZ2VidWNodC4iLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrnjga/muoDlrqTjgafjgZnjgIIiLGtvOiLsmKTripgg64yA7Iuk7J2AIOunpOynhOuQmOyXiOyKteuLiOuLpC4iLGZyOiJMZXMgY2hhbWJyZXMgw6AgbOKAmWhldXJlIGTigJlhdWpvdXJk4oCZaHVpIHNvbnQgY29tcGzDqHRlcy4iLGVzOiJMYXMgaGFiaXRhY2lvbmVzIHBvciBob3JhcyBkZSBob3kgZXN0w6FuIGFnb3RhZGFzLiJ9LCJObyByb29tIHR5cGUgaGFzIHswfSBsZWZ0IGZvciB0aG9zZSBkYXRlcy4iOntkZToiRsO8ciBkaWVzZSBEYXRlbiBoYXQga2VpbmUgWmltbWVya2F0ZWdvcmllIG5vY2ggezB9IFppbW1lciBmcmVpLiIsamE6IuOBk+OBruaXpeeoi+OBp3swfeWupOepuuOBhOOBpuOBhOOCi+WuouWupOOCv+OCpOODl+OBr+OBguOCiuOBvuOBm+OCk+OAgiIsa286IuydtCDrgqDsp5zsl5AgezB96rCc6rCAIOuCqOydgCDqsJ3si6Qg7Jyg7ZiV7J20IOyXhuyKteuLiOuLpC4iLGZyOiJBdWN1biB0eXBlIGRlIGNoYW1icmUgbuKAmWVuIGEgZW5jb3JlIHswfSDDoCBjZXMgZGF0ZXMuIixlczoiTmluZ8O6biB0aXBvIGRlIGhhYml0YWNpw7NuIHRpZW5lIHswfSBsaWJyZXMgZW4gZXNhcyBmZWNoYXMuIn0sIkV2ZXJ5IHJvb20gaXMgdGFrZW4gZm9yIHRob3NlIGRhdGVzLiI6e2RlOiJGw7xyIGRpZXNlIERhdGVuIGlzdCBhbGxlcyBhdXNnZWJ1Y2h0LiIsamE6IuOBk+OBruaXpeeoi+OBr+a6gOWupOOBp+OBmeOAgiIsa286IuydtCDrgqDsp5zripQg66qo65OgIOqwneyLpOydtCDsmIjslb3rkJjsl4jsirXri4jri6QuIixmcjoiVG91dCBlc3QgY29tcGxldCDDoCBjZXMgZGF0ZXMuIixlczoiVG9kbyBlc3TDoSBvY3VwYWRvIGVuIGVzYXMgZmVjaGFzLiJ9LCJPbmx5IHJhdGVzIHBhaWQgaW4gYWR2YW5jZSBhcmUgbGVmdCBoZXJlLCBhbmQgdGhpcyBib29rcyBvbmx5IHJvb21zIHBhaWQgYXQgdGhlIGhvdGVsLiI6e2RlOiJIaWVyIHNpbmQgbnVyIG5vY2ggVGFyaWZlIG1pdCBWb3JhdXN6YWhsdW5nIGZyZWksIHVuZCBoaWVyIGxhc3NlbiBzaWNoIG51ciBaaW1tZXIgbWl0IFphaGx1bmcgaW0gSG90ZWwgYnVjaGVuLiIsamE6Iuaui+OBo+OBpuOBhOOCi+OBruOBr+S6i+WJjeaJleOBhOOBruaWmemHkeOBruOBv+OBp+OAgeOBk+OBk+OBp+OBr+ePvuWcsOaJleOBhOOBruWuouWupOOBl+OBi+S6iOe0hOOBp+OBjeOBvuOBm+OCk+OAgiIsa286IuuCqOydgCDsmpTquIjsnYAg7ISg6rKw7KCc67+Q7J2066mwLCDsl6zquLDshJzripQg7ZiE7J6lIOqysOygnCDqsJ3si6Trp4wg7JiI7JW97ZWgIOyImCDsnojsirXri4jri6QuIixmcjoiSWwgbmUgcmVzdGUgaWNpIHF1ZSBkZXMgdGFyaWZzIHByw6lwYXnDqXMsIGV0IGNlIHNlcnZpY2UgbmUgcsOpc2VydmUgcXVlIGRlcyBjaGFtYnJlcyBwYXnDqWVzIMOgIGzigJlow7R0ZWwuIixlczoiU29sbyBxdWVkYW4gdGFyaWZhcyBkZSBwcmVwYWdvLCB5IGFxdcOtIHNvbG8gc2UgcmVzZXJ2YW4gaGFiaXRhY2lvbmVzIGNvbiBwYWdvIGVuIGVsIGhvdGVsLiJ9LCJObyByYXRlIGJvb2tzIHswfSByb29tcyBhdCBvbmNlIC0gYXNrIGZvciBmZXdlci4iOntkZToiS2VpbiBUYXJpZiBlcmxhdWJ0IHswfSBaaW1tZXIgYXVmIGVpbm1hbCDigJMgYml0dGUgd2VuaWdlciB3w6RobGVuLiIsamE6InswfeWupOOCkuS4gOW6puOBq+S6iOe0hOOBp+OBjeOCi+aWmemHkeOBr+OBguOCiuOBvuOBm+OCk+OAguWupOaVsOOCkua4m+OCieOBl+OBpuOBj+OBoOOBleOBhOOAgiIsa286Iu2VnCDrsojsl5Ag6rCd7IukIHswfeqwnOulvCDsmIjslb3tlaAg7IiYIOyeiOuKlCDsmpTquIjsnbQg7JeG7Iq164uI64ukLiDqsJ3si6Qg7IiY66W8IOykhOyXrCDso7zshLjsmpQuIixmcjoiQXVjdW4gdGFyaWYgbmUgcGVybWV0IGRlIHLDqXNlcnZlciB7MH0gY2hhbWJyZXMgw6AgbGEgZm9pcyDigJQgZGVtYW5kZXotZW4gbW9pbnMuIixlczoiTmluZ3VuYSB0YXJpZmEgcGVybWl0ZSByZXNlcnZhciB7MH0gaGFiaXRhY2lvbmVzIGEgbGEgdmV6OiBwaWRhIG1lbm9zLiJ9LCJUaGF0IG1hbnkgcm9vbXMgY2Fubm90IGJlIGJvb2tlZCBhdCBvbmNlIC0gYXNrIGZvciBmZXdlci4iOntkZToiU28gdmllbGUgWmltbWVyIGxhc3NlbiBzaWNoIG5pY2h0IGF1ZiBlaW5tYWwgYnVjaGVuIOKAkyBiaXR0ZSB3ZW5pZ2VyIHfDpGhsZW4uIixqYToi5LiA5bqm44Gr44GT44KM44Gg44GR44Gu5a6k5pWw44Gv5LqI57SE44Gn44GN44G+44Gb44KT44CC5a6k5pWw44KS5rib44KJ44GX44Gm44GP44Gg44GV44GE44CCIixrbzoi7ZWcIOuyiOyXkCDsnbTrp4ztgbzsnZgg6rCd7Iuk7J2AIOyYiOyVve2VoCDsiJgg7JeG7Iq164uI64ukLiDqsJ3si6Qg7IiY66W8IOykhOyXrCDso7zshLjsmpQuIixmcjoiSW1wb3NzaWJsZSBkZSByw6lzZXJ2ZXIgYXV0YW50IGRlIGNoYW1icmVzIMOgIGxhIGZvaXMg4oCUIGRlbWFuZGV6LWVuIG1vaW5zLiIsZXM6Ik5vIHNlIHB1ZWRlbiByZXNlcnZhciB0YW50YXMgaGFiaXRhY2lvbmVzIGEgbGEgdmV6OiBwaWRhIG1lbm9zLiJ9LCJOb3Qgb24gc2FsZSB5ZXQ6IHJvb21zIGFyZSBzb2xkIHVwIHRvIHswfSBkYXlzIGFoZWFkLiI6e2RlOiJOb2NoIG5pY2h0IGJ1Y2hiYXI6IFppbW1lciB3ZXJkZW4gaMO2Y2hzdGVucyB7MH0gVGFnZSBpbSBWb3JhdXMgdmVya2F1ZnQuIixqYToi44G+44Gg6LKp5aOy44GX44Gm44GE44G+44Gb44KT44CC5LqI57SE44GvezB95pel5YmN44GL44KJ5Y+X44GR5LuY44GR44G+44GZ44CCIixrbzoi7JWE7KeBIO2MkOunpCDsoITsnoXri4jri6QuIOqwneyLpOydgCDstZzrjIAgezB97J28IOyghOu2gO2EsCDtjJDrp6Ttlanri4jri6QuIixmcjoiUGFzIGVuY29yZSBlbiB2ZW50ZSA6IGxlcyBjaGFtYnJlcyBzb250IHZlbmR1ZXMganVzcXXigJnDoCB7MH0gam91cnMgw6AgbOKAmWF2YW5jZS4iLGVzOiJBw7puIG5vIGVzdMOhIGEgbGEgdmVudGE6IGxhcyBoYWJpdGFjaW9uZXMgc2UgdmVuZGVuIGNvbiBoYXN0YSB7MH0gZMOtYXMgZGUgYW50ZWxhY2nDs24uIn0sIk5vdCBvbiBzYWxlIHlldDogdGhvc2UgZGF0ZXMgYXJlIHRvbyBmYXIgYWhlYWQuIjp7ZGU6Ik5vY2ggbmljaHQgYnVjaGJhcjogRGllc2UgRGF0ZW4gbGllZ2VuIHp1IHdlaXQgaW4gZGVyIFp1a3VuZnQuIixqYToi44G+44Gg6LKp5aOy44GX44Gm44GE44G+44Gb44KT44CC5pel56iL44GM5YWI44GZ44GO44G+44GZ44CCIixrbzoi7JWE7KeBIO2MkOunpCDsoITsnoXri4jri6QuIOuCoOynnOqwgCDrhIjrrLQg66mJ64uI64ukLiIsZnI6IlBhcyBlbmNvcmUgZW4gdmVudGUgOiBjZXMgZGF0ZXMgc29udCB0cm9wIGxvaW50YWluZXMuIixlczoiQcO6biBubyBlc3TDoSBhIGxhIHZlbnRhOiBlc2FzIGZlY2hhcyBlc3TDoW4gZGVtYXNpYWRvIGxlam9zLiJ9LCJObyBhcnJpdmFscyBvbiB7MH0uIjp7ZGU6IkFtIHswfSBpc3Qga2VpbmUgQW5yZWlzZSBtw7ZnbGljaC4iLGphOiJ7MH3jga/jg4Hjgqfjg4Pjgq/jgqTjg7PjgafjgY3jgb7jgZvjgpPjgIIiLGtvOiJ7MH3sl5DripQg7LK07YGs7J247ZWgIOyImCDsl4bsirXri4jri6QuIixmcjoiUGFzIGTigJlhcnJpdsOpZSBsZSB7MH0uIixlczoiTm8gc2UgYWRtaXRlbiBsbGVnYWRhcyBlbCB7MH0uIn0sIk5vIGFycml2YWxzIHRoYXQgZGF5LiI6e2RlOiJBbiBkaWVzZW0gVGFnIGlzdCBrZWluZSBBbnJlaXNlIG3DtmdsaWNoLiIsamE6IuOBk+OBruaXpeOBr+ODgeOCp+ODg+OCr+OCpOODs+OBp+OBjeOBvuOBm+OCk+OAgiIsa286IuydtCDrgqDsnYAg7LK07YGs7J247ZWgIOyImCDsl4bsirXri4jri6QuIixmcjoiUGFzIGTigJlhcnJpdsOpZSBjZSBqb3VyLWzDoC4iLGVzOiJObyBzZSBhZG1pdGVuIGxsZWdhZGFzIGVzZSBkw61hLiJ9LCJObyBkZXBhcnR1cmVzIG9uIHswfS4iOntkZToiQW0gezB9IGlzdCBrZWluZSBBYnJlaXNlIG3DtmdsaWNoLiIsamE6InswfeOBr+ODgeOCp+ODg+OCr+OCouOCpuODiOOBp+OBjeOBvuOBm+OCk+OAgiIsa286InswfeyXkOuKlCDssrTtgazslYTsm4PtlaAg7IiYIOyXhuyKteuLiOuLpC4iLGZyOiJQYXMgZGUgZMOpcGFydCBsZSB7MH0uIixlczoiTm8gc2UgYWRtaXRlbiBzYWxpZGFzIGVsIHswfS4ifSwiTm8gZGVwYXJ0dXJlcyB0aGF0IGRheS4iOntkZToiQW4gZGllc2VtIFRhZyBpc3Qga2VpbmUgQWJyZWlzZSBtw7ZnbGljaC4iLGphOiLjgZPjga7ml6Xjga/jg4Hjgqfjg4Pjgq/jgqLjgqbjg4jjgafjgY3jgb7jgZvjgpPjgIIiLGtvOiLsnbQg64Kg7J2AIOyytO2BrOyVhOybg+2VoCDsiJgg7JeG7Iq164uI64ukLiIsZnI6IlBhcyBkZSBkw6lwYXJ0IGNlIGpvdXItbMOgLiIsZXM6Ik5vIHNlIGFkbWl0ZW4gc2FsaWRhcyBlc2UgZMOtYS4ifSwiVGhlIHN0YXkgaGFzIHRvIGJlIGF0IGxlYXN0IHswfSBuaWdodHMuIjp7ZGU6IkRlciBBdWZlbnRoYWx0IG11c3MgbWluZGVzdGVucyB7MH0gTsOkY2h0ZSBkYXVlcm4uIixqYToiezB95rOK5Lul5LiK44Gu5rue5Zyo44GM5b+F6KaB44Gn44GZ44CCIixrbzoi7LWc7IaMIHswfeuwlSDsnbTsg4Eg66i466y865+s7JW8IO2VqeuLiOuLpC4iLGZyOiJMZSBzw6lqb3VyIGRvaXQgZHVyZXIgYXUgbW9pbnMgezB9IG51aXRzLiIsZXM6IkxhIGVzdGFuY2lhIGRlYmUgc2VyIGRlIGFsIG1lbm9zIHswfSBub2NoZXMuIn0sIlRoZSBzdGF5IGlzIHRvbyBzaG9ydC4iOntkZToiRGVyIEF1ZmVudGhhbHQgaXN0IHp1IGt1cnouIixqYToi5rue5Zyo5pel5pWw44GM55+t44GZ44GO44G+44GZ44CCIixrbzoi7IiZ67CVIOq4sOqwhOydtCDrhIjrrLQg7Ken7Iq164uI64ukLiIsZnI6IkxlIHPDqWpvdXIgZXN0IHRyb3AgY291cnQuIixlczoiTGEgZXN0YW5jaWEgZXMgZGVtYXNpYWRvIGNvcnRhLiJ9LCJUaGUgc3RheSBjYW4gYmUgYXQgbW9zdCB7MH0gbmlnaHRzLiI6e2RlOiJEZXIgQXVmZW50aGFsdCBkYXJmIGjDtmNoc3RlbnMgezB9IE7DpGNodGUgZGF1ZXJuLiIsamE6Iua7nuWcqOOBr+acgOWkp3swfeaziuOBvuOBp+OBp+OBmeOAgiIsa286Iuy1nOuMgCB7MH3rsJXquYzsp4Drp4wg66i466y8IOyImCDsnojsirXri4jri6QuIixmcjoiTGUgc8Opam91ciBwZXV0IGR1cmVyIGF1IHBsdXMgezB9IG51aXRzLiIsZXM6IkxhIGVzdGFuY2lhIHB1ZWRlIHNlciBkZSB7MH0gbm9jaGVzIGNvbW8gbcOheGltby4ifSwiVGhlIHN0YXkgaXMgdG9vIGxvbmcuIjp7ZGU6IkRlciBBdWZlbnRoYWx0IGlzdCB6dSBsYW5nLiIsamE6Iua7nuWcqOaXpeaVsOOBjOmVt+OBmeOBjuOBvuOBmeOAgiIsa286IuyImeuwlSDquLDqsITsnbQg64SI66y0IOq5geuLiOuLpC4iLGZyOiJMZSBzw6lqb3VyIGVzdCB0cm9wIGxvbmcuIixlczoiTGEgZXN0YW5jaWEgZXMgZGVtYXNpYWRvIGxhcmdhLiJ9LCJUaG9zZSBkYXRlcyBoYXZlIGEgYm9va2luZyBydWxlIC0gdHJ5IG90aGVyIGRhdGVzLiI6e2RlOiJGw7xyIGRpZXNlIERhdGVuIGdpbHQgZWluZSBCdWNodW5nc3JlZ2VsIOKAkyB2ZXJzdWNoZW4gU2llIGFuZGVyZSBEYXRlbi4iLGphOiLjgZPjga7ml6XnqIvjgavjga/kuojntITmnaHku7bjgYzjgYLjgorjgb7jgZnjgILliKXjga7ml6XnqIvjgpLjgYroqabjgZfjgY/jgaDjgZXjgYTjgIIiLGtvOiLsnbQg64Kg7Kec7JeQ64qUIOyYiOyVvSDsoJztlZzsnbQg7J6I7Iq164uI64ukLiDri6Trpbgg64Kg7Kec66W8IOyEoO2Dne2VtCDrs7TshLjsmpQuIixmcjoiQ2VzIGRhdGVzIHNvbnQgc291bWlzZXMgw6AgdW5lIHLDqGdsZSBkZSByw6lzZXJ2YXRpb24g4oCUIGVzc2F5ZXogZOKAmWF1dHJlcyBkYXRlcy4iLGVzOiJFc2FzIGZlY2hhcyB0aWVuZW4gdW5hIHJlc3RyaWNjacOzbiBkZSByZXNlcnZhOiBwcnVlYmUgb3RyYXMgZmVjaGFzLiJ9LCJOb3Qgb24gc2FsZSBmb3IgdGhvc2UgZGF0ZXMuIjp7ZGU6IkbDvHIgZGllc2UgRGF0ZW4gbmljaHQgYnVjaGJhci4iLGphOiLjgZPjga7ml6XnqIvjga/osqnlo7LjgZfjgabjgYTjgb7jgZvjgpPjgIIiLGtvOiLsnbQg64Kg7Kec7JeQ64qUIO2MkOunpO2VmOyngCDslYrsirXri4jri6QuIixmcjoiUGFzIGVuIHZlbnRlIMOgIGNlcyBkYXRlcy4iLGVzOiJObyBlc3TDoSBhIGxhIHZlbnRhIHBhcmEgZXNhcyBmZWNoYXMuIn0sIlRoaXMgaG90ZWwncyByb29tcyBhcmUgbm90IHNvbGQgaGVyZS4iOntkZToiRGllIFppbW1lciBkaWVzZXMgSG90ZWxzIHdlcmRlbiBoaWVyIG5pY2h0IHZlcmthdWZ0LiIsamE6IuOBk+OBruODm+ODhuODq+OBruWuouWupOOBr+OBk+OBk+OBp+OBr+iyqeWjsuOBl+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuydtCDtmLjthZTsnZgg6rCd7Iuk7J2AIOyXrOq4sOyEnCDtjJDrp6TtlZjsp4Ag7JWK7Iq164uI64ukLiIsZnI6IkxlcyBjaGFtYnJlcyBkZSBjZXQgaMO0dGVsIG5lIHNvbnQgcGFzIHZlbmR1ZXMgaWNpLiIsZXM6IkxhcyBoYWJpdGFjaW9uZXMgZGUgZXN0ZSBob3RlbCBubyBzZSB2ZW5kZW4gYXF1w60uIn0sIlRoaXMgaG90ZWwncyByb29tcyBjb3VsZCBub3QgYmUgbG9va2VkIHVwIGp1c3Qgbm93IC0gdHJ5IGFnYWluIGluIGEgbW9tZW50LiI6e2RlOiJEaWUgWmltbWVyIGRpZXNlcyBIb3RlbHMga29ubnRlbiBnZXJhZGUgbmljaHQgYWJnZXJ1ZmVuIHdlcmRlbiDigJMgdmVyc3VjaGVuIFNpZSBlcyBnbGVpY2ggbm9jaCBlaW5tYWwuIixqYToi44GT44Gu44Ob44OG44Or44Gu5a6i5a6k44KS5LuK44Gv5Y+W5b6X44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CC5bCR44GX5b6M44Gr44KC44GG5LiA5bqm44GK6Kmm44GX44GP44Gg44GV44GE44CCIixrbzoi7KeA6riI7J2AIOydtCDtmLjthZTsnZgg6rCd7Iuk7J2EIOyhsO2ajO2VmOyngCDrqrvtlojsirXri4jri6QuIOyeoOyLnCDtm4Qg64uk7IucIOyLnOuPhO2VtCDso7zshLjsmpQuIixmcjoiTGVzIGNoYW1icmVzIGRlIGNldCBow7R0ZWwgbuKAmW9udCBwYXMgcHUgw6p0cmUgY29uc3VsdMOpZXMgcG91ciBs4oCZaW5zdGFudCDigJQgcsOpZXNzYXlleiBkYW5zIHVuIG1vbWVudC4iLGVzOiJObyBzZSBwdWRpZXJvbiBjb25zdWx0YXIgbGFzIGhhYml0YWNpb25lcyBkZSBlc3RlIGhvdGVsIGFob3JhIG1pc21vOiBpbnTDqW50ZWxvIGRlIG51ZXZvIGVuIHVuIG1vbWVudG8uIn0sIlRoZSBwcmljZSBvciB0ZXJtcyBjaGFuZ2VkIGZyb20gd2hhdCB5b3Ugd2VyZSBzaG93biwgc28gaXQgd2FzIG5vdCBib29rZWQgYXQgdGhlIG5ldyBvbmVzLiI6e2RlOiJQcmVpcyBvZGVyIEJlZGluZ3VuZ2VuIGhhYmVuIHNpY2ggZ2VnZW7DvGJlciBkZXIgQW56ZWlnZSBnZcOkbmRlcnQsIGRhaGVyIHd1cmRlIG5pY2h0IHp1IGRlbiBuZXVlbiBnZWJ1Y2h0LiIsamE6IuihqOekuuOBleOCjOOBn+aWmemHkeOBvuOBn+OBr+adoeS7tuOBjOWkieOCj+OBo+OBn+OBn+OCgeOAgeaWsOOBl+OBhOadoeS7tuOBp+OBr+S6iOe0hOOBl+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuuztOyXrCDrk5zrprAg7JqU6riI7J2064KYIOyhsOqxtOydtCDrsJTrgIzslrQg7IOIIOyhsOqxtOycvOuhnOuKlCDsmIjslb3tlZjsp4Ag7JWK7JWY7Iq164uI64ukLiIsZnI6IkxlIHByaXggb3UgbGVzIGNvbmRpdGlvbnMgb250IGNoYW5nw6kgcGFyIHJhcHBvcnQgw6AgY2UgcXVpIHZvdXMgYSDDqXTDqSBtb250csOpIDogcmllbiBu4oCZYSDDqXTDqSByw6lzZXJ2w6kgYXV4IG5vdXZlbGxlcyBjb25kaXRpb25zLiIsZXM6IkVsIHByZWNpbyBvIGxhcyBjb25kaWNpb25lcyBjYW1iaWFyb24gcmVzcGVjdG8gYSBsbyBxdWUgc2UgbGUgbW9zdHLDsywgYXPDrSBxdWUgbm8gc2UgcmVzZXJ2w7MgY29uIGxvcyBudWV2b3MuIn0sIlRoaXMgc3RheSB3YXMgaGVsZCBiYWNrIGJ5IGEgYm9va2luZyBsaW1pdCBmb3Igbm93IC0gYm9vayBmZXdlciwgb3IgdHJ5IGxhdGVyLiI6e2RlOiJEaWVzZXIgQXVmZW50aGFsdCB3aXJkIHZvcmVyc3QgZHVyY2ggZWluIEJ1Y2h1bmdzbGltaXQgenVyw7xja2dlaGFsdGVuIOKAkyBidWNoZW4gU2llIHdlbmlnZXIgb2RlciB2ZXJzdWNoZW4gU2llIGVzIHNww6R0ZXIuIixqYToi44GT44Gu5rue5Zyo44Gv5LqI57SE5LiK6ZmQ44Gu44Gf44KB54++5Zyo44GK5Y+X44GR44Gn44GN44G+44Gb44KT44CC5pWw44KS5rib44KJ44GZ44GL44CB5b6M44Gn44GK6Kmm44GX44GP44Gg44GV44GE44CCIixrbzoi7J20IOyImeuwleydgCDsmIjslb0g7ZWc64+E66GcIOyduO2VtCDsp4DquIjsnYAg7JiI7JW965CY7KeAIOyViuyVmOyKteuLiOuLpC4g7IiY65+J7J2EIOykhOydtOqxsOuCmCDrgpjspJHsl5Ag64uk7IucIOyLnOuPhO2VtCDso7zshLjsmpQuIixmcjoiQ2Ugc8Opam91ciBlc3QgYmxvcXXDqSBwb3VyIGzigJlpbnN0YW50IHBhciB1bmUgbGltaXRlIGRlIHLDqXNlcnZhdGlvbiDigJQgcsOpc2VydmV6IG1vaW5zLCBvdSByw6llc3NheWV6IHBsdXMgdGFyZC4iLGVzOiJFc3RhIGVzdGFuY2lhIHF1ZWTDsyByZXRlbmlkYSBwb3IgdW4gbMOtbWl0ZSBkZSByZXNlcnZhczogcmVzZXJ2ZSBtZW5vcyBvIGludMOpbnRlbG8gbcOhcyB0YXJkZS4ifSwiQ2hlY2staW4gaGFzIHBhc3NlZCAtIHRvZGF5IGlzIHswfS4iOntkZToiRGVyIEFucmVpc2V0YWcgaXN0IHZvcmJlaSDigJMgaGV1dGUgaXN0IHswfS4iLGphOiLjg4Hjgqfjg4Pjgq/jgqTjg7Pml6Xjga/pgY7jgY7jgabjgYTjgb7jgZnjgILmnKzml6Xjga97MH3jgafjgZnjgIIiLGtvOiLssrTtgazsnbgg64Kg7Kec6rCAIOyngOuCrOyKteuLiOuLpC4g7Jik64qY7J2AIHswfeyeheuLiOuLpC4iLGZyOiJMYSBkYXRlIGTigJlhcnJpdsOpZSBlc3QgcGFzc8OpZSDigJQgbm91cyBzb21tZXMgbGUgezB9LiIsZXM6IkxhIGZlY2hhIGRlIGxsZWdhZGEgeWEgcGFzw7M6IGhveSBlcyB7MH0uIn0sIkNoZWNrLWluIGhhcyBwYXNzZWQuIjp7ZGU6IkRlciBBbnJlaXNldGFnIGlzdCB2b3JiZWkuIixqYToi44OB44Kn44OD44Kv44Kk44Oz5pel44Gv6YGO44GO44Gm44GE44G+44GZ44CCIixrbzoi7LK07YGs7J24IOuCoOynnOqwgCDsp4DrgqzsirXri4jri6QuIixmcjoiTGEgZGF0ZSBk4oCZYXJyaXbDqWUgZXN0IHBhc3PDqWUuIixlczoiTGEgZmVjaGEgZGUgbGxlZ2FkYSB5YSBwYXPDsy4ifSwiQ2hlY2stb3V0IGhhcyB0byBiZSBhZnRlciBjaGVjay1pbiAtIG9uZSBuaWdodCBtZWFucyBsZWF2aW5nIHRoZSBuZXh0IGRheS4iOntkZToiRGllIEFicmVpc2UgbXVzcyBuYWNoIGRlciBBbnJlaXNlIGxpZWdlbiDigJMgZWluZSBOYWNodCBoZWnDn3QgQWJyZWlzZSBhbSBuw6RjaHN0ZW4gVGFnLiIsamE6IuODgeOCp+ODg+OCr+OCouOCpuODiOOBr+ODgeOCp+ODg+OCr+OCpOODs+OCiOOCiuW+jOOBruaXpeOBq+OBl+OBpuOBj+OBoOOBleOBhO+8iDHms4rjgarjgonnv4zml6XvvInjgIIiLGtvOiLssrTtgazslYTsm4PsnYAg7LK07YGs7J24IOydtO2bhOyXrOyVvCDtlanri4jri6QuIDHrsJXsnbTrqbQg64uk7J2MIOuCoCDssrTtgazslYTsm4PsnoXri4jri6QuIixmcjoiTGUgZMOpcGFydCBkb2l0IHN1aXZyZSBs4oCZYXJyaXbDqWUg4oCUIHVuZSBudWl0LCBj4oCZZXN0IHBhcnRpciBsZSBsZW5kZW1haW4uIixlczoiTGEgc2FsaWRhIGRlYmUgc2VyIHBvc3RlcmlvciBhIGxhIGxsZWdhZGE6IHVuYSBub2NoZSBzaWduaWZpY2Egc2FsaXIgYWwgZMOtYSBzaWd1aWVudGUuIn0sIkF0IG1vc3QgezB9IG5pZ2h0cyBjYW4gYmUgYm9va2VkIGF0IG9uY2UuIjp7ZGU6IkjDtmNoc3RlbnMgezB9IE7DpGNodGUgbGFzc2VuIHNpY2ggYXVmIGVpbm1hbCBidWNoZW4uIixqYToi5LiA5bqm44Gr5LqI57SE44Gn44GN44KL44Gu44Gv5pyA5aSnezB95rOK44Gn44GZ44CCIixrbzoi7ZWcIOuyiOyXkCDstZzrjIAgezB967CV6rmM7KeAIOyYiOyVve2VoCDsiJgg7J6I7Iq164uI64ukLiIsZnI6IkF1IHBsdXMgezB9IG51aXRzIHBldXZlbnQgw6p0cmUgcsOpc2VydsOpZXMgw6AgbGEgZm9pcy4iLGVzOiJTZSBwdWVkZW4gcmVzZXJ2YXIgY29tbyBtw6F4aW1vIHswfSBub2NoZXMgYSBsYSB2ZXouIn0sIlRoYXQgbWFueSBuaWdodHMgY2Fubm90IGJlIGJvb2tlZCBhdCBvbmNlLiI6e2RlOiJTbyB2aWVsZSBOw6RjaHRlIGxhc3NlbiBzaWNoIG5pY2h0IGF1ZiBlaW5tYWwgYnVjaGVuLiIsamE6IuS4gOW6puOBq+OBk+OCjOOBoOOBkeOBruaziuaVsOOBr+S6iOe0hOOBp+OBjeOBvuOBm+OCk+OAgiIsa286Iu2VnCDrsojsl5Ag7J2066eM7YG87J2YIOuwleyImOuKlCDsmIjslb3tlaAg7IiYIOyXhuyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIHLDqXNlcnZlciBhdXRhbnQgZGUgbnVpdHMgw6AgbGEgZm9pcy4iLGVzOiJObyBzZSBwdWVkZW4gcmVzZXJ2YXIgdGFudGFzIG5vY2hlcyBhIGxhIHZlei4ifSwiQ2hvb3NlIHRoZSBkYXRlcyBhbmQgdGhlIGd1ZXN0cyBhZ2Fpbi4iOntkZToiV8OkaGxlbiBTaWUgRGF0ZW4gdW5kIEfDpHN0ZSBiaXR0ZSBuZXUuIixqYToi5pel56iL44Go5Lq65pWw44KS6YG444Gz55u044GX44Gm44GP44Gg44GV44GE44CCIixrbzoi64Kg7Kec7JmAIOyduOybkOydhCDri6Tsi5wg7ISg7YOd7ZW0IOyjvOyEuOyalC4iLGZyOiJDaG9pc2lzc2V6IMOgIG5vdXZlYXUgbGVzIGRhdGVzIGV0IGxlIG5vbWJyZSBkZSBwZXJzb25uZXMuIixlczoiVnVlbHZhIGEgZWxlZ2lyIGxhcyBmZWNoYXMgeSBsb3MgaHXDqXNwZWRlcy4ifSwiVGhvc2UgZGF0ZXMgY2Fubm90IGJlIGJvb2tlZCBoZXJlLiI6e2RlOiJEaWVzZSBEYXRlbiBzaW5kIGhpZXIgbmljaHQgYnVjaGJhci4iLGphOiLjgZPjga7ml6XnqIvjga/jgZPjgZPjgafjga/kuojntITjgafjgY3jgb7jgZvjgpPjgIIiLGtvOiLsnbQg64Kg7Kec64qUIOyXrOq4sOyEnCDsmIjslb3tlaAg7IiYIOyXhuyKteuLiOuLpC4iLGZyOiJDZXMgZGF0ZXMgbmUgcGV1dmVudCBwYXMgw6p0cmUgcsOpc2VydsOpZXMgaWNpLiIsZXM6IkVzYXMgZmVjaGFzIG5vIHNlIHB1ZWRlbiByZXNlcnZhciBhcXXDrS4ifSwiTm8gcm9vbSBoZXJlIHNsZWVwcyB7MH0iOntkZToiSGllciBnaWJ0IGVzIGtlaW4gWmltbWVyIGbDvHIgezB9IFBlcnNvbmVuIixqYToiezB95ZCN44Gn5rOK44G+44KM44KL5a6i5a6k44Gv44GC44KK44G+44Gb44KTIixrbzoiezB966qF7J20IOusteydhCDqsJ3si6TsnbQg7JeG7Iq164uI64ukIixmcjoiQXVjdW5lIGNoYW1icmUgaWNpIHBvdXIgezB9IHBlcnNvbm5lcyIsZXM6IkFxdcOtIG5vIGhheSBoYWJpdGFjacOzbiBwYXJhIHswfSBwZXJzb25hcyJ9LCJUaGUgbGFyZ2VzdCBzbGVlcHMgezB9LiBCb29rIHsxfSByb29tcywgZWFjaCBmb3IgdXAgdG8gezJ9LCBhbmQgdGhlIHszfSBvZiB5b3UgZml0LiI6e2RlOiJEYXMgZ3LDtsOfdGUgZmFzc3QgezB9IFBlcnNvbmVuLiBCdWNoZW4gU2llIHsxfSBaaW1tZXIgbWl0IGplIGJpcyB6dSB7Mn0gUGVyc29uZW4sIGRhbm4gZmluZGVuIGFsbGUgezN9IFBsYXR6LiIsamE6IuacgOWkp+OBruWuouWupOOBr3swfeWQjeOBvuOBp+OBp+OBmeOAgjHlrqR7Mn3lkI3jgb7jgafjgad7MX3lrqTkuojntITjgZnjgozjgbDjgIF7M33lkI3lhajlk6HjgYzms4rjgb7jgozjgb7jgZnjgIIiLGtvOiLqsIDsnqUg7YGwIOqwneyLpOydgCB7MH3rqoXquYzsp4DsnoXri4jri6QuIOqwneyLpOuLuSDstZzrjIAgezJ966qF7Jy866GcIHsxfeqwnOulvCDsmIjslb3tlZjrqbQgezN966qFIOuqqOuRkCDrrLXsnYQg7IiYIOyeiOyKteuLiOuLpC4iLGZyOiJMYSBwbHVzIGdyYW5kZSBhY2N1ZWlsbGUgezB9IHBlcnNvbm5lcy4gUsOpc2VydmV6IHsxfSBjaGFtYnJlcyBkZSB7Mn0gcGVyc29ubmVzIGF1IHBsdXMsIGV0IHZvdXMgc2VyZXogbG9nw6lzIHRvdXMgbGVzIHszfS4iLGVzOiJMYSBtw6FzIGdyYW5kZSBlcyBwYXJhIHswfS4gUmVzZXJ2ZSB7MX0gaGFiaXRhY2lvbmVzIGRlIGhhc3RhIHsyfSBjYWRhIHVuYSB5IGNhYmVuIGxvcyB7M30uIn0sIlRyeSBmZXdlciBndWVzdHMgaW4gZWFjaCByb29tLiI6e2RlOiJWZXJzdWNoZW4gU2llIHdlbmlnZXIgR8Okc3RlIHBybyBaaW1tZXIuIixqYToiMeWupOOBguOBn+OCiuOBruS6uuaVsOOCkua4m+OCieOBl+OBpuOBv+OBpuOBj+OBoOOBleOBhOOAgiIsa286IuqwneyLpOuLuSDsnbjsm5DsnYQg7KSE7JesIOuztOyEuOyalC4iLGZyOiJFc3NheWV6IG1vaW5zIGRlIHBlcnNvbm5lcyBwYXIgY2hhbWJyZS4iLGVzOiJQcnVlYmUgY29uIG1lbm9zIGh1w6lzcGVkZXMgcG9yIGhhYml0YWNpw7NuLiJ9LCJCb29rIHswfSByb29tcywgezF9IGluIGVhY2giOntkZToiezB9IFppbW1lciBidWNoZW4sIGplIHsxfSIsamE6InswfeWupOS6iOe0hO+8iDHlrqR7MX3lkI3vvIkiLGtvOiLqsJ3si6QgezB96rCcIOyYiOyVvSwg6rCd7Iuk64u5IHsxfeuqhSIsZnI6IlLDqXNlcnZlciB7MH0gY2hhbWJyZXMsIHsxfSBwYXIgY2hhbWJyZSIsZXM6IlJlc2VydmFyIHswfSBoYWJpdGFjaW9uZXMsIHsxfSBlbiBjYWRhIHVuYSJ9LCJBcnJpdmUgYW5vdGhlciBkYXkgwrcgezB9IGZyb20iOntkZToiQW5kZXJlciBBbnJlaXNldGFnIMK3IFByZWlzZSBmw7xyIHswfSIsamE6IuWIpeOBruaXpeOBq+ODgeOCp+ODg+OCr+OCpOODsyDCtyB7MH3jga7mnIDlrokiLGtvOiLri6Trpbgg64KgIOyytO2BrOyduCDCtyB7MH0g7LWc7KCA6rCAIixmcjoiQXV0cmUgam91ciBk4oCZYXJyaXbDqWUgwrcgcHJpeCBwb3VyIHswfSIsZXM6Ik90cm8gZMOtYSBkZSBsbGVnYWRhIMK3IHByZWNpbyBwb3IgezB9In0sIkdyZWVuOiB0aGUgbG93ZXN0Ijp7ZGU6Ikdyw7xuOiBhbSBnw7xuc3RpZ3N0ZW4iLGphOiLnt5HvvJrmnIDlrokiLGtvOiLstIjroZ3sg4k6IOy1nOyggOqwgCIsZnI6IlZlcnQgOiBsZSBtb2lucyBjaGVyIixlczoiVmVyZGU6IGVsIG3DoXMgYmFyYXRvIn0sIk5lYXJieSBhcnJpdmFsIGRhdGVzIjp7ZGU6IkFucmVpc2V0YWdlIGluIGRlciBOw6RoZSIsamE6Iui/keOBhOaXpeeoiyIsa286IuqwgOq5jOyatCDssrTtgazsnbgg64Kg7KecIixmcjoiRGF0ZXMgZOKAmWFycml2w6llIHByb2NoZXMiLGVzOiJGZWNoYXMgZGUgbGxlZ2FkYSBjZXJjYW5hcyJ9LCJBcnJpdmUgezB9Ijp7ZGU6IkFucmVpc2UgezB9IixqYToiezB944OB44Kn44OD44Kv44Kk44OzIixrbzoiezB9IOyytO2BrOyduCIsZnI6IkFycml2w6llIHswfSIsZXM6IkxsZWdhZGEgezB9In0sIiwgbm90aGluZyBsZWZ0Ijp7ZGU6IiwgYXVzZ2VidWNodCIsamE6IuOAgea6gOWupCIsa286Iiwg66ek7KeEIixmcjoiLCBjb21wbGV0IixlczoiLCBjb21wbGV0byJ9LCIsIHRoZSBsb3dlc3QiOntkZToiLCBhbSBnw7xuc3RpZ3N0ZW4iLGphOiLjgIHmnIDlrokiLGtvOiIsIOy1nOyggOqwgCIsZnI6IiwgbGUgbW9pbnMgY2hlciIsZXM6IiwgZWwgbcOhcyBiYXJhdG8ifSxGdWxsOkJ3LExvd2VzdDpIdywiSG93IGxvbmciOntkZToiQXVmZW50aGFsdCIsamE6IuWIqeeUqOaWueazlSIsa286IuydtOyaqSDrsKnsi50iLGZyOiJUeXBlIGRlIHPDqWpvdXIiLGVzOiJUaXBvIGRlIGVzdGFuY2lhIn0sT3Zlcm5pZ2h0OkZ3LCJCeSB0aGUgaG91ciDCtyB0b2RheSI6e2RlOiJUYWdlc3ppbW1lciDCtyBoZXV0ZSIsamE6IuODh+OCpOODpuODvOOCuSDCtyDmnKzml6UiLGtvOiLrjIDsi6Qgwrcg7Jik64qYIixmcjoiw4AgbOKAmWhldXJlIMK3IGF1am91cmTigJlodWkiLGVzOiJQb3IgaG9yYXMgwrcgaG95In0sIkxvb2tpbmcgdXAgcm9vbXMiOntkZToiWmltbWVyIHdlcmRlbiBnZXN1Y2h0IixqYToi5a6i5a6k44KS5qSc57Si5LitIixrbzoi6rCd7IukIOyhsO2ajCDspJEiLGZyOiJSZWNoZXJjaGUgZGVzIGNoYW1icmVzIixlczoiQnVzY2FuZG8gaGFiaXRhY2lvbmVzIn0sIlNlZSByb29tcyBmb3IgYSBuaWdodCI6e2RlOiJaaW1tZXIgZsO8ciBlaW5lIE5hY2h0IGFuc2VoZW4iLGphOiLlrr/ms4rjga7lrqLlrqTjgpLopovjgosiLGtvOiLsiJnrsJUg6rCd7IukIOuztOq4sCIsZnI6IlZvaXIgbGVzIGNoYW1icmVzIHBvdXIgdW5lIG51aXQiLGVzOiJWZXIgaGFiaXRhY2lvbmVzIHBhcmEgdW5hIG5vY2hlIn0sIkJ5IHRoZSBob3VyLCB0b2RheSI6e2RlOiJUYWdlc3ppbW1lciwgaGV1dGUiLGphOiLmnKzml6Xjga7jg4fjgqTjg6bjg7zjgrkiLGtvOiLsmKTripgg64yA7IukIixmcjoiw4AgbOKAmWhldXJlLCBhdWpvdXJk4oCZaHVpIixlczoiUG9yIGhvcmFzLCBob3kifSwiQ2hvb3NlIHlvdXIgcm9vbSI6e2RlOiJXw6RobGVuIFNpZSBJaHIgWmltbWVyIixqYToi5a6i5a6k44KS6YG444G2Iixrbzoi6rCd7IukIOyEoO2DnSIsZnI6IkNob2lzaXNzZXogdm90cmUgY2hhbWJyZSIsZXM6IkVsaWphIHN1IGhhYml0YWNpw7NuIn0sInswfSDCtyBwaWNrIHdoZW4geW91IGFycml2ZSDCtyB0YXhlcyBpbiI6e2RlOiJ7MH0gwrcgQW5rdW5mdHN6ZWl0IHfDpGhsZW4gwrcgaW5rbC4gU3RldWVybiIsamE6InswfSDCtyDliLDnnYDmmYLliLvjgpLpgbjmip4gwrcg56iO6L6844G/IixrbzoiezB9IMK3IOuPhOywqSDsi5zqsIQg7ISg7YOdIMK3IOyEuOq4iCDtj6ztlagiLGZyOiJ7MH0gwrcgY2hvaXNpc3NleiBs4oCZaGV1cmUgZOKAmWFycml2w6llIMK3IHRheGVzIGNvbXByaXNlcyIsZXM6InswfSDCtyBlbGlqYSBsYSBob3JhIGRlIGxsZWdhZGEgwrcgaW1wdWVzdG9zIGluY2x1aWRvcyJ9LCIsIHswfSByYXRlcyI6e2RlOiIsIHswfSBUYXJpZmUiLGphOiLjgIHmlpnph5F7MH3ku7YiLGtvOiIsIOyalOq4iCB7MH3qsJwiLGZyOiIsIHswfSB0YXJpZnMiLGVzOiIsIHswfSB0YXJpZmFzIn0sIiDCtyBwcmljZXMgZm9yIHswfSwgdGF4ZXMgaW4iOntkZToiIMK3IFByZWlzZSBmw7xyIHswfSwgaW5rbC4gU3RldWVybiIsamE6IiDCtyB7MH3jga7nqI7ovrzjgb/mlpnph5EiLGtvOiIgwrcgezB9IOyEuOq4iCDtj6ztlagg7JqU6riIIixmcjoiIMK3IHByaXggcG91ciB7MH0sIHRheGVzIGNvbXByaXNlcyIsZXM6IiDCtyBwcmVjaW9zIHBhcmEgezB9LCBpbXB1ZXN0b3MgaW5jbHVpZG9zIn0sIkdvb2QgdG8ga25vdyI6e2RlOiJHdXQgenUgd2lzc2VuIixqYToi44GU5qGI5YaFIixrbzoi7JWM7JWEIOuRkOyEuOyalCIsZnI6IkJvbiDDoCBzYXZvaXIiLGVzOiJJbmZvcm1hY2nDs24gw7p0aWwifSwiQWRkLW9ucyBhbmQgZXhwZXJpZW5jZXMiOntkZToiRXh0cmFzIHVuZCBFcmxlYm5pc3NlIixqYToi44Kq44OX44K344On44Oz44Go5L2T6aiTIixrbzoi7LaU6rCAIOyEnOu5hOyKpCDrsI8g7LK07ZeYIixmcjoiT3B0aW9ucyBldCBleHDDqXJpZW5jZXMiLGVzOiJFeHRyYXMgeSBleHBlcmllbmNpYXMifSwicGVyIHBlcnNvbiBwZXIgbmlnaHQiOntkZToicHJvIFBlcnNvbiB1bmQgTmFjaHQiLGphOiIx5ZCNMeaziuOBguOBn+OCiiIsa286IjHsnbggMeuwleuLuSIsZnI6InBhciBwZXJzb25uZSBldCBwYXIgbnVpdCIsZXM6InBvciBwZXJzb25hIHkgbm9jaGUifSwicGVyIG5pZ2h0Ijp7ZGU6InBybyBOYWNodCIsamE6IjHms4rjgYLjgZ/jgooiLGtvOiIx67CV64u5IixmcjoicGFyIG51aXQiLGVzOiJwb3Igbm9jaGUifSwicGVyIHN0YXkiOntkZToicHJvIEF1ZmVudGhhbHQiLGphOiIx5rue5Zyo44GC44Gf44KKIixrbzoi7IiZ67CV64u5IixmcjoicGFyIHPDqWpvdXIiLGVzOiJwb3IgZXN0YW5jaWEifSwicGVyIHBlcnNvbiI6e2RlOiJwcm8gUGVyc29uIixqYToiMeWQjeOBguOBn+OCiiIsa286IjHsnbjri7kiLGZyOiJwYXIgcGVyc29ubmUiLGVzOiJwb3IgcGVyc29uYSJ9LGVhY2g6VXcsInBlciB0cmlwIjp7ZGU6InBybyBGYWhydCIsamE6IjHlm57jgYLjgZ/jgooiLGtvOiIx7ZqM64u5IixmcjoicGFyIHRyYWpldCIsZXM6InBvciB0cmF5ZWN0byJ9LCJwZXIgezB9Ijp7ZGU6InBybyB7MH0iLGphOiJ7MH3jgYLjgZ/jgooiLGtvOiJ7MH3ri7kiLGZyOiJwYXIgezB9IixlczoicG9yIHswfSJ9LCJBZGQtb25zIGZvciB7MH0iOntkZToiRXh0cmFzIGbDvHIgezB9IixqYToiezB944Gu44Kq44OX44K344On44OzIixrbzoiezB9IOy2lOqwgCDshJzruYTsiqQiLGZyOiJPcHRpb25zIHBvdXIgezB9IixlczoiRXh0cmFzIHBhcmEgezB9In0sIkVhY2ggY2hhbmdlIGlzIHNob3duIHdpdGggaXRzIG5ldyB0b3RhbCBiZWZvcmUgYW55dGhpbmcgbW92ZXMuIE5vdGhpbmcgaXMgY2hhcmdlZCBoZXJlLiI6e2RlOiJKZWRlIMOEbmRlcnVuZyB3aXJkIG1pdCBpaHJlbSBuZXVlbiBHZXNhbXRwcmVpcyBhbmdlemVpZ3QsIGJldm9yIGV0d2FzIGdlw6RuZGVydCB3aXJkLiBIaWVyIHdpcmQgbmljaHRzIGJlcmVjaG5ldC4iLGphOiLlpInmm7Tjga/jgZnjgbnjgabjgIHlj43mmKDjgZnjgovliY3jgavmlrDjgZfjgYTlkIjoqIjjgpLooajnpLrjgZfjgb7jgZnjgILjgZPjgZPjgafjga/oq4vmsYLjgZXjgozjgb7jgZvjgpPjgIIiLGtvOiLrqqjrk6Ag67OA6rK97J2AIOuwmOyYgSDsoITsl5Ag7IOIIO2VqeqzhOulvCDrqLzsoIAg67O07JesIOuTnOumveuLiOuLpC4g7Jes6riw7ISc64qUIOqysOygnOuQmOyngCDslYrsirXri4jri6QuIixmcjoiQ2hhcXVlIG1vZGlmaWNhdGlvbiBlc3QgYWZmaWNow6llIGF2ZWMgc29uIG5vdXZlYXUgdG90YWwgYXZhbnQgZOKAmcOqdHJlIGFwcGxpcXXDqWUuIFJpZW4gbuKAmWVzdCBmYWN0dXLDqSBpY2kuIixlczoiQ2FkYSBjYW1iaW8gc2UgbXVlc3RyYSBjb24gc3UgbnVldm8gdG90YWwgYW50ZXMgZGUgYXBsaWNhcnNlLiBBcXXDrSBubyBzZSBjb2JyYSBuYWRhLiJ9LCJCYWNrIHRvIHlvdXIgYm9va2luZ3MiOntkZToiWnVyw7xjayB6dSBJaHJlbiBCdWNodW5nZW4iLGphOiLkuojntITkuIDopqfjgavmiLvjgosiLGtvOiLrgrQg7JiI7JW97Jy866GcIOuPjOyVhOqwgOq4sCIsZnI6IlJldG91ciDDoCB2b3MgcsOpc2VydmF0aW9ucyIsZXM6IlZvbHZlciBhIHN1cyByZXNlcnZhcyJ9LCJXaGF0IGl0IG9mZmVycyBiZXNpZGUgdGhlIHJvb20iOntkZToiV2FzIGVzIG5lYmVuIGRlbSBaaW1tZXIgYmlldGV0IixqYToi5a6i5a6k5Lul5aSW44Gu44K144O844OT44K5Iixrbzoi6rCd7IukIOyZuCDshJzruYTsiqQiLGZyOiJDZSBxdeKAmWlsIHByb3Bvc2UgZW4gcGx1cyBkZSBsYSBjaGFtYnJlIixlczoiTG8gcXVlIG9mcmVjZSBhZGVtw6FzIGRlIGxhIGhhYml0YWNpw7NuIn0sIkJhY2sgdG8gezB9Ijp7ZGU6Ilp1csO8Y2sgenUgezB9IixqYToiezB944Gr5oi744KLIixrbzoiezB9KOycvCnroZwg64+M7JWE6rCA6riwIixmcjoiUmV0b3VyIMOgIHswfSIsZXM6IlZvbHZlciBhIHswfSJ9LCIg4oCUIG9uIHRoZSBuZXh0IHN0ZXAiOntkZToiIOKAlCBpbSBuw6RjaHN0ZW4gU2Nocml0dCIsamE6Iu+8iOasoeOBrueUu+mdouOBp++8iSIsa286IiDigJQg64uk7J2MIOuLqOqzhOyXkOyEnCIsZnI6IiDigJQgw6AgbOKAmcOpdGFwZSBzdWl2YW50ZSIsZXM6IiDigJQgZW4gZWwgc2lndWllbnRlIHBhc28ifSwiYmVmb3JlIHRheGVzIjp7ZGU6Inp6Z2wuIFN0ZXVlcm4iLGphOiLnqI7liKUiLGtvOiLshLjquIgg67OE64+EIixmcjoiaG9ycyB0YXhlcyIsZXM6InNpbiBpbXB1ZXN0b3MifSwiezB9IGEgbmlnaHQiOntkZToiezB9IHBybyBOYWNodCIsamE6IjHms4ogezB9IixrbzoiMeuwlSB7MH0iLGZyOiJ7MH0gcGFyIG51aXQiLGVzOiJ7MH0gcG9yIG5vY2hlIn0sInswfSBlYWNoIjp7ZGU6InswfSBwcm8gU3TDvGNrIixqYToiMeeCuSB7MH0iLGtvOiLqsJzri7kgezB9IixmcjoiezB9IGzigJl1bml0w6kiLGVzOiJ7MH0gY2FkYSB1bm8ifSxRdWFudGl0eTpWdywiUm9vbXMgYW5kIGFkZC1vbnMiOntkZToiWmltbWVyIHVuZCBFeHRyYXMiLGphOiLlrqLlrqTjgajjgqrjg5fjgrfjg6fjg7MiLGtvOiLqsJ3si6Qg67CPIOy2lOqwgCDshJzruYTsiqQiLGZyOiJDaGFtYnJlcyBldCBvcHRpb25zIixlczoiSGFiaXRhY2lvbmVzIHkgZXh0cmFzIn0sIlRheGVzIGFuZCBmZWVzIjp7ZGU6IlN0ZXVlcm4gdW5kIEdlYsO8aHJlbiIsamE6IueojuODu+OCteODvOODk+OCueaWmSIsa286IuyEuOq4iCDrsI8g7IiY7IiY66OMIixmcjoiVGF4ZXMgZXQgZnJhaXMiLGVzOiJJbXB1ZXN0b3MgeSB0YXNhcyJ9LEluY2x1ZGVkOld3LCJUYXhlcyBhbmQgZmVlcyBpbiI6e2RlOiJpbmtsLiBTdGV1ZXJuIHVuZCBHZWLDvGhyZW4iLGphOiLnqI7jg7vjgrXjg7zjg5Pjgrnmlpnovrzjgb8iLGtvOiLshLjquIgg67CPIOyImOyImOujjCDtj6ztlagiLGZyOiJ0YXhlcyBldCBmcmFpcyBjb21wcmlzIixlczoiaW1wdWVzdG9zIHkgdGFzYXMgaW5jbHVpZG9zIn0sIlBvaW50cyB0aGlzIGVhcm5zIjp7ZGU6IkRhZsO8ciBlcmhhbHRlbmUgUHVua3RlIixqYToi542y5b6X44Od44Kk44Oz44OIIixrbzoi7KCB66a9IO2PrOyduO2KuCIsZnI6IlBvaW50cyBnYWduw6lzIixlczoiUHVudG9zIHF1ZSBzdW1hIn0sIlRoaXMgaXMgYSB0ZXN0IGVudmlyb25tZW50LiBCb29raW5nIGhlcmUgbWFrZXMgYSBzaW11bGF0ZWQgYm9va2luZywgbm90IGEgezB9IHJlc2VydmF0aW9uLCBhbmQgbm90aGluZyBpcyBwYWlkLiI6e2RlOiJEaWVzIGlzdCBlaW5lIFRlc3R1bWdlYnVuZy4gRWluZSBCdWNodW5nIGhpZXIgaXN0IHNpbXVsaWVydCwga2VpbmUgUmVzZXJ2aWVydW5nIGJlaSB7MH0sIHVuZCBlcyB3aXJkIG5pY2h0cyBiZXphaGx0LiIsamE6IuOBk+OCjOOBr+ODhuOCueODiOeSsOWig+OBp+OBmeOAguOBk+OBk+OBp+OBruS6iOe0hOOBr+aooeaTrOS6iOe0hOOBp+OAgXswfeOBruWun+mam+OBruS6iOe0hOOBp+OBr+OBquOBj+OAgeaUr+aJleOBhOOCgueZuueUn+OBl+OBvuOBm+OCk+OAgiIsa286Iu2FjOyKpO2KuCDtmZjqsr3snoXri4jri6QuIOyXrOq4sOyEnCDsmIjslb3tlZjrqbQg66qo7J2YIOyYiOyVveydtCDrp4zrk6TslrTsp4DrqbAsIHswfeydmCDsi6TsoJwg7JiI7JW97J20IOyVhOuLiOqzoCDqsrDsoJzrj4Qg65CY7KeAIOyViuyKteuLiOuLpC4iLGZyOiJDZWNpIGVzdCB1biBlbnZpcm9ubmVtZW50IGRlIHRlc3QuIFLDqXNlcnZlciBpY2kgY3LDqWUgdW5lIHLDqXNlcnZhdGlvbiBzaW11bMOpZSwgcGFzIHVuZSByw6lzZXJ2YXRpb24gY2hleiB7MH0sIGV0IHJpZW4gbuKAmWVzdCBwYXnDqS4iLGVzOiJFc3RlIGVzIHVuIGVudG9ybm8gZGUgcHJ1ZWJhLiBSZXNlcnZhciBhcXXDrSBjcmVhIHVuYSByZXNlcnZhIHNpbXVsYWRhLCBubyB1bmEgcmVzZXJ2YSBlbiB7MH0sIHkgbm8gc2UgcGFnYSBuYWRhLiJ9LCJOb3RoaW5nIGlzIGNoYXJnZWQgaGVyZS4gQm9va2luZyBtYWtlcyBhIHJlc2VydmF0aW9uIHdpdGggezB9LCBwYWlkIGF0IHRoZSBob3RlbCwgYW5kIGdpdmVzIHlvdSBhIGNvbmZpcm1hdGlvbiBjb2RlLiI6e2RlOiJIaWVyIHdpcmQgbmljaHRzIGJlcmVjaG5ldC4gRGllIEJ1Y2h1bmcgZXJzdGVsbHQgZWluZSBSZXNlcnZpZXJ1bmcgYmVpIHswfSwgYmV6YWhsdCB3aXJkIGltIEhvdGVsLCB1bmQgU2llIGVyaGFsdGVuIGVpbmVuIEJlc3TDpHRpZ3VuZ3Njb2RlLiIsamE6IuOBk+OBk+OBp+OBr+iri+axguOBleOCjOOBvuOBm+OCk+OAguS6iOe0hOOBmeOCi+OBqHswfeOBp+ePvuWcsOaJleOBhOOBruS6iOe0hOOBjOS9nOaIkOOBleOCjOOAgeeiuuiqjeeVquWPt+OBjOWxiuOBjeOBvuOBmeOAgiIsa286IuyXrOq4sOyEnOuKlCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiDsmIjslb3tlZjrqbQgezB97JeQIO2YhOyepSDqsrDsoJwg7JiI7JW97J20IOunjOuTpOyWtOyngOqzoCDtmZXsnbgg67KI7Zi466W8IOuwm+yKteuLiOuLpC4iLGZyOiJSaWVuIG7igJllc3QgZmFjdHVyw6kgaWNpLiBMYSByw6lzZXJ2YXRpb24gZXN0IGZhaXRlIGF1cHLDqHMgZGUgezB9LCBwYXlhYmxlIMOgIGzigJlow7R0ZWwsIGV0IHZvdXMgcmVjZXZleiB1biBjb2RlIGRlIGNvbmZpcm1hdGlvbi4iLGVzOiJBcXXDrSBubyBzZSBjb2JyYSBuYWRhLiBMYSByZXNlcnZhIHNlIGhhY2UgY29uIHswfSwgY29uIHBhZ28gZW4gZWwgaG90ZWwsIHkgcmVjaWJlIHVuIGPDs2RpZ28gZGUgY29uZmlybWFjacOzbi4ifSwiTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIFRoaXMgaXMgYSBkZW1vbnN0cmF0aW9uOiByZXF1ZXN0aW5nIGEgYm9va2luZyBnaXZlcyB5b3UgYSBjb25maXJtYXRpb24gY29kZSwgYnV0IHswfSBkb2VzIG5vdCByZWNlaXZlIGl0IGFuZCBubyByb29tIGlzIGhlbGQuIjp7ZGU6IkhpZXIgd2lyZCBuaWNodHMgYmVyZWNobmV0LiBEaWVzIGlzdCBlaW5lIERlbW9uc3RyYXRpb246IEVpbmUgQnVjaHVuZ3NhbmZyYWdlIGxpZWZlcnQgZWluZW4gQmVzdMOkdGlndW5nc2NvZGUsIGFiZXIgezB9IGVyaMOkbHQgc2llIG5pY2h0LCB1bmQgZXMgd2lyZCBrZWluIFppbW1lciByZXNlcnZpZXJ0LiIsamE6IuOBk+OBk+OBp+OBr+iri+axguOBleOCjOOBvuOBm+OCk+OAguOBk+OCjOOBr+ODh+ODouOBp+OBmeOAguS6iOe0hOOCkuS+nemgvOOBmeOCi+OBqOeiuuiqjeeVquWPt+OBjOWHuuOBvuOBmeOBjOOAgXswfeOBq+OBr+WxiuOBi+OBmuOAgeWuouWupOOCgueiuuS/neOBleOCjOOBvuOBm+OCk+OAgiIsa286IuyXrOq4sOyEnOuKlCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiDrjbDrqqjsnoXri4jri6QuIOyYiOyVveydhCDsmpTssq3tlZjrqbQg7ZmV7J24IOuyiO2YuOqwgCDrgpjsmKTsp4Drp4wgezB97JeQ64qUIOyghOuLrOuQmOyngCDslYrsnLzrqbAg6rCd7Iuk64+EIO2ZleuztOuQmOyngCDslYrsirXri4jri6QuIixmcjoiUmllbiBu4oCZZXN0IGZhY3R1csOpIGljaS4gQ2VjaSBlc3QgdW5lIGTDqW1vbnN0cmF0aW9uIDogZGVtYW5kZXIgdW5lIHLDqXNlcnZhdGlvbiB2b3VzIGRvbm5lIHVuIGNvZGUgZGUgY29uZmlybWF0aW9uLCBtYWlzIHswfSBuZSBsYSByZcOnb2l0IHBhcyBldCBhdWN1bmUgY2hhbWJyZSBu4oCZZXN0IHJldGVudWUuIixlczoiQXF1w60gbm8gc2UgY29icmEgbmFkYS4gRXMgdW5hIGRlbW9zdHJhY2nDs246IHNvbGljaXRhciB1bmEgcmVzZXJ2YSBsZSBkYSB1biBjw7NkaWdvIGRlIGNvbmZpcm1hY2nDs24sIHBlcm8gezB9IG5vIGxhIHJlY2liZSB5IG5vIHNlIHJldGllbmUgbmluZ3VuYSBoYWJpdGFjacOzbi4ifSwiTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIFJlcXVlc3RpbmcgYSBib29raW5nIGFza3MgezB9IHRvIGhvbGQgdGhlIHJvb21zIGFuZCBnaXZlcyB5b3UgYSBjb25maXJtYXRpb24gY29kZS4iOntkZToiSGllciB3aXJkIG5pY2h0cyBiZXJlY2huZXQuIE1pdCBkZXIgQnVjaHVuZ3NhbmZyYWdlIGJpdHRlbiBTaWUgezB9LCBkaWUgWmltbWVyIHp1IHJlc2VydmllcmVuLCB1bmQgU2llIGVyaGFsdGVuIGVpbmVuIEJlc3TDpHRpZ3VuZ3Njb2RlLiIsamE6IuOBk+OBk+OBp+OBr+iri+axguOBleOCjOOBvuOBm+OCk+OAguS6iOe0hOOCkuS+nemgvOOBmeOCi+OBqHswfeOBjOWuouWupOOCkueiuuS/neOBl+OAgeeiuuiqjeeVquWPt+OBjOWxiuOBjeOBvuOBmeOAgiIsa286IuyXrOq4sOyEnOuKlCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiDsmIjslb3snYQg7JqU7LKt7ZWY66m0IHswfeyXkOyEnCDqsJ3si6TsnYQg7ZmV67O07ZWY6rOgIO2ZleyduCDrsojtmLjrpbwg65Oc66a964uI64ukLiIsZnI6IlJpZW4gbuKAmWVzdCBmYWN0dXLDqSBpY2kuIERlbWFuZGVyIHVuZSByw6lzZXJ2YXRpb24gZGVtYW5kZSDDoCB7MH0gZGUgcmV0ZW5pciBsZXMgY2hhbWJyZXMgZXQgdm91cyBkb25uZSB1biBjb2RlIGRlIGNvbmZpcm1hdGlvbi4iLGVzOiJBcXXDrSBubyBzZSBjb2JyYSBuYWRhLiBTb2xpY2l0YXIgdW5hIHJlc2VydmEgcGlkZSBhIHswfSBxdWUgcmV0ZW5nYSBsYXMgaGFiaXRhY2lvbmVzIHkgbGUgZGEgdW4gY8OzZGlnbyBkZSBjb25maXJtYWNpw7NuLiJ9LCIsICI6e2RlOiIsICIsamE6IuOAgSIsa286IiwgIixmcjoiLCAiLGVzOiIsICJ9LCIgYW5kICI6e2RlOiIgdW5kICIsamE6IuOBqCIsa286IiDrsI8gIixmcjoiIGV0ICIsZXM6IiB5ICJ9LCJUaGVzZSBzdGF5cyBhcmUgd2l0aCB7MH0uIEVhY2ggZ3JvdXAncyBhcmUgYm9va2VkIG9uIHRoZWlyIG93bi4iOntkZToiRGllc2UgQXVmZW50aGFsdGUgc2luZCBiZWkgezB9LiBKZWRlIEdydXBwZSB3aXJkIHNlcGFyYXQgZ2VidWNodC4iLGphOiLjgZPjgozjgonjga7mu57lnKjjga97MH3jgafjgZnjgILjgrDjg6vjg7zjg5fjgZTjgajjgavliKXjgIXjgavkuojntITjgZfjgb7jgZnjgIIiLGtvOiLsnbQg7IiZ67CV65Ok7J2AIHswfSDshozsho3snoXri4jri6QuIOq3uOujueuzhOuhnCDrlLDroZwg7JiI7JW97ZWp64uI64ukLiIsZnI6IkNlcyBzw6lqb3VycyBzb250IGNoZXogezB9LiBDZXV4IGRlIGNoYXF1ZSBncm91cGUgc2UgcsOpc2VydmVudCBzw6lwYXLDqW1lbnQuIixlczoiRXN0YXMgZXN0YW5jaWFzIHNvbiBjb24gezB9LiBMYXMgZGUgY2FkYSBncnVwbyBzZSByZXNlcnZhbiBwb3Igc2VwYXJhZG8uIn0sIkJvb2sgdGhlIHswfSBzdGF5cyI6e2RlOiJBdWZlbnRoYWx0ZSBiZWkgezB9IGJ1Y2hlbiIsamE6InswfeOBrua7nuWcqOOCkuS6iOe0hCIsa286InswfSDsiJnrsJUg7JiI7JW9IixmcjoiUsOpc2VydmVyIGxlcyBzw6lqb3VycyB7MH0iLGVzOiJSZXNlcnZhciBsYXMgZXN0YW5jaWFzIGRlIHswfSJ9LCJUaGUgdHJpcCBpcyBlbXB0eS4iOntkZToiRGllIFJlaXNlIGlzdCBub2NoIGxlZXIuIixqYToi5peF56iL44Gv44G+44Gg56m644Gn44GZ44CCIixrbzoi7Jes7ZaJIOydvOygleydtCDruYTslrQg7J6I7Iq164uI64ukLiIsZnI6IkxlIHZveWFnZSBlc3QgdmlkZS4iLGVzOiJFbCB2aWFqZSBlc3TDoSB2YWPDrW8uIn0sIkJyb3dzZSBob3RlbHMgb24gezB9Ijp7ZGU6IkhvdGVscyBhdWYgezB9IGFuc2VoZW4iLGphOiJ7MH3jga7jg5vjg4bjg6vjgpLopovjgosiLGtvOiJ7MH3snZgg7Zi47YWUIOuRmOufrOuztOq4sCIsZnI6IlBhcmNvdXJpciBsZXMgaMO0dGVscyBzdXIgezB9IixlczoiVmVyIGhvdGVsZXMgZW4gezB9In0sIkJyb3dzZSB7MH0gaG90ZWxzIjp7ZGU6IkhvdGVscyB2b24gezB9IGFuc2VoZW4iLGphOiJ7MH3jga7jg5vjg4bjg6vjgpLopovjgosiLGtvOiJ7MH0g7Zi47YWUIOuRmOufrOuztOq4sCIsZnI6IlBhcmNvdXJpciBsZXMgaMO0dGVscyB7MH0iLGVzOiJWZXIgaG90ZWxlcyBkZSB7MH0ifSwiUmV2aWV3IGFuZCBib29rIjp7ZGU6IlByw7xmZW4gdW5kIGJ1Y2hlbiIsamE6IueiuuiqjeOBl+OBpuS6iOe0hCIsa286Iu2ZleyduCDtm4Qg7JiI7JW9IixmcjoiVsOpcmlmaWVyIGV0IHLDqXNlcnZlciIsZXM6IlJldmlzYXIgeSByZXNlcnZhciJ9LCIxIGl0ZW0iOntkZToiMSBQb3NpdGlvbiIsamE6IjHku7YiLGtvOiIx6rCcIO2VreuqqSIsZnI6IjEgw6lsw6ltZW50IixlczoiMSBlbGVtZW50byJ9LCJ7MH0gaXRlbXMiOntkZToiezB9IFBvc2l0aW9uZW4iLGphOiJ7MH3ku7YiLGtvOiJ7MH3qsJwg7ZWt66qpIixmcjoiezB9IMOpbMOpbWVudHMiLGVzOiJ7MH0gZWxlbWVudG9zIn0sIlByaWNlZCBpbiB7MH0sIHNlcGFyYXRlbHkuIE5vdGhpbmcgaGVyZSBjb252ZXJ0cyBvbmUgaW50byB0aGUgb3RoZXI7IGVhY2ggaG90ZWwgaXMgYm9va2VkIGFuZCBwYWlkIGluIGl0cyBvd24uIjp7ZGU6IkdldHJlbm50IGluIHswfSBiZXJlY2huZXQuIEhpZXIgd2lyZCBuaWNodHMgdW1nZXJlY2huZXQ7IGplZGVzIEhvdGVsIHdpcmQgaW4gc2VpbmVyIGVpZ2VuZW4gV8OkaHJ1bmcgZ2VidWNodCB1bmQgYmV6YWhsdC4iLGphOiJ7MH3jgaflgIvliKXjgavooajnpLrjgZfjgabjgYTjgb7jgZnjgILjgZPjgZPjgafjga/mj5vnrpfjgZfjgb7jgZvjgpPjgILlkITjg5vjg4bjg6vjga/jgZ3jgozjgZ7jgozjga7pgJrosqjjgafkuojntITjg7vmlK/miZXjgYTjgZfjgb7jgZnjgIIiLGtvOiJ7MH0o7Jy8KeuhnCDrlLDroZwg7ZGc7Iuc65Cp64uI64ukLiDsl6zquLDshJzripQg7ZmY7IKw7ZWY7KeAIOyViuycvOupsCwg6rCBIO2YuO2FlOydgCDsnpDssrQg7Ya17ZmU66GcIOyYiOyVve2VmOqzoCDqsrDsoJztlanri4jri6QuIixmcjoiUHJpeCBlbiB7MH0sIHPDqXBhcsOpbWVudC4gUmllbiBu4oCZZXN0IGNvbnZlcnRpIGljaSA7IGNoYXF1ZSBow7R0ZWwgZXN0IHLDqXNlcnbDqSBldCBwYXnDqSBkYW5zIHNhIHByb3ByZSBkZXZpc2UuIixlczoiUHJlY2lvcyBlbiB7MH0sIHBvciBzZXBhcmFkby4gQXF1w60gbm8gc2UgY29udmllcnRlIG5hZGE7IGNhZGEgaG90ZWwgc2UgcmVzZXJ2YSB5IHNlIHBhZ2EgZW4gc3UgcHJvcGlhIG1vbmVkYS4ifSwiSW4gezB9LCBnb2VzIHdpdGggYSBzdGF5IC0gbm90IGluIHRoZSB0b3RhbCI6e2RlOiJJbiB7MH0sIGdlaMO2cnQgenUgZWluZW0gQXVmZW50aGFsdCDigJMgbmljaHQgaW0gR2VzYW10cHJlaXMiLGphOiJ7MH3lu7rjgabjg7vmu57lnKjjgajkuIDnt5LjgavkuojntITvvIjlkIjoqIjjgavjga/lkKvjgb7jgozjgb7jgZvjgpPvvIkiLGtvOiJ7MH0sIOyImeuwleqzvCDtlajqu5gg7JiI7JW9IOKAlCDtlanqs4Tsl5Ag7Y+s7ZWo65CY7KeAIOyViuydjCIsZnI6IkVuIHswfSwgdmEgYXZlYyB1biBzw6lqb3VyIOKAlCBob3JzIHRvdGFsIixlczoiRW4gezB9LCB2YSBjb24gdW5hIGVzdGFuY2lhOyBubyBpbmNsdWlkbyBlbiBlbCB0b3RhbCJ9LCJUb3RhbCBpbiB7MH0iOntkZToiR2VzYW10IGluIHswfSIsamE6IuWQiOioiO+8iHswfe+8iSIsa286Iu2VqeqzhCAoezB9KSIsZnI6IlRvdGFsIGVuIHswfSIsZXM6IlRvdGFsIGVuIHswfSJ9LFRvdGFsOkt3LCJBIHswfSBtZW1iZXI/Ijp7ZGU6Ik1pdGdsaWVkIGJlaSB7MH0/IixqYToiezB95Lya5ZOh44Gu5pa5IixrbzoiezB9IO2ajOybkOydtOyLoOqwgOyalD8iLGZyOiJNZW1icmUgezB9ID8iLGVzOiLCv0VzIG1pZW1icm8gZGUgezB9PyJ9LCJTaWduIGluIGZvciB0aGUgbWVtYmVyIHJhdGUiOntkZToiQW5tZWxkZW4gZsO8ciBkZW4gTWl0Z2xpZWRlcnByZWlzIixqYToi44Ot44Kw44Kk44Oz44GX44Gm5Lya5ZOh5paZ6YeR44Gn5LqI57SEIixrbzoi66Gc6re47J247ZWY6rOgIO2ajOybkCDsmpTquIgg67Cb6riwIixmcjoiQ29ubmVjdGV6LXZvdXMgcG91ciBsZSB0YXJpZiBtZW1icmUiLGVzOiJJbmljaWUgc2VzacOzbiBwYXJhIGxhIHRhcmlmYSBkZSBtaWVtYnJvIn0sIkdvZXMgd2l0aCBhIHN0YXkiOntkZToiTnVyIG1pdCBBdWZlbnRoYWx0IixqYToi5a6/5rOK44Go44K744OD44OI44Gn5LqI57SEIixrbzoi7IiZ67CV6rO8IO2VqOq7mCDsmIjslb0iLGZyOiJBdmVjIHVuIHPDqWpvdXIiLGVzOiJWYSBjb24gdW5hIGVzdGFuY2lhIn0sInswfSBpcyB7MX0ncyBzZXJ2aWNlIGZvciBpdHMgZ3Vlc3RzLCBzbyBpdCBpcyBib29rZWQgd2l0aCBhIHJvb20gdGhlcmUgLSBvciBhZGRlZCB0byBhIGJvb2tpbmcgeW91IGFscmVhZHkgaGF2ZS4iOntkZToiezB9IGlzdCBlaW4gU2VydmljZSB2b24gezF9IGbDvHIgc2VpbmUgR8Okc3RlIHVuZCB3aXJkIGRhaGVyIG1pdCBlaW5lbSBaaW1tZXIgZG9ydCBnZWJ1Y2h0IOKAkyBvZGVyIHp1IGVpbmVyIGJlc3RlaGVuZGVuIEJ1Y2h1bmcgaGluenVnZWbDvGd0LiIsamE6InswfeOBr3sxfeOBjOWuv+aziuiAheWQkeOBkeOBq+aPkOS+m+OBmeOCi+OCteODvOODk+OCueOBruOBn+OCgeOAgeOBneOBk+OBp+OBruWuouWupOOBqOS4gOe3kuOBq+S6iOe0hOOBmeOCi+OBi+OAgeaXouWtmOOBruS6iOe0hOOBq+i/veWKoOOBl+OBvuOBmeOAgiIsa286InswfeydgCjripQpIHsxfeydtCjqsIApIO2IrOyImeqwneyXkOqyjCDsoJzqs7XtlZjripQg7ISc67mE7Iqk7J2066+A66GcIOq3uOqzs+ydmCDqsJ3si6Tqs7wg7ZWo6ruYIOyYiOyVve2VmOqxsOuCmCDquLDsobQg7JiI7JW97JeQIOy2lOqwgO2VqeuLiOuLpC4iLGZyOiJ7MH0gZXN0IHVuIHNlcnZpY2UgZGUgezF9IHBvdXIgc2VzIGNsaWVudHMgOiBpbCBzZSByw6lzZXJ2ZSBhdmVjIHVuZSBjaGFtYnJlIHN1ciBwbGFjZSDigJQgb3Ugc+KAmWFqb3V0ZSDDoCB1bmUgcsOpc2VydmF0aW9uIGV4aXN0YW50ZS4iLGVzOiJ7MH0gZXMgdW4gc2VydmljaW8gZGUgezF9IHBhcmEgc3VzIGh1w6lzcGVkZXMsIGFzw60gcXVlIHNlIHJlc2VydmEgY29uIHVuYSBoYWJpdGFjacOzbiBhbGzDrSwgbyBzZSBhw7FhZGUgYSB1bmEgcmVzZXJ2YSBxdWUgeWEgdGVuZ2EuIn0sIlJvb21zIGF0IHswfSI6e2RlOiJaaW1tZXIgaW0gezB9IixqYToiezB944Gu5a6i5a6kIixrbzoiezB9IOqwneyLpCIsZnI6IkNoYW1icmVzIOKAkyB7MH0iLGVzOiJIYWJpdGFjaW9uZXMgZW4gezB9In0sIktpbmcgYmVkIjp7ZGU6IkRvcHBlbGJldHQiLGphOiLjgq3jg7PjgrDjg5njg4Pjg4kiLGtvOiLtgrkg67Kg65OcIixmcjoiTGl0IGtpbmcgc2l6ZSIsZXM6IkNhbWEga2luZyJ9LCJUd2luIGJlZHMiOntkZToiWndlaSBFaW56ZWxiZXR0ZW4iLGphOiLjg4TjgqTjg7Pjg5njg4Pjg4kiLGtvOiLtirjsnIgg67Kg65OcIixmcjoiTGl0cyBqdW1lYXV4IixlczoiRG9zIGNhbWFzIn0sIkhpZ2ggZmxvb3IiOntkZToiSG9oZSBFdGFnZSIsamE6IumrmOWxpOmajiIsa286IuqzoOy4tSIsZnI6IsOJdGFnZSDDqWxldsOpIixlczoiUGxhbnRhIGFsdGEifSwiTG93IGZsb29yIjp7ZGU6Ik5pZWRyaWdlIEV0YWdlIixqYToi5L2O5bGk6ZqOIixrbzoi7KCA7Li1Iixmcjoiw4l0YWdlIGJhcyIsZXM6IlBsYW50YSBpbmZlcmlvciJ9LCJRdWlldCByb29tIjp7ZGU6IlJ1aGlnZXMgWmltbWVyIixqYToi6Z2Z44GL44Gq5a6i5a6kIixrbzoi7KGw7Jqp7ZWcIOqwneyLpCIsZnI6IkNoYW1icmUgY2FsbWUiLGVzOiJIYWJpdGFjacOzbiB0cmFucXVpbGEifSwiQ29ubmVjdGluZyByb29tcyI6e2RlOiJWZXJiaW5kdW5nc3ppbW1lciIsamE6IuOCs+ODjeOCr+ODhuOCo+ODs+OCsOODq+ODvOODoCIsa286Iuy7pOuEpe2MheujuCIsZnI6IkNoYW1icmVzIGNvbW11bmljYW50ZXMiLGVzOiJIYWJpdGFjaW9uZXMgY29tdW5pY2FkYXMifSwiRWFybHkgY2hlY2staW4iOntkZToiRnLDvGhlIEFucmVpc2UiLGphOiLjgqLjg7zjg6rjg7zjg4Hjgqfjg4Pjgq/jgqTjg7MiLGtvOiLslrzrpqwg7LK07YGs7J24IixmcjoiQXJyaXbDqWUgYW50aWNpcMOpZSIsZXM6IkxsZWdhZGEgYW50aWNpcGFkYSJ9LCJBcnJpdmluZyBsYXRlIjp7ZGU6IlNww6R0ZSBBbmt1bmZ0IixqYToi5Yiw552A44GM6YGF44GP44Gq44KLIixrbzoi64qm7J2AIOuPhOywqSIsZnI6IkFycml2w6llIHRhcmRpdmUiLGVzOiJMbGVnYWRhIHRhcmTDrWEifSwiQWNjZXNzaWJsZSByb29tIjp7ZGU6IkJhcnJpZXJlZnJlaWVzIFppbW1lciIsamE6IuODkOODquOCouODleODquODvOODq+ODvOODoCIsa286IuustOyepeyVoCDqsJ3si6QiLGZyOiJDaGFtYnJlIGFjY2Vzc2libGUiLGVzOiJIYWJpdGFjacOzbiBhY2Nlc2libGUifSxCZWQ6R3csRmxvb3I6SncsQWxzbzpZdywiYWxsIHswfSBob3RlbHMiOntkZToiYWxsZSB7MH0gSG90ZWxzIixqYToiezB96LuS44GZ44G544GmIixrbzoi7Zi47YWUIHswfeqzsyDrqqjrkZAiLGZyOiJsZXMgezB9IGjDtHRlbHMiLGVzOiJsb3MgezB9IGhvdGVsZXMifSwiYWxsIHswfSBzdGF5cyI6e2RlOiJhbGxlIHswfSBBdWZlbnRoYWx0ZSIsamE6InswfeS7tuOBrua7nuWcqOOBmeOBueOBpiIsa286IuyImeuwlSB7MH3qsbQg66qo65GQIixmcjoibGVzIHswfSBzw6lqb3VycyIsZXM6ImxhcyB7MH0gZXN0YW5jaWFzIn0sIkNvbnRpbnVlIHRvIHBheW1lbnQiOntkZToiV2VpdGVyIHp1ciBaYWhsdW5nIixqYToi5pSv5omV44GE44G46YCy44KAIixrbzoi6rKw7KCc7ZWY6riwIixmcjoiQ29udGludWVyIHZlcnMgbGUgcGFpZW1lbnQiLGVzOiJDb250aW51YXIgYWwgcGFnbyJ9LCJUZXN0LWJvb2sgezB9Ijp7ZGU6IkpldHp0IHswfSB0ZXN0d2Vpc2UgYnVjaGVuIixqYToiezB944KS44OG44K544OI5LqI57SEIixrbzoiezB9IO2FjOyKpO2KuCDsmIjslb0iLGZyOiJSw6lzZXJ2ZXIgezB9IGVuIHRlc3QiLGVzOiJSZXNlcnZhciB7MH0gZGUgcHJ1ZWJhIn0sIkJvb2sgezB9Ijp7ZGU6IkpldHp0IHswfSBidWNoZW4iLGphOiJ7MH3jgpLkuojntIQiLGtvOiJ7MH0g7JiI7JW9IixmcjoiUsOpc2VydmVyIHswfSIsZXM6IlJlc2VydmFyIHswfSJ9LCJNYWtlIGEgdGVzdCBib29raW5nIjp7ZGU6IlRlc3RidWNodW5nIHZvcm5laG1lbiIsamE6IuODhuOCueODiOS6iOe0hOOBmeOCiyIsa286Iu2FjOyKpO2KuCDsmIjslb3tlZjquLAiLGZyOiJGYWlyZSB1bmUgcsOpc2VydmF0aW9uIHRlc3QiLGVzOiJIYWNlciB1bmEgcmVzZXJ2YSBkZSBwcnVlYmEifSwiQm9vayB7MH0gcm9vbXMiOntkZToiezB9IFppbW1lciBidWNoZW4iLGphOiJ7MH3lrqTjgpLkuojntIQiLGtvOiLqsJ3si6QgezB96rCcIOyYiOyVvSIsZnI6IlLDqXNlcnZlciB7MH0gY2hhbWJyZXMiLGVzOiJSZXNlcnZhciB7MH0gaGFiaXRhY2lvbmVzIn0sIkJvb2sgdGhpcyByb29tIjp7ZGU6IkRpZXNlcyBaaW1tZXIgYnVjaGVuIixqYToi44GT44Gu5a6i5a6k44KS5LqI57SEIixrbzoi7J20IOqwneyLpCDsmIjslb0iLGZyOiJSw6lzZXJ2ZXIgY2V0dGUgY2hhbWJyZSIsZXM6IlJlc2VydmFyIGVzdGEgaGFiaXRhY2nDs24ifSwiUmVxdWVzdCBib29raW5nIjp7ZGU6IkJ1Y2h1bmcgYW5mcmFnZW4iLGphOiLkuojntITjgpLkvp3poLwiLGtvOiLsmIjslb0g7JqU7LKtIixmcjoiRGVtYW5kZXIgbGEgcsOpc2VydmF0aW9uIixlczoiU29saWNpdGFyIHJlc2VydmEifSwiSG9sZCB7MH0gcm9vbXMiOntkZToiezB9IFppbW1lciByZXNlcnZpZXJlbiIsamE6InswfeWupOOCkueiuuS/nSIsa286IuqwneyLpCB7MH3qsJwg7ZmV67O0IixmcjoiUmV0ZW5pciB7MH0gY2hhbWJyZXMiLGVzOiJSZXRlbmVyIHswfSBoYWJpdGFjaW9uZXMifSwiSG9sZCB0aGlzIHJvb20iOntkZToiRGllc2VzIFppbW1lciByZXNlcnZpZXJlbiIsamE6IuOBk+OBruWuouWupOOCkueiuuS/nSIsa286IuydtCDqsJ3si6Qg7ZmV67O0IixmcjoiUmV0ZW5pciBjZXR0ZSBjaGFtYnJlIixlczoiUmV0ZW5lciBlc3RhIGhhYml0YWNpw7NuIn0sIldobyBpcyBzdGF5aW5nIjp7ZGU6IldlciDDvGJlcm5hY2h0ZXQiLGphOiLlrr/ms4rogIXmg4XloLEiLGtvOiLtiKzsiJnqsJ0g7KCV67O0IixmcjoiUXVpIHPDqWpvdXJuZSIsZXM6IlF1acOpbiBzZSBhbG9qYSJ9LCJGdWxsIG5hbWUiOntkZToiVm9sbHN0w6RuZGlnZXIgTmFtZSIsamE6Iuawj+WQjSIsa286IuydtOumhCIsZnI6Ik5vbSBjb21wbGV0IixlczoiTm9tYnJlIGNvbXBsZXRvIn0sIkFzIGl0IHNob3VsZCBhcHBlYXIgb24gdGhlIGJvb2tpbmciOntkZToiV2llIGVyIGF1ZiBkZXIgQnVjaHVuZyBzdGVoZW4gc29sbCIsamE6IuS6iOe0hOOBq+iomOi8ieOBmeOCi+awj+WQjSIsa286IuyYiOyVveyXkCDtkZzsi5zrkKAg7J2066aEIixmcjoiVGVsIHF14oCZaWwgZG9pdCBmaWd1cmVyIHN1ciBsYSByw6lzZXJ2YXRpb24iLGVzOiJUYWwgY29tbyBkZWJlIGZpZ3VyYXIgZW4gbGEgcmVzZXJ2YSJ9LEVtYWlsOlF3LCJGb3IgdGhlIGNvbmZpcm1hdGlvbiI6e2RlOiJGw7xyIGRpZSBCZXN0w6R0aWd1bmciLGphOiLnorroqo3jg6Hjg7zjg6vjga7pgIHku5jlhYgiLGtvOiLtmZXsnbgg66mU7J28IOyImOyLoOyaqSIsZnI6IlBvdXIgbGEgY29uZmlybWF0aW9uIixlczoiUGFyYSBsYSBjb25maXJtYWNpw7NuIn0sUGhvbmU6WHcsIkZvciB0aGUgaG90ZWwgdG8gcmVhY2ggeW91Ijp7ZGU6IkRhbWl0IGRhcyBIb3RlbCBTaWUgZXJyZWljaGVuIGthbm4iLGphOiLjg5vjg4bjg6vjgYvjgonjga7pgKPntaHnlKgiLGtvOiLtmLjthZQg7Jew65297JqpIixmcjoiUG91ciBxdWUgbOKAmWjDtHRlbCBwdWlzc2Ugdm91cyBqb2luZHJlIixlczoiUGFyYSBxdWUgZWwgaG90ZWwgcHVlZGEgY29udGFjdGFybGUifSwiUmVxdWVzdHMgZm9yIHRoZSBob3RlbCI6e2RlOiJXw7xuc2NoZSBhbiBkYXMgSG90ZWwiLGphOiLjg5vjg4bjg6vjgbjjga7jg6rjgq/jgqjjgrnjg4giLGtvOiLtmLjthZQg7JqU7LKtIOyCrO2VrSIsZnI6IkRlbWFuZGVzIHBvdXIgbOKAmWjDtHRlbCIsZXM6IlBldGljaW9uZXMgcGFyYSBlbCBob3RlbCJ9LG9wdGlvbmFsOmVTLCJBcnJpdmluZyBhcm91bmQiOntkZToiQW5rdW5mdCBnZWdlbiIsamE6IuWIsOedgOS6iOWumiIsa286IuuPhOywqSDsmIjsoJUiLGZyOiJBcnJpdsOpZSB2ZXJzIixlczoiTGxlZ2FkYSBoYWNpYSJ9LCJBZnRlciAyMjowMCI6e2RlOiJOYWNoIDIyOjAwIixqYToiMjI6MDDku6XpmY0iLGtvOiIyMjowMCDsnbTtm4QiLGZyOiJBcHLDqHMgMjI6MDAiLGVzOiJEZXNwdcOpcyBkZSBsYXMgMjI6MDAifSwiQW55dGhpbmcgZWxzZSI6e2RlOiJTb25zdGlnZXMiLGphOiLjgZ3jga7ku5bjga7jg6rjgq/jgqjjgrnjg4giLGtvOiLquLDtg4Ag7JqU7LKtIixmcjoiQXV0cmUgY2hvc2UiLGVzOiJBbGdvIG3DoXMifSwiSW4geW91ciBvd24gd29yZHMiOntkZToiSW4gSWhyZW4gZWlnZW5lbiBXb3J0ZW4iLGphOiLjgZToh6rnlLHjgavjgYrmm7jjgY3jgY/jgaDjgZXjgYQiLGtvOiLsnpDsnKDroa3qsowg7KCB7Ja0IOyjvOyEuOyalCIsZnI6IkF2ZWMgdm9zIHByb3ByZXMgbW90cyIsZXM6IkNvbiBzdXMgcHJvcGlhcyBwYWxhYnJhcyJ9LCJUaGVzZSBnbyB0byB0aGUgZGVzayBhcyByZXF1ZXN0cy4gezB9IG1lZXRzIHdoYXQgaXQgY2FuIG9uIHRoZSBkYXk7IG5vbmUgb2YgaXQgaXMgaGVsZC4iOntkZToiRGllc2UgZ2VoZW4gYWxzIFfDvG5zY2hlIGFuIGRpZSBSZXplcHRpb24uIHswfSBlcmbDvGxsdCBhbSBUYWcsIHdhcyBtw7ZnbGljaCBpc3Q7IG5pY2h0cyBkYXZvbiBpc3QgZ2FyYW50aWVydC4iLGphOiLjgZPjgozjgonjga/jg6rjgq/jgqjjgrnjg4jjgajjgZfjgabjg5Xjg63jg7Pjg4jjgavkvJ3jgYjjgb7jgZnjgIJ7MH3jgYzlvZPml6XjgafjgY3jgovpmZDjgorlr77lv5zjgZfjgb7jgZnjgYzjgIHkv53oqLzjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLsmpTssq0g7IKs7ZWt7Jy866GcIO2UhOufsO2KuOyXkCDsoITri6zrkKnri4jri6QuIHswfeyXkOyEnCDri7nsnbwg6rCA64ql7ZWcIOunjO2BvCDrp57strAg65Oc66as7KeA66eMIOuztOyepeuQmOyngOuKlCDslYrsirXri4jri6QuIixmcjoiRWxsZXMgc29udCB0cmFuc21pc2VzIMOgIGxhIHLDqWNlcHRpb24gY29tbWUgZGVtYW5kZXMuIHswfSB5IHLDqXBvbmQgYXUgbWlldXggbGUgam91ciBtw6ptZSA7IHJpZW4gbuKAmWVzdCBnYXJhbnRpLiIsZXM6IlNlIGVudsOtYW4gYSByZWNlcGNpw7NuIGNvbW8gcGV0aWNpb25lcy4gezB9IGF0aWVuZGUgbG8gcXVlIHB1ZWRlIGVzZSBkw61hOyBuYWRhIGVzdMOhIGdhcmFudGl6YWRvLiJ9LCJSZW1lbWJlciB0aGUgYmVkLCBmbG9vciBhbmQgcm9vbSByZXF1ZXN0cyBvbiBteSB7MH0gZm9yIG5leHQgdGltZSI6e2RlOiJCZXR0LSwgRXRhZ2VuLSB1bmQgWmltbWVyd8O8bnNjaGUgaW4gbWVpbmVtIHswfS1Lb250byBmw7xyIGRhcyBuw6RjaHN0ZSBNYWwgc3BlaWNoZXJuIixqYToi44OZ44OD44OJ44O76ZqO5pWw44O75a6i5a6k44Gu44Oq44Kv44Ko44K544OI44KSezB944Ki44Kr44Km44Oz44OI44Gr5L+d5a2Y44GX44Gm5qyh5Zue44KC5L2/44GGIixrbzoi7Lmo64yALCDsuLUsIOqwneyLpCDsmpTssq3snYQg64K0IHswfSDqs4TsoJXsl5Ag7KCA7J6l7ZW0IOuLpOydjOyXkOuPhCDsgqzsmqkiLGZyOiJNw6ltb3Jpc2VyIGxlcyBkZW1hbmRlcyBkZSBsaXQsIGTigJnDqXRhZ2UgZXQgZGUgY2hhbWJyZSBzdXIgbW9uIGNvbXB0ZSB7MH0gcG91ciBsYSBwcm9jaGFpbmUgZm9pcyIsZXM6IlJlY29yZGFyIGxhcyBwZXRpY2lvbmVzIGRlIGNhbWEsIHBsYW50YSB5IGhhYml0YWNpw7NuIGVuIG1pIGN1ZW50YSB7MH0gcGFyYSBsYSBwcsOzeGltYSB2ZXoifSwiUmVtZW1iZXIgdGhlIGJlZCwgZmxvb3IgYW5kIHJvb20gcmVxdWVzdHMgb24gbXkgbWVtYmVyc2hpcCBmb3IgbmV4dCB0aW1lIjp7ZGU6IkJldHQtLCBFdGFnZW4tIHVuZCBaaW1tZXJ3w7xuc2NoZSBpbiBtZWluZXIgTWl0Z2xpZWRzY2hhZnQgZsO8ciBkYXMgbsOkY2hzdGUgTWFsIHNwZWljaGVybiIsamE6IuODmeODg+ODieODu+majuaVsOODu+WuouWupOOBruODquOCr+OCqOOCueODiOOCkuS8muWToeOCouOCq+OCpuODs+ODiOOBq+S/neWtmOOBl+OBpuasoeWbnuOCguS9v+OBhiIsa286Iuy5qOuMgCwg7Li1LCDqsJ3si6Qg7JqU7LKt7J2EIOuCtCDtmozsm5Ag6rOE7KCV7JeQIOyggOyepe2VtCDri6TsnYzsl5Drj4Qg7IKs7JqpIixmcjoiTcOpbW9yaXNlciBsZXMgZGVtYW5kZXMgZGUgbGl0LCBk4oCZw6l0YWdlIGV0IGRlIGNoYW1icmUgc3VyIG1vbiBjb21wdGUgbWVtYnJlIHBvdXIgbGEgcHJvY2hhaW5lIGZvaXMiLGVzOiJSZWNvcmRhciBsYXMgcGV0aWNpb25lcyBkZSBjYW1hLCBwbGFudGEgeSBoYWJpdGFjacOzbiBlbiBtaSBtZW1icmVzw61hIHBhcmEgbGEgcHLDs3hpbWEgdmV6In0sIk5leHQsIGEgcGF5bWVudCBwYWdlIGluIHRlc3QgbW9kZTogbm8gcmVhbCBtb25leSBtb3Zlcy4gQ2FyZCBkZXRhaWxzIGFyZSB0eXBlZCBvbmx5IHRoZXJlLCBhbmQgbm90aGluZyBpcyBib29rZWQgdW50aWwgaXQgaXMgcGFpZC4iOntkZToiQWxzIE7DpGNoc3RlcyBlaW5lIFphaGx1bmdzc2VpdGUgaW0gVGVzdG1vZHVzOiBFcyBmbGllw590IGtlaW4gZWNodGVzIEdlbGQuIEthcnRlbmRhdGVuIHdlcmRlbiBudXIgZG9ydCBlaW5nZWdlYmVuLCB1bmQgZ2VidWNodCB3aXJkIGVyc3QgbmFjaCBkZXIgWmFobHVuZy4iLGphOiLmrKHjga/jg4bjgrnjg4jjg6Ljg7zjg4njga7mlK/miZXjgYTjg5rjg7zjgrjjgafjgZnjgILlrp/pmpvjga7jgYrph5Hjga/li5XjgY3jgb7jgZvjgpPjgILjgqvjg7zjg4nmg4XloLHjga/jgZ3jga7jg5rjg7zjgrjjgafjga7jgb/lhaXlipvjgZfjgIHmlK/miZXjgYTjgYzmuIjjgoDjgb7jgafkuojntITjgZXjgozjgb7jgZvjgpPjgIIiLGtvOiLri6TsnYzsnYAg7YWM7Iqk7Yq4IOuqqOuTnCDqsrDsoJwg7Y6Y7J207KeA7J6F64uI64ukLiDsi6TsoJwg64+I7J2AIOyYpOqwgOyngCDslYrsirXri4jri6QuIOy5tOuTnCDsoJXrs7TripQg6re4IO2OmOydtOyngOyXkOyEnOunjCDsnoXroKXtlZjrqbAsIOqysOygnCDsoITsl5DripQg7JiI7JW965CY7KeAIOyViuyKteuLiOuLpC4iLGZyOiJFbnN1aXRlLCB1bmUgcGFnZSBkZSBwYWllbWVudCBlbiBtb2RlIHRlc3QgOiBhdWN1biBhcmdlbnQgcsOpZWwgbuKAmWVzdCBkw6liaXTDqS4gTGVzIGRvbm7DqWVzIGRlIGNhcnRlIHNlIHNhaXNpc3NlbnQgdW5pcXVlbWVudCBsw6AsIGV0IHJpZW4gbuKAmWVzdCByw6lzZXJ2w6kgYXZhbnQgbGUgcGFpZW1lbnQuIixlczoiQSBjb250aW51YWNpw7NuLCB1bmEgcMOhZ2luYSBkZSBwYWdvIGVuIG1vZG8gZGUgcHJ1ZWJhOiBubyBzZSBtdWV2ZSBkaW5lcm8gcmVhbC4gTG9zIGRhdG9zIGRlIGxhIHRhcmpldGEgc29sbyBzZSBlc2NyaWJlbiBhbGzDrSwgeSBubyBzZSByZXNlcnZhIG5hZGEgaGFzdGEgcXVlIHNlIHBhZ3VlLiJ9LCJOZXh0LCBhIHNlY3VyZSBwYXltZW50IHBhZ2U6IGNhcmQgZGV0YWlscyBhcmUgdHlwZWQgb25seSB0aGVyZS4gTm90aGluZyBpcyBib29rZWQgd2l0aCB7MH0gdW50aWwgaXQgaXMgcGFpZCwgYW5kIGlmIGl0IGNhbm5vdCBiZSwgYWxsIG9mIGl0IGdvZXMgYmFjay4iOntkZToiQWxzIE7DpGNoc3RlcyBlaW5lIHNpY2hlcmUgWmFobHVuZ3NzZWl0ZTogS2FydGVuZGF0ZW4gd2VyZGVuIG51ciBkb3J0IGVpbmdlZ2ViZW4uIEJlaSB7MH0gd2lyZCBlcnN0IG5hY2ggZGVyIFphaGx1bmcgZ2VidWNodCwgdW5kIGtsYXBwdCBkaWUgQnVjaHVuZyBuaWNodCwgd2lyZCBhbGxlcyBlcnN0YXR0ZXQuIixqYToi5qyh44Gv5a6J5YWo44Gq5pSv5omV44GE44Oa44O844K444Gn44GZ44CC44Kr44O844OJ5oOF5aCx44Gv44Gd44Gu44Oa44O844K444Gn44Gu44G/5YWl5Yqb44GX44G+44GZ44CC5pSv5omV44GE44GM5riI44KA44G+44GnezB944Gn44Gv5LqI57SE44GV44KM44Ga44CB5LqI57SE44Gn44GN44Gq44GL44Gj44Gf5aC05ZCI44Gv5YWo6aGN6L+U6YeR44GV44KM44G+44GZ44CCIixrbzoi64uk7J2M7J2AIOyViOyghO2VnCDqsrDsoJwg7Y6Y7J207KeA7J6F64uI64ukLiDsubTrk5wg7KCV67O064qUIOq3uCDtjpjsnbTsp4Dsl5DshJzrp4wg7J6F66Cl7ZWp64uI64ukLiDqsrDsoJwg7KCE7JeQ64qUIHswfeyXkCDsmIjslb3rkJjsp4Ag7JWK7Jy866mwLCDsmIjslb3snbQg7JWIIOuQmOuptCDsoITslaEg7ZmY67aI65Cp64uI64ukLiIsZnI6IkVuc3VpdGUsIHVuZSBwYWdlIGRlIHBhaWVtZW50IHPDqWN1cmlzw6llIDogbGVzIGRvbm7DqWVzIGRlIGNhcnRlIHNlIHNhaXNpc3NlbnQgdW5pcXVlbWVudCBsw6AuIFJpZW4gbuKAmWVzdCByw6lzZXJ2w6kgY2hleiB7MH0gYXZhbnQgbGUgcGFpZW1lbnQsIGV0IHNpIGxhIHLDqXNlcnZhdGlvbiDDqWNob3VlLCB0b3V0IGVzdCByZW1ib3Vyc8OpLiIsZXM6IkEgY29udGludWFjacOzbiwgdW5hIHDDoWdpbmEgZGUgcGFnbyBzZWd1cmE6IGxvcyBkYXRvcyBkZSBsYSB0YXJqZXRhIHNvbG8gc2UgZXNjcmliZW4gYWxsw60uIE5vIHNlIHJlc2VydmEgbmFkYSBjb24gezB9IGhhc3RhIHF1ZSBzZSBwYWd1ZSB5LCBzaSBubyBzZSBwdWVkZSwgc2UgZGV2dWVsdmUgdG9kby4ifSwiQSB0ZXN0IGJvb2tpbmc6IG5vdGhpbmcgaXMgaGVsZCBhbmQgbm90aGluZyBpcyBwYWlkLiI6e2RlOiJFaW5lIFRlc3RidWNodW5nOiBFcyB3aXJkIG5pY2h0cyByZXNlcnZpZXJ0IHVuZCBuaWNodHMgYmV6YWhsdC4iLGphOiLjg4bjgrnjg4jkuojntITjgafjgZnjgILlrqLlrqTjga/norrkv53jgZXjgozjgZrjgIHmlK/miZXjgYTjgoLjgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLthYzsiqTtirgg7JiI7JW97J6F64uI64ukLiDqsJ3si6TsnbQg7ZmV67O065CY7KeAIOyViuycvOupsCDqsrDsoJzrj4Qg7JeG7Iq164uI64ukLiIsZnI6IlVuZSByw6lzZXJ2YXRpb24gdGVzdCA6IHJpZW4gbuKAmWVzdCByZXRlbnUgZXQgcmllbiBu4oCZZXN0IHBhecOpLiIsZXM6IlVuYSByZXNlcnZhIGRlIHBydWViYTogbm8gc2UgcmV0aWVuZSBuYWRhIG5pIHNlIHBhZ2EgbmFkYS4ifSwiTm8gY2FyZCBpcyB0YWtlbiBhbmQgbm90aGluZyBpcyBjaGFyZ2VkLiBBIHJlc2VydmF0aW9uIHdpdGggezB9LCBwYWlkIGF0IHRoZSBob3RlbC4iOntkZToiRXMgd2lyZCBrZWluZSBLYXJ0ZSBlcmZhc3N0IHVuZCBuaWNodHMgYmVyZWNobmV0LiBFaW5lIFJlc2VydmllcnVuZyBiZWkgezB9LCBiZXphaGx0IGltIEhvdGVsLiIsamE6IuOCq+ODvOODieOBr+S4jeimgeOBp+OAgeiri+axguOCguOBguOCiuOBvuOBm+OCk+OAgnswfeOBp+OBruePvuWcsOaJleOBhOOBruS6iOe0hOOBp+OBmeOAgiIsa286Iuy5tOuTnCDrk7HroZ3rj4Qg6rKw7KCc64+EIOyXhuyKteuLiOuLpC4gezB97J2YIO2YhOyepSDqsrDsoJwg7JiI7JW97J6F64uI64ukLiIsZnI6IkF1Y3VuZSBjYXJ0ZSBu4oCZZXN0IGRlbWFuZMOpZSBldCByaWVuIG7igJllc3QgZmFjdHVyw6kuIFVuZSByw6lzZXJ2YXRpb24gY2hleiB7MH0sIHBheWFibGUgw6AgbOKAmWjDtHRlbC4iLGVzOiJObyBzZSBwaWRlIHRhcmpldGEgeSBubyBzZSBjb2JyYSBuYWRhLiBVbmEgcmVzZXJ2YSBjb24gezB9LCBjb24gcGFnbyBlbiBlbCBob3RlbC4ifSwiTm8gY2FyZCBpcyB0YWtlbiBhbmQgbm90aGluZyBpcyBjaGFyZ2VkLiBUaGlzIGlzIGEgZGVtb25zdHJhdGlvbjogezB9IGRvZXMgbm90IHJlY2VpdmUgaXQgYW5kIG5vIHJvb20gaXMgaGVsZC4iOntkZToiRXMgd2lyZCBrZWluZSBLYXJ0ZSBlcmZhc3N0IHVuZCBuaWNodHMgYmVyZWNobmV0LiBEaWVzIGlzdCBlaW5lIERlbW9uc3RyYXRpb246IHswfSBlcmjDpGx0IHNpZSBuaWNodCwgdW5kIGVzIHdpcmQga2VpbiBaaW1tZXIgcmVzZXJ2aWVydC4iLGphOiLjgqvjg7zjg4njga/kuI3opoHjgafjgIHoq4vmsYLjgoLjgYLjgorjgb7jgZvjgpPjgILjgZPjgozjga/jg4fjg6Ljga7jgZ/jgoHjgIF7MH3jgavjga/lsYrjgYvjgZrjgIHlrqLlrqTjgoLnorrkv53jgZXjgozjgb7jgZvjgpPjgIIiLGtvOiLsubTrk5wg65Ox66Gd64+EIOqysOygnOuPhCDsl4bsirXri4jri6QuIOuNsOuqqOydtOuvgOuhnCB7MH3sl5Ag7KCE64us65CY7KeAIOyViuycvOupsCDqsJ3si6Trj4Qg7ZmV67O065CY7KeAIOyViuyKteuLiOuLpC4iLGZyOiJBdWN1bmUgY2FydGUgbuKAmWVzdCBkZW1hbmTDqWUgZXQgcmllbiBu4oCZZXN0IGZhY3R1csOpLiBDZWNpIGVzdCB1bmUgZMOpbW9uc3RyYXRpb24gOiB7MH0gbmUgbGEgcmXDp29pdCBwYXMgZXQgYXVjdW5lIGNoYW1icmUgbuKAmWVzdCByZXRlbnVlLiIsZXM6Ik5vIHNlIHBpZGUgdGFyamV0YSB5IG5vIHNlIGNvYnJhIG5hZGEuIEVzIHVuYSBkZW1vc3RyYWNpw7NuOiB7MH0gbm8gbGEgcmVjaWJlIHkgbm8gc2UgcmV0aWVuZSBuaW5ndW5hIGhhYml0YWNpw7NuLiJ9LCJObyBjYXJkIGlzIHRha2VuIGFuZCBub3RoaW5nIGlzIGNoYXJnZWQuIFlvdSBwcmVzZW50IGEgY2FyZCBhdCBjaGVjay1pbi4iOntkZToiRXMgd2lyZCBrZWluZSBLYXJ0ZSBlcmZhc3N0IHVuZCBuaWNodHMgYmVyZWNobmV0LiBTaWUgbGVnZW4gYmVpIGRlciBBbnJlaXNlIGVpbmUgS2FydGUgdm9yLiIsamE6IuOCq+ODvOODieOBr+S4jeimgeOBp+OAgeiri+axguOCguOBguOCiuOBvuOBm+OCk+OAguODgeOCp+ODg+OCr+OCpOODs+aZguOBq+OCq+ODvOODieOCkuOBlOaPkOekuuOBj+OBoOOBleOBhOOAgiIsa286Iuy5tOuTnCDrk7HroZ3rj4Qg6rKw7KCc64+EIOyXhuyKteuLiOuLpC4g7LK07YGs7J24IOyLnCDsubTrk5zrpbwg7KCc7Iuc7ZWY7Iuc66m0IOuQqeuLiOuLpC4iLGZyOiJBdWN1bmUgY2FydGUgbuKAmWVzdCBkZW1hbmTDqWUgZXQgcmllbiBu4oCZZXN0IGZhY3R1csOpLiBWb3VzIHByw6lzZW50ZXogdW5lIGNhcnRlIMOgIGzigJlhcnJpdsOpZS4iLGVzOiJObyBzZSBwaWRlIHRhcmpldGEgeSBubyBzZSBjb2JyYSBuYWRhLiBQcmVzZW50YXLDoSB1bmEgdGFyamV0YSBhbCBsbGVnYXIuIn0sIlRoZSBib29raW5nIG5lZWRzIGEgbmFtZSBhbmQgYW4gZW1haWwuIjp7ZGU6IkbDvHIgZGllIEJ1Y2h1bmcgd2VyZGVuIE5hbWUgdW5kIEUtTWFpbCBiZW7DtnRpZ3QuIixqYToi5LqI57SE44Gr44Gv5rCP5ZCN44Go44Oh44O844Or44Ki44OJ44Os44K544GM5b+F6KaB44Gn44GZ44CCIixrbzoi7JiI7JW97JeQ64qUIOydtOumhOqzvCDsnbTrqZTsnbzsnbQg7ZWE7JqU7ZWp64uI64ukLiIsZnI6IkxhIHLDqXNlcnZhdGlvbiBkZW1hbmRlIHVuIG5vbSBldCB1biBlLW1haWwuIixlczoiTGEgcmVzZXJ2YSBuZWNlc2l0YSB1biBub21icmUgeSB1biBjb3JyZW8gZWxlY3Ryw7NuaWNvLiJ9LCJTaWduZWQgaW4iOntkZToiQW5nZW1lbGRldCIsamE6IuODreOCsOOCpOODs+S4rSIsa286IuuhnOq3uOyduOuQqCIsZnI6IkNvbm5lY3TDqSIsZXM6IlNlc2nDs24gaW5pY2lhZGEifSwiezB9IHBvaW50cyI6e2RlOiJ7MH0gUHVua3RlIixqYToiezB944Od44Kk44Oz44OIIixrbzoiezB97Y+s7J247Yq4IixmcjoiezB9IHBvaW50cyIsZXM6InswfSBwdW50b3MifSwiezB9JSBvZmYiOntkZToiezB9ICUgUmFiYXR0IixqYToiezB9JeOCquODlSIsa286InswfSUg7ZWg7J24Iixmcjoi4oiSezB9ICUiLGVzOiJ7MH0gJSBkZSBkZXNjdWVudG8ifSwiUm9vbSByYXRlcyBhbmQgdHJpcCB0b3RhbHMgbm93IHNob3cgdGhlIHswfSBtZW1iZXIgcmF0ZS4gTm90aGluZyBpcyBjaGFyZ2VkIGJ5IHNpZ25pbmcgaW4uIjp7ZGU6IlppbW1lcnByZWlzZSB1bmQgUmVpc2VzdW1tZW4gemVpZ2VuIGpldHp0IGRlbiBNaXRnbGllZGVycHJlaXMgezB9LiBEaWUgQW5tZWxkdW5nIGtvc3RldCBuaWNodHMuIixqYToi5a6i5a6k5paZ6YeR44Go5peF56iL44Gu5ZCI6KiI44GvezB95Lya5ZOh5paZ6YeR44Gn6KGo56S644GV44KM44G+44GZ44CC44Ot44Kw44Kk44Oz44GX44Gm44KC6KuL5rGC44Gv44GC44KK44G+44Gb44KT44CCIixrbzoi6rCd7IukIOyalOq4iOqzvCDsl6ztlokg7ZWp6rOE6rCAIOydtOygnCB7MH0g7ZqM7JuQIOyalOq4iOycvOuhnCDtkZzsi5zrkKnri4jri6QuIOuhnOq3uOyduO2VtOuPhCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiIsZnI6IkxlcyBwcml4IGRlcyBjaGFtYnJlcyBldCBsZXMgdG90YXV4IGR1IHZveWFnZSBhZmZpY2hlbnQgZMOpc29ybWFpcyBsZSB0YXJpZiBtZW1icmUgezB9LiBMYSBjb25uZXhpb24gbmUgZmFjdHVyZSByaWVuLiIsZXM6IkxhcyB0YXJpZmFzIHkgbG9zIHRvdGFsZXMgZGVsIHZpYWplIG11ZXN0cmFuIGFob3JhIGxhIHRhcmlmYSBkZSBtaWVtYnJvIHswfS4gSW5pY2lhciBzZXNpw7NuIG5vIGNvYnJhIG5hZGEuIn0sIlNhdmVkIGZvciB5b3VyIG5leHQgc3RheXMiOntkZToiRsO8ciBJaHJlIG7DpGNoc3RlbiBBdWZlbnRoYWx0ZSBnZXNwZWljaGVydCIsamE6IuasoeWbnuOBruWuv+aziueUqOOBq+S/neWtmOa4iOOBvyIsa286IuuLpOydjCDsiJnrsJXsnYQg7JyE7ZW0IOyggOyepeuQqCIsZnI6IkVucmVnaXN0csOpIHBvdXIgdm9zIHByb2NoYWlucyBzw6lqb3VycyIsZXM6Ikd1YXJkYWRvIHBhcmEgc3VzIHByw7N4aW1hcyBlc3RhbmNpYXMifSwiezB9IC0gdGlja2VkIG9uIHRoZSBib29raW5nIGZvcm0sIGFuZCBhc2tlZCBmb3Igb25seSB3aGVuIHlvdSBib29rIHdpdGggdGhlbS4iOntkZToiezB9IOKAkyBpbSBCdWNodW5nc2Zvcm11bGFyIHZvcmF1c2dld8OkaGx0IHVuZCBudXIgYW5nZWZyYWd0LCB3ZW5uIFNpZSBkb3J0IGJ1Y2hlbi4iLGphOiJ7MH3vvJrkuojntITjg5Xjgqnjg7zjg6Djgafoh6rli5XnmoTjgavjg4Hjgqfjg4Pjgq/jgZXjgozjgIHjgZ3jga7jg5vjg4bjg6vjgafkuojntITjgZnjgovjgajjgY3jgaDjgZHjg6rjgq/jgqjjgrnjg4jjgZXjgozjgb7jgZnjgIIiLGtvOiJ7MH0g4oCUIOyYiOyVvSDslpHsi53sl5Ag66+466asIOyytO2BrOuQmOupsCwg7ZW064u5IO2YuO2FlOyXkOyEnCDsmIjslb3tlaAg65WM66eMIOyalOyyreuQqeuLiOuLpC4iLGZyOiJ7MH0g4oCUIGNvY2jDqXMgZGFucyBsZSBmb3JtdWxhaXJlIGRlIHLDqXNlcnZhdGlvbiwgZXQgZGVtYW5kw6lzIHNldWxlbWVudCBxdWFuZCB2b3VzIHLDqXNlcnZleiBjaGV6IGV1eC4iLGVzOiJ7MH06IG1hcmNhZG9zIGVuIGVsIGZvcm11bGFyaW8gZGUgcmVzZXJ2YSwgeSBzb2xpY2l0YWRvcyBzb2xvIGN1YW5kbyByZXNlcnZlIGNvbiBlbGxvcy4ifSwiRm9yZ2V0IHRoZW0iOntkZToiVmVyZ2Vzc2VuIixqYToi5YmK6Zmk44GZ44KLIixrbzoi7IKt7KCcIixmcjoiTGVzIG91YmxpZXIiLGVzOiJPbHZpZGFybGFzIn0sIkZpbmQgYSBob3RlbCI6e2RlOiJIb3RlbCBmaW5kZW4iLGphOiLjg5vjg4bjg6vjgpLmjqLjgZkiLGtvOiLtmLjthZQg7LC+6riwIixmcjoiVHJvdXZlciB1biBow7R0ZWwiLGVzOiJCdXNjYXIgdW4gaG90ZWwifSwiU2lnbiBvdXQiOntkZToiQWJtZWxkZW4iLGphOiLjg63jgrDjgqLjgqbjg4giLGtvOiLroZzqt7jslYTsm4MiLGZyOiJTZSBkw6ljb25uZWN0ZXIiLGVzOiJDZXJyYXIgc2VzacOzbiJ9LCJObyBtZW1iZXJzaGlwIG1hdGNoZXMgdGhhdCBudW1iZXIgYW5kIHN1cm5hbWUuIENoZWNrIGJvdGggYXMgdGhleSBhcmUgcHJpbnRlZCDigJQgbm90aGluZyBlbHNlIGlzIG5lZWRlZCwgdGhpcyBjb25uZWN0b3IgbmV2ZXIgYXNrcyBmb3IgYSBwYXNzd29yZC4iOntkZToiS2VpbmUgTWl0Z2xpZWRzY2hhZnQgcGFzc3QgenUgZGllc2VyIE51bW1lciB1bmQgZGllc2VtIE5hY2huYW1lbi4gUHLDvGZlbiBTaWUgYmVpZGVzIHdpZSBhdWZnZWRydWNrdCDigJQgbWVociBpc3QgbmljaHQgbsO2dGlnLCBoaWVyIHdpcmQgbmllIG5hY2ggZWluZW0gUGFzc3dvcnQgZ2VmcmFndC4iLGphOiLjgZ3jga7kvJrlk6Hnlarlj7fjgajlp5PjgavkuIDoh7TjgZnjgovkvJrlk6Hmg4XloLHjga/jgYLjgorjgb7jgZvjgpPjgILljbDlrZfjganjgYrjgorjgavkuKHmlrnjgpLjgZTnorroqo3jgY/jgaDjgZXjgYTjgILjgZ3jgozku6XlpJbjga/kuI3opoHjgafjgIHjg5Hjgrnjg6/jg7zjg4njgpLmsYLjgoHjgovjgZPjgajjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLtlbTri7kg7ZqM7JuQIOuyiO2YuOyZgCDshLHsnbQg7J287LmY7ZWY64qUIO2ajOybkCDsoJXrs7TqsIAg7JeG7Iq164uI64ukLiDsnbjsh4TrkJwg64yA66GcIOuRkCDqsIDsp4Drpbwg7ZmV7J247ZW0IOyjvOyEuOyalC4g6re4IOyZuOyXkOuKlCDtlYTsmpQg7JeG7Jy866mwLCDruYTrsIDrsojtmLjripQg7KCI64yAIOusu+yngCDslYrsirXri4jri6QuIixmcjoiQXVjdW5lIGFkaMOpc2lvbiBuZSBjb3JyZXNwb25kIMOgIGNlIG51bcOpcm8gZXQgw6AgY2Ugbm9tLiBWw6lyaWZpZXogbGVzIGRldXggdGVscyBxdeKAmWlscyBzb250IGltcHJpbcOpcyDigJQgcmllbiBk4oCZYXV0cmUgbuKAmWVzdCBuw6ljZXNzYWlyZSwgY2Ugc2VydmljZSBuZSBkZW1hbmRlIGphbWFpcyBkZSBtb3QgZGUgcGFzc2UuIixlczoiTmluZ3VuYSBtZW1icmVzw61hIGNvaW5jaWRlIGNvbiBlc2UgbsO6bWVybyB5IGFwZWxsaWRvLiBDb21wcnVlYmUgYW1ib3MgdGFsIGNvbW8gYXBhcmVjZW4gaW1wcmVzb3M7IG5vIGhhY2UgZmFsdGEgbmFkYSBtw6FzLCBhcXXDrSBudW5jYSBzZSBwaWRlIHVuYSBjb250cmFzZcOxYS4ifSwiTWVtYmVyc2hpcCBudW1iZXIiOntkZToiTWl0Z2xpZWRzbnVtbWVyIixqYToi5Lya5ZOh55Wq5Y+3Iixrbzoi7ZqM7JuQIOuyiO2YuCIsZnI6Ik51bcOpcm8gZGUgbWVtYnJlIixlczoiTsO6bWVybyBkZSBtaWVtYnJvIn0sIkFzIGl0IGlzIHByaW50ZWQiOntkZToiV2llIGF1ZmdlZHJ1Y2t0IixqYToi5Y2w5a2X44Gp44GK44KK44Gr5YWl5YqbIixrbzoi7J247IeE65CcIOq3uOuMgOuhnCIsZnI6IlRlbCBxdeKAmWltcHJpbcOpIixlczoiVGFsIGNvbW8gYXBhcmVjZSBpbXByZXNvIn0sU3VybmFtZTp0UywiVGhlIHN1cm5hbWUgb24gaXQiOntkZToiRGVyIE5hY2huYW1lIGRhcmF1ZiIsamE6IuOCq+ODvOODieOBq+iomOi8ieOBruWnkyIsa286Iuy5tOuTnOyXkCDsoIHtnowg7ISxIixmcjoiTGUgbm9tIHF1aSB5IGZpZ3VyZSIsZXM6IkVsIGFwZWxsaWRvIHF1ZSBhcGFyZWNlIn0sIlNpZ24gaW4iOntkZToiQW5tZWxkZW4iLGphOiLjg63jgrDjgqTjg7MiLGtvOiLroZzqt7jsnbgiLGZyOiJTZSBjb25uZWN0ZXIiLGVzOiJJbmljaWFyIHNlc2nDs24ifSwiTm8gcGFzc3dvcmQgaXMgYXNrZWQgZm9yIGFuZCBub25lIGlzIHN0b3JlZC4gU2lnbmluZyBpbiBzaG93cyB0aGUgbWVtYmVyIHJhdGU7IG5vdGhpbmcgaXMgY2hhcmdlZC4iOntkZToiRXMgd2lyZCBrZWluIFBhc3N3b3J0IGFiZ2VmcmFndCBvZGVyIGdlc3BlaWNoZXJ0LiBEaWUgQW5tZWxkdW5nIHplaWd0IGRlbiBNaXRnbGllZGVycHJlaXM7IGVzIHdpcmQgbmljaHRzIGJlcmVjaG5ldC4iLGphOiLjg5Hjgrnjg6/jg7zjg4njga/kuI3opoHjgafjgIHkv53lrZjjgoLjgZfjgb7jgZvjgpPjgILjg63jgrDjgqTjg7PjgZnjgovjgajkvJrlk6Hmlpnph5HjgYzooajnpLrjgZXjgozjgb7jgZnjgILoq4vmsYLjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLruYTrsIDrsojtmLjrpbwg66y77KeA64+EIOyggOyepe2VmOyngOuPhCDslYrsirXri4jri6QuIOuhnOq3uOyduO2VmOuptCDtmozsm5Ag7JqU6riI7J20IO2RnOyLnOuQmOupsCDqsrDsoJzrkJjsp4Ag7JWK7Iq164uI64ukLiIsZnI6IkF1Y3VuIG1vdCBkZSBwYXNzZSBu4oCZZXN0IGRlbWFuZMOpIG5pIGNvbnNlcnbDqS4gTGEgY29ubmV4aW9uIGFmZmljaGUgbGUgdGFyaWYgbWVtYnJlIDsgcmllbiBu4oCZZXN0IGZhY3R1csOpLiIsZXM6Ik5vIHNlIHBpZGUgbmkgc2UgZ3VhcmRhIG5pbmd1bmEgY29udHJhc2XDsWEuIEluaWNpYXIgc2VzacOzbiBtdWVzdHJhIGxhIHRhcmlmYSBkZSBtaWVtYnJvOyBubyBzZSBjb2JyYSBuYWRhLiJ9LCJSZXF1ZXN0ZWQsIG5vdCBoZWxkIjp7ZGU6IkFuZ2VmcmFndCwgbmljaHQgZ2FyYW50aWVydCIsamE6IuODquOCr+OCqOOCueODiOa4iOOBv++8iOS/neiovOOBquOBl++8iSIsa286IuyalOyyreuQqCAo67O07J6l65CY7KeAIOyViuydjCkiLGZyOiJEZW1hbmTDqSwgbm9uIGdhcmFudGkiLGVzOiJTb2xpY2l0YWRvLCBubyBnYXJhbnRpemFkbyJ9LCJ7MH0gKGhvdGVsIHRpbWUpIjp7ZGU6InswfSAoT3J0c3plaXQgZGVzIEhvdGVscykiLGphOiJ7MH3vvIjjg5vjg4bjg6vnj77lnLDmmYLplpPvvIkiLGtvOiJ7MH0gKO2YuO2FlCDtmITsp4Ag7Iuc6rCEKSIsZnI6InswfSAoaGV1cmUgZGUgbOKAmWjDtHRlbCkiLGVzOiJ7MH0gKGhvcmEgZGVsIGhvdGVsKSJ9LCJQYXkgdG8gZmluaXNoIGJvb2tpbmciOntkZToiQmV6YWhsZW4sIHVtIGRpZSBCdWNodW5nIGFienVzY2hsaWXDn2VuIixqYToi5pSv5omV44GE44Gn5LqI57SE44GM5a6M5LqG44GX44G+44GZIixrbzoi6rKw7KCc7ZWY66m0IOyYiOyVveydtCDsmYTro4zrkKnri4jri6QiLGZyOiJQYXlleiBwb3VyIGZpbmFsaXNlciBsYSByw6lzZXJ2YXRpb24iLGVzOiJQYWd1ZSBwYXJhIGNvbXBsZXRhciBsYSByZXNlcnZhIn0sIk5vdGhpbmcgaXMgYm9va2VkIHlldC4gT25jZSB0aGUgcGF5bWVudCBnb2VzIHRocm91Z2gsIHRoZSByb29tIGlzIGJvb2tlZCB3aXRoIHswfS4iOntkZToiTm9jaCBpc3QgbmljaHRzIGdlYnVjaHQuIFNvYmFsZCBkaWUgWmFobHVuZyBkdXJjaCBpc3QsIHdpcmQgZGFzIFppbW1lciBiZWkgezB9IGdlYnVjaHQuIixqYToi44G+44Gg5LqI57SE44GV44KM44Gm44GE44G+44Gb44KT44CC5pSv5omV44GE44GM5a6M5LqG44GZ44KL44Go44CBezB944Gn5a6i5a6k44GM5LqI57SE44GV44KM44G+44GZ44CCIixrbzoi7JWE7KeBIOyYiOyVveuQmOyngCDslYrslZjsirXri4jri6QuIOqysOygnOqwgCDsmYTro4zrkJjrqbQgezB97JeQIOqwneyLpOydtCDsmIjslb3rkKnri4jri6QuIixmcjoiUmllbiBu4oCZZXN0IGVuY29yZSByw6lzZXJ2w6kuIFVuZSBmb2lzIGxlIHBhaWVtZW50IHBhc3PDqSwgbGEgY2hhbWJyZSBlc3QgcsOpc2VydsOpZSBjaGV6IHswfS4iLGVzOiJBw7puIG5vIGhheSBuYWRhIHJlc2VydmFkby4gQ3VhbmRvIHNlIGNvbXBsZXRlIGVsIHBhZ28sIGxhIGhhYml0YWNpw7NuIHF1ZWRhcsOhIHJlc2VydmFkYSBjb24gezB9LiJ9LCJUbyBwYXkgbm93Ijp7ZGU6IkpldHp0IHp1IHphaGxlbiIsamE6IuOBiuaUr+aJleOBhOmHkemhjSIsa286IuqysOygnCDquIjslaEiLGZyOiLDgCBwYXllciBtYWludGVuYW50IixlczoiQSBwYWdhciBhaG9yYSJ9LCJQYXkgYnkgezB9Ijp7ZGU6IkJlemFobGVuIGJpcyB7MH0iLGphOiJ7MH3jgb7jgafjgavjgYrmlK/miZXjgYTjgY/jgaDjgZXjgYQiLGtvOiJ7MH3quYzsp4Ag6rKw7KCc7ZW0IOyjvOyEuOyalCIsZnI6IsOAIHBheWVyIGF2YW50IHswfSIsZXM6IlBhZ3VlIGFudGVzIGRlIGxhcyB7MH0ifSwiUGF5IHdpdGhpbiI6e2RlOiJWZXJibGVpYmVuZGUgWmVpdCIsamE6Iuaui+OCiuaZgumWkyIsa286IuuCqOydgCDsi5zqsIQiLGZyOiJUZW1wcyByZXN0YW50IixlczoiVGllbXBvIHJlc3RhbnRlIn0sIlBheSB7MH0gb24gdGhlIHNlY3VyZSBwYWdlIjp7ZGU6InswfSBhdWYgZGVyIHNpY2hlcmVuIFNlaXRlIGJlemFobGVuIixqYToi5a6J5YWo44Gq44Oa44O844K444GnezB944KS5pSv5omV44GGIixrbzoi7JWI7KCE7ZWcIO2OmOydtOyngOyXkOyEnCB7MH0g6rKw7KCcIixmcjoiUGF5ZXIgezB9IHN1ciBsYSBwYWdlIHPDqWN1cmlzw6llIixlczoiUGFnYXIgezB9IGVuIGxhIHDDoWdpbmEgc2VndXJhIn0sIlBhaWQgYWxyZWFkeT8gQ2hlY2sgbm93Ijp7ZGU6IlNjaG9uIGJlemFobHQ/IEpldHp0IHByw7xmZW4iLGphOiLmlK/miZXjgYTmuIjjgb/jga7loLTlkIjjga/ku4rjgZnjgZDnorroqo0iLGtvOiLsnbTrr7gg6rKw7KCc7ZWY7IWo64KY7JqUPyDsp4DquIgg7ZmV7J24IixmcjoiRMOpasOgIHBhecOpID8gVsOpcmlmaWVyIixlczoiwr9ZYSBwYWfDsz8gQ29tcHJvYmFyIGFob3JhIn0sIlRlc3QgbW9kZTogbm8gcmVhbCBtb25leSBtb3ZlcyAtIHVzZSBhIHRlc3QgY2FyZCBvbiB0aGUgcGF5bWVudCBwYWdlLiBDYXJkIGRldGFpbHMgYXJlIHR5cGVkIG9ubHkgdGhlcmUsIG5ldmVyIGhlcmUuIjp7ZGU6IlRlc3Rtb2R1czogRXMgZmxpZcOfdCBrZWluIGVjaHRlcyBHZWxkIOKAkyBudXR6ZW4gU2llIGF1ZiBkZXIgWmFobHVuZ3NzZWl0ZSBlaW5lIFRlc3RrYXJ0ZS4gS2FydGVuZGF0ZW4gd2VyZGVuIG51ciBkb3J0IGVpbmdlZ2ViZW4sIG5pZSBoaWVyLiIsamE6IuODhuOCueODiOODouODvOODie+8muWun+mam+OBruOBiumHkeOBr+WLleOBjeOBvuOBm+OCk+OAguaUr+aJleOBhOODmuODvOOCuOOBp+ODhuOCueODiOOCq+ODvOODieOCkuOBiuS9v+OBhOOBj+OBoOOBleOBhOOAguOCq+ODvOODieaDheWgseOBr+OBneOBruODmuODvOOCuOOBp+OBruOBv+WFpeWKm+OBl+OAgeOBk+OBk+OBp+OBr+WFpeWKm+OBl+OBvuOBm+OCk+OAgiIsa286Iu2FjOyKpO2KuCDrqqjrk5w6IOyLpOygnCDrj4jsnYAg7Jik6rCA7KeAIOyViuyKteuLiOuLpC4g6rKw7KCcIO2OmOydtOyngOyXkOyEnCDthYzsiqTtirgg7Lm065Oc66W8IOyCrOyaqe2VmOyEuOyalC4g7Lm065OcIOygleuztOuKlCDqt7gg7Y6Y7J207KeA7JeQ7ISc66eMIOyeheugpe2VmOupsCDsl6zquLDshJzripQg67Cb7KeAIOyViuyKteuLiOuLpC4iLGZyOiJNb2RlIHRlc3QgOiBhdWN1biBhcmdlbnQgcsOpZWwgbuKAmWVzdCBkw6liaXTDqSDigJQgdXRpbGlzZXogdW5lIGNhcnRlIGRlIHRlc3Qgc3VyIGxhIHBhZ2UgZGUgcGFpZW1lbnQuIExlcyBkb25uw6llcyBkZSBjYXJ0ZSBzZSBzYWlzaXNzZW50IHVuaXF1ZW1lbnQgbMOgLCBqYW1haXMgaWNpLiIsZXM6Ik1vZG8gZGUgcHJ1ZWJhOiBubyBzZSBtdWV2ZSBkaW5lcm8gcmVhbDsgdXNlIHVuYSB0YXJqZXRhIGRlIHBydWViYSBlbiBsYSBww6FnaW5hIGRlIHBhZ28uIExvcyBkYXRvcyBkZSBsYSB0YXJqZXRhIHNvbG8gc2UgZXNjcmliZW4gYWxsw60sIG51bmNhIGFxdcOtLiJ9LCJDYXJkIGRldGFpbHMgYXJlIHR5cGVkIG9ubHkgb24gdGhlIHBheW1lbnQgcGFnZSwgbmV2ZXIgaGVyZS4gSWYgdGhlIGhvdGVsIGRvZXMgbm90IGNvbmZpcm0sIGFsbCBvZiBpdCBnb2VzIGJhY2suIjp7ZGU6IkthcnRlbmRhdGVuIHdlcmRlbiBudXIgYXVmIGRlciBaYWhsdW5nc3NlaXRlIGVpbmdlZ2ViZW4sIG5pZSBoaWVyLiBCZXN0w6R0aWd0IGRhcyBIb3RlbCBuaWNodCwgd2lyZCBhbGxlcyBlcnN0YXR0ZXQuIixqYToi44Kr44O844OJ5oOF5aCx44Gv5pSv5omV44GE44Oa44O844K444Gn44Gu44G/5YWl5Yqb44GX44CB44GT44GT44Gn44Gv5YWl5Yqb44GX44G+44Gb44KT44CC44Ob44OG44Or44GM56K65a6a44GX44Gq44GL44Gj44Gf5aC05ZCI44Gv5YWo6aGN6L+U6YeR44GV44KM44G+44GZ44CCIixrbzoi7Lm065OcIOygleuztOuKlCDqsrDsoJwg7Y6Y7J207KeA7JeQ7ISc66eMIOyeheugpe2VmOupsCDsl6zquLDshJzripQg67Cb7KeAIOyViuyKteuLiOuLpC4g7Zi47YWU7J20IO2Zleygle2VmOyngCDslYrsnLzrqbQg7KCE7JWhIO2ZmOu2iOuQqeuLiOuLpC4iLGZyOiJMZXMgZG9ubsOpZXMgZGUgY2FydGUgc2Ugc2Fpc2lzc2VudCB1bmlxdWVtZW50IHN1ciBsYSBwYWdlIGRlIHBhaWVtZW50LCBqYW1haXMgaWNpLiBTaSBs4oCZaMO0dGVsIG5lIGNvbmZpcm1lIHBhcywgdG91dCBlc3QgcmVtYm91cnPDqS4iLGVzOiJMb3MgZGF0b3MgZGUgbGEgdGFyamV0YSBzb2xvIHNlIGVzY3JpYmVuIGVuIGxhIHDDoWdpbmEgZGUgcGFnbywgbnVuY2EgYXF1w60uIFNpIGVsIGhvdGVsIG5vIGNvbmZpcm1hLCBzZSBkZXZ1ZWx2ZSB0b2RvLiJ9LCJSZWZlcmVuY2UgezB9IMK3IGZvciB7MX0iOntkZToiUmVmZXJlbnogezB9IMK3IGbDvHIgezF9IixqYToi55Wq5Y+3IHswfSDCtyB7MX0iLGtvOiLrsojtmLggezB9IMK3IHsxfSIsZnI6IlLDqWbDqXJlbmNlIHswfSDCtyBwb3VyIHsxfSIsZXM6IlJlZmVyZW5jaWEgezB9IMK3IHBhcmEgezF9In0sInRpbWUgaXMgdXAiOntkZToiWmVpdCBhYmdlbGF1ZmVuIixqYToi5pmC6ZaT5YiH44KMIixrbzoi7Iuc6rCEIOy0iOqzvCIsZnI6InRlbXBzIMOpY291bMOpIixlczoic2UgYWNhYsOzIGVsIHRpZW1wbyJ9LCJDb3VsZCBub3QgY2hlY2sgdGhlIHBheW1lbnQganVzdCBub3cuIjp7ZGU6IkRpZSBaYWhsdW5nIGtvbm50ZSBnZXJhZGUgbmljaHQgZ2VwcsO8ZnQgd2VyZGVuLiIsamE6IuS7iuOBr+aUr+aJleOBhOeKtuazgeOCkueiuuiqjeOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyngOq4iOydgCDqsrDsoJwg7IOB7YOc66W8IO2ZleyduO2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSB2w6lyaWZpZXIgbGUgcGFpZW1lbnQgcG91ciBs4oCZaW5zdGFudC4iLGVzOiJObyBzZSBwdWRvIGNvbXByb2JhciBlbCBwYWdvIGFob3JhIG1pc21vLiJ9LCJOb3QgYm9va2VkIjp7ZGU6Ik5pY2h0IGdlYnVjaHQiLGphOiLkuojntITjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ8iLGtvOiLsmIjslb3rkJjsp4Ag7JWK7J2MIixmcjoiTm9uIHLDqXNlcnbDqSIsZXM6Ik5vIHJlc2VydmFkbyJ9LCJOb3QgYm9va2VkICh7MH0pIjp7ZGU6Ik5pY2h0IGdlYnVjaHQgKHswfSkiLGphOiLkuojntITjgafjgY3jgarjgYvjgaPjgZ/mu57lnKjvvIh7MH3ku7bvvIkiLGtvOiLsmIjslb3rkJjsp4Ag7JWK7J2MICh7MH3qsbQpIixmcjoiTm9uIHLDqXNlcnbDqXMgKHswfSkiLGVzOiJObyByZXNlcnZhZGFzICh7MH0pIn0sIkJvb2thYmxlIGluc3RlYWQsIHRoZSBzYW1lIG5pZ2h0cyI6e2RlOiJTdGF0dGRlc3NlbiBidWNoYmFyLCBnbGVpY2hlIE7DpGNodGUiLGphOiLlkIzjgZjml6XnqIvjgafkuojntITjgafjgY3jgovjg5vjg4bjg6siLGtvOiLqsJnsnYAg64Kg7Kec7JeQIOuMgOyLoCDsmIjslb0g6rCA64qlIixmcjoiUsOpc2VydmFibGUgw6AgbGEgcGxhY2UsIG3Dqm1lcyBudWl0cyIsZXM6IkRpc3BvbmlibGUgZW4gc3UgbHVnYXIsIG1pc21hcyBub2NoZXMifSwiezB9IGZvciB0aGUgc3RheSI6e2RlOiJ7MH0gZsO8ciBkZW4gQXVmZW50aGFsdCIsamE6Iua7nuWcqOWQiOioiCB7MH0iLGtvOiLsiJnrsJUg7ZWp6rOEIHswfSIsZnI6InswfSBwb3VyIGxlIHPDqWpvdXIiLGVzOiJ7MH0gcG9yIGxhIGVzdGFuY2lhIn0sIlRha2UgdGhpcyBpbnN0ZWFkIjp7ZGU6IlN0YXR0ZGVzc2VuIGRpZXNlcyIsamE6IuOBk+OBoeOCieOBq+WkieabtCIsa286IuydtOqzs+ycvOuhnCDrs4Dqsr0iLGZyOiJQcmVuZHJlIGNlbHVpLWNpIixlczoiRWxlZ2lyIGVzdGUifSwiVHJ5IGFnYWluIjp7ZGU6IkVybmV1dCB2ZXJzdWNoZW4iLGphOiLjgoLjgYbkuIDluqboqabjgZkiLGtvOiLri6Tsi5wg7Iuc64+EIixmcjoiUsOpZXNzYXllciIsZXM6IlJlaW50ZW50YXIifSwiRmluZCBhbm90aGVyIGhvdGVsIjp7ZGU6IkFuZGVyZXMgSG90ZWwgZmluZGVuIixqYToi5Yil44Gu44Ob44OG44Or44KS5o6i44GZIixrbzoi64uk66W4IO2YuO2FlCDssL7quLAiLGZyOiJUcm91dmVyIHVuIGF1dHJlIGjDtHRlbCIsZXM6IkJ1c2NhciBvdHJvIGhvdGVsIn0sIlRoYXQgc3RheSBjb3VsZCBub3QgYmUgYm9va2VkLiBOb3RoaW5nIHdhcyBjaGFyZ2VkLiI6e2RlOiJEaWVzZXIgQXVmZW50aGFsdCBrb25udGUgbmljaHQgZ2VidWNodCB3ZXJkZW4uIEVzIHd1cmRlIG5pY2h0cyBiZXJlY2huZXQuIixqYToi44GT44Gu5rue5Zyo44Gv5LqI57SE44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CC6KuL5rGC44Gv44GC44KK44G+44Gb44KT44CCIixrbzoi7J20IOyImeuwleydgCDsmIjslb3tlZjsp4Ag66q77ZaI7Iq164uI64ukLiDqsrDsoJzrkJjsp4Ag7JWK7JWY7Iq164uI64ukLiIsZnI6IkNlIHPDqWpvdXIgbuKAmWEgcGFzIHB1IMOqdHJlIHLDqXNlcnbDqS4gUmllbiBu4oCZYSDDqXTDqSBmYWN0dXLDqS4iLGVzOiJFc2EgZXN0YW5jaWEgbm8gc2UgcHVkbyByZXNlcnZhci4gTm8gc2UgY29icsOzIG5hZGEuIn0sIk5vbmUgb2YgdGhlIHswfSBzdGF5cyBjb3VsZCBiZSBib29rZWQuIE5vdGhpbmcgd2FzIGNoYXJnZWQuIjp7ZGU6IktlaW5lciBkZXIgezB9IEF1ZmVudGhhbHRlIGtvbm50ZSBnZWJ1Y2h0IHdlcmRlbi4gRXMgd3VyZGUgbmljaHRzIGJlcmVjaG5ldC4iLGphOiJ7MH3ku7bjga7mu57lnKjjga/jgYTjgZrjgozjgoLkuojntITjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgILoq4vmsYLjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLsiJnrsJUgezB96rG0IOuqqOuRkCDsmIjslb3tlZjsp4Ag66q77ZaI7Iq164uI64ukLiDqsrDsoJzrkJjsp4Ag7JWK7JWY7Iq164uI64ukLiIsZnI6IkF1Y3VuIGRlcyB7MH0gc8Opam91cnMgbuKAmWEgcHUgw6p0cmUgcsOpc2VydsOpLiBSaWVuIG7igJlhIMOpdMOpIGZhY3R1csOpLiIsZXM6Ik5vIHNlIHB1ZG8gcmVzZXJ2YXIgbmluZ3VuYSBkZSBsYXMgezB9IGVzdGFuY2lhcy4gTm8gc2UgY29icsOzIG5hZGEuIn0sIlRoZSByb29tIGlzIGhlbGQgZm9yIHlvdSB1bnRpbCB7MH0uIjp7ZGU6IkRhcyBaaW1tZXIgaXN0IGJpcyB7MH0gZsO8ciBTaWUgcmVzZXJ2aWVydC4iLGphOiLlrqLlrqTjga97MH3jgb7jgafnorrkv53jgZXjgozjgabjgYTjgb7jgZnjgIIiLGtvOiLqsJ3si6TsnYAgezB96rmM7KeAIO2ZleuztOuQmOyWtCDsnojsirXri4jri6QuIixmcjoiTGEgY2hhbWJyZSB2b3VzIGVzdCByZXRlbnVlIGp1c3F14oCZYXUgezB9LiIsZXM6IkxhIGhhYml0YWNpw7NuIHF1ZWRhIHJldGVuaWRhIGhhc3RhIGVsIHswfS4ifSwiQmVpbmcgY29uZmlybWVkIjp7ZGU6IldpcmQgYmVzdMOkdGlndCIsamE6IueiuuiqjeS4rSIsa286Iu2ZleyduCDspJEiLGZyOiJFbiBjb3VycyBkZSBjb25maXJtYXRpb24iLGVzOiJFbiBjb25maXJtYWNpw7NuIn0sIkNvZGUgb25jZSBjb25maXJtZWQiOntkZToiQ29kZSBuYWNoIEJlc3TDpHRpZ3VuZyIsamE6IueiuuiqjeW+jOOBq+eVquWPt+OCkueZuuihjCIsa286Iu2ZleyduCDtm4Qg67KI7Zi4IOuwnOq4iSIsZnI6IkNvZGUgYXByw6hzIGNvbmZpcm1hdGlvbiIsZXM6IkPDs2RpZ28gdHJhcyBsYSBjb25maXJtYWNpw7NuIn0sIkNvbmZpcm1hdGlvbiBjb2RlIjp7ZGU6IkJlc3TDpHRpZ3VuZ3Njb2RlIixqYToi56K66KqN55Wq5Y+3Iixrbzoi7ZmV7J24IOuyiO2YuCIsZnI6IkNvZGUgZGUgY29uZmlybWF0aW9uIixlczoiQ8OzZGlnbyBkZSBjb25maXJtYWNpw7NuIn0sIldhaXRpbmcgZm9yIHswfSB0byBjb25maXJtIHRoaXMgYm9va2luZyDigJQgdGhhdCB0YWtlcyB1cCB0byBlaWdodCBtaW51dGVzLiBNeSBib29raW5ncyBzaG93cyB3aGVuIGl0IGhhcy4iOntkZToiV2lyIHdhcnRlbiBhdWYgZGllIEJlc3TDpHRpZ3VuZyBkdXJjaCB7MH0g4oCUIGRhcyBkYXVlcnQgYmlzIHp1IGFjaHQgTWludXRlbi4gVW50ZXIg4oCeTWVpbmUgQnVjaHVuZ2Vu4oCcIHNlaGVuIFNpZSwgd2FubiBzaWUgZGEgaXN0LiIsamE6InswfeOBq+OCiOOCi+S6iOe0hOOBrueiuuiqjeOCkuW+heOBo+OBpuOBhOOBvuOBme+8iOacgOWkpzjliIbjgbvjganvvInjgILnorroqo3jgZXjgozjgovjgajjgIzkuojntITkuIDopqfjgI3jgavooajnpLrjgZXjgozjgb7jgZnjgIIiLGtvOiJ7MH3snZgg7JiI7JW9IO2ZleyduOydhCDquLDri6TrpqzripQg7KSR7J6F64uI64ukLiDstZzrjIAgOOu2hCDsoJXrj4Qg6rG466a964uI64ukLiDtmZXsnbjrkJjrqbQg4oCY64K0IOyYiOyVveKAmeyXkCDtkZzsi5zrkKnri4jri6QuIixmcjoiRW4gYXR0ZW50ZSBkZSBsYSBjb25maXJtYXRpb24gZGUgezB9IOKAlCBjZWxhIHByZW5kIGp1c3F14oCZw6AgaHVpdCBtaW51dGVzLiDCqyBNZXMgcsOpc2VydmF0aW9ucyDCuyBpbmRpcXVlIHF1YW5kIGPigJllc3QgZmFpdC4iLGVzOiJFc3BlcmFuZG8gYSBxdWUgezB9IGNvbmZpcm1lIGVzdGEgcmVzZXJ2YTsgdGFyZGEgaGFzdGEgb2NobyBtaW51dG9zLiBFbiDCq01pcyByZXNlcnZhc8K7IHZlcsOhIGN1w6FuZG8gc2UgY29uZmlybWEuIn0sIkFkZC1vbnMiOntkZToiRXh0cmFzIixqYToi44Kq44OX44K344On44OzIixrbzoi7LaU6rCAIOyEnOu5hOyKpCIsZnI6Ik9wdGlvbnMiLGVzOiJFeHRyYXMifSwiQ2FuY2VsIHswfSI6e2RlOiJ7MH0gc3Rvcm5pZXJlbiIsamE6InswfeOCkuOCreODo+ODs+OCu+ODqyIsa286InswfSDst6jshowiLGZyOiJBbm51bGVyIHswfSIsZXM6IkNhbmNlbGFyIHswfSJ9LCJUZXN0IGJvb2tpbmcgcGFpZCBhbmQgYm9va2VkIjp7ZGU6IlRlc3RidWNodW5nIGJlemFobHQgdW5kIGdlYnVjaHQiLGphOiLjg4bjgrnjg4jkuojntITvvJrmlK/miZXjgYTjg7vkuojntITlrozkuoYiLGtvOiLthYzsiqTtirgg7JiI7JW9IOqysOygnCDrsI8g7JiI7JW9IOyZhOujjCIsZnI6IlLDqXNlcnZhdGlvbiB0ZXN0IHBhecOpZSBldCByw6lzZXJ2w6llIixlczoiUmVzZXJ2YSBkZSBwcnVlYmEgcGFnYWRhIHkgcmVzZXJ2YWRhIn0sIlBhaWQgYW5kIGJvb2tlZCB3aXRoIHswfSI6e2RlOiJCZXphaGx0IHVuZCBiZWkgezB9IGdlYnVjaHQiLGphOiLmlK/miZXjgYTlrozkuobjg7t7MH3jgafkuojntITmuIjjgb8iLGtvOiLqsrDsoJwg7JmE66OMLCB7MH3sl5Ag7JiI7JW965CoIixmcjoiUGF5w6kgZXQgcsOpc2VydsOpIGNoZXogezB9IixlczoiUGFnYWRvIHkgcmVzZXJ2YWRvIGNvbiB7MH0ifSwiUGFpZCDigJQgd2FpdGluZyBmb3IgezB9IHRvIGNvbmZpcm0iOntkZToiQmV6YWhsdCDigJQgd2FydGV0IGF1ZiBCZXN0w6R0aWd1bmcgZHVyY2ggezB9IixqYToi5pSv5omV44GE5a6M5LqGIOKAlCB7MH3jga7norroqo3lvoXjgaEiLGtvOiLqsrDsoJwg7JmE66OMIOKAlCB7MH0g7ZmV7J24IOuMgOq4sCDspJEiLGZyOiJQYXnDqSDigJQgZW4gYXR0ZW50ZSBkZSBsYSBjb25maXJtYXRpb24gZGUgezB9IixlczoiUGFnYWRvIOKAlCBlc3BlcmFuZG8gbGEgY29uZmlybWFjacOzbiBkZSB7MH0ifSwiVGVzdCBib29raW5nIG1hZGUiOntkZToiVGVzdGJ1Y2h1bmcgZXJzdGVsbHQiLGphOiLjg4bjgrnjg4jkuojntITlrozkuoYiLGtvOiLthYzsiqTtirgg7JiI7JW9IOyZhOujjCIsZnI6IlLDqXNlcnZhdGlvbiB0ZXN0IGVmZmVjdHXDqWUiLGVzOiJSZXNlcnZhIGRlIHBydWViYSBoZWNoYSJ9LCJTZW50IHRvIHswfSI6e2RlOiJBbiB7MH0gZ2VzZW5kZXQiLGphOiJ7MH3jgavpgIHkv6HjgZfjgb7jgZfjgZ8iLGtvOiJ7MH3sl5Ag7KCE7Iah65CoIixmcjoiRW52b3nDqSDDoCB7MH0iLGVzOiJFbnZpYWRvIGEgezB9In0sIkJvb2tlZCB3aXRoIHswfSI6e2RlOiJCZWkgezB9IGdlYnVjaHQiLGphOiJ7MH3jgafkuojntITlrozkuoYiLGtvOiJ7MH3sl5Ag7JiI7JW9IOyZhOujjCIsZnI6IlLDqXNlcnbDqSBjaGV6IHswfSIsZXM6IlJlc2VydmFkbyBjb24gezB9In0sIkRlbW8gYm9va2luZyBtYWRlIjp7ZGU6IkRlbW9idWNodW5nIGVyc3RlbGx0IixqYToi44OH44Oi5LqI57SE5a6M5LqGIixrbzoi642w66qoIOyYiOyVvSDsmYTro4wiLGZyOiJSw6lzZXJ2YXRpb24gZMOpbW8gZWZmZWN0dcOpZSIsZXM6IlJlc2VydmEgZGUgZGVtb3N0cmFjacOzbiBoZWNoYSJ9LCJSb29tcyBoZWxkIjp7ZGU6IlppbW1lciByZXNlcnZpZXJ0IixqYToi5a6i5a6k44KS56K65L+d44GX44G+44GX44GfIixrbzoi6rCd7IukIO2ZleuztOuQqCIsZnI6IkNoYW1icmVzIHJldGVudWVzIixlczoiSGFiaXRhY2lvbmVzIHJldGVuaWRhcyJ9LCJSb29tIGhlbGQiOntkZToiWmltbWVyIHJlc2VydmllcnQiLGphOiLlrqLlrqTjgpLnorrkv53jgZfjgb7jgZfjgZ8iLGtvOiLqsJ3si6Qg7ZmV67O065CoIixmcjoiQ2hhbWJyZSByZXRlbnVlIixlczoiSGFiaXRhY2nDs24gcmV0ZW5pZGEifSwiV2FpdGluZyBmb3IgY29uZmlybWF0aW9uIjp7ZGU6IldhcnRlbiBhdWYgQmVzdMOkdGlndW5nIixqYToi56K66KqN5b6F44GhIixrbzoi7ZmV7J24IOuMgOq4sCDspJEiLGZyOiJFbiBhdHRlbnRlIGRlIGNvbmZpcm1hdGlvbiIsZXM6IkVzcGVyYW5kbyBjb25maXJtYWNpw7NuIn0sIkRlbW8gYm9va2luZyI6e2RlOiJEZW1vYnVjaHVuZyIsamE6IuODh+ODouS6iOe0hCIsa286IuuNsOuqqCDsmIjslb0iLGZyOiJSw6lzZXJ2YXRpb24gZMOpbW8iLGVzOiJSZXNlcnZhIGRlIGRlbW9zdHJhY2nDs24ifSwiVGVzdCBib29raW5nIGNvbmZpcm1lZCI6e2RlOiJUZXN0YnVjaHVuZyBiZXN0w6R0aWd0IixqYToi44OG44K544OI5LqI57SE56K65a6aIixrbzoi7YWM7Iqk7Yq4IOyYiOyVvSDtmZXsoJUiLGZyOiJSw6lzZXJ2YXRpb24gdGVzdCBjb25maXJtw6llIixlczoiUmVzZXJ2YSBkZSBwcnVlYmEgY29uZmlybWFkYSJ9LCJCb29raW5nIGNvbmZpcm1lZCI6e2RlOiJCdWNodW5nIGJlc3TDpHRpZ3QiLGphOiLkuojntITnorrlrpoiLGtvOiLsmIjslb0g7ZmV7KCVIixmcjoiUsOpc2VydmF0aW9uIGNvbmZpcm3DqWUiLGVzOiJSZXNlcnZhIGNvbmZpcm1hZGEifSwiVGhpcyBib29raW5nIG5vIGxvbmdlciBob2xkcyBhIHJvb20uIjp7ZGU6IkRpZXNlIEJ1Y2h1bmcgYmVsZWd0IGtlaW4gWmltbWVyIG1laHIuIixqYToi44GT44Gu5LqI57SE44Gn44Gv5a6i5a6k44GM56K65L+d44GV44KM44Gm44GE44G+44Gb44KT44CCIixrbzoi7J20IOyYiOyVveydgCDrjZQg7J207IOBIOqwneyLpOydhCDtmZXrs7TtlZjsp4Ag7JWK7Iq164uI64ukLiIsZnI6IkNldHRlIHLDqXNlcnZhdGlvbiBuZSByZXRpZW50IHBsdXMgZGUgY2hhbWJyZS4iLGVzOiJFc3RhIHJlc2VydmEgeWEgbm8gcmV0aWVuZSBuaW5ndW5hIGhhYml0YWNpw7NuLiJ9LCJ7MH0gb2YgezF9IHN0YXlzIGJvb2tlZCwgb25lIGNvZGUgZWFjaCI6e2RlOiJ7MH0gdm9uIHsxfSBBdWZlbnRoYWx0ZW4gZ2VidWNodCwgamUgZWluIENvZGUiLGphOiJ7MX3ku7bkuK17MH3ku7bjga7mu57lnKjjgpLkuojntITvvIjjgZ3jgozjgZ7jgoznorroqo3nlarlj7fjgYLjgorvvIkiLGtvOiLsiJnrsJUgezF96rG0IOykkSB7MH3qsbQg7JiI7JW9IOyZhOujjCwg6rG067OEIO2ZleyduCDrsojtmLgiLGZyOiJ7MH0gc8Opam91cnMgc3VyIHsxfSByw6lzZXJ2w6lzLCB1biBjb2RlIGNoYWN1biIsZXM6InswfSBkZSB7MX0gZXN0YW5jaWFzIHJlc2VydmFkYXMsIHVuIGPDs2RpZ28gY2FkYSB1bmEifSwiLCB7MH0gYmVpbmcgY29uZmlybWVkIjp7ZGU6IiwgezB9IGluIEJlc3TDpHRpZ3VuZyIsamE6IuOAgXswfeS7tueiuuiqjeS4rSIsa286IiwgezB96rG0IO2ZleyduCDspJEiLGZyOiIsIHswfSBlbiBjb3VycyBkZSBjb25maXJtYXRpb24iLGVzOiIsIHswfSBlbiBjb25maXJtYWNpw7NuIn0sIiAtIG9uZSBjb3VsZCBub3QgYmUsIGJlbG93Ijp7ZGU6IiDigJMgZWluZXIga29ubnRlIG5pY2h0IGdlYnVjaHQgd2VyZGVuLCBzaWVoZSB1bnRlbiIsamE6IuOAgjHku7bjga/kuojntITjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/vvIjkuIvoqJjlj4LnhafvvIkiLGtvOiIg4oCUIDHqsbTsnYAg7JiI7JW97ZWY7KeAIOuqu+2WiOyKteuLiOuLpCjslYTrnpgg7LC46rOgKSIsZnI6IiDigJQgdW4gbuKAmWEgcGFzIHB1IGzigJnDqnRyZSwgdm9pciBjaS1kZXNzb3VzIixlczoiOyB1bmEgbm8gc2UgcHVkbywgdmVyIGFiYWpvIn0sIiAtIHswfSBjb3VsZCBub3QgYmUsIGJlbG93Ijp7ZGU6IiDigJMgezB9IGtvbm50ZW4gbmljaHQgZ2VidWNodCB3ZXJkZW4sIHNpZWhlIHVudGVuIixqYToi44CCezB95Lu244Gv5LqI57SE44Gn44GN44G+44Gb44KT44Gn44GX44Gf77yI5LiL6KiY5Y+C54Wn77yJIixrbzoiIOKAlCB7MH3qsbTsnYAg7JiI7JW97ZWY7KeAIOuqu+2WiOyKteuLiOuLpCjslYTrnpgg7LC46rOgKSIsZnI6IiDigJQgezB9IG7igJlvbnQgcGFzIHB1IGzigJnDqnRyZSwgdm9pciBjaS1kZXNzb3VzIixlczoiOyB7MH0gbm8gc2UgcHVkaWVyb24sIHZlciBhYmFqbyJ9LCIuIjp7ZGU6Ii4iLGphOiLjgIIiLGtvOiIuIixmcjoiLiIsZXM6Ii4ifSwiezB9IGNvbmZpcm1hdGlvbiBjb2Rlcywgb25lIGZvciBlYWNoIGhvdGVsLiI6e2RlOiJ7MH0gQmVzdMOkdGlndW5nc2NvZGVzLCBlaW5lciBwcm8gSG90ZWwuIixqYToi56K66KqN55Wq5Y+344GvezB95Lu244CB44Ob44OG44Or44GU44Go44GrMeS7tuOBp+OBmeOAgiIsa286Iu2ZleyduCDrsojtmLggezB96rCcLCDtmLjthZTrp4jri6QgMeqwnOyeheuLiOuLpC4iLGZyOiJ7MH0gY29kZXMgZGUgY29uZmlybWF0aW9uLCB1biBwYXIgaMO0dGVsLiIsZXM6InswfSBjw7NkaWdvcyBkZSBjb25maXJtYWNpw7NuLCB1bm8gcG9yIGhvdGVsLiJ9LCJLZWVwIHRoaXMgY29kZTogd2l0aCBpdCBhbmQgeW91ciBlbWFpbCwgeW91IGNhbiBmaW5kIHRoaXMgYm9va2luZyBhZ2FpbiBmcm9tIGFueSBjaGF0LiI6e2RlOiJCZXdhaHJlbiBTaWUgZGllc2VuIENvZGUgYXVmOiBNaXQgaWhtIHVuZCBJaHJlciBFLU1haWwgZmluZGVuIFNpZSBkaWVzZSBCdWNodW5nIGluIGplZGVtIENoYXQgd2llZGVyLiIsamE6IuOBk+OBrueiuuiqjeeVquWPt+OCkuS/neeuoeOBl+OBpuOBj+OBoOOBleOBhOOAgueVquWPt+OBqOODoeODvOODq+OCouODieODrOOCueOBjOOBguOCjOOBsOOAgeOBqeOBruODgeODo+ODg+ODiOOBi+OCieOBp+OCguOBk+OBruS6iOe0hOOCkuaOouOBm+OBvuOBmeOAgiIsa286IuydtCDtmZXsnbgg67KI7Zi466W8IOuztOq0gO2VmOyEuOyalC4g67KI7Zi47JmAIOydtOuplOydvOunjCDsnojsnLzrqbQg7Ja065akIOyxhO2MheyXkOyEnOuToCDsnbQg7JiI7JW97J2EIOuLpOyLnCDssL7snYQg7IiYIOyeiOyKteuLiOuLpC4iLGZyOiJHYXJkZXogY2UgY29kZSA6IGF2ZWMgbHVpIGV0IHZvdHJlIGUtbWFpbCwgdm91cyByZXRyb3V2ZXJleiBjZXR0ZSByw6lzZXJ2YXRpb24gZGVwdWlzIG7igJlpbXBvcnRlIHF1ZWxsZSBjb252ZXJzYXRpb24uIixlczoiR3VhcmRlIGVzdGUgY8OzZGlnbzogY29uIMOpbCB5IHN1IGNvcnJlbyBlbGVjdHLDs25pY28gcHVlZGUgdm9sdmVyIGEgZW5jb250cmFyIGVzdGEgcmVzZXJ2YSBkZXNkZSBjdWFscXVpZXIgY2hhdC4ifSwiezB9IGJvb2tpbmdzLCBvbmUgZm9yIGVhY2ggc3RheS4gRWFjaCBob3RlbCBrZWVwcyBpdHMgb3duIG5pZ2h0cyB1bmRlciBpdHMgb3duIGNvZGUsIGFuZCBlYWNoIGlzIGNoYW5nZWQgb3IgY2FuY2VsbGVkIG9uIGl0cyBvd24uIjp7ZGU6InswfSBCdWNodW5nZW4sIGVpbmUgcHJvIEF1ZmVudGhhbHQuIEplZGVzIEhvdGVsIGbDvGhydCBzZWluZSBOw6RjaHRlIHVudGVyIGVpbmVtIGVpZ2VuZW4gQ29kZSwgdW5kIGplZGUgd2lyZCBlaW56ZWxuIGdlw6RuZGVydCBvZGVyIHN0b3JuaWVydC4iLGphOiLkuojntITjga97MH3ku7bjgafjgIHmu57lnKjjgZTjgajjgasx5Lu244Gn44GZ44CC5ZCE44Ob44OG44Or44GM44Gd44KM44Ge44KM44Gu56K66KqN55Wq5Y+344Gn566h55CG44GX44CB5aSJ5pu044KE44Kt44Oj44Oz44K744Or44KC5YCL5Yil44Gr6KGM44GE44G+44GZ44CCIixrbzoi7JiI7JW9IHswfeqxtCwg7IiZ67CV66eI64ukIDHqsbTsnoXri4jri6QuIO2YuO2FlOuniOuLpCDqsIHsnpDsnZgg7ZmV7J24IOuyiO2YuOuhnCDqtIDrpqzrkJjrqbAsIOuzgOqyveydtOuCmCDst6jshozrj4Qg6rCB6rCBIOuUsOuhnCDtlanri4jri6QuIixmcjoiezB9IHLDqXNlcnZhdGlvbnMsIHVuZSBwYXIgc8Opam91ci4gQ2hhcXVlIGjDtHRlbCBnYXJkZSBzZXMgbnVpdHMgc291cyBzb24gcHJvcHJlIGNvZGUsIGV0IGNoYWN1bmUgc2UgbW9kaWZpZSBvdSBz4oCZYW5udWxlIHPDqXBhcsOpbWVudC4iLGVzOiJ7MH0gcmVzZXJ2YXMsIHVuYSBwb3IgZXN0YW5jaWEuIENhZGEgaG90ZWwgZ3VhcmRhIHN1cyBub2NoZXMgY29uIHN1IHByb3BpbyBjw7NkaWdvLCB5IGNhZGEgdW5hIHNlIGNhbWJpYSBvIGNhbmNlbGEgcG9yIHNlcGFyYWRvLiJ9LCJ7MH0gYm9va2luZ3MsIG9uZSBmb3IgZWFjaCBzdGF5LiBFYWNoIGhvdGVsIGtlZXBzIGl0cyBvd24gbmlnaHRzIHVuZGVyIGl0cyBvd24gY29kZSwgYW5kIGVhY2ggaXMgY2FuY2VsbGVkIG9uIGl0cyBvd24uIjp7ZGU6InswfSBCdWNodW5nZW4sIGVpbmUgcHJvIEF1ZmVudGhhbHQuIEplZGVzIEhvdGVsIGbDvGhydCBzZWluZSBOw6RjaHRlIHVudGVyIGVpbmVtIGVpZ2VuZW4gQ29kZSwgdW5kIGplZGUgd2lyZCBlaW56ZWxuIHN0b3JuaWVydC4iLGphOiLkuojntITjga97MH3ku7bjgafjgIHmu57lnKjjgZTjgajjgasx5Lu244Gn44GZ44CC5ZCE44Ob44OG44Or44GM44Gd44KM44Ge44KM44Gu56K66KqN55Wq5Y+344Gn566h55CG44GX44CB44Kt44Oj44Oz44K744Or44KC5YCL5Yil44Gr6KGM44GE44G+44GZ44CCIixrbzoi7JiI7JW9IHswfeqxtCwg7IiZ67CV66eI64ukIDHqsbTsnoXri4jri6QuIO2YuO2FlOuniOuLpCDqsIHsnpDsnZgg7ZmV7J24IOuyiO2YuOuhnCDqtIDrpqzrkJjrqbAsIOy3qOyGjOuPhCDqsIHqsIEg65Sw66GcIO2VqeuLiOuLpC4iLGZyOiJ7MH0gcsOpc2VydmF0aW9ucywgdW5lIHBhciBzw6lqb3VyLiBDaGFxdWUgaMO0dGVsIGdhcmRlIHNlcyBudWl0cyBzb3VzIHNvbiBwcm9wcmUgY29kZSwgZXQgY2hhY3VuZSBz4oCZYW5udWxlIHPDqXBhcsOpbWVudC4iLGVzOiJ7MH0gcmVzZXJ2YXMsIHVuYSBwb3IgZXN0YW5jaWEuIENhZGEgaG90ZWwgZ3VhcmRhIHN1cyBub2NoZXMgY29uIHN1IHByb3BpbyBjw7NkaWdvLCB5IGNhZGEgdW5hIHNlIGNhbmNlbGEgcG9yIHNlcGFyYWRvLiJ9LCJQYWlkIGluIGFkdmFuY2U6IHswfS4iOntkZToiVm9yYXVzYmV6YWhsdDogezB9LiIsamE6IuS6i+WJjeaJleOBhOa4iOOBv++8mnswfeOAgiIsa286IuyEoOqysOygnCDsmYTro4w6IHswfS4iLGZyOiJQYXnDqSBk4oCZYXZhbmNlIDogezB9LiIsZXM6IlBhZ2FkbyBwb3IgYWRlbGFudGFkbzogezB9LiJ9LCJQYWlkIGluIHRlc3QgbW9kZSAtIG5vIHJlYWwgbW9uZXkgbW92ZWQsIGFuZCB0aGUgYm9va2luZyBpcyBpbiBhIHNpbXVsYXRlZCBzeXN0ZW0uIjp7ZGU6IkltIFRlc3Rtb2R1cyBiZXphaGx0IOKAkyBlcyBpc3Qga2VpbiBlY2h0ZXMgR2VsZCBnZWZsb3NzZW4sIHVuZCBkaWUgQnVjaHVuZyBsaWVndCBpbiBlaW5lbSBzaW11bGllcnRlbiBTeXN0ZW0uIixqYToi44OG44K544OI44Oi44O844OJ44Gn44Gu5pSv5omV44GE44Gn44GZ44CC5a6f6Zqb44Gu44GK6YeR44Gv5YuV44GE44Gm44GK44KJ44Ga44CB5LqI57SE44Gv5qih5pOs44K344K544OG44Og5LiK44Gr44GC44KK44G+44GZ44CCIixrbzoi7YWM7Iqk7Yq4IOuqqOuTnCDqsrDsoJzsnoXri4jri6QuIOyLpOygnCDrj4jsnYAg7Jik6rCA7KeAIOyViuyVmOqzoCDsmIjslb3snYAg66qo7J2YIOyLnOyKpO2FnOyXkCDsnojsirXri4jri6QuIixmcjoiUGF5w6kgZW4gbW9kZSB0ZXN0IOKAlCBhdWN1biBhcmdlbnQgcsOpZWwgbuKAmWEgw6l0w6kgZMOpYml0w6ksIGV0IGxhIHLDqXNlcnZhdGlvbiBlc3QgZGFucyB1biBzeXN0w6htZSBzaW11bMOpLiIsZXM6IlBhZ2FkbyBlbiBtb2RvIGRlIHBydWViYTogbm8gc2UgbW92acOzIGRpbmVybyByZWFsLCB5IGxhIHJlc2VydmEgZXN0w6EgZW4gdW4gc2lzdGVtYSBzaW11bGFkby4ifSwiTm90aGluZyBtb3JlIGlzIHBhaWQgYXQgdGhlIGhvdGVsIGZvciB0aGUgcm9vbS4gSWYgezB9IGRvZXMgbm90IGNvbmZpcm0gaXQsIGFsbCBvZiBpdCBnb2VzIGJhY2sgdG8geW91ciBjYXJkLiI6e2RlOiJJbSBIb3RlbCBpc3QgZsO8ciBkYXMgWmltbWVyIG5pY2h0cyBtZWhyIHp1IHphaGxlbi4gQmVzdMOkdGlndCB7MH0gbmljaHQsIGdlaHQgYWxsZXMgYXVmIElocmUgS2FydGUgenVyw7xjay4iLGphOiLjg5vjg4bjg6vjgaflrqLlrqTmlpnph5HjgpLov73liqDjgafmlK/miZXjgYblv4XopoHjga/jgYLjgorjgb7jgZvjgpPjgIJ7MH3jgYznorrlrprjgZfjgarjgYvjgaPjgZ/loLTlkIjjga/lhajpoY3jgqvjg7zjg4njgavov5Tph5HjgZXjgozjgb7jgZnjgIIiLGtvOiLtmLjthZTsl5DshJwg6rCd7IukIOyalOq4iOydhCDstpTqsIDroZwg64K07KeAIOyViuyKteuLiOuLpC4gezB97J20KOqwgCkg7ZmV7KCV7ZWY7KeAIOyViuycvOuptCDsoITslaEg7Lm065Oc66GcIO2ZmOu2iOuQqeuLiOuLpC4iLGZyOiJSaWVuIGRlIHBsdXMgbuKAmWVzdCDDoCBwYXllciDDoCBs4oCZaMO0dGVsIHBvdXIgbGEgY2hhbWJyZS4gU2kgezB9IG5lIGxhIGNvbmZpcm1lIHBhcywgdG91dCBlc3QgcmVtYm91cnPDqSBzdXIgdm90cmUgY2FydGUuIixlczoiTm8gaGF5IHF1ZSBwYWdhciBuYWRhIG3DoXMgZW4gZWwgaG90ZWwgcG9yIGxhIGhhYml0YWNpw7NuLiBTaSB7MH0gbm8gbGEgY29uZmlybWEsIHNlIGxlIGRldnVlbHZlIHRvZG8gYSBsYSB0YXJqZXRhLiJ9LCJBIHRlc3QgYm9va2luZy4iOntkZToiRWluZSBUZXN0YnVjaHVuZy4iLGphOiLjg4bjgrnjg4jkuojntITjgafjgZnjgIIiLGtvOiLthYzsiqTtirgg7JiI7JW97J6F64uI64ukLiIsZnI6IlVuZSByw6lzZXJ2YXRpb24gdGVzdC4iLGVzOiJVbmEgcmVzZXJ2YSBkZSBwcnVlYmEuIn0sIk1hZGUgaW4gYSBzaW11bGF0ZWQgY29weSBvZiB7MH0ncyBzeXN0ZW06IG5vdCBhIHsxfSByZXNlcnZhdGlvbiwgbm8gcm9vbSBpcyBoZWxkLCBhbmQgbm90aGluZyBpcyBwYWlkLiI6e2RlOiJJbiBlaW5lciBzaW11bGllcnRlbiBLb3BpZSBkZXMgU3lzdGVtcyB2b24gezB9IGVyc3RlbGx0OiBrZWluZSBSZXNlcnZpZXJ1bmcgYmVpIHsxfSwga2VpbiBaaW1tZXIgcmVzZXJ2aWVydCwgbmljaHRzIGJlemFobHQuIixqYToiezB944Gu44K344K544OG44Og44Gu5qih5pOs44Kz44OU44O844Gn5L2c5oiQ44GV44KM44Gf44KC44Gu44Gn44CBezF944Gu5a6f6Zqb44Gu5LqI57SE44Gn44Gv44GC44KK44G+44Gb44KT44CC5a6i5a6k44Gv56K65L+d44GV44KM44Ga44CB5pSv5omV44GE44KC44GC44KK44G+44Gb44KT44CCIixrbzoiezB9IOyLnOyKpO2FnOydmCDrqqjsnZgg7IKs67O47JeQ7IScIOunjOuTpOyWtOyhjOyKteuLiOuLpC4gezF97J2YIOyLpOygnCDsmIjslb3snbQg7JWE64uI66mwLCDqsJ3si6Trj4Qg7ZmV67O065CY7KeAIOyViuqzoCDqsrDsoJzrj4Qg7JeG7Iq164uI64ukLiIsZnI6IkZhaXRlIGRhbnMgdW5lIGNvcGllIHNpbXVsw6llIGR1IHN5c3TDqG1lIGRlIHswfSA6IHBhcyB1bmUgcsOpc2VydmF0aW9uIHsxfSwgYXVjdW5lIGNoYW1icmUgcmV0ZW51ZSwgcmllbiBkZSBwYXnDqS4iLGVzOiJIZWNoYSBlbiB1bmEgY29waWEgc2ltdWxhZGEgZGVsIHNpc3RlbWEgZGUgezB9OiBubyBlcyB1bmEgcmVzZXJ2YSBkZSB7MX0sIG5vIHNlIHJldGllbmUgbmluZ3VuYSBoYWJpdGFjacOzbiB5IG5vIHNlIHBhZ2EgbmFkYS4ifSwiTm90aGluZyBoYXMgYmVlbiBjaGFyZ2VkLiI6e2RlOiJFcyB3dXJkZSBuaWNodHMgYmVyZWNobmV0LiIsamE6Iuiri+axguOBr+OBguOCiuOBvuOBm+OCk+OAgiIsa286IuqysOygnOuQmOyngCDslYrslZjsirXri4jri6QuIixmcjoiUmllbiBu4oCZYSDDqXTDqSBmYWN0dXLDqS4iLGVzOiJObyBzZSBoYSBjb2JyYWRvIG5hZGEuIn0sIkVhY2ggaXMgezB9J3Mgb3duIHJlc2VydmF0aW9uLCBwYWlkIGF0IHRoZSBob3RlbC4gQSBjYXJkIGlzIHByZXNlbnRlZCBhdCBjaGVjay1pbiwgbm90IGhlcmUuIjp7ZGU6IkplZGUgaXN0IGVpbmUgUmVzZXJ2aWVydW5nIGRpcmVrdCBiZWkgezB9LCBiZXphaGx0IGltIEhvdGVsLiBFaW5lIEthcnRlIHdpcmQgYmVpIGRlciBBbnJlaXNlIHZvcmdlbGVndCwgbmljaHQgaGllci4iLGphOiLjgYTjgZrjgozjgoJ7MH3jga7mraPlvI/jgarkuojntITjgafjgIHnj77lnLDmiZXjgYTjgafjgZnjgILjgqvjg7zjg4njga/jg4Hjgqfjg4Pjgq/jgqTjg7PmmYLjgavmj5DnpLrjgZfjgIHjgZPjgZPjgafjga/kuI3opoHjgafjgZnjgIIiLGtvOiLrqqjrkZAgezB97J2YIOygleyLnSDsmIjslb3snbTrqbAg7ZiE7J6lIOqysOygnOyeheuLiOuLpC4g7Lm065Oc64qUIOyXrOq4sOyEnOqwgCDslYTri4jrnbwg7LK07YGs7J24IOyLnCDsoJzsi5ztlanri4jri6QuIixmcjoiQ2hhY3VuZSBlc3QgdW5lIHLDqXNlcnZhdGlvbiBwcm9wcmUgw6AgezB9LCBwYXlhYmxlIMOgIGzigJlow7R0ZWwuIFVuZSBjYXJ0ZSBlc3QgcHLDqXNlbnTDqWUgw6AgbOKAmWFycml2w6llLCBwYXMgaWNpLiIsZXM6IkNhZGEgdW5hIGVzIHVuYSByZXNlcnZhIHByb3BpYSBkZSB7MH0sIGNvbiBwYWdvIGVuIGVsIGhvdGVsLiBMYSB0YXJqZXRhIHNlIHByZXNlbnRhIGFsIGxsZWdhciwgbm8gYXF1w60uIn0sIlRoaXMgaXMgezB9J3Mgb3duIHJlc2VydmF0aW9uLCBwYWlkIGF0IHRoZSBob3RlbC4gQSBjYXJkIGlzIHByZXNlbnRlZCBhdCBjaGVjay1pbiwgbm90IGhlcmUuIjp7ZGU6IkRpZXMgaXN0IGVpbmUgUmVzZXJ2aWVydW5nIGRpcmVrdCBiZWkgezB9LCBiZXphaGx0IGltIEhvdGVsLiBFaW5lIEthcnRlIHdpcmQgYmVpIGRlciBBbnJlaXNlIHZvcmdlbGVndCwgbmljaHQgaGllci4iLGphOiLjgZPjgozjga97MH3jga7mraPlvI/jgarkuojntITjgafjgIHnj77lnLDmiZXjgYTjgafjgZnjgILjgqvjg7zjg4njga/jg4Hjgqfjg4Pjgq/jgqTjg7PmmYLjgavmj5DnpLrjgZfjgIHjgZPjgZPjgafjga/kuI3opoHjgafjgZnjgIIiLGtvOiJ7MH3snZgg7KCV7IudIOyYiOyVveydtOupsCDtmITsnqUg6rKw7KCc7J6F64uI64ukLiDsubTrk5zripQg7Jes6riw7ISc6rCAIOyVhOuLiOudvCDssrTtgazsnbgg7IucIOygnOyLnO2VqeuLiOuLpC4iLGZyOiJDZWNpIGVzdCB1bmUgcsOpc2VydmF0aW9uIHByb3ByZSDDoCB7MH0sIHBheWFibGUgw6AgbOKAmWjDtHRlbC4gVW5lIGNhcnRlIGVzdCBwcsOpc2VudMOpZSDDoCBs4oCZYXJyaXbDqWUsIHBhcyBpY2kuIixlczoiRXMgdW5hIHJlc2VydmEgcHJvcGlhIGRlIHswfSwgY29uIHBhZ28gZW4gZWwgaG90ZWwuIExhIHRhcmpldGEgc2UgcHJlc2VudGEgYWwgbGxlZ2FyLCBubyBhcXXDrS4ifSwiVGhpcyBpcyBhIGRlbW9uc3RyYXRpb24gYm9va2luZzogezB9IGhhcyBub3QgcmVjZWl2ZWQgaXQsIGFuZCBubyByb29tIGlzIGhlbGQgYXQgdGhlIGhvdGVsLnsxfSI6e2RlOiJEaWVzIGlzdCBlaW5lIERlbW9idWNodW5nOiB7MH0gaGF0IHNpZSBuaWNodCBlcmhhbHRlbiwgdW5kIGltIEhvdGVsIGlzdCBrZWluIFppbW1lciByZXNlcnZpZXJ0LnsxfSIsamE6IuOBk+OCjOOBr+ODh+ODouS6iOe0hOOBp+OBmeOAgnswfeOBq+OBr+WxiuOBhOOBpuOBiuOCieOBmuOAgeODm+ODhuODq+OBp+WuouWupOOCgueiuuS/neOBleOCjOOBpuOBhOOBvuOBm+OCk+OAgnsxfSIsa286IuuNsOuqqCDsmIjslb3snoXri4jri6QuIHswfeyXkOuKlCDsoITri6zrkJjsp4Ag7JWK7JWY7Jy866mwIO2YuO2FlOyXkCDqsJ3si6Trj4Qg7ZmV67O065CY7KeAIOyViuyVmOyKteuLiOuLpC57MX0iLGZyOiJDZWNpIGVzdCB1bmUgcsOpc2VydmF0aW9uIGRlIGTDqW1vbnN0cmF0aW9uIDogezB9IG5lIGzigJlhIHBhcyByZcOndWUsIGV0IGF1Y3VuZSBjaGFtYnJlIG7igJllc3QgcmV0ZW51ZSDDoCBs4oCZaMO0dGVsLnsxfSIsZXM6IkVzdGEgZXMgdW5hIHJlc2VydmEgZGUgZGVtb3N0cmFjacOzbjogezB9IG5vIGxhIGhhIHJlY2liaWRvIHkgbm8gc2UgcmV0aWVuZSBuaW5ndW5hIGhhYml0YWNpw7NuIGVuIGVsIGhvdGVsLnsxfSJ9LCJBIGNhcmQgaXMgcHJlc2VudGVkIGF0IGNoZWNrLWluLCBub3QgaGVyZS4iOntkZToiRWluZSBLYXJ0ZSB3aXJkIGJlaSBkZXIgQW5yZWlzZSB2b3JnZWxlZ3QsIG5pY2h0IGhpZXIuIixqYToi44Kr44O844OJ44Gv44OB44Kn44OD44Kv44Kk44Oz5pmC44Gr5o+Q56S644GX44CB44GT44GT44Gn44Gv5LiN6KaB44Gn44GZ44CCIixrbzoi7Lm065Oc64qUIOyXrOq4sOyEnOqwgCDslYTri4jrnbwg7LK07YGs7J24IOyLnCDsoJzsi5ztlanri4jri6QuIixmcjoiVW5lIGNhcnRlIGVzdCBwcsOpc2VudMOpZSDDoCBs4oCZYXJyaXbDqWUsIHBhcyBpY2kuIixlczoiTGEgdGFyamV0YSBzZSBwcmVzZW50YSBhbCBsbGVnYXIsIG5vIGFxdcOtLiJ9LCJBZGQtb25zIGZvciB0aGlzIHN0YXkiOntkZToiRXh0cmFzIGbDvHIgZGllc2VuIEF1ZmVudGhhbHQiLGphOiLjgZPjga7mu57lnKjjga7jgqrjg5fjgrfjg6fjg7MiLGtvOiLsnbQg7IiZ67CV7J2YIOy2lOqwgCDshJzruYTsiqQiLGZyOiJPcHRpb25zIHBvdXIgY2Ugc8Opam91ciIsZXM6IkV4dHJhcyBwYXJhIGVzdGEgZXN0YW5jaWEifSwiVGhpcyByYXRlIGNhbm5vdCBiZSBjYW5jZWxsZWQsIGFuZCBub3RoaW5nIG9mIGl0IGlzIHJlZnVuZGVkLiI6e2RlOiJEaWVzZXIgUHJlaXMgaXN0IG5pY2h0IHN0b3JuaWVyYmFyLCB1bmQgbmljaHRzIGRhdm9uIHdpcmQgZXJzdGF0dGV0LiIsamE6IuOBk+OBruaWmemHkeOBr+OCreODo+ODs+OCu+ODq+OBp+OBjeOBmuOAgei/lOmHkeOCguOBguOCiuOBvuOBm+OCk+OAgiIsa286IuydtCDsmpTquIjsnYAg7Leo7IaM7ZWgIOyImCDsl4bsnLzrqbAg7ZmY67aI65CY7KeAIOyViuyKteuLiOuLpC4iLGZyOiJDZSB0YXJpZiBu4oCZZXN0IHBhcyBhbm51bGFibGUsIGV0IHJpZW4gbuKAmWVuIGVzdCByZW1ib3Vyc8OpLiIsZXM6IkVzdGEgdGFyaWZhIG5vIHNlIHB1ZWRlIGNhbmNlbGFyIHkgbm8gc2UgcmVlbWJvbHNhIG5hZGEuIn0sIkNhbmNlbCB0aGlzIGJvb2tpbmciOntkZToiRGllc2UgQnVjaHVuZyBzdG9ybmllcmVuIixqYToi44GT44Gu5LqI57SE44KS44Kt44Oj44Oz44K744OrIixrbzoi7J20IOyYiOyVvSDst6jshowiLGZyOiJBbm51bGVyIGNldHRlIHLDqXNlcnZhdGlvbiIsZXM6IkNhbmNlbGFyIGVzdGEgcmVzZXJ2YSJ9LCJNb3JlIHRoYW4gb25lIGhvdGVsIGFuc3dlcnMgdG8g4oCcezB94oCdOiI6e2RlOiJNZWhyZXJlIEhvdGVscyBwYXNzZW4genUg4oCeezB94oCcOiIsamE6IuOAjHswfeOAjeOBq+ipsuW9k+OBmeOCi+ODm+ODhuODq+OBjOikh+aVsOOBguOCiuOBvuOBme+8miIsa286IuKAmHswfeKAmeyXkCDtlbTri7ntlZjripQg7Zi47YWU7J20IOyXrOufrCDqs7PsnoXri4jri6Q6IixmcjoiUGx1c2lldXJzIGjDtHRlbHMgY29ycmVzcG9uZGVudCDDoCDCqyB7MH0gwrsgOiIsZXM6IkhheSBtw6FzIGRlIHVuIGhvdGVsIHF1ZSBjb2luY2lkZSBjb24gwqt7MH3CuzoifSwiTm8gaG90ZWwgaGVyZSBieSB0aGF0IG5hbWUiOntkZToiSGllciBnaWJ0IGVzIGtlaW4gSG90ZWwgbWl0IGRpZXNlbSBOYW1lbiIsamE6IuOBneOBruWQjeWJjeOBruODm+ODhuODq+OBr+OBguOCiuOBvuOBm+OCkyIsa286Iuq3uCDsnbTrpoTsnZgg7Zi47YWU7J20IOyXhuyKteuLiOuLpCIsZnI6IkF1Y3VuIGjDtHRlbCBkZSBjZSBub20gaWNpIixlczoiTm8gaGF5IG5pbmfDum4gaG90ZWwgY29uIGVzZSBub21icmUifSwiVGhhdCBob3RlbCBpcyBub3QgaGVyZSI6e2RlOiJEaWVzZXMgSG90ZWwgaXN0IGhpZXIgbmljaHQgdmVyZsO8Z2JhciIsamE6IuOBneOBruODm+ODhuODq+OBr+imi+OBpOOBi+OCiuOBvuOBm+OCkyIsa286Iuq3uCDtmLjthZTsnYQg7LC+7J2EIOyImCDsl4bsirXri4jri6QiLGZyOiJDZXQgaMO0dGVsIG7igJllc3QgcGFzIGljaSIsZXM6IkVzZSBob3RlbCBubyBlc3TDoSBhcXXDrSJ9LCJUaGF0IHJvb20gaXMgbm90IGF2YWlsYWJsZSI6e2RlOiJEaWVzZXMgWmltbWVyIGlzdCBuaWNodCB2ZXJmw7xnYmFyIixqYToi44Gd44Gu5a6i5a6k44Gv5LqI57SE44Gn44GN44G+44Gb44KTIixrbzoi6re4IOqwneyLpOydgCDsmIjslb3tlaAg7IiYIOyXhuyKteuLiOuLpCIsZnI6IkNldHRlIGNoYW1icmUgbuKAmWVzdCBwYXMgZGlzcG9uaWJsZSIsZXM6IkVzYSBoYWJpdGFjacOzbiBubyBlc3TDoSBkaXNwb25pYmxlIn0sIlRoYXQgYWRkLW9uIGlzIG5vdCBhdmFpbGFibGUiOntkZToiRGllc2VzIEV4dHJhIGlzdCBuaWNodCB2ZXJmw7xnYmFyIixqYToi44Gd44Gu44Kq44OX44K344On44Oz44Gv5LqI57SE44Gn44GN44G+44Gb44KTIixrbzoi6re4IOy2lOqwgCDshJzruYTsiqTripQg7JiI7JW97ZWgIOyImCDsl4bsirXri4jri6QiLGZyOiJDZXR0ZSBvcHRpb24gbuKAmWVzdCBwYXMgZGlzcG9uaWJsZSIsZXM6IkVzZSBleHRyYSBubyBlc3TDoSBkaXNwb25pYmxlIn0sIlRoYXQgZ3JvdXAgaXMgbm90IGluIHRoaXMgbWFya2V0Ijp7ZGU6IkRpZXNlIEdydXBwZSBpc3QgaGllciBuaWNodCB2ZXJ0cmV0ZW4iLGphOiLjgZ3jga7jgrDjg6vjg7zjg5fjga/jgZPjgZPjgavjga/jgYLjgorjgb7jgZvjgpMiLGtvOiLqt7gg6re466O57J2AIOyXrOq4sOyXkCDsl4bsirXri4jri6QiLGZyOiJDZSBncm91cGUgbuKAmWVzdCBwYXMgcHLDqXNlbnQgaWNpIixlczoiRXNlIGdydXBvIG5vIGVzdMOhIGVuIGVzdGUgbWVyY2FkbyJ9LCJUaGlzIHRyaXAgaGFzIGV4cGlyZWQiOntkZToiRGllc2UgUmVpc2UgaXN0IGFiZ2VsYXVmZW4iLGphOiLjgZPjga7ml4XnqIvjga/mnJ/pmZDliIfjgozjgafjgZkiLGtvOiLsnbQg7Jes7ZaJIOydvOygleydgCDrp4zro4zrkJjsl4jsirXri4jri6QiLGZyOiJDZSB2b3lhZ2UgYSBleHBpcsOpIixlczoiRXN0ZSB2aWFqZSBoYSBjYWR1Y2FkbyJ9LCJUaGF0IGJvb2tpbmcgaGFzIGVuZGVkIjp7ZGU6IkRpZXNlIEJ1Y2h1bmcgaXN0IGJlZW5kZXQiLGphOiLjgZ3jga7kuojntITjga/ntYLkuobjgZfjgabjgYTjgb7jgZkiLGtvOiLqt7gg7JiI7JW97J2AIOyiheujjOuQmOyXiOyKteuLiOuLpCIsZnI6IkNldHRlIHLDqXNlcnZhdGlvbiBlc3QgdGVybWluw6llIixlczoiRXNhIHJlc2VydmEgaGEgdGVybWluYWRvIn0sIlRoYXQgbnVtYmVyIGRvZXMgbm90IHdvcmsiOntkZToiRGllc2UgQW56YWhsIGlzdCBuaWNodCBtw7ZnbGljaCIsamE6IuOBneOBruaVsOmHj+OBr+aMh+WumuOBp+OBjeOBvuOBm+OCkyIsa286Iuq3uCDsiJjrn4nsnYAg7ISg7YOd7ZWgIOyImCDsl4bsirXri4jri6QiLGZyOiJDZSBub21icmUgbmUgY29udmllbnQgcGFzIixlczoiRXNhIGNhbnRpZGFkIG5vIGVzIHbDoWxpZGEifSwiVGhhdCBzdGFydCB0aW1lIGlzIG5vdCBvcGVuIjp7ZGU6IkRpZXNlIEFua3VuZnRzemVpdCBpc3QgbmljaHQgdmVyZsO8Z2JhciIsamE6IuOBneOBruWIsOedgOaZguWIu+OBr+mBuOOBueOBvuOBm+OCkyIsa286Iuq3uCDrj4TssKkg7Iuc6rCE7J2AIOyEoO2Dne2VoCDsiJgg7JeG7Iq164uI64ukIixmcjoiQ2V0dGUgaGV1cmUgZOKAmWFycml2w6llIG7igJllc3QgcGFzIGRpc3BvbmlibGUiLGVzOiJFc2EgaG9yYSBkZSBsbGVnYWRhIG5vIGVzdMOhIGRpc3BvbmlibGUifSwiVGhpcyBjb3VsZCBub3QgYmUgYm9va2VkIjp7ZGU6IkRhcyBrb25udGUgbmljaHQgZ2VidWNodCB3ZXJkZW4iLGphOiLkuojntITjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ8iLGtvOiLsmIjslb3tlaAg7IiYIOyXhuyXiOyKteuLiOuLpCIsZnI6IkltcG9zc2libGUgZGUgcsOpc2VydmVyIixlczoiTm8gc2UgcHVkbyByZXNlcnZhciJ9LCJUcmlwcyBhcmUga2VwdCBmb3IgNCBob3VycyBhZnRlciB0aGVpciBsYXN0IGNoYW5nZSwgYW5kIHRoaXMgb25lIGhhcyBnb25lIC0gdHJ5aW5nIGFnYWluIHdpbGwgbm90IGJyaW5nIGl0IGJhY2suIEFzayB0aGUgYXNzaXN0YW50IHRvIHNob3cgeW91ciB0cmlwIGFnYWluLCBvciBzZWFyY2ggYWdhaW4gaGVyZS4iOntkZToiUmVpc2VuIHdlcmRlbiA0IFN0dW5kZW4gbmFjaCBkZXIgbGV0enRlbiDDhG5kZXJ1bmcgYXVmYmV3YWhydCwgdW5kIGRpZXNlIGlzdCBhYmdlbGF1ZmVuIOKAkyBlaW4gbmV1ZXIgVmVyc3VjaCBicmluZ3Qgc2llIG5pY2h0IHp1csO8Y2suIEJpdHRlbiBTaWUgZGVuIEFzc2lzdGVudGVuLCBJaHJlIFJlaXNlIGVybmV1dCBhbnp1emVpZ2VuLCBvZGVyIHN1Y2hlbiBTaWUgaGllciBuZXUuIixqYToi5peF56iL44Gv5pyA5b6M44Gu5aSJ5pu044GL44KJNOaZgumWk+S/neWtmOOBleOCjOOBvuOBmeOBjOOAgeOBk+OBruaXheeoi+OBr+acn+mZkOWIh+OCjOOBp+OBmeOAguWGjeippuihjOOBl+OBpuOCguaIu+OCiuOBvuOBm+OCk+OAguOCouOCt+OCueOCv+ODs+ODiOOBq+aXheeoi+OCkuOCguOBhuS4gOW6puihqOekuuOBl+OBpuOCguOCieOBhuOBi+OAgeOBk+OBk+OBp+aknOe0ouOBl+ebtOOBl+OBpuOBj+OBoOOBleOBhOOAgiIsa286IuyXrO2WiSDsnbzsoJXsnYAg66eI7KeA66eJIOuzgOqyvSDtm4QgNOyLnOqwhCDrj5nslYgg67O06rSA65CY66mwLCDsnbQg7J287KCV7J2AIOunjOujjOuQmOyXiOyKteuLiOuLpC4g64uk7IucIOyLnOuPhO2VtOuPhCDrs7XqtazrkJjsp4Ag7JWK7Iq164uI64ukLiDslrTsi5zsiqTthLTtirjsl5Dqsowg7Jes7ZaJIOydvOygleydhCDri6Tsi5wg67O07JesIOuLrOudvOqzoCDtlZjqsbDrgpgg7Jes6riw7IScIOuLpOyLnCDqsoDsg4ntlZjshLjsmpQuIixmcjoiTGVzIHZveWFnZXMgc29udCBjb25zZXJ2w6lzIDQgaGV1cmVzIGFwcsOocyBsZXVyIGRlcm5pw6hyZSBtb2RpZmljYXRpb24sIGV0IGNlbHVpLWNpIGEgZXhwaXLDqSDigJQgcsOpZXNzYXllciBuZSBsZSBmZXJhIHBhcyByZXZlbmlyLiBEZW1hbmRleiDDoCBs4oCZYXNzaXN0YW50IGRlIHLDqWFmZmljaGVyIHZvdHJlIHZveWFnZSwgb3UgcmVsYW5jZXogdW5lIHJlY2hlcmNoZSBpY2kuIixlczoiTG9zIHZpYWplcyBzZSBndWFyZGFuIDQgaG9yYXMgZGVzcHXDqXMgZGUgc3Ugw7psdGltbyBjYW1iaW8sIHkgZXN0ZSBoYSBjYWR1Y2Fkbzogdm9sdmVyIGEgaW50ZW50YXJsbyBubyBsbyByZWN1cGVyYXLDoS4gUGlkYSBhbCBhc2lzdGVudGUgcXVlIHZ1ZWx2YSBhIG1vc3RyYXIgc3UgdmlhamUgbyBidXNxdWUgZGUgbnVldm8gYXF1w60uIn0sInswfSBpcyBub3QgYSBzdGFydCB0aGlzIHJvb20gdGFrZXMuICI6e2RlOiJ7MH0gaXN0IGbDvHIgZGllc2VzIFppbW1lciBrZWluZSBtw7ZnbGljaGUgQW5rdW5mdHN6ZWl0LiAiLGphOiJ7MH3jga/jgZPjga7lrqLlrqTjga7liLDnnYDmmYLliLvjgajjgZfjgabpgbjjgbnjgb7jgZvjgpPjgIIiLGtvOiJ7MH3snYAo64qUKSDsnbQg6rCd7Iuk7J2YIOuPhOywqSDsi5zqsITsnLzroZwg7ISg7YOd7ZWgIOyImCDsl4bsirXri4jri6QuICIsZnI6InswfSBu4oCZZXN0IHBhcyB1bmUgaGV1cmUgZOKAmWFycml2w6llIHBvc3NpYmxlIHBvdXIgY2V0dGUgY2hhbWJyZS4gIixlczoiezB9IG5vIGVzIHVuYSBob3JhIGRlIGxsZWdhZGEgcG9zaWJsZSBwYXJhIGVzdGEgaGFiaXRhY2nDs24uICJ9LCJJdCBzdGFydHMgYmV0d2VlbiB7MH0gYW5kIHsxfSB0b2RheSwgZm9yIHsyfSBob3VycywgYW5kIGlzIGxlZnQgYnkgezN9LiI6e2RlOiJIZXV0ZSBBbmt1bmZ0IHp3aXNjaGVuIHswfSB1bmQgezF9LCBmw7xyIHsyfSBTdHVuZGVuLCBBYnJlaXNlIGJpcyB7M30uIixqYToi5pys5pelezB944CcezF944Gu6ZaT44Gr5Yiw552A44CBezJ95pmC6ZaT5Yip55So44CBezN944G+44Gn44Gr6YCA5a6k44Gn44GZ44CCIixrbzoi7Jik64qYIHswfX57MX0g7IKs7J207JeQIOuPhOywqe2VtCB7Mn3si5zqsIQg7J207Jqp7ZWY66mwIHszfeq5jOyngCDth7Tsi6Ttlanri4jri6QuIixmcjoiQXJyaXbDqWUgYXVqb3VyZOKAmWh1aSBlbnRyZSB7MH0gZXQgezF9LCBwb3VyIHsyfSBoZXVyZXMsIGTDqXBhcnQgYXZhbnQgezN9LiIsZXM6IkhveSBzZSBsbGVnYSBlbnRyZSBsYXMgezB9IHkgbGFzIHsxfSwgcG9yIHsyfSBob3JhcywgeSBzZSBzYWxlIGFudGVzIGRlIGxhcyB7M30uIn0sInswfSBoYXMgbm8gcm9vbSBieSB0aGF0IG5hbWUgZm9yIHRob3NlIG5pZ2h0cy4gVGhlc2UgYXJlIG9wZW4g4oCUIHRhcCBvbmUgdG8gcmVzZXJ2ZSBpdDoiOntkZToiezB9IGhhdCBmw7xyIGRpZXNlIE7DpGNodGUga2VpbiBaaW1tZXIgbWl0IGRpZXNlbSBOYW1lbi4gRGllc2Ugc2luZCBmcmVpIOKAlCB0aXBwZW4gU2llIGVpbmVzIGFuLCB1bSBlcyB6dSByZXNlcnZpZXJlbjoiLGphOiJ7MH3jgavjga/jgZPjga7ml6XnqIvjgafjgZ3jga7lkI3liY3jga7lrqLlrqTjgYzjgYLjgorjgb7jgZvjgpPjgILku6XkuIvjga/kuojntITjgafjgY3jgb7jgZnjgILjgr/jg4Pjg5fjgZfjgabkuojntITjgZfjgabjgY/jgaDjgZXjgYTvvJoiLGtvOiJ7MH3sl5DripQg7J20IOuCoOynnOyXkCDqt7gg7J2066aE7J2YIOqwneyLpOydtCDsl4bsirXri4jri6QuIOyVhOuemCDqsJ3si6TsnYAg7JiI7JW9IOqwgOuKpe2VqeuLiOuLpC4g64iM65+s7IScIOyYiOyVve2VmOyEuOyalDoiLGZyOiJ7MH0gbuKAmWEgcGFzIGRlIGNoYW1icmUgZGUgY2Ugbm9tIHBvdXIgY2VzIG51aXRzLiBDZWxsZXMtY2kgc29udCBsaWJyZXMg4oCUIHRvdWNoZXotZW4gdW5lIHBvdXIgbGEgcsOpc2VydmVyIDoiLGVzOiJ7MH0gbm8gdGllbmUgdW5hIGhhYml0YWNpw7NuIGNvbiBlc2Ugbm9tYnJlIHBhcmEgZXNhcyBub2NoZXMuIEVzdGFzIGVzdMOhbiBsaWJyZXM7IHRvcXVlIHVuYSBwYXJhIHJlc2VydmFybGE6In0sIlRoaXMgaG90ZWwgaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIFRoZXNlIGFyZSBvcGVuIOKAlCB0YXAgb25lIHRvIHJlc2VydmUgaXQ6Ijp7ZGU6IkRpZXNlcyBIb3RlbCBoYXQgZsO8ciBkaWVzZSBOw6RjaHRlIGtlaW4gWmltbWVyIG1pdCBkaWVzZW0gTmFtZW4uIERpZXNlIHNpbmQgZnJlaSDigJQgdGlwcGVuIFNpZSBlaW5lcyBhbiwgdW0gZXMgenUgcmVzZXJ2aWVyZW46IixqYToi44GT44Gu44Ob44OG44Or44Gr44Gv44GT44Gu5pel56iL44Gn44Gd44Gu5ZCN5YmN44Gu5a6i5a6k44GM44GC44KK44G+44Gb44KT44CC5Lul5LiL44Gv5LqI57SE44Gn44GN44G+44GZ44CC44K/44OD44OX44GX44Gm5LqI57SE44GX44Gm44GP44Gg44GV44GE77yaIixrbzoi7J20IO2YuO2FlOyXkOuKlCDsnbQg64Kg7Kec7JeQIOq3uCDsnbTrpoTsnZgg6rCd7Iuk7J20IOyXhuyKteuLiOuLpC4g7JWE656YIOqwneyLpOydgCDsmIjslb0g6rCA64ql7ZWp64uI64ukLiDriIzrn6zshJwg7JiI7JW97ZWY7IS47JqUOiIsZnI6IkNldCBow7R0ZWwgbuKAmWEgcGFzIGRlIGNoYW1icmUgZGUgY2Ugbm9tIHBvdXIgY2VzIG51aXRzLiBDZWxsZXMtY2kgc29udCBsaWJyZXMg4oCUIHRvdWNoZXotZW4gdW5lIHBvdXIgbGEgcsOpc2VydmVyIDoiLGVzOiJFc3RlIGhvdGVsIG5vIHRpZW5lIHVuYSBoYWJpdGFjacOzbiBjb24gZXNlIG5vbWJyZSBwYXJhIGVzYXMgbm9jaGVzLiBFc3RhcyBlc3TDoW4gbGlicmVzOyB0b3F1ZSB1bmEgcGFyYSByZXNlcnZhcmxhOiJ9LCJ7MH0gaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIEl0IGhhcyB7MX0uIjp7ZGU6InswfSBoYXQgZsO8ciBkaWVzZSBOw6RjaHRlIGtlaW4gWmltbWVyIG1pdCBkaWVzZW0gTmFtZW4uIFZlcmbDvGdiYXI6IHsxfS4iLGphOiJ7MH3jgavjga/jgZPjga7ml6XnqIvjgafjgZ3jga7lkI3liY3jga7lrqLlrqTjgYzjgYLjgorjgb7jgZvjgpPjgILkuojntITjgafjgY3jgovjga7jga97MX3jgafjgZnjgIIiLGtvOiJ7MH3sl5DripQg7J20IOuCoOynnOyXkCDqt7gg7J2066aE7J2YIOqwneyLpOydtCDsl4bsirXri4jri6QuIOyYiOyVvSDqsIDriqXtlZwg6rCd7IukOiB7MX0uIixmcjoiezB9IG7igJlhIHBhcyBkZSBjaGFtYnJlIGRlIGNlIG5vbSBwb3VyIGNlcyBudWl0cy4gSWwgcHJvcG9zZSB7MX0uIixlczoiezB9IG5vIHRpZW5lIHVuYSBoYWJpdGFjacOzbiBjb24gZXNlIG5vbWJyZSBwYXJhIGVzYXMgbm9jaGVzLiBUaWVuZSB7MX0uIn0sIlRoaXMgaG90ZWwgaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIEl0IGhhcyB7MH0uIjp7ZGU6IkRpZXNlcyBIb3RlbCBoYXQgZsO8ciBkaWVzZSBOw6RjaHRlIGtlaW4gWmltbWVyIG1pdCBkaWVzZW0gTmFtZW4uIFZlcmbDvGdiYXI6IHswfS4iLGphOiLjgZPjga7jg5vjg4bjg6vjgavjga/jgZPjga7ml6XnqIvjgafjgZ3jga7lkI3liY3jga7lrqLlrqTjgYzjgYLjgorjgb7jgZvjgpPjgILkuojntITjgafjgY3jgovjga7jga97MH3jgafjgZnjgIIiLGtvOiLsnbQg7Zi47YWU7JeQ64qUIOydtCDrgqDsp5zsl5Ag6re4IOydtOumhOydmCDqsJ3si6TsnbQg7JeG7Iq164uI64ukLiDsmIjslb0g6rCA64ql7ZWcIOqwneyLpDogezB9LiIsZnI6IkNldCBow7R0ZWwgbuKAmWEgcGFzIGRlIGNoYW1icmUgZGUgY2Ugbm9tIHBvdXIgY2VzIG51aXRzLiBJbCBwcm9wb3NlIHswfS4iLGVzOiJFc3RlIGhvdGVsIG5vIHRpZW5lIHVuYSBoYWJpdGFjacOzbiBjb24gZXNlIG5vbWJyZSBwYXJhIGVzYXMgbm9jaGVzLiBUaWVuZSB7MH0uIn0sIk5vdGhpbmcgd2FzIGJvb2tlZCBhbmQgbm90aGluZyB3YXMgY2hhcmdlZC4gVGhpcyBjb252ZXJzYXRpb24gaGFzIHJlYWNoZWQgaXRzIGJvb2tpbmcgbGltaXQ6IGNhbmNlbCBvbmUgeW91IGRvIG5vdCBuZWVkIGluIE15IGJvb2tpbmdzLCB0aGVuIHRyeSBhZ2Fpbi4iOntkZToiRXMgd3VyZGUgbmljaHRzIGdlYnVjaHQgdW5kIG5pY2h0cyBiZXJlY2huZXQuIERpZXNlciBDaGF0IGhhdCBzZWluIEJ1Y2h1bmdzbGltaXQgZXJyZWljaHQ6IFN0b3JuaWVyZW4gU2llIHVudGVyIOKAnk1laW5lIEJ1Y2h1bmdlbuKAnCBlaW5lLCBkaWUgU2llIG5pY2h0IGJyYXVjaGVuLCB1bmQgdmVyc3VjaGVuIFNpZSBlcyBkYW5uIGVybmV1dC4iLGphOiLkuojntITjgoLoq4vmsYLjgoLjgZXjgozjgabjgYTjgb7jgZvjgpPjgILjgZPjga7kvJroqbHjga7kuojntITmlbDjgYzkuIrpmZDjgavpgZTjgZfjgb7jgZfjgZ/jgILjgIzkuojntITkuIDopqfjgI3jgafkuI3opoHjgarkuojntITjgpLjgq3jg6Pjg7Pjgrvjg6vjgZfjgabjgYvjgonjgIHjgoLjgYbkuIDluqbjgYroqabjgZfjgY/jgaDjgZXjgYTjgIIiLGtvOiLsmIjslb3rj4Qg6rKw7KCc64+EIOuQmOyngCDslYrslZjsirXri4jri6QuIOydtCDrjIDtmZTsnZgg7JiI7JW9IO2VnOuPhOyXkCDrj4Tri6ztlojsirXri4jri6QuIOKAmOuCtCDsmIjslb3igJnsl5DshJwg7ZWE7JqUIOyXhuuKlCDsmIjslb3snYQg7Leo7IaM7ZWcIOuSpCDri6Tsi5wg7Iuc64+E7ZWY7IS47JqULiIsZnI6IlJpZW4gbuKAmWEgw6l0w6kgcsOpc2VydsOpIG5pIGZhY3R1csOpLiBDZXR0ZSBjb252ZXJzYXRpb24gYSBhdHRlaW50IHNhIGxpbWl0ZSBkZSByw6lzZXJ2YXRpb25zIDogYW5udWxlei1lbiB1bmUgZG9udCB2b3VzIG7igJlhdmV6IHBhcyBiZXNvaW4gZGFucyDCqyBNZXMgcsOpc2VydmF0aW9ucyDCuywgcHVpcyByw6llc3NheWV6LiIsZXM6Ik5vIHNlIHJlc2VydsOzIG5pIHNlIGNvYnLDsyBuYWRhLiBFc3RhIGNvbnZlcnNhY2nDs24gaGEgYWxjYW56YWRvIHN1IGzDrW1pdGUgZGUgcmVzZXJ2YXM6IGNhbmNlbGUgdW5hIHF1ZSBubyBuZWNlc2l0ZSBlbiDCq01pcyByZXNlcnZhc8K7IHkgdnVlbHZhIGEgaW50ZW50YXJsby4ifSwiVGhhdCBjb3VsZCBub3QgYmUgZG9uZS4iOntkZToiRGFzIGhhdCBuaWNodCBnZWtsYXBwdC4gQml0dGUgdmVyc3VjaGVuIFNpZSBlcyBzcMOkdGVyIGVybmV1dC4iLGphOiLlrozkuobjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgILlvozjgafjgoLjgYbkuIDluqbjgYroqabjgZfjgY/jgaDjgZXjgYTjgIIiLGtvOiLsmYTro4ztlZjsp4Ag66q77ZaI7Iq164uI64ukLiDsnqDsi5wg7ZuEIOuLpOyLnCDsi5zrj4TtlbQg7KO87IS47JqULiIsZnI6IkNlbGEgbuKAmWEgcGFzIHB1IMOqdHJlIGZhaXQuIFLDqWVzc2F5ZXogcGx1cyB0YXJkLiIsZXM6Ik5vIHNlIHB1ZG8gaGFjZXIuIEludMOpbnRlbG8gZGUgbnVldm8gbcOhcyB0YXJkZS4ifSwiQm9va2luZyBsaW1pdCByZWFjaGVkIjp7ZGU6IkJ1Y2h1bmdzbGltaXQgZXJyZWljaHQiLGphOiLkuojntITkuIrpmZDjgavpgZTjgZfjgb7jgZfjgZ8iLGtvOiLsmIjslb0g7ZWc64+EIOuPhOuLrCIsZnI6IkxpbWl0ZSBkZSByw6lzZXJ2YXRpb25zIGF0dGVpbnRlIixlczoiTMOtbWl0ZSBkZSByZXNlcnZhcyBhbGNhbnphZG8ifSwiVGhhdCBkaWQgbm90IHdvcmsiOntkZToiRGFzIGhhdCBuaWNodCBnZWtsYXBwdCIsamE6IuWujOS6huOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBnyIsa286IuyZhOujjO2VmOyngCDrqrvtlojsirXri4jri6QiLGZyOiJDZWxhIG7igJlhIHBhcyBmb25jdGlvbm7DqSIsZXM6Ik5vIGZ1bmNpb27DsyJ9LCJTZWUgYWxsIHJvb21zIjp7ZGU6IkFsbGUgWmltbWVyIGFuc2VoZW4iLGphOiLjgZnjgbnjgabjga7lrqLlrqTjgpLopovjgosiLGtvOiLrqqjrk6Ag6rCd7IukIOuztOq4sCIsZnI6IlZvaXIgdG91dGVzIGxlcyBjaGFtYnJlcyIsZXM6IlZlciB0b2RhcyBsYXMgaGFiaXRhY2lvbmVzIn0sIlNlZSB0aGUgcm9vbXMiOntkZToiWmltbWVyIGFuc2VoZW4iLGphOiLlrqLlrqTjgpLopovjgosiLGtvOiLqsJ3si6Qg67O06riwIixmcjoiVm9pciBsZXMgY2hhbWJyZXMiLGVzOiJWZXIgbGFzIGhhYml0YWNpb25lcyJ9LCJCYWNrIHRvIHdoZXJlIHlvdSB3ZXJlIjp7ZGU6Ilp1csO8Y2siLGphOiLliY3jga7nlLvpnaLjgavmiLvjgosiLGtvOiLsnbTsoIQg7ZmU66m07Jy866GcIixmcjoiUmV2ZW5pciBlbiBhcnJpw6hyZSIsZXM6IlZvbHZlciJ9LCJBc2sgdGhlIGFzc2lzdGFudCB0byBzaG93IGl0IGFnYWluIjp7ZGU6IkRlbiBBc3Npc3RlbnRlbiBiaXR0ZW4sIHNpZSBlcm5ldXQgYW56dXplaWdlbiIsamE6IuOCouOCt+OCueOCv+ODs+ODiOOBq+OCguOBhuS4gOW6puihqOekuuOBl+OBpuOCguOCieOBhiIsa286IuyWtOyLnOyKpO2EtO2KuOyXkOqyjCDri6Tsi5wg67O07JesIOuLrOudvOqzoCDtlZjquLAiLGZyOiJEZW1hbmRlciDDoCBs4oCZYXNzaXN0YW50IGRlIGxlIHLDqWFmZmljaGVyIixlczoiUGVkaXIgYWwgYXNpc3RlbnRlIHF1ZSBsbyB2dWVsdmEgYSBtb3N0cmFyIn0sIlNlYXJjaCBhZ2FpbiI6e2RlOiJOZXUgc3VjaGVuIixqYToi5qSc57Si44GX55u044GZIixrbzoi64uk7IucIOqygOyDiSIsZnI6IlJlbGFuY2VyIGxhIHJlY2hlcmNoZSIsZXM6IkJ1c2NhciBkZSBudWV2byJ9LCJBd2FpdGluZyBwYXltZW50Ijp7ZGU6IlphaGx1bmcgYXVzc3RlaGVuZCIsamE6IuaUr+aJleOBhOW+heOBoSIsa286IuqysOygnCDrjIDquLAiLGZyOiJFbiBhdHRlbnRlIGRlIHBhaWVtZW50IixlczoiUGVuZGllbnRlIGRlIHBhZ28ifSxSZXF1ZXN0ZWQ6blMsQ29uZmlybWVkOm9TLENhbmNlbGxlZDpzUyxFeHBpcmVkOnJTLCJOb3QgbWFkZSI6e2RlOiJOaWNodCB6dXN0YW5kZSBnZWtvbW1lbiIsamE6IuS4jeaIkOeriyIsa286IuuvuOyEseumvSIsZnI6Ik5vbiBlZmZlY3R1w6llIixlczoiTm8gcmVhbGl6YWRhIn0sIkJlaW5nIGNoZWNrZWQiOntkZToiV2lyZCBnZXByw7xmdCIsamE6IueFp+S8muS4rSIsa286IuqygO2GoCDspJEiLGZyOiJFbiBjb3VycyBkZSB2w6lyaWZpY2F0aW9uIixlczoiRW4gdmVyaWZpY2FjacOzbiJ9LCJBc2tlZCBmb3IgezB9Ijp7ZGU6IkFuZ2VmcmFndDogezB9IixqYToi44Oq44Kv44Ko44K544OI5riI44G/77yaezB9Iixrbzoi7JqU7LKt7ZWoOiB7MH0iLGZyOiJEZW1hbmTDqSA6IHswfSIsZXM6IlNvbGljaXRhZG86IHswfSJ9LCJUbyBiZSBwYWlkIjp7ZGU6Ik5vY2ggenUgemFobGVuIixqYToi5pyq5omV44GEIixrbzoi6rKw7KCcIOyYiOyglSIsZnI6IsOAIHBheWVyIixlczoiUG9yIHBhZ2FyIn0sIk5vdCBwYWlkIGluIHRpbWUiOntkZToiTmljaHQgcmVjaHR6ZWl0aWcgYmV6YWhsdCIsamE6Iuacn+mZkOWGheOBq+acquaJleOBhCIsa286Iuq4sO2VnCDrgrQg66+46rKw7KCcIixmcjoiTm9uIHBhecOpZSDDoCB0ZW1wcyIsZXM6Ik5vIHBhZ2FkYSBhIHRpZW1wbyJ9LCJSZWZ1bmQgdW5kZXIgd2F5Ijp7ZGU6IkVyc3RhdHR1bmcgbMOkdWZ0IixqYToi6L+U6YeR5omL57aa44GN5LitIixrbzoi7ZmY67aIIOynhO2WiSDspJEiLGZyOiJSZW1ib3Vyc2VtZW50IGVuIGNvdXJzIixlczoiUmVlbWJvbHNvIGVuIGN1cnNvIn0sIlJlZnVuZGVkIGluIGZ1bGwiOntkZToiVm9sbHN0w6RuZGlnIGVyc3RhdHRldCIsamE6IuWFqOmhjei/lOmHkea4iOOBvyIsa286IuyghOyVoSDtmZjrtojrkKgiLGZyOiJSZW1ib3Vyc8OpZSBpbnTDqWdyYWxlbWVudCIsZXM6IlJlZW1ib2xzYWRhIHBvciBjb21wbGV0byJ9LCJUb28gbWFueSB0cmllcyAtIHRyeSBhZ2FpbiBsYXRlci4iOntkZToiWnUgdmllbGUgVmVyc3VjaGUg4oCTIGJpdHRlIHNww6R0ZXIgZXJuZXV0IHZlcnN1Y2hlbi4iLGphOiLoqabooYzlm57mlbDjgYzlpJrjgZnjgY7jgb7jgZnjgILlvozjgafjgoLjgYbkuIDluqbjgYroqabjgZfjgY/jgaDjgZXjgYTjgIIiLGtvOiLsi5zrj4Qg7Zqf7IiY6rCAIOuEiOustCDrp47sirXri4jri6QuIOuCmOykkeyXkCDri6Tsi5wg7Iuc64+E7ZWY7IS47JqULiIsZnI6IlRyb3AgZGUgdGVudGF0aXZlcyDigJQgcsOpZXNzYXlleiBwbHVzIHRhcmQuIixlczoiRGVtYXNpYWRvcyBpbnRlbnRvczogaW50w6ludGVsbyBtw6FzIHRhcmRlLiJ9LCJObyBib29raW5nIG1hdGNoZXMgezB9IHdpdGggdGhhdCBlbWFpbC4gQm90aCBoYXZlIHRvIGJlIGFzIHRoZXkgYXJlIG9uIHRoZSBjb25maXJtYXRpb24uIjp7ZGU6IktlaW5lIEJ1Y2h1bmcgcGFzc3QgenUgezB9IG1pdCBkaWVzZXIgRS1NYWlsLiBCZWlkZXMgbXVzcyBzbyBzZWluIHdpZSBhdWYgZGVyIEJlc3TDpHRpZ3VuZy4iLGphOiJ7MH3jgajjgZPjga7jg6Hjg7zjg6vjgqLjg4njg6zjgrnjgavkuIDoh7TjgZnjgovkuojntITjga/jgYLjgorjgb7jgZvjgpPjgILjganjgaHjgonjgoLnorroqo3jg6Hjg7zjg6vjga7oqJjovInjganjgYrjgorjgavlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiJ7MH3smYAo6rO8KSDsnbQg7J2066mU7J287JeQIO2VtOuLue2VmOuKlCDsmIjslb3snbQg7JeG7Iq164uI64ukLiDrkZAg6rCA7KeAIOuqqOuRkCDtmZXsnbgg66mU7J287JeQIOygge2ejCDqt7jrjIDroZzsl6zslbwg7ZWp64uI64ukLiIsZnI6IkF1Y3VuZSByw6lzZXJ2YXRpb24gbmUgY29ycmVzcG9uZCDDoCB7MH0gYXZlYyBjZXQgZS1tYWlsLiBMZXMgZGV1eCBkb2l2ZW50IMOqdHJlIHRlbHMgcXXigJlpbmRpcXXDqXMgc3VyIGxhIGNvbmZpcm1hdGlvbi4iLGVzOiJOaW5ndW5hIHJlc2VydmEgY29pbmNpZGUgY29uIHswfSB5IGVzZSBjb3JyZW8gZWxlY3Ryw7NuaWNvLiBBbWJvcyBkZWJlbiBzZXIgdGFsIGNvbW8gYXBhcmVjZW4gZW4gbGEgY29uZmlybWFjacOzbi4ifSwiTm8gYm9va2luZ3MgaW4gdGhpcyBjb252ZXJzYXRpb24geWV0LiI6e2RlOiJJbiBkaWVzZW0gQ2hhdCBnaWJ0IGVzIG5vY2gga2VpbmUgQnVjaHVuZ2VuLiIsamE6IuOBk+OBruS8muipseOBp+OBruS6iOe0hOOBr+OBvuOBoOOBguOCiuOBvuOBm+OCk+OAgiIsa286IuydtCDrjIDtmZTsl5DripQg7JWE7KeBIOyYiOyVveydtCDsl4bsirXri4jri6QuIixmcjoiQXVjdW5lIHLDqXNlcnZhdGlvbiBkYW5zIGNldHRlIGNvbnZlcnNhdGlvbiBwb3VyIGzigJlpbnN0YW50LiIsZXM6IkHDum4gbm8gaGF5IHJlc2VydmFzIGVuIGVzdGEgY29udmVyc2FjacOzbi4ifSwiTm90IGtub3duIHlldCB3aGV0aGVyIHswfSBtYWRlIHRoaXMgYm9va2luZyDigJQgYSBwZXJzb24gaXMgY29uZmlybWluZyBpdC4iOntkZToiTm9jaCBpc3QgdW5rbGFyLCBvYiB7MH0gZGllc2UgQnVjaHVuZyBhbmdlbGVndCBoYXQg4oCUIGVpbiBNaXRhcmJlaXRlciBwcsO8ZnQgZXMuIixqYToiezB944Gn44GT44Gu5LqI57SE44GM5L2c5oiQ44GV44KM44Gf44GL44Gv44G+44Gg5YiG44GL44KK44G+44Gb44KT44CC5ouF5b2T6ICF44GM56K66KqN44GX44Gm44GE44G+44GZ44CCIixrbzoiezB97JeQ7IScIOydtCDsmIjslb3snbQg66eM65Ok7Ja07KGM64qU7KeAIOyVhOyngSDslYwg7IiYIOyXhuyKteuLiOuLpC4g64u064u57J6Q6rCAIO2ZleyduO2VmOqzoCDsnojsirXri4jri6QuIixmcjoiT24gbmUgc2FpdCBwYXMgZW5jb3JlIHNpIHswfSBhIGNyw6nDqSBjZXR0ZSByw6lzZXJ2YXRpb24g4oCUIHVuZSBwZXJzb25uZSBsYSB2w6lyaWZpZS4iLGVzOiJBw7puIG5vIHNlIHNhYmUgc2kgezB9IGNyZcOzIGVzdGEgcmVzZXJ2YTsgdW5hIHBlcnNvbmEgbG8gZXN0w6EgY29uZmlybWFuZG8uIn0sQ2FuY2VsOmFTLCJTZWUgYm9va2luZyB7MH0iOntkZToiQnVjaHVuZyB7MH0gYW5zZWhlbiIsamE6IuS6iOe0hCB7MH0g44Gu6Kmz57Sw44KS6KaL44KLIixrbzoi7JiI7JW9IHswfSDrs7TquLAiLGZyOiJWb2lyIGxhIHLDqXNlcnZhdGlvbiB7MH0iLGVzOiJWZXIgbGEgcmVzZXJ2YSB7MH0ifSxDYW5jZWxsaW5nOmlTLCJUaGUgaG90ZWwgY2hhcmdlcyI6e2RlOiJEYXMgSG90ZWwgYmVyZWNobmV0IixqYToi44Ob44OG44Or44Gu6KuL5rGC6aGNIixrbzoi7Zi47YWUIOyyreq1rOyVoSIsZnI6IkzigJlow7R0ZWwgZmFjdHVyZSIsZXM6IkVsIGhvdGVsIGNvYnJhIn0sIkNhbmNlbGxpbmcgd291bGQgY29zdCI6e2RlOiJFaW5lIFN0b3JuaWVydW5nIGtvc3RldCIsamE6IuOCreODo+ODs+OCu+ODq+aWmSIsa286Iuy3qOyGjCDsiJjsiJjro4wiLGZyOiJM4oCZYW5udWxhdGlvbiBjb8O7dGVyYWl0IixlczoiQ2FuY2VsYXIgY29zdGFyw61hIn0sIktlZXAgaXQiOntkZToiQmVoYWx0ZW4iLGphOiLjgq3jg6Pjg7Pjgrvjg6vjgZfjgarjgYQiLGtvOiLsnKDsp4DtlZjquLAiLGZyOiJMYSBnYXJkZXIiLGVzOiJNYW50ZW5lcmxhIn0sIkNhbmNlbCB0aGUgYm9va2luZyI6e2RlOiJCdWNodW5nIHN0b3JuaWVyZW4iLGphOiLkuojntITjgpLjgq3jg6Pjg7Pjgrvjg6vjgZnjgosiLGtvOiLsmIjslb0g7Leo7IaMIO2ZleyglSIsZnI6IkFubnVsZXIgbGEgcsOpc2VydmF0aW9uIixlczoiQ2FuY2VsYXIgbGEgcmVzZXJ2YSJ9LCJUaGVyZSBpcyBub3RoaW5nIGxlZnQgdG8gY2FuY2VsIG9uIHRoaXMgYm9va2luZy4iOntkZToiQW4gZGllc2VyIEJ1Y2h1bmcgZ2lidCBlcyBuaWNodHMgbWVociB6dSBzdG9ybmllcmVuLiIsamE6IuOBk+OBruS6iOe0hOOBq+OCreODo+ODs+OCu+ODq+OBp+OBjeOCi+WGheWuueOBr+aui+OBo+OBpuOBhOOBvuOBm+OCk+OAgiIsa286IuydtCDsmIjslb3sl5DripQg642UIOydtOyDgSDst6jshoztlaAg64K07Jqp7J20IOyXhuyKteuLiOuLpC4iLGZyOiJJbCBuZSByZXN0ZSByaWVuIMOgIGFubnVsZXIgc3VyIGNldHRlIHLDqXNlcnZhdGlvbi4iLGVzOiJObyBxdWVkYSBuYWRhIHBvciBjYW5jZWxhciBlbiBlc3RhIHJlc2VydmEuIn0sQ2hhbmdlZDpjUyxDaGFuZ2luZzpsUyxXYXM6dVMsTm93OmRTLCJXb3VsZCBiZSI6e2RlOiJOZXUiLGphOiLlpInmm7TlvowiLGtvOiLrs4Dqsr0g7ZuEIixmcjoiQXByw6hzIixlczoiRGVzcHXDqXMifSwiVGhlIGRlc2sgb3dlcyI6e2RlOiJEYXMgSG90ZWwgZXJzdGF0dGV0IixqYToi44Ob44OG44Or44GL44KJ44Gu6L+U6YeRIixrbzoi7Zi47YWUIO2ZmOu2iOyVoSIsZnI6IkzigJlow7R0ZWwgdm91cyBkb2l0IixlczoiRWwgaG90ZWwgbGUgZGV2dWVsdmUifSwiV291bGQgY29tZSBiYWNrIjp7ZGU6IlfDvHJkZSBlcnN0YXR0ZXQiLGphOiLov5Tph5HkuojlrprpoY0iLGtvOiLtmZjrtogg7JiI7KCVIixmcjoiU2VyYWl0IHJlbWJvdXJzw6kiLGVzOiJTZSBkZXZvbHZlcsOtYSJ9LCJUaGUgZGVzayBhc2tzIGZvciI6e2RlOiJEYXMgSG90ZWwgdmVybGFuZ3QiLGphOiLov73liqDmlpnph5EiLGtvOiLstpTqsIAg7JqU6riIIixmcjoiTOKAmWjDtHRlbCBkZW1hbmRlIixlczoiRWwgaG90ZWwgcGlkZSJ9LCJXb3VsZCBjb3N0Ijp7ZGU6IlfDvHJkZSBrb3N0ZW4iLGphOiLlt67poY0iLGtvOiLssKjslaEiLGZyOiJDb8O7dGVyYWl0IixlczoiQ29zdGFyw61hIn0sIkxlYXZlIGl0Ijp7ZGU6IlNvIGxhc3NlbiIsamE6IuWkieabtOOBl+OBquOBhCIsa286IuuzgOqyvSDslYgg7ZWoIixmcjoiTmUgcmllbiBjaGFuZ2VyIixlczoiRGVqYXJsbyBhc8OtIn0sIlVwZGF0ZSB0aGUgYm9va2luZyI6e2RlOiJCdWNodW5nIGFrdHVhbGlzaWVyZW4iLGphOiLkuojntITjgpLmm7TmlrAiLGtvOiLsmIjslb0g7JeF642w7J207Yq4IixmcjoiTWV0dHJlIMOgIGpvdXIgbGEgcsOpc2VydmF0aW9uIixlczoiQWN0dWFsaXphciBsYSByZXNlcnZhIn0sIk1vdmUgdGhlIGJvb2tpbmciOntkZToiQnVjaHVuZyB2ZXJzY2hpZWJlbiIsamE6IuaXpeeoi+OCkuWkieabtOOBmeOCiyIsa286IuydvOyglSDrs4Dqsr0g7ZmV7KCVIixmcjoiRMOpcGxhY2VyIGxhIHLDqXNlcnZhdGlvbiIsZXM6Ik1vdmVyIGxhIHJlc2VydmEifSwiV2hhdCB0aGUgaG90ZWwgcHVibGlzaGVzIjp7ZGU6IldhcyBkYXMgSG90ZWwgdmVyw7ZmZmVudGxpY2h0IixqYToi44Ob44OG44Or44Gu5YWs6ZaL44Od44Oq44K344O8Iixrbzoi7Zi47YWUIOqzteqwnCDsoJXssYUiLGZyOiJDZSBxdWUgcHVibGllIGzigJlow7R0ZWwiLGVzOiJMbyBxdWUgcHVibGljYSBlbCBob3RlbCJ9LCJ7MH0gZG9lcyBub3QgcHVibGlzaCBhbnl0aGluZyBhYm91dCB0aGF0IGhlcmUuIjp7ZGU6InswfSB2ZXLDtmZmZW50bGljaHQgaGllciBuaWNodHMgZGF6dS4iLGphOiJ7MH3jga/jgZPjgozjgavjgaTjgYTjgabkvZXjgoLlhazplovjgZfjgabjgYTjgb7jgZvjgpPjgIIiLGtvOiJ7MH3snYAo64qUKSDsnbTsl5Ag6rSA7ZW0IOqzteqwnO2VnCDrgrTsmqnsnbQg7JeG7Iq164uI64ukLiIsZnI6InswfSBuZSBwdWJsaWUgcmllbiDDoCBjZSBzdWpldCBpY2kuIixlczoiezB9IG5vIHB1YmxpY2EgbmFkYSBzb2JyZSBlc28gYXF1w60uIn0sIlBlciBuaWdodCI6e2RlOiJQcm8gTmFjaHQiLGphOiIx5rOK44GC44Gf44KKIixrbzoiMeuwleuLuSIsZnI6IlBhciBudWl0IixlczoiUG9yIG5vY2hlIn0sIldob2xlIHN0YXkiOntkZToiR2VzYW10ZXIgQXVmZW50aGFsdCIsamE6Iua7nuWcqOWFqOS9kyIsa286IuyghOyytCDsiJnrsJUiLGZyOiJTw6lqb3VyIGNvbXBsZXQiLGVzOiJFc3RhbmNpYSBjb21wbGV0YSJ9LFNsZWVwczpoUywiUm9vbXMgbGVmdCI6e2RlOiJGcmVpZSBaaW1tZXIiLGphOiLmrovlrqTmlbAiLGtvOiLrgqjsnYAg6rCd7IukIixmcjoiQ2hhbWJyZXMgcmVzdGFudGVzIixlczoiSGFiaXRhY2lvbmVzIGxpYnJlcyJ9LEZyb206cFMsWWVzOm1TLE5vOmZTLCJOb3QgaW5jbHVkZWQiOntkZToiTmljaHQgZW50aGFsdGVuIixqYToi5ZCr44G+44KM44Gq44GEIixrbzoi67aI7Y+s7ZWoIixmcjoiTm9uIGluY2x1cyIsZXM6Ik5vIGluY2x1aWRvIn0sInswfSBpbmNsLiB0YXgiOntkZToiezB9IGlua2wuIFN0ZXVlcm4iLGphOiJ7MH3vvIjnqI7ovrzjgb/vvIkiLGtvOiJ7MH0gKOyEuOq4iCDtj6ztlagpIixmcjoiezB9IFRUQyIsZXM6InswfSBjb24gaW1wdWVzdG9zIn0sInRvdGFsIMK3IHswfS9uaWdodCI6e2RlOiJnZXNhbXQgwrcgezB9L05hY2h0IixqYToi5ZCI6KiIIMK3IDHms4p7MH0iLGtvOiLtlanqs4QgwrcgMeuwlSB7MH0iLGZyOiJ0b3RhbCDCtyB7MH0vbnVpdCIsZXM6InRvdGFsIMK3IHswfS9ub2NoZSJ9LCIgLyBuaWdodCI6e2RlOiIgLyBOYWNodCIsamE6IuOAnCAvIOaziiIsa286IiAvIDHrsJUiLGZyOiIgLyBudWl0IixlczoiIC8gbm9jaGUifSwiUHJpY2VzIGFyZSBpbiBlYWNoIGhvdGVsJ3Mgb3duIGN1cnJlbmN5ICh7MH0pLiBUaGV5IGFyZSBub3QgY29udmVydGVkLCBzbyB0aGUgY29sdW1ucyBhcmUgbm90IGEgcHJpY2UgcmFua2luZy4iOntkZToiRGllIFByZWlzZSBzaW5kIGluIGRlciBqZXdlaWxpZ2VuIFfDpGhydW5nIGRlcyBIb3RlbHMgKHswfSkuIFNpZSB3ZXJkZW4gbmljaHQgdW1nZXJlY2huZXQsIGRpZSBTcGFsdGVuIHNpbmQgYWxzbyBrZWluIFByZWlzdmVyZ2xlaWNoLiIsamE6IuaWmemHkeOBr+WQhOODm+ODhuODq+OBrumAmuiyqO+8iHswfe+8ieOBp+ihqOekuuOBl+OBpuOBhOOBvuOBmeOAguaPm+eul+OBl+OBpuOBhOOBquOBhOOBn+OCgeOAgeWIl+OCkuS4puOBueOBpuaWmemHkeOCkuavlOOBueOCi+OBk+OBqOOBr+OBp+OBjeOBvuOBm+OCk+OAgiIsa286IuyalOq4iOydgCDqsIEg7Zi47YWU7J2YIO2Gte2ZlCh7MH0p66GcIO2RnOyLnOuQqeuLiOuLpC4g7ZmY7IKw7ZWY7KeAIOyViuycvOuvgOuhnCDsl7Trgbzrpqwg6rCA6rKp7J2EIOu5hOq1kO2VoCDsiJgg7JeG7Iq164uI64ukLiIsZnI6IkxlcyBwcml4IHNvbnQgZGFucyBsYSBkZXZpc2UgZGUgY2hhcXVlIGjDtHRlbCAoezB9KS4gSWxzIG5lIHNvbnQgcGFzIGNvbnZlcnRpcyA6IGxlcyBjb2xvbm5lcyBuZSBmb3JtZW50IGRvbmMgcGFzIHVuIGNsYXNzZW1lbnQgcGFyIHByaXguIixlczoiTG9zIHByZWNpb3MgZXN0w6FuIGVuIGxhIG1vbmVkYSBkZSBjYWRhIGhvdGVsICh7MH0pLiBObyBzZSBjb252aWVydGVuLCBhc8OtIHF1ZSBsYXMgY29sdW1uYXMgbm8gc29uIHVuYSBjbGFzaWZpY2FjacOzbiBwb3IgcHJlY2lvLiJ9LCJPcGVuIGEgaG90ZWwgdG8gc2VlIGl0cyByb29tcyBmb3IgdGhlc2UgbmlnaHRzLiI6e2RlOiLDlmZmbmVuIFNpZSBlaW4gSG90ZWwsIHVtIHNlaW5lIFppbW1lciBmw7xyIGRpZXNlIE7DpGNodGUgenUgc2VoZW4uIixqYToi44Ob44OG44Or44KS6ZaL44GP44Go44CB44GT44Gu5pel56iL44Gu5a6i5a6k44GM6KaL44KJ44KM44G+44GZ44CCIixrbzoi7Zi47YWU7J2EIOyXtOuptCDsnbQg64Kg7Kec7J2YIOqwneyLpOydhCDrs7wg7IiYIOyeiOyKteuLiOuLpC4iLGZyOiJPdXZyZXogdW4gaMO0dGVsIHBvdXIgdm9pciBzZXMgY2hhbWJyZXMgcG91ciBjZXMgbnVpdHMuIixlczoiQWJyYSB1biBob3RlbCBwYXJhIHZlciBzdXMgaGFiaXRhY2lvbmVzIHBhcmEgZXNhcyBub2NoZXMuIn0sIk9wZW4gYSBob3RlbCB0byBzZWUgaXRzIHJvb21zLiI6e2RlOiLDlmZmbmVuIFNpZSBlaW4gSG90ZWwsIHVtIHNlaW5lIFppbW1lciB6dSBzZWhlbi4iLGphOiLjg5vjg4bjg6vjgpLplovjgY/jgajlrqLlrqTjgYzopovjgonjgozjgb7jgZnjgIIiLGtvOiLtmLjthZTsnYQg7Je066m0IOqwneyLpOydhCDrs7wg7IiYIOyeiOyKteuLiOuLpC4iLGZyOiJPdXZyZXogdW4gaMO0dGVsIHBvdXIgdm9pciBzZXMgY2hhbWJyZXMuIixlczoiQWJyYSB1biBob3RlbCBwYXJhIHZlciBzdXMgaGFiaXRhY2lvbmVzLiJ9LCJCb29rZWQgwrcgezB9Ijp7ZGU6IkdlYnVjaHQgwrcgezB9IixqYToi5LqI57SE5riI44G/IMK3IHswfSIsa286IuyYiOyVveuQqCDCtyB7MH0iLGZyOiJSw6lzZXJ2w6kgwrcgezB9IixlczoiUmVzZXJ2YWRvIMK3IHswfSJ9LCJJbiB0aGUgdHJpcCI6e2RlOiJJbiBkZXIgUmVpc2UiLGphOiLml4XnqIvjgavov73liqDmuIjjgb8iLGtvOiLsnbzsoJXsl5Ag7J6I7J2MIixmcjoiRGFucyBsZSB2b3lhZ2UiLGVzOiJFbiBlbCB2aWFqZSJ9LCJQbGFuIG9ubHkiOntkZToiTnVyIGdlcGxhbnQiLGphOiLoqIjnlLvjga7jgb8iLGtvOiLqs4Ttmo3rp4wiLGZyOiJQcsOpdnUgc2V1bGVtZW50IixlczoiU29sbyBwbGFuaWZpY2FkbyJ9LCJDaGVjayBvdXQgwrcgezB9Ijp7ZGU6IkFicmVpc2UgwrcgezB9IixqYToi44OB44Kn44OD44Kv44Ki44Km44OIIMK3IHswfSIsa286IuyytO2BrOyVhOybgyDCtyB7MH0iLGZyOiJEw6lwYXJ0IMK3IHswfSIsZXM6IlNhbGlkYSDCtyB7MH0ifSwiTmlnaHQgezB9IG9mIHsxfSDCtyB7Mn0iOntkZToiTmFjaHQgezB9IHZvbiB7MX0gwrcgezJ9IixqYToiezF95rOK5LitezB95rOK55uuIMK3IHsyfSIsa286InsxfeuwlSDspJEgezB967CV7Ke4IMK3IHsyfSIsZnI6Ik51aXQgezB9IHN1ciB7MX0gwrcgezJ9IixlczoiTm9jaGUgezB9IGRlIHsxfSDCtyB7Mn0ifSwiezB9IGhlcmUiOntkZToiezB9IGhpZXIiLGphOiLjgZPjgZPjgad7MH0iLGtvOiLsnbTqs7Psl5DshJwgezB9IixmcjoiezB9IGljaSIsZXM6InswfSBhcXXDrSJ9LCJPZiB0aGUgezB9IG9uIHRoZSBwbGFuLCB7MX0gYXJlIGluIHRoZSB0cmlwIG9yIGJvb2tlZDsgdGhlIHJlc3QgYXJlIG9ubHkgcGxhbm5lZC4iOntkZToiVm9uIGRlbiB7MH0gaW0gUGxhbiBzaW5kIHsxfSBpbiBkZXIgUmVpc2Ugb2RlciBnZWJ1Y2h0OyBkZXIgUmVzdCBpc3QgbnVyIGdlcGxhbnQuIixqYToi6KiI55S75Lit44GuezB95Lu244Gu44GG44Gh44CBezF95Lu244Gv5peF56iL44Gr6L+95Yqg5riI44G/44G+44Gf44Gv5LqI57SE5riI44G/44Gn44GZ44CC5q6L44KK44Gv6KiI55S744Gu44G/44Gn44GZ44CCIixrbzoi6rOE7ZqN7J2YIHswfeqxtCDspJEgezF96rG07J2AIOydvOygleyXkCDsnojqsbDrgpgg7JiI7JW965CY7JeI6rOgLCDrgpjrqLjsp4DripQg6rOE7ZqN66eMIOuQmOyWtCDsnojsirXri4jri6QuIixmcjoiU3VyIGxlcyB7MH0gZHUgcHJvZ3JhbW1lLCB7MX0gc29udCBkYW5zIGxlIHZveWFnZSBvdSByw6lzZXJ2w6lzIDsgbGUgcmVzdGUgZXN0IHNldWxlbWVudCBwcsOpdnUuIixlczoiRGUgbG9zIHswfSBkZWwgcGxhbiwgezF9IGVzdMOhbiBlbiBlbCB2aWFqZSBvIHJlc2VydmFkb3M7IGVsIHJlc3RvIHNvbG8gZXN0w6EgcGxhbmlmaWNhZG8uIn0sIkJvb2sgdGhpcyBzdGF5Ijp7ZGU6IkRpZXNlbiBBdWZlbnRoYWx0IGJ1Y2hlbiIsamE6IuOBk+OBrua7nuWcqOOCkuS6iOe0hCIsa286IuydtCDsiJnrsJUg7JiI7JW9IixmcjoiUsOpc2VydmVyIGNlIHPDqWpvdXIiLGVzOiJSZXNlcnZhciBlc3RhIGVzdGFuY2lhIn0sIkJvb2sgdGhlc2UgezB9IGhvdGVscyI6e2RlOiJEaWVzZSB7MH0gSG90ZWxzIGJ1Y2hlbiIsamE6IuOBk+OBrnswfei7kuOCkuS6iOe0hCIsa286IuydtCDtmLjthZQgezB96rOzIOyYiOyVvSIsZnI6IlLDqXNlcnZlciBjZXMgezB9IGjDtHRlbHMiLGVzOiJSZXNlcnZhciBlc3RvcyB7MH0gaG90ZWxlcyJ9LCJCb29rIHRoZXNlIHswfSBzdGF5cyI6e2RlOiJEaWVzZSB7MH0gQXVmZW50aGFsdGUgYnVjaGVuIixqYToi44GT44GuezB95Lu244Gu5rue5Zyo44KS5LqI57SEIixrbzoi7J20IOyImeuwlSB7MH3qsbQg7JiI7JW9IixmcjoiUsOpc2VydmVyIGNlcyB7MH0gc8Opam91cnMiLGVzOiJSZXNlcnZhciBlc3RhcyB7MH0gZXN0YW5jaWFzIn0sSG90ZWxzOmdTLCJUaGF0IGhvdGVsIGlzIG5vdCBpbiB0aGlzIGNvbm5lY3Rvci4iOntkZToiRGllc2VzIEhvdGVsIGlzdCBoaWVyIG5pY2h0IHZlcmbDvGdiYXIuIixqYToi44Gd44Gu44Ob44OG44Or44Gv44GT44GT44Gr44Gv44GC44KK44G+44Gb44KT44CCIixrbzoi6re4IO2YuO2FlOydgCDsl6zquLDsl5Ag7JeG7Iq164uI64ukLiIsZnI6IkNldCBow7R0ZWwgbuKAmWVzdCBwYXMgZGlzcG9uaWJsZSBpY2kuIixlczoiRXNlIGhvdGVsIG5vIGVzdMOhIGFxdcOtLiJ9LCJTaWduZWQgb3V0LiBSYXRlcyBhcmUgdGhlIHB1YmxpYyBvbmVzIGFnYWluLiI6e2RlOiJBYmdlbWVsZGV0LiBFcyBnZWx0ZW4gd2llZGVyIGRpZSDDtmZmZW50bGljaGVuIFByZWlzZS4iLGphOiLjg63jgrDjgqLjgqbjg4jjgZfjgb7jgZfjgZ/jgILmlpnph5Hjga/kuIDoiKzmlpnph5HjgavmiLvjgorjgb7jgZfjgZ/jgIIiLGtvOiLroZzqt7jslYTsm4PrkJjsl4jsirXri4jri6QuIOyalOq4iOydtCDri6Tsi5wg7J2867CYIOyalOq4iOycvOuhnCDtkZzsi5zrkKnri4jri6QuIixmcjoiRMOpY29ubmVjdMOpLiBMZXMgdGFyaWZzIHB1YmxpY3Mgc+KAmWFwcGxpcXVlbnQgZGUgbm91dmVhdS4iLGVzOiJTZXNpw7NuIGNlcnJhZGEuIFZ1ZWx2ZW4gYSBtb3N0cmFyc2UgbGFzIHRhcmlmYXMgcMO6YmxpY2FzLiJ9LCJUaGVyZSBpcyBub3RoaW5nIGluIHRoZSB0cmlwIHlldC4iOntkZToiSW4gZGVyIFJlaXNlIGlzdCBub2NoIG5pY2h0cy4iLGphOiLml4XnqIvjgavjga/jgb7jgaDkvZXjgoLjgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLsl6ztlokg7J287KCV7JeQIOyVhOyngSDslYTrrLTqsoPrj4Qg7JeG7Iq164uI64ukLiIsZnI6IklsIG7igJl5IGEgZW5jb3JlIHJpZW4gZGFucyBsZSB2b3lhZ2UuIixlczoiVG9kYXbDrWEgbm8gaGF5IG5hZGEgZW4gZWwgdmlhamUuIn0sIk5vIGJvb2tpbmcgaGVyZSBtYXRjaGVzIHRoYXQgY29kZS4iOntkZToiS2VpbmUgQnVjaHVuZyBwYXNzdCB6dSBkaWVzZW0gQ29kZS4iLGphOiLjgZ3jga7norroqo3nlarlj7fjgavkuIDoh7TjgZnjgovkuojntITjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLqt7gg7ZmV7J24IOuyiO2YuOyXkCDtlbTri7ntlZjripQg7JiI7JW97J20IOyXhuyKteuLiOuLpC4iLGZyOiJBdWN1bmUgcsOpc2VydmF0aW9uIG5lIGNvcnJlc3BvbmQgw6AgY2UgY29kZS4iLGVzOiJOaW5ndW5hIHJlc2VydmEgY29pbmNpZGUgY29uIGVzZSBjw7NkaWdvLiJ9LCJOb25lIG9mIHRob3NlIGFyZSBob3RlbHMgdGhpcyBjb25uZWN0b3Iga25vd3MuIjp7ZGU6IktlaW5lcyBkYXZvbiBpc3QgaGllciBlaW4gYmVrYW5udGVzIEhvdGVsLiIsamE6IuOBhOOBmuOCjOOCguOBk+OBk+OBp+aJseOBo+OBpuOBhOOCi+ODm+ODhuODq+OBp+OBr+OBguOCiuOBvuOBm+OCk+OAgiIsa286IuuqqOuRkCDsl6zquLDshJwg64uk66Oo64qUIO2YuO2FlOydtCDslYTri5nri4jri6QuIixmcjoiQXVjdW4gZOKAmWV1eCBu4oCZZXN0IHVuIGjDtHRlbCBjb25udSBpY2kuIixlczoiTmluZ3VubyBkZSBlbGxvcyBlcyB1biBob3RlbCBxdWUgc2UgY29ub3pjYSBhcXXDrS4ifSwiQW4gaXRpbmVyYXJ5IG5lZWRzIGF0IGxlYXN0IG9uZSBkYXkuIjp7ZGU6IkVpbiBSZWlzZXBsYW4gYnJhdWNodCBtaW5kZXN0ZW5zIGVpbmVuIFRhZy4iLGphOiLml4XnqIvoqIjnlLvjgavjga/lsJHjgarjgY/jgajjgoIx5pel44GM5b+F6KaB44Gn44GZ44CCIixrbzoi7Jes7ZaJIOqzhO2ajeyXkOuKlCDstZzshowg7ZWY66Oo6rCAIO2VhOyalO2VqeuLiOuLpC4iLGZyOiJVbiBpdGluw6lyYWlyZSBkb2l0IGNvbXB0ZXIgYXUgbW9pbnMgdW4gam91ci4iLGVzOiJVbiBpdGluZXJhcmlvIG5lY2VzaXRhIGFsIG1lbm9zIHVuIGTDrWEuIn0sIlRoZSBvbmUgb24gdGhlIGJvb2tpbmciOntkZToiRGllIGJlaSBkZXIgQnVjaHVuZyBhbmdlZ2ViZW5lIixqYToi5LqI57SE5pmC44Gu44Oh44O844Or44Ki44OJ44Os44K5Iixrbzoi7JiI7JW97ZWgIOuVjCDsk7Qg7J2066mU7J28IixmcjoiQ2VsdWkgdXRpbGlzw6kgcG91ciBsYSByw6lzZXJ2YXRpb24iLGVzOiJFbCBxdWUgdXPDsyBlbiBsYSByZXNlcnZhIn0sIkZpbmQgaXQiOntkZToiU3VjaGVuIixqYToi5qSc57SiIixrbzoi7LC+6riwIixmcjoiUmVjaGVyY2hlciIsZXM6IkJ1c2NhciJ9LCJOb2JvZHkgaXMgc2lnbmVkIGluLCBzbyB0aGVyZSBpcyBub3RoaW5nIHNhdmVkIHRvIGZvcmdldC4iOntkZToiTmllbWFuZCBpc3QgYW5nZW1lbGRldCwgYWxzbyBnaWJ0IGVzIG5pY2h0cyBHZXNwZWljaGVydGVzIHp1IHZlcmdlc3Nlbi4iLGphOiLjg63jgrDjgqTjg7PjgZfjgabjgYTjgarjgYTjgZ/jgoHjgIHliYrpmaTjgafjgY3jgovkv53lrZjlhoXlrrnjga/jgYLjgorjgb7jgZvjgpPjgIIiLGtvOiLroZzqt7jsnbjtlZjsp4Ag7JWK7JWY7Jy866+A66GcIOyCreygnO2VoCDsoIDsnqUg64K07Jqp7J20IOyXhuyKteuLiOuLpC4iLGZyOiJQZXJzb25uZSBu4oCZZXN0IGNvbm5lY3TDqSA6IGlsIG7igJl5IGEgcmllbiBk4oCZZW5yZWdpc3Ryw6kgw6Agb3VibGllci4iLGVzOiJObyBoYXkgbmFkaWUgY29uIGxhIHNlc2nDs24gaW5pY2lhZGEsIGFzw60gcXVlIG5vIGhheSBuYWRhIGd1YXJkYWRvIHF1ZSBvbHZpZGFyLiJ9LCJTaWduIGluIHdpdGggdGhlIG1lbWJlcnNoaXAgbnVtYmVyIGFuZCB0aGUgc3VybmFtZSBwcmludGVkIG9uIHRoZSBjYXJkIHRvIHNlZSB0aGUgbWVtYmVyIHJhdGUgb24gZXZlcnkgcHJpY2UgaGVyZS4iOntkZToiTWVsZGVuIFNpZSBzaWNoIG1pdCBkZXIgTWl0Z2xpZWRzbnVtbWVyIHVuZCBkZW0gYXVmIGRlciBLYXJ0ZSBnZWRydWNrdGVuIE5hY2huYW1lbiBhbiwgdW0gYmVpIGplZGVtIFByZWlzIGhpZXIgZGVuIE1pdGdsaWVkZXJwcmVpcyB6dSBzZWhlbi4iLGphOiLjgqvjg7zjg4njgavljbDlrZfjgZXjgozjgZ/kvJrlk6Hnlarlj7fjgajlp5Pjgafjg63jgrDjgqTjg7PjgZnjgovjgajjgIHjgZPjgZPjga7jgZnjgbnjgabjga7mlpnph5HjgYzkvJrlk6Hmlpnph5HjgafooajnpLrjgZXjgozjgb7jgZnjgIIiLGtvOiLsubTrk5zsl5Ag7J247IeE65CcIO2ajOybkCDrsojtmLjsmYAg7ISx7Jy866GcIOuhnOq3uOyduO2VmOuptCDsl6zquLDsnZgg66qo65OgIOqwgOqyqeydtCDtmozsm5Ag7JqU6riI7Jy866GcIO2RnOyLnOuQqeuLiOuLpC4iLGZyOiJDb25uZWN0ZXotdm91cyBhdmVjIGxlIG51bcOpcm8gZGUgbWVtYnJlIGV0IGxlIG5vbSBpbXByaW3DqXMgc3VyIGxhIGNhcnRlIHBvdXIgdm9pciBsZSB0YXJpZiBtZW1icmUgc3VyIGNoYXF1ZSBwcml4IGljaS4iLGVzOiJJbmljaWUgc2VzacOzbiBjb24gZWwgbsO6bWVybyBkZSBtaWVtYnJvIHkgZWwgYXBlbGxpZG8gaW1wcmVzb3MgZW4gbGEgdGFyamV0YSBwYXJhIHZlciBsYSB0YXJpZmEgZGUgbWllbWJybyBlbiB0b2RvcyBsb3MgcHJlY2lvcy4ifSwiU29tZXRoaW5nIGNhbWUgYmFjayB0aGF0IHRoaXMgY2FyZCBkb2VzIG5vdCBrbm93IGhvdyB0byBkcmF3LiI6e2RlOiJFcyBrYW0gZXR3YXMgenVyw7xjaywgZGFzIGRpZXNlIEthcnRlIG5pY2h0IGRhcnN0ZWxsZW4ga2Fubi4iLGphOiLjgZPjga7jgqvjg7zjg4njgafjga/ooajnpLrjgafjgY3jgarjgYTlhoXlrrnjgYzov5TjgZXjgozjgb7jgZfjgZ/jgIIiLGtvOiLsnbQg7Lm065Oc6rCAIO2RnOyLnO2VoCDsiJgg7JeG64qUIOuCtOyaqeydtCDrj4zslYTsmZTsirXri4jri6QuIixmcjoiVW5lIHLDqXBvbnNlIGVzdCBhcnJpdsOpZSBxdWUgY2V0dGUgY2FydGUgbmUgc2FpdCBwYXMgYWZmaWNoZXIuIixlczoiTGxlZ8OzIGFsZ28gcXVlIGVzdGEgdGFyamV0YSBubyBzYWJlIG1vc3RyYXIuIn0sTmV4dDpiUywiQ2hvb3NlIHRoZSBjaGVjay1pbiBhbmQgY2hlY2stb3V0IGRhdGVzIGJlZm9yZSB0aGUgcm9vbSBnb2VzIGludG8gdGhlIHRyaXAuIjp7ZGU6IlfDpGhsZW4gU2llIEFuLSB1bmQgQWJyZWlzZXRhZywgYmV2b3IgZGFzIFppbW1lciBpbiBkaWUgUmVpc2Uga29tbXQuIixqYToi5a6i5a6k44KS5peF56iL44Gr6L+95Yqg44GZ44KL5YmN44Gr44CB44OB44Kn44OD44Kv44Kk44Oz5pel44Go44OB44Kn44OD44Kv44Ki44Km44OI5pel44KS6YG444KT44Gn44GP44Gg44GV44GE44CCIixrbzoi6rCd7Iuk7J2EIOydvOygleyXkCDrhKPquLAg7KCE7JeQIOyytO2BrOyduOqzvCDssrTtgazslYTsm4Mg64Kg7Kec66W8IOyEoO2Dne2VmOyEuOyalC4iLGZyOiJDaG9pc2lzc2V6IGxlcyBkYXRlcyBk4oCZYXJyaXbDqWUgZXQgZGUgZMOpcGFydCBhdmFudCBk4oCZYWpvdXRlciBsYSBjaGFtYnJlIGF1IHZveWFnZS4iLGVzOiJFbGlqYSBsYXMgZmVjaGFzIGRlIGxsZWdhZGEgeSBzYWxpZGEgYW50ZXMgZGUgYcOxYWRpciBsYSBoYWJpdGFjacOzbiBhbCB2aWFqZS4ifSwiezB9L3sxfSBib29rZWQiOntkZToiezB9L3sxfSBnZWJ1Y2h0IixqYToiezB9L3sxfSDkuojntITmuIjjgb8iLGtvOiJ7MH0vezF9IOyYiOyVveuQqCIsZnI6InswfS97MX0gcsOpc2VydsOpcyIsZXM6InswfS97MX0gcmVzZXJ2YWRvcyJ9LCJ7MH0vezF9IGluIHRoZSB0cmlwIjp7ZGU6InswfS97MX0gaW4gZGVyIFJlaXNlIixqYToiezB9L3sxfSDml4XnqIvjgavov73liqDmuIjjgb8iLGtvOiJ7MH0vezF9IOydvOygleyXkCDsnojsnYwiLGZyOiJ7MH0vezF9IGRhbnMgbGUgdm95YWdlIixlczoiezB9L3sxfSBlbiBlbCB2aWFqZSJ9LCIxIGJvb2tpbmciOntkZToiMSBCdWNodW5nIixqYToi5LqI57SEMeS7tiIsa286IuyYiOyVvSAx6rG0IixmcjoiMSByw6lzZXJ2YXRpb24iLGVzOiIxIHJlc2VydmEifSwiezB9IGJvb2tpbmdzIjp7ZGU6InswfSBCdWNodW5nZW4iLGphOiLkuojntIR7MH3ku7YiLGtvOiLsmIjslb0gezB96rG0IixmcjoiezB9IHLDqXNlcnZhdGlvbnMiLGVzOiJ7MH0gcmVzZXJ2YXMifSwiezB9IMK3IHsxfSUgb2ZmIjp7ZGU6InswfSDCtyB7MX0gJSBSYWJhdHQiLGphOiJ7MH0gwrcgezF9JeOCquODlSIsa286InswfSDCtyB7MX0lIO2VoOyduCIsZnI6InswfSDCtyDiiJJ7MX0gJSIsZXM6InswfSDCtyB7MX0gJSBkZSBkZXNjdWVudG8ifSwiTWVtYmVyIMK3IHswfSUgb2ZmIjp7ZGU6Ik1pdGdsaWVkIMK3IHswfSAlIFJhYmF0dCIsamE6IuS8muWToSDCtyB7MH0l44Kq44OVIixrbzoi7ZqM7JuQIMK3IHswfSUg7ZWg7J24IixmcjoiTWVtYnJlIMK3IOKIknswfSAlIixlczoiTWllbWJybyDCtyB7MH0gJSBkZSBkZXNjdWVudG8ifSwiTWVtYmVyIHNpZ24gaW4iOntkZToiTWl0Z2xpZWRlci1Mb2dpbiIsamE6IuS8muWToeODreOCsOOCpOODsyIsa286Iu2ajOybkCDroZzqt7jsnbgiLGZyOiJDb25uZXhpb24gbWVtYnJlIixlczoiQWNjZXNvIGRlIG1pZW1icm9zIn0sIkNvdWxkIG5vdCBsb2FkIHRob3NlIG5pZ2h0cy4iOntkZToiRGllc2UgTsOkY2h0ZSBrb25udGVuIG5pY2h0IGdlbGFkZW4gd2VyZGVuLiIsamE6IuOBk+OBruaXpeeoi+OCkuiqreOBv+i+vOOCgeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuydtCDrgqDsp5zrpbwg67aI65+s7Jik7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGNoYXJnZXIgY2VzIG51aXRzLiIsZXM6Ik5vIHNlIHB1ZGllcm9uIGNhcmdhciBlc2FzIG5vY2hlcy4ifSwiQ2hlY2sgezB9IGJlZm9yZSBib29raW5nLiI6e2RlOiJWb3IgZGVyIEJ1Y2h1bmcgcHLDvGZlbjogezB9LiIsamE6IuS6iOe0hOWJjeOBq+eiuuiqjeOBl+OBpuOBj+OBoOOBleOBhO+8mnswfeOAgiIsa286IuyYiOyVvSDsoIQg7ZmV7J24OiB7MH0uIixmcjoiw4AgdsOpcmlmaWVyIGF2YW50IGRlIHLDqXNlcnZlciA6IHswfS4iLGVzOiJSZXZpc2UgYW50ZXMgZGUgcmVzZXJ2YXI6IHswfS4ifSwiezB9IHRoaW5ncyB0byBjaGVjayBiZWZvcmUgYm9va2luZzogezF9LiI6e2RlOiJ7MH0gUHVua3RlIHZvciBkZXIgQnVjaHVuZyBwcsO8ZmVuOiB7MX0uIixqYToi5LqI57SE5YmN44Gr56K66KqN44GZ44KL6aCF55uu44GMezB95Lu244GC44KK44G+44GZ77yaezF944CCIixrbzoi7JiI7JW9IOyghCDtmZXsnbjtlaAg7ZWt66qpIHswfeqwnDogezF9LiIsZnI6InswfSBwb2ludHMgw6AgdsOpcmlmaWVyIGF2YW50IGRlIHLDqXNlcnZlciA6IHsxfS4iLGVzOiJ7MH0gY29zYXMgcXVlIHJldmlzYXIgYW50ZXMgZGUgcmVzZXJ2YXI6IHsxfS4ifSwiQ291bGQgbm90IGNoYW5nZSB0aGUgdHJpcC4iOntkZToiRGllIFJlaXNlIGtvbm50ZSBuaWNodCBnZcOkbmRlcnQgd2VyZGVuLiIsamE6IuaXheeoi+OCkuabtOaWsOOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyXrO2WiSDsnbzsoJXsnYQg67OA6rK97ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIG1vZGlmaWVyIGxlIHZveWFnZS4iLGVzOiJObyBzZSBwdWRvIGNhbWJpYXIgZWwgdmlhamUuIn0sIkNvdWxkIG5vdCBsb2FkIHRoZSB0cmlwLiI6e2RlOiJEaWUgUmVpc2Uga29ubnRlIG5pY2h0IGdlbGFkZW4gd2VyZGVuLiIsamE6IuaXheeoi+OCkuiqreOBv+i+vOOCgeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyXrO2WiSDsnbzsoJXsnYQg67aI65+s7Jik7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGNoYXJnZXIgbGUgdm95YWdlLiIsZXM6Ik5vIHNlIHB1ZG8gY2FyZ2FyIGVsIHZpYWplLiJ9LCJDb3VsZCBub3QgbG9hZCB0aGUgaG90ZWxzLiI6e2RlOiJEaWUgSG90ZWxzIGtvbm50ZW4gbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIixqYToi44Ob44OG44Or5LiA6Kan44KS6Kqt44G/6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7Zi47YWUIOuqqeuhneydhCDrtojrn6zsmKTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hhcmdlciBsZXMgaMO0dGVscy4iLGVzOiJObyBzZSBwdWRpZXJvbiBjYXJnYXIgbG9zIGhvdGVsZXMuIn0sIkNvdWxkIG5vdCBsb2FkIHRob3NlIGhvdGVscy4iOntkZToiRGllc2UgSG90ZWxzIGtvbm50ZW4gbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIixqYToi44GT44KM44KJ44Gu44Ob44OG44Or44KS6Kqt44G/6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7J20IO2YuO2FlOuTpOydhCDrtojrn6zsmKTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hhcmdlciBjZXMgaMO0dGVscy4iLGVzOiJObyBzZSBwdWRpZXJvbiBjYXJnYXIgZXNvcyBob3RlbGVzLiJ9LCJDb3VsZCBub3QgZmlsdGVyIHRoZSBsaXN0LiI6e2RlOiJEaWUgTGlzdGUga29ubnRlIG5pY2h0IGdlZmlsdGVydCB3ZXJkZW4uIixqYToi5LiA6Kan44KS57We44KK6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi66qp66Gd7J2EIO2VhO2EsOunge2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSBmaWx0cmVyIGxhIGxpc3RlLiIsZXM6Ik5vIHNlIHB1ZG8gZmlsdHJhciBsYSBsaXN0YS4ifSwiQ291bGQgbm90IHJlb3JkZXIgdGhlIGxpc3QuIjp7ZGU6IkRpZSBMaXN0ZSBrb25udGUgbmljaHQgbmV1IHNvcnRpZXJ0IHdlcmRlbi4iLGphOiLkuIDopqfjgpLkuKbjgbnmm7/jgYjjgonjgozjgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLrqqnroZ3snYQg64uk7IucIOygleugrO2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSB0cmllciBsYSBsaXN0ZS4iLGVzOiJObyBzZSBwdWRvIHJlb3JkZW5hciBsYSBsaXN0YS4ifSwiQ291bGQgbm90IGxvYWQgdGhlIGFkZC1vbnMuIjp7ZGU6IkRpZSBFeHRyYXMga29ubnRlbiBuaWNodCBnZWxhZGVuIHdlcmRlbi4iLGphOiLjgqrjg5fjgrfjg6fjg7PjgpLoqq3jgb/ovrzjgoHjgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLstpTqsIAg7ISc67mE7Iqk66W8IOu2iOufrOyYpOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSBjaGFyZ2VyIGxlcyBvcHRpb25zLiIsZXM6Ik5vIHNlIHB1ZGllcm9uIGNhcmdhciBsb3MgZXh0cmFzLiJ9LCJDb3VsZCBub3Qgd29yayBvdXQgdGhhdCBjaGFuZ2UuIjp7ZGU6IkRpZXNlIMOEbmRlcnVuZyBrb25udGUgbmljaHQgYmVyZWNobmV0IHdlcmRlbi4iLGphOiLjgZPjga7lpInmm7TjgpLoqIjnrpfjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsnbQg67OA6rK97J2EIOqzhOyCsO2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSBjYWxjdWxlciBjZXR0ZSBtb2RpZmljYXRpb24uIixlczoiTm8gc2UgcHVkbyBjYWxjdWxhciBlc2UgY2FtYmlvLiJ9LCJDb3VsZCBub3QgbG9hZCB0aGF0IHBvbGljeS4iOntkZToiRGllc2UgUmljaHRsaW5pZSBrb25udGUgbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIixqYToi44GT44Gu44Od44Oq44K344O844KS6Kqt44G/6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7J20IOygleyxheydhCDrtojrn6zsmKTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hhcmdlciBjZXR0ZSBjb25kaXRpb24uIixlczoiTm8gc2UgcHVkbyBjYXJnYXIgZXNhIHBvbMOtdGljYS4ifSwiQ291bGQgbm90IHdvcmsgb3V0IHRoZSBmZWUuIjp7ZGU6IkRpZSBHZWLDvGhyIGtvbm50ZSBuaWNodCBiZXJlY2huZXQgd2VyZGVuLiIsamE6IuOCreODo+ODs+OCu+ODq+aWmeOCkuioiOeul+OBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286Iuy3qOyGjCDsiJjsiJjro4zrpbwg6rOE7IKw7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGNhbGN1bGVyIGxlcyBmcmFpcy4iLGVzOiJObyBzZSBwdWRvIGNhbGN1bGFyIGVsIGNhcmdvLiJ9LCJDb3VsZCBub3QgY2FuY2VsIHRoYXQgYm9va2luZy4iOntkZToiRGllc2UgQnVjaHVuZyBrb25udGUgbmljaHQgc3Rvcm5pZXJ0IHdlcmRlbi4iLGphOiLjgZPjga7kuojntITjgpLjgq3jg6Pjg7Pjgrvjg6vjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsnbQg7JiI7JW97J2EIOy3qOyGjO2VmOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBk4oCZYW5udWxlciBjZXR0ZSByw6lzZXJ2YXRpb24uIixlczoiTm8gc2UgcHVkbyBjYW5jZWxhciBlc2EgcmVzZXJ2YS4ifSwiQ291bGQgbm90IGNoYW5nZSB0aGF0IGJvb2tpbmcuIjp7ZGU6IkRpZXNlIEJ1Y2h1bmcga29ubnRlIG5pY2h0IGdlw6RuZGVydCB3ZXJkZW4uIixqYToi44GT44Gu5LqI57SE44KS5aSJ5pu044Gn44GN44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7J20IOyYiOyVveydhCDrs4Dqsr3tlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgbW9kaWZpZXIgY2V0dGUgcsOpc2VydmF0aW9uLiIsZXM6Ik5vIHNlIHB1ZG8gY2FtYmlhciBlc2EgcmVzZXJ2YS4ifSwiQ291bGQgbm90IGNsZWFyIHRoZSBmaWx0ZXJzLiI6e2RlOiJEaWUgRmlsdGVyIGtvbm50ZW4gbmljaHQgenVyw7xja2dlc2V0enQgd2VyZGVuLiIsamE6Iue1nuOCiui+vOOBv+OCkuOCr+ODquOCouOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286Iu2VhO2EsOulvCDstIjquLDtmZTtlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZOKAmWVmZmFjZXIgbGVzIGZpbHRyZXMuIixlczoiTm8gc2UgcHVkaWVyb24gYm9ycmFyIGxvcyBmaWx0cm9zLiJ9LCJCb3RoIHRoZSBjb25maXJtYXRpb24gY29kZSBhbmQgdGhlIGVtYWlsIHRoZSBib29raW5nIHdhcyBtYWRlIHdpdGgsIHBsZWFzZS4iOntkZToiQml0dGUgc293b2hsIGRlbiBCZXN0w6R0aWd1bmdzY29kZSBhbHMgYXVjaCBkaWUgYmVpIGRlciBCdWNodW5nIHZlcndlbmRldGUgRS1NYWlsIGFuZ2ViZW4uIixqYToi56K66KqN55Wq5Y+344Go5LqI57SE5pmC44Gu44Oh44O844Or44Ki44OJ44Os44K544KS5Lih5pa55YWl5Yqb44GX44Gm44GP44Gg44GV44GE44CCIixrbzoi7ZmV7J24IOuyiO2YuOyZgCDsmIjslb3tlaAg65WMIOyTtCDsnbTrqZTsnbzsnYQg66qo65GQIOyeheugpe2VtCDso7zshLjsmpQuIixmcjoiSW5kaXF1ZXogbGUgY29kZSBkZSBjb25maXJtYXRpb24gZXQgbOKAmWUtbWFpbCB1dGlsaXPDqSBwb3VyIGxhIHLDqXNlcnZhdGlvbiwgc+KAmWlsIHZvdXMgcGxhw650LiIsZXM6IkluZGlxdWUgZWwgY8OzZGlnbyBkZSBjb25maXJtYWNpw7NuIHkgZWwgY29ycmVvIGVsZWN0csOzbmljbyBjb24gZWwgcXVlIHNlIGhpem8gbGEgcmVzZXJ2YSwgcG9yIGZhdm9yLiJ9LCJDb3VsZCBub3QgbG9vayB0aGF0IHVwLiI6e2RlOiJEYXMga29ubnRlIG5pY2h0IGFiZ2VydWZlbiB3ZXJkZW4uIixqYToi5qSc57Si44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7KGw7ZqM7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGZhaXJlIGNldHRlIHJlY2hlcmNoZS4iLGVzOiJObyBzZSBwdWRvIGNvbnN1bHRhci4ifSwiVGhpcyBhcHAgY2Fubm90IG9wZW4gZnVsbCBzY3JlZW4gaGVyZS4iOntkZToiRGllc2UgQXBwIGthbm4gaGllciBuaWNodCBpbSBWb2xsYmlsZCBnZcO2ZmZuZXQgd2VyZGVuLiIsamE6IuOBk+OBk+OBp+OBr+WFqOeUu+mdouOBp+mWi+OBkeOBvuOBm+OCk+OAgiIsa286IuyXrOq4sOyEnOuKlCDsoITssrQg7ZmU66m07Jy866GcIOyXtCDsiJgg7JeG7Iq164uI64ukLiIsZnI6IkNldHRlIGFwcGxpY2F0aW9uIG5lIHBldXQgcGFzIHPigJlvdXZyaXIgZW4gcGxlaW4gw6ljcmFuIGljaS4iLGVzOiJFc3RhIGFwbGljYWNpw7NuIG5vIHNlIHB1ZWRlIGFicmlyIGEgcGFudGFsbGEgY29tcGxldGEgYXF1w60uIn0sIkNvdWxkIG5vdCBsb2FkIG1vcmUgaG90ZWxzLiI6e2RlOiJXZWl0ZXJlIEhvdGVscyBrb25udGVuIG5pY2h0IGdlbGFkZW4gd2VyZGVuLiIsamE6IuOBu+OBi+OBruODm+ODhuODq+OCkuiqreOBv+i+vOOCgeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286Iu2YuO2FlOydhCDrjZQg67aI65+s7Jik7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGNoYXJnZXIgcGx1cyBk4oCZaMO0dGVscy4iLGVzOiJObyBzZSBwdWRpZXJvbiBjYXJnYXIgbcOhcyBob3RlbGVzLiJ9LCJCb3RoIHRoZSBtZW1iZXJzaGlwIG51bWJlciBhbmQgdGhlIHN1cm5hbWUgb24gaXQsIHBsZWFzZS4iOntkZToiQml0dGUgc293b2hsIGRpZSBNaXRnbGllZHNudW1tZXIgYWxzIGF1Y2ggZGVuIE5hY2huYW1lbiBkYXJhdWYgYW5nZWJlbi4iLGphOiLkvJrlk6Hnlarlj7fjgajjgqvjg7zjg4njgavoqJjovInjga7lp5PjgpLkuKHmlrnlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiLtmozsm5Ag67KI7Zi47JmAIOy5tOuTnOyXkCDsoIHtnowg7ISx7J2EIOuqqOuRkCDsnoXroKXtlbQg7KO87IS47JqULiIsZnI6IkluZGlxdWV6IGxlIG51bcOpcm8gZGUgbWVtYnJlIGV0IGxlIG5vbSBxdWkgeSBmaWd1cmUsIHPigJlpbCB2b3VzIHBsYcOudC4iLGVzOiJJbmRpcXVlIGVsIG7Dum1lcm8gZGUgbWllbWJybyB5IGVsIGFwZWxsaWRvIHF1ZSBhcGFyZWNlLCBwb3IgZmF2b3IuIn0sIkNvdWxkIG5vdCBzaWduIGluLiI6e2RlOiJBbm1lbGR1bmcgZmVobGdlc2NobGFnZW4uIixqYToi44Ot44Kw44Kk44Oz44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi66Gc6re47J247ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJDb25uZXhpb24gaW1wb3NzaWJsZS4iLGVzOiJObyBzZSBwdWRvIGluaWNpYXIgc2VzacOzbi4ifSwiQ291bGQgbm90IGZvcmdldCB0aGVtLiI6e2RlOiJMw7ZzY2hlbiBmZWhsZ2VzY2hsYWdlbi4iLGphOiLliYrpmaTjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsgq3soJztlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgbGVzIG91YmxpZXIuIixlczoiTm8gc2UgcHVkaWVyb24gb2x2aWRhci4ifSwiQ291bGQgbm90IGRvIHRoYXQganVzdCBub3cuIjp7ZGU6IkRhcyBnaW5nIGdlcmFkZSBuaWNodC4iLGphOiLku4rjga/lrozkuobjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsp4DquIjsnYAg7JmE66OM7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIHBvdXIgbOKAmWluc3RhbnQuIixlczoiTm8gc2UgcHVkbyBoYWNlciBhaG9yYSBtaXNtby4ifSwiQ291bGQgbm90IHB1dCBhbGwgb2YgdGhlbSBpbiB0aGUgdHJpcCBqdXN0IG5vdy4iOntkZToiR2VyYWRlIGtvbm50ZW4gbmljaHQgYWxsZSBpbiBkaWUgUmVpc2Ugw7xiZXJub21tZW4gd2VyZGVuLiIsamE6IuS7iuOBr+OBmeOBueOBpuOCkuaXheeoi+OBq+i/veWKoOOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyngOq4iOydgCDrqqjrkZAg7J287KCV7JeQIOuEo+yngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSB0b3VzIGxlcyBham91dGVyIGF1IHZveWFnZSBwb3VyIGzigJlpbnN0YW50LiIsZXM6Ik5vIHNlIHB1ZGllcm9uIGHDsWFkaXIgdG9kb3MgYWwgdmlhamUgYWhvcmEgbWlzbW8uIn0sIkNvdWxkIG5vdCBzZW5kIHRoYXQgdG8gdGhlIGNoYXQuIjp7ZGU6IkRhcyBrb25udGUgbmljaHQgYW4gZGVuIENoYXQgZ2VzZW5kZXQgd2VyZGVuLiIsamE6IuODgeODo+ODg+ODiOOBq+mAgeS/oeOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuyxhO2MheycvOuhnCDrs7TrgrTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZOKAmWVudm95ZXIgY2VsYSBkYW5zIGxhIGNvbnZlcnNhdGlvbi4iLGVzOiJObyBzZSBwdWRvIGVudmlhciBhbCBjaGF0LiJ9LCJQbGVhc2Ugc2hvdyBteSB0cmlwIGFnYWluLiI6e2RlOiJCaXR0ZSB6ZWlnZW4gU2llIG1laW5lIFJlaXNlIGVybmV1dCBhbi4iLGphOiLml4XnqIvjgpLjgoLjgYbkuIDluqbooajnpLrjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiLsoJwg7Jes7ZaJIOydvOygleydhCDri6Tsi5wg67O07JesIOyjvOyEuOyalC4iLGZyOiJNZXJjaSBkZSByw6lhZmZpY2hlciBtb24gdm95YWdlLiIsZXM6IlBvciBmYXZvciwgdnVlbHZlIGEgbW9zdHJhciBtaSB2aWFqZS4ifSwiQ291bGQgbm90IHNpZ24gb3V0LiI6e2RlOiJBYm1lbGR1bmcgZmVobGdlc2NobGFnZW4uIixqYToi44Ot44Kw44Ki44Km44OI44Gn44GN44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi66Gc6re47JWE7JuD7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJEw6ljb25uZXhpb24gaW1wb3NzaWJsZS4iLGVzOiJObyBzZSBwdWRvIGNlcnJhciBzZXNpw7NuLiJ9LCJmdWxsIG5hbWUiOntkZToiTmFtZSIsamE6Iuawj+WQjSIsa286IuydtOumhCIsZnI6Im5vbSBjb21wbGV0Iixlczoibm9tYnJlIGNvbXBsZXRvIn0sIlJlcXVpcmVkOiB0aGUgZ3Vlc3QncyBmdWxsIG5hbWUsIGFzIG9uIHRoZWlyIElELiI6e2RlOiJQZmxpY2h0ZmVsZDogZGVyIHZvbGxzdMOkbmRpZ2UgTmFtZSBkZXMgR2FzdGVzIHdpZSBpbSBBdXN3ZWlzLiIsamE6IuW/hemgiO+8mui6q+WIhuiovOaYjuabuOOBqOWQjOOBmOWuv+aziuiAheOBruawj+WQjeOAgiIsa286Iu2VhOyImDog7Iug67aE7Kad6rO8IOqwmeydgCDtiKzsiJnqsJ0g7J2066aELiIsZnI6Ik9ibGlnYXRvaXJlIDogbGUgbm9tIGNvbXBsZXQgZHUgY2xpZW50LCBjb21tZSBzdXIgc2EgcGnDqGNlIGTigJlpZGVudGl0w6kuIixlczoiT2JsaWdhdG9yaW86IGVsIG5vbWJyZSBjb21wbGV0byBkZWwgaHXDqXNwZWQsIGNvbW8gZW4gc3UgZG9jdW1lbnRvIGRlIGlkZW50aWRhZC4ifSxlbWFpbDp2UywiVGhhdCBlbWFpbCBoYXMgbm8g4oCcQOKAnSBpbiBpdCDigJQgdGhlIGNvbmZpcm1hdGlvbiBuZWVkcyBhbiBhZGRyZXNzIGl0IGNhbiByZWFjaC4iOntkZToiRGllc2UgRS1NYWlsIGVudGjDpGx0IGtlaW4g4oCeQOKAnCDigJQgZsO8ciBkaWUgQmVzdMOkdGlndW5nIGJyYXVjaHQgZXMgZWluZSBlcnJlaWNoYmFyZSBBZHJlc3NlLiIsamE6IuODoeODvOODq+OCouODieODrOOCueOBq+OAjEDjgI3jgYzjgYLjgorjgb7jgZvjgpPjgILnorroqo3jg6Hjg7zjg6vjgYzlsYrjgY/jgqLjg4njg6zjgrnjgpLlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiLsnbTrqZTsnbzsl5Ag4oCYQOKAmeqwgCDsl4bsirXri4jri6QuIO2ZleyduCDrqZTsnbzsnYQg67Cb7J2EIOyImCDsnojripQg7KO87IaM66W8IOyeheugpe2VmOyEuOyalC4iLGZyOiJDZXQgZS1tYWlsIG5lIGNvbnRpZW50IHBhcyBkZSDCqyBAIMK7IOKAlCBsYSBjb25maXJtYXRpb24gYSBiZXNvaW4gZOKAmXVuZSBhZHJlc3NlIGpvaWduYWJsZS4iLGVzOiJFc2UgY29ycmVvIG5vIHRpZW5lIMKrQMK7OiBsYSBjb25maXJtYWNpw7NuIG5lY2VzaXRhIHVuYSBkaXJlY2Npw7NuIGEgbGEgcXVlIHB1ZWRhIGxsZWdhci4ifSwiUmVxdWlyZWQ6IHlvdXIgZW1haWwuIFdpdGggaXQgYW5kIHRoZSBjb25maXJtYXRpb24gY29kZSwgeW91IGNhbiBmaW5kIHRoaXMgYm9va2luZyBhZ2FpbiBmcm9tIGFueSBjaGF0LiI6e2RlOiJQZmxpY2h0ZmVsZDogSWhyZSBFLU1haWwuIE1pdCBpaHIgdW5kIGRlbSBCZXN0w6R0aWd1bmdzY29kZSBmaW5kZW4gU2llIGRpZXNlIEJ1Y2h1bmcgaW4gamVkZW0gQ2hhdCB3aWVkZXIuIixqYToi5b+F6aCI77ya44Oh44O844Or44Ki44OJ44Os44K544CC56K66KqN55Wq5Y+344Go5ZCI44KP44Gb44Gm44CB44Gp44Gu44OB44Oj44OD44OI44GL44KJ44Gn44KC44GT44Gu5LqI57SE44KS5o6i44Gb44G+44GZ44CCIixrbzoi7ZWE7IiYOiDsnbTrqZTsnbwuIOydtOuplOydvOqzvCDtmZXsnbgg67KI7Zi466GcIOyWtOuWpCDssYTtjIXsl5DshJzrk6Ag7J20IOyYiOyVveydhCDri6Tsi5wg7LC+7J2EIOyImCDsnojsirXri4jri6QuIixmcjoiT2JsaWdhdG9pcmUgOiB2b3RyZSBlLW1haWwuIEF2ZWMgbHVpIGV0IGxlIGNvZGUgZGUgY29uZmlybWF0aW9uLCB2b3VzIHJldHJvdXZlcmV6IGNldHRlIHLDqXNlcnZhdGlvbiBkZXB1aXMgbuKAmWltcG9ydGUgcXVlbGxlIGNvbnZlcnNhdGlvbi4iLGVzOiJPYmxpZ2F0b3Jpbzogc3UgY29ycmVvIGVsZWN0csOzbmljby4gQ29uIMOpbCB5IGVsIGPDs2RpZ28gZGUgY29uZmlybWFjacOzbiBwdWVkZSB2b2x2ZXIgYSBlbmNvbnRyYXIgZXN0YSByZXNlcnZhIGRlc2RlIGN1YWxxdWllciBjaGF0LiJ9LHBob25lOmtTLCJSZXF1aXJlZDogYSBwaG9uZSBudW1iZXIsIHNvIHRoZSBob3RlbCBjYW4gcmVhY2ggeW91LiI6e2RlOiJQZmxpY2h0ZmVsZDogZWluZSBUZWxlZm9ubnVtbWVyLCBkYW1pdCBkYXMgSG90ZWwgU2llIGVycmVpY2hlbiBrYW5uLiIsamE6IuW/hemgiO+8muODm+ODhuODq+OBi+OCiemAo+e1oeOBp+OBjeOCi+mbu+ipseeVquWPt+OAgiIsa286Iu2VhOyImDog7Zi47YWU7J20IOyXsOudve2VoCDsiJgg7J6I64qUIOyghO2ZlOuyiO2YuC4iLGZyOiJPYmxpZ2F0b2lyZSA6IHVuIG51bcOpcm8gZGUgdMOpbMOpcGhvbmUsIHBvdXIgcXVlIGzigJlow7R0ZWwgcHVpc3NlIHZvdXMgam9pbmRyZS4iLGVzOiJPYmxpZ2F0b3JpbzogdW4gbsO6bWVybyBkZSB0ZWzDqWZvbm8gcGFyYSBxdWUgZWwgaG90ZWwgcHVlZGEgY29udGFjdGFybGUuIn0sIkNvdWxkIG5vdCBhc2sgZm9yIHRob3NlIHJvb21zLiI6e2RlOiJEaWVzZSBaaW1tZXIga29ubnRlbiBuaWNodCBhbmdlZnJhZ3Qgd2VyZGVuLiIsamE6IuOBk+OBruWuouWupOOCkuS6iOe0hOS+nemgvOOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuydtCDqsJ3si6TsnYQg7JqU7LKt7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGRlIGRlbWFuZGVyIGNlcyBjaGFtYnJlcy4iLGVzOiJObyBzZSBwdWRpZXJvbiBzb2xpY2l0YXIgZXNhcyBoYWJpdGFjaW9uZXMuIn0sIkNvdWxkIG5vdCBvcGVuIHRoZSBwYXltZW50IHBhZ2UuIjp7ZGU6IkRpZSBaYWhsdW5nc3NlaXRlIGtvbm50ZSBuaWNodCBnZcO2ZmZuZXQgd2VyZGVuLiIsamE6IuaUr+aJleOBhOODmuODvOOCuOOCkumWi+OBkeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286IuqysOygnCDtjpjsnbTsp4Drpbwg7Je07KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJJbXBvc3NpYmxlIGTigJlvdXZyaXIgbGEgcGFnZSBkZSBwYWllbWVudC4iLGVzOiJObyBzZSBwdWRvIGFicmlyIGxhIHDDoWdpbmEgZGUgcGFnby4ifSwiQ291bGQgbm90IGxvYWQgeW91ciBib29raW5ncy4iOntkZToiSWhyZSBCdWNodW5nZW4ga29ubnRlbiBuaWNodCBnZWxhZGVuIHdlcmRlbi4iLGphOiLkuojntITkuIDopqfjgpLoqq3jgb/ovrzjgoHjgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLrgrQg7JiI7JW97J2EIOu2iOufrOyYpOyngCDrqrvtlojsirXri4jri6QuIixmcjoiSW1wb3NzaWJsZSBkZSBjaGFyZ2VyIHZvcyByw6lzZXJ2YXRpb25zLiIsZXM6Ik5vIHNlIHB1ZGllcm9uIGNhcmdhciBzdXMgcmVzZXJ2YXMuIn0sIkNvdWxkIG5vdCBsb2FkIHRoYXQgaG90ZWwuIjp7ZGU6IkRpZXNlcyBIb3RlbCBrb25udGUgbmljaHQgZ2VsYWRlbiB3ZXJkZW4uIixqYToi44GT44Gu44Ob44OG44Or44KS6Kqt44G/6L6844KB44G+44Gb44KT44Gn44GX44Gf44CCIixrbzoi7J20IO2YuO2FlOydhCDrtojrn6zsmKTsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hhcmdlciBjZXQgaMO0dGVsLiIsZXM6Ik5vIHNlIHB1ZG8gY2FyZ2FyIGVzZSBob3RlbC4ifSwiV2hlcmUgdG8/IEEgY2l0eSwgYSBjb3VudHJ5IG9yIGEgaG90ZWwuIjp7ZGU6IldvaGluPyBFaW5lIFN0YWR0LCBlaW4gTGFuZCBvZGVyIGVpbiBIb3RlbC4iLGphOiLjganjgZPjgbjvvJ/pg73luILjg7vlm73jg7vjg5vjg4bjg6vlkI3jgpLlhaXlipvjgZfjgabjgY/jgaDjgZXjgYTjgIIiLGtvOiLslrTrlJTroZwg6rCA7Iuc64KY7JqUPyDrj4Tsi5wsIOq1reqwgCDrmJDripQg7Zi47YWU7J2EIOyeheugpe2VmOyEuOyalC4iLGZyOiJPw7kgPyBVbmUgdmlsbGUsIHVuIHBheXMgb3UgdW4gaMO0dGVsLiIsZXM6IsK/QSBkw7NuZGU/IFVuYSBjaXVkYWQsIHVuIHBhw61zIG8gdW4gaG90ZWwuIn0sIkNvdWxkIG5vdCBzZWFyY2gganVzdCBub3cuIjp7ZGU6IkRpZSBTdWNoZSBnaW5nIGdlcmFkZSBuaWNodC4iLGphOiLku4rjga/mpJzntKLjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsp4DquIjsnYAg6rKA7IOJ7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4iLGZyOiJSZWNoZXJjaGUgaW1wb3NzaWJsZSBwb3VyIGzigJlpbnN0YW50LiIsZXM6Ik5vIHNlIHB1ZG8gYnVzY2FyIGFob3JhIG1pc21vLiJ9LCJDb3VsZCBub3QgcHJpY2UgdGhvc2UgbmlnaHRzLiI6e2RlOiJGw7xyIGRpZXNlIE7DpGNodGUga29ubnRlIGtlaW4gUHJlaXMgZXJtaXR0ZWx0IHdlcmRlbi4iLGphOiLjgZPjga7ml6XnqIvjga7mlpnph5HjgpLlj5blvpfjgafjgY3jgb7jgZvjgpPjgafjgZfjgZ/jgIIiLGtvOiLsnbQg64Kg7Kec7J2YIOyalOq4iOydhCDsobDtmoztlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkltcG9zc2libGUgZGUgY2hpZmZyZXIgY2VzIG51aXRzLiIsZXM6Ik5vIHNlIHB1ZG8gY290aXphciBlc2FzIG5vY2hlcy4ifSwiVGhpcyBjYXJkIGNvdWxkIG5vdCBiZSBkcmF3bi4gQXNrIGFnYWluIGluIHRoZSBjaGF0LiI6e2RlOiJEaWVzZSBLYXJ0ZSBrb25udGUgbmljaHQgYW5nZXplaWd0IHdlcmRlbi4gRnJhZ2VuIFNpZSBpbSBDaGF0IG5vY2ggZWlubWFsLiIsamE6IuOBk+OBruOCq+ODvOODieOCkuihqOekuuOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAguODgeODo+ODg+ODiOOBp+OCguOBhuS4gOW6puOBiuWwi+OBreOBj+OBoOOBleOBhOOAgiIsa286IuydtCDsubTrk5zrpbwg7ZGc7Iuc7ZWY7KeAIOuqu+2WiOyKteuLiOuLpC4g7LGE7YyF7JeQ7IScIOuLpOyLnCDsmpTssq3tlZjshLjsmpQuIixmcjoiQ2V0dGUgY2FydGUgbuKAmWEgcGFzIHB1IHPigJlhZmZpY2hlci4gUmVkZW1hbmRleiBkYW5zIGxhIGNvbnZlcnNhdGlvbi4iLGVzOiJObyBzZSBwdWRvIG1vc3RyYXIgZXN0YSB0YXJqZXRhLiBWdWVsdmEgYSBwcmVndW50YXIgZW4gZWwgY2hhdC4ifSwiQ291bGQgbm90IGNvbm5lY3QgdG8gdGhlIGhvc3QuIjp7ZGU6IktlaW5lIFZlcmJpbmR1bmcgenVyIEhvc3QtQXBwLiIsamE6IuODm+OCueODiOOBq+aOpee2muOBp+OBjeOBvuOBm+OCk+OBp+OBl+OBn+OAgiIsa286Iu2YuOyKpO2KuOyXkCDsl7DqsrDtlZjsp4Ag66q77ZaI7Iq164uI64ukLiIsZnI6IkNvbm5leGlvbiDDoCBs4oCZYXBwbGljYXRpb24gaMO0dGUgaW1wb3NzaWJsZS4iLGVzOiJObyBzZSBwdWRvIGNvbmVjdGFyIGNvbiBsYSBhcGxpY2FjacOzbiBhbmZpdHJpb25hLiJ9LCJQYXJ0aWFsIHdpbmRvdyI6e2RlOiJUZWlsd2Vpc2UgbWl0IEZlbnN0ZXIiLGphOiLkuIDpg6jnqpPjgYLjgooiLGtvOiLsnbzrtoAg7LC966y4IixmcjoiRmVuw6p0cmUgcGFydGllbGxlIixlczoiVmVudGFuYSBwYXJjaWFsIn0sIklubmVyIHdpbmRvdywgb250byBhIGNvdXJ0eWFyZCI6e2RlOiJJbm5lbmZlbnN0ZXIgenVtIExpY2h0aG9mIixqYToi5YaF56qT77yI5ZC544GN5oqc44GR5YG077yJIixrbzoi64K067aAIOywvSAo7KSR7KCVIOuwqe2WpSkiLGZyOiJGZW7DqnRyZSBpbnTDqXJpZXVyZSwgc3VyIGNvdXIiLGVzOiJWZW50YW5hIGludGVyaW9yLCBhIHVuIHBhdGlvIn0sIkJyZWFrZmFzdCBmb3IgezB9Ijp7ZGU6IkZyw7xoc3TDvGNrIGbDvHIgezB9IixqYToi5pyd6aOfezB95ZCN5YiGIixrbzoi7KGw7IudIHswfeyduCIsZnI6IlBldGl0LWTDqWpldW5lciBwb3VyIHswfSIsZXM6IkRlc2F5dW5vIHBhcmEgezB9In0sIkJ1ZmZldCBicmVha2Zhc3QgZm9yIHswfSI6e2RlOiJGcsO8aHN0w7xja3NidWZmZXQgZsO8ciB7MH0iLGphOiLmnJ3po5/jg5Pjg6Xjg4Pjg5Xjgqd7MH3lkI3liIYiLGtvOiLsobDsi50g67eU7Y6YIHswfeyduCIsZnI6IlBldGl0LWTDqWpldW5lciBidWZmZXQgcG91ciB7MH0iLGVzOiJEZXNheXVubyBidWbDqSBwYXJhIHswfSJ9LCJCdWZmZXQgYnJlYWtmYXN0Ijp7ZGU6IkZyw7xoc3TDvGNrc2J1ZmZldCIsamE6Iuacnemjn+ODk+ODpeODg+ODleOCp+S7mOOBjSIsa286IuyhsOyLnSDrt5Ttjpgg7Y+s7ZWoIixmcjoiUGV0aXQtZMOpamV1bmVyIGJ1ZmZldCIsZXM6IkRlc2F5dW5vIGJ1ZsOpIn0sIkhhbGYgYm9hcmQgZm9yIHswfSI6e2RlOiJIYWxicGVuc2lvbiBmw7xyIHswfSIsamE6IjLpo5/ku5jjgY3vvIh7MH3lkI3liIbvvIkiLGtvOiLtlZjtlIQg67O065OcIHswfeyduCIsZnI6IkRlbWktcGVuc2lvbiBwb3VyIHswfSIsZXM6Ik1lZGlhIHBlbnNpw7NuIHBhcmEgezB9In0sIkhhbGYgYm9hcmQiOntkZToiSGFsYnBlbnNpb24iLGphOiIy6aOf5LuY44GNIixrbzoi7ZWY7ZSEIOuztOuTnCIsZnI6IkRlbWktcGVuc2lvbiIsZXM6Ik1lZGlhIHBlbnNpw7NuIn0sIkZ1bGwgYm9hcmQgZm9yIHswfSI6e2RlOiJWb2xscGVuc2lvbiBmw7xyIHswfSIsamE6IjPpo5/ku5jjgY3vvIh7MH3lkI3liIbvvIkiLGtvOiLtkoAg67O065OcIHswfeyduCIsZnI6IlBlbnNpb24gY29tcGzDqHRlIHBvdXIgezB9IixlczoiUGVuc2nDs24gY29tcGxldGEgcGFyYSB7MH0ifSwiRnVsbCBib2FyZCI6e2RlOiJWb2xscGVuc2lvbiIsamE6IjPpo5/ku5jjgY0iLGtvOiLtkoAg67O065OcIixmcjoiUGVuc2lvbiBjb21wbMOodGUiLGVzOiJQZW5zacOzbiBjb21wbGV0YSJ9LCJBbGwgaW5jbHVzaXZlIGZvciB7MH0iOntkZToiQWxsLWluY2x1c2l2ZSBmw7xyIHswfSIsamE6IuOCquODvOODq+OCpOODs+OCr+ODq+ODvOOCt+ODlu+8iHswfeWQjeWIhu+8iSIsa286IuyYrOyduO2BtOujqOyLnOu4jCB7MH3snbgiLGZyOiJUb3V0IGNvbXByaXMgcG91ciB7MH0iLGVzOiJUb2RvIGluY2x1aWRvIHBhcmEgezB9In0sIkFsbCBpbmNsdXNpdmUiOntkZToiQWxsLWluY2x1c2l2ZSIsamE6IuOCquODvOODq+OCpOODs+OCr+ODq+ODvOOCt+ODliIsa286IuyYrOyduO2BtOujqOyLnOu4jCIsZnI6IlRvdXQgY29tcHJpcyIsZXM6IlRvZG8gaW5jbHVpZG8ifSwiU2luZ2xlIGJlZCI6e2RlOiJFaW56ZWxiZXR0IixqYToi44K344Oz44Kw44Or44OZ44OD44OJIixrbzoi7Iux6riAIOuyoOuTnCIsZnI6IkxpdCBzaW1wbGUiLGVzOiJDYW1hIGluZGl2aWR1YWwifSxTaW11bGF0ZWQ6eVMsQXNpYTokUywiTWlkZGxlIEVhc3QiOntkZToiTmFoZXIgT3N0ZW4iLGphOiLkuK3mnbEiLGtvOiLspJHrj5kiLGZyOiJNb3llbi1PcmllbnQiLGVzOiJPcmllbnRlIE1lZGlvIn0sRXVyb3BlOndTLCJOb3J0aCBBbWVyaWNhIjp7ZGU6Ik5vcmRhbWVyaWthIixqYToi5YyX57GzIixrbzoi67aB66+4IixmcjoiQW3DqXJpcXVlIGR1IE5vcmQiLGVzOiJOb3J0ZWFtw6lyaWNhIn0sT2NlYW5pYTpTUyxBZnJpY2E6X1MsRWxzZXdoZXJlOmpTLCIrezB9IG1vcmUiOntkZToiK3swfSB3ZWl0ZXJlIixqYToi5LuWezB95Lu2IixrbzoiezB96rCcIOuNlCIsZnI6Iit7MH0gYXV0cmVzIixlczoiK3swfSBtw6FzIn0sInswfSBob3RlbHMgaW4gezF9IGNpdGllcyI6e2RlOiJ7MH0gSG90ZWxzIGluIHsxfSBTdMOkZHRlbiIsamE6InsxfemDveW4guOBq3swfei7kuOBruODm+ODhuODqyIsa286InsxfeqwnCDrj4Tsi5zsl5Ag7Zi47YWUIHswfeqzsyIsZnI6InswfSBow7R0ZWxzIGRhbnMgezF9IHZpbGxlcyIsZXM6InswfSBob3RlbGVzIGVuIHsxfSBjaXVkYWRlcyJ9LCIrezB9IG1vcmUgY291bnRyaWVzIjp7ZGU6Iit7MH0gd2VpdGVyZSBMw6RuZGVyIixqYToi5LuWezB944GL5Zu9IixrbzoiezB96rCc6rWtIOuNlCIsZnI6Iit7MH0gYXV0cmVzIHBheXMiLGVzOiIrezB9IHBhw61zZXMgbcOhcyJ9LCLCtyBpbiB0aGUgY2hhdCI6e2RlOiLCtyBpbSBDaGF0IixqYToiwrcg44OB44Oj44OD44OI44GnIixrbzoiwrcg7LGE7YyF7JeQ7IScIixmcjoiwrcgZGFucyBsYSBjb252ZXJzYXRpb24iLGVzOiLCtyBlbiBlbCBjaGF0In0sUG9vbDpUUyxTcGE6QVMsQmVhY2hmcm9udDp6UywiRml0bmVzcyBjZW50cmUiOntkZToiRml0bmVzc2NlbnRlciIsamE6IuODleOCo+ODg+ODiOODjeOCueOCu+ODs+OCv+ODvCIsa286Iu2UvO2KuOuLiOyKpCDshLzthLAiLGZyOiJTYWxsZSBkZSBzcG9ydCIsZXM6IkdpbW5hc2lvIn0sIktpZHMgY2x1YiI6e2RlOiJLaW5kZXJjbHViIixqYToi44Kt44OD44K644Kv44Op44OWIixrbzoi7YKk7KaIIO2BtOufvSIsZnI6IkNsdWIgZW5mYW50cyIsZXM6IkNsdWIgaW5mYW50aWwifX0sTlM9eyIgwrcgezB95ZCr56iO5oC75Lu3IjoiIMK3IHswfeWQq+eohee4veWDuSIsIiDCtyDlj6/luKYgezB9IOWQjeWEv+erpSI6IiDCtyDlj6/luLYgezB9IOWQjeWFkuerpSIsIiDCtyDlj6/luKYgMSDlkI3lhL/nq6UiOiIgwrcg5Y+v5bi2IDEg5ZCN5YWS56ulIiwiIOi1ty/mmZoiOiIg6LW3L+aZmiIsIu+8jHswfSDliY0iOiLvvIx7MH0g5YmNIiwi77yMezB9IOauteehruiupOS4rSI6Iu+8jHswfSDmrrXnorroqo3kuK0iLCLvvIx7MH3otbciOiLvvIx7MH3otbciLCLvvIzkuIvkuIDmraXku5jmrL4iOiLvvIzkuIvkuIDmraXku5jmrL4iLCLvvIzlhaXkvY8iOiLvvIzlhaXkvY8iLCLvvIzmnIDkvY7ku7ciOiLvvIzmnIDkvY7lg7kiLCLvvIzlt7Lmu6EiOiLvvIzlt7Lmu78iLCLvvIzmraTku7fmoLzorqLlkI7kuI3og73pgIDmlLkiOiLvvIzmraTlg7nmoLzoqILlvozkuI3og73pgIDmlLkiLCLvvIznprvlupciOiLvvIzpm6LlupciLCLjgIEiOiLjgIEiLCLjgIF7MH0g56eN5Lu35qC8Ijoi44CBezB9IOeoruWDueagvCIsIu+8m+WPpuaciSB7MH0g5q615rKh6K6i5oiQ77yM6KeB5LiL5pa5Ijoi77yb5Y+m5pyJIHswfSDmrrXmspLoqILmiJDvvIzopovkuIvmlrkiLCLvvJvlj6bmnIkgMSDmrrXmsqHorqLmiJDvvIzop4HkuIvmlrkiOiLvvJvlj6bmnIkgMSDmrrXmspLoqILmiJDvvIzopovkuIvmlrkiLCLvvJoiOiLvvJoiLCLjgIIiOiLjgIIiLCLCtyDlnKjlr7nor53ph4wiOiLCtyDlnKjlsI3oqbHoo6EiLCLigJx7MH3igJ3lr7nlupTkuI3mraLkuIDlrrbphZLlupfvvJoiOiLigJx7MH3igJ3lsI3mh4nkuI3mraLkuIDlrrbphZLlupfvvJoiLCLigJx7MH3igJ3msqHmnInnu5PmnpwiOiLigJx7MH3igJ3mspLmnInntZDmnpwiLCJ7MH0gwrcg5LyY5oOgIHsxfSUiOiJ7MH0gwrcg5YSq5oOgIHsxfSUiLCJ7MH0gwrcg6YCJ5aW95Yiw5bqX5pe26Ze0IMK3IOWQq+eojui0uSI6InswfSDCtyDpgbjlpb3liLDlupfmmYLplpMgwrcg5ZCr56iF6LK7IiwiezB9IOS4jeiDveS9nOS4uuWIsOW6l+aXtumXtOOAgiI6InswfSDkuI3og73kvZzngrrliLDlupfmmYLplpPjgIIiLCJ7MH0g5Lq6IMK3IDEg6Ze0IjoiezB9IOS6uiDCtyAxIOmWkyIsInswfSDlkKvnqI4iOiJ7MH0g5ZCr56iFIiwiezB9IOWutiI6InswfSDlrrYiLCJ7MH0g5a625a+55q+UIjoiezB9IOWutuWwjeavlCIsInswfSDlrrbphZLlupciOiJ7MH0g5a626YWS5bqXIiwiezB9IOWutumFkuW6l++8jOWIhuW4g+WcqCB7MX0g5Liq5Z+O5biCIjoiezB9IOWutumFkuW6l++8jOWIhuS9iOWcqCB7MX0g5YCL5Z+O5biCIiwiezB9IOWutumFkuW6l++8jOaMieS9oOmAieeahOaXpeacn+aKpeS7t+OAgiI6InswfSDlrrbphZLlupfvvIzmjInkvaDpgbjnmoTml6XmnJ/loLHlg7njgIIiLCJ7MH0g5a626YWS5bqX77yM5p2l6IeqIHsxfSDkuKrpm4blm6LvvIzmjInkvaDpgInnmoTml6XmnJ/miqXku7fjgIIiOiJ7MH0g5a626YWS5bqX77yM5L6G6IeqIHsxfSDlgIvpm4blnJjvvIzmjInkvaDpgbjnmoTml6XmnJ/loLHlg7njgIIiLCJ7MH0g5oC75Lu3IjoiezB9IOe4veWDuSIsInswfSDmrrXpg73msqHog73pooTorqLvvIzmsqHmnInmiaPmrL7jgIIiOiJ7MH0g5q616YO95rKS6IO96aCQ6KiC77yM5rKS5pyJ5omj5qy+44CCIiwiezB9IOautemHjOiuouaIkCB7MX0g5q6177yM5q+P5q615LiA5Liq56Gu6K6k56CBIjoiezB9IOauteijoeioguaIkCB7MX0g5q6177yM5q+P5q615LiA5YCL56K66KqN56K8IiwiezB9IOavj+aZmiI6InswfSDmr4/mmZoiLCJ7MH0g55qE6ZmE5Yqg5pyN5YqhIjoiezB9IOeahOmZhOWKoOacjeWLmSIsInswfSDnp43ku7fmoLwiOiJ7MH0g56iu5YO55qC8IiwiezB9IOenjeWPr+S9jyB7MX0g5Lq655qE5oi/5Z6LIjoiezB9IOeoruWPr+S9jyB7MX0g5Lq655qE5oi/5Z6LIiwiezB9IOenjeaIv+WeiyI6InswfSDnqK7miL/lnosiLCJ7MH0g56ev5YiGIjoiezB9IOepjeWIhiIsInswfSDnrJTpooTorqIiOiJ7MH0g562G6aCQ6KiCIiwiezB9IOmhuSI6InswfSDpoIUiLCJ7MH3igJN7MX0gwrcgezJ9IOWJjeemu+W6lyI6InswfeKAk3sxfSDCtyB7Mn0g5YmN6Zui5bqXIiwiezB977yM5ZCr56iO6LS5IjoiezB977yM5ZCr56iF6LK7IiwiezB977yM6ZqP5L2P5a6/5LiA6LW36K6i77yM5LiN6K6h5YWl5oC75Lu3IjoiezB977yM6Zqo5L2P5a6/5LiA6LW36KiC77yM5LiN6KiI5YWl57i95YO5IiwiezB977yM6aKE6K6i5pe25Lya6Ieq5Yqo5Yu+6YCJ77yM5Y+q5Zyo5L2g55So5a6D5Lus6aKE6K6i5pe25omN5o+Q5Ye644CCIjoiezB977yM6aCQ6KiC5pmC5pyD6Ieq5YuV5Yu+6YG477yM5Y+q5Zyo5L2g55So5a6D5YCR6aCQ6KiC5pmC5omN5o+Q5Ye644CCIiwiezB944CBezF96Ze077yM5ZCr56iO6LS5IjoiezB944CBezF96ZaT77yM5ZCr56iF6LK7IiwiezB944CBezF96Ze05oC75Lu377yM5ZCr56iO6LS5IjoiezB944CBezF96ZaT57i95YO577yM5ZCr56iF6LK7IiwiezB944CBezF96Ze055qE5ZCr56iO5oC75Lu3IjoiezB944CBezF96ZaT55qE5ZCr56iF57i95YO5IiwiezB977yI6YWS5bqX5b2T5Zyw5pe26Ze077yJIjoiezB977yI6YWS5bqX55W25Zyw5pmC6ZaT77yJIiwiezB95LiN6IO95YWl5L2P44CCIjoiezB95LiN6IO95YWl5L2P44CCIiwiezB95LiN6IO96YCA5oi/44CCIjoiezB95LiN6IO96YCA5oi/44CCIiwiezB95Lu3IjoiezB95YO5IiwiezB95Lya5ZGY77yfIjoiezB95pyD5ZOh77yfIiwiezB95Lya5ZGY5Lu3IjoiezB95pyD5ZOh5YO5IiwiezB95L2NIjoiezB95L2NIiwiezB95YWl5L2PIjoiezB95YWl5L2PIiwiezB95YWo6YOoIHsxfSDlrrYiOiJ7MH3lhajpg6ggezF9IOWutiIsInswfeWcqOi/meS6m+aXpeacn+ayoeaciei/meS4quaIv+Wei++8jOWPr+iuoueahOacie+8mnsxfeOAgiI6InswfeWcqOmAmeS6m+aXpeacn+aykuaciemAmeWAi+aIv+Wei++8jOWPr+iogueahOacie+8mnsxfeOAgiIsInswfeWcqOi/meS6m+aXpeacn+ayoeaciei/meS4quaIv+Wei+OAguS4i+mdoui/meS6m+WPr+S7peiuou+8jOeCueS4gOS4i+WNs+WPr+mihOiuou+8miI6InswfeWcqOmAmeS6m+aXpeacn+aykuaciemAmeWAi+aIv+Wei+OAguS4i+mdoumAmeS6m+WPr+S7peiogu+8jOm7nuS4gOS4i+WNs+WPr+mgkOiogu+8miIsInswfeWwj+aXtiI6InswfeWwj+aZgiIsInswfeaAu+S7t++8jOWQq+eojui0uSI6Inswfee4veWDue+8jOWQq+eoheiyuyIsInswfeaXqSI6InswfeaXqSIsInswfeaYr3sxfeS4uuS9j+WuouaPkOS+m+eahOacjeWKoe+8jOimgeWSjOmCo+mHjOeahOaIv+mXtOS4gOi1t+iuou+8jOaIluWKoOWIsOS9oOW3suacieeahOmihOiuouS4iuOAgiI6InswfeaYr3sxfeeCuuS9j+WuouaPkOS+m+eahOacjeWLme+8jOimgeWSjOmCo+ijoeeahOaIv+mWk+S4gOi1t+iogu+8jOaIluWKoOWIsOS9oOW3suacieeahOmgkOioguS4iuOAgiIsInswfeaZmiI6InswfeaZmiIsInswfeayoeacieWFrOW4g+i/meaWuemdoueahOaUv+etluOAgiI6InswfeaykuacieWFrOS9iOmAmeaWuemdoueahOaUv+etluOAgiIsInswfeeahOWQq+eojuaAu+S7tyI6InswfeeahOWQq+eohee4veWDuSIsInswfeeahOaIv+mXtCI6InswfeeahOaIv+mWkyIsInswfemXtCI6InswfemWkyIsInswfemXtCDDlyI6InswfemWkyDDlyIsInswfemZhOWKoOacjeWKoSI6InswfemZhOWKoOacjeWLmSIsIjxiPuWQq+aXqemkkDwvYj4iOiI8Yj7lkKvml6nppJA8L2I+IiwnPHNwYW4gY2xhc3M9InQtcHJlIj4g6LW3PC9zcGFuPic6JzxzcGFuIGNsYXNzPSJ0LXByZSI+IOi1tzwvc3Bhbj4nLCIxIOS6uiDCtyAxIOmXtCI6IjEg5Lq6IMK3IDEg6ZaTIiwiMSDlrrYiOiIxIOWutiIsIjEg56eN5Lu35qC8IjoiMSDnqK7lg7nmoLwiLCIxIOenjeWPr+S9jyB7MH0g5Lq655qE5oi/5Z6LIjoiMSDnqK7lj6/kvY8gezB9IOS6uueahOaIv+WeiyIsIjEg56eN5oi/5Z6LIjoiMSDnqK7miL/lnosiLCIxIOeslOmihOiuoiI6IjEg562G6aCQ6KiCIiwiMSDpobkiOiIxIOmghSIsIjHkvY0iOiIx5L2NIiwiMeWwj+aXtiI6IjHlsI/mmYIiLCIx5pmaIjoiMeaZmiIsIjHpl7QiOiIx6ZaTIiwiMjI6MDAg5Lul5ZCOIjoiMjI6MDAg5Lul5b6MIiwi5LiA5qyh5pyA5aSa6K6iIHswfSDmmZrjgIIiOiLkuIDmrKHmnIDlpJroqIIgezB9IOaZmuOAgiIsIuS4gOasoeiuouS4jeS6hui/meS5iOWkmuaZmuOAgiI6IuS4gOasoeioguS4jeS6humAmem6vOWkmuaZmuOAgiIsIuS4gOasoeiuouS4jeS6hui/meS5iOWkmumXtO+8jOivt+WwkeiuouWHoOmXtOOAgiI6IuS4gOasoeioguS4jeS6humAmem6vOWkmumWk++8jOiri+WwkeioguW5vumWk+OAgiIsIuS4gOmXtOacgOWkmuS9jyB7MH0g5Lq677yM5Lq65pu05aSa6K+355u05o6l6IGU57O76YWS5bqX44CCIjoi5LiA6ZaT5pyA5aSa5L2PIHswfSDkurrvvIzkurrmm7TlpJroq4vnm7TmjqXoga/ntaHphZLlupfjgIIiLOS4ieaXqToi5LiJ5pepIizkuIrkuIDpobU6IuS4iuS4gOmggSIs5LiK5Liq5pyIOiLkuIrlgIvmnIgiLCLkuIvkuIDmraXmmK/lronlhajku5jmrL7pobXvvIzljaHlj7flj6rlnKjpgqPph4zloavlhpnjgILku5jmrL7miJDlip/liY3kuI3kvJrlnKh7MH3pooTorqLvvJvorqLkuI3miJDkvJrlhajpop3pgIDlm57jgIIiOiLkuIvkuIDmraXmmK/lronlhajku5jmrL7poIHvvIzljaHomZ/lj6rlnKjpgqPoo6Hloavlr6vjgILku5jmrL7miJDlip/liY3kuI3mnIPlnKh7MH3poJDoqILvvJvoqILkuI3miJDmnIPlhajpoY3pgIDlm57jgIIiLCLkuIvkuIDmraXmmK/mtYvor5XmqKHlvI/nmoTku5jmrL7pobXvvIzkuI3kvJrnnJ/lrp7miaPmrL7jgILljaHlj7flj6rlnKjku5jmrL7pobXloavlhpnvvIzku5jmrL7miJDlip/liY3kuI3kvJrpooTorqLjgIIiOiLkuIvkuIDmraXmmK/muKzoqabmqKHlvI/nmoTku5jmrL7poIHvvIzkuI3mnIPnnJ/lr6bmiaPmrL7jgILljaHomZ/lj6rlnKjku5jmrL7poIHloavlr6vvvIzku5jmrL7miJDlip/liY3kuI3mnIPpoJDoqILjgIIiLOS4i+S4gOmhtToi5LiL5LiA6aCBIizkuIvkuKrmnIg6IuS4i+WAi+aciCIs5LiN5Y+W5raI5LqGOiLkuI3lj5bmtojkuoYiLOS4jeWPr+WPlua2iDoi5LiN5Y+v5Y+W5raIIizkuI3lkKs6IuS4jeWQqyIs5LiN5ZCr5pepOiLkuI3lkKvml6kiLOS4jeaUueS6hjoi5LiN5pS55LqGIiwi5LiN55So57uR5Y2h77yM5Lmf5LiN5omj5qy+44CC5YWl5L2P5pe25Zyo5YmN5Y+w5Ye656S66ZO26KGM5Y2h5Y2z5Y+v44CCIjoi5LiN55So57aB5Y2h77yM5Lmf5LiN5omj5qy+44CC5YWl5L2P5pmC5Zyo5YmN6Ie65Ye656S66YqA6KGM5Y2h5Y2z5Y+v44CCIiwi5LiN55So57uR5Y2h77yM5Lmf5LiN5omj5qy+44CC6L+Z5piv5ZyoezB955qE6aKE6K6i77yM5Yiw5bqX5LuY5qy+44CCIjoi5LiN55So57aB5Y2h77yM5Lmf5LiN5omj5qy+44CC6YCZ5piv5ZyoezB955qE6aCQ6KiC77yM5Yiw5bqX5LuY5qy+44CCIiwi5LiN55So57uR5Y2h77yM5Lmf5LiN5omj5qy+44CC6L+Z5piv5ryU56S677yMezB95LiN5Lya5pS25Yiw77yM5Lmf5LiN5L+d55WZ5oi/6Ze044CCIjoi5LiN55So57aB5Y2h77yM5Lmf5LiN5omj5qy+44CC6YCZ5piv5ryU56S677yMezB95LiN5pyD5pS25Yiw77yM5Lmf5LiN5L+d55WZ5oi/6ZaT44CCIiwi5LiN6ZyA6KaB5a+G56CB77yM5Lmf5LiN5Lya5L+d5a2Y5Lu75L2V5a+G56CB44CC55m75b2V5ZCO5pi+56S65Lya5ZGY5Lu377yM5LiN5Lya5omj5qy+44CCIjoi5LiN6ZyA6KaB5a+G56K877yM5Lmf5LiN5pyD5YSy5a2Y5Lu75L2V5a+G56K844CC55m75YWl5b6M6aGv56S65pyD5ZOh5YO577yM5LiN5pyD5omj5qy+44CCIizkuI7or4Hku7bkuIDoh7Q6IuiIh+itieS7tuS4gOiHtCIs5Lit5LicOiLkuK3mnbEiLOS4uui/measoeS9j+Wuv+WKoOi0rToi54K66YCZ5qyh5L2P5a6/5Yqg6LO8IizkuprmtLI6IuS6nua0siIs5Lq65pWwOiLkurrmlbgiLOS6uuaVsOWSjOmXtOaVsDoi5Lq65pW45ZKM6ZaT5pW4Iiwi5LuF5YmpIHswfSDpl7QiOiLlg4XliakgezB9IOmWkyIs5LuF6K6h5YiSOiLlg4XoqIjlioMiLCLku4rlpKkgezB9IOW8gOWNliI6IuS7iuWkqSB7MH0g6ZaL6LOjIiwi5LuK5aSpezB9Ijoi5LuK5aSpezB9Iizku4rlpKnmsqHmnInpkp/ngrnmiL86IuS7iuWkqeaykuaciemQmOm7nuaIvyIsIuS7iuWkqeeahOmSn+eCueaIvyB7MH0g5byA5Y2W44CCIjoi5LuK5aSp55qE6ZCY6bue5oi/IHswfSDplovos6PjgIIiLCLku4rlpKnnmoTpkp/ngrnmiL/vvIzlkKvnqI7ku7ciOiLku4rlpKnnmoTpkJjpu57miL/vvIzlkKvnqIXlg7kiLCLku4rlpKnnmoTpkp/ngrnmiL/vvIzpgInkuIDlrrblho3mjJHliLDlupfml7bpl7TjgIIiOiLku4rlpKnnmoTpkJjpu57miL/vvIzpgbjkuIDlrrblho3mjJHliLDlupfmmYLplpPjgIIiLCLku4rlpKnnmoTpkp/ngrnmiL/lt7Lnu4/nu5PmnZ/kuobvvIzmnIDmmZogezB9IOW8gOWni+OAgiI6IuS7iuWkqeeahOmQmOm7nuaIv+W3sue2k+e1kOadn+S6hu+8jOacgOaZmiB7MH0g6ZaL5aeL44CCIiwi5LuK5aSp55qE6ZKf54K55oi/5bey57uP57uT5p2f5LqG44CCIjoi5LuK5aSp55qE6ZCY6bue5oi/5bey57aT57WQ5p2f5LqG44CCIizku4rlpKnnmoTpkp/ngrnmiL/lt7Lnu5PmnZ86IuS7iuWkqeeahOmQmOm7nuaIv+W3sue1kOadnyIs5LuK5aSp55qE6ZKf54K55oi/5bey6K6i5ruhOiLku4rlpKnnmoTpkJjpu57miL/lt7LoqILmu78iLCLku4rlpKnnmoTpkp/ngrnmiL/ov5jmsqHlvIDljZbjgIIiOiLku4rlpKnnmoTpkJjpu57miL/pgoTmspLplovos6PjgIIiLCLku4rlpKnnmoTpkp/ngrnmiL/pg73orqLmu6HkuobjgIIiOiLku4rlpKnnmoTpkJjpu57miL/pg73oqILmu7/kuobjgIIiLOS7iuaXpemSn+eCueaIvzoi5LuK5pel6ZCY6bue5oi/Iizku5jmrL46IuS7mOasviIs5LuY5qy+5ZCO5a6M5oiQ6aKE6K6iOiLku5jmrL7lvozlrozmiJDpoJDoqIIiLCLku7fmoLzkuLrlvZPlpKnlhaXkvY8gezB955qE5oC75Lu377yM5ZCr56iO77yb5rKh5pyJ5Lu35qC855qE5pel5a2Q5pyq5oql5Lu344CCIjoi5YO55qC854K655W25aSp5YWl5L2PIHswfeeahOe4veWDue+8jOWQq+eohe+8m+aykuacieWDueagvOeahOaXpeWtkOacquWgseWDueOAgiIs5Lu35qC85LuO5L2O5Yiw6auYOiLlg7nmoLzlvp7kvY7liLDpq5giLOS7t+agvOS7jumrmOWIsOS9jjoi5YO55qC85b6e6auY5Yiw5L2OIiwi5Lu35qC85YiG5Yir5LulIHswfSDorqHvvIzov5nph4zkuI3lgZrmjaLnrpfvvIzmiYDku6XkuI3mjInku7fmoLzmjpLluo/jgILlj6rnnIvkuIDkuKrln47luILmiJblm73lrrbvvIzlsLHlj6rmnInkuIDnp43luIHnp43jgIIiOiLlg7nmoLzliIbliKXku6UgezB9IOioiO+8jOmAmeijoeS4jeWBmuaPm+eul++8jOaJgOS7peS4jeaMieWDueagvOaOkuW6j+OAguWPqueci+S4gOWAi+WfjuW4guaIluWci+Wutu+8jOWwseWPquacieS4gOeoruW5o+eoruOAgiIsIuS7t+agvOaIluadoeasvuWSjOS9oOeci+WIsOeahOS4jeS4gOagt+S6hu+8jOaJgOS7peayoeacieaMieaWsOS7t+agvOmihOiuouOAgiI6IuWDueagvOaIluaineasvuWSjOS9oOeci+WIsOeahOS4jeS4gOaoo+S6hu+8jOaJgOS7peaykuacieaMieaWsOWDueagvOmgkOioguOAgiIsIuS8mOaDoCB7MH0lIjoi5YSq5oOgIHswfSUiLOS8muWRmDoi5pyD5ZOhIiwi5Lya5ZGYIMK3IOS8mOaDoCB7MH0lIjoi5pyD5ZOhIMK3IOWEquaDoCB7MH0lIizkvJrlkZjlj7c6Iuacg+WToeiZnyIsIuS8muWRmOWPt+WSjOWnk+awj+WvueS4jeS4iuOAguivt+aMieWNoeS4iuWNsOeahOaguOWvueS4pOmhueWNs+WPr++8jOi/memHjOS7juS4jeimgeaxguWvhueggeOAgiI6Iuacg+WToeiZn+WSjOWnk+awj+WwjeS4jeS4iuOAguiri+aMieWNoeS4iuWNsOeahOaguOWwjeWFqemgheWNs+WPr++8jOmAmeijoeW+nuS4jeimgeaxguWvhueivOOAgiIs5Lya5ZGY55m75b2VOiLmnIPlk6HnmbvlhaUiLOS9jee9rjoi5L2N572uIizkvY7mpbzlsYI6IuS9juaok+WxpCIsIuS9j+eahOaZmuaVsOWkquWkmuS6huOAgiI6IuS9j+eahOaZmuaVuOWkquWkmuS6huOAgiIsIuS9j+eahOaZmuaVsOWkquWwkeS6huOAgiI6IuS9j+eahOaZmuaVuOWkquWwkeS6huOAgiIs5L+D6ZSAOiLkv4PpirciLCLkv53nlZkgezB9IOmXtCI6IuS/neeVmSB7MH0g6ZaTIizkv53nlZnov5npl7TmiL86IuS/neeVmemAmemWk+aIvyIs5L+u5pS5OiLkv67mlLkiLOS/ruaUueaXpeacnzoi5L+u5pS55pel5pyfIizkv67mlLnpooTorqI6IuS/ruaUuemgkOiogiIs5YGl6Lqr5Lit5b+DOiLlgaXouqvkuK3lv4MiLOWEv+erpeS/seS5kOmDqDoi5YWS56ul5L+x5qiC6YOoIizlhY3otLnlj5bmtog6IuWFjeiyu+WPlua2iCIs5YWl5L2POiLlhaXkvY8iLOWFpeS9j+S6uuS/oeaBrzoi5YWl5L2P5Lq66LOH6KiKIizlhaXkvY/mlrnlvI86IuWFpeS9j+aWueW8jyIsIuWFpeS9j+aXpeacn+W3sue7j+i/h+WOu+S6hu+8jOS7iuWkqeaYryB7MH3jgIIiOiLlhaXkvY/ml6XmnJ/lt7LntpPpgY7ljrvkuobvvIzku4rlpKnmmK8gezB944CCIiwi5YWl5L2P5pel5pyf5bey57uP6L+H5Y675LqG44CCIjoi5YWl5L2P5pel5pyf5bey57aT6YGO5Y675LqG44CCIiwi5YWl5L2P5pe25Zyo5YmN5Y+w5Ye656S66ZO26KGM5Y2h77yM6L+Z6YeM5LiN5pS25qy+44CCIjoi5YWl5L2P5pmC5Zyo5YmN6Ie65Ye656S66YqA6KGM5Y2h77yM6YCZ6KOh5LiN5pS25qy+44CCIizlhaXkvY/pobvnn6U6IuWFpeS9j+mgiOefpSIs5YWo5YyFOiLlhajljIUiLCLlhajljIUgw5cgezB9Ijoi5YWo5YyFIMOXIHswfSIsIuWFqOmDqCB7MH0g5a62Ijoi5YWo6YOoIHswfSDlrrYiLCLlhajpg6ggezB9IOauteS9j+WuvyI6IuWFqOmDqCB7MH0g5q615L2P5a6/Iizlhajpg6jnm67nmoTlnLA6IuWFqOmDqOebrueahOWcsCIs5YWo6YOo6YWS5bqXOiLlhajpg6jphZLlupciLCLlhbEgezB9Ijoi5YWxIHswfSIsIuWFsSB7MH0g5Liq56Gu6K6k56CB77yM5q+P5a626YWS5bqX5LiA5Liq44CCIjoi5YWxIHswfSDlgIvnorroqo3norzvvIzmr4/lrrbphZLlupfkuIDlgIvjgIIiLCLlhbEgezB9IOWutiI6IuWFsSB7MH0g5a62Iiwi5YWxIHswfSDnrJTpooTorqLvvIzmr4/mrrXkvY/lrr/kuIDnrJTvvIzlkITmnInoh6rlt7HnmoTnoa7orqTnoIHvvIzkv67mlLnmiJblj5bmtojpg73opoHliIbliKvov5vooYzjgIIiOiLlhbEgezB9IOethumgkOiogu+8jOavj+auteS9j+Wuv+S4gOethu+8jOWQhOacieiHquW3seeahOeiuuiqjeeivO+8jOS/ruaUueaIluWPlua2iOmDveimgeWIhuWIpemAsuihjOOAgiIsIuWFsSB7MH0g56yU6aKE6K6i77yM5q+P5q615L2P5a6/5LiA56yU77yM5ZCE5pyJ6Ieq5bex55qE56Gu6K6k56CB77yM5Y+W5raI6YO96KaB5YiG5Yir6L+b6KGM44CCIjoi5YWxIHswfSDnrYbpoJDoqILvvIzmr4/mrrXkvY/lrr/kuIDnrYbvvIzlkITmnInoh6rlt7HnmoTnorroqo3norzvvIzlj5bmtojpg73opoHliIbliKXpgLLooYzjgIIiLOWFs+mXrToi6Zec6ZaJIizlhbbku5Y6IuWFtuS7liIs5YW25LuW5Zyw5Yy6OiLlhbbku5blnLDljYAiLOWFtuS7lumcgOaxgjoi5YW25LuW6ZyA5rGCIiwi5YaF56qXKOacneWkqeS6lSkiOiLlhafnqpco5pyd5aSp5LqVKSIsIuWGjeaYvuekuiB7MH0g5a62Ijoi5YaN6aGv56S6IHswfSDlrrYiLOWGjeivleS4gOasoToi5YaN6Kmm5LiA5qyhIizmnIDkvY46IuacgOS9jiIsIuacgOS9ju+8mnswfeWFpeS9j++8jHsxfei1tyI6IuacgOS9ju+8mnswfeWFpeS9j++8jHsxfei1tyIs5pyA5L2O5Lu3OiLmnIDkvY7lg7kiLCLmnIDlpJrlj6rog73kvY8gezB9IOaZmuOAgiI6IuacgOWkmumau+iDveS9jyB7MH0g5pma44CCIiwi5pyA5aSn55qE5oi/5Z6L5Y+v5L2PIHswfSDkurrjgILorqIgezF9IOmXtOOAgeavj+mXtOaMiSB7Mn0g5Lq66K6i77yMezN9IOS4quS6uuWwseiDveS9j+S4i+OAgiI6IuacgOWkp+eahOaIv+Wei+WPr+S9jyB7MH0g5Lq644CC6KiCIHsxfSDplpPjgIHmr4/plpPmjIkgezJ9IOS6uuiogu+8jHszfSDlgIvkurrlsLHog73kvY/kuIvjgIIiLCLmnIDmmZogezB9IOemu+W6l+OAgiI6IuacgOaZmiB7MH0g6Zui5bqX44CCIizmnIDmmZrnprvlupc6IuacgOaZmumbouW6lyIsIuWHj+WwkeS4gOmXtCB7MH0iOiLmuJvlsJHkuIDplpMgezB9Iiwi5YiG5Yir5LulIHswfSDorqHku7fvvIzov5nph4zkuI3lgZrmjaLnrpfvvJvmr4/lrrbphZLlupfmjInoh6rlt7HnmoTluIHnp43pooTorqLlkozku5jmrL7jgIIiOiLliIbliKXku6UgezB9IOioiOWDue+8jOmAmeijoeS4jeWBmuaPm+eul++8m+avj+WutumFkuW6l+aMieiHquW3seeahOW5o+eorumgkOioguWSjOS7mOasvuOAgiIs5Yiw5bqXOiLliLDlupciLCLliLDlupfkuI3nlKjlho3ku5jmiL/otLnjgILlpoLmnpx7MH3msqHmnInnoa7orqTvvIzmrL7pobnkvJrlhajpop3pgIDlm57ljp/ljaHjgIIiOiLliLDlupfkuI3nlKjlho3ku5jmiL/osrvjgILlpoLmnpx7MH3mspLmnInnorroqo3vvIzmrL7poIXmnIPlhajpoY3pgIDlm57ljp/ljaHjgIIiLOWIsOW6l+aXtumXtDoi5Yiw5bqX5pmC6ZaTIizliankvZnmiL/pl7Q6IuWJqemkmOaIv+mWkyIs5Ymp5L2Z5pe26Ze0OiLlianppJjmmYLplpMiLOWMl+e+jua0sjoi5YyX576O5rSyIizljZXkurrluoo6IuWWruS6uuW6iiIs5Y2V5pepOiLllq7ml6kiLOWNoeS4iueahOWnk+awjzoi5Y2h5LiK55qE5aeT5rCPIiwi5Y2h5Y+35Y+q5Zyo5LuY5qy+6aG15aGr5YaZ77yM6L+Z6YeM5LiN5pS26ZuG44CC5aaC5p6c6YWS5bqX5rKh5pyJ56Gu6K6k77yM5qy+6aG55Lya5YWo6aKd6YCA5Zue44CCIjoi5Y2h6Jmf5Y+q5Zyo5LuY5qy+6aCB5aGr5a+r77yM6YCZ6KOh5LiN5pS26ZuG44CC5aaC5p6c6YWS5bqX5rKS5pyJ56K66KqN77yM5qy+6aCF5pyD5YWo6aGN6YCA5Zue44CCIizljp/mnaU6IuWOn+S+hiIs5Y675LuY5qy+OiLljrvku5jmrL4iLCLljrvlronlhajpobXpnaLku5jmrL4gezB9Ijoi5Y675a6J5YWo6aCB6Z2i5LuY5qy+IHswfSIs5Y675qC45a+5OiLljrvmoLjlsI0iLOWPjOW6ijoi6ZuZ5bqKIizlj4zml6k6IumbmeaXqSIs5Y+W5raIOiLlj5bmtogiLCLlj5bmtoh7MH0iOiLlj5bmtoh7MH0iLOWPlua2iOi/meeslOmihOiuojoi5Y+W5raI6YCZ562G6aCQ6KiCIizlj5bmtojpnIDmlK/ku5g6IuWPlua2iOmcgOaUr+S7mCIsIuWPpuaciSB7MH0g5a6256ym5ZCI5p2h5Lu277yM5L2G6LaF5Ye65LqG5Lu35qC85LiK6ZmQ44CCIjoi5Y+m5pyJIHswfSDlrrbnrKblkIjmop3ku7bvvIzkvYbotoXlh7rkuoblg7nmoLzkuIrpmZDjgIIiLCLlj6/kvY8gezB9IOS6uiI6IuWPr+S9jyB7MH0g5Lq6Iizlj6/kvY/kurrmlbA6IuWPr+S9j+S6uuaVuCIs5Y+v5b6X56ev5YiGOiLlj6/lvpfnqY3liIYiLCLlkITlrrbku7fmoLzmjInlkIToh6rluIHnp43vvIh7MH3vvInmmL7npLrvvIzkuI3lgZrmjaLnrpfvvIzmiYDku6XkuI3og73mjInliJfmr5Tku7fjgIIiOiLlkITlrrblg7nmoLzmjInlkIToh6rluaPnqK7vvIh7MH3vvInpoa/npLrvvIzkuI3lgZrmj5vnrpfvvIzmiYDku6XkuI3og73mjInliJfmr5Tlg7njgIIiLOWQjOaXpeacn+i/mOWPr+S7peiuojoi5ZCM5pel5pyf6YKE5Y+v5Lul6KiCIizlkKY6IuWQpiIs5ZCrOiLlkKsiLOWQq+WFqOmkkDoi5ZCr5YWo6aSQIiwi5ZCr5YWo6aSQIMOXIHswfSI6IuWQq+WFqOmkkCDDlyB7MH0iLOWQq+WNiumkkDoi5ZCr5Y2K6aSQIiwi5ZCr5Y2K6aSQIMOXIHswfSI6IuWQq+WNiumkkCDDlyB7MH0iLOWQq+aXqToi5ZCr5pepIizlkKvnqI7otLk6IuWQq+eoheiyuyIs5ZCr6Ieq5Yqp5pepOiLlkKvoh6rliqnml6kiLCLlkKvoh6rliqnml6kgw5cgezB9Ijoi5ZCr6Ieq5Yqp5pepIMOXIHswfSIs5ZKMOiLlkowiLOWTgeeJjDoi5ZOB54mMIizlm57liLDphZLlupfpppbpobU6IuWbnuWIsOmFkuW6l+mmlumggSIsIuWcqHswfeezu+e7n+eahOaooeaLn+WJr+acrOmHjOeUn+aIkO+8jOS4jeaYr+ecn+WunumihOiuou+8jOS4jeS/neeVmeaIv+mXtO+8jOS5n+S4jeS7mOasvuOAgiI6IuWcqHswfeezu+e1seeahOaooeaTrOWJr+acrOmHjOeUn+aIkO+8jOS4jeaYr+ecn+WvpumgkOiogu+8jOS4jeS/neeVmeaIv+mWk++8jOS5n+S4jeS7mOasvuOAgiIsIuWcqOatpOS9j3swfSI6IuWcqOatpOS9j3swfSIs5Zyw54K5OiLlnLDpu54iLCLln47luILjgIHlm73lrrbmiJbphZLlupflkI0iOiLln47luILjgIHlnIvlrrbmiJbphZLlupflkI0iLOWfjuW4guaIlumFkuW6l+WQjToi5Z+O5biC5oiW6YWS5bqX5ZCNIizln47mma86IuWfjuaZryIsIuWinuWKoOS4gOmXtCB7MH0iOiLlop7liqDkuIDplpMgezB9IizlpJrkuIDkuro6IuWkmuS4gOS6uiIs5aSa5LiA6Ze0OiLlpJrkuIDplpMiLOWknOWuteS7tzoi5aSc5a615YO5IizlpKfluoo6IuWkp+W6iiIs5aSn5rSL5rSyOiLlpKfmtIvmtLIiLOWll+mkkDoi5aWX6aSQIizlp5PlkI06IuWnk+WQjSIs5aeT5rCPOiLlp5PmsI8iLOWuiemdmeaIv+mXtDoi5a6J6Z2c5oi/6ZaTIizlrozmiJA6IuWujOaIkCIs5bCG6YCA5ZueOiLlsIfpgIDlm54iLOWwkeS4gOS6ujoi5bCR5LiA5Lq6IizlsJHkuIDpl7Q6IuWwkeS4gOmWkyIsIuWwneivleasoeaVsOi/h+Wkmu+8jOivt+eojeWQjuWGjeivleOAgiI6IuWYl+ippuasoeaVuOmBjuWkmu+8jOiri+eojeW+jOWGjeippuOAgiIs5bey5Li65LiL5qyh5YWl5L2P5L+d5a2YOiLlt7LngrrkuIvmrKHlhaXkvY/lhLLlrZgiLCLlt7Lku5jmrL7vvIx7MH3lt7Lnoa7orqQiOiLlt7Lku5jmrL7vvIx7MH3lt7Lnorroqo0iLCLlt7Lku5jmrL7vvIznrYnlvoV7MH3noa7orqQiOiLlt7Lku5jmrL7vvIznrYnlvoV7MH3norroqo0iLOW3suS/ruaUuToi5bey5L+u5pS5Iizlt7Llhajpop3pgIDmrL46IuW3suWFqOmhjemAgOasviIs5bey5Y+W5raIOiLlt7Llj5bmtogiLOW3suWQqzoi5bey5ZCrIiwi5bey5ZyoezB96aKE6K6i5oiQ5YqfIjoi5bey5ZyoezB96aCQ6KiC5oiQ5YqfIizlt7LlnKjooYznqIvkuK06IuW3suWcqOihjOeoi+S4rSIsIuW3suaPkOS6pOe7mXswfSI6IuW3suaPkOS6pOe1pnswfSIsIuW3suaPkOWHuu+8mnswfSI6IuW3suaPkOWHuu+8mnswfSIsIuW3suaPkOWHuueahOmcgOaxgu+8iOS4jeS9nOS/neivge+8iSI6IuW3suaPkOWHuueahOmcgOaxgu+8iOS4jeS9nOS/neitie+8iSIs5bey5ruhOiLlt7Lmu78iLOW3sueUn+aViDoi5bey55Sf5pWIIizlt7LnmbvlvZU6IuW3sueZu+WFpSIs5bey56Gu6K6kOiLlt7Lnorroqo0iLCLlt7Lnu4/ku5jov4fkuobvvJ/njrDlnKjliLfmlrAiOiLlt7LntpPku5jpgY7kuobvvJ/nj77lnKjph43mlrDmlbTnkIYiLCLlt7LorqIgwrcgezB9Ijoi5bey6KiCIMK3IHswfSIsIuW3suiuoiB7MH0vezF9Ijoi5bey6KiCIHswfS97MX0iLOW3sui2heaXtjoi5bey6LaF5pmCIizlt7Lovr7pooTorqLkuIrpmZA6IuW3sumBlOmgkOioguS4iumZkCIs5bey6L+H5pyfOiLlt7LpgY7mnJ8iLCLlt7LpgIDlh7rnmbvlvZXvvIzku7fmoLzmgaLlpI3kuLrlhazlvIDku7fjgIIiOiLlt7LpgIDlh7rnmbvlhaXvvIzlg7nmoLzmgaLlvqnngrrlhazplovlg7njgIIiLOW3sumihOS7mDoi5bey6aCQ5LuYIiwi5bey6aKE5LuYIHswfeOAgiI6IuW3sumgkOS7mCB7MH3jgIIiLOW6iuWeizoi5bqK5Z6LIiwi5b2T5YmN5rKh5pyJ55m75b2V77yM5rKh5pyJ5Y+v5riF6Zmk55qE5YGP5aW944CCIjoi55W25YmN5rKS5pyJ55m75YWl77yM5rKS5pyJ5Y+v5riF6Zmk55qE5YGP5aW944CCIizlvoXku5jmrL46IuW+heS7mOasviIs5b6F56Gu6K6kOiLlvoXnorroqo0iLCLlv4XloavvvJrlhaXkvY/kurrlp5PlkI3vvIzkuI7or4Hku7bkuIDoh7TjgIIiOiLlv4XloavvvJrlhaXkvY/kurrlp5PlkI3vvIzoiIforYnku7bkuIDoh7TjgIIiLCLlv4XloavvvJrmiYvmnLrlj7fvvIzmlrnkvr/phZLlupfogZTns7vkvaDjgIIiOiLlv4XloavvvJrmiYvmqZ/omZ/norzvvIzmlrnkvr/phZLlupfoga/ntaHkvaDjgIIiLCLlv4XloavvvJrmjqXmlLbnoa7orqTkv6Hmga/nmoTpgq7nrrHvvIzlh63lroPlkoznoa7orqTnoIHmib7lm57pooTorqLjgIIiOiLlv4XloavvvJrmjqXmlLbnorroqo3os4foqIrnmoTpm7vlrZDpg7Xku7bvvIzmhpHlroPlkoznorroqo3norzmib7lm57poJDoqILjgIIiLOaAu+S7tzoi57i95YO5Iiwi5oC75Lu3IMK3IOavj+aZmiB7MH0iOiLnuL3lg7kgwrcg5q+P5pmaIHswfSIsIuaDs+S9j+WTqumHjO+8nyI6IuaDs+S9j+WTquijoe+8nyIsIuaDs+WOu+WTqumHjO+8n+i+k+WFpeWfjuW4guOAgeWbveWutuaIlumFkuW6l+WQjeOAgiI6IuaDs+WOu+WTquijoe+8n+i8uOWFpeWfjuW4guOAgeWci+WutuaIlumFkuW6l+WQjeOAgiIs5oiR55qE6aKE6K6iOiLmiJHnmoTpoJDoqIIiLCLmiL/ku7flkozooYznqIvmgLvku7flt7LmjIl7MH3kvJrlkZjku7fmmL7npLrjgILnmbvlvZXkuI3kvJrmiaPmrL7jgIIiOiLmiL/lg7nlkozooYznqIvnuL3lg7nlt7LmjIl7MH3mnIPlk6Hlg7npoa/npLrjgILnmbvlhaXkuI3mnIPmiaPmrL7jgIIiLCLmiL/ku7fmr4/mmZogezB9Ijoi5oi/5YO55q+P5pmaIHswfSIs5oi/5Z6LOiLmiL/lnosiLOaIv+i0uToi5oi/6LK7IizmiL/otLnlkozpmYTliqDpobnnm646IuaIv+iyu+WSjOmZhOWKoOWwiOahiCIsIuaIv+mXtOS4uuS9oOS/neeVmeWIsCB7MH3jgIIiOiLmiL/plpPngrrkvaDkv53nlZnliLAgezB944CCIizmiL/pl7Tku6XlpJbnmoTpmYTliqDmnI3liqE6IuaIv+mWk+S7peWklueahOmZhOWKoOacjeWLmSIs5oi/6Ze05bey5L+d55WZOiLmiL/plpPlt7Lkv53nlZkiLOaJi+acuuWPtzoi5omL5qmf6Jmf56K8Iiwi5omT5byA5LiA5a626YWS5bqX77yM5p+l55yL5oi/6Ze044CCIjoi6ZaL5ZWf5LiA5a626YWS5bqX77yM5qqi6KaW5oi/6ZaT44CCIiwi5omT5byA5LiA5a626YWS5bqX77yM5p+l55yL6L+Z5Lqb5pel5pyf55qE5oi/6Ze044CCIjoi6ZaL5ZWf5LiA5a626YWS5bqX77yM5qqi6KaW6YCZ5Lqb5pel5pyf55qE5oi/6ZaT44CCIizmib7phZLlupc6IuaJvumFkuW6lyIsIuaKiuW6iuWei+OAgealvOWxguWSjOaIv+mXtOmcgOaxguiusOWcqOaIkeeahHswfei0puaIt+mHjO+8jOS4i+asoeiHquWKqOW4puS4iiI6IuaKiuW6iuWei+OAgeaok+WxpOWSjOaIv+mWk+mcgOaxguiomOWcqOaIkeeahHswfeizrOaItuijoe+8jOS4i+asoeiHquWLleW4tuS4iiIsIuaKiuW6iuWei+OAgealvOWxguWSjOaIv+mXtOmcgOaxguiusOWcqOaIkeeahOS8muWRmOi0puaIt+mHjO+8jOS4i+asoeiHquWKqOW4puS4iiI6IuaKiuW6iuWei+OAgeaok+WxpOWSjOaIv+mWk+mcgOaxguiomOWcqOaIkeeahOacg+WToeizrOaItuijoe+8jOS4i+asoeiHquWLleW4tuS4iiIs5oyJ5Y2h5LiK5Y2w55qE5aGr5YaZOiLmjInljaHkuIrljbDnmoTloavlr6siLOaMieWcsOWMujoi5oyJ5Zyw5Y2AIizmjInmmZo6IuaMieaZmiIs5o2i5LiA5a62OiLmj5vkuIDlrrYiLCLmjaLkuKrln47luILjgIHlm73lrrbmiJbphZLlupflkI3or5Xor5XjgIIiOiLmj5vlgIvln47luILjgIHlnIvlrrbmiJbphZLlupflkI3oqaboqabjgIIiLCLmjaLkuKrml6XlrZDlhaXkvY8gwrcgezB96LW35Lu3Ijoi5o+b5YCL5pel5a2Q5YWl5L2PIMK3IHswfei1t+WDuSIs5o2i5oiQ6L+Z5a62OiLmj5vmiJDpgJnlrrYiLOaOkuW6jzoi5o6S5bqPIizmjqXkuIvmnaU6IuaOpeS4i+S+hiIs5o6l5pS256Gu6K6k5L+h5oGvOiLmjqXmlLbnorroqo3os4foqIoiLOaOqOiNkDoi5o6o6JamIizmj5DkuqTmtYvor5XpooTorqI6IuaPkOS6pOa4rOippumgkOiogiIs5o+Q5Lqk6aKE6K6iOiLmj5DkuqTpoJDoqIIiLOaPkOWJjeWFpeS9jzoi5o+Q5YmN5YWl5L2PIizmj5DliY3orqLkvJjmg6A6IuaPkOWJjeioguWEquaDoCIs5pCc57SiOiLmkJzlsIsiLCLmlLbliLDkuobov5nlvKDljaHniYfml6Dms5XmmL7npLrnmoTlhoXlrrnjgIIiOiLmlLbliLDkuobpgJnlvLXljaHniYfnhKHms5Xpoa/npLrnmoTlhaflrrnjgIIiLOaUueS4ujoi5pS554K6IizmlLnnnIvmjInmmZrlhaXkvY86IuaUueeci+aMieaZmuWFpeS9jyIs5pS/562WOiLmlL/nrZYiLOaVsOmHjzoi5pW46YePIizmlbDph4/kuI3lr7k6IuaVuOmHj+S4jeWwjSIs5pW05q615L2P5a6/OiLmlbTmrrXkvY/lrr8iLOaWueS+v+mFkuW6l+iBlOezu+S9oDoi5pa55L6/6YWS5bqX6IGv57Wh5L2gIizml6Dnqpc6IueEoeeqlyIs5peg6Zqc56KN5oi/OiLnhKHpmpznpJnmiL8iLOaXqemkkDoi5pep6aSQIizmmK86IuaYryIsIuaYvuekuuesrCB7MH3igJN7MX0g5a6277yM5YWxIHsyfSDlrrbjgIIiOiLpoa/npLrnrKwgezB94oCTezF9IOWutu+8jOWFsSB7Mn0g5a6244CCIiwi5pi+56S656ysIDHigJN7MH0g5a6277yM5YWxIHsxfSDlrrbjgIIiOiLpoa/npLrnrKwgMeKAk3swfSDlrrbvvIzlhbEgezF9IOWutuOAgiIs5pma5YiwOiLmmZrliLAiLOaaguaXtuaXoOazlemihOiuojoi5pqr5pmC54Sh5rOV6aCQ6KiCIiwi5pqC5pe25rKh6IO95YWo6YOo5Yqg5YWl6KGM56iL44CCIjoi5pqr5pmC5rKS6IO95YWo6YOo5Yqg5YWl6KGM56iL44CCIiwi5pqC5pe25rKh6IO95a6M5oiQ44CCIjoi5pqr5pmC5rKS6IO95a6M5oiQ44CCIiwi5pqC5pe25rKh6IO95pCc57Si44CCIjoi5pqr5pmC5rKS6IO95pCc5bCL44CCIiwi5pqC5pe25rKh6IO95p+l5Yiw5LuY5qy+54q25oCB44CCIjoi5pqr5pmC5rKS6IO95p+l5Yiw5LuY5qy+54uA5oWL44CCIizmm7TmlrDpooTorqI6IuabtOaWsOmgkOiogiIs5pyJ56qXOiLmnInnqpciLOaciemSn+eCueaIvzoi5pyJ6ZCY6bue5oi/IizmnKrlkKvnqI7otLk6IuacquWQq+eoheiyuyIs5pyq5oiQ5YqfOiLmnKrmiJDlip8iLOacquiuouaIkDoi5pyq6KiC5oiQIiwi5pyq6K6i5oiQ77yIezB977yJIjoi5pyq6KiC5oiQ77yIezB977yJIizmn6Xmib46IuafpeipoiIs5p+l55yL5Lu35qC8OiLmqqLoppblg7nmoLwiLCLmn6XnnIvlhajpg6ggezB9IOWutiI6IuaqouimluWFqOmDqCB7MH0g5a62Iizmn6XnnIvlhajpg6jmiL/lnos6IuaqouimluWFqOmDqOaIv+WeiyIs5p+l55yL5YWo6YOo55uu55qE5ZywOiLmqqLoppblhajpg6jnm67nmoTlnLAiLOafpeeci+aIv+Weizoi5qqi6KaW5oi/5Z6LIizmn6XnnIvooYznqIs6IuaqouimluihjOeoiyIsIuafpeeci+mihOiuoiB7MH0g55qE6K+m5oOFIjoi5qqi6KaW6aCQ6KiCIHswfSDnmoToqbPmg4UiLOaguOWunuS4rToi5qC45a+m5LitIizmoLjlr7nlubbpooTorqI6IuaguOWwjeS4pumgkOiogiIs5qW85bGCOiLmqJPlsaQiLOaooeaLnzoi5qih5pOsIizmrKfmtLI6IuatkOa0siIs5q2j5Zyo5Y+W5raIOiLmraPlnKjlj5bmtogiLOato+WcqOafpeivouaIv+mXtDoi5q2j5Zyo5p+l6Kmi5oi/6ZaTIiwi5q2j5Zyo562JezB956Gu6K6k6L+Z56yU6aKE6K6i77yM5pyA5aSa57qm5YWr5YiG6ZKf44CC56Gu6K6k5ZCO5Y+v5Zyo4oCc5oiR55qE6aKE6K6i4oCd6YeM55yL5Yiw44CCIjoi5q2j5Zyo562JezB956K66KqN6YCZ562G6aCQ6KiC77yM5pyA5aSa57SE5YWr5YiG6ZCY44CC56K66KqN5b6M5Y+v5Zyo4oCc5oiR55qE6aCQ6KiC4oCd6KOh55yL5Yiw44CCIiwi5q2k5Lu35qC85LiN5Y+v5Y+W5raI77yM5bey5LuY5qy+6aG55LiN6YCA44CCIjoi5q2k5YO55qC85LiN5Y+v5Y+W5raI77yM5bey5LuY5qy+6aCF5LiN6YCA44CCIiwi5q2k5Lu35qC85LuF5YmpIHswfSDpl7QiOiLmraTlg7nmoLzlg4XliakgezB9IOmWkyIsIuavj3swfSI6Iuavj3swfSIs5q+P5Lq6OiLmr4/kuroiLOavj+S6uuavj+aZmjoi5q+P5Lq65q+P5pmaIizmr4/ku706Iuavj+S7vSIsIuavj+S7vSB7MH0iOiLmr4/ku70gezB9Iizmr4/mmZo6Iuavj+aZmiIsIuavj+aZmiB7MH0iOiLmr4/mmZogezB9Iiwi5q+P5pma77yM5pyq5ZCr56iO6LS5Ijoi5q+P5pma77yM5pyq5ZCr56iF6LK7Iizmr4/mrKHlhaXkvY86Iuavj+asoeWFpeS9jyIsIuavj+asoeaUueWKqOmDveS8muWFiOaYvuekuuaWsOeahOaAu+S7t++8jOehruiupOWQjuaJjeeUn+aViOOAgui/memHjOS4jeaJo+asvuOAgiI6Iuavj+asoeaUueWLlemDveacg+WFiOmhr+ekuuaWsOeahOe4veWDue+8jOeiuuiqjeW+jOaJjeeUn+aViOOAgumAmeijoeS4jeaJo+asvuOAgiIs5q+P6LafOiLmr4/otp8iLCLmr4/pl7QgezB9IOS6uiDCtyB7MX0g6Ze0Ijoi5q+P6ZaTIHswfSDkurogwrcgezF9IOmWkyIsIuavj+mXtCAxIOS6uiDCtyB7MH0g6Ze0Ijoi5q+P6ZaTIDEg5Lq6IMK3IHswfSDplpMiLOavj+mXtOWFpeS9j+S6uuaVsDoi5q+P6ZaT5YWl5L2P5Lq65pW4IizmsLTnlpc6IuawtOeZgiIsIuayoeacieS9juS6juS7t+agvOS4iumZkOeahOmFkuW6l+OAguS7peS4i+aYr+acgOaOpei/keeahOWHoOWutu+8jOS7t+agvOeVpemrmOOAgiI6IuaykuacieS9juaWvOWDueagvOS4iumZkOeahOmFkuW6l+OAguS7peS4i+aYr+acgOaOpei/keeahOW5vuWutu+8jOWDueagvOeVpemrmOOAgiIsIuayoeacieWPr+S9jyB7MH0g5Lq655qE5oi/5Z6LIjoi5rKS5pyJ5Y+v5L2PIHswfSDkurrnmoTmiL/lnosiLCLmsqHmnInlkozov5nkuKrnoa7orqTnoIHlr7nlupTnmoTpooTorqLjgIIiOiLmspLmnInlkozpgJnlgIvnorroqo3norzlsI3mh4nnmoTpoJDoqILjgIIiLCLmsqHmnInmiL/ku7fog73kuIDmrKHorqIgezB9IOmXtO+8jOivt+WwkeiuouWHoOmXtOOAgiI6IuaykuacieaIv+WDueiDveS4gOasoeiogiB7MH0g6ZaT77yM6KuL5bCR6KiC5bm+6ZaT44CCIiwi5rKh5pyJ5omj5qy+44CCIjoi5rKS5pyJ5omj5qy+44CCIiwi5rKh5pyJ5om+5Yiw5LiO4oCcezB94oCd55u456ym55qE57uT5p6c77yM5Lul5LiL5pivezF944CCIjoi5rKS5pyJ5om+5Yiw6IiH4oCcezB94oCd55u456ym55qE57WQ5p6c77yM5Lul5LiL5pivezF944CCIiwi5rKh5pyJ5om+5Yiw5LiO4oCcezB94oCd55u456ym55qE57uT5p6c77yM5pS55Li65ZyoezF96YeM5om+44CCIjoi5rKS5pyJ5om+5Yiw6IiH4oCcezB94oCd55u456ym55qE57WQ5p6c77yM5pS554K65ZyoezF96KOh5om+44CCIiwi5rKh5pyJ5om+5Yiw56Gu6K6k56CBIHswfSDlkozov5nkuKrpgq7nrrHlr7nlupTnmoTpooTorqLjgILkuKTpobnpg73opoHlkoznoa7orqTkv6Hmga/kuIrnmoTkuIDoh7TjgIIiOiLmspLmnInmib7liLDnorroqo3norwgezB9IOWSjOmAmeWAi+mbu+WtkOmDteS7tuWwjeaHieeahOmgkOioguOAguWFqemghemDveimgeWSjOeiuuiqjeizh+ioiuS4iueahOS4gOiHtOOAgiIs5rKh5pyJ5om+5Yiw6L+Z5a626YWS5bqXOiLmspLmnInmib7liLDpgJnlrrbphZLlupciLOayoeacieespuWQiOadoeS7tueahOmFkuW6lzoi5rKS5pyJ56ym5ZCI5qKd5Lu255qE6YWS5bqXIiwi5rKh5pyJ6IO95L2P6L+Z5LmI5aSa5Lq655qE5oi/5Z6L77ya5pyA5aSn55qE5Y+v5L2PIHswfSDkurrvvIzpnIDopoHorqIgezF9IOmXtOOAgiI6IuaykuacieiDveS9j+mAmem6vOWkmuS6uueahOaIv+Wei++8muacgOWkp+eahOWPr+S9jyB7MH0g5Lq677yM6ZyA6KaB6KiCIHsxfSDplpPjgIIiLCLmsqHmnInog73kvY/ov5nkuYjlpJrkurrnmoTmiL/lnovjgIIiOiLmspLmnInog73kvY/pgJnpurzlpJrkurrnmoTmiL/lnovjgIIiLCLmsqHog73kuLrov5nkupvml6XmnJ/miqXku7fjgIIiOiLmspLog73ngrrpgJnkupvml6XmnJ/loLHlg7njgIIiLCLmsqHog73kv67mlLnov5nnrJTpooTorqLjgIIiOiLmspLog73kv67mlLnpgJnnrYbpoJDoqILjgIIiLCLmsqHog73liqDovb3kvaDnmoTpooTorqLjgIIiOiLmspLog73ovInlhaXkvaDnmoTpoJDoqILjgIIiLCLmsqHog73liqDovb3mm7TlpJrphZLlupfjgIIiOiLmspLog73ovInlhaXmm7TlpJrphZLlupfjgIIiLCLmsqHog73liqDovb3ooYznqIvjgIIiOiLmspLog73ovInlhaXooYznqIvjgIIiLCLmsqHog73liqDovb3ov5nkupvml6XmnJ/jgIIiOiLmspLog73ovInlhaXpgJnkupvml6XmnJ/jgIIiLCLmsqHog73liqDovb3ov5nkupvphZLlupfjgIIiOiLmspLog73ovInlhaXpgJnkupvphZLlupfjgIIiLCLmsqHog73liqDovb3ov5nlrrbphZLlupfjgIIiOiLmspLog73ovInlhaXpgJnlrrbphZLlupfjgIIiLCLmsqHog73liqDovb3ov5nmnaHmlL/nrZbjgIIiOiLmspLog73ovInlhaXpgJnmop3mlL/nrZbjgIIiLCLmsqHog73liqDovb3phZLlupfjgIIiOiLmspLog73ovInlhaXphZLlupfjgIIiLCLmsqHog73liqDovb3phZLlupfliJfooajjgIIiOiLmspLog73ovInlhaXphZLlupfliJfooajjgIIiLCLmsqHog73liqDovb3pmYTliqDmnI3liqHjgIIiOiLmspLog73ovInlhaXpmYTliqDmnI3li5njgIIiLCLmsqHog73lj5HpgIHliLDlr7nor53jgIIiOiLmspLog73lgrPpgIHliLDlsI3oqbHjgIIiLCLmsqHog73lj5bmtojov5nnrJTpooTorqLjgIIiOiLmspLog73lj5bmtojpgJnnrYbpoJDoqILjgIIiLOayoeiDveWujOaIkDoi5rKS6IO95a6M5oiQIiwi5rKh6IO95omT5byA5LuY5qy+6aG144CCIjoi5rKS6IO96ZaL5ZWf5LuY5qy+6aCB44CCIiwi5rKh6IO95o+Q5Lqk6aKE6K6i44CCIjoi5rKS6IO95o+Q5Lqk6aCQ6KiC44CCIiwi5rKh6IO95pu05paw6KGM56iL44CCIjoi5rKS6IO95pu05paw6KGM56iL44CCIiwi5rKh6IO95p+l5Yiw44CCIjoi5rKS6IO95p+l5Yiw44CCIiwi5rKh6IO95riF6Zmk44CCIjoi5rKS6IO95riF6Zmk44CCIiwi5rKh6IO95riF6Zmk562b6YCJ44CCIjoi5rKS6IO95riF6Zmk56+p6YG444CCIiwi5rKh6IO955m75b2V44CCIjoi5rKS6IO955m75YWl44CCIiwi5rKh6IO9562b6YCJ5YiX6KGo44CCIjoi5rKS6IO956+p6YG45YiX6KGo44CCIiwi5rKh6IO96K6h566X5Y+W5raI6LS555So44CCIjoi5rKS6IO96KiI566X5Y+W5raI6LK755So44CCIiwi5rKh6IO96K6h566X6L+Z5qyh5L+u5pS544CCIjoi5rKS6IO96KiI566X6YCZ5qyh5L+u5pS544CCIiwi5rKh6IO96L+e5o6l5Yiw5a6/5Li744CCIjoi5rKS6IO96YCj57ea5Yiw5a6/5Li744CCIiwi5rKh6IO96YCA5Ye655m75b2V44CCIjoi5rKS6IO96YCA5Ye655m75YWl44CCIiwi5rKh6IO96YeN5paw5o6S5bqP44CCIjoi5rKS6IO96YeN5paw5o6S5bqP44CCIizmsqHog73pooTorqI6IuaykuiDvemgkOiogiIs5rOz5rGgOiLms7PmsaAiLCLmtYvor5XmqKHlvI/vvJrkuI3kvJrnnJ/lrp7miaPmrL7vvIzor7flnKjku5jmrL7pobXnlKjmtYvor5XljaHjgILljaHlj7flj6rlnKjku5jmrL7pobXloavlhpnvvIzov5nph4zkuI3mlLbpm4bjgIIiOiLmuKzoqabmqKHlvI/vvJrkuI3mnIPnnJ/lr6bmiaPmrL7vvIzoq4vlnKjku5jmrL7poIHnlKjmuKzoqabljaHjgILljaHomZ/lj6rlnKjku5jmrL7poIHloavlr6vvvIzpgJnoo6HkuI3mlLbpm4bjgIIiLCLmtYvor5XmqKHlvI/ku5jmrL7vvIzmsqHmnInnnJ/lrp7miaPmrL7vvJvorqLljZXlnKjmqKHmi5/ns7vnu5/ph4zjgIIiOiLmuKzoqabmqKHlvI/ku5jmrL7vvIzmspLmnInnnJ/lr6bmiaPmrL7vvJvoqILllq7lnKjmqKHmk6zns7vntbHoo6HjgIIiLCLmtYvor5XpooTorqLvvJrkuI3kv53nlZnmiL/pl7TvvIzkuZ/kuI3ku5jmrL7jgIIiOiLmuKzoqabpoJDoqILvvJrkuI3kv53nlZnmiL/plpPvvIzkuZ/kuI3ku5jmrL7jgIIiLCLmtYvor5XpooTorqJ7MH0iOiLmuKzoqabpoJDoqIJ7MH0iLOa1i+ivlemihOiuouW3suS7mOasvuW5tuiuouWlvToi5ris6Kmm6aCQ6KiC5bey5LuY5qy+5Lim6KiC5aW9IizmtYvor5XpooTorqLlt7Lmj5DkuqQ6Iua4rOippumgkOioguW3suaPkOS6pCIs5rWL6K+V6aKE6K6i5bey56Gu6K6kOiLmuKzoqabpoJDoqILlt7Lnorroqo0iLCLmtY/op4h7MH3nmoTphZLlupciOiLngI/opr17MH3nmoTphZLlupciLCLmtY/op4jlhajpg6ggezB9IOWutumFkuW6lyI6IueAj+imveWFqOmDqCB7MH0g5a626YWS5bqXIizmtY/op4jlhajpg6jphZLlupc6IueAj+imveWFqOmDqOmFkuW6lyIs5rW35ruoOiLmtbfmv7EiLCLmt7vliqAgezB9Ijoi5paw5aKeIHswfSIs5riF6ZmkOiLmuIXpmaQiLOa4hemZpOi/meS6m+WBj+WlvToi5riF6Zmk6YCZ5Lqb5YGP5aW9IizmvJTnpLo6Iua8lOekuiIs5ryU56S66aKE6K6iOiLmvJTnpLrpoJDoqIIiLOa8lOekuumihOiuouW3suaPkOS6pDoi5ryU56S66aCQ6KiC5bey5o+Q5LqkIiwi54K56YCJ5YWl5L2P6YKj5aSp44CCIjoi6bue6YG45YWl5L2P6YKj5aSp44CCIiwi54K56YCJ56a75bqX6YKj5aSp44CCIjoi6bue6YG46Zui5bqX6YKj5aSp44CCIizng63pl6jln47luII6IueGsemWgOWfjuW4giIs546w5ZyoOiLnj77lnKgiLCLnjrDlnKjov5jmsqHmnInpooTorqLjgILku5jmrL7miJDlip/lkI7vvIzmiL/pl7TmiY3kvJrlnKh7MH3orqLlpb3jgIIiOiLnj77lnKjpgoTmspLmnInpoJDoqILjgILku5jmrL7miJDlip/lvozvvIzmiL/plpPmiY3mnIPlnKh7MH3oqILlpb3jgIIiLOeUqOS9oOiHquW3seeahOivneWGmToi55So5L2g6Ieq5bex55qE6Kmx5a+rIiwi55So5Y2h5LiK5Y2w55qE5Lya5ZGY5Y+35ZKM5aeT5rCP55m75b2V77yM6L+Z6YeM55qE5q+P5Liq5Lu35qC86YO95Lya5pi+56S65Lya5ZGY5Lu344CCIjoi55So5Y2h5LiK5Y2w55qE5pyD5ZOh6Jmf5ZKM5aeT5rCP55m75YWl77yM6YCZ6KOh55qE5q+P5YCL5YO55qC86YO95pyD6aGv56S65pyD5ZOh5YO544CCIiznlKjnoa7orqTnoIHmn6Xmib7pooTorqI6IueUqOeiuuiqjeeivOafpeipoumgkOiogiIs55m75b2VOiLnmbvlhaUiLOeZu+W9leS6q+S8muWRmOS7tzoi55m75YWl5Lqr5pyD5ZOh5YO5Iiznm67nmoTlnLA6IuebrueahOWcsCIsIuebuOavlHswfSI6IuebuOavlHswfSIs55yL5oyJ5pma5YWl5L2P55qE5oi/6Ze0OiLnnIvmjInmmZrlhaXkvY/nmoTmiL/plpMiLOehruiupOS4rToi56K66KqN5LitIiznoa7orqTlj5bmtog6IueiuuiqjeWPlua2iCIs56Gu6K6k5ZCO57uZ5Ye656Gu6K6k56CBOiLnorroqo3lvozntablh7rnorroqo3norwiLOehruiupOaUueacnzoi56K66KqN5pS55pyfIiznoa7orqTnoIE6IueiuuiqjeeivCIsIuekuuS+i+S7t+agvOWSjOaIv+Wei++8jOi/memHjOaXoOazleecn+WunumihOiuouOAgiI6IuekuuS+i+WDueagvOWSjOaIv+Wei++8jOmAmeijoeeEoeazleecn+WvpumgkOioguOAgiIs56a75bqXOiLpm6LlupciLCLnprvlupcgwrcgezB9Ijoi6Zui5bqXIMK3IHswfSIsIuemu+W6l+imgeaZmuS6juWFpeS9j++8muS9j+S4gOaZmuWwseaYr+esrOS6jOWkqeemu+W6l+OAgiI6IumbouW6l+imgeaZmuaWvOWFpeS9j++8muS9j+S4gOaZmuWwseaYr+esrOS6jOWkqembouW6l+OAgiIs56iO6LS5OiLnqIXosrsiLCLnrKwgezB94oCTezF9IOWutu+8jOWFsSB7Mn0g5a62Ijoi56ysIHswfeKAk3sxfSDlrrbvvIzlhbEgezJ9IOWutiIsIuesrCB7MH0vezF9IOaZmiDCtyB7Mn0iOiLnrKwgezB9L3sxfSDmmZogwrcgezJ9IiznrYnlvoXnoa7orqQ6IuetieW+heeiuuiqjSIs562b6YCJOiLnr6npgbgiLOe7memFkuW6l+eahOmcgOaxgjoi57Wm6YWS5bqX55qE6ZyA5rGCIiznu7/oibLkuLrmnIDkvY7ku7c6Iue2oOiJsueCuuacgOS9juWDuSIsIue8luWPtyB7MH0gwrcgezF9Ijoi57eo6JmfIHswfSDCtyB7MX0iLOe/u+mhtToi57+76aCBIiwi6Iez5bCR6KaB5L2PIHswfSDmmZrjgIIiOiLoh7PlsJHopoHkvY8gezB9IOaZmuOAgiIs6KGM56iLOiLooYznqIsiLCLooYznqIvkuK0gezB9L3sxfSI6IuihjOeoi+S4rSB7MH0vezF9Iiwi6KGM56iL5Y+q5Zyo5pyA5ZCO5LiA5qyh5pS55Yqo5ZCO5L+d55WZIDQg5bCP5pe277yM6L+Z5Liq5bey57uP6L+H5pyf77yM5YaN6K+V5Lmf5LiN5Lya5oGi5aSN44CC6K+36K6p5Yqp5omL6YeN5paw5pi+56S66KGM56iL77yM5oiW5Zyo6L+Z6YeM6YeN5paw5pCc57Si44CCIjoi6KGM56iL5Y+q5Zyo5pyA5b6M5LiA5qyh5pS55YuV5b6M5L+d55WZIDQg5bCP5pmC77yM6YCZ5YCL5bey57aT6YGO5pyf77yM5YaN6Kmm5Lmf5LiN5pyD5oGi5b6p44CC6KuL6K6T5Yqp5omL6YeN5paw6aGv56S66KGM56iL77yM5oiW5Zyo6YCZ6KOh6YeN5paw5pCc5bCL44CCIizooYznqIvorqHliJI6IuihjOeoi+ioiOWKgyIsIuihjOeoi+iuoeWIkuiHs+WwkemcgOimgeS4gOWkqeOAgiI6IuihjOeoi+ioiOWKg+iHs+WwkemcgOimgeS4gOWkqeOAgiIsIuihjOeoi+mHjOi/mOayoeacieWGheWuueOAgiI6IuihjOeoi+ijoemChOaykuacieWFp+WuueOAgiIsIuiuoeWIkuS4reeahCB7MH0g6aG56YeM77yMezF9IOmhueW3suWcqOihjOeoi+S4reaIluW3sumihOiuou+8jOWFtuS9meWPquaYr+iuoeWIkuOAgiI6IuioiOWKg+S4reeahCB7MH0g6aCF6KOh77yMezF9IOmgheW3suWcqOihjOeoi+S4reaIluW3sumgkOiogu+8jOWFtumkmOWPquaYr+ioiOWKg+OAgiIsIuiuoiB7MH0g6Ze077yM5q+P6Ze05oyJIHsxfSDkuroiOiLoqIIgezB9IOmWk++8jOavj+mWk+aMiSB7MX0g5Lq6IizorqnliqnmiYvph43mlrDmmL7npLrooYznqIs6Iuiuk+WKqeaJi+mHjeaWsOmhr+ekuuihjOeoiyIs6K6+5pa9OiLoqK3mlr0iLOivhOWIhjoi6KmV5YiGIiwi6K+E5YiGIHswfe+8jHsxfSDmnaHngrnor4QiOiLoqZXliIYgezB977yMezF9IOainem7nuiplSIsIuivleivleaKiuavj+mXtOS6uuaVsOaUueWwkeOAgiI6IuippuippuaKiuavj+mWk+S6uuaVuOaUueWwkeOAgiIs6K+l5oi/5Z6L5pqC5LiN5Y+v6K6iOiLoqbLmiL/lnovmmqvkuI3lj6/oqIIiLOivreiogDoi6Kqe6KiAIiwi6K+35L+d5a2Y6L+Z5Liq56Gu6K6k56CB44CC5Yet5a6D5ZKM5L2g55qE6YKu566x77yM5Zyo5Lu75L2V5a+56K+d6YeM6YO96IO95om+5Zue6L+Z56yU6aKE6K6i44CCIjoi6KuL5YSy5a2Y6YCZ5YCL56K66KqN56K844CC5oaR5a6D5ZKM5L2g55qE6Zu75a2Q6YO15Lu277yM5Zyo5Lu75L2V5bCN6Kmx6KOh6YO96IO95om+5Zue6YCZ562G6aCQ6KiC44CCIiwi6K+35YWI6YCJ5aW95YWl5L2P5ZKM56a75bqX5pel5pyf77yM5YaN5oqK5oi/6Ze05Yqg5YWl6KGM56iL44CCIjoi6KuL5YWI6YG45aW95YWl5L2P5ZKM6Zui5bqX5pel5pyf77yM5YaN5oqK5oi/6ZaT5Yqg5YWl6KGM56iL44CCIiwi6K+35ZCM5pe25aGr5YaZ5Lya5ZGY5Y+35ZKM5Y2h5LiK55qE5aeT5rCP44CCIjoi6KuL5ZCM5pmC5aGr5a+r5pyD5ZOh6Jmf5ZKM5Y2h5LiK55qE5aeT5rCP44CCIiwi6K+35ZCM5pe25aGr5YaZ56Gu6K6k56CB5ZKM6aKE6K6i5pe255So55qE6YKu566x44CCIjoi6KuL5ZCM5pmC5aGr5a+r56K66KqN56K85ZKM6aCQ6KiC5pmC55So55qE6Zu75a2Q6YO15Lu244CCIiwi6K+35ZyoIHswfSDliY3ku5jmrL4iOiLoq4vlnKggezB9IOWJjeS7mOasviIsIuivt+mHjeaWsOaYvuekuuaIkeeahOihjOeoi+OAgiI6Iuiri+mHjeaWsOmhr+ekuuaIkeeahOihjOeoi+OAgiIsIuivt+mHjeaWsOmAieWlveWFpeS9j+aXpeacn+WSjOS6uuaVsOOAgiI6Iuiri+mHjeaWsOmBuOWlveWFpeS9j+aXpeacn+WSjOS6uuaVuOOAgiIs6LW35Lu3OiLotbflg7kiLOi2heWHujoi6LaF5Ye6IizotoXml7bmnKrku5g6Iui2heaZguacquS7mCIs6L+U5ZueOiLov5Tlm54iLCLov5Tlm557MH0iOiLov5Tlm557MH0iLOi/lOWbnuaIkeeahOmihOiuojoi6L+U5Zue5oiR55qE6aCQ6KiCIiwi6L+Y5LiN56Gu5a6aezB95piv5ZCm5bey55Sf5oiQ6L+Z56yU6aKE6K6i77yM5q2j5Zyo5Lq65bel5qC45a6e44CCIjoi6YKE5LiN56K65a6aezB95piv5ZCm5bey55Sf5oiQ6YCZ562G6aCQ6KiC77yM5q2j5Zyo5Lq65bel5qC45a+m44CCIiwi6L+Y5YmpIHswfSI6IumChOWJqSB7MH0iLCLov5jmnIkgezB9IOS4qiI6IumChOaciSB7MH0g5YCLIiwi6L+Y5pyJIHswfSDkuKrlm73lrrYiOiLpgoTmnIkgezB9IOWAi+Wci+WutiIsIui/mOayoeW8gOWNlu+8muWPquiDveiuoiB7MH0g5aSp5Lul5YaF55qE5oi/6Ze044CCIjoi6YKE5rKS6ZaL6LOj77ya5Y+q6IO96KiCIHswfSDlpKnku6XlhafnmoTmiL/plpPjgIIiLCLov5jmsqHlvIDljZbvvJrml6XmnJ/lpKrov5zkuobjgIIiOiLpgoTmspLplovos6PvvJrml6XmnJ/lpKrpgaDkuobjgIIiLCLov5nkuIDmraXmsqHog73lrozmiJDvvIzor7fnqI3lkI7lho3or5XjgIIiOiLpgJnkuIDmraXmspLog73lrozmiJDvvIzoq4vnqI3lvozlho3oqabjgIIiLCLov5nkuIDmrrXmmoLml7booqvpooTorqLkuIrpmZDmjKHkuIvkuobvvIzlsJHorqLkuIDkupvmiJbnqI3lkI7lho3or5XjgIIiOiLpgJnkuIDmrrXmmqvmmYLooqvpoJDoqILkuIrpmZDmk4vkuIvkuobvvIzlsJHoqILkuIDkupvmiJbnqI3lvozlho3oqabjgIIiLCLov5nkuIDmrrXmsqHog73pooTorqLvvIzmsqHmnInmiaPmrL7jgIIiOiLpgJnkuIDmrrXmspLog73poJDoqILvvIzmspLmnInmiaPmrL7jgIIiLOi/meS4quWIsOW6l+aXtumXtOS4jeWPr+mAiToi6YCZ5YCL5Yiw5bqX5pmC6ZaT5LiN5Y+v6YG4Iizov5nkuKrooYznqIvlt7Lov4fmnJ86IumAmeWAi+ihjOeoi+W3sumBjuacnyIsIui/meS6m+S8muS9nOS4uumcgOaxgui9rOe7meWJjeWPsO+8jHswfeW9k+WkqeWwvemHj+a7oei2s++8jOS9huS4jeS9nOS/neivgeOAgiI6IumAmeS6m+acg+S9nOeCuumcgOaxgui9iee1puWJjeiHuu+8jHswfeeVtuWkqeWEmOmHj+a7v+i2s++8jOS9huS4jeS9nOS/neitieOAgiIsIui/meS6m+S9j+Wuv+WIhuWxnnswfe+8jOavj+S4qumbhuWboueahOimgeWIhuW8gOmihOiuouOAgiI6IumAmeS6m+S9j+Wuv+WIhuWxrHswfe+8jOavj+WAi+mbhuWcmOeahOimgeWIhumWi+mgkOioguOAgiIsIui/meS6m+aXpeacn+S4jeW8gOaUvumihOiuouOAgiI6IumAmeS6m+aXpeacn+S4jemWi+aUvumgkOioguOAgiIsIui/meS6m+aXpeacn+acieWFpeS9j+mZkOWItu+8jOaNouS4quaXpeacn+ivleivleOAgiI6IumAmeS6m+aXpeacn+acieWFpeS9j+mZkOWItu+8jOaPm+WAi+aXpeacn+ippuippuOAgiIsIui/meS6m+aXpeacn+ayoeacieWTquS4quaIv+Wei+i/mOWJqSB7MH0g6Ze044CCIjoi6YCZ5Lqb5pel5pyf5rKS5pyJ5ZOq5YCL5oi/5Z6L6YKE5YmpIHswfSDplpPjgIIiLOi/meS6m+aXpeacn+ayoeacieepuuaIvzoi6YCZ5Lqb5pel5pyf5rKS5pyJ56m65oi/Iiwi6L+Z5Lqb5pel5pyf55qE5oi/6Ze06YO96K6i5ruh5LqG44CCIjoi6YCZ5Lqb5pel5pyf55qE5oi/6ZaT6YO96KiC5ru/5LqG44CCIiwi6L+Z5Lqb5pel5pyf6L+Z6YeM6K6i5LiN5LqG44CCIjoi6YCZ5Lqb5pel5pyf6YCZ6KOh6KiC5LiN5LqG44CCIiwi6L+Z5Lqb6YO95LiN5piv6L+Z6YeM55qE6YWS5bqX44CCIjoi6YCZ5Lqb6YO95LiN5piv6YCZ6KOh55qE6YWS5bqX44CCIiwi6L+Z5aSp5LiN6IO95YWl5L2P44CCIjoi6YCZ5aSp5LiN6IO95YWl5L2P44CCIiwi6L+Z5aSp5LiN6IO96YCA5oi/44CCIjoi6YCZ5aSp5LiN6IO96YCA5oi/44CCIiwi6L+Z5a625LuK5aSp5LiN5Y2W6ZKf54K55oi/44CCIjoi6YCZ5a625LuK5aSp5LiN6LOj6ZCY6bue5oi/44CCIiwi6L+Z5a626YWS5bqX5Zyo6L+Z5Lqb5pel5pyf5rKh5pyJ6L+Z5Liq5oi/5Z6L77yM5Y+v6K6i55qE5pyJ77yaezB944CCIjoi6YCZ5a626YWS5bqX5Zyo6YCZ5Lqb5pel5pyf5rKS5pyJ6YCZ5YCL5oi/5Z6L77yM5Y+v6KiC55qE5pyJ77yaezB944CCIiwi6L+Z5a626YWS5bqX5Zyo6L+Z5Lqb5pel5pyf5rKh5pyJ6L+Z5Liq5oi/5Z6L44CC5LiL6Z2i6L+Z5Lqb5Y+v5Lul6K6i77yM54K55LiA5LiL5Y2z5Y+v6aKE6K6i77yaIjoi6YCZ5a626YWS5bqX5Zyo6YCZ5Lqb5pel5pyf5rKS5pyJ6YCZ5YCL5oi/5Z6L44CC5LiL6Z2i6YCZ5Lqb5Y+v5Lul6KiC77yM6bue5LiA5LiL5Y2z5Y+v6aCQ6KiC77yaIiwi6L+Z5a626YWS5bqX55qE5oi/6Ze05LiN5Zyo6L+Z6YeM5Ye65ZSu44CCIjoi6YCZ5a626YWS5bqX55qE5oi/6ZaT5LiN5Zyo6YCZ6KOh5Ye65ZSu44CCIiwi6L+Z5byg5Y2h54mH5rKh6IO95pi+56S677yM6K+35Zyo5a+56K+d6YeM5YaN6Zeu5LiA5qyh44CCIjoi6YCZ5by15Y2h54mH5rKS6IO96aGv56S677yM6KuL5Zyo5bCN6Kmx6KOh5YaN5ZWP5LiA5qyh44CCIiwi6L+Z5pivezB955qE5q2j5byP6aKE6K6i77yM5Yiw5bqX5LuY5qy+77yb5YWl5L2P5pe25Zyo5YmN5Y+w5Ye656S66ZO26KGM5Y2h77yM6L+Z6YeM5LiN5pS25qy+44CCIjoi6YCZ5pivezB955qE5q2j5byP6aCQ6KiC77yM5Yiw5bqX5LuY5qy+77yb5YWl5L2P5pmC5Zyo5YmN6Ie65Ye656S66YqA6KGM5Y2h77yM6YCZ6KOh5LiN5pS25qy+44CCIiwi6L+Z5piv5rWL6K+V546v5aKD77ya5Zyo6L+Z6YeM6aKE6K6i5Y+q5Lya55Sf5oiQ5qih5ouf6K6i5Y2V77yM5LiN5pivezB955qE55yf5a6e6aKE6K6i77yM5Lmf5LiN5LuY5qy+44CCIjoi6YCZ5piv5ris6Kmm55Kw5aKD77ya5Zyo6YCZ6KOh6aCQ6KiC5Y+q5pyD55Sf5oiQ5qih5pOs6KiC5Zau77yM5LiN5pivezB955qE55yf5a+m6aCQ6KiC77yM5Lmf5LiN5LuY5qy+44CCIiwi6L+Z5piv5rWL6K+V6aKE6K6i44CCIjoi6YCZ5piv5ris6Kmm6aCQ6KiC44CCIiwi6L+Z5piv5ryU56S66aKE6K6i77yaezB95rKh5pyJ5pS25Yiw77yM6YWS5bqX5Lmf5rKh5pyJ5Li65L2g5L+d55WZ5oi/6Ze044CCezF9Ijoi6YCZ5piv5ryU56S66aCQ6KiC77yaezB95rKS5pyJ5pS25Yiw77yM6YWS5bqX5Lmf5rKS5pyJ54K65L2g5L+d55WZ5oi/6ZaT44CCezF9Iiwi6L+Z5qyh5a+56K+d6YeM6L+Y5rKh5pyJ6aKE6K6i44CCIjoi6YCZ5qyh5bCN6Kmx6KOh6YKE5rKS5pyJ6aCQ6KiC44CCIiwi6L+Z5qyh5rKh5pyJ6aKE6K6i5oiQ5Yqf77yM5Lmf5rKh5pyJ5omj5qy+44CC6L+Z5q615a+56K+d6YeM55qE6aKE6K6i5bey5Yiw5LiK6ZmQ77ya6K+35YWI5Zyo4oCc5oiR55qE6aKE6K6i4oCd6YeM5Y+W5raI5LiN6ZyA6KaB55qE77yM5YaN6K+V5LiA5qyh44CCIjoi6YCZ5qyh5rKS5pyJ6aCQ6KiC5oiQ5Yqf77yM5Lmf5rKS5pyJ5omj5qy+44CC6YCZ5q615bCN6Kmx6KOh55qE6aCQ6KiC5bey5Yiw5LiK6ZmQ77ya6KuL5YWI5Zyo4oCc5oiR55qE6aCQ6KiC4oCd6KOh5Y+W5raI5LiN6ZyA6KaB55qE77yM5YaN6Kmm5LiA5qyh44CCIiwi6L+Z5qyh5rKh6IO95p+l5Yiw6L+Z5a626YWS5bqX55qE5oi/6Ze077yM56iN5ZCO5YaN6K+V5LiA5qyh44CCIjoi6YCZ5qyh5rKS6IO95p+l5Yiw6YCZ5a626YWS5bqX55qE5oi/6ZaT77yM56iN5b6M5YaN6Kmm5LiA5qyh44CCIiwi6L+Z56yU6aKE6K6i5bey5LiN5YaN5Y2g55So5oi/6Ze044CCIjoi6YCZ562G6aCQ6KiC5bey5LiN5YaN5L2U55So5oi/6ZaT44CCIiwi6L+Z56yU6aKE6K6i5bey5rKh5pyJ5Y+v5Y+W5raI55qE5YaF5a6544CCIjoi6YCZ562G6aCQ6KiC5bey5rKS5pyJ5Y+v5Y+W5raI55qE5YWn5a6544CCIizov5nnrJTpooTorqLlt7Lnu5PmnZ86IumAmeethumgkOioguW3sue1kOadnyIsIui/memHjOS4jeaJo+asvuOAguaPkOS6pOWQjnswfeS8muS4uuS9oOS/neeVmeaIv+mXtO+8jOW5tue7meS9oOS4gOS4quehruiupOeggeOAgiI6IumAmeijoeS4jeaJo+asvuOAguaPkOS6pOW+jHswfeacg+eCuuS9oOS/neeVmeaIv+mWk++8jOS4pue1puS9oOS4gOWAi+eiuuiqjeeivOOAgiIsIui/memHjOS4jeaJo+asvuOAgui/meaYr+a8lOekuu+8muaPkOS6pOWQjuS8muW+l+WIsOehruiupOegge+8jOS9hnswfeS4jeS8muaUtuWIsO+8jOS5n+S4jeS8muS4uuS9oOS/neeVmeaIv+mXtOOAgiI6IumAmeijoeS4jeaJo+asvuOAgumAmeaYr+a8lOekuu+8muaPkOS6pOW+jOacg+W+l+WIsOeiuuiqjeeivO+8jOS9hnswfeS4jeacg+aUtuWIsO+8jOS5n+S4jeacg+eCuuS9oOS/neeVmeaIv+mWk+OAgiIsIui/memHjOS4jeaJo+asvuOAgumihOiuouS8muWcqHswfeeUn+aIkOS4gOeslOWIsOW6l+S7mOasvueahOiuouWNle+8jOW5tue7meS9oOS4gOS4quehruiupOeggeOAgiI6IumAmeijoeS4jeaJo+asvuOAgumgkOioguacg+WcqHswfeeUn+aIkOS4gOethuWIsOW6l+S7mOasvueahOioguWWru+8jOS4pue1puS9oOS4gOWAi+eiuuiqjeeivOOAgiIsIui/memHjOWPquaciemcgOimgemihOS7mOeahOaIv+S7t++8jOi/memHjOWPquiDveiuouWIsOW6l+S7mOasvueahOaIv+mXtOOAgiI6IumAmeijoeWPquaciemcgOimgemgkOS7mOeahOaIv+WDue+8jOmAmeijoeWPquiDveioguWIsOW6l+S7mOasvueahOaIv+mWk+OAgiIsIui/memHjOaXoOazleWFqOWxj+aJk+W8gOOAgiI6IumAmeijoeeEoeazleWFqOWxj+mWi+WVn+OAgiIs6L+Z6YeM5q+P5a626YO95Y+v5Lul5YWN6LS55Y+W5raIOiLpgJnoo6Hmr4/lrrbpg73lj6/ku6XlhY3osrvlj5bmtogiLCLov5nph4zmsqHmnInkvY3kuo7igJx7MH3igJ3miJbpmYTov5HnmoTphZLlupfjgILmjaLkuKrln47luILmiJblm73lrrbor5Xor5XjgIIiOiLpgJnoo6HmspLmnInkvY3mlrzigJx7MH3igJ3miJbpmYTov5HnmoTphZLlupfjgILmj5vlgIvln47luILmiJblnIvlrrboqaboqabjgIIiLCLov5nph4zmsqHmnInlj6/kvY8gezB9IOS6uueahOaIv+WeiyI6IumAmeijoeaykuacieWPr+S9jyB7MH0g5Lq655qE5oi/5Z6LIizov5nph4zmsqHmnInlr7nlupTnmoTphZLlupc6IumAmeijoeaykuacieWwjeaHieeahOmFkuW6lyIs6L+Z6YeM5rKh5pyJ6L+Z5Liq6ZuG5ZuiOiLpgJnoo6HmspLmnInpgJnlgIvpm4blnJgiLCLov5nph4zmsqHmnInov5nlrrbphZLlupfjgIIiOiLpgJnoo6HmspLmnInpgJnlrrbphZLlupfjgIIiLCLov5nph4znmoQgezB9IOWutumFkuW6l++8jOayoeacieS4gOWutuWQjOaXtua7oei2s+i/meS6m+adoeS7tuOAgiI6IumAmeijoeeahCB7MH0g5a626YWS5bqX77yM5rKS5pyJ5LiA5a625ZCM5pmC5ru/6Laz6YCZ5Lqb5qKd5Lu244CCIiwi6L+Z6Ze06ZKf54K55oi/5LuK5aSpIHswfeKAk3sxfSDkuYvpl7TliLDlupfvvIzkvY8gezJ9IOWwj+aXtu+8jOacgOaZmiB7M30g56a75bqX44CCIjoi6YCZ6ZaT6ZCY6bue5oi/5LuK5aSpIHswfeKAk3sxfSDkuYvplpPliLDlupfvvIzkvY8gezJ9IOWwj+aZgu+8jOacgOaZmiB7M30g6Zui5bqX44CCIizov5npobnpmYTliqDmnI3liqHorqLkuI3kuoY6IumAmemghemZhOWKoOacjeWLmeioguS4jeS6hiIs6L+e6YCa5oi/OiLpgKPpgJrmiL8iLOmAgOWHuueZu+W9lToi6YCA5Ye655m75YWlIizpgIDmrL7kuK06IumAgOasvuS4rSIs6YCJ5aGrOiLpgbjloasiLOmAieWlveaXpeacn+eci+S7t+agvDoi6YG45aW95pel5pyf55yL5YO55qC8IizpgInlpb3ml6XmnJ/nnIvkvY/lrr/mgLvku7c6IumBuOWlveaXpeacn+eci+S9j+Wuv+e4veWDuSIs6YCJ5oi/5Z6LOiLpgbjmiL/lnosiLOmAieaLqeWFpeS9j+aXpeacnzoi6YG45pOH5YWl5L2P5pel5pyfIizpgInmi6nmiL/lnos6IumBuOaTh+aIv+WeiyIs6YCJ5oup5pel5pyfOiLpgbjmk4fml6XmnJ8iLOmAieaLqeemu+W6l+aXpeacnzoi6YG45pOH6Zui5bqX5pel5pyfIizpgInml6XmnJ86IumBuOaXpeacnyIs6YCJ6YWS5bqXOiLpgbjphZLlupciLOmCrueusToi6Zu75a2Q6YO15Lu2Iiwi6YKu566x6YeM5rKh5pyJ4oCcQOKAne+8jOivt+Whq+WGmeiDveaUtuWIsOehruiupOS/oeaBr+eahOWcsOWdgOOAgiI6Iumbu+WtkOmDteS7tuijoeaykuacieKAnEDigJ3vvIzoq4vloavlr6vog73mlLbliLDnorroqo3os4foqIrnmoTlnLDlnYDjgIIiLOmDqOWIhuacieeqlzoi6YOo5YiG5pyJ56qXIizphZLlupc6IumFkuW6lyIs6YWS5bqX5YWs5biD55qE5pS/562WOiLphZLlupflhazkvYjnmoTmlL/nrZYiLOmFkuW6l+W6lOmAgDoi6YWS5bqX5oeJ6YCAIizphZLlupfmlLblj5Y6IumFkuW6l+aUtuWPliIsIumFkuW6l+ezu+e7n+eahOa1i+ivleWJr+acrO+8jOi/memHjOeahOmihOiuoumDveS4jeaYr+ecn+WunumihOiuouOAgiI6IumFkuW6l+ezu+e1seeahOa4rOippuWJr+acrO+8jOmAmeijoeeahOmgkOiogumDveS4jeaYr+ecn+WvpumgkOioguOAgiIs6YWS5bqX6K6+5pa9OiLphZLlupfoqK3mlr0iLOmFkuW6l+mZhOWKoOacjeWKoToi6YWS5bqX6ZmE5Yqg5pyN5YuZIizphZLlupfpm4blm6I6IumFkuW6l+mbhuWcmCIs6YeN5paw5pCc57SiOiLph43mlrDmkJzlsIsiLOmHjeivlToi6YeN6KmmIiwi6ZKf54K55oi/IMK3IOS7iuWkqSI6IumQmOm7nuaIvyDCtyDku4rlpKkiLOmXtOaVsDoi6ZaT5pW4IizpmYTliqDmnI3liqE6IumZhOWKoOacjeWLmSIs6ZmE5Yqg5pyN5Yqh5ZKM5L2T6aqMOiLpmYTliqDmnI3li5nlkozpq5TpqZciLOmZhOi/keeahOWFpeS9j+aXpeacnzoi6ZmE6L+R55qE5YWl5L2P5pel5pyfIizpmZDml7bnibnku7c6IumZkOaZgueJueWDuSIs6ZuG5ZuiOiLpm4blnJgiLOmcgOS7mOasvjoi6ZyA5LuY5qy+IizpnIDooaXlt67ku7c6IumcgOijnOW3ruWDuSIs6ZyA6ZqP5L2P5a6/5LiA6LW36K6iOiLpnIDpmqjkvY/lrr/kuIDotbfoqIIiLOmcgOmihOS7mDoi6ZyA6aCQ5LuYIizpnZ7mtLI6Iumdnua0siIsIumdouenr+WkpyB7MH0gbcKyIjoi6Z2i56mN5aSnIHswfSBtwrIiLCLpnaLnp6/lsI8gezB9IG3CsiI6IumdouepjeWwjyB7MH0gbcKyIizpooTorqHliLDlupc6IumgkOioiOWIsOW6lyIs6aKE6K6iOiLpoJDoqIIiLCLpooTorqIgezB9IOmXtCI6IumgkOiogiB7MH0g6ZaTIiwi6aKE6K6iezB9Ijoi6aCQ6KiCezB9Iiwi6aKE6K6iezB977yMezF95Yiw5bqXIjoi6aCQ6KiCezB977yMezF95Yiw5bqXIiwi6aKE6K6iezB955qE5L2P5a6/Ijoi6aCQ6KiCezB955qE5L2P5a6/Iiwi6aKE6K6i5YmN5pyJIHswfSDpobnpnIDopoHmo4Dmn6XvvJp7MX3jgIIiOiLpoJDoqILliY3mnIkgezB9IOmghemcgOimgeaqouafpe+8mnsxfeOAgiIsIumihOiuouWJjeivt+ajgOafpe+8mnswfeOAgiI6IumgkOioguWJjeiri+aqouafpe+8mnswfeOAgiIs6aKE6K6i5bey56Gu6K6kOiLpoJDoqILlt7Lnorroqo0iLOmihOiuouaXtueUqOeahOmCrueusToi6aCQ6KiC5pmC55So55qE6Zu75a2Q6YO15Lu2IizpooTorqLmraXpqqQ6IumgkOioguatpempnyIsIumihOiuoui/mSB7MH0g5a62Ijoi6aCQ6KiC6YCZIHswfSDlrrYiLCLpooTorqLov5kgezB9IOauteS9j+WuvyI6IumgkOiogumAmSB7MH0g5q615L2P5a6/IizpooTorqLov5nkuIDmrrU6IumgkOiogumAmeS4gOautSIs6aKE6K6i6L+Z6Ze05oi/OiLpoJDoqILpgJnplpPmiL8iLCLpooTorqLpnIDopoHloavlhpnlp5PlkI3lkozpgq7nrrHjgIIiOiLpoJDoqILpnIDopoHloavlr6vlp5PlkI3lkozpm7vlrZDpg7Xku7bjgIIiLOmrmOalvOWxgjoi6auY5qiT5bGkIn0sa3U9WyJ6aCIsInpoLUhhbnQiLCJlbiIsImRlIiwiamEiLCJrbyIsImZyIiwiZXMiXSxOZD17emg6IueugOS9k+S4reaWhyIsInpoLUhhbnQiOiLnuYHpq5TkuK3mlociLGVuOiJFbmdsaXNoIixkZToiRGV1dHNjaCIsamE6IuaXpeacrOiqniIsa286Iu2VnOq1reyWtCIsZnI6IkZyYW7Dp2FpcyIsZXM6IkVzcGHDsW9sIn0semU9e3poOiJ6aC1DTiIsInpoLUhhbnQiOiJ6aC1UVyIsZW46ImVuLUdCIixkZToiZGUtREUiLGphOiJqYS1KUCIsa286ImtvLUtSIixmcjoiZnItRlIiLGVzOiJlcy1FUyJ9LERhPWU9PntpZih0eXBlb2YgZSE9InN0cmluZyJ8fCFlLnRyaW0oKSlyZXR1cm47Y29uc3QgdD1lLnRyaW0oKS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL18vZywiLSIpO2lmKHQ9PT0iemgifHx0LnN0YXJ0c1dpdGgoInpoLSIpKXJldHVybi8oXnwtKShoYW50fHR3fGhrfG1vKSgtfCQpLy50ZXN0KHQpPyJ6aC1IYW50IjoiemgiO2Zvcihjb25zdCBuIG9mWyJkZSIsImphIiwia28iLCJmciIsImVzIl0paWYodD09PW58fHQuc3RhcnRzV2l0aChgJHtufS1gKSlyZXR1cm4gbjtyZXR1cm4iZW4ifSxQUz1lPT57Y29uc3QgdD1uZXcgTWFwLG49W107Zm9yKGNvbnN0W28sc11vZiBlKXtpZihzPT09dm9pZCAwfHwhbyljb250aW51ZTtpZighL1x7XGQrXH0vLnRlc3Qobykpe3Quc2V0KG8scyk7Y29udGludWV9Y29uc3Qgcj1bXSxpPW8uc3BsaXQoLyhce1xkK1x9KS8pLm1hcChjPT57Y29uc3QgaD0vXlx7KFxkKylcfSQvLmV4ZWMoYyk7cmV0dXJuIGg/KHIucHVzaChOdW1iZXIoaFsxXSkpLCIoW1xcc1xcU10qPykiKTpjLnJlcGxhY2UoL1suKis/XiR7fSgpfFtcXVxcXS9nLCJcXCQmIil9KS5qb2luKCIiKTtuLnB1c2goe3JlOm5ldyBSZWdFeHAoYF4ke2l9JGApLG9yZGVyOnIsdG86cyx3ZWlnaHQ6by5yZXBsYWNlKC9ce1xkK1x9L2csIiIpLmxlbmd0aH0pfXJldHVybiBuLnNvcnQoKG8scyk9PnMud2VpZ2h0LW8ud2VpZ2h0KSx7ZXhhY3Q6dCxwYXR0ZXJuczpufX0sUGQ9bmV3IE1hcCx4Uz1lPT57Y29uc3QgdD1QZC5nZXQoZSk7aWYodClyZXR1cm4gdDtjb25zdCBuPWU9PT0iemgtSGFudCI/T2JqZWN0LmVudHJpZXMoTlMpOk9iamVjdC5lbnRyaWVzKENTKS5tYXAoKFtzLHJdKT0+W3MscltlXV0pLG89UFMobik7cmV0dXJuIFBkLnNldChlLG8pLG99LG1zPW5ldyBNYXAsSVM9KGUsdCk9PntpZighdClyZXR1cm4gdDtjb25zdCBuPWAke2V9XDAke3R9YCxvPW1zLmdldChuKTtpZihvIT09dm9pZCAwKXJldHVybiBvO2NvbnN0e2V4YWN0OnMscGF0dGVybnM6cn09eFMoZSk7bGV0IGk9cy5nZXQodCk7aWYoaT09PXZvaWQgMClmb3IoY29uc3QgaCBvZiByKXtjb25zdCBkPWgucmUuZXhlYyh0KTtpZighZCljb250aW51ZTtjb25zdCB1PW5ldyBNYXAoaC5vcmRlci5tYXAoKHAsbSk9PltwLGRbbSsxXT8/IiJdKSk7aT1oLnRvLnJlcGxhY2UoL1x7KFxkKylcfS9nLChwLG0pPT51LmdldChOdW1iZXIobSkpPz8iIik7YnJlYWt9Y29uc3QgYz1pPz90O3JldHVybiBtcy5zaXplPjRlMyYmbXMuY2xlYXIoKSxtcy5zZXQobixjKSxjfTtsZXQgeGQ9IiI7Y29uc3QgVGc9KGUsdCxuPWRvY3VtZW50LmRvY3VtZW50RWxlbWVudCk9PntpZighZSlyZXR1cm47KGUudGhlbWU9PT0ibGlnaHQifHxlLnRoZW1lPT09ImRhcmsiKSYmdC5hcHBseURvY3VtZW50VGhlbWUoZS50aGVtZSk7Y29uc3Qgbz1lLnN0eWxlcz8udmFyaWFibGVzO28mJnR5cGVvZiBvPT0ib2JqZWN0IiYmdC5hcHBseUhvc3RTdHlsZVZhcmlhYmxlcyhvKTtjb25zdCBzPWUuc3R5bGVzPy5jc3M/LmZvbnRzO3R5cGVvZiBzPT0ic3RyaW5nIiYmcyYmcyE9PXhkJiYodC5hcHBseUhvc3RGb250cyhzKSx4ZD1zKTtjb25zdCByPWUuc2FmZUFyZWFJbnNldHM7aWYocilmb3IoY29uc3QgaSBvZlsidG9wIiwicmlnaHQiLCJib3R0b20iLCJsZWZ0Il0pe2NvbnN0IGM9TnVtYmVyKHJbaV0/PzApO24uc3R5bGUuc2V0UHJvcGVydHkoYC0taW5zZXQtJHtpfWAsYCR7TnVtYmVyLmlzRmluaXRlKGMpJiZjPjA/YzowfXB4YCl9fSxBZz1lPT5lLnJlcGxhY2UoL1smPD4iJ10vZyx0PT4oeyImIjoiJmFtcDsiLCI8IjoiJmx0OyIsIj4iOiImZ3Q7IiwnIic6IiZxdW90OyIsIiciOiImIzM5OyJ9KVt0XSksRVM9Jzxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTEwIDMuNSA1LjUgOCAxMCAxMi41IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjgiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPicsUlM9Jzxzdmcgdmlld0JveD0iMCAwIDE2IDE2IiBhcmlhLWhpZGRlbj0idHJ1ZSI+PHBhdGggZD0iTTYgMy41IDEwLjUgOCA2IDEyLjUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjEuOCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+JyxPUz0nPHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMy41IDYgOCAxMC41IDEyLjUgNiIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMS44IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4nLE1TPSc8c3ZnIHZpZXdCb3g9IjAgMCAxNiAxNiIgYXJpYS1oaWRkZW49InRydWUiPjxwYXRoIGQ9Ik05LjUgMi41aDR2NE02LjUgMTMuNWgtNHYtNE0xMy41IDIuNSA5IDdNMi41IDEzLjUgNyA5IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIxLjYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPjwvc3ZnPicsWlM9ZT0+e2NvbnN0IHQ9TWF0aC5tYXgoMCxNYXRoLmZsb29yKGUudG90YWwpKSxuPU1hdGgubWF4KDAsTWF0aC5mbG9vcihlLmZyb20pKSxvPU1hdGgubWF4KDAsTWF0aC5mbG9vcihlLmNvdW50KSkscz1uPjAscj1uK288dDtpZighcyYmIXIpcmV0dXJuIiI7Y29uc3QgaT1lLm5vdW4/YCAke0FnKGUubm91bil9YDoiIixjPW8/YCR7bisxfeKAkyR7bitvfSBvZiAke3R9YDpgMCBvZiAke3R9YDtyZXR1cm5gPG5hdiBjbGFzcz0iY2stcGFnZXIiIGFyaWEtbGFiZWw9IlBhZ2VzIj48YnV0dG9uIGNsYXNzPSJjay1wYWdlci1idG4iIHR5cGU9ImJ1dHRvbiIgJHtlLnByZXZ9JHtzPyIiOiIgZGlzYWJsZWQifSBhcmlhLWxhYmVsPSJQcmV2aW91cyR7aX0iPiR7RVN9PHNwYW4+UHJldmlvdXM8L3NwYW4+PC9idXR0b24+PHNwYW4gY2xhc3M9ImNrLXBhZ2VyLW4iPiR7Y308L3NwYW4+PGJ1dHRvbiBjbGFzcz0iY2stcGFnZXItYnRuIiB0eXBlPSJidXR0b24iICR7ZS5uZXh0fSR7cj8iIjoiIGRpc2FibGVkIn0gYXJpYS1sYWJlbD0iTmV4dCR7aX0iPjxzcGFuPk5leHQ8L3NwYW4+JHtSU308L2J1dHRvbj48L25hdj4ke2UuYWxsP2A8YnV0dG9uIGNsYXNzPSJjay1wYWdlci1hbGwiIHR5cGU9ImJ1dHRvbiIgJHtlLmFsbH0+PHNwYW4+VmlldyBhbGwgJHt0fTwvc3Bhbj4ke01TfTwvYnV0dG9uPmA6IiJ9YH0scVM9KGUsdCk9PmA8YnV0dG9uIGNsYXNzPSJjay1wYWdlci1hbGwiIHR5cGU9ImJ1dHRvbiIgJHt0fT48c3BhbiBkYXRhLWxhYmVsPiR7QWcoZSl9PC9zcGFuPiR7T1N9PC9idXR0b24+YCxJZT1uZXcgdnUoe25hbWU6ImhvdGVsLXN0b3JlZnJvbnQiLHZlcnNpb246IjEuMC4wIn0se29wZW5MaW5rczp7fSxhdmFpbGFibGVEaXNwbGF5TW9kZXM6WyJpbmxpbmUiLCJmdWxsc2NyZWVuIl19KSx6Zz17YXBwbHlEb2N1bWVudFRoZW1lOmF3LGFwcGx5SG9zdFN0eWxlVmFyaWFibGVzOml3LGFwcGx5SG9zdEZvbnRzOmN3fSxxPWU9PmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGUpLGw9ZT0+U3RyaW5nKGU/PyIiKS5yZXBsYWNlKC9bJjw+IiddL2csdD0+dD09PSImIj8iJmFtcDsiOnQ9PT0iPCI/IiZsdDsiOnQ9PT0iPiI/IiZndDsiOnQ9PT0nIic/IiZxdW90OyI6IiYjMzk7Iik7bGV0IFRlPSIiLEVzPSIiLExhPSIiO2NvbnN0IERTPSgpPT5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZGF0YXNldC50aGVtZT09PSJkYXJrIix5dT0oKT0+e2NvbnN0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImJyYW5kIik7aWYoIWV8fCFFcylyZXR1cm47Y29uc3QgdD1EUygpJiYhIUxhLG49dD9MYTpFcztlLmdldEF0dHJpYnV0ZSgic3JjIikhPT1uJiYoZS5zcmM9biksZS5jbGFzc0xpc3QudG9nZ2xlKCJkYXJrLWFydCIsdCl9O2xldCBTYT0hMSxCYT0iIixIYT0iIiwkdT17fSx3dT0hMSxDZz0iIixqPXtjaGVja0luOiIiLGNoZWNrT3V0OiIiLGd1ZXN0czoyfSxXPTE7Y29uc3QgSnQ9NTtsZXQgc2U9bnVsbCwkdD1bXSxodD0iIixnZT1bXSx4PW51bGwsUnM9MDtjb25zdCBMUz1uZXcgU2V0KFsiZm9yZ2V0UHJlZmVyZW5jZXMiLCJhZGRUb1RyaXAiLCJjbGVhclRyaXAiLCJyZXF1ZXN0Qm9va2luZyIsImNhbmNlbEJvb2tpbmciLCJjaGFuZ2VCb29raW5nIiwic2lnbkluIiwic2lnbk91dCJdKSxSdD1lPT57Y29uc3QgdD1TdHJpbmcoZT8udmlldz8/IiIpO3JldHVybiB0PT09ImhvdGVsInx8dD09PSJuby1yb29tcyJ8fHQ9PT0ibmVlZHMtZGF0ZXMiP2Bob3RlbDoke2UuaG90ZWw/LmlkPz8iIn1gOnQ9PT0iZXh0cmFzIj9lLmZvckJvb2tpbmc/YGV4dHJhczpib29raW5nOiR7ZS5mb3JCb29raW5nLmNvbmZpcm1hdGlvbkNvZGV9YDpgZXh0cmFzOiR7ZS5ob3RlbD8uaWQ/PyIifWA6dD09PSJwb2xpY3kifHx0PT09InBvbGljaWVzInx8dD09PSJwb2xpY3ktbWlzc2luZyI/YHBvbGljeToke2UuaG90ZWw/LmlkPz8iIn06JHtlLnRvcGljPz8iIn1gOnQ9PT0iY2FuY2VsbGF0aW9uLXByZXZpZXciP2BjYW5jZWw6JHtlLmJvb2tpbmc/LmNvbmZpcm1hdGlvbkNvZGU/PyIifWA6dD09PSJjaGFuZ2UtcHJldmlldyI/YGNoYW5nZToke2UuY29uZmlybWF0aW9uQ29kZT8/ZS5ib29raW5nPy5jb25maXJtYXRpb25Db2RlPz8iIn1gOnQ9PT0iZGVzdGluYXRpb25zIj9gZGVzdGluYXRpb25zOiR7ZS5zY29wZT8ubmFtZT8/IiJ9YDp0PT09ImhvdGVscyJ8fHQ9PT0ibm8taG90ZWxzIj9gaG90ZWxzOiR7ZS5hc2s/LmNpdHk/PyIifToke2UuYXNrPy5xdWVyeT8/ZS5xdWVyeT8/IiJ9YDp0fSxPbj1lPT57IXh8fEhTLmhhcyhTdHJpbmcoeC52aWV3KSl8fFJ0KGUpIT09UnQoeCkmJihnZT1bLi4uZ2Use3BheWxvYWQ6eCx2ZXJzaW9uOlJzfV0uc2xpY2UoLTYpKX0sQlM9ZT0+e2NvbnN0IHQ9U3RyaW5nKGU/LnZpZXc/PyIiKSxuPWU/LnN0YXk/LmNoZWNrSW4/e2NoZWNrSW46ZS5zdGF5LmNoZWNrSW4sY2hlY2tPdXQ6ZS5zdGF5LmNoZWNrT3V0LGd1ZXN0czplLnN0YXkuZ3Vlc3RzPz8yfTp7fTtpZih0PT09InRyaXAiKXJldHVybntrZXk6InZpZXdUcmlwIixhcmdzOnt9fTtpZih0PT09ImJvb2tpbmdzIilyZXR1cm57a2V5OiJsaXN0Qm9va2luZ3MiLGFyZ3M6e319O2lmKCh0PT09ImhvdGVscyJ8fHQ9PT0iZGVzdGluYXRpb25zInx8dD09PSJuby1ob3RlbHMiJiZlLmFzaykmJmUuYXNrKXJldHVybntrZXk6Imxpc3RIb3RlbHMiLGFyZ3M6ey4uLmUuYXNrfX07aWYodD09PSJjb21wYXJpc29uIiYmQXJyYXkuaXNBcnJheShlLmNvbHVtbnMpKXJldHVybntrZXk6ImNvbXBhcmUiLGFyZ3M6ey4uLm4sLi4uZS50aXRsZT97dGl0bGU6ZS50aXRsZX06e30sLi4uZS5yZWNvbW1lbmRlZD97cmVjb21tZW5kZWQ6ZS5yZWNvbW1lbmRlZH06e30sZW50cmllczplLmNvbHVtbnMubWFwKG89Pih7aG90ZWw6by5ob3RlbD8uaWQsLi4uby5iZXN0Rm9yP3tiZXN0Rm9yOm8uYmVzdEZvcn06e30sLi4uby5wcm9zPy5sZW5ndGg/e3Byb3M6by5wcm9zfTp7fSwuLi5vLmNvbnM/Lmxlbmd0aD97Y29uczpvLmNvbnN9Ont9fSkpfX07aWYoKHQ9PT0iaG90ZWwifHx0PT09Im5vLXJvb21zIikmJmUuaG90ZWw/LmlkKXJldHVybntrZXk6ImdldEhvdGVsIixhcmdzOntob3RlbDplLmhvdGVsLmlkLC4uLm4sLi4uZS5yb29tc193YW50ZWQ/e3Jvb21zOmUucm9vbXNfd2FudGVkfTp7fX19O2lmKHQ9PT0iZXh0cmFzIiYmZS5mb3JCb29raW5nKXJldHVybntrZXk6Imxpc3RFeHRyYXMiLGFyZ3M6cHQoU3RyaW5nKGUuZm9yQm9va2luZy5jb25maXJtYXRpb25Db2RlKSl9O2lmKHQ9PT0iZXh0cmFzIiYmZS5ob3RlbD8uaWQpcmV0dXJue2tleToibGlzdEV4dHJhcyIsYXJnczp7aG90ZWw6ZS5ob3RlbC5pZCwuLi5ufX07aWYodD09PSJpdGluZXJhcnkiKXJldHVybntrZXk6Iml0aW5lcmFyeSIsYXJnczp7dGl0bGU6ZS50aXRsZSwuLi5uLGRheXM6KGUuZGF5cz8/W10pLm1hcChvPT4oe2xhYmVsOm8ubGFiZWwsLi4uby5ub3RlP3tub3RlOm8ubm90ZX06e30saXRlbXM6KG8uaXRlbXM/P1tdKS5tYXAocz0+cy5pZCl9KSl9fX0sSWQ9ZT0+e2dlPWdlLmZpbHRlcih0PT4hZS5pbmNsdWRlcyhTdHJpbmcodC5wYXlsb2FkPy52aWV3KSkpfSxIUz1uZXcgU2V0KFsiZmluZC1ib29raW5nIiwiYm9va2luZyIsImNhbmNlbGxlZCIsImNoYW5nZWQiLCJlcnJvciIsIm5lZWRzLWd1ZXN0Iiwic2lnbmVkLW91dCIsIm1lbWJlci1zaWduLWluIiwibWVtYmVyLW5vdC1mb3VuZCJdKSxOZz0oZSx0KT0+e2NvbnN0IG49Yz0+U3RyaW5nKGM/PyIiKS50b0xvd2VyQ2FzZSgpPT09dC50b0xvd2VyQ2FzZSgpLG89Wy4uLmU/LmhvdGVscz8/W10sLi4uZT8uaG90ZWw/W2UuaG90ZWxdOltdXSxzPW8uZmluZChjPT5uKGMuY2l0eSkpO2lmKHMpcmV0dXJuIHZ0KHMpO2NvbnN0IHI9by5maW5kKGM9Pm4oYy5jb3VudHJ5KSk7aWYocilyZXR1cm4gSGUoci5jb3VudHJ5LHIuY291bnRyeUNvZGUpO2NvbnN0IGk9KGU/LnBsYWNlcz8/W10pLmZpbmQoYz0+bihjLnBsYWNlKSk7cmV0dXJuIGk/aS5uYW1lcz9PZShpLmxhYmVsLGkubmFtZXMpOkhlKGkubGFiZWwsaS5jb2RlKTp0fSxQZz1lPT57Y29uc3QgdD1TdHJpbmcoZT8udmlldz8/IiIpO2lmKHQ9PT0iY29tcGFyaXNvbiIpcmV0dXJuIGEoYCR7KGUuY29sdW1ucz8/W10pLmxlbmd0aH0gc2lkZSBieSBzaWRlYCxgJHsoZS5jb2x1bW5zPz9bXSkubGVuZ3RofSDlrrblr7nmr5RgKTtpZih0PT09Iml0aW5lcmFyeSIpcmV0dXJuIGEoInRoZSBwbGFuIiwi6KGM56iL6K6h5YiSIik7aWYodD09PSJuby1ob3RlbHMiKXJldHVybiBhKCJ0aGUgc2VhcmNoIiwi5pCc57SiIik7aWYodD09PSJkZXN0aW5hdGlvbnMiKXJldHVybiBlLnNjb3BlPy5uYW1lP0hlKGUuc2NvcGUubmFtZSxlLnNjb3BlLmNvZGUpOmEoImFsbCBkZXN0aW5hdGlvbnMiLCLlhajpg6jnm67nmoTlnLAiKTtpZih0PT09ImhvdGVscyIpe2lmKGUuYXNrPy5jaXR5KXJldHVybiBOZyhlLFN0cmluZyhlLmFzay5jaXR5KSk7Y29uc3Qgbj1lLmhvdGVscz8/W107cmV0dXJuWy4uLm5ldyBTZXQobi5tYXAocz0+U3RyaW5nKHMuY2l0eSkpKV0ubGVuZ3RoPT09MT92dChuWzBdKTphKGAke2UudG90YWw/PzB9IGhvdGVsc2AsYCR7ZS50b3RhbD8/MH0g5a626YWS5bqXYCl9cmV0dXJuIHQ9PT0iaG90ZWwifHx0PT09Im5vLXJvb21zInx8dD09PSJuZWVkcy1kYXRlcyI/ZS5ob3RlbD8ubmFtZT9IKGUuaG90ZWwpOmEoInRoZSBob3RlbCIsIumFkuW6lyIpOnQ9PT0iY2FuY2VsbGF0aW9uLXByZXZpZXciP2EoInRoZSBjYW5jZWxsYXRpb24iLCLlj5bmtogiKTp0PT09ImNoYW5nZS1wcmV2aWV3Ij9hKCJ0aGUgY2hhbmdlIiwi5L+u5pS5Iik6dD09PSJtZW1iZXIiP2EoInlvdXIgbWVtYmVyc2hpcCIsIuS8muWRmCIpOnQ9PT0iZXh0cmFzIj9lLmZvckJvb2tpbmc/YShgYWRkLW9ucyBmb3IgJHtlLmZvckJvb2tpbmcuY29uZmlybWF0aW9uQ29kZX1gLGAke2UuZm9yQm9va2luZy5jb25maXJtYXRpb25Db2RlfSDnmoTpmYTliqDmnI3liqFgKTplLmhvdGVsPy5uYW1lP2EoYCR7SChlLmhvdGVsKX0gYWRkLW9uc2AsYCR7SChlLmhvdGVsKX3pmYTliqDmnI3liqFgKTphKCJ0aGUgaG90ZWwgYWRkLW9ucyIsIumFkuW6l+mZhOWKoOacjeWKoSIpOnQ9PT0idHJpcCI/YSgidGhlIHRyaXAiLCLooYznqIsiKTp0PT09ImJvb2tpbmdzIj9hKCJ5b3VyIGJvb2tpbmdzIiwi5oiR55qE6aKE6K6iIik6dD09PSJwb2xpY3kifHx0PT09InBvbGljaWVzIj9hKCJ0aGUgcG9saWNpZXMiLCLmlL/nrZYiKTphKCJiYWNrIiwi6L+U5ZueIil9LHhnPSgpPT57Y29uc3QgZT1xKCJiYWNrYnRuIiksdD1nZS5hdCgtMSk7ZS5oaWRkZW49IXQsdCYmKGUuaW5uZXJIVE1MPWAke0kuY2hldkx9PHNwYW4+JHtsKFBnKHQucGF5bG9hZCkpfTwvc3Bhbj5gKSxJZygpfSxGUz17aG90ZWxzOjEsaG90ZWw6Miwibm8tcm9vbXMiOjIsIm5lZWRzLWRhdGVzIjoyLHRyaXA6MywibmVlZHMtZ3Vlc3QiOjMsYm9va2luZzo0fSxVUz1lPT57bGV0IHQ9RlNbU3RyaW5nKGU/LnZpZXc/PyIiKV0/PzA7ZT8udmlldz09PSJ0cmlwIiYmIShlLmxpbmVzPz9bXSkubGVuZ3RoJiYodD0wKSxlPy52aWV3PT09ImhvdGVscyImJiEoZS5ob3RlbHM/P1tdKS5sZW5ndGgmJih0PTApO2NvbnN0IG49ZT8udmlldz09PSJib29raW5nIiYmZT8uYm9va2luZz8uc3RhdHVzPT09ImF3YWl0aW5nLXBheW1lbnQiO24mJih0PTMpLGU/Lm9wZW5lZCYmIW4mJih0PTApLHEoImZsb3czIikudGV4dENvbnRlbnQ9bj9hKCJQYXkiLCLku5jmrL4iKTphKCJCb29rIiwi6aKE6K6iIik7Y29uc3Qgbz1xKCJmbG93Iik7by5oaWRkZW49IXQ7Zm9yKGNvbnN0IHMgb2Ygby5xdWVyeVNlbGVjdG9yQWxsKCJsaSIpKXtjb25zdCByPU51bWJlcihzLmRhdGFzZXQuc3RlcCk7cy5jbGFzc0xpc3QudG9nZ2xlKCJkb25lIixyPHQpLHI9PT10P3Muc2V0QXR0cmlidXRlKCJhcmlhLWN1cnJlbnQiLCJzdGVwIik6cy5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtY3VycmVudCIpfUlnKCl9LElnPSgpPT57cSgic3ViaGVhZCIpLmhpZGRlbj1xKCJiYWNrYnRuIikuaGlkZGVuJiZxKCJmbG93IikuaGlkZGVufTtsZXQgWXQ9IiIsRmE9IiIsT3Q9MCxKbj0hMSxmcz0iIjtjb25zdCBFZz1lPT57Y29uc3QgdD1lPy5bImN1cmxlc3MvdHJpcCJdO2lmKCF0KXJldHVybjtjb25zdCBuPXR5cGVvZiB0LmZyb209PSJzdHJpbmciP3QuZnJvbToiIjtuJiZmcyYmbiE9PWZzfHwobiYmIWZzJiYoZnM9biksdHlwZW9mIHQudHJpcElkPT0ic3RyaW5nIiYmdC50cmlwSWQmJihGYT10LnRyaXBJZCksT3Q9TnVtYmVyKHQuY291bnQ/PzApLEFycmF5LmlzQXJyYXkodC5saW5lcykmJigkdD10LmxpbmVzLEpuPSEwKSl9LFJnPWU9PkZhP3suLi5lLHRyaXA6RmF9OmUsT2c9bmV3IE1hcCxWUz1lPT57Y29uc3QgdD1bZT8uYm9va2luZywuLi5BcnJheS5pc0FycmF5KGU/LmJvb2tpbmdzKT9lLmJvb2tpbmdzOltdXTtmb3IoY29uc3QgbiBvZiB0KW4/LmNvbmZpcm1hdGlvbkNvZGUmJm4/Lmd1ZXN0Py5lbWFpbCYmT2cuc2V0KFN0cmluZyhuLmNvbmZpcm1hdGlvbkNvZGUpLnRvVXBwZXJDYXNlKCksU3RyaW5nKG4uZ3Vlc3QuZW1haWwpKX0scHQ9ZT0+e2NvbnN0IHQ9T2cuZ2V0KGUudG9VcHBlckNhc2UoKSk7cmV0dXJuIHQ/e2Jvb2tpbmc6ZSxlbWFpbDp0fTp7Ym9va2luZzplfX0sTWc9ZT0+JHVbZV0/PyIiLHNzPWU9PiEhJHVbZV0sV1M9c3M7bGV0IFpnPSJob2xkIixTdT0hMSxxZz0hMSxmZT1udWxsLGZ0PSIiO2NvbnN0IE10PWU9PmZlJiZlP2ZlLnN1cHBsaWVycy5maW5kKHQ9PnQuaWQ9PT1lKTp2b2lkIDAsS2U9ZT0+e2NvbnN0IHQ9TXQoZSk7aWYoIXQpcmV0dXJue25hbWU6VGUsYm9va2luZ01vZGU6WmcsZGVtbzp3dSxzYW5kYm94OlN1LHBob25lUmVxdWlyZWQ6cWcsZXh0cmFzOiEwLGNoYW5nZXM6ITB9O2NvbnN0IG49dC5jYXBhYmlsaXRpZXM/P3t9O3JldHVybntuYW1lOlN0cmluZyh0Lm5hbWUpLGJvb2tpbmdNb2RlOm4uYm9va2luZz09PSJwYXktYXQtaG90ZWwiPyJwYXktYXQtaG90ZWwiOiJob2xkIixkZW1vOnQubW9kZSE9PSJsaXZlIixzYW5kYm94OnQubW9kZT09PSJzYW5kYm94IixwaG9uZVJlcXVpcmVkOiEhbi5yZXF1aXJlc1Bob25lLGV4dHJhczpuLmV4dHJhcyE9PSExLGNoYW5nZXM6bi5jaGFuZ2VzIT09ITF9fSxCbj1lPT57Y29uc3QgdD1KUyhlKSxuPU10KGU/LnN1cHBsaWVyKTtpZighbilyZXR1cm4gdDtjb25zdCBvPVN0cmluZyhuLm5hbWUpO3JldHVybiB0JiZ0IT09bz9gJHtvfSDCtyAke3R9YDpvfSxFZD0oKT0+KGZlP2ZlLnN1cHBsaWVycy5tYXAoZT0+ZS5jYXBhYmlsaXRpZXM/LmNvZGVQcmVmaXgpLmZpbHRlcihCb29sZWFuKTpIYT9bSGFdOltdKS5tYXAoZT0+YCR7ZX0t4oCmYCkuam9pbigiIG9yICIpLF91PWU9PmZlP1suLi5uZXcgU2V0KGUubWFwKHQ9PlN0cmluZyh0LnN1cHBsaWVyPz8iIikpLmZpbHRlcihCb29sZWFuKSldOltdO2xldCB4bj0hMTtjb25zdCBSZD1lPT57eG49ZSxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIuY2FyZCIpPy5jbGFzc0xpc3QudG9nZ2xlKCJidXN5IixlKX07bGV0IE9zPTAsRGc9IiIsTGc9IiI7Y29uc3QgbXQ9KCk9Pntjb25zdCBlPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIi5oZWFkIik7aWYoIWUpcmV0dXJuO2NvbnN0IHQ9KCk9PmUuc2Nyb2xsSW50b1ZpZXcoe2Jsb2NrOiJuZWFyZXN0IixpbmxpbmU6Im5lYXJlc3QifSk7dCgpLHNldFRpbWVvdXQodCwxODApfSxaPShlLHQ9e30sbj17fSk9Pntjb25zdCBvPU1nKGUpO2lmKCFvKXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoYG5vIHRvb2wgZm9yICR7ZX1gKSk7aWYoeG4pcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtSZCghMCk7Y29uc3Qgcz1PcztyZXR1cm4gSWUuY2FsbFNlcnZlclRvb2woe25hbWU6byxhcmd1bWVudHM6UmcodCl9KS5maW5hbGx5KCgpPT5SZCghMSkpLnRoZW4ocj0+e0VnKHI/Ll9tZXRhKTtjb25zdCBpPXI/LnN0cnVjdHVyZWRDb250ZW50LGM9aSYmbi5mb2xkP24uZm9sZChpKTppLGg9TFMuaGFzKGUpJiZjJiZjLnZpZXchPT0iZXJyb3IiO2lmKHM9PT1PcyYmYyl7RGc9aT9KU09OLnN0cmluZ2lmeShpKToiIixMZz1KU09OLnN0cmluZ2lmeShjKTtjb25zdCBkPVJ0KGMpIT09UnQoeCk7ZCYmKE09bnVsbCksbi5wdXNoIT09ITEmJiFuLnN0YXkmJk9uKGMpLGgmJihScys9MSksYy52aWV3PT09ImJvb2tpbmciJiYoSWQoWyJ0cmlwIiwibmVlZHMtZGF0ZXMiLCJuZWVkcy1ndWVzdCJdKSxBcnJheS5pc0FycmF5KGMuZmFpbGVkKSYmYy5mYWlsZWQubGVuZ3RofHwoQ2U9bnVsbCkpLChjLnZpZXc9PT0iY2FuY2VsbGVkInx8Yy52aWV3PT09ImNoYW5nZWQiKSYmSWQoWyJjYW5jZWxsYXRpb24tcHJldmlldyIsImNoYW5nZS1wcmV2aWV3Il0pLG4uc3RheSYmYy52aWV3PT09InRyaXAiJiZ4PyhKbnx8KCR0PWMubGluZXM/P1tdKSxPdD1Kbj9PdDokdC5sZW5ndGgsd2UoeCkpOih3ZShjKSxkJiZtdCgpKX1lbHNlIGgmJihScys9MSk7cmV0dXJuIEtTKHIsbi5ub3RlKSxyfSl9LEtTPShlLHQpPT57Y29uc3Qgbj0oZT8uY29udGVudD8/W10pLmZpbmQobz0+bz8udHlwZT09PSJ0ZXh0Iik/LnRleHQ7IW58fCFJZS5nZXRIb3N0Q2FwYWJpbGl0aWVzKCk/LnVwZGF0ZU1vZGVsQ29udGV4dHx8SWUudXBkYXRlTW9kZWxDb250ZXh0KHtjb250ZW50Olt7dHlwZToidGV4dCIsdGV4dDp0P2Ake3R9ICR7U3RyaW5nKG4pfWA6U3RyaW5nKG4pfV19KS5jYXRjaCgoKT0+e30pfTtsZXQgdWE9ITE7Y29uc3QgR1M9IihUaGUgY2FyZCBwcmljZWQgaXRzIG93biBkZWZhdWx0IGRhdGVzLCB0b25pZ2h0LCB0byBzaG93IHRoZSByb29tczsgdGhlIGd1ZXN0IGhhcyBub3QgY2hvc2VuIHRoZW0uKSIsX3Q9ZT0+e2xldCB0PTA7Zm9yKGxldCBuPTA7bjxlLmxlbmd0aDtuKz0xKXQ9KHQqMzErZS5jaGFyQ29kZUF0KG4pKSUzNjA7cmV0dXJuYC0tc2hvdC1hOmhzbCgke3R9IDQyJSAzNCUpOy0tc2hvdC1iOmhzbCgkeyh0KzM4KSUzNjB9IDQ2JSAyMiUpYH0sanQ9KGUsdCk9Pntjb25zdCBuPVN0cmluZyhlPz8iIiksbz1jbi50ZXN0KG4pLHM9bChPZShuLHQpLnJlcGxhY2UoY24sIiIpLnJlcGxhY2UoLy0vZywi4oCRIikpO3JldHVybiBvP2A8c3BhbiBjbGFzcz0ic2ltIj4ke2woYSgiU2ltdWxhdGVkIiwi5qih5oufIikpfTwvc3Bhbj4ke3N9YDpzfSxjbj0vXlxzKlvjgJBcW11ccyoo5qih5ouffHNpbXVsYXRlZHx0ZXN0KVxzKlvjgJFcXV1ccyovaSxPZT0oZSx0KT0+e2NvbnN0IG49U3RyaW5nKGU/PyIiKTtpZighdHx8dHlwZW9mIHQhPSJvYmplY3QiKXJldHVybiBuO2NvbnN0IG89cz0+dHlwZW9mIHRbc109PSJzdHJpbmciJiZ0W3NdP1N0cmluZyh0W3NdKTp2b2lkIDA7cmV0dXJuIG8oeik/Pyh6PT09InpoLUhhbnQiP28oInpoIik6dm9pZCAwKT8/KHo9PT0iemgifHx6PT09InpoLUhhbnQifHx6PT09ImVuIj92b2lkIDA6bygiZW4iKSk/P259LEg9ZT0+T2UoZT8ubmFtZSxlPy5uYW1lcz8ubmFtZSkucmVwbGFjZShjbiwiIiksdnQ9ZT0+T2UoZT8uY2l0eSxlPy5uYW1lcz8uY2l0eSksZGE9ZT0+ZT8uYXJlYT9PZShlLmFyZWEsZT8ubmFtZXM/LmFyZWEpOiIiLEpTPWU9PmU/LmJyYW5kP09lKGUuYnJhbmQsZT8ubmFtZXM/LmJyYW5kKToiIixvdD1lPT5PZShlPy5ob3RlbE5hbWUsZT8uaG90ZWxOYW1lcykucmVwbGFjZShjbiwiIik7bGV0IF9hPXtsYW5nOiIifTtjb25zdCBIZT0oZSx0KT0+e2NvbnN0IG49U3RyaW5nKGU/PyIiKTtpZih0eXBlb2YgdCE9InN0cmluZyJ8fCEvXltBLVpdezJ9JC8udGVzdCh0KXx8ej09PSJlbiImJm4mJiEvW1x1MzQwMC1cdTlmZmZdLy50ZXN0KG4pKXJldHVybiBuO3RyeXtyZXR1cm4gX2EubGFuZyE9PXomJihfYT17bGFuZzp6LG5hbWVzOm5ldyBJbnRsLkRpc3BsYXlOYW1lcyhbemVbel1dLHt0eXBlOiJyZWdpb24ifSl9KSxfYS5uYW1lcz8ub2YodCk/P259Y2F0Y2h7cmV0dXJuIG59fSxZUz17QXNpYTpbIkFzaWEiLCLkuprmtLIiXSwiTWlkZGxlIEVhc3QiOlsiTWlkZGxlIEVhc3QiLCLkuK3kuJwiXSxFdXJvcGU6WyJFdXJvcGUiLCLmrKfmtLIiXSwiTm9ydGggQW1lcmljYSI6WyJOb3J0aCBBbWVyaWNhIiwi5YyX576O5rSyIl0sT2NlYW5pYTpbIk9jZWFuaWEiLCLlpKfmtIvmtLIiXSxBZnJpY2E6WyJBZnJpY2EiLCLpnZ7mtLIiXSxFbHNld2hlcmU6WyJFbHNld2hlcmUiLCLlhbbku5blnLDljLoiXX0sUVM9ZT0+e2NvbnN0IHQ9WVNbU3RyaW5nKGUpXTtyZXR1cm4gdD9hKHRbMF0sdFsxXSk6U3RyaW5nKGU/PyIiKX0sVHQ9ZT0+ZS5yZXBsYWNlKC9eXHMqW+OAkFxbXVxzKijmqKHmi598c2ltdWxhdGVkfHRlc3QpXHMqW+OAkVxdXVxzKi9pLCIiKS5yZXBsYWNlKC9bXlxwe0x9XHB7Tn0gXS9ndSwiICIpLnNwbGl0KC9ccysvKS5maWx0ZXIoQm9vbGVhbikuc2xpY2UoMCwyKS5tYXAodD0+dFswXT8udG9VcHBlckNhc2UoKT8/IiIpLmpvaW4oIiIpLEJnPSc8c3ZnIHZpZXdCb3g9IjAgMCAyNCAyNCIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiBmaWxsPSJjdXJyZW50Q29sb3IiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMTIgMy41bDIuNiA1LjMgNS45LjktNC4zIDQuMSAxIDUuOEwxMiAxNi45IDYuOCAxOS42bDEtNS44TDMuNSA5LjdsNS45LS45eiIvPjwvc3ZnPicsdWU9KGUsdD0xLjgpPT5gPHN2ZyBjbGFzcz0iaWNvIiB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IiR7dH0iIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPiR7ZX08L3N2Zz5gLEk9e2NhbGVuZGFyOnVlKCc8cmVjdCB4PSIzLjUiIHk9IjUiIHdpZHRoPSIxNyIgaGVpZ2h0PSIxNS41IiByeD0iMi41Ii8+PHBhdGggZD0iTTMuNSA5LjVoMTdNOCAzdjRNMTYgM3Y0Ii8+Jyksc2VhcmNoOnVlKCc8Y2lyY2xlIGN4PSIxMSIgY3k9IjExIiByPSI2LjUiLz48cGF0aCBkPSJtMjAgMjAtNC4yLTQuMiIvPicpLGNoZWNrOnVlKCc8cGF0aCBkPSJtNSAxMi41IDQuNSA0LjVMMTkgNy41Ii8+JywyKSxkb25lOnVlKCc8cGF0aCBkPSJtNiAxMi41IDQgNCA4LTkiLz4nLDIuNiksYWxlcnQ6dWUoJzxwYXRoIGQ9Ik0xMiA0LjIgMyAxOS41aDE4eiIvPjxwYXRoIGQ9Ik0xMiAxMHY0LjJNMTIgMTdoLjAxIi8+JyksZXJyb3I6dWUoJzxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjguNSIvPjxwYXRoIGQ9Ik0xMiA3Ljh2NU0xMiAxNi4yaC4wMSIvPicpLGNsb2NrOnVlKCc8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI4LjUiLz48cGF0aCBkPSJNMTIgNy41VjEybDMgMiIvPicpLGJlZDp1ZSgnPHBhdGggZD0iTTMgMTguNVY2LjVNMyAxNGgxOHY0LjVNMjEgMTR2LTIuNWEzIDMgMCAwIDAtMy0zaC03VjE0Ii8+PGNpcmNsZSBjeD0iNyIgY3k9IjExIiByPSIxLjgiLz4nKSx1c2Vyczp1ZSgnPGNpcmNsZSBjeD0iOSIgY3k9IjguNSIgcj0iMy4yIi8+PHBhdGggZD0iTTMuNSAxOWE1LjUgNS41IDAgMCAxIDExIDBNMTYgNS42YTMgMyAwIDAgMSAwIDUuOE0xNy41IDE0YTUgNSAwIDAgMSAzIDUiLz4nKSxzaXplOnVlKCc8cGF0aCBkPSJNNCA5VjRoNU0yMCAxNXY1aC01TTQgNGw2IDZNMjAgMjBsLTYtNiIvPicpLHZpZXc6dWUoJzxwYXRoIGQ9Ik0yLjUgMTJTNiA1LjUgMTIgNS41IDIxLjUgMTIgMjEuNSAxMiAxOCAxOC41IDEyIDE4LjUgMi41IDEyIDIuNSAxMnoiLz48Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSIyLjgiLz4nKSxjdXA6dWUoJzxwYXRoIGQ9Ik00IDloMTJ2NWE1IDUgMCAwIDEtNSA1SDlhNSA1IDAgMCAxLTUtNXpNMTYgMTAuNWgxLjVhMi41IDIuNSAwIDAgMSAwIDVIMTZNOCAzLjVWNk0xMiAzLjVWNiIvPicpLGluZm86dWUoJzxjaXJjbGUgY3g9IjEyIiBjeT0iMTIiIHI9IjguNSIvPjxwYXRoIGQ9Ik0xMiAxMXY1LjJNMTIgNy44aC4wMSIvPicpLHdpbmRvdzp1ZSgnPHJlY3QgeD0iNC41IiB5PSI0IiB3aWR0aD0iMTUiIGhlaWdodD0iMTYiIHJ4PSIxLjUiLz48cGF0aCBkPSJNMTIgNHYxNk00LjUgMTJoMTUiLz4nKSxsb2NrOnVlKCc8cmVjdCB4PSI0LjUiIHk9IjEwLjUiIHdpZHRoPSIxNSIgaGVpZ2h0PSIxMCIgcng9IjIuMiIvPjxwYXRoIGQ9Ik04IDEwLjVWNy41YTQgNCAwIDAgMSA4IDB2MyIvPicpLHBpbjp1ZSgnPHBhdGggZD0iTTEyIDIxcy02LjUtNS42LTYuNS0xMWE2LjUgNi41IDAgMCAxIDEzIDBDMTguNSAxNS40IDEyIDIxIDEyIDIxeiIvPjxjaXJjbGUgY3g9IjEyIiBjeT0iMTAiIHI9IjIuNCIvPicpLGNoZXZMOnVlKCc8cGF0aCBkPSJtMTQuNSA2LTYgNiA2IDYiLz4nLDIpLGNoZXZSOnVlKCc8cGF0aCBkPSJtOS41IDYgNiA2LTYgNiIvPicsMiksYXJyb3c6dWUoJzxwYXRoIGQ9Ik01IDEyaDE0TTEzIDZsNiA2LTYgNiIvPicsMiksc2xpZGVyczp1ZSgnPHBhdGggZD0iTTQgN2gxME0xOCA3aDJNNCAxN2g0TTEyIDE3aDgiLz48Y2lyY2xlIGN4PSIxNiIgY3k9IjciIHI9IjIiLz48Y2lyY2xlIGN4PSIxMCIgY3k9IjE3IiByPSIyIi8+Jyksc29ydDp1ZSgnPHBhdGggZD0iTTcgNHYxNk0zLjUgNy41IDcgNGwzLjUgMy41TTE3IDIwVjRNMTMuNSAxNi41IDE3IDIwbDMuNS0zLjUiLz4nKSx0YWc6dWUoJzxwYXRoIGQ9Ik0zLjUgMTIuNXYtOGExIDEgMCAwIDEgMS0xaDhsOCA4LTkgOXoiLz48Y2lyY2xlIGN4PSI4IiBjeT0iOCIgcj0iMS40Ii8+Jyl9O2xldCB6PSJlbiI7Y29uc3QgYT0oZSx0KT0+ej09PSJlbiI/ZTp6PT09InpoIj90OklTKHosej09PSJ6aC1IYW50Ij90OmUpLGxuPSgpPT56PT09InpoInx8ej09PSJ6aC1IYW50IixIZz1bIuWRqOaXpSIsIuWRqOS4gCIsIuWRqOS6jCIsIuWRqOS4iSIsIuWRqOWbmyIsIuWRqOS6lCIsIuWRqOWFrSJdLFhTPSgpPT5bMCwxLDIsMyw0LDUsNl0ubWFwKGU9Pm5ldyBEYXRlKERhdGUuVVRDKDIwMjQsMCwxK2UsMTIpKS50b0xvY2FsZURhdGVTdHJpbmcoemVbel0se3dlZWtkYXk6InNob3J0Iix0aW1lWm9uZToiVVRDIn0pLnJlcGxhY2UoL1wuJC8sIiIpKSxpZT1lPT5lPjA/ZT09PTE/YSgiMSBuaWdodCIsIjHmmZoiKTphKGAke2V9IG5pZ2h0c2AsYCR7ZX3mmZpgKToiIixYZT1lPT5OdW1iZXIoZSk9PT0xP2EoIjEgaG91ciIsIjHlsI/ml7YiKTphKGAke2V9IGhvdXJzYCxgJHtlfeWwj+aXtmApLGVfPWU9PmU9PT0xP2EoIjEgcm9vbSIsIjHpl7QiKTphKGAke2V9IHJvb21zYCxgJHtlfemXtGApLFllPWU9Pntjb25zdCB0PW5ldyBEYXRlKGAke2V9VDEyOjAwOjAwWmApO2lmKE51bWJlci5pc05hTih0LmdldFRpbWUoKSkpcmV0dXJue21kOmUsZG93OiIiLGxvbmc6ZSxkYXk6ZSxtb246IiJ9O2NvbnN0IG49dC5nZXRVVENNb250aCgpKzEsbz10LmdldFVUQ0RhdGUoKTtpZih6PT09InpoIil7Y29uc3Qgcj1IZ1t0LmdldFVUQ0RheSgpXT8/IiI7cmV0dXJue21kOmAke2595pyIJHtvfeaXpWAsZG93OnIsbG9uZzpgJHt0LmdldFVUQ0Z1bGxZZWFyKCl95bm0JHtufeaciCR7b33ml6UgJHtyLnJlcGxhY2UoIuWRqCIsIuaYn+acnyIpfWAsZGF5OlN0cmluZyhvKSxtb246YCR7bn3mnIhgfX1jb25zdCBzPXI9PnQudG9Mb2NhbGVEYXRlU3RyaW5nKHplW3pdLHsuLi5yLHRpbWVab25lOiJVVEMifSk7cmV0dXJuIHohPT0iZW4iP3ttZDpzKHttb250aDoic2hvcnQiLGRheToibnVtZXJpYyJ9KSxkb3c6cyh7d2Vla2RheToic2hvcnQifSksbG9uZzpzKHt3ZWVrZGF5OiJsb25nIixkYXk6Im51bWVyaWMiLG1vbnRoOiJsb25nIix5ZWFyOiJudW1lcmljIn0pLGRheTpTdHJpbmcobyksbW9uOnMoe21vbnRoOiJzaG9ydCJ9KX06e21kOmAke299ICR7cyh7bW9udGg6InNob3J0In0pfWAsZG93OnMoe3dlZWtkYXk6InNob3J0In0pLGxvbmc6cyh7d2Vla2RheToibG9uZyIsZGF5OiJudW1lcmljIixtb250aDoibG9uZyIseWVhcjoibnVtZXJpYyJ9KSxkYXk6U3RyaW5nKG8pLG1vbjpzKHttb250aDoic2hvcnQifSl9fSx0Xz1lPT5lJiZ0eXBlb2YgZS52YWx1ZT09Im51bWJlciI/YDxzcGFuIGNsYXNzPSJyYXRlIiBhcmlhLWxhYmVsPSIke2woYShgUmF0ZWQgJHtlLnZhbHVlfSBieSAke2UuY291bnR9IGd1ZXN0c2AsYOivhOWIhiAke2UudmFsdWV977yMJHtlLmNvdW50fSDmnaHngrnor4RgKSl9Ij4ke0JnfSR7bChlLnZhbHVlKX08c21hbGw+KCR7bChOdW1iZXIoZS5jb3VudCkudG9Mb2NhbGVTdHJpbmcoemVbel0pKX0pPC9zbWFsbD48L3NwYW4+YDoiIixuXz0iRGVtb25zdHJhdGlvbiBkYXRhOiB0aGVzZSByYXRlcyBhbmQgcm9vbSBjb3VudHMgd2VyZSBtYWRlIHVwIGZvciB0aGlzIGRlbW8uIixPZD1lPT57Y29uc3QgdD1yPT5yPD0uMDM5Mjg/ci8xMi45MjooKHIrLjA1NSkvMS4wNTUpKioyLjQsW24sbyxzXT1bMSwzLDVdLm1hcChyPT50KE51bWJlci5wYXJzZUludChlLnNsaWNlKHIscisyKSwxNikvMjU1KSk7cmV0dXJuIC4yMTI2KihuPz8wKSsuNzE1Mioobz8/MCkrLjA3MjIqKHM/PzApfSxkdD0oZSx0KT0+e2NvbnN0W24sb109W09kKGUpLE9kKHQpXS5zb3J0KChzLHIpPT5yLXMpO3JldHVybigobj8/MCkrLjA1KS8oKG8/PzApKy4wNSl9LCRzPWU9PnR5cGVvZiBlPT0ic3RyaW5nIiYmL14jWzAtOWEtZl17Nn0kL2kudGVzdChlKSxxZT17bGlnaHQ6IiNmZmZmZmYiLGRhcms6IiMxMTE3MjMiLGluazoiIzBjMTQyNCIsaW5rRGFyazoiI2VlZjJmOSJ9LEZnPWU9PntpZighJHMoZSkpcmV0dXJuO2NvbnN0IHQ9ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O3Quc3R5bGUuc2V0UHJvcGVydHkoIi0tYWNjZW50LXJhdyIsZSksdC5kYXRhc2V0LmFjY2VudD0iIixkdChlLHFlLmRhcmspPDM/dC5kYXRhc2V0LmFjY2VudERpbT0iIjpkZWxldGUgdC5kYXRhc2V0LmFjY2VudERpbX0samE9e3NhbnM6Z2V0Q29tcHV0ZWRTdHlsZShkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQpLmdldFByb3BlcnR5VmFsdWUoIi0tZi1zYW5zIikudHJpbSgpfHwic2Fucy1zZXJpZiIsZGlzcGxheTpnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCkuZ2V0UHJvcGVydHlWYWx1ZSgiLS1mLWRpc3BsYXkiKS50cmltKCl8fCJzZXJpZiJ9LE1kPW5ldyBTZXQoWy4uLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2xpbmtbcmVsPSJzdHlsZXNoZWV0Il0nKV0ubWFwKGU9PmUuZ2V0QXR0cmlidXRlKCJocmVmIik/PyIiKSksVWc9ZT0+e2lmKCFlfHwhQXJyYXkuaXNBcnJheShlLmNzcykpcmV0dXJuO2NvbnN0IHQ9bj0+dHlwZW9mIG49PSJzdHJpbmciJiYvXiJbQS1aYS16MC05IF0rIigsICJbQS1aYS16MC05IF0rIikqJC8udGVzdChuKT9uOiIiO2Zvcihjb25zdCBuIG9mIGUuY3NzKXtpZih0eXBlb2YgbiE9InN0cmluZyJ8fE1kLmhhcyhuKXx8IS9eKGh0dHBzOlwvXC9bXlxzIic8Pl0rfGh0dHA6XC9cLyhsb2NhbGhvc3R8MTI3XC4wXC4wXC4xKSg6XGQrKT9cL1teXHMiJzw+XSopJC8udGVzdChuKSljb250aW51ZTtNZC5hZGQobik7Y29uc3Qgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7by5yZWw9InN0eWxlc2hlZXQiLG8uaHJlZj1uLGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQobyl9Vmc9e2JvZHk6dChlLmJvZHkpLGRpc3BsYXk6dChlLmRpc3BsYXkpLG51bWVyaWM6dChlLm51bWVyaWMpfSxXZygpfTtsZXQgVmc9e2JvZHk6IiIsZGlzcGxheToiIixudW1lcmljOiIifTtjb25zdCBvXz17InpoLUhhbnQiOntzYW5zOiciUGluZ0ZhbmcgVEMiLCAiTWljcm9zb2Z0IEpoZW5nSGVpIiwgIk5vdG8gU2FucyBUQyIsICJOb3RvIFNhbnMgQ0pLIFRDIicsc2VyaWY6JyJTb25ndGkgVEMiLCAiUE1pbmdMaVUiLCAiTm90byBTZXJpZiBUQyIsICJOb3RvIFNlcmlmIENKSyBUQyInfSxqYTp7c2FuczonIkhpcmFnaW5vIFNhbnMiLCAiSGlyYWdpbm8gS2FrdSBHb3RoaWMgUHJvTiIsICJZdSBHb3RoaWMiLCBNZWlyeW8sICJOb3RvIFNhbnMgSlAiLCAiTm90byBTYW5zIENKSyBKUCInLHNlcmlmOiciSGlyYWdpbm8gTWluY2hvIFByb04iLCAiWXUgTWluY2hvIiwgIk5vdG8gU2VyaWYgSlAiLCAiTm90byBTZXJpZiBDSksgSlAiJ30sa286e3NhbnM6JyJBcHBsZSBTRCBHb3RoaWMgTmVvIiwgIk1hbGd1biBHb3RoaWMiLCAiTm90byBTYW5zIEtSIiwgIk5vdG8gU2FucyBDSksgS1IiJyxzZXJpZjonIkFwcGxlTXl1bmdqbyIsIEJhdGFuZywgIk5vdG8gU2VyaWYgS1IiLCAiTm90byBTZXJpZiBDSksgS1IiJ319LFdnPSgpPT57Y29uc3QgZT1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsdD1vX1t6XSxuPWM9PnQ/Yy5zcGxpdCgiLCAiKS5maWx0ZXIoaD0+IS8gU0NcYi8udGVzdChoKSkuam9pbigiLCAiKTpjLG89KGMsaCxkKT0+W24oYyksaCxkXS5maWx0ZXIoQm9vbGVhbikuam9pbigiLCAiKSx7Ym9keTpzLGRpc3BsYXk6cixudW1lcmljOml9PVZnO3N8fHQ/ZS5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1mLXNhbnMiLG8ocyx0Py5zYW5zLGphLnNhbnMpKTplLnN0eWxlLnJlbW92ZVByb3BlcnR5KCItLWYtc2FucyIpLHJ8fHQ/ZS5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1mLWRpc3BsYXkiLG8ocix0Py5zZXJpZixqYS5kaXNwbGF5KSk6ZS5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgiLS1mLWRpc3BsYXkiKSxpJiYoZS5zdHlsZS5zZXRQcm9wZXJ0eSgiLS1mLW51bSIsbyhpLHQ/LnNhbnMsamEuc2FucykpLGUuc2V0QXR0cmlidXRlKCJkYXRhLWZvbnQtbnVtIiwiIikpfSxLZz1lPT57Y29uc3QgdD10eXBlb2YgZT09InN0cmluZyI/e2NvbG9yOmV9OmU7aWYoIXR8fCEkcyh0LmNvbG9yKSlyZXR1cm47Y29uc3Qgbj1kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsbz0ocyxyKT0+bi5zdHlsZS5zZXRQcm9wZXJ0eShzLHIpO28oIi0tYnJhbmQiLHQuY29sb3IpLG8oIi0tYnJhbmQtaG92ZXIiLCRzKHQuaG92ZXIpP3QuaG92ZXI6YGNvbG9yLW1peChpbiBzcmdiLCAke3QuY29sb3J9IDg4JSwgYmxhY2spYCksbygiLS1icmFuZC1wcmVzcyIsJHModC5wcmVzcyk/dC5wcmVzczpgY29sb3ItbWl4KGluIHNyZ2IsICR7dC5jb2xvcn0gNzglLCBibGFjaylgKSxvKCItLWJyYW5kLW9uIixkdCh0LmNvbG9yLCIjZmZmZmZmIik+PWR0KHQuY29sb3IscWUuaW5rKT8iI2ZmZmZmZiI6cWUuaW5rKSxvKCItLWJyYW5kLWluayIsZHQodC5jb2xvcixxZS5saWdodCk+PTQuNT90LmNvbG9yOnFlLmluayksbygiLS1icmFuZC1mb2N1cyIsZHQodC5jb2xvcixxZS5saWdodCk+PTM/dC5jb2xvcjpxZS5pbmspLG8oIi0tYnJhbmQtaW5rLWRhcmsiLGR0KHQuY29sb3IscWUuZGFyayk+PTQuNT90LmNvbG9yOnFlLmlua0RhcmspLG8oIi0tYnJhbmQtZm9jdXMtZGFyayIsZHQodC5jb2xvcixxZS5kYXJrKT49Mz90LmNvbG9yOnFlLmlua0RhcmspLG4uZGF0YXNldC5icmFuZD0iIixkdCh0LmNvbG9yLHFlLmRhcmspPDM/bi5kYXRhc2V0LmJyYW5kRGFya0RpbT0iIjpkZWxldGUgbi5kYXRhc2V0LmJyYW5kRGFya0RpbX0sc189KCk9Pntjb25zdCBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjdXJsZXNzLXRoZW1lIik7aWYoISghZXx8ZS5nZXRBdHRyaWJ1dGUoInR5cGUiKSE9PSJhcHBsaWNhdGlvbi9qc29uIikpdHJ5e2NvbnN0IHQ9SlNPTi5wYXJzZShlLnRleHRDb250ZW50Pz8iIik7dD8uYWNjZW50JiZGZyh0LmFjY2VudCksdD8ucHJpbWFyeSYmS2codC5wcmltYXJ5KSx0Py5mb250cyYmVWcodC5mb250cyl9Y2F0Y2h7fX07c18oKTtjb25zdCByXz0oKT0+e2NfKCksZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50Lmxhbmc9ej09PSJ6aC1IYW50Ij8iemgtSGFudC1UVyI6emVbel0scSgiaG9tZSIpLnNldEF0dHJpYnV0ZSgiYXJpYS1sYWJlbCIsYSgiQmFjayB0byB0aGUgaG90ZWxzIiwi5Zue5Yiw6YWS5bqX6aaW6aG1IikpLHEoImhlYWR0cmlwIikuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixhKCJWaWV3IHRoZSB0cmlwIiwi5p+l55yL6KGM56iLIikpLHEoImhlYWR0cmlwd29yZCIpLnRleHRDb250ZW50PWEoIlRyaXAiLCLooYznqIsiKSxxKCJmbG93Iikuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixhKCJCb29raW5nIHN0ZXBzIiwi6aKE6K6i5q2l6aqkIikpLHEoImZsb3cxIikudGV4dENvbnRlbnQ9YSgiSG90ZWwiLCLpgInphZLlupciKSxxKCJmbG93MiIpLnRleHRDb250ZW50PWEoIlJvb20iLCLpgInmiL/lnosiKSxxKCJmbG93MyIpLnRleHRDb250ZW50PWEoIkJvb2siLCLpooTorqIiKX0sR2c9ImN1cmxlc3MuaG90ZWwubGFuZyIsYV89KCk9Pnt0cnl7Y29uc3QgZT13aW5kb3cubG9jYWxTdG9yYWdlPy5nZXRJdGVtKEdnKTtyZXR1cm4ga3UuaW5jbHVkZXMoZT8/IiIpP2U6dm9pZCAwfWNhdGNoe3JldHVybn19O2xldCBKZz1hXygpLFVhO2NvbnN0IGlfPSgpPT5KZz8/VWE/P0RhKHdpbmRvdy5vcGVuYWk/LmxvY2FsZSk/P0RhKG5hdmlnYXRvci5sYW5ndWFnZSk/PyJlbiIsaGE9KGU9ITApPT57Y29uc3QgdD1pXygpO3Q9PT16JiZkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuZGF0YXNldC5sYW5nU2V0fHwoej10LGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kYXRhc2V0LmxhbmdTZXQ9IiIscl8oKSxXZygpLGUmJngmJndlKHgpKX0sY189KCk9PntxKCJsYW5nbm93IikudGV4dENvbnRlbnQ9WyJlbiIsImRlIiwiZnIiLCJlcyJdLmluY2x1ZGVzKHopP3oudG9VcHBlckNhc2UoKTpOZFt6XSxxKCJsYW5nYnRuIikuc2V0QXR0cmlidXRlKCJhcmlhLWxhYmVsIixhKCJMYW5ndWFnZSIsIuivreiogCIpKSxxKCJsYW5nbWVudSIpLmlubmVySFRNTD1rdS5tYXAoZT0+YDxidXR0b24gdHlwZT0iYnV0dG9uIiByb2xlPSJtZW51aXRlbXJhZGlvIiBhcmlhLWNoZWNrZWQ9IiR7ZT09PXo/InRydWUiOiJmYWxzZSJ9IiBkYXRhLWxhbmc9IiR7ZX0iIGxhbmc9IiR7emVbZV19Ij4ke05kW2VdfTwvYnV0dG9uPmApLmpvaW4oIiIpfSxsXz0oKT0+e3EoImRlbW9zdHJpcCIpLmhpZGRlbj0hd3UscSgiZGVtb3RleHQiKS50ZXh0Q29udGVudD1TdT9hKFRlP2BBIHRlc3QgY29weSBvZiAke1RlfSdzIHN5c3RlbSDigJQgbm90aGluZyBoZXJlIGlzIGEgcmVhbCBib29raW5nLmA6IkEgdGVzdCBjb3B5IG9mIHRoZSBob3RlbCdzIHN5c3RlbSDigJQgbm90aGluZyBoZXJlIGlzIGEgcmVhbCBib29raW5nLiIsIumFkuW6l+ezu+e7n+eahOa1i+ivleWJr+acrO+8jOi/memHjOeahOmihOiuoumDveS4jeaYr+ecn+WunumihOiuouOAgiIpOmEoIlNhbXBsZSByYXRlcyBhbmQgcm9vbXMg4oCUIG5vdGhpbmcgaGVyZSBjYW4gcmVhbGx5IGJlIGJvb2tlZC4iLCLnpLrkvovku7fmoLzlkozmiL/lnovvvIzov5nph4zml6Dms5XnnJ/lrp7pooTorqLjgIIiKSxxKCJkZW1vbGFiZWwiKS50ZXh0Q29udGVudD1hKCJEZW1vIiwi5ryU56S6IikscSgiZGVtb3N0cmlwIikudGl0bGU9Q2d8fG5ffSxfZT1lPT57Y29uc3QgdD1ZZShlKTtyZXR1cm4gdC5kb3c/ej09PSJ6aCI/YCR7dC5tZH0gJHt0LmRvd31gOno9PT0iZW4iP2Ake3QuZG93fSAke3QubWR9YDpuZXcgRGF0ZShgJHtlfVQxMjowMDowMFpgKS50b0xvY2FsZURhdGVTdHJpbmcoemVbel0se3dlZWtkYXk6InNob3J0IixkYXk6Im51bWVyaWMiLG1vbnRoOiJzaG9ydCIsdGltZVpvbmU6IlVUQyJ9KTplfSx2ZT0oZSx0KT0+TWF0aC5yb3VuZCgoRGF0ZS5wYXJzZShgJHt0fVQxMjowMDowMFpgKS1EYXRlLnBhcnNlKGAke2V9VDEyOjAwOjAwWmApKS84NjRlNSkscnM9ZT0+ZT8uY2hlY2tJbiYmZT8uY2hlY2tPdXQ/ZS5jaGVja091dDw9ZS5jaGVja0luP19lKGUuY2hlY2tJbik6YCR7X2UoZS5jaGVja0luKX0g4oCTICR7X2UoZS5jaGVja091dCl9IMK3ICR7aWUodmUoZS5jaGVja0luLGUuY2hlY2tPdXQpKX1gOiIiLE1zPShlLHQsbik9Pntjb25zdCBvPSR0LmZpbmQocz0+cy5raW5kPT09InJvb20iJiZzLmhvdGVsSWQ9PT1lJiZzLnJvb21SZWY9PT10JiZzLnN0YXk/LmNoZWNrSW49PT1uPy5jaGVja0luJiZzLnN0YXk/LmNoZWNrT3V0PT09bj8uY2hlY2tPdXQpO3JldHVybiBOdW1iZXIobz8ucXVhbnRpdHk/PzApfSx1Xz0oZSx0KT0+e2NvbnN0IG49JHQuZmluZChvPT5vLmtpbmQ9PT0iZXh0cmEiJiZvLmhvdGVsSWQ9PT1lJiZvLmV4dHJhUmVmPT09dCk7cmV0dXJuIE51bWJlcihuPy5xdWFudGl0eT8/MCl9LFpzPShlLHQsbixvPTEpPT50PjA/YDxzcGFuIGNsYXNzPSJzdGVwIj4KICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iICR7ZX0gZGF0YS1uPSIke3QtMX0iIGFyaWEtbGFiZWw9IiR7bChhKGBPbmUgZmV3ZXIgJHtufWAsYOWHj+WwkeS4gOmXtCAke259YCkpfSI+4oiSPC9idXR0b24+CiAgICAgICAgIDxzcGFuIGNsYXNzPSJuIj4ke3R9PC9zcGFuPgogICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgJHtlfSBkYXRhLW49IiR7dCsxfSIgYXJpYS1sYWJlbD0iJHtsKGEoYE9uZSBtb3JlICR7bn1gLGDlop7liqDkuIDpl7QgJHtufWApKX0iPis8L2J1dHRvbj4KICAgICAgIDwvc3Bhbj5gOmA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImFkZCIgJHtlfSBkYXRhLW49IiR7b30iIGFyaWEtbGFiZWw9IiR7bChhKGBBZGQgJHtufWAsYOa3u+WKoCAke259YCkpfSI+CiAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNCIKICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj48cGF0aCBkPSJNMTIgNXYxNE01IDEyaDE0Ii8+PC9zdmc+CiAgICAgICA8L2J1dHRvbj5gLFlnPShlLHQpPT57Y29uc3Qgbj10fHx0YigpO3JldHVybighai5jaGVja0lufHxqLmNoZWNrSW48bikmJihqLmNoZWNrSW49biksKCFqLmNoZWNrT3V0fHxqLmNoZWNrT3V0PD1qLmNoZWNrSW4pJiYoai5jaGVja091dD1xdChqLmNoZWNrSW4sMSkpLHBhKCJjaSIsbix7cm9vbXM6QXUoImRhdGEtcm9vbXMtbiIsInJuIil9KX0sanU9e2NpOlsiY2kiLCJjbyJdLGxjaTpbImxjaSIsImxjbyJdLGRjaTpbImRjaSIsImRjbyJdfSxkXz0xMztsZXQgTT1udWxsO2NvbnN0IFR1PXt9LHdzPWU9PmAke2Uuc2xpY2UoMCw3KX0tMDFgLFZhPShlLHQpPT57Y29uc3Qgbj1uZXcgRGF0ZShgJHtlfVQxMjowMDowMFpgKTtyZXR1cm4gbi5zZXRVVENNb250aChuLmdldFVUQ01vbnRoKCkrdCwxKSxuLnRvSVNPU3RyaW5nKCkuc2xpY2UoMCwxMCl9LHFzPTg7bGV0IFd0PSExO2NvbnN0IFFnPSgpPT5XPjE/ai5ndWVzdHM9PT0xP2EoYDEgZ3Vlc3QgcGVyIHJvb20gwrcgJHtXfSByb29tc2AsYOavj+mXtCAxIOS6uiDCtyAke1d9IOmXtGApOmEoYCR7ai5ndWVzdHN9IGd1ZXN0cyBwZXIgcm9vbSDCtyAke1d9IHJvb21zYCxg5q+P6Ze0ICR7ai5ndWVzdHN9IOS6uiDCtyAke1d9IOmXtGApOmouZ3Vlc3RzPT09MT9hKCIxIGd1ZXN0IMK3IDEgcm9vbSIsIjEg5Lq6IMK3IDEg6Ze0Iik6YShgJHtqLmd1ZXN0c30gZ3Vlc3RzIMK3IDEgcm9vbWAsYCR7ai5ndWVzdHN9IOS6uiDCtyAxIOmXtGApLEF1PShlLHQpPT5gCiAgPGRpdiBjbGFzcz0id2hlbi1yb29tcyB3aGVuLXBhcnR5IiByb2xlPSJncm91cCIgYXJpYS1sYWJlbD0iJHthKCJHdWVzdHMgYW5kIHJvb21zIiwi5Lq65pWw5ZKM6Ze05pWwIil9Ij4KICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0icGFydHktdGlsZSIgZGF0YS1wYXJ0eSBhcmlhLWV4cGFuZGVkPSIke1d0PyJ0cnVlIjoiZmFsc2UifSIgYXJpYS1jb250cm9scz0iJHt0fS1wYW5lbCI+CiAgICAgIDxzcGFuIGNsYXNzPSJ3bCI+JHthKCJHdWVzdHMiLCLkurrmlbAiKX08L3NwYW4+CiAgICAgIDxzcGFuIGNsYXNzPSJwYXJ0eS12IiBkYXRhLXBhcnR5LXdvcmRzPiR7bChRZygpKX08L3NwYW4+CiAgICAgICR7SS5jaGV2Un0KICAgIDwvYnV0dG9uPgogICAgPGRpdiBjbGFzcz0icGFydHktcGFuZWwiIGlkPSIke3R9LXBhbmVsIiR7V3Q/IiI6IiBoaWRkZW4ifT4KICAgICAgPGRpdiBjbGFzcz0icGFydHktcm93Ij4KICAgICAgICA8c3Bhbj4ke2EoIkd1ZXN0cyBpbiBlYWNoIHJvb20iLCLmr4/pl7TlhaXkvY/kurrmlbAiKX08L3NwYW4+CiAgICAgICAgPHNwYW4gY2xhc3M9InN0ZXAgbGlnaHQiPgogICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGRhdGEtZ3Vlc3RzLW49Ii0xIiBkYXRhLW9uPSIke2V9IiBhcmlhLWxhYmVsPSIke2EoIk9uZSBmZXdlciBndWVzdCIsIuWwkeS4gOS6uiIpfSIke2ouZ3Vlc3RzPD0xPyIgZGlzYWJsZWQiOiIifT7iiJI8L2J1dHRvbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJuIiBkYXRhLWd1ZXN0cy1zaG93bj4ke2woai5ndWVzdHMpfTwvc3Bhbj4KICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBkYXRhLWd1ZXN0cy1uPSIxIiBkYXRhLW9uPSIke2V9IiBhcmlhLWxhYmVsPSIke2EoIk9uZSBtb3JlIGd1ZXN0Iiwi5aSa5LiA5Lq6Iil9IiR7ai5ndWVzdHM+PXFzPyIgZGlzYWJsZWQiOiIifT4rPC9idXR0b24+CiAgICAgICAgPC9zcGFuPgogICAgICA8L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGFydHktcm93Ij4KICAgICAgICA8c3Bhbj4ke2EoIlJvb21zIiwi6Ze05pWwIil9PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJzdGVwIGxpZ2h0Ij4KICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiAke2V9PSItMSIgYXJpYS1sYWJlbD0iJHthKCJPbmUgZmV3ZXIgcm9vbSIsIuWwkeS4gOmXtCIpfSIke1c8PTE/IiBkaXNhYmxlZCI6IiJ9PuKIkjwvYnV0dG9uPgogICAgICAgICAgPHNwYW4gY2xhc3M9Im4iIGlkPSIke3R9Ij4ke2woVyl9PC9zcGFuPgogICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iICR7ZX09IjEiIGFyaWEtbGFiZWw9IiR7YSgiT25lIG1vcmUgcm9vbSIsIuWkmuS4gOmXtCIpfSIke1c+PUp0PyIgZGlzYWJsZWQiOiIifT4rPC9idXR0b24+CiAgICAgICAgPC9zcGFuPgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PmAscGE9KGUsdCxuKT0+e1R1W2VdPXttaW46dCxyb29tczpuLnJvb21zLHNpZGU6bi5zaWRlPz8iIixwZW5kaW5nOiEhbi5wZW5kaW5nfTtjb25zdFtvLHNdPWp1W2VdLHI9dmUoai5jaGVja0luLGouY2hlY2tPdXQpLGk9KGMsaCxkKT0+e2NvbnN0IHU9WWUoaCkscD1NPy5wYWlyPT09ZSYmTS5waWNraW5nPT09YztyZXR1cm4gbi5wZW5kaW5nJiYhcD9gPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJ3aGVuLXRpbGUiIGRhdGEtY2FsPSIke2V9OiR7Y30iIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSIke2R9LiAke2EoIkNob29zZSBhIGRhdGUiLCLpgInmi6nml6XmnJ8iKX0iPgogICAgICAgIDxzcGFuIGNsYXNzPSJ3bCI+JHtkfTwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0id3Ygd3YtZW1wdHkiPiR7YSgiQWRkIGRhdGUiLCLpgInml6XmnJ8iKX08L3NwYW4+CiAgICAgIDwvYnV0dG9uPmA6YDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0id2hlbi10aWxlIiBkYXRhLWNhbD0iJHtlfToke2N9IiBhcmlhLWV4cGFuZGVkPSIke3A/InRydWUiOiJmYWxzZSJ9IiBhcmlhLWxhYmVsPSIke2R9LCAke2wodS5sb25nKX0uICR7YSgiQ2hhbmdlIHRoZSBkYXRlcyIsIuS/ruaUueaXpeacnyIpfSI+CiAgICAgICAgPHNwYW4gY2xhc3M9IndsIj4ke2R9PC9zcGFuPgogICAgICAgIDxzcGFuIGNsYXNzPSJ3diI+JHtsKHUubWQpfTxzbWFsbD4ke2wodS5kb3cpfTwvc21hbGw+PC9zcGFuPgogICAgICA8L2J1dHRvbj5gfTtyZXR1cm5gCiAgPGRpdiBjbGFzcz0id2hlbmJhciR7bi5wZW5kaW5nPyIgcGVuZGluZyI6IiJ9IiBkYXRhLXdoZW49IiR7ZX0iPgogICAgPGRpdiBjbGFzcz0id2hlbi1kYXRlcyI+CiAgICAgICR7aSgiaW4iLGouY2hlY2tJbixhKCJDaGVjay1pbiIsIuWFpeS9jyIpKX0KICAgICAgPHNwYW4gY2xhc3M9IndoZW4tbiIke2U9PT0iY2kiPycgaWQ9Im5pZ2h0cyInOiIifT4ke24ucGVuZGluZz8i4oaSIjpsKGllKHIpKX08L3NwYW4+CiAgICAgICR7aSgib3V0IixqLmNoZWNrT3V0LGEoIkNoZWNrLW91dCIsIuemu+W6lyIpKX0KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0id2hlbi1zaWRlIj4ke24ucm9vbXN9JHtuLnNpZGU/PyIifTwvZGl2PgogICAgPGlucHV0IHR5cGU9ImRhdGUiIGlkPSIke299IiB2YWx1ZT0iJHtsKGouY2hlY2tJbil9IiBtaW49IiR7bCh0KX0iIGhpZGRlbj4KICAgIDxpbnB1dCB0eXBlPSJkYXRlIiBpZD0iJHtzfSIgdmFsdWU9IiR7bChqLmNoZWNrT3V0KX0iIG1pbj0iJHtsKHF0KGouY2hlY2tJbiwxKSl9IiBoaWRkZW4+CiAgICAke00/LnBhaXI9PT1lP2hfKCk6IiJ9CiAgPC9kaXY+YH0saF89KCk9PntpZighTSlyZXR1cm4iIjtjb25zdCBlPU0sdD13cyhlLm1pbiksbj1WYSh0LGRfLTEpLG89dT0+KFllKHUpLF9lKHUpKSxzPW5ldyBNYXAoZS5wYWlyPT09ImNpIiYmZS5waWNraW5nPT09ImluIiYmQXJyYXkuaXNBcnJheSh4Py5kYXRlcyk/eC5kYXRlcy5maWx0ZXIodT0+dS5mcm9tKS5tYXAodT0+W1N0cmluZyh1LmNoZWNrSW4pLHVdKTpbXSkscj1bLi4ucy52YWx1ZXMoKV0uZmluZCh1PT51Lmxvd2VzdCk/P1suLi5zLnZhbHVlcygpXS5maW5kKHU9PnUuYmVzdCksaT12ZShTdHJpbmcoeD8uc3RheT8uY2hlY2tJbj8/IiIpLFN0cmluZyh4Py5zdGF5Py5jaGVja091dD8/IiIpKXx8MSxjPWUucGlja2luZz09PSJpbiI/YSgiQ2hvb3NlIGNoZWNrLWluIiwi6YCJ5oup5YWl5L2P5pel5pyfIik6YSgiQ2hvb3NlIGNoZWNrLW91dCIsIumAieaLqeemu+W6l+aXpeacnyIpLGg9ZS5pbiYmZS5vdXQ/YCR7byhlLmluKX0g4oCTICR7byhlLm91dCl9IMK3ICR7aWUodmUoZS5pbixlLm91dCkpfWA6ZS5pbj9gJHthKCJDaGVjay1pbiIsIuWFpeS9jyIpfSAke28oZS5pbil9YDoiIixkPXU9Pntjb25zdCBwPW5ldyBEYXRlKGAke3V9VDEyOjAwOjAwWmApLG09ej09PSJ6aCI/YCR7cC5nZXRVVENGdWxsWWVhcigpfeW5tCR7cC5nZXRVVENNb250aCgpKzF95pyIYDpwLnRvTG9jYWxlRGF0ZVN0cmluZyh6ZVt6XSx7bW9udGg6ImxvbmciLHllYXI6Im51bWVyaWMiLHRpbWVab25lOiJVVEMifSkseT0ocC5nZXRVVENEYXkoKSs2KSU3LCQ9bmV3IERhdGUoRGF0ZS5VVEMocC5nZXRVVENGdWxsWWVhcigpLHAuZ2V0VVRDTW9udGgoKSsxLDApKS5nZXRVVENEYXRlKCksUz1bXTtmb3IobGV0IE49MDtOPHk7Tis9MSlTLnB1c2goJzxzcGFuIGNsYXNzPSJjZCBibGFuayI+PC9zcGFuPicpO2ZvcihsZXQgTj0xO048PSQ7Tis9MSl7Y29uc3QgRT1gJHt1LnNsaWNlKDAsOCl9JHtTdHJpbmcoTikucGFkU3RhcnQoMiwiMCIpfWAsVD1FPGUubWluLEE9RT09PWUuaW4sUT1FPT09ZS5vdXQsWD1bImNkIixBPyJpbiI6IiIsQSYmZS5vdXQ/Imhhcy1vdXQiOiIiLFE/Im91dCI6IiIsZS5pbiYmZS5vdXQmJkU+ZS5pbiYmRTxlLm91dD8iYmV0d2VlbiI6IiIsRT09PWUubWluPyJ0b2RheSI6IiIscy5oYXMoRSk/Imhhcy1wIjoiIixzLmdldChFKT8ubG93ZXN0PyJsb3dlc3QiOiIiLGUucGlja2luZz09PSJvdXQiJiZlLmluJiZFPGUuaW4/ImJlZm9yZSI6IiJdLmZpbHRlcihCb29sZWFuKS5qb2luKCIgIiksSj1zLmdldChFKT8uZnJvbTtTLnB1c2goYDxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iJHtYfSIgZGF0YS1kYXk9IiR7RX0iJHtUPyIgZGlzYWJsZWQiOiIifSBhcmlhLWxhYmVsPSIke2woWWUoRSkubG9uZyl9JHtBP2EoIiwgY2hlY2staW4iLCLvvIzlhaXkvY8iKTpRP2EoIiwgY2hlY2stb3V0Iiwi77yM56a75bqXIik6IiJ9JHtKP2woYShgLCBmcm9tICR7Sn1gLGDvvIwke0p96LW3YCkpOiIifSIke0F8fFE/JyBhcmlhLXByZXNzZWQ9InRydWUiJzoiIn0+PHNwYW4+PGIgY2xhc3M9ImNkLW4iPiR7Tn08L2I+JHtKP2A8aSBjbGFzcz0iY2QtcCI+JHtsKEopfTwvaT5gOiIifTwvc3Bhbj48L2J1dHRvbj5gKX1yZXR1cm5gPGRpdiBjbGFzcz0iY2FsLW1vbnRoIj4KICAgICAgICA8ZGl2IGNsYXNzPSJjYWwtbXQiPiR7bChtKX08L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJjYWwtZ3JpZCI+JHsoej09PSJ6aCI/WyLkuIAiLCLkuowiLCLkuIkiLCLlm5siLCLkupQiLCLlha0iLCLml6UiXTp6PT09ImVuIj9bIk1vIiwiVHUiLCJXZSIsIlRoIiwiRnIiLCJTYSIsIlN1Il06WFMoKSkubWFwKE49PmA8c3BhbiBjbGFzcz0iY2FsLWRvdyIgYXJpYS1oaWRkZW49InRydWUiPiR7Tn08L3NwYW4+YCkuam9pbigiIil9JHtTLmpvaW4oIiIpfTwvZGl2PgogICAgICA8L2Rpdj5gfTtyZXR1cm5gCiAgICA8ZGl2IGNsYXNzPSJjYWwiIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSIke2N9Ij4KICAgICAgPGRpdiBjbGFzcz0iY2FsLXRvcCI+CiAgICAgICAgPGRpdiBjbGFzcz0iY2FsLXNheSIgYXJpYS1saXZlPSJwb2xpdGUiPiR7Y308c21hbGw+JHtsKGgpfTwvc21hbGw+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iY2FsLW5hdiI+CiAgICAgICAgICA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgZGF0YS1jYWwtbmF2PSItMSIgYXJpYS1sYWJlbD0iJHthKCJQcmV2aW91cyBtb250aCIsIuS4iuS4quaciCIpfSIke2UubW9udGg8PXQ/IiBkaXNhYmxlZCI6IiJ9PiR7SS5jaGV2TH08L2J1dHRvbj4KICAgICAgICAgIDxidXR0b24gdHlwZT0iYnV0dG9uIiBkYXRhLWNhbC1uYXY9IjEiIGFyaWEtbGFiZWw9IiR7YSgiTmV4dCBtb250aCIsIuS4i+S4quaciCIpfSIke2UubW9udGg+PW4/IiBkaXNhYmxlZCI6IiJ9PiR7SS5jaGV2Un08L2J1dHRvbj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNhbC1tb250aHMiPiR7ZChlLm1vbnRoKX0ke2QoVmEoZS5tb250aCwxKSl9PC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9ImNhbC1mb290Ij4KICAgICAgICA8c3BhbiBjbGFzcz0iY2FsLWxlZ2VuZCI+JHtyP2A8c3BhbiBjbGFzcz0iY2FsLWJlc3QiPiR7bChhKGBMb3dlc3Q6IGFycml2ZSAke28oU3RyaW5nKHIuY2hlY2tJbikpfSwgZnJvbSAke3IuZnJvbX1gLGDmnIDkvY7vvJoke28oU3RyaW5nKHIuY2hlY2tJbikpfeWFpeS9j++8jCR7ci5mcm9tfei1t2ApKX08L3NwYW4+YDplLnBpY2tpbmc9PT0iaW4iP2EoIlRhcCB0aGUgbmlnaHQgeW91IGFycml2ZS4iLCLngrnpgInlhaXkvY/pgqPlpKnjgIIiKTphKCJUYXAgdGhlIG1vcm5pbmcgeW91IGxlYXZlLiIsIueCuemAieemu+W6l+mCo+WkqeOAgiIpfSR7cy5zaXplP2A8c21hbGw+JHtsKGEoYFByaWNlczogJHtpZShpKX0gZnJvbSB0aGF0IGRheSwgdGF4ZXMgaW4uIERheXMgd2l0aG91dCBvbmUgd2VyZSBub3QgcXVvdGVkLmAsYOS7t+agvOS4uuW9k+WkqeWFpeS9jyAke2llKGkpfeeahOaAu+S7t++8jOWQq+eoju+8m+ayoeacieS7t+agvOeahOaXpeWtkOacquaKpeS7t+OAgmApKX08L3NtYWxsPmA6IiJ9PC9zcGFuPgogICAgICAgIDxidXR0b24gY2xhc3M9ImdvIHNvZnQgc20iIHR5cGU9ImJ1dHRvbiIgZGF0YS1jYWwtY2xvc2U+JHtlLmluJiZlLm91dD9hKCJEb25lIiwi5a6M5oiQIik6YSgiQ2xvc2UiLCLlhbPpl60iKX08L2J1dHRvbj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj5gfSxadD0oZSx0KT0+e2NvbnN0IG49ZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgLndoZW5iYXJbZGF0YS13aGVuPSIke2V9Il1gKSxvPVR1W2VdOyFufHwhb3x8KG4ub3V0ZXJIVE1MPXBhKGUsby5taW4se3Jvb21zOm8ucm9vbXMsc2lkZTpvLnNpZGUscGVuZGluZzpvLnBlbmRpbmd9KSx0JiZkb2N1bWVudC5xdWVyeVNlbGVjdG9yKHQpPy5mb2N1cygpKX0scF89KGUsdCk9Pntjb25zdCBuPVR1W2VdO2lmKCFuKXJldHVybjtpZihNJiZNLnBhaXI9PT1lJiZNLnBpY2tpbmc9PT10KXtNPW51bGwsWnQoZSxgW2RhdGEtY2FsPSIke2V9OiR7dH0iXWApO3JldHVybn1jb25zdCBvPWouY2hlY2tJbixzPWouY2hlY2tPdXQ7TT17cGFpcjplLHBpY2tpbmc6dCxtb250aDp3cyh0PT09Im91dCImJnM/czpvfHxuLm1pbiksaW46byxvdXQ6cyxtaW46bi5taW59LE0ubW9udGg8d3Mobi5taW4pJiYoTS5tb250aD13cyhuLm1pbikpLFp0KGUsYFtkYXRhLWNhbD0iJHtlfToke3R9Il1gKX0sWGc9KCk9PntpZighTT8uaW4pcmV0dXJuO2NvbnN0e3BhaXI6ZX09TSx0PU0uaW4sbj1NLm91dCYmTS5vdXQ+dD9NLm91dDpxdCh0LDEpO009bnVsbDtjb25zdFtvLHNdPWp1W2VdLHI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQobyksaT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChzKTshcnx8IWl8fChpLnZhbHVlPW4sci52YWx1ZT10LHIuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImNoYW5nZSIse2J1YmJsZXM6ITB9KSksWnQoZSxgW2RhdGEtY2FsPSIke2V9OmluIl1gKSl9LG1fPWU9PntpZighTXx8ZTxNLm1pbilyZXR1cm47Y29uc3R7cGFpcjp0fT1NO2lmKE0ucGlja2luZz09PSJpbiJ8fCFNLmlufHxlPD1NLmluKXtNLmluPWUsKCFNLm91dHx8TS5vdXQ8PWUpJiYoTS5vdXQ9IiIpLE0ucGlja2luZz0ib3V0IixadCh0LGBbZGF0YS1kYXk9IiR7ZX0iXWApO3JldHVybn1NLm91dD1lLFhnKCl9LGViPSgpPT5pZShqLmNoZWNrSW4mJmouY2hlY2tPdXQ/dmUoai5jaGVja0luLGouY2hlY2tPdXQpOjApLHF0PShlLHQpPT5uZXcgRGF0ZShEYXRlLnBhcnNlKGAke2V9VDEyOjAwOjAwWmApK3QqODY0ZTUpLnRvSVNPU3RyaW5nKCkuc2xpY2UoMCwxMCksdGI9KCk9Pm5ldyBEYXRlKERhdGUubm93KCktbmV3IERhdGUoKS5nZXRUaW1lem9uZU9mZnNldCgpKjZlNCkudG9JU09TdHJpbmcoKS5zbGljZSgwLDEwKSxuYj1lPT57Y29uc3QgdD1bLi4uZT8udG9kYXk/W2UudG9kYXkubWluLGUudG9kYXkubWF4XTpbXSwuLi4oZT8uaG90ZWxzPz9bXSkubWFwKG89PlN0cmluZyhvLnRvZGF5VGhlcmU/PyIiKSldLmZpbHRlcihvPT4vXlxkezR9LVxkezJ9LVxkezJ9JC8udGVzdChvKSkuc29ydCgpLG49dGIoKTtyZXR1cm57bWluOlt0WzBdPz9uLG5dLnNvcnQoKVswXT8/bixzdGFydDp0LmF0KC0xKT8/bn19LGZfPWU9Pntjb25zdHttaW46dCxzdGFydDpufT1uYihlKTsoIWouY2hlY2tJbnx8ai5jaGVja0luPHQpJiYoai5jaGVja0luPW4pLCghai5jaGVja091dHx8ai5jaGVja091dDw9ai5jaGVja0luKSYmKGouY2hlY2tPdXQ9cXQoai5jaGVja0luLDEpKTtjb25zdCBvPXBhKCJkY2kiLHQse3Jvb21zOkF1KCJkYXRhLXJvb21zLW4iLCJybiIpLHNpZGU6ZS5zY29wZT8iIjpgPGJ1dHRvbiBjbGFzcz0iZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImZpbmQiPiR7SS5zZWFyY2h9JHthKCJTZWFyY2giLCLmkJzntKIiKX08L2J1dHRvbj5gfSkscz1gPGRpdiBjbGFzcz0ic2VhcmNoIj4KICAgICAgPGxhYmVsIGNsYXNzPSJ3aGVyZSI+JHtJLnBpbn08aW5wdXQgaWQ9IndoZXJlIiB0eXBlPSJzZWFyY2giIGF1dG9jb21wbGV0ZT0ib2ZmIiBwbGFjZWhvbGRlcj0iJHthKCJBIGNpdHksIGEgY291bnRyeSBvciBhIGhvdGVsIiwi5Z+O5biC44CB5Zu95a625oiW6YWS5bqX5ZCNIil9IiBhcmlhLWxhYmVsPSIke2EoIldoZXJlIHRvIiwi55uu55qE5ZywIil9Ij48L2xhYmVsPgogICAgICAke299CiAgICA8L2Rpdj5gLHI9ZD0+YDxkaXYgY2xhc3M9InBsYWNlcyI+JHtkLm1hcCgodSxwKT0+YDxidXR0b24gY2xhc3M9ImNoaXAgcGxhY2UiIHR5cGU9ImJ1dHRvbiIgZGF0YS1wbGFjZT0iJHtsKHUubmFtZSl9IiR7cD49bnQ/IiBoaWRkZW4iOiIifT4ke2woT2UodS5uYW1lLHUubmFtZXMpKX0gPHNtYWxsPiR7bCh1LmNvdW50KX08L3NtYWxsPjwvYnV0dG9uPmApLmpvaW4oIiIpfSR7ZC5sZW5ndGg+bnQ/YDxidXR0b24gY2xhc3M9ImNoaXAgcGxhY2UiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9Im1vcmUtcGxhY2VzIj4ke2woYShgKyR7ZC5sZW5ndGgtbnR9IG1vcmVgLGDov5jmnIkgJHtkLmxlbmd0aC1udH0g5LiqYCkpfTwvYnV0dG9uPmA6IiJ9PC9kaXY+YCxpPWUuc2NvcGU7aWYoaSlyZXR1cm5bYDxkaXYgY2xhc3M9ImhlbGxvIj48aDIgY2xhc3M9ImgtbmFtZSI+JHtsKEhlKGkubmFtZSxpLmNvZGUpKX08L2gyPjxkaXYgY2xhc3M9Imgtd2hlcmUiPiR7bCh6PT09ImVuIj9gJHtlLnRvdGFsfSAke2Uudm9jYWI/Lm5vdW5QbHVyYWw/PyJob3RlbHMifSBpbiAkeyhpLmNpdGllcz8/W10pLmxlbmd0aH0gY2l0aWVzYDphKGAke2UudG90YWx9IGhvdGVscyBpbiAkeyhpLmNpdGllcz8/W10pLmxlbmd0aH0gY2l0aWVzYCxgJHtlLnRvdGFsfSDlrrbphZLlupfvvIzliIbluIPlnKggJHsoaS5jaXRpZXM/P1tdKS5sZW5ndGh9IOS4quWfjuW4gmApKX08L2Rpdj48L2Rpdj5gLGA8ZGl2IGNsYXNzPSJzZWFyY2giPiR7b308L2Rpdj5gLHIoaS5jaXRpZXM/P1tdKSxgPGRpdiBjbGFzcz0iZm9vdCI+PGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1wbGFjZS1hbGw9IiR7bChpLm5hbWUpfSI+JHtsKGEoYEFsbCAke2UudG90YWx9IGluICR7SGUoaS5uYW1lLGkuY29kZSl9YCxgJHtIZShpLm5hbWUsaS5jb2RlKX3lhajpg6ggJHtlLnRvdGFsfSDlrrZgKSl9PC9idXR0b24+PC9kaXY+YF0uam9pbigiIik7Y29uc3QgYz1lLnJlZ2lvbnM/P1tdLGg9Yy5mbGF0TWFwKGQ9PmQuY291bnRyaWVzPz9bXSkuZmxhdE1hcChkPT5kLmNpdGllcz8/W10pLm1hcCgoZCx1KT0+KHtjOmQsaTp1fSkpLnNvcnQoKGQsdSk9Pk51bWJlcih1LmMuY291bnQpLU51bWJlcihkLmMuY291bnQpfHxkLmktdS5pKS5zbGljZSgwLG50KS5tYXAoKHtjOmR9KT0+ZCk7cmV0dXJuW2A8ZGl2IGNsYXNzPSJoZWxsbyI+PGgyIGNsYXNzPSJoLW5hbWUiPiR7YSgiV2hlcmUgdG8/Iiwi5oOz5L2P5ZOq6YeM77yfIil9PC9oMj48ZGl2IGNsYXNzPSJoLXdoZXJlIj4ke2woej09PSJlbiI/YCR7ZS50b3RhbH0gJHtlLnZvY2FiPy5ub3VuUGx1cmFsPz8iaG90ZWxzIn0ke2ZlP2AgZnJvbSAke2ZlLnN1cHBsaWVycy5sZW5ndGh9IGdyb3Vwc2A6IiJ9LCBwcmljZWQgZm9yIHRoZSBuaWdodHMgeW91IGNob29zZS5gOmZlP2EoYCR7ZS50b3RhbH0gaG90ZWxzIGZyb20gJHtmZS5zdXBwbGllcnMubGVuZ3RofSBncm91cHMsIHByaWNlZCBmb3IgdGhlIG5pZ2h0cyB5b3UgY2hvb3NlLmAsYCR7ZS50b3RhbH0g5a626YWS5bqX77yM5p2l6IeqICR7ZmUuc3VwcGxpZXJzLmxlbmd0aH0g5Liq6ZuG5Zui77yM5oyJ5L2g6YCJ55qE5pel5pyf5oql5Lu344CCYCk6YShgJHtlLnRvdGFsfSBob3RlbHMsIHByaWNlZCBmb3IgdGhlIG5pZ2h0cyB5b3UgY2hvb3NlLmAsYCR7ZS50b3RhbH0g5a626YWS5bqX77yM5oyJ5L2g6YCJ55qE5pel5pyf5oql5Lu344CCYCkpfTwvZGl2PjwvZGl2PmAscyxmZSYmZmUuc3VwcGxpZXJzLmxlbmd0aD4xP2A8ZGl2IGNsYXNzPSJyZWdpb24iPjxkaXYgY2xhc3M9ImNvdW50cnluYW1lIj4ke2EoIkhvdGVsIGdyb3VwcyIsIumFkuW6l+mbhuWboiIpfTwvZGl2PjxkaXYgY2xhc3M9InBsYWNlcyBncm91cHMiPiR7ZmUuc3VwcGxpZXJzLm1hcChkPT5gPGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSBncm91cCIgdHlwZT0iYnV0dG9uIiBkYXRhLWdyb3VwLWhvbWU9IiR7bChkLmlkKX0iPiR7ZC5sb2dvVXJsP2A8aW1nIHNyYz0iJHtsKGQubG9nb1VybCl9IiBhbHQ9IiI+YDoiIn0ke2woZC5uYW1lKX08L2J1dHRvbj5gKS5qb2luKCIiKX08L2Rpdj48L2Rpdj5gOiIiLGgubGVuZ3RoP2A8ZGl2IGNsYXNzPSJyZWdpb24iPjxkaXYgY2xhc3M9ImNvdW50cnluYW1lIj4ke2EoIlRvcCBjaXRpZXMiLCLng63pl6jln47luIIiKX08L2Rpdj4ke3IoaCl9PC9kaXY+YDoiIixjLmxlbmd0aD4xP2A8ZGl2IGNsYXNzPSJyZWdpb24iPjxkaXYgY2xhc3M9ImNvdW50cnluYW1lIj4ke2EoIkJ5IHJlZ2lvbiIsIuaMieWcsOWMuiIpfTwvZGl2PjxkaXYgY2xhc3M9InBsYWNlcyI+JHtjLm1hcCgoZCx1KT0+YDxidXR0b24gY2xhc3M9ImNoaXAgcGxhY2UgdGFiIiB0eXBlPSJidXR0b24iIGRhdGEtcmVnaW9uPSIke3V9IiBhcmlhLWV4cGFuZGVkPSJmYWxzZSI+JHtsKFFTKGQubmFtZSkpfSA8c21hbGw+JHtsKGQuY291bnQpfTwvc21hbGw+PC9idXR0b24+YCkuam9pbigiIil9PC9kaXY+PC9kaXY+YDoiIiwuLi5jLm1hcCgoZCx1KT0+YAogICAgICA8ZGl2IGNsYXNzPSJyZWdpb24iIGRhdGEtcmVnaW9uLWJvZHk9IiR7dX0iIGhpZGRlbj4KICAgICAgICAkeyhkLmNvdW50cmllcz8/W10pLm1hcCgocCxtKT0+e2NvbnN0IHk9cC5jaXRpZXM/P1tdLCQ9eS5sZW5ndGg9PT0xP3lbMF06dm9pZCAwO3JldHVybmAKICAgICAgICAgIDxkaXYgY2xhc3M9ImRlc3QiJHttPj1ncz8iIGhpZGRlbiI6IiJ9PgogICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJkZXN0LWNvdW50cnkiIHR5cGU9ImJ1dHRvbiIgZGF0YS1wbGFjZT0iJHtsKHAubmFtZSl9Ij4ke2woSGUocC5uYW1lLHAuY29kZSkpfSR7JCYmJC5uYW1lIT09cC5uYW1lP2A8c21hbGw+IMK3ICR7bChPZSgkLm5hbWUsJC5uYW1lcykpfTwvc21hbGw+YDoiIn0gPHNtYWxsIGNsYXNzPSJuIj4ke2wocC5jb3VudCl9PC9zbWFsbD48L2J1dHRvbj4KICAgICAgICAgICAgJHt5Lmxlbmd0aD4xP3IoeSk6IiJ9CiAgICAgICAgICA8L2Rpdj5gfSkuam9pbigiIil9CiAgICAgICAgJHsoZC5jb3VudHJpZXM/P1tdKS5sZW5ndGg+Z3M/YDxkaXYgY2xhc3M9InBsYWNlcyI+PGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0ibW9yZS1jb3VudHJpZXMiPiR7bChhKGArJHsoZC5jb3VudHJpZXM/P1tdKS5sZW5ndGgtZ3N9IG1vcmUgY291bnRyaWVzYCxg6L+Y5pyJICR7KGQuY291bnRyaWVzPz9bXSkubGVuZ3RoLWdzfSDkuKrlm73lrrZgKSl9PC9idXR0b24+PC9kaXY+YDoiIn0KICAgICAgPC9kaXY+YCksYDxkaXYgY2xhc3M9ImZvb3QiPgogICAgICAgPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImFsbC1ob3RlbHMiPiR7bCh6PT09ImVuIj9gQnJvd3NlIGFsbCAke2UudG90YWx9ICR7ZS52b2NhYj8ubm91blBsdXJhbD8/ImhvdGVscyJ9YDphKGBCcm93c2UgYWxsICR7ZS50b3RhbH0gaG90ZWxzYCxg5rWP6KeI5YWo6YOoICR7ZS50b3RhbH0g5a626YWS5bqXYCkpfTwvYnV0dG9uPgogICAgIDwvZGl2PmAsYDxkaXYgY2xhc3M9ImhvbWUtbGlua3MiPgogICAgICAgPGJ1dHRvbiBjbGFzcz0ibGlua3kiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImJvb2tpbmdzIj4ke2EoIk15IGJvb2tpbmdzIiwi5oiR55qE6aKE6K6iIil9PC9idXR0b24+CiAgICAgICA8c3BhbiBhcmlhLWhpZGRlbj0idHJ1ZSI+wrc8L3NwYW4+CiAgICAgICA8YnV0dG9uIGNsYXNzPSJsaW5reSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iZmluZC1ib29raW5nIj4ke2EoIkZpbmQgYSBib29raW5nIGJ5IGl0cyBjb2RlIiwi55So56Gu6K6k56CB5p+l5om+6aKE6K6iIil9PC9idXR0b24+CiAgICAgPC9kaXY+YF0uam9pbigiIil9LG50PTgsZ3M9NixvYj0oZSx0PSExKT0+e2NvbnN0IG49ZS5mb3JTdGF5O2lmKG4pcmV0dXJuYDxzcGFuIGNsYXNzPSJ0LWZyb20iPiR7bChuLnRvdGFsKX08c21hbGwgY2xhc3M9InQtc3ViIj48c3BhbiBjbGFzcz0ibmIiPiR7bChbTnVtYmVyKG4ucm9vbXMpPjE/YShgJHtuLnJvb21zfSByb29tcyDDl2AsYCR7bi5yb29tc33pl7Qgw5dgKToiIixOdW1iZXIobi5ob3Vycyk+MD9hKGAke1hlKG4uaG91cnMpfSB0b2RheWAsYOS7iuWkqSR7WGUobi5ob3Vycyl9YCk6aWUoTnVtYmVyKG4ubmlnaHRzKSldLmZpbHRlcihCb29sZWFuKS5qb2luKCIgIikpfTwvc3Bhbj48c3BhbiBjbGFzcz0idC1zZXAiPiDCtyA8L3NwYW4+PHNwYW4gY2xhc3M9Im5iIj4ke2EoInRheGVzIGluIiwi5ZCr56iO6LS5Iil9PC9zcGFuPjwvc21hbGw+PC9zcGFuPmA7aWYoZS5ub1Jvb21zRm9yU3RheSl7Y29uc3Qgbz1lLm5vUm9vbXNGb3JTdGF5Q29kZSxzPWUubm9Sb29tc0ZvclN0YXlBcmdzPz97fTtyZXR1cm5gPHNwYW4gY2xhc3M9InQtZnJvbSB0LW5vbmUiPiR7KG8/bz09PSJwYXJ0eSI6L3NsZWVwcy8udGVzdChTdHJpbmcoZS5ub1Jvb21zRm9yU3RheSkpKT9sKGEoYE5vIHJvb20gc2xlZXBzICR7ai5ndWVzdHN9YCxg5rKh5pyJ5Y+v5L2PICR7ai5ndWVzdHN9IOS6uueahOaIv+Wei2ApKTpvPT09ImhvdXJseS1vdmVyIj9sKGEoIlRvZGF5J3MgaG91cnMgYXJlIG92ZXIiLCLku4rlpKnnmoTpkp/ngrnmiL/lt7Lnu5PmnZ8iKSk6bz09PSJob3VybHktbm90LXlldCImJnMub3BlbnNBdD9sKGEoYE9uIHNhbGUgdG9kYXkgZnJvbSAke3Mub3BlbnNBdH1gLGDku4rlpKkgJHtzLm9wZW5zQXR9IOW8gOWNlmApKTpvPT09ImhvdXJseS1ub25lIj9hKCJObyByb29tcyBieSB0aGUgaG91ciB0b2RheSIsIuS7iuWkqeayoeaciemSn+eCueaIvyIpOm89PT0ic29sZC1vdXQiJiZ0P2EoIlNvbGQgb3V0IGJ5IHRoZSBob3VyIHRvZGF5Iiwi5LuK5aSp55qE6ZKf54K55oi/5bey6K6i5ruhIik6YSgiTm8gcm9vbSBmb3IgdGhlc2UgZGF0ZXMiLCLov5nkupvml6XmnJ/msqHmnInnqbrmiL8iKX08L3NwYW4+YH1yZXR1cm4gZS5mcm9tTmlnaHRseT9gPHNwYW4gY2xhc3M9InQtZnJvbSI+PHNwYW4gY2xhc3M9InQtcHJlIj4ke2EoIkZyb20gIiwiIil9PC9zcGFuPiR7bChlLmZyb21OaWdodGx5KX0ke2EoIiIsJzxzcGFuIGNsYXNzPSJ0LXByZSI+IOi1tzwvc3Bhbj4nKX08c21hbGw+JHthKCIgLyBuaWdodCArIHRheCIsIuavj+aZmu+8jOacquWQq+eojui0uSIpfTwvc21hbGw+PC9zcGFuPmA6YDxzcGFuIGNsYXNzPSJ0LWZyb20gdC1ub25lIj4ke2EoIkFkZCBkYXRlcyBmb3IgcHJpY2VzIiwi6YCJ5aW95pel5pyf55yL5Lu35qC8Iil9PC9zcGFuPmB9O2xldCBXYT0hMTtjb25zdCBnXz1lPT57Y29uc3QgdD1lLmZvclN0YXk7aWYoIXQpcmV0dXJuIiI7Y29uc3Qgbj1bZS5sb3dlc3Q/YDxzcGFuIGNsYXNzPSJiYWRnZSBnb29kIj4ke2EoIkxvd2VzdCBwcmljZSIsIuacgOS9juS7tyIpfTwvc3Bhbj5gOiIiLC4uLmxiKHQubGFiZWxzLHQubWVhbCksdC5mcmVlQ2FuY2VsbGF0aW9uJiYhV2E/YDxzcGFuIGNsYXNzPSJwZXJrIj4ke0kuY2hlY2t9JHthKCJGcmVlIGNhbmNlbGxhdGlvbiIsIuWFjei0ueWPlua2iCIpfTwvc3Bhbj5gOiIiLE51bWJlcih0LnJvb21zTGVmdCk8PTM/YDxzcGFuIGNsYXNzPSJiYWRnZSB3YXJuIj4ke0kuY2xvY2t9JHtsKGEoYCR7dC5yb29tc0xlZnR9IGxlZnRgLGDku4XliakgJHt0LnJvb21zTGVmdH0g6Ze0YCkpfTwvc3Bhbj5gOiIiXS5maWx0ZXIoQm9vbGVhbik7cmV0dXJuIG4ubGVuZ3RoP2A8c3BhbiBjbGFzcz0idC10YWdzIj4ke24uam9pbigiIil9PC9zcGFuPmA6IiJ9LEt0PSgpPT5qLmNoZWNrSW4mJmouY2hlY2tPdXQ/e2NoZWNrSW46ai5jaGVja0luLGNoZWNrT3V0OmouY2hlY2tPdXQsZ3Vlc3RzOmouZ3Vlc3RzLC4uLlc+MT97cm9vbXM6V306e319Ont9LFNzPWU9Pntjb25zdHtjaGVja0luOnQsY2hlY2tPdXQ6bixndWVzdHM6byxyb29tczpzLC4uLnJ9PWU/P3t9O3JldHVybiByfSxiXz0oZSx0KT0+e2NvbnN0e21pbjpuLHN0YXJ0Om99PW5iKHQpO3JldHVybighai5jaGVja0lufHxqLmNoZWNrSW48bikmJihqLmNoZWNrSW49byksKCFqLmNoZWNrT3V0fHxqLmNoZWNrT3V0PD1qLmNoZWNrSW4pJiYoai5jaGVja091dD1xdChqLmNoZWNrSW4sMSkpLHBhKCJsY2kiLG4se3Jvb21zOkF1KCJkYXRhLWxpc3Qtcm9vbXMiLCJscm4iKSxzaWRlOmU/IiI6YDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJwcmljZS1saXN0Ij4ke2EoIlNob3cgcHJpY2VzIiwi5p+l55yL5Lu35qC8Iil9PC9idXR0b24+YCxwZW5kaW5nOiFlfSl9O2xldCBRZT0iZGF0ZXMiO2NvbnN0IHNiPSJkYXRlcyIsX3M9ZT0+e2NvbnN0IHQ9ZT8/e307cmV0dXJuey4uLnQuZ3JvdXB8fHQuc3VwcGxpZXI/e2dyb3VwOnQuZ3JvdXB8fHQuc3VwcGxpZXJ9Ont9LC4uLnQuYnJhbmQ/e2JyYW5kOnQuYnJhbmR9Ont9LC4uLkFycmF5LmlzQXJyYXkodC5mYWNpbGl0aWVzKSYmdC5mYWNpbGl0aWVzLmxlbmd0aD97ZmFjaWxpdGllczp0LmZhY2lsaXRpZXN9Ont9LC4uLnQuZnJlZUNhbmNlbGxhdGlvbj97ZnJlZUNhbmNlbGxhdGlvbjohMH06e30sLi4udC5icmVha2Zhc3Q/e2JyZWFrZmFzdDohMH06e319fSxaZD1lPT57Y29uc3R7Z3JvdXA6dCxzdXBwbGllcjpuLGJyYW5kOm8sZmFjaWxpdGllczpzLGZyZWVDYW5jZWxsYXRpb246cixicmVha2Zhc3Q6aSwuLi5jfT1lPz97fTtyZXR1cm4gY30sdl89ZT0+e2NvbnN0IHQ9X3MoZSk7cmV0dXJuKHQuZ3JvdXA/MTowKSsodC5icmFuZD8xOjApKyh0LmZhY2lsaXRpZXM/Lmxlbmd0aD8/MCkrKHQuZnJlZUNhbmNlbGxhdGlvbj8xOjApKyh0LmJyZWFrZmFzdD8xOjApKyhlPy5ob3VybHk/MTowKX0sa189e3Bvb2w6WyJQb29sIiwi5rOz5rGgIl0sc3BhOlsiU3BhIiwi5rC055aXIl0sYmVhY2g6WyJCZWFjaGZyb250Iiwi5rW35ruoIl0sZml0bmVzczpbIkZpdG5lc3MgY2VudHJlIiwi5YGl6Lqr5Lit5b+DIl0sa2lkczpbIktpZHMgY2x1YiIsIuWEv+erpeS/seS5kOmDqCJdLGZyZWVDYW5jZWxsYXRpb246WyJGcmVlIGNhbmNlbGxhdGlvbiIsIuWFjei0ueWPlua2iCJdLGJyZWFrZmFzdDpbIkJyZWFrZmFzdCBpbmNsdWRlZCIsIuWQq+aXqSJdfSxxZD0oZSx0KT0+e2NvbnN0IG49a19bU3RyaW5nKGUpXTtyZXR1cm4gbj9hKG5bMF0sblsxXSk6U3RyaW5nKHQ/PyIiKX0seV89ZT0+e2lmKCFlLnJlZmluZSYmIWUuaG91cmx5KXJldHVybiIiO2NvbnN0IHQ9ZS5yZWZpbmU/P3t9LG49KHMscixpLGMpPT5gPGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSBzb3J0IiB0eXBlPSJidXR0b24iIGRhdGEtZmlsdGVyPSIke2wocyl9IiBhcmlhLXByZXNzZWQ9IiR7Yz8idHJ1ZSI6ImZhbHNlIn0iPiR7bChyKX0ke2k9PT12b2lkIDA/IiI6YCA8c21hbGw+JHtsKGkpfTwvc21hbGw+YH08L2J1dHRvbj5gLG89KHMscik9PnIubGVuZ3RoP2A8ZGl2IGNsYXNzPSJmZ3JvdXAiPjxzcGFuIGNsYXNzPSJzb3J0cy1rIj4ke2wocyl9PC9zcGFuPiR7ci5qb2luKCIiKX08L2Rpdj5gOiIiO3JldHVybltvKGEoIkdyb3VwIiwi6ZuG5ZuiIiksKHQuZ3JvdXBzPz9bXSkubWFwKHM9Pm4oYGdyb3VwOiR7cy5pZH1gLFN0cmluZyhNdChzLmlkKT8ubmFtZT8/cy5pZCkscy5jb3VudCxzLm9uKSkpLG8oYSgiQnJhbmQiLCLlk4HniYwiKSwodC5icmFuZHM/P1tdKS5tYXAocz0+bihgYnJhbmQ6JHtzLm5hbWV9YCxPZShzLm5hbWUscy5uYW1lcykscy5jb3VudCxzLm9uKSkpLG8oYSgiSGFzIiwi6K6+5pa9IiksKHQuZmFjaWxpdGllcz8/W10pLm1hcChzPT5uKGBmYWNpbGl0eToke3Mua2V5fWAscWQocy5rZXkscy5sYWJlbCkscy5jb3VudCxzLm9uKSkpLG8oYSgiUm9vbSIsIuaIv+WeiyIpLFsuLi4odC5yb29tPz9bXSkubWFwKHM9Pm4ocy5rZXkscWQocy5rZXkscy5sYWJlbCkscy5jb3VudCxzLm9uKSksLi4uZS5ob3VybHk/W24oImhvdXJseSIsYSgiQnkgdGhlIGhvdXIgdG9kYXkiLCLmnInpkp/ngrnmiL8iKSx2b2lkIDAsISFlLmFzaz8uaG91cmx5KV06W11dKV0uam9pbigiIil9LEthPWU9PiEhZT8uYXNrPy5ob3VybHl8fChlPy5ob3RlbHM/P1tdKS5zb21lKHQ9Pk51bWJlcih0LmZvclN0YXk/LmhvdXJzKT4wKSxyYj0oZSx0LG4pPT57Y29uc3Qgbz0hIWUuc3RheT8uY2hlY2tJbixzPXZfKGUuYXNrKSxyPXlfKGUpLGk9YWIuZmluZCgoW2RdKT0+ZD09PW4pLGM9aT9hKGlbMV0saVsyXSk6YSgiUmVjb21tZW5kZWQiLCLmjqjojZAiKSxoPShkLHUpPT5gPGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSB0b29sIiB0eXBlPSJidXR0b24iIGRhdGEtcGFuZWw9IiR7ZH0iIGFyaWEtZXhwYW5kZWQ9IiR7UWU9PT1kPyJ0cnVlIjoiZmFsc2UifSI+JHt1fTwvYnV0dG9uPmA7cmV0dXJuYAogICAgJHtLYShlKT9gPGRpdiBjbGFzcz0iaG91ci1ub3RlIj4ke0kuY2xvY2t9PHNwYW4+JHthKCJSb29tcyBieSB0aGUgaG91ciwgdG9kYXkuIFBpY2sgYSBob3RlbCB0byBjaG9vc2Ugd2hlbiB5b3UgYXJyaXZlLiIsIuS7iuWkqeeahOmSn+eCueaIv++8jOmAieS4gOWutuWGjeaMkeWIsOW6l+aXtumXtOOAgiIpfTwvc3Bhbj48YnV0dG9uIGNsYXNzPSJsaW5reSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0ibmlnaHRseS1saXN0Ij4ke2EoIlN0YXkgdGhlIG5pZ2h0IGluc3RlYWQiLCLmlLnnnIvmjInmmZrlhaXkvY8iKX08L2J1dHRvbj48L2Rpdj5gOmJfKG8sZSl9CiAgICAke3R8fHJ8fHM/YDxkaXYgY2xhc3M9InBsYWNlcyB0b29sYmFyIj4KICAgICAgJHt0P2goInNvcnQiLGAke0kuc29ydH08c3Bhbj4ke2EoIlNvcnQiLCLmjpLluo8iKX0ke2EoIjogIiwi77yaIil9JHtsKGMpfTwvc3Bhbj5gKToiIn0KICAgICAgJHtyfHxzP2goImZpbHRlcnMiLGAke0kuc2xpZGVyc308c3Bhbj4ke2EoIkZpbHRlcnMiLCLnrZvpgIkiKX0ke3M/YCDCtyAke3N9YDoiIn08L3NwYW4+YCk6IiJ9CiAgICAgICR7cz9gPGJ1dHRvbiBjbGFzcz0ibGlua3kiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImNsZWFyLWZpbHRlcnMiPiR7YSgiQ2xlYXIiLCLmuIXpmaQiKX08L2J1dHRvbj5gOiIifQogICAgPC9kaXY+YDoiIn0KICAgICR7dD9gPGRpdiBjbGFzcz0iZmlsdGVyLXBhbmVsIiBkYXRhLXBhbmVsLWJvZHk9InNvcnQiJHtRZT09PSJzb3J0Ij8iIjoiIGhpZGRlbiJ9PiR7dH08L2Rpdj5gOiIifQogICAgJHtyP2A8ZGl2IGNsYXNzPSJmaWx0ZXItcGFuZWwiIGRhdGEtcGFuZWwtYm9keT0iZmlsdGVycyIke1FlPT09ImZpbHRlcnMiPyIiOiIgaGlkZGVuIn0+JHtyfTwvZGl2PmA6IiJ9YH0sYWI9W1siZ3JvdXAiLCJSZWNvbW1lbmRlZCIsIuaOqOiNkCJdLFsicHJpY2UtbG93IiwiTG93ZXN0IHByaWNlIiwi5Lu35qC85LuO5L2O5Yiw6auYIl0sWyJwcmljZS1oaWdoIiwiSGlnaGVzdCBwcmljZSIsIuS7t+agvOS7jumrmOWIsOS9jiJdLFsicmF0aW5nIiwiUmF0aW5nIiwi6K+E5YiGIl1dLCRfPTM7bGV0IFluPSJpbmxpbmUiLGliPVtdO2NvbnN0IFFuPSgpPT5Zbj09PSJmdWxsc2NyZWVuIix6dT0oKT0+e2NvbnN0IGU9ZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NvbnRlbnQgLnRpbGVzIik7aWYoZT8ub2Zmc2V0V2lkdGgpe2NvbnN0IG89Z2V0Q29tcHV0ZWRTdHlsZShlKS5ncmlkVGVtcGxhdGVDb2x1bW5zLnNwbGl0KCIgIikuZmlsdGVyKEJvb2xlYW4pLmxlbmd0aDtpZihvPjApcmV0dXJuIG99Y29uc3QgdD13aW5kb3cuaW5uZXJXaWR0aHx8cSgiY29udGVudCIpLmNsaWVudFdpZHRofHwwO2lmKHQ8PTUyMClyZXR1cm4gMTtjb25zdCBuPXEoImNvbnRlbnQiKS5jbGllbnRXaWR0aHx8dC00MDtyZXR1cm4gTWF0aC5tYXgoMSxNYXRoLmZsb29yKChuKzE0KS8yMzQpKXx8Mn07bGV0IEN1PTA7Y29uc3Qgd189NSxtYT0oZT0wKT0+e2NvbnN0IHQ9Q3V8fHp1KCksbj10PT09MT93XzpNYXRoLm1heCgyLHQqJF8pO3JldHVybiBlPm4mJmU8PW4rTWF0aC5tYXgoMix0KT9lOm59O2xldCBEcz0wO2NvbnN0IFNfPWU9Pno9PT0iZW4iP2U6ZS5yZXBsYWNlKC8+UHJldmlvdXM8L2csYD4ke2EoIlByZXZpb3VzIHBhZ2UiLCLkuIrkuIDpobUiKX08YCkucmVwbGFjZSgvPk5leHQ8L2csYD4ke2EoIk5leHQgcGFnZSIsIuS4i+S4gOmhtSIpfTxgKS5yZXBsYWNlKC9hcmlhLWxhYmVsPSJQcmV2aW91c1teIl0qIi9nLGBhcmlhLWxhYmVsPSIke2EoIlByZXZpb3VzIHBhZ2UiLCLkuIrkuIDpobUiKX0iYCkucmVwbGFjZSgvYXJpYS1sYWJlbD0iTmV4dFteIl0qIi9nLGBhcmlhLWxhYmVsPSIke2EoIk5leHQgcGFnZSIsIuS4i+S4gOmhtSIpfSJgKS5yZXBsYWNlKC9hcmlhLWxhYmVsPSJQYWdlcyIvZyxgYXJpYS1sYWJlbD0iJHthKCJQYWdlcyIsIue/u+mhtSIpfSJgKS5yZXBsYWNlKC8oXGQrKeKAkyhcZCspIG9mIChcZCspL2csKHQsbixvLHMpPT5hKGAke2594oCTJHtvfSBvZiAke3N9YCxg56ysICR7bn3igJMke299IOWutu+8jOWFsSAke3N9IOWutmApKS5yZXBsYWNlKC8wIG9mIChcZCspL2csKHQsbik9PmEoYDAgb2YgJHtufWAsYOWFsSAke259IOWutmApKS5yZXBsYWNlKC9WaWV3IGFsbCAoXGQrKS9nLCh0LG4pPT5hKGBWaWV3IGFsbCAke259YCxg5p+l55yL5YWo6YOoICR7bn0g5a62YCkpLF9fPShlLHQpPT56PT09ImVuIj9gJHt0fSAke3Q9PT0xP2Uudm9jYWI/Lm5vdW4/PyJob3RlbCI6ZS52b2NhYj8ubm91blBsdXJhbD8/ImhvdGVscyJ9YDp0PT09MT9hKCIxIGhvdGVsIiwiMSDlrrYiKTphKGAke3R9IGhvdGVsc2AsYCR7dH0g5a62YCksal89ZT0+e0RzPW1hKE51bWJlcihlLnRvdGFsPz8oZS5ob3RlbHM/P1tdKS5sZW5ndGgpLU51bWJlcihlLm9mZnNldD8/MCkpO2NvbnN0IHQ9UW4oKT9lLmhvdGVscz8/W106KGUuaG90ZWxzPz9bXSkuc2xpY2UoMCxEcyk7V2E9dC5sZW5ndGg+MSYmdC5ldmVyeShUPT5ULmZvclN0YXk/LmZyZWVDYW5jZWxsYXRpb24pO2NvbnN0IG49Wy4uLm5ldyBTZXQodC5tYXAoVD0+U3RyaW5nKFQuY2l0eSkpKV0sbz1UPT57Y29uc3QgQT10LmZpbmQoWD0+WC5jaXR5PT09VCksUT1BPy5jb3VudHJ5O3JldHVybiBRJiYhU3RyaW5nKFEpLnN0YXJ0c1dpdGgoVCk/SGUoUSxBPy5jb3VudHJ5Q29kZSk6IiJ9LHM9VD0+dnQodC5maW5kKEE9PkEuY2l0eT09PVQpKSxyPVsuLi5uZXcgU2V0KHQubWFwKFQ9PlN0cmluZyhULmNvdW50cnk/PyIiKSkpXSxpPXIubGVuZ3RoPjEsYz1UPT5gCiAgICA8ZGl2IGNsYXNzPSJjaXR5Z3JvdXAiPgogICAgICAke24ubGVuZ3RoPjE/YDxkaXYgY2xhc3M9ImNpdHluYW1lIj4ke2wocyhUKSl9JHshaSYmbyhUKT9gPHNtYWxsPiDCtyAke2wobyhUKSl9PC9zbWFsbD5gOiIifTwvZGl2PmA6IiJ9CiAgICAgIDxkaXYgY2xhc3M9InRpbGVzIj4KICAgICAgICAke3QuZmlsdGVyKEE9PkEuY2l0eT09PVQpLm1hcChBPT5gCiAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJ0aWxlJHtBLmxvd2VzdD8iIGxvd2VzdCI6IiJ9IiB0eXBlPSJidXR0b24iIGRhdGEtaG90ZWw9IiR7bChBLmlkKX0iPgogICAgICAgICAgICA8c3BhbiBjbGFzcz0idC1zaG90IiBzdHlsZT0iJHtfdChTdHJpbmcoQS5pZCkpfSI+CiAgICAgICAgICAgICAgJHtBLmltYWdlVXJsP2A8aW1nIHNyYz0iJHtsKEEuaW1hZ2VVcmwpfSIgYWx0PSIiPmA6IiJ9CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InQtbWFyayI+JHtsKFR0KEgoQSkpKX08L3NwYW4+CiAgICAgICAgICAgICAgJHtCbihBKT9gPHNwYW4gY2xhc3M9InQtYnJhbmQiPiR7bChCbihBKSl9PC9zcGFuPmA6IiJ9CiAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgPHNwYW4gY2xhc3M9InQtYm9keSI+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InQtbmFtZSI+JHtqdChBLm5hbWUsQS5uYW1lcz8ubmFtZSl9PC9zcGFuPgogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0LW1ldGEiPgogICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9InQtd2hlcmUiPiR7bChbZGEoQSksbi5sZW5ndGg+MXx8SChBKS5pbmNsdWRlcyh2dChBKSk/IiI6dnQoQSldLmZpbHRlcihCb29sZWFuKS5qb2luKCIgwrcgIikpfTwvc3Bhbj4KICAgICAgICAgICAgICAgICR7dF8oQS5yYXRpbmcpfQogICAgICAgICAgICAgIDwvc3Bhbj4KICAgICAgICAgICAgICAke2dfKEEpfQogICAgICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0LWZvb3QiPiR7b2IoQSxLYShlKSl9PHNwYW4gY2xhc3M9InQtZ28iIGFyaWEtaGlkZGVuPSJ0cnVlIj4ke0kuY2hldlJ9PC9zcGFuPjwvc3Bhbj4KICAgICAgICAgICAgPC9zcGFuPgogICAgICAgICAgPC9idXR0b24+YCkuam9pbigiIil9CiAgICAgIDwvZGl2PgogICAgPC9kaXY+YCxoPU51bWJlcihlLnRvdGFsPz90Lmxlbmd0aCksZD1OdW1iZXIoZS5vZmZzZXQ/PzApLHU9aC1kLXQubGVuZ3RoLHA9ZS5wbGFjZXM/P1tdO2UuYXNrPy5jaXR5O2NvbnN0IG09cC5sZW5ndGg/YDxkaXYgY2xhc3M9InBsYWNlcyIgcm9sZT0iZ3JvdXAiIGFyaWEtbGFiZWw9IiR7YSgiV2hlcmUiLCLlnLDngrkiKX0iPgogICAgICAgICAgICR7cC5tYXAoKFQsQSk9PmA8YnV0dG9uIGNsYXNzPSJjaGlwIHBsYWNlIiB0eXBlPSJidXR0b24iIGRhdGEtcGxhY2U9IiR7bChULnBsYWNlKX0iJHtBPj1udD8iIGhpZGRlbiI6IiJ9PiR7bChULm5hbWVzP09lKFQubGFiZWwsVC5uYW1lcyk6SGUoVC5sYWJlbCxULmNvZGUpKX0gPHNtYWxsPiR7bChULmNvdW50KX08L3NtYWxsPjwvYnV0dG9uPmApLmpvaW4oIiIpfQogICAgICAgICAgICR7cC5sZW5ndGg+bnQ/YDxidXR0b24gY2xhc3M9ImNoaXAgcGxhY2UiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9Im1vcmUtcGxhY2VzIj4ke2woYShgKyR7cC5sZW5ndGgtbnR9IG1vcmVgLGDov5jmnIkgJHtwLmxlbmd0aC1udH0g5LiqYCkpfTwvYnV0dG9uPmA6IiJ9CiAgICAgICAgIDwvZGl2PmA6IiIseT1TdHJpbmcoZS5zb3J0Pz8iZ3JvdXAiKSwkPSEoKGUuY3VycmVuY2llcz8/W10pLmxlbmd0aD4xKSxTPXQubGVuZ3RoPjE/YDxkaXYgY2xhc3M9InBsYWNlcyIgcm9sZT0iZ3JvdXAiIGFyaWEtbGFiZWw9IiR7YSgiT3JkZXIiLCLmjpLluo8iKX0iPiR7YWIuZmlsdGVyKChbVF0pPT4kfHwhVC5zdGFydHNXaXRoKCJwcmljZSIpKS5tYXAoKFtULEEsUV0pPT5gPGJ1dHRvbiBjbGFzcz0iY2hpcCBwbGFjZSBzb3J0IiB0eXBlPSJidXR0b24iIGRhdGEtc29ydD0iJHtUfSIgYXJpYS1wcmVzc2VkPSIke1Q9PT15PyJ0cnVlIjoiZmFsc2UifSI+JHthKEEsUSl9PC9idXR0b24+YCkuam9pbigiIil9PC9kaXY+YDoiIixOPWUuYXNrPy5jaXR5P05nKGUsU3RyaW5nKGUuYXNrLmNpdHkpKTplLmFzaz8ucXVlcnk/YOKAnCR7U3RyaW5nKGUuYXNrLnF1ZXJ5KX3igJ1gOm4ubGVuZ3RoPT09MT9zKFN0cmluZyhuWzBdKSk6ej09PSJlbiI/YEFsbCAke2Uudm9jYWI/Lm5vdW5QbHVyYWw/PyJob3RlbHMifWA6YSgiQWxsIGhvdGVscyIsIuWFqOmDqOmFkuW6lyIpLEU9ISFlLnN0YXk/LmNoZWNrSW47cmV0dXJuW2A8ZGl2IGNsYXNzPSJsaXN0LWgiPjxoMiBjbGFzcz0iaC1uYW1lIj4ke2woTil9PC9oMj48ZGl2IGNsYXNzPSJoLXdoZXJlIj4ke2woYCR7X18oZSxoKX0gwrcgJHtLYShlKT9hKCJieSB0aGUgaG91ciB0b2RheSwgdGF4ZXMgaW4iLCLku4rlpKnnmoTpkp/ngrnmiL/vvIzlkKvnqI7ku7ciKTpFP1c+MT9hKGBwcmljZXMgZm9yICR7aWUodmUoZS5zdGF5LmNoZWNrSW4sZS5zdGF5LmNoZWNrT3V0KSl9LCAke1d9IHJvb21zLCB0YXhlcyBpbmAsYCR7aWUodmUoZS5zdGF5LmNoZWNrSW4sZS5zdGF5LmNoZWNrT3V0KSl944CBJHtXfemXtOeahOWQq+eojuaAu+S7t2ApOmEoYHByaWNlcyBmb3IgJHtpZSh2ZShlLnN0YXkuY2hlY2tJbixlLnN0YXkuY2hlY2tPdXQpKX0sIHRheGVzIGluYCxgJHtpZSh2ZShlLnN0YXkuY2hlY2tJbixlLnN0YXkuY2hlY2tPdXQpKX3nmoTlkKvnqI7mgLvku7dgKTphKCJhZGQgZGF0ZXMgdG8gc2VlIHdoYXQgYSBzdGF5IGNvc3RzIiwi6YCJ5aW95pel5pyf55yL5L2P5a6/5oC75Lu3Iil9YCl9JHtXYT9gPC9kaXY+PGRpdiBjbGFzcz0iaC1mcmVlIj4ke0kuY2hlY2t9JHthKCJFdmVyeSBob3RlbCBoZXJlIGlzIGZyZWUgdG8gY2FuY2VsIiwi6L+Z6YeM5q+P5a626YO95Y+v5Lul5YWN6LS55Y+W5raIIil9YDoiIn08L2Rpdj48L2Rpdj5gLG0scmIoZSxTLHkpLGUud2lkZW5lZD9gPGRpdiBjbGFzcz0id2Fybm5vdGUiPiR7bChhKGBOb3RoaW5nIG1hdGNoZWQgJHtlLndpZGVuZWQuZnJvbX0uIFRoZXNlIGFyZSAke2Uud2lkZW5lZC50b30uYCxg5rKh5pyJ5om+5Yiw5LiO4oCcJHtlLndpZGVuZWQuZnJvbX3igJ3nm7jnrKbnmoTnu5PmnpzvvIzku6XkuIvmmK8ke2Uud2lkZW5lZC50b33jgIJgKSl9PC9kaXY+YDoiIixgPGRpdj4ke2k/ci5tYXAoVD0+YDxkaXYgY2xhc3M9ImNvdW50cnluYW1lIj4ke2woSGUoVCx0LmZpbmQoQT0+U3RyaW5nKEEuY291bnRyeT8/IiIpPT09VCk/LmNvdW50cnlDb2RlKSl9PC9kaXY+JHtuLmZpbHRlcihBPT50LnNvbWUoUT0+US5jaXR5PT09QSYmU3RyaW5nKFEuY291bnRyeT8/IiIpPT09VCkpLm1hcChjKS5qb2luKCIiKX1gKS5qb2luKCIiKTpuLm1hcChjKS5qb2luKCIiKX08L2Rpdj5gLChlLmN1cnJlbmNpZXM/P1tdKS5sZW5ndGg+MT9gPGRpdiBjbGFzcz0ibm90ZSI+JHtsKGEoYFF1b3RlZCBpbiAke2UuY3VycmVuY2llcy5qb2luKCIsICIpfSDigJQgbm8gcmF0ZSBpcyBhcHBsaWVkIGhlcmUsIHNvIHRoaXMgaXMgbm90IGEgcHJpY2Ugb3JkZXIuIE9uZSBjaXR5IG9yIG9uZSBjb3VudHJ5IGdpdmVzIG9uZSBjdXJyZW5jeS5gLGDku7fmoLzliIbliKvku6UgJHtlLmN1cnJlbmNpZXMuam9pbigi44CBIil9IOiuoe+8jOi/memHjOS4jeWBmuaNoueul++8jOaJgOS7peS4jeaMieS7t+agvOaOkuW6j+OAguWPqueci+S4gOS4quWfjuW4guaIluWbveWutu+8jOWwseWPquacieS4gOenjeW4geenjeOAgmApKX08L2Rpdj5gOiIiLGUub3ZlckJ1ZGdldD9gPGRpdiBjbGFzcz0ibm90ZSI+JHtsKGEoYCR7ZS5vdmVyQnVkZ2V0fSBtb3JlIG1hdGNoZWQgYW5kIGNhbWUgaW4gb3ZlciB0aGUgcHJpY2UgY2VpbGluZy5gLGDlj6bmnIkgJHtlLm92ZXJCdWRnZXR9IOWutuespuWQiOadoeS7tu+8jOS9hui2heWHuuS6huS7t+agvOS4iumZkOOAgmApKX08L2Rpdj5gOiIiLFFuKCk/dT4wP2A8ZGl2IGNsYXNzPSJub3RlIj4ke2woZD9hKGBTaG93aW5nICR7ZCsxfeKAkyR7ZCt0Lmxlbmd0aH0gb2YgJHtofS5gLGDmmL7npLrnrKwgJHtkKzF94oCTJHtkK3QubGVuZ3RofSDlrrbvvIzlhbEgJHtofSDlrrbjgIJgKTphKGBTaG93aW5nICR7dC5sZW5ndGh9IG9mICR7aH0uYCxg5pi+56S656ysIDHigJMke3QubGVuZ3RofSDlrrbvvIzlhbEgJHtofSDlrrbjgIJgKSl9PC9kaXY+CiAgICAgICAgICAgJHtxUyhhKGBTaG93ICR7TWF0aC5taW4oMTIsdSl9IG1vcmVgLGDlho3mmL7npLogJHtNYXRoLm1pbigxMix1KX0g5a62YCksJ2RhdGEtYWN0PSJtb3JlLWhvdGVscyInKX1gOiIiOlNfKFpTKHtmcm9tOmQsY291bnQ6dC5sZW5ndGgsdG90YWw6TnVtYmVyKGgpLHByZXY6J2RhdGEtYWN0PSJwYWdlLXByZXYiJyxuZXh0OidkYXRhLWFjdD0icGFnZS1uZXh0IicsYWxsOmliLmluY2x1ZGVzKCJmdWxsc2NyZWVuIik/J2RhdGEtYWN0PSJmdWxsc2NyZWVuIic6bnVsbCxub3VuOiJob3RlbHMifSkpXS5qb2luKCIiKX0sVF89ZT0+e2NvbnN0IHQ9ZS5uZWFyZXN0Pz9bXSxuPWUud2lkZW5lZD9gPGRpdiBjbGFzcz0id2Fybm5vdGUiPiR7bChhKGBOb3RoaW5nIG1hdGNoZWQgJHtlLndpZGVuZWQuZnJvbX0sIHNvIHRoaXMgbG9va2VkIGluICR7ZS53aWRlbmVkLnRvfS5gLGDmsqHmnInmib7liLDkuI7igJwke2Uud2lkZW5lZC5mcm9tfeKAneebuOespueahOe7k+aenO+8jOaUueS4uuWcqCR7ZS53aWRlbmVkLnRvfemHjOaJvuOAgmApKX08L2Rpdj5gOiIiO2lmKGUuYmVmb3JlRmlsdGVycylyZXR1cm4gUWU9ImZpbHRlcnMiLFtuLGA8ZGl2IGNsYXNzPSJ3YXJubm90ZSI+JHtsKHo9PT0iZW4iP2Uud2h5Pz9gTm9uZSBvZiB0aGUgJHtlLmJlZm9yZUZpbHRlcnN9IGhlcmUgaGFzIGFsbCBvZiB0aG9zZSB0b2dldGhlci5gOmEoYE5vbmUgb2YgdGhlICR7ZS5iZWZvcmVGaWx0ZXJzfSBob3RlbHMgaGVyZSBoYXMgYWxsIG9mIHRob3NlIHRvZ2V0aGVyLmAsYOi/memHjOeahCAke2UuYmVmb3JlRmlsdGVyc30g5a626YWS5bqX77yM5rKh5pyJ5LiA5a625ZCM5pe25ruh6Laz6L+Z5Lqb5p2h5Lu244CCYCkpfTwvZGl2PmAscmIoZSwiIixTdHJpbmcoZS5hc2s/LnNvcnQ/PyJncm91cCIpKV0uam9pbigiIik7aWYoIXQubGVuZ3RoKXtjb25zdCBvPVN0cmluZyhlLmFzaz8uY2l0eT8/ZS5xdWVyeT8/ZS53aWRlbmVkPy5mcm9tPz8iIik7cmV0dXJuYCR7bn0KICAgICAgPGRpdiBjbGFzcz0ic3RhdGUiPgogICAgICAgIDxkaXYgY2xhc3M9InN0YXRlLWljbyI+JHtJLnNlYXJjaH08L2Rpdj4KICAgICAgICA8aDIgY2xhc3M9InN0YXRlLXQiPiR7bz9sKGEoYE5vdGhpbmcgaW4g4oCcJHtvfeKAnWAsYOKAnCR7b33igJ3msqHmnInnu5PmnpxgKSk6YSgiTm8gaG90ZWxzIG1hdGNoIiwi5rKh5pyJ56ym5ZCI5p2h5Lu255qE6YWS5bqXIil9PC9oMj4KICAgICAgICA8cCBjbGFzcz0ic3RhdGUtZCI+JHtvP2woYShgTm8gaG90ZWwgaGVyZSBpcyBpbiBvciBuZWFyIOKAnCR7b33igJ0uIFRyeSBhIGNpdHkgb3IgYSBjb3VudHJ5LmAsYOi/memHjOayoeacieS9jeS6juKAnCR7b33igJ3miJbpmYTov5HnmoTphZLlupfjgILmjaLkuKrln47luILmiJblm73lrrbor5Xor5XjgIJgKSk6YSgiVHJ5IGEgY2l0eSwgYSBjb3VudHJ5IG9yIGEgaG90ZWwgbmFtZS4iLCLmjaLkuKrln47luILjgIHlm73lrrbmiJbphZLlupflkI3or5Xor5XjgIIiKX08L3A+CiAgICAgICAgPGRpdiBjbGFzcz0ic2VhcmNoIHJldHJ5Ij4KICAgICAgICAgIDxsYWJlbCBjbGFzcz0id2hlcmUiPiR7SS5zZWFyY2h9PGlucHV0IGlkPSJ3aGVyZSIgdHlwZT0ic2VhcmNoIiBhdXRvY29tcGxldGU9Im9mZiIgcGxhY2Vob2xkZXI9IiR7YSgiQ2l0eSBvciBob3RlbCIsIuWfjuW4guaIlumFkuW6l+WQjSIpfSIgYXJpYS1sYWJlbD0iJHthKCJXaGVyZSB0byIsIuebrueahOWcsCIpfSI+PC9sYWJlbD4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJmaW5kIj4ke2EoIlNlYXJjaCIsIuaQnOe0oiIpfTwvYnV0dG9uPgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImZvb3QiPjxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJob21lIj4ke0kucGlufSR7YSgiU2VlIGV2ZXJ5IGRlc3RpbmF0aW9uIiwi5p+l55yL5YWo6YOo55uu55qE5ZywIil9PC9idXR0b24+PC9kaXY+CiAgICAgIDwvZGl2PmB9cmV0dXJuW24sYDxkaXYgY2xhc3M9Indhcm5ub3RlIj4ke2wodC5sZW5ndGg9PT0xP2EoIk5vdGhpbmcgY2FtZSBpbiB1bmRlciB0aGUgcHJpY2UgY2VpbGluZy4gVGhlIG5lYXJlc3QgaXMgb3ZlciBpdC4iLCLmsqHmnInkvY7kuo7ku7fmoLzkuIrpmZDnmoTphZLlupfjgILku6XkuIvmmK/mnIDmjqXov5HnmoTlh6DlrrbvvIzku7fmoLznlaXpq5jjgIIiKTphKCJOb3RoaW5nIGNhbWUgaW4gdW5kZXIgdGhlIHByaWNlIGNlaWxpbmcuIFRoZSBuZWFyZXN0IGFyZSBvdmVyIGl0LiIsIuayoeacieS9juS6juS7t+agvOS4iumZkOeahOmFkuW6l+OAguS7peS4i+aYr+acgOaOpei/keeahOWHoOWutu+8jOS7t+agvOeVpemrmOOAgiIpKX08L2Rpdj5gLGA8ZGl2IGNsYXNzPSJ0aWxlcyI+JHt0Lm1hcChvPT5gCiAgICAgIDxidXR0b24gY2xhc3M9InRpbGUgb3ZlciIgdHlwZT0iYnV0dG9uIiBkYXRhLWhvdGVsPSIke2woby5pZCl9Ij4KICAgICAgICA8c3BhbiBjbGFzcz0idC1zaG90IiBzdHlsZT0iJHtfdChTdHJpbmcoby5pZCkpfSI+CiAgICAgICAgICAke28uaW1hZ2VVcmw/YDxpbWcgc3JjPSIke2woby5pbWFnZVVybCl9IiBhbHQ9IiI+YDoiIn0KICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0LW1hcmsiPiR7bChUdChIKG8pKSl9PC9zcGFuPgogICAgICAgIDwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0idC1ib2R5Ij4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0LW5hbWUiPiR7anQoby5uYW1lLG8ubmFtZXM/Lm5hbWUpfTwvc3Bhbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJ0LXdoZXJlIj4ke2woW2RhKG8pLHZ0KG8pXS5maWx0ZXIoQm9vbGVhbikuam9pbigiIMK3ICIpKX08L3NwYW4+CiAgICAgICAgICA8c3BhbiBjbGFzcz0idC1mb290Ij4KICAgICAgICAgICAgJHtvYihvKX0KICAgICAgICAgICAgPHNwYW4gY2xhc3M9ImJhZGdlIHdhcm4iPiR7YSgiT3ZlciIsIui2heWHuiIpfTwvc3Bhbj4KICAgICAgICAgIDwvc3Bhbj4KICAgICAgICA8L3NwYW4+CiAgICAgIDwvYnV0dG9uPmApLmpvaW4oIiIpfTwvZGl2PmBdLmpvaW4oIiIpfSxjYj1lPT57Y29uc3QgdD1bZGEoZSksdnQoZSksU3RyaW5nKGUuY291bnRyeT8/IiIpLnN0YXJ0c1dpdGgoU3RyaW5nKGUuY2l0eSkpfHxsbigpJiYhdW4oU3RyaW5nKGUuY291bnRyeT8/IiIpKSYmIWUuY291bnRyeUNvZGU/IiI6SGUoZS5jb3VudHJ5LGUuY291bnRyeUNvZGUpXS5maWx0ZXIoQm9vbGVhbikuam9pbigiIMK3ICIpO3JldHVybmAKICA8ZGl2IGNsYXNzPSJoZXJvIiBzdHlsZT0iJHtfdChTdHJpbmcoZS5pZCkpfSI+CiAgICAke2UuaW1hZ2VVcmw/YDxpbWcgc3JjPSIke2woZS5pbWFnZVVybCl9IiBhbHQ9IiI+YDoiIn0KICAgIDxzcGFuIGNsYXNzPSJ0LW1hcmsiPiR7bChUdChIKGUpKSl9PC9zcGFuPgogICAgPGRpdiBjbGFzcz0iaGVyby10eHQiPgogICAgICAke0JuKGUpJiYhSChlKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKEJuKGUpLnRvTG93ZXJDYXNlKCkpP2A8c3BhbiBjbGFzcz0idC1icmFuZCI+JHtsKEJuKGUpKX08L3NwYW4+YDoiIn0KICAgICAgPGgyIGNsYXNzPSJob3RlbC1uYW1lIj4ke2p0KGUubmFtZSxlLm5hbWVzPy5uYW1lKX08L2gyPgogICAgICA8ZGl2IGNsYXNzPSJoZXJvLXdoZXJlIj48c3Bhbj4ke2wodCl9PC9zcGFuPiR7ZS5yYXRpbmc/YDxzcGFuIGNsYXNzPSJyYXRlIj4ke0JnfSR7bChlLnJhdGluZy52YWx1ZSl9PHNtYWxsPigke2woTnVtYmVyKGUucmF0aW5nLmNvdW50KS50b0xvY2FsZVN0cmluZyh6ZVt6XSkpfSk8L3NtYWxsPjwvc3Bhbj5gOiIifTwvZGl2PgogICAgPC9kaXY+CiAgPC9kaXY+CiAgJHtlLnN1bW1hcnk/L15ccyoo5qih5ouf5pWw5o2ufHNpbXVsYXRlZHx0ZXN0IGRhdGEpL2kudGVzdChTdHJpbmcoZS5zdW1tYXJ5KSk/YDxkaXYgY2xhc3M9Imgtc3VtIHNpbS1ub3RlIj4ke0kuaW5mb308c3Bhbj4ke2woZS5zdW1tYXJ5KX08L3NwYW4+PC9kaXY+YDpgPGRpdiBjbGFzcz0iaC1zdW0iPiR7bChlLnN1bW1hcnkpfTwvZGl2PmA6IiJ9CiAgJHsoZS5hbWVuaXRpZXM/P1tdKS5sZW5ndGg/YDx1bCBjbGFzcz0iYW1lbiIgYXJpYS1sYWJlbD0iJHthKCJXaGF0IHRoZSBob3RlbCBoYXMiLCLphZLlupforr7mlr0iKX0iPiR7ZS5hbWVuaXRpZXMuc2xpY2UoMCw4KS5tYXAobj0+YDxsaT4ke2wobil9PC9saT5gKS5qb2luKCIiKX08L3VsPmA6IiJ9YH0sQV89eyJyb29tLW9ubHkiOnt0ZXh0OiJSb29tIG9ubHkiLHpoOiLkuI3lkKvml6kifSxicmVha2Zhc3Q6e3RleHQ6IkJyZWFrZmFzdCIsemg6IuWQq+aXqSJ9LCJicmVha2Zhc3QtMSI6e3RleHQ6IkJyZWFrZmFzdCBmb3IgMSIsemg6IuWNleaXqSJ9LCJicmVha2Zhc3QtMiI6e3RleHQ6IkJyZWFrZmFzdCBmb3IgMiIsemg6IuWPjOaXqSJ9LCJicmVha2Zhc3QtMyI6e3RleHQ6IkJyZWFrZmFzdCBmb3IgMyIsemg6IuS4ieaXqSJ9LHBhY2thZ2U6e3RleHQ6IlBhY2thZ2UiLHpoOiLlpZfppJAifSwiZmxhc2gtc2FsZSI6e3RleHQ6IkZsYXNoIHNhbGUiLHpoOiLpmZDml7bnibnku7ciLHNhdmU6ITB9LCJuaWdodC1zbmFjayI6e3RleHQ6IkxhdGUtbmlnaHQgcmF0ZSIsemg6IuWknOWuteS7tyIsc2F2ZTohMH0sImVhcmx5LWJvb2tpbmciOnt0ZXh0OiJCb29rLWFoZWFkIHJhdGUiLHpoOiLmj5DliY3orqLkvJjmg6AiLHNhdmU6ITB9LHByb21vdGlvbjp7dGV4dDoiUHJvbW90aW9uIix6aDoi5L+D6ZSAIixzYXZlOiEwfX0sTnU9KGUsdD1uZXcgU2V0KT0+W0d0KGUpJiYhdC5oYXMoImJlZHMiKT9gPGxpPiR7SS5iZWR9JHtsKEd0KGUpKX08L2xpPmA6IiIsdC5oYXMoInNsZWVwcyIpPyIiOmA8bGk+JHtJLnVzZXJzfSR7bChhKGBTbGVlcHMgJHtlLnNsZWVwc31gLGDlj6/kvY8gJHtlLnNsZWVwc30g5Lq6YCkpfSR7TnVtYmVyKGUubWF4Q2hpbGRyZW4pPjA/bChOdW1iZXIoZS5tYXhDaGlsZHJlbik9PT0xP2EoIiDCtyAxIGNoaWxkIiwiIMK3IOWPr+W4piAxIOWQjeWEv+erpSIpOmEoYCDCtyAke2UubWF4Q2hpbGRyZW59IGNoaWxkcmVuYCxgIMK3IOWPr+W4piAke2UubWF4Q2hpbGRyZW59IOWQjeWEv+erpWApKToiIn08L2xpPmAsZS5zaXplU3FtP2A8bGk+JHtJLnNpemV9JHtsKGUuc2l6ZVNxbSl9IG3CsjwvbGk+YDoiIiwoZS52aWV3fHxlLndpbmRvdykmJiF0LmhhcygidmlldyIpP2A8bGk+JHtlLndpbmRvd3x8L3dpbmRvd3znqpcvaS50ZXN0KFN0cmluZyhlLnZpZXcpKT9JLndpbmRvdzpJLnZpZXd9JHtsKG1iKGUpKX08L2xpPmA6IiJdLmpvaW4oIiIpLFB1PWU9Pntjb25zdCB0PUFycmF5LmlzQXJyYXkoZS5sYWJlbHMpP2UubGFiZWxzOltdO3JldHVybltlLmJyZWFrZmFzdCYmIShlLm1lYWwmJkl1KGUubWVhbCkpJiYhdC5zb21lKG49Pm4uc3RhcnRzV2l0aCgiYnJlYWtmYXN0IikpP2A8bGkgY2xhc3M9InBlcmsiPiR7SS5jdXB9PHNwYW4+JHthKCI8Yj5CcmVha2Zhc3Q8L2I+IGluY2x1ZGVkIiwiPGI+5ZCr5pep6aSQPC9iPiIpfTwvc3Bhbj48L2xpPmA6IiIsZS5ob3VybHk/IiI6ZS5yZWZ1bmRhYmxlP2A8bGkgY2xhc3M9InBlcmsiPiR7SS5jaGVja308c3Bhbj48Yj4ke2EoIkZyZWUgY2FuY2VsbGF0aW9uIiwi5YWN6LS55Y+W5raIIil9PC9iPiR7ZS5mcmVlQ2FuY2VsbGF0aW9uTG9jYWw/bChhKGAgdW50aWwgJHt1YihlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbCxlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbElzbyl9YCxg77yMJHtEdChlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbCxlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbElzbyl9IOWJjWApKToiIn08L3NwYW4+PC9saT5gOmA8bGkgY2xhc3M9InBlcmsgd2FybiI+JHtJLmFsZXJ0fTxzcGFuPjxiPiR7YSgiTm9uLXJlZnVuZGFibGUiLCLkuI3lj6/lj5bmtogiKX08L2I+JHthKCIg4oCUIHRoaXMgcmF0ZSBjYW5ub3QgYmUgY2FuY2VsbGVkIiwi77yM5q2k5Lu35qC86K6i5ZCO5LiN6IO96YCA5pS5Iil9PC9zcGFuPjwvbGk+YCxlLm1lbWJlclJhdGU/YDxsaSBjbGFzcz0icGVyayBzYXZlIj4ke0kudGFnfTxzcGFuPjxiPiR7bChhKGAke2UubWVtYmVyUmF0ZS50aWVyfSBtZW1iZXIgcmF0ZWAsYCR7ZS5tZW1iZXJSYXRlLnRpZXJ95Lya5ZGY5Lu3YCkpfTwvYj4ke2EoIiBhcHBsaWVkIiwi5bey55Sf5pWIIil9PC9zcGFuPjwvbGk+YDoiIixlLnBheW1lbnQ9PT0icHJlcGFpZCI/YDxsaSBjbGFzcz0icGVyayI+JHtJLmxvY2t9PHNwYW4+PGI+JHthKCJQYWlkIGluIGFkdmFuY2UiLCLpnIDpooTku5giKX08L2I+PC9zcGFuPjwvbGk+YDoiIl0uam9pbigiIil9LHpfPW5ldyBTZXQoWyJyb29tLW9ubHkiLCJicmVha2Zhc3QiLCJicmVha2Zhc3QtMSIsImJyZWFrZmFzdC0yIiwiYnJlYWtmYXN0LTMiXSksbGI9KGUsdCk9Pntjb25zdCBuPXQ/SXUodCk6IiI7cmV0dXJuW24/YDxzcGFuIGNsYXNzPSJiYWRnZSI+JHtsKG4pfTwvc3Bhbj5gOiIiLC4uLihBcnJheS5pc0FycmF5KGUpP2U6W10pLmZpbHRlcihvPT4hKG4mJnpfLmhhcyhvKSkpLm1hcChvPT5BX1tvXSkuZmlsdGVyKEJvb2xlYW4pLm1hcChvPT5gPHNwYW4gY2xhc3M9ImJhZGdlJHtvPy5zYXZlPyIgZ29vZCI6IiJ9Ij4ke2woYShvPy50ZXh0Pz8iIixvPy56aD8/IiIpKX08L3NwYW4+YCldLmZpbHRlcihCb29sZWFuKX0seHU9ZT0+e2NvbnN0IHQ9bGIoZS5sYWJlbHMsZS5tZWFsKTtyZXR1cm4gdC5sZW5ndGg/YDxkaXYgY2xhc3M9ImJhZGdlcyI+JHt0LmpvaW4oIiIpfTwvZGl2PmA6IiJ9LENfPXtXaW5kb3c6IuacieeqlyIsIk5vIHdpbmRvdyI6IuaXoOeqlyIsIlJvb20gb25seSI6IuS4jeWQq+aXqSIsIkJyZWFrZmFzdCBpbmNsdWRlZCI6IuWQq+aXqSIsQ2l0eToi5Z+O5pmvIn0sR2E9WyJKYW4iLCJGZWIiLCJNYXIiLCJBcHIiLCJNYXkiLCJKdW4iLCJKdWwiLCJBdWciLCJTZXAiLCJPY3QiLCJOb3YiLCJEZWMiXSxKYT1bIlN1biIsIk1vbiIsIlR1ZSIsIldlZCIsIlRodSIsIkZyaSIsIlNhdCJdLHViPShlLHQpPT56PT09ImVuIj9EdChlLHQpLnJlcGxhY2UoLyAvZywiwqAiKTpEdChlLHQpLGRiPShlLHQsbixvKT0+e2lmKHo9PT0iZW4iKXJldHVybmAke0phW25dfSAke3R9ICR7R2FbZV19LCAke299YDtpZih6PT09InpoIilyZXR1cm5gJHtlKzF95pyIJHt0feaXpSAke0hnW25dfSAke299YDtjb25zdCBzPW5ldyBEYXRlKERhdGUuVVRDKDIwMjQsZSx0LDEyKSkudG9Mb2NhbGVEYXRlU3RyaW5nKHplW3pdLHtkYXk6Im51bWVyaWMiLG1vbnRoOiJzaG9ydCIsdGltZVpvbmU6IlVUQyJ9KSxyPW5ldyBEYXRlKERhdGUuVVRDKDIwMjQsMCw3K24sMTIpKS50b0xvY2FsZURhdGVTdHJpbmcoemVbel0se3dlZWtkYXk6InNob3J0Iix0aW1lWm9uZToiVVRDIn0pO3JldHVybiB6PT09ImphIj9gJHtzfSgke3J9KSAke299YDp6PT09ImtvIj9gJHtzfSAoJHtyfSkgJHtvfWA6ej09PSJmciI/YCR7cn0gJHtzfSwgJHtvfWA6ej09PSJkZSJ8fHo9PT0iZXMiP2Ake3J9LCAke3N9LCAke299YDpgJHtzfSAke3J9ICR7b31gfSxEdD0oZSx0KT0+e2NvbnN0IG49eiE9PSJ6aCImJnR5cGVvZiB0PT0ic3RyaW5nIj8vXihcZHs0fSktKFxkezJ9KS0oXGR7Mn0pVChcZHsyfTpcZHsyfSkoPzo6XGR7Mn0oPzpcLlxkKyk/KT8oPzpbKy1dXGR7Mn06P1xkezJ9KT8kLy5leGVjKHQpOm51bGw7aWYoIW4pcmV0dXJuIEV1KGUpO2NvbnN0W28scyxyXT1bTnVtYmVyKG5bMV0pLE51bWJlcihuWzJdKS0xLE51bWJlcihuWzNdKV07cmV0dXJuIGRiKHMscixuZXcgRGF0ZShEYXRlLlVUQyhvLHMscikpLmdldFVUQ0RheSgpLG5bNF0/PyIiKX0saGI9e3llczpbIldpbmRvdyIsIuacieeqlyJdLG5vOlsiTm8gd2luZG93Iiwi5peg56qXIl0scGFydGlhbDpbIlBhcnRpYWwgd2luZG93Iiwi6YOo5YiG5pyJ56qXIl0saW5uZXI6WyJJbm5lciB3aW5kb3csIG9udG8gYSBjb3VydHlhcmQiLCLlhoXnqpco5pyd5aSp5LqVKSJdfSxwYj1lPT57Y29uc3QgdD1oYltTdHJpbmcoZSldO3JldHVybiB0P2EodFswXSx0WzFdKToiIn0sTl89ZT0+ZTw9MD9hKCJSb29tIG9ubHkiLCLkuI3lkKvml6kiKTplPT09MT9hKCJCcmVha2Zhc3QgZm9yIDEiLCLljZXml6kiKTplPT09Mj9hKCJCcmVha2Zhc3QgZm9yIDIiLCLlj4zml6kiKTplPT09Mz9hKCJCcmVha2Zhc3QgZm9yIDMiLCLkuInml6kiKTphKGBCcmVha2Zhc3QgZm9yICR7ZX1gLGAke2V95pepYCksbWI9ZT0+eiE9PSJ6aCImJnBiKGUud2luZG93KXx8RXUoZS52aWV3KSxJdT1lPT57Y29uc3QgdD1OdW1iZXIoZT8uY291bnQpfHwwO3N3aXRjaChlPy5wbGFuKXtjYXNlIm5vbmUiOnJldHVybiBhKCJSb29tIG9ubHkiLCLkuI3lkKvml6kiKTtjYXNlImJyZWFrZmFzdCI6cmV0dXJuIHQ+MD9OXyh0KTphKCJCcmVha2Zhc3QiLCLlkKvml6kiKTtjYXNlImJ1ZmZldC1icmVha2Zhc3QiOnJldHVybiB0PjE/YShgQnVmZmV0IGJyZWFrZmFzdCBmb3IgJHt0fWAsYOWQq+iHquWKqeaXqSDDlyAke3R9YCk6YSgiQnVmZmV0IGJyZWFrZmFzdCIsIuWQq+iHquWKqeaXqSIpO2Nhc2UiaGFsZi1ib2FyZCI6cmV0dXJuIHQ+MT9hKGBIYWxmIGJvYXJkIGZvciAke3R9YCxg5ZCr5Y2K6aSQIMOXICR7dH1gKTphKCJIYWxmIGJvYXJkIiwi5ZCr5Y2K6aSQIik7Y2FzZSJmdWxsLWJvYXJkIjpyZXR1cm4gdD4xP2EoYEZ1bGwgYm9hcmQgZm9yICR7dH1gLGDlkKvlhajppJAgw5cgJHt0fWApOmEoIkZ1bGwgYm9hcmQiLCLlkKvlhajppJAiKTtjYXNlImFsbC1pbmNsdXNpdmUiOnJldHVybiB0PjE/YShgQWxsIGluY2x1c2l2ZSBmb3IgJHt0fWAsYOWFqOWMhSDDlyAke3R9YCk6YSgiQWxsIGluY2x1c2l2ZSIsIuWFqOWMhSIpO2RlZmF1bHQ6cmV0dXJuIiJ9fSxQXz17a2luZzpbIktpbmcgYmVkIiwi5aSn5bqKIl0sdHdpbjpbIlR3aW4gYmVkcyIsIuWPjOW6iiJdLHNpbmdsZTpbIlNpbmdsZSBiZWQiLCLljZXkurrluooiXX0sZmI9ZT0+QXJyYXkuaXNBcnJheShlKT9lLm1hcCh0PT57Y29uc3Qgbj1QX1tTdHJpbmcodD8ua2luZCldO3JldHVybltuP2EoblswXSxuWzFdKTpTdHJpbmcodD8ubmFtZT8/IiIpLHQ/LnNpemU/U3RyaW5nKHQuc2l6ZSk6IiJdLmZpbHRlcihCb29sZWFuKS5qb2luKCIgIil9KS5maWx0ZXIoQm9vbGVhbikuam9pbigiIC8gIik6IiIsR3Q9ZT0+eiE9PSJ6aCImJmZiKGUuYmVkVHlwZXMpfHwoZS5iZWRzP1N0cmluZyhlLmJlZHMpOiIiKSxnYj1lPT57Y29uc3QgdD1lLm1lYWwsbj1BcnJheS5pc0FycmF5KGUuYmVkVHlwZXMpfHxoYltTdHJpbmcoZS53aW5kb3cpXXx8dD8ucGxhbjtyZXR1cm4gej09PSJ6aCJ8fCFuP2UuZGV0YWlsP0V1KGUuZGV0YWlsKToiIjpbZmIoZS5iZWRUeXBlcykscGIoZS53aW5kb3cpLHQ/SXUodCk6IiIsZS5ob3VybHk/LnN0YXJ0P2Ake2UuaG91cmx5LnN0YXJ0feKAkyR7YmIoZS5ob3VybHkuc3RhcnQsTnVtYmVyKGUuaG91cmx5LmhvdXJzKSl9YDoiIl0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiDCtyAiKX0sRXU9ZT0+e2NvbnN0IHQ9U3RyaW5nKGU/PyIiKTtyZXR1cm4gej09PSJlbiI/dDp0LnNwbGl0KCIgwrcgIikubWFwKG49Pntjb25zdCBvPS9eKFx3ezN9KSAoXGR7MSwyfSkgKFx3ezN9KSw/IChcZHsxLDJ9OlxkezJ9KSQvLmV4ZWMobi50cmltKCkpO2lmKG8mJkdhLmluY2x1ZGVzKG9bM10/PyIiKSYmSmEuaW5jbHVkZXMob1sxXT8/IiIpKXJldHVybiBkYihHYS5pbmRleE9mKG9bM10/PyIiKSxOdW1iZXIob1syXSksSmEuaW5kZXhPZihvWzFdPz8iIiksb1s0XT8/IiIpO2NvbnN0IHM9Q19bbi50cmltKCldO3JldHVybiBzP2Eobi50cmltKCkscyk6bn0pLmpvaW4oIiDCtyAiKX0seF89KGUsdCxuKT0+YCR7X2UoZSl9IMK3ICR7dH3igJMke2JiKHQsbil9IMK3ICR7WGUobil9YCxiYj0oZSx0KT0+e2NvbnN0W24sb109ZS5zcGxpdCgiOiIpLm1hcChOdW1iZXIpLHM9KG4/PzApKjYwKyhvPz8wKSt0KjYwO3JldHVybmAke1N0cmluZyhNYXRoLmZsb29yKHMvNjApJTI0KS5wYWRTdGFydCgyLCIwIil9OiR7U3RyaW5nKHMlNjApLnBhZFN0YXJ0KDIsIjAiKX1gfSxmYT0oZSx0KT0+dD8uc3RhcnQmJmU/LmNoZWNrSW4/eF8oU3RyaW5nKGUuY2hlY2tJbiksU3RyaW5nKHQuc3RhcnQpLE51bWJlcih0LmhvdXJzKSk6cnMoZSksZ2E9KGUsdCk9PntpZighZT8uY2hlY2tJbnx8IWU/LmNoZWNrT3V0KXJldHVybiIiO2NvbnN0IG49KHMscixpPSIiKT0+e2NvbnN0IGM9WWUocik7cmV0dXJuYDxkaXYgY2xhc3M9ImJhbmQtZCI+PHNwYW4gY2xhc3M9IndsIj4ke3N9PC9zcGFuPjxzcGFuIGNsYXNzPSJ3diI+JHtsKGMubWQpfTxzbWFsbD4ke2woYy5kb3cpfSR7aX08L3NtYWxsPjwvc3Bhbj48L2Rpdj5gfTtpZih0Py5zdGFydCl7Y29uc3RbcyxyXT1TdHJpbmcodC5zdGFydCkuc3BsaXQoIjoiKS5tYXAoTnVtYmVyKSxpPShzPz8wKSo2MCsocj8/MCkrTnVtYmVyKHQuaG91cnMpKjYwLGM9YCR7U3RyaW5nKE1hdGguZmxvb3IoaS82MCklMjQpLnBhZFN0YXJ0KDIsIjAiKX06JHtTdHJpbmcoaSU2MCkucGFkU3RhcnQoMiwiMCIpfWA7cmV0dXJuYDxkaXYgY2xhc3M9ImJhbmQiIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSIke2woZmEoZSx0KSl9Ij4ke24oYSgiQXJyaXZlIiwi5Yiw5bqXIiksZS5jaGVja0luLGAgJHtsKHQuc3RhcnQpfWApfTxzcGFuIGNsYXNzPSJ3aGVuLW4iPiR7bChYZSh0LmhvdXJzKSl9PC9zcGFuPjxkaXYgY2xhc3M9ImJhbmQtZCI+PHNwYW4gY2xhc3M9IndsIj4ke2EoIkxlYXZlIGJ5Iiwi5pyA5pma56a75bqXIil9PC9zcGFuPjxzcGFuIGNsYXNzPSJ3diI+JHtsKGMpfTwvc3Bhbj48L2Rpdj48L2Rpdj5gfWNvbnN0IG89TnVtYmVyKGUuZ3Vlc3RzKT4wP0VfKE51bWJlcihlLmd1ZXN0cykpOiIiO3JldHVybmA8ZGl2IGNsYXNzPSJiYW5kIiByb2xlPSJncm91cCIgYXJpYS1sYWJlbD0iJHtsKFtycyhlKSxvXS5maWx0ZXIoQm9vbGVhbikuam9pbigiLCAiKSl9Ij4ke24oYSgiQ2hlY2staW4iLCLlhaXkvY8iKSxlLmNoZWNrSW4pfTxzcGFuIGNsYXNzPSJ3aGVuLW4iPiR7bChpZSh2ZShlLmNoZWNrSW4sZS5jaGVja091dCkpKX0ke28/YDxzbWFsbD4ke2wobyl9PC9zbWFsbD5gOiIifTwvc3Bhbj4ke24oYSgiQ2hlY2stb3V0Iiwi56a75bqXIiksZS5jaGVja091dCl9PC9kaXY+YH0sSV89KGUsdCk9PnQhPT0yP2U9PT0xP2EoYDEgcm9vbSB0eXBlIHRoYXQgc2xlZXBzICR7dH1gLGAxIOenjeWPr+S9jyAke3R9IOS6uueahOaIv+Wei2ApOmEoYCR7ZX0gcm9vbSB0eXBlcyB0aGF0IHNsZWVwICR7dH1gLGAke2V9IOenjeWPr+S9jyAke3R9IOS6uueahOaIv+Wei2ApOmU9PT0xP2EoIjEgcm9vbSB0eXBlIiwiMSDnp43miL/lnosiKTphKGAke2V9IHJvb20gdHlwZXNgLGAke2V9IOenjeaIv+Wei2ApLEVfPWU9PmU9PT0xP2EoIjEgZ3Vlc3QiLCIx5L2NIik6YShgJHtlfSBndWVzdHNgLGAke2V95L2NYCksdmI9ZT0+e2NvbnN0IHQ9aD0+e2NvbnN0IGQ9L14oXGR7MSwyfSk6KFxkezJ9KSQvLmV4ZWMoU3RyaW5nKGg/PyIiKSk7cmV0dXJuIGQ/TnVtYmVyKGRbMV0pKjYwK051bWJlcihkWzJdKTp2b2lkIDB9LG49dChlPy5lYXJsaWVzdFN0YXJ0KSxvPXQoZT8ubGF0ZXN0U3RhcnQpLHM9dChlPy5sYXRlc3RFbmQpPz8xNDQwLHI9TnVtYmVyKGU/LmhvdXJzKXx8MDtpZihuPT09dm9pZCAwfHxvPT09dm9pZCAwKXJldHVybltdO2NvbnN0IGk9TWF0aC5jZWlsKG4vNSkqNSxjPWk8PW8/W2ldOltdO2ZvcihsZXQgaD1NYXRoLmNlaWwoKGkrMSkvNjApKjYwO2g8PW87aCs9NjApYy5wdXNoKGgpO3JldHVybiBjLmZpbHRlcihoPT5oPD1vJiZoK3IqNjA8PXMpLm1hcChoPT5gJHtTdHJpbmcoTWF0aC5mbG9vcihoLzYwKSkucGFkU3RhcnQoMiwiMCIpfToke1N0cmluZyhoJTYwKS5wYWRTdGFydCgyLCIwIil9YCl9LGJzPShlLHQpPT57Y29uc3Qgbj0vXihcZHsxLDJ9KTooXGR7Mn0pJC8uZXhlYyhlKTtpZighbilyZXR1cm4gU3RyaW5nKHQ/LmxhdGVzdEVuZD8/IiIpO2NvbnN0IG89TnVtYmVyKG5bMV0pKjYwK051bWJlcihuWzJdKSsoTnVtYmVyKHQ/LmhvdXJzKXx8MCkqNjAscz0vXihcZHsxLDJ9KTooXGR7Mn0pJC8uZXhlYyhTdHJpbmcodD8ubGF0ZXN0RW5kPz8iIikpLHI9cz9OdW1iZXIoc1sxXSkqNjArTnVtYmVyKHNbMl0pOm8saT1NYXRoLm1pbihvLHIpO3JldHVybmAke1N0cmluZyhNYXRoLmZsb29yKGkvNjApJTI0KS5wYWRTdGFydCgyLCIwIil9OiR7U3RyaW5nKGklNjApLnBhZFN0YXJ0KDIsIjAiKX1gfSxSdT1uZXcgTWFwLE91PShlLHQsbixvKT0+e2NvbnN0IHM9dC5ob3VybHk/dmIodC5ob3VybHkpOltdLHI9dC5ob3VybHk/UnUuZ2V0KFN0cmluZyh0LmlkKSk/P3NbMF0/PyIiOiIiO3JldHVybmAKICAgICAgPGRpdiBjbGFzcz0icm9vbS1idXkiPgogICAgICAgIDxkaXYgY2xhc3M9InByaWNlIj4KICAgICAgICAgICR7dC5wdWJsaWNTdGF5VG90YWw/YDxkaXYgY2xhc3M9InAtd2FzIj4ke2wodC5wdWJsaWNSb29tc1RvdGFsPz90LnB1YmxpY1N0YXlUb3RhbCl9PC9kaXY+YDoiIn0KICAgICAgICAgIDxkaXYgY2xhc3M9InAtdG90YWwiPiR7bCh0LnJvb21zVG90YWw/P3Quc3RheVRvdGFsKX08L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InAtdW5pdCI+JHt0LmhvdXJseT9sKFc+MT9hKGBGb3IgJHtYZSh0LmhvdXJseS5ob3Vycyl9LCAke1d9IHJvb21zLCB0YXhlcyBpbmAsYCR7WGUodC5ob3VybHkuaG91cnMpfeOAgSR7V33pl7TvvIzlkKvnqI7otLlgKTphKGBGb3IgJHtYZSh0LmhvdXJseS5ob3Vycyl9LCB0YXhlcyBpbmAsYCR7WGUodC5ob3VybHkuaG91cnMpfe+8jOWQq+eojui0uWApKTpsKFc+MT9hKGBUb3RhbCBmb3IgJHtpZSh2ZShuLmNoZWNrSW4sbi5jaGVja091dCkpfSwgJHtXfSByb29tcywgdGF4ZXMgaW5gLGAke2llKHZlKG4uY2hlY2tJbixuLmNoZWNrT3V0KSl944CBJHtXfemXtOaAu+S7t++8jOWQq+eojui0uWApOmEoYFRvdGFsIGZvciAke2llKHZlKG4uY2hlY2tJbixuLmNoZWNrT3V0KSl9LCB0YXhlcyBpbmAsYCR7aWUodmUobi5jaGVja0luLG4uY2hlY2tPdXQpKX3mgLvku7fvvIzlkKvnqI7otLlgKSl9PC9kaXY+CiAgICAgICAgICAke3QuaG91cmx5PyIiOmA8ZGl2IGNsYXNzPSJwLW5pZ2h0Ij4ke2woYShgUm9vbSByYXRlICR7dC5uaWdodGx5fSBhIG5pZ2h0YCxg5oi/5Lu35q+P5pmaICR7dC5uaWdodGx5fWApKX08L2Rpdj5gfQogICAgICAgICAgJHt0Lm1lbWJlclJhdGU/YDxkaXYgY2xhc3M9InAtbWVtYmVyIj4ke2woYShgJHt0Lm1lbWJlclJhdGUudGllcn0gcmF0ZWAsYCR7dC5tZW1iZXJSYXRlLnRpZXJ95Lu3YCkpfTwvZGl2PmA6IiJ9CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYWN0aW9uIj4ke28/YCR7WnMoYGRhdGEtYWRkLXJvb209IiR7bCh0LmlkKX0iIGRhdGEtaG90ZWw9IiR7bChlLmlkKX0iYCxvLFN0cmluZyh0Lm5hbWUpLFcpfTxidXR0b24gY2xhc3M9ImdvIHNtIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJ0cmlwIj4ke2EoIlJldmlldyIsIuWOu+aguOWvuSIpfSR7SS5hcnJvd308L2J1dHRvbj5gOnQuaG91cmx5P2A8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImdvIGFkZCIgZGF0YS1hZGQtcm9vbT0iJHtsKHQuaWQpfSIgZGF0YS1ob3RlbD0iJHtsKGUuaWQpfSIgZGF0YS1uPSIke2woVyl9IiBkYXRhLXN0YXJ0PSIke2wocil9IiR7cj8iIjoiIGRpc2FibGVkIn0gYXJpYS1sYWJlbD0iJHtsKGEoYFJlc2VydmUgJHt0Lm5hbWV9IGZyb20gJHtyfWAsYOmihOiuoiR7dC5uYW1lfe+8jCR7cn3liLDlupdgKSl9Ij4ke2EoIlJlc2VydmUiLCLpooTorqIiKX0ke3I/YCDCtyAke2wocil9YDoiIn08L2J1dHRvbj5gOmA8YnV0dG9uIHR5cGU9ImJ1dHRvbiIgY2xhc3M9ImdvIGFkZCIgZGF0YS1hZGQtcm9vbT0iJHtsKHQuaWQpfSIgZGF0YS1ob3RlbD0iJHtsKGUuaWQpfSIgZGF0YS1uPSIke2woVyl9IiBhcmlhLWxhYmVsPSIke2woYShgUmVzZXJ2ZSAke3QubmFtZX1gLGDpooTorqIke3QubmFtZX1gKSl9Ij4ke2EoIlJlc2VydmUiLCLpooTorqIiKX08L2J1dHRvbj5gfTwvZGl2PgogICAgICA8L2Rpdj5gfSxrYj1lPT5OdW1iZXIoZS5yb29tc0xlZnQpPD0zP2A8c3BhbiBjbGFzcz0iYmFkZ2Ugd2FybiBsZWZ0Ij4ke0kuY2xvY2t9JHtsKGEoYCR7ZS5yb29tc0xlZnR9IGxlZnQgYXQgdGhpcyByYXRlYCxg5q2k5Lu35qC85LuF5YmpICR7ZS5yb29tc0xlZnR9IOmXtGApKX08L3NwYW4+YDoiIixSXz0oZSx0KT0+e2NvbnN0IG49bmV3IFNldDtpZighdClyZXR1cm57bGVhZDoiIixzYWlkOm59O2NvbnN0IG89W107KGUud2luZG93Pz9lLnZpZXcpJiYoZS53aW5kb3c/P2UudmlldykhPT0odC53aW5kb3c/P3QudmlldykmJihvLnB1c2gobWIoZSkpLG4uYWRkKCJ2aWV3IikpLEd0KGUpJiZHdChlKSE9PUd0KHQpJiYoby5wdXNoKEd0KGUpKSxuLmFkZCgiYmVkcyIpKTtjb25zdCBzPU51bWJlcihlLnNpemVTcW0pLHI9TnVtYmVyKHQuc2l6ZVNxbSk7cyYmciYmcyE9PXImJm8ucHVzaChzPnI/YShgJHtzLXJ9IG3CsiBsYXJnZXJgLGDpnaLnp6/lpKcgJHtzLXJ9IG3CsmApOmEoYCR7ci1zfSBtwrIgc21hbGxlcmAsYOmdouenr+WwjyAke3Itc30gbcKyYCkpLE51bWJlcihlLnNsZWVwcyk+TnVtYmVyKHQuc2xlZXBzKSYmKG8ucHVzaChhKGBzbGVlcHMgJHtlLnNsZWVwc31gLGDlj6/kvY8gJHtlLnNsZWVwc30g5Lq6YCkpLG4uYWRkKCJzbGVlcHMiKSk7Y29uc3QgaT1TdHJpbmcodC5yb29tVHlwZT8ubmFtZT8/dC5uYW1lPz8iIik7cmV0dXJue2xlYWQ6by5sZW5ndGg/YDxwIGNsYXNzPSJyb29tLWxlYWQiPjxzcGFuIGNsYXNzPSJsZWFkLWsiPiR7bChhKGBVbmxpa2UgJHtpfWAsYOebuOavlCR7aX1gKSl9PC9zcGFuPiR7bChvLnNsaWNlKDAsMykuam9pbigiIMK3ICIpKX08L3A+YDoiIixzYWlkOm59fSxPXz0oZSx0LG4sbyk9Pntjb25zdCBzPU1zKFN0cmluZyhlLmlkKSxTdHJpbmcodC5pZCksbik7cmV0dXJuYAogICAgPGFydGljbGUgY2xhc3M9InJvb20ke3M/IiBoZWxkIjoiIn0iPgogICAgICA8c3BhbiBjbGFzcz0icm9vbS1zaG90IiBzdHlsZT0iJHtfdChgJHtlLmlkfToke3QuaWR9YCl9Ij4KICAgICAgICAke3QuaW1hZ2VVcmw/YDxpbWcgc3JjPSIke2wodC5pbWFnZVVybCl9IiBhbHQ9IiI+YDpsKFR0KFN0cmluZyh0Lm5hbWUpKSl9CiAgICAgIDwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0icm9vbS1tYWluIj4KICAgICAgICA8aDMgY2xhc3M9InJvb20tbmFtZSI+JHtsKHQubmFtZSl9PC9oMz4KICAgICAgICAke28/LmxlYWQ/PyIifQogICAgICAgIDx1bCBjbGFzcz0iZmFjdHMiPiR7TnUodCxvPy5zYWlkKX08L3VsPgogICAgICAgICR7eHUodCl9CiAgICAgICAgPHVsIGNsYXNzPSJwZXJrcyI+JHtQdSh0KX08L3VsPgogICAgICAgICR7a2IodCl9CiAgICAgIDwvZGl2PgogICAgICAke091KGUsdCxuLHMpfQogICAgPC9hcnRpY2xlPmB9LE1fPShlLHQsbixvKT0+e2NvbnN0IHM9dFswXT8/e30scj1TdHJpbmcocy5yb29tVHlwZT8ubmFtZT8/cy5uYW1lKTtyZXR1cm5gCiAgICA8YXJ0aWNsZSBjbGFzcz0icnR5cGUke3Quc29tZShjPT5NcyhTdHJpbmcoZS5pZCksU3RyaW5nKGMuaWQpLG4pPjApPyIgaGVsZCI6IiJ9Ij4KICAgICAgPGRpdiBjbGFzcz0icnR5cGUtaGVhZCI+CiAgICAgICAgPHNwYW4gY2xhc3M9InJvb20tc2hvdCIgc3R5bGU9IiR7X3QoYCR7ZS5pZH06JHtzLnJvb21UeXBlPy5pZD8/cy5pZH1gKX0iPgogICAgICAgICAgJHtzLmltYWdlVXJsP2A8aW1nIHNyYz0iJHtsKHMuaW1hZ2VVcmwpfSIgYWx0PSIiPmA6bChUdChyKSl9CiAgICAgICAgPC9zcGFuPgogICAgICAgIDxkaXYgY2xhc3M9InJvb20tbWFpbiI+CiAgICAgICAgICA8aDMgY2xhc3M9InJvb20tbmFtZSI+JHtsKHIpfTwvaDM+CiAgICAgICAgICAke28/LmxlYWQ/PyIifQogICAgICAgICAgPHVsIGNsYXNzPSJmYWN0cyI+JHtOdShzLG8/LnNhaWQpfTwvdWw+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJydHlwZS1uIj4ke2wodC5sZW5ndGg9PT0xP2EoIjEgcmF0ZSIsIjEg56eN5Lu35qC8Iik6YShgJHt0Lmxlbmd0aH0gcmF0ZXNgLGAke3QubGVuZ3RofSDnp43ku7fmoLxgKSl9PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJyYXRlcyI+JHt0Lm1hcChjPT57Y29uc3QgaD1NcyhTdHJpbmcoZS5pZCksU3RyaW5nKGMuaWQpLG4pO3JldHVybmAKICAgICAgICA8ZGl2IGNsYXNzPSJycmF0ZSR7aD8iIGhlbGQiOiIifSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJyYXRlLW1haW4iPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJyYXRlLW5hbWUiPiR7bChjLnJhdGU/Lm5hbWU/P2MubmFtZSl9PC9kaXY+CiAgICAgICAgICAgICR7eHUoYyl9CiAgICAgICAgICAgIDx1bCBjbGFzcz0icGVya3MiPiR7UHUoYyl9PC91bD4KICAgICAgICAgICAgJHtrYihjKX0KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgJHtPdShlLGMsbixoKX0KICAgICAgICA8L2Rpdj5gfSkuam9pbigiIil9PC9kaXY+CiAgICA8L2FydGljbGU+YH0sWl89KGUsdCxuKT0+e2NvbnN0IG89TXMoU3RyaW5nKGUuaWQpLFN0cmluZyh0LmlkKSxuKSxzPXZiKHQuaG91cmx5KSxyPVJ1LmdldChTdHJpbmcodC5pZCkpPz9zWzBdO3JldHVybmAKICAgIDxhcnRpY2xlIGNsYXNzPSJyb29tIGhvdXJseSR7bz8iIGhlbGQiOiIifSI+CiAgICAgIDxzcGFuIGNsYXNzPSJyb29tLXNob3QiIHN0eWxlPSIke190KGAke2UuaWR9OiR7dC5pZH1gKX0iPgogICAgICAgICR7dC5pbWFnZVVybD9gPGltZyBzcmM9IiR7bCh0LmltYWdlVXJsKX0iIGFsdD0iIj5gOmwoVHQoU3RyaW5nKHQubmFtZSkpKX0KICAgICAgPC9zcGFuPgogICAgICA8ZGl2IGNsYXNzPSJyb29tLW1haW4iPgogICAgICAgIDxoMyBjbGFzcz0icm9vbS1uYW1lIj4ke2wodC5yb29tVHlwZT8ubmFtZT8/dC5uYW1lKX08c3BhbiBjbGFzcz0icm9vbS1ob3VycyI+IMK3ICR7bChYZSh0LmhvdXJseS5ob3VycykpfTwvc3Bhbj48L2gzPgogICAgICAgIDx1bCBjbGFzcz0iZmFjdHMiPiR7TnUodCl9PC91bD4KICAgICAgICAke3h1KHQpfQogICAgICAgIDx1bCBjbGFzcz0icGVya3MiPiR7UHUodCl9PC91bD4KICAgICAgICA8ZGl2IGNsYXNzPSJzdGFydHMiIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSIke2EoIlN0YXJ0IHRpbWUiLCLliLDlupfml7bpl7QiKX0iPgogICAgICAgICAgPHNwYW4gY2xhc3M9IndsIj4ke2EoIkFycml2ZSBhdCIsIuWIsOW6l+aXtumXtCIpfTwvc3Bhbj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNoaXBzIj4ke3MubWFwKGk9PmA8YnV0dG9uIGNsYXNzPSJjaGlwIGFzayIgdHlwZT0iYnV0dG9uIiBkYXRhLWhvdXItc3RhcnQ9IiR7bChpKX0iIGRhdGEtcm9vbT0iJHtsKHQuaWQpfSIgYXJpYS1wcmVzc2VkPSIke2k9PT1yPyJ0cnVlIjoiZmFsc2UifSI+JHtsKGkpfTwvYnV0dG9uPmApLmpvaW4oIiIpfTwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ibm90ZSI+JHtsKHI/YShgJHtyfeKAkyR7YnMocix0LmhvdXJseSl9IMK3IGxlYXZlIGJ5ICR7YnMocix0LmhvdXJseSl9YCxgJHtyfeKAkyR7YnMocix0LmhvdXJseSl9IMK3ICR7YnMocix0LmhvdXJseSl9IOWJjeemu+W6l2ApOmEoYE91dCBieSAke3QuaG91cmx5LmxhdGVzdEVuZH0gYXQgdGhlIGxhdGVzdC5gLGDmnIDmmZogJHt0LmhvdXJseS5sYXRlc3RFbmR9IOemu+W6l+OAgmApKX08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICAgICR7T3UoZSx0LG4sbyl9CiAgICA8L2FydGljbGU+YH0scV89KGUsdCxuKT0+e2NvbnN0IG89dC5maWx0ZXIoYz0+Yy5ob3VybHkpLHM9dC5maWx0ZXIoYz0+IWMuaG91cmx5KSxyPVtdLGk9bmV3IE1hcDtmb3IoY29uc3QgYyBvZiBzKXtjb25zdCBoPWMucm9vbVR5cGU/LmlkP1N0cmluZyhjLnJvb21UeXBlLmlkKToiIjtpZighaCl7ci5wdXNoKFtjXSk7Y29udGludWV9Y29uc3QgZD1pLmdldChoKTtpZihkKWQucHVzaChjKTtlbHNle2NvbnN0IHU9W2NdO2kuc2V0KGgsdSksci5wdXNoKHUpfX1yZXR1cm5bci5sZW5ndGg/YDxkaXYgY2xhc3M9InJvb21zIj4ke3IubWFwKChjLGgpPT57Y29uc3QgZD1SXyhjWzBdLHJbaC0xXT8uWzBdKTtyZXR1cm4gYy5sZW5ndGg+MXx8Y1swXT8ucm9vbVR5cGU/TV8oZSxjLG4sZCk6T18oZSxjWzBdLG4sZCl9KS5qb2luKCIiKX08L2Rpdj5gOiIiLG8ubGVuZ3RoP2A8ZGl2IGNsYXNzPSJyb29tcyI+JHtvLm1hcChjPT5aXyhlLGMsbikpLmpvaW4oIiIpfTwvZGl2PmA6IiJdLmpvaW4oIiIpfSx5Yj17ImhvdXJseS1ub25lIjooKT0+YSgiVGhpcyBob3RlbCBzZWxscyBubyByb29tcyBieSB0aGUgaG91ciB0b2RheS4iLCLov5nlrrbku4rlpKnkuI3ljZbpkp/ngrnmiL/jgIIiKSwiaG91cmx5LW92ZXIiOmU9PmUubGFzdFN0YXJ0P2EoYFRvZGF5J3Mgcm9vbXMgYnkgdGhlIGhvdXIgYXJlIG92ZXIgLSB0aGUgbGFzdCBzdGFydCB3YXMgJHtlLmxhc3RTdGFydH0uYCxg5LuK5aSp55qE6ZKf54K55oi/5bey57uP57uT5p2f5LqG77yM5pyA5pmaICR7ZS5sYXN0U3RhcnR9IOW8gOWni+OAgmApOmEoIlRvZGF5J3Mgcm9vbXMgYnkgdGhlIGhvdXIgYXJlIG92ZXIuIiwi5LuK5aSp55qE6ZKf54K55oi/5bey57uP57uT5p2f5LqG44CCIiksImhvdXJseS1ub3QteWV0IjplPT5lLm9wZW5zQXQ/YShgUm9vbXMgYnkgdGhlIGhvdXIgZ28gb24gc2FsZSB0b2RheSBmcm9tICR7ZS5vcGVuc0F0fS5gLGDku4rlpKnnmoTpkp/ngrnmiL8gJHtlLm9wZW5zQXR9IOW8gOWNluOAgmApOmEoIlJvb21zIGJ5IHRoZSBob3VyIGFyZSBub3Qgb24gc2FsZSB5ZXQgdG9kYXkuIiwi5LuK5aSp55qE6ZKf54K55oi/6L+Y5rKh5byA5Y2W44CCIikscGFydHk6ZT0+TnVtYmVyKGUubGFyZ2VzdCk+MD9OdW1iZXIoZS5yb29tcyk+MD9hKGBObyByb29tIHNsZWVwcyBhIHBhcnR5IHRoaXMgc2l6ZTogdGhlIGxhcmdlc3Qgc2xlZXBzICR7ZS5sYXJnZXN0fSwgc28gaXQgdGFrZXMgJHtlLnJvb21zfSByb29tcy5gLGDmsqHmnInog73kvY/ov5nkuYjlpJrkurrnmoTmiL/lnovvvJrmnIDlpKfnmoTlj6/kvY8gJHtlLmxhcmdlc3R9IOS6uu+8jOmcgOimgeiuoiAke2Uucm9vbXN9IOmXtOOAgmApOmEoYEEgcm9vbSBoZXJlIHNsZWVwcyBhdCBtb3N0ICR7ZS5sYXJnZXN0fSAtIGZvciBtb3JlLCBhc2sgdGhlIGhvdGVsIGRpcmVjdGx5LmAsYOS4gOmXtOacgOWkmuS9jyAke2UubGFyZ2VzdH0g5Lq677yM5Lq65pu05aSa6K+355u05o6l6IGU57O76YWS5bqX44CCYCk6YSgiTm8gcm9vbSBoZXJlIHNsZWVwcyBhIHBhcnR5IHRoaXMgc2l6ZS4iLCLmsqHmnInog73kvY/ov5nkuYjlpJrkurrnmoTmiL/lnovjgIIiKSwic29sZC1vdXQiOmU9PmUuaG91cmx5P2EoIlRvZGF5J3Mgcm9vbXMgYnkgdGhlIGhvdXIgYXJlIHNvbGQgb3V0LiIsIuS7iuWkqeeahOmSn+eCueaIv+mDveiuoua7oeS6huOAgiIpOk51bWJlcihlLnJvb21zKT4xP2EoYE5vIHJvb20gdHlwZSBoYXMgJHtlLnJvb21zfSBsZWZ0IGZvciB0aG9zZSBkYXRlcy5gLGDov5nkupvml6XmnJ/msqHmnInlk6rkuKrmiL/lnovov5jliakgJHtlLnJvb21zfSDpl7TjgIJgKTphKCJFdmVyeSByb29tIGlzIHRha2VuIGZvciB0aG9zZSBkYXRlcy4iLCLov5nkupvml6XmnJ/nmoTmiL/pl7Tpg73orqLmu6HkuobjgIIiKSwicHJlcGFpZC1vbmx5IjooKT0+YSgiT25seSByYXRlcyBwYWlkIGluIGFkdmFuY2UgYXJlIGxlZnQgaGVyZSwgYW5kIHRoaXMgYm9va3Mgb25seSByb29tcyBwYWlkIGF0IHRoZSBob3RlbC4iLCLov5nph4zlj6rmnInpnIDopoHpooTku5jnmoTmiL/ku7fvvIzov5nph4zlj6rog73orqLliLDlupfku5jmrL7nmoTmiL/pl7TjgIIiKSwidG9vLW1hbnktcm9vbXMiOmU9Pk51bWJlcihlLnJvb21zKT4wP2EoYE5vIHJhdGUgYm9va3MgJHtlLnJvb21zfSByb29tcyBhdCBvbmNlIC0gYXNrIGZvciBmZXdlci5gLGDmsqHmnInmiL/ku7fog73kuIDmrKHorqIgJHtlLnJvb21zfSDpl7TvvIzor7flsJHorqLlh6Dpl7TjgIJgKTphKCJUaGF0IG1hbnkgcm9vbXMgY2Fubm90IGJlIGJvb2tlZCBhdCBvbmNlIC0gYXNrIGZvciBmZXdlci4iLCLkuIDmrKHorqLkuI3kuobov5nkuYjlpJrpl7TvvIzor7flsJHorqLlh6Dpl7TjgIIiKSwidG9vLWZhciI6ZT0+TnVtYmVyKGUuZGF5cyk+MD9hKGBOb3Qgb24gc2FsZSB5ZXQ6IHJvb21zIGFyZSBzb2xkIHVwIHRvICR7ZS5kYXlzfSBkYXlzIGFoZWFkLmAsYOi/mOayoeW8gOWNlu+8muWPquiDveiuoiAke2UuZGF5c30g5aSp5Lul5YaF55qE5oi/6Ze044CCYCk6YSgiTm90IG9uIHNhbGUgeWV0OiB0aG9zZSBkYXRlcyBhcmUgdG9vIGZhciBhaGVhZC4iLCLov5jmsqHlvIDljZbvvJrml6XmnJ/lpKrov5zkuobjgIIiKSwic3RheS1ydWxlIjplPT57Y29uc3QgdD1lLmRhdGU/X2UoU3RyaW5nKGUuZGF0ZSkpOiIiO3JldHVybiBlLnJ1bGU9PT0ibm8tYXJyaXZhbCI/dD9hKGBObyBhcnJpdmFscyBvbiAke3R9LmAsYCR7dH3kuI3og73lhaXkvY/jgIJgKTphKCJObyBhcnJpdmFscyB0aGF0IGRheS4iLCLov5nlpKnkuI3og73lhaXkvY/jgIIiKTplLnJ1bGU9PT0ibm8tZGVwYXJ0dXJlIj90P2EoYE5vIGRlcGFydHVyZXMgb24gJHt0fS5gLGAke3R95LiN6IO96YCA5oi/44CCYCk6YSgiTm8gZGVwYXJ0dXJlcyB0aGF0IGRheS4iLCLov5nlpKnkuI3og73pgIDmiL/jgIIiKTplLnJ1bGU9PT0ibWluLXN0YXkiP051bWJlcihlLm5pZ2h0cyk+MD9hKGBUaGUgc3RheSBoYXMgdG8gYmUgYXQgbGVhc3QgJHtlLm5pZ2h0c30gbmlnaHRzLmAsYOiHs+WwkeimgeS9jyAke2UubmlnaHRzfSDmmZrjgIJgKTphKCJUaGUgc3RheSBpcyB0b28gc2hvcnQuIiwi5L2P55qE5pma5pWw5aSq5bCR5LqG44CCIik6ZS5ydWxlPT09Im1heC1zdGF5Ij9OdW1iZXIoZS5uaWdodHMpPjA/YShgVGhlIHN0YXkgY2FuIGJlIGF0IG1vc3QgJHtlLm5pZ2h0c30gbmlnaHRzLmAsYOacgOWkmuWPquiDveS9jyAke2UubmlnaHRzfSDmmZrjgIJgKTphKCJUaGUgc3RheSBpcyB0b28gbG9uZy4iLCLkvY/nmoTmmZrmlbDlpKrlpJrkuobjgIIiKTphKCJUaG9zZSBkYXRlcyBoYXZlIGEgYm9va2luZyBydWxlIC0gdHJ5IG90aGVyIGRhdGVzLiIsIui/meS6m+aXpeacn+acieWFpeS9j+mZkOWItu+8jOaNouS4quaXpeacn+ivleivleOAgiIpfSxjbG9zZWQ6KCk9PmEoIk5vdCBvbiBzYWxlIGZvciB0aG9zZSBkYXRlcy4iLCLov5nkupvml6XmnJ/kuI3lvIDmlL7pooTorqLjgIIiKSwibm9uZS1vbi1zYWxlIjooKT0+YSgiVGhpcyBob3RlbCdzIHJvb21zIGFyZSBub3Qgc29sZCBoZXJlLiIsIui/meWutumFkuW6l+eahOaIv+mXtOS4jeWcqOi/memHjOWHuuWUruOAgiIpLHVucmVhY2hhYmxlOigpPT5hKCJUaGlzIGhvdGVsJ3Mgcm9vbXMgY291bGQgbm90IGJlIGxvb2tlZCB1cCBqdXN0IG5vdyAtIHRyeSBhZ2FpbiBpbiBhIG1vbWVudC4iLCLov5nmrKHmsqHog73mn6XliLDov5nlrrbphZLlupfnmoTmiL/pl7TvvIznqI3lkI7lho3or5XkuIDmrKHjgIIiKSwicHJpY2UtY2hhbmdlZCI6KCk9PmEoIlRoZSBwcmljZSBvciB0ZXJtcyBjaGFuZ2VkIGZyb20gd2hhdCB5b3Ugd2VyZSBzaG93biwgc28gaXQgd2FzIG5vdCBib29rZWQgYXQgdGhlIG5ldyBvbmVzLiIsIuS7t+agvOaIluadoeasvuWSjOS9oOeci+WIsOeahOS4jeS4gOagt+S6hu+8jOaJgOS7peayoeacieaMieaWsOS7t+agvOmihOiuouOAgiIpLGxpbWl0ZWQ6KCk9PmEoIlRoaXMgc3RheSB3YXMgaGVsZCBiYWNrIGJ5IGEgYm9va2luZyBsaW1pdCBmb3Igbm93IC0gYm9vayBmZXdlciwgb3IgdHJ5IGxhdGVyLiIsIui/meS4gOauteaaguaXtuiiq+mihOiuouS4iumZkOaMoeS4i+S6hu+8jOWwkeiuouS4gOS6m+aIlueojeWQjuWGjeivleOAgiIpLCJkYXRlcy1wYXN0IjplPT5lLnRvZGF5P2EoYENoZWNrLWluIGhhcyBwYXNzZWQgLSB0b2RheSBpcyAke19lKFN0cmluZyhlLnRvZGF5KSl9LmAsYOWFpeS9j+aXpeacn+W3sue7j+i/h+WOu+S6hu+8jOS7iuWkqeaYryAke19lKFN0cmluZyhlLnRvZGF5KSl944CCYCk6YSgiQ2hlY2staW4gaGFzIHBhc3NlZC4iLCLlhaXkvY/ml6XmnJ/lt7Lnu4/ov4fljrvkuobjgIIiKSwiZGF0ZXMtb3JkZXIiOigpPT5hKCJDaGVjay1vdXQgaGFzIHRvIGJlIGFmdGVyIGNoZWNrLWluIC0gb25lIG5pZ2h0IG1lYW5zIGxlYXZpbmcgdGhlIG5leHQgZGF5LiIsIuemu+W6l+imgeaZmuS6juWFpeS9j++8muS9j+S4gOaZmuWwseaYr+esrOS6jOWkqeemu+W6l+OAgiIpLCJzdGF5LXRvby1sb25nIjplPT5OdW1iZXIoZS5uaWdodHMpPjA/YShgQXQgbW9zdCAke2UubmlnaHRzfSBuaWdodHMgY2FuIGJlIGJvb2tlZCBhdCBvbmNlLmAsYOS4gOasoeacgOWkmuiuoiAke2UubmlnaHRzfSDmmZrjgIJgKTphKCJUaGF0IG1hbnkgbmlnaHRzIGNhbm5vdCBiZSBib29rZWQgYXQgb25jZS4iLCLkuIDmrKHorqLkuI3kuobov5nkuYjlpJrmmZrjgIIiKSwic3RheS1pbnZhbGlkIjooKT0+YSgiQ2hvb3NlIHRoZSBkYXRlcyBhbmQgdGhlIGd1ZXN0cyBhZ2Fpbi4iLCLor7fph43mlrDpgInlpb3lhaXkvY/ml6XmnJ/lkozkurrmlbDjgIIiKSx1bmF2YWlsYWJsZTooKT0+YSgiVGhvc2UgZGF0ZXMgY2Fubm90IGJlIGJvb2tlZCBoZXJlLiIsIui/meS6m+aXpeacn+i/memHjOiuouS4jeS6huOAgiIpfSxMcz0oZSx0LG4pPT57Y29uc3Qgbz16IT09ImVuIiYmdHlwZW9mIHQ9PSJzdHJpbmciP3liW3RdOnZvaWQgMDtyZXR1cm4gbz9vKG4mJnR5cGVvZiBuPT0ib2JqZWN0Ij9uOnt9KTpTdHJpbmcoZT8/IiIpfSxEZD0oZSx0LG4pPT57aWYodD90IT09InBhcnR5IjohL1xic2xlZXBzXGJ8Y2FuIHRha2UgXGQrIGd1ZXN0cy8udGVzdChlKSlyZXR1cm4iIjtjb25zdCBvPU51bWJlcigodD09PSJwYXJ0eSI/bj8ubGFyZ2VzdDp2b2lkIDApPz8vbGFyZ2VzdCBzbGVlcHMgKFxkKykvLmV4ZWMoZSk/LlsxXT8/MCkscz1qLmd1ZXN0cypXLHI9bz4wP01hdGgubWluKEp0LE1hdGguY2VpbChzL28pKTowLGk9cj9NYXRoLmNlaWwocy9yKTowO3JldHVybmA8ZGl2IGNsYXNzPSJzdGF0ZSI+CiAgICA8ZGl2IGNsYXNzPSJzdGF0ZS1pY28iPiR7SS51c2Vyc308L2Rpdj4KICAgIDxoMyBjbGFzcz0ic3RhdGUtdCI+JHtsKGEoYE5vIHJvb20gaGVyZSBzbGVlcHMgJHtqLmd1ZXN0c31gLGDov5nph4zmsqHmnInlj6/kvY8gJHtqLmd1ZXN0c30g5Lq655qE5oi/5Z6LYCkpfTwvaDM+CiAgICA8cCBjbGFzcz0ic3RhdGUtZCI+JHtsKHImJmk8PW8/YShgVGhlIGxhcmdlc3Qgc2xlZXBzICR7b30uIEJvb2sgJHtyfSByb29tcywgZWFjaCBmb3IgdXAgdG8gJHtpfSwgYW5kIHRoZSAke3N9IG9mIHlvdSBmaXQuYCxg5pyA5aSn55qE5oi/5Z6L5Y+v5L2PICR7b30g5Lq644CC6K6iICR7cn0g6Ze044CB5q+P6Ze05oyJICR7aX0g5Lq66K6i77yMJHtzfSDkuKrkurrlsLHog73kvY/kuIvjgIJgKTphKCJUcnkgZmV3ZXIgZ3Vlc3RzIGluIGVhY2ggcm9vbS4iLCLor5Xor5Xmiormr4/pl7TkurrmlbDmlLnlsJHjgIIiKSl9PC9wPgogICAgJHtyJiZpPD1vP2A8ZGl2IGNsYXNzPSJmb290Ij48YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLXNwbGl0PSIke3J9OiR7aX0iPiR7bChhKGBCb29rICR7cn0gcm9vbXMsICR7aX0gaW4gZWFjaGAsYOiuoiAke3J9IOmXtO+8jOavj+mXtOaMiSAke2l9IOS6umApKX08L2J1dHRvbj48L2Rpdj5gOiIifQogIDwvZGl2PmB9LERfPShlLHQsbj0wKT0+IUFycmF5LmlzQXJyYXkodCl8fHQubGVuZ3RoPDI/IiI6YAogIDxkaXYgY2xhc3M9InN0cmlwLWgiPiR7bChhKGBBcnJpdmUgYW5vdGhlciBkYXkgwrcgJHtpZShuKX0gZnJvbWAsYOaNouS4quaXpeWtkOWFpeS9jyDCtyAke2llKG4pfei1t+S7t2ApKX0ke3QuZmlsdGVyKG89Pm8ubG93ZXN0KS5sZW5ndGg+MT9gPHNtYWxsIGNsYXNzPSJzdHJpcC1rZXkiPiR7YSgiR3JlZW46IHRoZSBsb3dlc3QiLCLnu7/oibLkuLrmnIDkvY7ku7ciKX08L3NtYWxsPmA6IiJ9PC9kaXY+CiAgPGRpdiBjbGFzcz0iZmxleC1kYXRlcyIgcm9sZT0iZ3JvdXAiIHN0eWxlPSItLW46JHt0Lmxlbmd0aH0iIGFyaWEtbGFiZWw9IiR7YSgiTmVhcmJ5IGFycml2YWwgZGF0ZXMiLCLpmYTov5HnmoTlhaXkvY/ml6XmnJ8iKX0iPgogICAgJHt0Lm1hcCgobyxzKT0+YDxidXR0b24gY2xhc3M9ImZkJHtvLmNob3Nlbj8iIG9uIjoiIn0ke28uZnJvbT8iIjoiIG91dCJ9JHtvLmJlc3Q/IiBiZXN0IjoiIn0ke28ubG93ZXN0PyIgbG93ZXN0IjoiIn0iIHR5cGU9ImJ1dHRvbiIgZGF0YS1ob3RlbD0iJHtsKGUpfSIgZGF0YS1jaT0iJHtsKG8uY2hlY2tJbil9IiBkYXRhLWNvPSIke2woby5jaGVja091dCl9IiBhcmlhLWxhYmVsPSIke2woYShgQXJyaXZlICR7X2UoU3RyaW5nKG8uY2hlY2tJbikpfWAsYCR7X2UoU3RyaW5nKG8uY2hlY2tJbikpfeWFpeS9j2ApKyhvLmZyb20/YShgLCBmcm9tICR7by5mcm9tfWAsYO+8jCR7by5mcm9tfei1t2ApOmEoIiwgbm90aGluZyBsZWZ0Iiwi77yM5bey5ruhIikpKyhvLmxvd2VzdD9hKCIsIHRoZSBsb3dlc3QiLCLvvIzmnIDkvY7ku7ciKToiIikpfSI+CiAgICAgICAgPHNwYW4gY2xhc3M9ImZkLWRheSI+JHtzPT09MHx8WWUoU3RyaW5nKG8uY2hlY2tJbikpLm1vbiE9PVllKFN0cmluZyh0W3MtMV0/LmNoZWNrSW4pKS5tb24/YDxzcGFuIGNsYXNzPSJmZC1tb24iPiR7bChZZShTdHJpbmcoby5jaGVja0luKSkubW9uKX08L3NwYW4+YDonPHNwYW4gY2xhc3M9ImZkLW1vbiIgYXJpYS1oaWRkZW49InRydWUiPiZuYnNwOzwvc3Bhbj4nfTxzcGFuIGNsYXNzPSJmZC1kb3ciPiR7bChZZShTdHJpbmcoby5jaGVja0luKSkuZG93KX08L3NwYW4+PHNwYW4gY2xhc3M9ImZkLWRuIj4ke2woWWUoU3RyaW5nKG8uY2hlY2tJbikpLmRheSl9PC9zcGFuPjwvc3Bhbj4KICAgICAgICA8c3BhbiBjbGFzcz0iZmQtcHJpY2UiPiR7by5mcm9tP2woby5mcm9tKTphKCJGdWxsIiwi5bey5ruhIil9PC9zcGFuPiR7by5sb3dlc3QmJnQuZmlsdGVyKHI9PnIubG93ZXN0KS5sZW5ndGg9PT0xP2A8c3BhbiBjbGFzcz0iZmQtbG93Ij4ke2EoIkxvd2VzdCIsIuacgOS9jiIpfTwvc3Bhbj5gOiIifQogICAgICA8L2J1dHRvbj5gKS5qb2luKCIiKX0KICA8L2Rpdj5gLExkPWU9Pntjb25zdCB0PWUuaG90ZWw/P3t9LG49ZS5yb29tcz8/W10sbz1lLnN0YXk/P2oscz1uLmxlbmd0aD4wJiZuLmV2ZXJ5KGk9PmkuaG91cmx5KXx8ISFlLmhvdXJseSYmISFvPy5jaGVja0luJiZvLmNoZWNrSW49PT1vLmNoZWNrT3V0LHI9bmV3IFNldChuLm1hcChpPT5TdHJpbmcoaS5yb29tVHlwZT8uaWQ/P2kuaWQpKSkuc2l6ZTtyZXR1cm5bY2IodCksZS5ob3VybHkmJnQuc2VsbHNIb3VybHkhPT0hMT9gPGRpdiBjbGFzcz0ic2VnIiByb2xlPSJncm91cCIgYXJpYS1sYWJlbD0iJHthKCJIb3cgbG9uZyIsIuWFpeS9j+aWueW8jyIpfSI+CiAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzZWctYiIgZGF0YS1hY3Q9Im5pZ2h0bHkiIGFyaWEtcHJlc3NlZD0iJHtzPyJmYWxzZSI6InRydWUifSI+JHtJLmNhbGVuZGFyfSR7YSgiT3Zlcm5pZ2h0Iiwi5oyJ5pmaIil9PC9idXR0b24+CiAgICAgICAgICAgPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzZWctYiIgZGF0YS1hY3Q9ImhvdXJseSIgZGF0YS1ob3RlbC1pZD0iJHtsKHQuaWQpfSIgYXJpYS1wcmVzc2VkPSIke3M/InRydWUiOiJmYWxzZSJ9Ij4ke0kuY2xvY2t9JHthKCJCeSB0aGUgaG91ciDCtyB0b2RheSIsIumSn+eCueaIvyDCtyDku4rlpKkiKX08L2J1dHRvbj4KICAgICAgICAgPC9kaXY+YDoiIixzPyIiOllnKFN0cmluZyh0LmlkKSx0LnRvZGF5VGhlcmUpLHN8fGUubm9Sb29tcyYmRGQoU3RyaW5nKGUubm9Sb29tcyksZS5ub1Jvb21zQ29kZSxlLm5vUm9vbXNBcmdzKT8iIjpEXyhTdHJpbmcodC5pZCksZS5kYXRlcyx2ZShvLmNoZWNrSW4sby5jaGVja091dCkpLGUubmVlZHNEYXRlcz9gPGRpdiBjbGFzcz0ic2tlbCIgcm9sZT0ic3RhdHVzIiBhcmlhLWxhYmVsPSIke2EoIkxvb2tpbmcgdXAgcm9vbXMiLCLmraPlnKjmn6Xor6LmiL/pl7QiKX0iPjxkaXYgY2xhc3M9InNrIHNrLWJhciI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stYmFyIj48L2Rpdj48L2Rpdj5gOmUubm9Sb29tcyYmcz9gPGRpdiBjbGFzcz0ic3RhdGUiPgogICAgICAgICAgICAgPGRpdiBjbGFzcz0ic3RhdGUtaWNvIj4ke0kuY2xvY2t9PC9kaXY+CiAgICAgICAgICAgICA8aDMgY2xhc3M9InN0YXRlLXQiPiR7YSgiTm8gcm9vbXMgYnkgdGhlIGhvdXIgdG9kYXkiLCLku4rlpKnmsqHmnInpkp/ngrnmiL8iKX08L2gzPgogICAgICAgICAgICAgPHAgY2xhc3M9InN0YXRlLWQiPiR7bChMcyhlLm5vUm9vbXMsZS5ub1Jvb21zQ29kZSx7Li4uZS5ub1Jvb21zQXJncz8/e30saG91cmx5OiEwfSkpfTwvcD4KICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZvb3QiPjxidXR0b24gY2xhc3M9ImdvIHNvZnQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9Im5pZ2h0bHkiPiR7SS5jYWxlbmRhcn0ke2EoIlNlZSByb29tcyBmb3IgYSBuaWdodCIsIueci+aMieaZmuWFpeS9j+eahOaIv+mXtCIpfTwvYnV0dG9uPjwvZGl2PgogICAgICAgICAgIDwvZGl2PmA6ZS5ub1Jvb21zP0RkKFN0cmluZyhlLm5vUm9vbXMpLGUubm9Sb29tc0NvZGUsZS5ub1Jvb21zQXJncyl8fGA8ZGl2IGNsYXNzPSJlcnIiPiR7bChMcyhlLm5vUm9vbXMsZS5ub1Jvb21zQ29kZSxlLm5vUm9vbXNBcmdzKSl9PC9kaXY+YDpgPGgzIGNsYXNzPSJzZWMiPiR7cz9hKCJCeSB0aGUgaG91ciwgdG9kYXkiLCLku4rml6Xpkp/ngrnmiL8iKTphKCJDaG9vc2UgeW91ciByb29tIiwi6YCJ5oup5oi/5Z6LIil9IDxzbWFsbCBjbGFzcz0ic2VjLW4iPiR7bChzP2EoYCR7X2UoU3RyaW5nKG8uY2hlY2tJbikpfSDCtyBwaWNrIHdoZW4geW91IGFycml2ZSDCtyB0YXhlcyBpbmAsYCR7X2UoU3RyaW5nKG8uY2hlY2tJbikpfSDCtyDpgInlpb3liLDlupfml7bpl7Qgwrcg5ZCr56iO6LS5YCk6SV8ocixOdW1iZXIoby5ndWVzdHMpKSsobi5sZW5ndGg+cj9hKGAsICR7bi5sZW5ndGh9IHJhdGVzYCxg44CBJHtuLmxlbmd0aH0g56eN5Lu35qC8YCk6IiIpK2EoYCDCtyBwcmljZXMgZm9yICR7aWUodmUoby5jaGVja0luLG8uY2hlY2tPdXQpKX0sIHRheGVzIGluYCxgIMK3ICR7aWUodmUoby5jaGVja0luLG8uY2hlY2tPdXQpKX3lkKvnqI7mgLvku7dgKSl9PC9zbWFsbD48L2gzPgogICAgICAgICAgICR7cV8odCxuLG8pfWAsKGUuZXh0cmFzPz9bXSkubGVuZ3RofHwoZS5wb2xpY2llcz8/W10pLmxlbmd0aD9gPGRpdiBjbGFzcz0iZ29vZC10by1rbm93Ij4KICAgICAgICAgICA8aDMgY2xhc3M9InNlYyI+JHthKCJHb29kIHRvIGtub3ciLCLlhaXkvY/pobvnn6UiKX08L2gzPgogICAgICAgICAgICR7KGUucG9saWNpZXM/P1tdKS5sZW5ndGg/YDxkaXYgY2xhc3M9ImxpbmtzIj4ke2UucG9saWNpZXMubWFwKGk9PmA8YnV0dG9uIGNsYXNzPSJsaW5rLXJvdyIgdHlwZT0iYnV0dG9uIiBkYXRhLXBvbGljeT0iJHtsKGkudG9waWMpfSIgZGF0YS1ob3RlbD0iJHtsKHQuaWQpfSI+PHNwYW4+JHtsKGkudGl0bGUpfTwvc3Bhbj4ke0kuY2hldlJ9PC9idXR0b24+YCkuam9pbigiIil9PC9kaXY+YDoiIn0KICAgICAgICAgICAkeyhlLmV4dHJhcz8/W10pLmxlbmd0aD9gPGJ1dHRvbiBjbGFzcz0iZ28gc29mdCIgdHlwZT0iYnV0dG9uIiBkYXRhLWV4dHJhcz0iJHtsKHQuaWQpfSI+JHthKCJBZGQtb25zIGFuZCBleHBlcmllbmNlcyIsIumZhOWKoOacjeWKoeWSjOS9k+mqjCIpfSR7SS5hcnJvd308L2J1dHRvbj5gOiIifQogICAgICAgICA8L2Rpdj5gOiIiXS5qb2luKCIiKX0sTF89eyJwZXJzb24tbmlnaHQiOlsicGVyIHBlcnNvbiBwZXIgbmlnaHQiLCLmr4/kurrmr4/mmZoiXSxuaWdodDpbInBlciBuaWdodCIsIuavj+aZmiJdLHN0YXk6WyJwZXIgc3RheSIsIuavj+asoeWFpeS9jyJdLHBlcnNvbjpbInBlciBwZXJzb24iLCLmr4/kuroiXSxpdGVtOlsiZWFjaCIsIuavj+S7vSJdLHRyaXA6WyJwZXIgdHJpcCIsIuavj+i2nyJdfSxZYT1lPT57Y29uc3QgdD1MX1tTdHJpbmcoZSldO3JldHVybiB0P2EodFswXSx0WzFdKTphKGBwZXIgJHtlfWAsYOavjyR7ZX1gKX0sQl89ZT0+e2NvbnN0IHQ9ZS5ob3RlbD8/e30sbj1lLmV4dHJhcz8/W10sbz1lLmZvckJvb2tpbmc7cmV0dXJuIG8/W2A8ZGl2PjxkaXYgY2xhc3M9ImgtbmFtZSI+JHtsKGEoYEFkZC1vbnMgZm9yICR7by5jb25maXJtYXRpb25Db2RlfWAsYCR7by5jb25maXJtYXRpb25Db2RlfSDnmoTpmYTliqDmnI3liqFgKSl9PC9kaXY+PGRpdiBjbGFzcz0iaC13aGVyZSI+JHtsKEgodCkpfSDCtyAke2wocnMoby5zdGF5KSl9PC9kaXY+PC9kaXY+YCxgPGRpdiBjbGFzcz0icm93cyI+JHtuLm1hcChzPT5gCiAgICAgICAgPGRpdiBjbGFzcz0icm93Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9ImJvZHkiPgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lIj4ke2wocy5uYW1lKX08L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0ibWV0YSI+JHtsKHMuZGVzY3JpcHRpb24pfTwvZGl2PgogICAgICAgICAgPC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwcmljZSI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InAtdG90YWwiPiR7bChzLnByaWNlKX08L2Rpdj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icC11bml0Ij4ke2woWWEocy5wZXIpKX08L2Rpdj4KICAgICAgICAgIDwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0iYWN0aW9uIj4ke1pzKGBkYXRhLWJvb2tpbmctZXh0cmE9IiR7bChzLmlkKX0iIGRhdGEtYm9va2luZz0iJHtsKG8uY29uZmlybWF0aW9uQ29kZSl9ImAsTnVtYmVyKG8uaGVsZD8uW3MuaWRdPz8wKSxTdHJpbmcocy5uYW1lKSl9PC9kaXY+CiAgICAgICAgPC9kaXY+YCkuam9pbigiIil9PC9kaXY+YCxgPGRpdiBjbGFzcz0ibm90ZSI+JHthKCJFYWNoIGNoYW5nZSBpcyBzaG93biB3aXRoIGl0cyBuZXcgdG90YWwgYmVmb3JlIGFueXRoaW5nIG1vdmVzLiBOb3RoaW5nIGlzIGNoYXJnZWQgaGVyZS4iLCLmr4/mrKHmlLnliqjpg73kvJrlhYjmmL7npLrmlrDnmoTmgLvku7fvvIznoa7orqTlkI7miY3nlJ/mlYjjgILov5nph4zkuI3miaPmrL7jgIIiKX08L2Rpdj5gLGA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiQmFjayB0byB5b3VyIGJvb2tpbmdzIiwi6L+U5Zue5oiR55qE6aKE6K6iIil9PC9idXR0b24+YF0uam9pbigiIik6W2A8ZGl2PjxkaXYgY2xhc3M9ImgtbmFtZSI+JHtsKEgodCkpfTwvZGl2PjxkaXYgY2xhc3M9Imgtd2hlcmUiPiR7YSgiV2hhdCBpdCBvZmZlcnMgYmVzaWRlIHRoZSByb29tIiwi5oi/6Ze05Lul5aSW55qE6ZmE5Yqg5pyN5YqhIil9PC9kaXY+PC9kaXY+YCxgPGRpdiBjbGFzcz0icm93cyI+JHtuLm1hcChzPT5gCiAgICAgIDxkaXYgY2xhc3M9InJvdyI+CiAgICAgICAgPGRpdiBjbGFzcz0iYm9keSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lIj4ke2wocy5uYW1lKX08L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9Im1ldGEiPiR7bChzLmRlc2NyaXB0aW9uKX08L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwcmljZSI+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwLXRvdGFsIj4ke2wocy5wcmljZSl9PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJwLXVuaXQiPiR7bChZYShzLnBlcikpfTwvZGl2PgogICAgICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9ImFjdGlvbiI+JHtacyhgZGF0YS1hZGQtZXh0cmE9IiR7bChzLmlkKX0iIGRhdGEtaG90ZWw9IiR7bCh0LmlkKX0iYCx1XyhTdHJpbmcodC5pZCksU3RyaW5nKHMuaWQpKSxTdHJpbmcocy5uYW1lKSl9PC9kaXY+CiAgICAgIDwvZGl2PmApLmpvaW4oIiIpfTwvZGl2PmAsYDxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtaG90ZWw9IiR7bCh0LmlkKX0iPiR7bChhKGBCYWNrIHRvICR7SCh0KX1gLGDov5Tlm54ke0godCl9YCkpfTwvYnV0dG9uPmBdLmpvaW4oIiIpfTtsZXQgYmE9ITE7Y29uc3QgSF89KGUsdD0hMSxuPSExKT0+e2NvbnN0IG89ZS5raW5kPT09InJvb20iP2BkYXRhLWFkZC1yb29tPSIke2woZS5yb29tUmVmKX0iIGRhdGEtaG90ZWw9IiR7bChlLmhvdGVsSWQpfSIgZGF0YS1jaT0iJHtsKGUuc3RheT8uY2hlY2tJbil9IiBkYXRhLWNvPSIke2woZS5zdGF5Py5jaGVja091dCl9IiBkYXRhLWd1PSIke2woZS5zdGF5Py5ndWVzdHMpfSJgOmBkYXRhLWFkZC1leHRyYT0iJHtsKGUuZXh0cmFSZWY/P2UudGl0bGUpfSIgZGF0YS1ob3RlbD0iJHtsKGUuaG90ZWxJZCl9IiR7ZS5kYXk/YCBkYXRhLWRheT0iJHtsKGUuZGF5KX0iYDoiIn1gLHM9ZS5raW5kIT09InJvb20ifHxlLmhvdXJseT8iIjplLnJlZnVuZGFibGU9PT0hMT9gPGxpIGNsYXNzPSJwZXJrIHdhcm4iPiR7SS5hbGVydH08c3Bhbj48Yj4ke2EoIk5vbi1yZWZ1bmRhYmxlIiwi5LiN5Y+v5Y+W5raIIil9PC9iPiR7YSgiIOKAlCB0aGlzIHJhdGUgY2Fubm90IGJlIGNhbmNlbGxlZCIsIu+8jOatpOS7t+agvOiuouWQjuS4jeiDvemAgOaUuSIpfTwvc3Bhbj48L2xpPmA6YDxsaSBjbGFzcz0icGVyayI+JHtJLmNoZWNrfTxzcGFuPjxiPiR7YSgiRnJlZSBjYW5jZWxsYXRpb24iLCLlhY3otLnlj5bmtogiKX08L2I+JHtlLmZyZWVDYW5jZWxsYXRpb25Mb2NhbD9sKGEoYCB1bnRpbCAke3ViKGUuZnJlZUNhbmNlbGxhdGlvbkxvY2FsLGUuZnJlZUNhbmNlbGxhdGlvbkxvY2FsSXNvKX1gLGDvvIwke0R0KGUuZnJlZUNhbmNlbGxhdGlvbkxvY2FsLGUuZnJlZUNhbmNlbGxhdGlvbkxvY2FsSXNvKX0g5YmNYCkpOiIifTwvc3Bhbj48L2xpPmAscj1lLmtpbmQ9PT0icm9vbSImJmUucGF5bWVudD09PSJwcmVwYWlkIj9gPGxpIGNsYXNzPSJwZXJrIj4ke0kubG9ja308c3Bhbj48Yj4ke2EoIlBhaWQgaW4gYWR2YW5jZSIsIumcgOmihOS7mCIpfTwvYj4ke2EoIiDigJQgb24gdGhlIG5leHQgc3RlcCIsIu+8jOS4i+S4gOatpeS7mOasviIpfTwvc3Bhbj48L2xpPmA6IiI7cmV0dXJuYAogICAgPGRpdiBjbGFzcz0icm93IGxpbmUiPgogICAgICA8ZGl2IGNsYXNzPSJib2R5Ij4KICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lIj4ke2woZS50aXRsZSl9PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0ibWV0YSI+JHt0JiZNdChlLnN1cHBsaWVyKT9gPHNwYW4gY2xhc3M9ImJhZGdlIj4ke2woTXQoZS5zdXBwbGllcikubmFtZSl9PC9zcGFuPiBgOiIifSR7bChlLmtpbmQ9PT0icm9vbSI/W24/IiI6b3QoZSksbj8iIjpmYShlLnN0YXksZS5ob3VybHkpLGdiKGUpXS5maWx0ZXIoQm9vbGVhbikuam9pbigiIMK3ICIpOmAke290KGUpfSR7ZS5kZXRhaWw/YCDCtyAke2UuZGV0YWlsfWA6IiJ9YCl9PC9kaXY+CiAgICAgICAgJHtzfHxyP2A8dWwgY2xhc3M9InBlcmtzIj4ke3N9JHtyfTwvdWw+YDoiIn0KICAgICAgPC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InByaWNlIj4KICAgICAgICA8ZGl2IGNsYXNzPSJwLWxpbmUiPiR7bChlLnRvdGFsKX08L2Rpdj4KICAgICAgICAke2Uua2luZD09PSJyb29tIiYmYmE/YDxkaXYgY2xhc3M9InAtdW5pdCI+JHthKCJiZWZvcmUgdGF4ZXMiLCLmnKrlkKvnqI7otLkiKX08L2Rpdj5gOiIifQogICAgICAgIDxkaXYgY2xhc3M9InAtdW5pdCI+JHtlLmtpbmQ9PT0icm9vbSImJmUuaG91cmx5P2woWGUoZS5ob3VybHkuaG91cnMpKTplLmtpbmQ9PT0icm9vbSI/bChhKGAke2UudW5pdH0gYSBuaWdodGAsYOavj+aZmiAke2UudW5pdH1gKSk6bChhKGAke2UudW5pdH0gZWFjaGAsYOavj+S7vSAke2UudW5pdH1gKSl9PC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJhY3Rpb24iPjxzcGFuIGNsYXNzPSJ3bCI+JHtlLmtpbmQ9PT0icm9vbSI/YSgiUm9vbXMiLCLpl7TmlbAiKTphKCJRdWFudGl0eSIsIuaVsOmHjyIpfTwvc3Bhbj4ke1pzKG8sTnVtYmVyKGUua2luZD09PSJleHRyYSI/ZS5vcmRlcmVkPz9lLnF1YW50aXR5Pz8xOmUucXVhbnRpdHk/PzEpLFN0cmluZyhlLnRpdGxlKSl9PC9kaXY+CiAgICA8L2Rpdj5gfSxRYT0oZSx0KT0+YDxkaXYgY2xhc3M9InN1bXMiPgogICAgIDxkaXYgY2xhc3M9InN1bSI+PHNwYW4+JHshQXJyYXkuaXNBcnJheShlLmxpbmVzKXx8ZS5saW5lcy5zb21lKG49Pm4ua2luZD09PSJleHRyYSIpP2EoIlJvb21zIGFuZCBhZGQtb25zIiwi5oi/6LS55ZKM6ZmE5Yqg6aG555uuIik6YSgiUm9vbXMiLCLmiL/otLkiKX08L3NwYW4+PHNwYW4+JHtsKGUuc3VidG90YWwpfTwvc3Bhbj48L2Rpdj4KICAgICA8ZGl2IGNsYXNzPSJzdW0iPjxzcGFuPiR7YSgiVGF4ZXMgYW5kIGZlZXMiLCLnqI7otLkiKX08L3NwYW4+PHNwYW4+JHtsKGUudGF4ZXNBbmRGZWVzPT09IkluY2x1ZGVkIj9hKCJJbmNsdWRlZCIsIuW3suWQqyIpOmUudGF4ZXNBbmRGZWVzKX08L3NwYW4+PC9kaXY+CiAgICAgJHtlLm1lbWJlclNhdmluZz9gPGRpdiBjbGFzcz0ic3VtIGdvb2QiPjxzcGFuPiR7bChhKGAke2UubWVtYmVyU2F2aW5nLnRpZXJ9IG1lbWJlciByYXRlYCxgJHtlLm1lbWJlclNhdmluZy50aWVyfeS8muWRmOS7t2ApKX08L3NwYW4+PHNwYW4+4oiSICR7bChlLm1lbWJlclNhdmluZy5zYXZlZCl9PC9zcGFuPjwvZGl2PmA6IiJ9CiAgICAgPGRpdiBjbGFzcz0ic3VtIHRvdGFsIj48c3Bhbj4ke2wodCl9PHNtYWxsPiR7YSgiVGF4ZXMgYW5kIGZlZXMgaW4iLCLlkKvnqI7otLkiKX08L3NtYWxsPjwvc3Bhbj48c3Bhbj4ke2woZS50b3RhbCl9PC9zcGFuPjwvZGl2PgogICAgICR7ZS5tZW1iZXJTYXZpbmc/YDxkaXYgY2xhc3M9InN1bSI+PHNwYW4+JHthKCJQb2ludHMgdGhpcyBlYXJucyIsIuWPr+W+l+enr+WIhiIpfTwvc3Bhbj48c3Bhbj4ke2woTnVtYmVyKGUubWVtYmVyU2F2aW5nLnBvaW50cykudG9Mb2NhbGVTdHJpbmcoemVbel0pKX08L3NwYW4+PC9kaXY+YDoiIn0KICAgPC9kaXY+YCxGXz1lPT5gPGRpdiBjbGFzcz0ibm90ZSI+JHtsKGUuc2FuZGJveD9hKGBUaGlzIGlzIGEgdGVzdCBlbnZpcm9ubWVudC4gQm9va2luZyBoZXJlIG1ha2VzIGEgc2ltdWxhdGVkIGJvb2tpbmcsIG5vdCBhICR7SChlKX0gcmVzZXJ2YXRpb24sIGFuZCBub3RoaW5nIGlzIHBhaWQuYCxg6L+Z5piv5rWL6K+V546v5aKD77ya5Zyo6L+Z6YeM6aKE6K6i5Y+q5Lya55Sf5oiQ5qih5ouf6K6i5Y2V77yM5LiN5pivJHtoZShIKGUpKX3nmoTnnJ/lrp7pooTorqLvvIzkuZ/kuI3ku5jmrL7jgIJgKTplLmJvb2tpbmdNb2RlPT09InBheS1hdC1ob3RlbCI/YShgTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIEJvb2tpbmcgbWFrZXMgYSByZXNlcnZhdGlvbiB3aXRoICR7SChlKX0sIHBhaWQgYXQgdGhlIGhvdGVsLCBhbmQgZ2l2ZXMgeW91IGEgY29uZmlybWF0aW9uIGNvZGUuYCxg6L+Z6YeM5LiN5omj5qy+44CC6aKE6K6i5Lya5ZyoJHtoZShIKGUpKX3nlJ/miJDkuIDnrJTliLDlupfku5jmrL7nmoTorqLljZXvvIzlubbnu5nkvaDkuIDkuKrnoa7orqTnoIHjgIJgKTplLmRlbW8/YShgTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIFRoaXMgaXMgYSBkZW1vbnN0cmF0aW9uOiByZXF1ZXN0aW5nIGEgYm9va2luZyBnaXZlcyB5b3UgYSBjb25maXJtYXRpb24gY29kZSwgYnV0ICR7SChlKX0gZG9lcyBub3QgcmVjZWl2ZSBpdCBhbmQgbm8gcm9vbSBpcyBoZWxkLmAsYOi/memHjOS4jeaJo+asvuOAgui/meaYr+a8lOekuu+8muaPkOS6pOWQjuS8muW+l+WIsOehruiupOegge+8jOS9hiR7aGUoSChlKSl95LiN5Lya5pS25Yiw77yM5Lmf5LiN5Lya5Li65L2g5L+d55WZ5oi/6Ze044CCYCk6YShgTm90aGluZyBpcyBjaGFyZ2VkIGhlcmUuIFJlcXVlc3RpbmcgYSBib29raW5nIGFza3MgJHtIKGUpfSB0byBob2xkIHRoZSByb29tcyBhbmQgZ2l2ZXMgeW91IGEgY29uZmlybWF0aW9uIGNvZGUuYCxg6L+Z6YeM5LiN5omj5qy+44CC5o+Q5Lqk5ZCOJHtoZShIKGUpKX3kvJrkuLrkvaDkv53nlZnmiL/pl7TvvIzlubbnu5nkvaDkuIDkuKrnoa7orqTnoIHjgIJgKSl9PC9kaXY+YCxYYT1lPT5lLmxlbmd0aDwyP2VbMF0/PyIiOmAke2Uuc2xpY2UoMCwtMSkuam9pbihhKCIsICIsIuOAgSIpKX0ke2EoIiBhbmQgIiwi5ZKMIil9JHtlW2UubGVuZ3RoLTFdfWAsVV89ZT0+e2NvbnN0IHQ9X3UoZSk7aWYodC5sZW5ndGg+MSl7Y29uc3Qgbj10LmluY2x1ZGVzKGZ0KT9mdDoiIjtyZXR1cm5bYDxkaXYgY2xhc3M9Im5vdGUiPiR7bChhKGBUaGVzZSBzdGF5cyBhcmUgd2l0aCAke1hhKHQubWFwKG89PktlKG8pLm5hbWUpKX0uIEVhY2ggZ3JvdXAncyBhcmUgYm9va2VkIG9uIHRoZWlyIG93bi5gLGDov5nkupvkvY/lrr/liIblsZ4ke1hhKHQubWFwKG89PktlKG8pLm5hbWUpKX3vvIzmr4/kuKrpm4blm6LnmoTopoHliIblvIDpooTorqLjgIJgKSl9PC9kaXY+YCwuLi50Lm1hcChvPT57Y29uc3Qgcz1LZShvKTtyZXR1cm5gPGRpdiBjbGFzcz0iZm9vdCI+PGJ1dHRvbiBjbGFzcz0iZ28ke24mJm4hPT1vPyIgcXVpZXQiOiIifSIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYXNrLWJvb2siIGRhdGEtZ3JvdXA9IiR7bChvKX0iPiR7bChhKGBCb29rIHRoZSAke0gocyl9IHN0YXlzYCxg6aKE6K6iJHtIKHMpfeeahOS9j+Wuv2ApKX08L2J1dHRvbj48L2Rpdj4ke0ZfKHMpfWB9KSxuP2VpKCEwLEtlKG4pKToiIl19cmV0dXJuW2VpKCEwLEtlKHRbMF0pKV19LE11PSgpPT5LZShmdHx8X3UoeD8ubGluZXM/P1tdKVswXSksVl89ZT0+e2NvbnN0IHQ9ZS5saW5lcz8/W107aWYoYmE9ISFlLnRheGVzQW5kRmVlcyYmZS50YXhlc0FuZEZlZXMhPT0iSW5jbHVkZWQiLHQubGVuZ3RoPT09MClyZXR1cm5bYDxkaXYgY2xhc3M9ImVtcHR5Ij4ke2EoIlRoZSB0cmlwIGlzIGVtcHR5LiIsIuihjOeoi+mHjOi/mOayoeacieWGheWuueOAgiIpfTwvZGl2PmAsYDxkaXYgY2xhc3M9ImZvb3QiPjxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJob21lIj4ke2woaGUoVGUpPT09IumFkuW6lyI/YShmZT9gQnJvd3NlIGhvdGVscyBvbiAke1RlfWA6YEJyb3dzZSAke1RlfSBob3RlbHNgLCLmtY/op4jlhajpg6jphZLlupciKTpmZT9hKGBCcm93c2UgaG90ZWxzIG9uICR7VGV9YCxg5rWP6KeIJHtUZX3nmoTphZLlupdgKTphKGBCcm93c2UgJHtUZX0gaG90ZWxzYCxg5rWP6KeIJHtUZX3nmoTphZLlupdgKSl9PC9idXR0b24+PC9kaXY+YF0uam9pbigiIik7Y29uc3Qgbj1bLi4ubmV3IFNldCh0Lm1hcChpPT5TdHJpbmcoaS5kYXk/PyIiKSkpXS5zb3J0KCksbz10LmZpbHRlcihpPT5pLmtpbmQ9PT0icm9vbSIpLHM9Wy4uLm5ldyBTZXQoby5tYXAoaT0+U3RyaW5nKGkuaG90ZWxOYW1lPz8iIikpKV0uZmlsdGVyKEJvb2xlYW4pLHI9cy5sZW5ndGg9PT0xJiZuZXcgU2V0KG8ubWFwKGk9PmAke2kuc3RheT8uY2hlY2tJbn18JHtpLnN0YXk/LmNoZWNrT3V0fXwke2kuaG91cmx5Py5zdGFydD8/IiJ9YCkpLnNpemU9PT0xO3JldHVybltgPGRpdiBjbGFzcz0icmV2aWV3LWgiPjxoMiBjbGFzcz0iaC1uYW1lIj4ke2EoIlJldmlldyBhbmQgYm9vayIsIuaguOWvueW5tumihOiuoiIpfTwvaDI+PGRpdiBjbGFzcz0iaC13aGVyZSI+JHtzLmxlbmd0aD09PTE/anQoc1swXSxvLmZpbmQoaT0+U3RyaW5nKGkuaG90ZWxOYW1lKT09PXNbMF0pPy5ob3RlbE5hbWVzKTpsKHMubGVuZ3RoP2EoYCR7cy5sZW5ndGh9IGhvdGVsc2AsYCR7cy5sZW5ndGh9IOWutumFkuW6l2ApOnQubGVuZ3RoPT09MT9hKCIxIGl0ZW0iLCIxIOmhuSIpOmEoYCR7dC5sZW5ndGh9IGl0ZW1zYCxgJHt0Lmxlbmd0aH0g6aG5YCkpfTwvZGl2PjwvZGl2PmAscj9nYShvWzBdPy5zdGF5LG9bMF0/LmhvdXJseSk6IiIsbi5tYXAoaT0+YAogICAgICAke2kmJm4ubGVuZ3RoPjE/YDxkaXYgY2xhc3M9ImRheSI+JHtsKF9lKGkpKX08L2Rpdj5gOiIifQogICAgICA8ZGl2IGNsYXNzPSJyb3dzIj4ke3QuZmlsdGVyKGM9PlN0cmluZyhjLmRheT8/IiIpPT09aSkubWFwKGM9PkhfKGMsX3UodCkubGVuZ3RoPjEscikpLmpvaW4oIiIpfTwvZGl2PmApLmpvaW4oIiIpLChlLmRyb3BwZWQ/P1tdKS5sZW5ndGg/YDxkaXYgY2xhc3M9ImVyciI+JHtlLmRyb3BwZWQubWFwKGk9PmAke2woaS50aXRsZSl9OiAke2woaS53aHkpfWApLmpvaW4oIjxicj4iKX08L2Rpdj5gOiIiLC4uLkFycmF5LmlzQXJyYXkoZS5ncm91cHMpJiZlLmdyb3Vwcy5sZW5ndGg+MT9bYDxkaXYgY2xhc3M9Im5vdGUiPiR7bChhKGBQcmljZWQgaW4gJHt2cyhlLmN1cnJlbmNpZXM/P1tdKX0sIHNlcGFyYXRlbHkuIE5vdGhpbmcgaGVyZSBjb252ZXJ0cyBvbmUgaW50byB0aGUgb3RoZXI7IGVhY2ggaG90ZWwgaXMgYm9va2VkIGFuZCBwYWlkIGluIGl0cyBvd24uYCxg5YiG5Yir5LulICR7dnMoZS5jdXJyZW5jaWVzPz9bXSl9IOiuoeS7t++8jOi/memHjOS4jeWBmuaNoueul++8m+avj+WutumFkuW6l+aMieiHquW3seeahOW4geenjemihOiuouWSjOS7mOasvuOAgmApKX08L2Rpdj5gLC4uLmUuZ3JvdXBzLm1hcChpPT5RYShpLGkuZ29lc1dpdGhBU3RheT9hKGBJbiAke2kuY3VycmVuY3l9LCBnb2VzIHdpdGggYSBzdGF5IC0gbm90IGluIHRoZSB0b3RhbGAsYCR7aS5jdXJyZW5jeX3vvIzpmo/kvY/lrr/kuIDotbforqLvvIzkuI3orqHlhaXmgLvku7dgKTphKGBUb3RhbCBpbiAke2kuY3VycmVuY3l9YCxgJHtpLmN1cnJlbmN5fSDmgLvku7dgKSkpXTpbUWEoZSxhKCJUb3RhbCIsIuaAu+S7tyIpKV0sc2V8fCFzcygic2lnbkluIik/IiI6YDxkaXYgY2xhc3M9Im1lbWJlci1vZmZlciI+JHtJLnRhZ308c3Bhbj4ke2woYShgQSAke0JhfHxUZX0gbWVtYmVyP2AsYCR7QmF8fFRlfeS8muWRmO+8n2ApKX0gPGJ1dHRvbiBjbGFzcz0ibGlua3kiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImFzay1zaWduLWluIj4ke2EoIlNpZ24gaW4gZm9yIHRoZSBtZW1iZXIgcmF0ZSIsIueZu+W9leS6q+S8muWRmOS7tyIpfTwvYnV0dG9uPjwvc3Bhbj48L2Rpdj4ke0hzKCl9YCwuLi5BcnJheS5pc0FycmF5KGUubmVlZHNSb29tKSYmZS5uZWVkc1Jvb20ubGVuZ3RoP2UubmVlZHNSb29tLm1hcChpPT5gPGRpdiBjbGFzcz0iYXNrZWQiPgogICAgICAgICAgICAgPGI+JHthKCJHb2VzIHdpdGggYSBzdGF5Iiwi6ZyA6ZqP5L2P5a6/5LiA6LW36K6iIil9PC9iPgogICAgICAgICAgICAgPHNwYW4+JHtsKGEoYCR7dnMoaS5leHRyYXM/P1tdKX0gaXMgJHtvdChpKX0ncyBzZXJ2aWNlIGZvciBpdHMgZ3Vlc3RzLCBzbyBpdCBpcyBib29rZWQgd2l0aCBhIHJvb20gdGhlcmUgLSBvciBhZGRlZCB0byBhIGJvb2tpbmcgeW91IGFscmVhZHkgaGF2ZS5gLGAke3ZzKGkuZXh0cmFzPz9bXSl95pivJHtvdChpKX3kuLrkvY/lrqLmj5DkvpvnmoTmnI3liqHvvIzopoHlkozpgqPph4znmoTmiL/pl7TkuIDotbforqLvvIzmiJbliqDliLDkvaDlt7LmnInnmoTpooTorqLkuIrjgIJgKSl9PC9zcGFuPgogICAgICAgICAgICAgPGRpdiBjbGFzcz0iZm9vdCI+CiAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtaG90ZWw9IiR7bChpLmhvdGVsSWQpfSI+JHtsKGEoYFJvb21zIGF0ICR7b3QoaSl9YCxgJHtvdChpKX3nmoTmiL/pl7RgKSl9PC9idXR0b24+CiAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJib29raW5ncyI+JHthKCJNeSBib29raW5ncyIsIuaIkeeahOmihOiuoiIpfTwvYnV0dG9uPgogICAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPC9kaXY+YCk6Wy4uLlVfKHQpXV0uam9pbigiIil9LFdfPVt7aWQ6ImtpbmctYmVkIixsYWJlbDoiS2luZyBiZWQiLHpoOiLlpKfluooifSx7aWQ6InR3aW4tYmVkcyIsbGFiZWw6IlR3aW4gYmVkcyIsemg6IuWPjOW6iiJ9LHtpZDoiaGlnaC1mbG9vciIsbGFiZWw6IkhpZ2ggZmxvb3IiLHpoOiLpq5jmpbzlsYIifSx7aWQ6Imxvdy1mbG9vciIsbGFiZWw6IkxvdyBmbG9vciIsemg6IuS9jualvOWxgiJ9LHtpZDoicXVpZXQtcm9vbSIsbGFiZWw6IlF1aWV0IHJvb20iLHpoOiLlronpnZnmiL/pl7QifSx7aWQ6ImNvbm5lY3Rpbmctcm9vbXMiLGxhYmVsOiJDb25uZWN0aW5nIHJvb21zIix6aDoi6L+e6YCa5oi/In0se2lkOiJlYXJseS1jaGVjay1pbiIsbGFiZWw6IkVhcmx5IGNoZWNrLWluIix6aDoi5o+Q5YmN5YWl5L2PIn0se2lkOiJsYXRlLWFycml2YWwiLGxhYmVsOiJBcnJpdmluZyBsYXRlIix6aDoi5pma5YiwIn0se2lkOiJhY2Nlc3NpYmxlLXJvb20iLGxhYmVsOiJBY2Nlc3NpYmxlIHJvb20iLHpoOiLml6Dpmpznoo3miL8ifV0sQnM9ZT0+e2NvbnN0IHQ9V18uZmluZChuPT5uLmlkPT09ZSk7cmV0dXJuIHQ/YSh0LmxhYmVsLHQuemgpOmV9LEtfPXsia2luZy1iZWQiOiJ0d2luLWJlZHMiLCJ0d2luLWJlZHMiOiJraW5nLWJlZCIsImhpZ2gtZmxvb3IiOiJsb3ctZmxvb3IiLCJsb3ctZmxvb3IiOiJoaWdoLWZsb29yIn0sR189W3tlbjoiQmVkIix6aDoi5bqK5Z6LIixpZHM6WyJraW5nLWJlZCIsInR3aW4tYmVkcyJdfSx7ZW46IkZsb29yIix6aDoi5qW85bGCIixpZHM6WyJoaWdoLWZsb29yIiwibG93LWZsb29yIl19LHtlbjoiQWxzbyIsemg6IuWFtuS7liIsaWRzOlsicXVpZXQtcm9vbSIsImNvbm5lY3Rpbmctcm9vbXMiLCJlYXJseS1jaGVjay1pbiIsImFjY2Vzc2libGUtcm9vbSJdfV0sSl89WyIxMjowMCIsIjE0OjAwIiwiMTY6MDAiLCIxODowMCIsIjIwOjAwIiwiMjI6MDAiLCIyMzozMCJdO2xldCBDZT1udWxsO2NvbnN0IGVpPShlPSExLHQ9TXUoKSk9Pntjb25zdCBuPUNlP0NlLnJlcXVlc3RzOnNlPy5wcmVmZXJlbmNlcz8/W10sbz14Py52aWV3PT09InRyaXAiJiYhKEFycmF5LmlzQXJyYXkoeC5ncm91cHMpJiZ4Lmdyb3Vwcy5sZW5ndGg+MSk/U3RyaW5nKHgudG90YWw/PyIiKToiIixzPSh4Py5saW5lcz8/W10pLmZpbHRlcihtPT5tLmtpbmQ9PT0icm9vbSIpLHI9cy5yZWR1Y2UoKG0seSk9Pm0rTnVtYmVyKHkucXVhbnRpdHk/PzEpLDApLGk9cy5zb21lKG09Pm0ucGF5bWVudD09PSJwcmVwYWlkIiksYz1uZXcgU2V0KHMubWFwKG09PmAke20uaG90ZWxJZH18JHttLnN0YXk/LmNoZWNrSW59fCR7bS5zdGF5Py5jaGVja091dH18JHttLmhvdXJseT8uc3RhcnQ/PyIifWApKS5zaXplLGQ9bmV3IFNldChzLm1hcChtPT5TdHJpbmcobS5ob3RlbElkKSkpLnNpemU9PT1jP2EoYGFsbCAke2N9IGhvdGVsc2AsYOWFqOmDqCAke2N9IOWutmApOmEoYGFsbCAke2N9IHN0YXlzYCxg5YWo6YOoICR7Y30g5q615L2P5a6/YCksdT1pP2EoIkNvbnRpbnVlIHRvIHBheW1lbnQiLCLljrvku5jmrL4iKTpjPjE/dC5zYW5kYm94P2EoYFRlc3QtYm9vayAke2R9YCxg5rWL6K+V6aKE6K6iJHtkfWApOmEoYEJvb2sgJHtkfWAsYOmihOiuoiR7ZH1gKTp0LnNhbmRib3g/YSgiTWFrZSBhIHRlc3QgYm9va2luZyIsIuaPkOS6pOa1i+ivlemihOiuoiIpOnQuYm9va2luZ01vZGU9PT0icGF5LWF0LWhvdGVsIj9yPjE/YShgQm9vayAke3J9IHJvb21zYCxg6aKE6K6iICR7cn0g6Ze0YCk6YSgiQm9vayB0aGlzIHJvb20iLCLpooTorqLov5npl7TmiL8iKTp0LmRlbW8/YSgiUmVxdWVzdCBib29raW5nIiwi5o+Q5Lqk6aKE6K6iIik6cj4xP2EoYEhvbGQgJHtyfSByb29tc2AsYOS/neeVmSAke3J9IOmXtGApOmEoIkhvbGQgdGhpcyByb29tIiwi5L+d55WZ6L+Z6Ze05oi/IikscD1DZT8uYXJyaXZpbmdBdD8/IiI7cmV0dXJuYAogIDxkaXYgY2xhc3M9ImZvcm0iIGlkPSJndWVzdCIke2U/IiI6IiBoaWRkZW4ifT4KICAgIDxoMyBjbGFzcz0iZm9ybS1oIj4ke2EoIldobyBpcyBzdGF5aW5nIiwi5YWl5L2P5Lq65L+h5oGvIil9PC9oMz4KICAgIDxsYWJlbD4ke2EoIkZ1bGwgbmFtZSIsIuWnk+WQjSIpfTxpbnB1dCBpZD0iZ25hbWUiIHR5cGU9InRleHQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBwbGFjZWhvbGRlcj0iJHthKCJBcyBpdCBzaG91bGQgYXBwZWFyIG9uIHRoZSBib29raW5nIiwi5LiO6K+B5Lu25LiA6Ie0Iil9IiB2YWx1ZT0iJHtsKENlPy5uYW1lPz8iIil9Ij48L2xhYmVsPgogICAgPGRpdiBjbGFzcz0iJHt0LnBob25lUmVxdWlyZWQ/InR3byI6Im9uZSJ9Ij4KICAgICAgPGxhYmVsPiR7YSgiRW1haWwiLCLpgq7nrrEiKX08aW5wdXQgaWQ9ImdtYWlsIiB0eXBlPSJlbWFpbCIgYXV0b2NvbXBsZXRlPSJvZmYiIHBsYWNlaG9sZGVyPSIke2EoIkZvciB0aGUgY29uZmlybWF0aW9uIiwi5o6l5pS256Gu6K6k5L+h5oGvIil9IiB2YWx1ZT0iJHtsKENlPy5lbWFpbD8/IiIpfSI+PC9sYWJlbD4ke3QucGhvbmVSZXF1aXJlZD9gCiAgICAgIDxsYWJlbD4ke2EoIlBob25lIiwi5omL5py65Y+3Iil9PGlucHV0IGlkPSJncGhvbmUiIHR5cGU9InRlbCIgYXV0b2NvbXBsZXRlPSJvZmYiIHBsYWNlaG9sZGVyPSIke2EoIkZvciB0aGUgaG90ZWwgdG8gcmVhY2ggeW91Iiwi5pa55L6/6YWS5bqX6IGU57O75L2gIil9IiB2YWx1ZT0iJHtsKENlPy5waG9uZT8/IiIpfSI+PC9sYWJlbD5gOiIifQogICAgPC9kaXY+CiAgICA8ZGV0YWlscyBjbGFzcz0iYXNrcyIke24ubGVuZ3RofHxDZT8ubm90ZXN8fHA/IiBvcGVuIjoiIn0+CiAgICAgIDxzdW1tYXJ5PiR7YSgiUmVxdWVzdHMgZm9yIHRoZSBob3RlbCIsIue7memFkuW6l+eahOmcgOaxgiIpfSA8c21hbGw+JHthKCJvcHRpb25hbCIsIumAieWhqyIpfTwvc21hbGw+PC9zdW1tYXJ5PgogICAgICA8ZGl2IGNsYXNzPSJhc2tzLWJvZHkiPgogICAgICAgICR7R18ubWFwKG09PmA8ZGl2IGNsYXNzPSJhc2stZ3JvdXAiIHJvbGU9Imdyb3VwIiBhcmlhLWxhYmVsPSIke2EobS5lbixtLnpoKX0iPgogICAgICAgICAgPHNwYW4gY2xhc3M9IndsIj4ke2EobS5lbixtLnpoKX08L3NwYW4+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJjaGlwcyI+JHttLmlkcy5tYXAoeT0+YDxidXR0b24gY2xhc3M9ImNoaXAgYXNrIiB0eXBlPSJidXR0b24iIGRhdGEtYXNrPSIke2woeSl9IiBhcmlhLXByZXNzZWQ9IiR7bi5pbmNsdWRlcyh5KT8idHJ1ZSI6ImZhbHNlIn0iPiR7bChCcyh5KSl9PC9idXR0b24+YCkuam9pbigiIil9PC9kaXY+CiAgICAgICAgPC9kaXY+YCkuam9pbigiIil9CiAgICAgICAgPGRpdiBjbGFzcz0iYXNrLWdyb3VwIiByb2xlPSJncm91cCIgYXJpYS1sYWJlbD0iJHthKCJBcnJpdmluZyBhcm91bmQiLCLpooTorqHliLDlupciKX0iPgogICAgICAgICAgPHNwYW4gY2xhc3M9IndsIj4ke2EoIkFycml2aW5nIGFyb3VuZCIsIumihOiuoeWIsOW6lyIpfTwvc3Bhbj4KICAgICAgICAgIDxkaXYgY2xhc3M9ImNoaXBzIj4ke0pfLm1hcChtPT5gPGJ1dHRvbiBjbGFzcz0iY2hpcCBhc2siIHR5cGU9ImJ1dHRvbiIgZGF0YS1hcnJpdmU9IiR7bX0iIGFyaWEtcHJlc3NlZD0iJHtwPT09bT8idHJ1ZSI6ImZhbHNlIn0iPiR7bT09PSIyMzozMCI/YSgiQWZ0ZXIgMjI6MDAiLCIyMjowMCDku6XlkI4iKTptfTwvYnV0dG9uPmApLmpvaW4oIiIpfTwvZGl2PgogICAgICAgICAgPGlucHV0IGlkPSJndGltZSIgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iJHtsKHApfSI+CiAgICAgICAgPC9kaXY+CiAgICAgICAgPGxhYmVsPiR7YSgiQW55dGhpbmcgZWxzZSIsIuWFtuS7lumcgOaxgiIpfTxpbnB1dCBpZD0iZ25vdGUiIHR5cGU9InRleHQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBwbGFjZWhvbGRlcj0iJHthKCJJbiB5b3VyIG93biB3b3JkcyIsIueUqOS9oOiHquW3seeahOivneWGmSIpfSIgdmFsdWU9IiR7bChDZT8ubm90ZXM/PyIiKX0iPjwvbGFiZWw+CiAgICAgICAgPGRpdiBjbGFzcz0ibm90ZSI+JHtsKGEoYFRoZXNlIGdvIHRvIHRoZSBkZXNrIGFzIHJlcXVlc3RzLiAke0godCl9IG1lZXRzIHdoYXQgaXQgY2FuIG9uIHRoZSBkYXk7IG5vbmUgb2YgaXQgaXMgaGVsZC5gLGDov5nkupvkvJrkvZzkuLrpnIDmsYLovaznu5nliY3lj7DvvIwke2hlKEgodCkpfeW9k+WkqeWwvemHj+a7oei2s++8jOS9huS4jeS9nOS/neivgeOAgmApKX08L2Rpdj4KICAgICAgICAke3NlP2A8bGFiZWwgY2xhc3M9InJlbWVtYmVyIj48aW5wdXQgaWQ9ImdyZW1lbWJlciIgdHlwZT0iY2hlY2tib3giJHtDZT8ucmVtZW1iZXI/IiBjaGVja2VkIjoiIn0+ICR7bChzZS5wcm9ncmFtbWU/YShgUmVtZW1iZXIgdGhlIGJlZCwgZmxvb3IgYW5kIHJvb20gcmVxdWVzdHMgb24gbXkgJHtzZS5wcm9ncmFtbWV9IGZvciBuZXh0IHRpbWVgLGDmiorluorlnovjgIHmpbzlsYLlkozmiL/pl7TpnIDmsYLorrDlnKjmiJHnmoQke3NlLnByb2dyYW1tZX3otKbmiLfph4zvvIzkuIvmrKHoh6rliqjluKbkuIpgKTphKCJSZW1lbWJlciB0aGUgYmVkLCBmbG9vciBhbmQgcm9vbSByZXF1ZXN0cyBvbiBteSBtZW1iZXJzaGlwIGZvciBuZXh0IHRpbWUiLCLmiorluorlnovjgIHmpbzlsYLlkozmiL/pl7TpnIDmsYLorrDlnKjmiJHnmoTkvJrlkZjotKbmiLfph4zvvIzkuIvmrKHoh6rliqjluKbkuIoiKSl9PC9sYWJlbD5gOiIifQogICAgICA8L2Rpdj4KICAgIDwvZGV0YWlscz4KICAgIDxidXR0b24gY2xhc3M9ImdvIGJpZyBibG9jayIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9vayI+JHt1fSR7bz9gPHNwYW4gY2xhc3M9InByaWNlLWluIj4ke2wobyl9PC9zcGFuPmA6IiJ9PC9idXR0b24+CiAgICA8ZGl2IGNsYXNzPSJ0cnVzdCI+JHtJLmxvY2t9PHNwYW4+JHtsKGk/dC5zYW5kYm94P2EoIk5leHQsIGEgcGF5bWVudCBwYWdlIGluIHRlc3QgbW9kZTogbm8gcmVhbCBtb25leSBtb3Zlcy4gQ2FyZCBkZXRhaWxzIGFyZSB0eXBlZCBvbmx5IHRoZXJlLCBhbmQgbm90aGluZyBpcyBib29rZWQgdW50aWwgaXQgaXMgcGFpZC4iLCLkuIvkuIDmraXmmK/mtYvor5XmqKHlvI/nmoTku5jmrL7pobXvvIzkuI3kvJrnnJ/lrp7miaPmrL7jgILljaHlj7flj6rlnKjku5jmrL7pobXloavlhpnvvIzku5jmrL7miJDlip/liY3kuI3kvJrpooTorqLjgIIiKTphKGBOZXh0LCBhIHNlY3VyZSBwYXltZW50IHBhZ2U6IGNhcmQgZGV0YWlscyBhcmUgdHlwZWQgb25seSB0aGVyZS4gTm90aGluZyBpcyBib29rZWQgd2l0aCAke0godCl9IHVudGlsIGl0IGlzIHBhaWQsIGFuZCBpZiBpdCBjYW5ub3QgYmUsIGFsbCBvZiBpdCBnb2VzIGJhY2suYCxg5LiL5LiA5q2l5piv5a6J5YWo5LuY5qy+6aG177yM5Y2h5Y+35Y+q5Zyo6YKj6YeM5aGr5YaZ44CC5LuY5qy+5oiQ5Yqf5YmN5LiN5Lya5ZyoJHtoZShIKHQpKX3pooTorqLvvJvorqLkuI3miJDkvJrlhajpop3pgIDlm57jgIJgKTp0LnNhbmRib3g/YSgiQSB0ZXN0IGJvb2tpbmc6IG5vdGhpbmcgaXMgaGVsZCBhbmQgbm90aGluZyBpcyBwYWlkLiIsIua1i+ivlemihOiuou+8muS4jeS/neeVmeaIv+mXtO+8jOS5n+S4jeS7mOasvuOAgiIpOnQuYm9va2luZ01vZGU9PT0icGF5LWF0LWhvdGVsIj9hKGBObyBjYXJkIGlzIHRha2VuIGFuZCBub3RoaW5nIGlzIGNoYXJnZWQuIEEgcmVzZXJ2YXRpb24gd2l0aCAke0godCl9LCBwYWlkIGF0IHRoZSBob3RlbC5gLGDkuI3nlKjnu5HljaHvvIzkuZ/kuI3miaPmrL7jgILov5nmmK/lnKgke2hlKEgodCkpfeeahOmihOiuou+8jOWIsOW6l+S7mOasvuOAgmApOnQuZGVtbz9hKGBObyBjYXJkIGlzIHRha2VuIGFuZCBub3RoaW5nIGlzIGNoYXJnZWQuIFRoaXMgaXMgYSBkZW1vbnN0cmF0aW9uOiAke0godCl9IGRvZXMgbm90IHJlY2VpdmUgaXQgYW5kIG5vIHJvb20gaXMgaGVsZC5gLGDkuI3nlKjnu5HljaHvvIzkuZ/kuI3miaPmrL7jgILov5nmmK/mvJTnpLrvvIwke2hlKEgodCkpfeS4jeS8muaUtuWIsO+8jOS5n+S4jeS/neeVmeaIv+mXtOOAgmApOmEoIk5vIGNhcmQgaXMgdGFrZW4gYW5kIG5vdGhpbmcgaXMgY2hhcmdlZC4gWW91IHByZXNlbnQgYSBjYXJkIGF0IGNoZWNrLWluLiIsIuS4jeeUqOe7keWNoe+8jOS5n+S4jeaJo+asvuOAguWFpeS9j+aXtuWcqOWJjeWPsOWHuuekuumTtuihjOWNoeWNs+WPr+OAgiIpKX08L3NwYW4+PC9kaXY+CiAgPC9kaXY+YH0sdnM9ZT0+ej09PSJlbiI/ZS5qb2luKCIgYW5kICIpOmxuKCk/ZS5qb2luKCLjgIEiKTpuZXcgSW50bC5MaXN0Rm9ybWF0KHplW3pdLHt0eXBlOiJjb25qdW5jdGlvbiJ9KS5mb3JtYXQoZSksTW49ZT0+ZS5sZW5ndGg+MT9gJHtlLnNsaWNlKDAsLTEpLmpvaW4oYSgiLCAiLCLjgIEiKSl9JHthKCIgYW5kICIsIuWSjCIpfSR7ZS5hdCgtMSl9YDplWzBdPz8iIixZXz1lPT5bYDxkaXYgY2xhc3M9ImVyciI+JHtsKHo9PT0iZW4iP2BUaGUgYm9va2luZyBuZWVkcyAke01uKGUubWlzc2luZz8/W10pfHwiYSBuYW1lIGFuZCBhbiBlbWFpbCJ9LmA6YSgiVGhlIGJvb2tpbmcgbmVlZHMgYSBuYW1lIGFuZCBhbiBlbWFpbC4iLCLpooTorqLpnIDopoHloavlhpnlp5PlkI3lkozpgq7nrrHjgIIiKSl9PC9kaXY+YCxlaSghMCldLmpvaW4oIiIpLFFfPWU9Pntjb25zdCB0PWUubWVtYmVyPz97fTtyZXR1cm5bYDxkaXYgY2xhc3M9ImNvbmYiPgogICAgICAgPGRpdiBjbGFzcz0ibm90ZSI+JHtsKHQucHJvZ3JhbW1lKX08L2Rpdj4KICAgICAgICR7dC5uYW1lP2A8ZGl2IGNsYXNzPSJ3aGVyZSI+JHtsKHQubmFtZSl9PC9kaXY+YDpgPGRpdiBjbGFzcz0id2hlcmUiPiR7YSgiU2lnbmVkIGluIiwi5bey55m75b2VIil9PC9kaXY+YH0KICAgICAgIDxkaXYgY2xhc3M9ImNvZGUiIHN0eWxlPSJmb250LXNpemU6MjBweCI+JHtsKHQudGllcj8ubmFtZSl9PC9kaXY+CiAgICAgICAke3R5cGVvZiB0LnBvaW50cz09Im51bWJlciI/YDxkaXYgY2xhc3M9IndoZW4iPiR7bChhKGAke3QucG9pbnRzLnRvTG9jYWxlU3RyaW5nKHplW3pdKX0gcG9pbnRzYCxgJHt0LnBvaW50cy50b0xvY2FsZVN0cmluZyh6ZVt6XSl9IOenr+WIhmApKX08L2Rpdj5gOiIifQogICAgIDwvZGl2PmAsYDxkaXYgY2xhc3M9InVucGFpZCI+PGI+JHtsKGEoYCR7TWF0aC5yb3VuZCgodC50aWVyPy5kaXNjb3VudD8/MCkqMTAwKX0lIG9mZmAsYOS8mOaDoCAke01hdGgucm91bmQoKHQudGllcj8uZGlzY291bnQ/PzApKjEwMCl9JWApKX08L2I+PHNwYW4+JHtsKGEoYFJvb20gcmF0ZXMgYW5kIHRyaXAgdG90YWxzIG5vdyBzaG93IHRoZSAke3QudGllcj8ubmFtZX0gbWVtYmVyIHJhdGUuIE5vdGhpbmcgaXMgY2hhcmdlZCBieSBzaWduaW5nIGluLmAsYOaIv+S7t+WSjOihjOeoi+aAu+S7t+W3suaMiSR7dC50aWVyPy5uYW1lfeS8muWRmOS7t+aYvuekuuOAgueZu+W9leS4jeS8muaJo+asvuOAgmApKX08L3NwYW4+PC9kaXY+YCwodC5wcmVmZXJlbmNlcz8/W10pLmxlbmd0aD9gPGRpdiBjbGFzcz0iYXNrZWQiPgogICAgICAgICAgIDxiPiR7YSgiU2F2ZWQgZm9yIHlvdXIgbmV4dCBzdGF5cyIsIuW3suS4uuS4i+asoeWFpeS9j+S/neWtmCIpfTwvYj4KICAgICAgICAgICA8c3Bhbj4ke2woYShgJHt0LnByZWZlcmVuY2VzLm1hcChCcykuam9pbigiLCAiKX0gLSB0aWNrZWQgb24gdGhlIGJvb2tpbmcgZm9ybSwgYW5kIGFza2VkIGZvciBvbmx5IHdoZW4geW91IGJvb2sgd2l0aCB0aGVtLmAsYCR7dC5wcmVmZXJlbmNlcy5tYXAoQnMpLmpvaW4oIuOAgSIpfe+8jOmihOiuouaXtuS8muiHquWKqOWLvumAie+8jOWPquWcqOS9oOeUqOWug+S7rOmihOiuouaXtuaJjeaPkOWHuuOAgmApKX08L3NwYW4+CiAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibGlua3kiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImZvcmdldC1wcmVmcyI+JHthKCJGb3JnZXQgdGhlbSIsIua4hemZpOi/meS6m+WBj+WlvSIpfTwvYnV0dG9uPgogICAgICAgICA8L2Rpdj5gOiIiLGA8ZGl2IGNsYXNzPSJmb290Ij4KICAgICAgIDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJob21lIj4ke2EoIkZpbmQgYSBob3RlbCIsIuaJvumFkuW6lyIpfTwvYnV0dG9uPgogICAgICAgPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InNpZ24tb3V0Ij4ke2EoIlNpZ24gb3V0Iiwi6YCA5Ye655m75b2VIil9PC9idXR0b24+CiAgICAgPC9kaXY+YF0uam9pbigiIil9LFhfPSgpPT5bYDxkaXYgY2xhc3M9ImVyciI+JHthKCJObyBtZW1iZXJzaGlwIG1hdGNoZXMgdGhhdCBudW1iZXIgYW5kIHN1cm5hbWUuIENoZWNrIGJvdGggYXMgdGhleSBhcmUgcHJpbnRlZCDigJQgbm90aGluZyBlbHNlIGlzIG5lZWRlZCwgdGhpcyBjb25uZWN0b3IgbmV2ZXIgYXNrcyBmb3IgYSBwYXNzd29yZC4iLCLkvJrlkZjlj7flkozlp5PmsI/lr7nkuI3kuIrjgILor7fmjInljaHkuIrljbDnmoTmoLjlr7nkuKTpobnljbPlj6/vvIzov5nph4zku47kuI3opoHmsYLlr4bnoIHjgIIiKX08L2Rpdj5gLEhzKCEwKV0uam9pbigiIiksSHM9KGU9ITEpPT5gCiAgPGRpdiBjbGFzcz0iZm9ybSIgaWQ9InNpZ25pbiIke2U/IiI6IiBoaWRkZW4ifT4KICAgIDxkaXYgY2xhc3M9InR3byI+CiAgICAgIDxsYWJlbD4ke2EoIk1lbWJlcnNoaXAgbnVtYmVyIiwi5Lya5ZGY5Y+3Iil9PGlucHV0IGlkPSJtbnVtIiB0eXBlPSJ0ZXh0IiBhdXRvY29tcGxldGU9Im9mZiIgcGxhY2Vob2xkZXI9IiR7YSgiQXMgaXQgaXMgcHJpbnRlZCIsIuaMieWNoeS4iuWNsOeahOWhq+WGmSIpfSI+PC9sYWJlbD4KICAgICAgPGxhYmVsPiR7YSgiU3VybmFtZSIsIuWnk+awjyIpfTxpbnB1dCBpZD0ibXN1ciIgdHlwZT0idGV4dCIgYXV0b2NvbXBsZXRlPSJvZmYiIHBsYWNlaG9sZGVyPSIke2EoIlRoZSBzdXJuYW1lIG9uIGl0Iiwi5Y2h5LiK55qE5aeT5rCPIil9Ij48L2xhYmVsPgogICAgPC9kaXY+CiAgICA8YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0ic2lnbi1pbiI+JHthKCJTaWduIGluIiwi55m75b2VIil9PC9idXR0b24+CiAgICA8ZGl2IGNsYXNzPSJub3RlIj4ke2EoIk5vIHBhc3N3b3JkIGlzIGFza2VkIGZvciBhbmQgbm9uZSBpcyBzdG9yZWQuIFNpZ25pbmcgaW4gc2hvd3MgdGhlIG1lbWJlciByYXRlOyBub3RoaW5nIGlzIGNoYXJnZWQuIiwi5LiN6ZyA6KaB5a+G56CB77yM5Lmf5LiN5Lya5L+d5a2Y5Lu75L2V5a+G56CB44CC55m75b2V5ZCO5pi+56S65Lya5ZGY5Lu377yM5LiN5Lya5omj5qy+44CCIil9PC9kaXY+CiAgPC9kaXY+YCxlaj1lPT57Y29uc3QgdD1lLnJlcXVlc3RlZD8/W107cmV0dXJuIHQubGVuZ3RoP2A8ZGl2IGNsYXNzPSJhc2tlZCR7ZS5hY2Nlc3NpYmlsaXR5PyIgZmxhZyI6IiJ9Ij4KICAgIDxiPiR7YSgiUmVxdWVzdGVkLCBub3QgaGVsZCIsIuW3suaPkOWHuueahOmcgOaxgu+8iOS4jeS9nOS/neivge+8iSIpfTwvYj4KICAgICR7dC5tYXAobj0+YDxzcGFuPiR7bChuKX08L3NwYW4+YCkuam9pbigiIil9CiAgPC9kaXY+YDoiIn0sQmQ9ZT0+ZS5ob2xkVW50aWxMb2NhbD9hKGAke0R0KGUuaG9sZFVudGlsTG9jYWwsZS5ob2xkVW50aWxMb2NhbElzbyl9IChob3RlbCB0aW1lKWAsYCR7RHQoZS5ob2xkVW50aWxMb2NhbCxlLmhvbGRVbnRpbExvY2FsSXNvKX3vvIjphZLlupflvZPlnLDml7bpl7TvvIlgKTpgJHtTdHJpbmcoZS5ob2xkVW50aWw/PyIiKS5zbGljZSgwLDE2KS5yZXBsYWNlKCJUIiwiICIpfSBVVENgLHRqPShlLHQpPT57Y29uc3Qgbj10LnBheW1lbnQ/P3t9LHtuYW1lOm8sc2FuZGJveDpzfT1LZSh0LnN1cHBsaWVyKSxyPW4ucGF5QnlMb2NhbD9EdChuLnBheUJ5TG9jYWwsbi5wYXlCeUxvY2FsSXNvKToiIjtyZXR1cm5bYDxkaXYgY2xhc3M9ImJvb2tlZCBwYXkiIHJvbGU9InN0YXR1cyI+CiAgICAgICA8ZGl2IGNsYXNzPSJib29rZWQtbWFyayBwYXkiPiR7SS5sb2NrfTwvZGl2PgogICAgICAgPGgyIGNsYXNzPSJib29rZWQtdCI+JHthKCJQYXkgdG8gZmluaXNoIGJvb2tpbmciLCLku5jmrL7lkI7lrozmiJDpooTorqIiKX08L2gyPgogICAgICAgPHAgY2xhc3M9ImJvb2tlZC1zIj4ke2woYShgTm90aGluZyBpcyBib29rZWQgeWV0LiBPbmNlIHRoZSBwYXltZW50IGdvZXMgdGhyb3VnaCwgdGhlIHJvb20gaXMgYm9va2VkIHdpdGggJHtvfS5gLGDnjrDlnKjov5jmsqHmnInpooTorqLjgILku5jmrL7miJDlip/lkI7vvIzmiL/pl7TmiY3kvJrlnKgke2hlKG8pfeiuouWlveOAgmApKX08L3A+CiAgICAgPC9kaXY+YCxgPGRpdiBjbGFzcz0icGF5Ym94Ij4KICAgICAgIDxkaXYgY2xhc3M9IndsIj4ke2EoIlRvIHBheSBub3ciLCLpnIDku5jmrL4iKX08L2Rpdj4KICAgICAgIDxkaXYgY2xhc3M9InBheS1hbW91bnQiPiR7bChuLmFtb3VudD8/IiIpfTwvZGl2PgogICAgICAgJHtuLnBheUJ5P2A8ZGl2IGNsYXNzPSJwYXktYnkiPiR7SS5jbG9ja308c3Bhbj4ke2wocj9hKGBQYXkgYnkgJHtyfWAsYOivt+WcqCAke3J9IOWJjeS7mOasvmApOmEoIlBheSB3aXRoaW4iLCLliankvZnml7bpl7QiKSl9PGJyPjxiIGNsYXNzPSJjb3VudGRvd24gbmIiIGRhdGEtdW50aWw9IiR7bChuLnBheUJ5KX0iPiR7bCgkYihTdHJpbmcobi5wYXlCeSkpKX08L2I+PC9zcGFuPjwvZGl2PmA6IiJ9CiAgICAgICAke24udXJsP2A8YnV0dG9uIGNsYXNzPSJnbyBiaWcgYmxvY2siIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InBheSIgZGF0YS11cmw9IiR7bChuLnVybCl9IiBkYXRhLWNvZGU9IiR7bCh0LmNvbmZpcm1hdGlvbkNvZGUpfSIgZGF0YS11bnRpbD0iJHtsKG4ucGF5Qnk/PyIiKX0iPiR7SS5sb2NrfSR7bChhKGBQYXkgJHtuLmFtb3VudD8/IiJ9IG9uIHRoZSBzZWN1cmUgcGFnZWAsYOWOu+WuieWFqOmhtemdouS7mOasviAke24uYW1vdW50Pz8iIn1gKSl9PC9idXR0b24+YDoiIn0KICAgICAgIDxidXR0b24gY2xhc3M9Imxpbmt5IHBheS1jaGVjayIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0icGF5LWNoZWNrIiBkYXRhLWNvZGU9IiR7bCh0LmNvbmZpcm1hdGlvbkNvZGUpfSI+JHthKCJQYWlkIGFscmVhZHk/IENoZWNrIG5vdyIsIuW3sue7j+S7mOi/h+S6hu+8n+eOsOWcqOWIt+aWsCIpfTwvYnV0dG9uPgogICAgICAgPGRpdiBjbGFzcz0idHJ1c3QiPiR7SS5sb2NrfTxzcGFuPiR7bChzP2EoIlRlc3QgbW9kZTogbm8gcmVhbCBtb25leSBtb3ZlcyAtIHVzZSBhIHRlc3QgY2FyZCBvbiB0aGUgcGF5bWVudCBwYWdlLiBDYXJkIGRldGFpbHMgYXJlIHR5cGVkIG9ubHkgdGhlcmUsIG5ldmVyIGhlcmUuIiwi5rWL6K+V5qih5byP77ya5LiN5Lya55yf5a6e5omj5qy+77yM6K+35Zyo5LuY5qy+6aG155So5rWL6K+V5Y2h44CC5Y2h5Y+35Y+q5Zyo5LuY5qy+6aG15aGr5YaZ77yM6L+Z6YeM5LiN5pS26ZuG44CCIik6YSgiQ2FyZCBkZXRhaWxzIGFyZSB0eXBlZCBvbmx5IG9uIHRoZSBwYXltZW50IHBhZ2UsIG5ldmVyIGhlcmUuIElmIHRoZSBob3RlbCBkb2VzIG5vdCBjb25maXJtLCBhbGwgb2YgaXQgZ29lcyBiYWNrLiIsIuWNoeWPt+WPquWcqOS7mOasvumhteWhq+WGme+8jOi/memHjOS4jeaUtumbhuOAguWmguaenOmFkuW6l+ayoeacieehruiupO+8jOasvumhueS8muWFqOminemAgOWbnuOAgiIpKX08L3NwYW4+PC9kaXY+CiAgICAgPC9kaXY+YCxgPGRpdiBjbGFzcz0icGF5LWZvciI+CiAgICAgICA8ZGl2IGNsYXNzPSJ3aGVyZSI+JHtqdCh0LmhvdGVsTmFtZSx0LmhvdGVsTmFtZXMpfTwvZGl2PgogICAgICAgJHtnYSh0LnN0YXksdC5ob3VybHkpfQogICAgICAgPGRpdiBjbGFzcz0icm93cyI+JHsodC5xdW90ZT8ubGluZXM/P1tdKS5tYXAoX2IpLmpvaW4oIiIpfTwvZGl2PgogICAgICAgPGRpdiBjbGFzcz0ibm90ZSI+JHtsKGEoYFJlZmVyZW5jZSAke3QuY29uZmlybWF0aW9uQ29kZX0gwrcgZm9yICR7W3QuZ3Vlc3Q/Lm5hbWUsdC5ndWVzdD8uZW1haWxdLmZpbHRlcihCb29sZWFuKS5qb2luKCIsICIpfWAsYOe8luWPtyAke3QuY29uZmlybWF0aW9uQ29kZX0gwrcgJHtbdC5ndWVzdD8ubmFtZSx0Lmd1ZXN0Py5lbWFpbF0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIu+8jCIpfWApKX08L2Rpdj4KICAgICA8L2Rpdj5gXS5qb2luKCIiKX0sbmo9ZT0+W2U/Lm5hbWUsZT8uZW1haWxdLmZpbHRlcihCb29sZWFuKS5tYXAodD0+YDxzcGFuIGNsYXNzPSJuYiI+JHtsKHQpfTwvc3Bhbj5gKS5qb2luKCc8c3BhbiBhcmlhLWhpZGRlbj0idHJ1ZSI+IMK3IDwvc3Bhbj4nKSwkYj1lPT57Y29uc3QgdD1NYXRoLm1heCgwLERhdGUucGFyc2UoZSktRGF0ZS5ub3coKSk7aWYoIXQpcmV0dXJuIGEoInRpbWUgaXMgdXAiLCLlt7LotoXml7YiKTtjb25zdCBuPWM9PlN0cmluZyhjKS5wYWRTdGFydCgyLCIwIiksbz1NYXRoLmZsb29yKHQvMzZlNSkscz1NYXRoLmZsb29yKHQlMzZlNS82ZTQpLHI9TWF0aC5mbG9vcih0JTZlNC8xZTMpLGk9bz9gJHtvfToke24ocyl9OiR7bihyKX1gOmAke3N9OiR7bihyKX1gO3JldHVybiBhKGAke2l9IGxlZnRgLGDov5jliakgJHtpfWApfTtzZXRJbnRlcnZhbCgoKT0+e2Zvcihjb25zdCBlIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5jb3VudGRvd25bZGF0YS11bnRpbF0iKSllLnRleHRDb250ZW50PSRiKGUuZGF0YXNldC51bnRpbD8/IiIpfSwxZTMpO2xldCBOZT1udWxsO2NvbnN0IHRpPThlMyxadT0oKT0+e05lPy50aW1lciYmY2xlYXJUaW1lb3V0KE5lLnRpbWVyKSxOZT1udWxsfSxvaj1lPT50PT57Y29uc3Qgbj0odD8uYm9va2luZ3M/P1tdKS5maW5kKG89PlN0cmluZyhvLmNvbmZpcm1hdGlvbkNvZGUpLnRvVXBwZXJDYXNlKCk9PT1lLnRvVXBwZXJDYXNlKCkpO3JldHVybiFufHwhWyJhd2FpdGluZy1wYXltZW50IiwicmVxdWVzdGVkIiwiY29uZmlybWVkIl0uaW5jbHVkZXMoU3RyaW5nKG4uc3RhdHVzKSk/dDp7Li4udCx2aWV3OiJib29raW5nIixib29raW5nOm4sYm9va2luZ3M6dm9pZCAwLHRvdGFsOm4ucXVvdGU/LnRvdGFsfX0sd2I9ZT0+e1p1KCksWigibGlzdEJvb2tpbmdzIixwdChlKSx7cHVzaDohMSxmb2xkOm9qKGUpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGNoZWNrIHRoZSBwYXltZW50IGp1c3Qgbm93LiIsIuaaguaXtuayoeiDveafpeWIsOS7mOasvueKtuaAgeOAgiIpKSl9LEhkPWU9PiEhZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgI2NvbnRlbnQgW2RhdGEtYWN0PSJwYXkiXVtkYXRhLWNvZGU9IiR7Q1NTLmVzY2FwZShlKX0iXWApLHF1PWU9Pntjb25zdCB0PU1nKCJsaXN0Qm9va2luZ3MiKTtpZighdHx8IU5lfHxOZS5jb2RlIT09ZSlyZXR1cm47aWYoIUhkKGUpfHxEYXRlLm5vdygpPk5lLnVudGlsKzZlNCl7WnUoKTtyZXR1cm59Y29uc3Qgbj1vPT57TmU/LmNvZGU9PT1lJiYoTmUudGltZXI9c2V0VGltZW91dCgoKT0+cXUoZSksbykpfTtJZS5jYWxsU2VydmVyVG9vbCh7bmFtZTp0LGFyZ3VtZW50czpSZyhwdChlKSl9KS50aGVuKG89Pntjb25zdCBzPShvPy5zdHJ1Y3R1cmVkQ29udGVudD8uYm9va2luZ3M/P1tdKS5maW5kKHI9PlN0cmluZyhyLmNvbmZpcm1hdGlvbkNvZGUpLnRvVXBwZXJDYXNlKCk9PT1lLnRvVXBwZXJDYXNlKCkpO3MmJnMuc3RhdHVzIT09ImF3YWl0aW5nLXBheW1lbnQiJiZIZChlKT93YihlKTpuKHRpKX0pLmNhdGNoKCgpPT5uKHRpKjIpKX0sU2I9KCk9PntOZSYmZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlIT09ImhpZGRlbiImJihOZS50aW1lciYmY2xlYXJUaW1lb3V0KE5lLnRpbWVyKSxxdShOZS5jb2RlKSl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInZpc2liaWxpdHljaGFuZ2UiLFNiKTt3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZm9jdXMiLFNiKTtjb25zdCBGZD1lPT5lLmxlbmd0aD9gPHNlY3Rpb24gY2xhc3M9ImZhaWxlZCIgYXJpYS1sYWJlbD0iJHtsKGEoIk5vdCBib29rZWQiLCLmnKrorqLmiJAiKSl9Ij4KICAgICAgICAgPGgzIGNsYXNzPSJzZWMiPiR7bChhKGBOb3QgYm9va2VkICgke2UubGVuZ3RofSlgLGDmnKrorqLmiJDvvIgke2UubGVuZ3Rofe+8iWApKX08L2gzPgogICAgICAgICAke2UubWFwKCh0LG4pPT57Y29uc3Qgbz1BcnJheS5pc0FycmF5KHQuYWx0ZXJuYXRpdmVzKT90LmFsdGVybmF0aXZlczpbXTtyZXR1cm5gPGRpdiBjbGFzcz0iZmFpbCI+CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhaWwtaCI+JHtJLmVycm9yfTxkaXY+PGRpdiBjbGFzcz0id2hlcmUiPiR7anQoU3RyaW5nKHQuaG90ZWxOYW1lPz8iIiksdC5ob3RlbE5hbWVzKX08L2Rpdj4ke2dhKHQuc3RheSx0LmhvdXJseSl9PC9kaXY+PC9kaXY+CiAgICAgICAgICAgICAgIDxwIGNsYXNzPSJmYWlsLXdoeSI+JHtsKExzKHQud2h5LHQuY29kZSx0LmFyZ3MpKX08L3A+CiAgICAgICAgICAgICAgICR7by5sZW5ndGg/YDxkaXYgY2xhc3M9ImZhaWwtYWx0cyI+PGRpdiBjbGFzcz0ibm90ZSI+JHtsKGEoIkJvb2thYmxlIGluc3RlYWQsIHRoZSBzYW1lIG5pZ2h0cyIsIuWQjOaXpeacn+i/mOWPr+S7peiuoiIpKX08L2Rpdj4ke28ubWFwKChzLHIpPT5gPGRpdiBjbGFzcz0iYWx0Ij48ZGl2IGNsYXNzPSJhbHQtdCI+PGI+JHtsKHMubmFtZSl9PC9iPjxzbWFsbD4ke2woW3Mucm9vbSxzLnRvdGFsP2EoYCR7cy50b3RhbH0gZm9yIHRoZSBzdGF5YCxg5YWxICR7cy50b3RhbH1gKToiIl0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiDCtyAiKSl9PC9zbWFsbD48L2Rpdj48YnV0dG9uIGNsYXNzPSJnbyBzbSIgdHlwZT0iYnV0dG9uIiBkYXRhLXN3YXA9IiR7bn06JHtyfSI+JHtsKGEoIlRha2UgdGhpcyBpbnN0ZWFkIiwi5o2i5oiQ6L+Z5a62IikpfTwvYnV0dG9uPjwvZGl2PmApLmpvaW4oIiIpfTwvZGl2PmA6IiJ9CiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImZhaWwtZm9vdCI+PGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQgc20iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InJldHJ5LXRyaXAiPiR7bChhKCJUcnkgYWdhaW4iLCLph43or5UiKSl9PC9idXR0b24+JHt0LmNpdHk/YDxidXR0b24gY2xhc3M9Imxpbmt5IiB0eXBlPSJidXR0b24iIGRhdGEtcmVzZWFyY2g9IiR7bn0iPiR7bChhKCJGaW5kIGFub3RoZXIgaG90ZWwiLCLmjaLkuIDlrrYiKSl9PC9idXR0b24+YDoiIn08L2Rpdj4KICAgICAgICAgICAgIDwvZGl2PmB9KS5qb2luKCIiKX0KICAgICAgIDwvc2VjdGlvbj5gOiIiLFVkPSgpPT57aWYoQ2UpcmV0dXJuO2NvbnN0IGU9eD8/e30sdD1BcnJheS5pc0FycmF5KGUuYm9va2luZ3MpJiZlLmJvb2tpbmdzWzBdPy5ndWVzdHx8ZS5ib29raW5nPy5ndWVzdDshdD8ubmFtZXx8IXQ/LmVtYWlsfHwoQ2U9e25hbWU6U3RyaW5nKHQubmFtZSksZW1haWw6U3RyaW5nKHQuZW1haWwpLC4uLnQucGhvbmU/e3Bob25lOlN0cmluZyh0LnBob25lKX06e30sbm90ZXM6IiIsYXJyaXZpbmdBdDoiIixyZXF1ZXN0czpbXSxyZW1lbWJlcjohMX0pfSxzaj1lPT57Y29uc3QgdD1BcnJheS5pc0FycmF5KGUuZmFpbGVkKT9lLmZhaWxlZDpbXTtpZighZS5ib29raW5nJiYhKEFycmF5LmlzQXJyYXkoZS5ib29raW5ncykmJmUuYm9va2luZ3MubGVuZ3RoKSYmdC5sZW5ndGgpcmV0dXJuW2A8ZGl2IGNsYXNzPSJib29rZWQgZW5kZWQiIHJvbGU9InN0YXR1cyI+CiAgICAgICAgIDxkaXYgY2xhc3M9ImJvb2tlZC1tYXJrIj4ke0kuZXJyb3J9PC9kaXY+CiAgICAgICAgIDxoMiBjbGFzcz0iYm9va2VkLXQiPiR7bChhKCJOb3QgYm9va2VkIiwi5rKh6IO96aKE6K6iIikpfTwvaDI+CiAgICAgICAgIDxwIGNsYXNzPSJib29rZWQtcyI+JHtsKHQubGVuZ3RoPT09MT9hKCJUaGF0IHN0YXkgY291bGQgbm90IGJlIGJvb2tlZC4gTm90aGluZyB3YXMgY2hhcmdlZC4iLCLov5nkuIDmrrXmsqHog73pooTorqLvvIzmsqHmnInmiaPmrL7jgIIiKTphKGBOb25lIG9mIHRoZSAke3QubGVuZ3RofSBzdGF5cyBjb3VsZCBiZSBib29rZWQuIE5vdGhpbmcgd2FzIGNoYXJnZWQuYCxgJHt0Lmxlbmd0aH0g5q616YO95rKh6IO96aKE6K6i77yM5rKh5pyJ5omj5qy+44CCYCkpfTwvcD4KICAgICAgIDwvZGl2PmAsRmQodCldLmpvaW4oIiIpO2NvbnN0IG49QXJyYXkuaXNBcnJheShlLmJvb2tpbmdzKSYmZS5ib29raW5ncy5sZW5ndGg/ZS5ib29raW5nczpbZS5ib29raW5nPz97fV0sbz1uLmZpbmQoUD0+UD8uc3RhdHVzPT09ImF3YWl0aW5nLXBheW1lbnQiJiZQPy5wYXltZW50KTtpZihvJiZuLmxlbmd0aD09PTEpcmV0dXJuIHRqKGUsbyk7Y29uc3Qgcz1uLmxlbmd0aD4xLHI9bi5maWx0ZXIoUD0+UD8ucGVuZGluZykubGVuZ3RoLHtuYW1lOmksYm9va2luZ01vZGU6YyxkZW1vOmgsc2FuZGJveDpkLC4uLnV9PUtlKG5bMF0/LnN1cHBsaWVyKSxwPVA9PldTKFApJiYoUD09PSJsaXN0RXh0cmFzIj91LmV4dHJhczpQPT09ImNoYW5nZUJvb2tpbmciP3UuY2hhbmdlczohMCksbT1QPT5jPT09ImhvbGQiJiYhaCYmKFAuaG9sZFVudGlsTG9jYWx8fFAuaG9sZFVudGlsKT9gPGRpdiBjbGFzcz0icmVtaW5kIj4ke0kuY2xvY2t9PHNwYW4+JHtsKGEoYFRoZSByb29tIGlzIGhlbGQgZm9yIHlvdSB1bnRpbCAke0JkKFApfS5gLGDmiL/pl7TkuLrkvaDkv53nlZnliLAgJHtCZChQKX3jgIJgKSl9PC9zcGFuPjwvZGl2PmA6IiIseT0oUCx0dCxBdCk9PihiYT0hIVAucXVvdGU/LnRheGVzQW5kRmVlcyYmUC5xdW90ZS50YXhlc0FuZEZlZXMhPT0iSW5jbHVkZWQiLFtQLnBlbmRpbmc/YDxkaXYgY2xhc3M9ImNvbmYgdGlja2V0Ij4KICAgICAgICAgPGRpdiBjbGFzcz0ibm90ZSI+JHthKCJCZWluZyBjb25maXJtZWQiLCLnoa7orqTkuK0iKX08L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29kZSBwZW5kaW5nIj4ke2EoIkNvZGUgb25jZSBjb25maXJtZWQiLCLnoa7orqTlkI7nu5nlh7rnoa7orqTnoIEiKX08L2Rpdj5gOmA8ZGl2IGNsYXNzPSJjb25mIHRpY2tldCI+CiAgICAgICAgIDxkaXYgY2xhc3M9Im5vdGUiPiR7YSgiQ29uZmlybWF0aW9uIGNvZGUiLCLnoa7orqTnoIEiKX08L2Rpdj4KICAgICAgICAgPGRpdiBjbGFzcz0iY29kZSI+JHtsKFAuY29uZmlybWF0aW9uQ29kZSl9PC9kaXY+YCxgCiAgICAgICAgIDxkaXYgY2xhc3M9IndoZXJlIj4ke2p0KFAuaG90ZWxOYW1lLFAuaG90ZWxOYW1lcyl9PC9kaXY+CiAgICAgICAgICR7Z2EoUC5zdGF5LFAuaG91cmx5KX0KICAgICAgICAgPGRpdiBjbGFzcz0id2hlbiI+JHtuaihQLmd1ZXN0KX08L2Rpdj4KICAgICAgIDwvZGl2PmAsbShQKSxjPT09InBheS1hdC1ob3RlbCImJlAuc3RhdHVzPT09InJlcXVlc3RlZCI/YDxkaXYgY2xhc3M9InJlbWluZCI+JHtJLmNsb2NrfTxzcGFuPiR7bChhKGBXYWl0aW5nIGZvciAke2l9IHRvIGNvbmZpcm0gdGhpcyBib29raW5nIOKAlCB0aGF0IHRha2VzIHVwIHRvIGVpZ2h0IG1pbnV0ZXMuIE15IGJvb2tpbmdzIHNob3dzIHdoZW4gaXQgaGFzLmAsYOato+WcqOetiSR7aGUoaSl956Gu6K6k6L+Z56yU6aKE6K6i77yM5pyA5aSa57qm5YWr5YiG6ZKf44CC56Gu6K6k5ZCO5Y+v5Zyo4oCc5oiR55qE6aKE6K6i4oCd6YeM55yL5Yiw44CCYCkpfTwvc3Bhbj48L2Rpdj5gOiIiLGA8ZGl2IGNsYXNzPSJyb3dzIj4keyhQLnF1b3RlPy5saW5lcz8/W10pLm1hcChfYikuam9pbigiIil9PC9kaXY+YCxQLnF1b3RlPy5zdWJ0b3RhbCYmUC5xdW90ZT8udGF4ZXNBbmRGZWVzP1FhKHtzdWJ0b3RhbDpQLnF1b3RlLnN1YnRvdGFsLHRheGVzQW5kRmVlczpQLnF1b3RlLnRheGVzQW5kRmVlcyx0b3RhbDp0dCxsaW5lczpQLnF1b3RlLmxpbmVzPz9bXX0sYSgiVG90YWwiLCLmgLvku7ciKSk6YDxkaXYgY2xhc3M9Im1vbmV5LW91dCI+PHNwYW4+JHthKCJUb3RhbCIsIuaAu+S7tyIpfTwvc3Bhbj48c3Bhbj4ke2wodHQpfTwvc3Bhbj48L2Rpdj5gLGVqKEF0KSxzP2A8ZGl2IGNsYXNzPSJmb290Ij4KICAgICAgICAgICAgICR7cCgibGlzdEV4dHJhcyIpP2A8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWJvb2tpbmctZXh0cmFzPSIke2woUC5jb25maXJtYXRpb25Db2RlKX0iPiR7YSgiQWRkLW9ucyIsIumZhOWKoOacjeWKoSIpfTwvYnV0dG9uPmA6IiJ9CiAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWNhbmNlbD0iJHtsKFAuY29uZmlybWF0aW9uQ29kZSl9Ij4ke2woYShgQ2FuY2VsICR7b3QoUCl9YCxg5Y+W5raIJHtvdChQKX1gKSl9PC9idXR0b24+CiAgICAgICAgICAgPC9kaXY+YDoiIl0uam9pbigiIikpLCQ9Yz09PSJwYXktYXQtaG90ZWwiJiZuLnNvbWUoUD0+UC5zdGF0dXM9PT0icmVxdWVzdGVkIiksUz1zPyIiOm5bMF0/LnBheW1lbnQ/LnN0YXR1cz09PSJwYWlkIj9TdHJpbmcoblswXS5wYXltZW50LmFtb3VudD8/IiIpOiIiLE49IXMmJm5bMF0/LnBheW1lbnQ/LnN0YXR1cz09PSJwYWlkIixFPU4/blswXT8uc3RhdHVzPT09ImNvbmZpcm1lZCI/ZD9hKCJUZXN0IGJvb2tpbmcgcGFpZCBhbmQgYm9va2VkIiwi5rWL6K+V6aKE6K6i5bey5LuY5qy+5bm26K6i5aW9Iik6YShgUGFpZCBhbmQgYm9va2VkIHdpdGggJHtpfWAsYOW3suS7mOasvu+8jCR7aGUoaSl95bey56Gu6K6kYCk6YShgUGFpZCDigJQgd2FpdGluZyBmb3IgJHtpfSB0byBjb25maXJtYCxg5bey5LuY5qy+77yM562J5b6FJHtoZShpKX3noa7orqRgKTpkP2EoIlRlc3QgYm9va2luZyBtYWRlIiwi5rWL6K+V6aKE6K6i5bey5o+Q5LqkIik6Yz09PSJwYXktYXQtaG90ZWwiPyQ/YShgU2VudCB0byAke2l9YCxg5bey5o+Q5Lqk57uZJHtoZShpKX1gKTphKGBCb29rZWQgd2l0aCAke2l9YCxg5bey5ZyoJHtoZShpKX3pooTorqLmiJDlip9gKTpoP2EoIkRlbW8gYm9va2luZyBtYWRlIiwi5ryU56S66aKE6K6i5bey5o+Q5LqkIik6YShzPyJSb29tcyBoZWxkIjoiUm9vbSBoZWxkIiwi5oi/6Ze05bey5L+d55WZIiksVD1TdHJpbmcoblswXT8uc3RhdHVzPz8iIiksQT0hcyYmWyJjYW5jZWxsZWQiLCJleHBpcmVkIiwiZmFpbGVkIl0uaW5jbHVkZXMoVCksUT0hcyYmKFQ9PT0idW5jb25maXJtZWQifHxUPT09InJlcXVlc3RlZCImJmM9PT0icGF5LWF0LWhvdGVsIiksWD0hIWUub3BlbmVkJiYhcyxKPVg/QT9hKEhuW1RdPy5bMF0/PyJFbmRlZCIsSG5bVF0/LlsxXT8/IuW3sue7k+adnyIpOk4/RTpRP2EoIldhaXRpbmcgZm9yIGNvbmZpcm1hdGlvbiIsIuetieW+heehruiupCIpOlQ9PT0icmVxdWVzdGVkIj9oP2EoIkRlbW8gYm9va2luZyIsIua8lOekuumihOiuoiIpOmEoIlJvb20gaGVsZCIsIuaIv+mXtOW3suS/neeVmSIpOmQ/YSgiVGVzdCBib29raW5nIGNvbmZpcm1lZCIsIua1i+ivlemihOiuouW3suehruiupCIpOmEoIkJvb2tpbmcgY29uZmlybWVkIiwi6aKE6K6i5bey56Gu6K6kIik6RTtyZXR1cm5bYDxkaXYgY2xhc3M9ImJvb2tlZCR7WCYmQT8iIGVuZGVkIjpYJiZRPyIgd2FpdGluZyI6IiJ9IiByb2xlPSJzdGF0dXMiPgogICAgICAgPGRpdiBjbGFzcz0iYm9va2VkLW1hcmsiPiR7WCYmQT9JLmVycm9yOlgmJlE/SS5jbG9jazpJLmRvbmV9PC9kaXY+CiAgICAgICA8aDIgY2xhc3M9ImJvb2tlZC10Ij4ke2woSil9PC9oMj4KICAgICAgIDxwIGNsYXNzPSJib29rZWQtcyI+JHtsKFgmJkE/YSgiVGhpcyBib29raW5nIG5vIGxvbmdlciBob2xkcyBhIHJvb20uIiwi6L+Z56yU6aKE6K6i5bey5LiN5YaN5Y2g55So5oi/6Ze044CCIik6dC5sZW5ndGh8fHMmJnI/YShgJHtuLmxlbmd0aC1yfSBvZiAke24ubGVuZ3RoK3QubGVuZ3RofSBzdGF5cyBib29rZWQsIG9uZSBjb2RlIGVhY2hgLGAke24ubGVuZ3RoK3QubGVuZ3RofSDmrrXph4zorqLmiJAgJHtuLmxlbmd0aC1yfSDmrrXvvIzmr4/mrrXkuIDkuKrnoa7orqTnoIFgKSsocj9hKGAsICR7cn0gYmVpbmcgY29uZmlybWVkYCxg77yMJHtyfSDmrrXnoa7orqTkuK1gKToiIikrKHQubGVuZ3RoPT09MT9hKCIgLSBvbmUgY291bGQgbm90IGJlLCBiZWxvdyIsIu+8m+WPpuaciSAxIOauteayoeiuouaIkO+8jOingeS4i+aWuSIpOnQubGVuZ3RoP2EoYCAtICR7dC5sZW5ndGh9IGNvdWxkIG5vdCBiZSwgYmVsb3dgLGDvvJvlj6bmnIkgJHt0Lmxlbmd0aH0g5q615rKh6K6i5oiQ77yM6KeB5LiL5pa5YCk6IiIpK2EoIi4iLCLjgIIiKTpzP2EoYCR7bi5sZW5ndGh9IGNvbmZpcm1hdGlvbiBjb2Rlcywgb25lIGZvciBlYWNoIGhvdGVsLmAsYOWFsSAke24ubGVuZ3RofSDkuKrnoa7orqTnoIHvvIzmr4/lrrbphZLlupfkuIDkuKrjgIJgKTphKCJLZWVwIHRoaXMgY29kZTogd2l0aCBpdCBhbmQgeW91ciBlbWFpbCwgeW91IGNhbiBmaW5kIHRoaXMgYm9va2luZyBhZ2FpbiBmcm9tIGFueSBjaGF0LiIsIuivt+S/neWtmOi/meS4quehruiupOeggeOAguWHreWug+WSjOS9oOeahOmCrueuse+8jOWcqOS7u+S9leWvueivnemHjOmDveiDveaJvuWbnui/meeslOmihOiuouOAgiIpKX08L3A+CiAgICAgPC9kaXY+YCwuLi5uLm1hcChQPT5zP3koUCxTdHJpbmcoUC50b3RhbD8/IiIpLFApOnkoUCxTdHJpbmcoZS50b3RhbD8/IiIpLGUpKSxGZCh0KSxzP2A8ZGl2IGNsYXNzPSJub3RlIj4ke2wocCgiY2hhbmdlQm9va2luZyIpP2EoYCR7bi5sZW5ndGh9IGJvb2tpbmdzLCBvbmUgZm9yIGVhY2ggc3RheS4gRWFjaCBob3RlbCBrZWVwcyBpdHMgb3duIG5pZ2h0cyB1bmRlciBpdHMgb3duIGNvZGUsIGFuZCBlYWNoIGlzIGNoYW5nZWQgb3IgY2FuY2VsbGVkIG9uIGl0cyBvd24uYCxg5YWxICR7bi5sZW5ndGh9IOeslOmihOiuou+8jOavj+auteS9j+Wuv+S4gOeslO+8jOWQhOacieiHquW3seeahOehruiupOegge+8jOS/ruaUueaIluWPlua2iOmDveimgeWIhuWIq+i/m+ihjOOAgmApOmEoYCR7bi5sZW5ndGh9IGJvb2tpbmdzLCBvbmUgZm9yIGVhY2ggc3RheS4gRWFjaCBob3RlbCBrZWVwcyBpdHMgb3duIG5pZ2h0cyB1bmRlciBpdHMgb3duIGNvZGUsIGFuZCBlYWNoIGlzIGNhbmNlbGxlZCBvbiBpdHMgb3duLmAsYOWFsSAke24ubGVuZ3RofSDnrJTpooTorqLvvIzmr4/mrrXkvY/lrr/kuIDnrJTvvIzlkITmnInoh6rlt7HnmoTnoa7orqTnoIHvvIzlj5bmtojpg73opoHliIbliKvov5vooYzjgIJgKSl9PC9kaXY+YDoiIixTP2A8ZGl2IGNsYXNzPSJ1bnBhaWQgcGFpZCI+CiAgICAgICA8Yj4ke2woYShgUGFpZCBpbiBhZHZhbmNlOiAke1N9LmAsYOW3sumihOS7mCAke1N944CCYCkpfTwvYj4KICAgICAgIDxzcGFuPiR7bChkP2EoIlBhaWQgaW4gdGVzdCBtb2RlIC0gbm8gcmVhbCBtb25leSBtb3ZlZCwgYW5kIHRoZSBib29raW5nIGlzIGluIGEgc2ltdWxhdGVkIHN5c3RlbS4iLCLmtYvor5XmqKHlvI/ku5jmrL7vvIzmsqHmnInnnJ/lrp7miaPmrL7vvJvorqLljZXlnKjmqKHmi5/ns7vnu5/ph4zjgIIiKTphKGBOb3RoaW5nIG1vcmUgaXMgcGFpZCBhdCB0aGUgaG90ZWwgZm9yIHRoZSByb29tLiBJZiAke2l9IGRvZXMgbm90IGNvbmZpcm0gaXQsIGFsbCBvZiBpdCBnb2VzIGJhY2sgdG8geW91ciBjYXJkLmAsYOWIsOW6l+S4jeeUqOWGjeS7mOaIv+i0ueOAguWmguaenCR7aGUoaSl95rKh5pyJ56Gu6K6k77yM5qy+6aG55Lya5YWo6aKd6YCA5Zue5Y6f5Y2h44CCYCkpfTwvc3Bhbj4KICAgICA8L2Rpdj5gOmQ/YDxkaXYgY2xhc3M9InVucGFpZCI+CiAgICAgICA8Yj4ke2EoIkEgdGVzdCBib29raW5nLiIsIui/meaYr+a1i+ivlemihOiuouOAgiIpfTwvYj4KICAgICAgIDxzcGFuPiR7bChhKGBNYWRlIGluIGEgc2ltdWxhdGVkIGNvcHkgb2YgJHtpfSdzIHN5c3RlbTogbm90IGEgJHtpfSByZXNlcnZhdGlvbiwgbm8gcm9vbSBpcyBoZWxkLCBhbmQgbm90aGluZyBpcyBwYWlkLmAsYOWcqCR7aGUoaSl957O757uf55qE5qih5ouf5Ymv5pys6YeM55Sf5oiQ77yM5LiN5piv55yf5a6e6aKE6K6i77yM5LiN5L+d55WZ5oi/6Ze077yM5Lmf5LiN5LuY5qy+44CCYCkpfTwvc3Bhbj4KICAgICA8L2Rpdj5gOmM9PT0icGF5LWF0LWhvdGVsIj9gPGRpdiBjbGFzcz0idW5wYWlkIj4KICAgICAgIDxiPiR7YSgiTm90aGluZyBoYXMgYmVlbiBjaGFyZ2VkLiIsIuayoeacieaJo+asvuOAgiIpfTwvYj4KICAgICAgIDxzcGFuPiR7bChzP2EoYEVhY2ggaXMgJHtpfSdzIG93biByZXNlcnZhdGlvbiwgcGFpZCBhdCB0aGUgaG90ZWwuIEEgY2FyZCBpcyBwcmVzZW50ZWQgYXQgY2hlY2staW4sIG5vdCBoZXJlLmAsYOi/meaYryR7aGUoaSl955qE5q2j5byP6aKE6K6i77yM5Yiw5bqX5LuY5qy+77yb5YWl5L2P5pe25Zyo5YmN5Y+w5Ye656S66ZO26KGM5Y2h77yM6L+Z6YeM5LiN5pS25qy+44CCYCk6YShgVGhpcyBpcyAke2l9J3Mgb3duIHJlc2VydmF0aW9uLCBwYWlkIGF0IHRoZSBob3RlbC4gQSBjYXJkIGlzIHByZXNlbnRlZCBhdCBjaGVjay1pbiwgbm90IGhlcmUuYCxg6L+Z5pivJHtoZShpKX3nmoTmraPlvI/pooTorqLvvIzliLDlupfku5jmrL7vvJvlhaXkvY/ml7blnKjliY3lj7Dlh7rnpLrpk7booYzljaHvvIzov5nph4zkuI3mlLbmrL7jgIJgKSl9PC9zcGFuPgogICAgIDwvZGl2PmA6aD9gPGRpdiBjbGFzcz0idW5wYWlkIj4KICAgICAgIDxiPiR7YSgiTm90aGluZyBoYXMgYmVlbiBjaGFyZ2VkLiIsIuayoeacieaJo+asvuOAgiIpfTwvYj4KICAgICAgIDxzcGFuPiR7YShgVGhpcyBpcyBhIGRlbW9uc3RyYXRpb24gYm9va2luZzogJHtsKGkpfSBoYXMgbm90IHJlY2VpdmVkIGl0LCBhbmQgbm8gcm9vbSBpcyBoZWxkIGF0IHRoZSBob3RlbC5gLGDov5nmmK/mvJTnpLrpooTorqLvvJoke2woaGUoaSkpfeayoeacieaUtuWIsO+8jOmFkuW6l+S5n+ayoeacieS4uuS9oOS/neeVmeaIv+mXtOOAgmApfTwvc3Bhbj4KICAgICA8L2Rpdj5gOmA8ZGl2IGNsYXNzPSJ1bnBhaWQiPgogICAgICAgPGI+JHthKCJOb3RoaW5nIGhhcyBiZWVuIGNoYXJnZWQuIiwi5rKh5pyJ5omj5qy+44CCIil9PC9iPgogICAgICAgPHNwYW4+JHthKCJBIGNhcmQgaXMgcHJlc2VudGVkIGF0IGNoZWNrLWluLCBub3QgaGVyZS4iLCLlhaXkvY/ml7blnKjliY3lj7Dlh7rnpLrpk7booYzljaHvvIzov5nph4zkuI3mlLbmrL7jgIIiKX08L3NwYW4+CiAgICAgPC9kaXY+YCxgPGRpdiBjbGFzcz0iZm9vdCI+CiAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiTXkgYm9va2luZ3MiLCLmiJHnmoTpooTorqIiKX08L2J1dHRvbj4KICAgICAgICR7c3x8QXx8cnx8IXAoImxpc3RFeHRyYXMiKT8iIjpgPGJ1dHRvbiBjbGFzcz0iZ28gc29mdCIgdHlwZT0iYnV0dG9uIiBkYXRhLWJvb2tpbmctZXh0cmFzPSIke2woblswXT8uY29uZmlybWF0aW9uQ29kZSl9Ij4ke2EoIkFkZC1vbnMgZm9yIHRoaXMgc3RheSIsIuS4uui/measoeS9j+Wuv+WKoOi0rSIpfTwvYnV0dG9uPmB9CiAgICAgPC9kaXY+YCxzfHxBfHxyPyIiOihuWzBdPy5xdW90ZT8ubGluZXM/P1tdKS5zb21lKFA9PlAua2luZD09PSJyb29tIikmJihuWzBdPy5xdW90ZT8ubGluZXM/P1tdKS5maWx0ZXIoUD0+UC5raW5kPT09InJvb20iKS5ldmVyeShQPT5QLnJlZnVuZGFibGU9PT0hMSk/YDxwIGNsYXNzPSJxdWlldC1lbmQgbm90ZSI+JHtsKGEoIlRoaXMgcmF0ZSBjYW5ub3QgYmUgY2FuY2VsbGVkLCBhbmQgbm90aGluZyBvZiBpdCBpcyByZWZ1bmRlZC4iLCLmraTku7fmoLzkuI3lj6/lj5bmtojvvIzlt7Lku5jmrL7pobnkuI3pgIDjgIIiKSl9PC9wPmA6YDxkaXYgY2xhc3M9InF1aWV0LWVuZCI+PGJ1dHRvbiBjbGFzcz0ibGlua3kgZGFuZ2VyIiB0eXBlPSJidXR0b24iIGRhdGEtY2FuY2VsPSIke2woblswXT8uY29uZmlybWF0aW9uQ29kZSl9Ij4ke2EoIkNhbmNlbCB0aGlzIGJvb2tpbmciLCLlj5bmtojov5nnrJTpooTorqIiKX08L2J1dHRvbj48L2Rpdj5gXS5qb2luKCIiKX0sRHU9KGUsdCxuKT0+YDxkaXYgY2xhc3M9Im5vdGUiPiR7bCh6PT09ImVuIj9gTW9yZSB0aGFuIG9uZSAke24/PyJob3RlbCJ9IGFuc3dlcnMgdG8g4oCcJHtlfeKAnTpgOmEoYE1vcmUgdGhhbiBvbmUgaG90ZWwgYW5zd2VycyB0byDigJwke2V94oCdOmAsYOKAnCR7ZX3igJ3lr7nlupTkuI3mraLkuIDlrrbphZLlupfvvJpgKSl9PC9kaXY+CiAgPGRpdiBjbGFzcz0icGxhY2VzIj4ke3QubWFwKG89PmA8YnV0dG9uIGNsYXNzPSJjaGlwIHBsYWNlIiB0eXBlPSJidXR0b24iIGRhdGEtaG90ZWw9IiR7bChvLmlkKX0iPiR7bChPZShvLm5hbWUsby5uYW1lcykucmVwbGFjZShjbiwiIikpfSR7by5jaXR5P2AgPHNtYWxsPiR7bChvLmNpdHkpfTwvc21hbGw+YDoiIn08L2J1dHRvbj5gKS5qb2luKCIiKX08L2Rpdj5gLEx1PWU9Pntjb25zdCB0PWUuZHJvcHBlZD8/W10sbj10LmZpbHRlcihvPT4hKG8uY2FuZGlkYXRlcz8/W10pLmxlbmd0aCk7cmV0dXJuW24ubGVuZ3RoP2A8ZGl2IGNsYXNzPSJlcnIiPiR7bi5tYXAobz0+YCR7bChvLm5hbWUpfTogJHtsKHo9PT0iZW4iP28ud2h5OmEoIk5vIGhvdGVsIGhlcmUgYnkgdGhhdCBuYW1lIiwi6L+Z6YeM5rKh5pyJ5a+55bqU55qE6YWS5bqXIikpfWApLmpvaW4oIjxicj4iKX08L2Rpdj5gOiIiLC4uLnQuZmlsdGVyKG89PihvLmNhbmRpZGF0ZXM/P1tdKS5sZW5ndGgpLm1hcChvPT5EdShvLm5hbWUsby5jYW5kaWRhdGVzLGUudm9jYWI/Lm5vdW4pKV0uam9pbigiIil9LHJqPS9cYihhdCBvbmNlfHRvbyBtYW55fGFuIGhvdXJ8cGVyIGhvdXJ8aW4gdGhlIGxhc3QgaG91cnxsaW1pdHx0cnkgYWdhaW4gKGxhdGVyfGluKSlcYi9pLGFqPXsiaG90ZWwtbm90LWZvdW5kIjpbIlRoYXQgaG90ZWwgaXMgbm90IGhlcmUiLCLmsqHmnInmib7liLDov5nlrrbphZLlupciXSwibm8tc3VjaC1yb29tIjpbIlRoYXQgcm9vbSBpcyBub3QgYXZhaWxhYmxlIiwi6K+l5oi/5Z6L5pqC5LiN5Y+v6K6iIl0sIm5vLXJvb20tbmFtZWQiOlsiVGhhdCByb29tIGlzIG5vdCBhdmFpbGFibGUiLCLor6XmiL/lnovmmoLkuI3lj6/orqIiXSwibm8tc3VjaC1leHRyYSI6WyJUaGF0IGFkZC1vbiBpcyBub3QgYXZhaWxhYmxlIiwi6L+Z6aG56ZmE5Yqg5pyN5Yqh6K6i5LiN5LqGIl0sIm5vLXN1Y2gtZ3JvdXAiOlsiVGhhdCBncm91cCBpcyBub3QgaW4gdGhpcyBtYXJrZXQiLCLov5nph4zmsqHmnInov5nkuKrpm4blm6IiXSwidHJpcC1nb25lIjpbIlRoaXMgdHJpcCBoYXMgZXhwaXJlZCIsIui/meS4quihjOeoi+W3sui/h+acnyJdLCJib29raW5nLWVuZGVkIjpbIlRoYXQgYm9va2luZyBoYXMgZW5kZWQiLCLov5nnrJTpooTorqLlt7Lnu5PmnZ8iXSwiYmFkLWNvdW50IjpbIlRoYXQgbnVtYmVyIGRvZXMgbm90IHdvcmsiLCLmlbDph4/kuI3lr7kiXSwic3RhcnQtdGltZSI6WyJUaGF0IHN0YXJ0IHRpbWUgaXMgbm90IG9wZW4iLCLov5nkuKrliLDlupfml7bpl7TkuI3lj6/pgIkiXSwibm90LWJvb2thYmxlIjpbIlRoaXMgY291bGQgbm90IGJlIGJvb2tlZCIsIuaaguaXtuaXoOazlemihOiuoiJdfSx1bj1lPT4vW+OQgC3pv79dLy50ZXN0KGUpLGhlPWU9PmUmJiF1bihlKT8i6YWS5bqXIjplLGlqPWU9PntpZigoZS5jYW5kaWRhdGVzPz9bXSkubGVuZ3RoKXJldHVybiBEdShlLnF1ZXJ5LGUuY2FuZGlkYXRlcyxlLnZvY2FiPy5ub3VuKTtjb25zdCB0PWUucm9vbXM/P1tdLG49ZS5lcnJvcj09PSJzdGFydC10aW1lIj9lLndpbmRvdzp2b2lkIDAsbz1lLmVycm9yPT09Im5vLXN1Y2gtcm9vbSImJmUuaG90ZWw/LmlkJiZlLnN0YXk/LmNoZWNrSW4mJnQuZXZlcnkocD0+cC5pZCk/YDxkaXYgY2xhc3M9ImxpbmtzIj4ke3QubWFwKHA9PmA8YnV0dG9uIGNsYXNzPSJsaW5rLXJvdyBhZGQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hZGQtcm9vbT0iJHtsKHAuaWQpfSIgZGF0YS1ob3RlbD0iJHtsKGUuaG90ZWwuaWQpfSIgZGF0YS1uPSIxIiBkYXRhLWNpPSIke2woZS5zdGF5LmNoZWNrSW4pfSIgZGF0YS1jbz0iJHtsKGUuc3RheS5jaGVja091dCl9IiBkYXRhLWd1PSIke2woZS5zdGF5Lmd1ZXN0cz8/ai5ndWVzdHMpfSI+PHNwYW4+JHtsKHAubmFtZSl9PC9zcGFuPjxzcGFuIGNsYXNzPSJsaW5rLWdvIj4ke2EoIlJlc2VydmUiLCLpooTorqIiKX0ke0kuY2hldlJ9PC9zcGFuPjwvYnV0dG9uPmApLmpvaW4oIiIpfTwvZGl2PmA6IiIscz1TdHJpbmcoZS5kZXRhaWw/P2Uud2h5Pz8iIikscj1yai50ZXN0KHMpLGk9ZS5lcnJvcj09PSJ0cmlwLWdvbmUiLGM9aT9hKCJUcmlwcyBhcmUga2VwdCBmb3IgNCBob3VycyBhZnRlciB0aGVpciBsYXN0IGNoYW5nZSwgYW5kIHRoaXMgb25lIGhhcyBnb25lIC0gdHJ5aW5nIGFnYWluIHdpbGwgbm90IGJyaW5nIGl0IGJhY2suIEFzayB0aGUgYXNzaXN0YW50IHRvIHNob3cgeW91ciB0cmlwIGFnYWluLCBvciBzZWFyY2ggYWdhaW4gaGVyZS4iLCLooYznqIvlj6rlnKjmnIDlkI7kuIDmrKHmlLnliqjlkI7kv53nlZkgNCDlsI/ml7bvvIzov5nkuKrlt7Lnu4/ov4fmnJ/vvIzlho3or5XkuZ/kuI3kvJrmgaLlpI3jgILor7forqnliqnmiYvph43mlrDmmL7npLrooYznqIvvvIzmiJblnKjov5nph4zph43mlrDmkJzntKLjgIIiKTpuPyhlLnF1ZXJ5P2EoYCR7ZS5xdWVyeX0gaXMgbm90IGEgc3RhcnQgdGhpcyByb29tIHRha2VzLiBgLGAke2UucXVlcnl9IOS4jeiDveS9nOS4uuWIsOW6l+aXtumXtOOAgmApOiIiKSthKGBJdCBzdGFydHMgYmV0d2VlbiAke24uZWFybGllc3RTdGFydH0gYW5kICR7bi5sYXRlc3RTdGFydH0gdG9kYXksIGZvciAke24uaG91cnN9IGhvdXJzLCBhbmQgaXMgbGVmdCBieSAke24ubGF0ZXN0RW5kfS5gLGDov5npl7Tpkp/ngrnmiL/ku4rlpKkgJHtuLmVhcmxpZXN0U3RhcnR94oCTJHtuLmxhdGVzdFN0YXJ0fSDkuYvpl7TliLDlupfvvIzkvY8gJHtuLmhvdXJzfSDlsI/ml7bvvIzmnIDmmZogJHtuLmxhdGVzdEVuZH0g56a75bqX44CCYCk6ZS5lcnJvcj09PSJuby1zdWNoLXJvb20iJiZ0Lmxlbmd0aD9vP2UuaG90ZWw/Lm5hbWU/YShgJHtIKGUuaG90ZWwpfSBoYXMgbm8gcm9vbSBieSB0aGF0IG5hbWUgZm9yIHRob3NlIG5pZ2h0cy4gVGhlc2UgYXJlIG9wZW4g4oCUIHRhcCBvbmUgdG8gcmVzZXJ2ZSBpdDpgLGAke0goZS5ob3RlbCl95Zyo6L+Z5Lqb5pel5pyf5rKh5pyJ6L+Z5Liq5oi/5Z6L44CC5LiL6Z2i6L+Z5Lqb5Y+v5Lul6K6i77yM54K55LiA5LiL5Y2z5Y+v6aKE6K6i77yaYCk6YSgiVGhpcyBob3RlbCBoYXMgbm8gcm9vbSBieSB0aGF0IG5hbWUgZm9yIHRob3NlIG5pZ2h0cy4gVGhlc2UgYXJlIG9wZW4g4oCUIHRhcCBvbmUgdG8gcmVzZXJ2ZSBpdDoiLCLov5nlrrbphZLlupflnKjov5nkupvml6XmnJ/msqHmnInov5nkuKrmiL/lnovjgILkuIvpnaLov5nkupvlj6/ku6XorqLvvIzngrnkuIDkuIvljbPlj6/pooTorqLvvJoiKTplLmhvdGVsPy5uYW1lP2EoYCR7SChlLmhvdGVsKX0gaGFzIG5vIHJvb20gYnkgdGhhdCBuYW1lIGZvciB0aG9zZSBuaWdodHMuIEl0IGhhcyAke01uKHQubWFwKHA9PlN0cmluZyhwLm5hbWUpKSl9LmAsYCR7SChlLmhvdGVsKX3lnKjov5nkupvml6XmnJ/msqHmnInov5nkuKrmiL/lnovvvIzlj6/orqLnmoTmnInvvJoke01uKHQubWFwKHA9PlN0cmluZyhwLm5hbWUpKSl944CCYCk6YShgVGhpcyBob3RlbCBoYXMgbm8gcm9vbSBieSB0aGF0IG5hbWUgZm9yIHRob3NlIG5pZ2h0cy4gSXQgaGFzICR7TW4odC5tYXAocD0+U3RyaW5nKHAubmFtZSkpKX0uYCxg6L+Z5a626YWS5bqX5Zyo6L+Z5Lqb5pel5pyf5rKh5pyJ6L+Z5Liq5oi/5Z6L77yM5Y+v6K6i55qE5pyJ77yaJHtNbih0Lm1hcChwPT5TdHJpbmcocC5uYW1lKSkpfeOAgmApOnImJnohPT0iZW4iJiYhKGxuKCkmJnVuKHMpKT9hKCJOb3RoaW5nIHdhcyBib29rZWQgYW5kIG5vdGhpbmcgd2FzIGNoYXJnZWQuIFRoaXMgY29udmVyc2F0aW9uIGhhcyByZWFjaGVkIGl0cyBib29raW5nIGxpbWl0OiBjYW5jZWwgb25lIHlvdSBkbyBub3QgbmVlZCBpbiBNeSBib29raW5ncywgdGhlbiB0cnkgYWdhaW4uIiwi6L+Z5qyh5rKh5pyJ6aKE6K6i5oiQ5Yqf77yM5Lmf5rKh5pyJ5omj5qy+44CC6L+Z5q615a+56K+d6YeM55qE6aKE6K6i5bey5Yiw5LiK6ZmQ77ya6K+35YWI5Zyo4oCc5oiR55qE6aKE6K6i4oCd6YeM5Y+W5raI5LiN6ZyA6KaB55qE77yM5YaN6K+V5LiA5qyh44CCIik6cyYmKHo9PT0iZW4ifHxsbigpJiZ1bihzKSk/czphKCJUaGF0IGNvdWxkIG5vdCBiZSBkb25lLiIsIui/meS4gOatpeayoeiDveWujOaIkO+8jOivt+eojeWQjuWGjeivleOAgiIpLGg9YWpbU3RyaW5nKGUuZXJyb3IpXSxkPXI/YSgiQm9va2luZyBsaW1pdCByZWFjaGVkIiwi5bey6L6+6aKE6K6i5LiK6ZmQIik6aD9hKGhbMF0saFsxXSk6YSgiVGhhdCBkaWQgbm90IHdvcmsiLCLmsqHog73lrozmiJAiKSx1PVtlLmhvdGVsPy5pZD9gPGJ1dHRvbiBjbGFzcz0iZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1ob3RlbD0iJHtsKGUuaG90ZWwuaWQpfSIke2Uuc3RheT8uY2hlY2tJbj9gIGRhdGEtY2k9IiR7bChlLnN0YXkuY2hlY2tJbil9IiBkYXRhLWNvPSIke2woZS5zdGF5LmNoZWNrT3V0KX0iYDoiIn0+JHtsKG8/YSgiU2VlIGFsbCByb29tcyIsIuafpeeci+WFqOmDqOaIv+WeiyIpOmEoIlNlZSB0aGUgcm9vbXMiLCLmn6XnnIvmiL/lnosiKSl9PC9idXR0b24+YDoiIixyJiZzcygibGlzdEJvb2tpbmdzIik/YDxidXR0b24gY2xhc3M9ImdvJHtlLmhvdGVsPy5pZD8iIHF1aWV0IjoiIn0iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImJvb2tpbmdzIj4ke2EoIk15IGJvb2tpbmdzIiwi5oiR55qE6aKE6K6iIil9PC9idXR0b24+YDoiIiwhZS5ob3RlbD8uaWQmJiFyJiZnZS5sZW5ndGg/YDxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJiYWNrIj4ke0kuY2hldkx9JHtsKGdlLmF0KC0xKT8ucGF5bG9hZD9hKGBCYWNrIHRvICR7UGcoZ2UuYXQoLTEpPy5wYXlsb2FkKX1gLCLov5Tlm54iKTphKCJCYWNrIHRvIHdoZXJlIHlvdSB3ZXJlIiwi6L+U5ZueIikpfTwvYnV0dG9uPmA6IiIsT3Q+MD9gPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InRyaXAiPiR7YSgiVmlldyB0aGUgdHJpcCIsIuafpeeci+ihjOeoiyIpfTwvYnV0dG9uPmA6IiJdLmZpbHRlcihCb29sZWFuKTtyZXR1cm4gaSYmdS5zcGxpY2UoMCx1Lmxlbmd0aCxgPGJ1dHRvbiBjbGFzcz0iZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImFzay10cmlwLWFnYWluIj4ke2EoIkFzayB0aGUgYXNzaXN0YW50IHRvIHNob3cgaXQgYWdhaW4iLCLorqnliqnmiYvph43mlrDmmL7npLrooYznqIsiKX08L2J1dHRvbj5gLGA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iaG9tZSI+JHthKCJTZWFyY2ggYWdhaW4iLCLph43mlrDmkJzntKIiKX08L2J1dHRvbj5gKSx1Lmxlbmd0aHx8dS5wdXNoKGA8YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iaG9tZSI+JHthKCJGaW5kIGEgaG90ZWwiLCLmib7phZLlupciKX08L2J1dHRvbj5gKSxgCiAgICA8ZGl2IGNsYXNzPSJzdGF0ZSAke3I/ImxpbWl0IjoiZXJyb3IifSIgcm9sZT0iYWxlcnQiPgogICAgICA8ZGl2IGNsYXNzPSJzdGF0ZS1pY28iPiR7cj9JLmNsb2NrOkkuZXJyb3J9PC9kaXY+CiAgICAgIDxoMiBjbGFzcz0ic3RhdGUtdCI+JHtsKGQpfTwvaDI+CiAgICAgIDxwIGNsYXNzPSJzdGF0ZS1kIj4ke2woYyl9PC9wPgogICAgICAke299CiAgICAgIDxkaXYgY2xhc3M9ImZvb3QiPiR7dS5qb2luKCIiKX08L2Rpdj4KICAgIDwvZGl2PmB9LF9iPWU9PmAKICA8ZGl2IGNsYXNzPSJyb3ciPgogICAgPGRpdiBjbGFzcz0iYm9keSI+CiAgICAgIDxkaXYgY2xhc3M9Im5hbWUiPiR7bChlLnRpdGxlKX08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ibWV0YSI+JHtsKGdiKGUpfHwoZS5raW5kPT09InJvb20iP2ZhKGUuc3RheSxlLmhvdXJseSk6IiIpKX08L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0icHJpY2UiPjxkaXYgY2xhc3M9InAtbGluZSI+JHtsKGUudG90YWwpfTwvZGl2PiR7ZS5raW5kPT09InJvb20iJiZiYT9gPGRpdiBjbGFzcz0icC11bml0Ij4ke2EoImJlZm9yZSB0YXhlcyIsIuacquWQq+eojui0uSIpfTwvZGl2PmA6IiJ9PC9kaXY+CiAgPC9kaXY+YCxjaj17ImF3YWl0aW5nLXBheW1lbnQiOiJ3YXJuIixyZXF1ZXN0ZWQ6Indhcm4iLGNvbmZpcm1lZDoiZ29vZCIsY2FuY2VsbGVkOiJiYWQiLGV4cGlyZWQ6ImJhZCIsZmFpbGVkOiJiYWQiLHVuY29uZmlybWVkOiJ3YXJuIn0sSG49eyJhd2FpdGluZy1wYXltZW50IjpbIkF3YWl0aW5nIHBheW1lbnQiLCLlvoXku5jmrL4iXSxyZXF1ZXN0ZWQ6WyJSZXF1ZXN0ZWQiLCLlvoXnoa7orqQiXSxjb25maXJtZWQ6WyJDb25maXJtZWQiLCLlt7Lnoa7orqQiXSxjYW5jZWxsZWQ6WyJDYW5jZWxsZWQiLCLlt7Llj5bmtogiXSxleHBpcmVkOlsiRXhwaXJlZCIsIuW3sui/h+acnyJdLGZhaWxlZDpbIk5vdCBtYWRlIiwi5pyq5oiQ5YqfIl0sdW5jb25maXJtZWQ6WyJCZWluZyBjaGVja2VkIiwi5qC45a6e5LitIl19LGxqPWU9Pntjb25zdCB0PWUucmVxdWVzdHM/LmtpbmRzPz9bXTtpZighdC5sZW5ndGgpcmV0dXJuIiI7Y29uc3Qgbj10Lm1hcChCcyk7cmV0dXJuYDxkaXYgY2xhc3M9Im1ldGEgYXNrZWQtbGluZSI+JHtsKGEoYEFza2VkIGZvciAke24uam9pbigiLCAiKS50b0xvd2VyQ2FzZSgpfWAsYOW3suaPkOWHuu+8miR7bi5qb2luKCLjgIEiKX1gKSl9PC9kaXY+YH0sdWo9e2F3YWl0aW5nOlsiVG8gYmUgcGFpZCIsIuW+heS7mOasviIsIndhcm4iXSxwYWlkOlsiUGFpZCBpbiBhZHZhbmNlIiwi5bey6aKE5LuYIiwiZ29vZCJdLGxhcHNlZDpbIk5vdCBwYWlkIGluIHRpbWUiLCLotoXml7bmnKrku5giLCIiXSxyZWZ1bmRpbmc6WyJSZWZ1bmQgdW5kZXIgd2F5Iiwi6YCA5qy+5LitIiwiIl0scmVmdW5kZWQ6WyJSZWZ1bmRlZCBpbiBmdWxsIiwi5bey5YWo6aKd6YCA5qy+IiwiIl19LGRqPWU9Pntjb25zdCB0PXVqW1N0cmluZyhlPy5wYXltZW50Py5zdGF0dXM/PyIiKV07cmV0dXJuIHQ/YDxzcGFuIGNsYXNzPSJiYWRnZSAke3RbMl19Ij4ke2EodFswXSx0WzFdKX08L3NwYW4+YDoiIn0saGo9ZT0+e2NvbnN0IHQ9ZS5ib29raW5ncz8/W10sbj1lLm5vdEZvdW5kP2A8ZGl2IGNsYXNzPSJlcnIiPiR7bChlLnRvb01hbnk/eiE9PSJlbiImJiEobG4oKSYmdW4oU3RyaW5nKGUubm90Rm91bmRMaW5lPz8iIikpKT9hKCJUb28gbWFueSB0cmllcyAtIHRyeSBhZ2FpbiBsYXRlci4iLCLlsJ3or5XmrKHmlbDov4flpJrvvIzor7fnqI3lkI7lho3or5XjgIIiKTplLm5vdEZvdW5kTGluZTphKGBObyBib29raW5nIG1hdGNoZXMgJHtlLm5vdEZvdW5kfSB3aXRoIHRoYXQgZW1haWwuIEJvdGggaGF2ZSB0byBiZSBhcyB0aGV5IGFyZSBvbiB0aGUgY29uZmlybWF0aW9uLmAsYOayoeacieaJvuWIsOehruiupOeggSAke2Uubm90Rm91bmR9IOWSjOi/meS4qumCrueuseWvueW6lOeahOmihOiuouOAguS4pOmhuemDveimgeWSjOehruiupOS/oeaBr+S4iueahOS4gOiHtOOAgmApKX08L2Rpdj5gOiIiO3JldHVybiBlLm5vdEZvdW5kJiZ0Lmxlbmd0aD09PTA/YCR7bn0KICAgICAgPGRpdiBjbGFzcz0iZm9vdCI+PGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImZpbmQtYm9va2luZyI+JHthKCJUcnkgYWdhaW4iLCLlho3or5XkuIDmrKEiKX08L2J1dHRvbj48L2Rpdj5gOnQubGVuZ3RoPT09MD9gPGRpdiBjbGFzcz0iZW1wdHkiPiR7YSgiTm8gYm9va2luZ3MgaW4gdGhpcyBjb252ZXJzYXRpb24geWV0LiIsIui/measoeWvueivnemHjOi/mOayoeaciemihOiuouOAgiIpfTwvZGl2PmA6W24sYDxkaXYgY2xhc3M9InJvd3MiPiR7dC5tYXAobz0+YAogICAgICA8ZGl2IGNsYXNzPSJyb3cgYm9va2luZy1yb3ciIGRhdGEtb3Blbi1ib29raW5nPSIke2woby5jb25maXJtYXRpb25Db2RlKX0iPgogICAgICAgIDxkaXYgY2xhc3M9ImJvZHkiPgogICAgICAgICAgPGRpdiBjbGFzcz0ibmFtZSI+JHtqdChvLmhvdGVsTmFtZSxvLmhvdGVsTmFtZXMpfTwvZGl2PgogICAgICAgICAgPGRpdiBjbGFzcz0ibWV0YSI+JHtsKG8uY29uZmlybWF0aW9uQ29kZSl9IMK3ICR7bChmYShvLnN0YXksby5ob3VybHkpKX08L2Rpdj4KICAgICAgICAgICR7bGoobyl9CiAgICAgICAgICA8ZGl2IGNsYXNzPSJiYWRnZXMiPiR7ZGoobyl9PHNwYW4gY2xhc3M9ImJhZGdlICR7Y2pbU3RyaW5nKG8uc3RhdHVzKV0/PyIifSI+JHtsKEhuW1N0cmluZyhvLnN0YXR1cyldP2EoSG5bU3RyaW5nKG8uc3RhdHVzKV0/LlswXT8/IiIsSG5bU3RyaW5nKG8uc3RhdHVzKV0/LlsxXT8/IiIpOm8uc3RhdHVzKX08L3NwYW4+PC9kaXY+CiAgICAgICAgICAke28uc3RhdHVzPT09InVuY29uZmlybWVkIj9gPGRpdiBjbGFzcz0ibWV0YSI+JHtsKGEoYE5vdCBrbm93biB5ZXQgd2hldGhlciAke0tlKG8uc3VwcGxpZXIpLm5hbWV9IG1hZGUgdGhpcyBib29raW5nIOKAlCBhIHBlcnNvbiBpcyBjb25maXJtaW5nIGl0LmAsYOi/mOS4jeehruWumiR7S2Uoby5zdXBwbGllcikubmFtZX3mmK/lkKblt7LnlJ/miJDov5nnrJTpooTorqLvvIzmraPlnKjkurrlt6XmoLjlrp7jgIJgKSl9PC9kaXY+YDoiIn0KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJwcmljZSI+PGRpdiBjbGFzcz0icC10b3RhbCI+JHtsKG8ucXVvdGU/LnRvdGFsPz8iIil9PC9kaXY+PC9kaXY+CiAgICAgICAgPGRpdiBjbGFzcz0iYWN0aW9uIj4ke28uc3RhdHVzPT09ImF3YWl0aW5nLXBheW1lbnQiJiZvLnBheW1lbnQ/LnVybD9gPGJ1dHRvbiBjbGFzcz0iZ28gc20iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9InBheSIgZGF0YS11cmw9IiR7bChvLnBheW1lbnQudXJsKX0iIGRhdGEtY29kZT0iJHtsKG8uY29uZmlybWF0aW9uQ29kZSl9IiBkYXRhLXVudGlsPSIke2woby5wYXltZW50LnBheUJ5Pz8iIil9Ij4ke2EoIlBheSIsIuWOu+S7mOasviIpfSAke2woby5wYXltZW50LmFtb3VudD8/IiIpfTwvYnV0dG9uPmA6by5zdGF0dXM9PT0icmVxdWVzdGVkInx8by5zdGF0dXM9PT0iY29uZmlybWVkIj9gJHtzcygibGlzdEV4dHJhcyIpJiZLZShvLnN1cHBsaWVyKS5leHRyYXM/YDxidXR0b24gY2xhc3M9ImdvIHF1aWV0IHNtIiB0eXBlPSJidXR0b24iIGRhdGEtYm9va2luZy1leHRyYXM9IiR7bChvLmNvbmZpcm1hdGlvbkNvZGUpfSI+JHthKCJBZGQtb25zIiwi6ZmE5Yqg5pyN5YqhIil9PC9idXR0b24+YDoiIn0KICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQgc20iIHR5cGU9ImJ1dHRvbiIgZGF0YS1jYW5jZWw9IiR7bChvLmNvbmZpcm1hdGlvbkNvZGUpfSI+JHthKCJDYW5jZWwiLCLlj5bmtogiKX08L2J1dHRvbj5gOiIifTxidXR0b24gY2xhc3M9Im9wZW4tZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1vcGVuLWJvb2tpbmc9IiR7bChvLmNvbmZpcm1hdGlvbkNvZGUpfSIgYXJpYS1sYWJlbD0iJHtsKGEoYFNlZSBib29raW5nICR7by5jb25maXJtYXRpb25Db2RlfWAsYOafpeeci+mihOiuoiAke28uY29uZmlybWF0aW9uQ29kZX0g55qE6K+m5oOFYCkpfSI+JHtJLmNoZXZSfTwvYnV0dG9uPjwvZGl2PgogICAgICA8L2Rpdj5gKS5qb2luKCIiKX08L2Rpdj5gXS5qb2luKCIiKX0sVmQ9ZT0+e2NvbnN0IHQ9ZS52aWV3PT09ImNhbmNlbGxlZCIsbj1lLmJvb2tpbmc/P3t9O3JldHVybltgPGRpdiBjbGFzcz0iY29uZiI+CiAgICAgICA8ZGl2IGNsYXNzPSJub3RlIj4ke3Q/YSgiQ2FuY2VsbGVkIiwi5bey5Y+W5raIIik6YSgiQ2FuY2VsbGluZyIsIuato+WcqOWPlua2iCIpfTwvZGl2PgogICAgICAgPGRpdiBjbGFzcz0iY29kZSI+JHtsKG4uY29uZmlybWF0aW9uQ29kZSl9PC9kaXY+CiAgICAgPC9kaXY+YCxgPGRpdiBjbGFzcz0ic3VtcyI+CiAgICAgICA8ZGl2IGNsYXNzPSJzdW0gdG90YWwiPjxzcGFuPiR7dD9hKCJUaGUgaG90ZWwgY2hhcmdlcyIsIumFkuW6l+aUtuWPliIpOmEoIkNhbmNlbGxpbmcgd291bGQgY29zdCIsIuWPlua2iOmcgOaUr+S7mCIpfTwvc3Bhbj48c3Bhbj4ke2woZS5mZWUpfTwvc3Bhbj48L2Rpdj4KICAgICA8L2Rpdj5gLGA8ZGl2IGNsYXNzPSJub3RlIj4ke2woZS5ydWxlKX08L2Rpdj5gLHQ/IiI6ZS5jYW5jZWxsYWJsZT9gPGRpdiBjbGFzcz0iZm9vdCI+CiAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyBxdWlldCIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYm9va2luZ3MiPiR7YSgiS2VlcCBpdCIsIuS4jeWPlua2iOS6hiIpfTwvYnV0dG9uPgogICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZ28gZGFuZ2VyIiB0eXBlPSJidXR0b24iIGRhdGEtY29uZmlybS1jYW5jZWw9IiR7bChuLmNvbmZpcm1hdGlvbkNvZGUpfSI+JHthKCJDYW5jZWwgdGhlIGJvb2tpbmciLCLnoa7orqTlj5bmtogiKX08L2J1dHRvbj4KICAgICAgICAgICA8L2Rpdj5gOmA8ZGl2IGNsYXNzPSJub3RlIj4ke2EoIlRoZXJlIGlzIG5vdGhpbmcgbGVmdCB0byBjYW5jZWwgb24gdGhpcyBib29raW5nLiIsIui/meeslOmihOiuouW3suayoeacieWPr+WPlua2iOeahOWGheWuueOAgiIpfTwvZGl2PmBdLmpvaW4oIiIpfSxXZD1lPT57Y29uc3QgdD1lLnZpZXc9PT0iY2hhbmdlZCIsbj1lLmJvb2tpbmc/P3t9LG89ZS5mcm9tPz97fSxzPWUudG8scj0hIXMmJihzLmNoZWNrSW4hPT1vLmNoZWNrSW58fHMuY2hlY2tPdXQhPT1vLmNoZWNrT3V0fHxOdW1iZXIocy5yb29tcykhPT1OdW1iZXIoby5yb29tcyl8fHMucm9vbU5hbWUhPT1vLnJvb21OYW1lKSxpPShjLGgsZCk9Pmg/YDxkaXYgY2xhc3M9ImxlZyR7ZD8iIHdhcyI6IiJ9Ij4KICAgICAgICAgICA8ZGl2IGNsYXNzPSJsZWdrIj4ke2woYyl9PC9kaXY+CiAgICAgICAgICAgPGRpdiBjbGFzcz0ibGVndiI+JHtsKF9lKFN0cmluZyhoLmNoZWNrSW4pKSl9IOKGkiAke2woX2UoU3RyaW5nKGguY2hlY2tPdXQpKSl9IMK3ICR7bChpZShOdW1iZXIoaC5uaWdodHMpKSl9PC9kaXY+CiAgICAgICAgICAgPGRpdiBjbGFzcz0ibGVnbSI+JHtsKGgucm9vbU5hbWUpfSR7TnVtYmVyKGgucm9vbXMpPjE/YCDCtyAke2woZV8oTnVtYmVyKGgucm9vbXMpKSl9YDoiIn0gwrcgJHtsKGgudG90YWwpfTwvZGl2PgogICAgICAgICA8L2Rpdj5gOiIiO3JldHVybltgPGRpdiBjbGFzcz0iY29uZiI+CiAgICAgICA8ZGl2IGNsYXNzPSJub3RlIj4ke3Q/YSgiQ2hhbmdlZCIsIuW3suS/ruaUuSIpOmEoIkNoYW5naW5nIiwi5L+u5pS56aKE6K6iIil9PC9kaXY+CiAgICAgICA8ZGl2IGNsYXNzPSJjb2RlIj4ke2wobi5jb25maXJtYXRpb25Db2RlKX08L2Rpdj4KICAgICA8L2Rpdj5gLGUuaG90ZWxOYW1lP2A8ZGl2IGNsYXNzPSJoLXdoZXJlIj4ke2wob3QoZSkpfTwvZGl2PmA6IiIsYDxkaXYgY2xhc3M9ImxlZ3MiPiR7aSh0P2EoIldhcyIsIuWOn+adpSIpOmEoIk5vdyIsIueOsOWcqCIpLGUuZnJvbSxyKX0ke2kodD9hKCJOb3ciLCLnjrDlnKgiKTphKCJXb3VsZCBiZSIsIuaUueS4uiIpLGUudG8sITEpfTwvZGl2PmAsZS5hZGRPbj9gPGRpdiBjbGFzcz0ic3VtcyI+PGRpdiBjbGFzcz0ic3VtIj48c3Bhbj4ke2woZS5hZGRPbi5uYW1lKX08L3NwYW4+PHNwYW4+JHtsKGUuYWRkT24uZnJvbSl9IOKGkiAke2woZS5hZGRPbi50byl9PC9zcGFuPjwvZGl2PjwvZGl2PmA6IiIsZS5kaWZmZXJlbmNlP2A8ZGl2IGNsYXNzPSJzdW1zIj48ZGl2IGNsYXNzPSJzdW0gdG90YWwiPjxzcGFuPiR7ZS5yZWZ1bmREdWU/dD9hKCJUaGUgZGVzayBvd2VzIiwi6YWS5bqX5bqU6YCAIik6YSgiV291bGQgY29tZSBiYWNrIiwi5bCG6YCA5ZueIik6YSh0PyJUaGUgZGVzayBhc2tzIGZvciI6IldvdWxkIGNvc3QiLCLpnIDooaXlt67ku7ciKX08L3NwYW4+PHNwYW4+JHtsKGUuZGlmZmVyZW5jZSl9PC9zcGFuPjwvZGl2PjwvZGl2PmA6IiIsYDxkaXYgY2xhc3M9Im5vdGUiPiR7bChlLnJ1bGUpfTwvZGl2PmAsdD9gPGRpdiBjbGFzcz0iZm9vdCI+PGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImJvb2tpbmdzIj4ke2EoIk15IGJvb2tpbmdzIiwi5oiR55qE6aKE6K6iIil9PC9idXR0b24+PC9kaXY+YDplLmNoYW5nZWFibGU/YDxkaXYgY2xhc3M9ImZvb3QiPgogICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZ28gcXVpZXQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImJvb2tpbmdzIj4ke2EoIkxlYXZlIGl0Iiwi5LiN5pS55LqGIil9PC9idXR0b24+CiAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPSJnbyIgdHlwZT0iYnV0dG9uIiBkYXRhLWNvbmZpcm0tY2hhbmdlPSIke2wobi5jb25maXJtYXRpb25Db2RlKX0iPiR7ZS5hZGRPbiYmZS5mcm9tPy5jaGVja0luPT09ZS50bz8uY2hlY2tJbiYmZS5mcm9tPy5jaGVja091dD09PWUudG8/LmNoZWNrT3V0P2EoIlVwZGF0ZSB0aGUgYm9va2luZyIsIuabtOaWsOmihOiuoiIpOmEoIk1vdmUgdGhlIGJvb2tpbmciLCLnoa7orqTmlLnmnJ8iKX08L2J1dHRvbj4KICAgICAgICAgICA8L2Rpdj5gOiIiXS5qb2luKCIiKX0sVGE9ZT0+e2NvbnN0IHQ9ZS5ob3RlbD8/e30sbj1lLnZpZXc9PT0icG9saWN5Ij9gPGg0PiR7bChlLnRpdGxlKX08L2g0PiR7bChlLnRleHQpfWA6KGUudG9waWNzPz9bXSkubWFwKG89PmA8aDQ+JHtsKG8udGl0bGUpfTwvaDQ+JHtsKG8udGV4dCl9YCkuam9pbigiIik7cmV0dXJuW2A8ZGl2PjxkaXYgY2xhc3M9ImgtbmFtZSI+JHtsKEgodCkpfTwvZGl2PjxkaXYgY2xhc3M9Imgtd2hlcmUiPiR7YSgiV2hhdCB0aGUgaG90ZWwgcHVibGlzaGVzIiwi6YWS5bqX5YWs5biD55qE5pS/562WIil9PC9kaXY+PC9kaXY+YCxlLnZpZXc9PT0icG9saWN5LW1pc3NpbmciP2A8ZGl2IGNsYXNzPSJlbXB0eSI+JHtsKGEoYCR7SCh0KX0gZG9lcyBub3QgcHVibGlzaCBhbnl0aGluZyBhYm91dCB0aGF0IGhlcmUuYCxgJHtIKHQpfeayoeacieWFrOW4g+i/meaWuemdoueahOaUv+etluOAgmApKX08L2Rpdj5gOmA8ZGl2IGNsYXNzPSJwcm9zZSI+JHtufTwvZGl2PmAsYDxidXR0b24gY2xhc3M9ImdvIHF1aWV0IiB0eXBlPSJidXR0b24iIGRhdGEtaG90ZWw9IiR7bCh0LmlkKX0iPiR7bChhKGBCYWNrIHRvICR7SCh0KX1gLGDov5Tlm54ke0godCl9YCkpfTwvYnV0dG9uPmBdLmpvaW4oIiIpfSxLZD17V2hlcmU6IuS9jee9riIsQnJhbmQ6IuWTgeeJjCIsUm9vbToi5oi/5Z6LIiwiUGVyIG5pZ2h0Ijoi5q+P5pmaIiwiV2hvbGUgc3RheSI6IuaVtOauteS9j+WuvyIsIkZyZWUgY2FuY2VsbGF0aW9uIjoi5YWN6LS55Y+W5raIIixCcmVha2Zhc3Q6IuaXqemkkCIsU2xlZXBzOiLlj6/kvY/kurrmlbAiLCJSb29tcyBsZWZ0Ijoi5Ymp5L2Z5oi/6Ze0IixGcm9tOiLotbfku7ciLFJhdGluZzoi6K+E5YiGIn0sR2Q9e1llczoi5pivIixObzoi5ZCmIixJbmNsdWRlZDoi5ZCrIiwiTm90IGluY2x1ZGVkIjoi5LiN5ZCrIn0scGo9ZT0+eiE9PSJlbiImJktkW2VdP2EoZSxLZFtlXSk6ZSxtaj1lPT56PT09ImVuIj9lOkdkW2VdP2EoZSxHZFtlXSk6LyBpbmNsXC4gdGF4JC8udGVzdChlKT9hKGAke2UucmVwbGFjZSgvIGluY2xcLiB0YXgkLywiIil9IGluY2wuIHRheGAsYCR7ZS5yZXBsYWNlKC8gaW5jbFwuIHRheCQvLCIiKX0g5ZCr56iOYCk6LyBhIG5pZ2h0JC8udGVzdChlKT9hKGAke2UucmVwbGFjZSgvIGEgbmlnaHQkLywiIil9IGEgbmlnaHRgLGAke2UucmVwbGFjZSgvIGEgbmlnaHQkLywiIil9IOavj+aZmmApOmUsZmo9ZT0+e2NvbnN0IHQ9ZS5jb2x1bW5zPz9bXSxuPWUucm93TGFiZWxzPz9bXSxvPXQuc29tZShyPT5yLnJlY29tbWVuZGVkKSxzPXI9PmAKICAgIDxkaXYgY2xhc3M9ImNtcC1oZWFkJHtyLnJlY29tbWVuZGVkPyIgcGljayI6IiJ9JHtvPyIgbWFya2VkIjoiIn0iPgogICAgICAke28/YDxkaXYgY2xhc3M9InBpY2ttYXJrJHtyLnJlY29tbWVuZGVkPyIiOiIgbm9uZSJ9Ij4ke3IucmVjb21tZW5kZWQ/YSgiUmVjb21tZW5kZWQiLCLmjqjojZAiKToiIn08L2Rpdj5gOiIifQogICAgICA8YnV0dG9uIGNsYXNzPSJ0LXNob3QiIHR5cGU9ImJ1dHRvbiIgZGF0YS1ob3RlbD0iJHtsKHIuaG90ZWwuaWQpfSIgc3R5bGU9IiR7X3QoU3RyaW5nKHIuaG90ZWwuaWQpKX0iPgogICAgICAgICR7ci5ob3RlbC5pbWFnZVVybD9gPGltZyBzcmM9IiR7bChyLmhvdGVsLmltYWdlVXJsKX0iIGFsdD0iIj5gOiIifQogICAgICAgIDxzcGFuIGNsYXNzPSJ0LW1hcmsiPiR7bChUdChIKHIuaG90ZWwpKSl9PC9zcGFuPgogICAgICA8L2J1dHRvbj4KICAgICAgPGRpdiBjbGFzcz0iY29sLW5hbWUiPiR7bChIKHIuaG90ZWwpKX0ke010KHIuaG90ZWwuc3VwcGxpZXIpP2A8c21hbGwgY2xhc3M9ImNvbC1ncm91cCI+JHtsKE10KHIuaG90ZWwuc3VwcGxpZXIpLm5hbWUpfTwvc21hbGw+YDoiIn08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29sLXByaWNlIj4ke3IucHJpY2U/YCR7bChyLnByaWNlLnN0YXlUb3RhbCl9PHNtYWxsIGNsYXNzPSJzdWIiPiR7bChhKGB0b3RhbCDCtyAke3IucHJpY2UubmlnaHRseX0vbmlnaHRgLGDmgLvku7cgwrcg5q+P5pmaICR7ci5wcmljZS5uaWdodGx5fWApKX08L3NtYWxsPmA6ci5mcm9tP2A8c21hbGw+JHthKCJGcm9tICIsIiIpfTwvc21hbGw+JHtsKHIuZnJvbSl9PHNtYWxsPiR7YSgiIC8gbmlnaHQiLCIg6LW3L+aZmiIpfTwvc21hbGw+YDoiIn08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0id2h5JHtyLmJlc3RGb3I/IiI6IiBub25lIn0iPiR7ci5iZXN0Rm9yP2woci5iZXN0Rm9yKToiIn08L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0icGMiPiR7Wy4uLihyLnByb3M/P1tdKS5tYXAoaT0+YDxkaXYgY2xhc3M9InBybyI+PHNwYW4gY2xhc3M9Im0iPis8L3NwYW4+PHNwYW4+JHtsKGkpfTwvc3Bhbj48L2Rpdj5gKSwuLi4oci5jb25zPz9bXSkubWFwKGk9PmA8ZGl2IGNsYXNzPSJjb24iPjxzcGFuIGNsYXNzPSJtIj7iiJI8L3NwYW4+PHNwYW4+JHtsKGkpfTwvc3Bhbj48L2Rpdj5gKV0uam9pbigiIil9PC9kaXY+CiAgICA8L2Rpdj5gO3JldHVybltlLnRpdGxlP2A8ZGl2IGNsYXNzPSJoLW5hbWUiPiR7bChlLnRpdGxlKX08L2Rpdj5gOiIiLGUuc3RheT9gPGRpdiBjbGFzcz0iaC13aGVyZSI+JHtsKHJzKGUuc3RheSkpfTwvZGl2PmA6IiIsQXJyYXkuaXNBcnJheShlLmN1cnJlbmNpZXMpJiZlLmN1cnJlbmNpZXMubGVuZ3RoPjE/YDxkaXYgY2xhc3M9Im5vdGUiPiR7bChhKGBQcmljZXMgYXJlIGluIGVhY2ggaG90ZWwncyBvd24gY3VycmVuY3kgKCR7ZS5jdXJyZW5jaWVzLmpvaW4oIiwgIil9KS4gVGhleSBhcmUgbm90IGNvbnZlcnRlZCwgc28gdGhlIGNvbHVtbnMgYXJlIG5vdCBhIHByaWNlIHJhbmtpbmcuYCxg5ZCE5a625Lu35qC85oyJ5ZCE6Ieq5biB56eN77yIJHtlLmN1cnJlbmNpZXMuam9pbigi44CBIil977yJ5pi+56S677yM5LiN5YGa5o2i566X77yM5omA5Lul5LiN6IO95oyJ5YiX5q+U5Lu344CCYCkpfTwvZGl2PmA6IiIsYDxkaXYgY2xhc3M9ImNtcC13cmFwIj48ZGl2IGNsYXNzPSJjbXAke3QubGVuZ3RoPj00PyIgZm91ciI6IiJ9IiBzdHlsZT0iLS1jb2xzOiR7dC5sZW5ndGh9Oy0taGVhZC1yb3dzOiR7bz82OjV9Ij4KICAgICAgIDxkaXYgY2xhc3M9ImNtcC1jb3JuZXIiPjwvZGl2PgogICAgICAgJHt0Lm1hcChzKS5qb2luKCIiKX0KICAgICAgICR7bi5tYXAoKHIsaSk9PmA8ZGl2IGNsYXNzPSJrIj4ke2wocGoocikpfTwvZGl2PiR7dC5tYXAoYz0+YDxkaXYgY2xhc3M9InYke2klMj8iIGFsdCI6IiJ9Ij4ke2wobWooYy5yb3dzPy5baV0/LnZhbHVlPz8i4oCUIikpfTwvZGl2PmApLmpvaW4oIiIpfWApLmpvaW4oIiIpfQogICAgIDwvZGl2PjwvZGl2PmAsTHUoZSksYDxkaXYgY2xhc3M9Im5vdGUiPiR7bCh6PT09ImVuIj9gT3BlbiBhICR7ZS52b2NhYj8ubm91bj8/ImhvdGVsIn0gdG8gc2VlIGl0cyByb29tcyR7ZS5zdGF5Py5jaGVja0luPyIgZm9yIHRoZXNlIG5pZ2h0cyI6IiJ9LmA6ZS5zdGF5Py5jaGVja0luP2EoIk9wZW4gYSBob3RlbCB0byBzZWUgaXRzIHJvb21zIGZvciB0aGVzZSBuaWdodHMuIiwi5omT5byA5LiA5a626YWS5bqX77yM5p+l55yL6L+Z5Lqb5pel5pyf55qE5oi/6Ze044CCIik6YSgiT3BlbiBhIGhvdGVsIHRvIHNlZSBpdHMgcm9vbXMuIiwi5omT5byA5LiA5a626YWS5bqX77yM5p+l55yL5oi/6Ze044CCIikpfTwvZGl2PmBdLmpvaW4oIiIpfSxnaj1lPT57Y29uc3QgdD1lLmRheXM/P1tdLG49dT0+YDxzcGFuIGNsYXNzPSJpbnN0YXRlICR7dS5ib29rZWR8fHUuaW5UcmlwPyJ5ZXMiOiJubyJ9Ij4ke3UuYm9va2VkP2EoYEJvb2tlZCDCtyAke2wodS5ib29rZWQpfWAsYOW3suiuoiDCtyAke2wodS5ib29rZWQpfWApOnUuaW5UcmlwP2EoIkluIHRoZSB0cmlwIiwi5bey5Zyo6KGM56iL5LitIik6YSgiUGxhbiBvbmx5Iiwi5LuF6K6h5YiSIil9PC9zcGFuPmAsbz11PT5gIGRhdGEtaG90ZWw9IiR7bCh1LmlkKX0iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiJHt1LmNoZWNrSW4/YCBkYXRhLWNpPSIke2wodS5jaGVja0luKX0iIGRhdGEtY289IiR7bCh1LmNoZWNrT3V0KX0iYDoiIn1gLHM9dT0+T2UodS5uYW1lLHUubmFtZXM/Lm5hbWUpLnJlcGxhY2UoY24sIiIpLHI9dT0+dS5uYW1lc3x8dS5jaXR5P1tkYSh1KSx2dCh1KV0uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiwgIik6dS5kZXRhaWwsaT11PT56PT09ImVuIj91LnByaWNlOnUuc3RheVRvdGFsP1t1LnN0YXlUb3RhbCxhKGBGb3IgJHtpZSh1Lm5pZ2h0cyl9LCB0YXhlcyBpbmAsYCR7aWUodS5uaWdodHMpfe+8jOWQq+eojui0uWApLHUucm9vbU5hbWVdLmZpbHRlcihCb29sZWFuKS5qb2luKCIgwrcgIik6dS5uaWdodGx5P2EoYCR7dS5uaWdodGx5fSBhIG5pZ2h0YCxg5q+P5pmaICR7dS5uaWdodGx5fWApOnUudW5pdFByaWNlP2Ake3UudW5pdFByaWNlfSAke1lhKHUucGVyKX1gOnUucHJpY2UsYz11PT51LmNoZWNrb3V0P2A8ZGl2IGNsYXNzPSJwbGFuLW5pZ2h0IiR7byh1KX0+PHNwYW4+JHthKGBDaGVjayBvdXQgwrcgJHtsKHModSkpfWAsYOemu+W6lyDCtyAke2wocyh1KSl9YCl9PC9zcGFuPjwvZGl2PmA6TnVtYmVyKHUubmlnaHQ/PzEpPjE/YDxkaXYgY2xhc3M9InBsYW4tbmlnaHQiJHtvKHUpfT4KICAgICAgICAgICA8c3Bhbj4ke2woYShgTmlnaHQgJHt1Lm5pZ2h0fSBvZiAke3UubmlnaHRzfSDCtyAke3ModSl9YCxg56ysICR7dS5uaWdodH0vJHt1Lm5pZ2h0c30g5pmaIMK3ICR7cyh1KX1gKSl9PC9zcGFuPiR7bih1KX0KICAgICAgICAgPC9kaXY+YDpgPGRpdiBjbGFzcz0icGxhbi1zdGF5IiR7byh1KX0+CiAgICAgICAgICAgPHNwYW4gY2xhc3M9InBzLXNob3QiIHN0eWxlPSIke190KFN0cmluZyh1LmlkKSl9Ij4ke3UuaW1hZ2VVcmw/YDxpbWcgc3JjPSIke2wodS5pbWFnZVVybCl9IiBhbHQ9IiI+YDpgPHNwYW4gY2xhc3M9InQtbWFyayI+JHtsKFR0KHModSkpKX08L3NwYW4+YH08L3NwYW4+CiAgICAgICAgICAgPHNwYW4gY2xhc3M9InBzLWJvZHkiPgogICAgICAgICAgICAgPHNwYW4gY2xhc3M9Im5hbWUiPiR7bChzKHUpKX08L3NwYW4+CiAgICAgICAgICAgICA8c3BhbiBjbGFzcz0ibWV0YSI+JHtsKFtyKHUpLHUubmlnaHRzP2EoYCR7aWUodS5uaWdodHMpfSBoZXJlYCxg5Zyo5q2k5L2PJHtpZSh1Lm5pZ2h0cyl9YCk6IiJdLmZpbHRlcihCb29sZWFuKS5qb2luKCIgwrcgIikpfTwvc3Bhbj4KICAgICAgICAgICAgICR7aSh1KT9gPHNwYW4gY2xhc3M9InBzLXByaWNlIj4ke2woaSh1KSl9PC9zcGFuPmA6IiJ9CiAgICAgICAgICAgICAke24odSl9CiAgICAgICAgICAgPC9zcGFuPgogICAgICAgICA8L2Rpdj5gLGg9dT0+YAogICAgPGRpdiBjbGFzcz0icGxhbi1pdGVtIj4KICAgICAgPGRpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJuYW1lIj4ke2wodS5uYW1lKX08L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJtZXRhIj4ke2woW3UuZGV0YWlsLGkodSldLmZpbHRlcihCb29sZWFuKS5qb2luKCIgwrcgIikpfTwvZGl2PgogICAgICA8L2Rpdj4KICAgICAgJHtuKHUpfQogICAgPC9kaXY+YCxkPXU9Pih1LnBsYW4/P1tdKS5sZW5ndGg/YDxvbCBjbGFzcz0ibW9tZW50cyI+JHt1LnBsYW4ubWFwKHA9PmA8bGk+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9IndoZW4iPiR7bChwLnRpbWU/PyIiKX08L3NwYW4+CiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9IndoYXQiPjxiPiR7bChwLndoYXQpfTwvYj4ke3Aubm90ZT9gPHNtYWxsPiR7bChwLm5vdGUpfTwvc21hbGw+YDoiIn08L3NwYW4+CiAgICAgICAgICAgIDwvbGk+YCkuam9pbigiIil9PC9vbD5gOiIiO3JldHVybltgPGRpdj4KICAgICAgIDxkaXYgY2xhc3M9ImgtbmFtZSI+JHtsKGUudGl0bGUpfTwvZGl2PgogICAgICAgJHtlLnN0YXk/YDxkaXYgY2xhc3M9Imgtd2hlcmUiPiR7bChycyhlLnN0YXkpKX08L2Rpdj5gOiIifQogICAgIDwvZGl2PmAsYDxkaXYgY2xhc3M9ImdhcCI+PGI+JHtsKE51bWJlcihlLmluVHJpcD8/MCkrTnVtYmVyKGUuYm9va2VkPz8wKSl9LyR7bChlLnBsYW5uZWQpfTwvYj48c3Bhbj4ke2woej09PSJlbiI/ZS5nYXA/PyIiOmEoYE9mIHRoZSAke2UucGxhbm5lZH0gb24gdGhlIHBsYW4sICR7TnVtYmVyKGUuaW5UcmlwPz8wKStOdW1iZXIoZS5ib29rZWQ/PzApfSBhcmUgaW4gdGhlIHRyaXAgb3IgYm9va2VkOyB0aGUgcmVzdCBhcmUgb25seSBwbGFubmVkLmAsYOiuoeWIkuS4reeahCAke2UucGxhbm5lZH0g6aG56YeM77yMJHtOdW1iZXIoZS5pblRyaXA/PzApK051bWJlcihlLmJvb2tlZD8/MCl9IOmhueW3suWcqOihjOeoi+S4reaIluW3sumihOiuou+8jOWFtuS9meWPquaYr+iuoeWIkuOAgmApKX08L3NwYW4+PC9kaXY+YCxgPGRpdiBjbGFzcz0iZGF5cyI+JHt0Lm1hcCgodSxwKT0+YAogICAgICA8ZGl2IGNsYXNzPSJkYXlyb3ciPgogICAgICAgIDxkaXYgY2xhc3M9ImRheW51bSI+PGI+JHtwKzF9PC9iPjxpPjwvaT48L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJkYXlib2R5Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9ImRheWxhYmVsIj4ke2wodS5sYWJlbCl9JHt1LmRhdGU/YDxzbWFsbD4gwrcgJHtsKHZqKFN0cmluZyh1LmRhdGUpKSl9PC9zbWFsbD5gOiIifTwvZGl2PgogICAgICAgICAgJHt1Lm5vdGU/YDxkaXYgY2xhc3M9ImRheW5vdGUiPiR7bCh1Lm5vdGUpfTwvZGl2PmA6IiJ9CiAgICAgICAgICAke2QodSl9CiAgICAgICAgICAkeyh1Lml0ZW1zPz9bXSkubWFwKG09Pm0ua2luZD09PSJob3RlbCI/YyhtKTpoKG0pKS5qb2luKCIiKX0KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+YCkuam9pbigiIil9PC9kaXY+YCxMdShlKSxiaihlKV0uam9pbigiIil9LGJqPWU9Pntjb25zdCB0PWpiKGUpO2lmKHQ8MClyZXR1cm4iIjtjb25zdCBuPWUuc3VnZ2VzdGlvbnNbdF0uYXNrcyxvPVsuLi5uZXcgU2V0KG4ubWFwKGk9PlN0cmluZyhpLmFyZ3M/LmhvdGVsPz8iIikpKV0scz1pPT4oZS5kYXlzPz9bXSkuZmxhdE1hcChjPT5jLml0ZW1zPz9bXSkuZmluZChjPT5jLmtpbmQ9PT0iaG90ZWwiJiZjLmlkPT09aSk/Lm5hbWUscj1uLmxlbmd0aD09PTE/cyhvWzBdPz8iIik/YShgQm9vayAke3Mob1swXT8/IiIpfWAsYOmihOiuoiR7cyhvWzBdPz8iIil9YCk6YSgiQm9vayB0aGlzIHN0YXkiLCLpooTorqLov5nkuIDmrrUiKTpvLmxlbmd0aD09PW4ubGVuZ3RoP2EoYEJvb2sgdGhlc2UgJHtuLmxlbmd0aH0gaG90ZWxzYCxg6aKE6K6i6L+ZICR7bi5sZW5ndGh9IOWutmApOmEoYEJvb2sgdGhlc2UgJHtuLmxlbmd0aH0gc3RheXNgLGDpooTorqLov5kgJHtuLmxlbmd0aH0g5q615L2P5a6/YCk7cmV0dXJuYDxkaXYgY2xhc3M9ImZvb3QiPjxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtc3VnZ2VzdD0iJHt0fSI+JHtsKHIpfTwvYnV0dG9uPjwvZGl2PmB9LHZqPWU9Pl9lKGUpLHdlPShlLHQ9ITEpPT57aWYoIWV8fHR5cGVvZiBlIT0ib2JqZWN0IilyZXR1cm47Y29uc3Qgbj10JiZlLnZpZXc9PT0ibWVtYmVyIiYmc2U/ey4uLmUsbWVtYmVyOnNlfTplO1ZTKG4pLG4udG9vbE5hbWVzJiYoJHU9bi50b29sTmFtZXMpLChuLmJvb2tpbmdNb2RlPT09InBheS1hdC1ob3RlbCJ8fG4uYm9va2luZ01vZGU9PT0iaG9sZCIpJiYoWmc9bi5ib29raW5nTW9kZSksdHlwZW9mIG4udG9vbE5hbWVzPT0ib2JqZWN0IiYmKFN1PW4uc2FuZGJveD09PSEwLHFnPW4ucGhvbmVSZXF1aXJlZD09PSEwKSxoYSghMSksbi5icmFuZCYmKFRlPVN0cmluZyhuLmJyYW5kKSksbi5hY2NlbnQmJkZnKG4uYWNjZW50KSxuLnByaW1hcnkmJktnKG4ucHJpbWFyeSksbi5mb250cyYmVWcobi5mb250cyksbi5sb2dvVXJsJiYoRXM9U3RyaW5nKG4ubG9nb1VybCkpLG4ubG9nb0RhcmtVcmwmJihMYT1TdHJpbmcobi5sb2dvRGFya1VybCkpLG4uc2hvd05hbWU9PT0hMCYmKFNhPSEwKSxuLnByb2dyYW1tZSYmKEJhPVN0cmluZyhuLnByb2dyYW1tZSkpLG4ubWFya2V0JiZBcnJheS5pc0FycmF5KG4ubWFya2V0LnN1cHBsaWVycykmJihmZT1uLm1hcmtldCksbi52aWV3PT09ImJvb2tpbmciJiYoZnQ9IiIpLG4uY29kZVByZWZpeCYmKEhhPVN0cmluZyhuLmNvZGVQcmVmaXgpKSx0eXBlb2Ygbi5kZW1vPT0iYm9vbGVhbiImJih3dT1uLmRlbW8pLG4uZGVtb05vdGUmJihDZz1TdHJpbmcobi5kZW1vTm90ZSkpLHR5cGVvZiBuLnJvb21zX3dhbnRlZD09Im51bWJlciI/Vz1uLnJvb21zX3dhbnRlZDoobi52aWV3PT09ImhvdGVscyJ8fG4udmlldz09PSJkZXN0aW5hdGlvbnMifHxuLnZpZXc9PT0ibm8taG90ZWxzIikmJm4uc3RheT8uY2hlY2tJbiYmIVh0JiYoVz1NYXRoLm1heCgxLE51bWJlcihuLmFzaz8ucm9vbXM/PzEpfHwxKSksdHx8KG4udmlldz09PSJtZW1iZXIiJiZuLm1lbWJlcj8udGllcj8ubmFtZT9zZT1uLm1lbWJlcjpuLm1lbWJlcj8udGllcj8ubmFtZSYmKHNlPXNlPy5wcm9ncmFtbWU9PT1uLm1lbWJlci5wcm9ncmFtbWUmJnNlPy50aWVyPy5uYW1lPT09bi5tZW1iZXIudGllci5uYW1lP3suLi5zZSwuLi5uLm1lbWJlcixwcmVmZXJlbmNlczpuLm1lbWJlci5wcmVmZXJlbmNlc306bi5tZW1iZXIpLChuLnZpZXc9PT0ic2lnbmVkLW91dCJ8fG4uc2lnbmVkSW49PT0hMSkmJihzZT1udWxsKSksbi5zdGF5Py5jaGVja0luJiZuLnN0YXkuY2hlY2tPdXQ+bi5zdGF5LmNoZWNrSW4mJiFGbiYmIVh0JiYoaj17Y2hlY2tJbjpuLnN0YXkuY2hlY2tJbixjaGVja091dDpuLnN0YXkuY2hlY2tPdXQsZ3Vlc3RzOm4uc3RheS5ndWVzdHM/PzJ9KSwhSm4mJihuLnZpZXc9PT0idHJpcCJ8fG4udmlldz09PSJuZWVkcy1kYXRlcyIpJiYoJHQ9bi5saW5lcz8/W10pLChuLnZpZXc9PT0iYm9va2luZyJ8fG4udmlldz09PSJlbXB0eS10cmlwIikmJigkdD1bXSxPdD0wKSxodD1TdHJpbmcobi52aWV3Pz8iIikseGcoKSxVUyhuKSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgic2tsb2dvIik/LnJlbW92ZSgpO2NvbnN0IG89cSgiYnJhbmQiKTtFcz8oeXUoKSxvLmhpZGRlbj0hMSxxKCJ0aXRsZSIpLmhpZGRlbj0hU2EsU2EmJihxKCJ0aXRsZSIpLnRleHRDb250ZW50PVRlfHxhKCJIb3RlbHMiLCLphZLlupciKSkpOihvLmhpZGRlbj0hMCxxKCJ0aXRsZSIpLmhpZGRlbj0hMSxxKCJ0aXRsZSIpLnRleHRDb250ZW50PVRlfHxhKCJIb3RlbHMiLCLphZLlupciKSkscSgic3ViIikudGV4dENvbnRlbnQ9JGoobiksbF8oKSxTaigpLHdqKCk7Y29uc3Qgcz17aG90ZWxzOmpfLGRlc3RpbmF0aW9uczpmXywibm8taG90ZWxzIjpUXyxob3RlbDpMZCwibm8tcm9vbXMiOkxkLCJob3RlbC1ub3QtZm91bmQiOnU9Pih1LmNhbmRpZGF0ZXM/P1tdKS5sZW5ndGg/RHUodS5xdWVyeSx1LmNhbmRpZGF0ZXMsdS52b2NhYj8ubm91bik6YDxkaXYgY2xhc3M9ImVtcHR5Ij4ke2EoIlRoYXQgaG90ZWwgaXMgbm90IGluIHRoaXMgY29ubmVjdG9yLiIsIui/memHjOayoeaciei/meWutumFkuW6l+OAgiIpfTwvZGl2PmAsZXh0cmFzOkJfLHRyaXA6Vl8sIm5lZWRzLWRhdGVzIjp5aixib29raW5nOnNqLCJuZWVkcy1ndWVzdCI6WV8sbWVtYmVyOlFfLCJtZW1iZXItbm90LWZvdW5kIjpYXywic2lnbmVkLW91dCI6KCk9PmA8ZGl2IGNsYXNzPSJlbXB0eSI+JHthKCJTaWduZWQgb3V0LiBSYXRlcyBhcmUgdGhlIHB1YmxpYyBvbmVzIGFnYWluLiIsIuW3sumAgOWHuueZu+W9le+8jOS7t+agvOaBouWkjeS4uuWFrOW8gOS7t+OAgiIpfTwvZGl2PjxkaXYgY2xhc3M9ImZvb3QiPjxidXR0b24gY2xhc3M9ImdvIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJob21lIj4ke2EoIkZpbmQgYSBob3RlbCIsIuaJvumFkuW6lyIpfTwvYnV0dG9uPjwvZGl2PmAsImVtcHR5LXRyaXAiOigpPT5gPGRpdiBjbGFzcz0iZW1wdHkiPiR7YSgiVGhlcmUgaXMgbm90aGluZyBpbiB0aGUgdHJpcCB5ZXQuIiwi6KGM56iL6YeM6L+Y5rKh5pyJ5YaF5a6544CCIil9PC9kaXY+YCxib29raW5nczpoaiwiY2FuY2VsbGF0aW9uLXByZXZpZXciOlZkLGNhbmNlbGxlZDpWZCwiY2hhbmdlLXByZXZpZXciOldkLGNoYW5nZWQ6V2QsImJvb2tpbmctbm90LWZvdW5kIjooKT0+YDxkaXYgY2xhc3M9ImVtcHR5Ij4ke2EoIk5vIGJvb2tpbmcgaGVyZSBtYXRjaGVzIHRoYXQgY29kZS4iLCLmsqHmnInlkozov5nkuKrnoa7orqTnoIHlr7nlupTnmoTpooTorqLjgIIiKX08L2Rpdj5gLGNvbXBhcmlzb246ZmosIm5vdGhpbmctdG8tY29tcGFyZSI6dT0+KHUuZHJvcHBlZD8/W10pLnNvbWUocD0+KHAuY2FuZGlkYXRlcz8/W10pLmxlbmd0aCk/THUodSk6YDxkaXYgY2xhc3M9ImVtcHR5Ij4ke2EoIk5vbmUgb2YgdGhvc2UgYXJlIGhvdGVscyB0aGlzIGNvbm5lY3RvciBrbm93cy4iLCLov5nkupvpg73kuI3mmK/ov5nph4znmoTphZLlupfjgIIiKX08L2Rpdj5gLGl0aW5lcmFyeTpnaiwiZW1wdHktaXRpbmVyYXJ5IjooKT0+YDxkaXYgY2xhc3M9ImVtcHR5Ij4ke2EoIkFuIGl0aW5lcmFyeSBuZWVkcyBhdCBsZWFzdCBvbmUgZGF5LiIsIuihjOeoi+iuoeWIkuiHs+WwkemcgOimgeS4gOWkqeOAgiIpfTwvZGl2PmAscG9saWN5OlRhLHBvbGljaWVzOlRhLCJwb2xpY3ktbWlzc2luZyI6VGEsZXJyb3I6aWosImZpbmQtYm9va2luZyI6KCk9PlsnPGRpdiBjbGFzcz0ibm90ZSI+QSBib29raW5nIG1hZGUgaW4gYW5vdGhlciBjb252ZXJzYXRpb24gaXMgZm91bmQgd2l0aCB0aGUgY29uZmlybWF0aW9uIGNvZGUgYW5kIHRoZSBlbWFpbCBpdCB3YXMgbWFkZSB3aXRoIC0gYm90aCwgYXMgdGhleSBhcmUgb24gdGhlIGNvbmZpcm1hdGlvbi48L2Rpdj4nLGA8ZGl2IGNsYXNzPSJmb3JtIj4KICAgICAgICAgICA8ZGl2IGNsYXNzPSJ0d28iPgogICAgICAgICAgICAgPGxhYmVsPiR7YSgiQ29uZmlybWF0aW9uIGNvZGUiLCLnoa7orqTnoIEiKX08aW5wdXQgaWQ9ImZjb2RlIiB0eXBlPSJ0ZXh0IiBhdXRvY29tcGxldGU9Im9mZiIke0VkKCk/YCBwbGFjZWhvbGRlcj0iJHtsKEVkKCkpfSJgOiIifT48L2xhYmVsPgogICAgICAgICAgICAgPGxhYmVsPiR7YSgiRW1haWwiLCLpgq7nrrEiKX08aW5wdXQgaWQ9ImZtYWlsIiB0eXBlPSJlbWFpbCIgYXV0b2NvbXBsZXRlPSJvZmYiIHBsYWNlaG9sZGVyPSIke2EoIlRoZSBvbmUgb24gdGhlIGJvb2tpbmciLCLpooTorqLml7bnlKjnmoTpgq7nrrEiKX0iPjwvbGFiZWw+CiAgICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iZ28iIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9Imxvb2t1cC1ib29raW5nIj4ke2EoIkZpbmQgaXQiLCLmn6Xmib4iKX08L2J1dHRvbj4KICAgICAgICAgPC9kaXY+YF0uam9pbigiIiksIm5vLW1lbWJlciI6KCk9PmA8ZGl2IGNsYXNzPSJlbXB0eSI+JHthKCJOb2JvZHkgaXMgc2lnbmVkIGluLCBzbyB0aGVyZSBpcyBub3RoaW5nIHNhdmVkIHRvIGZvcmdldC4iLCLlvZPliY3msqHmnInnmbvlvZXvvIzmsqHmnInlj6/muIXpmaTnmoTlgY/lpb3jgIIiKX08L2Rpdj4ke0hzKCEwKX1gLCJtZW1iZXItc2lnbi1pbiI6KCk9PltgPGRpdiBjbGFzcz0ibm90ZSI+JHthKCJTaWduIGluIHdpdGggdGhlIG1lbWJlcnNoaXAgbnVtYmVyIGFuZCB0aGUgc3VybmFtZSBwcmludGVkIG9uIHRoZSBjYXJkIHRvIHNlZSB0aGUgbWVtYmVyIHJhdGUgb24gZXZlcnkgcHJpY2UgaGVyZS4iLCLnlKjljaHkuIrljbDnmoTkvJrlkZjlj7flkozlp5PmsI/nmbvlvZXvvIzov5nph4znmoTmr4/kuKrku7fmoLzpg73kvJrmmL7npLrkvJrlkZjku7fjgIIiKX08L2Rpdj5gLEhzKCEwKV0uam9pbigiIil9OyhodD09PSJob3RlbCJ8fGh0PT09Im5vLXJvb21zInx8aHQ9PT0ibmVlZHMtZGF0ZXMiKSYmbi5ob3RlbD8uaWQ/KFl0PVN0cmluZyhuLmhvdGVsLmlkKSxuLm5lZWRzRGF0ZXMmJnNldFRpbWVvdXQoKCk9PlF0KDAsIXVhKSwwKSk6KFl0PSIiLEJ1KCkpO2NvbnN0IHI9UnQobikhPT1SdCh4KTt4PW47Y29uc3QgaT1zW2h0XTtxKCJjb250ZW50IikuaW5uZXJIVE1MPShpP2kobik6YDxkaXYgY2xhc3M9ImVyciI+JHtsKG4uZXJyb3I/P2EoIlNvbWV0aGluZyBjYW1lIGJhY2sgdGhhdCB0aGlzIGNhcmQgZG9lcyBub3Qga25vdyBob3cgdG8gZHJhdy4iLCLmlLbliLDkuobov5nlvKDljaHniYfml6Dms5XmmL7npLrnmoTlhoXlrrnjgIIiKSl9JHtuLmRldGFpbD9gPGJyPiR7bChuLmRldGFpbCl9YDoiIn08L2Rpdj5gKStraihuKTtjb25zdCBjPXEoImNvbnRlbnQiKTtjLmNsYXNzTGlzdC5yZW1vdmUoImVudGVyIiksciYmZG9jdW1lbnQudmlzaWJpbGl0eVN0YXRlIT09ImhpZGRlbiImJihjLm9mZnNldFdpZHRoLGMuY2xhc3NMaXN0LmFkZCgiZW50ZXIiKSk7Y29uc3QgaD1kb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjY29udGVudCAuZmxleC1kYXRlcyIpLGQ9aD8ucXVlcnlTZWxlY3RvcigiLmZkLm9uIik7aWYoaCYmZCl7Y29uc3QgdT1bLi4uaC5xdWVyeVNlbGVjdG9yQWxsKCIuZmQiKV0scD11WzBdPy5vZmZzZXRMZWZ0Pz8wLG09ZC5vZmZzZXRMZWZ0LShoLmNsaWVudFdpZHRoLWQub2Zmc2V0V2lkdGgpLzIseT11LmZpbHRlcihTPT5TLm9mZnNldExlZnQ8PW0rMSkucG9wKCk/P3VbMF07aC5zY3JvbGxMZWZ0PU1hdGgubWF4KDAsKHk/Lm9mZnNldExlZnQ/P3ApLXApO2NvbnN0ICQ9KCk9PntoLmNsYXNzTGlzdC50b2dnbGUoImF0LXN0YXJ0IixoLnNjcm9sbExlZnQ8PTIpLGguY2xhc3NMaXN0LnRvZ2dsZSgiYXQtZW5kIixoLnNjcm9sbExlZnQraC5jbGllbnRXaWR0aD49aC5zY3JvbGxXaWR0aC0yKX07JCgpLGguYWRkRXZlbnRMaXN0ZW5lcigic2Nyb2xsIiwkLHtwYXNzaXZlOiEwfSl9aHQ9PT0iaG90ZWxzIiYmIVFuKCkmJihDdT16dSgpLG1hKE51bWJlcihuLnRvdGFsPz8wKS1OdW1iZXIobi5vZmZzZXQ/PzApKSE9PURzJiZ3ZShuLHQpKX0samI9ZT0+ZT8udmlldz09PSJpdGluZXJhcnkiPyhlLnN1Z2dlc3Rpb25zPz9bXSkuZmluZEluZGV4KHQ9PkFycmF5LmlzQXJyYXkodD8uYXNrcykmJnQuYXNrcy5sZW5ndGg+MCYmdC5hc2tzLmV2ZXJ5KG49Pm4/LnRvb2w9PT0iYWRkVG9UcmlwIikpOi0xLGtqPWU9Pntjb25zdCB0PSEhSWUuZ2V0SG9zdENhcGFiaWxpdGllcygpPy5tZXNzYWdlLG49cj0+bChTdHJpbmcocj8/IiIpLnJlcGxhY2UoLyIoW14iXSopIi9nLCLigJwkMeKAnSIpKSxvPWpiKGUpLHM9KGUuc3VnZ2VzdGlvbnM/P1tdKS5tYXAoKHIsaSk9Pmk9PT1vPyIiOnI/LmFza3x8cj8uYXNrcz8ubGVuZ3RoP2A8YnV0dG9uIGNsYXNzPSJjaGlwIG5leHQiIHR5cGU9ImJ1dHRvbiIgZGF0YS1zdWdnZXN0PSIke2l9Ij48c3Bhbj4ke24oci5sYWJlbCl9PC9zcGFuPiR7SS5hcnJvd308L2J1dHRvbj5gOnI/LnNheSYmdD9gPGJ1dHRvbiBjbGFzcz0iY2hpcCBuZXh0IHNheSIgdHlwZT0iYnV0dG9uIiBkYXRhLXN1Z2dlc3Q9IiR7aX0iPjxzcGFuPiR7bihyLmxhYmVsKX0gPHNtYWxsPiR7YSgiwrcgaW4gdGhlIGNoYXQiLCLCtyDlnKjlr7nor53ph4wiKX08L3NtYWxsPjwvc3Bhbj4ke0kuYXJyb3d9PC9idXR0b24+YDoiIikuam9pbigiIik7cmV0dXJuIHM/YDxkaXYgY2xhc3M9InN1Z2dlc3QiPjxkaXYgY2xhc3M9IndsIj4ke2EoIk5leHQiLCLmjqXkuIvmnaUiKX08L2Rpdj4ke3N9PC9kaXY+YDoiIn0seWo9ZT0+W2UuaG90ZWw/Y2IoZS5ob3RlbCk6IiIsYDxkaXYgY2xhc3M9ImVyciI+JHtsKHohPT0iZW4iJiZlLndoeUNvZGUmJnliW1N0cmluZyhlLndoeUNvZGUpXT9McyhlLndoeSxlLndoeUNvZGUsZS53aHlBcmdzKTp6IT09ImVuIiYmIShsbigpJiZ1bihTdHJpbmcoZS53aHk/PyIiKSkpP2EoIkNob29zZSB0aGUgY2hlY2staW4gYW5kIGNoZWNrLW91dCBkYXRlcyBiZWZvcmUgdGhlIHJvb20gZ29lcyBpbnRvIHRoZSB0cmlwLiIsIuivt+WFiOmAieWlveWFpeS9j+WSjOemu+W6l+aXpeacn++8jOWGjeaKiuaIv+mXtOWKoOWFpeihjOeoi+OAgiIpOmUud2h5Pz8iV2hpY2ggbmlnaHRzPyBBIHJvb20gbmVlZHMgYSBjaGVjay1pbiBhbmQgYSBjaGVjay1vdXQgZGF0ZS4iKX08L2Rpdj5gLFlnKFN0cmluZyhlLmhvdGVsPy5pZD8/IiIpLGUuaG90ZWw/LnRvZGF5VGhlcmUpXS5qb2luKCIiKSwkaj1lPT5lLnZpZXc9PT0iaG90ZWxzInx8ZS52aWV3PT09ImhvdGVsInx8ZS52aWV3PT09Im5vLXJvb21zInx8ZS52aWV3PT09InRyaXAiPyIiOmUudmlldz09PSJjb21wYXJpc29uIj9hKGAkeyhlLmNvbHVtbnM/P1tdKS5sZW5ndGh9IHNpZGUgYnkgc2lkZWAsYCR7KGUuY29sdW1ucz8/W10pLmxlbmd0aH0g5a625a+55q+UYCk6ZS52aWV3PT09Iml0aW5lcmFyeSI/TnVtYmVyKGUuYm9va2VkKT4wP2EoYCR7ZS5ib29rZWR9LyR7ZS5wbGFubmVkfSBib29rZWRgLGDlt7LorqIgJHtlLmJvb2tlZH0vJHtlLnBsYW5uZWR9YCk6YShgJHtlLmluVHJpcH0vJHtlLnBsYW5uZWR9IGluIHRoZSB0cmlwYCxg6KGM56iL5LitICR7ZS5pblRyaXB9LyR7ZS5wbGFubmVkfWApOmUudmlldz09PSJib29raW5ncyI/TnVtYmVyKGUuY291bnQpPT09MT9hKCIxIGJvb2tpbmciLCIxIOeslOmihOiuoiIpOmEoYCR7ZS5jb3VudD8/MH0gYm9va2luZ3NgLGAke2UuY291bnQ/PzB9IOeslOmihOiuomApOiIiLHdqPSgpPT57Y29uc3QgZT1xKCJtZW1iZXJjaGlwIik7c2U/KGUuaGlkZGVuPSExLGUudGV4dENvbnRlbnQ9c2UudGllcj8ubmFtZT9hKGAke3NlLnRpZXIubmFtZX0gwrcgJHtNYXRoLnJvdW5kKChzZS50aWVyPy5kaXNjb3VudD8/MCkqMTAwKX0lIG9mZmAsYCR7c2UudGllci5uYW1lfSDCtyDkvJjmg6AgJHtNYXRoLnJvdW5kKChzZS50aWVyPy5kaXNjb3VudD8/MCkqMTAwKX0lYCk6YShgTWVtYmVyIMK3ICR7TWF0aC5yb3VuZCgoc2UudGllcj8uZGlzY291bnQ/PzApKjEwMCl9JSBvZmZgLGDkvJrlkZggwrcg5LyY5oOgICR7TWF0aC5yb3VuZCgoc2UudGllcj8uZGlzY291bnQ/PzApKjEwMCl9JWApLGUuc2V0QXR0cmlidXRlKCJkYXRhLWFjdCIsIm1lbWJlciIpLGUuc2V0QXR0cmlidXRlKCJ0aXRsZSIsW3NlLm5hbWUsc2UucHJvZ3JhbW1lXS5maWx0ZXIodD0+dHlwZW9mIHQ9PSJzdHJpbmciJiZ0KS5qb2luKCIgwrcgIikpKTooZS5oaWRkZW49IXNzKCJzaWduSW4iKXx8aHQ9PT0ibWVtYmVyLW5vdC1mb3VuZCIsZS50ZXh0Q29udGVudD1hKCJNZW1iZXIgc2lnbiBpbiIsIuS8muWRmOeZu+W9lSIpLGUuc2V0QXR0cmlidXRlKCJkYXRhLWFjdCIsImFzay1zaWduLWluIiksZS5yZW1vdmVBdHRyaWJ1dGUoInRpdGxlIikpfSxTaj0oKT0+e2NvbnN0IGU9cSgiaGVhZHRyaXAiKSx0PUpuP090Ok90fHwkdC5sZW5ndGg7ZS5oaWRkZW49dD09PTB8fGh0PT09InRyaXAiLHEoImhlYWR0cmlwbiIpLnRleHRDb250ZW50PVN0cmluZyh0KX0sQWE9KCk9Pntjb25zdCBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjaSIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvIiksbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3UiKTtqPXtjaGVja0luOmU/LnZhbHVlPz9qLmNoZWNrSW4sY2hlY2tPdXQ6dD8udmFsdWU/P2ouY2hlY2tPdXQsZ3Vlc3RzOk51bWJlcihuPy52YWx1ZT8/ai5ndWVzdHMpfHwyfX0sWm49KGU9e30pPT5qLmNoZWNrSW4mJmouY2hlY2tPdXQ/e2NoZWNrSW46ai5jaGVja0luLGNoZWNrT3V0OmouY2hlY2tPdXQsZ3Vlc3RzOmouZ3Vlc3RzLC4uLmV9OmU7bGV0IG5pLEZuPSExO2NvbnN0IEJ1PSgpPT57Y2xlYXJUaW1lb3V0KG5pKSxGbj0hMX0sUXQ9KGU9MCx0PSExKT0+e1l0JiYoY2xlYXJUaW1lb3V0KG5pKSxGbj0hMCxuaT1zZXRUaW1lb3V0KCgpPT57aWYoIVl0KXtGbj0hMTtyZXR1cm59aWYoeG4pe1F0KDE1MCx0KTtyZXR1cm59Rm49ITEsWigiZ2V0SG90ZWwiLHtob3RlbDpZdCxyb29tczpXLC4uLlpuKCl9LHQ/e25vdGU6R1N9Ont9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aG9zZSBuaWdodHMuIiwi5rKh6IO95Yqg6L296L+Z5Lqb5pel5pyf44CCIikpKX0sZSkpfSxrcz0oKT0+e2Zvcihjb25zdCBlIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLXJvb21zLW5dLFtkYXRhLWxpc3Qtcm9vbXNdIikpe2NvbnN0IHQ9TnVtYmVyKGUuZ2V0QXR0cmlidXRlKCJkYXRhLXJvb21zLW4iKT8/ZS5nZXRBdHRyaWJ1dGUoImRhdGEtbGlzdC1yb29tcyIpKTtlLmRpc2FibGVkPXQ8MD9XPD0xOlc+PUp0fWZvcihjb25zdCBlIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLWd1ZXN0cy1uXSIpKXtjb25zdCB0PU51bWJlcihlLmdldEF0dHJpYnV0ZSgiZGF0YS1ndWVzdHMtbiIpKTtlLmRpc2FibGVkPXQ8MD9qLmd1ZXN0czw9MTpqLmd1ZXN0cz49cXN9Zm9yKGNvbnN0IGUgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtZ3Vlc3RzLXNob3duXSIpKWUudGV4dENvbnRlbnQ9U3RyaW5nKGouZ3Vlc3RzKTtmb3IoY29uc3QgZSBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1wYXJ0eS13b3Jkc10iKSllLnRleHRDb250ZW50PVFnKCl9LE89ZT0+e2Zvcihjb25zdCB0IG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5zYWlkIikpdC5yZW1vdmUoKTtxKCJjb250ZW50IikuaW5zZXJ0QWRqYWNlbnRIVE1MKCJhZnRlcmJlZ2luIixgPGRpdiBjbGFzcz0iZXJyIHNhaWQiIHJvbGU9ImFsZXJ0Ij4ke2woZSl9PC9kaXY+YCl9LF9qPWU9Pntmb3IoY29uc3QgbiBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCIuZmllbGQtZXJyLC5mb3JtLWVyciIpKW4ucmVtb3ZlKCk7Zm9yKGNvbnN0IG4gb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2FyaWEtaW52YWxpZD0idHJ1ZSJdJykpbi5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIpO2lmKCFlLmxlbmd0aClyZXR1cm47Zm9yKGNvbnN0W24sLG9db2YgZSl7Y29uc3Qgcz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChuKTtzJiYocy5zZXRBdHRyaWJ1dGUoImFyaWEtaW52YWxpZCIsInRydWUiKSxzLnNldEF0dHJpYnV0ZSgiYXJpYS1kZXNjcmliZWRieSIsYCR7bn0tZXJyYCkscy5pbnNlcnRBZGphY2VudEhUTUwoImFmdGVyZW5kIixgPHNwYW4gY2xhc3M9ImZpZWxkLWVyciIgaWQ9IiR7bn0tZXJyIj4ke0kuZXJyb3J9PHNwYW4+JHtsKG8pfTwvc3Bhbj48L3NwYW4+YCkpfWNvbnN0IHQ9ZS5tYXAoKFssbl0pPT5uKTtkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZ3Vlc3QgW2RhdGEtYWN0PSJib29rIl0nKT8uaW5zZXJ0QWRqYWNlbnRIVE1MKCJiZWZvcmViZWdpbiIsYDxkaXYgY2xhc3M9ImZvcm0tZXJyIiByb2xlPSJhbGVydCI+JHtJLmVycm9yfTxzcGFuPiR7bChlLmxlbmd0aD09PTE/YShgQ2hlY2sgJHt0WzBdfSBiZWZvcmUgYm9va2luZy5gLGDpooTorqLliY3or7fmo4Dmn6XvvJoke3RbMF1944CCYCk6YShgJHtlLmxlbmd0aH0gdGhpbmdzIHRvIGNoZWNrIGJlZm9yZSBib29raW5nOiAke1hhKHQpfS5gLGDpooTorqLliY3mnIkgJHtlLmxlbmd0aH0g6aG56ZyA6KaB5qOA5p+l77yaJHt0LmpvaW4oIuOAgSIpfeOAgmApKX08L3NwYW4+PC9kaXY+YCksZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZVswXVswXSk/LmZvY3VzKCl9O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixlPT57Y29uc3QgdD1lLnRhcmdldDshdD8uY2xvc2VzdCgiI2d1ZXN0Iil8fHQuZ2V0QXR0cmlidXRlKCJhcmlhLWludmFsaWQiKSE9PSJ0cnVlInx8dC52YWx1ZS50cmltKCkmJih0LnJlbW92ZUF0dHJpYnV0ZSgiYXJpYS1pbnZhbGlkIiksdC5yZW1vdmVBdHRyaWJ1dGUoImFyaWEtZGVzY3JpYmVkYnkiKSxkb2N1bWVudC5nZXRFbGVtZW50QnlJZChgJHt0LmlkfS1lcnJgKT8ucmVtb3ZlKCksZG9jdW1lbnQucXVlcnlTZWxlY3RvcignI2d1ZXN0IFthcmlhLWludmFsaWQ9InRydWUiXScpfHxkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjZ3Vlc3QgLmZvcm0tZXJyIik/LnJlbW92ZSgpKX0pO2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImNsaWNrIixlPT57Y29uc3QgdD1lLnRhcmdldD8uY2xvc2VzdCgiW2RhdGEtaG90ZWxdLFtkYXRhLWFjdF0sW2RhdGEtcG9saWN5XSxbZGF0YS1jYW5jZWxdLFtkYXRhLWNvbmZpcm0tY2FuY2VsXSxbZGF0YS1jb25maXJtLWNoYW5nZV0sW2RhdGEtZXh0cmFzXSxbZGF0YS1yb29tcy1uXSxbZGF0YS1hc2tdLFtkYXRhLWJvb2tpbmctZXh0cmFzXSxbZGF0YS1ib29raW5nLWV4dHJhXSxbZGF0YS1zdWdnZXN0XSxbZGF0YS1wbGFjZV0sW2RhdGEtcGxhY2UtYWxsXSxbZGF0YS1zb3J0XSxbZGF0YS1saXN0LXJvb21zXSxbZGF0YS1maWx0ZXJdLFtkYXRhLXBhbmVsXSxbZGF0YS1yZWdpb25dLFtkYXRhLWdyb3VwLWhvbWVdLFtkYXRhLWNhbF0sW2RhdGEtZGF5XSxbZGF0YS1jYWwtbmF2XSxbZGF0YS1jYWwtY2xvc2VdLFtkYXRhLWhvdXItc3RhcnRdLFtkYXRhLWFycml2ZV0sW2RhdGEtcGFydHldLFtkYXRhLWd1ZXN0cy1uXSxbZGF0YS1zcGxpdF0sW2RhdGEtb3Blbi1ib29raW5nXSxbZGF0YS1zd2FwXSxbZGF0YS1yZXNlYXJjaF0sW2RhdGEtbGFuZ10iKTtpZighdClyZXR1cm47Y29uc3Qgbj10LmdldEF0dHJpYnV0ZSgiZGF0YS1jYWwiKTtpZihuIT09bnVsbCl7Y29uc3RbdixfXT1uLnNwbGl0KCI6Iik7anVbdl0mJnBfKHYsXz09PSJvdXQiPyJvdXQiOiJpbiIpO3JldHVybn1jb25zdCBvPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWRheSIpO2lmKG8hPT1udWxsKXttXyhvKTtyZXR1cm59Y29uc3Qgcz10LmdldEF0dHJpYnV0ZSgiZGF0YS1jYWwtbmF2Iik7aWYocyE9PW51bGwmJk0pe00ubW9udGg9VmEoTS5tb250aCxOdW1iZXIocykpLFp0KE0ucGFpcixgW2RhdGEtY2FsLW5hdj0iJHtzfSJdYCk7cmV0dXJufWlmKHQuaGFzQXR0cmlidXRlKCJkYXRhLWNhbC1jbG9zZSIpJiZNKXtjb25zdHtwYWlyOnZ9PU07TS5pbj9YZygpOihNPW51bGwsWnQodikpO3JldHVybn1jb25zdCByPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWFzayIpO2lmKHIhPT1udWxsKXtjb25zdCB2PXQuZ2V0QXR0cmlidXRlKCJhcmlhLXByZXNzZWQiKSE9PSJ0cnVlIjt0LnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIixTdHJpbmcodikpO2NvbnN0IF89S19bcl07diYmXyYmZG9jdW1lbnQucXVlcnlTZWxlY3RvcihgLmFza1tkYXRhLWFzaz0iJHtffSJdYCk/LnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIiwiZmFsc2UiKSxvaSgpO3JldHVybn1jb25zdCBpPXQuZ2V0QXR0cmlidXRlKCJkYXRhLXNwbGl0Iik7aWYoaSE9PW51bGwpe2NvbnN0W3YsX109aS5zcGxpdCgiOiIpLm1hcChOdW1iZXIpO0FhKCksVz1NYXRoLm1pbihKdCxNYXRoLm1heCgxLHZ8fDEpKSxqLmd1ZXN0cz1NYXRoLm1pbihxcyxNYXRoLm1heCgxLF98fDEpKSxrcygpLFF0KDApO3JldHVybn1pZih0Lmhhc0F0dHJpYnV0ZSgiZGF0YS1wYXJ0eSIpKXtXdD0hV3Q7Zm9yKGNvbnN0IHYgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtcGFydHldIikpdi5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLFN0cmluZyhXdCkpO2Zvcihjb25zdCB2IG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIi5wYXJ0eS1wYW5lbCIpKXYuaGlkZGVuPSFXdDtyZXR1cm59Y29uc3QgYz10LmdldEF0dHJpYnV0ZSgiZGF0YS1ndWVzdHMtbiIpO2lmKGMhPT1udWxsKXt0LmdldEF0dHJpYnV0ZSgiZGF0YS1vbiIpPT09ImRhdGEtcm9vbXMtbiImJkFhKCksai5ndWVzdHM9TWF0aC5taW4ocXMsTWF0aC5tYXgoMSxqLmd1ZXN0cytOdW1iZXIoYykpKSxrcygpLHQuZ2V0QXR0cmlidXRlKCJkYXRhLW9uIik9PT0iZGF0YS1saXN0LXJvb21zIj9Vbig0NTApOll0JiZRdCg0NTApO3JldHVybn1jb25zdCBoPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWxpc3Qtcm9vbXMiKTtpZihoIT09bnVsbCl7Vz1NYXRoLm1pbihKdCxNYXRoLm1heCgxLFcrTnVtYmVyKGgpKSk7Y29uc3Qgdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibHJuIik7diYmKHYudGV4dENvbnRlbnQ9U3RyaW5nKFcpKSxrcygpLFVuKDQ1MCk7cmV0dXJufWNvbnN0IGQ9dC5nZXRBdHRyaWJ1dGUoImRhdGEtcm9vbXMtbiIpO2lmKGQhPT1udWxsKXtBYSgpLFc9TWF0aC5taW4oSnQsTWF0aC5tYXgoMSxXK051bWJlcihkKSkpO2NvbnN0IHY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInJuIik7diYmKHYudGV4dENvbnRlbnQ9U3RyaW5nKFcpKSxrcygpO2NvbnN0IF89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm5pZ2h0cyIpO18mJihfLnRleHRDb250ZW50PWViKCkpLFF0KDQ1MCk7cmV0dXJufWNvbnN0IHU9dC5nZXRBdHRyaWJ1dGUoImRhdGEtYXJyaXZlIik7aWYodSE9PW51bGwpe2NvbnN0IHY9dC5nZXRBdHRyaWJ1dGUoImFyaWEtcHJlc3NlZCIpIT09InRydWUiO2Zvcihjb25zdCBGIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLWFycml2ZV0iKSlGLnNldEF0dHJpYnV0ZSgiYXJpYS1wcmVzc2VkIixTdHJpbmcodiYmRj09PXQpKTtjb25zdCBfPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJndGltZSIpO18mJihfLnZhbHVlPXY/dToiIiksb2koKTtyZXR1cm59Y29uc3QgcD10LmdldEF0dHJpYnV0ZSgiZGF0YS1ob3VyLXN0YXJ0Iik7aWYocCE9PW51bGwpe1J1LnNldCh0LmdldEF0dHJpYnV0ZSgiZGF0YS1yb29tIik/PyIiLHApLHgmJndlKHgpO3JldHVybn1jb25zdCBtPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWFkZC1yb29tIik7aWYobSE9PW51bGwmJnQuaGFzQXR0cmlidXRlKCJkYXRhLXN0YXJ0Iikpe1ooImFkZFRvVHJpcCIse2hvdGVsOnQuZ2V0QXR0cmlidXRlKCJkYXRhLWhvdGVsIik/PyIiLHJvb206bSxzdGFydFRpbWU6dC5nZXRBdHRyaWJ1dGUoImRhdGEtc3RhcnQiKT8/IiIscm9vbXM6TnVtYmVyKHQuZ2V0QXR0cmlidXRlKCJkYXRhLW4iKT8/MSl8fDEsZ3Vlc3RzOmouZ3Vlc3RzfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGNoYW5nZSB0aGUgdHJpcC4iLCLmsqHog73mm7TmlrDooYznqIvjgIIiKSkpO3JldHVybn1pZihtIT09bnVsbCl7Y29uc3Qgdj10LmdldEF0dHJpYnV0ZSgiZGF0YS1ob3RlbCIpPz8iIixfPXQuY2xhc3NMaXN0LmNvbnRhaW5zKCJhZGQiKSYmIXQuaGFzQXR0cmlidXRlKCJkYXRhLWNpIik/VzpOdW1iZXIodC5nZXRBdHRyaWJ1dGUoImRhdGEtbiIpPz8xKSxGPXQuaGFzQXR0cmlidXRlKCJkYXRhLWNpIik/e2NoZWNrSW46dC5nZXRBdHRyaWJ1dGUoImRhdGEtY2kiKT8/IiIsY2hlY2tPdXQ6dC5nZXRBdHRyaWJ1dGUoImRhdGEtY28iKT8/IiIsZ3Vlc3RzOk51bWJlcih0LmdldEF0dHJpYnV0ZSgiZGF0YS1ndSIpPz8yKX06Wm4oKTtaKCJhZGRUb1RyaXAiLHtob3RlbDp2LHJvb206bSxyb29tczpfLC4uLkZ9LHtzdGF5OiEhdC5jbG9zZXN0KCIucm9vbSIpJiYhdC5jbGFzc0xpc3QuY29udGFpbnMoImFkZCIpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGNoYW5nZSB0aGUgdHJpcC4iLCLmsqHog73mm7TmlrDooYznqIvjgIIiKSkpO3JldHVybn1jb25zdCB5PXQuZ2V0QXR0cmlidXRlKCJkYXRhLWxhbmciKTtpZih5IT09bnVsbCl7aWYoa3UuaW5jbHVkZXMoeSkpe0pnPXk7dHJ5e3dpbmRvdy5sb2NhbFN0b3JhZ2U/LnNldEl0ZW0oR2cseSl9Y2F0Y2h7fX1xKCJsYW5nbWVudSIpLmhpZGRlbj0hMCxxKCJsYW5nYnRuIikuc2V0QXR0cmlidXRlKCJhcmlhLWV4cGFuZGVkIiwiZmFsc2UiKSxoYSgpO3JldHVybn1pZih0LmdldEF0dHJpYnV0ZSgiZGF0YS1hY3QiKT09PSJsYW5nLW1lbnUiKXtjb25zdCB2PXEoImxhbmdtZW51IikuaGlkZGVuO3EoImxhbmdtZW51IikuaGlkZGVuPSF2LHEoImxhbmdidG4iKS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLHY/InRydWUiOiJmYWxzZSIpO3JldHVybn1jb25zdCAkPXQuZ2V0QXR0cmlidXRlKCJkYXRhLXN3YXAiKTtpZigkIT09bnVsbCl7VWQoKTtjb25zdFt2LF9dPSQuc3BsaXQoIjoiKS5tYXAoTnVtYmVyKSxGPSh4Py5mYWlsZWQ/P1tdKVt2Pz8tMV0sZGU9Rj8uYWx0ZXJuYXRpdmVzPy5bXz8/LTFdO2lmKCFGfHwhZGU/LnJvb20pcmV0dXJuO2NvbnN0IEplPXtjaGVja0luOkYuc3RheT8uY2hlY2tJbixjaGVja091dDpGLnN0YXk/LmNoZWNrT3V0LGd1ZXN0czpGLnN0YXk/Lmd1ZXN0cz8/ai5ndWVzdHN9Oyhhc3luYygpPT57Zm9yKGNvbnN0IFdlIG9mIEYucm9vbVJlZnM/P1tdKWF3YWl0IFooImFkZFRvVHJpcCIse2hvdGVsOkYuaG90ZWxJZCxyb29tOldlLHJvb21zOjAsLi4uSmV9LHtzdGF5OiEwfSk7Zm9yKGNvbnN0IFdlIG9mIEYuZXh0cmFSZWZzPz9bXSlhd2FpdCBaKCJhZGRUb1RyaXAiLHtob3RlbDpGLmhvdGVsSWQsZXh0cmE6V2UscXVhbnRpdHk6MH0se3N0YXk6ITB9KTthd2FpdCBaKCJhZGRUb1RyaXAiLHtob3RlbDpkZS5ob3RlbElkLHJvb206ZGUucm9vbSxyb29tczpGLnJvb21zPz8xLC4uLkplfSl9KSgpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBjaGFuZ2UgdGhlIHRyaXAuIiwi5rKh6IO95pu05paw6KGM56iL44CCIikpKTtyZXR1cm59aWYodC5nZXRBdHRyaWJ1dGUoImRhdGEtYWN0Iik9PT0icmV0cnktdHJpcCIpe1VkKCksWigidmlld1RyaXAiLHt9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aGUgdHJpcC4iLCLmsqHog73liqDovb3ooYznqIvjgIIiKSkpO3JldHVybn1jb25zdCBTPXQuZ2V0QXR0cmlidXRlKCJkYXRhLXJlc2VhcmNoIik7aWYoUyE9PW51bGwpe2NvbnN0IHY9KHg/LmZhaWxlZD8/W10pW051bWJlcihTKV07aWYoIXY/LmNpdHkpcmV0dXJuO1ooImxpc3RIb3RlbHMiLHtjaXR5OnYuY2l0eSxjaGVja0luOnYuc3RheT8uY2hlY2tJbixjaGVja091dDp2LnN0YXk/LmNoZWNrT3V0LGd1ZXN0czp2LnN0YXk/Lmd1ZXN0cz8/ai5ndWVzdHMsLi4uTnVtYmVyKHYucm9vbXMpPjE/e3Jvb21zOk51bWJlcih2LnJvb21zKX06e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aGUgaG90ZWxzLiIsIuayoeiDveWKoOi9vemFkuW6l+OAgiIpKSk7cmV0dXJufWNvbnN0IE49dC5nZXRBdHRyaWJ1dGUoImRhdGEtYWRkLWV4dHJhIik7aWYoTiE9PW51bGwpe2NvbnN0IHY9dC5nZXRBdHRyaWJ1dGUoImRhdGEtZGF5Iik7WigiYWRkVG9UcmlwIix7aG90ZWw6dC5nZXRBdHRyaWJ1dGUoImRhdGEtaG90ZWwiKT8/IiIsZXh0cmE6TixxdWFudGl0eTpOdW1iZXIodC5nZXRBdHRyaWJ1dGUoImRhdGEtbiIpPz8xKSwuLi52P3tkYXk6dn06e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgY2hhbmdlIHRoZSB0cmlwLiIsIuayoeiDveabtOaWsOihjOeoi+OAgiIpKSk7cmV0dXJufWNvbnN0IEU9dC5nZXRBdHRyaWJ1dGUoImRhdGEtcGxhY2UiKTtpZihFIT09bnVsbCl7Y29uc3Qgdj14Py5hc2s/LnNvcnQsXz14Py52aWV3PT09ImhvdGVscyI/eD8uYXNrPy5xdWVyeTp2b2lkIDA7c2koKTtjb25zdCBGPXg/LnZpZXc9PT0iZGVzdGluYXRpb25zInx8ISF4Py5zdGF5Py5jaGVja0luO1ooImxpc3RIb3RlbHMiLHsuLi5FP3tjaXR5OkV9Ont9LC4uLnY/e3NvcnQ6dn06e30sLi4uRSYmXz97cXVlcnk6X306e30sLi4ueD8udmlldz09PSJob3RlbHMiP19zKHg/LmFzayk6e30sLi4uRj9LdCgpOnt9fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhvc2UgaG90ZWxzLiIsIuayoeiDveWKoOi9vei/meS6m+mFkuW6l+OAgiIpKSk7cmV0dXJufWNvbnN0IFQ9dC5nZXRBdHRyaWJ1dGUoImRhdGEtZ3JvdXAtaG9tZSIpO2lmKFQpe1ooImxpc3RIb3RlbHMiLHthbGw6ITAsZ3JvdXA6VCwuLi5LdCgpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhvc2UgaG90ZWxzLiIsIuayoeiDveWKoOi9vei/meS6m+mFkuW6l+OAgiIpKSk7cmV0dXJufWNvbnN0IEE9dC5nZXRBdHRyaWJ1dGUoImRhdGEtZmlsdGVyIik7aWYoQT09PSJob3VybHkiKXtjb25zdHtob3VybHk6diwuLi5ffT14Py5hc2s/P3t9O1ooImxpc3RIb3RlbHMiLHsuLi5TcyhfKSwuLi52P3t9Ontob3VybHk6ITB9fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGZpbHRlciB0aGUgbGlzdC4iLCLmsqHog73nrZvpgInliJfooajjgIIiKSkpO3JldHVybn1pZihBIT09bnVsbCl7Y29uc3Qgdj14Py5hc2s/P3t9LF89X3Modik7aWYoQS5zdGFydHNXaXRoKCJncm91cDoiKSl7Y29uc3QgZGU9QS5zbGljZSg2KTtfLmdyb3VwPV8uZ3JvdXA9PT1kZT92b2lkIDA6ZGV9ZWxzZSBpZihBLnN0YXJ0c1dpdGgoImJyYW5kOiIpKXtjb25zdCBkZT1BLnNsaWNlKDYpO18uYnJhbmQ9Xy5icmFuZD09PWRlP3ZvaWQgMDpkZX1lbHNlIGlmKEEuc3RhcnRzV2l0aCgiZmFjaWxpdHk6Iikpe2NvbnN0IGRlPUEuc2xpY2UoOSksSmU9Xy5mYWNpbGl0aWVzPz9bXTtfLmZhY2lsaXRpZXM9SmUuaW5jbHVkZXMoZGUpP0plLmZpbHRlcihXZT0+V2UhPT1kZSk6Wy4uLkplLGRlXX1lbHNlKEE9PT0iZnJlZUNhbmNlbGxhdGlvbiJ8fEE9PT0iYnJlYWtmYXN0IikmJihfW0FdPSFfW0FdKTtjb25zdCBGPV9zKF8pO1ooImxpc3RIb3RlbHMiLHsuLi5aZCh2KSwuLi5GfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGZpbHRlciB0aGUgbGlzdC4iLCLmsqHog73nrZvpgInliJfooajjgIIiKSkpO3JldHVybn1jb25zdCBRPXQuZ2V0QXR0cmlidXRlKCJkYXRhLXNvcnQiKTtpZihRIT09bnVsbCl7UWU9c2I7Y29uc3R7c29ydDp2LC4uLl99PXg/LmFzaz8/e307WigibGlzdEhvdGVscyIsey4uLl8sLi4uUSE9PSJncm91cCI/e3NvcnQ6UX06e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgcmVvcmRlciB0aGUgbGlzdC4iLCLmsqHog73ph43mlrDmjpLluo/jgIIiKSkpO3JldHVybn1jb25zdCBYPXQuZ2V0QXR0cmlidXRlKCJkYXRhLXBsYWNlLWFsbCIpO2lmKFghPT1udWxsKXtaKCJsaXN0SG90ZWxzIix7Y2l0eTpYLGFsbDohMCwuLi5LdCgpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhvc2UgaG90ZWxzLiIsIuayoeiDveWKoOi9vei/meS6m+mFkuW6l+OAgiIpKSk7cmV0dXJufWNvbnN0IEo9dC5nZXRBdHRyaWJ1dGUoImRhdGEtYm9va2luZy1leHRyYXMiKTtpZihKIT09bnVsbCl7WigibGlzdEV4dHJhcyIscHQoSikpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBsb2FkIHRoZSBhZGQtb25zLiIsIuayoeiDveWKoOi9vemZhOWKoOacjeWKoeOAgiIpKSk7cmV0dXJufWNvbnN0IFA9dC5nZXRBdHRyaWJ1dGUoImRhdGEtYm9va2luZy1leHRyYSIpO2lmKFAhPT1udWxsKXtaKCJwcmV2aWV3Q2hhbmdlIix7Li4ucHQodC5nZXRBdHRyaWJ1dGUoImRhdGEtYm9va2luZyIpPz8iIiksZXh0cmE6UCxxdWFudGl0eTpOdW1iZXIodC5nZXRBdHRyaWJ1dGUoImRhdGEtbiIpPz8xKX0pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCB3b3JrIG91dCB0aGF0IGNoYW5nZS4iLCLmsqHog73orqHnrpfov5nmrKHkv67mlLnjgIIiKSkpO3JldHVybn1jb25zdCB0dD10LmdldEF0dHJpYnV0ZSgiZGF0YS1leHRyYXMiKTtpZih0dCE9PW51bGwpe1ooImxpc3RFeHRyYXMiLHtob3RlbDp0dCwuLi5abigpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhlIGFkZC1vbnMuIiwi5rKh6IO95Yqg6L296ZmE5Yqg5pyN5Yqh44CCIikpKTtyZXR1cm59Y29uc3QgQXQ9dC5nZXRBdHRyaWJ1dGUoImRhdGEtcG9saWN5Iik7aWYoQXQhPT1udWxsKXtaKCJwb2xpY2llcyIse2hvdGVsOnQuZ2V0QXR0cmlidXRlKCJkYXRhLWhvdGVsIik/PyIiLHRvcGljOkF0fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhhdCBwb2xpY3kuIiwi5rKh6IO95Yqg6L296L+Z5p2h5pS/562W44CCIikpKTtyZXR1cm59Y29uc3QgRnQ9dC5nZXRBdHRyaWJ1dGUoImRhdGEtY2FuY2VsIik7aWYoRnQhPT1udWxsKXtaKCJwcmV2aWV3Q2FuY2VsbGF0aW9uIixwdChGdCkpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCB3b3JrIG91dCB0aGUgZmVlLiIsIuayoeiDveiuoeeul+WPlua2iOi0ueeUqOOAgiIpKSk7cmV0dXJufWNvbnN0IEluPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNvbmZpcm0tY2FuY2VsIik7aWYoSW4hPT1udWxsKXtaKCJjYW5jZWxCb29raW5nIix7Li4ucHQoSW4pLGNvbmZpcm1lZDohMH0pLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBjYW5jZWwgdGhhdCBib29raW5nLiIsIuayoeiDveWPlua2iOi/meeslOmihOiuouOAgiIpKSk7cmV0dXJufWNvbnN0IGFzPXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNvbmZpcm0tY2hhbmdlIik7aWYoYXMhPT1udWxsKXtjb25zdCB2PXg/LnRvPz97fSxfPXg/LmZyb20/P3t9LEY9eD8uYWRkT24sZGU9di5jaGVja0luJiYodi5jaGVja0luIT09Xy5jaGVja0lufHx2LmNoZWNrT3V0IT09Xy5jaGVja091dCk7WigiY2hhbmdlQm9va2luZyIsey4uLnB0KGFzKSxjb25maXJtZWQ6ITAsLi4uZGU/e2NoZWNrSW46di5jaGVja0luLGNoZWNrT3V0OnYuY2hlY2tPdXR9Ont9LC4uLkY/LmlkP3tleHRyYTpGLmlkLHF1YW50aXR5Ok51bWJlcihGLnRvKX06e30sLi4udi5yb29tcyE9PXZvaWQgMCYmTnVtYmVyKHYucm9vbXMpIT09TnVtYmVyKF8ucm9vbXMpP3tyb29tczpOdW1iZXIodi5yb29tcyl9Ont9LC4uLnYucm9vbU5hbWUmJnYucm9vbU5hbWUhPT1fLnJvb21OYW1lP3tyb29tOnYucm9vbU5hbWV9Ont9fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGNoYW5nZSB0aGF0IGJvb2tpbmcuIiwi5rKh6IO95L+u5pS56L+Z56yU6aKE6K6i44CCIikpKTtyZXR1cm59Y29uc3QgRz10LmdldEF0dHJpYnV0ZSgiZGF0YS1hY3QiKTtpZihHPT09ImJhY2siKXtKZCgpO3JldHVybn1jb25zdCBIdT1HPT09ImJvb2tpbmdzIj8iYm9va2luZ3MiOnQuaGFzQXR0cmlidXRlKCJkYXRhLWhvdGVsIikmJiF0Lmhhc0F0dHJpYnV0ZSgiZGF0YS1jaSIpP2Bob3RlbDoke3QuZ2V0QXR0cmlidXRlKCJkYXRhLWhvdGVsIil9YDoiIjtpZihIdSYmZ2UubGVuZ3RoJiZSdChnZS5hdCgtMSk/LnBheWxvYWQpPT09SHUpe0pkKCk7cmV0dXJufWNvbnN0IEZ1PXQuZ2V0QXR0cmlidXRlKCJkYXRhLXJlZ2lvbiIpO2lmKEZ1IT09bnVsbCl7Y29uc3Qgdj10LmdldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIpIT09InRydWUiO2Zvcihjb25zdCBfIG9mIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoIltkYXRhLXJlZ2lvbl0iKSlfLnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsU3RyaW5nKHYmJl89PT10KSk7Zm9yKGNvbnN0IF8gb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtcmVnaW9uLWJvZHldIikpXy5oaWRkZW49IXZ8fF8uZ2V0QXR0cmlidXRlKCJkYXRhLXJlZ2lvbi1ib2R5IikhPT1GdTtyZXR1cm59aWYoRz09PSJtb3JlLWNvdW50cmllcyIpe2Zvcihjb25zdCB2IG9mKHQuY2xvc2VzdCgiW2RhdGEtcmVnaW9uLWJvZHldIik/P2RvY3VtZW50KS5xdWVyeVNlbGVjdG9yQWxsKCIuZGVzdFtoaWRkZW5dIikpdi5oaWRkZW49ITE7dC5jbG9zZXN0KCIucGxhY2VzIik/LnJlbW92ZSgpO3JldHVybn1pZihHPT09Im1vcmUtcGxhY2VzIil7Zm9yKGNvbnN0IHYgb2YodC5jbG9zZXN0KCIucGxhY2VzIik/P2RvY3VtZW50KS5xdWVyeVNlbGVjdG9yQWxsKCIuY2hpcC5wbGFjZVtoaWRkZW5dIikpdi5oaWRkZW49ITE7dC5yZW1vdmUoKTtyZXR1cm59Y29uc3QgdmE9dC5nZXRBdHRyaWJ1dGUoImRhdGEtcGFuZWwiKTtpZih2YSE9PW51bGwpe1FlPVFlPT09dmE/IiI6dmE7Zm9yKGNvbnN0IHYgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiW2RhdGEtcGFuZWwtYm9keV0iKSl2LmhpZGRlbj12LmdldEF0dHJpYnV0ZSgiZGF0YS1wYW5lbC1ib2R5IikhPT1RZTtmb3IoY29uc3QgdiBvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCJbZGF0YS1wYW5lbF0iKSl2LnNldEF0dHJpYnV0ZSgiYXJpYS1leHBhbmRlZCIsU3RyaW5nKHYuZ2V0QXR0cmlidXRlKCJkYXRhLXBhbmVsIik9PT1RZSkpO3JldHVybn1pZihHPT09ImNsZWFyLWZpbHRlcnMiKXtjb25zdHtob3VybHk6diwuLi5ffT1aZCh4Py5hc2spO1ooImxpc3RIb3RlbHMiLHY/U3MoXyk6XykuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGNsZWFyIHRoZSBmaWx0ZXJzLiIsIuayoeiDvea4hemZpOetm+mAieOAgiIpKSk7cmV0dXJufWlmKEc9PT0iYWxsLWhvdGVscyIpe3NpKCksWigibGlzdEhvdGVscyIse2FsbDohMCwuLi5LdCgpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhlIGhvdGVscy4iLCLmsqHog73liqDovb3phZLlupfjgIIiKSkpO3JldHVybn1pZihHPT09InByaWNlLWxpc3QiKXtVbigwKTtyZXR1cm59aWYoRz09PSJmaW5kLWJvb2tpbmciKXtjb25zdCB2PXt2aWV3OiJmaW5kLWJvb2tpbmcifTtPbih2KSx3ZSh2KSxtdCgpLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmY29kZSIpPy5mb2N1cygpO3JldHVybn1pZihHPT09Imxvb2t1cC1ib29raW5nIil7Y29uc3Qgdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZmNvZGUiKT8udmFsdWUudHJpbSgpPz8iIixfPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJmbWFpbCIpPy52YWx1ZS50cmltKCk/PyIiO2lmKCF2fHwhXy5pbmNsdWRlcygiQCIpKXtPKGEoIkJvdGggdGhlIGNvbmZpcm1hdGlvbiBjb2RlIGFuZCB0aGUgZW1haWwgdGhlIGJvb2tpbmcgd2FzIG1hZGUgd2l0aCwgcGxlYXNlLiIsIuivt+WQjOaXtuWhq+WGmeehruiupOeggeWSjOmihOiuouaXtueUqOeahOmCrueuseOAgiIpKTtyZXR1cm59WigibGlzdEJvb2tpbmdzIix7Ym9va2luZzp2LGVtYWlsOl99KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9vayB0aGF0IHVwLiIsIuayoeiDveafpeWIsOOAgiIpKSk7cmV0dXJufWlmKEc9PT0iZmluZCIpe1RiKCk7cmV0dXJufWlmKEc9PT0icGFnZS1uZXh0Inx8Rz09PSJwYWdlLXByZXYiKXtjb25zdCB2PXg7aWYoIXZ8fHYudmlldyE9PSJob3RlbHMiKXJldHVybjtjb25zdCBfPW1hKCksRj1OdW1iZXIodi5vZmZzZXQ/PzApLGRlPU1hdGgubWluKF8sKHYuaG90ZWxzPz9bXSkubGVuZ3RoKTtaKCJsaXN0SG90ZWxzIix7Li4udi5hc2s/P3t9LG9mZnNldDpHPT09InBhZ2UtbmV4dCI/RitkZTpNYXRoLm1heCgwLEYtXyksbGltaXQ6X30pLnRoZW4obXQpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBsb2FkIHRob3NlIGhvdGVscy4iLCLmsqHog73liqDovb3ov5nkupvphZLlupfjgIIiKSkpO3JldHVybn1pZihHPT09ImZ1bGxzY3JlZW4iKXtJZS5yZXF1ZXN0RGlzcGxheU1vZGUoe21vZGU6ImZ1bGxzY3JlZW4ifSkudGhlbih2PT57WW49U3RyaW5nKHY/Lm1vZGU/P1luKTtjb25zdCBfPXg7aWYoIV8pcmV0dXJuO2NvbnN0IEY9TnVtYmVyKF8udG90YWw/PzApO1FuKCkmJl8udmlldz09PSJob3RlbHMiJiYoTnVtYmVyKF8ub2Zmc2V0Pz8wKT4wfHwoXy5ob3RlbHM/P1tdKS5sZW5ndGg8TWF0aC5taW4oMTIsRikpP1ooImxpc3RIb3RlbHMiLHsuLi5fLmFzaz8/e30sbGltaXQ6MTJ9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aGUgaG90ZWxzLiIsIuayoeiDveWKoOi9vemFkuW6l+OAgiIpKSk6d2UoXyl9KS5jYXRjaCgoKT0+TyhhKCJUaGlzIGFwcCBjYW5ub3Qgb3BlbiBmdWxsIHNjcmVlbiBoZXJlLiIsIui/memHjOaXoOazleWFqOWxj+aJk+W8gOOAgiIpKSk7cmV0dXJufWlmKEc9PT0ibW9yZS1ob3RlbHMiKXtjb25zdCB2PXg7aWYoIXZ8fHYudmlldyE9PSJob3RlbHMiKXJldHVybjtaKCJsaXN0SG90ZWxzIix7Li4udi5hc2s/P3t9LG9mZnNldDpOdW1iZXIodi5vZmZzZXQ/PzApKyh2LmhvdGVscz8/W10pLmxlbmd0aCxsaW1pdDoxMn0se2ZvbGQ6Xz0+Xz8udmlldz09PSJob3RlbHMiP3suLi5fLGhvdGVsczpbLi4udi5ob3RlbHM/P1tdLC4uLl8uaG90ZWxzPz9bXV0sc2hvd246KHYuaG90ZWxzPz9bXSkubGVuZ3RoKyhfLmhvdGVscz8/W10pLmxlbmd0aCxvZmZzZXQ6TnVtYmVyKHYub2Zmc2V0Pz8wKSxwbGFjZXM6di5wbGFjZXMsLi4udi53aWRlbmVkP3t3aWRlbmVkOnYud2lkZW5lZH06e319Ol99KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCBtb3JlIGhvdGVscy4iLCLmsqHog73liqDovb3mm7TlpJrphZLlupfjgIIiKSkpO3JldHVybn1pZihHPT09ImhvbWUiKXtaKCJsaXN0SG90ZWxzIix7fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhlIGhvdGVscy4iLCLmsqHog73liqDovb3phZLlupfjgIIiKSkpO3JldHVybn1pZigoRz09PSJtZW1iZXIifHxHPT09ImZpbmQtYm9va2luZyJ8fEc9PT0iYXNrLXNpZ24taW4iKSYmeG4pcmV0dXJuO2lmKEc9PT0ibWVtYmVyIil7aWYoIXNlKXJldHVybjtjb25zdCB2PXt2aWV3OiJtZW1iZXIiLG1lbWJlcjpzZX07T24odiksd2UodiksbXQoKTtyZXR1cm59aWYoRz09PSJhc2stc2lnbi1pbiIpe2NvbnN0IHY9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInNpZ25pbiIpO2lmKHYpdi5oaWRkZW49ITE7ZWxzZXtjb25zdCBfPXt2aWV3OiJtZW1iZXItc2lnbi1pbiJ9O09uKF8pLHdlKF8pLG10KCl9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1udW0iKT8uZm9jdXMoKTtyZXR1cm59aWYoRz09PSJzaWduLWluIil7Y29uc3Qgdj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgibW51bSIpPy52YWx1ZS50cmltKCk/PyIiLF89ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoIm1zdXIiKT8udmFsdWUudHJpbSgpPz8iIjtpZighdnx8IV8pe08oYSgiQm90aCB0aGUgbWVtYmVyc2hpcCBudW1iZXIgYW5kIHRoZSBzdXJuYW1lIG9uIGl0LCBwbGVhc2UuIiwi6K+35ZCM5pe25aGr5YaZ5Lya5ZGY5Y+35ZKM5Y2h5LiK55qE5aeT5rCP44CCIikpO3JldHVybn1aKCJzaWduSW4iLHtudW1iZXI6dixzdXJuYW1lOl99KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3Qgc2lnbiBpbi4iLCLmsqHog73nmbvlvZXjgIIiKSkpO3JldHVybn1pZihHPT09ImZvcmdldC1wcmVmcyIpe1ooImZvcmdldFByZWZlcmVuY2VzIix7fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGZvcmdldCB0aGVtLiIsIuayoeiDvea4hemZpOOAgiIpKSk7cmV0dXJufWNvbnN0IFV1PXQuZ2V0QXR0cmlidXRlKCJkYXRhLXN1Z2dlc3QiKTtpZihVdSE9PW51bGwpe2NvbnN0IHY9KHg/LnN1Z2dlc3Rpb25zPz9bXSlbTnVtYmVyKFV1KV07dj8uYXNrPy50b29sP1ooU3RyaW5nKHYuYXNrLnRvb2wpLHYuYXNrLmFyZ3M/P3t9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgZG8gdGhhdCBqdXN0IG5vdy4iLCLmmoLml7bmsqHog73lrozmiJDjgIIiKSkpOkFycmF5LmlzQXJyYXkodj8uYXNrcykmJnYuYXNrcy5sZW5ndGg/KGFzeW5jKCk9Pntmb3IoY29uc3RbXyxGXW9mIHYuYXNrcy5lbnRyaWVzKCkpYXdhaXQgWihTdHJpbmcoRi50b29sKSxGLmFyZ3M/P3t9LHtwdXNoOl89PT0wfSl9KSgpLmNhdGNoKCgpPT5PKGEoIkNvdWxkIG5vdCBwdXQgYWxsIG9mIHRoZW0gaW4gdGhlIHRyaXAganVzdCBub3cuIiwi5pqC5pe25rKh6IO95YWo6YOo5Yqg5YWl6KGM56iL44CCIikpKTp2Py5zYXkmJkllLnNlbmRNZXNzYWdlKHtyb2xlOiJ1c2VyIixjb250ZW50Olt7dHlwZToidGV4dCIsdGV4dDpTdHJpbmcodi5zYXkpfV19KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3Qgc2VuZCB0aGF0IHRvIHRoZSBjaGF0LiIsIuayoeiDveWPkemAgeWIsOWvueivneOAgiIpKSk7cmV0dXJufWlmKEc9PT0iYXNrLXRyaXAtYWdhaW4iKXtJZS5zZW5kTWVzc2FnZSh7cm9sZToidXNlciIsY29udGVudDpbe3R5cGU6InRleHQiLHRleHQ6YSgiUGxlYXNlIHNob3cgbXkgdHJpcCBhZ2Fpbi4iLCLor7fph43mlrDmmL7npLrmiJHnmoTooYznqIvjgIIiKX1dfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IHNlbmQgdGhhdCB0byB0aGUgY2hhdC4iLCLmsqHog73lj5HpgIHliLDlr7nor53jgIIiKSkpO3JldHVybn1pZihHPT09InNpZ24tb3V0Iil7c2U9bnVsbCxaKCJzaWduT3V0Iix7fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IHNpZ24gb3V0LiIsIuayoeiDvemAgOWHuueZu+W9leOAgiIpKSk7cmV0dXJufWlmKEc9PT0iYXNrLWJvb2siKXtjb25zdCB2PXQuZ2V0QXR0cmlidXRlKCJkYXRhLWdyb3VwIik7diYmdiE9PWZ0JiYoZnQ9dix3ZSh4KSk7Y29uc3QgXz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3Vlc3QiKTtfJiYoXy5oaWRkZW49ITEpLGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJnbmFtZSIpPy5mb2N1cygpO3JldHVybn1pZihHPT09ImJvb2siKXtjb25zdHtwaG9uZVJlcXVpcmVkOnZ9PU11KCksXz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ25hbWUiKT8udmFsdWUudHJpbSgpPz8iIixGPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJnbWFpbCIpPy52YWx1ZS50cmltKCk/PyIiLGRlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncGhvbmUiKT8udmFsdWUudHJpbSgpPz8iIixKZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ25vdGUiKT8udmFsdWUudHJpbSgpPz8iIixXZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiZ3RpbWUiKT8udmFsdWUudHJpbSgpPz8iIixFbj1bLi4uZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtYXNrXVthcmlhLXByZXNzZWQ9InRydWUiXScpXS5tYXAoTmI9Pk5iLmRhdGFzZXQuYXNrPz8iIik7KFdlP1dlPj0iMjI6MDAiOihzZT8ucHJlZmVyZW5jZXM/P1tdKS5pbmNsdWRlcygibGF0ZS1hcnJpdmFsIikpJiYhRW4uaW5jbHVkZXMoImxhdGUtYXJyaXZhbCIpJiZFbi5wdXNoKCJsYXRlLWFycml2YWwiKTtjb25zdCBLdT0hIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmVtZW1iZXIiKT8uY2hlY2tlZDtDZT17bmFtZTpfLGVtYWlsOkYsLi4udj97cGhvbmU6ZGV9Ont9LG5vdGVzOkplLGFycml2aW5nQXQ6V2UscmVxdWVzdHM6RW4scmVtZW1iZXI6S3V9O2NvbnN0IFJuPVtdO2lmKF98fFJuLnB1c2goWyJnbmFtZSIsYSgiZnVsbCBuYW1lIiwi5aeT5ZCNIiksYSgiUmVxdWlyZWQ6IHRoZSBndWVzdCdzIGZ1bGwgbmFtZSwgYXMgb24gdGhlaXIgSUQuIiwi5b+F5aGr77ya5YWl5L2P5Lq65aeT5ZCN77yM5LiO6K+B5Lu25LiA6Ie044CCIildKSxGLmluY2x1ZGVzKCJAIil8fFJuLnB1c2goWyJnbWFpbCIsYSgiZW1haWwiLCLpgq7nrrEiKSxGP2EoIlRoYXQgZW1haWwgaGFzIG5vIOKAnEDigJ0gaW4gaXQg4oCUIHRoZSBjb25maXJtYXRpb24gbmVlZHMgYW4gYWRkcmVzcyBpdCBjYW4gcmVhY2guIiwi6YKu566x6YeM5rKh5pyJ4oCcQOKAne+8jOivt+Whq+WGmeiDveaUtuWIsOehruiupOS/oeaBr+eahOWcsOWdgOOAgiIpOmEoIlJlcXVpcmVkOiB5b3VyIGVtYWlsLiBXaXRoIGl0IGFuZCB0aGUgY29uZmlybWF0aW9uIGNvZGUsIHlvdSBjYW4gZmluZCB0aGlzIGJvb2tpbmcgYWdhaW4gZnJvbSBhbnkgY2hhdC4iLCLlv4XloavvvJrmjqXmlLbnoa7orqTkv6Hmga/nmoTpgq7nrrHvvIzlh63lroPlkoznoa7orqTnoIHmib7lm57pooTorqLjgIIiKV0pLHYmJmRlLnJlcGxhY2UoL1xEL2csIiIpLmxlbmd0aDw2JiZSbi5wdXNoKFsiZ3Bob25lIixhKCJwaG9uZSIsIuaJi+acuuWPtyIpLGEoIlJlcXVpcmVkOiBhIHBob25lIG51bWJlciwgc28gdGhlIGhvdGVsIGNhbiByZWFjaCB5b3UuIiwi5b+F5aGr77ya5omL5py65Y+377yM5pa55L6/6YWS5bqX6IGU57O75L2g44CCIildKSxfaihSbiksUm4ubGVuZ3RoKXJldHVybjtaKCJyZXF1ZXN0Qm9va2luZyIse25hbWU6XyxlbWFpbDpGLC4uLnY/e3Bob25lOmRlfTp7fSwuLi5mZSYmZnQ/e2dyb3VwOmZ0fTp7fSwuLi5KZT97bm90ZXM6SmV9Ont9LC4uLldlP3thcnJpdmluZ0F0OldlfTp7fSwuLi5Fbi5sZW5ndGg/e3JlcXVlc3RzOkVufTp7fSwuLi5LdT97cmVtZW1iZXJSZXF1ZXN0czohMH06e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgYXNrIGZvciB0aG9zZSByb29tcy4iLCLmsqHog73mj5DkuqTpooTorqLjgIIiKSkpO3JldHVybn1jb25zdCBWdT10LmdldEF0dHJpYnV0ZSgiZGF0YS1vcGVuLWJvb2tpbmciKTtpZihWdSE9PW51bGwmJng/LnZpZXc9PT0iYm9va2luZ3MiKXtjb25zdCB2PSh4LmJvb2tpbmdzPz9bXSkuZmluZChGPT5TdHJpbmcoRi5jb25maXJtYXRpb25Db2RlKT09PVZ1KTtpZighdilyZXR1cm47Y29uc3QgXz17Li4ueCx2aWV3OiJib29raW5nIixib29raW5nOnYsYm9va2luZ3M6dm9pZCAwLHRvdGFsOnYucXVvdGU/LnRvdGFsLG9wZW5lZDohMCxzdWdnZXN0aW9uczp2b2lkIDB9O09uKF8pLHdlKF8pLG10KCk7cmV0dXJufWlmKEc9PT0icGF5Iil7Y29uc3Qgdj10LmdldEF0dHJpYnV0ZSgiZGF0YS11cmwiKT8/IiIsXz10LmdldEF0dHJpYnV0ZSgiZGF0YS1jb2RlIik/PyIiO2lmKCF2KXJldHVybjtJZS5vcGVuTGluayh7dXJsOnZ9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3Qgb3BlbiB0aGUgcGF5bWVudCBwYWdlLiIsIuayoeiDveaJk+W8gOS7mOasvumhteOAgiIpKSk7Y29uc3QgRj1EYXRlLnBhcnNlKHQuZ2V0QXR0cmlidXRlKCJkYXRhLXVudGlsIik/PyIiKXx8RGF0ZS5ub3coKSsxNSo2ZTQ7WnUoKSxOZT17Y29kZTpfLHVudGlsOkZ9LE5lLnRpbWVyPXNldFRpbWVvdXQoKCk9PnF1KF8pLHRpKTtyZXR1cm59aWYoRz09PSJwYXktY2hlY2siKXtjb25zdCB2PXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNvZGUiKT8/IiI7diYmd2Iodik7cmV0dXJufWlmKEc9PT0ibmlnaHRseS1saXN0Iil7Y29uc3R7aG91cmx5OnYsLi4uX309U3MoeD8uYXNrKTtaKCJsaXN0SG90ZWxzIixfKS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aGUgaG90ZWxzLiIsIuayoeiDveWKoOi9vemFkuW6l+WIl+ihqOOAgiIpKSk7cmV0dXJufWlmKEc9PT0iYm9va2luZ3MiKXtaKCJsaXN0Qm9va2luZ3MiLHt9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB5b3VyIGJvb2tpbmdzLiIsIuayoeiDveWKoOi9veS9oOeahOmihOiuouOAgiIpKSk7cmV0dXJufWlmKEc9PT0idHJpcCIpe1ooInZpZXdUcmlwIix7fSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhlIHRyaXAuIiwi5rKh6IO95Yqg6L296KGM56iL44CCIikpKTtyZXR1cm59aWYoKEc9PT0iaG91cmx5Inx8Rz09PSJuaWdodGx5IikmJng/LmhvdGVsPy5pZCl7Y29uc3Qgdj1TdHJpbmcoeC5ob3RlbC5pZCk7WigiZ2V0SG90ZWwiLEc9PT0iaG91cmx5Ij97aG90ZWw6dixob3VybHk6ITAsZ3Vlc3RzOmouZ3Vlc3RzfTp7aG90ZWw6diwuLi5abigpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IGxvYWQgdGhhdCBob3RlbC4iLCLmsqHog73liqDovb3ov5nlrrbphZLlupfjgIIiKSkpO3JldHVybn1jb25zdCBXdT10LmdldEF0dHJpYnV0ZSgiZGF0YS1ob3RlbCIpO2lmKFd1KXtjb25zdCB2PXQuZ2V0QXR0cmlidXRlKCJkYXRhLWNpIiksXz10LmdldEF0dHJpYnV0ZSgiZGF0YS1jbyIpO3YmJl8mJihqLmNoZWNrSW49dixqLmNoZWNrT3V0PV8pLFooImdldEhvdGVsIix7aG90ZWw6V3UsLi4uWm4oKSwuLi5qLmNoZWNrSW4mJlc+MT97cm9vbXM6V306e319KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgbG9hZCB0aGF0IGhvdGVsLiIsIuayoeiDveWKoOi9vei/meWutumFkuW6l+OAgiIpKSl9fSk7Y29uc3Qgb2k9KCk9PntpZighZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImduYW1lIikpcmV0dXJuO2NvbnN0IGU9dD0+ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodCk/LnZhbHVlPz8iIjtDZT17bmFtZTplKCJnbmFtZSIpLGVtYWlsOmUoImdtYWlsIiksLi4uTXUoKS5waG9uZVJlcXVpcmVkP3twaG9uZTplKCJncGhvbmUiKX06e30sbm90ZXM6ZSgiZ25vdGUiKSxhcnJpdmluZ0F0OmUoImd0aW1lIikscmVxdWVzdHM6Wy4uLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ1tkYXRhLWFza11bYXJpYS1wcmVzc2VkPSJ0cnVlIl0nKV0ubWFwKHQ9PnQuZGF0YXNldC5hc2s/PyIiKSxyZW1lbWJlcjohIWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJncmVtZW1iZXIiKT8uY2hlY2tlZH19O2RvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImlucHV0IixlPT57Y29uc3QgdD1lLnRhcmdldD8uaWQ/PyIiO1siZ25hbWUiLCJnbWFpbCIsImdwaG9uZSIsImdub3RlIiwiZ3RpbWUiLCJncmVtZW1iZXIiXS5pbmNsdWRlcyh0KSYmb2koKX0pO2NvbnN0IEpkPSgpPT57Zm9yKDtnZS5hdCgtMSk/LnBheWxvYWQ/LnZpZXc9PT0ibWVtYmVyIiYmIXNlOylnZT1nZS5zbGljZSgwLC0xKTtjb25zdCBlPWdlLmF0KC0xKTtpZighZXx8eG4pe3hnKCk7cmV0dXJufWdlPWdlLnNsaWNlKDAsLTEpLE9zKz0xLEJ1KCksQWIoKTtjb25zdCB0PWUudmVyc2lvbj09PVJzP3ZvaWQgMDpCUyhlLnBheWxvYWQpO3Q/KHg9ZS5wYXlsb2FkLFoodC5rZXksdC5hcmdzLHtwdXNoOiExfSkuY2F0Y2goKCk9PndlKGUucGF5bG9hZCwhMCkpLmZpbmFsbHkobXQpKTood2UoZS5wYXlsb2FkLCEwKSxtdCgpKX0sVGI9KCk9Pntjb25zdCBlPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ3aGVyZSIpPy52YWx1ZS50cmltKCk/PyIiO2lmKCFlKXtPKGEoIldoZXJlIHRvPyBBIGNpdHksIGEgY291bnRyeSBvciBhIGhvdGVsLiIsIuaDs+WOu+WTqumHjO+8n+i+k+WFpeWfjuW4guOAgeWbveWutuaIlumFkuW6l+WQjeOAgiIpKTtyZXR1cm59c2koKTtjb25zdCBuPSh4Py5yZWdpb25zPz9bXSkuZmxhdE1hcChvPT4oby5jb3VudHJpZXM/P1tdKS5mbGF0TWFwKHM9PltbU3RyaW5nKHMubmFtZSksU3RyaW5nKHMubmFtZSldLFtIZShzLm5hbWUscy5jb2RlKSxTdHJpbmcocy5uYW1lKV0sLi4uKHMuY2l0aWVzPz9bXSkuZmxhdE1hcChyPT5bW1N0cmluZyhyLm5hbWUpLFN0cmluZyhyLm5hbWUpXSwuLi5PYmplY3QudmFsdWVzKHIubmFtZXM/P3t9KS5tYXAoaT0+W1N0cmluZyhpKSxTdHJpbmcoci5uYW1lKV0pXSldKSkuZmluZCgoW29dKT0+by50b0xvd2VyQ2FzZSgpPT09ZS50b0xvd2VyQ2FzZSgpKT8uWzFdO1ooImxpc3RIb3RlbHMiLHsuLi5uP3tjaXR5Om59OntxdWVyeTplfSwuLi5LdCgpfSkuY2F0Y2goKCk9Pk8oYSgiQ291bGQgbm90IHNlYXJjaCBqdXN0IG5vdy4iLCLmmoLml7bmsqHog73mkJzntKLjgIIiKSkpfSxzaT0oKT0+e2NvbnN0IGU9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRjaSIpLHQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImRjbyIpO2U/LnZhbHVlJiYoai5jaGVja0luPWUudmFsdWUpLHQ/LnZhbHVlJiYoai5jaGVja091dD10LnZhbHVlKSxlPy52YWx1ZSYmKHVhPSEwKX07bGV0IHJpLFh0PSExO2NvbnN0IEFiPSgpPT57Y2xlYXJUaW1lb3V0KHJpKSxYdD0hMX0samo9ZT0+ZT8udmlldz09PSJob3RlbHMifHxlPy52aWV3PT09Im5vLWhvdGVscyImJiEhZT8uYXNrLFVuPShlPTApPT57Y2xlYXJUaW1lb3V0KHJpKSxYdD0hMCxyaT1zZXRUaW1lb3V0KCgpPT57aWYoIWpqKHgpKXtYdD0hMTtyZXR1cm59aWYoeG4pe1VuKDE1MCk7cmV0dXJufVh0PSExLFooImxpc3RIb3RlbHMiLHsuLi5Tcyh4Py5hc2spLC4uLkt0KCl9KS5jYXRjaCgoKT0+TyhhKCJDb3VsZCBub3QgcHJpY2UgdGhvc2UgbmlnaHRzLiIsIuayoeiDveS4uui/meS6m+aXpeacn+aKpeS7t+OAgiIpKSl9LGUpfTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJrZXlkb3duIixlPT57aWYoZS50YXJnZXQ/LmlkPT09IndoZXJlIiYmZS5rZXk9PT0iRW50ZXIiJiYhZS5pc0NvbXBvc2luZyl7ZS5wcmV2ZW50RGVmYXVsdCgpLFRiKCk7cmV0dXJufWlmKGUua2V5PT09IkVzY2FwZSImJk0pe2NvbnN0e3BhaXI6bn09TTtNPW51bGwsWnQobixgW2RhdGEtY2FsPSIke259OmluIl1gKTtyZXR1cm59Y29uc3QgdD1lLnRhcmdldDshdHx8dC5nZXRBdHRyaWJ1dGUoInJvbGUiKSE9PSJidXR0b24ifHxlLmtleSE9PSJFbnRlciImJmUua2V5IT09IiAifHwoZS5wcmV2ZW50RGVmYXVsdCgpLHQuY2xpY2soKSl9KTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJtb3VzZW92ZXIiLGU9PntpZighTXx8TS5waWNraW5nIT09Im91dCJ8fCFNLmluKXJldHVybjtjb25zdCB0PWUudGFyZ2V0Py5jbG9zZXN0Py4oIi5jZFtkYXRhLWRheV0iKSxuPXQmJiF0Lmhhc0F0dHJpYnV0ZSgiZGlzYWJsZWQiKT90LmRhdGFzZXQuZGF5Pz8iIjoiIixvPU0uaW47Zm9yKGNvbnN0IHMgb2YgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgiLmNhbCAuY2RbZGF0YS1kYXldIikpe2NvbnN0IHI9cy5kYXRhc2V0LmRheT8/IiI7cy5jbGFzc0xpc3QudG9nZ2xlKCJyZWFjaCIsISFuJiZuPm8mJnI+byYmcjxuKSxzLmNsYXNzTGlzdC50b2dnbGUoInJlYWNoLWVuZCIsISFuJiZuPm8mJnI9PT1uKX19KTtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCJjaGFuZ2UiLGU9Pntjb25zdCB0PWUudGFyZ2V0O3Q/LnR5cGU9PT0iZGF0ZSImJih1YT0hMCk7Y29uc3Qgbz17ZGNpOlsiZGNpIiwiZGNvIl0sZGNvOlsiZGNpIiwiZGNvIl0sbGNpOlsibGNpIiwibGNvIl0sbGNvOlsibGNpIiwibGNvIl19W3Q/LmlkPz8iIl07aWYobyl7Y29uc3QgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChvWzBdKSxoPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKG9bMV0pO2lmKCFjfHwhaClyZXR1cm47aWYodC5pZD09PW9bMF0mJmMudmFsdWUpe2NvbnN0IGQ9cXQoYy52YWx1ZSwxKTtoLm1pbj1kLCghaC52YWx1ZXx8aC52YWx1ZTw9Yy52YWx1ZSkmJihoLnZhbHVlPWQpfWouY2hlY2tJbj1jLnZhbHVlfHxqLmNoZWNrSW4sai5jaGVja091dD1oLnZhbHVlfHxqLmNoZWNrT3V0LG9bMF09PT0ibGNpIiYmVW4oMzAwKTtyZXR1cm59aWYodD8uaWQhPT0iY2kiJiZ0Py5pZCE9PSJjbyIpcmV0dXJuO2NvbnN0IHM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNpIikscj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY28iKTtpZighc3x8IXIpcmV0dXJuO2lmKHQuaWQ9PT0iY2kiJiZzLnZhbHVlKXtjb25zdCBjPXF0KHMudmFsdWUsMSk7ci5taW49YywoIXIudmFsdWV8fHIudmFsdWU8PXMudmFsdWUpJiYoci52YWx1ZT1jKX1qLmNoZWNrSW49cy52YWx1ZXx8ai5jaGVja0luLGouY2hlY2tPdXQ9ci52YWx1ZXx8ai5jaGVja091dDtjb25zdCBpPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJuaWdodHMiKTtpJiYoaS50ZXh0Q29udGVudD1lYigpKSxRdCgpfSk7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZXJyb3IiLGU9Pntjb25zdCB0PWUudGFyZ2V0O3Q/LnRhZ05hbWU9PT0iSU1HIiYmdC5jbG9zZXN0KCIjY29udGVudCIpJiZ0LnJlbW92ZSgpfSwhMCk7Y29uc3QgemI9KGUsdCk9Pnt0cnl7RWcodCk7Y29uc3Qgbj1lP0pTT04uc3RyaW5naWZ5KGUpOiIiO2lmKG4mJm49PT1EZyYmSlNPTi5zdHJpbmdpZnkoeCk9PT1MZylyZXR1cm47ZT8uc3RheT8uY2hlY2tJbiYmKHVhPSEwKSxnZT1bXSxPcys9MSxCdSgpLEFiKCksUWU9c2IsTT1udWxsLHdlKGUpfWNhdGNoKG4pe2NvbnNvbGUuZXJyb3IoIltjYXJkXSByZW5kZXIgZmFpbGVkIixuKSxxKCJjb250ZW50IikuaW5uZXJIVE1MPWA8ZGl2IGNsYXNzPSJlbXB0eSI+JHthKCJUaGlzIGNhcmQgY291bGQgbm90IGJlIGRyYXduLiBBc2sgYWdhaW4gaW4gdGhlIGNoYXQuIiwi6L+Z5byg5Y2h54mH5rKh6IO95pi+56S677yM6K+35Zyo5a+56K+d6YeM5YaN6Zeu5LiA5qyh44CCIil9PC9kaXY+YH19O0llLm9udG9vbHJlc3VsdD1lPT56YihlPy5zdHJ1Y3R1cmVkQ29udGVudCxlPy5fbWV0YSk7Y29uc3QgQ2I9ZT0+e2NvbnN0IHQ9RGEoZT8ubG9jYWxlKTt0JiZ0IT09VWEmJihVYT10LGhhKCkpLEFycmF5LmlzQXJyYXkoZT8uYXZhaWxhYmxlRGlzcGxheU1vZGVzKSYmKGliPWUuYXZhaWxhYmxlRGlzcGxheU1vZGVzLm1hcChTdHJpbmcpKSx0eXBlb2YgZT8uZGlzcGxheU1vZGU9PSJzdHJpbmciJiZlLmRpc3BsYXlNb2RlIT09WW4mJihZbj1lLmRpc3BsYXlNb2RlLHg/LnZpZXc9PT0iaG90ZWxzIiYmd2UoeCkpfTtsZXQgWWQ7d2luZG93LmFkZEV2ZW50TGlzdGVuZXIoInJlc2l6ZSIsKCk9PntjbGVhclRpbWVvdXQoWWQpLFlkPXNldFRpbWVvdXQoKCk9PntpZih4Py52aWV3IT09ImhvdGVscyJ8fFFuKCkpcmV0dXJuO0N1PXp1KCk7Y29uc3QgZT1OdW1iZXIoeC50b3RhbD8/MCktTnVtYmVyKHgub2Zmc2V0Pz8wKTttYShlKSE9PURzJiZ3ZSh4KX0sMTUwKX0pO0llLm9uaG9zdGNvbnRleHRjaGFuZ2VkPWU9PntUZyhlLHpnKSxDYihlKSx5dSgpfTtoYSghMSk7ZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiY2xpY2siLGU9PnshcSgibGFuZ21lbnUiKS5oaWRkZW4mJiFlLnRhcmdldD8uY2xvc2VzdD8uKCIubGFuZ3BpY2siKSYmKHEoImxhbmdtZW51IikuaGlkZGVuPSEwLHEoImxhbmdidG4iKS5zZXRBdHRyaWJ1dGUoImFyaWEtZXhwYW5kZWQiLCJmYWxzZSIpKX0pO0llLmNvbm5lY3QoKS50aGVuKCgpPT57Y29uc3QgZT1JZS5nZXRIb3N0Q29udGV4dCgpO1RnKGUsemcpLENiKGUpLHl1KCk7Y29uc3QgdD1lPy50b29sSW5mbz8ucmVzdWx0Py5zdHJ1Y3R1cmVkQ29udGVudDt0JiZ6Yih0LGU/LnRvb2xJbmZvPy5yZXN1bHQ/Ll9tZXRhKX0pLmNhdGNoKCgpPT57cSgiY29udGVudCIpLmlubmVySFRNTD1gPGRpdiBjbGFzcz0iZW1wdHkiPiR7YSgiQ291bGQgbm90IGNvbm5lY3QgdG8gdGhlIGhvc3QuIiwi5rKh6IO96L+e5o6l5Yiw5a6/5Li744CCIil9PC9kaXY+YH0pOzwvc2NyaXB0PgogICAgPHN0eWxlIHJlbD0ic3R5bGVzaGVldCIgY3Jvc3NvcmlnaW4+OnJvb3R7LS1raXQtYmc6ICNmZmZmZmY7LS1raXQtYmctc29mdDogI2Y2ZjdmOTstLWtpdC1mZzogIzFhMWYyYjstLWtpdC1mZy1zb2Z0OiAjNjI2YjdhOy0ta2l0LWZnLWZhaW50OiAjOGE5M2ExOy0ta2l0LWxpbmU6ICNlM2U3ZWQ7LS1raXQtYWNjZW50OiAjMWExZjJiOy0ta2l0LWFjY2VudC1mZzogI2ZmZmZmZjstLWtpdC1saW5rOiAjMjU2M2ViOy0ta2l0LWdvb2Q6ICMxYTdmNWE7LS1raXQtZ29vZC1iZzogI2RkZjNlNDstLWtpdC1iYWQ6ICNiMzI2MWU7LS1raXQtYmFkLWJnOiAjZmJlNmU0Oy0ta2l0LXdhcm46ICM4YTVhMDA7LS1raXQtd2Fybi1iZzogI2ZkZjBkNTstLWtpdC1yaW5nOiAjMjU2M2VifVtkYXRhLXRoZW1lPWRhcmtdey0ta2l0LWJnOiAjMWQxZjIzOy0ta2l0LWJnLXNvZnQ6ICMyNjI5MmU7LS1raXQtZmc6ICNlY2VlZjE7LS1raXQtZmctc29mdDogI2E0YWJiNjstLWtpdC1mZy1mYWludDogIzdjODQ5MTstLWtpdC1saW5lOiAjMzYzYTQxOy0ta2l0LWFjY2VudDogI2VjZWVmMTstLWtpdC1hY2NlbnQtZmc6ICMxZDFmMjM7LS1raXQtbGluazogIzdhYTdmZjstLWtpdC1nb29kOiAjNmZkM2EyOy0ta2l0LWdvb2QtYmc6ICMxZjNhMmQ7LS1raXQtYmFkOiAjZmY4YTgwOy0ta2l0LWJhZC1iZzogIzNkMjMyMjstLWtpdC13YXJuOiAjZjJjNDZiOy0ta2l0LXdhcm4tYmc6ICMzYTMwMjA7LS1raXQtcmluZzogIzdhYTdmZn06cm9vdHstLWJnOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kLXByaW1hcnksIHZhcigtLWtpdC1iZykpOy0tYmctc29mdDogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1zZWNvbmRhcnksIHZhcigtLWtpdC1iZy1zb2Z0KSk7LS1mZzogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCB2YXIoLS1raXQtZmcpKTstLWZnLXNvZnQ6IHZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5LCB2YXIoLS1raXQtZmctc29mdCkpOy0tZmctZmFpbnQ6IHZhcigtLWNvbG9yLXRleHQtdGVydGlhcnksIHZhcigtLWtpdC1mZy1mYWludCkpOy0tbGluZTogdmFyKC0tY29sb3ItYm9yZGVyLXByaW1hcnksIHZhcigtLWtpdC1saW5lKSk7LS1hY2NlbnQ6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtaW52ZXJzZSwgdmFyKC0ta2l0LWFjY2VudCkpOy0tYWNjZW50LWZnOiB2YXIoLS1jb2xvci10ZXh0LWludmVyc2UsIHZhcigtLWtpdC1hY2NlbnQtZmcpKTstLWxpbms6IHZhcigtLWNvbG9yLXRleHQtaW5mbywgdmFyKC0ta2l0LWxpbmspKTstLWdvb2Q6IHZhcigtLWNvbG9yLXRleHQtc3VjY2VzcywgdmFyKC0ta2l0LWdvb2QpKTstLWdvb2QtYmc6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtc3VjY2VzcywgdmFyKC0ta2l0LWdvb2QtYmcpKTstLWJhZDogdmFyKC0tY29sb3ItdGV4dC1kYW5nZXIsIHZhcigtLWtpdC1iYWQpKTstLWJhZC1iZzogdmFyKC0tY29sb3ItYmFja2dyb3VuZC1kYW5nZXIsIHZhcigtLWtpdC1iYWQtYmcpKTstLXdhcm46IHZhcigtLWNvbG9yLXRleHQtd2FybmluZywgdmFyKC0ta2l0LXdhcm4pKTstLXdhcm4tYmc6IHZhcigtLWNvbG9yLWJhY2tncm91bmQtd2FybmluZywgdmFyKC0ta2l0LXdhcm4tYmcpKTstLXJpbmc6IHZhcigtLWNvbG9yLXJpbmctcHJpbWFyeSwgdmFyKC0ta2l0LXJpbmcpKTstLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cy1sZywgMTRweCk7LS1yYWRpdXMtc206IHZhcigtLWJvcmRlci1yYWRpdXMtc20sIDlweCk7LS1mb250OiB2YXIoLS1mb250LXNhbnMsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgIlNlZ29lIFVJIiwgUm9ib3RvLCBzYW5zLXNlcmlmKTstLW1vbm86IHZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlLCAiU0YgTW9ubyIsIE1lbmxvLCBtb25vc3BhY2UpOy0tc2hhZG93OiB2YXIoLS1zaGFkb3ctc20sIDAgMXB4IDJweCByZ2JhKDEwLCAyMCwgNDAsIC4wNCksIDAgMnB4IDVweCByZ2JhKDEwLCAyMCwgNDAsIC4wNCkpfSp7Ym94LXNpemluZzpib3JkZXItYm94fWJvZHl7bWFyZ2luOjA7Zm9udC1mYW1pbHk6dmFyKC0tZm9udCk7Y29sb3I6dmFyKC0tZmcpO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7LXdlYmtpdC1mb250LXNtb290aGluZzphbnRpYWxpYXNlZH0uY2FyZHtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzKTtiYWNrZ3JvdW5kOnZhcigtLWJnKTtib3gtc2hhZG93OnZhcigtLXNoYWRvdyk7bWF4LXdpZHRoOjU2MHB4O292ZXJmbG93OmhpZGRlbjtwYWRkaW5nLWxlZnQ6dmFyKC0taW5zZXQtbGVmdCwgMHB4KTtwYWRkaW5nLXJpZ2h0OnZhcigtLWluc2V0LXJpZ2h0LCAwcHgpfS5oZWFke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjE0cHggMThweCAwfS5oZWFkIC50aXRsZXtmb250LXNpemU6MTVweDtmb250LXdlaWdodDo2NTA7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS5oZWFkIC50aXRsZVtoaWRkZW5de2Rpc3BsYXk6bm9uZX0jY29udGVudHtwYWRkaW5nOjEwcHggMThweCAxOHB4fS5yZWZyZXNoe21hcmdpbi1sZWZ0OjhweDthbGlnbi1zZWxmOmNlbnRlcjtmbGV4Om5vbmU7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjt3aWR0aDoyOHB4O2hlaWdodDoyOHB4O3BhZGRpbmc6MDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1iZyk7Y29sb3I6dmFyKC0tZmctc29mdCk7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjEycyxjb2xvciAuMTJzfS5yZWZyZXNoOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2NvbG9yOnZhcigtLWZnKTtib3JkZXItY29sb3I6dmFyKC0tZmctc29mdCl9LnJlZnJlc2g6ZGlzYWJsZWR7Y3Vyc29yOmRlZmF1bHQ7b3BhY2l0eTouNn0ucmVmcmVzaFtoaWRkZW5de2Rpc3BsYXk6bm9uZX0ucmVmcmVzaCBzdmd7d2lkdGg6MTNweDtoZWlnaHQ6MTNweDtkaXNwbGF5OmJsb2NrfS5yZWZyZXNoLmJ1c3kgc3Zne2FuaW1hdGlvbjpraXQtc3BpbiAuN3MgbGluZWFyIGluZmluaXRlfUBrZXlmcmFtZXMga2l0LXNwaW57dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX0uZW1wdHl7cGFkZGluZzoxOHB4IDA7dGV4dC1hbGlnbjpjZW50ZXI7Y29sb3I6dmFyKC0tZmctc29mdCk7Zm9udC1zaXplOjEzcHh9LmhpbnR7bWFyZ2luLXRvcDo4cHg7Zm9udC1zaXplOjEycHg7Y29sb3I6dmFyKC0tZmctc29mdCk7dGV4dC1hbGlnbjpjZW50ZXJ9Lm5vdGV7Zm9udC1zaXplOjEyLjVweDtjb2xvcjp2YXIoLS1mZy1zb2Z0KTtwYWRkaW5nOjAgMCAxMHB4fS5tb25ve2ZvbnQtZmFtaWx5OnZhcigtLW1vbm8pO2ZvbnQtc2l6ZToxMS41cHg7Y29sb3I6dmFyKC0tZmctZmFpbnQpfS5iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6M3B4IDlweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZToxMS41cHg7Zm9udC13ZWlnaHQ6NjAwO3doaXRlLXNwYWNlOm5vd3JhcH0uYmFkZ2Uub2t7Y29sb3I6dmFyKC0tZ29vZCk7YmFja2dyb3VuZDp2YXIoLS1nb29kLWJnKX0uYmFkZ2Uud2FybiwuYmFkZ2UudG9kb3tjb2xvcjp2YXIoLS13YXJuKTtiYWNrZ3JvdW5kOnZhcigtLXdhcm4tYmcpfS5iYWRnZS5lcnJ7Y29sb3I6dmFyKC0tYmFkKTtiYWNrZ3JvdW5kOnZhcigtLWJhZC1iZyl9LmJ1eXttYXJnaW4tdG9wOjE0cHg7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjQ0cHg7cGFkZGluZzoxMXB4IDE0cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1hY2NlbnQpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7Y29sb3I6dmFyKC0tYWNjZW50LWZnKTtmb250LWZhbWlseTp2YXIoLS1mb250KTtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo2NTA7Y3Vyc29yOnBvaW50ZXJ9LmJ1eTpkaXNhYmxlZHtiYWNrZ3JvdW5kOnZhcigtLWJnLXNvZnQpO2JvcmRlci1jb2xvcjp2YXIoLS1saW5lKTtjb2xvcjp2YXIoLS1mZy1mYWludCk7Y3Vyc29yOmRlZmF1bHR9LmJ1eS5hbHQsLmdob3N0e2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tZmcpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tbGluZSl9Lmdob3N0e2ZsZXg6MTttaW4taGVpZ2h0OjQwcHg7cGFkZGluZzo5cHggMTBweDtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udCk7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tZmctc29mdCk7Y3Vyc29yOnBvaW50ZXJ9Lmxpbmt7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO3BhZGRpbmc6NnB4IDAgMDtjb2xvcjp2YXIoLS1saW5rKTtmb250LWZhbWlseTp2YXIoLS1mb250KTtmb250LXNpemU6MTIuNXB4O2N1cnNvcjpwb2ludGVyO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnF0eXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHh9LnF0eSBidXR0b257d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWJnKTtjb2xvcjp2YXIoLS1mZyk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udCk7Zm9udC1zaXplOjE3cHg7bGluZS1oZWlnaHQ6MTtjdXJzb3I6cG9pbnRlcn0ucXR5IHNwYW57bWluLXdpZHRoOjI2cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjEzLjVweDtmb250LXdlaWdodDo2NTB9LmNrLXBhZ2Vye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXdyYXA6d3JhcDtnYXA6OHB4IDEycHg7bWFyZ2luLXRvcDoxNHB4fS5jay1wYWdlci1idG57ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NHB4O21pbi13aWR0aDoxMTJweDtoZWlnaHQ6MzZweDtwYWRkaW5nOjAgMTRweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXNtKTtiYWNrZ3JvdW5kOnZhcigtLWJnKTtjb2xvcjp2YXIoLS1mZyk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udCk7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NTAwO2xpbmUtaGVpZ2h0OjE7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xMnMsYm9yZGVyLWNvbG9yIC4xMnMsY29sb3IgLjEyc30uY2stcGFnZXItYnRuIHN2ZywuY2stcGFnZXItYWxsIHN2Z3t3aWR0aDoxNHB4O2hlaWdodDoxNHB4O2ZsZXg6bm9uZX0uY2stcGFnZXItYnRuOmhvdmVyOm5vdCg6ZGlzYWJsZWQpe2JhY2tncm91bmQ6dmFyKC0tYmctc29mdCk7Ym9yZGVyLWNvbG9yOnZhcigtLWZnLWZhaW50KX0uY2stcGFnZXItYnRuOmFjdGl2ZTpub3QoOmRpc2FibGVkKXt0cmFuc2Zvcm06dHJhbnNsYXRlWSguNXB4KX0uY2stcGFnZXItYnRuOmRpc2FibGVke2NvbG9yOnZhcigtLWZnLWZhaW50KTtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O29wYWNpdHk6LjY7Y3Vyc29yOmRlZmF1bHR9LmNrLXBhZ2VyLW57bWluLXdpZHRoOjhjaDt0ZXh0LWFsaWduOmNlbnRlcjt3aGl0ZS1zcGFjZTpub3dyYXA7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tZmctc29mdCk7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5jay1wYWdlci1hbGx7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3dpZHRoOmZpdC1jb250ZW50O2hlaWdodDozMnB4O21hcmdpbjo2cHggYXV0byAwO3BhZGRpbmc6MCAxMnB4O2JvcmRlcjowO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDpub25lO2NvbG9yOnZhcigtLWZnLXNvZnQpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQpO2ZvbnQtc2l6ZToxMi41cHg7Zm9udC13ZWlnaHQ6NTAwO2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTJzLGNvbG9yIC4xMnN9LmNrLXBhZ2VyLWFsbDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJnLXNvZnQpO2NvbG9yOnZhcigtLWZnKX0uY2stcGFnZXItYWxsOmZpcnN0LWNoaWxkLC5ncmlkKy5jay1wYWdlci1hbGx7bWFyZ2luLXRvcDoxNHB4fWJ1dHRvbjpmb2N1cy12aXNpYmxlLGE6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1yaW5nKTtvdXRsaW5lLW9mZnNldDoycHh9QG1lZGlhKG1heC13aWR0aDo0MzBweCl7LmNhcmR7Ym9yZGVyLXJhZGl1czpjYWxjKHZhcigtLXJhZGl1cykgLSAycHgpfS5oZWFke3BhZGRpbmc6MTJweCAxNHB4IDB9I2NvbnRlbnR7cGFkZGluZzo4cHggMTRweCAxNHB4fS5idXl7bWluLWhlaWdodDo0OHB4O2ZvbnQtc2l6ZToxNXB4fS5naG9zdHttaW4taGVpZ2h0OjQ0cHg7Zm9udC1zaXplOjEzLjVweH0uY2stcGFnZXItYnRue21pbi13aWR0aDoxMDRweDtoZWlnaHQ6NDBweH0uY2stcGFnZXItYWxse2hlaWdodDozNnB4fS5xdHkgYnV0dG9ue3dpZHRoOjQycHg7aGVpZ2h0OjQycHg7Zm9udC1zaXplOjE5cHh9LnJlZnJlc2h7d2lkdGg6MzRweDtoZWlnaHQ6MzRweH0uaGludCwubm90ZSwuZW1wdHl7Zm9udC1zaXplOjEzcHh9fUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LnJlZnJlc2guYnVzeSBzdmd7YW5pbWF0aW9uOm5vbmV9Knt0cmFuc2l0aW9uOm5vbmUhaW1wb3J0YW50fX06cm9vdHstLWJmLXByaW1hcnk6ICMxZDRlZDg7LS1iZi1zdWNjZXNzOiAjMDU5NjY5Oy0tYmYtd2FybmluZzogI2Q5NzcwNjstLWJmLWVycm9yOiAjZWY0NDQ0Oy0tYmYtaW5mbzogIzI1NjNlYjstLWJmLXN1cmZhY2U6ICNmZmZmZmY7LS1jLWJnOiB2YXIoLS1iZi1zdXJmYWNlKTstLWMtc3VuazogI2Y0ZjZmYTstLWMtcmFpc2U6ICNmZmZmZmY7LS1jLWluazogIzBjMTQyNDstLWMtaW5rLTI6ICMzZjRjNjM7LS1jLWluay0zOiAjNWI2ODdlOy0tYy1saW5lOiAjZTNlOGYwOy0tYy1saW5lLTI6ICNjY2Q0ZTE7LS1jLXByaW1hcnk6IHZhcigtLWJmLXByaW1hcnkpOy0tYy1wcmltYXJ5LWhvdmVyOiAjMWE0NGMyOy0tYy1wcmltYXJ5LXByZXNzOiAjMTYzYWE2Oy0tYy1wcmltYXJ5LWluazogIzFkNGVkODstLWMtcHJpbWFyeS1zb2Z0OiAjZWRmMmZlOy0tYy1wcmltYXJ5LXNvZnQtMjogI2RiZTVmZDstLWMtb24tcHJpbWFyeTogI2ZmZmZmZjstLWMtc3VjY2VzczogdmFyKC0tYmYtc3VjY2Vzcyk7LS1jLXN1Y2Nlc3MtaW5rOiAjMDQ3ODU3Oy0tYy1zdWNjZXNzLXNvZnQ6ICNlN2Y2ZWY7LS1jLXdhcm5pbmc6IHZhcigtLWJmLXdhcm5pbmcpOy0tYy13YXJuaW5nLWluazogI2I0NTMwOTstLWMtd2FybmluZy1zb2Z0OiAjZmRmM2UyOy0tYy1lcnJvcjogdmFyKC0tYmYtZXJyb3IpOy0tYy1lcnJvci1pbms6ICNjNDJiMmI7LS1jLWVycm9yLXNvZnQ6ICNmZGVkZWQ7LS1jLWluZm86IHZhcigtLWJmLWluZm8pOy0tYy1pbmZvLWluazogIzFmNTVkNjstLWMtaW5mby1zb2Z0OiAjZWRmM2ZlOy0tYy1zdGFyOiAjYjc3OTFmOy0tYy1zaGFkb3c6IDAgMXB4IDJweCByZ2IoMTYgMjQgNDAgLyA1JSksIDAgMXB4IDFweCByZ2IoMTYgMjQgNDAgLyAzJSk7LS1jLXNoYWRvdy0yOiAwIDFweCAycHggcmdiKDE2IDI0IDQwIC8gNiUpLCAwIDhweCAyNHB4IC0xMHB4IHJnYigxNiAyNCA0MCAvIDE4JSk7LS1jLXNoYWRvdy1jYXJkOiAwIDFweCAycHggcmdiKDE2IDI0IDQwIC8gNCUpLCAwIDEycHggMzJweCAtMThweCByZ2IoMTYgMjQgNDAgLyAyMiUpOy0tYy1zY3JpbTogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiKDggMTIgMjIgLyAwJSkgMzUlLCByZ2IoOCAxMiAyMiAvIDcyJSkgMTAwJSk7LS1yLWNhcmQ6IDIwcHg7LS1yLWxnOiAxNnB4Oy0tci1tZDogMTJweDstLXItc206IDlweDstLWYtc2FuczogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU0YgUHJvIFRleHQiLCAiU2Vnb2UgVUkgVmFyaWFibGUgVGV4dCIsICJTZWdvZSBVSSIsIFJvYm90bywgIkhlbHZldGljYSBOZXVlIiwgIlBpbmdGYW5nIFNDIiwgIkhpcmFnaW5vIFNhbnMgR0IiLCAiTWljcm9zb2Z0IFlhSGVpIiwgc2Fucy1zZXJpZjstLWYtZGlzcGxheTogIklvd2FuIE9sZCBTdHlsZSIsICJQYWxhdGlubyBMaW5vdHlwZSIsIFBhbGF0aW5vLCAiQm9vayBBbnRpcXVhIiwgR2VvcmdpYSwgIlNvbmd0aSBTQyIsICJTVFNvbmciLCAiU2ltU3VuIiwgc2VyaWY7LS1mLW1vbm86IHVpLW1vbm9zcGFjZSwgIlNGIE1vbm8iLCAiSmV0QnJhaW5zIE1vbm8iLCBNZW5sbywgQ29uc29sYXMsIG1vbm9zcGFjZTstLWVhc2U6IGN1YmljLWJlemllciguMiwgLjcsIC4yLCAxKX1bZGF0YS10aGVtZT1kYXJrXXstLWMtYmc6ICMxMTE3MjM7LS1jLXN1bms6ICMwYjEwMWE7LS1jLXJhaXNlOiAjMTgyMDMxOy0tYy1pbms6ICNlZWYyZjk7LS1jLWluay0yOiAjYjRiZmQxOy0tYy1pbmstMzogIzhmOWJiMTstLWMtbGluZTogIzI0MzA0ODstLWMtbGluZS0yOiAjMzU0MzVmOy0tYy1wcmltYXJ5OiAjM2E2OGYyOy0tYy1wcmltYXJ5LWhvdmVyOiAjMmY1ZGU2Oy0tYy1wcmltYXJ5LXByZXNzOiAjMjg1MmQyOy0tYy1wcmltYXJ5LWluazogIzkzYjJmZjstLWMtcHJpbWFyeS1zb2Z0OiAjMTgyNjRhOy0tYy1wcmltYXJ5LXNvZnQtMjogIzIxMzQ2NzstLWMtb24tcHJpbWFyeTogI2ZmZmZmZjstLWMtc3VjY2VzczogIzEyYjg4NjstLWMtc3VjY2Vzcy1pbms6ICM0ZmQ4YTY7LS1jLXN1Y2Nlc3Mtc29mdDogIzBmMmMyNzstLWMtd2FybmluZzogI2YwYTAzMjstLWMtd2FybmluZy1pbms6ICNmNmJkNWY7LS1jLXdhcm5pbmctc29mdDogIzMzMjUwZjstLWMtZXJyb3I6ICNmMjY0NjQ7LS1jLWVycm9yLWluazogI2ZmOGY4ZjstLWMtZXJyb3Itc29mdDogIzNhMWExZjstLWMtaW5mbzogIzViOGNmZjstLWMtaW5mby1pbms6ICM5ZGJhZmY7LS1jLWluZm8tc29mdDogIzE2MjMzZjstLWMtc3RhcjogI2YyYzQ2YjstLWMtc2hhZG93OiAwIDFweCAycHggcmdiKDAgMCAwIC8gMzAlKTstLWMtc2hhZG93LTI6IDAgMXB4IDJweCByZ2IoMCAwIDAgLyAzNSUpLCAwIDEwcHggMjhweCAtMTJweCByZ2IoMCAwIDAgLyA2MCUpOy0tYy1zaGFkb3ctY2FyZDogMCAxcHggMCByZ2IoMjU1IDI1NSAyNTUgLyAzJSkgaW5zZXQsIDAgMThweCA0MHB4IC0yNHB4IHJnYigwIDAgMCAvIDcwJSk7Y29sb3Itc2NoZW1lOmRhcmt9OnJvb3QsW2RhdGEtdGhlbWU9ZGFya117LS1iZzogdmFyKC0tYy1iZyk7LS1iZy1zb2Z0OiB2YXIoLS1jLXN1bmspOy0tZmc6IHZhcigtLWMtaW5rKTstLWZnLXNvZnQ6IHZhcigtLWMtaW5rLTIpOy0tZmctZmFpbnQ6IHZhcigtLWMtaW5rLTMpOy0tbGluZTogdmFyKC0tYy1saW5lKTstLWFjY2VudDogdmFyKC0tYy1wcmltYXJ5KTstLWFjY2VudC1mZzogdmFyKC0tYy1vbi1wcmltYXJ5KTstLWxpbms6IHZhcigtLWMtcHJpbWFyeS1pbmspOy0tZ29vZDogdmFyKC0tYy1zdWNjZXNzLWluayk7LS1nb29kLWJnOiB2YXIoLS1jLXN1Y2Nlc3Mtc29mdCk7LS1iYWQ6IHZhcigtLWMtZXJyb3ItaW5rKTstLWJhZC1iZzogdmFyKC0tYy1lcnJvci1zb2Z0KTstLXdhcm46IHZhcigtLWMtd2FybmluZy1pbmspOy0td2Fybi1iZzogdmFyKC0tYy13YXJuaW5nLXNvZnQpOy0tcmluZzogdmFyKC0tYy1wcmltYXJ5KTstLXJhZGl1czogdmFyKC0tci1jYXJkKTstLXJhZGl1cy1zbTogdmFyKC0tci1zbSk7LS1mb250OiB2YXIoLS1mLXNhbnMpOy0tbW9ubzogdmFyKC0tZi1tb25vKTstLXNoYWRvdzogdmFyKC0tYy1zaGFkb3ctY2FyZCl9W2hpZGRlbl17ZGlzcGxheTpub25lIWltcG9ydGFudH1odG1se2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9Ym9keXtwYWRkaW5nOjAgMCAxNHB4fWJvZHl7Zm9udC1mYW1pbHk6dmFyKC0tZi1zYW5zKTtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxLjQ1O2NvbG9yOnZhcigtLWMtaW5rKTt0ZXh0LXJlbmRlcmluZzpvcHRpbWl6ZUxlZ2liaWxpdHk7Zm9udC1mZWF0dXJlLXNldHRpbmdzOiJrZXJuIiwiY3YxMSJ9LmNhcmR7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjc2MHB4O2JhY2tncm91bmQ6dmFyKC0tYy1iZyk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1jYXJkKTtib3gtc2hhZG93OnZhcigtLWMtc2hhZG93LWNhcmQpfWJ1dHRvbixpbnB1dHtmb250LWZhbWlseTppbmhlcml0fWJ1dHRvbnstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnR9OndoZXJlKGJ1dHRvbixhLGlucHV0LHN1bW1hcnksW3JvbGU9YnV0dG9uXSk6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1jLWZvY3VzKTtvdXRsaW5lLW9mZnNldDoycHh9LnAtdG90YWwsLnAtd2FzLC5wLXVuaXQsLnQtZnJvbSwuc3VtLC5tb25leS1vdXQsLmZkLXByaWNlLC5jb2wtcHJpY2UsLnBzLXByaWNlLC5jb2RlLC5uLC53diwuY2R7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5oZWFke2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7bWluLWhlaWdodDo2MHB4O3BhZGRpbmc6MTJweCAxNnB4IDEwcHggMjBweH0uaG9tZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDttaW4td2lkdGg6MDttYXJnaW46MCBhdXRvIDAgMDtwYWRkaW5nOjRweCA2cHggNHB4IDA7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLXNtKTtiYWNrZ3JvdW5kOm5vbmU7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpvcGFjaXR5IC4xNXMgdmFyKC0tZWFzZSl9LmhvbWU6aG92ZXJ7b3BhY2l0eTouNzh9LmhlYWQgLmJyYW5ke21heC1oZWlnaHQ6MzRweDttYXgtd2lkdGg6MTUwcHg7b2JqZWN0LWZpdDpjb250YWlufVtkYXRhLXRoZW1lPWRhcmtdIC5oZWFkIC5icmFuZHtiYWNrZ3JvdW5kOiNlOWVkZjR9LmhlYWQgLnRpdGxle2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjY4MDtsZXR0ZXItc3BhY2luZzotLjAxNWVtfS5oZWFkIC5zdWJ7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1NTA7dGV4dC1hbGlnbjplbmQ7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS5oZWFkIC5zdWI6ZW1wdHl7ZGlzcGxheTpub25lfS5tZW1iZXJjaGlwLC5oZWFkdHJpcHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O2hlaWdodDozMnB4O3BhZGRpbmc6MCAxMnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluayk7Zm9udDppbmhlcml0O2ZvbnQtc2l6ZToxMi41cHg7Zm9udC13ZWlnaHQ6NjIwO3doaXRlLXNwYWNlOm5vd3JhcDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKX0ubWVtYmVyY2hpcDpob3ZlciwuaGVhZHRyaXA6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfS5oZWFkdHJpcHtiYWNrZ3JvdW5kOnZhcigtLWMtaW5rKTtib3JkZXItY29sb3I6dmFyKC0tYy1pbmspO2NvbG9yOnZhcigtLWMtYmcpO3BhZGRpbmc6MCAxMnB4IDAgMTBweH0uaGVhZHRyaXA6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLWluay0yKTtib3JkZXItY29sb3I6dmFyKC0tYy1pbmstMil9LnN1YmhlYWR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTJweDtwYWRkaW5nOjAgMjBweCAxMHB4fS5iYWNrYnRue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHg7bWF4LXdpZHRoOjUwJTtoZWlnaHQ6MzBweDtwYWRkaW5nOjAgMTJweCAwIDhweDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo2MDA7d2hpdGUtc3BhY2U6bm93cmFwO292ZXJmbG93OmhpZGRlbjt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO2N1cnNvcjpwb2ludGVyfS5iYWNrYnRuOmhvdmVye2NvbG9yOnZhcigtLWMtaW5rKTtiYWNrZ3JvdW5kOnZhcigtLWMtbGluZSl9LmZsb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O21hcmdpbjowO3BhZGRpbmc6MDtsaXN0LXN0eWxlOm5vbmU7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NjAwO2NvbG9yOnZhcigtLWMtaW5rLTMpfS5iYWNrYnRuOm5vdChbaGlkZGVuXSkrLmZsb3d7bWFyZ2luLWlubGluZS1zdGFydDphdXRvfS5mbG93IGxpe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwfS5mbG93IGxpK2xpOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjE4cHg7aGVpZ2h0OjEuNXB4O2JvcmRlci1yYWRpdXM6MnB4O2JhY2tncm91bmQ6dmFyKC0tYy1saW5lLTIpfS5mbG93IC5mZG90e2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7d2lkdGg6MjBweDtoZWlnaHQ6MjBweDtib3JkZXItcmFkaXVzOjk5OXB4O2JvcmRlcjoxLjVweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZmxvdyBsaS5kb25le2NvbG9yOnZhcigtLWMtaW5rLTIpfS5mbG93IGxpLmRvbmUgLmZkb3R7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSk7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnkpO2NvbG9yOnRyYW5zcGFyZW50fS5mbG93IGxpLmRvbmUgLmZkb3Q6YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtsZWZ0OjZweDt0b3A6M3B4O3dpZHRoOjRweDtoZWlnaHQ6OHB4O2JvcmRlcjpzb2xpZCB2YXIoLS1jLW9uLXByaW1hcnkpO2JvcmRlci13aWR0aDowIDJweCAycHggMDt0cmFuc2Zvcm06cm90YXRlKDQ1ZGVnKX0uZmxvdyBsaS5kb25lK2xpOmJlZm9yZSwuZmxvdyBsaVthcmlhLWN1cnJlbnQ9c3RlcF06YmVmb3Jle2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5KX0uZmxvdyBsaVthcmlhLWN1cnJlbnQ9c3RlcF17Y29sb3I6dmFyKC0tYy1pbmspfS5mbG93IGxpW2FyaWEtY3VycmVudD1zdGVwXSAuZmRvdHtib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1jLXByaW1hcnktc29mdCl9LmJ1c3liYXJ7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MCAwIGF1dG87aGVpZ2h0OjNweDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWNhcmQpIHZhcigtLXItY2FyZCkgMCAwO3BvaW50ZXItZXZlbnRzOm5vbmV9LmNhcmQuYnVzeSAuYnVzeWJhcjpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO3dpZHRoOjQwJTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx0cmFuc3BhcmVudCx2YXIoLS1jLXByaW1hcnkpLHRyYW5zcGFyZW50KTthbmltYXRpb246YnVzeSAxLjFzIHZhcigtLWVhc2UpIGluZmluaXRlfUBrZXlmcmFtZXMgYnVzeXswJXt0cmFuc2Zvcm06dHJhbnNsYXRlKC0xMDAlKX10b3t0cmFuc2Zvcm06dHJhbnNsYXRlKDI2MCUpfX0uY2FyZC5idXN5ICNjb250ZW50e29wYWNpdHk6LjU1O3RyYW5zaXRpb246b3BhY2l0eSAuMnMgdmFyKC0tZWFzZSkgLjEyc30uY2FyZC5idXN5IGJ1dHRvbiwuY2FyZC5idXN5IGlucHV0e3BvaW50ZXItZXZlbnRzOm5vbmV9I2NvbnRlbnR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTZweDtwYWRkaW5nOjRweCAyMHB4IDIwcHh9LmgtbmFtZXttYXJnaW46MDtmb250LXNpemU6MjFweDtmb250LXdlaWdodDo3MDA7bGluZS1oZWlnaHQ6MS4yO2xldHRlci1zcGFjaW5nOi0uMDJlbX0uaC13aGVyZXttYXJnaW4tdG9wOjRweDtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTNweH0uaC1zdW17Zm9udC1zaXplOjE0cHg7bGluZS1oZWlnaHQ6MS42O2NvbG9yOnZhcigtLWMtaW5rLTIpfS5ub3Rle3BhZGRpbmc6MDtmb250LXNpemU6MTIuNXB4O2xpbmUtaGVpZ2h0OjEuNTU7Y29sb3I6dmFyKC0tYy1pbmstMyl9LmVtcHR5e3BhZGRpbmc6MjhweCA4cHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7Y29sb3I6dmFyKC0tYy1pbmstMyl9LnByb3Nle2ZvbnQtc2l6ZToxMy41cHg7bGluZS1oZWlnaHQ6MS42NTtjb2xvcjp2YXIoLS1jLWluay0yKTt3aGl0ZS1zcGFjZTpwcmUtbGluZX0ucHJvc2UgaDR7bWFyZ2luOjE0cHggMCA0cHg7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjY1MH0ucHJvc2UgaDQ6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowfS5zZWN7bWFyZ2luOjRweCAwIC02cHg7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0OjY4MDtsZXR0ZXItc3BhY2luZzotLjAxZW19LnNlYy1ue2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDoycHg7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6MH0uaWNve2ZsZXg6bm9uZTt3aWR0aDoxNnB4O2hlaWdodDoxNnB4fS5lcnIsLndhcm5ub3RlLC51bnBhaWQsLmFza2VkLC5nYXB7cG9zaXRpb246cmVsYXRpdmU7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtwYWRkaW5nOjEycHggMTRweCAxMnB4IDE2cHg7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MS41NX0uZXJyOmJlZm9yZSwud2Fybm5vdGU6YmVmb3JlLC51bnBhaWQ6YmVmb3JlLC5hc2tlZDpiZWZvcmV7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDoxMHB4IGF1dG8gMTBweCAwO3dpZHRoOjNweDtib3JkZXItcmFkaXVzOjAgM3B4IDNweCAwO2JhY2tncm91bmQ6Y3VycmVudENvbG9yfS5lcnJ7YmFja2dyb3VuZDp2YXIoLS1jLWVycm9yLXNvZnQpO2NvbG9yOnZhcigtLWMtZXJyb3ItaW5rKX0ud2Fybm5vdGV7YmFja2dyb3VuZDp2YXIoLS1jLXdhcm5pbmctc29mdCk7Y29sb3I6dmFyKC0tYy13YXJuaW5nLWluayl9LnVucGFpZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7YmFja2dyb3VuZDp2YXIoLS1jLWluZm8tc29mdCk7Y29sb3I6dmFyKC0tYy1pbmstMil9LnVucGFpZDpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1jLWluZm8pfS51bnBhaWQgYntjb2xvcjp2YXIoLS1jLWluZm8taW5rKTtmb250LXdlaWdodDo2ODB9LmFza2Vke2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayk7Y29sb3I6dmFyKC0tYy1pbmstMil9LmFza2VkOmJlZm9yZXtiYWNrZ3JvdW5kOnZhcigtLWMtbGluZS0yKX0uYXNrZWQgYntjb2xvcjp2YXIoLS1jLWluayk7Zm9udC13ZWlnaHQ6NjUwfS5hc2tlZC5mbGFne2JhY2tncm91bmQ6dmFyKC0tYy13YXJuaW5nLXNvZnQpfS5hc2tlZC5mbGFnOmJlZm9yZXtiYWNrZ3JvdW5kOnZhcigtLWMtd2FybmluZyl9LmFza2VkIC5mb290e21hcmdpbi10b3A6NnB4fS5kZW1vc3RyaXB7ZGlzcGxheTpmbGV4O2dhcDoxMHB4O2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW46MCAwIDEycHg7cGFkZGluZzo4cHggMjBweDtib3JkZXItYmxvY2s6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7YmFja2dyb3VuZDp2YXIoLS1jLWluZm8tc29mdCk7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MS41fS5kZW1vc3RyaXAgYntmbGV4Om5vbmU7cGFkZGluZzoxcHggN3B4O2JvcmRlci1yYWRpdXM6NnB4O2JhY2tncm91bmQ6dmFyKC0tYy1pbmZvKTtjb2xvcjojZmZmO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMDhlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9W2RhdGEtdGhlbWU9ZGFya10gLmRlbW9zdHJpcCBie2JhY2tncm91bmQ6IzJmNWZkNn0uZ297ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6OHB4O21pbi1oZWlnaHQ6NDRweDtwYWRkaW5nOjAgMThweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtcHJpbWFyeSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeSk7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjE0LjVweDtmb250LXdlaWdodDo2NTA7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTtsaW5lLWhlaWdodDoxLjI7dGV4dC1hbGlnbjpjZW50ZXI7Y3Vyc29yOnBvaW50ZXI7Ym94LXNoYWRvdzowIDFweCAjZmZmZmZmMjkgaW5zZXQsMCAxcHggMnB4ICMxMDE4MjgxZjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKSx0cmFuc2Zvcm0gLjFzIHZhcigtLWVhc2UpfS5nbzpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1ob3Zlcik7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeS1ob3Zlcil9LmdvOmFjdGl2ZXtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1wcmVzcyk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMXB4KX0uZ28gLmljb3t3aWR0aDoxOHB4O2hlaWdodDoxOHB4fS5nbyAucHJpY2UtaW57cGFkZGluZy1pbmxpbmUtc3RhcnQ6MTBweDttYXJnaW4taW5saW5lLXN0YXJ0OjJweDtib3JkZXItaW5saW5lLXN0YXJ0OjFweCBzb2xpZCByZ2IoMjU1IDI1NSAyNTUgLyAzMiUpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZ28uc29mdHtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5LXNvZnQpO2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspO2JveC1zaGFkb3c6bm9uZX0uZ28uc29mdDpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0LTIpO2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnktc29mdC0yKX0uZ28uaW52ZXJ0ZWR7YmFja2dyb3VuZDp2YXIoLS1jLWluayk7Ym9yZGVyLWNvbG9yOnZhcigtLWMtaW5rKTtjb2xvcjp2YXIoLS1jLWJnKTtib3gtc2hhZG93Om5vbmV9LmdvLmludmVydGVkOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYy1pbmstMik7Ym9yZGVyLWNvbG9yOnZhcigtLWMtaW5rLTIpfS5nby5xdWlldHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2JvcmRlci1jb2xvcjp2YXIoLS1jLWxpbmUtMik7Y29sb3I6dmFyKC0tYy1pbmspO2JveC1zaGFkb3c6bm9uZX0uZ28ucXVpZXQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2JvcmRlci1jb2xvcjp2YXIoLS1jLWluay0zKX0uZ28uZGFuZ2Vye2JhY2tncm91bmQ6I2M0MmIyYjtib3JkZXItY29sb3I6I2M0MmIyYjtjb2xvcjojZmZmfS5nby5kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZDojYTkyMjIyO2JvcmRlci1jb2xvcjojYTkyMjIyfS5nby5ibG9ja3t3aWR0aDoxMDAlfS5nby5iaWd7bWluLWhlaWdodDo1MnB4O2ZvbnQtc2l6ZToxNS41cHg7Ym9yZGVyLXJhZGl1czoxNHB4fS5nby5zbXttaW4taGVpZ2h0OjM2cHg7cGFkZGluZzowIDE0cHg7Zm9udC1zaXplOjEzcHg7Ym9yZGVyLXJhZGl1czoxMHB4fS5mb290e2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6OHB4fS5mb290Pi5nb3tmbGV4OjEgMSBhdXRvfS5saW5reXtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspO2ZvbnQ6aW5oZXJpdDtmb250LXdlaWdodDo2MDA7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOjFweDt0ZXh0LXVuZGVybGluZS1vZmZzZXQ6M3B4O2N1cnNvcjpwb2ludGVyfS5zdGVwe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7cGFkZGluZzoycHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKX0uc3RlcCBidXR0b257ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjt3aWR0aDozMnB4O2hlaWdodDozMnB4O2JvcmRlcjowO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjppbmhlcml0O2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6MThweDtsaW5lLWhlaWdodDoxO2N1cnNvcjpwb2ludGVyfS5zdGVwIGJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LnN0ZXAgLm57bWluLXdpZHRoOjIycHg7dGV4dC1hbGlnbjpjZW50ZXI7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NzAwfS5zdGVwLmxpZ2h0e2JhY2tncm91bmQ6dmFyKC0tYy1iZyk7Y29sb3I6dmFyKC0tYy1pbmspO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO3BhZGRpbmc6MnB4fS5zdGVwLmxpZ2h0IGJ1dHRvbnt3aWR0aDozMHB4O2hlaWdodDozMHB4fS5zdGVwLmxpZ2h0IGJ1dHRvbjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmFkZHtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjQwcHg7aGVpZ2h0OjQwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKTtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKX0uYWRkOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpO2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspO2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5LXNvZnQpfS5nby5hZGR7d2lkdGg6YXV0bztoZWlnaHQ6YXV0bztib3JkZXItcmFkaXVzOnZhcigtLXItbWQpO2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpO2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jLW9uLXByaW1hcnkpfS5nby5hZGQ6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktaG92ZXIpO2NvbG9yOnZhcigtLWMtb24tcHJpbWFyeSl9LmNoaXBzLC5wbGFjZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo4cHh9LmNoaXB7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDttaW4taGVpZ2h0OjMwcHg7cGFkZGluZzowIDEycHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1MjB9YnV0dG9uLmNoaXB7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgdmFyKC0tZWFzZSl9YnV0dG9uLmNoaXA6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSk7Y29sb3I6dmFyKC0tYy1pbmspfS5jaGlwIHNtYWxse2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMS41cHg7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zfS5jaGlwLnBsYWNle21pbi1oZWlnaHQ6MzRweDtwYWRkaW5nOjAgMTRweDtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NTYwfS5jaGlwLnBsYWNlLnRhYntmb250LXdlaWdodDo2NTB9LmNoaXAucGxhY2UudGFiW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0sLmNoaXAucGxhY2UudG9vbFthcmlhLWV4cGFuZGVkPXRydWVde2JvcmRlci1jb2xvcjp2YXIoLS1jLWluayk7YmFja2dyb3VuZDp2YXIoLS1jLWluayk7Y29sb3I6dmFyKC0tYy1iZyl9LmNoaXAucGxhY2UudGFiW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gc21hbGx7Y29sb3I6aW5oZXJpdDtvcGFjaXR5Oi43fS5jaGlwLnBsYWNlLmdyb3VwIGltZ3toZWlnaHQ6MjBweDt3aWR0aDphdXRvO2JvcmRlci1yYWRpdXM6NXB4fS5jaGlwLnNvcnRbYXJpYS1wcmVzc2VkPXRydWVdLC5jaGlwLmFza1thcmlhLXByZXNzZWQ9dHJ1ZV17Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSk7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCk7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9LmNoaXAuc29ydFthcmlhLXByZXNzZWQ9dHJ1ZV0gc21hbGx7Y29sb3I6aW5oZXJpdH0uY2hpcC5hc2tbYXJpYS1wcmVzc2VkPXRydWVdOmJlZm9yZXtjb250ZW50OiIiO3dpZHRoOjZweDtoZWlnaHQ6MTBweDttYXJnaW46LTNweCAycHggMCAwO2JvcmRlcjpzb2xpZCBjdXJyZW50Q29sb3I7Ym9yZGVyLXdpZHRoOjAgMnB4IDJweCAwO3RyYW5zZm9ybTpyb3RhdGUoNDVkZWcpfS5iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2hlaWdodDoyNHB4O3BhZGRpbmc6MCA5cHg7Ym9yZGVyLXJhZGl1czo3cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjYyMDt3aGl0ZS1zcGFjZTpub3dyYXB9LmJhZGdlLmdvb2R7YmFja2dyb3VuZDp2YXIoLS1jLXN1Y2Nlc3Mtc29mdCk7Y29sb3I6dmFyKC0tYy1zdWNjZXNzLWluayl9LmJhZGdlLndhcm57YmFja2dyb3VuZDp2YXIoLS1jLXdhcm5pbmctc29mdCk7Y29sb3I6dmFyKC0tYy13YXJuaW5nLWluayl9LmJhZGdlLmJhZHtiYWNrZ3JvdW5kOnZhcigtLWMtZXJyb3Itc29mdCk7Y29sb3I6dmFyKC0tYy1lcnJvci1pbmspfS5iYWRnZS5pbmZve2JhY2tncm91bmQ6dmFyKC0tYy1pbmZvLXNvZnQpO2NvbG9yOnZhcigtLWMtaW5mby1pbmspfS5iYWRnZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo2cHh9LndoZW5iYXJ7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpIGF1dG87Z2FwOjEwcHg7YWxpZ24taXRlbXM6c3RyZXRjaH0ud2hlbi1kYXRlc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciBhdXRvIDFmcjthbGlnbi1pdGVtczpzdHJldGNoO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO292ZXJmbG93OmhpZGRlbn0ud2hlbi10aWxle2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6MnB4O21pbi13aWR0aDowO3BhZGRpbmc6MTBweCAxNHB4O2JvcmRlcjowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7dGV4dC1hbGlnbjpzdGFydDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKX0ud2hlbi10aWxlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX0ud2hlbi10aWxlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV17YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCk7Ym94LXNoYWRvdzppbnNldCAwIC0ycHggMCB2YXIoLS1jLXByaW1hcnkpfS53aGVuLXRpbGU6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lLW9mZnNldDotM3B4O2JvcmRlci1yYWRpdXM6MTJweH0ud2x7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NjUwO2xldHRlci1zcGFjaW5nOi4wNmVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX0ud3Z7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmJhc2VsaW5lO2dhcDo2cHg7d2hpdGUtc3BhY2U6bm93cmFwO2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MTVweDtmb250LXdlaWdodDo2NTA7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS53diBzbWFsbHtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTIuNXB4O2ZvbnQtd2VpZ2h0OjU1MH0ud2hlbi1zYXl7Z3JpZC1jb2x1bW46MSAvIC0xO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjYwMH0ud2hlbmJhci5wZW5kaW5nIC53aGVuLWRhdGVze2JvcmRlci1zdHlsZTpkYXNoZWR9LndoZW5iYXIucGVuZGluZyAud3Z7Y29sb3I6dmFyKC0tYy1pbmstMyl9LndoZW4tbntkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO2FsaWduLXNlbGY6Y2VudGVyO3BhZGRpbmc6M3B4IDhweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjY1MDt3aGl0ZS1zcGFjZTpub3dyYXB9LndoZW4tc2lkZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6c3RyZXRjaDtnYXA6OHB4fS53aGVuLXJvb21ze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6NHB4O3BhZGRpbmc6NnB4IDEwcHggNnB4IDE0cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6dmFyKC0tYy1iZyl9LndoZW4tcm9vbXMgLnN0ZXAubGlnaHR7Ym9yZGVyOjA7cGFkZGluZzowO21hcmdpbi1pbmxpbmUtc3RhcnQ6LTZweH0ud2hlbi1zaWRlIC5nb3tib3JkZXItcmFkaXVzOjE0cHh9LmNhbHtncmlkLWNvbHVtbjoxIC8gLTE7cGFkZGluZzoxNHB4IDE0cHggMTJweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWxnKTtiYWNrZ3JvdW5kOnZhcigtLWMtcmFpc2UpO2JveC1zaGFkb3c6dmFyKC0tYy1zaGFkb3ctMik7YW5pbWF0aW9uOnJpc2UgLjE4cyB2YXIoLS1lYXNlKX1Aa2V5ZnJhbWVzIHJpc2V7MCV7b3BhY2l0eTowO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC00cHgpfX0uY2FsLXRvcHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDo4cHg7bWFyZ2luLWJvdHRvbTo4cHh9LmNhbC1zYXl7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NjUwO2NvbG9yOnZhcigtLWMtaW5rKX0uY2FsLXNheSBzbWFsbHtkaXNwbGF5OmJsb2NrO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMDtjb2xvcjp2YXIoLS1jLWluay0zKX0uY2FsLW5hdntkaXNwbGF5OmZsZXg7Z2FwOjRweH0uY2FsLW5hdiBidXR0b257ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjt3aWR0aDozNHB4O2hlaWdodDozNHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluayk7Y3Vyc29yOnBvaW50ZXJ9LmNhbC1uYXYgYnV0dG9uOmRpc2FibGVke29wYWNpdHk6LjM1O2N1cnNvcjpkZWZhdWx0fS5jYWwtbmF2IGJ1dHRvbjpob3Zlcjpub3QoOmRpc2FibGVkKXtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmNhbC1tb250aHN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjIwcHh9LmNhbC1tb250aCsuY2FsLW1vbnRoe2Rpc3BsYXk6bm9uZX0uY2FsLW10e21hcmdpbjowIDAgNnB4IDRweDtmb250LXNpemU6MTMuNXB4O2ZvbnQtd2VpZ2h0OjY4MH0uY2FsLWdyaWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNyxtaW5tYXgoMCwxZnIpKTtyb3ctZ2FwOjJweH0uY2FsLWRvd3twYWRkaW5nOjRweCAwIDZweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo2NTA7Y29sb3I6dmFyKC0tYy1pbmstMyl9LmNke3Bvc2l0aW9uOnJlbGF0aXZlO21pbi13aWR0aDowO2hlaWdodDo0MHB4O3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLWMtaW5rKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEzLjVweDtmb250LXdlaWdodDo1NjA7Y3Vyc29yOnBvaW50ZXJ9LmNkPnNwYW57cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7d2lkdGg6bWluKDM4cHgsMTAwJSk7aGVpZ2h0OjM4cHg7bWFyZ2luOjFweCBhdXRvO2JvcmRlci1yYWRpdXM6OTk5cHg7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kLWNvbG9yIC4xMnMgdmFyKC0tZWFzZSl9LmNkOmhvdmVyOm5vdCg6ZGlzYWJsZWQpPnNwYW57YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2JveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHZhcigtLWMtbGluZS0yKX0uY2Q6ZGlzYWJsZWR7Y29sb3I6dmFyKC0tYy1pbmstMyk7b3BhY2l0eTouNDU7Y3Vyc29yOmRlZmF1bHR9LmNkLnRvZGF5PnNwYW46YWZ0ZXJ7Y29udGVudDoiIjtwb3NpdGlvbjphYnNvbHV0ZTtib3R0b206NXB4O2xlZnQ6NTAlO3dpZHRoOjRweDtoZWlnaHQ6NHB4O21hcmdpbi1sZWZ0Oi0ycHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcn0uY2QuYmV0d2VlbjpiZWZvcmUsLmNkLmluLmhhcy1vdXQ6YmVmb3JlLC5jZC5vdXQ6YmVmb3Jle2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MXB4IDA7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCl9LmNkLm91dDpiZWZvcmV7cmlnaHQ6NTAlfS5jZC5pbj5zcGFuLC5jZC5vdXQ+c3BhbntiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeSk7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KTtmb250LXdlaWdodDo3MDB9LmNkLmluOmhvdmVyPnNwYW4sLmNkLm91dDpob3Zlcj5zcGFue2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5LWhvdmVyKTtib3gtc2hhZG93Om5vbmV9LmNkLnJlYWNoOmJlZm9yZSwuY2QucmVhY2gtZW5kOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjFweCAwO2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5LXNvZnQpfS5jZC5yZWFjaC1lbmQ6YmVmb3Jle3JpZ2h0OjUwJX0uY2QucmVhY2gtZW5kPnNwYW57Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxLjVweCB2YXIoLS1jLXByaW1hcnkpfS5jZC5oYXMtcD5zcGFuOmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDo0cHg7cmlnaHQ6NnB4O3dpZHRoOjVweDtoZWlnaHQ6NXB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLWxpbmUtMil9LmNkLmJlc3Q+c3BhbjpiZWZvcmV7YmFja2dyb3VuZDp2YXIoLS1jLXN1Y2Nlc3MpfS5jYWwtYmVzdHtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKTtmb250LXdlaWdodDo2NTB9LmNhbC1iZXN0OmJlZm9yZXtjb250ZW50OiIiO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjdweDtoZWlnaHQ6N3B4O21hcmdpbi1pbmxpbmUtZW5kOjZweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzKX0uY2QuYmxhbmt7cG9pbnRlci1ldmVudHM6bm9uZX0uY2FsLWZvb3R7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTBweDttYXJnaW4tdG9wOjEwcHg7cGFkZGluZy10b3A6MTBweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2ZvbnQtc2l6ZToxMi41cHg7Y29sb3I6dmFyKC0tYy1pbmstMyl9LmZsZXgtZGF0ZXN7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpncmlkO2dyaWQtYXV0by1mbG93OmNvbHVtbjtncmlkLWF1dG8tY29sdW1uczptaW5tYXgoMTA4cHgsMWZyKTtnYXA6NnB4O292ZXJmbG93LXg6YXV0bztzY3JvbGxiYXItd2lkdGg6bm9uZTtzY3JvbGwtc25hcC10eXBlOnggcHJveGltaXR5O3BhZGRpbmc6MnB4O21hcmdpbjotMnB4O21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLCMwMDAgY2FsYygxMDAlIC0gMjhweCksdHJhbnNwYXJlbnQpfS5mbGV4LWRhdGVzLmF0LWVuZHttYXNrLWltYWdlOm5vbmV9LmZke3Njcm9sbC1zbmFwLWFsaWduOmNlbnRlcn0uZmxleC1kYXRlczo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lfS5mZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjJweDtwYWRkaW5nOjlweCAxMXB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluayk7Zm9udDppbmhlcml0O3RleHQtYWxpZ246c3RhcnQ7Y3Vyc29yOnBvaW50ZXI7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE1cyB2YXIoLS1lYXNlKSxiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgdmFyKC0tZWFzZSl9LmZkOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpfS5mZC1kYXl7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjExLjVweDtmb250LXdlaWdodDo2MDA7d2hpdGUtc3BhY2U6bm93cmFwfS5mZC1wcmljZXtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo3MDA7d2hpdGUtc3BhY2U6bm93cmFwfS5mZC5vbntib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5KTtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCB2YXIoLS1jLXByaW1hcnkpfS5mZC5vbiAuZmQtZGF5e2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspfS5mZC5iZXN0IC5mZC1wcmljZXtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0uZmQuYmVzdCAuZmQtZGF5OmFmdGVye2NvbnRlbnQ6IiDCtyBMb3dlc3QiO2NvbG9yOnZhcigtLWMtc3VjY2Vzcy1pbmspO2ZvbnQtd2VpZ2h0OjcwMH0uZmQub3V0e2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtib3JkZXItc3R5bGU6ZGFzaGVkfS5mZC5vdXQgLmZkLXByaWNle2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtd2VpZ2h0OjYwMH0uaGVsbG97ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4fS5oZWxsbyAuaC1uYW1le2ZvbnQtc2l6ZToyNHB4fS5zZWFyY2h7ZGlzcGxheTpncmlkO2dhcDoxMHB4O3BhZGRpbmc6MTJweDtib3JkZXItcmFkaXVzOjE4cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfS5zZWFyY2ggLndoZXJle3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7cGFkZGluZzowIDE0cHg7bWluLWhlaWdodDo1MnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZTowfS5zZWFyY2ggLndoZXJlOmZvY3VzLXdpdGhpbntib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1jLXByaW1hcnktc29mdCl9LnNlYXJjaCAud2hlcmUgLmljb3t3aWR0aDoxOHB4O2hlaWdodDoxOHB4fS5zZWFyY2ggLndoZXJlIGlucHV0e2ZsZXg6MTttaW4td2lkdGg6MDtoZWlnaHQ6NTBweDtib3JkZXI6MDtvdXRsaW5lOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS1jLWluayk7Zm9udDppbmhlcml0O2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0OjU1MH0uc2VhcmNoIC53aGVyZSBpbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC13ZWlnaHQ6NDUwfS5zZWFyY2ggLndoZW4tZGF0ZXMsLnNlYXJjaCAud2hlbi1yb29tc3tib3JkZXItY29sb3I6dmFyKC0tYy1saW5lLTIpfS5yZWdpb257ZGlzcGxheTpncmlkO2dhcDoxMHB4fS5jb3VudHJ5bmFtZXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDdlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmNvdW50cnluYW1lIHNtYWxse2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzowO3RleHQtdHJhbnNmb3JtOm5vbmV9LmRlc3R7ZGlzcGxheTpncmlkO2dhcDo4cHg7cGFkZGluZzoxMHB4IDAgMTJweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpfS5kZXN0Omxhc3QtY2hpbGR7Ym9yZGVyLWJvdHRvbTowfS5kZXN0LWNvdW50cnl7anVzdGlmeS1zZWxmOnN0YXJ0O3BhZGRpbmc6MDtib3JkZXI6MDtiYWNrZ3JvdW5kOm5vbmU7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6MTQuNXB4O2ZvbnQtd2VpZ2h0OjY1MDt0ZXh0LWFsaWduOnN0YXJ0O2N1cnNvcjpwb2ludGVyfS5kZXN0LWNvdW50cnkgc21hbGx7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC13ZWlnaHQ6NTAwfS5kZXN0LWNvdW50cnk6aG92ZXJ7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9LnRvb2xiYXJ7Z2FwOjhweH0uY2hpcC5wbGFjZS50b29se2dhcDo3cHg7Zm9udC13ZWlnaHQ6NjIwfS5jaGlwLnBsYWNlLnRvb2wgLmljb3t3aWR0aDoxNXB4O2hlaWdodDoxNXB4O29wYWNpdHk6Ljh9LmZpbHRlci1wYW5lbHtkaXNwbGF5OmdyaWQ7Z2FwOjEycHg7cGFkZGluZzoxNHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfS5mZ3JvdXB7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4fS5zb3J0cy1re21pbi13aWR0aDo1MnB4O2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDZlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmNpdHlncm91cHtkaXNwbGF5OmdyaWQ7Z2FwOjEwcHh9LmNpdHlncm91cCsuY2l0eWdyb3Vwe21hcmdpbi10b3A6OHB4fS5jaXR5bmFtZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7Z2FwOjZweDtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi0uMDFlbX0uY2l0eW5hbWUgc21hbGx7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1MDB9LnRpbGVze2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KGF1dG8tZmlsbCxtaW5tYXgoMjIwcHgsMWZyKSk7Z2FwOjE0cHh9LnRpbGV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtwYWRkaW5nOjA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSk7Y29sb3I6aW5oZXJpdDtmb250OmluaGVyaXQ7dGV4dC1hbGlnbjpzdGFydDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMThzIHZhcigtLWVhc2UpLGJveC1zaGFkb3cgLjE4cyB2YXIoLS1lYXNlKSx0cmFuc2Zvcm0gLjE4cyB2YXIoLS1lYXNlKX0udGlsZTpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYy1saW5lLTIpO2JveC1zaGFkb3c6dmFyKC0tYy1zaGFkb3ctMik7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTFweCl9LnRpbGU6aG92ZXIgLnQtc2hvdCBpbWd7dHJhbnNmb3JtOnNjYWxlKDEuMDMpfS50LXNob3R7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjthc3BlY3QtcmF0aW86NCAvIDM7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0MGRlZyx2YXIoLS1zaG90LWEpLHZhcigtLXNob3QtYikpO2NvbG9yOiNmZmZ9LnQtc2hvdCBpbWcsLmhlcm8gaW1nLC50aHVtYiBpbWcsLnJvb20tc2hvdCBpbWd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjE7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyO3RyYW5zaXRpb246dHJhbnNmb3JtIC41cyB2YXIoLS1lYXNlKX0udC1tYXJre3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MDtmb250LWZhbWlseTp2YXIoLS1mLWRpc3BsYXkpO2ZvbnQtc2l6ZTozMHB4O2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzouMDRlbTtvcGFjaXR5Oi45fS50LWJyYW5ke3Bvc2l0aW9uOmFic29sdXRlO2luc2V0LWJsb2NrLXN0YXJ0OjEwcHg7aW5zZXQtaW5saW5lLXN0YXJ0OjEwcHg7ei1pbmRleDoyO3BhZGRpbmc6M3B4IDlweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6IzBhMGUxODk0O2NvbG9yOiNmZmY7Zm9udC1zaXplOjExcHg7Zm9udC13ZWlnaHQ6NjUwO2xldHRlci1zcGFjaW5nOi4wMmVtO2JhY2tkcm9wLWZpbHRlcjpibHVyKDZweCl9LnQtYm9keXtkaXNwbGF5OmZsZXg7ZmxleDoxO2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6M3B4O3BhZGRpbmc6MTJweCAxNHB4IDE0cHh9LnQtbmFtZXt0ZXh0LXdyYXA6cHJldHR5O2Rpc3BsYXk6LXdlYmtpdC1ib3g7b3ZlcmZsb3c6aGlkZGVuOy13ZWJraXQtYm94LW9yaWVudDp2ZXJ0aWNhbDstd2Via2l0LWxpbmUtY2xhbXA6MjtsaW5lLWNsYW1wOjI7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NjUwO2xpbmUtaGVpZ2h0OjEuMztsZXR0ZXItc3BhY2luZzotLjAxZW19LnQtd2hlcmU6ZW1wdHl7ZGlzcGxheTpub25lfS50LW1ldGF7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O21pbi13aWR0aDowfS50LW1ldGEgLnJhdGV7bWFyZ2luLWlubGluZS1zdGFydDphdXRvfS50LXdoZXJle21pbi13aWR0aDowO292ZXJmbG93OmhpZGRlbjtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTIuNXB4O3doaXRlLXNwYWNlOm5vd3JhcDt0ZXh0LW92ZXJmbG93OmVsbGlwc2lzfS50LWZvb3R7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtZW5kO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDo4cHg7bWFyZ2luLXRvcDphdXRvO3BhZGRpbmctdG9wOjEwcHh9LnQtZnJvbXtkaXNwbGF5OmJsb2NrO2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MThweDtmb250LXdlaWdodDo3NTA7bGluZS1oZWlnaHQ6MS4xNTtsZXR0ZXItc3BhY2luZzotLjAxZW19LnQtZnJvbSBzbWFsbCwudC1zdWJ7ZGlzcGxheTpibG9jaztjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjUwMDtsZXR0ZXItc3BhY2luZzowfS50LWZyb20gLnQtcHJle2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjU1MDtjb2xvcjp2YXIoLS1jLWluay0zKX0udC1mcm9tLnQtbm9uZXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo2MDB9LnJhdGV7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo2NTA7d2hpdGUtc3BhY2U6bm93cmFwfS5yYXRlIHN2Z3tjb2xvcjp2YXIoLS1jLWluayl9LnJhdGUgLnQtZnJvbXtkaXNwbGF5OmlubGluZX0ucmF0ZSBzbWFsbHtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXdlaWdodDo1MDB9LnQtdGFnc3tkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7Z2FwOjZweDttYXJnaW4tdG9wOjhweH0udC10YWdzIC5wZXJre2ZvbnQtc2l6ZToxMnB4fS50aWxlLm92ZXJ7b3BhY2l0eTouOTJ9Lmhlcm97cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjttYXJnaW46LTRweCAtMjBweCAwO2FzcGVjdC1yYXRpbzoxNiAvIDg7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0MGRlZyx2YXIoLS1zaG90LWEpLHZhcigtLXNob3QtYikpO2NvbG9yOiNmZmZ9Lmhlcm8gaW1ne29iamVjdC1wb3NpdGlvbjpjZW50ZXIgNTglfS5oZXJvOmFmdGVye2NvbnRlbnQ6IiI7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDt6LWluZGV4OjE7YmFja2dyb3VuZDp2YXIoLS1jLXNjcmltKX0uaGVybyAudC1tYXJre2ZvbnQtc2l6ZTo0NHB4fS5oZXJvLXR4dHtwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDphdXRvIDAgMDt6LWluZGV4OjI7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O3BhZGRpbmc6MCAyMHB4IDE4cHg7Y29sb3I6I2ZmZn0uaGVyby10eHQgLnQtYnJhbmR7cG9zaXRpb246c3RhdGljO2FsaWduLXNlbGY6ZmxleC1zdGFydH0uaG90ZWwtbmFtZXttYXJnaW46MDtoeXBoZW5zOm5vbmU7Zm9udC1mYW1pbHk6dmFyKC0tZi1kaXNwbGF5KTtmb250LXNpemU6MjhweDtmb250LXdlaWdodDo2MDA7bGluZS1oZWlnaHQ6MS4xO2xldHRlci1zcGFjaW5nOi0uMDFlbTt0ZXh0LXdyYXA6YmFsYW5jZTt0ZXh0LXNoYWRvdzowIDFweCAxOHB4IHJnYigwIDAgMCAvIDMwJSl9Lmhlcm8td2hlcmV7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4IDEwcHg7Y29sb3I6I2ZmZmZmZmU1O2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjU1MH0uaGVyby13aGVyZSAucmF0ZXtjb2xvcjojZmZmfS5oZXJvLXdoZXJlIC5yYXRlIHN2Z3tjb2xvcjojZmZkMjdhfS5oZXJvLXdoZXJlIC5yYXRlIHNtYWxse2NvbG9yOiNmZmZmZmZjNztmb250LXdlaWdodDo1MDB9LmFtZW57ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo2cHggMTZweDttYXJnaW46MDtwYWRkaW5nOjA7bGlzdC1zdHlsZTpub25lO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxM3B4fS5hbWVuIGxpe2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo3cHh9LmFtZW4gbGk6YmVmb3Jle2NvbnRlbnQ6IiI7d2lkdGg6NXB4O2hlaWdodDo1cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeSk7b3BhY2l0eTouN30ucm9vbXN7ZGlzcGxheTpncmlkO2dhcDoxMnB4fS5yb29te2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MTE2cHggMWZyO2dyaWQtdGVtcGxhdGUtYXJlYXM6InNob3QgbWFpbiIgImJ1eSBidXkiO2dhcDoxMnB4IDE0cHg7cGFkZGluZzoxMnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXItbGcpO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSk7dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjE4cyB2YXIoLS1lYXNlKSxib3gtc2hhZG93IC4xOHMgdmFyKC0tZWFzZSl9LnJvb206aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWMtbGluZS0yKX0ucm9vbS5oZWxke2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLWMtcHJpbWFyeSl9LnJvb20tc2hvdHtncmlkLWFyZWE6c2hvdDtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO2FzcGVjdC1yYXRpbzoxO292ZXJmbG93OmhpZGRlbjtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQwZGVnLHZhcigtLXNob3QtYSksdmFyKC0tc2hvdC1iKSk7Y29sb3I6I2ZmZjtmb250LWZhbWlseTp2YXIoLS1mLWRpc3BsYXkpO2ZvbnQtc2l6ZToyMnB4fS5yb29tLW1haW57Z3JpZC1hcmVhOm1haW47ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O21pbi13aWR0aDowfS5yb29tLW5hbWV7bWFyZ2luOjA7Zm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6NjgwO2xpbmUtaGVpZ2h0OjEuMztsZXR0ZXItc3BhY2luZzotLjAxZW19LmZhY3Rze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6MnB4IDEycHg7bWFyZ2luOjA7cGFkZGluZzowO2xpc3Qtc3R5bGU6bm9uZTtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTIuNXB4fS5mYWN0cyBsaXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4fS5mYWN0cyAuaWNve3dpZHRoOjE0cHg7aGVpZ2h0OjE0cHg7b3BhY2l0eTouODV9LnBlcmtze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDttYXJnaW46MnB4IDAgMDtwYWRkaW5nOjA7bGlzdC1zdHlsZTpub25lfS5wZXJre2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo3cHg7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEzcHg7bGluZS1oZWlnaHQ6MS4zNX0ucGVyayAuaWNve21hcmdpbi10b3A6MXB4O2NvbG9yOnZhcigtLWMtaW5rKX0ucGVyayBie2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXdlaWdodDo2NTB9LnBlcmsud2FybiwucGVyay53YXJuIC5pY28sLnBlcmsud2FybiBie2NvbG9yOnZhcigtLWMtd2FybmluZy1pbmspfS5wZXJrLnNhdmUsLnBlcmsuc2F2ZSAuaWNvLC5wZXJrLnNhdmUgYntjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0ucm9vbS1idXl7Z3JpZC1hcmVhOmJ1eTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O3BhZGRpbmctdG9wOjEycHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKX0ucm9vbS1idXkgLnByaWNle2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjFweDttaW4td2lkdGg6MH0ucm9vbS1idXkgLmFjdGlvbntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHh9LnAtdG90YWx7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0Ojc1MDtsaW5lLWhlaWdodDoxLjE1O2xldHRlci1zcGFjaW5nOi0uMDE1ZW19LnAtdW5pdHtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo1NTB9LnAtbmlnaHR7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEycHh9LnAtd2Fze2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMi41cHg7dGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaH0ucC1tZW1iZXJ7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O21hcmdpbi10b3A6M3B4O3BhZGRpbmc6MXB4IDdweDtib3JkZXItcmFkaXVzOjZweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3VjY2Vzcy1zb2Z0KTtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjcwMH0ubGVmdHthbGlnbi1zZWxmOmZsZXgtc3RhcnR9LnJ0eXBlIC5yb29tLXNob3QsLnJ0eXBlIC5yb29tLW1haW4sLnJ0eXBlIC5yb29tLWJ1eXtncmlkLWFyZWE6YXV0b30ucnR5cGV7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXItbGcpO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSl9LnJ0eXBlLmhlbGR7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSl9LnJ0eXBlLWhlYWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczo5NnB4IG1pbm1heCgwLDFmcik7Z2FwOjEycHg7cGFkZGluZzoxMnB4fS5ydHlwZS1oZWFkIC5yb29tLXNob3R7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjA7YXNwZWN0LXJhdGlvOjE7YWxpZ24tc2VsZjpzdGFydH0ucnR5cGUtbntjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo2MDB9LnJhdGVze2Rpc3BsYXk6Z3JpZH0ucnJhdGV7ZGlzcGxheTpncmlkO2dhcDoxMHB4O3BhZGRpbmc6MTJweCAxNHB4IDE0cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKX0ucnJhdGUuaGVsZHtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KX0ucmF0ZS1tYWlue2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDttaW4td2lkdGg6MH0ucmF0ZS1uYW1le2ZvbnQtc2l6ZToxNC41cHg7Zm9udC13ZWlnaHQ6NjUwO2xpbmUtaGVpZ2h0OjEuM30ucnJhdGUgLnJvb20tYnV5e3BhZGRpbmctdG9wOjA7Ym9yZGVyLXRvcDowfS5zZWd7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDo0cHg7cGFkZGluZzo0cHg7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX0uc2VnLWJ7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtnYXA6N3B4O21pbi1oZWlnaHQ6NDBweDtib3JkZXI6MDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDp0cmFuc3BhcmVudDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEzLjVweDtmb250LXdlaWdodDo2MjA7Y3Vyc29yOnBvaW50ZXJ9LnNlZy1iW2FyaWEtcHJlc3NlZD10cnVlXXtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKTtib3gtc2hhZG93OnZhcigtLWMtc2hhZG93KX0uc3RhcnRze2Rpc3BsYXk6Z3JpZDtnYXA6OHB4O21hcmdpbi10b3A6NHB4fS5zdGFydHMgLmNoaXB7bWluLWhlaWdodDozNHB4O2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZ29vZC10by1rbm93LC5yb3dze2Rpc3BsYXk6Z3JpZDtnYXA6MTBweH0ucm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSBhdXRvIGF1dG87YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4O3BhZGRpbmc6MTRweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWxnKTtiYWNrZ3JvdW5kOnZhcigtLWMtcmFpc2UpfS5yb3cud2l0aHRodW1ie2dyaWQtdGVtcGxhdGUtY29sdW1uczo2NHB4IG1pbm1heCgwLDFmcikgYXV0byBhdXRvfS50aHVtYntwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjY0cHg7aGVpZ2h0OjY0cHg7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxNDBkZWcsdmFyKC0tc2hvdC1hKSx2YXIoLS1zaG90LWIpKTtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjcwMH0ucm93IC5ib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDttaW4td2lkdGg6MH0ucm93IC5uYW1le2ZvbnQtc2l6ZToxNC41cHg7Zm9udC13ZWlnaHQ6NjUwO2xpbmUtaGVpZ2h0OjEuM30ucm93IC5tZXRhe2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMi41cHg7bGluZS1oZWlnaHQ6MS40NX0ucm93IC5wcmljZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO2dhcDoxcHg7dGV4dC1hbGlnbjplbmR9LnJvdyAucC10b3RhbHtmb250LXNpemU6MTZweH0ucm93IC5hY3Rpb257ZGlzcGxheTpmbGV4O2dhcDo4cHh9LmRheXttYXJnaW46NHB4IDAgLTZweDtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDdlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmJhbmR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgYXV0byAxZnI7YWxpZ24taXRlbXM6Y2VudGVyO292ZXJmbG93OmhpZGRlbjtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6dmFyKC0tYy1iZyl9LmJhbmQtZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHg7cGFkZGluZzoxMHB4IDE0cHg7dGV4dC1hbGlnbjpzdGFydH0uYmFuZC1kOmxhc3QtY2hpbGR7YWxpZ24taXRlbXM6ZmxleC1lbmQ7dGV4dC1hbGlnbjplbmR9LmJhbmQgLndoZW4tbntiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKX0uY29uZiAuYmFuZHttYXJnaW4tdG9wOjZweDtib3JkZXItc3R5bGU6ZGFzaGVkO2JvcmRlci1jb2xvcjp2YXIoLS1jLWxpbmUtMil9LnJldmlldy1oe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH0uc3Vtc3tkaXNwbGF5OmdyaWQ7Z2FwOjhweDtwYWRkaW5nOjE0cHggMTZweDtib3JkZXItcmFkaXVzOnZhcigtLXItbGcpO2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX0uc3Vte2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTJweDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTMuNXB4fS5zdW0gc3BhbjpsYXN0LWNoaWxke2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXdlaWdodDo2MDA7dGV4dC1hbGlnbjplbmR9LnN1bS5nb29kIHNwYW4sLnN1bS5nb29kIHNwYW46bGFzdC1jaGlsZHtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKTtmb250LXdlaWdodDo2NTB9LnN1bS50b3RhbHthbGlnbi1pdGVtczpiYXNlbGluZTttYXJnaW4tdG9wOjRweDtwYWRkaW5nLXRvcDoxMnB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWMtbGluZS0yKTtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NzAwfS5zdW0udG90YWwgc3BhbjpsYXN0LWNoaWxke2ZvbnQtc2l6ZToyNHB4O2ZvbnQtd2VpZ2h0Ojc4MDtsZXR0ZXItc3BhY2luZzotLjAyZW19LnN1bS50b3RhbCBzbWFsbHtkaXNwbGF5OmJsb2NrO21hcmdpbi10b3A6MXB4O2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjUwMH0uZm9ybXtkaXNwbGF5OmdyaWQ7Z2FwOjE0cHg7cGFkZGluZzoxNnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXItbGcpO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSl9LmZvcm0taHttYXJnaW46MDtmb250LXNpemU6MTVweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LS4wMWVtfS50d297ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDoxMnB4fS5mb3JtIGxhYmVse2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTIuNXB4O2ZvbnQtd2VpZ2h0OjY1MH0uZm9ybSBpbnB1dFt0eXBlPXRleHRdLC5mb3JtIGlucHV0W3R5cGU9ZW1haWxdLC5mb3JtIGlucHV0W3R5cGU9dGVsXSwuZm9ybSBpbnB1dFt0eXBlPXRpbWVde3dpZHRoOjEwMCU7bWluLXdpZHRoOjA7aGVpZ2h0OjQ2cHg7cGFkZGluZzowIDEzcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NTAwO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4xNXMgdmFyKC0tZWFzZSksYm94LXNoYWRvdyAuMTVzIHZhcigtLWVhc2UpfS5mb3JtIGlucHV0W2FyaWEtaW52YWxpZD10cnVlXXtib3JkZXItY29sb3I6dmFyKC0tYy1lcnJvcik7Ym94LXNoYWRvdzowIDAgMCAzcHggdmFyKC0tYy1lcnJvci1zb2Z0KX0uZmllbGQtZXJye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo2cHg7Y29sb3I6dmFyKC0tYy1lcnJvci1pbmspO2ZvbnQtc2l6ZToxMi41cHg7Zm9udC13ZWlnaHQ6NTUwO2xpbmUtaGVpZ2h0OjEuNH0uZmllbGQtZXJyIC5pY297d2lkdGg6MTVweDtoZWlnaHQ6MTVweDttYXJnaW4tdG9wOjFweH0uZm9ybSBpbnB1dDo6cGxhY2Vob2xkZXJ7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC13ZWlnaHQ6NDAwfS5mb3JtIGlucHV0OmZvY3Vze291dGxpbmU6MDtib3JkZXItY29sb3I6dmFyKC0tYy1wcmltYXJ5KTtib3gtc2hhZG93OjAgMCAwIDNweCB2YXIoLS1jLXByaW1hcnktc29mdCl9LmFza3N7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKTtwYWRkaW5nLXRvcDoxMnB4fS5hc2tzIHN1bW1hcnl7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MTMuNXB4O2ZvbnQtd2VpZ2h0OjY1MDtjdXJzb3I6cG9pbnRlcjtsaXN0LXN0eWxlOm5vbmV9LmFza3Mgc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlcntkaXNwbGF5Om5vbmV9LmFza3Mgc3VtbWFyeTphZnRlcntjb250ZW50OiIiO3dpZHRoOjdweDtoZWlnaHQ6N3B4O21hcmdpbjotM3B4IDAgMCBhdXRvO2JvcmRlcjpzb2xpZCB2YXIoLS1jLWluay0zKTtib3JkZXItd2lkdGg6MCAxLjc1cHggMS43NXB4IDA7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjE1cyB2YXIoLS1lYXNlKX0uYXNrc1tvcGVuXSBzdW1tYXJ5OmFmdGVye21hcmdpbi10b3A6M3B4O3RyYW5zZm9ybTpyb3RhdGUoLTEzNWRlZyl9LmFza3Mgc3VtbWFyeSBzbWFsbHtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXdlaWdodDo1MDB9LmFza3MtYm9keXtkaXNwbGF5OmdyaWQ7Z2FwOjEycHg7bWFyZ2luLXRvcDoxMnB4fS5mb3JtIGxhYmVsLnJlbWVtYmVye2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo4cHg7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEyLjVweDtmb250LXdlaWdodDo1MDB9LmZvcm0gbGFiZWwucmVtZW1iZXIgaW5wdXR7bWFyZ2luOjJweCAwIDA7YWNjZW50LWNvbG9yOnZhcigtLWMtcHJpbWFyeSl9LnRydXN0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo4cHg7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEyLjVweDtsaW5lLWhlaWdodDoxLjV9LnRydXN0IC5pY297bWFyZ2luLXRvcDoxcHg7Y29sb3I6dmFyKC0tYy1pbmstMil9LmJvb2tlZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6MTBweCAwIDRweDt0ZXh0LWFsaWduOmNlbnRlcn0uYm9va2VkLW1hcmt7ZGlzcGxheTpncmlkO3BsYWNlLWl0ZW1zOmNlbnRlcjt3aWR0aDo1NnB4O2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1Y2Nlc3Mtc29mdCk7Y29sb3I6dmFyKC0tYy1zdWNjZXNzKTthbmltYXRpb246cG9wIC40NXMgdmFyKC0tZWFzZSl9LmJvb2tlZC1tYXJrIC5pY297d2lkdGg6MjhweDtoZWlnaHQ6MjhweH0uYm9va2VkLW1hcmsudGVzdHtiYWNrZ3JvdW5kOnZhcigtLWMtaW5mby1zb2Z0KTtjb2xvcjp2YXIoLS1jLWluZm8pfUBrZXlmcmFtZXMgcG9wezAle3RyYW5zZm9ybTpzY2FsZSguNik7b3BhY2l0eTowfTYwJXt0cmFuc2Zvcm06c2NhbGUoMS4wNik7b3BhY2l0eToxfX0uYm9va2VkLXR7bWFyZ2luOjA7Zm9udC1zaXplOjIycHg7Zm9udC13ZWlnaHQ6NzUwO2xldHRlci1zcGFjaW5nOi0uMDJlbX0uYm9va2VkLXN7bWF4LXdpZHRoOjQ0Y2g7bWFyZ2luOjA7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEzLjVweDtsaW5lLWhlaWdodDoxLjV9LmNvbmZ7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTpncmlkO2dhcDo0cHg7cGFkZGluZzoxOHB4IDIwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7YmFja2dyb3VuZDp2YXIoLS1jLXJhaXNlKTt0ZXh0LWFsaWduOmNlbnRlcn0uY29uZiAubm90ZXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjcwMDtsZXR0ZXItc3BhY2luZzouMDhlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LmNvZGV7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtZmFtaWx5OnZhcigtLWYtbW9ubyk7Zm9udC1zaXplOjI2cHg7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4wOGVtfS5jb25mLnRpY2tldCAud2hlcmV7cG9zaXRpb246cmVsYXRpdmV9LmNvbmYudGlja2V0IC53aGVyZTpiZWZvcmUsLmNvbmYudGlja2V0IC53aGVyZTphZnRlcntjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO3RvcDotMTBweDt3aWR0aDoyMHB4O2hlaWdodDoyMHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1iZyl9LmNvbmYudGlja2V0IC53aGVyZTpiZWZvcmV7bGVmdDotMzFweDtjbGlwLXBhdGg6aW5zZXQoMCAwIDAgNTAlKX0uY29uZi50aWNrZXQgLndoZXJlOmFmdGVye3JpZ2h0Oi0zMXB4O2NsaXAtcGF0aDppbnNldCgwIDUwJSAwIDApfS5jb25mIC53aGVyZXttYXJnaW4tdG9wOjhweDtwYWRkaW5nLXRvcDoxMnB4O2JvcmRlci10b3A6MXB4IGRhc2hlZCB2YXIoLS1jLWxpbmUtMik7Zm9udC1mYW1pbHk6dmFyKC0tZi1kaXNwbGF5KTtmb250LXNpemU6MTlweDtmb250LXdlaWdodDo2MDB9LmNvbmYgLndoZW57Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEzcHh9Lm1vbmV5LW91dHtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6YmFzZWxpbmU7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjEycHg7cGFkZGluZzoxNHB4IDE2cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWxnKTtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayk7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NjUwfS5tb25leS1vdXQgc3BhbjpsYXN0LWNoaWxke2ZvbnQtc2l6ZToyMnB4O2ZvbnQtd2VpZ2h0Ojc4MDtsZXR0ZXItc3BhY2luZzotLjAyZW19LnF1aWV0LWVuZHtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tdG9wOi00cHh9Lmxpbmt5LmRhbmdlcntjb2xvcjp2YXIoLS1jLWVycm9yLWluayk7Zm9udC1zaXplOjEzcHg7Zm9udC13ZWlnaHQ6NjAwfS5ob21lLWxpbmtze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDo0cHggMTBweDtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTNweH0uYXNrZWQtbGluZXtmb250LXN0eWxlOml0YWxpY30ubGVnc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjEwcHh9LmxlZ3tkaXNwbGF5OmdyaWQ7Z2FwOjRweDtwYWRkaW5nOjEycHggMTRweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKX0ubGVnLndhc3tiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmxlZy53YXMgLmxlZ3Z7dGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaDtjb2xvcjp2YXIoLS1jLWluay0zKX0ubGVna3tjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjA3ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5sZWd2e2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjY1MH0ubGVnbXtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTIuNXB4fS5zdGF0ZXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3BhZGRpbmc6MjJweCAxMnB4IDhweDt0ZXh0LWFsaWduOmNlbnRlcn0uc3RhdGUtaWNve2Rpc3BsYXk6Z3JpZDtwbGFjZS1pdGVtczpjZW50ZXI7d2lkdGg6NTJweDtoZWlnaHQ6NTJweDttYXJnaW4tYm90dG9tOjRweDtib3JkZXItcmFkaXVzOjE2cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2NvbG9yOnZhcigtLWMtaW5rLTIpfS5zdGF0ZS1pY28gLmljb3t3aWR0aDoyNHB4O2hlaWdodDoyNHB4fS5zdGF0ZS5lcnJvciAuc3RhdGUtaWNve2JhY2tncm91bmQ6dmFyKC0tYy1lcnJvci1zb2Z0KTtjb2xvcjp2YXIoLS1jLWVycm9yKX0uc3RhdGUubGltaXQgLnN0YXRlLWljb3tiYWNrZ3JvdW5kOnZhcigtLWMtd2FybmluZy1zb2Z0KTtjb2xvcjp2YXIoLS1jLXdhcm5pbmctaW5rKX0uc3RhdGUtdHttYXJnaW46MDtmb250LXNpemU6MThweDtmb250LXdlaWdodDo3MjA7bGV0dGVyLXNwYWNpbmc6LS4wMTVlbX0uc3RhdGUtZHttYXgtd2lkdGg6NDZjaDttYXJnaW46MDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTMuNXB4O2xpbmUtaGVpZ2h0OjEuNTV9LnN0YXRlIC5mb290e2p1c3RpZnktY29udGVudDpjZW50ZXI7bWFyZ2luLXRvcDo4cHh9LnN0YXRlIC5mb290Pi5nb3tmbGV4OjAgMSBhdXRvfS5za2Vse2Rpc3BsYXk6Z3JpZDtnYXA6MTRweH1bZGF0YS10aGVtZT1kYXJrXSAuc2t7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzE3MjAzMywjMjQzMDQ5LCMxNzIwMzMpfS5za3tib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdmFyKC0tYy1zdW5rKSAwJSx2YXIoLS1jLWxpbmUpIDUwJSx2YXIoLS1jLXN1bmspIDEwMCUpO2JhY2tncm91bmQtc2l6ZToyMDAlIDEwMCU7YW5pbWF0aW9uOnNoaW1tZXIgMS40cyBsaW5lYXIgaW5maW5pdGV9LnNrLWxvZ297ZGlzcGxheTpibG9jazt3aWR0aDoxMTJweDtoZWlnaHQ6MzBweH0uc2stYmFye2hlaWdodDo2MHB4O2JvcmRlci1yYWRpdXM6MTRweH0uc2stdGlsZXN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoYXV0by1maWxsLG1pbm1heCgyMjBweCwxZnIpKTtnYXA6MTRweH0uc2stdGlsZXtkaXNwbGF5OmdyaWQ7Z2FwOjEwcHh9LnNrLWltZ3thc3BlY3QtcmF0aW86NCAvIDM7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLWxnKX0uc2stbGluZXtoZWlnaHQ6MTRweDt3aWR0aDo4MCV9LnNrLWxpbmUuc2hvcnR7d2lkdGg6NDUlfUBrZXlmcmFtZXMgc2hpbW1lcnswJXtiYWNrZ3JvdW5kLXBvc2l0aW9uOjIwMCUgMH10b3tiYWNrZ3JvdW5kLXBvc2l0aW9uOi0yMDAlIDB9fS5jbXAtd3JhcHtvdmVyZmxvdy14OmF1dG87bWFyZ2luLWlubGluZTotMnB4O3BhZGRpbmc6MnB4fS5jbXB7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoNzZweCw5NnB4KSByZXBlYXQodmFyKC0tY29scyksbWlubWF4KDEyNHB4LDFmcikpO2FsaWduLWl0ZW1zOnN0cmV0Y2g7Y29sdW1uLWdhcDoxMHB4fS5jbXAuZm91cntncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDU2cHgsNzJweCkgcmVwZWF0KHZhcigtLWNvbHMpLG1pbm1heCgxMDRweCwxZnIpKX0uY21wLWNvcm5lcntncmlkLWNvbHVtbjoxO2dyaWQtcm93OjEgLyBzcGFuIHZhcigtLWhlYWQtcm93cywgNSl9LmNtcC1oZWFke2Rpc3BsYXk6Z3JpZDtncmlkLXJvdzoxIC8gc3BhbiB2YXIoLS1oZWFkLXJvd3MsIDUpO2dyaWQtdGVtcGxhdGUtcm93czpzdWJncmlkO3Jvdy1nYXA6OHB4O2FsaWduLWNvbnRlbnQ6c3RhcnQ7bWluLXdpZHRoOjA7cGFkZGluZy1ib3R0b206MTRweDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7YmFja2dyb3VuZDp2YXIoLS1jLXJhaXNlKX0uY21wLWhlYWQ+LmNvbC1uYW1lLC5jbXAtaGVhZD4uY29sLXByaWNlLC5jbXAtaGVhZD4ud2h5LC5jbXAtaGVhZD4ucGN7bWFyZ2luLWlubGluZToxMnB4fS5jbXAtaGVhZC5waWNre2JvcmRlci1jb2xvcjp2YXIoLS1jLXByaW1hcnkpO2JveC1zaGFkb3c6MCAwIDAgMXB4IHZhcigtLWMtcHJpbWFyeSl9LmNtcC1oZWFkIC50LXNob3R7YXNwZWN0LXJhdGlvOjE2IC8gMTA7d2lkdGg6MTAwJTtwYWRkaW5nOjA7Ym9yZGVyOjA7Y3Vyc29yOnBvaW50ZXJ9LnBpY2ttYXJre3BhZGRpbmc6NHB4IDhweDtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeSk7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KTtmb250LXNpemU6MTAuNXB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMDdlbTt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9LnBpY2ttYXJrLm5vbmV7dmlzaWJpbGl0eTpoaWRkZW59LmNvbC1uYW1le21hcmdpbi10b3A6MnB4O2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjY4MDtsaW5lLWhlaWdodDoxLjN9LmNvbC1ncm91cHtkaXNwbGF5OmJsb2NrO2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMS41cHg7Zm9udC13ZWlnaHQ6NTAwfS5jb2wtcHJpY2V7Zm9udC1zaXplOjE4cHg7Zm9udC13ZWlnaHQ6NzgwO2xldHRlci1zcGFjaW5nOi0uMDE1ZW19LmNvbC1wcmljZSBzbWFsbHtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0OjU1MDtsZXR0ZXItc3BhY2luZzowfS5jb2wtcHJpY2Ugc21hbGwuc3Vie2Rpc3BsYXk6YmxvY2t9LndoeXtwYWRkaW5nLWlubGluZS1zdGFydDo5cHg7Ym9yZGVyLWlubGluZS1zdGFydDoycHggc29saWQgdmFyKC0tYy1wcmltYXJ5LXNvZnQtMik7Y29sb3I6dmFyKC0tYy1pbmstMik7Zm9udC1zaXplOjEyLjVweDtmb250LXN0eWxlOml0YWxpYztsaW5lLWhlaWdodDoxLjV9LndoeS5ub25le3BhZGRpbmc6MDtib3JkZXI6MH0ucGN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4O2ZvbnQtc2l6ZToxMnB4O2xpbmUtaGVpZ2h0OjEuNDV9LnBjIGRpdntkaXNwbGF5OmZsZXg7Z2FwOjZweH0ucGMgLm17ZmxleDowIDAgYXV0bztmb250LXdlaWdodDo3NTB9LnBjIC5wcm8gLm17Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9LnBjIC5jb24gLm17Y29sb3I6dmFyKC0tYy1pbmstMyl9LmNtcCAuaywuY21wIC52e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7cGFkZGluZzo4cHggMTBweDtmb250LXNpemU6MTIuNXB4O2xpbmUtaGVpZ2h0OjEuNDV9LmNtcCAua3twb3NpdGlvbjpzdGlja3k7aW5zZXQtaW5saW5lLXN0YXJ0OjA7Z3JpZC1jb2x1bW46MTtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtd2VpZ2h0OjYwMH0uY21wIC52LmFsdCwuY21wIC5rOmhhcygrLnYuYWx0KXtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmRheXN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn0uZGF5cm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MzBweCAxZnI7Z2FwOjEycHh9LmRheW51bXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NHB4fS5kYXludW0gYntkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKTtmb250LXNpemU6MTIuNXB4O2ZvbnQtd2VpZ2h0Ojc1MDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LmRheW51bSBpe2ZsZXg6MTt3aWR0aDoycHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDp2YXIoLS1jLWxpbmUpfS5kYXlyb3c6bGFzdC1jaGlsZCAuZGF5bnVtIGl7ZGlzcGxheTpub25lfS5kYXlib2R5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjhweDttaW4td2lkdGg6MDtwYWRkaW5nOjNweCAwIDE4cHh9LmRheWxhYmVse2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0OjY4MDtsaW5lLWhlaWdodDoxLjN9LmRheWxhYmVsIHNtYWxse2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtd2VpZ2h0OjUwMH0uZGF5bm90ZXtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxLjU1fS5tb21lbnRze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjZweDttYXJnaW46MnB4IDAgMDtwYWRkaW5nOjA7bGlzdC1zdHlsZTpub25lfS5tb21lbnRzIGxpe2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6ODRweCAxZnI7Z2FwOjEwcHg7YWxpZ24taXRlbXM6YmFzZWxpbmV9Lm1vbWVudHMgLndoZW57b3ZlcmZsb3ctd3JhcDphbnl3aGVyZTtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LjA1ZW07dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfS5tb21lbnRzIC53aGF0e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjFweDtmb250LXNpemU6MTNweDtsaW5lLWhlaWdodDoxLjR9Lm1vbWVudHMgLndoYXQgYntmb250LXdlaWdodDo2MjB9Lm1vbWVudHMgLndoYXQgc21hbGx7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEycHh9LnBsYW4tc3RheXtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjEwNHB4IDFmcjtnYXA6MTJweDtvdmVyZmxvdzpoaWRkZW47Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1tZCk7YmFja2dyb3VuZDp2YXIoLS1jLXJhaXNlKTtjdXJzb3I6cG9pbnRlcn0ucGxhbi1zdGF5OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1jLWxpbmUtMil9LnBsYW4tc3RheSAucHMtc2hvdHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO21pbi1oZWlnaHQ6OTJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tc2hvdC1hKSx2YXIoLS1zaG90LWIpKTtjb2xvcjojZmZmfS5wbGFuLXN0YXkgLnBzLXNob3QgaW1ne3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7d2lkdGg6MTAwJTtoZWlnaHQ6MTAwJTtvYmplY3QtZml0OmNvdmVyfS5wbGFuLXN0YXkgLnBzLWJvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo0cHg7bWluLXdpZHRoOjA7cGFkZGluZzoxMHB4IDEycHggMTBweCAwfS5wbGFuLXN0YXkgLm5hbWV7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6NjgwO2xpbmUtaGVpZ2h0OjEuM30ucGxhbi1zdGF5IC5tZXRhe2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4fS5wbGFuLXN0YXkgLnBzLXByaWNle2ZvbnQtc2l6ZToxMy41cHg7Zm9udC13ZWlnaHQ6NzAwfS5wbGFuLW5pZ2h0e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOjhweDtwYWRkaW5nLXRvcDo2cHg7Ym9yZGVyLXRvcDoxcHggZGFzaGVkIHZhcigtLWMtbGluZS0yKTtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTIuNXB4O2N1cnNvcjpwb2ludGVyfS5wbGFuLWl0ZW17ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgYXV0bzthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjhweDtwYWRkaW5nOjEwcHggMTJweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKX0ucGxhbi1pdGVtIC5uYW1le2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjY1MH0ucGxhbi1pdGVtIC5tZXRhe2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4fS5pbnN0YXRle3BhZGRpbmc6M3B4IDlweDtib3JkZXItcmFkaXVzOjk5OXB4O2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjcwMDt3aGl0ZS1zcGFjZTpub3dyYXB9Lmluc3RhdGUueWVze2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzLXNvZnQpO2NvbG9yOnZhcigtLWMtc3VjY2Vzcy1pbmspfS5pbnN0YXRlLm5ve2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0yKX0uZ2Fwe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxMHB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0yKX0uZ2FwIGJ7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxNXB4O2ZvbnQtd2VpZ2h0Ojc4MDtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXN9LnN1Z2dlc3R7ZGlzcGxheTpncmlkO2dhcDo2cHg7cGFkZGluZy10b3A6MTRweDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpfS5zdWdnZXN0IC53bHttYXJnaW4tYm90dG9tOjJweH0uY2hpcC5uZXh0e2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O3dpZHRoOjEwMCU7bWluLWhlaWdodDo0NHB4O3BhZGRpbmc6OHB4IDE0cHg7Ym9yZGVyLXJhZGl1czoxMnB4O2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MTMuNXB4O2ZvbnQtd2VpZ2h0OjU2MDtsaW5lLWhlaWdodDoxLjM1O3RleHQtYWxpZ246c3RhcnR9LmNoaXAubmV4dCAuaWNve2ZsZXg6bm9uZTtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKX0uc3VnZ2VzdCAuY2hpcC5zYXkgc21hbGx7Y29sb3I6dmFyKC0tYy1pbmstMyl9LmNrLXBhZ2VyLWJ0bntoZWlnaHQ6NDBweDtib3JkZXItY29sb3I6dmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1tZCk7Zm9udC13ZWlnaHQ6NjAwfS5jay1wYWdlci1ue2NvbG9yOnZhcigtLWMtaW5rLTMpfS5wLWxpbmV7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxNC41cHg7Zm9udC13ZWlnaHQ6NjUwfS5yb3cubGluZSAucC11bml0e2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtd2VpZ2h0OjUwMH0ucm93LmxpbmUgLnBlcmtze21hcmdpbi10b3A6NHB4fS5tZW1iZXItb2ZmZXJ7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtwYWRkaW5nOjEycHggMTRweDtib3JkZXItcmFkaXVzOnZhcigtLXItbWQpO2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzLXNvZnQpO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxM3B4fS5tZW1iZXItb2ZmZXIgLmljbywubWVtYmVyLW9mZmVyIC5saW5reXtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0uYXNrLWdyb3Vwe2Rpc3BsYXk6Z3JpZDtnYXA6OHB4fS5saW5rc3tkaXNwbGF5OmdyaWQ7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXItbWQpfS5saW5rLXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O21pbi1oZWlnaHQ6NDZweDtwYWRkaW5nOjAgMTRweDtib3JkZXI6MDtib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JhY2tncm91bmQ6dmFyKC0tYy1yYWlzZSk7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6MTRweDtmb250LXdlaWdodDo1NjA7dGV4dC1hbGlnbjpzdGFydDtjdXJzb3I6cG9pbnRlcn0ubGluay1yb3c6Zmlyc3QtY2hpbGR7Ym9yZGVyLXRvcDowfS5saW5rLXJvdzpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9Lmxpbmstcm93IC5pY297Y29sb3I6dmFyKC0tYy1pbmstMyl9LnN0cmlwLWh7bWFyZ2luLWJvdHRvbTotOHB4O2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0OjYwMH0uZmQubG93ZXN0IC5mZC1wcmljZXtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0uZmQubG93ZXN0e2JvcmRlci1jb2xvcjpjb2xvci1taXgoaW4gc3JnYix2YXIoLS1jLXN1Y2Nlc3MpIDQ1JSx2YXIoLS1jLWxpbmUpKX0udGlsZS5sb3dlc3QgLnQtZnJvbXtjb2xvcjp2YXIoLS1jLXN1Y2Nlc3MtaW5rKX0udC1nb3tkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7bWFyZ2luLWlubGluZS1zdGFydDphdXRvO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspO2NvbG9yOnZhcigtLWMtaW5rLTIpO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMTVzIHZhcigtLWVhc2UpLGNvbG9yIC4xNXMgdmFyKC0tZWFzZSl9LnQtZ28gLmljb3t3aWR0aDoxNXB4O2hlaWdodDoxNXB4fS50aWxlOmhvdmVyIC50LWdve2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jLW9uLXByaW1hcnkpfS5yZW1pbmR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjEwcHg7cGFkZGluZzoxMnB4IDE0cHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWMtd2FybmluZy1zb2Z0KTtjb2xvcjp2YXIoLS1jLXdhcm5pbmctaW5rKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo1NjA7bGluZS1oZWlnaHQ6MS41fS5yZW1pbmQgLmljb3ttYXJnaW4tdG9wOjFweH0uY2R7aGVpZ2h0OjUycHh9LmNkPnNwYW57d2lkdGg6bWluKDM2cHgsMTAwJSk7aGVpZ2h0OjM2cHg7bWFyZ2luLXRvcDowfS5jZC1we3Bvc2l0aW9uOmFic29sdXRlO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO3otaW5kZXg6MTtvdmVyZmxvdzpoaWRkZW47Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjkuNXB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzotLjAyZW07dGV4dC1hbGlnbjpjZW50ZXI7d2hpdGUtc3BhY2U6bm93cmFwfS5jZC5iZXR3ZWVuOmJlZm9yZSwuY2QuaW4uaGFzLW91dDpiZWZvcmUsLmNkLm91dDpiZWZvcmUsLmNkLnJlYWNoOmJlZm9yZSwuY2QucmVhY2gtZW5kOmJlZm9yZXtpbnNldDoxcHggMCAxM3B4fS5jZC5oYXMtcD5zcGFuOmJlZm9yZXtkaXNwbGF5Om5vbmV9LmNkLmJlZm9yZTpub3QoOmRpc2FibGVkKXtjb2xvcjp2YXIoLS1jLWluay0zKX0uY2Q6Zm9jdXMtdmlzaWJsZXtvdXRsaW5lOjB9LmNkOmZvY3VzLXZpc2libGU+c3BhbntvdXRsaW5lOjJweCBzb2xpZCB2YXIoLS1jLWZvY3VzKTtvdXRsaW5lLW9mZnNldDoycHh9LmNhbC1tdHttYXJnaW4tbGVmdDowfVtkYXRhLXRoZW1lPWRhcmtdIC5jZDpkaXNhYmxlZHtvcGFjaXR5Oi42fS53di1lbXB0eXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXdlaWdodDo2MDB9LnNrLXNheXtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo2MDB9LnN0ZXAgYnV0dG9uOmRpc2FibGVke29wYWNpdHk6LjM7Y3Vyc29yOmRlZmF1bHR9LnNlYXJjaC5yZXRyeXtkaXNwbGF5OmZsZXg7Z2FwOjhweDt3aWR0aDoxMDAlO21heC13aWR0aDo0NDBweDttYXJnaW46OHB4IGF1dG8gMDtwYWRkaW5nOjA7YmFja2dyb3VuZDpub25lfS5zZWFyY2gucmV0cnkgLndoZXJle2ZsZXg6MTttaW4taGVpZ2h0OjQ4cHh9LnNlYXJjaC5yZXRyeSAud2hlcmUgaW5wdXR7aGVpZ2h0OjQ2cHh9LnQtbmFtZSwuaG90ZWwtbmFtZSwucm9vbS1uYW1lLC5yYXRlLW5hbWUsLmNvbmYgLndoZXJlLC5yb3cgLm5hbWUsLmNvbC1uYW1le3dvcmQtYnJlYWs6a2VlcC1hbGw7b3ZlcmZsb3ctd3JhcDphbnl3aGVyZX0uaGVhZHRyaXAtbntkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO21pbi13aWR0aDoyMHB4O2hlaWdodDoyMHB4O3BhZGRpbmc6MCA2cHg7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpO2NvbG9yOnZhcigtLWMtaW5rKTtmb250LXNpemU6MTEuNXB4O2ZvbnQtd2VpZ2h0Ojc1MH0uaGVhZCAuYnJhbmR7Ym94LXNpemluZzpjb250ZW50LWJveDtwYWRkaW5nOjVweCAxMHB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7LmNhbC1tb250aHN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9LmNhbC1tb250aCsuY2FsLW1vbnRoe2Rpc3BsYXk6YmxvY2t9LnJvb217Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjE2OHB4IG1pbm1heCgwLDFmcik7Z3JpZC10ZW1wbGF0ZS1hcmVhczoic2hvdCBtYWluIiAic2hvdCBidXkiO2FsaWduLWl0ZW1zOnN0YXJ0O3BhZGRpbmc6MTRweH0ucm9vbS1zaG90e2FzcGVjdC1yYXRpbzphdXRvO2FsaWduLXNlbGY6c3RyZXRjaDttaW4taGVpZ2h0OjE1MHB4fS5ydHlwZS1oZWFke2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMzJweCBtaW5tYXgoMCwxZnIpfS5oZXJve2FzcGVjdC1yYXRpbzoxNiAvIDd9LmhvdGVsLW5hbWV7Zm9udC1zaXplOjMycHh9fUBtZWRpYShtYXgtd2lkdGg6NTIwcHgpey5oZWFke21pbi1oZWlnaHQ6NTZweDtwYWRkaW5nOjEwcHggMTJweCA4cHggMTZweH0uc3ViaGVhZHtwYWRkaW5nOjAgMTZweCA4cHh9LmRlbW9zdHJpcHtwYWRkaW5nOjhweCAxNnB4fSNjb250ZW50e2dhcDoxNHB4O3BhZGRpbmc6MnB4IDE2cHggMTZweH0uaGVyb3ttYXJnaW4taW5saW5lOi0xNnB4O2FzcGVjdC1yYXRpbzo0IC8gM30uaGVyby10eHR7cGFkZGluZzowIDE2cHggMTZweH0uaG90ZWwtbmFtZXtmb250LXNpemU6MjVweH0ud2hlbmJhcntncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKX0ud2hlbi1zaWRle2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcn0ud2hlbi1yb29tc3tmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVufS53aGVuLXNpZGUgLmdve21pbi1oZWlnaHQ6NDhweH0ud2hlbi1zaWRlOm5vdCg6aGFzKC5nbykpe2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9LndoZW5iYXI6bm90KDpoYXMoLmdvKSl7Z2FwOjA7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnZhcigtLWMtYmcpfS53aGVuYmFyOm5vdCg6aGFzKC5nbykpIC53aGVuLWRhdGVze2JvcmRlcjowO2JvcmRlci1yYWRpdXM6MH0ud2hlbmJhcjpub3QoOmhhcyguZ28pKSAud2hlbi1yb29tc3twYWRkaW5nOjhweCAxMHB4IDhweCAxNHB4O2JvcmRlcjowO2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czowfS53aGVuYmFyOm5vdCg6aGFzKC5nbykpIC5jYWx7Ym9yZGVyOjA7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjA7Ym94LXNoYWRvdzpub25lfS50aWxlc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dhcDoxMHB4fS50aWxle2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpzdHJldGNofS50LXNob3R7ZmxleDowIDAgMTEycHg7YXNwZWN0LXJhdGlvOmF1dG87bWluLWhlaWdodDoxMzJweH0udC1icmFuZHtpbnNldC1ibG9jay1zdGFydDo4cHg7aW5zZXQtaW5saW5lLXN0YXJ0OjhweDtwYWRkaW5nOjJweCA3cHg7Zm9udC1zaXplOjEwcHh9LnQtYm9keXtwYWRkaW5nOjExcHggMTJweCAxMnB4O21pbi13aWR0aDowfS50LW5hbWV7Zm9udC1zaXplOjE0LjVweH0udC1mcm9te2ZvbnQtc2l6ZToxN3B4fS5zay10aWxlc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfS5zay10aWxle2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMTJweCAxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gYXV0byAxZnI7Y29sdW1uLWdhcDoxMnB4fS5zay1pbWd7Z3JpZC1yb3c6MSAvIHNwYW4gMzthc3BlY3QtcmF0aW86YXV0bztoZWlnaHQ6MTIwcHh9LnR3b3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfS5yb3csLnJvdy53aXRodGh1bWJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgYXV0b30ucm93IC50aHVtYntkaXNwbGF5Om5vbmV9LnJvdyAuYWN0aW9ue2dyaWQtY29sdW1uOjEgLyAtMTtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmR9LnJvdyAuYWN0aW9uOmVtcHR5e2Rpc3BsYXk6bm9uZX0uYmFja2J0bjpub3QoW2hpZGRlbl0pKy5mbG93IC5mbGFiZWx7ZGlzcGxheTpub25lfS5iYWNrYnRuOm5vdChbaGlkZGVuXSkrLmZsb3cgbGlbYXJpYS1jdXJyZW50PXN0ZXBdIC5mbGFiZWx7ZGlzcGxheTppbmxpbmV9LmZsb3cgbGkrbGk6YmVmb3Jle3dpZHRoOjEycHh9LmxlZ3N7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn0uY21we2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoNjhweCw4NHB4KSByZXBlYXQodmFyKC0tY29scyksbWlubWF4KDExOHB4LDFmcikpfS5nb3ttaW4taGVpZ2h0OjQ4cHh9LnJvb20tYnV5e2ZsZXgtd3JhcDp3cmFwfS5yb29tLWJ1eSAuYWN0aW9ue2ZsZXg6MSAxIDEwMCV9LnJvb20tYnV5IC5hY3Rpb24gLmdve2ZsZXg6MSAxIDB9LnJ0eXBlLWhlYWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjc2cHggbWlubWF4KDAsMWZyKX0uZ28uc217bWluLWhlaWdodDo0MHB4fS5jaGlwLC5jaGlwLnBsYWNle21pbi1oZWlnaHQ6MzhweH0ubWVtYmVyY2hpcCwuaGVhZHRyaXB7aGVpZ2h0OjM2cHh9LnN0ZXAubGlnaHQgYnV0dG9uLC5zdGVwIGJ1dHRvbnt3aWR0aDozNnB4O2hlaWdodDozNnB4fX0jY29udGVudC5lbnRlcj4qe2FuaW1hdGlvbjplbnRlciAuMjhzIHZhcigtLWVhc2UpIGJvdGh9I2NvbnRlbnQuZW50ZXI+Om50aC1jaGlsZCgyKXthbmltYXRpb24tZGVsYXk6LjAzc30jY29udGVudC5lbnRlcj46bnRoLWNoaWxkKDMpe2FuaW1hdGlvbi1kZWxheTouMDZzfSNjb250ZW50LmVudGVyPjpudGgtY2hpbGQobis0KXthbmltYXRpb24tZGVsYXk6LjA5c31Aa2V5ZnJhbWVzIGVudGVyezAle29wYWNpdHk6MDt0cmFuc2Zvcm06dHJhbnNsYXRlWSg2cHgpfX1AbWVkaWEocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjpyZWR1Y2UpeyosKjpiZWZvcmUsKjphZnRlcnthbmltYXRpb246bm9uZSFpbXBvcnRhbnQ7dHJhbnNpdGlvbjpub25lIWltcG9ydGFudH0uY2FyZC5idXN5IC5idXN5YmFyOmJlZm9yZXt3aWR0aDoxMDAlO3RyYW5zZm9ybTpub25lO29wYWNpdHk6LjZ9LnNre2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX19LmJvb2tlZC1tYXJrLnBheXtiYWNrZ3JvdW5kOnZhcigtLWMtcHJpbWFyeS1zb2Z0KTtjb2xvcjp2YXIoLS1jLXByaW1hcnkpfS5wYXlib3h7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweDtwYWRkaW5nOjE2cHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1sZyk7YmFja2dyb3VuZDp2YXIoLS1jLWJnKX0ucGF5LWFtb3VudHtmb250LXNpemU6MzBweDtmb250LXdlaWdodDo3MjA7bGluZS1oZWlnaHQ6MS4xO2xldHRlci1zcGFjaW5nOi0uMDFlbTtmb250LXZhcmlhbnQtbnVtZXJpYzp0YWJ1bGFyLW51bXM7Y29sb3I6dmFyKC0tYy1pbmspfS5wYXktYnl7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjhweDtwYWRkaW5nOjEwcHggMTJweDtib3JkZXItcmFkaXVzOnZhcigtLXItbWQpO2JhY2tncm91bmQ6dmFyKC0tYy13YXJuaW5nLXNvZnQpO2NvbG9yOnZhcigtLWMtd2FybmluZy1pbmspO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjU2MDtsaW5lLWhlaWdodDoxLjV9LnBheS1ieSAuY291bnRkb3due2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30udW5wYWlkLnBhaWR7YmFja2dyb3VuZDp2YXIoLS1jLXN1Y2Nlc3Mtc29mdCl9LnVucGFpZC5wYWlkOmJlZm9yZXtiYWNrZ3JvdW5kOnZhcigtLWMtc3VjY2Vzcyl9LnVucGFpZC5wYWlkIGJ7Y29sb3I6dmFyKC0tYy1zdWNjZXNzLWluayl9LmNhbC1ncmlke3Jvdy1nYXA6NHB4fS5jZHtoZWlnaHQ6NTBweH0uY2Q+c3BhbntkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2dhcDoxcHg7d2lkdGg6Y2FsYygxMDAlIC0gNHB4KTttYXgtd2lkdGg6NjRweDtoZWlnaHQ6MTAwJTttYXJnaW46MCBhdXRvO2JvcmRlci1yYWRpdXM6MTBweH0uY2Qtbntmb250LXdlaWdodDppbmhlcml0O2xpbmUtaGVpZ2h0OjEuMX0uY2QtcHtwb3NpdGlvbjpzdGF0aWM7bWF4LXdpZHRoOjEwMCU7b3ZlcmZsb3c6aGlkZGVuO2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxMC41cHg7Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjEuMTU7bGV0dGVyLXNwYWNpbmc6LS4wMmVtO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uY2QubG93ZXN0IC5jZC1we2NvbG9yOnZhcigtLWMtc3VjY2Vzcy1pbmspO2ZvbnQtd2VpZ2h0Ojc1MH0uY2QudG9kYXk+c3BhbjphZnRlcntkaXNwbGF5Om5vbmV9LmNkLnRvZGF5IC5jZC1ue3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgMnB4O3RleHQtdW5kZXJsaW5lLW9mZnNldDozcHh9LmNkLmJldHdlZW46YmVmb3JlLC5jZC5pbi5oYXMtb3V0OmJlZm9yZSwuY2Qub3V0OmJlZm9yZSwuY2QucmVhY2g6YmVmb3JlLC5jZC5yZWFjaC1lbmQ6YmVmb3Jle2luc2V0OjB9LmNkLmluLmhhcy1vdXQ6YmVmb3Jle2xlZnQ6NTAlfS5jZC5vdXQ6YmVmb3JlLC5jZC5yZWFjaC1lbmQ6YmVmb3Jle3JpZ2h0OjUwJX0uY2QuaW4+c3BhbiwuY2Qub3V0PnNwYW57YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnkpO2NvbG9yOnZhcigtLWMtb24tcHJpbWFyeSl9LmNkLmluIC5jZC1wLC5jZC5vdXQgLmNkLXB7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KX0uY2Q6Zm9jdXMtdmlzaWJsZT5zcGFue291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWMtZm9jdXMpO291dGxpbmUtb2Zmc2V0OjFweH0uY2QuaW46Zm9jdXMtdmlzaWJsZT5zcGFuLC5jZC5vdXQ6Zm9jdXMtdmlzaWJsZT5zcGFue291dGxpbmUtY29sb3I6dmFyKC0tYy1pbmspfS5jYWwtbGVnZW5ke2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweDttaW4td2lkdGg6MH0uY2FsLWxlZ2VuZCBzbWFsbHtmb250LXNpemU6MTEuNXB4O2xpbmUtaGVpZ2h0OjEuNDtjb2xvcjp2YXIoLS1jLWluay0zKX0uZmxleC1kYXRlc3tzY3JvbGwtc25hcC10eXBlOnggbWFuZGF0b3J5O3Njcm9sbC1wYWRkaW5nLWlubGluZToycHg7bWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsIzAwMCAxMnB4LCMwMDAgY2FsYygxMDAlIC0gMjhweCksdHJhbnNwYXJlbnQpfS5mbGV4LWRhdGVzIC5mZHtzY3JvbGwtc25hcC1hbGlnbjpzdGFydH0uZmxleC1kYXRlcy5hdC1zdGFydHttYXNrLWltYWdlOmxpbmVhci1ncmFkaWVudCg5MGRlZywjMDAwIGNhbGMoMTAwJSAtIDI4cHgpLHRyYW5zcGFyZW50KX0uZmxleC1kYXRlcy5hdC1lbmR7bWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsIzAwMCAxMnB4KX0uZmxleC1kYXRlcy5hdC1zdGFydC5hdC1lbmR7bWFzay1pbWFnZTpub25lfS5mb3JtIGlucHV0W2FyaWEtaW52YWxpZD10cnVlXSwuZm9ybSBpbnB1dFthcmlhLWludmFsaWQ9dHJ1ZV06Zm9jdXN7Ym9yZGVyLWNvbG9yOnZhcigtLWMtZXJyb3IpO2JveC1zaGFkb3c6MCAwIDAgM3B4IHZhcigtLWMtZXJyb3Itc29mdCl9LmZvcm0tZXJye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo4cHg7cGFkZGluZzoxMHB4IDEycHg7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLW1kKTtiYWNrZ3JvdW5kOnZhcigtLWMtZXJyb3Itc29mdCk7Y29sb3I6dmFyKC0tYy1lcnJvci1pbmspO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjQ1fS5mb3JtLWVyciAuaWNve2ZsZXg6bm9uZTt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O21hcmdpbi10b3A6MXB4fS5zdGF0ZSAuZm9vdD4uZ297d2hpdGUtc3BhY2U6bm93cmFwfS5zdGF0ZSAubGlua3N7YWxpZ24tc2VsZjpzdHJldGNoO21hcmdpbi10b3A6NnB4O3RleHQtYWxpZ246c3RhcnR9LmxpbmstZ297ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjRweDtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKTtmb250LXdlaWdodDo2NTB9LmxpbmstZ28gLmljb3tjb2xvcjppbmhlcml0fUBtZWRpYShtYXgtd2lkdGg6NTIwcHgpey5zdGF0ZSAuZm9vdHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24tc2VsZjpzdHJldGNofS5zdGF0ZSAuZm9vdD4uZ297d2lkdGg6MTAwJX19LmhlYWQgLmJyYW5ke21heC1oZWlnaHQ6MzhweDtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6bm9uZX1bZGF0YS10aGVtZT1kYXJrXSAuaGVhZCAuYnJhbmR7cGFkZGluZzo0cHggOHB4O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6I2RmZTVlZTtmaWx0ZXI6YnJpZ2h0bmVzcyguOSl9LmJhbmQgLndoZW4tbntsaW5lLWhlaWdodDoxLjI1O3RleHQtYWxpZ246Y2VudGVyfS5iYW5kIC53aGVuLW4gc21hbGx7ZGlzcGxheTpibG9jaztmb250LXNpemU6MTAuNXB4O2ZvbnQtd2VpZ2h0OjYwMDtvcGFjaXR5Oi44NX0uaGVhZCAudGl0bGU6ZW1wdHl7ZGlzcGxheTpub25lfS5zay1sb2dve29yZGVyOi0xfS5za2Vse2dhcDoxMnB4fS5zay1zdWJ7d2lkdGg6NTglO2hlaWdodDoxNHB4O21hcmdpbi10b3A6LTZweH0uc2stYmFye2hlaWdodDoxMThweH0uc2stY2hpcHN7ZGlzcGxheTpmbGV4O2dhcDoxMHB4fS5zay1jaGlwe3dpZHRoOjE2OHB4O2hlaWdodDo0MHB4O2JvcmRlci1yYWRpdXM6OTk5cHh9LnNrLWNoaXAuc2hvcnR7d2lkdGg6MTA0cHh9LnNrLXNheXtmb250LXNpemU6MjBweDtmb250LXdlaWdodDo3MDA7bGV0dGVyLXNwYWNpbmc6LS4wMTVlbX0uc3RlcCBidXR0b246ZGlzYWJsZWR7b3BhY2l0eTouNDV9Lm5ie2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDoxMDAlO292ZXJmbG93LXdyYXA6YW55d2hlcmV9LmNvbmYudGlja2V0IC53aGVyZTpiZWZvcmUsLmNvbmYudGlja2V0IC53aGVyZTphZnRlcntjbGlwLXBhdGg6bm9uZTtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7dHJhbnNmb3JtOnJvdGF0ZSg0NWRlZyl9LmNvbmYudGlja2V0IC53aGVyZTpiZWZvcmV7Ym9yZGVyLXRvcC1jb2xvcjp2YXIoLS1jLWxpbmUpO2JvcmRlci1yaWdodC1jb2xvcjp2YXIoLS1jLWxpbmUpfS5jb25mLnRpY2tldCAud2hlcmU6YWZ0ZXJ7Ym9yZGVyLWJvdHRvbS1jb2xvcjp2YXIoLS1jLWxpbmUpO2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLWMtbGluZSl9LnF1aWV0LWVuZHttYXJnaW4tdG9wOjZweH0uc3RlcCBidXR0b24sLnN0ZXAubGlnaHQgYnV0dG9uLC5jYWwtbmF2IGJ1dHRvbnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4fS5jYWwtZm9vdCAubGlua3l7bWluLWhlaWdodDo0MHB4O3BhZGRpbmc6MCA2cHg7bWFyZ2luOi04cHggLTZweH0udC1tZXRhOm5vdCg6aGFzKC5yYXRlKSk6aGFzKC50LXdoZXJlOmVtcHR5KXtkaXNwbGF5Om5vbmV9LnN0YXRlIC5saW5rLXJvd3t3aWR0aDoxMDAlfS5saW5rLXJvdz5zcGFuOmZpcnN0LWNoaWxke2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjA7bGluZS1oZWlnaHQ6MS4zNTt0ZXh0LWFsaWduOnN0YXJ0fS5saW5rLWdve2ZsZXg6bm9uZTt3aGl0ZS1zcGFjZTpub3dyYXB9LmNvbmYgLndoZW4gLm5ie2Rpc3BsYXk6YmxvY2t9LmNvbmYgLndoZW4gLm5iK3NwYW5bYXJpYS1oaWRkZW5de2Rpc3BsYXk6bm9uZX0uc2lte2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbi1pbmxpbmUtZW5kOjZweDtwYWRkaW5nOjFweCA2cHg7Ym9yZGVyOjFweCBzb2xpZCBjdXJyZW50Q29sb3I7Ym9yZGVyLXJhZGl1czo0cHg7Zm9udC1mYW1pbHk6dmFyKC0tZi1zYW5zKTtmb250LXNpemU6LjVlbTtmb250LXdlaWdodDo2NTA7bGV0dGVyLXNwYWNpbmc6LjAyZW07bGluZS1oZWlnaHQ6MS41O3ZlcnRpY2FsLWFsaWduOi4zNWVtO29wYWNpdHk6Ljh9LnQtbmFtZSAuc2ltLC5jb25mIC53aGVyZSAuc2lte2ZvbnQtc2l6ZToxMC41cHg7dmVydGljYWwtYWxpZ246LjE1ZW19LnNpbS1ub3Rle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDo3cHg7Y29sb3I6dmFyKC0tYy1pbmstMyk7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MS41fS5zaW0tbm90ZSAuaWNve2ZsZXg6bm9uZTt3aWR0aDoxNHB4O2hlaWdodDoxNHB4O21hcmdpbi10b3A6MnB4fS5yb29tLWxlYWR7bWFyZ2luOjA7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxM3B4O2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjR9LmxlYWQta3tkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206MXB4O2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspO2ZvbnQtc2l6ZToxMC41cHg7Zm9udC13ZWlnaHQ6NzAwO2xldHRlci1zcGFjaW5nOi4wOGVtO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX06bGFuZyh6aCkgLmxlYWQta3tsZXR0ZXItc3BhY2luZzouMDJlbX0uaC1mcmVle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDttYXJnaW4tdG9wOjZweDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTIuNXB4O2ZvbnQtd2VpZ2h0OjYwMH0uaC1mcmVlIC5pY297d2lkdGg6MTRweDtoZWlnaHQ6MTRweH06cm9vdHstLXItbGc6IDEycHh9OnJvb3QgLmgtbmFtZXtmb250LXNpemU6MjRweDtmb250LXdlaWdodDo4MDA7bGV0dGVyLXNwYWNpbmc6LS4wMmVtfTpyb290IC53diw6cm9vdCAudC1mcm9tLDpyb290IC5wLXRvdGFsLDpyb290IC5mZC1wcmljZSw6cm9vdCAuZmQtZG4sOnJvb3QgLmNkLXB7Zm9udC12YXJpYW50LW51bWVyaWM6dGFidWxhci1udW1zIGxpbmluZy1udW1zfTpyb290IC53dntmb250LXNpemU6MjBweDtmb250LXdlaWdodDo3NTA7bGV0dGVyLXNwYWNpbmc6LS4wMTVlbX06cm9vdCAudGlsZXN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MDtib3JkZXItdG9wOjEuNXB4IHNvbGlkIHZhcigtLWMtaW5rKX06cm9vdCAudGlsZXtwb3NpdGlvbjpyZWxhdGl2ZTtmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6c3RyZXRjaDtib3JkZXI6MDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUpO2JvcmRlci1yYWRpdXM6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fTpyb290IC50aWxlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtib3gtc2hhZG93Om5vbmU7dHJhbnNmb3JtOm5vbmV9OnJvb3QgLnRpbGUubG93ZXN0OmJlZm9yZXtjb250ZW50OiIiO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjAgYXV0byAwIDA7d2lkdGg6M3B4O2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzKX06cm9vdCAudC1zaG90e2ZsZXg6MCAwIDEwNHB4O3dpZHRoOjEwNHB4O21pbi1oZWlnaHQ6MDthc3BlY3QtcmF0aW86MTttYXJnaW46MTRweCAwIDE0cHggMTJweDtib3JkZXItcmFkaXVzOjEwcHg7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0fTpyb290IC50LWJyYW5ke2Rpc3BsYXk6bm9uZX06cm9vdCAudC1ib2R5e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSBhdXRvO2dyaWQtdGVtcGxhdGUtYXJlYXM6Im5hbWUgZm9vdCIgIm1ldGEgZm9vdCIgInRhZ3MgZm9vdCI7YWxpZ24tY29udGVudDpzdGFydDtnYXA6NXB4IDE0cHg7cGFkZGluZzoxNHB4IDEycHggMTRweCAxNHB4fTpyb290IC50LW5hbWV7Z3JpZC1hcmVhOm5hbWU7Zm9udC1mYW1pbHk6dmFyKC0tZi1kaXNwbGF5KTtmb250LXNpemU6MTcuNXB4O2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxLjI7bGV0dGVyLXNwYWNpbmc6LS4wMDVlbTstd2Via2l0LWxpbmUtY2xhbXA6MztsaW5lLWNsYW1wOjN9OnJvb3QgLnQtbWV0YXtncmlkLWFyZWE6bWV0YTtmbGV4LXdyYXA6d3JhcDtnYXA6MnB4IDEwcHh9OnJvb3QgLnQtbWV0YSAucmF0ZXttYXJnaW4taW5saW5lLXN0YXJ0OjB9OnJvb3QgLnQtd2hlcmV7d2hpdGUtc3BhY2U6bm9ybWFsO292ZXJmbG93OnZpc2libGV9OnJvb3QgLnQtdGFnc3tncmlkLWFyZWE6dGFnczttYXJnaW4tdG9wOjNweH06cm9vdCAudC1mb290e2dyaWQtYXJlYTpmb290O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjthbGlnbi1pdGVtczpmbGV4LWVuZDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDttYXJnaW46MDtwYWRkaW5nOjA7dGV4dC1hbGlnbjplbmR9OnJvb3QgLnQtZnJvbXtmb250LXNpemU6MTlweDtmb250LXdlaWdodDo3NTB9OnJvb3QgLnQtZnJvbSBzbWFsbCw6cm9vdCAudC1zdWJ7bWF4LXdpZHRoOjc2cHg7bWFyZ2luLXRvcDoycHg7bWFyZ2luLWlubGluZS1zdGFydDphdXRvO2ZvbnQtc2l6ZToxMXB4O2xpbmUtaGVpZ2h0OjEuMzt3aGl0ZS1zcGFjZTpub3JtYWx9OnJvb3QgLnQtZ297ZGlzcGxheTpub25lfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpezpyb290IC50LXNob3R7ZmxleC1iYXNpczoxMzZweDt3aWR0aDoxMzZweH06cm9vdCAudC1uYW1le2ZvbnQtc2l6ZToxOXB4fTpyb290IC50LWZyb20gc21hbGwsOnJvb3QgLnQtc3Vie21heC13aWR0aDpub25lfX06cm9vdCAjY29udGVudDpoYXMoPi5oZXJvKT4uaGVyb3tvcmRlcjotNjthc3BlY3QtcmF0aW86MTYgLyA5fTpyb290ICNjb250ZW50Omhhcyg+Lmhlcm8pPi5zaW0tbm90ZXtvcmRlcjotNTttYXJnaW4tdG9wOi02cHh9OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+LnNlZ3tvcmRlcjotNH06cm9vdCAjY29udGVudDpoYXMoPi5oZXJvKT4ud2hlbmJhcntvcmRlcjotM306cm9vdCAjY29udGVudDpoYXMoPi5oZXJvKT4uc3RyaXAtaHtvcmRlcjotMjttYXJnaW4tYm90dG9tOi04cHg7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToxMnB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMDZlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9OnJvb3Q6bGFuZyh6aCkgLnN0cmlwLWh7bGV0dGVyLXNwYWNpbmc6LjAyZW19OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+LmZsZXgtZGF0ZXN7b3JkZXI6LTE7Z3JpZC1hdXRvLWZsb3c6Y29sdW1uO2dyaWQtYXV0by1jb2x1bW5zOm1pbm1heChtYXgtY29udGVudCwxZnIpO2dhcDowO21hcmdpbjowO3BhZGRpbmc6MDtvdmVyZmxvdy14OmF1dG87Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jLWxpbmUtMik7Ym9yZGVyLXJhZGl1czoxMnB4O21hc2staW1hZ2U6bm9uZX06cm9vdCAuZmR7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoycHg7cGFkZGluZzo5cHggNnB4IDExcHg7Ym9yZGVyOjA7Ym9yZGVyLWlubGluZS1lbmQ6MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym94LXNoYWRvdzpub25lO3RleHQtYWxpZ246Y2VudGVyO3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuMjVzIHZhcigtLWVhc2UpLGNvbG9yIC4yNXMgdmFyKC0tZWFzZSl9OnJvb3QgLmZkOmxhc3QtY2hpbGR7Ym9yZGVyLWlubGluZS1lbmQ6MH06cm9vdCAuZmQtZGF5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2dhcDowO2NvbG9yOnZhcigtLWMtaW5rLTMpfTpyb290IC5mZC1tb24sOnJvb3QgLmZkLWRvd3tmb250LXNpemU6MTAuNXB4O2ZvbnQtd2VpZ2h0OjY1MDtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9OnJvb3QgLmZkLW1vbntjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKX06cm9vdCAuZmQtZG57Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQtc2l6ZToyMHB4O2ZvbnQtd2VpZ2h0Ojc1MDtsaW5lLWhlaWdodDoxLjE1fTpyb290IC5mZC1wcmljZXtmb250LXNpemU6MTJweDtmb250LXdlaWdodDo2NTB9OnJvb3QgLmZkLm9ue2JhY2tncm91bmQ6dmFyKC0tYy1wcmltYXJ5KTtjb2xvcjp2YXIoLS1jLW9uLXByaW1hcnkpO2JveC1zaGFkb3c6bm9uZX06cm9vdCAuZmQub24gLmZkLWRheSw6cm9vdCAuZmQub24gLmZkLWRuLDpyb290IC5mZC5vbiAuZmQtbW9uLDpyb290IC5mZC5vbiAuZmQtcHJpY2V7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KX06cm9vdCAuZmQubG93ZXN0Om5vdCgub24pe2JhY2tncm91bmQ6dmFyKC0tYy1zdWNjZXNzLXNvZnQpfTpyb290IC5mZC5iZXN0IC5mZC1kYXk6YWZ0ZXJ7Y29udGVudDpub25lfTpyb290IC5mZC1sb3d7Y29sb3I6dmFyKC0tYy1zdWNjZXNzLWluayk7Zm9udC1zaXplOjkuNXB4O2ZvbnQtd2VpZ2h0Ojc1MDtsZXR0ZXItc3BhY2luZzouMDRlbTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9OnJvb3QgLmZkLm9uIC5mZC1sb3d7Y29sb3I6dmFyKC0tYy1vbi1wcmltYXJ5KX1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXs6cm9vdCAuaGVyb3thc3BlY3QtcmF0aW86MjEgLyA5fX06cm9vdCAucm9vbXN7Z2FwOjA7Ym9yZGVyLXRvcDoxLjVweCBzb2xpZCB2YXIoLS1jLWluayl9OnJvb3QgLnJ0eXBlLDpyb290IC5yb29te2JvcmRlcjowO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWMtbGluZSk7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6dHJhbnNwYXJlbnR9OnJvb3QgLnJvb217Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtncmlkLXRlbXBsYXRlLWFyZWFzOiJzaG90IiAibWFpbiIgImJ1eSI7cGFkZGluZzoxNnB4IDB9OnJvb3QgLnJ0eXBlLWhlYWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtnYXA6MTJweDtwYWRkaW5nOjE2cHggMCA4cHh9OnJvb3QgLnJvb20tc2hvdCw6cm9vdCAucnR5cGUtaGVhZCAucm9vbS1zaG90e2FsaWduLXNlbGY6c3RhcnQ7d2lkdGg6MTAwJTtoZWlnaHQ6YXV0bzthc3BlY3QtcmF0aW86MTYgLyA5O2JvcmRlci1yYWRpdXM6MTBweH06cm9vdCAucm9vbS1uYW1le2ZvbnQtc2l6ZToxN3B4O2ZvbnQtd2VpZ2h0Ojc1MH06cm9vdCAucnJhdGV7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtwYWRkaW5nOjEycHggMDtib3JkZXItdG9wOjFweCBkYXNoZWQgdmFyKC0tYy1saW5lKX06cm9vdCAucnJhdGUgLnJvb20tYnV5LDpyb290IC5yb29tIC5yb29tLWJ1eXtib3JkZXItdG9wOjA7cGFkZGluZy10b3A6MH06cm9vdCAucC10b3RhbHtmb250LXNpemU6MjBweH1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXs6cm9vdCAucm9vbXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjQwcHggbWlubWF4KDAsMWZyKTtncmlkLXRlbXBsYXRlLWFyZWFzOiJzaG90IG1haW4iICJzaG90IGJ1eSI7Z2FwOjEwcHggMThweH06cm9vdCAucnR5cGUtaGVhZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjQwcHggbWlubWF4KDAsMWZyKTtnYXA6MThweH06cm9vdCAucm9vbS1zaG90LDpyb290IC5ydHlwZS1oZWFkIC5yb29tLXNob3R7YXNwZWN0LXJhdGlvOjQgLyAzfTpyb290IC5ycmF0ZXtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSBhdXRvO2FsaWduLWl0ZW1zOnN0YXJ0O2dhcDoxOHB4fTpyb290IC5ycmF0ZSAucm9vbS1idXl7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtZW5kO3RleHQtYWxpZ246ZW5kfTpyb290IC5ycmF0ZSAucm9vbS1idXkgLnByaWNle2FsaWduLWl0ZW1zOmZsZXgtZW5kfX06cm9vdCAuZ297d2hpdGUtc3BhY2U6bm93cmFwfUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7OnJvb3QgLnRpbGUsOnJvb3QgLmZkLDpyb290IC50LXNob3QgaW1ne3RyYW5zaXRpb246bm9uZX19LmxlYWQta3tkaXNwbGF5OmlubGluZTttYXJnaW46MDtjb2xvcjp2YXIoLS1jLWluay0zKTtmb250LXNpemU6aW5oZXJpdDtmb250LXdlaWdodDo1NTA7bGV0dGVyLXNwYWNpbmc6MDt0ZXh0LXRyYW5zZm9ybTpub25lfS5sZWFkLWs6YWZ0ZXJ7Y29udGVudDoiOiAifTpsYW5nKHpoKSAubGVhZC1rOmFmdGVye2NvbnRlbnQ6Iu+8miJ9QG1lZGlhKG1heC13aWR0aDo1MjBweCl7OnJvb3QgLnQtc2hvdHtmbGV4LWJhc2lzOjg4cHg7d2lkdGg6ODhweH06cm9vdCAudC1ib2R5e2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpIGF1dG87Z3JpZC10ZW1wbGF0ZS1hcmVhczoibmFtZSBuYW1lIiAibWV0YSBtZXRhIiAidGFncyBmb290IjthbGlnbi1pdGVtczplbmR9OnJvb3QgLnQtbmFtZXtmb250LXNpemU6MTdweDstd2Via2l0LWxpbmUtY2xhbXA6dW5zZXQ7bGluZS1jbGFtcDpub25lO2Rpc3BsYXk6YmxvY2t9OnJvb3QgLnQtdGFnc3thbGlnbi1zZWxmOmVuZDttYXJnaW4tdG9wOjZweH06cm9vdCAudC10YWdzOmVtcHR5e2dyaWQtY29sdW1uOjEgLyAtMX19OnJvb3QgLmZke3BhZGRpbmc6OXB4IDNweCAxMXB4fTpyb290IC5mZC1wcmljZXtmb250LXNpemU6MTEuNXB4O2xldHRlci1zcGFjaW5nOi0uMDJlbX1bZGF0YS10aGVtZT1kYXJrXSAuaGVhZCAuYnJhbmR7cGFkZGluZzo1cHggOXB4O2JvcmRlci1yYWRpdXM6OXB4O2JhY2tncm91bmQ6I2QzZDllMztib3gtc2hhZG93Om5vbmU7ZmlsdGVyOmJyaWdodG5lc3MoLjgpfVtkYXRhLXRoZW1lPWRhcmtdIC5oZWFkIC5icmFuZC5kYXJrLWFydHtwYWRkaW5nOjA7Ym9yZGVyLXJhZGl1czowO2JhY2tncm91bmQ6bm9uZTtmaWx0ZXI6bm9uZX0ud2hlbmJhciAud2hlbi1yb29tcy53aGVuLXBhcnR5LC5zZWFyY2ggLndoZW4tcm9vbXMud2hlbi1wYXJ0eXtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6c3RyZXRjaDtqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDtnYXA6MDtwYWRkaW5nOjB9LnBhcnR5LXRpbGV7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpIGF1dG87YWxpZ24taXRlbXM6Y2VudGVyO2NvbHVtbi1nYXA6OHB4O3Jvdy1nYXA6MnB4O3dpZHRoOjEwMCU7bWluLWhlaWdodDo1MnB4O3BhZGRpbmc6OHB4IDEycHggOHB4IDE0cHg7Ym9yZGVyOjA7YmFja2dyb3VuZDpub25lO2NvbG9yOmluaGVyaXQ7Zm9udDppbmhlcml0O3RleHQtYWxpZ246c3RhcnQ7Y3Vyc29yOnBvaW50ZXJ9LnBhcnR5LXRpbGUgLndse2dyaWQtY29sdW1uOjF9LnBhcnR5LXZ7Z3JpZC1jb2x1bW46MTtjb2xvcjp2YXIoLS1jLWluayk7Zm9udC1zaXplOjE1cHg7Zm9udC13ZWlnaHQ6NzAwO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30ucGFydHktdGlsZSAuaWNve2dyaWQtY29sdW1uOjI7Z3JpZC1yb3c6MSAvIHNwYW4gMjtjb2xvcjp2YXIoLS1jLWluay0zKTt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMnMgdmFyKC0tZWFzZSl9LnBhcnR5LXRpbGVbYXJpYS1leHBhbmRlZD10cnVlXSAuaWNve3RyYW5zZm9ybTpyb3RhdGUoOTBkZWcpfS5wYXJ0eS10aWxlOmZvY3VzLXZpc2libGV7b3V0bGluZToycHggc29saWQgdmFyKC0tYy1mb2N1cyk7b3V0bGluZS1vZmZzZXQ6LTJweDtib3JkZXItcmFkaXVzOjEycHh9LnBhcnR5LXBhbmVse2Rpc3BsYXk6Z3JpZDtnYXA6MnB4O3BhZGRpbmc6NHB4IDEwcHggOHB4IDE0cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYy1saW5lKX0ucGFydHktcGFuZWxbaGlkZGVuXXtkaXNwbGF5Om5vbmV9LnBhcnR5LXJvd3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMnB4O2NvbG9yOnZhcigtLWMtaW5rLTIpO2ZvbnQtc2l6ZToxMy41cHg7Zm9udC13ZWlnaHQ6NjAwfS5wYXJ0eS1yb3cgLnN0ZXAubGlnaHR7Ym9yZGVyOjA7cGFkZGluZzowfUBtZWRpYShwcmVmZXJzLXJlZHVjZWQtbW90aW9uOnJlZHVjZSl7LnBhcnR5LXRpbGUgLmljb3t0cmFuc2l0aW9uOm5vbmV9fS5wYXJ0eS12e3doaXRlLXNwYWNlOm5vd3JhcH06cm9vdCAuZmxleC1kYXRlczpub3QoLmF0LWVuZCl7bWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsIzAwMCBjYWxjKDEwMCUgLSAyNHB4KSx0cmFuc3BhcmVudCl9OnJvb3QgLmZsZXgtZGF0ZXM6bm90KC5hdC1zdGFydCk6bm90KC5hdC1lbmQpe21hc2staW1hZ2U6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50LCMwMDAgMTJweCwjMDAwIGNhbGMoMTAwJSAtIDI0cHgpLHRyYW5zcGFyZW50KX06cm9vdCAuZmxleC1kYXRlcy5hdC1lbmQ6bm90KC5hdC1zdGFydCl7bWFzay1pbWFnZTpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdHJhbnNwYXJlbnQsIzAwMCAxMnB4KX06cm9vdCAuZmR7cGFkZGluZzo5cHggMnB4IDExcHh9OnJvb3QgLmZkLWxvd3tmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjB9OnJvb3QgLmZkLXByaWNle2ZvbnQtc2l6ZToxMXB4fS5oLXdoZXJlIC5zaW17Zm9udC1zaXplOjEwcHg7dmVydGljYWwtYWxpZ246LjFlbX0uY29uZiAuYmFuZCAud3Z7Zm9udC1zaXplOjE3cHh9QG1lZGlhKG1heC13aWR0aDo0MjBweCl7LmNvbmYgLmJhbmQgLnd2IHNtYWxse2Rpc3BsYXk6YmxvY2s7bWFyZ2luOjFweCAwIDB9LmNvbmYgLmJhbmQtZHtwYWRkaW5nOjlweCAxMHB4fX0ucGF5LWZvcntkaXNwbGF5OmdyaWQ7Z2FwOjEwcHh9LnBheS1mb3IgLndoZXJle2ZvbnQtZmFtaWx5OnZhcigtLWYtZGlzcGxheSk7Zm9udC1zaXplOjE5cHg7Zm9udC13ZWlnaHQ6NjAwfS5wYXktZm9yIC5ub3Rle2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMnB4fXAucXVpZXQtZW5ke21hcmdpbjo2cHggMCAwO3RleHQtYWxpZ246Y2VudGVyfS5saW5rcyAubGluay1yb3d7Ym9yZGVyLXJhZGl1czowfSNjb250ZW50Omhhcygud2hlbmJhciAuY2FsKT4uc3RyaXAtaCwjY29udGVudDpoYXMoLndoZW5iYXIgLmNhbCk+LmZsZXgtZGF0ZXN7ZGlzcGxheTpub25lfS5jZC5iZWZvcmU6bm90KDpkaXNhYmxlZCl7Y29sb3I6dmFyKC0tYy1pbmspfS5jZC5pbjpmb2N1cy12aXNpYmxlPnNwYW4sLmNkLm91dDpmb2N1cy12aXNpYmxlPnNwYW57b3V0bGluZS1jb2xvcjp2YXIoLS1jLWZvY3VzKTtvdXRsaW5lLW9mZnNldDoycHh9LmNhbC1mb290IC5nb3ttaW4taGVpZ2h0OjM2cHh9OnJvb3QgLnQtZm9vdHtmbGV4LWRpcmVjdGlvbjpyb3c7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6NnB4fTpyb290IC50LWZvb3QgLnQtZnJvbXt0ZXh0LWFsaWduOmVuZH06cm9vdCAudC1nb3tkaXNwbGF5OmdyaWQ7d2lkdGg6MjJweDtoZWlnaHQ6MjJweDttYXJnaW4tdG9wOjJweDtib3JkZXI6MDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLWMtaW5rLTMpfTpyb290IC50aWxlOmhvdmVyIC50LWdve2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7OnJvb3QgLnQtc2hvdHtmbGV4LWJhc2lzOjE1MnB4O3dpZHRoOjE1MnB4O2FzcGVjdC1yYXRpbzo0IC8gM319OnJvb3QgLnQtZnJvbS50LW5vbmV7bWF4LXdpZHRoOjEwOHB4O2NvbG9yOnZhcigtLWMtaW5rLTMpO2ZvbnQtc2l6ZToxMi41cHg7Zm9udC13ZWlnaHQ6NjAwO2xpbmUtaGVpZ2h0OjEuMzU7dGV4dC1hbGlnbjplbmR9OnJvb3QgLnQtZnJvbSBzbWFsbCw6cm9vdCAudC1zdWJ7bWF4LXdpZHRoOjEwNHB4fS5wYXJ0eS1yb3cgLnN0ZXAgYnV0dG9uLC53aGVuLXJvb21zIC5zdGVwIGJ1dHRvbnt3aWR0aDo0MHB4O2hlaWdodDo0MHB4O2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfS5wYXJ0eS1yb3cgLnN0ZXAgYnV0dG9uOmRpc2FibGVkLC53aGVuLXJvb21zIC5zdGVwIGJ1dHRvbjpkaXNhYmxlZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fS5zZWctYlthcmlhLXByZXNzZWQ9dHJ1ZV17YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCk7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayk7Ym94LXNoYWRvdzppbnNldCAwIDAgMCAxLjVweCB2YXIoLS1jLXByaW1hcnkpfS5yb29tLWhvdXJze2NvbG9yOnZhcigtLWMtcHJpbWFyeS1pbmspfS5zay10aWxlc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfS5zay10aWxle2dyaWQtdGVtcGxhdGUtY29sdW1uczoxMDRweCAxZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOmF1dG8gYXV0byAxZnI7Y29sdW1uLWdhcDoxNHB4fS5zay1pbWd7Z3JpZC1yb3c6MSAvIHNwYW4gMzthc3BlY3QtcmF0aW86YXV0bztoZWlnaHQ6MTA0cHh9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7LnNrLXRpbGV7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjE1MnB4IDFmcn0uc2staW1ne2hlaWdodDoxMTRweH19OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+Lmhlcm97YXNwZWN0LXJhdGlvOjIgLyAxfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpezpyb290ICNjb250ZW50Omhhcyg+Lmhlcm8pPi5oZXJve2FzcGVjdC1yYXRpbzozIC8gMX19OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+Lmgtc3VtOm5vdCguc2ltLW5vdGUpLDpyb290ICNjb250ZW50Omhhcyg+Lmhlcm8pPi5hbWVue29yZGVyOjF9OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+Lmdvb2QtdG8ta25vd3tvcmRlcjoyfTpyb290IC5yb29tLXNob3QsOnJvb3QgLnJ0eXBlLWhlYWQgLnJvb20tc2hvdHthc3BlY3QtcmF0aW86MiAvIDF9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7OnJvb3QgLnJvb20tc2hvdCw6cm9vdCAucnR5cGUtaGVhZCAucm9vbS1zaG90e2FzcGVjdC1yYXRpbzo0IC8gM319OnJvb3QgLnJvb20uaG91cmx5e2dyaWQtdGVtcGxhdGUtY29sdW1uczo5NnB4IG1pbm1heCgwLDFmcik7Z3JpZC10ZW1wbGF0ZS1hcmVhczoic2hvdCBtYWluIiAiYnV5IGJ1eSJ9OnJvb3QgLnJvb20uaG91cmx5IC5yb29tLXNob3R7YXNwZWN0LXJhdGlvOjF9QG1lZGlhKG1pbi13aWR0aDo2MDBweCl7OnJvb3QgLnRpbGVze2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2NvbHVtbi1nYXA6MjJweH06cm9vdCAudC1zaG90e2ZsZXgtYmFzaXM6MTA4cHg7d2lkdGg6MTA4cHg7YXNwZWN0LXJhdGlvOjF9OnJvb3QgLnQtbmFtZXtmb250LXNpemU6MTdweH0uc2stdGlsZXN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9LnNrLXRpbGV7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjEwOHB4IDFmcn0uc2staW1ne2hlaWdodDoxMDhweH19OnJvb3QgLnQtc3ViIC5uYntkaXNwbGF5OmJsb2NrfTpyb290IC50LXN1YiAudC1zZXB7ZGlzcGxheTpub25lfS5jaGlwOm5vdCgudG9vbCk6bm90KC5uZXh0KXtib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfWJ1dHRvbi5jaGlwOm5vdCgudG9vbCk6bm90KC5uZXh0KTpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYy1saW5lLTIpO2JhY2tncm91bmQ6dmFyKC0tYy1iZyl9LmNoaXBbYXJpYS1wcmVzc2VkPXRydWVdOm5vdCgudG9vbCl7Ym9yZGVyLWNvbG9yOnZhcigtLWMtcHJpbWFyeSk7YmFja2dyb3VuZDp2YXIoLS1jLXByaW1hcnktc29mdCk7Y29sb3I6dmFyKC0tYy1wcmltYXJ5LWluayl9LnN0ZXB7Z2FwOjRweDtwYWRkaW5nOjA7Ym9yZGVyOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0uc3RlcCBidXR0b257d2lkdGg6NDBweDtoZWlnaHQ6NDBweDtib3JkZXItcmFkaXVzOjk5OXB4O2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKX0uc3RlcCBidXR0b246aG92ZXI6bm90KDpkaXNhYmxlZCl7YmFja2dyb3VuZDp2YXIoLS1jLWxpbmUpfS5zdGVwIGJ1dHRvbjpkaXNhYmxlZHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50fTpyb290IC5yb3dze2dhcDowO2JvcmRlci10b3A6MS41cHggc29saWQgdmFyKC0tYy1pbmspfTpyb290IC5yb3dzPi5yb3d7cGFkZGluZzoxNHB4IDA7Ym9yZGVyOjA7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYy1saW5lKTtib3JkZXItcmFkaXVzOjA7YmFja2dyb3VuZDp0cmFuc3BhcmVudH0ucGF5LWNoZWNre2p1c3RpZnktc2VsZjpjZW50ZXI7bWluLWhlaWdodDozNnB4O2ZvbnQtc2l6ZToxM3B4fS5zdGF0ZS1ke3RleHQtd3JhcDpwcmV0dHl9Lmhlcm8td2hlcmUgLnJhdGUgc3Zne2NvbG9yOiNmZmZ9LnN0cmlwLWtleXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O21hcmdpbi1pbmxpbmUtc3RhcnQ6OHB4O2NvbG9yOnZhcigtLWMtc3VjY2Vzcy1pbmspO2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjY1MDtsZXR0ZXItc3BhY2luZzowO3RleHQtdHJhbnNmb3JtOm5vbmV9LnN0cmlwLWtleTpiZWZvcmV7Y29udGVudDoiIjt3aWR0aDo4cHg7aGVpZ2h0OjhweDtib3JkZXItcmFkaXVzOjJweDtiYWNrZ3JvdW5kOnZhcigtLWMtc3VjY2Vzcy1zb2Z0KTtib3gtc2hhZG93Omluc2V0IDAgMCAwIDFweCB2YXIoLS1jLXN1Y2Nlc3MpfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpezpyb290IC50LWJvZHl7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgYXV0bztncmlkLXRlbXBsYXRlLWFyZWFzOiJuYW1lIG5hbWUiICJtZXRhIG1ldGEiICJ0YWdzIGZvb3QiO2FsaWduLWl0ZW1zOmVuZH06cm9vdCAudC1uYW1le2Rpc3BsYXk6YmxvY2s7LXdlYmtpdC1saW5lLWNsYW1wOnVuc2V0O2xpbmUtY2xhbXA6bm9uZX06cm9vdCAudC10YWdzOmVtcHR5e2dyaWQtY29sdW1uOjEgLyAtMX19OnJvb3QgLnQtZm9vdHtncmlkLWFyZWE6Zm9vdDtqdXN0aWZ5LXNlbGY6ZW5kfTpyb290IC50LXN1Ynt0ZXh0LWFsaWduOmVuZH1AbWVkaWEobWF4LXdpZHRoOjQyMHB4KXs6cm9vdCAuZmQtcHJpY2V7Zm9udC1zaXplOjEwLjVweDtsZXR0ZXItc3BhY2luZzotLjAzZW19OnJvb3QgLmZkLWRue2ZvbnQtc2l6ZToxOHB4fX0ucGFydHktdnt3aGl0ZS1zcGFjZTpub3JtYWx9OnJvb3QgI2NvbnRlbnQ6aGFzKD4uaGVybyk+LmFtZW57b3JkZXI6LTV9LnJldmlldy1oIC5oLXdoZXJle21hcmdpbi10b3A6MnB4O2NvbG9yOnZhcigtLWMtaW5rKTtmb250LWZhbWlseTp2YXIoLS1mLWRpc3BsYXkpO2ZvbnQtc2l6ZToxNnB4O2ZvbnQtd2VpZ2h0OjYwMH0uYmFuZC1kOmxhc3QtY2hpbGR7YWxpZ24taXRlbXM6ZmxleC1zdGFydDt0ZXh0LWFsaWduOnN0YXJ0fS5yb29tLWhvdXJze2NvbG9yOnZhcigtLWMtaW5rLTIpfS5yb3cgLmFjdGlvbntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo4cHh9LnJvdyAuYWN0aW9uIC53bHttYXJnaW46MH06cm9vdHstLWMtYWNjZW50OiB2YXIoLS1jLWluayl9OnJvb3RbZGF0YS1hY2NlbnRdIC5jYXJke2JvcmRlci10b3A6M3B4IHNvbGlkIHZhcigtLWMtYWNjZW50KX06cm9vdFtkYXRhLWFjY2VudF0gLnRpbGVzLDpyb290W2RhdGEtYWNjZW50XSAucm9vbXMsOnJvb3RbZGF0YS1hY2NlbnRdIC5yb3dze2JvcmRlci10b3AtY29sb3I6dmFyKC0tYy1hY2NlbnQpfTpyb290W2RhdGEtYWNjZW50XSAuaGVyby10eHQ6YmVmb3Jle2NvbnRlbnQ6IiI7ZGlzcGxheTpibG9jazt3aWR0aDoyOHB4O2hlaWdodDoycHg7bWFyZ2luLWJvdHRvbToycHg7YmFja2dyb3VuZDp2YXIoLS1jLWFjY2VudCl9OnJvb3RbZGF0YS1hY2NlbnRdIC5wYXktZm9yIC53aGVyZTpiZWZvcmUsOnJvb3RbZGF0YS1hY2NlbnRdIC5yZXZpZXctaCAuaC13aGVyZTpiZWZvcmV7Y29udGVudDoiIjtkaXNwbGF5OmJsb2NrO3dpZHRoOjIycHg7aGVpZ2h0OjJweDttYXJnaW4tYm90dG9tOjZweDtiYWNrZ3JvdW5kOnZhcigtLWMtYWNjZW50KX06cm9vdFtkYXRhLWFjY2VudF0gLmNvbmYgLndoZXJle2JvcmRlci10b3AtY29sb3I6dmFyKC0tYy1hY2NlbnQpfTpyb290W2RhdGEtYWNjZW50XSAuZmQub257Ym94LXNoYWRvdzppbnNldCAwIC0zcHggMCB2YXIoLS1jLWFjY2VudCl9OnJvb3RbZGF0YS1hY2NlbnRdIC5jZC5pbj5zcGFuLDpyb290W2RhdGEtYWNjZW50XSAuY2Qub3V0PnNwYW57Ym94LXNoYWRvdzowIDAgMCAycHggdmFyKC0tYy1iZyksMCAwIDAgMy41cHggdmFyKC0tYy1hY2NlbnQpfS5ib29raW5nLXJvd3tjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjE1cyB2YXIoLS1lYXNlKX0uYm9va2luZy1yb3c6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1jLXN1bmspfTpyb290IC5yb3dzPi5ib29raW5nLXJvd3twYWRkaW5nLWlubGluZTo4cHg7bWFyZ2luLWlubGluZTotOHB4O2JvcmRlci1yYWRpdXM6MTBweH0ub3Blbi1nb3tkaXNwbGF5OmdyaWQ7cGxhY2UtaXRlbXM6Y2VudGVyO3dpZHRoOjM2cHg7aGVpZ2h0OjM2cHg7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czo5OTlweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLWMtaW5rLTMpO2N1cnNvcjpwb2ludGVyfS5vcGVuLWdvOmhvdmVyLC5ib29raW5nLXJvdzpob3ZlciAub3Blbi1nb3tjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKX0ub3Blbi1nbzpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWMtZm9jdXMpO291dGxpbmUtb2Zmc2V0OjFweH0uYm9va2VkLndhaXRpbmcgLmJvb2tlZC1tYXJre2JhY2tncm91bmQ6dmFyKC0tYy13YXJuaW5nLXNvZnQpO2NvbG9yOnZhcigtLWMtd2FybmluZy1pbmspfS5ib29rZWQuZW5kZWQgLmJvb2tlZC1tYXJre2JhY2tncm91bmQ6dmFyKC0tYy1zdW5rKTtjb2xvcjp2YXIoLS1jLWluay0zKX1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXs6cm9vdCAucnR5cGV7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMDBweCBtaW5tYXgoMCwxZnIpO2NvbHVtbi1nYXA6MjBweDtwYWRkaW5nOjE2cHggMCA2cHh9OnJvb3QgLnJ0eXBlLWhlYWR7ZGlzcGxheTpjb250ZW50c306cm9vdCAucnR5cGUtaGVhZCAucm9vbS1zaG90e2dyaWQtY29sdW1uOjE7Z3JpZC1yb3c6MSAvIHNwYW4gMjthc3BlY3QtcmF0aW86NCAvIDN9OnJvb3QgLnJ0eXBlIC5yb29tLW1haW57Z3JpZC1jb2x1bW46MjtncmlkLXJvdzoxO3BhZGRpbmctYm90dG9tOjRweH06cm9vdCAucnR5cGUgLnJhdGVze2dyaWQtY29sdW1uOjI7Z3JpZC1yb3c6MjthbGlnbi1zZWxmOnN0YXJ0fTpyb290IC5ycmF0ZXtwYWRkaW5nOjEwcHggMDtnYXA6MTRweH06cm9vdCAucnJhdGUgLnJhdGUtbWFpbntnYXA6NHB4fTpyb290IC5yb29te2dyaWQtdGVtcGxhdGUtY29sdW1uczoyMDBweCBtaW5tYXgoMCwxZnIpO2dhcDo4cHggMjBweDtwYWRkaW5nOjE2cHggMH06cm9vdCAucm9vbS1zaG90e2FzcGVjdC1yYXRpbzo0IC8gM306cm9vdCAuZmxleC1kYXRlc3t3aWR0aDptYXgtY29udGVudDttYXgtd2lkdGg6MTAwJTtncmlkLWF1dG8tY29sdW1uczptaW5tYXgoODRweCwxMDRweCl9OnJvb3QgLmZke3BhZGRpbmc6OHB4IDZweCAxMHB4fX1AbWVkaWEobWluLXdpZHRoOjYwMHB4KXs6cm9vdCAucnJhdGUgLnJvb20tYnV5e2ZsZXgtZGlyZWN0aW9uOnJvdzthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjE2cHh9OnJvb3QgLnJyYXRlIC5yb29tLWJ1eSAucHJpY2V7YWxpZ24taXRlbXM6ZmxleC1lbmQ7dGV4dC1hbGlnbjplbmR9fTpyb290W2RhdGEtYWNjZW50XXstLWMtYWNjZW50OiB2YXIoLS1hY2NlbnQtcmF3KX06cm9vdFtkYXRhLXRoZW1lPWRhcmtdW2RhdGEtYWNjZW50LWRpbV17LS1jLWFjY2VudDogdmFyKC0tYy1saW5lLTIpfUBtZWRpYShtaW4td2lkdGg6NjAwcHgpezpyb290IC5mbGV4LWRhdGVze3dpZHRoOm1pbigxMDAlLGNhbGModmFyKC0tbiwgNykgKiAxMThweCkpO2dyaWQtYXV0by1jb2x1bW5zOm1pbm1heCgwLDFmcil9OnJvb3QgLmZke2dhcDozcHg7cGFkZGluZzoxMnB4IDhweCAxNHB4fTpyb290IC5mZC1kbntmb250LXNpemU6MjJweH06cm9vdCAuZmQtcHJpY2V7Zm9udC1zaXplOjEyLjVweDtsZXR0ZXItc3BhY2luZzowfX06cm9vdHstLWMtZm9jdXM6IHZhcigtLWMtcHJpbWFyeSl9OnJvb3RbZGF0YS1icmFuZF06bm90KFtkYXRhLXRoZW1lPWRhcmtdKXstLWMtcHJpbWFyeTogdmFyKC0tYnJhbmQpOy0tYy1wcmltYXJ5LWhvdmVyOiB2YXIoLS1icmFuZC1ob3Zlcik7LS1jLXByaW1hcnktcHJlc3M6IHZhcigtLWJyYW5kLXByZXNzKTstLWMtb24tcHJpbWFyeTogdmFyKC0tYnJhbmQtb24pOy0tYy1wcmltYXJ5LWluazogdmFyKC0tYnJhbmQtaW5rKTstLWMtcHJpbWFyeS1zb2Z0OiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQpIDEyJSwgI2ZmZmZmZik7LS1jLXByaW1hcnktc29mdC0yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQpIDIyJSwgI2ZmZmZmZik7LS1jLWZvY3VzOiB2YXIoLS1icmFuZC1mb2N1cyl9W2RhdGEtdGhlbWU9ZGFya106cm9vdFtkYXRhLWJyYW5kXTpub3QoW2RhdGEtYnJhbmQtZGFyay1kaW1dKXstLWMtcHJpbWFyeTogdmFyKC0tYnJhbmQpOy0tYy1wcmltYXJ5LWhvdmVyOiB2YXIoLS1icmFuZC1ob3Zlcik7LS1jLXByaW1hcnktcHJlc3M6IHZhcigtLWJyYW5kLXByZXNzKTstLWMtb24tcHJpbWFyeTogdmFyKC0tYnJhbmQtb24pOy0tYy1wcmltYXJ5LWluazogdmFyKC0tYnJhbmQtaW5rLWRhcmspOy0tYy1wcmltYXJ5LXNvZnQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1icmFuZCkgMTYlLCAjMTExNzIzKTstLWMtcHJpbWFyeS1zb2Z0LTI6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1icmFuZCkgMjYlLCAjMTExNzIzKTstLWMtZm9jdXM6IHZhcigtLWJyYW5kLWZvY3VzLWRhcmspfS5iYWRnZS53YXJue2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo0cHh9LmJhZGdlLndhcm4gLmljb3t3aWR0aDoxMnB4O2hlaWdodDoxMnB4O2ZsZXg6bm9uZX0uaG91ci1ub3Rle2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweCAxMHB4O3BhZGRpbmc6MTBweCAxNHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6MTJweDtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo1NTB9LmhvdXItbm90ZSAuaWNve2ZsZXg6bm9uZTt3aWR0aDoxNnB4O2hlaWdodDoxNnB4O2NvbG9yOnZhcigtLWMtaW5rLTMpfS5ob3VyLW5vdGUgc3BhbntmbGV4OjEgMSAyMDBweH0uaG91ci1ub3RlIC5saW5reXttaW4taGVpZ2h0OjMycHh9OnJvb3RbZGF0YS1mb250LW51bV0gOmlzKC50LWZyb20sLnN1bSwubW9uZXktb3V0LC5mZC1wcmljZSwuY29sLXByaWNlLC5wcy1wcmljZSwubiwud3YsLmNkLXAsLnAtdG90YWwsLmZkLWRuLC5wYXktYW1vdW50LC5wcmljZS1pbil7Zm9udC1mYW1pbHk6dmFyKC0tZi1udW0pfS5mYWlsZWR7bWFyZ2luLXRvcDoxOHB4fS5mYWlsZWQgLmZhaWx7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1saW5lKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7cGFkZGluZzoxMnB4IDE0cHg7bWFyZ2luLXRvcDoxMHB4O2JhY2tncm91bmQ6dmFyKC0tYmFkLWJnKX0uZmFpbGVkIC5mYWlsLWh7ZGlzcGxheTpmbGV4O2dhcDoxMHB4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Y29sb3I6dmFyKC0tYmFkKX0uZmFpbGVkIC5mYWlsLWggLndoZXJle2NvbG9yOnZhcigtLWZnKX0uZmFpbGVkIC5mYWlsLXdoeXttYXJnaW46OHB4IDAgMDtjb2xvcjp2YXIoLS1mZyl9LmZhaWxlZCAuZmFpbC1hbHRze21hcmdpbi10b3A6MTBweDtiYWNrZ3JvdW5kOnZhcigtLWJnKTtib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1zbSk7cGFkZGluZzo4cHggMTBweH0uZmFpbGVkIC5hbHR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTJweDtwYWRkaW5nOjhweCAwO2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWxpbmUpfS5mYWlsZWQgLmFsdDpmaXJzdC1vZi10eXBle2JvcmRlci10b3A6MH0uZmFpbGVkIC5hbHQtdHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO21pbi13aWR0aDowfS5mYWlsZWQgLmFsdC10IHNtYWxse2NvbG9yOnZhcigtLWZnLXNvZnQpO2ZvbnQtdmFyaWFudC1udW1lcmljOnRhYnVsYXItbnVtc30uZmFpbGVkIC5mYWlsLWZvb3R7ZGlzcGxheTpmbGV4O2dhcDoxMnB4O2FsaWduLWl0ZW1zOmNlbnRlcjttYXJnaW4tdG9wOjEwcHh9LmxhbmdwaWNre3Bvc2l0aW9uOnJlbGF0aXZlO2ZsZXg6bm9uZX0ubGFuZ2J0bntkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NXB4O2hlaWdodDozMnB4O21pbi13aWR0aDo0NHB4O3BhZGRpbmc6MCAxMHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6OTk5cHg7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtjb2xvcjp2YXIoLS1jLWluay0yKTtmb250OmluaGVyaXQ7Zm9udC1zaXplOjEycHg7Zm9udC13ZWlnaHQ6NjAwO3doaXRlLXNwYWNlOm5vd3JhcDtjdXJzb3I6cG9pbnRlcn0ubGFuZ2J0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmxhbmdtZW51e3Bvc2l0aW9uOmFic29sdXRlO3RvcDpjYWxjKDEwMCUgKyA2cHgpO3JpZ2h0OjA7ei1pbmRleDozMDtkaXNwbGF5OmdyaWQ7bWluLXdpZHRoOjE0OHB4O3BhZGRpbmc6NnB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tYy1saW5lLTIpO2JvcmRlci1yYWRpdXM6dmFyKC0tci1tZCk7YmFja2dyb3VuZDp2YXIoLS1jLWJnKTtib3gtc2hhZG93OnZhcigtLWMtc2hhZG93LWNhcmQpfS5sYW5nbWVudSBidXR0b257ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtnYXA6MTJweDttaW4taGVpZ2h0OjQwcHg7cGFkZGluZzowIDEwcHg7Ym9yZGVyOjA7Ym9yZGVyLXJhZGl1czp2YXIoLS1yLXNtKTtiYWNrZ3JvdW5kOm5vbmU7Y29sb3I6dmFyKC0tYy1pbmspO2ZvbnQ6aW5oZXJpdDtmb250LXNpemU6MTRweDt0ZXh0LWFsaWduOmxlZnQ7Y3Vyc29yOnBvaW50ZXJ9LmxhbmdtZW51IGJ1dHRvbjpob3ZlciwubGFuZ21lbnUgYnV0dG9uW2FyaWEtY2hlY2tlZD10cnVlXXtiYWNrZ3JvdW5kOnZhcigtLWMtc3Vuayl9LmxhbmdtZW51IGJ1dHRvblthcmlhLWNoZWNrZWQ9dHJ1ZV06YWZ0ZXJ7Y29udGVudDoi4pyTIjtjb2xvcjp2YXIoLS1jLXByaW1hcnktaW5rKTtmb250LXdlaWdodDo3MDB9PC9zdHlsZT4KICA8L2hlYWQ+CiAgPGJvZHk+CiAgICA8ZGl2IGNsYXNzPSJjYXJkIj4KICAgICAgPCEtLSBBIGNhbGwgb3V0IHRvIHRoZSBzZXJ2ZXI6IGEgbGluZSBhbG9uZyB0aGUgdG9wIC0gc2VlIGBzZXRCdXN5YC4gLS0+CiAgICAgIDxkaXYgY2xhc3M9ImJ1c3liYXIiIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iaGVhZCI+CiAgICAgICAgPCEtLSBUaGUgZ3JvdXAncyB3b3JkbWFyayBhcnJpdmVzIFdJVEggVEhFIERBVEEgYXMgYGxvZ29VcmxgLiBOb3RoaW5nIGlzCiAgICAgICAgICAgICBiYWtlZCBpbiBoZXJlOiBhIGxvZ28gY29tcGlsZWQgaW50byB0aGUgY2FyZCBpcyB0aGUgZmlyc3QgYnJhbmQncywKICAgICAgICAgICAgIGFuZCBldmVyeSBob3RlbCBncm91cCBhZnRlciB0aGVtIHdvdWxkIHdlYXIgaXQuIFRoZSBicmFuZCBpcyBhbHNvCiAgICAgICAgICAgICB0aGUgd2F5IGhvbWUsIG9uIGV2ZXJ5IHZpZXcgKHJvYmluLCAyMDI2LTA5LTE4KS4gLS0+CiAgICAgICAgPGJ1dHRvbiBjbGFzcz0iaG9tZSIgaWQ9ImhvbWUiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImhvbWUiIGFyaWEtbGFiZWw9IkJhY2sgdG8gdGhlIGhvdGVscyI+CiAgICAgICAgICA8aW1nIGNsYXNzPSJicmFuZCIgaWQ9ImJyYW5kIiBhbHQ9IiIgaGlkZGVuPgogICAgICAgICAgPHNwYW4gY2xhc3M9InRpdGxlIiBpZD0idGl0bGUiPjwvc3Bhbj4KICAgICAgICAgIDxzcGFuIGNsYXNzPSJzayBzay1sb2dvIiBpZD0ic2tsb2dvIiBhcmlhLWhpZGRlbj0idHJ1ZSI+PC9zcGFuPgogICAgICAgIDwvYnV0dG9uPgogICAgICAgIDxzcGFuIGNsYXNzPSJzdWIiIGlkPSJzdWIiPjwvc3Bhbj4KICAgICAgICA8IS0tIFRoZSB0aWVyLCBvciB0aGUgd2F5IGluLiBBIG1lbWJlciByYXRlIGlzIGEgZmFjdCBhYm91dCBldmVyeSBwcmljZQogICAgICAgICAgICAgb24gdGhlIGNhcmQsIHNvIGl0IGJlbG9uZ3MgaW4gdGhlIGhlYWRlciByYXRoZXIgdGhhbiBvbiBvbmUgdmlldy4gLS0+CiAgICAgICAgPGJ1dHRvbiBjbGFzcz0ibWVtYmVyY2hpcCIgaWQ9Im1lbWJlcmNoaXAiIHR5cGU9ImJ1dHRvbiIgZGF0YS1hY3Q9ImFzay1zaWduLWluIiBoaWRkZW4+PC9idXR0b24+CiAgICAgICAgPCEtLSBUaGUgdHJpcCwgZnJvbSB0aGUgdG9wOiBhIGZvb3Rlci1vbmx5IGNhcnQgbWVhbnMgc2Nyb2xsaW5nIHBhc3QKICAgICAgICAgICAgIHR3ZW50eSB0aWxlcyB0byByZWFjaCBpdCAodGhlIHNob3BwaW5nIGNhcmQsIDIwMjYtMDktMTcpLiAtLT4KICAgICAgICA8YnV0dG9uIGNsYXNzPSJoZWFkdHJpcCIgaWQ9ImhlYWR0cmlwIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJ0cmlwIiBoaWRkZW4gYXJpYS1sYWJlbD0iVmlldyB0aGUgdHJpcCI+CiAgICAgICAgICA8IS0tIEEgc3VpdGNhc2U6IGEgdHJpcCBvZiBzdGF5cywgbm90IGEgc2hvcHBpbmcgYmFnLiAtLT4KICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIgogICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgYXJpYS1oaWRkZW49InRydWUiPgogICAgICAgICAgICA8cmVjdCB4PSIzLjUiIHk9IjciIHdpZHRoPSIxNyIgaGVpZ2h0PSIxMi41IiByeD0iMi41IiAvPgogICAgICAgICAgICA8cGF0aCBkPSJNOSA3VjUuNUExLjUgMS41IDAgMCAxIDEwLjUgNGgzQTEuNSAxLjUgMCAwIDEgMTUgNS41VjdNMy41IDEyLjVoMTciIC8+CiAgICAgICAgICA8L3N2Zz4KICAgICAgICAgIDxzcGFuIGlkPSJoZWFkdHJpcHdvcmQiPlRyaXA8L3NwYW4+PHNwYW4gY2xhc3M9ImhlYWR0cmlwLW4iIGlkPSJoZWFkdHJpcG4iPjA8L3NwYW4+CiAgICAgICAgPC9idXR0b24+CiAgICAgICAgPCEtLSBUaGUgY2FyZCdzIGxhbmd1YWdlLCB0aGUgZ3Vlc3QncyB0byBjaG9vc2UgKHJvYmluLCAyMDI2LTEwLTE0KToKICAgICAgICAgICAgIGVpZ2h0LCBlYWNoIGxpc3RlZCBpbiBpdHMgb3duIHdvcmRzIC0gc2VlIGBwaWNrTGFuZ2AuIC0tPgogICAgICAgIDxkaXYgY2xhc3M9ImxhbmdwaWNrIj4KICAgICAgICAgIDxidXR0b24gY2xhc3M9ImxhbmdidG4iIGlkPSJsYW5nYnRuIiB0eXBlPSJidXR0b24iIGRhdGEtYWN0PSJsYW5nLW1lbnUiIGFyaWEtaGFzcG9wdXA9InRydWUiIGFyaWEtZXhwYW5kZWQ9ImZhbHNlIiBhcmlhLWxhYmVsPSJMYW5ndWFnZSI+CiAgICAgICAgICAgIDxzdmcgdmlld0JveD0iMCAwIDI0IDI0IiB3aWR0aD0iMTUiIGhlaWdodD0iMTUiIGZpbGw9Im5vbmUiIHN0cm9rZT0iY3VycmVudENvbG9yIgogICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD0iMS44IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICAgICAgICAgICAgICA8Y2lyY2xlIGN4PSIxMiIgY3k9IjEyIiByPSI4LjUiIC8+CiAgICAgICAgICAgICAgPHBhdGggZD0iTTMuNSAxMmgxN00xMiAzLjVjMi40IDIuNiAzLjYgNS40IDMuNiA4LjVzLTEuMiA1LjktMy42IDguNWMtMi40LTIuNi0zLjYtNS40LTMuNi04LjVTOS42IDYuMSAxMiAzLjVaIiAvPgogICAgICAgICAgICA8L3N2Zz4KICAgICAgICAgICAgPHNwYW4gaWQ9Imxhbmdub3ciPkVOPC9zcGFuPgogICAgICAgICAgPC9idXR0b24+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJsYW5nbWVudSIgaWQ9ImxhbmdtZW51IiByb2xlPSJtZW51IiBoaWRkZW4+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8IS0tIEV2ZXJ5IHJhdGUgb24gYSBkZW1vbnN0cmF0aW9uIHdhcyBtYWRlIHVwOiBzYWlkIG9uY2UsIGhlcmUsIG9uIGV2ZXJ5CiAgICAgICAgICAgdmlldyAtIHNlZSBcYHBhaW50RGVtb1xgLiAtLT4KICAgICAgPGRpdiBjbGFzcz0iZGVtb3N0cmlwIiBpZD0iZGVtb3N0cmlwIiByb2xlPSJub3RlIiBoaWRkZW4+PGIgaWQ9ImRlbW9sYWJlbCI+RGVtbzwvYj48c3BhbiBpZD0iZGVtb3RleHQiPjwvc3Bhbj48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0ic3ViaGVhZCIgaWQ9InN1YmhlYWQiIGhpZGRlbj4KICAgICAgICA8IS0tIE9uZSBzdGVwIGJhY2sgSU5TSURFIHRoZSBjYXJkIC0gdGhlIHRocmVlIGhvdGVscyB0aGV5IHdlcmUgY29tcGFyaW5nCiAgICAgICAgICAgICB3aGVuIHRoZXkgdGFwcGVkIG9uZSAocm9iaW4sIDIwMjYtMDktMjEpLiBUaGUgYnJhbmQgYWJvdmUgZ29lcyBob21lLAogICAgICAgICAgICAgd2hpY2ggaXMgYSBkaWZmZXJlbnQgYW5zd2VyLiAtLT4KICAgICAgICA8YnV0dG9uIGNsYXNzPSJiYWNrYnRuIiBpZD0iYmFja2J0biIgdHlwZT0iYnV0dG9uIiBkYXRhLWFjdD0iYmFjayIgaGlkZGVuPjwvYnV0dG9uPgogICAgICAgIDwhLS0gQm9va2luZyBhIHJvb20gaXMgdGhyZWUgc3RlcHMsIGFuZCB0aGUgY2FyZCBzYXlzIHdoaWNoIG9uZSB0aGlzIGlzLiAtLT4KICAgICAgICA8b2wgY2xhc3M9ImZsb3ciIGlkPSJmbG93IiBhcmlhLWxhYmVsPSJCb29raW5nIHN0ZXBzIiBoaWRkZW4+CiAgICAgICAgICA8bGkgZGF0YS1zdGVwPSIxIj48c3BhbiBjbGFzcz0iZmRvdCI+MTwvc3Bhbj48c3BhbiBjbGFzcz0iZmxhYmVsIiBpZD0iZmxvdzEiPkhvdGVsPC9zcGFuPjwvbGk+CiAgICAgICAgICA8bGkgZGF0YS1zdGVwPSIyIj48c3BhbiBjbGFzcz0iZmRvdCI+Mjwvc3Bhbj48c3BhbiBjbGFzcz0iZmxhYmVsIiBpZD0iZmxvdzIiPlJvb208L3NwYW4+PC9saT4KICAgICAgICAgIDxsaSBkYXRhLXN0ZXA9IjMiPjxzcGFuIGNsYXNzPSJmZG90Ij4zPC9zcGFuPjxzcGFuIGNsYXNzPSJmbGFiZWwiIGlkPSJmbG93MyI+Qm9vazwvc3Bhbj48L2xpPgogICAgICAgIDwvb2w+CiAgICAgIDwvZGl2PgogICAgICA8IS0tIEJlZm9yZSB0aGUgZmlyc3QgYW5zd2VyOiB0aGUgc2hhcGVzIG9mIHdoYXQgaXMgY29taW5nLCBub3QgYSB3b3JkLiAtLT4KICAgICAgPGRpdiBpZD0iY29udGVudCI+CiAgICAgICAgPGRpdiBjbGFzcz0ic2tlbCIgcm9sZT0ic3RhdHVzIiBhcmlhLWxhYmVsPSJMb2FkaW5nIj4KICAgICAgICAgIDwhLS0gVGhlIHNoYXBlcyBvZiB0aGUgbGlzdCB0aGF0IGlzIGNvbWluZywgd2hlcmUgdGhleSB3aWxsIGJlOiBhCiAgICAgICAgICAgICAgIHRpdGxlLCBpdHMgbGluZSwgdGhlIGRhdGVzLCB0aGUgc29ydCBhbmQgZmlsdGVycywgdGhlIHRpbGVzLiAtLT4KICAgICAgICAgIDxkaXYgY2xhc3M9InNrLXNheSI+RmluZGluZyBob3RlbHPigKY8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNrIHNrLWxpbmUgc2stc3ViIj48L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9InNrIHNrLWJhciI+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzay1jaGlwcyI+PGRpdiBjbGFzcz0ic2sgc2stY2hpcCI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stY2hpcCBzaG9ydCI+PC9kaXY+PC9kaXY+CiAgICAgICAgICA8ZGl2IGNsYXNzPSJzay10aWxlcyI+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNrLXRpbGUiPjxkaXYgY2xhc3M9InNrIHNrLWltZyI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stbGluZSI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stbGluZSBzaG9ydCI+PC9kaXY+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InNrLXRpbGUiPjxkaXYgY2xhc3M9InNrIHNrLWltZyI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stbGluZSI+PC9kaXY+PGRpdiBjbGFzcz0ic2sgc2stbGluZSBzaG9ydCI+PC9kaXY+PC9kaXY+CiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICA8L2JvZHk+CjwvaHRtbD4K', 'base64').toString('utf8');
6
6
  /** sha256 of everything the card is built from (card-kit's source-hash.mjs) - the drift guard reads this. */
7
- export const HOTEL_CARD_SOURCE_SHA = '014f24f73c23fe2422c0c2a98305d8055efcd96c6e846bb1e70632eae811c3c2';
7
+ export const HOTEL_CARD_SOURCE_SHA = '9db874846c14580e5d35ff4d52f6cca64def9a743c6d85ef8090c1030f7cfd28';
8
8
  //# sourceMappingURL=card.generated.js.map