[{"Attribute":[{"category":"External analysis","disable_correlation":false,"first_seen":"2024-10-31T02:31:40.032000+00:00","to_ids":false,"type":"link","uuid":"aa0f567c-80c5-48c4-ba5b-3c261f999fd6","value":"https://lookyloo.circl.lu/tree/22316725-11f8-42f1-8bf5-2ac34d995cc5"},{"category":"External analysis","comment":"Screenshot of the page at the end of the capture","data":"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cmj8+Ovf+vGl6Xdsvd3/0t9cDL2vP3yXZepXHOPn6Jr6W7/5wWqlKEnSI48//43vPH7ZGwqF3OmzK93e8PkXj/1c+pWk8djsj586Mn588MDCxvPuyH/+xWMXy3jgLulqDv9s/vOR6xe5KVRVGY28z/7lty+bY3zy1IXv/uDp8eMHD9916azya3nn2x5QFEWSpEefePHS9CtJkucHn/3CN30/GOfkA3vnxs/PztTHDx594sUrU/2Zc6t/+81HT51efua5n156CwAAgLQwAgwASN/exVapmB8HrWutmz1y9GSvPywWcpqmvu7uxSefOXqtowkhfvPX3z/bakiS9Ozzr3zpKz+48j0/euy5Hz323NV++qLzF9bGD2rV0qXPP/bki+OGVYfv2/+Vrz0ShtGlr5aKufHAcn/gvPTyqRt97s3x1LMvX3VO+ONPvfT+d79RkiTbMmZnGqfPLF/nIKqq3HP3nvHjx5548co3uCP/B48+V60UHNeL4osTsGVx8U66rl39iuLJZ45e518KAIBtxggwACB9C3MX98g9eerCdbolnTh1YfxgplW/ztE+9pGH79o3L0nS0VdOfe6L3769kja6TF3aDkqSpOMnz6+sdsZ9nu49uHTZTx26d994rPWpZ1++83nON+mnr5656vP9gbPe7o0fT9XL1z/IbKsx/qTuyLvWXOWvf/vHn/nCt/76b37w6vGLfbA2bhN84L1vajVrd/AhAADYDowAAwDSV69djGcra53rvG2cPCVJalw7zr3vXW946IG7x1n6zz779ei1ZlFXZejaA/fv3793rjlVLRRsXVOvnCp85dzhHz915Jff/+bxLOhnnvu5qcL3b8x/fmo75j+Pnb/22tpOdzCeB14pF65/kHrt4kB3u9O/+VP/8LHnXv/A3bZlVMqF3/0fPvbq8bMvHj1x7Pi5c68FYwAAJgoBGACQPtsyxg9Go+u1d96Y6HutBaVvePDu9zz8+vHjF146fv2td+6/Z+9HP/SOjVPfvCefOfqL736jqir7FmdKxVy3Nxw/X6sU52YakiSdOHX+Tjo83yrHvWaH543fp/Hz49hXusl/gst0uoM/+tMvf+Lj76tVikKIfUuz+5ZmJUlynNFPj5154cjxF4+eYAMkAMDkIAADANKnvbaC9LIltZcJX4tSmnqV/36pqvIrH3rHxv9937ve8MqxM9fa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","disable_correlation":true,"first_seen":"2024-10-31T02:31:40.032000+00:00","to_ids":false,"type":"attachment","uuid":"109ee205-494b-43ed-9837-38e135b38e74","value":"screenshot_landing_page.png"},{"category":"External analysis","comment":"HTTP Archive (HAR) of the whole capture","data":"eyJsb2ciOiB7InZlcnNpb24iOiAiMS4yIiwgImNyZWF0b3IiOiB7Im5hbWUiOiAiUGxheXdyaWdodCIsICJ2ZXJzaW9uIjogIjEuNDguMSJ9LCAiYnJvd3NlciI6IHsibmFtZSI6ICJjaHJvbWl1bSIsICJ2ZXJzaW9uIjogIjEzMC4wLjY3MjMuMzEifSwgInBhZ2VzIjogW3sic3RhcnRlZERhdGVUaW1lIjogIjIwMjQtMTAtMzFUMDI6MzE6MzkuOTYyWiIsICJpZCI6ICJwYWdlQDcwNjgwZmM3YzUzNTkwNDgwMTExYTMzZmJiZDQ0Y2NmIiwgInRpdGxlIjogIm9rYXl0aS5waWNzXHUwMGEwLVx1MDBhMFJlc3NvdXJjZXMgZXQgaW5mb3JtYXRpb24gY29uY2VybmFudCBva2F5dGkgUmVzb3VyY2VzIGFuZCBJbmZvcm1hdGlvbi4iLCAicGFnZVRpbWluZ3MiOiB7Im9uQ29udGVudExvYWQiOiAxNTAwLCAib25Mb2FkIjogMzEwMX19XSwgImVudHJpZXMiOiBbeyJzdGFydGVkRGF0ZVRpbWUiOiAiMjAyNC0xMC0zMVQwMjozMTo0MC4wMzJaIiwgInRpbWUiOiA3OS42NTcwMDAwMDAwMDAwMSwgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHA6Ly9va2F5dGkucGljcy8iLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8xLjEiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiQWNjZXB0IiwgInZhbHVlIjogInRleHQvaHRtbCxhcHBsaWNhdGlvbi94aHRtbCt4bWwsYXBwbGljYXRpb24veG1sO3E9MC45LGltYWdlL2F2aWYsaW1hZ2Uvd2VicCxpbWFnZS9hcG5nLCovKjtxPTAuOCxhcHBsaWNhdGlvbi9zaWduZWQtZXhjaGFuZ2U7dj1iMztxPTAuNyJ9LCB7Im5hbWUiOiAiQWNjZXB0LUVuY29kaW5nIiwgInZhbHVlIjogImd6aXAsIGRlZmxhdGUifSwgeyJuYW1lIjogIkFjY2VwdC1MYW5ndWFnZSIsICJ2YWx1ZSI6ICJlbi1VUyJ9LCB7Im5hbWUiOiAiQ29ubmVjdGlvbiIsICJ2YWx1ZSI6ICJrZWVwLWFsaXZlIn0sIHsibmFtZSI6ICJIb3N0IiwgInZhbHVlIjogIm9rYXl0aS5waWNzIn0sIHsibmFtZSI6ICJVcGdyYWRlLUluc2VjdXJlLVJlcXVlc3RzIiwgInZhbHVlIjogIjEifSwgeyJuYW1lIjogIlVzZXItQWdlbnQiLCAidmFsdWUiOiAiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEzMC4wLjY3MjMuMzEgU2FmYXJpLzUzNy4zNiJ9XSwgInF1ZXJ5U3RyaW5nIjogW10sICJoZWFkZXJzU2l6ZSI6IDQxOSwgImJvZHlTaXplIjogMH0sICJyZXNwb25zZSI6IHsic3RhdHVzIjogMjAwLCAic3RhdHVzVGV4dCI6ICJPSyIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzEuMSIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICJjYWNoZS1jb250cm9sIiwgInZhbHVlIjogIm5vLXN0b3JlLCBuby1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlLCBwb3N0LWNoZWNrPTAsIHByZS1jaGVjaz0wIn0sIHsibmFtZSI6ICJjb250ZW50LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAifSwgeyJuYW1lIjogImNvbnRlbnQtdHlwZSIsICJ2YWx1ZSI6ICJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgifSwgeyJuYW1lIjogImRhdGUiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo0MCBHTVQifSwgeyJuYW1lIjogImV4cGlyZXMiLCAidmFsdWUiOiAiTW9uLCAyNiBKdWwgMTk5NyAwNTowMDowMCBHTVQifSwgeyJuYW1lIjogImxhc3QtbW9kaWZpZWQiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo0MCBHTVQifSwgeyJuYW1lIjogInByYWdtYSIsICJ2YWx1ZSI6ICJuby1jYWNoZSJ9LCB7Im5hbWUiOiAic2VydmVyIiwgInZhbHVlIjogIlBhcmtpbmcvMS4wIn0sIHsibmFtZSI6ICJ0cmFuc2Zlci1lbmNvZGluZyIsICJ2YWx1ZSI6ICJjaHVua2VkIn0sIHsibmFtZSI6ICJ2YXJ5IiwgInZhbHVlIjogIkFjY2VwdC1FbmNvZGluZyJ9LCB7Im5hbWUiOiAieC1hZGJsb2NrLWtleSIsICJ2YWx1ZSI6ICJNRnd3RFFZSktvWklodmNOQVFFQkJRQURTd0F3U0FKQkFObnlsV3cydkxZNGhVbjl3MDZ6UUtiaEtCZnZqRlVDc2RGbGI2VGRRaHhiOVJYV1h1STR0MzFjK284ZllPdi9zOHExTEdQZ2EzREUxTC90SFU0TEVOTUNBd0VBQVE9PV9qR2lQWlp2RnhMaHFXU3Rud1dCQ05JcjM2SEErUmZjSmlEMHlSNkNYVXJwT1k2bXhSUjVoZGVCV2pQTUQwaFhFbnJqd3RJY2dvQk43dUZqWDV5VXNuZz09In0sIHsibmFtZSI6ICJ4LWNhY2hlLW1pc3MtZnJvbSIsICJ2YWx1ZSI6ICJwYXJraW5nLTZiOGI2YmI1NGIta2JmeDIifV0sICJjb250ZW50IjogeyJzaXplIjogMjQ1MzIsICJtaW1lVHlwZSI6ICJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLCAiY29tcHJlc3Npb24iOiAxNjMxMCwgInRleHQiOiAiPCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz1cImVuXCIgIGRhdGEtYWRibG9ja2tleT1NRnd3RFFZSktvWklodmNOQVFFQkJRQURTd0F3U0FKQkFObnlsV3cydkxZNGhVbjl3MDZ6UUtiaEtCZnZqRlVDc2RGbGI2VGRRaHhiOVJYV1h1STR0MzFjK284ZllPdi9zOHExTEdQZ2EzREUxTC90SFU0TEVOTUNBd0VBQVE9PV9qR2lQWlp2RnhMaHFXU3Rud1dCQ05JcjM2SEErUmZjSmlEMHlSNkNYVXJwT1k2bXhSUjVoZGVCV2pQTUQwaFhFbnJqd3RJY2dvQk43dUZqWDV5VXNuZz09PjxoZWFkPjxtZXRhIGNoYXJzZXQ9XCJ1dGYtOFwiPjx0aXRsZT5va2F5dGkucGljcyZuYnNwOy0mbmJzcDtSZXNzb3VyY2VzIGV0IGluZm9ybWF0aW9uIGNvbmNlcm5hbnQgb2theXRpIFJlc291cmNlcyBhbmQgSW5mb3JtYXRpb24uPC90aXRsZT48bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoLGluaXRpYWwtc2NhbGU9MS4wLG1heGltdW0tc2NhbGU9MS4wLHVzZXItc2NhbGFibGU9MFwiPjxtZXRhIG5hbWU9XCJkZXNjcmlwdGlvblwiIGNvbnRlbnQ9XCJva2F5dGkucGljcyByXHUwMGU5dW5pdCBkZXMgaW5mb3JtYXRpb25zIGV0IGFubm9uY2VzLiBOb3VzIGVzcFx1MDBlOXJvbnMgcXVlIHZvdXMgeSB0cm91dmVyZXogbGVzIGluZm9ybWF0aW9ucyBxdWUgdm91cyByZWNoZXJjaGV6ICFcIj48bGlua1xuICAgICAgICByZWw9XCJpY29uXCJcbiAgICAgICAgdHlwZT1cImltYWdlL3BuZ1wiXG4gICAgICAgIGhyZWY9XCIvL2ltZy5zZWRvcGFya2luZy5jb20vdGVtcGxhdGVzL2xvZ29zL3NlZG9fbG9nby5wbmdcIlxuLz48c3R5bGU+XG4gICAgICAgIC8qISBub3JtYWxpemUuY3NzIHY3LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9odG1se2xpbmUtaGVpZ2h0OjEuMTU7LW1zLXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJX1ib2R5e21hcmdpbjowfWFydGljbGUsYXNpZGUsZm9vdGVyLGhlYWRlcixuYXYsc2VjdGlvbntkaXNwbGF5OmJsb2NrfWgxe2ZvbnQtc2l6ZToyZW07bWFyZ2luOi42N2VtIDB9ZmlnY2FwdGlvbixmaWd1cmUsbWFpbntkaXNwbGF5OmJsb2NrfWZpZ3VyZXttYXJnaW46MWVtIDQwcHh9aHJ7Ym94LXNpemluZzpjb250ZW50LWJveDtoZWlnaHQ6MDtvdmVyZmxvdzp2aXNpYmxlfXByZXtmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxZW19YXtiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50Oy13ZWJraXQtdGV4dC1kZWNvcmF0aW9uLXNraXA6b2JqZWN0c31hYmJyW3RpdGxlXXtib3JkZXItYm90dG9tOm5vbmU7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lIGRvdHRlZH1iLHN0cm9uZ3tmb250LXdlaWdodDppbmhlcml0fWIsc3Ryb25ne2ZvbnQtd2VpZ2h0OmJvbGRlcn1jb2RlLGtiZCxzYW1we2ZvbnQtZmFtaWx5Om1vbm9zcGFjZSxtb25vc3BhY2U7Zm9udC1zaXplOjFlbX1kZm57Zm9udC1zdHlsZTppdGFsaWN9bWFya3tiYWNrZ3JvdW5kLWNvbG9yOiNmZjA7Y29sb3I6IzAwMH1zbWFsbHtmb250LXNpemU6ODAlfXN1YixzdXB7Zm9udC1zaXplOjc1JTtsaW5lLWhlaWdodDowO3Bvc2l0aW9uOnJlbGF0aXZlO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXN1Yntib3R0b206LTAuMjVlbX1zdXB7dG9wOi0wLjVlbX1hdWRpbyx2aWRlb3tkaXNwbGF5OmlubGluZS1ibG9ja31hdWRpbzpub3QoW2NvbnRyb2xzXSl7ZGlzcGxheTpub25lO2hlaWdodDowfWltZ3tib3JkZXItc3R5bGU6bm9uZX1zdmc6bm90KDpyb290KXtvdmVyZmxvdzpoaWRkZW59YnV0dG9uLGlucHV0LG9wdGdyb3VwLHNlbGVjdCx0ZXh0YXJlYXtmb250LWZhbWlseTpzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMDAlO2xpbmUtaGVpZ2h0OjEuMTU7bWFyZ2luOjB9YnV0dG9uLGlucHV0e292ZXJmbG93OnZpc2libGV9YnV0dG9uLHNlbGVjdHt0ZXh0LXRyYW5zZm9ybTpub25lfWJ1dHRvbixodG1sIFt0eXBlPWJ1dHRvbl0sW3R5cGU9cmVzZXRdLFt0eXBlPXN1Ym1pdF17LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbn1idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixbdHlwZT1yZXNldF06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lcntib3JkZXItc3R5bGU6bm9uZTtwYWRkaW5nOjB9YnV0dG9uOi1tb3otZm9jdXNyaW5nLFt0eXBlPWJ1dHRvbl06LW1vei1mb2N1c3JpbmcsW3R5cGU9cmVzZXRdOi1tb3otZm9jdXNyaW5nLFt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmd7b3V0bGluZToxcHggZG90dGVkIEJ1dHRvblRleHR9ZmllbGRzZXR7cGFkZGluZzouMzVlbSAuNzVlbSAuNjI1ZW19bGVnZW5ke2JveC1zaXppbmc6Ym9yZGVyLWJveDtjb2xvcjppbmhlcml0O2Rpc3BsYXk6dGFibGU7bWF4LXdpZHRoOjEwMCU7cGFkZGluZzowO3doaXRlLXNwYWNlOm5vcm1hbH1wcm9ncmVzc3tkaXNwbGF5OmlubGluZS1ibG9jazt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX10ZXh0YXJlYXtvdmVyZmxvdzphdXRvfVt0eXBlPWNoZWNrYm94XSxbdHlwZT1yYWRpb117Ym94LXNpemluZzpib3JkZXItYm94O3BhZGRpbmc6MH1bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFt0eXBlPW51bWJlcl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b257aGVpZ2h0OmF1dG99W3R5cGU9c2VhcmNoXXstd2Via2l0LWFwcGVhcmFuY2U6dGV4dGZpZWxkO291dGxpbmUtb2Zmc2V0Oi0ycHh9W3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uey13ZWJraXQtYXBwZWFyYW5jZTpub25lfTo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b257LXdlYmtpdC1hcHBlYXJhbmNlOmJ1dHRvbjtmb250OmluaGVyaXR9ZGV0YWlscyxtZW51e2Rpc3BsYXk6YmxvY2t9c3VtbWFyeXtkaXNwbGF5Omxpc3QtaXRlbX1jYW52YXN7ZGlzcGxheTppbmxpbmUtYmxvY2t9dGVtcGxhdGV7ZGlzcGxheTpub25lfVtoaWRkZW5de2Rpc3BsYXk6bm9uZX0uYW5ub3VuY2VtZW50e2JhY2tncm91bmQ6IzBlMTYyZTt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjAgNXB4fS5hbm5vdW5jZW1lbnQgcHtjb2xvcjojODQ4NDg0fS5hbm5vdW5jZW1lbnQgYXtjb2xvcjojODQ4NDg0fS5jb250YWluZXItaGVhZGVye21hcmdpbjowIGF1dG8gMCBhdXRvO3RleHQtYWxpZ246Y2VudGVyfS5jb250YWluZXItaGVhZGVyX19jb250ZW50e2NvbG9yOiM4NDg0ODR9LmNvbnRhaW5lci1idXlib3h7dGV4dC1hbGlnbjpjZW50ZXJ9LmNvbnRhaW5lci1idXlib3hfX2NvbnRlbnQtYnV5Ym94e2Rpc3BsYXk6aW5saW5lLWJsb2NrO3RleHQtYWxpZ246bGVmdH0uY29udGFpbmVyLWJ1eWJveF9fY29udGVudC1oZWFkaW5ne2ZvbnQtc2l6ZToxNXB4fS5jb250YWluZXItYnV5Ym94X19jb250ZW50LXRleHR7Zm9udC1zaXplOjEycHh9LmNvbnRhaW5lci1idXlib3hfX2NvbnRlbnQtbGlua3tjb2xvcjojOTQ5NDk0fS5jb250YWluZXItYnV5Ym94X19jb250ZW50LWxpbmstLW5vLWRlY29yYXRpb257dGV4dC1kZWNvcmF0aW9uOm5vbmV9LmNvbnRhaW5lci1zZWFyY2hib3h7bWFyZ2luLWJvdHRvbTo1MHB4O3RleHQtYWxpZ246Y2VudGVyfS5jb250YWluZXItc2VhcmNoYm94X19jb250ZW50e2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtZmFtaWx5OmFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjEycHh9LmNvbnRhaW5lci1zZWFyY2hib3hfX3NlYXJjaHRleHQtbGFiZWx7ZGlzcGxheTpub25lfS5jb250YWluZXItc2VhcmNoYm94X19pbnB1dCwuY29udGFpbmVyLXNlYXJjaGJveF9fYnV0dG9ue2JvcmRlcjowIG5vbmV9LmNvbnRhaW5lci1zZWFyY2hib3hfX2J1dHRvbntjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MTJweDttYXJnaW4tbGVmdDoxNXB4O2JvcmRlcjowIG5vbmU7cGFkZGluZzoycHggOHB4O2NvbG9yOiM2MzgyOTZ9LmNvbnRhaW5lci1kaXNjbGFpbWVye3RleHQtYWxpZ246Y2VudGVyfS5jb250YWluZXItZGlzY2xhaW1lcl9fY29udGVudHtkaXNwbGF5OmlubGluZS1ibG9ja30uY29udGFpbmVyLWRpc2NsYWltZXJfX2NvbnRlbnQtdGV4dCwuY29udGFpbmVyLWRpc2NsYWltZXIgYXtmb250LXNpemU6MTBweH0uY29udGFpbmVyLWRpc2NsYWltZXJfX2NvbnRlbnQtdGV4dHtjb2xvcjojOTQ5NDk0fS5jb250YWluZXItZGlzY2xhaW1lciBhe2NvbG9yOiM5NDk0OTR9LmNvbnRhaW5lci1pbXByaW50e3RleHQtYWxpZ246Y2VudGVyfS5jb250YWluZXItaW1wcmludF9fY29udGVudHtkaXNwbGF5OmlubGluZS1ibG9ja30uY29udGFpbmVyLWltcHJpbnRfX2NvbnRlbnQtdGV4dCwuY29udGFpbmVyLWltcHJpbnRfX2NvbnRlbnQtbGlua3tmb250LXNpemU6MTBweDtjb2xvcjojOTQ5NDk0fS5jb250YWluZXItY29udGFjdC11c3t0ZXh0LWFsaWduOmNlbnRlcn0uY29udGFpbmVyLWNvbnRhY3QtdXNfX2NvbnRlbnR7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmNvbnRhaW5lci1jb250YWN0LXVzX19jb250ZW50LXRleHQsLmNvbnRhaW5lci1jb250YWN0LXVzX19jb250ZW50LWxpbmt7Zm9udC1zaXplOjEwcHg7Y29sb3I6Izk0OTQ5NH0uY29udGFpbmVyLXByaXZhY3lQb2xpY3l7dGV4dC1hbGlnbjpjZW50ZXJ9LmNvbnRhaW5lci1wcml2YWN5UG9saWN5X19jb250ZW50e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5jb250YWluZXItcHJpdmFjeVBvbGljeV9fY29udGVudC1saW5re2ZvbnQtc2l6ZToxMHB4O2NvbG9yOiM5NDk0OTR9LmNvbnRhaW5lci1jb29raWUtbWVzc2FnZXtwb3NpdGlvbjpmaXhlZDtib3R0b206MDt3aWR0aDoxMDAlO2JhY2tncm91bmQ6IzVmNWY1Zjtmb250LXNpemU6MTJweDtwYWRkaW5nLXRvcDoxNXB4O3BhZGRpbmctYm90dG9tOjE1cHh9LmNvbnRhaW5lci1jb29raWUtbWVzc2FnZV9fY29udGVudC10ZXh0e2NvbG9yOiNmZmZ9LmNvbnRhaW5lci1jb29raWUtbWVzc2FnZV9fY29udGVudC10ZXh0e21hcmdpbi1sZWZ0OjE1JTttYXJnaW4tcmlnaHQ6MTUlfS5jb250YWluZXItY29va2llLW1lc3NhZ2VfX2NvbnRlbnQtaW50ZXJhY3RpdmV7dGV4dC1hbGlnbjpsZWZ0O21hcmdpbjowIDE1cHg7Zm9udC1zaXplOjEwcHh9LmNvbnRhaW5lci1jb29raWUtbWVzc2FnZV9fY29udGVudC1pbnRlcmFjdGl2ZS1oZWFkZXIsLmNvbnRhaW5lci1jb29raWUtbWVzc2FnZV9fY29udGVudC1pbnRlcmFjdGl2ZS10ZXh0e2NvbG9yOiNmZmZ9LmNvbnRhaW5lci1jb29raWUtbWVzc2FnZV9fY29udGVudC1pbnRlcmFjdGl2ZS1oZWFkZXJ7Zm9udC1zaXplOnNtYWxsfS5jb250YWluZXItY29va2llLW1lc3NhZ2VfX2NvbnRlbnQtaW50ZXJhY3RpdmUtdGV4dHttYXJnaW4tdG9wOjEwcHg7bWFyZ2luLXJpZ2h0OjBweDttYXJnaW4tYm90dG9tOjVweDttYXJnaW4tbGVmdDowcHg7Zm9udC1zaXplOmxhcmdlcn0uY29udGFpbmVyLWNvb2tpZS1tZXNzYWdlIGF7Y29sb3I6I2ZmZn0uY29va2llLW1vZGFsLXdpbmRvd3twb3NpdGlvbjpmaXhlZDtiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMjAwLDIwMCwyMDAsLjc1KTt0b3A6MDtyaWdodDowO2JvdHRvbTowO2xlZnQ6MDstd2Via2l0LXRyYW5zaXRpb246YWxsIC4zczstbW96LXRyYW5zaXRpb246YWxsIC4zczt0cmFuc2l0aW9uOmFsbCAuM3M7dGV4dC1hbGlnbjpjZW50ZXJ9LmNvb2tpZS1tb2RhbC13aW5kb3dfX2NvbnRlbnQtaGVhZGVye2ZvbnQtc2l6ZToxNTAlO21hcmdpbjowIDAgMTVweH0uY29va2llLW1vZGFsLXdpbmRvd19fY29udGVudHt0ZXh0LWFsaWduOmluaXRpYWw7bWFyZ2luOjEwJSBhdXRvO3BhZGRpbmc6NDBweDtiYWNrZ3JvdW5kOiNmZmY7ZGlzcGxheTppbmxpbmUtYmxvY2s7bWF4LXdpZHRoOjU1MHB4fS5jb29raWUtbW9kYWwtd2luZG93X19jb250ZW50LXRleHR7bGluZS1oZWlnaHQ6MS41ZW19LmNvb2tpZS1tb2RhbC13aW5kb3dfX2Nsb3Nle3dpZHRoOjEwMCU7bWFyZ2luOjB9LmNvb2tpZS1tb2RhbC13aW5kb3dfX2NvbnRlbnQtYm9keSB0YWJsZXt3aWR0aDoxMDAlO2JvcmRlci1jb2xsYXBzZTpjb2xsYXBzZX0uY29va2llLW1vZGFsLXdpbmRvd19fY29udGVudC1ib2R5IHRhYmxlIHRke3BhZGRpbmctbGVmdDoxNXB4fS5jb29raWUtbW9kYWwtd2luZG93X19jb250ZW50LW5lY2Vzc2FyeS1jb29raWVzLXJvd3tiYWNrZ3JvdW5kLWNvbG9yOiNkZWUxZTN9LmRpc2FibGVke2Rpc3BsYXk6bm9uZTt6LWluZGV4Oi05OTl9LmJ0bntkaXNwbGF5OmlubGluZS1ibG9jaztib3JkZXItc3R5bGU6c29saWQ7Ym9yZGVyLXJhZGl1czo1cHg7cGFkZGluZzoxNXB4IDI1cHg7dGV4dC1hbGlnbjpjZW50ZXI7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luOjVweDt0cmFuc2l0aW9uOi4zc30uYnRuLS1zdWNjZXNze2JhY2tncm91bmQtY29sb3I6IzIxODgzODtib3JkZXItY29sb3I6IzIxODgzODtjb2xvcjojZmZmO2ZvbnQtc2l6ZTp4LWxhcmdlfS5idG4tLXN1Y2Nlc3M6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWE2YjJjO2JvcmRlci1jb2xvcjojMWE2YjJjO2NvbG9yOiNmZmY7Zm9udC1zaXplOngtbGFyZ2V9LmJ0bi0tc3VjY2Vzcy1zbXtiYWNrZ3JvdW5kLWNvbG9yOiMyMTg4Mzg7Ym9yZGVyLWNvbG9yOiMyMTg4Mzg7Y29sb3I6I2ZmZjtmb250LXNpemU6aW5pdGlhbH0uYnRuLS1zdWNjZXNzLXNtOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFhNmIyYztib3JkZXItY29sb3I6IzFhNmIyYztjb2xvcjojZmZmO2ZvbnQtc2l6ZTppbml0aWFsfS5idG4tLXNlY29uZGFyeXtiYWNrZ3JvdW5kLWNvbG9yOiM4Yzk1OWM7Ym9yZGVyLWNvbG9yOiM4Yzk1OWM7Y29sb3I6I2ZmZjtmb250LXNpemU6bWVkaXVtfS5idG4tLXNlY29uZGFyeTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiM3MjdjODM7Ym9yZGVyLWNvbG9yOiM3MjdjODM7Y29sb3I6I2ZmZjtmb250LXNpemU6bWVkaXVtfS5idG4tLXNlY29uZGFyeS1zbXtiYWNrZ3JvdW5kLWNvbG9yOiM4Yzk1OWM7Ym9yZGVyLWNvbG9yOiM4Yzk1OWM7Y29sb3I6I2ZmZjtmb250LXNpemU6aW5pdGlhbH0uYnRuLS1zZWNvbmRhcnktc206aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojNzI3YzgzO2JvcmRlci1jb2xvcjojNzI3YzgzO2NvbG9yOiNmZmY7Zm9udC1zaXplOmluaXRpYWx9LnN3aXRjaCBpbnB1dHtvcGFjaXR5OjA7d2lkdGg6MDtoZWlnaHQ6MH0uc3dpdGNoe3Bvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjYwcHg7aGVpZ2h0OjM0cHh9LnN3aXRjaF9fc2xpZGVye3Bvc2l0aW9uOmFic29sdXRlO2N1cnNvcjpwb2ludGVyO3RvcDowO2xlZnQ6MDtyaWdodDowO2JvdHRvbTowO2JhY2tncm91bmQtY29sb3I6IzVhNjI2ODstd2Via2l0LXRyYW5zaXRpb246LjRzO3RyYW5zaXRpb246LjRzfS5zd2l0Y2hfX3NsaWRlcjpiZWZvcmV7cG9zaXRpb246YWJzb2x1dGU7Y29udGVudDpcIlwiO2hlaWdodDoyNnB4O3dpZHRoOjI2cHg7bGVmdDo0cHg7Ym90dG9tOjRweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LXdlYmtpdC10cmFuc2l0aW9uOi40czt0cmFuc2l0aW9uOi40c30uc3dpdGNoX19zbGlkZXItLXJvdW5ke2JvcmRlci1yYWRpdXM6MzRweH0uc3dpdGNoX19zbGlkZXItLXJvdW5kOmJlZm9yZXtib3JkZXItcmFkaXVzOjUwJX1pbnB1dDpjaGVja2VkKy5zd2l0Y2hfX3NsaWRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDdiZmZ9aW5wdXQ6Zm9jdXMrLnN3aXRjaF9fc2xpZGVye2JveC1zaGFkb3c6MCAwIDFweCAjMDA3YmZmfWlucHV0OmNoZWNrZWQrLnN3aXRjaF9fc2xpZGVyOmJlZm9yZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDI2cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgyNnB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyNnB4KX1ib2R5e2JhY2tncm91bmQtY29sb3I6IzBlMTYyZTtmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2EsVmVyZGFuYSxcIkx1Y2lkYSBHcmFuZGVcIixzYW5zLXNlcmlmfWJvZHkuY29va2llLW1lc3NhZ2UtZW5hYmxlZHtwYWRkaW5nLWJvdHRvbTozMDBweH0uY29udGFpbmVyLWZvb3RlcntwYWRkaW5nLXRvcDoyMHB4O3BhZGRpbmctbGVmdDo1JTtwYWRkaW5nLXJpZ2h0OjUlO3BhZGRpbmctYm90dG9tOjEwcHh9LmNvbnRhaW5lci1jb250ZW50e3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTcwMHB4O21hcmdpbjowIGF1dG8gIWltcG9ydGFudH0uY29udGFpbmVyLWNvbnRlbnRfX2NvbnRhaW5lci1yZWxhdGVkbGlua3MsLmNvbnRhaW5lci1jb250ZW50X19jb250YWluZXItYWRzLC5jb250YWluZXItY29udGVudF9fd2ViYXJjaGl2ZXt3aWR0aDozMCU7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmNvbnRhaW5lci1jb250ZW50X19jb250YWluZXItcmVsYXRlZGxpbmtze21hcmdpbi10b3A6NDdweDtmbGV4LWdyb3c6MTt3aWR0aDo2MHB4fS5jb250YWluZXItY29udGVudF9fY29udGFpbmVyLWFkc3ttYXJnaW4tdG9wOjIuNSV9LmNvbnRhaW5lci1jb250ZW50X19jb250YWluZXItYWRzLS10d290e21hcmdpbi10b3A6Ni41JX0uY29udGFpbmVyLWNvbnRlbnRfX3dlYmFyY2hpdmV7bWFyZ2luLXRvcDo0LjUlfS5jb250YWluZXItY29udGVudF9faGVhZGVye2NvbG9yOiM4NDg0ODQ7Zm9udC1zaXplOjE1cHg7bWFyZ2luOjB9LmNvbnRhaW5lci1jb250ZW50X19sZWZ0e2JhY2tncm91bmQ6dXJsKFwiLy9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9iZy9hcnJvd3MucG5nXCIpICMwZTE2MmUgbm8tcmVwZWF0IHRvcCBsZWZ0O2JhY2tncm91bmQtc2l6ZTo5NCUgNjQwcHg7ZmxleC1ncm93OjE7cG9zaXRpb246aW5oZXJpdDt0b3A6OTBweDtvdmVyZmxvdzpoaWRkZW47ei1pbmRleDotMX0uY29udGFpbmVyLWNvbnRlbnRfX3JpZ2h0e2JhY2tncm91bmQ6dXJsKFwiLy9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9iZy9hcnJvd3MucG5nXCIpICMwZTE2MmUgbm8tcmVwZWF0IHRvcCBsZWZ0O2JhY2tncm91bmQtc2l6ZTo5NCUgNjQwcHg7ZmxleC1ncm93OjE7cG9zaXRpb246aW5oZXJpdDt0b3A6OTBweDtvdmVyZmxvdzpoaWRkZW47LW1vei10cmFuc2Zvcm06c2NhbGVYKC0xKTstby10cmFuc2Zvcm06c2NhbGVYKC0xKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLTEpO3RyYW5zZm9ybTpzY2FsZVgoLTEpO3otaW5kZXg6LTF9LmNvbnRhaW5lci1jb250ZW50LS1scHttaW4taGVpZ2h0OjcyMHB4fS5jb250YWluZXItY29udGVudC0tcnB7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjgyMHB4O21hcmdpbjowfS5jb250YWluZXItY29udGVudC0tdHdvdHttaW4taGVpZ2h0OjcyMHB4fS5jb250YWluZXItY29udGVudC0tdHdvdCAuY29udGFpbmVyLWNvbnRlbnRfX2NvbnRhaW5lci1hZHMtLXR3b3R7bWFyZ2luOjB9LnR3by10aWVyLWFkcy1saXN0e3BhZGRpbmc6MCAwIDEuNmVtIDB9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnR7bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MTBweCAwIDVweCAwO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LWltYWdle2NvbnRlbnQ6dXJsKFwiLy9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9pbWFnZXMvYnVsbGV0X2p1c3RhZHMuZ2lmXCIpO2Zsb2F0OmxlZnQ7cGFkZGluZy10b3A6MzJweH0udHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1jb250ZW50e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LWhlYWRlci1saW5re2ZvbnQtc2l6ZTozN3B4O2ZvbnQtd2VpZ2h0OmJvbGQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtjb2xvcjojOWZkODAxfS50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LXRleHR7cGFkZGluZzozcHggMCA2cHggMDttYXJnaW46LjExZW0gMDtsaW5lLWhlaWdodDoxOHB4O2NvbG9yOiNmZmZ9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGlua3tmb250LXNpemU6MWVtO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Y29sb3I6IzlmZDgwMX0udHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1saW5rOmxpbmssLnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGluazp2aXNpdGVke3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGluazpob3ZlciwudHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1saW5rOmFjdGl2ZSwudHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1saW5rOmZvY3Vze3RleHQtZGVjb3JhdGlvbjpub25lfS53ZWJhcmNoaXZlLWJsb2Nre3RleHQtYWxpZ246Y2VudGVyfS53ZWJhcmNoaXZlLWJsb2NrX19oZWFkZXItbGlua3tjb2xvcjojOWZkODAxO2ZvbnQtc2l6ZToyMHB4fS53ZWJhcmNoaXZlLWJsb2NrX19saXN0e3BhZGRpbmc6MH0ud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50e3dvcmQtd3JhcDpicmVhay13b3JkO2xpc3Qtc3R5bGU6bm9uZX0ud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50LWxpbmt7bGluZS1oZWlnaHQ6MzBweDtmb250LXNpemU6MjBweDtjb2xvcjojOWZkODAxfS53ZWJhcmNoaXZlLWJsb2NrX19saXN0LWVsZW1lbnQtbGluazpsaW5rLC53ZWJhcmNoaXZlLWJsb2NrX19saXN0LWVsZW1lbnQtbGluazp2aXNpdGVke3RleHQtZGVjb3JhdGlvbjpub25lfS53ZWJhcmNoaXZlLWJsb2NrX19saXN0LWVsZW1lbnQtbGluazpob3Zlciwud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50LWxpbms6YWN0aXZlLC53ZWJhcmNoaXZlLWJsb2NrX19saXN0LWVsZW1lbnQtbGluazpmb2N1c3t0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfWJvZHl7bWFyZ2luOjB9LmRvbWFpbiBoMXtmb250LXNpemU6Mi4yZW07Zm9udC13ZWlnaHQ6bm9ybWFsO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtdHJhbnNmb3JtOmxvd2VyY2FzZTtjb2xvcjojOTQ5NDk0fSNjb250YWluZXItZG9tYWlue2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpjZW50ZXJ9Lm5hbWUtc2lsby1jb250YWluZXJ7bWF4LXdpZHRoOjEwMjhweDttYXJnaW46YXV0b30ubmFtZS1zaWxvLWJhbm5lcntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg1LCAxZnIpO2dyaWQtdGVtcGxhdGUtcm93czoxZnI7Z3JpZC1jb2x1bW4tZ2FwOjBweDtncmlkLXJvdy1nYXA6MHB4O2JhY2tncm91bmQ6I2ZmZjt0ZXh0LWFsaWduOmxlZnQ7cGFkZGluZzoxMHB4O2NvbG9yOiM5NDk0OTQ7Zm9udC1zaXplOi45ZW19Lm5hbWUtc2lsby1iYW5uZXIgYXtjb2xvcjojOTQ5NDk0fS5yaWdodC1jb250YWluZXJ7Z3JpZC1hcmVhOjEvMi8yLzZ9LmxlZnQtY29udGFpbmVye2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiaHR0cHM6Ly9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9iZy9OYW1lU2lsb0xvZ28ucG5nXCIpO2JhY2tncm91bmQtc2l6ZTo5dnc7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O21hcmdpbi1yaWdodDoxMHB4O2dyaWQtYXJlYToxLzEvMi8yfVxuXG4gICAgPC9zdHlsZT48c2NyaXB0IHR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIj5cbiAgICAgICAgdmFyIGR0byA9IHtcInVpT3B0aW1pemVcIjpmYWxzZSxcInNpbmdsZURvbWFpbk5hbWVcIjpcIm9rYXl0aS5waWNzXCIsXCJkb21haW5OYW1lXCI6XCJva2F5dGkucGljc1wiLFwiZG9tYWluUHJpY2VcIjowLFwiZG9tYWluQ3VycmVuY3lcIjpcIlwiLFwiYWR1bHRGbGFnXCI6ZmFsc2UsXCJwdVwiOlwiLy9va2F5dGkucGljc1wiLFwiZG5zaFwiOnRydWUsXCJkcHNoXCI6ZmFsc2UsXCJ0b1NlbGxcIjpmYWxzZSxcImNkbkhvc3RcIjpcImltZy5zZWRvcGFya2luZy5jb21cIixcImFkYmxvY2trZXlcIjpcIiBkYXRhLWFkYmxvY2trZXk9TUZ3d0RRWUpLb1pJaHZjTkFRRUJCUUFEU3dBd1NBSkJBTm55bFd3MnZMWTRoVW45dzA2elFLYmhLQmZ2akZVQ3NkRmxiNlRkUWh4YjlSWFdYdUk0dDMxYytvOGZZT3YvczhxMUxHUGdhM0RFMUwvdEhVNExFTk1DQXdFQUFRPT1fakdpUFpadkZ4TGhxV1N0bndXQkNOSXIzNkhBK1JmY0ppRDB5UjZDWFVycE9ZNm14UlI1aGRlQldqUE1EMGhYRW5yand0SWNnb0JON3VGalg1eVVzbmc9PVwiLFwidGlkXCI6MzE4MCxcImJ1eWJveFwiOmZhbHNlLFwiYnV5Ym94VG9waWNcIjp0cnVlLFwiZGlzY2xhaW1lclwiOnRydWUsXCJpbXByaW50XCI6ZmFsc2UsXCJzZWFyY2hib3hcIjp0cnVlLFwibm9Gb2xsb3dcIjpmYWxzZSxcInNsc2hcIjpmYWxzZSxcInBwc2hcIjp0cnVlLFwiZG5obHNoXCI6dHJ1ZSxcInRvU2VsbFVybFwiOlwiXCIsXCJ0b1NlbGxUZXh0XCI6XCJcIixcInNlYXJjaGJveFBhdGhcIjpcIi8vb2theXRpLnBpY3MvcGFya2luZy5waHBcIixcInNlYXJjaFBhcmFtc1wiOntcInNlc1wiOlwiWTNKbFBURTNNekF6TkRFNU1EQW1kR05wWkQxdmEyRjVkR2t1Y0dsamN6WTNNakpsWXpCak1URXlPRFUzTGpVd056VXlNRGMxSm5SaGMyczljMlZoY21Ob0ptUnZiV0ZwYmoxdmEyRjVkR2t1Y0dsamN5WmhYMmxrUFRFbWMyVnpjMmx2YmoxUlZFTlRkWE5KVkRsak1WVlNha3hhVUZReWFpWjBjbUZqYTNGMVpYSjVQVEU9XCJ9LFwiaW1wcmludFVybFwiOmZhbHNlLFwiY29udGFjdFVzVXJsXCI6ZmFsc2UsXCJjb250ZW50VHlwZVwiOjUsXCJ0XCI6XCJjb250ZW50XCIsXCJwdXNcIjpcInNlcz1ZM0psUFRFM016QXpOREU1TURBbWRHTnBaRDF2YTJGNWRHa3VjR2xqY3pZM01qSmxZekJqTVRFeU9EVTNMalV3TnpVeU1EYzFKblJoYzJzOWMyVmhjbU5vSm1SdmJXRnBiajF2YTJGNWRHa3VjR2xqY3laaFgybGtQVE1tYzJWemMybHZiajFSVkVOVGRYTkpWRGxqTVZWU2FreGFVRlF5YWc9PVwiLFwicG9zdEFjdGlvblBhcmFtZXRlclwiOntcImZlZWRiYWNrXCI6XCIvc2VhcmNoL2ZiLnBocD9zZXM9XCIsXCJ0b2tlblwiOntcInBhZ2VMb2FkZWRcIjpcIjA2NWFkNjQxNjc4OGIyNDgwMTczMDM0MTkwMGQ2OTJmODE0NmIxNTg4MFwifX0sXCJnRmVlZFNFU1wiOntcImRlZmF1bHRcIjpcIm9nY200cVktc3Mwc3RncGc4OXhjczlHMmhpVURTOVpLZlJ3OTlkQ3pvdzNwSDZndGs2WkVZR3Y1c0dQSDBXNlc0N0dTbVpFUXQ4RGV0S2Y1cV9Nb0JabjVfWlJUZV9yUlNWYXhLaktXRGFBcWJYbGlRTGhXQjNwTmdZUk9RZ2FLRjFlWHRWN3dZd0hTZS1XRzNFWlo5VW1VS2FVd25ITzZSX1NWeTlpOGY2N3FvT0tQTGFSWkJRNXoySDdZc29pSnRHR1VaTlBzYjFIaDNFVkVKTUwxVi1MUm80WWZuOE9zbDdjSkNfcmMxY2JMai1rMEtickNmSkROQ3JpT2ZJcHk0STFSVEg0SkUyckp3UFRDbldGYnhiZ1h2OFNPY2MyX2l4SlEyN3dzT0NrQU1xemNIM2JpYWc4aVpkUFZzVklJSExBYkdoaVNDWVNDLVR4NFRzTWhTOVl0allyTlpxdVZDOWRFU2Y3N0xLTHdsMmdsRk9paW4yekw5ZWpIaFA2LWhyQnJjRFRieFhtOVUwejEteFRGdDYzaEwtRko1bnE2TFh1OHRiM1JfQ3c0T0lkdmJIMVZHbElNSHlUYjRrOWhseGhxb3VIOGo1M01QTHlvdjNQdFNoc1l4X3h2eVZ4eDVxM1hXWVRVNkI3dFZ3TExzNzd0UFVrS2gycFRidXQzMTVOUzdrMFJZNDhzNzh1Vi14QXVGcWlYNUZWVUhObFBWeEZlTHNyUGxfU2pPUS1PWGlmalAzLVpJWjVtLVRnWTdFT0Jqam4tZVhRVGVVUEJ2TlprdlRqZERnUDZXNnlsdjh2ZFFmblJWMXUzQW53dDFLRW43TVwiLFwiYWx0ZXJuYXRlXCI6XCJcIn0sXCJ2aXNpdG9yVmlld0lkSnNBZHNcIjpcIk1ERTBNbVJpWkdSak9EVTFNR1U1TkRabE1EVTRZelJsTW1ZNFl6bGlZVFFKTVFsdmEyRjVkR2t1Y0dsamN6WTNNakpsWXpCak1URXlPRFUzTGpVd056VXlNRGMxQ1c5cllYbDBhUzV3YVdOek5qY3lNbVZqTUdNeE1USmlOVGN1TURRd01UUTFOVGtKTVRjek1ETTBNVGt3TUFrd1wiLFwianNQYXJhbWV0ZXJcIjp7XCJyZXF1ZXN0XCI6e1wicHViSWRcIjpcImRwLXNlZG84NV8zcGhcIixcImRvbWFpblJlZ2lzdHJhbnRcIjpcImFzLWRyaWQtMjI0OTMwMTE3NTg0NDczM1wiLFwia3dcIjpcIlwiLFwiYWR0ZXN0XCI6XCJvZmZcIixcImFkc2FmZVwiOlwibG93XCIsXCJ1aU9wdGltaXplXCI6XCJ0cnVlXCIsXCJobFwiOlwiZnJcIixcIm5vQWRzXCI6NSxcIml2dFwiOmZhbHNlLFwiY2hhbm5lbFwiOlwiZXhwLTAwNTEsYXV4YS1jb250cm9sLTEsMzU5NjE1MTlcIn19LFwiYWRzXCI6W10sXCJhZHZcIjoxLFwiYWR2dFwiOjEsXCJybHNcIjpbXSxcIm51bWJlclJlbGF0ZWRMaW5rc1wiOjMsXCJ3YVVybFwiOlwiL3NlYXJjaC9wb3J0YWwucGhwP2w9b2djbTRxWS1zczBzdGdwZzg5eGNzOUcyaGlVRFM5WktmUnc5OWRDem93M3BINmd0azZaRVlHdjVzR1BIMFc2VzQ3R1NtWkVRdDhEZXRLZjVxX01vQlpuNV9aUlRlX3JSU1ZheEtqS1dEYUFxYlhsaVFMaFdCM3BOZ1lST1FnYUtGMWVYdFY3d1l3SFNlLVdHM0VaWjlVbVVLYVV3bkhPNlJfU1Z5OWk4ZjY3cW9PS1BMYVJaQlE1ejJIN1lzb2lKdEdHVVpOUHNiMUhoM0VWRUpNTDFWLUxSbzRZZm44T3NsN2NKQ19yYzFjYkxqLWswS2JyQ2ZKRE5DcmlPZklweTRJMVJUSDRKRTJySndQVENuV0ZieGJnWHY4U09jYzJfaXhKUTI3d3NPQ2tBTXF6Y0gzYmlhZzhpWmRQVnNWSUlITEFiR2hpU0NZU0MtVHg0VHNNaFM5WXRqWXJOWnF1VkM5ZEVTZjc3TEtMd2wyZ2xGT2lpbjJ6TDllakhoUDYtaHJCcmNEVGJ4WG05VTB6MS14VEZ0NjNoTC1GSjVucTZMWHU4dGIzUl9DdzRPSWR2YkgxVkdsSU1IeVRiNGs5aGx4aHFvdUg4ajUzTVBMeW92M1B0U2hzWXhfeHZ5Vnh4NXEzWFdZVFU2Qjd0VndMTHM3N3RQVWtLaDJwVGJ1dDMxNU5TN2swUlk0OHM3OHVWLXhBdUZxaVg1RlZVSE5sUFZ4RmVMc3JQbF9Tak9RLU9YaWZqUDMtWklaNW0tVGdZN0VPQmpqbi1lWFFUZVVQQnZOWmt2VGpkRGdQNlc2eWx2OHZkUWZuUlYxdTNBbnd0MUtFbjdNXCIsXCJ0c2NcIjp0cnVlLFwidHNjUXNcIjpcInNlcz1vZ2MtOWp2U3JhTmdzMlFwUFRMLVpVelZ2cjFWUmxndDU2Y3VHdXlvcjdkM3hBN2dIaU55enJTTmlqYVFFT1ZyUENxUXlxcWQxbDlZNDBzWHRTT01xYWpXQm1QVno5N0pKXzM5NjQ5djEzaUxaLXUwTFJhZHkyMmJFMzQwWDlrbHZSdFJ3QlVRaFkxbjI1NG96UEpMTnp6cGJBbWh1UFdDbkk4VndPaEc0X0JHNkxLTEtkSEZfM0o1S0ZndlNNLTd5WGRXYkJabDBkdHhvdkRMcW9TUlpLM0Q0VG9OUFNPQzVheFVlQk4tWGRXaUE5Uk5mMmRwaTEyQWZMUjVvZ29jWmRENEI5a255LXV1MjBybmo1OElUa2xhWGtGMWVVVm9hMzE4Q3lqM25LcEZlT1I5TEhXWHVQdW9CcUpVWkZxQlFyZEJoWmVVVFYwejZra3o0THUxNFpNa1R4WHkxV2ZSSnhLaTJPejRXNE9uQ3NENXpPMUtYSmw0MHVtVl9FJmN2PTJcIixcImxhbmdcIjpcImZyXCIsXCJtYWlkXCI6MTIsXCJzZWRvUGFya2luZ1VybFwiOlwiaHR0cHM6Ly93d3cuc2Vkby5jb20vc2VydmljZXMvcGFya2luZy5waHAzXCIsXCJkYmdcIjpmYWxzZSxcInNpZ25lZExpbmtcIjpcImxcIixcInZpc2l0b3JWaWV3SWRcIjpcInZcIixcInJlZ2lzdHJhcl9wYXJhbXNcIjpbXSxcImNsaWNrVHJhY2tcIjpbXSxcImNvb2tpZU1lc3NhZ2VcIjpmYWxzZSxcImNvb2tpZU1lc3NhZ2VJbnRlcmFjdGl2ZVwiOmZhbHNlLFwiZXhlY3V0ZVRyYWNraW5nUGl4ZWxzXCI6ZmFsc2UsXCJjbXBCYW5uZXJcIjpmYWxzZSxcImNtcEJhbm5lclRoZW1lXCI6XCI2NWIyOGY3MWFjZjIzN2UyMTMwZGYxZmFcIixcImJhbm5lclR5cGVzXCI6W10sXCJjbGlja0NvbnRyb2xIb3N0XCI6XCJjYy5zZWRvcGFya2luZy5jb21cIn07XG4gICAgPC9zY3JpcHQ+PC9oZWFkPjxib2R5ID48ZGl2IGlkPVwiY29udGFpbmVyLWhlYWRlclwiPjxkaXYgaWQ9XCJjb250YWluZXItZG9tYWluXCI+PGRpdiBjbGFzcz1cImRvbWFpblwiIGlkPVwiZG4tZGVmYXVsdFwiPjxoMT5va2F5dGkucGljczwvaDE+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBpZD1cImNvbnRhaW5lci1jb250ZW50XCIgY2xhc3M9XCJjb250YWluZXItY29udGVudCBjb250YWluZXItY29udGVudC0tbHBcIj48ZGl2IGNsYXNzPVwiY29udGFpbmVyLWNvbnRlbnRfX2xlZnRcIj48L2Rpdj48ZGl2IGNsYXNzPVwiY29udGFpbmVyLWNvbnRlbnRfX2NvbnRhaW5lci1yZWxhdGVkbGlua3NcIiBpZD1cImNvbnRhaW5lci1yZWxhdGVkbGlua3NcIj48ZGl2IGlkPVwicmItZGVmYXVsdFwiPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9XCJjb250YWluZXItY29udGVudF9fcmlnaHRcIj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPVwiY29udGFpbmVyLXNlYXJjaGJveFwiIGlkPVwiY29udGFpbmVyLXNlYXJjaGJveFwiPjxkaXYgY2xhc3M9XCJjb250YWluZXItc2VhcmNoYm94X19jb250ZW50XCIgaWQ9XCJzYi1kZWZhdWx0XCI+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz1cIm5hbWUtc2lsby1jb250YWluZXJcIj48ZGl2IGNsYXNzPVwibmFtZS1zaWxvLWJhbm5lclwiPjxkaXYgY2xhc3M9XCJyaWdodC1jb250YWluZXJcIj5UaGlzIGRvbWFpbiBpcyByZWdpc3RlcmVkIGF0IE5hbWVTaWxvLiBJZiB5b3UgYXJlIHRoZSBvd25lciwgc3RhcnQgYWRtaW5pc3RlcmluZyBpdCBhdCA8YSBocmVmPVwiaHR0cHM6Ly93d3cubmFtZXNpbG8uY29tXCI+TmFtZVNpbG8uY29tPC9hPi4gSWYgdGhpcyBpcyBub3QgeW91ciBkb21haW4sIDxhIGhyZWY9XCJodHRwczovL3d3dy5uYW1lc2lsby5jb20vZG9tYWluL3NlYXJjaC1kb21haW5zP3F1ZXJ5PW9rYXl0aS5waWNzXCI+ZmluZCBzaW1pbGFyIG5hbWVzPC9hPiB0aGF0IHdvcmsgZm9yIHlvdS48L2Rpdj48ZGl2IGNsYXNzPVwibGVmdC1jb250YWluZXJcIj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPVwiY29udGFpbmVyLWJ1eWJveFwiIGlkPVwiY29udGFpbmVyLWJ1eWJveFwiPjwvZGl2PjxkaXYgY2xhc3M9XCJjb250YWluZXItZm9vdGVyXCIgaWQ9XCJjb250YWluZXItZm9vdGVyXCI+PGRpdiBjbGFzcz1cImNvbnRhaW5lci1kaXNjbGFpbWVyXCIgaWQ9XCJjb250YWluZXItZGlzY2xhaW1lclwiPjxkaXYgY2xhc3M9XCJjb250YWluZXItZGlzY2xhaW1lcl9fY29udGVudFwiPjxwIGNsYXNzPVwiY29udGFpbmVyLWRpc2NsYWltZXJfX2NvbnRlbnQtdGV4dFwiPlxuICAgICAgICBUaGlzIHdlYnBhZ2Ugd2FzIGdlbmVyYXRlZCBieSB0aGUgZG9tYWluIG93bmVyIHVzaW5nIDxhIGhyZWY9XCJodHRwczovL3d3dy5zZWRvLmNvbS9zZXJ2aWNlcy9wYXJraW5nLnBocDNcIj5TZWRvIERvbWFpbiBQYXJraW5nPC9hPi4gRGlzY2xhaW1lcjogU2VkbyBtYWludGFpbnMgbm8gcmVsYXRpb25zaGlwIHdpdGggdGhpcmQgcGFydHkgYWR2ZXJ0aXNlcnMuIFJlZmVyZW5jZSB0byBhbnkgc3BlY2lmaWMgc2VydmljZSBvciB0cmFkZSBtYXJrIGlzIG5vdCBjb250cm9sbGVkIGJ5IFNlZG8gbm9yIGRvZXMgaXQgY29uc3RpdHV0ZSBvciBpbXBseSBpdHMgYXNzb2NpYXRpb24sIGVuZG9yc2VtZW50IG9yIHJlY29tbWVuZGF0aW9uLlxuICAgIDwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPVwiY29udGFpbmVyLWltcHJpbnRcIiBpZD1cImNvbnRhaW5lci1pbXByaW50XCI+PC9kaXY+PGRpdiBjbGFzcz1cImNvbnRhaW5lci1wcml2YWN5UG9saWN5XCIgaWQ9XCJjb250YWluZXItcHJpdmFjeVBvbGljeVwiPjxkaXYgY2xhc3M9XCJjb250YWluZXItcHJpdmFjeVBvbGljeV9fY29udGVudFwiPjxkaXYgaWQ9XCJwcml2YWN5LXBvbGljeS1saW5rXCI+PGFcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNvbnRhaW5lci1wcml2YWN5UG9saWN5X19jb250ZW50LWxpbmtcIlxuICAgICAgICAgICAgICAgIGhyZWY9XCIjXCJcbiAgICAgICAgICAgICAgICBvbmNsaWNrPVwid2luZG93Lm9wZW4oXG4gICAgICAgICAgICAgICAgICAgICAgICAnLy9zZWRvcGFya2luZy5jb20vcHJpdmFjeS1wb2xpY3kvZW4vaW5kZXguaHRtbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAncHJpdmFjeS1wb2xpY3knLCd3aWR0aD02MDAsaGVpZ2h0PTQwMCcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1wiPlxuICAgICAgICAgICAgQ29uZmlkZW50aWFsaXRcdTAwZTlcbiAgICAgICAgPC9hPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9XCJjb250YWluZXItY29udGFjdC11c1wiIGlkPVwiY29udGFpbmVyLWNvbnRhY3QtdXNcIj48L2Rpdj48L2Rpdj48IS0tIENBRiAtLT48c2NyaXB0IHR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIiBzcmM9XCIvL3d3dy5nb29nbGUuY29tL2Fkc2Vuc2UvZG9tYWlucy9jYWYuanM/YWJwPTEmYW1wO1lFcjNDaUY2QXVRcUxzcE5vYnlhbDNqaTBTeXF4QkxuPXRydWVcIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIj5cbiAgICAgICAgICAgICAgICB2YXIgY2FmUkw9e2NvbnRhaW5lcjpcInJiLWRlZmF1bHRcIix0eXBlOlwicmVsYXRlZHNlYXJjaFwiLHN0eWxlSWQ6OTMzMDI0NDM4MCxudW1iZXI6M307aWYoXCJhZExvYWRlZFwiaW4gZHRvLnBvc3RBY3Rpb25QYXJhbWV0ZXIudG9rZW4mJmR0by5wb3N0QWN0aW9uUGFyYW1ldGVyLnRva2VuLmFkTG9hZGVkKXtjYWZSTC5hZExvYWRlZENhbGxiYWNrPWNhbGxiYWNrQWRMb2FkZWR9dmFyIGNhZkVsPVt7bWV0YTp7bGF5b3V0VHlwZXM6WzFdfSxjYWY6e2NvbnRhaW5lcjpcImFiLWRlZmF1bHRcIix0eXBlOlwiYWRzXCIsbGluZXM6MyxsaW5rVGFyZ2V0OlwiX2JsYW5rXCIsc3R5bGVJZDo5MzMwMjQ0MzgwfX0se21ldGE6e2xheW91dFR5cGVzOls1XX0sY2FmOmNhZlJMfSx7bWV0YTp7bGF5b3V0VHlwZXM6WzEsMiwzLDVdfSxjYWY6e2NvbnRhaW5lcjpcInNiLWRlZmF1bHRcIix0eXBlOlwic2VhcmNoYm94XCIsaGlkZVNlYXJjaElucHV0Qm9yZGVyOnRydWUsaGlkZVNlYXJjaEJ1dHRvbkJvcmRlcjp0cnVlLGNvbG9yU2VhcmNoQnV0dG9uVGV4dDpcIiM2MzgyOTZcIixmb250U2l6ZVNlYXJjaElucHV0OjEyLGZvbnRTaXplU2VhcmNoQnV0dG9uOjEyLGZvbnRGYW1pbHk6XCJBcmlhbFwifX1dO1xuICAgIDwvc2NyaXB0PjxzY3JpcHQgdHlwZT1cInRleHQvamF2YXNjcmlwdFwiPlxuICAgICAgICB2YXIgb25jbGlja19wYXJhbV9sPWR0by5zaWduZWRMaW5rO3ZhciBvbmNsaWNrX3ZhbHVlX2w9ZHRvLmdGZWVkU0VTLmRlZmF1bHQ7dmFyIG9uY2xpY2tfdmFsdWVfYWw9ZHRvLmdGZWVkU0VTLmFsdGVybmF0ZTt2YXIgb25jbGlja19wYXJhbV92PWR0by52aXNpdG9yVmlld0lkO3ZhciBvbmNsaWNrX3ZhbHVlX3Y9ZHRvLnZpc2l0b3JWaWV3SWRKc0Fkczt2YXIgZmI9XCJcIjt2YXIgZmJfdG9rZW49XCJcIjtpZihkdG8ucG9zdEFjdGlvblBhcmFtZXRlcil7ZmI9ZHRvLnB1K2R0by5wb3N0QWN0aW9uUGFyYW1ldGVyLmZlZWRiYWNrO2lmKGR0by5wb3N0QWN0aW9uUGFyYW1ldGVyLnRva2VuLnBhZ2VMb2FkZWQpe2ZiX3Rva2VuPWR0by5wb3N0QWN0aW9uUGFyYW1ldGVyLnRva2VuLnBhZ2VMb2FkZWR9fXZhciBwdT1kdG8ucHU7dmFyIGRzPWR0by5hZHVsdEZsYWc7dmFyIHB1cz1kdG8ucHVzO3ZhciB0bHQ9ZHRvLmNvbnRlbnRUeXBlO3ZhciBkc2I9ZHRvLnNlYXJjaGJveDt2YXIgcGR0bz17Y2FmOntjb2xvckJhY2tncm91bmQ6XCJ0cmFuc3BhcmVudFwifX07aWYoZHRvLmpzUGFyYW1ldGVyKXtmb3IobGV0IGtleSBpbiBkdG8uanNQYXJhbWV0ZXIucmVxdWVzdCl7cGR0by5jYWZba2V5XT1kdG8uanNQYXJhbWV0ZXIucmVxdWVzdFtrZXldfX0oZnVuY3Rpb24oKXtsZXQgcGFnZU9wdGlvbnM9cGR0by5jYWY7bGV0IG5vQWRzPXBkdG8uY2FmLm5vQWRzO2RlbGV0ZSBwZHRvLmNhZi5ub0FkcztwYWdlT3B0aW9ucy5yZXN1bHRzUGFnZUJhc2VVcmw9cHUrXCIvY2FmLz9cIitwdXM7bGV0IGNsaWNrQ29udHJvbFBhcmFtcz17fTtjbGlja0NvbnRyb2xQYXJhbXNbb25jbGlja19wYXJhbV9sXT1vbmNsaWNrX3ZhbHVlX2w7Y2xpY2tDb250cm9sUGFyYW1zW29uY2xpY2tfcGFyYW1fdl09b25jbGlja192YWx1ZV92O2Z1bmN0aW9uIHNldFJsc0Ftb3VudCgpe2NhZkVsLmZvckVhY2goZnVuY3Rpb24ocGFydCxpbmRleCl7aWYoY2FmRWxbaW5kZXhdLm1ldGEubGF5b3V0VHlwZXMuaW5kZXhPZihkdG8uY29udGVudFR5cGUpIT09LTEmJmNhZkVsW2luZGV4XS5jYWYudHlwZT09PVwicmVsYXRlZHNlYXJjaFwiKXtjYWZFbFtpbmRleF0uY2FmLm51bWJlcj1kdG8ubnVtYmVyUmVsYXRlZExpbmtzfX0pfWZ1bmN0aW9uIGFkZENsaWNrVHJhY2tVcmwoY2FmT2JqZWN0KXtsZXQgcGFyYW1zPU9iamVjdC5rZXlzKGNsaWNrQ29udHJvbFBhcmFtcykubWFwKGZ1bmN0aW9uKGtleSl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChrZXkpK1wiPVwiK2VuY29kZVVSSUNvbXBvbmVudChjbGlja0NvbnRyb2xQYXJhbXNba2V5XSl9KS5qb2luKFwiJlwiKTtsZXQgcGFya2luZ0NsaWNrVHJhY2s9XCIvL1wiK2R0by5jbGlja0NvbnRyb2xIb3N0K1wiL3NlYXJjaC9jYy5waHA/XCIrcGFyYW1zO2lmKGR0by5jbGlja1RyYWNrLmxlbmd0aD4wKXtkdG8uY2xpY2tUcmFjay5mb3JFYWNoKGZ1bmN0aW9uKHBhcnQsaW5kZXgpe3RoaXNbaW5kZXhdPWVuY29kZVVSSSh0aGlzW2luZGV4XSl9LGR0by5jbGlja1RyYWNrKTtjYWZPYmplY3QuY2xpY2t0cmFja1VybD1bcGFya2luZ0NsaWNrVHJhY2tdLmNvbmNhdChkdG8uY2xpY2tUcmFjayl9ZWxzZXtjYWZPYmplY3QuY2xpY2t0cmFja1VybD1wYXJraW5nQ2xpY2tUcmFja319cGFnZU9wdGlvbnMucGFnZUxvYWRlZENhbGxiYWNrPWZ1bmN0aW9uKHJlcXVlc3RBY2NlcHRlZCxzdGF0dXMpe2xldCBmYl9hZGRfcGFyYW1zPVwiXCI7ZnVuY3Rpb24gaXNBZHVsdFN0YXR1c0NhbGxiYWNrUmVxdWlyZWQoKXtpZighKFwiYWR1bHRcImluIHN0YXR1cykpe3JldHVybiBmYWxzZX1pZihkcz09PWZhbHNlJiZzdGF0dXMuYWR1bHQ9PT10cnVlKXtyZXR1cm4gdHJ1ZX1pZihkcz09PXRydWUmJnN0YXR1cy5hZHVsdD09PWZhbHNlKXtyZXR1cm4gdHJ1ZX1yZXR1cm4gZmFsc2V9ZnVuY3Rpb24gaXNFcnJvckNvZGVDYWxsYmFja1JlcXVpcmVkKCl7aWYoIShcImVycm9yX2NvZGVcImluIHN0YXR1cykpe3JldHVybiBmYWxzZX1pZihpc0FkdWx0U3RhdHVzQ2FsbGJhY2tSZXF1aXJlZCgpJiYyNj09PXN0YXR1cy5lcnJvcl9jb2RlKXtyZXR1cm4gZmFsc2V9cmV0dXJuIHRydWV9aWYoaXNBZHVsdFN0YXR1c0NhbGxiYWNrUmVxdWlyZWQoKSl7ZmJfYWRkX3BhcmFtcys9XCImYXM9XCIrc3RhdHVzLmFkdWx0K1wiJmdjPVwiK3N0YXR1cy5jbGllbnR9aWYoaXNFcnJvckNvZGVDYWxsYmFja1JlcXVpcmVkKCkpe2ZiX2FkZF9wYXJhbXMrPVwiJmVjPVwiK3BhcnNlSW50KHN0YXR1cy5lcnJvcl9jb2RlKX1pZihmYl9hZGRfcGFyYW1zLmxlbmd0aD09PTB8fGZiX3Rva2VuLmxlbmd0aD09PTApe3JldHVybn1sZXQgcmVxdWVzdD1uZXcgWE1MSHR0cFJlcXVlc3Q7cmVxdWVzdC5vcGVuKFwiR0VUXCIsZmIrZmJfdG9rZW4rZmJfYWRkX3BhcmFtcyx0cnVlKTtyZXF1ZXN0LnNlbmQoKX07ZnVuY3Rpb24gY29sbGVjdENhZk9iamVjdHMoKXtsZXQgY2FmT2JqZWN0cz1bcGFnZU9wdGlvbnNdO2NhZkVsLmZvckVhY2goZnVuY3Rpb24ocGFydCxpbmRleCl7aWYoY2FmRWxbaW5kZXhdLm1ldGEubGF5b3V0VHlwZXMuaW5kZXhPZih0bHQpPT09LTEpe3JldHVybn1pZihjYWZFbFtpbmRleF0uY2FmLnR5cGU9PT1cImFkc1wiKXthZGRDbGlja1RyYWNrVXJsKGNhZkVsW2luZGV4XS5jYWYpO2NhZkVsW2luZGV4XS5jYWYubnVtYmVyPW5vQWRzfXBkdG8uY2FmLnVpT3B0aW1pemU9ZHRvLnVpT3B0aW1pemU7aWYoY2FmRWxbaW5kZXhdLmNhZi50eXBlPT09XCJyZWxhdGVkc2VhcmNoXCImJmR0by5ybHMubGVuZ3RoPjApe3JldHVybn1pZihjYWZFbFtpbmRleF0uY2FmLnR5cGU9PT1cInNlYXJjaGJveFwiJiZkc2I9PT1mYWxzZSl7cmV0dXJufWNhZk9iamVjdHMucHVzaChjYWZFbFtpbmRleF0uY2FmKX0pO3JldHVybiBjYWZPYmplY3RzfWZ1bmN0aW9uIGFwcGVuZENhZlJscygpe2lmKGR0by5ybHMubGVuZ3RoPD0wKXtyZXR1cm59bGV0IHN0YXJ0PTA7bGV0IGNhZlJsT2JqZWN0cz1bcGR0by5jYWZdO2NhZkVsLmZvckVhY2goZnVuY3Rpb24ocGFydCxpbmRleCl7aWYoY2FmRWxbaW5kZXhdLm1ldGEubGF5b3V0VHlwZXMuaW5kZXhPZihkdG8uY29udGVudFR5cGUpIT09LTEmJmNhZkVsW2luZGV4XS5jYWYudHlwZT09PVwicmVsYXRlZHNlYXJjaFwiKXtsZXQgc3RvcD1zdGFydCtjYWZFbFtpbmRleF0uY2FmLm51bWJlcjtsZXQgdGVybXM9W107Zm9yKHZhciBpPXN0YXJ0O2k8c3RvcDtpKyspe2lmKGk+ZHRvLnJscy5sZW5ndGgtMSl7YnJlYWt9dGVybXNbaV09ZHRvLnJsc1tpXS50ZXJtO3N0YXJ0PWkrMX1jYWZFbFtpbmRleF0uY2FmLnRlcm1zPXRlcm1zLmpvaW4oXCIsXCIpO2NhZkVsW2luZGV4XS5jYWYub3B0aW1pemVUZXJtcz1mYWxzZTtjYWZSbE9iamVjdHMucHVzaChjYWZFbFtpbmRleF0uY2FmKX19KTtjcmVhdGVDYWYuYXBwbHkodGhpcyxjYWZSbE9iamVjdHMpfWlmKHR5cGVvZiBnb29nbGUhPT1cInVuZGVmaW5lZFwiKXt3aW5kb3cuY3JlYXRlQ2FmPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gRihhcmdzKXtyZXR1cm4gZ29vZ2xlLmFkcy5kb21haW5zLkNhZi5hcHBseSh0aGlzLGFyZ3MpfUYucHJvdG90eXBlPWdvb2dsZS5hZHMuZG9tYWlucy5DYWYucHJvdG90eXBlO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgRihhcmd1bWVudHMpfX0oKTtzZXRSbHNBbW91bnQoKTtpZihkdG8uYWR2dD09PTEmJmR0by5jb250ZW50VHlwZSE9PTImJmR0by5jb250ZW50VHlwZSE9PTMpe2FwcGVuZENhZlJscygpfWxldCBjYWZPYmplY3RzPWNvbGxlY3RDYWZPYmplY3RzKCk7aWYoY2FmT2JqZWN0cy5sZW5ndGg+MSl7Y3JlYXRlQ2FmLmFwcGx5KHRoaXMsY2FmT2JqZWN0cyl9fX0pKCk7ZnVuY3Rpb24gdHNjQ2FsbChkdG8pe2NvbnN0IHJlcXVlc3Q9bmV3IFhNTEh0dHBSZXF1ZXN0O3JlcXVlc3Qub3BlbihcIkdFVFwiLGR0by5wdStcIi9zZWFyY2gvdHNjLnBocD9cIitkdG8udHNjUXMpO3JlcXVlc3Quc2VuZCgpfWZ1bmN0aW9uIGlzRmFjZWJvb2tDb29raWVTZXQoKXtjb25zdCBjb29raWVBcnJheT1kZWNvZGVVUklDb21wb25lbnQoZG9jdW1lbnQuY29va2llKS5zcGxpdChcIjtcIik7Zm9yKGxldCBpPTA7aTxjb29raWVBcnJheS5sZW5ndGg7aSsrKXtsZXQgYz1jb29raWVBcnJheVtpXS50cmltKCk7aWYoYy5pbmRleE9mKFwiX2ZicD1cIik9PT0wKXtyZXR1cm4gdHJ1ZX19cmV0dXJuIGZhbHNlfWlmKGR0by50c2Mpe2lmKGR0by5mYnBDaGVjaz09dW5kZWZpbmVkKXt0c2NDYWxsKGR0byl9ZWxzZXtsZXQgeD0wO2NvbnN0IGludGVydmFsSUQ9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBpc1NldD1pc0ZhY2Vib29rQ29va2llU2V0KCk7aWYoaXNTZXR8fHg9PT05KXt0c2NDYWxsKGR0byk7Y2xlYXJJbnRlcnZhbChpbnRlcnZhbElEKX14Kyt9LDEwMCl9fXZhciAkcGFya01vZGFsQnV0dG9uPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiY29va2llLW1vZGFsLW9wZW5cIik7dmFyICRwYXJrTW9kYWxDbG9zZUJ1dHRvbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImNvb2tpZS1tb2RhbC1jbG9zZVwiKTt2YXIgJHBhcmtNb2RhbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImNvb2tpZS1tb2RhbC13aW5kb3dcIik7dmFyICRwYXJrQ29va2llTWVzc2FnZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImNvb2tpZS1tZXNzYWdlXCIpO3ZhciAkcGFya1RoaXJkUGFydHlDb29raWVDaGVja2JveD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInRoaXJkLXBhcnR5LWNvb2tpZS1jaGVja2JveFwiKTt2YXIgJHBhcmtBY2NlcHRBbGxDb29raWVzQnV0dG9uPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYWNjZXB0LWFsbC1jb29raWVzLWJ0blwiKTt2YXIgZXhlY3V0ZVRyYWNraW5nUGl4ZWw9ZnVuY3Rpb24odHJpZ2dlcil7aWYodHJpZ2dlcj09PXRydWUmJnR5cGVvZiBweFRyYWNraW5nPT09XCJmdW5jdGlvblwiKXtweFRyYWNraW5nKCl9fTt2YXIgZ2V0Q29va2llRXhwaXJhdGlvblRpbWU9ZnVuY3Rpb24oKXt2YXIgZD1uZXcgRGF0ZTtkLnNldFRpbWUoZC5nZXRUaW1lKCkrNyoyNCo2MCo2MCoxZTMpO3JldHVybiBkLnRvVVRDU3RyaW5nKCl9O3ZhciBzYXZlUGFya2luZ0Nvb2tpZT1mdW5jdGlvbihzdGF0aXN0aWNzQ29va2llKXt2YXIgY29va2llQ29uc2VudD17bmVjZXNzYXJ5OnRydWUsc3RhdGlzdGljczpzdGF0aXN0aWNzQ29va2llLHZlcnNpb246MSx0aW1lc3RhbXA6KG5ldyBEYXRlKS5nZXRUaW1lKCl9O2RvY3VtZW50LmNvb2tpZT1cIkNvb2tpZUNvbnNlbnQ9XCIrSlNPTi5zdHJpbmdpZnkoY29va2llQ29uc2VudCkrXCI7ZXhwaXJlcz1cIitnZXRDb29raWVFeHBpcmF0aW9uVGltZSgpfTtpZigkcGFya01vZGFsQnV0dG9uIT1udWxsKXskcGFya01vZGFsQnV0dG9uLm9uY2xpY2s9ZnVuY3Rpb24oZSl7JHBhcmtNb2RhbC5jbGFzc0xpc3QucmVtb3ZlKFwiZGlzYWJsZWRcIil9fWlmKCRwYXJrTW9kYWxDbG9zZUJ1dHRvbiE9bnVsbCl7JHBhcmtNb2RhbENsb3NlQnV0dG9uLm9uY2xpY2s9ZnVuY3Rpb24oZSl7JHBhcmtNb2RhbC5jbGFzc0xpc3QuYWRkKFwiZGlzYWJsZWRcIik7JHBhcmtDb29raWVNZXNzYWdlLmNsYXNzTGlzdC5hZGQoXCJkaXNhYmxlZFwiKTtzYXZlUGFya2luZ0Nvb2tpZSgkcGFya1RoaXJkUGFydHlDb29raWVDaGVja2JveC5jaGVja2VkKTtleGVjdXRlVHJhY2tpbmdQaXhlbCgkcGFya1RoaXJkUGFydHlDb29raWVDaGVja2JveC5jaGVja2VkKX19aWYoJHBhcmtBY2NlcHRBbGxDb29raWVzQnV0dG9uIT1udWxsKXskcGFya0FjY2VwdEFsbENvb2tpZXNCdXR0b24ub25jbGljaz1mdW5jdGlvbigpeyRwYXJrQ29va2llTWVzc2FnZS5jbGFzc0xpc3QuYWRkKFwiZGlzYWJsZWRcIik7c2F2ZVBhcmtpbmdDb29raWUodHJ1ZSk7ZXhlY3V0ZVRyYWNraW5nUGl4ZWwodHJ1ZSl9fWlmKGR0by5leGVjdXRlVHJhY2tpbmdQaXhlbHM9PT10cnVlKXtleGVjdXRlVHJhY2tpbmdQaXhlbCh0cnVlKX1cbiAgICA8L3NjcmlwdD48L2JvZHk+PC9odG1sPiJ9LCAiaGVhZGVyc1NpemUiOiA2NTQsICJib2R5U2l6ZSI6IDgyMjIsICJyZWRpcmVjdFVSTCI6ICIiLCAiX3RyYW5zZmVyU2l6ZSI6IDg4NzZ9LCAiY2FjaGUiOiB7fSwgInRpbWluZ3MiOiB7ImRucyI6IDAsICJjb25uZWN0IjogOC41NDksICJzc2wiOiA5LjU0OSwgInNlbmQiOiAwLCAid2FpdCI6IDU2Ljk2MywgInJlY2VpdmUiOiA0LjU5Nn0sICJwYWdlcmVmIjogInBhZ2VANzA2ODBmYzdjNTM1OTA0ODAxMTFhMzNmYmJkNDRjY2YiLCAic2VydmVySVBBZGRyZXNzIjogIjkxLjE5NS4yNDAuMTIzIiwgIl9zZXJ2ZXJQb3J0IjogODAsICJfc2VjdXJpdHlEZXRhaWxzIjoge319LCB7InN0YXJ0ZWREYXRlVGltZSI6ICIyMDI0LTEwLTMxVDAyOjMxOjQwLjEyNVoiLCAidGltZSI6IDIwLjA3MywgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9hZHNlbnNlL2RvbWFpbnMvY2FmLmpzP2FicD0xJllFcjNDaUY2QXVRcUxzcE5vYnlhbDNqaTBTeXF4QkxuPXRydWUiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8xLjEiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFtdLCAicXVlcnlTdHJpbmciOiBbeyJuYW1lIjogImFicCIsICJ2YWx1ZSI6ICIxIn0sIHsibmFtZSI6ICJZRXIzQ2lGNkF1UXFMc3BOb2J5YWwzamkwU3lxeEJMbiIsICJ2YWx1ZSI6ICJ0cnVlIn1dLCAiaGVhZGVyc1NpemUiOiAzOCwgImJvZHlTaXplIjogMH0sICJyZXNwb25zZSI6IHsic3RhdHVzIjogMzA3LCAic3RhdHVzVGV4dCI6ICJJbnRlcm5hbCBSZWRpcmVjdCIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzEuMSIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICJDcm9zcy1PcmlnaW4tUmVzb3VyY2UtUG9saWN5IiwgInZhbHVlIjogIkNyb3NzLU9yaWdpbiJ9LCB7Im5hbWUiOiAiTG9jYXRpb24iLCAidmFsdWUiOiAiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9hZHNlbnNlL2RvbWFpbnMvY2FmLmpzP2FicD0xJllFcjNDaUY2QXVRcUxzcE5vYnlhbDNqaTBTeXF4QkxuPXRydWUifSwgeyJuYW1lIjogIk5vbi1BdXRob3JpdGF0aXZlLVJlYXNvbiIsICJ2YWx1ZSI6ICJETlMifV0sICJjb250ZW50IjogeyJzaXplIjogLTEsICJtaW1lVHlwZSI6ICJ4LXVua25vd24iLCAiY29tcHJlc3Npb24iOiAwfSwgImhlYWRlcnNTaXplIjogMjEwLCAiYm9keVNpemUiOiAwLCAicmVkaXJlY3RVUkwiOiAiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9hZHNlbnNlL2RvbWFpbnMvY2FmLmpzP2FicD0xJllFcjNDaUY2QXVRcUxzcE5vYnlhbDNqaTBTeXF4QkxuPXRydWUiLCAiX3RyYW5zZmVyU2l6ZSI6IDIxMH0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogLTEsICJjb25uZWN0IjogLTEsICJzc2wiOiAtMSwgInNlbmQiOiAwLCAid2FpdCI6IC0xLCAicmVjZWl2ZSI6IDIwLjA3M30sICJwYWdlcmVmIjogInBhZ2VANzA2ODBmYzdjNTM1OTA0ODAxMTFhMzNmYmJkNDRjY2YiLCAiX3NlY3VyaXR5RGV0YWlscyI6IHt9fSwgeyJzdGFydGVkRGF0ZVRpbWUiOiAiMjAyNC0xMC0zMVQwMjozMTo0MC4xMzNaIiwgInRpbWUiOiAxNTI1LCAicmVxdWVzdCI6IHsibWV0aG9kIjogIkdFVCIsICJ1cmwiOiAiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9hZHNlbnNlL2RvbWFpbnMvY2FmLmpzP2FicD0xJllFcjNDaUY2QXVRcUxzcE5vYnlhbDNqaTBTeXF4QkxuPXRydWUiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8yLjAiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiOmF1dGhvcml0eSIsICJ2YWx1ZSI6ICJ3d3cuZ29vZ2xlLmNvbSJ9LCB7Im5hbWUiOiAiOm1ldGhvZCIsICJ2YWx1ZSI6ICJHRVQifSwgeyJuYW1lIjogIjpwYXRoIiwgInZhbHVlIjogIi9hZHNlbnNlL2RvbWFpbnMvY2FmLmpzP2FicD0xJllFcjNDaUY2QXVRcUxzcE5vYnlhbDNqaTBTeXF4QkxuPXRydWUifSwgeyJuYW1lIjogIjpzY2hlbWUiLCAidmFsdWUiOiAiaHR0cHMifSwgeyJuYW1lIjogImFjY2VwdCIsICJ2YWx1ZSI6ICIqLyoifSwgeyJuYW1lIjogImFjY2VwdC1lbmNvZGluZyIsICJ2YWx1ZSI6ICJnemlwLCBkZWZsYXRlLCBiciwgenN0ZCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJwcmlvcml0eSIsICJ2YWx1ZSI6ICJ1PTEifSwgeyJuYW1lIjogInJlZmVyZXIiLCAidmFsdWUiOiAiaHR0cDovL29rYXl0aS5waWNzLyJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLWRlc3QiLCAidmFsdWUiOiAic2NyaXB0In0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtbW9kZSIsICJ2YWx1ZSI6ICJuby1jb3JzIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtc2l0ZSIsICJ2YWx1ZSI6ICJjcm9zcy1zaXRlIn0sIHsibmFtZSI6ICJ1c2VyLWFnZW50IiwgInZhbHVlIjogIk1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS8xMzAuMC42NzIzLjMxIFNhZmFyaS81MzcuMzYifV0sICJxdWVyeVN0cmluZyI6IFt7Im5hbWUiOiAiYWJwIiwgInZhbHVlIjogIjEifSwgeyJuYW1lIjogIllFcjNDaUY2QXVRcUxzcE5vYnlhbDNqaTBTeXF4QkxuIiwgInZhbHVlIjogInRydWUifV0sICJoZWFkZXJzU2l6ZSI6IDUwMiwgImJvZHlTaXplIjogMH0sICJyZXNwb25zZSI6IHsic3RhdHVzIjogMjAwLCAic3RhdHVzVGV4dCI6ICIiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8yLjAiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiYWNjZXB0LXJhbmdlcyIsICJ2YWx1ZSI6ICJieXRlcyJ9LCB7Im5hbWUiOiAiYWx0LXN2YyIsICJ2YWx1ZSI6ICJoMz1cIjo0NDNcIjsgbWE9MjU5MjAwMCxoMy0yOT1cIjo0NDNcIjsgbWE9MjU5MjAwMCJ9LCB7Im5hbWUiOiAiY2FjaGUtY29udHJvbCIsICJ2YWx1ZSI6ICJwcml2YXRlLCBtYXgtYWdlPTM2MDAifSwgeyJuYW1lIjogImNvbnRlbnQtZW5jb2RpbmciLCAidmFsdWUiOiAiZ3ppcCJ9LCB7Im5hbWUiOiAiY29udGVudC1zZWN1cml0eS1wb2xpY3ktcmVwb3J0LW9ubHkiLCAidmFsdWUiOiAicmVxdWlyZS10cnVzdGVkLXR5cGVzLWZvciAnc2NyaXB0JzsgcmVwb3J0LXVyaSBodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9jc3AvYWRzLWFmcy11aSJ9LCB7Im5hbWUiOiAiY29udGVudC10eXBlIiwgInZhbHVlIjogInRleHQvamF2YXNjcmlwdDsgY2hhcnNldD1VVEYtOCJ9LCB7Im5hbWUiOiAiY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kiLCAidmFsdWUiOiAic2FtZS1vcmlnaW47IHJlcG9ydC10bz1cImFkcy1hZnMtdWlcIiJ9LCB7Im5hbWUiOiAiY3Jvc3Mtb3JpZ2luLXJlc291cmNlLXBvbGljeSIsICJ2YWx1ZSI6ICJjcm9zcy1vcmlnaW4ifSwgeyJuYW1lIjogImRhdGUiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo0MCBHTVQifSwgeyJuYW1lIjogImV0YWciLCAidmFsdWUiOiAiXCI4NDMzMjkwODMwNjMxMDIzNDYyXCIifSwgeyJuYW1lIjogImV4cGlyZXMiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo0MCBHTVQifSwgeyJuYW1lIjogImxpbmsiLCAidmFsdWUiOiAiPGh0dHBzOi8vc3luZGljYXRlZHNlYXJjaC5nb29nPjsgcmVsPVwicHJlY29ubmVjdFwiIn0sIHsibmFtZSI6ICJyZXBvcnQtdG8iLCAidmFsdWUiOiAie1wiZ3JvdXBcIjpcImFkcy1hZnMtdWlcIixcIm1heF9hZ2VcIjoyNTkyMDAwLFwiZW5kcG9pbnRzXCI6W3tcInVybFwiOlwiaHR0cHM6Ly9jc3Aud2l0aGdvb2dsZS5jb20vY3NwL3JlcG9ydC10by9hZHMtYWZzLXVpXCJ9XX0ifSwgeyJuYW1lIjogInNlcnZlciIsICJ2YWx1ZSI6ICJzZmZlIn0sIHsibmFtZSI6ICJ2YXJ5IiwgInZhbHVlIjogIkFjY2VwdC1FbmNvZGluZyJ9LCB7Im5hbWUiOiAieC1jb250ZW50LXR5cGUtb3B0aW9ucyIsICJ2YWx1ZSI6ICJub3NuaWZmIn0sIHsibmFtZSI6ICJ4LXhzcy1wcm90ZWN0aW9uIiwgInZhbHVlIjogIjAifV0sICJjb250ZW50IjogeyJzaXplIjogMTUzNjQ5LCAibWltZVR5cGUiOiAidGV4dC9qYXZhc2NyaXB0OyBjaGFyc2V0PVVURi04IiwgImNvbXByZXNzaW9uIjogOTc2MzcsICJ0ZXh0IjogImlmKCF3aW5kb3dbJ2dvb2dsZU5EVF8nXSl7d2luZG93Wydnb29nbGVORFRfJ109KG5ldyBEYXRlKCkpLmdldFRpbWUoKTt9KGZ1bmN0aW9uKCkge3dpbmRvdy5nb29nbGVBbHRMb2FkZXI9Mzt2YXIgc2ZmZURhdGFfPXtzZXJ2aWNlX2hvc3Q6XCJ3d3cuZ29vZ2xlLmNvbVwiLGhhc2g6XCIxNTE0OTQyOTk0NTUwMTA3MTU2NlwiLHBhY2thZ2VzOlwiZG9tYWluc1wiLG1vZHVsZTpcImFkc1wiLHZlcnNpb246XCIxXCIsbTp7Y2VpOlwiMTczMDE0MzcsMTczMDE0MzksMTczMDE0NDIsMTczMDE1NDIsMTczMDEyNjZcIixhaDp0cnVlLHVhdG06NTAwLGVjZmMyOnRydWUsbGxybToxMDAwLGxsZGw6XCJiUzV6WldGeWN5NWpiMjA9XCIsYWJmOntcIl9kaXNhYmxlQWRSZXF1ZXN0Rm9yTmV3Q29uc2VudFN0cmF0ZWd5XCI6dHJ1ZSxcIl9lbmFibGVOZXdDb25zZW50U3RyYXRlZ3lcIjp0cnVlLFwiX2ZpeEN0Y0xpbmtzT25Jb3NcIjp0cnVlLFwiX2dvb2dFbmFibGVRdXBcIjp0cnVlLFwiX3N3aXRjaEd3c1JlcXVlc3RUb1VzZUFkc2Vuc2VEb21haW5cIjp0cnVlLFwiX3VzZVNlcnZlclByb3ZpZGVkRG9tYWluXCI6dHJ1ZSxcIl93YWl0T25Db25zZW50Rm9yRmlyc3RQYXJ0eUNvb2tpZVwiOnRydWUsXCJlbmFibGVFbmhhbmNlZFRhcmdldGluZ1Jzb25jXCI6dHJ1ZSxcImVuYWJsZU5vbmJsb2NraW5nU2FzQ29va2llXCI6dHJ1ZX0sbWRwOjE4MDAwMDAsc3NkbDpcIllYQndjM0J2ZEM1amIyMHNZbXh2WjNOd2IzUXVZMjl0TEdKeUxtTnZiU3hqYnk1amIyMHNZMnh2ZFdSbWNtOXVkQzV1WlhRc1pYVXVZMjl0TEdodmNIUnZMbTl5Wnl4cGJpNXVaWFFzZEhKaGJuTnNZWFJsTG1kdmIyY3NkV3N1WTI5dExIVnpMbU52YlN4M1pXSXVZWEJ3XCIsY2RsOnRydWUsY2RoOlwic3luZGljYXRlZHNlYXJjaC5nb29nXCIsY2RlbTp7XCJhZnNfYWFfYmFzZWxpbmVcIjo1MDAsXCJhZnNfY2hhdGJvdFwiOjUwMCxcImFmc19jaGF0Ym90X2FhXCI6NTAwLFwiYWZzX2dwcF9hcGlcIjowfX19O3ZhciBuO2Z1bmN0aW9uIGFhKGEpe3ZhciBiPTA7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIGI8YS5sZW5ndGg/e2RvbmU6ITEsdmFsdWU6YVtiKytdfTp7ZG9uZTohMH19fXZhciBjYT10eXBlb2YgT2JqZWN0LmRlZmluZVByb3BlcnRpZXM9PVwiZnVuY3Rpb25cIj9PYmplY3QuZGVmaW5lUHJvcGVydHk6ZnVuY3Rpb24oYSxiLGMpe2lmKGE9PUFycmF5LnByb3RvdHlwZXx8YT09T2JqZWN0LnByb3RvdHlwZSlyZXR1cm4gYTthW2JdPWMudmFsdWU7cmV0dXJuIGF9O1xuZnVuY3Rpb24gZGEoYSl7YT1bXCJvYmplY3RcIj09dHlwZW9mIGdsb2JhbFRoaXMmJmdsb2JhbFRoaXMsYSxcIm9iamVjdFwiPT10eXBlb2Ygd2luZG93JiZ3aW5kb3csXCJvYmplY3RcIj09dHlwZW9mIHNlbGYmJnNlbGYsXCJvYmplY3RcIj09dHlwZW9mIGdsb2JhbCYmZ2xvYmFsXTtmb3IodmFyIGI9MDtiPGEubGVuZ3RoOysrYil7dmFyIGM9YVtiXTtpZihjJiZjLk1hdGg9PU1hdGgpcmV0dXJuIGN9dGhyb3cgRXJyb3IoXCJDYW5ub3QgZmluZCBnbG9iYWwgb2JqZWN0XCIpO312YXIgZWE9ZGEodGhpcyk7ZnVuY3Rpb24gcShhLGIpe2lmKGIpYTp7dmFyIGM9ZWE7YT1hLnNwbGl0KFwiLlwiKTtmb3IodmFyIGQ9MDtkPGEubGVuZ3RoLTE7ZCsrKXt2YXIgZT1hW2RdO2lmKCEoZSBpbiBjKSlicmVhayBhO2M9Y1tlXX1hPWFbYS5sZW5ndGgtMV07ZD1jW2FdO2I9YihkKTtiIT1kJiZiIT1udWxsJiZjYShjLGEse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpifSl9fVxucShcIlN5bWJvbFwiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZil7aWYodGhpcyBpbnN0YW5jZW9mIGIpdGhyb3cgbmV3IFR5cGVFcnJvcihcIlN5bWJvbCBpcyBub3QgYSBjb25zdHJ1Y3RvclwiKTtyZXR1cm4gbmV3IGMoZCsoZnx8XCJcIikrXCJfXCIrZSsrLGYpfWZ1bmN0aW9uIGMoZixnKXt0aGlzLnFlPWY7Y2EodGhpcyxcImRlc2NyaXB0aW9uXCIse2NvbmZpZ3VyYWJsZTohMCx3cml0YWJsZTohMCx2YWx1ZTpnfSl9aWYoYSlyZXR1cm4gYTtjLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLnFlfTt2YXIgZD1cImpzY29tcF9zeW1ib2xfXCIrKE1hdGgucmFuZG9tKCkqMUU5Pj4+MCkrXCJfXCIsZT0wO3JldHVybiBifSk7XG5xKFwiU3ltYm9sLml0ZXJhdG9yXCIsZnVuY3Rpb24oYSl7aWYoYSlyZXR1cm4gYTthPVN5bWJvbChcIlN5bWJvbC5pdGVyYXRvclwiKTtmb3IodmFyIGI9XCJBcnJheSBJbnQ4QXJyYXkgVWludDhBcnJheSBVaW50OENsYW1wZWRBcnJheSBJbnQxNkFycmF5IFVpbnQxNkFycmF5IEludDMyQXJyYXkgVWludDMyQXJyYXkgRmxvYXQzMkFycmF5IEZsb2F0NjRBcnJheVwiLnNwbGl0KFwiIFwiKSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWVhW2JbY11dO3R5cGVvZiBkPT09XCJmdW5jdGlvblwiJiZ0eXBlb2YgZC5wcm90b3R5cGVbYV0hPVwiZnVuY3Rpb25cIiYmY2EoZC5wcm90b3R5cGUsYSx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmZ1bmN0aW9uKCl7cmV0dXJuIGZhKGFhKHRoaXMpKX19KX1yZXR1cm4gYX0pO2Z1bmN0aW9uIGZhKGEpe2E9e25leHQ6YX07YVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXN9O3JldHVybiBhfVxuZnVuY3Rpb24gaGEoYSl7cmV0dXJuIGlhKGEsYSl9ZnVuY3Rpb24gaWEoYSxiKXthLnJhdz1iO09iamVjdC5mcmVlemUmJihPYmplY3QuZnJlZXplKGEpLE9iamVjdC5mcmVlemUoYikpO3JldHVybiBhfWZ1bmN0aW9uIHUoYSl7dmFyIGI9dHlwZW9mIFN5bWJvbCE9XCJ1bmRlZmluZWRcIiYmU3ltYm9sLml0ZXJhdG9yJiZhW1N5bWJvbC5pdGVyYXRvcl07aWYoYilyZXR1cm4gYi5jYWxsKGEpO2lmKHR5cGVvZiBhLmxlbmd0aD09XCJudW1iZXJcIilyZXR1cm57bmV4dDphYShhKX07dGhyb3cgRXJyb3IoU3RyaW5nKGEpK1wiIGlzIG5vdCBhbiBpdGVyYWJsZSBvciBBcnJheUxpa2VcIik7fWZ1bmN0aW9uIGphKGEpe2lmKCEoYSBpbnN0YW5jZW9mIEFycmF5KSl7YT11KGEpO2Zvcih2YXIgYixjPVtdOyEoYj1hLm5leHQoKSkuZG9uZTspYy5wdXNoKGIudmFsdWUpO2E9Y31yZXR1cm4gYX1cbnZhciBrYT10eXBlb2YgT2JqZWN0LmNyZWF0ZT09XCJmdW5jdGlvblwiP09iamVjdC5jcmVhdGU6ZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYigpe31iLnByb3RvdHlwZT1hO3JldHVybiBuZXcgYn0sbGE7aWYodHlwZW9mIE9iamVjdC5zZXRQcm90b3R5cGVPZj09XCJmdW5jdGlvblwiKWxhPU9iamVjdC5zZXRQcm90b3R5cGVPZjtlbHNle3ZhciBtYTthOnt2YXIgbmE9e2E6ITB9LG9hPXt9O3RyeXtvYS5fX3Byb3RvX189bmE7bWE9b2EuYTticmVhayBhfWNhdGNoKGEpe31tYT0hMX1sYT1tYT9mdW5jdGlvbihhLGIpe2EuX19wcm90b19fPWI7aWYoYS5fX3Byb3RvX18hPT1iKXRocm93IG5ldyBUeXBlRXJyb3IoYStcIiBpcyBub3QgZXh0ZW5zaWJsZVwiKTtyZXR1cm4gYX06bnVsbH12YXIgcGE9bGE7XG5mdW5jdGlvbiBxYShhLGIpe2EucHJvdG90eXBlPWthKGIucHJvdG90eXBlKTthLnByb3RvdHlwZS5jb25zdHJ1Y3Rvcj1hO2lmKHBhKXBhKGEsYik7ZWxzZSBmb3IodmFyIGMgaW4gYilpZihjIT1cInByb3RvdHlwZVwiKWlmKE9iamVjdC5kZWZpbmVQcm9wZXJ0aWVzKXt2YXIgZD1PYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKGIsYyk7ZCYmT2JqZWN0LmRlZmluZVByb3BlcnR5KGEsYyxkKX1lbHNlIGFbY109YltjXTthLnBnPWIucHJvdG90eXBlfWZ1bmN0aW9uIHJhKCl7Zm9yKHZhciBhPU51bWJlcih0aGlzKSxiPVtdLGM9YTtjPGFyZ3VtZW50cy5sZW5ndGg7YysrKWJbYy1hXT1hcmd1bWVudHNbY107cmV0dXJuIGJ9XG5xKFwiUHJvbWlzZVwiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZyl7dGhpcy5CPTA7dGhpcy5XYT12b2lkIDA7dGhpcy5BYT1bXTt0aGlzLlFkPSExO3ZhciBoPXRoaXMucWMoKTt0cnl7ZyhoLnJlc29sdmUsaC5yZWplY3QpfWNhdGNoKGspe2gucmVqZWN0KGspfX1mdW5jdGlvbiBjKCl7dGhpcy5ZPW51bGx9ZnVuY3Rpb24gZChnKXtyZXR1cm4gZyBpbnN0YW5jZW9mIGI/ZzpuZXcgYihmdW5jdGlvbihoKXtoKGcpfSl9aWYoYSlyZXR1cm4gYTtjLnByb3RvdHlwZS54ZD1mdW5jdGlvbihnKXtpZih0aGlzLlk9PW51bGwpe3RoaXMuWT1bXTt2YXIgaD10aGlzO3RoaXMueWQoZnVuY3Rpb24oKXtoLmhmKCl9KX10aGlzLlkucHVzaChnKX07dmFyIGU9ZWEuc2V0VGltZW91dDtjLnByb3RvdHlwZS55ZD1mdW5jdGlvbihnKXtlKGcsMCl9O2MucHJvdG90eXBlLmhmPWZ1bmN0aW9uKCl7Zm9yKDt0aGlzLlkmJnRoaXMuWS5sZW5ndGg7KXt2YXIgZz10aGlzLlk7dGhpcy5ZPVtdO2Zvcih2YXIgaD1cbjA7aDxnLmxlbmd0aDsrK2gpe3ZhciBrPWdbaF07Z1toXT1udWxsO3RyeXtrKCl9Y2F0Y2gobCl7dGhpcy53ZShsKX19fXRoaXMuWT1udWxsfTtjLnByb3RvdHlwZS53ZT1mdW5jdGlvbihnKXt0aGlzLnlkKGZ1bmN0aW9uKCl7dGhyb3cgZzt9KX07Yi5wcm90b3R5cGUucWM9ZnVuY3Rpb24oKXtmdW5jdGlvbiBnKGwpe3JldHVybiBmdW5jdGlvbihtKXtrfHwoaz0hMCxsLmNhbGwoaCxtKSl9fXZhciBoPXRoaXMsaz0hMTtyZXR1cm57cmVzb2x2ZTpnKHRoaXMuVmYpLHJlamVjdDpnKHRoaXMuYmQpfX07Yi5wcm90b3R5cGUuVmY9ZnVuY3Rpb24oZyl7aWYoZz09PXRoaXMpdGhpcy5iZChuZXcgVHlwZUVycm9yKFwiQSBQcm9taXNlIGNhbm5vdCByZXNvbHZlIHRvIGl0c2VsZlwiKSk7ZWxzZSBpZihnIGluc3RhbmNlb2YgYil0aGlzLmZnKGcpO2Vsc2V7YTpzd2l0Y2godHlwZW9mIGcpe2Nhc2UgXCJvYmplY3RcIjp2YXIgaD1nIT1udWxsO2JyZWFrIGE7Y2FzZSBcImZ1bmN0aW9uXCI6aD0hMDticmVhayBhO1xuZGVmYXVsdDpoPSExfWg/dGhpcy5VZihnKTp0aGlzLk5kKGcpfX07Yi5wcm90b3R5cGUuVWY9ZnVuY3Rpb24oZyl7dmFyIGg9dm9pZCAwO3RyeXtoPWcudGhlbn1jYXRjaChrKXt0aGlzLmJkKGspO3JldHVybn10eXBlb2YgaD09XCJmdW5jdGlvblwiP3RoaXMuZ2coaCxnKTp0aGlzLk5kKGcpfTtiLnByb3RvdHlwZS5iZD1mdW5jdGlvbihnKXt0aGlzLmVlKDIsZyl9O2IucHJvdG90eXBlLk5kPWZ1bmN0aW9uKGcpe3RoaXMuZWUoMSxnKX07Yi5wcm90b3R5cGUuZWU9ZnVuY3Rpb24oZyxoKXtpZih0aGlzLkIhPTApdGhyb3cgRXJyb3IoXCJDYW5ub3Qgc2V0dGxlKFwiK2crXCIsIFwiK2grXCIpOiBQcm9taXNlIGFscmVhZHkgc2V0dGxlZCBpbiBzdGF0ZVwiK3RoaXMuQik7dGhpcy5CPWc7dGhpcy5XYT1oO3RoaXMuQj09PTImJnRoaXMuZWcoKTt0aGlzLmpmKCl9O2IucHJvdG90eXBlLmVnPWZ1bmN0aW9uKCl7dmFyIGc9dGhpcztlKGZ1bmN0aW9uKCl7aWYoZy5MZigpKXt2YXIgaD1lYS5jb25zb2xlO1xudHlwZW9mIGghPT1cInVuZGVmaW5lZFwiJiZoLmVycm9yKGcuV2EpfX0sMSl9O2IucHJvdG90eXBlLkxmPWZ1bmN0aW9uKCl7aWYodGhpcy5RZClyZXR1cm4hMTt2YXIgZz1lYS5DdXN0b21FdmVudCxoPWVhLkV2ZW50LGs9ZWEuZGlzcGF0Y2hFdmVudDtpZih0eXBlb2Ygaz09PVwidW5kZWZpbmVkXCIpcmV0dXJuITA7dHlwZW9mIGc9PT1cImZ1bmN0aW9uXCI/Zz1uZXcgZyhcInVuaGFuZGxlZHJlamVjdGlvblwiLHtjYW5jZWxhYmxlOiEwfSk6dHlwZW9mIGg9PT1cImZ1bmN0aW9uXCI/Zz1uZXcgaChcInVuaGFuZGxlZHJlamVjdGlvblwiLHtjYW5jZWxhYmxlOiEwfSk6KGc9ZWEuZG9jdW1lbnQuY3JlYXRlRXZlbnQoXCJDdXN0b21FdmVudFwiKSxnLmluaXRDdXN0b21FdmVudChcInVuaGFuZGxlZHJlamVjdGlvblwiLCExLCEwLGcpKTtnLnByb21pc2U9dGhpcztnLnJlYXNvbj10aGlzLldhO3JldHVybiBrKGcpfTtiLnByb3RvdHlwZS5qZj1mdW5jdGlvbigpe2lmKHRoaXMuQWEhPW51bGwpe2Zvcih2YXIgZz1cbjA7Zzx0aGlzLkFhLmxlbmd0aDsrK2cpZi54ZCh0aGlzLkFhW2ddKTt0aGlzLkFhPW51bGx9fTt2YXIgZj1uZXcgYztiLnByb3RvdHlwZS5mZz1mdW5jdGlvbihnKXt2YXIgaD10aGlzLnFjKCk7Zy5pYihoLnJlc29sdmUsaC5yZWplY3QpfTtiLnByb3RvdHlwZS5nZz1mdW5jdGlvbihnLGgpe3ZhciBrPXRoaXMucWMoKTt0cnl7Zy5jYWxsKGgsay5yZXNvbHZlLGsucmVqZWN0KX1jYXRjaChsKXtrLnJlamVjdChsKX19O2IucHJvdG90eXBlLnRoZW49ZnVuY3Rpb24oZyxoKXtmdW5jdGlvbiBrKHIsdCl7cmV0dXJuIHR5cGVvZiByPT1cImZ1bmN0aW9uXCI/ZnVuY3Rpb24odil7dHJ5e2wocih2KSl9Y2F0Y2godyl7bSh3KX19OnR9dmFyIGwsbSxwPW5ldyBiKGZ1bmN0aW9uKHIsdCl7bD1yO209dH0pO3RoaXMuaWIoayhnLGwpLGsoaCxtKSk7cmV0dXJuIHB9O2IucHJvdG90eXBlLmNhdGNoPWZ1bmN0aW9uKGcpe3JldHVybiB0aGlzLnRoZW4odm9pZCAwLGcpfTtiLnByb3RvdHlwZS5pYj1mdW5jdGlvbihnLFxuaCl7ZnVuY3Rpb24gaygpe3N3aXRjaChsLkIpe2Nhc2UgMTpnKGwuV2EpO2JyZWFrO2Nhc2UgMjpoKGwuV2EpO2JyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoXCJVbmV4cGVjdGVkIHN0YXRlOiBcIitsLkIpO319dmFyIGw9dGhpczt0aGlzLkFhPT1udWxsP2YueGQoayk6dGhpcy5BYS5wdXNoKGspO3RoaXMuUWQ9ITB9O2IucmVzb2x2ZT1kO2IucmVqZWN0PWZ1bmN0aW9uKGcpe3JldHVybiBuZXcgYihmdW5jdGlvbihoLGspe2soZyl9KX07Yi5yYWNlPWZ1bmN0aW9uKGcpe3JldHVybiBuZXcgYihmdW5jdGlvbihoLGspe2Zvcih2YXIgbD11KGcpLG09bC5uZXh0KCk7IW0uZG9uZTttPWwubmV4dCgpKWQobS52YWx1ZSkuaWIoaCxrKX0pfTtiLmFsbD1mdW5jdGlvbihnKXt2YXIgaD11KGcpLGs9aC5uZXh0KCk7cmV0dXJuIGsuZG9uZT9kKFtdKTpuZXcgYihmdW5jdGlvbihsLG0pe2Z1bmN0aW9uIHAodil7cmV0dXJuIGZ1bmN0aW9uKHcpe3Jbdl09dzt0LS07dD09MCYmbChyKX19dmFyIHI9XG5bXSx0PTA7ZG8gci5wdXNoKHZvaWQgMCksdCsrLGQoay52YWx1ZSkuaWIocChyLmxlbmd0aC0xKSxtKSxrPWgubmV4dCgpO3doaWxlKCFrLmRvbmUpfSl9O3JldHVybiBifSk7ZnVuY3Rpb24gc2EoYSxiKXtyZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYil9dmFyIHRhPXR5cGVvZiBPYmplY3QuYXNzaWduPT1cImZ1bmN0aW9uXCI/T2JqZWN0LmFzc2lnbjpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz0xO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspe3ZhciBkPWFyZ3VtZW50c1tjXTtpZihkKWZvcih2YXIgZSBpbiBkKXNhKGQsZSkmJihhW2VdPWRbZV0pfXJldHVybiBhfTtxKFwiT2JqZWN0LmFzc2lnblwiLGZ1bmN0aW9uKGEpe3JldHVybiBhfHx0YX0pO3EoXCJTeW1ib2wuZGlzcG9zZVwiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6U3ltYm9sKFwiU3ltYm9sLmRpc3Bvc2VcIil9KTtxKFwiZ2xvYmFsVGhpc1wiLGZ1bmN0aW9uKGEpe3JldHVybiBhfHxlYX0pO1xucShcIldlYWtNYXBcIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKGspe3RoaXMuTWE9KGgrPU1hdGgucmFuZG9tKCkrMSkudG9TdHJpbmcoKTtpZihrKXtrPXUoayk7Zm9yKHZhciBsOyEobD1rLm5leHQoKSkuZG9uZTspbD1sLnZhbHVlLHRoaXMuc2V0KGxbMF0sbFsxXSl9fWZ1bmN0aW9uIGMoKXt9ZnVuY3Rpb24gZChrKXt2YXIgbD10eXBlb2YgaztyZXR1cm4gbD09PVwib2JqZWN0XCImJmshPT1udWxsfHxsPT09XCJmdW5jdGlvblwifWZ1bmN0aW9uIGUoayl7aWYoIXNhKGssZykpe3ZhciBsPW5ldyBjO2NhKGssZyx7dmFsdWU6bH0pfX1mdW5jdGlvbiBmKGspe3ZhciBsPU9iamVjdFtrXTtsJiYoT2JqZWN0W2tdPWZ1bmN0aW9uKG0pe2lmKG0gaW5zdGFuY2VvZiBjKXJldHVybiBtO09iamVjdC5pc0V4dGVuc2libGUobSkmJmUobSk7cmV0dXJuIGwobSl9KX1pZihmdW5jdGlvbigpe2lmKCFhfHwhT2JqZWN0LnNlYWwpcmV0dXJuITE7dHJ5e3ZhciBrPU9iamVjdC5zZWFsKHt9KSxsPU9iamVjdC5zZWFsKHt9KSxcbm09bmV3IGEoW1trLDJdLFtsLDNdXSk7aWYobS5nZXQoaykhPTJ8fG0uZ2V0KGwpIT0zKXJldHVybiExO20uZGVsZXRlKGspO20uc2V0KGwsNCk7cmV0dXJuIW0uaGFzKGspJiZtLmdldChsKT09NH1jYXRjaChwKXtyZXR1cm4hMX19KCkpcmV0dXJuIGE7dmFyIGc9XCIkanNjb21wX2hpZGRlbl9cIitNYXRoLnJhbmRvbSgpO2YoXCJmcmVlemVcIik7ZihcInByZXZlbnRFeHRlbnNpb25zXCIpO2YoXCJzZWFsXCIpO3ZhciBoPTA7Yi5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGssbCl7aWYoIWQoaykpdGhyb3cgRXJyb3IoXCJJbnZhbGlkIFdlYWtNYXAga2V5XCIpO2Uoayk7aWYoIXNhKGssZykpdGhyb3cgRXJyb3IoXCJXZWFrTWFwIGtleSBmYWlsOiBcIitrKTtrW2ddW3RoaXMuTWFdPWw7cmV0dXJuIHRoaXN9O2IucHJvdG90eXBlLmdldD1mdW5jdGlvbihrKXtyZXR1cm4gZChrKSYmc2EoayxnKT9rW2ddW3RoaXMuTWFdOnZvaWQgMH07Yi5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGspe3JldHVybiBkKGspJiZcbnNhKGssZykmJnNhKGtbZ10sdGhpcy5NYSl9O2IucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbihrKXtyZXR1cm4gZChrKSYmc2EoayxnKSYmc2Eoa1tnXSx0aGlzLk1hKT9kZWxldGUga1tnXVt0aGlzLk1hXTohMX07cmV0dXJuIGJ9KTtcbnEoXCJNYXBcIixmdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7dmFyIGg9e307cmV0dXJuIGguVz1oLm5leHQ9aC5oZWFkPWh9ZnVuY3Rpb24gYyhoLGspe3ZhciBsPWhbMV07cmV0dXJuIGZhKGZ1bmN0aW9uKCl7aWYobCl7Zm9yKDtsLmhlYWQhPWhbMV07KWw9bC5XO2Zvcig7bC5uZXh0IT1sLmhlYWQ7KXJldHVybiBsPWwubmV4dCx7ZG9uZTohMSx2YWx1ZTprKGwpfTtsPW51bGx9cmV0dXJue2RvbmU6ITAsdmFsdWU6dm9pZCAwfX0pfWZ1bmN0aW9uIGQoaCxrKXt2YXIgbD1rJiZ0eXBlb2YgaztsPT1cIm9iamVjdFwifHxsPT1cImZ1bmN0aW9uXCI/Zi5oYXMoayk/bD1mLmdldChrKToobD1cIlwiKyArK2csZi5zZXQoayxsKSk6bD1cInBfXCIrazt2YXIgbT1oWzBdW2xdO2lmKG0mJnNhKGhbMF0sbCkpZm9yKGg9MDtoPG0ubGVuZ3RoO2grKyl7dmFyIHA9bVtoXTtpZihrIT09ayYmcC5rZXkhPT1wLmtleXx8az09PXAua2V5KXJldHVybntpZDpsLGxpc3Q6bSxpbmRleDpoLEk6cH19cmV0dXJue2lkOmwsXG5saXN0Om0saW5kZXg6LTEsSTp2b2lkIDB9fWZ1bmN0aW9uIGUoaCl7dGhpc1swXT17fTt0aGlzWzFdPWIoKTt0aGlzLnNpemU9MDtpZihoKXtoPXUoaCk7Zm9yKHZhciBrOyEoaz1oLm5leHQoKSkuZG9uZTspaz1rLnZhbHVlLHRoaXMuc2V0KGtbMF0sa1sxXSl9fWlmKGZ1bmN0aW9uKCl7aWYoIWF8fHR5cGVvZiBhIT1cImZ1bmN0aW9uXCJ8fCFhLnByb3RvdHlwZS5lbnRyaWVzfHx0eXBlb2YgT2JqZWN0LnNlYWwhPVwiZnVuY3Rpb25cIilyZXR1cm4hMTt0cnl7dmFyIGg9T2JqZWN0LnNlYWwoe3g6NH0pLGs9bmV3IGEodShbW2gsXCJzXCJdXSkpO2lmKGsuZ2V0KGgpIT1cInNcInx8ay5zaXplIT0xfHxrLmdldCh7eDo0fSl8fGsuc2V0KHt4OjR9LFwidFwiKSE9a3x8ay5zaXplIT0yKXJldHVybiExO3ZhciBsPWsuZW50cmllcygpLG09bC5uZXh0KCk7aWYobS5kb25lfHxtLnZhbHVlWzBdIT1ofHxtLnZhbHVlWzFdIT1cInNcIilyZXR1cm4hMTttPWwubmV4dCgpO3JldHVybiBtLmRvbmV8fG0udmFsdWVbMF0ueCE9XG40fHxtLnZhbHVlWzFdIT1cInRcInx8IWwubmV4dCgpLmRvbmU/ITE6ITB9Y2F0Y2gocCl7cmV0dXJuITF9fSgpKXJldHVybiBhO3ZhciBmPW5ldyBXZWFrTWFwO2UucHJvdG90eXBlLnNldD1mdW5jdGlvbihoLGspe2g9aD09PTA/MDpoO3ZhciBsPWQodGhpcyxoKTtsLmxpc3R8fChsLmxpc3Q9dGhpc1swXVtsLmlkXT1bXSk7bC5JP2wuSS52YWx1ZT1rOihsLkk9e25leHQ6dGhpc1sxXSxXOnRoaXNbMV0uVyxoZWFkOnRoaXNbMV0sa2V5OmgsdmFsdWU6a30sbC5saXN0LnB1c2gobC5JKSx0aGlzWzFdLlcubmV4dD1sLkksdGhpc1sxXS5XPWwuSSx0aGlzLnNpemUrKyk7cmV0dXJuIHRoaXN9O2UucHJvdG90eXBlLmRlbGV0ZT1mdW5jdGlvbihoKXtoPWQodGhpcyxoKTtyZXR1cm4gaC5JJiZoLmxpc3Q/KGgubGlzdC5zcGxpY2UoaC5pbmRleCwxKSxoLmxpc3QubGVuZ3RofHxkZWxldGUgdGhpc1swXVtoLmlkXSxoLkkuVy5uZXh0PWguSS5uZXh0LGguSS5uZXh0Llc9aC5JLlcsaC5JLmhlYWQ9XG5udWxsLHRoaXMuc2l6ZS0tLCEwKTohMX07ZS5wcm90b3R5cGUuY2xlYXI9ZnVuY3Rpb24oKXt0aGlzWzBdPXt9O3RoaXNbMV09dGhpc1sxXS5XPWIoKTt0aGlzLnNpemU9MH07ZS5wcm90b3R5cGUuaGFzPWZ1bmN0aW9uKGgpe3JldHVybiEhZCh0aGlzLGgpLkl9O2UucHJvdG90eXBlLmdldD1mdW5jdGlvbihoKXtyZXR1cm4oaD1kKHRoaXMsaCkuSSkmJmgudmFsdWV9O2UucHJvdG90eXBlLmVudHJpZXM9ZnVuY3Rpb24oKXtyZXR1cm4gYyh0aGlzLGZ1bmN0aW9uKGgpe3JldHVybltoLmtleSxoLnZhbHVlXX0pfTtlLnByb3RvdHlwZS5rZXlzPWZ1bmN0aW9uKCl7cmV0dXJuIGModGhpcyxmdW5jdGlvbihoKXtyZXR1cm4gaC5rZXl9KX07ZS5wcm90b3R5cGUudmFsdWVzPWZ1bmN0aW9uKCl7cmV0dXJuIGModGhpcyxmdW5jdGlvbihoKXtyZXR1cm4gaC52YWx1ZX0pfTtlLnByb3RvdHlwZS5mb3JFYWNoPWZ1bmN0aW9uKGgsayl7Zm9yKHZhciBsPXRoaXMuZW50cmllcygpLG07IShtPWwubmV4dCgpKS5kb25lOyltPVxubS52YWx1ZSxoLmNhbGwoayxtWzFdLG1bMF0sdGhpcyl9O2UucHJvdG90eXBlW1N5bWJvbC5pdGVyYXRvcl09ZS5wcm90b3R5cGUuZW50cmllczt2YXIgZz0wO3JldHVybiBlfSk7ZnVuY3Rpb24gdWEoYSxiKXthIGluc3RhbmNlb2YgU3RyaW5nJiYoYSs9XCJcIik7dmFyIGM9MCxkPSExLGU9e25leHQ6ZnVuY3Rpb24oKXtpZighZCYmYzxhLmxlbmd0aCl7dmFyIGY9YysrO3JldHVybnt2YWx1ZTpiKGYsYVtmXSksZG9uZTohMX19ZD0hMDtyZXR1cm57ZG9uZTohMCx2YWx1ZTp2b2lkIDB9fX07ZVtTeW1ib2wuaXRlcmF0b3JdPWZ1bmN0aW9uKCl7cmV0dXJuIGV9O3JldHVybiBlfXEoXCJBcnJheS5wcm90b3R5cGUuZW50cmllc1wiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oKXtyZXR1cm4gdWEodGhpcyxmdW5jdGlvbihiLGMpe3JldHVybltiLGNdfSl9fSk7XG5xKFwiQXJyYXkucHJvdG90eXBlLmtleXNcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKCl7cmV0dXJuIHVhKHRoaXMsZnVuY3Rpb24oYil7cmV0dXJuIGJ9KX19KTtmdW5jdGlvbiB4YShhLGIsYyl7aWYoYT09bnVsbCl0aHJvdyBuZXcgVHlwZUVycm9yKFwiVGhlICd0aGlzJyB2YWx1ZSBmb3IgU3RyaW5nLnByb3RvdHlwZS5cIitjK1wiIG11c3Qgbm90IGJlIG51bGwgb3IgdW5kZWZpbmVkXCIpO2lmKGIgaW5zdGFuY2VvZiBSZWdFeHApdGhyb3cgbmV3IFR5cGVFcnJvcihcIkZpcnN0IGFyZ3VtZW50IHRvIFN0cmluZy5wcm90b3R5cGUuXCIrYytcIiBtdXN0IG5vdCBiZSBhIHJlZ3VsYXIgZXhwcmVzc2lvblwiKTtyZXR1cm4gYStcIlwifVxucShcIlN0cmluZy5wcm90b3R5cGUuc3RhcnRzV2l0aFwiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXt2YXIgZD14YSh0aGlzLGIsXCJzdGFydHNXaXRoXCIpO2IrPVwiXCI7dmFyIGU9ZC5sZW5ndGgsZj1iLmxlbmd0aDtjPU1hdGgubWF4KDAsTWF0aC5taW4oY3wwLGQubGVuZ3RoKSk7Zm9yKHZhciBnPTA7ZzxmJiZjPGU7KWlmKGRbYysrXSE9YltnKytdKXJldHVybiExO3JldHVybiBnPj1mfX0pO3EoXCJTdHJpbmcucHJvdG90eXBlLmVuZHNXaXRoXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3ZhciBkPXhhKHRoaXMsYixcImVuZHNXaXRoXCIpO2IrPVwiXCI7Yz09PXZvaWQgMCYmKGM9ZC5sZW5ndGgpO2M9TWF0aC5tYXgoMCxNYXRoLm1pbihjfDAsZC5sZW5ndGgpKTtmb3IodmFyIGU9Yi5sZW5ndGg7ZT4wJiZjPjA7KWlmKGRbLS1jXSE9YlstLWVdKXJldHVybiExO3JldHVybiBlPD0wfX0pO1xucShcIkFycmF5LnByb3RvdHlwZS5maW5kXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe2E6e3ZhciBkPXRoaXM7ZCBpbnN0YW5jZW9mIFN0cmluZyYmKGQ9U3RyaW5nKGQpKTtmb3IodmFyIGU9ZC5sZW5ndGgsZj0wO2Y8ZTtmKyspe3ZhciBnPWRbZl07aWYoYi5jYWxsKGMsZyxmLGQpKXtiPWc7YnJlYWsgYX19Yj12b2lkIDB9cmV0dXJuIGJ9fSk7cShcIk9iamVjdC5lbnRyaWVzXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGIpc2EoYixkKSYmYy5wdXNoKFtkLGJbZF1dKTtyZXR1cm4gY319KTtxKFwiT2JqZWN0LnZhbHVlc1wiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7dmFyIGM9W10sZDtmb3IoZCBpbiBiKXNhKGIsZCkmJmMucHVzaChiW2RdKTtyZXR1cm4gY319KTtcbnEoXCJPYmplY3QuaXNcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7cmV0dXJuIGI9PT1jP2IhPT0wfHwxL2I9PT0xL2M6YiE9PWImJmMhPT1jfX0pO3EoXCJBcnJheS5wcm90b3R5cGUuaW5jbHVkZXNcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7dmFyIGQ9dGhpcztkIGluc3RhbmNlb2YgU3RyaW5nJiYoZD1TdHJpbmcoZCkpO3ZhciBlPWQubGVuZ3RoO2M9Y3x8MDtmb3IoYzwwJiYoYz1NYXRoLm1heChjK2UsMCkpO2M8ZTtjKyspe3ZhciBmPWRbY107aWYoZj09PWJ8fE9iamVjdC5pcyhmLGIpKXJldHVybiEwfXJldHVybiExfX0pO3EoXCJTdHJpbmcucHJvdG90eXBlLmluY2x1ZGVzXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3JldHVybiB4YSh0aGlzLGIsXCJpbmNsdWRlc1wiKS5pbmRleE9mKGIsY3x8MCkhPT0tMX19KTtcbnEoXCJNYXRoLmltdWxcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7Yj1OdW1iZXIoYik7Yz1OdW1iZXIoYyk7dmFyIGQ9YiY2NTUzNSxlPWMmNjU1MzU7cmV0dXJuIGQqZSsoKGI+Pj4xNiY2NTUzNSkqZStkKihjPj4+MTYmNjU1MzUpPDwxNj4+PjApfDB9fSk7cShcIk51bWJlci5pc05hTlwiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYil7cmV0dXJuIHR5cGVvZiBiPT09XCJudW1iZXJcIiYmaXNOYU4oYil9fSk7cShcIkFycmF5LnByb3RvdHlwZS52YWx1ZXNcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKCl7cmV0dXJuIHVhKHRoaXMsZnVuY3Rpb24oYixjKXtyZXR1cm4gY30pfX0pOy8qXG5cbiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLlxuIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4qL1xudmFyIHlhPXRoaXN8fHNlbGY7ZnVuY3Rpb24gemEoYSl7dmFyIGI9dHlwZW9mIGE7Yj1iIT1cIm9iamVjdFwiP2I6YT9BcnJheS5pc0FycmF5KGEpP1wiYXJyYXlcIjpiOlwibnVsbFwiO3JldHVybiBiPT1cImFycmF5XCJ8fGI9PVwib2JqZWN0XCImJnR5cGVvZiBhLmxlbmd0aD09XCJudW1iZXJcIn1mdW5jdGlvbiBBYShhKXt2YXIgYj10eXBlb2YgYTtyZXR1cm4gYj09XCJvYmplY3RcIiYmYSE9bnVsbHx8Yj09XCJmdW5jdGlvblwifWZ1bmN0aW9uIEJhKGEsYil7ZnVuY3Rpb24gYygpe31jLnByb3RvdHlwZT1iLnByb3RvdHlwZTthLnBnPWIucHJvdG90eXBlO2EucHJvdG90eXBlPW5ldyBjO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7YS5WZz1mdW5jdGlvbihkLGUsZil7Zm9yKHZhciBnPUFycmF5KGFyZ3VtZW50cy5sZW5ndGgtMiksaD0yO2g8YXJndW1lbnRzLmxlbmd0aDtoKyspZ1toLTJdPWFyZ3VtZW50c1toXTtyZXR1cm4gYi5wcm90b3R5cGVbZV0uYXBwbHkoZCxnKX19O3ZhciBDYT1udWxsLERhPW51bGwsRWE9bnVsbCxGYT1udWxsLEdhPW51bGw7ZnVuY3Rpb24gSGEoKXt2YXIgYT17fTtyZXR1cm4gd2luZG93LmFkX2pzb24/d2luZG93LmFkX2pzb246dHlwZW9mIGFkX2pzb24hPVwidW5kZWZpbmVkXCImJmFkX2pzb24/YWRfanNvbjphfWZ1bmN0aW9uIElhKGEpe0NhfHwoQ2E9SGEoKS5nZHx8bnVsbCk7cmV0dXJuIENhJiZDYVthXXx8e319ZnVuY3Rpb24gSmEoKXt0aGlzLmRhdGE9SWEoXCJmZlwiKX1mdW5jdGlvbiBLYSgpe3ZhciBhPURhO2F8fChhPW5ldyBKYSxIYSgpLmdkJiYoRGE9YSkpO3JldHVybiBhfWZ1bmN0aW9uIExhKCl7cmV0dXJuISFLYSgpLmRhdGEub2ZtfWZ1bmN0aW9uIE1hKCl7dGhpcy5kYXRhPUlhKFwiY2RcIil9ZnVuY3Rpb24gTmEoKXt2YXIgYT1FYTthfHwoYT1uZXcgTWEsSGEoKS5nZCYmKEVhPWEpKTtyZXR1cm4gYX1mdW5jdGlvbiBPYShhKXtyZXR1cm4gYS5kYXRhLnBpZHx8XCJcIn1NYS5wcm90b3R5cGUuYmE9ZnVuY3Rpb24oKXtyZXR1cm4hIXRoaXMuZGF0YS5yfTtcbmZ1bmN0aW9uIFBhKCl7dGhpcy5kYXRhPUlhKFwicGNcIil9ZnVuY3Rpb24gUmEoKXt2YXIgYT1GYTthfHwoYT1uZXcgUGEsSGEoKS5nZCYmKEZhPWEpKTtyZXR1cm4gYX1mdW5jdGlvbiBTYShhKXtyZXR1cm4hIWEuZGF0YS5jZ25hfWZ1bmN0aW9uIFRhKCl7dGhpcy5kYXRhPUlhKFwiZGNcIil9ZnVuY3Rpb24gVWEoKXt2YXIgYT1HYTthfHwoYT1uZXcgVGEsSGEoKS5nZCYmKEdhPWEpKTtyZXR1cm4gYX07dmFyIFZhPVN0cmluZy5wcm90b3R5cGUudHJpbT9mdW5jdGlvbihhKXtyZXR1cm4gYS50cmltKCl9OmZ1bmN0aW9uKGEpe3JldHVybi9eW1xcc1xceGEwXSooW1xcc1xcU10qPylbXFxzXFx4YTBdKiQvLmV4ZWMoYSlbMV19Oy8qXG5cbiBDb3B5cmlnaHQgR29vZ2xlIExMQ1xuIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4qL1xudmFyIFdhPWdsb2JhbFRoaXMudHJ1c3RlZFR5cGVzLFhhO2Z1bmN0aW9uIFlhKCl7dmFyIGE9bnVsbDtpZighV2EpcmV0dXJuIGE7dHJ5e3ZhciBiPWZ1bmN0aW9uKGMpe3JldHVybiBjfTthPVdhLmNyZWF0ZVBvbGljeShcImdvb2cjaHRtbFwiLHtjcmVhdGVIVE1MOmIsY3JlYXRlU2NyaXB0OmIsY3JlYXRlU2NyaXB0VVJMOmJ9KX1jYXRjaChjKXt9cmV0dXJuIGF9ZnVuY3Rpb24gWmEoKXtYYT09PXZvaWQgMCYmKFhhPVlhKCkpO3JldHVybiBYYX07ZnVuY3Rpb24gJGEoYSl7dGhpcy5aZD1hfSRhLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLlpkK1wiXCJ9O2Z1bmN0aW9uIGNiKGEpe3ZhciBiPVphKCk7cmV0dXJuIG5ldyAkYShiP2IuY3JlYXRlU2NyaXB0VVJMKGEpOmEpfWZ1bmN0aW9uIGRiKGEpe2lmKGEgaW5zdGFuY2VvZiAkYSlyZXR1cm4gYS5aZDt0aHJvdyBFcnJvcihcIlwiKTt9O2Z1bmN0aW9uIGViKGEpe3RoaXMuYWU9YX1lYi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5hZX07ZnVuY3Rpb24gZmIoYSl7aWYoYSBpbnN0YW5jZW9mIGViKXJldHVybiBhLmFlO3Rocm93IEVycm9yKFwiXCIpO307dmFyIGdiPS9eXFxzKig/IWphdmFzY3JpcHQ6KSg/OltcXHcrLi1dKzp8W146Lz8jXSooPzpbLz8jXXwkKSkvaTtmdW5jdGlvbiBoYihhKXthPWEgaW5zdGFuY2VvZiBlYj9mYihhKTpnYi50ZXN0KGEpP2E6dm9pZCAwO3JldHVybiBhfTtmdW5jdGlvbiBpYihhKXt0aGlzLllkPWF9aWIucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuWWQrXCJcIn07ZnVuY3Rpb24gamIoYSl7dmFyIGI9WmEoKTtyZXR1cm4gbmV3IGliKGI/Yi5jcmVhdGVIVE1MKGEpOmEpfWZ1bmN0aW9uIGtiKGEpe2lmKGEgaW5zdGFuY2VvZiBpYilyZXR1cm4gYS5ZZDt0aHJvdyBFcnJvcihcIlwiKTt9O3ZhciBsYj1cImFsdGVybmF0ZSBhdXRob3IgYm9va21hcmsgY2Fub25pY2FsIGNpdGUgaGVscCBpY29uIGxpY2Vuc2UgbW9kdWxlcHJlbG9hZCBuZXh0IHByZWZldGNoIGRucy1wcmVmZXRjaCBwcmVyZW5kZXIgcHJlY29ubmVjdCBwcmVsb2FkIHByZXYgc2VhcmNoIHN1YnJlc291cmNlXCIuc3BsaXQoXCIgXCIpO2Z1bmN0aW9uIG1iKGEsYil7YS5zcmM9ZGIoYik7dmFyIGM7Yj1hLm93bmVyRG9jdW1lbnQmJmEub3duZXJEb2N1bWVudC5kZWZhdWx0Vmlld3x8d2luZG93O2I9Yj09PXZvaWQgMD9kb2N1bWVudDpiO3ZhciBkO2I9KGQ9KGM9XCJkb2N1bWVudFwiaW4gYj9iLmRvY3VtZW50OmIpLnF1ZXJ5U2VsZWN0b3IpPT1udWxsP3ZvaWQgMDpkLmNhbGwoYyxcInNjcmlwdFtub25jZV1cIik7KGM9Yj09bnVsbD9cIlwiOmIubm9uY2V8fGIuZ2V0QXR0cmlidXRlKFwibm9uY2VcIil8fFwiXCIpJiZhLnNldEF0dHJpYnV0ZShcIm5vbmNlXCIsYyl9O3ZhciBuYjt2YXIgb2I9QXJyYXkucHJvdG90eXBlLmluZGV4T2Y/ZnVuY3Rpb24oYSxiKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLmluZGV4T2YuY2FsbChhLGIsdm9pZCAwKX06ZnVuY3Rpb24oYSxiKXtpZih0eXBlb2YgYT09PVwic3RyaW5nXCIpcmV0dXJuIHR5cGVvZiBiIT09XCJzdHJpbmdcInx8Yi5sZW5ndGghPTE/LTE6YS5pbmRleE9mKGIsMCk7Zm9yKHZhciBjPTA7YzxhLmxlbmd0aDtjKyspaWYoYyBpbiBhJiZhW2NdPT09YilyZXR1cm4gYztyZXR1cm4tMX0scGI9QXJyYXkucHJvdG90eXBlLmZvckVhY2g/ZnVuY3Rpb24oYSxiKXtBcnJheS5wcm90b3R5cGUuZm9yRWFjaC5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1hLmxlbmd0aCxkPXR5cGVvZiBhPT09XCJzdHJpbmdcIj9hLnNwbGl0KFwiXCIpOmEsZT0wO2U8YztlKyspZSBpbiBkJiZiLmNhbGwodm9pZCAwLGRbZV0sZSxhKX0scWI9QXJyYXkucHJvdG90eXBlLmZpbHRlcj9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoYSxcbmIsdm9pZCAwKX06ZnVuY3Rpb24oYSxiKXtmb3IodmFyIGM9YS5sZW5ndGgsZD1bXSxlPTAsZj10eXBlb2YgYT09PVwic3RyaW5nXCI/YS5zcGxpdChcIlwiKTphLGc9MDtnPGM7ZysrKWlmKGcgaW4gZil7dmFyIGg9ZltnXTtiLmNhbGwodm9pZCAwLGgsZyxhKSYmKGRbZSsrXT1oKX1yZXR1cm4gZH07ZnVuY3Rpb24gcmIoYSxiKXtmb3IodmFyIGM9YS5sZW5ndGgsZD10eXBlb2YgYT09PVwic3RyaW5nXCI/YS5zcGxpdChcIlwiKTphLGU9MDtlPGM7ZSsrKWlmKGUgaW4gZCYmYi5jYWxsKHZvaWQgMCxkW2VdLGUsYSkpcmV0dXJuIGU7cmV0dXJuLTF9ZnVuY3Rpb24gc2IoYSl7dmFyIGI9YS5sZW5ndGg7aWYoYj4wKXtmb3IodmFyIGM9QXJyYXkoYiksZD0wO2Q8YjtkKyspY1tkXT1hW2RdO3JldHVybiBjfXJldHVybltdfTtmdW5jdGlvbiB0YihhKXt2YXIgYj1qYihcIjwhZG9jdHlwZSBodG1sPjxodG1sPjxoZWFkPjwvaGVhZD48Ym9keT48L2JvZHk+PC9odG1sPlwiKTthLndyaXRlKGtiKGIpKX07ZnVuY3Rpb24gdWIoYSl7cmV0dXJuIGRlY29kZVVSSUNvbXBvbmVudChhLnJlcGxhY2UoL1xcKy9nLFwiIFwiKSl9O2Z1bmN0aW9uIHZiKGEpe3JldHVybiBmdW5jdGlvbigpe2Eub25sb2FkPWEub25lcnJvcj1udWxsfX1mdW5jdGlvbiB3YihhKXt2YXIgYj1uZXcgSW1hZ2U7Yi5vbmxvYWQ9Yi5vbmVycm9yPXZiKGIpO2Iuc3JjPWF9ZnVuY3Rpb24geGIoKXtyZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjIxNDc0ODM2NDgpLnRvU3RyaW5nKDM2KStNYXRoLmFicyhNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjE0NzQ4MzY0OCleRGF0ZS5ub3coKSkudG9TdHJpbmcoMzYpfTtmdW5jdGlvbiB5YihhKXtpZihhIT1udWxsKXJldHVybiBhfWZ1bmN0aW9uIHpiKCl7cmV0dXJuIHR5cGVvZiBzZmZlRGF0YV89PT1cIm9iamVjdFwiP3NmZmVEYXRhXzp7fX1mdW5jdGlvbiBBYihhLGIpe2I9Ynx8emIoKTtyZXR1cm4geWIoYlthXSl9ZnVuY3Rpb24gQmIoYSxiKXtiPWJ8fHpiKCk7YT1iW2FdO3JldHVybiBhIT1udWxsP2E6dm9pZCAwfWZ1bmN0aW9uIENiKGEsYil7Yj1ifHx6YigpO3JldHVybiEhYlthXX1mdW5jdGlvbiBEYigpe3JldHVybiB6YigpLm18fHt9fWZ1bmN0aW9uIHgoYSl7cmV0dXJuIENiKGEsRGIoKS5hYmYpfTt2YXIgRWI9bnVsbDtmdW5jdGlvbiBGYigpe0VifHwoRWI9R2IoKSk7cmV0dXJuIEVifWZ1bmN0aW9uIEdiKCl7ZnVuY3Rpb24gYShjLGQsZSxmKXtlPUNiKFwiYWhcIixEYigpKT9lOmY7cmV0dXJuKEFiKFwiY2RoXCIsRGIoKSl8fFwiXCIpIT09XCJcIj9lKyhBYihcImNkaFwiLERiKCkpfHxcIlwiKTp4KFwiX3N3aXRjaEd3c1JlcXVlc3RUb1VzZUFkc2Vuc2VEb21haW5cIik/ZStkOmUrY312YXIgYj15Yih5YS5nd3NCYXNlXyk7cmV0dXJuIGJ8fChiPUFiKFwiZ3dzX2hvc3RcIikpP2I6KGI9QWIoXCJzZXJ2aWNlX2hvc3RcIikpP2EoYixcInd3dy5hZHNlbnNlY3VzdG9tc2VhcmNoYWRzLmNvbVwiLFwiaHR0cHM6Ly9cIixcIi8vXCIpOmEoXCIvL3d3dy5nb29nbGUuY29tXCIsXCIvL3d3dy5hZHNlbnNlY3VzdG9tc2VhcmNoYWRzLmNvbVwiLFwiaHR0cHM6XCIsXCJcIil9O2Z1bmN0aW9uIEhiKGEpe3RoaXMuTj1bXTt0aGlzLkJjPVtdO2E9YS5zcGxpdChcIiNcIik7dGhpcy5KZD1hWzBdO3RoaXMuQWM9YVsxXXx8XCJcIjt0aGlzLkpiPTc5NTB9ZnVuY3Rpb24geShhLGIsYyxkKXsoY3x8Yz09PTB8fGM9PT0hMSkmJihkP2EuTjphLkJjKS5wdXNoKFtlbmNvZGVVUklDb21wb25lbnQoYiksZW5jb2RlVVJJQ29tcG9uZW50KFwiXCIrYyldKX1cbmZ1bmN0aW9uIEliKGEpe2Zvcih2YXIgYj1hLkpkLGM9YS5KZC5pbmRleE9mKFwiP1wiKSE9PS0xLGQ9MDtkPGEuQmMubGVuZ3RoO2QrKyl7dmFyIGU9KGM/XCImXCI6XCI/XCIpK2EuQmNbZF0uam9pbihcIj1cIik7ZS5sZW5ndGgrYi5sZW5ndGg8PWEuSmImJihiKz1lLGM9ITApfWZvcihlPWQ9MDtlPGEuTi5sZW5ndGg7ZSsrKWQrPWEuTltlXVswXS5sZW5ndGg7ZD1hLkpiLWIubGVuZ3RoLWQtYS5OLmxlbmd0aCoyO3ZhciBmPU1hdGguZmxvb3IoZC9hLk4ubGVuZ3RoKTtpZihmPj0xKWZvcihlPTA7ZTxhLk4ubGVuZ3RoO2UrKyl7dmFyIGc9YS5OW2VdWzFdO2Y9Zy5sZW5ndGg+Zj9nLnN1YnN0cmluZygwLGYpOmc7Yis9KGM/XCImXCI6XCI/XCIpK2EuTltlXVswXStcIj1cIitmO2QtPWYubGVuZ3RoO2Y9TWF0aC5mbG9vcihkLyhhLk4ubGVuZ3RoLWUtMSkpO2M9ITB9ZWxzZSBmb3IoZD0wO2Q8YS5OLmxlbmd0aDtkKyspYS5OW2RdWzBdLmxlbmd0aCszK2IubGVuZ3RoPD1hLkpiJiYoYis9KGM/XCImXCI6XCI/XCIpK1xuYS5OW2RdLmpvaW4oXCI9XCIpLGM9ITApO2I9Yi5zdWJzdHJpbmcoMCxhLkpiKTtiPWIucmVwbGFjZSgvJVxcdz8kLyxcIlwiKTthLkFjLmxlbmd0aD4wJiYoYis9XCIjXCIrYS5BYyk7cmV0dXJuIGJ9O3ZhciBKYj1NYXRoLnJhbmRvbSgpPC4wMSxLYj1udWxsO2Z1bmN0aW9uIExiKGEpe3RoaXMucmY9eGI7dGhpcy5qYT13Yjt0aGlzLlljPU5hKCkuZGF0YS5xaXx8XCJcIjt0aGlzLlViPVwiXCI7dGhpcy5jbGllbnQ9YXx8XCJ1bmtub3duXCJ9ZnVuY3Rpb24gTWIoKXtLYnx8KEtiPW5ldyBMYihudWxsKSk7cmV0dXJuIEtifWZ1bmN0aW9uIE5iKGEpe3ZhciBiPW5ldyBIYihGYigpK1wiL2Fmcy9nZW5fMjA0XCIpLGM9YS5jbGllbnQ7Yz09PVwidW5rbm93blwiJiZPYShOYSgpKSYmKGM9T2EoTmEoKSkpO3koYixcImNsaWVudFwiLGMpO3koYixcIm91dHB1dFwiLFwidWRzX2Fkc19vbmx5XCIpO3koYixcInp4XCIsYS5yZigpKTthLlljJiZ5KGIsXCJhcWlkXCIsYS5ZYyk7YS5VYiYmeShiLFwicHNpZFwiLGEuVWIpO3JldHVybiBifVxuZnVuY3Rpb24gT2IoYSxiLGMpe3ZhciBkPU5iKGEpO3koZCxcInBidFwiLGIpO3koZCxcImFkYnhcIixjLmxlZnQpO3koZCxcImFkYnlcIixjLnRvcCk7eShkLFwiYWRiaFwiLGMuaGVpZ2h0KTt5KGQsXCJhZGJ3XCIsYy53aWR0aCk7eShkLFwiYWRiYWhcIixjLmJiKTt5KGQsXCJhZGJuXCIsYy5GZSk7eShkLFwiZWF3cFwiLGMuZWYpO3koZCxcImVycnZcIixjLk1lKTt5KGQsXCJjc2FsYVwiLGMuSWYpO3koZCxcImxsZVwiLGMud2c/MTowKTt5KGQsXCJpZnZcIixjLkJmPzE6MCk7eShkLFwiaHB0XCIsYy5zZj8xOjApO2EuamEoSWIoZCkpfWZ1bmN0aW9uIFBiKGEsYil7dmFyIGM9TmIoYSk7eShjLFwicGJ0XCIsXCJ1aVwiKTt5KGMsXCJlbXNnXCIsYik7YS5qYShJYihjKSl9ZnVuY3Rpb24gUWIoYSxiKXt2YXIgYz1OYihhKTt5KGMsXCJwYnRcIixcInJpXCIpO3koYyxcImVtc2dcIixiKTthLmphKEliKGMpKX1cbmZ1bmN0aW9uIFJiKGEsYixjKXt2YXIgZD1OYihhKTt5KGQsXCJwYnRcIixcInRwXCIpO3koZCxcImVycm1cIixiKTt5KGQsXCJlbXNnXCIsYywhMCk7YS5qYShJYihkKSl9ZnVuY3Rpb24gVWIoYSxiKXt2YXIgYz1OYihhKTt5KGMsXCJwYnRcIixiKTthLmphKEliKGMpKX07dmFyIFZiPXt9O2Z1bmN0aW9uIFdiKCl7dGhpcy5IZj1cImFkcy5cIitYYjt0aGlzLk5lPTY4ODE2MDUwNjt0aGlzLlJkPVwiZ29vZ2xlLmFkcy5kb21haW5zLkNhZjogXCI7dGhpcy5xZj1NYigpfVdiLnByb3RvdHlwZS5sb2c9ZnVuY3Rpb24oYSxiKXtpZih3aW5kb3cuSVNfR09PR0xFX0FGU19JRlJBTUVfPT09ITAmJndpbmRvdy5wYXJlbnQ9PXdpbmRvdylyZXR1cm4hMTthPUFhKGEpP2EubWVzc2FnZTphO3ZhciBjPWErYjtpZighVmJbY10pe1ZiW2NdPSEwO2M9dGhpcy5xZjt2YXIgZD10aGlzLkhmLGU9dGhpcy5OZSxmPU5iKGMpO3koZixcInBidFwiLFwiZXJcIik7eShmLFwiZXJydFwiLGQpO3koZixcImVycnZcIixlKTt5KGYsXCJlcnJtXCIsYik7eShmLFwiZW1zZ1wiLGEsITApO2MuamEoSWIoZikpO3JldHVybiEwfXJldHVybiExfTtcbmZ1bmN0aW9uIHooYSxiKXtyZXR1cm4gZnVuY3Rpb24oKXt2YXIgYz1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhcmd1bWVudHMsMCl8fFtdO3RyeXtyZXR1cm4gYS5hcHBseSh0aGlzLGMpfWNhdGNoKGUpe3R5cGVvZiBlPT09XCJzdHJpbmdcIiYmKGU9e21lc3NhZ2U6ZX0pO2M9ZS5tZXNzYWdlO3ZhciBkPWMuaW5kZXhPZihBLlJkKT09LTE7ZCYmQS5sb2coZSxiKTt0aHJvdyBkP0EuUmQrYzpjO319fWZ1bmN0aW9uIFliKGEpe3JldHVyblwiZ29vZ2xlLmFkcy5kb21haW5zLkNhZjogXCIrYX1mdW5jdGlvbiBCKGEsYil7cmV0dXJuIHooYSxiKX12YXIgWmI9QWIoXCJwYWNrYWdlc1wiKSxYYj1cInVua25vd25cIjtaYiE9bnVsbCYmKFhiPVpiKTt2YXIgQT1uZXcgV2I7ZnVuY3Rpb24gJGIoYSl7dmFyIGI9W10sYz0wLGQ7Zm9yKGQgaW4gYSliW2MrK109ZDtyZXR1cm4gYn07dmFyIGFjO2E6e3ZhciBiYz13aW5kb3cucGFyZW50O3RyeXthYz1iYy5wb3N0TWVzc2FnZT9iYzpiYy5kb2N1bWVudC5wb3N0TWVzc2FnZT9iYy5kb2N1bWVudDpudWxsO2JyZWFrIGF9Y2F0Y2goYSl7fWFjPW51bGx9dmFyIGNjPWFjLGRjPXt9LGVjPUIoZnVuY3Rpb24oKXtmb3IodmFyIGE9dSgkYihkYykpLGI9YS5uZXh0KCk7IWIuZG9uZTtiPWEubmV4dCgpKWI9Yi52YWx1ZSxkYy5oYXNPd25Qcm9wZXJ0eShiKSYmKGRjW2JdLnliKCl8fGRlbGV0ZSBkY1tiXSl9LFwiZnNDRElcIiksZmM9ITEsaGM9QihmdW5jdGlvbigpe2ZjfHwoZmM9ITAsd2luZG93LnNldEludGVydmFsKGVjLDUwMCksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJtZXNzYWdlXCIsZ2MpKX0sXCJmc0lMXCIpO2Z1bmN0aW9uIGljKGEsYil7dGhpcy5qZD1hO3RoaXMuQj17fTt0aGlzLmFiPWI7ZGNbdGhpcy5qZF09dGhpcztoYygpfVxuZnVuY3Rpb24gamMoYSxiKXtyZXR1cm4gYS5CLmhhc093blByb3BlcnR5KGIpP2EuQltiXS52YWx1ZTpudWxsfWZ1bmN0aW9uIGtjKGEsYil7cmV0dXJuIGEuQi5oYXNPd25Qcm9wZXJ0eShiKT9hLkJbYl0udmFsdWU6bnVsbH1mdW5jdGlvbiBEKGEsYixjLGQpe2EuQi5oYXNPd25Qcm9wZXJ0eShiKXx8KGEuQltiXT1jKCkpO2M9YS5CW2JdO2MuZmM9ZHx8ZnVuY3Rpb24oKXt9O2MudmFsdWUhPW51bGwmJmMuZmMoYSxhLmpkLGIsYy52YWx1ZSl9aWMucHJvdG90eXBlLnliPWZ1bmN0aW9uKCl7cmV0dXJuISEodGhpcy5hYiYmdGhpcy5hYi5wYXJlbnROb2RlJiZ0aGlzLmFiLmNvbnRlbnRXaW5kb3cpfTt2YXIgbGM9e307ZnVuY3Rpb24gbWMoKXt0aGlzLnZhbHVlPW51bGw7dGhpcy5mYz1mdW5jdGlvbigpe307dGhpcy5yYT0hMX1uPW1jLnByb3RvdHlwZTtuLnVhPWZ1bmN0aW9uKCl7fTtuLlphPWZ1bmN0aW9uKCl7fTtuLlVhPWZ1bmN0aW9uKCl7fTtuLkxhPWZ1bmN0aW9uKCl7fTtcbm4uQ2M9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMudmFsdWU9PWF9O2Z1bmN0aW9uIEUoKXttYy5jYWxsKHRoaXMpfXFhKEUsbWMpO0UucHJvdG90eXBlLnVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuISFifTtFLnByb3RvdHlwZS5aYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlP1widFwiOlwiZlwifTtFLnByb3RvdHlwZS5VYT1mdW5jdGlvbihhKXtyZXR1cm4gYT09XCJ0XCJ9O0UucHJvdG90eXBlLkxhPWZ1bmN0aW9uKCl7cmV0dXJuIDB9O0Uuaj1mdW5jdGlvbigpe3JldHVybiBuZXcgRX07ZnVuY3Rpb24gbmMoKXttYy5jYWxsKHRoaXMpfXFhKG5jLG1jKTtcbm5jLnByb3RvdHlwZS51YT1mdW5jdGlvbihhLGIpe3ZhciBjPXBhcnNlSW50KGIsMTApO2E9YStcIiA9IFwiK2I7aWYoaXNOYU4oYykpcmV0dXJuIEEubG9nKGEsXCJzSUdWVm5uXCIpLG51bGw7Yz45MDA3MTk5MjU0NzQwOTkxJiYoQS5sb2coYSxcInNJR1ZWdGxcIiksYz05MDA3MTk5MjU0NzQwOTkxKTtjPDAmJihBLmxvZyhhLFwic0lHVlZ0c1wiKSxjPTApO3JldHVybiBjfTtuYy5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZStcIlwifTtuYy5wcm90b3R5cGUuVWE9ZnVuY3Rpb24oYSl7cmV0dXJuIHBhcnNlSW50KGEsMTApfTtuYy5wcm90b3R5cGUuTGE9ZnVuY3Rpb24oKXtyZXR1cm4gMX07bmMuaj1mdW5jdGlvbigpe3JldHVybiBuZXcgbmN9O2Z1bmN0aW9uIG9jKCl7bWMuY2FsbCh0aGlzKX1xYShvYyxtYyk7b2MucHJvdG90eXBlLnVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGI/Yi50b1N0cmluZygpOlwiXCJ9O1xub2MucHJvdG90eXBlLlphPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWU/ZW5jb2RlVVJJQ29tcG9uZW50KHRoaXMudmFsdWUpOlwiXCJ9O29jLnByb3RvdHlwZS5VYT1mdW5jdGlvbihhKXtyZXR1cm4gdWIoYSl9O29jLnByb3RvdHlwZS5MYT1mdW5jdGlvbigpe3JldHVybiAyfTtvYy5qPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBvY307ZnVuY3Rpb24gcGMoKXttYy5jYWxsKHRoaXMpfXFhKHBjLG1jKTtuPXBjLnByb3RvdHlwZTtuLnVhPWZ1bmN0aW9uKGEsYil7cmV0dXJuIGI/YjpudWxsfTtuLlphPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWU/ZW5jb2RlVVJJQ29tcG9uZW50KEpTT04uc3RyaW5naWZ5KHRoaXMudmFsdWUpKTpcIlwifTtuLlVhPWZ1bmN0aW9uKGEpe3JldHVybiBhP0pTT04ucGFyc2UodWIoYSkpOm51bGx9O24uTGE9ZnVuY3Rpb24oKXtyZXR1cm4gM307XG5uLkNjPWZ1bmN0aW9uKGEpe3ZhciBiPUpTT04uc3RyaW5naWZ5KHRoaXMudmFsdWUpO2E9SlNPTi5zdHJpbmdpZnkoYSk7cmV0dXJuIGI9PT1hfTtwYy5qPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBwY307dmFyIHFjPXt9LHJjPShxY1swXT1FLmoscWNbMV09bmMuaixxY1syXT1vYy5qLHFjWzNdPXBjLmoscWMpO2Z1bmN0aW9uIHNjKGEsYixjKXtsYy5oYXNPd25Qcm9wZXJ0eShhKXx8KGxjW2FdPWMoKSk7Yz1sY1thXTthPWMudWEoYSxiKTthPT1udWxsfHxjLkNjKGEpfHwoYy52YWx1ZT1hLGMucmE9ITApfVxuZnVuY3Rpb24gZ2MoYSl7aWYoYT1hfHx3aW5kb3cuZXZlbnQpZm9yKHZhciBiPXUoJGIoZGMpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSlpZihjPWRjW2MudmFsdWVdLGMueWIoKSYmYS5zb3VyY2U9PWMuYWIuY29udGVudFdpbmRvdyl7Yj1jO2lmKChhPWEuZGF0YSkmJmEuc3BsaXQmJihhPWEuc3BsaXQoXCIsXCIpLGFbMF09PVwiRlNYRENcIikpe2ZvcihjPTE7YzxhLmxlbmd0aDtjKyspe3ZhciBkPWFbY10uc3BsaXQoXCI6XCIpLGU9dWIoZFswXSksZj1yY1twYXJzZUludChkWzFdLDEwKV07Yi5CLmhhc093blByb3BlcnR5KGUpfHwoYi5CW2VdPWYoKSk7dmFyIGc9Yi5CW2VdLlVhKGRbMl0pO2Q9YjtkLkIuaGFzT3duUHJvcGVydHkoZSl8fChkLkJbZV09ZigpKTtmPWQuQltlXTtnPWYudWEoZSxnKTtnIT1udWxsJiZmLnZhbHVlIT1nJiYoZi52YWx1ZT1nLGYucmE9ITApfWE9dSgkYihiLkIpKTtmb3IoYz1hLm5leHQoKTshYy5kb25lO2M9YS5uZXh0KCkpYz1jLnZhbHVlLGY9XG5iLkJbY10sZi5yYSYmKGYucmE9ITEsZi5mYyhiLGIuamQsYyxmLnZhbHVlKSl9YnJlYWt9fWljLnByb3RvdHlwZS55Yj16KGljLnByb3RvdHlwZS55YixcImZzaUhWSVwiKTt2YXIgdGM9QihmdW5jdGlvbigpe2lmKGNjKXtmb3IodmFyIGE9W10sYj11KCRiKGxjKSksYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe2M9Yy52YWx1ZTt2YXIgZD1sY1tjXTtpZihkLnJhKXt2YXIgZT1kLlphKCk7YS5wdXNoKFtlbmNvZGVVUklDb21wb25lbnQoYyksZC5MYSgpLGVdLmpvaW4oXCI6XCIpKTtkLnJhPSExfX1hLmxlbmd0aCE9MCYmY2MucG9zdE1lc3NhZ2UoW1wiRlNYRENcIl0uY29uY2F0KGEpLmpvaW4oXCIsXCIpLFwiKlwiKX19LFwiZnNTQ1wiKTtmdW5jdGlvbiB1YyhhLGIpe3NjKGEsYixuYy5qKX1mdW5jdGlvbiB2YyhhLGIpe3NjKGEsYixFLmopfTtmdW5jdGlvbiB3YyhhLGIpe2Zvcih2YXIgYz11KE9iamVjdC5rZXlzKGIpKSxkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSlkPWQudmFsdWUsYVtkXT17fSxPYmplY3QuYXNzaWduKGFbZF0sYltkXSl9ZnVuY3Rpb24geGMoYSxiKXtiPXUoYik7Zm9yKHZhciBjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSljPWMudmFsdWUsYS5oYXNPd25Qcm9wZXJ0eShjKSxhW2NdLk9jPSEwfTtmdW5jdGlvbiB5Yygpe3ZhciBhPXpjO3RoaXMuUmE9MTA7dGhpcy5QYT1NYXRoLmZsb29yKGEpfXljLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUmErXCJweCAtIFwiK3RoaXMuUGErXCJweFwifTt5Yy5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXthPXBhcnNlSW50KGEsMTApO3JldHVybiBpc05hTihhKT9udWxsOk1hdGgubWF4KHRoaXMuUmEsTWF0aC5taW4odGhpcy5QYSxhKSl9O3ljLnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkMoYSl9O2Z1bmN0aW9uIEFjKGEsYil7dGhpcy54PWEhPT12b2lkIDA/YTowO3RoaXMueT1iIT09dm9pZCAwP2I6MH1uPUFjLnByb3RvdHlwZTtuLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBBYyh0aGlzLngsdGhpcy55KX07bi5DYz1mdW5jdGlvbihhKXtyZXR1cm4gYSBpbnN0YW5jZW9mIEFjJiYodGhpcz09YT8hMDp0aGlzJiZhP3RoaXMueD09YS54JiZ0aGlzLnk9PWEueTohMSl9O24uY2VpbD1mdW5jdGlvbigpe3RoaXMueD1NYXRoLmNlaWwodGhpcy54KTt0aGlzLnk9TWF0aC5jZWlsKHRoaXMueSk7cmV0dXJuIHRoaXN9O24uZmxvb3I9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5mbG9vcih0aGlzLngpO3RoaXMueT1NYXRoLmZsb29yKHRoaXMueSk7cmV0dXJuIHRoaXN9O24ucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLng9TWF0aC5yb3VuZCh0aGlzLngpO3RoaXMueT1NYXRoLnJvdW5kKHRoaXMueSk7cmV0dXJuIHRoaXN9O1xubi50cmFuc2xhdGU9ZnVuY3Rpb24oYSxiKXthIGluc3RhbmNlb2YgQWM/KHRoaXMueCs9YS54LHRoaXMueSs9YS55KToodGhpcy54Kz1OdW1iZXIoYSksdHlwZW9mIGI9PT1cIm51bWJlclwiJiYodGhpcy55Kz1iKSk7cmV0dXJuIHRoaXN9O24uc2NhbGU9ZnVuY3Rpb24oYSxiKXt0aGlzLngqPWE7dGhpcy55Kj10eXBlb2YgYj09PVwibnVtYmVyXCI/YjphO3JldHVybiB0aGlzfTtmdW5jdGlvbiBCYyhhLGIsYyxkKXt0aGlzLnRvcD1hO3RoaXMucmlnaHQ9Yjt0aGlzLmJvdHRvbT1jO3RoaXMubGVmdD1kfW49QmMucHJvdG90eXBlO24uY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEJjKHRoaXMudG9wLHRoaXMucmlnaHQsdGhpcy5ib3R0b20sdGhpcy5sZWZ0KX07bi5jb250YWlucz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcyYmYT9hIGluc3RhbmNlb2YgQmM/YS5sZWZ0Pj10aGlzLmxlZnQmJmEucmlnaHQ8PXRoaXMucmlnaHQmJmEudG9wPj10aGlzLnRvcCYmYS5ib3R0b208PXRoaXMuYm90dG9tOmEueD49dGhpcy5sZWZ0JiZhLng8PXRoaXMucmlnaHQmJmEueT49dGhpcy50b3AmJmEueTw9dGhpcy5ib3R0b206ITF9O1xubi5leHBhbmQ9ZnVuY3Rpb24oYSxiLGMsZCl7QWEoYSk/KHRoaXMudG9wLT1hLnRvcCx0aGlzLnJpZ2h0Kz1hLnJpZ2h0LHRoaXMuYm90dG9tKz1hLmJvdHRvbSx0aGlzLmxlZnQtPWEubGVmdCk6KHRoaXMudG9wLT1hLHRoaXMucmlnaHQrPU51bWJlcihiKSx0aGlzLmJvdHRvbSs9TnVtYmVyKGMpLHRoaXMubGVmdC09TnVtYmVyKGQpKTtyZXR1cm4gdGhpc307bi5jZWlsPWZ1bmN0aW9uKCl7dGhpcy50b3A9TWF0aC5jZWlsKHRoaXMudG9wKTt0aGlzLnJpZ2h0PU1hdGguY2VpbCh0aGlzLnJpZ2h0KTt0aGlzLmJvdHRvbT1NYXRoLmNlaWwodGhpcy5ib3R0b20pO3RoaXMubGVmdD1NYXRoLmNlaWwodGhpcy5sZWZ0KTtyZXR1cm4gdGhpc307XG5uLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy50b3A9TWF0aC5mbG9vcih0aGlzLnRvcCk7dGhpcy5yaWdodD1NYXRoLmZsb29yKHRoaXMucmlnaHQpO3RoaXMuYm90dG9tPU1hdGguZmxvb3IodGhpcy5ib3R0b20pO3RoaXMubGVmdD1NYXRoLmZsb29yKHRoaXMubGVmdCk7cmV0dXJuIHRoaXN9O24ucm91bmQ9ZnVuY3Rpb24oKXt0aGlzLnRvcD1NYXRoLnJvdW5kKHRoaXMudG9wKTt0aGlzLnJpZ2h0PU1hdGgucm91bmQodGhpcy5yaWdodCk7dGhpcy5ib3R0b209TWF0aC5yb3VuZCh0aGlzLmJvdHRvbSk7dGhpcy5sZWZ0PU1hdGgucm91bmQodGhpcy5sZWZ0KTtyZXR1cm4gdGhpc307XG5uLnRyYW5zbGF0ZT1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiBBYz8odGhpcy5sZWZ0Kz1hLngsdGhpcy5yaWdodCs9YS54LHRoaXMudG9wKz1hLnksdGhpcy5ib3R0b20rPWEueSk6KHRoaXMubGVmdCs9YSx0aGlzLnJpZ2h0Kz1hLHR5cGVvZiBiPT09XCJudW1iZXJcIiYmKHRoaXMudG9wKz1iLHRoaXMuYm90dG9tKz1iKSk7cmV0dXJuIHRoaXN9O24uc2NhbGU9ZnVuY3Rpb24oYSxiKXtiPXR5cGVvZiBiPT09XCJudW1iZXJcIj9iOmE7dGhpcy5sZWZ0Kj1hO3RoaXMucmlnaHQqPWE7dGhpcy50b3AqPWI7dGhpcy5ib3R0b20qPWI7cmV0dXJuIHRoaXN9O2Z1bmN0aW9uIENjKGEsYil7dGhpcy53aWR0aD1hO3RoaXMuaGVpZ2h0PWJ9bj1DYy5wcm90b3R5cGU7bi5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgQ2ModGhpcy53aWR0aCx0aGlzLmhlaWdodCl9O24uYXNwZWN0UmF0aW89ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy53aWR0aC90aGlzLmhlaWdodH07bi5jZWlsPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmNlaWwodGhpcy53aWR0aCk7dGhpcy5oZWlnaHQ9TWF0aC5jZWlsKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307bi5mbG9vcj1mdW5jdGlvbigpe3RoaXMud2lkdGg9TWF0aC5mbG9vcih0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmZsb29yKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307bi5yb3VuZD1mdW5jdGlvbigpe3RoaXMud2lkdGg9TWF0aC5yb3VuZCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLnJvdW5kKHRoaXMuaGVpZ2h0KTtyZXR1cm4gdGhpc307XG5uLnNjYWxlPWZ1bmN0aW9uKGEsYil7dGhpcy53aWR0aCo9YTt0aGlzLmhlaWdodCo9dHlwZW9mIGI9PT1cIm51bWJlclwiP2I6YTtyZXR1cm4gdGhpc307dmFyIERjLEVjO2E6e2Zvcih2YXIgRmM9W1wiQ0xPU1VSRV9GTEFHU1wiXSxHYz15YSxIYz0wO0hjPEZjLmxlbmd0aDtIYysrKWlmKEdjPUdjW0ZjW0hjXV0sR2M9PW51bGwpe0VjPW51bGw7YnJlYWsgYX1FYz1HY312YXIgSWM9RWMmJkVjWzYxMDQwMTMwMV07RGM9SWMhPW51bGw/SWM6ITE7ZnVuY3Rpb24gSmMoKXt2YXIgYT15YS5uYXZpZ2F0b3I7cmV0dXJuIGEmJihhPWEudXNlckFnZW50KT9hOlwiXCJ9dmFyIEtjLExjPXlhLm5hdmlnYXRvcjtLYz1MYz9MYy51c2VyQWdlbnREYXRhfHxudWxsOm51bGw7ZnVuY3Rpb24gT2MoYSl7cmV0dXJuIERjP0tjP0tjLmJyYW5kcy5zb21lKGZ1bmN0aW9uKGIpe3JldHVybihiPWIuYnJhbmQpJiZiLmluZGV4T2YoYSkhPS0xfSk6ITE6ITF9ZnVuY3Rpb24gUGMoYSl7cmV0dXJuIEpjKCkuaW5kZXhPZihhKSE9LTF9O2Z1bmN0aW9uIFFjKCl7cmV0dXJuIERjPyEhS2MmJktjLmJyYW5kcy5sZW5ndGg+MDohMX1mdW5jdGlvbiBSYygpe3JldHVybiBRYygpP09jKFwiQ2hyb21pdW1cIik6KFBjKFwiQ2hyb21lXCIpfHxQYyhcIkNyaU9TXCIpKSYmIShRYygpPzA6UGMoXCJFZGdlXCIpKXx8UGMoXCJTaWxrXCIpfTtmdW5jdGlvbiBTYyhhKXtTY1tcIiBcIl0oYSk7cmV0dXJuIGF9U2NbXCIgXCJdPWZ1bmN0aW9uKCl7fTt2YXIgVGM9SmMoKS50b0xvd2VyQ2FzZSgpLmluZGV4T2YoXCJ3ZWJraXRcIikhPS0xJiYhUGMoXCJFZGdlXCIpO2Z1bmN0aW9uIFVjKGEpe2lmKGEgaW5zdGFuY2VvZiBpYilyZXR1cm4gYTthPVN0cmluZyhhKS5yZXBsYWNlKC8mL2csXCImYW1wO1wiKS5yZXBsYWNlKC88L2csXCImbHQ7XCIpLnJlcGxhY2UoLz4vZyxcIiZndDtcIikucmVwbGFjZSgvXCIvZyxcIiZxdW90O1wiKS5yZXBsYWNlKC8nL2csXCImYXBvcztcIik7cmV0dXJuIGpiKGEpfTtmdW5jdGlvbiBWYyhhKXt2YXIgYj1yYS5hcHBseSgxLGFyZ3VtZW50cyk7aWYoYi5sZW5ndGg9PT0wKXJldHVybiBjYihhWzBdKTtmb3IodmFyIGM9YVswXSxkPTA7ZDxiLmxlbmd0aDtkKyspYys9ZW5jb2RlVVJJQ29tcG9uZW50KGJbZF0pK2FbZCsxXTtyZXR1cm4gY2IoYyl9ZnVuY3Rpb24gV2MoYSxiKXthPWRiKGEpLnRvU3RyaW5nKCk7dmFyIGM9YS5zcGxpdCgvWz8jXS8pLGQ9L1s/XS8udGVzdChhKT9cIj9cIitjWzFdOlwiXCI7cmV0dXJuIFhjKGNbMF0sZCwvWyNdLy50ZXN0KGEpP1wiI1wiKyhkP2NbMl06Y1sxXSk6XCJcIixiKX1cbmZ1bmN0aW9uIFhjKGEsYixjLGQpe2Z1bmN0aW9uIGUoZyxoKXtnIT1udWxsJiYoQXJyYXkuaXNBcnJheShnKT9nLmZvckVhY2goZnVuY3Rpb24oayl7cmV0dXJuIGUoayxoKX0pOihiKz1mK2VuY29kZVVSSUNvbXBvbmVudChoKStcIj1cIitlbmNvZGVVUklDb21wb25lbnQoZyksZj1cIiZcIikpfXZhciBmPWIubGVuZ3RoP1wiJlwiOlwiP1wiO2QuY29uc3RydWN0b3I9PT1PYmplY3QmJihkPU9iamVjdC5lbnRyaWVzKGQpKTtBcnJheS5pc0FycmF5KGQpP2QuZm9yRWFjaChmdW5jdGlvbihnKXtyZXR1cm4gZShnWzFdLGdbMF0pfSk6ZC5mb3JFYWNoKGUpO3JldHVybiBjYihhK2IrYyl9O2Z1bmN0aW9uIFljKGEpe3JldHVybiBhP25ldyBaYygkYyhhKSk6bmJ8fChuYj1uZXcgWmMpfVxuZnVuY3Rpb24gYWQoYSxiLGMpe3ZhciBkPWRvY3VtZW50O2M9Y3x8ZDt2YXIgZT1hJiZhIT1cIipcIj9TdHJpbmcoYSkudG9VcHBlckNhc2UoKTpcIlwiO2lmKGMucXVlcnlTZWxlY3RvckFsbCYmYy5xdWVyeVNlbGVjdG9yJiYoZXx8YikpcmV0dXJuIGMucXVlcnlTZWxlY3RvckFsbChlKyhiP1wiLlwiK2I6XCJcIikpO2lmKGImJmMuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZSl7YT1jLmdldEVsZW1lbnRzQnlDbGFzc05hbWUoYik7aWYoZSl7Yz17fTtmb3IodmFyIGY9ZD0wLGc7Zz1hW2ZdO2YrKyllPT1nLm5vZGVOYW1lJiYoY1tkKytdPWcpO2MubGVuZ3RoPWQ7cmV0dXJuIGN9cmV0dXJuIGF9YT1jLmdldEVsZW1lbnRzQnlUYWdOYW1lKGV8fFwiKlwiKTtpZihiKXtjPXt9O2ZvcihmPWQ9MDtnPWFbZl07ZisrKXtlPWcuY2xhc3NOYW1lO3ZhciBoO2lmKGg9dHlwZW9mIGUuc3BsaXQ9PVwiZnVuY3Rpb25cIiloPW9iKGUuc3BsaXQoL1xccysvKSxiKT49MDtoJiYoY1tkKytdPWcpfWMubGVuZ3RoPWQ7cmV0dXJuIGN9cmV0dXJuIGF9XG5mdW5jdGlvbiBiZChhKXthPWEuZG9jdW1lbnQ7YT1hLmNvbXBhdE1vZGU9PVwiQ1NTMUNvbXBhdFwiP2EuZG9jdW1lbnRFbGVtZW50OmEuYm9keTtyZXR1cm4gbmV3IENjKGEuY2xpZW50V2lkdGgsYS5jbGllbnRIZWlnaHQpfWZ1bmN0aW9uIGNkKGEpe3JldHVybiBhLnNjcm9sbGluZ0VsZW1lbnQ/YS5zY3JvbGxpbmdFbGVtZW50OlRjfHxhLmNvbXBhdE1vZGUhPVwiQ1NTMUNvbXBhdFwiP2EuYm9keXx8YS5kb2N1bWVudEVsZW1lbnQ6YS5kb2N1bWVudEVsZW1lbnR9XG5mdW5jdGlvbiBkZChhLGIsYyl7ZnVuY3Rpb24gZChoKXtoJiZiLmFwcGVuZENoaWxkKHR5cGVvZiBoPT09XCJzdHJpbmdcIj9hLmNyZWF0ZVRleHROb2RlKGgpOmgpfWZvcih2YXIgZT0xO2U8Yy5sZW5ndGg7ZSsrKXt2YXIgZj1jW2VdO2lmKCF6YShmKXx8QWEoZikmJmYubm9kZVR5cGU+MClkKGYpO2Vsc2V7YTp7aWYoZiYmdHlwZW9mIGYubGVuZ3RoPT1cIm51bWJlclwiKXtpZihBYShmKSl7dmFyIGc9dHlwZW9mIGYuaXRlbT09XCJmdW5jdGlvblwifHx0eXBlb2YgZi5pdGVtPT1cInN0cmluZ1wiO2JyZWFrIGF9aWYodHlwZW9mIGY9PT1cImZ1bmN0aW9uXCIpe2c9dHlwZW9mIGYuaXRlbT09XCJmdW5jdGlvblwiO2JyZWFrIGF9fWc9ITF9cGIoZz9zYihmKTpmLGQpfX19ZnVuY3Rpb24gZWQoYSxiKXtiPVN0cmluZyhiKTthLmNvbnRlbnRUeXBlPT09XCJhcHBsaWNhdGlvbi94aHRtbCt4bWxcIiYmKGI9Yi50b0xvd2VyQ2FzZSgpKTtyZXR1cm4gYS5jcmVhdGVFbGVtZW50KGIpfVxuZnVuY3Rpb24gJGMoYSl7cmV0dXJuIGEubm9kZVR5cGU9PTk/YTphLm93bmVyRG9jdW1lbnR8fGEuZG9jdW1lbnR9ZnVuY3Rpb24gWmMoYSl7dGhpcy5hYT1hfHx5YS5kb2N1bWVudHx8ZG9jdW1lbnR9bj1aYy5wcm90b3R5cGU7bi5nZXRFbGVtZW50c0J5VGFnTmFtZT1mdW5jdGlvbihhLGIpe3JldHVybihifHx0aGlzLmFhKS5nZXRFbGVtZW50c0J5VGFnTmFtZShTdHJpbmcoYSkpfTtuLmNyZWF0ZUVsZW1lbnQ9ZnVuY3Rpb24oYSl7cmV0dXJuIGVkKHRoaXMuYWEsYSl9O24uY3JlYXRlVGV4dE5vZGU9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuYWEuY3JlYXRlVGV4dE5vZGUoU3RyaW5nKGEpKX07bi5hcHBlbmRDaGlsZD1mdW5jdGlvbihhLGIpe2EuYXBwZW5kQ2hpbGQoYil9O24uYXBwZW5kPWZ1bmN0aW9uKGEsYil7ZGQoJGMoYSksYSxhcmd1bWVudHMpfTtuLmNhbkhhdmVDaGlsZHJlbj1mdW5jdGlvbihhKXtpZihhLm5vZGVUeXBlIT0xKXJldHVybiExO3N3aXRjaChhLnRhZ05hbWUpe2Nhc2UgXCJBUFBMRVRcIjpjYXNlIFwiQVJFQVwiOmNhc2UgXCJCQVNFXCI6Y2FzZSBcIkJSXCI6Y2FzZSBcIkNPTFwiOmNhc2UgXCJDT01NQU5EXCI6Y2FzZSBcIkVNQkVEXCI6Y2FzZSBcIkZSQU1FXCI6Y2FzZSBcIkhSXCI6Y2FzZSBcIklNR1wiOmNhc2UgXCJJTlBVVFwiOmNhc2UgXCJJRlJBTUVcIjpjYXNlIFwiSVNJTkRFWFwiOmNhc2UgXCJLRVlHRU5cIjpjYXNlIFwiTElOS1wiOmNhc2UgXCJOT0ZSQU1FU1wiOmNhc2UgXCJOT1NDUklQVFwiOmNhc2UgXCJNRVRBXCI6Y2FzZSBcIk9CSkVDVFwiOmNhc2UgXCJQQVJBTVwiOmNhc2UgXCJTQ1JJUFRcIjpjYXNlIFwiU09VUkNFXCI6Y2FzZSBcIlNUWUxFXCI6Y2FzZSBcIlRSQUNLXCI6Y2FzZSBcIldCUlwiOnJldHVybiExfXJldHVybiEwfTtcbm4ucmVtb3ZlTm9kZT1mdW5jdGlvbihhKXtyZXR1cm4gYSYmYS5wYXJlbnROb2RlP2EucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKTpudWxsfTtuLmNvbnRhaW5zPWZ1bmN0aW9uKGEsYil7aWYoIWF8fCFiKXJldHVybiExO2lmKGEuY29udGFpbnMmJmIubm9kZVR5cGU9PTEpcmV0dXJuIGE9PWJ8fGEuY29udGFpbnMoYik7aWYodHlwZW9mIGEuY29tcGFyZURvY3VtZW50UG9zaXRpb24hPVwidW5kZWZpbmVkXCIpcmV0dXJuIGE9PWJ8fCEhKGEuY29tcGFyZURvY3VtZW50UG9zaXRpb24oYikmMTYpO2Zvcig7YiYmYSE9YjspYj1iLnBhcmVudE5vZGU7cmV0dXJuIGI9PWF9O2Z1bmN0aW9uIGZkKGEsYil7YTp7dmFyIGM9JGMoYSk7aWYoYy5kZWZhdWx0VmlldyYmYy5kZWZhdWx0Vmlldy5nZXRDb21wdXRlZFN0eWxlJiYoYz1jLmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUoYSxudWxsKSkpe2M9Y1tiXXx8Yy5nZXRQcm9wZXJ0eVZhbHVlKGIpfHxcIlwiO2JyZWFrIGF9Yz1cIlwifXJldHVybiBjfHwoYS5jdXJyZW50U3R5bGU/YS5jdXJyZW50U3R5bGVbYl06bnVsbCl8fGEuc3R5bGUmJmEuc3R5bGVbYl19ZnVuY3Rpb24gZ2QoYSl7dHJ5e3JldHVybiBhLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpfWNhdGNoKGIpe3JldHVybntsZWZ0OjAsdG9wOjAscmlnaHQ6MCxib3R0b206MH19fVxuZnVuY3Rpb24gaGQoYSl7dmFyIGI9JGMoYSksYz1mZChhLFwicG9zaXRpb25cIiksZD1jPT1cImZpeGVkXCJ8fGM9PVwiYWJzb2x1dGVcIjtmb3IoYT1hLnBhcmVudE5vZGU7YSYmYSE9YjthPWEucGFyZW50Tm9kZSlpZihhLm5vZGVUeXBlPT0xMSYmYS5ob3N0JiYoYT1hLmhvc3QpLGM9ZmQoYSxcInBvc2l0aW9uXCIpLGQ9ZCYmYz09XCJzdGF0aWNcIiYmYSE9Yi5kb2N1bWVudEVsZW1lbnQmJmEhPWIuYm9keSwhZCYmKGEuc2Nyb2xsV2lkdGg+YS5jbGllbnRXaWR0aHx8YS5zY3JvbGxIZWlnaHQ+YS5jbGllbnRIZWlnaHR8fGM9PVwiZml4ZWRcInx8Yz09XCJhYnNvbHV0ZVwifHxjPT1cInJlbGF0aXZlXCIpKXJldHVybiBhO3JldHVybiBudWxsfVxuZnVuY3Rpb24gaWQoYSl7dmFyIGI9JGMoYSksYz1uZXcgQWMoMCwwKTtpZihhPT0oYj8kYyhiKTpkb2N1bWVudCkuZG9jdW1lbnRFbGVtZW50KXJldHVybiBjO2E9Z2QoYSk7dmFyIGQ9WWMoYikuYWE7Yj1jZChkKTtkPWQuZGVmYXVsdFZpZXc7Yj1uZXcgQWMoZC5wYWdlWE9mZnNldHx8Yi5zY3JvbGxMZWZ0LGQucGFnZVlPZmZzZXR8fGIuc2Nyb2xsVG9wKTtjLng9YS5sZWZ0K2IueDtjLnk9YS50b3ArYi55O3JldHVybiBjfWZ1bmN0aW9uIGpkKGEpe2lmKGEubm9kZVR5cGU9PTEpcmV0dXJuIGE9Z2QoYSksbmV3IEFjKGEubGVmdCxhLnRvcCk7YT1hLmNoYW5nZWRUb3VjaGVzP2EuY2hhbmdlZFRvdWNoZXNbMF06YTtyZXR1cm4gbmV3IEFjKGEuY2xpZW50WCxhLmNsaWVudFkpfVxuZnVuY3Rpb24ga2QoYSl7dmFyIGI9bGQ7aWYoZmQoYSxcImRpc3BsYXlcIikhPVwibm9uZVwiKXJldHVybiBiKGEpO3ZhciBjPWEuc3R5bGUsZD1jLmRpc3BsYXksZT1jLnZpc2liaWxpdHksZj1jLnBvc2l0aW9uO2MudmlzaWJpbGl0eT1cImhpZGRlblwiO2MucG9zaXRpb249XCJhYnNvbHV0ZVwiO2MuZGlzcGxheT1cImlubGluZVwiO2E9YihhKTtjLmRpc3BsYXk9ZDtjLnBvc2l0aW9uPWY7Yy52aXNpYmlsaXR5PWU7cmV0dXJuIGF9ZnVuY3Rpb24gbGQoYSl7dmFyIGI9YS5vZmZzZXRXaWR0aCxjPWEub2Zmc2V0SGVpZ2h0LGQ9VGMmJiFiJiYhYztyZXR1cm4oYj09PXZvaWQgMHx8ZCkmJmEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0PyhhPWdkKGEpLG5ldyBDYyhhLnJpZ2h0LWEubGVmdCxhLmJvdHRvbS1hLnRvcCkpOm5ldyBDYyhiLGMpfTtmdW5jdGlvbiBtZChhKXt2YXIgYj1hLmluZGV4T2YoXCIjXCIpO3JldHVybiBiPDA/YTphLnNsaWNlKDAsYil9dmFyIG5kPS8jfCQvO2Z1bmN0aW9uIG9kKGEsYil7dmFyIGM9YS5zZWFyY2gobmQpO2E6e3ZhciBkPTA7Zm9yKHZhciBlPWIubGVuZ3RoOyhkPWEuaW5kZXhPZihiLGQpKT49MCYmZDxjOyl7dmFyIGY9YS5jaGFyQ29kZUF0KGQtMSk7aWYoZj09Mzh8fGY9PTYzKWlmKGY9YS5jaGFyQ29kZUF0KGQrZSksIWZ8fGY9PTYxfHxmPT0zOHx8Zj09MzUpYnJlYWsgYTtkKz1lKzF9ZD0tMX1pZihkPDApcmV0dXJuIG51bGw7ZT1hLmluZGV4T2YoXCImXCIsZCk7aWYoZTwwfHxlPmMpZT1jO2QrPWIubGVuZ3RoKzE7cmV0dXJuIHViKGEuc2xpY2UoZCxlIT09LTE/ZTowKSl9O3ZhciBwZD17fSxxZD0ocGQuYWRzPTAscGQucmVsYXRlZHNlYXJjaD0zLHBkKSxyZD0oIXdpbmRvdy5JU19HT09HTEVfQUZTX0lGUkFNRV98fFJhKCksOCksemM9KCF3aW5kb3cuSVNfR09PR0xFX0FGU19JRlJBTUVffHxSYSgpLDI0KSxzZD1uZXcgeWMsdGQ9e2NvbnRlbnQ6XCJjXCIscXVlcnk6XCJxXCIsZG9tYWluOlwiZFwifTtmdW5jdGlvbiB1ZChhKXtyZXR1cm4vXig/Oig/OnNsYXZlLVxcZCsoPzotKD86YXxiKSk/KXwoPzptYXN0ZXItKD86YXxiKSkpLVxcZCskLy50ZXN0KGEpfWZ1bmN0aW9uIHZkKGEpe3JldHVybihhPWEubWF0Y2goL3NsYXZlLShcXGQrKS0vKSk/cGFyc2VJbnQoYVsxXSwxMCkrMToxfWZ1bmN0aW9uIHdkKGEsYixjKXtmb3IodmFyIGQ9W10sZSxmPTA7ZT1jW2ZdO2YrKyllPW5ldyBIYihlKSx5KGUsYSxiKSxkLnB1c2goSWIoZSkpO3JldHVybiBkfVxuZnVuY3Rpb24geGQoYSxiKXthPW1kKGEpO2lmKChhPWEubWF0Y2gobmV3IFJlZ0V4cChcIls/Jl1cIitiK1wiPShbXiZdKilcIikpKSYmYVsxXSl0cnl7cmV0dXJuIHViKGFbMV0pfWNhdGNoKGMpe31yZXR1cm4gbnVsbH1mdW5jdGlvbiB5ZChhKXthPW1kKGEpO3ZhciBiPXt9O2EucmVwbGFjZSgvWz8mXSsoW149Jl0rKT0/KFteJl0qKS9naSxmdW5jdGlvbihjLGQsZSl7dHJ5e2JbdWIoZCldPXViKGUpfWNhdGNoKGYpe319KTtyZXR1cm4gYn1mdW5jdGlvbiB6ZCgpe3ZhciBhPWE9PT12b2lkIDA/d2luZG93LmxvY2F0aW9uLmhyZWY6YTt2YXIgYj14KFwiX2VuYWJsZUxhenlMb2FkaW5nXCIpLGM9QWIoXCJsbGRsXCIsRGIoKSk7cmV0dXJuIGImJmMmJihjPW5ldyBSZWdFeHAoXCIoXCIrYXRvYihjKS5yZXBsYWNlKC8sL2csXCIpfChcIikrXCIpXCIpLGEubWF0Y2goYykpPyExOiEhKFwiSW50ZXJzZWN0aW9uT2JzZXJ2ZXJcImluIHdpbmRvdyYmYil9XG5mdW5jdGlvbiBBZChhLGIsYyl7Yj1iPT09dm9pZCAwPzA6YjtjPWM9PT12b2lkIDA/bnVsbDpjO3ZhciBkPW5ldyBCYygwLEluZmluaXR5LEluZmluaXR5LDApO2Zvcih2YXIgZT1ZYyhhKSxmPWUuYWEuYm9keSxnPWUuYWEuZG9jdW1lbnRFbGVtZW50LGg9Y2QoZS5hYSksaz1hO2s9aGQoayk7KWlmKCghVGN8fGsuY2xpZW50SGVpZ2h0IT0wfHxrIT1mKSYmayE9ZiYmayE9ZyYmZmQoayxcIm92ZXJmbG93XCIpIT1cInZpc2libGVcIil7dmFyIGw9aWQoayksbT1uZXcgQWMoay5jbGllbnRMZWZ0LGsuY2xpZW50VG9wKTtsLngrPW0ueDtsLnkrPW0ueTtkLnRvcD1NYXRoLm1heChkLnRvcCxsLnkpO2QucmlnaHQ9TWF0aC5taW4oZC5yaWdodCxsLngray5jbGllbnRXaWR0aCk7ZC5ib3R0b209TWF0aC5taW4oZC5ib3R0b20sbC55K2suY2xpZW50SGVpZ2h0KTtkLmxlZnQ9TWF0aC5tYXgoZC5sZWZ0LGwueCl9Zj1oLnNjcm9sbExlZnQ7aD1oLnNjcm9sbFRvcDtkLmxlZnQ9TWF0aC5tYXgoZC5sZWZ0LFxuZik7ZC50b3A9TWF0aC5tYXgoZC50b3AsaCk7ZT1iZChlLmFhLmRlZmF1bHRWaWV3fHx3aW5kb3cpO2QucmlnaHQ9TWF0aC5taW4oZC5yaWdodCxmK2Uud2lkdGgpO2QuYm90dG9tPU1hdGgubWluKGQuYm90dG9tLGgrZS5oZWlnaHQpO2Q9ZC50b3A+PTAmJmQubGVmdD49MCYmZC5ib3R0b20+ZC50b3AmJmQucmlnaHQ+ZC5sZWZ0P2Q6bnVsbDtlPW5ldyBBYyhhLm9mZnNldExlZnQsYS5vZmZzZXRUb3ApO2E9a2QoYSk7ZT1uZXcgQmMoZS55LGUueCthLndpZHRoLGUueSthLmhlaWdodCxlLngpO2MhPW51bGwmJihiPS1NYXRoLmFicyhhLmhlaWdodCpjKSk7cmV0dXJuISEoZCYmZC5sZWZ0PD1lLnJpZ2h0K2ImJmUubGVmdDw9ZC5yaWdodCtiJiZkLnRvcDw9ZS5ib3R0b20rYiYmZS50b3A8PWQuYm90dG9tK2IpfWZ1bmN0aW9uIEJkKCl7cmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic3NyYWJcIikhPT1udWxsfTt2YXIgQ2Q9e307ZnVuY3Rpb24gRGQoYSl7dmFyIGI9e25hbWVzOltdLGZyYW1lczpbXX0sYztmb3IoYyBpbiBDZCl7dmFyIGQ9RWQoYyxhKTtkPT1udWxsP2RlbGV0ZSBDZFtjXTooYi5uYW1lcy5wdXNoKGMpLGIuZnJhbWVzLnB1c2goZCkpfXJldHVybiBifURkPXooRGQsXCJjRnJcIik7ZnVuY3Rpb24gRWQoYSxiKXtpZihGZClyZXR1cm4gRmQoYSxiKTtpZihhPT1iLm5hbWUpcmV0dXJuIHdpbmRvdzt0cnl7dmFyIGM9d2luZG93LnBhcmVudC5mcmFtZXNbYStcInxcIit3aW5kb3cubmFtZV07aWYoYylyZXR1cm4gY31jYXRjaChkKXt9dHJ5e3JldHVybiB3aW5kb3cucGFyZW50LmZyYW1lc1thXXx8bnVsbH1jYXRjaChkKXt9cmV0dXJuIG51bGx9RWQ9eihFZCxcImdGQk5cIik7dmFyIEZkPW51bGwsR2Q9RGQsSGQ9RWQ7ZnVuY3Rpb24gSWQoYSxiLGMpe2M9Yz09PXZvaWQgMD9bXTpjO3RoaXMuZnJhbWVXaWR0aD1hO3RoaXMuZnJhbWVIZWlnaHQ9Yjt0aGlzLmJiPWN9O2Z1bmN0aW9uIEpkKGEsYixjKXt2YXIgZD0hMTthLmFkZEV2ZW50TGlzdGVuZXIoYixjKTthLmFkZEV2ZW50TGlzdGVuZXIoYixmdW5jdGlvbigpe2R8fChhLnJlbW92ZUV2ZW50TGlzdGVuZXIoYixjKSxkPSEwKX0pfTtmdW5jdGlvbiBLZCgpe3ZhciBhLGI7cmV0dXJue3Byb21pc2U6bmV3IFByb21pc2UoZnVuY3Rpb24oYyxkKXthPWM7Yj1kfSkscmVzb2x2ZTphLHJlamVjdDpifX1mdW5jdGlvbiBMZChhLGIpe3ZhciBjPUtkKCk7YS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy5yZXNvbHZlKGIpfSwwKTtyZXR1cm4gYy5wcm9taXNlfWZ1bmN0aW9uIE1kKGEsYil7dmFyIGM9S2QoKTt3aW5kb3cuc2V0VGltZW91dChmdW5jdGlvbigpe2MucmVzb2x2ZShiKX0sYSk7cmV0dXJuIGMucHJvbWlzZX1cbmZ1bmN0aW9uIE5kKGEpe3ZhciBiPVtdLGM9MCxkPWEubGVuZ3RoO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihlLGYpe2lmKGQpZm9yKHZhciBnPXt3YTowfTtnLndhPGQ7Zz17d2E6Zy53YX0sZy53YSsrKVByb21pc2UucmVzb2x2ZShhW2cud2FdKS50aGVuKGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbihrKXtiW2gud2FdPWs7Yys9MTtjPT09ZCYmZShiKX19KGcpKS5jYXRjaChmdW5jdGlvbihoKXtmKGgpfSk7ZWxzZSBlKGIpfSl9O3ZhciBPZD1udWxsO2Z1bmN0aW9uIFBkKCl7aWYoT2QhPW51bGwpcmV0dXJuIE9kO3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7YS5zdHlsZS53aWR0aD1cIjFweFwiO2Euc3R5bGUuaGVpZ2h0PVwiMXB4XCI7YS5zdHlsZS5ib3JkZXI9XCIxcHggc29saWQgYmxhY2tcIjthLnN0eWxlLnBhZGRpbmc9XCIxcHhcIjthLnN0eWxlLnZpc2liaWxpdHk9XCJoaWRkZW5cIjtkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGEpO3ZhciBiPWEub2Zmc2V0V2lkdGg7ZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChhKTtyZXR1cm4gT2Q9Yj09NX1mdW5jdGlvbiBRZChhKXtyZXR1cm4gcGFyc2VGbG9hdChhLnJlcGxhY2UoXCJweFwiLFwiXCIpKXx8MH1cbmZ1bmN0aW9uIFJkKGEsYil7dmFyIGM9Yj9hLm9mZnNldEhlaWdodDphLm9mZnNldFdpZHRoO2I9Yj9bXCJUb3BcIixcIkJvdHRvbVwiXTpbXCJSaWdodFwiLFwiTGVmdFwiXTt2YXIgZD0hMTt2YXIgZT1QZCgpP1tcIm1hcmdpblwiXTpbXCJib3JkZXJcIixcIm1hcmdpblwiLFwicGFkZGluZ1wiXTt2YXIgZj1lLmxlbmd0aCxnPWIubGVuZ3RoLGg9ZG9jdW1lbnQuZGVmYXVsdFZpZXc7aWYoaCYmaC5nZXRDb21wdXRlZFN0eWxlJiYoaD1oLmdldENvbXB1dGVkU3R5bGUoYSkpKXtkPSEwO2Zvcih2YXIgaz0wO2s8ZjtrKyspZm9yKHZhciBsPTA7bDxnO2wrKyljKz1RZChoLmdldFByb3BlcnR5VmFsdWUoW2Vba10sYltsXS50b0xvd2VyQ2FzZSgpXS5qb2luKFwiLVwiKSkpfWlmKCFkJiYoYT1hLmN1cnJlbnRTdHlsZSkpe2lmKCFQZCgpKWZvcihkPTA7ZDxnO2QrKyljKz1RZChhW1tcImJvcmRlclwiLGJbZF0sXCJXaWR0aFwiXS5qb2luKFwiXCIpXSk7Zm9yKGQ9MDtkPGY7ZCsrKWlmKGVbZF0hPVwiYm9yZGVyXCIpZm9yKGg9MDtoPFxuZztoKyspYys9UWQoYVtbZVtkXSxiW2hdXS5qb2luKFwiXCIpXSl9cmV0dXJuIGN9O2Z1bmN0aW9uIFNkKGEpe2lmKFRkKXJldHVybiBUZChhKTt2YXIgYj1HZChhKTtpZihLYSgpLmRhdGEuZWllbGwpVWQoYik7ZWxzZSByZXR1cm4gVmQoYi5mcmFtZXMpLnRoZW4oZnVuY3Rpb24oKXtVZChiKX0pfVNkPXooU2QsXCJzUEhcIik7dmFyIFRkPW51bGw7ZnVuY3Rpb24gV2QoYSl7dHJ5e3JldHVybiBSZChhLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudCwhMCl9Y2F0Y2goYil7cmV0dXJuIG51bGx9fVdkPXooV2QsXCJnQkhcIik7ZnVuY3Rpb24gWGQoYSl7dHJ5e3ZhciBiPWEuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhZEJsb2NrXCIpO3JldHVybiBSZChiLCExKX1jYXRjaChjKXtyZXR1cm4gbnVsbH19WGQ9eihYZCxcImdCV1wiKTtcbmZ1bmN0aW9uIFlkKGEpe3ZhciBiPVtdO2E9dShhLmRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKFwiaW1nXCIpKTtmb3IodmFyIGM9YS5uZXh0KCk7IWMuZG9uZTtjPWEubmV4dCgpKXt2YXIgZD1iLGU9ZC5wdXNoO2M9Yy52YWx1ZTt2YXIgZj1LZCgpO2MuY29tcGxldGU/Zi5yZXNvbHZlKCk6KEpkKGMsXCJsb2FkXCIsZi5yZXNvbHZlKSxKZChjLFwiZXJyb3JcIixmLnJlc29sdmUpKTtlLmNhbGwoZCxmLnByb21pc2UpfXJldHVybiBOZChiKX1ZZD16KFlkLFwiZ0ZIX3dmaXBcIik7XG5mdW5jdGlvbiBVZChhKXtmb3IodmFyIGI9MDtiPGEuZnJhbWVzLmxlbmd0aDtiKyspe3ZhciBjPWEuZnJhbWVzW2JdO2lmKExhKCkpe3ZhciBkPWMuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O2Q9bmV3IENjKGQub2Zmc2V0V2lkdGgsZC5vZmZzZXRIZWlnaHQpO2M9WmQoYyk7Yz1uZXcgSWQoZC53aWR0aCxkLmhlaWdodCxjKX1lbHNle2Q9V2QoYyk7dmFyIGU9WGQoYyk7JGQoYyxkLGUpP2M9bmV3IElkKDEsMSk6KGM9WmQoYyksYz1uZXcgSWQoZSxkLGMpKX1kPXt9O2M9KGQuZnc9Yy5mcmFtZVdpZHRoLGQuZmg9Yy5mcmFtZUhlaWdodCxkLmFoPWMuYmIsZCk7c2MoYS5uYW1lc1tiXStcIi5mc1wiLGMscGMuail9dGMoKX1mdW5jdGlvbiBWZChhKXtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWIucHVzaChZZChhW2NdKSk7cmV0dXJuIFByb21pc2UucmFjZShbUHJvbWlzZS5hbGwoYiksTWQoNTAwLFwidGltZWRPdXRXYWl0aW5nRm9ySW1hZ2VzXCIpXSl9VmQ9eihWZCxcImdGSFwiKTtcbnZhciBaZD1CKGZ1bmN0aW9uKGEpe3ZhciBiPUthKCkuZGF0YS5lY28/YS5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiLmNsaWNrdHJhY2tlZEFkX2pzXCIpOmEuZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChcIi5zaTEwMVwiKTthPVtdO3ZhciBjPUxhKCk7Yj11KGIpO2Zvcih2YXIgZD1iLm5leHQoKTshZC5kb25lO2Q9Yi5uZXh0KCkpZD1kLnZhbHVlLGQ9Yz8obmV3IENjKGQub2Zmc2V0V2lkdGgsZC5vZmZzZXRIZWlnaHQpKS5oZWlnaHQ6UmQoZCwhMCksYS5wdXNoKGQpO3JldHVybiBhfSxcImdBSElGXCIpO2Z1bmN0aW9uICRkKGEsYixjKXtyZXR1cm4odHlwZW9mIGI9PVwibnVtYmVyXCImJmI8MTZ8fHR5cGVvZiBjPT1cIm51bWJlclwiJiZjPDE2KSYmKGE9YS5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIikpJiZhLmlubmVySFRNTCE9XCJcIj8hMDohMX0kZD16KCRkLFwiaUNTSVwiKTt2YXIgYWU9U2Q7dmFyIGJlPWhhKFtcIi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1cIixcIlwiXSk7ZnVuY3Rpb24gY2UoYSxiKXtiPWJbYV07Ynx8KEEubG9nKFwiZnJhbWVPcHRpb25zIGlzIHVuZGVmaW5lZCBmb3IgXCIrYSxcImZBVVwiKSxiPXt9KTtyZXR1cm4gYn1jZT16KGNlLFwiZ0ZPXCIpO2Z1bmN0aW9uIGRlKGEpe3JldHVybiBmdW5jdGlvbihiLGMpe3JldHVybiB0eXBlb2YgYVtiXT09XCJ1bmRlZmluZWRcIj9jfHxudWxsOmFbYl19fWZ1bmN0aW9uIGVlKGEpe3JldHVybiBmdW5jdGlvbihiLGMpe2lmKGEuaGFzT3duUHJvcGVydHkoYikpe2I9YVtiXS5zcGxpdChcIixcIik7Zm9yKHZhciBkPTA7ZDxiLmxlbmd0aDtkKyspaWYoYltkXT09YylyZXR1cm4hMDtyZXR1cm4hMX1yZXR1cm4hMH19ZnVuY3Rpb24gZmUoYSl7cmV0dXJuKGE9YS53aWR0aCkmJmEhPVwiYXV0b1wiP2E6XCIxMDAlXCJ9XG5mdW5jdGlvbiBnZShhKXt2YXIgYj17dmE6ITEsdGQ6bnVsbCx6ZDpudWxsfTthLnZlcnRpY2FsU3BhY2luZyYmKGE9YS52ZXJ0aWNhbFNwYWNpbmcvMixiLnZhPSEwLGIudGQ9TWF0aC5mbG9vcihhKSxiLnpkPU1hdGguY2VpbChhKSk7cmV0dXJuIGJ9ZnVuY3Rpb24gaGUoYSl7aWYoYS5mb250U2l6ZVRpdGxlKXJldHVybiBhLmZvbnRTaXplVGl0bGU7YT1VYSgpO3JldHVybiBhLmRhdGEuaG18fGEuZGF0YS50PzE4Om51bGx9ZnVuY3Rpb24gaWUoYSl7dmFyIGI9W107aWYoYS53ZWJGb250RmFtaWx5KXt2YXIgYz1hLndlYkZvbnRGYW1pbHk7YS50aXRsZUJvbGQmJihjKz1cIjo0MDAsNzAwXCIpO2IucHVzaChjKX1hLndlYkZvbnRGYW1pbHlBdHRyaWJ1dGlvbiYmKGM9YS53ZWJGb250RmFtaWx5QXR0cmlidXRpb24sYS5hdHRyaWJ1dGlvbkJvbGQmJihjKz1cIjo0MDAsNzAwXCIpLGIucHVzaChjKSk7cmV0dXJuIGIubGVuZ3RoPT0wP251bGw6VmMoYmUsYi5qb2luKFwifFwiKSl9dmFyIGplPWNlOyFQYyhcIkFuZHJvaWRcIil8fFJjKCk7UmMoKTtQYyhcIlNhZmFyaVwiKSYmKFJjKCl8fChRYygpPzA6UGMoXCJDb2FzdFwiKSl8fChRYygpPzA6UGMoXCJPcGVyYVwiKSl8fChRYygpPzA6UGMoXCJFZGdlXCIpKXx8KFFjKCk/T2MoXCJNaWNyb3NvZnQgRWRnZVwiKTpQYyhcIkVkZy9cIikpfHxRYygpJiZPYyhcIk9wZXJhXCIpKTtNYXRoLm1heC5hcHBseShNYXRoLGphKE9iamVjdC52YWx1ZXMoe01nOjEsS2c6MixKZzo0LFBnOjgsT2c6MTYsTmc6MzIsRGc6NjQsUmc6MTI4LElnOjI1NixIZzo1MTIsTGc6MTAyNCxGZzoyMDQ4LFFnOjQwOTYsR2c6ODE5MixFZzoxNjM4NH0pKSk7dmFyIGtlPXt9LGxlPXt9LG1lPXt9LG5lPXt9LG9lPXt9O2Z1bmN0aW9uIHBlKCl7dGhyb3cgRXJyb3IoXCJEbyBub3QgaW5zdGFudGlhdGUgZGlyZWN0bHlcIik7fXBlLnByb3RvdHlwZS5HYT1udWxsO3BlLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmNvbnRlbnR9O3BlLnByb3RvdHlwZS5oZT1mdW5jdGlvbigpe2lmKHRoaXMuUyE9PWtlKXRocm93IEVycm9yKFwiU2FuaXRpemVkIGNvbnRlbnQgd2FzIG5vdCBvZiBraW5kIEhUTUwuXCIpO3JldHVybiBqYih0aGlzLnRvU3RyaW5nKCkpfTtmdW5jdGlvbiBxZSgpe3BlLmNhbGwodGhpcyl9QmEocWUscGUpO3FlLnByb3RvdHlwZS5TPWtlO2Z1bmN0aW9uIHJlKCl7cGUuY2FsbCh0aGlzKX1CYShyZSxwZSk7cmUucHJvdG90eXBlLlM9bGU7cmUucHJvdG90eXBlLkdhPTE7ZnVuY3Rpb24gc2UoKXtwZS5jYWxsKHRoaXMpfUJhKHNlLHBlKTtzZS5wcm90b3R5cGUuUz1uZTtzZS5wcm90b3R5cGUuR2E9MTtcbmZ1bmN0aW9uIHRlKCl7cGUuY2FsbCh0aGlzKX1CYSh0ZSxwZSk7dGUucHJvdG90eXBlLlM9b2U7dGUucHJvdG90eXBlLkdhPTE7ZnVuY3Rpb24gdWUoYSl7aWYoYSE9bnVsbClzd2l0Y2goYS5HYSl7Y2FzZSAxOnJldHVybiAxO2Nhc2UgLTE6cmV0dXJuLTE7Y2FzZSAwOnJldHVybiAwfXJldHVybiBudWxsfWZ1bmN0aW9uIHZlKGEpe3JldHVybiB3ZShhLGtlKT9hOmEgaW5zdGFuY2VvZiBpYj9GKGtiKGEpLnRvU3RyaW5nKCkpOkYoU3RyaW5nKFN0cmluZyhhKSkucmVwbGFjZSh4ZSx5ZSksdWUoYSkpfWZ1bmN0aW9uIHplKGEpe2Z1bmN0aW9uIGIoYyl7dGhpcy5jb250ZW50PWN9Yi5wcm90b3R5cGU9YS5wcm90b3R5cGU7cmV0dXJuIGZ1bmN0aW9uKGMpe3JldHVybiBuZXcgYihTdHJpbmcoYykpfX12YXIgRj1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKGMpe3RoaXMuY29udGVudD1jfWIucHJvdG90eXBlPWEucHJvdG90eXBlO3JldHVybiBmdW5jdGlvbihjLGQpe2M9bmV3IGIoU3RyaW5nKGMpKTtkIT09dm9pZCAwJiYoYy5HYT1kKTtyZXR1cm4gY319KHFlKSxBZT16ZShyZSksQmU9emUoc2UpLEc9emUodGUpO1xuZnVuY3Rpb24gQ2UoYSl7dmFyIGI9W10sYztmb3IoYyBpbiBhKWIucHVzaChjKTtyZXR1cm4gYn1mdW5jdGlvbiBIKGEsYil7cmV0dXJuIGEmJmImJmEuQ2YmJmIuQ2Y/YS5TIT09Yi5TPyExOmEudG9TdHJpbmcoKT09PWIudG9TdHJpbmcoKTphIGluc3RhbmNlb2YgcGUmJmIgaW5zdGFuY2VvZiBwZT9hLlMhPWIuUz8hMTphLnRvU3RyaW5nKCk9PWIudG9TdHJpbmcoKTphPT1ifWZ1bmN0aW9uIERlKGEpe3JldHVybiBhIGluc3RhbmNlb2YgcGU/ISFhLmNvbnRlbnQ6ISFhfWZ1bmN0aW9uIEVlKGEpe3JldHVybiBGZShTdHJpbmcoYSksZnVuY3Rpb24oKXtyZXR1cm5cIlwifSkucmVwbGFjZShHZSxcIiZsdDtcIil9dmFyIEhlPVJlZ0V4cC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkoXCJzdGlja3lcIiksSWU9bmV3IFJlZ0V4cCgoSGU/XCJcIjpcIl5cIikrXCIoPzohfC8/KFthLXpBLVpdW2EtekEtWjAtOTotXSopKVwiLEhlP1wiZ3lcIjpcImdcIik7XG5mdW5jdGlvbiBGZShhLGIpe2Zvcih2YXIgYz1bXSxkPWEubGVuZ3RoLGU9MCxmPVtdLGcsaCxrPTA7azxkOyl7c3dpdGNoKGUpe2Nhc2UgMDp2YXIgbD1hLmluZGV4T2YoXCI8XCIsayk7aWYobDwwKXtpZihjLmxlbmd0aD09PTApcmV0dXJuIGE7Yy5wdXNoKGEuc3Vic3RyaW5nKGspKTtrPWR9ZWxzZSBjLnB1c2goYS5zdWJzdHJpbmcoayxsKSksaD1sLGs9bCsxLEhlPyhJZS5sYXN0SW5kZXg9ayxsPUllLmV4ZWMoYSkpOihJZS5sYXN0SW5kZXg9MCxsPUllLmV4ZWMoYS5zdWJzdHJpbmcoaykpKSxsPyhmPVtcIjxcIixsWzBdXSxnPWxbMV0sZT0xLGsrPWxbMF0ubGVuZ3RoKTpjLnB1c2goXCI8XCIpO2JyZWFrO2Nhc2UgMTpsPWEuY2hhckF0KGsrKyk7c3dpdGNoKGwpe2Nhc2UgXCInXCI6Y2FzZSAnXCInOnZhciBtPWEuaW5kZXhPZihsLGspO208MD9rPWQ6KGYucHVzaChsLGEuc3Vic3RyaW5nKGssbSsxKSksaz1tKzEpO2JyZWFrO2Nhc2UgXCI+XCI6Zi5wdXNoKGwpO2MucHVzaChiKGYuam9pbihcIlwiKSxcbmcpKTtlPTA7Zj1bXTtoPWc9bnVsbDticmVhaztkZWZhdWx0OmYucHVzaChsKX1icmVhaztkZWZhdWx0OnRocm93IEVycm9yKCk7fWU9PT0xJiZrPj1kJiYoaz1oKzEsYy5wdXNoKFwiPFwiKSxlPTAsZj1bXSxoPWc9bnVsbCl9cmV0dXJuIGMuam9pbihcIlwiKX1mdW5jdGlvbiBKZShhLGIpe2E9YS5yZXBsYWNlKC88XFwvL2csXCI8XFxcXC9cIikucmVwbGFjZSgvXFxdXFxdPi9nLFwiXV1cXFxcPlwiKTtyZXR1cm4gYj9hLnJlcGxhY2UoL3svZyxcIiBcXFxce1wiKS5yZXBsYWNlKC99L2csXCIgXFxcXH1cIikucmVwbGFjZSgvXFwvXFwqL2csXCIvICpcIikucmVwbGFjZSgvXFxcXCQvLFwiXFxcXCBcIik6YX1mdW5jdGlvbiBJKGEpe3JldHVybiB3ZShhLGtlKT9TdHJpbmcoRWUoYS5jb250ZW50KSkucmVwbGFjZShLZSx5ZSk6U3RyaW5nKGEpLnJlcGxhY2UoeGUseWUpfWZ1bmN0aW9uIExlKGEpe3dlKGEsbmUpP2E9YS5jb250ZW50OihhPVN0cmluZyhhKSxhPU1lLnRlc3QoYSk/YTpcInpTb3l6XCIpO3JldHVybiBhfVxuZnVuY3Rpb24gTmUoYSl7d2UoYSxuZSkmJihhPWEuY29udGVudCk7cmV0dXJuKGEmJiFhLnN0YXJ0c1dpdGgoXCIgXCIpP1wiIFwiOlwiXCIpK2F9ZnVuY3Rpb24gT2UoYSl7d2UoYSxsZSl8fHdlKGEsbWUpP2E9UGUoYSk6YSBpbnN0YW5jZW9mIGViP2E9UGUoZmIoYSkpOmEgaW5zdGFuY2VvZiAkYT9hPVBlKGRiKGEpLnRvU3RyaW5nKCkpOihhPVN0cmluZyhhKSxhPVFlLnRlc3QoYSk/YS5yZXBsYWNlKFJlLFNlKTpcImFib3V0OmludmFsaWQjelNveXpcIik7cmV0dXJuIGF9ZnVuY3Rpb24gVGUoYSl7d2UoYSxsZSl8fHdlKGEsbWUpP2E9UGUoYSk6YSBpbnN0YW5jZW9mIGViP2E9UGUoZmIoYSkpOmEgaW5zdGFuY2VvZiAkYT9hPVBlKGRiKGEpLnRvU3RyaW5nKCkpOihhPVN0cmluZyhhKSxhPVVlLnRlc3QoYSk/YS5yZXBsYWNlKFJlLFNlKTpcImFib3V0OmludmFsaWQjelNveXpcIik7cmV0dXJuIGF9XG5mdW5jdGlvbiBKKGEpe3JldHVybiB3ZShhLG9lKT9KZShhLmNvbnRlbnQsITEpOmE9PW51bGw/XCJcIjpKZShTdHJpbmcoYSksITApfWZ1bmN0aW9uIFZlKGEpe2E9cmIoYS5zbGljZSgwKSxmdW5jdGlvbihiKXtyZXR1cm5cIm9mXCI9PT1ifSk7cmV0dXJuIGE9PT0tMT8tMTphKzB9ZnVuY3Rpb24gd2UoYSxiKXtyZXR1cm4gYSE9bnVsbCYmYS5TPT09Yn12YXIgV2U9e1wiXFx4MDBcIjpcIiYjMDtcIixcIlxcdFwiOlwiJiM5O1wiLFwiXFxuXCI6XCImIzEwO1wiLFwiXFx2XCI6XCImIzExO1wiLFwiXFxmXCI6XCImIzEyO1wiLFwiXFxyXCI6XCImIzEzO1wiLFwiIFwiOlwiJiMzMjtcIiwnXCInOlwiJnF1b3Q7XCIsXCImXCI6XCImYW1wO1wiLFwiJ1wiOlwiJiMzOTtcIixcIi1cIjpcIiYjNDU7XCIsXCIvXCI6XCImIzQ3O1wiLFwiPFwiOlwiJmx0O1wiLFwiPVwiOlwiJiM2MTtcIixcIj5cIjpcIiZndDtcIixcImBcIjpcIiYjOTY7XCIsXCJcXHUwMDg1XCI6XCImIzEzMztcIixcIlxcdTAwYTBcIjpcIiYjMTYwO1wiLFwiXFx1MjAyOFwiOlwiJiM4MjMyO1wiLFwiXFx1MjAyOVwiOlwiJiM4MjMzO1wifTtcbmZ1bmN0aW9uIHllKGEpe3JldHVybiBXZVthXX12YXIgWGU9e1wiXFx4MDBcIjpcIlxcXFwwIFwiLFwiXFxiXCI6XCJcXFxcOCBcIixcIlxcdFwiOlwiXFxcXDkgXCIsXCJcXG5cIjpcIlxcXFxhIFwiLFwiXFx2XCI6XCJcXFxcYiBcIixcIlxcZlwiOlwiXFxcXGMgXCIsXCJcXHJcIjpcIlxcXFxkIFwiLCdcIic6XCJcXFxcMjIgXCIsXCImXCI6XCJcXFxcMjYgXCIsXCInXCI6XCJcXFxcMjcgXCIsXCIoXCI6XCJcXFxcMjggXCIsXCIpXCI6XCJcXFxcMjkgXCIsXCIqXCI6XCJcXFxcMmEgXCIsXCIvXCI6XCJcXFxcMmYgXCIsXCI6XCI6XCJcXFxcM2EgXCIsXCI7XCI6XCJcXFxcM2IgXCIsXCI8XCI6XCJcXFxcM2MgXCIsXCI9XCI6XCJcXFxcM2QgXCIsXCI+XCI6XCJcXFxcM2UgXCIsXCJAXCI6XCJcXFxcNDAgXCIsXCJcXFxcXCI6XCJcXFxcNWMgXCIsXCJ7XCI6XCJcXFxcN2IgXCIsXCJ9XCI6XCJcXFxcN2QgXCIsXCJcXHUwMDg1XCI6XCJcXFxcODUgXCIsXCJcXHUwMGEwXCI6XCJcXFxcYTAgXCIsXCJcXHUyMDI4XCI6XCJcXFxcMjAyOCBcIixcIlxcdTIwMjlcIjpcIlxcXFwyMDI5IFwifTtmdW5jdGlvbiBZZShhKXtyZXR1cm4gWGVbYV19XG52YXIgWmU9e1wiXFx4MDBcIjpcIiUwMFwiLFwiXFx1MDAwMVwiOlwiJTAxXCIsXCJcXHUwMDAyXCI6XCIlMDJcIixcIlxcdTAwMDNcIjpcIiUwM1wiLFwiXFx1MDAwNFwiOlwiJTA0XCIsXCJcXHUwMDA1XCI6XCIlMDVcIixcIlxcdTAwMDZcIjpcIiUwNlwiLFwiXFx1MDAwN1wiOlwiJTA3XCIsXCJcXGJcIjpcIiUwOFwiLFwiXFx0XCI6XCIlMDlcIixcIlxcblwiOlwiJTBBXCIsXCJcXHZcIjpcIiUwQlwiLFwiXFxmXCI6XCIlMENcIixcIlxcclwiOlwiJTBEXCIsXCJcXHUwMDBlXCI6XCIlMEVcIixcIlxcdTAwMGZcIjpcIiUwRlwiLFwiXFx1MDAxMFwiOlwiJTEwXCIsXCJcXHUwMDExXCI6XCIlMTFcIixcIlxcdTAwMTJcIjpcIiUxMlwiLFwiXFx1MDAxM1wiOlwiJTEzXCIsXCJcXHUwMDE0XCI6XCIlMTRcIixcIlxcdTAwMTVcIjpcIiUxNVwiLFwiXFx1MDAxNlwiOlwiJTE2XCIsXCJcXHUwMDE3XCI6XCIlMTdcIixcIlxcdTAwMThcIjpcIiUxOFwiLFwiXFx1MDAxOVwiOlwiJTE5XCIsXCJcXHUwMDFhXCI6XCIlMUFcIixcIlxcdTAwMWJcIjpcIiUxQlwiLFwiXFx1MDAxY1wiOlwiJTFDXCIsXCJcXHUwMDFkXCI6XCIlMURcIixcIlxcdTAwMWVcIjpcIiUxRVwiLFwiXFx1MDAxZlwiOlwiJTFGXCIsXCIgXCI6XCIlMjBcIiwnXCInOlwiJTIyXCIsXCInXCI6XCIlMjdcIixcIihcIjpcIiUyOFwiLFxuXCIpXCI6XCIlMjlcIixcIjxcIjpcIiUzQ1wiLFwiPlwiOlwiJTNFXCIsXCJcXFxcXCI6XCIlNUNcIixcIntcIjpcIiU3QlwiLFwifVwiOlwiJTdEXCIsXCJcXHUwMDdmXCI6XCIlN0ZcIixcIlxcdTAwODVcIjpcIiVDMiU4NVwiLFwiXFx1MDBhMFwiOlwiJUMyJUEwXCIsXCJcXHUyMDI4XCI6XCIlRTIlODAlQThcIixcIlxcdTIwMjlcIjpcIiVFMiU4MCVBOVwiLFwiXFx1ZmYwMVwiOlwiJUVGJUJDJTgxXCIsXCJcXHVmZjAzXCI6XCIlRUYlQkMlODNcIixcIlxcdWZmMDRcIjpcIiVFRiVCQyU4NFwiLFwiXFx1ZmYwNlwiOlwiJUVGJUJDJTg2XCIsXCJcXHVmZjA3XCI6XCIlRUYlQkMlODdcIixcIlxcdWZmMDhcIjpcIiVFRiVCQyU4OFwiLFwiXFx1ZmYwOVwiOlwiJUVGJUJDJTg5XCIsXCJcXHVmZjBhXCI6XCIlRUYlQkMlOEFcIixcIlxcdWZmMGJcIjpcIiVFRiVCQyU4QlwiLFwiXFx1ZmYwY1wiOlwiJUVGJUJDJThDXCIsXCJcXHVmZjBmXCI6XCIlRUYlQkMlOEZcIixcIlxcdWZmMWFcIjpcIiVFRiVCQyU5QVwiLFwiXFx1ZmYxYlwiOlwiJUVGJUJDJTlCXCIsXCJcXHVmZjFkXCI6XCIlRUYlQkMlOURcIixcIlxcdWZmMWZcIjpcIiVFRiVCQyU5RlwiLFwiXFx1ZmYyMFwiOlwiJUVGJUJDJUEwXCIsXCJcXHVmZjNiXCI6XCIlRUYlQkMlQkJcIixcblwiXFx1ZmYzZFwiOlwiJUVGJUJDJUJEXCJ9O2Z1bmN0aW9uIFNlKGEpe3JldHVybiBaZVthXX1cbnZhciB4ZT0vW1xceDAwXFx4MjJcXHgyNlxceDI3XFx4M2NcXHgzZV0vZyxLZT0vW1xceDAwXFx4MjJcXHgyN1xceDNjXFx4M2VdL2csJGU9L1tcXHgwMFxceDA4LVxceDBkXFx4MjJcXHgyNi1cXHgyYVxcL1xceDNhLVxceDNlQFxcXFxcXHg3YlxceDdkXFx4ODVcXHhhMFxcdTIwMjhcXHUyMDI5XS9nLFJlPS9bXFx4MDAtIFxceDIyXFx4MjctXFx4MjlcXHgzY1xceDNlXFxcXFxceDdiXFx4N2RcXHg3ZlxceDg1XFx4YTBcXHUyMDI4XFx1MjAyOVxcdWZmMDFcXHVmZjAzXFx1ZmYwNFxcdWZmMDYtXFx1ZmYwY1xcdWZmMGZcXHVmZjFhXFx1ZmYxYlxcdWZmMWRcXHVmZjFmXFx1ZmYyMFxcdWZmM2JcXHVmZjNkXS9nLFFlPS9eKD8hamF2YXNjcmlwdDopKD86W2EtejAtOSsuLV0rOnxbXiY6XFwvPyNdKig/OltcXC8/I118JCkpL2ksVWU9L15bXiY6XFwvPyNdKig/OltcXC8/I118JCl8Xmh0dHBzPzp8XmZ0cDp8XmRhdGE6aW1hZ2VcXC9bYS16MC05Ky1dKztiYXNlNjQsW2EtejAtOStcXC9dKz0qJHxeYmxvYjovaSxNZT0vXig/IW9ufHNyY3woPzphY3Rpb258YXJjaGl2ZXxiYWNrZ3JvdW5kfGNpdGV8Y2xhc3NpZHxjb2RlYmFzZXxjb250ZW50fGRhdGF8ZHN5bmN8aHJlZnxodHRwLWVxdWl2fGxvbmdkZXNjfHN0eWxlfHVzZW1hcClcXHMqJCkoPzpbYS16MC05XyQ6LV0qKSQvaTtcbmZ1bmN0aW9uIFBlKGEpe3JldHVybiBTdHJpbmcoYSkucmVwbGFjZShSZSxTZSl9dmFyIEdlPS88L2c7LypcbiBDb3B5cmlnaHQgVGhlIENsb3N1cmUgTGlicmFyeSBBdXRob3JzLlxuIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4qL1xuZnVuY3Rpb24gYWYoYSxiKXtiPWJ8fFljKCk7aWYoYSYmYS5jZCliPWEuY2QoKTtlbHNle2I9Yi5jcmVhdGVFbGVtZW50KFwiRElWXCIpO2E6aWYoQWEoYSkpe2lmKGEuaGUmJihhPWEuaGUoKSxhIGluc3RhbmNlb2YgaWIpKWJyZWFrIGE7YT1VYyhcInpTb3l6XCIpfWVsc2UgYT1VYyhTdHJpbmcoYSkpO2IuaW5uZXJIVE1MPWtiKGEpfXJldHVybiBiLmNoaWxkTm9kZXMubGVuZ3RoPT0xJiYoYT1iLmZpcnN0Q2hpbGQsYS5ub2RlVHlwZT09MSk/YTpifXZhciBiZj17fTtmdW5jdGlvbiBjZihhKXt2YXIgYj1hLmJhLGM9YS5BZixkPWEuRmYsZT1hLkdlLGY9YS52ZyxnPWEudGUsaD1hLlZlLGs9YS5XZSxsPWEuUGUsbT1hLlFlLHA9YS5PZSxyPWEuZm9udEZhbWlseSx0PWEua2Ysdj1hLnBmLHc9YS5sZixDPWEucWcsUj1hLnJnLFA9YS5aZixVPWEuYWcsdmE9YS5ZZixhYj1hLmNnLFFhPWEuWGYsVz1hLktmLFg9YS5yZSxNYz1hLkNlLFNiPWEuRGUsVGI9YS5FZSxOYz1hLkJlLEs9YS5KZixiYj1hLnhnLFk9YS55ZyxiYT1hLnplLHdhPWEuemYsd2c9YS5MZTthPWEuS2U7dmFyIEtpPWYudmE/XCJwYWRkaW5nLXRvcDpcIitKKGYudGQpK1wicHg7IHBhZGRpbmctYm90dG9tOlwiK0ooZi56ZCkrXCJweDtcIjpjfHxkP1wicGFkZGluZzo3cHggMDtcIjpcIlwiO3c9dz9KKHcpOmQ/XCIxNVwiOlwiMTNcIjtmPVwiPHN0eWxlPiNyZXNwb25zZV9kZWJ1Z19vdXRwdXR7bWF4LWhlaWdodDo1MDBweDsgb3ZlcmZsb3c6YXV0bzt9Ym9keXtcIisoYz9cIi13ZWJraXQtdGV4dC1zaXplLWFkanVzdDoxMDAlO1wiOlxuXCJcIikrXCJjb2xvcjpcIisoaD9KKGgpOlwiIzAwMFwiKStcIjsgZm9udC1mYW1pbHk6XCIrKGJiP1wiJ1wiK1N0cmluZyhiYikucmVwbGFjZSgkZSxZZSkrXCInLFwiOlwiXCIpKyhEZShyKT9KKHIpOlwiYXJpYWxcIikrXCIsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTpcIisoY3x8ZD9cIjE0XCI6XCIxMlwiKStcInB4OyB3aWR0aDpcIitKKGUpK1wiOyBwYWRkaW5nOjBweDsgbWFyZ2luOjBweDtcIisobSYmKFNifHxYKT9cInBhZGRpbmctcmlnaHQ6MnB4O1wiOlwiXCIpKyh3YSYmYj9cImRpcmVjdGlvbjpydGw7XCI6XCJcIikrXCJ9Ym9keXstd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6cmdiYSgwLDAsMCwwKTsgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOnRyYW5zcGFyZW50O31hey13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjppbml0aWFsO30uYWR7cGFkZGluZzoycHggMDsgbWFyZ2luOjBweDsgd29yZC13cmFwOmJyZWFrLXdvcmQ7XCIrS2krKGc/XCJib3JkZXItYm90dG9tOjFweCBzb2xpZCBcIitKKGcpK1wiO1wiOlwiXCIpK1wifVwiKyhRYSYmXG4hd2E/XCIuXCIrSihcImFfXCIpK1wiOmhvdmVye2JhY2tncm91bmQtY29sb3I6XCIrSihRYSkrXCI7fVwiOlwiXCIpK1wiLmFkLmZ7XCIrKGYudmE/XCJwYWRkaW5nLXRvcDoycHg7XCI6XCJcIikrXCJ9LmFkLmZye1wiKyhmLnZhP1wicGFkZGluZy10b3A6MnB4O1wiOlwiXCIpK1wifS5hZC5se1wiKyhmLnZhP1wicGFkZGluZy1ib3R0b206MnB4O1wiOlwiXCIpKyhnP1wiYm9yZGVyLWJvdHRvbTowcHg7XCI6XCJcIikrXCJ9LmFkLmxye1wiKyhmLnZhP1wicGFkZGluZy1ib3R0b206MnB4O1wiOlwiXCIpK1wifSNhZEJsb2NrIGJ7XCIrKGF8fHdhP1wiXCI6XCJmb250LXdlaWdodDpub3JtYWw7XCIpK1wifS5hZCBzcGFue193aWR0aDo5OSU7fSNhZEJsb2Nre2JhY2tncm91bmQ6I0ZGRiBub25lIHJlcGVhdCBzY3JvbGwgMCAwOyBtYXJnaW46MDsgcGFkZGluZzowO1wiKyhsP1wiYmFja2dyb3VuZC1jb2xvcjpcIitKKGwpK1wiO1wiOlwiXCIpKyhtJiZNYz9cImJvcmRlci1sZWZ0OjFweCBzb2xpZCBcIitKKG0pK1wiO1wiOlwiXCIpKyhtJiZTYj9cImJvcmRlci1yaWdodDoxcHggc29saWQgXCIrXG5KKG0pK1wiO1wiOlwiXCIpKyhtJiZUYj9cImJvcmRlci10b3A6MXB4IHNvbGlkIFwiK0oobSkrXCI7XCI6XCJcIikrKG0mJk5jP1wiYm9yZGVyLWJvdHRvbToxcHggc29saWQgXCIrSihtKStcIjtcIjpcIlwiKStcIn0jYWRCbG9jayBoMntmb250LXNpemU6XCIrdytcInB4OyBmb250LXdlaWdodDpub3JtYWw7XCIrKGJhP1wicGFkZGluZy1ib3R0b206XCIrSihiYSkrXCJweDtcIjpcInBhZGRpbmc6MDtcIikrXCJtYXJnaW46MDtcIisoRGUodCl8fFk/XCJmb250LWZhbWlseTpcIisoWT9cIidcIitTdHJpbmcoWSkucmVwbGFjZSgkZSxZZSkrXCInLFwiOlwiXCIpKyhEZSh0KT9KKHQpK1wiLFwiOlwiXCIpK1wiIHNhbnMtc2VyaWY7XCI6XCJcIikrXCJ9I2FkQmxvY2sgc3Bhbi5saEhlYWRlcnttYXJnaW46M3B4IDRweCAwO30jYWRCbG9jayBoMiBhLCAjYWRCbG9jayBoMntjb2xvcjpcIisocD9KKHApOlwiIzY3Njc2N1wiKStcIjsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7fS5cIitKKFwiY19cIikrXCJ7Y29sb3I6XCIrSihrKStcIjt9LlwiK0ooXCJjX1wiKStcIntcIisodj9cImZvbnQtc2l6ZTpcIitcbkoodikrXCJweDtcIjpcIlwiKStcImZvbnQtd2VpZ2h0OlwiKyhDP1wiYm9sZFwiOlwibm9ybWFsXCIpK1wiO30uXCIrSihcImNfXCIpK1wie1wiKyhSP1wiZGlzcGxheTppbmxpbmUtYmxvY2s7XCI6XCJcIikrXCJsaW5lLWhlaWdodDpcIisoSz9KKEspK1wicHhcIjpcIjEuNGVtXCIpK1wiO1wiKyhXP1widGV4dC1kZWNvcmF0aW9uOm5vbmU7XCI6XCJcIikrXCJtYXJnaW46MDsgcGFkZGluZzowO31cIisoYWI/XCIuXCIrSihcImNfXCIpK1wiOmhvdmVyIHt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO31he3RleHQtZGVjb3JhdGlvbjpub25lO31cIjpcIlwiKStcImgyIGE6aG92ZXJ7Y29sb3I6XCIrKHA/SihwKTpcIiM2NzY3NjdcIikrXCI7IHRleHQtZGVjb3JhdGlvbjpub25lOyBmb250LXdlaWdodDpub3JtYWw7IGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7fWE6aG92ZXJ7XCIrKFA/XCJmb250LXdlaWdodDpib2xkO1wiOlwiXCIpKyhVP1wiY29sb3I6XCIrSihVKStcIjtcIjpcIlwiKSsodmE/XCJiYWNrZ3JvdW5kLWNvbG9yOlwiK0oodmEpK1wiO1wiOlwiXCIpK1wifVwiO2U9Yj9cInJpZ2h0XCI6XG5cImxlZnRcIjtmKz13Zz9cIi5hZEljb257dmlzaWJpbGl0eTp2aXNpYmxlOyBib3JkZXI6bm9uZTsgZmxvYXQ6XCIrSihlKStcIjt9LmFkRCwgLlwiK0ooXCJhX1wiKStcIntkaXNwbGF5OmJsb2NrOyBvdmVyZmxvdzpoaWRkZW47fVwiOlwiXCI7Yj1jP1wiLmFkRHtjbGVhcjpcIitKKGI/XCJsZWZ0XCI6XCJyaWdodFwiKStcIjt9XCI6XCJcIjtjPWN8fGQ/RyhcImJvZHl7Zm9udC1mYW1pbHk6XCIrKGJiP1wiJ1wiK1N0cmluZyhiYikucmVwbGFjZSgkZSxZZSkrXCInLFwiOlwiXCIpKyhEZShyKT9KKHIpK1wiLFwiOlwiXCIpKydcIlJvYm90b1wiLFwiSGVsdmV0aWNhIE5ldWVcIixhcmlhbCxzYW5zLXNlcmlmO30uYWR7bWFyZ2luOjA7IHBhZGRpbmc6MDt9LicrSihcImNfXCIpK1wie2xpbmUtaGVpZ2h0OlwiKyhLP0ooSyk6XCIyMFwiKStcInB4OyBtYXJnaW46MDt9dGR7cGFkZGluZzowcHg7fS5hZFN0ZHtjbGVhcjpub25lO31cIisod2c/XCIuYWRJY29ue21hcmdpbi1cIitKKGUpK1wiOjBweDt9XCI6XCJcIikrXCIuYWRTdGR7Y2xlYXI6bm9uZTt9XCIpOlwiXCI7cmV0dXJuIEYoZitcbihiK2MrXCI8L3N0eWxlPlwiKSl9O2Z1bmN0aW9uIGRmKGEpe3ZhciBiPWEuYmEsYz1hLnR5cGUsZD1hLndmLGU9YS52ZixmPWEuUmUsZz1hLlNlLGg9YS5VZSxrPWEuQ2csbD1hLkFnLG09YS5uZixwPWEubWYscj1hLnVmLHQ9YS50Zix2PWEuVGUsdz1hLkJnLEM9YS5RZixSPWEueWUsUD1hLnpnLFU9YS5BZSx2YT1hLnNnO2E9YS5zZTtyZXR1cm4gRihcIjxzdHlsZT5cIisoRGUoUCk/XCJAaW1wb3J0IHVybChcIisod2UoUCxtZSk/UC5jb250ZW50OlAgaW5zdGFuY2VvZiAkYT9kYihQKS50b1N0cmluZygpOlwiYWJvdXQ6aW52YWxpZCN6U295elwiKStcIik7XCI6XCJcIikrKFI/XCIjYWRCbG9jayBoMiwgaDIgYTpob3Zlcntmb250LXdlaWdodDpib2xkO31cIjpcIlwiKSsoVT9cIiNhZEJsb2NrIGgye3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XCI6XCJcIikrKHZhP1wiLlwiK0ooXCJjX1wiKStcInt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7fVwiOlwiXCIpKyhhP1wiLlwiK0ooXCJhX1wiKStcIntib3JkZXItd2lkdGg6XCIrSihhKStcInB4O31cIjpcIlwiKSsoYz09XCJzZWFyY2hib3hcIj9cblwiLnNiaXtcIisoaz9cIndpZHRoOlwiK0ooaykrXCJweDtcIjpcIndpZHRoOjEwMCU7XCIpKyhtP1wiZm9udC1zaXplOlwiK0oobSkrXCJweDtcIjpcImZvbnQtc2l6ZToxNnB4O1wiKSsoZD9cImJvcmRlcjowIG5vbmU7XCI6XCJcIikrKGY/XCJiYWNrZ3JvdW5kLWNvbG9yOlwiK0ooZikrXCI7XCI6XCJcIikrKHI/XCJoZWlnaHQ6XCIrSihyKStcInB4O1wiOlwiXCIpKyhDP1wiYm9yZGVyLXJhZGl1czpcIitKKEMpK1wicHg7XCI6XCJcIikrXCJ9XCIrKGs/XCJcIjpcIi5zYmktdGR7d2lkdGg6MTAwJTt9XCIpK1wiLnNiYntjdXJzb3I6cG9pbnRlcjtcIisocD9cImZvbnQtc2l6ZTpcIitKKHApK1wicHg7XCI6XCJmb250LXNpemU6MTZweDtcIikrXCJtYXJnaW4tXCIrKGI/XCJyaWdodFwiOlwibGVmdFwiKStcIjoxNXB4O1wiKyhlP1wiYm9yZGVyOjAgbm9uZTtcIjoodj9cImJvcmRlci1jb2xvcjpcIitKKHYpK1wiO1wiOlwiXCIpKyh3P1wiYm9yZGVyLXdpZHRoOlwiK0oodykrXCJweDtcIjpcIlwiKSsoQz9cImJvcmRlci1yYWRpdXM6XCIrSihDKStcInB4O1wiOlwiXCIpKSsoZz9cImJhY2tncm91bmQ6XCIrSihnKStcIjtcIjpcblwiXCIpKyhoP1wiY29sb3I6XCIrSihoKStcIjtcIisoaD09XCJ0cmFuc3BhcmVudFwiP1wiZmlsdGVyOmFscGhhKG9wYWNpdHk9MCk7XCI6XCJcIik6XCJcIikrKGw/XCJ3aWR0aDpcIitKKGwpK1wicHg7XCI6XCJcIikrKHQ/XCJoZWlnaHQ6XCIrSih0KStcInB4O1wiOlwiXCIpK1wifVwiOlwiXCIpK1wiPC9zdHlsZT5cIil9O3ZhciBlZj0tMTtmdW5jdGlvbiBmZihhKXtyZXR1cm4gYT9hOlVhKCkuZGF0YS5obXx8VWEoKS5kYXRhLnQ/XCIjYmRiZGJkXCI6bnVsbH1cbmZ1bmN0aW9uIGdmKGEsYixjKXtmdW5jdGlvbiBkKHApe3JldHVybihwPWUocCkpP0cocCk6dm9pZCAwfXZhciBlPWRlKGIpLGY9ZWUoYiksZz1lKFwidHlwZVwiKXx8XCJhZHNcIixoPVJhKCksaz1VYSgpLGw9XCIjMDAwMENDXCI7aWYoay5kYXRhLmhtfHxrLmRhdGEudClsPVwiIzFhMGRhYlwiO2w9ZShcImNvbG9yVGl0bGVMaW5rXCIsbCk7Zj17YmE6TmEoKS5iYSgpLEdlOmZlKGIpLHZnOmdlKGIpLHRlOmZmKGUoXCJjb2xvckFkU2VwYXJhdG9yXCIpKSxYZzoyMCxWZTplKFwiY29sb3JUZXh0XCIpLFdlOmwsUGU6ZShcImNvbG9yQmFja2dyb3VuZFwiKSxRZTplKFwiY29sb3JCb3JkZXJcIiksT2U6ZShcImNvbG9yQXR0cmlidXRpb25cIiksZm9udEZhbWlseTpkKFwiZm9udEZhbWlseVwiKSxrZjpkKFwiZm9udEZhbWlseUF0dHJpYnV0aW9uXCIpLHBmOmhlKGIpfHxlKFwiZm9udFNpemVUaXRsZVwiKSxsZjplKFwiZm9udFNpemVBdHRyaWJ1dGlvblwiKSxxZzplKFwidGl0bGVCb2xkXCIpLHJnOiFrLmRhdGEuaG0sWmY6ZShcInJvbGxvdmVyTGlua0JvbGRcIiksXG5hZzplKFwicm9sbG92ZXJMaW5rQ29sb3JcIiksWWY6ZShcInJvbGxvdmVyTGlua0JhY2tncm91bmRDb2xvclwiKSxjZzplKFwicm9sbG92ZXJMaW5rVW5kZXJsaW5lXCIpLFhmOmUoXCJyb2xsb3ZlckFkQmFja2dyb3VuZENvbG9yXCIpLEtmOmUoXCJub1RpdGxlVW5kZXJsaW5lXCIpLFRnOmYoXCJhZEJvcmRlclNlbGVjdGlvbnNcIixcImxlZnRcIikscmU6ZihcImFkQm9yZGVyU2VsZWN0aW9uc1wiLFwicmlnaHRcIiksVWc6ZihcImFkQm9yZGVyU2VsZWN0aW9uc1wiLFwidG9wXCIpLFNnOmYoXCJhZEJvcmRlclNlbGVjdGlvbnNcIixcImJvdHRvbVwiKSxDZTpmKFwiYm9yZGVyU2VsZWN0aW9uc1wiLFwibGVmdFwiKSxEZTpmKFwiYm9yZGVyU2VsZWN0aW9uc1wiLFwicmlnaHRcIiksRWU6ZihcImJvcmRlclNlbGVjdGlvbnNcIixcInRvcFwiKSxCZTpmKFwiYm9yZGVyU2VsZWN0aW9uc1wiLFwiYm90dG9tXCIpLEpmOmUoXCJsaW5lSGVpZ2h0VGl0bGVcIiksemU6ZShcImF0dHJpYnV0aW9uU3BhY2luZ0JlbG93XCIpLHpmOiEwLEFmOiEhay5kYXRhLmhtLEZmOiEhay5kYXRhLnQsXG5MZTohIWguZGF0YS5jdWNhaSxLZTohIWguZGF0YS5jZ2FifTtmLnhnPWUoXCJ3ZWJGb250RmFtaWx5XCIpO2YueWc9ZShcIndlYkZvbnRGYW1pbHlBdHRyaWJ1dGlvblwiKTtmPWNmKGYpO2hmKGYsYSk7Yj1pZShiKTtnPXtiYTpOYSgpLmJhKCksdHlwZTpnLHdmOmUoXCJoaWRlU2VhcmNoSW5wdXRCb3JkZXJcIiksdmY6ZShcImhpZGVTZWFyY2hCdXR0b25Cb3JkZXJcIiksUmU6ZShcImNvbG9yU2VhcmNoQm94XCIpLFNlOmUoXCJjb2xvclNlYXJjaEJ1dHRvblwiKSxVZTplKFwiY29sb3JTZWFyY2hCdXR0b25UZXh0XCIpLENnOmUoXCJ3aWR0aFNlYXJjaElucHV0XCIpLEFnOmUoXCJ3aWR0aFNlYXJjaEJ1dHRvblwiKSxuZjplKFwiZm9udFNpemVTZWFyY2hJbnB1dFwiKSxtZjplKFwiZm9udFNpemVTZWFyY2hCdXR0b25cIiksdWY6ZShcImhlaWdodFNlYXJjaElucHV0XCIpLHRmOmUoXCJoZWlnaHRTZWFyY2hCdXR0b25cIiksVGU6ZShcImNvbG9yU2VhcmNoQnV0dG9uQm9yZGVyXCIpLEJnOmUoXCJ3aWR0aFNlYXJjaEJ1dHRvbkJvcmRlclwiKSxcblFmOmUoXCJyYWRpdXNTZWFyY2hJbnB1dEJvcmRlclwiKSx5ZTplKFwiYXR0cmlidXRpb25Cb2xkXCIpLEFlOmUoXCJhdHRyaWJ1dGlvblVwcGVyY2FzZVwiKSxzZzplKFwidGl0bGVVcHBlcmNhc2VcIiksemc6YixzZTplKFwiYWRCb3JkZXJXaWR0aFwiKX07aWYoYiYmZWY9PS0xKXtlZj01O3ZhciBtPWZ1bmN0aW9uKCl7ZWY+MCYmKGFlKGMpLGVmLS0sc2V0VGltZW91dChtLDFFMykpfTttKCl9Zz1kZihnKTtoZihnLGEpfWZ1bmN0aW9uIGhmKGEsYil7Yi5hcHBlbmRDaGlsZChhZihhKSl9O2Z1bmN0aW9uIGpmKCl7dGhpcy5yYj10aGlzLnJiO3RoaXMuTWI9dGhpcy5NYn1qZi5wcm90b3R5cGUucmI9ITE7amYucHJvdG90eXBlLmRpc3Bvc2U9ZnVuY3Rpb24oKXt0aGlzLnJifHwodGhpcy5yYj0hMCx0aGlzLlQoKSl9O2pmLnByb3RvdHlwZVtTeW1ib2wuZGlzcG9zZV09ZnVuY3Rpb24oKXt0aGlzLmRpc3Bvc2UoKX07amYucHJvdG90eXBlLlQ9ZnVuY3Rpb24oKXtpZih0aGlzLk1iKWZvcig7dGhpcy5NYi5sZW5ndGg7KXRoaXMuTWIuc2hpZnQoKSgpfTtmdW5jdGlvbiBrZihhLGIpe2EuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsZnVuY3Rpb24oYyl7Yy5idXR0b24hPT0yJiZiKGMpfSl9O2Z1bmN0aW9uIGxmKGEpe3ZhciBiPXdpbmRvdy5sb2NhdGlvbi5wcm90b2NvbD09XCJodHRwc1wiO2E9YS5jbGlja3RyYWNrVXJsO3JldHVybiBSYSgpLmRhdGEuY3QmJnphKGEpP3FiKGEsZnVuY3Rpb24oYyl7cmV0dXJuIShjLmluZGV4T2YoXCJodHRwOlwiKT09MCYmYil9KTpbXX1cbmZ1bmN0aW9uIG1mKGEsYil7YT1hLmdldEVsZW1lbnRzQnlUYWdOYW1lKFwiYVwiKTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKyl7dmFyIGQ9YVtjXTsoZC5oYXNBdHRyaWJ1dGU/ZC5oYXNBdHRyaWJ1dGUoXCJkYXRhLW5vdHJhY2tcIik6ZC5nZXRBdHRyaWJ1dGUoXCJkYXRhLW5vdHJhY2tcIikpfHxrZihkLGZ1bmN0aW9uKCl7Zm9yKHZhciBlPVtdLGY9dShiKSxnPWYubmV4dCgpOyFnLmRvbmU7Zz1mLm5leHQoKSlnPW5ldyBIYihnLnZhbHVlKSx5KGcsXCJuY1wiLFtNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkqOUU2KSwobmV3IERhdGUpLmdldFRpbWUoKV0uam9pbihcIlwiKSksZS5wdXNoKEliKGcpKTtpZih3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24pZm9yKGU9dShlKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSl3aW5kb3cubmF2aWdhdG9yLnNlbmRCZWFjb24oZi52YWx1ZSk7ZWxzZSBmb3IoZT11KGUpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXdiKGYudmFsdWUpfSl9fVxuZnVuY3Rpb24gbmYoYSxiLGMpe2lmKFJhKCkuZGF0YS5jdCYmKGE9bGYoYSksYS5sZW5ndGg+MCkpaWYoUmEoKS5kYXRhLmFsY3Qpe2M9d2QoXCJibG9ja1wiLFwiXCIrYyxhKTt2YXIgZD1CZCgpP1wiY2xpY2t0cmFja2VkQWRfanNcIjpcImJfXCI7YT1zYihhZChcImRpdlwiLGQsYikpO2E9YS5jb25jYXQoc2IoYWQoXCJ0clwiLGQsYikpKTthPWEuY29uY2F0KHNiKGFkKFwibGlcIixkLGIpKSk7dmFyIGU7Zm9yKGI9MDtlPWFbYl07YisrKWQ9YyxkPXdkKFwiYWRcIixcIlwiKyhiKzEpLGQpLG1mKGUsZCl9ZWxzZSBtZihiLGEpfTt2YXIgb2Y9QihmdW5jdGlvbihhLGIpe3ZhciBjPWEucmVzdWx0c1BhZ2VCYXNlVXJsLGQ9YS5yZXN1bHRzUGFnZVF1ZXJ5UGFyYW0sZT1iWzBdJiZiWzBdLmFkdHlwZTtiPXUoYik7Zm9yKHZhciBmPWIubmV4dCgpOyFmLmRvbmU7Zj1iLm5leHQoKSl7Zj1mLnZhbHVlO2UmJihmPWZbZV0pO3ZhciBnPWYuc3QsaD1mLmFmZHQ7aWYoZyE9bnVsbCYmaCE9bnVsbCl7aWYoIWMpdGhyb3cgWWIoXCJyZXN1bHRzUGFnZUJhc2VVcmwgbmVlZHMgdG8gYmUgc2V0LlwiKTt2YXIgaz1uZXcgSGIoYyk7eShrLGQsZyk7eShrLFwiYWZkVG9rZW5cIixoKTthLnBlcnNvbmFsaXplZEFkcyE9bnVsbCYmeShrLFwicGNzYVwiLFwiXCIrYS5wZXJzb25hbGl6ZWRBZHMpO2YubD1JYihrKTtmLnU9SWIoayl9fX0sXCJmUlNDTFwiKTtmdW5jdGlvbiBwZigpe3ZhciBhPWF8fHt9O3JldHVybiBGKFwiPHN0eWxlXCIrKGEuWmc/JyBkYXRhLXBlcm1hbmVudD1cInRydWVcIic6XCJcIikrXCI+Ym9keXstd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6MTAwJTsgZm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjsgbWFyZ2luOjA7fWRpdntcIitxZigwKStcIm1heC13aWR0aDoxMDAlO31zcGFuOmxhc3QtY2hpbGQsIGRpdjpsYXN0LWNoaWxke1wiK3FmKDEpK1wifS5cIitKKFwid19cIikrXCJ7XCIrcWYoMSkrXCJ9LlwiK0ooXCJqX1wiKStcIj5zcGFuOmxhc3QtY2hpbGQsIC5cIitKKFwial9cIikrXCI+ZGl2Omxhc3QtY2hpbGQsIC5cIitKKFwieF9cIikrXCIsIC5cIitKKFwieF9cIikrXCI6bGFzdC1jaGlsZHtcIitxZigwKStcIn0uXCIrSihcImxfXCIpK1wiey1tcy1vdmVyZmxvdy1zdHlsZTpub25lOyBzY3JvbGxiYXItd2lkdGg6bm9uZTt9LlwiK0ooXCJsX1wiKStcIjo6LXdlYmtpdC1zY3JvbGxiYXJ7ZGlzcGxheTpub25lO31he3RleHQtZGVjb3JhdGlvbjpub25lOyB0ZXh0LXRyYW5zZm9ybTpub25lOyBjb2xvcjppbmhlcml0OyBkaXNwbGF5OmlubGluZS1ibG9jazt9c3BhbntcIitcbnFmKDApK1wiZGlzcGxheTppbmxpbmUtYmxvY2s7IG92ZXJmbG93OmhpZGRlbjsgdGV4dC10cmFuc2Zvcm06bm9uZTt9aW1ne2JvcmRlcjpub25lOyBtYXgtd2lkdGg6MTAwJTsgbWF4LWhlaWdodDoxMDAlO30uXCIrSihcImlfXCIpK1wie2Rpc3BsYXk6LW1zLWZsZXhib3g7IGRpc3BsYXk6LXdlYmtpdC1ib3g7IGRpc3BsYXk6LXdlYmtpdC1mbGV4OyBkaXNwbGF5OmZsZXg7XCIrcmYoXCJmbGV4LXN0YXJ0XCIpK1wiYm94LXNpemluZzpib3JkZXItYm94OyBvdmVyZmxvdzpoaWRkZW47fS5cIitKKFwidF9cIikrXCJ7cG9zaXRpb246cmVsYXRpdmU7IGRpc3BsYXk6aW5saW5lLWJsb2NrO30uXCIrSihcInZfXCIpK1wie3Bvc2l0aW9uOmFic29sdXRlOyB0b3A6MDsgbGVmdDowOyBoZWlnaHQ6MTAwJTsgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0OyBiYWNrZ3JvdW5kLXNpemU6YXV0byAxMDAlO30uXCIrSihcInVfXCIpK1wie2Rpc3BsYXk6YmxvY2s7fS5cIitKKFwic19cIikrXCJ7XCIrc2YoKStcIn0uXCIrSihcInFfXCIpK1wie2JveC1zaXppbmc6Ym9yZGVyLWJveDsgbWF4LXdpZHRoOjEwMCU7IG1heC1oZWlnaHQ6MTAwJTsgb3ZlcmZsb3c6aGlkZGVuO1wiK1xuc2YoKStcIn0uXCIrSihcIm5fXCIpK1wiey1tcy1mbGV4LW5lZ2F0aXZlOjE7IHRleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7IHdoaXRlLXNwYWNlOm5vd3JhcDt9LlwiK0ooXCJwX1wiKStcInstbXMtZmxleC1uZWdhdGl2ZToxOyBtYXgtd2lkdGg6IDEwMCU7fS5cIitKKFwibV9cIikrXCJ7b3ZlcmZsb3c6aGlkZGVuO30uXCIrSihcIm9fXCIpK1wie3doaXRlLXNwYWNlOm5vd3JhcDt9LlwiK0ooXCJ5X1wiKStcIntjdXJzb3I6cG9pbnRlcjt9LlwiK0ooXCJ6X1wiKStcIntkaXNwbGF5Om5vbmU7IHBvc2l0aW9uOmFic29sdXRlOyB6LWluZGV4OjE7fS5cIitKKFwia19cIikrXCI+ZGl2Om5vdCguXCIrSihcInpfXCIpK1wiKSB7ZGlzcGxheTotd2Via2l0LWlubGluZS1ib3g7IGRpc3BsYXk6LW1vei1pbmxpbmUtYm94OyBkaXNwbGF5Oi1tcy1pbmxpbmUtZmxleGJveDsgZGlzcGxheTotd2Via2l0LWlubGluZS1mbGV4OyBkaXNwbGF5OmlubGluZS1mbGV4OyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7fS5cIitKKFwia19cIikrXCIudG9wQWxpZ24+ZGl2e3ZlcnRpY2FsLWFsaWduOnRvcDt9LlwiK1xuSihcImtfXCIpK1wiLmNlbnRlckFsaWduPmRpdnt2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7fS5cIitKKFwia19cIikrXCIuYm90dG9tQWxpZ24+ZGl2e3ZlcnRpY2FsLWFsaWduOmJvdHRvbTt9LlwiK0ooXCJrX1wiKStcIj5zcGFuLCAuXCIrSihcImtfXCIpK1wiPmEsIC5cIitKKFwia19cIikrXCI+aW1nLCAuXCIrSihcImtfXCIpK1wie2Rpc3BsYXk6aW5saW5lOyB2ZXJ0aWNhbC1hbGlnbjptaWRkbGU7fS5zaTEwMTpudGgtb2YtdHlwZSg1bisxKSA+IC5zaTE0MXtib3JkZXItbGVmdDogIzFmOGE3MCA3cHggc29saWQ7fS5yc3NBdHRyQ29udGFpbmVyIH4gLnNpMTAxOm50aC1vZi10eXBlKDVuKzIpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjMWY4YTcwIDdweCBzb2xpZDt9LnNpMTAxOm50aC1vZi10eXBlKDVuKzMpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjYmVkYjM5IDdweCBzb2xpZDt9LnJzc0F0dHJDb250YWluZXIgfiAuc2kxMDE6bnRoLW9mLXR5cGUoNW4rNCkgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICNiZWRiMzkgN3B4IHNvbGlkO30uc2kxMDE6bnRoLW9mLXR5cGUoNW4rNSkgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICNmZmUxMWEgN3B4IHNvbGlkO30ucnNzQXR0ckNvbnRhaW5lciB+IC5zaTEwMTpudGgtb2YtdHlwZSg1bis2KSA+IC5zaTE0MXtib3JkZXItbGVmdDogI2ZmZTExYSA3cHggc29saWR9LnNpMTAxOm50aC1vZi10eXBlKDVuKzIpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjZmQ3NDAwIDdweCBzb2xpZDt9LnJzc0F0dHJDb250YWluZXIgfiAuc2kxMDE6bnRoLW9mLXR5cGUoNW4rMykgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICNmZDc0MDAgN3B4IHNvbGlkO30uc2kxMDE6bnRoLW9mLXR5cGUoNW4rNCkgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICMwMDQzNTggN3B4IHNvbGlkO30ucnNzQXR0ckNvbnRhaW5lciB+IC5zaTEwMTpudGgtb2YtdHlwZSg1bis1KSA+IC5zaTE0MXtib3JkZXItbGVmdDogIzAwNDM1OCA3cHggc29saWQ7fS5cIitcbkooXCJhYV9cIikrXCJ7Y3Vyc29yOnBvaW50ZXI7fS5zaTEzMHtkaXNwbGF5OmlubGluZTsgdGV4dC10cmFuc2Zvcm06aW5oZXJpdDt9PC9zdHlsZT5cIil9ZnVuY3Rpb24gc2YoKXtyZXR1cm4gRyhcImRpc3BsYXk6LW1zLWZsZXhib3g7IGRpc3BsYXk6LXdlYmtpdC1ib3g7IGRpc3BsYXk6LXdlYmtpdC1mbGV4OyBkaXNwbGF5OmZsZXg7XCIrcmYoXCJjZW50ZXJcIikrdGYoXCJjZW50ZXJcIikpfVxuZnVuY3Rpb24gdWYoYSxiKXt2YXIgYz1cIlwiLGQ9Yj9cInJpZ2h0XCI6XCJsZWZ0XCI7Yj1iP1wibGVmdFwiOlwicmlnaHRcIjtmb3IodmFyIGU9Q2UoYSksZj1lLmxlbmd0aCxnPTA7ZzxmO2crKyl7dmFyIGg9ZVtnXTtzd2l0Y2goQWEoaCk/aC50b1N0cmluZygpOmgpe2Nhc2UgXCJmd1wiOmMrPVwiZm9udC13ZWlnaHQ6XCI7aD1hLmZ3O3N3aXRjaChBYShoKT9oLnRvU3RyaW5nKCk6aCl7Y2FzZSAxOmMrPVwiMTAwXCI7YnJlYWs7Y2FzZSAyOmMrPVwiNDAwXCI7YnJlYWs7Y2FzZSA0OmMrPVwiNTAwXCI7YnJlYWs7Y2FzZSAzOmMrPVwiNzAwXCI7YnJlYWs7Y2FzZSAwOmMrPVwiNDAwXCJ9YnJlYWs7Y2FzZSBcImJhY1wiOmMrPVwiYmFja2dyb3VuZC1jb2xvcjpcIitKKGEuYmFjKTticmVhaztjYXNlIFwiYmltXCI6Yys9J2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiJytUZShhLmJpbSkrJ1wiKSc7YnJlYWs7Y2FzZSBcImJyXCI6Yys9XCJib3JkZXItcmFkaXVzOlwiK0ooYS5icikrXCJweFwiO2JyZWFrO2Nhc2UgXCJid1wiOmMrPVwiYm9yZGVyOlwiK0ooYS5idykrXG5cInB4IHNvbGlkIFwiK0ooYS5ib2MpO2JyZWFrO2Nhc2UgXCJmZlwiOmMrPVwiZm9udC1mYW1pbHk6XCIrSihhLmZmKStcIixhcmlhbCxzYW5zLXNlcmlmO1wiO2JyZWFrO2Nhc2UgXCJmc1wiOmMrPVwiZm9udC1zaXplOlwiK0ooYS5mcykrXCJweFwiO2JyZWFrO2Nhc2UgXCJoXCI6Yys9XCJoZWlnaHQ6XCIrSihhLmgpKyhhLmguaW5jbHVkZXMoXCIlXCIpP1wiXCI6XCJweFwiKTticmVhaztjYXNlIFwiaVwiOmMrPVwiZm9udC1zdHlsZTpcIitKKEgoYS5pLCEwKT9cIml0YWxpY1wiOlwibm9ybWFsXCIpO2JyZWFrO2Nhc2UgXCJsaFwiOmMrPVwibGluZS1oZWlnaHQ6XCIrSihhLmxoKStcInB4XCI7YnJlYWs7Y2FzZSBcIm1heGhcIjpjKz1cIm1heC1oZWlnaHQ6XCIrSihhLm1heGgpK1wicHhcIjticmVhaztjYXNlIFwibWF4d1wiOmMrPVwibWF4LXdpZHRoOlwiK0ooYS5tYXh3KStcInB4XCI7YnJlYWs7Y2FzZSBcIm1iXCI6Yys9XCJtYXJnaW4tYm90dG9tOlwiK0ooYS5tYikrXCJweFwiO2JyZWFrO2Nhc2UgXCJtaW5oXCI6Yys9XCJtaW4taGVpZ2h0OlwiK0ooYS5taW5oKStcInB4XCI7YnJlYWs7XG5jYXNlIFwibWlud1wiOmMrPVwibWluLXdpZHRoOlwiK0ooYS5taW53KStcInB4XCI7YnJlYWs7Y2FzZSBcIm1sXCI6Yys9XCJtYXJnaW4tXCIrSihkKStcIjpcIitKKGEubWwpK1wicHhcIjticmVhaztjYXNlIFwibXJcIjpjKz1cIm1hcmdpbi1cIitKKGIpK1wiOlwiK0ooYS5tcikrXCJweFwiO2JyZWFrO2Nhc2UgXCJtdFwiOmMrPVwibWFyZ2luLXRvcDpcIitKKGEubXQpK1wicHhcIjticmVhaztjYXNlIFwib3BcIjpjKz1cIm9wYWNpdHk6XCIrSihhLm9wKTticmVhaztjYXNlIFwicGJcIjpjKz1cInBhZGRpbmctYm90dG9tOlwiK0ooYS5wYikrXCJweFwiO2JyZWFrO2Nhc2UgXCJwbFwiOmMrPVwicGFkZGluZy1cIitKKGQpK1wiOiBcIitKKGEucGwpK1wicHhcIjticmVhaztjYXNlIFwicHJcIjpjKz1cInBhZGRpbmctXCIrSihiKStcIjogXCIrSihhLnByKStcInB4XCI7YnJlYWs7Y2FzZSBcInB0XCI6Yys9XCJwYWRkaW5nLXRvcDpcIitKKGEucHQpK1wicHhcIjticmVhaztjYXNlIFwidGNcIjpjKz1cImNvbG9yOlwiK0ooYS50Yyk7YnJlYWs7Y2FzZSBcInVcIjpjKz1cInRleHQtZGVjb3JhdGlvbjpcIitcbkooRGUoYS51KT9cInVuZGVybGluZVwiOlwibm9uZVwiKTticmVhaztjYXNlIFwic3RcIjpjKz1cInRleHQtZGVjb3JhdGlvbjpcIitKKERlKGEuc3QpP1wibGluZS10aHJvdWdoXCI6XCJub25lXCIpO2JyZWFrO2Nhc2UgXCJwb1wiOmg9YS5wbzt2YXIgaz1kLGw9YjtoPUcoKGgudD9KKCkrXCJ0b3A6XCIrSihoLnQpK1wicHg7XCI6XCJcIikrKGgucj9KKCkrSihsKStcIjpcIitKKGgucikrXCJweDtcIjpcIlwiKSsoaC5iP0ooKStcImJvdHRvbTpcIitKKGguYikrXCJweDtcIjpcIlwiKSsoaC5sP0ooKStKKGspK1wiOlwiK0ooaC5sKStcInB4O1wiOlwiXCIpKTtjKz1oK1wicG9zaXRpb246YWJzb2x1dGVcIjticmVhaztjYXNlIFwiYm9zXCI6aD1hLmJvcztrPVwiXCI7bD1oO2Zvcih2YXIgbT1sLmxlbmd0aCxwPTA7cDxtO3ArKyl7dmFyIHI9bFtwXTtrKz1KKHIueG8pK1wicHggXCIrSihyLnlvKStcInB4IFwiKyhyLmJyP0ooci5icikrXCJweCBcIisoci5zcj9KKHIuc3IpK1wicHggXCI6XCJcIik6XCJcIikrSihyLnNjKSsocCE9aC5sZW5ndGgtMT9cIixcIjpcIlwiKX1oPUcoayk7aD1cbkcoXCJcIitoKTtoPUcoXCItd2Via2l0LWJveC1zaGFkb3c6XCIrSihoKStcIjsgLW1vei1ib3gtc2hhZG93OlwiK0ooaCkrXCI7IC1tcy1ib3gtc2hhZG93OlwiK0ooaCkrXCI7IGJveC1zaGFkb3c6XCIrSihoKStcIjtcIik7Yys9aDticmVhaztjYXNlIFwid1wiOmMrPVwid2lkdGg6XCIrSihhLncpKygoXCJcIithLncpLmluY2x1ZGVzKFwiJVwiKT9cIjsgLW1zLWZsZXgtbmVnYXRpdmU6MTtcIitxZigxKTpcInB4XCIpO2JyZWFrO2Nhc2UgXCJ0dFwiOnN3aXRjaChjKz1cInRleHQtdHJhbnNmb3JtOlwiLGg9YS50dCxBYShoKT9oLnRvU3RyaW5nKCk6aCl7Y2FzZSAxOmMrPVwidXBwZXJjYXNlXCI7YnJlYWs7ZGVmYXVsdDpjKz1cImluaXRpYWxcIn19Yys9XCI7XCJ9cmV0dXJuIEcoYyl9ZnVuY3Rpb24gcWYoYSl7cmV0dXJuIEcoXCItd2Via2l0LWJveC1mbGV4OlwiK0ooYSkrXCIgMDsgLXdlYmtpdC1mbGV4LXNocmluazpcIitKKGEpK1wiOyBmbGV4LXNocmluazpcIitKKGEpK1wiO1wiKX1cbmZ1bmN0aW9uIHJmKGEpe3ZhciBiPVwiLW1zLWZsZXgtYWxpZ246XCIsYz1cIlwiKyhhLmluZGV4T2YoXCJmbGV4LVwiKT09MD9KKGEuc3Vic3RyaW5nKDUpKTpKKGEpKTtjPUcoYyk7Yis9SihjKStcIjsgLXdlYmtpdC1ib3gtYWxpZ246XCIrSihjKStcIjsgLXdlYmtpdC1hbGlnbi1pdGVtczpcIitKKGEpK1wiOyBhbGlnbi1pdGVtczpcIitKKGEpK1wiO1wiO3JldHVybiBHKGIpfWZ1bmN0aW9uIHRmKGEpe3ZhciBiPVwiLW1zLWZsZXgtcGFjazpcIixjPVwiXCIrKGEuaW5kZXhPZihcImZsZXgtXCIpPT0wP0ooYS5zdWJzdHJpbmcoNSkpOkooYSkpO2M9RyhjKTtiKz1KKGMpK1wiOyAtd2Via2l0LWJveC1wYWNrOlwiK0ooYykrXCI7IC13ZWJraXQtanVzdGlmeS1jb250ZW50OlwiK0ooYSkrXCI7IGp1c3RpZnktY29udGVudDpcIitKKGEpK1wiO1wiO3JldHVybiBHKGIpfTtmdW5jdGlvbiB2ZihhKXt2YXIgYj1bXTthPXUoYS5zfHxbXSk7Zm9yKHZhciBjPWEubmV4dCgpOyFjLmRvbmU7Yz1hLm5leHQoKSl7Yz1jLnZhbHVlO3ZhciBkPWMucjtkJiZkLmhhc093blByb3BlcnR5KFwiZmZcIikmJihkLmZmPUcoZC5mZikpOyhkPWMuaHIpJiZkLmhhc093blByb3BlcnR5KFwiZmZcIikmJihkLmZmPUcoZC5mZikpO2IucHVzaCh7Y2xhc3NOYW1lOmMuc2sscnVsZXM6Yy5yfHx7fSx6YjpjLmhyfHx7fX0pfWE9TmEoKS5iYSgpO3ZhciBlPVwiPHN0eWxlPlwiO2M9Yi5sZW5ndGg7Zm9yKGQ9MDtkPGM7ZCsrKXt2YXIgZj1iW2RdO2lmKGYucnVsZXMmJkNlKGYucnVsZXMpLmxlbmd0aD4wKXt2YXIgZz1cIi5cIitKKGYuY2xhc3NOYW1lKStcIntcIit1ZihmLnJ1bGVzLGEpK1wifVwiO3ZhciBoPWYuY2xhc3NOYW1lO3ZhciBrPWYucnVsZXM7aD1HKERlKGsuaXNzKSYmRGUoay5pc3MuYmMpJiZEZShrLmlzcy5vKT9cIi5cIitKKGgpK1wiID4gLlwiK0ooXCJyX1wiKStcIntiYWNrZ3JvdW5kLWNvbG9yOlwiK1xuSihrLmlzcy5iYykrXCI7IG9wYWNpdHk6XCIrSihrLmlzcy5vKStcIjsgYm90dG9tOjA7IHRvcDowOyByaWdodDowOyBsZWZ0OjA7IHBvc2l0aW9uOmFic29sdXRlO31cIjpcIlwiKTtnKz1oO2lmKFZlKENlKGYucnVsZXMpKT49MCl7aD1cIi5cIitKKGYuY2xhc3NOYW1lKStcIiA+IGltZ3tcIjtrPWYucnVsZXM7Zm9yKHZhciBsPVwiXCIsbT1DZShrKSxwPW0ubGVuZ3RoLHI9MDtyPHA7cisrKXt2YXIgdD1tW3JdO3N3aXRjaChBYSh0KT90LnRvU3RyaW5nKCk6dCl7Y2FzZSBcIm9mXCI6dD1rLm9mO3N3aXRjaChBYSh0KT90LnRvU3RyaW5nKCk6dCl7Y2FzZSAxOmwrPVwib2JqZWN0LWZpdDogY292ZXI7XCI7YnJlYWs7Y2FzZSAyOmwrPVwib2JqZWN0LWZpdDogY292ZXI7IG1heC1oZWlnaHQ6IHVuc2V0O1wiO2JyZWFrO2Nhc2UgMzpsKz1cIm9iamVjdC1maXQ6IGNvdmVyOyBtYXgtd2lkdGg6IHVuc2V0O1wifWwrPVwiO1wifWwrPVwiO1wifWs9RyhsKTtoPWgraytcIn1cIn1lbHNlIGg9XCJcIjtnKz1ofWVsc2UgZz1cIlwiO2UrPWcrXG4oZi56YiYmQ2UoZi56YikubGVuZ3RoPjA/XCIuXCIrSihmLmNsYXNzTmFtZSkrXCI6aG92ZXJ7XCIrdWYoZi56YixhKStcIn1cIjpcIlwiKX1yZXR1cm4gRihlK1wiPC9zdHlsZT5cIil9O2Z1bmN0aW9uIHdmKGEsYil7aWYoIWEpcmV0dXJuITE7aWYoYS5ub2RlVHlwZT09MyYmYS5ub2RlVmFsdWUmJihiJiYoYS5ub2RlVmFsdWUrPVwiIC4uLlwiKSxhLm5vZGVWYWx1ZS5sZW5ndGg+NCkpe2I9YS5ub2RlVmFsdWU7dmFyIGM9YS5ub2RlVmFsdWUubGVuZ3RoLTE7Yi5sZW5ndGg+YyYmKGI9Yi5zdWJzdHJpbmcoMCxjLTMpK1wiLi4uXCIpO2Eubm9kZVZhbHVlPWI7cmV0dXJuITF9Yz1hLnRleHRDb250ZW50fHxhLmlubmVyVGV4dDtpZighY3x8Yy5sZW5ndGg8PShiPzA6NCkpcmV0dXJuIGEucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChhKSwhMDtmb3IoYj13ZihhLmxhc3RDaGlsZCxiKTtiOyliPXdmKGEubGFzdENoaWxkLGIpO3JldHVybiExfVxuZnVuY3Rpb24geGYoYSxiKXtpZighKGI8PTApKXtmb3IodmFyIGM9YS5pbm5lckhUTUwubGVuZ3RoO2M+MCYmYS5vZmZzZXRIZWlnaHQ+YjtjLS0pZm9yKHZhciBkPWEsZT13ZihkLmxhc3RDaGlsZCwhMSk7ZTspZT13ZihkLmxhc3RDaGlsZCxlKTthLm9mZnNldEhlaWdodD5iJiYoYS50ZXh0Q29udGVudD1cIlwiKX19O3ZhciB5Zj0xO2Z1bmN0aW9uIHpmKGEsYixjKXtpZighYylyZXR1cm4gbnVsbDtpZihjWzBdPT1cIi5cIilyZXR1cm4gYltjLnN1YnN0cmluZygxKV07Yz11KGMuc3BsaXQoXCIuXCIpKTtmb3IoYj1jLm5leHQoKTshYi5kb25lO2I9Yy5uZXh0KCkpe2I9Yi52YWx1ZTtpZihhPT1udWxsKXJldHVybiBudWxsO2lmKEFycmF5LmlzQXJyYXkoYSkpe2I9cGFyc2VJbnQoYiwxMCk7aWYoaXNOYU4oYikpcmV0dXJuIG51bGw7YT1hW2JdfWVsc2UgaWYoQWEoYSkmJmEuaGFzT3duUHJvcGVydHkoYikpYT1hW2JdO2Vsc2UgcmV0dXJuIG51bGx9cmV0dXJuIGF9O3ZhciBBZj1udWxsO2Z1bmN0aW9uIEJmKGEsYixjKXt2YXIgZD1jLnRhZ05hbWU9PT1cIkFcIj9jOmMucXVlcnlTZWxlY3RvcihcImFcIik7Yi5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIixmdW5jdGlvbihlKXtDZihhLGIsYyk7RGYoZSl9KTtiLmFkZEV2ZW50TGlzdGVuZXIoXCJrZXlkb3duXCIsZnVuY3Rpb24oZSl7aWYoZS5rZXlDb2RlPT0zMnx8ZS5rZXlDb2RlPT0xMylDZihhLGIsYyksRGYoZSksZCYmZC5mb2N1cygpfSk7YS5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIixFZik7YS5hZGRFdmVudExpc3RlbmVyKFwic2Nyb2xsXCIsRWYpO2Iuc2V0QXR0cmlidXRlKFwicm9sZVwiLFwiYnV0dG9uXCIpO2Iuc2V0QXR0cmlidXRlKFwidGFiaW5kZXhcIiwwKTtkJiZiLnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIixjLnRleHRDb250ZW50KX1mdW5jdGlvbiBEZihhKXthLnN0b3BQcm9wYWdhdGlvbj9hLnN0b3BQcm9wYWdhdGlvbigpOihhLmNhbmNlbEJ1YmJsZT0hMCxhLnJldHVyblZhbHVlPSExKX1cbmZ1bmN0aW9uIENmKGEsYixjKXtBZiYmQWYhPWMmJihBZi5zdHlsZS5kaXNwbGF5PVwibm9uZVwiLEFmPW51bGwpO2lmKGMuc3R5bGUuZGlzcGxheSYmYy5zdHlsZS5kaXNwbGF5IT1cIm5vbmVcIiljLnN0eWxlLmRpc3BsYXk9XCJub25lXCIsQWY9bnVsbDtlbHNle2EuYXBwZW5kQ2hpbGQoYyk7dmFyIGQ9amQoYiksZT1rZChiKSxmPWtkKGMpLGc9a2QoYSksaD1qZChhKSxrPWQueCthLnNjcm9sbExlZnQtaC54O2Q9ZC55K2Euc2Nyb2xsVG9wLWgueTtzd2l0Y2goYi5nZXRBdHRyaWJ1dGUoXCJkYXRhLXBvc2l0aW9uXCIpKXtjYXNlIFwib3ZlclwiOmI9ZS53aWR0aC8yLWYud2lkdGgvMjtlPWUuaGVpZ2h0LzItZi5oZWlnaHQvMjticmVhaztkZWZhdWx0OmI9ZS53aWR0aC8yLWYud2lkdGgvMixlPWUuaGVpZ2h0fWg9YS5zY3JvbGxUb3A7dmFyIGw9YS5zY3JvbGxUb3ArZy5oZWlnaHQtZi5oZWlnaHQtMTA7Yy5zdHlsZS5sZWZ0PU1hdGgubWluKE1hdGgubWF4KE1hdGgucm91bmQoaytiKSxhLnNjcm9sbExlZnQpLFxuYS5zY3JvbGxMZWZ0K2cud2lkdGgtZi53aWR0aC0xMCkrXCJweFwiO2Muc3R5bGUudG9wPU1hdGgubWluKE1hdGgubWF4KE1hdGgucm91bmQoZCtlKSxoKSxsKStcInB4XCI7Yy5zdHlsZS5kaXNwbGF5PVwiYmxvY2tcIjtBZj1jfX1mdW5jdGlvbiBFZigpe0FmJiYoQWYuc3R5bGUuZGlzcGxheT1cIm5vbmVcIixBZj1udWxsKX07ZnVuY3Rpb24gRmYoYSl7dmFyIGI9YS5vcmllbnRhdGlvbixjPWEuaWQsZD1hLlAsZT1hLnVlLGY9YS5vdmVyZmxvdyxnPWEuWGUsaD1hLkplLGs9YS5FZixsPWEuaHJlZixtPVwiXCIscD1IKGUsMCl8fEgoZSwxKXx8SChlLDIpLHI9SChlLDYpfHxIKGUsNyl8fEgoZSw4KSx0PUgoZSwzKXx8SChlLDQpfHxIKGUsNSk7Yz0oYz8naWQ9XCInK0koYykrJ1wiJzpcIlwiKSsnIGNsYXNzPVwiJytJKFwiaV9cIikrKGQ/XCIgXCIrSShkKTpcIlwiKSsoSChmLDMpP1wiIFwiK0koXCJqX1wiKTpcIlwiKTtIKGcsNCkmJihjKz1cIiBcIitJKFwia19cIikrXCIgXCIsYys9SShwP1widG9wQWxpZ25cIjpyP1wiY2VudGVyQWxpZ25cIjp0P1wiYm90dG9tQWxpZ25cIjpcIlwiKSk7Yys9KEgoZiw0KT9cIiBcIitJKFwial9cIikrXCIgXCIrSShcImxfXCIpOlwiXCIpKydcIicrKGg/JyBkYXRhLWRyb3A9XCJ0cnVlXCInOlwiXCIpO2c9XCItbXMtZmxleC1kaXJlY3Rpb246XCI7aD1cIlwiK0ooYj09MD9cInJvd1wiOlwiY29sdW1uXCIpO2g9RyhoKTtnKz1KKGgpK1wiOyAtd2Via2l0LWJveC1vcmllbnQ6XCIrXG5KKGI9PTA/XCJob3Jpem9udGFsXCI6XCJ2ZXJ0aWNhbFwiKStcIjsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpcIitKKGgpK1wiOyBmbGV4LWRpcmVjdGlvbjpcIitKKGgpK1wiO1wiO2c9RyhnKTtoPWUhPW51bGw/dGYoSChlLDApfHxIKGUsMyl8fEgoZSw5KXx8SChlLDYpP1wiZmxleC1zdGFydFwiOkgoZSwxKXx8SChlLDQpfHxIKGUsMTApfHxIKGUsNyk/XCJjZW50ZXJcIjpIKGUsMil8fEgoZSw1KXx8SChlLDExKXx8SChlLDgpP1wiZmxleC1lbmRcIjpcIlwiKTpcIlwiO2g9RyhcIlwiK2gpO2U9ZSE9bnVsbD9yZihwP1wiZmxleC1zdGFydFwiOnQ/XCJmbGV4LWVuZFwiOnI/XCJjZW50ZXJcIjpIKGUsOSl8fEgoZSwxMCl8fEgoZSwxMSk/XCJzdHJldGNoXCI6XCJcIik6XCJcIjtlPUcoXCJcIitlKTtwPVwiXCI7c3dpdGNoKGYpe2Nhc2UgMjpwKz1cIi1tcy1mbGV4LXdyYXA6d3JhcDsgLXdlYmtpdC1mbGV4LXdyYXA6d3JhcDsgZmxleC13cmFwOndyYXA7XCI7YnJlYWs7Y2FzZSAzOmNhc2UgNDpwKz1cIm92ZXJmbG93LVwiK0ooYj09MD9cInhcIjpcInlcIikrXG5cIjphdXRvOyAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1wifWI9RyhwKTtjKz0nIHN0eWxlPVwiJytJKEooZykpK0koSihoKSkrSShKKGUpKStJKEooYikpKyhrP1wicG9zaXRpb246cmVsYXRpdmU7XCI6XCJcIikrJ1wiJztrPUJlKGMpO20rPURlKGwpP1wiPGFcIitOZShHZihhKSkrTmUoTGUoaykpK1wiPjwvYT5cIjpcIjxkaXZcIitOZShMZShrKSkrXCI+PC9kaXY+XCI7cmV0dXJuIEYobSl9XG5mdW5jdGlvbiBIZihhKXthPWF8fHt9O3ZhciBiPWEuaWQsYz1hLnRleHQsZD1hLlAsZT1hLk1mLGY9YS50ZyxnPWEuaHJlZixoPWEuV2Qsaz1cIlwiLGw9ZSE9bnVsbD8nZGF0YS1saW5lcz1cIicrSShlKSsnXCInKyhmIT1udWxsPycgZGF0YS10cnVuY2F0ZT1cIicrSShmKSsnXCInOicgZGF0YS10cnVuY2F0ZT1cIjBcIicpOlwiXCI7bD1CZShsKTtmPUgoZSwxKT9cIm1fIFwiKyhIKGYsMCk/XCJuX1wiOlwib19cIik6XCJwX1wiO2M9KGUmJmU+MT9cIjxzcGFuXCIrTmUoTGUobCkpKycgc3R5bGU9XCJkaXNwbGF5OiAtd2Via2l0LWJveDsgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsgb3ZlcmZsb3c6IGhpZGRlbjsgLXdlYmtpdC1saW5lLWNsYW1wOiAnK0koSihlKSkrJzsgXCI+JzpcIlwiKSt2ZShjIT1udWxsP2M6XCJcIikrKGUmJmU+MT9cIjwvc3Bhbj5cIjpcIlwiKTtjPUYoYyk7ays9RGUoZyk/XCI8YVwiKyhiPycgaWQ9XCInK0koYikrJ1wiJzpcIlwiKSsnIGNsYXNzPVwiJytJKGYpK1wiIFwiK0koZCE9bnVsbD9kOlwiXCIpKydcIicrKGUmJlxuZT4xP1wiXCI6TmUoTGUobCkpKSsoaD8nIGRhdGEtcGluZ2JhY2stdHlwZT1cIicrSShoKSsnXCInOlwiXCIpK05lKEdmKGEpKStcIj5cIitjK1wiPC9hPlwiOlwiPHNwYW5cIisoYj8nIGlkPVwiJytJKGIpKydcIic6XCJcIikrKGUmJmU+MT9cIlwiOk5lKExlKGwpKSkrKGg/JyBkYXRhLXBpbmdiYWNrLXR5cGU9XCInK0koaCkrJ1wiJzpcIlwiKSsnIGNsYXNzPVwiJytJKGYpK1wiIFwiK0koZCE9bnVsbD9kOlwiXCIpKydcIj4nK2MrXCI8L3NwYW4+XCI7cmV0dXJuIEYoayl9XG5mdW5jdGlvbiBJZihhKXt2YXIgYj1hLnNyYyxjPWEuaGgsZD1hLmlkLGU9YS55ZixmPWEuYXJpYUhpZGRlbixnPWEuUCxoPWEuaHJlZixrPWEuV2QsbD1hLmdmLG09XCJcIjtkPShkPydpZD1cIicrSShkKSsnXCInOlwiXCIpKyhmPycgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGFiaW5kZXg9XCItMVwiJzpcIlwiKSsnIGNsYXNzPVwiJytJKFwicV9cIikrKGc/XCIgXCIrSShnKTpcIlwiKSsnXCInO2Q9QmUoZCk7aWYoYyl7Yj1cIlwiO3N3aXRjaChBYShjKT9jLnRvU3RyaW5nKCk6Yyl7Y2FzZSBcImxvY2FsU1ZHX1Nub3dtYW5fMThfZ3JleVwiOmIrPSc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIxOFwiIHdpZHRoPVwiMThcIj48cGF0aCBmaWxsPVwiI2EwYTRhNFwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk05IDZjLjgyNSAwIDEuNS0uNjc1IDEuNS0xLjVTOS44MjUgMyA5IDNzLTEuNS42NzUtMS41IDEuNVM4LjE3NSA2IDkgNnptMCAxLjVjLS44MjUgMC0xLjUuNjc1LTEuNSAxLjVzLjY3NSAxLjUgMS41IDEuNSAxLjUtLjY3NSAxLjUtMS41UzkuODI1IDcuNSA5IDcuNXptLTEuNSA2YzAtLjgyNS42NzUtMS41IDEuNS0xLjVzMS41LjY3NSAxLjUgMS41UzkuODI1IDE1IDkgMTVzLTEuNS0uNjc1LTEuNS0xLjV6XCIvPjwvc3ZnPic7XG5icmVhaztjYXNlIFwibG9jYWxTVkdfU25vd21hbl8xOF9jdXJyZW50Q29sb3JcIjpiKz0nPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgaGVpZ2h0PVwiMThcIiB3aWR0aD1cIjE4XCI+PHBhdGggZmlsbD1cImN1cnJlbnRDb2xvclwiIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk05IDZjLjgyNSAwIDEuNS0uNjc1IDEuNS0xLjVTOS44MjUgMyA5IDNzLTEuNS42NzUtMS41IDEuNVM4LjE3NSA2IDkgNnptMCAxLjVjLS44MjUgMC0xLjUuNjc1LTEuNSAxLjVzLjY3NSAxLjUgMS41IDEuNSAxLjUtLjY3NSAxLjUtMS41UzkuODI1IDcuNSA5IDcuNXptLTEuNSA2YzAtLjgyNS42NzUtMS41IDEuNS0xLjVzMS41LjY3NSAxLjUgMS41UzkuODI1IDE1IDkgMTVzLTEuNS0uNjc1LTEuNS0xLjV6XCIvPjwvc3ZnPid9Yz1GKGIpfWVsc2UgYz0nPGltZyBzcmM9XCInK0koVGUoYikpKydcIiBhbHQ9XCJcIicrKGs/JyBkYXRhLXBpbmdiYWNrLXR5cGU9XCInK0koaykrXG4nXCInOlwiXCIpKyhlPycgYXJpYS1sYWJlbD1cIicrSShlKSsnXCInOlwiXCIpK1wiPlwiO2M9RihcIlwiK2MpO2I9JzxkaXYgY2xhc3M9XCInK0koXCJyX1wiKSsnXCI+PC9kaXY+JztiPUYoYik7bSs9RGUoaCk/XCI8YVwiK05lKEdmKGEpKStOZShMZShkKSkrXCI+XCIrKGw/YjpcIlwiKStjK1wiPC9hPlwiOlwiPGRpdlwiK05lKExlKGQpKStcIj5cIisobD9iOlwiXCIpK2MrXCI8L2Rpdj5cIjtyZXR1cm4gRihtKX1cbmZ1bmN0aW9uIEpmKGEpe3ZhciBiPWEuUmYsYz1hLlNmLGQ9YS5pZCxlPWEua2csZj1hLmxnLGc9YS5iaCxoPWEuZGgsaz1hLmdoLGw9YS5QLG09YS5ocmVmLHA9YS56YSxyPWEubWQ7YT1hLnhjO2s9ayE9bnVsbD9rOlwiXCI7ZD1cIjxkaXZcIisoZD8nIGlkPVwiJytJKGQpKydcIic6XCJcIikrJyBjbGFzcz1cIicrSShcInNfXCIpKyhsP1wiIFwiK0kobCk6XCJcIikrJ1wiPjxkaXYgY2xhc3M9XCInK0koXCJ0X1wiKSsnXCI+JztlPVwiXCIrT2UoKGc/XCJcIjprKSsoZSE9bnVsbD9lOlwiL2ltYWdlcy9hZnMvc3Itc3Rhci1vZmYucG5nXCIpKTtlPUFlKGUpO2QrPSc8aW1nIHNyYz1cIicrSShUZShlKSkrJ1wiIGNsYXNzPVwiJytJKFwidV9cIikrJ1wiIHJvbGU9XCJub25lXCIvPic7Zj1cIlwiK09lKChoP1wiXCI6aykrKGYhPW51bGw/ZjpcIi9pbWFnZXMvYWZzL3NyLXN0YXItb24ucG5nXCIpKTtmPUFlKGYpO2QrPSc8ZGl2IGNsYXNzPVwiJytJKFwidl9cIikrJ1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFnZTogdXJsKCcrSShUZShmKSkrXCIpOyB3aWR0aDogXCIrXG5JKEooTWF0aC5tYXgoTWF0aC5taW4oYiw1KSwwKSoyMCkpKyclXCIgcm9sZT1cImltZ1wiJysoYz8nIGFyaWEtbGFiZWw9XCInK0koYykrJ1wiJzonIGFyaWEtaGlkZGVuPVwidHJ1ZVwiJykrXCI+PC9kaXY+PC9kaXY+PC9kaXY+XCI7Yj1iPXtocmVmOm0semE6cCxtZDpyLHhjOmEsWWU6RihkKX07Yz1iLlllO2I9RihEZShiLmhyZWYpP1wiPGFcIitOZShHZihiKSkrXCI+XCIrdmUoYykrXCI8L2E+XCI6dmUoYykpO3JldHVybiBGKFwiXCIrYil9XG5mdW5jdGlvbiBHZihhKXthPWF8fHt9O3ZhciBiPWEuemEsYz1hLm1kLGQ9YS54YyxlPWEuWmU7YT0naHJlZj1cIicrSShPZShhLmhyZWYpKSsnXCInKyhkPycgZGF0YS1ub3RyYWNrPVwidHJ1ZVwiJzpcIlwiKSsoYyE9bnVsbD8nIGRhdGEtbmI9XCInK0koYykrJ1wiJzpcIlwiKSsoYj8nIHRhcmdldD1cIicrSShiKSsnXCInOlwiXCIpO2UhPW51bGw/KGU9QmUoSChlPT1udWxsP3ZvaWQgMDplLmFzLFwidHJ1ZVwiKT8nYXR0cmlidXRpb25zcmM9XCJcIic6J2F0dHJpYnV0aW9uc3JjPVwiJytJKGU9PW51bGw/dm9pZCAwOmUuYXMpKydcIicpLGU9TmUoZSkpOmU9XCJcIjtyZXR1cm4gQmUoYStlKX07dmFyIEtmPXdpbmRvdy5uYXZpZ2F0b3I/d2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQ6XCJcIjtmdW5jdGlvbiBMZigpe3ZhciBhPU1mKE5mKTtyZXR1cm4gYSE9PS0xP2E+Njc6ITB9dmFyIE5mPS9GaXJlZm94XFwvKFxcZCspXFwuLyxPZj0vVmVyc2lvblxcLyhcXGQrKVxcLi4qU2FmYXJpLyxQZj0vQ2hyb21lXFwvKFxcZCspXFwuLyxRZj0vKD86aVBob25lfGlQb2R8aVBhZCkuKkFwcGxlV2ViS2l0XFwvKFxcZCspKD8hLipWZXJzaW9uKS87ZnVuY3Rpb24gTWYoYSl7YT0oYT1hLmV4ZWMoS2YpKT9hWzFdOlwiXCI7cmV0dXJuIGEubGVuZ3RoPjAmJihhPXBhcnNlSW50KGEsMTApKT9hOi0xfTtmdW5jdGlvbiBSZigpe3RoaXMuYmY9WWMoKTt0aGlzLlZiPW51bGx9UmYucHJvdG90eXBlLmNkPWZ1bmN0aW9uKGEsYil7dmFyIGM9dGhpcy5WYj90aGlzLlZiLmdldERhdGEoKTp7fSxkPXRoaXMuYmY7cmV0dXJuIGFmKGEoYnx8YmYsYyksZCl9O1JmLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oYSxiKXthPWEoYnx8e30sdGhpcy5WYj90aGlzLlZiLmdldERhdGEoKTp7fSk7cmV0dXJuIFN0cmluZyhhKX07ZnVuY3Rpb24gU2YoYSl7aWYoIWEpcmV0dXJue307dmFyIGI9e307YT11KGEpO2Zvcih2YXIgYz1hLm5leHQoKTshYy5kb25lO2M9YS5uZXh0KCkpYz1jLnZhbHVlLGJbYy5za109e3J1bGVzOmMucix6YjpjLmhyfTtyZXR1cm4gYn12YXIgVGY9bmV3IFJmLFVmPXt9LFZmPShVZlsyXT1cIndfXCIsVWZbM109XCJ4X1wiLFVmKTtcbmZ1bmN0aW9uIFdmKGEsYixjLGQsZSxmKXtmdW5jdGlvbiBnKHYsdyxDKXt2YXIgUj12LmRiaz09XCJhZEJsb2NrXCIsUD1kP1wiX2JsYW5rXCI6XCJfdG9wXCI7dz17aWQ6Uj9cImFkQmxvY2tcIjp3LFA6KHYuc2t8fFwiXCIpK1wiIFwiKyhDPT09dm9pZCAwP1wiXCI6QyksemE6UH07di5wYiYmKHcuV2Q9di5wYi5wYnQpO0M9di5kYms9PT1cImN0Y1wiO3ZhciBVPXYuZGJrPT09XCJjdGMuYnRcIjtpZihtfHxDfHxVKXcuemE9XCJfc2VsZlwiLCEvaShQaG9uZXxQYWQpOy9pLnRlc3QoS2YpfHwvQ2hyb21lfENyaU9TL2kudGVzdChLZikmJk1mKFBmKT45OHx8KHcuemE9UCk7cCYmKHcuemE9XCJfdG9wXCIpO0M9di5kYms/emYoYyxiLHYuZGJrKTp2b2lkIDA7VT12LmFjYyYmdi5hY2MuYWx0P3pmKGMsYix2LmFjYy5hbHQpOnZvaWQgMDt2YXIgdmE9di5hY2MmJnYuYWNjLmFoLGFiPXpmKGMsYixcImJjYWxhXCIpO2lmKHYuZGJrJiYhQyYmIVJ8fHYuaG5rJiZ6ZihjLGIsdi5obmspIT1udWxsKXJldHVybiBudWxsO1A9bnVsbDtcbnZhciBRYT0wO2lmKHYuYWMpe3ZhciBXPXYuYWNbMF0sWD1XLmFjdCxNYz1XLmRiaz96ZihjLGIsVy5kYmspOnZvaWQgMCxTYj1XLmVuLFRiPXZvaWQgMCxOYz12b2lkIDA7c3dpdGNoKFgpe2Nhc2UgMDp3LmhyZWY9TWM7dy54Yz0hIVcubm07dy5tZD1XLm5iO3cuWmU9YWI7YnJlYWs7Y2FzZSAzOncuUCs9XCIgeV9cIjtOYz1cInpfXCI7VGI9XCJlXCIreWYrKzt3LmlkfHwody5pZD1cImVcIit5ZisrKTtsLnB1c2goe3hmOncuaWQsSGU6VGJ9KTticmVhaztjYXNlIDU6aWYoUWE9cGFyc2VJbnQoTWMsMTApKXcuUCs9XCIgYWFfXCJ9U2ImJihQPWcoU2IsVGIsTmMpKX1YPW51bGw7YWI9di5udDtXPXYubHJ8fHt9O1g9KGhbdi5za118fHt9KS5ydWxlc3x8e307c3dpdGNoKGFiKXtjYXNlIDA6Qz1XLm87Qz09bnVsbCYmKEM9MCk7dy5vcmllbnRhdGlvbj1DO3cudWU9Vy5hO3cuSmU9Vy50PT0xO3cub3ZlcmZsb3c9Vy5vdjt3LlhlPVcuY2Y7dy5FZj1XLmFwJiYhWC5wbztYPUZmO2JyZWFrO2Nhc2UgMTp3LnRleHQ9XG5GKEMpO3cuTWY9Vy5ubDt3LnRnPVcudDtYPUhmO2JyZWFrO2Nhc2UgMjp3LnNyYz1YLnNmYyYmQy5zdWJzdHIoLTMpPT1cInN2Z1wiP0MrXCI/Yz1cIitlbmNvZGVVUklDb21wb25lbnQoWC5zZmMpOkM7dy5nZj1cImlzc1wiaW4gWCYmXCJiY1wiaW4gWC5pc3MmJlwib1wiaW4gWC5pc3M7dy55Zj1VO3cuYXJpYUhpZGRlbj12YTtYPUlmO2JyZWFrO2Nhc2UgNDp0eXBlb2YgQz09XCJzdHJpbmdcIiYmKEM9cGFyc2VGbG9hdChDKSk7aWYodHlwZW9mIEMhPVwibnVtYmVyXCJ8fGlzTmFOKEMpKXJldHVybiBudWxsO3cua2c9WC5idTt3LmxnPVguZnU7dy5SZj1DO3cuU2Y9VTtOYSgpLmRhdGEuaW5zciYmaz09Mj8ody53aWR0aD1cIjE3N3B4XCIsdy5oZWlnaHQ9XCIzMnB4XCIpOih3LndpZHRoPVwiNjFweFwiLHcuaGVpZ2h0PVwiMTFweFwiKTtYPUpmO2JyZWFrO2RlZmF1bHQ6cmV0dXJuIG51bGx9aWYoQz1WZltXLnNiXSl3LlArPVwiIFwiK0M7dmFyIEs9VGYuY2QoWCx3KTt2Lmhhc093blByb3BlcnR5KFwiaG5lXCIpJiZ0W3YuaG5lXS5wdXNoKEspO1xuaWYoUil7dmFyIGJiPUIoZnVuY3Rpb24oKXtmb3IodmFyIFk9dSh0WzFdKSxiYT1ZLm5leHQoKTshYmEuZG9uZTtiYT1ZLm5leHQoKSl7YmE9YmEudmFsdWU7dmFyIHdhPSExO0suc3R5bGUub3ZlcmZsb3dYPT09XCJhdXRvXCI/d2E9Sy5zY3JvbGxMZWZ0IT09MDpLLnN0eWxlLm92ZXJmbG93WT09PVwiYXV0b1wiJiYod2E9Sy5zY3JvbGxUb3AhPT0wKTtiYS5zdHlsZS52aXNpYmlsaXR5PXdhP1widmlzaWJsZVwiOlwiaGlkZGVuXCJ9WT11KHRbMl0pO2ZvcihiYT1ZLm5leHQoKTshYmEuZG9uZTtiYT1ZLm5leHQoKSliYT1iYS52YWx1ZSx3YT0hMCxLLnN0eWxlLm92ZXJmbG93WD09PVwiYXV0b1wiP3dhPU1hdGguYWJzKEsuc2Nyb2xsTGVmdCkhPT1LLnNjcm9sbFdpZHRoLUsuY2xpZW50V2lkdGg6Sy5zdHlsZS5vdmVyZmxvd1k9PT1cImF1dG9cIiYmKHdhPUsuc2Nyb2xsVG9wIT09Sy5zY3JvbGxIZWlnaHQtSy5jbGllbnRIZWlnaHQpLGJhLnN0eWxlLnZpc2liaWxpdHk9d2E/XCJ2aXNpYmxlXCI6XCJoaWRkZW5cIn0sXG5cImhuZVNjXCIpO0IoZnVuY3Rpb24oKXtlJiYoSy5hZGRFdmVudExpc3RlbmVyKFwic2Nyb2xsXCIsYmIpLGUuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLGJiKSl9LFwiaG5lQXNjXCIpKCl9UWEmJksuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsZnVuY3Rpb24oKXt2YXIgWT1LLm93bmVyRG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhZEJsb2NrXCIpO1kuc3R5bGUub3ZlcmZsb3dYPT09XCJhdXRvXCI/WS5zY3JvbGxMZWZ0Kz1RYTpZLnN0eWxlLm92ZXJmbG93WT09PVwiYXV0b1wiJiYoWS5zY3JvbGxUb3ArPVFhKTtZPVFhPDA/XCJjYmxjXCI6XCJjYnJjXCI7dmFyIGJhPU1iKCk7SmImJlBiKGJhLFkpfSk7dj12LmNoO2lmKGFiPT0wJiZ2JiZ2Lmxlbmd0aD4wKXtSPSExO2Zvcih3PTA7dzx2Lmxlbmd0aDt3KyspQz1nKHZbd10pLEMhPW51bGwmJihSPSEwLEsuYXBwZW5kQ2hpbGQoQykpO2lmKCFSKXJldHVybiBudWxsfXJldHVybiBQPyh2PWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSx2LmFwcGVuZENoaWxkKEspLFxudi5hcHBlbmRDaGlsZChQKSx2KTpLfWQ9ZD09PXZvaWQgMD8hMTpkO2U9ZT09PXZvaWQgMD9udWxsOmU7Zj1mPT09dm9pZCAwP1tdOmY7dmFyIGg9U2YoYS5zKSxrPWEuYXQsbD1bXSxtPSEhemYoYyxiLFwiY3RjLmNvdHRcIikscD0hIXpmKGMsYixcImN0ZFwiKSxyPXt9LHQ9KHJbMV09W10sclsyXT1bXSxyKTtyPVwiZVwiK3lmKys7YT1nKGEubHx8e30scixmLmpvaW4oXCIgXCIpKTthfHwoYT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KFwic3BhblwiKSxhLmlkPXIpO3JldHVybntyb290RWxlbWVudDphLG5lOmwsZGc6cn19XG5mdW5jdGlvbiBYZihhLGIpe2Z1bmN0aW9uIGMocCl7dmFyIHI9cC5zdHlsZS53b3JkV3JhcCx0PXAuc3R5bGUud2hpdGVTcGFjZTtwLnN0eWxlLndoaXRlU3BhY2U9XCJub3dyYXBcIjtwLnN0eWxlLndvcmRXcmFwPVwibm9ybWFsXCI7dmFyIHY9cC5vZmZzZXRIZWlnaHQ7cC5zdHlsZS53aGl0ZVNwYWNlPXQ7cC5zdHlsZS53b3JkV3JhcD1yO3JldHVybiB2fWZ1bmN0aW9uIGQocCxyKXt2YXIgdD1wLmNoaWxkRWxlbWVudENvdW50PT0wO3I9ciYmcC5nZXRBdHRyaWJ1dGUoXCJkYXRhLWRyb3BcIik9PVwidHJ1ZVwiO2lmKHR8fHIpdD1wLnBhcmVudE5vZGUsdC5yZW1vdmVDaGlsZChwKSxwLmlkIT1iJiZkKHQscil9YT1hLnF1ZXJ5U2VsZWN0b3JBbGwoXCJbZGF0YS1saW5lc11cIik7Zm9yKHZhciBlPWEubGVuZ3RoLTE7ZT49MDtlLS0pe3ZhciBmPWFbZV0sZz1mLnBhcmVudE5vZGUsaD1wYXJzZUludChmLmdldEF0dHJpYnV0ZShcImRhdGEtbGluZXNcIiksMTApLGs9cGFyc2VJbnQoZi5nZXRBdHRyaWJ1dGUoXCJkYXRhLXRydW5jYXRlXCIpLFxuMTApO2lmKGghPTF8fGshPTApe3ZhciBsPWYuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCksbT1nLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO2w9bS5sZWZ0PmwubGVmdHx8bS5yaWdodDxsLnJpZ2h0O2shPT0wfHxMZigpP2s9PT0xJiYoaz1oPjE/YyhmKTp2b2lkIDAsKGg9PTE/Zi5vZmZzZXRXaWR0aDxmLnNjcm9sbFdpZHRoOmg+MSYmZi5vZmZzZXRIZWlnaHQvaz5oKXx8bCkmJihnLnJlbW92ZUNoaWxkKGYpLGQoZywhMCkpOihnPWMoZiksKGg+MSYmZi5vZmZzZXRIZWlnaHQvZz5ofHxsKSYmeGYoZiwoZysxKSpoKSl9fX1mdW5jdGlvbiBZZihhLGIpe2I9dShiKTtmb3IodmFyIGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKXt2YXIgZD1jLnZhbHVlO2M9YS5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChkLkhlKTtkPWEuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZC54Zik7YyYmZCYmQmYoYS5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIiksZCxjKX19O2Z1bmN0aW9uIFpmKGEpe2E9YXx8e307cmV0dXJuIEYoJGYoYS5WYSxcImdvb2dOb0Fkc1wiKSl9ZnVuY3Rpb24gJGYoYSxiKXtyZXR1cm4gRignPGRpdiBzdHlsZT1cImRpc3BsYXk6bm9uZTtcIicrKGI/JyBpZD1cIl8nK0koYikrXCJfXCIrSShhIT1udWxsP2E6XCJ1bmtub3duX3B1YklkXCIpKydcIic6XCJcIikrXCI+PC9kaXY+XCIpfTt2YXIgYWc9KG5ldyBEYXRlKFwiMjAyNC0wMS0wMVQwMDowMDowMFpcIikpLmdldFRpbWUoKTtcbmZ1bmN0aW9uIGJnKGEpe3ZhciBiPWEudXJsO2E9YS5jYTt0aGlzLlhiPWI7dGhpcy5DYT1hO3RoaXMua2I9L1s/Jl1jbz0oW1xcZF0pLy5leGVjKGIpOyh0aGlzLkdjPS9bPyZdZ2NsaWQ9KFteJl0qKS8uZXhlYyhiKSkmJnRoaXMuR2NbMV0mJih0aGlzLk9kPXRoaXMuR2NbMV0udG9TdHJpbmcoKSk7YT0vWz8mXWRzaD0xKCZ8JCkvLnRlc3QoYik7dGhpcy5EYj0hYSYmL1s/Jl1hZT0xKCZ8JCkvLnRlc3QoYik7dGhpcy5FYj0hYSYmL1s/Jl1hZT0yKCZ8JCkvLnRlc3QoYik7dGhpcy5vYT0vWz8mXWFkdXJsPShbXiZdKikvLmV4ZWMoYik7dGhpcy51Zz0hYSYmL1s/Jl1hc3BtPTEoJnwkKS8udGVzdChiKTtpZih0aGlzLm9hJiZ0aGlzLm9hWzFdKXt0cnl7dmFyIGM9ZGVjb2RlVVJJQ29tcG9uZW50KHRoaXMub2FbMV0pfWNhdGNoKGQpe2M9bnVsbH10aGlzLmdiPWN9dGhpcy5vZD0obmV3IERhdGUpLmdldFRpbWUoKS1hZ31cbmZ1bmN0aW9uIGNnKGEsYil7Yj1iPT09dm9pZCAwPzA6Yjt2YXIgYz1cIiZhY3Q9MVwiO2I9PT0wP2MrPVwiJnJpPTFcIjpiPT09MT9jKz1cIiZyaT0yNFwiOmI9PT0yJiYoYys9XCImcmk9MjVcIik7YS5EYiYmYS5DYSYmKGMrPWRnKGEpKTthLkViJiYoYys9XCImc3VpZD1cIithLm9kKTtyZXR1cm4gZWcoYSxjKX1mdW5jdGlvbiBmZyhhLGIpe2lmKGEuRGImJmEuZ2Ipe2lmKGI9PTEpcmV0dXJuIGEuZ2J8fFwiXCJ9ZWxzZSBpZihhLkViKXtpZihiPT0xKXJldHVybiBlZyhhLFwiJmRjdD0xJnN1aWQ9XCIrYS5vZCk7aWYoYj09MylyZXR1cm4gZWcoYSxcIiZkY3Q9MSZzdWlkPVwiK2Eub2QrXCImcmk9MjZcIil9ZWxzZSByZXR1cm4gYS5YYjtyZXR1cm4gYj09Mj9lZyhhLFwiJnJpPTJcIik6ZWcoYSxcIiZyaT0xNlwiKX1mdW5jdGlvbiBlZyhhLGIpe3JldHVybiBhLm9hP2EuWGIuc2xpY2UoMCxhLm9hLmluZGV4KStiK2EuWGIuc2xpY2UoYS5vYS5pbmRleCk6YS5YYitifVxuZnVuY3Rpb24gZGcoYSl7YT1hLkNhO3ZhciBiPWVuY29kZVVSSUNvbXBvbmVudCxjPVwiXCI7YS5wbGF0Zm9ybSYmKGMrPVwiJnVhcD1cIitiKGEucGxhdGZvcm0pKTthLnBsYXRmb3JtVmVyc2lvbiYmKGMrPVwiJnVhcHY9XCIrYihhLnBsYXRmb3JtVmVyc2lvbikpO2EudWFGdWxsVmVyc2lvbiYmKGMrPVwiJnVhZnY9XCIrYihhLnVhRnVsbFZlcnNpb24pKTthLmFyY2hpdGVjdHVyZSYmKGMrPVwiJnVhYT1cIitiKGEuYXJjaGl0ZWN0dXJlKSk7YS5tb2RlbCYmKGMrPVwiJnVhbT1cIitiKGEubW9kZWwpKTthLmJpdG5lc3MmJihjKz1cIiZ1YWI9XCIrYihhLmJpdG5lc3MpKTthLmZ1bGxWZXJzaW9uTGlzdCYmKGMrPVwiJnVhZnZsPVwiK2IoYS5mdWxsVmVyc2lvbkxpc3QubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBiKGQuYnJhbmQpK1wiO1wiK2IoZC52ZXJzaW9uKX0pLmpvaW4oXCJ8XCIpKSk7dHlwZW9mIGEud293NjQhPT1cInVuZGVmaW5lZFwiJiYoYys9XCImdWF3PVwiK051bWJlcihhLndvdzY0KSk7cmV0dXJuIGN9O3ZhciBnZz0vXigobWFya2V0fGl0bXN8aW50ZW50fGl0bXMtYXBwc3MpOlxcL1xcLykvaTtmdW5jdGlvbiBoZygpe3ZhciBhPXRoaXM7dmFyIGI9e30uWWc7dGhpcy5DYT1udWxsO2ImJm5hdmlnYXRvci51c2VyQWdlbnREYXRhJiZuYXZpZ2F0b3IudXNlckFnZW50RGF0YS5nZXRIaWdoRW50cm9weVZhbHVlcyYmKGI9bmF2aWdhdG9yLnVzZXJBZ2VudERhdGEuZ2V0SGlnaEVudHJvcHlWYWx1ZXMoXCJwbGF0Zm9ybSBwbGF0Zm9ybVZlcnNpb24gdWFGdWxsVmVyc2lvbiBhcmNoaXRlY3R1cmUgbW9kZWwgYml0bmVzcyBmdWxsVmVyc2lvbkxpc3Qgd293NjRcIi5zcGxpdChcIiBcIikpKSYmYi50aGVuKGZ1bmN0aW9uKGMpe2EuQ2E9Y30pfVxuaGcucHJvdG90eXBlLmhhbmRsZT1mdW5jdGlvbihhKXt2YXIgYj1hLmhhc0F0dHJpYnV0ZShcImRhdGEtb2hyZWZcIiksYz1iP2EuZ2V0QXR0cmlidXRlKFwiZGF0YS1vaHJlZlwiKTphLmhyZWY7Ynx8YS5zZXRBdHRyaWJ1dGUoXCJkYXRhLW9ocmVmXCIsYyk7YTppZihiPW5ldyBiZyh7dXJsOmMsY2E6e30uY2F9KSxiLmtiIT09bnVsbCl7dmFyIGQ9Yi5rYiYmYi5rYlsxXT9iLmtiWzFdOlwiXCI7aWYoZD09PVwiMVwiKWQ9XCJodHRwczovL3d3dy5nb29nbGVhZHNlcnZpY2VzLmNvbS9wYWdlYWQvY29udmVyc2lvbi8xNjUyMTUzMDQ2MC8/Z2FkX3NvdXJjZT0xJmFkdmlld190eXBlPTNcIjtlbHNlIGlmKGQ9PT1cIjJcIilkPVwiaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9wYWdlYWQvMXAtY29udmVyc2lvbi8xNjUyMTUzMDQ2MC8/Z2FkX3NvdXJjZT0xJmFkdmlld190eXBlPTVcIjtlbHNlIGJyZWFrIGE7Yj1kKyhiLk9kP1wiJmFkdmlld19nY2xpZD1cIitiLk9kOlwiXCIpO25hdmlnYXRvci5zZW5kQmVhY29uKGIsXCJcIil8fFxuZmV0Y2goYix7bWV0aG9kOlwiR0VUXCIsa2VlcGFsaXZlOiEwLG1vZGU6XCJuby1jb3JzXCJ9KX1iPXtjYTp0aGlzLkNhfTtiPShiPT09dm9pZCAwP3t9OmIpLmNhO29kKGMsXCJhc2VcIik9PT1cIjVcIiYmaWcoKT8oYj1uZXcgYmcoe3VybDpjLGNhOmJ9KSxiLkRiJiZiLmdifHxiLkViPyhhLmF0dHJpYnV0aW9uU3JjPWNnKGIsMiksYj1mZyhiLDMpKTpiPVwiXCIpOmI9XCJcIjtifHxhLmhhc0F0dHJpYnV0ZShcImF0dHJpYnV0aW9uc3JjXCIpJiZpZygpfHwoYj17Y2E6dGhpcy5DYX0sYj1uZXcgYmcoe3VybDpjLGNhOihiPT09dm9pZCAwP3t9OmIpLmNhfSksYi5EYiYmYi5nYnx8Yi5FYj9iLnVnPyhmZXRjaChjZyhiLDEpLHttZXRob2Q6XCJHRVRcIixrZWVwYWxpdmU6ITAsbW9kZTpcIm5vLWNvcnNcIixyZWRpcmVjdDpcImZvbGxvd1wifSksYj1mZyhiLDEpKTpiPW5hdmlnYXRvci5zZW5kQmVhY29uP25hdmlnYXRvci5zZW5kQmVhY29uKGNnKGIsMCksXCJcIik/ZmcoYiwxKTpmZyhiLDIpOmZnKGIsMCk6Yj1jKTtiJiZcbihiPWIgaW5zdGFuY2VvZiBlYnx8IWdnLnRlc3QoYik/YjpuZXcgZWIoYiksYiE9PWMmJihjPWhiKGIpLGMhPT12b2lkIDAmJihhLmhyZWY9YykpKX07ZnVuY3Rpb24gaWcoKXt2YXIgYTtyZXR1cm4hKChhPWRvY3VtZW50LmZlYXR1cmVQb2xpY3kpPT1udWxsfHwhYS5hbGxvd2VkRmVhdHVyZXMoKS5pbmNsdWRlcyhcImF0dHJpYnV0aW9uLXJlcG9ydGluZ1wiKSl9O3ZhciBqZz1CKGZ1bmN0aW9uKGEpeyhuZXcgaGcpLmhhbmRsZShhKX0sXCJtRFNcIik7dmFyIGtnPS8oWz98Jl17MX1ubT0pKFtcXGRdezEsfSkvLGxnPS8oXFw/fCYpY2xrdD0tP1tcXGRdKi9nLG1nPS8oXFw/fCYpYmc9W14mXSovZyxuZz0vKFxcP3wmKW54PS0/W1xcZF0rL2csb2c9LyhcXD98JilueT0tP1tcXGRdKy9nO2Z1bmN0aW9uIHBnKGEpe3JldHVybiBmdW5jdGlvbigpe2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7YisrKXt2YXIgYz1hW2JdO2lmKGMuSWEpe3ZhciBkPWMuZWxlbWVudC5ocmVmLGU9ZC5tYXRjaChrZyk7ZT9lLmxlbmd0aD09MyYmKGQ9ZC5yZXBsYWNlKGtnLGVbMV0rKHBhcnNlSW50KGVbMl0sMTApKzEpKSk6ZCs9KGQuaW5kZXhPZihcIj9cIik9PS0xP1wiP1wiOlwiJlwiKStcIm5tPTFcIjtxZyhjLGQpfX19fWZ1bmN0aW9uIHJnKGEpe3JldHVybiBmdW5jdGlvbigpe2lmKGEuUmMpe3ZhciBiPVwiJmNsa3Q9XCIrKChuZXcgRGF0ZSkuZ2V0VGltZSgpLWEuUmMpLGM9YS5lbGVtZW50LmhyZWY7Yz1jLnJlcGxhY2UobGcsXCJcIik7cWcoYSxjK2IpfX19XG5mdW5jdGlvbiBzZyhhKXtyZXR1cm4gZnVuY3Rpb24oYil7YS5SYz0obmV3IERhdGUpLmdldFRpbWUoKTt2YXIgYz1pZChhLmVsZW1lbnQpLGQ9TWF0aC5yb3VuZChiLmNsaWVudFgtYy54KTtiPU1hdGgucm91bmQoYi5jbGllbnRZLWMueSk7Yz1hLmVsZW1lbnQuaHJlZjtjPWMucmVwbGFjZShuZyxcIlwiKTtjPWMucmVwbGFjZShvZyxcIlwiKTtxZyhhLGMrKFwiJm54PVwiK2QpKyhcIiZueT1cIitiKSl9fWZ1bmN0aW9uIHRnKGEpe3JldHVybiBmdW5jdGlvbigpe3ZhciBiPWEuZWxlbWVudC5vd25lckRvY3VtZW50O2lmKGI9KGIuZGVmYXVsdFZpZXd8fGIucGFyZW50V2luZG93KS5jc2FiZyl7Yj1cIiZiZz1cIitiLkljKCk7dmFyIGM9YS5lbGVtZW50LmhyZWY7Yz1jLnJlcGxhY2UobWcsXCJcIik7cWcoYSxjK2IpfX19XG5mdW5jdGlvbiB1ZyhhKXthLklhJiYoYS5lbGVtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJtb3VzZW92ZXJcIixwZyhbYV0pKSxhLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlZG93blwiLHNnKGEpKSk7dmFyIGI9cmcoYSksYz10ZyhhKTtrZihhLmVsZW1lbnQsZnVuY3Rpb24oZCl7dWMoXCIuYUNTXCIsRGF0ZS5ub3coKSk7dGMoKTthLklhJiYoYihkKSxjKGQpKTt0cnl7amcoYS5lbGVtZW50KX1jYXRjaChlKXt9fSl9ZnVuY3Rpb24gdmcoYSxiLGMpe3JldHVybiBhLmluZGV4T2YoYik9PS0xJiZhLmxlbmd0aCtiLmxlbmd0aDwxNjMzNCYmKGErPWIrZW5jb2RlVVJJQ29tcG9uZW50KGMpLGEubGVuZ3RoPjE2MzM0KT9hLnN1YnN0cmluZygwLDE2MzM0KTphfVxuZnVuY3Rpb24geGcoYSxiKXtKZChhLmVsZW1lbnQsXCJtb3VzZWRvd25cIixmdW5jdGlvbigpe3RyeXt2YXIgYz1SZChiLCEwKTt2YXIgZD1SZChiLCExKX1jYXRjaChmKXt9aWYoYyYmZCl7dmFyIGU9YS5lbGVtZW50LmhyZWY7ZT12ZyhlLFwiJmlzPVwiLFtkLGNdLmpvaW4oXCJ4XCIpKTtxZyhhLGUpfX0pfVxuZnVuY3Rpb24geWcoYSxiLGMpe2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGg7ZCsrKXt2YXIgZT1hW2RdO3VnKGUpO2lmKGUuSWEmJmUuR2QhPT12b2lkIDApe3ZhciBmPVwiJm5iPVwiKyhlLkdkfHxcIlwiKSxnPWUuZWxlbWVudC5ocmVmO2c9Zy5yZXBsYWNlKHpnLFwiXCIpO2c9Zy5pbmRleE9mKFwiP1wiKT09LTE/ZytmLnJlcGxhY2UoL14mLyxcIj9cIik6ZytmO3FnKGUsZyl9ZS5JYSYmKHhnKGUsYyksZj1OYSgpLmRhdGEucnV8fG51bGwpJiYoZz1lLmVsZW1lbnQuaHJlZixnPXZnKGcsXCImcnVybD1cIixmKSxxZyhlLGcpKX1hLmxlbmd0aD4wJiZiLmFkZEV2ZW50TGlzdGVuZXIoXCJtb3VzZW92ZXJcIixwZyhhKSl9O2Z1bmN0aW9uIEFnKGEsYil7dGhpcy5HZD1iO3RoaXMuSWE9ITA7dGhpcy5lbGVtZW50PWE7dGhpcy5SYz1udWxsfWZ1bmN0aW9uIHFnKGEsYil7Yi5sZW5ndGg+MTYzODR8fChhPWEuZWxlbWVudCxiPWhiKGIpLGIhPT12b2lkIDAmJihhLmhyZWY9YikpfXZhciB6Zz0vWyZcXD9dbmI9XFxkLzt2YXIgQmc9e250OjAsc2s6XCJzaTEyOFwifSxDZz17bnQ6MCxzazpcInNpMTc3XCJ9O2Z1bmN0aW9uIERnKGEpe3ZhciBiPVtdO2E9dShhLnN8fFtdKTtmb3IodmFyIGM9YS5uZXh0KCk7IWMuZG9uZTtjPWEubmV4dCgpKWM9Yy52YWx1ZSxjLnNrIT1cInNpMTI4XCImJmMuc2shPVwic2kxNzdcInx8IWMucnx8KGMuci5iYWM/Yi5wdXNoKGMpOmMuci5oJiYhYy5yLmguaW5jbHVkZXMoXCIlXCIpJiZwYXJzZUludChjLnIuaCwxMCk+MSYmYi5wdXNoKGMpKTtyZXR1cm4gYi5sZW5ndGg9PT0xP2JbMF06Yi5maW5kKGZ1bmN0aW9uKGQpe3JldHVybiBkLnNrPT09XCJzaTEyOFwifSl8fG51bGx9XG5mdW5jdGlvbiBFZyhhLGIsYyxkLGUsZixnKXtmPWY9PT12b2lkIDA/W106ZjtnPWc9PT12b2lkIDA/bnVsbDpnO3RoaXMueGU9eWc7dGhpcy5uYT1bXTt0aGlzLmVjPVtdO3RoaXMuZWI9bnVsbDt0aGlzLk09ZTt0aGlzLm5nPWFmKHZmKGIpKTt2YXIgaD1EZyhiKTtoIT1udWxsJiYodGhpcy5lYj1XZih7czpbaF0sbDpoLnNrPT09XCJzaTEyOFwiP0JnOkNnfSx7fSx7fSkucm9vdEVsZW1lbnQsdGhpcy5lYi5yZW1vdmVBdHRyaWJ1dGUoXCJpZFwiKSk7YT11KGEpO2Zvcih2YXIgaz1hLm5leHQoKTshay5kb25lO2s9YS5uZXh0KCkpaz1rLnZhbHVlLHRoaXMubmEucHVzaChXZihiLGMsa1trLmFkdHlwZV0sZCxlLFtcImJfXCJdKSk7dGhpcy52ZD1iLmF0O3RoaXMuV2Y9Yzt0aGlzLk5mPWQ7dGhpcy5qYz1nO2E6aWYoZD1mLHRoaXMuZWIpaWYoaD0oKGh8fHt9KS5yfHx7fSkucnNpKWI9aDtlbHNle2M9aD0hMTtpZih0aGlzLnZkPT00KWZvcihiPXUoYi5zfHxbXSksZD1iLm5leHQoKTshZC5kb25lO2Q9XG5iLm5leHQoKSlpZihkPWQudmFsdWUsZC5zaz09PVwic2kxMDFcIil7aWYoZC5yLnchPT1cIjEwMCVcIil7Yj1bXTticmVhayBhfX1lbHNle2lmKGQuc2s9PT1cInNpMTQ0XCIpe2M9aD0hMDticmVha319ZWxzZSBoPWQuaW5jbHVkZXMoMiksYz1kLmluY2x1ZGVzKDMpO2I9W107Zm9yKGQ9MDtkPHRoaXMubmEubGVuZ3RoLTE7ZCsrKWIucHVzaChkKTtoJiZiLnVuc2hpZnQoLTEpO2MmJmIucHVzaCh0aGlzLm5hLmxlbmd0aC0xKX1lbHNlIGI9W107dGhpcy5kZT1ifVxuZnVuY3Rpb24gRmcoYSxiKXt2YXIgYz1hLk0uZG9jdW1lbnQuaGVhZCxkPWIucGFyZW50Tm9kZTtjLmFwcGVuZENoaWxkKGEubmcpO3ZhciBlPWI7YS5qYyYmKGMuYXBwZW5kQ2hpbGQoYWYodmYoYS5qYykpKSxlPVdmKGEuamMsYS5XZix7fSxhLk5mLGEuTSksYz1lLnJvb3RFbGVtZW50LGEuZWM9ZS5uZSxkLnJlcGxhY2VDaGlsZChjLGIpLGU9ZC5xdWVyeVNlbGVjdG9yKFwiI2FkQmxvY2tcIiksZS5zZXRBdHRyaWJ1dGUoXCJhcmlhLWxhYmVsXCIsZG9jdW1lbnQudGl0bGUpLGUuc2V0QXR0cmlidXRlKFwicm9sZVwiLFwicmVnaW9uXCIpKTtiPTA7Zm9yKGQ9LTE7ZDxhLm5hLmxlbmd0aDtkKyspZD49MCYmZS5hcHBlbmRDaGlsZChhLm5hW2RdLnJvb3RFbGVtZW50KSxiPGEuZGUubGVuZ3RoJiZhLmRlW2JdPT09ZCYmKGUuYXBwZW5kQ2hpbGQoYS5lYi5jbG9uZU5vZGUoITApKSxiKyspO2E9YT17VmE6T2EoTmEoKSksY2M6YS52ZH07Yj1hLlZhO2Q9XCJcIjtzd2l0Y2goYS5jYyl7Y2FzZSAxOmQrPVxuJGYoYixcImdvb2dBRlNcIik7YnJlYWs7Y2FzZSAyOmQrPSRmKGIsXCJnb29nQUZTaFBMQXNcIik7YnJlYWs7ZGVmYXVsdDpkKz0kZigpfWE9RihkKTthPWFmKGEpO2UuYXBwZW5kQ2hpbGQoYSk7YS5zZXRBdHRyaWJ1dGUoXCJkYXRhLXJlbmRlci1jb21wbGV0ZVwiLCEwKTtyZXR1cm4gZX1cbkVnLnByb3RvdHlwZS5yZW5kZXI9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPW51bGwsZD1LZCgpO2lmKFwiTXV0YXRpb25PYnNlcnZlclwiaW4gd2luZG93KXJldHVybihuZXcgTXV0YXRpb25PYnNlcnZlcihmdW5jdGlvbihlLGYpe2U9dShlKTtmb3IodmFyIGc9ZS5uZXh0KCk7IWcuZG9uZTtnPWUubmV4dCgpKWcudmFsdWUuYXR0cmlidXRlTmFtZT09XCJkYXRhLXJlbmRlci1jb21wbGV0ZVwiJiYoZC5yZXNvbHZlKGMpLGYuZGlzY29ubmVjdCgpKX0pKS5vYnNlcnZlKGEucGFyZW50RWxlbWVudCx7c3VidHJlZTohMCxhdHRyaWJ1dGVzOiEwLGF0dHJpYnV0ZUZpbHRlcjpbXCJkYXRhLXJlbmRlci1jb21wbGV0ZVwiXX0pLGM9RmcodGhpcyxhKSxkLnByb21pc2UudGhlbihmdW5jdGlvbihlKXtyZXR1cm4gTGQoYi5NLGUpfSkudGhlbihmdW5jdGlvbihlKXtHZyhiLGUsYi5NKTtyZXR1cm4gZX0pO2M9RmcodGhpcyxhKTt0aGlzLk0uc2V0VGltZW91dChmdW5jdGlvbigpe0dnKGIsYyxiLk0pO1xuTmEoKS5kYXRhLmljdjImJlwicmVxdWVzdEFuaW1hdGlvbkZyYW1lXCJpbiBiLk0/Yi5NLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2QucmVzb2x2ZShjKX0pOmQucmVzb2x2ZShjKX0sMCk7cmV0dXJuIGQucHJvbWlzZX07XG5mdW5jdGlvbiBHZyhhLGIsYyl7Zm9yKHZhciBkPVtdLGU9dShiLnF1ZXJ5U2VsZWN0b3JBbGwoXCJhW2hyZWZdXCIpKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlpZihmPWYudmFsdWUsZi5nZXRBdHRyaWJ1dGUoXCJkYXRhLW5vdHJhY2tcIikhPVwidHJ1ZVwiKXt2YXIgZz1mLmdldEF0dHJpYnV0ZShcImRhdGEtbmJcIil8fHZvaWQgMDtkLnB1c2gobmV3IEFnKGYsZykpfWU9dShiLnF1ZXJ5U2VsZWN0b3JBbGwoXCJbZGF0YS1waW5nYmFjay10eXBlXVwiKSk7Zj1lLm5leHQoKTtmb3IoZz17fTshZi5kb25lO2c9e3ljOnZvaWQgMH0sZj1lLm5leHQoKSlnLnljPWYudmFsdWUsZy55Yy5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIixmdW5jdGlvbihoKXtyZXR1cm4gZnVuY3Rpb24oKXtVYihNYigpLGgueWMuZ2V0QXR0cmlidXRlKFwiZGF0YS1waW5nYmFjay10eXBlXCIpKX19KGcpKTtlPXUoYi5xdWVyeVNlbGVjdG9yQWxsKFwiLmJfXCIpKTtmb3IoZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpZi52YWx1ZS5zZXRBdHRyaWJ1dGUoXCJkYXRhLWJnXCIsXG5cInRydWVcIik7YS54ZShkLGIsYy5kb2N1bWVudC5ib2R5KTtkPXUoYS5uYSk7Zm9yKGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWU9ZS52YWx1ZSxZZihjLGUubmV8fFtdKSxYZihiLGUuZGcpO2EuZWMubGVuZ3RoPjAmJllmKGMsYS5lYyl9O3ZhciBJZz1CKGZ1bmN0aW9uKGEsYixjLGQsZSxmKXtjPWM9PT12b2lkIDA/ITE6YztkPWQ9PT12b2lkIDA/eWc6ZDtlPWU9PT12b2lkIDA/QmY6ZTtmPWY9PT12b2lkIDA/WGY6Zjtmb3IodmFyIGc9dShiLnF1ZXJ5U2VsZWN0b3JBbGwoXCJbZGF0YS13dGEtYnViYmxlXVwiKSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpe2g9aC52YWx1ZTt2YXIgaz1oLmdldEF0dHJpYnV0ZShcImRhdGEtd3RhLWJ1YmJsZVwiKTtpZihrKXt2YXIgbD1hLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGspO2lmKCFsKXRocm93IEVycm9yKFwiQ291bGQgbm90IGZpbmQgZWxlbWVudCB3aXRoIGlkOiBcIitrKTtlKGIsaCxsKX19ZT11KGIucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLXBpbmdiYWNrLXR5cGVdXCIpKTtnPWUubmV4dCgpO2ZvcihoPXt9OyFnLmRvbmU7aD17emM6dm9pZCAwfSxnPWUubmV4dCgpKWguemM9Zy52YWx1ZSxoLnpjLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLGZ1bmN0aW9uKG0pe3JldHVybiBmdW5jdGlvbigpe1ViKE1iKCksXG5tLnpjLmdldEF0dHJpYnV0ZShcImRhdGEtcGluZ2JhY2stdHlwZVwiKSl9fShoKSk7ZT11KGIucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLXNldC10YXJnZXRdXCIpKTtmb3IoZz1lLm5leHQoKTshZy5kb25lO2c9ZS5uZXh0KCkpZz1nLnZhbHVlLGMmJihnLnRhcmdldD1cIl9ibGFua1wiKSxnLnJlbW92ZUF0dHJpYnV0ZShcImRhdGEtc2V0LXRhcmdldFwiKTtjPXUoYi5xdWVyeVNlbGVjdG9yQWxsKFwiLmNsaWNrdHJhY2tlZEFkX2pzXCIpKTtmb3IoZT1jLm5leHQoKTshZS5kb25lO2U9Yy5uZXh0KCkpZT1lLnZhbHVlLGUuc2V0QXR0cmlidXRlKFwiZGF0YS1iZ1wiLFwidHJ1ZVwiKSxmKGIsZS5pZCk7Zj1bXTtjPXUoYi5xdWVyeVNlbGVjdG9yQWxsKFwiYVtocmVmXVwiKSk7Zm9yKGU9Yy5uZXh0KCk7IWUuZG9uZTtlPWMubmV4dCgpKWU9ZS52YWx1ZSxlLmdldEF0dHJpYnV0ZShcImRhdGEtbm90cmFja1wiKSE9PVwidHJ1ZVwiJiYoZz1lLmdldEF0dHJpYnV0ZShcImRhdGEtbmJcIil8fHZvaWQgMCxmLnB1c2gobmV3IEFnKGUsXG5nKSkpO2QoZixiLGIpO0hnKGEsYil9LFwiYVBSU1wiKSxIZz1CKGZ1bmN0aW9uKGEsYil7dmFyIGM9Yi5xdWVyeVNlbGVjdG9yQWxsKFwiW2RhdGEtYWQtY29udGFpbmVyXVwiKTtpZighKGMubGVuZ3RoPDEpKXt2YXIgZD1jWzBdLGU9Yi5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS1oaWRlLW5vZGUtZXZlbnQ9XCJTQ1JPTExfQkVHSU5cIl0nKSxmPWIucXVlcnlTZWxlY3RvckFsbCgnW2RhdGEtaGlkZS1ub2RlLWV2ZW50PVwiU0NST0xMX0VORFwiXScpO2M9ZS5sZW5ndGg+MHx8Zi5sZW5ndGg+MDt2YXIgZz1mdW5jdGlvbigpe2Zvcih2YXIgaz1NYXRoLmFicyhNYXRoLnJvdW5kKGQuc2Nyb2xsTGVmdCkpLGw9TWF0aC5yb3VuZChkLnNjcm9sbFRvcCksbT11KGUpLHA9bS5uZXh0KCk7IXAuZG9uZTtwPW0ubmV4dCgpKXtwPXAudmFsdWU7dmFyIHI9ITE7ZC5zdHlsZS5vdmVyZmxvd1g9PT1cImF1dG9cIj9yPWshPT0wOmQuc3R5bGUub3ZlcmZsb3dZPT09XCJhdXRvXCImJihyPWwhPT0wKTtwLnN0eWxlLnZpc2liaWxpdHk9XG5yP1widmlzaWJsZVwiOlwiaGlkZGVuXCJ9bT11KGYpO2ZvcihwPW0ubmV4dCgpOyFwLmRvbmU7cD1tLm5leHQoKSlwPXAudmFsdWUscj0hMCxkLnN0eWxlLm92ZXJmbG93WD09PVwiYXV0b1wiP3I9ayE9PWQuc2Nyb2xsV2lkdGgtZC5jbGllbnRXaWR0aDpkLnN0eWxlLm92ZXJmbG93WT09PVwiYXV0b1wiJiYocj1sIT09ZC5zY3JvbGxIZWlnaHQtZC5jbGllbnRIZWlnaHQpLHAuc3R5bGUudmlzaWJpbGl0eT1yP1widmlzaWJsZVwiOlwiaGlkZGVuXCJ9O2MmJihkLmFkZEV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIixnKSx0eXBlb2YgUmVzaXplT2JzZXJ2ZXI9PT1cImZ1bmN0aW9uXCI/KG5ldyBSZXNpemVPYnNlcnZlcihnKSkub2JzZXJ2ZShkKTphLmFkZEV2ZW50TGlzdGVuZXIoXCJyZXNpemVcIixnKSk7YT11KGIucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLXNjcm9sbC1kaXNwbGFjZW1lbnRdXCIpKTt2YXIgaD1hLm5leHQoKTtmb3IoYj17fTshaC5kb25lO2I9e1FhOnZvaWQgMCxCYTp2b2lkIDB9LGg9YS5uZXh0KCkpaWYoaD1cbmgudmFsdWUsYi5RYT1oLmdldEF0dHJpYnV0ZShcImRhdGEtc2Nyb2xsLWRpc3BsYWNlbWVudFwiKSxiLlFhKXtiLkJhPU51bWJlcihiLlFhKTtpZihpc05hTihiLkJhKSl0aHJvdyBFcnJvcihcIlNjcm9sbCBEaXNwbGFjZW1lbnQgaXMgbm90IGEgbnVtYmVyOiBcIitiLlFhKTtoLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLGZ1bmN0aW9uKGspe3JldHVybiBmdW5jdGlvbigpe3ZhciBsPWQuY2xpZW50V2lkdGgsbT1OdW1iZXIoay5RYSkscD1NYXRoLmFicyhkLnNjcm9sbExlZnQpPT09ZC5zY3JvbGxXaWR0aC1sLHI9TWF0aC5hYnMobSk7bT1tPDA7dmFyIHQ9TnVtYmVyKEthKCkuZGF0YS5wY3NicHx8XCI1MFwiKTt2YXIgdj1OdW1iZXIoS2EoKS5kYXRhLnBjc2JzfHxcIjUwXCIpO2lzTmFOKHYpJiYodj01MCk7aXNOYU4odCkmJih0PTUwKTt0PXYrdDtsPU1hdGguZmxvb3IoKHA/bC10OmwpL3IpKnI7dj1tPy1sOmw7cCYmKHYrPW0/LXQ6dCk7bDxyJiYodj1tPy1yOnIpO2suQmE9djtkLnN0eWxlLm92ZXJmbG93WD09PVxuXCJhdXRvXCI/ZC5zY3JvbGxMZWZ0Kz1rLkJhOmQuc3R5bGUub3ZlcmZsb3dZPT09XCJhdXRvXCImJihkLnNjcm9sbFRvcCs9ay5CYSk7cD1rLkJhPDA/XCJjYmxjXCI6XCJjYnJjXCI7cj1NYigpO0piJiZQYihyLHApfX0oYikpfWMmJmcoKX19LFwiYVNIXCIpO2Z1bmN0aW9uIEpnKGEpe3ZhciBiPWE7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYil7dmFyIGM9YjtiPW51bGw7YygpfX19O2Z1bmN0aW9uIEtnKGEsYixjKXthLmFkZEV2ZW50TGlzdGVuZXImJmEuYWRkRXZlbnRMaXN0ZW5lcihiLGMsITEpfWZ1bmN0aW9uIExnKGEsYixjKXthLnJlbW92ZUV2ZW50TGlzdGVuZXImJmEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMsITEpfTtmdW5jdGlvbiBNZyhhLGIpe2lmKGEpZm9yKHZhciBjIGluIGEpT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGEsYykmJmIoYVtjXSxjLGEpfWZ1bmN0aW9uIE5nKGEsYil7Zm9yKHZhciBjPTA7Yzw1MDsrK2Mpe3RyeXt2YXIgZD0hKCFhLmZyYW1lc3x8IWEuZnJhbWVzW2JdKX1jYXRjaChnKXtkPSExfWlmKGQpcmV0dXJuIGE7YTp7dHJ5e3ZhciBlPWEucGFyZW50O2lmKGUmJmUhPWEpe3ZhciBmPWU7YnJlYWsgYX19Y2F0Y2goZyl7fWY9bnVsbH1pZighKGE9ZikpYnJlYWt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gT2coYSl7YT1hPT09dm9pZCAwP2RvY3VtZW50OmE7cmV0dXJuIGEuY3JlYXRlRWxlbWVudChcImltZ1wiKX07ZnVuY3Rpb24gUGcoYSxiLGMpe2M9Yz09PXZvaWQgMD9kb2N1bWVudDpjO3ZhciBkPVljKGMpLmNyZWF0ZUVsZW1lbnQoXCJTQ1JJUFRcIik7ZC50eXBlPVwidGV4dC9qYXZhc2NyaXB0XCI7YiYmKGQub25yZWFkeXN0YXRlY2hhbmdlIT09dm9pZCAwP2Qub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7aWYoZC5yZWFkeVN0YXRlPT1cImNvbXBsZXRlXCJ8fGQucmVhZHlTdGF0ZT09XCJsb2FkZWRcIil0cnl7YiYmYigpfWNhdGNoKGYpe319OmQub25sb2FkPWIpO21iKGQsY2IoYT09PW51bGw/XCJudWxsXCI6YT09PXZvaWQgMD9cInVuZGVmaW5lZFwiOmEpKTt2YXIgZT1jLmdldEVsZW1lbnRzQnlUYWdOYW1lKFwiaGVhZFwiKVswXTtpZihlKXRyeXt5YS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZS5hcHBlbmRDaGlsZChkKX0sMCl9Y2F0Y2goZil7fX07ZnVuY3Rpb24gUWcoYSxiLGMpe3ZhciBkPXRoaXM7dGhpcy5tZz1iO3RoaXMuZGY9Yzt0aGlzLmhhPVwiMFwiO3RoaXMuRGQ9bnVsbDt0aGlzLk09YTt0aGlzLnRhPW51bGw7YSYmYS5kb2N1bWVudCYmYS5kb2N1bWVudC5yZWFkeVN0YXRlPT09XCJjb21wbGV0ZVwiP3RoaXMub2IoKTpKZChhLFwibG9hZFwiLGZ1bmN0aW9uKCl7cmV0dXJuIGQub2IoKX0pfW49UWcucHJvdG90eXBlO1xubi5vYj1mdW5jdGlvbigpe3ZhciBhPXRoaXM7aWYoIXRoaXMudGEpe3ZhciBiPShuZXcgWmModGhpcy5NLmRvY3VtZW50KSkuY3JlYXRlRWxlbWVudChcIklGUkFNRVwiKTtiLmZyYW1lQm9yZGVyPVwiMFwiO2Iuc3R5bGUuaGVpZ2h0PTA7Yi5zdHlsZS53aWR0aD0wO2Iuc3R5bGUucG9zaXRpb249XCJhYnNvbHV0ZVwiO3RoaXMudGE9Yjt0aGlzLk0uZG9jdW1lbnQuYm9keSYmKHRoaXMuTS5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGIpLHRoaXMudGEuY29udGVudERvY3VtZW50P3RoaXMuUWIoKTpKZCh0aGlzLnRhLFwibG9hZFwiLGZ1bmN0aW9uKCl7cmV0dXJuIGEuUWIoKX0pKX19O1xubi5RYj1mdW5jdGlvbigpe3ZhciBhPXRoaXMsYj10aGlzLnRhO2ImJihiPWIuY29udGVudERvY3VtZW50P2IuY29udGVudERvY3VtZW50OmIuY29udGVudFdpbmRvdz9iLmNvbnRlbnRXaW5kb3cuZG9jdW1lbnQ6bnVsbCkmJih0aGlzLmhhPVwiMVwiLGIub3BlbigpLHRiKGIpLGIuY2xvc2UoKSxQZyh0aGlzLm1nLGZ1bmN0aW9uKCl7cmV0dXJuIGEubmMoKX0sYikpfTtuLm5jPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcy50YTtpZihhKWlmKGE9YS5jb250ZW50V2luZG93LHRoaXMuaGE9XCJcIixhLmJvdGd1YXJkKWlmKGE9YS5ib3RndWFyZC5iZyl0cnl7dGhpcy5EZD1uZXcgYSh0aGlzLmRmKX1jYXRjaChiKXt0aGlzLmhhPVwiNVwifWVsc2UgdGhpcy5oYT1cIjNcIjtlbHNlIHRoaXMuaGE9XCIyXCJ9O1xubi5JYz1mdW5jdGlvbigpe2lmKHRoaXMuaGEpcmV0dXJuIHRoaXMuaGE7dmFyIGE9dGhpcy5EZDtpZighYSlyZXR1cm5cIjVcIjtpZighYS5pbnZva2UpcmV0dXJuXCI0XCI7dmFyIGI9XCJcIjt0cnl7YS5pbnZva2UoZnVuY3Rpb24oYyl7Yj1jfSl9Y2F0Y2goYyl7cmV0dXJuXCI2XCJ9cmV0dXJuIHR5cGVvZiBiIT09XCJzdHJpbmdcInx8Yi5sZW5ndGg9PTA/XCI2XCI6Yi5sZW5ndGg8Mz9cIjdcIjpiLmxlbmd0aD4yNTUwP1wiOFwiOmJ9O24ub2I9eihRZy5wcm90b3R5cGUub2IsXCJCR2NJXCIpO24uUWI9eihRZy5wcm90b3R5cGUuUWIsXCJCR3BJXCIpO24ubmM9eihRZy5wcm90b3R5cGUubmMsXCJCR2NCVlwiKTtuLkljPXooUWcucHJvdG90eXBlLkljLFwiQkdnQlJcIik7ZnVuY3Rpb24gUmcoYSl7dmFyIGI9e307YT11KGEpO2Zvcih2YXIgYz1hLm5leHQoKTshYy5kb25lO2M9YS5uZXh0KCkpe2M9Yy52YWx1ZTt2YXIgZD1jLmF0O2JbZF09YltkXXx8e307aWYoYy5jKXtiW2RdLmNvbnRhaW5lck1hcD1iW2RdLmNvbnRhaW5lck1hcHx8e307Zm9yKHZhciBlPXUoYy5jKSxmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSliW2RdLmNvbnRhaW5lck1hcFtmLnZhbHVlXT1jfWVsc2UgYltkXVtcImRlZmF1bHRcIl09Y310aGlzLnBkPWJ9ZnVuY3Rpb24gU2coYSxiLGMpe3ZhciBkPVRnW2JdO2lmKCFhLnBkW2RdKXJldHVybiBudWxsO2I9YS5wZFtkXVtcImRlZmF1bHRcIl07cmV0dXJuKGE9YS5wZFtkXS5jb250YWluZXJNYXApP2FbY118fGI6Yn12YXIgVWc9e30sVGc9KFVnWzBdPTEsVWdbM109MixVZ1syXT00LFVnKTt2YXIgVmc9QihmdW5jdGlvbihhKXtpZighYSlyZXR1cm57fTt2YXIgYj17fTthPXUoYSk7Zm9yKHZhciBjPWEubmV4dCgpOyFjLmRvbmU7Yz1hLm5leHQoKSl7dmFyIGQ9Yy52YWx1ZTtjPWQubjtkPWQudjtkPT09XCJ0XCI/YltjXT0hMDpkIT09XCJmXCImJihiW2NdPWQpfXJldHVybiBifSxcImNKQ1RNXCIpO3ZhciBXZz1oYShbXCJodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9XCIsXCJcIl0pLFhnPWRvY3VtZW50O2Z1bmN0aW9uIFlnKGEpe3ZhciBiPSEhS2EoKS5kYXRhLmFyYndmLGM9YTtiJiYoYz1hLm1hcChmdW5jdGlvbihkKXtyZXR1cm4gZCtcIjo0MDAsNzAwXCJ9KSk7YT1WYyhXZyxjLmpvaW4oXCJ8XCIpKTsoYj1LYSgpLmRhdGEuZmR8fG51bGwpJiYoYT1XYyhhLG5ldyBNYXAoW1tcImRpc3BsYXlcIixiXV0pKSk7cmV0dXJuIGF9ZnVuY3Rpb24gWmcoKXt0aGlzLkZjPU5hKCkuZGF0YS53ZnRsfHxbXTt0aGlzLmtlPXRoaXMuRmMubGVuZ3RoPjA/WWcodGhpcy5GYyk6bnVsbDt0aGlzLk9hPW51bGw7dGhpcy5MZD0hMX1cbmZ1bmN0aW9uICRnKGEsYil7aWYoYS5rZSl0cnl7dmFyIGM9Yi5kb2N1bWVudCxkPWMuY3JlYXRlRWxlbWVudChcImxpbmtcIiksZT1hLmtlO2lmKGUgaW5zdGFuY2VvZiAkYSlkLmhyZWY9ZGIoZSkudG9TdHJpbmcoKSxkLnJlbD1cInN0eWxlc2hlZXRcIjtlbHNle2lmKGxiLmluZGV4T2YoXCJzdHlsZXNoZWV0XCIpPT09LTEpdGhyb3cgRXJyb3IoJ1RydXN0ZWRSZXNvdXJjZVVybCBocmVmIGF0dHJpYnV0ZSByZXF1aXJlZCB3aXRoIHJlbD1cInN0eWxlc2hlZXRcIicpO3ZhciBmPWhiKGUpO2YhPT12b2lkIDAmJihkLmhyZWY9ZixkLnJlbD1cInN0eWxlc2hlZXRcIil9Yy5oZWFkLmFwcGVuZENoaWxkKGQpfWNhdGNoKGcpe2EuT2E9Z319XG5mdW5jdGlvbiBhaChhKXtpZighYS5MZCYmWGcuZm9udHMmJnR5cGVvZiBYZy5mb250cy5sb2FkPT1cImZ1bmN0aW9uXCIpe2EuTGQ9ITA7YT11KGEuRmMpO2Zvcih2YXIgYj1hLm5leHQoKSxjPXt9OyFiLmRvbmU7Yz17UGM6dm9pZCAwfSxiPWEubmV4dCgpKXtiPWIudmFsdWU7dmFyIGQ9XCJcIixlPWIuc3BsaXQoXCI6XCIpO2UubGVuZ3RoPT09MiYmKGI9ZVswXSxlWzFdPT09XCI3MDBcIiYmKGQ9XCJib2xkIFwiKSk7IShiLmluZGV4T2YoXCIgXCIpPj0wKXx8Yi5zdGFydHNXaXRoKFwiJ1wiKSYmYi5lbmRzV2l0aChcIidcIil8fChiPVwiJ1wiK2IrXCInXCIpO2MuUGM9ZCtcIjEycHggXCIrYjtYZy5mb250cy5sb2FkKGMuUGMpLmNhdGNoKGZ1bmN0aW9uKGYpe3JldHVybiBmdW5jdGlvbihnKXtBLmxvZygoZyBpbnN0YW5jZW9mIEVycm9yP2cubWVzc2FnZTpTdHJpbmcoZykpK1wiIC0gXCIrZi5QYyxcIm1mZmxcIil9fShjKSl9fX07dmFyIGJoPW51bGwsY2g9e2FkczowLHJzczoyLHBiczozLGFkX2RhdGE6OCxzYnM6NX0sZGg9e3RleHRfYWRzOjAscGxhX25wYWNrOjMscmVsYXRlZF9zZWFyY2g6Mn0sZWg9e3N0YXR1c0FkdWx0Olwicy5hRFVMVFwiLHN0YXR1c0ZhaWxsaXN0ZWQ6XCJzLmZMXCIsc3RhdHVzVHJhZGVtYXJrOlwicy50TVwiLHN0YXR1c05lZWRzUmV2aWV3Olwicy5uUlwifSxMPXt9LGZoPSExO2Z1bmN0aW9uIGdoKGEpeyFiaCYmYS5uYW1lJiYoYmg9KGE9YS5uYW1lLm1hdGNoKC9tYXN0ZXItKFxcZCspLykpJiZhWzFdP2FbMV06bnVsbCk7Ymh8fChiaD0tMSk7cmV0dXJuIGJofWdoPXooZ2gsXCJnTU5cIik7ZnVuY3Rpb24gaGgoYSl7dmFyIGI9XCJtYXN0ZXItXCIrZ2goYSk7cmV0dXJuIEhkKGIsYSl9aGg9eihoaCxcImdNSVwiKTtcbmZ1bmN0aW9uIGloKGEsYixjKXt0cnl7aWYoYS5kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShcImh0bWxcIikpe3ZhciBkPWEuZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJodG1sXCIpWzBdO2QmJighZC5sYW5nJiZiJiYoZC5sYW5nPWIpLCFkLmRpciYmYyYmKGQuZGlyPWMpKX19Y2F0Y2goZSl7fX1paD16KGloLFwic1NJTERcIik7ZnVuY3Rpb24gamgoYSxiKXt0cnl7aWYoYiE9PXZvaWQgMCl7dmFyIGM9YS5kb2N1bWVudC5jcmVhdGVFbGVtZW50KFwibWV0YVwiKTtjLmh0dHBFcXVpdj1cIm9yaWdpbi10cmlhbFwiO2MuY29udGVudD1iO2EuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChjKX19Y2F0Y2goZCl7fX1qaD16KGpoLFwic09UT0ZcIik7XG5mdW5jdGlvbiBraChhLGIpe3ZhciBjPXt9O2E9dShhKTtmb3IodmFyIGQ9YS5uZXh0KCk7IWQuZG9uZTtkPWEubmV4dCgpKWQ9ZC52YWx1ZSxjW2Qua109ZC52O2I9dShiKTtmb3IoYT1iLm5leHQoKTshYS5kb25lO2E9Yi5uZXh0KCkpYT1hLnZhbHVlLGNbYS5rXT1hLnY7cmV0dXJuIGN9XG5mdW5jdGlvbiBsaChhLGIsYyxkLGUsZixnLGgsayxsLG0pe2Z1bmN0aW9uIHAodyl7dmFyIEM9dmQoYik7bmYoaCx3LEMpO2EucmVxdWVzdEFuaW1hdGlvbkZyYW1lJiZhLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe3cuc3R5bGUudHJhbnNmb3JtPVwicm90YXRlWigwZGVnKVwifSl9dmFyIHI9a2goZy5yfHxbXSxrLnJ8fFtdKSx0PShmPWRbMF0udHlwZT09PTIpPyExOmgubGlua1RhcmdldD09XCJfYmxhbmtcIix2PXBmKCk7aGYodixhLmRvY3VtZW50LmhlYWQpO2Q9bmV3IEVnKGQsayxyLHQsYSxtLGwpO1wiaWV2XCJpbiBrJiZ2YyhiK1wiLmVWXCIsay5pZXYpO21oKGcsYik7Yz1kLnJlbmRlcihjKS50aGVuKGZ1bmN0aW9uKHcpe3Aodyk7cmV0dXJuIHd9KTtmJiZoLnJlbGF0ZWRTZWFyY2hVc2VSZXN1bHRDYWxsYmFjayYmKGM9Yy50aGVuKGZ1bmN0aW9uKHcpe25oKHcsZSk7cmV0dXJuIHd9KSk7cmV0dXJuIGN9bGg9eihsaCxcImZTQVwiKTtcbmZ1bmN0aW9uIG9oKGEsYixjLGQsZSxmLGcsaCl7TmEoKS5iYSgpJiYoYS5kb2N1bWVudC5kaXI9XCJydGxcIik7YT1kWzBdLnR5cGU7Z2YoYyxoLGUpO3BoKGQsYyxoLGYsYSk7Yj12ZChiKTtuZihoLGMsYil9b2g9eihvaCxcImZBXCIpO2Z1bmN0aW9uIHFoKGEsYixjLGQsZSxmKXtpaChhLGUsZik7cmgoYSk7JGcoYyxhKTthaChjKTthPWEuZG9jdW1lbnQuaGVhZDtiIT09bnVsbCYmYS5hcHBlbmRDaGlsZChiLmNsb25lTm9kZSghMCkpO2EuYXBwZW5kQ2hpbGQoZCl9cWg9eihxaCxcInBTUlNcIik7XG5mdW5jdGlvbiBzaChhLGIsYyxkLGUsZixnLGgpe2lmKGIgaW4gTCl7dmFyIGs9bnVsbDt0cnl7az1hLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYWRCbG9ja1wiKSxDZFtiXT0hMH1jYXRjaChwKXt9aWYoayE9bnVsbCl7ay5zZXRBdHRyaWJ1dGUoXCJhcmlhLWxhYmVsXCIsZG9jdW1lbnQudGl0bGUpO2suc2V0QXR0cmlidXRlKFwicm9sZVwiLFwicmVnaW9uXCIpO2lmKGMpe2Zvcih2YXIgbD1kb2N1bWVudC5jcmVhdGVEb2N1bWVudEZyYWdtZW50KCk7Yy5maXJzdEVsZW1lbnRDaGlsZDspbC5hcHBlbmRDaGlsZChjLmZpcnN0RWxlbWVudENoaWxkKTtrLmFwcGVuZENoaWxkKGwpfXZhciBtPWs7XCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWVcImluIGE/YS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnVuY3Rpb24oKXtkKGEsbSxmKX0pOmQoYSxtLGYpO2M9dmQoYik7bD1qZShiLGUpO25mKGwsayxjKTtnJiZsLnJlbGF0ZWRTZWFyY2hVc2VSZXN1bHRDYWxsYmFjayYmbmgoayxlKTtoLmJnJiYoZT1uZXcgUWcoYSxcbmguYmcuaSxoLmJnLnApLGEuY3NhYmc9ZSk7ZGVsZXRlIExbYl19fX1zaD16KHNoLFwicFNSQUhcIik7ZnVuY3Rpb24gdGgoYSxiKXthPUhkKGEsYik7aWYoYT09bnVsbClyZXR1cm4gbnVsbDtiPW51bGw7dHJ5e2I9YS5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIil9Y2F0Y2goYyl7fXJldHVybiBiPT1udWxsP251bGw6YX10aD16KHRoLFwiZ0ZJQUJcIik7XG5mdW5jdGlvbiB1aChhLGIsYyxkLGUsZil7dmFyIGc9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzc3JhYlwiKSxoPWdoKGEpLGs9UmEoKSxsPW5ldyBaZyxtPVtdLHA9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzc3ItYm9pbGVycGxhdGVcIik7aWYodmgoKS5sZW5ndGg+MCl7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzc3JmXCIpIT09bnVsbHx8JGcobCx3aW5kb3cpO2FoKGwpO3ZhciByPVwibWFzdGVyLVwiK2gsdD1qZShyLGEpO3NoKHdpbmRvdyxyLG51bGwsSWcsYSx0LmxpbmtUYXJnZXQ9PVwiX2JsYW5rXCIsdC50eXBlPT09XCJyZWxhdGVkc2VhcmNoXCIsYyl9Zm9yKHI9MDtyPGcuY2hpbGRFbGVtZW50Q291bnQ7KXt0PWcuY2hpbGRyZW5bcl07dmFyIHY9dC5pZC5zcGxpdChcIi1cIik7cis9MTtpZighKHYubGVuZ3RoPDIpKXt2YXIgdz12LnNoaWZ0KCk7aWYodz09PVwic3NyYWRcInx8dz09PVwic3Nyc1wifHx3PT1cInNzcnNiXCIpe3YucHVzaChoLnRvU3RyaW5nKCkpO3Y9di5qb2luKFwiLVwiKTt2YXIgQz1cbmplKHYsYSksUj1DLmxpbmtUYXJnZXQ9PVwiX2JsYW5rXCIsUD1DLnR5cGU9PT1cInJlbGF0ZWRzZWFyY2hcIixVPXRoKHYsYSk7aWYoVT09bnVsbCltLnB1c2godik7ZWxzZSBpZihnLnJlbW92ZUNoaWxkKHQpLC0tcix3PT09XCJzc3JzXCIpcWgoVSxwLGwsdCxkLGUsZik7ZWxzZSBpZih3PT09XCJzc3JhZFwiKXNoKFUsdix0LElnLGEsUixQLGMpO2Vsc2UgaWYodz09PVwic3Nyc2JcIil7dD1udWxsO3RyeXt0PVUuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhZEJsb2NrXCIpfWNhdGNoKGFiKXt9dCE9bnVsbCYmKG9oKFUsdix0LGMuc2JzLGEsYixjLEMpLENkW3ZdPSEwLGRlbGV0ZSBMW3ZdKX19fX1mb3IodmFyIHZhIGluIEwpbS5pbmRleE9mKHZhKTwwJiYodmModmErXCIuaEFcIiwhMSksU2EoaykmJnVjKHZhK1wiLmFDXCIsMCksZGVsZXRlIExbdmFdKTttLmxlbmd0aD09MCYmZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChnKTt0YygpO2wuT2EmJkEubG9nKGwuT2EsXCJsd2YyXCIpfXVoPXoodWgsXCJwU1JBXCIpO1xuZnVuY3Rpb24gd2goYSxiLGMpe3ZhciBkPWhoKGEpO3ZjKFwidXNlT2JzZXJ2ZXJGb3JWaXNpYmlsaXR5RGV0ZWN0aW9uXCIsISFLYSgpLmRhdGEuZW92ZCk7aWYoZCl7dmFyIGU9ZC5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQubGFuZzt2YXIgZj1kLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5kaXI7ZC5kb2N1bWVudC5xdWVyeVNlbGVjdG9yKFwiaGVhZFwiKSYmcmgoZCl9dmFyIGc9KGQ9Yy5hdCkmJmQubGVuZ3RoPjA/bmV3IFJnKGQpOnZvaWQgMCxoPShkPWMuYWN0KT9uZXcgUmcoZCk6dm9pZCAwLGs9T2JqZWN0LmtleXMoTCkuc2xpY2UoKSxsPW5ldyBaZztkPVtdO2lmKEJkKCkpdWgoYSxiLGMsZSxmLFwiQTRUVkQwb0RvUlVuQlpnWURkTlZBUllJUFNtSmd5U0VzWWRQQU5ScnJnUTdRaXRQc090eTBlWklCc2psSEZGSndERlUvOFFtblJGMmtMNXhiNFJQOVE0QUFBQ0VleUp2Y21sbmFXNGlPaUpvZEhSd2N6b3ZMM2QzZHk1bmIyOW5iR1V1WTI5dE9qUTBNeUlzSW1abFlYUjFjbVVpT2lKUWNtbDJZV041VTJGdVpHSnZlRUZrYzBGUVNYTWlMQ0psZUhCcGNua2lPakUyT1RVeE5qYzVPVGtzSW1selUzVmlaRzl0WVdsdUlqcDBjblZsTENKcGMxUm9hWEprVUdGeWRIa2lPblJ5ZFdWOVwiKSxcbmQucHVzaChQcm9taXNlLnJlc29sdmUoKSk7ZWxzZSBmb3IodmFyIG0gaW4gTCl7dmFyIHA9TFttXSxyPXBbMF0udHlwZSx0PUhkKG0sYSk7aWYodCE9bnVsbCl7aWgodCxlLGYpO2poKHQsdm9pZCAwKTt2YXIgdj1udWxsO3RyeXt2PXQuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhZEJsb2NrXCIpfWNhdGNoKFUpe31pZih2IT1udWxsKXt2LnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIixkb2N1bWVudC50aXRsZSk7di5zZXRBdHRyaWJ1dGUoXCJyb2xlXCIsXCJyZWdpb25cIik7cmgodCk7JGcobCx0KTthaChsKTt2YXIgdz1yPT0yLEM9cj09NSxSPWplKG0sYSksUD1udWxsO2cmJlNnKGcscixSLmNvbnRhaW5lcik/KFA9U2coZyxyLFIuY29udGFpbmVyKSxyPWg/U2coaCxyLFIuY29udGFpbmVyKTpudWxsLHcmJm9mKFIscCksdz14aChtLGspLFA9bGgodCxtLHYscCxhLGIsYyxSLFAscix3KSk6KEN8fEEubG9nKHIsXCJ1bnhMUkJcIiksUD1Qcm9taXNlLnJlc29sdmUoKSxvaCh0LG0sdixwLGEsXG5iLGMsUikpO2MuYmcmJihwPW5ldyBRZyh0LGMuYmcuaSxjLmJnLnApLHQuY3NhYmc9cCk7ZC5wdXNoKFApO0NkW21dPSEwO2RlbGV0ZSBMW21dfX19bC5PYSYmQS5sb2cobC5PYSxcImx3ZjJcIik7aWYoS2EoKS5kYXRhLmVwdGUpZm9yKGI9dShrKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSljPUhkKGMudmFsdWUsYSksYyE9bnVsbCYmeWgoYyk7cmV0dXJuIE5kKGQpLnRoZW4oZnVuY3Rpb24oKXt2YXIgVT1MYSgpO3poKGEsISFnfHxVLFUpfSl9d2g9eih3aCxcIm1QQUFTSFwiKTt2YXIgQWg9dHlwZW9mIFJlc2l6ZU9ic2VydmVyPT09XCJmdW5jdGlvblwiLEJoPW51bGw7XG5mdW5jdGlvbiB6aChhLGIsYyl7ZnVuY3Rpb24gZCgpe3ZhciBlPUdkKGEpLmZyYW1lcztpZihBaCl7QmgmJkJoLmRpc2Nvbm5lY3QoKTt2YXIgZj1jO0JoPW5ldyBSZXNpemVPYnNlcnZlcihmdW5jdGlvbigpe2Y/Zj0hMTphZShhKX0pO2U9dShlKTtmb3IodmFyIGc9ZS5uZXh0KCk7IWcuZG9uZTtnPWUubmV4dCgpKUJoLm9ic2VydmUoZy52YWx1ZS5kb2N1bWVudC5ib2R5KX1lbHNlIGZvcihlPXUoZSksZz1lLm5leHQoKTshZy5kb25lO2c9ZS5uZXh0KCkpZy52YWx1ZS5vbnJlc2l6ZT1mdW5jdGlvbigpe2FlKGEpfX1jfHxkKCk7Yj9hZShhKTpzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YWUoYSl9LDApO2MmJnNldFRpbWVvdXQoZCwwKX1cbmZ1bmN0aW9uIHhoKGEsYil7dmFyIGM9YS5zcGxpdChcIi1cIik7YT1hLnNwbGl0KFwiLVwiKTtjLnNwbGljZShjLmxlbmd0aC0xLDAsXCJhXCIpO2M9Yy5qb2luKFwiLVwiKTthLnNwbGljZShhLmxlbmd0aC0xLDAsXCJiXCIpO2E9YS5qb2luKFwiLVwiKTt2YXIgZD1bXTtiLmluY2x1ZGVzKGMpJiZkLnB1c2goMik7Yi5oYXNPd25Qcm9wZXJ0eShhKSYmZC5wdXNoKDMpO3JldHVybiBkfWZ1bmN0aW9uIENoKGEsYixjKXt2YXIgZD1NYXRoLm1heC5hcHBseShNYXRoLGEpO2E9TWF0aC5taW4uYXBwbHkoTWF0aCxhKTtpZihkLWE+cmQpZm9yKGE9ZC1yZCxkPTA7ZDxiLmxlbmd0aDtkKyspe3ZhciBlPWJbZF07Y1tlXTxhJiYoY1tlXT1hKX1yZXR1cm4gY31DaD16KENoLFwicEJERlwiKTtcbmZ1bmN0aW9uIERoKGEsYil7Zm9yKHZhciBjPXt9LGQ9ITEsZT1bXSxmPVtdLGc9dShPYmplY3Qua2V5cyhhKSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpaWYoaD1oLnZhbHVlLGggaW4gYil7dmFyIGs9YltoXSxsPWFbaF07aWYodHlwZW9mIGwhPVwidW5kZWZpbmVkXCIpe2lmKGsuZyYmKGw9ay5nLkMobCksbD09bnVsbCYmIWsuRCkpdGhyb3cgWWIoaCtcIiBoYXMgYW4gaW52YWxpZCB2YWx1ZS4gVmFsaWQgaW5wdXQgdmFsdWVzOiBbXCIray5nLkYoKStcIl0uXCIpO2whPW51bGwmJihjW2hdPWwsay5nPT1zZCYmKGUucHVzaChsKSxmLnB1c2goaCkpLGQ9ITApfX1lLmxlbmd0aD4wJiYoYz1DaChlLGYsYykpO3JldHVybiBkP2M6bnVsbH1EaD16KERoLFwidk9cIik7ZnVuY3Rpb24gRWgoYSxiKXtyZXR1cm4odWQoYSl8fC9ebWFzdGVyLVxcZCskLy50ZXN0KGEpKSYmdHlwZW9mIGI9PVwib2JqZWN0XCJ9RWg9eihFaCxcImlQQUJPXCIpO1xuZnVuY3Rpb24gRmgoYSl7dHJ5e2lmKCFhKXRocm93IEVycm9yKFwiTnVsbCwgdW5kZWZpbmVkIG9yIGVtcHR5IHdpbmRvdy5uYW1lLlwiKTt2YXIgYj1KU09OLnBhcnNlKGEpfWNhdGNoKGQpe3ZhciBjPWQubWVzc2FnZTthJiYoYz1cIkludmFsaWQgd2luZG93Lm5hbWU6IFwiK2Euc3BsaXQoXCIsXCIpWzBdKTtBLmxvZyhjLFwicE5BT1wiKX1yZXR1cm4gYnx8e319Rmg9eihGaCxcInBOQU9cIik7ZnVuY3Rpb24gR2goYSxiKXt2YXIgYz17fSxkO2ZvcihkIGluIGEpe3ZhciBlPWFbZF07ZD09XCJuYW1lXCI/Y1tkXT11ZChlKXx8L15tYXN0ZXItXFxkKyQvLnRlc3QoZSk/ZTpudWxsOkVoKGQsZSkmJihlPURoKGUsYiksY1tkXT1lLExbZF09W10pfXJldHVybiBjfUdoPXooR2gsXCJ2TkFPXCIpO1xuZnVuY3Rpb24gcGgoYSxiLGMsZCxlKXtpZighKGEubGVuZ3RoPD0wKSl7ZD1udWxsO2lmKGU9PT01KXt2YXIgZj1jLnJlc3VsdHNQYWdlQmFzZVVybDtpZighZil0aHJvdyBZYihcInJlc3VsdHNQYWdlQmFzZVVybCBuZWVkcyB0byBiZSBzZXQgZm9yIHNlYXJjaGJveCBibG9ja3MuXCIpO2Q9YVswXS5hZmR0O2E9YVswXS5sYWJlbDtlPXlkKGYpO2MucGVyc29uYWxpemVkQWRzIT1udWxsJiYoZS5wY3NhPVwiXCIrYy5wZXJzb25hbGl6ZWRBZHMpO2M9JzxkaXYgY2xhc3M9XCJhZFN0ZFwiPjxmb3JtIGFjdGlvbj1cIicrSShPZShmKSkrJ1wiIHRhcmdldD1cIl90b3BcIiBtZXRob2Q9XCJnZXRcIiBhY2NlcHQtY2hhcnNldD1cIlVURi04XCI+JztmPUNlKGUpO2Zvcih2YXIgZz1mLmxlbmd0aCxoPTA7aDxnO2grKyl7dmFyIGs9ZltoXTtjKz0nPGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiJytJKGspKydcIiB2YWx1ZT1cIicrSShlW2tdKSsnXCIvPid9Yys9Jzx0YWJsZSBjbGFzcz1cInNiLXRhYmxlXCIgY2VsbHNwYWNpbmc9XCIwXCIgY2VsbHBhZGRpbmc9XCIwXCI+PHRib2R5Pjx0cj48dGQgY2xhc3M9XCJzYmktdGRcIj48aW5wdXQgY2xhc3M9XCJzYmlcIiB0eXBlPVwidGV4dFwiIG5hbWU9XCJxdWVyeVwiIG1heGxlbmd0aD1cIjYzXCIgdGl0bGU9XCJFbnRlciBhIHNlYXJjaFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiLz48L3RkPjx0ZD48aW5wdXQgY2xhc3M9XCJzYmJcIiB0eXBlPVwic3VibWl0XCIgdmFsdWU9XCInK1xuKGE/SShhKTpcIlNlYXJjaFwiKSsnXCIvPjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwiYWZkVG9rZW5cIiB2YWx1ZT1cIicrSShkKSsnXCIvPjxpbnB1dCB0eXBlPVwiaGlkZGVuXCIgbmFtZT1cInNlYXJjaFwiIHZhbHVlPVwiMVwiLz48L2Zvcm0+PC9kaXY+JztkPUYoYyl9YT1hPXtWYTpPYShOYSgpKX07YT1GKCRmKGEuVmEsXCJnb29nQUZTXCIpKTtoZihhLGIpO2QmJmhmKGQsYil9fXBoPXoocGgsXCJjQU5cIik7XG5mdW5jdGlvbiBIaChhLGIsYyl7dmFyIGQ9SWgoYSksZT1naChiKSxmPVJhKCksZz1OYSgpLGg9S2EoKTtnLmRhdGEucWkmJnNjKFwicWlcIixnLmRhdGEucWl8fG51bGwsb2Muaik7dmFyIGs9Zy5kYXRhLmVhd3B8fG51bGw7ayYmc2MoXCJlYXdwXCIsayxvYy5qKTsoaD0hIWguZGF0YS5zYm4pJiZ2YyhcInNiblwiLGgpO2g9ITE7aWYoIUJkKCkpZm9yKGs9MDtrPGQubGVuZ3RoO2srKyl7dmFyIGw9ZFtrXS5hZHR5cGUsbT1sIT12b2lkIDAscD1kW2tdLHI9cC5mbjtyLnN0YXJ0c1dpdGgoXCJzbGF2ZS0wXCIpJiYoZmg9ITApO3I9citcIi1cIitlO0xbcl18fChBLmxvZyhyLFwicEFKMlwiKSxMW3JdPVtdKTtMW3JdLnB1c2gocCk7bSYmKHA9cFtsXSxoPSEwKX1pZihCZCgpKXtiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwic3NyYWJcIik7Yj11KGIuY2hpbGRyZW4pO2ZvcihnPWIubmV4dCgpOyFnLmRvbmU7Zz1iLm5leHQoKSl7Zz1nLnZhbHVlO3ZhciB0PWcuaWQuc3BsaXQoXCItXCIpO2lmKCEodC5sZW5ndGg8XG4yKSYmdC5zaGlmdCgpPT09XCJzc3JhZFwiKXt0LnB1c2goZS50b1N0cmluZygpKTt0PXQuam9pbihcIi1cIik7dmFyIHY9cGFyc2VJbnQoZy5nZXRBdHRyaWJ1dGUoXCJkYXRhLW51bS1hZHNcIiksMTApfHwwO3ZjKHQrXCIuaEFcIix2PjApO1NhKGYpJiZ1Yyh0K1wiLmFDXCIsdik7SmgoW2ddLHQpO21oKGEsdCl9fWI9dmgoKTtiLmxlbmd0aD4wJiYoZz1cIm1hc3Rlci1cIitlLHQ9Yi5yZWR1Y2UoZnVuY3Rpb24oQyxSKXtyZXR1cm4gQytwYXJzZUludChSLmdldEF0dHJpYnV0ZShcImRhdGEtbnVtLWFkc1wiKSwxMCl9LDApLHZjKGcrXCIuaEFcIix0PjApLFNhKGYpJiZ1YyhnK1wiLmFDXCIsdCksSmgoYixnKSxtaChhLGcpKX1lbHNlIGZvcih0IGluIEwpaWYoYT1MW3RdLGQ9YS5sZW5ndGgsZD4wJiYhaCYmKGs9YVswXSxrLnR5cGU9PTMmJihkPWsucGxhcz9rLnBsYXMubGVuZ3RoOjApKSxmaCYmL15tYXN0ZXItXFxkKyQvLnRlc3QodCkpZD4wJiZBLmxvZyhhLmxlbmd0aCxcInBBSjNcIiksZGVsZXRlIExbdF07ZWxzZSBpZih2Yyh0K1xuXCIuaEFcIixkPjApLFNhKGYpJiZ1Yyh0K1wiLmFDXCIsZCksZDwxKXtpZihhPUhkKHQsYikpdHJ5eyh2PWEuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhZEJsb2NrXCIpKSYmaGYoWmYoe1ZhOk9hKGcpfSksdil9Y2F0Y2goQyl7fWRlbGV0ZSBMW3RdfWZvcih2YXIgdyBpbiBlaCljW3ddJiZ2YyhlaFt3XSwhMCk7KHc9Yy5zdGF0dXNFcnJvckNvZGUpJiZ1YyhcInMuZUNcIixwYXJzZUludCh3LDEwKSk7dmMoXCJzLmJcIiwhIWMuc3RhdHVzQmxvY2tlZCk7TmEoKS5kYXRhLmlzaSYmdmMoXCJzLmlTSVwiLCEwKTtTYShmKSYmdmMoXCJhRC5cIitlLCEwKTt0YygpfUhoPXooSGgsXCJwQUpcIik7ZnVuY3Rpb24gSWgoYSl7dmFyIGI9W10sYztmb3IoYyBpbiBjaCl7dmFyIGQ9YVtjXTtpZihkKXtmb3IodmFyIGU9Y2hbY10sZj0wO2Y8ZC5sZW5ndGg7ZisrKWRbZl0udHlwZT1jPT1cImFkX2RhdGFcIj9kaFtkW2ZdLmFkdHlwZV06ZTtiPWIuY29uY2F0KGQpfX1yZXR1cm4gYn1JaD16KEloLFwiY0FBXCIpO1xuZnVuY3Rpb24gS2goYSl7cmV0dXJuIFZnKGEpfUtoPXooS2gsXCJjUEFUT1wiKTtmdW5jdGlvbiBMaChhLGIsYyl7QWgmJkxhKCl8fCh3aW5kb3cuc1BIPWZ1bmN0aW9uKCl7YWUoYSl9KTt3aW5kb3cubVBBQVNIPWZ1bmN0aW9uKCl7d2goYSxiLGMpfTtyZXR1cm4gd2goYSxiLGMpfUxoPXooTGgsXCJzQ0ZDXCIpO2Z1bmN0aW9uIE1oKGEsYil7dmFyIGM9SGEoKSxkPUtoKGMuY2FwcyksZT1HaChiLGEpO0hoKGMsZSxkKTthPUxoKGUsZCxjKTtVYSgpLmRhdGEuaG0mJndpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwibWVzc2FnZVwiLGZ1bmN0aW9uKGYpe2Y9Zi5kYXRhLnNwbGl0KFwiOlwiKTtmLmxlbmd0aD09MiYmZlswXT09XCJvcmllbnRhdGlvblwiJiZhZShlKX0pO3JldHVybiBhfU1oPXooTWgsXCJyYWFcIik7ZnVuY3Rpb24gTmgoYSxiKXtPaCgpO3JldHVybiBNaChhLlRkLGIpfU5oPXooTmgsXCJpbml0XCIpO1xuZnVuY3Rpb24gdmgoKXt2YXIgYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIiksYj1hLnF1ZXJ5U2VsZWN0b3IoXCIjc3NyYWQtbWFzdGVyXCIpLGM9YS5xdWVyeVNlbGVjdG9yQWxsKCdbaWRePVwic3NyYWQtbWFzdGVyLVwiXScpO2E9W107YiYmYS5wdXNoKGIpO2I9dShjKTtmb3IoYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpKGM9Yy52YWx1ZSkmJmEucHVzaChjKTtyZXR1cm4gYX1cbmZ1bmN0aW9uIG5oKGEsYil7YT11KGEuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJhXCIpKTtmb3IodmFyIGM9YS5uZXh0KCksZD17fTshYy5kb25lO2Q9e1pjOnZvaWQgMCxoZDp2b2lkIDB9LGM9YS5uZXh0KCkpYz1jLnZhbHVlLGQuWmM9b2QoYy5ocmVmLGVuY29kZVVSSUNvbXBvbmVudChiW2IubmFtZV0ucmVzdWx0c1BhZ2VRdWVyeVBhcmFtKSksZC5oZD1vZChjLmhyZWYsZW5jb2RlVVJJQ29tcG9uZW50KFwiYWZkVG9rZW5cIikpLGQuWmMmJmQuaGQ/KGMuc2V0QXR0cmlidXRlKFwidGFyZ2V0XCIsXCJfc2VsZlwiKSxjLmhyZWY9XCIjXCIsYy5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIixmdW5jdGlvbihlKXtyZXR1cm4gZS5wcmV2ZW50RGVmYXVsdCgpfSksa2YoYyxmdW5jdGlvbihlKXtyZXR1cm4gZnVuY3Rpb24oKXtzYyhcInJzcmNcIix7cTplLlpjLHJzVG9rZW46ZS5oZCx1aWQ6RGF0ZS5ub3coKX0scGMuaik7dGMoKX19KGQpKSk6QS5sb2coXCJDb3VsZCBub3QgcGFyc2UgcXVlcnkgb3IgcnNUb2tlbiBmcm9tIHVybDogXCIrXG5jLmhyZWYsXCJyUkhXQ1wiKX1uaD16KG5oLFwiclJIV0NcIik7ZnVuY3Rpb24gT2goKXtzYyhcIml0XCIsZG9jdW1lbnQudGl0bGUsb2Muaik7dGMoKX1PaD16KE9oLFwic2V0VGl0bGVcIik7XG5mdW5jdGlvbiB5aChhKXtmdW5jdGlvbiBiKGQsZSl7cmV0dXJue3R5cGU6ZCx0b3VjaGVzOmV9fWZ1bmN0aW9uIGMoZCl7dmFyIGU9e30sZjtmb3IoZiBpbiBkKWYhPT1cInRhcmdldFwiJiYoZVtmXT1kW2ZdKTtyZXR1cm4gZX1hLmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJ0b3VjaHN0YXJ0XCIsZnVuY3Rpb24oZCl7dmFyIGU9W10uY29uY2F0KGphKGQudG91Y2hlcykpLm1hcChmdW5jdGlvbihmKXtyZXR1cm4gYyhmKX0pO3dpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UoYihkLnR5cGUsZSksXCIqXCIpfSk7YS5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidG91Y2htb3ZlXCIsZnVuY3Rpb24oZCl7dmFyIGU9W10uY29uY2F0KGphKGQudG91Y2hlcykpLm1hcChmdW5jdGlvbihmKXtyZXR1cm4gYyhmKX0pO3dpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UoYihkLnR5cGUsZSksXCIqXCIpfSk7YS5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidG91Y2hlbmRcIixmdW5jdGlvbihkKXt2YXIgZT1cbltdLmNvbmNhdChqYShkLnRvdWNoZXMpKS5tYXAoZnVuY3Rpb24oZil7cmV0dXJuIGMoZil9KTt3aW5kb3cucGFyZW50LnBvc3RNZXNzYWdlKGIoZC50eXBlLGUpLFwiKlwiKX0pO2EuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcInRvdWNoY2FuY2VsXCIsZnVuY3Rpb24oZCl7dmFyIGU9W10uY29uY2F0KGphKGQudG91Y2hlcykpLm1hcChmdW5jdGlvbihmKXtyZXR1cm4gYyhmKX0pO3dpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UoYihkLnR5cGUsZSksXCIqXCIpfSl9eWg9eih5aCxcInBURVRQUFwiKTtcbmZ1bmN0aW9uIHJoKGEpe3ZhciBiPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJtZXRhXCIpO2IuaHR0cEVxdWl2PVwib3JpZ2luLXRyaWFsXCI7Yi5jb250ZW50PVwiQTRUVkQwb0RvUlVuQlpnWURkTlZBUllJUFNtSmd5U0VzWWRQQU5ScnJnUTdRaXRQc090eTBlWklCc2psSEZGSndERlUvOFFtblJGMmtMNXhiNFJQOVE0QUFBQ0VleUp2Y21sbmFXNGlPaUpvZEhSd2N6b3ZMM2QzZHk1bmIyOW5iR1V1WTI5dE9qUTBNeUlzSW1abFlYUjFjbVVpT2lKUWNtbDJZV041VTJGdVpHSnZlRUZrYzBGUVNYTWlMQ0psZUhCcGNua2lPakUyT1RVeE5qYzVPVGtzSW1selUzVmlaRzl0WVdsdUlqcDBjblZsTENKcGMxUm9hWEprVUdGeWRIa2lPblJ5ZFdWOVwiO2EuZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChiKX1yaD16KHJoLFwiYU5DT1RcIik7XG5mdW5jdGlvbiBKaChhLGIpe3ZhciBjPW51bGw7YT11KGEpO2Zvcih2YXIgZD1hLm5leHQoKTshZC5kb25lO2Q9YS5uZXh0KCkpaWYoZD1kLnZhbHVlLGQuaGFzQXR0cmlidXRlKFwiZGF0YS1pcy1ldlwiKSYmKGQ9cGFyc2VJbnQoZC5nZXRBdHRyaWJ1dGUoXCJkYXRhLWlzLWV2XCIpLDEwKSxjPT09bnVsbHx8ZD5jKSljPWQ7YyE9PW51bGwmJnZjKGIrXCIuZVZcIixjPT09MSl9Smg9eihKaCxcInNJRVZGU1wiKTtmdW5jdGlvbiBtaChhLGIpe1widHBcImluIGEmJnNjKGIrXCIucHRwXCIsYS50cCxwYy5qKX1taD16KG1oLFwic1BUUFwiKTtmdW5jdGlvbiBQaCgpe3RoaXMuc2E9UWg7dGhpcy5HYj12b2lkIDB9UGgucHJvdG90eXBlLkY9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLnNhLkYoKStcIiAob25lIGJ5IGl0c2VsZiwgb3IgbXVsdGlwbGUgaW4gYW4gQXJyYXlcIjt0aGlzLkdiJiYoYSs9XCIgd2l0aCBmZXdlciB0aGFuIFwiKyh0aGlzLkdiKzEpK1wiIGVsZW1lbnRzXCIpO3JldHVybiBhK1wiKVwifTtQaC5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXthPUFycmF5LmlzQXJyYXkoYSk/YTpbYV07aWYodGhpcy5HYiYmYS5sZW5ndGg+dGhpcy5HYilyZXR1cm4gbnVsbDtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD10aGlzLnNhLkMoYVtjXSk7aWYoZD09bnVsbClyZXR1cm4gbnVsbDtiLnB1c2goZCl9cmV0dXJuIGIubGVuZ3RoPT0wP251bGw6Yn07UGgucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSl7YT10aGlzLkMoYSk7cmV0dXJuIGE9PW51bGx8fGEubGVuZ3RoPDE/bnVsbDp0aGlzLnNhLkgoYVswXSl9O2Z1bmN0aW9uIFJoKCl7fVJoLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuXCJ0cnVlLCBmYWxzZSwgMSwgMFwifTtSaC5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXtyZXR1cm4gYT09PTB8fGE9PT0xP2E9PT0xOmE9PVwidHJ1ZVwifHxhPT1cIm9uXCJ8fGE9PTE/ITA6YT09XCJmYWxzZVwifHxhPT1cIm9mZlwifHxhPT09ITE/ITE6bnVsbH07UmgucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSl7YT10aGlzLkMoYSk7cmV0dXJuIGE9PW51bGw/bnVsbDphPzE6MH07dmFyIE09bmV3IFJoO2Z1bmN0aW9uIE4oYSxiKXt0aGlzLlJhPU1hdGguY2VpbChhKTt0aGlzLlBhPU1hdGguZmxvb3IoYil9Ti5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3JldHVybiB0aGlzLlJhK1wiIC0gXCIrdGhpcy5QYX07Ti5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXthPXBhcnNlSW50KGEsMTApO3JldHVybiBhPj10aGlzLlJhJiZhPD10aGlzLlBhP2E6bnVsbH07Ti5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5DKGEpfTtmdW5jdGlvbiBTaCgpe31TaC5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3JldHVyblwiQSBmdW5jdGlvblwifTtTaC5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT1cImZ1bmN0aW9uXCI/ITA6ITF9O1NoLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O3ZhciBUaD1uZXcgU2g7dmFyIFVoPS8jKC4pKC4pKC4pLyxWaD0vXiMoPzpbMC05YS1mXXszfSl7MSwyfSQvaSxXaD0vXig/OnJnYik/XFwoKDB8WzEtOV1cXGR7MCwyfSksXFxzPygwfFsxLTldXFxkezAsMn0pLFxccz8oMHxbMS05XVxcZHswLDJ9KVxcKSQvaTt2YXIgWGg9e2JsYWNrOlwiIzAwMDAwMFwiLGJsdWU6XCIjMDAwMGZmXCIsZGFya29yYW5nZTpcIiNmZjhjMDBcIixkYXJrcmVkOlwiIzhiMDAwMFwiLGZ1Y2hzaWE6XCIjZmYwMGZmXCIsZ3JheTpcIiM4MDgwODBcIixncmVlbjpcIiMwMDgwMDBcIixncmV5OlwiIzgwODA4MFwiLG9yYW5nZTpcIiNmZmE1MDBcIixyZWQ6XCIjZmYwMDAwXCIscm95YWxibHVlOlwiIzQxNjllMVwiLHNreWJsdWU6XCIjODdjZWViXCIsd2hpdGU6XCIjZmZmZmZmXCIsd2hpdGVzbW9rZTpcIiNmNWY1ZjVcIix5ZWxsb3c6XCIjZmZmZjAwXCJ9O2Z1bmN0aW9uIFloKGEpe3RoaXMud2Q9YX1ZaC5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3ZhciBhPVwiQSBoZXhhZGVjaW1hbCBjb2xvciBzdHJpbmdcIjt0aGlzLndkJiYoYSs9XCIgb3IgJ3RyYW5zcGFyZW50J1wiKTtyZXR1cm4gYX07XG5ZaC5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXt2YXIgYj1WYShcIlwiK2EpLnRvTG93ZXJDYXNlKCk7aWYodGhpcy53ZCYmYj09XCJ0cmFuc3BhcmVudFwiKXJldHVyblwidHJhbnNwYXJlbnRcIjtpZihYaFtiXSlyZXR1cm4gWGhbYl07YT1udWxsO3RyeXt2YXIgYz1iLmNoYXJBdCgwKT09XCIjXCI/YjpcIiNcIitiO2lmKCFWaC50ZXN0KGMpKXRocm93IEVycm9yKFwiJ1wiK2MrXCInIGlzIG5vdCBhIHZhbGlkIGhleCBjb2xvclwiKTtjLmxlbmd0aD09NCYmKGM9Yy5yZXBsYWNlKFVoLFwiIyQxJDEkMiQyJDMkM1wiKSk7YT1jLnRvTG93ZXJDYXNlKCl9Y2F0Y2gocCl7fWlmKCFhKXRyeXthOnt2YXIgZD1iLm1hdGNoKFdoKTtpZihkKXt2YXIgZT1OdW1iZXIoZFsxXSksZj1OdW1iZXIoZFsyXSksZz1OdW1iZXIoZFszXSk7aWYoZT49MCYmZTw9MjU1JiZmPj0wJiZmPD0yNTUmJmc+PTAmJmc8PTI1NSl7dmFyIGg9W2UsZixnXTticmVhayBhfX1oPVtdfWM9aDtpZighYy5sZW5ndGgpdGhyb3cgRXJyb3IoYitcIiBpcyBub3QgYSB2YWxpZCBSR0IgY29sb3JcIik7XG52YXIgaz1jWzBdLGw9Y1sxXSxtPWNbMl07az1OdW1iZXIoayk7bD1OdW1iZXIobCk7bT1OdW1iZXIobSk7aWYoayE9KGsmMjU1KXx8bCE9KGwmMjU1KXx8bSE9KG0mMjU1KSl0aHJvdyBFcnJvcignXCIoJytrK1wiLFwiK2wrXCIsXCIrbSsnXCIpIGlzIG5vdCBhIHZhbGlkIFJHQiBjb2xvcicpO2w9azw8MTZ8bDw8OHxtO2E9azwxNj9cIiNcIisoMTY3NzcyMTZ8bCkudG9TdHJpbmcoMTYpLnNsaWNlKDEpOlwiI1wiK2wudG9TdHJpbmcoMTYpfWNhdGNoKHApe31yZXR1cm4gYX07WWgucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH07dmFyIFpoPW5ldyBZaCghMSksJGg9bmV3IFloKCEwKTtmdW5jdGlvbiBhaShhKXt0aGlzLnNhPWF9YWkucHJvdG90eXBlLkY9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5zYS5GKCkrXCIgKG9uZSBvciBtb3JlLCBjb21tYSBzZXBhcmF0ZWQpXCJ9O2FpLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe2lmKHR5cGVvZiBhIT09XCJzdHJpbmdcIilhPVtdO2Vsc2V7YT1hLnNwbGl0KFwiLFwiKTtmb3IodmFyIGI9W10sYz0wO2M8YS5sZW5ndGg7YysrKWIucHVzaChWYShhW2NdKSk7YT1ifWI9W107Zm9yKGM9MDtjPGEubGVuZ3RoO2MrKyl7dmFyIGQ9dGhpcy5zYS5DKGFbY10pO2QhPW51bGwmJmIucHVzaChkKX1yZXR1cm4gYi5sZW5ndGg9PTA/bnVsbDpiLmpvaW4oXCIsXCIpfTthaS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiBudWxsfTtmdW5jdGlvbiBiaShhLGIpe2I9Yj09PXZvaWQgMD97fTpiO3RoaXMucmQ9YTt0aGlzLm9nPWI7dGhpcy5sZT17fTtmb3IoYT0wO2E8dGhpcy5yZC5sZW5ndGg7YSsrKWI9dGhpcy5yZFthXSx0aGlzLmxlW2IudG9Mb3dlckNhc2UoKV09Yn1iaS5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3JldHVybiB0aGlzLnJkLmpvaW4oXCIsIFwiKStcIiAoY2FzZSBpbnNlbnNpdGl2ZSlcIn07YmkucHJvdG90eXBlLkM9ZnVuY3Rpb24oYSl7aWYoIWF8fHR5cGVvZiBhIT09XCJzdHJpbmdcIilyZXR1cm4gbnVsbDthPWEudG9Mb3dlckNhc2UoKTthPXRoaXMub2dbYV18fGE7cmV0dXJuIHRoaXMubGVbYV18fG51bGx9O2JpLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O3ZhciBjaT0vXlxcZCtweCQvaSxkaT0vXlxcZCslJC8sZWk9L15bMC05XStcXC5bMC05XXsxLH0kLztmdW5jdGlvbiBmaSgpe31maS5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3JldHVyblwiV2lkdGggaW4gcHggKGUuZy4gJzUwMHB4Jykgb3IgJ2F1dG8nXCJ9O2ZpLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe3ZhciBiPWdpKGEpO3JldHVybiBiIT1udWxsP2IrXCJweFwiOnR5cGVvZiBhIT09XCJzdHJpbmdcInx8YSE9XCJhdXRvXCImJiFkaS50ZXN0KGEpP251bGw6YX07ZmkucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSl7cmV0dXJuIGdpKGEpfTtmdW5jdGlvbiBnaShhKXt2YXIgYjsoYj10eXBlb2YgYT09PVwibnVtYmVyXCIpfHwoYj10eXBlb2YgYT09PVwic3RyaW5nXCImJighL1teMC05XS8udGVzdChhKXx8ZWkudGVzdChhKXx8Y2kudGVzdChhKSkpO3JldHVybiBiPyhhPXBhcnNlSW50KGEsMTApLGlzTmFOKGEpP251bGw6YSk6bnVsbH12YXIgaGk9bmV3IGZpO2Z1bmN0aW9uIGlpKCl7fWlpLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuIE0uRigpfTtpaS5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXtyZXR1cm4gTS5DKGEpPzE6MH07aWkucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSl7cmV0dXJuIE0uSChhKX07dmFyIGppPW5ldyBpaTtmdW5jdGlvbiBraSgpe31raS5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3JldHVyblwiQSBzdHJpbmdcIn07a2kucHJvdG90eXBlLkM9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09XCJzdHJpbmdcIj9hOm51bGx9O2tpLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O3ZhciBsaT1uZXcga2k7dmFyIG1pPS9eKFswLTldezEwfXxbMC05YS16QS1aXXszMn0pJC87ZnVuY3Rpb24gbmkoKXt9bmkucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH07bmkucHJvdG90eXBlLkY9ZnVuY3Rpb24oKXtyZXR1cm5cIkEgMTAgZGlnaXQgc3R5bGUgSURcIn07bmkucHJvdG90eXBlLkM9ZnVuY3Rpb24oYSl7cmV0dXJuKHR5cGVvZiBhPT09XCJzdHJpbmdcInx8dHlwZW9mIGE9PT1cIm51bWJlclwiJiYhTnVtYmVyLmlzTmFOKGEpKSYmbWkudGVzdChhKT9cIlwiK2E6bnVsbH07ZnVuY3Rpb24gb2koKXt9b2kucHJvdG90eXBlLkY9ZnVuY3Rpb24oKXtyZXR1cm5cIkFuIGh0dHAocykgdXJsXCJ9O29pLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PVwic3RyaW5nXCImJnBpLnRlc3QoYSk/YTpudWxsfTtvaS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiBudWxsfTt2YXIgcGk9L14oKGh0dHBzPyk6KT9cXC9cXC8oW2EtekEtWjAtOX4hQCNcXCQmXFwqXFwoXFwpX1xcK1xcLT06OycsXFwuXFw/XFwvJV0qKSQvLFFoPW5ldyBvaTt2YXIgcWk9bmV3IE4oMiw0MDApLHJpPW5ldyBOKDAsNDAwKSxzaT1uZXcgTig4LDUwKSx0aT1uZXcgYWkobmV3IGJpKFwidmVyZGFuYTthcmlhbDt0YWhvbWE7dGltZXMgbmV3IHJvbWFuO2dlb3JnaWE7dHJlYnVjaGV0IG1zO21laXJ5bzttcyBnb3RoaWM7cm9ib3RvO2hlbHZldGljYSBuZXVlXCIuc3BsaXQoXCI7XCIpKSksdWk9bmV3IGFpKG5ldyBiaShbXCJyaWdodFwiLFwibGVmdFwiLFwidG9wXCIsXCJib3R0b21cIl0pKSxPPXt9LHZpPShPLmFkc2FmZT17ZzpuZXcgYmkoW1wib2ZmXCIsXCJsb3dcIixcIm1lZGl1bVwiLFwiaGlnaFwiLFwiYWR1bHRvbmx5XCJdLHttZWQ6XCJtZWRpdW1cIn0pLFRjOiEwfSxPLmFkdGVzdD17ZzpNLFRjOiEwfSxPLmFkVGVzdD17ZzpNLFRjOiEwfSxPLmNsaWNrdHJhY2tVcmw9e2c6bmV3IFBofSxPLmNvbnRhaW5lcj17ZzpsaX0sTy5zdHlsZUlkPXtnOm5ldyBuaX0sTy5wZXJzb25hbGl6ZWRBZHM9e2c6TX0sTy5wZXJzb25hbGlzZWRBZHM9e2c6TX0sTy5hZHBhZ2U9e30sTy5hZFBhZ2U9XG57fSxPLmFkc1Jlc3BvbnNlQ2FsbGJhY2s9e30sTy5iZ3Jlc3BvbnNlPXt9LE8uY2hhbm5lbD17fSxPLmNtcFNka0lkPXt9LE8uY29udGFpbmVyPXt9LE8uY3JlZj17fSxPLmN4PXt9LE8uZGViPXt9LE8uZGVidWc9e30sTy5kb21haW5OYW1lPXt9LE8uZT17fSxPLmV4cGZsYWdzPXt9LE8uZmFrZWFkcz17fSxPLmZjYXA9e30sTy5mZXhwPXt9LE8uZm9yY2VFeD17fSxPLmdjc2M9e30sTy5nZHByQXBwbGllcz17fSxPLnRjZkluR3BwU3RyaW5nPXt9LE8uZ2RwckFwcGxpZXNJbkdwcFN0cmluZz17fSxPLmlmcmFtZUhlaWdodENhbGxiYWNrPXt9LE8uaXNEYXJrTW9kZT17ZzpNfSxPLmpzU3JjPXt9LE8ubWFzdGVyTnVtYmVyPXt9LE8ubXM9e30sTy5ub0FkTG9hZGVkQ2FsbGJhY2s9e30sTy5udW1iZXI9e30sTy5wcm9wZXJ0eUNvZGU9e30sTy5wdWJJZD17fSxPLnF1ZXJ5PXt9LE8ucm9sZT17fSxPLnJvd2tleVYyPXt9LE8uc2JzaWduYWxzPXt9LE8uc2V0dGluZ3NJZD17fSxPLnNsYXZlTnVtYmVyPVxue30sTy5zb3VyY2U9e30sTy5zb3VyY2VfaXA9e30sTy50Y1N0cmluZz17fSxPLnVpZGViPXt9LE8udXNlckFnZW50PXt9LE8udXNQcml2YWN5PXt9LE8udXVsZD17fSxPLnNjdD17fSxPLnNjX3N0YXR1cz17fSxPLmFkTG9hZGVkQ2FsbGJhY2s9e2c6VGh9LE8uYWRSZXF1ZXN0VXJsUGFyYW1zPXtnOmxpfSxPLmhsPXtnOmxpfSxPLmNwcD17fSxPLmFkZmlsaWF0ZVdwPXtnOmxpfSxPLmhvdHN3YXBzPXt9LE8uc2hvcHBpbmdBZHNJbkNhcm91c2VsPXtnOk19LE8uaG9zdFB1YklkPXt9LE8uaG9zdENoYW5uZWw9e30sTy5pdnQ9e2c6aml9LE8pLFE9e30sd2k9KFEuY29sb3JUZXh0PXtnOlpoLEQ6ITAsQTohMH0sUS5jb2xvclRpdGxlTGluaz17ZzpaaCxEOiEwLEE6ITB9LFEuY29sb3JCb3JkZXI9e2c6WmgsRDohMCxBOiEwfSxRLmNvbG9yQXR0cmlidXRpb249e2c6WmgsQTohMH0sUS5mb250RmFtaWx5PXtnOnRpLEQ6ITAsQTohMH0sUS5mb250RmFtaWx5QXR0cmlidXRpb249e2c6dGksXG5BOiEwfSxRLnRpdGxlQm9sZD17ZzpNLEQ6ITAsQTohMH0sUS5yb2xsb3ZlckxpbmtCb2xkPXtnOk0sRDohMCxBOiEwfSxRLnJvbGxvdmVyTGlua0NvbG9yPXtnOlpoLEQ6ITAsQTohMH0sUS5yb2xsb3ZlckxpbmtCYWNrZ3JvdW5kQ29sb3I9e2c6WmgsRDohMCxBOiEwfSxRLnJvbGxvdmVyTGlua1VuZGVybGluZT17ZzpNLEQ6ITAsQTohMH0sUS5ub1RpdGxlVW5kZXJsaW5lPXtnOk0sQTohMH0sUS5hZEJvcmRlclNlbGVjdGlvbnM9e2c6dWksQTohMH0sUS5ib3JkZXJTZWxlY3Rpb25zPXtnOnVpLEE6ITB9LFEucG9zaXRpb249e2c6bmV3IGJpKFtcInRvcFwiLFwicmlnaHRcIixcImJvdHRvbVwiXSl9LFEuY3NlR29vZ2xlSG9zdGluZz17ZzpuZXcgYmkoW1wiZnVsbFwiLFwiaWZyYW1lXCIsXCJwYXJ0bmVyXCJdKX0sUS5hZEljb25Vcmw9e2c6UWgsQTohMH0sUS5hZEljb25XaWR0aD17ZzpxaSxBOiEwfSxRLmFkSWNvbkhlaWdodD17ZzpxaSxBOiEwfSxRLmFkSWNvblNwYWNpbmdBYm92ZT17ZzpyaSxEOiEwLFxuQTohMH0sUS5hZEljb25TcGFjaW5nQmVmb3JlPXtnOnJpLEE6ITB9LFEuYWRJY29uU3BhY2luZ0FmdGVyPXtnOnJpLEE6ITB9LFEuYWRJY29uU3BhY2luZ0JlbG93PXtnOnJpLEE6ITB9LFEubGluZUhlaWdodFRpdGxlPXtnOnNpLEE6ITB9LFEud2FpdEZvckFkcz17ZzpNfSxRLmhlaWdodENvbnN0cmFpbmVkPXtnOk0sV2I6XCJoY1wifSxRLndpZHRoPXtnOmhpLFdiOlwid2lcIixEOiEwfSxRLmF0dHJpYnV0aW9uU3BhY2luZ0JlbG93PXtnOm5ldyBOKDAsNDApLEE6ITB9LFEucmVzdWx0c1BhZ2VCYXNlVXJsPXtnOlFofSxRLmNvbHVtbnM9e2c6bmV3IE4oMSwyMCksZ2E6MX0sUS5jb2x1bW5TcGFjaW5nPXtnOm5ldyBOKDIsMTAwKX0sUS5ob3Jpem9udGFsRmxvdz17ZzpNfSxRLmhvcml6b250YWxBbGlnbm1lbnQ9e2c6bmV3IGJpKFtcImNlbnRlclwiLFwibGVmdFwiLFwicmlnaHRcIl0pLGdhOlwibGVmdFwifSxRLnJlc3VsdHNQYWdlUXVlcnlQYXJhbT17ZzpsaSxnYTpcInF1ZXJ5XCJ9LFEucnVybE92ZXJyaWRlPVxue2c6bGl9LFEudGVybXM9e2c6bGl9LFEua3c9e2c6bGl9LFEucmVmZXJyZXJBZENyZWF0aXZlPXtnOmxpfSxRLnJlbGF0ZWRTZWFyY2hSZXN1bHRDbGlja2VkQ2FsbGJhY2s9e2c6VGh9LFEucmVsYXRlZFNlYXJjaFVzZVJlc3VsdENhbGxiYWNrPXtnOk19LFEuYWRzdHlsZT17fSxRLmFmZFRva2VuPXt9LFEuYXR0bWFzPXt9LFEuZ2NzPXt9LFEuZ2NzZV9uYz17fSxRLmdsPXt9LFEuZ2xwPXt9LFEuZ209e30sUS5ncj17fSxRLmllPXt9LFEubWF4VGVybUxlbmd0aD17fSxRLm1heFRvcD17fSxRLm1pblRvcD17fSxRLm51bVJlcGVhdGVkPXt9LFEub2U9e30sUS5xdWVyeUNvbnRleHQ9e30sUS5xdWVyeUxpbms9e30sUS5yZWZlcnJlcj17fSxRLnJlbGF0ZWRTZWFyY2hlcz17fSxRLnZpc2libGVVcmxzQ2FsbGJhY2s9e30sUSkseGk9e2NoYXRib3RFeHBlcmltZW50SWQ6e30sY2hhdGJvdFJlc3BvbnNlOntnOmxpfSxjaGF0Ym90VXNlclByb21wdDp7ZzpsaX19O2Z1bmN0aW9uIHlpKCl7fXlpLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuXCJBIHdlYiBmb250XCJ9O3lpLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYSE9PVwic3RyaW5nXCJ8fC9bXmEtekEtWjAtOSBdLy50ZXN0KGEpP251bGw6YX07eWkucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH07dmFyIHppPW5ldyB5aTt2YXIgQWk9bmV3IE4oMTAsemMpLEJpPXt9LENpPShCaS50eXBlPXtnOm5ldyBiaShbXCJhZHNcIixcInRleHRhZHNcIixcInJlbGF0ZWRzZWFyY2hcIixcInNlYXJjaGJveFwiLFwiZHluYW1pY1wiXSl9LEJpLmxpbmtUYXJnZXQ9e2c6bmV3IGJpKFtcIl90b3BcIixcIl9ibGFua1wiXSksZ2E6XCJfYmxhbmtcIixEOiEwfSxCaS52ZXJ0aWNhbFNwYWNpbmc9e2c6bmV3IE4oMiwyNCl9LEJpLmZvbnRTaXplVGl0bGU9e2c6c2QsRDohMCxnYToxOH0sQmkuZm9udFNpemVBdHRyaWJ1dGlvbj17ZzpzZCxEOiEwLGdhOjEzfSxCaSksUz17fSxEaT0oUy5jb2xvckFkU2VwYXJhdG9yPXtnOlpoLEE6ITB9LFMucm9sbG92ZXJBZEJhY2tncm91bmRDb2xvcj17ZzokaCxEOiEwfSxTLmNvbG9yQmFja2dyb3VuZD17ZzokaCxEOiEwfSxTLmhpZGVTZWFyY2hJbnB1dEJvcmRlcj17ZzpNfSxTLmhpZGVTZWFyY2hCdXR0b25Cb3JkZXI9e2c6TX0sUy5jb2xvclNlYXJjaEJveD17ZzokaH0sUy5jb2xvclNlYXJjaEJ1dHRvbj17ZzokaH0sXG5TLmNvbG9yU2VhcmNoQnV0dG9uVGV4dD17ZzokaH0sUy53aWR0aFNlYXJjaElucHV0PXtnOm5ldyBOKDEsMUUzKSxEOiEwfSxTLndpZHRoU2VhcmNoQnV0dG9uPXtnOm5ldyBOKDEwMCwxRTMpLEQ6ITB9LFMuZm9udFNpemVTZWFyY2hJbnB1dD17ZzpBaX0sUy5mb250U2l6ZVNlYXJjaEJ1dHRvbj17ZzpBaX0sUy5oZWlnaHRTZWFyY2hJbnB1dD17ZzpuZXcgTigxLDUwKX0sUy5oZWlnaHRTZWFyY2hCdXR0b249e2c6bmV3IE4oMSw1MCl9LFMuY29sb3JTZWFyY2hCdXR0b25Cb3JkZXI9e2c6JGh9LFMud2lkdGhTZWFyY2hCdXR0b25Cb3JkZXI9e2c6bmV3IE4oMCw1KX0sUy5yYWRpdXNTZWFyY2hJbnB1dEJvcmRlcj17ZzpuZXcgTigwLDIwKX0sUy5hdHRyaWJ1dGlvbkJvbGQ9e2c6TX0sUy5hdHRyaWJ1dGlvblVwcGVyY2FzZT17ZzpNfSxTLnRpdGxlVXBwZXJjYXNlPXtnOk19LFMud2ViRm9udEZhbWlseT17Zzp6aX0sUy53ZWJGb250RmFtaWx5QXR0cmlidXRpb249e2c6eml9LFMudWlPcHRpbWl6ZT1cbntnOk19LFMudWlfb3B0aW1pemU9e2c6TX0sUy5hZEJvcmRlcldpZHRoPXtnOm5ldyBOKDAsMjApfSxTLnJlbGF0ZWRTZWFyY2hUYXJnZXRpbmc9e2c6bmV3IGJpKCRiKHRkfHxbXSkpfSxTLmRvbWFpblJlZ2lzdHJhbnQ9e30sUy5kb21haW5TZXNzaW9uVG9rZW49e30sUy5sYW5ndWFnZUNvZGU9e30sUy5wYWdlTG9hZGVkQ2FsbGJhY2s9e30sUy5zaXplPXt9LFMuaWdub3JlZFBhZ2VQYXJhbXM9e30sUyksRWk9e307d2MoRWksdmkpO3djKEVpLHdpKTt3YyhFaSxDaSk7d2MoRWksRGkpO3hjKEVpLFtbXCJjb250YWluZXJcIl0sXCJyb2xlXCJdKTt2YXIgRmk9e1RkOkVpfTt2YXIgR2k9e30sSGk9KEdpLnJvbGxvdmVyQWRCYWNrZ3JvdW5kQ29sb3I9e2c6WmgsRDohMCxBOiEwfSxHaS5jb2xvckJhY2tncm91bmQ9e2c6WmgsRDohMCxBOiEwfSxHaS52ZXJ0aWNhbFNwYWNpbmc9e2c6bmV3IE4oMiwzNCl9LEdpLnR5cGU9e2c6bmV3IGJpKFtcImFkc1wiLFwicmVsYXRlZHNlYXJjaFwiXSl9LEdpLmZvbnRTaXplVGl0bGU9e2c6c2QsRDohMCxBOiEwfSxHaS5mb250U2l6ZUF0dHJpYnV0aW9uPXtnOnNkLEQ6ITAsQTohMH0sR2kubGlua1RhcmdldD17ZzpuZXcgYmkoW1wiX3RvcFwiLFwiX2JsYW5rXCJdKSxnYTpcIl90b3BcIixEOiEwfSxHaSksSWk9e307d2MoSWksdmkpO3djKElpLHhpKTt3YyhJaSx3aSk7d2MoSWksSGkpO3hjKElpLFtcInF1ZXJ5XCIsW1wiY29udGFpbmVyXCJdLFwicm9sZVwiXSk7ZnVuY3Rpb24gSmkoKXt2YXIgYT13aW5kb3cuQUZTX0FEX1JFUVVFU1RfUkVUVVJOX1RJTUVfO2EmJnNjKFwiaXJ0XCIsYStcInxcIitEYXRlLm5vdygpLG9jLmopO2E9Rmgod2luZG93Lm5hbWUpO05oKEZpLGEpO3NldFRpbWVvdXQoZnVuY3Rpb24oKXt0cnl7dmFyIGI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJyZXNwb25zZV9kZWJ1Z19vdXRwdXRcIik7aWYoYil7dmFyIGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhZEJsb2NrXCIpO2MmJihiLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoYiksYy5jaGlsZE5vZGVzLmxlbmd0aD09MD9jLmFwcGVuZENoaWxkKGIpOmMuaW5zZXJ0QmVmb3JlKGIsYy5jaGlsZE5vZGVzWzBdKSl9fWNhdGNoKGQpe319LDApfXdpbmRvdy5JU19HT09HTEVfQUZTX0lGUkFNRV8mJkppKCk7ZnVuY3Rpb24gTGkoYSxiLGMsZCl7amYuY2FsbCh0aGlzKTt0aGlzLnZlPWI7dGhpcy5jZT1jO3RoaXMud2M9ZDt0aGlzLlhhPW5ldyBNYXA7dGhpcy5QZj0wO3RoaXMuSGE9bmV3IE1hcDt0aGlzLnFiPW5ldyBNYXA7dGhpcy5xYT12b2lkIDA7dGhpcy5mYT1hfXFhKExpLGpmKTtMaS5wcm90b3R5cGUuVD1mdW5jdGlvbigpe2RlbGV0ZSB0aGlzLlg7dGhpcy5YYS5jbGVhcigpO3RoaXMuSGEuY2xlYXIoKTt0aGlzLnFiLmNsZWFyKCk7dGhpcy5xYSYmKExnKHRoaXMuZmEsXCJtZXNzYWdlXCIsdGhpcy5xYSksZGVsZXRlIHRoaXMucWEpO2RlbGV0ZSB0aGlzLmZhO2RlbGV0ZSB0aGlzLndjO2pmLnByb3RvdHlwZS5ULmNhbGwodGhpcyl9O2Z1bmN0aW9uIE1pKGEpe2lmKGEuWClyZXR1cm4gYS5YO2EuY2UmJmEuY2UoYS5mYSk/YS5YPWEuZmE6YS5YPU5nKGEuZmEsYS52ZSk7dmFyIGI7cmV0dXJuKGI9YS5YKSE9bnVsbD9iOm51bGx9XG5mdW5jdGlvbiBOaShhLGIsYyl7aWYoTWkoYSkpaWYoYS5YPT09YS5mYSkoYj1hLlhhLmdldChiKSkmJmIoYS5YLGMpO2Vsc2V7dmFyIGQ9YS5IYS5nZXQoYik7aWYoZCYmZC5JYil7T2koYSk7dmFyIGU9KythLlBmO2EucWIuc2V0KGUse1RhOmQuVGEsYWY6ZC5RYyhjKSxPZjpiPT09XCJhZGRFdmVudExpc3RlbmVyXCJ9KTthLlgucG9zdE1lc3NhZ2UoZC5JYihjLGUpLFwiKlwiKX19fWZ1bmN0aW9uIE9pKGEpe2EucWF8fChhLnFhPWZ1bmN0aW9uKGIpe3RyeXt2YXIgYz1hLndjP2Eud2MoYik6dm9pZCAwO2lmKGMpe3ZhciBkPWMuWGQsZT1hLnFiLmdldChkKTtpZihlKXtlLk9mfHxhLnFiLmRlbGV0ZShkKTt2YXIgZjsoZj1lLlRhKT09bnVsbHx8Zi5jYWxsKGUsZS5hZixjLlZkKX19fWNhdGNoKGcpe319LEtnKGEuZmEsXCJtZXNzYWdlXCIsYS5xYSkpfTtmdW5jdGlvbiBQaShhLGIpeygwLGEuX191c3BhcGkpKFwiZ2V0VVNQRGF0YVwiLDEsZnVuY3Rpb24oYyxkKXtiLkVkKHtIZDpjIT1udWxsP2M6dm9pZCAwLEtkOmQ/dm9pZCAwOjJ9KX0pfXZhciBRaT17UWM6ZnVuY3Rpb24oYSl7cmV0dXJuIGEuRWR9LEliOmZ1bmN0aW9uKGEsYil7YT17fTtyZXR1cm4gYS5fX3VzcGFwaUNhbGw9e2NhbGxJZDpiLGNvbW1hbmQ6XCJnZXRVU1BEYXRhXCIsdmVyc2lvbjoxfSxhfSxUYTpmdW5jdGlvbihhLGIpe2I9Yi5fX3VzcGFwaVJldHVybjt2YXIgYzthKHtIZDooYz1iLnJldHVyblZhbHVlKSE9bnVsbD9jOnZvaWQgMCxLZDpiLnN1Y2Nlc3M/dm9pZCAwOjJ9KX19O2Z1bmN0aW9uIFJpKGEpe2E9dHlwZW9mIGEuZGF0YT09PVwic3RyaW5nXCI/SlNPTi5wYXJzZShhLmRhdGEpOmEuZGF0YTtyZXR1cm57VmQ6YSxYZDphLl9fdXNwYXBpUmV0dXJuLmNhbGxJZH19XG5mdW5jdGlvbiBTaShhLGIpe2I9Yj09PXZvaWQgMD97fTpiO2pmLmNhbGwodGhpcyk7dmFyIGM7dGhpcy50aW1lb3V0TXM9KGM9Yi50aW1lb3V0TXMpIT1udWxsP2M6NTAwO3RoaXMuY2FsbGVyPW5ldyBMaShhLFwiX191c3BhcGlMb2NhdG9yXCIsZnVuY3Rpb24oZCl7cmV0dXJuIHR5cGVvZiBkLl9fdXNwYXBpPT09XCJmdW5jdGlvblwifSxSaSk7dGhpcy5jYWxsZXIuWGEuc2V0KFwiZ2V0RGF0YVdpdGhDYWxsYmFja1wiLFBpKTt0aGlzLmNhbGxlci5IYS5zZXQoXCJnZXREYXRhV2l0aENhbGxiYWNrXCIsUWkpfXFhKFNpLGpmKTtTaS5wcm90b3R5cGUuVD1mdW5jdGlvbigpe3RoaXMuY2FsbGVyLmRpc3Bvc2UoKTtqZi5wcm90b3R5cGUuVC5jYWxsKHRoaXMpfTtcbmZ1bmN0aW9uIFRpKGEsYil7dmFyIGM9e307aWYoTWkoYS5jYWxsZXIpKXt2YXIgZD1KZyhmdW5jdGlvbigpe2IoYyl9KTtOaShhLmNhbGxlcixcImdldERhdGFXaXRoQ2FsbGJhY2tcIix7RWQ6ZnVuY3Rpb24oZSl7ZS5LZHx8KGM9ZS5IZCk7ZCgpfX0pO3NldFRpbWVvdXQoZCxhLnRpbWVvdXRNcyl9ZWxzZSBiKGMpfVNpLnByb3RvdHlwZS53Yj1mdW5jdGlvbigpe3JldHVybiBNaSh0aGlzLmNhbGxlcil9O3ZhciBWaT1CKGZ1bmN0aW9uKCl7dmFyIGE9QmIoXCJ1YXRtXCIsRGIoKSksYj1hIT1udWxsP2E6NTthPW5ldyBTaSh3aW5kb3cpO3JldHVybiBNaShhLmNhbGxlcik/KGE9VWkoYSksUHJvbWlzZS5yYWNlKFthLE1kKGIsNCldKS50aGVuKGZ1bmN0aW9uKGMpe3JldHVybiBjPT09Mj97UGI6ITEsZGE6Y306Yz09PTQ/KGNvbnNvbGUud2FybihcIlJlYWNoZWRcIitiK1wibXMgdGltZW91dCBhbmQgYmVmb3JlIFVTUCByZXNwb25zZSB3YXMgcmVjZWl2ZWQuXCIpLHtQYjohMSxkYTpjfSk6Yz09PTY/e1BiOiExLGRhOmN9OntQYjohMCxkYTpjfX0pKTpudWxsfSxcImdDQURcIik7XG5mdW5jdGlvbiBVaShhKXtmdW5jdGlvbiBiKGQpe2QmJnR5cGVvZiBkLnVzcFN0cmluZz09PVwic3RyaW5nXCI/Yy5yZXNvbHZlKFdpKGQudXNwU3RyaW5nKSk6Yy5yZXNvbHZlKDMpfXZhciBjPUtkKCk7dHJ5e1RpKGEsYil9Y2F0Y2goZCl7Yy5yZXNvbHZlKDYpLGNvbnNvbGUud2FybihcIlVTUCByZXR1cm5lZCBlcnJvciBzdGF0dXM6IFwiK2QpfXJldHVybiBjLnByb21pc2V9ZnVuY3Rpb24gV2koYSl7aWYoL15bMS05XVtueU5ZXFwtXVtueU5ZXVtueU5ZXFwtXSQvLnRlc3QoYSkpe3ZhciBiPWEuY2hhckF0KDIpO2lmKC9eWXx5Ly50ZXN0KGIpKXJldHVybiAyO2lmKC9eTnxuLy50ZXN0KGIpKXJldHVybiAxfWlmKGE9PT1cIjEtLS1cIilyZXR1cm4gNTtiPVwiMzpcIithO2NvbnNvbGUud2FybihcIkNDUEEgVVMgUHJpdmFjeSBzdHJpbmcgXCIrYStcIiBpcyBtYWxmb3JtZWQgYW5kIHBlcnNvbmFsaXphdGlvbiBpbnRlbnQgd2FzIHVuYWJsZSB0byBiZSBmZXRjaGVkLlwiKTtyZXR1cm4gYn07ZnVuY3Rpb24gWGkoKXt9WGkucHJvdG90eXBlLnhiPWZ1bmN0aW9uKCl7cmV0dXJuIEZiKCl9O1hpLnByb3RvdHlwZS5QZD1mdW5jdGlvbihhKXtyZXR1cm4gbmV3IEhiKHRoaXMueGIoYSkrXCIvYWZzL2Fkc1wiKX07WGkucHJvdG90eXBlLlNjPWZ1bmN0aW9uKCl7cmV0dXJuITF9O2Z1bmN0aW9uIFlpKGEsYixjLGQpe3RoaXMubWU9YTt0aGlzLmtjPWI7dGhpcy5jYj1jO3RoaXMuU2Q9ZDt0aGlzLlpiPSExO3RoaXMuRGM9MH1mdW5jdGlvbiBaaShhLGIsYyxkKXtkPWQ9PT12b2lkIDA/e306ZDthLm1lLS07YS5aYj1hLlpifHxiO2M+YS5EYyYmKGEuRGM9Yyk7aWYoYS5tZT09MClpZihhLlpiKXtpZihhLmNiKXtiPXZvaWQgMDtzd2l0Y2goYS5EYyl7Y2FzZSAyOmI9ITA7YnJlYWs7Y2FzZSAxOmI9ITF9dHJ5e2EuY2IoYS5rYywhMCxiLGQpfWNhdGNoKGUpe319fWVsc2V7aWYoYS5TZCl0cnl7YS5TZChhLmtjLCExLHZvaWQgMCxkKX1jYXRjaChlKXt9aWYoYS5jYil0cnl7YS5jYihhLmtjLCExLHZvaWQgMCxkKX1jYXRjaChlKXt9fX07dmFyICRpPW5ldyBNYXA7JGkuc2V0KDIse2piOjcyNzE3MTA3LGV4cGVyaW1lbnRJZDo3MjcxNzEwOCx2YjpcImFmc19hYV9iYXNlbGluZVwiLHRiOjB9KTskaS5zZXQoMyx7amI6NzI3MTcxMDksZXhwZXJpbWVudElkOjcyNzE3MTEwLHZiOlwiYWZzX2dwcF9hcGlcIix0YjowfSk7JGkuc2V0KDQse2piOjQ5MjgwOTAzLGV4cGVyaW1lbnRJZDo0OTI4MDkwNix2YjpcImFmc19jaGF0Ym90XCIsdGI6MSxJZDpcImNoYXRib3RFeHBlcmltZW50SWRcIn0pOyRpLnNldCg1LHtqYjo3Mjc3MTk1MyxleHBlcmltZW50SWQ6NzI3NzE5NTQsdmI6XCJhZnNfY2hhdGJvdF9hYVwiLHRiOjEsSWQ6XCJjaGF0Ym90RXhwZXJpbWVudElkXCJ9KTt2YXIgYWo9bmV3IE1hcCxjaj1iajtmdW5jdGlvbiBkaihhKXt2YXIgYjtyZXR1cm4oKGI9JGkuZ2V0KGEpKT09bnVsbD92b2lkIDA6Yi50Yil8fDB9ZnVuY3Rpb24gZWooYSl7dmFyIGI7cmV0dXJuKChiPSRpLmdldChhKSk9PW51bGw/dm9pZCAwOmIuSWQpfHxcIlwifVxuZnVuY3Rpb24gZmooYSl7Zm9yKHZhciBiPXUoJGkua2V5cygpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSljPWMudmFsdWUsYWouaGFzKGMpfHxkaihjKSE9PTF8fChhW2VqKGMpXT9hai5zZXQoYyxnaihjLFN0cmluZyhhW2VqKGMpXSkpKTphai5zZXQoYywwKSl9ZnVuY3Rpb24gaGooKXthai5oYXMoNCl8fEEubG9nKFwiQXR0ZW1wdGVkIHRvIGdldCBjbGllbnQgZGl2ZXJ0ZWQgZXhwZXJpbWVudCBmbGFnIGJlZm9yZSBpbml0aWFsaXphdGlvbi4gVGhlIGZsYWcgcmVxdWVzdGVkIHdhcyA0LlwiLFwiY2RlZmJpXCIpO3N3aXRjaChhai5nZXQoNCkpe2Nhc2UgMjpyZXR1cm4hMDtjYXNlIDE6cmV0dXJuITE7ZGVmYXVsdDpyZXR1cm4gbnVsbH19XG5mdW5jdGlvbiBnaihhLGIpe3ZhciBjO3ZhciBkPUJiKCgoYz0kaS5nZXQoYSkpPT1udWxsP3ZvaWQgMDpjLnZiKXx8XCJcIixEYigpLmNkZW0pO2lmKCFkKXt2YXIgZTtjPU1iKCk7dmFyIGY9XCJtZW06IFwiKygoKGU9JGkuZ2V0KGEpKT09bnVsbD92b2lkIDA6ZS5leHBlcmltZW50SWQpfHwwKTtKYiYmUWIoYyxmKX1kPWR8fDA7ZT1NYXRoLmZsb29yKChuZXcgRGF0ZSkuZ2V0VGltZSgpLzg2NEU1KTt2YXIgZyxoO2E9KChoPShnPSRpLmdldChhKSk9PW51bGw/dm9pZCAwOmcuZXhwZXJpbWVudElkKSE9bnVsbD9oOjApK2U7Yj1jaihiLGEpJTFFMztyZXR1cm4gYjxkPzI6Yj49MUUzLWQ/MTowfVxuZnVuY3Rpb24gYmooYSxiKXt2YXIgYz0zNzM1OTI4NTU5XmI7Yl49MTEwMzU0Nzk5MTtmb3IodmFyIGQ9MCxlO2Q8YS5sZW5ndGg7ZCsrKWU9YS5jaGFyQ29kZUF0KGQpLGM9TWF0aC5pbXVsKGNeZSwyNjU0NDM1NzYxKSxiPU1hdGguaW11bChiXmUsMTU5NzMzNDY3Nyk7Yz1NYXRoLmltdWwoY15jPj4+MTYsMjI0NjgyMjUwNyk7Y149TWF0aC5pbXVsKGJeYj4+PjEzLDMyNjY0ODk5MDkpO2I9TWF0aC5pbXVsKGJeYj4+PjE2LDIyNDY4MjI1MDcpO2JePU1hdGguaW11bChjXmM+Pj4xMywzMjY2NDg5OTA5KTtyZXR1cm4gNDI5NDk2NzI5NiooMjA5NzE1MSZiKSsoYz4+PjApfTt2YXIgaWo9d2luZG93O2Z1bmN0aW9uIGpqKGEsYil7YSYmYiE9PW51bGwmJmIhPWIudG9wJiYoYj1iLnRvcCk7dHJ5e3JldHVybiBiZChifHx3aW5kb3cpLnJvdW5kKCl9Y2F0Y2goYyl7cmV0dXJuIG5ldyBDYygtMTIyNDU5MzMsLTEyMjQ1OTMzKX19O2Z1bmN0aW9uIGtqKCl7dmFyIGE9YT09PXZvaWQgMD9kb2N1bWVudDphO3ZhciBiO3JldHVybiEoKGI9YS5mZWF0dXJlUG9saWN5KT09bnVsbHx8IWIuYWxsb3dlZEZlYXR1cmVzKCkuaW5jbHVkZXMoXCJhdHRyaWJ1dGlvbi1yZXBvcnRpbmdcIikpfTtmdW5jdGlvbiBUKGEsYixjLGQsZSxmLGcsaCxrLGwpe2w9bD09PXZvaWQgMD9bXTpsO3RoaXMuSj1hO3RoaXMuU2E9dGhpcy5MYj10aGlzLktiPTA7dGhpcy5vcHRpb25zPXt9O3RoaXMuY29udGFpbmVyPW51bGw7dGhpcy5pYT1rPT09dm9pZCAwPzE6azt0aGlzLlNiPWM7dGhpcy5VPWh8fFtdO3RoaXMuVWQ9ZXx8bnVsbDt0aGlzLk5hPXRoaXMuQmQ9dGhpcy5oYj0hMTt0aGlzLlI9bmV3IExiKG51bGwpO3RoaXMubmQ9dGhpcy55YT10aGlzLkphPXRoaXMuamU9XCJcIjt0aGlzLkNiPXRoaXMuTD0hMTt0aGlzLk1kPVwiXCI7dGhpcy5mYj1uZXcgSGIoXCJcIik7dGhpcy5tYT1sO3RoaXMuZGQ9dGhpcy54YT10aGlzLkFiPTA7dGhpcy5UZj1kO3RoaXMuRmE9bnVsbDt0aGlzLnVkPVtdO3RoaXMuTz17fTt0aGlzLmxhPXRoaXMuRmI9bnVsbDt0aGlzLk1jKGIsZixnLGgpfW49VC5wcm90b3R5cGU7XG5uLm1jPWZ1bmN0aW9uKGEpe2lmKHRoaXMuTClyZXR1cm5cIm4wXCI7dmFyIGI9dGhpcy5MYixjPXRoaXMuS2IsZD10aGlzLlNhO2EhPW51bGwmJihiKz1cIm1pblRvcFwiaW4gYT9hLm1pblRvcDowLGMrPVwibWF4VG9wXCJpbiBhP2EubWF4VG9wOjAsZCs9XCJyaHNcImluIGE/YS5yaHM6MCk7aWYoYyYmYj5jKXRocm93IFliKFwiQ2Fubm90IHJlcXVlc3QgbW9yZSBtaW5Ub3AgYWRzIHRoYW4gbWF4VG9wLlwiKTtyZXR1cm4oZD4wP1wiblwiK2Q6XCJcIikrKGM+MD9cInBcIitjOlwiXCIpKyhiPjA/XCJhXCIrYjpcIlwiKX07bi5wYz1mdW5jdGlvbihhLGIpe2E9dGhpcy5aKGEpO2ImJmIubGVuZ3RoPjAmJihiLnNwbGljZSgwLDAsYSksYT1iLmpvaW4oXCJ8XCIpKTtyZXR1cm4gYX07bi5aPWZ1bmN0aW9uKGEpe3RoaXMuU2E9YS5udW1iZXI7dmFyIGI7dGhpcy5LYnx8dGhpcy5MYj9iPVwicFwiOnRoaXMuU2EmJihiPVwiblwiKTtyZXR1cm5cIlwiK2IrKHRoaXMuS2J8fHRoaXMuTGJ8fHRoaXMuU2F8fDApfTtcbm4uc2Q9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPXt9O2Euc2V0dGluZ3NJZCYmIWEuc3R5bGVJZCYmKGEuc3R5bGVJZD1hLnNldHRpbmdzSWQpO2RlbGV0ZSBhLnNldHRpbmdzSWQ7YS5oYXNPd25Qcm9wZXJ0eShcInBlcnNvbmFsaXNlZEFkc1wiKSYmKGEuaGFzT3duUHJvcGVydHkoXCJwZXJzb25hbGl6ZWRBZHNcIik/YS5wZXJzb25hbGl6ZWRBZHM9YS5wZXJzb25hbGlzZWRBZHMmJmEucGVyc29uYWxpemVkQWRzOmEucGVyc29uYWxpemVkQWRzPWEucGVyc29uYWxpc2VkQWRzKTthLmhhc093blByb3BlcnR5KFwicGVyc29uYWxpemVkQWRzXCIpJiZkZWxldGUgYS5wZXJzb25hbGlzZWRBZHM7YS5yZWZlcnJlckFkQ3JlYXRpdmUmJihhLmt3P2NvbnNvbGUud2FybihcIkNhbm5vdCBzZXQgYm90aCByZWZlcnJlckFkQ3JlYXRpdmUgYW5kIGt3LCBpZ25vcmluZyByZWZlcnJlckFkQ3JlYXRpdmVcIik6YS5rdz1hLnJlZmVycmVyQWRDcmVhdGl2ZSxkZWxldGUgYS5yZWZlcnJlckFkQ3JlYXRpdmUpO2EuY21wU2RrSWQmJlxuIWEudGNTdHJpbmcmJihhLnRjU3RyaW5nPVwidGN1bmF2YWlsYWJsZVwiKTthLmdkcHJBcHBsaWVzPT0xP2EuZ2RwckFwcGxpZXM9ITA6YS5nZHByQXBwbGllcz09MCYmKGEuZ2RwckFwcGxpZXM9ITEpO2lmKCF4KFwiX2Rpc2FibGVVc3BBcGlcIikmJmEudXNQcml2YWN5KXt2YXIgZT1XaShhLnVzUHJpdmFjeSk7YS5jcHA9ZTtlPT09MiYmKGQucGVyc29uYWxpemVkQWRzPSExKX1hLnR5cGU9PVwicGxhc1wiJiZhLnN0eWxlSWQmJih0aGlzLkoud2lkdGguT2M9ITEsdGhpcy5KLmhlaWdodC5PYz0hMSk7ZT1hLmNoYXRib3RVc2VyUHJvbXB0IT09bnVsbCYmYS5jaGF0Ym90VXNlclByb21wdCE9PVwiXCImJmEuY2hhdGJvdFVzZXJQcm9tcHQhPT12b2lkIDA7Zm9yKHZhciBmPWEuY2hhdGJvdFJlc3BvbnNlIT09bnVsbCYmYS5jaGF0Ym90UmVzcG9uc2UhPT1cIlwiJiZhLmNoYXRib3RSZXNwb25zZSE9PXZvaWQgMCxnPXUoT2JqZWN0LmtleXModGhpcy5KKSksaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpaWYoaD1cbmgudmFsdWUsdGhpcy5KW2hdLk9jJiYoaD09XCJxdWVyeVwiJiYoYVtoXT09bnVsbHx8YVtoXT09XCJcIil8fGghPVwicXVlcnlcIiYmIWFbaF0pKXtpZighZSYmaD09XCJxdWVyeVwiKXRocm93IFliKFwiTWlzc2luZyBvcHRpb24gJ1wiK2grXCInLlwiKTt9ZWxzZSB0eXBlb2YgYVtoXSE9XCJ1bmRlZmluZWRcIiYmYVtoXSE9bnVsbCYmaCE9PVwiY2hhdGJvdFJlc3BvbnNlXCImJihkW2hdPWFbaF0pO2UmJihkLnF1ZXJ5PWEuY2hhdGJvdFVzZXJQcm9tcHQsZiYmKGQuY2hhdGJvdFJlc3BvbnNlPWEuY2hhdGJvdFJlc3BvbnNlLnN1YnN0cmluZygwLDE1MDApKSk7YS5zaG9wcGluZ0Fkc0luQ2Fyb3VzZWw9PT0hMSYmZGVsZXRlIGQubnVtUmVwZWF0ZWQ7YS5ydXJsT3ZlcnJpZGUmJihjb25zb2xlLndhcm4oXCJhZHRlc3QgaXMgZW5hYmxlZCB3aGVuIGFuIHJ1cmxPdmVycmlkZSB2YWx1ZSBpcyBwcm92aWRlZFwiKSxkLmFkdGVzdD1cIm9uXCIpO2lmKGU9eGQoeWEubG9jYXRpb24uaHJlZixcImdvb2dsZV9hZnNleHBcIikpZC5hZnNleHA9XG5lLGQuYWR0ZXN0PVwib25cIixjb25zb2xlLndhcm4oXCJhZHRlc3QgaXMgZW5hYmxlZCB3aGVuIGdvb2dsZV9hZnNleHAgaXMgdXNlZFwiKTt0aGlzLkw9YS5yb2xlIT1cIm1cIjt0aGlzLkVhKGQpO3RoaXMuTHx8bGooZCk7ZC5hZExvYWRlZENhbGxiYWNrPWEuYWRMb2FkZWRDYWxsYmFja3x8YS5jYWxsYmFja3x8bnVsbDtkLm9lPWQub2V8fFwiVVRGLThcIjtkLmllPWQuaWV8fFwiVVRGLThcIjtkLm51bWJlcj1taihkLm51bWJlcik7ZC5taW5Ub3A9bWooZC5taW5Ub3ApO2QubWF4VG9wPW1qKGQubWF4VG9wKTtkLmZleHA9KGQuZmV4cD9kLmZleHArXCIsXCI6XCJcIikrKGQuZ2NzYz9cIjIwNjA2XCI6XCIyMTQwNFwiKTsoZT1BYihcImNlaVwiLERiKCkpfHxcIlwiKSYmKGQuZmV4cCs9XCIsXCIrZSk7ZT1kO2Y9ZC5mZXhwO2c9XCJcIjtoPXUoYWoua2V5cygpKTtmb3IodmFyIGs9aC5uZXh0KCk7IWsuZG9uZTtrPWgubmV4dCgpKXtrPWsudmFsdWU7dmFyIGw9dm9pZCAwO2lmKGFqLmdldChrKT09PTEpe3ZhciBtPXZvaWQgMDtcbmw9KG09JGkuZ2V0KGspKT09bnVsbD92b2lkIDA6bS5qYn1lbHNlIGFqLmdldChrKT09PTImJihtPXZvaWQgMCxsPShtPSRpLmdldChrKSk9PW51bGw/dm9pZCAwOm0uZXhwZXJpbWVudElkKTtsJiYoZys9XCIsXCIrbCl9ZS5mZXhwPWYrZztkLmZvcmNlRXghPXZvaWQgMCYmKGQuZm9yY2VFeD09PVwiTW9zdExhdW5jaGVzXCI/KGQuZT1cIk1vc3RMYXVuY2hlc1wiLGRlbGV0ZSBkLmZvcmNlRXgpOmQuZXx8KGQuZT1cIk9ubHlGb3JjZWRFeHBlcmltZW50c1wiKSk7ZC5nY3NjJiZhLnBvc2l0aW9uPT1cInRvcFwiJiYoZC5tYXhUb3A9YS5udW1iZXIsZC5udW1iZXI9bnVsbCk7ZC5mb3JtYXQ9dGhpcy5MP3RoaXMuWihkKTp0aGlzLnBjKGQsYik7dGhpcy5NZD1kLmZvcm1hdDtkLmFkcz10aGlzLm1jKGMpO2Qubm9jYWNoZT1bTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKjFFMyksRGF0ZS5ub3coKV0uam9pbihcIlwiKTtkLm51bT1cIjBcIjtkLm91dHB1dD10aGlzLlNiLktjKCk7aWYodGhpcy5TYi5TYygpKXRyeXtkLmRvbWFpbk5hbWV8fFxuKGQuZG9tYWluTmFtZT13aW5kb3cuZG9jdW1lbnQuZG9tYWluKSxkLmRvbWFpbk5hbWU9ZC5kb21haW5OYW1lLnN1YnN0cmluZygwLDgwKX1jYXRjaChwKXt9ZWxzZSBkZWxldGUgZC5kb21haW5OYW1lO2QuZ2NzYyYmKGQuc291cmNlPVwiZ2NzY1wiKTtkLnY9XCIzXCI7dHlwZW9mIGQucHViSWQhPT1cInN0cmluZ1wiJiYoZC5wdWJJZD1cIlwiK2QucHViSWQpO2QucHViSWQuaW5kZXhPZihcInBhcnRuZXItXCIpPT0wJiYoZC5wdWJJZD1kLnB1YklkLnN1YnN0cmluZyg4KSk7dHlwZW9mIGQuaG9zdFB1YklkIT09XCJ1bmRlZmluZWRcIiYmKGQuaG9zdFB1YklkPVN0cmluZyhkLmhvc3RQdWJJZCkucmVwbGFjZSgvXnBhcnRuZXItLyxcIlwiKSk7ZD1uaihkKTshZC50aXRsZUJvbGR8fGQudGl0bGVCb2xkIT09ITAmJmQudGl0bGVCb2xkIT0xP2QudGl0bGVCb2xkJiZkZWxldGUgZC50aXRsZUJvbGQ6ZC50aXRsZUJvbGQ9MTtyZXR1cm4gZH07XG5uLldjPWZ1bmN0aW9uKGEpe3ZhciBiPVtdLGM7Zm9yKGMgaW4gYSlhLmhhc093blByb3BlcnR5KGMpJiZjIGluIHRoaXMuSiYmdGhpcy5KW2NdLldiJiZiLnB1c2gob2ooYVtjXSx0aGlzLkpbY10pKTtyZXR1cm4gYi5qb2luKFwiXCIpfTtuLkRhPWZ1bmN0aW9uKGEsYil7dmFyIGM9W10sZDtmb3IoZCBpbiBhKSEoYS5oYXNPd25Qcm9wZXJ0eShkKSYmZCBpbiB0aGlzLkomJnRoaXMuSltkXS5XYil8fGQgaW4gYiYmYltkXT09YVtkXXx8Yy5wdXNoKG9qKGFbZF0sdGhpcy5KW2RdKSk7cmV0dXJuIGMuam9pbihcIlwiKX07XG5uLnJjPWZ1bmN0aW9uKGEsYixjKXt2YXIgZD1iLmZpbHRlcihmdW5jdGlvbihmKXtyZXR1cm4gZi5pYT09PTF9KTtpZihkLmxlbmd0aD09MClyZXR1cm4gdGhpcy5EYShhLHt9KStcIi1cIjtjLnB1YklkPWEucHViSWQ7Yz1uaihjKTtiPXRoaXMuV2MoYyk7dmFyIGU9W107ZS5wdXNoKHRoaXMuRGEoYSxjKSk7YT11KGQpO2ZvcihkPWEubmV4dCgpOyFkLmRvbmU7ZD1hLm5leHQoKSlkPWQudmFsdWUsZC5vcHRpb25zLnNsYXZlTnVtYmVyJiZkLm9wdGlvbnMuc2xhdmVOdW1iZXIhPTAmJmUucHVzaCh0aGlzLkRhKGQub3B0aW9ucyxjKSk7cmV0dXJuW2IsZS5qb2luKFwiLVwiKV0uam9pbihcIi1cIil9O2Z1bmN0aW9uIHBqKGEpe3JldHVybiBhLm9wdGlvbnMmJmEub3B0aW9ucy50eXBlP2Eub3B0aW9ucy50eXBlPT09XCJzZWFyY2hib3hcIjohMX1cbmZ1bmN0aW9uIHFqKGEpe3ZhciBiO3JldHVybihiPWEub3B0aW9ucykhPW51bGwmJmIudHlwZT9hLm9wdGlvbnMudHlwZT09PVwicmVsYXRlZHNlYXJjaFwiOiExfW4ub2M9ZnVuY3Rpb24oYSxiKXt2YXIgYz0vXltBLVphLXpdK1tcXHdcXC06XFwuXSokLyxkPVtdO3RoaXMuQ2J8fHBqKHRoaXMpfHwoYT1hLmNvbnRhaW5lcixkLnB1c2goYy50ZXN0KGEpP2E6XCJcIikpO2I9dShiKTtmb3IoYT1iLm5leHQoKTshYS5kb25lO2E9Yi5uZXh0KCkpYT1hLnZhbHVlLHBqKGEpfHxhLmlhIT09MXx8KGE9YS5vcHRpb25zLmNvbnRhaW5lcixkLnB1c2goYy50ZXN0KGEpP2E6XCJcIikpO3JldHVybiBkLmpvaW4oXCJ8XCIpfTtcbm4udWM9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcy5TYi5QZChhLnB1YklkKTt0aGlzLmRjKGEsYik7d2luZG93Lmdvb2dsZUFsdExvYWRlcj09Mz95KGIsXCJic2xcIiw4KTp3aW5kb3cuZ29vZ2xlQWx0TG9hZGVyPT00JiZ5KGIsXCJic2xcIiwxMCk7eShiLFwicGFjXCIscmooYSkpO2lmKCF0aGlzLkwpe3ZhciBjPWM9PT12b2lkIDA/d2luZG93OmM7dmFyIGQ9ZD09PXZvaWQgMD9kb2N1bWVudDpkO3ZhciBlPWU9PT12b2lkIDA/bmV3IERhdGU6ZTt2YXIgZj1jO2Y9Zj09PXZvaWQgMD9pajpmO3RyeXt2YXIgZz1mLmhpc3RvcnkubGVuZ3RofWNhdGNoKGwpe2c9MH15KGIsXCJ1X2hpc1wiLGcpO3koYixcInVfdHpcIiwtZS5nZXRUaW1lem9uZU9mZnNldCgpKTt5KGIsXCJkdFwiLGUuZ2V0VGltZSgpKTt5KGIsXCJ1X3dcIixjLnNjcmVlbi53aWR0aCk7eShiLFwidV9oXCIsYy5zY3JlZW4uaGVpZ2h0KTtlPWpqKCEwLGMpO3koYixcImJpd1wiLGUud2lkdGgpO3koYixcImJpaFwiLGUuaGVpZ2h0KTtjLnRvcCE9YyYmKGU9XG5qaighMSxjKSx5KGIsXCJpc3dcIixlLndpZHRoKSx5KGIsXCJpc2hcIixlLmhlaWdodCkpO2QuYm9keT8oZT0hYy5zY3JvbGxZJiZkLmNvbXBhdE1vZGUhPVwiQ1NTMUNvbXBhdFwiLGQ9bmV3IENjKGU/ZC5ib2R5LnNjcm9sbFdpZHRoOmQuYm9keS5vZmZzZXRXaWR0aCxlP2QuYm9keS5zY3JvbGxIZWlnaHQ6ZC5ib2R5Lm9mZnNldEhlaWdodCkpOmQ9bmV3IENjKC0xLC0xKTt5KGIsXCJwc3dcIixkLndpZHRoKTt5KGIsXCJwc2hcIixkLmhlaWdodCk7aWYoYy50b3A9PWMpdmFyIGg9MDtlbHNle2M9Yy50b3A7dHJ5e3ZhciBrO2lmKGs9ISFjJiZjLmxvY2F0aW9uLmhyZWYhPW51bGwpYjp7dHJ5e1NjKGMuZm9vKTtrPSEwO2JyZWFrIGJ9Y2F0Y2gobCl7fWs9ITF9aD1rfWNhdGNoKGwpe2g9ITF9aD1oPzE6Mn15KGIsXCJmcm1cIixoKX1oPXdpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMmJndpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMubGVuZ3RoJiZ3aW5kb3cubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zLmxlbmd0aD5cbjA7eShiLFwidWlvXCIsdGhpcy5qZSk7eShiLFwiY29udFwiLHRoaXMub2ModGhpcy5vcHRpb25zLHRoaXMuVSkpO3koYixcImpzdlwiLDY4ODE2MDUwNiwhMCk7YS5ydXJsT3ZlcnJpZGU/eShiLFwicnVybFwiLGEucnVybE92ZXJyaWRlLCEwKTooaz13aW5kb3cubG9jYXRpb24uaHJlZixrLmluZGV4T2YoXCJhYm91dDpcIik9PTAmJmgmJihrPXdpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnNbMF0pLHkoYixcInJ1cmxcIixrLCEwKSk7eShiLHNqLnJlZmVyZXIsZG9jdW1lbnQucmVmZXJyZXIsITApO2EucmVmZXJyZXImJnkoYixcIm9wdHJlZlwiLGEucmVmZXJyZXIsITApO2gmJnkoYixcImxhb1wiLHdpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnNbMF0sITApOyhhPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoZG9jdW1lbnQsXCJyZWZlcnJlclwiKSE9PXZvaWQgMCkmJlFiKHRoaXMuUixcInJtXCIpO3koYixcImRydFwiLGE/MTowKTt5KGIsXCJqc2lkXCIsXCJjYWZcIik7L0Nocm9tZXxDcmlPUy9pLnRlc3QoS2YpJiZcbmtqKCkmJnkoYixcIm5mcFwiLFwiMVwiKTtyZXR1cm4gYn07bi5kYz1mdW5jdGlvbihhLGIpe2Zvcih2YXIgYyBpbiBhKWlmKGEuaGFzT3duUHJvcGVydHkoYykmJnNqLmhhc093blByb3BlcnR5KGMpKXt2YXIgZD1zaltjXSxlPWFbY107ZD09XCJjbGt3ZFwiJiYoZT1cInRcIik7ZD09XCJ0eXBlXCImJihlPXFkW2FbY11dKTtjPT1cImRvbWFpblNlc3Npb25Ub2tlblwiJiZcImFmZFRva2VuXCJpbiBhJiZkPT1zai5hZmRUb2tlbnx8KGQ9PVwiaXZ0XCImJihlPWppLkMoZSkpLHkoYixkLGUpKX19O24uRz1mdW5jdGlvbigpe3ZhciBhPVtdO3RoaXMub3B0aW9ucy5yb2xlPT1cIm1cInx8dGhpcy5vcHRpb25zLnNsYXZlTnVtYmVyPT09dm9pZCAwP2EucHVzaChcIm1hc3RlclwiKTooYS5wdXNoKFwic2xhdmVcIiksYS5wdXNoKHRoaXMub3B0aW9ucy5zbGF2ZU51bWJlcikpO3RoaXMuaWE9PTI/YS5wdXNoKFwiYVwiKTp0aGlzLmlhPT0zJiZhLnB1c2goXCJiXCIpO2EucHVzaCh0aGlzLm9wdGlvbnMubWFzdGVyTnVtYmVyKTtyZXR1cm4gYS5qb2luKFwiLVwiKX07XG5uLkpjPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXt9O2UubmFtZT1iO2E9Yy5jb25jYXQoW2FdKTtiPWQuY29uY2F0KFtiXSk7Zm9yKGQ9MDtkPGEubGVuZ3RoO2QrKyl7Yz1iW2RdO3ZhciBmPXZvaWQgMCxnPWFbZF0saD10aGlzLkosaz17fTtmb3IoZiBpbiBoKWlmKGguaGFzT3duUHJvcGVydHkoZikmJiFoW2ZdLlRjKXt2YXIgbD1nW2ZdLG09aFtmXS5nYTt0eXBlb2YgbD09XCJ1bmRlZmluZWRcInx8Zj09XCJjb250YWluZXJcIiYmdHlwZW9mIGw9PVwib2JqZWN0XCI/dHlwZW9mIG0hPVwidW5kZWZpbmVkXCImJihrW2ZdPW0pOmtbZl09bH1lW2NdPWt9cmV0dXJuIEpTT04uc3RyaW5naWZ5KGUpfTtcbm4uSGM9ZnVuY3Rpb24oYSxiLGMsZCl7dGhpcy5BYj1EYXRlLm5vdygpO2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpJiZBLmxvZyhcImlmcmFtZTogXCIrYStcIi4gcHViSWQ6IFwiK2QrXCIuIFwiLFwiZElcIik7ZD1lZChkb2N1bWVudCxcIklGUkFNRVwiKTtkLmZyYW1lQm9yZGVyPVwiMFwiO2QubWFyZ2luV2lkdGg9XCIwXCI7ZC5tYXJnaW5IZWlnaHQ9XCIwXCI7ZC52c3BhY2U9MDtkLmhzcGFjZT0wO2Quc2V0QXR0cmlidXRlKFwiYWxsb3dUcmFuc3BhcmVuY3lcIixcInRydWVcIik7ZC5zY3JvbGxpbmc9XCJub1wiO2Quc3R5bGUudmlzaWJpbGl0eT1cImhpZGRlblwiO2Qud2lkdGg9XCIxMDAlXCI7ZC5zdHlsZS5oZWlnaHQ9XCIwcHhcIjtkLnN0eWxlLmRpc3BsYXk9XCJibG9ja1wiO2QubmFtZT1iO2QuaWQ9YTtkLnNyYz1jO3pkKCk/KGQuZGF0YXNldC5vYnNlcnZlPXRoaXMub3B0aW9ucy5tYXN0ZXJOdW1iZXIsdGhpcy5MfHwoZC5zZXRBdHRyaWJ1dGUoXCJkYXRhLWFkLXNyY1wiLGMpLGQuc3JjPVwiYWJvdXQ6YmxhbmtcIikpOnRoaXMueGE9XG50aGlzLkFiO3RoaXMuaWE9PT0yJiZ0aGlzLmNvbnRhaW5lci5jaGlsZEVsZW1lbnRDb3VudD49MT90aGlzLmNvbnRhaW5lci5pbnNlcnRCZWZvcmUoZCx0aGlzLmNvbnRhaW5lci5jaGlsZHJlblswXSk6dGhpcy5pYT09PTEmJnRoaXMuY29udGFpbmVyLmNoaWxkRWxlbWVudENvdW50PT09Mj90aGlzLmNvbnRhaW5lci5pbnNlcnRCZWZvcmUoZCx0aGlzLmNvbnRhaW5lci5jaGlsZHJlblsxXSk6dGhpcy5jb250YWluZXIuYXBwZW5kQ2hpbGQoZCk7dHJ5e2QuY29udGVudFdpbmRvdy5uYW1lPWJ9Y2F0Y2goZSl7fWtqKCkmJmQuc2V0QXR0cmlidXRlKFwiYWxsb3dcIixcImF0dHJpYnV0aW9uLXJlcG9ydGluZ1wiKTtyZXR1cm4gZH07XG5uLmljPWZ1bmN0aW9uKGEpe3ZhciBiPXdpbmRvdy5pbm5lcldpZHRoPHdpbmRvdy5pbm5lckhlaWdodDtpZih0aGlzLk5hJiYhYnx8IXRoaXMuTmEmJmIpe3RoaXMuTmE9Yjt0cnl7YS5jb250ZW50V2luZG93LnBvc3RNZXNzYWdlKFwib3JpZW50YXRpb246XCIrKHRoaXMuTmE/XCJwb3J0cmFpdFwiOlwibGFuZHNjYXBlXCIpLFwiKlwiKX1jYXRjaChjKXt9fX07bi5MYz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT10aGlzLGY9dGhpcy5IYyhhLGIsYyxkKTt0aGlzLkx8fCh0aGlzLk5jKGYpLHRoaXMuTmE9d2luZG93LmlubmVyV2lkdGg8d2luZG93LmlubmVySGVpZ2h0LHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwicmVzaXplXCIsZnVuY3Rpb24oKXtyZXR1cm4gZS5pYyhmKX0pKX07XG5uLlhjPWZ1bmN0aW9uKCl7dmFyIGE9e30sYjtmb3IoYiBpbiB0aGlzLm9wdGlvbnMpdGhpcy5vcHRpb25zLmhhc093blByb3BlcnR5KGIpJiYoYVtiXT10aGlzLm9wdGlvbnNbYl0pO2EuYWRzPVwibjBcIjthW1wiXCJdPVwiXCI7YS5zbGF2ZU51bWJlcj1cIjBcIjthLnJvbGU9XCJzXCI7YT10aih0aGlzLkosYSxEYXRlLm5vdygpLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCwxLHRoaXMubWEpO1ZbYS5HKCldPWE7dGhpcy5VLnNwbGljZSgwLDAsYSk7YT1kb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiZGl2XCIpO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7YS5zdHlsZS5oZWlnaHQ9XCIwcHhcIjthLnN0eWxlLnZpc2liaWxpdHk9XCJoaWRkZW5cIjt0aGlzLm9wdGlvbnMuY29udGFpbmVyPWE7dGhpcy5DYj10aGlzLm9wdGlvbnMucHJlbG9hZD0hMDt0aGlzLm1hPVtdfTtcbm4uTWM9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9aGooKTtlPT09ITA/dGhpcy5PLmV4cEFybT1cIkJcIjplPT09ITEmJih0aGlzLk8uZXhwQXJtPVwiQVwiKTt0aGlzLm9wdGlvbnM9dGhpcy5zZChhLGIsYyxkKTt0aGlzLlIuY2xpZW50PXRoaXMub3B0aW9ucy5wdWJJZDt0aGlzLlIuVWI9dGhpcy5vcHRpb25zLnN0eWxlSWR8fFwiXCI7IXgoXCJfZm9yY2VKc1ByZWxvYWRGb3JEZWJ1Z2dpbmdcIikmJnRoaXMudWIoKXx8dGhpcy5MfHwhZG9jdW1lbnQuYm9keXx8dGhpcy5YYygpO3RoaXMuamU9dGhpcy5VZD09bnVsbD9cIlwiOnRoaXMucmModGhpcy5vcHRpb25zLHRoaXMuVSx0aGlzLlVkKTt0aGlzLnlhPXRoaXMuSmE9dGhpcy5HKCk7dGhpcy5mYi5BYz1lbmNvZGVVUkkodGhpcy5KYSk7aWYodGhpcy5pYT09PTEmJiF4KFwiX2VuYWJsZVVuaWZpZWRNdWRza2lwcGVySWZyYW1lXCIpKWZvcih0aGlzLkZhPW5ldyBZaSh0aGlzLm1hLmxlbmd0aCsxLHRoaXMub3B0aW9ucy5jb250YWluZXIsdGhpcy5vcHRpb25zLmFkTG9hZGVkQ2FsbGJhY2ssXG50aGlzLm9wdGlvbnMubm9BZExvYWRlZENhbGxiYWNrKSxhPXUodGhpcy5tYSksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpYi52YWx1ZS5GYT10aGlzLkZhO2lmKCF0aGlzLkwpe01iKCkuY2xpZW50PXRoaXMub3B0aW9ucy5wdWJJZDtNYigpLlViPXRoaXMub3B0aW9ucy5zdHlsZUlkfHxcIlwiO2E9W107Yj1bXTtmb3IoYz0wO2M8dGhpcy5VLmxlbmd0aDtjKyspYS5wdXNoKHRoaXMuVVtjXS5HKCkpLGIucHVzaCh0aGlzLlVbY10ub3B0aW9ucyk7dGhpcy55YT10aGlzLkpjKHRoaXMub3B0aW9ucyx0aGlzLkphLGIsYSl9fTtcbm4ubGI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLGI9S2QoKSxjPUIoZnVuY3Rpb24oKXtpZighYS51YigpKXJldHVybiExO2EuVGIoYS5vcHRpb25zLmNvbnRhaW5lcik7aWYoYS5vcHRpb25zLndpZHRoJiYhYS5DYil7aWYoYS5vcHRpb25zLnR5cGU9PVwicGxhc1wiJiZhLkoud2lkdGghPXZvaWQgMCYmYS5KLndpZHRoLmcuQyhhLm9wdGlvbnMud2lkdGgpPT1udWxsKXRocm93IFliKFwid2lkdGggXCIrYS5vcHRpb25zLndpZHRoK1wiIGlzIGludmFsaWQuXCIpO2Eub3B0aW9ucy53aWR0aD09XCJhdXRvXCI/YS5jb250YWluZXIuc3R5bGUud2lkdGg9XCIxMDAlXCI6dWooYS5vcHRpb25zLndpZHRoKSYmKGEuY29udGFpbmVyLnN0eWxlLndpZHRoPWEub3B0aW9ucy53aWR0aCl9Zm9yKHZhciBmPXUoW10uY29uY2F0KGEubWEsYSkpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKXtnPWcudmFsdWU7Zy5UYihhLm9wdGlvbnMuY29udGFpbmVyKTt2YXIgaD1nLlNiLnhiKGEub3B0aW9ucy5wdWJJZCk7XG5oPW5ldyBIYihoK1wiL2Fmcy9hZHMvaS9pZnJhbWUuaHRtbFwiKTtnLmZiPShnLkw/aDpudWxsKXx8Zy51YyhnLm9wdGlvbnMpO2cubmQ9SWIoZy5mYil9aWYoIWEuTCYmYS5vcHRpb25zLmhhc093blByb3BlcnR5KFwidGNTdHJpbmdcIikmJmEub3B0aW9ucy50Y1N0cmluZy5sZW5ndGg+MCYmIWEubmQuaW5jbHVkZXMoc2oudGNTdHJpbmcrXCI9XCIpKXRocm93IFJiKGEuUixcInRsXCIsXCJUQyBzdHJpbmcgb2YgbGVuZ3RoIFwiK2Eub3B0aW9ucy50Y1N0cmluZy5sZW5ndGgrXCIgZG9lcyBub3QgZml0IGluIFVSTFwiKSxZYihcIkEgdHJhbnNwYXJlbmN5IGNvbnNlbnQgc3RyaW5nIHdhcyBjb2xsZWN0ZWQgYnV0IGlzIHRvbyBsb25nIHRvIGZpdCBpbiB0aGUgQ1NBIGFkIHJlcXVlc3QgVVJMLiBObyBhZHMgYXJlIGJlaW5nIHJlcXVlc3RlZC5cIik7YS5jb250YWluZXIudGV4dENvbnRlbnQ9XCJcIjtpZigheChcIl9lbmFibGVVbmlmaWVkTXVkc2tpcHBlcklmcmFtZVwiKSlmb3IoZj11KGEubWEpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPVxuZi5uZXh0KCkpZy52YWx1ZS5IYigpO2EuSGIoKTtiLnJlc29sdmUoYSk7cmV0dXJuITB9LFwiY0lfbUFcIik7aWYoIWMoKSl2YXIgZD1EYXRlLm5vdygpLGU9d2luZG93LnNldEludGVydmFsKGZ1bmN0aW9uKCl7aWYoYygpKWNsZWFySW50ZXJ2YWwoZSk7ZWxzZSBpZihEYXRlLm5vdygpLWQ+NkU0KXRocm93IGNsZWFySW50ZXJ2YWwoZSksWWIoJ2NvbnRhaW5lciBcIicrYS5vcHRpb25zLmNvbnRhaW5lcisnXCIgZG9lcyBub3QgZXhpc3QuJyk7fSw1KTtyZXR1cm4gYi5wcm9taXNlfTtuLkhiPWZ1bmN0aW9uKCl7dGhpcy5mYiYmdGhpcy5MYyh0aGlzLkphLHRoaXMueWEsdGhpcy5uZCx0aGlzLm9wdGlvbnMucHViSWQpfTtuLnFkPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXM7aWYodGhpcy5CZCl7dmFyIGM9dGhpcy5HKCksZD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChjKTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7cmV0dXJuIGIuUmIoZCxjLGEsITApfSwxNTAwKX19O1xubi5OYz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9XCJcIit0aGlzLm9wdGlvbnMubWFzdGVyTnVtYmVyLGQ9bmV3IGljKGMsYSk7RChkLFwiYUQuXCIrYyxFLmosdmopO0QoZCxcInFpXCIsb2MuaixmdW5jdGlvbihnLGgsayxsKXtnPXUoW10uY29uY2F0KGIuVSxiKSk7Zm9yKGg9Zy5uZXh0KCk7IWguZG9uZTtoPWcubmV4dCgpKWgudmFsdWUuUi5ZYz1sfHxcIlwifSk7RChkLFwiZWF3cFwiLG9jLmopO0QoZCxcIml0XCIsb2MuaixmdW5jdGlvbihnLGgsayxsKXthLnRpdGxlPWx9KTtEKGQsXCIuYUNTXCIsbmMuaixmdW5jdGlvbihnLGgsayxsKXt3aihiLGwpfSk7RChkLFwicy5iXCIsRS5qLHRoaXMuVmMuYmluZCh0aGlzKSk7RChkLFwicy5hRFVMVFwiLEUuaik7RChkLFwicy5mTFwiLEUuaik7RChkLFwicy50TVwiLEUuaik7RChkLFwicy5uUlwiLEUuaik7RChkLFwicy5pU0lcIixFLmopO0QoZCxcInMuZUNcIixuYy5qKTt2YXIgZT1udWxsO3RoaXMuQ2J8fChlPXRoaXMuRygpLEQoZCxlK1wiLmhBXCIsRS5qLHhqKSxEKGQsZStcIi5mc1wiLFxucGMuaix5aiksRChkLGUrXCIud1wiLG5jLmosZnVuY3Rpb24oZyxoLGssbCl7emooZyxoLGssbCl9KSxEKGQsZStcIi5hQ1wiLG5jLmopKTtEKGQsXCJ2LlwiK2Msb2MuaixBaik7dmFyIGY9dGhpcy5vcHRpb25zLnJlbGF0ZWRTZWFyY2hSZXN1bHRDbGlja2VkQ2FsbGJhY2s7dGhpcy5vcHRpb25zLnJlbGF0ZWRTZWFyY2hVc2VSZXN1bHRDYWxsYmFjayYmZiYmRChkLFwicnNyY1wiLHBjLmosZnVuY3Rpb24oZyxoLGssbCl7dHJ5e2YobC5xLGwucnNUb2tlbil9Y2F0Y2gobSl7fX0pO2M9dSh0aGlzLlUpO2ZvcihlPWMubmV4dCgpOyFlLmRvbmU7ZT1jLm5leHQoKSllPWUudmFsdWUuRygpLEQoZCxlK1wiLmhBXCIsRS5qLHhqKSxEKGQsZStcIi5mc1wiLHBjLmoseWopLEQoZCxlK1wiLmFDXCIsbmMuaiksRChkLFwidXNlT2JzZXJ2ZXJGb3JWaXNpYmlsaXR5RGV0ZWN0aW9uXCIsRS5qKX07XG5mdW5jdGlvbiB3aihhLGIpe2EuRmI9YjtpZighYS5sYSl7dmFyIGM9W1wibW91c2Vtb3ZlXCIsXCJtb3VzZWRvd25cIixcInNjcm9sbFwiLFwia2V5ZG93blwiLFwidG91Y2hzdGFydFwiXTthLmxhPWZ1bmN0aW9uKCl7aWYoYS5GYil7dmFyIGU9RGF0ZS5ub3coKS1hLkZiO2lmKGU8PShCYihcIm1kcFwiLERiKCkpfHwwKSl7dmFyIGY9YS5SLGc9TmIoZik7eShnLFwicGJ0XCIsXCJjZFwiKTt5KGcsXCJjc2FjZFwiLGUpO2YuamEoSWIoZykpO2EuRmI9bnVsbH19aWYoYS5sYSl7ZT11KGMpO2ZvcihmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlkb2N1bWVudC5ib2R5LnJlbW92ZUV2ZW50TGlzdGVuZXIoZi52YWx1ZSxhLmxhKTthLmxhPW51bGx9fTtiPXUoYyk7Zm9yKHZhciBkPWIubmV4dCgpOyFkLmRvbmU7ZD1iLm5leHQoKSlkb2N1bWVudC5ib2R5LmFkZEV2ZW50TGlzdGVuZXIoZC52YWx1ZSxhLmxhKX19XG5uLlZjPWZ1bmN0aW9uKGEsYil7aWYoKGI9VltcIm1hc3Rlci1cIitiXSkmJmIub3B0aW9ucyYmYi5vcHRpb25zLnBhZ2VMb2FkZWRDYWxsYmFjayl7dmFyIGM9a2MoYSxcInMuYlwiKSxkPXt9O2lmKGMpe3ZhciBlPWEuQltcInMuZUNcIl0udmFsdWU7ZSYmKGQuZXJyb3JfY29kZT1lKTtrYyhhLFwicy5mTFwiKSYmKGQuZmFpbGxpc3RlZD0hMCxrYyhhLFwicy50TVwiKT9kLmZhaWxsaXN0UmVhc29uPVwidHJhZGVtYXJrXCI6ZC5mYWlsbGlzdFJlYXNvbj1cIm90aGVyXCIpfWVsc2V7ZT15ZChCai5sb2NhdGlvbi5ocmVmKTt2YXIgZj1iLm9wdGlvbnMucHViSWR8fFwiXCIsZz1mLmluZGV4T2YoXCJkcC1cIik7Zj1nPDA/XCJcIjpnPT0wP1wicGFydG5lci1cIitmOmYuaW5kZXhPZihcInBhcnRuZXItZHAtXCIpPT0wfHxmLmluZGV4T2YoXCJjYS1kcC1cIik9PTA/XCJwYXJ0bmVyLVwiK2Yuc3Vic3RyKGcpOlwiXCI7ZC5jbGllbnQ9ZjtlLnNlYXJjaD09XCIxXCImJihkLnVzZXJfc2VhcmNoPSEwKTtlLnF1ZXJ5JiYoZC5xdWVyeT1lLnF1ZXJ5KX1kLmFkdWx0PVxuISFrYyhhLFwicy5hRFVMVFwiKTtrYyhhLFwicy5uUlwiKSYmKGQubmVlZHNyZXZpZXc9ITApO2tjKGEsXCJzLmlTSVwiKSYmKGQuaW52YWxpZF9zdHlsZV9pZD0hMCk7dGhpcy5PLmNhZlJlcXVlc3RBY2NlcHRlZD0hYyYmIWQubmVlZHNyZXZpZXc7dGhpcy5PLmNhZlN0YXR1cz1kO3RyeXtiLm9wdGlvbnMucGFnZUxvYWRlZENhbGxiYWNrKHRoaXMuTy5jYWZSZXF1ZXN0QWNjZXB0ZWQsZCl9Y2F0Y2goaCl7fX19O1xubi5VYz1mdW5jdGlvbihhKXtpZighdGhpcy5oYil7dGhpcy5oYj0hMDtpZih4KFwiX2VuYWJsZVVuaWZpZWRNdWRza2lwcGVySWZyYW1lXCIpKXt2YXIgYj10aGlzLm9wdGlvbnMuY29udGFpbmVyLGM9dGhpcy5vcHRpb25zLm5vQWRMb2FkZWRDYWxsYmFjayxkPXRoaXMub3B0aW9ucy5hZExvYWRlZENhbGxiYWNrO2lmKGMpdHJ5e2MoYiwhMSx2b2lkIDAsdGhpcy5PKX1jYXRjaChlKXt9aWYoZCl0cnl7ZChiLCExLHZvaWQgMCx0aGlzLk8pfWNhdGNoKGUpe319ZWxzZSBaaSh0aGlzLkZhLCExLDAsdGhpcy5PKTtrYyhhLFwic2JuXCIpJiYoYj10aGlzLkcoKSxjPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGIpLHRoaXMuZGQ9RGF0ZS5ub3coKSx0aGlzLlJiKGMsYixhLCExKSl9fTtcbm4ubGQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz1NZihPZiksZD1NZihRZik7L01vYmlsZS9pLnRlc3QoS2YpJiYoYz4wfHxkPjApPyhhLnN0eWxlLndpZHRoPVwiMXB4XCIsYS5zdHlsZS5taW5XaWR0aD1cIjEwMCVcIixhLnJlbW92ZUF0dHJpYnV0ZShcIndpZHRoXCIpKTphLndpZHRoPVwiMTAwJVwiO2Euc3R5bGUudmlzaWJpbGl0eT1iPjA/XCJ2aXNpYmxlXCI6XCJoaWRkZW5cIjthLnN0eWxlLmhlaWdodD1iK1wicHhcIjt0aGlzLmNvbnRhaW5lci5zdHlsZS5oZWlnaHQ9XCJhdXRvXCJ9O24ua2Q9ZnVuY3Rpb24oYSl7dGhpcy5jb250YWluZXIuc3R5bGUud2lkdGg9YStcInB4XCI7dmFyIGI9TWYoT2YpLGM9TWYoUWYpO2lmKGI+MHx8Yz4wKWlmKGI9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5HKCkpKWIuc3R5bGUud2lkdGg9YStcInB4XCIsYi5yZW1vdmVBdHRyaWJ1dGUoXCJ3aWR0aFwiKX07XG5mdW5jdGlvbiBDaihhKXt2YXIgYj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChhLkcoKSk7dmFyIGM9Yi5nZXRBdHRyaWJ1dGUoXCJkYXRhLWFkLXNyY1wiKTtjPWNiKGMpO2Iuc3JjPWRiKGMpLnRvU3RyaW5nKCk7YS54YT1EYXRlLm5vdygpO2M9dShhLlUpO2Zvcih2YXIgZD1jLm5leHQoKTshZC5kb25lO2Q9Yy5uZXh0KCkpZC52YWx1ZS54YT1hLnhhO2IucmVtb3ZlQXR0cmlidXRlKFwiZGF0YS1hZC1zcmNcIil9XG5mdW5jdGlvbiBEaihhKXtpZih6ZCgpJiYhYS5MKXt2YXIgYj0nW2RhdGEtb2JzZXJ2ZT1cIicrYS5vcHRpb25zLm1hc3Rlck51bWJlcisnXCJdJyxjPXFqKGEpO2M9eChcIl9lbmFibGVMTElETVwiKXx8eChcIl9lbmFibGVMTElETVJTT25seVwiKSYmYztmb3IodmFyIGQ9dShkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiaWZyYW1lXCIrYikpLGU9ZC5uZXh0KCk7IWUuZG9uZTtlPWQubmV4dCgpKWlmKGU9ZS52YWx1ZSxlLm9mZnNldFBhcmVudD09bnVsbHx8QWQoZSxjPzFFMzowKSl7Q2ooYSk7cmV0dXJufXZhciBmPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJpZnJhbWVcIitiKSxnPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihmdW5jdGlvbihoKXtpZihoLmZpbmQoZnVuY3Rpb24obCl7cmV0dXJuIGwuaW50ZXJzZWN0aW9uUmF0aW8+MH0pKXtDaihhKTtoPXUoZik7Zm9yKHZhciBrPWgubmV4dCgpOyFrLmRvbmU7az1oLm5leHQoKSlnLnVub2JzZXJ2ZShrLnZhbHVlKX19LHtyb290TWFyZ2luOlwiMHB4IDBweCAxMDAwcHggMHB4XCIsXG50aHJlc2hvbGQ6MH0pO2I9dShmKTtmb3IoYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpYz1jLnZhbHVlLGcub2JzZXJ2ZShjKSxjLnNldEF0dHJpYnV0ZShcImRhdGEtbGxlXCIsXCIxXCIpfX1uLkJiPWZ1bmN0aW9uKGEpe3JldHVybiBBZChhLDAsLjMpfTtcbm4uUmI9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9dGhpcyxmPWlkKGEpLGc9e3RvcDpmLnksbGVmdDpmLngsaGVpZ2h0OmEub2Zmc2V0SGVpZ2h0LHdpZHRoOmEub2Zmc2V0V2lkdGgsYmI6dGhpcy51ZC5qb2luKFwiLFwiKSxGZTpiLGVmOmpjKGMsXCJlYXdwXCIpLE1lOjY4ODE2MDUwNix3ZzphLmhhc0F0dHJpYnV0ZShcImRhdGEtbGxlXCIpLEJmOnRoaXMuQmIoYSksc2Y6dGhpcy5vcHRpb25zLmNsaWNrdHJhY2tVcmwhPW51bGx9O2lmKGI9RWoodGhpcyxjKSlnLklmPWI7aWYoZClpZihPYih0aGlzLlIsXCJic1wiLGcpLGtjKGMsXCJ1c2VPYnNlcnZlckZvclZpc2liaWxpdHlEZXRlY3Rpb25cIikpe3ZhciBoPW5ldyBJbnRlcnNlY3Rpb25PYnNlcnZlcihmdW5jdGlvbigpe09iKGUuUixcImJ2XCIsZyk7aC51bm9ic2VydmUoYSl9LHt0aHJlc2hvbGQ6LjN9KTtoLm9ic2VydmUoYSl9ZWxzZXt2YXIgaz1udWxsO2s9c2V0SW50ZXJ2YWwoQihmdW5jdGlvbigpe2UuQmIoYSkmJihPYihlLlIsXCJidlwiLGcpLFxuY2xlYXJJbnRlcnZhbChrKSl9LFwic1BJVlwiKSw1MDApfWVsc2UgT2IodGhpcy5SLFwiYm5cIixnKX07ZnVuY3Rpb24gRWooYSxiKXtpZihiPWpjKGIsXCJpcnRcIikpe3ZhciBjPWIuc3BsaXQoXCJ8XCIpO2I9cGFyc2VJbnQoY1swXSwxMCk7Yz1wYXJzZUludChjWzFdLDEwKTt2YXIgZD1hLkFiLWEuVGYsZT1hLnhhLWEuQWI7YS5MJiYoZT1NYXRoLm1heCgwLGUpKTtyZXR1cm5bZCxlLGItYS54YSxjLWIsYS5kZC1jXS5qb2luKFwifFwiKX1yZXR1cm4gbnVsbH1cbm4uZWQ9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLkcoKSxkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGMpO2lmKGQpe3ZhciBlPWEuZnJhbWVIZWlnaHQ7dGhpcy51ZD1hLmJiO3RoaXMubGQoZCxlKTtpZighdGhpcy5oYiYmZT4wKXt0aGlzLmRkPURhdGUubm93KCk7dGhpcy5CZD10aGlzLmhiPSEwO3RoaXMucWQoYik7dmFyIGY7YT0oZj1rYyhiLGMrXCIuZVZcIikpIT1udWxsP2Y6dm9pZCAwO2MrPVwiLnB0cFwiO2lmKGI9Yi5CLmhhc093blByb3BlcnR5KGMpP2IuQltjXS52YWx1ZTpudWxsKXRoaXMuTy50ZXJtUG9zaXRpb25zPWI7aWYoeChcIl9lbmFibGVVbmlmaWVkTXVkc2tpcHBlcklmcmFtZVwiKSl7aWYoYj10aGlzLm9wdGlvbnMuYWRMb2FkZWRDYWxsYmFjayl7Yz10aGlzLm9wdGlvbnMuY29udGFpbmVyO3RyeXtiKGMsITAsYSx0aGlzLk8pfWNhdGNoKGcpe319fWVsc2UgYj0wLGE9PT0hMD9iPTI6YT09PSExJiYoYj0xKSxaaSh0aGlzLkZhLCEwLGIsdGhpcy5PKX19fTtcbm4udWI9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLm9wdGlvbnMuY29udGFpbmVyO3JldHVybiB0eXBlb2YgYT09XCJzdHJpbmdcIj8oYT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChhKSwhIWEpOmEgaW5zdGFuY2VvZiBOb2RlPyEwOiExfTtuLlRiPWZ1bmN0aW9uKGEpe3RoaXMuY29udGFpbmVyPXR5cGVvZiBhPT1cInN0cmluZ1wiP2RvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpOmF9O24uRWE9ZnVuY3Rpb24oYSl7YS5udW1iZXI9YS5udW1iZXJ8fGEubWF4VG9wfHxhLm1pblRvcHx8MTA7ZGVsZXRlIGEubWluVG9wO2RlbGV0ZSBhLm1heFRvcDthLmhhc093blByb3BlcnR5KFwicmVzdWx0c1BhZ2VCYXNlVXJsXCIpJiYoYS5yZXN1bHRzUGFnZUJhc2VVcmw9RmooYS5yZXN1bHRzUGFnZUJhc2VVcmwpKTt2YXIgYj1hLnJlbGF0ZWRTZWFyY2hUYXJnZXRpbmc7YiBpbiB0ZCYmKGEucnNfdHQ9dGRbYl0pfTtcbmZ1bmN0aW9uIGxqKGEpe2lmKCFhLnF1ZXJ5JiYhYS5hZmRUb2tlbil7dmFyIGI9eWQod2luZG93LmxvY2F0aW9uLmhyZWYpLGM9Yi5xdWVyeTtiPWIuYWZkVG9rZW47YyYmYiYmKGEucXVlcnk9YyxhLmFmZFRva2VuPWIpfWM9eGQod2luZG93LmxvY2F0aW9uLmhyZWYsXCJwY3NhXCIpO2MhPW51bGwmJmEucGVyc29uYWxpemVkQWRzPT1udWxsJiYoYS5wZXJzb25hbGl6ZWRBZHM9Yyl9dmFyIG9qPUIoZnVuY3Rpb24oYSxiKXt2YXIgYz1iLldiO2E9Yi5nLkgoYSk7cmV0dXJuIGEhPW51bGwmJnVqKGEpP0dqLmhhc093blByb3BlcnR5KGMpP2E/Yy5jaGFyQXQoMCkrYy5jaGFyQXQoMSkudG9VcHBlckNhc2UoKTpjOmMrYTpcIlwifSxcImdQRk9cIik7ZnVuY3Rpb24gbWooYSl7dHJ5e3ZhciBiPXBhcnNlSW50KGEsMTApO3JldHVybiFpc05hTihiKSYmYj49MD9iOm51bGx9Y2F0Y2goYyl7cmV0dXJuIG51bGx9fVxuZnVuY3Rpb24gdWooYSl7YT1wYXJzZUludChhLDEwKTtyZXR1cm4haXNOYU4oYSkmJmE+PTB9XG52YXIgbmo9QihmdW5jdGlvbihhKXtmb3IodmFyIGI9W1wiZm9udFNpemVUaXRsZVwiLFwiZm9udFNpemVBdHRyaWJ1dGlvblwiXSxjPTA7YzxiLmxlbmd0aDtjKyspe3ZhciBkPWJbY107aWYoYVtkXSl7dmFyIGU9dHlwZW9mIGFbZF09PVwic3RyaW5nXCI/cGFyc2VJbnQoYVtkXS5yZXBsYWNlKFwicHhcIixcIlwiKSwxMCk6YVtkXTtlPWU+emM/emM6ZTtlPWU8MTA/MTA6ZTthW2RdPWUrXCJweFwifX1yZXR1cm4gYX0sXCJ2RlNcIiksSGo9L15cXC97Myx9LyxGaj1CKGZ1bmN0aW9uKGEpe3JldHVybiBhJiZhLnN0YXJ0c1dpdGgoXCIvL1wiKT9kb2N1bWVudC5sb2NhdGlvbi5wcm90b2NvbCthLnJlcGxhY2UoSGosXCIvL1wiKTphfSxcInJSUFwiKSxyaj1CKGZ1bmN0aW9uKGEpe2E9YS5mZXhwfHxcIlwiO3JldHVybiBhLmluY2x1ZGVzKFwiMTczMDAwMDFcIik/MTphLmluY2x1ZGVzKFwiMTczMDAwMDJcIik/MjowfSxcImdQUFZcIiksWj17fSxzaj0oWi5hZFBhZ2U9XCJhZHBhZ2VcIixaLmFkcGFnZT1cImFkcGFnZVwiLFouYWRzPVwiYWRcIixcblouYWRzYWZlPVwiYWRzYWZlXCIsWi5hZHN0eWxlPVwiYWRzdHlsZVwiLFouYWR0ZXN0PVwiYWR0ZXN0XCIsWi5hZmRUb2tlbj1cImFmZHRcIixaLmFmc2V4cD1cImFmc2V4cFwiLFouYWxsd2NhbGxhZD1cImFsbHdjYWxsYWRcIixaLmJncmVzcG9uc2U9XCJiZ3Jlc3BvbnNlXCIsWi5jaGFubmVsPVwiY2hhbm5lbFwiLFouY2hhdGJvdFJlc3BvbnNlPVwiY2hhdGJvdFJlc3BvbnNlXCIsWi5jaGF0Ym90VXNlclByb21wdD1cImNoYXRib3RVc2VyUHJvbXB0XCIsWi5jb250PVwiY29udFwiLFouY3JlZj1cImNyZWZcIixaLmN4PVwiY3hcIixaLmRlYj1cImRlYlwiLFouZGVidWc9XCJkZWJ1Z1wiLFouZG9tYWluTmFtZT1cImRvbWFpbl9uYW1lXCIsWi5lPVwiZVwiLFouZXhwZmxhZ3M9XCJleHBmbGFnc1wiLFouZmFrZWFkcz1cImZha2VhZHNcIixaLmZjYXA9XCJmY2FwXCIsWi5mZXhwPVwiZmV4cFwiLFouZm9yY2VFeD1cImV4cGlkXCIsWi5mb3JjZUdkcHI9XCJmb3JjZUdkcHJcIixaLmZvcm1hdD1cImZvcm1hdFwiLFouZ2NzPVwiZ2NzXCIsWi5nY3NlX25jPVwiZ2NzZV9uY1wiLFxuWi5nbD1cImdsXCIsWi5nbHA9XCJnbHBcIixaLmdtPVwiZ21cIixaLmdyPVwiZ3JcIixaLmhsPVwiaGxcIixaLmhvc3RDaGFubmVsPVwiaGNoYW5uZWxcIixaLmhvc3RQdWJJZD1cImhjbGllbnRcIixaLmllPVwiaWVcIixaLmlnbm9yZWRQYWdlUGFyYW1zPVwiaXBwXCIsWi5pc0RhcmtNb2RlPVwiaXNEYXJrTW9kZVwiLFouanNTcmM9XCJjc2FfanNfc3JjXCIsWi5sYW5ndWFnZUNvZGU9XCJobFwiLFoubWF4VGVybUxlbmd0aD1cIm1heF9yYWRsaW5rX2xlblwiLFoubXM9XCJtc1wiLFoubm9jYWNoZT1cIm5vY2FjaGVcIixaLm51bT1cIm51bVwiLFoubnVtUmVwZWF0ZWQ9XCJhZHJlcFwiLFoub2U9XCJvZVwiLFoub3V0cHV0PVwib3V0cHV0XCIsWi5wcmVsb2FkPVwicHJlbG9hZFwiLFoucHJpY2VDdXJyZW5jeT1cInBmY3JuY3lcIixaLnByaWNlTWF4PVwicGZtYXhcIixaLnByaWNlTWluPVwicGZtaW5cIixaLnB1YklkPVwiY2xpZW50XCIsWi5xdWVyeT1cInFcIixaLnF1ZXJ5Q29udGV4dD1cInFyeV9jdHh0XCIsWi5xdWVyeUxpbms9XCJxcnlfbG5rXCIsWi5yZWZlcmVyPVwicmVmZXJlclwiLFxuWi5yb2xlPVwiclwiLFoucm93a2V5VjI9XCJyb3drZXlWMlwiLFoucnNfdHQ9XCJyc190dFwiLFoucnVybD1cInJ1cmxcIixaLnNhZmU9XCJzYWZlXCIsWi5zYnNpZ25hbHM9XCJzYnNpZ25hbHNcIixaLnNvdXJjZT1cInNvdXJjZVwiLFouc291cmNlX2lwPVwic291cmNlX2lwXCIsWi5zdHlsZUlkPVwicHNpZFwiLFoudGV4dENvbG9yUGFsZXR0ZT1cInRjcGFsXCIsWi50aGVtZT1cInRoZW1lXCIsWi50eXBlPVwidHlwZVwiLFoudWlkZWI9XCJ1aWRlYlwiLFoudXNlckFnZW50PVwidXNlcmFnZW50XCIsWi51dWxkPVwidXVsZFwiLFoudj1cInZcIixaLmFkZmlsaWF0ZVdwPVwiYWRmd3BcIixaLmNwcD1cImNwcFwiLFouaG90c3dhcHM9XCJob3Rzd2Fwc1wiLFoucmVzdWx0c1BhZ2VCYXNlVXJsPVwicnBidVwiLFoucmVzdWx0c1BhZ2VRdWVyeVBhcmFtPVwicnBxcFwiLFoucGVyc29uYWxpemVkQWRzPVwicGNzYVwiLFouc2hvcHBpbmdBZHNJbkNhcm91c2VsPVwicGxhX2Nhcm91c2VsXCIsWi5hdHRtYXM9XCJhdHRtYXNcIixaLmNtcFNka0lkPVwiaWFiX2NtcFNka0lkXCIsXG5aLmdkcHJBcHBsaWVzSW5HcHBTdHJpbmc9XCJpYWJfZ2RwckFwcGxpZXNJbkdwcFN0cmluZ1wiLFouZ2RwckFwcGxpZXM9XCJpYWJfZ2RwckFwcGxpZXNcIixaLnRjZkluR3BwU3RyaW5nPVwiaWFiX3RjZkluR3BwU3RyaW5nXCIsWi50Y1N0cmluZz1cImlhYl90Y1N0cmluZ1wiLFouc2Nfc3RhdHVzPVwic2Nfc3RhdHVzXCIsWi5zY3Q9XCJzY3RcIixaLml2dD1cIml2dFwiLFoudWlPcHRpbWl6ZT1cInVpb3B0XCIsWi51aV9vcHRpbWl6ZT1cInVpb3B0XCIsWi5kb21haW5SZWdpc3RyYW50PVwic3dwXCIsWi5kb21haW5TZXNzaW9uVG9rZW49XCJhZmR0XCIsWi5rdz1cImt3XCIsWi50ZXJtcz1cInRlcm1zXCIsWiksR2o9e2hjOjF9O249VC5wcm90b3R5cGU7bi5tYz16KFQucHJvdG90eXBlLm1jLFwiY0FBXCIpO24ucGM9eihULnByb3RvdHlwZS5wYyxcImNGQU1cIik7bi5aPXooVC5wcm90b3R5cGUuWixcImNGQVwiKTtuLnNkPXooVC5wcm90b3R5cGUuc2QsXCJ2QVNET1wiKTtuLldjPXooVC5wcm90b3R5cGUuV2MsXCJvVFBQXCIpO1xubi5EYT16KFQucHJvdG90eXBlLkRhLFwib1RCUFwiKTtuLm9jPXooVC5wcm90b3R5cGUub2MsXCJjQ1BcIik7bi5yYz16KFQucHJvdG90eXBlLnJjLFwiY1VJUFwiKTtuLnVjPXooVC5wcm90b3R5cGUudWMsXCJjVVwiKTtuLmRjPXooVC5wcm90b3R5cGUuZGMsXCJhT1RVXCIpO24uRz16KFQucHJvdG90eXBlLkcsXCJnRk5cIik7bi5KYz16KFQucHJvdG90eXBlLkpjLFwiZ0ZOQU9BSlwiKTtuLkhjPXooVC5wcm90b3R5cGUuSGMsXCJnQUlcIik7bi5pYz16KFQucHJvdG90eXBlLmljLFwiY09cIik7bi5MYz16KFQucHJvdG90eXBlLkxjLFwiaUFJXCIpO24uWGM9eihULnByb3RvdHlwZS5YYyxcInBNXCIpO24uTWM9eihULnByb3RvdHlwZS5NYyxcImlcIik7bi5sYj16KFQucHJvdG90eXBlLmxiLFwiY0lcIik7bi5IYj16KFQucHJvdG90eXBlLkhiLFwibUFcIik7bi5xZD16KFQucHJvdG90eXBlLnFkLFwidFNQXCIpO24uTmM9eihULnByb3RvdHlwZS5OYyxcImlGU1wiKTtuLlVjPXooVC5wcm90b3R5cGUuVWMsXCJuTkFcIik7XG5uLmxkPXooVC5wcm90b3R5cGUubGQsXCJzSUhcIik7bi5rZD16KFQucHJvdG90eXBlLmtkLFwic0NXXCIpO24uUmI9eihULnByb3RvdHlwZS5SYixcInNQXCIpO24uZWQ9eihULnByb3RvdHlwZS5lZCxcInJJU1wiKTtuLnViPXooVC5wcm90b3R5cGUudWIsXCJkQ0VcIik7bi5UYj16KFQucHJvdG90eXBlLlRiLFwic0NcIik7bi5FYT16KFQucHJvdG90eXBlLkVhLFwiY1ZBU0RPXCIpO24uQmI9eihULnByb3RvdHlwZS5CYixcImlJVlwiKTtuLlZjPXooVC5wcm90b3R5cGUuVmMsXCJwTENcIik7bGo9eihsaixcImNWQVNEUE9cIik7ZnVuY3Rpb24gSWooKXt9cWEoSWosWGkpO0lqLnByb3RvdHlwZS5LYz1mdW5jdGlvbigpe3JldHVyblwiYWZkX2Fkc1wifTtJai5wcm90b3R5cGUuU2M9ZnVuY3Rpb24oKXtyZXR1cm4hMH07ZnVuY3Rpb24gSmooKXt9cWEoSmosWGkpO0pqLnByb3RvdHlwZS54Yj1mdW5jdGlvbihhKXtyZXR1cm4geChcIl9hZnNSc0Nvb2tpZWxlc3NcIikmJmEhPW51bGwmJmEuaW5kZXhPZihcImRwLVwiKT09PS0xP1wiaHR0cHM6Ly9zeW5kaWNhdGVkc2VhcmNoLmdvb2dcIjpGYigpfTtKai5wcm90b3R5cGUuS2M9ZnVuY3Rpb24oKXtyZXR1cm5cImFmZF9hZHNcIn07SmoucHJvdG90eXBlLlNjPWZ1bmN0aW9uKCl7cmV0dXJuITB9O2Z1bmN0aW9uIEtqKCl7fXFhKEtqLFhpKTtLai5wcm90b3R5cGUuUGQ9ZnVuY3Rpb24oYSl7YT10aGlzLnhiKGEpLnJlcGxhY2UoXCJ3d3cuZ29vZ2xlXCIsXCJjc2UuZ29vZ2xlXCIpO3JldHVybiBuZXcgSGIoYStcIi9jc2VfdjIvYWRzXCIpfTtLai5wcm90b3R5cGUuS2M9ZnVuY3Rpb24oKXtyZXR1cm5cInVkc19hZHNfb25seVwifTtmdW5jdGlvbiBMaihhLGIsYyxkLGUsZixnLGgsayxsKXtsPWw9PT12b2lkIDA/W106bDtULmNhbGwodGhpcyxhLGIsYyxkLGUsZixnLGgsaz09PXZvaWQgMD8xOmssbCl9cWEoTGosVCk7TGoucHJvdG90eXBlLlo9ZnVuY3Rpb24oYSl7dmFyIGI9YS5yZWxhdGVkU2VhcmNoZXM7Ynx8Yj09PTB8fChiPWEubnVtYmVyKXx8Yj09PTB8fChiPTEwKTtyZXR1cm5cInJcIitifTtMai5wcm90b3R5cGUuWj16KExqLnByb3RvdHlwZS5aLFwiY0ZBX1JTXCIpO2Z1bmN0aW9uIE1qKGEsYixjLGQsZSxmLGcsaCxrLGwpe2w9bD09PXZvaWQgMD9bXTpsO1QuY2FsbCh0aGlzLGEsYixjLGQsZSxmLGcsaCxrPT09dm9pZCAwPzE6ayxsKX1xYShNaixUKTtNai5wcm90b3R5cGUuWj1mdW5jdGlvbigpe3JldHVyblwic1wifTtNai5wcm90b3R5cGUuRWE9ZnVuY3Rpb24oYSl7VC5wcm90b3R5cGUuRWEuY2FsbCh0aGlzLGEpO2EuY29sb3JCYWNrZ3JvdW5kfHwoYS5jb2xvckJhY2tncm91bmQ9XCJ0cmFuc3BhcmVudFwiKX07dmFyIHRqPUIoZnVuY3Rpb24oYSxiLGMsZCxlLGYsZyxoLGspe2Z1bmN0aW9uIGwoKXt9az1rPT09dm9pZCAwP1tdOms7Yi5yZWxhdGVkU2VhcmNoZXM/Yi50eXBlPVwicmVsYXRlZHNlYXJjaFwiOmIudHlwZXx8KGIudHlwZT1cImFkc1wiKTt2YXIgbT1uZXcgSWoscD1udWxsO3N3aXRjaChiLnR5cGUpe2Nhc2UgXCJyZWxhdGVkc2VhcmNoXCI6bD1MajtwPW5ldyBKajticmVhaztjYXNlIFwiYWRzXCI6Y2FzZSBcInRleHRhZHNcIjpiLnR5cGU9XCJhZHNcIjtsPVQ7cD1iLmdjc2M/bmV3IEtqOm07YnJlYWs7Y2FzZSBcInNlYXJjaGJveFwiOmw9TWo7cD1tO3goXCJfYWZzUnNDb29raWVsZXNzXCIpJiYocD1uZXcgSmopO2JyZWFrO2RlZmF1bHQ6dGhyb3cgWWIoXCJpbnZhbGlkIGJsb2NrIHR5cGU6IFwiK2IudHlwZSk7fXJldHVybiBuZXcgbChhLGIscCxjLGQsZSxmLGcsaD09PXZvaWQgMD8xOmgsayl9LFwibkFCXCIpO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO2Z1bmN0aW9uIE5qKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD8hMTpkO2EuZ29vZ2xlX2ltYWdlX3JlcXVlc3RzfHwoYS5nb29nbGVfaW1hZ2VfcmVxdWVzdHM9W10pO3ZhciBlPU9nKGEuZG9jdW1lbnQpO2lmKGMpe3ZhciBmPWZ1bmN0aW9uKCl7aWYoYyl7dmFyIGc9YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHMsaD1vYihnLGUpO2g+PTAmJkFycmF5LnByb3RvdHlwZS5zcGxpY2UuY2FsbChnLGgsMSl9TGcoZSxcImxvYWRcIixmKTtMZyhlLFwiZXJyb3JcIixmKX07S2coZSxcImxvYWRcIixmKTtLZyhlLFwiZXJyb3JcIixmKX1kJiYoZS5hdHRyaWJ1dGlvblNyYz1cIlwiKTtlLnNyYz1iO2EuZ29vZ2xlX2ltYWdlX3JlcXVlc3RzLnB1c2goZSl9XG5mdW5jdGlvbiBPaihhKXt2YXIgYj1iPT09dm9pZCAwPyExOmI7dmFyIGM9XCJodHRwczovL3BhZ2VhZDIuZ29vZ2xlc3luZGljYXRpb24uY29tL3BhZ2VhZC9nZW5fMjA0P2lkPXRjZmVcIjtNZyhhLGZ1bmN0aW9uKGQsZSl7aWYoZHx8ZD09PTApYys9XCImXCIrZStcIj1cIitlbmNvZGVVUklDb21wb25lbnQoXCJcIitkKX0pO1BqKGMsYil9XG5mdW5jdGlvbiBQaihhLGIpe3ZhciBjPXdpbmRvdztiPWI9PT12b2lkIDA/ITE6Yjt2YXIgZD1kPT09dm9pZCAwPyExOmQ7Yy5mZXRjaD8oYj17a2VlcGFsaXZlOiEwLGNyZWRlbnRpYWxzOlwiaW5jbHVkZVwiLHJlZGlyZWN0OlwiZm9sbG93XCIsbWV0aG9kOlwiZ2V0XCIsbW9kZTpcIm5vLWNvcnNcIn0sZCYmKGIubW9kZT1cImNvcnNcIixcInNldEF0dHJpYnV0aW9uUmVwb3J0aW5nXCJpbiBYTUxIdHRwUmVxdWVzdC5wcm90b3R5cGU/Yi5hdHRyaWJ1dGlvblJlcG9ydGluZz17ZXZlbnRTb3VyY2VFbGlnaWJsZTpcInRydWVcIix0cmlnZ2VyRWxpZ2libGU6XCJmYWxzZVwifTpiLmhlYWRlcnM9e1wiQXR0cmlidXRpb24tUmVwb3J0aW5nLUVsaWdpYmxlXCI6XCJldmVudC1zb3VyY2VcIn0pLGMuZmV0Y2goYSxiKSk6TmooYyxhLGI9PT12b2lkIDA/ITE6YixkPT09dm9pZCAwPyExOmQpfTtmdW5jdGlvbiBRaihhKXthLmFkZHRsQ29uc2VudCE9PXZvaWQgMCYmdHlwZW9mIGEuYWRkdGxDb25zZW50IT09XCJzdHJpbmdcIiYmKGEuYWRkdGxDb25zZW50PXZvaWQgMCk7YS5nZHByQXBwbGllcyE9PXZvaWQgMCYmdHlwZW9mIGEuZ2RwckFwcGxpZXMhPT1cImJvb2xlYW5cIiYmKGEuZ2RwckFwcGxpZXM9dm9pZCAwKTtyZXR1cm4gYS50Y1N0cmluZyE9PXZvaWQgMCYmdHlwZW9mIGEudGNTdHJpbmchPT1cInN0cmluZ1wifHxhLmxpc3RlbmVySWQhPT12b2lkIDAmJnR5cGVvZiBhLmxpc3RlbmVySWQhPT1cIm51bWJlclwiPzI6YS5jbXBTdGF0dXMmJmEuY21wU3RhdHVzIT09XCJlcnJvclwiPzA6M31cbmZ1bmN0aW9uIFJqKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7amYuY2FsbCh0aGlzKTt0aGlzLmthPWE7dGhpcy5lYT1udWxsO3RoaXMuT2I9e307dGhpcy5JZT0wO3ZhciBjO3RoaXMuZ2U9KGM9Yi50aW1lb3V0TXMpIT1udWxsP2M6NTAwO3ZhciBkO3RoaXMuQ2Q9KGQ9Yi5XZykhPW51bGw/ZDohMTt0aGlzLnBhPW51bGx9cWEoUmosamYpO1JqLnByb3RvdHlwZS5UPWZ1bmN0aW9uKCl7dGhpcy5PYj17fTt0aGlzLnBhJiYoTGcodGhpcy5rYSxcIm1lc3NhZ2VcIix0aGlzLnBhKSxkZWxldGUgdGhpcy5wYSk7ZGVsZXRlIHRoaXMuT2I7ZGVsZXRlIHRoaXMua2E7ZGVsZXRlIHRoaXMuZWE7amYucHJvdG90eXBlLlQuY2FsbCh0aGlzKX07XG5Sai5wcm90b3R5cGUuYWRkRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXtmdW5jdGlvbiBiKGcsaCl7Y2xlYXJUaW1lb3V0KGYpO2c/KGQ9ZyxkLmludGVybmFsRXJyb3JTdGF0ZT1RaihkKSxkLmludGVybmFsQmxvY2tPbkVycm9ycz1jLkNkLGgmJmQuaW50ZXJuYWxFcnJvclN0YXRlPT09MHx8KGQudGNTdHJpbmc9XCJ0Y3VuYXZhaWxhYmxlXCIsaHx8KGQuaW50ZXJuYWxFcnJvclN0YXRlPTMpKSk6KGQudGNTdHJpbmc9XCJ0Y3VuYXZhaWxhYmxlXCIsZC5pbnRlcm5hbEVycm9yU3RhdGU9Myk7YShkKX12YXIgYz10aGlzLGQ9e2ludGVybmFsQmxvY2tPbkVycm9yczp0aGlzLkNkfSxlPUpnKGZ1bmN0aW9uKCl7cmV0dXJuIGEoZCl9KSxmPTA7dGhpcy5nZSE9PS0xJiYoZj1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZC50Y1N0cmluZz1cInRjdW5hdmFpbGFibGVcIjtkLmludGVybmFsRXJyb3JTdGF0ZT0xO2UoKX0sdGhpcy5nZSkpO3RyeXtTaih0aGlzLFwiYWRkRXZlbnRMaXN0ZW5lclwiLGIpfWNhdGNoKGcpe2QudGNTdHJpbmc9XG5cInRjdW5hdmFpbGFibGVcIixkLmludGVybmFsRXJyb3JTdGF0ZT0zLGYmJihjbGVhclRpbWVvdXQoZiksZj0wKSxlKCl9fTtSai5wcm90b3R5cGUucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXthJiZhLmxpc3RlbmVySWQmJlNqKHRoaXMsXCJyZW1vdmVFdmVudExpc3RlbmVyXCIsbnVsbCxhLmxpc3RlbmVySWQpfTtmdW5jdGlvbiBTaihhLGIsYyxkKXtjfHwoYz1mdW5jdGlvbigpe30pO2lmKHR5cGVvZiBhLmthLl9fdGNmYXBpPT09XCJmdW5jdGlvblwiKWE9YS5rYS5fX3RjZmFwaSxhKGIsMixjLGQpO2Vsc2UgaWYoYS53YigpKXtUaihhKTt2YXIgZT0rK2EuSWU7YS5PYltlXT1jO2EuZWEmJihjPXt9LGEuZWEucG9zdE1lc3NhZ2UoKGMuX190Y2ZhcGlDYWxsPXtjb21tYW5kOmIsdmVyc2lvbjoyLGNhbGxJZDplLHBhcmFtZXRlcjpkfSxjKSxcIipcIikpfWVsc2UgYyh7fSwhMSl9XG5Sai5wcm90b3R5cGUud2I9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5lYT90aGlzLmVhOnRoaXMuZWE9TmcodGhpcy5rYSxcIl9fdGNmYXBpTG9jYXRvclwiKX07ZnVuY3Rpb24gVGooYSl7YS5wYXx8KGEucGE9ZnVuY3Rpb24oYil7dHJ5e3ZhciBjPSh0eXBlb2YgYi5kYXRhPT09XCJzdHJpbmdcIj9KU09OLnBhcnNlKGIuZGF0YSk6Yi5kYXRhKS5fX3RjZmFwaVJldHVybjthLk9iW2MuY2FsbElkXShjLnJldHVyblZhbHVlLGMuc3VjY2Vzcyl9Y2F0Y2goZCl7fX0sS2coYS5rYSxcIm1lc3NhZ2VcIixhLnBhKSl9XG5mdW5jdGlvbiBVaihhKXtpZihhLmdkcHJBcHBsaWVzPT09ITEpcmV0dXJuITA7YS5pbnRlcm5hbEVycm9yU3RhdGU9PT12b2lkIDAmJihhLmludGVybmFsRXJyb3JTdGF0ZT1RaihhKSk7cmV0dXJuIGEuY21wU3RhdHVzPT09XCJlcnJvclwifHxhLmludGVybmFsRXJyb3JTdGF0ZSE9PTA/YS5pbnRlcm5hbEJsb2NrT25FcnJvcnM/KE9qKHtlOlN0cmluZyhhLmludGVybmFsRXJyb3JTdGF0ZSl9KSwhMSk6ITA6YS5jbXBTdGF0dXMhPT1cImxvYWRlZFwifHxhLmV2ZW50U3RhdHVzIT09XCJ0Y2xvYWRlZFwiJiZhLmV2ZW50U3RhdHVzIT09XCJ1c2VyYWN0aW9uY29tcGxldGVcIj8hMTohMH07ZnVuY3Rpb24gVmooYSxiKXtiPWIubGlzdGVuZXI7KGE9KDAsYS5fX2dwcCkoXCJhZGRFdmVudExpc3RlbmVyXCIsYikpJiZiKGEsITApfWZ1bmN0aW9uIFdqKGEsYil7KDAsYS5fX2dwcCkoXCJyZW1vdmVFdmVudExpc3RlbmVyXCIsYi5saXN0ZW5lcixiLmxpc3RlbmVySWQpfVxudmFyIFhqPXtRYzpmdW5jdGlvbihhKXtyZXR1cm4gYS5saXN0ZW5lcn0sSWI6ZnVuY3Rpb24oYSxiKXthPXt9O3JldHVybiBhLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDpcImFkZEV2ZW50TGlzdGVuZXJcIix2ZXJzaW9uOlwiMS4xXCJ9LGF9LFRhOmZ1bmN0aW9uKGEsYil7Yj1iLl9fZ3BwUmV0dXJuO2EoYi5yZXR1cm5WYWx1ZSxiLnN1Y2Nlc3MpfX0sWWo9e1FjOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxJYjpmdW5jdGlvbihhLGIpe3ZhciBjPXt9O3JldHVybiBjLl9fZ3BwQ2FsbD17Y2FsbElkOmIsY29tbWFuZDpcInJlbW92ZUV2ZW50TGlzdGVuZXJcIix2ZXJzaW9uOlwiMS4xXCIscGFyYW1ldGVyOmEubGlzdGVuZXJJZH0sY30sVGE6ZnVuY3Rpb24oYSxiKXtiPWIuX19ncHBSZXR1cm47dmFyIGM9Yi5yZXR1cm5WYWx1ZS5kYXRhO2E9PW51bGx8fGEoYyxiLnN1Y2Nlc3MpfX07XG5mdW5jdGlvbiBaaihhKXthPXR5cGVvZiBhLmRhdGE9PT1cInN0cmluZ1wiP0pTT04ucGFyc2UoYS5kYXRhKTphLmRhdGE7cmV0dXJue1ZkOmEsWGQ6YS5fX2dwcFJldHVybi5jYWxsSWR9fVxuZnVuY3Rpb24gYWsoYSxiKXt2YXIgYz1iPT09dm9pZCAwP3t9OmI7Yj1jLnRpbWVvdXRNcztjPWMuY21wSW50ZXJhY3Rpb25FdmVudFJlcG9ydGVyO2pmLmNhbGwodGhpcyk7dGhpcy5jYWxsZXI9bmV3IExpKGEsXCJfX2dwcExvY2F0b3JcIixmdW5jdGlvbihkKXtyZXR1cm4gdHlwZW9mIGQuX19ncHA9PT1cImZ1bmN0aW9uXCJ9LFpqKTt0aGlzLmNhbGxlci5YYS5zZXQoXCJhZGRFdmVudExpc3RlbmVyXCIsVmopO3RoaXMuY2FsbGVyLkhhLnNldChcImFkZEV2ZW50TGlzdGVuZXJcIixYaik7dGhpcy5jYWxsZXIuWGEuc2V0KFwicmVtb3ZlRXZlbnRMaXN0ZW5lclwiLFdqKTt0aGlzLmNhbGxlci5IYS5zZXQoXCJyZW1vdmVFdmVudExpc3RlbmVyXCIsWWopO3RoaXMudGltZW91dE1zPWIhPW51bGw/Yjo1MDA7dGhpcy5jbXBJbnRlcmFjdGlvbkV2ZW50UmVwb3J0ZXI9Y31xYShhayxqZik7YWsucHJvdG90eXBlLlQ9ZnVuY3Rpb24oKXt0aGlzLmNhbGxlci5kaXNwb3NlKCk7amYucHJvdG90eXBlLlQuY2FsbCh0aGlzKX07XG5hay5wcm90b3R5cGUud2I9ZnVuY3Rpb24oKXtyZXR1cm4gTWkodGhpcy5jYWxsZXIpfTtcbmFrLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1KZyhmdW5jdGlvbigpe2EoYmssITApfSksZD10aGlzLnRpbWVvdXRNcz09PS0xP3ZvaWQgMDpzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7YygpfSx0aGlzLnRpbWVvdXRNcyk7TmkodGhpcy5jYWxsZXIsXCJhZGRFdmVudExpc3RlbmVyXCIse2xpc3RlbmVyOmZ1bmN0aW9uKGUsZil7Y2xlYXJUaW1lb3V0KGQpO3RyeXt2YXIgZztpZigoKGc9ZS5waW5nRGF0YSk9PW51bGw/dm9pZCAwOmcuZ3BwVmVyc2lvbik9PT12b2lkIDB8fGUucGluZ0RhdGEuZ3BwVmVyc2lvbj09PVwiMVwifHxlLnBpbmdEYXRhLmdwcFZlcnNpb249PT1cIjEuMFwiKXtiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZS5saXN0ZW5lcklkKTt2YXIgaD17ZXZlbnROYW1lOlwic2lnbmFsU3RhdHVzXCIsZGF0YTpcInJlYWR5XCIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToxLGdwcFN0cmluZzpcIkdQUF9FUlJPUl9TVFJJTkdfSVNfREVQUkVDQVRFRF9TUEVDXCIsXG5hcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX19fWVsc2UgQXJyYXkuaXNBcnJheShlLnBpbmdEYXRhLmFwcGxpY2FibGVTZWN0aW9ucyk/aD1lOihiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZS5saXN0ZW5lcklkKSxoPXtldmVudE5hbWU6XCJzaWduYWxTdGF0dXNcIixkYXRhOlwicmVhZHlcIixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjIsZ3BwU3RyaW5nOlwiR1BQX0VSUk9SX1NUUklOR19FWFBFQ1RFRF9BUFBMSUNBVElPTl9TRUNUSU9OX0FSUkFZXCIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19fSk7YShoLGYpO3ZhciBrOyhrPWIuY21wSW50ZXJhY3Rpb25FdmVudFJlcG9ydGVyKT09bnVsbHx8ay5laCgpfWNhdGNoKGwpe2lmKGU9PW51bGw/MDplLmxpc3RlbmVySWQpdHJ5e2IucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLmxpc3RlbmVySWQpfWNhdGNoKG0pe2EoY2ssITApO3JldHVybn1hKGRrLCEwKX19fSl9O1xuYWsucHJvdG90eXBlLnJlbW92ZUV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7TmkodGhpcy5jYWxsZXIsXCJyZW1vdmVFdmVudExpc3RlbmVyXCIse2xpc3RlbmVyOmZ1bmN0aW9uKCl7fSxsaXN0ZW5lcklkOmF9KX07XG52YXIgZGs9e2V2ZW50TmFtZTpcInNpZ25hbFN0YXR1c1wiLGRhdGE6XCJyZWFkeVwiLHBpbmdEYXRhOntpbnRlcm5hbEVycm9yU3RhdGU6MixncHBTdHJpbmc6XCJHUFBfRVJST1JfU1RSSU5HX1VOQVZBSUxBQkxFXCIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9LGJrPXtldmVudE5hbWU6XCJzaWduYWxTdGF0dXNcIixkYXRhOlwicmVhZHlcIixwaW5nRGF0YTp7Z3BwU3RyaW5nOlwiR1BQX0VSUk9SX1NUUklOR19MSVNURU5FUl9SRUdJU1RSQVRJT05fVElNRU9VVFwiLGludGVybmFsRXJyb3JTdGF0ZToyLGFwcGxpY2FibGVTZWN0aW9uczpbLTFdfSxsaXN0ZW5lcklkOi0xfSxjaz17ZXZlbnROYW1lOlwic2lnbmFsU3RhdHVzXCIsZGF0YTpcInJlYWR5XCIscGluZ0RhdGE6e2dwcFN0cmluZzpcIkdQUF9FUlJPUl9TVFJJTkdfUkVNT1ZFX0VWRU5UX0xJU1RFTkVSX0VSUk9SXCIsaW50ZXJuYWxFcnJvclN0YXRlOjIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9O3ZhciBmaz1CKGZ1bmN0aW9uKGEpe2E9YT09PXZvaWQgMD8hMDphO3ZhciBiPW5ldyBhayh3aW5kb3cse3RpbWVvdXRNczotMX0pO2lmKCFNaShiLmNhbGxlcikpcmV0dXJuIG51bGw7dmFyIGM9S2QoKSxkPW51bGw7Yi5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKGYpe2YuZXZlbnROYW1lPT09XCJsaXN0ZW5lclJlZ2lzdGVyZWRcIiYmKGQ9Zi5saXN0ZW5lcklkKTtpZihmLnBpbmdEYXRhLmludGVybmFsRXJyb3JTdGF0ZT09PTF8fGYucGluZ0RhdGEuaW50ZXJuYWxFcnJvclN0YXRlPT09MiljLnJlc29sdmUobnVsbCk7ZWxzZXt2YXIgZzsoZz1mLnBpbmdEYXRhLnNpZ25hbFN0YXR1cz09PVwicmVhZHlcIil8fChnPWYucGluZ0RhdGEuYXBwbGljYWJsZVNlY3Rpb25zLGc9IWd8fGcubGVuZ3RoPT09MSYmZ1swXT09PS0xKTtpZihnKXt2YXIgaD1mLnBpbmdEYXRhLmdwcFN0cmluZyxrPWYucGluZ0RhdGEuYXBwbGljYWJsZVNlY3Rpb25zLmluZGV4T2YoMik7aD0oZz1rIT09LTEpP2guc3BsaXQoXCJ+XCIpW2srXG4xXTpcIlwiO2Y9Zi5waW5nRGF0YS5wYXJzZWRTZWN0aW9ucztrPSFnO2YmJmYuaGFzT3duUHJvcGVydHkoXCJ0Y2ZldXYyXCIpJiYoaz1mLnRjZmV1djIuUHVycG9zZUNvbnNlbnRzWzBdKTshayYmYXx8Yy5yZXNvbHZlKG5ldyBlayhoLGcpKX19fSk7dmFyIGU9bmV3IFByb21pc2UoZnVuY3Rpb24oZil7c2V0VGltZW91dChmdW5jdGlvbigpe2YobnVsbCl9LDFFNCl9KTtlPVByb21pc2UucmFjZShbYy5wcm9taXNlLGVdKTtlLnRoZW4oZnVuY3Rpb24oKXtkIT09bnVsbCYmYi5yZW1vdmVFdmVudExpc3RlbmVyKGQpfSk7cmV0dXJuIGV9LFwiZ2dhZFwiKTtmdW5jdGlvbiBlayhhLGIpe3RoaXMuWWE9YTt0aGlzLkthPWJ9O2Z1bmN0aW9uIGdrKGEpe2lmKCFVaihhKSlyZXR1cm4hMTtpZihhLmdkcHJBcHBsaWVzPT09ITF8fGEudGNTdHJpbmc9PT1cInRjdW5hdmFpbGFibGVcIilyZXR1cm4hMDt2YXIgYj1iPT09dm9pZCAwP1wiNzU1XCI6YjtiOntpZihhLnB1Ymxpc2hlciYmYS5wdWJsaXNoZXIucmVzdHJpY3Rpb25zKXt2YXIgYz1hLnB1Ymxpc2hlci5yZXN0cmljdGlvbnNbXCIxXCJdO2lmKGMhPT12b2lkIDApe2M9Y1tiPT09dm9pZCAwP1wiNzU1XCI6Yl07YnJlYWsgYn19Yz12b2lkIDB9Yz09PTA/Yj0hMTphLnB1cnBvc2UmJmEudmVuZG9yPyhjPWEudmVuZG9yLmNvbnNlbnRzLChiPSEoIWN8fCFjW2I9PT12b2lkIDA/XCI3NTVcIjpiXSkpJiZhLnB1cnBvc2VPbmVUcmVhdG1lbnQmJmEucHVibGlzaGVyQ0M9PT1cIkNIXCI/Yj0hMDpiJiYoYj1hLnB1cnBvc2UuY29uc2VudHMsYj0hKCFifHwhYltcIjFcIl0pKSk6Yj0hMDtyZXR1cm4gYj8hMDooY29uc29sZS53YXJuKFliKFwiVEMgc3RyaW5nIGxhY2tzIHB1cnBvc2UgMSBjb25zZW50IGZvciBHb29nbGUgKEdWTCBJRDogNzU1KS4gQ1NBIGFkcyB3aWxsIG5vdCBiZSByZXF1ZXN0ZWQgdW50aWwgY29uc2VudCBpcyBnaXZlbi4gVEMgc3RyaW5nOiBcIitcbmEudGNTdHJpbmcpKSwhMSl9XG52YXIgaGs9QihmdW5jdGlvbihhKXt2YXIgYj1uZXcgUmood2luZG93LHt0aW1lb3V0TXM6LTF9KTtpZih0eXBlb2YgYi5rYS5fX3RjZmFwaT09PVwiZnVuY3Rpb25cInx8Yi53YigpIT1udWxsKXt2YXIgYz1LZCgpLGQ9MDtkPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtkPTA7Y29uc29sZS53YXJuKFliKFwiTm8gcmVzcG9uc2UgcmVjZWl2ZWQgZnJvbSBDTVAgYWZ0ZXIgMTAgc2Vjb25kcy4gQ1NBIGFkcyBoYXZlIG5vdCBiZWVuIHJlcXVlc3RlZC5cIikpfSwxRTQpO2IuYWRkRXZlbnRMaXN0ZW5lcihmdW5jdGlvbihlKXtkJiYoY2xlYXJUaW1lb3V0KGQpLGQ9MCk7aWYoZ2soZSkpe2lmKGUuaW50ZXJuYWxFcnJvclN0YXRlIT09MCl7dmFyIGY9bmV3IExiKGEpO3N3aXRjaChlLmludGVybmFsRXJyb3JTdGF0ZSl7Y2FzZSAxOlJiKGYsXCJ0b1wiLEpTT04uc3RyaW5naWZ5KGUpKTtjb25zb2xlLndhcm4oWWIoXCJSZWFjaGVkIHRpbWVvdXQgYmVmb3JlIGEgcmVzcG9uc2Ugd2FzIHJlY2VpdmVkIGZyb20gQ01QLlwiKSk7YnJlYWs7XG5jYXNlIDI6UmIoZixcIml0XCIsSlNPTi5zdHJpbmdpZnkoZSkpO2NvbnNvbGUud2FybihZYihcIkludmFsaWQgdHlwZXMgaW4gcmVjZWl2ZWQgdGNEYXRhLlwiKSk7YnJlYWs7Y2FzZSAzOlJiKGYsXCJlclwiLEpTT04uc3RyaW5naWZ5KGUpKSxjb25zb2xlLndhcm4oWWIoXCJDTVAgcmV0dXJuZWQgZXJyb3Igc3RhdHVzLlwiKSl9fWIucmVtb3ZlRXZlbnRMaXN0ZW5lcihlKTtjLnJlc29sdmUoe3RjU3RyaW5nOmUudGNTdHJpbmcsZ2RwckFwcGxpZXM6ZS5nZHByQXBwbGllc30pfX0pO3JldHVybiBjLnByb21pc2V9cmV0dXJuIG51bGx9LFwiZ1RBRFwiKTt2YXIgaWs9aGEoW1wiaHR0cHM6Ly9wYXJ0bmVyLmdvb2dsZWFkc2VydmljZXMuY29tL2dhbXBhZC9jb29raWUuanNcIl0pO2Z1bmN0aW9uIGprKGEsYil7dmFyIGM9YS5jcmVhdGVFbGVtZW50KFwic2NyaXB0XCIpO21iKGMsYik7KGE9YS5nZXRFbGVtZW50c0J5VGFnTmFtZShcInNjcmlwdFwiKVswXSkmJmEucGFyZW50Tm9kZSYmYS5wYXJlbnROb2RlLmluc2VydEJlZm9yZShjLGEpfWZ1bmN0aW9uIGtrKGEsYixjLGQsZSl7dGhpcy5uYW1lPWE7dGhpcy52YWx1ZT1iO3RoaXMuRWM9Yzt0aGlzLnBhdGg9ZD09PXZvaWQgMD9udWxsOmQ7dGhpcy5kb21haW49ZT09PXZvaWQgMD9udWxsOmV9ZnVuY3Rpb24gbGsoYSl7dGhpcy5LPWE7dGhpcy5sYz0wO3RoaXMuYmU9bnVsbH1cbmZ1bmN0aW9uIG1rKGEsYil7aWYoIWIubmFtZXx8IWIudmFsdWV8fCFiLkVjKXRocm93XCJTZXR0aW5nIGEgY29va2llIG11c3QgaW5jbHVkZSBjb29raWUgbmFtZSBhbmQgdmFsdWUgYW5kIGV4cGlyYXRpb24uXCI7dmFyIGM9Yi5uYW1lK1wiPVwiK2IudmFsdWUsZD1cIlwiLGU9XCJcIixmPVwiXCI7Yi5wYXRoJiYoZD1cIjtwYXRoPVwiK2IucGF0aCk7dmFyIGc9Yi5kb21haW47aWYoZyl7YTppZih4KFwiX3VzZVNlcnZlclByb3ZpZGVkRG9tYWluXCIpKXtpZihlPUFiKFwic3NkbFwiLERiKCkpKWlmKGU9bmV3IFJlZ0V4cChcIihcIithdG9iKGUpLnJlcGxhY2UoLywvZyxcIil8KFwiKStcIilcIiksZy5tYXRjaChlKSl7ZT0hMTticmVhayBhfWU9ITB9ZWxzZSBlPSExO2U9XCI7ZG9tYWluPVwiKyhlP2c6YS5LLmxvY2F0aW9uLmhvc3RuYW1lKX1iLkVjJiYoZj1cIjtleHBpcmVzPVwiK2IuRWMpO2EuSy5kb2N1bWVudC5jb29raWU9YytmK2QrZX1cbmZ1bmN0aW9uIG5rKGEsYil7aWYoIWIpcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7Y29va2llOm51bGwsc3RhdHVzOjR9KTt2YXIgYz1iLl9jb29raWVzX1swXTtpZighYylyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtjb29raWU6bnVsbCxzdGF0dXM6NH0pO2I9Yy5fdmFsdWVfO2M9bmV3IGtrKFwiX19nc2FzXCIsYiwobmV3IERhdGUoYy5fZXhwaXJlc18qMUUzKSkudG9VVENTdHJpbmcoKSxjLl9wYXRoXyxjLl9kb21haW5fKTt0cnl7bWsoYSxjKX1jYXRjaChkKXtyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtjb29raWU6bnVsbCxzdGF0dXM6N30pfXJldHVybiBQcm9taXNlLnJlc29sdmUoe2Nvb2tpZTpiLHN0YXR1czozfSl9XG5mdW5jdGlvbiBvayhhKXtpZihhLmxjPT09MCl7YTp7dHJ5e3ZhciBiPW5ldyBEYXRlO2Iuc2V0VGltZShiLmdldFRpbWUoKSszNkU1KTttayhhLG5ldyBrayhcIkdvb2dsZUFkU2VydmluZ1Rlc3RcIixcIkdvb2RcIixiLnRvVVRDU3RyaW5nKCkpKX1jYXRjaChkKXtiPSExO2JyZWFrIGF9aWYoYj1wayhhLFwiR29vZ2xlQWRTZXJ2aW5nVGVzdFwiKT09PVwiR29vZFwiKXt2YXIgYz1uZXcga2soXCJHb29nbGVBZFNlcnZpbmdUZXN0XCIsXCJHb29kXCIsKG5ldyBEYXRlKDApKS50b1VUQ1N0cmluZygpKTt0cnl7bWsoYSxjKX1jYXRjaChkKXtiPSExfX19YS5sYz1iPzI6MX1yZXR1cm4gYS5sYz09PTJ9XG5mdW5jdGlvbiBwayhhLGIpe2lmKHR5cGVvZiBhLksuZG9jdW1lbnQuY29va2llPT09XCJzdHJpbmdcIil7dmFyIGM9bmV3IFJlZ0V4cChcIl5cXFxccypcIitiK1wiPSguKilcIik7aWYoYT1hLksuZG9jdW1lbnQuY29va2llLnNwbGl0KFwiO1wiKS5maW5kKGZ1bmN0aW9uKGQpe3JldHVybiBkLm1hdGNoKGMpIT1udWxsfSkpcmV0dXJuIGEubWF0Y2goYylbMV19fVxuZnVuY3Rpb24gcWsoYSxiKXtiPXtkb21haW46YS5LLmxvY2F0aW9uLmhvc3RuYW1lLGNsaWVudDpifHxcInVuZGVmaW5lZFwiLHByb2R1Y3Q6XCJTQVNcIixjYWxsYmFjazpcIl9fc2FzQ29va2llXCIsY29va2llX3R5cGVzOlwidjEsdjJcIn07aWYoYS5LIT1hLksucGFyZW50JiYhYi5kb21haW4pe3ZhciBjPWEuSy5wYXJlbnQmJmEuSy5wYXJlbnQubG9jYXRpb24mJmEuSy5wYXJlbnQubG9jYXRpb24uaG9zdG5hbWU7Yi5kb21haW49YS5LLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucyYmYS5LLmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2luc1swXXx8Y312YXIgZD1XYyhWYyhpayksbmV3IE1hcChPYmplY3QuZW50cmllcyhiKSkpO3JldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbihlKXthLksuX19zYXNDb29raWU9ZnVuY3Rpb24oZil7bmsoYSxhLmJlP2EuYmU6ZikudGhlbihmdW5jdGlvbihnKXtlKGcpfSl9O2prKGEuSy5kb2N1bWVudCxkKX0pfVxudmFyIHJrPUIoZnVuY3Rpb24oYSl7cmV0dXJuIGE9PW51bGw/bnVsbDpvayhhKT8oYT1wayhhLFwiX19nc2FzXCIpKT97Vjo2LGNvb2tpZTphfTpudWxsOntWOjAsY29va2llOm51bGx9fSxcInNhc0NrZUVyclwiKSxzaz1CKGZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBsayh3aW5kb3cpO3JldHVybiBvayhiKT9xayhiLGEpLnRoZW4oZnVuY3Rpb24oYyl7cmV0dXJue1Y6Yy5zdGF0dXMsY29va2llOmMuY29va2llfX0pOlByb21pc2UucmVzb2x2ZSh7VjowLGNvb2tpZTpudWxsfSl9LFwic2NFcnJcIik7dmFyIHRrPW51bGw7ZnVuY3Rpb24gdWsoYSxiLGMpe2E/KGIuY29va2llPWEuY29va2llLGIuVj1hLlYpOih0az1zayhjKSx0ay50aGVuKGZ1bmN0aW9uKGQpe2IuY29va2llPWQuY29va2llO2IuVj1kLlZ9KSl9XG52YXIgdms9QihmdW5jdGlvbihhLGIsYyxkLGUsZil7Yz1jPT09dm9pZCAwP3dpbmRvdzpjO2Q9ZD09PXZvaWQgMD8hMDpkO2I9ITE7dmFyIGc9ZD09PSExLGgsayxsPSgoaD1jLmxvY2F0aW9uKT09bnVsbD92b2lkIDA6KGs9aC5ob3N0KT09bnVsbD92b2lkIDA6ay5pbmRleE9mKFwic3RhcnRwYWdlLmNvbVwiKSkhPT0tMSxtPSEoZT09PXZvaWQgMD8wOmUpJiYhbDtoPUNiKFwiY2RsXCIsRGIoKSl8fChmPT09dm9pZCAwPyExOmYpO20mJmcmJiF4KFwiX2VuYWJsZUl2dENoYW5nZXNcIik/KGI9ITAsZj1lPW51bGwpOihlPWhrKGEpLGY9eChcIl9lbmFibGVHcHBBcGlcIil8fHgoXCJfdXNlR3BwQXBpXCIpP2ZrKHgoXCJfdXNlR3BwQXBpXCIpKTpudWxsKTt2YXIgcD17ZGE6dm9pZCAwLEZkOnZvaWQgMCx0Y1N0cmluZzp2b2lkIDAsZ2RwckFwcGxpZXM6dm9pZCAwLFlhOnZvaWQgMCxLYTp2b2lkIDAsVjp2b2lkIDAsY29va2llOnZvaWQgMCxHZjpkLGpnOmIsRGY6bSxoZzpofSxyPSExO20mJihnJiYocj1cbiEwKSxofHwocj0hMCkpO3ZhciB0PW51bGw7ciYmKHQ9cmsobmV3IGxrKGMpKSx1ayh0LHAsYSkpO2Q9W3goXCJfZGlzYWJsZVVzcEFwaVwiKT9udWxsOlZpKCksZSxmXTtyZXR1cm4gZC5ldmVyeShmdW5jdGlvbih2KXtyZXR1cm4gdj09bnVsbH0pP3A6TmQoZCkudGhlbihmdW5jdGlvbih2KXtmb3IodmFyIHc9MDt3PHYubGVuZ3RoO3crKyl7dmFyIEM9dlt3XTtpZihDKXN3aXRjaCh3KXtjYXNlIDA6cC5kYT1DLmRhO3AuRmQ9Qy5QYjticmVhaztjYXNlIDE6cC50Y1N0cmluZz1DLnRjU3RyaW5nO3AuZ2RwckFwcGxpZXM9Qy5nZHByQXBwbGllczticmVhaztjYXNlIDI6eChcIl9lbmFibGVHcHBBcGlcIikmJihwLllhPUMuWWEscC5LYT1DLkthKSx4KFwiX3VzZUdwcEFwaVwiKSYmKHAudGNTdHJpbmc9Qy5ZYSxwLmdkcHJBcHBsaWVzPUMuS2EpfX0hbXx8cnx8cC50Y1N0cmluZz09bnVsbCYmcC5nZHByQXBwbGllcz09bnVsbHx8KHQ9cmsobmV3IGxrKGMpKSx1ayh0LHAsYSkpO3JldHVybiBwfSkuY2F0Y2goZnVuY3Rpb24odil7QS5sb2codixcblwidXNkUHJFcnJcIil9KX0sXCJ1c2RFcnJcIik7ZnVuY3Rpb24gd2soYSl7Zm9yKHZhciBiPW5ldyB4ayxjPWFbMF0sZD0hMSxlPTE7ZTxhLmxlbmd0aDtlKyspe3ZhciBmPW5ldyB5ayxnPXZvaWQgMCxoPXZvaWQgMCxrPWYsbD1jLG09YVtlXTtmb3IoaCBpbiBtKW0uaGFzT3duUHJvcGVydHkoaCkmJihrLm9wdGlvbnNbaF09bVtoXSk7Zm9yKGcgaW4gbClsLmhhc093blByb3BlcnR5KGcpJiYoay5vcHRpb25zW2ddfHwoay5vcHRpb25zW2ddPWxbZ10pKTtkfHwoZi5vcHRpb25zLnR5cGV8fGYub3B0aW9ucy5yZWxhdGVkU2VhcmNoZXMpJiZmLm9wdGlvbnMudHlwZSE9PVwiYWRzXCImJmYub3B0aW9ucy50eXBlIT09XCJ0ZXh0YWRzXCJ8fChkPWYub3B0aW9ucy5maXJzdFRleHRBZEJsb2NrPSEwKTtiLlliLnB1c2goZil9Zm9yKHZhciBwIGluIGMpYy5oYXNPd25Qcm9wZXJ0eShwKSYmKGIuTmJbcF09Y1twXSk7cmV0dXJuIGJ9ZnVuY3Rpb24geWsoKXt0aGlzLm9wdGlvbnM9e319XG5mdW5jdGlvbiB4aygpe3RoaXMuTmI9e307dGhpcy5ZYj1bXX07dmFyIHprPU1iKCksQWs9XCJjbGlja3RyYWNrVXJsIGNvbnRhaW5lciBjaGF0Ym90VXNlclByb21wdCBjaGF0Ym90UmVzcG9uc2UgaWZyYW1lSGVpZ2h0Q2FsbGJhY2sgbGlua1RhcmdldCBpc0RhcmtNb2RlIHB1YklkIHF1ZXJ5IHNldHRpbmdzSWQgc3R5bGVJZCB3YWl0Rm9yQWRzXCIuc3BsaXQoXCIgXCIpO2Z1bmN0aW9uIEJrKGEpe2lmKGEubGVuZ3RoPDIpdGhyb3cgWWIoXCJObyBvcHRpb25zIHNwZWNpZmllZC5cIik7cmV0dXJuIGFbMV1pbnN0YW5jZW9mIEFycmF5P1thWzBdXS5jb25jYXQoYVsxXSk6QXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoYSwwKX1Caz16KEJrLFwicHBhdGFcIik7XG5mdW5jdGlvbiBDayhhKXt2YXIgYj0heWQod2luZG93LmxvY2F0aW9uLmhyZWYpLnF1ZXJ5LGM9Yj9cInJlbGF0ZWRzZWFyY2hcIjpcImFkc1wiO2I9Yj8xNTo1O2Zvcih2YXIgZD0hMSxlPTE7ZTxhLmxlbmd0aDsrK2UpaWYoYVtlXS50eXBlPT1jKXtkPSEwO2JyZWFrfWU9W107YT11KGEpO2Zvcih2YXIgZj1hLm5leHQoKTshZi5kb25lO2Y9YS5uZXh0KCkpZj1mLnZhbHVlLGYudHlwZT09XCJkeW5hbWljXCI/ZHx8KGYudHlwZT1jLGYubnVtYmVyfHwoZi5udW1iZXI9YiksZS5wdXNoKGYpKTplLnB1c2goZik7cmV0dXJuIGV9XG5mdW5jdGlvbiBEayhhKXtmdW5jdGlvbiBiKGQpe3N3aXRjaChkKXtjYXNlIFwicmVsYXRlZHNlYXJjaFwiOmNhc2UgXCJzZWFyY2hib3hcIjpyZXR1cm4gYz8xOjI7ZGVmYXVsdDpyZXR1cm4gYz8yOjF9fWlmKCF4KFwiX2Fmc1JzQ29va2llbGVzc1wiKXx8YS5sZW5ndGg8MylyZXR1cm4gYTt2YXIgYz0heWQod2luZG93LmxvY2F0aW9uLmhyZWYpLnF1ZXJ5O3JldHVybiBhLnNsaWNlKDAsMSkuY29uY2F0KGEuc2xpY2UoMSkuc29ydChmdW5jdGlvbihkLGUpe3JldHVybiBiKGQudHlwZSktYihlLnR5cGUpfSkpfVxuZnVuY3Rpb24gRWsoYSxiKXt2YXIgYz1iLmRhLGQ9Yi5GZCxlPWIudGNTdHJpbmcsZj1iLmdkcHJBcHBsaWVzLGc9Yi5ZYSxoPWIuS2Esaz1iLlY7Yj1iLmNvb2tpZTtjIT1udWxsJiYoYS5jcHA9Yyk7ZD09PSExJiYoYS5wZXJzb25hbGl6ZWRBZHM9ITEpO2UmJihhLnRjU3RyaW5nPWUpO2YhPW51bGwmJihhLmdkcHJBcHBsaWVzPWYpO2cmJihhLnRjZkluR3BwU3RyaW5nPWcpO2gmJihhLmdkcHJBcHBsaWVzSW5HcHBTdHJpbmc9aCk7ayE9bnVsbCYmKGEuc2Nfc3RhdHVzPWspO2ImJihhLnNjdD1iKX1Faz16KEVrLFwiYVVEVEFcIik7XG5mdW5jdGlvbiBGayhhLGIsYyxkKXtjPWM9PT12b2lkIDA/bnVsbDpjO3ZhciBlPWEuVGQ7ZD1kfHxEYXRlLm5vdygpO2I9QmsoYik7aWYoYlswXSl7Yj1DayhiKTtiPURrKGIpO2EuY2MmJihiWzBdLnR5cGU9YS5jYyk7aWYoYyYmKEVrKGJbMF0sYyksYy5EZiYmYy5qZz09PSExJiZjLmdkcHJBcHBsaWVzPT09dm9pZCAwJiZjLnRjU3RyaW5nPT09dm9pZCAwJiZjLmhnJiZjLkdmKSlpZih4KFwiX2VuYWJsZUl2dENoYW5nZXNcIikpe2E9YlswXTtjPWIuZmlsdGVyKGZ1bmN0aW9uKGwsbSl7cmV0dXJuIG0+MCYmXCJyZWxhdGVkU2VhcmNoZXNcImluIGx9KTtpZihjLmxlbmd0aD09PTApcmV0dXJuO2I9W2FdLmNvbmNhdChjKX1lbHNlIHJldHVybjthPXdrKGIpO3ZhciBmPVtdLGc9W10saD17fTtjPWZ1bmN0aW9uKGwpe2Zvcih2YXIgbT11KCRiKGwpKSxwPW0ubmV4dCgpOyFwLmRvbmU7cD1tLm5leHQoKSl7cD1wLnZhbHVlO3ZhciByPWVbcF07aWYociYmci5BKWYucHVzaChwKTtlbHNlIGlmKCFyJiZcbnAhPT1cImZpcnN0VGV4dEFkQmxvY2tcIilnLnB1c2gocCk7ZWxzZSBpZihyJiZyLmcpe2lmKGxbcF09PT1udWxsfHxsW3BdPT09dm9pZCAwKWJyZWFrO3IuZy5DKGxbcF0pIT1udWxsfHxyLkR8fChoW3BdPWxbcF0pfX19O2MoYS5OYik7Yj11KGEuWWIpO2Zvcih2YXIgaz1iLm5leHQoKTshay5kb25lO2s9Yi5uZXh0KCkpYyhrLnZhbHVlLm9wdGlvbnMpO2YubGVuZ3RoPjAmJmNvbnNvbGUud2FybihcIlRoZSBmb2xsb3dpbmcgQ1NBIG9wdGlvbihzKSB3ZXJlIGlnbm9yZWQgZHVlIHRvIGJlaW5nIG92ZXJyaWRkZW4gYnkgbmF0aXZlIHN0eWxlIGNvbnRyb2xzOiBcIitmLmpvaW4oXCIsIFwiKSk7Zy5sZW5ndGg+MCYmY29uc29sZS53YXJuKFwiVGhlIGZvbGxvd2luZyBDU0Egb3B0aW9uKHMpIGFyZSB1bnN1cHBvcnRlZDogXCIrZy5qb2luKFwiLCBcIikpO09iamVjdC5rZXlzKGgpLmxlbmd0aD4wJiYoYz1PYmplY3Qua2V5cyhoKS5tYXAoZnVuY3Rpb24obCl7cmV0dXJuIGwrXCI9XCIraFtsXX0pLmpvaW4oXCIuXCIpLFxuemsuY2xpZW50PWEuTmIucHViSWQsSmImJlBiKHprLFwidW9pdS1cIitjKSk7KGQ9R2soZSxhLk5iLGEuWWIsZCx7fSkpJiZkLnRoZW4oZnVuY3Rpb24obCl7RGoobCl9KX19Rms9eihGayxcImFhc2lcIik7XG5mdW5jdGlvbiBHayhhLGIsYyxkKXtpZihjLmxlbmd0aD09MClyZXR1cm4gbnVsbDt2YXIgZT1bXSxmPVtdLGc9e21heFRvcDowLG1pblRvcDowLHJoczowfSxoPU9iamVjdC5rZXlzKFYpO0hrKys7Zm9yKHZhciBrPWMubGVuZ3RoLTE7az49MDtrLS0pe3ZhciBsPWNba10ub3B0aW9ucztsLmFkVGVzdCYmIWwuYWR0ZXN0JiYobC5hZHRlc3Q9bC5hZFRlc3QpO2RlbGV0ZSBsLmFkVGVzdDt2YXIgbT1Cai5sb2NhdGlvbi5ocmVmLmluY2x1ZGVzKFwiYW1wcHJvamVjdC5uZXRcIikscD1bXTtpZihsLmZpcnN0VGV4dEFkQmxvY2smJiFtJiYheChcIl9lbmFibGVVbmlmaWVkTXVkc2tpcHBlcklmcmFtZVwiKSl7bT17fTtmb3IodmFyIHI9dShBayksdD1yLm5leHQoKTshdC5kb25lO3Q9ci5uZXh0KCkpdD10LnZhbHVlLG1bdF09bFt0XTttLnJvbGU9XCJzXCI7bS5tYXN0ZXJOdW1iZXI9SGs7az4wJiYobS5zbGF2ZU51bWJlcj1rKTtyPXRqKGEsbSxkLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCxcbjIpO209dGooYSxtLGQsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLDMpO2YudW5zaGlmdChtKTtmLnVuc2hpZnQocik7cC5wdXNoKHIpO3AucHVzaChtKTtWW3IuRygpXT1yO1ZbbS5HKCldPW19az09PTA/KGwucm9sZT1cIm1cIixsLm1hc3Rlck51bWJlcj1IayxsPXRqKGEsbCxkLGIsZSxnLGYsMSxwKSxWW2wuRygpXT1sKToobC5yb2xlPVwic1wiLGwuc2xhdmVOdW1iZXI9ayxsLm1hc3Rlck51bWJlcj1IayxsPXRqKGEsbCxkLHZvaWQgMCx2b2lkIDAsdm9pZCAwLHZvaWQgMCwxLHApLGUudW5zaGlmdChsLk1kKSxmLnVuc2hpZnQobCksZy5tYXhUb3ArPWwuS2IsZy5taW5Ub3ArPWwuTGIsZy5yaHMrPWwuU2EsVltsLkcoKV09bCl9YT1cIm1hc3Rlci1cIitIaztmb3IodmFyIHYgaW4gVil1ZCh2KSYmIWguaW5jbHVkZXModikmJihWW3ZdLnlhKz1cInxcIitWW2FdLnlhKTtmb3IoYz1jLmxlbmd0aC0xO2M+PTA7Yy0tKWg9W1wic2xhdmVcIixjLEhrXS5qb2luKFwiLVwiKSxWLmhhc093blByb3BlcnR5KGgpJiZcblZbaF0ubGIoKTtjPW51bGw7Vi5oYXNPd25Qcm9wZXJ0eShhKT9jPVZbYV0ubGIoKTpBLmxvZyhcIk1pc3NpbmcgYWQgYmxvY2sgZm9yIFwiK2EsXCJjQUZPTU1cIik7cmV0dXJuIGN9R2s9eihHayxcImNBRk9cIik7ZnVuY3Rpb24geGooYSxiLGMsZCl7ZHx8VltjLnNwbGl0KFwiLlwiKVswXV0uVWMoYSl9eGo9eih4aixcImhBQ1wiKTt2YXIgSWs9e307XG5mdW5jdGlvbiB5aihhLGIsYyxkKXtiPWQuZnc7dmFyIGU9ZC5maDtkPWQuYWg7ZD10eXBlb2YgYj09PVwibnVtYmVyXCImJnR5cGVvZiBlPT09XCJudW1iZXJcIiYmZCBpbnN0YW5jZW9mIEFycmF5P25ldyBJZChiLGUsZCk6bnVsbDtpZihkIT1udWxsJiYoYz1jLnNwbGl0KFwiLlwiKVswXSxiPVZbY10sYi5lZChkLGEpLGIub3B0aW9ucyYmYi5vcHRpb25zLmlmcmFtZUhlaWdodENhbGxiYWNrJiYoYT1iLmNvbnRhaW5lci5vZmZzZXRIZWlnaHQsSWtbY10hPWEpKSl7SWtbY109YTt0cnl7Yi5vcHRpb25zLmlmcmFtZUhlaWdodENhbGxiYWNrKGEpfWNhdGNoKGYpe319fXlqPXooeWosXCJoQ1wiKTtmdW5jdGlvbiB6aihhLGIsYyxkKXtWW2Muc3BsaXQoXCIuXCIpWzBdXS5rZChkKX16aj16KHpqLFwid0NcIik7XG5mdW5jdGlvbiBKayhhLGIpe3ZhciBjPXt9LGQ7Zm9yKGQgaW4gVilpZihWLmhhc093blByb3BlcnR5KGQpKXt2YXIgZT1WW2RdO2Uub3B0aW9ucyYmZS5vcHRpb25zLm1hc3Rlck51bWJlcj09YiYmdHlwZW9mIGUub3B0aW9ucy5jb250YWluZXI9PVwic3RyaW5nXCImJihlPWUub3B0aW9ucy5jb250YWluZXIsY1tlXT0oY1tlXXx8MCkrYS5CW2QrXCIuYUNcIl0udmFsdWUpfXJldHVybiBjfUprPXooSmssXCJnQUNcIik7ZnVuY3Rpb24gdmooYSxiKXt2YXIgYz1WW1wibWFzdGVyLVwiK2JdO2lmKGMmJmMub3B0aW9ucyYmYy5vcHRpb25zLmFkc1Jlc3BvbnNlQ2FsbGJhY2spe2E9SmsoYSxiKTt0cnl7Yy5vcHRpb25zLmFkc1Jlc3BvbnNlQ2FsbGJhY2soYSl9Y2F0Y2goZCl7fX19dmo9eih2aixcImFDQ1wiKTtcbmZ1bmN0aW9uIEFqKGEsYixjLGQpe2lmKChhPVZbXCJtYXN0ZXItXCIrYl0pJiZhLm9wdGlvbnMmJmEub3B0aW9ucy52aXNpYmxlVXJsc0NhbGxiYWNrKXtkPWQ/ZC5zcGxpdChcInxcIik6W107dHJ5e2Eub3B0aW9ucy52aXNpYmxlVXJsc0NhbGxiYWNrKGQpfWNhdGNoKGUpe319fUFqPXooQWosXCJ2VUNcIik7dmFyIEhrPTAsVj17fSxCaj13aW5kb3c7dmFyIEtrPUZrO2Z1bmN0aW9uIExrKGEpe01rKGFyZ3VtZW50cyl9ZnVuY3Rpb24gTmsoYSl7dmFyIGI9YS5wdWJJZHx8XCJcIixjPSEhYS5nY3NjfHwhMSxkPSEhYS5jeHx8ITEsZT0hIWEuZm9yY2VHZHByfHwhMSxmPWEuaXZ0O2Y9PXZvaWQgMCYmKGY9eChcIl9lbmFibGVJdnRDaGFuZ2VzXCIpPyFjOiEoY3x8ZCkpO2E9YS5zb3VyY2U9PT1cImFkbW9iXCI7cmV0dXJuIHZrKGIsYyx3aW5kb3csTS5DKGYpLGEsZSl9dmFyIE1rPUIoZnVuY3Rpb24oYSl7dmFyIGI9YSYmYVswXXx8e307ZmooYik7Yj1OayhiKTtiIGluc3RhbmNlb2YgUHJvbWlzZT9iLnRoZW4oZnVuY3Rpb24oYyl7S2soRmksYSxjKX0pOktrKEZpLGEsYil9LFwiaUFBUFJcIik7XG5pZighd2luZG93LklTX0dPT0dMRV9BRlNfSUZSQU1FXyl7Zm9yKHZhciBPaz0obmV3IERhdGUpLmdldFRpbWUoKS50b1N0cmluZygpLFBrPXUoJGkua2V5cygpKSxRaz1Qay5uZXh0KCk7IVFrLmRvbmU7UWs9UGsubmV4dCgpKXt2YXIgUms9UWsudmFsdWU7YWouaGFzKFJrKXx8ZGooUmspIT09MHx8YWouc2V0KFJrLGdqKFJrLE9rKSl9aWYoISh3aW5kb3cuZ29vZ2xlJiZ3aW5kb3cuZ29vZ2xlLmFkcyYmd2luZG93Lmdvb2dsZS5hZHMuZG9tYWlucyYmd2luZG93Lmdvb2dsZS5hZHMuZG9tYWlucy5DYWYpKXt2YXIgU2s9W1wiZ29vZ2xlXCIsXCJhZHNcIixcImRvbWFpbnNcIixcIkNhZlwiXSxUaz15YTtTa1swXWluIFRrfHx0eXBlb2YgVGsuZXhlY1NjcmlwdD09XCJ1bmRlZmluZWRcInx8VGsuZXhlY1NjcmlwdChcInZhciBcIitTa1swXSk7Zm9yKHZhciBVaztTay5sZW5ndGgmJihVaz1Tay5zaGlmdCgpKTspU2subGVuZ3RofHxMaz09PXZvaWQgMD9Uaz1Ua1tVa10mJlRrW1VrXSE9PU9iamVjdC5wcm90b3R5cGVbVWtdP1xuVGtbVWtdOlRrW1VrXT17fTpUa1tVa109TGt9fTtcbn0pKCk7In0sICJoZWFkZXJzU2l6ZSI6IDAsICJib2R5U2l6ZSI6IDU2MDEyLCAicmVkaXJlY3RVUkwiOiAiIiwgIl90cmFuc2ZlclNpemUiOiA1NjAxMn0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogMS4xNDcsICJjb25uZWN0IjogNTMzLjAzOSwgInNzbCI6IDI2OC41ODQsICJzZW5kIjogMCwgIndhaXQiOiAyNzAuMTA4LCAicmVjZWl2ZSI6IDQ1Mi4xMjJ9LCAicGFnZXJlZiI6ICJwYWdlQDcwNjgwZmM3YzUzNTkwNDgwMTExYTMzZmJiZDQ0Y2NmIiwgInNlcnZlcklQQWRkcmVzcyI6ICJbMjQwNDo2ODAwOjQwMDM6YzA0Ojo2N10iLCAiX3NlcnZlclBvcnQiOiA0NDMsICJfc2VjdXJpdHlEZXRhaWxzIjoge319LCB7InN0YXJ0ZWREYXRlVGltZSI6ICIyMDI0LTEwLTMxVDAyOjMxOjQwLjE1MFoiLCAidGltZSI6IDI2LjU0MTk5OTk5OTk5OTk5OCwgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHA6Ly9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9iZy9hcnJvd3MucG5nIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMS4xIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogIkFjY2VwdCIsICJ2YWx1ZSI6ICJpbWFnZS9hdmlmLGltYWdlL3dlYnAsaW1hZ2UvYXBuZyxpbWFnZS9zdmcreG1sLGltYWdlLyosKi8qO3E9MC44In0sIHsibmFtZSI6ICJBY2NlcHQtRW5jb2RpbmciLCAidmFsdWUiOiAiZ3ppcCwgZGVmbGF0ZSJ9LCB7Im5hbWUiOiAiQWNjZXB0LUxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJDb25uZWN0aW9uIiwgInZhbHVlIjogImtlZXAtYWxpdmUifSwgeyJuYW1lIjogIkhvc3QiLCAidmFsdWUiOiAiaW1nLnNlZG9wYXJraW5nLmNvbSJ9LCB7Im5hbWUiOiAiUmVmZXJlciIsICJ2YWx1ZSI6ICJodHRwOi8vb2theXRpLnBpY3MvIn0sIHsibmFtZSI6ICJVc2VyLUFnZW50IiwgInZhbHVlIjogIk1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS8xMzAuMC42NzIzLjMxIFNhZmFyaS81MzcuMzYifV0sICJxdWVyeVN0cmluZyI6IFtdLCAiaGVhZGVyc1NpemUiOiAzNzksICJib2R5U2l6ZSI6IDB9LCAicmVzcG9uc2UiOiB7InN0YXR1cyI6IDIwMCwgInN0YXR1c1RleHQiOiAiT0siLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8xLjEiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiQWNjZXB0LVJhbmdlcyIsICJ2YWx1ZSI6ICJieXRlcyJ9LCB7Im5hbWUiOiAiQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIiwgInZhbHVlIjogIioifSwgeyJuYW1lIjogIkNGNEFnZSIsICJ2YWx1ZSI6ICIyOTUyIn0sIHsibmFtZSI6ICJDRjR0dGwiLCAidmFsdWUiOiAiMzE1MzMwNDguMDAwIn0sIHsibmFtZSI6ICJDYWNoZS1Db250cm9sIiwgInZhbHVlIjogIm1heC1hZ2U9NjA0ODAwIn0sIHsibmFtZSI6ICJDb25uZWN0aW9uIiwgInZhbHVlIjogImtlZXAtYWxpdmUifSwgeyJuYW1lIjogIkNvbnRlbnQtTGVuZ3RoIiwgInZhbHVlIjogIjEyNjQyIn0sIHsibmFtZSI6ICJDb250ZW50LVR5cGUiLCAidmFsdWUiOiAiaW1hZ2UvcG5nIn0sIHsibmFtZSI6ICJEYXRlIiwgInZhbHVlIjogIlRodSwgMzEgT2N0IDIwMjQgMDI6MzE6NDAgR01UIn0sIHsibmFtZSI6ICJFeHBpcmVzIiwgInZhbHVlIjogIlRodSwgMDcgTm92IDIwMjQgMDI6MzE6NDAgR01UIn0sIHsibmFtZSI6ICJMYXN0LU1vZGlmaWVkIiwgInZhbHVlIjogIk1vbiwgMTEgT2N0IDIwMjEgMDU6Mzk6NDQgR01UIn0sIHsibmFtZSI6ICJTZXJ2ZXIiLCAidmFsdWUiOiAiQ0ZTIDExMjQifSwgeyJuYW1lIjogIlgtQ0YtUmVxSUQiLCAidmFsdWUiOiAiN2QwMTc3YTk3Mzc1OGZmZjBiNTViOTBkYzdlODQyZjYifSwgeyJuYW1lIjogIlgtQ0YxIiwgInZhbHVlIjogIjExNjk2OmZCLmZyYTI6Y2Y6bm9tOmNhY2hlTi5mcmEyLTAxOkgifSwgeyJuYW1lIjogIlgtQ0YyIiwgInZhbHVlIjogIkgifSwgeyJuYW1lIjogIlgtQ0YzIiwgInZhbHVlIjogIkgifSwgeyJuYW1lIjogIlgtQ0ZGIiwgInZhbHVlIjogIkIifSwgeyJuYW1lIjogIlgtQ0ZIYXNoIiwgInZhbHVlIjogIlwiNmRjMGJhZDlhYTQ1MmZmODcxYjI4MmRhYmQ0NzEzMWVcIiJ9LCB7Im5hbWUiOiAieC1jZi10c2MiLCAidmFsdWUiOiAiMTcxODc5NzU0MSJ9XSwgImNvbnRlbnQiOiB7InNpemUiOiAxMjY0MiwgIm1pbWVUeXBlIjogImltYWdlL3BuZyIsICJjb21wcmVzc2lvbiI6IDAsICJ0ZXh0IjogImlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFhb0FBQUhiQ0FZQUFBQ2E4ZDZTQUFBQUNYQklXWE1BQUFzVEFBQUxFd0VBbXB3WUFBQUFBWE5TUjBJQXJzNGM2UUFBQUFSblFVMUJBQUN4and2OFlRVUFBREQzU1VSQlZIZ0I3ZDFmYkZ6bmVlZng1ejBqU3JKSmlqT1NiVW5KTmpwRFNZNk5BQTJsb29oMmMrR1JFdHRxdHR2UURyYnIzWnRJMmhSd2I3YVNnS2JidmJCbFg3VnUxNWF2ZG9HTjlXZHZ0azVhaVFxYzFISmtjVlFncUl3Q0ZWVWdnQnlUNHVRaU50VTQ0cWltWEVrVXo3dnZPNXloeHRTUW5IUG1uRE5uNW53L3FFVnFPQ1BSVGpFUDMvZjN2cytqQkIxamVQaGc5dTdxMWNlMStWUUFJSDVhZWQ2ZXQvNzZMNHNTSXlYb0NOLzRqMzg4cEpRNmJUNTFCUURhWi9MbW5UczdpeU5IeXhJVFI1QjR2L3VmL3ZpUFRKRzZKQlFwQU8yWGYzRDE2bU1TSTFaVUNXYTMrdTZzV2ZPYTBucWZBRUJ5YUUvazhOOSsvNVdqRWdNS1ZVSU5QL2NuN3F5blI0VlZGSUJrMHNiT0gvL2dMOFlrWW16OUpaRGQ2ak5GaXEwK0FFbG1FZ2wxcW1CMmZpUmlxd1NKWWJmNlpsZXZmbEZyT1NnQWtIejUzcDZlVjgzSEF4S2hqQ0FSS2x0OUt2TzNaak9XbytjQU9vZFNROXUrOU5VYjR6Lzc2VVdKQ0JsVkF2ejczLy91dDgwSEcwcEd2b1FHZ0FoTW03eHFUMVI1RlJsVm01a2k5WnI1Y0VJb1VnQTZWeTdLdklxTXFrMHFXMzF6Mmw3Z0hSSUE2SHo1M3RXclh6QWZEMHZJeUtqYVlPOXpmMUxROXVpNTRsUWZnSzZ5SzRxOGlvd3FadFd0UGs3MUFlaFcwejEzbkowakkzOVdrcEJRcUdJeXY5WG5IUmVsQ2dJQTNTM1Vmb0FjcG9pQjNlcXJkSm1nU0FGSWgxcGVGUW95cW9oVkdzcHErU3ZoVkIrQWRObjE2SmUrV3ZyZ1p6KzlMQzFpNnk4aWxTNFRQVDJuV1VVQlNMRlE4aXEyL2lKZ1owZk5ybDU5aVNJRklPVnlzejFleS9lcktGUWhZM1lVQU5SUnNxUFZ2SXF0djVBd093b0FscVM5T1huMmIvL21sUkVKZ0VJVkFzYkVBOENLQXVkVmJQMjFxTHJWeDRCREFGaGVKYStTQUZoUkJWU2JIU1YwbVFBQVAxNzcwZmRmOGRVUGtFSVZBR1BpQVNBd3JUeHZ6MXQvL1pmRlpsL0ExcDlQZG5ZVVkrSUJJRENsSGVmVThQQi9kNXQ5QVlYS0IyWkhBVUFvVEY0MWQ2elpKN1AxMTRTRjJWR0syVkVBRUtLbThpb0sxUXArNTF2ZkhYWXljbHhZUlFGQTJKcktxOWo2VzRiZDZqTkZ5dDZQb2tnQlFQaHNYblZzcGJ5S1VmUU5MTXlPRWlrSUFDQksrV3BldFdlcEp6RG1ZNUhxbUhqYjladzhDZ0Rpb0pTNy9VdGZsUTkrOXRNTERiOHNXUENOMy8vdWkrWS95QkVCQU1SdHlieUtRaVhNamdLQWhHZzR3ajcxaHlrcVkrS1pIUVVBU1pEdjdlbTVyeDlncWpNcXhzUURRTUtZdkdyYmw3NTZZL3huUDcyNDhKQ2trTjNxdTd0NjlYRnRQaFVBUU5KOEpxOUtYYUZpZGhRQWRJU0Z2Q3BWR1JXem93Q2dZK1FmWEwyNjBnOHdGU3NxeHNRRFFFZlNuc2pocmk5VXpJNENnSTZsNSs0NGcxMjk5Y2ZzS0FEb1dOcjhjL2p0a1Q4cmRlV0tpakh4QU5EaGxEcitvemYvL0lEOXRPdWEwaTdNamhKbVJ3RkFKekpMcVVudnRucTU5dnV1V2xFeE93b0FPbDRsbDdKYmZyVUh1aWFqWW5ZVUFIUStzM3A2dWI1SVZSL3JiQXV6bytqVkJ3QWRUU2s1L2RhYnJ6eTcrUEdPenFncURXWG5aMGV4aWdLQURtWnpxYm5ienVGR1grdllyVDg3T3lvemZ6K0tJZ1VBblUwN25uZGc4WlpmVGNldHFCZ1REd0RkeGVaU2pRWW0xbjI5YzlpdFByT0tza1hLRlFCQTU5Tnk2VWMvZUdYbmNrL3BtSzAvMjFBMlF5c2tBT2dhbFZ4cTFubDJwZWNsZnV0dllYYVVabllVQUhRUmJiYjBYbG9xbDZxWDZFSmxaMGZOTWpzS0FMcE9KWmY2L2lzbm0zeHVNdG10UHEzVlVRRUFkQlc3NWZmajc3OHkyT3p6RTdlaXFzMk8wc3lPQW9CdU5PM2RjZmI0ZVVHaUNsVnRkcFRTMmhVQVFMZXhvenNPTlpOTDFVdk1xVCs3MWNmc0tBRG9YaWJPZWYxSFRlWlM5ZHErb3FyTmp0S2EyVkVBMEsxc0x2WHA3TzJYSklDMkZpcG1Sd0ZBS21pYlN4VkhqcFlsZ0xadC9TMk1pVmNVS1FEb1lnc2o1U1dndGh4UHQ3T2poREh4QU5EOTZrYktCeFhyMWg5YmZRQ1FIb3RIeWdjVjI0cXEybENXQ2J3QWtBNzNqWlFQS3BhTXltNzFNVHNLQU5LajBVajVGdjZzNkRBbUhnRFNaNm1SOGtGRmxsRlZ4OFRiSXVVS0FDQVZsaHNwSDFRa1czOTFZK0pkQVFDa3hiSWo1WU1LZFVWVjZUTFIwMk1QVEJRRUFKQXFLNDJVYitIUERZZWRIYVdZSFFVQTZkVEVTUG1nUXRuNnN3MWxUWkdpb1N3QXBGQ3pJK1dEYW1ucmo5bFJBSkI2VFkrVUR5cHdvYXFOaVdkMkZBQ2tsNStSOGkzOEhmNVZ4OFFmRVM3d0FrQnErUjBwSDVTdkZSV3pvd0FBVmI1SHlnZlZkS0dxallrWERrd0FRTm9GR2lrZlZGT24vaFptUjFHa0FDRDFnbzZVRDJyRlFsV2RIWFZDeUtNQUlQVmFHU2tmMUpKYmY4eU9TaTd6L3lnbEFZRDR0VFJTUHFpR3AvNSs1MXZmSFhZeWNseFlSU1ZGMlN5MVR6cmUzZUxNM0Z3eDd2OG5BWUIydXE5UU1TWStJYlF1S2tkR1BFOHUvUGdIZnpFbUFKQlNDMXQvQzdPamFDamJMbVZUbkViTXR0NkZUMmRuUjFnMUFjQzh5b3FxT2liZUZpbFhFQis3YWxKeVFUeXYrTlpmLzgraUFBRHVvK3pzS0ZPdGpnaml3S29KQUh4YXBiUXUyTG5CaUFpckpnQm9TV1NqNkZPTVZSTUFoSWhDRlFaV1RRQVFHUXBWTUt5YUFDQW1GS3Btc1dvQ2dMYWdVQzJ0ckVTS29uUng1dmJzU1ZaTkFOQWVGS3A2V285cGNTNDQrdTRJcXlZQVNJYTBGeXFiTlkzWlZrV3NtZ0FnbVZKWHFDcWR4N1U2WTFkTk0zZm54aWhPQUpCc2FTaFVDNnVtVmJkbno0eU1IQzBKQUtCamRHV2hZdFVFQU4yald3b1ZxeVlBNkZJZFc2aFlOUUZBT25SU29XTFZCQUFwbE9oQ3hhcHAzcTdDUGxkbk10OVVJa1BtdjBwQlJMa0NBUEhUWnNIdzBzWHp4MTZTR0NXdlVGVkhzS2Q1MVdRS1U4RVVwaTg3SWdWdmZ1Snk5dDRnRmtheUFHZ2JKVXE5dUt2d25Rc1hpOThyU2t5U1VLaktXcXVUam5lM09ETTNWMHpicXFsUU9KaTlKZVVobGNrTW14WGtsM1ZsMVRSZm1Nem5sQ1VBU2FNa280L3QydnY4bm90di8rK1N4S0E5aGFxNmF2STh1ZkRqSC96Rm1LUklwVEE1NVdHbE1rT2k5Qk8zOUNlbU1HVXFSY21pTUFIb0FIbVpuVDFtUHU2UkdNUlZxRkk3Rm1OeHZuUkxQbkVYQ3BPbUxBSG9XSVd2N0RsdzhMM3p4NDVLeEtJclZDa2RpMEcrQkNBbGxQR3F5YXZHb3M2cndpeFVxVnMxa1M4QlNMbEtYbFVvN050WkxKNkk3RDIvdFVLVnNsVVQrUklBM0NkL0s1TTVKUkhtVlg0TFZhcFdUZVJMQU5DVVNQT3FsUXRWaWxaTjVFc0FFRWdsci9ydEovK2crQTgvK1QraG4rUnVWS2hTc1dvaVh3S0FVS21NNTUyS0lxK2FMMVFwV0RXUkx3RkE1UEszTXhsN3YrcFpDVkhYdmovVEh3OEEya0liaDhQTXE3cW1VQzNPbDh5L1dGWUFBTEV6TzFYVG51UHNDU3V2NnNoQzFTaGZvakFCUUtKTXJwMmJDeVd2Nm9oNVZPUkxBTkJ4N1AycVY4M0hBOUtpUkw3SGt5OEJRRmNJSmE5S1JLRWlYd0tBN21Uekt0WFRzN09Wa1NDeEZ5cnlKUUJJblpieXFzZ3pLdklsQUVpOS9MK3VXdldDK1hoWUFnaTlUcEF2QVFBYUNKeFh0VnlveUpjQUFNMEltbGY1S2xUa1N3Q0FWaWlsTDYyNTYrM3hrMWN0bTFHUkx3RUF3cVMxMnVFM3IvcE1yU0ZmQWdERXdLNTM5bDk4OTQyVHpUeFo3ZHB6WUo5UzZwdmtTd0NBdVBqSnF4eXpZZmh0ODRKaGloUUFJQzZtNXVUVTNUdW5tbm11SXdBQXRJSE5xNzd5OWUrOHV0THpLRlFBZ0xaUldoLzh0MS83cjhQTFBZZENCUUJvSitXSkhOdTE5M2wzcVNkUXFBQUFiYlZTWGtXaEFnQzAzWEo1RllVS0FKQUlOcS9hVmZoT1lmSGpGQ29BUUZJb25kR25GdWRWRkNvQVFHTFl2RXBtWjQvVlAwYWhBZ0FremU3NnZJcENCUUJJblBxOGlrSUZBRWdpSlJsZHVWOUZvUUlBSkZYZTVsVVVLZ0JBY21uMWR4UXFBRUFpbVp6cTBzWHozenRDb1FJQUpJL1drOXJ6bnJXZlVxZ0FBRW1qbFZLSEx4WlBsT3h2S0ZRQWdHVFI2dVcvZi9lTmtkcHZLVlFBZ01TbzVWTDFqMUdvQUFESlVKZEwxYU5RQVFDU1FJdFNMOVZ5cVhvVUtnQkErNWxjNnVLN2I1eHM5S1ZWQWdCQU81a3R2NHZuM3ppeTFKZFpVUUVBMmtaclBTMmV0MmU1NTFDb0FBRHRZdTlMSFdxVVM5V2pVQUVBMmtLSnZMNVVMbFV2ODIrMmZQbUNLSFhaL0hORGFXMWVxVFlKQUFCUnF1UlN4NzdSekZQVjRnY0toWDNaVHpPWlFzWjhhc3JXbCsxREFnQkFTR3d1cFR4djUwcGJmalZxcFNmWXduVnIxYW9oRTNZVnpHcnJDZk1YREprOXhhd0FBT0NmV1FQSi9tYTIvR3BXTEZTTi9IYmhENGFjalBlRStiUmd0Z3VIVEFGekJRQ0FGWmlpYy9UdjMzM2prTS9YdE00V3Jvd3pad3VXTFZ4ZjFrb05DUUFBOVV3dXRkWnMrUldMSjhwK1hoWktvVnFNbkFzQVVNOXZMbFV2a2tLMUdEa1hBS1NhTmp0dGg5ODc5NzJqRWtBc2hhb1JjaTRBU0kzakY5OTk0NEFFMUxaQ3RkaXV3ajVYSEtkQXpnVUFYU1JnTGxVdk1ZVnFNWEl1QU9oNFd1Ym1Cb1BrVXZVU1c2Z2EyZlgxN3hUSXVRQ2dJN1NVUzlYcnFFSzFHRGtYQUNSV1M3bFV2WTR1Vkl1UmN3RkFBcGhjeW83dWFIWExyNmFyQ3RWaTVGd0FFTHRRY3FsNlhWMm9HaUhuQW9BSWFmWFN4ZlBmT3lJaFV0dUhob2MrR0JzWms1UWk1d0tBMElTV1M5VlQyNzc4elZHekxlYWF6NHRtWDdFNDV6aG5TbU1qZ2MrN2R6cHlMZ0FJSU9SY3FsNmxVTW45MlUzUnZFbVBtRGZzQzJsZWJWbmtYQUN3SWowM043ZnpING9uSXFrWFN4V3FlMys3U0VsczRWSnpKOGZIM2lvS3lMa0FvRjRFdVZTOUZRdlZJblpMc0dqZW5FZk1GdUVGczBWWUVwQnpBVWd0czVnNS9kNjdiendyRWZKYnFCWmppN0FCY2k0QXFSQmhMbFd2MVVLMW9MWkZLR3J1ek1UWVd5T0NCZVJjQUxxUU5qK003N2w0N250RmlWaG9oYW9CdTBWNGdpM0N4c2k1QUhTMGlIT3BlbEVXcW5wajVzMzRnbks4RVE1a05FYk9CYUNEakY1ODk0MDlFcE80Q3RXQytpM0NPVmxWVFBPZHJlV1Fjd0ZJcEpoeXFYcXhGNm9HS2djeVp1Y3ZHcGNFRFMzS3VRWUVBTnBCcVpOeDVGS2YrU3NUVUtnV1ZGWmJXcDloaXhBQVVKT29RclVJZDdZQUFJa3VWSXR4WndzQVVxaVRDdFVDMmpvQlFIcDBaS0ZxWUlRdFFnRG9UdDFTcU9weFp3c0F1a2czRnFvRjNOa0NnTTdYMVlXcUFkbzZBVUNIU1Z1aHFzY1dJUUIwZ0RRWHFucGxzMDA0SWxvWFdXMEJRTEpRcUJyanpoWUFKQVNGYWdYYzJRS0E5cUpRK1VOYkp3Q0lHWVdxTldQelRYU2RFYllJQVNBYUZLcVFjR2NMQUtKQm9Zb09kN1lBSUFScTY5RHdQcVgxYStienJDQXEzTmtDZ0lDVS9jVWRHbll6V28rYTM3aUNTQzFzRWM3ZjJUckRGaUVBTEUvVlBqSEZLcHZ4dktOS3FXOEw0c1NkTFFCWWhscjh3TGFoNFNQbXAvMFhCYkhqemhZQTNFODFlcEN0d0VUZ3poWUF5QktGeXJMRmF0WDhJWXRoUVJJc2JCSE96aGN4QUloYnVSMjV1bHJwQ1d3RkFnQXNFMDlNemltMU0rNWlsVm5wQ2RlbnJoUnpteCsvYkQ3ZHBUakNEZ0NwWldwQXpoU05qZGV2dlg5R1lyUmlvYkttcDY1Y0dkajgrQmxuL21Md0pnRUFwTlhRK28yUDNyaCs3ZWNYSlNZcmJ2MHR4bFlnQUtUZXRGSnFUMXhYYW53WEtvdHVGZ0NRYm5IbVZZNEVNREUyY3VLdVVqdXE5MzRBQUNsalZqbjVWWjczZ3NTZ3FZeXFrZkxVbGJMSnJVNmFsZFVEWmdtNFN3QUE2V0xlKytQSXF3SnQvUzFtY3F1RE1yOFZDQUJJbCttNzgxdUFKWWxJS0lYS29wc0ZBS1RXSlZPczlrU1ZWem1mMy83a2tJVEFWbE1Uck8wMm40NElBQ0JOZGtTWlYyWDZObXo5ZitzZTJ1Wis4dXVKQzlJaW0xdGR2L2IrbStzM1AyNVhhZ1VCQUtTRHlhdHlteDh2VFU5ZHVTd2htei8xcC9XUnpkdWZlaTNyRmtJNWJqNCtObkxFZk5PN09SVUlBS21oN0xVbEd3Tkp5QmFPcHl2UkJ4L3M2Ym0weWQzclNnaE1zU3BXdHdLWnNRUUE2WkJicGZVcENkbmllMVN1MHpNM0dsYXhzcm5WK09Vek8weWRmVWtBQUdtd1k5dHYvdDZyRXFKR0YzNXRzYnEwK1l0UEg1U1EySzFBcmRSK1lUd0ZBSFEvcFE1dUhmcmQwRVpFTGRXWklxczg3N1hQUGZwVWFEMzk2R1lCQUtsaDhxck1zYkR5cXVWYktHbDk1SFBibnp3ZTFpR0w2aEgySFZycjF3VUEwTTFzWG5WTVF0Qk1yNzk5WVI2eXNCZkNKdjdwaHdkTnZUMGtBSUJ1dGp1TXZLclpwclNWUXhZUGgzUTUyREs1MVZHekZaaG5LeEFBdXBqSnE3WU4vVzVCV3VDbmU3cmJJeExxSVl0YU53dXpGWGhTQUFEZFNJbk9uR29sci9JOTVpUHNReGEyV0ptdHdIMGNZUWVBcnRWU1hoVm9IbFhsa01XalQ1ME82NUNGWlkrd0swNEZBa0MzS3BpOEt0QWlKMWloc3JRZUR2T1FoV1hIR3RQTkFnQzZrakk3Wnk4R3lhdUNGNnA1b1IreW9Kc0ZBSFF0cGVmdlYvbmFqV3UxVUZtaEg3S3dxdDBzbm1FckVBQzZSMldFdmM5K2dHRVVxdm0vUE9SREZ0YkUyTWpJSEYzWUFhRGJtTHpxUHpTOXVGR2J0ejlwcC9JV0pDeEtqWHg2NTg3K2Nxa1lhbCsvcmIvNWUwZVZVbjhrQUlCdW9FWE43UmtmZTZ1NDBoTkRXMUhkKzZ2RFAyUmgxWFd6b0xFdEFIUytwdk9xOEF2VnZOQVBXVmpWYmhZY1lRZUFMbEROcTFhOFh4VlZvYklpT1dSUjE5aVdiaFlBMFBtR1Y4cXJNdjBidHU0elZjMlZpSmkxM2Q3K2g3YkpKNytldUNBaEtVOWR1VFY5N2YyUjlac2ZOOTk2aVBrYUFDQnU5bjdWMHhzMlAzN20rdFNWcVVaUGlISkZkWS9XUit5aGpiQnpLN3BaQUVCWFVKN1dwNWJLcStJcFZGTFppeXlFT2VhK3BxNmJSVkVBQUIzSjVsVTlXamNjQ1JMNTF0OGlXWlhSdzczckJ5L1BYTDlha3BDWXJjRHk5V3Z2bjJRckVBQTYydEQ2alkvZXVIN3Q1eGZySDR4dFJWWEhkWlFhRGZ0eXNFVTNDd0RvYUNhdmNsN1lQalQ4bVJQajdTaFU4K1k3c0lkZXJPaG1BUUFkTGJjNHI4cjBiZGlxekg3WnNMUkh3V3c5RHZldWUvVHNUSGs4dEl1OGRpdHcrdHI3citjMmZqR25sTm9sQUlDT1lXcFN6dEY2allsMHp0cmZaMHhXTkxZdWw4OUorOTdRTjFWeXEzV1BuZ216V0ZtbVdMMXRjcXNiNWxQNzc3WldBQUNkd2RTa1dsNmxhbzk5YnZ1VGw4eUhVRHRKK0ZUV250ci8wY1E3SXhJeU93STVvL1ZvaklkR0FBQ3RtNzZyMU9CQ1J1VmxNcytZNEtpZGZmU3l5dEdubzhpdDZHWUJBQjJwWk42L3k1bmE3MlkrSGkvM3JoOTh6MlE2KzZTOUNuMGJ0bVZucmsrY2xSRFJ6UUlBT29jV21UUUxqRy9ZTXdkcThSYy90KzNyUit5NFlHbS9NVzgyODh4VTZlMlNoSXl0UUFCSU5LMlYyajh4TmxMWkJidnZlUHFINCtlTzZHUjBlUmlLb3BPRlZkMEt0TjBzUXMvREFBQXRVdnJsV3BHcS9MYlJjMXkza0wzZDAzTXBJU3VPeUE1WldOdUdobytZMnAyRUZTUUFwSjdkOHB1NGZHYXcvckdHRjM1THBXTFpmT0VaU1liSURsbFl0cHVGY0VFWUFOcXVta3Z0V2Z4NFpxa1hmSEw5NmxUZitzRWJTcW05a2d5UkhMS3dyazlkS1Exc2Z2eU1NMy9JWXBNQUFPS203UlQzeWJHUiswWkNxWlZldVhuNzEwOG9VZCtXNUlqc2tJWEZWaUFBeEU4cmZYUmk3SWVIR24xdHhVS1ZzTHlxcG1TSzFlNm9pdFhXb2VGOVN1dlh6S2RaQVFCRXFsRXVWVy9GcHJRMnI5S1p6TzQyWHdaZXpIVjY1aTV0M3ZwVUpEMEtKOFpHVHR4bElDTUF4R0c2VVM1Vkx5Tk5xRndHM3JEMVdodWIxemF5VmlsNUx1d3g5elgya3BuSnJVNmFsZFVETkxZRmdFalkrMUovMkNpWHF0ZFVvYklTMEx4MktaVkRGcXZXL2NaN3Q4cWxXeEtpYWplTFdtUGJwQndxQVlDdVlIS3AxeWZHenZ6NVNzL3pOWStxWjI3dWlQa3dKZ21qUkI5ODBPUm9VVndPdHNiSFJvNmFyY0E4VzRFQUVJN0tVWFJ4WG1ybXViNEtsYzJyRXRDOGRpbHVWSjBzTExwWkFFQm9Lcm1VYlRqYnpKT2RSOXlDcjl4cDZzcmJKVThuNWpMd1l2T0hMTDc0OUVHSmdDMVc0NWZQUEdPMlA1djZLUUFBY0I5N1grcGwrMzdhN0FzeWZSdnkvNnN2TjVpN09UMTVzZGtYbWJ5cWxOQzh5bHFydE40YjFTRUw2L3JVbGFMSnJTNllwV3RCY1lRZEFKcG0zamRQVEZ3Kzg2ZCtYbFBiK250eGsxdHd4WWRmVHJ4N01DSE5heHZUK3NqbnRqOTVQT3NXSWlra0pyY3FWcmNDRTVmWkFVQVNWVnNrSFJhZmFvVXFxNVZ6MnUrYnVzNWs5aWY4Z01HK0tBOVpWTGNDZDdBVkNBQXIwbjV5cVhyM0RsTW9HVnJqT0w1YUI5bThTbXU5WDVLdGNzamk0ZTFQRGtsRWJHTmJPenZGZkpyRVF5WUEwRzQybHpyc0o1ZXF0L2pVMzhGTld3dSsrdnBOalo4cm1tSjFTSkxON1JHSjdKQ0ZSVGNMQUdqTTVsTDJtbzhFZE4veGRLMmRvMzd6cW8vR3p4MFZwUk4vYkZ0NTNtdFJqUXV4cWtmWWQ1akMvYm9BQUdxNTFNdlNna2IzcUNwNWxmaTArczdkcE9kVjgrd2hpMGVmT2gzVklRdTcvenJ4VHo4OGFOdlZDd0NrV3kyWEtra0xHbC80TlhuVnhzRTlyNGtQOTRZdEp2SXk4R2RwUFJ6bElRdUxiaFlBVWsvcGwxc3RVdFp5blNrT1B1Sit6ZGRsNEY5KzhKTXhyYVZUVHNCRmZzaWkxczNDYkFXZUZBQklFZk5EK3ZIeHNSOGVrUkFzMjBKSk9mcDRrTHpLWkVHZGt0RkVmc2pDRml1ekZiaVBJK3dBMGlLTVhLcmVTcjMrQXVWVlNXMWV1NVNvRDFsWTlnaTc0bFFnZ082bkhhV2VEV1BMcjJibHByUUI4Nm9FTjY5dExPSkRGdFlIWXlOajFXNFdSUUdBYm1SeUtmdGVKeUZxdG52NlFiTUZXQkFmS3BlQnZjUmZCdjZzR0E1WlZMdFo3R1lyRUVBWE9oMVdMbFd2NlRFZjJuRk8rODZySnQ0ZDZhQzhxaWJ5UXhaV3RadkZNMndGQXVnR05wZTZHNkNQWHpQOHpLTXllVlhtdVBpVStPYTFqVVYreU1LYUdCc1pxWndLcEZnQjZHem01MjUxSU14Y3FwNnZ3WWxtNzdIZ042K3lPcUI1YlVOeEhMS29uQXE4ZkNaUE53c0FIY3ZrVW5haWhFUWswN2MrdjgvOExhNlAxK3pxSDloeVlhWmNLalg3Z3BtUHg4dDk2d2N2bTRxN1R6cFBvVy9EMWtMZnVrZk52L040WklkRHBxKzkvL2I2elkvZk1KL2FHVjlyQlFBNncrajQ1UjlHZWg3QjM0cXF5dVJWdnU5WDJlYTFvblZISGlCUXBsaEZPZWErcHRyTmdpUHNBRHBDTlpjNklCRUxWS2dNTjBoZTllSDR1U01kbUZmVlZBNVpiTnIyOVlKRXFLNnhMZDBzQUNSWlM2TTcvQWhhcUNwNTFTT0RlM3puTjJ0bVp6djVwSnZyS0RVYVEyNVZwcHNGZ0VRenVaUTlFQ1l4Q0Y2b3BMSWxkc1R2L2FwN3pXczcyUHpsNEVpTGxVVTNDd0FKZFNtSysxSkxhYWxRV1Rhdjh0dk5ZYjU1YmVLSExTN1BGcXZ0VDE2S09yZWltd1dBSktubVVzOUtqRm91VklhN1JtVjg5d08weld1MWRId09NeFRISVF1NldRQklDSnRMdlJSSExsVlBiZHk2ZTFTMEtranJEbDI3ZXQ3WHFHSFhyTVJ1OS9SY01sdUlyblMyc3ZiVS9vOG0zb2w4djNicjBQQ3dXYzE5VXdBZ1ppYUt1TnpLU1BuQWYyK0loY3Bla04wOVZTb1cvYnhtMDJON1hXZnU3aVh6NnNpYXdjWkdxU01mL3Z3ZFZqMEFFQ0xIckFSQ3U4UWFKSyt5eldzOTZaS3g3U2EzMnJ6OUtkK2RPd0FBUzNOTXBRcXpkWS9KcXh6Zjk2dW1QdmpKaVE1c1h0dVFFbjB3amtNV0FKQVdHZHNLcVRmcjVzM2VZempkd3BVODFwZkwzN2c1UFhuUno4cyttWjU4dTMvRFZqdjZmcE4wdmswcW80ZDcxejE2SnNxMlN3Q1FCcFZUZjQ3WnN0TGhEamw4N1dHMzRMdndkZHl3eGVYWlRoYVhObTk5YWxnQUFJRlZDdFZVcVZneVM2RlF0OTRjeHprZEtLL1NIWDRaK0xPeXl0R240N2djREFEZEtsUDdwR2RneTFoR3lmTktWRmlkdTdNWnBUYVpMY0F6Zmw0MGMvMXFxWC85b1BrMndqbUptQkNGdmczYnNqUFhKODRLQU1DWGhVSjFxMXk2MVpzYmZNQjJDcGVRbUQ5cktGQmVkZjFxMFk3VzZJTDdWUXVVSFk5aU1qaVRXNTBsdHdLQTVxbkZEMnpNNzU0MHF4bFh3bFAyUEcvM3IwckZNVDh2NnFMTHdJdVZ2Tm5NN3FuUzJ5VUJBS3pvdmhaS0VmVGd5d2JKcTJ6eld2TzlSRHFNcTAwNFpBRUFQbVFXUDNDelhMclNaNnBLeUt1cXdIbFYzL3JCRzBxcHZkSmQxaW9sei9VL3RFMCsrZlhFQlFFQUxDblQ2TUgrclBzTENYbHNmTkM4eWhTcmkzMGJCdk5LUXJybmxTeVZReGFyMXYzR2V6WWpGQURBZmRSU1h6QloxV2dFSisvS3l2TjJ6QitIYjE0WDUxVTE1RllBc0lRbHgzeW9hUEtockhhYzBTQjUxZnl3eGE2NURMeVlHOGU0RUFEb1JKbWx2akJUTHBYN2NtN09sS3hkRXE3c0txWFdtaTFBWDNlS1BybCtkY3JrVmJlN01LK3F5YXFNM3RmMzhQYmJNNytlOExVOUNnRGRMTFBjRjNzRzNJc2hYd0t1MmRXL2ZrdHBacnAwMmMrTGJGNjFMcGZQbVMzSnNJdG5VcXcxSzltOUhMSUFnSHVXTFZSUlhBSytSeFg2QjdhOGFWZHVmbDYxWVdETHhibE14cTZxdXFGNTdWSUsvUnUydXBsMVg3akFJUXNBYWJmaUtQbzdubmRVUjVNTlpiVUtkcitxeTVyWExtWGZnejA5akFzQmtIb3JGcXF5UGNqZzZXZ0dHeW9aV3VNNHZodTIydWExMnV2S3k4Q0xWUTVaUEx6OXlXNDhtZzhBVGNrMDh5U3pQVGZXbTNXSGxWSlJiTGNGeTZ1bUo2OTBlVjVWa3pYL0l6M2Y5L0QyR3h5eUFKQkdUUlVxcXovcnZoLzJKZUI3Z3VWVmR0aGl0eld2WFFxSExBQ2tsZkx6NUlndUFjL1RNblp0OHZ3TzhXblRZM3RkTlRjM21vWmlWYUhVaUtlMXIxWlVBQkFHNWFueVJ4UHZqRWpNZkJXcVRXNmhZQy9zU25TT1hydDYzbmNldG1uYjF3dU9VbEYrWHdBQTI3ZmNjUTUvOVA3Wm94S2pwcmYrTExNMVZ6SlpWZDVrVlZHRis3dDZCd1l2M3l4UFh2SHpvaTV1WGdzQVNhSk1EUEYwNy9yQkMvWjlWMkt5NHFtLysxNmc5UkVkNGRGdzVlampadVhtaWs4ZmpaODdhb0tjMkpla0FKQXl5dXhnSGZON3RhZ1Z2Z3ZWZkVOWjlicEVKNnRWNXJnRXNQck8zZjFhcENRQWdDamxIMXk5K3BqRXhOZldYMDNQd0pheGlGb3J6VlBpOXVYeVdiLzlBTXZsMHEyQkRWc3ZtRzNVNXlTcTd3MEFZRDBXMTdXWlFJVXEydFpLQzNiMUQyeTVZSE14UHk5S1FmTmFBRWdDbTFkOVplMkdyV2MvTmUrN0VpSGZXMzgxdHJXU2FGMlNDR25IT1IwMHIxS2VGK1gySkFCQUpOY2pjaXJxdkNwd29iS3RsYlNPcUxYU1BZSHpxcDY1dVNQa1ZRQVF1ZndEUGF0ZmtBZ0YydnFydVZrdVhla3pwZFFzQUYySmlzbXJlbk41TVhtVnI0NE1OcS9xZStUUk0wcDcrOGlyQUNBNkpnYmFGV1ZlMVZLaHN2cXo3aStpYTYwMHoyWmhRZktxbVkvSHk3MGJ0bDR6cng4V0FFQlVLbmxWNzdwSDM1d3BqNGQrZmFubFFtV0xSK1NyS2t0VitnR2U4ZHNQY09iNjFiR1VOSzhGZ0haNlFHWDBFNWwxWDNnejdEbDZnVE9xZXFhU3hqRnl3dzJhVi8xeTR0MkQ1c09ZQUFDaXRDT0t2S3JsRlpWbFZ6bDlPVGRuU2xhMHE1YjUrMVUzVEY3bGV4KzA5NUZIejVKWEFVQzBLbmxWYnR2bG1la0pYNjN3VnZnencyR1BKNjUyMUtRU0ZYbGJEZVY1dTZkS3hhTDRSUE5hQUlqRnREZWIyVGxWZXJza0lRaGw2OCt5eDlVamJxMjBRRHZPOFNEbjlxZkd6eFZGNjVjRUFCQ2xuT3FaQzYzRlVtaUZ5cktYZ0tOc1dGdkhYYU15cHlXQUQ4ZlAyZnRWUlFFQVJNWnMxKzNldlAycFZ5VUVvV1JVTmZha2g4bXFicHR2TWZyMlJTM2tWUSt0KzhLWnU1bk1jK1kvWkd6ZGZ3RWdiV3hlRmNaSWtOQXlxbnFQNUhkZmluQm0xV2Q0bnJmalY2V2k3eE45bjkvKzVKQlpXVjBTQUVDVUpqK2RuZDA1SHc4RkUrclczOElmR24xcnBYdC9sK09jRHBKWC9mS0RuNHpwR0w5UEFFaXAvQU05UGFla0JhRnUvZFhFZGdsNFhuYVZxTWR1bGlmZkZKL01jdlJpMzRiQnZKSjRWbjhBa0VabTY4NXRwY1ZTSkNzcVM4VjV1azdKOE1iQlBRY2xnRFd6ZHcvU3ZCWUFJcVdVNTczNnNJbGNKSUJJTXFvYWsxV2RNRm5WdHlVbVFmT3FUWS90ZFoyNXV5YXZVaHl1QUlEb0JNcXJJbHRSVmY1d3JZL0VkRng5L3U4TG1GZE5YWG03NUlraXJ3S0FhT1VmN09ueGZXUTlrb3lxeHJaV2ltRVNjTDFzUnFsTk42Y256NGhQTks4RmdGZ00rYzJySWwxUldURmVBcTR3UlhGZjBMektEbHNVbXRjQ1FKUnNYdlhDSm5ldjIrd0xJaTlVY2JaV3F2UGl3MjdCZDJoWE10K3JsOGs4SXpFV1ZnQklvWnpUTTNlKzJhZ204a0psMlZXVmFGMlMrR1JieXF1MFBDTUFnQ2cxUGNJKzBveXF4clpXNnMrNk44eUNMODVKdTlsVlNxMDFlZFZaOGNtMit5Q3ZBb0JvVlZvc1BiU3RaUEtxeXlzOEx6NGI4N3RIN2FSZWlkZWhhMWZQSDVVQU5tOS9jalRHZ3lBQWtFWXJqZ1NKWmV1dlJyVm54TWFMbTl5Q0t3SG9UR1kvbDRFQklGSTJyMXEyeFZLc2hhb3k3RkRyb3NRcnF4MW5OR2hlcGJYZUx3Q0FLTzFZYmlSSXJJWEtVdTE1NDNmWE9NNkxFb0FkdGtqeldnQ0lsaEo5MEU1aGIvUzFXQTVUMUxPWGdQdHliczU4VzNFZlZOalZ2MzVMYVdhNmRObnZDMjN6MnY2SEJvZk05L3lZQUFDaW9JeHY5cTU3OU0yWjh2aG5yZ2pGdnFLeWJudnh0bGFxMGRvNUdqU3ZXbjNuTG5rVkFFU3I0UWo3MkZkVWxqMnVIbk5ycFpxMXBtZ1hlckpiM3JUZmc1OFhsczN6Qnpac3ZXREszWFBtejFnckFJRFEyWkVnL1E5dGswOStQWEdoOWxoYkNwWFZNN0JsTEtQa2VSWDNtNzZTVFVIdlYzMXkvZXBVMy9yQjIyWjV1bGNBQUZHdzE2YWVxQjloMzdaQ1pWYzBKcXU2YmI2bmRyenA3K29kR0x4OHN6eDVSWHl5ZVJXWGdRRWdVamF2ZWlLejdnc25iYTFvUzBaVmMrMXFNZTdXU2d1VW80OEh6YXRvWGdzQWtWc1lZZC9XUW1XcDl0MVR5bXJsbkpZQWFGNExBTkd6NXhnMmYvSHBnMjNiK3F1WktaZEtmVm0zWUJaNnJzVE41RlY5dVh3MlVEL0FqOGZMNXJYdm0rWHBjd0lBaUlBdTZ6dVpRMjB2VkZaLzF2MkZLVlQ3cEQxMjlROXN1V0FMcHZnME16MTVoYndLQUNLaHRaYi9NWFgxbmJkamJVcTduRWZ5dTArWTFjbTNwVDNLeXZOMlRKV0tKUW1BNXJVQUVMcmpIMzd3a3dQMms3Wm5WRFdPYnM4bDRDcVRWMldPUzBBMHJ3V0E4SmozMDhsUFoyY1AxMzZmaUswL3k3WldhdE1sNEhsSzNKYnlxdldEbDFYN3RpOEJvRnRvUFp2WitYSHAzRlR0Z2NRVUtxdHRsNER2Q1o1WFhiOWE2bDgvcU5vd2J3c0F1b1hKcGZSaG0wdlZQNWlvUXRYRzFrcjNtRUpqaXRVWnU4SVRuejY1ZnJYWXQyRnJ3YllBRVFDQVh5YytHai8zcDRzZlRFeEdWWFBIODlwMkNiaktiU1d2V2pNNyt3eDVGUUQ0WTNNcGJ6YnpjcU92SldwRlpkbFZWWC9XdldGV05zUFNMaWF2NnMzbHhlUlZGL3krOUY3eldubGVBQUROcU9SU1M0MmpUMXloc3N5MjIxamJMZ0ZYMmUzSG9IbFZ0WG50RFpyWEFrQVR0SDc1bzZ2dmpDejE1Y1J0L2RVb3JWK1NOdE9PY3p6SUNIdkw3TE1lMWFKUENnQmdPY2MvSEQ5M1pMa25KTFpRVFpXS1JWTmxpOUplN2hxVkNkUVAwRm96ZS9jZ2VSVUFOTFpjTGxVdnNZWEs4clErSk8ybWRHSGo0SjZERW9CdFhxc3ptZDAwcndXQSsyaFRnSjVkS3BlcWw4aU1xdWJUY21tcUwrZm1UTFZvZHkrOXZZSHZWMzA4WHU3ZHNQV2F5YnphZHpnRUFKTEc1RkpteSsrdm1ubHFZbnI5TGNWbVJLc2ROYWxFQmNxS1FsUzY3WGs3eW1hVkpBRjhmdXZYanByTTY0OEVBTkpPNmRNZi92emNzODArUGRGYmY5WjhZVkN2Uy91WnZNb0pmTC9xbHhQdjJ1MURoaTBDU0xWS0xuVm4xV0UvcjBsOG9iTHNKV0NkaEp4SHlYRFF2TXBpMkNLQWxMTXRrZzQwazB2VjY0aENaVmRWU3RwL1hMM3F0WWZkd3BBRU1IWGw3WktuNVJrQmdEUXl1ZFRVK0xtaStKVDRqS3JleHZ6dXlYWmVBcTdUVWw3MXVXMWZQMkwrUFY0VUFFZ0pzNUlhL1dqODNCNEpvQ05XVkRWSzYvMlNEQzNsVmZaeW05bW5MUW9BcElETnBmVGRWUWNrb0k0cVZBbTVCRHl2eGJ5S1lZc0FVa0tMcHc3N3phWHFkVlNoc3BMUVdxbk9pNjNrVlRvNUswUUFpSWJ0NHpleGRCKy9aaVQ2d204ajl0SnRYelkvWkZZMGowbjdyYldOWjNzR3RweTBYZC9GSnp0c2tlYTFBTHJZSlJOMS9HZHBVY2V0cUN5bHZmYTNWcnJIWGUwNHIwbEFOSzhGMEkycWZmeWF2dFM3bkk1YlVWbDIrbTV2THEvYU9nbTRqdmsraHZweStSczNweWN2U2dBUHJmdEM4VzRtODV6NWM5cmRmUU1Bd3FDMVVvZW1Kczc2bnVuWFNFZXVxS3pFWEFLKzU4Vk5ic0dWQUd6eld2TS9CSmVCQVhRSGUxL3E1KytFdGxQVWtTc3F5MlpDdmJuQkI1S3lxakxXMnFuRVFmT3E2ckRGMitSVkFEcVozZkl6a1Vhb2pRMDZka1ZsMlZXVnFkd2xTUTUzamVNRXZzaHI4eXJsZVVub2F3Z0F2bFh1UzgxbUFsM3FYVTdIcnFnc3UzTHB6N28zN0VwR2ttTlhLM25WaG9FdEYrY3lHYnVxMmlRQTBEbEN6YVhxZFZRTHBhVnN6TzhlTmNXcUlNbFJOaXVqSFZPbFlra0MyUFRZWHRlWnUzdEoyai9hQkFDYW9qMDUrdEhFVHlJNWtkM1JXMzgxQ2JzRWJHVzFjazdiV1ZvU1FPVXlzTWRsWUFDZG9aSkxSVlNrckk3ZStxdVp2d1RzRmhMU3NIYWVrazJybEZwcnRnRFBTZ0F6MDVOWDF1WHlPZlB2MU83cHhnQ3dERDJ0WjFmOXU1bnllR1NubHJ1aVVGa1BadDNMU3FubkpWbDI5YS9mOG91K0FYZk1GRlB4NjVQcHliZjdObXg5d3V6UDVnVUFra2Q3eXZuREtIS3BlbDJ4OVdmOXFsUWMwMXFma0lUUnV0SzFJbkNoMFpuTUFidXNGZ0JJR0pOTHZSN21mYW1sZEUyaHN1NW9mU2hobDRBdG0xZWQyamk0SjlEQmxXcnpXdHNlWHdzQUpJVDlBZnBmNTJaak9SL1FOVnQvVmdJdkFjOVRsYVBtQTcwRGcyZHZsdjB2am1oZUN5Qlo1bk9wajB2bnBpUUdYYldpc3FxdGxhWWxlZXpzcW1jMnVRVUp3bDRHRnFWUEN3QzBsOW5ra1pkYm1TL2xWOWNWS2pzZVhvbCtXUkpJT2ZxWXRKQlhyYjV6bDd3S1FGdlpYS3J5ZzNPTXV1TENieU1iODd1dmlsTEpPeTJuVmRHc2pQWmN1M28rVU9iMCtlMVBEcGtYL2pjQjBJMlMvcDZzUDUyZFBXd1hCQktqcmkxVVpvdXRvQjFuVkpMSjl2UTdORlVxQ2dCZ2VWMWJxS3dFdGxaYVlBcVZiZHc0U3JFQ2dPVjFYVVpWTDRHdGxSYVkxZDRwNFNJdkFLeW9xd3VWV2EwVVJldWtidjlsdGNvY0MzcS9DZ0RTb3FzTGxhWG1MOHNtazlJRjgrdXJRWStzQTBBYWROV0YzMFpteXFWeWJ5NnZFbmNKK0o1ZHBwaitYVi9XTFFYcEJ3Z0EzYTdyVjFSVzlSSncwbG9yTFRCNVZVdjNxd0NnbTNYOWlzcEtiR3VsZTdMbVo0WXY5NjNQbjd3NXpYMWVBS2lYaWtKbDlReHNHVnNsOHB5b2hFN05WZUthWC8rbGYyRExSYllBQWVDZTFCUXF1NnJxejdvM1RLRWFsdVI2MnVaVnEweGVkWXRpQlFBVnFjaW9hcVpLeFJPaWRWRVNySnBYNVFRQVVKR3FRbVVsK1JKd2xidEdaZXo4S2dFQXBHanJyOGJrUDZXK3JGc3dXNEN1SkJWNUZRQXNTTjJLeXVxQVZaWDFxdmxuZDViTHdBQlNMcFdGeXJaVzBscWZrSVFqcndLQWxCWXE2NDdXaDVKOENiaks1RlhPTWZJcUFHbVd1b3lxcGdNdUFjOVQ4cGo1OVY4ZU5IblZwK1JWQUZJbzFaMjdUZjZUWGUyb3EwcFU0cmZYUE0vYk9TdHlxY3o4S2dBcGs5cXRQOHVPVTFhaVg1WU80TXpQcnlLdkFwQTZ6RUtTeWlUZ3E2SlU0cHZDYXBFVDVuK3cvZGV1bmhjQVNBc0tsYkhKTFJTMDR5UjF3T0ppaDgwL1J3VkExekUvaEdyQmZTaFVWV1pWTldwV1ZRWHBEQ1VCZ1BoTks4OTdkcXBVTEVtTVZna3E3Q1ZnM1RtRnloVUFpSityVlNVdjN5a3hTdTN4OU1XcXJaV2U2SVNzQ2dEYVJzbm12bHgrNE9iMDVGbUpTYXBQL1MxbVZsVUhCQUN3a29NMjI1ZVlVS2pxek8rN2FnNHFBTUR5bEhhY1U2Wll1UklEQ3RVaXR6MlRWU1cvdFJJQXRGdE9xOHd4aVFFWjFTSWQwMW9KQU5wTmlkdWJ5NHZKcXk1SWhGaFJOWERIODQ2SzFpVUJBQ3hIbVIvcVg0dzZyNkpRTlZCcHJkUVpNNnNBb04xc1huWE05azZWaUZDb2xqQlZLcDR3cTZxaUFBQldrbCtqTXFja0ltUlV5K2pQdXI4d0M5dDlBZ0JZbnNtcituTDVHeWF2dWlnaG80WFNDanFzdFJJQXRKTzJJNGwrVlNxT1NZalkrbHNCV1JVQU5FM1prVVJoNTFWcy9hM0F0bGJxemJxdVVtcElBQUFyeVdXVTJtaTJBTTlJU0NoVVRUQloxV1d0Wko4U3RWWUFBTXN5bWRKUW1Ia1ZoYW9KWmxWVjVoSXdBRFRObm4vNFN2L0FsamZ0KzZlMGlJeXFTZllTTUsyVkFLQnBPZTA0NThQSXExaFJOWW5XU2dEZ1cyNlZVbXY3MTI4NU96TmRrcUE0bnU3VHh2enVxOHlzQW9DbWFhVzgvVEluSjZkS1JRbUNyVCtmbUZrRkFMNll0MDNuTmZNeDhBLzRyS2dDNEJJd0FQaWs1WktwT0w5MTdlcDVMVDZ4b2dxQVM4QUE0Sk9TSGViWFZ6ZTVCZkdMRlZWQVpsVjEzcXlxZGdzQW9GbGFlZDRlODdIb0o2OWlSUlVRV1JVQStGWVpZVzgrdW41ZXhQSDBnT3dsdHI2Y216WC8zWGNKQUtCWkQ1ZzEwbERmK3Z6Sm05T1RUYjJBUXRXQ25nSDN2WXlTNTJtdEJBQStLTmxpZnIzUlA3RGxvdm1oZjhXblU2aGF3Q1ZnQUFqRW5vOTQya1FvRjFabDNkS3RGWW9WR1ZXTHFxMlZwZ1VBNEVkbGhMMzVtRnZwaWF5b1dtUlhWZjBEN2pWUmFsZ0FBSDdrVm9uNm9zbXIzbHd1cjZKUWhjRHNzWTcxWmQyQ0tWYXVBQUNhcCtTTDV0Y2JENXE4NnRNbHRnRForZ3NKbDRBQklCQ2JWNzFnL2huS0xuRVptRUlWa3FsU3NTaGFGd1VBNEZmT21iOWYxWEFrQ0Z0L0llclB1cjh3MjMvN0JBRGdWMlVrU0Y4dWYzWnhYa1doQ3BISnFrcTlXZGRWU2cwSkFNQ3ZyMGlEKzFWcy9ZWE1NVmtWazRBQklKQmFYcFd2ejZzb1ZDRXpXVlhKL0xkK1hRQUFRZVMwY3Y1RzZ2SXF0djRpMERPd1pZeldTZ0FRa0pMTk5xL3FIUmc4ZTdNOFNhR0tBcTJWQUtCbFh4R3RMdmRudDF4aEhsV0VOdVozWHhXbEFvOWZCb0NVbTFhZXQ1T01La0phNjhNQ0FBZ3FxMFcreVlvcVltWlZOV3BXVlFVQkFQaWo5VDllbXh6OUxWWlVFYU8xRWdBRW9TZk4rK2UzN0djVXFvaFZXeXVOQ2dDZ1dWcDcrdEQ4ZFI4S1ZTek1Ud1VIQkFEUURHMHlxWmYrdVZROFUzdUE0K2t4bUNtWHluMDVOMnRLMWk0QkFDeERUMTY3T3Zwcy9TT3NxR0p5MjZPMUVnQXN6K1JTbnY3YTRrZFpVY1dFUzhBQXNDeXRsRDQ0TlZtOHNQZ0xyS2hpZE1mempwcFYxYlFBQU9wcDgzK3ZUMDBVLzIrakw3S2lpcEZkVmZVUHVOZEVxV0VCQUZSVmNxbHZMUFZWVmxReG15b1ZUMml0THdrQVFPd3VVNk5jcWg2RnFnMGNXaXNCZ0tVZG0wdFY3MHN0aFVMVkJ0Vkx3RVVCZ1BSYU5wZXFSNkZxRTFvckFVZzNQV212N1RUelRBNVR0TWxNdVZUcXpicXVVbXBJQUNCRmJDN2xlUHFySDVlS1U4MDhueFZWRzVtc2lrdkFBTkpHSzFFdnJaUkwxV05GMVVhMnRSS1hnQUdrU0NXWHVuWjExRmYwd1lxcXphcVhnRmxWQVVpQjVuT3BlcXlvMm96V1NnQlNRaXRQLzFhenVWUTlWbFFKWUZkVm92V2tBRUIzTWx0K2NzaFBMbFdQUXBVQTVWS3hyTGtFREtBN2FWT2xUbHk3ZXY1MUNZaENsUkQvWENxT2NBa1lRUGZSazJiWHFLVWZ4Q2xVQ2NJbFlBQmR4dVpTWDdPN1J0SUNDbFdDVkZzcmpRb0FkTDdLU1BtZ3VWUTlDbFhDbUZYVkFRR0F6bGJKcGFhdW5nOWxsNGpqNlFsakx3SDM1ZHlzS1ZtN0JBQTZraTQ1bmo1ZzM4OGtCS3lvRXNoZWlPTVNNSUFPcFQxUFB4dkdsbDhOaFNxQjVvTkhGZmdvSndDMFNTV1grbFdwT0NZaG9sQWxWTFcxMHJRQVFLZlFNaEpXTGxXUFFwVlFkbFdsUkw4c0FOQVI5S1RTWGlTTkM1UWcwUjdKNy81SHBkUU9BWURrMHNyejlsU3UyRVNBRlZYQ09iUldBcEJzdGZ0U1JZa0lLNm9Pc0RHL2UxU1VLZ2dBSkkzV285Y21SL2RJaEZoUmRRQmFLd0ZJSnB0TFJkK2tnQXUvSFdDbVhDcjFabDNYWkZWREFnREpvTFduOTE4ckZkK1RpTEdpNmhBbXErSVNNSUNrcU9SUy8xd3FucEVZc0tMcUVMWVZDWk9BQVNTQzFwZE1MdlZmSkNhc3FEcEk5Ukl3cXlvQWJWVEpwYjRsTVdKRjFVRnVsVXUzcXF1cUp3UUEya0FwZlhCcXNuaEJZc1R4OUE2MHlTMjRBZ0J0RUdhejJXYjlmeE1NU09mK0VGdjRBQUFBQUVsRlRrU3VRbUNDIiwgImVuY29kaW5nIjogImJhc2U2NCJ9LCAiaGVhZGVyc1NpemUiOiA1NDMsICJib2R5U2l6ZSI6IDEyNjQyLCAicmVkaXJlY3RVUkwiOiAiIiwgIl90cmFuc2ZlclNpemUiOiAxMzE4NX0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogMi45MzUsICJjb25uZWN0IjogNS4wMDIsICJzc2wiOiA5LjIxLCAic2VuZCI6IDAsICJ3YWl0IjogNS45MDQsICJyZWNlaXZlIjogMy40OTF9LCAicGFnZXJlZiI6ICJwYWdlQDcwNjgwZmM3YzUzNTkwNDgwMTExYTMzZmJiZDQ0Y2NmIiwgInNlcnZlcklQQWRkcmVzcyI6ICIyMDUuMjM0LjE3NS4xNzUiLCAiX3NlcnZlclBvcnQiOiA4MCwgIl9zZWN1cml0eURldGFpbHMiOiB7fX0sIHsic3RhcnRlZERhdGVUaW1lIjogIjIwMjQtMTAtMzFUMDI6MzE6NDAuMTUwWiIsICJ0aW1lIjogNjEuNjg1LCAicmVxdWVzdCI6IHsibWV0aG9kIjogIkdFVCIsICJ1cmwiOiAiaHR0cHM6Ly9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9iZy9OYW1lU2lsb0xvZ28ucG5nIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMi4wIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogIjphdXRob3JpdHkiLCAidmFsdWUiOiAiaW1nLnNlZG9wYXJraW5nLmNvbSJ9LCB7Im5hbWUiOiAiOm1ldGhvZCIsICJ2YWx1ZSI6ICJHRVQifSwgeyJuYW1lIjogIjpwYXRoIiwgInZhbHVlIjogIi90ZW1wbGF0ZXMvYmcvTmFtZVNpbG9Mb2dvLnBuZyJ9LCB7Im5hbWUiOiAiOnNjaGVtZSIsICJ2YWx1ZSI6ICJodHRwcyJ9LCB7Im5hbWUiOiAiYWNjZXB0IiwgInZhbHVlIjogImltYWdlL2F2aWYsaW1hZ2Uvd2VicCxpbWFnZS9hcG5nLGltYWdlL3N2Zyt4bWwsaW1hZ2UvKiwqLyo7cT0wLjgifSwgeyJuYW1lIjogImFjY2VwdC1lbmNvZGluZyIsICJ2YWx1ZSI6ICJnemlwLCBkZWZsYXRlLCBiciwgenN0ZCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJwcmlvcml0eSIsICJ2YWx1ZSI6ICJpIn0sIHsibmFtZSI6ICJyZWZlcmVyIiwgInZhbHVlIjogImh0dHA6Ly9va2F5dGkucGljcy8ifSwgeyJuYW1lIjogInNlYy1jaC11YSIsICJ2YWx1ZSI6ICJcIk5vdD9BX0JyYW5kXCI7dj1cIjk5XCIsIFwiQ2hyb21pdW1cIjt2PVwiMTMwXCIifSwgeyJuYW1lIjogInNlYy1jaC11YS1tb2JpbGUiLCAidmFsdWUiOiAiPzAifSwgeyJuYW1lIjogInNlYy1jaC11YS1wbGF0Zm9ybSIsICJ2YWx1ZSI6ICJcIldpbmRvd3NcIiJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLWRlc3QiLCAidmFsdWUiOiAiaW1hZ2UifSwgeyJuYW1lIjogInNlYy1mZXRjaC1tb2RlIiwgInZhbHVlIjogIm5vLWNvcnMifSwgeyJuYW1lIjogInNlYy1mZXRjaC1zaXRlIiwgInZhbHVlIjogImNyb3NzLXNpdGUifSwgeyJuYW1lIjogInVzZXItYWdlbnQiLCAidmFsdWUiOiAiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEzMC4wLjY3MjMuMzEgU2FmYXJpLzUzNy4zNiJ9XSwgInF1ZXJ5U3RyaW5nIjogW10sICJoZWFkZXJzU2l6ZSI6IDY0MSwgImJvZHlTaXplIjogMH0sICJyZXNwb25zZSI6IHsic3RhdHVzIjogMjAwLCAic3RhdHVzVGV4dCI6ICIiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8yLjAiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiYWNjZXB0LXJhbmdlcyIsICJ2YWx1ZSI6ICJieXRlcyJ9LCB7Im5hbWUiOiAiYWNjZXNzLWNvbnRyb2wtYWxsb3ctb3JpZ2luIiwgInZhbHVlIjogIioifSwgeyJuYW1lIjogImNmNGFnZSIsICJ2YWx1ZSI6ICIwIn0sIHsibmFtZSI6ICJjZjR0dGwiLCAidmFsdWUiOiAiMzE1MzYwMDAuMDAwIn0sIHsibmFtZSI6ICJjb250ZW50LWxlbmd0aCIsICJ2YWx1ZSI6ICIzMDY2MSJ9LCB7Im5hbWUiOiAiY29udGVudC10eXBlIiwgInZhbHVlIjogImltYWdlL3BuZyJ9LCB7Im5hbWUiOiAiZGF0ZSIsICJ2YWx1ZSI6ICJUaHUsIDMxIE9jdCAyMDI0IDAyOjMxOjQwIEdNVCJ9LCB7Im5hbWUiOiAibGFzdC1tb2RpZmllZCIsICJ2YWx1ZSI6ICJNb24sIDI3IEZlYiAyMDIzIDA4OjU0OjM2IEdNVCJ9LCB7Im5hbWUiOiAic2VydmVyIiwgInZhbHVlIjogIkNGUyAwMjE1In0sIHsibmFtZSI6ICJ4LWNmLXJlcWlkIiwgInZhbHVlIjogImZjYTRiNTRlMmQ5ZGIyY2ZkMDU1ZTg5Y2ExNjdkYTZiIn0sIHsibmFtZSI6ICJ4LWNmLXRzYyIsICJ2YWx1ZSI6ICIxNzEwNDQyNTc0In0sIHsibmFtZSI6ICJ4LWNmMSIsICJ2YWx1ZSI6ICIxMTY5NjpmTi5mcmEyOm5vbTpjYWNoZU4uZnJhMi0wMTpIIn0sIHsibmFtZSI6ICJ4LWNmMiIsICJ2YWx1ZSI6ICJIIn0sIHsibmFtZSI6ICJ4LWNmMyIsICJ2YWx1ZSI6ICJNIn0sIHsibmFtZSI6ICJ4LWNmZiIsICJ2YWx1ZSI6ICJCIn1dLCAiY29udGVudCI6IHsic2l6ZSI6IDMwNjYxLCAibWltZVR5cGUiOiAiaW1hZ2UvcG5nIiwgImNvbXByZXNzaW9uIjogMCwgInRleHQiOiAiaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQnR3QUFBR0dDQVlBQUFENGpTWG5BQUFBQ1hCSVdYTUFBQllsQUFBV0pRRkpVaVR3QUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFIZGFTVVJCVkhnQjdkMWRiQnpubmVmNy8xUFZWSnpZcHBvSDUzaHNrNFpLT1l0WllKeUJLT3pGSkh1alZnS2NDV1l0cW1sRm52RzVpTWlONTlhaWZHNE9aZzhpS3NBZW5KdTFxTndtR1ZLNTJFeXNTS1JleG5BR21LaDFzOGtBT3hDRlNRYTdnMHpVZ2lWWjQxa3NtNVE5c2RSZHozT2VwNW90VTlZYlg3cTducXI2Zm94bU4ybUtvdnFscXZyNTFmLy9Gd0VBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBTWd6SlRueVZGU05tbmRhb3lZTWRnUkdJaU9xTEtJalkxVGsvcjhLcEN6R1hnQThrakZTdDFjTnBVeERUT0N1NjFwSlBSQjlwVlFxMVQrcEw5UUZBQUFBQUFBQUFBRGNrOW5BclJ4Vnk3ZnZ0Q29xQ1BiWVlHMVVsQmtsVEFQNlFJa040c3lpRXJVb1NwOTlwbFJhYk5RWEdnSUFBQUFBQUFBQVFFRmxLbkFyalZRcklycGlqTm9qWWlvQ3dCT21abCtYdFZBRlo1czNGaFlGQUFBQUFBQUFBSUFDOFQ1dzY0UnNXc3NocFNRU0FMNnIydzNMUW1rZ09FSDdTUUFBQUFBQUFBQkFFWGdadUxsMmtTc3RmVWdaVmFXU0RjZ3VZMlRSQnVVejhZMXpKd1VBQUFBQUFBQUFnSnp5S25CelFkdEhMVDFsUkE0emp3M0lsYnJkM05RR0J0UXhxdDRBQUFBQUFBQUFBSG5qUmVCRzBBWVVpWm9qZUFNQUFBQUFBQUFBNUVtcWdSdEJHMUJjZHVNenc1dzNBQUFBQUFBQUFFQWVoSktTZ2VGOVUzZU16TnVnN2V2MjA2Y0VRTkY4V1d0VERRYi9kY1BjL3U5WEJBQUFBQUFBQUFDQWpPcDdoZHRBVkIzVlRYTmN4RlFFQU5ycUF3UEJYcXJkQUFBQUFBQUFBQUJaRkVnZmhTTmpNN3FwTHhPMkFmaU1xTm5VVjBzanIwd0xBQUFBQUFBQUFBQVowNWNLdDZlaWF0UnE2bmtqTWlvQThIaFV1d0VBQUFBQUFBQUFNcVhuTTl6Y3JMYll5SS9zelVnQTRNbktXcHNKOWN6djNqRWYvY012QkFBQUFBQUFBQUFBei9VMGNITXRKSTJvby9ibVV3SUE2L2VVVXVycjRlQy9MdXZiLy8ybkFnQUFBQUFBQUFDQXgzclNVcElXa2dDNnhSaFozTFl0R0tmRkpBQUFBQUFBQUFEQVYxMFAzRnpZMW16cWkwSUxTUURkdzF3M0FBQUFBQUFBQUlDM0F1bWlnYWc2U3RnR29BZVNJTjhGK2dJQUFBQUFBQUFBZ0dlNlZ1SG13amJkc21HYmtiSUFRRzgwQW1udGJkNTRkMUVBQUFBQUFBQUFBUEJFVndJM3dqWUFmVVRvQmdBQUFBQUFBQUR3eXBZRHQyUm1XMHRmSm13RDBFZUViZ0FBQUFBQUFBQUFiMnhwaGxzU3RqV3BiQVBRZDJVdHBYbG11Z0VBQUFBQUFBQUFmTERwQ3JkN1ladElKQUNRanZyQVFMRDNrL3BDWFFBQUFBQUFBQUFBU01tbUs5eGFUVDB2aEcwQTBoWGR2WnRzaXdBQUFBQUFBQUFBU0Uwb214Q09qTTNZcTZvQVFNcVVrdWZEd1g5ZDFyZi8rMDhGQUFBQUFBQUFBSUFVYkRod0d4amVOMlZFSFJVQThNZVgxVE8vdTJ3KytvZGZDQUFBQUFBQUFBQUFmYmFoR1c3SjNMYVd2aXhHeWdJQWZta01EQVM3bWVjR0FBQUFBQUFBQU9pM0RjMXdhemIxUmNJMkFKNHFNODhOQUFBQUFBQUFBSkNHZGJlVUxJMk1UUXR6MndCNGpIbHVBQUFBQUFBQUFJQTByS3VsWk5KS3NxbXZDZ0JrUUNDdDNjMGI3eTRLQUFBQUFBQUFBQUI5c0s2V2tra3JTUURJQ0MzaGNRRUFBQUFBQUFBQW9FK2UyRkl5SE40M0lhSW1CQUF5UTBYcW1kOWROaC85d3k4RUFBQUFBQUFBQUlBZWUyeEx5ZFZXa3E2NkxSSUF5SlpHL1BIS1RtblVHZ0lBQUFBQUFBQUFRQTg5dHFWa3M2V25oTEFOUURhVmd5ODhjMWdBQUFBQUFBQUFBT2l4UjFhNHJWYTNYUlVBeUM2cTNBQUFBQUFBQUFBQVBmZklDcmRtMHh3VkFNZzJxdHdBQUFBQUFBQUFBRDMzMEFvM3F0c0E1QWhWYmdBQUFBQUFBQUNBbm5wb2hSdlZiUUJ5aENvM0FBQUFBQUFBQUVCUFBhS2xwS2tJQU9TRVVzR1VsQ3RsQVFBQUFBQUFBQUNnQng0STNNTGhmUlAyS2hJQXlJOXk4UG5CUXdJQUFBQUFBQUFBUUE4OEVMZ1pVYlJlQTVBN0tqQlZBUUFBQUFBQUFBQ2dCOVRhVDU2S3FsR3pxYThLQU9TUVVucHY2L3FGbWdBQUFBQUFBQUFBMEVYM1ZiamRiV3FxMndEa2x0YXlSd0FBQUFBQUFBQUE2TEw3QWpjbFFzczFBRGtXVEFnQUFBQUFBQUFBQUYxMkwzQWJpS3FqOWlvU0FNZ3BwU1FxamJ4U0VRQUFBQUFBQUFBQXV1aGU0QmJmMWZzRkFIS090cElBQUFBQUFBQUFnRzY3RjdncHBTb0NBRG5IdGc0QUFBQUFBQUFBMEcwcStSaFZ5MkZUTHdrQUZFRDg4Y3FRTkdvTkFRQUFBQUFBQUFDZ0M1SUt0MUpMUmdVQUNpTDh3ck8wbFFRQUFBQUFBQUFBZEUwU3VHbkQvRFlBeFdHTVZBUUFBQUFBQUFBQWdDNUpBamNsaWdvM0FJV2hBcXA2QVFBQUFBQUFBQURka3dSdW9neUx6d0FLaEpNTUFBQUFBQUFBQUFEZEV6d1ZWU014VWhZQUtJNnl2UERxRGdFQUFBQUFBQUFBb0F1Q1Zrc2lBWUNDQ1ZXVEtqY0FBQUFBQUFBQVFGZVV0T2hkU2dDZ1dJeFJrUUFBQUFBQWdGU1VvMnI1RTNzVk42VnNWS3RzWWlsTG9PNTE0VEpLYlJlOXBpdFhJQTFselBLOXo3VnBxRkFhN3FZeXBVWTRJSTFQNmd0MUFRQWdKU1V4VkxnQktDSVRDUUFBQUFBQTZBa1hxSDNjbEVoTFBHcU0ycUdVaW14S0Zya1RZRlVnNWR0Ti9XbVlaZ0lYcU4xSEdmZGh6UmVNM1ArRlFJa3huZitsUlRkRnd1RXg5eTBObzZXdWxHblluOXN3WWhaZFdCZUl2dUtDdWVhTmhVVUJBS0FIU3NuT3JyTjNBb0NDVUVIQTdFb0FBQUFBQUxyQWhXdTM3N1FxSmd4MktLMHFOdVFhdFlGYTFQNi9TbFNTazVsUGIvZHlLZEpJMmY0ZG8wazRaMU03KzdIcS9qNWpVemNYekxsUXppNkZMdHJmcE83Q09HWDBsU0FvMVFuaS9GUWFxVlpzVUZzeFd1MXl6eXYzTlJmWXVtc2JyRFpzc0ZxM2orV2lmWWdYQndhQ1MxUTVBa2lUQ29mM1g3U2JwNG9BZlJDOTlKejhwK2szcExIOGtYem43YitRYTljL0ZDQWRwaGJmT0w5WGtDL3pTNlBTRFAyWnoyZWtJWDg4dUNEd3oveFNaSjhyRmZIRmE0TnpBZ0FBQUdSRUVyQTE0Nm9OT25acEkxVWJjRVdTZGNxK2Z6UEdCWEdMb3ZUWlowcWx4VVo5b1NIb3V5UmtNM3EvVVRMaEF0U04vTmtrVEZVeUU5ODRkMUx5eUw3MlF2dmFrNVFvRmRaYjF4ZHFBdUNoVkRBOGRsbUorTE00aWR4Njg0MHgrZlpiZnlMbHdhZVR6K3Z2ZjJoRHR4L0pEMC85VElCK3N3ZGdkWDN6M0U1QnZweStmZFErdXRQaUZYTkVEbXlmRWZqbG5aVUpDV1ZXZkhGZ2tKRzZBQUFBOE5wVFVUVnF0ZlNFTVdwUFVVN2VkK0ZOb0tSR0FOY2Y3am5XYkpuajlvN3ZScUJVdDVmcDNBVnZ6MWVqTU5SWEpUVnFMcjV4ZGxJQVBGU3cwYk1FZ0kxeVZXMS9mZW8veXR2VDM3b1h0blcrL3VmSER5Zi9iOGZJY3dJQSthU09KdFZVQUFBQUFKQXhMZ0Fwall4TkJ5K09YVzAyOVZVYlFCMHRVcWNzMTVyU2lFd1pFMXk4M2RSTDRmQytpK0h3MkNGM3Z3aTZhbUI0MzFTenBTOTNLV3h6SW51WmM0OFpqeGVBZmdseVVmSU5iN21xdHYvNjB4blo4NVV2UGZKNzNQLzd4MTk4VDc3OTF1c0M5SXZkOW5HeUFmcWxMSEV3TDdOTFBPY0FBQUFBZU0rMWl3eEd4ZzY3TVRTZGtJMzF3dzVWc1IvbTNQMWlROGpMN240aXpOa2E5M3dMaDErWjA2S085Nll3UkZYczQzVnhZUGlQNlBBR29PY0NBWHBnMThzN0gxclY5aml1M2VTdmYvNDlxdDNRTDRRZjZCK2xSbVV3UENvQUFBQUE0Q2tYZkxocXR0c3RmVlVabVNsU0pkdG11T28zZHorNThJM0t0ODF4OTlkSE5neXpTOVNIcExjaUxhWEw3akVTQU9naEFqZDBsUXZYWEtYYTN6NmhxdTFSWEp0SnF0MEE1TlNVL0hncHRjSEdBQUFBQVBBd0x2UUloL2ZQdXBhSlNjdEl4czlzd3FlVmIrNitMSTI4VWhFOGxndDRYZVdaRWVsbjVka2NqdzJBWGlKd1E5ZTRnTzF2LzJvbXFWVGJLcXJkQU9SU0taeGxuaHNBQUFBQUgzU0NOaGNTaVpnSlFaZVlDVGZ6TFJ3ZXUwcEYxYVBkYnBsWmtmNjNLcldQelR5VmlBQjZoY0FOVythcTJ0NmVmaU5wSWRuTmdLeFQ3YmFSdHBRQTRMbXl4T0dzQUFBQUFFQktrcGxaSTJNekJHMDlGOW5MbkF2ZUJvYjNUUkh5Zk1xMUxyWEpWMW9kWUpMS09pbFhxT1FFMEhVRWJ0aVNUbFhibTIvc2sxNTU4NDB4K2E4L25aRnZIdnlxQUVEbUthbkk2WlhqQWdBQUFBQjk1b0lmTjZOTmpCd1c5RXVrUlIxM0lVOXA1Slhwb2dkdjd0K2Z0QzVOVnhSODRSbGVBd0M2anNBTm0rSXF6djc4K09HdVY3VTlpcXQyYzMvZkQ5NStremFUQVBKZ1NrNHRWUVFBQUFBQStxQTBVcTJVaHNjdXUrQ0hHVzJwc1VGVGNMVG93VnV6WmJ3NEFWV3BvUERoSjREdUkzRERoaDE2N2F2eTYxOThMNVdLczBPdmZTMEorYWgyQTVCNUlmUGNBQUFBQVBSV3AzMmtNZnFpRVJrVitPQmU4RmEwR1c4dStFMnhsZVFEN3Q2SnFYSUQwRlVFYmxnM1YyWG13cTRmdkgwNDFabHFWTHNCeUFVakVmUGNBQUFBQVBTS3E5NzV5TTJxb24ya3J5SlpuZkZXbE9ETkdPUFZ2MU1GYW9KWmJnQzZpY0FONjlLWm8rWm10dm5DVmJ2MWVuNGNBUFJVTXM5dGVVb0FBQUFBb0l2Y3JMWm1TMSttcWkwVElrbUN0LzJ6K1c5eGFDYkVMK1hnODRPRnFqSUUwRnNFYm5pc1RsWGIyOVBmU3JXcTdWSGM3L1QyOUJ2eTY1OS9qMm8zQUJtbGpqUFBEUUFBQUVBM2RGcElNcXN0aTh4RXM2bXZ1dmx1a2tOSk8wa1BLV1VxQWdCZFF1Q0dSL3IyVzY5N1Y5WDJLQzRZL01kZmZDLzVuUUVnYzl3OHQ5a2wzZ3dEQUFBQTJEUmFTT2FEbSsvbTJrem1yZHBOYTcxSGZLUlVSUUNnU3dqYzhBQVhzUDJ0RGRxKy9kYWZlRm5WOWpqdWQ2YmFEVURtdUhsdWc4eHpBd0FBQUxBNUExRjF0R25ETmxwSTVrYVV0Mm8zNVcrd1ZaWVhYdDBoQU5BRkJHNjRwOU9lMGJXUTNQWHlUc2txcXQwQVpGU1ZlVzRBQUFBQU5zcTE2dE10ZlZIYXM4Q1FJNjdhTFhoeDdISWVxdDJNR0grN3VyUStHUklBNkFJQ055U1NxcmEvbXBFMzM5Z25lZEdwZHN0Q1Mwd0FhRk5INVowbHprZ0ZBQUFBc0M0REwrMmJNQ1pwSTBtTCtweFNTcExxeFhCNDdKQmttY2ZQMFhBZ3BNSU5RRmNRdUJYYzJxcTJQTFpoZE5WdTd0LzJnN2ZmcE0wa2dDd29TeW1jWjU0YkFBQUFnQ2R4WVp2V2l0YjB4UkRaeTF5ZVdreDZSU25lZ3dQb0NnSzNBdHYvaDMrUXU2cTJSem4wMnRlUzRPMmJCNzhxQU9DMTlqeTNvd0lBQUFBQWowRFlWa3g1YWpIcEZXTWFBZ0JkUU9CV1FLN3E2L1FQL2l5NUZLbnF5LzI3Ly96NFlhcmRBR1RCRlBQY0FBQUFBRHdNWVZ1eGRWcE1FcnAxVDZ5RndBMUFWeEM0RmN5YmI0ekpmLzNwVEZMZFZsUlV1d0hJQm5WVTVwY2lBUUFBQUlCVkExRjFWQnQxWEZCMGtRM2RMb2N2dkZLVmpGQksxY1ZYY2J3c0FOQUZCRzRGMFpsbDl2YjB0NUs1YlVYWHFYYkw2K3c2QUxsUWxqaGduaHNBQUFDQWhLdG8wazA5TDBaNGp3Q25MRUV3bjVXNWJrYk1vdmpxbjkvMTkzY0RrQ2tFYmdYUXFXcmI4NVV2Q2U3bjdwTi8vTVgzNU50dnZTNEE0QjJsUnBubkJnQUFBS0FjVmN1dWphQzlHUW13aHB2cmxvWFFUWW01SWw0eU5RR0FMaUZ3eTdGZEwrK2txbTJkdnYzV244aXZmLzQ5cXQwQStHaEtmcnlVbVRZaEFBQUFBTHJ2ZHRPNE5wS1JBQStSaGRBdEhnZ1h4RU5HQzlWdEFMcUd3QzJIWExqbUtyYitscXEyRFhGdEpxbDJBK0NsVWpqTFBEY0FBQUNnbUFhRzkwM1pXR0JDZ01kd29Wdnd3ajUvNS92VkZ4b2lxaWFlMGFaNVFnQ2dTd2pjY3NZRmJILzdWek5KeFJZMmgybzNBQjRxUzJ4RE53QUFBQUNGa3N4dFU0bzI4M2dpSTlMd1BUd3l5bmhXNVdacWN1dTl1Z0JBbHhDNDVZU3JhbnQ3K28ya2hTUkIwZFoxcXQxb3h3bkFHMG9xY25yRjM3TVZBUUFBQUhSZE1yZk5TRm1BSjFCdUhJSG40WkV1QlNmdEw5b1FiNmc1QVlBdUluRExnVTVWMjV0djdCTjAxNXR2ak1sLy9lbU1mUFBnVndVQVBEQWxwNVlxQWdBQUFDRDN3dUY5RThMY05xeURNWG82dm5IdXBQak90WlUwNW9oNHdCaFp6TVI5QmlCVFNvTE1TcXJhanIxQkdOUmpydHJ0ejQ4ZlRvTE43N3o5RjNMdCtvY0NBS2tKazNsdWUyVjhxQzRBQUFBQWNzbTFrbXcyZGE1YVNicVdoMHFwbW9sMVhVSlYxOXJVUllYWFJBZEw4dHYvdVN5TjJ1TXJuMTU0ZFVmN0I1bW8vWVU0Q2dJYlNCcFRWbUVRbWZiWEl5WEZxZ2kwd1ZGZDM3eHdURElpdm5GK0xoemVmOGorNWhWSmtkWjN4d1VBdW96QUxhTU92ZlpWK1UvVGI5RHVzSThPdmZZMUc3cjl2ZzNkZmlRL1BQVXpBWUJVR1B1R1VpZnozUFlLQUFBQWdGeHFObzBMMnlMSk1CY0UyUThMMnFoRlVhV2FmSERtbW16RnAzKytjMzFKUCt6N3lwV3lQRFcwS3lqRm8wcFV4UVZ4Tm9RYmxSeEt3alo5TjNQdkRlUDR6bVFRYkx1b1ZEclBjYU8xOSswM0FXUVRnVnZHdUdxckg3emRyclpDLzFIdEJzQUx5VHkzNVNrNXNIMUdBQUFBQU9US2FuWGJoR1NRcTJLemFjYU0xcW9tdDg1ZmtqUzBLK1ZjR09mKy9oUEoxem9obkdwVlZSQ01wbDFkMVMzSzZDT1pESTdzN3h4RzFYSGQ2ditNUXRkK1UzOXc0WVFBUUE4d3d5MURPdlBFQ052UzU2cmRtSnNISUYzcU9QUGNBQUFBZ1B4WnJXN0xHRk9MWTFQUk44NE5KZTBOMHdyYkhzV0ZjTGZtTCtrUHpoK0piNXpkRzMrOE1oUWJVelhHekNXVmVCbVV6RzM3NE1LQ1pGU3p2ckRZNzNsdTd2SE9VdnROQU5sRDRKWUJycXJxcjAvOVIzbDcrbHUwa1BSSU1rTnYrZzM1OWMrL0p6dEduaE1BNkRzM3oyMTJxVkR6Q1FBQUFJQThjOVZ0TmhhWWtNeG9CMjN4amZON3ZRdlpIc2NGY0RmUG45VTN6MC9xbStkMnhuRll5Vkw0cGwycnpod0VSMjZlV3pBUTdPN0gvVzYwbVhHUHR3QkFEeEc0ZWU3YmI3MU9WWnZuWENENmo3LzRYdkpZQVVCZnVYbHVnOGs4TndBQUFBQTVrSlhxdHFSMXBNaEU1b0syUjNIVmI1M3d6WmlxS09WdDVaZ0xwNHh1OXJVeXJKZGNwWnViUTllcjBNMDlWOTNNTmxmZEtBRFFZd1J1bm5JQjI5L2FvTzNiYi8wSlZXMFo0UjRycXQwQXBLQ2F6SE1EQUFBQWtHbFpxVzVMcXFzK1h0a1ozemgzVXZMbzV2bXo4Zld6NDNGOGQ2Y1JNK05iMVpzTHB6STV0KzF4N0wvSGhaMzIvajdTM2Z2YjFIUjhkemN6MndEMEM0R2JaenB0Q2wwTHlWMHY3eFJrQzlWdUFOS2hqc283UzZNQ0FBQUFJTE9hemJnaW5uT1ZRdWJtK2ZHa0pXUGV1UkRveHZrakxnaXkvL0pKSDRJM2QvL25MbXhidzk3Zk0rMXF0NjIyOTF6YjZqUy85eGNBL3hDNGVTU3BhdnVyR1huempYMkNiT3RVdTlFS0ZFQ2ZsS1VVempQUERRQUFBTWd5NVcwN1NkZVd6d1VZUmEwVWNyUEcwZzdla2hsa1Jiai9rMnEzVDl0N3JpZDhhN2M0TlRWajlIUW1ad29DeUkyU0lIV3VxczFWUkJHMDVZdXJkbk9WaWlmZitXdjV6dHQvSWRldWZ5Z0EwRFB0ZVc3dURUcDk2UUVBQUlDTUdZaXFvN3FwSS9HUUN6TzB0R3lBOGU2aUZKd0wzdXpWWERpOGI4SVlkVlFwK3o2c0QxemdwSDk3KzVnVXpjM3paN1hJMmVSMnVWS1dwNFoySmJlRFZ2dGtVMTFxaUZKMStlRE1OUUVBRHhDNHBXei9ILzZCdkgzc0RlWis1ZGloMTc0bWU3N3krelowKzVIODhOVFBCQUI2YUVyT3JDektxNFA1bktVQUFBQUE1RlRjMUllVStFbHBQU2tmRUxhdGxRUnZVWFVodUtzUDI5QnRXbm9vQ1R6ZDNMWWl0UEY4blBhL242bzFBRjZqcFdUS1R2L2d6d2piQ3NCVnUvMzU4Y01DQUQxblpFYm1seUlCQUFBQWtCazJiS3VLaDVJV2ZSOWNXQkE4cUw3UTBEZlBIWXZqdXp0ZDIwUHBFZVZPckdRT0dRQmtBb0ViQUFENVVwWTRtQmNBQUFBQW1mQlVWSTNzVlNTZTBjWXM2SnNYaXRmR2NLTldaNDcxWXI1YkVuamVPRWNIRXdESUNBSTNBQUR5UnFsUk9iMXlYQUFBQUFCNHI5bU1LK0lobzV2TWg5NEExMmJTdFg3c1ZyV2JEZThXQ1R3QklGc0kzQUFBeUtjcCtmR1NsMjFwQUFBQUFLeWhndjNpbVNRMG9vM2h4cTJwZGhNbG01NjU1aXJsYkhnM0xnQ0FUQ0Z3QXdBZ3IwcmhMUFBjQUFBQUFNOFpNeXFlMGJwSlpkVVd1R3EzdUhWMzkyWmJUR3B0SmdnOEFTQjdDTndBQU1pdnNzUTJkQU1BQUFEZ3A2aGFGcy9tdDFIZDFpVkp0ZHU1blViTXpFYittSnZiSnJmT1h4SUFRT1lRdUFFQWtHZEtLc3h6QXdBQUFQeFVhb21IMVcweUorZ2FmZVA4RVdOa2VsM2ZhOHdDYzlzQUlMc0kzQUFBeUw4cE9iVlVFUUFBQUFCZTBhSjNpVjhhVkZkMW43NTU3cGhTd2Q3SHpYVno3U2VOYmg0UkFFQm1FYmdCQUZBRVlUZ3JzMHRsQVFBQUFPQVA0MWM3U2ZzTExRcDZvblY5b2ZhNHVXNWEzOTFMSzA4QXlEWUNOd0FBaXNDOWtYODJuQmNBQUFBQTNsQ2l2R29wYVl5cUNYckh6WFd6d2RwblF6ZWo5UlJoR3dCa0g0RWJBQUJGa2N4elc1NFNBQUFBQUY0d1lyenFRcUhVdzZ1djBFV2ZDZDJNTmpQNmd3c25CQUNRZVFSdUFBQVVpam91N3l4NU41Z2RBQUFBS0NRalhnVnVjV3pxZ3Q1em9kdTJZTGMyWmtILzl2WXhBUURrUWtrQUFFQ3hsTUo1bVYzYUxaTkREUUh3cVhrMzUvQ3BzclJha1doVEZyVzZBRGFndG90K3hHSllJQTFwbXVYa3RsTDE1TnFvaGd3MDZ6TE9hd3daTVAvYlNKcHhXWXlPa3VmOG81N3ZzYm1XWEx2bk9jL3hqWEhibHVaQWRPOCtka0sxNDRIdjYyeFBqTDBPN0gzczd1ZlhubUdXRWg2dnMrOWErenAySHZWYWZ0aCtxMVN5citmUDF3V3BVTXF6R1c1eHZDem9qL3BDdzRpTUN3QjBTVG1xbGoreFZ5MzdudGJFOWpnZ1VNbXhnRkdQZmsrcjFPcHh2allORlVwRG1WSWpISkRHSi9XRnVtRERDTndBQUNnYU44OXRNRHh1YjAwS1VDU2RSVy9SbyszRmJtVVh3STFkbkxRWHNhOEw3YjZwMmU0QnNiWVBoRGFQL3BudXo0U2RUOHluMTlwKzhmU0tlMmZqRnNzYjdVVk5VNWVXdVNJcXFMT0lqcjV6ei8rN1ljVytBOXlUUFBmRnVHcG4rN3h2cm5rT3k2T2Y3L2M5ejFlZjQyZFdHcUx0Yzl1MUh3dWtKaTI1SXFYV1lxR0R1SGMrR3BVQnM4ZmVMNk4yK3pJcWdZbVN4WTFRZitZYkgzSS9QN0E5TWUzdGlCSjNQeS9hYmRXaVhUU3BKL2Z6d1dkcmdtSkp3dkZtWmMzKzY5UG5sM3ptZGV3ODZyWDhzUDJXMnc3Yzkxd1Q5eHBlWko5VlVLV25sZ1FBNEsybm9tclV2Tk1hTldHd1F4bDN6Q2xsWTQvdFZTRGwyMDI5R3FvRjk3Mm5WVzZYcng3MUUxZi9SNkRzNFlVN090RHR0d2pEWSs3enVnM2s2bUtDaHYwN0ZwWFJWNEtnVkcvZVdPRFk0QkVJM0FBQUtLWUpPYjE4UlE1c254RWdqMXk0MENxTjJxUGRYY25DdCtpS2ZkOFFmYnJvdmJxWXJhUzNsQm45OU8rVDFhTnYzUWtxMmd2b0xia2syMklYVXRRRjZKYk9heUF3KysxbjFlVDVmKy9kbjVHdWNHM1Eycy94VWZ2enE4bWJlaGZFL2VSMnpiNjJhaEtyczdsZnFPOEViTWIrKzEySWFld2lSN0taV2QyK2RPT3VidC9QRlh1cmtvUW83bjd1YkVOQ1dSQnBuV1g3a1ROckEzTGw5bUgydWFXYjVYWlF0bWIvMWFXWDhqMmZQdGVjNm9QN0xQdTYxbmFmVmZSZ3ZadWlhbG1hV2dBQWVCaFhzZlpSUzVMM3MwYXJYZmJZdnRKMG9Wb1F0RU8wMVdNQ3RYcXoyOXBWMk1xZHBPcitqcXJZVk0vR2NVa1laLy9DbWhLMWFMUytOUEM1MGlJVmNXM0szams5ZUNpd1hxM3Jad1hGVVJyWkwvQkhmT05jcjVkWjBXK25ieCsxTy94cHdYbzFKSWgzRjNLUjdwMlZDYnRvTlN1K09EREk5cWdiVHQydVNHQ0ROUlhzYVM5OCt6VVQ1WW5NdlFEdXJQeng0SUlBRzVWVWNZWjJrVndkOHVZMTRLcmZqQTJGZ3ZoRWJ2WTNuVzJOdVB2WmsxWndidnNScUJsUnpVdUVieG0xZGg5bTdvVmUvaktxUnVEYkJjOVhvekRVVjhVajhkM1didm5uZDZsY0FIeVYrblpEemNVM3p0SXRwNGRLSTlWS0VyQVo1ZDdYVmlRNzZ2YjVVUk1kbjMzMmM2VmFvNzVReUpOenFIQURBS0M0eW1MQ2k4eHpRMloxd29YUUxrNHFYYlVMbE9YazNENlQwZlBKT3BWQ0pWZUJ1dUsrc0NES1hacG5xU1RZcFBtbFNMVGR6cVZud1FicVI2VFhrb1Y2czk4R1crNWtnckpYcndHVEJGSlQ5bkdZc3Mvck9kSHFaQ2JiSVNaenNrcUhra3EySkF6eDdEd0p0LzB3WnM3dTF5VzVuNFA0R0NGSUJuUmV1OHErZHJPMkQzT1ZjRm9xSXVHTS9PUzJxN2FjSTN6TGgzQWczQkc3bHFKQWp3VXZqcVVXR2ltbGFvUkc4RWtTc2htOTM5aGpBbU02YlNFejk3NDJzci96aEFUQnhPMm1xNExiVjNNQjdjQkFjS2xJMVc4RWJnQUFGRmw3bnR0UmU2djNDOEpBTjZ5dDRORjJzUzlwcjZVeitGNWtQWXhiMksvYXBhK0dYVUJmeUd4UWtiNUkwdFBiQ2pPM1dCL0swWHZWTVA2L0R1d2JjUHNtM0xXY0RGdVRtVmlZZDlzY0hVeUpVWWZiZ1VnbVROaUFjNExnelZPZDU1UUs5aWR6Mkp5czc4TmM0S3RsWmpWOHEwbWc1dVRWWjA0S01zbG12aFY3UlRzbTlGeTdWVjFhZENSQXlnYWk2cWhwNmFvOUREaDhMMlRMMWZ0YVZiRWZYQXRNQ1YvY3Z5QW1QaGwvY0NIM25Wd0kzQUFBNkFWalhHdW5LQ010N2Fia3pNcWl2RHJJd2dqODVYTUZUNisxdHlQdG9PTE1TbDBrbUdZaHMrQk9yMHlJU29LMktKTnZ5cFBLbVBDcTE0SFEycUF0cVFpWExDSjQ4MGw3UDlhdWtwUWM3OGZjNjl1ZEJIQm1aVnBpYzFKS2VvN25YcmFvUUVZRkFOQXpycHJOR0hOVU4xMkw4b0pReHMxL3E0YkRZL1ZBeklsd0lGeklhOVZiSUFBQW9BZFVRM1NjblJZVlJtYVMxbXVBVDl5QzkvenR3M0xtOWtXN1NPbmFBazVsYmk1YnQ3bXFWR01YTDgrczJMQmllWXJYYmNHNEJmc3p0eS9iVzdPcnJScXpiaUpwYlh6bW8wUGlDN2ZkT2IwOGJYK3ZxM1pmZmpRbjI1ejIvZnpqcGFxZy85cXYyODUrYktJdyt6RzNqUXJzYTZnZHJzK3l2M3FFV3o0dU5xcUtsQ3ZGUHQ0Q2dDNHJSOVZ5T0x4dndnWk9WNDNSRnpNMm02MmJJaTNxZUxPcHI0YkQrMmVmaXFxUjVBeUJHd0FBdmZLTklWY3FQeVBaVUpZNG1CZkFCMnNYdkxXWnVkY3VENTlLd2haMVBGbEVkOEViOG0xK2FmVGVnbjJuQlYxZWRFTGtVL1kxbnpiM1dzcFgwUFlwZHorWHdua3Y3dWVpV0J1MHNSK2JTSUkzOS93amVNdUU0QXZQSEJZQVFGY01ETytidXQzUzdoaHpWaVFYSjgxMWlabklZL0JHNEFZQVFDKzVGazdLWkdQb3VGS2pjbnJsdUFCcHlXZGxTVzkxZ2pkWDhlWlRsUkM2dzcwbXppelAySVhxeTdsZnNIZVZNRDladml5elMvMS8zWGVDa1NURXp2bDJ4OTNQcDFmbVU3bWZpOElGU2dSdEQrZWVmNzVWdFhyQUdLbUxaNVFLcHFoeUE0Q3RjYTBqWFVXYkxzSXg1cGJrSzNnamNFdFpZK1ZqUVRIVTMvOVFBQlRRK0ZCRDd1aHhVZEtRYkppU1Uwc1ZBZnFKb0czck9sVkNiaUdkNm9GOGNIUGEzR3VpUFVPc0dOeUpIOXR0dU5pdjUzQW4wQ3hlTUZLVlo0T0xoRzVkOXVtK0xQOEIrVmFzYlkzTS9zcG41ZExUZzBjRkFMQmhMalN5NGRIRmR1dElLdHJXTHduZUxnWXY3TXQwQnhjQ3Q1VDlYOVBmRnhRRGp6VlFZSzhQMVNXT2owbFdCQ0VMOXVnZmdyWnVxOTVyMjRWczZsVEh0T2UwRmU4MWtTekdoeGQ3dmg5eVZXMUpNRktnUUhNdEYyNFN1blZQNS9uRXZtejkzR3VkL1ZWQ0JjckxiaGhHWkNvY0hxTWFFUURXeWMxcEs0Mk1UYnRxclFMUGFOdXF5TzRYajd2S3dLeFd1eEc0cGV6a096K1RmL1dWUDVWcjE2bCt5cXRMUC84NytUZC9PQ1ZuZi9vM0FxREFEZzY1T1ZRbkpSdktFb2V6QXZSUzBzSnRoYUN0VjVMMmZDc1hDYzh6cGoxRGpPb1l0eER2NW9yMklneTZyNnF0NEdjY0o2RmJ5UHpXcmVENXRIVnVmMVgwYWpmamRTZU1tWUhoUDhyWDdGQUE2QUhYUHZKMlUxODJScWdPN283SUJaZWxrVmVtSldNSTNEemdXZzMrNzEvK1UvbldXeWVTY0FiNTRCN0xyeDM4RC9ieS84aVZYMTBWQUpCUVQ5bDMxSFhKQWlVVnpqaEdUeVF0dDFibVdaenNBL2M2ZHBWQ1AxNnFDdnptWGhjL1daNHJ4QXl4OVhKaDBHQ1hULzV3Qy9xbWRMR3dWVzBQNDdZVHpHL2RuUG1sMFVKWFNYWlR1OXJ0Y25MU1FRRVp2K2M5bDdXVTV2TXdVd2NBZW1WZ2VOOFU3U043dzVqZ2FOYXEzUWpjUE9LcTNWdzQ0eXJlM3ByK1B1RmJCcm5IekQxMi8rdnYvWi9KWTNucDU3OFVBTGpIelhNTDlMaGtoVHZqbUhsdTZLWjI5WTQ3QzRVQXFGL2NJbVlwbkNkQTkxaG4wVjRwMm5ZOXFOcTE1KzVQVnFxcjFZTlVhanhvcXFoQng2YTUrOHNGUkp3NDBrM2w1S1NEQWdiQVN1bHI0amRYWlhBNWZPRVZqdDhBWUkzT3JEYnQ5bC9vcFdRL2xKWFpiZ1J1SG5JVmI5Lzkvdmtrc0hIQnpZRnYvYi8yODNOeTVWZS9FZmpGUFNidXNYR1BVU2RrYzQ5ZFkrVmpBWUNIR2g5YUZCMGZrYXdJdzFubXUyRExPbFZ0Vk8ra3h3WG9WTEg0NS9US1JGS0Z5S0w5bzNYajVBODNLMUxKUE51Zng3SDNNeTFvbjJ4dE5TcDZaY3JleDVlTDlIeU1teVdmSzl3NnloSUU4MWxzN1FVQXZlQmFTTm9RNkNLejJ2cW03R2E3bFliSHZEOEdLd204NW9JYk4vdHI3Znl2UFYvNWt1eDZlYWVNdnZ4RjJUSHl2OW5iWDVUeTROT0MzbkdQdzdYMy8wa1dmM1ZWcnZ6OTFhUkZwTHNRckFIWUZEZlA3Y3pLZnJ2d1Z4SGZ1VVhnOW55WHZRSnNocHZWWm94ckN4Y0owalpsQTU2eUhCaWNGS1R2ZEZLNTVXWVk0a25hSjMvc2xzbWhqYzg1YW9jalZBOCtXV2QrSy92N1IwbGFrdHFBWExFLzZ6blhVdGJkMS9OTGUyVjhxQzU1ZDJ1aExpTmpqU3ljRkxEYTJ1dlF3RUN3OTVPNi9iMEJvSUJjQzBsdE5DZmZwTUMrZFpvS1hoeXJiTnNXalB1Nkh5Snd5eURYcHZDenJRcGRBT2RDTjNjZGpUeTM1dk12Q3RiSGhXZkw5ckw0cTkvWWNPMURxVi8vTUxsMklkczFleHNBdXVwT1BDbmJnb3QyUlNFUzN5WHpYWmFuNU1EMkdRRTI0c3p5akYyWk9VeWc0SlVKRzdvSm9WdktDSUUyeHAzOE1WaHljN0tPcmZ2UHVFb2tVNXEzMjZDS1lIM2MvdDdOZlB6am9RWEIvZHF0WCtlcFJ1Mmo1TDYyb2RzN1MrUHkybEFXS3NDMlNOWHNQem9yTFJ0ZGE2K3JwZUd4bWRKQWNJTGdEVUNSbEViR3ByV1JvNExVS0NXanJycndxYWpxNWNrZkJHNHBjNkZZTjZxa1hMV1Y4N0NaWVowZ3psM3ZlT201OXJVTjVTSjcyNGxlK3Azazh6eHpnVmxqK2FNa1JHc3NmNXg4Zm0zMWRpZFk2M1cxV3JjZWF3QTU4ZnBRWFU0dFRVb1FYcFJNVU1mdGdrZXRHQXNlMkxLa0NxQTB5MEszdDF6bzFyQ2hXM2JhMithSkM5dVkxN1lKWnRwdVcwNnVxOXFsSGJaZFpGN2JKZ3lFeDJYVzd1ODNVMDJZVjBuclY2RWxjaHBjNkJZbW9kdmV2QitER2pFMWxiRVp0NjdLd0M1NFZzUGhzZW40eHJtVEFnQTVGdzYvTW1lTWNCenZCM2Z5eDhXQjRUOGFiOTU0MTZ0akJBSzNsTDM1eGo3NXp0dC9JYjNrUXA2SEJYRVA0NEszOHZhbmszQW91ZGpiMjFkdmQvNi8wL21lRGhmYVBleG5iY2JEcXNucTcvL1R2ZHZ1MytPQ01zZFZwRFZXTDh1cllWWjlOVHh6MzlQNS96NTQ4NDB4KzFqL1NBRGdub05ETmJ1STQ2ckdNakg0VlVyaC9LWmJlcUU0N2xVQm1FamdzeWs1dlh5Tnl0VStJMnpibXZXMFBDUnMyNXJOVkJQbW1RdmJSR2FwMUU1VnVRaWhXeURCRlNOYU1paXlsemtYdXRscmdqY0F1VlNPcXVYYnpaWjkzeFJ3SE8rWFNFdnBZbW5rbGZIVzlRczE4UVNCVzhxKy9kYnJTU0QwM2UrZkZ4KzBLNzhFWGZiTmcxKzFqL1dmRUxnQmVKQ3JNRG16WEJHai9GOFlUQmJoUXRlbm5GWjBlRGlxQURKR0haZFRTNHRKK0kvZVMxcXNFclp0aVd0NWVHcXA4dGpuTEdGYkZ4aDNJaENCVzJmT0lueVErOUN0ZFgyaEZtWmtqdHNqUkxJbWVCc1lDQzdSYWhKQUhyaXc3YU9tdm1qRE5vNHYvVlEySnJobzl6OFR2cHowRVFoUzkvYjBHL0tEdDkvTWZWdkhJbkpWZ083eC9mUGpod1VBSHVtT0hyZUxpRm1wR3B0STVya0JuOVZlbUp3bGJNdVlNSnlWMlNVZXMxNXpydytqT0NEc2hpQjg5UDNvS2dnSjI3cWhMR2MrM2k5Rmx1elRGR0diWHpxaFcyNWY0OGJJbkdSZlpDOXpic1piT0x4L3RqVHlTa1VBSU1OYzJHWkVPTDcwMzF6NHdpdGV0R1ltY1BQRW9kZStKbjk5Nmo4bUZXOEViOW5uZ2piM1dQNzZGOTlMMm9ZQ3dHTzVlVzRtenRBc0pic0E1V1owQVIwc1RHYVhxMXg5TnB3WDlNNVBWcXE4UHJxcSt0Q1EyRzJIYU5mWlBUb3U3c2sxN05OOFZrNWFuT2YwT0RSUXdWbkpGVE94V25Wd05SZ1pPL3hVVkkwRUFESWttZGxHMkpZZFFUQTdNUHhIcVQ5ZUJHNGVpVjU2TG1rNytJODJwSEVWYjN1KzhpVkJ0cmpIN1BRUC9pd0oydHhqdVhiT0hRQTgxb0doT2ZzeEs3T1V5bUxDaTFURklPRXFTbGlZekRiWHB1L0hTMTZjRFpnN3lnYWFnUndYZEZkN3h0aW5rc3BydGtOZDViWUxmL25iSFZJMHljdzJua3RlY3llS3VPUFFISVp1cnExa2hycGViRVNrak15NHFyZmd4YkhMcGVHeDQxUytBZkJkT0RMR3pMYnNLYnVaYm1tZjRFSGc1cWxPeGR1dmY5NE8zL2IvNFI4UTNuaklQU2J1c1hsNytsdnlQLzcrUHllUEdZOFZnRTBMNG1OMkZhRXVXZENlNThhQ1ZOSE4yOUExVU1WdU81WVhKVnBMOW9TeG9ZVkoybXVocTh5bjFWZHUwVjBSa1BURUo2MEpLWkw1cEZYaHJNQi9icnNhQjdtc3pqWTZNeWZnYllwU01tcEVwcExLdDVHeHBmREYvZlBoOE5naHF0OEErS1EwTWpadDl6VzBnOCttY3JPcFV3M2RTZ0t2dWFxMzZLV3ZKUUdjYytubnY1UXJ2L3FOblAzcDM5anJxOUpZK1ZqUVB5NUkyL1h5emlSVTIvWHlGNmxDQk5CZDQwTU51OWd6bnB5MW00MDVXRk55Wm1WUlhoMzBZakF0VXVDZXM2ZVdqa2tRVXNHVGZlWFZxcUZqQXZpdmJMYzlGVGs0Vk12UVBqTjdqS2xJVWJZSkxyaDF6eVZraDFLamNucmx1QndZekZCYjlpZlQrdTdKTU53MkxVWGd0dDNLdUFyN3FsMGNsZURGc2NWQVNVMlVQdHU2ZnFFbUFKQ0NnZUY5VTlvSUozTmxXK1JDTnlsWGRrdWoxdmZLY1FLM2pIRUJqN3U4K2NaWThya0wzZXJYUDdSQjNOOGx0d25odXFjVHJpV1gzOXNwbFgvNys4elhBOUI3NDBPTG1Rb3dqTXpZUmFwTDl2ZXVDNHJwNE5DTW5GaytKRWJSMno3enpKVE1McDJReWFFOHRyTkMzZ1RoZmptOVRBVmhMN20ya3E3eU5lL2JoRTdZbHZuZzFqVHN2NkZ1ZzZpNi9hVFJ2cWlIUEhiRy9UdmJGK1hhaEJ1Ny8xWlovYmRQMmUzQU5UbXdQVDlWWWJmZXE4dncvcHA5bkNwU01LdlZiNk5pZ3FsdzJLMTVtWnBSYWlFUWZZVUFEa0EvREVUVlVkM1VuRXlhRDFINGhXZG40NGFNUzU4UnVHVmNKeEJ5RlZjZExuQnJoMisvU2NLNFRnam5ybkUvRjZwdHQ1ZFJleC91ZU9tNUpGaUxYdnFkNUQ2bExTU0ExTGdBNC9US0huc3JDek9WeXFzdGZYWUxpaXZXUit6aWQ4WXJBMWJidWJZWEtoL3piU2FTWktFeXM0dVRqME9WRzdKa0lxZXZRNzg4VzNLelMwNUlucG5TL09xMlBVUGNQa3ZWN08rOUtLRytaS08xK3BhQ1VSZXNscFBaYUR2YXJYQnQyS095Y2lLTk9pN3ZMTlhrdGFGRnlRbWwxREZqaWhlNFBVaFZsSDArR2duY0xLV0dhRlV6Z2FtRkpyalV2TEdRbThjYmdCOWNDOEptVStleVhYRmhLVlV0amJ3eTNicCtZVnI2aU1BdGgxeFExS21FKzZ4TzhPYXVyNzMvVDBrZ2QrMzlENVBQMjEvN01EY1ZjcDB3cmQyVzg3bjI3WkhuVmdPMkwwcDUrOU5VckFId1Z4QlBpZzdjR2NlUitDNm5MWDJ3QWE2dDIrbVZCZkUrSkhabi82dEZVYkpvRnhRWDdmcE5RejQzc0NqLzd2UFhaS1B1VzV4MGk1Sm05YUlpeVRTcTNMTHZnU3FYdGRvVkxkcTQ2eWpqZ1ZYS3Y3dHAzOGZ1dm41UXAzSW95dncyUVpsOFZ5K2ZXWjVwVjNobGdKR2EvYkFnbjkrMnNLbjkxdU8wdC9tTHE1ZXp5ZGZjZm01N3VNZit2WGJmN3RyK2VieTlLSVh6OXZmZG5aZDlWK3Y2UWkwc2FKWGJJNjIybjdRQlhGV0xKb0FEMEhXdGR0Z1dTWTRZOTE3QVNFTzVZMWJWdnYzQU55WEhyRkkyN1FyNFNLVitqTjFkeGdSSGJlaFc2MmVsTklGYndYVEN1Q2U1Wm9PNHh2TEg5NEs0eHZKSHlkY2M5L2x5OHJXUDd3dm42dTkvZU4vUFdGNzVlTVBoWFNja1c4dUZaWis5N2I2blU0SFdDYzFjWlpyN0drRWFnRnhvejhhYXpGRFYwSlQ5ZmM4bXdRdUs2VzU4UkQ0WFZ2eHF5V1ZjTzYyRnBBS2cyd3VVRDF1Y2RPYVhScVVwbzNieDcxQlNKWkE5VkxsbGpWdUVWOFplYkppOEhGL2EwSUt6ZTc1MktscmFDK3FSNENFNjJ4SjdYNGZ4bGFUOTgwYWN1YjFIdEI2MWoxR2x2WUNlcWFDeklubDFlbmxLakRvc1huUFBQWm1SRmQzL0V5SGFmOS9aMWN1a3ZMTTA0ZTIremJXV0hVemFzVTlLVGxEbDlnUUVjQUM2cURReU5tMk1aUG9rSXhldTJYMUh6UVpuTmExTlhjekFvbnh3WnVQdmY4dVZzancxdENzb3hhT2lqVHQrSFZXUzhmdkdCUE5QUmRYZG45UVg2dElIS2h3ZU00TFV0SzZmRlJSSGFXUy93Qi94alhOS2tDK25ieCsxdTlKcDhZRmJsUHZHNEY3WnF2bmxvL2JONDdSa1EwT0NlSGNtNXJtOXN6SWhvY3lLTHc0TTVtTjdORzlmZ3pydDEyQ3lNRDVuM3hnc3lLdlBYcEkwL1dncHNzK3ppb1RCMFl3RkdRMzduQnlTUEhDem1YU1l2NzdxU2FXTHpNbnQrR3hYRitGZEFLZkR3NnVoVUNTRnRocDBxS0RXOVcySno4SEZ3NnpFUTdtcmVtM1BiYnZzNzl5MkZJTzJKM0g3dG0yaDNhKzV0cTZlVWZaM2VuWHdwT1JFTUx6dnVCSTFKZGc0VjhsaEF6Z2J5aTBFRWx3aGdQTlR1bXZTcGhiZk9MLzE5K3RwZUw0YWhhRk84ZmhXemNVM3p1Ym1CSWZTU0xWaWpNN29lQVJUTThZRmJIWjdkK3Q4Nzk3N1B2OTErNXdicU5nOTA2SHNWbC8zN3pWUDRKWXlBcmRpSVhEekM0RmJEdVV4Y0hQT3JGek16S0pjTi8vZHZVVGcxaHZ6UzJYUndlWCtMOVI3RkxJOWlxdHdNV1pDZkZ5Z2ZCZ2Q3ODFGeFdxdUFyYytMc0M3QmZXbjdCdHFZeGQ2dlEwa2VzVHR4d0kxM1pkdGlidWZCNEo1NzJkbGFhbkt3Y0Y4dlhFOXMzSTFxWXJ5anNkQjIyZjUrZnpOenNsZjZ4RlZ5MkZMWHkzY2RyZzM2c25jUXgyZmZmWnpwVnFqdnBDdmt3Z3lpc0J0a3dqY3VtWjFicHNMMnlMSmlLUk5wRFp6MnNoQ1QwTzJSMWtOMzR4UlI1WEtWZ3RPbzgwUi9jSDVHZW14UUFBQWdOL3V4SlBKV1pwWm9Hd3dlR3A1V2xCTXJoV3ExbjE4OCtVV0ptM0l2cUozSmpNRWZRM2JIUGU3SFJpY1hHMHBWeGZmQlNGbkNYbGo3Zk44KzdHK0xNSy9iaGVyeCszZmRjY3VYS3VrbXE0STV1UnV2RE01YWFSZjJ4SjNQMzlqKzI2N0FIekU2LzI4VXBIa3lXbDduT0pqMk9iQzNydDZkOTllNTF2VmVmN0c5ampWbi8xYVdYVFNXaklmWENpa2RDNFd0VDBRMmVmcGhBVEIvTzJtWGdxSDkxME1Sc1lPdThWMkFWQll6YVp4RmR1UlpJQUwyb3pSMC9yamxaMDJORHFTU3RqbTNIcXZic1BxT1gzejNFNzdXMDJhaDg4ejlwSUsxTkYrYlBjSjNBQUE4SjFiME5CeGR0NXMyNE1ZT2JWVUVSU1RxNHJxK1FLOTYwa3ZFM1pSY2lnekM1TWRTZkMyZmFmM0MreFpxY1RMdFJTQ3RzOXkrNTlYYlFBVmVGSTkzZ3ZKRER3YmhMdEEvUFdVcW1JT0RzMGs0YWF2WWJ3eW1aN2JjUjlYOVNycXFIakZ2dGFObVVyQzN0Y3pXSm4xMnBBTnEvVmVqOEw1YXA2T1ErUDNMeXlJNk55MHlmU0hxaWdqTTgybXZocThPSGE1TkR4MmZHQzRtcDl0SFlBbnNzSDdSQkxFWjhDOW9PM21oV1BTcUhuekhqS0R3VnU1Mll4NzN1bUl3QTBBZ0N6NHhwQjlzeTA5TDMzdm1qQ2NsZGtsMnQ4VTFaMWVCY1QzZ2paWGhaTHR4U2ZmRjloZGxRREJlWHA4cTNSeDFXNjVDOTNzYTY4VmovZTFvdTF4WE5EaVFnc2Z0d2xldGw3Y0pCTjZOcVBGUHQ2eGZkeS9zZjJFWkpsdjRYek9qa1BqZ2RKVWxpb0lza1lwR1RVaVUxcjA1WEI0N0dvNHZIKzJOUEpLUlFEa1ZqbXFsdjA3QWVkaFRDMk83M29YdEgxV0VyeHRDM1liTVJsWXMxS1Y0SVY5UFoyUFN1QUdBRUJXQlBFeFVTWWJBNy9kNHR5ejRieWdtTnpDbTV1QjFEWDNLbjEyWno1b1c4dmRUeTQ4OURWTXA2MWtDanl1ZE1sVjZHWm1rdTNKSHljbnMvakQxOUF0WS9NNUhzbTNWcExHSHRPNXgvdTFvV3djMjYySEw5c0o5emdQbGc1TFh0UVhHdUcyWUR3ekxlYXpMWElWTDhZRUZ6dmhHNVZ2UVA1ODFOSXVjSW5FWTBicnFXVE80SzMzNnBJRmRsK2xiNXcvb2xTdzEvZVRSRnhyU1NsWGVuWmlEb0ViQUFCWjRlWmozZEhaZWJQdDVybWRYdTdwbVVQd1dldEVWNTZyV1p0cHN4bHUvcHlQUVlZeEZVSC90QmZmZDN0ZDZlSVcwNDNKY09odEE4MmtmZVQySTk1dVQ1SVRGdXkrM2krUlpKMXJKYW1VUHdHTWU3M2YxdGxzSWZra2Jqc2hQclJDTjFONXFuSnIxaGNXN2ZQbWlLQ2ZJaGUrZFNyZm1Qa0c1SU43SGR0QXlOdnFOaGRXeGJHcDZBOHVaTEw2dlhWOW9hYjEzYjEyUWFnbS9pcVhuaDdzMlhPQXdBMEFnQ3h4Q3pOeGZFd3lReDJYZDVZNEs3U0lYRURjaXJld01HUWE5OXE5NVhGQjhyTjhyQjVTYXBUV3NQMWlabXpRdGpzVHovWFFuUkhzYlN2VVIrdUU5ejYwajN5UzhhSEY3bFlKZDhGZi9uYUhaSmtPajlybmdCL2JzMDdZbHRlVFNKd0RRM01laEc1bEdRd3owQzVzL1Z6TExyc1FPeTFJUTlTWitSWU83M1BWYjRjSTM0QnNhamFOejJIYlloSlczVHJ2Ly9IcTQ5eDZyeDdmT0x2WDUzMldheVhjcS9iQkJHNEFBR1NObS8yVXBRcURVampQb24xQnZXWVgzSlJkNU40b3R6QytvbmQ2MSs2dDE1S3FBTS9hU3o0akJPYTk1bHBJdW9xcnJIQmh1dFllVks5c2hBczBzeGJldDA1a010ajBrYXR1RTVrUUw5akh0S25IY3gyMmRialFMZjBUU2FaV0gvL2MwRGZQSFNOMFM1dXEyQTl6U2ZqMjR2NzU4SVZYcWdJZ0V3WWkxeUxXVElpSGtyRHRYMWF5MDBKeUhYemZaeG5UbXpsK0JHNEFBR1JSbGlvTWtqa2E0WEZCTVcyMElyTXp2Nm9JaTVFUDQ5cExiaWFrN0JWVjJpWG9rZFgyaGo2M2tIeVVnME0xcjU2bmo1TzFRTFBEQlp1eDlxZWkvVTRya3F3eXBWbnhnbW5QNkN0QzFYYUhEeWVTNkh4VnVUbUViaDVScGlwQk1OK1o5MGJWRytBMzNUUmVya3RvWXhhU3NLMVJ5OTE3WUwvM1dhclNpeW8zQWpjQUFMTElMY1Q1TitQbGNTYVk1MVpRYm1GK1hZdHR4clZMOVh0K1ZiL2NpU2U5bWRXb0RCVnVQZUdlNzNiaFBRdnREUjhsQysyTmxkMzNaSG1iMHE0U0x1YkpCOTF5Nm5iRm0zbVVzVDF1SzFMWTFwSCtpU1FUZWF0eWN3amR2Qk81cXBsMnk4bjlzNzFxVXdaZzgwb2oxWXA5blZiRU02Nnl6ZnpMN2NrOGhtMGRQdSt6ZWxIbFJ1QUdBRUJXdVJrdk9zN1FXZnYyUUNhSEN4NVloOEF1ekQ5dTBiZzlXMm12WFZ4ZUZQZzJxN0VpNkxMVktwZXNQOS9iVlc3K0xneTQ2c0ZYQjdQVGZ2bFJsUEtqemF4V2tXUlJLSDVVTjdsS3l5THY0OXlKSkdsMlp0Q2xRNUpEaEc2K01oUEdCQmZiVlc5anVYenVBVmxrakgrejIrdzJ2SjdYeXJiUGN2c3MrOUhEWS9QdVY3a1J1QUVBa0dWdW5sdFcybnE1NGZVbXZNZzh0d0pLV3FNOUtrREs0bXlsUGtoZTI4YUh4ZGxJMEVXbWthdVdjcjZFUVovbEt0dXlYRDE0bnhaVnY1dmxUM1hiWE9HcnQ5MDJMOVhaanpid3pPbnhaeEs2aWNsZTI5eGlpT3hsanVBTlNOL3E3TGFLZUNRSjIvVGRRb1J0SGZGQWFjcUllSGNDVXJlcjNBamNBQURJT2hXUFoyeWVXKzVtYVdBZEhob2dtZWxNemxicWwxajdjZC84NVc5M0NMb2p6dG44cGxiTHYxRExWUkxsb2JLdHc1MndrSjBUYS96aVJYV2JQVDVieVZJM2doNWFkNHZwbmlqTFlPbXc1SlMrY1g0bWFUVlBDMXBmUlVMd0JxUktONDEzK3dDdFd1Tnk2NzI2RkVsOW9hSGp1K011YkJTdmRMZktqY0FOQUlDc2M0dHhxWjQxdkdGVGNtYUZONXRGZEYrQWxJUnQvcytBU3BNdkxmdnV0Q0xCMXVXeHBaeDNiU1h0ZGlXUGxVUksxUVFiNDFwWSsxRGRwb0lKbVJ3aUJPbHdMYVpUTzBuTTVIcVdjUHoraFlXNGRYZTNmNHVZV0NNU2dqZWc3NTZLcXBGcjlTb2VNVVpQeTQxM2k5bHEyb2FNUVJCNHQzNmxZN1ZmdW9UQURRQ0FQRWozck9HTk0vWjNaWjViOGJTZnAzTkp1emZDdHZYeG9XVmZWbWMzZVNXblFaQmpaRUg4c0pEYjdZcVBsWVMrMDE1VTA4L2xwN1ZwbDZSN2tsaFpUaTFWSk0vc0lxWnJUMmFNbVJQNExMS1h1V0I0N0hJN0NBRFFTM2Z2YXM4Q2JsUFROeThVK3IxdzYvcEN6YmpSRWg1UmdacVFjcVVyN2FjSjNBQUF5SXNEZzBjeU5jOHREdVlGeGVOYWErV3AzVnZQdGM1SzZneHpGN2ZFMUhNZE1BZktnN056N1gxOE44ZHQrMHIremJydzJ2eFMyUjRQVlNWVnlYT1NFMHNlcGwwWlc1TTBCR0Z1MjByZTQwSzNtK2NualpGcGdkZVV5R2l6cWErR3cvdG5DZDZBM2xIdVpFOVBHSkZHSERlejFKMm9aL1NOODBjOG0rZFdEajQvMkpWd2xzQU5BSUE4dVJOUFptWitnMUtqY25ybHVLQllhSzIxTWVOSkM4SzZwRWtKZ2R1bW1ZYmMxWHNsejJKelRkTG0ydmJsYVRiZVo0MG4yODI2WUgxMFdMVXJXbWx2dCtaeS9aemNxamkxTUxJaXMwdUYyS2ZwbStlT3hmSGRuYlNZekFJellZTzNpN1NaQkxxdk5GS3RTTHVxMUE5YVR4ZHVidHRqaEFOK3RaWlVnZW5LQ1ZzRWJnQUE1SWxiM0RHWk9zdC9LdmZ0ZllDdHEwbXFUQ1RZSkZYTC9hSjdHS2QvWm1veDJ2WlI1YlplU3FXOGFKM3pxdFp1U0svS3JTelBsb29UYWlUVmJ1ZDJVdTJXQ1pFazg5MzJYYVRhRGVnZVk0dzMyM3gzQW9UKzRFSStXOHh2VXJPK3NPalhQa3BWNUlWWGQ4Z1dFYmdCQUpBM0I0Ym1KRXZ6M0lKd25ubHV3R040MGJJUG01VC9pczV4cW5qNmhPcmc5WERIRThaVUpFMUdUUXVlTExVcXQrNmN2WjRsOTZyZENPNHpRRldvZGdPNkpLcVdSZm16emRmYVRBZ2VvTGNGSjN5cXhnN1UzUW5aSWdJM0FBRHlLSENMR0tZdTJWQ1dPSndWQUErWGZzcytXa3JpU2VxQ0hsTjF3VHFVOWt1cTdMRlhNeTVDeGVYV3BWWGxwb3JUVnZJK3J0cnR4cm5kOWprNlNadEo3MFgyTWxjYWVXVmFBR3hhR0xjcUhyU1lUaGhqNXVUV2VZNFBIcWErMEZES2VOUVpJTmh5U0V2Z0JnQkFIcmw1TDI1dVVHYm11ZG5GajFQTDB3TGdRV20zN1BQa2pTcFFhQUVWYnV0aVpFSlNWWUEyc3QyVlRrZUdad2RTRG1iVEU5ODRQNWUwbVJSemhPRE5iOFlFUjEyTFNTbFhPQTRETmtPSDNtenJ0VzdTYXZveDNMN0pseXBzcFdSMHEyMGxDZHhTMWxqNVdGQU05ZmMvRkFEb0s3ZmdrOTVRK28wTDFGSG11UUVQeFVJNy9LYW92dXE1cGxrV1BGNjduZVNvcE9sdWhvNjdmS0RpUzZtY0hLWjBSUXBPM3pnL28vWGR2VzUyRHNHYnoxUWxmSHJ3TW5QZGdFM3dwSjFrdTdydHZicmdzVlJncHNVVGdiUzI5TndoY0V2WmQ5NytDMEV4ZlBjSDV3UUErdTdna0R0emVFR3lJZ3huQzlubUIzZ2NWN0VLQUhnOEhWWWtUY1lzVXQyMlFXNy9abVJPK3E5d2M5d2V5cldadkhudW1LdDRvOVdrMXlJMzE0M1FEVmkvMGtqVm0zYVNXcWV5bjh1YytQM3paMzNaRDlud2o4QXR5Nzc3L1hNMmRQdVJJTi9jWS96ZDc1OFhBRWhGRUU5bVpwNmJrVWllRGVjRkFBQmdZMUp1SGFYU2FZK1lkVG8rSy8xWHBxdkMvVHF0SnVQWUJ0ZEtaZWRrdmVJZ2RBTTJRR3U5Unp5UUJFak1idHVJT2ZHQ0d0MUtPMThDTncrNEtyZXZIZndQY3UwNkxRZnp4cldSZEk4dGxZd0FVdVhPSHRaNlVyTEN6WE03dlR3bEFBQUE2K1dPSDlMVWpGbFEyNHlTTEtiVFZySzBTL0NnVy9PWDR1dG54K1A0YnJ2cXpaT1pPa2dRdWdIcnBKU3FpQWVVa21uQnV1bHR3WWxVamdrZVZDNDk4OHltMjVRVHVIbmkwczkvS2YvN2wvOVV2dlhXQ1lLM0hManlxOS9Jdno5eVF2N1ZWLzQwZVd3QklIVUhoMnFpNHlPU0dlcTR2TE9VN2h3V0FBQ1FEYWR1cDlzNmluYVNtOWR1bTl6L1VFZVppdURSYnIxWFQ2cmVicHpiN2NJM28yVEszbWsxUWRxaXUzZjEvRllxTDRCaThHTWJiN2Vmbkl5ekVmV0ZoakYrVkxscExadXVraVJ3ODh6SmQzNldCRyt1S3VxSHAzNG1qWldQQmRuZ0hxdVQ3L3gxOHRqOW16ODhrangrQU9BVk44OU5TVTJ5b2hUT004OE5Xelp2bjBQenY0MGV1QUFBOHFNazZWWXJLVVVWMEZhb1ZJS2NpbUI5M0t5MzYrZE94RGZPN3UxVXZybTJrMGE4cUVJb0hLVmtOSHo2MmVNQzRLR1MrVzArTUdiQmJUOEZHeEtvSUkxVzB3L1lTcFZrU2VBbFZ4WFZxWXphLzRkL0lQdS8vbVhaODVVdnlZNlI1d1QrY0NIYkQyM0lkdmFuZnlOWGZuV1ZnQlNBLys3RWsvSzU4TEl2QTRRZnk4MXpHd3pkbThuc3RNTkVmN2t3clZVYVRSWmF0WW5zWVhHVVBHK1VjYy92S1BrZTdUNDBIL3l6cDFmV2ZsWVhvOXlpVWNNZVdkZVRtWWV4dVpiY0xyVVdWOCsrQndENFNxZDhKcnNXWmw1dFJXeXVpSkorSzh0Zi9uYUgvTHZQWHhPc242dDhhOC9ZbVVzK2YzNThUeEMwSnV3eFdNVUdRWkdnVDlSRThNSytLL3FEODh5T0JENURpOTdWLzEzS1F6QVBjMU5hMXhkcTRjaFlJLzAxSzdYcGprc0ViaG5nd2h4M2NYYTl2Rk5HN1dYTWhuQ2pMMytSQUs3UFhMdlAybi81TzdueTkxZmw3SHQvUS90UEFObmoyaDJkV2hxWElMd28yVEFocDVldnlJSHR2Sm1FeURzZmpjcUEyU1BhSGZ6cWluMDNGVWxnVmtNMXg4Z21GK3hjU1BmcHozREMxZHZhM2ppejByQi81Nkw5bmtWcHlTVlJRVjFlZTRacUJnRHdoWkxSenVZN0ZTWW10Tm1LTUY1TTlyZjk5dHU0WWorZUZHemVyZmxMOWpDczNUTHQrYTlIWVRoUUVRa08rZExPTGM5VW9JNlhSbDVaYkYyL1VCTUE5eWh4bFVscEhoUzB4Uit2ZUZHcGxVV3VyYVI5V3o4bDZTckxDNi91a0EvT2JQZ1lqOEF0WTF3VmxidTQxcE5POU5KenN1djNkaVpCbkx0RU5vRGJaWU00YkowTDB4Wi85UnU1OXY2SDl5b09xV0FEa0F0dW50dnBGUmRncFgwQXMwN3FxTXd2TGNnNHMxRUtwMVBCRnBqOTlwM1RoQmhkYm9kcmZYNEQ1YzZ1YTg5NnFkaWo1NmtrNFR1elVyZGZyOW5WRG50cFh1TDVDUUFwY2ZzS25XcGxUVU5lRytJa2pLMXcrMUIzY2t1L3oyWlgycDI5VHVEV0xRK3JmbE90cWdTcVloZE9tYzNjQThZRXMxS3U3SlpHalc0TXdDcGpUSlIraFp1cDhicmNQTmRXMGhpZCtucFZHTFFxOFNhT0V3amNNcTV1d3lCMzZWVEFPZVhCcDVQd3JYUGRDZUoydlBRN3lkZndLUmVnWFh2L24yeXdkbFdXN1cxWHVlWnV1NUNOY0ExQXJoMFlQQ0pubGl0aVZCYmUvSllsRHR3OHQ3MHlTV3UvUWpoMXU1S0ViTWFHYklGcEw3NmxmNUxpL1V5eXVPdENRSHNKUlg1eXUyYmZHY3dSdmdGQW43VlB6SkRVR0NGczY0cWtwWE4vajBzTklWQlBQYXo2VFFYN2pUYWp0Si9zbXFqMDlPRFJWa09PQ0lDRUR3Ry8wYlNUM0lwV1NSYkRwcVRPN2ErRXdDMTdYQURXN1dESC9iek8vTGUxUVZ6bjcrdUVjVHRlZXE1OWJjTzRxSE03UjZHY3V4OWNpRmEzZ1pvTEpaUGIxejlNd3JUT2RUOUR0VjQ4MWdDd0pYZjBlR2JtdVNrYkRBNkdSKzB0M2t6bWxhdFFrTkloKzN5c2lsbHRRK1JieVBZNHJnTE8vZDVydzdkWG4rR3NlUURvdFdTT3A2UkhDU2NEZFlNeGRlbjNJcWtpY091YnoxYS9EVmRIQTZYM3VOWnZ4aDQvS2NuQSt4RlAyY1BscWRMSUsyZHBMUW1JREVUVlVkMU04NkNnVFJ2RHlUaGJVVjlveVBEK1d0cnRpVGQ3Y2dpQlc4cmVmR09mZk9mdHY1QitXUnZHUFk0TDRjcmJuMDVDb3VTeS9lbDc4K0xjNTl0WFF6a1gxSFcwdisrWmU1OXZYLzJ6Ry8zOWxqOFRTcm5BN05QYjdabHA3bnNhcTVmTzkzZXEvUndmWjZ1OStjYVlmYXgvSkFEZ2pmWTh0Mk1TaE1jbEc2Ymt4MHVYNUkrSE9Gc3NUNUpXWU1HVUdIWFlMcmJsWTdHbEU3NmRXWmtXQ2FhcGVnT0FIdElta2xRcEZ0VzZJNDNnc2l5ejlqaUVEZ3I5ZDJOaDBTNkp1OWZPaWVSejEzNnlGSThxbzZwR3pDZ0IzTWJRV2hKbzAzRXJzdSsvSkhXM3psOFNiSW5kRnl3cU45SWgxZDloY3gyaENOeFM5dTIzWGs5Q28rOSsvN3o0eEFWVzE2NEx1dVNiQjc5cUgrcy9JWEFENEorRFF6TnllbVdIWkdXZVd5bWN0UUhOSXVGRlRweGVuazZDTnJlb2txVnF0dlZLMms3cU9aSFFodHZMSjZWa2IvUGNCWUR1Y2xYd0pzMldrcTRWSXJZdWFTa3BmZmQwY3ZZNm9XbmFQbTAvZVg4QVJ3WGNla1hCRjU0NXJCdHlUSUFDTTNHd1M2VSt3TTNVQkZ1bUFuMHBPVEUzemQrQkNyZnNlbnY2RGRuMWV6dVRTamNmSzdPd2VhN0N6NFdxcnBJUkFMd1Z4TWZzZ1V6VkhrNUU0ci8yUERlUjNZTHNjalBhUWpPYkJGSjVETm8reS8wN0EzVlVUSGdvQ2Q0T2JwOFdBRUMzcExzUUgyaDM4dEswWUd1VVNlZmttMkJnbHhDNCtlZXpBZHh3ZFRTVWVOUm02M3RjeU83RGpDYmZLR1VYcHN1VkUxUzVvY2lVVWxIYWN3bU1acC9TRFhHenRCaUc2YmNIbFJkZTNTRWZuTG0ya1Q5QzRPYUpRNjk5VGZaODVmZmxoNmQrSmlmZitXdUN0NHh6UVp0ckllbUN0cnpNeEFPUVkrTkREWmxmR2hjZFhwWXNjR2V5bjE0NUxnY0dtZWVXTmZOTE5tQXJ6YlpublVueGRJSzNNeXVIa2xhVHpIZ0RnSzB6SnQyRjkvWXNYS3B2dGlxdDR3S1Zka3RTck11TmhjVzRIWXpPSlo4Ly8vWEloYVdCU0pVQTdwNXkrUFQyNDNGREpnVW9ya2hTUitWN1Y5eGFxTXZJV0dQMU9DczlyVStHN01jTkJXNGVORFZGaDV1SDV0b08vdU12dmljL2VQdE5HOEI5U1pBdDdqRTcvWU0vazEvYng5QTlsb1J0QURKamZHaFJkSnlsQUd0S1RpMVZCTmx4ZW5sS2pBMTFUYnFEajcyUVZQYnBPUnNjenlZaEpBQmdjOXdjVUdCTENOd3k2ZFo3ZGJsNS9xeStlWDVTM3ppM080N3Y3clNQNWFRTjN4Wk1Pdk1BUFdFbW5vcXFrUUFGWlNUOW1lRGFHQ3JjdXNRWXFVdkt3bTJsWFJ2OEkxUzQrY3BWdkxsTC9mMFA1ZExQLzA3Ty9mUnY3UFV2azNsdjhJY0wxRnpJNWk3ZnRJOFhBUnVBVEhQejNNNnM3TGRIcVJYSmdpQ2N0d3R0dTVtSjVUbTNHS3JEV1hGbklCZXhxdTN4Sm13SVdaRWZMeDJSUHg1YUVBREFSa1VDYkEyaGJSN1lBQzV1VjcvTkpaKzdHWEJCYTBKRVZUWTdneWVybWsxejFGNVI1WVpDU2w3dmFiL25qT05sUVZjb1VUYThUTGVUZ2RFYlAwNGdjUE9jcTNxTFhtcUhiNDRMM2E3ODZqZHkxZ1p3VjM1MWxRQ3V6MXlndHV2bG5iTC9ELy9BWG4rUktrUUErYVBpY1RIQjVlek1jMHVDbkwwQ1A4MHZqZHBBeWMzY2l3UVA1NnJkU3ZZK09yVjhqTmx1QUxCQnJWSlpBczdtd0piUWlqQ1BQcDBCVjhEd3pWU2xYRG5DTERjVVV0cnRCNTEvZnBjS3R5NHhZaHBLVXFZSTNIS3ZVMDNsNW9NNUxuU3JYMjlYd2JuYmhIRGQwd25Ya3N2djdaVEt2LzE5MlRIeW5BQkFycmw1YnFlV0ppVUlMMG9XS0tra3JRb1BiSjhSK01VOUxsb2RGNnlQbSszMms1VTlFc2FUVkcwQ3dEb1oyZ0VDZUlLSGhHOUtxUW5KcjNMd2hXY082NFljRTZCSW5uZnRWTFdraktDN201VFUwNjVZdFB1TFNEYUl3QzNqT29HUXE3anFjSUZiTzN6N1RSTEdkVUk0ZDQzN3VWQnR1NzJNMnZ0d3gwdlBKY0ZhOU5MdkpQY3A3U0VCRk5iQm9acWNYbkVCMXBSa2dnMTFUaTB0SnI4My9IQjZlZG8rTGtjRkcrTUNaR1BEN3ZtbHZZUnVBQUQwUlNRb2prNzQ5dnpYajRYaFFNVVlkVFNQVlc5S0JlNTlISUViMEdjK3pCekxFMlhNc251VG5EVUViam0wZHE3WVozV0NOM2Q5N2YxL1NnSzVhKzkvbUh6ZS90cUh1YW1RNjRScDdiYWN6N1Z2anp5M0dyQjlVY3JibjZaaURRQWU1Y0RnRVRtek1wcVplVzVoT0N1elM3dGxjb2d6eXRKRzJMWTFyc1drRUxvQndMcUVhb2N3SUJSYk5idFU1aGl5WU5iT2ZNdG4xVnU1TlBKS3BYWDlRazJBZ2lpVkpES3BWME1aOWlWZHBGUllOeWJscWtXamFTbUp4K3VFY1U5eXpRWnhqZVdQN3dWeGplV1BrcTg1N3ZQbDVHc2YzeGZPMWQvLzhMNmZzYnp5OFliRHUwNUl0cFlMeXo1NzIzMVBwd0t0RTVxNXlqVDNOWUkwQU9pU08vR2tmQzY4N0VVZjlDZHhJY1ZnTXM5dFhKQWV3cmJ1NklSdTd5eU55MnREekFBQUFLQ1hubnRxdTlBR3JMaldWTDBGd2NEUnZBUnZPbGI3N1ZWTkFDQ2pWRWthcGlucFlvWWJ1c1VGVmp0R0JBQlFaSzhQMWVVblM1T2l3bm5KaGlyejNGSkUyTlpkTG5RTGswcTMzVlM2QVFBQTlOaXQ5K28yZUp2TVMvQ21ndVQzUHlJQStpaW9DN3FtK1lrMHdsQXlKeEFBQUlCSCtjYlFndjJZb1FCTEhaZDNsa1lGL2VXQ1RzSzJYaWl2em5TTEJBQUE5TWFkVmlSQWh3dmVicDZmak9PN080MHhjNUpkU1Z0SkFRRDBGWUViQUFCNHZDQStKbUxxa2hXbGNENlp4WUgrU01JZ0czU2lOMXlsbXd2ZEFBQVBZU0lCZ0Y1WUU3eUpNUXVTUVZyTEhnRUE5QldCR3dBQWVMenhvWWJjMVh0RlpXUzJSWHVlR3dGUVA4d3ZsUW1EK2lDWjZRWUFBSUMrczhGYmZQUDh1RDBnbXpSRzZwSWhTcW1LQUFENmlzQU5BQUE4bVp2bkZydEt0OHlZYUxjNVJFOXBHMndTQmdFQVVxUHFBZ0I5RU44NFA2ZTNCYnVObUN5MTI2ZlZQZ0QwV1VrQUFBRFc0K0RRakp4ZWNXMUpxcElKNnFqTUx5M0l1QTBMMFgwL1dYSFBnd25KRFZPMzRXRkRBdFdRaDUyOXJGYURSVzNLN2R1S3RxVUFBQUJGVWw5b2FKRWp3ZkMrYTByWjl4cEdmRDhlTE12LzlrZWo4cy92TGdvQW9DOEkzQUFBd1BvRjhhVG9ZTlNHRFpINHJ5eHg0T2E1N1pYSm9XeTB3OHlTUUZ4MVd3WVpHNmlwUlZHbUpzcGVmMjVnVWY3ZDU2L0padnpsYjNmSW5WWWtXby9hbnhYWklHN1UzaWNWQVFBQVFHN3BHK2RuQnFKcUxiNnI1NVh5dTl0RHVLMjBLeFloY0FQNlFrZUNyaW1WSkRJWlhITWdjQU1BQU92bjVybWRXcHFVSUNOenU1UWFsY0h3cUwxMVJOQTlwMWNtc3RWSzBvWnNvdWJzODJGQlhoMjhKTjNTRHVyYzVmNmZlZWIySGpHbWFpK1Y1RGtJQUFDQVhHbldGeGJsK2EvdkRZSnRGMzBPM1l3MjdsajBwQUE1cDByU01FMEJVc2NNTndBQXNERUhoMnFpNHl3RldGUHk0NldNdE1ITUNDVkhKUXVNdUNxMmloellQaVFIQm8vSXE4OTJMMng3SFBmM3VML3ZHOXQzeTkxNHA4VHhaTkt5RWdEUVhiSFpYSVV5QUhURHJmZnE0YlpnM0I0YmU5dE53L2NLUEtCYm1wK2svem8wUmtXQ3JqR3E1VUhiM3FBdUcwVGdCZ0FBTnM3TmMxTTJ6TWlLVWpncjgwdVJZT3V5VU4zV0NkcStNYmkzYnlIYm83dytWSmZYaHVaczZMY3orWjFFNWdRQUFBQzVrRlM2R2VQdHlZaEc2TFlBOUlzTnVKbnozVVhHQkRza1pVYnJEUWU1Qkc0QUFHQno3c1NUUHAvTitSbGxpVzNvaHEzenVyck56V2VUQ1MrQ3RvZHBWNzVOSmxWdkJHOEFzSFZCWm81REFPUllmT1A4bkJFekl4NGlBRUJoM0Zxb1MvcDR2WFdUOXVEK1ZJckFEUUFBOUltcjNJbmpjY2tLSlJVNXZYSmNzSGwrVjdjdHlJcmVhY00yLzJkVXVOZk92ZUNOVnBNQXNHbGhYQmNBOElBZUNJOTVlakppV2NvVlFnQVVnakZTbDdTOThHcnFWVmw1b1FJUEtuU05FTGdCQUlBK2N2UGNSTHc4bS9NUnB1VFVVa1d3T1VvZEVoOFpNMlVEckhHWkhNcFdwVU1TdkczZktZR1pGZ0RBWmxEaEJzQVA5WVdHMFo2K0wvcjgvN0pkQVBSRnFKcTBjZTBXazM2Rm0xSWJQMEcySkFBQUFGdHhZUENJbkZtdWlNbklmSUF3bkxXLzY1dzdlc01HdUJsNDJsVEVLNlloS3FqYTU2Qi83U00zWW56N01mblIwa25aRmx5MGgvU1JBQURXWjN5b0xxZFhKRlhHTE5wOTBZSWd1KzYwcmduUUJYcGJjQ0pzNlNrZkZvbnYwL3BreUg3a2VZN2NVNEZ5TXhValNaRXhLaEowaHpLamFTL2J4SHJqSjNjUnVBRUFnSzI3bzhmbGMrRmw3OTVjUGt6U0VwR0tvZzNUWVVXOFlzTzJXTytWMTdZdlNoNjRhcmY1cGQzMmZuYXpCcXNDQUZpdnVyMUVrcVlEeng0VEFLZ3ZOR1I0dnczZ3pZVDRKQXlwY0VNeG1QUXIzNzFvZzVnREExRjFWRGUxQnpQY0J1cXlRYlNVQkFBQVc5ZWU1OFppVTU3NTFrNHlDZHVHOGhHMmRZd1BOWkxXbU5scTB3b0E2ZHJFTVBzdS8vM01SZ0x3cVNBK0t3QlNZWlJKL2YyaE1ZYkFyUXQwM0lyRUJ4K2MyWEIxTUlFYkFBRG9qb05ETGlRZ0tNZ3I0MUU3U1RlekxXOWgyMXF1VFN0ejNRQmdmVXpxaTJ1UnpDNFJ1Z0ZJeEdHcEpwNEpnd3gwSVFHNlFCbXpMQ2xUS3VXcSs1d3dPdGdqS1ROR05uV01TZUFHQUFDNkozQlZiaHNmS2d2UG5icGRFVytZR2ZuRzloT1NkMjZ1R3dFMkFLeURxa3ZhbmhIT1pnZlFWbDlvMkVYYXV2aUVTbHdVUkJ5SE5VbGZ1VFR5U2tXd0pVclNiODJwTnJtMlJlQUdBQUM2eDdYRUMvUzRJRjhDU2Yzc3NqWjd3SHRnK3hFcENsZnBwcVFtQUlCSGk4MkdXLzEwblNydEVnQllwWlFISndLc0VjZWNFSW1DdUxWUUZ3L29PT0M0WU12Uzc3QmpSRkhoQmdBQVBEQSt0R2lQTUlzVGloU0Jrb3I0d0tocEtSb1ZqMU0xQ2dDUE1SRFhKRzJLZVMwQTdsTVhBS253b2NKVUJhWXEyTFRTU0xVaUhsQmlDTndBQUlBbjNEdzNLbk55eElPRlJHT2ZUOThZUENsRlE5VW9BRHplK0ZEZEhuTTBKRjBzcktHdkJvYi9pSkFYQUI1Q0tWV1QxS2xSS1ZkbzVicEp4cGhENG9HNEdXK3Fpd0tCR3dBQTZBMHFjL0poZnFsc3c2NzAzeXdFQmF4dTYzQlZvd0NBeDBpOWZWdFovdkszT3dUb2czQmtiRVpMNlNLaEd3QTh5Q2pqdzN1bmN1bVpaOWhHYjFyNjdTU3Rodnp6dTFTNFpWRmo1V05CTWZCWUF5Z2NWNW1qOWFRZzIxb2xEOTRvMk9EMjFXY3ZDUUFBRDJOTVRkTDIyeFpWYnVpNWNIamZoQmc1YkcrV0NkMDhwanc0V1cwdE5WQVhvQ0RDVXVERiswWWRxLzJDRFJ1SXFtNi9Ga25xTmgvY0VyaWw3THZmUHljb0JoNXJBSVYwY0tobVA4NElza3VaOUJjTVRNQnpDQUR3YUxGY2tkUXhyd1c5OVZSVWpleUIyZEUxWHlKMDg1VVAzU0hXK3UzL1hCYWdJSnIxaFVVUFdrMkxDdFFFYlNVM1RqZk5ZZkdBTVp0dlRVcmdsckx2dlAwWDhzTlRQeFBrbTN1TTNXTU5BSVYwWVBBSTg5d3lUS2xka2piZG9yb05BUEJvQTNGTjBxYWtJck5MTEt5aFo1cE5NeXNQbnZWUDZPWWo1Y0g4NDdVYXRkVERCNkN2alBLaXJXVDRoV2YzQ0RiSWkzYVNvdlhtdXljUXVIbmczeDg1SVc5Ti8wQ3VYZjlRa0MrdWplUmIwOTlQSG1NQUtMUTc4YVFQWjVsaE0xS3ZjR3ZJYTh3d0F3QTh4dmhRM1g2c1M5b0dTMTZjbFkzOEtZMk1UVDltRWRLRmJwZkQ0YkZEZ3RRbGxZZ2VWYmdaSXh4SG8zQ01NZ3ZpQXlWVGduVkwyaVo3MFU3U3VuVisweWY5RXJoNXdyVWIvTnJCLzVCVVFoRzhaWjhMMnI3ejlvL2tYMzM1VCsxamUxNEFvUEJldHd0aE9tYWVXemFsdldCUUV3QUFuaXo5eFRVbHRKVkUxN2tBeDRZbVI5ZnhyWFBCQy90WTNFMVpzeGxYeENOS0dVNTZST0VFRW5qUWF0cFJsWUhoS2hYSTZ4WjRjdUxJMW1ZREU3aDVwUDcraDBrbDFMLzVQNmJrVzIrZGtFcy8venRCdHJqSHpGVzB1YUROdFpCMHdSc0FZTlUzaHR4Q0dMTzRza2FwU0ZMbFJUc1FBSUR2ZkpqalpzeW9uRnFxQ05BbDVhaGFiamIxeGZWK3Z3clU4ZExJSzlPQ0ZBVmV0WkF6bWdvM0ZFL3Ira0xObHc0N3NZNnBQbDZIMGtpMTRrczdTYVBWbGs3aUtnbTg0MEthaysvOExMbEVMejBuZTc3eUpmbm13YS9hNjk4WCtNVTlWbGQrOVJzNSs5Ty9rUi9heDR1QURRQ2VJSWlQaVFrcVloUm5lV0Y5aktvTEFBQlBNaEF2aUE1bkpXMHFkSlZJTlFHNjRIYlRISmNOdHRjeUpqaGFHaDdiM3JweDdvaWd2MnhBS2kxZEZTTWU0VmdheFdTTXpDbEp2NldqQ3RTRWxDdkhtS1g0ZU1ZWWI0SkpiZTZlbFMwZ2NQT2NxM3Fydjk4TzN4d1h2blV1dTE3K29wUUhueGIwVHlkZ3UvVHpYeWFYSzcrNlNzZ0dBQnN4UHRTUUh5Mk55K2ZDeXo3Tk5vREhBbE1YQUFDZXhCMWpuRm1wMmVPTGlxUkoyYi9mVmJrZEhLb0pzQVh0V1RabVFqYkI1ajFUd1l0amxXM2JndkZQNmd0MVFWK0V6YmhxTndKZXZjZlJ4bERoaGtJS1ZIRFdHTzFEbTkxeThJVm5EdXVHSEJNOGxLdHVzNC9WaEhqQUJyVjF1ZlZlWGJhQXdDMWpPa0ZQeDY2WGQ4cW92ZXo2dlozSmJVSzQ3dW1FYXk1VXUvTDNWNlgyWDM3SmZEMEE2QVkzeiszVTBqRUp3dU1DL3hrVENRQUFXYURVZ3QxdlZTUnRWTGxoaTl6Y3RtWkxIOTlLcFpSU011cmFVUTRNLzlGNDg4YTdoQzU5b2RZemE2Ky9Qcm50eVN3cm9MOWFKVmtNVzlMdzRVUmZwWUlwdTEwL3lRa1FENmVOT2E3RUU4WnNlU1l3Z1Z2R0pXR1F2YXpsQXJkMitMWlRvcEhua3V2MjE3NG9lSkFMMFJadHNIYk5WUlBhMis1NjBkNm5oR3NBMEVNSGgyYmtKOHVqOXNpVGZ1WUFBS0JMV2lkRnd2VG54VkxsaGkxYW5kdldqVVhpU0V2cGNtbmtsV090NnhlbUJUM1Rya2pjV1B2UFhqTkdGbWxqaDhLcUx6VE04SmdYYlNXdGNyTnBYQ0EvS2JqUGFqVzNOeU5IdEdtZWtDMGljRXVaQzhLNjNaTFEvYnpQVnNKMTdMQUJuSnNMMXdubDNQV08xYytqbDM1SHR0dnJ2RlRJdWZ0aDJWN3E3LzlUMHBvenVYMjlmZTBDdGNieXgzME4xZHo5N240UEFNQ3FVRStKZGtQRlZTVHdsMUlOOTI0ZEFBRHYrZEpXMGduRFdabGQyaTJUUXl4MlkwTktJMlBUOXRBcmtpNXljOTNDRi9mdEd0Z1dIcUhDb3Z1U2lzU205cSs2VFdnbmlXTHpxSzJrdUJiQnBaRlhUcmF1WDZnSkV1V29Xcjd0MGJZek9VbGhpKzBrSFFLM2xIMzdyVCtSdDZaL0lQM2lBcVpPeUhUMnAzL3p5Tzl6d1Z4NWV6dDhTeTcydHZ1YTR6N2Z2dnExdGVHY0Mrelcya3g0MXduSjFuS0IyYWUzUDd6djM3TDIydjAvOStmN0hhU3QxemNQZmsyKzgvYVBCQUN3eWkyS25WcWFsQ0M4S1BBWkM0VUFnQ3h4Rlc0VlNac0xUQVpMaCswdFpyWmczVmJuMlBSbThWR3BxZzJGUnNQaHNlbjR4cm1UZ3E1WnJWeUp4RE5LcVpvQUJkYTZ2bEFMUjhhOGFDdnBHQlBNMnF1ZGdzVHRscDRXajdhZFNrbFh1aVFRdUtYc3pUZkdrcXFyNzM3L3ZQaWtIY3dKdXNROXppNWNKWEFEZ005d3JaWk9MUjFobmhzZUtUWmVEWjRIQUhoT3haZEVRazhXMTh5MHZMTjBWbDRib3NvRVQ3UmFKVFVydlJYWnkxdzR2TDh5TUtDT1VlMjJkYXZ0MENiRVEzRjg5NUlBQldlMHpOZ2daVnI4RUFVdnZuSlUzN3hRK0pOeFZrOHdPU3dlNmRZMk14Q2s3dTNwTitRSGI3OTVyNElNK2VFcS9OemorL2IwdHdRQThBaHVucHVTbXNCUHhxUmI0YVlDQWpjQXdQcTVDbnFsMHAvajFsRUs1MlYyaVgwWm5xaS9WVkptd3MySkM0ZkhtS2U4QlM0a3Rkc2JMMDhjN0Zack5DRHI5TGJnaEYxdjhLWnJpMUxCZEdua2xZb1VtTnQyMnJDdDF5ZVliSWd4WnE1YjIwd0NOMDhjZXUxcjh0ZW4vaVBCVzA2NG9PM2JiNzB1di83RjkrVE5OL1lKQU9BSjdzU1Q5aENuTHZCUnlvR2I5bWFBTWdBZ0l6NXArZE11TDJrdEdYbzQyd2srR1JqZU41VkNsVlFrN1dxMzJTUTR3b2FzVmlSZTlLVlYzUU9NcVFrQWtmcEN3Mml6SUI1SldrdVdLNFU5R2NmSE5yeGFON3RXZFVqZzVwSG9wZWVTNE8wZmJVampncmY5Zi9nSGd1eHdJZHVlcjN3cENVNy94OS8vNTZTRjVFWm4yQUZBWWIwK1ZMZEhPSk1DRDZtNnBNa0lnUnNBWUdQY2NZVmYxZk5UY25wNVNyQng4MHVSNUp3TGJyU2tXU1dWVkx0ZExZMjhNazN3dGo3M3dqWVA1N1oxYUNOZUJReEFtb0lnOUcxdVpSUis0Vm12S3J6NnBUUXlOdTFmRzE1VDYyWkZNSUdicDF6d2R2b0hmNVlFTnk1OCsrYkJyMUw1NWlFWHFCMTY3YXZKWStTcTJWelk1a0kzQU1BbXVIbHUwcDBodGVpaTJGeVROQ2tDTndEQUpzU3haL05SYktEeTQ2V3FZUDFPcjB5SURpL25QWFJiRFc1U1oweHdsRGFUVDVhRnNNMFlxY3V0ODh4dkExYTFyaS9VN0g2NEpqNVJxdXBPZEpBQ0NWOTRwV3EzVC81Vi9adnVya09WQkY1ckJ6cGZTeTdPbFY5ZGxVcy8venQ3K2FVczJ0dlhybjhvNkI4WGVsYis3WmRrMSsvdHRNSGE3OHV1bDNjS0FLQ0xEZ3dla1RQTEZUR0trTVVYUWVyOTdzdHlhcW15R3NnQ0FMQSticjl4WnFWbUYxRXE0b3RTT0N2dkxOWGx0YUZGd2VPZFhwNjJIOXVMY25Fd2J6L3VsaHdLUjhabWtyYWovb2drYVRQcEtoQmtPcjV4enJlcWtGU1ZScXFWWmt1NzU2UG5yZUQwbkFDNGoxTHFtREdtSWg1eEp6clkwTTBHZ2hlbUplY0dvdXFvYnVsWnU4L3ppanRCUWQ4OGYxYTZpTUF0WTF6QTR5NXZ2akdXZkY1Ly8wTzU4dmRYYlJEM215U01xOXNBemwxajYxeTROcnA2Zis5NitZdkpiYW9NQWFBUDd1aHgrVng0MmR0NUNFVVR4b3VpUTBsVkVPNjNIMnNDQU1CR3VDcTNJS3lJUDhvU2hoZGxmbW0zakEvVkJROTNadG1HVU9yd3ZjK1ZHcFhUSzhlVEU3TnlKQnplTjJHUGR3K0xueUpaRTd3TkRBU1hQcWt2MUtYQTNKdzliWFNLclQvWFQydVA1bGdDbm5CVmJ1SHcvcHFOV0NyaWtTS0Via2xsY012UG1aZEt5YlIwR1lGYnhybTViKzZ5ZHQ1YlkrVmp1V2FEdUhiNDFnN2kzTmM2MS9pVXF5RGM4ZEp6OThLMGRzajJ4ZVJyekY4RGdKUzR1U3VubCt5Q1NsakludWJlY1F1Q1oxWWFLUjhjVDloTHJoYlpBQUI5NEdPVm13dmRqQTNkM2xrYXA5THRNMXpyU0ZPYWxZZFhJRXpKcWFXemVhbDRYMjFMNkY5YnJRZEY5akpuZjllNlc2Z2VHRkRIaWhhOHRSOHJNNnM5VzZSL0pHTVd1am1MQ01nVEg2dmNuRHlIYnE2eXpkZXdyVjNkMXYxS2JnSzNISEpCVVhtMU1tdHRFT2Qwd2poM1hYLy9uNUtXbE83aUt1VWNkNTJYTnBVdVBDdHZmMXFpMWV0T29GYmUva3dTc0cxMzl4T2hHZ0Q0NmNEUW5KeGUyU1Z1Y1FVK2NBdUNGVWxQV2M1OGRFaGVmWWF6ZFFFQUcrTmZsWnNrTFFUREpIVGJTK2kyNnRUdGlsMzVjbUZiOU1qdkNjTlptVjNhTFpORGFiZTczaklYNElqSE04QWVJckpQM0FuN2UwK0V3L3RxZHRsNnJnanRKa3NqWTlOMm9kaFZJV2FtODBhc21Za05QSXF2Vlc1T0hrTTMxNFpYdXphOG5uWXYwdHBNU0E4UXVCVk1KNHh6OW56bFM0LzkzclZCbkF2b0dzc2YzUXZqM09mTHE5VnlqZVdQNzZ1Y2EzL3YxaXZwWE9YZWZiLzM5blk0MWduSzNHWDdhbUFXdmZRNzk3NkhJQTBBY2lLd0MyUTZxTm8zOUpFZ1hTYjF3TTBlRGNjdWZDMW00TmFlWXdNQTJBeFhFWFY2WlU3YTFkSStjZTBsTDl0dC9CRTVzTDI0QytUelMyVXh3YlJkYVR6OHhMa3VMcWdjREYxVldLYXIzbDJJNDJPRnhmcXBpdjFRYWJlYlZEV2w0cE4yZ2JnbU9aSzAreFIxMVBnMVgrK0pYTFdHM0RwL1NRQThVaHpmbVF4TDI3d2NZZUZDdC9ERmZidmlmN2s5S1kxYXBrOHU4YjBOcjkwUHovVnFlMG5naGtmcVZJUUJBSkNLOGFHR1hZUVpUOW91TWM4dFhVWXVpVXE1MmpDWjM3SThWYmhGeVorczJOQlpzdEJ5Q2dEOEZjUkg3UEZFMWMvakNYVmNUaTJYNWVEMmFTa2F0NDh6Y2x3MkZtcGt1clZraGxwSnJrZmtxdDdzQXZHRURkL3FMbndUSFo5OTluT2xXcU8ra0xtRjRuSlVMWC9VMGxNMjl6MmMxZmNldlpoRkJPVE9yZmZxNXNXeEdXOWZMMHBWdzZjSFJ3ZksxYjFaYk9IcnRxVzNXMlpXRzFNVmoybmRQQ1k5RWdnQUFJQ3Z4b2NXazFaUVNGY1kxOFFMNnFqTUxoVW5mSFd6YkFKaGxpRUFiSlU3aWNmbjQ0bkE3dC9PckZ4TnR2dEY0TnBIbnJsOVVaVE15MllxaUlKd1BvdkhBMjRSMG9adEZ5V2ZJaGUrU1JETTMyN3FwWEI0MzhYZ3hUSFhIcTBpSG5PUFNUQXlkamdjM24vUi9kN0d5TkdzaG0ydXVxMEliVDZCYnREYmdoTkpSYWkvM01rWlYrMDJkRm95eExXUXROdlN5K0o1MkdhTW51N2xyRXNxM0FBQWdOOE9EczNJNlpVOTlwYlhCMjI1NWhZcXo2elU3QUpFUmRKVmxtZnRJcHZJWHNrN3QraEtkU2NBZEk4N25qaXpzdCtEZmRuRHVlREpKQzBtaitXMm10dnQyN1JyQ1dtRG1TZTFqM3k4VEI0UDNHNGExMW9ya2tKUUZhV2tZa3dnNGZDWS9kelVsS2hGKzdBdkJoSmNhZDVZU0dWMllWSjVjYWRWVVVHd3g0Z2F0UXZERlpYOG42MDlJWDJneFREN0dsaXYra0lqR0tsTzJ1REY2NU1na2hhVHcyT0g3TTFwbndQMWR2VzJtYlgzWjBVODU0SldmZk5DVDAvQ0luQURBQUQrQytKSjBjRW84OXhTcEpRTjNEeVlOMklYYitUVThuU3VXMjk5R3JaRkFnRG9IcFcwbHJ3cy9pb25MU2JQckJ5V1Zqd3VydzJsRWtwMG5hdG9DK1dvNkM0ZVI3ampnUXkxbW5abi9kdUZ5QWtwTEZVeHEvT0F0ZjNQaFhCMjBYTlJLZE53UVp4V1VsZXh2cVpDYVpSS3BmcFRJbzNOdHFWMEM3OXhVOHBhdHlJVEJqc0Nlenhsaklva01LN3lvaXhCc0JxdlpUOWs2MGhtRWQwOGYxWUFyRnZyK2tJdEhObS80SHMxbHJSUDFKZ0xoc2VtQXFXUCtEUXpjelZvTzlwc1ptZi9wdlhkbnArc1ErQUdBQUQ4NXlxc1RpMU5TaERtdFExUEJyUk9pb1RUNG9OTzY2MVhCL1BYTm1kK2FaVEtOZ0RvRWRlcSt0VFNFWHM4Y1Z4ODVrNjRDRjIxMjhxY0JQRXgrM3ZYSld2bWw4b1NoeFc3eno2Y25MRFRrMnpESGcvTUx5MWs0ZjV4Qzd2QmkyUFR6Tmo2bEwwdjNNbDA3cWxSVWU3NTRZSXdlMjBYYnFWcFAwMHE0NVEwakpaTzhOWndBZDNhbjVFRWFaMmZGOWhqSjN2ODVQNTh3djQ4OTNPVHA5NjlHL25VeTFsRVFKN0ZKVFVaM0RXamRuc1VpZWVVeUtneHdjWDJ6RXlaZm5ZZ09Kdld2TXoyU1NSSjBGYVJET2wxSzhrT1pyZ0JBSUJzT0RoVWs4Qk1DOUxoRnJPVTFNUVhSdVpzNkhaSThzU2RxYS90QWl0aEd3RDBqbXN0NmRQKzdQRW03SDdocWczZVpwTXFzU3h3ditmcGxlTmk3TytkekdqcmFYVzhDL1V5TSt0VTN6eG5ReEhOaksyTnNNZEViaUY4OWVJQ3VzcmF5NXIvRnhYMStLbGZDOGhBTHJuV2trRXdLZGtTMmN2YzdaYStHZzd2bncxZmVLWHEydVZLajdtUXJUUXlOaDJPakMyMVczRjYwUDFtQS9yUlNyS0RDamNBQUpBZDQ5dVAyWkNsNHUzOGxieFRhc0dMdHBJZExuUTd0Ynd6OCswbFhSV0FDYWJGcU1NQ0FPaTlPL0drZkM1VEp6aE1TR0FtN0RGUVhjVHVMMVR6a2xkVlhTNWtDOXhaN3VxUTNUbEh5ZGY2VlUyVXNkYVM4WTBMRThId3ZpVWxpbmxiMkxKK0xpQURlWlZVSUEvdm04bmNkams1aHJISEJrRXdjYnZwV3ZYdWE4L0sxUHBTRUpUcVc1bVY2UUs4ajFveXFrWHZVbHBWWEV0ZUc3Smw5cVFHZTBqUzZFY3J5UTRDTndBQWtDM1pXeVRMa2RaSlVlRzBWL2U5YXk5NWVtV0hyTVJIWkhJb2xaWWFXK0lXS1kyWlpWNGJBUFRSNnphc09yVTBucmxXMWNtK1FzK0pDVVYrY3JzbW9TeElVMTJTMTU3cDc2dzNkNkpJTTZ6YXYzK1hEYndtN0g2c25EUzdTbzA2THU4czFiSXk4MDdmT0g4a2VIR3NRWHRKYkZVL0Y1Q0JQTk1ENGJHZ3FTdXViYU5rMXVxc3pDQ1krdXlzVFB1bXVhN0VOTFNSaDc1ZlZrb2xWY0pHVEtRQ2laSjVsN0s2Wjg5RFMxN2QzMHBnQWpjQUFKQXRicEhzSjB1VE52aVpGL1NYbTZVM2YzdkdIcmxQaTE4bVpIdFlTZWI4dWRhaldUQy9aTi9VbEdaN045Y0dBUEJZYm44eHZ6d3RXazFMRmltNy85QjJZUzIwT3hGWCtXYlVvZ1JTazVaY2tWSnJNZGxuZDRNTDExcWxVYnQ2dE12ZVYzWWhVcnUvTjdKaFc1c3YrN0NTUFM2Y1hkcWRsWk52WEh0Skc3b0pvUnMyaTFhU1FCZlZGeHI2K2ErUGg2VnR1VHF4dHpNcjArMnNUZnZ6UnpESnQ2blZtM2xpdEpuUkgxdzRJWDFFNEFZQUFMTG5HME1MY25yRnRRNmlIVS9mdFU3WXNIUEt1emNpN3F4L1Y2bHdlbVZPZ3ZpWVY2MjIxa3JhYnBsRGRyRnlJbmZ2WmdBZ2ExeXI2cDhzNzdRclVObWVDWnBVdnBuSTdsdXFOblN6YVU3b1FyaUdEY2pjL05XNlhVS3pJWlNwSjk4Ym0yc1AvUmtEYXJ2OTg2NVN6ZjJzY251L212ek1zcjIyUDdQOUYzbkwvYjZENFZGNzY0aGtCS0ViTmtzYnMyQm9KUWwwbHcydzFVaDEzSWpPVnZVN0hzbFYrT2tQenZmOXVJREFEUUFBWkpNTFZVeFFFYU15M1BZaGcveXRjdXVZc0F1TkU5NEZieTVvQytXb1Z6UHdBQUFpb1o2eXh4TzdjbmM4NFU2TVVjYjltMGJ2QzhyQ1IzeS9OdmYrWUVKSkZzOExtWkpUUzJjelUrMHVxNkhiOEw1bDVkcGlBdXZnNXJZWjNjeE1zQXhrU1RMUDdjV3hhVTZFeUw1a3hxVytPeTRwQ0FRQUFDQ0xYUEJ6UjQvYkJhSHN6ZTNLUEZmbDV2Mzk3b0szcTNMNjlyeWMrYWovbFF1dUJaY0wyVTZ2SEpjekswc1NtSXVFYlFEZ29jN3hSS2NDRE5rV2hyTXl1NVNwZG1ENnh2bVpZQ0RZN1JZSEJYZ01tNEUza3JsdHRKSUVlc2FkQ0dIRXpBZ3lLKzF0SllFYkFBRElMamZQTFk1cHA5SnZibkV5TS9lN3FZclJjMG5vMVFuZjN2bW8rMVVNOXdLMjVXazVjOXVHYXpic2N5R2JPOXMrUjNNQUFDQ1gzUEhFWGIyWDBDMEgycTBsTTFjdDFxd3ZMTHJGUVVJM1BJNk83WEV0WVJ2UWMvcUdhME9vYW9KTVNudGJTVXRKQUFDUWJRZUhadVFueTZPWm43K1NOZTUrUDdPeTN5NXNWU1FMa3RETGhXLzI0dHBwdFdmYkxJb3lpOGxzbTVhNUlvRnFWKzJWU3ZVSC9ud3pkcTI1eXFMdFJkbWZGYW9keVp3YlkwYmJYMDltM1VqU2c4c3dtdzBBTXNlRmJqOWEyaXZiZ292dE9XYklzQW03bjYvSnE0TW5KVXZzNHFDT3FydUR1L0Z4cGRTRUFHc1lyYWZrMW9WTEFxQXY0Z0UxSGpUTlJaVzBaa2FHVE1pdDg2bHVLd25jQUFCQTlybjVLenJZd3dKWm45MkpKK1Z6NGVWTVZuQzFaOXRVN0sxSzBuU2kxUDVpUWpjZi9QN096SnZnMHgrUVhKUUFBUEtDMEMwL3RKbXlIN01WdURuMWhZWVdtUXhlSEtzelF3Z2R4dWhwL2NHRkV3S2dmOXoyT0tydURlN3F5M1o3SEFtOGwyd3JiMTVJZmQ5UFMwa0FBSkI5cnNWaG9GTVppRnRvdFBRRUFPUU43U1Z6d0Q1MnpXd2ZGN29aUXN4MWc3TzZnTXp4TnBBR0Y3clI3amNUZk5wV0VyZ0JBSUI4R0I5YUZCMGZFZlNYYXkxcFRQYk9JTThVRm4wQm9LOEkzYkxMbUVWWjBidVR4ekRqUHAzclp1WUVoVVRZQm5qQXRmc2xkUE9hYTducjA3YVN3QTBBQU9TSEMzK1UxQVQ5NVZwNkpyUFEwSDFtZGRFWEFOQlhuZENOL1Z1RzJHRHF0bjNNSm9jYWtoZHVvZmZtK1VuN2I1dGtzYmRZZkZ0QUJnck5iWXUzQmJ1TkNNY0UvcG53cmVVdWdSc0FBTWdYTjFlTU05TDd5N1gwdk9OYU4zRy9kOWRxMkphRHMvUUJJSlBjOXZmVjdidnRyUm1CNTh5MEhOZyttYXV3YlkzNHh2azVxdDJLd1M3b04wVHJjV2EyQVo1eDdTVnZuTFBIQkpydUxoNXcyOG80TnBYNHhqbnZIZzhDTndBQWtDOXVjVXpyU1VGLzBYNnJ5d2piQU1BYkJ3YVBTR0FESFhqSU5FU3BpZzNiOGw4SlJMVmI3cm5IVlV0cmIvekJoUVVCNEtYNHhvVUorMXFkRnFRbTJWYkdkM2ZMcmZPWHhFTUViZ0FBSUg4T0R0V0VzOUg3ajlDdFN3amJBTUE3NHpiUUNlTGQ3T004WXFSbTk1ZTc1ZFZudlZ4dzY1VjcxVzVpT05iTkZWUFQvN0t5VzI2OFM4czZ3SFA2NXJsamRodDhSSlRrc3FyYWI2dmJ5bHZ2MWNWVEJHNEFBQ0NmM05ub3pGM3BQMEszclRIMk9idGlGdzhKMndEQVArTkRpNnR6TmFrK1Nac3hVL0tOd2VLZW5PS3EzVzZjUHhMSGQzZlNaakw3M0x3Mkc2VHVsVWFOeFhzZ0krdzJlQ1p1M2QxTnhYSC9HS09uczdDdEpIQkxXV1BsWTBFeDhGZ0RRQXJjWERIT091cy9RcmROTWpQeWplMjc4enAvQmdCeXdlM2pEZ3lPaTQ0NXN6ME43c1NVT041dDk1Zk10M0k2YlNZRFUyWFJOM3ZjWStabUVER3ZEY2dvdHczZUZ1em14SWZldXJldHZIa2hFKzJqQ2R4Uzl0M3ZueE1VQTQ4MUFLVEFMWW9adXlDRy9uUDNmYUIzMjF0emdpZHpaK29mMk01ekZRQ3k0dURRak55eHdZK1NtcUFQakEwM3pYUnlZc3ByUTNRdytJejQvZk5uOWMxek81bnZsaDJ1VXFQZEZzM1BHVVFBMXFtKzBHQytadTlvWXhheXRxMGtjRXZaZDk3K0MvbmhxWjhKOHMwOXh1NnhCZ0NrNE1EUW5ERFBMUjNqUXcwNU1Pak91cDRXUElLcGM2WStBR1NVTzduazFjRzlkanMrU1ZWM1R5MGtzOW9PYk0vRW1lMXBTdWE3RWJ4NXp0UmlhZTFPS2pWb0lRbmt4cjM1bWxTN2RVV3lEOU42M053OFA1NjFiU1dCbXdmKy9aRVQ4dGIwRCtUYTlROEYrZUxhU0w0MS9mM2tNUVlBcENpSWo3RVFscUp4dTBCMk45N0pZL0JaWmlhWjE4YVorZ0NRYmE4TnphM09kcHNUZEkrUm1paFZTVnA0TXR0MFF6ckJXMnhNVlVUVkJLbnJ0RVJMNWcvZGVKZGpQeUNQT20xK09lbGhTNHcyTTY2cUxmN2dRaVpuNWhLNGVjSzFHL3phd2YrUVZFSVJ2R1dmQzlxKzgvYVA1Rjk5K1UvdFkzdGVBQUFwYzVWV0FmUGNVdlZwaTBtcURWM3dtQ3dnYmovQ3ZEWUF5SW4yYkxmSjlna21CRzliMGduYXZqRzRWMTU5bG5aN1czSHovTm40eHRtOWNYeDNKMVVYNlZoZGRKOUlLZzlwSHdrVVF1ZWtCeVBtQ01IYlJwaWEyMS9wRDg0ZnlYSUZNSUdiUitydmY1aFVRdjJiLzJOS3Z2WFdDYm4wODc4VFpJdDd6RnhGbXd2YVhBdEpGN3dCQUR3eFByUW9jVXdyb2pTMVcwd2VFUjN2TFdhMTIrcjhHVmZWeGdJaUFPVFQvY0ZiSnMvTVRnMUJXKytzVmwyNGhVd3FML3JGMUdRMWFJdHZuRHNwQUFwSDN6Zy9rN1NaZEoxTjhCZ3VhRnV0QUxiN0s4bTRrc0E3THFRNStjN1Bra3YwMG5PeTV5dGZrbThlL0txOS9uMkJYOXhqZGVWWHY1R3pQLzBiK2FGOXZBallBTUJ6QjRkbTVQVEtIbnVyS2tqUHdhR2EvYmhUVGkxTlNSQWNGbEdSNUY3U1B2SVlGVzBBVUJEdEZvamo4cU9sU0xhRlIrM3RDY0hEdWFBdFVOTnlnSkN0NSt4Q1p0eXV3SnlUNGVwb1lHSjNIRlpSU2lKQmw3aUZZNW1tbWcxQXdwM3dJSEpFbnYvNmlTQVlPTW8yZDYxOGJpOEozRHpucXQ3cTc3ZkROOGVGYjUzTHJwZS9LT1hCcHdYOTB3bllMdjM4bDhubHlxK3VFcklCUU5ZRThhVG9ZTFFZSVkvblhBRDZvNldGL0M1RXVvbzJOU2QzNHhQTW5nR0FnbXB2L3lmdC91NVllMzluS2h5RE9FbWwrNXlzNkJPY2pKS1NHd3VMMmowM25lZkg5d1JCYTRLRjRNMXBWd3pxT2Ywdkg1M0ljaHMwQUQzVUR0NG1iZkFXaGVGQXhSaDF0SWpiVzJPWDEwV2JPVzFrSWE4bkpoQzRaVXduNk9uWTlmSk9HYldYWGIrM003bE5DTmM5blhETmhXcFgvdjZxMVA3TEw1bXZCd0I1NE5vYW5scWFsQ0M4S0VoZkxoY2lYZEFtTXl3aUFnRHU2ZXp2bkhlV0pxUVVIcktyVGhVcGxOVVRVWlJha0ZjSHFmN3h5YTM1UzNZaHVQMll1UEJOdGFvUzJQQk5aRlR3VUVuSVpzeENuaGVOQWZUQTJrcmoxWk1kbEZJVGtudW1adXorWDMrMGNqTHZKeVlRdUdWY0VnYlp5MW91Y0d1SGJ6c2xHbmt1dVc1LzdZdUNCN2tRYmRFR2E5ZGNOYUc5N2E0WDdYMUt1QVlBT2VaYUdzNHZUNHRXMHdJL2ZCcThSUkxhQmNnd09KcXQ0TTB1SWhxMW1MVEVZaEVSQVBBNHJ3M05pVnRvNit6emNoMit1VW8yRzdBUnNtWEhmZUZicHhKRDlsRDk1dGdGWTJOcVdxc2FJUnVBTGV0c2I1Ly8rakczclJVSkRyVlBRTTJIZTlXL0JkdG1xbkI0ekFnS1k0Y040TnhjdUU0bzU2NTNySDRldmZRN3N0MWU1NlZDemxXb0xkdEwvZjEvU2xwekpyZXZ0Njlkb05aWS9waFFyZURpRytlVUFBRDhkZWIySG51VVB1RnYxVnR5cHY1Q01udm1kbnlXYWpZQXdLYmRPK0VrM0pQdGF1L092dEVzeXVlM0xjaS8rL3cxUVg3WUFFNkNnVjJCQzRoelhnSG4ycDRwTVl0R3kySlN4ZmJKN1N1MGl3VFFjK1ZLT1h6NjJXb1dUM1M0dDkxMGxXeHhhVUUrT0ZQSVl3QUNOenlVQytiSzI5dmhXM0t4dDkzWEhQZjU5dFd2clEzblhHQzMxbWJDdTA1SXRwWUx6RDY5L1dsQTFnbkxPdGZ1LzdrL1Q1Q0c5U0p3QTRBTWFZZHZWWHVwaUZJcExlNnNWckVwVXhNVjFPVFZaem16R1FEUUcvTkxvOUswWVlZTDRJd1pUVy9mOXppZC9hSXMybFUyRzdBTjFBallDdWo1OFQxaDJOcHBnNmxkS2doR2paaFIrMGE3TEJtU3pCU3l5MHFpN1RGZXFPcmFCSmZjakRzQmdMUU5WMGREaWUxeFFMRGZHQlA1ZEtKREVyQXBWVE02WGt5cTJEZ3hJYUhDa2JFbGUrOWtha2NJQU4xQTRBWUFHVFc3VkpidHBWMUoreTFsQXpodHl0MWZpRXhhWUxtRmxqcUxpQUNBMUhYMmZWcTc4QzJ5SWRkb2IvWi9uNVhNSlcyczdoTWJTZVZhb09yeXVZRkY5b3Q0cEhLbExFOE43WktnVlE3RVBrZU5LYStHY1c3OU1Vb2prRXRhbXlsWGZhRVdqZFlObmJRQ2Q2R3hmUzRYdEFvRFFBYXRibCtEa2czaFlodkFyVzViZXhuRTNiZjlWTWFHYS9hOU10dk9SMUxCaTJOWDZjRU1vR2pjemtMZlBMZFRBQUQ1NGFvQlRHbTdYWUNNa3NYSWhJa2U4ZDF1OGRBdXN1ajJkV0EvVi9FMTJmYlVFZ3VJQUlCTWNXRmMyYTdyZFBhQkx0UlF3V3Fna1FRY2p3azNiSGlXZk52cS90QkpBclZTWFQ3OFpKbDJ5ZWlaRjE3ZElZRWVrbGh0ZDhHY2FGVU9TdmE1cWo5OXZxcDd4M09QWm93N1NhcE5hMm5mZGtHYUx0bGpPL3RjL3UzL1hLYmlBa0FodU8ycTZiei9qYU8xMjlUSGJVL3ZiVWZ0ZTJMZHN1K0wzVFpVaGRkRUIwdUVhaHRINEFhZ2tHemd0bWdEdDkwQ0FBQUFBQUFBQU1BV0JVcXRuczBFQUFXaWxPRU1Od0FBQUFBQUFBQkFWd1FpcStYV0FGQWtSZ2pjQUFBQUFBQUFBQUJkRVJpaHlnTkE4U1FEUHdFQUFBQUFBQUFBNklKQUZJdk9BSXFJZHJvQUFBQUFBQUFBZ080SWxOTFhCQUFLUmh1ektBQUFBQUFBQUFBQWRFRVFOMHNzT2dNb29DWW5Hd0FBQUFBQUFBQUF1a0s1RCtISTJKSVlLUXNBRkVNanZuRnVTQUFBQUFBQUFBQUE2SUlnK1dnVVZXNEFDb1Iya2dBQUFBQUFBQUNBN2trQ044UGlNNEFDTVZyWTVnRUFBQUFBQUFBQXVpWUozRlNnTHdrQUZJUTJzaUFBQUFBQUFBQUFBSFJKRXJqRllha21BRkFVbjl5K0lnQUFBQUFBQUFBQWRFbDdobHQ5b1NHaWFnSUF1V2RxMHFnMUJBQUFBQUFBQUFDQUxnazZONHl4aTlBQWtIUEdjSElCQUFBQUFBQUFBS0M3N2dWdVFSQXd4dzFBN3VsbTY2d0FBQUFBQUFBQUFOQkZhdTBud1l0alY1V1NTQUFnaDR5UnVyNTVicWNBQUFBQUFBQUFBTkJGd1djK254TUF5Q3RqRmdRQUFBQUFBQUFBZ0M2N0wzQ2pyU1NBUE5PbWVVSUFBQUFBQUFBQUFPaXkrd0szMXZXRm1vaXFDUURrakRHeUtMZmVxd3NBQUFBQUFBQUFBRjMyMlphU1loUXQxd0RrajFJeUl3QUFBQUFBQUFBQTlNQURnWnN1QlNkRlNVTUFJQ2VNa1hwODQ5eEpBUUFBQUFBQUFBQ2dCeDRJM0tTKzBEQ2FTaEFBZVdKcUFnQUFBQUFBQUFCQWp3UVArNkxlRnB5Z3lnMUFYbWpkUENZQUFBQUFBQUFBQVBUSVF3TTNxdHdBNUlVeFprNXV2VmNYQUFBQUFBQUFBQUI2SkhqVS82REtEVUFlVU4wR0FBQUFBQUFBQU9pMVJ3WnVWTGtCeURxanpRelZiUUFBQUFBQUFBQ0FYZ3NlOXorcGNnT1FWY1pJWFp2bUNRRUFBQUFBQUFBQW9NZkN4LzdmeG4vN1JEMzd1M2VVcUs4TEFHU0lVakpsUHZqTFN3SUFBQUFBQUFBQVFJK3A5WHhUT0x6L29vaXBDQUJrUUZMZGR2UGNUZ0VBQUFBQUFBQUFvQStDZFgzVGdEb2lBSkFSV3QvZEt3QUFBQUFBQUFBQTlFbTRubS9TamY5MlN3MytibG1KK3JJQWdNZU0wZFBtZzNmUENnQUFBQUFBQUFBQWZiS3VscElkd2ZEWVpmc0hSZ1VBUEVRclNRQUFBQUFBQUFCQUd0YlZVckpEeDNmSGJVVFhFQUR3akJGcDBFb1NBQUFBQUFBQUFKQ0dkYldVdk9lalh6ZlVzNzk3UjRuNnVnQ0FUN1QrdjgydGQzOHFBQUFBQUFBQUFBRDAyY1lDTjh2Yy9vZGZNTThOZ0UrTU5qUDZnd3ZIQkFBQUFBQUFBQUNBRkd4b2h0dGF6SE1ENEFOalpGSGZQTGRiQUFBQUFBQUFBQUJJeVlabXVLM2w1cm5aaGU2NkFFQkszRFpJNjd2akFnQUFBQUFBQUFCQWlqWmQ0Wlo0L3V0UkVHeTdxSlJFQWdCOXRCcTI3WlZiNzlVRkFBQUFBQUFBQUlBVWJickNMV0VYdXNOdHdiaU43Um9DQUgxaVJCcUViUUFBQUFBQUFBQUFYMnd0Y0xPYTlZWEZvQlRzSlhRRDBBOUoyQ1l0d2pZQUFBQUFBQUFBZ0RlMjFsSnlqWUdvT3FwYitxSmREUzhMQVBUQXZiRHR4cnVMQWdBQUFBQUFBQUNBSjdvV3VDV1k2UWFnUjVLWmJhbzFUdGdHQUFBQUFBQUFBUEJOZHdNM2g5QU5RSmNsWVJzejJ3QUFBQUFBQUFBQW50cnlETGNIMkFWeHR6QnVSS2hDQWJCbE5teGJKR3dEQUFBQUFBQUFBUGlzK3hWdWF3VEQrNDRyVVZNQ0FKdGd0Sm5SSDV3L0lnQUFBQUFBQUFBQWVDeVVIakszLytHbmF2QjNsNVZTWDdhZlBpVUFzQTVHcENGYS85LzZnd3ZIQkFBQUFBQUFBQUFBei9XMHd1MGU1cm9CV0tmVkZwTGp0SkFFQUFBQUFBQUFBR1JGZndLM1ZjR0xZMGR0NkRZdEFQQVF0SkFFQUFBQUFBQUFBR1JSWHdPM0JOVnVBQjVnYXJIRVIrVEd1NHNDQUFBQUFBQUFBRURHOUQ5d1d4VU83NXN3UmgwbGVBT0thM1ZXMjdUKzRNSUpBUUFBQUFBQUFBQWdvMEpKaWJuOUQ0dm02WjFuVlJEWTFFOTlXUUFVUmhLMEdmMy82WCs1L2JyNUgzOTFTUUFBQUFBQUFBQUF5TERVS3R6dWs3U1pIRGlxbEpvUUFMbTFHclRONkgvNTZJUTBhZzBCQUFBQUFBQUFBQ0FIL0FqY09sYUROL3RyVldnMUNlUUhRUnNBQUFBQUFBQUFJTS84Q3R6V1NHYThpVHBzZjhGUkFaQlJwbWFVV3RBZnJad2thQU1BQUFBQUFBQUE1SlczZ2RzOXJ1cE5EUndXcGFwVXZRSCtNMGJxSW5wT2ExV1RXK2VaendZQUFBQUFBQUFBeUQzL0E3ZTFocXVqZ2RIN2xWSVZ1NnhmRVFDZU1EVmpUSTJRRFFBQUFBQUFBQUJRUk5rSzNOWXFWOHJ5MU5DdVFMV3FLZ2hHalpoUis0OHBDNENlY3ZQWWxKaEZvMlZSSzZuSnY5eStSTHRJQUFBQUFBQUFBRUNSWlRkd2U1am52eDZKZkg1SFVJcEhKVGFSQ29QSXBnTmxHOGFWM1RVdEtZSEhjMkdhL1pDRVowcXB1cjJxRzYwYkVxcTYxcVl1Wm1CUlBqaHpUUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQURiby93Y2IxaUttUTVHY1V3QUFBQUJKUlU1RXJrSmdnZz09IiwgImVuY29kaW5nIjogImJhc2U2NCJ9LCAiaGVhZGVyc1NpemUiOiAwLCAiYm9keVNpemUiOiAzMDk2NywgInJlZGlyZWN0VVJMIjogIiIsICJfdHJhbnNmZXJTaXplIjogMzA5Njd9LCAiY2FjaGUiOiB7fSwgInRpbWluZ3MiOiB7ImRucyI6IDMuMjE5LCAiY29ubmVjdCI6IDI2LjQ3MywgInNzbCI6IDIxLjM1MywgInNlbmQiOiAwLCAid2FpdCI6IDcuMzc5LCAicmVjZWl2ZSI6IDMuMjYxfSwgInBhZ2VyZWYiOiAicGFnZUA3MDY4MGZjN2M1MzU5MDQ4MDExMWEzM2ZiYmQ0NGNjZiIsICJzZXJ2ZXJJUEFkZHJlc3MiOiAiMjA1LjIzNC4xNzUuMTc1IiwgIl9zZXJ2ZXJQb3J0IjogNDQzLCAiX3NlY3VyaXR5RGV0YWlscyI6IHsicHJvdG9jb2wiOiAiVExTIDEuMiIsICJzdWJqZWN0TmFtZSI6ICIqLmNhY2hlZmx5Lm5ldCIsICJpc3N1ZXIiOiAiR2xvYmFsU2lnbiBSU0EgT1YgU1NMIENBIDIwMTgiLCAidmFsaWRGcm9tIjogMTY5OTkwNDc2MiwgInZhbGlkVG8iOiAxNzM0MjA1NTYxfX0sIHsic3RhcnRlZERhdGVUaW1lIjogIjIwMjQtMTAtMzFUMDI6MzE6NDEuNDIxWiIsICJ0aW1lIjogNjUuMjI1LCAicmVxdWVzdCI6IHsibWV0aG9kIjogIkdFVCIsICJ1cmwiOiAiaHR0cHM6Ly9wYXJ0bmVyLmdvb2dsZWFkc2VydmljZXMuY29tL2dhbXBhZC9jb29raWUuanM/ZG9tYWluPW9rYXl0aS5waWNzJmNsaWVudD1kcC1zZWRvODVfM3BoJnByb2R1Y3Q9U0FTJmNhbGxiYWNrPV9fc2FzQ29va2llJmNvb2tpZV90eXBlcz12MSUyQ3YyIiwgImh0dHBWZXJzaW9uIjogImgzIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogIjphdXRob3JpdHkiLCAidmFsdWUiOiAicGFydG5lci5nb29nbGVhZHNlcnZpY2VzLmNvbSJ9LCB7Im5hbWUiOiAiOm1ldGhvZCIsICJ2YWx1ZSI6ICJHRVQifSwgeyJuYW1lIjogIjpwYXRoIiwgInZhbHVlIjogIi9nYW1wYWQvY29va2llLmpzP2RvbWFpbj1va2F5dGkucGljcyZjbGllbnQ9ZHAtc2Vkbzg1XzNwaCZwcm9kdWN0PVNBUyZjYWxsYmFjaz1fX3Nhc0Nvb2tpZSZjb29raWVfdHlwZXM9djElMkN2MiJ9LCB7Im5hbWUiOiAiOnNjaGVtZSIsICJ2YWx1ZSI6ICJodHRwcyJ9LCB7Im5hbWUiOiAiYWNjZXB0IiwgInZhbHVlIjogIiovKiJ9LCB7Im5hbWUiOiAiYWNjZXB0LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAsIGRlZmxhdGUsIGJyLCB6c3RkIn0sIHsibmFtZSI6ICJhY2NlcHQtbGFuZ3VhZ2UiLCAidmFsdWUiOiAiZW4tVVMifSwgeyJuYW1lIjogInJlZmVyZXIiLCAidmFsdWUiOiAiaHR0cDovL29rYXl0aS5waWNzLyJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhIiwgInZhbHVlIjogIlwiTm90P0FfQnJhbmRcIjt2PVwiOTlcIiwgXCJDaHJvbWl1bVwiO3Y9XCIxMzBcIiJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLW1vYmlsZSIsICJ2YWx1ZSI6ICI/MCJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLXBsYXRmb3JtIiwgInZhbHVlIjogIlwiV2luZG93c1wiIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtZGVzdCIsICJ2YWx1ZSI6ICJzY3JpcHQifSwgeyJuYW1lIjogInNlYy1mZXRjaC1tb2RlIiwgInZhbHVlIjogIm5vLWNvcnMifSwgeyJuYW1lIjogInNlYy1mZXRjaC1zaXRlIiwgInZhbHVlIjogImNyb3NzLXNpdGUifSwgeyJuYW1lIjogInVzZXItYWdlbnQiLCAidmFsdWUiOiAiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEzMC4wLjY3MjMuMzEgU2FmYXJpLzUzNy4zNiJ9XSwgInF1ZXJ5U3RyaW5nIjogW3sibmFtZSI6ICJkb21haW4iLCAidmFsdWUiOiAib2theXRpLnBpY3MifSwgeyJuYW1lIjogImNsaWVudCIsICJ2YWx1ZSI6ICJkcC1zZWRvODVfM3BoIn0sIHsibmFtZSI6ICJwcm9kdWN0IiwgInZhbHVlIjogIlNBUyJ9LCB7Im5hbWUiOiAiY2FsbGJhY2siLCAidmFsdWUiOiAiX19zYXNDb29raWUifSwgeyJuYW1lIjogImNvb2tpZV90eXBlcyIsICJ2YWx1ZSI6ICJ2MSx2MiJ9XSwgImhlYWRlcnNTaXplIjogNjQ1LCAiYm9keVNpemUiOiAwfSwgInJlc3BvbnNlIjogeyJzdGF0dXMiOiAyMDAsICJzdGF0dXNUZXh0IjogIiIsICJodHRwVmVyc2lvbiI6ICJoMyIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICJhbHQtc3ZjIiwgInZhbHVlIjogImgzPVwiOjQ0M1wiOyBtYT0yNTkyMDAwLGgzLTI5PVwiOjQ0M1wiOyBtYT0yNTkyMDAwIn0sIHsibmFtZSI6ICJjYWNoZS1jb250cm9sIiwgInZhbHVlIjogInByaXZhdGUifSwgeyJuYW1lIjogImNvbnRlbnQtZGlzcG9zaXRpb24iLCAidmFsdWUiOiAiYXR0YWNobWVudDsgZmlsZW5hbWU9XCJmLnR4dFwiIn0sIHsibmFtZSI6ICJjb250ZW50LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAifSwgeyJuYW1lIjogImNvbnRlbnQtbGVuZ3RoIiwgInZhbHVlIjogIjI0MiJ9LCB7Im5hbWUiOiAiY29udGVudC10eXBlIiwgInZhbHVlIjogInRleHQvamF2YXNjcmlwdDsgY2hhcnNldD1VVEYtOCJ9LCB7Im5hbWUiOiAiY3Jvc3Mtb3JpZ2luLXJlc291cmNlLXBvbGljeSIsICJ2YWx1ZSI6ICJjcm9zcy1vcmlnaW4ifSwgeyJuYW1lIjogImRhdGUiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo0MSBHTVQifSwgeyJuYW1lIjogInAzcCIsICJ2YWx1ZSI6ICJwb2xpY3lyZWY9XCJodHRwczovL3d3dy5nb29nbGVhZHNlcnZpY2VzLmNvbS9wYWdlYWQvcDNwLnhtbFwiLCBDUD1cIk5PSSBERVYgUFNBIFBTRCBJVkEgSVZEIE9UUCBPVVIgT1RSIElORCBPVENcIiJ9LCB7Im5hbWUiOiAic2VydmVyIiwgInZhbHVlIjogImNhZmUifSwgeyJuYW1lIjogInRpbWluZy1hbGxvdy1vcmlnaW4iLCAidmFsdWUiOiAiKiJ9LCB7Im5hbWUiOiAieC1jb250ZW50LXR5cGUtb3B0aW9ucyIsICJ2YWx1ZSI6ICJub3NuaWZmIn0sIHsibmFtZSI6ICJ4LXhzcy1wcm90ZWN0aW9uIiwgInZhbHVlIjogIjAifV0sICJjb250ZW50IjogeyJzaXplIjogMzc2LCAibWltZVR5cGUiOiAidGV4dC9qYXZhc2NyaXB0OyBjaGFyc2V0PVVURi04IiwgImNvbXByZXNzaW9uIjogMTEyLCAidGV4dCI6ICJfX3Nhc0Nvb2tpZSh7XCJfY29va2llc19cIjpbe1wiX3ZhbHVlX1wiOlwiSUQ9YzA4MWZlM2U5ZmEyYjBmNjpUPTE3MzAzNDE5MDE6UlQ9MTczMDM0MTkwMTpTPUFMTklfTVpZTC0tczVhdHZlMjVSVkJGZ3k2NkRtTm9QSHdcIixcIl9leHBpcmVzX1wiOjE3NjQwMzc5MDEsXCJfcGF0aF9cIjpcIi9cIixcIl9kb21haW5fXCI6XCJva2F5dGkucGljc1wiLFwiX3ZlcnNpb25fXCI6MX0se1wiX3ZhbHVlX1wiOlwiVUlEPTAwMDAwZjFkZTgyNzZkNTY6VD0xNzMwMzQxOTAxOlJUPTE3MzAzNDE5MDE6Uz1BTE5JX01hc0JhbkxxOUhaaHRSdUU4LUh1cXJ4MGhJaU9RXCIsXCJfZXhwaXJlc19cIjoxNzY0MDM3OTAxLFwiX3BhdGhfXCI6XCIvXCIsXCJfZG9tYWluX1wiOlwib2theXRpLnBpY3NcIixcIl92ZXJzaW9uX1wiOjJ9XX0pOyJ9LCAiaGVhZGVyc1NpemUiOiAwLCAiYm9keVNpemUiOiAyNjQsICJyZWRpcmVjdFVSTCI6ICIiLCAiX3RyYW5zZmVyU2l6ZSI6IDI2NH0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogMS44ODIsICJjb25uZWN0IjogMjEuMjA5LCAic3NsIjogMjEuMjA5LCAic2VuZCI6IDAsICJ3YWl0IjogMTQuOTM0LCAicmVjZWl2ZSI6IDUuOTkxfSwgInBhZ2VyZWYiOiAicGFnZUA3MDY4MGZjN2M1MzU5MDQ4MDExMWEzM2ZiYmQ0NGNjZiIsICJzZXJ2ZXJJUEFkZHJlc3MiOiAiWzJhMDA6MTQ1MDo0MDAxOjgyOTo6MjAwMl0iLCAiX3NlcnZlclBvcnQiOiA0NDMsICJfc2VjdXJpdHlEZXRhaWxzIjogeyJwcm90b2NvbCI6ICJRVUlDIiwgInN1YmplY3ROYW1lIjogIiouZ29vZ2xlYWRzZXJ2aWNlcy5jb20iLCAiaXNzdWVyIjogIldSMiIsICJ2YWxpZEZyb20iOiAxNzI4Mjg5NTAzLCAidmFsaWRUbyI6IDE3MzU1NDcxMDJ9fSwgeyJzdGFydGVkRGF0ZVRpbWUiOiAiMjAyNC0xMC0zMVQwMjozMTo0MS40MzlaIiwgInRpbWUiOiAxMDcyLjI3OCwgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHBzOi8vc3luZGljYXRlZHNlYXJjaC5nb29nL2Fmcy9hZHMvaS9pZnJhbWUuaHRtbCIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzIuMCIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICI6YXV0aG9yaXR5IiwgInZhbHVlIjogInN5bmRpY2F0ZWRzZWFyY2guZ29vZyJ9LCB7Im5hbWUiOiAiOm1ldGhvZCIsICJ2YWx1ZSI6ICJHRVQifSwgeyJuYW1lIjogIjpwYXRoIiwgInZhbHVlIjogIi9hZnMvYWRzL2kvaWZyYW1lLmh0bWwifSwgeyJuYW1lIjogIjpzY2hlbWUiLCAidmFsdWUiOiAiaHR0cHMifSwgeyJuYW1lIjogImFjY2VwdCIsICJ2YWx1ZSI6ICJ0ZXh0L2h0bWwsYXBwbGljYXRpb24veGh0bWwreG1sLGFwcGxpY2F0aW9uL3htbDtxPTAuOSxpbWFnZS9hdmlmLGltYWdlL3dlYnAsaW1hZ2UvYXBuZywqLyo7cT0wLjgsYXBwbGljYXRpb24vc2lnbmVkLWV4Y2hhbmdlO3Y9YjM7cT0wLjcifSwgeyJuYW1lIjogImFjY2VwdC1lbmNvZGluZyIsICJ2YWx1ZSI6ICJnemlwLCBkZWZsYXRlLCBiciwgenN0ZCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJwcmlvcml0eSIsICJ2YWx1ZSI6ICJ1PTAsIGkifSwgeyJuYW1lIjogInJlZmVyZXIiLCAidmFsdWUiOiAiaHR0cDovL29rYXl0aS5waWNzLyJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhIiwgInZhbHVlIjogIlwiTm90P0FfQnJhbmRcIjt2PVwiOTlcIiwgXCJDaHJvbWl1bVwiO3Y9XCIxMzBcIiJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLW1vYmlsZSIsICJ2YWx1ZSI6ICI/MCJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLXBsYXRmb3JtIiwgInZhbHVlIjogIlwiV2luZG93c1wiIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtZGVzdCIsICJ2YWx1ZSI6ICJpZnJhbWUifSwgeyJuYW1lIjogInNlYy1mZXRjaC1tb2RlIiwgInZhbHVlIjogIm5hdmlnYXRlIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtc2l0ZSIsICJ2YWx1ZSI6ICJjcm9zcy1zaXRlIn0sIHsibmFtZSI6ICJ1cGdyYWRlLWluc2VjdXJlLXJlcXVlc3RzIiwgInZhbHVlIjogIjEifSwgeyJuYW1lIjogInVzZXItYWdlbnQiLCAidmFsdWUiOiAiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEzMC4wLjY3MjMuMzEgU2FmYXJpLzUzNy4zNiJ9XSwgInF1ZXJ5U3RyaW5nIjogW10sICJoZWFkZXJzU2l6ZSI6IDczNSwgImJvZHlTaXplIjogMH0sICJyZXNwb25zZSI6IHsic3RhdHVzIjogMjAwLCAic3RhdHVzVGV4dCI6ICIiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8yLjAiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiYWNjZXB0LXJhbmdlcyIsICJ2YWx1ZSI6ICJieXRlcyJ9LCB7Im5hbWUiOiAiYWx0LXN2YyIsICJ2YWx1ZSI6ICJoMz1cIjo0NDNcIjsgbWE9MjU5MjAwMCxoMy0yOT1cIjo0NDNcIjsgbWE9MjU5MjAwMCJ9LCB7Im5hbWUiOiAiY2FjaGUtY29udHJvbCIsICJ2YWx1ZSI6ICJuby1jYWNoZSwgbXVzdC1yZXZhbGlkYXRlIn0sIHsibmFtZSI6ICJjb250ZW50LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAifSwgeyJuYW1lIjogImNvbnRlbnQtbGVuZ3RoIiwgInZhbHVlIjogIjcyNyJ9LCB7Im5hbWUiOiAiY29udGVudC1zZWN1cml0eS1wb2xpY3kiLCAidmFsdWUiOiAic2NyaXB0LXNyYyAnbm9uY2UtWEh3LUVTNjFXUEZJbnVpQnM4YlBGUScgJ3JlcG9ydC1zYW1wbGUnICdzdHJpY3QtZHluYW1pYycgJ3Vuc2FmZS1ldmFsJyAndW5zYWZlLWlubGluZScgaHR0cDogaHR0cHM6OyBvYmplY3Qtc3JjICdub25lJzsgcmVwb3J0LXVyaSBodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9jc3AvYWRzLWFmcy11aTsgYmFzZS11cmkgJ25vbmUnIn0sIHsibmFtZSI6ICJjb250ZW50LXNlY3VyaXR5LXBvbGljeS1yZXBvcnQtb25seSIsICJ2YWx1ZSI6ICJyZXF1aXJlLXRydXN0ZWQtdHlwZXMtZm9yICdzY3JpcHQnOyByZXBvcnQtdXJpIGh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2NzcC9hZHMtYWZzLXVpIn0sIHsibmFtZSI6ICJjb250ZW50LXR5cGUiLCAidmFsdWUiOiAidGV4dC9odG1sIn0sIHsibmFtZSI6ICJjcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeSIsICJ2YWx1ZSI6ICJzYW1lLW9yaWdpbjsgcmVwb3J0LXRvPVwiYWRzLWFmcy11aVwiIn0sIHsibmFtZSI6ICJjcm9zcy1vcmlnaW4tcmVzb3VyY2UtcG9saWN5IiwgInZhbHVlIjogImNyb3NzLW9yaWdpbiJ9LCB7Im5hbWUiOiAiZGF0ZSIsICJ2YWx1ZSI6ICJUaHUsIDMxIE9jdCAyMDI0IDAyOjMxOjQyIEdNVCJ9LCB7Im5hbWUiOiAiZXhwaXJlcyIsICJ2YWx1ZSI6ICJGcmksIDAxIEphbiAxOTkwIDAwOjAwOjAwIEdNVCJ9LCB7Im5hbWUiOiAibGFzdC1tb2RpZmllZCIsICJ2YWx1ZSI6ICJUdWUsIDE3IFNlcCAyMDI0IDA2OjAwOjAwIEdNVCJ9LCB7Im5hbWUiOiAicHJhZ21hIiwgInZhbHVlIjogIm5vLWNhY2hlIn0sIHsibmFtZSI6ICJyZXBvcnQtdG8iLCAidmFsdWUiOiAie1wiZ3JvdXBcIjpcImFkcy1hZnMtdWlcIixcIm1heF9hZ2VcIjoyNTkyMDAwLFwiZW5kcG9pbnRzXCI6W3tcInVybFwiOlwiaHR0cHM6Ly9jc3Aud2l0aGdvb2dsZS5jb20vY3NwL3JlcG9ydC10by9hZHMtYWZzLXVpXCJ9XX0ifSwgeyJuYW1lIjogInNlcnZlciIsICJ2YWx1ZSI6ICJzZmZlIn0sIHsibmFtZSI6ICJ2YXJ5IiwgInZhbHVlIjogIkFjY2VwdC1FbmNvZGluZyJ9LCB7Im5hbWUiOiAieC1jb250ZW50LXR5cGUtb3B0aW9ucyIsICJ2YWx1ZSI6ICJub3NuaWZmIn0sIHsibmFtZSI6ICJ4LXhzcy1wcm90ZWN0aW9uIiwgInZhbHVlIjogIjAifV0sICJjb250ZW50IjogeyJzaXplIjogMTU2MCwgIm1pbWVUeXBlIjogInRleHQvaHRtbCIsICJjb21wcmVzc2lvbiI6IDExNCwgInRleHQiOiAiPCFkb2N0eXBlIGh0bWw+PGh0bWw+PGhlYWQ+PG1ldGEgbmFtZT1cIlJPQk9UU1wiIGNvbnRlbnQ9XCJOT0lOREVYLCBOT0ZPTExPV1wiPjxtZXRhIG5hbWU9XCJmb3JtYXQtZGV0ZWN0aW9uXCIgY29udGVudD1cInRlbGVwaG9uZT1ub1wiPjxtZXRhIGNvbnRlbnQ9XCJvcmlnaW5cIiBuYW1lPVwicmVmZXJyZXJcIj48L2hlYWQ+PGJvZHk+PGRpdiBpZD1cImFkQmxvY2tcIj48L2Rpdj48c2NyaXB0IG5vbmNlPVwiWEh3LUVTNjFXUEZJbnVpQnM4YlBGUVwiPmlmICh3aW5kb3cubmFtZS5tYXRjaCgvXntcIm5hbWVcIjpcIm1hc3Rlci1cXGQrXCIvKSkge3ZhciBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtzY3JpcHQuc3JjID0gXCIvYWRzZW5zZS9zZWFyY2gvYWRzLmpzXCI7dmFyIGhyZWYgPSB3aW5kb3cubG9jYXRpb24uaHJlZjtpZiAoISFocmVmICYmIChocmVmLmluZGV4T2YoJz9wYWM9JykgPiAwIHx8IGhyZWYuaW5kZXhPZignJnBhYz0nKSA+IDApKSB7aWYgKGhyZWYuaW5kZXhPZignP3BhYz0xJykgPiAwIHx8IGhyZWYuaW5kZXhPZignJnBhYz0xJykgPiAwKSB7c2NyaXB0LnNyYyArPSAnP3BhYz0xJzt9IGVsc2UgaWYgKGhyZWYuaW5kZXhPZignP3BhYz0yJykgPiAwIHx8IGhyZWYuaW5kZXhPZignJnBhYz0yJykgPiAwKSB7c2NyaXB0LnNyYyArPSAnP3BhYz0yJzt9IGVsc2Uge3NjcmlwdC5zcmMgKz0gJz9wYWM9MCc7fX1kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHNjcmlwdCk7d2luZG93LklTX0dPT0dMRV9BRlNfSUZSQU1FXyA9IHRydWU7fWZ1bmN0aW9uIHBvcHVsYXRlKGVsKSB7dmFyIGFkQmxvY2sgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYWRCbG9jaycpO2FkQmxvY2suaW5uZXJIVE1MICs9IGVsO31mdW5jdGlvbiBnZXRNYXN0ZXIoKSB7dmFyIG0gPSBudWxsO3ZhciBwSW5kZXggPSB3aW5kb3cubmFtZS5pbmRleE9mKCd8Jyk7aWYgKHBJbmRleCA+IC0xICYmIHdpbmRvdy5uYW1lLmNoYXJBdCgwKSAhPSAneycpIHt0cnkge20gPSB3aW5kb3cucGFyZW50LmZyYW1lc1t3aW5kb3cubmFtZS5zdWJzdHJpbmcocEluZGV4ICsgMSldO30gY2F0Y2ggKGUpIHt9aWYgKG0pIHtyZXR1cm4gbTt9dmFyIG5hbWVJbmZvID0gd2luZG93Lm5hbWUubWF0Y2goL14oc2xhdmUtXFxkKyktKFxcZCspLyk7dmFyIG1hc3Rlck51bSA9IChuYW1lSW5mbyAmJiBuYW1lSW5mb1syXSkgPyBuYW1lSW5mb1syXSA6IG51bGw7aWYgKG1hc3Rlck51bSkge3RyeSB7bSA9IHdpbmRvdy5wYXJlbnQuZnJhbWVzWydtYXN0ZXItJyArIG1hc3Rlck51bV07fSBjYXRjaCAoZSkge319fXJldHVybiBtO313aW5kb3cub25yZXNpemUgPSBmdW5jdGlvbigpIHt2YXIgcmVzaXplTWFzdGVyID0gZ2V0TWFzdGVyKCk7dHJ5IHtyZXNpemVNYXN0ZXIgJiYgcmVzaXplTWFzdGVyLnNQSCAmJiByZXNpemVNYXN0ZXIuc1BIKCk7fSBjYXRjaChlKSB7fX07dmFyIG1hc3RlckZyYW1lID0gZ2V0TWFzdGVyKCk7dHJ5IHttYXN0ZXJGcmFtZSAmJiBtYXN0ZXJGcmFtZS5tUEFBU0ggJiYgbWFzdGVyRnJhbWUubVBBQVNIKCk7fSBjYXRjaChlKSB7fTwvc2NyaXB0PjwvYm9keT48L2h0bWw+XG4ifSwgImhlYWRlcnNTaXplIjogMCwgImJvZHlTaXplIjogMTQ0NiwgInJlZGlyZWN0VVJMIjogIiIsICJfdHJhbnNmZXJTaXplIjogMTQ0Nn0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogMC4wMDksICJjb25uZWN0IjogNTMxLjkxMSwgInNzbCI6IDI2OC4zOTMsICJzZW5kIjogMCwgIndhaXQiOiAyNjcuNjExLCAicmVjZWl2ZSI6IDQuMzU0fSwgInBhZ2VyZWYiOiAicGFnZUA3MDY4MGZjN2M1MzU5MDQ4MDExMWEzM2ZiYmQ0NGNjZiIsICJzZXJ2ZXJJUEFkZHJlc3MiOiAiWzI0MDQ6NjgwMDo0MDAzOmMxYTo6OGJdIiwgIl9zZXJ2ZXJQb3J0IjogNDQzLCAiX3NlY3VyaXR5RGV0YWlscyI6IHsicHJvdG9jb2wiOiAiVExTIDEuMyIsICJzdWJqZWN0TmFtZSI6ICJzeW5kaWNhdGVkc2VhcmNoLmdvb2ciLCAiaXNzdWVyIjogIldSMiIsICJ2YWxpZEZyb20iOiAxNzI4Mjg5NzQ5LCAidmFsaWRUbyI6IDE3MzU1NDczNDh9fSwgeyJzdGFydGVkRGF0ZVRpbWUiOiAiMjAyNC0xMC0zMVQwMjozMTo0MS40NTFaIiwgInRpbWUiOiAzNjguMzgzOTk5OTk5OTk5OTYsICJyZXF1ZXN0IjogeyJtZXRob2QiOiAiR0VUIiwgInVybCI6ICJodHRwczovL3N5bmRpY2F0ZWRzZWFyY2guZ29vZy9hZnMvYWRzP2Fkc2FmZT1sb3cmYWR0ZXN0PW9mZiZwc2lkPTkzMzAyNDQzODAmY2hhbm5lbD1leHAtMDA1MSUyQ2F1eGEtY29udHJvbC0xJTJDMzU5NjE1MTkmY2xpZW50PWRwLXNlZG84NV8zcGgmcj1tJmhsPWZyJml2dD0wJnJwYnU9aHR0cCUzQSUyRiUyRm9rYXl0aS5waWNzJTJGY2FmJTJGJTNGc2VzJTNEWTNKbFBURTNNekF6TkRFNU1EQW1kR05wWkQxdmEyRjVkR2t1Y0dsamN6WTNNakpsWXpCak1URXlPRFUzTGpVd056VXlNRGMxSm5SaGMyczljMlZoY21Ob0ptUnZiV0ZwYmoxdmEyRjVkR2t1Y0dsamN5WmhYMmxrUFRNbWMyVnpjMmx2YmoxUlZFTlRkWE5KVkRsak1WVlNha3hhVUZReWFnJTNEJTNEJnR5cGU9MyZ1aW9wdD1mYWxzZSZzd3A9YXMtZHJpZC0yMjQ5MzAxMTc1ODQ0NzMzJm9lPVVURi04JmllPVVURi04JmZleHA9MjE0MDQlMkMxNzMwMTQzNyUyQzE3MzAxNDM5JTJDMTczMDE0NDIlMkMxNzMwMTU0MiUyQzE3MzAxMjY2JTJDNzI3MTcxMDgmZm9ybWF0PXIzJTdDcyZub2NhY2hlPTcyMTczMDM0MTkwMTM5NiZudW09MCZvdXRwdXQ9YWZkX2FkcyZkb21haW5fbmFtZT1va2F5dGkucGljcyZ2PTMmYnNsPTgmcGFjPTAmdV9oaXM9MiZ1X3R6PTAmZHQ9MTczMDM0MTkwMTM5NiZ1X3c9MTI4MCZ1X2g9NzIwJmJpdz0xMjgwJmJpaD03MjAmcHN3PTEyODAmcHNoPTk5NyZmcm09MCZ1aW89LS0mY29udD1yYi1kZWZhdWx0JmRydD0wJmpzaWQ9Y2FmJm5mcD0xJmpzdj02ODgxNjA1MDYmcnVybD1odHRwJTNBJTJGJTJGb2theXRpLnBpY3MlMkYiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8yLjAiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiOmF1dGhvcml0eSIsICJ2YWx1ZSI6ICJzeW5kaWNhdGVkc2VhcmNoLmdvb2cifSwgeyJuYW1lIjogIjptZXRob2QiLCAidmFsdWUiOiAiR0VUIn0sIHsibmFtZSI6ICI6cGF0aCIsICJ2YWx1ZSI6ICIvYWZzL2Fkcz9hZHNhZmU9bG93JmFkdGVzdD1vZmYmcHNpZD05MzMwMjQ0MzgwJmNoYW5uZWw9ZXhwLTAwNTElMkNhdXhhLWNvbnRyb2wtMSUyQzM1OTYxNTE5JmNsaWVudD1kcC1zZWRvODVfM3BoJnI9bSZobD1mciZpdnQ9MCZycGJ1PWh0dHAlM0ElMkYlMkZva2F5dGkucGljcyUyRmNhZiUyRiUzRnNlcyUzRFkzSmxQVEUzTXpBek5ERTVNREFtZEdOcFpEMXZhMkY1ZEdrdWNHbGpjelkzTWpKbFl6QmpNVEV5T0RVM0xqVXdOelV5TURjMUpuUmhjMnM5YzJWaGNtTm9KbVJ2YldGcGJqMXZhMkY1ZEdrdWNHbGpjeVpoWDJsa1BUTW1jMlZ6YzJsdmJqMVJWRU5UZFhOSlZEbGpNVlZTYWt4YVVGUXlhZyUzRCUzRCZ0eXBlPTMmdWlvcHQ9ZmFsc2Umc3dwPWFzLWRyaWQtMjI0OTMwMTE3NTg0NDczMyZvZT1VVEYtOCZpZT1VVEYtOCZmZXhwPTIxNDA0JTJDMTczMDE0MzclMkMxNzMwMTQzOSUyQzE3MzAxNDQyJTJDMTczMDE1NDIlMkMxNzMwMTI2NiUyQzcyNzE3MTA4JmZvcm1hdD1yMyU3Q3Mmbm9jYWNoZT03MjE3MzAzNDE5MDEzOTYmbnVtPTAmb3V0cHV0PWFmZF9hZHMmZG9tYWluX25hbWU9b2theXRpLnBpY3Mmdj0zJmJzbD04JnBhYz0wJnVfaGlzPTImdV90ej0wJmR0PTE3MzAzNDE5MDEzOTYmdV93PTEyODAmdV9oPTcyMCZiaXc9MTI4MCZiaWg9NzIwJnBzdz0xMjgwJnBzaD05OTcmZnJtPTAmdWlvPS0tJmNvbnQ9cmItZGVmYXVsdCZkcnQ9MCZqc2lkPWNhZiZuZnA9MSZqc3Y9Njg4MTYwNTA2JnJ1cmw9aHR0cCUzQSUyRiUyRm9rYXl0aS5waWNzJTJGIn0sIHsibmFtZSI6ICI6c2NoZW1lIiwgInZhbHVlIjogImh0dHBzIn0sIHsibmFtZSI6ICJhY2NlcHQiLCAidmFsdWUiOiAidGV4dC9odG1sLGFwcGxpY2F0aW9uL3hodG1sK3htbCxhcHBsaWNhdGlvbi94bWw7cT0wLjksaW1hZ2UvYXZpZixpbWFnZS93ZWJwLGltYWdlL2FwbmcsKi8qO3E9MC44LGFwcGxpY2F0aW9uL3NpZ25lZC1leGNoYW5nZTt2PWIzO3E9MC43In0sIHsibmFtZSI6ICJhY2NlcHQtZW5jb2RpbmciLCAidmFsdWUiOiAiZ3ppcCwgZGVmbGF0ZSwgYnIsIHpzdGQifSwgeyJuYW1lIjogImFjY2VwdC1sYW5ndWFnZSIsICJ2YWx1ZSI6ICJlbi1VUyJ9LCB7Im5hbWUiOiAicHJpb3JpdHkiLCAidmFsdWUiOiAidT0wLCBpIn0sIHsibmFtZSI6ICJyZWZlcmVyIiwgInZhbHVlIjogImh0dHA6Ly9va2F5dGkucGljcy8ifSwgeyJuYW1lIjogInNlYy1jaC11YSIsICJ2YWx1ZSI6ICJcIk5vdD9BX0JyYW5kXCI7dj1cIjk5XCIsIFwiQ2hyb21pdW1cIjt2PVwiMTMwXCIifSwgeyJuYW1lIjogInNlYy1jaC11YS1tb2JpbGUiLCAidmFsdWUiOiAiPzAifSwgeyJuYW1lIjogInNlYy1jaC11YS1wbGF0Zm9ybSIsICJ2YWx1ZSI6ICJcIldpbmRvd3NcIiJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLWRlc3QiLCAidmFsdWUiOiAiaWZyYW1lIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtbW9kZSIsICJ2YWx1ZSI6ICJuYXZpZ2F0ZSJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLXNpdGUiLCAidmFsdWUiOiAiY3Jvc3Mtc2l0ZSJ9LCB7Im5hbWUiOiAidXBncmFkZS1pbnNlY3VyZS1yZXF1ZXN0cyIsICJ2YWx1ZSI6ICIxIn0sIHsibmFtZSI6ICJ1c2VyLWFnZW50IiwgInZhbHVlIjogIk1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS8xMzAuMC42NzIzLjMxIFNhZmFyaS81MzcuMzYifV0sICJxdWVyeVN0cmluZyI6IFt7Im5hbWUiOiAiYWRzYWZlIiwgInZhbHVlIjogImxvdyJ9LCB7Im5hbWUiOiAiYWR0ZXN0IiwgInZhbHVlIjogIm9mZiJ9LCB7Im5hbWUiOiAicHNpZCIsICJ2YWx1ZSI6ICI5MzMwMjQ0MzgwIn0sIHsibmFtZSI6ICJjaGFubmVsIiwgInZhbHVlIjogImV4cC0wMDUxLGF1eGEtY29udHJvbC0xLDM1OTYxNTE5In0sIHsibmFtZSI6ICJjbGllbnQiLCAidmFsdWUiOiAiZHAtc2Vkbzg1XzNwaCJ9LCB7Im5hbWUiOiAiciIsICJ2YWx1ZSI6ICJtIn0sIHsibmFtZSI6ICJobCIsICJ2YWx1ZSI6ICJmciJ9LCB7Im5hbWUiOiAiaXZ0IiwgInZhbHVlIjogIjAifSwgeyJuYW1lIjogInJwYnUiLCAidmFsdWUiOiAiaHR0cDovL29rYXl0aS5waWNzL2NhZi8/c2VzPVkzSmxQVEUzTXpBek5ERTVNREFtZEdOcFpEMXZhMkY1ZEdrdWNHbGpjelkzTWpKbFl6QmpNVEV5T0RVM0xqVXdOelV5TURjMUpuUmhjMnM5YzJWaGNtTm9KbVJ2YldGcGJqMXZhMkY1ZEdrdWNHbGpjeVpoWDJsa1BUTW1jMlZ6YzJsdmJqMVJWRU5UZFhOSlZEbGpNVlZTYWt4YVVGUXlhZz09In0sIHsibmFtZSI6ICJ0eXBlIiwgInZhbHVlIjogIjMifSwgeyJuYW1lIjogInVpb3B0IiwgInZhbHVlIjogImZhbHNlIn0sIHsibmFtZSI6ICJzd3AiLCAidmFsdWUiOiAiYXMtZHJpZC0yMjQ5MzAxMTc1ODQ0NzMzIn0sIHsibmFtZSI6ICJvZSIsICJ2YWx1ZSI6ICJVVEYtOCJ9LCB7Im5hbWUiOiAiaWUiLCAidmFsdWUiOiAiVVRGLTgifSwgeyJuYW1lIjogImZleHAiLCAidmFsdWUiOiAiMjE0MDQsMTczMDE0MzcsMTczMDE0MzksMTczMDE0NDIsMTczMDE1NDIsMTczMDEyNjYsNzI3MTcxMDgifSwgeyJuYW1lIjogImZvcm1hdCIsICJ2YWx1ZSI6ICJyM3xzIn0sIHsibmFtZSI6ICJub2NhY2hlIiwgInZhbHVlIjogIjcyMTczMDM0MTkwMTM5NiJ9LCB7Im5hbWUiOiAibnVtIiwgInZhbHVlIjogIjAifSwgeyJuYW1lIjogIm91dHB1dCIsICJ2YWx1ZSI6ICJhZmRfYWRzIn0sIHsibmFtZSI6ICJkb21haW5fbmFtZSIsICJ2YWx1ZSI6ICJva2F5dGkucGljcyJ9LCB7Im5hbWUiOiAidiIsICJ2YWx1ZSI6ICIzIn0sIHsibmFtZSI6ICJic2wiLCAidmFsdWUiOiAiOCJ9LCB7Im5hbWUiOiAicGFjIiwgInZhbHVlIjogIjAifSwgeyJuYW1lIjogInVfaGlzIiwgInZhbHVlIjogIjIifSwgeyJuYW1lIjogInVfdHoiLCAidmFsdWUiOiAiMCJ9LCB7Im5hbWUiOiAiZHQiLCAidmFsdWUiOiAiMTczMDM0MTkwMTM5NiJ9LCB7Im5hbWUiOiAidV93IiwgInZhbHVlIjogIjEyODAifSwgeyJuYW1lIjogInVfaCIsICJ2YWx1ZSI6ICI3MjAifSwgeyJuYW1lIjogImJpdyIsICJ2YWx1ZSI6ICIxMjgwIn0sIHsibmFtZSI6ICJiaWgiLCAidmFsdWUiOiAiNzIwIn0sIHsibmFtZSI6ICJwc3ciLCAidmFsdWUiOiAiMTI4MCJ9LCB7Im5hbWUiOiAicHNoIiwgInZhbHVlIjogIjk5NyJ9LCB7Im5hbWUiOiAiZnJtIiwgInZhbHVlIjogIjAifSwgeyJuYW1lIjogInVpbyIsICJ2YWx1ZSI6ICItLSJ9LCB7Im5hbWUiOiAiY29udCIsICJ2YWx1ZSI6ICJyYi1kZWZhdWx0In0sIHsibmFtZSI6ICJkcnQiLCAidmFsdWUiOiAiMCJ9LCB7Im5hbWUiOiAianNpZCIsICJ2YWx1ZSI6ICJjYWYifSwgeyJuYW1lIjogIm5mcCIsICJ2YWx1ZSI6ICIxIn0sIHsibmFtZSI6ICJqc3YiLCAidmFsdWUiOiAiNjg4MTYwNTA2In0sIHsibmFtZSI6ICJydXJsIiwgInZhbHVlIjogImh0dHA6Ly9va2F5dGkucGljcy8ifV0sICJoZWFkZXJzU2l6ZSI6IDE0NjUsICJib2R5U2l6ZSI6IDB9LCAicmVzcG9uc2UiOiB7InN0YXR1cyI6IDIwMCwgInN0YXR1c1RleHQiOiAiIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMi4wIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogImFsdC1zdmMiLCAidmFsdWUiOiAiaDM9XCI6NDQzXCI7IG1hPTI1OTIwMDAsaDMtMjk9XCI6NDQzXCI7IG1hPTI1OTIwMDAifSwgeyJuYW1lIjogImNhY2hlLWNvbnRyb2wiLCAidmFsdWUiOiAicHJpdmF0ZSwgbWF4LWFnZT0zNjAwIn0sIHsibmFtZSI6ICJjb250ZW50LWRpc3Bvc2l0aW9uIiwgInZhbHVlIjogImlubGluZSJ9LCB7Im5hbWUiOiAiY29udGVudC1lbmNvZGluZyIsICJ2YWx1ZSI6ICJiciJ9LCB7Im5hbWUiOiAiY29udGVudC1sZW5ndGgiLCAidmFsdWUiOiAiMjg3OCJ9LCB7Im5hbWUiOiAiY29udGVudC1zZWN1cml0eS1wb2xpY3kiLCAidmFsdWUiOiAib2JqZWN0LXNyYyAnbm9uZSc7YmFzZS11cmkgJ3NlbGYnO3NjcmlwdC1zcmMgJ25vbmNlLUgwWDFON2tPU2tqblJ6QjF4RGhCdUEnICdzdHJpY3QtZHluYW1pYycgJ3JlcG9ydC1zYW1wbGUnICd1bnNhZmUtZXZhbCcgJ3Vuc2FmZS1pbmxpbmUnIGh0dHBzOiBodHRwOjtyZXBvcnQtdXJpIGh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2NzcC9nd3Mvb3RoZXIifSwgeyJuYW1lIjogImNvbnRlbnQtdHlwZSIsICJ2YWx1ZSI6ICJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgifSwgeyJuYW1lIjogImNyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5IiwgInZhbHVlIjogInNhbWUtb3JpZ2luLWFsbG93LXBvcHVwczsgcmVwb3J0LXRvPVwiZ3dzXCIifSwgeyJuYW1lIjogImRhdGUiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo0MiBHTVQifSwgeyJuYW1lIjogImV4cGlyZXMiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo0MiBHTVQifSwgeyJuYW1lIjogInJlcG9ydC10byIsICJ2YWx1ZSI6ICJ7XCJncm91cFwiOlwiZ3dzXCIsXCJtYXhfYWdlXCI6MjU5MjAwMCxcImVuZHBvaW50c1wiOlt7XCJ1cmxcIjpcImh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2NzcC9yZXBvcnQtdG8vZ3dzL290aGVyXCJ9XX0ifSwgeyJuYW1lIjogInNlcnZlciIsICJ2YWx1ZSI6ICJnd3MifSwgeyJuYW1lIjogIngteHNzLXByb3RlY3Rpb24iLCAidmFsdWUiOiAiMCJ9XSwgImNvbnRlbnQiOiB7InNpemUiOiAxNDUxNSwgIm1pbWVUeXBlIjogInRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIsICJjb21wcmVzc2lvbiI6IDExMjEzLCAidGV4dCI6ICI8IWRvY3R5cGUgaHRtbD48aHRtbCBsYW5nPVwiZnItTFVcIj4gPGhlYWQ+IDxzdHlsZSBpZD1cInNzci1ib2lsZXJwbGF0ZVwiPmJvZHl7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7IGZvbnQtZmFtaWx5OmFyaWFsLHNhbnMtc2VyaWY7IG1hcmdpbjowO30uZGl2ey13ZWJraXQtYm94LWZsZXg6MCAwOyAtd2Via2l0LWZsZXgtc2hyaW5rOjA7IGZsZXgtc2hyaW5rOjA7bWF4LXdpZHRoOjEwMCU7fS5zcGFuOmxhc3QtY2hpbGQsIC5kaXY6bGFzdC1jaGlsZHstd2Via2l0LWJveC1mbGV4OjEgMDsgLXdlYmtpdC1mbGV4LXNocmluazoxOyBmbGV4LXNocmluazoxO30uYXt0ZXh0LWRlY29yYXRpb246bm9uZTsgdGV4dC10cmFuc2Zvcm06bm9uZTsgY29sb3I6aW5oZXJpdDsgZGlzcGxheTppbmxpbmUtYmxvY2s7fS5zcGFuey13ZWJraXQtYm94LWZsZXg6MCAwOyAtd2Via2l0LWZsZXgtc2hyaW5rOjA7IGZsZXgtc2hyaW5rOjA7ZGlzcGxheTppbmxpbmUtYmxvY2s7IG92ZXJmbG93OmhpZGRlbjsgdGV4dC10cmFuc2Zvcm06bm9uZTt9LmltZ3tib3JkZXI6bm9uZTsgbWF4LXdpZHRoOjEwMCU7IG1heC1oZWlnaHQ6MTAwJTt9Lmlfe2Rpc3BsYXk6LW1zLWZsZXhib3g7IGRpc3BsYXk6LXdlYmtpdC1ib3g7IGRpc3BsYXk6LXdlYmtpdC1mbGV4OyBkaXNwbGF5OmZsZXg7LW1zLWZsZXgtYWxpZ246c3RhcnQ7IC13ZWJraXQtYm94LWFsaWduOnN0YXJ0OyAtd2Via2l0LWFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7IGFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Ym94LXNpemluZzpib3JkZXItYm94OyBvdmVyZmxvdzpoaWRkZW47fS52X3std2Via2l0LWJveC1mbGV4OjEgMDsgLXdlYmtpdC1mbGV4LXNocmluazoxOyBmbGV4LXNocmluazoxO30ual8+c3BhbjpsYXN0LWNoaWxkLCAual8+ZGl2Omxhc3QtY2hpbGQsIC53XywgLndfOmxhc3QtY2hpbGR7LXdlYmtpdC1ib3gtZmxleDowIDA7IC13ZWJraXQtZmxleC1zaHJpbms6MDsgZmxleC1zaHJpbms6MDt9Lmxfey1tcy1vdmVyZmxvdy1zdHlsZTpub25lOyBzY3JvbGxiYXItd2lkdGg6bm9uZTt9LmxfOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmU7fS5zX3twb3NpdGlvbjpyZWxhdGl2ZTsgZGlzcGxheTppbmxpbmUtYmxvY2s7fS51X3twb3NpdGlvbjphYnNvbHV0ZTsgdG9wOjA7IGxlZnQ6MDsgaGVpZ2h0OjEwMCU7IGJhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDsgYmFja2dyb3VuZC1zaXplOmF1dG8gMTAwJTt9LnRfe2Rpc3BsYXk6YmxvY2s7fS5yX3tkaXNwbGF5Oi1tcy1mbGV4Ym94OyBkaXNwbGF5Oi13ZWJraXQtYm94OyBkaXNwbGF5Oi13ZWJraXQtZmxleDsgZGlzcGxheTpmbGV4Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjsgLXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOyAtd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjsgYWxpZ24taXRlbXM6Y2VudGVyOy1tcy1mbGV4LXBhY2s6Y2VudGVyOyAtd2Via2l0LWJveC1wYWNrOmNlbnRlcjsgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO30ucV97Ym94LXNpemluZzpib3JkZXItYm94OyBtYXgtd2lkdGg6MTAwJTsgbWF4LWhlaWdodDoxMDAlOyBvdmVyZmxvdzpoaWRkZW47ZGlzcGxheTotbXMtZmxleGJveDsgZGlzcGxheTotd2Via2l0LWJveDsgZGlzcGxheTotd2Via2l0LWZsZXg7IGRpc3BsYXk6ZmxleDstbXMtZmxleC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYm94LWFsaWduOmNlbnRlcjsgLXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7IGFsaWduLWl0ZW1zOmNlbnRlcjstbXMtZmxleC1wYWNrOmNlbnRlcjsgLXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7IC13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjsganVzdGlmeS1jb250ZW50OmNlbnRlcjt9Lm5fe3RleHQtb3ZlcmZsb3c6ZWxsaXBzaXM7IHdoaXRlLXNwYWNlOm5vd3JhcDt9LnBfey1tcy1mbGV4LW5lZ2F0aXZlOjE7IG1heC13aWR0aDogMTAwJTt9Lm1fe292ZXJmbG93OmhpZGRlbjt9Lm9fe3doaXRlLXNwYWNlOm5vd3JhcDt9Lnhfe2N1cnNvcjpwb2ludGVyO30ueV97ZGlzcGxheTpub25lOyBwb3NpdGlvbjphYnNvbHV0ZTsgei1pbmRleDoxO30ua18+ZGl2Om5vdCgueV8pIHtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDsgZGlzcGxheTotbW96LWlubGluZS1ib3g7IGRpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94OyBkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWZsZXg7IGRpc3BsYXk6aW5saW5lLWZsZXg7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTt9LmtfLnRvcEFsaWduPmRpdnt2ZXJ0aWNhbC1hbGlnbjp0b3A7fS5rXy5jZW50ZXJBbGlnbj5kaXZ7dmVydGljYWwtYWxpZ246bWlkZGxlO30ua18uYm90dG9tQWxpZ24+ZGl2e3ZlcnRpY2FsLWFsaWduOmJvdHRvbTt9LmtfPnNwYW4sIC5rXz5hLCAua18+aW1nLCAua197ZGlzcGxheTppbmxpbmU7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTt9LnNpMTAxOm50aC1vZi10eXBlKDVuKzEpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjMWY4YTcwIDdweCBzb2xpZDt9LnJzc0F0dHJDb250YWluZXIgfiAuc2kxMDE6bnRoLW9mLXR5cGUoNW4rMikgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICMxZjhhNzAgN3B4IHNvbGlkO30uc2kxMDE6bnRoLW9mLXR5cGUoNW4rMykgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICNiZWRiMzkgN3B4IHNvbGlkO30ucnNzQXR0ckNvbnRhaW5lciB+IC5zaTEwMTpudGgtb2YtdHlwZSg1bis0KSA+IC5zaTE0MXtib3JkZXItbGVmdDogI2JlZGIzOSA3cHggc29saWQ7fS5zaTEwMTpudGgtb2YtdHlwZSg1bis1KSA+IC5zaTE0MXtib3JkZXItbGVmdDogI2ZmZTExYSA3cHggc29saWQ7fS5yc3NBdHRyQ29udGFpbmVyIH4gLnNpMTAxOm50aC1vZi10eXBlKDVuKzYpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjZmZlMTFhIDdweCBzb2xpZDt9LnNpMTAxOm50aC1vZi10eXBlKDVuKzIpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjZmQ3NDAwIDdweCBzb2xpZDt9LnJzc0F0dHJDb250YWluZXIgfiAuc2kxMDE6bnRoLW9mLXR5cGUoNW4rMykgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICNmZDc0MDAgN3B4IHNvbGlkO30uc2kxMDE6bnRoLW9mLXR5cGUoNW4rNCkgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICMwMDQzNTggN3B4IHNvbGlkO30ucnNzQXR0ckNvbnRhaW5lciB+IC5zaTEwMTpudGgtb2YtdHlwZSg1bis1KSA+IC5zaTE0MXtib3JkZXItbGVmdDogIzAwNDM1OCA3cHggc29saWQ7fS56X3tjdXJzb3I6cG9pbnRlcjt9LnNpMTMwe2Rpc3BsYXk6aW5saW5lOyB0ZXh0LXRyYW5zZm9ybTppbmhlcml0O30uZmxleEFsaWduU3RhcnR7LW1zLWZsZXgtYWxpZ246c3RhcnQ7IC13ZWJraXQtYm94LWFsaWduOnN0YXJ0OyAtd2Via2l0LWFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7IGFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7fS5mbGV4QWxpZ25Cb3R0b217LW1zLWZsZXgtYWxpZ246ZW5kOyAtd2Via2l0LWJveC1hbGlnbjplbmQ7IC13ZWJraXQtYWxpZ24taXRlbXM6ZmxleC1lbmQ7IGFsaWduLWl0ZW1zOmZsZXgtZW5kO30uZmxleEFsaWduQ2VudGVyey1tcy1mbGV4LWFsaWduOmNlbnRlcjsgLXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOyAtd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjsgYWxpZ24taXRlbXM6Y2VudGVyO30uZmxleEFsaWduU3RyZXRjaHstbXMtZmxleC1hbGlnbjpzdHJldGNoOyAtd2Via2l0LWJveC1hbGlnbjpzdHJldGNoOyAtd2Via2l0LWFsaWduLWl0ZW1zOnN0cmV0Y2g7IGFsaWduLWl0ZW1zOnN0cmV0Y2g7fS5mbGV4SnVzdGlmeVN0YXJ0ey1tcy1mbGV4LXBhY2s6c3RhcnQ7IC13ZWJraXQtYm94LXBhY2s6c3RhcnQ7IC13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7IGp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O30uZmxleEp1c3RpZnlDZW50ZXJ7LW1zLWZsZXgtcGFjazpjZW50ZXI7IC13ZWJraXQtYm94LXBhY2s6Y2VudGVyOyAtd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7IGp1c3RpZnktY29udGVudDpjZW50ZXI7fS5mbGV4SnVzdGlmeUVuZHstbXMtZmxleC1wYWNrOmVuZDsgLXdlYmtpdC1ib3gtcGFjazplbmQ7IC13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtZW5kOyBqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7fTwvc3R5bGU+ICA8c3R5bGU+LnNpMTAxe3dpZHRoOjEwMCU7IC1tcy1mbGV4LW5lZ2F0aXZlOjE7LXdlYmtpdC1ib3gtZmxleDoxIDA7IC13ZWJraXQtZmxleC1zaHJpbms6MTsgZmxleC1zaHJpbms6MTt9LnNpMTQ0e2ZvbnQtd2VpZ2h0OjcwMDtiYWNrZ3JvdW5kLWNvbG9yOiMwMjE5OGI7Ym9yZGVyLXJhZGl1czoxNnB4O2JvcmRlcjo1cHggc29saWQgI2ZmZmZmZjtmb250LWZhbWlseTpWZXJkYW5hLGFyaWFsLHNhbnMtc2VyaWY7Zm9udC1zaXplOjI0cHg7bGluZS1oZWlnaHQ6NDFweDttYXJnaW4tYm90dG9tOjEwcHg7bWFyZ2luLWxlZnQ6MjBweDttYXJnaW4tcmlnaHQ6MjBweDttYXJnaW4tdG9wOjEwcHg7cGFkZGluZy1ib3R0b206NTBweDtwYWRkaW5nLWxlZnQ6MTBweDtwYWRkaW5nLXJpZ2h0OjEzcHg7cGFkZGluZy10b3A6NTBweDtjb2xvcjojZmZmZmZmO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7d2lkdGg6MTAwJTsgLW1zLWZsZXgtbmVnYXRpdmU6MTstd2Via2l0LWJveC1mbGV4OjEgMDsgLXdlYmtpdC1mbGV4LXNocmluazoxOyBmbGV4LXNocmluazoxO30uc2kxNDQ6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojNDI4NWY0O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fS5zaTMze21hcmdpbi1sZWZ0OjEwcHg7bWFyZ2luLXJpZ2h0OjEwcHg7d2lkdGg6MTAwJTsgLW1zLWZsZXgtbmVnYXRpdmU6MTstd2Via2l0LWJveC1mbGV4OjEgMDsgLXdlYmtpdC1mbGV4LXNocmluazoxOyBmbGV4LXNocmluazoxO30uc2kxMDJ7Ym9yZGVyLXJhZGl1czoxNXB4O2hlaWdodDowcHg7d2lkdGg6MzBweDt9LnNpMTI4e2hlaWdodDoxcHg7d2lkdGg6MTAwJTsgLW1zLWZsZXgtbmVnYXRpdmU6MTstd2Via2l0LWJveC1mbGV4OjEgMDsgLXdlYmtpdC1mbGV4LXNocmluazoxOyBmbGV4LXNocmluazoxO31kaXY+ZGl2LnNpMTI4Omxhc3QtY2hpbGR7ZGlzcGxheTpub25lO30uc2kxMzN7YmFja2dyb3VuZC1jb2xvcjojMGUxNjJlO2JvcmRlci1yYWRpdXM6MnB4O2ZvbnQtc2l6ZToxNHB4O2xpbmUtaGVpZ2h0OjE1cHg7bWFyZ2luLWJvdHRvbTo1cHg7cGFkZGluZy1sZWZ0OjhweDtjb2xvcjojODY4MzgzO30uc2kxMzV7YmFja2dyb3VuZC1jb2xvcjojMGUxNjJlO2hlaWdodDoxMDAlO30uc2kxNDN7Ym9yZGVyLXJhZGl1czoxMnB4O3dpZHRoOjI0cHg7fS5zaTEzMHtmb250LXdlaWdodDo3MDA7fS5yc3NBdHRyQ29udGFpbmVye3dpZHRoOjEwMCU7IC1tcy1mbGV4LW5lZ2F0aXZlOjE7LXdlYmtpdC1ib3gtZmxleDoxIDA7IC13ZWJraXQtZmxleC1zaHJpbms6MTsgZmxleC1zaHJpbms6MTt9LnNpMTMze2JhY2tncm91bmQtY29sb3I6IzBlMTYyZTtib3JkZXItcmFkaXVzOjJweDtmb250LXNpemU6MTRweDtsaW5lLWhlaWdodDoxNXB4O21hcmdpbi1ib3R0b206NXB4O3BhZGRpbmctbGVmdDo4cHg7Y29sb3I6Izg2ODM4Mzt9LnNpMTM1e2JhY2tncm91bmQtY29sb3I6IzBlMTYyZTtwYWRkaW5nLWJvdHRvbTowcHg7cGFkZGluZy1yaWdodDowcHg7fTwvc3R5bGU+IDxtZXRhIGNvbnRlbnQ9XCJOT0lOREVYLCBOT0ZPTExPV1wiIG5hbWU9XCJST0JPVFNcIj4gPG1ldGEgY29udGVudD1cInRlbGVwaG9uZT1ub1wiIG5hbWU9XCJmb3JtYXQtZGV0ZWN0aW9uXCI+IDxtZXRhIGNvbnRlbnQ9XCJvcmlnaW5cIiBuYW1lPVwicmVmZXJyZXJcIj4gICAgPC9oZWFkPiA8Ym9keT4gIDxkaXYgaWQ9XCJhZEJsb2NrXCI+ICAgPGRpdiBpZD1cInNzcmFkLW1hc3RlclwiIGRhdGEtY3NhLW5lZWRzLXByb2Nlc3Npbmc9XCIxXCIgZGF0YS1udW0tYWRzPVwiM1wiIGNsYXNzPVwicGFyZW50X2NvbnRhaW5lclwiPjxkaXYgY2xhc3M9XCJpXyBkaXYgc2kxMzVcIiBzdHlsZT1cIi1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7IC13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOyAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzsgZmxleC1kaXJlY3Rpb246cm93Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7IC13ZWJraXQtYm94LXBhY2s6c3RhcnQ7IC13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7IGp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy1tcy1mbGV4LWFsaWduOnN0YXJ0OyAtd2Via2l0LWJveC1hbGlnbjpzdGFydDsgLXdlYmtpdC1hbGlnbi1pdGVtczpmbGV4LXN0YXJ0OyBhbGlnbi1pdGVtczpmbGV4LXN0YXJ0Oy1tcy1mbGV4LXdyYXA6d3JhcDsgLXdlYmtpdC1mbGV4LXdyYXA6d3JhcDsgZmxleC13cmFwOndyYXA7XCIgZGF0YS1hZC1jb250YWluZXI9XCIxXCI+PGRpdiBjbGFzcz1cImlfIGRpdiByc3NBdHRyQ29udGFpbmVyXCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdztcIj48c3BhbiBjbGFzcz1cInBfIHNpMTMzIHNwYW5cIj5SZWNoZXJjaGVzIHBlcnRpbmVudGVzPC9zcGFuPjwvZGl2PjxkaXYgaWQ9XCJlMVwiIGNsYXNzPVwiaV8gZGl2IGNsaWNrdHJhY2tlZEFkX2pzIHNpMTAxXCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdztcIj48YSBocmVmPVwiaHR0cDovL29rYXl0aS5waWNzL2NhZi8/c2VzPVkzSmxQVEUzTXpBek5ERTVNREFtZEdOcFpEMXZhMkY1ZEdrdWNHbGpjelkzTWpKbFl6QmpNVEV5T0RVM0xqVXdOelV5TURjMUpuUmhjMnM5YzJWaGNtTm9KbVJ2YldGcGJqMXZhMkY1ZEdrdWNHbGpjeVpoWDJsa1BUTW1jMlZ6YzJsdmJqMVJWRU5UZFhOSlZEbGpNVlZTYWt4YVVGUXlhZyUzRCUzRCZhbXA7cXVlcnk9TWVpbGxldXIrQnJva2VyK0QlQzMlQTlidXRhbnQmYW1wO2FmZFRva2VuPUNoTUl6cmlyODhtM2lRTVYxRkJzQmgzUEh4ajZFbWtCbExxcGotc3N2ajNId3BMMlBWY0xnWWRHaXR3RTJhUEEyS3ptMUVKVTVDV0ZfaU5kVURlYy04T3FjQUlyNURJUzlUX0RCTTRXSDljSWcxWVlUUUZrdDRfZFRPcEtLYW5zcVNkZzVMbE1EdnAzTnVNSkplNlJVcHFHUWdVUDYxbGRwbmtucm5yY0plOGdBUSZhbXA7cGNzYT1mYWxzZVwiIGRhdGEtbmI9XCIwXCIgdGFyZ2V0PVwiX3RvcFwiIGNsYXNzPVwiaV8gYSBzaTE0NFwiIHN0eWxlPVwiLW1zLWZsZXgtZGlyZWN0aW9uOnJvdzsgLXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7IC13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93OyBmbGV4LWRpcmVjdGlvbjpyb3c7LW1zLWZsZXgtcGFjazpzdGFydDsgLXdlYmtpdC1ib3gtcGFjazpzdGFydDsgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDsganVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LW1zLWZsZXgtYWxpZ246Y2VudGVyOyAtd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOyBhbGlnbi1pdGVtczpjZW50ZXI7XCI+PGRpdiBjbGFzcz1cImlfIGRpdiBzaTY5XCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdzstbXMtZmxleC1wYWNrOmNlbnRlcjsgLXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7IC13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjsganVzdGlmeS1jb250ZW50OmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYm94LWFsaWduOmNlbnRlcjsgLXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7IGFsaWduLWl0ZW1zOmNlbnRlcjtcIj48ZGl2IGNsYXNzPVwiaV8gZGl2XCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdztcIj48ZGl2IGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRhYmluZGV4PVwiLTFcIiBjbGFzcz1cImRpdiBxXyBzaTEwMlwiPjxpbWcgc3JjPVwiaHR0cHM6Ly9hZnMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2FkX2ljb25zL3N0YW5kYXJkL3B1Ymxpc2hlcl9pY29uX2ltYWdlL3NlYXJjaC5zdmc/Yz0lMjMxOTY3RDJcIiBhbHQ9XCJcIiBsb2FkaW5nPVwibGF6eVwiIGNsYXNzPVwiaW1nXCI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz1cImlfIGRpdiBzaTMzXCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdzstbXMtZmxleC1wYWNrOnN0YXJ0OyAtd2Via2l0LWJveC1wYWNrOnN0YXJ0OyAtd2Via2l0LWp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0OyBqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDstbXMtZmxleC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYm94LWFsaWduOmNlbnRlcjsgLXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7IGFsaWduLWl0ZW1zOmNlbnRlcjtcIj48c3BhbiBjbGFzcz1cInBfIHNpMzQgc3BhblwiPk1laWxsZXVyIEJyb2tlciBEXHUwMGU5YnV0YW50PC9zcGFuPjwvZGl2PjxkaXYgYXJpYS1oaWRkZW49XCJ0cnVlXCIgdGFiaW5kZXg9XCItMVwiIGNsYXNzPVwiZGl2IHFfIHNpMTQzIHdfXCI+PGltZyBzcmM9XCJodHRwczovL2Fmcy5nb29nbGV1c2VyY29udGVudC5jb20vYWRfaWNvbnMvc3RhbmRhcmQvcHVibGlzaGVyX2ljb25faW1hZ2UvY2hldnJvbi5zdmc/Yz0lMjNmZmZmZmZcIiBhbHQ9XCJcIiBsb2FkaW5nPVwibGF6eVwiIGNsYXNzPVwiaW1nXCI+PC9kaXY+PC9hPjwvZGl2PjxkaXYgaWQ9XCJlMlwiIGNsYXNzPVwiaV8gZGl2IGNsaWNrdHJhY2tlZEFkX2pzIHNpMTAxXCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdztcIj48YSBocmVmPVwiaHR0cDovL29rYXl0aS5waWNzL2NhZi8/c2VzPVkzSmxQVEUzTXpBek5ERTVNREFtZEdOcFpEMXZhMkY1ZEdrdWNHbGpjelkzTWpKbFl6QmpNVEV5T0RVM0xqVXdOelV5TURjMUpuUmhjMnM5YzJWaGNtTm9KbVJ2YldGcGJqMXZhMkY1ZEdrdWNHbGpjeVpoWDJsa1BUTW1jMlZ6YzJsdmJqMVJWRU5UZFhOSlZEbGpNVlZTYWt4YVVGUXlhZyUzRCUzRCZhbXA7cXVlcnk9TWVpbGxldXIrUGxhdGVmb3JtZStDcnlwdG8mYW1wO2FmZFRva2VuPUNoTUl6cmlyODhtM2lRTVYxRkJzQmgzUEh4ajZFbW9CbExxcGoxbmNjcmVNbFVFMy1wcmE4RmRhSlVHVFJTS2RMal9ZcHlWdUVSM3Z0bVF0UkFSdGw2dDU1SnhjQ3pscjRScjZGdVFRY2Jhbm40T0J4cU83MVU0bGJ3ZHo1cUVWODZCNDRKazIyV3h5Q3ZZQklsQVJDRkFYNHFiNGRTMnpYYV9BaFRscFBFMUZJQUUmYW1wO3Bjc2E9ZmFsc2VcIiBkYXRhLW5iPVwiMFwiIHRhcmdldD1cIl90b3BcIiBjbGFzcz1cImlfIGEgc2kxNDRcIiBzdHlsZT1cIi1tcy1mbGV4LWRpcmVjdGlvbjpyb3c7IC13ZWJraXQtYm94LW9yaWVudDpob3Jpem9udGFsOyAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOnJvdzsgZmxleC1kaXJlY3Rpb246cm93Oy1tcy1mbGV4LXBhY2s6c3RhcnQ7IC13ZWJraXQtYm94LXBhY2s6c3RhcnQ7IC13ZWJraXQtanVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7IGp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0Oy1tcy1mbGV4LWFsaWduOmNlbnRlcjsgLXdlYmtpdC1ib3gtYWxpZ246Y2VudGVyOyAtd2Via2l0LWFsaWduLWl0ZW1zOmNlbnRlcjsgYWxpZ24taXRlbXM6Y2VudGVyO1wiPjxkaXYgY2xhc3M9XCJpXyBkaXYgc2k2OVwiIHN0eWxlPVwiLW1zLWZsZXgtZGlyZWN0aW9uOnJvdzsgLXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7IC13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93OyBmbGV4LWRpcmVjdGlvbjpyb3c7LW1zLWZsZXgtcGFjazpjZW50ZXI7IC13ZWJraXQtYm94LXBhY2s6Y2VudGVyOyAtd2Via2l0LWp1c3RpZnktY29udGVudDpjZW50ZXI7IGp1c3RpZnktY29udGVudDpjZW50ZXI7LW1zLWZsZXgtYWxpZ246Y2VudGVyOyAtd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOyBhbGlnbi1pdGVtczpjZW50ZXI7XCI+PGRpdiBjbGFzcz1cImlfIGRpdlwiIHN0eWxlPVwiLW1zLWZsZXgtZGlyZWN0aW9uOnJvdzsgLXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7IC13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93OyBmbGV4LWRpcmVjdGlvbjpyb3c7XCI+PGRpdiBhcmlhLWhpZGRlbj1cInRydWVcIiB0YWJpbmRleD1cIi0xXCIgY2xhc3M9XCJkaXYgcV8gc2kxMDJcIj48aW1nIHNyYz1cImh0dHBzOi8vYWZzLmdvb2dsZXVzZXJjb250ZW50LmNvbS9hZF9pY29ucy9zdGFuZGFyZC9wdWJsaXNoZXJfaWNvbl9pbWFnZS9zZWFyY2guc3ZnP2M9JTIzMTk2N0QyXCIgYWx0PVwiXCIgbG9hZGluZz1cImxhenlcIiBjbGFzcz1cImltZ1wiPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9XCJpXyBkaXYgc2kzM1wiIHN0eWxlPVwiLW1zLWZsZXgtZGlyZWN0aW9uOnJvdzsgLXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7IC13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93OyBmbGV4LWRpcmVjdGlvbjpyb3c7LW1zLWZsZXgtcGFjazpzdGFydDsgLXdlYmtpdC1ib3gtcGFjazpzdGFydDsgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDsganVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LW1zLWZsZXgtYWxpZ246Y2VudGVyOyAtd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOyBhbGlnbi1pdGVtczpjZW50ZXI7XCI+PHNwYW4gY2xhc3M9XCJwXyBzaTM0IHNwYW5cIj5NZWlsbGV1ciBQbGF0ZWZvcm1lIENyeXB0bzwvc3Bhbj48L2Rpdj48ZGl2IGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRhYmluZGV4PVwiLTFcIiBjbGFzcz1cImRpdiBxXyBzaTE0MyB3X1wiPjxpbWcgc3JjPVwiaHR0cHM6Ly9hZnMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2FkX2ljb25zL3N0YW5kYXJkL3B1Ymxpc2hlcl9pY29uX2ltYWdlL2NoZXZyb24uc3ZnP2M9JTIzZmZmZmZmXCIgYWx0PVwiXCIgbG9hZGluZz1cImxhenlcIiBjbGFzcz1cImltZ1wiPjwvZGl2PjwvYT48L2Rpdj48ZGl2IGlkPVwiZTNcIiBjbGFzcz1cImlfIGRpdiBjbGlja3RyYWNrZWRBZF9qcyBzaTEwMVwiIHN0eWxlPVwiLW1zLWZsZXgtZGlyZWN0aW9uOnJvdzsgLXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7IC13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93OyBmbGV4LWRpcmVjdGlvbjpyb3c7XCI+PGEgaHJlZj1cImh0dHA6Ly9va2F5dGkucGljcy9jYWYvP3Nlcz1ZM0psUFRFM016QXpOREU1TURBbWRHTnBaRDF2YTJGNWRHa3VjR2xqY3pZM01qSmxZekJqTVRFeU9EVTNMalV3TnpVeU1EYzFKblJoYzJzOWMyVmhjbU5vSm1SdmJXRnBiajF2YTJGNWRHa3VjR2xqY3laaFgybGtQVE1tYzJWemMybHZiajFSVkVOVGRYTkpWRGxqTVZWU2FreGFVRlF5YWclM0QlM0QmYW1wO3F1ZXJ5PVB1YmxpY2l0JUMzJUE5cytMaW5rZWRpbiZhbXA7YWZkVG9rZW49Q2hNSXpyaXI4OG0zaVFNVjFGQnNCaDNQSHhqNkVtb0JsTHFwajZRTkNuZm5sWmtrcnZ3VTBoR3JGOFc2bGNoNjBTYnRpWkd4aUN2RFV0anhMaEJhSW5IUkFYbHhzdkdOVTlBUWV6V3RzcUhyMmZfdTY0TUFUN0RZLVExcmdjN25GT1lwQWFFTVhITzZnOExnb2FZUUphVkJuMlhBQng2YmdEQTZWRVhrZDJTY0lBRSZhbXA7cGNzYT1mYWxzZVwiIGRhdGEtbmI9XCIwXCIgdGFyZ2V0PVwiX3RvcFwiIGNsYXNzPVwiaV8gYSBzaTE0NFwiIHN0eWxlPVwiLW1zLWZsZXgtZGlyZWN0aW9uOnJvdzsgLXdlYmtpdC1ib3gtb3JpZW50Omhvcml6b250YWw7IC13ZWJraXQtZmxleC1kaXJlY3Rpb246cm93OyBmbGV4LWRpcmVjdGlvbjpyb3c7LW1zLWZsZXgtcGFjazpzdGFydDsgLXdlYmtpdC1ib3gtcGFjazpzdGFydDsgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDsganVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7LW1zLWZsZXgtYWxpZ246Y2VudGVyOyAtd2Via2l0LWJveC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYWxpZ24taXRlbXM6Y2VudGVyOyBhbGlnbi1pdGVtczpjZW50ZXI7XCI+PGRpdiBjbGFzcz1cImlfIGRpdiBzaTY5XCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdzstbXMtZmxleC1wYWNrOmNlbnRlcjsgLXdlYmtpdC1ib3gtcGFjazpjZW50ZXI7IC13ZWJraXQtanVzdGlmeS1jb250ZW50OmNlbnRlcjsganVzdGlmeS1jb250ZW50OmNlbnRlcjstbXMtZmxleC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYm94LWFsaWduOmNlbnRlcjsgLXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7IGFsaWduLWl0ZW1zOmNlbnRlcjtcIj48ZGl2IGNsYXNzPVwiaV8gZGl2XCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdztcIj48ZGl2IGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRhYmluZGV4PVwiLTFcIiBjbGFzcz1cImRpdiBxXyBzaTEwMlwiPjxpbWcgc3JjPVwiaHR0cHM6Ly9hZnMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2FkX2ljb25zL3N0YW5kYXJkL3B1Ymxpc2hlcl9pY29uX2ltYWdlL3NlYXJjaC5zdmc/Yz0lMjMxOTY3RDJcIiBhbHQ9XCJcIiBsb2FkaW5nPVwibGF6eVwiIGNsYXNzPVwiaW1nXCI+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz1cImlfIGRpdiBzaTMzXCIgc3R5bGU9XCItbXMtZmxleC1kaXJlY3Rpb246cm93OyAtd2Via2l0LWJveC1vcmllbnQ6aG9yaXpvbnRhbDsgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjpyb3c7IGZsZXgtZGlyZWN0aW9uOnJvdzstbXMtZmxleC1wYWNrOnN0YXJ0OyAtd2Via2l0LWJveC1wYWNrOnN0YXJ0OyAtd2Via2l0LWp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0OyBqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1zdGFydDstbXMtZmxleC1hbGlnbjpjZW50ZXI7IC13ZWJraXQtYm94LWFsaWduOmNlbnRlcjsgLXdlYmtpdC1hbGlnbi1pdGVtczpjZW50ZXI7IGFsaWduLWl0ZW1zOmNlbnRlcjtcIj48c3BhbiBjbGFzcz1cInBfIHNpMzQgc3BhblwiPlB1YmxpY2l0XHUwMGU5cyBMaW5rZWRpbjwvc3Bhbj48L2Rpdj48ZGl2IGFyaWEtaGlkZGVuPVwidHJ1ZVwiIHRhYmluZGV4PVwiLTFcIiBjbGFzcz1cImRpdiBxXyBzaTE0MyB3X1wiPjxpbWcgc3JjPVwiaHR0cHM6Ly9hZnMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2FkX2ljb25zL3N0YW5kYXJkL3B1Ymxpc2hlcl9pY29uX2ltYWdlL2NoZXZyb24uc3ZnP2M9JTIzZmZmZmZmXCIgYWx0PVwiXCIgbG9hZGluZz1cImxhenlcIiBjbGFzcz1cImltZ1wiPjwvZGl2PjwvYT48L2Rpdj48L2Rpdj48L2Rpdj4gPC9kaXY+IDxkaXYgaWQ9XCJzc3JhYlwiIHN0eWxlPVwiZGlzcGxheTpub25lO1wiPjwhLS1sZWFkZXItY29udGVudC0tPjxkaXYgaWQ9XCJzc3JzYi1zbGF2ZS0xXCI+PC9kaXY+PC9kaXY+IDxzY3JpcHQgbm9uY2U9XCJIMFgxTjdrT1Nram5SekIxeERoQnVBXCI+d2luZG93LkFGU19BRF9SRVFVRVNUX1JFVFVSTl9USU1FXyA9IERhdGUubm93KCk7d2luZG93LklTX0dPT0dMRV9BRlNfSUZSQU1FXyA9IHRydWU7ZnVuY3Rpb24gcG9wdWxhdGUoZWwpIHsgdmFyIGFkQmxvY2sgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIik7IGFkQmxvY2suaW5uZXJIVE1MICs9IGVsO31cbnZhciBJU19HT09HTEVfQUZTX0lGUkFNRV8gPSB0cnVlO1xudmFyIGFkX2pzb24gPSB7XCJjYXBzXCI6W3tcIm5cIjpcInF1ZXJ5SWRcIixcInZcIjpcIkR1d2laODJQQzYydTg4RVBrdUt1NkFVXCJ9LHtcIm5cIjpcInBvcHN0cmlwZVJzXCIsXCJ2XCI6XCIjMUY4QTcwLCNCRURCMzksI0ZGRTExQSwjRkQ3NDAwLCMwMDQzNThcIn1dLFwic2JzXCI6W3tcImZuXCI6XCJzbGF2ZS0xXCIsXCJhZmR0XCI6XCJDaE1JenJpcjg4bTNpUU1WMUZCc0JoM1BIeGo2RW1FQmxMcXBqeHh2ZnpWZTltMWpNVkxtTzRlM0NCa2JydnJOS3BxUUZWaHBfU0dLVXpwR0ZqNXJtenZkVTFUTS1Pbkt1Q2g5QkxROVo1WVg4SEs5eGJ3bnk5UHlNM0dTeHdqWUpTRzRfNUdkYkR5SmhXMGRqREpBVDBkS2ZTX1BtQmNoSUFFXCIsXCJsYWJlbFwiOlwiUmVjaGVyY2hlciBkZXMgYW5ub25jZXNcIn1dLFwicnNfYXR0clwiOntcInRcIjpcIkxpZW5zIGFzc29jaVx1MDBlOXNcIixcInVcIjpcIlwifSxcImdkXCI6e1wiZmZcIjp7XCJmZFwiOlwic3dhcFwiLFwiZWllbGxcIjp0cnVlLFwiZXBjdWlcIjp0cnVlLFwicGNzYnNcIjpcIjQ0XCIsXCJwY3NicFwiOlwiOFwiLFwicGNzZFwiOlwiMFwifSxcImNkXCI6e1wicGlkXCI6XCJkcC1zZWRvODVfM3BoXCIsXCJlYXdwXCI6XCJwYXJ0bmVyLWRwLXNlZG84NV8zcGhcIixcInFpXCI6XCJEdXdpWjgyUEM2MnU4OEVQa3VLdTZBVVwifSxcInBjXCI6e1wiY3VjYWlcIjp0cnVlLFwiY2dhYlwiOnRydWUsXCJjdFwiOnRydWV9LFwiZGNcIjp7XCJkXCI6dHJ1ZX19fTs8L3NjcmlwdD4gPHNjcmlwdCBzcmM9XCIvYWRzZW5zZS9kb21haW5zL2NhZi5qcz9wYWM9MFwiIHR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIiBub25jZT1cIkgwWDFON2tPU2tqblJ6QjF4RGhCdUFcIj48L3NjcmlwdD4gIDwvYm9keT4gPC9odG1sPiJ9LCAiaGVhZGVyc1NpemUiOiAwLCAiYm9keVNpemUiOiAzMzAyLCAicmVkaXJlY3RVUkwiOiAiIiwgIl90cmFuc2ZlclNpemUiOiAzMzAyfSwgImNhY2hlIjoge30sICJ0aW1pbmdzIjogeyJkbnMiOiAtMSwgImNvbm5lY3QiOiAtMSwgInNzbCI6IC0xLCAic2VuZCI6IDAsICJ3YWl0IjogMzUyLjkyOSwgInJlY2VpdmUiOiAxNS40NTV9LCAicGFnZXJlZiI6ICJwYWdlQDcwNjgwZmM3YzUzNTkwNDgwMTExYTMzZmJiZDQ0Y2NmIiwgInNlcnZlcklQQWRkcmVzcyI6ICJbMjQwNDo2ODAwOjQwMDM6YzFhOjo4Yl0iLCAiX3NlcnZlclBvcnQiOiA0NDMsICJfc2VjdXJpdHlEZXRhaWxzIjogeyJwcm90b2NvbCI6ICJUTFMgMS4zIiwgInN1YmplY3ROYW1lIjogInN5bmRpY2F0ZWRzZWFyY2guZ29vZyIsICJpc3N1ZXIiOiAiV1IyIiwgInZhbGlkRnJvbSI6IDE3MjgyODk3NDksICJ2YWxpZFRvIjogMTczNTU0NzM0OH19LCB7InN0YXJ0ZWREYXRlVGltZSI6ICIyMDI0LTEwLTMxVDAyOjMxOjQxLjQ1N1oiLCAidGltZSI6IDE3LjAwOSwgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHA6Ly9va2F5dGkucGljcy9zZWFyY2gvdHNjLnBocD9zZXM9b2djLTlqdlNyYU5nczJRcFBUTC1aVXpWdnIxVlJsZ3Q1NmN1R3V5b3I3ZDN4QTdnSGlOeXpyU05pamFRRU9WclBDcVF5cXFkMWw5WTQwc1h0U09NcWFqV0JtUFZ6OTdKSl8zOTY0OXYxM2lMWi11MExSYWR5MjJiRTM0MFg5a2x2UnRSd0JVUWhZMW4yNTRvelBKTE56enBiQW1odVBXQ25JOFZ3T2hHNF9CRzZMS0xLZEhGXzNKNUtGZ3ZTTS03eVhkV2JCWmwwZHR4b3ZETHFvU1JaSzNENFRvTlBTT0M1YXhVZUJOLVhkV2lBOVJOZjJkcGkxMkFmTFI1b2dvY1pkRDRCOWtueS11dTIwcm5qNThJVGtsYVhrRjFlVVZvYTMxOEN5ajNuS3BGZU9SOUxIV1h1UHVvQnFKVVpGcUJRcmRCaFplVVRWMHo2a2t6NEx1MTRaTWtUeFh5MVdmUkp4S2kyT3o0VzRPbkNzRDV6TzFLWEpsNDB1bVZfRSZjdj0yIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMS4xIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogIkFjY2VwdCIsICJ2YWx1ZSI6ICIqLyoifSwgeyJuYW1lIjogIkFjY2VwdC1FbmNvZGluZyIsICJ2YWx1ZSI6ICJnemlwLCBkZWZsYXRlIn0sIHsibmFtZSI6ICJBY2NlcHQtTGFuZ3VhZ2UiLCAidmFsdWUiOiAiZW4tVVMifSwgeyJuYW1lIjogIkNvbm5lY3Rpb24iLCAidmFsdWUiOiAia2VlcC1hbGl2ZSJ9LCB7Im5hbWUiOiAiSG9zdCIsICJ2YWx1ZSI6ICJva2F5dGkucGljcyJ9LCB7Im5hbWUiOiAiUmVmZXJlciIsICJ2YWx1ZSI6ICJodHRwOi8vb2theXRpLnBpY3MvIn0sIHsibmFtZSI6ICJVc2VyLUFnZW50IiwgInZhbHVlIjogIk1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS8xMzAuMC42NzIzLjMxIFNhZmFyaS81MzcuMzYifV0sICJxdWVyeVN0cmluZyI6IFt7Im5hbWUiOiAic2VzIiwgInZhbHVlIjogIm9nYy05anZTcmFOZ3MyUXBQVEwtWlV6VnZyMVZSbGd0NTZjdUd1eW9yN2QzeEE3Z0hpTnl6clNOaWphUUVPVnJQQ3FReXFxZDFsOVk0MHNYdFNPTXFhaldCbVBWejk3SkpfMzk2NDl2MTNpTFotdTBMUmFkeTIyYkUzNDBYOWtsdlJ0UndCVVFoWTFuMjU0b3pQSkxOenpwYkFtaHVQV0NuSThWd09oRzRfQkc2TEtMS2RIRl8zSjVLRmd2U00tN3lYZFdiQlpsMGR0eG92RExxb1NSWkszRDRUb05QU09DNWF4VWVCTi1YZFdpQTlSTmYyZHBpMTJBZkxSNW9nb2NaZEQ0QjlrbnktdXUyMHJuajU4SVRrbGFYa0YxZVVWb2EzMThDeWozbktwRmVPUjlMSFdYdVB1b0JxSlVaRnFCUXJkQmhaZVVUVjB6NmtrejRMdTE0Wk1rVHhYeTFXZlJKeEtpMk96NFc0T25Dc0Q1ek8xS1hKbDQwdW1WX0UifSwgeyJuYW1lIjogImN2IiwgInZhbHVlIjogIjIifV0sICJoZWFkZXJzU2l6ZSI6IDMwMSwgImJvZHlTaXplIjogMH0sICJyZXNwb25zZSI6IHsic3RhdHVzIjogMjAwLCAic3RhdHVzVGV4dCI6ICJPSyIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzEuMSIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICJjb250ZW50LWxlbmd0aCIsICJ2YWx1ZSI6ICIwIn0sIHsibmFtZSI6ICJjb250ZW50LXR5cGUiLCAidmFsdWUiOiAidGV4dC9odG1sOyBjaGFyc2V0PVVURi04In0sIHsibmFtZSI6ICJkYXRlIiwgInZhbHVlIjogIlRodSwgMzEgT2N0IDIwMjQgMDI6MzE6NDEgR01UIn0sIHsibmFtZSI6ICJzZXJ2ZXIiLCAidmFsdWUiOiAiUGFya2luZy8xLjAifSwgeyJuYW1lIjogIngtY2FjaGUtbWlzcy1mcm9tIiwgInZhbHVlIjogInBhcmtpbmctNmI4YjZiYjU0Yi1rYmZ4MiJ9XSwgImNvbnRlbnQiOiB7InNpemUiOiAwLCAibWltZVR5cGUiOiAidGV4dC9odG1sOyBjaGFyc2V0PVVURi04IiwgImNvbXByZXNzaW9uIjogMCwgInRleHQiOiAiIn0sICJoZWFkZXJzU2l6ZSI6IDE4MSwgImJvZHlTaXplIjogMCwgInJlZGlyZWN0VVJMIjogIiIsICJfdHJhbnNmZXJTaXplIjogMTgxfSwgImNhY2hlIjoge30sICJ0aW1pbmdzIjogeyJkbnMiOiAtMSwgImNvbm5lY3QiOiAtMSwgInNzbCI6IC0xLCAic2VuZCI6IDAsICJ3YWl0IjogMTUuMzk3LCAicmVjZWl2ZSI6IDEuNjEyfSwgInBhZ2VyZWYiOiAicGFnZUA3MDY4MGZjN2M1MzU5MDQ4MDExMWEzM2ZiYmQ0NGNjZiIsICJzZXJ2ZXJJUEFkZHJlc3MiOiAiOTEuMTk1LjI0MC4xMjMiLCAiX3NlcnZlclBvcnQiOiA4MCwgIl9zZWN1cml0eURldGFpbHMiOiB7fX0sIHsic3RhcnRlZERhdGVUaW1lIjogIjIwMjQtMTAtMzFUMDI6MzE6NDIuMzYwWiIsICJ0aW1lIjogNjQzLjczOCwgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHBzOi8vc3luZGljYXRlZHNlYXJjaC5nb29nL2Fkc2Vuc2UvZG9tYWlucy9jYWYuanM/cGFjPTAiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8yLjAiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiOmF1dGhvcml0eSIsICJ2YWx1ZSI6ICJzeW5kaWNhdGVkc2VhcmNoLmdvb2cifSwgeyJuYW1lIjogIjptZXRob2QiLCAidmFsdWUiOiAiR0VUIn0sIHsibmFtZSI6ICI6cGF0aCIsICJ2YWx1ZSI6ICIvYWRzZW5zZS9kb21haW5zL2NhZi5qcz9wYWM9MCJ9LCB7Im5hbWUiOiAiOnNjaGVtZSIsICJ2YWx1ZSI6ICJodHRwcyJ9LCB7Im5hbWUiOiAiYWNjZXB0IiwgInZhbHVlIjogIiovKiJ9LCB7Im5hbWUiOiAiYWNjZXB0LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAsIGRlZmxhdGUsIGJyLCB6c3RkIn0sIHsibmFtZSI6ICJhY2NlcHQtbGFuZ3VhZ2UiLCAidmFsdWUiOiAiZW4tVVMifSwgeyJuYW1lIjogInByaW9yaXR5IiwgInZhbHVlIjogInU9MSJ9LCB7Im5hbWUiOiAicmVmZXJlciIsICJ2YWx1ZSI6ICJodHRwczovL3N5bmRpY2F0ZWRzZWFyY2guZ29vZy8ifSwgeyJuYW1lIjogInNlYy1jaC11YSIsICJ2YWx1ZSI6ICJcIk5vdD9BX0JyYW5kXCI7dj1cIjk5XCIsIFwiQ2hyb21pdW1cIjt2PVwiMTMwXCIifSwgeyJuYW1lIjogInNlYy1jaC11YS1tb2JpbGUiLCAidmFsdWUiOiAiPzAifSwgeyJuYW1lIjogInNlYy1jaC11YS1wbGF0Zm9ybSIsICJ2YWx1ZSI6ICJcIldpbmRvd3NcIiJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLWRlc3QiLCAidmFsdWUiOiAic2NyaXB0In0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtbW9kZSIsICJ2YWx1ZSI6ICJuby1jb3JzIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtc2l0ZSIsICJ2YWx1ZSI6ICJzYW1lLW9yaWdpbiJ9LCB7Im5hbWUiOiAidXNlci1hZ2VudCIsICJ2YWx1ZSI6ICJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMTMwLjAuNjcyMy4zMSBTYWZhcmkvNTM3LjM2In1dLCAicXVlcnlTdHJpbmciOiBbeyJuYW1lIjogInBhYyIsICJ2YWx1ZSI6ICIwIn1dLCAiaGVhZGVyc1NpemUiOiA1ODksICJib2R5U2l6ZSI6IDB9LCAicmVzcG9uc2UiOiB7InN0YXR1cyI6IDIwMCwgInN0YXR1c1RleHQiOiAiIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMi4wIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogImFjY2VwdC1yYW5nZXMiLCAidmFsdWUiOiAiYnl0ZXMifSwgeyJuYW1lIjogImFsdC1zdmMiLCAidmFsdWUiOiAiaDM9XCI6NDQzXCI7IG1hPTI1OTIwMDAsaDMtMjk9XCI6NDQzXCI7IG1hPTI1OTIwMDAifSwgeyJuYW1lIjogImNhY2hlLWNvbnRyb2wiLCAidmFsdWUiOiAicHJpdmF0ZSwgbWF4LWFnZT0zNjAwIn0sIHsibmFtZSI6ICJjb250ZW50LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAifSwgeyJuYW1lIjogImNvbnRlbnQtc2VjdXJpdHktcG9saWN5LXJlcG9ydC1vbmx5IiwgInZhbHVlIjogInJlcXVpcmUtdHJ1c3RlZC10eXBlcy1mb3IgJ3NjcmlwdCc7IHJlcG9ydC11cmkgaHR0cHM6Ly9jc3Aud2l0aGdvb2dsZS5jb20vY3NwL2Fkcy1hZnMtdWkifSwgeyJuYW1lIjogImNvbnRlbnQtdHlwZSIsICJ2YWx1ZSI6ICJ0ZXh0L2phdmFzY3JpcHQ7IGNoYXJzZXQ9VVRGLTgifSwgeyJuYW1lIjogImNyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5IiwgInZhbHVlIjogInNhbWUtb3JpZ2luOyByZXBvcnQtdG89XCJhZHMtYWZzLXVpXCIifSwgeyJuYW1lIjogImNyb3NzLW9yaWdpbi1yZXNvdXJjZS1wb2xpY3kiLCAidmFsdWUiOiAiY3Jvc3Mtb3JpZ2luIn0sIHsibmFtZSI6ICJkYXRlIiwgInZhbHVlIjogIlRodSwgMzEgT2N0IDIwMjQgMDI6MzE6NDIgR01UIn0sIHsibmFtZSI6ICJldGFnIiwgInZhbHVlIjogIlwiMTE1NTgzODA4MjQ2NjIwMDU3M1wiIn0sIHsibmFtZSI6ICJleHBpcmVzIiwgInZhbHVlIjogIlRodSwgMzEgT2N0IDIwMjQgMDI6MzE6NDIgR01UIn0sIHsibmFtZSI6ICJsaW5rIiwgInZhbHVlIjogIjxodHRwczovL3N5bmRpY2F0ZWRzZWFyY2guZ29vZz47IHJlbD1cInByZWNvbm5lY3RcIiJ9LCB7Im5hbWUiOiAicmVwb3J0LXRvIiwgInZhbHVlIjogIntcImdyb3VwXCI6XCJhZHMtYWZzLXVpXCIsXCJtYXhfYWdlXCI6MjU5MjAwMCxcImVuZHBvaW50c1wiOlt7XCJ1cmxcIjpcImh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2NzcC9yZXBvcnQtdG8vYWRzLWFmcy11aVwifV19In0sIHsibmFtZSI6ICJzZXJ2ZXIiLCAidmFsdWUiOiAic2ZmZSJ9LCB7Im5hbWUiOiAidmFyeSIsICJ2YWx1ZSI6ICJBY2NlcHQtRW5jb2RpbmcifSwgeyJuYW1lIjogIngtY29udGVudC10eXBlLW9wdGlvbnMiLCAidmFsdWUiOiAibm9zbmlmZiJ9LCB7Im5hbWUiOiAieC14c3MtcHJvdGVjdGlvbiIsICJ2YWx1ZSI6ICIwIn1dLCAiY29udGVudCI6IHsic2l6ZSI6IDE1MzY1NiwgIm1pbWVUeXBlIjogInRleHQvamF2YXNjcmlwdDsgY2hhcnNldD1VVEYtOCIsICJjb21wcmVzc2lvbiI6IDk4MDYxLCAidGV4dCI6ICJpZighd2luZG93Wydnb29nbGVORFRfJ10pe3dpbmRvd1snZ29vZ2xlTkRUXyddPShuZXcgRGF0ZSgpKS5nZXRUaW1lKCk7fShmdW5jdGlvbigpIHt3aW5kb3cuZ29vZ2xlQWx0TG9hZGVyPTM7dmFyIHNmZmVEYXRhXz17c2VydmljZV9ob3N0Olwic3luZGljYXRlZHNlYXJjaC5nb29nXCIsaGFzaDpcIjE1MTQ5NDI5OTQ1NTAxMDcxNTY2XCIscGFja2FnZXM6XCJkb21haW5zXCIsbW9kdWxlOlwiYWRzXCIsdmVyc2lvbjpcIjFcIixtOntjZWk6XCIxNzMwMTQzMSwxNzMwMTQzMywxNzMwMTQzNiwxNzMwMTU0MiwxNzMwMTI2NlwiLGFoOnRydWUsdWF0bTo1MDAsZWNmYzI6dHJ1ZSxsbHJtOjEwMDAsbGxkbDpcImJTNXpaV0Z5Y3k1amIyMD1cIixhYmY6e1wiX2Rpc2FibGVBZFJlcXVlc3RGb3JOZXdDb25zZW50U3RyYXRlZ3lcIjp0cnVlLFwiX2VuYWJsZU5ld0NvbnNlbnRTdHJhdGVneVwiOnRydWUsXCJfZml4Q3RjTGlua3NPbklvc1wiOnRydWUsXCJfZ29vZ0VuYWJsZVF1cFwiOnRydWUsXCJfc3dpdGNoR3dzUmVxdWVzdFRvVXNlQWRzZW5zZURvbWFpblwiOnRydWUsXCJfdXNlU2VydmVyUHJvdmlkZWREb21haW5cIjp0cnVlLFwiX3dhaXRPbkNvbnNlbnRGb3JGaXJzdFBhcnR5Q29va2llXCI6dHJ1ZSxcImVuYWJsZUVuaGFuY2VkVGFyZ2V0aW5nUnNvbmNcIjp0cnVlLFwiZW5hYmxlTm9uYmxvY2tpbmdTYXNDb29raWVcIjp0cnVlfSxtZHA6MTgwMDAwMCxzc2RsOlwiWVhCd2MzQnZkQzVqYjIwc1lteHZaM053YjNRdVkyOXRMR0p5TG1OdmJTeGpieTVqYjIwc1kyeHZkV1JtY205dWRDNXVaWFFzWlhVdVkyOXRMR2h2Y0hSdkxtOXlaeXhwYmk1dVpYUXNkSEpoYm5Oc1lYUmxMbWR2YjJjc2RXc3VZMjl0TEhWekxtTnZiU3gzWldJdVlYQndcIixjZGw6dHJ1ZSxjZGg6XCJzeW5kaWNhdGVkc2VhcmNoLmdvb2dcIixjZGVtOntcImFmc19hYV9iYXNlbGluZVwiOjUwMCxcImFmc19jaGF0Ym90XCI6NTAwLFwiYWZzX2NoYXRib3RfYWFcIjo1MDAsXCJhZnNfZ3BwX2FwaVwiOjB9fX07dmFyIG47ZnVuY3Rpb24gYWEoYSl7dmFyIGI9MDtyZXR1cm4gZnVuY3Rpb24oKXtyZXR1cm4gYjxhLmxlbmd0aD97ZG9uZTohMSx2YWx1ZTphW2IrK119Ontkb25lOiEwfX19dmFyIGNhPXR5cGVvZiBPYmplY3QuZGVmaW5lUHJvcGVydGllcz09XCJmdW5jdGlvblwiP09iamVjdC5kZWZpbmVQcm9wZXJ0eTpmdW5jdGlvbihhLGIsYyl7aWYoYT09QXJyYXkucHJvdG90eXBlfHxhPT1PYmplY3QucHJvdG90eXBlKXJldHVybiBhO2FbYl09Yy52YWx1ZTtyZXR1cm4gYX07XG5mdW5jdGlvbiBkYShhKXthPVtcIm9iamVjdFwiPT10eXBlb2YgZ2xvYmFsVGhpcyYmZ2xvYmFsVGhpcyxhLFwib2JqZWN0XCI9PXR5cGVvZiB3aW5kb3cmJndpbmRvdyxcIm9iamVjdFwiPT10eXBlb2Ygc2VsZiYmc2VsZixcIm9iamVjdFwiPT10eXBlb2YgZ2xvYmFsJiZnbG9iYWxdO2Zvcih2YXIgYj0wO2I8YS5sZW5ndGg7KytiKXt2YXIgYz1hW2JdO2lmKGMmJmMuTWF0aD09TWF0aClyZXR1cm4gY310aHJvdyBFcnJvcihcIkNhbm5vdCBmaW5kIGdsb2JhbCBvYmplY3RcIik7fXZhciBlYT1kYSh0aGlzKTtmdW5jdGlvbiBxKGEsYil7aWYoYilhOnt2YXIgYz1lYTthPWEuc3BsaXQoXCIuXCIpO2Zvcih2YXIgZD0wO2Q8YS5sZW5ndGgtMTtkKyspe3ZhciBlPWFbZF07aWYoIShlIGluIGMpKWJyZWFrIGE7Yz1jW2VdfWE9YVthLmxlbmd0aC0xXTtkPWNbYV07Yj1iKGQpO2IhPWQmJmIhPW51bGwmJmNhKGMsYSx7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmJ9KX19XG5xKFwiU3ltYm9sXCIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihmKXtpZih0aGlzIGluc3RhbmNlb2YgYil0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3ltYm9sIGlzIG5vdCBhIGNvbnN0cnVjdG9yXCIpO3JldHVybiBuZXcgYyhkKyhmfHxcIlwiKStcIl9cIitlKyssZil9ZnVuY3Rpb24gYyhmLGcpe3RoaXMucWU9ZjtjYSh0aGlzLFwiZGVzY3JpcHRpb25cIix7Y29uZmlndXJhYmxlOiEwLHdyaXRhYmxlOiEwLHZhbHVlOmd9KX1pZihhKXJldHVybiBhO2MucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucWV9O3ZhciBkPVwianNjb21wX3N5bWJvbF9cIisoTWF0aC5yYW5kb20oKSoxRTk+Pj4wKStcIl9cIixlPTA7cmV0dXJuIGJ9KTtcbnEoXCJTeW1ib2wuaXRlcmF0b3JcIixmdW5jdGlvbihhKXtpZihhKXJldHVybiBhO2E9U3ltYm9sKFwiU3ltYm9sLml0ZXJhdG9yXCIpO2Zvcih2YXIgYj1cIkFycmF5IEludDhBcnJheSBVaW50OEFycmF5IFVpbnQ4Q2xhbXBlZEFycmF5IEludDE2QXJyYXkgVWludDE2QXJyYXkgSW50MzJBcnJheSBVaW50MzJBcnJheSBGbG9hdDMyQXJyYXkgRmxvYXQ2NEFycmF5XCIuc3BsaXQoXCIgXCIpLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9ZWFbYltjXV07dHlwZW9mIGQ9PT1cImZ1bmN0aW9uXCImJnR5cGVvZiBkLnByb3RvdHlwZVthXSE9XCJmdW5jdGlvblwiJiZjYShkLnByb3RvdHlwZSxhLHtjb25maWd1cmFibGU6ITAsd3JpdGFibGU6ITAsdmFsdWU6ZnVuY3Rpb24oKXtyZXR1cm4gZmEoYWEodGhpcykpfX0pfXJldHVybiBhfSk7ZnVuY3Rpb24gZmEoYSl7YT17bmV4dDphfTthW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gdGhpc307cmV0dXJuIGF9XG5mdW5jdGlvbiBoYShhKXtyZXR1cm4gaWEoYSxhKX1mdW5jdGlvbiBpYShhLGIpe2EucmF3PWI7T2JqZWN0LmZyZWV6ZSYmKE9iamVjdC5mcmVlemUoYSksT2JqZWN0LmZyZWV6ZShiKSk7cmV0dXJuIGF9ZnVuY3Rpb24gdShhKXt2YXIgYj10eXBlb2YgU3ltYm9sIT1cInVuZGVmaW5lZFwiJiZTeW1ib2wuaXRlcmF0b3ImJmFbU3ltYm9sLml0ZXJhdG9yXTtpZihiKXJldHVybiBiLmNhbGwoYSk7aWYodHlwZW9mIGEubGVuZ3RoPT1cIm51bWJlclwiKXJldHVybntuZXh0OmFhKGEpfTt0aHJvdyBFcnJvcihTdHJpbmcoYSkrXCIgaXMgbm90IGFuIGl0ZXJhYmxlIG9yIEFycmF5TGlrZVwiKTt9ZnVuY3Rpb24gamEoYSl7aWYoIShhIGluc3RhbmNlb2YgQXJyYXkpKXthPXUoYSk7Zm9yKHZhciBiLGM9W107IShiPWEubmV4dCgpKS5kb25lOyljLnB1c2goYi52YWx1ZSk7YT1jfXJldHVybiBhfVxudmFyIGthPXR5cGVvZiBPYmplY3QuY3JlYXRlPT1cImZ1bmN0aW9uXCI/T2JqZWN0LmNyZWF0ZTpmdW5jdGlvbihhKXtmdW5jdGlvbiBiKCl7fWIucHJvdG90eXBlPWE7cmV0dXJuIG5ldyBifSxsYTtpZih0eXBlb2YgT2JqZWN0LnNldFByb3RvdHlwZU9mPT1cImZ1bmN0aW9uXCIpbGE9T2JqZWN0LnNldFByb3RvdHlwZU9mO2Vsc2V7dmFyIG1hO2E6e3ZhciBuYT17YTohMH0sb2E9e307dHJ5e29hLl9fcHJvdG9fXz1uYTttYT1vYS5hO2JyZWFrIGF9Y2F0Y2goYSl7fW1hPSExfWxhPW1hP2Z1bmN0aW9uKGEsYil7YS5fX3Byb3RvX189YjtpZihhLl9fcHJvdG9fXyE9PWIpdGhyb3cgbmV3IFR5cGVFcnJvcihhK1wiIGlzIG5vdCBleHRlbnNpYmxlXCIpO3JldHVybiBhfTpudWxsfXZhciBwYT1sYTtcbmZ1bmN0aW9uIHFhKGEsYil7YS5wcm90b3R5cGU9a2EoYi5wcm90b3R5cGUpO2EucHJvdG90eXBlLmNvbnN0cnVjdG9yPWE7aWYocGEpcGEoYSxiKTtlbHNlIGZvcih2YXIgYyBpbiBiKWlmKGMhPVwicHJvdG90eXBlXCIpaWYoT2JqZWN0LmRlZmluZVByb3BlcnRpZXMpe3ZhciBkPU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoYixjKTtkJiZPYmplY3QuZGVmaW5lUHJvcGVydHkoYSxjLGQpfWVsc2UgYVtjXT1iW2NdO2EucGc9Yi5wcm90b3R5cGV9ZnVuY3Rpb24gcmEoKXtmb3IodmFyIGE9TnVtYmVyKHRoaXMpLGI9W10sYz1hO2M8YXJndW1lbnRzLmxlbmd0aDtjKyspYltjLWFdPWFyZ3VtZW50c1tjXTtyZXR1cm4gYn1cbnEoXCJQcm9taXNlXCIsZnVuY3Rpb24oYSl7ZnVuY3Rpb24gYihnKXt0aGlzLkI9MDt0aGlzLldhPXZvaWQgMDt0aGlzLkFhPVtdO3RoaXMuUWQ9ITE7dmFyIGg9dGhpcy5xYygpO3RyeXtnKGgucmVzb2x2ZSxoLnJlamVjdCl9Y2F0Y2goayl7aC5yZWplY3Qoayl9fWZ1bmN0aW9uIGMoKXt0aGlzLlk9bnVsbH1mdW5jdGlvbiBkKGcpe3JldHVybiBnIGluc3RhbmNlb2YgYj9nOm5ldyBiKGZ1bmN0aW9uKGgpe2goZyl9KX1pZihhKXJldHVybiBhO2MucHJvdG90eXBlLnhkPWZ1bmN0aW9uKGcpe2lmKHRoaXMuWT09bnVsbCl7dGhpcy5ZPVtdO3ZhciBoPXRoaXM7dGhpcy55ZChmdW5jdGlvbigpe2guaGYoKX0pfXRoaXMuWS5wdXNoKGcpfTt2YXIgZT1lYS5zZXRUaW1lb3V0O2MucHJvdG90eXBlLnlkPWZ1bmN0aW9uKGcpe2UoZywwKX07Yy5wcm90b3R5cGUuaGY9ZnVuY3Rpb24oKXtmb3IoO3RoaXMuWSYmdGhpcy5ZLmxlbmd0aDspe3ZhciBnPXRoaXMuWTt0aGlzLlk9W107Zm9yKHZhciBoPVxuMDtoPGcubGVuZ3RoOysraCl7dmFyIGs9Z1toXTtnW2hdPW51bGw7dHJ5e2soKX1jYXRjaChsKXt0aGlzLndlKGwpfX19dGhpcy5ZPW51bGx9O2MucHJvdG90eXBlLndlPWZ1bmN0aW9uKGcpe3RoaXMueWQoZnVuY3Rpb24oKXt0aHJvdyBnO30pfTtiLnByb3RvdHlwZS5xYz1mdW5jdGlvbigpe2Z1bmN0aW9uIGcobCl7cmV0dXJuIGZ1bmN0aW9uKG0pe2t8fChrPSEwLGwuY2FsbChoLG0pKX19dmFyIGg9dGhpcyxrPSExO3JldHVybntyZXNvbHZlOmcodGhpcy5WZikscmVqZWN0OmcodGhpcy5iZCl9fTtiLnByb3RvdHlwZS5WZj1mdW5jdGlvbihnKXtpZihnPT09dGhpcyl0aGlzLmJkKG5ldyBUeXBlRXJyb3IoXCJBIFByb21pc2UgY2Fubm90IHJlc29sdmUgdG8gaXRzZWxmXCIpKTtlbHNlIGlmKGcgaW5zdGFuY2VvZiBiKXRoaXMuZmcoZyk7ZWxzZXthOnN3aXRjaCh0eXBlb2YgZyl7Y2FzZSBcIm9iamVjdFwiOnZhciBoPWchPW51bGw7YnJlYWsgYTtjYXNlIFwiZnVuY3Rpb25cIjpoPSEwO2JyZWFrIGE7XG5kZWZhdWx0Omg9ITF9aD90aGlzLlVmKGcpOnRoaXMuTmQoZyl9fTtiLnByb3RvdHlwZS5VZj1mdW5jdGlvbihnKXt2YXIgaD12b2lkIDA7dHJ5e2g9Zy50aGVufWNhdGNoKGspe3RoaXMuYmQoayk7cmV0dXJufXR5cGVvZiBoPT1cImZ1bmN0aW9uXCI/dGhpcy5nZyhoLGcpOnRoaXMuTmQoZyl9O2IucHJvdG90eXBlLmJkPWZ1bmN0aW9uKGcpe3RoaXMuZWUoMixnKX07Yi5wcm90b3R5cGUuTmQ9ZnVuY3Rpb24oZyl7dGhpcy5lZSgxLGcpfTtiLnByb3RvdHlwZS5lZT1mdW5jdGlvbihnLGgpe2lmKHRoaXMuQiE9MCl0aHJvdyBFcnJvcihcIkNhbm5vdCBzZXR0bGUoXCIrZytcIiwgXCIraCtcIik6IFByb21pc2UgYWxyZWFkeSBzZXR0bGVkIGluIHN0YXRlXCIrdGhpcy5CKTt0aGlzLkI9Zzt0aGlzLldhPWg7dGhpcy5CPT09MiYmdGhpcy5lZygpO3RoaXMuamYoKX07Yi5wcm90b3R5cGUuZWc9ZnVuY3Rpb24oKXt2YXIgZz10aGlzO2UoZnVuY3Rpb24oKXtpZihnLkxmKCkpe3ZhciBoPWVhLmNvbnNvbGU7XG50eXBlb2YgaCE9PVwidW5kZWZpbmVkXCImJmguZXJyb3IoZy5XYSl9fSwxKX07Yi5wcm90b3R5cGUuTGY9ZnVuY3Rpb24oKXtpZih0aGlzLlFkKXJldHVybiExO3ZhciBnPWVhLkN1c3RvbUV2ZW50LGg9ZWEuRXZlbnQsaz1lYS5kaXNwYXRjaEV2ZW50O2lmKHR5cGVvZiBrPT09XCJ1bmRlZmluZWRcIilyZXR1cm4hMDt0eXBlb2YgZz09PVwiZnVuY3Rpb25cIj9nPW5ldyBnKFwidW5oYW5kbGVkcmVqZWN0aW9uXCIse2NhbmNlbGFibGU6ITB9KTp0eXBlb2YgaD09PVwiZnVuY3Rpb25cIj9nPW5ldyBoKFwidW5oYW5kbGVkcmVqZWN0aW9uXCIse2NhbmNlbGFibGU6ITB9KTooZz1lYS5kb2N1bWVudC5jcmVhdGVFdmVudChcIkN1c3RvbUV2ZW50XCIpLGcuaW5pdEN1c3RvbUV2ZW50KFwidW5oYW5kbGVkcmVqZWN0aW9uXCIsITEsITAsZykpO2cucHJvbWlzZT10aGlzO2cucmVhc29uPXRoaXMuV2E7cmV0dXJuIGsoZyl9O2IucHJvdG90eXBlLmpmPWZ1bmN0aW9uKCl7aWYodGhpcy5BYSE9bnVsbCl7Zm9yKHZhciBnPVxuMDtnPHRoaXMuQWEubGVuZ3RoOysrZylmLnhkKHRoaXMuQWFbZ10pO3RoaXMuQWE9bnVsbH19O3ZhciBmPW5ldyBjO2IucHJvdG90eXBlLmZnPWZ1bmN0aW9uKGcpe3ZhciBoPXRoaXMucWMoKTtnLmliKGgucmVzb2x2ZSxoLnJlamVjdCl9O2IucHJvdG90eXBlLmdnPWZ1bmN0aW9uKGcsaCl7dmFyIGs9dGhpcy5xYygpO3RyeXtnLmNhbGwoaCxrLnJlc29sdmUsay5yZWplY3QpfWNhdGNoKGwpe2sucmVqZWN0KGwpfX07Yi5wcm90b3R5cGUudGhlbj1mdW5jdGlvbihnLGgpe2Z1bmN0aW9uIGsocix0KXtyZXR1cm4gdHlwZW9mIHI9PVwiZnVuY3Rpb25cIj9mdW5jdGlvbih2KXt0cnl7bChyKHYpKX1jYXRjaCh3KXttKHcpfX06dH12YXIgbCxtLHA9bmV3IGIoZnVuY3Rpb24ocix0KXtsPXI7bT10fSk7dGhpcy5pYihrKGcsbCksayhoLG0pKTtyZXR1cm4gcH07Yi5wcm90b3R5cGUuY2F0Y2g9ZnVuY3Rpb24oZyl7cmV0dXJuIHRoaXMudGhlbih2b2lkIDAsZyl9O2IucHJvdG90eXBlLmliPWZ1bmN0aW9uKGcsXG5oKXtmdW5jdGlvbiBrKCl7c3dpdGNoKGwuQil7Y2FzZSAxOmcobC5XYSk7YnJlYWs7Y2FzZSAyOmgobC5XYSk7YnJlYWs7ZGVmYXVsdDp0aHJvdyBFcnJvcihcIlVuZXhwZWN0ZWQgc3RhdGU6IFwiK2wuQik7fX12YXIgbD10aGlzO3RoaXMuQWE9PW51bGw/Zi54ZChrKTp0aGlzLkFhLnB1c2goayk7dGhpcy5RZD0hMH07Yi5yZXNvbHZlPWQ7Yi5yZWplY3Q9ZnVuY3Rpb24oZyl7cmV0dXJuIG5ldyBiKGZ1bmN0aW9uKGgsayl7ayhnKX0pfTtiLnJhY2U9ZnVuY3Rpb24oZyl7cmV0dXJuIG5ldyBiKGZ1bmN0aW9uKGgsayl7Zm9yKHZhciBsPXUoZyksbT1sLm5leHQoKTshbS5kb25lO209bC5uZXh0KCkpZChtLnZhbHVlKS5pYihoLGspfSl9O2IuYWxsPWZ1bmN0aW9uKGcpe3ZhciBoPXUoZyksaz1oLm5leHQoKTtyZXR1cm4gay5kb25lP2QoW10pOm5ldyBiKGZ1bmN0aW9uKGwsbSl7ZnVuY3Rpb24gcCh2KXtyZXR1cm4gZnVuY3Rpb24odyl7clt2XT13O3QtLTt0PT0wJiZsKHIpfX12YXIgcj1cbltdLHQ9MDtkbyByLnB1c2godm9pZCAwKSx0KyssZChrLnZhbHVlKS5pYihwKHIubGVuZ3RoLTEpLG0pLGs9aC5uZXh0KCk7d2hpbGUoIWsuZG9uZSl9KX07cmV0dXJuIGJ9KTtmdW5jdGlvbiBzYShhLGIpe3JldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxiKX12YXIgdGE9dHlwZW9mIE9iamVjdC5hc3NpZ249PVwiZnVuY3Rpb25cIj9PYmplY3QuYXNzaWduOmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPTE7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dmFyIGQ9YXJndW1lbnRzW2NdO2lmKGQpZm9yKHZhciBlIGluIGQpc2EoZCxlKSYmKGFbZV09ZFtlXSl9cmV0dXJuIGF9O3EoXCJPYmplY3QuYXNzaWduXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGF8fHRhfSk7cShcIlN5bWJvbC5kaXNwb3NlXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpTeW1ib2woXCJTeW1ib2wuZGlzcG9zZVwiKX0pO3EoXCJnbG9iYWxUaGlzXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGF8fGVhfSk7XG5xKFwiV2Vha01hcFwiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoayl7dGhpcy5NYT0oaCs9TWF0aC5yYW5kb20oKSsxKS50b1N0cmluZygpO2lmKGspe2s9dShrKTtmb3IodmFyIGw7IShsPWsubmV4dCgpKS5kb25lOylsPWwudmFsdWUsdGhpcy5zZXQobFswXSxsWzFdKX19ZnVuY3Rpb24gYygpe31mdW5jdGlvbiBkKGspe3ZhciBsPXR5cGVvZiBrO3JldHVybiBsPT09XCJvYmplY3RcIiYmayE9PW51bGx8fGw9PT1cImZ1bmN0aW9uXCJ9ZnVuY3Rpb24gZShrKXtpZighc2EoayxnKSl7dmFyIGw9bmV3IGM7Y2EoayxnLHt2YWx1ZTpsfSl9fWZ1bmN0aW9uIGYoayl7dmFyIGw9T2JqZWN0W2tdO2wmJihPYmplY3Rba109ZnVuY3Rpb24obSl7aWYobSBpbnN0YW5jZW9mIGMpcmV0dXJuIG07T2JqZWN0LmlzRXh0ZW5zaWJsZShtKSYmZShtKTtyZXR1cm4gbChtKX0pfWlmKGZ1bmN0aW9uKCl7aWYoIWF8fCFPYmplY3Quc2VhbClyZXR1cm4hMTt0cnl7dmFyIGs9T2JqZWN0LnNlYWwoe30pLGw9T2JqZWN0LnNlYWwoe30pLFxubT1uZXcgYShbW2ssMl0sW2wsM11dKTtpZihtLmdldChrKSE9Mnx8bS5nZXQobCkhPTMpcmV0dXJuITE7bS5kZWxldGUoayk7bS5zZXQobCw0KTtyZXR1cm4hbS5oYXMoaykmJm0uZ2V0KGwpPT00fWNhdGNoKHApe3JldHVybiExfX0oKSlyZXR1cm4gYTt2YXIgZz1cIiRqc2NvbXBfaGlkZGVuX1wiK01hdGgucmFuZG9tKCk7ZihcImZyZWV6ZVwiKTtmKFwicHJldmVudEV4dGVuc2lvbnNcIik7ZihcInNlYWxcIik7dmFyIGg9MDtiLnByb3RvdHlwZS5zZXQ9ZnVuY3Rpb24oayxsKXtpZighZChrKSl0aHJvdyBFcnJvcihcIkludmFsaWQgV2Vha01hcCBrZXlcIik7ZShrKTtpZighc2EoayxnKSl0aHJvdyBFcnJvcihcIldlYWtNYXAga2V5IGZhaWw6IFwiK2spO2tbZ11bdGhpcy5NYV09bDtyZXR1cm4gdGhpc307Yi5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGspe3JldHVybiBkKGspJiZzYShrLGcpP2tbZ11bdGhpcy5NYV06dm9pZCAwfTtiLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oayl7cmV0dXJuIGQoaykmJlxuc2EoayxnKSYmc2Eoa1tnXSx0aGlzLk1hKX07Yi5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGspe3JldHVybiBkKGspJiZzYShrLGcpJiZzYShrW2ddLHRoaXMuTWEpP2RlbGV0ZSBrW2ddW3RoaXMuTWFdOiExfTtyZXR1cm4gYn0pO1xucShcIk1hcFwiLGZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoKXt2YXIgaD17fTtyZXR1cm4gaC5XPWgubmV4dD1oLmhlYWQ9aH1mdW5jdGlvbiBjKGgsayl7dmFyIGw9aFsxXTtyZXR1cm4gZmEoZnVuY3Rpb24oKXtpZihsKXtmb3IoO2wuaGVhZCE9aFsxXTspbD1sLlc7Zm9yKDtsLm5leHQhPWwuaGVhZDspcmV0dXJuIGw9bC5uZXh0LHtkb25lOiExLHZhbHVlOmsobCl9O2w9bnVsbH1yZXR1cm57ZG9uZTohMCx2YWx1ZTp2b2lkIDB9fSl9ZnVuY3Rpb24gZChoLGspe3ZhciBsPWsmJnR5cGVvZiBrO2w9PVwib2JqZWN0XCJ8fGw9PVwiZnVuY3Rpb25cIj9mLmhhcyhrKT9sPWYuZ2V0KGspOihsPVwiXCIrICsrZyxmLnNldChrLGwpKTpsPVwicF9cIitrO3ZhciBtPWhbMF1bbF07aWYobSYmc2EoaFswXSxsKSlmb3IoaD0wO2g8bS5sZW5ndGg7aCsrKXt2YXIgcD1tW2hdO2lmKGshPT1rJiZwLmtleSE9PXAua2V5fHxrPT09cC5rZXkpcmV0dXJue2lkOmwsbGlzdDptLGluZGV4OmgsSTpwfX1yZXR1cm57aWQ6bCxcbmxpc3Q6bSxpbmRleDotMSxJOnZvaWQgMH19ZnVuY3Rpb24gZShoKXt0aGlzWzBdPXt9O3RoaXNbMV09YigpO3RoaXMuc2l6ZT0wO2lmKGgpe2g9dShoKTtmb3IodmFyIGs7IShrPWgubmV4dCgpKS5kb25lOylrPWsudmFsdWUsdGhpcy5zZXQoa1swXSxrWzFdKX19aWYoZnVuY3Rpb24oKXtpZighYXx8dHlwZW9mIGEhPVwiZnVuY3Rpb25cInx8IWEucHJvdG90eXBlLmVudHJpZXN8fHR5cGVvZiBPYmplY3Quc2VhbCE9XCJmdW5jdGlvblwiKXJldHVybiExO3RyeXt2YXIgaD1PYmplY3Quc2VhbCh7eDo0fSksaz1uZXcgYSh1KFtbaCxcInNcIl1dKSk7aWYoay5nZXQoaCkhPVwic1wifHxrLnNpemUhPTF8fGsuZ2V0KHt4OjR9KXx8ay5zZXQoe3g6NH0sXCJ0XCIpIT1rfHxrLnNpemUhPTIpcmV0dXJuITE7dmFyIGw9ay5lbnRyaWVzKCksbT1sLm5leHQoKTtpZihtLmRvbmV8fG0udmFsdWVbMF0hPWh8fG0udmFsdWVbMV0hPVwic1wiKXJldHVybiExO209bC5uZXh0KCk7cmV0dXJuIG0uZG9uZXx8bS52YWx1ZVswXS54IT1cbjR8fG0udmFsdWVbMV0hPVwidFwifHwhbC5uZXh0KCkuZG9uZT8hMTohMH1jYXRjaChwKXtyZXR1cm4hMX19KCkpcmV0dXJuIGE7dmFyIGY9bmV3IFdlYWtNYXA7ZS5wcm90b3R5cGUuc2V0PWZ1bmN0aW9uKGgsayl7aD1oPT09MD8wOmg7dmFyIGw9ZCh0aGlzLGgpO2wubGlzdHx8KGwubGlzdD10aGlzWzBdW2wuaWRdPVtdKTtsLkk/bC5JLnZhbHVlPWs6KGwuST17bmV4dDp0aGlzWzFdLFc6dGhpc1sxXS5XLGhlYWQ6dGhpc1sxXSxrZXk6aCx2YWx1ZTprfSxsLmxpc3QucHVzaChsLkkpLHRoaXNbMV0uVy5uZXh0PWwuSSx0aGlzWzFdLlc9bC5JLHRoaXMuc2l6ZSsrKTtyZXR1cm4gdGhpc307ZS5wcm90b3R5cGUuZGVsZXRlPWZ1bmN0aW9uKGgpe2g9ZCh0aGlzLGgpO3JldHVybiBoLkkmJmgubGlzdD8oaC5saXN0LnNwbGljZShoLmluZGV4LDEpLGgubGlzdC5sZW5ndGh8fGRlbGV0ZSB0aGlzWzBdW2guaWRdLGguSS5XLm5leHQ9aC5JLm5leHQsaC5JLm5leHQuVz1oLkkuVyxoLkkuaGVhZD1cbm51bGwsdGhpcy5zaXplLS0sITApOiExfTtlLnByb3RvdHlwZS5jbGVhcj1mdW5jdGlvbigpe3RoaXNbMF09e307dGhpc1sxXT10aGlzWzFdLlc9YigpO3RoaXMuc2l6ZT0wfTtlLnByb3RvdHlwZS5oYXM9ZnVuY3Rpb24oaCl7cmV0dXJuISFkKHRoaXMsaCkuSX07ZS5wcm90b3R5cGUuZ2V0PWZ1bmN0aW9uKGgpe3JldHVybihoPWQodGhpcyxoKS5JKSYmaC52YWx1ZX07ZS5wcm90b3R5cGUuZW50cmllcz1mdW5jdGlvbigpe3JldHVybiBjKHRoaXMsZnVuY3Rpb24oaCl7cmV0dXJuW2gua2V5LGgudmFsdWVdfSl9O2UucHJvdG90eXBlLmtleXM9ZnVuY3Rpb24oKXtyZXR1cm4gYyh0aGlzLGZ1bmN0aW9uKGgpe3JldHVybiBoLmtleX0pfTtlLnByb3RvdHlwZS52YWx1ZXM9ZnVuY3Rpb24oKXtyZXR1cm4gYyh0aGlzLGZ1bmN0aW9uKGgpe3JldHVybiBoLnZhbHVlfSl9O2UucHJvdG90eXBlLmZvckVhY2g9ZnVuY3Rpb24oaCxrKXtmb3IodmFyIGw9dGhpcy5lbnRyaWVzKCksbTshKG09bC5uZXh0KCkpLmRvbmU7KW09XG5tLnZhbHVlLGguY2FsbChrLG1bMV0sbVswXSx0aGlzKX07ZS5wcm90b3R5cGVbU3ltYm9sLml0ZXJhdG9yXT1lLnByb3RvdHlwZS5lbnRyaWVzO3ZhciBnPTA7cmV0dXJuIGV9KTtmdW5jdGlvbiB1YShhLGIpe2EgaW5zdGFuY2VvZiBTdHJpbmcmJihhKz1cIlwiKTt2YXIgYz0wLGQ9ITEsZT17bmV4dDpmdW5jdGlvbigpe2lmKCFkJiZjPGEubGVuZ3RoKXt2YXIgZj1jKys7cmV0dXJue3ZhbHVlOmIoZixhW2ZdKSxkb25lOiExfX1kPSEwO3JldHVybntkb25lOiEwLHZhbHVlOnZvaWQgMH19fTtlW1N5bWJvbC5pdGVyYXRvcl09ZnVuY3Rpb24oKXtyZXR1cm4gZX07cmV0dXJuIGV9cShcIkFycmF5LnByb3RvdHlwZS5lbnRyaWVzXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbigpe3JldHVybiB1YSh0aGlzLGZ1bmN0aW9uKGIsYyl7cmV0dXJuW2IsY119KX19KTtcbnEoXCJBcnJheS5wcm90b3R5cGUua2V5c1wiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oKXtyZXR1cm4gdWEodGhpcyxmdW5jdGlvbihiKXtyZXR1cm4gYn0pfX0pO2Z1bmN0aW9uIHhhKGEsYixjKXtpZihhPT1udWxsKXRocm93IG5ldyBUeXBlRXJyb3IoXCJUaGUgJ3RoaXMnIHZhbHVlIGZvciBTdHJpbmcucHJvdG90eXBlLlwiK2MrXCIgbXVzdCBub3QgYmUgbnVsbCBvciB1bmRlZmluZWRcIik7aWYoYiBpbnN0YW5jZW9mIFJlZ0V4cCl0aHJvdyBuZXcgVHlwZUVycm9yKFwiRmlyc3QgYXJndW1lbnQgdG8gU3RyaW5nLnByb3RvdHlwZS5cIitjK1wiIG11c3Qgbm90IGJlIGEgcmVndWxhciBleHByZXNzaW9uXCIpO3JldHVybiBhK1wiXCJ9XG5xKFwiU3RyaW5nLnByb3RvdHlwZS5zdGFydHNXaXRoXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiLGMpe3ZhciBkPXhhKHRoaXMsYixcInN0YXJ0c1dpdGhcIik7Yis9XCJcIjt2YXIgZT1kLmxlbmd0aCxmPWIubGVuZ3RoO2M9TWF0aC5tYXgoMCxNYXRoLm1pbihjfDAsZC5sZW5ndGgpKTtmb3IodmFyIGc9MDtnPGYmJmM8ZTspaWYoZFtjKytdIT1iW2crK10pcmV0dXJuITE7cmV0dXJuIGc+PWZ9fSk7cShcIlN0cmluZy5wcm90b3R5cGUuZW5kc1dpdGhcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7dmFyIGQ9eGEodGhpcyxiLFwiZW5kc1dpdGhcIik7Yis9XCJcIjtjPT09dm9pZCAwJiYoYz1kLmxlbmd0aCk7Yz1NYXRoLm1heCgwLE1hdGgubWluKGN8MCxkLmxlbmd0aCkpO2Zvcih2YXIgZT1iLmxlbmd0aDtlPjAmJmM+MDspaWYoZFstLWNdIT1iWy0tZV0pcmV0dXJuITE7cmV0dXJuIGU8PTB9fSk7XG5xKFwiQXJyYXkucHJvdG90eXBlLmZpbmRcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7YTp7dmFyIGQ9dGhpcztkIGluc3RhbmNlb2YgU3RyaW5nJiYoZD1TdHJpbmcoZCkpO2Zvcih2YXIgZT1kLmxlbmd0aCxmPTA7ZjxlO2YrKyl7dmFyIGc9ZFtmXTtpZihiLmNhbGwoYyxnLGYsZCkpe2I9ZzticmVhayBhfX1iPXZvaWQgMH1yZXR1cm4gYn19KTtxKFwiT2JqZWN0LmVudHJpZXNcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIpe3ZhciBjPVtdLGQ7Zm9yKGQgaW4gYilzYShiLGQpJiZjLnB1c2goW2QsYltkXV0pO3JldHVybiBjfX0pO3EoXCJPYmplY3QudmFsdWVzXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGIpc2EoYixkKSYmYy5wdXNoKGJbZF0pO3JldHVybiBjfX0pO1xucShcIk9iamVjdC5pc1wiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXtyZXR1cm4gYj09PWM/YiE9PTB8fDEvYj09PTEvYzpiIT09YiYmYyE9PWN9fSk7cShcIkFycmF5LnByb3RvdHlwZS5pbmNsdWRlc1wiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXt2YXIgZD10aGlzO2QgaW5zdGFuY2VvZiBTdHJpbmcmJihkPVN0cmluZyhkKSk7dmFyIGU9ZC5sZW5ndGg7Yz1jfHwwO2ZvcihjPDAmJihjPU1hdGgubWF4KGMrZSwwKSk7YzxlO2MrKyl7dmFyIGY9ZFtjXTtpZihmPT09Ynx8T2JqZWN0LmlzKGYsYikpcmV0dXJuITB9cmV0dXJuITF9fSk7cShcIlN0cmluZy5wcm90b3R5cGUuaW5jbHVkZXNcIixmdW5jdGlvbihhKXtyZXR1cm4gYT9hOmZ1bmN0aW9uKGIsYyl7cmV0dXJuIHhhKHRoaXMsYixcImluY2x1ZGVzXCIpLmluZGV4T2YoYixjfHwwKSE9PS0xfX0pO1xucShcIk1hdGguaW11bFwiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oYixjKXtiPU51bWJlcihiKTtjPU51bWJlcihjKTt2YXIgZD1iJjY1NTM1LGU9YyY2NTUzNTtyZXR1cm4gZCplKygoYj4+PjE2JjY1NTM1KSplK2QqKGM+Pj4xNiY2NTUzNSk8PDE2Pj4+MCl8MH19KTtxKFwiTnVtYmVyLmlzTmFOXCIsZnVuY3Rpb24oYSl7cmV0dXJuIGE/YTpmdW5jdGlvbihiKXtyZXR1cm4gdHlwZW9mIGI9PT1cIm51bWJlclwiJiZpc05hTihiKX19KTtxKFwiQXJyYXkucHJvdG90eXBlLnZhbHVlc1wiLGZ1bmN0aW9uKGEpe3JldHVybiBhP2E6ZnVuY3Rpb24oKXtyZXR1cm4gdWEodGhpcyxmdW5jdGlvbihiLGMpe3JldHVybiBjfSl9fSk7LypcblxuIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuXG4gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiovXG52YXIgeWE9dGhpc3x8c2VsZjtmdW5jdGlvbiB6YShhKXt2YXIgYj10eXBlb2YgYTtiPWIhPVwib2JqZWN0XCI/YjphP0FycmF5LmlzQXJyYXkoYSk/XCJhcnJheVwiOmI6XCJudWxsXCI7cmV0dXJuIGI9PVwiYXJyYXlcInx8Yj09XCJvYmplY3RcIiYmdHlwZW9mIGEubGVuZ3RoPT1cIm51bWJlclwifWZ1bmN0aW9uIEFhKGEpe3ZhciBiPXR5cGVvZiBhO3JldHVybiBiPT1cIm9iamVjdFwiJiZhIT1udWxsfHxiPT1cImZ1bmN0aW9uXCJ9ZnVuY3Rpb24gQmEoYSxiKXtmdW5jdGlvbiBjKCl7fWMucHJvdG90eXBlPWIucHJvdG90eXBlO2EucGc9Yi5wcm90b3R5cGU7YS5wcm90b3R5cGU9bmV3IGM7YS5wcm90b3R5cGUuY29uc3RydWN0b3I9YTthLlZnPWZ1bmN0aW9uKGQsZSxmKXtmb3IodmFyIGc9QXJyYXkoYXJndW1lbnRzLmxlbmd0aC0yKSxoPTI7aDxhcmd1bWVudHMubGVuZ3RoO2grKylnW2gtMl09YXJndW1lbnRzW2hdO3JldHVybiBiLnByb3RvdHlwZVtlXS5hcHBseShkLGcpfX07dmFyIENhPW51bGwsRGE9bnVsbCxFYT1udWxsLEZhPW51bGwsR2E9bnVsbDtmdW5jdGlvbiBIYSgpe3ZhciBhPXt9O3JldHVybiB3aW5kb3cuYWRfanNvbj93aW5kb3cuYWRfanNvbjp0eXBlb2YgYWRfanNvbiE9XCJ1bmRlZmluZWRcIiYmYWRfanNvbj9hZF9qc29uOmF9ZnVuY3Rpb24gSWEoYSl7Q2F8fChDYT1IYSgpLmdkfHxudWxsKTtyZXR1cm4gQ2EmJkNhW2FdfHx7fX1mdW5jdGlvbiBKYSgpe3RoaXMuZGF0YT1JYShcImZmXCIpfWZ1bmN0aW9uIEthKCl7dmFyIGE9RGE7YXx8KGE9bmV3IEphLEhhKCkuZ2QmJihEYT1hKSk7cmV0dXJuIGF9ZnVuY3Rpb24gTGEoKXtyZXR1cm4hIUthKCkuZGF0YS5vZm19ZnVuY3Rpb24gTWEoKXt0aGlzLmRhdGE9SWEoXCJjZFwiKX1mdW5jdGlvbiBOYSgpe3ZhciBhPUVhO2F8fChhPW5ldyBNYSxIYSgpLmdkJiYoRWE9YSkpO3JldHVybiBhfWZ1bmN0aW9uIE9hKGEpe3JldHVybiBhLmRhdGEucGlkfHxcIlwifU1hLnByb3RvdHlwZS5iYT1mdW5jdGlvbigpe3JldHVybiEhdGhpcy5kYXRhLnJ9O1xuZnVuY3Rpb24gUGEoKXt0aGlzLmRhdGE9SWEoXCJwY1wiKX1mdW5jdGlvbiBSYSgpe3ZhciBhPUZhO2F8fChhPW5ldyBQYSxIYSgpLmdkJiYoRmE9YSkpO3JldHVybiBhfWZ1bmN0aW9uIFNhKGEpe3JldHVybiEhYS5kYXRhLmNnbmF9ZnVuY3Rpb24gVGEoKXt0aGlzLmRhdGE9SWEoXCJkY1wiKX1mdW5jdGlvbiBVYSgpe3ZhciBhPUdhO2F8fChhPW5ldyBUYSxIYSgpLmdkJiYoR2E9YSkpO3JldHVybiBhfTt2YXIgVmE9U3RyaW5nLnByb3RvdHlwZS50cmltP2Z1bmN0aW9uKGEpe3JldHVybiBhLnRyaW0oKX06ZnVuY3Rpb24oYSl7cmV0dXJuL15bXFxzXFx4YTBdKihbXFxzXFxTXSo/KVtcXHNcXHhhMF0qJC8uZXhlYyhhKVsxXX07LypcblxuIENvcHlyaWdodCBHb29nbGUgTExDXG4gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiovXG52YXIgV2E9Z2xvYmFsVGhpcy50cnVzdGVkVHlwZXMsWGE7ZnVuY3Rpb24gWWEoKXt2YXIgYT1udWxsO2lmKCFXYSlyZXR1cm4gYTt0cnl7dmFyIGI9ZnVuY3Rpb24oYyl7cmV0dXJuIGN9O2E9V2EuY3JlYXRlUG9saWN5KFwiZ29vZyNodG1sXCIse2NyZWF0ZUhUTUw6YixjcmVhdGVTY3JpcHQ6YixjcmVhdGVTY3JpcHRVUkw6Yn0pfWNhdGNoKGMpe31yZXR1cm4gYX1mdW5jdGlvbiBaYSgpe1hhPT09dm9pZCAwJiYoWGE9WWEoKSk7cmV0dXJuIFhhfTtmdW5jdGlvbiAkYShhKXt0aGlzLlpkPWF9JGEucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuWmQrXCJcIn07ZnVuY3Rpb24gY2IoYSl7dmFyIGI9WmEoKTtyZXR1cm4gbmV3ICRhKGI/Yi5jcmVhdGVTY3JpcHRVUkwoYSk6YSl9ZnVuY3Rpb24gZGIoYSl7aWYoYSBpbnN0YW5jZW9mICRhKXJldHVybiBhLlpkO3Rocm93IEVycm9yKFwiXCIpO307ZnVuY3Rpb24gZWIoYSl7dGhpcy5hZT1hfWViLnByb3RvdHlwZS50b1N0cmluZz1mdW5jdGlvbigpe3JldHVybiB0aGlzLmFlfTtmdW5jdGlvbiBmYihhKXtpZihhIGluc3RhbmNlb2YgZWIpcmV0dXJuIGEuYWU7dGhyb3cgRXJyb3IoXCJcIik7fTt2YXIgZ2I9L15cXHMqKD8hamF2YXNjcmlwdDopKD86W1xcdysuLV0rOnxbXjovPyNdKig/OlsvPyNdfCQpKS9pO2Z1bmN0aW9uIGhiKGEpe2E9YSBpbnN0YW5jZW9mIGViP2ZiKGEpOmdiLnRlc3QoYSk/YTp2b2lkIDA7cmV0dXJuIGF9O2Z1bmN0aW9uIGliKGEpe3RoaXMuWWQ9YX1pYi5wcm90b3R5cGUudG9TdHJpbmc9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5ZZCtcIlwifTtmdW5jdGlvbiBqYihhKXt2YXIgYj1aYSgpO3JldHVybiBuZXcgaWIoYj9iLmNyZWF0ZUhUTUwoYSk6YSl9ZnVuY3Rpb24ga2IoYSl7aWYoYSBpbnN0YW5jZW9mIGliKXJldHVybiBhLllkO3Rocm93IEVycm9yKFwiXCIpO307dmFyIGxiPVwiYWx0ZXJuYXRlIGF1dGhvciBib29rbWFyayBjYW5vbmljYWwgY2l0ZSBoZWxwIGljb24gbGljZW5zZSBtb2R1bGVwcmVsb2FkIG5leHQgcHJlZmV0Y2ggZG5zLXByZWZldGNoIHByZXJlbmRlciBwcmVjb25uZWN0IHByZWxvYWQgcHJldiBzZWFyY2ggc3VicmVzb3VyY2VcIi5zcGxpdChcIiBcIik7ZnVuY3Rpb24gbWIoYSxiKXthLnNyYz1kYihiKTt2YXIgYztiPWEub3duZXJEb2N1bWVudCYmYS5vd25lckRvY3VtZW50LmRlZmF1bHRWaWV3fHx3aW5kb3c7Yj1iPT09dm9pZCAwP2RvY3VtZW50OmI7dmFyIGQ7Yj0oZD0oYz1cImRvY3VtZW50XCJpbiBiP2IuZG9jdW1lbnQ6YikucXVlcnlTZWxlY3Rvcik9PW51bGw/dm9pZCAwOmQuY2FsbChjLFwic2NyaXB0W25vbmNlXVwiKTsoYz1iPT1udWxsP1wiXCI6Yi5ub25jZXx8Yi5nZXRBdHRyaWJ1dGUoXCJub25jZVwiKXx8XCJcIikmJmEuc2V0QXR0cmlidXRlKFwibm9uY2VcIixjKX07dmFyIG5iO3ZhciBvYj1BcnJheS5wcm90b3R5cGUuaW5kZXhPZj9mdW5jdGlvbihhLGIpe3JldHVybiBBcnJheS5wcm90b3R5cGUuaW5kZXhPZi5jYWxsKGEsYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2lmKHR5cGVvZiBhPT09XCJzdHJpbmdcIilyZXR1cm4gdHlwZW9mIGIhPT1cInN0cmluZ1wifHxiLmxlbmd0aCE9MT8tMTphLmluZGV4T2YoYiwwKTtmb3IodmFyIGM9MDtjPGEubGVuZ3RoO2MrKylpZihjIGluIGEmJmFbY109PT1iKXJldHVybiBjO3JldHVybi0xfSxwYj1BcnJheS5wcm90b3R5cGUuZm9yRWFjaD9mdW5jdGlvbihhLGIpe0FycmF5LnByb3RvdHlwZS5mb3JFYWNoLmNhbGwoYSxiLHZvaWQgMCl9OmZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjPWEubGVuZ3RoLGQ9dHlwZW9mIGE9PT1cInN0cmluZ1wiP2Euc3BsaXQoXCJcIik6YSxlPTA7ZTxjO2UrKyllIGluIGQmJmIuY2FsbCh2b2lkIDAsZFtlXSxlLGEpfSxxYj1BcnJheS5wcm90b3R5cGUuZmlsdGVyP2Z1bmN0aW9uKGEsYil7cmV0dXJuIEFycmF5LnByb3RvdHlwZS5maWx0ZXIuY2FsbChhLFxuYix2b2lkIDApfTpmdW5jdGlvbihhLGIpe2Zvcih2YXIgYz1hLmxlbmd0aCxkPVtdLGU9MCxmPXR5cGVvZiBhPT09XCJzdHJpbmdcIj9hLnNwbGl0KFwiXCIpOmEsZz0wO2c8YztnKyspaWYoZyBpbiBmKXt2YXIgaD1mW2ddO2IuY2FsbCh2b2lkIDAsaCxnLGEpJiYoZFtlKytdPWgpfXJldHVybiBkfTtmdW5jdGlvbiByYihhLGIpe2Zvcih2YXIgYz1hLmxlbmd0aCxkPXR5cGVvZiBhPT09XCJzdHJpbmdcIj9hLnNwbGl0KFwiXCIpOmEsZT0wO2U8YztlKyspaWYoZSBpbiBkJiZiLmNhbGwodm9pZCAwLGRbZV0sZSxhKSlyZXR1cm4gZTtyZXR1cm4tMX1mdW5jdGlvbiBzYihhKXt2YXIgYj1hLmxlbmd0aDtpZihiPjApe2Zvcih2YXIgYz1BcnJheShiKSxkPTA7ZDxiO2QrKyljW2RdPWFbZF07cmV0dXJuIGN9cmV0dXJuW119O2Z1bmN0aW9uIHRiKGEpe3ZhciBiPWpiKFwiPCFkb2N0eXBlIGh0bWw+PGh0bWw+PGhlYWQ+PC9oZWFkPjxib2R5PjwvYm9keT48L2h0bWw+XCIpO2Eud3JpdGUoa2IoYikpfTtmdW5jdGlvbiB1YihhKXtyZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGEucmVwbGFjZSgvXFwrL2csXCIgXCIpKX07ZnVuY3Rpb24gdmIoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7YS5vbmxvYWQ9YS5vbmVycm9yPW51bGx9fWZ1bmN0aW9uIHdiKGEpe3ZhciBiPW5ldyBJbWFnZTtiLm9ubG9hZD1iLm9uZXJyb3I9dmIoYik7Yi5zcmM9YX1mdW5jdGlvbiB4Yigpe3JldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMjE0NzQ4MzY0OCkudG9TdHJpbmcoMzYpK01hdGguYWJzKE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSoyMTQ3NDgzNjQ4KV5EYXRlLm5vdygpKS50b1N0cmluZygzNil9O2Z1bmN0aW9uIHliKGEpe2lmKGEhPW51bGwpcmV0dXJuIGF9ZnVuY3Rpb24gemIoKXtyZXR1cm4gdHlwZW9mIHNmZmVEYXRhXz09PVwib2JqZWN0XCI/c2ZmZURhdGFfOnt9fWZ1bmN0aW9uIEFiKGEsYil7Yj1ifHx6YigpO3JldHVybiB5YihiW2FdKX1mdW5jdGlvbiBCYihhLGIpe2I9Ynx8emIoKTthPWJbYV07cmV0dXJuIGEhPW51bGw/YTp2b2lkIDB9ZnVuY3Rpb24gQ2IoYSxiKXtiPWJ8fHpiKCk7cmV0dXJuISFiW2FdfWZ1bmN0aW9uIERiKCl7cmV0dXJuIHpiKCkubXx8e319ZnVuY3Rpb24geChhKXtyZXR1cm4gQ2IoYSxEYigpLmFiZil9O3ZhciBFYj1udWxsO2Z1bmN0aW9uIEZiKCl7RWJ8fChFYj1HYigpKTtyZXR1cm4gRWJ9ZnVuY3Rpb24gR2IoKXtmdW5jdGlvbiBhKGMsZCxlLGYpe2U9Q2IoXCJhaFwiLERiKCkpP2U6ZjtyZXR1cm4oQWIoXCJjZGhcIixEYigpKXx8XCJcIikhPT1cIlwiP2UrKEFiKFwiY2RoXCIsRGIoKSl8fFwiXCIpOngoXCJfc3dpdGNoR3dzUmVxdWVzdFRvVXNlQWRzZW5zZURvbWFpblwiKT9lK2Q6ZStjfXZhciBiPXliKHlhLmd3c0Jhc2VfKTtyZXR1cm4gYnx8KGI9QWIoXCJnd3NfaG9zdFwiKSk/YjooYj1BYihcInNlcnZpY2VfaG9zdFwiKSk/YShiLFwid3d3LmFkc2Vuc2VjdXN0b21zZWFyY2hhZHMuY29tXCIsXCJodHRwczovL1wiLFwiLy9cIik6YShcIi8vd3d3Lmdvb2dsZS5jb21cIixcIi8vd3d3LmFkc2Vuc2VjdXN0b21zZWFyY2hhZHMuY29tXCIsXCJodHRwczpcIixcIlwiKX07ZnVuY3Rpb24gSGIoYSl7dGhpcy5OPVtdO3RoaXMuQmM9W107YT1hLnNwbGl0KFwiI1wiKTt0aGlzLkpkPWFbMF07dGhpcy5BYz1hWzFdfHxcIlwiO3RoaXMuSmI9Nzk1MH1mdW5jdGlvbiB5KGEsYixjLGQpeyhjfHxjPT09MHx8Yz09PSExKSYmKGQ/YS5OOmEuQmMpLnB1c2goW2VuY29kZVVSSUNvbXBvbmVudChiKSxlbmNvZGVVUklDb21wb25lbnQoXCJcIitjKV0pfVxuZnVuY3Rpb24gSWIoYSl7Zm9yKHZhciBiPWEuSmQsYz1hLkpkLmluZGV4T2YoXCI/XCIpIT09LTEsZD0wO2Q8YS5CYy5sZW5ndGg7ZCsrKXt2YXIgZT0oYz9cIiZcIjpcIj9cIikrYS5CY1tkXS5qb2luKFwiPVwiKTtlLmxlbmd0aCtiLmxlbmd0aDw9YS5KYiYmKGIrPWUsYz0hMCl9Zm9yKGU9ZD0wO2U8YS5OLmxlbmd0aDtlKyspZCs9YS5OW2VdWzBdLmxlbmd0aDtkPWEuSmItYi5sZW5ndGgtZC1hLk4ubGVuZ3RoKjI7dmFyIGY9TWF0aC5mbG9vcihkL2EuTi5sZW5ndGgpO2lmKGY+PTEpZm9yKGU9MDtlPGEuTi5sZW5ndGg7ZSsrKXt2YXIgZz1hLk5bZV1bMV07Zj1nLmxlbmd0aD5mP2cuc3Vic3RyaW5nKDAsZik6ZztiKz0oYz9cIiZcIjpcIj9cIikrYS5OW2VdWzBdK1wiPVwiK2Y7ZC09Zi5sZW5ndGg7Zj1NYXRoLmZsb29yKGQvKGEuTi5sZW5ndGgtZS0xKSk7Yz0hMH1lbHNlIGZvcihkPTA7ZDxhLk4ubGVuZ3RoO2QrKylhLk5bZF1bMF0ubGVuZ3RoKzMrYi5sZW5ndGg8PWEuSmImJihiKz0oYz9cIiZcIjpcIj9cIikrXG5hLk5bZF0uam9pbihcIj1cIiksYz0hMCk7Yj1iLnN1YnN0cmluZygwLGEuSmIpO2I9Yi5yZXBsYWNlKC8lXFx3PyQvLFwiXCIpO2EuQWMubGVuZ3RoPjAmJihiKz1cIiNcIithLkFjKTtyZXR1cm4gYn07dmFyIEpiPU1hdGgucmFuZG9tKCk8LjAxLEtiPW51bGw7ZnVuY3Rpb24gTGIoYSl7dGhpcy5yZj14Yjt0aGlzLmphPXdiO3RoaXMuWWM9TmEoKS5kYXRhLnFpfHxcIlwiO3RoaXMuVWI9XCJcIjt0aGlzLmNsaWVudD1hfHxcInVua25vd25cIn1mdW5jdGlvbiBNYigpe0tifHwoS2I9bmV3IExiKG51bGwpKTtyZXR1cm4gS2J9ZnVuY3Rpb24gTmIoYSl7dmFyIGI9bmV3IEhiKEZiKCkrXCIvYWZzL2dlbl8yMDRcIiksYz1hLmNsaWVudDtjPT09XCJ1bmtub3duXCImJk9hKE5hKCkpJiYoYz1PYShOYSgpKSk7eShiLFwiY2xpZW50XCIsYyk7eShiLFwib3V0cHV0XCIsXCJ1ZHNfYWRzX29ubHlcIik7eShiLFwienhcIixhLnJmKCkpO2EuWWMmJnkoYixcImFxaWRcIixhLlljKTthLlViJiZ5KGIsXCJwc2lkXCIsYS5VYik7cmV0dXJuIGJ9XG5mdW5jdGlvbiBPYihhLGIsYyl7dmFyIGQ9TmIoYSk7eShkLFwicGJ0XCIsYik7eShkLFwiYWRieFwiLGMubGVmdCk7eShkLFwiYWRieVwiLGMudG9wKTt5KGQsXCJhZGJoXCIsYy5oZWlnaHQpO3koZCxcImFkYndcIixjLndpZHRoKTt5KGQsXCJhZGJhaFwiLGMuYmIpO3koZCxcImFkYm5cIixjLkZlKTt5KGQsXCJlYXdwXCIsYy5lZik7eShkLFwiZXJydlwiLGMuTWUpO3koZCxcImNzYWxhXCIsYy5JZik7eShkLFwibGxlXCIsYy53Zz8xOjApO3koZCxcImlmdlwiLGMuQmY/MTowKTt5KGQsXCJocHRcIixjLnNmPzE6MCk7YS5qYShJYihkKSl9ZnVuY3Rpb24gUGIoYSxiKXt2YXIgYz1OYihhKTt5KGMsXCJwYnRcIixcInVpXCIpO3koYyxcImVtc2dcIixiKTthLmphKEliKGMpKX1mdW5jdGlvbiBRYihhLGIpe3ZhciBjPU5iKGEpO3koYyxcInBidFwiLFwicmlcIik7eShjLFwiZW1zZ1wiLGIpO2EuamEoSWIoYykpfVxuZnVuY3Rpb24gUmIoYSxiLGMpe3ZhciBkPU5iKGEpO3koZCxcInBidFwiLFwidHBcIik7eShkLFwiZXJybVwiLGIpO3koZCxcImVtc2dcIixjLCEwKTthLmphKEliKGQpKX1mdW5jdGlvbiBVYihhLGIpe3ZhciBjPU5iKGEpO3koYyxcInBidFwiLGIpO2EuamEoSWIoYykpfTt2YXIgVmI9e307ZnVuY3Rpb24gV2IoKXt0aGlzLkhmPVwiYWRzLlwiK1hiO3RoaXMuTmU9Njg4MTYwNTA2O3RoaXMuUmQ9XCJnb29nbGUuYWRzLmRvbWFpbnMuQ2FmOiBcIjt0aGlzLnFmPU1iKCl9V2IucHJvdG90eXBlLmxvZz1mdW5jdGlvbihhLGIpe2lmKHdpbmRvdy5JU19HT09HTEVfQUZTX0lGUkFNRV89PT0hMCYmd2luZG93LnBhcmVudD09d2luZG93KXJldHVybiExO2E9QWEoYSk/YS5tZXNzYWdlOmE7dmFyIGM9YStiO2lmKCFWYltjXSl7VmJbY109ITA7Yz10aGlzLnFmO3ZhciBkPXRoaXMuSGYsZT10aGlzLk5lLGY9TmIoYyk7eShmLFwicGJ0XCIsXCJlclwiKTt5KGYsXCJlcnJ0XCIsZCk7eShmLFwiZXJydlwiLGUpO3koZixcImVycm1cIixiKTt5KGYsXCJlbXNnXCIsYSwhMCk7Yy5qYShJYihmKSk7cmV0dXJuITB9cmV0dXJuITF9O1xuZnVuY3Rpb24geihhLGIpe3JldHVybiBmdW5jdGlvbigpe3ZhciBjPUFycmF5LnByb3RvdHlwZS5zbGljZS5jYWxsKGFyZ3VtZW50cywwKXx8W107dHJ5e3JldHVybiBhLmFwcGx5KHRoaXMsYyl9Y2F0Y2goZSl7dHlwZW9mIGU9PT1cInN0cmluZ1wiJiYoZT17bWVzc2FnZTplfSk7Yz1lLm1lc3NhZ2U7dmFyIGQ9Yy5pbmRleE9mKEEuUmQpPT0tMTtkJiZBLmxvZyhlLGIpO3Rocm93IGQ/QS5SZCtjOmM7fX19ZnVuY3Rpb24gWWIoYSl7cmV0dXJuXCJnb29nbGUuYWRzLmRvbWFpbnMuQ2FmOiBcIithfWZ1bmN0aW9uIEIoYSxiKXtyZXR1cm4geihhLGIpfXZhciBaYj1BYihcInBhY2thZ2VzXCIpLFhiPVwidW5rbm93blwiO1piIT1udWxsJiYoWGI9WmIpO3ZhciBBPW5ldyBXYjtmdW5jdGlvbiAkYihhKXt2YXIgYj1bXSxjPTAsZDtmb3IoZCBpbiBhKWJbYysrXT1kO3JldHVybiBifTt2YXIgYWM7YTp7dmFyIGJjPXdpbmRvdy5wYXJlbnQ7dHJ5e2FjPWJjLnBvc3RNZXNzYWdlP2JjOmJjLmRvY3VtZW50LnBvc3RNZXNzYWdlP2JjLmRvY3VtZW50Om51bGw7YnJlYWsgYX1jYXRjaChhKXt9YWM9bnVsbH12YXIgY2M9YWMsZGM9e30sZWM9QihmdW5jdGlvbigpe2Zvcih2YXIgYT11KCRiKGRjKSksYj1hLm5leHQoKTshYi5kb25lO2I9YS5uZXh0KCkpYj1iLnZhbHVlLGRjLmhhc093blByb3BlcnR5KGIpJiYoZGNbYl0ueWIoKXx8ZGVsZXRlIGRjW2JdKX0sXCJmc0NESVwiKSxmYz0hMSxoYz1CKGZ1bmN0aW9uKCl7ZmN8fChmYz0hMCx3aW5kb3cuc2V0SW50ZXJ2YWwoZWMsNTAwKSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcIm1lc3NhZ2VcIixnYykpfSxcImZzSUxcIik7ZnVuY3Rpb24gaWMoYSxiKXt0aGlzLmpkPWE7dGhpcy5CPXt9O3RoaXMuYWI9YjtkY1t0aGlzLmpkXT10aGlzO2hjKCl9XG5mdW5jdGlvbiBqYyhhLGIpe3JldHVybiBhLkIuaGFzT3duUHJvcGVydHkoYik/YS5CW2JdLnZhbHVlOm51bGx9ZnVuY3Rpb24ga2MoYSxiKXtyZXR1cm4gYS5CLmhhc093blByb3BlcnR5KGIpP2EuQltiXS52YWx1ZTpudWxsfWZ1bmN0aW9uIEQoYSxiLGMsZCl7YS5CLmhhc093blByb3BlcnR5KGIpfHwoYS5CW2JdPWMoKSk7Yz1hLkJbYl07Yy5mYz1kfHxmdW5jdGlvbigpe307Yy52YWx1ZSE9bnVsbCYmYy5mYyhhLGEuamQsYixjLnZhbHVlKX1pYy5wcm90b3R5cGUueWI9ZnVuY3Rpb24oKXtyZXR1cm4hISh0aGlzLmFiJiZ0aGlzLmFiLnBhcmVudE5vZGUmJnRoaXMuYWIuY29udGVudFdpbmRvdyl9O3ZhciBsYz17fTtmdW5jdGlvbiBtYygpe3RoaXMudmFsdWU9bnVsbDt0aGlzLmZjPWZ1bmN0aW9uKCl7fTt0aGlzLnJhPSExfW49bWMucHJvdG90eXBlO24udWE9ZnVuY3Rpb24oKXt9O24uWmE9ZnVuY3Rpb24oKXt9O24uVWE9ZnVuY3Rpb24oKXt9O24uTGE9ZnVuY3Rpb24oKXt9O1xubi5DYz1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy52YWx1ZT09YX07ZnVuY3Rpb24gRSgpe21jLmNhbGwodGhpcyl9cWEoRSxtYyk7RS5wcm90b3R5cGUudWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4hIWJ9O0UucHJvdG90eXBlLlphPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMudmFsdWU/XCJ0XCI6XCJmXCJ9O0UucHJvdG90eXBlLlVhPWZ1bmN0aW9uKGEpe3JldHVybiBhPT1cInRcIn07RS5wcm90b3R5cGUuTGE9ZnVuY3Rpb24oKXtyZXR1cm4gMH07RS5qPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBFfTtmdW5jdGlvbiBuYygpe21jLmNhbGwodGhpcyl9cWEobmMsbWMpO1xubmMucHJvdG90eXBlLnVhPWZ1bmN0aW9uKGEsYil7dmFyIGM9cGFyc2VJbnQoYiwxMCk7YT1hK1wiID0gXCIrYjtpZihpc05hTihjKSlyZXR1cm4gQS5sb2coYSxcInNJR1ZWbm5cIiksbnVsbDtjPjkwMDcxOTkyNTQ3NDA5OTEmJihBLmxvZyhhLFwic0lHVlZ0bFwiKSxjPTkwMDcxOTkyNTQ3NDA5OTEpO2M8MCYmKEEubG9nKGEsXCJzSUdWVnRzXCIpLGM9MCk7cmV0dXJuIGN9O25jLnByb3RvdHlwZS5aYT1mdW5jdGlvbigpe3JldHVybiB0aGlzLnZhbHVlK1wiXCJ9O25jLnByb3RvdHlwZS5VYT1mdW5jdGlvbihhKXtyZXR1cm4gcGFyc2VJbnQoYSwxMCl9O25jLnByb3RvdHlwZS5MYT1mdW5jdGlvbigpe3JldHVybiAxfTtuYy5qPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBuY307ZnVuY3Rpb24gb2MoKXttYy5jYWxsKHRoaXMpfXFhKG9jLG1jKTtvYy5wcm90b3R5cGUudWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYj9iLnRvU3RyaW5nKCk6XCJcIn07XG5vYy5wcm90b3R5cGUuWmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZT9lbmNvZGVVUklDb21wb25lbnQodGhpcy52YWx1ZSk6XCJcIn07b2MucHJvdG90eXBlLlVhPWZ1bmN0aW9uKGEpe3JldHVybiB1YihhKX07b2MucHJvdG90eXBlLkxhPWZ1bmN0aW9uKCl7cmV0dXJuIDJ9O29jLmo9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IG9jfTtmdW5jdGlvbiBwYygpe21jLmNhbGwodGhpcyl9cWEocGMsbWMpO249cGMucHJvdG90eXBlO24udWE9ZnVuY3Rpb24oYSxiKXtyZXR1cm4gYj9iOm51bGx9O24uWmE9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy52YWx1ZT9lbmNvZGVVUklDb21wb25lbnQoSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSkpOlwiXCJ9O24uVWE9ZnVuY3Rpb24oYSl7cmV0dXJuIGE/SlNPTi5wYXJzZSh1YihhKSk6bnVsbH07bi5MYT1mdW5jdGlvbigpe3JldHVybiAzfTtcbm4uQ2M9ZnVuY3Rpb24oYSl7dmFyIGI9SlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSk7YT1KU09OLnN0cmluZ2lmeShhKTtyZXR1cm4gYj09PWF9O3BjLmo9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IHBjfTt2YXIgcWM9e30scmM9KHFjWzBdPUUuaixxY1sxXT1uYy5qLHFjWzJdPW9jLmoscWNbM109cGMuaixxYyk7ZnVuY3Rpb24gc2MoYSxiLGMpe2xjLmhhc093blByb3BlcnR5KGEpfHwobGNbYV09YygpKTtjPWxjW2FdO2E9Yy51YShhLGIpO2E9PW51bGx8fGMuQ2MoYSl8fChjLnZhbHVlPWEsYy5yYT0hMCl9XG5mdW5jdGlvbiBnYyhhKXtpZihhPWF8fHdpbmRvdy5ldmVudClmb3IodmFyIGI9dSgkYihkYykpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWlmKGM9ZGNbYy52YWx1ZV0sYy55YigpJiZhLnNvdXJjZT09Yy5hYi5jb250ZW50V2luZG93KXtiPWM7aWYoKGE9YS5kYXRhKSYmYS5zcGxpdCYmKGE9YS5zcGxpdChcIixcIiksYVswXT09XCJGU1hEQ1wiKSl7Zm9yKGM9MTtjPGEubGVuZ3RoO2MrKyl7dmFyIGQ9YVtjXS5zcGxpdChcIjpcIiksZT11YihkWzBdKSxmPXJjW3BhcnNlSW50KGRbMV0sMTApXTtiLkIuaGFzT3duUHJvcGVydHkoZSl8fChiLkJbZV09ZigpKTt2YXIgZz1iLkJbZV0uVWEoZFsyXSk7ZD1iO2QuQi5oYXNPd25Qcm9wZXJ0eShlKXx8KGQuQltlXT1mKCkpO2Y9ZC5CW2VdO2c9Zi51YShlLGcpO2chPW51bGwmJmYudmFsdWUhPWcmJihmLnZhbHVlPWcsZi5yYT0hMCl9YT11KCRiKGIuQikpO2ZvcihjPWEubmV4dCgpOyFjLmRvbmU7Yz1hLm5leHQoKSljPWMudmFsdWUsZj1cbmIuQltjXSxmLnJhJiYoZi5yYT0hMSxmLmZjKGIsYi5qZCxjLGYudmFsdWUpKX1icmVha319aWMucHJvdG90eXBlLnliPXooaWMucHJvdG90eXBlLnliLFwiZnNpSFZJXCIpO3ZhciB0Yz1CKGZ1bmN0aW9uKCl7aWYoY2Mpe2Zvcih2YXIgYT1bXSxiPXUoJGIobGMpKSxjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSl7Yz1jLnZhbHVlO3ZhciBkPWxjW2NdO2lmKGQucmEpe3ZhciBlPWQuWmEoKTthLnB1c2goW2VuY29kZVVSSUNvbXBvbmVudChjKSxkLkxhKCksZV0uam9pbihcIjpcIikpO2QucmE9ITF9fWEubGVuZ3RoIT0wJiZjYy5wb3N0TWVzc2FnZShbXCJGU1hEQ1wiXS5jb25jYXQoYSkuam9pbihcIixcIiksXCIqXCIpfX0sXCJmc1NDXCIpO2Z1bmN0aW9uIHVjKGEsYil7c2MoYSxiLG5jLmopfWZ1bmN0aW9uIHZjKGEsYil7c2MoYSxiLEUuail9O2Z1bmN0aW9uIHdjKGEsYil7Zm9yKHZhciBjPXUoT2JqZWN0LmtleXMoYikpLGQ9Yy5uZXh0KCk7IWQuZG9uZTtkPWMubmV4dCgpKWQ9ZC52YWx1ZSxhW2RdPXt9LE9iamVjdC5hc3NpZ24oYVtkXSxiW2RdKX1mdW5jdGlvbiB4YyhhLGIpe2I9dShiKTtmb3IodmFyIGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWM9Yy52YWx1ZSxhLmhhc093blByb3BlcnR5KGMpLGFbY10uT2M9ITB9O2Z1bmN0aW9uIHljKCl7dmFyIGE9emM7dGhpcy5SYT0xMDt0aGlzLlBhPU1hdGguZmxvb3IoYSl9eWMucHJvdG90eXBlLkY9ZnVuY3Rpb24oKXtyZXR1cm4gdGhpcy5SYStcInB4IC0gXCIrdGhpcy5QYStcInB4XCJ9O3ljLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe2E9cGFyc2VJbnQoYSwxMCk7cmV0dXJuIGlzTmFOKGEpP251bGw6TWF0aC5tYXgodGhpcy5SYSxNYXRoLm1pbih0aGlzLlBhLGEpKX07eWMucHJvdG90eXBlLkg9ZnVuY3Rpb24oYSl7cmV0dXJuIHRoaXMuQyhhKX07ZnVuY3Rpb24gQWMoYSxiKXt0aGlzLng9YSE9PXZvaWQgMD9hOjA7dGhpcy55PWIhPT12b2lkIDA/YjowfW49QWMucHJvdG90eXBlO24uY2xvbmU9ZnVuY3Rpb24oKXtyZXR1cm4gbmV3IEFjKHRoaXMueCx0aGlzLnkpfTtuLkNjPWZ1bmN0aW9uKGEpe3JldHVybiBhIGluc3RhbmNlb2YgQWMmJih0aGlzPT1hPyEwOnRoaXMmJmE/dGhpcy54PT1hLngmJnRoaXMueT09YS55OiExKX07bi5jZWlsPWZ1bmN0aW9uKCl7dGhpcy54PU1hdGguY2VpbCh0aGlzLngpO3RoaXMueT1NYXRoLmNlaWwodGhpcy55KTtyZXR1cm4gdGhpc307bi5mbG9vcj1mdW5jdGlvbigpe3RoaXMueD1NYXRoLmZsb29yKHRoaXMueCk7dGhpcy55PU1hdGguZmxvb3IodGhpcy55KTtyZXR1cm4gdGhpc307bi5yb3VuZD1mdW5jdGlvbigpe3RoaXMueD1NYXRoLnJvdW5kKHRoaXMueCk7dGhpcy55PU1hdGgucm91bmQodGhpcy55KTtyZXR1cm4gdGhpc307XG5uLnRyYW5zbGF0ZT1mdW5jdGlvbihhLGIpe2EgaW5zdGFuY2VvZiBBYz8odGhpcy54Kz1hLngsdGhpcy55Kz1hLnkpOih0aGlzLngrPU51bWJlcihhKSx0eXBlb2YgYj09PVwibnVtYmVyXCImJih0aGlzLnkrPWIpKTtyZXR1cm4gdGhpc307bi5zY2FsZT1mdW5jdGlvbihhLGIpe3RoaXMueCo9YTt0aGlzLnkqPXR5cGVvZiBiPT09XCJudW1iZXJcIj9iOmE7cmV0dXJuIHRoaXN9O2Z1bmN0aW9uIEJjKGEsYixjLGQpe3RoaXMudG9wPWE7dGhpcy5yaWdodD1iO3RoaXMuYm90dG9tPWM7dGhpcy5sZWZ0PWR9bj1CYy5wcm90b3R5cGU7bi5jbG9uZT1mdW5jdGlvbigpe3JldHVybiBuZXcgQmModGhpcy50b3AsdGhpcy5yaWdodCx0aGlzLmJvdHRvbSx0aGlzLmxlZnQpfTtuLmNvbnRhaW5zPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzJiZhP2EgaW5zdGFuY2VvZiBCYz9hLmxlZnQ+PXRoaXMubGVmdCYmYS5yaWdodDw9dGhpcy5yaWdodCYmYS50b3A+PXRoaXMudG9wJiZhLmJvdHRvbTw9dGhpcy5ib3R0b206YS54Pj10aGlzLmxlZnQmJmEueDw9dGhpcy5yaWdodCYmYS55Pj10aGlzLnRvcCYmYS55PD10aGlzLmJvdHRvbTohMX07XG5uLmV4cGFuZD1mdW5jdGlvbihhLGIsYyxkKXtBYShhKT8odGhpcy50b3AtPWEudG9wLHRoaXMucmlnaHQrPWEucmlnaHQsdGhpcy5ib3R0b20rPWEuYm90dG9tLHRoaXMubGVmdC09YS5sZWZ0KToodGhpcy50b3AtPWEsdGhpcy5yaWdodCs9TnVtYmVyKGIpLHRoaXMuYm90dG9tKz1OdW1iZXIoYyksdGhpcy5sZWZ0LT1OdW1iZXIoZCkpO3JldHVybiB0aGlzfTtuLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLnRvcD1NYXRoLmNlaWwodGhpcy50b3ApO3RoaXMucmlnaHQ9TWF0aC5jZWlsKHRoaXMucmlnaHQpO3RoaXMuYm90dG9tPU1hdGguY2VpbCh0aGlzLmJvdHRvbSk7dGhpcy5sZWZ0PU1hdGguY2VpbCh0aGlzLmxlZnQpO3JldHVybiB0aGlzfTtcbm4uZmxvb3I9ZnVuY3Rpb24oKXt0aGlzLnRvcD1NYXRoLmZsb29yKHRoaXMudG9wKTt0aGlzLnJpZ2h0PU1hdGguZmxvb3IodGhpcy5yaWdodCk7dGhpcy5ib3R0b209TWF0aC5mbG9vcih0aGlzLmJvdHRvbSk7dGhpcy5sZWZ0PU1hdGguZmxvb3IodGhpcy5sZWZ0KTtyZXR1cm4gdGhpc307bi5yb3VuZD1mdW5jdGlvbigpe3RoaXMudG9wPU1hdGgucm91bmQodGhpcy50b3ApO3RoaXMucmlnaHQ9TWF0aC5yb3VuZCh0aGlzLnJpZ2h0KTt0aGlzLmJvdHRvbT1NYXRoLnJvdW5kKHRoaXMuYm90dG9tKTt0aGlzLmxlZnQ9TWF0aC5yb3VuZCh0aGlzLmxlZnQpO3JldHVybiB0aGlzfTtcbm4udHJhbnNsYXRlPWZ1bmN0aW9uKGEsYil7YSBpbnN0YW5jZW9mIEFjPyh0aGlzLmxlZnQrPWEueCx0aGlzLnJpZ2h0Kz1hLngsdGhpcy50b3ArPWEueSx0aGlzLmJvdHRvbSs9YS55KToodGhpcy5sZWZ0Kz1hLHRoaXMucmlnaHQrPWEsdHlwZW9mIGI9PT1cIm51bWJlclwiJiYodGhpcy50b3ArPWIsdGhpcy5ib3R0b20rPWIpKTtyZXR1cm4gdGhpc307bi5zY2FsZT1mdW5jdGlvbihhLGIpe2I9dHlwZW9mIGI9PT1cIm51bWJlclwiP2I6YTt0aGlzLmxlZnQqPWE7dGhpcy5yaWdodCo9YTt0aGlzLnRvcCo9Yjt0aGlzLmJvdHRvbSo9YjtyZXR1cm4gdGhpc307ZnVuY3Rpb24gQ2MoYSxiKXt0aGlzLndpZHRoPWE7dGhpcy5oZWlnaHQ9Yn1uPUNjLnByb3RvdHlwZTtuLmNsb25lPWZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBDYyh0aGlzLndpZHRoLHRoaXMuaGVpZ2h0KX07bi5hc3BlY3RSYXRpbz1mdW5jdGlvbigpe3JldHVybiB0aGlzLndpZHRoL3RoaXMuaGVpZ2h0fTtuLmNlaWw9ZnVuY3Rpb24oKXt0aGlzLndpZHRoPU1hdGguY2VpbCh0aGlzLndpZHRoKTt0aGlzLmhlaWdodD1NYXRoLmNlaWwodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtuLmZsb29yPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLmZsb29yKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGguZmxvb3IodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtuLnJvdW5kPWZ1bmN0aW9uKCl7dGhpcy53aWR0aD1NYXRoLnJvdW5kKHRoaXMud2lkdGgpO3RoaXMuaGVpZ2h0PU1hdGgucm91bmQodGhpcy5oZWlnaHQpO3JldHVybiB0aGlzfTtcbm4uc2NhbGU9ZnVuY3Rpb24oYSxiKXt0aGlzLndpZHRoKj1hO3RoaXMuaGVpZ2h0Kj10eXBlb2YgYj09PVwibnVtYmVyXCI/YjphO3JldHVybiB0aGlzfTt2YXIgRGMsRWM7YTp7Zm9yKHZhciBGYz1bXCJDTE9TVVJFX0ZMQUdTXCJdLEdjPXlhLEhjPTA7SGM8RmMubGVuZ3RoO0hjKyspaWYoR2M9R2NbRmNbSGNdXSxHYz09bnVsbCl7RWM9bnVsbDticmVhayBhfUVjPUdjfXZhciBJYz1FYyYmRWNbNjEwNDAxMzAxXTtEYz1JYyE9bnVsbD9JYzohMTtmdW5jdGlvbiBKYygpe3ZhciBhPXlhLm5hdmlnYXRvcjtyZXR1cm4gYSYmKGE9YS51c2VyQWdlbnQpP2E6XCJcIn12YXIgS2MsTGM9eWEubmF2aWdhdG9yO0tjPUxjP0xjLnVzZXJBZ2VudERhdGF8fG51bGw6bnVsbDtmdW5jdGlvbiBPYyhhKXtyZXR1cm4gRGM/S2M/S2MuYnJhbmRzLnNvbWUoZnVuY3Rpb24oYil7cmV0dXJuKGI9Yi5icmFuZCkmJmIuaW5kZXhPZihhKSE9LTF9KTohMTohMX1mdW5jdGlvbiBQYyhhKXtyZXR1cm4gSmMoKS5pbmRleE9mKGEpIT0tMX07ZnVuY3Rpb24gUWMoKXtyZXR1cm4gRGM/ISFLYyYmS2MuYnJhbmRzLmxlbmd0aD4wOiExfWZ1bmN0aW9uIFJjKCl7cmV0dXJuIFFjKCk/T2MoXCJDaHJvbWl1bVwiKTooUGMoXCJDaHJvbWVcIil8fFBjKFwiQ3JpT1NcIikpJiYhKFFjKCk/MDpQYyhcIkVkZ2VcIikpfHxQYyhcIlNpbGtcIil9O2Z1bmN0aW9uIFNjKGEpe1NjW1wiIFwiXShhKTtyZXR1cm4gYX1TY1tcIiBcIl09ZnVuY3Rpb24oKXt9O3ZhciBUYz1KYygpLnRvTG93ZXJDYXNlKCkuaW5kZXhPZihcIndlYmtpdFwiKSE9LTEmJiFQYyhcIkVkZ2VcIik7ZnVuY3Rpb24gVWMoYSl7aWYoYSBpbnN0YW5jZW9mIGliKXJldHVybiBhO2E9U3RyaW5nKGEpLnJlcGxhY2UoLyYvZyxcIiZhbXA7XCIpLnJlcGxhY2UoLzwvZyxcIiZsdDtcIikucmVwbGFjZSgvPi9nLFwiJmd0O1wiKS5yZXBsYWNlKC9cIi9nLFwiJnF1b3Q7XCIpLnJlcGxhY2UoLycvZyxcIiZhcG9zO1wiKTtyZXR1cm4gamIoYSl9O2Z1bmN0aW9uIFZjKGEpe3ZhciBiPXJhLmFwcGx5KDEsYXJndW1lbnRzKTtpZihiLmxlbmd0aD09PTApcmV0dXJuIGNiKGFbMF0pO2Zvcih2YXIgYz1hWzBdLGQ9MDtkPGIubGVuZ3RoO2QrKyljKz1lbmNvZGVVUklDb21wb25lbnQoYltkXSkrYVtkKzFdO3JldHVybiBjYihjKX1mdW5jdGlvbiBXYyhhLGIpe2E9ZGIoYSkudG9TdHJpbmcoKTt2YXIgYz1hLnNwbGl0KC9bPyNdLyksZD0vWz9dLy50ZXN0KGEpP1wiP1wiK2NbMV06XCJcIjtyZXR1cm4gWGMoY1swXSxkLC9bI10vLnRlc3QoYSk/XCIjXCIrKGQ/Y1syXTpjWzFdKTpcIlwiLGIpfVxuZnVuY3Rpb24gWGMoYSxiLGMsZCl7ZnVuY3Rpb24gZShnLGgpe2chPW51bGwmJihBcnJheS5pc0FycmF5KGcpP2cuZm9yRWFjaChmdW5jdGlvbihrKXtyZXR1cm4gZShrLGgpfSk6KGIrPWYrZW5jb2RlVVJJQ29tcG9uZW50KGgpK1wiPVwiK2VuY29kZVVSSUNvbXBvbmVudChnKSxmPVwiJlwiKSl9dmFyIGY9Yi5sZW5ndGg/XCImXCI6XCI/XCI7ZC5jb25zdHJ1Y3Rvcj09PU9iamVjdCYmKGQ9T2JqZWN0LmVudHJpZXMoZCkpO0FycmF5LmlzQXJyYXkoZCk/ZC5mb3JFYWNoKGZ1bmN0aW9uKGcpe3JldHVybiBlKGdbMV0sZ1swXSl9KTpkLmZvckVhY2goZSk7cmV0dXJuIGNiKGErYitjKX07ZnVuY3Rpb24gWWMoYSl7cmV0dXJuIGE/bmV3IFpjKCRjKGEpKTpuYnx8KG5iPW5ldyBaYyl9XG5mdW5jdGlvbiBhZChhLGIsYyl7dmFyIGQ9ZG9jdW1lbnQ7Yz1jfHxkO3ZhciBlPWEmJmEhPVwiKlwiP1N0cmluZyhhKS50b1VwcGVyQ2FzZSgpOlwiXCI7aWYoYy5xdWVyeVNlbGVjdG9yQWxsJiZjLnF1ZXJ5U2VsZWN0b3ImJihlfHxiKSlyZXR1cm4gYy5xdWVyeVNlbGVjdG9yQWxsKGUrKGI/XCIuXCIrYjpcIlwiKSk7aWYoYiYmYy5nZXRFbGVtZW50c0J5Q2xhc3NOYW1lKXthPWMuZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShiKTtpZihlKXtjPXt9O2Zvcih2YXIgZj1kPTAsZztnPWFbZl07ZisrKWU9PWcubm9kZU5hbWUmJihjW2QrK109Zyk7Yy5sZW5ndGg9ZDtyZXR1cm4gY31yZXR1cm4gYX1hPWMuZ2V0RWxlbWVudHNCeVRhZ05hbWUoZXx8XCIqXCIpO2lmKGIpe2M9e307Zm9yKGY9ZD0wO2c9YVtmXTtmKyspe2U9Zy5jbGFzc05hbWU7dmFyIGg7aWYoaD10eXBlb2YgZS5zcGxpdD09XCJmdW5jdGlvblwiKWg9b2IoZS5zcGxpdCgvXFxzKy8pLGIpPj0wO2gmJihjW2QrK109Zyl9Yy5sZW5ndGg9ZDtyZXR1cm4gY31yZXR1cm4gYX1cbmZ1bmN0aW9uIGJkKGEpe2E9YS5kb2N1bWVudDthPWEuY29tcGF0TW9kZT09XCJDU1MxQ29tcGF0XCI/YS5kb2N1bWVudEVsZW1lbnQ6YS5ib2R5O3JldHVybiBuZXcgQ2MoYS5jbGllbnRXaWR0aCxhLmNsaWVudEhlaWdodCl9ZnVuY3Rpb24gY2QoYSl7cmV0dXJuIGEuc2Nyb2xsaW5nRWxlbWVudD9hLnNjcm9sbGluZ0VsZW1lbnQ6VGN8fGEuY29tcGF0TW9kZSE9XCJDU1MxQ29tcGF0XCI/YS5ib2R5fHxhLmRvY3VtZW50RWxlbWVudDphLmRvY3VtZW50RWxlbWVudH1cbmZ1bmN0aW9uIGRkKGEsYixjKXtmdW5jdGlvbiBkKGgpe2gmJmIuYXBwZW5kQ2hpbGQodHlwZW9mIGg9PT1cInN0cmluZ1wiP2EuY3JlYXRlVGV4dE5vZGUoaCk6aCl9Zm9yKHZhciBlPTE7ZTxjLmxlbmd0aDtlKyspe3ZhciBmPWNbZV07aWYoIXphKGYpfHxBYShmKSYmZi5ub2RlVHlwZT4wKWQoZik7ZWxzZXthOntpZihmJiZ0eXBlb2YgZi5sZW5ndGg9PVwibnVtYmVyXCIpe2lmKEFhKGYpKXt2YXIgZz10eXBlb2YgZi5pdGVtPT1cImZ1bmN0aW9uXCJ8fHR5cGVvZiBmLml0ZW09PVwic3RyaW5nXCI7YnJlYWsgYX1pZih0eXBlb2YgZj09PVwiZnVuY3Rpb25cIil7Zz10eXBlb2YgZi5pdGVtPT1cImZ1bmN0aW9uXCI7YnJlYWsgYX19Zz0hMX1wYihnP3NiKGYpOmYsZCl9fX1mdW5jdGlvbiBlZChhLGIpe2I9U3RyaW5nKGIpO2EuY29udGVudFR5cGU9PT1cImFwcGxpY2F0aW9uL3hodG1sK3htbFwiJiYoYj1iLnRvTG93ZXJDYXNlKCkpO3JldHVybiBhLmNyZWF0ZUVsZW1lbnQoYil9XG5mdW5jdGlvbiAkYyhhKXtyZXR1cm4gYS5ub2RlVHlwZT09OT9hOmEub3duZXJEb2N1bWVudHx8YS5kb2N1bWVudH1mdW5jdGlvbiBaYyhhKXt0aGlzLmFhPWF8fHlhLmRvY3VtZW50fHxkb2N1bWVudH1uPVpjLnByb3RvdHlwZTtuLmdldEVsZW1lbnRzQnlUYWdOYW1lPWZ1bmN0aW9uKGEsYil7cmV0dXJuKGJ8fHRoaXMuYWEpLmdldEVsZW1lbnRzQnlUYWdOYW1lKFN0cmluZyhhKSl9O24uY3JlYXRlRWxlbWVudD1mdW5jdGlvbihhKXtyZXR1cm4gZWQodGhpcy5hYSxhKX07bi5jcmVhdGVUZXh0Tm9kZT1mdW5jdGlvbihhKXtyZXR1cm4gdGhpcy5hYS5jcmVhdGVUZXh0Tm9kZShTdHJpbmcoYSkpfTtuLmFwcGVuZENoaWxkPWZ1bmN0aW9uKGEsYil7YS5hcHBlbmRDaGlsZChiKX07bi5hcHBlbmQ9ZnVuY3Rpb24oYSxiKXtkZCgkYyhhKSxhLGFyZ3VtZW50cyl9O24uY2FuSGF2ZUNoaWxkcmVuPWZ1bmN0aW9uKGEpe2lmKGEubm9kZVR5cGUhPTEpcmV0dXJuITE7c3dpdGNoKGEudGFnTmFtZSl7Y2FzZSBcIkFQUExFVFwiOmNhc2UgXCJBUkVBXCI6Y2FzZSBcIkJBU0VcIjpjYXNlIFwiQlJcIjpjYXNlIFwiQ09MXCI6Y2FzZSBcIkNPTU1BTkRcIjpjYXNlIFwiRU1CRURcIjpjYXNlIFwiRlJBTUVcIjpjYXNlIFwiSFJcIjpjYXNlIFwiSU1HXCI6Y2FzZSBcIklOUFVUXCI6Y2FzZSBcIklGUkFNRVwiOmNhc2UgXCJJU0lOREVYXCI6Y2FzZSBcIktFWUdFTlwiOmNhc2UgXCJMSU5LXCI6Y2FzZSBcIk5PRlJBTUVTXCI6Y2FzZSBcIk5PU0NSSVBUXCI6Y2FzZSBcIk1FVEFcIjpjYXNlIFwiT0JKRUNUXCI6Y2FzZSBcIlBBUkFNXCI6Y2FzZSBcIlNDUklQVFwiOmNhc2UgXCJTT1VSQ0VcIjpjYXNlIFwiU1RZTEVcIjpjYXNlIFwiVFJBQ0tcIjpjYXNlIFwiV0JSXCI6cmV0dXJuITF9cmV0dXJuITB9O1xubi5yZW1vdmVOb2RlPWZ1bmN0aW9uKGEpe3JldHVybiBhJiZhLnBhcmVudE5vZGU/YS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEpOm51bGx9O24uY29udGFpbnM9ZnVuY3Rpb24oYSxiKXtpZighYXx8IWIpcmV0dXJuITE7aWYoYS5jb250YWlucyYmYi5ub2RlVHlwZT09MSlyZXR1cm4gYT09Ynx8YS5jb250YWlucyhiKTtpZih0eXBlb2YgYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbiE9XCJ1bmRlZmluZWRcIilyZXR1cm4gYT09Ynx8ISEoYS5jb21wYXJlRG9jdW1lbnRQb3NpdGlvbihiKSYxNik7Zm9yKDtiJiZhIT1iOyliPWIucGFyZW50Tm9kZTtyZXR1cm4gYj09YX07ZnVuY3Rpb24gZmQoYSxiKXthOnt2YXIgYz0kYyhhKTtpZihjLmRlZmF1bHRWaWV3JiZjLmRlZmF1bHRWaWV3LmdldENvbXB1dGVkU3R5bGUmJihjPWMuZGVmYXVsdFZpZXcuZ2V0Q29tcHV0ZWRTdHlsZShhLG51bGwpKSl7Yz1jW2JdfHxjLmdldFByb3BlcnR5VmFsdWUoYil8fFwiXCI7YnJlYWsgYX1jPVwiXCJ9cmV0dXJuIGN8fChhLmN1cnJlbnRTdHlsZT9hLmN1cnJlbnRTdHlsZVtiXTpudWxsKXx8YS5zdHlsZSYmYS5zdHlsZVtiXX1mdW5jdGlvbiBnZChhKXt0cnl7cmV0dXJuIGEuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCl9Y2F0Y2goYil7cmV0dXJue2xlZnQ6MCx0b3A6MCxyaWdodDowLGJvdHRvbTowfX19XG5mdW5jdGlvbiBoZChhKXt2YXIgYj0kYyhhKSxjPWZkKGEsXCJwb3NpdGlvblwiKSxkPWM9PVwiZml4ZWRcInx8Yz09XCJhYnNvbHV0ZVwiO2ZvcihhPWEucGFyZW50Tm9kZTthJiZhIT1iO2E9YS5wYXJlbnROb2RlKWlmKGEubm9kZVR5cGU9PTExJiZhLmhvc3QmJihhPWEuaG9zdCksYz1mZChhLFwicG9zaXRpb25cIiksZD1kJiZjPT1cInN0YXRpY1wiJiZhIT1iLmRvY3VtZW50RWxlbWVudCYmYSE9Yi5ib2R5LCFkJiYoYS5zY3JvbGxXaWR0aD5hLmNsaWVudFdpZHRofHxhLnNjcm9sbEhlaWdodD5hLmNsaWVudEhlaWdodHx8Yz09XCJmaXhlZFwifHxjPT1cImFic29sdXRlXCJ8fGM9PVwicmVsYXRpdmVcIikpcmV0dXJuIGE7cmV0dXJuIG51bGx9XG5mdW5jdGlvbiBpZChhKXt2YXIgYj0kYyhhKSxjPW5ldyBBYygwLDApO2lmKGE9PShiPyRjKGIpOmRvY3VtZW50KS5kb2N1bWVudEVsZW1lbnQpcmV0dXJuIGM7YT1nZChhKTt2YXIgZD1ZYyhiKS5hYTtiPWNkKGQpO2Q9ZC5kZWZhdWx0VmlldztiPW5ldyBBYyhkLnBhZ2VYT2Zmc2V0fHxiLnNjcm9sbExlZnQsZC5wYWdlWU9mZnNldHx8Yi5zY3JvbGxUb3ApO2MueD1hLmxlZnQrYi54O2MueT1hLnRvcCtiLnk7cmV0dXJuIGN9ZnVuY3Rpb24gamQoYSl7aWYoYS5ub2RlVHlwZT09MSlyZXR1cm4gYT1nZChhKSxuZXcgQWMoYS5sZWZ0LGEudG9wKTthPWEuY2hhbmdlZFRvdWNoZXM/YS5jaGFuZ2VkVG91Y2hlc1swXTphO3JldHVybiBuZXcgQWMoYS5jbGllbnRYLGEuY2xpZW50WSl9XG5mdW5jdGlvbiBrZChhKXt2YXIgYj1sZDtpZihmZChhLFwiZGlzcGxheVwiKSE9XCJub25lXCIpcmV0dXJuIGIoYSk7dmFyIGM9YS5zdHlsZSxkPWMuZGlzcGxheSxlPWMudmlzaWJpbGl0eSxmPWMucG9zaXRpb247Yy52aXNpYmlsaXR5PVwiaGlkZGVuXCI7Yy5wb3NpdGlvbj1cImFic29sdXRlXCI7Yy5kaXNwbGF5PVwiaW5saW5lXCI7YT1iKGEpO2MuZGlzcGxheT1kO2MucG9zaXRpb249ZjtjLnZpc2liaWxpdHk9ZTtyZXR1cm4gYX1mdW5jdGlvbiBsZChhKXt2YXIgYj1hLm9mZnNldFdpZHRoLGM9YS5vZmZzZXRIZWlnaHQsZD1UYyYmIWImJiFjO3JldHVybihiPT09dm9pZCAwfHxkKSYmYS5nZXRCb3VuZGluZ0NsaWVudFJlY3Q/KGE9Z2QoYSksbmV3IENjKGEucmlnaHQtYS5sZWZ0LGEuYm90dG9tLWEudG9wKSk6bmV3IENjKGIsYyl9O2Z1bmN0aW9uIG1kKGEpe3ZhciBiPWEuaW5kZXhPZihcIiNcIik7cmV0dXJuIGI8MD9hOmEuc2xpY2UoMCxiKX12YXIgbmQ9LyN8JC87ZnVuY3Rpb24gb2QoYSxiKXt2YXIgYz1hLnNlYXJjaChuZCk7YTp7dmFyIGQ9MDtmb3IodmFyIGU9Yi5sZW5ndGg7KGQ9YS5pbmRleE9mKGIsZCkpPj0wJiZkPGM7KXt2YXIgZj1hLmNoYXJDb2RlQXQoZC0xKTtpZihmPT0zOHx8Zj09NjMpaWYoZj1hLmNoYXJDb2RlQXQoZCtlKSwhZnx8Zj09NjF8fGY9PTM4fHxmPT0zNSlicmVhayBhO2QrPWUrMX1kPS0xfWlmKGQ8MClyZXR1cm4gbnVsbDtlPWEuaW5kZXhPZihcIiZcIixkKTtpZihlPDB8fGU+YyllPWM7ZCs9Yi5sZW5ndGgrMTtyZXR1cm4gdWIoYS5zbGljZShkLGUhPT0tMT9lOjApKX07dmFyIHBkPXt9LHFkPShwZC5hZHM9MCxwZC5yZWxhdGVkc2VhcmNoPTMscGQpLHJkPSghd2luZG93LklTX0dPT0dMRV9BRlNfSUZSQU1FX3x8UmEoKSw4KSx6Yz0oIXdpbmRvdy5JU19HT09HTEVfQUZTX0lGUkFNRV98fFJhKCksMjQpLHNkPW5ldyB5Yyx0ZD17Y29udGVudDpcImNcIixxdWVyeTpcInFcIixkb21haW46XCJkXCJ9O2Z1bmN0aW9uIHVkKGEpe3JldHVybi9eKD86KD86c2xhdmUtXFxkKyg/Oi0oPzphfGIpKT8pfCg/Om1hc3Rlci0oPzphfGIpKSktXFxkKyQvLnRlc3QoYSl9ZnVuY3Rpb24gdmQoYSl7cmV0dXJuKGE9YS5tYXRjaCgvc2xhdmUtKFxcZCspLS8pKT9wYXJzZUludChhWzFdLDEwKSsxOjF9ZnVuY3Rpb24gd2QoYSxiLGMpe2Zvcih2YXIgZD1bXSxlLGY9MDtlPWNbZl07ZisrKWU9bmV3IEhiKGUpLHkoZSxhLGIpLGQucHVzaChJYihlKSk7cmV0dXJuIGR9XG5mdW5jdGlvbiB4ZChhLGIpe2E9bWQoYSk7aWYoKGE9YS5tYXRjaChuZXcgUmVnRXhwKFwiWz8mXVwiK2IrXCI9KFteJl0qKVwiKSkpJiZhWzFdKXRyeXtyZXR1cm4gdWIoYVsxXSl9Y2F0Y2goYyl7fXJldHVybiBudWxsfWZ1bmN0aW9uIHlkKGEpe2E9bWQoYSk7dmFyIGI9e307YS5yZXBsYWNlKC9bPyZdKyhbXj0mXSspPT8oW14mXSopL2dpLGZ1bmN0aW9uKGMsZCxlKXt0cnl7Ylt1YihkKV09dWIoZSl9Y2F0Y2goZil7fX0pO3JldHVybiBifWZ1bmN0aW9uIHpkKCl7dmFyIGE9YT09PXZvaWQgMD93aW5kb3cubG9jYXRpb24uaHJlZjphO3ZhciBiPXgoXCJfZW5hYmxlTGF6eUxvYWRpbmdcIiksYz1BYihcImxsZGxcIixEYigpKTtyZXR1cm4gYiYmYyYmKGM9bmV3IFJlZ0V4cChcIihcIithdG9iKGMpLnJlcGxhY2UoLywvZyxcIil8KFwiKStcIilcIiksYS5tYXRjaChjKSk/ITE6ISEoXCJJbnRlcnNlY3Rpb25PYnNlcnZlclwiaW4gd2luZG93JiZiKX1cbmZ1bmN0aW9uIEFkKGEsYixjKXtiPWI9PT12b2lkIDA/MDpiO2M9Yz09PXZvaWQgMD9udWxsOmM7dmFyIGQ9bmV3IEJjKDAsSW5maW5pdHksSW5maW5pdHksMCk7Zm9yKHZhciBlPVljKGEpLGY9ZS5hYS5ib2R5LGc9ZS5hYS5kb2N1bWVudEVsZW1lbnQsaD1jZChlLmFhKSxrPWE7az1oZChrKTspaWYoKCFUY3x8ay5jbGllbnRIZWlnaHQhPTB8fGshPWYpJiZrIT1mJiZrIT1nJiZmZChrLFwib3ZlcmZsb3dcIikhPVwidmlzaWJsZVwiKXt2YXIgbD1pZChrKSxtPW5ldyBBYyhrLmNsaWVudExlZnQsay5jbGllbnRUb3ApO2wueCs9bS54O2wueSs9bS55O2QudG9wPU1hdGgubWF4KGQudG9wLGwueSk7ZC5yaWdodD1NYXRoLm1pbihkLnJpZ2h0LGwueCtrLmNsaWVudFdpZHRoKTtkLmJvdHRvbT1NYXRoLm1pbihkLmJvdHRvbSxsLnkray5jbGllbnRIZWlnaHQpO2QubGVmdD1NYXRoLm1heChkLmxlZnQsbC54KX1mPWguc2Nyb2xsTGVmdDtoPWguc2Nyb2xsVG9wO2QubGVmdD1NYXRoLm1heChkLmxlZnQsXG5mKTtkLnRvcD1NYXRoLm1heChkLnRvcCxoKTtlPWJkKGUuYWEuZGVmYXVsdFZpZXd8fHdpbmRvdyk7ZC5yaWdodD1NYXRoLm1pbihkLnJpZ2h0LGYrZS53aWR0aCk7ZC5ib3R0b209TWF0aC5taW4oZC5ib3R0b20saCtlLmhlaWdodCk7ZD1kLnRvcD49MCYmZC5sZWZ0Pj0wJiZkLmJvdHRvbT5kLnRvcCYmZC5yaWdodD5kLmxlZnQ/ZDpudWxsO2U9bmV3IEFjKGEub2Zmc2V0TGVmdCxhLm9mZnNldFRvcCk7YT1rZChhKTtlPW5ldyBCYyhlLnksZS54K2Eud2lkdGgsZS55K2EuaGVpZ2h0LGUueCk7YyE9bnVsbCYmKGI9LU1hdGguYWJzKGEuaGVpZ2h0KmMpKTtyZXR1cm4hIShkJiZkLmxlZnQ8PWUucmlnaHQrYiYmZS5sZWZ0PD1kLnJpZ2h0K2ImJmQudG9wPD1lLmJvdHRvbStiJiZlLnRvcDw9ZC5ib3R0b20rYil9ZnVuY3Rpb24gQmQoKXtyZXR1cm4gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzc3JhYlwiKSE9PW51bGx9O3ZhciBDZD17fTtmdW5jdGlvbiBEZChhKXt2YXIgYj17bmFtZXM6W10sZnJhbWVzOltdfSxjO2ZvcihjIGluIENkKXt2YXIgZD1FZChjLGEpO2Q9PW51bGw/ZGVsZXRlIENkW2NdOihiLm5hbWVzLnB1c2goYyksYi5mcmFtZXMucHVzaChkKSl9cmV0dXJuIGJ9RGQ9eihEZCxcImNGclwiKTtmdW5jdGlvbiBFZChhLGIpe2lmKEZkKXJldHVybiBGZChhLGIpO2lmKGE9PWIubmFtZSlyZXR1cm4gd2luZG93O3RyeXt2YXIgYz13aW5kb3cucGFyZW50LmZyYW1lc1thK1wifFwiK3dpbmRvdy5uYW1lXTtpZihjKXJldHVybiBjfWNhdGNoKGQpe310cnl7cmV0dXJuIHdpbmRvdy5wYXJlbnQuZnJhbWVzW2FdfHxudWxsfWNhdGNoKGQpe31yZXR1cm4gbnVsbH1FZD16KEVkLFwiZ0ZCTlwiKTt2YXIgRmQ9bnVsbCxHZD1EZCxIZD1FZDtmdW5jdGlvbiBJZChhLGIsYyl7Yz1jPT09dm9pZCAwP1tdOmM7dGhpcy5mcmFtZVdpZHRoPWE7dGhpcy5mcmFtZUhlaWdodD1iO3RoaXMuYmI9Y307ZnVuY3Rpb24gSmQoYSxiLGMpe3ZhciBkPSExO2EuYWRkRXZlbnRMaXN0ZW5lcihiLGMpO2EuYWRkRXZlbnRMaXN0ZW5lcihiLGZ1bmN0aW9uKCl7ZHx8KGEucmVtb3ZlRXZlbnRMaXN0ZW5lcihiLGMpLGQ9ITApfSl9O2Z1bmN0aW9uIEtkKCl7dmFyIGEsYjtyZXR1cm57cHJvbWlzZTpuZXcgUHJvbWlzZShmdW5jdGlvbihjLGQpe2E9YztiPWR9KSxyZXNvbHZlOmEscmVqZWN0OmJ9fWZ1bmN0aW9uIExkKGEsYil7dmFyIGM9S2QoKTthLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtjLnJlc29sdmUoYil9LDApO3JldHVybiBjLnByb21pc2V9ZnVuY3Rpb24gTWQoYSxiKXt2YXIgYz1LZCgpO3dpbmRvdy5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7Yy5yZXNvbHZlKGIpfSxhKTtyZXR1cm4gYy5wcm9taXNlfVxuZnVuY3Rpb24gTmQoYSl7dmFyIGI9W10sYz0wLGQ9YS5sZW5ndGg7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUsZil7aWYoZClmb3IodmFyIGc9e3dhOjB9O2cud2E8ZDtnPXt3YTpnLndhfSxnLndhKyspUHJvbWlzZS5yZXNvbHZlKGFbZy53YV0pLnRoZW4oZnVuY3Rpb24oaCl7cmV0dXJuIGZ1bmN0aW9uKGspe2JbaC53YV09aztjKz0xO2M9PT1kJiZlKGIpfX0oZykpLmNhdGNoKGZ1bmN0aW9uKGgpe2YoaCl9KTtlbHNlIGUoYil9KX07dmFyIE9kPW51bGw7ZnVuY3Rpb24gUGQoKXtpZihPZCE9bnVsbClyZXR1cm4gT2Q7dmFyIGE9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImRpdlwiKTthLnN0eWxlLndpZHRoPVwiMXB4XCI7YS5zdHlsZS5oZWlnaHQ9XCIxcHhcIjthLnN0eWxlLmJvcmRlcj1cIjFweCBzb2xpZCBibGFja1wiO2Euc3R5bGUucGFkZGluZz1cIjFweFwiO2Euc3R5bGUudmlzaWJpbGl0eT1cImhpZGRlblwiO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYSk7dmFyIGI9YS5vZmZzZXRXaWR0aDtkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGEpO3JldHVybiBPZD1iPT01fWZ1bmN0aW9uIFFkKGEpe3JldHVybiBwYXJzZUZsb2F0KGEucmVwbGFjZShcInB4XCIsXCJcIikpfHwwfVxuZnVuY3Rpb24gUmQoYSxiKXt2YXIgYz1iP2Eub2Zmc2V0SGVpZ2h0OmEub2Zmc2V0V2lkdGg7Yj1iP1tcIlRvcFwiLFwiQm90dG9tXCJdOltcIlJpZ2h0XCIsXCJMZWZ0XCJdO3ZhciBkPSExO3ZhciBlPVBkKCk/W1wibWFyZ2luXCJdOltcImJvcmRlclwiLFwibWFyZ2luXCIsXCJwYWRkaW5nXCJdO3ZhciBmPWUubGVuZ3RoLGc9Yi5sZW5ndGgsaD1kb2N1bWVudC5kZWZhdWx0VmlldztpZihoJiZoLmdldENvbXB1dGVkU3R5bGUmJihoPWguZ2V0Q29tcHV0ZWRTdHlsZShhKSkpe2Q9ITA7Zm9yKHZhciBrPTA7azxmO2srKylmb3IodmFyIGw9MDtsPGc7bCsrKWMrPVFkKGguZ2V0UHJvcGVydHlWYWx1ZShbZVtrXSxiW2xdLnRvTG93ZXJDYXNlKCldLmpvaW4oXCItXCIpKSl9aWYoIWQmJihhPWEuY3VycmVudFN0eWxlKSl7aWYoIVBkKCkpZm9yKGQ9MDtkPGc7ZCsrKWMrPVFkKGFbW1wiYm9yZGVyXCIsYltkXSxcIldpZHRoXCJdLmpvaW4oXCJcIildKTtmb3IoZD0wO2Q8ZjtkKyspaWYoZVtkXSE9XCJib3JkZXJcIilmb3IoaD0wO2g8XG5nO2grKyljKz1RZChhW1tlW2RdLGJbaF1dLmpvaW4oXCJcIildKX1yZXR1cm4gY307ZnVuY3Rpb24gU2QoYSl7aWYoVGQpcmV0dXJuIFRkKGEpO3ZhciBiPUdkKGEpO2lmKEthKCkuZGF0YS5laWVsbClVZChiKTtlbHNlIHJldHVybiBWZChiLmZyYW1lcykudGhlbihmdW5jdGlvbigpe1VkKGIpfSl9U2Q9eihTZCxcInNQSFwiKTt2YXIgVGQ9bnVsbDtmdW5jdGlvbiBXZChhKXt0cnl7cmV0dXJuIFJkKGEuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LCEwKX1jYXRjaChiKXtyZXR1cm4gbnVsbH19V2Q9eihXZCxcImdCSFwiKTtmdW5jdGlvbiBYZChhKXt0cnl7dmFyIGI9YS5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIik7cmV0dXJuIFJkKGIsITEpfWNhdGNoKGMpe3JldHVybiBudWxsfX1YZD16KFhkLFwiZ0JXXCIpO1xuZnVuY3Rpb24gWWQoYSl7dmFyIGI9W107YT11KGEuZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJpbWdcIikpO2Zvcih2YXIgYz1hLm5leHQoKTshYy5kb25lO2M9YS5uZXh0KCkpe3ZhciBkPWIsZT1kLnB1c2g7Yz1jLnZhbHVlO3ZhciBmPUtkKCk7Yy5jb21wbGV0ZT9mLnJlc29sdmUoKTooSmQoYyxcImxvYWRcIixmLnJlc29sdmUpLEpkKGMsXCJlcnJvclwiLGYucmVzb2x2ZSkpO2UuY2FsbChkLGYucHJvbWlzZSl9cmV0dXJuIE5kKGIpfVlkPXooWWQsXCJnRkhfd2ZpcFwiKTtcbmZ1bmN0aW9uIFVkKGEpe2Zvcih2YXIgYj0wO2I8YS5mcmFtZXMubGVuZ3RoO2IrKyl7dmFyIGM9YS5mcmFtZXNbYl07aWYoTGEoKSl7dmFyIGQ9Yy5kb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7ZD1uZXcgQ2MoZC5vZmZzZXRXaWR0aCxkLm9mZnNldEhlaWdodCk7Yz1aZChjKTtjPW5ldyBJZChkLndpZHRoLGQuaGVpZ2h0LGMpfWVsc2V7ZD1XZChjKTt2YXIgZT1YZChjKTskZChjLGQsZSk/Yz1uZXcgSWQoMSwxKTooYz1aZChjKSxjPW5ldyBJZChlLGQsYykpfWQ9e307Yz0oZC5mdz1jLmZyYW1lV2lkdGgsZC5maD1jLmZyYW1lSGVpZ2h0LGQuYWg9Yy5iYixkKTtzYyhhLm5hbWVzW2JdK1wiLmZzXCIsYyxwYy5qKX10YygpfWZ1bmN0aW9uIFZkKGEpe2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKFlkKGFbY10pKTtyZXR1cm4gUHJvbWlzZS5yYWNlKFtQcm9taXNlLmFsbChiKSxNZCg1MDAsXCJ0aW1lZE91dFdhaXRpbmdGb3JJbWFnZXNcIildKX1WZD16KFZkLFwiZ0ZIXCIpO1xudmFyIFpkPUIoZnVuY3Rpb24oYSl7dmFyIGI9S2EoKS5kYXRhLmVjbz9hLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCIuY2xpY2t0cmFja2VkQWRfanNcIik6YS5kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKFwiLnNpMTAxXCIpO2E9W107dmFyIGM9TGEoKTtiPXUoYik7Zm9yKHZhciBkPWIubmV4dCgpOyFkLmRvbmU7ZD1iLm5leHQoKSlkPWQudmFsdWUsZD1jPyhuZXcgQ2MoZC5vZmZzZXRXaWR0aCxkLm9mZnNldEhlaWdodCkpLmhlaWdodDpSZChkLCEwKSxhLnB1c2goZCk7cmV0dXJuIGF9LFwiZ0FISUZcIik7ZnVuY3Rpb24gJGQoYSxiLGMpe3JldHVybih0eXBlb2YgYj09XCJudW1iZXJcIiYmYjwxNnx8dHlwZW9mIGM9PVwibnVtYmVyXCImJmM8MTYpJiYoYT1hLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYWRCbG9ja1wiKSkmJmEuaW5uZXJIVE1MIT1cIlwiPyEwOiExfSRkPXooJGQsXCJpQ1NJXCIpO3ZhciBhZT1TZDt2YXIgYmU9aGEoW1wiLy9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PVwiLFwiXCJdKTtmdW5jdGlvbiBjZShhLGIpe2I9YlthXTtifHwoQS5sb2coXCJmcmFtZU9wdGlvbnMgaXMgdW5kZWZpbmVkIGZvciBcIithLFwiZkFVXCIpLGI9e30pO3JldHVybiBifWNlPXooY2UsXCJnRk9cIik7ZnVuY3Rpb24gZGUoYSl7cmV0dXJuIGZ1bmN0aW9uKGIsYyl7cmV0dXJuIHR5cGVvZiBhW2JdPT1cInVuZGVmaW5lZFwiP2N8fG51bGw6YVtiXX19ZnVuY3Rpb24gZWUoYSl7cmV0dXJuIGZ1bmN0aW9uKGIsYyl7aWYoYS5oYXNPd25Qcm9wZXJ0eShiKSl7Yj1hW2JdLnNwbGl0KFwiLFwiKTtmb3IodmFyIGQ9MDtkPGIubGVuZ3RoO2QrKylpZihiW2RdPT1jKXJldHVybiEwO3JldHVybiExfXJldHVybiEwfX1mdW5jdGlvbiBmZShhKXtyZXR1cm4oYT1hLndpZHRoKSYmYSE9XCJhdXRvXCI/YTpcIjEwMCVcIn1cbmZ1bmN0aW9uIGdlKGEpe3ZhciBiPXt2YTohMSx0ZDpudWxsLHpkOm51bGx9O2EudmVydGljYWxTcGFjaW5nJiYoYT1hLnZlcnRpY2FsU3BhY2luZy8yLGIudmE9ITAsYi50ZD1NYXRoLmZsb29yKGEpLGIuemQ9TWF0aC5jZWlsKGEpKTtyZXR1cm4gYn1mdW5jdGlvbiBoZShhKXtpZihhLmZvbnRTaXplVGl0bGUpcmV0dXJuIGEuZm9udFNpemVUaXRsZTthPVVhKCk7cmV0dXJuIGEuZGF0YS5obXx8YS5kYXRhLnQ/MTg6bnVsbH1mdW5jdGlvbiBpZShhKXt2YXIgYj1bXTtpZihhLndlYkZvbnRGYW1pbHkpe3ZhciBjPWEud2ViRm9udEZhbWlseTthLnRpdGxlQm9sZCYmKGMrPVwiOjQwMCw3MDBcIik7Yi5wdXNoKGMpfWEud2ViRm9udEZhbWlseUF0dHJpYnV0aW9uJiYoYz1hLndlYkZvbnRGYW1pbHlBdHRyaWJ1dGlvbixhLmF0dHJpYnV0aW9uQm9sZCYmKGMrPVwiOjQwMCw3MDBcIiksYi5wdXNoKGMpKTtyZXR1cm4gYi5sZW5ndGg9PTA/bnVsbDpWYyhiZSxiLmpvaW4oXCJ8XCIpKX12YXIgamU9Y2U7IVBjKFwiQW5kcm9pZFwiKXx8UmMoKTtSYygpO1BjKFwiU2FmYXJpXCIpJiYoUmMoKXx8KFFjKCk/MDpQYyhcIkNvYXN0XCIpKXx8KFFjKCk/MDpQYyhcIk9wZXJhXCIpKXx8KFFjKCk/MDpQYyhcIkVkZ2VcIikpfHwoUWMoKT9PYyhcIk1pY3Jvc29mdCBFZGdlXCIpOlBjKFwiRWRnL1wiKSl8fFFjKCkmJk9jKFwiT3BlcmFcIikpO01hdGgubWF4LmFwcGx5KE1hdGgsamEoT2JqZWN0LnZhbHVlcyh7TWc6MSxLZzoyLEpnOjQsUGc6OCxPZzoxNixOZzozMixEZzo2NCxSZzoxMjgsSWc6MjU2LEhnOjUxMixMZzoxMDI0LEZnOjIwNDgsUWc6NDA5NixHZzo4MTkyLEVnOjE2Mzg0fSkpKTt2YXIga2U9e30sbGU9e30sbWU9e30sbmU9e30sb2U9e307ZnVuY3Rpb24gcGUoKXt0aHJvdyBFcnJvcihcIkRvIG5vdCBpbnN0YW50aWF0ZSBkaXJlY3RseVwiKTt9cGUucHJvdG90eXBlLkdhPW51bGw7cGUucHJvdG90eXBlLnRvU3RyaW5nPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuY29udGVudH07cGUucHJvdG90eXBlLmhlPWZ1bmN0aW9uKCl7aWYodGhpcy5TIT09a2UpdGhyb3cgRXJyb3IoXCJTYW5pdGl6ZWQgY29udGVudCB3YXMgbm90IG9mIGtpbmQgSFRNTC5cIik7cmV0dXJuIGpiKHRoaXMudG9TdHJpbmcoKSl9O2Z1bmN0aW9uIHFlKCl7cGUuY2FsbCh0aGlzKX1CYShxZSxwZSk7cWUucHJvdG90eXBlLlM9a2U7ZnVuY3Rpb24gcmUoKXtwZS5jYWxsKHRoaXMpfUJhKHJlLHBlKTtyZS5wcm90b3R5cGUuUz1sZTtyZS5wcm90b3R5cGUuR2E9MTtmdW5jdGlvbiBzZSgpe3BlLmNhbGwodGhpcyl9QmEoc2UscGUpO3NlLnByb3RvdHlwZS5TPW5lO3NlLnByb3RvdHlwZS5HYT0xO1xuZnVuY3Rpb24gdGUoKXtwZS5jYWxsKHRoaXMpfUJhKHRlLHBlKTt0ZS5wcm90b3R5cGUuUz1vZTt0ZS5wcm90b3R5cGUuR2E9MTtmdW5jdGlvbiB1ZShhKXtpZihhIT1udWxsKXN3aXRjaChhLkdhKXtjYXNlIDE6cmV0dXJuIDE7Y2FzZSAtMTpyZXR1cm4tMTtjYXNlIDA6cmV0dXJuIDB9cmV0dXJuIG51bGx9ZnVuY3Rpb24gdmUoYSl7cmV0dXJuIHdlKGEsa2UpP2E6YSBpbnN0YW5jZW9mIGliP0Yoa2IoYSkudG9TdHJpbmcoKSk6RihTdHJpbmcoU3RyaW5nKGEpKS5yZXBsYWNlKHhlLHllKSx1ZShhKSl9ZnVuY3Rpb24gemUoYSl7ZnVuY3Rpb24gYihjKXt0aGlzLmNvbnRlbnQ9Y31iLnByb3RvdHlwZT1hLnByb3RvdHlwZTtyZXR1cm4gZnVuY3Rpb24oYyl7cmV0dXJuIG5ldyBiKFN0cmluZyhjKSl9fXZhciBGPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoYyl7dGhpcy5jb250ZW50PWN9Yi5wcm90b3R5cGU9YS5wcm90b3R5cGU7cmV0dXJuIGZ1bmN0aW9uKGMsZCl7Yz1uZXcgYihTdHJpbmcoYykpO2QhPT12b2lkIDAmJihjLkdhPWQpO3JldHVybiBjfX0ocWUpLEFlPXplKHJlKSxCZT16ZShzZSksRz16ZSh0ZSk7XG5mdW5jdGlvbiBDZShhKXt2YXIgYj1bXSxjO2ZvcihjIGluIGEpYi5wdXNoKGMpO3JldHVybiBifWZ1bmN0aW9uIEgoYSxiKXtyZXR1cm4gYSYmYiYmYS5DZiYmYi5DZj9hLlMhPT1iLlM/ITE6YS50b1N0cmluZygpPT09Yi50b1N0cmluZygpOmEgaW5zdGFuY2VvZiBwZSYmYiBpbnN0YW5jZW9mIHBlP2EuUyE9Yi5TPyExOmEudG9TdHJpbmcoKT09Yi50b1N0cmluZygpOmE9PWJ9ZnVuY3Rpb24gRGUoYSl7cmV0dXJuIGEgaW5zdGFuY2VvZiBwZT8hIWEuY29udGVudDohIWF9ZnVuY3Rpb24gRWUoYSl7cmV0dXJuIEZlKFN0cmluZyhhKSxmdW5jdGlvbigpe3JldHVyblwiXCJ9KS5yZXBsYWNlKEdlLFwiJmx0O1wiKX12YXIgSGU9UmVnRXhwLnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eShcInN0aWNreVwiKSxJZT1uZXcgUmVnRXhwKChIZT9cIlwiOlwiXlwiKStcIig/OiF8Lz8oW2EtekEtWl1bYS16QS1aMC05Oi1dKikpXCIsSGU/XCJneVwiOlwiZ1wiKTtcbmZ1bmN0aW9uIEZlKGEsYil7Zm9yKHZhciBjPVtdLGQ9YS5sZW5ndGgsZT0wLGY9W10sZyxoLGs9MDtrPGQ7KXtzd2l0Y2goZSl7Y2FzZSAwOnZhciBsPWEuaW5kZXhPZihcIjxcIixrKTtpZihsPDApe2lmKGMubGVuZ3RoPT09MClyZXR1cm4gYTtjLnB1c2goYS5zdWJzdHJpbmcoaykpO2s9ZH1lbHNlIGMucHVzaChhLnN1YnN0cmluZyhrLGwpKSxoPWwsaz1sKzEsSGU/KEllLmxhc3RJbmRleD1rLGw9SWUuZXhlYyhhKSk6KEllLmxhc3RJbmRleD0wLGw9SWUuZXhlYyhhLnN1YnN0cmluZyhrKSkpLGw/KGY9W1wiPFwiLGxbMF1dLGc9bFsxXSxlPTEsays9bFswXS5sZW5ndGgpOmMucHVzaChcIjxcIik7YnJlYWs7Y2FzZSAxOmw9YS5jaGFyQXQoaysrKTtzd2l0Y2gobCl7Y2FzZSBcIidcIjpjYXNlICdcIic6dmFyIG09YS5pbmRleE9mKGwsayk7bTwwP2s9ZDooZi5wdXNoKGwsYS5zdWJzdHJpbmcoayxtKzEpKSxrPW0rMSk7YnJlYWs7Y2FzZSBcIj5cIjpmLnB1c2gobCk7Yy5wdXNoKGIoZi5qb2luKFwiXCIpLFxuZykpO2U9MDtmPVtdO2g9Zz1udWxsO2JyZWFrO2RlZmF1bHQ6Zi5wdXNoKGwpfWJyZWFrO2RlZmF1bHQ6dGhyb3cgRXJyb3IoKTt9ZT09PTEmJms+PWQmJihrPWgrMSxjLnB1c2goXCI8XCIpLGU9MCxmPVtdLGg9Zz1udWxsKX1yZXR1cm4gYy5qb2luKFwiXCIpfWZ1bmN0aW9uIEplKGEsYil7YT1hLnJlcGxhY2UoLzxcXC8vZyxcIjxcXFxcL1wiKS5yZXBsYWNlKC9cXF1cXF0+L2csXCJdXVxcXFw+XCIpO3JldHVybiBiP2EucmVwbGFjZSgvey9nLFwiIFxcXFx7XCIpLnJlcGxhY2UoL30vZyxcIiBcXFxcfVwiKS5yZXBsYWNlKC9cXC9cXCovZyxcIi8gKlwiKS5yZXBsYWNlKC9cXFxcJC8sXCJcXFxcIFwiKTphfWZ1bmN0aW9uIEkoYSl7cmV0dXJuIHdlKGEsa2UpP1N0cmluZyhFZShhLmNvbnRlbnQpKS5yZXBsYWNlKEtlLHllKTpTdHJpbmcoYSkucmVwbGFjZSh4ZSx5ZSl9ZnVuY3Rpb24gTGUoYSl7d2UoYSxuZSk/YT1hLmNvbnRlbnQ6KGE9U3RyaW5nKGEpLGE9TWUudGVzdChhKT9hOlwielNveXpcIik7cmV0dXJuIGF9XG5mdW5jdGlvbiBOZShhKXt3ZShhLG5lKSYmKGE9YS5jb250ZW50KTtyZXR1cm4oYSYmIWEuc3RhcnRzV2l0aChcIiBcIik/XCIgXCI6XCJcIikrYX1mdW5jdGlvbiBPZShhKXt3ZShhLGxlKXx8d2UoYSxtZSk/YT1QZShhKTphIGluc3RhbmNlb2YgZWI/YT1QZShmYihhKSk6YSBpbnN0YW5jZW9mICRhP2E9UGUoZGIoYSkudG9TdHJpbmcoKSk6KGE9U3RyaW5nKGEpLGE9UWUudGVzdChhKT9hLnJlcGxhY2UoUmUsU2UpOlwiYWJvdXQ6aW52YWxpZCN6U295elwiKTtyZXR1cm4gYX1mdW5jdGlvbiBUZShhKXt3ZShhLGxlKXx8d2UoYSxtZSk/YT1QZShhKTphIGluc3RhbmNlb2YgZWI/YT1QZShmYihhKSk6YSBpbnN0YW5jZW9mICRhP2E9UGUoZGIoYSkudG9TdHJpbmcoKSk6KGE9U3RyaW5nKGEpLGE9VWUudGVzdChhKT9hLnJlcGxhY2UoUmUsU2UpOlwiYWJvdXQ6aW52YWxpZCN6U295elwiKTtyZXR1cm4gYX1cbmZ1bmN0aW9uIEooYSl7cmV0dXJuIHdlKGEsb2UpP0plKGEuY29udGVudCwhMSk6YT09bnVsbD9cIlwiOkplKFN0cmluZyhhKSwhMCl9ZnVuY3Rpb24gVmUoYSl7YT1yYihhLnNsaWNlKDApLGZ1bmN0aW9uKGIpe3JldHVyblwib2ZcIj09PWJ9KTtyZXR1cm4gYT09PS0xPy0xOmErMH1mdW5jdGlvbiB3ZShhLGIpe3JldHVybiBhIT1udWxsJiZhLlM9PT1ifXZhciBXZT17XCJcXHgwMFwiOlwiJiMwO1wiLFwiXFx0XCI6XCImIzk7XCIsXCJcXG5cIjpcIiYjMTA7XCIsXCJcXHZcIjpcIiYjMTE7XCIsXCJcXGZcIjpcIiYjMTI7XCIsXCJcXHJcIjpcIiYjMTM7XCIsXCIgXCI6XCImIzMyO1wiLCdcIic6XCImcXVvdDtcIixcIiZcIjpcIiZhbXA7XCIsXCInXCI6XCImIzM5O1wiLFwiLVwiOlwiJiM0NTtcIixcIi9cIjpcIiYjNDc7XCIsXCI8XCI6XCImbHQ7XCIsXCI9XCI6XCImIzYxO1wiLFwiPlwiOlwiJmd0O1wiLFwiYFwiOlwiJiM5NjtcIixcIlxcdTAwODVcIjpcIiYjMTMzO1wiLFwiXFx1MDBhMFwiOlwiJiMxNjA7XCIsXCJcXHUyMDI4XCI6XCImIzgyMzI7XCIsXCJcXHUyMDI5XCI6XCImIzgyMzM7XCJ9O1xuZnVuY3Rpb24geWUoYSl7cmV0dXJuIFdlW2FdfXZhciBYZT17XCJcXHgwMFwiOlwiXFxcXDAgXCIsXCJcXGJcIjpcIlxcXFw4IFwiLFwiXFx0XCI6XCJcXFxcOSBcIixcIlxcblwiOlwiXFxcXGEgXCIsXCJcXHZcIjpcIlxcXFxiIFwiLFwiXFxmXCI6XCJcXFxcYyBcIixcIlxcclwiOlwiXFxcXGQgXCIsJ1wiJzpcIlxcXFwyMiBcIixcIiZcIjpcIlxcXFwyNiBcIixcIidcIjpcIlxcXFwyNyBcIixcIihcIjpcIlxcXFwyOCBcIixcIilcIjpcIlxcXFwyOSBcIixcIipcIjpcIlxcXFwyYSBcIixcIi9cIjpcIlxcXFwyZiBcIixcIjpcIjpcIlxcXFwzYSBcIixcIjtcIjpcIlxcXFwzYiBcIixcIjxcIjpcIlxcXFwzYyBcIixcIj1cIjpcIlxcXFwzZCBcIixcIj5cIjpcIlxcXFwzZSBcIixcIkBcIjpcIlxcXFw0MCBcIixcIlxcXFxcIjpcIlxcXFw1YyBcIixcIntcIjpcIlxcXFw3YiBcIixcIn1cIjpcIlxcXFw3ZCBcIixcIlxcdTAwODVcIjpcIlxcXFw4NSBcIixcIlxcdTAwYTBcIjpcIlxcXFxhMCBcIixcIlxcdTIwMjhcIjpcIlxcXFwyMDI4IFwiLFwiXFx1MjAyOVwiOlwiXFxcXDIwMjkgXCJ9O2Z1bmN0aW9uIFllKGEpe3JldHVybiBYZVthXX1cbnZhciBaZT17XCJcXHgwMFwiOlwiJTAwXCIsXCJcXHUwMDAxXCI6XCIlMDFcIixcIlxcdTAwMDJcIjpcIiUwMlwiLFwiXFx1MDAwM1wiOlwiJTAzXCIsXCJcXHUwMDA0XCI6XCIlMDRcIixcIlxcdTAwMDVcIjpcIiUwNVwiLFwiXFx1MDAwNlwiOlwiJTA2XCIsXCJcXHUwMDA3XCI6XCIlMDdcIixcIlxcYlwiOlwiJTA4XCIsXCJcXHRcIjpcIiUwOVwiLFwiXFxuXCI6XCIlMEFcIixcIlxcdlwiOlwiJTBCXCIsXCJcXGZcIjpcIiUwQ1wiLFwiXFxyXCI6XCIlMERcIixcIlxcdTAwMGVcIjpcIiUwRVwiLFwiXFx1MDAwZlwiOlwiJTBGXCIsXCJcXHUwMDEwXCI6XCIlMTBcIixcIlxcdTAwMTFcIjpcIiUxMVwiLFwiXFx1MDAxMlwiOlwiJTEyXCIsXCJcXHUwMDEzXCI6XCIlMTNcIixcIlxcdTAwMTRcIjpcIiUxNFwiLFwiXFx1MDAxNVwiOlwiJTE1XCIsXCJcXHUwMDE2XCI6XCIlMTZcIixcIlxcdTAwMTdcIjpcIiUxN1wiLFwiXFx1MDAxOFwiOlwiJTE4XCIsXCJcXHUwMDE5XCI6XCIlMTlcIixcIlxcdTAwMWFcIjpcIiUxQVwiLFwiXFx1MDAxYlwiOlwiJTFCXCIsXCJcXHUwMDFjXCI6XCIlMUNcIixcIlxcdTAwMWRcIjpcIiUxRFwiLFwiXFx1MDAxZVwiOlwiJTFFXCIsXCJcXHUwMDFmXCI6XCIlMUZcIixcIiBcIjpcIiUyMFwiLCdcIic6XCIlMjJcIixcIidcIjpcIiUyN1wiLFwiKFwiOlwiJTI4XCIsXG5cIilcIjpcIiUyOVwiLFwiPFwiOlwiJTNDXCIsXCI+XCI6XCIlM0VcIixcIlxcXFxcIjpcIiU1Q1wiLFwie1wiOlwiJTdCXCIsXCJ9XCI6XCIlN0RcIixcIlxcdTAwN2ZcIjpcIiU3RlwiLFwiXFx1MDA4NVwiOlwiJUMyJTg1XCIsXCJcXHUwMGEwXCI6XCIlQzIlQTBcIixcIlxcdTIwMjhcIjpcIiVFMiU4MCVBOFwiLFwiXFx1MjAyOVwiOlwiJUUyJTgwJUE5XCIsXCJcXHVmZjAxXCI6XCIlRUYlQkMlODFcIixcIlxcdWZmMDNcIjpcIiVFRiVCQyU4M1wiLFwiXFx1ZmYwNFwiOlwiJUVGJUJDJTg0XCIsXCJcXHVmZjA2XCI6XCIlRUYlQkMlODZcIixcIlxcdWZmMDdcIjpcIiVFRiVCQyU4N1wiLFwiXFx1ZmYwOFwiOlwiJUVGJUJDJTg4XCIsXCJcXHVmZjA5XCI6XCIlRUYlQkMlODlcIixcIlxcdWZmMGFcIjpcIiVFRiVCQyU4QVwiLFwiXFx1ZmYwYlwiOlwiJUVGJUJDJThCXCIsXCJcXHVmZjBjXCI6XCIlRUYlQkMlOENcIixcIlxcdWZmMGZcIjpcIiVFRiVCQyU4RlwiLFwiXFx1ZmYxYVwiOlwiJUVGJUJDJTlBXCIsXCJcXHVmZjFiXCI6XCIlRUYlQkMlOUJcIixcIlxcdWZmMWRcIjpcIiVFRiVCQyU5RFwiLFwiXFx1ZmYxZlwiOlwiJUVGJUJDJTlGXCIsXCJcXHVmZjIwXCI6XCIlRUYlQkMlQTBcIixcIlxcdWZmM2JcIjpcIiVFRiVCQyVCQlwiLFxuXCJcXHVmZjNkXCI6XCIlRUYlQkMlQkRcIn07ZnVuY3Rpb24gU2UoYSl7cmV0dXJuIFplW2FdfVxudmFyIHhlPS9bXFx4MDBcXHgyMlxceDI2XFx4MjdcXHgzY1xceDNlXS9nLEtlPS9bXFx4MDBcXHgyMlxceDI3XFx4M2NcXHgzZV0vZywkZT0vW1xceDAwXFx4MDgtXFx4MGRcXHgyMlxceDI2LVxceDJhXFwvXFx4M2EtXFx4M2VAXFxcXFxceDdiXFx4N2RcXHg4NVxceGEwXFx1MjAyOFxcdTIwMjldL2csUmU9L1tcXHgwMC0gXFx4MjJcXHgyNy1cXHgyOVxceDNjXFx4M2VcXFxcXFx4N2JcXHg3ZFxceDdmXFx4ODVcXHhhMFxcdTIwMjhcXHUyMDI5XFx1ZmYwMVxcdWZmMDNcXHVmZjA0XFx1ZmYwNi1cXHVmZjBjXFx1ZmYwZlxcdWZmMWFcXHVmZjFiXFx1ZmYxZFxcdWZmMWZcXHVmZjIwXFx1ZmYzYlxcdWZmM2RdL2csUWU9L14oPyFqYXZhc2NyaXB0OikoPzpbYS16MC05Ky4tXSs6fFteJjpcXC8/I10qKD86W1xcLz8jXXwkKSkvaSxVZT0vXlteJjpcXC8/I10qKD86W1xcLz8jXXwkKXxeaHR0cHM/OnxeZnRwOnxeZGF0YTppbWFnZVxcL1thLXowLTkrLV0rO2Jhc2U2NCxbYS16MC05K1xcL10rPSokfF5ibG9iOi9pLE1lPS9eKD8hb258c3JjfCg/OmFjdGlvbnxhcmNoaXZlfGJhY2tncm91bmR8Y2l0ZXxjbGFzc2lkfGNvZGViYXNlfGNvbnRlbnR8ZGF0YXxkc3luY3xocmVmfGh0dHAtZXF1aXZ8bG9uZ2Rlc2N8c3R5bGV8dXNlbWFwKVxccyokKSg/OlthLXowLTlfJDotXSopJC9pO1xuZnVuY3Rpb24gUGUoYSl7cmV0dXJuIFN0cmluZyhhKS5yZXBsYWNlKFJlLFNlKX12YXIgR2U9LzwvZzsvKlxuIENvcHlyaWdodCBUaGUgQ2xvc3VyZSBMaWJyYXJ5IEF1dGhvcnMuXG4gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiovXG5mdW5jdGlvbiBhZihhLGIpe2I9Ynx8WWMoKTtpZihhJiZhLmNkKWI9YS5jZCgpO2Vsc2V7Yj1iLmNyZWF0ZUVsZW1lbnQoXCJESVZcIik7YTppZihBYShhKSl7aWYoYS5oZSYmKGE9YS5oZSgpLGEgaW5zdGFuY2VvZiBpYikpYnJlYWsgYTthPVVjKFwielNveXpcIil9ZWxzZSBhPVVjKFN0cmluZyhhKSk7Yi5pbm5lckhUTUw9a2IoYSl9cmV0dXJuIGIuY2hpbGROb2Rlcy5sZW5ndGg9PTEmJihhPWIuZmlyc3RDaGlsZCxhLm5vZGVUeXBlPT0xKT9hOmJ9dmFyIGJmPXt9O2Z1bmN0aW9uIGNmKGEpe3ZhciBiPWEuYmEsYz1hLkFmLGQ9YS5GZixlPWEuR2UsZj1hLnZnLGc9YS50ZSxoPWEuVmUsaz1hLldlLGw9YS5QZSxtPWEuUWUscD1hLk9lLHI9YS5mb250RmFtaWx5LHQ9YS5rZix2PWEucGYsdz1hLmxmLEM9YS5xZyxSPWEucmcsUD1hLlpmLFU9YS5hZyx2YT1hLllmLGFiPWEuY2csUWE9YS5YZixXPWEuS2YsWD1hLnJlLE1jPWEuQ2UsU2I9YS5EZSxUYj1hLkVlLE5jPWEuQmUsSz1hLkpmLGJiPWEueGcsWT1hLnlnLGJhPWEuemUsd2E9YS56Zix3Zz1hLkxlO2E9YS5LZTt2YXIgS2k9Zi52YT9cInBhZGRpbmctdG9wOlwiK0ooZi50ZCkrXCJweDsgcGFkZGluZy1ib3R0b206XCIrSihmLnpkKStcInB4O1wiOmN8fGQ/XCJwYWRkaW5nOjdweCAwO1wiOlwiXCI7dz13P0oodyk6ZD9cIjE1XCI6XCIxM1wiO2Y9XCI8c3R5bGU+I3Jlc3BvbnNlX2RlYnVnX291dHB1dHttYXgtaGVpZ2h0OjUwMHB4OyBvdmVyZmxvdzphdXRvO31ib2R5e1wiKyhjP1wiLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCU7XCI6XG5cIlwiKStcImNvbG9yOlwiKyhoP0ooaCk6XCIjMDAwXCIpK1wiOyBmb250LWZhbWlseTpcIisoYmI/XCInXCIrU3RyaW5nKGJiKS5yZXBsYWNlKCRlLFllKStcIicsXCI6XCJcIikrKERlKHIpP0oocik6XCJhcmlhbFwiKStcIiwgc2Fucy1zZXJpZjsgZm9udC1zaXplOlwiKyhjfHxkP1wiMTRcIjpcIjEyXCIpK1wicHg7IHdpZHRoOlwiK0ooZSkrXCI7IHBhZGRpbmc6MHB4OyBtYXJnaW46MHB4O1wiKyhtJiYoU2J8fFgpP1wicGFkZGluZy1yaWdodDoycHg7XCI6XCJcIikrKHdhJiZiP1wiZGlyZWN0aW9uOnJ0bDtcIjpcIlwiKStcIn1ib2R5ey13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjpyZ2JhKDAsMCwwLDApOyAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6dHJhbnNwYXJlbnQ7fWF7LXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOmluaXRpYWw7fS5hZHtwYWRkaW5nOjJweCAwOyBtYXJnaW46MHB4OyB3b3JkLXdyYXA6YnJlYWstd29yZDtcIitLaSsoZz9cImJvcmRlci1ib3R0b206MXB4IHNvbGlkIFwiK0ooZykrXCI7XCI6XCJcIikrXCJ9XCIrKFFhJiZcbiF3YT9cIi5cIitKKFwiYV9cIikrXCI6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjpcIitKKFFhKStcIjt9XCI6XCJcIikrXCIuYWQuZntcIisoZi52YT9cInBhZGRpbmctdG9wOjJweDtcIjpcIlwiKStcIn0uYWQuZnJ7XCIrKGYudmE/XCJwYWRkaW5nLXRvcDoycHg7XCI6XCJcIikrXCJ9LmFkLmx7XCIrKGYudmE/XCJwYWRkaW5nLWJvdHRvbToycHg7XCI6XCJcIikrKGc/XCJib3JkZXItYm90dG9tOjBweDtcIjpcIlwiKStcIn0uYWQubHJ7XCIrKGYudmE/XCJwYWRkaW5nLWJvdHRvbToycHg7XCI6XCJcIikrXCJ9I2FkQmxvY2sgYntcIisoYXx8d2E/XCJcIjpcImZvbnQtd2VpZ2h0Om5vcm1hbDtcIikrXCJ9LmFkIHNwYW57X3dpZHRoOjk5JTt9I2FkQmxvY2t7YmFja2dyb3VuZDojRkZGIG5vbmUgcmVwZWF0IHNjcm9sbCAwIDA7IG1hcmdpbjowOyBwYWRkaW5nOjA7XCIrKGw/XCJiYWNrZ3JvdW5kLWNvbG9yOlwiK0oobCkrXCI7XCI6XCJcIikrKG0mJk1jP1wiYm9yZGVyLWxlZnQ6MXB4IHNvbGlkIFwiK0oobSkrXCI7XCI6XCJcIikrKG0mJlNiP1wiYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCBcIitcbkoobSkrXCI7XCI6XCJcIikrKG0mJlRiP1wiYm9yZGVyLXRvcDoxcHggc29saWQgXCIrSihtKStcIjtcIjpcIlwiKSsobSYmTmM/XCJib3JkZXItYm90dG9tOjFweCBzb2xpZCBcIitKKG0pK1wiO1wiOlwiXCIpK1wifSNhZEJsb2NrIGgye2ZvbnQtc2l6ZTpcIit3K1wicHg7IGZvbnQtd2VpZ2h0Om5vcm1hbDtcIisoYmE/XCJwYWRkaW5nLWJvdHRvbTpcIitKKGJhKStcInB4O1wiOlwicGFkZGluZzowO1wiKStcIm1hcmdpbjowO1wiKyhEZSh0KXx8WT9cImZvbnQtZmFtaWx5OlwiKyhZP1wiJ1wiK1N0cmluZyhZKS5yZXBsYWNlKCRlLFllKStcIicsXCI6XCJcIikrKERlKHQpP0oodCkrXCIsXCI6XCJcIikrXCIgc2Fucy1zZXJpZjtcIjpcIlwiKStcIn0jYWRCbG9jayBzcGFuLmxoSGVhZGVye21hcmdpbjozcHggNHB4IDA7fSNhZEJsb2NrIGgyIGEsICNhZEJsb2NrIGgye2NvbG9yOlwiKyhwP0oocCk6XCIjNjc2NzY3XCIpK1wiOyB0ZXh0LWRlY29yYXRpb246bm9uZTt9LlwiK0ooXCJjX1wiKStcIntjb2xvcjpcIitKKGspK1wiO30uXCIrSihcImNfXCIpK1wie1wiKyh2P1wiZm9udC1zaXplOlwiK1xuSih2KStcInB4O1wiOlwiXCIpK1wiZm9udC13ZWlnaHQ6XCIrKEM/XCJib2xkXCI6XCJub3JtYWxcIikrXCI7fS5cIitKKFwiY19cIikrXCJ7XCIrKFI/XCJkaXNwbGF5OmlubGluZS1ibG9jaztcIjpcIlwiKStcImxpbmUtaGVpZ2h0OlwiKyhLP0ooSykrXCJweFwiOlwiMS40ZW1cIikrXCI7XCIrKFc/XCJ0ZXh0LWRlY29yYXRpb246bm9uZTtcIjpcIlwiKStcIm1hcmdpbjowOyBwYWRkaW5nOjA7fVwiKyhhYj9cIi5cIitKKFwiY19cIikrXCI6aG92ZXIge3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7fWF7dGV4dC1kZWNvcmF0aW9uOm5vbmU7fVwiOlwiXCIpK1wiaDIgYTpob3Zlcntjb2xvcjpcIisocD9KKHApOlwiIzY3Njc2N1wiKStcIjsgdGV4dC1kZWNvcmF0aW9uOm5vbmU7IGZvbnQtd2VpZ2h0Om5vcm1hbDsgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDt9YTpob3ZlcntcIisoUD9cImZvbnQtd2VpZ2h0OmJvbGQ7XCI6XCJcIikrKFU/XCJjb2xvcjpcIitKKFUpK1wiO1wiOlwiXCIpKyh2YT9cImJhY2tncm91bmQtY29sb3I6XCIrSih2YSkrXCI7XCI6XCJcIikrXCJ9XCI7ZT1iP1wicmlnaHRcIjpcblwibGVmdFwiO2YrPXdnP1wiLmFkSWNvbnt2aXNpYmlsaXR5OnZpc2libGU7IGJvcmRlcjpub25lOyBmbG9hdDpcIitKKGUpK1wiO30uYWRELCAuXCIrSihcImFfXCIpK1wie2Rpc3BsYXk6YmxvY2s7IG92ZXJmbG93OmhpZGRlbjt9XCI6XCJcIjtiPWM/XCIuYWREe2NsZWFyOlwiK0ooYj9cImxlZnRcIjpcInJpZ2h0XCIpK1wiO31cIjpcIlwiO2M9Y3x8ZD9HKFwiYm9keXtmb250LWZhbWlseTpcIisoYmI/XCInXCIrU3RyaW5nKGJiKS5yZXBsYWNlKCRlLFllKStcIicsXCI6XCJcIikrKERlKHIpP0oocikrXCIsXCI6XCJcIikrJ1wiUm9ib3RvXCIsXCJIZWx2ZXRpY2EgTmV1ZVwiLGFyaWFsLHNhbnMtc2VyaWY7fS5hZHttYXJnaW46MDsgcGFkZGluZzowO30uJytKKFwiY19cIikrXCJ7bGluZS1oZWlnaHQ6XCIrKEs/SihLKTpcIjIwXCIpK1wicHg7IG1hcmdpbjowO310ZHtwYWRkaW5nOjBweDt9LmFkU3Rke2NsZWFyOm5vbmU7fVwiKyh3Zz9cIi5hZEljb257bWFyZ2luLVwiK0ooZSkrXCI6MHB4O31cIjpcIlwiKStcIi5hZFN0ZHtjbGVhcjpub25lO31cIik6XCJcIjtyZXR1cm4gRihmK1xuKGIrYytcIjwvc3R5bGU+XCIpKX07ZnVuY3Rpb24gZGYoYSl7dmFyIGI9YS5iYSxjPWEudHlwZSxkPWEud2YsZT1hLnZmLGY9YS5SZSxnPWEuU2UsaD1hLlVlLGs9YS5DZyxsPWEuQWcsbT1hLm5mLHA9YS5tZixyPWEudWYsdD1hLnRmLHY9YS5UZSx3PWEuQmcsQz1hLlFmLFI9YS55ZSxQPWEuemcsVT1hLkFlLHZhPWEuc2c7YT1hLnNlO3JldHVybiBGKFwiPHN0eWxlPlwiKyhEZShQKT9cIkBpbXBvcnQgdXJsKFwiKyh3ZShQLG1lKT9QLmNvbnRlbnQ6UCBpbnN0YW5jZW9mICRhP2RiKFApLnRvU3RyaW5nKCk6XCJhYm91dDppbnZhbGlkI3pTb3l6XCIpK1wiKTtcIjpcIlwiKSsoUj9cIiNhZEJsb2NrIGgyLCBoMiBhOmhvdmVye2ZvbnQtd2VpZ2h0OmJvbGQ7fVwiOlwiXCIpKyhVP1wiI2FkQmxvY2sgaDJ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO31cIjpcIlwiKSsodmE/XCIuXCIrSihcImNfXCIpK1wie3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt9XCI6XCJcIikrKGE/XCIuXCIrSihcImFfXCIpK1wie2JvcmRlci13aWR0aDpcIitKKGEpK1wicHg7fVwiOlwiXCIpKyhjPT1cInNlYXJjaGJveFwiP1xuXCIuc2Jpe1wiKyhrP1wid2lkdGg6XCIrSihrKStcInB4O1wiOlwid2lkdGg6MTAwJTtcIikrKG0/XCJmb250LXNpemU6XCIrSihtKStcInB4O1wiOlwiZm9udC1zaXplOjE2cHg7XCIpKyhkP1wiYm9yZGVyOjAgbm9uZTtcIjpcIlwiKSsoZj9cImJhY2tncm91bmQtY29sb3I6XCIrSihmKStcIjtcIjpcIlwiKSsocj9cImhlaWdodDpcIitKKHIpK1wicHg7XCI6XCJcIikrKEM/XCJib3JkZXItcmFkaXVzOlwiK0ooQykrXCJweDtcIjpcIlwiKStcIn1cIisoaz9cIlwiOlwiLnNiaS10ZHt3aWR0aDoxMDAlO31cIikrXCIuc2Jie2N1cnNvcjpwb2ludGVyO1wiKyhwP1wiZm9udC1zaXplOlwiK0oocCkrXCJweDtcIjpcImZvbnQtc2l6ZToxNnB4O1wiKStcIm1hcmdpbi1cIisoYj9cInJpZ2h0XCI6XCJsZWZ0XCIpK1wiOjE1cHg7XCIrKGU/XCJib3JkZXI6MCBub25lO1wiOih2P1wiYm9yZGVyLWNvbG9yOlwiK0oodikrXCI7XCI6XCJcIikrKHc/XCJib3JkZXItd2lkdGg6XCIrSih3KStcInB4O1wiOlwiXCIpKyhDP1wiYm9yZGVyLXJhZGl1czpcIitKKEMpK1wicHg7XCI6XCJcIikpKyhnP1wiYmFja2dyb3VuZDpcIitKKGcpK1wiO1wiOlxuXCJcIikrKGg/XCJjb2xvcjpcIitKKGgpK1wiO1wiKyhoPT1cInRyYW5zcGFyZW50XCI/XCJmaWx0ZXI6YWxwaGEob3BhY2l0eT0wKTtcIjpcIlwiKTpcIlwiKSsobD9cIndpZHRoOlwiK0oobCkrXCJweDtcIjpcIlwiKSsodD9cImhlaWdodDpcIitKKHQpK1wicHg7XCI6XCJcIikrXCJ9XCI6XCJcIikrXCI8L3N0eWxlPlwiKX07dmFyIGVmPS0xO2Z1bmN0aW9uIGZmKGEpe3JldHVybiBhP2E6VWEoKS5kYXRhLmhtfHxVYSgpLmRhdGEudD9cIiNiZGJkYmRcIjpudWxsfVxuZnVuY3Rpb24gZ2YoYSxiLGMpe2Z1bmN0aW9uIGQocCl7cmV0dXJuKHA9ZShwKSk/RyhwKTp2b2lkIDB9dmFyIGU9ZGUoYiksZj1lZShiKSxnPWUoXCJ0eXBlXCIpfHxcImFkc1wiLGg9UmEoKSxrPVVhKCksbD1cIiMwMDAwQ0NcIjtpZihrLmRhdGEuaG18fGsuZGF0YS50KWw9XCIjMWEwZGFiXCI7bD1lKFwiY29sb3JUaXRsZUxpbmtcIixsKTtmPXtiYTpOYSgpLmJhKCksR2U6ZmUoYiksdmc6Z2UoYiksdGU6ZmYoZShcImNvbG9yQWRTZXBhcmF0b3JcIikpLFhnOjIwLFZlOmUoXCJjb2xvclRleHRcIiksV2U6bCxQZTplKFwiY29sb3JCYWNrZ3JvdW5kXCIpLFFlOmUoXCJjb2xvckJvcmRlclwiKSxPZTplKFwiY29sb3JBdHRyaWJ1dGlvblwiKSxmb250RmFtaWx5OmQoXCJmb250RmFtaWx5XCIpLGtmOmQoXCJmb250RmFtaWx5QXR0cmlidXRpb25cIikscGY6aGUoYil8fGUoXCJmb250U2l6ZVRpdGxlXCIpLGxmOmUoXCJmb250U2l6ZUF0dHJpYnV0aW9uXCIpLHFnOmUoXCJ0aXRsZUJvbGRcIikscmc6IWsuZGF0YS5obSxaZjplKFwicm9sbG92ZXJMaW5rQm9sZFwiKSxcbmFnOmUoXCJyb2xsb3ZlckxpbmtDb2xvclwiKSxZZjplKFwicm9sbG92ZXJMaW5rQmFja2dyb3VuZENvbG9yXCIpLGNnOmUoXCJyb2xsb3ZlckxpbmtVbmRlcmxpbmVcIiksWGY6ZShcInJvbGxvdmVyQWRCYWNrZ3JvdW5kQ29sb3JcIiksS2Y6ZShcIm5vVGl0bGVVbmRlcmxpbmVcIiksVGc6ZihcImFkQm9yZGVyU2VsZWN0aW9uc1wiLFwibGVmdFwiKSxyZTpmKFwiYWRCb3JkZXJTZWxlY3Rpb25zXCIsXCJyaWdodFwiKSxVZzpmKFwiYWRCb3JkZXJTZWxlY3Rpb25zXCIsXCJ0b3BcIiksU2c6ZihcImFkQm9yZGVyU2VsZWN0aW9uc1wiLFwiYm90dG9tXCIpLENlOmYoXCJib3JkZXJTZWxlY3Rpb25zXCIsXCJsZWZ0XCIpLERlOmYoXCJib3JkZXJTZWxlY3Rpb25zXCIsXCJyaWdodFwiKSxFZTpmKFwiYm9yZGVyU2VsZWN0aW9uc1wiLFwidG9wXCIpLEJlOmYoXCJib3JkZXJTZWxlY3Rpb25zXCIsXCJib3R0b21cIiksSmY6ZShcImxpbmVIZWlnaHRUaXRsZVwiKSx6ZTplKFwiYXR0cmlidXRpb25TcGFjaW5nQmVsb3dcIiksemY6ITAsQWY6ISFrLmRhdGEuaG0sRmY6ISFrLmRhdGEudCxcbkxlOiEhaC5kYXRhLmN1Y2FpLEtlOiEhaC5kYXRhLmNnYWJ9O2YueGc9ZShcIndlYkZvbnRGYW1pbHlcIik7Zi55Zz1lKFwid2ViRm9udEZhbWlseUF0dHJpYnV0aW9uXCIpO2Y9Y2YoZik7aGYoZixhKTtiPWllKGIpO2c9e2JhOk5hKCkuYmEoKSx0eXBlOmcsd2Y6ZShcImhpZGVTZWFyY2hJbnB1dEJvcmRlclwiKSx2ZjplKFwiaGlkZVNlYXJjaEJ1dHRvbkJvcmRlclwiKSxSZTplKFwiY29sb3JTZWFyY2hCb3hcIiksU2U6ZShcImNvbG9yU2VhcmNoQnV0dG9uXCIpLFVlOmUoXCJjb2xvclNlYXJjaEJ1dHRvblRleHRcIiksQ2c6ZShcIndpZHRoU2VhcmNoSW5wdXRcIiksQWc6ZShcIndpZHRoU2VhcmNoQnV0dG9uXCIpLG5mOmUoXCJmb250U2l6ZVNlYXJjaElucHV0XCIpLG1mOmUoXCJmb250U2l6ZVNlYXJjaEJ1dHRvblwiKSx1ZjplKFwiaGVpZ2h0U2VhcmNoSW5wdXRcIiksdGY6ZShcImhlaWdodFNlYXJjaEJ1dHRvblwiKSxUZTplKFwiY29sb3JTZWFyY2hCdXR0b25Cb3JkZXJcIiksQmc6ZShcIndpZHRoU2VhcmNoQnV0dG9uQm9yZGVyXCIpLFxuUWY6ZShcInJhZGl1c1NlYXJjaElucHV0Qm9yZGVyXCIpLHllOmUoXCJhdHRyaWJ1dGlvbkJvbGRcIiksQWU6ZShcImF0dHJpYnV0aW9uVXBwZXJjYXNlXCIpLHNnOmUoXCJ0aXRsZVVwcGVyY2FzZVwiKSx6ZzpiLHNlOmUoXCJhZEJvcmRlcldpZHRoXCIpfTtpZihiJiZlZj09LTEpe2VmPTU7dmFyIG09ZnVuY3Rpb24oKXtlZj4wJiYoYWUoYyksZWYtLSxzZXRUaW1lb3V0KG0sMUUzKSl9O20oKX1nPWRmKGcpO2hmKGcsYSl9ZnVuY3Rpb24gaGYoYSxiKXtiLmFwcGVuZENoaWxkKGFmKGEpKX07ZnVuY3Rpb24gamYoKXt0aGlzLnJiPXRoaXMucmI7dGhpcy5NYj10aGlzLk1ifWpmLnByb3RvdHlwZS5yYj0hMTtqZi5wcm90b3R5cGUuZGlzcG9zZT1mdW5jdGlvbigpe3RoaXMucmJ8fCh0aGlzLnJiPSEwLHRoaXMuVCgpKX07amYucHJvdG90eXBlW1N5bWJvbC5kaXNwb3NlXT1mdW5jdGlvbigpe3RoaXMuZGlzcG9zZSgpfTtqZi5wcm90b3R5cGUuVD1mdW5jdGlvbigpe2lmKHRoaXMuTWIpZm9yKDt0aGlzLk1iLmxlbmd0aDspdGhpcy5NYi5zaGlmdCgpKCl9O2Z1bmN0aW9uIGtmKGEsYil7YS5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIixmdW5jdGlvbihjKXtjLmJ1dHRvbiE9PTImJmIoYyl9KX07ZnVuY3Rpb24gbGYoYSl7dmFyIGI9d2luZG93LmxvY2F0aW9uLnByb3RvY29sPT1cImh0dHBzXCI7YT1hLmNsaWNrdHJhY2tVcmw7cmV0dXJuIFJhKCkuZGF0YS5jdCYmemEoYSk/cWIoYSxmdW5jdGlvbihjKXtyZXR1cm4hKGMuaW5kZXhPZihcImh0dHA6XCIpPT0wJiZiKX0pOltdfVxuZnVuY3Rpb24gbWYoYSxiKXthPWEuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJhXCIpO2Zvcih2YXIgYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD1hW2NdOyhkLmhhc0F0dHJpYnV0ZT9kLmhhc0F0dHJpYnV0ZShcImRhdGEtbm90cmFja1wiKTpkLmdldEF0dHJpYnV0ZShcImRhdGEtbm90cmFja1wiKSl8fGtmKGQsZnVuY3Rpb24oKXtmb3IodmFyIGU9W10sZj11KGIpLGc9Zi5uZXh0KCk7IWcuZG9uZTtnPWYubmV4dCgpKWc9bmV3IEhiKGcudmFsdWUpLHkoZyxcIm5jXCIsW01hdGgucm91bmQoTWF0aC5yYW5kb20oKSo5RTYpLChuZXcgRGF0ZSkuZ2V0VGltZSgpXS5qb2luKFwiXCIpKSxlLnB1c2goSWIoZykpO2lmKHdpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbilmb3IoZT11KGUpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKXdpbmRvdy5uYXZpZ2F0b3Iuc2VuZEJlYWNvbihmLnZhbHVlKTtlbHNlIGZvcihlPXUoZSksZj1lLm5leHQoKTshZi5kb25lO2Y9ZS5uZXh0KCkpd2IoZi52YWx1ZSl9KX19XG5mdW5jdGlvbiBuZihhLGIsYyl7aWYoUmEoKS5kYXRhLmN0JiYoYT1sZihhKSxhLmxlbmd0aD4wKSlpZihSYSgpLmRhdGEuYWxjdCl7Yz13ZChcImJsb2NrXCIsXCJcIitjLGEpO3ZhciBkPUJkKCk/XCJjbGlja3RyYWNrZWRBZF9qc1wiOlwiYl9cIjthPXNiKGFkKFwiZGl2XCIsZCxiKSk7YT1hLmNvbmNhdChzYihhZChcInRyXCIsZCxiKSkpO2E9YS5jb25jYXQoc2IoYWQoXCJsaVwiLGQsYikpKTt2YXIgZTtmb3IoYj0wO2U9YVtiXTtiKyspZD1jLGQ9d2QoXCJhZFwiLFwiXCIrKGIrMSksZCksbWYoZSxkKX1lbHNlIG1mKGIsYSl9O3ZhciBvZj1CKGZ1bmN0aW9uKGEsYil7dmFyIGM9YS5yZXN1bHRzUGFnZUJhc2VVcmwsZD1hLnJlc3VsdHNQYWdlUXVlcnlQYXJhbSxlPWJbMF0mJmJbMF0uYWR0eXBlO2I9dShiKTtmb3IodmFyIGY9Yi5uZXh0KCk7IWYuZG9uZTtmPWIubmV4dCgpKXtmPWYudmFsdWU7ZSYmKGY9ZltlXSk7dmFyIGc9Zi5zdCxoPWYuYWZkdDtpZihnIT1udWxsJiZoIT1udWxsKXtpZighYyl0aHJvdyBZYihcInJlc3VsdHNQYWdlQmFzZVVybCBuZWVkcyB0byBiZSBzZXQuXCIpO3ZhciBrPW5ldyBIYihjKTt5KGssZCxnKTt5KGssXCJhZmRUb2tlblwiLGgpO2EucGVyc29uYWxpemVkQWRzIT1udWxsJiZ5KGssXCJwY3NhXCIsXCJcIithLnBlcnNvbmFsaXplZEFkcyk7Zi5sPUliKGspO2YudT1JYihrKX19fSxcImZSU0NMXCIpO2Z1bmN0aW9uIHBmKCl7dmFyIGE9YXx8e307cmV0dXJuIEYoXCI8c3R5bGVcIisoYS5aZz8nIGRhdGEtcGVybWFuZW50PVwidHJ1ZVwiJzpcIlwiKStcIj5ib2R5ey13ZWJraXQtdGV4dC1zaXplLWFkanVzdDoxMDAlOyBmb250LWZhbWlseTphcmlhbCxzYW5zLXNlcmlmOyBtYXJnaW46MDt9ZGl2e1wiK3FmKDApK1wibWF4LXdpZHRoOjEwMCU7fXNwYW46bGFzdC1jaGlsZCwgZGl2Omxhc3QtY2hpbGR7XCIrcWYoMSkrXCJ9LlwiK0ooXCJ3X1wiKStcIntcIitxZigxKStcIn0uXCIrSihcImpfXCIpK1wiPnNwYW46bGFzdC1jaGlsZCwgLlwiK0ooXCJqX1wiKStcIj5kaXY6bGFzdC1jaGlsZCwgLlwiK0ooXCJ4X1wiKStcIiwgLlwiK0ooXCJ4X1wiKStcIjpsYXN0LWNoaWxke1wiK3FmKDApK1wifS5cIitKKFwibF9cIikrXCJ7LW1zLW92ZXJmbG93LXN0eWxlOm5vbmU7IHNjcm9sbGJhci13aWR0aDpub25lO30uXCIrSihcImxfXCIpK1wiOjotd2Via2l0LXNjcm9sbGJhcntkaXNwbGF5Om5vbmU7fWF7dGV4dC1kZWNvcmF0aW9uOm5vbmU7IHRleHQtdHJhbnNmb3JtOm5vbmU7IGNvbG9yOmluaGVyaXQ7IGRpc3BsYXk6aW5saW5lLWJsb2NrO31zcGFue1wiK1xucWYoMCkrXCJkaXNwbGF5OmlubGluZS1ibG9jazsgb3ZlcmZsb3c6aGlkZGVuOyB0ZXh0LXRyYW5zZm9ybTpub25lO31pbWd7Ym9yZGVyOm5vbmU7IG1heC13aWR0aDoxMDAlOyBtYXgtaGVpZ2h0OjEwMCU7fS5cIitKKFwiaV9cIikrXCJ7ZGlzcGxheTotbXMtZmxleGJveDsgZGlzcGxheTotd2Via2l0LWJveDsgZGlzcGxheTotd2Via2l0LWZsZXg7IGRpc3BsYXk6ZmxleDtcIityZihcImZsZXgtc3RhcnRcIikrXCJib3gtc2l6aW5nOmJvcmRlci1ib3g7IG92ZXJmbG93OmhpZGRlbjt9LlwiK0ooXCJ0X1wiKStcIntwb3NpdGlvbjpyZWxhdGl2ZTsgZGlzcGxheTppbmxpbmUtYmxvY2s7fS5cIitKKFwidl9cIikrXCJ7cG9zaXRpb246YWJzb2x1dGU7IHRvcDowOyBsZWZ0OjA7IGhlaWdodDoxMDAlOyBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7IGJhY2tncm91bmQtc2l6ZTphdXRvIDEwMCU7fS5cIitKKFwidV9cIikrXCJ7ZGlzcGxheTpibG9jazt9LlwiK0ooXCJzX1wiKStcIntcIitzZigpK1wifS5cIitKKFwicV9cIikrXCJ7Ym94LXNpemluZzpib3JkZXItYm94OyBtYXgtd2lkdGg6MTAwJTsgbWF4LWhlaWdodDoxMDAlOyBvdmVyZmxvdzpoaWRkZW47XCIrXG5zZigpK1wifS5cIitKKFwibl9cIikrXCJ7LW1zLWZsZXgtbmVnYXRpdmU6MTsgdGV4dC1vdmVyZmxvdzplbGxpcHNpczsgd2hpdGUtc3BhY2U6bm93cmFwO30uXCIrSihcInBfXCIpK1wiey1tcy1mbGV4LW5lZ2F0aXZlOjE7IG1heC13aWR0aDogMTAwJTt9LlwiK0ooXCJtX1wiKStcIntvdmVyZmxvdzpoaWRkZW47fS5cIitKKFwib19cIikrXCJ7d2hpdGUtc3BhY2U6bm93cmFwO30uXCIrSihcInlfXCIpK1wie2N1cnNvcjpwb2ludGVyO30uXCIrSihcInpfXCIpK1wie2Rpc3BsYXk6bm9uZTsgcG9zaXRpb246YWJzb2x1dGU7IHotaW5kZXg6MTt9LlwiK0ooXCJrX1wiKStcIj5kaXY6bm90KC5cIitKKFwiel9cIikrXCIpIHtkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWJveDsgZGlzcGxheTotbW96LWlubGluZS1ib3g7IGRpc3BsYXk6LW1zLWlubGluZS1mbGV4Ym94OyBkaXNwbGF5Oi13ZWJraXQtaW5saW5lLWZsZXg7IGRpc3BsYXk6aW5saW5lLWZsZXg7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTt9LlwiK0ooXCJrX1wiKStcIi50b3BBbGlnbj5kaXZ7dmVydGljYWwtYWxpZ246dG9wO30uXCIrXG5KKFwia19cIikrXCIuY2VudGVyQWxpZ24+ZGl2e3ZlcnRpY2FsLWFsaWduOm1pZGRsZTt9LlwiK0ooXCJrX1wiKStcIi5ib3R0b21BbGlnbj5kaXZ7dmVydGljYWwtYWxpZ246Ym90dG9tO30uXCIrSihcImtfXCIpK1wiPnNwYW4sIC5cIitKKFwia19cIikrXCI+YSwgLlwiK0ooXCJrX1wiKStcIj5pbWcsIC5cIitKKFwia19cIikrXCJ7ZGlzcGxheTppbmxpbmU7IHZlcnRpY2FsLWFsaWduOm1pZGRsZTt9LnNpMTAxOm50aC1vZi10eXBlKDVuKzEpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjMWY4YTcwIDdweCBzb2xpZDt9LnJzc0F0dHJDb250YWluZXIgfiAuc2kxMDE6bnRoLW9mLXR5cGUoNW4rMikgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICMxZjhhNzAgN3B4IHNvbGlkO30uc2kxMDE6bnRoLW9mLXR5cGUoNW4rMykgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICNiZWRiMzkgN3B4IHNvbGlkO30ucnNzQXR0ckNvbnRhaW5lciB+IC5zaTEwMTpudGgtb2YtdHlwZSg1bis0KSA+IC5zaTE0MXtib3JkZXItbGVmdDogI2JlZGIzOSA3cHggc29saWQ7fS5zaTEwMTpudGgtb2YtdHlwZSg1bis1KSA+IC5zaTE0MXtib3JkZXItbGVmdDogI2ZmZTExYSA3cHggc29saWQ7fS5yc3NBdHRyQ29udGFpbmVyIH4gLnNpMTAxOm50aC1vZi10eXBlKDVuKzYpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjZmZlMTFhIDdweCBzb2xpZH0uc2kxMDE6bnRoLW9mLXR5cGUoNW4rMikgPiAuc2kxNDF7Ym9yZGVyLWxlZnQ6ICNmZDc0MDAgN3B4IHNvbGlkO30ucnNzQXR0ckNvbnRhaW5lciB+IC5zaTEwMTpudGgtb2YtdHlwZSg1biszKSA+IC5zaTE0MXtib3JkZXItbGVmdDogI2ZkNzQwMCA3cHggc29saWQ7fS5zaTEwMTpudGgtb2YtdHlwZSg1bis0KSA+IC5zaTE0MXtib3JkZXItbGVmdDogIzAwNDM1OCA3cHggc29saWQ7fS5yc3NBdHRyQ29udGFpbmVyIH4gLnNpMTAxOm50aC1vZi10eXBlKDVuKzUpID4gLnNpMTQxe2JvcmRlci1sZWZ0OiAjMDA0MzU4IDdweCBzb2xpZDt9LlwiK1xuSihcImFhX1wiKStcIntjdXJzb3I6cG9pbnRlcjt9LnNpMTMwe2Rpc3BsYXk6aW5saW5lOyB0ZXh0LXRyYW5zZm9ybTppbmhlcml0O308L3N0eWxlPlwiKX1mdW5jdGlvbiBzZigpe3JldHVybiBHKFwiZGlzcGxheTotbXMtZmxleGJveDsgZGlzcGxheTotd2Via2l0LWJveDsgZGlzcGxheTotd2Via2l0LWZsZXg7IGRpc3BsYXk6ZmxleDtcIityZihcImNlbnRlclwiKSt0ZihcImNlbnRlclwiKSl9XG5mdW5jdGlvbiB1ZihhLGIpe3ZhciBjPVwiXCIsZD1iP1wicmlnaHRcIjpcImxlZnRcIjtiPWI/XCJsZWZ0XCI6XCJyaWdodFwiO2Zvcih2YXIgZT1DZShhKSxmPWUubGVuZ3RoLGc9MDtnPGY7ZysrKXt2YXIgaD1lW2ddO3N3aXRjaChBYShoKT9oLnRvU3RyaW5nKCk6aCl7Y2FzZSBcImZ3XCI6Yys9XCJmb250LXdlaWdodDpcIjtoPWEuZnc7c3dpdGNoKEFhKGgpP2gudG9TdHJpbmcoKTpoKXtjYXNlIDE6Yys9XCIxMDBcIjticmVhaztjYXNlIDI6Yys9XCI0MDBcIjticmVhaztjYXNlIDQ6Yys9XCI1MDBcIjticmVhaztjYXNlIDM6Yys9XCI3MDBcIjticmVhaztjYXNlIDA6Yys9XCI0MDBcIn1icmVhaztjYXNlIFwiYmFjXCI6Yys9XCJiYWNrZ3JvdW5kLWNvbG9yOlwiK0ooYS5iYWMpO2JyZWFrO2Nhc2UgXCJiaW1cIjpjKz0nYmFja2dyb3VuZC1pbWFnZTp1cmwoXCInK1RlKGEuYmltKSsnXCIpJzticmVhaztjYXNlIFwiYnJcIjpjKz1cImJvcmRlci1yYWRpdXM6XCIrSihhLmJyKStcInB4XCI7YnJlYWs7Y2FzZSBcImJ3XCI6Yys9XCJib3JkZXI6XCIrSihhLmJ3KStcblwicHggc29saWQgXCIrSihhLmJvYyk7YnJlYWs7Y2FzZSBcImZmXCI6Yys9XCJmb250LWZhbWlseTpcIitKKGEuZmYpK1wiLGFyaWFsLHNhbnMtc2VyaWY7XCI7YnJlYWs7Y2FzZSBcImZzXCI6Yys9XCJmb250LXNpemU6XCIrSihhLmZzKStcInB4XCI7YnJlYWs7Y2FzZSBcImhcIjpjKz1cImhlaWdodDpcIitKKGEuaCkrKGEuaC5pbmNsdWRlcyhcIiVcIik/XCJcIjpcInB4XCIpO2JyZWFrO2Nhc2UgXCJpXCI6Yys9XCJmb250LXN0eWxlOlwiK0ooSChhLmksITApP1wiaXRhbGljXCI6XCJub3JtYWxcIik7YnJlYWs7Y2FzZSBcImxoXCI6Yys9XCJsaW5lLWhlaWdodDpcIitKKGEubGgpK1wicHhcIjticmVhaztjYXNlIFwibWF4aFwiOmMrPVwibWF4LWhlaWdodDpcIitKKGEubWF4aCkrXCJweFwiO2JyZWFrO2Nhc2UgXCJtYXh3XCI6Yys9XCJtYXgtd2lkdGg6XCIrSihhLm1heHcpK1wicHhcIjticmVhaztjYXNlIFwibWJcIjpjKz1cIm1hcmdpbi1ib3R0b206XCIrSihhLm1iKStcInB4XCI7YnJlYWs7Y2FzZSBcIm1pbmhcIjpjKz1cIm1pbi1oZWlnaHQ6XCIrSihhLm1pbmgpK1wicHhcIjticmVhaztcbmNhc2UgXCJtaW53XCI6Yys9XCJtaW4td2lkdGg6XCIrSihhLm1pbncpK1wicHhcIjticmVhaztjYXNlIFwibWxcIjpjKz1cIm1hcmdpbi1cIitKKGQpK1wiOlwiK0ooYS5tbCkrXCJweFwiO2JyZWFrO2Nhc2UgXCJtclwiOmMrPVwibWFyZ2luLVwiK0ooYikrXCI6XCIrSihhLm1yKStcInB4XCI7YnJlYWs7Y2FzZSBcIm10XCI6Yys9XCJtYXJnaW4tdG9wOlwiK0ooYS5tdCkrXCJweFwiO2JyZWFrO2Nhc2UgXCJvcFwiOmMrPVwib3BhY2l0eTpcIitKKGEub3ApO2JyZWFrO2Nhc2UgXCJwYlwiOmMrPVwicGFkZGluZy1ib3R0b206XCIrSihhLnBiKStcInB4XCI7YnJlYWs7Y2FzZSBcInBsXCI6Yys9XCJwYWRkaW5nLVwiK0ooZCkrXCI6IFwiK0ooYS5wbCkrXCJweFwiO2JyZWFrO2Nhc2UgXCJwclwiOmMrPVwicGFkZGluZy1cIitKKGIpK1wiOiBcIitKKGEucHIpK1wicHhcIjticmVhaztjYXNlIFwicHRcIjpjKz1cInBhZGRpbmctdG9wOlwiK0ooYS5wdCkrXCJweFwiO2JyZWFrO2Nhc2UgXCJ0Y1wiOmMrPVwiY29sb3I6XCIrSihhLnRjKTticmVhaztjYXNlIFwidVwiOmMrPVwidGV4dC1kZWNvcmF0aW9uOlwiK1xuSihEZShhLnUpP1widW5kZXJsaW5lXCI6XCJub25lXCIpO2JyZWFrO2Nhc2UgXCJzdFwiOmMrPVwidGV4dC1kZWNvcmF0aW9uOlwiK0ooRGUoYS5zdCk/XCJsaW5lLXRocm91Z2hcIjpcIm5vbmVcIik7YnJlYWs7Y2FzZSBcInBvXCI6aD1hLnBvO3ZhciBrPWQsbD1iO2g9RygoaC50P0ooKStcInRvcDpcIitKKGgudCkrXCJweDtcIjpcIlwiKSsoaC5yP0ooKStKKGwpK1wiOlwiK0ooaC5yKStcInB4O1wiOlwiXCIpKyhoLmI/SigpK1wiYm90dG9tOlwiK0ooaC5iKStcInB4O1wiOlwiXCIpKyhoLmw/SigpK0ooaykrXCI6XCIrSihoLmwpK1wicHg7XCI6XCJcIikpO2MrPWgrXCJwb3NpdGlvbjphYnNvbHV0ZVwiO2JyZWFrO2Nhc2UgXCJib3NcIjpoPWEuYm9zO2s9XCJcIjtsPWg7Zm9yKHZhciBtPWwubGVuZ3RoLHA9MDtwPG07cCsrKXt2YXIgcj1sW3BdO2srPUooci54bykrXCJweCBcIitKKHIueW8pK1wicHggXCIrKHIuYnI/SihyLmJyKStcInB4IFwiKyhyLnNyP0ooci5zcikrXCJweCBcIjpcIlwiKTpcIlwiKStKKHIuc2MpKyhwIT1oLmxlbmd0aC0xP1wiLFwiOlwiXCIpfWg9RyhrKTtoPVxuRyhcIlwiK2gpO2g9RyhcIi13ZWJraXQtYm94LXNoYWRvdzpcIitKKGgpK1wiOyAtbW96LWJveC1zaGFkb3c6XCIrSihoKStcIjsgLW1zLWJveC1zaGFkb3c6XCIrSihoKStcIjsgYm94LXNoYWRvdzpcIitKKGgpK1wiO1wiKTtjKz1oO2JyZWFrO2Nhc2UgXCJ3XCI6Yys9XCJ3aWR0aDpcIitKKGEudykrKChcIlwiK2EudykuaW5jbHVkZXMoXCIlXCIpP1wiOyAtbXMtZmxleC1uZWdhdGl2ZToxO1wiK3FmKDEpOlwicHhcIik7YnJlYWs7Y2FzZSBcInR0XCI6c3dpdGNoKGMrPVwidGV4dC10cmFuc2Zvcm06XCIsaD1hLnR0LEFhKGgpP2gudG9TdHJpbmcoKTpoKXtjYXNlIDE6Yys9XCJ1cHBlcmNhc2VcIjticmVhaztkZWZhdWx0OmMrPVwiaW5pdGlhbFwifX1jKz1cIjtcIn1yZXR1cm4gRyhjKX1mdW5jdGlvbiBxZihhKXtyZXR1cm4gRyhcIi13ZWJraXQtYm94LWZsZXg6XCIrSihhKStcIiAwOyAtd2Via2l0LWZsZXgtc2hyaW5rOlwiK0ooYSkrXCI7IGZsZXgtc2hyaW5rOlwiK0ooYSkrXCI7XCIpfVxuZnVuY3Rpb24gcmYoYSl7dmFyIGI9XCItbXMtZmxleC1hbGlnbjpcIixjPVwiXCIrKGEuaW5kZXhPZihcImZsZXgtXCIpPT0wP0ooYS5zdWJzdHJpbmcoNSkpOkooYSkpO2M9RyhjKTtiKz1KKGMpK1wiOyAtd2Via2l0LWJveC1hbGlnbjpcIitKKGMpK1wiOyAtd2Via2l0LWFsaWduLWl0ZW1zOlwiK0ooYSkrXCI7IGFsaWduLWl0ZW1zOlwiK0ooYSkrXCI7XCI7cmV0dXJuIEcoYil9ZnVuY3Rpb24gdGYoYSl7dmFyIGI9XCItbXMtZmxleC1wYWNrOlwiLGM9XCJcIisoYS5pbmRleE9mKFwiZmxleC1cIik9PTA/SihhLnN1YnN0cmluZyg1KSk6SihhKSk7Yz1HKGMpO2IrPUooYykrXCI7IC13ZWJraXQtYm94LXBhY2s6XCIrSihjKStcIjsgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6XCIrSihhKStcIjsganVzdGlmeS1jb250ZW50OlwiK0ooYSkrXCI7XCI7cmV0dXJuIEcoYil9O2Z1bmN0aW9uIHZmKGEpe3ZhciBiPVtdO2E9dShhLnN8fFtdKTtmb3IodmFyIGM9YS5uZXh0KCk7IWMuZG9uZTtjPWEubmV4dCgpKXtjPWMudmFsdWU7dmFyIGQ9Yy5yO2QmJmQuaGFzT3duUHJvcGVydHkoXCJmZlwiKSYmKGQuZmY9RyhkLmZmKSk7KGQ9Yy5ocikmJmQuaGFzT3duUHJvcGVydHkoXCJmZlwiKSYmKGQuZmY9RyhkLmZmKSk7Yi5wdXNoKHtjbGFzc05hbWU6Yy5zayxydWxlczpjLnJ8fHt9LHpiOmMuaHJ8fHt9fSl9YT1OYSgpLmJhKCk7dmFyIGU9XCI8c3R5bGU+XCI7Yz1iLmxlbmd0aDtmb3IoZD0wO2Q8YztkKyspe3ZhciBmPWJbZF07aWYoZi5ydWxlcyYmQ2UoZi5ydWxlcykubGVuZ3RoPjApe3ZhciBnPVwiLlwiK0ooZi5jbGFzc05hbWUpK1wie1wiK3VmKGYucnVsZXMsYSkrXCJ9XCI7dmFyIGg9Zi5jbGFzc05hbWU7dmFyIGs9Zi5ydWxlcztoPUcoRGUoay5pc3MpJiZEZShrLmlzcy5iYykmJkRlKGsuaXNzLm8pP1wiLlwiK0ooaCkrXCIgPiAuXCIrSihcInJfXCIpK1wie2JhY2tncm91bmQtY29sb3I6XCIrXG5KKGsuaXNzLmJjKStcIjsgb3BhY2l0eTpcIitKKGsuaXNzLm8pK1wiOyBib3R0b206MDsgdG9wOjA7IHJpZ2h0OjA7IGxlZnQ6MDsgcG9zaXRpb246YWJzb2x1dGU7fVwiOlwiXCIpO2crPWg7aWYoVmUoQ2UoZi5ydWxlcykpPj0wKXtoPVwiLlwiK0ooZi5jbGFzc05hbWUpK1wiID4gaW1ne1wiO2s9Zi5ydWxlcztmb3IodmFyIGw9XCJcIixtPUNlKGspLHA9bS5sZW5ndGgscj0wO3I8cDtyKyspe3ZhciB0PW1bcl07c3dpdGNoKEFhKHQpP3QudG9TdHJpbmcoKTp0KXtjYXNlIFwib2ZcIjp0PWsub2Y7c3dpdGNoKEFhKHQpP3QudG9TdHJpbmcoKTp0KXtjYXNlIDE6bCs9XCJvYmplY3QtZml0OiBjb3ZlcjtcIjticmVhaztjYXNlIDI6bCs9XCJvYmplY3QtZml0OiBjb3ZlcjsgbWF4LWhlaWdodDogdW5zZXQ7XCI7YnJlYWs7Y2FzZSAzOmwrPVwib2JqZWN0LWZpdDogY292ZXI7IG1heC13aWR0aDogdW5zZXQ7XCJ9bCs9XCI7XCJ9bCs9XCI7XCJ9az1HKGwpO2g9aCtrK1wifVwifWVsc2UgaD1cIlwiO2crPWh9ZWxzZSBnPVwiXCI7ZSs9ZytcbihmLnpiJiZDZShmLnpiKS5sZW5ndGg+MD9cIi5cIitKKGYuY2xhc3NOYW1lKStcIjpob3ZlcntcIit1ZihmLnpiLGEpK1wifVwiOlwiXCIpfXJldHVybiBGKGUrXCI8L3N0eWxlPlwiKX07ZnVuY3Rpb24gd2YoYSxiKXtpZighYSlyZXR1cm4hMTtpZihhLm5vZGVUeXBlPT0zJiZhLm5vZGVWYWx1ZSYmKGImJihhLm5vZGVWYWx1ZSs9XCIgLi4uXCIpLGEubm9kZVZhbHVlLmxlbmd0aD40KSl7Yj1hLm5vZGVWYWx1ZTt2YXIgYz1hLm5vZGVWYWx1ZS5sZW5ndGgtMTtiLmxlbmd0aD5jJiYoYj1iLnN1YnN0cmluZygwLGMtMykrXCIuLi5cIik7YS5ub2RlVmFsdWU9YjtyZXR1cm4hMX1jPWEudGV4dENvbnRlbnR8fGEuaW5uZXJUZXh0O2lmKCFjfHxjLmxlbmd0aDw9KGI/MDo0KSlyZXR1cm4gYS5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGEpLCEwO2ZvcihiPXdmKGEubGFzdENoaWxkLGIpO2I7KWI9d2YoYS5sYXN0Q2hpbGQsYik7cmV0dXJuITF9XG5mdW5jdGlvbiB4ZihhLGIpe2lmKCEoYjw9MCkpe2Zvcih2YXIgYz1hLmlubmVySFRNTC5sZW5ndGg7Yz4wJiZhLm9mZnNldEhlaWdodD5iO2MtLSlmb3IodmFyIGQ9YSxlPXdmKGQubGFzdENoaWxkLCExKTtlOyllPXdmKGQubGFzdENoaWxkLGUpO2Eub2Zmc2V0SGVpZ2h0PmImJihhLnRleHRDb250ZW50PVwiXCIpfX07dmFyIHlmPTE7ZnVuY3Rpb24gemYoYSxiLGMpe2lmKCFjKXJldHVybiBudWxsO2lmKGNbMF09PVwiLlwiKXJldHVybiBiW2Muc3Vic3RyaW5nKDEpXTtjPXUoYy5zcGxpdChcIi5cIikpO2ZvcihiPWMubmV4dCgpOyFiLmRvbmU7Yj1jLm5leHQoKSl7Yj1iLnZhbHVlO2lmKGE9PW51bGwpcmV0dXJuIG51bGw7aWYoQXJyYXkuaXNBcnJheShhKSl7Yj1wYXJzZUludChiLDEwKTtpZihpc05hTihiKSlyZXR1cm4gbnVsbDthPWFbYl19ZWxzZSBpZihBYShhKSYmYS5oYXNPd25Qcm9wZXJ0eShiKSlhPWFbYl07ZWxzZSByZXR1cm4gbnVsbH1yZXR1cm4gYX07dmFyIEFmPW51bGw7ZnVuY3Rpb24gQmYoYSxiLGMpe3ZhciBkPWMudGFnTmFtZT09PVwiQVwiP2M6Yy5xdWVyeVNlbGVjdG9yKFwiYVwiKTtiLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLGZ1bmN0aW9uKGUpe0NmKGEsYixjKTtEZihlKX0pO2IuYWRkRXZlbnRMaXN0ZW5lcihcImtleWRvd25cIixmdW5jdGlvbihlKXtpZihlLmtleUNvZGU9PTMyfHxlLmtleUNvZGU9PTEzKUNmKGEsYixjKSxEZihlKSxkJiZkLmZvY3VzKCl9KTthLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLEVmKTthLmFkZEV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIixFZik7Yi5zZXRBdHRyaWJ1dGUoXCJyb2xlXCIsXCJidXR0b25cIik7Yi5zZXRBdHRyaWJ1dGUoXCJ0YWJpbmRleFwiLDApO2QmJmIuc2V0QXR0cmlidXRlKFwiYXJpYS1sYWJlbFwiLGMudGV4dENvbnRlbnQpfWZ1bmN0aW9uIERmKGEpe2Euc3RvcFByb3BhZ2F0aW9uP2Euc3RvcFByb3BhZ2F0aW9uKCk6KGEuY2FuY2VsQnViYmxlPSEwLGEucmV0dXJuVmFsdWU9ITEpfVxuZnVuY3Rpb24gQ2YoYSxiLGMpe0FmJiZBZiE9YyYmKEFmLnN0eWxlLmRpc3BsYXk9XCJub25lXCIsQWY9bnVsbCk7aWYoYy5zdHlsZS5kaXNwbGF5JiZjLnN0eWxlLmRpc3BsYXkhPVwibm9uZVwiKWMuc3R5bGUuZGlzcGxheT1cIm5vbmVcIixBZj1udWxsO2Vsc2V7YS5hcHBlbmRDaGlsZChjKTt2YXIgZD1qZChiKSxlPWtkKGIpLGY9a2QoYyksZz1rZChhKSxoPWpkKGEpLGs9ZC54K2Euc2Nyb2xsTGVmdC1oLng7ZD1kLnkrYS5zY3JvbGxUb3AtaC55O3N3aXRjaChiLmdldEF0dHJpYnV0ZShcImRhdGEtcG9zaXRpb25cIikpe2Nhc2UgXCJvdmVyXCI6Yj1lLndpZHRoLzItZi53aWR0aC8yO2U9ZS5oZWlnaHQvMi1mLmhlaWdodC8yO2JyZWFrO2RlZmF1bHQ6Yj1lLndpZHRoLzItZi53aWR0aC8yLGU9ZS5oZWlnaHR9aD1hLnNjcm9sbFRvcDt2YXIgbD1hLnNjcm9sbFRvcCtnLmhlaWdodC1mLmhlaWdodC0xMDtjLnN0eWxlLmxlZnQ9TWF0aC5taW4oTWF0aC5tYXgoTWF0aC5yb3VuZChrK2IpLGEuc2Nyb2xsTGVmdCksXG5hLnNjcm9sbExlZnQrZy53aWR0aC1mLndpZHRoLTEwKStcInB4XCI7Yy5zdHlsZS50b3A9TWF0aC5taW4oTWF0aC5tYXgoTWF0aC5yb3VuZChkK2UpLGgpLGwpK1wicHhcIjtjLnN0eWxlLmRpc3BsYXk9XCJibG9ja1wiO0FmPWN9fWZ1bmN0aW9uIEVmKCl7QWYmJihBZi5zdHlsZS5kaXNwbGF5PVwibm9uZVwiLEFmPW51bGwpfTtmdW5jdGlvbiBGZihhKXt2YXIgYj1hLm9yaWVudGF0aW9uLGM9YS5pZCxkPWEuUCxlPWEudWUsZj1hLm92ZXJmbG93LGc9YS5YZSxoPWEuSmUsaz1hLkVmLGw9YS5ocmVmLG09XCJcIixwPUgoZSwwKXx8SChlLDEpfHxIKGUsMikscj1IKGUsNil8fEgoZSw3KXx8SChlLDgpLHQ9SChlLDMpfHxIKGUsNCl8fEgoZSw1KTtjPShjPydpZD1cIicrSShjKSsnXCInOlwiXCIpKycgY2xhc3M9XCInK0koXCJpX1wiKSsoZD9cIiBcIitJKGQpOlwiXCIpKyhIKGYsMyk/XCIgXCIrSShcImpfXCIpOlwiXCIpO0goZyw0KSYmKGMrPVwiIFwiK0koXCJrX1wiKStcIiBcIixjKz1JKHA/XCJ0b3BBbGlnblwiOnI/XCJjZW50ZXJBbGlnblwiOnQ/XCJib3R0b21BbGlnblwiOlwiXCIpKTtjKz0oSChmLDQpP1wiIFwiK0koXCJqX1wiKStcIiBcIitJKFwibF9cIik6XCJcIikrJ1wiJysoaD8nIGRhdGEtZHJvcD1cInRydWVcIic6XCJcIik7Zz1cIi1tcy1mbGV4LWRpcmVjdGlvbjpcIjtoPVwiXCIrSihiPT0wP1wicm93XCI6XCJjb2x1bW5cIik7aD1HKGgpO2crPUooaCkrXCI7IC13ZWJraXQtYm94LW9yaWVudDpcIitcbkooYj09MD9cImhvcml6b250YWxcIjpcInZlcnRpY2FsXCIpK1wiOyAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOlwiK0ooaCkrXCI7IGZsZXgtZGlyZWN0aW9uOlwiK0ooaCkrXCI7XCI7Zz1HKGcpO2g9ZSE9bnVsbD90ZihIKGUsMCl8fEgoZSwzKXx8SChlLDkpfHxIKGUsNik/XCJmbGV4LXN0YXJ0XCI6SChlLDEpfHxIKGUsNCl8fEgoZSwxMCl8fEgoZSw3KT9cImNlbnRlclwiOkgoZSwyKXx8SChlLDUpfHxIKGUsMTEpfHxIKGUsOCk/XCJmbGV4LWVuZFwiOlwiXCIpOlwiXCI7aD1HKFwiXCIraCk7ZT1lIT1udWxsP3JmKHA/XCJmbGV4LXN0YXJ0XCI6dD9cImZsZXgtZW5kXCI6cj9cImNlbnRlclwiOkgoZSw5KXx8SChlLDEwKXx8SChlLDExKT9cInN0cmV0Y2hcIjpcIlwiKTpcIlwiO2U9RyhcIlwiK2UpO3A9XCJcIjtzd2l0Y2goZil7Y2FzZSAyOnArPVwiLW1zLWZsZXgtd3JhcDp3cmFwOyAtd2Via2l0LWZsZXgtd3JhcDp3cmFwOyBmbGV4LXdyYXA6d3JhcDtcIjticmVhaztjYXNlIDM6Y2FzZSA0OnArPVwib3ZlcmZsb3ctXCIrSihiPT0wP1wieFwiOlwieVwiKStcblwiOmF1dG87IC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XCJ9Yj1HKHApO2MrPScgc3R5bGU9XCInK0koSihnKSkrSShKKGgpKStJKEooZSkpK0koSihiKSkrKGs/XCJwb3NpdGlvbjpyZWxhdGl2ZTtcIjpcIlwiKSsnXCInO2s9QmUoYyk7bSs9RGUobCk/XCI8YVwiK05lKEdmKGEpKStOZShMZShrKSkrXCI+PC9hPlwiOlwiPGRpdlwiK05lKExlKGspKStcIj48L2Rpdj5cIjtyZXR1cm4gRihtKX1cbmZ1bmN0aW9uIEhmKGEpe2E9YXx8e307dmFyIGI9YS5pZCxjPWEudGV4dCxkPWEuUCxlPWEuTWYsZj1hLnRnLGc9YS5ocmVmLGg9YS5XZCxrPVwiXCIsbD1lIT1udWxsPydkYXRhLWxpbmVzPVwiJytJKGUpKydcIicrKGYhPW51bGw/JyBkYXRhLXRydW5jYXRlPVwiJytJKGYpKydcIic6JyBkYXRhLXRydW5jYXRlPVwiMFwiJyk6XCJcIjtsPUJlKGwpO2Y9SChlLDEpP1wibV8gXCIrKEgoZiwwKT9cIm5fXCI6XCJvX1wiKTpcInBfXCI7Yz0oZSYmZT4xP1wiPHNwYW5cIitOZShMZShsKSkrJyBzdHlsZT1cImRpc3BsYXk6IC13ZWJraXQtYm94OyAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOyBvdmVyZmxvdzogaGlkZGVuOyAtd2Via2l0LWxpbmUtY2xhbXA6ICcrSShKKGUpKSsnOyBcIj4nOlwiXCIpK3ZlKGMhPW51bGw/YzpcIlwiKSsoZSYmZT4xP1wiPC9zcGFuPlwiOlwiXCIpO2M9RihjKTtrKz1EZShnKT9cIjxhXCIrKGI/JyBpZD1cIicrSShiKSsnXCInOlwiXCIpKycgY2xhc3M9XCInK0koZikrXCIgXCIrSShkIT1udWxsP2Q6XCJcIikrJ1wiJysoZSYmXG5lPjE/XCJcIjpOZShMZShsKSkpKyhoPycgZGF0YS1waW5nYmFjay10eXBlPVwiJytJKGgpKydcIic6XCJcIikrTmUoR2YoYSkpK1wiPlwiK2MrXCI8L2E+XCI6XCI8c3BhblwiKyhiPycgaWQ9XCInK0koYikrJ1wiJzpcIlwiKSsoZSYmZT4xP1wiXCI6TmUoTGUobCkpKSsoaD8nIGRhdGEtcGluZ2JhY2stdHlwZT1cIicrSShoKSsnXCInOlwiXCIpKycgY2xhc3M9XCInK0koZikrXCIgXCIrSShkIT1udWxsP2Q6XCJcIikrJ1wiPicrYytcIjwvc3Bhbj5cIjtyZXR1cm4gRihrKX1cbmZ1bmN0aW9uIElmKGEpe3ZhciBiPWEuc3JjLGM9YS5oaCxkPWEuaWQsZT1hLnlmLGY9YS5hcmlhSGlkZGVuLGc9YS5QLGg9YS5ocmVmLGs9YS5XZCxsPWEuZ2YsbT1cIlwiO2Q9KGQ/J2lkPVwiJytJKGQpKydcIic6XCJcIikrKGY/JyBhcmlhLWhpZGRlbj1cInRydWVcIiB0YWJpbmRleD1cIi0xXCInOlwiXCIpKycgY2xhc3M9XCInK0koXCJxX1wiKSsoZz9cIiBcIitJKGcpOlwiXCIpKydcIic7ZD1CZShkKTtpZihjKXtiPVwiXCI7c3dpdGNoKEFhKGMpP2MudG9TdHJpbmcoKTpjKXtjYXNlIFwibG9jYWxTVkdfU25vd21hbl8xOF9ncmV5XCI6Yis9JzxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjE4XCIgd2lkdGg9XCIxOFwiPjxwYXRoIGZpbGw9XCIjYTBhNGE0XCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTkgNmMuODI1IDAgMS41LS42NzUgMS41LTEuNVM5LjgyNSAzIDkgM3MtMS41LjY3NS0xLjUgMS41UzguMTc1IDYgOSA2em0wIDEuNWMtLjgyNSAwLTEuNS42NzUtMS41IDEuNXMuNjc1IDEuNSAxLjUgMS41IDEuNS0uNjc1IDEuNS0xLjVTOS44MjUgNy41IDkgNy41em0tMS41IDZjMC0uODI1LjY3NS0xLjUgMS41LTEuNXMxLjUuNjc1IDEuNSAxLjVTOS44MjUgMTUgOSAxNXMtMS41LS42NzUtMS41LTEuNXpcIi8+PC9zdmc+JztcbmJyZWFrO2Nhc2UgXCJsb2NhbFNWR19Tbm93bWFuXzE4X2N1cnJlbnRDb2xvclwiOmIrPSc8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBoZWlnaHQ9XCIxOFwiIHdpZHRoPVwiMThcIj48cGF0aCBmaWxsPVwiY3VycmVudENvbG9yXCIgZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTkgNmMuODI1IDAgMS41LS42NzUgMS41LTEuNVM5LjgyNSAzIDkgM3MtMS41LjY3NS0xLjUgMS41UzguMTc1IDYgOSA2em0wIDEuNWMtLjgyNSAwLTEuNS42NzUtMS41IDEuNXMuNjc1IDEuNSAxLjUgMS41IDEuNS0uNjc1IDEuNS0xLjVTOS44MjUgNy41IDkgNy41em0tMS41IDZjMC0uODI1LjY3NS0xLjUgMS41LTEuNXMxLjUuNjc1IDEuNSAxLjVTOS44MjUgMTUgOSAxNXMtMS41LS42NzUtMS41LTEuNXpcIi8+PC9zdmc+J31jPUYoYil9ZWxzZSBjPSc8aW1nIHNyYz1cIicrSShUZShiKSkrJ1wiIGFsdD1cIlwiJysoaz8nIGRhdGEtcGluZ2JhY2stdHlwZT1cIicrSShrKStcbidcIic6XCJcIikrKGU/JyBhcmlhLWxhYmVsPVwiJytJKGUpKydcIic6XCJcIikrXCI+XCI7Yz1GKFwiXCIrYyk7Yj0nPGRpdiBjbGFzcz1cIicrSShcInJfXCIpKydcIj48L2Rpdj4nO2I9RihiKTttKz1EZShoKT9cIjxhXCIrTmUoR2YoYSkpK05lKExlKGQpKStcIj5cIisobD9iOlwiXCIpK2MrXCI8L2E+XCI6XCI8ZGl2XCIrTmUoTGUoZCkpK1wiPlwiKyhsP2I6XCJcIikrYytcIjwvZGl2PlwiO3JldHVybiBGKG0pfVxuZnVuY3Rpb24gSmYoYSl7dmFyIGI9YS5SZixjPWEuU2YsZD1hLmlkLGU9YS5rZyxmPWEubGcsZz1hLmJoLGg9YS5kaCxrPWEuZ2gsbD1hLlAsbT1hLmhyZWYscD1hLnphLHI9YS5tZDthPWEueGM7az1rIT1udWxsP2s6XCJcIjtkPVwiPGRpdlwiKyhkPycgaWQ9XCInK0koZCkrJ1wiJzpcIlwiKSsnIGNsYXNzPVwiJytJKFwic19cIikrKGw/XCIgXCIrSShsKTpcIlwiKSsnXCI+PGRpdiBjbGFzcz1cIicrSShcInRfXCIpKydcIj4nO2U9XCJcIitPZSgoZz9cIlwiOmspKyhlIT1udWxsP2U6XCIvaW1hZ2VzL2Fmcy9zci1zdGFyLW9mZi5wbmdcIikpO2U9QWUoZSk7ZCs9JzxpbWcgc3JjPVwiJytJKFRlKGUpKSsnXCIgY2xhc3M9XCInK0koXCJ1X1wiKSsnXCIgcm9sZT1cIm5vbmVcIi8+JztmPVwiXCIrT2UoKGg/XCJcIjprKSsoZiE9bnVsbD9mOlwiL2ltYWdlcy9hZnMvc3Itc3Rhci1vbi5wbmdcIikpO2Y9QWUoZik7ZCs9JzxkaXYgY2xhc3M9XCInK0koXCJ2X1wiKSsnXCIgc3R5bGU9XCJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJytJKFRlKGYpKStcIik7IHdpZHRoOiBcIitcbkkoSihNYXRoLm1heChNYXRoLm1pbihiLDUpLDApKjIwKSkrJyVcIiByb2xlPVwiaW1nXCInKyhjPycgYXJpYS1sYWJlbD1cIicrSShjKSsnXCInOicgYXJpYS1oaWRkZW49XCJ0cnVlXCInKStcIj48L2Rpdj48L2Rpdj48L2Rpdj5cIjtiPWI9e2hyZWY6bSx6YTpwLG1kOnIseGM6YSxZZTpGKGQpfTtjPWIuWWU7Yj1GKERlKGIuaHJlZik/XCI8YVwiK05lKEdmKGIpKStcIj5cIit2ZShjKStcIjwvYT5cIjp2ZShjKSk7cmV0dXJuIEYoXCJcIitiKX1cbmZ1bmN0aW9uIEdmKGEpe2E9YXx8e307dmFyIGI9YS56YSxjPWEubWQsZD1hLnhjLGU9YS5aZTthPSdocmVmPVwiJytJKE9lKGEuaHJlZikpKydcIicrKGQ/JyBkYXRhLW5vdHJhY2s9XCJ0cnVlXCInOlwiXCIpKyhjIT1udWxsPycgZGF0YS1uYj1cIicrSShjKSsnXCInOlwiXCIpKyhiPycgdGFyZ2V0PVwiJytJKGIpKydcIic6XCJcIik7ZSE9bnVsbD8oZT1CZShIKGU9PW51bGw/dm9pZCAwOmUuYXMsXCJ0cnVlXCIpPydhdHRyaWJ1dGlvbnNyYz1cIlwiJzonYXR0cmlidXRpb25zcmM9XCInK0koZT09bnVsbD92b2lkIDA6ZS5hcykrJ1wiJyksZT1OZShlKSk6ZT1cIlwiO3JldHVybiBCZShhK2UpfTt2YXIgS2Y9d2luZG93Lm5hdmlnYXRvcj93aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudDpcIlwiO2Z1bmN0aW9uIExmKCl7dmFyIGE9TWYoTmYpO3JldHVybiBhIT09LTE/YT42NzohMH12YXIgTmY9L0ZpcmVmb3hcXC8oXFxkKylcXC4vLE9mPS9WZXJzaW9uXFwvKFxcZCspXFwuLipTYWZhcmkvLFBmPS9DaHJvbWVcXC8oXFxkKylcXC4vLFFmPS8oPzppUGhvbmV8aVBvZHxpUGFkKS4qQXBwbGVXZWJLaXRcXC8oXFxkKykoPyEuKlZlcnNpb24pLztmdW5jdGlvbiBNZihhKXthPShhPWEuZXhlYyhLZikpP2FbMV06XCJcIjtyZXR1cm4gYS5sZW5ndGg+MCYmKGE9cGFyc2VJbnQoYSwxMCkpP2E6LTF9O2Z1bmN0aW9uIFJmKCl7dGhpcy5iZj1ZYygpO3RoaXMuVmI9bnVsbH1SZi5wcm90b3R5cGUuY2Q9ZnVuY3Rpb24oYSxiKXt2YXIgYz10aGlzLlZiP3RoaXMuVmIuZ2V0RGF0YSgpOnt9LGQ9dGhpcy5iZjtyZXR1cm4gYWYoYShifHxiZixjKSxkKX07UmYucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbihhLGIpe2E9YShifHx7fSx0aGlzLlZiP3RoaXMuVmIuZ2V0RGF0YSgpOnt9KTtyZXR1cm4gU3RyaW5nKGEpfTtmdW5jdGlvbiBTZihhKXtpZighYSlyZXR1cm57fTt2YXIgYj17fTthPXUoYSk7Zm9yKHZhciBjPWEubmV4dCgpOyFjLmRvbmU7Yz1hLm5leHQoKSljPWMudmFsdWUsYltjLnNrXT17cnVsZXM6Yy5yLHpiOmMuaHJ9O3JldHVybiBifXZhciBUZj1uZXcgUmYsVWY9e30sVmY9KFVmWzJdPVwid19cIixVZlszXT1cInhfXCIsVWYpO1xuZnVuY3Rpb24gV2YoYSxiLGMsZCxlLGYpe2Z1bmN0aW9uIGcodix3LEMpe3ZhciBSPXYuZGJrPT1cImFkQmxvY2tcIixQPWQ/XCJfYmxhbmtcIjpcIl90b3BcIjt3PXtpZDpSP1wiYWRCbG9ja1wiOncsUDoodi5za3x8XCJcIikrXCIgXCIrKEM9PT12b2lkIDA/XCJcIjpDKSx6YTpQfTt2LnBiJiYody5XZD12LnBiLnBidCk7Qz12LmRiaz09PVwiY3RjXCI7dmFyIFU9di5kYms9PT1cImN0Yy5idFwiO2lmKG18fEN8fFUpdy56YT1cIl9zZWxmXCIsIS9pKFBob25lfFBhZCk7L2kudGVzdChLZil8fC9DaHJvbWV8Q3JpT1MvaS50ZXN0KEtmKSYmTWYoUGYpPjk4fHwody56YT1QKTtwJiYody56YT1cIl90b3BcIik7Qz12LmRiaz96ZihjLGIsdi5kYmspOnZvaWQgMDtVPXYuYWNjJiZ2LmFjYy5hbHQ/emYoYyxiLHYuYWNjLmFsdCk6dm9pZCAwO3ZhciB2YT12LmFjYyYmdi5hY2MuYWgsYWI9emYoYyxiLFwiYmNhbGFcIik7aWYodi5kYmsmJiFDJiYhUnx8di5obmsmJnpmKGMsYix2LmhuaykhPW51bGwpcmV0dXJuIG51bGw7UD1udWxsO1xudmFyIFFhPTA7aWYodi5hYyl7dmFyIFc9di5hY1swXSxYPVcuYWN0LE1jPVcuZGJrP3pmKGMsYixXLmRiayk6dm9pZCAwLFNiPVcuZW4sVGI9dm9pZCAwLE5jPXZvaWQgMDtzd2l0Y2goWCl7Y2FzZSAwOncuaHJlZj1NYzt3LnhjPSEhVy5ubTt3Lm1kPVcubmI7dy5aZT1hYjticmVhaztjYXNlIDM6dy5QKz1cIiB5X1wiO05jPVwiel9cIjtUYj1cImVcIit5ZisrO3cuaWR8fCh3LmlkPVwiZVwiK3lmKyspO2wucHVzaCh7eGY6dy5pZCxIZTpUYn0pO2JyZWFrO2Nhc2UgNTppZihRYT1wYXJzZUludChNYywxMCkpdy5QKz1cIiBhYV9cIn1TYiYmKFA9ZyhTYixUYixOYykpfVg9bnVsbDthYj12Lm50O1c9di5scnx8e307WD0oaFt2LnNrXXx8e30pLnJ1bGVzfHx7fTtzd2l0Y2goYWIpe2Nhc2UgMDpDPVcubztDPT1udWxsJiYoQz0wKTt3Lm9yaWVudGF0aW9uPUM7dy51ZT1XLmE7dy5KZT1XLnQ9PTE7dy5vdmVyZmxvdz1XLm92O3cuWGU9Vy5jZjt3LkVmPVcuYXAmJiFYLnBvO1g9RmY7YnJlYWs7Y2FzZSAxOncudGV4dD1cbkYoQyk7dy5NZj1XLm5sO3cudGc9Vy50O1g9SGY7YnJlYWs7Y2FzZSAyOncuc3JjPVguc2ZjJiZDLnN1YnN0cigtMyk9PVwic3ZnXCI/QytcIj9jPVwiK2VuY29kZVVSSUNvbXBvbmVudChYLnNmYyk6Qzt3LmdmPVwiaXNzXCJpbiBYJiZcImJjXCJpbiBYLmlzcyYmXCJvXCJpbiBYLmlzczt3LnlmPVU7dy5hcmlhSGlkZGVuPXZhO1g9SWY7YnJlYWs7Y2FzZSA0OnR5cGVvZiBDPT1cInN0cmluZ1wiJiYoQz1wYXJzZUZsb2F0KEMpKTtpZih0eXBlb2YgQyE9XCJudW1iZXJcInx8aXNOYU4oQykpcmV0dXJuIG51bGw7dy5rZz1YLmJ1O3cubGc9WC5mdTt3LlJmPUM7dy5TZj1VO05hKCkuZGF0YS5pbnNyJiZrPT0yPyh3LndpZHRoPVwiMTc3cHhcIix3LmhlaWdodD1cIjMycHhcIik6KHcud2lkdGg9XCI2MXB4XCIsdy5oZWlnaHQ9XCIxMXB4XCIpO1g9SmY7YnJlYWs7ZGVmYXVsdDpyZXR1cm4gbnVsbH1pZihDPVZmW1cuc2JdKXcuUCs9XCIgXCIrQzt2YXIgSz1UZi5jZChYLHcpO3YuaGFzT3duUHJvcGVydHkoXCJobmVcIikmJnRbdi5obmVdLnB1c2goSyk7XG5pZihSKXt2YXIgYmI9QihmdW5jdGlvbigpe2Zvcih2YXIgWT11KHRbMV0pLGJhPVkubmV4dCgpOyFiYS5kb25lO2JhPVkubmV4dCgpKXtiYT1iYS52YWx1ZTt2YXIgd2E9ITE7Sy5zdHlsZS5vdmVyZmxvd1g9PT1cImF1dG9cIj93YT1LLnNjcm9sbExlZnQhPT0wOksuc3R5bGUub3ZlcmZsb3dZPT09XCJhdXRvXCImJih3YT1LLnNjcm9sbFRvcCE9PTApO2JhLnN0eWxlLnZpc2liaWxpdHk9d2E/XCJ2aXNpYmxlXCI6XCJoaWRkZW5cIn1ZPXUodFsyXSk7Zm9yKGJhPVkubmV4dCgpOyFiYS5kb25lO2JhPVkubmV4dCgpKWJhPWJhLnZhbHVlLHdhPSEwLEsuc3R5bGUub3ZlcmZsb3dYPT09XCJhdXRvXCI/d2E9TWF0aC5hYnMoSy5zY3JvbGxMZWZ0KSE9PUsuc2Nyb2xsV2lkdGgtSy5jbGllbnRXaWR0aDpLLnN0eWxlLm92ZXJmbG93WT09PVwiYXV0b1wiJiYod2E9Sy5zY3JvbGxUb3AhPT1LLnNjcm9sbEhlaWdodC1LLmNsaWVudEhlaWdodCksYmEuc3R5bGUudmlzaWJpbGl0eT13YT9cInZpc2libGVcIjpcImhpZGRlblwifSxcblwiaG5lU2NcIik7QihmdW5jdGlvbigpe2UmJihLLmFkZEV2ZW50TGlzdGVuZXIoXCJzY3JvbGxcIixiYiksZS5hZGRFdmVudExpc3RlbmVyKFwicmVzaXplXCIsYmIpKX0sXCJobmVBc2NcIikoKX1RYSYmSy5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIixmdW5jdGlvbigpe3ZhciBZPUsub3duZXJEb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIik7WS5zdHlsZS5vdmVyZmxvd1g9PT1cImF1dG9cIj9ZLnNjcm9sbExlZnQrPVFhOlkuc3R5bGUub3ZlcmZsb3dZPT09XCJhdXRvXCImJihZLnNjcm9sbFRvcCs9UWEpO1k9UWE8MD9cImNibGNcIjpcImNicmNcIjt2YXIgYmE9TWIoKTtKYiYmUGIoYmEsWSl9KTt2PXYuY2g7aWYoYWI9PTAmJnYmJnYubGVuZ3RoPjApe1I9ITE7Zm9yKHc9MDt3PHYubGVuZ3RoO3crKylDPWcodlt3XSksQyE9bnVsbCYmKFI9ITAsSy5hcHBlbmRDaGlsZChDKSk7aWYoIVIpcmV0dXJuIG51bGx9cmV0dXJuIFA/KHY9ZG9jdW1lbnQuY3JlYXRlRG9jdW1lbnRGcmFnbWVudCgpLHYuYXBwZW5kQ2hpbGQoSyksXG52LmFwcGVuZENoaWxkKFApLHYpOkt9ZD1kPT09dm9pZCAwPyExOmQ7ZT1lPT09dm9pZCAwP251bGw6ZTtmPWY9PT12b2lkIDA/W106Zjt2YXIgaD1TZihhLnMpLGs9YS5hdCxsPVtdLG09ISF6ZihjLGIsXCJjdGMuY290dFwiKSxwPSEhemYoYyxiLFwiY3RkXCIpLHI9e30sdD0oclsxXT1bXSxyWzJdPVtdLHIpO3I9XCJlXCIreWYrKzthPWcoYS5sfHx7fSxyLGYuam9pbihcIiBcIikpO2F8fChhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJzcGFuXCIpLGEuaWQ9cik7cmV0dXJue3Jvb3RFbGVtZW50OmEsbmU6bCxkZzpyfX1cbmZ1bmN0aW9uIFhmKGEsYil7ZnVuY3Rpb24gYyhwKXt2YXIgcj1wLnN0eWxlLndvcmRXcmFwLHQ9cC5zdHlsZS53aGl0ZVNwYWNlO3Auc3R5bGUud2hpdGVTcGFjZT1cIm5vd3JhcFwiO3Auc3R5bGUud29yZFdyYXA9XCJub3JtYWxcIjt2YXIgdj1wLm9mZnNldEhlaWdodDtwLnN0eWxlLndoaXRlU3BhY2U9dDtwLnN0eWxlLndvcmRXcmFwPXI7cmV0dXJuIHZ9ZnVuY3Rpb24gZChwLHIpe3ZhciB0PXAuY2hpbGRFbGVtZW50Q291bnQ9PTA7cj1yJiZwLmdldEF0dHJpYnV0ZShcImRhdGEtZHJvcFwiKT09XCJ0cnVlXCI7aWYodHx8cil0PXAucGFyZW50Tm9kZSx0LnJlbW92ZUNoaWxkKHApLHAuaWQhPWImJmQodCxyKX1hPWEucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLWxpbmVzXVwiKTtmb3IodmFyIGU9YS5sZW5ndGgtMTtlPj0wO2UtLSl7dmFyIGY9YVtlXSxnPWYucGFyZW50Tm9kZSxoPXBhcnNlSW50KGYuZ2V0QXR0cmlidXRlKFwiZGF0YS1saW5lc1wiKSwxMCksaz1wYXJzZUludChmLmdldEF0dHJpYnV0ZShcImRhdGEtdHJ1bmNhdGVcIiksXG4xMCk7aWYoaCE9MXx8ayE9MCl7dmFyIGw9Zi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSxtPWcuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7bD1tLmxlZnQ+bC5sZWZ0fHxtLnJpZ2h0PGwucmlnaHQ7ayE9PTB8fExmKCk/az09PTEmJihrPWg+MT9jKGYpOnZvaWQgMCwoaD09MT9mLm9mZnNldFdpZHRoPGYuc2Nyb2xsV2lkdGg6aD4xJiZmLm9mZnNldEhlaWdodC9rPmgpfHxsKSYmKGcucmVtb3ZlQ2hpbGQoZiksZChnLCEwKSk6KGc9YyhmKSwoaD4xJiZmLm9mZnNldEhlaWdodC9nPmh8fGwpJiZ4ZihmLChnKzEpKmgpKX19fWZ1bmN0aW9uIFlmKGEsYil7Yj11KGIpO2Zvcih2YXIgYz1iLm5leHQoKTshYy5kb25lO2M9Yi5uZXh0KCkpe3ZhciBkPWMudmFsdWU7Yz1hLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGQuSGUpO2Q9YS5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChkLnhmKTtjJiZkJiZCZihhLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYWRCbG9ja1wiKSxkLGMpfX07ZnVuY3Rpb24gWmYoYSl7YT1hfHx7fTtyZXR1cm4gRigkZihhLlZhLFwiZ29vZ05vQWRzXCIpKX1mdW5jdGlvbiAkZihhLGIpe3JldHVybiBGKCc8ZGl2IHN0eWxlPVwiZGlzcGxheTpub25lO1wiJysoYj8nIGlkPVwiXycrSShiKStcIl9cIitJKGEhPW51bGw/YTpcInVua25vd25fcHViSWRcIikrJ1wiJzpcIlwiKStcIj48L2Rpdj5cIil9O3ZhciBhZz0obmV3IERhdGUoXCIyMDI0LTAxLTAxVDAwOjAwOjAwWlwiKSkuZ2V0VGltZSgpO1xuZnVuY3Rpb24gYmcoYSl7dmFyIGI9YS51cmw7YT1hLmNhO3RoaXMuWGI9Yjt0aGlzLkNhPWE7dGhpcy5rYj0vWz8mXWNvPShbXFxkXSkvLmV4ZWMoYik7KHRoaXMuR2M9L1s/Jl1nY2xpZD0oW14mXSopLy5leGVjKGIpKSYmdGhpcy5HY1sxXSYmKHRoaXMuT2Q9dGhpcy5HY1sxXS50b1N0cmluZygpKTthPS9bPyZdZHNoPTEoJnwkKS8udGVzdChiKTt0aGlzLkRiPSFhJiYvWz8mXWFlPTEoJnwkKS8udGVzdChiKTt0aGlzLkViPSFhJiYvWz8mXWFlPTIoJnwkKS8udGVzdChiKTt0aGlzLm9hPS9bPyZdYWR1cmw9KFteJl0qKS8uZXhlYyhiKTt0aGlzLnVnPSFhJiYvWz8mXWFzcG09MSgmfCQpLy50ZXN0KGIpO2lmKHRoaXMub2EmJnRoaXMub2FbMV0pe3RyeXt2YXIgYz1kZWNvZGVVUklDb21wb25lbnQodGhpcy5vYVsxXSl9Y2F0Y2goZCl7Yz1udWxsfXRoaXMuZ2I9Y310aGlzLm9kPShuZXcgRGF0ZSkuZ2V0VGltZSgpLWFnfVxuZnVuY3Rpb24gY2coYSxiKXtiPWI9PT12b2lkIDA/MDpiO3ZhciBjPVwiJmFjdD0xXCI7Yj09PTA/Yys9XCImcmk9MVwiOmI9PT0xP2MrPVwiJnJpPTI0XCI6Yj09PTImJihjKz1cIiZyaT0yNVwiKTthLkRiJiZhLkNhJiYoYys9ZGcoYSkpO2EuRWImJihjKz1cIiZzdWlkPVwiK2Eub2QpO3JldHVybiBlZyhhLGMpfWZ1bmN0aW9uIGZnKGEsYil7aWYoYS5EYiYmYS5nYil7aWYoYj09MSlyZXR1cm4gYS5nYnx8XCJcIn1lbHNlIGlmKGEuRWIpe2lmKGI9PTEpcmV0dXJuIGVnKGEsXCImZGN0PTEmc3VpZD1cIithLm9kKTtpZihiPT0zKXJldHVybiBlZyhhLFwiJmRjdD0xJnN1aWQ9XCIrYS5vZCtcIiZyaT0yNlwiKX1lbHNlIHJldHVybiBhLlhiO3JldHVybiBiPT0yP2VnKGEsXCImcmk9MlwiKTplZyhhLFwiJnJpPTE2XCIpfWZ1bmN0aW9uIGVnKGEsYil7cmV0dXJuIGEub2E/YS5YYi5zbGljZSgwLGEub2EuaW5kZXgpK2IrYS5YYi5zbGljZShhLm9hLmluZGV4KTphLlhiK2J9XG5mdW5jdGlvbiBkZyhhKXthPWEuQ2E7dmFyIGI9ZW5jb2RlVVJJQ29tcG9uZW50LGM9XCJcIjthLnBsYXRmb3JtJiYoYys9XCImdWFwPVwiK2IoYS5wbGF0Zm9ybSkpO2EucGxhdGZvcm1WZXJzaW9uJiYoYys9XCImdWFwdj1cIitiKGEucGxhdGZvcm1WZXJzaW9uKSk7YS51YUZ1bGxWZXJzaW9uJiYoYys9XCImdWFmdj1cIitiKGEudWFGdWxsVmVyc2lvbikpO2EuYXJjaGl0ZWN0dXJlJiYoYys9XCImdWFhPVwiK2IoYS5hcmNoaXRlY3R1cmUpKTthLm1vZGVsJiYoYys9XCImdWFtPVwiK2IoYS5tb2RlbCkpO2EuYml0bmVzcyYmKGMrPVwiJnVhYj1cIitiKGEuYml0bmVzcykpO2EuZnVsbFZlcnNpb25MaXN0JiYoYys9XCImdWFmdmw9XCIrYihhLmZ1bGxWZXJzaW9uTGlzdC5tYXAoZnVuY3Rpb24oZCl7cmV0dXJuIGIoZC5icmFuZCkrXCI7XCIrYihkLnZlcnNpb24pfSkuam9pbihcInxcIikpKTt0eXBlb2YgYS53b3c2NCE9PVwidW5kZWZpbmVkXCImJihjKz1cIiZ1YXc9XCIrTnVtYmVyKGEud293NjQpKTtyZXR1cm4gY307dmFyIGdnPS9eKChtYXJrZXR8aXRtc3xpbnRlbnR8aXRtcy1hcHBzcyk6XFwvXFwvKS9pO2Z1bmN0aW9uIGhnKCl7dmFyIGE9dGhpczt2YXIgYj17fS5ZZzt0aGlzLkNhPW51bGw7YiYmbmF2aWdhdG9yLnVzZXJBZ2VudERhdGEmJm5hdmlnYXRvci51c2VyQWdlbnREYXRhLmdldEhpZ2hFbnRyb3B5VmFsdWVzJiYoYj1uYXZpZ2F0b3IudXNlckFnZW50RGF0YS5nZXRIaWdoRW50cm9weVZhbHVlcyhcInBsYXRmb3JtIHBsYXRmb3JtVmVyc2lvbiB1YUZ1bGxWZXJzaW9uIGFyY2hpdGVjdHVyZSBtb2RlbCBiaXRuZXNzIGZ1bGxWZXJzaW9uTGlzdCB3b3c2NFwiLnNwbGl0KFwiIFwiKSkpJiZiLnRoZW4oZnVuY3Rpb24oYyl7YS5DYT1jfSl9XG5oZy5wcm90b3R5cGUuaGFuZGxlPWZ1bmN0aW9uKGEpe3ZhciBiPWEuaGFzQXR0cmlidXRlKFwiZGF0YS1vaHJlZlwiKSxjPWI/YS5nZXRBdHRyaWJ1dGUoXCJkYXRhLW9ocmVmXCIpOmEuaHJlZjtifHxhLnNldEF0dHJpYnV0ZShcImRhdGEtb2hyZWZcIixjKTthOmlmKGI9bmV3IGJnKHt1cmw6YyxjYTp7fS5jYX0pLGIua2IhPT1udWxsKXt2YXIgZD1iLmtiJiZiLmtiWzFdP2Iua2JbMV06XCJcIjtpZihkPT09XCIxXCIpZD1cImh0dHBzOi8vd3d3Lmdvb2dsZWFkc2VydmljZXMuY29tL3BhZ2VhZC9jb252ZXJzaW9uLzE2NTIxNTMwNDYwLz9nYWRfc291cmNlPTEmYWR2aWV3X3R5cGU9M1wiO2Vsc2UgaWYoZD09PVwiMlwiKWQ9XCJodHRwczovL3d3dy5nb29nbGUuY29tL3BhZ2VhZC8xcC1jb252ZXJzaW9uLzE2NTIxNTMwNDYwLz9nYWRfc291cmNlPTEmYWR2aWV3X3R5cGU9NVwiO2Vsc2UgYnJlYWsgYTtiPWQrKGIuT2Q/XCImYWR2aWV3X2djbGlkPVwiK2IuT2Q6XCJcIik7bmF2aWdhdG9yLnNlbmRCZWFjb24oYixcIlwiKXx8XG5mZXRjaChiLHttZXRob2Q6XCJHRVRcIixrZWVwYWxpdmU6ITAsbW9kZTpcIm5vLWNvcnNcIn0pfWI9e2NhOnRoaXMuQ2F9O2I9KGI9PT12b2lkIDA/e306YikuY2E7b2QoYyxcImFzZVwiKT09PVwiNVwiJiZpZygpPyhiPW5ldyBiZyh7dXJsOmMsY2E6Yn0pLGIuRGImJmIuZ2J8fGIuRWI/KGEuYXR0cmlidXRpb25TcmM9Y2coYiwyKSxiPWZnKGIsMykpOmI9XCJcIik6Yj1cIlwiO2J8fGEuaGFzQXR0cmlidXRlKFwiYXR0cmlidXRpb25zcmNcIikmJmlnKCl8fChiPXtjYTp0aGlzLkNhfSxiPW5ldyBiZyh7dXJsOmMsY2E6KGI9PT12b2lkIDA/e306YikuY2F9KSxiLkRiJiZiLmdifHxiLkViP2IudWc/KGZldGNoKGNnKGIsMSkse21ldGhvZDpcIkdFVFwiLGtlZXBhbGl2ZTohMCxtb2RlOlwibm8tY29yc1wiLHJlZGlyZWN0OlwiZm9sbG93XCJ9KSxiPWZnKGIsMSkpOmI9bmF2aWdhdG9yLnNlbmRCZWFjb24/bmF2aWdhdG9yLnNlbmRCZWFjb24oY2coYiwwKSxcIlwiKT9mZyhiLDEpOmZnKGIsMik6ZmcoYiwwKTpiPWMpO2ImJlxuKGI9YiBpbnN0YW5jZW9mIGVifHwhZ2cudGVzdChiKT9iOm5ldyBlYihiKSxiIT09YyYmKGM9aGIoYiksYyE9PXZvaWQgMCYmKGEuaHJlZj1jKSkpfTtmdW5jdGlvbiBpZygpe3ZhciBhO3JldHVybiEoKGE9ZG9jdW1lbnQuZmVhdHVyZVBvbGljeSk9PW51bGx8fCFhLmFsbG93ZWRGZWF0dXJlcygpLmluY2x1ZGVzKFwiYXR0cmlidXRpb24tcmVwb3J0aW5nXCIpKX07dmFyIGpnPUIoZnVuY3Rpb24oYSl7KG5ldyBoZykuaGFuZGxlKGEpfSxcIm1EU1wiKTt2YXIga2c9LyhbP3wmXXsxfW5tPSkoW1xcZF17MSx9KS8sbGc9LyhcXD98JiljbGt0PS0/W1xcZF0qL2csbWc9LyhcXD98JiliZz1bXiZdKi9nLG5nPS8oXFw/fCYpbng9LT9bXFxkXSsvZyxvZz0vKFxcP3wmKW55PS0/W1xcZF0rL2c7ZnVuY3Rpb24gcGcoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7Zm9yKHZhciBiPTA7YjxhLmxlbmd0aDtiKyspe3ZhciBjPWFbYl07aWYoYy5JYSl7dmFyIGQ9Yy5lbGVtZW50LmhyZWYsZT1kLm1hdGNoKGtnKTtlP2UubGVuZ3RoPT0zJiYoZD1kLnJlcGxhY2Uoa2csZVsxXSsocGFyc2VJbnQoZVsyXSwxMCkrMSkpKTpkKz0oZC5pbmRleE9mKFwiP1wiKT09LTE/XCI/XCI6XCImXCIpK1wibm09MVwiO3FnKGMsZCl9fX19ZnVuY3Rpb24gcmcoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7aWYoYS5SYyl7dmFyIGI9XCImY2xrdD1cIisoKG5ldyBEYXRlKS5nZXRUaW1lKCktYS5SYyksYz1hLmVsZW1lbnQuaHJlZjtjPWMucmVwbGFjZShsZyxcIlwiKTtxZyhhLGMrYil9fX1cbmZ1bmN0aW9uIHNnKGEpe3JldHVybiBmdW5jdGlvbihiKXthLlJjPShuZXcgRGF0ZSkuZ2V0VGltZSgpO3ZhciBjPWlkKGEuZWxlbWVudCksZD1NYXRoLnJvdW5kKGIuY2xpZW50WC1jLngpO2I9TWF0aC5yb3VuZChiLmNsaWVudFktYy55KTtjPWEuZWxlbWVudC5ocmVmO2M9Yy5yZXBsYWNlKG5nLFwiXCIpO2M9Yy5yZXBsYWNlKG9nLFwiXCIpO3FnKGEsYysoXCImbng9XCIrZCkrKFwiJm55PVwiK2IpKX19ZnVuY3Rpb24gdGcoYSl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGI9YS5lbGVtZW50Lm93bmVyRG9jdW1lbnQ7aWYoYj0oYi5kZWZhdWx0Vmlld3x8Yi5wYXJlbnRXaW5kb3cpLmNzYWJnKXtiPVwiJmJnPVwiK2IuSWMoKTt2YXIgYz1hLmVsZW1lbnQuaHJlZjtjPWMucmVwbGFjZShtZyxcIlwiKTtxZyhhLGMrYil9fX1cbmZ1bmN0aW9uIHVnKGEpe2EuSWEmJihhLmVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlb3ZlclwiLHBnKFthXSkpLGEuZWxlbWVudC5hZGRFdmVudExpc3RlbmVyKFwibW91c2Vkb3duXCIsc2coYSkpKTt2YXIgYj1yZyhhKSxjPXRnKGEpO2tmKGEuZWxlbWVudCxmdW5jdGlvbihkKXt1YyhcIi5hQ1NcIixEYXRlLm5vdygpKTt0YygpO2EuSWEmJihiKGQpLGMoZCkpO3RyeXtqZyhhLmVsZW1lbnQpfWNhdGNoKGUpe319KX1mdW5jdGlvbiB2ZyhhLGIsYyl7cmV0dXJuIGEuaW5kZXhPZihiKT09LTEmJmEubGVuZ3RoK2IubGVuZ3RoPDE2MzM0JiYoYSs9YitlbmNvZGVVUklDb21wb25lbnQoYyksYS5sZW5ndGg+MTYzMzQpP2Euc3Vic3RyaW5nKDAsMTYzMzQpOmF9XG5mdW5jdGlvbiB4ZyhhLGIpe0pkKGEuZWxlbWVudCxcIm1vdXNlZG93blwiLGZ1bmN0aW9uKCl7dHJ5e3ZhciBjPVJkKGIsITApO3ZhciBkPVJkKGIsITEpfWNhdGNoKGYpe31pZihjJiZkKXt2YXIgZT1hLmVsZW1lbnQuaHJlZjtlPXZnKGUsXCImaXM9XCIsW2QsY10uam9pbihcInhcIikpO3FnKGEsZSl9fSl9XG5mdW5jdGlvbiB5ZyhhLGIsYyl7Zm9yKHZhciBkPTA7ZDxhLmxlbmd0aDtkKyspe3ZhciBlPWFbZF07dWcoZSk7aWYoZS5JYSYmZS5HZCE9PXZvaWQgMCl7dmFyIGY9XCImbmI9XCIrKGUuR2R8fFwiXCIpLGc9ZS5lbGVtZW50LmhyZWY7Zz1nLnJlcGxhY2UoemcsXCJcIik7Zz1nLmluZGV4T2YoXCI/XCIpPT0tMT9nK2YucmVwbGFjZSgvXiYvLFwiP1wiKTpnK2Y7cWcoZSxnKX1lLklhJiYoeGcoZSxjKSxmPU5hKCkuZGF0YS5ydXx8bnVsbCkmJihnPWUuZWxlbWVudC5ocmVmLGc9dmcoZyxcIiZydXJsPVwiLGYpLHFnKGUsZykpfWEubGVuZ3RoPjAmJmIuYWRkRXZlbnRMaXN0ZW5lcihcIm1vdXNlb3ZlclwiLHBnKGEpKX07ZnVuY3Rpb24gQWcoYSxiKXt0aGlzLkdkPWI7dGhpcy5JYT0hMDt0aGlzLmVsZW1lbnQ9YTt0aGlzLlJjPW51bGx9ZnVuY3Rpb24gcWcoYSxiKXtiLmxlbmd0aD4xNjM4NHx8KGE9YS5lbGVtZW50LGI9aGIoYiksYiE9PXZvaWQgMCYmKGEuaHJlZj1iKSl9dmFyIHpnPS9bJlxcP11uYj1cXGQvO3ZhciBCZz17bnQ6MCxzazpcInNpMTI4XCJ9LENnPXtudDowLHNrOlwic2kxNzdcIn07ZnVuY3Rpb24gRGcoYSl7dmFyIGI9W107YT11KGEuc3x8W10pO2Zvcih2YXIgYz1hLm5leHQoKTshYy5kb25lO2M9YS5uZXh0KCkpYz1jLnZhbHVlLGMuc2shPVwic2kxMjhcIiYmYy5zayE9XCJzaTE3N1wifHwhYy5yfHwoYy5yLmJhYz9iLnB1c2goYyk6Yy5yLmgmJiFjLnIuaC5pbmNsdWRlcyhcIiVcIikmJnBhcnNlSW50KGMuci5oLDEwKT4xJiZiLnB1c2goYykpO3JldHVybiBiLmxlbmd0aD09PTE/YlswXTpiLmZpbmQoZnVuY3Rpb24oZCl7cmV0dXJuIGQuc2s9PT1cInNpMTI4XCJ9KXx8bnVsbH1cbmZ1bmN0aW9uIEVnKGEsYixjLGQsZSxmLGcpe2Y9Zj09PXZvaWQgMD9bXTpmO2c9Zz09PXZvaWQgMD9udWxsOmc7dGhpcy54ZT15Zzt0aGlzLm5hPVtdO3RoaXMuZWM9W107dGhpcy5lYj1udWxsO3RoaXMuTT1lO3RoaXMubmc9YWYodmYoYikpO3ZhciBoPURnKGIpO2ghPW51bGwmJih0aGlzLmViPVdmKHtzOltoXSxsOmguc2s9PT1cInNpMTI4XCI/Qmc6Q2d9LHt9LHt9KS5yb290RWxlbWVudCx0aGlzLmViLnJlbW92ZUF0dHJpYnV0ZShcImlkXCIpKTthPXUoYSk7Zm9yKHZhciBrPWEubmV4dCgpOyFrLmRvbmU7az1hLm5leHQoKSlrPWsudmFsdWUsdGhpcy5uYS5wdXNoKFdmKGIsYyxrW2suYWR0eXBlXSxkLGUsW1wiYl9cIl0pKTt0aGlzLnZkPWIuYXQ7dGhpcy5XZj1jO3RoaXMuTmY9ZDt0aGlzLmpjPWc7YTppZihkPWYsdGhpcy5lYilpZihoPSgoaHx8e30pLnJ8fHt9KS5yc2kpYj1oO2Vsc2V7Yz1oPSExO2lmKHRoaXMudmQ9PTQpZm9yKGI9dShiLnN8fFtdKSxkPWIubmV4dCgpOyFkLmRvbmU7ZD1cbmIubmV4dCgpKWlmKGQ9ZC52YWx1ZSxkLnNrPT09XCJzaTEwMVwiKXtpZihkLnIudyE9PVwiMTAwJVwiKXtiPVtdO2JyZWFrIGF9fWVsc2V7aWYoZC5zaz09PVwic2kxNDRcIil7Yz1oPSEwO2JyZWFrfX1lbHNlIGg9ZC5pbmNsdWRlcygyKSxjPWQuaW5jbHVkZXMoMyk7Yj1bXTtmb3IoZD0wO2Q8dGhpcy5uYS5sZW5ndGgtMTtkKyspYi5wdXNoKGQpO2gmJmIudW5zaGlmdCgtMSk7YyYmYi5wdXNoKHRoaXMubmEubGVuZ3RoLTEpfWVsc2UgYj1bXTt0aGlzLmRlPWJ9XG5mdW5jdGlvbiBGZyhhLGIpe3ZhciBjPWEuTS5kb2N1bWVudC5oZWFkLGQ9Yi5wYXJlbnROb2RlO2MuYXBwZW5kQ2hpbGQoYS5uZyk7dmFyIGU9YjthLmpjJiYoYy5hcHBlbmRDaGlsZChhZih2ZihhLmpjKSkpLGU9V2YoYS5qYyxhLldmLHt9LGEuTmYsYS5NKSxjPWUucm9vdEVsZW1lbnQsYS5lYz1lLm5lLGQucmVwbGFjZUNoaWxkKGMsYiksZT1kLnF1ZXJ5U2VsZWN0b3IoXCIjYWRCbG9ja1wiKSxlLnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIixkb2N1bWVudC50aXRsZSksZS5zZXRBdHRyaWJ1dGUoXCJyb2xlXCIsXCJyZWdpb25cIikpO2I9MDtmb3IoZD0tMTtkPGEubmEubGVuZ3RoO2QrKylkPj0wJiZlLmFwcGVuZENoaWxkKGEubmFbZF0ucm9vdEVsZW1lbnQpLGI8YS5kZS5sZW5ndGgmJmEuZGVbYl09PT1kJiYoZS5hcHBlbmRDaGlsZChhLmViLmNsb25lTm9kZSghMCkpLGIrKyk7YT1hPXtWYTpPYShOYSgpKSxjYzphLnZkfTtiPWEuVmE7ZD1cIlwiO3N3aXRjaChhLmNjKXtjYXNlIDE6ZCs9XG4kZihiLFwiZ29vZ0FGU1wiKTticmVhaztjYXNlIDI6ZCs9JGYoYixcImdvb2dBRlNoUExBc1wiKTticmVhaztkZWZhdWx0OmQrPSRmKCl9YT1GKGQpO2E9YWYoYSk7ZS5hcHBlbmRDaGlsZChhKTthLnNldEF0dHJpYnV0ZShcImRhdGEtcmVuZGVyLWNvbXBsZXRlXCIsITApO3JldHVybiBlfVxuRWcucHJvdG90eXBlLnJlbmRlcj1mdW5jdGlvbihhKXt2YXIgYj10aGlzLGM9bnVsbCxkPUtkKCk7aWYoXCJNdXRhdGlvbk9ic2VydmVyXCJpbiB3aW5kb3cpcmV0dXJuKG5ldyBNdXRhdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGUsZil7ZT11KGUpO2Zvcih2YXIgZz1lLm5leHQoKTshZy5kb25lO2c9ZS5uZXh0KCkpZy52YWx1ZS5hdHRyaWJ1dGVOYW1lPT1cImRhdGEtcmVuZGVyLWNvbXBsZXRlXCImJihkLnJlc29sdmUoYyksZi5kaXNjb25uZWN0KCkpfSkpLm9ic2VydmUoYS5wYXJlbnRFbGVtZW50LHtzdWJ0cmVlOiEwLGF0dHJpYnV0ZXM6ITAsYXR0cmlidXRlRmlsdGVyOltcImRhdGEtcmVuZGVyLWNvbXBsZXRlXCJdfSksYz1GZyh0aGlzLGEpLGQucHJvbWlzZS50aGVuKGZ1bmN0aW9uKGUpe3JldHVybiBMZChiLk0sZSl9KS50aGVuKGZ1bmN0aW9uKGUpe0dnKGIsZSxiLk0pO3JldHVybiBlfSk7Yz1GZyh0aGlzLGEpO3RoaXMuTS5zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7R2coYixjLGIuTSk7XG5OYSgpLmRhdGEuaWN2MiYmXCJyZXF1ZXN0QW5pbWF0aW9uRnJhbWVcImluIGIuTT9iLk0ucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7ZC5yZXNvbHZlKGMpfSk6ZC5yZXNvbHZlKGMpfSwwKTtyZXR1cm4gZC5wcm9taXNlfTtcbmZ1bmN0aW9uIEdnKGEsYixjKXtmb3IodmFyIGQ9W10sZT11KGIucXVlcnlTZWxlY3RvckFsbChcImFbaHJlZl1cIikpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKWlmKGY9Zi52YWx1ZSxmLmdldEF0dHJpYnV0ZShcImRhdGEtbm90cmFja1wiKSE9XCJ0cnVlXCIpe3ZhciBnPWYuZ2V0QXR0cmlidXRlKFwiZGF0YS1uYlwiKXx8dm9pZCAwO2QucHVzaChuZXcgQWcoZixnKSl9ZT11KGIucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLXBpbmdiYWNrLXR5cGVdXCIpKTtmPWUubmV4dCgpO2ZvcihnPXt9OyFmLmRvbmU7Zz17eWM6dm9pZCAwfSxmPWUubmV4dCgpKWcueWM9Zi52YWx1ZSxnLnljLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLGZ1bmN0aW9uKGgpe3JldHVybiBmdW5jdGlvbigpe1ViKE1iKCksaC55Yy5nZXRBdHRyaWJ1dGUoXCJkYXRhLXBpbmdiYWNrLXR5cGVcIikpfX0oZykpO2U9dShiLnF1ZXJ5U2VsZWN0b3JBbGwoXCIuYl9cIikpO2ZvcihmPWUubmV4dCgpOyFmLmRvbmU7Zj1lLm5leHQoKSlmLnZhbHVlLnNldEF0dHJpYnV0ZShcImRhdGEtYmdcIixcblwidHJ1ZVwiKTthLnhlKGQsYixjLmRvY3VtZW50LmJvZHkpO2Q9dShhLm5hKTtmb3IoZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpZT1lLnZhbHVlLFlmKGMsZS5uZXx8W10pLFhmKGIsZS5kZyk7YS5lYy5sZW5ndGg+MCYmWWYoYyxhLmVjKX07dmFyIElnPUIoZnVuY3Rpb24oYSxiLGMsZCxlLGYpe2M9Yz09PXZvaWQgMD8hMTpjO2Q9ZD09PXZvaWQgMD95ZzpkO2U9ZT09PXZvaWQgMD9CZjplO2Y9Zj09PXZvaWQgMD9YZjpmO2Zvcih2YXIgZz11KGIucXVlcnlTZWxlY3RvckFsbChcIltkYXRhLXd0YS1idWJibGVdXCIpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSl7aD1oLnZhbHVlO3ZhciBrPWguZ2V0QXR0cmlidXRlKFwiZGF0YS13dGEtYnViYmxlXCIpO2lmKGspe3ZhciBsPWEuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoayk7aWYoIWwpdGhyb3cgRXJyb3IoXCJDb3VsZCBub3QgZmluZCBlbGVtZW50IHdpdGggaWQ6IFwiK2spO2UoYixoLGwpfX1lPXUoYi5xdWVyeVNlbGVjdG9yQWxsKFwiW2RhdGEtcGluZ2JhY2stdHlwZV1cIikpO2c9ZS5uZXh0KCk7Zm9yKGg9e307IWcuZG9uZTtoPXt6Yzp2b2lkIDB9LGc9ZS5uZXh0KCkpaC56Yz1nLnZhbHVlLGguemMuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsZnVuY3Rpb24obSl7cmV0dXJuIGZ1bmN0aW9uKCl7VWIoTWIoKSxcbm0uemMuZ2V0QXR0cmlidXRlKFwiZGF0YS1waW5nYmFjay10eXBlXCIpKX19KGgpKTtlPXUoYi5xdWVyeVNlbGVjdG9yQWxsKFwiW2RhdGEtc2V0LXRhcmdldF1cIikpO2ZvcihnPWUubmV4dCgpOyFnLmRvbmU7Zz1lLm5leHQoKSlnPWcudmFsdWUsYyYmKGcudGFyZ2V0PVwiX2JsYW5rXCIpLGcucmVtb3ZlQXR0cmlidXRlKFwiZGF0YS1zZXQtdGFyZ2V0XCIpO2M9dShiLnF1ZXJ5U2VsZWN0b3JBbGwoXCIuY2xpY2t0cmFja2VkQWRfanNcIikpO2ZvcihlPWMubmV4dCgpOyFlLmRvbmU7ZT1jLm5leHQoKSllPWUudmFsdWUsZS5zZXRBdHRyaWJ1dGUoXCJkYXRhLWJnXCIsXCJ0cnVlXCIpLGYoYixlLmlkKTtmPVtdO2M9dShiLnF1ZXJ5U2VsZWN0b3JBbGwoXCJhW2hyZWZdXCIpKTtmb3IoZT1jLm5leHQoKTshZS5kb25lO2U9Yy5uZXh0KCkpZT1lLnZhbHVlLGUuZ2V0QXR0cmlidXRlKFwiZGF0YS1ub3RyYWNrXCIpIT09XCJ0cnVlXCImJihnPWUuZ2V0QXR0cmlidXRlKFwiZGF0YS1uYlwiKXx8dm9pZCAwLGYucHVzaChuZXcgQWcoZSxcbmcpKSk7ZChmLGIsYik7SGcoYSxiKX0sXCJhUFJTXCIpLEhnPUIoZnVuY3Rpb24oYSxiKXt2YXIgYz1iLnF1ZXJ5U2VsZWN0b3JBbGwoXCJbZGF0YS1hZC1jb250YWluZXJdXCIpO2lmKCEoYy5sZW5ndGg8MSkpe3ZhciBkPWNbMF0sZT1iLnF1ZXJ5U2VsZWN0b3JBbGwoJ1tkYXRhLWhpZGUtbm9kZS1ldmVudD1cIlNDUk9MTF9CRUdJTlwiXScpLGY9Yi5xdWVyeVNlbGVjdG9yQWxsKCdbZGF0YS1oaWRlLW5vZGUtZXZlbnQ9XCJTQ1JPTExfRU5EXCJdJyk7Yz1lLmxlbmd0aD4wfHxmLmxlbmd0aD4wO3ZhciBnPWZ1bmN0aW9uKCl7Zm9yKHZhciBrPU1hdGguYWJzKE1hdGgucm91bmQoZC5zY3JvbGxMZWZ0KSksbD1NYXRoLnJvdW5kKGQuc2Nyb2xsVG9wKSxtPXUoZSkscD1tLm5leHQoKTshcC5kb25lO3A9bS5uZXh0KCkpe3A9cC52YWx1ZTt2YXIgcj0hMTtkLnN0eWxlLm92ZXJmbG93WD09PVwiYXV0b1wiP3I9ayE9PTA6ZC5zdHlsZS5vdmVyZmxvd1k9PT1cImF1dG9cIiYmKHI9bCE9PTApO3Auc3R5bGUudmlzaWJpbGl0eT1cbnI/XCJ2aXNpYmxlXCI6XCJoaWRkZW5cIn1tPXUoZik7Zm9yKHA9bS5uZXh0KCk7IXAuZG9uZTtwPW0ubmV4dCgpKXA9cC52YWx1ZSxyPSEwLGQuc3R5bGUub3ZlcmZsb3dYPT09XCJhdXRvXCI/cj1rIT09ZC5zY3JvbGxXaWR0aC1kLmNsaWVudFdpZHRoOmQuc3R5bGUub3ZlcmZsb3dZPT09XCJhdXRvXCImJihyPWwhPT1kLnNjcm9sbEhlaWdodC1kLmNsaWVudEhlaWdodCkscC5zdHlsZS52aXNpYmlsaXR5PXI/XCJ2aXNpYmxlXCI6XCJoaWRkZW5cIn07YyYmKGQuYWRkRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLGcpLHR5cGVvZiBSZXNpemVPYnNlcnZlcj09PVwiZnVuY3Rpb25cIj8obmV3IFJlc2l6ZU9ic2VydmVyKGcpKS5vYnNlcnZlKGQpOmEuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLGcpKTthPXUoYi5xdWVyeVNlbGVjdG9yQWxsKFwiW2RhdGEtc2Nyb2xsLWRpc3BsYWNlbWVudF1cIikpO3ZhciBoPWEubmV4dCgpO2ZvcihiPXt9OyFoLmRvbmU7Yj17UWE6dm9pZCAwLEJhOnZvaWQgMH0saD1hLm5leHQoKSlpZihoPVxuaC52YWx1ZSxiLlFhPWguZ2V0QXR0cmlidXRlKFwiZGF0YS1zY3JvbGwtZGlzcGxhY2VtZW50XCIpLGIuUWEpe2IuQmE9TnVtYmVyKGIuUWEpO2lmKGlzTmFOKGIuQmEpKXRocm93IEVycm9yKFwiU2Nyb2xsIERpc3BsYWNlbWVudCBpcyBub3QgYSBudW1iZXI6IFwiK2IuUWEpO2guYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsZnVuY3Rpb24oayl7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIGw9ZC5jbGllbnRXaWR0aCxtPU51bWJlcihrLlFhKSxwPU1hdGguYWJzKGQuc2Nyb2xsTGVmdCk9PT1kLnNjcm9sbFdpZHRoLWwscj1NYXRoLmFicyhtKTttPW08MDt2YXIgdD1OdW1iZXIoS2EoKS5kYXRhLnBjc2JwfHxcIjUwXCIpO3ZhciB2PU51bWJlcihLYSgpLmRhdGEucGNzYnN8fFwiNTBcIik7aXNOYU4odikmJih2PTUwKTtpc05hTih0KSYmKHQ9NTApO3Q9dit0O2w9TWF0aC5mbG9vcigocD9sLXQ6bCkvcikqcjt2PW0/LWw6bDtwJiYodis9bT8tdDp0KTtsPHImJih2PW0/LXI6cik7ay5CYT12O2Quc3R5bGUub3ZlcmZsb3dYPT09XG5cImF1dG9cIj9kLnNjcm9sbExlZnQrPWsuQmE6ZC5zdHlsZS5vdmVyZmxvd1k9PT1cImF1dG9cIiYmKGQuc2Nyb2xsVG9wKz1rLkJhKTtwPWsuQmE8MD9cImNibGNcIjpcImNicmNcIjtyPU1iKCk7SmImJlBiKHIscCl9fShiKSl9YyYmZygpfX0sXCJhU0hcIik7ZnVuY3Rpb24gSmcoYSl7dmFyIGI9YTtyZXR1cm4gZnVuY3Rpb24oKXtpZihiKXt2YXIgYz1iO2I9bnVsbDtjKCl9fX07ZnVuY3Rpb24gS2coYSxiLGMpe2EuYWRkRXZlbnRMaXN0ZW5lciYmYS5hZGRFdmVudExpc3RlbmVyKGIsYywhMSl9ZnVuY3Rpb24gTGcoYSxiLGMpe2EucmVtb3ZlRXZlbnRMaXN0ZW5lciYmYS5yZW1vdmVFdmVudExpc3RlbmVyKGIsYywhMSl9O2Z1bmN0aW9uIE1nKGEsYil7aWYoYSlmb3IodmFyIGMgaW4gYSlPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoYSxjKSYmYihhW2NdLGMsYSl9ZnVuY3Rpb24gTmcoYSxiKXtmb3IodmFyIGM9MDtjPDUwOysrYyl7dHJ5e3ZhciBkPSEoIWEuZnJhbWVzfHwhYS5mcmFtZXNbYl0pfWNhdGNoKGcpe2Q9ITF9aWYoZClyZXR1cm4gYTthOnt0cnl7dmFyIGU9YS5wYXJlbnQ7aWYoZSYmZSE9YSl7dmFyIGY9ZTticmVhayBhfX1jYXRjaChnKXt9Zj1udWxsfWlmKCEoYT1mKSlicmVha31yZXR1cm4gbnVsbH1mdW5jdGlvbiBPZyhhKXthPWE9PT12b2lkIDA/ZG9jdW1lbnQ6YTtyZXR1cm4gYS5jcmVhdGVFbGVtZW50KFwiaW1nXCIpfTtmdW5jdGlvbiBQZyhhLGIsYyl7Yz1jPT09dm9pZCAwP2RvY3VtZW50OmM7dmFyIGQ9WWMoYykuY3JlYXRlRWxlbWVudChcIlNDUklQVFwiKTtkLnR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIjtiJiYoZC5vbnJlYWR5c3RhdGVjaGFuZ2UhPT12b2lkIDA/ZC5vbnJlYWR5c3RhdGVjaGFuZ2U9ZnVuY3Rpb24oKXtpZihkLnJlYWR5U3RhdGU9PVwiY29tcGxldGVcInx8ZC5yZWFkeVN0YXRlPT1cImxvYWRlZFwiKXRyeXtiJiZiKCl9Y2F0Y2goZil7fX06ZC5vbmxvYWQ9Yik7bWIoZCxjYihhPT09bnVsbD9cIm51bGxcIjphPT09dm9pZCAwP1widW5kZWZpbmVkXCI6YSkpO3ZhciBlPWMuZ2V0RWxlbWVudHNCeVRhZ05hbWUoXCJoZWFkXCIpWzBdO2lmKGUpdHJ5e3lhLnNldFRpbWVvdXQoZnVuY3Rpb24oKXtlLmFwcGVuZENoaWxkKGQpfSwwKX1jYXRjaChmKXt9fTtmdW5jdGlvbiBRZyhhLGIsYyl7dmFyIGQ9dGhpczt0aGlzLm1nPWI7dGhpcy5kZj1jO3RoaXMuaGE9XCIwXCI7dGhpcy5EZD1udWxsO3RoaXMuTT1hO3RoaXMudGE9bnVsbDthJiZhLmRvY3VtZW50JiZhLmRvY3VtZW50LnJlYWR5U3RhdGU9PT1cImNvbXBsZXRlXCI/dGhpcy5vYigpOkpkKGEsXCJsb2FkXCIsZnVuY3Rpb24oKXtyZXR1cm4gZC5vYigpfSl9bj1RZy5wcm90b3R5cGU7XG5uLm9iPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcztpZighdGhpcy50YSl7dmFyIGI9KG5ldyBaYyh0aGlzLk0uZG9jdW1lbnQpKS5jcmVhdGVFbGVtZW50KFwiSUZSQU1FXCIpO2IuZnJhbWVCb3JkZXI9XCIwXCI7Yi5zdHlsZS5oZWlnaHQ9MDtiLnN0eWxlLndpZHRoPTA7Yi5zdHlsZS5wb3NpdGlvbj1cImFic29sdXRlXCI7dGhpcy50YT1iO3RoaXMuTS5kb2N1bWVudC5ib2R5JiYodGhpcy5NLmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoYiksdGhpcy50YS5jb250ZW50RG9jdW1lbnQ/dGhpcy5RYigpOkpkKHRoaXMudGEsXCJsb2FkXCIsZnVuY3Rpb24oKXtyZXR1cm4gYS5RYigpfSkpfX07XG5uLlFiPWZ1bmN0aW9uKCl7dmFyIGE9dGhpcyxiPXRoaXMudGE7YiYmKGI9Yi5jb250ZW50RG9jdW1lbnQ/Yi5jb250ZW50RG9jdW1lbnQ6Yi5jb250ZW50V2luZG93P2IuY29udGVudFdpbmRvdy5kb2N1bWVudDpudWxsKSYmKHRoaXMuaGE9XCIxXCIsYi5vcGVuKCksdGIoYiksYi5jbG9zZSgpLFBnKHRoaXMubWcsZnVuY3Rpb24oKXtyZXR1cm4gYS5uYygpfSxiKSl9O24ubmM9ZnVuY3Rpb24oKXt2YXIgYT10aGlzLnRhO2lmKGEpaWYoYT1hLmNvbnRlbnRXaW5kb3csdGhpcy5oYT1cIlwiLGEuYm90Z3VhcmQpaWYoYT1hLmJvdGd1YXJkLmJnKXRyeXt0aGlzLkRkPW5ldyBhKHRoaXMuZGYpfWNhdGNoKGIpe3RoaXMuaGE9XCI1XCJ9ZWxzZSB0aGlzLmhhPVwiM1wiO2Vsc2UgdGhpcy5oYT1cIjJcIn07XG5uLkljPWZ1bmN0aW9uKCl7aWYodGhpcy5oYSlyZXR1cm4gdGhpcy5oYTt2YXIgYT10aGlzLkRkO2lmKCFhKXJldHVyblwiNVwiO2lmKCFhLmludm9rZSlyZXR1cm5cIjRcIjt2YXIgYj1cIlwiO3RyeXthLmludm9rZShmdW5jdGlvbihjKXtiPWN9KX1jYXRjaChjKXtyZXR1cm5cIjZcIn1yZXR1cm4gdHlwZW9mIGIhPT1cInN0cmluZ1wifHxiLmxlbmd0aD09MD9cIjZcIjpiLmxlbmd0aDwzP1wiN1wiOmIubGVuZ3RoPjI1NTA/XCI4XCI6Yn07bi5vYj16KFFnLnByb3RvdHlwZS5vYixcIkJHY0lcIik7bi5RYj16KFFnLnByb3RvdHlwZS5RYixcIkJHcElcIik7bi5uYz16KFFnLnByb3RvdHlwZS5uYyxcIkJHY0JWXCIpO24uSWM9eihRZy5wcm90b3R5cGUuSWMsXCJCR2dCUlwiKTtmdW5jdGlvbiBSZyhhKXt2YXIgYj17fTthPXUoYSk7Zm9yKHZhciBjPWEubmV4dCgpOyFjLmRvbmU7Yz1hLm5leHQoKSl7Yz1jLnZhbHVlO3ZhciBkPWMuYXQ7YltkXT1iW2RdfHx7fTtpZihjLmMpe2JbZF0uY29udGFpbmVyTWFwPWJbZF0uY29udGFpbmVyTWFwfHx7fTtmb3IodmFyIGU9dShjLmMpLGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKWJbZF0uY29udGFpbmVyTWFwW2YudmFsdWVdPWN9ZWxzZSBiW2RdW1wiZGVmYXVsdFwiXT1jfXRoaXMucGQ9Yn1mdW5jdGlvbiBTZyhhLGIsYyl7dmFyIGQ9VGdbYl07aWYoIWEucGRbZF0pcmV0dXJuIG51bGw7Yj1hLnBkW2RdW1wiZGVmYXVsdFwiXTtyZXR1cm4oYT1hLnBkW2RdLmNvbnRhaW5lck1hcCk/YVtjXXx8YjpifXZhciBVZz17fSxUZz0oVWdbMF09MSxVZ1szXT0yLFVnWzJdPTQsVWcpO3ZhciBWZz1CKGZ1bmN0aW9uKGEpe2lmKCFhKXJldHVybnt9O3ZhciBiPXt9O2E9dShhKTtmb3IodmFyIGM9YS5uZXh0KCk7IWMuZG9uZTtjPWEubmV4dCgpKXt2YXIgZD1jLnZhbHVlO2M9ZC5uO2Q9ZC52O2Q9PT1cInRcIj9iW2NdPSEwOmQhPT1cImZcIiYmKGJbY109ZCl9cmV0dXJuIGJ9LFwiY0pDVE1cIik7dmFyIFdnPWhhKFtcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1cIixcIlwiXSksWGc9ZG9jdW1lbnQ7ZnVuY3Rpb24gWWcoYSl7dmFyIGI9ISFLYSgpLmRhdGEuYXJid2YsYz1hO2ImJihjPWEubWFwKGZ1bmN0aW9uKGQpe3JldHVybiBkK1wiOjQwMCw3MDBcIn0pKTthPVZjKFdnLGMuam9pbihcInxcIikpOyhiPUthKCkuZGF0YS5mZHx8bnVsbCkmJihhPVdjKGEsbmV3IE1hcChbW1wiZGlzcGxheVwiLGJdXSkpKTtyZXR1cm4gYX1mdW5jdGlvbiBaZygpe3RoaXMuRmM9TmEoKS5kYXRhLndmdGx8fFtdO3RoaXMua2U9dGhpcy5GYy5sZW5ndGg+MD9ZZyh0aGlzLkZjKTpudWxsO3RoaXMuT2E9bnVsbDt0aGlzLkxkPSExfVxuZnVuY3Rpb24gJGcoYSxiKXtpZihhLmtlKXRyeXt2YXIgYz1iLmRvY3VtZW50LGQ9Yy5jcmVhdGVFbGVtZW50KFwibGlua1wiKSxlPWEua2U7aWYoZSBpbnN0YW5jZW9mICRhKWQuaHJlZj1kYihlKS50b1N0cmluZygpLGQucmVsPVwic3R5bGVzaGVldFwiO2Vsc2V7aWYobGIuaW5kZXhPZihcInN0eWxlc2hlZXRcIik9PT0tMSl0aHJvdyBFcnJvcignVHJ1c3RlZFJlc291cmNlVXJsIGhyZWYgYXR0cmlidXRlIHJlcXVpcmVkIHdpdGggcmVsPVwic3R5bGVzaGVldFwiJyk7dmFyIGY9aGIoZSk7ZiE9PXZvaWQgMCYmKGQuaHJlZj1mLGQucmVsPVwic3R5bGVzaGVldFwiKX1jLmhlYWQuYXBwZW5kQ2hpbGQoZCl9Y2F0Y2goZyl7YS5PYT1nfX1cbmZ1bmN0aW9uIGFoKGEpe2lmKCFhLkxkJiZYZy5mb250cyYmdHlwZW9mIFhnLmZvbnRzLmxvYWQ9PVwiZnVuY3Rpb25cIil7YS5MZD0hMDthPXUoYS5GYyk7Zm9yKHZhciBiPWEubmV4dCgpLGM9e307IWIuZG9uZTtjPXtQYzp2b2lkIDB9LGI9YS5uZXh0KCkpe2I9Yi52YWx1ZTt2YXIgZD1cIlwiLGU9Yi5zcGxpdChcIjpcIik7ZS5sZW5ndGg9PT0yJiYoYj1lWzBdLGVbMV09PT1cIjcwMFwiJiYoZD1cImJvbGQgXCIpKTshKGIuaW5kZXhPZihcIiBcIik+PTApfHxiLnN0YXJ0c1dpdGgoXCInXCIpJiZiLmVuZHNXaXRoKFwiJ1wiKXx8KGI9XCInXCIrYitcIidcIik7Yy5QYz1kK1wiMTJweCBcIitiO1hnLmZvbnRzLmxvYWQoYy5QYykuY2F0Y2goZnVuY3Rpb24oZil7cmV0dXJuIGZ1bmN0aW9uKGcpe0EubG9nKChnIGluc3RhbmNlb2YgRXJyb3I/Zy5tZXNzYWdlOlN0cmluZyhnKSkrXCIgLSBcIitmLlBjLFwibWZmbFwiKX19KGMpKX19fTt2YXIgYmg9bnVsbCxjaD17YWRzOjAscnNzOjIscGJzOjMsYWRfZGF0YTo4LHNiczo1fSxkaD17dGV4dF9hZHM6MCxwbGFfbnBhY2s6MyxyZWxhdGVkX3NlYXJjaDoyfSxlaD17c3RhdHVzQWR1bHQ6XCJzLmFEVUxUXCIsc3RhdHVzRmFpbGxpc3RlZDpcInMuZkxcIixzdGF0dXNUcmFkZW1hcms6XCJzLnRNXCIsc3RhdHVzTmVlZHNSZXZpZXc6XCJzLm5SXCJ9LEw9e30sZmg9ITE7ZnVuY3Rpb24gZ2goYSl7IWJoJiZhLm5hbWUmJihiaD0oYT1hLm5hbWUubWF0Y2goL21hc3Rlci0oXFxkKykvKSkmJmFbMV0/YVsxXTpudWxsKTtiaHx8KGJoPS0xKTtyZXR1cm4gYmh9Z2g9eihnaCxcImdNTlwiKTtmdW5jdGlvbiBoaChhKXt2YXIgYj1cIm1hc3Rlci1cIitnaChhKTtyZXR1cm4gSGQoYixhKX1oaD16KGhoLFwiZ01JXCIpO1xuZnVuY3Rpb24gaWgoYSxiLGMpe3RyeXtpZihhLmRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKFwiaHRtbFwiKSl7dmFyIGQ9YS5kb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZShcImh0bWxcIilbMF07ZCYmKCFkLmxhbmcmJmImJihkLmxhbmc9YiksIWQuZGlyJiZjJiYoZC5kaXI9YykpfX1jYXRjaChlKXt9fWloPXooaWgsXCJzU0lMRFwiKTtmdW5jdGlvbiBqaChhLGIpe3RyeXtpZihiIT09dm9pZCAwKXt2YXIgYz1hLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJtZXRhXCIpO2MuaHR0cEVxdWl2PVwib3JpZ2luLXRyaWFsXCI7Yy5jb250ZW50PWI7YS5kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGMpfX1jYXRjaChkKXt9fWpoPXooamgsXCJzT1RPRlwiKTtcbmZ1bmN0aW9uIGtoKGEsYil7dmFyIGM9e307YT11KGEpO2Zvcih2YXIgZD1hLm5leHQoKTshZC5kb25lO2Q9YS5uZXh0KCkpZD1kLnZhbHVlLGNbZC5rXT1kLnY7Yj11KGIpO2ZvcihhPWIubmV4dCgpOyFhLmRvbmU7YT1iLm5leHQoKSlhPWEudmFsdWUsY1thLmtdPWEudjtyZXR1cm4gY31cbmZ1bmN0aW9uIGxoKGEsYixjLGQsZSxmLGcsaCxrLGwsbSl7ZnVuY3Rpb24gcCh3KXt2YXIgQz12ZChiKTtuZihoLHcsQyk7YS5yZXF1ZXN0QW5pbWF0aW9uRnJhbWUmJmEucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCl7dy5zdHlsZS50cmFuc2Zvcm09XCJyb3RhdGVaKDBkZWcpXCJ9KX12YXIgcj1raChnLnJ8fFtdLGsucnx8W10pLHQ9KGY9ZFswXS50eXBlPT09Mik/ITE6aC5saW5rVGFyZ2V0PT1cIl9ibGFua1wiLHY9cGYoKTtoZih2LGEuZG9jdW1lbnQuaGVhZCk7ZD1uZXcgRWcoZCxrLHIsdCxhLG0sbCk7XCJpZXZcImluIGsmJnZjKGIrXCIuZVZcIixrLmlldik7bWgoZyxiKTtjPWQucmVuZGVyKGMpLnRoZW4oZnVuY3Rpb24odyl7cCh3KTtyZXR1cm4gd30pO2YmJmgucmVsYXRlZFNlYXJjaFVzZVJlc3VsdENhbGxiYWNrJiYoYz1jLnRoZW4oZnVuY3Rpb24odyl7bmgodyxlKTtyZXR1cm4gd30pKTtyZXR1cm4gY31saD16KGxoLFwiZlNBXCIpO1xuZnVuY3Rpb24gb2goYSxiLGMsZCxlLGYsZyxoKXtOYSgpLmJhKCkmJihhLmRvY3VtZW50LmRpcj1cInJ0bFwiKTthPWRbMF0udHlwZTtnZihjLGgsZSk7cGgoZCxjLGgsZixhKTtiPXZkKGIpO25mKGgsYyxiKX1vaD16KG9oLFwiZkFcIik7ZnVuY3Rpb24gcWgoYSxiLGMsZCxlLGYpe2loKGEsZSxmKTtyaChhKTskZyhjLGEpO2FoKGMpO2E9YS5kb2N1bWVudC5oZWFkO2IhPT1udWxsJiZhLmFwcGVuZENoaWxkKGIuY2xvbmVOb2RlKCEwKSk7YS5hcHBlbmRDaGlsZChkKX1xaD16KHFoLFwicFNSU1wiKTtcbmZ1bmN0aW9uIHNoKGEsYixjLGQsZSxmLGcsaCl7aWYoYiBpbiBMKXt2YXIgaz1udWxsO3RyeXtrPWEuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhZEJsb2NrXCIpLENkW2JdPSEwfWNhdGNoKHApe31pZihrIT1udWxsKXtrLnNldEF0dHJpYnV0ZShcImFyaWEtbGFiZWxcIixkb2N1bWVudC50aXRsZSk7ay5zZXRBdHRyaWJ1dGUoXCJyb2xlXCIsXCJyZWdpb25cIik7aWYoYyl7Zm9yKHZhciBsPWRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTtjLmZpcnN0RWxlbWVudENoaWxkOylsLmFwcGVuZENoaWxkKGMuZmlyc3RFbGVtZW50Q2hpbGQpO2suYXBwZW5kQ2hpbGQobCl9dmFyIG09aztcInJlcXVlc3RBbmltYXRpb25GcmFtZVwiaW4gYT9hLnJlcXVlc3RBbmltYXRpb25GcmFtZShmdW5jdGlvbigpe2QoYSxtLGYpfSk6ZChhLG0sZik7Yz12ZChiKTtsPWplKGIsZSk7bmYobCxrLGMpO2cmJmwucmVsYXRlZFNlYXJjaFVzZVJlc3VsdENhbGxiYWNrJiZuaChrLGUpO2guYmcmJihlPW5ldyBRZyhhLFxuaC5iZy5pLGguYmcucCksYS5jc2FiZz1lKTtkZWxldGUgTFtiXX19fXNoPXooc2gsXCJwU1JBSFwiKTtmdW5jdGlvbiB0aChhLGIpe2E9SGQoYSxiKTtpZihhPT1udWxsKXJldHVybiBudWxsO2I9bnVsbDt0cnl7Yj1hLmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYWRCbG9ja1wiKX1jYXRjaChjKXt9cmV0dXJuIGI9PW51bGw/bnVsbDphfXRoPXoodGgsXCJnRklBQlwiKTtcbmZ1bmN0aW9uIHVoKGEsYixjLGQsZSxmKXt2YXIgZz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNzcmFiXCIpLGg9Z2goYSksaz1SYSgpLGw9bmV3IFpnLG09W10scD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNzci1ib2lsZXJwbGF0ZVwiKTtpZih2aCgpLmxlbmd0aD4wKXtkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInNzcmZcIikhPT1udWxsfHwkZyhsLHdpbmRvdyk7YWgobCk7dmFyIHI9XCJtYXN0ZXItXCIraCx0PWplKHIsYSk7c2god2luZG93LHIsbnVsbCxJZyxhLHQubGlua1RhcmdldD09XCJfYmxhbmtcIix0LnR5cGU9PT1cInJlbGF0ZWRzZWFyY2hcIixjKX1mb3Iocj0wO3I8Zy5jaGlsZEVsZW1lbnRDb3VudDspe3Q9Zy5jaGlsZHJlbltyXTt2YXIgdj10LmlkLnNwbGl0KFwiLVwiKTtyKz0xO2lmKCEodi5sZW5ndGg8Mikpe3ZhciB3PXYuc2hpZnQoKTtpZih3PT09XCJzc3JhZFwifHx3PT09XCJzc3JzXCJ8fHc9PVwic3Nyc2JcIil7di5wdXNoKGgudG9TdHJpbmcoKSk7dj12LmpvaW4oXCItXCIpO3ZhciBDPVxuamUodixhKSxSPUMubGlua1RhcmdldD09XCJfYmxhbmtcIixQPUMudHlwZT09PVwicmVsYXRlZHNlYXJjaFwiLFU9dGgodixhKTtpZihVPT1udWxsKW0ucHVzaCh2KTtlbHNlIGlmKGcucmVtb3ZlQ2hpbGQodCksLS1yLHc9PT1cInNzcnNcIilxaChVLHAsbCx0LGQsZSxmKTtlbHNlIGlmKHc9PT1cInNzcmFkXCIpc2goVSx2LHQsSWcsYSxSLFAsYyk7ZWxzZSBpZih3PT09XCJzc3JzYlwiKXt0PW51bGw7dHJ5e3Q9VS5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIil9Y2F0Y2goYWIpe310IT1udWxsJiYob2goVSx2LHQsYy5zYnMsYSxiLGMsQyksQ2Rbdl09ITAsZGVsZXRlIExbdl0pfX19fWZvcih2YXIgdmEgaW4gTCltLmluZGV4T2YodmEpPDAmJih2Yyh2YStcIi5oQVwiLCExKSxTYShrKSYmdWModmErXCIuYUNcIiwwKSxkZWxldGUgTFt2YV0pO20ubGVuZ3RoPT0wJiZkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGcpO3RjKCk7bC5PYSYmQS5sb2cobC5PYSxcImx3ZjJcIil9dWg9eih1aCxcInBTUkFcIik7XG5mdW5jdGlvbiB3aChhLGIsYyl7dmFyIGQ9aGgoYSk7dmMoXCJ1c2VPYnNlcnZlckZvclZpc2liaWxpdHlEZXRlY3Rpb25cIiwhIUthKCkuZGF0YS5lb3ZkKTtpZihkKXt2YXIgZT1kLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5sYW5nO3ZhciBmPWQuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmRpcjtkLmRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoXCJoZWFkXCIpJiZyaChkKX12YXIgZz0oZD1jLmF0KSYmZC5sZW5ndGg+MD9uZXcgUmcoZCk6dm9pZCAwLGg9KGQ9Yy5hY3QpP25ldyBSZyhkKTp2b2lkIDAsaz1PYmplY3Qua2V5cyhMKS5zbGljZSgpLGw9bmV3IFpnO2Q9W107aWYoQmQoKSl1aChhLGIsYyxlLGYsXCJBNFRWRDBvRG9SVW5CWmdZRGROVkFSWUlQU21KZ3lTRXNZZFBBTlJycmdRN1FpdFBzT3R5MGVaSUJzamxIRkZKd0RGVS84UW1uUkYya0w1eGI0UlA5UTRBQUFDRWV5SnZjbWxuYVc0aU9pSm9kSFJ3Y3pvdkwzZDNkeTVuYjI5bmJHVXVZMjl0T2pRME15SXNJbVpsWVhSMWNtVWlPaUpRY21sMllXTjVVMkZ1WkdKdmVFRmtjMEZRU1hNaUxDSmxlSEJwY25raU9qRTJPVFV4TmpjNU9Ua3NJbWx6VTNWaVpHOXRZV2x1SWpwMGNuVmxMQ0pwYzFSb2FYSmtVR0Z5ZEhraU9uUnlkV1Y5XCIpLFxuZC5wdXNoKFByb21pc2UucmVzb2x2ZSgpKTtlbHNlIGZvcih2YXIgbSBpbiBMKXt2YXIgcD1MW21dLHI9cFswXS50eXBlLHQ9SGQobSxhKTtpZih0IT1udWxsKXtpaCh0LGUsZik7amgodCx2b2lkIDApO3ZhciB2PW51bGw7dHJ5e3Y9dC5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIil9Y2F0Y2goVSl7fWlmKHYhPW51bGwpe3Yuc2V0QXR0cmlidXRlKFwiYXJpYS1sYWJlbFwiLGRvY3VtZW50LnRpdGxlKTt2LnNldEF0dHJpYnV0ZShcInJvbGVcIixcInJlZ2lvblwiKTtyaCh0KTskZyhsLHQpO2FoKGwpO3ZhciB3PXI9PTIsQz1yPT01LFI9amUobSxhKSxQPW51bGw7ZyYmU2coZyxyLFIuY29udGFpbmVyKT8oUD1TZyhnLHIsUi5jb250YWluZXIpLHI9aD9TZyhoLHIsUi5jb250YWluZXIpOm51bGwsdyYmb2YoUixwKSx3PXhoKG0sayksUD1saCh0LG0sdixwLGEsYixjLFIsUCxyLHcpKTooQ3x8QS5sb2cocixcInVueExSQlwiKSxQPVByb21pc2UucmVzb2x2ZSgpLG9oKHQsbSx2LHAsYSxcbmIsYyxSKSk7Yy5iZyYmKHA9bmV3IFFnKHQsYy5iZy5pLGMuYmcucCksdC5jc2FiZz1wKTtkLnB1c2goUCk7Q2RbbV09ITA7ZGVsZXRlIExbbV19fX1sLk9hJiZBLmxvZyhsLk9hLFwibHdmMlwiKTtpZihLYSgpLmRhdGEuZXB0ZSlmb3IoYj11KGspLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWM9SGQoYy52YWx1ZSxhKSxjIT1udWxsJiZ5aChjKTtyZXR1cm4gTmQoZCkudGhlbihmdW5jdGlvbigpe3ZhciBVPUxhKCk7emgoYSwhIWd8fFUsVSl9KX13aD16KHdoLFwibVBBQVNIXCIpO3ZhciBBaD10eXBlb2YgUmVzaXplT2JzZXJ2ZXI9PT1cImZ1bmN0aW9uXCIsQmg9bnVsbDtcbmZ1bmN0aW9uIHpoKGEsYixjKXtmdW5jdGlvbiBkKCl7dmFyIGU9R2QoYSkuZnJhbWVzO2lmKEFoKXtCaCYmQmguZGlzY29ubmVjdCgpO3ZhciBmPWM7Qmg9bmV3IFJlc2l6ZU9ic2VydmVyKGZ1bmN0aW9uKCl7Zj9mPSExOmFlKGEpfSk7ZT11KGUpO2Zvcih2YXIgZz1lLm5leHQoKTshZy5kb25lO2c9ZS5uZXh0KCkpQmgub2JzZXJ2ZShnLnZhbHVlLmRvY3VtZW50LmJvZHkpfWVsc2UgZm9yKGU9dShlKSxnPWUubmV4dCgpOyFnLmRvbmU7Zz1lLm5leHQoKSlnLnZhbHVlLm9ucmVzaXplPWZ1bmN0aW9uKCl7YWUoYSl9fWN8fGQoKTtiP2FlKGEpOnNldFRpbWVvdXQoZnVuY3Rpb24oKXthZShhKX0sMCk7YyYmc2V0VGltZW91dChkLDApfVxuZnVuY3Rpb24geGgoYSxiKXt2YXIgYz1hLnNwbGl0KFwiLVwiKTthPWEuc3BsaXQoXCItXCIpO2Muc3BsaWNlKGMubGVuZ3RoLTEsMCxcImFcIik7Yz1jLmpvaW4oXCItXCIpO2Euc3BsaWNlKGEubGVuZ3RoLTEsMCxcImJcIik7YT1hLmpvaW4oXCItXCIpO3ZhciBkPVtdO2IuaW5jbHVkZXMoYykmJmQucHVzaCgyKTtiLmhhc093blByb3BlcnR5KGEpJiZkLnB1c2goMyk7cmV0dXJuIGR9ZnVuY3Rpb24gQ2goYSxiLGMpe3ZhciBkPU1hdGgubWF4LmFwcGx5KE1hdGgsYSk7YT1NYXRoLm1pbi5hcHBseShNYXRoLGEpO2lmKGQtYT5yZClmb3IoYT1kLXJkLGQ9MDtkPGIubGVuZ3RoO2QrKyl7dmFyIGU9YltkXTtjW2VdPGEmJihjW2VdPWEpfXJldHVybiBjfUNoPXooQ2gsXCJwQkRGXCIpO1xuZnVuY3Rpb24gRGgoYSxiKXtmb3IodmFyIGM9e30sZD0hMSxlPVtdLGY9W10sZz11KE9iamVjdC5rZXlzKGEpKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSlpZihoPWgudmFsdWUsaCBpbiBiKXt2YXIgaz1iW2hdLGw9YVtoXTtpZih0eXBlb2YgbCE9XCJ1bmRlZmluZWRcIil7aWYoay5nJiYobD1rLmcuQyhsKSxsPT1udWxsJiYhay5EKSl0aHJvdyBZYihoK1wiIGhhcyBhbiBpbnZhbGlkIHZhbHVlLiBWYWxpZCBpbnB1dCB2YWx1ZXM6IFtcIitrLmcuRigpK1wiXS5cIik7bCE9bnVsbCYmKGNbaF09bCxrLmc9PXNkJiYoZS5wdXNoKGwpLGYucHVzaChoKSksZD0hMCl9fWUubGVuZ3RoPjAmJihjPUNoKGUsZixjKSk7cmV0dXJuIGQ/YzpudWxsfURoPXooRGgsXCJ2T1wiKTtmdW5jdGlvbiBFaChhLGIpe3JldHVybih1ZChhKXx8L15tYXN0ZXItXFxkKyQvLnRlc3QoYSkpJiZ0eXBlb2YgYj09XCJvYmplY3RcIn1FaD16KEVoLFwiaVBBQk9cIik7XG5mdW5jdGlvbiBGaChhKXt0cnl7aWYoIWEpdGhyb3cgRXJyb3IoXCJOdWxsLCB1bmRlZmluZWQgb3IgZW1wdHkgd2luZG93Lm5hbWUuXCIpO3ZhciBiPUpTT04ucGFyc2UoYSl9Y2F0Y2goZCl7dmFyIGM9ZC5tZXNzYWdlO2EmJihjPVwiSW52YWxpZCB3aW5kb3cubmFtZTogXCIrYS5zcGxpdChcIixcIilbMF0pO0EubG9nKGMsXCJwTkFPXCIpfXJldHVybiBifHx7fX1GaD16KEZoLFwicE5BT1wiKTtmdW5jdGlvbiBHaChhLGIpe3ZhciBjPXt9LGQ7Zm9yKGQgaW4gYSl7dmFyIGU9YVtkXTtkPT1cIm5hbWVcIj9jW2RdPXVkKGUpfHwvXm1hc3Rlci1cXGQrJC8udGVzdChlKT9lOm51bGw6RWgoZCxlKSYmKGU9RGgoZSxiKSxjW2RdPWUsTFtkXT1bXSl9cmV0dXJuIGN9R2g9eihHaCxcInZOQU9cIik7XG5mdW5jdGlvbiBwaChhLGIsYyxkLGUpe2lmKCEoYS5sZW5ndGg8PTApKXtkPW51bGw7aWYoZT09PTUpe3ZhciBmPWMucmVzdWx0c1BhZ2VCYXNlVXJsO2lmKCFmKXRocm93IFliKFwicmVzdWx0c1BhZ2VCYXNlVXJsIG5lZWRzIHRvIGJlIHNldCBmb3Igc2VhcmNoYm94IGJsb2Nrcy5cIik7ZD1hWzBdLmFmZHQ7YT1hWzBdLmxhYmVsO2U9eWQoZik7Yy5wZXJzb25hbGl6ZWRBZHMhPW51bGwmJihlLnBjc2E9XCJcIitjLnBlcnNvbmFsaXplZEFkcyk7Yz0nPGRpdiBjbGFzcz1cImFkU3RkXCI+PGZvcm0gYWN0aW9uPVwiJytJKE9lKGYpKSsnXCIgdGFyZ2V0PVwiX3RvcFwiIG1ldGhvZD1cImdldFwiIGFjY2VwdC1jaGFyc2V0PVwiVVRGLThcIj4nO2Y9Q2UoZSk7Zm9yKHZhciBnPWYubGVuZ3RoLGg9MDtoPGc7aCsrKXt2YXIgaz1mW2hdO2MrPSc8aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCInK0koaykrJ1wiIHZhbHVlPVwiJytJKGVba10pKydcIi8+J31jKz0nPHRhYmxlIGNsYXNzPVwic2ItdGFibGVcIiBjZWxsc3BhY2luZz1cIjBcIiBjZWxscGFkZGluZz1cIjBcIj48dGJvZHk+PHRyPjx0ZCBjbGFzcz1cInNiaS10ZFwiPjxpbnB1dCBjbGFzcz1cInNiaVwiIHR5cGU9XCJ0ZXh0XCIgbmFtZT1cInF1ZXJ5XCIgbWF4bGVuZ3RoPVwiNjNcIiB0aXRsZT1cIkVudGVyIGEgc2VhcmNoXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIvPjwvdGQ+PHRkPjxpbnB1dCBjbGFzcz1cInNiYlwiIHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIicrXG4oYT9JKGEpOlwiU2VhcmNoXCIpKydcIi8+PC90ZD48L3RyPjwvdGJvZHk+PC90YWJsZT48aW5wdXQgdHlwZT1cImhpZGRlblwiIG5hbWU9XCJhZmRUb2tlblwiIHZhbHVlPVwiJytJKGQpKydcIi8+PGlucHV0IHR5cGU9XCJoaWRkZW5cIiBuYW1lPVwic2VhcmNoXCIgdmFsdWU9XCIxXCIvPjwvZm9ybT48L2Rpdj4nO2Q9RihjKX1hPWE9e1ZhOk9hKE5hKCkpfTthPUYoJGYoYS5WYSxcImdvb2dBRlNcIikpO2hmKGEsYik7ZCYmaGYoZCxiKX19cGg9eihwaCxcImNBTlwiKTtcbmZ1bmN0aW9uIEhoKGEsYixjKXt2YXIgZD1JaChhKSxlPWdoKGIpLGY9UmEoKSxnPU5hKCksaD1LYSgpO2cuZGF0YS5xaSYmc2MoXCJxaVwiLGcuZGF0YS5xaXx8bnVsbCxvYy5qKTt2YXIgaz1nLmRhdGEuZWF3cHx8bnVsbDtrJiZzYyhcImVhd3BcIixrLG9jLmopOyhoPSEhaC5kYXRhLnNibikmJnZjKFwic2JuXCIsaCk7aD0hMTtpZighQmQoKSlmb3Ioaz0wO2s8ZC5sZW5ndGg7aysrKXt2YXIgbD1kW2tdLmFkdHlwZSxtPWwhPXZvaWQgMCxwPWRba10scj1wLmZuO3Iuc3RhcnRzV2l0aChcInNsYXZlLTBcIikmJihmaD0hMCk7cj1yK1wiLVwiK2U7TFtyXXx8KEEubG9nKHIsXCJwQUoyXCIpLExbcl09W10pO0xbcl0ucHVzaChwKTttJiYocD1wW2xdLGg9ITApfWlmKEJkKCkpe2I9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJzc3JhYlwiKTtiPXUoYi5jaGlsZHJlbik7Zm9yKGc9Yi5uZXh0KCk7IWcuZG9uZTtnPWIubmV4dCgpKXtnPWcudmFsdWU7dmFyIHQ9Zy5pZC5zcGxpdChcIi1cIik7aWYoISh0Lmxlbmd0aDxcbjIpJiZ0LnNoaWZ0KCk9PT1cInNzcmFkXCIpe3QucHVzaChlLnRvU3RyaW5nKCkpO3Q9dC5qb2luKFwiLVwiKTt2YXIgdj1wYXJzZUludChnLmdldEF0dHJpYnV0ZShcImRhdGEtbnVtLWFkc1wiKSwxMCl8fDA7dmModCtcIi5oQVwiLHY+MCk7U2EoZikmJnVjKHQrXCIuYUNcIix2KTtKaChbZ10sdCk7bWgoYSx0KX19Yj12aCgpO2IubGVuZ3RoPjAmJihnPVwibWFzdGVyLVwiK2UsdD1iLnJlZHVjZShmdW5jdGlvbihDLFIpe3JldHVybiBDK3BhcnNlSW50KFIuZ2V0QXR0cmlidXRlKFwiZGF0YS1udW0tYWRzXCIpLDEwKX0sMCksdmMoZytcIi5oQVwiLHQ+MCksU2EoZikmJnVjKGcrXCIuYUNcIix0KSxKaChiLGcpLG1oKGEsZykpfWVsc2UgZm9yKHQgaW4gTClpZihhPUxbdF0sZD1hLmxlbmd0aCxkPjAmJiFoJiYoaz1hWzBdLGsudHlwZT09MyYmKGQ9ay5wbGFzP2sucGxhcy5sZW5ndGg6MCkpLGZoJiYvXm1hc3Rlci1cXGQrJC8udGVzdCh0KSlkPjAmJkEubG9nKGEubGVuZ3RoLFwicEFKM1wiKSxkZWxldGUgTFt0XTtlbHNlIGlmKHZjKHQrXG5cIi5oQVwiLGQ+MCksU2EoZikmJnVjKHQrXCIuYUNcIixkKSxkPDEpe2lmKGE9SGQodCxiKSl0cnl7KHY9YS5kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIikpJiZoZihaZih7VmE6T2EoZyl9KSx2KX1jYXRjaChDKXt9ZGVsZXRlIExbdF19Zm9yKHZhciB3IGluIGVoKWNbd10mJnZjKGVoW3ddLCEwKTsodz1jLnN0YXR1c0Vycm9yQ29kZSkmJnVjKFwicy5lQ1wiLHBhcnNlSW50KHcsMTApKTt2YyhcInMuYlwiLCEhYy5zdGF0dXNCbG9ja2VkKTtOYSgpLmRhdGEuaXNpJiZ2YyhcInMuaVNJXCIsITApO1NhKGYpJiZ2YyhcImFELlwiK2UsITApO3RjKCl9SGg9eihIaCxcInBBSlwiKTtmdW5jdGlvbiBJaChhKXt2YXIgYj1bXSxjO2ZvcihjIGluIGNoKXt2YXIgZD1hW2NdO2lmKGQpe2Zvcih2YXIgZT1jaFtjXSxmPTA7ZjxkLmxlbmd0aDtmKyspZFtmXS50eXBlPWM9PVwiYWRfZGF0YVwiP2RoW2RbZl0uYWR0eXBlXTplO2I9Yi5jb25jYXQoZCl9fXJldHVybiBifUloPXooSWgsXCJjQUFcIik7XG5mdW5jdGlvbiBLaChhKXtyZXR1cm4gVmcoYSl9S2g9eihLaCxcImNQQVRPXCIpO2Z1bmN0aW9uIExoKGEsYixjKXtBaCYmTGEoKXx8KHdpbmRvdy5zUEg9ZnVuY3Rpb24oKXthZShhKX0pO3dpbmRvdy5tUEFBU0g9ZnVuY3Rpb24oKXt3aChhLGIsYyl9O3JldHVybiB3aChhLGIsYyl9TGg9eihMaCxcInNDRkNcIik7ZnVuY3Rpb24gTWgoYSxiKXt2YXIgYz1IYSgpLGQ9S2goYy5jYXBzKSxlPUdoKGIsYSk7SGgoYyxlLGQpO2E9TGgoZSxkLGMpO1VhKCkuZGF0YS5obSYmd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJtZXNzYWdlXCIsZnVuY3Rpb24oZil7Zj1mLmRhdGEuc3BsaXQoXCI6XCIpO2YubGVuZ3RoPT0yJiZmWzBdPT1cIm9yaWVudGF0aW9uXCImJmFlKGUpfSk7cmV0dXJuIGF9TWg9eihNaCxcInJhYVwiKTtmdW5jdGlvbiBOaChhLGIpe09oKCk7cmV0dXJuIE1oKGEuVGQsYil9Tmg9eihOaCxcImluaXRcIik7XG5mdW5jdGlvbiB2aCgpe3ZhciBhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwiYWRCbG9ja1wiKSxiPWEucXVlcnlTZWxlY3RvcihcIiNzc3JhZC1tYXN0ZXJcIiksYz1hLnF1ZXJ5U2VsZWN0b3JBbGwoJ1tpZF49XCJzc3JhZC1tYXN0ZXItXCJdJyk7YT1bXTtiJiZhLnB1c2goYik7Yj11KGMpO2ZvcihjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSkoYz1jLnZhbHVlKSYmYS5wdXNoKGMpO3JldHVybiBhfVxuZnVuY3Rpb24gbmgoYSxiKXthPXUoYS5nZXRFbGVtZW50c0J5VGFnTmFtZShcImFcIikpO2Zvcih2YXIgYz1hLm5leHQoKSxkPXt9OyFjLmRvbmU7ZD17WmM6dm9pZCAwLGhkOnZvaWQgMH0sYz1hLm5leHQoKSljPWMudmFsdWUsZC5aYz1vZChjLmhyZWYsZW5jb2RlVVJJQ29tcG9uZW50KGJbYi5uYW1lXS5yZXN1bHRzUGFnZVF1ZXJ5UGFyYW0pKSxkLmhkPW9kKGMuaHJlZixlbmNvZGVVUklDb21wb25lbnQoXCJhZmRUb2tlblwiKSksZC5aYyYmZC5oZD8oYy5zZXRBdHRyaWJ1dGUoXCJ0YXJnZXRcIixcIl9zZWxmXCIpLGMuaHJlZj1cIiNcIixjLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLGZ1bmN0aW9uKGUpe3JldHVybiBlLnByZXZlbnREZWZhdWx0KCl9KSxrZihjLGZ1bmN0aW9uKGUpe3JldHVybiBmdW5jdGlvbigpe3NjKFwicnNyY1wiLHtxOmUuWmMscnNUb2tlbjplLmhkLHVpZDpEYXRlLm5vdygpfSxwYy5qKTt0YygpfX0oZCkpKTpBLmxvZyhcIkNvdWxkIG5vdCBwYXJzZSBxdWVyeSBvciByc1Rva2VuIGZyb20gdXJsOiBcIitcbmMuaHJlZixcInJSSFdDXCIpfW5oPXoobmgsXCJyUkhXQ1wiKTtmdW5jdGlvbiBPaCgpe3NjKFwiaXRcIixkb2N1bWVudC50aXRsZSxvYy5qKTt0YygpfU9oPXooT2gsXCJzZXRUaXRsZVwiKTtcbmZ1bmN0aW9uIHloKGEpe2Z1bmN0aW9uIGIoZCxlKXtyZXR1cm57dHlwZTpkLHRvdWNoZXM6ZX19ZnVuY3Rpb24gYyhkKXt2YXIgZT17fSxmO2ZvcihmIGluIGQpZiE9PVwidGFyZ2V0XCImJihlW2ZdPWRbZl0pO3JldHVybiBlfWEuZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcihcInRvdWNoc3RhcnRcIixmdW5jdGlvbihkKXt2YXIgZT1bXS5jb25jYXQoamEoZC50b3VjaGVzKSkubWFwKGZ1bmN0aW9uKGYpe3JldHVybiBjKGYpfSk7d2luZG93LnBhcmVudC5wb3N0TWVzc2FnZShiKGQudHlwZSxlKSxcIipcIil9KTthLmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJ0b3VjaG1vdmVcIixmdW5jdGlvbihkKXt2YXIgZT1bXS5jb25jYXQoamEoZC50b3VjaGVzKSkubWFwKGZ1bmN0aW9uKGYpe3JldHVybiBjKGYpfSk7d2luZG93LnBhcmVudC5wb3N0TWVzc2FnZShiKGQudHlwZSxlKSxcIipcIil9KTthLmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoXCJ0b3VjaGVuZFwiLGZ1bmN0aW9uKGQpe3ZhciBlPVxuW10uY29uY2F0KGphKGQudG91Y2hlcykpLm1hcChmdW5jdGlvbihmKXtyZXR1cm4gYyhmKX0pO3dpbmRvdy5wYXJlbnQucG9zdE1lc3NhZ2UoYihkLnR5cGUsZSksXCIqXCIpfSk7YS5kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKFwidG91Y2hjYW5jZWxcIixmdW5jdGlvbihkKXt2YXIgZT1bXS5jb25jYXQoamEoZC50b3VjaGVzKSkubWFwKGZ1bmN0aW9uKGYpe3JldHVybiBjKGYpfSk7d2luZG93LnBhcmVudC5wb3N0TWVzc2FnZShiKGQudHlwZSxlKSxcIipcIil9KX15aD16KHloLFwicFRFVFBQXCIpO1xuZnVuY3Rpb24gcmgoYSl7dmFyIGI9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcIm1ldGFcIik7Yi5odHRwRXF1aXY9XCJvcmlnaW4tdHJpYWxcIjtiLmNvbnRlbnQ9XCJBNFRWRDBvRG9SVW5CWmdZRGROVkFSWUlQU21KZ3lTRXNZZFBBTlJycmdRN1FpdFBzT3R5MGVaSUJzamxIRkZKd0RGVS84UW1uUkYya0w1eGI0UlA5UTRBQUFDRWV5SnZjbWxuYVc0aU9pSm9kSFJ3Y3pvdkwzZDNkeTVuYjI5bmJHVXVZMjl0T2pRME15SXNJbVpsWVhSMWNtVWlPaUpRY21sMllXTjVVMkZ1WkdKdmVFRmtjMEZRU1hNaUxDSmxlSEJwY25raU9qRTJPVFV4TmpjNU9Ua3NJbWx6VTNWaVpHOXRZV2x1SWpwMGNuVmxMQ0pwYzFSb2FYSmtVR0Z5ZEhraU9uUnlkV1Y5XCI7YS5kb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKGIpfXJoPXoocmgsXCJhTkNPVFwiKTtcbmZ1bmN0aW9uIEpoKGEsYil7dmFyIGM9bnVsbDthPXUoYSk7Zm9yKHZhciBkPWEubmV4dCgpOyFkLmRvbmU7ZD1hLm5leHQoKSlpZihkPWQudmFsdWUsZC5oYXNBdHRyaWJ1dGUoXCJkYXRhLWlzLWV2XCIpJiYoZD1wYXJzZUludChkLmdldEF0dHJpYnV0ZShcImRhdGEtaXMtZXZcIiksMTApLGM9PT1udWxsfHxkPmMpKWM9ZDtjIT09bnVsbCYmdmMoYitcIi5lVlwiLGM9PT0xKX1KaD16KEpoLFwic0lFVkZTXCIpO2Z1bmN0aW9uIG1oKGEsYil7XCJ0cFwiaW4gYSYmc2MoYitcIi5wdHBcIixhLnRwLHBjLmopfW1oPXoobWgsXCJzUFRQXCIpO2Z1bmN0aW9uIFBoKCl7dGhpcy5zYT1RaDt0aGlzLkdiPXZvaWQgMH1QaC5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3ZhciBhPXRoaXMuc2EuRigpK1wiIChvbmUgYnkgaXRzZWxmLCBvciBtdWx0aXBsZSBpbiBhbiBBcnJheVwiO3RoaXMuR2ImJihhKz1cIiB3aXRoIGZld2VyIHRoYW4gXCIrKHRoaXMuR2IrMSkrXCIgZWxlbWVudHNcIik7cmV0dXJuIGErXCIpXCJ9O1BoLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe2E9QXJyYXkuaXNBcnJheShhKT9hOlthXTtpZih0aGlzLkdiJiZhLmxlbmd0aD50aGlzLkdiKXJldHVybiBudWxsO2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspe3ZhciBkPXRoaXMuc2EuQyhhW2NdKTtpZihkPT1udWxsKXJldHVybiBudWxsO2IucHVzaChkKX1yZXR1cm4gYi5sZW5ndGg9PTA/bnVsbDpifTtQaC5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXthPXRoaXMuQyhhKTtyZXR1cm4gYT09bnVsbHx8YS5sZW5ndGg8MT9udWxsOnRoaXMuc2EuSChhWzBdKX07ZnVuY3Rpb24gUmgoKXt9UmgucHJvdG90eXBlLkY9ZnVuY3Rpb24oKXtyZXR1cm5cInRydWUsIGZhbHNlLCAxLCAwXCJ9O1JoLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe3JldHVybiBhPT09MHx8YT09PTE/YT09PTE6YT09XCJ0cnVlXCJ8fGE9PVwib25cInx8YT09MT8hMDphPT1cImZhbHNlXCJ8fGE9PVwib2ZmXCJ8fGE9PT0hMT8hMTpudWxsfTtSaC5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXthPXRoaXMuQyhhKTtyZXR1cm4gYT09bnVsbD9udWxsOmE/MTowfTt2YXIgTT1uZXcgUmg7ZnVuY3Rpb24gTihhLGIpe3RoaXMuUmE9TWF0aC5jZWlsKGEpO3RoaXMuUGE9TWF0aC5mbG9vcihiKX1OLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMuUmErXCIgLSBcIit0aGlzLlBhfTtOLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe2E9cGFyc2VJbnQoYSwxMCk7cmV0dXJuIGE+PXRoaXMuUmEmJmE8PXRoaXMuUGE/YTpudWxsfTtOLnByb3RvdHlwZS5IPWZ1bmN0aW9uKGEpe3JldHVybiB0aGlzLkMoYSl9O2Z1bmN0aW9uIFNoKCl7fVNoLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuXCJBIGZ1bmN0aW9uXCJ9O1NoLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe3JldHVybiB0eXBlb2YgYT09PVwiZnVuY3Rpb25cIj8hMDohMX07U2gucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH07dmFyIFRoPW5ldyBTaDt2YXIgVWg9LyMoLikoLikoLikvLFZoPS9eIyg/OlswLTlhLWZdezN9KXsxLDJ9JC9pLFdoPS9eKD86cmdiKT9cXCgoMHxbMS05XVxcZHswLDJ9KSxcXHM/KDB8WzEtOV1cXGR7MCwyfSksXFxzPygwfFsxLTldXFxkezAsMn0pXFwpJC9pO3ZhciBYaD17YmxhY2s6XCIjMDAwMDAwXCIsYmx1ZTpcIiMwMDAwZmZcIixkYXJrb3JhbmdlOlwiI2ZmOGMwMFwiLGRhcmtyZWQ6XCIjOGIwMDAwXCIsZnVjaHNpYTpcIiNmZjAwZmZcIixncmF5OlwiIzgwODA4MFwiLGdyZWVuOlwiIzAwODAwMFwiLGdyZXk6XCIjODA4MDgwXCIsb3JhbmdlOlwiI2ZmYTUwMFwiLHJlZDpcIiNmZjAwMDBcIixyb3lhbGJsdWU6XCIjNDE2OWUxXCIsc2t5Ymx1ZTpcIiM4N2NlZWJcIix3aGl0ZTpcIiNmZmZmZmZcIix3aGl0ZXNtb2tlOlwiI2Y1ZjVmNVwiLHllbGxvdzpcIiNmZmZmMDBcIn07ZnVuY3Rpb24gWWgoYSl7dGhpcy53ZD1hfVloLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7dmFyIGE9XCJBIGhleGFkZWNpbWFsIGNvbG9yIHN0cmluZ1wiO3RoaXMud2QmJihhKz1cIiBvciAndHJhbnNwYXJlbnQnXCIpO3JldHVybiBhfTtcblloLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe3ZhciBiPVZhKFwiXCIrYSkudG9Mb3dlckNhc2UoKTtpZih0aGlzLndkJiZiPT1cInRyYW5zcGFyZW50XCIpcmV0dXJuXCJ0cmFuc3BhcmVudFwiO2lmKFhoW2JdKXJldHVybiBYaFtiXTthPW51bGw7dHJ5e3ZhciBjPWIuY2hhckF0KDApPT1cIiNcIj9iOlwiI1wiK2I7aWYoIVZoLnRlc3QoYykpdGhyb3cgRXJyb3IoXCInXCIrYytcIicgaXMgbm90IGEgdmFsaWQgaGV4IGNvbG9yXCIpO2MubGVuZ3RoPT00JiYoYz1jLnJlcGxhY2UoVWgsXCIjJDEkMSQyJDIkMyQzXCIpKTthPWMudG9Mb3dlckNhc2UoKX1jYXRjaChwKXt9aWYoIWEpdHJ5e2E6e3ZhciBkPWIubWF0Y2goV2gpO2lmKGQpe3ZhciBlPU51bWJlcihkWzFdKSxmPU51bWJlcihkWzJdKSxnPU51bWJlcihkWzNdKTtpZihlPj0wJiZlPD0yNTUmJmY+PTAmJmY8PTI1NSYmZz49MCYmZzw9MjU1KXt2YXIgaD1bZSxmLGddO2JyZWFrIGF9fWg9W119Yz1oO2lmKCFjLmxlbmd0aCl0aHJvdyBFcnJvcihiK1wiIGlzIG5vdCBhIHZhbGlkIFJHQiBjb2xvclwiKTtcbnZhciBrPWNbMF0sbD1jWzFdLG09Y1syXTtrPU51bWJlcihrKTtsPU51bWJlcihsKTttPU51bWJlcihtKTtpZihrIT0oayYyNTUpfHxsIT0obCYyNTUpfHxtIT0obSYyNTUpKXRocm93IEVycm9yKCdcIignK2srXCIsXCIrbCtcIixcIittKydcIikgaXMgbm90IGEgdmFsaWQgUkdCIGNvbG9yJyk7bD1rPDwxNnxsPDw4fG07YT1rPDE2P1wiI1wiKygxNjc3NzIxNnxsKS50b1N0cmluZygxNikuc2xpY2UoMSk6XCIjXCIrbC50b1N0cmluZygxNil9Y2F0Y2gocCl7fXJldHVybiBhfTtZaC5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiBudWxsfTt2YXIgWmg9bmV3IFloKCExKSwkaD1uZXcgWWgoITApO2Z1bmN0aW9uIGFpKGEpe3RoaXMuc2E9YX1haS5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3JldHVybiB0aGlzLnNhLkYoKStcIiAob25lIG9yIG1vcmUsIGNvbW1hIHNlcGFyYXRlZClcIn07YWkucHJvdG90eXBlLkM9ZnVuY3Rpb24oYSl7aWYodHlwZW9mIGEhPT1cInN0cmluZ1wiKWE9W107ZWxzZXthPWEuc3BsaXQoXCIsXCIpO2Zvcih2YXIgYj1bXSxjPTA7YzxhLmxlbmd0aDtjKyspYi5wdXNoKFZhKGFbY10pKTthPWJ9Yj1bXTtmb3IoYz0wO2M8YS5sZW5ndGg7YysrKXt2YXIgZD10aGlzLnNhLkMoYVtjXSk7ZCE9bnVsbCYmYi5wdXNoKGQpfXJldHVybiBiLmxlbmd0aD09MD9udWxsOmIuam9pbihcIixcIil9O2FpLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O2Z1bmN0aW9uIGJpKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7dGhpcy5yZD1hO3RoaXMub2c9Yjt0aGlzLmxlPXt9O2ZvcihhPTA7YTx0aGlzLnJkLmxlbmd0aDthKyspYj10aGlzLnJkW2FdLHRoaXMubGVbYi50b0xvd2VyQ2FzZSgpXT1ifWJpLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuIHRoaXMucmQuam9pbihcIiwgXCIpK1wiIChjYXNlIGluc2Vuc2l0aXZlKVwifTtiaS5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXtpZighYXx8dHlwZW9mIGEhPT1cInN0cmluZ1wiKXJldHVybiBudWxsO2E9YS50b0xvd2VyQ2FzZSgpO2E9dGhpcy5vZ1thXXx8YTtyZXR1cm4gdGhpcy5sZVthXXx8bnVsbH07YmkucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH07dmFyIGNpPS9eXFxkK3B4JC9pLGRpPS9eXFxkKyUkLyxlaT0vXlswLTldK1xcLlswLTldezEsfSQvO2Z1bmN0aW9uIGZpKCl7fWZpLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuXCJXaWR0aCBpbiBweCAoZS5nLiAnNTAwcHgnKSBvciAnYXV0bydcIn07ZmkucHJvdG90eXBlLkM9ZnVuY3Rpb24oYSl7dmFyIGI9Z2koYSk7cmV0dXJuIGIhPW51bGw/YitcInB4XCI6dHlwZW9mIGEhPT1cInN0cmluZ1wifHxhIT1cImF1dG9cIiYmIWRpLnRlc3QoYSk/bnVsbDphfTtmaS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXtyZXR1cm4gZ2koYSl9O2Z1bmN0aW9uIGdpKGEpe3ZhciBiOyhiPXR5cGVvZiBhPT09XCJudW1iZXJcIil8fChiPXR5cGVvZiBhPT09XCJzdHJpbmdcIiYmKCEvW14wLTldLy50ZXN0KGEpfHxlaS50ZXN0KGEpfHxjaS50ZXN0KGEpKSk7cmV0dXJuIGI/KGE9cGFyc2VJbnQoYSwxMCksaXNOYU4oYSk/bnVsbDphKTpudWxsfXZhciBoaT1uZXcgZmk7ZnVuY3Rpb24gaWkoKXt9aWkucHJvdG90eXBlLkY9ZnVuY3Rpb24oKXtyZXR1cm4gTS5GKCl9O2lpLnByb3RvdHlwZS5DPWZ1bmN0aW9uKGEpe3JldHVybiBNLkMoYSk/MTowfTtpaS5wcm90b3R5cGUuSD1mdW5jdGlvbihhKXtyZXR1cm4gTS5IKGEpfTt2YXIgamk9bmV3IGlpO2Z1bmN0aW9uIGtpKCl7fWtpLnByb3RvdHlwZS5GPWZ1bmN0aW9uKCl7cmV0dXJuXCJBIHN0cmluZ1wifTtraS5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXtyZXR1cm4gdHlwZW9mIGE9PT1cInN0cmluZ1wiP2E6bnVsbH07a2kucHJvdG90eXBlLkg9ZnVuY3Rpb24oKXtyZXR1cm4gbnVsbH07dmFyIGxpPW5ldyBraTt2YXIgbWk9L14oWzAtOV17MTB9fFswLTlhLXpBLVpdezMyfSkkLztmdW5jdGlvbiBuaSgpe31uaS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiBudWxsfTtuaS5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3JldHVyblwiQSAxMCBkaWdpdCBzdHlsZSBJRFwifTtuaS5wcm90b3R5cGUuQz1mdW5jdGlvbihhKXtyZXR1cm4odHlwZW9mIGE9PT1cInN0cmluZ1wifHx0eXBlb2YgYT09PVwibnVtYmVyXCImJiFOdW1iZXIuaXNOYU4oYSkpJiZtaS50ZXN0KGEpP1wiXCIrYTpudWxsfTtmdW5jdGlvbiBvaSgpe31vaS5wcm90b3R5cGUuRj1mdW5jdGlvbigpe3JldHVyblwiQW4gaHR0cChzKSB1cmxcIn07b2kucHJvdG90eXBlLkM9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhPT09XCJzdHJpbmdcIiYmcGkudGVzdChhKT9hOm51bGx9O29pLnByb3RvdHlwZS5IPWZ1bmN0aW9uKCl7cmV0dXJuIG51bGx9O3ZhciBwaT0vXigoaHR0cHM/KTopP1xcL1xcLyhbYS16QS1aMC05fiFAI1xcJCZcXCpcXChcXClfXFwrXFwtPTo7JyxcXC5cXD9cXC8lXSopJC8sUWg9bmV3IG9pO3ZhciBxaT1uZXcgTigyLDQwMCkscmk9bmV3IE4oMCw0MDApLHNpPW5ldyBOKDgsNTApLHRpPW5ldyBhaShuZXcgYmkoXCJ2ZXJkYW5hO2FyaWFsO3RhaG9tYTt0aW1lcyBuZXcgcm9tYW47Z2VvcmdpYTt0cmVidWNoZXQgbXM7bWVpcnlvO21zIGdvdGhpYztyb2JvdG87aGVsdmV0aWNhIG5ldWVcIi5zcGxpdChcIjtcIikpKSx1aT1uZXcgYWkobmV3IGJpKFtcInJpZ2h0XCIsXCJsZWZ0XCIsXCJ0b3BcIixcImJvdHRvbVwiXSkpLE89e30sdmk9KE8uYWRzYWZlPXtnOm5ldyBiaShbXCJvZmZcIixcImxvd1wiLFwibWVkaXVtXCIsXCJoaWdoXCIsXCJhZHVsdG9ubHlcIl0se21lZDpcIm1lZGl1bVwifSksVGM6ITB9LE8uYWR0ZXN0PXtnOk0sVGM6ITB9LE8uYWRUZXN0PXtnOk0sVGM6ITB9LE8uY2xpY2t0cmFja1VybD17ZzpuZXcgUGh9LE8uY29udGFpbmVyPXtnOmxpfSxPLnN0eWxlSWQ9e2c6bmV3IG5pfSxPLnBlcnNvbmFsaXplZEFkcz17ZzpNfSxPLnBlcnNvbmFsaXNlZEFkcz17ZzpNfSxPLmFkcGFnZT17fSxPLmFkUGFnZT1cbnt9LE8uYWRzUmVzcG9uc2VDYWxsYmFjaz17fSxPLmJncmVzcG9uc2U9e30sTy5jaGFubmVsPXt9LE8uY21wU2RrSWQ9e30sTy5jb250YWluZXI9e30sTy5jcmVmPXt9LE8uY3g9e30sTy5kZWI9e30sTy5kZWJ1Zz17fSxPLmRvbWFpbk5hbWU9e30sTy5lPXt9LE8uZXhwZmxhZ3M9e30sTy5mYWtlYWRzPXt9LE8uZmNhcD17fSxPLmZleHA9e30sTy5mb3JjZUV4PXt9LE8uZ2NzYz17fSxPLmdkcHJBcHBsaWVzPXt9LE8udGNmSW5HcHBTdHJpbmc9e30sTy5nZHByQXBwbGllc0luR3BwU3RyaW5nPXt9LE8uaWZyYW1lSGVpZ2h0Q2FsbGJhY2s9e30sTy5pc0RhcmtNb2RlPXtnOk19LE8uanNTcmM9e30sTy5tYXN0ZXJOdW1iZXI9e30sTy5tcz17fSxPLm5vQWRMb2FkZWRDYWxsYmFjaz17fSxPLm51bWJlcj17fSxPLnByb3BlcnR5Q29kZT17fSxPLnB1YklkPXt9LE8ucXVlcnk9e30sTy5yb2xlPXt9LE8ucm93a2V5VjI9e30sTy5zYnNpZ25hbHM9e30sTy5zZXR0aW5nc0lkPXt9LE8uc2xhdmVOdW1iZXI9XG57fSxPLnNvdXJjZT17fSxPLnNvdXJjZV9pcD17fSxPLnRjU3RyaW5nPXt9LE8udWlkZWI9e30sTy51c2VyQWdlbnQ9e30sTy51c1ByaXZhY3k9e30sTy51dWxkPXt9LE8uc2N0PXt9LE8uc2Nfc3RhdHVzPXt9LE8uYWRMb2FkZWRDYWxsYmFjaz17ZzpUaH0sTy5hZFJlcXVlc3RVcmxQYXJhbXM9e2c6bGl9LE8uaGw9e2c6bGl9LE8uY3BwPXt9LE8uYWRmaWxpYXRlV3A9e2c6bGl9LE8uaG90c3dhcHM9e30sTy5zaG9wcGluZ0Fkc0luQ2Fyb3VzZWw9e2c6TX0sTy5ob3N0UHViSWQ9e30sTy5ob3N0Q2hhbm5lbD17fSxPLml2dD17ZzpqaX0sTyksUT17fSx3aT0oUS5jb2xvclRleHQ9e2c6WmgsRDohMCxBOiEwfSxRLmNvbG9yVGl0bGVMaW5rPXtnOlpoLEQ6ITAsQTohMH0sUS5jb2xvckJvcmRlcj17ZzpaaCxEOiEwLEE6ITB9LFEuY29sb3JBdHRyaWJ1dGlvbj17ZzpaaCxBOiEwfSxRLmZvbnRGYW1pbHk9e2c6dGksRDohMCxBOiEwfSxRLmZvbnRGYW1pbHlBdHRyaWJ1dGlvbj17Zzp0aSxcbkE6ITB9LFEudGl0bGVCb2xkPXtnOk0sRDohMCxBOiEwfSxRLnJvbGxvdmVyTGlua0JvbGQ9e2c6TSxEOiEwLEE6ITB9LFEucm9sbG92ZXJMaW5rQ29sb3I9e2c6WmgsRDohMCxBOiEwfSxRLnJvbGxvdmVyTGlua0JhY2tncm91bmRDb2xvcj17ZzpaaCxEOiEwLEE6ITB9LFEucm9sbG92ZXJMaW5rVW5kZXJsaW5lPXtnOk0sRDohMCxBOiEwfSxRLm5vVGl0bGVVbmRlcmxpbmU9e2c6TSxBOiEwfSxRLmFkQm9yZGVyU2VsZWN0aW9ucz17Zzp1aSxBOiEwfSxRLmJvcmRlclNlbGVjdGlvbnM9e2c6dWksQTohMH0sUS5wb3NpdGlvbj17ZzpuZXcgYmkoW1widG9wXCIsXCJyaWdodFwiLFwiYm90dG9tXCJdKX0sUS5jc2VHb29nbGVIb3N0aW5nPXtnOm5ldyBiaShbXCJmdWxsXCIsXCJpZnJhbWVcIixcInBhcnRuZXJcIl0pfSxRLmFkSWNvblVybD17ZzpRaCxBOiEwfSxRLmFkSWNvbldpZHRoPXtnOnFpLEE6ITB9LFEuYWRJY29uSGVpZ2h0PXtnOnFpLEE6ITB9LFEuYWRJY29uU3BhY2luZ0Fib3ZlPXtnOnJpLEQ6ITAsXG5BOiEwfSxRLmFkSWNvblNwYWNpbmdCZWZvcmU9e2c6cmksQTohMH0sUS5hZEljb25TcGFjaW5nQWZ0ZXI9e2c6cmksQTohMH0sUS5hZEljb25TcGFjaW5nQmVsb3c9e2c6cmksQTohMH0sUS5saW5lSGVpZ2h0VGl0bGU9e2c6c2ksQTohMH0sUS53YWl0Rm9yQWRzPXtnOk19LFEuaGVpZ2h0Q29uc3RyYWluZWQ9e2c6TSxXYjpcImhjXCJ9LFEud2lkdGg9e2c6aGksV2I6XCJ3aVwiLEQ6ITB9LFEuYXR0cmlidXRpb25TcGFjaW5nQmVsb3c9e2c6bmV3IE4oMCw0MCksQTohMH0sUS5yZXN1bHRzUGFnZUJhc2VVcmw9e2c6UWh9LFEuY29sdW1ucz17ZzpuZXcgTigxLDIwKSxnYToxfSxRLmNvbHVtblNwYWNpbmc9e2c6bmV3IE4oMiwxMDApfSxRLmhvcml6b250YWxGbG93PXtnOk19LFEuaG9yaXpvbnRhbEFsaWdubWVudD17ZzpuZXcgYmkoW1wiY2VudGVyXCIsXCJsZWZ0XCIsXCJyaWdodFwiXSksZ2E6XCJsZWZ0XCJ9LFEucmVzdWx0c1BhZ2VRdWVyeVBhcmFtPXtnOmxpLGdhOlwicXVlcnlcIn0sUS5ydXJsT3ZlcnJpZGU9XG57ZzpsaX0sUS50ZXJtcz17ZzpsaX0sUS5rdz17ZzpsaX0sUS5yZWZlcnJlckFkQ3JlYXRpdmU9e2c6bGl9LFEucmVsYXRlZFNlYXJjaFJlc3VsdENsaWNrZWRDYWxsYmFjaz17ZzpUaH0sUS5yZWxhdGVkU2VhcmNoVXNlUmVzdWx0Q2FsbGJhY2s9e2c6TX0sUS5hZHN0eWxlPXt9LFEuYWZkVG9rZW49e30sUS5hdHRtYXM9e30sUS5nY3M9e30sUS5nY3NlX25jPXt9LFEuZ2w9e30sUS5nbHA9e30sUS5nbT17fSxRLmdyPXt9LFEuaWU9e30sUS5tYXhUZXJtTGVuZ3RoPXt9LFEubWF4VG9wPXt9LFEubWluVG9wPXt9LFEubnVtUmVwZWF0ZWQ9e30sUS5vZT17fSxRLnF1ZXJ5Q29udGV4dD17fSxRLnF1ZXJ5TGluaz17fSxRLnJlZmVycmVyPXt9LFEucmVsYXRlZFNlYXJjaGVzPXt9LFEudmlzaWJsZVVybHNDYWxsYmFjaz17fSxRKSx4aT17Y2hhdGJvdEV4cGVyaW1lbnRJZDp7fSxjaGF0Ym90UmVzcG9uc2U6e2c6bGl9LGNoYXRib3RVc2VyUHJvbXB0OntnOmxpfX07ZnVuY3Rpb24geWkoKXt9eWkucHJvdG90eXBlLkY9ZnVuY3Rpb24oKXtyZXR1cm5cIkEgd2ViIGZvbnRcIn07eWkucHJvdG90eXBlLkM9ZnVuY3Rpb24oYSl7cmV0dXJuIHR5cGVvZiBhIT09XCJzdHJpbmdcInx8L1teYS16QS1aMC05IF0vLnRlc3QoYSk/bnVsbDphfTt5aS5wcm90b3R5cGUuSD1mdW5jdGlvbigpe3JldHVybiBudWxsfTt2YXIgemk9bmV3IHlpO3ZhciBBaT1uZXcgTigxMCx6YyksQmk9e30sQ2k9KEJpLnR5cGU9e2c6bmV3IGJpKFtcImFkc1wiLFwidGV4dGFkc1wiLFwicmVsYXRlZHNlYXJjaFwiLFwic2VhcmNoYm94XCIsXCJkeW5hbWljXCJdKX0sQmkubGlua1RhcmdldD17ZzpuZXcgYmkoW1wiX3RvcFwiLFwiX2JsYW5rXCJdKSxnYTpcIl9ibGFua1wiLEQ6ITB9LEJpLnZlcnRpY2FsU3BhY2luZz17ZzpuZXcgTigyLDI0KX0sQmkuZm9udFNpemVUaXRsZT17ZzpzZCxEOiEwLGdhOjE4fSxCaS5mb250U2l6ZUF0dHJpYnV0aW9uPXtnOnNkLEQ6ITAsZ2E6MTN9LEJpKSxTPXt9LERpPShTLmNvbG9yQWRTZXBhcmF0b3I9e2c6WmgsQTohMH0sUy5yb2xsb3ZlckFkQmFja2dyb3VuZENvbG9yPXtnOiRoLEQ6ITB9LFMuY29sb3JCYWNrZ3JvdW5kPXtnOiRoLEQ6ITB9LFMuaGlkZVNlYXJjaElucHV0Qm9yZGVyPXtnOk19LFMuaGlkZVNlYXJjaEJ1dHRvbkJvcmRlcj17ZzpNfSxTLmNvbG9yU2VhcmNoQm94PXtnOiRofSxTLmNvbG9yU2VhcmNoQnV0dG9uPXtnOiRofSxcblMuY29sb3JTZWFyY2hCdXR0b25UZXh0PXtnOiRofSxTLndpZHRoU2VhcmNoSW5wdXQ9e2c6bmV3IE4oMSwxRTMpLEQ6ITB9LFMud2lkdGhTZWFyY2hCdXR0b249e2c6bmV3IE4oMTAwLDFFMyksRDohMH0sUy5mb250U2l6ZVNlYXJjaElucHV0PXtnOkFpfSxTLmZvbnRTaXplU2VhcmNoQnV0dG9uPXtnOkFpfSxTLmhlaWdodFNlYXJjaElucHV0PXtnOm5ldyBOKDEsNTApfSxTLmhlaWdodFNlYXJjaEJ1dHRvbj17ZzpuZXcgTigxLDUwKX0sUy5jb2xvclNlYXJjaEJ1dHRvbkJvcmRlcj17ZzokaH0sUy53aWR0aFNlYXJjaEJ1dHRvbkJvcmRlcj17ZzpuZXcgTigwLDUpfSxTLnJhZGl1c1NlYXJjaElucHV0Qm9yZGVyPXtnOm5ldyBOKDAsMjApfSxTLmF0dHJpYnV0aW9uQm9sZD17ZzpNfSxTLmF0dHJpYnV0aW9uVXBwZXJjYXNlPXtnOk19LFMudGl0bGVVcHBlcmNhc2U9e2c6TX0sUy53ZWJGb250RmFtaWx5PXtnOnppfSxTLndlYkZvbnRGYW1pbHlBdHRyaWJ1dGlvbj17Zzp6aX0sUy51aU9wdGltaXplPVxue2c6TX0sUy51aV9vcHRpbWl6ZT17ZzpNfSxTLmFkQm9yZGVyV2lkdGg9e2c6bmV3IE4oMCwyMCl9LFMucmVsYXRlZFNlYXJjaFRhcmdldGluZz17ZzpuZXcgYmkoJGIodGR8fFtdKSl9LFMuZG9tYWluUmVnaXN0cmFudD17fSxTLmRvbWFpblNlc3Npb25Ub2tlbj17fSxTLmxhbmd1YWdlQ29kZT17fSxTLnBhZ2VMb2FkZWRDYWxsYmFjaz17fSxTLnNpemU9e30sUy5pZ25vcmVkUGFnZVBhcmFtcz17fSxTKSxFaT17fTt3YyhFaSx2aSk7d2MoRWksd2kpO3djKEVpLENpKTt3YyhFaSxEaSk7eGMoRWksW1tcImNvbnRhaW5lclwiXSxcInJvbGVcIl0pO3ZhciBGaT17VGQ6RWl9O3ZhciBHaT17fSxIaT0oR2kucm9sbG92ZXJBZEJhY2tncm91bmRDb2xvcj17ZzpaaCxEOiEwLEE6ITB9LEdpLmNvbG9yQmFja2dyb3VuZD17ZzpaaCxEOiEwLEE6ITB9LEdpLnZlcnRpY2FsU3BhY2luZz17ZzpuZXcgTigyLDM0KX0sR2kudHlwZT17ZzpuZXcgYmkoW1wiYWRzXCIsXCJyZWxhdGVkc2VhcmNoXCJdKX0sR2kuZm9udFNpemVUaXRsZT17ZzpzZCxEOiEwLEE6ITB9LEdpLmZvbnRTaXplQXR0cmlidXRpb249e2c6c2QsRDohMCxBOiEwfSxHaS5saW5rVGFyZ2V0PXtnOm5ldyBiaShbXCJfdG9wXCIsXCJfYmxhbmtcIl0pLGdhOlwiX3RvcFwiLEQ6ITB9LEdpKSxJaT17fTt3YyhJaSx2aSk7d2MoSWkseGkpO3djKElpLHdpKTt3YyhJaSxIaSk7eGMoSWksW1wicXVlcnlcIixbXCJjb250YWluZXJcIl0sXCJyb2xlXCJdKTtmdW5jdGlvbiBKaSgpe3ZhciBhPXdpbmRvdy5BRlNfQURfUkVRVUVTVF9SRVRVUk5fVElNRV87YSYmc2MoXCJpcnRcIixhK1wifFwiK0RhdGUubm93KCksb2Muaik7YT1GaCh3aW5kb3cubmFtZSk7TmgoRmksYSk7c2V0VGltZW91dChmdW5jdGlvbigpe3RyeXt2YXIgYj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcInJlc3BvbnNlX2RlYnVnX291dHB1dFwiKTtpZihiKXt2YXIgYz1kb2N1bWVudC5nZXRFbGVtZW50QnlJZChcImFkQmxvY2tcIik7YyYmKGIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChiKSxjLmNoaWxkTm9kZXMubGVuZ3RoPT0wP2MuYXBwZW5kQ2hpbGQoYik6Yy5pbnNlcnRCZWZvcmUoYixjLmNoaWxkTm9kZXNbMF0pKX19Y2F0Y2goZCl7fX0sMCl9d2luZG93LklTX0dPT0dMRV9BRlNfSUZSQU1FXyYmSmkoKTtmdW5jdGlvbiBMaShhLGIsYyxkKXtqZi5jYWxsKHRoaXMpO3RoaXMudmU9Yjt0aGlzLmNlPWM7dGhpcy53Yz1kO3RoaXMuWGE9bmV3IE1hcDt0aGlzLlBmPTA7dGhpcy5IYT1uZXcgTWFwO3RoaXMucWI9bmV3IE1hcDt0aGlzLnFhPXZvaWQgMDt0aGlzLmZhPWF9cWEoTGksamYpO0xpLnByb3RvdHlwZS5UPWZ1bmN0aW9uKCl7ZGVsZXRlIHRoaXMuWDt0aGlzLlhhLmNsZWFyKCk7dGhpcy5IYS5jbGVhcigpO3RoaXMucWIuY2xlYXIoKTt0aGlzLnFhJiYoTGcodGhpcy5mYSxcIm1lc3NhZ2VcIix0aGlzLnFhKSxkZWxldGUgdGhpcy5xYSk7ZGVsZXRlIHRoaXMuZmE7ZGVsZXRlIHRoaXMud2M7amYucHJvdG90eXBlLlQuY2FsbCh0aGlzKX07ZnVuY3Rpb24gTWkoYSl7aWYoYS5YKXJldHVybiBhLlg7YS5jZSYmYS5jZShhLmZhKT9hLlg9YS5mYTphLlg9TmcoYS5mYSxhLnZlKTt2YXIgYjtyZXR1cm4oYj1hLlgpIT1udWxsP2I6bnVsbH1cbmZ1bmN0aW9uIE5pKGEsYixjKXtpZihNaShhKSlpZihhLlg9PT1hLmZhKShiPWEuWGEuZ2V0KGIpKSYmYihhLlgsYyk7ZWxzZXt2YXIgZD1hLkhhLmdldChiKTtpZihkJiZkLkliKXtPaShhKTt2YXIgZT0rK2EuUGY7YS5xYi5zZXQoZSx7VGE6ZC5UYSxhZjpkLlFjKGMpLE9mOmI9PT1cImFkZEV2ZW50TGlzdGVuZXJcIn0pO2EuWC5wb3N0TWVzc2FnZShkLkliKGMsZSksXCIqXCIpfX19ZnVuY3Rpb24gT2koYSl7YS5xYXx8KGEucWE9ZnVuY3Rpb24oYil7dHJ5e3ZhciBjPWEud2M/YS53YyhiKTp2b2lkIDA7aWYoYyl7dmFyIGQ9Yy5YZCxlPWEucWIuZ2V0KGQpO2lmKGUpe2UuT2Z8fGEucWIuZGVsZXRlKGQpO3ZhciBmOyhmPWUuVGEpPT1udWxsfHxmLmNhbGwoZSxlLmFmLGMuVmQpfX19Y2F0Y2goZyl7fX0sS2coYS5mYSxcIm1lc3NhZ2VcIixhLnFhKSl9O2Z1bmN0aW9uIFBpKGEsYil7KDAsYS5fX3VzcGFwaSkoXCJnZXRVU1BEYXRhXCIsMSxmdW5jdGlvbihjLGQpe2IuRWQoe0hkOmMhPW51bGw/Yzp2b2lkIDAsS2Q6ZD92b2lkIDA6Mn0pfSl9dmFyIFFpPXtRYzpmdW5jdGlvbihhKXtyZXR1cm4gYS5FZH0sSWI6ZnVuY3Rpb24oYSxiKXthPXt9O3JldHVybiBhLl9fdXNwYXBpQ2FsbD17Y2FsbElkOmIsY29tbWFuZDpcImdldFVTUERhdGFcIix2ZXJzaW9uOjF9LGF9LFRhOmZ1bmN0aW9uKGEsYil7Yj1iLl9fdXNwYXBpUmV0dXJuO3ZhciBjO2Eoe0hkOihjPWIucmV0dXJuVmFsdWUpIT1udWxsP2M6dm9pZCAwLEtkOmIuc3VjY2Vzcz92b2lkIDA6Mn0pfX07ZnVuY3Rpb24gUmkoYSl7YT10eXBlb2YgYS5kYXRhPT09XCJzdHJpbmdcIj9KU09OLnBhcnNlKGEuZGF0YSk6YS5kYXRhO3JldHVybntWZDphLFhkOmEuX191c3BhcGlSZXR1cm4uY2FsbElkfX1cbmZ1bmN0aW9uIFNpKGEsYil7Yj1iPT09dm9pZCAwP3t9OmI7amYuY2FsbCh0aGlzKTt2YXIgYzt0aGlzLnRpbWVvdXRNcz0oYz1iLnRpbWVvdXRNcykhPW51bGw/Yzo1MDA7dGhpcy5jYWxsZXI9bmV3IExpKGEsXCJfX3VzcGFwaUxvY2F0b3JcIixmdW5jdGlvbihkKXtyZXR1cm4gdHlwZW9mIGQuX191c3BhcGk9PT1cImZ1bmN0aW9uXCJ9LFJpKTt0aGlzLmNhbGxlci5YYS5zZXQoXCJnZXREYXRhV2l0aENhbGxiYWNrXCIsUGkpO3RoaXMuY2FsbGVyLkhhLnNldChcImdldERhdGFXaXRoQ2FsbGJhY2tcIixRaSl9cWEoU2ksamYpO1NpLnByb3RvdHlwZS5UPWZ1bmN0aW9uKCl7dGhpcy5jYWxsZXIuZGlzcG9zZSgpO2pmLnByb3RvdHlwZS5ULmNhbGwodGhpcyl9O1xuZnVuY3Rpb24gVGkoYSxiKXt2YXIgYz17fTtpZihNaShhLmNhbGxlcikpe3ZhciBkPUpnKGZ1bmN0aW9uKCl7YihjKX0pO05pKGEuY2FsbGVyLFwiZ2V0RGF0YVdpdGhDYWxsYmFja1wiLHtFZDpmdW5jdGlvbihlKXtlLktkfHwoYz1lLkhkKTtkKCl9fSk7c2V0VGltZW91dChkLGEudGltZW91dE1zKX1lbHNlIGIoYyl9U2kucHJvdG90eXBlLndiPWZ1bmN0aW9uKCl7cmV0dXJuIE1pKHRoaXMuY2FsbGVyKX07dmFyIFZpPUIoZnVuY3Rpb24oKXt2YXIgYT1CYihcInVhdG1cIixEYigpKSxiPWEhPW51bGw/YTo1O2E9bmV3IFNpKHdpbmRvdyk7cmV0dXJuIE1pKGEuY2FsbGVyKT8oYT1VaShhKSxQcm9taXNlLnJhY2UoW2EsTWQoYiw0KV0pLnRoZW4oZnVuY3Rpb24oYyl7cmV0dXJuIGM9PT0yP3tQYjohMSxkYTpjfTpjPT09ND8oY29uc29sZS53YXJuKFwiUmVhY2hlZFwiK2IrXCJtcyB0aW1lb3V0IGFuZCBiZWZvcmUgVVNQIHJlc3BvbnNlIHdhcyByZWNlaXZlZC5cIikse1BiOiExLGRhOmN9KTpjPT09Nj97UGI6ITEsZGE6Y306e1BiOiEwLGRhOmN9fSkpOm51bGx9LFwiZ0NBRFwiKTtcbmZ1bmN0aW9uIFVpKGEpe2Z1bmN0aW9uIGIoZCl7ZCYmdHlwZW9mIGQudXNwU3RyaW5nPT09XCJzdHJpbmdcIj9jLnJlc29sdmUoV2koZC51c3BTdHJpbmcpKTpjLnJlc29sdmUoMyl9dmFyIGM9S2QoKTt0cnl7VGkoYSxiKX1jYXRjaChkKXtjLnJlc29sdmUoNiksY29uc29sZS53YXJuKFwiVVNQIHJldHVybmVkIGVycm9yIHN0YXR1czogXCIrZCl9cmV0dXJuIGMucHJvbWlzZX1mdW5jdGlvbiBXaShhKXtpZigvXlsxLTldW255TllcXC1dW255TlldW255TllcXC1dJC8udGVzdChhKSl7dmFyIGI9YS5jaGFyQXQoMik7aWYoL15ZfHkvLnRlc3QoYikpcmV0dXJuIDI7aWYoL15OfG4vLnRlc3QoYikpcmV0dXJuIDF9aWYoYT09PVwiMS0tLVwiKXJldHVybiA1O2I9XCIzOlwiK2E7Y29uc29sZS53YXJuKFwiQ0NQQSBVUyBQcml2YWN5IHN0cmluZyBcIithK1wiIGlzIG1hbGZvcm1lZCBhbmQgcGVyc29uYWxpemF0aW9uIGludGVudCB3YXMgdW5hYmxlIHRvIGJlIGZldGNoZWQuXCIpO3JldHVybiBifTtmdW5jdGlvbiBYaSgpe31YaS5wcm90b3R5cGUueGI9ZnVuY3Rpb24oKXtyZXR1cm4gRmIoKX07WGkucHJvdG90eXBlLlBkPWZ1bmN0aW9uKGEpe3JldHVybiBuZXcgSGIodGhpcy54YihhKStcIi9hZnMvYWRzXCIpfTtYaS5wcm90b3R5cGUuU2M9ZnVuY3Rpb24oKXtyZXR1cm4hMX07ZnVuY3Rpb24gWWkoYSxiLGMsZCl7dGhpcy5tZT1hO3RoaXMua2M9Yjt0aGlzLmNiPWM7dGhpcy5TZD1kO3RoaXMuWmI9ITE7dGhpcy5EYz0wfWZ1bmN0aW9uIFppKGEsYixjLGQpe2Q9ZD09PXZvaWQgMD97fTpkO2EubWUtLTthLlpiPWEuWmJ8fGI7Yz5hLkRjJiYoYS5EYz1jKTtpZihhLm1lPT0wKWlmKGEuWmIpe2lmKGEuY2Ipe2I9dm9pZCAwO3N3aXRjaChhLkRjKXtjYXNlIDI6Yj0hMDticmVhaztjYXNlIDE6Yj0hMX10cnl7YS5jYihhLmtjLCEwLGIsZCl9Y2F0Y2goZSl7fX19ZWxzZXtpZihhLlNkKXRyeXthLlNkKGEua2MsITEsdm9pZCAwLGQpfWNhdGNoKGUpe31pZihhLmNiKXRyeXthLmNiKGEua2MsITEsdm9pZCAwLGQpfWNhdGNoKGUpe319fTt2YXIgJGk9bmV3IE1hcDskaS5zZXQoMix7amI6NzI3MTcxMDcsZXhwZXJpbWVudElkOjcyNzE3MTA4LHZiOlwiYWZzX2FhX2Jhc2VsaW5lXCIsdGI6MH0pOyRpLnNldCgzLHtqYjo3MjcxNzEwOSxleHBlcmltZW50SWQ6NzI3MTcxMTAsdmI6XCJhZnNfZ3BwX2FwaVwiLHRiOjB9KTskaS5zZXQoNCx7amI6NDkyODA5MDMsZXhwZXJpbWVudElkOjQ5MjgwOTA2LHZiOlwiYWZzX2NoYXRib3RcIix0YjoxLElkOlwiY2hhdGJvdEV4cGVyaW1lbnRJZFwifSk7JGkuc2V0KDUse2piOjcyNzcxOTUzLGV4cGVyaW1lbnRJZDo3Mjc3MTk1NCx2YjpcImFmc19jaGF0Ym90X2FhXCIsdGI6MSxJZDpcImNoYXRib3RFeHBlcmltZW50SWRcIn0pO3ZhciBhaj1uZXcgTWFwLGNqPWJqO2Z1bmN0aW9uIGRqKGEpe3ZhciBiO3JldHVybigoYj0kaS5nZXQoYSkpPT1udWxsP3ZvaWQgMDpiLnRiKXx8MH1mdW5jdGlvbiBlaihhKXt2YXIgYjtyZXR1cm4oKGI9JGkuZ2V0KGEpKT09bnVsbD92b2lkIDA6Yi5JZCl8fFwiXCJ9XG5mdW5jdGlvbiBmaihhKXtmb3IodmFyIGI9dSgkaS5rZXlzKCkpLGM9Yi5uZXh0KCk7IWMuZG9uZTtjPWIubmV4dCgpKWM9Yy52YWx1ZSxhai5oYXMoYyl8fGRqKGMpIT09MXx8KGFbZWooYyldP2FqLnNldChjLGdqKGMsU3RyaW5nKGFbZWooYyldKSkpOmFqLnNldChjLDApKX1mdW5jdGlvbiBoaigpe2FqLmhhcyg0KXx8QS5sb2coXCJBdHRlbXB0ZWQgdG8gZ2V0IGNsaWVudCBkaXZlcnRlZCBleHBlcmltZW50IGZsYWcgYmVmb3JlIGluaXRpYWxpemF0aW9uLiBUaGUgZmxhZyByZXF1ZXN0ZWQgd2FzIDQuXCIsXCJjZGVmYmlcIik7c3dpdGNoKGFqLmdldCg0KSl7Y2FzZSAyOnJldHVybiEwO2Nhc2UgMTpyZXR1cm4hMTtkZWZhdWx0OnJldHVybiBudWxsfX1cbmZ1bmN0aW9uIGdqKGEsYil7dmFyIGM7dmFyIGQ9QmIoKChjPSRpLmdldChhKSk9PW51bGw/dm9pZCAwOmMudmIpfHxcIlwiLERiKCkuY2RlbSk7aWYoIWQpe3ZhciBlO2M9TWIoKTt2YXIgZj1cIm1lbTogXCIrKCgoZT0kaS5nZXQoYSkpPT1udWxsP3ZvaWQgMDplLmV4cGVyaW1lbnRJZCl8fDApO0piJiZRYihjLGYpfWQ9ZHx8MDtlPU1hdGguZmxvb3IoKG5ldyBEYXRlKS5nZXRUaW1lKCkvODY0RTUpO3ZhciBnLGg7YT0oKGg9KGc9JGkuZ2V0KGEpKT09bnVsbD92b2lkIDA6Zy5leHBlcmltZW50SWQpIT1udWxsP2g6MCkrZTtiPWNqKGIsYSklMUUzO3JldHVybiBiPGQ/MjpiPj0xRTMtZD8xOjB9XG5mdW5jdGlvbiBiaihhLGIpe3ZhciBjPTM3MzU5Mjg1NTleYjtiXj0xMTAzNTQ3OTkxO2Zvcih2YXIgZD0wLGU7ZDxhLmxlbmd0aDtkKyspZT1hLmNoYXJDb2RlQXQoZCksYz1NYXRoLmltdWwoY15lLDI2NTQ0MzU3NjEpLGI9TWF0aC5pbXVsKGJeZSwxNTk3MzM0Njc3KTtjPU1hdGguaW11bChjXmM+Pj4xNiwyMjQ2ODIyNTA3KTtjXj1NYXRoLmltdWwoYl5iPj4+MTMsMzI2NjQ4OTkwOSk7Yj1NYXRoLmltdWwoYl5iPj4+MTYsMjI0NjgyMjUwNyk7Yl49TWF0aC5pbXVsKGNeYz4+PjEzLDMyNjY0ODk5MDkpO3JldHVybiA0Mjk0OTY3Mjk2KigyMDk3MTUxJmIpKyhjPj4+MCl9O3ZhciBpaj13aW5kb3c7ZnVuY3Rpb24gamooYSxiKXthJiZiIT09bnVsbCYmYiE9Yi50b3AmJihiPWIudG9wKTt0cnl7cmV0dXJuIGJkKGJ8fHdpbmRvdykucm91bmQoKX1jYXRjaChjKXtyZXR1cm4gbmV3IENjKC0xMjI0NTkzMywtMTIyNDU5MzMpfX07ZnVuY3Rpb24ga2ooKXt2YXIgYT1hPT09dm9pZCAwP2RvY3VtZW50OmE7dmFyIGI7cmV0dXJuISgoYj1hLmZlYXR1cmVQb2xpY3kpPT1udWxsfHwhYi5hbGxvd2VkRmVhdHVyZXMoKS5pbmNsdWRlcyhcImF0dHJpYnV0aW9uLXJlcG9ydGluZ1wiKSl9O2Z1bmN0aW9uIFQoYSxiLGMsZCxlLGYsZyxoLGssbCl7bD1sPT09dm9pZCAwP1tdOmw7dGhpcy5KPWE7dGhpcy5TYT10aGlzLkxiPXRoaXMuS2I9MDt0aGlzLm9wdGlvbnM9e307dGhpcy5jb250YWluZXI9bnVsbDt0aGlzLmlhPWs9PT12b2lkIDA/MTprO3RoaXMuU2I9Yzt0aGlzLlU9aHx8W107dGhpcy5VZD1lfHxudWxsO3RoaXMuTmE9dGhpcy5CZD10aGlzLmhiPSExO3RoaXMuUj1uZXcgTGIobnVsbCk7dGhpcy5uZD10aGlzLnlhPXRoaXMuSmE9dGhpcy5qZT1cIlwiO3RoaXMuQ2I9dGhpcy5MPSExO3RoaXMuTWQ9XCJcIjt0aGlzLmZiPW5ldyBIYihcIlwiKTt0aGlzLm1hPWw7dGhpcy5kZD10aGlzLnhhPXRoaXMuQWI9MDt0aGlzLlRmPWQ7dGhpcy5GYT1udWxsO3RoaXMudWQ9W107dGhpcy5PPXt9O3RoaXMubGE9dGhpcy5GYj1udWxsO3RoaXMuTWMoYixmLGcsaCl9bj1ULnByb3RvdHlwZTtcbm4ubWM9ZnVuY3Rpb24oYSl7aWYodGhpcy5MKXJldHVyblwibjBcIjt2YXIgYj10aGlzLkxiLGM9dGhpcy5LYixkPXRoaXMuU2E7YSE9bnVsbCYmKGIrPVwibWluVG9wXCJpbiBhP2EubWluVG9wOjAsYys9XCJtYXhUb3BcImluIGE/YS5tYXhUb3A6MCxkKz1cInJoc1wiaW4gYT9hLnJoczowKTtpZihjJiZiPmMpdGhyb3cgWWIoXCJDYW5ub3QgcmVxdWVzdCBtb3JlIG1pblRvcCBhZHMgdGhhbiBtYXhUb3AuXCIpO3JldHVybihkPjA/XCJuXCIrZDpcIlwiKSsoYz4wP1wicFwiK2M6XCJcIikrKGI+MD9cImFcIitiOlwiXCIpfTtuLnBjPWZ1bmN0aW9uKGEsYil7YT10aGlzLlooYSk7YiYmYi5sZW5ndGg+MCYmKGIuc3BsaWNlKDAsMCxhKSxhPWIuam9pbihcInxcIikpO3JldHVybiBhfTtuLlo9ZnVuY3Rpb24oYSl7dGhpcy5TYT1hLm51bWJlcjt2YXIgYjt0aGlzLktifHx0aGlzLkxiP2I9XCJwXCI6dGhpcy5TYSYmKGI9XCJuXCIpO3JldHVyblwiXCIrYisodGhpcy5LYnx8dGhpcy5MYnx8dGhpcy5TYXx8MCl9O1xubi5zZD1mdW5jdGlvbihhLGIsYyl7dmFyIGQ9e307YS5zZXR0aW5nc0lkJiYhYS5zdHlsZUlkJiYoYS5zdHlsZUlkPWEuc2V0dGluZ3NJZCk7ZGVsZXRlIGEuc2V0dGluZ3NJZDthLmhhc093blByb3BlcnR5KFwicGVyc29uYWxpc2VkQWRzXCIpJiYoYS5oYXNPd25Qcm9wZXJ0eShcInBlcnNvbmFsaXplZEFkc1wiKT9hLnBlcnNvbmFsaXplZEFkcz1hLnBlcnNvbmFsaXNlZEFkcyYmYS5wZXJzb25hbGl6ZWRBZHM6YS5wZXJzb25hbGl6ZWRBZHM9YS5wZXJzb25hbGlzZWRBZHMpO2EuaGFzT3duUHJvcGVydHkoXCJwZXJzb25hbGl6ZWRBZHNcIikmJmRlbGV0ZSBhLnBlcnNvbmFsaXNlZEFkczthLnJlZmVycmVyQWRDcmVhdGl2ZSYmKGEua3c/Y29uc29sZS53YXJuKFwiQ2Fubm90IHNldCBib3RoIHJlZmVycmVyQWRDcmVhdGl2ZSBhbmQga3csIGlnbm9yaW5nIHJlZmVycmVyQWRDcmVhdGl2ZVwiKTphLmt3PWEucmVmZXJyZXJBZENyZWF0aXZlLGRlbGV0ZSBhLnJlZmVycmVyQWRDcmVhdGl2ZSk7YS5jbXBTZGtJZCYmXG4hYS50Y1N0cmluZyYmKGEudGNTdHJpbmc9XCJ0Y3VuYXZhaWxhYmxlXCIpO2EuZ2RwckFwcGxpZXM9PTE/YS5nZHByQXBwbGllcz0hMDphLmdkcHJBcHBsaWVzPT0wJiYoYS5nZHByQXBwbGllcz0hMSk7aWYoIXgoXCJfZGlzYWJsZVVzcEFwaVwiKSYmYS51c1ByaXZhY3kpe3ZhciBlPVdpKGEudXNQcml2YWN5KTthLmNwcD1lO2U9PT0yJiYoZC5wZXJzb25hbGl6ZWRBZHM9ITEpfWEudHlwZT09XCJwbGFzXCImJmEuc3R5bGVJZCYmKHRoaXMuSi53aWR0aC5PYz0hMSx0aGlzLkouaGVpZ2h0Lk9jPSExKTtlPWEuY2hhdGJvdFVzZXJQcm9tcHQhPT1udWxsJiZhLmNoYXRib3RVc2VyUHJvbXB0IT09XCJcIiYmYS5jaGF0Ym90VXNlclByb21wdCE9PXZvaWQgMDtmb3IodmFyIGY9YS5jaGF0Ym90UmVzcG9uc2UhPT1udWxsJiZhLmNoYXRib3RSZXNwb25zZSE9PVwiXCImJmEuY2hhdGJvdFJlc3BvbnNlIT09dm9pZCAwLGc9dShPYmplY3Qua2V5cyh0aGlzLkopKSxoPWcubmV4dCgpOyFoLmRvbmU7aD1nLm5leHQoKSlpZihoPVxuaC52YWx1ZSx0aGlzLkpbaF0uT2MmJihoPT1cInF1ZXJ5XCImJihhW2hdPT1udWxsfHxhW2hdPT1cIlwiKXx8aCE9XCJxdWVyeVwiJiYhYVtoXSkpe2lmKCFlJiZoPT1cInF1ZXJ5XCIpdGhyb3cgWWIoXCJNaXNzaW5nIG9wdGlvbiAnXCIraCtcIicuXCIpO31lbHNlIHR5cGVvZiBhW2hdIT1cInVuZGVmaW5lZFwiJiZhW2hdIT1udWxsJiZoIT09XCJjaGF0Ym90UmVzcG9uc2VcIiYmKGRbaF09YVtoXSk7ZSYmKGQucXVlcnk9YS5jaGF0Ym90VXNlclByb21wdCxmJiYoZC5jaGF0Ym90UmVzcG9uc2U9YS5jaGF0Ym90UmVzcG9uc2Uuc3Vic3RyaW5nKDAsMTUwMCkpKTthLnNob3BwaW5nQWRzSW5DYXJvdXNlbD09PSExJiZkZWxldGUgZC5udW1SZXBlYXRlZDthLnJ1cmxPdmVycmlkZSYmKGNvbnNvbGUud2FybihcImFkdGVzdCBpcyBlbmFibGVkIHdoZW4gYW4gcnVybE92ZXJyaWRlIHZhbHVlIGlzIHByb3ZpZGVkXCIpLGQuYWR0ZXN0PVwib25cIik7aWYoZT14ZCh5YS5sb2NhdGlvbi5ocmVmLFwiZ29vZ2xlX2Fmc2V4cFwiKSlkLmFmc2V4cD1cbmUsZC5hZHRlc3Q9XCJvblwiLGNvbnNvbGUud2FybihcImFkdGVzdCBpcyBlbmFibGVkIHdoZW4gZ29vZ2xlX2Fmc2V4cCBpcyB1c2VkXCIpO3RoaXMuTD1hLnJvbGUhPVwibVwiO3RoaXMuRWEoZCk7dGhpcy5MfHxsaihkKTtkLmFkTG9hZGVkQ2FsbGJhY2s9YS5hZExvYWRlZENhbGxiYWNrfHxhLmNhbGxiYWNrfHxudWxsO2Qub2U9ZC5vZXx8XCJVVEYtOFwiO2QuaWU9ZC5pZXx8XCJVVEYtOFwiO2QubnVtYmVyPW1qKGQubnVtYmVyKTtkLm1pblRvcD1taihkLm1pblRvcCk7ZC5tYXhUb3A9bWooZC5tYXhUb3ApO2QuZmV4cD0oZC5mZXhwP2QuZmV4cCtcIixcIjpcIlwiKSsoZC5nY3NjP1wiMjA2MDZcIjpcIjIxNDA0XCIpOyhlPUFiKFwiY2VpXCIsRGIoKSl8fFwiXCIpJiYoZC5mZXhwKz1cIixcIitlKTtlPWQ7Zj1kLmZleHA7Zz1cIlwiO2g9dShhai5rZXlzKCkpO2Zvcih2YXIgaz1oLm5leHQoKTshay5kb25lO2s9aC5uZXh0KCkpe2s9ay52YWx1ZTt2YXIgbD12b2lkIDA7aWYoYWouZ2V0KGspPT09MSl7dmFyIG09dm9pZCAwO1xubD0obT0kaS5nZXQoaykpPT1udWxsP3ZvaWQgMDptLmpifWVsc2UgYWouZ2V0KGspPT09MiYmKG09dm9pZCAwLGw9KG09JGkuZ2V0KGspKT09bnVsbD92b2lkIDA6bS5leHBlcmltZW50SWQpO2wmJihnKz1cIixcIitsKX1lLmZleHA9ZitnO2QuZm9yY2VFeCE9dm9pZCAwJiYoZC5mb3JjZUV4PT09XCJNb3N0TGF1bmNoZXNcIj8oZC5lPVwiTW9zdExhdW5jaGVzXCIsZGVsZXRlIGQuZm9yY2VFeCk6ZC5lfHwoZC5lPVwiT25seUZvcmNlZEV4cGVyaW1lbnRzXCIpKTtkLmdjc2MmJmEucG9zaXRpb249PVwidG9wXCImJihkLm1heFRvcD1hLm51bWJlcixkLm51bWJlcj1udWxsKTtkLmZvcm1hdD10aGlzLkw/dGhpcy5aKGQpOnRoaXMucGMoZCxiKTt0aGlzLk1kPWQuZm9ybWF0O2QuYWRzPXRoaXMubWMoYyk7ZC5ub2NhY2hlPVtNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkqMUUzKSxEYXRlLm5vdygpXS5qb2luKFwiXCIpO2QubnVtPVwiMFwiO2Qub3V0cHV0PXRoaXMuU2IuS2MoKTtpZih0aGlzLlNiLlNjKCkpdHJ5e2QuZG9tYWluTmFtZXx8XG4oZC5kb21haW5OYW1lPXdpbmRvdy5kb2N1bWVudC5kb21haW4pLGQuZG9tYWluTmFtZT1kLmRvbWFpbk5hbWUuc3Vic3RyaW5nKDAsODApfWNhdGNoKHApe31lbHNlIGRlbGV0ZSBkLmRvbWFpbk5hbWU7ZC5nY3NjJiYoZC5zb3VyY2U9XCJnY3NjXCIpO2Qudj1cIjNcIjt0eXBlb2YgZC5wdWJJZCE9PVwic3RyaW5nXCImJihkLnB1YklkPVwiXCIrZC5wdWJJZCk7ZC5wdWJJZC5pbmRleE9mKFwicGFydG5lci1cIik9PTAmJihkLnB1YklkPWQucHViSWQuc3Vic3RyaW5nKDgpKTt0eXBlb2YgZC5ob3N0UHViSWQhPT1cInVuZGVmaW5lZFwiJiYoZC5ob3N0UHViSWQ9U3RyaW5nKGQuaG9zdFB1YklkKS5yZXBsYWNlKC9ecGFydG5lci0vLFwiXCIpKTtkPW5qKGQpOyFkLnRpdGxlQm9sZHx8ZC50aXRsZUJvbGQhPT0hMCYmZC50aXRsZUJvbGQhPTE/ZC50aXRsZUJvbGQmJmRlbGV0ZSBkLnRpdGxlQm9sZDpkLnRpdGxlQm9sZD0xO3JldHVybiBkfTtcbm4uV2M9ZnVuY3Rpb24oYSl7dmFyIGI9W10sYztmb3IoYyBpbiBhKWEuaGFzT3duUHJvcGVydHkoYykmJmMgaW4gdGhpcy5KJiZ0aGlzLkpbY10uV2ImJmIucHVzaChvaihhW2NdLHRoaXMuSltjXSkpO3JldHVybiBiLmpvaW4oXCJcIil9O24uRGE9ZnVuY3Rpb24oYSxiKXt2YXIgYz1bXSxkO2ZvcihkIGluIGEpIShhLmhhc093blByb3BlcnR5KGQpJiZkIGluIHRoaXMuSiYmdGhpcy5KW2RdLldiKXx8ZCBpbiBiJiZiW2RdPT1hW2RdfHxjLnB1c2gob2ooYVtkXSx0aGlzLkpbZF0pKTtyZXR1cm4gYy5qb2luKFwiXCIpfTtcbm4ucmM9ZnVuY3Rpb24oYSxiLGMpe3ZhciBkPWIuZmlsdGVyKGZ1bmN0aW9uKGYpe3JldHVybiBmLmlhPT09MX0pO2lmKGQubGVuZ3RoPT0wKXJldHVybiB0aGlzLkRhKGEse30pK1wiLVwiO2MucHViSWQ9YS5wdWJJZDtjPW5qKGMpO2I9dGhpcy5XYyhjKTt2YXIgZT1bXTtlLnB1c2godGhpcy5EYShhLGMpKTthPXUoZCk7Zm9yKGQ9YS5uZXh0KCk7IWQuZG9uZTtkPWEubmV4dCgpKWQ9ZC52YWx1ZSxkLm9wdGlvbnMuc2xhdmVOdW1iZXImJmQub3B0aW9ucy5zbGF2ZU51bWJlciE9MCYmZS5wdXNoKHRoaXMuRGEoZC5vcHRpb25zLGMpKTtyZXR1cm5bYixlLmpvaW4oXCItXCIpXS5qb2luKFwiLVwiKX07ZnVuY3Rpb24gcGooYSl7cmV0dXJuIGEub3B0aW9ucyYmYS5vcHRpb25zLnR5cGU/YS5vcHRpb25zLnR5cGU9PT1cInNlYXJjaGJveFwiOiExfVxuZnVuY3Rpb24gcWooYSl7dmFyIGI7cmV0dXJuKGI9YS5vcHRpb25zKSE9bnVsbCYmYi50eXBlP2Eub3B0aW9ucy50eXBlPT09XCJyZWxhdGVkc2VhcmNoXCI6ITF9bi5vYz1mdW5jdGlvbihhLGIpe3ZhciBjPS9eW0EtWmEtel0rW1xcd1xcLTpcXC5dKiQvLGQ9W107dGhpcy5DYnx8cGoodGhpcyl8fChhPWEuY29udGFpbmVyLGQucHVzaChjLnRlc3QoYSk/YTpcIlwiKSk7Yj11KGIpO2ZvcihhPWIubmV4dCgpOyFhLmRvbmU7YT1iLm5leHQoKSlhPWEudmFsdWUscGooYSl8fGEuaWEhPT0xfHwoYT1hLm9wdGlvbnMuY29udGFpbmVyLGQucHVzaChjLnRlc3QoYSk/YTpcIlwiKSk7cmV0dXJuIGQuam9pbihcInxcIil9O1xubi51Yz1mdW5jdGlvbihhKXt2YXIgYj10aGlzLlNiLlBkKGEucHViSWQpO3RoaXMuZGMoYSxiKTt3aW5kb3cuZ29vZ2xlQWx0TG9hZGVyPT0zP3koYixcImJzbFwiLDgpOndpbmRvdy5nb29nbGVBbHRMb2FkZXI9PTQmJnkoYixcImJzbFwiLDEwKTt5KGIsXCJwYWNcIixyaihhKSk7aWYoIXRoaXMuTCl7dmFyIGM9Yz09PXZvaWQgMD93aW5kb3c6Yzt2YXIgZD1kPT09dm9pZCAwP2RvY3VtZW50OmQ7dmFyIGU9ZT09PXZvaWQgMD9uZXcgRGF0ZTplO3ZhciBmPWM7Zj1mPT09dm9pZCAwP2lqOmY7dHJ5e3ZhciBnPWYuaGlzdG9yeS5sZW5ndGh9Y2F0Y2gobCl7Zz0wfXkoYixcInVfaGlzXCIsZyk7eShiLFwidV90elwiLC1lLmdldFRpbWV6b25lT2Zmc2V0KCkpO3koYixcImR0XCIsZS5nZXRUaW1lKCkpO3koYixcInVfd1wiLGMuc2NyZWVuLndpZHRoKTt5KGIsXCJ1X2hcIixjLnNjcmVlbi5oZWlnaHQpO2U9amooITAsYyk7eShiLFwiYml3XCIsZS53aWR0aCk7eShiLFwiYmloXCIsZS5oZWlnaHQpO2MudG9wIT1jJiYoZT1cbmpqKCExLGMpLHkoYixcImlzd1wiLGUud2lkdGgpLHkoYixcImlzaFwiLGUuaGVpZ2h0KSk7ZC5ib2R5PyhlPSFjLnNjcm9sbFkmJmQuY29tcGF0TW9kZSE9XCJDU1MxQ29tcGF0XCIsZD1uZXcgQ2MoZT9kLmJvZHkuc2Nyb2xsV2lkdGg6ZC5ib2R5Lm9mZnNldFdpZHRoLGU/ZC5ib2R5LnNjcm9sbEhlaWdodDpkLmJvZHkub2Zmc2V0SGVpZ2h0KSk6ZD1uZXcgQ2MoLTEsLTEpO3koYixcInBzd1wiLGQud2lkdGgpO3koYixcInBzaFwiLGQuaGVpZ2h0KTtpZihjLnRvcD09Yyl2YXIgaD0wO2Vsc2V7Yz1jLnRvcDt0cnl7dmFyIGs7aWYoaz0hIWMmJmMubG9jYXRpb24uaHJlZiE9bnVsbCliOnt0cnl7U2MoYy5mb28pO2s9ITA7YnJlYWsgYn1jYXRjaChsKXt9az0hMX1oPWt9Y2F0Y2gobCl7aD0hMX1oPWg/MToyfXkoYixcImZybVwiLGgpfWg9d2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucyYmd2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2lucy5sZW5ndGgmJndpbmRvdy5sb2NhdGlvbi5hbmNlc3Rvck9yaWdpbnMubGVuZ3RoPlxuMDt5KGIsXCJ1aW9cIix0aGlzLmplKTt5KGIsXCJjb250XCIsdGhpcy5vYyh0aGlzLm9wdGlvbnMsdGhpcy5VKSk7eShiLFwianN2XCIsNjg4MTYwNTA2LCEwKTthLnJ1cmxPdmVycmlkZT95KGIsXCJydXJsXCIsYS5ydXJsT3ZlcnJpZGUsITApOihrPXdpbmRvdy5sb2NhdGlvbi5ocmVmLGsuaW5kZXhPZihcImFib3V0OlwiKT09MCYmaCYmKGs9d2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2luc1swXSkseShiLFwicnVybFwiLGssITApKTt5KGIsc2oucmVmZXJlcixkb2N1bWVudC5yZWZlcnJlciwhMCk7YS5yZWZlcnJlciYmeShiLFwib3B0cmVmXCIsYS5yZWZlcnJlciwhMCk7aCYmeShiLFwibGFvXCIsd2luZG93LmxvY2F0aW9uLmFuY2VzdG9yT3JpZ2luc1swXSwhMCk7KGE9T2JqZWN0LmdldE93blByb3BlcnR5RGVzY3JpcHRvcihkb2N1bWVudCxcInJlZmVycmVyXCIpIT09dm9pZCAwKSYmUWIodGhpcy5SLFwicm1cIik7eShiLFwiZHJ0XCIsYT8xOjApO3koYixcImpzaWRcIixcImNhZlwiKTsvQ2hyb21lfENyaU9TL2kudGVzdChLZikmJlxua2ooKSYmeShiLFwibmZwXCIsXCIxXCIpO3JldHVybiBifTtuLmRjPWZ1bmN0aW9uKGEsYil7Zm9yKHZhciBjIGluIGEpaWYoYS5oYXNPd25Qcm9wZXJ0eShjKSYmc2ouaGFzT3duUHJvcGVydHkoYykpe3ZhciBkPXNqW2NdLGU9YVtjXTtkPT1cImNsa3dkXCImJihlPVwidFwiKTtkPT1cInR5cGVcIiYmKGU9cWRbYVtjXV0pO2M9PVwiZG9tYWluU2Vzc2lvblRva2VuXCImJlwiYWZkVG9rZW5cImluIGEmJmQ9PXNqLmFmZFRva2VufHwoZD09XCJpdnRcIiYmKGU9amkuQyhlKSkseShiLGQsZSkpfX07bi5HPWZ1bmN0aW9uKCl7dmFyIGE9W107dGhpcy5vcHRpb25zLnJvbGU9PVwibVwifHx0aGlzLm9wdGlvbnMuc2xhdmVOdW1iZXI9PT12b2lkIDA/YS5wdXNoKFwibWFzdGVyXCIpOihhLnB1c2goXCJzbGF2ZVwiKSxhLnB1c2godGhpcy5vcHRpb25zLnNsYXZlTnVtYmVyKSk7dGhpcy5pYT09Mj9hLnB1c2goXCJhXCIpOnRoaXMuaWE9PTMmJmEucHVzaChcImJcIik7YS5wdXNoKHRoaXMub3B0aW9ucy5tYXN0ZXJOdW1iZXIpO3JldHVybiBhLmpvaW4oXCItXCIpfTtcbm4uSmM9ZnVuY3Rpb24oYSxiLGMsZCl7dmFyIGU9e307ZS5uYW1lPWI7YT1jLmNvbmNhdChbYV0pO2I9ZC5jb25jYXQoW2JdKTtmb3IoZD0wO2Q8YS5sZW5ndGg7ZCsrKXtjPWJbZF07dmFyIGY9dm9pZCAwLGc9YVtkXSxoPXRoaXMuSixrPXt9O2ZvcihmIGluIGgpaWYoaC5oYXNPd25Qcm9wZXJ0eShmKSYmIWhbZl0uVGMpe3ZhciBsPWdbZl0sbT1oW2ZdLmdhO3R5cGVvZiBsPT1cInVuZGVmaW5lZFwifHxmPT1cImNvbnRhaW5lclwiJiZ0eXBlb2YgbD09XCJvYmplY3RcIj90eXBlb2YgbSE9XCJ1bmRlZmluZWRcIiYmKGtbZl09bSk6a1tmXT1sfWVbY109a31yZXR1cm4gSlNPTi5zdHJpbmdpZnkoZSl9O1xubi5IYz1mdW5jdGlvbihhLGIsYyxkKXt0aGlzLkFiPURhdGUubm93KCk7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYSkmJkEubG9nKFwiaWZyYW1lOiBcIithK1wiLiBwdWJJZDogXCIrZCtcIi4gXCIsXCJkSVwiKTtkPWVkKGRvY3VtZW50LFwiSUZSQU1FXCIpO2QuZnJhbWVCb3JkZXI9XCIwXCI7ZC5tYXJnaW5XaWR0aD1cIjBcIjtkLm1hcmdpbkhlaWdodD1cIjBcIjtkLnZzcGFjZT0wO2QuaHNwYWNlPTA7ZC5zZXRBdHRyaWJ1dGUoXCJhbGxvd1RyYW5zcGFyZW5jeVwiLFwidHJ1ZVwiKTtkLnNjcm9sbGluZz1cIm5vXCI7ZC5zdHlsZS52aXNpYmlsaXR5PVwiaGlkZGVuXCI7ZC53aWR0aD1cIjEwMCVcIjtkLnN0eWxlLmhlaWdodD1cIjBweFwiO2Quc3R5bGUuZGlzcGxheT1cImJsb2NrXCI7ZC5uYW1lPWI7ZC5pZD1hO2Quc3JjPWM7emQoKT8oZC5kYXRhc2V0Lm9ic2VydmU9dGhpcy5vcHRpb25zLm1hc3Rlck51bWJlcix0aGlzLkx8fChkLnNldEF0dHJpYnV0ZShcImRhdGEtYWQtc3JjXCIsYyksZC5zcmM9XCJhYm91dDpibGFua1wiKSk6dGhpcy54YT1cbnRoaXMuQWI7dGhpcy5pYT09PTImJnRoaXMuY29udGFpbmVyLmNoaWxkRWxlbWVudENvdW50Pj0xP3RoaXMuY29udGFpbmVyLmluc2VydEJlZm9yZShkLHRoaXMuY29udGFpbmVyLmNoaWxkcmVuWzBdKTp0aGlzLmlhPT09MSYmdGhpcy5jb250YWluZXIuY2hpbGRFbGVtZW50Q291bnQ9PT0yP3RoaXMuY29udGFpbmVyLmluc2VydEJlZm9yZShkLHRoaXMuY29udGFpbmVyLmNoaWxkcmVuWzFdKTp0aGlzLmNvbnRhaW5lci5hcHBlbmRDaGlsZChkKTt0cnl7ZC5jb250ZW50V2luZG93Lm5hbWU9Yn1jYXRjaChlKXt9a2ooKSYmZC5zZXRBdHRyaWJ1dGUoXCJhbGxvd1wiLFwiYXR0cmlidXRpb24tcmVwb3J0aW5nXCIpO3JldHVybiBkfTtcbm4uaWM9ZnVuY3Rpb24oYSl7dmFyIGI9d2luZG93LmlubmVyV2lkdGg8d2luZG93LmlubmVySGVpZ2h0O2lmKHRoaXMuTmEmJiFifHwhdGhpcy5OYSYmYil7dGhpcy5OYT1iO3RyeXthLmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UoXCJvcmllbnRhdGlvbjpcIisodGhpcy5OYT9cInBvcnRyYWl0XCI6XCJsYW5kc2NhcGVcIiksXCIqXCIpfWNhdGNoKGMpe319fTtuLkxjPWZ1bmN0aW9uKGEsYixjLGQpe3ZhciBlPXRoaXMsZj10aGlzLkhjKGEsYixjLGQpO3RoaXMuTHx8KHRoaXMuTmMoZiksdGhpcy5OYT13aW5kb3cuaW5uZXJXaWR0aDx3aW5kb3cuaW5uZXJIZWlnaHQsd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoXCJyZXNpemVcIixmdW5jdGlvbigpe3JldHVybiBlLmljKGYpfSkpfTtcbm4uWGM9ZnVuY3Rpb24oKXt2YXIgYT17fSxiO2ZvcihiIGluIHRoaXMub3B0aW9ucyl0aGlzLm9wdGlvbnMuaGFzT3duUHJvcGVydHkoYikmJihhW2JdPXRoaXMub3B0aW9uc1tiXSk7YS5hZHM9XCJuMFwiO2FbXCJcIl09XCJcIjthLnNsYXZlTnVtYmVyPVwiMFwiO2Eucm9sZT1cInNcIjthPXRqKHRoaXMuSixhLERhdGUubm93KCksdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLDEsdGhpcy5tYSk7VlthLkcoKV09YTt0aGlzLlUuc3BsaWNlKDAsMCxhKTthPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTthLnN0eWxlLmhlaWdodD1cIjBweFwiO2Euc3R5bGUudmlzaWJpbGl0eT1cImhpZGRlblwiO3RoaXMub3B0aW9ucy5jb250YWluZXI9YTt0aGlzLkNiPXRoaXMub3B0aW9ucy5wcmVsb2FkPSEwO3RoaXMubWE9W119O1xubi5NYz1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT1oaigpO2U9PT0hMD90aGlzLk8uZXhwQXJtPVwiQlwiOmU9PT0hMSYmKHRoaXMuTy5leHBBcm09XCJBXCIpO3RoaXMub3B0aW9ucz10aGlzLnNkKGEsYixjLGQpO3RoaXMuUi5jbGllbnQ9dGhpcy5vcHRpb25zLnB1YklkO3RoaXMuUi5VYj10aGlzLm9wdGlvbnMuc3R5bGVJZHx8XCJcIjsheChcIl9mb3JjZUpzUHJlbG9hZEZvckRlYnVnZ2luZ1wiKSYmdGhpcy51YigpfHx0aGlzLkx8fCFkb2N1bWVudC5ib2R5fHx0aGlzLlhjKCk7dGhpcy5qZT10aGlzLlVkPT1udWxsP1wiXCI6dGhpcy5yYyh0aGlzLm9wdGlvbnMsdGhpcy5VLHRoaXMuVWQpO3RoaXMueWE9dGhpcy5KYT10aGlzLkcoKTt0aGlzLmZiLkFjPWVuY29kZVVSSSh0aGlzLkphKTtpZih0aGlzLmlhPT09MSYmIXgoXCJfZW5hYmxlVW5pZmllZE11ZHNraXBwZXJJZnJhbWVcIikpZm9yKHRoaXMuRmE9bmV3IFlpKHRoaXMubWEubGVuZ3RoKzEsdGhpcy5vcHRpb25zLmNvbnRhaW5lcix0aGlzLm9wdGlvbnMuYWRMb2FkZWRDYWxsYmFjayxcbnRoaXMub3B0aW9ucy5ub0FkTG9hZGVkQ2FsbGJhY2spLGE9dSh0aGlzLm1hKSxiPWEubmV4dCgpOyFiLmRvbmU7Yj1hLm5leHQoKSliLnZhbHVlLkZhPXRoaXMuRmE7aWYoIXRoaXMuTCl7TWIoKS5jbGllbnQ9dGhpcy5vcHRpb25zLnB1YklkO01iKCkuVWI9dGhpcy5vcHRpb25zLnN0eWxlSWR8fFwiXCI7YT1bXTtiPVtdO2ZvcihjPTA7Yzx0aGlzLlUubGVuZ3RoO2MrKylhLnB1c2godGhpcy5VW2NdLkcoKSksYi5wdXNoKHRoaXMuVVtjXS5vcHRpb25zKTt0aGlzLnlhPXRoaXMuSmModGhpcy5vcHRpb25zLHRoaXMuSmEsYixhKX19O1xubi5sYj1mdW5jdGlvbigpe3ZhciBhPXRoaXMsYj1LZCgpLGM9QihmdW5jdGlvbigpe2lmKCFhLnViKCkpcmV0dXJuITE7YS5UYihhLm9wdGlvbnMuY29udGFpbmVyKTtpZihhLm9wdGlvbnMud2lkdGgmJiFhLkNiKXtpZihhLm9wdGlvbnMudHlwZT09XCJwbGFzXCImJmEuSi53aWR0aCE9dm9pZCAwJiZhLkoud2lkdGguZy5DKGEub3B0aW9ucy53aWR0aCk9PW51bGwpdGhyb3cgWWIoXCJ3aWR0aCBcIithLm9wdGlvbnMud2lkdGgrXCIgaXMgaW52YWxpZC5cIik7YS5vcHRpb25zLndpZHRoPT1cImF1dG9cIj9hLmNvbnRhaW5lci5zdHlsZS53aWR0aD1cIjEwMCVcIjp1aihhLm9wdGlvbnMud2lkdGgpJiYoYS5jb250YWluZXIuc3R5bGUud2lkdGg9YS5vcHRpb25zLndpZHRoKX1mb3IodmFyIGY9dShbXS5jb25jYXQoYS5tYSxhKSksZz1mLm5leHQoKTshZy5kb25lO2c9Zi5uZXh0KCkpe2c9Zy52YWx1ZTtnLlRiKGEub3B0aW9ucy5jb250YWluZXIpO3ZhciBoPWcuU2IueGIoYS5vcHRpb25zLnB1YklkKTtcbmg9bmV3IEhiKGgrXCIvYWZzL2Fkcy9pL2lmcmFtZS5odG1sXCIpO2cuZmI9KGcuTD9oOm51bGwpfHxnLnVjKGcub3B0aW9ucyk7Zy5uZD1JYihnLmZiKX1pZighYS5MJiZhLm9wdGlvbnMuaGFzT3duUHJvcGVydHkoXCJ0Y1N0cmluZ1wiKSYmYS5vcHRpb25zLnRjU3RyaW5nLmxlbmd0aD4wJiYhYS5uZC5pbmNsdWRlcyhzai50Y1N0cmluZytcIj1cIikpdGhyb3cgUmIoYS5SLFwidGxcIixcIlRDIHN0cmluZyBvZiBsZW5ndGggXCIrYS5vcHRpb25zLnRjU3RyaW5nLmxlbmd0aCtcIiBkb2VzIG5vdCBmaXQgaW4gVVJMXCIpLFliKFwiQSB0cmFuc3BhcmVuY3kgY29uc2VudCBzdHJpbmcgd2FzIGNvbGxlY3RlZCBidXQgaXMgdG9vIGxvbmcgdG8gZml0IGluIHRoZSBDU0EgYWQgcmVxdWVzdCBVUkwuIE5vIGFkcyBhcmUgYmVpbmcgcmVxdWVzdGVkLlwiKTthLmNvbnRhaW5lci50ZXh0Q29udGVudD1cIlwiO2lmKCF4KFwiX2VuYWJsZVVuaWZpZWRNdWRza2lwcGVySWZyYW1lXCIpKWZvcihmPXUoYS5tYSksZz1mLm5leHQoKTshZy5kb25lO2c9XG5mLm5leHQoKSlnLnZhbHVlLkhiKCk7YS5IYigpO2IucmVzb2x2ZShhKTtyZXR1cm4hMH0sXCJjSV9tQVwiKTtpZighYygpKXZhciBkPURhdGUubm93KCksZT13aW5kb3cuc2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtpZihjKCkpY2xlYXJJbnRlcnZhbChlKTtlbHNlIGlmKERhdGUubm93KCktZD42RTQpdGhyb3cgY2xlYXJJbnRlcnZhbChlKSxZYignY29udGFpbmVyIFwiJythLm9wdGlvbnMuY29udGFpbmVyKydcIiBkb2VzIG5vdCBleGlzdC4nKTt9LDUpO3JldHVybiBiLnByb21pc2V9O24uSGI9ZnVuY3Rpb24oKXt0aGlzLmZiJiZ0aGlzLkxjKHRoaXMuSmEsdGhpcy55YSx0aGlzLm5kLHRoaXMub3B0aW9ucy5wdWJJZCl9O24ucWQ9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcztpZih0aGlzLkJkKXt2YXIgYz10aGlzLkcoKSxkPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGMpO3NldFRpbWVvdXQoZnVuY3Rpb24oKXtyZXR1cm4gYi5SYihkLGMsYSwhMCl9LDE1MDApfX07XG5uLk5jPWZ1bmN0aW9uKGEpe3ZhciBiPXRoaXMsYz1cIlwiK3RoaXMub3B0aW9ucy5tYXN0ZXJOdW1iZXIsZD1uZXcgaWMoYyxhKTtEKGQsXCJhRC5cIitjLEUuaix2aik7RChkLFwicWlcIixvYy5qLGZ1bmN0aW9uKGcsaCxrLGwpe2c9dShbXS5jb25jYXQoYi5VLGIpKTtmb3IoaD1nLm5leHQoKTshaC5kb25lO2g9Zy5uZXh0KCkpaC52YWx1ZS5SLlljPWx8fFwiXCJ9KTtEKGQsXCJlYXdwXCIsb2Muaik7RChkLFwiaXRcIixvYy5qLGZ1bmN0aW9uKGcsaCxrLGwpe2EudGl0bGU9bH0pO0QoZCxcIi5hQ1NcIixuYy5qLGZ1bmN0aW9uKGcsaCxrLGwpe3dqKGIsbCl9KTtEKGQsXCJzLmJcIixFLmosdGhpcy5WYy5iaW5kKHRoaXMpKTtEKGQsXCJzLmFEVUxUXCIsRS5qKTtEKGQsXCJzLmZMXCIsRS5qKTtEKGQsXCJzLnRNXCIsRS5qKTtEKGQsXCJzLm5SXCIsRS5qKTtEKGQsXCJzLmlTSVwiLEUuaik7RChkLFwicy5lQ1wiLG5jLmopO3ZhciBlPW51bGw7dGhpcy5DYnx8KGU9dGhpcy5HKCksRChkLGUrXCIuaEFcIixFLmoseGopLEQoZCxlK1wiLmZzXCIsXG5wYy5qLHlqKSxEKGQsZStcIi53XCIsbmMuaixmdW5jdGlvbihnLGgsayxsKXt6aihnLGgsayxsKX0pLEQoZCxlK1wiLmFDXCIsbmMuaikpO0QoZCxcInYuXCIrYyxvYy5qLEFqKTt2YXIgZj10aGlzLm9wdGlvbnMucmVsYXRlZFNlYXJjaFJlc3VsdENsaWNrZWRDYWxsYmFjazt0aGlzLm9wdGlvbnMucmVsYXRlZFNlYXJjaFVzZVJlc3VsdENhbGxiYWNrJiZmJiZEKGQsXCJyc3JjXCIscGMuaixmdW5jdGlvbihnLGgsayxsKXt0cnl7ZihsLnEsbC5yc1Rva2VuKX1jYXRjaChtKXt9fSk7Yz11KHRoaXMuVSk7Zm9yKGU9Yy5uZXh0KCk7IWUuZG9uZTtlPWMubmV4dCgpKWU9ZS52YWx1ZS5HKCksRChkLGUrXCIuaEFcIixFLmoseGopLEQoZCxlK1wiLmZzXCIscGMuaix5aiksRChkLGUrXCIuYUNcIixuYy5qKSxEKGQsXCJ1c2VPYnNlcnZlckZvclZpc2liaWxpdHlEZXRlY3Rpb25cIixFLmopfTtcbmZ1bmN0aW9uIHdqKGEsYil7YS5GYj1iO2lmKCFhLmxhKXt2YXIgYz1bXCJtb3VzZW1vdmVcIixcIm1vdXNlZG93blwiLFwic2Nyb2xsXCIsXCJrZXlkb3duXCIsXCJ0b3VjaHN0YXJ0XCJdO2EubGE9ZnVuY3Rpb24oKXtpZihhLkZiKXt2YXIgZT1EYXRlLm5vdygpLWEuRmI7aWYoZTw9KEJiKFwibWRwXCIsRGIoKSl8fDApKXt2YXIgZj1hLlIsZz1OYihmKTt5KGcsXCJwYnRcIixcImNkXCIpO3koZyxcImNzYWNkXCIsZSk7Zi5qYShJYihnKSk7YS5GYj1udWxsfX1pZihhLmxhKXtlPXUoYyk7Zm9yKGY9ZS5uZXh0KCk7IWYuZG9uZTtmPWUubmV4dCgpKWRvY3VtZW50LmJvZHkucmVtb3ZlRXZlbnRMaXN0ZW5lcihmLnZhbHVlLGEubGEpO2EubGE9bnVsbH19O2I9dShjKTtmb3IodmFyIGQ9Yi5uZXh0KCk7IWQuZG9uZTtkPWIubmV4dCgpKWRvY3VtZW50LmJvZHkuYWRkRXZlbnRMaXN0ZW5lcihkLnZhbHVlLGEubGEpfX1cbm4uVmM9ZnVuY3Rpb24oYSxiKXtpZigoYj1WW1wibWFzdGVyLVwiK2JdKSYmYi5vcHRpb25zJiZiLm9wdGlvbnMucGFnZUxvYWRlZENhbGxiYWNrKXt2YXIgYz1rYyhhLFwicy5iXCIpLGQ9e307aWYoYyl7dmFyIGU9YS5CW1wicy5lQ1wiXS52YWx1ZTtlJiYoZC5lcnJvcl9jb2RlPWUpO2tjKGEsXCJzLmZMXCIpJiYoZC5mYWlsbGlzdGVkPSEwLGtjKGEsXCJzLnRNXCIpP2QuZmFpbGxpc3RSZWFzb249XCJ0cmFkZW1hcmtcIjpkLmZhaWxsaXN0UmVhc29uPVwib3RoZXJcIil9ZWxzZXtlPXlkKEJqLmxvY2F0aW9uLmhyZWYpO3ZhciBmPWIub3B0aW9ucy5wdWJJZHx8XCJcIixnPWYuaW5kZXhPZihcImRwLVwiKTtmPWc8MD9cIlwiOmc9PTA/XCJwYXJ0bmVyLVwiK2Y6Zi5pbmRleE9mKFwicGFydG5lci1kcC1cIik9PTB8fGYuaW5kZXhPZihcImNhLWRwLVwiKT09MD9cInBhcnRuZXItXCIrZi5zdWJzdHIoZyk6XCJcIjtkLmNsaWVudD1mO2Uuc2VhcmNoPT1cIjFcIiYmKGQudXNlcl9zZWFyY2g9ITApO2UucXVlcnkmJihkLnF1ZXJ5PWUucXVlcnkpfWQuYWR1bHQ9XG4hIWtjKGEsXCJzLmFEVUxUXCIpO2tjKGEsXCJzLm5SXCIpJiYoZC5uZWVkc3Jldmlldz0hMCk7a2MoYSxcInMuaVNJXCIpJiYoZC5pbnZhbGlkX3N0eWxlX2lkPSEwKTt0aGlzLk8uY2FmUmVxdWVzdEFjY2VwdGVkPSFjJiYhZC5uZWVkc3Jldmlldzt0aGlzLk8uY2FmU3RhdHVzPWQ7dHJ5e2Iub3B0aW9ucy5wYWdlTG9hZGVkQ2FsbGJhY2sodGhpcy5PLmNhZlJlcXVlc3RBY2NlcHRlZCxkKX1jYXRjaChoKXt9fX07XG5uLlVjPWZ1bmN0aW9uKGEpe2lmKCF0aGlzLmhiKXt0aGlzLmhiPSEwO2lmKHgoXCJfZW5hYmxlVW5pZmllZE11ZHNraXBwZXJJZnJhbWVcIikpe3ZhciBiPXRoaXMub3B0aW9ucy5jb250YWluZXIsYz10aGlzLm9wdGlvbnMubm9BZExvYWRlZENhbGxiYWNrLGQ9dGhpcy5vcHRpb25zLmFkTG9hZGVkQ2FsbGJhY2s7aWYoYyl0cnl7YyhiLCExLHZvaWQgMCx0aGlzLk8pfWNhdGNoKGUpe31pZihkKXRyeXtkKGIsITEsdm9pZCAwLHRoaXMuTyl9Y2F0Y2goZSl7fX1lbHNlIFppKHRoaXMuRmEsITEsMCx0aGlzLk8pO2tjKGEsXCJzYm5cIikmJihiPXRoaXMuRygpLGM9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYiksdGhpcy5kZD1EYXRlLm5vdygpLHRoaXMuUmIoYyxiLGEsITEpKX19O1xubi5sZD1mdW5jdGlvbihhLGIpe3ZhciBjPU1mKE9mKSxkPU1mKFFmKTsvTW9iaWxlL2kudGVzdChLZikmJihjPjB8fGQ+MCk/KGEuc3R5bGUud2lkdGg9XCIxcHhcIixhLnN0eWxlLm1pbldpZHRoPVwiMTAwJVwiLGEucmVtb3ZlQXR0cmlidXRlKFwid2lkdGhcIikpOmEud2lkdGg9XCIxMDAlXCI7YS5zdHlsZS52aXNpYmlsaXR5PWI+MD9cInZpc2libGVcIjpcImhpZGRlblwiO2Euc3R5bGUuaGVpZ2h0PWIrXCJweFwiO3RoaXMuY29udGFpbmVyLnN0eWxlLmhlaWdodD1cImF1dG9cIn07bi5rZD1mdW5jdGlvbihhKXt0aGlzLmNvbnRhaW5lci5zdHlsZS53aWR0aD1hK1wicHhcIjt2YXIgYj1NZihPZiksYz1NZihRZik7aWYoYj4wfHxjPjApaWYoYj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLkcoKSkpYi5zdHlsZS53aWR0aD1hK1wicHhcIixiLnJlbW92ZUF0dHJpYnV0ZShcIndpZHRoXCIpfTtcbmZ1bmN0aW9uIENqKGEpe3ZhciBiPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEuRygpKTt2YXIgYz1iLmdldEF0dHJpYnV0ZShcImRhdGEtYWQtc3JjXCIpO2M9Y2IoYyk7Yi5zcmM9ZGIoYykudG9TdHJpbmcoKTthLnhhPURhdGUubm93KCk7Yz11KGEuVSk7Zm9yKHZhciBkPWMubmV4dCgpOyFkLmRvbmU7ZD1jLm5leHQoKSlkLnZhbHVlLnhhPWEueGE7Yi5yZW1vdmVBdHRyaWJ1dGUoXCJkYXRhLWFkLXNyY1wiKX1cbmZ1bmN0aW9uIERqKGEpe2lmKHpkKCkmJiFhLkwpe3ZhciBiPSdbZGF0YS1vYnNlcnZlPVwiJythLm9wdGlvbnMubWFzdGVyTnVtYmVyKydcIl0nLGM9cWooYSk7Yz14KFwiX2VuYWJsZUxMSURNXCIpfHx4KFwiX2VuYWJsZUxMSURNUlNPbmx5XCIpJiZjO2Zvcih2YXIgZD11KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJpZnJhbWVcIitiKSksZT1kLm5leHQoKTshZS5kb25lO2U9ZC5uZXh0KCkpaWYoZT1lLnZhbHVlLGUub2Zmc2V0UGFyZW50PT1udWxsfHxBZChlLGM/MUUzOjApKXtDaihhKTtyZXR1cm59dmFyIGY9ZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChcImlmcmFtZVwiK2IpLGc9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKGgpe2lmKGguZmluZChmdW5jdGlvbihsKXtyZXR1cm4gbC5pbnRlcnNlY3Rpb25SYXRpbz4wfSkpe0NqKGEpO2g9dShmKTtmb3IodmFyIGs9aC5uZXh0KCk7IWsuZG9uZTtrPWgubmV4dCgpKWcudW5vYnNlcnZlKGsudmFsdWUpfX0se3Jvb3RNYXJnaW46XCIwcHggMHB4IDEwMDBweCAwcHhcIixcbnRocmVzaG9sZDowfSk7Yj11KGYpO2ZvcihjPWIubmV4dCgpOyFjLmRvbmU7Yz1iLm5leHQoKSljPWMudmFsdWUsZy5vYnNlcnZlKGMpLGMuc2V0QXR0cmlidXRlKFwiZGF0YS1sbGVcIixcIjFcIil9fW4uQmI9ZnVuY3Rpb24oYSl7cmV0dXJuIEFkKGEsMCwuMyl9O1xubi5SYj1mdW5jdGlvbihhLGIsYyxkKXt2YXIgZT10aGlzLGY9aWQoYSksZz17dG9wOmYueSxsZWZ0OmYueCxoZWlnaHQ6YS5vZmZzZXRIZWlnaHQsd2lkdGg6YS5vZmZzZXRXaWR0aCxiYjp0aGlzLnVkLmpvaW4oXCIsXCIpLEZlOmIsZWY6amMoYyxcImVhd3BcIiksTWU6Njg4MTYwNTA2LHdnOmEuaGFzQXR0cmlidXRlKFwiZGF0YS1sbGVcIiksQmY6dGhpcy5CYihhKSxzZjp0aGlzLm9wdGlvbnMuY2xpY2t0cmFja1VybCE9bnVsbH07aWYoYj1Faih0aGlzLGMpKWcuSWY9YjtpZihkKWlmKE9iKHRoaXMuUixcImJzXCIsZyksa2MoYyxcInVzZU9ic2VydmVyRm9yVmlzaWJpbGl0eURldGVjdGlvblwiKSl7dmFyIGg9bmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGZ1bmN0aW9uKCl7T2IoZS5SLFwiYnZcIixnKTtoLnVub2JzZXJ2ZShhKX0se3RocmVzaG9sZDouM30pO2gub2JzZXJ2ZShhKX1lbHNle3ZhciBrPW51bGw7az1zZXRJbnRlcnZhbChCKGZ1bmN0aW9uKCl7ZS5CYihhKSYmKE9iKGUuUixcImJ2XCIsZyksXG5jbGVhckludGVydmFsKGspKX0sXCJzUElWXCIpLDUwMCl9ZWxzZSBPYih0aGlzLlIsXCJiblwiLGcpfTtmdW5jdGlvbiBFaihhLGIpe2lmKGI9amMoYixcImlydFwiKSl7dmFyIGM9Yi5zcGxpdChcInxcIik7Yj1wYXJzZUludChjWzBdLDEwKTtjPXBhcnNlSW50KGNbMV0sMTApO3ZhciBkPWEuQWItYS5UZixlPWEueGEtYS5BYjthLkwmJihlPU1hdGgubWF4KDAsZSkpO3JldHVybltkLGUsYi1hLnhhLGMtYixhLmRkLWNdLmpvaW4oXCJ8XCIpfXJldHVybiBudWxsfVxubi5lZD1mdW5jdGlvbihhLGIpe3ZhciBjPXRoaXMuRygpLGQ9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYyk7aWYoZCl7dmFyIGU9YS5mcmFtZUhlaWdodDt0aGlzLnVkPWEuYmI7dGhpcy5sZChkLGUpO2lmKCF0aGlzLmhiJiZlPjApe3RoaXMuZGQ9RGF0ZS5ub3coKTt0aGlzLkJkPXRoaXMuaGI9ITA7dGhpcy5xZChiKTt2YXIgZjthPShmPWtjKGIsYytcIi5lVlwiKSkhPW51bGw/Zjp2b2lkIDA7Yys9XCIucHRwXCI7aWYoYj1iLkIuaGFzT3duUHJvcGVydHkoYyk/Yi5CW2NdLnZhbHVlOm51bGwpdGhpcy5PLnRlcm1Qb3NpdGlvbnM9YjtpZih4KFwiX2VuYWJsZVVuaWZpZWRNdWRza2lwcGVySWZyYW1lXCIpKXtpZihiPXRoaXMub3B0aW9ucy5hZExvYWRlZENhbGxiYWNrKXtjPXRoaXMub3B0aW9ucy5jb250YWluZXI7dHJ5e2IoYywhMCxhLHRoaXMuTyl9Y2F0Y2goZyl7fX19ZWxzZSBiPTAsYT09PSEwP2I9MjphPT09ITEmJihiPTEpLFppKHRoaXMuRmEsITAsYix0aGlzLk8pfX19O1xubi51Yj1mdW5jdGlvbigpe3ZhciBhPXRoaXMub3B0aW9ucy5jb250YWluZXI7cmV0dXJuIHR5cGVvZiBhPT1cInN0cmluZ1wiPyhhPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGEpLCEhYSk6YSBpbnN0YW5jZW9mIE5vZGU/ITA6ITF9O24uVGI9ZnVuY3Rpb24oYSl7dGhpcy5jb250YWluZXI9dHlwZW9mIGE9PVwic3RyaW5nXCI/ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoYSk6YX07bi5FYT1mdW5jdGlvbihhKXthLm51bWJlcj1hLm51bWJlcnx8YS5tYXhUb3B8fGEubWluVG9wfHwxMDtkZWxldGUgYS5taW5Ub3A7ZGVsZXRlIGEubWF4VG9wO2EuaGFzT3duUHJvcGVydHkoXCJyZXN1bHRzUGFnZUJhc2VVcmxcIikmJihhLnJlc3VsdHNQYWdlQmFzZVVybD1GaihhLnJlc3VsdHNQYWdlQmFzZVVybCkpO3ZhciBiPWEucmVsYXRlZFNlYXJjaFRhcmdldGluZztiIGluIHRkJiYoYS5yc190dD10ZFtiXSl9O1xuZnVuY3Rpb24gbGooYSl7aWYoIWEucXVlcnkmJiFhLmFmZFRva2VuKXt2YXIgYj15ZCh3aW5kb3cubG9jYXRpb24uaHJlZiksYz1iLnF1ZXJ5O2I9Yi5hZmRUb2tlbjtjJiZiJiYoYS5xdWVyeT1jLGEuYWZkVG9rZW49Yil9Yz14ZCh3aW5kb3cubG9jYXRpb24uaHJlZixcInBjc2FcIik7YyE9bnVsbCYmYS5wZXJzb25hbGl6ZWRBZHM9PW51bGwmJihhLnBlcnNvbmFsaXplZEFkcz1jKX12YXIgb2o9QihmdW5jdGlvbihhLGIpe3ZhciBjPWIuV2I7YT1iLmcuSChhKTtyZXR1cm4gYSE9bnVsbCYmdWooYSk/R2ouaGFzT3duUHJvcGVydHkoYyk/YT9jLmNoYXJBdCgwKStjLmNoYXJBdCgxKS50b1VwcGVyQ2FzZSgpOmM6YythOlwiXCJ9LFwiZ1BGT1wiKTtmdW5jdGlvbiBtaihhKXt0cnl7dmFyIGI9cGFyc2VJbnQoYSwxMCk7cmV0dXJuIWlzTmFOKGIpJiZiPj0wP2I6bnVsbH1jYXRjaChjKXtyZXR1cm4gbnVsbH19XG5mdW5jdGlvbiB1aihhKXthPXBhcnNlSW50KGEsMTApO3JldHVybiFpc05hTihhKSYmYT49MH1cbnZhciBuaj1CKGZ1bmN0aW9uKGEpe2Zvcih2YXIgYj1bXCJmb250U2l6ZVRpdGxlXCIsXCJmb250U2l6ZUF0dHJpYnV0aW9uXCJdLGM9MDtjPGIubGVuZ3RoO2MrKyl7dmFyIGQ9YltjXTtpZihhW2RdKXt2YXIgZT10eXBlb2YgYVtkXT09XCJzdHJpbmdcIj9wYXJzZUludChhW2RdLnJlcGxhY2UoXCJweFwiLFwiXCIpLDEwKTphW2RdO2U9ZT56Yz96YzplO2U9ZTwxMD8xMDplO2FbZF09ZStcInB4XCJ9fXJldHVybiBhfSxcInZGU1wiKSxIaj0vXlxcL3szLH0vLEZqPUIoZnVuY3Rpb24oYSl7cmV0dXJuIGEmJmEuc3RhcnRzV2l0aChcIi8vXCIpP2RvY3VtZW50LmxvY2F0aW9uLnByb3RvY29sK2EucmVwbGFjZShIaixcIi8vXCIpOmF9LFwiclJQXCIpLHJqPUIoZnVuY3Rpb24oYSl7YT1hLmZleHB8fFwiXCI7cmV0dXJuIGEuaW5jbHVkZXMoXCIxNzMwMDAwMVwiKT8xOmEuaW5jbHVkZXMoXCIxNzMwMDAwMlwiKT8yOjB9LFwiZ1BQVlwiKSxaPXt9LHNqPShaLmFkUGFnZT1cImFkcGFnZVwiLFouYWRwYWdlPVwiYWRwYWdlXCIsWi5hZHM9XCJhZFwiLFxuWi5hZHNhZmU9XCJhZHNhZmVcIixaLmFkc3R5bGU9XCJhZHN0eWxlXCIsWi5hZHRlc3Q9XCJhZHRlc3RcIixaLmFmZFRva2VuPVwiYWZkdFwiLFouYWZzZXhwPVwiYWZzZXhwXCIsWi5hbGx3Y2FsbGFkPVwiYWxsd2NhbGxhZFwiLFouYmdyZXNwb25zZT1cImJncmVzcG9uc2VcIixaLmNoYW5uZWw9XCJjaGFubmVsXCIsWi5jaGF0Ym90UmVzcG9uc2U9XCJjaGF0Ym90UmVzcG9uc2VcIixaLmNoYXRib3RVc2VyUHJvbXB0PVwiY2hhdGJvdFVzZXJQcm9tcHRcIixaLmNvbnQ9XCJjb250XCIsWi5jcmVmPVwiY3JlZlwiLFouY3g9XCJjeFwiLFouZGViPVwiZGViXCIsWi5kZWJ1Zz1cImRlYnVnXCIsWi5kb21haW5OYW1lPVwiZG9tYWluX25hbWVcIixaLmU9XCJlXCIsWi5leHBmbGFncz1cImV4cGZsYWdzXCIsWi5mYWtlYWRzPVwiZmFrZWFkc1wiLFouZmNhcD1cImZjYXBcIixaLmZleHA9XCJmZXhwXCIsWi5mb3JjZUV4PVwiZXhwaWRcIixaLmZvcmNlR2Rwcj1cImZvcmNlR2RwclwiLFouZm9ybWF0PVwiZm9ybWF0XCIsWi5nY3M9XCJnY3NcIixaLmdjc2VfbmM9XCJnY3NlX25jXCIsXG5aLmdsPVwiZ2xcIixaLmdscD1cImdscFwiLFouZ209XCJnbVwiLFouZ3I9XCJnclwiLFouaGw9XCJobFwiLFouaG9zdENoYW5uZWw9XCJoY2hhbm5lbFwiLFouaG9zdFB1YklkPVwiaGNsaWVudFwiLFouaWU9XCJpZVwiLFouaWdub3JlZFBhZ2VQYXJhbXM9XCJpcHBcIixaLmlzRGFya01vZGU9XCJpc0RhcmtNb2RlXCIsWi5qc1NyYz1cImNzYV9qc19zcmNcIixaLmxhbmd1YWdlQ29kZT1cImhsXCIsWi5tYXhUZXJtTGVuZ3RoPVwibWF4X3JhZGxpbmtfbGVuXCIsWi5tcz1cIm1zXCIsWi5ub2NhY2hlPVwibm9jYWNoZVwiLFoubnVtPVwibnVtXCIsWi5udW1SZXBlYXRlZD1cImFkcmVwXCIsWi5vZT1cIm9lXCIsWi5vdXRwdXQ9XCJvdXRwdXRcIixaLnByZWxvYWQ9XCJwcmVsb2FkXCIsWi5wcmljZUN1cnJlbmN5PVwicGZjcm5jeVwiLFoucHJpY2VNYXg9XCJwZm1heFwiLFoucHJpY2VNaW49XCJwZm1pblwiLFoucHViSWQ9XCJjbGllbnRcIixaLnF1ZXJ5PVwicVwiLFoucXVlcnlDb250ZXh0PVwicXJ5X2N0eHRcIixaLnF1ZXJ5TGluaz1cInFyeV9sbmtcIixaLnJlZmVyZXI9XCJyZWZlcmVyXCIsXG5aLnJvbGU9XCJyXCIsWi5yb3drZXlWMj1cInJvd2tleVYyXCIsWi5yc190dD1cInJzX3R0XCIsWi5ydXJsPVwicnVybFwiLFouc2FmZT1cInNhZmVcIixaLnNic2lnbmFscz1cInNic2lnbmFsc1wiLFouc291cmNlPVwic291cmNlXCIsWi5zb3VyY2VfaXA9XCJzb3VyY2VfaXBcIixaLnN0eWxlSWQ9XCJwc2lkXCIsWi50ZXh0Q29sb3JQYWxldHRlPVwidGNwYWxcIixaLnRoZW1lPVwidGhlbWVcIixaLnR5cGU9XCJ0eXBlXCIsWi51aWRlYj1cInVpZGViXCIsWi51c2VyQWdlbnQ9XCJ1c2VyYWdlbnRcIixaLnV1bGQ9XCJ1dWxkXCIsWi52PVwidlwiLFouYWRmaWxpYXRlV3A9XCJhZGZ3cFwiLFouY3BwPVwiY3BwXCIsWi5ob3Rzd2Fwcz1cImhvdHN3YXBzXCIsWi5yZXN1bHRzUGFnZUJhc2VVcmw9XCJycGJ1XCIsWi5yZXN1bHRzUGFnZVF1ZXJ5UGFyYW09XCJycHFwXCIsWi5wZXJzb25hbGl6ZWRBZHM9XCJwY3NhXCIsWi5zaG9wcGluZ0Fkc0luQ2Fyb3VzZWw9XCJwbGFfY2Fyb3VzZWxcIixaLmF0dG1hcz1cImF0dG1hc1wiLFouY21wU2RrSWQ9XCJpYWJfY21wU2RrSWRcIixcblouZ2RwckFwcGxpZXNJbkdwcFN0cmluZz1cImlhYl9nZHByQXBwbGllc0luR3BwU3RyaW5nXCIsWi5nZHByQXBwbGllcz1cImlhYl9nZHByQXBwbGllc1wiLFoudGNmSW5HcHBTdHJpbmc9XCJpYWJfdGNmSW5HcHBTdHJpbmdcIixaLnRjU3RyaW5nPVwiaWFiX3RjU3RyaW5nXCIsWi5zY19zdGF0dXM9XCJzY19zdGF0dXNcIixaLnNjdD1cInNjdFwiLFouaXZ0PVwiaXZ0XCIsWi51aU9wdGltaXplPVwidWlvcHRcIixaLnVpX29wdGltaXplPVwidWlvcHRcIixaLmRvbWFpblJlZ2lzdHJhbnQ9XCJzd3BcIixaLmRvbWFpblNlc3Npb25Ub2tlbj1cImFmZHRcIixaLmt3PVwia3dcIixaLnRlcm1zPVwidGVybXNcIixaKSxHaj17aGM6MX07bj1ULnByb3RvdHlwZTtuLm1jPXooVC5wcm90b3R5cGUubWMsXCJjQUFcIik7bi5wYz16KFQucHJvdG90eXBlLnBjLFwiY0ZBTVwiKTtuLlo9eihULnByb3RvdHlwZS5aLFwiY0ZBXCIpO24uc2Q9eihULnByb3RvdHlwZS5zZCxcInZBU0RPXCIpO24uV2M9eihULnByb3RvdHlwZS5XYyxcIm9UUFBcIik7XG5uLkRhPXooVC5wcm90b3R5cGUuRGEsXCJvVEJQXCIpO24ub2M9eihULnByb3RvdHlwZS5vYyxcImNDUFwiKTtuLnJjPXooVC5wcm90b3R5cGUucmMsXCJjVUlQXCIpO24udWM9eihULnByb3RvdHlwZS51YyxcImNVXCIpO24uZGM9eihULnByb3RvdHlwZS5kYyxcImFPVFVcIik7bi5HPXooVC5wcm90b3R5cGUuRyxcImdGTlwiKTtuLkpjPXooVC5wcm90b3R5cGUuSmMsXCJnRk5BT0FKXCIpO24uSGM9eihULnByb3RvdHlwZS5IYyxcImdBSVwiKTtuLmljPXooVC5wcm90b3R5cGUuaWMsXCJjT1wiKTtuLkxjPXooVC5wcm90b3R5cGUuTGMsXCJpQUlcIik7bi5YYz16KFQucHJvdG90eXBlLlhjLFwicE1cIik7bi5NYz16KFQucHJvdG90eXBlLk1jLFwiaVwiKTtuLmxiPXooVC5wcm90b3R5cGUubGIsXCJjSVwiKTtuLkhiPXooVC5wcm90b3R5cGUuSGIsXCJtQVwiKTtuLnFkPXooVC5wcm90b3R5cGUucWQsXCJ0U1BcIik7bi5OYz16KFQucHJvdG90eXBlLk5jLFwiaUZTXCIpO24uVWM9eihULnByb3RvdHlwZS5VYyxcIm5OQVwiKTtcbm4ubGQ9eihULnByb3RvdHlwZS5sZCxcInNJSFwiKTtuLmtkPXooVC5wcm90b3R5cGUua2QsXCJzQ1dcIik7bi5SYj16KFQucHJvdG90eXBlLlJiLFwic1BcIik7bi5lZD16KFQucHJvdG90eXBlLmVkLFwicklTXCIpO24udWI9eihULnByb3RvdHlwZS51YixcImRDRVwiKTtuLlRiPXooVC5wcm90b3R5cGUuVGIsXCJzQ1wiKTtuLkVhPXooVC5wcm90b3R5cGUuRWEsXCJjVkFTRE9cIik7bi5CYj16KFQucHJvdG90eXBlLkJiLFwiaUlWXCIpO24uVmM9eihULnByb3RvdHlwZS5WYyxcInBMQ1wiKTtsaj16KGxqLFwiY1ZBU0RQT1wiKTtmdW5jdGlvbiBJaigpe31xYShJaixYaSk7SWoucHJvdG90eXBlLktjPWZ1bmN0aW9uKCl7cmV0dXJuXCJhZmRfYWRzXCJ9O0lqLnByb3RvdHlwZS5TYz1mdW5jdGlvbigpe3JldHVybiEwfTtmdW5jdGlvbiBKaigpe31xYShKaixYaSk7SmoucHJvdG90eXBlLnhiPWZ1bmN0aW9uKGEpe3JldHVybiB4KFwiX2Fmc1JzQ29va2llbGVzc1wiKSYmYSE9bnVsbCYmYS5pbmRleE9mKFwiZHAtXCIpPT09LTE/XCJodHRwczovL3N5bmRpY2F0ZWRzZWFyY2guZ29vZ1wiOkZiKCl9O0pqLnByb3RvdHlwZS5LYz1mdW5jdGlvbigpe3JldHVyblwiYWZkX2Fkc1wifTtKai5wcm90b3R5cGUuU2M9ZnVuY3Rpb24oKXtyZXR1cm4hMH07ZnVuY3Rpb24gS2ooKXt9cWEoS2osWGkpO0tqLnByb3RvdHlwZS5QZD1mdW5jdGlvbihhKXthPXRoaXMueGIoYSkucmVwbGFjZShcInd3dy5nb29nbGVcIixcImNzZS5nb29nbGVcIik7cmV0dXJuIG5ldyBIYihhK1wiL2NzZV92Mi9hZHNcIil9O0tqLnByb3RvdHlwZS5LYz1mdW5jdGlvbigpe3JldHVyblwidWRzX2Fkc19vbmx5XCJ9O2Z1bmN0aW9uIExqKGEsYixjLGQsZSxmLGcsaCxrLGwpe2w9bD09PXZvaWQgMD9bXTpsO1QuY2FsbCh0aGlzLGEsYixjLGQsZSxmLGcsaCxrPT09dm9pZCAwPzE6ayxsKX1xYShMaixUKTtMai5wcm90b3R5cGUuWj1mdW5jdGlvbihhKXt2YXIgYj1hLnJlbGF0ZWRTZWFyY2hlcztifHxiPT09MHx8KGI9YS5udW1iZXIpfHxiPT09MHx8KGI9MTApO3JldHVyblwiclwiK2J9O0xqLnByb3RvdHlwZS5aPXooTGoucHJvdG90eXBlLlosXCJjRkFfUlNcIik7ZnVuY3Rpb24gTWooYSxiLGMsZCxlLGYsZyxoLGssbCl7bD1sPT09dm9pZCAwP1tdOmw7VC5jYWxsKHRoaXMsYSxiLGMsZCxlLGYsZyxoLGs9PT12b2lkIDA/MTprLGwpfXFhKE1qLFQpO01qLnByb3RvdHlwZS5aPWZ1bmN0aW9uKCl7cmV0dXJuXCJzXCJ9O01qLnByb3RvdHlwZS5FYT1mdW5jdGlvbihhKXtULnByb3RvdHlwZS5FYS5jYWxsKHRoaXMsYSk7YS5jb2xvckJhY2tncm91bmR8fChhLmNvbG9yQmFja2dyb3VuZD1cInRyYW5zcGFyZW50XCIpfTt2YXIgdGo9QihmdW5jdGlvbihhLGIsYyxkLGUsZixnLGgsayl7ZnVuY3Rpb24gbCgpe31rPWs9PT12b2lkIDA/W106aztiLnJlbGF0ZWRTZWFyY2hlcz9iLnR5cGU9XCJyZWxhdGVkc2VhcmNoXCI6Yi50eXBlfHwoYi50eXBlPVwiYWRzXCIpO3ZhciBtPW5ldyBJaixwPW51bGw7c3dpdGNoKGIudHlwZSl7Y2FzZSBcInJlbGF0ZWRzZWFyY2hcIjpsPUxqO3A9bmV3IEpqO2JyZWFrO2Nhc2UgXCJhZHNcIjpjYXNlIFwidGV4dGFkc1wiOmIudHlwZT1cImFkc1wiO2w9VDtwPWIuZ2NzYz9uZXcgS2o6bTticmVhaztjYXNlIFwic2VhcmNoYm94XCI6bD1NajtwPW07eChcIl9hZnNSc0Nvb2tpZWxlc3NcIikmJihwPW5ldyBKaik7YnJlYWs7ZGVmYXVsdDp0aHJvdyBZYihcImludmFsaWQgYmxvY2sgdHlwZTogXCIrYi50eXBlKTt9cmV0dXJuIG5ldyBsKGEsYixwLGMsZCxlLGYsZyxoPT09dm9pZCAwPzE6aCxrKX0sXCJuQUJcIik7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMl0ucmVkdWNlKGZ1bmN0aW9uKGEsYil7cmV0dXJuIGErYn0pO1syLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7WzIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDJdLnJlZHVjZShmdW5jdGlvbihhLGIpe3JldHVybiBhK2J9KTtbMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyLDIsMiwyXS5yZWR1Y2UoZnVuY3Rpb24oYSxiKXtyZXR1cm4gYStifSk7ZnVuY3Rpb24gTmooYSxiLGMsZCl7ZD1kPT09dm9pZCAwPyExOmQ7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHN8fChhLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cz1bXSk7dmFyIGU9T2coYS5kb2N1bWVudCk7aWYoYyl7dmFyIGY9ZnVuY3Rpb24oKXtpZihjKXt2YXIgZz1hLmdvb2dsZV9pbWFnZV9yZXF1ZXN0cyxoPW9iKGcsZSk7aD49MCYmQXJyYXkucHJvdG90eXBlLnNwbGljZS5jYWxsKGcsaCwxKX1MZyhlLFwibG9hZFwiLGYpO0xnKGUsXCJlcnJvclwiLGYpfTtLZyhlLFwibG9hZFwiLGYpO0tnKGUsXCJlcnJvclwiLGYpfWQmJihlLmF0dHJpYnV0aW9uU3JjPVwiXCIpO2Uuc3JjPWI7YS5nb29nbGVfaW1hZ2VfcmVxdWVzdHMucHVzaChlKX1cbmZ1bmN0aW9uIE9qKGEpe3ZhciBiPWI9PT12b2lkIDA/ITE6Yjt2YXIgYz1cImh0dHBzOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL2dlbl8yMDQ/aWQ9dGNmZVwiO01nKGEsZnVuY3Rpb24oZCxlKXtpZihkfHxkPT09MCljKz1cIiZcIitlK1wiPVwiK2VuY29kZVVSSUNvbXBvbmVudChcIlwiK2QpfSk7UGooYyxiKX1cbmZ1bmN0aW9uIFBqKGEsYil7dmFyIGM9d2luZG93O2I9Yj09PXZvaWQgMD8hMTpiO3ZhciBkPWQ9PT12b2lkIDA/ITE6ZDtjLmZldGNoPyhiPXtrZWVwYWxpdmU6ITAsY3JlZGVudGlhbHM6XCJpbmNsdWRlXCIscmVkaXJlY3Q6XCJmb2xsb3dcIixtZXRob2Q6XCJnZXRcIixtb2RlOlwibm8tY29yc1wifSxkJiYoYi5tb2RlPVwiY29yc1wiLFwic2V0QXR0cmlidXRpb25SZXBvcnRpbmdcImluIFhNTEh0dHBSZXF1ZXN0LnByb3RvdHlwZT9iLmF0dHJpYnV0aW9uUmVwb3J0aW5nPXtldmVudFNvdXJjZUVsaWdpYmxlOlwidHJ1ZVwiLHRyaWdnZXJFbGlnaWJsZTpcImZhbHNlXCJ9OmIuaGVhZGVycz17XCJBdHRyaWJ1dGlvbi1SZXBvcnRpbmctRWxpZ2libGVcIjpcImV2ZW50LXNvdXJjZVwifSksYy5mZXRjaChhLGIpKTpOaihjLGEsYj09PXZvaWQgMD8hMTpiLGQ9PT12b2lkIDA/ITE6ZCl9O2Z1bmN0aW9uIFFqKGEpe2EuYWRkdGxDb25zZW50IT09dm9pZCAwJiZ0eXBlb2YgYS5hZGR0bENvbnNlbnQhPT1cInN0cmluZ1wiJiYoYS5hZGR0bENvbnNlbnQ9dm9pZCAwKTthLmdkcHJBcHBsaWVzIT09dm9pZCAwJiZ0eXBlb2YgYS5nZHByQXBwbGllcyE9PVwiYm9vbGVhblwiJiYoYS5nZHByQXBwbGllcz12b2lkIDApO3JldHVybiBhLnRjU3RyaW5nIT09dm9pZCAwJiZ0eXBlb2YgYS50Y1N0cmluZyE9PVwic3RyaW5nXCJ8fGEubGlzdGVuZXJJZCE9PXZvaWQgMCYmdHlwZW9mIGEubGlzdGVuZXJJZCE9PVwibnVtYmVyXCI/MjphLmNtcFN0YXR1cyYmYS5jbXBTdGF0dXMhPT1cImVycm9yXCI/MDozfVxuZnVuY3Rpb24gUmooYSxiKXtiPWI9PT12b2lkIDA/e306YjtqZi5jYWxsKHRoaXMpO3RoaXMua2E9YTt0aGlzLmVhPW51bGw7dGhpcy5PYj17fTt0aGlzLkllPTA7dmFyIGM7dGhpcy5nZT0oYz1iLnRpbWVvdXRNcykhPW51bGw/Yzo1MDA7dmFyIGQ7dGhpcy5DZD0oZD1iLldnKSE9bnVsbD9kOiExO3RoaXMucGE9bnVsbH1xYShSaixqZik7UmoucHJvdG90eXBlLlQ9ZnVuY3Rpb24oKXt0aGlzLk9iPXt9O3RoaXMucGEmJihMZyh0aGlzLmthLFwibWVzc2FnZVwiLHRoaXMucGEpLGRlbGV0ZSB0aGlzLnBhKTtkZWxldGUgdGhpcy5PYjtkZWxldGUgdGhpcy5rYTtkZWxldGUgdGhpcy5lYTtqZi5wcm90b3R5cGUuVC5jYWxsKHRoaXMpfTtcblJqLnByb3RvdHlwZS5hZGRFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEpe2Z1bmN0aW9uIGIoZyxoKXtjbGVhclRpbWVvdXQoZik7Zz8oZD1nLGQuaW50ZXJuYWxFcnJvclN0YXRlPVFqKGQpLGQuaW50ZXJuYWxCbG9ja09uRXJyb3JzPWMuQ2QsaCYmZC5pbnRlcm5hbEVycm9yU3RhdGU9PT0wfHwoZC50Y1N0cmluZz1cInRjdW5hdmFpbGFibGVcIixofHwoZC5pbnRlcm5hbEVycm9yU3RhdGU9MykpKTooZC50Y1N0cmluZz1cInRjdW5hdmFpbGFibGVcIixkLmludGVybmFsRXJyb3JTdGF0ZT0zKTthKGQpfXZhciBjPXRoaXMsZD17aW50ZXJuYWxCbG9ja09uRXJyb3JzOnRoaXMuQ2R9LGU9SmcoZnVuY3Rpb24oKXtyZXR1cm4gYShkKX0pLGY9MDt0aGlzLmdlIT09LTEmJihmPXNldFRpbWVvdXQoZnVuY3Rpb24oKXtkLnRjU3RyaW5nPVwidGN1bmF2YWlsYWJsZVwiO2QuaW50ZXJuYWxFcnJvclN0YXRlPTE7ZSgpfSx0aGlzLmdlKSk7dHJ5e1NqKHRoaXMsXCJhZGRFdmVudExpc3RlbmVyXCIsYil9Y2F0Y2goZyl7ZC50Y1N0cmluZz1cblwidGN1bmF2YWlsYWJsZVwiLGQuaW50ZXJuYWxFcnJvclN0YXRlPTMsZiYmKGNsZWFyVGltZW91dChmKSxmPTApLGUoKX19O1JqLnByb3RvdHlwZS5yZW1vdmVFdmVudExpc3RlbmVyPWZ1bmN0aW9uKGEpe2EmJmEubGlzdGVuZXJJZCYmU2oodGhpcyxcInJlbW92ZUV2ZW50TGlzdGVuZXJcIixudWxsLGEubGlzdGVuZXJJZCl9O2Z1bmN0aW9uIFNqKGEsYixjLGQpe2N8fChjPWZ1bmN0aW9uKCl7fSk7aWYodHlwZW9mIGEua2EuX190Y2ZhcGk9PT1cImZ1bmN0aW9uXCIpYT1hLmthLl9fdGNmYXBpLGEoYiwyLGMsZCk7ZWxzZSBpZihhLndiKCkpe1RqKGEpO3ZhciBlPSsrYS5JZTthLk9iW2VdPWM7YS5lYSYmKGM9e30sYS5lYS5wb3N0TWVzc2FnZSgoYy5fX3RjZmFwaUNhbGw9e2NvbW1hbmQ6Yix2ZXJzaW9uOjIsY2FsbElkOmUscGFyYW1ldGVyOmR9LGMpLFwiKlwiKSl9ZWxzZSBjKHt9LCExKX1cblJqLnByb3RvdHlwZS53Yj1mdW5jdGlvbigpe3JldHVybiB0aGlzLmVhP3RoaXMuZWE6dGhpcy5lYT1OZyh0aGlzLmthLFwiX190Y2ZhcGlMb2NhdG9yXCIpfTtmdW5jdGlvbiBUaihhKXthLnBhfHwoYS5wYT1mdW5jdGlvbihiKXt0cnl7dmFyIGM9KHR5cGVvZiBiLmRhdGE9PT1cInN0cmluZ1wiP0pTT04ucGFyc2UoYi5kYXRhKTpiLmRhdGEpLl9fdGNmYXBpUmV0dXJuO2EuT2JbYy5jYWxsSWRdKGMucmV0dXJuVmFsdWUsYy5zdWNjZXNzKX1jYXRjaChkKXt9fSxLZyhhLmthLFwibWVzc2FnZVwiLGEucGEpKX1cbmZ1bmN0aW9uIFVqKGEpe2lmKGEuZ2RwckFwcGxpZXM9PT0hMSlyZXR1cm4hMDthLmludGVybmFsRXJyb3JTdGF0ZT09PXZvaWQgMCYmKGEuaW50ZXJuYWxFcnJvclN0YXRlPVFqKGEpKTtyZXR1cm4gYS5jbXBTdGF0dXM9PT1cImVycm9yXCJ8fGEuaW50ZXJuYWxFcnJvclN0YXRlIT09MD9hLmludGVybmFsQmxvY2tPbkVycm9ycz8oT2ooe2U6U3RyaW5nKGEuaW50ZXJuYWxFcnJvclN0YXRlKX0pLCExKTohMDphLmNtcFN0YXR1cyE9PVwibG9hZGVkXCJ8fGEuZXZlbnRTdGF0dXMhPT1cInRjbG9hZGVkXCImJmEuZXZlbnRTdGF0dXMhPT1cInVzZXJhY3Rpb25jb21wbGV0ZVwiPyExOiEwfTtmdW5jdGlvbiBWaihhLGIpe2I9Yi5saXN0ZW5lcjsoYT0oMCxhLl9fZ3BwKShcImFkZEV2ZW50TGlzdGVuZXJcIixiKSkmJmIoYSwhMCl9ZnVuY3Rpb24gV2ooYSxiKXsoMCxhLl9fZ3BwKShcInJlbW92ZUV2ZW50TGlzdGVuZXJcIixiLmxpc3RlbmVyLGIubGlzdGVuZXJJZCl9XG52YXIgWGo9e1FjOmZ1bmN0aW9uKGEpe3JldHVybiBhLmxpc3RlbmVyfSxJYjpmdW5jdGlvbihhLGIpe2E9e307cmV0dXJuIGEuX19ncHBDYWxsPXtjYWxsSWQ6Yixjb21tYW5kOlwiYWRkRXZlbnRMaXN0ZW5lclwiLHZlcnNpb246XCIxLjFcIn0sYX0sVGE6ZnVuY3Rpb24oYSxiKXtiPWIuX19ncHBSZXR1cm47YShiLnJldHVyblZhbHVlLGIuc3VjY2Vzcyl9fSxZaj17UWM6ZnVuY3Rpb24oYSl7cmV0dXJuIGEubGlzdGVuZXJ9LEliOmZ1bmN0aW9uKGEsYil7dmFyIGM9e307cmV0dXJuIGMuX19ncHBDYWxsPXtjYWxsSWQ6Yixjb21tYW5kOlwicmVtb3ZlRXZlbnRMaXN0ZW5lclwiLHZlcnNpb246XCIxLjFcIixwYXJhbWV0ZXI6YS5saXN0ZW5lcklkfSxjfSxUYTpmdW5jdGlvbihhLGIpe2I9Yi5fX2dwcFJldHVybjt2YXIgYz1iLnJldHVyblZhbHVlLmRhdGE7YT09bnVsbHx8YShjLGIuc3VjY2Vzcyl9fTtcbmZ1bmN0aW9uIFpqKGEpe2E9dHlwZW9mIGEuZGF0YT09PVwic3RyaW5nXCI/SlNPTi5wYXJzZShhLmRhdGEpOmEuZGF0YTtyZXR1cm57VmQ6YSxYZDphLl9fZ3BwUmV0dXJuLmNhbGxJZH19XG5mdW5jdGlvbiBhayhhLGIpe3ZhciBjPWI9PT12b2lkIDA/e306YjtiPWMudGltZW91dE1zO2M9Yy5jbXBJbnRlcmFjdGlvbkV2ZW50UmVwb3J0ZXI7amYuY2FsbCh0aGlzKTt0aGlzLmNhbGxlcj1uZXcgTGkoYSxcIl9fZ3BwTG9jYXRvclwiLGZ1bmN0aW9uKGQpe3JldHVybiB0eXBlb2YgZC5fX2dwcD09PVwiZnVuY3Rpb25cIn0sWmopO3RoaXMuY2FsbGVyLlhhLnNldChcImFkZEV2ZW50TGlzdGVuZXJcIixWaik7dGhpcy5jYWxsZXIuSGEuc2V0KFwiYWRkRXZlbnRMaXN0ZW5lclwiLFhqKTt0aGlzLmNhbGxlci5YYS5zZXQoXCJyZW1vdmVFdmVudExpc3RlbmVyXCIsV2opO3RoaXMuY2FsbGVyLkhhLnNldChcInJlbW92ZUV2ZW50TGlzdGVuZXJcIixZaik7dGhpcy50aW1lb3V0TXM9YiE9bnVsbD9iOjUwMDt0aGlzLmNtcEludGVyYWN0aW9uRXZlbnRSZXBvcnRlcj1jfXFhKGFrLGpmKTthay5wcm90b3R5cGUuVD1mdW5jdGlvbigpe3RoaXMuY2FsbGVyLmRpc3Bvc2UoKTtqZi5wcm90b3R5cGUuVC5jYWxsKHRoaXMpfTtcbmFrLnByb3RvdHlwZS53Yj1mdW5jdGlvbigpe3JldHVybiBNaSh0aGlzLmNhbGxlcil9O1xuYWsucHJvdG90eXBlLmFkZEV2ZW50TGlzdGVuZXI9ZnVuY3Rpb24oYSl7dmFyIGI9dGhpcyxjPUpnKGZ1bmN0aW9uKCl7YShiaywhMCl9KSxkPXRoaXMudGltZW91dE1zPT09LTE/dm9pZCAwOnNldFRpbWVvdXQoZnVuY3Rpb24oKXtjKCl9LHRoaXMudGltZW91dE1zKTtOaSh0aGlzLmNhbGxlcixcImFkZEV2ZW50TGlzdGVuZXJcIix7bGlzdGVuZXI6ZnVuY3Rpb24oZSxmKXtjbGVhclRpbWVvdXQoZCk7dHJ5e3ZhciBnO2lmKCgoZz1lLnBpbmdEYXRhKT09bnVsbD92b2lkIDA6Zy5ncHBWZXJzaW9uKT09PXZvaWQgMHx8ZS5waW5nRGF0YS5ncHBWZXJzaW9uPT09XCIxXCJ8fGUucGluZ0RhdGEuZ3BwVmVyc2lvbj09PVwiMS4wXCIpe2IucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLmxpc3RlbmVySWQpO3ZhciBoPXtldmVudE5hbWU6XCJzaWduYWxTdGF0dXNcIixkYXRhOlwicmVhZHlcIixwaW5nRGF0YTp7aW50ZXJuYWxFcnJvclN0YXRlOjEsZ3BwU3RyaW5nOlwiR1BQX0VSUk9SX1NUUklOR19JU19ERVBSRUNBVEVEX1NQRUNcIixcbmFwcGxpY2FibGVTZWN0aW9uczpbLTFdfX19ZWxzZSBBcnJheS5pc0FycmF5KGUucGluZ0RhdGEuYXBwbGljYWJsZVNlY3Rpb25zKT9oPWU6KGIucmVtb3ZlRXZlbnRMaXN0ZW5lcihlLmxpc3RlbmVySWQpLGg9e2V2ZW50TmFtZTpcInNpZ25hbFN0YXR1c1wiLGRhdGE6XCJyZWFkeVwiLHBpbmdEYXRhOntpbnRlcm5hbEVycm9yU3RhdGU6MixncHBTdHJpbmc6XCJHUFBfRVJST1JfU1RSSU5HX0VYUEVDVEVEX0FQUExJQ0FUSU9OX1NFQ1RJT05fQVJSQVlcIixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX19KTthKGgsZik7dmFyIGs7KGs9Yi5jbXBJbnRlcmFjdGlvbkV2ZW50UmVwb3J0ZXIpPT1udWxsfHxrLmVoKCl9Y2F0Y2gobCl7aWYoZT09bnVsbD8wOmUubGlzdGVuZXJJZCl0cnl7Yi5yZW1vdmVFdmVudExpc3RlbmVyKGUubGlzdGVuZXJJZCl9Y2F0Y2gobSl7YShjaywhMCk7cmV0dXJufWEoZGssITApfX19KX07XG5hay5wcm90b3R5cGUucmVtb3ZlRXZlbnRMaXN0ZW5lcj1mdW5jdGlvbihhKXtOaSh0aGlzLmNhbGxlcixcInJlbW92ZUV2ZW50TGlzdGVuZXJcIix7bGlzdGVuZXI6ZnVuY3Rpb24oKXt9LGxpc3RlbmVySWQ6YX0pfTtcbnZhciBkaz17ZXZlbnROYW1lOlwic2lnbmFsU3RhdHVzXCIsZGF0YTpcInJlYWR5XCIscGluZ0RhdGE6e2ludGVybmFsRXJyb3JTdGF0ZToyLGdwcFN0cmluZzpcIkdQUF9FUlJPUl9TVFJJTkdfVU5BVkFJTEFCTEVcIixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX0sbGlzdGVuZXJJZDotMX0sYms9e2V2ZW50TmFtZTpcInNpZ25hbFN0YXR1c1wiLGRhdGE6XCJyZWFkeVwiLHBpbmdEYXRhOntncHBTdHJpbmc6XCJHUFBfRVJST1JfU1RSSU5HX0xJU1RFTkVSX1JFR0lTVFJBVElPTl9USU1FT1VUXCIsaW50ZXJuYWxFcnJvclN0YXRlOjIsYXBwbGljYWJsZVNlY3Rpb25zOlstMV19LGxpc3RlbmVySWQ6LTF9LGNrPXtldmVudE5hbWU6XCJzaWduYWxTdGF0dXNcIixkYXRhOlwicmVhZHlcIixwaW5nRGF0YTp7Z3BwU3RyaW5nOlwiR1BQX0VSUk9SX1NUUklOR19SRU1PVkVfRVZFTlRfTElTVEVORVJfRVJST1JcIixpbnRlcm5hbEVycm9yU3RhdGU6MixhcHBsaWNhYmxlU2VjdGlvbnM6Wy0xXX0sbGlzdGVuZXJJZDotMX07dmFyIGZrPUIoZnVuY3Rpb24oYSl7YT1hPT09dm9pZCAwPyEwOmE7dmFyIGI9bmV3IGFrKHdpbmRvdyx7dGltZW91dE1zOi0xfSk7aWYoIU1pKGIuY2FsbGVyKSlyZXR1cm4gbnVsbDt2YXIgYz1LZCgpLGQ9bnVsbDtiLmFkZEV2ZW50TGlzdGVuZXIoZnVuY3Rpb24oZil7Zi5ldmVudE5hbWU9PT1cImxpc3RlbmVyUmVnaXN0ZXJlZFwiJiYoZD1mLmxpc3RlbmVySWQpO2lmKGYucGluZ0RhdGEuaW50ZXJuYWxFcnJvclN0YXRlPT09MXx8Zi5waW5nRGF0YS5pbnRlcm5hbEVycm9yU3RhdGU9PT0yKWMucmVzb2x2ZShudWxsKTtlbHNle3ZhciBnOyhnPWYucGluZ0RhdGEuc2lnbmFsU3RhdHVzPT09XCJyZWFkeVwiKXx8KGc9Zi5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMsZz0hZ3x8Zy5sZW5ndGg9PT0xJiZnWzBdPT09LTEpO2lmKGcpe3ZhciBoPWYucGluZ0RhdGEuZ3BwU3RyaW5nLGs9Zi5waW5nRGF0YS5hcHBsaWNhYmxlU2VjdGlvbnMuaW5kZXhPZigyKTtoPShnPWshPT0tMSk/aC5zcGxpdChcIn5cIilbaytcbjFdOlwiXCI7Zj1mLnBpbmdEYXRhLnBhcnNlZFNlY3Rpb25zO2s9IWc7ZiYmZi5oYXNPd25Qcm9wZXJ0eShcInRjZmV1djJcIikmJihrPWYudGNmZXV2Mi5QdXJwb3NlQ29uc2VudHNbMF0pOyFrJiZhfHxjLnJlc29sdmUobmV3IGVrKGgsZykpfX19KTt2YXIgZT1uZXcgUHJvbWlzZShmdW5jdGlvbihmKXtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7ZihudWxsKX0sMUU0KX0pO2U9UHJvbWlzZS5yYWNlKFtjLnByb21pc2UsZV0pO2UudGhlbihmdW5jdGlvbigpe2QhPT1udWxsJiZiLnJlbW92ZUV2ZW50TGlzdGVuZXIoZCl9KTtyZXR1cm4gZX0sXCJnZ2FkXCIpO2Z1bmN0aW9uIGVrKGEsYil7dGhpcy5ZYT1hO3RoaXMuS2E9Yn07ZnVuY3Rpb24gZ2soYSl7aWYoIVVqKGEpKXJldHVybiExO2lmKGEuZ2RwckFwcGxpZXM9PT0hMXx8YS50Y1N0cmluZz09PVwidGN1bmF2YWlsYWJsZVwiKXJldHVybiEwO3ZhciBiPWI9PT12b2lkIDA/XCI3NTVcIjpiO2I6e2lmKGEucHVibGlzaGVyJiZhLnB1Ymxpc2hlci5yZXN0cmljdGlvbnMpe3ZhciBjPWEucHVibGlzaGVyLnJlc3RyaWN0aW9uc1tcIjFcIl07aWYoYyE9PXZvaWQgMCl7Yz1jW2I9PT12b2lkIDA/XCI3NTVcIjpiXTticmVhayBifX1jPXZvaWQgMH1jPT09MD9iPSExOmEucHVycG9zZSYmYS52ZW5kb3I/KGM9YS52ZW5kb3IuY29uc2VudHMsKGI9ISghY3x8IWNbYj09PXZvaWQgMD9cIjc1NVwiOmJdKSkmJmEucHVycG9zZU9uZVRyZWF0bWVudCYmYS5wdWJsaXNoZXJDQz09PVwiQ0hcIj9iPSEwOmImJihiPWEucHVycG9zZS5jb25zZW50cyxiPSEoIWJ8fCFiW1wiMVwiXSkpKTpiPSEwO3JldHVybiBiPyEwOihjb25zb2xlLndhcm4oWWIoXCJUQyBzdHJpbmcgbGFja3MgcHVycG9zZSAxIGNvbnNlbnQgZm9yIEdvb2dsZSAoR1ZMIElEOiA3NTUpLiBDU0EgYWRzIHdpbGwgbm90IGJlIHJlcXVlc3RlZCB1bnRpbCBjb25zZW50IGlzIGdpdmVuLiBUQyBzdHJpbmc6IFwiK1xuYS50Y1N0cmluZykpLCExKX1cbnZhciBoaz1CKGZ1bmN0aW9uKGEpe3ZhciBiPW5ldyBSaih3aW5kb3cse3RpbWVvdXRNczotMX0pO2lmKHR5cGVvZiBiLmthLl9fdGNmYXBpPT09XCJmdW5jdGlvblwifHxiLndiKCkhPW51bGwpe3ZhciBjPUtkKCksZD0wO2Q9c2V0VGltZW91dChmdW5jdGlvbigpe2Q9MDtjb25zb2xlLndhcm4oWWIoXCJObyByZXNwb25zZSByZWNlaXZlZCBmcm9tIENNUCBhZnRlciAxMCBzZWNvbmRzLiBDU0EgYWRzIGhhdmUgbm90IGJlZW4gcmVxdWVzdGVkLlwiKSl9LDFFNCk7Yi5hZGRFdmVudExpc3RlbmVyKGZ1bmN0aW9uKGUpe2QmJihjbGVhclRpbWVvdXQoZCksZD0wKTtpZihnayhlKSl7aWYoZS5pbnRlcm5hbEVycm9yU3RhdGUhPT0wKXt2YXIgZj1uZXcgTGIoYSk7c3dpdGNoKGUuaW50ZXJuYWxFcnJvclN0YXRlKXtjYXNlIDE6UmIoZixcInRvXCIsSlNPTi5zdHJpbmdpZnkoZSkpO2NvbnNvbGUud2FybihZYihcIlJlYWNoZWQgdGltZW91dCBiZWZvcmUgYSByZXNwb25zZSB3YXMgcmVjZWl2ZWQgZnJvbSBDTVAuXCIpKTticmVhaztcbmNhc2UgMjpSYihmLFwiaXRcIixKU09OLnN0cmluZ2lmeShlKSk7Y29uc29sZS53YXJuKFliKFwiSW52YWxpZCB0eXBlcyBpbiByZWNlaXZlZCB0Y0RhdGEuXCIpKTticmVhaztjYXNlIDM6UmIoZixcImVyXCIsSlNPTi5zdHJpbmdpZnkoZSkpLGNvbnNvbGUud2FybihZYihcIkNNUCByZXR1cm5lZCBlcnJvciBzdGF0dXMuXCIpKX19Yi5yZW1vdmVFdmVudExpc3RlbmVyKGUpO2MucmVzb2x2ZSh7dGNTdHJpbmc6ZS50Y1N0cmluZyxnZHByQXBwbGllczplLmdkcHJBcHBsaWVzfSl9fSk7cmV0dXJuIGMucHJvbWlzZX1yZXR1cm4gbnVsbH0sXCJnVEFEXCIpO3ZhciBpaz1oYShbXCJodHRwczovL3BhcnRuZXIuZ29vZ2xlYWRzZXJ2aWNlcy5jb20vZ2FtcGFkL2Nvb2tpZS5qc1wiXSk7ZnVuY3Rpb24gamsoYSxiKXt2YXIgYz1hLmNyZWF0ZUVsZW1lbnQoXCJzY3JpcHRcIik7bWIoYyxiKTsoYT1hLmdldEVsZW1lbnRzQnlUYWdOYW1lKFwic2NyaXB0XCIpWzBdKSYmYS5wYXJlbnROb2RlJiZhLnBhcmVudE5vZGUuaW5zZXJ0QmVmb3JlKGMsYSl9ZnVuY3Rpb24ga2soYSxiLGMsZCxlKXt0aGlzLm5hbWU9YTt0aGlzLnZhbHVlPWI7dGhpcy5FYz1jO3RoaXMucGF0aD1kPT09dm9pZCAwP251bGw6ZDt0aGlzLmRvbWFpbj1lPT09dm9pZCAwP251bGw6ZX1mdW5jdGlvbiBsayhhKXt0aGlzLks9YTt0aGlzLmxjPTA7dGhpcy5iZT1udWxsfVxuZnVuY3Rpb24gbWsoYSxiKXtpZighYi5uYW1lfHwhYi52YWx1ZXx8IWIuRWMpdGhyb3dcIlNldHRpbmcgYSBjb29raWUgbXVzdCBpbmNsdWRlIGNvb2tpZSBuYW1lIGFuZCB2YWx1ZSBhbmQgZXhwaXJhdGlvbi5cIjt2YXIgYz1iLm5hbWUrXCI9XCIrYi52YWx1ZSxkPVwiXCIsZT1cIlwiLGY9XCJcIjtiLnBhdGgmJihkPVwiO3BhdGg9XCIrYi5wYXRoKTt2YXIgZz1iLmRvbWFpbjtpZihnKXthOmlmKHgoXCJfdXNlU2VydmVyUHJvdmlkZWREb21haW5cIikpe2lmKGU9QWIoXCJzc2RsXCIsRGIoKSkpaWYoZT1uZXcgUmVnRXhwKFwiKFwiK2F0b2IoZSkucmVwbGFjZSgvLC9nLFwiKXwoXCIpK1wiKVwiKSxnLm1hdGNoKGUpKXtlPSExO2JyZWFrIGF9ZT0hMH1lbHNlIGU9ITE7ZT1cIjtkb21haW49XCIrKGU/ZzphLksubG9jYXRpb24uaG9zdG5hbWUpfWIuRWMmJihmPVwiO2V4cGlyZXM9XCIrYi5FYyk7YS5LLmRvY3VtZW50LmNvb2tpZT1jK2YrZCtlfVxuZnVuY3Rpb24gbmsoYSxiKXtpZighYilyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHtjb29raWU6bnVsbCxzdGF0dXM6NH0pO3ZhciBjPWIuX2Nvb2tpZXNfWzBdO2lmKCFjKXJldHVybiBQcm9taXNlLnJlc29sdmUoe2Nvb2tpZTpudWxsLHN0YXR1czo0fSk7Yj1jLl92YWx1ZV87Yz1uZXcga2soXCJfX2dzYXNcIixiLChuZXcgRGF0ZShjLl9leHBpcmVzXyoxRTMpKS50b1VUQ1N0cmluZygpLGMuX3BhdGhfLGMuX2RvbWFpbl8pO3RyeXttayhhLGMpfWNhdGNoKGQpe3JldHVybiBQcm9taXNlLnJlc29sdmUoe2Nvb2tpZTpudWxsLHN0YXR1czo3fSl9cmV0dXJuIFByb21pc2UucmVzb2x2ZSh7Y29va2llOmIsc3RhdHVzOjN9KX1cbmZ1bmN0aW9uIG9rKGEpe2lmKGEubGM9PT0wKXthOnt0cnl7dmFyIGI9bmV3IERhdGU7Yi5zZXRUaW1lKGIuZ2V0VGltZSgpKzM2RTUpO21rKGEsbmV3IGtrKFwiR29vZ2xlQWRTZXJ2aW5nVGVzdFwiLFwiR29vZFwiLGIudG9VVENTdHJpbmcoKSkpfWNhdGNoKGQpe2I9ITE7YnJlYWsgYX1pZihiPXBrKGEsXCJHb29nbGVBZFNlcnZpbmdUZXN0XCIpPT09XCJHb29kXCIpe3ZhciBjPW5ldyBrayhcIkdvb2dsZUFkU2VydmluZ1Rlc3RcIixcIkdvb2RcIiwobmV3IERhdGUoMCkpLnRvVVRDU3RyaW5nKCkpO3RyeXttayhhLGMpfWNhdGNoKGQpe2I9ITF9fX1hLmxjPWI/MjoxfXJldHVybiBhLmxjPT09Mn1cbmZ1bmN0aW9uIHBrKGEsYil7aWYodHlwZW9mIGEuSy5kb2N1bWVudC5jb29raWU9PT1cInN0cmluZ1wiKXt2YXIgYz1uZXcgUmVnRXhwKFwiXlxcXFxzKlwiK2IrXCI9KC4qKVwiKTtpZihhPWEuSy5kb2N1bWVudC5jb29raWUuc3BsaXQoXCI7XCIpLmZpbmQoZnVuY3Rpb24oZCl7cmV0dXJuIGQubWF0Y2goYykhPW51bGx9KSlyZXR1cm4gYS5tYXRjaChjKVsxXX19XG5mdW5jdGlvbiBxayhhLGIpe2I9e2RvbWFpbjphLksubG9jYXRpb24uaG9zdG5hbWUsY2xpZW50OmJ8fFwidW5kZWZpbmVkXCIscHJvZHVjdDpcIlNBU1wiLGNhbGxiYWNrOlwiX19zYXNDb29raWVcIixjb29raWVfdHlwZXM6XCJ2MSx2MlwifTtpZihhLkshPWEuSy5wYXJlbnQmJiFiLmRvbWFpbil7dmFyIGM9YS5LLnBhcmVudCYmYS5LLnBhcmVudC5sb2NhdGlvbiYmYS5LLnBhcmVudC5sb2NhdGlvbi5ob3N0bmFtZTtiLmRvbWFpbj1hLksubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zJiZhLksubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zWzBdfHxjfXZhciBkPVdjKFZjKGlrKSxuZXcgTWFwKE9iamVjdC5lbnRyaWVzKGIpKSk7cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uKGUpe2EuSy5fX3Nhc0Nvb2tpZT1mdW5jdGlvbihmKXtuayhhLGEuYmU/YS5iZTpmKS50aGVuKGZ1bmN0aW9uKGcpe2UoZyl9KX07amsoYS5LLmRvY3VtZW50LGQpfSl9XG52YXIgcms9QihmdW5jdGlvbihhKXtyZXR1cm4gYT09bnVsbD9udWxsOm9rKGEpPyhhPXBrKGEsXCJfX2dzYXNcIikpP3tWOjYsY29va2llOmF9Om51bGw6e1Y6MCxjb29raWU6bnVsbH19LFwic2FzQ2tlRXJyXCIpLHNrPUIoZnVuY3Rpb24oYSl7dmFyIGI9bmV3IGxrKHdpbmRvdyk7cmV0dXJuIG9rKGIpP3FrKGIsYSkudGhlbihmdW5jdGlvbihjKXtyZXR1cm57VjpjLnN0YXR1cyxjb29raWU6Yy5jb29raWV9fSk6UHJvbWlzZS5yZXNvbHZlKHtWOjAsY29va2llOm51bGx9KX0sXCJzY0VyclwiKTt2YXIgdGs9bnVsbDtmdW5jdGlvbiB1ayhhLGIsYyl7YT8oYi5jb29raWU9YS5jb29raWUsYi5WPWEuVik6KHRrPXNrKGMpLHRrLnRoZW4oZnVuY3Rpb24oZCl7Yi5jb29raWU9ZC5jb29raWU7Yi5WPWQuVn0pKX1cbnZhciB2az1CKGZ1bmN0aW9uKGEsYixjLGQsZSxmKXtjPWM9PT12b2lkIDA/d2luZG93OmM7ZD1kPT09dm9pZCAwPyEwOmQ7Yj0hMTt2YXIgZz1kPT09ITEsaCxrLGw9KChoPWMubG9jYXRpb24pPT1udWxsP3ZvaWQgMDooaz1oLmhvc3QpPT1udWxsP3ZvaWQgMDprLmluZGV4T2YoXCJzdGFydHBhZ2UuY29tXCIpKSE9PS0xLG09IShlPT09dm9pZCAwPzA6ZSkmJiFsO2g9Q2IoXCJjZGxcIixEYigpKXx8KGY9PT12b2lkIDA/ITE6Zik7bSYmZyYmIXgoXCJfZW5hYmxlSXZ0Q2hhbmdlc1wiKT8oYj0hMCxmPWU9bnVsbCk6KGU9aGsoYSksZj14KFwiX2VuYWJsZUdwcEFwaVwiKXx8eChcIl91c2VHcHBBcGlcIik/ZmsoeChcIl91c2VHcHBBcGlcIikpOm51bGwpO3ZhciBwPXtkYTp2b2lkIDAsRmQ6dm9pZCAwLHRjU3RyaW5nOnZvaWQgMCxnZHByQXBwbGllczp2b2lkIDAsWWE6dm9pZCAwLEthOnZvaWQgMCxWOnZvaWQgMCxjb29raWU6dm9pZCAwLEdmOmQsamc6YixEZjptLGhnOmh9LHI9ITE7bSYmKGcmJihyPVxuITApLGh8fChyPSEwKSk7dmFyIHQ9bnVsbDtyJiYodD1yayhuZXcgbGsoYykpLHVrKHQscCxhKSk7ZD1beChcIl9kaXNhYmxlVXNwQXBpXCIpP251bGw6VmkoKSxlLGZdO3JldHVybiBkLmV2ZXJ5KGZ1bmN0aW9uKHYpe3JldHVybiB2PT1udWxsfSk/cDpOZChkKS50aGVuKGZ1bmN0aW9uKHYpe2Zvcih2YXIgdz0wO3c8di5sZW5ndGg7dysrKXt2YXIgQz12W3ddO2lmKEMpc3dpdGNoKHcpe2Nhc2UgMDpwLmRhPUMuZGE7cC5GZD1DLlBiO2JyZWFrO2Nhc2UgMTpwLnRjU3RyaW5nPUMudGNTdHJpbmc7cC5nZHByQXBwbGllcz1DLmdkcHJBcHBsaWVzO2JyZWFrO2Nhc2UgMjp4KFwiX2VuYWJsZUdwcEFwaVwiKSYmKHAuWWE9Qy5ZYSxwLkthPUMuS2EpLHgoXCJfdXNlR3BwQXBpXCIpJiYocC50Y1N0cmluZz1DLllhLHAuZ2RwckFwcGxpZXM9Qy5LYSl9fSFtfHxyfHxwLnRjU3RyaW5nPT1udWxsJiZwLmdkcHJBcHBsaWVzPT1udWxsfHwodD1yayhuZXcgbGsoYykpLHVrKHQscCxhKSk7cmV0dXJuIHB9KS5jYXRjaChmdW5jdGlvbih2KXtBLmxvZyh2LFxuXCJ1c2RQckVyclwiKX0pfSxcInVzZEVyclwiKTtmdW5jdGlvbiB3ayhhKXtmb3IodmFyIGI9bmV3IHhrLGM9YVswXSxkPSExLGU9MTtlPGEubGVuZ3RoO2UrKyl7dmFyIGY9bmV3IHlrLGc9dm9pZCAwLGg9dm9pZCAwLGs9ZixsPWMsbT1hW2VdO2ZvcihoIGluIG0pbS5oYXNPd25Qcm9wZXJ0eShoKSYmKGsub3B0aW9uc1toXT1tW2hdKTtmb3IoZyBpbiBsKWwuaGFzT3duUHJvcGVydHkoZykmJihrLm9wdGlvbnNbZ118fChrLm9wdGlvbnNbZ109bFtnXSkpO2R8fChmLm9wdGlvbnMudHlwZXx8Zi5vcHRpb25zLnJlbGF0ZWRTZWFyY2hlcykmJmYub3B0aW9ucy50eXBlIT09XCJhZHNcIiYmZi5vcHRpb25zLnR5cGUhPT1cInRleHRhZHNcInx8KGQ9Zi5vcHRpb25zLmZpcnN0VGV4dEFkQmxvY2s9ITApO2IuWWIucHVzaChmKX1mb3IodmFyIHAgaW4gYyljLmhhc093blByb3BlcnR5KHApJiYoYi5OYltwXT1jW3BdKTtyZXR1cm4gYn1mdW5jdGlvbiB5aygpe3RoaXMub3B0aW9ucz17fX1cbmZ1bmN0aW9uIHhrKCl7dGhpcy5OYj17fTt0aGlzLlliPVtdfTt2YXIgems9TWIoKSxBaz1cImNsaWNrdHJhY2tVcmwgY29udGFpbmVyIGNoYXRib3RVc2VyUHJvbXB0IGNoYXRib3RSZXNwb25zZSBpZnJhbWVIZWlnaHRDYWxsYmFjayBsaW5rVGFyZ2V0IGlzRGFya01vZGUgcHViSWQgcXVlcnkgc2V0dGluZ3NJZCBzdHlsZUlkIHdhaXRGb3JBZHNcIi5zcGxpdChcIiBcIik7ZnVuY3Rpb24gQmsoYSl7aWYoYS5sZW5ndGg8Mil0aHJvdyBZYihcIk5vIG9wdGlvbnMgc3BlY2lmaWVkLlwiKTtyZXR1cm4gYVsxXWluc3RhbmNlb2YgQXJyYXk/W2FbMF1dLmNvbmNhdChhWzFdKTpBcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChhLDApfUJrPXooQmssXCJwcGF0YVwiKTtcbmZ1bmN0aW9uIENrKGEpe3ZhciBiPSF5ZCh3aW5kb3cubG9jYXRpb24uaHJlZikucXVlcnksYz1iP1wicmVsYXRlZHNlYXJjaFwiOlwiYWRzXCI7Yj1iPzE1OjU7Zm9yKHZhciBkPSExLGU9MTtlPGEubGVuZ3RoOysrZSlpZihhW2VdLnR5cGU9PWMpe2Q9ITA7YnJlYWt9ZT1bXTthPXUoYSk7Zm9yKHZhciBmPWEubmV4dCgpOyFmLmRvbmU7Zj1hLm5leHQoKSlmPWYudmFsdWUsZi50eXBlPT1cImR5bmFtaWNcIj9kfHwoZi50eXBlPWMsZi5udW1iZXJ8fChmLm51bWJlcj1iKSxlLnB1c2goZikpOmUucHVzaChmKTtyZXR1cm4gZX1cbmZ1bmN0aW9uIERrKGEpe2Z1bmN0aW9uIGIoZCl7c3dpdGNoKGQpe2Nhc2UgXCJyZWxhdGVkc2VhcmNoXCI6Y2FzZSBcInNlYXJjaGJveFwiOnJldHVybiBjPzE6MjtkZWZhdWx0OnJldHVybiBjPzI6MX19aWYoIXgoXCJfYWZzUnNDb29raWVsZXNzXCIpfHxhLmxlbmd0aDwzKXJldHVybiBhO3ZhciBjPSF5ZCh3aW5kb3cubG9jYXRpb24uaHJlZikucXVlcnk7cmV0dXJuIGEuc2xpY2UoMCwxKS5jb25jYXQoYS5zbGljZSgxKS5zb3J0KGZ1bmN0aW9uKGQsZSl7cmV0dXJuIGIoZC50eXBlKS1iKGUudHlwZSl9KSl9XG5mdW5jdGlvbiBFayhhLGIpe3ZhciBjPWIuZGEsZD1iLkZkLGU9Yi50Y1N0cmluZyxmPWIuZ2RwckFwcGxpZXMsZz1iLllhLGg9Yi5LYSxrPWIuVjtiPWIuY29va2llO2MhPW51bGwmJihhLmNwcD1jKTtkPT09ITEmJihhLnBlcnNvbmFsaXplZEFkcz0hMSk7ZSYmKGEudGNTdHJpbmc9ZSk7ZiE9bnVsbCYmKGEuZ2RwckFwcGxpZXM9Zik7ZyYmKGEudGNmSW5HcHBTdHJpbmc9Zyk7aCYmKGEuZ2RwckFwcGxpZXNJbkdwcFN0cmluZz1oKTtrIT1udWxsJiYoYS5zY19zdGF0dXM9ayk7YiYmKGEuc2N0PWIpfUVrPXooRWssXCJhVURUQVwiKTtcbmZ1bmN0aW9uIEZrKGEsYixjLGQpe2M9Yz09PXZvaWQgMD9udWxsOmM7dmFyIGU9YS5UZDtkPWR8fERhdGUubm93KCk7Yj1CayhiKTtpZihiWzBdKXtiPUNrKGIpO2I9RGsoYik7YS5jYyYmKGJbMF0udHlwZT1hLmNjKTtpZihjJiYoRWsoYlswXSxjKSxjLkRmJiZjLmpnPT09ITEmJmMuZ2RwckFwcGxpZXM9PT12b2lkIDAmJmMudGNTdHJpbmc9PT12b2lkIDAmJmMuaGcmJmMuR2YpKWlmKHgoXCJfZW5hYmxlSXZ0Q2hhbmdlc1wiKSl7YT1iWzBdO2M9Yi5maWx0ZXIoZnVuY3Rpb24obCxtKXtyZXR1cm4gbT4wJiZcInJlbGF0ZWRTZWFyY2hlc1wiaW4gbH0pO2lmKGMubGVuZ3RoPT09MClyZXR1cm47Yj1bYV0uY29uY2F0KGMpfWVsc2UgcmV0dXJuO2E9d2soYik7dmFyIGY9W10sZz1bXSxoPXt9O2M9ZnVuY3Rpb24obCl7Zm9yKHZhciBtPXUoJGIobCkpLHA9bS5uZXh0KCk7IXAuZG9uZTtwPW0ubmV4dCgpKXtwPXAudmFsdWU7dmFyIHI9ZVtwXTtpZihyJiZyLkEpZi5wdXNoKHApO2Vsc2UgaWYoIXImJlxucCE9PVwiZmlyc3RUZXh0QWRCbG9ja1wiKWcucHVzaChwKTtlbHNlIGlmKHImJnIuZyl7aWYobFtwXT09PW51bGx8fGxbcF09PT12b2lkIDApYnJlYWs7ci5nLkMobFtwXSkhPW51bGx8fHIuRHx8KGhbcF09bFtwXSl9fX07YyhhLk5iKTtiPXUoYS5ZYik7Zm9yKHZhciBrPWIubmV4dCgpOyFrLmRvbmU7az1iLm5leHQoKSljKGsudmFsdWUub3B0aW9ucyk7Zi5sZW5ndGg+MCYmY29uc29sZS53YXJuKFwiVGhlIGZvbGxvd2luZyBDU0Egb3B0aW9uKHMpIHdlcmUgaWdub3JlZCBkdWUgdG8gYmVpbmcgb3ZlcnJpZGRlbiBieSBuYXRpdmUgc3R5bGUgY29udHJvbHM6IFwiK2Yuam9pbihcIiwgXCIpKTtnLmxlbmd0aD4wJiZjb25zb2xlLndhcm4oXCJUaGUgZm9sbG93aW5nIENTQSBvcHRpb24ocykgYXJlIHVuc3VwcG9ydGVkOiBcIitnLmpvaW4oXCIsIFwiKSk7T2JqZWN0LmtleXMoaCkubGVuZ3RoPjAmJihjPU9iamVjdC5rZXlzKGgpLm1hcChmdW5jdGlvbihsKXtyZXR1cm4gbCtcIj1cIitoW2xdfSkuam9pbihcIi5cIiksXG56ay5jbGllbnQ9YS5OYi5wdWJJZCxKYiYmUGIoemssXCJ1b2l1LVwiK2MpKTsoZD1HayhlLGEuTmIsYS5ZYixkLHt9KSkmJmQudGhlbihmdW5jdGlvbihsKXtEaihsKX0pfX1Gaz16KEZrLFwiYWFzaVwiKTtcbmZ1bmN0aW9uIEdrKGEsYixjLGQpe2lmKGMubGVuZ3RoPT0wKXJldHVybiBudWxsO3ZhciBlPVtdLGY9W10sZz17bWF4VG9wOjAsbWluVG9wOjAscmhzOjB9LGg9T2JqZWN0LmtleXMoVik7SGsrKztmb3IodmFyIGs9Yy5sZW5ndGgtMTtrPj0wO2stLSl7dmFyIGw9Y1trXS5vcHRpb25zO2wuYWRUZXN0JiYhbC5hZHRlc3QmJihsLmFkdGVzdD1sLmFkVGVzdCk7ZGVsZXRlIGwuYWRUZXN0O3ZhciBtPUJqLmxvY2F0aW9uLmhyZWYuaW5jbHVkZXMoXCJhbXBwcm9qZWN0Lm5ldFwiKSxwPVtdO2lmKGwuZmlyc3RUZXh0QWRCbG9jayYmIW0mJiF4KFwiX2VuYWJsZVVuaWZpZWRNdWRza2lwcGVySWZyYW1lXCIpKXttPXt9O2Zvcih2YXIgcj11KEFrKSx0PXIubmV4dCgpOyF0LmRvbmU7dD1yLm5leHQoKSl0PXQudmFsdWUsbVt0XT1sW3RdO20ucm9sZT1cInNcIjttLm1hc3Rlck51bWJlcj1IaztrPjAmJihtLnNsYXZlTnVtYmVyPWspO3I9dGooYSxtLGQsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLFxuMik7bT10aihhLG0sZCx2b2lkIDAsdm9pZCAwLHZvaWQgMCx2b2lkIDAsMyk7Zi51bnNoaWZ0KG0pO2YudW5zaGlmdChyKTtwLnB1c2gocik7cC5wdXNoKG0pO1Zbci5HKCldPXI7VlttLkcoKV09bX1rPT09MD8obC5yb2xlPVwibVwiLGwubWFzdGVyTnVtYmVyPUhrLGw9dGooYSxsLGQsYixlLGcsZiwxLHApLFZbbC5HKCldPWwpOihsLnJvbGU9XCJzXCIsbC5zbGF2ZU51bWJlcj1rLGwubWFzdGVyTnVtYmVyPUhrLGw9dGooYSxsLGQsdm9pZCAwLHZvaWQgMCx2b2lkIDAsdm9pZCAwLDEscCksZS51bnNoaWZ0KGwuTWQpLGYudW5zaGlmdChsKSxnLm1heFRvcCs9bC5LYixnLm1pblRvcCs9bC5MYixnLnJocys9bC5TYSxWW2wuRygpXT1sKX1hPVwibWFzdGVyLVwiK0hrO2Zvcih2YXIgdiBpbiBWKXVkKHYpJiYhaC5pbmNsdWRlcyh2KSYmKFZbdl0ueWErPVwifFwiK1ZbYV0ueWEpO2ZvcihjPWMubGVuZ3RoLTE7Yz49MDtjLS0paD1bXCJzbGF2ZVwiLGMsSGtdLmpvaW4oXCItXCIpLFYuaGFzT3duUHJvcGVydHkoaCkmJlxuVltoXS5sYigpO2M9bnVsbDtWLmhhc093blByb3BlcnR5KGEpP2M9VlthXS5sYigpOkEubG9nKFwiTWlzc2luZyBhZCBibG9jayBmb3IgXCIrYSxcImNBRk9NTVwiKTtyZXR1cm4gY31Haz16KEdrLFwiY0FGT1wiKTtmdW5jdGlvbiB4aihhLGIsYyxkKXtkfHxWW2Muc3BsaXQoXCIuXCIpWzBdXS5VYyhhKX14aj16KHhqLFwiaEFDXCIpO3ZhciBJaz17fTtcbmZ1bmN0aW9uIHlqKGEsYixjLGQpe2I9ZC5mdzt2YXIgZT1kLmZoO2Q9ZC5haDtkPXR5cGVvZiBiPT09XCJudW1iZXJcIiYmdHlwZW9mIGU9PT1cIm51bWJlclwiJiZkIGluc3RhbmNlb2YgQXJyYXk/bmV3IElkKGIsZSxkKTpudWxsO2lmKGQhPW51bGwmJihjPWMuc3BsaXQoXCIuXCIpWzBdLGI9VltjXSxiLmVkKGQsYSksYi5vcHRpb25zJiZiLm9wdGlvbnMuaWZyYW1lSGVpZ2h0Q2FsbGJhY2smJihhPWIuY29udGFpbmVyLm9mZnNldEhlaWdodCxJa1tjXSE9YSkpKXtJa1tjXT1hO3RyeXtiLm9wdGlvbnMuaWZyYW1lSGVpZ2h0Q2FsbGJhY2soYSl9Y2F0Y2goZil7fX19eWo9eih5aixcImhDXCIpO2Z1bmN0aW9uIHpqKGEsYixjLGQpe1ZbYy5zcGxpdChcIi5cIilbMF1dLmtkKGQpfXpqPXooemosXCJ3Q1wiKTtcbmZ1bmN0aW9uIEprKGEsYil7dmFyIGM9e30sZDtmb3IoZCBpbiBWKWlmKFYuaGFzT3duUHJvcGVydHkoZCkpe3ZhciBlPVZbZF07ZS5vcHRpb25zJiZlLm9wdGlvbnMubWFzdGVyTnVtYmVyPT1iJiZ0eXBlb2YgZS5vcHRpb25zLmNvbnRhaW5lcj09XCJzdHJpbmdcIiYmKGU9ZS5vcHRpb25zLmNvbnRhaW5lcixjW2VdPShjW2VdfHwwKSthLkJbZCtcIi5hQ1wiXS52YWx1ZSl9cmV0dXJuIGN9Sms9eihKayxcImdBQ1wiKTtmdW5jdGlvbiB2aihhLGIpe3ZhciBjPVZbXCJtYXN0ZXItXCIrYl07aWYoYyYmYy5vcHRpb25zJiZjLm9wdGlvbnMuYWRzUmVzcG9uc2VDYWxsYmFjayl7YT1KayhhLGIpO3RyeXtjLm9wdGlvbnMuYWRzUmVzcG9uc2VDYWxsYmFjayhhKX1jYXRjaChkKXt9fX12aj16KHZqLFwiYUNDXCIpO1xuZnVuY3Rpb24gQWooYSxiLGMsZCl7aWYoKGE9VltcIm1hc3Rlci1cIitiXSkmJmEub3B0aW9ucyYmYS5vcHRpb25zLnZpc2libGVVcmxzQ2FsbGJhY2spe2Q9ZD9kLnNwbGl0KFwifFwiKTpbXTt0cnl7YS5vcHRpb25zLnZpc2libGVVcmxzQ2FsbGJhY2soZCl9Y2F0Y2goZSl7fX19QWo9eihBaixcInZVQ1wiKTt2YXIgSGs9MCxWPXt9LEJqPXdpbmRvdzt2YXIgS2s9Rms7ZnVuY3Rpb24gTGsoYSl7TWsoYXJndW1lbnRzKX1mdW5jdGlvbiBOayhhKXt2YXIgYj1hLnB1YklkfHxcIlwiLGM9ISFhLmdjc2N8fCExLGQ9ISFhLmN4fHwhMSxlPSEhYS5mb3JjZUdkcHJ8fCExLGY9YS5pdnQ7Zj09dm9pZCAwJiYoZj14KFwiX2VuYWJsZUl2dENoYW5nZXNcIik/IWM6IShjfHxkKSk7YT1hLnNvdXJjZT09PVwiYWRtb2JcIjtyZXR1cm4gdmsoYixjLHdpbmRvdyxNLkMoZiksYSxlKX12YXIgTWs9QihmdW5jdGlvbihhKXt2YXIgYj1hJiZhWzBdfHx7fTtmaihiKTtiPU5rKGIpO2IgaW5zdGFuY2VvZiBQcm9taXNlP2IudGhlbihmdW5jdGlvbihjKXtLayhGaSxhLGMpfSk6S2soRmksYSxiKX0sXCJpQUFQUlwiKTtcbmlmKCF3aW5kb3cuSVNfR09PR0xFX0FGU19JRlJBTUVfKXtmb3IodmFyIE9rPShuZXcgRGF0ZSkuZ2V0VGltZSgpLnRvU3RyaW5nKCksUGs9dSgkaS5rZXlzKCkpLFFrPVBrLm5leHQoKTshUWsuZG9uZTtRaz1Qay5uZXh0KCkpe3ZhciBSaz1Ray52YWx1ZTthai5oYXMoUmspfHxkaihSaykhPT0wfHxhai5zZXQoUmssZ2ooUmssT2spKX1pZighKHdpbmRvdy5nb29nbGUmJndpbmRvdy5nb29nbGUuYWRzJiZ3aW5kb3cuZ29vZ2xlLmFkcy5kb21haW5zJiZ3aW5kb3cuZ29vZ2xlLmFkcy5kb21haW5zLkNhZikpe3ZhciBTaz1bXCJnb29nbGVcIixcImFkc1wiLFwiZG9tYWluc1wiLFwiQ2FmXCJdLFRrPXlhO1NrWzBdaW4gVGt8fHR5cGVvZiBUay5leGVjU2NyaXB0PT1cInVuZGVmaW5lZFwifHxUay5leGVjU2NyaXB0KFwidmFyIFwiK1NrWzBdKTtmb3IodmFyIFVrO1NrLmxlbmd0aCYmKFVrPVNrLnNoaWZ0KCkpOylTay5sZW5ndGh8fExrPT09dm9pZCAwP1RrPVRrW1VrXSYmVGtbVWtdIT09T2JqZWN0LnByb3RvdHlwZVtVa10/XG5Ua1tVa106VGtbVWtdPXt9OlRrW1VrXT1Ma319O1xufSkoKTsifSwgImhlYWRlcnNTaXplIjogMCwgImJvZHlTaXplIjogNTU1OTUsICJyZWRpcmVjdFVSTCI6ICIiLCAiX3RyYW5zZmVyU2l6ZSI6IDU1NTk1fSwgImNhY2hlIjoge30sICJ0aW1pbmdzIjogeyJkbnMiOiAtMSwgImNvbm5lY3QiOiAtMSwgInNzbCI6IC0xLCAic2VuZCI6IDAsICJ3YWl0IjogMjY3Ljc0MywgInJlY2VpdmUiOiAzNzUuOTk1fSwgInBhZ2VyZWYiOiAicGFnZUA3MDY4MGZjN2M1MzU5MDQ4MDExMWEzM2ZiYmQ0NGNjZiIsICJzZXJ2ZXJJUEFkZHJlc3MiOiAiWzI0MDQ6NjgwMDo0MDAzOmMxYTo6OGJdIiwgIl9zZXJ2ZXJQb3J0IjogNDQzLCAiX3NlY3VyaXR5RGV0YWlscyI6IHsicHJvdG9jb2wiOiAiVExTIDEuMyIsICJzdWJqZWN0TmFtZSI6ICJzeW5kaWNhdGVkc2VhcmNoLmdvb2ciLCAiaXNzdWVyIjogIldSMiIsICJ2YWxpZEZyb20iOiAxNzI4Mjg5NzQ5LCAidmFsaWRUbyI6IDE3MzU1NDczNDh9fSwgeyJzdGFydGVkRGF0ZVRpbWUiOiAiMjAyNC0xMC0zMVQwMjozMTo0My4wNjdaIiwgInRpbWUiOiA4LjM3NSwgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHA6Ly9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9sb2dvcy9zZWRvX2xvZ28ucG5nIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMS4xIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogIkFjY2VwdCIsICJ2YWx1ZSI6ICJpbWFnZS9hdmlmLGltYWdlL3dlYnAsaW1hZ2UvYXBuZyxpbWFnZS9zdmcreG1sLGltYWdlLyosKi8qO3E9MC44In0sIHsibmFtZSI6ICJBY2NlcHQtRW5jb2RpbmciLCAidmFsdWUiOiAiZ3ppcCwgZGVmbGF0ZSJ9LCB7Im5hbWUiOiAiQWNjZXB0LUxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJDb25uZWN0aW9uIiwgInZhbHVlIjogImtlZXAtYWxpdmUifSwgeyJuYW1lIjogIkhvc3QiLCAidmFsdWUiOiAiaW1nLnNlZG9wYXJraW5nLmNvbSJ9LCB7Im5hbWUiOiAiUmVmZXJlciIsICJ2YWx1ZSI6ICJodHRwOi8vb2theXRpLnBpY3MvIn0sIHsibmFtZSI6ICJVc2VyLUFnZW50IiwgInZhbHVlIjogIk1vemlsbGEvNS4wIChXaW5kb3dzIE5UIDEwLjA7IFdpbjY0OyB4NjQpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS8xMzAuMC42NzIzLjMxIFNhZmFyaS81MzcuMzYifV0sICJxdWVyeVN0cmluZyI6IFtdLCAiaGVhZGVyc1NpemUiOiAzODUsICJib2R5U2l6ZSI6IDB9LCAicmVzcG9uc2UiOiB7InN0YXR1cyI6IDIwMCwgInN0YXR1c1RleHQiOiAiT0siLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8xLjEiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiQWNjZXB0LVJhbmdlcyIsICJ2YWx1ZSI6ICJieXRlcyJ9LCB7Im5hbWUiOiAiQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luIiwgInZhbHVlIjogIioifSwgeyJuYW1lIjogIkNGNEFnZSIsICJ2YWx1ZSI6ICIyMzk3In0sIHsibmFtZSI6ICJDRjR0dGwiLCAidmFsdWUiOiAiMzE1MzM2MDIuMDAwIn0sIHsibmFtZSI6ICJDYWNoZS1Db250cm9sIiwgInZhbHVlIjogIm1heC1hZ2U9NjA0ODAwIn0sIHsibmFtZSI6ICJDb25uZWN0aW9uIiwgInZhbHVlIjogImtlZXAtYWxpdmUifSwgeyJuYW1lIjogIkNvbnRlbnQtTGVuZ3RoIiwgInZhbHVlIjogIjE1MDg2In0sIHsibmFtZSI6ICJDb250ZW50LVR5cGUiLCAidmFsdWUiOiAiaW1hZ2UvcG5nIn0sIHsibmFtZSI6ICJEYXRlIiwgInZhbHVlIjogIlRodSwgMzEgT2N0IDIwMjQgMDI6MzE6NDMgR01UIn0sIHsibmFtZSI6ICJFeHBpcmVzIiwgInZhbHVlIjogIlRodSwgMDcgTm92IDIwMjQgMDI6MzE6NDMgR01UIn0sIHsibmFtZSI6ICJMYXN0LU1vZGlmaWVkIiwgInZhbHVlIjogIk1vbiwgMTEgSmFuIDIwMjEgMDc6NDQ6MzQgR01UIn0sIHsibmFtZSI6ICJTZXJ2ZXIiLCAidmFsdWUiOiAiQ0ZTIDExMjQifSwgeyJuYW1lIjogIlgtQ0YtUmVxSUQiLCAidmFsdWUiOiAiOWQ4OGM2ZmRlOTVlOTBmNTFhYmFmNmFkM2FmOTZjOWMifSwgeyJuYW1lIjogIlgtQ0YxIiwgInZhbHVlIjogIjExNjk2OmZCLmZyYTI6Y2Y6bm9tOmNhY2hlTi5mcmEyLTAxOkgifSwgeyJuYW1lIjogIlgtQ0YyIiwgInZhbHVlIjogIkgifSwgeyJuYW1lIjogIlgtQ0YzIiwgInZhbHVlIjogIkgifSwgeyJuYW1lIjogIlgtQ0ZGIiwgInZhbHVlIjogIkIifSwgeyJuYW1lIjogIlgtQ0ZIYXNoIiwgInZhbHVlIjogIlwiZGVmMDBjMTFiMTU5NmRiNGVmZWU2YTlmYmU2NGZjMjdcIiJ9LCB7Im5hbWUiOiAieC1jZi10c2MiLCAidmFsdWUiOiAiMTcxODc5NzUzNiJ9XSwgImNvbnRlbnQiOiB7InNpemUiOiAxNTA4NiwgIm1pbWVUeXBlIjogImltYWdlL3BuZyIsICJjb21wcmVzc2lvbiI6IDAsICJ0ZXh0IjogIkFBQUJBQU1BTURBQUFBRUFJQUNvSlFBQU5nQUFBQ0FnQUFBQkFDQUFxQkFBQU40bEFBQVFFQUFBQVFBZ0FHZ0VBQUNHTmdBQUtBQUFBREFBQUFCZ0FBQUFBUUFnQUFBQUFBQUFKQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWowQUVBWTVBQXdTT1FBTUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWprQURCSXRCQnhHTlFRUWdqVUVFSUkxQkJDQ09RUU11alVFRUlJMUJCQ0NMUVFjUmprQURCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBRUFZNUFBd1NQUUFRQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWowQUVBWTVBQXdTUFFBUUJBQUFBQUFBQUFBQUFBQUFBamtBREJJNUJBeTZPUVFGVmowQUJqSTlBQWFxUFFBSEhrRUFBMkpCQUFPYVFRQUR3a0VBQThKQkFBUHVRUUFEN2tFQUErNUJBQVBDUVFBRG1rRUFBMkk5QUFjZVBRQUdxajBBQmZZNUJBVldOUVFRZ2owQUVBUUFBQUFBQUFBQUFqMEFFQVk1QUF3UUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUFFBUUJBQUFBQUFBQUFBQ1BRQVFCamtFRExvOUFBV3FQUUFHcWtFQUE1cEJBQVA2UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRDdrRUFBMkk5QUFYMk9RUU11QUFBQUFBQUFBQUNPUUFNRWowQUVBUUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk5QUJBRUFBQUFBalVFRUlJOUFBWDJQUUFISGtFQUErNUJBQVArUVFBRC9rRUFBLzVCQUFQNlFRQUQ3a0VBQSs1QkFBUHVRUUFEN2tFQUEvcEJBQVA2UVFBRCtrRUFBL3BCQUFQNlFRQUQra0VBQS9wQkFBUDZRUUFEK2tFQUEvcEJBQVA2UVFBRDdrRUFBKzVCQUFQdVFRQUQva0VBQS81QkFBUCtRUUFEK2owQUJ1STVCQWtjQUFBQUFqMEFFQVk1QUF3UUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBamtBREJBQUFBQUNPUVFGVmtFQUEvNUJBQVA2UVFBRC9rRUFBL3BCQUFQdVFRQUQ3a0VBQS9wQkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEK2tFQUEvcEJBQVB1UVFBRCtrRUFBLzVCQUFQK1BRQUc0alVFRUlBQUFBQUNPUUFNRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWprQURCQUFBQUFDUVFBQnlrRUFBLzVCQUFQdVFRQUQ3a0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQSs1QkFBUHVRUUFEL2tFQUE4STVCQVZVQUFBQUFqa0FEQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqa0FEQkFBQUFBQ1FRQUJ5a0VBQS81QkFBUHVRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRDdrRUFBL3BCQUFQK1BRQUY5QUFBQUFJNUFBd1FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBamtBREJBQUFBQUNRUUFCeWtFQUEvNUJBQVB1UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS9wQkFBUDZRUUFEK2tFQUEvcEJBQVA2UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS9wQkFBUHVRUUFEL2tFQUFjZ0FBQUFDT1FBTUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWprQURCQUFBQUFDUVFBQnlrRUFBLzVCQUFQdVFRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQNlFRQUQ3a0VBQSs1QkFBUHVRUUFEK2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQSs1QkFBUHVRUUFEK2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVA2UVFBRCtrRUFBLzQ1QkFrY0FBQUFBamtBREJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqa0FEQkFBQUFBQ1FRQUJ5a0VBQS81QkFBUHVRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQNlFRQUQ3a0VBQS9wQkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBKzVCQUFQQ1FRQUR3a0VBQThKQkFBUHVRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBKzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQ3a0VBQS81QkFBTmlPUUFNRUFBQUFBSTlBQkFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBamtBREJBQUFBQUNRUUFCeWtFQUEvNUJBQVB1UVFBRC9rRUFBLzVCQUFQK1FRQUQ3a0VBQSs1QkFBUCtRUUFEL2tFQUEvNUJBQU9hUFFBRzRqMEFCZlk1QkFWV09RUU11alVFRUlJdEJCeEdMUVFjUmkwRUhFWTFCQkNDT1FRTXVqa0VDUjQ5QUFZeVFRQURZa0VBQS81QkFBUDZRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUErNUJBQVArUFFBSmpBQUFBQUk1QUF3UUFBQUFBQUFBQUFBQUFBQUFBQUFBQWprQURCQUFBQUFDUVFBQnlrRUFBLzVCQUFQdVFRQUQva0VBQSs1QkFBUDZRUUFEL2tFQUEvNUJBQU9hUFFBR01qa0VDUjR0QkJ4RUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBRUFRQUFBQUNQUUFRQmowQUJqSkJBQVArUVFBRCtrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBKzVCQUFQK1BRQUhIQUFBQUFJOUFCQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFqa0FEQkFBQUFBQ1FRQUJ5a0VBQS81QkFBUHVRUUFEN2tFQUEvNUJBQVArUFFBSEhqa0VCVlk1QUF3UUFBQUFBajBBRUFRQUFBQUNPUUFNRWprQURCSTVBQXdTUFFBUUJqMEFFQVk5QUJBR1BRQVFCajBBRUFZOUFCQUdQUUFRQmprQURCSTVBQXdTUFFBUUJBQUFBQUk5QUFjZVFRQUQva0VBQSs1QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS9wQkFBUCtRUUFEd2pVRUVJQUFBQUFDUFFBUUJBQUFBQUFBQUFBQUFBQUFBamtBREJBQUFBQUNRUUFCeWtFQUEvNUJBQVB1UVFBRC9qMEFCeDQ1QkFqc0FBQUFBQUFBQUFJOUFCQUdPUUFNRWprQURCSTlBQkFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ09RQU1FQUFBQUFJOUFBWXlRUUFEL2tFQUErNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVA2UVFBRC9qa0VDUndBQUFBQ09RQU1FQUFBQUFBQUFBQUFBQUFBQWprQURCQUFBQUFDUVFBQnlrRUFBLzVCQUFQQ1BRQUZxQUFBQUFBQUFBQUNQUUFRQmprQURCSTlBQkFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1BRQVFCamtBREJJNUFBd1NPUUFNRUFBQUFBSTlBQWFxUVFBRC9rRUFBKzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQdVFRQUQvajBBQ1l3QUFBQUNPUUFNRUFBQUFBQUFBQUFBQUFBQUFqMEFFQVFBQUFBQ09RUUk3ajBBQm00MUJCQ0FBQUFBQWprQURCSTVBQXdRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUFFBUUJqMEFFQVk1QUF3U09RQU1FamtBREJJOUFCQUVBQUFBQUFBQUFBSTlBQkFFQUFBQUFqMEFDWTVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUHVRUUFEL2owQUJhZ0FBQUFDT1FBTUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDT1FBTUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTlBQkFHT1FBTUVqa0FEQkk1QUF3UUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDTFFRY1Jqa0VDTzVCQUFIS1BRQUhIa0VBQS81QkFBUDZRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVB1UVFBRC9qMEFDWXdBQUFBQ09RQU1FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUFFBUUJqa0FEQkk5QUJBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTlBQkFHT1FBTUVqa0FEQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUNPUUFNRWpVRUVJSTVCQWp1UFFBSmpqMEFCakk5QUFiaVFRQURta0VBQS81QkFBUCtRUUFEL2tFQUEvcEJBQVA2UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQdVFRQUQvamtFQ1J3QUFBQUNPUUFNRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUFFBUUJqa0FEQkk5QUJBRUFBQUFBQUFBQUFJdEJCeEdPUVFJN2owQUJmWTlBQWFxUVFBRFlrRUFBKzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvcEJBQVB1UVFBRDdrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS9wQkFBUCtRUUFEN2prRURMZ0FBQUFDUFFBUUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk1QUF3U1BRQVFCQUFBQUFJNUFBd1NPUVFKSGowQUJxcEJBQU9hUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUDZRUUFEN2tFQUErNUJBQVB1UVFBRCtrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvcEJBQVArUVFBRFlqMEFFQVFBQUFBQ1BRQVFCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBamtBREJBQUFBQUNPUUFNRWowQUJhcEJBQU5pUVFBRC9rRUFBL3BCQUFQK1FRQUQra0VBQSs1QkFBUHVRUUFEK2tFQUEvcEJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBKzVCQUFQK1BRQUY5QUFBQUFJNUFBd1FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNPUUFNRUFBQUFBSTVCQWp1UVFBRFlrRUFBLzVCQUFQNlFRQUQ3a0VBQSs1QkFBUDZRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQra0VBQS81QkFBT2FMUVFjUkFBQUFBSTlBQkFFQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTVBQXdRQUFBQUFqMEFDWTVCQUFQNlFRQUQva0VBQSs1QkFBUDZRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUDZRUUFEN2tFQUEvNDVCQVZVQUFBQUFqa0FEQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqa0FEQkFBQUFBQ1BRQUpqa0VBQS81QkFBUHVRUUFEN2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUErNUJBQVB1UVFBRC9qMEFCZlFBQUFBQ09RQU1FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1BRQVFCQUFBQUFJNUJBanVRUUFEN2tFQUEvcEJBQVA2UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvcEJBQVB1UVFBRDdrRUFBLzVCQUFQdVFRQUJ5QUFBQUFJNUFBd1FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTlBQWNlUVFBRC9rRUFBKzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEK2tFQUEvcEJBQVB1UVFBRDdrRUFBLzVCQUFQNlFRQUQvajBBQng0NUJBeTRBQUFBQWprQURCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTVBQXdRQUFBQUFqa0VDUjVCQUFQK1FRQUQ3a0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS9wQkFBUDZRUUFEN2tFQUErNUJBQVB1UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQSs0OUFBYmlPUVFKSGowQUVBUUFBQUFDT1FBTUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk1QUF3UUFBQUFBajBBQnFwQkFBUCtRUUFEN2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQra0VBQSs1QkFBUHVRUUFEK2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQ3a0VBQTJJOUFBYXFQUUFKampVRUVJQUFBQUFBQUFBQUFqMEFFQVk1QUF3UUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBRUFRQUFBQUNPUUFNRWtFQUE1cEJBQVArUVFBRCtrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQra0VBQSs1QkFBUDZRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBOEk5QUFjZVBRQUdxajBBQmZZNUJBa2VOUVFRZ2prQURCQUFBQUFBQUFBQUFBQUFBQUk1QUF3U09RQU1FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWowQUVBUUFBQUFDTlFRUWdrRUFBKzVCQUFQK1FRQUQra0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUDZRUUFEK2tFQUEvNUJBQVA2UVFBRFlqMEFCbTQ5QUFtT09RUU11aTBFSEVRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk1QUF3U09RQU1FajBBRUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqMEFFQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqa0FEQkFBQUFBQ09RUUk3a0VBQS81QkFBUDZRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvcEJBQVArUVFBRHdqMEFCakk1QkF5NlBRQVFCQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTlBQkFHT1FBTUVqa0FEQkk1QUF3U1BRQVFCajBBRUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk5QUJBR09RQU1FQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBamtBREJBQUFBQUNPUVFKSGtFQUEvNUJBQVA2UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK09RUUpIQUFBQUFJOUFCQUdQUUFRQmprQURCSTVBQXdTT1FBTUVqMEFFQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBamtBREJJOUFCQUVBQUFBQWprQURCSTVBQXdRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWprQURCQUFBQUFDT1FRSTdrRUFBLzVCQUFQNlFRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQ3a0VBQS80OUFBY2NBQUFBQWprQURCSTVBQXdRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBRUFZNUFBd1NQUUFRQkFBQUFBQUFBQUFDUFFBSmprRUFBOEpCQUFISUFBQUFBamtBREJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqMEFFQVFBQUFBQ05RUVFna0VBQSs1QkFBUCtRUUFEK2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEN2tFQUEvNDlBQWJnQUFBQUFqa0FEQkk5QUJBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBRUFZNUFBd1NPUUFNRWowQUVBUUFBQUFBQUFBQUFqa0VDUjQ5QUFjZVFRQUQra0VBQS80OUFBWDBBQUFBQWprQURCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBRUFRQUFBQUNPUUFNRWtFQUEySkJBQVArUVFBRCtrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRCtrRUFBLzVCQUFQQ09RUU11QUFBQUFJOUFCQUdPUUFNRWprQURCSTVBQXdTT1FBTUVqa0FEQkk1QUF3U09RQU1FamtBREJJNUFBd1NQUUFRQkFBQUFBSTlBQkFFQUFBQUFqa0FEQkk1QkFWV1BRQUhIa0VBQS81QkFBUCtRUUFEN2tFQUEvNDlBQVgwQUFBQUFqa0FEQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTVBQXdRQUFBQUFqMEFCbTVCQUFQK1FRQUQ3a0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS9wQkFBUCtRUUFEbWprRUJWWTVBQXdRQUFBQUFqMEFFQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFpMEVIRVk1QkFrZVBRQUdNa0VBQTVwQkFBUCtRUUFEL2tFQUEvcEJBQVB1UVFBRDdrRUFBLzQ5QUFYMEFBQUFBamtBREJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk5QUJBRUFBQUFBamtFQ081QkFBUDZRUUFEK2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVA2UVFBRCtrRUFBLzVCQUFPYVBRQUdxa0VBQWNvNUJBVldPUVFKSGprRUNPNDVCQWtlT1FRRlZqMEFCYW85QUFZeVBRQUc0a0VBQTVwQkFBUCtRUUFEL2tFQUEvNUJBQVB1UVFBRDdrRUFBLzVCQUFQK1FRQUQ3a0VBQS80OUFBWDBBQUFBQWprQURCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNPUUFNRUFBQUFBSTlBQVp1UVFBRC9rRUFBKzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQra0VBQSs1QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVA2UVFBRDdrRUFBL3BCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEN2tFQUEvNDlBQVgwQUFBQUFqa0FEQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUFFBUUJBQUFBQUl0QkJ4R1FRQURZa0VBQS81QkFBUHVRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVA2UVFBRDdrRUFBKzVCQUFQdVFRQUQra0VBQS9wQkFBUDZRUUFEN2tFQUErNUJBQVB1UVFBRDdrRUFBL3BCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRDdrRUFBLzQ5QUFYMEFBQUFBamtBREJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBRUFRQUFBQUNPUVFNdWtFQUE4SkJBQVArUVFBRDdrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQ3a0VBQS80OUFBWDBBQUFBQWprQURCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTVBQXdRQUFBQUFqa0VETHBCQUFPYVFRQUQva0VBQSs1QkFBUDZRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEN2tFQUEvNDlBQVgwQUFBQUFqa0FEQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ09RQU1FQUFBQUFJMUJCQ0NQUUFHNGtFQUEvNUJBQVA2UVFBRDdrRUFBL3BCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVA2UVFBRDdrRUFBLzQ5QUFYMEFBQUFBamtBREJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWprQURCSTlBQkFHUFFBUUJqMEFCYXBCQUFQQ1FRQUQva0VBQS9wQkFBUDZRUUFEN2tFQUEvcEJBQVA2UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvcEJBQVB1UVFBRDdrRUFBL3BCQUFQK1FRQUQ3a0VBQS81QkFBSElBQUFBQWprQURCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk5QUJBR09RQU1FQUFBQUFJdEJCeEdQUUFGOWtFQUE1cEJBQVArUVFBRCtrRUFBLzVCQUFQK1FRQUQ3a0VBQSs1QkFBUHVRUUFEN2tFQUErNUJBQVA2UVFBRCtrRUFBL3BCQUFQNlFRQUQra0VBQSs1QkFBUHVRUUFEN2tFQUErNUJBQVB1UVFBRCtrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBT2FQUUFHYmprRUNSNDVBQXdRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNQUUFRQmprQURCSTlBQkFFQUFBQUFqa0FEQkk1QkFrZVBRQUdia0VBQTJKQkFBUHVRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQra0VBQTVvOUFBYmlQUUFGOWprRUNPNDVBQXdRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk5QUJBR09RQU1FajBBRUFRQUFBQUFBQUFBQWprQURCSTFCQkNDT1FRRlZqMEFCZlk5QUFadVBRQUc0ajBBQng1QkFBTmlRUUFEWWtFQUEySkJBQU5pUVFBRFlqMEFCeDQ5QUFiaVBRQUdiajBBQmZZNUJBVldPUVFNdWprQURCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ09RQU1FamtBREJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWowQUVBWTVBQXdTT1FBTUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUFFBUUJqMEFFQVk5QUJBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUk5QUJBR09RQU1FamtBREJJOUFCQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBRUFZOUFCQUdPUUFNRWprQURCSTVBQXdTT1FBTUVqMEFFQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWowQUVBWTVBQXdTT1FBTUVqa0FEQkk1QUF3U1BRQVFCajBBRUFRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBUC8vLy8vLy93QUEvL3dBQi8vL0FBRC93QUFBZi84QUFQNEFBQUFQL3dBQStBQUFBQVAvQUFENEFBQUFBZjhBQVBnQUFBQUEvd0FBK0FBQUFBQi9BQUQ0QUFBQUFEOEFBUGdBQUFBQUh3QUErQUIvNEFBZkFBRDRBLy80QUE4QUFQZ2YvL3dBRHdBQStILy8vQUFQQUFENS8vLzhBQThBQVB2Ly8vd0FEd0FBLy8vLzhBQVBBQUQvLy80QUFBOEFBUC8vd0FBQUR3QUEvL3dBQUFBUEFBRC84QUFBQUI4QUFQL0FBQUFBSHdBQS80QUFBQUEvQUFEL0FBQUFBSDhBQVA0QUFBQUEvd0FBL0FBQUFBSC9BQUQ4QUFBQUIvOEFBUGdBQUFBLy93QUErQUFBQi8vL0FBRDRBQUQvLy84QUFQZ0FCLy8vL3dBQStBQWYvLy8vQUFENEFCLy8vNzhBQVBnQUgvLytQd0FBK0FBZi8vZy9BQUQ0QUEvL3dEOEFBUHdBQWZ3QVB3QUEvQUFBQUFBL0FBRCtBQUFBQUQ4QUFQOEFBQUFBUHdBQS80QUFBQUEvQUFEL3dBQUFBRDhBQVAvd0FBQUFQd0FBLy93QUFBQi9BQUQvL3dBQUIvOEFBUC8vK0FELy93QUEvLy8vLy8vL0FBRC8vLy8vLy84QUFDZ0FBQUFnQUFBQVFBQUFBQUVBSUFBQUFBQUFBQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUFFBSURqMEFDQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUNPUUFJT2owQUNNbzlBQWtpUFFBRmZqMEFCYm85QUFXNlBRQUZ1ajBBQlg0OUFBVlNQUUFFNmprRURHSkUvQWdFQUFBQUFBQUFBQUpFL0FnR1BRQUlEa1Q4Q0FRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWprRURHSTlBQVZTUFFBR1BrRUFBd1pCQUFPZVFRQUQ3a0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUR4a0VBQXo0OUFBSmlQUUFKSWowQUNBd0FBQUFDUFFBSURqMEFDQXdBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqMEFCVkpCQUFiZVFRQUR4a0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBL1pCQUFQMlFRQUQ5a0VBQS9aQkFBUDJRUUFEOWtFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQURlajBBQmJvOUFBZ01BQUFBQWowQUNBd0FBQUFBQUFBQUFBQUFBQUFBQUFBQ1JQd0lCQUFBQUFJNUFBZzZRUUFEbmtFQUEvNUJBQVArUVFBRDlrRUFBKzVCQUFQMlFRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUDJRUUFEN2tFQUEvWkJBQVArUVFBRC9rRUFBejQ1QkFpVUFBQUFBajBBQ0F3QUFBQUFBQUFBQUFBQUFBSkUvQWdFQUFBQUFqa0FDRHBCQUFPZVFRQUQva0VBQS9aQkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQMlFRQUQ5a0VBQSs1QkFBUHVRUUFEOWtFQUEvWkJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS9aQkFBUHVRUUFEL2tFQUE4WTlBQVRvQUFBQUFqMEFDQXdBQUFBQUFBQUFBa1Q4Q0FRQUFBQUNPUUFJT2tFQUE1NUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQ5a0VBQSs1QkFBUDJRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUDJRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQdVFRQUQva0VBQTU0NUJBaVVBQUFBQWtUOENBUUFBQUFDUlB3SUJBQUFBQUk1QUFnNlFRQURua0VBQS81QkFBUCtRUUFEOWtFQUEvWkJBQVArUVFBRC9rRUFBLzVCQUFQR1FRQURQa0VBQnQ0OUFBYXFQUUFHcWtFQUJ0NUJBQU0rUVFBRDRrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVB1UVFBRC9qMEFCcWdBQUFBQ1BRQUlEQUFBQUFKRS9BZ0VBQUFBQWprQUNEcEJBQU9lUVFBRC9rRUFBKzVCQUFQK1FRQUQva0VBQTNvOUFBWStQUUFKSWprRURHSkUvQWdFQUFBQUFBQUFBQUFBQUFBQUFBQUFBa1Q4Q0FZNUJBeGlQUUFDWWtFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEN2prRUNKUUFBQUFDUlB3SUJrVDhDQVFBQUFBQ09RQUlPa0VBQTU1QkFBUCtRUUFEL2tFQUF3WTlBQWtpUFFBSURBQUFBQUFBQUFBQUFBQUFBQUFBQUFJOUFBZ09QUUFJRGowQUNBNDlBQWdPUlB3SUJrVDhDQVFBQUFBQ1FRQURCa0VBQS81QkFBUDJRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBKzVCQUFQK1BRQUZ1QUFBQUFJOUFBZ09SUHdJQkFBQUFBSTVBQWc2UVFBRHhrRUFBNTQ5QUFrZ0FBQUFBa1Q4Q0FaRS9BZ0dQUUFJRGowQUNBNUUvQWdHUlB3SUJrVDhDQVpFL0FnR1BRQUlEajBBQ0E0OUFBZ09QUUFJREFBQUFBSkJBQU1HUVFBRC9rRUFBL1pCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEN2tFQUEvNDlBQVk4QUFBQUFqMEFDQXdBQUFBQUFBQUFBajBBQ0E0OUFBVlNPUVFNWUFBQUFBSTlBQWdPUFFBSURrVDhDQVpFL0FnR1BRQUlEajBBQ0E1RS9BZ0VBQUFBQUFBQUFBQUFBQUFDUlB3SUJBQUFBQUk1QUFnNlBRQUdDa0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQdVFRQUQvajBBQW1BQUFBQUNQUUFJREFBQUFBQUFBQUFBQUFBQUFBQUFBQUpFL0FnR1BRQUlEQUFBQUFJOUFBZ09QUUFJREFBQUFBQUFBQUFBQUFBQUFBQUFBQUk1QUFnNlBRQUl5ajBBQlZJOUFBWStRUUFEQmtFQUE4WkJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUErNUJBQVArUFFBR1BBQUFBQUk5QUFnTUFBQUFBQUFBQUFBQUFBQUNQUUFJRGtUOENBWkUvQWdHUFFBSURBQUFBQUFBQUFBQ09RUU1ZajBBQlg0OUFBSmlRUUFEUGtFQUE4WkJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS9aQkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQ3a0VBQS80OUFBVjhBQUFBQWowQUNBd0FBQUFBQUFBQUFBQUFBQUFBQUFBQ1JQd0lCajBBQ0F3QUFBQUNQUUFJeWowQUJxcEJBQVBpUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUDJRUUFEN2tFQUEvWkJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRHhqa0VER0FBQUFBQ1JQd0lCQUFBQUFBQUFBQUFBQUFBQWtUOENBWkUvQWdHUFFBSURqMEFCajVCQUFQK1FRQUQva0VBQS81QkFBUDJRUUFEN2tFQUEvWkJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQ0a0VBQS80OUFBWThBQUFBQWowQUNBd0FBQUFBQUFBQUFBQUFBQUpFL0FnRUFBQUFBajBBQ0E1QkFBYmVRUUFEL2tFQUErNUJBQVB1UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEOWtFQUErNUJBQVArUVFBREJqMEFDQXdBQUFBQ1JQd0lCQUFBQUFBQUFBQUFBQUFBQWowQUNBd0FBQUFDUFFBR1BrRUFBLzVCQUFQaVFRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvWkJBQVB1UVFBRDdrRUFBLzVCQUFQK1FRQUQvajBBQnFvNUFBZzRBQUFBQWtUOENBUUFBQUFBQUFBQUFBQUFBQUpFL0FnRUFBQUFBamtFQ0paQkFBUGlRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvWkJBQVB1UVFBRDdrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEN2tFQUJ0NDlBQWtnQUFBQUFqMEFDQTVFL0FnRUFBQUFBQUFBQUFBQUFBQUFBQUFBQWowQUNBd0FBQUFDUFFBR0NrRUFBLzVCQUFQdVFRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBL1pCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUE4WkJBQU0rUFFBQ1lqMEFCWDQ1QkFpVUFBQUFBQUFBQUFJOUFBZ09SUHdJQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1BRQUlEQUFBQUFKQkFBYmVRUUFEL2tFQUEvWkJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUE4WkJBQU1HUFFBR1BqMEFCWDQ5QUFqS09RQUlPQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTlBQWdPUFFBSURrVDhDQVk5QUFnT1JQd0lCQUFBQUFBQUFBQUFBQUFBQUFBQUFBSkUvQWdFQUFBQUFrRUFBejVCQUFQK1FRQUQ5a0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBK0k5QUFXNk9RUU1ZQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUlB3SUJqMEFDQTQ5QUFnT1JQd0lCa1Q4Q0FZOUFBZ09SUHdJQkFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBa1Q4Q0FRQUFBQUNRUUFEUGtFQUEvNUJBQVAyUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQSs1QkFBUCtQUUFDWUFBQUFBSTlBQWdPUFFBSURqMEFDQTQ5QUFnT1BRQUlEa1Q4Q0FRQUFBQUNSUHdJQmowQUNBNDlBQWdPUlB3SUJBQUFBQUk1QUFnNlBRQUdQajBBQk9nQUFBQUNQUUFJREFBQUFBQUFBQUFDUFFBSURBQUFBQUpCQUFiZVFRQUQva0VBQS9aQkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRDdrRUFBLzQ5QUFZSUFBQUFBajBBQ0E0OUFBZ09QUUFJRGowQUNBNDlBQWdPUFFBSURqMEFDQXdBQUFBQ1JQd0lCQUFBQUFJNUFBZzZQUUFGdWtFQUEzcEJBQVArUFFBRlVBQUFBQUk5QUFnTUFBQUFBQUFBQUFJOUFBZ01BQUFBQWowQUJicEJBQVArUVFBRDdrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUE4WTlBQVZTUFFBSURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWprQUNEbzlBQVRxUFFBR1BrRUFBNTVCQUFQK1FRQUQ3a0VBQS80OUFBVlFBQUFBQWowQUNBd0FBQUFBQUFBQUFrVDhDQVFBQUFBQ09RUU1Za0VBQThaQkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBTjZQUUFHcWowQUJnbzlBQVlLUFFBR0NqMEFBbUpCQUFiZVFRQURua0VBQS81QkFBUCtRUUFEL2tFQUEvWkJBQVB1UVFBRC9qMEFCVkFBQUFBQ1BRQUlEQUFBQUFBQUFBQUFBQUFBQWowQUNBd0FBQUFDUFFBRnVrRUFBLzVCQUFQdVFRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRDlrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRDlrRUFBKzVCQUFQK1FRQUQva0VBQS9aQkFBUCtQUUFGVUFBQUFBSTlBQWdNQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBQ0F3QUFBQUNQUUFHUGtFQUEvNUJBQVB1UVFBRDlrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEOWtFQUErNUJBQVB1UVFBRDdrRUFBKzVCQUFQdVFRQUQ5a0VBQS9aQkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRDlrRUFBLzQ5QUFWUUFBQUFBajBBQ0F3QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqMEFDQXdBQUFBQ1BRQUZ1a0VBQS9aQkFBUCtRUUFEOWtFQUErNUJBQVAyUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQ5a0VBQSs1QkFBUHVRUUFEL2owQUJWQUFBQUFDUFFBSURBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUNSUHdJQmowQUNBd0FBQUFDUFFBSXlrRUFBd1pCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEOWtFQUErNUJBQVB1UVFBRDdrRUFBKzVCQUFQdVFRQUQ3a0VBQSs1QkFBUHVRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFPZVBRQUl5QUFBQUFJOUFBZ01BQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBajBBQ0F3QUFBQUFBQUFBQWowQUJPbzlBQUppUVFBRGVrRUFBL1pCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUR4a0VBQXdZOUFBWUtQUUFFNmowQUNBd0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqMEFDQTQ5QUFnTUFBQUFBQUFBQUFJOUFBZ09PUVFJbGowQUNTSTlBQVc2UFFBR0NqMEFCajQ5QUFKaVBRQUdQajBBQmdvOUFBVzZQUUFGVWowQUNNbzVBQWc0QUFBQUFBQUFBQUFBQUFBQ1JQd0lCa1Q4Q0FRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBSTlBQWdPUFFBSURrVDhDQVFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFJOUFBZ09QUUFJRGowQUNBNUUvQWdFQUFBQUFBQUFBQUFBQUFBQUFBQUFBLy8vLy8vNEFBLy93QUFELzRBQUFQK0FBQUIvZ0FBQVA0QUFBQitBLzRBZmgvL0FINS8vd0EvLy80QVAvL3dBRC8rQUFCLzhBQUFmOEFBQUgrQUFBRC9BQUFCL3dBQUIvNEFBRC8rQUFmLy9nQi8vLzRBZi83K0FILzgvd0IvNFA4QUFBRC9nQUFBLzRBQUFQL2dBQUQvOEFBQS8vd0FBLy8vNFAvLy8vLy84b0FBQUFFQUFBQUNBQUFBQUJBQ0FBQUFBQUFBQUVBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1BRQUlOajBBQlFKQkFBSDJRUUFDa2tFQUF1WkJBQU1DUVFBQzVrRUFBbVpCQUFXV1BRQUliQUFBQUFJNUJCQVVBQUFBQUFBQUFBQUFBQUFDUVFBQk9rRUFBNlpCQUFQMlFRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBOHBCQUFZaU9RUVFGQUFBQUFBQUFBQUFBQUFBQWtFQUFlWkJBQVArUVFBRDZrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2tFQUEvWkJBQVAyUVFBRC9rRUFBd0k1QkJBVUFBQUFBQUFBQUFKQkFBSG1RUUFEL2tFQUEvWkJBQU5LUVFBQ1BrRUFCWlk5QUFWYVFRQUZoa0VBQXJKQkFBUCtRUUFEOWtFQUErcEJBQVArUVFBRnVBQUFBQUFBQUFBQ1FRQUI5a0VBQTNvOUFBVUNPUVFRRkFBQUFBQUFBQUFBQUFBQUFBQUFBQUk1QkJBV1FRQURla0VBQS81QkFBUHFRUUFEL2tFQUF1UUFBQUFBQUFBQUFqMEFCRlk5QUFnMEFBQUFBQUFBQUFBQUFBQUNQUUFJTmowQUJLSTlBQVZhUVFBQ2trRUFBLzVCQUFQK1FRQUQ5a0VBQS81QkFBTUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFqMEFDRFpCQUFXNlFRQURBa0VBQTZaQkFBUDJRUUFEL2tFQUEvNUJBQVArUVFBRC9rRUFBK3BCQUFQK1FRQUNaQUFBQUFBQUFBQUFBQUFBQWowQUJNSkJBQU42UVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQStwQkFBUHFRUUFENmtFQUEvWkJBQVArUVFBRHlqMEFCS0FBQUFBQUFBQUFBajBBQ0RaQkFBTjZRUUFEL2tFQUErcEJBQVAyUVFBRDlrRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUDJRUUFEQWowQUJNQUFBQUFBQUFBQUFBQUFBQUpCQUFFNlFRQUQva0VBQStwQkFBUCtRUUFEL2tFQUEvNUJBQU9tUVFBQzVrRUFBajVCQUFXR1BRQUVvQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFDUVFBRmxrRUFBLzVCQUFQcVFRQUQ5a0VBQS81QkFBSGtBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1BRQUV3ajBBQkZRQUFBQUFBQUFBQWtFQUFUcEJBQVArUVFBRDZrRUFBL1pCQUFQK1FRQUZ1QUFBQUFJNUJCQVVBQUFBQWprRUVCWTlBQVRDUVFBQ1prRUFBL1k5QUFUQUFBQUFBQUFBQUFJNUJCQVdRUUFEU2tFQUEvNUJBQVBxUVFBRDlrRUFBLzVCQUFONlFRQUM1a0VBQXdKQkFBTjZRUUFEL2tFQUEvNUJBQVArUFFBRXdBQUFBQUFBQUFBQUFBQUFBajBBQktKQkFBTjZRUUFEL2tFQUEvWkJBQVArUVFBRC9rRUFBLzVCQUFQK1FRQUQva0VBQS81QkFBUCtRUUFEL2owQUJNQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ1BRQUlOa0VBQWVaQkFBTktRUUFENmtFQUEvNUJBQVArUVFBRC9rRUFBLzVCQUFQS1FRQURTa0VBQmlJOUFBZzBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQ09RUVFGajBBQktJOUFBVUNRUUFCT2tFQUFUbzlBQVVDUFFBSWJBQUFBQUFBQUFBQUFBQUFBQUFBQUFQZy9BQURBQndBQXdBTUFBTU9EQUFEZndRQUEvNEVBQVBnQkFBRGdBd0FBd0FjQUFNQS9BQUREL3dBQXcvTUFBTUFEQUFEZ0F3QUErQU1BQVAvL0FBQT0iLCAiZW5jb2RpbmciOiAiYmFzZTY0In0sICJoZWFkZXJzU2l6ZSI6IDU0MywgImJvZHlTaXplIjogMTUwODYsICJyZWRpcmVjdFVSTCI6ICIiLCAiX3RyYW5zZmVyU2l6ZSI6IDE1NjI5fSwgImNhY2hlIjoge30sICJ0aW1pbmdzIjogeyJkbnMiOiAtMSwgImNvbm5lY3QiOiAtMSwgInNzbCI6IC0xLCAic2VuZCI6IDAsICJ3YWl0IjogNS44MywgInJlY2VpdmUiOiAyLjU0NX0sICJwYWdlcmVmIjogInBhZ2VANzA2ODBmYzdjNTM1OTA0ODAxMTFhMzNmYmJkNDRjY2YiLCAic2VydmVySVBBZGRyZXNzIjogIjIwNS4yMzQuMTc1LjE3NSIsICJfc2VydmVyUG9ydCI6IDgwLCAiX3NlY3VyaXR5RGV0YWlscyI6IHt9fSwgeyJzdGFydGVkRGF0ZVRpbWUiOiAiMjAyNC0xMC0zMVQwMjozMTo0My4wNzJaIiwgInRpbWUiOiA1MC4xMjYwMDAwMDAwMDAwMDUsICJyZXF1ZXN0IjogeyJtZXRob2QiOiAiR0VUIiwgInVybCI6ICJodHRwczovL2Fmcy5nb29nbGV1c2VyY29udGVudC5jb20vYWRfaWNvbnMvc3RhbmRhcmQvcHVibGlzaGVyX2ljb25faW1hZ2Uvc2VhcmNoLnN2Zz9jPSUyMzE5NjdEMiIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzIuMCIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICI6YXV0aG9yaXR5IiwgInZhbHVlIjogImFmcy5nb29nbGV1c2VyY29udGVudC5jb20ifSwgeyJuYW1lIjogIjptZXRob2QiLCAidmFsdWUiOiAiR0VUIn0sIHsibmFtZSI6ICI6cGF0aCIsICJ2YWx1ZSI6ICIvYWRfaWNvbnMvc3RhbmRhcmQvcHVibGlzaGVyX2ljb25faW1hZ2Uvc2VhcmNoLnN2Zz9jPSUyMzE5NjdEMiJ9LCB7Im5hbWUiOiAiOnNjaGVtZSIsICJ2YWx1ZSI6ICJodHRwcyJ9LCB7Im5hbWUiOiAiYWNjZXB0IiwgInZhbHVlIjogImltYWdlL2F2aWYsaW1hZ2Uvd2VicCxpbWFnZS9hcG5nLGltYWdlL3N2Zyt4bWwsaW1hZ2UvKiwqLyo7cT0wLjgifSwgeyJuYW1lIjogImFjY2VwdC1lbmNvZGluZyIsICJ2YWx1ZSI6ICJnemlwLCBkZWZsYXRlLCBiciwgenN0ZCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJwcmlvcml0eSIsICJ2YWx1ZSI6ICJpIn0sIHsibmFtZSI6ICJyZWZlcmVyIiwgInZhbHVlIjogImh0dHBzOi8vc3luZGljYXRlZHNlYXJjaC5nb29nLyJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhIiwgInZhbHVlIjogIlwiTm90P0FfQnJhbmRcIjt2PVwiOTlcIiwgXCJDaHJvbWl1bVwiO3Y9XCIxMzBcIiJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLW1vYmlsZSIsICJ2YWx1ZSI6ICI/MCJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLXBsYXRmb3JtIiwgInZhbHVlIjogIlwiV2luZG93c1wiIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtZGVzdCIsICJ2YWx1ZSI6ICJpbWFnZSJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLW1vZGUiLCAidmFsdWUiOiAibm8tY29ycyJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLXNpdGUiLCAidmFsdWUiOiAiY3Jvc3Mtc2l0ZSJ9LCB7Im5hbWUiOiAidXNlci1hZ2VudCIsICJ2YWx1ZSI6ICJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMTMwLjAuNjcyMy4zMSBTYWZhcmkvNTM3LjM2In1dLCAicXVlcnlTdHJpbmciOiBbeyJuYW1lIjogImMiLCAidmFsdWUiOiAiIzE5NjdEMiJ9XSwgImhlYWRlcnNTaXplIjogNzEwLCAiYm9keVNpemUiOiAwfSwgInJlc3BvbnNlIjogeyJzdGF0dXMiOiAyMDAsICJzdGF0dXNUZXh0IjogIiIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzIuMCIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICJhY2NlcHQtcmFuZ2VzIiwgInZhbHVlIjogImJ5dGVzIn0sIHsibmFtZSI6ICJhZ2UiLCAidmFsdWUiOiAiNjkyNTgifSwgeyJuYW1lIjogImFsdC1zdmMiLCAidmFsdWUiOiAiaDM9XCI6NDQzXCI7IG1hPTI1OTIwMDAsaDMtMjk9XCI6NDQzXCI7IG1hPTI1OTIwMDAifSwgeyJuYW1lIjogImNhY2hlLWNvbnRyb2wiLCAidmFsdWUiOiAicHVibGljLCBtYXgtYWdlPTgyODAwIn0sIHsibmFtZSI6ICJjb250ZW50LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAifSwgeyJuYW1lIjogImNvbnRlbnQtbGVuZ3RoIiwgInZhbHVlIjogIjI3MyJ9LCB7Im5hbWUiOiAiY29udGVudC1zZWN1cml0eS1wb2xpY3kiLCAidmFsdWUiOiAicmVxdWlyZS10cnVzdGVkLXR5cGVzLWZvciAnc2NyaXB0JzsgcmVwb3J0LXVyaSBodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9jc3AvYWZzLW5hdGl2ZS1hc3NldC1tYW5hZ2VycyJ9LCB7Im5hbWUiOiAiY29udGVudC10eXBlIiwgInZhbHVlIjogImltYWdlL3N2Zyt4bWwifSwgeyJuYW1lIjogImNyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5IiwgInZhbHVlIjogInNhbWUtb3JpZ2luOyByZXBvcnQtdG89XCJhZnMtbmF0aXZlLWFzc2V0LW1hbmFnZXJzXCIifSwgeyJuYW1lIjogImRhdGUiLCAidmFsdWUiOiAiV2VkLCAzMCBPY3QgMjAyNCAwNzoxNzoyNSBHTVQifSwgeyJuYW1lIjogImV4cGlyZXMiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwNjoxNzoyNSBHTVQifSwgeyJuYW1lIjogImxhc3QtbW9kaWZpZWQiLCAidmFsdWUiOiAiVGh1LCAyMCBKdWwgMjAyMyAyMjo0ODowMCBHTVQifSwgeyJuYW1lIjogInJlcG9ydC10byIsICJ2YWx1ZSI6ICJ7XCJncm91cFwiOlwiYWZzLW5hdGl2ZS1hc3NldC1tYW5hZ2Vyc1wiLFwibWF4X2FnZVwiOjI1OTIwMDAsXCJlbmRwb2ludHNcIjpbe1widXJsXCI6XCJodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9jc3AvcmVwb3J0LXRvL2Fmcy1uYXRpdmUtYXNzZXQtbWFuYWdlcnNcIn1dfSJ9LCB7Im5hbWUiOiAic2VydmVyIiwgInZhbHVlIjogInNmZmUifSwgeyJuYW1lIjogInZhcnkiLCAidmFsdWUiOiAiQWNjZXB0LUVuY29kaW5nIn0sIHsibmFtZSI6ICJ4LWNvbnRlbnQtdHlwZS1vcHRpb25zIiwgInZhbHVlIjogIm5vc25pZmYifSwgeyJuYW1lIjogIngteHNzLXByb3RlY3Rpb24iLCAidmFsdWUiOiAiMCJ9XSwgImNvbnRlbnQiOiB7InNpemUiOiAzOTEsICJtaW1lVHlwZSI6ICJpbWFnZS9zdmcreG1sIiwgImNvbXByZXNzaW9uIjogMywgInRleHQiOiAiPHN2ZyBmaWxsPScjMTk2N0QyJyAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjAwXCIgaGVpZ2h0PVwiMjAwXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiPjxwYXRoIGQ9XCJNMTUuNSAxNGgtLjc5bC0uMjgtLjI3QzE1LjQxIDEyLjU5IDE2IDExLjExIDE2IDkuNSAxNiA1LjkxIDEzLjA5IDMgOS41IDNTMyA1LjkxIDMgOS41IDUuOTEgMTYgOS41IDE2YzEuNjEgMCAzLjA5LS41OSA0LjIzLTEuNTdsLjI3LjI4di43OWw1IDQuOTlMMjAuNDkgMTlsLTQuOTktNXptLTYgMEM3LjAxIDE0IDUgMTEuOTkgNSA5LjVTNy4wMSA1IDkuNSA1IDE0IDcuMDEgMTQgOS41IDExLjk5IDE0IDkuNSAxNHpcIi8+PHBhdGggZD1cIk0wIDBoMjR2MjRIMHpcIiBmaWxsPVwibm9uZVwiLz48L3N2Zz5cbiJ9LCAiaGVhZGVyc1NpemUiOiAwLCAiYm9keVNpemUiOiAzODgsICJyZWRpcmVjdFVSTCI6ICIiLCAiX3RyYW5zZmVyU2l6ZSI6IDM4OH0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogMS44MjEsICJjb25uZWN0IjogMjAuMTYxLCAic3NsIjogMTUuNTY3LCAic2VuZCI6IDAsICJ3YWl0IjogMTAuMDM4LCAicmVjZWl2ZSI6IDIuNTM5fSwgInBhZ2VyZWYiOiAicGFnZUA3MDY4MGZjN2M1MzU5MDQ4MDExMWEzM2ZiYmQ0NGNjZiIsICJzZXJ2ZXJJUEFkZHJlc3MiOiAiWzJhMDA6MTQ1MDo0MDAxOjgyYjo6MjAwMV0iLCAiX3NlcnZlclBvcnQiOiA0NDMsICJfc2VjdXJpdHlEZXRhaWxzIjogeyJwcm90b2NvbCI6ICJUTFMgMS4zIiwgInN1YmplY3ROYW1lIjogIiouZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwgImlzc3VlciI6ICJXUjIiLCAidmFsaWRGcm9tIjogMTcyODI4OTUyNiwgInZhbGlkVG8iOiAxNzM1NTQ3MTI1fX0sIHsic3RhcnRlZERhdGVUaW1lIjogIjIwMjQtMTAtMzFUMDI6MzE6NDMuMDcyWiIsICJ0aW1lIjogMTAuNTkxMDAwMDAwMDAwMDAxLCAicmVxdWVzdCI6IHsibWV0aG9kIjogIkdFVCIsICJ1cmwiOiAiaHR0cHM6Ly9hZnMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2FkX2ljb25zL3N0YW5kYXJkL3B1Ymxpc2hlcl9pY29uX2ltYWdlL2NoZXZyb24uc3ZnP2M9JTIzZmZmZmZmIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMi4wIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogIjphdXRob3JpdHkiLCAidmFsdWUiOiAiYWZzLmdvb2dsZXVzZXJjb250ZW50LmNvbSJ9LCB7Im5hbWUiOiAiOm1ldGhvZCIsICJ2YWx1ZSI6ICJHRVQifSwgeyJuYW1lIjogIjpwYXRoIiwgInZhbHVlIjogIi9hZF9pY29ucy9zdGFuZGFyZC9wdWJsaXNoZXJfaWNvbl9pbWFnZS9jaGV2cm9uLnN2Zz9jPSUyM2ZmZmZmZiJ9LCB7Im5hbWUiOiAiOnNjaGVtZSIsICJ2YWx1ZSI6ICJodHRwcyJ9LCB7Im5hbWUiOiAiYWNjZXB0IiwgInZhbHVlIjogImltYWdlL2F2aWYsaW1hZ2Uvd2VicCxpbWFnZS9hcG5nLGltYWdlL3N2Zyt4bWwsaW1hZ2UvKiwqLyo7cT0wLjgifSwgeyJuYW1lIjogImFjY2VwdC1lbmNvZGluZyIsICJ2YWx1ZSI6ICJnemlwLCBkZWZsYXRlLCBiciwgenN0ZCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJwcmlvcml0eSIsICJ2YWx1ZSI6ICJpIn0sIHsibmFtZSI6ICJyZWZlcmVyIiwgInZhbHVlIjogImh0dHBzOi8vc3luZGljYXRlZHNlYXJjaC5nb29nLyJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhIiwgInZhbHVlIjogIlwiTm90P0FfQnJhbmRcIjt2PVwiOTlcIiwgXCJDaHJvbWl1bVwiO3Y9XCIxMzBcIiJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLW1vYmlsZSIsICJ2YWx1ZSI6ICI/MCJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLXBsYXRmb3JtIiwgInZhbHVlIjogIlwiV2luZG93c1wiIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtZGVzdCIsICJ2YWx1ZSI6ICJpbWFnZSJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLW1vZGUiLCAidmFsdWUiOiAibm8tY29ycyJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLXNpdGUiLCAidmFsdWUiOiAiY3Jvc3Mtc2l0ZSJ9LCB7Im5hbWUiOiAidXNlci1hZ2VudCIsICJ2YWx1ZSI6ICJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMTMwLjAuNjcyMy4zMSBTYWZhcmkvNTM3LjM2In1dLCAicXVlcnlTdHJpbmciOiBbeyJuYW1lIjogImMiLCAidmFsdWUiOiAiI2ZmZmZmZiJ9XSwgImhlYWRlcnNTaXplIjogNzEyLCAiYm9keVNpemUiOiAwfSwgInJlc3BvbnNlIjogeyJzdGF0dXMiOiAyMDAsICJzdGF0dXNUZXh0IjogIiIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzIuMCIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICJhY2NlcHQtcmFuZ2VzIiwgInZhbHVlIjogImJ5dGVzIn0sIHsibmFtZSI6ICJhZ2UiLCAidmFsdWUiOiAiNjAyMTgifSwgeyJuYW1lIjogImFsdC1zdmMiLCAidmFsdWUiOiAiaDM9XCI6NDQzXCI7IG1hPTI1OTIwMDAsaDMtMjk9XCI6NDQzXCI7IG1hPTI1OTIwMDAifSwgeyJuYW1lIjogImNhY2hlLWNvbnRyb2wiLCAidmFsdWUiOiAicHVibGljLCBtYXgtYWdlPTgyODAwIn0sIHsibmFtZSI6ICJjb250ZW50LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAifSwgeyJuYW1lIjogImNvbnRlbnQtbGVuZ3RoIiwgInZhbHVlIjogIjE3NCJ9LCB7Im5hbWUiOiAiY29udGVudC1zZWN1cml0eS1wb2xpY3kiLCAidmFsdWUiOiAicmVxdWlyZS10cnVzdGVkLXR5cGVzLWZvciAnc2NyaXB0JzsgcmVwb3J0LXVyaSBodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9jc3AvYWZzLW5hdGl2ZS1hc3NldC1tYW5hZ2VycyJ9LCB7Im5hbWUiOiAiY29udGVudC10eXBlIiwgInZhbHVlIjogImltYWdlL3N2Zyt4bWwifSwgeyJuYW1lIjogImNyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5IiwgInZhbHVlIjogInNhbWUtb3JpZ2luOyByZXBvcnQtdG89XCJhZnMtbmF0aXZlLWFzc2V0LW1hbmFnZXJzXCIifSwgeyJuYW1lIjogImRhdGUiLCAidmFsdWUiOiAiV2VkLCAzMCBPY3QgMjAyNCAwOTo0ODowNSBHTVQifSwgeyJuYW1lIjogImV4cGlyZXMiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwODo0ODowNSBHTVQifSwgeyJuYW1lIjogImxhc3QtbW9kaWZpZWQiLCAidmFsdWUiOiAiVGh1LCAwMiBOb3YgMjAyMyAyMjo0ODowMCBHTVQifSwgeyJuYW1lIjogInJlcG9ydC10byIsICJ2YWx1ZSI6ICJ7XCJncm91cFwiOlwiYWZzLW5hdGl2ZS1hc3NldC1tYW5hZ2Vyc1wiLFwibWF4X2FnZVwiOjI1OTIwMDAsXCJlbmRwb2ludHNcIjpbe1widXJsXCI6XCJodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9jc3AvcmVwb3J0LXRvL2Fmcy1uYXRpdmUtYXNzZXQtbWFuYWdlcnNcIn1dfSJ9LCB7Im5hbWUiOiAic2VydmVyIiwgInZhbHVlIjogInNmZmUifSwgeyJuYW1lIjogInZhcnkiLCAidmFsdWUiOiAiQWNjZXB0LUVuY29kaW5nIn0sIHsibmFtZSI6ICJ4LWNvbnRlbnQtdHlwZS1vcHRpb25zIiwgInZhbHVlIjogIm5vc25pZmYifSwgeyJuYW1lIjogIngteHNzLXByb3RlY3Rpb24iLCAidmFsdWUiOiAiMCJ9XSwgImNvbnRlbnQiOiB7InNpemUiOiAyMDAsICJtaW1lVHlwZSI6ICJpbWFnZS9zdmcreG1sIiwgImNvbXByZXNzaW9uIjogMCwgInRleHQiOiAiPHN2ZyBmaWxsPScjZmZmZmZmJyAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIHdpZHRoPVwiMjRcIj48cGF0aCBkPVwiTTAgMGgyNHYyNEgwelwiIGZpbGw9XCJub25lXCIvPjxwYXRoIGQ9XCJNNS44OCA0LjEyTDEzLjc2IDEybC03Ljg4IDcuODhMOCAyMmwxMC0xMEw4IDJ6XCIvPjwvc3ZnPiJ9LCAiaGVhZGVyc1NpemUiOiAwLCAiYm9keVNpemUiOiA3MDAsICJyZWRpcmVjdFVSTCI6ICIiLCAiX3RyYW5zZmVyU2l6ZSI6IDcwMH0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogLTEsICJjb25uZWN0IjogLTEsICJzc2wiOiAtMSwgInNlbmQiOiAwLCAid2FpdCI6IDYuMjY0LCAicmVjZWl2ZSI6IDQuMzI3fSwgInBhZ2VyZWYiOiAicGFnZUA3MDY4MGZjN2M1MzU5MDQ4MDExMWEzM2ZiYmQ0NGNjZiIsICJzZXJ2ZXJJUEFkZHJlc3MiOiAiWzJhMDA6MTQ1MDo0MDAxOjgyYjo6MjAwMV0iLCAiX3NlcnZlclBvcnQiOiA0NDMsICJfc2VjdXJpdHlEZXRhaWxzIjogeyJwcm90b2NvbCI6ICJUTFMgMS4zIiwgInN1YmplY3ROYW1lIjogIiouZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwgImlzc3VlciI6ICJXUjIiLCAidmFsaWRGcm9tIjogMTcyODI4OTUyNiwgInZhbGlkVG8iOiAxNzM1NTQ3MTI1fX0sIHsic3RhcnRlZERhdGVUaW1lIjogIjIwMjQtMTAtMzFUMDI6MzE6NDQuNTM4WiIsICJ0aW1lIjogMTA3OS40NTEsICJyZXF1ZXN0IjogeyJtZXRob2QiOiAiR0VUIiwgInVybCI6ICJodHRwczovL3N5bmRpY2F0ZWRzZWFyY2guZ29vZy9hZnMvZ2VuXzIwND9jbGllbnQ9ZHAtc2Vkbzg1XzNwaCZvdXRwdXQ9dWRzX2Fkc19vbmx5Jnp4PXh4MDB0azUwYjJsNSZhcWlkPUR1d2laODJQQzYydTg4RVBrdUt1NkFVJnBzaWQ9OTMzMDI0NDM4MCZwYnQ9YnMmYWRieD00MDYuNjcxODc1JmFkYnk9MTM0LjYyNSZhZGJoPTUzMyZhZGJ3PTQ2NyZhZGJhaD0xNzElMkMxNzElMkMxNzEmYWRibj1tYXN0ZXItMSZlYXdwPXBhcnRuZXItZHAtc2Vkbzg1XzNwaCZlcnJ2PTY4ODE2MDUwNiZjc2FsYT0wJTdDMCU3Qzk2NiU3QzYwMyU3QzEzNyZsbGU9MCZpZnY9MSZocHQ9MCIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzIuMCIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICI6YXV0aG9yaXR5IiwgInZhbHVlIjogInN5bmRpY2F0ZWRzZWFyY2guZ29vZyJ9LCB7Im5hbWUiOiAiOm1ldGhvZCIsICJ2YWx1ZSI6ICJHRVQifSwgeyJuYW1lIjogIjpwYXRoIiwgInZhbHVlIjogIi9hZnMvZ2VuXzIwND9jbGllbnQ9ZHAtc2Vkbzg1XzNwaCZvdXRwdXQ9dWRzX2Fkc19vbmx5Jnp4PXh4MDB0azUwYjJsNSZhcWlkPUR1d2laODJQQzYydTg4RVBrdUt1NkFVJnBzaWQ9OTMzMDI0NDM4MCZwYnQ9YnMmYWRieD00MDYuNjcxODc1JmFkYnk9MTM0LjYyNSZhZGJoPTUzMyZhZGJ3PTQ2NyZhZGJhaD0xNzElMkMxNzElMkMxNzEmYWRibj1tYXN0ZXItMSZlYXdwPXBhcnRuZXItZHAtc2Vkbzg1XzNwaCZlcnJ2PTY4ODE2MDUwNiZjc2FsYT0wJTdDMCU3Qzk2NiU3QzYwMyU3QzEzNyZsbGU9MCZpZnY9MSZocHQ9MCJ9LCB7Im5hbWUiOiAiOnNjaGVtZSIsICJ2YWx1ZSI6ICJodHRwcyJ9LCB7Im5hbWUiOiAiYWNjZXB0IiwgInZhbHVlIjogImltYWdlL2F2aWYsaW1hZ2Uvd2VicCxpbWFnZS9hcG5nLGltYWdlL3N2Zyt4bWwsaW1hZ2UvKiwqLyo7cT0wLjgifSwgeyJuYW1lIjogImFjY2VwdC1lbmNvZGluZyIsICJ2YWx1ZSI6ICJnemlwLCBkZWZsYXRlLCBiciwgenN0ZCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJwcmlvcml0eSIsICJ2YWx1ZSI6ICJpIn0sIHsibmFtZSI6ICJyZWZlcmVyIiwgInZhbHVlIjogImh0dHA6Ly9va2F5dGkucGljcy8ifSwgeyJuYW1lIjogInNlYy1jaC11YSIsICJ2YWx1ZSI6ICJcIk5vdD9BX0JyYW5kXCI7dj1cIjk5XCIsIFwiQ2hyb21pdW1cIjt2PVwiMTMwXCIifSwgeyJuYW1lIjogInNlYy1jaC11YS1tb2JpbGUiLCAidmFsdWUiOiAiPzAifSwgeyJuYW1lIjogInNlYy1jaC11YS1wbGF0Zm9ybSIsICJ2YWx1ZSI6ICJcIldpbmRvd3NcIiJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLWRlc3QiLCAidmFsdWUiOiAiaW1hZ2UifSwgeyJuYW1lIjogInNlYy1mZXRjaC1tb2RlIiwgInZhbHVlIjogIm5vLWNvcnMifSwgeyJuYW1lIjogInNlYy1mZXRjaC1zaXRlIiwgInZhbHVlIjogImNyb3NzLXNpdGUifSwgeyJuYW1lIjogInVzZXItYWdlbnQiLCAidmFsdWUiOiAiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEzMC4wLjY3MjMuMzEgU2FmYXJpLzUzNy4zNiJ9XSwgInF1ZXJ5U3RyaW5nIjogW3sibmFtZSI6ICJjbGllbnQiLCAidmFsdWUiOiAiZHAtc2Vkbzg1XzNwaCJ9LCB7Im5hbWUiOiAib3V0cHV0IiwgInZhbHVlIjogInVkc19hZHNfb25seSJ9LCB7Im5hbWUiOiAiengiLCAidmFsdWUiOiAieHgwMHRrNTBiMmw1In0sIHsibmFtZSI6ICJhcWlkIiwgInZhbHVlIjogIkR1d2laODJQQzYydTg4RVBrdUt1NkFVIn0sIHsibmFtZSI6ICJwc2lkIiwgInZhbHVlIjogIjkzMzAyNDQzODAifSwgeyJuYW1lIjogInBidCIsICJ2YWx1ZSI6ICJicyJ9LCB7Im5hbWUiOiAiYWRieCIsICJ2YWx1ZSI6ICI0MDYuNjcxODc1In0sIHsibmFtZSI6ICJhZGJ5IiwgInZhbHVlIjogIjEzNC42MjUifSwgeyJuYW1lIjogImFkYmgiLCAidmFsdWUiOiAiNTMzIn0sIHsibmFtZSI6ICJhZGJ3IiwgInZhbHVlIjogIjQ2NyJ9LCB7Im5hbWUiOiAiYWRiYWgiLCAidmFsdWUiOiAiMTcxLDE3MSwxNzEifSwgeyJuYW1lIjogImFkYm4iLCAidmFsdWUiOiAibWFzdGVyLTEifSwgeyJuYW1lIjogImVhd3AiLCAidmFsdWUiOiAicGFydG5lci1kcC1zZWRvODVfM3BoIn0sIHsibmFtZSI6ICJlcnJ2IiwgInZhbHVlIjogIjY4ODE2MDUwNiJ9LCB7Im5hbWUiOiAiY3NhbGEiLCAidmFsdWUiOiAiMHwwfDk2Nnw2MDN8MTM3In0sIHsibmFtZSI6ICJsbGUiLCAidmFsdWUiOiAiMCJ9LCB7Im5hbWUiOiAiaWZ2IiwgInZhbHVlIjogIjEifSwgeyJuYW1lIjogImhwdCIsICJ2YWx1ZSI6ICIwIn1dLCAiaGVhZGVyc1NpemUiOiA4ODksICJib2R5U2l6ZSI6IDB9LCAicmVzcG9uc2UiOiB7InN0YXR1cyI6IDIwNCwgInN0YXR1c1RleHQiOiAiIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMi4wIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogImFsdC1zdmMiLCAidmFsdWUiOiAiaDM9XCI6NDQzXCI7IG1hPTI1OTIwMDAsaDMtMjk9XCI6NDQzXCI7IG1hPTI1OTIwMDAifSwgeyJuYW1lIjogImNvbnRlbnQtbGVuZ3RoIiwgInZhbHVlIjogIjAifSwgeyJuYW1lIjogImNvbnRlbnQtc2VjdXJpdHktcG9saWN5IiwgInZhbHVlIjogIm9iamVjdC1zcmMgJ25vbmUnO2Jhc2UtdXJpICdzZWxmJztzY3JpcHQtc3JjICdub25jZS1sTzAxbjltWDhaV1lMaEljZlRWeXdBJyAnc3RyaWN0LWR5bmFtaWMnICdyZXBvcnQtc2FtcGxlJyAndW5zYWZlLWV2YWwnICd1bnNhZmUtaW5saW5lJyBodHRwczogaHR0cDo7cmVwb3J0LXVyaSBodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9jc3AvZ3dzL290aGVyIn0sIHsibmFtZSI6ICJjb250ZW50LXR5cGUiLCAidmFsdWUiOiAidGV4dC9odG1sOyBjaGFyc2V0PVVURi04In0sIHsibmFtZSI6ICJjcm9zcy1vcmlnaW4tb3BlbmVyLXBvbGljeSIsICJ2YWx1ZSI6ICJzYW1lLW9yaWdpbi1hbGxvdy1wb3B1cHM7IHJlcG9ydC10bz1cImd3c1wiIn0sIHsibmFtZSI6ICJkYXRlIiwgInZhbHVlIjogIlRodSwgMzEgT2N0IDIwMjQgMDI6MzE6NDUgR01UIn0sIHsibmFtZSI6ICJwZXJtaXNzaW9ucy1wb2xpY3kiLCAidmFsdWUiOiAidW5sb2FkPSgpIn0sIHsibmFtZSI6ICJyZXBvcnQtdG8iLCAidmFsdWUiOiAie1wiZ3JvdXBcIjpcImd3c1wiLFwibWF4X2FnZVwiOjI1OTIwMDAsXCJlbmRwb2ludHNcIjpbe1widXJsXCI6XCJodHRwczovL2NzcC53aXRoZ29vZ2xlLmNvbS9jc3AvcmVwb3J0LXRvL2d3cy9vdGhlclwifV19In0sIHsibmFtZSI6ICJzZXJ2ZXIiLCAidmFsdWUiOiAiZ3dzIn0sIHsibmFtZSI6ICJ4LWZyYW1lLW9wdGlvbnMiLCAidmFsdWUiOiAiU0FNRU9SSUdJTiJ9LCB7Im5hbWUiOiAieC14c3MtcHJvdGVjdGlvbiIsICJ2YWx1ZSI6ICIwIn1dLCAiY29udGVudCI6IHsic2l6ZSI6IDAsICJtaW1lVHlwZSI6ICJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgiLCAiY29tcHJlc3Npb24iOiAwLCAidGV4dCI6ICIifSwgImhlYWRlcnNTaXplIjogMCwgImJvZHlTaXplIjogNTA5LCAicmVkaXJlY3RVUkwiOiAiIiwgIl90cmFuc2ZlclNpemUiOiA1MDl9LCAiY2FjaGUiOiB7fSwgInRpbWluZ3MiOiB7ImRucyI6IDEuNzc5LCAiY29ubmVjdCI6IDUzMS4zNjQsICJzc2wiOiAyNjYuNjEzLCAic2VuZCI6IDAsICJ3YWl0IjogMjc3LjU5NSwgInJlY2VpdmUiOiAyLjF9LCAicGFnZXJlZiI6ICJwYWdlQDcwNjgwZmM3YzUzNTkwNDgwMTExYTMzZmJiZDQ0Y2NmIiwgInNlcnZlcklQQWRkcmVzcyI6ICJbMjQwNDo2ODAwOjQwMDM6YzFhOjo4YV0iLCAiX3NlcnZlclBvcnQiOiA0NDMsICJfc2VjdXJpdHlEZXRhaWxzIjogeyJwcm90b2NvbCI6ICJUTFMgMS4zIiwgInN1YmplY3ROYW1lIjogInN5bmRpY2F0ZWRzZWFyY2guZ29vZyIsICJpc3N1ZXIiOiAiV1IyIiwgInZhbGlkRnJvbSI6IDE3MjgyODk3NDksICJ2YWxpZFRvIjogMTczNTU0NzM0OH19LCB7InN0YXJ0ZWREYXRlVGltZSI6ICIyMDI0LTEwLTMxVDAyOjMxOjQ0LjU0M1oiLCAidGltZSI6IDI4My41NzA5OTk5OTk5OTk5NywgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHBzOi8vc3luZGljYXRlZHNlYXJjaC5nb29nL2Fmcy9nZW5fMjA0P2NsaWVudD1kcC1zZWRvODVfM3BoJm91dHB1dD11ZHNfYWRzX29ubHkmeng9NjJ4OGxnNW13aXJuJmFxaWQ9RHV3aVo4MlBDNjJ1ODhFUGt1S3U2QVUmcGJ0PWJzJmFkYng9NDkwJmFkYnk9ODA3LjYyNSZhZGJoPTE2JmFkYnc9MzAwJmFkYm49c2xhdmUtMS0xJmVhd3A9cGFydG5lci1kcC1zZWRvODVfM3BoJmVycnY9Njg4MTYwNTA2JmNzYWxhPTAlN0MwJTdDOTY2JTdDNjAzJTdDMTM3JmxsZT0wJmlmdj0wJmhwdD0wIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMi4wIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogIjphdXRob3JpdHkiLCAidmFsdWUiOiAic3luZGljYXRlZHNlYXJjaC5nb29nIn0sIHsibmFtZSI6ICI6bWV0aG9kIiwgInZhbHVlIjogIkdFVCJ9LCB7Im5hbWUiOiAiOnBhdGgiLCAidmFsdWUiOiAiL2Fmcy9nZW5fMjA0P2NsaWVudD1kcC1zZWRvODVfM3BoJm91dHB1dD11ZHNfYWRzX29ubHkmeng9NjJ4OGxnNW13aXJuJmFxaWQ9RHV3aVo4MlBDNjJ1ODhFUGt1S3U2QVUmcGJ0PWJzJmFkYng9NDkwJmFkYnk9ODA3LjYyNSZhZGJoPTE2JmFkYnc9MzAwJmFkYm49c2xhdmUtMS0xJmVhd3A9cGFydG5lci1kcC1zZWRvODVfM3BoJmVycnY9Njg4MTYwNTA2JmNzYWxhPTAlN0MwJTdDOTY2JTdDNjAzJTdDMTM3JmxsZT0wJmlmdj0wJmhwdD0wIn0sIHsibmFtZSI6ICI6c2NoZW1lIiwgInZhbHVlIjogImh0dHBzIn0sIHsibmFtZSI6ICJhY2NlcHQiLCAidmFsdWUiOiAiaW1hZ2UvYXZpZixpbWFnZS93ZWJwLGltYWdlL2FwbmcsaW1hZ2Uvc3ZnK3htbCxpbWFnZS8qLCovKjtxPTAuOCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAsIGRlZmxhdGUsIGJyLCB6c3RkIn0sIHsibmFtZSI6ICJhY2NlcHQtbGFuZ3VhZ2UiLCAidmFsdWUiOiAiZW4tVVMifSwgeyJuYW1lIjogInByaW9yaXR5IiwgInZhbHVlIjogImkifSwgeyJuYW1lIjogInJlZmVyZXIiLCAidmFsdWUiOiAiaHR0cDovL29rYXl0aS5waWNzLyJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhIiwgInZhbHVlIjogIlwiTm90P0FfQnJhbmRcIjt2PVwiOTlcIiwgXCJDaHJvbWl1bVwiO3Y9XCIxMzBcIiJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLW1vYmlsZSIsICJ2YWx1ZSI6ICI/MCJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLXBsYXRmb3JtIiwgInZhbHVlIjogIlwiV2luZG93c1wiIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtZGVzdCIsICJ2YWx1ZSI6ICJpbWFnZSJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLW1vZGUiLCAidmFsdWUiOiAibm8tY29ycyJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLXNpdGUiLCAidmFsdWUiOiAiY3Jvc3Mtc2l0ZSJ9LCB7Im5hbWUiOiAidXNlci1hZ2VudCIsICJ2YWx1ZSI6ICJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMTMwLjAuNjcyMy4zMSBTYWZhcmkvNTM3LjM2In1dLCAicXVlcnlTdHJpbmciOiBbeyJuYW1lIjogImNsaWVudCIsICJ2YWx1ZSI6ICJkcC1zZWRvODVfM3BoIn0sIHsibmFtZSI6ICJvdXRwdXQiLCAidmFsdWUiOiAidWRzX2Fkc19vbmx5In0sIHsibmFtZSI6ICJ6eCIsICJ2YWx1ZSI6ICI2Mng4bGc1bXdpcm4ifSwgeyJuYW1lIjogImFxaWQiLCAidmFsdWUiOiAiRHV3aVo4MlBDNjJ1ODhFUGt1S3U2QVUifSwgeyJuYW1lIjogInBidCIsICJ2YWx1ZSI6ICJicyJ9LCB7Im5hbWUiOiAiYWRieCIsICJ2YWx1ZSI6ICI0OTAifSwgeyJuYW1lIjogImFkYnkiLCAidmFsdWUiOiAiODA3LjYyNSJ9LCB7Im5hbWUiOiAiYWRiaCIsICJ2YWx1ZSI6ICIxNiJ9LCB7Im5hbWUiOiAiYWRidyIsICJ2YWx1ZSI6ICIzMDAifSwgeyJuYW1lIjogImFkYm4iLCAidmFsdWUiOiAic2xhdmUtMS0xIn0sIHsibmFtZSI6ICJlYXdwIiwgInZhbHVlIjogInBhcnRuZXItZHAtc2Vkbzg1XzNwaCJ9LCB7Im5hbWUiOiAiZXJydiIsICJ2YWx1ZSI6ICI2ODgxNjA1MDYifSwgeyJuYW1lIjogImNzYWxhIiwgInZhbHVlIjogIjB8MHw5NjZ8NjAzfDEzNyJ9LCB7Im5hbWUiOiAibGxlIiwgInZhbHVlIjogIjAifSwgeyJuYW1lIjogImlmdiIsICJ2YWx1ZSI6ICIwIn0sIHsibmFtZSI6ICJocHQiLCAidmFsdWUiOiAiMCJ9XSwgImhlYWRlcnNTaXplIjogODQ0LCAiYm9keVNpemUiOiAwfSwgInJlc3BvbnNlIjogeyJzdGF0dXMiOiAyMDQsICJzdGF0dXNUZXh0IjogIiIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzIuMCIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICJhbHQtc3ZjIiwgInZhbHVlIjogImgzPVwiOjQ0M1wiOyBtYT0yNTkyMDAwLGgzLTI5PVwiOjQ0M1wiOyBtYT0yNTkyMDAwIn0sIHsibmFtZSI6ICJjb250ZW50LWxlbmd0aCIsICJ2YWx1ZSI6ICIwIn0sIHsibmFtZSI6ICJjb250ZW50LXNlY3VyaXR5LXBvbGljeSIsICJ2YWx1ZSI6ICJvYmplY3Qtc3JjICdub25lJztiYXNlLXVyaSAnc2VsZic7c2NyaXB0LXNyYyAnbm9uY2UtWmtKTUNRbkN1bngwZ21OYkFILVJnZycgJ3N0cmljdC1keW5hbWljJyAncmVwb3J0LXNhbXBsZScgJ3Vuc2FmZS1ldmFsJyAndW5zYWZlLWlubGluZScgaHR0cHM6IGh0dHA6O3JlcG9ydC11cmkgaHR0cHM6Ly9jc3Aud2l0aGdvb2dsZS5jb20vY3NwL2d3cy9vdGhlciJ9LCB7Im5hbWUiOiAiY29udGVudC10eXBlIiwgInZhbHVlIjogInRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCJ9LCB7Im5hbWUiOiAiY3Jvc3Mtb3JpZ2luLW9wZW5lci1wb2xpY3kiLCAidmFsdWUiOiAic2FtZS1vcmlnaW4tYWxsb3ctcG9wdXBzOyByZXBvcnQtdG89XCJnd3NcIiJ9LCB7Im5hbWUiOiAiZGF0ZSIsICJ2YWx1ZSI6ICJUaHUsIDMxIE9jdCAyMDI0IDAyOjMxOjQ1IEdNVCJ9LCB7Im5hbWUiOiAicGVybWlzc2lvbnMtcG9saWN5IiwgInZhbHVlIjogInVubG9hZD0oKSJ9LCB7Im5hbWUiOiAicmVwb3J0LXRvIiwgInZhbHVlIjogIntcImdyb3VwXCI6XCJnd3NcIixcIm1heF9hZ2VcIjoyNTkyMDAwLFwiZW5kcG9pbnRzXCI6W3tcInVybFwiOlwiaHR0cHM6Ly9jc3Aud2l0aGdvb2dsZS5jb20vY3NwL3JlcG9ydC10by9nd3Mvb3RoZXJcIn1dfSJ9LCB7Im5hbWUiOiAic2VydmVyIiwgInZhbHVlIjogImd3cyJ9LCB7Im5hbWUiOiAieC1mcmFtZS1vcHRpb25zIiwgInZhbHVlIjogIlNBTUVPUklHSU4ifSwgeyJuYW1lIjogIngteHNzLXByb3RlY3Rpb24iLCAidmFsdWUiOiAiMCJ9XSwgImNvbnRlbnQiOiB7InNpemUiOiAwLCAibWltZVR5cGUiOiAidGV4dC9odG1sOyBjaGFyc2V0PVVURi04IiwgImNvbXByZXNzaW9uIjogMCwgInRleHQiOiAiIn0sICJoZWFkZXJzU2l6ZSI6IDAsICJib2R5U2l6ZSI6IDIxMiwgInJlZGlyZWN0VVJMIjogIiIsICJfdHJhbnNmZXJTaXplIjogMjEyfSwgImNhY2hlIjoge30sICJ0aW1pbmdzIjogeyJkbnMiOiAtMSwgImNvbm5lY3QiOiAtMSwgInNzbCI6IC0xLCAic2VuZCI6IDAsICJ3YWl0IjogMjgxLjY0MiwgInJlY2VpdmUiOiAxLjkyOX0sICJwYWdlcmVmIjogInBhZ2VANzA2ODBmYzdjNTM1OTA0ODAxMTFhMzNmYmJkNDRjY2YiLCAic2VydmVySVBBZGRyZXNzIjogIlsyNDA0OjY4MDA6NDAwMzpjMWE6OjhhXSIsICJfc2VydmVyUG9ydCI6IDQ0MywgIl9zZWN1cml0eURldGFpbHMiOiB7InByb3RvY29sIjogIlRMUyAxLjMiLCAic3ViamVjdE5hbWUiOiAic3luZGljYXRlZHNlYXJjaC5nb29nIiwgImlzc3VlciI6ICJXUjIiLCAidmFsaWRGcm9tIjogMTcyODI4OTc0OSwgInZhbGlkVG8iOiAxNzM1NTQ3MzQ4fX0sIHsic3RhcnRlZERhdGVUaW1lIjogIjIwMjQtMTAtMzFUMDI6MzE6NDUuMDM5WiIsICJ0aW1lIjogMjg0Ljc5NiwgInJlcXVlc3QiOiB7Im1ldGhvZCI6ICJHRVQiLCAidXJsIjogImh0dHBzOi8vc3luZGljYXRlZHNlYXJjaC5nb29nL2Fmcy9nZW5fMjA0P2NsaWVudD1kcC1zZWRvODVfM3BoJm91dHB1dD11ZHNfYWRzX29ubHkmeng9YTNsM3pvcndpMXNwJmFxaWQ9RHV3aVo4MlBDNjJ1ODhFUGt1S3U2QVUmcHNpZD05MzMwMjQ0MzgwJnBidD1idiZhZGJ4PTQwNi42NzE4NzUmYWRieT0xMzQuNjI1JmFkYmg9NTMzJmFkYnc9NDY3JmFkYmFoPTE3MSUyQzE3MSUyQzE3MSZhZGJuPW1hc3Rlci0xJmVhd3A9cGFydG5lci1kcC1zZWRvODVfM3BoJmVycnY9Njg4MTYwNTA2JmNzYWxhPTAlN0MwJTdDOTY2JTdDNjAzJTdDMTM3JmxsZT0wJmlmdj0xJmhwdD0wIiwgImh0dHBWZXJzaW9uIjogIkhUVFAvMi4wIiwgImNvb2tpZXMiOiBbXSwgImhlYWRlcnMiOiBbeyJuYW1lIjogIjphdXRob3JpdHkiLCAidmFsdWUiOiAic3luZGljYXRlZHNlYXJjaC5nb29nIn0sIHsibmFtZSI6ICI6bWV0aG9kIiwgInZhbHVlIjogIkdFVCJ9LCB7Im5hbWUiOiAiOnBhdGgiLCAidmFsdWUiOiAiL2Fmcy9nZW5fMjA0P2NsaWVudD1kcC1zZWRvODVfM3BoJm91dHB1dD11ZHNfYWRzX29ubHkmeng9YTNsM3pvcndpMXNwJmFxaWQ9RHV3aVo4MlBDNjJ1ODhFUGt1S3U2QVUmcHNpZD05MzMwMjQ0MzgwJnBidD1idiZhZGJ4PTQwNi42NzE4NzUmYWRieT0xMzQuNjI1JmFkYmg9NTMzJmFkYnc9NDY3JmFkYmFoPTE3MSUyQzE3MSUyQzE3MSZhZGJuPW1hc3Rlci0xJmVhd3A9cGFydG5lci1kcC1zZWRvODVfM3BoJmVycnY9Njg4MTYwNTA2JmNzYWxhPTAlN0MwJTdDOTY2JTdDNjAzJTdDMTM3JmxsZT0wJmlmdj0xJmhwdD0wIn0sIHsibmFtZSI6ICI6c2NoZW1lIiwgInZhbHVlIjogImh0dHBzIn0sIHsibmFtZSI6ICJhY2NlcHQiLCAidmFsdWUiOiAiaW1hZ2UvYXZpZixpbWFnZS93ZWJwLGltYWdlL2FwbmcsaW1hZ2Uvc3ZnK3htbCxpbWFnZS8qLCovKjtxPTAuOCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWVuY29kaW5nIiwgInZhbHVlIjogImd6aXAsIGRlZmxhdGUsIGJyLCB6c3RkIn0sIHsibmFtZSI6ICJhY2NlcHQtbGFuZ3VhZ2UiLCAidmFsdWUiOiAiZW4tVVMifSwgeyJuYW1lIjogInByaW9yaXR5IiwgInZhbHVlIjogImkifSwgeyJuYW1lIjogInJlZmVyZXIiLCAidmFsdWUiOiAiaHR0cDovL29rYXl0aS5waWNzLyJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhIiwgInZhbHVlIjogIlwiTm90P0FfQnJhbmRcIjt2PVwiOTlcIiwgXCJDaHJvbWl1bVwiO3Y9XCIxMzBcIiJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLW1vYmlsZSIsICJ2YWx1ZSI6ICI/MCJ9LCB7Im5hbWUiOiAic2VjLWNoLXVhLXBsYXRmb3JtIiwgInZhbHVlIjogIlwiV2luZG93c1wiIn0sIHsibmFtZSI6ICJzZWMtZmV0Y2gtZGVzdCIsICJ2YWx1ZSI6ICJpbWFnZSJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLW1vZGUiLCAidmFsdWUiOiAibm8tY29ycyJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLXNpdGUiLCAidmFsdWUiOiAiY3Jvc3Mtc2l0ZSJ9LCB7Im5hbWUiOiAidXNlci1hZ2VudCIsICJ2YWx1ZSI6ICJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMTMwLjAuNjcyMy4zMSBTYWZhcmkvNTM3LjM2In1dLCAicXVlcnlTdHJpbmciOiBbeyJuYW1lIjogImNsaWVudCIsICJ2YWx1ZSI6ICJkcC1zZWRvODVfM3BoIn0sIHsibmFtZSI6ICJvdXRwdXQiLCAidmFsdWUiOiAidWRzX2Fkc19vbmx5In0sIHsibmFtZSI6ICJ6eCIsICJ2YWx1ZSI6ICJhM2wzem9yd2kxc3AifSwgeyJuYW1lIjogImFxaWQiLCAidmFsdWUiOiAiRHV3aVo4MlBDNjJ1ODhFUGt1S3U2QVUifSwgeyJuYW1lIjogInBzaWQiLCAidmFsdWUiOiAiOTMzMDI0NDM4MCJ9LCB7Im5hbWUiOiAicGJ0IiwgInZhbHVlIjogImJ2In0sIHsibmFtZSI6ICJhZGJ4IiwgInZhbHVlIjogIjQwNi42NzE4NzUifSwgeyJuYW1lIjogImFkYnkiLCAidmFsdWUiOiAiMTM0LjYyNSJ9LCB7Im5hbWUiOiAiYWRiaCIsICJ2YWx1ZSI6ICI1MzMifSwgeyJuYW1lIjogImFkYnciLCAidmFsdWUiOiAiNDY3In0sIHsibmFtZSI6ICJhZGJhaCIsICJ2YWx1ZSI6ICIxNzEsMTcxLDE3MSJ9LCB7Im5hbWUiOiAiYWRibiIsICJ2YWx1ZSI6ICJtYXN0ZXItMSJ9LCB7Im5hbWUiOiAiZWF3cCIsICJ2YWx1ZSI6ICJwYXJ0bmVyLWRwLXNlZG84NV8zcGgifSwgeyJuYW1lIjogImVycnYiLCAidmFsdWUiOiAiNjg4MTYwNTA2In0sIHsibmFtZSI6ICJjc2FsYSIsICJ2YWx1ZSI6ICIwfDB8OTY2fDYwM3wxMzcifSwgeyJuYW1lIjogImxsZSIsICJ2YWx1ZSI6ICIwIn0sIHsibmFtZSI6ICJpZnYiLCAidmFsdWUiOiAiMSJ9LCB7Im5hbWUiOiAiaHB0IiwgInZhbHVlIjogIjAifV0sICJoZWFkZXJzU2l6ZSI6IDg4OSwgImJvZHlTaXplIjogMH0sICJyZXNwb25zZSI6IHsic3RhdHVzIjogMjA0LCAic3RhdHVzVGV4dCI6ICIiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8yLjAiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiYWx0LXN2YyIsICJ2YWx1ZSI6ICJoMz1cIjo0NDNcIjsgbWE9MjU5MjAwMCxoMy0yOT1cIjo0NDNcIjsgbWE9MjU5MjAwMCJ9LCB7Im5hbWUiOiAiY29udGVudC1sZW5ndGgiLCAidmFsdWUiOiAiMCJ9LCB7Im5hbWUiOiAiY29udGVudC1zZWN1cml0eS1wb2xpY3kiLCAidmFsdWUiOiAib2JqZWN0LXNyYyAnbm9uZSc7YmFzZS11cmkgJ3NlbGYnO3NjcmlwdC1zcmMgJ25vbmNlLTJFYVNEZldBQ1NnN3Z1ZkZ3ZU83MFEnICdzdHJpY3QtZHluYW1pYycgJ3JlcG9ydC1zYW1wbGUnICd1bnNhZmUtZXZhbCcgJ3Vuc2FmZS1pbmxpbmUnIGh0dHBzOiBodHRwOjtyZXBvcnQtdXJpIGh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2NzcC9nd3Mvb3RoZXIifSwgeyJuYW1lIjogImNvbnRlbnQtdHlwZSIsICJ2YWx1ZSI6ICJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgifSwgeyJuYW1lIjogImNyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5IiwgInZhbHVlIjogInNhbWUtb3JpZ2luLWFsbG93LXBvcHVwczsgcmVwb3J0LXRvPVwiZ3dzXCIifSwgeyJuYW1lIjogImRhdGUiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo0NSBHTVQifSwgeyJuYW1lIjogInBlcm1pc3Npb25zLXBvbGljeSIsICJ2YWx1ZSI6ICJ1bmxvYWQ9KCkifSwgeyJuYW1lIjogInJlcG9ydC10byIsICJ2YWx1ZSI6ICJ7XCJncm91cFwiOlwiZ3dzXCIsXCJtYXhfYWdlXCI6MjU5MjAwMCxcImVuZHBvaW50c1wiOlt7XCJ1cmxcIjpcImh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2NzcC9yZXBvcnQtdG8vZ3dzL290aGVyXCJ9XX0ifSwgeyJuYW1lIjogInNlcnZlciIsICJ2YWx1ZSI6ICJnd3MifSwgeyJuYW1lIjogIngtZnJhbWUtb3B0aW9ucyIsICJ2YWx1ZSI6ICJTQU1FT1JJR0lOIn0sIHsibmFtZSI6ICJ4LXhzcy1wcm90ZWN0aW9uIiwgInZhbHVlIjogIjAifV0sICJjb250ZW50IjogeyJzaXplIjogMCwgIm1pbWVUeXBlIjogInRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIsICJjb21wcmVzc2lvbiI6IDAsICJ0ZXh0IjogIiJ9LCAiaGVhZGVyc1NpemUiOiAwLCAiYm9keVNpemUiOiAyMTEsICJyZWRpcmVjdFVSTCI6ICIiLCAiX3RyYW5zZmVyU2l6ZSI6IDIxMX0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogLTEsICJjb25uZWN0IjogLTEsICJzc2wiOiAtMSwgInNlbmQiOiAwLCAid2FpdCI6IDI4Mi45ODgsICJyZWNlaXZlIjogMS44MDh9LCAicGFnZXJlZiI6ICJwYWdlQDcwNjgwZmM3YzUzNTkwNDgwMTExYTMzZmJiZDQ0Y2NmIiwgInNlcnZlcklQQWRkcmVzcyI6ICJbMjQwNDo2ODAwOjQwMDM6YzFhOjo4YV0iLCAiX3NlcnZlclBvcnQiOiA0NDMsICJfc2VjdXJpdHlEZXRhaWxzIjogeyJwcm90b2NvbCI6ICJUTFMgMS4zIiwgInN1YmplY3ROYW1lIjogInN5bmRpY2F0ZWRzZWFyY2guZ29vZyIsICJpc3N1ZXIiOiAiV1IyIiwgInZhbGlkRnJvbSI6IDE3MjgyODk3NDksICJ2YWxpZFRvIjogMTczNTU0NzM0OH19LCB7InN0YXJ0ZWREYXRlVGltZSI6ICIyMDI0LTEwLTMxVDAyOjMxOjU3LjU5NloiLCAidGltZSI6IDI3OC42MjcsICJyZXF1ZXN0IjogeyJtZXRob2QiOiAiR0VUIiwgInVybCI6ICJodHRwczovL3N5bmRpY2F0ZWRzZWFyY2guZ29vZy9hZnMvZ2VuXzIwND9jbGllbnQ9ZHAtc2Vkbzg1XzNwaCZvdXRwdXQ9dWRzX2Fkc19vbmx5Jnp4PXF4cDN6d2p5d210YSZhcWlkPUR1d2laODJQQzYydTg4RVBrdUt1NkFVJnBidD1idiZhZGJ4PTQ5MCZhZGJ5PTgwNy42MjUmYWRiaD0xNiZhZGJ3PTMwMCZhZGJuPXNsYXZlLTEtMSZlYXdwPXBhcnRuZXItZHAtc2Vkbzg1XzNwaCZlcnJ2PTY4ODE2MDUwNiZjc2FsYT0wJTdDMCU3Qzk2NiU3QzYwMyU3QzEzNyZsbGU9MCZpZnY9MCZocHQ9MCIsICJodHRwVmVyc2lvbiI6ICJIVFRQLzIuMCIsICJjb29raWVzIjogW10sICJoZWFkZXJzIjogW3sibmFtZSI6ICI6YXV0aG9yaXR5IiwgInZhbHVlIjogInN5bmRpY2F0ZWRzZWFyY2guZ29vZyJ9LCB7Im5hbWUiOiAiOm1ldGhvZCIsICJ2YWx1ZSI6ICJHRVQifSwgeyJuYW1lIjogIjpwYXRoIiwgInZhbHVlIjogIi9hZnMvZ2VuXzIwND9jbGllbnQ9ZHAtc2Vkbzg1XzNwaCZvdXRwdXQ9dWRzX2Fkc19vbmx5Jnp4PXF4cDN6d2p5d210YSZhcWlkPUR1d2laODJQQzYydTg4RVBrdUt1NkFVJnBidD1idiZhZGJ4PTQ5MCZhZGJ5PTgwNy42MjUmYWRiaD0xNiZhZGJ3PTMwMCZhZGJuPXNsYXZlLTEtMSZlYXdwPXBhcnRuZXItZHAtc2Vkbzg1XzNwaCZlcnJ2PTY4ODE2MDUwNiZjc2FsYT0wJTdDMCU3Qzk2NiU3QzYwMyU3QzEzNyZsbGU9MCZpZnY9MCZocHQ9MCJ9LCB7Im5hbWUiOiAiOnNjaGVtZSIsICJ2YWx1ZSI6ICJodHRwcyJ9LCB7Im5hbWUiOiAiYWNjZXB0IiwgInZhbHVlIjogImltYWdlL2F2aWYsaW1hZ2Uvd2VicCxpbWFnZS9hcG5nLGltYWdlL3N2Zyt4bWwsaW1hZ2UvKiwqLyo7cT0wLjgifSwgeyJuYW1lIjogImFjY2VwdC1lbmNvZGluZyIsICJ2YWx1ZSI6ICJnemlwLCBkZWZsYXRlLCBiciwgenN0ZCJ9LCB7Im5hbWUiOiAiYWNjZXB0LWxhbmd1YWdlIiwgInZhbHVlIjogImVuLVVTIn0sIHsibmFtZSI6ICJwcmlvcml0eSIsICJ2YWx1ZSI6ICJpIn0sIHsibmFtZSI6ICJyZWZlcmVyIiwgInZhbHVlIjogImh0dHA6Ly9va2F5dGkucGljcy8ifSwgeyJuYW1lIjogInNlYy1jaC11YSIsICJ2YWx1ZSI6ICJcIk5vdD9BX0JyYW5kXCI7dj1cIjk5XCIsIFwiQ2hyb21pdW1cIjt2PVwiMTMwXCIifSwgeyJuYW1lIjogInNlYy1jaC11YS1tb2JpbGUiLCAidmFsdWUiOiAiPzAifSwgeyJuYW1lIjogInNlYy1jaC11YS1wbGF0Zm9ybSIsICJ2YWx1ZSI6ICJcIldpbmRvd3NcIiJ9LCB7Im5hbWUiOiAic2VjLWZldGNoLWRlc3QiLCAidmFsdWUiOiAiaW1hZ2UifSwgeyJuYW1lIjogInNlYy1mZXRjaC1tb2RlIiwgInZhbHVlIjogIm5vLWNvcnMifSwgeyJuYW1lIjogInNlYy1mZXRjaC1zaXRlIiwgInZhbHVlIjogImNyb3NzLXNpdGUifSwgeyJuYW1lIjogInVzZXItYWdlbnQiLCAidmFsdWUiOiAiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzEzMC4wLjY3MjMuMzEgU2FmYXJpLzUzNy4zNiJ9XSwgInF1ZXJ5U3RyaW5nIjogW3sibmFtZSI6ICJjbGllbnQiLCAidmFsdWUiOiAiZHAtc2Vkbzg1XzNwaCJ9LCB7Im5hbWUiOiAib3V0cHV0IiwgInZhbHVlIjogInVkc19hZHNfb25seSJ9LCB7Im5hbWUiOiAiengiLCAidmFsdWUiOiAicXhwM3p3anl3bXRhIn0sIHsibmFtZSI6ICJhcWlkIiwgInZhbHVlIjogIkR1d2laODJQQzYydTg4RVBrdUt1NkFVIn0sIHsibmFtZSI6ICJwYnQiLCAidmFsdWUiOiAiYnYifSwgeyJuYW1lIjogImFkYngiLCAidmFsdWUiOiAiNDkwIn0sIHsibmFtZSI6ICJhZGJ5IiwgInZhbHVlIjogIjgwNy42MjUifSwgeyJuYW1lIjogImFkYmgiLCAidmFsdWUiOiAiMTYifSwgeyJuYW1lIjogImFkYnciLCAidmFsdWUiOiAiMzAwIn0sIHsibmFtZSI6ICJhZGJuIiwgInZhbHVlIjogInNsYXZlLTEtMSJ9LCB7Im5hbWUiOiAiZWF3cCIsICJ2YWx1ZSI6ICJwYXJ0bmVyLWRwLXNlZG84NV8zcGgifSwgeyJuYW1lIjogImVycnYiLCAidmFsdWUiOiAiNjg4MTYwNTA2In0sIHsibmFtZSI6ICJjc2FsYSIsICJ2YWx1ZSI6ICIwfDB8OTY2fDYwM3wxMzcifSwgeyJuYW1lIjogImxsZSIsICJ2YWx1ZSI6ICIwIn0sIHsibmFtZSI6ICJpZnYiLCAidmFsdWUiOiAiMCJ9LCB7Im5hbWUiOiAiaHB0IiwgInZhbHVlIjogIjAifV0sICJoZWFkZXJzU2l6ZSI6IDg0NCwgImJvZHlTaXplIjogMH0sICJyZXNwb25zZSI6IHsic3RhdHVzIjogMjA0LCAic3RhdHVzVGV4dCI6ICIiLCAiaHR0cFZlcnNpb24iOiAiSFRUUC8yLjAiLCAiY29va2llcyI6IFtdLCAiaGVhZGVycyI6IFt7Im5hbWUiOiAiYWx0LXN2YyIsICJ2YWx1ZSI6ICJoMz1cIjo0NDNcIjsgbWE9MjU5MjAwMCxoMy0yOT1cIjo0NDNcIjsgbWE9MjU5MjAwMCJ9LCB7Im5hbWUiOiAiY29udGVudC1sZW5ndGgiLCAidmFsdWUiOiAiMCJ9LCB7Im5hbWUiOiAiY29udGVudC1zZWN1cml0eS1wb2xpY3kiLCAidmFsdWUiOiAib2JqZWN0LXNyYyAnbm9uZSc7YmFzZS11cmkgJ3NlbGYnO3NjcmlwdC1zcmMgJ25vbmNlLUJPWnpMbXU1NmlpSTRFRGJoaTJtWHcnICdzdHJpY3QtZHluYW1pYycgJ3JlcG9ydC1zYW1wbGUnICd1bnNhZmUtZXZhbCcgJ3Vuc2FmZS1pbmxpbmUnIGh0dHBzOiBodHRwOjtyZXBvcnQtdXJpIGh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2NzcC9nd3Mvb3RoZXIifSwgeyJuYW1lIjogImNvbnRlbnQtdHlwZSIsICJ2YWx1ZSI6ICJ0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgifSwgeyJuYW1lIjogImNyb3NzLW9yaWdpbi1vcGVuZXItcG9saWN5IiwgInZhbHVlIjogInNhbWUtb3JpZ2luLWFsbG93LXBvcHVwczsgcmVwb3J0LXRvPVwiZ3dzXCIifSwgeyJuYW1lIjogImRhdGUiLCAidmFsdWUiOiAiVGh1LCAzMSBPY3QgMjAyNCAwMjozMTo1NyBHTVQifSwgeyJuYW1lIjogInBlcm1pc3Npb25zLXBvbGljeSIsICJ2YWx1ZSI6ICJ1bmxvYWQ9KCkifSwgeyJuYW1lIjogInJlcG9ydC10byIsICJ2YWx1ZSI6ICJ7XCJncm91cFwiOlwiZ3dzXCIsXCJtYXhfYWdlXCI6MjU5MjAwMCxcImVuZHBvaW50c1wiOlt7XCJ1cmxcIjpcImh0dHBzOi8vY3NwLndpdGhnb29nbGUuY29tL2NzcC9yZXBvcnQtdG8vZ3dzL290aGVyXCJ9XX0ifSwgeyJuYW1lIjogInNlcnZlciIsICJ2YWx1ZSI6ICJnd3MifSwgeyJuYW1lIjogIngtZnJhbWUtb3B0aW9ucyIsICJ2YWx1ZSI6ICJTQU1FT1JJR0lOIn0sIHsibmFtZSI6ICJ4LXhzcy1wcm90ZWN0aW9uIiwgInZhbHVlIjogIjAifV0sICJjb250ZW50IjogeyJzaXplIjogMCwgIm1pbWVUeXBlIjogInRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIsICJjb21wcmVzc2lvbiI6IDAsICJ0ZXh0IjogIiJ9LCAiaGVhZGVyc1NpemUiOiAwLCAiYm9keVNpemUiOiAyMTEsICJyZWRpcmVjdFVSTCI6ICIiLCAiX3RyYW5zZmVyU2l6ZSI6IDIxMX0sICJjYWNoZSI6IHt9LCAidGltaW5ncyI6IHsiZG5zIjogLTEsICJjb25uZWN0IjogLTEsICJzc2wiOiAtMSwgInNlbmQiOiAwLCAid2FpdCI6IDI3Ni41ODcsICJyZWNlaXZlIjogMi4wNH0sICJwYWdlcmVmIjogInBhZ2VANzA2ODBmYzdjNTM1OTA0ODAxMTFhMzNmYmJkNDRjY2YiLCAic2VydmVySVBBZGRyZXNzIjogIlsyNDA0OjY4MDA6NDAwMzpjMWE6OjhhXSIsICJfc2VydmVyUG9ydCI6IDQ0MywgIl9zZWN1cml0eURldGFpbHMiOiB7InByb3RvY29sIjogIlRMUyAxLjMiLCAic3ViamVjdE5hbWUiOiAic3luZGljYXRlZHNlYXJjaC5nb29nIiwgImlzc3VlciI6ICJXUjIiLCAidmFsaWRGcm9tIjogMTcyODI4OTc0OSwgInZhbGlkVG8iOiAxNzM1NTQ3MzQ4fX1dfX0=","disable_correlation":true,"to_ids":false,"type":"attachment","uuid":"4626f77f-9b89-42dd-a7f7-7c8a8d3755b7","value":"har.json"},{"category":"External analysis","comment":"The rendered page at the end of the capture","data":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZW4iIGRhdGEtYWRibG9ja2tleT0iTUZ3d0RRWUpLb1pJaHZjTkFRRUJCUUFEU3dBd1NBSkJBTm55bFd3MnZMWTRoVW45dzA2elFLYmhLQmZ2akZVQ3NkRmxiNlRkUWh4YjlSWFdYdUk0dDMxYytvOGZZT3YvczhxMUxHUGdhM0RFMUwvdEhVNExFTk1DQXdFQUFRPT1fakdpUFpadkZ4TGhxV1N0bndXQkNOSXIzNkhBK1JmY0ppRDB5UjZDWFVycE9ZNm14UlI1aGRlQldqUE1EMGhYRW5yand0SWNnb0JON3VGalg1eVVzbmc9PSI+PGhlYWQ+PG1ldGEgY2hhcnNldD0idXRmLTgiPjx0aXRsZT5va2F5dGkucGljcyZuYnNwOy0mbmJzcDtSZXNzb3VyY2VzIGV0IGluZm9ybWF0aW9uIGNvbmNlcm5hbnQgb2theXRpIFJlc291cmNlcyBhbmQgSW5mb3JtYXRpb24uPC90aXRsZT48bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLGluaXRpYWwtc2NhbGU9MS4wLG1heGltdW0tc2NhbGU9MS4wLHVzZXItc2NhbGFibGU9MCI+PG1ldGEgbmFtZT0iZGVzY3JpcHRpb24iIGNvbnRlbnQ9Im9rYXl0aS5waWNzIHLDqXVuaXQgZGVzIGluZm9ybWF0aW9ucyBldCBhbm5vbmNlcy4gTm91cyBlc3DDqXJvbnMgcXVlIHZvdXMgeSB0cm91dmVyZXogbGVzIGluZm9ybWF0aW9ucyBxdWUgdm91cyByZWNoZXJjaGV6ICEiPjxsaW5rIHJlbD0iaWNvbiIgdHlwZT0iaW1hZ2UvcG5nIiBocmVmPSIvL2ltZy5zZWRvcGFya2luZy5jb20vdGVtcGxhdGVzL2xvZ29zL3NlZG9fbG9nby5wbmciPjxzdHlsZT4KICAgICAgICAvKiEgbm9ybWFsaXplLmNzcyB2Ny4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovaHRtbHtsaW5lLWhlaWdodDoxLjE1Oy1tcy10ZXh0LXNpemUtYWRqdXN0OjEwMCU7LXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OjEwMCV9Ym9keXttYXJnaW46MH1hcnRpY2xlLGFzaWRlLGZvb3RlcixoZWFkZXIsbmF2LHNlY3Rpb257ZGlzcGxheTpibG9ja31oMXtmb250LXNpemU6MmVtO21hcmdpbjouNjdlbSAwfWZpZ2NhcHRpb24sZmlndXJlLG1haW57ZGlzcGxheTpibG9ja31maWd1cmV7bWFyZ2luOjFlbSA0MHB4fWhye2JveC1zaXppbmc6Y29udGVudC1ib3g7aGVpZ2h0OjA7b3ZlcmZsb3c6dmlzaWJsZX1wcmV7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWF7YmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDstd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOm9iamVjdHN9YWJiclt0aXRsZV17Ym9yZGVyLWJvdHRvbTpub25lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZSBkb3R0ZWR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6aW5oZXJpdH1iLHN0cm9uZ3tmb250LXdlaWdodDpib2xkZXJ9Y29kZSxrYmQsc2FtcHtmb250LWZhbWlseTptb25vc3BhY2UsbW9ub3NwYWNlO2ZvbnQtc2l6ZToxZW19ZGZue2ZvbnQtc3R5bGU6aXRhbGljfW1hcmt7YmFja2dyb3VuZC1jb2xvcjojZmYwO2NvbG9yOiMwMDB9c21hbGx7Zm9udC1zaXplOjgwJX1zdWIsc3Vwe2ZvbnQtc2l6ZTo3NSU7bGluZS1oZWlnaHQ6MDtwb3NpdGlvbjpyZWxhdGl2ZTt2ZXJ0aWNhbC1hbGlnbjpiYXNlbGluZX1zdWJ7Ym90dG9tOi0wLjI1ZW19c3Vwe3RvcDotMC41ZW19YXVkaW8sdmlkZW97ZGlzcGxheTppbmxpbmUtYmxvY2t9YXVkaW86bm90KFtjb250cm9sc10pe2Rpc3BsYXk6bm9uZTtoZWlnaHQ6MH1pbWd7Ym9yZGVyLXN0eWxlOm5vbmV9c3ZnOm5vdCg6cm9vdCl7b3ZlcmZsb3c6aGlkZGVufWJ1dHRvbixpbnB1dCxvcHRncm91cCxzZWxlY3QsdGV4dGFyZWF7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjtmb250LXNpemU6MTAwJTtsaW5lLWhlaWdodDoxLjE1O21hcmdpbjowfWJ1dHRvbixpbnB1dHtvdmVyZmxvdzp2aXNpYmxlfWJ1dHRvbixzZWxlY3R7dGV4dC10cmFuc2Zvcm06bm9uZX1idXR0b24saHRtbCBbdHlwZT1idXR0b25dLFt0eXBlPXJlc2V0XSxbdHlwZT1zdWJtaXRdey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b259YnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPWJ1dHRvbl06Oi1tb3otZm9jdXMtaW5uZXIsW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXJ7Ym9yZGVyLXN0eWxlOm5vbmU7cGFkZGluZzowfWJ1dHRvbjotbW96LWZvY3VzcmluZyxbdHlwZT1idXR0b25dOi1tb3otZm9jdXNyaW5nLFt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxbdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5ne291dGxpbmU6MXB4IGRvdHRlZCBCdXR0b25UZXh0fWZpZWxkc2V0e3BhZGRpbmc6LjM1ZW0gLjc1ZW0gLjYyNWVtfWxlZ2VuZHtib3gtc2l6aW5nOmJvcmRlci1ib3g7Y29sb3I6aW5oZXJpdDtkaXNwbGF5OnRhYmxlO21heC13aWR0aDoxMDAlO3BhZGRpbmc6MDt3aGl0ZS1zcGFjZTpub3JtYWx9cHJvZ3Jlc3N7ZGlzcGxheTppbmxpbmUtYmxvY2s7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9dGV4dGFyZWF7b3ZlcmZsb3c6YXV0b31bdHlwZT1jaGVja2JveF0sW3R5cGU9cmFkaW9de2JveC1zaXppbmc6Ym9yZGVyLWJveDtwYWRkaW5nOjB9W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9ue2hlaWdodDphdXRvfVt0eXBlPXNlYXJjaF17LXdlYmtpdC1hcHBlYXJhbmNlOnRleHRmaWVsZDtvdXRsaW5lLW9mZnNldDotMnB4fVt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbnstd2Via2l0LWFwcGVhcmFuY2U6bm9uZX06Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uey13ZWJraXQtYXBwZWFyYW5jZTpidXR0b247Zm9udDppbmhlcml0fWRldGFpbHMsbWVudXtkaXNwbGF5OmJsb2NrfXN1bW1hcnl7ZGlzcGxheTpsaXN0LWl0ZW19Y2FudmFze2Rpc3BsYXk6aW5saW5lLWJsb2NrfXRlbXBsYXRle2Rpc3BsYXk6bm9uZX1baGlkZGVuXXtkaXNwbGF5Om5vbmV9LmFubm91bmNlbWVudHtiYWNrZ3JvdW5kOiMwZTE2MmU7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzowIDVweH0uYW5ub3VuY2VtZW50IHB7Y29sb3I6Izg0ODQ4NH0uYW5ub3VuY2VtZW50IGF7Y29sb3I6Izg0ODQ4NH0uY29udGFpbmVyLWhlYWRlcnttYXJnaW46MCBhdXRvIDAgYXV0bzt0ZXh0LWFsaWduOmNlbnRlcn0uY29udGFpbmVyLWhlYWRlcl9fY29udGVudHtjb2xvcjojODQ4NDg0fS5jb250YWluZXItYnV5Ym94e3RleHQtYWxpZ246Y2VudGVyfS5jb250YWluZXItYnV5Ym94X19jb250ZW50LWJ1eWJveHtkaXNwbGF5OmlubGluZS1ibG9jazt0ZXh0LWFsaWduOmxlZnR9LmNvbnRhaW5lci1idXlib3hfX2NvbnRlbnQtaGVhZGluZ3tmb250LXNpemU6MTVweH0uY29udGFpbmVyLWJ1eWJveF9fY29udGVudC10ZXh0e2ZvbnQtc2l6ZToxMnB4fS5jb250YWluZXItYnV5Ym94X19jb250ZW50LWxpbmt7Y29sb3I6Izk0OTQ5NH0uY29udGFpbmVyLWJ1eWJveF9fY29udGVudC1saW5rLS1uby1kZWNvcmF0aW9ue3RleHQtZGVjb3JhdGlvbjpub25lfS5jb250YWluZXItc2VhcmNoYm94e21hcmdpbi1ib3R0b206NTBweDt0ZXh0LWFsaWduOmNlbnRlcn0uY29udGFpbmVyLXNlYXJjaGJveF9fY29udGVudHtkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTphcmlhbCxzYW5zLXNlcmlmO2ZvbnQtc2l6ZToxMnB4fS5jb250YWluZXItc2VhcmNoYm94X19zZWFyY2h0ZXh0LWxhYmVse2Rpc3BsYXk6bm9uZX0uY29udGFpbmVyLXNlYXJjaGJveF9faW5wdXQsLmNvbnRhaW5lci1zZWFyY2hib3hfX2J1dHRvbntib3JkZXI6MCBub25lfS5jb250YWluZXItc2VhcmNoYm94X19idXR0b257Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjEycHg7bWFyZ2luLWxlZnQ6MTVweDtib3JkZXI6MCBub25lO3BhZGRpbmc6MnB4IDhweDtjb2xvcjojNjM4Mjk2fS5jb250YWluZXItZGlzY2xhaW1lcnt0ZXh0LWFsaWduOmNlbnRlcn0uY29udGFpbmVyLWRpc2NsYWltZXJfX2NvbnRlbnR7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmNvbnRhaW5lci1kaXNjbGFpbWVyX19jb250ZW50LXRleHQsLmNvbnRhaW5lci1kaXNjbGFpbWVyIGF7Zm9udC1zaXplOjEwcHh9LmNvbnRhaW5lci1kaXNjbGFpbWVyX19jb250ZW50LXRleHR7Y29sb3I6Izk0OTQ5NH0uY29udGFpbmVyLWRpc2NsYWltZXIgYXtjb2xvcjojOTQ5NDk0fS5jb250YWluZXItaW1wcmludHt0ZXh0LWFsaWduOmNlbnRlcn0uY29udGFpbmVyLWltcHJpbnRfX2NvbnRlbnR7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmNvbnRhaW5lci1pbXByaW50X19jb250ZW50LXRleHQsLmNvbnRhaW5lci1pbXByaW50X19jb250ZW50LWxpbmt7Zm9udC1zaXplOjEwcHg7Y29sb3I6Izk0OTQ5NH0uY29udGFpbmVyLWNvbnRhY3QtdXN7dGV4dC1hbGlnbjpjZW50ZXJ9LmNvbnRhaW5lci1jb250YWN0LXVzX19jb250ZW50e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5jb250YWluZXItY29udGFjdC11c19fY29udGVudC10ZXh0LC5jb250YWluZXItY29udGFjdC11c19fY29udGVudC1saW5re2ZvbnQtc2l6ZToxMHB4O2NvbG9yOiM5NDk0OTR9LmNvbnRhaW5lci1wcml2YWN5UG9saWN5e3RleHQtYWxpZ246Y2VudGVyfS5jb250YWluZXItcHJpdmFjeVBvbGljeV9fY29udGVudHtkaXNwbGF5OmlubGluZS1ibG9ja30uY29udGFpbmVyLXByaXZhY3lQb2xpY3lfX2NvbnRlbnQtbGlua3tmb250LXNpemU6MTBweDtjb2xvcjojOTQ5NDk0fS5jb250YWluZXItY29va2llLW1lc3NhZ2V7cG9zaXRpb246Zml4ZWQ7Ym90dG9tOjA7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOiM1ZjVmNWY7Zm9udC1zaXplOjEycHg7cGFkZGluZy10b3A6MTVweDtwYWRkaW5nLWJvdHRvbToxNXB4fS5jb250YWluZXItY29va2llLW1lc3NhZ2VfX2NvbnRlbnQtdGV4dHtjb2xvcjojZmZmfS5jb250YWluZXItY29va2llLW1lc3NhZ2VfX2NvbnRlbnQtdGV4dHttYXJnaW4tbGVmdDoxNSU7bWFyZ2luLXJpZ2h0OjE1JX0uY29udGFpbmVyLWNvb2tpZS1tZXNzYWdlX19jb250ZW50LWludGVyYWN0aXZle3RleHQtYWxpZ246bGVmdDttYXJnaW46MCAxNXB4O2ZvbnQtc2l6ZToxMHB4fS5jb250YWluZXItY29va2llLW1lc3NhZ2VfX2NvbnRlbnQtaW50ZXJhY3RpdmUtaGVhZGVyLC5jb250YWluZXItY29va2llLW1lc3NhZ2VfX2NvbnRlbnQtaW50ZXJhY3RpdmUtdGV4dHtjb2xvcjojZmZmfS5jb250YWluZXItY29va2llLW1lc3NhZ2VfX2NvbnRlbnQtaW50ZXJhY3RpdmUtaGVhZGVye2ZvbnQtc2l6ZTpzbWFsbH0uY29udGFpbmVyLWNvb2tpZS1tZXNzYWdlX19jb250ZW50LWludGVyYWN0aXZlLXRleHR7bWFyZ2luLXRvcDoxMHB4O21hcmdpbi1yaWdodDowcHg7bWFyZ2luLWJvdHRvbTo1cHg7bWFyZ2luLWxlZnQ6MHB4O2ZvbnQtc2l6ZTpsYXJnZXJ9LmNvbnRhaW5lci1jb29raWUtbWVzc2FnZSBhe2NvbG9yOiNmZmZ9LmNvb2tpZS1tb2RhbC13aW5kb3d7cG9zaXRpb246Zml4ZWQ7YmFja2dyb3VuZC1jb2xvcjpyZ2JhKDIwMCwyMDAsMjAwLC43NSk7dG9wOjA7cmlnaHQ6MDtib3R0b206MDtsZWZ0OjA7LXdlYmtpdC10cmFuc2l0aW9uOmFsbCAuM3M7LW1vei10cmFuc2l0aW9uOmFsbCAuM3M7dHJhbnNpdGlvbjphbGwgLjNzO3RleHQtYWxpZ246Y2VudGVyfS5jb29raWUtbW9kYWwtd2luZG93X19jb250ZW50LWhlYWRlcntmb250LXNpemU6MTUwJTttYXJnaW46MCAwIDE1cHh9LmNvb2tpZS1tb2RhbC13aW5kb3dfX2NvbnRlbnR7dGV4dC1hbGlnbjppbml0aWFsO21hcmdpbjoxMCUgYXV0bztwYWRkaW5nOjQwcHg7YmFja2dyb3VuZDojZmZmO2Rpc3BsYXk6aW5saW5lLWJsb2NrO21heC13aWR0aDo1NTBweH0uY29va2llLW1vZGFsLXdpbmRvd19fY29udGVudC10ZXh0e2xpbmUtaGVpZ2h0OjEuNWVtfS5jb29raWUtbW9kYWwtd2luZG93X19jbG9zZXt3aWR0aDoxMDAlO21hcmdpbjowfS5jb29raWUtbW9kYWwtd2luZG93X19jb250ZW50LWJvZHkgdGFibGV7d2lkdGg6MTAwJTtib3JkZXItY29sbGFwc2U6Y29sbGFwc2V9LmNvb2tpZS1tb2RhbC13aW5kb3dfX2NvbnRlbnQtYm9keSB0YWJsZSB0ZHtwYWRkaW5nLWxlZnQ6MTVweH0uY29va2llLW1vZGFsLXdpbmRvd19fY29udGVudC1uZWNlc3NhcnktY29va2llcy1yb3d7YmFja2dyb3VuZC1jb2xvcjojZGVlMWUzfS5kaXNhYmxlZHtkaXNwbGF5Om5vbmU7ei1pbmRleDotOTk5fS5idG57ZGlzcGxheTppbmxpbmUtYmxvY2s7Ym9yZGVyLXN0eWxlOnNvbGlkO2JvcmRlci1yYWRpdXM6NXB4O3BhZGRpbmc6MTVweCAyNXB4O3RleHQtYWxpZ246Y2VudGVyO3RleHQtZGVjb3JhdGlvbjpub25lO2N1cnNvcjpwb2ludGVyO21hcmdpbjo1cHg7dHJhbnNpdGlvbjouM3N9LmJ0bi0tc3VjY2Vzc3tiYWNrZ3JvdW5kLWNvbG9yOiMyMTg4Mzg7Ym9yZGVyLWNvbG9yOiMyMTg4Mzg7Y29sb3I6I2ZmZjtmb250LXNpemU6eC1sYXJnZX0uYnRuLS1zdWNjZXNzOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzFhNmIyYztib3JkZXItY29sb3I6IzFhNmIyYztjb2xvcjojZmZmO2ZvbnQtc2l6ZTp4LWxhcmdlfS5idG4tLXN1Y2Nlc3Mtc217YmFja2dyb3VuZC1jb2xvcjojMjE4ODM4O2JvcmRlci1jb2xvcjojMjE4ODM4O2NvbG9yOiNmZmY7Zm9udC1zaXplOmluaXRpYWx9LmJ0bi0tc3VjY2Vzcy1zbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMxYTZiMmM7Ym9yZGVyLWNvbG9yOiMxYTZiMmM7Y29sb3I6I2ZmZjtmb250LXNpemU6aW5pdGlhbH0uYnRuLS1zZWNvbmRhcnl7YmFja2dyb3VuZC1jb2xvcjojOGM5NTljO2JvcmRlci1jb2xvcjojOGM5NTljO2NvbG9yOiNmZmY7Zm9udC1zaXplOm1lZGl1bX0uYnRuLS1zZWNvbmRhcnk6aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojNzI3YzgzO2JvcmRlci1jb2xvcjojNzI3YzgzO2NvbG9yOiNmZmY7Zm9udC1zaXplOm1lZGl1bX0uYnRuLS1zZWNvbmRhcnktc217YmFja2dyb3VuZC1jb2xvcjojOGM5NTljO2JvcmRlci1jb2xvcjojOGM5NTljO2NvbG9yOiNmZmY7Zm9udC1zaXplOmluaXRpYWx9LmJ0bi0tc2Vjb25kYXJ5LXNtOmhvdmVye2JhY2tncm91bmQtY29sb3I6IzcyN2M4Mztib3JkZXItY29sb3I6IzcyN2M4Mztjb2xvcjojZmZmO2ZvbnQtc2l6ZTppbml0aWFsfS5zd2l0Y2ggaW5wdXR7b3BhY2l0eTowO3dpZHRoOjA7aGVpZ2h0OjB9LnN3aXRjaHtwb3NpdGlvbjpyZWxhdGl2ZTtkaXNwbGF5OmlubGluZS1ibG9jazt3aWR0aDo2MHB4O2hlaWdodDozNHB4fS5zd2l0Y2hfX3NsaWRlcntwb3NpdGlvbjphYnNvbHV0ZTtjdXJzb3I6cG9pbnRlcjt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtib3R0b206MDtiYWNrZ3JvdW5kLWNvbG9yOiM1YTYyNjg7LXdlYmtpdC10cmFuc2l0aW9uOi40czt0cmFuc2l0aW9uOi40c30uc3dpdGNoX19zbGlkZXI6YmVmb3Jle3Bvc2l0aW9uOmFic29sdXRlO2NvbnRlbnQ6IiI7aGVpZ2h0OjI2cHg7d2lkdGg6MjZweDtsZWZ0OjRweDtib3R0b206NHB4O2JhY2tncm91bmQtY29sb3I6I2ZmZjstd2Via2l0LXRyYW5zaXRpb246LjRzO3RyYW5zaXRpb246LjRzfS5zd2l0Y2hfX3NsaWRlci0tcm91bmR7Ym9yZGVyLXJhZGl1czozNHB4fS5zd2l0Y2hfX3NsaWRlci0tcm91bmQ6YmVmb3Jle2JvcmRlci1yYWRpdXM6NTAlfWlucHV0OmNoZWNrZWQrLnN3aXRjaF9fc2xpZGVye2JhY2tncm91bmQtY29sb3I6IzAwN2JmZn1pbnB1dDpmb2N1cysuc3dpdGNoX19zbGlkZXJ7Ym94LXNoYWRvdzowIDAgMXB4ICMwMDdiZmZ9aW5wdXQ6Y2hlY2tlZCsuc3dpdGNoX19zbGlkZXI6YmVmb3Jley13ZWJraXQtdHJhbnNmb3JtOnRyYW5zbGF0ZVgoMjZweCk7LW1zLXRyYW5zZm9ybTp0cmFuc2xhdGVYKDI2cHgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDI2cHgpfWJvZHl7YmFja2dyb3VuZC1jb2xvcjojMGUxNjJlO2ZvbnQtZmFtaWx5OkFyaWFsLEhlbHZldGljYSxWZXJkYW5hLCJMdWNpZGEgR3JhbmRlIixzYW5zLXNlcmlmfWJvZHkuY29va2llLW1lc3NhZ2UtZW5hYmxlZHtwYWRkaW5nLWJvdHRvbTozMDBweH0uY29udGFpbmVyLWZvb3RlcntwYWRkaW5nLXRvcDoyMHB4O3BhZGRpbmctbGVmdDo1JTtwYWRkaW5nLXJpZ2h0OjUlO3BhZGRpbmctYm90dG9tOjEwcHh9LmNvbnRhaW5lci1jb250ZW50e3RleHQtYWxpZ246Y2VudGVyO2Rpc3BsYXk6ZmxleDtwb3NpdGlvbjpyZWxhdGl2ZTttYXgtd2lkdGg6MTcwMHB4O21hcmdpbjowIGF1dG8gIWltcG9ydGFudH0uY29udGFpbmVyLWNvbnRlbnRfX2NvbnRhaW5lci1yZWxhdGVkbGlua3MsLmNvbnRhaW5lci1jb250ZW50X19jb250YWluZXItYWRzLC5jb250YWluZXItY29udGVudF9fd2ViYXJjaGl2ZXt3aWR0aDozMCU7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmNvbnRhaW5lci1jb250ZW50X19jb250YWluZXItcmVsYXRlZGxpbmtze21hcmdpbi10b3A6NDdweDtmbGV4LWdyb3c6MTt3aWR0aDo2MHB4fS5jb250YWluZXItY29udGVudF9fY29udGFpbmVyLWFkc3ttYXJnaW4tdG9wOjIuNSV9LmNvbnRhaW5lci1jb250ZW50X19jb250YWluZXItYWRzLS10d290e21hcmdpbi10b3A6Ni41JX0uY29udGFpbmVyLWNvbnRlbnRfX3dlYmFyY2hpdmV7bWFyZ2luLXRvcDo0LjUlfS5jb250YWluZXItY29udGVudF9faGVhZGVye2NvbG9yOiM4NDg0ODQ7Zm9udC1zaXplOjE1cHg7bWFyZ2luOjB9LmNvbnRhaW5lci1jb250ZW50X19sZWZ0e2JhY2tncm91bmQ6dXJsKCIvL2ltZy5zZWRvcGFya2luZy5jb20vdGVtcGxhdGVzL2JnL2Fycm93cy5wbmciKSAjMGUxNjJlIG5vLXJlcGVhdCB0b3AgbGVmdDtiYWNrZ3JvdW5kLXNpemU6OTQlIDY0MHB4O2ZsZXgtZ3JvdzoxO3Bvc2l0aW9uOmluaGVyaXQ7dG9wOjkwcHg7b3ZlcmZsb3c6aGlkZGVuO3otaW5kZXg6LTF9LmNvbnRhaW5lci1jb250ZW50X19yaWdodHtiYWNrZ3JvdW5kOnVybCgiLy9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9iZy9hcnJvd3MucG5nIikgIzBlMTYyZSBuby1yZXBlYXQgdG9wIGxlZnQ7YmFja2dyb3VuZC1zaXplOjk0JSA2NDBweDtmbGV4LWdyb3c6MTtwb3NpdGlvbjppbmhlcml0O3RvcDo5MHB4O292ZXJmbG93OmhpZGRlbjstbW96LXRyYW5zZm9ybTpzY2FsZVgoLTEpOy1vLXRyYW5zZm9ybTpzY2FsZVgoLTEpOy13ZWJraXQtdHJhbnNmb3JtOnNjYWxlWCgtMSk7dHJhbnNmb3JtOnNjYWxlWCgtMSk7ei1pbmRleDotMX0uY29udGFpbmVyLWNvbnRlbnQtLWxwe21pbi1oZWlnaHQ6NzIwcHh9LmNvbnRhaW5lci1jb250ZW50LS1ycHt3aWR0aDoxMDAlO21pbi1oZWlnaHQ6ODIwcHg7bWFyZ2luOjB9LmNvbnRhaW5lci1jb250ZW50LS10d290e21pbi1oZWlnaHQ6NzIwcHh9LmNvbnRhaW5lci1jb250ZW50LS10d290IC5jb250YWluZXItY29udGVudF9fY29udGFpbmVyLWFkcy0tdHdvdHttYXJnaW46MH0udHdvLXRpZXItYWRzLWxpc3R7cGFkZGluZzowIDAgMS42ZW0gMH0udHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudHtsaXN0LXN0eWxlOm5vbmU7cGFkZGluZzoxMHB4IDAgNXB4IDA7ZGlzcGxheTppbmxpbmUtYmxvY2t9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtaW1hZ2V7Y29udGVudDp1cmwoIi8vaW1nLnNlZG9wYXJraW5nLmNvbS90ZW1wbGF0ZXMvaW1hZ2VzL2J1bGxldF9qdXN0YWRzLmdpZiIpO2Zsb2F0OmxlZnQ7cGFkZGluZy10b3A6MzJweH0udHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1jb250ZW50e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LWhlYWRlci1saW5re2ZvbnQtc2l6ZTozN3B4O2ZvbnQtd2VpZ2h0OmJvbGQ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTtjb2xvcjojOWZkODAxfS50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LXRleHR7cGFkZGluZzozcHggMCA2cHggMDttYXJnaW46LjExZW0gMDtsaW5lLWhlaWdodDoxOHB4O2NvbG9yOiNmZmZ9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGlua3tmb250LXNpemU6MWVtO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Y29sb3I6IzlmZDgwMX0udHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1saW5rOmxpbmssLnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGluazp2aXNpdGVke3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGluazpob3ZlciwudHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1saW5rOmFjdGl2ZSwudHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1saW5rOmZvY3Vze3RleHQtZGVjb3JhdGlvbjpub25lfS53ZWJhcmNoaXZlLWJsb2Nre3RleHQtYWxpZ246Y2VudGVyfS53ZWJhcmNoaXZlLWJsb2NrX19oZWFkZXItbGlua3tjb2xvcjojOWZkODAxO2ZvbnQtc2l6ZToyMHB4fS53ZWJhcmNoaXZlLWJsb2NrX19saXN0e3BhZGRpbmc6MH0ud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50e3dvcmQtd3JhcDpicmVhay13b3JkO2xpc3Qtc3R5bGU6bm9uZX0ud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50LWxpbmt7bGluZS1oZWlnaHQ6MzBweDtmb250LXNpemU6MjBweDtjb2xvcjojOWZkODAxfS53ZWJhcmNoaXZlLWJsb2NrX19saXN0LWVsZW1lbnQtbGluazpsaW5rLC53ZWJhcmNoaXZlLWJsb2NrX19saXN0LWVsZW1lbnQtbGluazp2aXNpdGVke3RleHQtZGVjb3JhdGlvbjpub25lfS53ZWJhcmNoaXZlLWJsb2NrX19saXN0LWVsZW1lbnQtbGluazpob3Zlciwud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50LWxpbms6YWN0aXZlLC53ZWJhcmNoaXZlLWJsb2NrX19saXN0LWVsZW1lbnQtbGluazpmb2N1c3t0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfWJvZHl7bWFyZ2luOjB9LmRvbWFpbiBoMXtmb250LXNpemU6Mi4yZW07Zm9udC13ZWlnaHQ6bm9ybWFsO3RleHQtZGVjb3JhdGlvbjpub25lO3RleHQtdHJhbnNmb3JtOmxvd2VyY2FzZTtjb2xvcjojOTQ5NDk0fSNjb250YWluZXItZG9tYWlue2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpjZW50ZXJ9Lm5hbWUtc2lsby1jb250YWluZXJ7bWF4LXdpZHRoOjEwMjhweDttYXJnaW46YXV0b30ubmFtZS1zaWxvLWJhbm5lcntkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg1LCAxZnIpO2dyaWQtdGVtcGxhdGUtcm93czoxZnI7Z3JpZC1jb2x1bW4tZ2FwOjBweDtncmlkLXJvdy1nYXA6MHB4O2JhY2tncm91bmQ6I2ZmZjt0ZXh0LWFsaWduOmxlZnQ7cGFkZGluZzoxMHB4O2NvbG9yOiM5NDk0OTQ7Zm9udC1zaXplOi45ZW19Lm5hbWUtc2lsby1iYW5uZXIgYXtjb2xvcjojOTQ5NDk0fS5yaWdodC1jb250YWluZXJ7Z3JpZC1hcmVhOjEvMi8yLzZ9LmxlZnQtY29udGFpbmVye2JhY2tncm91bmQtaW1hZ2U6dXJsKCJodHRwczovL2ltZy5zZWRvcGFya2luZy5jb20vdGVtcGxhdGVzL2JnL05hbWVTaWxvTG9nby5wbmciKTtiYWNrZ3JvdW5kLXNpemU6OXZ3O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDttYXJnaW4tcmlnaHQ6MTBweDtncmlkLWFyZWE6MS8xLzIvMn0KCiAgICA8L3N0eWxlPjxzY3JpcHQgc3JjPSJodHRwczovL3BhcnRuZXIuZ29vZ2xlYWRzZXJ2aWNlcy5jb20vZ2FtcGFkL2Nvb2tpZS5qcz9kb21haW49b2theXRpLnBpY3MmYW1wO2NsaWVudD1kcC1zZWRvODVfM3BoJmFtcDtwcm9kdWN0PVNBUyZhbXA7Y2FsbGJhY2s9X19zYXNDb29raWUmYW1wO2Nvb2tpZV90eXBlcz12MSUyQ3YyIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgdmFyIGR0byA9IHsidWlPcHRpbWl6ZSI6ZmFsc2UsInNpbmdsZURvbWFpbk5hbWUiOiJva2F5dGkucGljcyIsImRvbWFpbk5hbWUiOiJva2F5dGkucGljcyIsImRvbWFpblByaWNlIjowLCJkb21haW5DdXJyZW5jeSI6IiIsImFkdWx0RmxhZyI6ZmFsc2UsInB1IjoiLy9va2F5dGkucGljcyIsImRuc2giOnRydWUsImRwc2giOmZhbHNlLCJ0b1NlbGwiOmZhbHNlLCJjZG5Ib3N0IjoiaW1nLnNlZG9wYXJraW5nLmNvbSIsImFkYmxvY2trZXkiOiIgZGF0YS1hZGJsb2Nra2V5PU1Gd3dEUVlKS29aSWh2Y05BUUVCQlFBRFN3QXdTQUpCQU5ueWxXdzJ2TFk0aFVuOXcwNnpRS2JoS0JmdmpGVUNzZEZsYjZUZFFoeGI5UlhXWHVJNHQzMWMrbzhmWU92L3M4cTFMR1BnYTNERTFML3RIVTRMRU5NQ0F3RUFBUT09X2pHaVBaWnZGeExocVdTdG53V0JDTklyMzZIQStSZmNKaUQweVI2Q1hVcnBPWTZteFJSNWhkZUJXalBNRDBoWEVucmp3dEljZ29CTjd1RmpYNXlVc25nPT0iLCJ0aWQiOjMxODAsImJ1eWJveCI6ZmFsc2UsImJ1eWJveFRvcGljIjp0cnVlLCJkaXNjbGFpbWVyIjp0cnVlLCJpbXByaW50IjpmYWxzZSwic2VhcmNoYm94Ijp0cnVlLCJub0ZvbGxvdyI6ZmFsc2UsInNsc2giOmZhbHNlLCJwcHNoIjp0cnVlLCJkbmhsc2giOnRydWUsInRvU2VsbFVybCI6IiIsInRvU2VsbFRleHQiOiIiLCJzZWFyY2hib3hQYXRoIjoiLy9va2F5dGkucGljcy9wYXJraW5nLnBocCIsInNlYXJjaFBhcmFtcyI6eyJzZXMiOiJZM0psUFRFM016QXpOREU1TURBbWRHTnBaRDF2YTJGNWRHa3VjR2xqY3pZM01qSmxZekJqTVRFeU9EVTNMalV3TnpVeU1EYzFKblJoYzJzOWMyVmhjbU5vSm1SdmJXRnBiajF2YTJGNWRHa3VjR2xqY3laaFgybGtQVEVtYzJWemMybHZiajFSVkVOVGRYTkpWRGxqTVZWU2FreGFVRlF5YWlaMGNtRmphM0YxWlhKNVBURT0ifSwiaW1wcmludFVybCI6ZmFsc2UsImNvbnRhY3RVc1VybCI6ZmFsc2UsImNvbnRlbnRUeXBlIjo1LCJ0IjoiY29udGVudCIsInB1cyI6InNlcz1ZM0psUFRFM016QXpOREU1TURBbWRHTnBaRDF2YTJGNWRHa3VjR2xqY3pZM01qSmxZekJqTVRFeU9EVTNMalV3TnpVeU1EYzFKblJoYzJzOWMyVmhjbU5vSm1SdmJXRnBiajF2YTJGNWRHa3VjR2xqY3laaFgybGtQVE1tYzJWemMybHZiajFSVkVOVGRYTkpWRGxqTVZWU2FreGFVRlF5YWc9PSIsInBvc3RBY3Rpb25QYXJhbWV0ZXIiOnsiZmVlZGJhY2siOiIvc2VhcmNoL2ZiLnBocD9zZXM9IiwidG9rZW4iOnsicGFnZUxvYWRlZCI6IjA2NWFkNjQxNjc4OGIyNDgwMTczMDM0MTkwMGQ2OTJmODE0NmIxNTg4MCJ9fSwiZ0ZlZWRTRVMiOnsiZGVmYXVsdCI6Im9nY200cVktc3Mwc3RncGc4OXhjczlHMmhpVURTOVpLZlJ3OTlkQ3pvdzNwSDZndGs2WkVZR3Y1c0dQSDBXNlc0N0dTbVpFUXQ4RGV0S2Y1cV9Nb0JabjVfWlJUZV9yUlNWYXhLaktXRGFBcWJYbGlRTGhXQjNwTmdZUk9RZ2FLRjFlWHRWN3dZd0hTZS1XRzNFWlo5VW1VS2FVd25ITzZSX1NWeTlpOGY2N3FvT0tQTGFSWkJRNXoySDdZc29pSnRHR1VaTlBzYjFIaDNFVkVKTUwxVi1MUm80WWZuOE9zbDdjSkNfcmMxY2JMai1rMEtickNmSkROQ3JpT2ZJcHk0STFSVEg0SkUyckp3UFRDbldGYnhiZ1h2OFNPY2MyX2l4SlEyN3dzT0NrQU1xemNIM2JpYWc4aVpkUFZzVklJSExBYkdoaVNDWVNDLVR4NFRzTWhTOVl0allyTlpxdVZDOWRFU2Y3N0xLTHdsMmdsRk9paW4yekw5ZWpIaFA2LWhyQnJjRFRieFhtOVUwejEteFRGdDYzaEwtRko1bnE2TFh1OHRiM1JfQ3c0T0lkdmJIMVZHbElNSHlUYjRrOWhseGhxb3VIOGo1M01QTHlvdjNQdFNoc1l4X3h2eVZ4eDVxM1hXWVRVNkI3dFZ3TExzNzd0UFVrS2gycFRidXQzMTVOUzdrMFJZNDhzNzh1Vi14QXVGcWlYNUZWVUhObFBWeEZlTHNyUGxfU2pPUS1PWGlmalAzLVpJWjVtLVRnWTdFT0Jqam4tZVhRVGVVUEJ2TlprdlRqZERnUDZXNnlsdjh2ZFFmblJWMXUzQW53dDFLRW43TSIsImFsdGVybmF0ZSI6IiJ9LCJ2aXNpdG9yVmlld0lkSnNBZHMiOiJNREUwTW1SaVpHUmpPRFUxTUdVNU5EWmxNRFU0WXpSbE1tWTRZemxpWVRRSk1RbHZhMkY1ZEdrdWNHbGpjelkzTWpKbFl6QmpNVEV5T0RVM0xqVXdOelV5TURjMUNXOXJZWGwwYVM1d2FXTnpOamN5TW1Wak1HTXhNVEppTlRjdU1EUXdNVFExTlRrSk1UY3pNRE0wTVRrd01Ba3ciLCJqc1BhcmFtZXRlciI6eyJyZXF1ZXN0Ijp7InB1YklkIjoiZHAtc2Vkbzg1XzNwaCIsImRvbWFpblJlZ2lzdHJhbnQiOiJhcy1kcmlkLTIyNDkzMDExNzU4NDQ3MzMiLCJrdyI6IiIsImFkdGVzdCI6Im9mZiIsImFkc2FmZSI6ImxvdyIsInVpT3B0aW1pemUiOiJ0cnVlIiwiaGwiOiJmciIsIm5vQWRzIjo1LCJpdnQiOmZhbHNlLCJjaGFubmVsIjoiZXhwLTAwNTEsYXV4YS1jb250cm9sLTEsMzU5NjE1MTkifX0sImFkcyI6W10sImFkdiI6MSwiYWR2dCI6MSwicmxzIjpbXSwibnVtYmVyUmVsYXRlZExpbmtzIjozLCJ3YVVybCI6Ii9zZWFyY2gvcG9ydGFsLnBocD9sPW9nY200cVktc3Mwc3RncGc4OXhjczlHMmhpVURTOVpLZlJ3OTlkQ3pvdzNwSDZndGs2WkVZR3Y1c0dQSDBXNlc0N0dTbVpFUXQ4RGV0S2Y1cV9Nb0JabjVfWlJUZV9yUlNWYXhLaktXRGFBcWJYbGlRTGhXQjNwTmdZUk9RZ2FLRjFlWHRWN3dZd0hTZS1XRzNFWlo5VW1VS2FVd25ITzZSX1NWeTlpOGY2N3FvT0tQTGFSWkJRNXoySDdZc29pSnRHR1VaTlBzYjFIaDNFVkVKTUwxVi1MUm80WWZuOE9zbDdjSkNfcmMxY2JMai1rMEtickNmSkROQ3JpT2ZJcHk0STFSVEg0SkUyckp3UFRDbldGYnhiZ1h2OFNPY2MyX2l4SlEyN3dzT0NrQU1xemNIM2JpYWc4aVpkUFZzVklJSExBYkdoaVNDWVNDLVR4NFRzTWhTOVl0allyTlpxdVZDOWRFU2Y3N0xLTHdsMmdsRk9paW4yekw5ZWpIaFA2LWhyQnJjRFRieFhtOVUwejEteFRGdDYzaEwtRko1bnE2TFh1OHRiM1JfQ3c0T0lkdmJIMVZHbElNSHlUYjRrOWhseGhxb3VIOGo1M01QTHlvdjNQdFNoc1l4X3h2eVZ4eDVxM1hXWVRVNkI3dFZ3TExzNzd0UFVrS2gycFRidXQzMTVOUzdrMFJZNDhzNzh1Vi14QXVGcWlYNUZWVUhObFBWeEZlTHNyUGxfU2pPUS1PWGlmalAzLVpJWjVtLVRnWTdFT0Jqam4tZVhRVGVVUEJ2TlprdlRqZERnUDZXNnlsdjh2ZFFmblJWMXUzQW53dDFLRW43TSIsInRzYyI6dHJ1ZSwidHNjUXMiOiJzZXM9b2djLTlqdlNyYU5nczJRcFBUTC1aVXpWdnIxVlJsZ3Q1NmN1R3V5b3I3ZDN4QTdnSGlOeXpyU05pamFRRU9WclBDcVF5cXFkMWw5WTQwc1h0U09NcWFqV0JtUFZ6OTdKSl8zOTY0OXYxM2lMWi11MExSYWR5MjJiRTM0MFg5a2x2UnRSd0JVUWhZMW4yNTRvelBKTE56enBiQW1odVBXQ25JOFZ3T2hHNF9CRzZMS0xLZEhGXzNKNUtGZ3ZTTS03eVhkV2JCWmwwZHR4b3ZETHFvU1JaSzNENFRvTlBTT0M1YXhVZUJOLVhkV2lBOVJOZjJkcGkxMkFmTFI1b2dvY1pkRDRCOWtueS11dTIwcm5qNThJVGtsYVhrRjFlVVZvYTMxOEN5ajNuS3BGZU9SOUxIV1h1UHVvQnFKVVpGcUJRcmRCaFplVVRWMHo2a2t6NEx1MTRaTWtUeFh5MVdmUkp4S2kyT3o0VzRPbkNzRDV6TzFLWEpsNDB1bVZfRSZjdj0yIiwibGFuZyI6ImZyIiwibWFpZCI6MTIsInNlZG9QYXJraW5nVXJsIjoiaHR0cHM6Ly93d3cuc2Vkby5jb20vc2VydmljZXMvcGFya2luZy5waHAzIiwiZGJnIjpmYWxzZSwic2lnbmVkTGluayI6ImwiLCJ2aXNpdG9yVmlld0lkIjoidiIsInJlZ2lzdHJhcl9wYXJhbXMiOltdLCJjbGlja1RyYWNrIjpbXSwiY29va2llTWVzc2FnZSI6ZmFsc2UsImNvb2tpZU1lc3NhZ2VJbnRlcmFjdGl2ZSI6ZmFsc2UsImV4ZWN1dGVUcmFja2luZ1BpeGVscyI6ZmFsc2UsImNtcEJhbm5lciI6ZmFsc2UsImNtcEJhbm5lclRoZW1lIjoiNjViMjhmNzFhY2YyMzdlMjEzMGRmMWZhIiwiYmFubmVyVHlwZXMiOltdLCJjbGlja0NvbnRyb2xIb3N0IjoiY2Muc2Vkb3BhcmtpbmcuY29tIn07CiAgICA8L3NjcmlwdD48L2hlYWQ+PGJvZHk+PGRpdiBpZD0iY29udGFpbmVyLWhlYWRlciI+PGRpdiBpZD0iY29udGFpbmVyLWRvbWFpbiI+PGRpdiBjbGFzcz0iZG9tYWluIiBpZD0iZG4tZGVmYXVsdCI+PGgxPm9rYXl0aS5waWNzPC9oMT48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJjb250YWluZXItY29udGVudCIgY2xhc3M9ImNvbnRhaW5lci1jb250ZW50IGNvbnRhaW5lci1jb250ZW50LS1scCI+PGRpdiBjbGFzcz0iY29udGFpbmVyLWNvbnRlbnRfX2xlZnQiPjwvZGl2PjxkaXYgY2xhc3M9ImNvbnRhaW5lci1jb250ZW50X19jb250YWluZXItcmVsYXRlZGxpbmtzIiBpZD0iY29udGFpbmVyLXJlbGF0ZWRsaW5rcyI+PGRpdiBpZD0icmItZGVmYXVsdCIgc3R5bGU9ImhlaWdodDogYXV0bzsiPjxpZnJhbWUgZnJhbWVib3JkZXI9IjAiIG1hcmdpbndpZHRoPSIwIiBtYXJnaW5oZWlnaHQ9IjAiIGFsbG93dHJhbnNwYXJlbmN5PSJ0cnVlIiBzY3JvbGxpbmc9Im5vIiB3aWR0aD0iMTAwJSIgbmFtZT0ieyZxdW90O25hbWUmcXVvdDs6JnF1b3Q7bWFzdGVyLTEmcXVvdDssJnF1b3Q7c2xhdmUtMS0xJnF1b3Q7OnsmcXVvdDtjb250YWluZXImcXVvdDs6JnF1b3Q7c2ItZGVmYXVsdCZxdW90OywmcXVvdDtjaGFubmVsJnF1b3Q7OiZxdW90O2V4cC0wMDUxLGF1eGEtY29udHJvbC0xLDM1OTYxNTE5JnF1b3Q7LCZxdW90O2RvbWFpbk5hbWUmcXVvdDs6JnF1b3Q7b2theXRpLnBpY3MmcXVvdDssJnF1b3Q7ZmV4cCZxdW90OzomcXVvdDsyMTQwNCwxNzMwMTQzNywxNzMwMTQzOSwxNzMwMTQ0MiwxNzMwMTU0MiwxNzMwMTI2Niw3MjcxNzEwOCZxdW90OywmcXVvdDttYXN0ZXJOdW1iZXImcXVvdDs6MSwmcXVvdDtudW1iZXImcXVvdDs6MTAsJnF1b3Q7cHViSWQmcXVvdDs6JnF1b3Q7ZHAtc2Vkbzg1XzNwaCZxdW90OywmcXVvdDtyb2xlJnF1b3Q7OiZxdW90O3MmcXVvdDssJnF1b3Q7c2xhdmVOdW1iZXImcXVvdDs6MSwmcXVvdDthZExvYWRlZENhbGxiYWNrJnF1b3Q7Om51bGwsJnF1b3Q7aGwmcXVvdDs6JnF1b3Q7ZnImcXVvdDssJnF1b3Q7aXZ0JnF1b3Q7OmZhbHNlLCZxdW90O2ZvbnRGYW1pbHkmcXVvdDs6JnF1b3Q7QXJpYWwmcXVvdDssJnF1b3Q7cmVzdWx0c1BhZ2VCYXNlVXJsJnF1b3Q7OiZxdW90O2h0dHA6Ly9va2F5dGkucGljcy9jYWYvP3Nlcz1ZM0psUFRFM016QXpOREU1TURBbWRHTnBaRDF2YTJGNWRHa3VjR2xqY3pZM01qSmxZekJqTVRFeU9EVTNMalV3TnpVeU1EYzFKblJoYzJzOWMyVmhjbU5vSm1SdmJXRnBiajF2YTJGNWRHa3VjR2xqY3laaFgybGtQVE1tYzJWemMybHZiajFSVkVOVGRYTkpWRGxqTVZWU2FreGFVRlF5YWc9PSZxdW90OywmcXVvdDtjb2x1bW5zJnF1b3Q7OjEsJnF1b3Q7aG9yaXpvbnRhbEFsaWdubWVudCZxdW90OzomcXVvdDtsZWZ0JnF1b3Q7LCZxdW90O3Jlc3VsdHNQYWdlUXVlcnlQYXJhbSZxdW90OzomcXVvdDtxdWVyeSZxdW90OywmcXVvdDtrdyZxdW90OzomcXVvdDsmcXVvdDssJnF1b3Q7aWUmcXVvdDs6JnF1b3Q7VVRGLTgmcXVvdDssJnF1b3Q7bWF4VG9wJnF1b3Q7Om51bGwsJnF1b3Q7bWluVG9wJnF1b3Q7Om51bGwsJnF1b3Q7b2UmcXVvdDs6JnF1b3Q7VVRGLTgmcXVvdDssJnF1b3Q7dHlwZSZxdW90OzomcXVvdDtzZWFyY2hib3gmcXVvdDssJnF1b3Q7bGlua1RhcmdldCZxdW90OzomcXVvdDtfYmxhbmsmcXVvdDssJnF1b3Q7Zm9udFNpemVUaXRsZSZxdW90OzoxOCwmcXVvdDtmb250U2l6ZUF0dHJpYnV0aW9uJnF1b3Q7OjEzLCZxdW90O2NvbG9yQmFja2dyb3VuZCZxdW90OzomcXVvdDt0cmFuc3BhcmVudCZxdW90OywmcXVvdDtoaWRlU2VhcmNoSW5wdXRCb3JkZXImcXVvdDs6dHJ1ZSwmcXVvdDtoaWRlU2VhcmNoQnV0dG9uQm9yZGVyJnF1b3Q7OnRydWUsJnF1b3Q7Y29sb3JTZWFyY2hCdXR0b25UZXh0JnF1b3Q7OiZxdW90OyM2MzgyOTYmcXVvdDssJnF1b3Q7Zm9udFNpemVTZWFyY2hJbnB1dCZxdW90OzoxMiwmcXVvdDtmb250U2l6ZVNlYXJjaEJ1dHRvbiZxdW90OzoxMiwmcXVvdDt1aU9wdGltaXplJnF1b3Q7OmZhbHNlLCZxdW90O2RvbWFpblJlZ2lzdHJhbnQmcXVvdDs6JnF1b3Q7YXMtZHJpZC0yMjQ5MzAxMTc1ODQ0NzMzJnF1b3Q7fSwmcXVvdDttYXN0ZXItMSZxdW90Ozp7JnF1b3Q7Y29udGFpbmVyJnF1b3Q7OiZxdW90O3JiLWRlZmF1bHQmcXVvdDssJnF1b3Q7c3R5bGVJZCZxdW90Ozo5MzMwMjQ0MzgwLCZxdW90O2NoYW5uZWwmcXVvdDs6JnF1b3Q7ZXhwLTAwNTEsYXV4YS1jb250cm9sLTEsMzU5NjE1MTkmcXVvdDssJnF1b3Q7ZG9tYWluTmFtZSZxdW90OzomcXVvdDtva2F5dGkucGljcyZxdW90OywmcXVvdDtmZXhwJnF1b3Q7OiZxdW90OzIxNDA0LDE3MzAxNDM3LDE3MzAxNDM5LDE3MzAxNDQyLDE3MzAxNTQyLDE3MzAxMjY2LDcyNzE3MTA4JnF1b3Q7LCZxdW90O21hc3Rlck51bWJlciZxdW90OzoxLCZxdW90O251bWJlciZxdW90OzozLCZxdW90O3B1YklkJnF1b3Q7OiZxdW90O2RwLXNlZG84NV8zcGgmcXVvdDssJnF1b3Q7cm9sZSZxdW90OzomcXVvdDttJnF1b3Q7LCZxdW90O2FkTG9hZGVkQ2FsbGJhY2smcXVvdDs6bnVsbCwmcXVvdDtobCZxdW90OzomcXVvdDtmciZxdW90OywmcXVvdDtpdnQmcXVvdDs6ZmFsc2UsJnF1b3Q7cmVzdWx0c1BhZ2VCYXNlVXJsJnF1b3Q7OiZxdW90O2h0dHA6Ly9va2F5dGkucGljcy9jYWYvP3Nlcz1ZM0psUFRFM016QXpOREU1TURBbWRHTnBaRDF2YTJGNWRHa3VjR2xqY3pZM01qSmxZekJqTVRFeU9EVTNMalV3TnpVeU1EYzFKblJoYzJzOWMyVmhjbU5vSm1SdmJXRnBiajF2YTJGNWRHa3VjR2xqY3laaFgybGtQVE1tYzJWemMybHZiajFSVkVOVGRYTkpWRGxqTVZWU2FreGFVRlF5YWc9PSZxdW90OywmcXVvdDtjb2x1bW5zJnF1b3Q7OjEsJnF1b3Q7aG9yaXpvbnRhbEFsaWdubWVudCZxdW90OzomcXVvdDtsZWZ0JnF1b3Q7LCZxdW90O3Jlc3VsdHNQYWdlUXVlcnlQYXJhbSZxdW90OzomcXVvdDtxdWVyeSZxdW90OywmcXVvdDtrdyZxdW90OzomcXVvdDsmcXVvdDssJnF1b3Q7aWUmcXVvdDs6JnF1b3Q7VVRGLTgmcXVvdDssJnF1b3Q7bWF4VG9wJnF1b3Q7Om51bGwsJnF1b3Q7bWluVG9wJnF1b3Q7Om51bGwsJnF1b3Q7b2UmcXVvdDs6JnF1b3Q7VVRGLTgmcXVvdDssJnF1b3Q7dHlwZSZxdW90OzomcXVvdDtyZWxhdGVkc2VhcmNoJnF1b3Q7LCZxdW90O2xpbmtUYXJnZXQmcXVvdDs6JnF1b3Q7X2JsYW5rJnF1b3Q7LCZxdW90O2ZvbnRTaXplVGl0bGUmcXVvdDs6MTgsJnF1b3Q7Zm9udFNpemVBdHRyaWJ1dGlvbiZxdW90OzoxMywmcXVvdDtjb2xvckJhY2tncm91bmQmcXVvdDs6JnF1b3Q7dHJhbnNwYXJlbnQmcXVvdDssJnF1b3Q7dWlPcHRpbWl6ZSZxdW90OzpmYWxzZSwmcXVvdDtkb21haW5SZWdpc3RyYW50JnF1b3Q7OiZxdW90O2FzLWRyaWQtMjI0OTMwMTE3NTg0NDczMyZxdW90O319IiBpZD0ibWFzdGVyLTEiIHNyYz0iaHR0cHM6Ly9zeW5kaWNhdGVkc2VhcmNoLmdvb2cvYWZzL2Fkcz9hZHNhZmU9bG93JmFtcDthZHRlc3Q9b2ZmJmFtcDtwc2lkPTkzMzAyNDQzODAmYW1wO2NoYW5uZWw9ZXhwLTAwNTElMkNhdXhhLWNvbnRyb2wtMSUyQzM1OTYxNTE5JmFtcDtjbGllbnQ9ZHAtc2Vkbzg1XzNwaCZhbXA7cj1tJmFtcDtobD1mciZhbXA7aXZ0PTAmYW1wO3JwYnU9aHR0cCUzQSUyRiUyRm9rYXl0aS5waWNzJTJGY2FmJTJGJTNGc2VzJTNEWTNKbFBURTNNekF6TkRFNU1EQW1kR05wWkQxdmEyRjVkR2t1Y0dsamN6WTNNakpsWXpCak1URXlPRFUzTGpVd056VXlNRGMxSm5SaGMyczljMlZoY21Ob0ptUnZiV0ZwYmoxdmEyRjVkR2t1Y0dsamN5WmhYMmxrUFRNbWMyVnpjMmx2YmoxUlZFTlRkWE5KVkRsak1WVlNha3hhVUZReWFnJTNEJTNEJmFtcDt0eXBlPTMmYW1wO3Vpb3B0PWZhbHNlJmFtcDtzd3A9YXMtZHJpZC0yMjQ5MzAxMTc1ODQ0NzMzJmFtcDtvZT1VVEYtOCZhbXA7aWU9VVRGLTgmYW1wO2ZleHA9MjE0MDQlMkMxNzMwMTQzNyUyQzE3MzAxNDM5JTJDMTczMDE0NDIlMkMxNzMwMTU0MiUyQzE3MzAxMjY2JTJDNzI3MTcxMDgmYW1wO2Zvcm1hdD1yMyU3Q3MmYW1wO25vY2FjaGU9NzIxNzMwMzQxOTAxMzk2JmFtcDtudW09MCZhbXA7b3V0cHV0PWFmZF9hZHMmYW1wO2RvbWFpbl9uYW1lPW9rYXl0aS5waWNzJmFtcDt2PTMmYW1wO2JzbD04JmFtcDtwYWM9MCZhbXA7dV9oaXM9MiZhbXA7dV90ej0wJmFtcDtkdD0xNzMwMzQxOTAxMzk2JmFtcDt1X3c9MTI4MCZhbXA7dV9oPTcyMCZhbXA7Yml3PTEyODAmYW1wO2JpaD03MjAmYW1wO3Bzdz0xMjgwJmFtcDtwc2g9OTk3JmFtcDtmcm09MCZhbXA7dWlvPS0tJmFtcDtjb250PXJiLWRlZmF1bHQmYW1wO2RydD0wJmFtcDtqc2lkPWNhZiZhbXA7bmZwPTEmYW1wO2pzdj02ODgxNjA1MDYmYW1wO3J1cmw9aHR0cCUzQSUyRiUyRm9rYXl0aS5waWNzJTJGIiBhbGxvdz0iYXR0cmlidXRpb24tcmVwb3J0aW5nIiBzdHlsZT0idmlzaWJpbGl0eTogdmlzaWJsZTsgaGVpZ2h0OiA1MzNweDsgZGlzcGxheTogYmxvY2s7IiB0aXRsZT0iIj48L2lmcmFtZT48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjb250YWluZXItY29udGVudF9fcmlnaHQiPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbnRhaW5lci1zZWFyY2hib3giIGlkPSJjb250YWluZXItc2VhcmNoYm94Ij48ZGl2IGNsYXNzPSJjb250YWluZXItc2VhcmNoYm94X19jb250ZW50IiBpZD0ic2ItZGVmYXVsdCIgc3R5bGU9ImhlaWdodDogYXV0bzsiPjxpZnJhbWUgZnJhbWVib3JkZXI9IjAiIG1hcmdpbndpZHRoPSIwIiBtYXJnaW5oZWlnaHQ9IjAiIGFsbG93dHJhbnNwYXJlbmN5PSJ0cnVlIiBzY3JvbGxpbmc9Im5vIiB3aWR0aD0iMTAwJSIgbmFtZT0ic2xhdmUtMS0xfHsmcXVvdDtuYW1lJnF1b3Q7OiZxdW90O21hc3Rlci0xJnF1b3Q7LCZxdW90O3NsYXZlLTEtMSZxdW90Ozp7JnF1b3Q7Y29udGFpbmVyJnF1b3Q7OiZxdW90O3NiLWRlZmF1bHQmcXVvdDssJnF1b3Q7Y2hhbm5lbCZxdW90OzomcXVvdDtleHAtMDA1MSxhdXhhLWNvbnRyb2wtMSwzNTk2MTUxOSZxdW90OywmcXVvdDtkb21haW5OYW1lJnF1b3Q7OiZxdW90O29rYXl0aS5waWNzJnF1b3Q7LCZxdW90O2ZleHAmcXVvdDs6JnF1b3Q7MjE0MDQsMTczMDE0MzcsMTczMDE0MzksMTczMDE0NDIsMTczMDE1NDIsMTczMDEyNjYsNzI3MTcxMDgmcXVvdDssJnF1b3Q7bWFzdGVyTnVtYmVyJnF1b3Q7OjEsJnF1b3Q7bnVtYmVyJnF1b3Q7OjEwLCZxdW90O3B1YklkJnF1b3Q7OiZxdW90O2RwLXNlZG84NV8zcGgmcXVvdDssJnF1b3Q7cm9sZSZxdW90OzomcXVvdDtzJnF1b3Q7LCZxdW90O3NsYXZlTnVtYmVyJnF1b3Q7OjEsJnF1b3Q7YWRMb2FkZWRDYWxsYmFjayZxdW90OzpudWxsLCZxdW90O2hsJnF1b3Q7OiZxdW90O2ZyJnF1b3Q7LCZxdW90O2l2dCZxdW90OzpmYWxzZSwmcXVvdDtmb250RmFtaWx5JnF1b3Q7OiZxdW90O0FyaWFsJnF1b3Q7LCZxdW90O3Jlc3VsdHNQYWdlQmFzZVVybCZxdW90OzomcXVvdDtodHRwOi8vb2theXRpLnBpY3MvY2FmLz9zZXM9WTNKbFBURTNNekF6TkRFNU1EQW1kR05wWkQxdmEyRjVkR2t1Y0dsamN6WTNNakpsWXpCak1URXlPRFUzTGpVd056VXlNRGMxSm5SaGMyczljMlZoY21Ob0ptUnZiV0ZwYmoxdmEyRjVkR2t1Y0dsamN5WmhYMmxrUFRNbWMyVnpjMmx2YmoxUlZFTlRkWE5KVkRsak1WVlNha3hhVUZReWFnPT0mcXVvdDssJnF1b3Q7Y29sdW1ucyZxdW90OzoxLCZxdW90O2hvcml6b250YWxBbGlnbm1lbnQmcXVvdDs6JnF1b3Q7bGVmdCZxdW90OywmcXVvdDtyZXN1bHRzUGFnZVF1ZXJ5UGFyYW0mcXVvdDs6JnF1b3Q7cXVlcnkmcXVvdDssJnF1b3Q7a3cmcXVvdDs6JnF1b3Q7JnF1b3Q7LCZxdW90O2llJnF1b3Q7OiZxdW90O1VURi04JnF1b3Q7LCZxdW90O21heFRvcCZxdW90OzpudWxsLCZxdW90O21pblRvcCZxdW90OzpudWxsLCZxdW90O29lJnF1b3Q7OiZxdW90O1VURi04JnF1b3Q7LCZxdW90O3R5cGUmcXVvdDs6JnF1b3Q7c2VhcmNoYm94JnF1b3Q7LCZxdW90O2xpbmtUYXJnZXQmcXVvdDs6JnF1b3Q7X2JsYW5rJnF1b3Q7LCZxdW90O2ZvbnRTaXplVGl0bGUmcXVvdDs6MTgsJnF1b3Q7Zm9udFNpemVBdHRyaWJ1dGlvbiZxdW90OzoxMywmcXVvdDtjb2xvckJhY2tncm91bmQmcXVvdDs6JnF1b3Q7dHJhbnNwYXJlbnQmcXVvdDssJnF1b3Q7aGlkZVNlYXJjaElucHV0Qm9yZGVyJnF1b3Q7OnRydWUsJnF1b3Q7aGlkZVNlYXJjaEJ1dHRvbkJvcmRlciZxdW90Ozp0cnVlLCZxdW90O2NvbG9yU2VhcmNoQnV0dG9uVGV4dCZxdW90OzomcXVvdDsjNjM4Mjk2JnF1b3Q7LCZxdW90O2ZvbnRTaXplU2VhcmNoSW5wdXQmcXVvdDs6MTIsJnF1b3Q7Zm9udFNpemVTZWFyY2hCdXR0b24mcXVvdDs6MTIsJnF1b3Q7dWlPcHRpbWl6ZSZxdW90OzpmYWxzZSwmcXVvdDtkb21haW5SZWdpc3RyYW50JnF1b3Q7OiZxdW90O2FzLWRyaWQtMjI0OTMwMTE3NTg0NDczMyZxdW90O30sJnF1b3Q7bWFzdGVyLTEmcXVvdDs6eyZxdW90O2NvbnRhaW5lciZxdW90OzomcXVvdDtyYi1kZWZhdWx0JnF1b3Q7LCZxdW90O3N0eWxlSWQmcXVvdDs6OTMzMDI0NDM4MCwmcXVvdDtjaGFubmVsJnF1b3Q7OiZxdW90O2V4cC0wMDUxLGF1eGEtY29udHJvbC0xLDM1OTYxNTE5JnF1b3Q7LCZxdW90O2RvbWFpbk5hbWUmcXVvdDs6JnF1b3Q7b2theXRpLnBpY3MmcXVvdDssJnF1b3Q7ZmV4cCZxdW90OzomcXVvdDsyMTQwNCwxNzMwMTQzNywxNzMwMTQzOSwxNzMwMTQ0MiwxNzMwMTU0MiwxNzMwMTI2Niw3MjcxNzEwOCZxdW90OywmcXVvdDttYXN0ZXJOdW1iZXImcXVvdDs6MSwmcXVvdDtudW1iZXImcXVvdDs6MywmcXVvdDtwdWJJZCZxdW90OzomcXVvdDtkcC1zZWRvODVfM3BoJnF1b3Q7LCZxdW90O3JvbGUmcXVvdDs6JnF1b3Q7bSZxdW90OywmcXVvdDthZExvYWRlZENhbGxiYWNrJnF1b3Q7Om51bGwsJnF1b3Q7aGwmcXVvdDs6JnF1b3Q7ZnImcXVvdDssJnF1b3Q7aXZ0JnF1b3Q7OmZhbHNlLCZxdW90O3Jlc3VsdHNQYWdlQmFzZVVybCZxdW90OzomcXVvdDtodHRwOi8vb2theXRpLnBpY3MvY2FmLz9zZXM9WTNKbFBURTNNekF6TkRFNU1EQW1kR05wWkQxdmEyRjVkR2t1Y0dsamN6WTNNakpsWXpCak1URXlPRFUzTGpVd056VXlNRGMxSm5SaGMyczljMlZoY21Ob0ptUnZiV0ZwYmoxdmEyRjVkR2t1Y0dsamN5WmhYMmxrUFRNbWMyVnpjMmx2YmoxUlZFTlRkWE5KVkRsak1WVlNha3hhVUZReWFnPT0mcXVvdDssJnF1b3Q7Y29sdW1ucyZxdW90OzoxLCZxdW90O2hvcml6b250YWxBbGlnbm1lbnQmcXVvdDs6JnF1b3Q7bGVmdCZxdW90OywmcXVvdDtyZXN1bHRzUGFnZVF1ZXJ5UGFyYW0mcXVvdDs6JnF1b3Q7cXVlcnkmcXVvdDssJnF1b3Q7a3cmcXVvdDs6JnF1b3Q7JnF1b3Q7LCZxdW90O2llJnF1b3Q7OiZxdW90O1VURi04JnF1b3Q7LCZxdW90O21heFRvcCZxdW90OzpudWxsLCZxdW90O21pblRvcCZxdW90OzpudWxsLCZxdW90O29lJnF1b3Q7OiZxdW90O1VURi04JnF1b3Q7LCZxdW90O3R5cGUmcXVvdDs6JnF1b3Q7cmVsYXRlZHNlYXJjaCZxdW90OywmcXVvdDtsaW5rVGFyZ2V0JnF1b3Q7OiZxdW90O19ibGFuayZxdW90OywmcXVvdDtmb250U2l6ZVRpdGxlJnF1b3Q7OjE4LCZxdW90O2ZvbnRTaXplQXR0cmlidXRpb24mcXVvdDs6MTMsJnF1b3Q7Y29sb3JCYWNrZ3JvdW5kJnF1b3Q7OiZxdW90O3RyYW5zcGFyZW50JnF1b3Q7LCZxdW90O3VpT3B0aW1pemUmcXVvdDs6ZmFsc2UsJnF1b3Q7ZG9tYWluUmVnaXN0cmFudCZxdW90OzomcXVvdDthcy1kcmlkLTIyNDkzMDExNzU4NDQ3MzMmcXVvdDt9fSIgaWQ9InNsYXZlLTEtMSIgc3JjPSJodHRwczovL3N5bmRpY2F0ZWRzZWFyY2guZ29vZy9hZnMvYWRzL2kvaWZyYW1lLmh0bWwiIGFsbG93PSJhdHRyaWJ1dGlvbi1yZXBvcnRpbmciIHN0eWxlPSJ2aXNpYmlsaXR5OiB2aXNpYmxlOyBoZWlnaHQ6IDE2cHg7IGRpc3BsYXk6IGJsb2NrOyI+PC9pZnJhbWU+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ibmFtZS1zaWxvLWNvbnRhaW5lciI+PGRpdiBjbGFzcz0ibmFtZS1zaWxvLWJhbm5lciI+PGRpdiBjbGFzcz0icmlnaHQtY29udGFpbmVyIj5UaGlzIGRvbWFpbiBpcyByZWdpc3RlcmVkIGF0IE5hbWVTaWxvLiBJZiB5b3UgYXJlIHRoZSBvd25lciwgc3RhcnQgYWRtaW5pc3RlcmluZyBpdCBhdCA8YSBocmVmPSJodHRwczovL3d3dy5uYW1lc2lsby5jb20iPk5hbWVTaWxvLmNvbTwvYT4uIElmIHRoaXMgaXMgbm90IHlvdXIgZG9tYWluLCA8YSBocmVmPSJodHRwczovL3d3dy5uYW1lc2lsby5jb20vZG9tYWluL3NlYXJjaC1kb21haW5zP3F1ZXJ5PW9rYXl0aS5waWNzIj5maW5kIHNpbWlsYXIgbmFtZXM8L2E+IHRoYXQgd29yayBmb3IgeW91LjwvZGl2PjxkaXYgY2xhc3M9ImxlZnQtY29udGFpbmVyIj48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjb250YWluZXItYnV5Ym94IiBpZD0iY29udGFpbmVyLWJ1eWJveCI+PC9kaXY+PGRpdiBjbGFzcz0iY29udGFpbmVyLWZvb3RlciIgaWQ9ImNvbnRhaW5lci1mb290ZXIiPjxkaXYgY2xhc3M9ImNvbnRhaW5lci1kaXNjbGFpbWVyIiBpZD0iY29udGFpbmVyLWRpc2NsYWltZXIiPjxkaXYgY2xhc3M9ImNvbnRhaW5lci1kaXNjbGFpbWVyX19jb250ZW50Ij48cCBjbGFzcz0iY29udGFpbmVyLWRpc2NsYWltZXJfX2NvbnRlbnQtdGV4dCI+CiAgICAgICAgVGhpcyB3ZWJwYWdlIHdhcyBnZW5lcmF0ZWQgYnkgdGhlIGRvbWFpbiBvd25lciB1c2luZyA8YSBocmVmPSJodHRwczovL3d3dy5zZWRvLmNvbS9zZXJ2aWNlcy9wYXJraW5nLnBocDMiPlNlZG8gRG9tYWluIFBhcmtpbmc8L2E+LiBEaXNjbGFpbWVyOiBTZWRvIG1haW50YWlucyBubyByZWxhdGlvbnNoaXAgd2l0aCB0aGlyZCBwYXJ0eSBhZHZlcnRpc2Vycy4gUmVmZXJlbmNlIHRvIGFueSBzcGVjaWZpYyBzZXJ2aWNlIG9yIHRyYWRlIG1hcmsgaXMgbm90IGNvbnRyb2xsZWQgYnkgU2VkbyBub3IgZG9lcyBpdCBjb25zdGl0dXRlIG9yIGltcGx5IGl0cyBhc3NvY2lhdGlvbiwgZW5kb3JzZW1lbnQgb3IgcmVjb21tZW5kYXRpb24uCiAgICA8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29udGFpbmVyLWltcHJpbnQiIGlkPSJjb250YWluZXItaW1wcmludCI+PC9kaXY+PGRpdiBjbGFzcz0iY29udGFpbmVyLXByaXZhY3lQb2xpY3kiIGlkPSJjb250YWluZXItcHJpdmFjeVBvbGljeSI+PGRpdiBjbGFzcz0iY29udGFpbmVyLXByaXZhY3lQb2xpY3lfX2NvbnRlbnQiPjxkaXYgaWQ9InByaXZhY3ktcG9saWN5LWxpbmsiPjxhIGNsYXNzPSJjb250YWluZXItcHJpdmFjeVBvbGljeV9fY29udGVudC1saW5rIiBocmVmPSIjIiBvbmNsaWNrPSJ3aW5kb3cub3BlbigKICAgICAgICAgICAgICAgICAgICAgICAgJy8vc2Vkb3BhcmtpbmcuY29tL3ByaXZhY3ktcG9saWN5L2VuL2luZGV4Lmh0bWwnLAogICAgICAgICAgICAgICAgICAgICAgICAncHJpdmFjeS1wb2xpY3knLCd3aWR0aD02MDAsaGVpZ2h0PTQwMCcpOwogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ij4KICAgICAgICAgICAgQ29uZmlkZW50aWFsaXTDqQogICAgICAgIDwvYT48L2Rpdj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjb250YWluZXItY29udGFjdC11cyIgaWQ9ImNvbnRhaW5lci1jb250YWN0LXVzIj48L2Rpdj48L2Rpdj48IS0tIENBRiAtLT48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvL3d3dy5nb29nbGUuY29tL2Fkc2Vuc2UvZG9tYWlucy9jYWYuanM/YWJwPTEmYW1wO1lFcjNDaUY2QXVRcUxzcE5vYnlhbDNqaTBTeXF4QkxuPXRydWUiPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KICAgICAgICAgICAgICAgIHZhciBjYWZSTD17Y29udGFpbmVyOiJyYi1kZWZhdWx0Iix0eXBlOiJyZWxhdGVkc2VhcmNoIixzdHlsZUlkOjkzMzAyNDQzODAsbnVtYmVyOjN9O2lmKCJhZExvYWRlZCJpbiBkdG8ucG9zdEFjdGlvblBhcmFtZXRlci50b2tlbiYmZHRvLnBvc3RBY3Rpb25QYXJhbWV0ZXIudG9rZW4uYWRMb2FkZWQpe2NhZlJMLmFkTG9hZGVkQ2FsbGJhY2s9Y2FsbGJhY2tBZExvYWRlZH12YXIgY2FmRWw9W3ttZXRhOntsYXlvdXRUeXBlczpbMV19LGNhZjp7Y29udGFpbmVyOiJhYi1kZWZhdWx0Iix0eXBlOiJhZHMiLGxpbmVzOjMsbGlua1RhcmdldDoiX2JsYW5rIixzdHlsZUlkOjkzMzAyNDQzODB9fSx7bWV0YTp7bGF5b3V0VHlwZXM6WzVdfSxjYWY6Y2FmUkx9LHttZXRhOntsYXlvdXRUeXBlczpbMSwyLDMsNV19LGNhZjp7Y29udGFpbmVyOiJzYi1kZWZhdWx0Iix0eXBlOiJzZWFyY2hib3giLGhpZGVTZWFyY2hJbnB1dEJvcmRlcjp0cnVlLGhpZGVTZWFyY2hCdXR0b25Cb3JkZXI6dHJ1ZSxjb2xvclNlYXJjaEJ1dHRvblRleHQ6IiM2MzgyOTYiLGZvbnRTaXplU2VhcmNoSW5wdXQ6MTIsZm9udFNpemVTZWFyY2hCdXR0b246MTIsZm9udEZhbWlseToiQXJpYWwifX1dOwogICAgPC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgIHZhciBvbmNsaWNrX3BhcmFtX2w9ZHRvLnNpZ25lZExpbms7dmFyIG9uY2xpY2tfdmFsdWVfbD1kdG8uZ0ZlZWRTRVMuZGVmYXVsdDt2YXIgb25jbGlja192YWx1ZV9hbD1kdG8uZ0ZlZWRTRVMuYWx0ZXJuYXRlO3ZhciBvbmNsaWNrX3BhcmFtX3Y9ZHRvLnZpc2l0b3JWaWV3SWQ7dmFyIG9uY2xpY2tfdmFsdWVfdj1kdG8udmlzaXRvclZpZXdJZEpzQWRzO3ZhciBmYj0iIjt2YXIgZmJfdG9rZW49IiI7aWYoZHRvLnBvc3RBY3Rpb25QYXJhbWV0ZXIpe2ZiPWR0by5wdStkdG8ucG9zdEFjdGlvblBhcmFtZXRlci5mZWVkYmFjaztpZihkdG8ucG9zdEFjdGlvblBhcmFtZXRlci50b2tlbi5wYWdlTG9hZGVkKXtmYl90b2tlbj1kdG8ucG9zdEFjdGlvblBhcmFtZXRlci50b2tlbi5wYWdlTG9hZGVkfX12YXIgcHU9ZHRvLnB1O3ZhciBkcz1kdG8uYWR1bHRGbGFnO3ZhciBwdXM9ZHRvLnB1czt2YXIgdGx0PWR0by5jb250ZW50VHlwZTt2YXIgZHNiPWR0by5zZWFyY2hib3g7dmFyIHBkdG89e2NhZjp7Y29sb3JCYWNrZ3JvdW5kOiJ0cmFuc3BhcmVudCJ9fTtpZihkdG8uanNQYXJhbWV0ZXIpe2ZvcihsZXQga2V5IGluIGR0by5qc1BhcmFtZXRlci5yZXF1ZXN0KXtwZHRvLmNhZltrZXldPWR0by5qc1BhcmFtZXRlci5yZXF1ZXN0W2tleV19fShmdW5jdGlvbigpe2xldCBwYWdlT3B0aW9ucz1wZHRvLmNhZjtsZXQgbm9BZHM9cGR0by5jYWYubm9BZHM7ZGVsZXRlIHBkdG8uY2FmLm5vQWRzO3BhZ2VPcHRpb25zLnJlc3VsdHNQYWdlQmFzZVVybD1wdSsiL2NhZi8/IitwdXM7bGV0IGNsaWNrQ29udHJvbFBhcmFtcz17fTtjbGlja0NvbnRyb2xQYXJhbXNbb25jbGlja19wYXJhbV9sXT1vbmNsaWNrX3ZhbHVlX2w7Y2xpY2tDb250cm9sUGFyYW1zW29uY2xpY2tfcGFyYW1fdl09b25jbGlja192YWx1ZV92O2Z1bmN0aW9uIHNldFJsc0Ftb3VudCgpe2NhZkVsLmZvckVhY2goZnVuY3Rpb24ocGFydCxpbmRleCl7aWYoY2FmRWxbaW5kZXhdLm1ldGEubGF5b3V0VHlwZXMuaW5kZXhPZihkdG8uY29udGVudFR5cGUpIT09LTEmJmNhZkVsW2luZGV4XS5jYWYudHlwZT09PSJyZWxhdGVkc2VhcmNoIil7Y2FmRWxbaW5kZXhdLmNhZi5udW1iZXI9ZHRvLm51bWJlclJlbGF0ZWRMaW5rc319KX1mdW5jdGlvbiBhZGRDbGlja1RyYWNrVXJsKGNhZk9iamVjdCl7bGV0IHBhcmFtcz1PYmplY3Qua2V5cyhjbGlja0NvbnRyb2xQYXJhbXMpLm1hcChmdW5jdGlvbihrZXkpe3JldHVybiBlbmNvZGVVUklDb21wb25lbnQoa2V5KSsiPSIrZW5jb2RlVVJJQ29tcG9uZW50KGNsaWNrQ29udHJvbFBhcmFtc1trZXldKX0pLmpvaW4oIiYiKTtsZXQgcGFya2luZ0NsaWNrVHJhY2s9Ii8vIitkdG8uY2xpY2tDb250cm9sSG9zdCsiL3NlYXJjaC9jYy5waHA/IitwYXJhbXM7aWYoZHRvLmNsaWNrVHJhY2subGVuZ3RoPjApe2R0by5jbGlja1RyYWNrLmZvckVhY2goZnVuY3Rpb24ocGFydCxpbmRleCl7dGhpc1tpbmRleF09ZW5jb2RlVVJJKHRoaXNbaW5kZXhdKX0sZHRvLmNsaWNrVHJhY2spO2NhZk9iamVjdC5jbGlja3RyYWNrVXJsPVtwYXJraW5nQ2xpY2tUcmFja10uY29uY2F0KGR0by5jbGlja1RyYWNrKX1lbHNle2NhZk9iamVjdC5jbGlja3RyYWNrVXJsPXBhcmtpbmdDbGlja1RyYWNrfX1wYWdlT3B0aW9ucy5wYWdlTG9hZGVkQ2FsbGJhY2s9ZnVuY3Rpb24ocmVxdWVzdEFjY2VwdGVkLHN0YXR1cyl7bGV0IGZiX2FkZF9wYXJhbXM9IiI7ZnVuY3Rpb24gaXNBZHVsdFN0YXR1c0NhbGxiYWNrUmVxdWlyZWQoKXtpZighKCJhZHVsdCJpbiBzdGF0dXMpKXtyZXR1cm4gZmFsc2V9aWYoZHM9PT1mYWxzZSYmc3RhdHVzLmFkdWx0PT09dHJ1ZSl7cmV0dXJuIHRydWV9aWYoZHM9PT10cnVlJiZzdGF0dXMuYWR1bHQ9PT1mYWxzZSl7cmV0dXJuIHRydWV9cmV0dXJuIGZhbHNlfWZ1bmN0aW9uIGlzRXJyb3JDb2RlQ2FsbGJhY2tSZXF1aXJlZCgpe2lmKCEoImVycm9yX2NvZGUiaW4gc3RhdHVzKSl7cmV0dXJuIGZhbHNlfWlmKGlzQWR1bHRTdGF0dXNDYWxsYmFja1JlcXVpcmVkKCkmJjI2PT09c3RhdHVzLmVycm9yX2NvZGUpe3JldHVybiBmYWxzZX1yZXR1cm4gdHJ1ZX1pZihpc0FkdWx0U3RhdHVzQ2FsbGJhY2tSZXF1aXJlZCgpKXtmYl9hZGRfcGFyYW1zKz0iJmFzPSIrc3RhdHVzLmFkdWx0KyImZ2M9IitzdGF0dXMuY2xpZW50fWlmKGlzRXJyb3JDb2RlQ2FsbGJhY2tSZXF1aXJlZCgpKXtmYl9hZGRfcGFyYW1zKz0iJmVjPSIrcGFyc2VJbnQoc3RhdHVzLmVycm9yX2NvZGUpfWlmKGZiX2FkZF9wYXJhbXMubGVuZ3RoPT09MHx8ZmJfdG9rZW4ubGVuZ3RoPT09MCl7cmV0dXJufWxldCByZXF1ZXN0PW5ldyBYTUxIdHRwUmVxdWVzdDtyZXF1ZXN0Lm9wZW4oIkdFVCIsZmIrZmJfdG9rZW4rZmJfYWRkX3BhcmFtcyx0cnVlKTtyZXF1ZXN0LnNlbmQoKX07ZnVuY3Rpb24gY29sbGVjdENhZk9iamVjdHMoKXtsZXQgY2FmT2JqZWN0cz1bcGFnZU9wdGlvbnNdO2NhZkVsLmZvckVhY2goZnVuY3Rpb24ocGFydCxpbmRleCl7aWYoY2FmRWxbaW5kZXhdLm1ldGEubGF5b3V0VHlwZXMuaW5kZXhPZih0bHQpPT09LTEpe3JldHVybn1pZihjYWZFbFtpbmRleF0uY2FmLnR5cGU9PT0iYWRzIil7YWRkQ2xpY2tUcmFja1VybChjYWZFbFtpbmRleF0uY2FmKTtjYWZFbFtpbmRleF0uY2FmLm51bWJlcj1ub0Fkc31wZHRvLmNhZi51aU9wdGltaXplPWR0by51aU9wdGltaXplO2lmKGNhZkVsW2luZGV4XS5jYWYudHlwZT09PSJyZWxhdGVkc2VhcmNoIiYmZHRvLnJscy5sZW5ndGg+MCl7cmV0dXJufWlmKGNhZkVsW2luZGV4XS5jYWYudHlwZT09PSJzZWFyY2hib3giJiZkc2I9PT1mYWxzZSl7cmV0dXJufWNhZk9iamVjdHMucHVzaChjYWZFbFtpbmRleF0uY2FmKX0pO3JldHVybiBjYWZPYmplY3RzfWZ1bmN0aW9uIGFwcGVuZENhZlJscygpe2lmKGR0by5ybHMubGVuZ3RoPD0wKXtyZXR1cm59bGV0IHN0YXJ0PTA7bGV0IGNhZlJsT2JqZWN0cz1bcGR0by5jYWZdO2NhZkVsLmZvckVhY2goZnVuY3Rpb24ocGFydCxpbmRleCl7aWYoY2FmRWxbaW5kZXhdLm1ldGEubGF5b3V0VHlwZXMuaW5kZXhPZihkdG8uY29udGVudFR5cGUpIT09LTEmJmNhZkVsW2luZGV4XS5jYWYudHlwZT09PSJyZWxhdGVkc2VhcmNoIil7bGV0IHN0b3A9c3RhcnQrY2FmRWxbaW5kZXhdLmNhZi5udW1iZXI7bGV0IHRlcm1zPVtdO2Zvcih2YXIgaT1zdGFydDtpPHN0b3A7aSsrKXtpZihpPmR0by5ybHMubGVuZ3RoLTEpe2JyZWFrfXRlcm1zW2ldPWR0by5ybHNbaV0udGVybTtzdGFydD1pKzF9Y2FmRWxbaW5kZXhdLmNhZi50ZXJtcz10ZXJtcy5qb2luKCIsIik7Y2FmRWxbaW5kZXhdLmNhZi5vcHRpbWl6ZVRlcm1zPWZhbHNlO2NhZlJsT2JqZWN0cy5wdXNoKGNhZkVsW2luZGV4XS5jYWYpfX0pO2NyZWF0ZUNhZi5hcHBseSh0aGlzLGNhZlJsT2JqZWN0cyl9aWYodHlwZW9mIGdvb2dsZSE9PSJ1bmRlZmluZWQiKXt3aW5kb3cuY3JlYXRlQ2FmPWZ1bmN0aW9uKCl7ZnVuY3Rpb24gRihhcmdzKXtyZXR1cm4gZ29vZ2xlLmFkcy5kb21haW5zLkNhZi5hcHBseSh0aGlzLGFyZ3MpfUYucHJvdG90eXBlPWdvb2dsZS5hZHMuZG9tYWlucy5DYWYucHJvdG90eXBlO3JldHVybiBmdW5jdGlvbigpe3JldHVybiBuZXcgRihhcmd1bWVudHMpfX0oKTtzZXRSbHNBbW91bnQoKTtpZihkdG8uYWR2dD09PTEmJmR0by5jb250ZW50VHlwZSE9PTImJmR0by5jb250ZW50VHlwZSE9PTMpe2FwcGVuZENhZlJscygpfWxldCBjYWZPYmplY3RzPWNvbGxlY3RDYWZPYmplY3RzKCk7aWYoY2FmT2JqZWN0cy5sZW5ndGg+MSl7Y3JlYXRlQ2FmLmFwcGx5KHRoaXMsY2FmT2JqZWN0cyl9fX0pKCk7ZnVuY3Rpb24gdHNjQ2FsbChkdG8pe2NvbnN0IHJlcXVlc3Q9bmV3IFhNTEh0dHBSZXF1ZXN0O3JlcXVlc3Qub3BlbigiR0VUIixkdG8ucHUrIi9zZWFyY2gvdHNjLnBocD8iK2R0by50c2NRcyk7cmVxdWVzdC5zZW5kKCl9ZnVuY3Rpb24gaXNGYWNlYm9va0Nvb2tpZVNldCgpe2NvbnN0IGNvb2tpZUFycmF5PWRlY29kZVVSSUNvbXBvbmVudChkb2N1bWVudC5jb29raWUpLnNwbGl0KCI7Iik7Zm9yKGxldCBpPTA7aTxjb29raWVBcnJheS5sZW5ndGg7aSsrKXtsZXQgYz1jb29raWVBcnJheVtpXS50cmltKCk7aWYoYy5pbmRleE9mKCJfZmJwPSIpPT09MCl7cmV0dXJuIHRydWV9fXJldHVybiBmYWxzZX1pZihkdG8udHNjKXtpZihkdG8uZmJwQ2hlY2s9PXVuZGVmaW5lZCl7dHNjQ2FsbChkdG8pfWVsc2V7bGV0IHg9MDtjb25zdCBpbnRlcnZhbElEPXNldEludGVydmFsKGZ1bmN0aW9uKCl7Y29uc3QgaXNTZXQ9aXNGYWNlYm9va0Nvb2tpZVNldCgpO2lmKGlzU2V0fHx4PT09OSl7dHNjQ2FsbChkdG8pO2NsZWFySW50ZXJ2YWwoaW50ZXJ2YWxJRCl9eCsrfSwxMDApfX12YXIgJHBhcmtNb2RhbEJ1dHRvbj1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29va2llLW1vZGFsLW9wZW4iKTt2YXIgJHBhcmtNb2RhbENsb3NlQnV0dG9uPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb29raWUtbW9kYWwtY2xvc2UiKTt2YXIgJHBhcmtNb2RhbD1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29va2llLW1vZGFsLXdpbmRvdyIpO3ZhciAkcGFya0Nvb2tpZU1lc3NhZ2U9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvb2tpZS1tZXNzYWdlIik7dmFyICRwYXJrVGhpcmRQYXJ0eUNvb2tpZUNoZWNrYm94PWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJ0aGlyZC1wYXJ0eS1jb29raWUtY2hlY2tib3giKTt2YXIgJHBhcmtBY2NlcHRBbGxDb29raWVzQnV0dG9uPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJhY2NlcHQtYWxsLWNvb2tpZXMtYnRuIik7dmFyIGV4ZWN1dGVUcmFja2luZ1BpeGVsPWZ1bmN0aW9uKHRyaWdnZXIpe2lmKHRyaWdnZXI9PT10cnVlJiZ0eXBlb2YgcHhUcmFja2luZz09PSJmdW5jdGlvbiIpe3B4VHJhY2tpbmcoKX19O3ZhciBnZXRDb29raWVFeHBpcmF0aW9uVGltZT1mdW5jdGlvbigpe3ZhciBkPW5ldyBEYXRlO2Quc2V0VGltZShkLmdldFRpbWUoKSs3KjI0KjYwKjYwKjFlMyk7cmV0dXJuIGQudG9VVENTdHJpbmcoKX07dmFyIHNhdmVQYXJraW5nQ29va2llPWZ1bmN0aW9uKHN0YXRpc3RpY3NDb29raWUpe3ZhciBjb29raWVDb25zZW50PXtuZWNlc3Nhcnk6dHJ1ZSxzdGF0aXN0aWNzOnN0YXRpc3RpY3NDb29raWUsdmVyc2lvbjoxLHRpbWVzdGFtcDoobmV3IERhdGUpLmdldFRpbWUoKX07ZG9jdW1lbnQuY29va2llPSJDb29raWVDb25zZW50PSIrSlNPTi5zdHJpbmdpZnkoY29va2llQ29uc2VudCkrIjtleHBpcmVzPSIrZ2V0Q29va2llRXhwaXJhdGlvblRpbWUoKX07aWYoJHBhcmtNb2RhbEJ1dHRvbiE9bnVsbCl7JHBhcmtNb2RhbEJ1dHRvbi5vbmNsaWNrPWZ1bmN0aW9uKGUpeyRwYXJrTW9kYWwuY2xhc3NMaXN0LnJlbW92ZSgiZGlzYWJsZWQiKX19aWYoJHBhcmtNb2RhbENsb3NlQnV0dG9uIT1udWxsKXskcGFya01vZGFsQ2xvc2VCdXR0b24ub25jbGljaz1mdW5jdGlvbihlKXskcGFya01vZGFsLmNsYXNzTGlzdC5hZGQoImRpc2FibGVkIik7JHBhcmtDb29raWVNZXNzYWdlLmNsYXNzTGlzdC5hZGQoImRpc2FibGVkIik7c2F2ZVBhcmtpbmdDb29raWUoJHBhcmtUaGlyZFBhcnR5Q29va2llQ2hlY2tib3guY2hlY2tlZCk7ZXhlY3V0ZVRyYWNraW5nUGl4ZWwoJHBhcmtUaGlyZFBhcnR5Q29va2llQ2hlY2tib3guY2hlY2tlZCl9fWlmKCRwYXJrQWNjZXB0QWxsQ29va2llc0J1dHRvbiE9bnVsbCl7JHBhcmtBY2NlcHRBbGxDb29raWVzQnV0dG9uLm9uY2xpY2s9ZnVuY3Rpb24oKXskcGFya0Nvb2tpZU1lc3NhZ2UuY2xhc3NMaXN0LmFkZCgiZGlzYWJsZWQiKTtzYXZlUGFya2luZ0Nvb2tpZSh0cnVlKTtleGVjdXRlVHJhY2tpbmdQaXhlbCh0cnVlKX19aWYoZHRvLmV4ZWN1dGVUcmFja2luZ1BpeGVscz09PXRydWUpe2V4ZWN1dGVUcmFja2luZ1BpeGVsKHRydWUpfQogICAgPC9zY3JpcHQ+PC9ib2R5PjwvaHRtbD4=","disable_correlation":true,"to_ids":false,"type":"attachment","uuid":"0d58d6d3-c1d6-4701-90fd-957b8fa5b966","value":"rendered_page.html"},{"category":"Network activity","comment":"The address in the browser address bar at the end of the capture.","disable_correlation":false,"to_ids":true,"type":"url","uuid":"0decedff-8cba-4209-8c1d-e1f5a539ce16","value":"http://okayti.pics/"}],"Object":[{"Attribute":[{"category":"Network activity","disable_correlation":false,"object_relation":"url","to_ids":true,"type":"url","uuid":"5ea60c73-3369-49d8-a639-6f3c0eddd2fa","value":"http://okayti.pics"},{"category":"Network activity","disable_correlation":false,"object_relation":"host","to_ids":true,"type":"hostname","uuid":"457e925f-017e-48cc-941f-1dc539326b41","value":"okayti.pics"},{"category":"Network activity","disable_correlation":false,"object_relation":"domain","to_ids":true,"type":"domain","uuid":"0e380b42-5fad-4930-afef-1179c8dc7563","value":"okayti.pics"}],"ObjectReference":[{"comment":"Capture on lookyloo","object_uuid":"bf7207ce-134a-433d-aff6-be57b14c4a60","referenced_uuid":"aa0f567c-80c5-48c4-ba5b-3c261f999fd6","relationship_type":"captured-by","uuid":"00e7678b-7b49-482e-86fb-37656f007107"},{"object_uuid":"bf7207ce-134a-433d-aff6-be57b14c4a60","referenced_uuid":"e7f49da3-46f4-4728-b52e-c3e86ec5719f","relationship_type":"redirects-to","uuid":"b0f8dd64-708e-408b-baa8-e83298849e20"}],"comment":"Submitted URL","description":"url object describes an url along with its normalized field (like extracted using faup parsing library) and its metadata.","distribution":"5","first_seen":"2024-10-31T02:31:40.032000+00:00","meta-category":"network","name":"url","parsed_url":null,"sharing_group_id":"0","template_uuid":"60efb77b-40b5-4c46-871b-ed1ed999fce5","template_version":"10","uuid":"bf7207ce-134a-433d-aff6-be57b14c4a60"},{"Attribute":[{"category":"Network activity","disable_correlation":false,"object_relation":"url","to_ids":true,"type":"url","uuid":"c7ad8f8b-d0bd-4c2a-9421-0973017c18ba","value":"http://okayti.pics/"},{"category":"Network activity","disable_correlation":false,"object_relation":"host","to_ids":true,"type":"hostname","uuid":"dc54d395-e130-447b-8cbd-ba1d1a516074","value":"okayti.pics"},{"category":"Network activity","disable_correlation":false,"object_relation":"domain","to_ids":true,"type":"domain","uuid":"43b279cf-0434-45f9-a30b-4ec0e337fd91","value":"okayti.pics"},{"category":"Network activity","disable_correlation":false,"object_relation":"dom-hash","to_ids":true,"type":"dom-hash","uuid":"4a7be916-089c-4dd2-8c05-dcb525310cec","value":"7774e6773bcee7f132dda096084311d6"}],"comment":"Last redirect (0)","description":"url object describes an url along with its normalized field (like extracted using faup parsing library) and its metadata.","distribution":"5","first_seen":"2024-10-31T02:31:40.032000+00:00","meta-category":"network","name":"url","parsed_url":null,"sharing_group_id":"0","template_uuid":"60efb77b-40b5-4c46-871b-ed1ed999fce5","template_version":"10","uuid":"e7f49da3-46f4-4728-b52e-c3e86ec5719f"},{"Attribute":[{"category":"Payload delivery","disable_correlation":true,"object_relation":"filename","to_ids":true,"type":"filename","uuid":"f8c59bce-5912-4cc6-8fb0-248511910daf","value":"file.bin"},{"category":"Other","disable_correlation":true,"object_relation":"size-in-bytes","to_ids":false,"type":"size-in-bytes","uuid":"5a1b75e1-6517-4d03-9176-c4bf34224673","value":"24532"},{"category":"Other","disable_correlation":true,"object_relation":"entropy","to_ids":false,"type":"float","uuid":"8fbd678d-c9f1-49aa-b11f-331bef6d5c0e","value":5.5312893688641545},{"category":"Payload delivery","disable_correlation":false,"object_relation":"md5","to_ids":true,"type":"md5","uuid":"6021a30d-8958-4941-b1f9-da6cc6797210","value":"3e093b945607b528e4a20e60e44e084a"},{"category":"Payload delivery","disable_correlation":false,"object_relation":"sha1","to_ids":true,"type":"sha1","uuid":"4d39fb93-e390-4089-ab1f-b4a6b965f926","value":"502c238d27a7d507bc4b6bec7865df1fc17e518d"},{"category":"Payload delivery","disable_correlation":false,"object_relation":"sha256","to_ids":true,"type":"sha256","uuid":"8c8cb59c-8e84-417e-b1b6-741afc569a95","value":"377b6b2327cf1a836b36dd459b55d7126c9cec44650df8e6168047ddafaa777f"},{"category":"Payload delivery","disable_correlation":false,"object_relation":"sha512","to_ids":true,"type":"sha512","uuid":"c29fcb1f-b470-47ff-b950-8f7aa3e42098","value":"e4f20aa835310c8eb3221e34389f84596445c4a36659b28c78107468e45c3796c3891b6ce4809b9870e1b72fc51c3460f0864f7ff6a5011a8807d114b6029773"},{"category":"Payload delivery","data":"PCFET0NUWVBFIGh0bWw+PGh0bWwgbGFuZz0iZW4iICBkYXRhLWFkYmxvY2trZXk9TUZ3d0RRWUpLb1pJaHZjTkFRRUJCUUFEU3dBd1NBSkJBTm55bFd3MnZMWTRoVW45dzA2elFLYmhLQmZ2akZVQ3NkRmxiNlRkUWh4YjlSWFdYdUk0dDMxYytvOGZZT3YvczhxMUxHUGdhM0RFMUwvdEhVNExFTk1DQXdFQUFRPT1fakdpUFpadkZ4TGhxV1N0bndXQkNOSXIzNkhBK1JmY0ppRDB5UjZDWFVycE9ZNm14UlI1aGRlQldqUE1EMGhYRW5yand0SWNnb0JON3VGalg1eVVzbmc9PT48aGVhZD48bWV0YSBjaGFyc2V0PSJ1dGYtOCI+PHRpdGxlPm9rYXl0aS5waWNzJm5ic3A7LSZuYnNwO1Jlc3NvdXJjZXMgZXQgaW5mb3JtYXRpb24gY29uY2VybmFudCBva2F5dGkgUmVzb3VyY2VzIGFuZCBJbmZvcm1hdGlvbi48L3RpdGxlPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsaW5pdGlhbC1zY2FsZT0xLjAsbWF4aW11bS1zY2FsZT0xLjAsdXNlci1zY2FsYWJsZT0wIj48bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0ib2theXRpLnBpY3MgcsOpdW5pdCBkZXMgaW5mb3JtYXRpb25zIGV0IGFubm9uY2VzLiBOb3VzIGVzcMOpcm9ucyBxdWUgdm91cyB5IHRyb3V2ZXJleiBsZXMgaW5mb3JtYXRpb25zIHF1ZSB2b3VzIHJlY2hlcmNoZXogISI+PGxpbmsKICAgICAgICByZWw9Imljb24iCiAgICAgICAgdHlwZT0iaW1hZ2UvcG5nIgogICAgICAgIGhyZWY9Ii8vaW1nLnNlZG9wYXJraW5nLmNvbS90ZW1wbGF0ZXMvbG9nb3Mvc2Vkb19sb2dvLnBuZyIKLz48c3R5bGU+CiAgICAgICAgLyohIG5vcm1hbGl6ZS5jc3MgdjcuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL2h0bWx7bGluZS1oZWlnaHQ6MS4xNTstbXMtdGV4dC1zaXplLWFkanVzdDoxMDAlOy13ZWJraXQtdGV4dC1zaXplLWFkanVzdDoxMDAlfWJvZHl7bWFyZ2luOjB9YXJ0aWNsZSxhc2lkZSxmb290ZXIsaGVhZGVyLG5hdixzZWN0aW9ue2Rpc3BsYXk6YmxvY2t9aDF7Zm9udC1zaXplOjJlbTttYXJnaW46LjY3ZW0gMH1maWdjYXB0aW9uLGZpZ3VyZSxtYWlue2Rpc3BsYXk6YmxvY2t9ZmlndXJle21hcmdpbjoxZW0gNDBweH1ocntib3gtc2l6aW5nOmNvbnRlbnQtYm94O2hlaWdodDowO292ZXJmbG93OnZpc2libGV9cHJle2ZvbnQtZmFtaWx5Om1vbm9zcGFjZSxtb25vc3BhY2U7Zm9udC1zaXplOjFlbX1he2JhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7LXdlYmtpdC10ZXh0LWRlY29yYXRpb24tc2tpcDpvYmplY3RzfWFiYnJbdGl0bGVde2JvcmRlci1ib3R0b206bm9uZTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmUgZG90dGVkfWIsc3Ryb25ne2ZvbnQtd2VpZ2h0OmluaGVyaXR9YixzdHJvbmd7Zm9udC13ZWlnaHQ6Ym9sZGVyfWNvZGUsa2JkLHNhbXB7Zm9udC1mYW1pbHk6bW9ub3NwYWNlLG1vbm9zcGFjZTtmb250LXNpemU6MWVtfWRmbntmb250LXN0eWxlOml0YWxpY31tYXJre2JhY2tncm91bmQtY29sb3I6I2ZmMDtjb2xvcjojMDAwfXNtYWxse2ZvbnQtc2l6ZTo4MCV9c3ViLHN1cHtmb250LXNpemU6NzUlO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7dmVydGljYWwtYWxpZ246YmFzZWxpbmV9c3Vie2JvdHRvbTotMC4yNWVtfXN1cHt0b3A6LTAuNWVtfWF1ZGlvLHZpZGVve2Rpc3BsYXk6aW5saW5lLWJsb2NrfWF1ZGlvOm5vdChbY29udHJvbHNdKXtkaXNwbGF5Om5vbmU7aGVpZ2h0OjB9aW1ne2JvcmRlci1zdHlsZTpub25lfXN2Zzpub3QoOnJvb3Qpe292ZXJmbG93OmhpZGRlbn1idXR0b24saW5wdXQsb3B0Z3JvdXAsc2VsZWN0LHRleHRhcmVhe2ZvbnQtZmFtaWx5OnNhbnMtc2VyaWY7Zm9udC1zaXplOjEwMCU7bGluZS1oZWlnaHQ6MS4xNTttYXJnaW46MH1idXR0b24saW5wdXR7b3ZlcmZsb3c6dmlzaWJsZX1idXR0b24sc2VsZWN0e3RleHQtdHJhbnNmb3JtOm5vbmV9YnV0dG9uLGh0bWwgW3R5cGU9YnV0dG9uXSxbdHlwZT1yZXNldF0sW3R5cGU9c3VibWl0XXstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9ufWJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixbdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lcixbdHlwZT1zdWJtaXRdOjotbW96LWZvY3VzLWlubmVye2JvcmRlci1zdHlsZTpub25lO3BhZGRpbmc6MH1idXR0b246LW1vei1mb2N1c3JpbmcsW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxbdHlwZT1yZXNldF06LW1vei1mb2N1c3JpbmcsW3R5cGU9c3VibWl0XTotbW96LWZvY3VzcmluZ3tvdXRsaW5lOjFweCBkb3R0ZWQgQnV0dG9uVGV4dH1maWVsZHNldHtwYWRkaW5nOi4zNWVtIC43NWVtIC42MjVlbX1sZWdlbmR7Ym94LXNpemluZzpib3JkZXItYm94O2NvbG9yOmluaGVyaXQ7ZGlzcGxheTp0YWJsZTttYXgtd2lkdGg6MTAwJTtwYWRkaW5nOjA7d2hpdGUtc3BhY2U6bm9ybWFsfXByb2dyZXNze2Rpc3BsYXk6aW5saW5lLWJsb2NrO3ZlcnRpY2FsLWFsaWduOmJhc2VsaW5lfXRleHRhcmVhe292ZXJmbG93OmF1dG99W3R5cGU9Y2hlY2tib3hdLFt0eXBlPXJhZGlvXXtib3gtc2l6aW5nOmJvcmRlci1ib3g7cGFkZGluZzowfVt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbntoZWlnaHQ6YXV0b31bdHlwZT1zZWFyY2hdey13ZWJraXQtYXBwZWFyYW5jZTp0ZXh0ZmllbGQ7b3V0bGluZS1vZmZzZXQ6LTJweH1bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb257LXdlYmtpdC1hcHBlYXJhbmNlOm5vbmV9Ojotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbnstd2Via2l0LWFwcGVhcmFuY2U6YnV0dG9uO2ZvbnQ6aW5oZXJpdH1kZXRhaWxzLG1lbnV7ZGlzcGxheTpibG9ja31zdW1tYXJ5e2Rpc3BsYXk6bGlzdC1pdGVtfWNhbnZhc3tkaXNwbGF5OmlubGluZS1ibG9ja310ZW1wbGF0ZXtkaXNwbGF5Om5vbmV9W2hpZGRlbl17ZGlzcGxheTpub25lfS5hbm5vdW5jZW1lbnR7YmFja2dyb3VuZDojMGUxNjJlO3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MCA1cHh9LmFubm91bmNlbWVudCBwe2NvbG9yOiM4NDg0ODR9LmFubm91bmNlbWVudCBhe2NvbG9yOiM4NDg0ODR9LmNvbnRhaW5lci1oZWFkZXJ7bWFyZ2luOjAgYXV0byAwIGF1dG87dGV4dC1hbGlnbjpjZW50ZXJ9LmNvbnRhaW5lci1oZWFkZXJfX2NvbnRlbnR7Y29sb3I6Izg0ODQ4NH0uY29udGFpbmVyLWJ1eWJveHt0ZXh0LWFsaWduOmNlbnRlcn0uY29udGFpbmVyLWJ1eWJveF9fY29udGVudC1idXlib3h7ZGlzcGxheTppbmxpbmUtYmxvY2s7dGV4dC1hbGlnbjpsZWZ0fS5jb250YWluZXItYnV5Ym94X19jb250ZW50LWhlYWRpbmd7Zm9udC1zaXplOjE1cHh9LmNvbnRhaW5lci1idXlib3hfX2NvbnRlbnQtdGV4dHtmb250LXNpemU6MTJweH0uY29udGFpbmVyLWJ1eWJveF9fY29udGVudC1saW5re2NvbG9yOiM5NDk0OTR9LmNvbnRhaW5lci1idXlib3hfX2NvbnRlbnQtbGluay0tbm8tZGVjb3JhdGlvbnt0ZXh0LWRlY29yYXRpb246bm9uZX0uY29udGFpbmVyLXNlYXJjaGJveHttYXJnaW4tYm90dG9tOjUwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9LmNvbnRhaW5lci1zZWFyY2hib3hfX2NvbnRlbnR7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6YXJpYWwsc2Fucy1zZXJpZjtmb250LXNpemU6MTJweH0uY29udGFpbmVyLXNlYXJjaGJveF9fc2VhcmNodGV4dC1sYWJlbHtkaXNwbGF5Om5vbmV9LmNvbnRhaW5lci1zZWFyY2hib3hfX2lucHV0LC5jb250YWluZXItc2VhcmNoYm94X19idXR0b257Ym9yZGVyOjAgbm9uZX0uY29udGFpbmVyLXNlYXJjaGJveF9fYnV0dG9ue2N1cnNvcjpwb2ludGVyO2ZvbnQtc2l6ZToxMnB4O21hcmdpbi1sZWZ0OjE1cHg7Ym9yZGVyOjAgbm9uZTtwYWRkaW5nOjJweCA4cHg7Y29sb3I6IzYzODI5Nn0uY29udGFpbmVyLWRpc2NsYWltZXJ7dGV4dC1hbGlnbjpjZW50ZXJ9LmNvbnRhaW5lci1kaXNjbGFpbWVyX19jb250ZW50e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5jb250YWluZXItZGlzY2xhaW1lcl9fY29udGVudC10ZXh0LC5jb250YWluZXItZGlzY2xhaW1lciBhe2ZvbnQtc2l6ZToxMHB4fS5jb250YWluZXItZGlzY2xhaW1lcl9fY29udGVudC10ZXh0e2NvbG9yOiM5NDk0OTR9LmNvbnRhaW5lci1kaXNjbGFpbWVyIGF7Y29sb3I6Izk0OTQ5NH0uY29udGFpbmVyLWltcHJpbnR7dGV4dC1hbGlnbjpjZW50ZXJ9LmNvbnRhaW5lci1pbXByaW50X19jb250ZW50e2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5jb250YWluZXItaW1wcmludF9fY29udGVudC10ZXh0LC5jb250YWluZXItaW1wcmludF9fY29udGVudC1saW5re2ZvbnQtc2l6ZToxMHB4O2NvbG9yOiM5NDk0OTR9LmNvbnRhaW5lci1jb250YWN0LXVze3RleHQtYWxpZ246Y2VudGVyfS5jb250YWluZXItY29udGFjdC11c19fY29udGVudHtkaXNwbGF5OmlubGluZS1ibG9ja30uY29udGFpbmVyLWNvbnRhY3QtdXNfX2NvbnRlbnQtdGV4dCwuY29udGFpbmVyLWNvbnRhY3QtdXNfX2NvbnRlbnQtbGlua3tmb250LXNpemU6MTBweDtjb2xvcjojOTQ5NDk0fS5jb250YWluZXItcHJpdmFjeVBvbGljeXt0ZXh0LWFsaWduOmNlbnRlcn0uY29udGFpbmVyLXByaXZhY3lQb2xpY3lfX2NvbnRlbnR7ZGlzcGxheTppbmxpbmUtYmxvY2t9LmNvbnRhaW5lci1wcml2YWN5UG9saWN5X19jb250ZW50LWxpbmt7Zm9udC1zaXplOjEwcHg7Y29sb3I6Izk0OTQ5NH0uY29udGFpbmVyLWNvb2tpZS1tZXNzYWdle3Bvc2l0aW9uOmZpeGVkO2JvdHRvbTowO3dpZHRoOjEwMCU7YmFja2dyb3VuZDojNWY1ZjVmO2ZvbnQtc2l6ZToxMnB4O3BhZGRpbmctdG9wOjE1cHg7cGFkZGluZy1ib3R0b206MTVweH0uY29udGFpbmVyLWNvb2tpZS1tZXNzYWdlX19jb250ZW50LXRleHR7Y29sb3I6I2ZmZn0uY29udGFpbmVyLWNvb2tpZS1tZXNzYWdlX19jb250ZW50LXRleHR7bWFyZ2luLWxlZnQ6MTUlO21hcmdpbi1yaWdodDoxNSV9LmNvbnRhaW5lci1jb29raWUtbWVzc2FnZV9fY29udGVudC1pbnRlcmFjdGl2ZXt0ZXh0LWFsaWduOmxlZnQ7bWFyZ2luOjAgMTVweDtmb250LXNpemU6MTBweH0uY29udGFpbmVyLWNvb2tpZS1tZXNzYWdlX19jb250ZW50LWludGVyYWN0aXZlLWhlYWRlciwuY29udGFpbmVyLWNvb2tpZS1tZXNzYWdlX19jb250ZW50LWludGVyYWN0aXZlLXRleHR7Y29sb3I6I2ZmZn0uY29udGFpbmVyLWNvb2tpZS1tZXNzYWdlX19jb250ZW50LWludGVyYWN0aXZlLWhlYWRlcntmb250LXNpemU6c21hbGx9LmNvbnRhaW5lci1jb29raWUtbWVzc2FnZV9fY29udGVudC1pbnRlcmFjdGl2ZS10ZXh0e21hcmdpbi10b3A6MTBweDttYXJnaW4tcmlnaHQ6MHB4O21hcmdpbi1ib3R0b206NXB4O21hcmdpbi1sZWZ0OjBweDtmb250LXNpemU6bGFyZ2VyfS5jb250YWluZXItY29va2llLW1lc3NhZ2UgYXtjb2xvcjojZmZmfS5jb29raWUtbW9kYWwtd2luZG93e3Bvc2l0aW9uOmZpeGVkO2JhY2tncm91bmQtY29sb3I6cmdiYSgyMDAsMjAwLDIwMCwuNzUpO3RvcDowO3JpZ2h0OjA7Ym90dG9tOjA7bGVmdDowOy13ZWJraXQtdHJhbnNpdGlvbjphbGwgLjNzOy1tb3otdHJhbnNpdGlvbjphbGwgLjNzO3RyYW5zaXRpb246YWxsIC4zczt0ZXh0LWFsaWduOmNlbnRlcn0uY29va2llLW1vZGFsLXdpbmRvd19fY29udGVudC1oZWFkZXJ7Zm9udC1zaXplOjE1MCU7bWFyZ2luOjAgMCAxNXB4fS5jb29raWUtbW9kYWwtd2luZG93X19jb250ZW50e3RleHQtYWxpZ246aW5pdGlhbDttYXJnaW46MTAlIGF1dG87cGFkZGluZzo0MHB4O2JhY2tncm91bmQ6I2ZmZjtkaXNwbGF5OmlubGluZS1ibG9jazttYXgtd2lkdGg6NTUwcHh9LmNvb2tpZS1tb2RhbC13aW5kb3dfX2NvbnRlbnQtdGV4dHtsaW5lLWhlaWdodDoxLjVlbX0uY29va2llLW1vZGFsLXdpbmRvd19fY2xvc2V7d2lkdGg6MTAwJTttYXJnaW46MH0uY29va2llLW1vZGFsLXdpbmRvd19fY29udGVudC1ib2R5IHRhYmxle3dpZHRoOjEwMCU7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlfS5jb29raWUtbW9kYWwtd2luZG93X19jb250ZW50LWJvZHkgdGFibGUgdGR7cGFkZGluZy1sZWZ0OjE1cHh9LmNvb2tpZS1tb2RhbC13aW5kb3dfX2NvbnRlbnQtbmVjZXNzYXJ5LWNvb2tpZXMtcm93e2JhY2tncm91bmQtY29sb3I6I2RlZTFlM30uZGlzYWJsZWR7ZGlzcGxheTpub25lO3otaW5kZXg6LTk5OX0uYnRue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2JvcmRlci1zdHlsZTpzb2xpZDtib3JkZXItcmFkaXVzOjVweDtwYWRkaW5nOjE1cHggMjVweDt0ZXh0LWFsaWduOmNlbnRlcjt0ZXh0LWRlY29yYXRpb246bm9uZTtjdXJzb3I6cG9pbnRlcjttYXJnaW46NXB4O3RyYW5zaXRpb246LjNzfS5idG4tLXN1Y2Nlc3N7YmFja2dyb3VuZC1jb2xvcjojMjE4ODM4O2JvcmRlci1jb2xvcjojMjE4ODM4O2NvbG9yOiNmZmY7Zm9udC1zaXplOngtbGFyZ2V9LmJ0bi0tc3VjY2Vzczpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiMxYTZiMmM7Ym9yZGVyLWNvbG9yOiMxYTZiMmM7Y29sb3I6I2ZmZjtmb250LXNpemU6eC1sYXJnZX0uYnRuLS1zdWNjZXNzLXNte2JhY2tncm91bmQtY29sb3I6IzIxODgzODtib3JkZXItY29sb3I6IzIxODgzODtjb2xvcjojZmZmO2ZvbnQtc2l6ZTppbml0aWFsfS5idG4tLXN1Y2Nlc3Mtc206aG92ZXJ7YmFja2dyb3VuZC1jb2xvcjojMWE2YjJjO2JvcmRlci1jb2xvcjojMWE2YjJjO2NvbG9yOiNmZmY7Zm9udC1zaXplOmluaXRpYWx9LmJ0bi0tc2Vjb25kYXJ5e2JhY2tncm91bmQtY29sb3I6IzhjOTU5Yztib3JkZXItY29sb3I6IzhjOTU5Yztjb2xvcjojZmZmO2ZvbnQtc2l6ZTptZWRpdW19LmJ0bi0tc2Vjb25kYXJ5OmhvdmVye2JhY2tncm91bmQtY29sb3I6IzcyN2M4Mztib3JkZXItY29sb3I6IzcyN2M4Mztjb2xvcjojZmZmO2ZvbnQtc2l6ZTptZWRpdW19LmJ0bi0tc2Vjb25kYXJ5LXNte2JhY2tncm91bmQtY29sb3I6IzhjOTU5Yztib3JkZXItY29sb3I6IzhjOTU5Yztjb2xvcjojZmZmO2ZvbnQtc2l6ZTppbml0aWFsfS5idG4tLXNlY29uZGFyeS1zbTpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiM3MjdjODM7Ym9yZGVyLWNvbG9yOiM3MjdjODM7Y29sb3I6I2ZmZjtmb250LXNpemU6aW5pdGlhbH0uc3dpdGNoIGlucHV0e29wYWNpdHk6MDt3aWR0aDowO2hlaWdodDowfS5zd2l0Y2h7cG9zaXRpb246cmVsYXRpdmU7ZGlzcGxheTppbmxpbmUtYmxvY2s7d2lkdGg6NjBweDtoZWlnaHQ6MzRweH0uc3dpdGNoX19zbGlkZXJ7cG9zaXRpb246YWJzb2x1dGU7Y3Vyc29yOnBvaW50ZXI7dG9wOjA7bGVmdDowO3JpZ2h0OjA7Ym90dG9tOjA7YmFja2dyb3VuZC1jb2xvcjojNWE2MjY4Oy13ZWJraXQtdHJhbnNpdGlvbjouNHM7dHJhbnNpdGlvbjouNHN9LnN3aXRjaF9fc2xpZGVyOmJlZm9yZXtwb3NpdGlvbjphYnNvbHV0ZTtjb250ZW50OiIiO2hlaWdodDoyNnB4O3dpZHRoOjI2cHg7bGVmdDo0cHg7Ym90dG9tOjRweDtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7LXdlYmtpdC10cmFuc2l0aW9uOi40czt0cmFuc2l0aW9uOi40c30uc3dpdGNoX19zbGlkZXItLXJvdW5ke2JvcmRlci1yYWRpdXM6MzRweH0uc3dpdGNoX19zbGlkZXItLXJvdW5kOmJlZm9yZXtib3JkZXItcmFkaXVzOjUwJX1pbnB1dDpjaGVja2VkKy5zd2l0Y2hfX3NsaWRlcntiYWNrZ3JvdW5kLWNvbG9yOiMwMDdiZmZ9aW5wdXQ6Zm9jdXMrLnN3aXRjaF9fc2xpZGVye2JveC1zaGFkb3c6MCAwIDFweCAjMDA3YmZmfWlucHV0OmNoZWNrZWQrLnN3aXRjaF9fc2xpZGVyOmJlZm9yZXstd2Via2l0LXRyYW5zZm9ybTp0cmFuc2xhdGVYKDI2cHgpOy1tcy10cmFuc2Zvcm06dHJhbnNsYXRlWCgyNnB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgyNnB4KX1ib2R5e2JhY2tncm91bmQtY29sb3I6IzBlMTYyZTtmb250LWZhbWlseTpBcmlhbCxIZWx2ZXRpY2EsVmVyZGFuYSwiTHVjaWRhIEdyYW5kZSIsc2Fucy1zZXJpZn1ib2R5LmNvb2tpZS1tZXNzYWdlLWVuYWJsZWR7cGFkZGluZy1ib3R0b206MzAwcHh9LmNvbnRhaW5lci1mb290ZXJ7cGFkZGluZy10b3A6MjBweDtwYWRkaW5nLWxlZnQ6NSU7cGFkZGluZy1yaWdodDo1JTtwYWRkaW5nLWJvdHRvbToxMHB4fS5jb250YWluZXItY29udGVudHt0ZXh0LWFsaWduOmNlbnRlcjtkaXNwbGF5OmZsZXg7cG9zaXRpb246cmVsYXRpdmU7bWF4LXdpZHRoOjE3MDBweDttYXJnaW46MCBhdXRvICFpbXBvcnRhbnR9LmNvbnRhaW5lci1jb250ZW50X19jb250YWluZXItcmVsYXRlZGxpbmtzLC5jb250YWluZXItY29udGVudF9fY29udGFpbmVyLWFkcywuY29udGFpbmVyLWNvbnRlbnRfX3dlYmFyY2hpdmV7d2lkdGg6MzAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS5jb250YWluZXItY29udGVudF9fY29udGFpbmVyLXJlbGF0ZWRsaW5rc3ttYXJnaW4tdG9wOjQ3cHg7ZmxleC1ncm93OjE7d2lkdGg6NjBweH0uY29udGFpbmVyLWNvbnRlbnRfX2NvbnRhaW5lci1hZHN7bWFyZ2luLXRvcDoyLjUlfS5jb250YWluZXItY29udGVudF9fY29udGFpbmVyLWFkcy0tdHdvdHttYXJnaW4tdG9wOjYuNSV9LmNvbnRhaW5lci1jb250ZW50X193ZWJhcmNoaXZle21hcmdpbi10b3A6NC41JX0uY29udGFpbmVyLWNvbnRlbnRfX2hlYWRlcntjb2xvcjojODQ4NDg0O2ZvbnQtc2l6ZToxNXB4O21hcmdpbjowfS5jb250YWluZXItY29udGVudF9fbGVmdHtiYWNrZ3JvdW5kOnVybCgiLy9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9iZy9hcnJvd3MucG5nIikgIzBlMTYyZSBuby1yZXBlYXQgdG9wIGxlZnQ7YmFja2dyb3VuZC1zaXplOjk0JSA2NDBweDtmbGV4LWdyb3c6MTtwb3NpdGlvbjppbmhlcml0O3RvcDo5MHB4O292ZXJmbG93OmhpZGRlbjt6LWluZGV4Oi0xfS5jb250YWluZXItY29udGVudF9fcmlnaHR7YmFja2dyb3VuZDp1cmwoIi8vaW1nLnNlZG9wYXJraW5nLmNvbS90ZW1wbGF0ZXMvYmcvYXJyb3dzLnBuZyIpICMwZTE2MmUgbm8tcmVwZWF0IHRvcCBsZWZ0O2JhY2tncm91bmQtc2l6ZTo5NCUgNjQwcHg7ZmxleC1ncm93OjE7cG9zaXRpb246aW5oZXJpdDt0b3A6OTBweDtvdmVyZmxvdzpoaWRkZW47LW1vei10cmFuc2Zvcm06c2NhbGVYKC0xKTstby10cmFuc2Zvcm06c2NhbGVYKC0xKTstd2Via2l0LXRyYW5zZm9ybTpzY2FsZVgoLTEpO3RyYW5zZm9ybTpzY2FsZVgoLTEpO3otaW5kZXg6LTF9LmNvbnRhaW5lci1jb250ZW50LS1scHttaW4taGVpZ2h0OjcyMHB4fS5jb250YWluZXItY29udGVudC0tcnB7d2lkdGg6MTAwJTttaW4taGVpZ2h0OjgyMHB4O21hcmdpbjowfS5jb250YWluZXItY29udGVudC0tdHdvdHttaW4taGVpZ2h0OjcyMHB4fS5jb250YWluZXItY29udGVudC0tdHdvdCAuY29udGFpbmVyLWNvbnRlbnRfX2NvbnRhaW5lci1hZHMtLXR3b3R7bWFyZ2luOjB9LnR3by10aWVyLWFkcy1saXN0e3BhZGRpbmc6MCAwIDEuNmVtIDB9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnR7bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MTBweCAwIDVweCAwO2Rpc3BsYXk6aW5saW5lLWJsb2NrfS50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LWltYWdle2NvbnRlbnQ6dXJsKCIvL2ltZy5zZWRvcGFya2luZy5jb20vdGVtcGxhdGVzL2ltYWdlcy9idWxsZXRfanVzdGFkcy5naWYiKTtmbG9hdDpsZWZ0O3BhZGRpbmctdG9wOjMycHh9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtY29udGVudHtkaXNwbGF5OmlubGluZS1ibG9ja30udHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC1oZWFkZXItbGlua3tmb250LXNpemU6MzdweDtmb250LXdlaWdodDpib2xkO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Y29sb3I6IzlmZDgwMX0udHdvLXRpZXItYWRzLWxpc3RfX2xpc3QtZWxlbWVudC10ZXh0e3BhZGRpbmc6M3B4IDAgNnB4IDA7bWFyZ2luOi4xMWVtIDA7bGluZS1oZWlnaHQ6MThweDtjb2xvcjojZmZmfS50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LWxpbmt7Zm9udC1zaXplOjFlbTt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO2NvbG9yOiM5ZmQ4MDF9LnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGluazpsaW5rLC50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LWxpbms6dmlzaXRlZHt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfS50d28tdGllci1hZHMtbGlzdF9fbGlzdC1lbGVtZW50LWxpbms6aG92ZXIsLnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGluazphY3RpdmUsLnR3by10aWVyLWFkcy1saXN0X19saXN0LWVsZW1lbnQtbGluazpmb2N1c3t0ZXh0LWRlY29yYXRpb246bm9uZX0ud2ViYXJjaGl2ZS1ibG9ja3t0ZXh0LWFsaWduOmNlbnRlcn0ud2ViYXJjaGl2ZS1ibG9ja19faGVhZGVyLWxpbmt7Y29sb3I6IzlmZDgwMTtmb250LXNpemU6MjBweH0ud2ViYXJjaGl2ZS1ibG9ja19fbGlzdHtwYWRkaW5nOjB9LndlYmFyY2hpdmUtYmxvY2tfX2xpc3QtZWxlbWVudHt3b3JkLXdyYXA6YnJlYWstd29yZDtsaXN0LXN0eWxlOm5vbmV9LndlYmFyY2hpdmUtYmxvY2tfX2xpc3QtZWxlbWVudC1saW5re2xpbmUtaGVpZ2h0OjMwcHg7Zm9udC1zaXplOjIwcHg7Y29sb3I6IzlmZDgwMX0ud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50LWxpbms6bGluaywud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50LWxpbms6dmlzaXRlZHt0ZXh0LWRlY29yYXRpb246bm9uZX0ud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50LWxpbms6aG92ZXIsLndlYmFyY2hpdmUtYmxvY2tfX2xpc3QtZWxlbWVudC1saW5rOmFjdGl2ZSwud2ViYXJjaGl2ZS1ibG9ja19fbGlzdC1lbGVtZW50LWxpbms6Zm9jdXN7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1ib2R5e21hcmdpbjowfS5kb21haW4gaDF7Zm9udC1zaXplOjIuMmVtO2ZvbnQtd2VpZ2h0Om5vcm1hbDt0ZXh0LWRlY29yYXRpb246bm9uZTt0ZXh0LXRyYW5zZm9ybTpsb3dlcmNhc2U7Y29sb3I6Izk0OTQ5NH0jY29udGFpbmVyLWRvbWFpbntkaXNwbGF5OmJsb2NrO3RleHQtYWxpZ246Y2VudGVyfS5uYW1lLXNpbG8tY29udGFpbmVye21heC13aWR0aDoxMDI4cHg7bWFyZ2luOmF1dG99Lm5hbWUtc2lsby1iYW5uZXJ7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNSwgMWZyKTtncmlkLXRlbXBsYXRlLXJvd3M6MWZyO2dyaWQtY29sdW1uLWdhcDowcHg7Z3JpZC1yb3ctZ2FwOjBweDtiYWNrZ3JvdW5kOiNmZmY7dGV4dC1hbGlnbjpsZWZ0O3BhZGRpbmc6MTBweDtjb2xvcjojOTQ5NDk0O2ZvbnQtc2l6ZTouOWVtfS5uYW1lLXNpbG8tYmFubmVyIGF7Y29sb3I6Izk0OTQ5NH0ucmlnaHQtY29udGFpbmVye2dyaWQtYXJlYToxLzIvMi82fS5sZWZ0LWNvbnRhaW5lcntiYWNrZ3JvdW5kLWltYWdlOnVybCgiaHR0cHM6Ly9pbWcuc2Vkb3BhcmtpbmcuY29tL3RlbXBsYXRlcy9iZy9OYW1lU2lsb0xvZ28ucG5nIik7YmFja2dyb3VuZC1zaXplOjl2dztiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7bWFyZ2luLXJpZ2h0OjEwcHg7Z3JpZC1hcmVhOjEvMS8yLzJ9CgogICAgPC9zdHlsZT48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgdmFyIGR0byA9IHsidWlPcHRpbWl6ZSI6ZmFsc2UsInNpbmdsZURvbWFpbk5hbWUiOiJva2F5dGkucGljcyIsImRvbWFpbk5hbWUiOiJva2F5dGkucGljcyIsImRvbWFpblByaWNlIjowLCJkb21haW5DdXJyZW5jeSI6IiIsImFkdWx0RmxhZyI6ZmFsc2UsInB1IjoiLy9va2F5dGkucGljcyIsImRuc2giOnRydWUsImRwc2giOmZhbHNlLCJ0b1NlbGwiOmZhbHNlLCJjZG5Ib3N0IjoiaW1nLnNlZG9wYXJraW5nLmNvbSIsImFkYmxvY2trZXkiOiIgZGF0YS1hZGJsb2Nra2V5PU1Gd3dEUVlKS29aSWh2Y05BUUVCQlFBRFN3QXdTQUpCQU5ueWxXdzJ2TFk0aFVuOXcwNnpRS2JoS0JmdmpGVUNzZEZsYjZUZFFoeGI5UlhXWHVJNHQzMWMrbzhmWU92L3M4cTFMR1BnYTNERTFML3RIVTRMRU5NQ0F3RUFBUT09X2pHaVBaWnZGeExocVdTdG53V0JDTklyMzZIQStSZmNKaUQweVI2Q1hVcnBPWTZteFJSNWhkZUJXalBNRDBoWEVucmp3dEljZ29CTjd1RmpYNXlVc25nPT0iLCJ0aWQiOjMxODAsImJ1eWJveCI6ZmFsc2UsImJ1eWJveFRvcGljIjp0cnVlLCJkaXNjbGFpbWVyIjp0cnVlLCJpbXByaW50IjpmYWxzZSwic2VhcmNoYm94Ijp0cnVlLCJub0ZvbGxvdyI6ZmFsc2UsInNsc2giOmZhbHNlLCJwcHNoIjp0cnVlLCJkbmhsc2giOnRydWUsInRvU2VsbFVybCI6IiIsInRvU2VsbFRleHQiOiIiLCJzZWFyY2hib3hQYXRoIjoiLy9va2F5dGkucGljcy9wYXJraW5nLnBocCIsInNlYXJjaFBhcmFtcyI6eyJzZXMiOiJZM0psUFRFM016QXpOREU1TURBbWRHTnBaRDF2YTJGNWRHa3VjR2xqY3pZM01qSmxZekJqTVRFeU9EVTNMalV3TnpVeU1EYzFKblJoYzJzOWMyVmhjbU5vSm1SdmJXRnBiajF2YTJGNWRHa3VjR2xqY3laaFgybGtQVEVtYzJWemMybHZiajFSVkVOVGRYTkpWRGxqTVZWU2FreGFVRlF5YWlaMGNtRmphM0YxWlhKNVBURT0ifSwiaW1wcmludFVybCI6ZmFsc2UsImNvbnRhY3RVc1VybCI6ZmFsc2UsImNvbnRlbnRUeXBlIjo1LCJ0IjoiY29udGVudCIsInB1cyI6InNlcz1ZM0psUFRFM016QXpOREU1TURBbWRHTnBaRDF2YTJGNWRHa3VjR2xqY3pZM01qSmxZekJqTVRFeU9EVTNMalV3TnpVeU1EYzFKblJoYzJzOWMyVmhjbU5vSm1SdmJXRnBiajF2YTJGNWRHa3VjR2xqY3laaFgybGtQVE1tYzJWemMybHZiajFSVkVOVGRYTkpWRGxqTVZWU2FreGFVRlF5YWc9PSIsInBvc3RBY3Rpb25QYXJhbWV0ZXIiOnsiZmVlZGJhY2siOiIvc2VhcmNoL2ZiLnBocD9zZXM9IiwidG9rZW4iOnsicGFnZUxvYWRlZCI6IjA2NWFkNjQxNjc4OGIyNDgwMTczMDM0MTkwMGQ2OTJmODE0NmIxNTg4MCJ9fSwiZ0ZlZWRTRVMiOnsiZGVmYXVsdCI6Im9nY200cVktc3Mwc3RncGc4OXhjczlHMmhpVURTOVpLZlJ3OTlkQ3pvdzNwSDZndGs2WkVZR3Y1c0dQSDBXNlc0N0dTbVpFUXQ4RGV0S2Y1cV9Nb0JabjVfWlJUZV9yUlNWYXhLaktXRGFBcWJYbGlRTGhXQjNwTmdZUk9RZ2FLRjFlWHRWN3dZd0hTZS1XRzNFWlo5VW1VS2FVd25ITzZSX1NWeTlpOGY2N3FvT0tQTGFSWkJRNXoySDdZc29pSnRHR1VaTlBzYjFIaDNFVkVKTUwxVi1MUm80WWZuOE9zbDdjSkNfcmMxY2JMai1rMEtickNmSkROQ3JpT2ZJcHk0STFSVEg0SkUyckp3UFRDbldGYnhiZ1h2OFNPY2MyX2l4SlEyN3dzT0NrQU1xemNIM2JpYWc4aVpkUFZzVklJSExBYkdoaVNDWVNDLVR4NFRzTWhTOVl0allyTlpxdVZDOWRFU2Y3N0xLTHdsMmdsRk9paW4yekw5ZWpIaFA2LWhyQnJjRFRieFhtOVUwejEteFRGdDYzaEwtRko1bnE2TFh1OHRiM1JfQ3c0T0lkdmJIMVZHbElNSHlUYjRrOWhseGhxb3VIOGo1M01QTHlvdjNQdFNoc1l4X3h2eVZ4eDVxM1hXWVRVNkI3dFZ3TExzNzd0UFVrS2gycFRidXQzMTVOUzdrMFJZNDhzNzh1Vi14QXVGcWlYNUZWVUhObFBWeEZlTHNyUGxfU2pPUS1PWGlmalAzLVpJWjVtLVRnWTdFT0Jqam4tZVhRVGVVUEJ2TlprdlRqZERnUDZXNnlsdjh2ZFFmblJWMXUzQW53dDFLRW43TSIsImFsdGVybmF0ZSI6IiJ9LCJ2aXNpdG9yVmlld0lkSnNBZHMiOiJNREUwTW1SaVpHUmpPRFUxTUdVNU5EWmxNRFU0WXpSbE1tWTRZemxpWVRRSk1RbHZhMkY1ZEdrdWNHbGpjelkzTWpKbFl6QmpNVEV5T0RVM0xqVXdOelV5TURjMUNXOXJZWGwwYVM1d2FXTnpOamN5TW1Wak1HTXhNVEppTlRjdU1EUXdNVFExTlRrSk1UY3pNRE0wTVRrd01Ba3ciLCJqc1BhcmFtZXRlciI6eyJyZXF1ZXN0Ijp7InB1YklkIjoiZHAtc2Vkbzg1XzNwaCIsImRvbWFpblJlZ2lzdHJhbnQiOiJhcy1kcmlkLTIyNDkzMDExNzU4NDQ3MzMiLCJrdyI6IiIsImFkdGVzdCI6Im9mZiIsImFkc2FmZSI6ImxvdyIsInVpT3B0aW1pemUiOiJ0cnVlIiwiaGwiOiJmciIsIm5vQWRzIjo1LCJpdnQiOmZhbHNlLCJjaGFubmVsIjoiZXhwLTAwNTEsYXV4YS1jb250cm9sLTEsMzU5NjE1MTkifX0sImFkcyI6W10sImFkdiI6MSwiYWR2dCI6MSwicmxzIjpbXSwibnVtYmVyUmVsYXRlZExpbmtzIjozLCJ3YVVybCI6Ii9zZWFyY2gvcG9ydGFsLnBocD9sPW9nY200cVktc3Mwc3RncGc4OXhjczlHMmhpVURTOVpLZlJ3OTlkQ3pvdzNwSDZndGs2WkVZR3Y1c0dQSDBXNlc0N0dTbVpFUXQ4RGV0S2Y1cV9Nb0JabjVfWlJUZV9yUlNWYXhLaktXRGFBcWJYbGlRTGhXQjNwTmdZUk9RZ2FLRjFlWHRWN3dZd0hTZS1XRzNFWlo5VW1VS2FVd25ITzZSX1NWeTlpOGY2N3FvT0tQTGFSWkJRNXoySDdZc29pSnRHR1VaTlBzYjFIaDNFVkVKTUwxVi1MUm80WWZuOE9zbDdjSkNfcmMxY2JMai1rMEtickNmSkROQ3JpT2ZJcHk0STFSVEg0SkUyckp3UFRDbldGYnhiZ1h2OFNPY2MyX2l4SlEyN3dzT0NrQU1xemNIM2JpYWc4aVpkUFZzVklJSExBYkdoaVNDWVNDLVR4NFRzTWhTOVl0allyTlpxdVZDOWRFU2Y3N0xLTHdsMmdsRk9paW4yekw5ZWpIaFA2LWhyQnJjRFRieFhtOVUwejEteFRGdDYzaEwtRko1bnE2TFh1OHRiM1JfQ3c0T0lkdmJIMVZHbElNSHlUYjRrOWhseGhxb3VIOGo1M01QTHlvdjNQdFNoc1l4X3h2eVZ4eDVxM1hXWVRVNkI3dFZ3TExzNzd0UFVrS2gycFRidXQzMTVOUzdrMFJZNDhzNzh1Vi14QXVGcWlYNUZWVUhObFBWeEZlTHNyUGxfU2pPUS1PWGlmalAzLVpJWjVtLVRnWTdFT0Jqam4tZVhRVGVVUEJ2TlprdlRqZERnUDZXNnlsdjh2ZFFmblJWMXUzQW53dDFLRW43TSIsInRzYyI6dHJ1ZSwidHNjUXMiOiJzZXM9b2djLTlqdlNyYU5nczJRcFBUTC1aVXpWdnIxVlJsZ3Q1NmN1R3V5b3I3ZDN4QTdnSGlOeXpyU05pamFRRU9WclBDcVF5cXFkMWw5WTQwc1h0U09NcWFqV0JtUFZ6OTdKSl8zOTY0OXYxM2lMWi11MExSYWR5MjJiRTM0MFg5a2x2UnRSd0JVUWhZMW4yNTRvelBKTE56enBiQW1odVBXQ25JOFZ3T2hHNF9CRzZMS0xLZEhGXzNKNUtGZ3ZTTS03eVhkV2JCWmwwZHR4b3ZETHFvU1JaSzNENFRvTlBTT0M1YXhVZUJOLVhkV2lBOVJOZjJkcGkxMkFmTFI1b2dvY1pkRDRCOWtueS11dTIwcm5qNThJVGtsYVhrRjFlVVZvYTMxOEN5ajNuS3BGZU9SOUxIV1h1UHVvQnFKVVpGcUJRcmRCaFplVVRWMHo2a2t6NEx1MTRaTWtUeFh5MVdmUkp4S2kyT3o0VzRPbkNzRDV6TzFLWEpsNDB1bVZfRSZjdj0yIiwibGFuZyI6ImZyIiwibWFpZCI6MTIsInNlZG9QYXJraW5nVXJsIjoiaHR0cHM6Ly93d3cuc2Vkby5jb20vc2VydmljZXMvcGFya2luZy5waHAzIiwiZGJnIjpmYWxzZSwic2lnbmVkTGluayI6ImwiLCJ2aXNpdG9yVmlld0lkIjoidiIsInJlZ2lzdHJhcl9wYXJhbXMiOltdLCJjbGlja1RyYWNrIjpbXSwiY29va2llTWVzc2FnZSI6ZmFsc2UsImNvb2tpZU1lc3NhZ2VJbnRlcmFjdGl2ZSI6ZmFsc2UsImV4ZWN1dGVUcmFja2luZ1BpeGVscyI6ZmFsc2UsImNtcEJhbm5lciI6ZmFsc2UsImNtcEJhbm5lclRoZW1lIjoiNjViMjhmNzFhY2YyMzdlMjEzMGRmMWZhIiwiYmFubmVyVHlwZXMiOltdLCJjbGlja0NvbnRyb2xIb3N0IjoiY2Muc2Vkb3BhcmtpbmcuY29tIn07CiAgICA8L3NjcmlwdD48L2hlYWQ+PGJvZHkgPjxkaXYgaWQ9ImNvbnRhaW5lci1oZWFkZXIiPjxkaXYgaWQ9ImNvbnRhaW5lci1kb21haW4iPjxkaXYgY2xhc3M9ImRvbWFpbiIgaWQ9ImRuLWRlZmF1bHQiPjxoMT5va2F5dGkucGljczwvaDE+PC9kaXY+PC9kaXY+PC9kaXY+PGRpdiBpZD0iY29udGFpbmVyLWNvbnRlbnQiIGNsYXNzPSJjb250YWluZXItY29udGVudCBjb250YWluZXItY29udGVudC0tbHAiPjxkaXYgY2xhc3M9ImNvbnRhaW5lci1jb250ZW50X19sZWZ0Ij48L2Rpdj48ZGl2IGNsYXNzPSJjb250YWluZXItY29udGVudF9fY29udGFpbmVyLXJlbGF0ZWRsaW5rcyIgaWQ9ImNvbnRhaW5lci1yZWxhdGVkbGlua3MiPjxkaXYgaWQ9InJiLWRlZmF1bHQiPjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbnRhaW5lci1jb250ZW50X19yaWdodCI+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0iY29udGFpbmVyLXNlYXJjaGJveCIgaWQ9ImNvbnRhaW5lci1zZWFyY2hib3giPjxkaXYgY2xhc3M9ImNvbnRhaW5lci1zZWFyY2hib3hfX2NvbnRlbnQiIGlkPSJzYi1kZWZhdWx0Ij48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJuYW1lLXNpbG8tY29udGFpbmVyIj48ZGl2IGNsYXNzPSJuYW1lLXNpbG8tYmFubmVyIj48ZGl2IGNsYXNzPSJyaWdodC1jb250YWluZXIiPlRoaXMgZG9tYWluIGlzIHJlZ2lzdGVyZWQgYXQgTmFtZVNpbG8uIElmIHlvdSBhcmUgdGhlIG93bmVyLCBzdGFydCBhZG1pbmlzdGVyaW5nIGl0IGF0IDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5hbWVzaWxvLmNvbSI+TmFtZVNpbG8uY29tPC9hPi4gSWYgdGhpcyBpcyBub3QgeW91ciBkb21haW4sIDxhIGhyZWY9Imh0dHBzOi8vd3d3Lm5hbWVzaWxvLmNvbS9kb21haW4vc2VhcmNoLWRvbWFpbnM/cXVlcnk9b2theXRpLnBpY3MiPmZpbmQgc2ltaWxhciBuYW1lczwvYT4gdGhhdCB3b3JrIGZvciB5b3UuPC9kaXY+PGRpdiBjbGFzcz0ibGVmdC1jb250YWluZXIiPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbnRhaW5lci1idXlib3giIGlkPSJjb250YWluZXItYnV5Ym94Ij48L2Rpdj48ZGl2IGNsYXNzPSJjb250YWluZXItZm9vdGVyIiBpZD0iY29udGFpbmVyLWZvb3RlciI+PGRpdiBjbGFzcz0iY29udGFpbmVyLWRpc2NsYWltZXIiIGlkPSJjb250YWluZXItZGlzY2xhaW1lciI+PGRpdiBjbGFzcz0iY29udGFpbmVyLWRpc2NsYWltZXJfX2NvbnRlbnQiPjxwIGNsYXNzPSJjb250YWluZXItZGlzY2xhaW1lcl9fY29udGVudC10ZXh0Ij4KICAgICAgICBUaGlzIHdlYnBhZ2Ugd2FzIGdlbmVyYXRlZCBieSB0aGUgZG9tYWluIG93bmVyIHVzaW5nIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnNlZG8uY29tL3NlcnZpY2VzL3BhcmtpbmcucGhwMyI+U2VkbyBEb21haW4gUGFya2luZzwvYT4uIERpc2NsYWltZXI6IFNlZG8gbWFpbnRhaW5zIG5vIHJlbGF0aW9uc2hpcCB3aXRoIHRoaXJkIHBhcnR5IGFkdmVydGlzZXJzLiBSZWZlcmVuY2UgdG8gYW55IHNwZWNpZmljIHNlcnZpY2Ugb3IgdHJhZGUgbWFyayBpcyBub3QgY29udHJvbGxlZCBieSBTZWRvIG5vciBkb2VzIGl0IGNvbnN0aXR1dGUgb3IgaW1wbHkgaXRzIGFzc29jaWF0aW9uLCBlbmRvcnNlbWVudCBvciByZWNvbW1lbmRhdGlvbi4KICAgIDwvcD48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJjb250YWluZXItaW1wcmludCIgaWQ9ImNvbnRhaW5lci1pbXByaW50Ij48L2Rpdj48ZGl2IGNsYXNzPSJjb250YWluZXItcHJpdmFjeVBvbGljeSIgaWQ9ImNvbnRhaW5lci1wcml2YWN5UG9saWN5Ij48ZGl2IGNsYXNzPSJjb250YWluZXItcHJpdmFjeVBvbGljeV9fY29udGVudCI+PGRpdiBpZD0icHJpdmFjeS1wb2xpY3ktbGluayI+PGEKICAgICAgICAgICAgICAgIGNsYXNzPSJjb250YWluZXItcHJpdmFjeVBvbGljeV9fY29udGVudC1saW5rIgogICAgICAgICAgICAgICAgaHJlZj0iIyIKICAgICAgICAgICAgICAgIG9uY2xpY2s9IndpbmRvdy5vcGVuKAogICAgICAgICAgICAgICAgICAgICAgICAnLy9zZWRvcGFya2luZy5jb20vcHJpdmFjeS1wb2xpY3kvZW4vaW5kZXguaHRtbCcsCiAgICAgICAgICAgICAgICAgICAgICAgICdwcml2YWN5LXBvbGljeScsJ3dpZHRoPTYwMCxoZWlnaHQ9NDAwJyk7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsiPgogICAgICAgICAgICBDb25maWRlbnRpYWxpdMOpCiAgICAgICAgPC9hPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNvbnRhaW5lci1jb250YWN0LXVzIiBpZD0iY29udGFpbmVyLWNvbnRhY3QtdXMiPjwvZGl2PjwvZGl2PjwhLS0gQ0FGIC0tPjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Ii8vd3d3Lmdvb2dsZS5jb20vYWRzZW5zZS9kb21haW5zL2NhZi5qcz9hYnA9MSZhbXA7WUVyM0NpRjZBdVFxTHNwTm9ieWFsM2ppMFN5cXhCTG49dHJ1ZSI+PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogICAgICAgICAgICAgICAgdmFyIGNhZlJMPXtjb250YWluZXI6InJiLWRlZmF1bHQiLHR5cGU6InJlbGF0ZWRzZWFyY2giLHN0eWxlSWQ6OTMzMDI0NDM4MCxudW1iZXI6M307aWYoImFkTG9hZGVkImluIGR0by5wb3N0QWN0aW9uUGFyYW1ldGVyLnRva2VuJiZkdG8ucG9zdEFjdGlvblBhcmFtZXRlci50b2tlbi5hZExvYWRlZCl7Y2FmUkwuYWRMb2FkZWRDYWxsYmFjaz1jYWxsYmFja0FkTG9hZGVkfXZhciBjYWZFbD1be21ldGE6e2xheW91dFR5cGVzOlsxXX0sY2FmOntjb250YWluZXI6ImFiLWRlZmF1bHQiLHR5cGU6ImFkcyIsbGluZXM6MyxsaW5rVGFyZ2V0OiJfYmxhbmsiLHN0eWxlSWQ6OTMzMDI0NDM4MH19LHttZXRhOntsYXlvdXRUeXBlczpbNV19LGNhZjpjYWZSTH0se21ldGE6e2xheW91dFR5cGVzOlsxLDIsMyw1XX0sY2FmOntjb250YWluZXI6InNiLWRlZmF1bHQiLHR5cGU6InNlYXJjaGJveCIsaGlkZVNlYXJjaElucHV0Qm9yZGVyOnRydWUsaGlkZVNlYXJjaEJ1dHRvbkJvcmRlcjp0cnVlLGNvbG9yU2VhcmNoQnV0dG9uVGV4dDoiIzYzODI5NiIsZm9udFNpemVTZWFyY2hJbnB1dDoxMixmb250U2l6ZVNlYXJjaEJ1dHRvbjoxMixmb250RmFtaWx5OiJBcmlhbCJ9fV07CiAgICA8L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CiAgICAgICAgdmFyIG9uY2xpY2tfcGFyYW1fbD1kdG8uc2lnbmVkTGluazt2YXIgb25jbGlja192YWx1ZV9sPWR0by5nRmVlZFNFUy5kZWZhdWx0O3ZhciBvbmNsaWNrX3ZhbHVlX2FsPWR0by5nRmVlZFNFUy5hbHRlcm5hdGU7dmFyIG9uY2xpY2tfcGFyYW1fdj1kdG8udmlzaXRvclZpZXdJZDt2YXIgb25jbGlja192YWx1ZV92PWR0by52aXNpdG9yVmlld0lkSnNBZHM7dmFyIGZiPSIiO3ZhciBmYl90b2tlbj0iIjtpZihkdG8ucG9zdEFjdGlvblBhcmFtZXRlcil7ZmI9ZHRvLnB1K2R0by5wb3N0QWN0aW9uUGFyYW1ldGVyLmZlZWRiYWNrO2lmKGR0by5wb3N0QWN0aW9uUGFyYW1ldGVyLnRva2VuLnBhZ2VMb2FkZWQpe2ZiX3Rva2VuPWR0by5wb3N0QWN0aW9uUGFyYW1ldGVyLnRva2VuLnBhZ2VMb2FkZWR9fXZhciBwdT1kdG8ucHU7dmFyIGRzPWR0by5hZHVsdEZsYWc7dmFyIHB1cz1kdG8ucHVzO3ZhciB0bHQ9ZHRvLmNvbnRlbnRUeXBlO3ZhciBkc2I9ZHRvLnNlYXJjaGJveDt2YXIgcGR0bz17Y2FmOntjb2xvckJhY2tncm91bmQ6InRyYW5zcGFyZW50In19O2lmKGR0by5qc1BhcmFtZXRlcil7Zm9yKGxldCBrZXkgaW4gZHRvLmpzUGFyYW1ldGVyLnJlcXVlc3Qpe3BkdG8uY2FmW2tleV09ZHRvLmpzUGFyYW1ldGVyLnJlcXVlc3Rba2V5XX19KGZ1bmN0aW9uKCl7bGV0IHBhZ2VPcHRpb25zPXBkdG8uY2FmO2xldCBub0Fkcz1wZHRvLmNhZi5ub0FkcztkZWxldGUgcGR0by5jYWYubm9BZHM7cGFnZU9wdGlvbnMucmVzdWx0c1BhZ2VCYXNlVXJsPXB1KyIvY2FmLz8iK3B1cztsZXQgY2xpY2tDb250cm9sUGFyYW1zPXt9O2NsaWNrQ29udHJvbFBhcmFtc1tvbmNsaWNrX3BhcmFtX2xdPW9uY2xpY2tfdmFsdWVfbDtjbGlja0NvbnRyb2xQYXJhbXNbb25jbGlja19wYXJhbV92XT1vbmNsaWNrX3ZhbHVlX3Y7ZnVuY3Rpb24gc2V0UmxzQW1vdW50KCl7Y2FmRWwuZm9yRWFjaChmdW5jdGlvbihwYXJ0LGluZGV4KXtpZihjYWZFbFtpbmRleF0ubWV0YS5sYXlvdXRUeXBlcy5pbmRleE9mKGR0by5jb250ZW50VHlwZSkhPT0tMSYmY2FmRWxbaW5kZXhdLmNhZi50eXBlPT09InJlbGF0ZWRzZWFyY2giKXtjYWZFbFtpbmRleF0uY2FmLm51bWJlcj1kdG8ubnVtYmVyUmVsYXRlZExpbmtzfX0pfWZ1bmN0aW9uIGFkZENsaWNrVHJhY2tVcmwoY2FmT2JqZWN0KXtsZXQgcGFyYW1zPU9iamVjdC5rZXlzKGNsaWNrQ29udHJvbFBhcmFtcykubWFwKGZ1bmN0aW9uKGtleSl7cmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChrZXkpKyI9IitlbmNvZGVVUklDb21wb25lbnQoY2xpY2tDb250cm9sUGFyYW1zW2tleV0pfSkuam9pbigiJiIpO2xldCBwYXJraW5nQ2xpY2tUcmFjaz0iLy8iK2R0by5jbGlja0NvbnRyb2xIb3N0KyIvc2VhcmNoL2NjLnBocD8iK3BhcmFtcztpZihkdG8uY2xpY2tUcmFjay5sZW5ndGg+MCl7ZHRvLmNsaWNrVHJhY2suZm9yRWFjaChmdW5jdGlvbihwYXJ0LGluZGV4KXt0aGlzW2luZGV4XT1lbmNvZGVVUkkodGhpc1tpbmRleF0pfSxkdG8uY2xpY2tUcmFjayk7Y2FmT2JqZWN0LmNsaWNrdHJhY2tVcmw9W3BhcmtpbmdDbGlja1RyYWNrXS5jb25jYXQoZHRvLmNsaWNrVHJhY2spfWVsc2V7Y2FmT2JqZWN0LmNsaWNrdHJhY2tVcmw9cGFya2luZ0NsaWNrVHJhY2t9fXBhZ2VPcHRpb25zLnBhZ2VMb2FkZWRDYWxsYmFjaz1mdW5jdGlvbihyZXF1ZXN0QWNjZXB0ZWQsc3RhdHVzKXtsZXQgZmJfYWRkX3BhcmFtcz0iIjtmdW5jdGlvbiBpc0FkdWx0U3RhdHVzQ2FsbGJhY2tSZXF1aXJlZCgpe2lmKCEoImFkdWx0ImluIHN0YXR1cykpe3JldHVybiBmYWxzZX1pZihkcz09PWZhbHNlJiZzdGF0dXMuYWR1bHQ9PT10cnVlKXtyZXR1cm4gdHJ1ZX1pZihkcz09PXRydWUmJnN0YXR1cy5hZHVsdD09PWZhbHNlKXtyZXR1cm4gdHJ1ZX1yZXR1cm4gZmFsc2V9ZnVuY3Rpb24gaXNFcnJvckNvZGVDYWxsYmFja1JlcXVpcmVkKCl7aWYoISgiZXJyb3JfY29kZSJpbiBzdGF0dXMpKXtyZXR1cm4gZmFsc2V9aWYoaXNBZHVsdFN0YXR1c0NhbGxiYWNrUmVxdWlyZWQoKSYmMjY9PT1zdGF0dXMuZXJyb3JfY29kZSl7cmV0dXJuIGZhbHNlfXJldHVybiB0cnVlfWlmKGlzQWR1bHRTdGF0dXNDYWxsYmFja1JlcXVpcmVkKCkpe2ZiX2FkZF9wYXJhbXMrPSImYXM9IitzdGF0dXMuYWR1bHQrIiZnYz0iK3N0YXR1cy5jbGllbnR9aWYoaXNFcnJvckNvZGVDYWxsYmFja1JlcXVpcmVkKCkpe2ZiX2FkZF9wYXJhbXMrPSImZWM9IitwYXJzZUludChzdGF0dXMuZXJyb3JfY29kZSl9aWYoZmJfYWRkX3BhcmFtcy5sZW5ndGg9PT0wfHxmYl90b2tlbi5sZW5ndGg9PT0wKXtyZXR1cm59bGV0IHJlcXVlc3Q9bmV3IFhNTEh0dHBSZXF1ZXN0O3JlcXVlc3Qub3BlbigiR0VUIixmYitmYl90b2tlbitmYl9hZGRfcGFyYW1zLHRydWUpO3JlcXVlc3Quc2VuZCgpfTtmdW5jdGlvbiBjb2xsZWN0Q2FmT2JqZWN0cygpe2xldCBjYWZPYmplY3RzPVtwYWdlT3B0aW9uc107Y2FmRWwuZm9yRWFjaChmdW5jdGlvbihwYXJ0LGluZGV4KXtpZihjYWZFbFtpbmRleF0ubWV0YS5sYXlvdXRUeXBlcy5pbmRleE9mKHRsdCk9PT0tMSl7cmV0dXJufWlmKGNhZkVsW2luZGV4XS5jYWYudHlwZT09PSJhZHMiKXthZGRDbGlja1RyYWNrVXJsKGNhZkVsW2luZGV4XS5jYWYpO2NhZkVsW2luZGV4XS5jYWYubnVtYmVyPW5vQWRzfXBkdG8uY2FmLnVpT3B0aW1pemU9ZHRvLnVpT3B0aW1pemU7aWYoY2FmRWxbaW5kZXhdLmNhZi50eXBlPT09InJlbGF0ZWRzZWFyY2giJiZkdG8ucmxzLmxlbmd0aD4wKXtyZXR1cm59aWYoY2FmRWxbaW5kZXhdLmNhZi50eXBlPT09InNlYXJjaGJveCImJmRzYj09PWZhbHNlKXtyZXR1cm59Y2FmT2JqZWN0cy5wdXNoKGNhZkVsW2luZGV4XS5jYWYpfSk7cmV0dXJuIGNhZk9iamVjdHN9ZnVuY3Rpb24gYXBwZW5kQ2FmUmxzKCl7aWYoZHRvLnJscy5sZW5ndGg8PTApe3JldHVybn1sZXQgc3RhcnQ9MDtsZXQgY2FmUmxPYmplY3RzPVtwZHRvLmNhZl07Y2FmRWwuZm9yRWFjaChmdW5jdGlvbihwYXJ0LGluZGV4KXtpZihjYWZFbFtpbmRleF0ubWV0YS5sYXlvdXRUeXBlcy5pbmRleE9mKGR0by5jb250ZW50VHlwZSkhPT0tMSYmY2FmRWxbaW5kZXhdLmNhZi50eXBlPT09InJlbGF0ZWRzZWFyY2giKXtsZXQgc3RvcD1zdGFydCtjYWZFbFtpbmRleF0uY2FmLm51bWJlcjtsZXQgdGVybXM9W107Zm9yKHZhciBpPXN0YXJ0O2k8c3RvcDtpKyspe2lmKGk+ZHRvLnJscy5sZW5ndGgtMSl7YnJlYWt9dGVybXNbaV09ZHRvLnJsc1tpXS50ZXJtO3N0YXJ0PWkrMX1jYWZFbFtpbmRleF0uY2FmLnRlcm1zPXRlcm1zLmpvaW4oIiwiKTtjYWZFbFtpbmRleF0uY2FmLm9wdGltaXplVGVybXM9ZmFsc2U7Y2FmUmxPYmplY3RzLnB1c2goY2FmRWxbaW5kZXhdLmNhZil9fSk7Y3JlYXRlQ2FmLmFwcGx5KHRoaXMsY2FmUmxPYmplY3RzKX1pZih0eXBlb2YgZ29vZ2xlIT09InVuZGVmaW5lZCIpe3dpbmRvdy5jcmVhdGVDYWY9ZnVuY3Rpb24oKXtmdW5jdGlvbiBGKGFyZ3Mpe3JldHVybiBnb29nbGUuYWRzLmRvbWFpbnMuQ2FmLmFwcGx5KHRoaXMsYXJncyl9Ri5wcm90b3R5cGU9Z29vZ2xlLmFkcy5kb21haW5zLkNhZi5wcm90b3R5cGU7cmV0dXJuIGZ1bmN0aW9uKCl7cmV0dXJuIG5ldyBGKGFyZ3VtZW50cyl9fSgpO3NldFJsc0Ftb3VudCgpO2lmKGR0by5hZHZ0PT09MSYmZHRvLmNvbnRlbnRUeXBlIT09MiYmZHRvLmNvbnRlbnRUeXBlIT09Myl7YXBwZW5kQ2FmUmxzKCl9bGV0IGNhZk9iamVjdHM9Y29sbGVjdENhZk9iamVjdHMoKTtpZihjYWZPYmplY3RzLmxlbmd0aD4xKXtjcmVhdGVDYWYuYXBwbHkodGhpcyxjYWZPYmplY3RzKX19fSkoKTtmdW5jdGlvbiB0c2NDYWxsKGR0byl7Y29uc3QgcmVxdWVzdD1uZXcgWE1MSHR0cFJlcXVlc3Q7cmVxdWVzdC5vcGVuKCJHRVQiLGR0by5wdSsiL3NlYXJjaC90c2MucGhwPyIrZHRvLnRzY1FzKTtyZXF1ZXN0LnNlbmQoKX1mdW5jdGlvbiBpc0ZhY2Vib29rQ29va2llU2V0KCl7Y29uc3QgY29va2llQXJyYXk9ZGVjb2RlVVJJQ29tcG9uZW50KGRvY3VtZW50LmNvb2tpZSkuc3BsaXQoIjsiKTtmb3IobGV0IGk9MDtpPGNvb2tpZUFycmF5Lmxlbmd0aDtpKyspe2xldCBjPWNvb2tpZUFycmF5W2ldLnRyaW0oKTtpZihjLmluZGV4T2YoIl9mYnA9Iik9PT0wKXtyZXR1cm4gdHJ1ZX19cmV0dXJuIGZhbHNlfWlmKGR0by50c2Mpe2lmKGR0by5mYnBDaGVjaz09dW5kZWZpbmVkKXt0c2NDYWxsKGR0byl9ZWxzZXtsZXQgeD0wO2NvbnN0IGludGVydmFsSUQ9c2V0SW50ZXJ2YWwoZnVuY3Rpb24oKXtjb25zdCBpc1NldD1pc0ZhY2Vib29rQ29va2llU2V0KCk7aWYoaXNTZXR8fHg9PT05KXt0c2NDYWxsKGR0byk7Y2xlYXJJbnRlcnZhbChpbnRlcnZhbElEKX14Kyt9LDEwMCl9fXZhciAkcGFya01vZGFsQnV0dG9uPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb29raWUtbW9kYWwtb3BlbiIpO3ZhciAkcGFya01vZGFsQ2xvc2VCdXR0b249ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImNvb2tpZS1tb2RhbC1jbG9zZSIpO3ZhciAkcGFya01vZGFsPWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjb29raWUtbW9kYWwtd2luZG93Iik7dmFyICRwYXJrQ29va2llTWVzc2FnZT1kb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29va2llLW1lc3NhZ2UiKTt2YXIgJHBhcmtUaGlyZFBhcnR5Q29va2llQ2hlY2tib3g9ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRoaXJkLXBhcnR5LWNvb2tpZS1jaGVja2JveCIpO3ZhciAkcGFya0FjY2VwdEFsbENvb2tpZXNCdXR0b249ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFjY2VwdC1hbGwtY29va2llcy1idG4iKTt2YXIgZXhlY3V0ZVRyYWNraW5nUGl4ZWw9ZnVuY3Rpb24odHJpZ2dlcil7aWYodHJpZ2dlcj09PXRydWUmJnR5cGVvZiBweFRyYWNraW5nPT09ImZ1bmN0aW9uIil7cHhUcmFja2luZygpfX07dmFyIGdldENvb2tpZUV4cGlyYXRpb25UaW1lPWZ1bmN0aW9uKCl7dmFyIGQ9bmV3IERhdGU7ZC5zZXRUaW1lKGQuZ2V0VGltZSgpKzcqMjQqNjAqNjAqMWUzKTtyZXR1cm4gZC50b1VUQ1N0cmluZygpfTt2YXIgc2F2ZVBhcmtpbmdDb29raWU9ZnVuY3Rpb24oc3RhdGlzdGljc0Nvb2tpZSl7dmFyIGNvb2tpZUNvbnNlbnQ9e25lY2Vzc2FyeTp0cnVlLHN0YXRpc3RpY3M6c3RhdGlzdGljc0Nvb2tpZSx2ZXJzaW9uOjEsdGltZXN0YW1wOihuZXcgRGF0ZSkuZ2V0VGltZSgpfTtkb2N1bWVudC5jb29raWU9IkNvb2tpZUNvbnNlbnQ9IitKU09OLnN0cmluZ2lmeShjb29raWVDb25zZW50KSsiO2V4cGlyZXM9IitnZXRDb29raWVFeHBpcmF0aW9uVGltZSgpfTtpZigkcGFya01vZGFsQnV0dG9uIT1udWxsKXskcGFya01vZGFsQnV0dG9uLm9uY2xpY2s9ZnVuY3Rpb24oZSl7JHBhcmtNb2RhbC5jbGFzc0xpc3QucmVtb3ZlKCJkaXNhYmxlZCIpfX1pZigkcGFya01vZGFsQ2xvc2VCdXR0b24hPW51bGwpeyRwYXJrTW9kYWxDbG9zZUJ1dHRvbi5vbmNsaWNrPWZ1bmN0aW9uKGUpeyRwYXJrTW9kYWwuY2xhc3NMaXN0LmFkZCgiZGlzYWJsZWQiKTskcGFya0Nvb2tpZU1lc3NhZ2UuY2xhc3NMaXN0LmFkZCgiZGlzYWJsZWQiKTtzYXZlUGFya2luZ0Nvb2tpZSgkcGFya1RoaXJkUGFydHlDb29raWVDaGVja2JveC5jaGVja2VkKTtleGVjdXRlVHJhY2tpbmdQaXhlbCgkcGFya1RoaXJkUGFydHlDb29raWVDaGVja2JveC5jaGVja2VkKX19aWYoJHBhcmtBY2NlcHRBbGxDb29raWVzQnV0dG9uIT1udWxsKXskcGFya0FjY2VwdEFsbENvb2tpZXNCdXR0b24ub25jbGljaz1mdW5jdGlvbigpeyRwYXJrQ29va2llTWVzc2FnZS5jbGFzc0xpc3QuYWRkKCJkaXNhYmxlZCIpO3NhdmVQYXJraW5nQ29va2llKHRydWUpO2V4ZWN1dGVUcmFja2luZ1BpeGVsKHRydWUpfX1pZihkdG8uZXhlY3V0ZVRyYWNraW5nUGl4ZWxzPT09dHJ1ZSl7ZXhlY3V0ZVRyYWNraW5nUGl4ZWwodHJ1ZSl9CiAgICA8L3NjcmlwdD48L2JvZHk+PC9odG1sPg==","disable_correlation":true,"encrypt":true,"malware_filename":"file.bin","object_relation":"malware-sample","to_ids":true,"type":"malware-sample","uuid":"89e7702e-7f51-4dc3-928e-541de73013bc","value":"file.bin"},{"category":"Artifacts dropped","disable_correlation":true,"object_relation":"mimetype","to_ids":false,"type":"mime-type","uuid":"e3d1b00b-a657-48d2-a6a0-d9afade7cc17","value":"text/html"},{"category":"Payload delivery","disable_correlation":false,"object_relation":"ssdeep","to_ids":true,"type":"ssdeep","uuid":"c1f3a99e-feaf-4436-8220-fb319fc22744","value":"384:5iAt/vTNakL6V42jw01isqXpVbiuLv36blYnM2clYnSR1gulEqBXcGraFBTuIRIK:5iivTN1L6CjsqXpZiuT6mM2BiuulEqB2"},{"category":"Network activity","disable_correlation":false,"object_relation":"dom-hash","to_ids":true,"type":"dom-hash","uuid":"eaf0fe61-13a8-4338-98f8-96fc6aec8d20","value":"7774e6773bcee7f132dda096084311d6"}],"ObjectReference":[{"comment":"URL loading that content","object_uuid":"58385b02-2d93-42dd-b1ad-3921218205c5","referenced_uuid":"e7f49da3-46f4-4728-b52e-c3e86ec5719f","relationship_type":"loaded-by","uuid":"9f37703d-2e04-4d9a-88e6-d1ed11c24776"},{"comment":"Screenshot of the page","object_uuid":"58385b02-2d93-42dd-b1ad-3921218205c5","referenced_uuid":"109ee205-494b-43ed-9837-38e135b38e74","relationship_type":"rendered-as","uuid":"05764745-f349-4b53-b23c-e0d0cd5ef0a2"},{"comment":"Rendered HTML at the end of the capture","object_uuid":"58385b02-2d93-42dd-b1ad-3921218205c5","referenced_uuid":"0d58d6d3-c1d6-4701-90fd-957b8fa5b966","relationship_type":"rendered-as","uuid":"092fdab8-7d8b-4146-8e79-662549c6b095"}],"comment":"Content received for the final redirect (before rendering)","description":"File object describing a file with meta-information","distribution":"5","first_seen":"2024-10-31T02:31:40.032000+00:00","magic_db":null,"meta-category":"file","name":"file","sharing_group_id":"0","template_uuid":"688c46fb-5edb-40a3-8273-1af7923e2215","template_version":"25","uuid":"58385b02-2d93-42dd-b1ad-3921218205c5"}],"info":"Lookyloo Capture (http://okayti.pics)","uuid":"3b43a6ee-51a5-4d56-a841-771b924ea68d"}]
