[
  {
    "path": ".gitignore",
    "content": "# Binaries for programs and plugins\n*.exe\n*.dll\n*.so\n*.dylib\n\n# Test binary, build with `go test -c`\n*.test\n\n# Output of the go coverage tool, specifically when used with LiteIDE\n*.out\n\n# Project-local glide cache, RE: https://github.com/Masterminds/glide/issues/736\n.glide/\n*.DS_Store\n\nbin/*"
  },
  {
    "path": "LICENSE",
    "content": "BSD 3-Clause License\n\nCopyright (c) 2017, Ding Ding\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n  list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n  this list of conditions and the following disclaimer in the documentation\n  and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n  contributors may be used to endorse or promote products derived from\n  this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
  },
  {
    "path": "README.md",
    "content": "\n# Cngrok 内网穿透 服务管理平台\n- 解决无公网IP 解决80端口被封,动态IP,无公网ip。发布网站,访问内网，内网穿透端口映射软件。对开发公众号 小程序 远程连接树莓派 Nas 等等 提供帮助！\n## 上线时间 2018-09-29\n\n### 2018-12-01\n- 余额充值 支持使用红包支付  \n- 余额提现 免收取手续费\n- 充值流水记录\n- 优惠金额显示\n<img src=\"https://cngrok-1257729714.cos.ap-chengdu.myqcloud.com/client/000001.png?v=111\"></img>\n ### 2018-11-16\n  * 增加隧道续费功能\n  * 增加支持Frp \n\n\n其项目主要实现 ngrok内网穿透, 管理维护隧道列表 切每条隧道 只收取一元钱 只为防止恶意注册\n\n# 主要技术\n使用nodejs koa2 mongodb 搭建 api 管理\n\n使用微信扫码免注册登录  \n\n使用vue iview iview-admin 搭建前端管理页面\n\n使用支付宝 实现收款 \n\n使用websocket 实现用户登录 支付成功 推送通知\n\n使用aliyun oss+cdn 实现静态资源缓存 客户端下载\n\n...\n\n## 提交反馈\n\n欢迎提交 issue，请写清楚遇到问题的原因，浏览器和操作系统环境，重现的流程。\n如果有开发能力，建议在本地调试出出错的代码。\n\n\n## 联系作者\n\n请发邮件至：`sstzma@gmail.com`\n"
  },
  {
    "path": "assets/client/tls/ngrokroot.crt",
    "content": "-----BEGIN CERTIFICATE-----\nMIICsDCCAZgCCQCvHDg4sUaHyDANBgkqhkiG9w0BAQsFADAaMRgwFgYDVQQDDA9m\ncmVlLmNuZ3Jvay5jb20wHhcNMTgwOTEzMTM0OTQ2WhcNMzIwNTIyMTM0OTQ2WjAa\nMRgwFgYDVQQDDA9mcmVlLmNuZ3Jvay5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQCx6aKaxLS1G7d/yETFR1CD99Bp5GdRvHGKCLFTpuEPhFz8YW3M\nMfXzdFnAFgP8K6ieoL4ouzNMuslVW0wFLzRBAmVsK3U3cFbuR8BYDfaeazyLD6ST\nh31IaxDBJxcp972IN4dciBUsLeZLfnLyz9OHHQtD+0TMsnugTBjx1QZh652ji+I0\nuWTFiDv0meBV5ga7/Ib2XXndHpF3cLh9GYkJCVWVJJnapOr9rq5OUZfbMjaBWMSM\nOsLrs+bnTXv3ETq/KNWIMVtCQc7Be4eXU/AJewsaMk841QSPWJ5QXv1W8Qaw3uMO\n5DPG/z9TzdNqfQ5RKdT+IcHPGGaM3CSNwlxlAgMBAAEwDQYJKoZIhvcNAQELBQAD\nggEBAEi19nWtPcN8zwsbr21os95YxVe2iFAzUbh9Orj+0quYriQoUQs0TmwM9ker\nq62y642T8t5OFmH3z1p/igvbMOGraM3YGkSgQOXcKamg+qw9+y4X+bSqLlR7Byic\nUhe4XcYESJlreVP60oFdXTwkNuAcMHbJliVLklG8ytaMWcWVMMEK38SOLzUmZwKO\nEtrzo0AllvwAjHi6xyJbkw/1/bUl7ajaop9G+twIDUoVjeewQ8kwGJPZ14xjz48O\nB16KxMOTe84oLo5Pz6czjT15PwgINOhTyfhhEvZMdTh7AUB8YgKYu4CDvTkUDxQR\nLIqwCNs3gwvGyeC3EvZW+Y6ElJM=\n-----END CERTIFICATE-----\n"
  },
  {
    "path": "assets/device.crt",
    "content": "-----BEGIN CERTIFICATE-----\nMIICsDCCAZgCCQDZc3YHwf0luDANBgkqhkiG9w0BAQUFADAaMRgwFgYDVQQDDA9m\ncmVlLmNuZ3Jvay5jb20wHhcNMTgwOTEzMTM0OTQ3WhcNMzIwNTIyMTM0OTQ3WjAa\nMRgwFgYDVQQDDA9mcmVlLmNuZ3Jvay5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQCsxJZ99Qh/Rv2kLlbpo7giwar0lXIK6xPRBBEDbvLXJS1VFAnI\nbCBsgMHZxmNVi3EnlPONj9+pAr8qLNxsUHwRqp21dXBXstLsCqaX4gJGSsOL/dE5\nomWdfanwa/M4qJO8jut7uIZ10mgbPkWjHDbaOLq/If8xsHgg1E8s+lV4VL7Qg89w\nrB9Y9xE8xRxOn8fiBvSz/nVpyd0m/nUQwa3Hx+3RBd9rWTQyM7UACK5bG3Vejfo4\n+TDSfpqOrvGteBGj4jpUv9NEA1WUd1/upGjkQFdBHA5QMuAXW/uD3byXzKjLroWK\nsdsInaNiq5Jgv0iS4BIwBnIBm4HlBfLP6I9PAgMBAAEwDQYJKoZIhvcNAQEFBQAD\nggEBAGYpnRMYO5R/n5oUJ/dMsxR/BuorFZ+RY8pXbxQ6cv4HYun4/n7gzlg+5dWy\nV/fPenO31SoOL0VJYOGiQAAlBT8MSehjWm5RBmt+SqqAb20JVluvPrvTduwIZRLG\naA0nhvwFt5yXUd5QJPuLT/rhMk0Urh3BghSZOzhY4ZaZJ48dZTwjZswHzR+W44dr\nd+SgkUiOfjnajRuVbTslX6aROxrIvTo7uHoDwAXJMR1YOyeUCY+19Z4+0DiNQgli\nwlDRqWhTLv9lWN775Y/vmXepdbJpJEEsHouQsw1WIxrmaQgPppuLgPJinVGqbjlg\nVqGRLqeRj5C2Qs0ncvdQ8emuL6M=\n-----END CERTIFICATE-----\n"
  },
  {
    "path": "assets/device.csr",
    "content": "-----BEGIN CERTIFICATE REQUEST-----\nMIICXzCCAUcCAQAwGjEYMBYGA1UEAwwPZnJlZS5jbmdyb2suY29tMIIBIjANBgkq\nhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArMSWffUIf0b9pC5W6aO4IsGq9JVyCusT\n0QQRA27y1yUtVRQJyGwgbIDB2cZjVYtxJ5TzjY/fqQK/KizcbFB8EaqdtXVwV7LS\n7Aqml+ICRkrDi/3ROaJlnX2p8GvzOKiTvI7re7iGddJoGz5Foxw22ji6vyH/MbB4\nINRPLPpVeFS+0IPPcKwfWPcRPMUcTp/H4gb0s/51acndJv51EMGtx8ft0QXfa1k0\nMjO1AAiuWxt1Xo36OPkw0n6ajq7xrXgRo+I6VL/TRANVlHdf7qRo5EBXQRwOUDLg\nF1v7g928l8yoy66FirHbCJ2jYquSYL9IkuASMAZyAZuB5QXyz+iPTwIDAQABoAAw\nDQYJKoZIhvcNAQELBQADggEBACmGLIYo9HKSZg5EW+YcWSJveR9DTiwlTi8XuOtr\nIb4BpMA1O6vvWgeAGIyP6EXRXWSTryDP4r6MnGXArmCoh2y+5qF7G+oXau/yBl18\nZjjPNzAsJgkiC6N0ru1PyGDQQQ5ymYQPUC+NpdeSaesGptp7Ti0ohKhsLFPWMzPS\nrpA6ZlsvH2svyywedL3c+OqAUw+rnEmV7SNeKdJibVNC3ZCa42mCYQaMW3T0BQC1\nDjio86/Z0FfXBQ5saarZGRsaDfvzllTDXIgP1rs1sxMwTWtoz8vyzSqp7i/X1LMU\ng3wZhDO2Sla5vQkSnjQZW7VTYpbYpDDAhVt35BlEb22+a8M=\n-----END CERTIFICATE REQUEST-----\n"
  },
  {
    "path": "assets/device.key",
    "content": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEArMSWffUIf0b9pC5W6aO4IsGq9JVyCusT0QQRA27y1yUtVRQJ\nyGwgbIDB2cZjVYtxJ5TzjY/fqQK/KizcbFB8EaqdtXVwV7LS7Aqml+ICRkrDi/3R\nOaJlnX2p8GvzOKiTvI7re7iGddJoGz5Foxw22ji6vyH/MbB4INRPLPpVeFS+0IPP\ncKwfWPcRPMUcTp/H4gb0s/51acndJv51EMGtx8ft0QXfa1k0MjO1AAiuWxt1Xo36\nOPkw0n6ajq7xrXgRo+I6VL/TRANVlHdf7qRo5EBXQRwOUDLgF1v7g928l8yoy66F\nirHbCJ2jYquSYL9IkuASMAZyAZuB5QXyz+iPTwIDAQABAoIBACriBOSwzHIjIdP9\nuI73lz3xSki5S3xQSzPnSX3LrTUfwjfK6H657/Zeoz810fQqz2RewXFS09Y0m1SR\nnAi6lYEhE1I2GzN5bIcwQZeTfrMJ3a3Cy4r9tzE3PtYxRUa7+SelZeforl9SYYrZ\nkxlgaHEUAa5tdtVTkw27BQgJ/usF3XnTkBifLYaI/I98H9WwSBWZwLw5sf2lTlCR\nGiB+zptbyZOAv1sFZgHge7+PWSlO8+DoaaZB1yuvqNlYrVbnU+k4GPDNy5FFkDtE\nybcggEiyaK4cyYF6p4mOxFV8FhimP5zvcB17z4GHs+fRJsE71y2MCh4iSVAoxXcx\n9qaNlAECgYEA2jvtSRp1LtczCgct0DrZIvaF7+w7Il0vjqbJwpjSC4f/dhNkjltm\ng6Wq/OtZJ11DO8DkAHRhZgmXOFQLDJ0udSVZ4l7u0rWBsuPFbHLvB4F4EA11vxoc\n/fNYGP8i8LRwR10qul04dUks81w1S0wTqcsETPossZDfQgtqSKGsoU8CgYEAyqpy\nVHpT3MrfoUlguwti12A3CC4Qn37+PVlcA5HPMoroOg+2E5R587Y29Bo9S0YLwxWH\n8VJ5NSlEOdC8LrierL4MbMhGzm6ayqpyc3YCF/vNPsYoRlTJXjH0Ji9tK6d9jQV3\njJdfSg92JEDc0D3gke7SIOzSoaKjI3HQMtX9sgECgYEAkpgEucF7C97k2wydeq29\nJB5DNDoUMu4zvvhMuVocZkCRmshGGNZO04nahRC2j5m3SxE0VxXWQ0uX9++EiJGh\nHnHbohMxC/t+xyL3f/TombsfYnEYMimhZfkrqYbg+p3KejWcORnbjfV8q3C6H/1X\njAvitK6sjQ6K2ft/BpELvEMCgYEAhd9flHQVz4Rngqfw8L1Ntk2FLK8ZJfKCSM4t\nXOJFRvLBAhF8yaRLhnR4CnkGwiFsBZrEaOF81WQEAFjk5cvobN1BYd5N/3DKaVN8\nNM7gBS2831mQIx1AwysmRs8PQ0XpRm01EjavqEFcXghGlHw7SsrCHSOy4ziGoRQ+\nXkZCxgECgYBpwV0DaDVbMXeg5PccURv35pvRr2FKc5gOoz2IX38aSfbWCbfWmEQb\nXdzi0S+xePNpMyaXfu47okreAVoqTW5MnogJxRL3OULBBit+o8WsVIEPu1a2lQw9\nBtyP7BW72YIITtzylm1TSkAf+Z8pu2bV8iE+mpPHjnSH80Za/Np4NQ==\n-----END RSA PRIVATE KEY-----\n"
  },
  {
    "path": "assets/rootCA.key",
    "content": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEAsemimsS0tRu3f8hExUdQg/fQaeRnUbxxigixU6bhD4Rc/GFt\nzDH183RZwBYD/CuonqC+KLszTLrJVVtMBS80QQJlbCt1N3BW7kfAWA32nms8iw+k\nk4d9SGsQwScXKfe9iDeHXIgVLC3mS35y8s/Thx0LQ/tEzLJ7oEwY8dUGYeudo4vi\nNLlkxYg79JngVeYGu/yG9l153R6Rd3C4fRmJCQlVlSSZ2qTq/a6uTlGX2zI2gVjE\njDrC67Pm50179xE6vyjViDFbQkHOwXuHl1PwCXsLGjJPONUEj1ieUF79VvEGsN7j\nDuQzxv8/U83Tan0OUSnU/iHBzxhmjNwkjcJcZQIDAQABAoIBAQCIHrdYLrQL9R7a\nV4G2Zq/FqG7+9c/PC5za/XefBwke9CiouGpnVrpVAGpCuxVldInYhCe5xjCjvi2Y\nbvek587VBl5O+pj+R6dbO+5/8H8GCgoSY2+JqJpENBZnkd75LyEF/WZFd6CrYprW\nm/KasEOpFqGt66th6hUIOfDD5jax52l9GZOvly5d+lJsARl1MQnTmoRFSttqHhxe\n16eq+pAHmSDxXpzAP8vkDp4uD8wnz1DcOVhhX5BIEiWUjr6e2YLvHHiK8pVmaj9U\nIz2ZUa2+cNhObM8Wc+EbAvep140e7JSTaBu7E4mnzziS/t19TvbWlUO4sLBmndj+\nli207tGBAoGBAOpm7//he0SesEa3lc3jUf+jYIzMeaFBThv5YPrFCjeRNw0P9onn\nWsgD41rx1DBbdlCUaIyIMiKFw9hL5jdWo++gkk4hL3gUtB8dX21Ot8SPCOaqd/d1\n6fiZSi1NrQ8R0bbq020tQQnci8+ADNK8OOCSnUodvZ3jjA86vnACDNSVAoGBAMJO\nOkiIBNeThAgd58pTZsmsdnupF8kvYDoz1myUQka0cC71pWsHMCOB6hxPcLibYLsc\n+EhMc015/WzPZWnzL7jicsBXhZETjtyWgX0x2njQ2S1/UHzkcjZFYAYeHZcyyO3Z\npXo3C8BTw0EXHmZz8FNAbBSFY33Po+j6fUyU9SSRAoGBAOSt8lzf3QPQEUecmYCY\n0omlGW+jmNHyRULTY4KjMtmNSXjr5ukZFZ7m9CronMtkn6PzdaAMy2SUvcFKItpA\nI4WHUNT6WTY8dJGadVvNnUkdBmELVCjPF6kZ250hF8II72EV7ZiourflO1z/nwME\n8DRftSX2p+Ped+jvtZTO2zeVAoGABDjO62SJNmXuKH792leVlCw7JtS1v5lX7evS\nbOmLxx2EkoCj539wfFUGUTcoq9o0b9xhSLDgkH5mE0cuXO77ynihJazBKjXSlNhw\nV9gNdzKShXqOtSgBk0xOmdNtsStZUlG4Vr97ceJgC7oE3xUF08lCj++WCdXJKfbH\nYjKaYQECgYBn30jbt+cU6LI+syMxPBgVR/OCOHD2hhUOtnvu8GfV6baskMGOnZaR\nI2+sjh0RK8pFbBWZgwSi0EjocH39lTYDQYz5yYtCw9Uw+o1wgiwvGSkB/Tcx0Re/\nX34htxwnkJLuGdipbsxBFWIjSf6iwXHAO7U9HmGwLxZNoQLo++x6ZQ==\n-----END RSA PRIVATE KEY-----\n"
  },
  {
    "path": "assets/rootCA.pem",
    "content": "-----BEGIN CERTIFICATE-----\nMIICsDCCAZgCCQCvHDg4sUaHyDANBgkqhkiG9w0BAQsFADAaMRgwFgYDVQQDDA9m\ncmVlLmNuZ3Jvay5jb20wHhcNMTgwOTEzMTM0OTQ2WhcNMzIwNTIyMTM0OTQ2WjAa\nMRgwFgYDVQQDDA9mcmVlLmNuZ3Jvay5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQCx6aKaxLS1G7d/yETFR1CD99Bp5GdRvHGKCLFTpuEPhFz8YW3M\nMfXzdFnAFgP8K6ieoL4ouzNMuslVW0wFLzRBAmVsK3U3cFbuR8BYDfaeazyLD6ST\nh31IaxDBJxcp972IN4dciBUsLeZLfnLyz9OHHQtD+0TMsnugTBjx1QZh652ji+I0\nuWTFiDv0meBV5ga7/Ib2XXndHpF3cLh9GYkJCVWVJJnapOr9rq5OUZfbMjaBWMSM\nOsLrs+bnTXv3ETq/KNWIMVtCQc7Be4eXU/AJewsaMk841QSPWJ5QXv1W8Qaw3uMO\n5DPG/z9TzdNqfQ5RKdT+IcHPGGaM3CSNwlxlAgMBAAEwDQYJKoZIhvcNAQELBQAD\nggEBAEi19nWtPcN8zwsbr21os95YxVe2iFAzUbh9Orj+0quYriQoUQs0TmwM9ker\nq62y642T8t5OFmH3z1p/igvbMOGraM3YGkSgQOXcKamg+qw9+y4X+bSqLlR7Byic\nUhe4XcYESJlreVP60oFdXTwkNuAcMHbJliVLklG8ytaMWcWVMMEK38SOLzUmZwKO\nEtrzo0AllvwAjHi6xyJbkw/1/bUl7ajaop9G+twIDUoVjeewQ8kwGJPZ14xjz48O\nB16KxMOTe84oLo5Pz6czjT15PwgINOhTyfhhEvZMdTh7AUB8YgKYu4CDvTkUDxQR\nLIqwCNs3gwvGyeC3EvZW+Y6ElJM=\n-----END CERTIFICATE-----\n"
  },
  {
    "path": "assets/rootCA.srl",
    "content": "D9737607C1FD25B8\n"
  },
  {
    "path": "assets/server/tls/snakeoil.crt",
    "content": "-----BEGIN CERTIFICATE-----\nMIICsDCCAZgCCQDZc3YHwf0luDANBgkqhkiG9w0BAQUFADAaMRgwFgYDVQQDDA9m\ncmVlLmNuZ3Jvay5jb20wHhcNMTgwOTEzMTM0OTQ3WhcNMzIwNTIyMTM0OTQ3WjAa\nMRgwFgYDVQQDDA9mcmVlLmNuZ3Jvay5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQCsxJZ99Qh/Rv2kLlbpo7giwar0lXIK6xPRBBEDbvLXJS1VFAnI\nbCBsgMHZxmNVi3EnlPONj9+pAr8qLNxsUHwRqp21dXBXstLsCqaX4gJGSsOL/dE5\nomWdfanwa/M4qJO8jut7uIZ10mgbPkWjHDbaOLq/If8xsHgg1E8s+lV4VL7Qg89w\nrB9Y9xE8xRxOn8fiBvSz/nVpyd0m/nUQwa3Hx+3RBd9rWTQyM7UACK5bG3Vejfo4\n+TDSfpqOrvGteBGj4jpUv9NEA1WUd1/upGjkQFdBHA5QMuAXW/uD3byXzKjLroWK\nsdsInaNiq5Jgv0iS4BIwBnIBm4HlBfLP6I9PAgMBAAEwDQYJKoZIhvcNAQEFBQAD\nggEBAGYpnRMYO5R/n5oUJ/dMsxR/BuorFZ+RY8pXbxQ6cv4HYun4/n7gzlg+5dWy\nV/fPenO31SoOL0VJYOGiQAAlBT8MSehjWm5RBmt+SqqAb20JVluvPrvTduwIZRLG\naA0nhvwFt5yXUd5QJPuLT/rhMk0Urh3BghSZOzhY4ZaZJ48dZTwjZswHzR+W44dr\nd+SgkUiOfjnajRuVbTslX6aROxrIvTo7uHoDwAXJMR1YOyeUCY+19Z4+0DiNQgli\nwlDRqWhTLv9lWN775Y/vmXepdbJpJEEsHouQsw1WIxrmaQgPppuLgPJinVGqbjlg\nVqGRLqeRj5C2Qs0ncvdQ8emuL6M=\n-----END CERTIFICATE-----\n"
  },
  {
    "path": "assets/server/tls/snakeoil.key",
    "content": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpAIBAAKCAQEArMSWffUIf0b9pC5W6aO4IsGq9JVyCusT0QQRA27y1yUtVRQJ\nyGwgbIDB2cZjVYtxJ5TzjY/fqQK/KizcbFB8EaqdtXVwV7LS7Aqml+ICRkrDi/3R\nOaJlnX2p8GvzOKiTvI7re7iGddJoGz5Foxw22ji6vyH/MbB4INRPLPpVeFS+0IPP\ncKwfWPcRPMUcTp/H4gb0s/51acndJv51EMGtx8ft0QXfa1k0MjO1AAiuWxt1Xo36\nOPkw0n6ajq7xrXgRo+I6VL/TRANVlHdf7qRo5EBXQRwOUDLgF1v7g928l8yoy66F\nirHbCJ2jYquSYL9IkuASMAZyAZuB5QXyz+iPTwIDAQABAoIBACriBOSwzHIjIdP9\nuI73lz3xSki5S3xQSzPnSX3LrTUfwjfK6H657/Zeoz810fQqz2RewXFS09Y0m1SR\nnAi6lYEhE1I2GzN5bIcwQZeTfrMJ3a3Cy4r9tzE3PtYxRUa7+SelZeforl9SYYrZ\nkxlgaHEUAa5tdtVTkw27BQgJ/usF3XnTkBifLYaI/I98H9WwSBWZwLw5sf2lTlCR\nGiB+zptbyZOAv1sFZgHge7+PWSlO8+DoaaZB1yuvqNlYrVbnU+k4GPDNy5FFkDtE\nybcggEiyaK4cyYF6p4mOxFV8FhimP5zvcB17z4GHs+fRJsE71y2MCh4iSVAoxXcx\n9qaNlAECgYEA2jvtSRp1LtczCgct0DrZIvaF7+w7Il0vjqbJwpjSC4f/dhNkjltm\ng6Wq/OtZJ11DO8DkAHRhZgmXOFQLDJ0udSVZ4l7u0rWBsuPFbHLvB4F4EA11vxoc\n/fNYGP8i8LRwR10qul04dUks81w1S0wTqcsETPossZDfQgtqSKGsoU8CgYEAyqpy\nVHpT3MrfoUlguwti12A3CC4Qn37+PVlcA5HPMoroOg+2E5R587Y29Bo9S0YLwxWH\n8VJ5NSlEOdC8LrierL4MbMhGzm6ayqpyc3YCF/vNPsYoRlTJXjH0Ji9tK6d9jQV3\njJdfSg92JEDc0D3gke7SIOzSoaKjI3HQMtX9sgECgYEAkpgEucF7C97k2wydeq29\nJB5DNDoUMu4zvvhMuVocZkCRmshGGNZO04nahRC2j5m3SxE0VxXWQ0uX9++EiJGh\nHnHbohMxC/t+xyL3f/TombsfYnEYMimhZfkrqYbg+p3KejWcORnbjfV8q3C6H/1X\njAvitK6sjQ6K2ft/BpELvEMCgYEAhd9flHQVz4Rngqfw8L1Ntk2FLK8ZJfKCSM4t\nXOJFRvLBAhF8yaRLhnR4CnkGwiFsBZrEaOF81WQEAFjk5cvobN1BYd5N/3DKaVN8\nNM7gBS2831mQIx1AwysmRs8PQ0XpRm01EjavqEFcXghGlHw7SsrCHSOy4ziGoRQ+\nXkZCxgECgYBpwV0DaDVbMXeg5PccURv35pvRr2FKc5gOoz2IX38aSfbWCbfWmEQb\nXdzi0S+xePNpMyaXfu47okreAVoqTW5MnogJxRL3OULBBit+o8WsVIEPu1a2lQw9\nBtyP7BW72YIITtzylm1TSkAf+Z8pu2bV8iE+mpPHjnSH80Za/Np4NQ==\n-----END RSA PRIVATE KEY-----\n"
  },
  {
    "path": "cache/lru.go",
    "content": "// Copyright 2012, Google Inc. All rights reserved.\r\n// Use of this source code is governed by a BSD-style\r\n// license that can be found in the LICENSE file.\r\n\r\n// The implementation borrows heavily from SmallLRUCache (originally by Nathan\r\n// Schrenk). The object maintains a doubly-linked list of elements in the\r\n// When an element is accessed it is promoted to the head of the list, and when\r\n// space is needed the element at the tail of the list (the least recently used\r\n// element) is evicted.\r\npackage cache\r\n\r\nimport (\r\n\t\"container/list\"\r\n\t\"encoding/gob\"\r\n\t\"fmt\"\r\n\t\"io\"\r\n\t\"os\"\r\n\t\"sync\"\r\n\t\"time\"\r\n)\r\n\r\ntype LRUCache struct {\r\n\tmu sync.Mutex\r\n\r\n\t// list & table of *entry objects\r\n\tlist  *list.List\r\n\ttable map[string]*list.Element\r\n\r\n\t// Our current size, in bytes. Obviously a gross simplification and low-grade\r\n\t// approximation.\r\n\tsize uint64\r\n\r\n\t// How many bytes we are limiting the cache to.\r\n\tcapacity uint64\r\n}\r\n\r\n// Values that go into LRUCache need to satisfy this interface.\r\ntype Value interface {\r\n\tSize() int\r\n}\r\n\r\ntype Item struct {\r\n\tKey   string\r\n\tValue Value\r\n}\r\n\r\ntype entry struct {\r\n\tkey           string\r\n\tvalue         Value\r\n\tsize          int\r\n\ttime_accessed time.Time\r\n}\r\n\r\nfunc NewLRUCache(capacity uint64) *LRUCache {\r\n\treturn &LRUCache{\r\n\t\tlist:     list.New(),\r\n\t\ttable:    make(map[string]*list.Element),\r\n\t\tcapacity: capacity,\r\n\t}\r\n}\r\n\r\nfunc (lru *LRUCache) Get(key string) (v Value, ok bool) {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\r\n\telement := lru.table[key]\r\n\tif element == nil {\r\n\t\treturn nil, false\r\n\t}\r\n\tlru.moveToFront(element)\r\n\treturn element.Value.(*entry).value, true\r\n}\r\n\r\nfunc (lru *LRUCache) Set(key string, value Value) {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\r\n\tif element := lru.table[key]; element != nil {\r\n\t\tlru.updateInplace(element, value)\r\n\t} else {\r\n\t\tlru.addNew(key, value)\r\n\t}\r\n}\r\n\r\nfunc (lru *LRUCache) SetIfAbsent(key string, value Value) {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\r\n\tif element := lru.table[key]; element != nil {\r\n\t\tlru.moveToFront(element)\r\n\t} else {\r\n\t\tlru.addNew(key, value)\r\n\t}\r\n}\r\n\r\nfunc (lru *LRUCache) Delete(key string) bool {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\r\n\telement := lru.table[key]\r\n\tif element == nil {\r\n\t\treturn false\r\n\t}\r\n\r\n\tlru.list.Remove(element)\r\n\tdelete(lru.table, key)\r\n\tlru.size -= uint64(element.Value.(*entry).size)\r\n\treturn true\r\n}\r\n\r\nfunc (lru *LRUCache) Clear() {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\r\n\tlru.list.Init()\r\n\tlru.table = make(map[string]*list.Element)\r\n\tlru.size = 0\r\n}\r\n\r\nfunc (lru *LRUCache) SetCapacity(capacity uint64) {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\r\n\tlru.capacity = capacity\r\n\tlru.checkCapacity()\r\n}\r\n\r\nfunc (lru *LRUCache) Stats() (length, size, capacity uint64, oldest time.Time) {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\tif lastElem := lru.list.Back(); lastElem != nil {\r\n\t\toldest = lastElem.Value.(*entry).time_accessed\r\n\t}\r\n\treturn uint64(lru.list.Len()), lru.size, lru.capacity, oldest\r\n}\r\n\r\nfunc (lru *LRUCache) StatsJSON() string {\r\n\tif lru == nil {\r\n\t\treturn \"{}\"\r\n\t}\r\n\tl, s, c, o := lru.Stats()\r\n\treturn fmt.Sprintf(\"{\\\"Length\\\": %v, \\\"Size\\\": %v, \\\"Capacity\\\": %v, \\\"OldestAccess\\\": \\\"%v\\\"}\", l, s, c, o)\r\n}\r\n\r\nfunc (lru *LRUCache) Keys() []string {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\r\n\tkeys := make([]string, 0, lru.list.Len())\r\n\tfor e := lru.list.Front(); e != nil; e = e.Next() {\r\n\t\tkeys = append(keys, e.Value.(*entry).key)\r\n\t}\r\n\treturn keys\r\n}\r\n\r\nfunc (lru *LRUCache) Items() []Item {\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\r\n\titems := make([]Item, 0, lru.list.Len())\r\n\tfor e := lru.list.Front(); e != nil; e = e.Next() {\r\n\t\tv := e.Value.(*entry)\r\n\t\titems = append(items, Item{Key: v.key, Value: v.value})\r\n\t}\r\n\treturn items\r\n}\r\n\r\nfunc (lru *LRUCache) SaveItems(w io.Writer) error {\r\n\titems := lru.Items()\r\n\tencoder := gob.NewEncoder(w)\r\n\treturn encoder.Encode(items)\r\n}\r\n\r\nfunc (lru *LRUCache) SaveItemsToFile(path string) error {\r\n\tif wr, err := os.OpenFile(path, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0644); err != nil {\r\n\t\treturn err\r\n\t} else {\r\n\t\tdefer wr.Close()\r\n\t\treturn lru.SaveItems(wr)\r\n\t}\r\n}\r\n\r\nfunc (lru *LRUCache) LoadItems(r io.Reader) error {\r\n\titems := make([]Item, 0)\r\n\tdecoder := gob.NewDecoder(r)\r\n\tif err := decoder.Decode(&items); err != nil {\r\n\t\treturn err\r\n\t}\r\n\r\n\tlru.mu.Lock()\r\n\tdefer lru.mu.Unlock()\r\n\tfor _, item := range items {\r\n\t\t// XXX: copied from Set()\r\n\t\tif element := lru.table[item.Key]; element != nil {\r\n\t\t\tlru.updateInplace(element, item.Value)\r\n\t\t} else {\r\n\t\t\tlru.addNew(item.Key, item.Value)\r\n\t\t}\r\n\t}\r\n\r\n\treturn nil\r\n}\r\n\r\nfunc (lru *LRUCache) LoadItemsFromFile(path string) error {\r\n\tif rd, err := os.Open(path); err != nil {\r\n\t\treturn err\r\n\t} else {\r\n\t\tdefer rd.Close()\r\n\t\treturn lru.LoadItems(rd)\r\n\t}\r\n}\r\n\r\nfunc (lru *LRUCache) updateInplace(element *list.Element, value Value) {\r\n\tvalueSize := value.Size()\r\n\tsizeDiff := valueSize - element.Value.(*entry).size\r\n\telement.Value.(*entry).value = value\r\n\telement.Value.(*entry).size = valueSize\r\n\tlru.size += uint64(sizeDiff)\r\n\tlru.moveToFront(element)\r\n\tlru.checkCapacity()\r\n}\r\n\r\nfunc (lru *LRUCache) moveToFront(element *list.Element) {\r\n\tlru.list.MoveToFront(element)\r\n\telement.Value.(*entry).time_accessed = time.Now()\r\n}\r\n\r\nfunc (lru *LRUCache) addNew(key string, value Value) {\r\n\tnewEntry := &entry{key, value, value.Size(), time.Now()}\r\n\telement := lru.list.PushFront(newEntry)\r\n\tlru.table[key] = element\r\n\tlru.size += uint64(newEntry.size)\r\n\tlru.checkCapacity()\r\n}\r\n\r\nfunc (lru *LRUCache) checkCapacity() {\r\n\t// Partially duplicated from Delete\r\n\tfor lru.size > lru.capacity {\r\n\t\tdelElem := lru.list.Back()\r\n\t\tdelValue := delElem.Value.(*entry)\r\n\t\tlru.list.Remove(delElem)\r\n\t\tdelete(lru.table, delValue.key)\r\n\t\tlru.size -= uint64(delValue.size)\r\n\t}\r\n}\r\n"
  },
  {
    "path": "client/assets/assets_release.go",
    "content": "package assets\n\nimport (\n\t\"bytes\"\n\t\"compress/gzip\"\n\t\"fmt\"\n\t\"io\"\n\t\"io/ioutil\"\n\t\"os\"\n\t\"path/filepath\"\n\t\"strings\"\n\t\"time\"\n)\n\nfunc bindataRead(data, name string) ([]byte, error) {\n\tgz, err := gzip.NewReader(strings.NewReader(data))\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"Read %q: %v\", name, err)\n\t}\n\n\tvar buf bytes.Buffer\n\t_, err = io.Copy(&buf, gz)\n\tclErr := gz.Close()\n\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"Read %q: %v\", name, err)\n\t}\n\tif clErr != nil {\n\t\treturn nil, err\n\t}\n\n\treturn buf.Bytes(), nil\n}\n\ntype asset struct {\n\tbytes []byte\n\tinfo  os.FileInfo\n}\n\ntype bindataFileInfo struct {\n\tname    string\n\tsize    int64\n\tmode    os.FileMode\n\tmodTime time.Time\n}\n\nfunc (fi bindataFileInfo) Name() string {\n\treturn fi.name\n}\nfunc (fi bindataFileInfo) Size() int64 {\n\treturn fi.size\n}\nfunc (fi bindataFileInfo) Mode() os.FileMode {\n\treturn fi.mode\n}\nfunc (fi bindataFileInfo) ModTime() time.Time {\n\treturn fi.modTime\n}\nfunc (fi bindataFileInfo) IsDir() bool {\n\treturn false\n}\nfunc (fi bindataFileInfo) Sys() interface{} {\n\treturn nil\n}\n\nvar _assetsClientPageHtml = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xd4\\x59\\xfb\\x6f\\xdb\\x38\\xf2\\xff\\xb9\\xfd\\x2b\\x18\\x15\\x85\\x6d\\x20\\x92\\x9c\\x36\\xcd\\x77\\xe3\\x58\\x06\\x9a\\xec\\xb7\\xd8\\xee\\x5e\\xd3\\x5e\\xe2\\xde\\x02\\x57\\x14\\x01\\x25\\x8e\\x2c\\xc6\\x14\\xa9\\x90\\x23\\x3f\\xd6\\x9b\\xff\\xfd\\x40\\xc9\\xef\\x97\\x9c\\x74\\x71\\xd8\\xf3\\x2f\\x09\\xc9\\x79\\x71\\xe6\\x33\\x33\\x24\\xd5\\x4e\\x30\\x15\\x9d\\x97\\x84\\x10\\xd2\\x4e\\x80\\xb2\\xf2\\xdf\\x62\\x88\\x1c\\x05\\x74\\x64\\x4f\\xab\\x7e\\xdb\\x2f\\x07\\x8b\\x45\\xc1\\x65\\x9f\\x24\\x1a\\xe2\\xc0\\xf1\\x0d\\x52\\xe4\\x91\\x1f\\x19\\xe3\\x27\\xbc\\x97\\x08\\xde\\x4b\\xd0\\x4b\\xb9\\xf4\\x22\\x63\\x1c\\xa2\\x41\\x04\\x8e\\xc1\\xb1\\x00\\x93\\x00\\xa0\\x53\\x2d\\x24\\x54\\x0a\\x0d\\x6a\\x9a\\x1d\\x24\\xc4\\x44\\x9a\\x67\\x48\\x8c\\x8e\\x16\\x52\\xee\\xd7\\x2d\\xb9\\x37\\x4e\\xa7\\xed\\x97\\xa4\\xd5\\xbc\\x83\\x7e\\x08\\x34\\x47\\x1e\\x8f\\x9f\\xc8\\x78\\xff\\x90\\x83\\x1e\\xbb\\x27\\xde\\xb9\\x77\\xf2\\x0c\\xbd\\x25\\xbb\\x87\\x3c\\x05\\xda\\x53\\x4f\\x64\\xa6\\xb2\\x97\\x0b\\xaa\\x9f\\xc7\\xe5\\x1a\\x2a\\x39\\xf2\\x3f\\xe0\\x19\\x56\\x87\\xd4\\xc0\\xd9\\xe9\\x13\\x99\\x0a\\x58\\x55\\xf0\\xe0\\x38\\x83\\xc0\\x41\\x18\\xa1\\x7f\\x4f\\x07\\xb4\\x9c\\x5d\\x0a\\xbd\\xfd\\x0d\\xb9\\x64\\x6a\\xe8\\x31\\x8a\\x94\\x04\\xe4\\xd7\\xdb\\xcf\\xd7\\x5e\\x46\\xb5\\x81\\xfa\\xe4\\x35\\xf1\\xc8\\xeb\\xc7\\xc6\\xc5\\x42\\xec\\x16\\x45\\x16\\x51\\xcb\\x7a\\x2c\\xd8\\x56\\x15\\x84\\x8a\\x8d\\xc9\\x84\\xa4\\x54\\xf7\\xb8\\x74\\x51\\x65\\x2d\\xf2\\xae\\x99\\x8d\\x2e\\xc8\\xe3\\x0a\\x19\\xd2\\x50\\x80\\x55\\x4d\\x53\\x43\\x26\\x24\\x56\\x12\\x5d\\xc3\\xff\\x80\\x16\\x39\\x79\\x63\\xa9\\x8b\\x89\\x98\\xa6\\x5c\\x8c\\x5b\\xe4\\x4a\\xe5\\x9a\\x83\\x3e\\x26\\xa9\\x92\\xca\\x64\\x34\\x82\\x75\\x71\\x1e\\x8e\\xa4\\x6b\\x40\\x40\\x84\\x4a\\x13\\xd4\\x64\\x42\\xa2\\x5c\\x1b\\xa5\\x5b\\x24\\x53\\x5c\\x22\\xe8\\x2a\\x8e\\x56\\xa2\\x06\\x60\\xf9\\x42\\x1a\\xf5\\x7b\\x5a\\xe5\\x92\\xb9\\x91\\x12\\x56\\xc2\\x2b\\xc6\\xd8\\x86\\xfd\\xda\\x2b\\x99\\x81\\x1d\\x2f\\x0f\\x66\\x62\\x56\\x88\\x0b\\xbf\\x6c\\x8a\\x8d\\xe3\\xf3\\xf3\\xf3\\xf3\\x8b\\x43\\x48\\x9b\\xc5\\x6f\\x93\\xb4\\x5c\\x1f\\x26\\x1c\\x61\\x75\\x71\\x6d\\xb3\\x19\\xc5\\x64\\xc3\\xa8\\x21\\x67\\x98\\xb4\\xc8\\x49\\xb3\\xf9\\x7a\\x2f\\xf3\\x50\\xd3\\x2c\\x03\\xb6\\xc9\\xaf\\x34\\x73\\xed\\x62\\x8b\\x84\\x1a\\x68\\xdf\\xb5\\x13\\xeb\\x36\\x16\\x44\\xc5\\xf2\\x3e\\x2a\\xeb\\xb4\\x58\\xa8\\x61\\x8b\\x24\\x9c\\x31\\x90\\xbb\\xec\\x69\\xfb\\x05\\x04\\xa7\\x05\\xd8\\x2f\\x2b\\x70\\x39\\x28\\x80\\x27\\x7b\\x2e\\xcd\\xb2\\xc0\\x29\\xd2\\x65\\xb9\\xea\\x31\\x3e\\x20\\x91\\xa0\\xc6\\x04\\x4e\\xa4\\x24\\x52\\x2e\\x41\\x3b\\x96\\xdc\\x8e\\xb4\\x12\\x02\\x74\\xe0\\xfc\\x82\\x98\\x75\\x47\\x72\\x1d\\xd2\\xcb\\xcc\\x92\\x0e\\x42\\xaa\\x49\\xf9\\xc7\\xe5\\x72\\x00\\xda\\xc0\\x6c\\x18\\xf3\\x11\\x30\\x8b\\xf9\\x35\\x01\\xdb\\x85\\xb8\\x5c\\x5a\\x23\\x36\\x49\\x77\\x1b\\xbc\\x9d\\xb6\\xa0\\xa7\\x33\\xea\\x50\\x53\\xc9\\x9c\\x69\\x9b\\x78\\xe5\\xcc\\x1a\\x12\\xdd\\xc3\\x9b\\x8b\\x25\\xcb\\xf6\\x28\\x21\\x65\\x13\\x9a\\x11\\xd3\\x08\\xf9\\x00\\x9c\\x4e\\x9b\\x2e\\xb4\\x7d\\x94\\xa1\\x05\\x2e\\xb9\\x81\\x87\\x1c\\x0c\\x1a\\xab\\xb8\\xed\\x0b\\x5e\\x21\\xf4\\xc8\\x75\\xab\\xb4\\xae\\xa8\\xf9\\x9c\\xe3\\xb3\\xf4\\xac\\x89\\xb9\\x52\\x32\\xe6\\xbd\\x5c\\x53\\xe4\\x4a\\x1e\\x26\\xc2\\x75\\xf7\\x38\\xd2\\xcf\\xc5\\x8e\\x70\\xfa\\x8c\\x0f\\xb6\\x80\\x62\\x73\\x7a\\xdb\\x94\\xc5\\x82\\xec\\xb9\\x26\\x51\\xc3\\xc0\\xc1\\x91\\x34\\x9e\\x00\\xd9\\xc3\\x24\\x08\\x9a\\xce\\x2c\\x18\\x5a\\x0d\\x2b\\x50\\x67\\x32\\x2a\\xcf\\x88\\x8a\\x63\\x03\\xf8\\xf6\\x00\\xd8\\x0d\\x41\\x08\\x87\\x14\\xf9\\x16\\x38\\x19\\x65\\x8c\\xcb\\x5e\\x8b\\xbc\\x69\\x66\\xa3\\xb2\\xa2\\xef\\x43\\x63\\x72\\xda\\xb9\\x56\\x44\\x4f\\x83\\x43\\x50\\x11\\xc6\\x4d\\x26\\xe8\\x98\\x8c\\x01\\xdb\\x7e\\x72\\xda\\x79\\xf9\\xe2\\xc5\\x8b\\x76\\xa2\\x89\\xbf\\x4f\\xca\\xbb\\x4e\\x57\\x91\\x1e\\x20\\x31\\x48\\x75\\x51\\x6a\\x53\\xda\\x07\\x42\\x67\\x92\\xad\\x60\\x25\\x81\\xa8\\x98\\x8c\\x55\\xae\\x09\\xe6\\x52\\x82\\x20\\x5f\\x6f\\xfe\\x61\\x5a\\x6d\\x3f\\x79\\x57\\x81\\x86\\x5d\\xd1\\x5a\\x21\\x12\\xdc\\xfa\\x5e\\x43\\x06\\x14\\x03\\x07\\x09\\x97\\x53\\x35\\xb6\\x17\\x67\\x33\\x67\\x09\\xa0\\xac\\xc8\\x04\\xa4\\xba\\x07\\x18\\x38\\x77\\xa1\\xa0\\xb2\\x3f\\xcb\\xc3\\xc9\\x84\\xa0\\xf7\\x25\\x0f\\x05\\x8f\\xbe\\x6a\\x41\\x1e\\x1f\\x9d\\xce\\xc6\\x54\\x89\\xbf\\xec\\x10\\x18\\xef\\xc4\\x59\\xb9\\x9a\\xfd\\x37\\x41\\xd8\\x79\\x32\\x06\\x77\\x61\\x2f\\x39\\xed\\xbc\\x17\\x62\\x29\\xa5\\x2d\\x4c\\xb6\\x52\\x16\\xa7\\x87\\x99\\xcc\\x72\\xb0\\xdc\\xce\\xf7\\x21\\x13\\xf5\\x7a\\xd5\\xef\\x8e\\xe4\\x35\\x1d\\x7c\\x44\\x48\\xcb\\x86\\x50\\x4a\\x9d\\xd4\\x66\\x2d\\xbd\\xd6\\xe2\\xe6\\x7d\\x51\\xea\\xea\\x8d\\x47\\x67\\x05\\x0c\\x23\\x59\\xc0\\xc1\\xb6\\x8c\\x92\\x95\\x47\\xfd\\xc0\\xb1\\x18\\x9d\\x31\\x54\\x55\\x53\\x64\\xf3\\x74\\x2b\\xbb\\xac\\xd3\\x59\\xf6\\x97\\xed\\xdb\\x25\\x54\\x46\\xd2\\xbb\\x81\\x07\\xef\\x13\\x60\\xa2\\xd8\\x17\\xdb\\xce\\x2d\\x62\\x6c\\x98\\xda\\x3e\\xb2\\x4a\\x2d\\x0b\\x19\\x26\\xf3\\x6e\\x91\\x62\\x6e\\x0a\\x01\\x87\\xb0\\xb6\\x6d\\xd4\\xe6\\x16\\xe5\\x42\\xb8\\xda\\x5e\\x14\\xe6\\x76\\xfd\\x3c\\x2d\\xa0\\x85\\x40\\x4b\\x5b\\x61\\x52\\xdb\\x47\\xbd\\x0b\\xa1\\x45\\x30\\x0f\\xc2\\x28\\xd9\\x0a\\xad\\x1d\\x2d\\xdd\\x59\\x40\\xf7\\xe8\\xc8\\x8e\\xab\\xcb\\x9f\\x56\\x43\\x37\\x16\\x39\\x67\\xfb\\xd0\\xb4\\xa6\\xff\\xb4\\x2a\\xdc\\x85\\x27\\x8b\\xbb\\xa1\\xad\\x09\\x1f\\x6f\\x3f\\xff\\x74\\xd6\\x3c\\xa9\\x77\\x47\\xd2\\xc6\\x44\\x63\\xe3\\xf1\\x71\\x9e\\x4c\\x69\\x8e\\xb0\\x4f\\xf7\\xec\\x37\\x99\\x74\\x79\\x0a\\x1f\\x94\\x4e\\x29\\xae\\x48\\xaa\\x28\\x21\\x45\\xa0\\xf6\\xc4\\x68\\xab\\xc3\\x9f\\xbd\\xf1\\xf9\\xa1\\x81\\x47\\x4a\\xba\\xf6\\xc6\\x66\\x6f\\x32\\xbc\\x43\\x66\\xe0\\x39\\xc0\\x6f\\xd3\\x56\\x34\\xbd\\x5a\\x08\\x88\\xb1\\x45\\x7e\\xb2\\x8d\\x68\\xcd\\x65\\x93\\x49\\x77\\x09\\x95\\x73\\x50\\xfe\\xd0\\x5e\\x7f\\x60\\xb3\\xb9\\xb1\\x27\\xb7\\x62\\xb3\\x1f\\xbf\\xfc\\xe5\\xdb\\xbc\\x52\\x52\\x5e\\xe1\\xc8\\xbb\\x12\\x1c\\x24\\xbe\\x67\\x4c\\x7b\\x26\\x13\\x1c\\xeb\\x4e\\xcb\\x69\\x7c\\x6b\\x7e\\xff\\xa1\\xed\\xef\\x5b\\xda\\xdd\\xbb\\x57\\x5b\\xc5\\xd1\\xd1\\x0d\\x3c\\x6c\\xcd\\xcb\\x69\\xa1\\xdf\\x7b\\x8e\\x78\\xbb\\x51\\x1e\\x27\\x13\\xb2\\xa5\\x10\\x26\\x6f\\x2b\\x02\\xa8\\x64\\x88\\x72\\x5a\\xa0\\x35\\xd8\\xa3\\x48\\xbd\\xe1\\x90\\x10\\x65\\xe0\\xdc\\x14\\x43\\xc7\\xde\\x49\\x4d\\xe0\\xdc\\xe6\\x69\\x4a\\xf5\\xf8\\xf8\\x17\\xa0\\x0c\\xb4\\x39\\xbe\\xa1\\xc3\\xe3\\x4b\\x2e\\xa9\\x1e\\xef\\x33\\xb4\\x74\\xd4\\x7e\\x13\\xe6\\x2e\\xe1\\xa6\\x4b\\xc3\\x7a\\x6d\\xaa\\xa9\\x56\\xd9\\x24\\xfa\\x30\\x1e\\x50\\x31\\xab\\x1b\\xff\\xcc\\x41\\x8f\\xc9\\x97\\xe2\\xea\\xec\\x10\\xcc\\x33\\x01\\xc6\\x6e\\xe2\\xc1\\x9b\\xce\\x75\\xda\\x7e\\xc9\\x51\\x21\\xd6\\xda\\x64\\x6f\\x4d\\x25\\xf3\\xa5\\x62\\x63\\x87\\x84\\xc5\\x4e\\xa7\\x33\\xd3\\x5d\\x57\\xe5\\xc7\\x73\\xf6\\x3e\\xf5\\xee\\x53\\xf7\\x3e\\x65\\x5b\\xdd\\x76\\x39\\x79\\xc8\\xb6\\x9f\\x65\\xea\\x0d\\x1d\\x56\\x9b\\x99\\x69\\xe8\\xb4\\x23\\xc5\\xe6\\xa7\\x92\\x04\\x31\\x9b\\x83\\xf5\\x86\\x0e\\xbb\\x30\\xc2\\x02\\xa9\\x96\\xc8\\x9e\\xf3\\xf4\\x96\\x36\\xf7\\x43\\x76\\x96\\xe1\\x7a\\x82\\xa9\\x4b\\xd6\\x5d\\x8e\\x11\\xcc\\x5f\\x62\\xde\\xde\\xb5\\x44\\xaf\\x56\\xb7\\x16\\x39\\xb5\\xd7\\x89\\x66\\x71\\xab\\x70\\x6c\\x3d\\x39\\xb0\\xa0\\x98\\x6c\\x47\\x45\\x31\\x99\\x92\\x06\\x2a\\x4a\\xca\\xe2\\x94\\x57\\x1c\\x87\\x4c\\x71\\x1c\\xba\\xb2\\x33\\xd3\\x88\\xad\\x9e\\x91\\x6c\\x6d\\xd9\\x1f\\x8a\\xea\\xca\\x71\\x48\\x8f\\x79\\x76\\x7d\\x58\\x4e\\x64\\x93\\x6d\\x64\\xb2\\x9d\\xfa\\x9f\\x48\\x65\\x93\\xfd\\xed\\x73\\xd9\\x64\\x7f\\xeb\\x64\\x2e\\xcd\\x7b\\x56\\x36\\x3f\\x61\\xa9\\xfa\\xc6\\xb8\\x3e\\x3c\\x72\\x5d\\xf2\\xd5\\x80\\xfe\\x97\\xe2\\x11\\x90\\x5f\\xe9\\x80\\xde\\x96\\x6f\\xd6\\xb7\\x3f\\xff\\x46\\xea\\x4a\\x8a\\x31\\x91\\x00\\x0c\\x18\\x51\\x32\\x02\\xa2\\x24\\xa1\\x24\\xa3\\x3d\\x68\\xac\\xbc\\xb7\\x4c\\x1f\\xba\\x3b\\xf5\\x38\\x97\\x91\\x3d\\xdb\\xd5\\x1b\\x93\\x01\\xd5\\x24\\x1f\\x04\\x4c\\x45\\x79\\x0a\\x12\\xbd\\x48\\x03\\x45\\xf8\\x7f\\x01\\x76\\x54\\xaf\\x95\\x1c\\xb5\\xc6\\x45\\x3e\\xf0\\x8a\\x77\\xeb\\xda\\xda\\xfb\\x78\\xcd\\xae\\x50\\x33\\x96\\x51\\x80\\x3a\\x07\\x3b\\x32\\x3a\\x0a\\x6a\\xbe\\x3f\\xe4\\xac\\x07\\xe8\\xd9\\xe3\\xdb\\xc0\\x9a\\xed\\x45\\x2a\\xf5\\x4f\\x7f\\xfb\\x9a\\xb2\\x0f\\x67\\xbf\\xff\\x9b\\xbd\\x6d\\xbe\\xf9\\x14\\x0f\\x15\\x1d\\x7f\\x1a\\x7a\\xf7\\xa6\\x76\\x61\\x0d\\x31\\x0b\\x3b\\x7a\\x80\\x53\\x23\\xcc\\xe5\\xb8\\x4b\\x7b\\xd7\\x34\\x85\\x85\\x39\\xdf\\x9a\\xdf\\x2f\\x8c\\x97\\x51\\x0d\\x12\\xaf\\x15\\x03\\x8f\\x4b\\x03\\x1a\\x2f\\x21\\x56\\x1a\\xea\\xf9\\xe0\\xd8\\x34\\x1e\\x1b\\xf5\\xc6\\xe2\\x09\\x7e\\xd5\\x95\\xef\\x6d\\xc5\\x21\\xa8\\x88\\xa0\\xb9\\x8c\\x12\\x82\\x09\\x90\\xa2\\x7e\\xf1\\x88\\xfc\\x5e\\x98\\xbd\\xd5\\x6f\\xf3\\x89\\x45\\x28\\x82\\xd9\\x17\\x81\\xc5\\xd4\\x9f\\x7f\\x92\\x6f\\xdf\\x2f\\x36\\x69\\xbd\\x2c\\x37\\x49\\xfd\\x5b\\xcd\\xe2\\xb4\\x4b\\xc3\\xda\\x31\\xa9\\x45\\xa5\\xce\\xbb\\xd2\\x55\\xb5\\xe3\\x95\\x27\\xe2\\x54\\x31\\x68\\x91\\x5a\\x0c\\xc0\\x42\\x1a\\xf5\\x6b\\xc7\\x4b\\x6b\\x99\\xe6\\xb6\\xb4\\xdd\\x4d\\xdf\\xb7\\x6b\\xaf\\xa2\\xe8\\x8c\\x35\\x9b\\x2b\\x34\\x82\\xcb\\xfe\\x82\\xa0\\xd9\\xfc\\x3f\\x16\\xc6\\x2b\\x04\\xb1\\xd2\\x79\\x7a\\xc7\\x59\\x8b\\xbc\\x39\\x39\\x39\\x7f\\xf3\\x6e\\x79\\x0d\\x69\\x78\\x27\\x68\\x08\\xa2\\x45\\x6a\\x1f\\xb6\\x59\\x60\\x09\\xf6\\x69\\xb7\\xeb\\x99\\x32\\xdc\\xc2\\xac\\x45\\x6a\\x29\\x67\\x4c\\x40\\x71\\x1a\\xdf\\x20\\x2b\\x5e\\x81\\x11\\x58\\x8b\\xc4\\x54\\x18\\x98\\xaf\\x3e\\x7e\\xdf\\xf9\\x35\\xa5\\xed\\xdb\\x7a\\xdd\\x79\\xd9\\xf6\\xcb\\xef\\x89\\xff\\x09\\x00\\x00\\xff\\xff\\x5e\\x30\\x4e\\xad\\x57\\x1c\\x00\\x00\"\n\nfunc assetsClientPageHtmlBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientPageHtml,\n\t\t\"assets/client/page.html\",\n\t)\n}\n\nfunc assetsClientPageHtml() (*asset, error) {\n\tbytes, err := assetsClientPageHtmlBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/page.html\", size: 7255, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticCssBootstrapMinCss = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xec\\xbd\\x5d\\x8f\\xe4\\x36\\xb2\\x20\\xfa\\xde\\xbf\\x42\\xdb\\x86\\x31\\xee\\x76\\xa6\\x86\\xfa\\x96\\xaa\\xe0\\xc6\\x9c\\x7b\\x76\\x71\\xf7\\x00\\x7b\\xce\\xcb\\x3d\\x0f\\x17\\x98\\xf1\\x5e\\x28\\x53\\xca\\x2a\\x1d\\x2b\\xa5\\x1c\\xa5\\xb2\\xab\\xda\\x85\\xfa\\xef\\x17\\xfc\\x92\\x18\\x64\\x90\\x52\\xd6\\x87\\x67\\xbc\\x70\\x95\\x5d\\x9d\\x49\\x06\\x83\\x64\\x30\\x22\\x48\\x06\\x83\\xc1\\x3f\\x7f\\xfe\\x6f\\x1f\\xbc\\xcf\\xde\\xff\\xd5\\xf7\\xe3\\x79\\x1c\\xca\\x93\\xf7\\x35\\xf4\\x23\\x3f\\xf8\\xe0\\x7d\\xa6\\xc9\\xff\\xda\\x9f\\xbe\\x0d\\xcd\\xdd\\xfd\\xe8\\x85\\x24\\x08\\xbd\\xff\\x7c\\x68\\xc6\\xb1\\x1e\\x36\\xde\\xbf\\x75\\x7b\\x9a\\xfd\\xbf\\x9a\\x7d\\xdd\\x9d\\xeb\\xca\\xbb\\x74\\x55\\x3d\\x78\\xe3\\x7d\\xed\\xfd\\xcb\\xa9\\xdc\\xdf\\xd7\\x32\\x87\\x62\\x23\\x14\\xf2\\x7e\\x1c\\x4f\\x37\\x7f\\xfe\\xf3\\xc3\\xc3\\x83\\x5f\\x32\\x08\\xbf\\x1f\\xee\\xfe\\xdc\\x72\\xa8\\xf3\\x9f\\xff\\xd7\\xbf\\xfd\\xeb\\xff\\xf8\\x8f\\xff\\xe7\\x7f\\x6c\\x39\\x34\\x2d\\xf0\\xdf\\xeb\\x73\\x73\\xd7\\xd5\\x95\\x57\\x76\\x95\\xb7\\xbb\\x34\\xed\\xe8\\x3d\\x34\\xe3\\xbd\\x57\\xb6\\x2d\\xab\\xa7\\xed\\xbf\\xd6\\x5e\\xd3\\xb1\\xcf\\x0f\\xfd\\xd0\\x56\\xde\\x5f\\x46\\xde\\x3a\\x6f\\xf7\\xcd\\xfb\\xcb\\xb1\\xea\\x59\\xc9\\xbf\\x1c\\xca\\xd1\\xff\\xe0\\x7d\\xfe\\xf3\\x07\\x7f\\xdf\\xd6\\xe5\\x70\\x68\\x1e\\x9f\\x3e\\xff\\xda\\xf7\\xc7\\x9b\\xe0\\xf6\\x79\\x4a\\xba\\xd9\\xd5\\x87\\x7e\\xa8\\x37\\x73\\x42\\x79\\x18\\xeb\\xe1\\xa9\\x6a\\xce\\xa7\\xb6\\xfc\\x76\\x33\\x96\\xbb\\xb6\\xbe\\xdd\\xf7\\xdd\\x58\\x77\\xe3\\xcd\\xc7\\x8f\\xb7\\x6d\\xd3\\xd5\\xdb\\xfb\\x9a\\x52\\xe6\\x86\\xdc\\x3e\\x7f\\xd0\\x0b\\xb2\\xaf\\x37\\xbb\\x7e\\xbc\\xa7\\x99\\xf7\\x4d\\x55\\x6f\\xc7\\xfa\\x71\\x7c\\x3a\\xf4\\xdd\\x78\\x43\\xfe\\x4c\\xbc\\xf2\\x76\\xdf\\xb7\\xfd\\x70\\x33\\x0e\\x65\\x77\\x3e\\x95\\x43\\xdd\\x8d\\xb7\\x14\\x62\\x7b\\xbe\\x2f\\xab\\xfe\\xe1\\xa6\\xeb\\xbb\\xfa\\x76\\x57\\xee\\x7f\\xb9\\x1b\\xfa\\x4b\\x57\\x6d\\x4d\\xe8\\x5d\\x3f\\x54\\xf5\\xc0\\x6b\\x6f\\xba\\xd3\\x65\\xdc\\xee\\xda\\x7e\\xff\\xcb\\xb6\\xad\\xbf\\xd6\\xed\\xd4\\x72\\x96\\x76\\xfb\\xd0\\x54\\xe3\\xfd\\x4d\\x40\\xc8\\xf7\\xb7\\xc7\\xa6\\x93\\x0d\\x8f\\xc8\\xe9\\xf1\\x76\\xfb\\x50\\xef\\x7e\\x69\\xc6\\xed\\xae\\x7f\\xdc\\x9e\\x9b\\x5f\\x9b\\xee\\xee\\x86\\x63\\xa6\\x29\\xb7\\xdb\\x63\\xff\\xab\\x25\\x0b\\x4f\\x7d\\xfe\\x50\\x0e\\x63\\xb3\\x6f\\xeb\\x4d\\x79\\x6e\\xaa\\x7a\\x53\\xd5\\x63\\xd9\\xb4\\xe7\\xcd\\xa1\\xb9\\xdb\\x97\\xa7\\xb1\\xe9\\x3b\\xfa\\xf1\\x32\\xd4\\x9b\\x43\\xdf\\x53\\x56\\xba\\xaf\\xcb\\x8a\\xfe\\x43\\xfb\\x79\\xda\\x74\\xe5\\xd7\\xcd\\xb9\\xde\\x53\\x38\\xad\\x0b\\xcf\\x1f\\xca\\x4b\\xd5\\xf4\\x9b\\x7d\\xd9\\x7d\\x2d\\xcf\\x9b\\xaf\\x4d\\x55\\xf7\\x13\\x48\\xd3\\xb1\\x01\\xe1\\x90\\x9f\\x61\\xea\\xed\\x34\\xdc\\x1c\\xc3\\x4d\\xd7\\x8f\\x3f\\xfc\\x95\\x8e\\xe5\\xd0\\xb7\\xe7\\x9f\\x3f\\x4d\\x48\\x18\\xc9\\x9f\\x3f\\xdc\\x8f\\xc7\\x96\\x8d\\x13\\xed\\x5d\\xcd\\x89\\x26\\x89\\xc4\\x47\\xa8\\xf9\\xb5\\xde\\x96\\xd5\\x7f\\x5d\\xce\\xa3\\xc8\\x3d\\x9e\\x2d\\x39\\xcf\\x1f\\xca\\x9b\\x43\\xbf\\xbf\\x9c\\x9f\\xfa\\xcb\\x48\\x1b\\x73\\x33\\xde\\x37\\x9d\\x57\\xf5\\xe3\\x58\\x57\\xde\\x77\\x51\\x14\\xdd\\xca\\x8c\\xe4\\xf4\\xe8\\x95\\x97\\xb1\\xf7\\x64\\x5d\\xac\\xdc\\x76\\x68\\xba\\x3b\\x3e\\xf8\\x12\\x72\\xdb\\x1f\\x0e\\xe7\\x7a\\xbc\\xd9\\x86\\x27\\x46\\xee\\x9b\\xfb\\xfe\\x6b\\x3d\\x6c\\xca\\x9b\\x72\\x3f\\x36\\x5f\\xeb\\xa9\\x26\\xca\\x18\\xe7\\xcb\\x6e\\x73\\xbe\\x9c\\x9e\\x4e\\xfd\\xb9\\xa1\\x34\\xbd\\x19\\xea\\xb6\\xa4\\x50\\xb7\\x73\\x07\\xb3\\xe4\\x7b\\x8d\\x9d\\xbf\\xd6\\x74\\x08\\xcb\\x76\\x5b\\xb6\\xcd\\x5d\\x77\\xb3\\x2b\\xcf\\x35\\x23\\x24\\xc5\\x77\\x7a\\x1a\\xfb\\xd3\\xcd\\x96\\xf8\\x49\\x7d\\xe4\\x15\\x3c\\xed\\xfa\\x71\\xec\\x8f\\x34\\x2d\\xe4\\x89\\xcd\\xf1\\xee\\xe9\\x58\\x3e\\x6e\\x15\\xae\\xe3\\x1f\\x69\\xff\\xfe\\x56\\xdc\\x8a\\x8a\\xe8\\x37\\xbd\\xae\\x63\\x53\\x55\\x6d\\x3d\\xf3\\x36\\x25\\x6d\\xd3\\x8d\\xf5\\x70\\xea\\x69\\xc3\\xfb\\x6e\\x7b\\xec\\xab\\xfa\\x66\\xd7\\xec\\x2f\\xbb\\x66\\x7f\\xfb\\xfc\\xe1\\xbb\\x63\\x79\\xfa\\xff\\x38\\x4f\\x78\\xcd\\xf1\\x6e\\xe3\\xdf\\xf5\\xfd\\x5d\\x5b\\x6f\\x8f\\xe5\\x89\\x25\\x28\\x0d\\x11\\xe3\\xbb\\xbb\\x8c\\x63\\xdf\\x6d\\x98\\xc8\\x6c\\xce\\x75\\x5b\\xef\\xc7\\x0d\\x1d\\xbd\\x72\\xa8\\xcb\\xa7\\x63\\x39\\xdc\\x35\\xdd\\x0d\\xb9\\xd5\\x18\\x00\\x6f\\x26\\x44\\xf6\\xf4\\x99\\x0e\\xc4\\xa1\\xed\\x1f\\x6e\\xbe\\x36\\xe7\\x86\\x6a\\x0c\\x95\\xae\\x5d\\x3f\\x1c\\xcb\\x76\\x2a\\x73\\x73\\xc3\\x64\\x8b\\x8f\\x72\\xd3\\x75\\xf5\\xc0\\xb1\\x98\\xe9\\x4f\\xa7\\xb2\\xaa\\xa8\\x98\\x11\\x55\\xe6\\x45\\xcd\\x94\\x5b\\x3d\\x56\\xf0\\xaf\\xe3\\xb7\\x53\\xfd\\xd3\\x47\\x9e\\xfe\\xf1\\xe7\\x8d\\x9a\\x38\\xd4\\xe7\\x7a\\xd4\\xd2\\xce\\x97\\xdd\\xb1\\x19\\x3f\\xfe\\xfc\\x24\\x19\\xae\\x3c\\x9d\\xea\\x72\\x28\\xbb\\x7d\\x7d\\xc3\\x91\\xdc\\xee\\x2f\\xc3\\xb9\\x1f\\x6e\\x4e\\x3d\\x1b\\x82\\xdb\\xe7\\x0f\\x6d\\xb9\\xab\\x5b\\x49\\x34\\xb5\\xef\\x2f\\xad\\x1c\\x02\\x96\\x55\\xd3\\x6b\\x69\\xfb\\xfb\\x7a\\xff\\xcb\\xae\\x7f\\xfc\\xf8\\xf3\\x93\\xd1\\x1a\\x80\\xb0\\x2e\\x87\\xfd\\xbd\\xd2\\x1b\\x45\\x3d\\x09\\xbd\\x8d\\x2a\\x34\\x35\\xcf\\x56\\xc4\\xa4\\x0f\\xe5\\x97\\x43\\x53\\xb7\\x95\\xa5\\x15\\x37\\x37\\xb2\\x10\\x4f\\xd9\\x56\\xf5\\xbe\\x1f\\x18\\x03\\x6f\\x56\\xc1\\xef\\x69\\x35\\xed\\x96\\xd3\\x13\\x1b\\x21\\xc1\\xcc\\x13\\xe3\\x4e\\xac\\x87\\x49\\xd5\\xd8\\x9f\\x6e\\x9f\\x3f\\xfc\\xe5\\x58\\x57\\x4d\\xe9\\x9d\\x86\\xa6\\x1b\\x9f\\x3e\\x3f\\xe9\\xb3\\x8d\\xf7\\xdf\\x9a\\xe3\\xa9\\x1f\\xc6\\xb2\\x1b\\xc5\\xdc\\xf4\\x1d\\x21\\x44\\x4d\\x9d\\xa7\\x23\\x75\\x22\\x02\\x10\\x94\\x82\\x38\\xca\\x67\\xaf\\xdc\\x94\\x4c\\x30\\xc6\\xba\\xe2\\x95\\xcf\\x44\\xb9\\x61\\xeb\\x07\\xae\\x64\\xbc\\xf2\\xaf\\xf7\\x43\\x7d\\xf8\\x59\\xce\\xa4\\x72\\xd2\\xf5\\x7e\\xf8\\xe8\\x95\\xe3\\x38\\xfc\\x40\\x73\\x3f\\x79\\x1f\\x3f\\x7d\\xa4\\xb0\\xbb\\xdd\\xf0\\xd7\\xb1\\x19\\xdb\\xda\\x0e\\xcf\\xb2\\x65\\x01\\xbf\\x19\\xbc\\x92\\x83\\x6e\\x78\\x45\\xff\\xfb\\xa7\\x8f\\xff\\x55\\x7e\\x2d\\xcf\\xfb\\xa1\\x39\\x8d\\x37\\x1f\\x7f\\xd6\\x33\\xbf\\xfb\\x68\\xa0\\xa6\\x88\\x4e\\x43\\xbd\\x61\\xf3\\xcd\\xdf\\x2f\\xfd\\x58\\x3f\\x09\\xc9\\x0c\\x4e\\x8f\\xde\\xb9\\x6f\\x9b\\xca\\xfb\\xae\\x28\\x8a\\xdb\\x53\\x79\\x57\\x6f\\x77\\x43\\x5d\\xfe\\xb2\\x6d\\x3a\\x3a\\x1f\\xde\\x94\\x5f\\xfb\\xa6\\xba\\x7d\\xa6\\xcb\\x96\\xb2\\x82\\xeb\\x8b\\x2d\\x9f\\x0a\\xb7\\x6c\\x26\\xa4\\x20\\xc3\\x86\\x2a\\x30\\x3b\\x0e\\x53\\xcf\\x42\\x82\\xff\\x85\\x16\\xf5\\x26\\x9d\\xe6\\x27\\xfb\\xe3\\xed\\xf3\\x69\\x73\\x1f\\x6e\\xee\\xa3\\xa7\\x7e\\x38\\xdd\\x97\\xdd\\xf9\\x26\\xa2\\xba\\xb9\\x7f\\xa0\\x1f\\x9e\\x3d\\x9e\\xa5\\xd4\\xc8\\x3a\\x2e\\x2b\\x7c\\xde\\xf5\\xd5\\x37\\x4d\\x45\\x1e\\xca\\x63\\xd3\\x7e\\xbb\\xf9\\xf8\\x3f\\xeb\\xf6\\x6b\\x4d\\x79\\xce\\xfb\\x8f\\xfa\\x52\\x7f\\xdc\\x4c\\xdf\\x37\\xff\\x32\\x34\\x65\\xbb\\x39\\x97\\xdd\\x79\\x7b\\xae\\x87\\xe6\\xa0\\xaa\\xd6\\xf8\\xf4\\x08\\x74\\x64\\x48\\x57\\x24\\x82\\xf9\\x22\\xf6\\x63\\xae\\x81\\xbe\\x3b\\xb0\\x1f\\x3a\\xf5\\x3d\\x4d\\x7c\\x9a\\xe7\\xfb\\xfd\\xad\\xce\\x54\\x42\\x46\\xe6\\x19\\x92\\x4f\\xc5\\x53\\xa1\\x24\\xc9\\x89\\x51\\x48\\xe1\\xc4\\x0f\\x7e\\x73\\xbc\\xdb\\xb2\\xba\\xeb\\x4a\\x51\\x2c\\x6c\\xb1\\x43\\x95\\xd5\\xe5\\x7c\\x93\\x9e\\x26\\x9d\\xa2\\x27\\x9b\\x29\\x02\\x23\\x9d\\xcb\\x86\\xbe\\xa9\\x26\\xc5\\x4e\\xc9\\x80\\xf6\\xf3\\xd6\\x64\\xab\\xfd\\x7e\\x6f\\xa6\\x0e\\x77\\xbb\\xf2\\x07\\xb2\\xf1\\xc4\\x7f\\x7e\\xf8\\x09\\xae\\xeb\\xb8\\x48\\x12\\x8f\\x96\\x88\\x4e\\x8f\\x06\\x7c\\xf0\\x49\\x51\\x8c\\x2b\\x80\\xd7\\xc2\\x89\\x0e\\xef\\x9b\\x61\\xdf\\xd6\\x16\\x0a\\x26\\x84\\xe0\\x34\\xe4\\x19\\x58\\xda\\xf3\\x07\\x7f\\xe8\\x1f\\x04\\x27\\x6e\\xdb\\xfa\\x40\\x57\\x43\\x34\\x63\\x5e\\xd9\\x0f\\xfd\\xc3\\xb4\\xa8\\xa7\\x9f\\xaf\\x5d\\xcf\\xcf\\x65\\xc0\\x52\\xfe\\xaf\\xfb\\xb6\\x3c\\x9f\\x3f\\xff\\xf4\\xf1\\x7c\\x2a\\xbb\\x8f\\x3f\\x3f\\x1d\\xda\\xbe\\x1c\\x6f\\x68\\x0b\\xd4\\x85\\x75\\x70\\x7a\\xbc\\x55\\x1b\\x17\\x8a\\x46\\xd3\\x0a\\xcb\\x86\\x4e\\xf5\\x7e\\x57\\x7e\\xdd\\x95\\xc3\\xf6\\x3c\\x96\\x63\\xb3\\xdf\\x8e\\xfd\\xc9\\x43\\x72\\x0f\\xcd\\x63\\x5d\\xb9\\x33\\xf9\\xe2\\x4b\\xc9\\x7f\\xe2\\xda\\xa0\\x88\\x45\\x9d\\xb4\\xa1\\x41\\x88\\xa6\\x06\\x22\\x35\\x4f\\xd5\\x54\\x22\\x52\\xb3\\x5c\\x49\\x2d\\x64\\x22\\x51\\x12\\x73\\x91\\x98\\x86\\x4a\\x62\\x26\\x12\\x13\\xb5\\xaa\\x54\\x24\\xc6\\x6a\\x4d\\x89\\x48\\x8c\\xd4\\x8a\\x62\\x99\\xa8\\x56\\x14\\x89\\xc4\\x50\\xad\\x48\\xf6\\x29\\x00\\x7d\\x92\\x4d\\x12\\x69\\x7c\\xad\\x1c\\x84\\x80\\x57\\x8a\\x1c\\xe6\\x06\\x30\\x97\\xc0\\x5c\\x02\\x72\\xf3\\x10\\xe4\\x16\\x20\\x33\\x8b\\x41\\x66\\x0e\\x32\\x53\\xd8\\xa6\\x0c\\x64\\x26\\xb0\\x49\\x29\\xcc\\x84\\x2d\\x4a\\x40\\x66\\x0c\\x1b\\x14\\x83\\xcc\\x08\\x36\\x28\\x02\\x99\\x21\\x6c\\x10\\xa4\\x51\\xa0\\xd1\\x08\\x66\\x2a\\x52\\xb8\\x3d\\xb4\\x97\\xa6\\x7a\\x52\\xd6\\xfa\\x40\\x08\\x79\\xb6\\x2a\\x8a\\x22\\xe5\\x05\\x02\\x09\\x4a\\xc2\\x1d\\xf6\\x94\\xeb\\xe9\\x12\\xfa\\x8f\\xda\\x08\\xab\\x9a\\x41\\x25\\xba\\x1f\\x84\\x59\\x9a\\x14\\x49\\x16\\xc7\\x69\\x4e\\xf2\\xe4\\xfb\\xdb\\xcf\\x30\\x9f\\xc8\\x9c\\x80\\xa4\\x51\\x1e\\x7d\\xef\\xec\\xde\\xcd\\xa1\\x19\\xce\\xe3\\x76\\x7f\\xdf\\xb4\\x15\\x18\\x22\\x48\\x33\\xae\\x1f\\xe8\\x7e\\x77\\x3b\\xf4\\x0f\\x3a\\x92\\x1f\\x75\\x9a\\x2d\\x34\\x18\\x62\\x06\\x0a\\x86\\x33\\x80\\x50\\x36\\x85\\x5f\\x28\\x3d\\x09\\x0b\\xb4\\xa4\\x94\\xd8\\x22\\xf0\\xe3\\xbc\\x88\\xd2\\x20\\x23\\x21\\xab\\x71\\xc6\\x13\\xf8\\xb1\\x92\\x5e\\xc4\\x28\\x1e\\xa9\\xb6\\xf2\\xd0\\x2f\\xb2\\x3c\\x0b\\xa3\\x98\\xc4\\x61\\x92\\x44\\xe1\\x84\\x87\\xe6\\xd0\\x94\\xa0\\x08\\x78\\x4d\\x18\\x9e\\x49\\xd1\\xc5\\x3e\\x68\\x7b\\x36\\xa1\\xa1\\x39\\x81\\xd2\\xd4\\x14\\x43\\x33\\xa9\\xc6\\xc4\\x9f\\x29\\x17\\x90\\x34\\x9e\\xd0\\xd0\\x1c\\xde\\x42\\xd1\\x1e\\x0c\\xcd\\xa4\\x4c\\x33\\x3f\\xd6\\x48\\xf9\\x79\\xca\\x89\\x54\\xaa\\xa1\\x44\\x9e\\xd4\\x6f\\xee\\x03\\xd8\\x99\\xc6\\x71\\xee\\xe7\\xb4\\x97\\x13\\xe1\\x30\\x34\\x52\\x61\\xc7\\xc4\\x57\\x1b\\x9e\\xce\\x24\\x8e\\x89\\x1f\\xcd\\xa4\\x0f\\x8a\\x10\\x43\\x33\\xa9\\xf8\\xc0\\x2f\\x54\\x42\\x66\\xf9\\x84\\x27\\x0a\\xfc\\x5c\\x6d\\x67\\x86\\x12\\x79\\x9a\\x16\\x22\\x3f\\x06\\xa4\\x9c\\xa9\\x1c\\x46\\x7e\\x34\\x0d\\x21\\xed\\x1c\\x4a\\xe6\\x79\\x2a\\xf1\\x73\\x0b\\x81\\x68\\x16\\xa8\\x04\\xe7\\x42\\x39\\xec\\x7e\\x04\\xa8\\x39\\xe3\\x49\\xfd\\x08\\x64\\x18\\xed\\x41\\x67\\xac\\x80\\xc4\\x3e\\x60\\xdd\\x4c\\x53\\x1b\\x14\\x00\\xd0\\xd2\\x18\\x40\\x89\\xd7\\xaa\\x31\\x02\\xa2\\x8b\\xba\\x51\\x47\\xe8\\xcf\\x23\\x12\\xc7\\x69\\x66\\xa9\\x43\\x9b\\x4f\\x13\\x1f\\x68\\xb4\\x50\\x43\\x5b\\x24\\x7e\\xaa\\x52\\xcb\\x86\\xd4\\xda\\xf0\\x22\\xf2\\x01\\xaf\\xc4\\x7a\\x05\\x91\\x0f\\x58\\xc0\\x60\\x4a\\x7c\\xa2\\xcf\\x7c\\x85\\x91\\x83\\xb8\\xd0\\xb0\\xe6\\x19\\xa4\\x96\\x8d\\x18\\xc4\\xda\\xee\\x3c\\xf1\\xd5\\x66\\xe9\\xcd\\xce\\x63\\xbf\\x00\\x3f\\x78\\x05\\xda\\x0a\\x24\\xf7\\x33\\xd0\\x6c\\x0d\\x69\\x96\\x43\\x5a\\x59\\x68\\x51\\x58\\x1b\\x9d\\xa5\\x7e\\x02\\x34\\x9a\\x5e\\x41\\x0a\\xd5\\xb8\\x65\\x38\\xe1\\xd2\\x28\\x23\\xbe\\xca\\x57\\x3a\\xe3\\x65\\x04\\x10\\x2a\\xb2\\x50\\x22\\xb7\\x36\\x3a\\xcd\\x7d\\x45\\x93\\xe7\\x99\\xce\\x82\\x69\\xe6\\xaf\\x90\\x49\\xb8\\x62\\x4b\\x03\\x3f\\x03\\xd2\\xa0\\xe3\\x0c\\x0c\\x42\\xa1\\x48\\xad\\x8d\\x4e\\x0a\\x5f\\x2d\\x1e\\x65\\xfa\\x52\\x21\\x29\\x8c\\x29\\x0a\\xab\\x41\\x5b\\x4b\\x46\\x7e\\x00\\xb4\\xae\\x81\\x35\\x82\\xb4\\x0a\\x2c\\x9a\\x24\\xb5\\x37\\x3c\\xf0\\x55\\xb6\\x26\\x91\\x51\\x05\\x81\\x93\\xa2\\x85\\xde\\xda\\x3a\\x37\\xf6\\x41\\x67\\x75\\x79\\x8c\\x63\\x48\\xae\\xdc\\x82\\xd4\\xda\\xec\\x38\\xf4\\x5d\\x1a\\x36\\x0e\\x7d\\xd7\\xba\\x0c\\x5f\\x7e\\xa7\\x3e\\x50\\x4c\\xb1\\x2e\\x8e\\x51\\x0a\\x49\\x65\\xa1\\x75\\x6c\\x6d\\x74\\x14\\xfb\\x60\\xe6\\xd3\\xb9\\x30\\x8a\\xe0\\x8c\\x6f\\xe1\\x42\\x6d\\x63\\x90\\xf9\\x29\\xe0\\x5d\\xbd\\xd9\\x61\\xa6\\x93\\x0a\\x45\\x6a\\x6d\\x75\\x98\\xf8\\x6a\\x71\\xa2\\xcb\\x63\\x98\\xc0\\x05\\x46\\x60\\x19\\x4c\\x6d\\x92\\x2c\\xe0\\x14\\x98\\xea\\xcd\\x0e\\x0a\\x83\\x58\\x28\\x56\\xfb\\x14\\x99\\xc1\\x09\\xd0\\x98\\x21\\x53\\x73\\x45\\x83\\x4e\\x0a\\xda\\xc4\\x0b\\x27\\x40\\x43\\x24\\x03\\x62\\x90\\x0b\\xc5\\x6a\\x9f\\x69\\xe0\\x04\\x68\\xcc\\x34\\xda\\xf2\\x89\\xb5\\x5a\\xdb\\x13\\xb0\\x33\\xcc\\x8d\\x7d\\x23\\xc2\\xf2\\xf5\\xa3\\x34\\x1d\\xe6\\x74\\x69\\xdb\\x2d\\x3b\\x4e\\x76\\x61\\x9a\\xa1\\x84\\x79\\x85\\x7d\\x06\\xf6\\x13\\xd9\\xbb\\x61\\x3e\\x48\\x52\\x3b\\xc4\\x12\\x94\\x53\\x5e\\x59\\x6c\\x3e\\xe6\\x9d\\x52\\xae\\x3e\\xe7\\xd5\\x4a\\xc2\\x6d\\xe8\\x94\\x2b\\x76\\xc5\\xc2\\xc0\\x27\\xda\\xc9\\x76\\xea\\x32\\x69\\x36\\x0c\\x21\\x0d\\xd5\\x76\\xcd\\x7a\\xfa\\x8b\\x1b\\x6d\\xdf\\x41\\x9f\\x26\\xbb\\xae\\x47\\xbc\\x40\\x6c\\xef\\xdb\\xba\\x9c\\x18\\x49\\x9c\\xf2\\xb1\\x16\\xcf\\x16\\xdc\\x30\\x90\\x5f\\x1f\\xa4\\x05\\x97\\x80\\xfa\\x23\\x8e\\xea\\x7c\\x2c\\x5b\\xf5\\x54\\x95\\x6f\\x23\\xcf\\xe3\\xd0\\x77\\x77\\x4f\\x6a\\xf9\\x5d\\xcf\\x0e\\x55\\xea\\xa3\\x00\\x1e\\xbf\\xb5\\xf5\\x4d\\x33\\x96\\x2d\\x3b\\xed\\xdb\\x37\\x63\\xad\\x66\\x4c\\x67\\x6a\\xfe\\xf1\\x32\\xd6\\x95\\x34\\xed\\xf2\\xf5\\xd2\\xed\\xf3\\x87\\x92\\xa7\\x4b\\x03\\xb0\\xf8\\x06\\xcc\\xc0\\x39\\xa1\\xbf\\x14\\x05\\xb3\\x04\\x3f\\x94\\x43\\xd7\\x74\\x77\\x32\\x77\\x4f\\x8a\\x3c\\x89\\x18\\x26\\x35\\x7b\\x42\\x08\\x12\\x01\\xde\\x32\\xce\\xea\\x68\\x3f\\xe1\\xad\\x87\\xa1\\x1f\\x64\\xde\\xae\\x88\\xcb\\x38\\x9f\\xb1\\xb2\\x4c\\x88\\x93\\x27\\x01\\x8c\\x45\\x12\\xed\\xa2\\x62\\xc2\\xd8\\x74\\x87\\x5e\\x66\\x45\\x65\\x9e\\x95\\xd5\\x8c\\x90\\xe6\\x41\\x7c\\x2c\\x05\\xa0\\x0b\\xab\\xb4\\xc8\\xb3\\x09\\xdd\\xf9\\xb2\\xdf\\xd7\\xe7\\x29\\x37\\x4e\\xf3\\x3c\\xce\\x66\\x8c\\x22\\x1b\\x22\\x95\\x89\\x00\\x6f\\x94\\xa4\\x69\\x94\\x4c\\x78\\x29\\x9f\\xf3\\xe3\\x1e\\x7e\\x16\\xc5\\x2c\\x22\\x32\\x93\\x4b\\xb9\\x92\\x3b\\x89\\x3a\\x4b\\xdb\\xd7\\x1d\\x65\\x54\\x25\\x9f\\xa7\\xdc\\x3e\\x7f\\xb8\\x0f\\xf8\\x39\\xc6\\xe6\\x3e\\xde\\xdc\\x27\\x9b\\x7b\\xb9\\xca\\xb9\\xa1\\xbc\\xeb\\xc1\\xc3\\x89\\xa6\\xbb\\xaf\\x87\\x66\\xbc\\x35\\xf8\\xcc\\x72\\xf4\\x20\\xe1\\x79\\x13\\xeb\\xae\\xaa\\x07\\x3a\\xbc\\xfd\\x69\\x6c\\x8e\\xcd\\xaf\\x75\\x5b\\xdf\\x35\\xbb\\xa6\\x6d\\xc6\\x6f\\xb7\\xcf\\xf7\\x81\\xc7\\x58\\x7b\\x73\\x1f\\xca\\x0f\\x91\\xfc\\x10\\xcb\\x0f\\x89\\xfc\\x90\\x7a\\x8a\\x1c\\x3c\\x80\\x63\\x61\\xb5\\x29\\xc1\\xad\\xce\\xc7\\xb2\\xb7\\x4f\\x2a\\x98\\xb0\\xed\\xdd\\x07\\x8a\\x5c\\x45\\xb9\\x9f\\xf0\\xd4\\x50\\x4d\\x0d\\x64\\x6a\\xa4\\xa4\\x86\\xb1\\x4c\\x8d\\x55\\x7f\\x87\\x4c\\xa6\\x26\\x4f\\xda\\x49\\xcd\\xf3\\x87\\xfb\\x54\\x4d\\x0b\\xfc\\x42\\xb4\\xc0\\xd3\\xe5\\x7b\\xc6\\x1d\\x1a\\x79\\x73\\x0d\\x91\\x99\\x27\\xea\\x89\\x6d\\x39\\x3e\\x3b\\x9c\\xe2\\x27\\x65\\x93\\x7a\\x15\\xba\\xa9\\x98\\xcc\\xee\\x6c\\x34\\x3d\\xe2\\x45\\xca\\x09\\x82\\x00\\x52\\x8e\\x52\\x6a\\xf6\\x73\\xfb\\xfc\\xe1\\xd2\\x6e\\xfa\\x56\\x39\\x66\\xd7\\x54\\xa1\\x17\\xf2\\xf6\\x5e\\x5a\\xef\\xd2\\x6e\\x2e\\xad\\xd7\\x53\\x78\\xf1\\xf7\\xd2\\x6a\\x1a\\x92\\xea\\x92\\xb6\\x79\\x32\\x78\\x8b\\x96\\xf7\\x2f\\x1d\\x53\\x5c\\xd5\\xa6\\x9f\\x3f\\x6b\\x76\\xbb\\xb6\\x39\\xcf\\xea\\xad\\xe3\\xcd\\xf3\\xb9\\x2b\\x0b\\x2d\\xc5\\x3f\\x2d\\x95\\x99\\x8a\\x7c\\x69\\x9b\\xb9\\xd4\\x97\\xb6\\xb9\\xce\\x65\\x06\\x4c\\x56\\x89\\x32\\x7b\\xf1\\x09\\x8d\\x93\\xa5\\xd2\\x29\\x20\\xba\\x5b\\x8d\\x9b\\xaa\\xc2\\xe8\\x50\\x8d\\x98\\xca\\xaf\\x74\\x73\\x04\\x1f\\xef\\xaa\\xdd\\xde\\xf7\\x43\\xf3\\x2b\\x9d\\xc2\\x5a\\xc5\\x75\\x0b\\xa4\\x4f\\x33\\x25\\x4c\\xbd\\x76\\x9e\\xc4\\x4a\\xc3\\x09\\x1e\\x40\\x78\\xd5\\xa8\\x1e\\x00\\x09\\x43\\x11\\xb3\\xaa\\xf3\\x52\\x2c\\xd9\\xd0\\x6e\\xd3\\x51\\xfd\\x7d\\x53\\x55\\x75\\xc7\\x01\\xa6\\xc4\\xba\\x6d\\x9b\\xd3\\xb9\\x39\\xdf\\x3e\\xdc\\x37\\x63\\xbd\\x3d\\x9f\\x4a\\x76\\xda\\xff\\x30\\x94\\x27\\xa4\\x01\\x15\\x6a\\xb4\\xbf\\x97\\x0b\\x24\\x21\\x07\\xb3\\xdf\\x88\\x90\\x85\\xb1\\x3f\\x21\\x82\\x60\\x15\\x94\\xf9\\xc4\\x75\\x3e\\x6e\\xdf\\xb0\\xcf\\x55\\x39\\x96\\xdb\\x7e\\x68\\xee\\x9a\\xae\\x6c\\xb7\\x3c\\x47\\x3a\\x6a\\xdc\\xd7\\xed\\x09\\xc1\\x29\\x9d\\x9f\\xe6\\x49\\x7a\\xb7\\x1b\\xfc\\xa6\\x6b\\xc6\\xa6\\x6c\\x9b\\xf3\\x51\\x91\\xf9\\x82\\x7c\\xcf\\xa9\\xc3\\xdc\\x0d\\x0e\\xfd\\x70\\xbc\\xb9\\x9c\\x4e\\xf5\\xb0\\x2f\\xcf\\xcc\\xf9\\x66\\x3e\\x7e\\x9f\\x64\\xd7\\x63\\x42\\x9b\\xcc\\x9a\\x80\\x7e\\x0f\\x15\\x35\\x20\\x59\\x59\\x57\\x02\\x33\\x32\\xef\\x64\\x48\\xb4\\xa1\\xbc\\x54\\xfe\\x8d\\xb4\\x25\\x4f\\xe0\\x87\\x09\\x68\\x9d\\xd0\\x65\\xf0\\x24\\xc2\\x76\\xec\\x2d\\xc9\\xa2\\x17\\x17\\x2c\\x3e\\x39\\x21\\xfc\\xe9\\x6f\\x21\\x09\\x62\\xef\\x6f\\x84\\xfc\\x0b\\xf9\\x13\\xa8\\xce\\xb6\\x80\\x86\\xb2\\x1b\\x24\\xfa\\x62\\x74\\xe2\\x8e\\x49\\xb8\\x71\\xfe\\x90\\xe7\\x0b\\x68\\x8d\\xde\\x69\\x83\\xa7\\x73\\x1a\\x20\\x53\\xbd\\x03\\xdc\\xe8\\xb3\\xb5\\xa3\\x02\\x1e\\xfa\\x69\\xfc\\x89\\x11\\xc7\\x63\\x84\\xa2\\x25\\xff\\x2e\\xd5\\xc4\\xdf\\x85\\x8f\\xc7\\x8c\\x4a\\xe6\\x28\\x29\\xa6\\xcf\\xc7\\x87\\xb2\\xaa\\x06\\xba\\x46\\x82\\x23\\x69\\x5d\\x20\\xab\\x4b\\x54\\x44\\x0d\\x9e\\x06\\x95\\x6f\\x23\\x3a\\xcf\\xc8\\xa2\\x62\\xe1\\xf2\\xef\\x7d\\x57\\xee\\xfb\\xcd\\xbf\\xd7\\x5d\\xdb\\x6f\\xfe\\xb5\\xef\\xce\\x7d\\x5b\\x9e\\x37\\x1f\\xff\\xb5\\xbf\\x0c\\x4d\\x3d\\x78\\xff\\x51\\x3f\\x7c\\xdc\\x1c\\xfb\\xae\\x67\\x4a\\x42\\x65\\xd2\\xd0\\x70\\xa3\\xc0\\xcf\\xde\\x23\\xfc\\xe4\\x3d\\x32\\xce\\xdd\\x23\\xd6\\xe2\\x7d\\x5f\\xcd\\x4d\\x0e\\x4f\\x8f\\x5e\\x3c\\xd7\\x53\\x05\\x31\\xe6\\xc3\\x90\\x1d\\xb2\\x43\\x81\\xb8\\x31\\xd4\\x41\\x1d\\xd4\\x39\\xae\\xe4\\x28\\x61\\x20\\x89\\x65\\x9d\\x85\\xaf\\x49\\x76\\x00\\xb7\\x23\\x41\\x84\\x39\\x94\\x3c\\xf4\\x43\\xc5\\xfd\\x59\\x6e\\x84\\x57\\x4b\\xdb\\xf2\\x44\\x5a\\xa1\\x48\\xa3\\xdf\\x41\\x73\\x4e\\x43\\xad\\x7f\\x67\\xf0\\x58\\x2f\\x13\\xfa\\xfb\\x52\\x67\\x8d\\x20\\xf9\\x64\\x19\\x9e\\x18\\x1f\\x9e\\xd8\\x18\\x1e\\xb6\\x36\\x3a\\x0d\\xb5\\x7f\\x1a\\xea\\x71\\xfc\\xc6\\x5d\\xbc\\xd0\\x49\\xf9\\x34\\xd4\\x1e\\x18\\x46\\xa2\\x2d\\x7a\\x5f\\x46\\x02\\x9b\\x63\\x32\\x2d\\x71\\xde\\x0f\\x7d\\xdb\\xd2\\xc9\\x97\\x79\\x2b\\xc9\\x8d\\x21\\x5b\\xbe\\xca\\x69\\x6f\\xfb\\xed\\x86\\x83\\xb1\\x6d\\x27\\xf3\\x32\\xf4\\x77\\x65\\x75\\x57\\xe3\\xeb\\x15\\x9d\\x07\\xc1\\xa2\\x34\\x8f\\x63\\x4d\\x43\\x1b\\x8b\\xfd\\x40\\x61\\x5c\\x31\\xb9\\xd9\\x9c\\x5e\\x11\\x0e\\x55\\x3d\\xe7\\x88\\xb7\\x0d\\xd8\\x52\\xd3\\x70\\xc1\\x49\\x3e\\x21\\x9c\\x32\\x4d\\x7a\\xbc\\x93\\x16\\x97\\x98\\x2b\\xc5\\x52\\x50\\x0a\\x28\\xf3\\xc2\\x58\\xac\\x15\\xe0\\x8c\\x5b\\xc5\\x52\\xe0\\xd5\\x15\\x46\\x75\\x85\\x30\\x0b\\xd0\\xa6\\xdf\\xd4\\xc7\\xd3\\xf8\\x4d\\x8c\\x12\\xff\\xa2\\x9b\\x7f\\x4a\\x01\\x29\\xf7\\x8c\\xfc\\x1b\\xdb\\x2c\\x6e\\x4a\\x51\\x50\\xe6\\xf1\\x6f\\x60\\x23\\x29\\x06\\x06\\xf5\\xea\\x32\\x7c\\x41\\x39\\xf2\\xed\\xe4\\xfe\\x26\\x1a\\x36\\x27\\x3c\\x99\\x83\\x31\\x6d\\xc3\\xf5\\xc2\\xdc\\x01\\xd1\\x40\\xc1\\x93\\x11\\x44\\xf3\\xce\\x9c\\x23\\x12\\x06\\x01\\x89\\x40\\xda\\x14\\x10\\xc5\\x91\\x17\\x31\\x49\\x8d\\x82\\xb0\\x7e\\x90\\x88\\x20\\xd9\\xa7\\x59\\x4a\\x92\\x19\\x89\\xd8\\x95\\xcb\\xe2\\x72\\x63\\x6f\\x16\\x9c\\xf6\\xf8\\xb0\\x20\\xac\\x1d\\x24\\x22\\x48\\xe6\\xed\\xbe\\x20\\x62\\x77\\xe8\\x27\\xca\\x75\\x87\\x1e\\x2b\\x22\\xad\\x15\\x4a\\x11\\x8d\\xe4\\x53\\x0a\\x52\\x7c\\x36\\x5c\\xc8\\xe2\\x5f\\xeb\\xe1\\x5c\\xcf\\x65\\xd9\\x57\\xac\\x5e\\x3e\\x15\\xea\\x05\\xf5\\xaa\\x95\\x44\\x04\\x49\\x50\\xd2\\x5f\\x26\\x75\\x63\\xe7\\x4d\\xba\\x8a\\x7e\\x16\\x62\\x68\\xf8\\xda\\x33\\x8f\\xf9\\x40\\x88\\xea\\xd8\\x6d\\x8f\\x4d\\xd7\\xa8\\x25\\x45\\x02\\x2f\\x4e\\x81\\xa9\\xea\\x1c\\x27\\x85\\xa9\\x78\\x56\\xac\\xd0\\xbb\\x34\\xa3\\x2d\\x4f\\xe7\\xfa\\x46\\x7e\\x90\\x19\\x54\\x87\\x71\\x8d\\xff\\xfc\\xc1\\xe7\\xe8\\x55\\x77\\x18\\x64\\xb6\\xe0\\x50\\xde\\x78\\xbf\\x91\\x9f\\x66\\x9f\\xc5\\x1c\\x9b\\x69\\x75\\x3b\\x0f\\xe2\\x87\\x8c\\xef\\x40\\x2a\\xf6\\x33\\x35\\xcc\\x1b\\xef\\xb1\\x2d\\xe2\\x94\\x59\\x97\\x15\\x05\\xd1\\x75\\x36\\x6b\\xfb\\x0c\\x27\\x2e\\x9c\\xfc\\x28\\xe0\\x07\\xd5\\x3e\\xae\\x74\\xca\\x0d\\x56\\x4d\\x60\\x7d\\xcb\\x3c\\x73\\x17\\xd1\\xb9\\xe1\\x26\\x7c\\x2c\\x1b\\xe6\\xd9\\x50\\x2e\\x83\\x56\\x4f\\x0a\\x5d\\x89\\x42\\xaa\\x5d\\x5f\\x7d\\xfb\\x91\\xfd\\x55\\x21\\x42\\x3b\\xe5\\x05\\x67\\x38\\xdc\\x6e\\x39\\xc4\\x76\\xdf\\x77\\x15\\xbf\\xfc\\x35\\x35\\x54\\x4d\\x03\\xde\\xad\\x1e\\xb7\\x14\\x08\\x28\\xde\\x90\\xba\\x42\\x9c\\xa6\\x45\\x6b\\x74\\x56\\x3e\\xd7\\xa7\\x72\\x28\\xc7\\xfa\\xf6\\xf3\\x12\\x93\\x8b\\xcd\\xc9\\x5b\\xac\\xa7\\xb4\\xd6\\x2a\\xdd\\x9c\\x93\\x26\\xba\\xf3\\xfd\\xb7\\x95\\xac\\x73\\x91\\x75\\x4c\\x89\\xc0\\xd3\\x31\\x7c\\x35\\x7c\\x65\\xc2\\xaf\\x63\\x6b\\xac\\xc0\\xda\\x16\\xb9\\x0b\\x98\\x4d\\x5a\\x2f\\x19\\x4a\\x19\\x8a\\xfb\\xcd\\xcb\\x58\\xc4\\x6a\\x7d\\x53\\xbf\\x8c\\xf7\\xea\\xd7\\xab\\x9b\\xf0\\x65\\xac\\x5e\\x59\\x1e\\xd4\\xaf\\xaf\\x37\\xc7\\xfe\\xc4\\x38\\xd7\\x2d\\x20\\x14\\x8c\\x9f\\x81\\xcf\\x82\\x82\\x95\\x7c\\x19\\x79\\xda\\xf2\\x55\\xd4\\x79\\x55\\x71\\xb5\\x76\\x8c\\x36\\x6c\\xe5\\xbc\\x4c\\x1c\\xbe\\xc0\\xd6\\xa8\\x63\\x94\\xb5\\x91\\x67\\x6e\\x02\\x6d\\xdf\\xfc\\x6d\\x1d\\xef\\xd8\\x4b\\xaf\\xe1\\x9c\\x17\\xd7\\x7d\\xe8\\xfb\\xf1\\xe5\\x75\\x2f\\x94\\x76\\xf2\\x2c\\x9f\\xe5\\xd7\\xb0\\x2d\\x87\\xd4\\x39\\xd7\\x52\\xfe\\x25\\xa3\\xb3\\xc8\\x7b\\x2e\\x02\\xbd\\xa2\\xb0\\xbb\\xe6\\xc5\\xa1\\x79\\x45\\x61\\x97\\xc0\\x08\\xc2\\xae\\x91\\x19\\x0e\\x6a\\x88\\x8d\\x0d\\x03\\x32\\x36\\xb4\\x9d\\x3f\\xba\\xe9\\xe4\\x41\\x2e\\x5c\\xc1\\x47\\x64\\x81\\x8b\\x88\\x83\\x87\\xd0\\xd9\\x61\\x65\\x2b\\xaf\\xa3\\xa9\\xa3\\x95\\x83\\x38\\xcb\\x70\\x96\\xbe\\x7a\\x4d\\xe2\\x94\\xe5\\x85\\xf5\\x86\\xbb\\xec\\xc2\\xda\\x63\\x65\\xe1\\xe5\\x9a\\x7f\\xeb\\x79\\x6f\\x89\\xa0\\x0e\\x09\\x5c\\xa2\\xa7\\xab\\xe8\\x12\\x39\\x57\\x95\\x5d\\xac\\xf7\\xb7\\x9b\\x28\\xcf\\xe3\\xd0\\x9c\\xa4\\x3e\\xfc\\x32\\x0e\\x37\\xdd\\x78\\xcf\\xdb\\xf0\\x43\\x5f\\x55\\x9f\\xbe\\xcc\\x6b\\xc7\\x45\\xc8\\x7b\\x6c\\x47\\x53\\xd0\\xdf\\xb9\\x3a\\x66\\x8b\\xf2\\x26\\x02\\xb0\\xaf\\x4a\\x1d\\x78\\x36\\x8a\\x98\\xdb\\x83\\xc5\\x26\\xde\\x1b\\x2b\\xcd\\xc5\\x69\\x23\\xb7\\x75\\x7a\\xba\\xe2\\x15\\x65\\x2b\\x6a\\x82\\xe8\\x58\\xb4\\x5b\\xa5\\xfb\\xba\\x6d\\xc5\\x6d\\x14\\x66\\x3a\\x33\\x6e\\x89\\xc8\\x9a\\xb8\\x07\\xfb\\xbc\\xe7\\x14\\x1e\\xed\\x4a\\x51\\xe1\\xe4\\x1f\\x6b\\xd7\\xdb\\x4c\\x2c\\xa1\\x86\\x25\\x34\\xb1\\x04\\xe1\\x32\\x9a\\x48\\x43\\x13\\x99\\x68\\x42\\xb2\\x8c\\x26\\xd6\\xd0\\xc4\\x08\\x9a\\x7c\\x19\\x4d\\xa2\\xa1\\x49\\x4c\\x34\\x51\\xba\\x8c\\x26\\xd5\\xd0\\xa4\\x18\\x85\\x97\\xd1\\x64\\x1a\\x9a\\xcc\\x44\\x93\\xac\\x20\\x71\\xae\\xa1\\xc9\\x4d\\x34\\xe9\\x0a\\x12\\x17\\x1a\\x9a\\x02\\x41\\xb3\\x82\\xc4\\x01\\xd1\\xd9\\x8f\\x98\\x88\\xb2\\x15\\x44\\x0e\\x0c\\x3e\\x46\\x18\\x39\\x5f\\x41\\xe6\\x40\\x67\\xe5\\x00\\xe1\\xe5\\xc2\\x49\\x68\\xa1\\x30\\x7c\\x61\\x49\\xfd\\x42\\x77\\x95\\x86\\xca\\xa8\\x0e\\x07\\x52\\xe5\\x48\\x29\\xe6\\x08\\x86\\x97\\x39\\x84\\x55\\x5d\\xd5\\x48\\x19\\x61\\x31\\xb6\\x94\\xda\\x1f\\xf2\\x3a\\x42\\x4a\\x35\\xdd\\xa1\\xb7\\x34\\xae\\xa8\\xab\\x43\\x66\\x53\\x94\\x3e\\xf0\\x0d\\xb3\\x60\\x20\\x75\\xb1\\x4f\\xad\\x18\\x14\\x07\\x38\\xbc\\x7c\\xbd\\xdb\\xef\\xf7\\x7b\\x6b\\x79\\xe0\\x96\\x67\\xe9\\x76\\x79\\x08\\x1d\\x18\\x66\\x8f\\x39\\xbc\\xf8\\x3e\\xae\\xa3\\x03\\xa5\\xda\\xa1\\x1f\\x8e\\x4f\\xba\\x6f\\xc1\\xf3\\x07\\x16\\x0d\\xe2\\x5c\\x8f\\x88\\x17\\x91\\x7a\\x20\\xd6\\xd6\\x77\\x75\\x57\\xd9\\x2f\\x25\\xea\\xa5\\x5d\\x6e\\x97\\x86\\x2f\\x98\\x76\\x71\\x5e\\xf3\\xf9\\x40\\xfc\\x9f\\x12\\xfa\\x7b\\xfb\\xcc\\x1b\\x65\\x7a\\x5c\\x25\\xa6\\x57\\x82\\x88\\x00\\xc2\\x83\\xa7\\x88\\x00\\x20\\x7a\\x0c\\x15\\xcd\\x67\\x6b\\xc1\\xd9\\x4d\\xd0\\x6f\\x19\\xe3\\x0b\\x22\\x0d\\x88\\xe6\\x3a\\xcf\\xeb\\xb9\\x65\\x52\\xab\\x11\\x04\\xe9\\xa0\\x89\\x5a\\x54\\x92\\x53\\x79\\x3e\\x3f\\xf4\\x43\\xa5\\x25\\x57\\xe5\\x58\\x8f\\xcd\\xb1\\xb6\\x24\\x6f\\xdb\\x7e\\x5f\\xb6\\x48\\xa6\\x96\\x74\\xec\\xbb\\xf1\\x5e\\x4b\\x43\\xd0\\x3e\\xd4\\xf5\\x2f\\x5a\\x52\\x77\\x39\\xee\\xea\\x41\\x4b\\xac\\x8f\\x65\\xa3\\xd7\\x7a\\x19\\xf4\\x14\\x19\\x8a\\x44\\xeb\\xba\\x0e\\xc6\\xf8\\x81\\x2e\\x43\\x2e\\x5d\\x5d\\x35\\x5c\\x94\\x78\\xf4\\x1b\\xf4\\xa0\\x56\\x1d\\x64\\xd5\\x1e\\x9c\\xce\\xfa\\x52\\xf2\\xa5\\x76\\x92\\xef\\x0a\\x0d\\x91\\xb0\\x9f\\xb7\\x30\\xf2\\xda\\xe2\\xfa\\x70\\x76\\x9c\\xd8\\xc1\\xec\\xad\\x5c\\x7d\\xf0\\xb0\\x0e\\x13\\xa7\\xaa\\xa1\\x8d\\xe6\\xe4\\x3f\\xd8\\xe9\\x7a\\x76\\xb2\\x1e\\x40\\xa0\\x5e\\x16\\x74\\x72\\x40\\x22\\x5e\\x34\\xdd\\xb9\\x1e\\x3d\\x1e\\xa2\\x22\\x40\\x42\\x54\\x90\\x2c\\x31\\x23\\x5f\\xac\\x2a\\x74\\x75\\x25\\x32\\x82\\xd8\\x50\\x76\\xe2\\x7c\\x90\\x77\\xc4\\xa3\\x4c\\x5e\\x0e\\x9e\\x1f\\x9e\\x37\\xde\\x8c\\x55\\x49\\xe6\\x0d\\x7c\\x51\\xc1\\xfe\\x45\\xc5\\x5e\\x52\\xe6\\x59\\xf2\\xba\\x38\\xdf\\x37\\x39\\x1e\\xc9\\x98\\xf9\\x1e\\xc9\\x9c\\xb9\\xdf\\x91\\x29\\x65\\xc0\\x02\\x82\\x66\\x08\\x79\\xc0\\x1a\\x6a\\xab\\x8e\\xcb\\x06\\x92\\x21\\x25\\x04\\xc9\\x12\\x72\\x82\\xe4\\x30\\x69\\x41\\xd2\\xa7\\x68\\x50\\x18\\x09\\xf1\\x22\\x42\\x7e\\x44\\x8e\\x21\\x45\\xc2\\xa1\\x62\\x3e\\x34\\xeb\\x87\\x1b\\xc6\\x9e\\x79\\xb8\\xf1\\x82\\x34\\xdf\\x78\\x61\\x94\\x52\\x1e\\xcd\\x3f\\xdd\\xce\\x71\\xe3\\xb0\\x58\\x75\\x7f\\x2b\\xae\\x90\\x2f\\xfa\\xcb\\xd8\\x7e\\xc3\\xdc\\x31\\x73\\x99\\x93\\x87\\x1b\\x5a\\x29\\xad\\xd3\\x4f\\x57\\x0b\\xde\\x4a\\x6c\\x6f\\x86\\x08\\x86\\xf4\\x5a\\x08\\x4a\\x26\\x16\\x79\\x31\\xf3\\x01\\x22\\xd3\\xbd\\x2a\\x7e\\x5e\\xa4\\x7c\\xa1\\xcd\\xf8\\x5b\\x81\\x07\\x84\\x53\\x51\\x1f\\x9a\\x56\\x57\\xcc\\xcd\\xb1\\xbc\\xd3\\xd3\\xf0\\xf8\\x69\\x48\\xa0\\x35\\x3c\\x22\\x9b\\xbb\\x4f\\x73\\xb0\\xbe\\x79\\x65\\x64\\xb6\\xf1\\x49\\xbd\\xe1\\xa3\\xf6\\x5b\\x9f\\xb9\\xe5\\x15\\x20\\x86\\x08\\x44\\x72\\xb1\\xaa\\x72\\xc7\\xe9\\x33\\x47\\xf3\\xd7\\xe3\\xa5\\x1d\\x9b\\x53\\x5b\\xff\\x2c\\x16\\x8b\\x7f\\xa5\\xab\\x86\\x9f\\xb5\\xf9\\x97\\x67\\x21\\x62\\xc3\\x7b\\x80\\x64\\x08\\xca\\x60\\x92\\x36\\xd1\\xe7\\xbd\\x23\\x3a\\x1a\\x52\\x0c\\xe4\\x7a\\x5a\\x6a\\xc0\\x95\\x39\\xba\\xcf\\xdb\\x1f\\xf6\\xb7\\x40\\xf6\\x57\\x4e\\x95\\x21\\x36\\x8b\\x85\\x0b\\x53\\xa5\\xb5\\xd0\\xb5\\xf0\\xc2\\xb7\\xab\\xeb\\xc7\\x6d\\xd9\\xb6\\xfd\\x43\\x5d\\x61\\x44\\x79\\xd2\\xdd\\xe8\\x71\\x7f\\x79\\x8c\\x72\\x0a\\x7f\\x43\\x7e\\xe1\\x3a\\x93\\x75\\xf2\\xd4\\x96\\xfb\\xfa\\xbe\\x6f\\xab\\x7a\\x98\\x96\\x81\\x46\\x8e\\x71\\xdf\\x4c\\x22\\x38\\xf3\\x36\\xda\\xb0\\x20\\xd9\\x16\\x54\\x53\\x5c\\x40\\x07\\x3e\\x3b\\x8c\\x81\\xd4\\x67\\xfc\\xbd\\xf1\\x25\\x33\\x3f\\x29\\x41\\x70\\x2c\\xb7\\x13\\x65\\x21\\x0f\\x53\\x20\\x13\\x22\\xcf\\xa2\\x4a\\x2c\\x51\\x70\\xb6\\x6a\\x44\\xac\\xa1\\x6f\\xcf\\x5f\\x78\\x25\\xd0\\xe0\\x3f\\x67\\x4a\\x8c\\xc0\\xa6\\x2f\\xdb\\x4a\\x75\\x4e\\xa2\\xb4\\x54\\x5e\\x96\\x99\\x4a\\xc9\\x3b\\x33\\x2e\\x57\\xd2\\x09\\x8b\\xee\\xfa\\x6f\\xdb\\x21\\x80\\xba\\x7e\\x74\\xd7\\xfc\\xa3\\xd1\\x14\\xec\\xa6\\x0b\\x1f\\xbe\\x63\\xd3\\x35\\x5a\\x10\\x2b\\x9e\\xc1\\xb7\\xe7\\xc2\\xe0\\x04\\x8b\\xd4\\x55\\x73\\x39\\x4a\\x67\\xae\\x04\\xe4\\xb5\\xe5\\x70\\x27\\xfd\\xbc\\x42\\x58\\xd3\\x23\\xc8\\xcb\\x60\\x1e\\xc8\\x4c\\x22\\x65\\x93\\xae\\x1b\\xa4\\x85\\xfe\\xd5\\x2d\\xdc\\x82\\x3b\\x0d\\xf3\\xb5\\x2e\\xc7\\x0e\\xfb\\xf6\\x52\\x3e\\x5e\\xb3\\x6a\\x20\\xb7\\x35\\x42\\xb9\\x3b\\xbd\\xd0\\x9e\\x27\\x97\\xe5\\x9c\\xd3\\xaa\\x3c\\x9d\\xea\\xce\\xd6\\x5a\\x00\\xb2\\xdc\\x79\\x21\\xc2\\x43\\xbd\\x88\\x52\\xc2\\xfc\\xde\\x08\\x0a\\x60\\x61\\x57\\x96\\x21\\x05\\x1d\\x6d\\x07\\x1e\\x40\\xb0\\x57\\x6c\\xe2\\x8d\\x01\\x7d\\x79\\x94\\x2c\\x45\\x40\\xa4\\xdd\\x58\\x56\\x3c\\xd9\\x91\\xf5\\xfa\\xb5\\xd8\\x7c\\x61\\xaa\\xe3\\x08\\x34\\x1c\\x81\\x0d\\xc7\\x14\\xc9\\x2f\\x36\\x70\\x10\\x0d\\x07\\xb1\\xe1\\x98\\xe2\\xfe\\xa5\\x3a\\x8e\\x02\\xa2\\x28\\x2c\\x18\\x64\\xe8\\xac\\x34\\xd7\\x11\\xe4\\x10\\x41\\x6e\\x41\\x30\\x05\\xcd\\x22\\x3a\\x82\\x0c\\x22\\xc8\\x2c\\x08\\xa6\\x70\\x59\\x06\\x29\\x53\\x88\\x20\\xb5\\x20\\x98\\x02\\x65\\x19\\x74\\x4c\\x20\\x82\\xc4\\x82\\x60\\x8a\\x69\\x68\\x10\\x31\\x86\\x08\\x62\\x0b\\x02\\x19\\x1c\\x2b\\x34\\x88\\x18\\x41\\x04\\x91\\x05\\x41\\xa4\\x99\\xa6\\xe6\\x1c\\x8d\\x23\\x6d\\x0c\\x39\\x05\\xc3\\x32\\xf9\\x51\\x63\\x25\\x1b\\x27\\x4d\\xc1\\x1e\\xe1\\x1c\\x4f\\x85\\xea\\x09\\x06\\x3b\\x90\\xc9\\x20\\xd2\\xc1\\x94\\xf8\\x92\\x30\\x07\\x5a\\x61\\x33\\x3c\\x83\\x4d\\xbc\\x37\\x6b\\xa3\\xe5\\xa9\\x6b\\x1a\\x1d\\xe7\\x34\\xcf\\x1b\\xc8\\x21\\x18\\x5b\\x2d\\xe8\\x78\\xcd\\xf5\\x0c\\xd7\\x9f\\x55\\x73\\xa6\\x5d\\xaf\\xa6\\xa9\\x76\\x4e\\x98\\xf4\\xf1\\x9c\\xc4\\xcb\\x0c\\x75\\x59\\xf5\\x5d\\xfb\\x6d\\x2a\\x33\\x27\\x4c\\x65\\xa6\\xa4\\x27\\x64\\xc5\\x8d\\x1c\\xc1\\xc8\\xdb\\xd2\\xc8\\x42\\xd0\\xa8\\x5f\\x5f\\x08\\x5a\\x00\\x64\\xf1\\xb9\\x75\\x96\\xe2\\x73\\x5b\\x9d\\x2e\\xf0\\xf3\\x78\\xf0\\x28\\xca\\xf2\\x60\\x68\\x1a\\xd1\\xad\\xf0\\xba\\xb7\\x40\\xdd\\xd7\\xed\\x89\\x4f\\x1f\\x6e\\x10\\xb1\\x8a\\xd3\\x83\\x44\\x58\\x2b\\x17\\x1d\\xb1\\x22\\x95\\xcb\\x72\\x34\\x57\\xec\\x01\\xf1\\x4c\\xb1\\x3d\\xb7\\xe4\\xea\\x9b\\xc5\\xa5\\x96\\xbe\\x45\\x55\\xda\\x86\\x93\\xd7\\xf8\\x4f\\x6d\\x9b\\x7d\\x76\\x51\\x43\\x9a\\xd6\\x5c\\x34\\x71\\xc3\\x40\\xcb\\xa8\\x46\\x1f\\x11\\x26\\xe4\\x85\\xf4\\xd9\\x10\\x8f\\x78\\xe9\\xe9\\xd1\\xfb\\xae\\xda\\xed\\x93\\xa2\\x7e\\x11\\xbd\\x0c\\x24\\xaf\\x2d\\x6f\\x17\\x04\\x6d\\xe9\\x5a\\x56\\xd5\\xb6\\xef\\xac\\x52\\x01\\xd7\\xce\\x1c\\x58\\xe3\\x64\\xeb\\xf1\\x36\\xca\\x85\\x46\\xc3\\xd8\\xb9\\xf3\\x82\\x72\\x10\\x30\\x76\\xd5\\xa0\\x02\\x40\\xc5\\x30\\x5f\\x30\\xc3\\xab\\xb5\\xa8\\x05\\x91\\x8d\\x2a\\x05\\x9e\\x87\\xca\\x29\\xcf\\xc2\\xa5\\x94\\xe7\\xe9\\xea\\xc0\\xdd\\xbe\\xd7\\x56\\x02\\x87\\x40\\xd4\\xf5\\xbb\\x52\\x04\\x0a\\x1d\\x70\\x11\\x57\\xa9\\xe1\\x82\\x70\\xaa\\x00\\x71\\x7b\\xf0\\xf5\\x2a\\x20\\x29\\xa2\\x22\\x7c\\xad\\x0a\\xe0\\x48\\x5e\\x5b\\xde\\xc6\\xf2\\xab\\x14\\x00\\x80\\xc5\\xc5\\x5f\\x70\\x93\\xd5\\x27\\x06\\xe5\\x3d\\xa3\\x51\\xc2\\x71\\x65\\x41\\x01\\x4c\\x50\\x76\\x15\\x00\\x41\\xa0\\x12\\x98\\x6f\\x59\\xda\\x2a\\xb7\\xa8\\x81\\x09\\x00\\x55\\x04\\x32\\x17\\x95\\x52\\x99\\x89\\xcb\\xa9\\xcc\\xd5\\xd5\\xc1\\x52\\x4b\\xdf\\xa2\\x2a\\x38\\x30\\xa2\\xc6\\xdf\\x95\\x52\\x00\\xd4\\xc0\\x85\\x1e\\xd2\\xc4\\x0d\\xe3\\x54\\x0d\\xe2\\x72\\xed\\xab\\x55\\x43\\x56\\xee\\xca\\x6c\\xf7\\x4a\\xd5\\x20\\x90\\xbc\\xb6\\xbc\\x5d\\x10\\x56\\x29\\x07\\x0d\\x1a\\x57\\x0f\\x82\\xaf\\xac\\x6e\\x76\\x28\\x17\\x1a\\x0d\\x6b\\xba\\x43\\xbf\\xa0\\x1b\\x38\\x88\\x5d\\x31\\x28\\xf9\\x50\\x2b\\xcc\\x77\\xa0\\xd1\\x3a\\x2d\\x2a\\x81\\xe7\\xa2\\xfa\\x80\\x65\\xa1\\x12\\xca\\x72\\x70\\xf1\\x64\\x59\\xba\\x1a\\x70\\x36\\xed\\x75\\x35\\x68\\xdc\\xcd\\x2b\\xfa\\x5d\\x49\\xff\\x4c\\x04\\x5c\\xac\\x15\\x52\\x38\\x00\\x9c\\x42\\x2f\\xee\\xb7\\xbf\\x85\\xd0\\x27\\x55\\xf4\\x7a\\xa1\\xa7\\x48\\x5e\\x5b\\xde\\xc2\\xe7\\xab\\x24\\x5e\\x05\\xc5\\xc5\\x5d\\x30\\x92\\xd5\\x71\\x15\\x65\\x3b\\x79\\xc4\\xc6\\x86\\xe0\\xa6\\xe9\\xbe\\x96\\x6d\\x53\\x6d\\xe0\\xc8\\x4c\\xc9\\xea\\x88\\xca\\x44\\x7d\\x2d\\x02\\x2a\\xa9\\xeb\\xe4\\x90\\xec\\x6e\\x9f\\x91\\x3a\\x04\\x5f\\xe0\\x35\\x89\\x4c\\xac\\x3e\\x94\\x59\\xea\\x22\\x0a\\x43\\x54\\x86\\xa6\\x21\\x38\\xe4\\xbb\\x62\\x97\\x21\\x0f\\xfc\\xc0\\x7c\\x47\\xd6\\xf3\\x07\\xff\\xd0\\x0f\\xc7\\x6d\\xc9\\x1e\\x66\\x3c\\x4f\\x3e\\xae\\x41\\x71\\x7a\\x64\\x0e\\xb0\\xdc\\x0b\\x56\\xf1\\x01\\x50\\xbf\\xab\\x2e\\xac\\x0b\\xb1\\x73\\x8c\\xc0\\x64\\xdc\\x43\\x75\\x36\\x1a\\xaa\\xcd\\x98\\x8c\\x86\\x20\\xf1\\x5a\\xa3\\x21\\x52\\x58\\x7b\\xbc\\x53\\x51\\xee\\x88\\x22\\x4f\\x0a\\xfa\\x0b\\x01\\x9d\\x0e\\xa7\\xf2\\x10\\x4e\\xc5\\x75\\x55\\x50\\x3e\\xfc\\x44\\xd2\\x08\\xd5\\xa7\\x9d\\x4f\\x69\\xe7\\x46\\x78\\x95\\x48\\x4b\\xf1\\xda\\x66\\x47\\x4d\\x82\\x1e\\xbc\\x23\\x47\\x63\\xe8\\xe1\\x96\\x76\\x40\\x26\\xe7\\x10\\x08\\x09\\x53\\x6d\\x67\\x69\\x8b\\x07\\x63\\x3a\\x82\\x6a\\xe8\\x4f\\x55\\xff\\xd0\\x6d\\x8f\\x75\\x77\\x31\\x4a\\xa3\\xb9\\xb2\\xe8\\xa9\\x3f\\xb1\\xb8\\x35\\x7a\\x21\\x91\\x8e\\x84\\xad\\xfc\\x27\\xa4\\x07\\x12\\xa9\\x44\\x3f\\xfc\\xfe\\x0c\\x4f\\xc8\\x90\\x70\\x1e\\xb8\\x0f\\x2e\\xf1\\x62\\x1e\\x99\\xc9\\xc3\\x2e\\x2b\\x82\\x6c\\x7b\\x0e\\xc6\\x44\\x72\\x4e\\x45\\x48\\x07\\xb3\\x00\\x01\\xf1\\x52\\x58\\x9e\\x8d\\x98\\x38\\x06\\x9b\\xbf\\xdd\\xaf\\xdb\\xa6\\xab\\xea\\xc7\\x9b\\xd0\\x18\\xf9\\x69\\x8a\\x43\\x67\\x3e\\x5c\\x28\\x4d\\x77\\x15\\xae\\x5d\\x9b\\x4e\\x86\\x86\\x49\\x35\\xef\\xea\\xc4\\x74\\xa5\\x5e\\xe3\\x85\\x6f\\xc6\\xd9\\x85\\x91\\xae\\x78\\xa0\\xab\\xc9\\x0f\\xd7\\x76\\x42\\x80\\x87\\x41\\xbb\\x8e\\x12\\xfa\\x78\\xec\\x46\\x13\\x52\\x49\\x53\\xc0\\xf8\\xa2\\xe1\\xcb\\x2c\\xbf\\x63\\x7f\\x77\\xd7\\xd6\\x58\\x69\\x0b\\xa8\\x1e\\x56\\xc6\\xc1\\xe6\\x28\\x73\\xeb\\x2c\\x8d\\x74\\x9d\\xbd\\xd4\\x6b\\x76\\x9d\\x3f\\xe0\\x6b\\x12\\xb6\\x2c\\xaa\\x5d\\x59\\x18\\xbb\\x96\\x32\\x89\\xd3\\x19\\xb9\\x85\\x82\\x6a\\x87\\x61\\xd8\\x74\\x19\\x92\\x08\\x2d\\x0e\\x3d\\x71\\x4c\\x54\\xae\\xdb\\xb5\\xb3\\x7f\\x3d\\xf3\\xb3\\xb4\\x3b\\xe4\\x4f\\xd9\\xf6\\x1c\\xa7\\xea\\x44\\xb5\\xa4\\x4d\\x84\\xdf\\xb5\\x95\\x48\\x23\\x7f\\x9c\\x59\\x8c\\x53\\x4c\\xbd\\x7d\\x8b\\xb4\\x7f\\x3d\\xbc\\xd1\\x35\\x47\\x51\\x4b\\xaf\\xdf\\x46\\x41\\xbb\\x45\\x1a\\x91\\x5d\\x43\\x4e\\xe1\\x1b\\x8e\\x01\\x32\\xe0\\x92\\x1f\\xed\\xd4\\x70\\xd3\\x6a\\xaa\\x4a\\x8d\\x63\\x60\\x88\\xfc\\x6f\\x41\\x25\\x21\\x3e\\xcb\\x4b\\x81\\x15\\x6b\\x80\\x97\\xf1\\xfa\\x5a\\x7d\\xb5\\xd8\\x60\\x9d\\xe1\\x56\\x74\\xe0\\xaa\\x22\\x8b\\x1c\\xfe\\x8f\\x1b\\xb0\\x65\\xfd\\x88\\xb0\\x27\\xf2\\x30\\x87\\xa2\\x83\\x7f\\x0b\\xf5\\xe9\\xec\\x8b\\x29\\x3d\\xf6\\xae\\x28\\xaa\\xc5\\x90\\xdd\\x7f\\xdc\\xa0\\xcc\\x52\\xee\\x7a\\x10\\x51\\xf8\\xa8\\xf0\\x27\\xb6\\xff\\x7e\\xa9\\x87\\x6f\\xda\\x0b\\x1d\\x6c\\xa9\\x04\\x93\\x62\\xee\\xb8\\x0f\\xb6\\x57\\x00\\x4c\\x46\\x88\\xa0\\x50\\xfa\\xfa\\x19\\x27\\x08\\xbb\\x58\\x89\\x50\\x82\\xa5\\x23\\x49\\x72\\x97\\xca\\x1b\\xae\\x9b\\x42\\xd4\\xee\\x6c\\x30\\xc0\\x69\\xda\\x06\\x1d\\x7f\\xed\\x8a\\x66\\x65\\x8b\\x2c\\xf5\\x04\\x92\\x49\\x03\\x0b\\x7b\\x43\\x00\\x57\\x9e\\xbb\\x2d\\x2e\\x5d\\xc1\\xf0\\x04\\x0e\\xc6\\x54\\x01\\x5c\\x79\\x78\\x13\\xae\\xa2\\xfb\\x6f\\xd6\\x18\\x3b\\x41\\xde\\x6f\\x4c\\xc4\\x24\\xc7\\x92\\xf8\\xd6\\x06\\x24\\x29\\x01\\xed\\xd5\\x64\\x51\\x78\\xf6\\xdf\\x54\\xcb\\x6b\\xa9\\x0a\\x0a\\x2d\\x47\\x60\\x91\\xb3\\xa8\\x8a\\x03\\xa4\\x29\\x18\\x40\\xba\\x24\\xa3\\x62\\xae\\x81\\x58\\x90\\x1c\\x05\\x17\\x92\\x2b\\x31\\x9a\\x1b\\x76\\x80\\xd6\\x92\\xad\\xe2\\xb6\\x80\\xa0\\x23\\xaf\\x61\\xc7\\xf2\\x54\\xd4\\x58\\x3e\\x26\\x61\\x28\\x5a\\x90\\x65\\x62\\xe5\\xd9\\xd7\\x19\\xbd\\x56\\xbb\\xe5\\xc3\\x41\\x63\\x8f\\x56\\xc1\\xd1\\x9a\\x93\\xc0\\x30\\x21\\xcf\\x57\\x01\\x5c\\xe2\\xf8\\x47\\xc5\\xa5\\x26\\xc9\\x1a\\xa7\\x89\\x48\\xab\\x76\\x5e\\xf1\\x5a\\x9c\\x95\\x5f\\x43\\xe2\\xab\\x07\\x1c\\x79\\xb2\\x04\\x62\\x12\\x47\\x4c\\x20\\x6d\\x3e\\x94\\x02\\x88\\x55\\x50\\x99\\x36\\xdd\\x2f\\xd1\\x1e\\x18\\x78\\xd9\\x28\\x3a\\xee\\x9f\\xa0\\x0d\\xb4\\x5c\\x46\\xc1\\xda\\xed\\xc0\\xaa\\xf7\\x65\\xfd\\x15\\x17\\xbe\\x70\\x88\\xb0\\x90\\x20\\xe0\\x64\\xe3\\x09\\x35\\x0c\\xf3\\x68\\x0c\\x3f\\xe2\\xa0\\x93\\x6d\\x5d\\xaa\\xf0\\x39\\x1d\\x89\\x96\\x2a\\x09\\xa9\\x32\\xba\\xab\\x05\\xda\\x73\\x64\\xee\\xb2\\xd0\\xfc\\x6e\\x07\\x7b\\x91\\x41\\x7e\\x09\\x1d\\x34\\xd1\\x5b\\x8b\\xf0\\xf0\\x0f\\x96\\x37\\x5a\\x74\\x7f\\x5b\\xec\\x19\\x2a\\x1b\\xe6\\xf3\\xd3\\x67\\x5c\\x7d\\x99\\x17\\xa8\\xcc\\x07\\x5a\\x34\\xab\\xaa\\x9d\\xd0\\x67\\xb0\\x9a\\x85\\xb8\\xa7\\x07\\xda\\xf1\\x19\\x87\\x9f\\x43\\xd8\\xc4\\x5c\\x9f\\x71\\x7f\\x04\\xa7\\x1c\\xf8\\x7c\\xe8\\x86\\x91\\xb3\\xae\\x1b\\x0a\\xd9\\xd7\\x39\\xc1\\x81\\xd2\\x5a\\x05\\xcb\\xf5\\xe2\\x8f\\x08\\x11\\xd8\\xd1\\x92\\x8d\\x66\\xd8\\xf1\\x96\\x46\\x67\\xba\\x70\\x7a\\xc9\\xe3\\x49\\x6c\\x6f\\xc0\\x5e\\xe4\\x70\\xbc\\x2a\\x83\\x46\\xbb\\x30\\xed\\xb1\\xb8\\xbe\\xd4\\x82\\xe1\\xc3\\x30\\x30\\xa6\\x09\\x77\\x3a\\xb4\\x0d\\x93\\x64\\xe3\\xcd\\x7f\\x88\\x9f\\xa1\\x6f\\x16\\xc8\\x13\\xba\\x39\\x83\\xdd\\x48\\xe6\\xb7\\x21\\x79\\x08\\x80\\xed\\x1d\\xd5\\x9d\\x75\\x37\\xfe\\x30\\xf6\\xa7\\x8d\\x34\\x11\\x6f\\xbc\\xef\\xea\\x94\\xfe\\x7e\\x42\\x0a\\x0b\\xfd\\x35\\x15\\xe4\\x88\\xd8\\xcd\\xec\\x0d\\x7b\\xd8\\x83\\x7c\\xbf\\xf1\\x0e\\x43\\x7f\\xfc\\x41\\x60\\xfb\\xb4\\xf1\\xc6\\xfe\\x07\\x89\\xd1\\x81\\xf2\\xc5\\x4d\\xea\\x5f\\x5c\\xd4\\x2c\\xe7\\xf1\\x51\\x5e\\x28\\x4d\\x19\\xbb\\x1c\\x6f\\xf8\\x3f\\xdb\\xc7\\xdb\\x43\\xd3\\x8e\\xf5\\x70\\x73\\x1a\\xfa\\xbb\\xa6\\xba\\xf9\\xef\\xff\\xef\\xbf\\x51\\xec\\xff\\x29\\x1f\\x3f\\xf2\\xff\\xbd\\xd9\\x0f\\xfd\\xb9\\x3f\\x8c\\xfe\\x54\\xd3\\x79\\x2c\\x87\\xf1\\x5f\\xe9\\x40\\x9d\\xc7\\xe1\\xa7\\x3f\\x89\\xda\\x0e\\x87\\x3f\\x6d\\xbc\\xba\\xab\\x40\\x06\\xaf\\xff\\x4f\\x1b\\xef\\xff\\x16\\x85\\xff\\x93\\x4e\\x65\\xe4\\x93\\x7e\\x72\\xcd\\xc0\\xbc\\xe9\\xdf\\xdd\\x81\\xfe\\xde\\x9a\\x31\\x04\\xd4\\x27\\x4c\\x3e\\x99\\xaf\\x9a\\x98\\x49\\x61\\xf2\\xe9\\xf6\\x33\\x72\\x6c\\xc0\\x2a\\x7a\\x41\\xdf\\xeb\\x8e\\x5d\\x29\\xf0\\x7e\\xf2\\x0e\\x65\\x7b\\xae\\x3f\\xd9\\xef\\x93\\x7f\\xc6\\x83\\x21\\x4d\\xfe\\x81\\x11\\xfd\\x7d\\x8b\\x78\\x32\\x40\\xb5\\xfb\\x51\\x7d\\x5c\\x72\\xe3\\x20\\xb3\\x28\\xca\\xff\\xfd\\x90\\x05\\x28\\xd0\\xee\\x48\\xf3\\xe0\\x05\\x0b\\x6e\\x2f\\xd7\\x63\\x7b\\x33\\x44\\xcf\\xcc\\x3a\\xc4\\x9f\\xf3\\xe0\\x36\\x2f\\x7e\\x62\\x46\\x3f\\xca\\xf3\\x8e\\xdd\\xd8\\xf9\\xea\\x67\\x79\\x29\\x84\\x7d\\x9b\\xaf\\x88\\x3c\\x69\\x81\\xac\\x6c\\x1c\\x83\\xf0\\x52\\x55\\xd0\\x5f\\xa1\\xae\\x91\\x7a\\xb1\\xc8\\x5e\\xec\\xc7\\xfb\\xdb\\x54\\x0a\\xcc\\xb9\\xc6\\x0a\\x0e\\xeb\\xe5\\x13\\xa2\\x72\\xf5\\x17\\x4b\\x94\\x8a\\xa7\\x73\\x57\\xe2\\x6d\\xb9\\x2d\\x08\\x09\\x0e\\x63\\x82\\x53\\xa1\\x3a\\x8b\\x98\\x2b\\x66\\x4c\\x98\\x25\\xf8\\xfe\\x1a\\xe8\\x2b\\x40\\x25\\xd1\\xde\\x39\\x26\\x82\\xc6\\x3a\\x37\\xe6\\x70\\x72\\x4d\\xcc\\x68\\x3d\\x87\\x32\\x71\\x48\\x9f\\x78\\x3b\\x08\\x30\\x72\\x90\\xbc\\x48\\xf4\\x5e\\x80\\xea\\x6d\\xb0\\x08\\xc2\\x58\\xe5\\x88\\x2f\\x0c\\xaa\\xfa\\x50\\x5e\\xda\\xd1\\x9c\\xb6\\x38\\xb1\\x4e\\xe5\\xbe\\x19\\xbf\\xdd\\x10\\x3f\\x4d\\xa4\\x12\\x2e\\xdb\\xd3\\x7d\\xf9\\x83\\xc8\\xf9\\x29\\x05\\x0f\\x54\\x4d\\xed\\x66\\xa5\\x75\\x92\\x70\\x5e\\xd7\\xbe\\x8b\\x77\\x4f\\xf8\\x95\\xf2\\xc9\\x79\\x88\\xad\\x45\\x0a\\x78\\x54\\xcd\\x5f\\xd7\\xc3\\x15\\x71\\x8a\\x2b\\xe2\\xd4\\x50\\xc4\\xe9\\xfc\\xd4\\x0a\\xab\\x52\\xdc\\xe0\\xfb\\xdf\\x3f\\x7d\\x6c\\xf6\\x7d\\xb7\\xa5\\x3b\\x3c\\x3d\\xef\\xf3\\x4f\\x1f\\x3d\\x91\\xf9\\xa4\\x85\\x32\\x11\\x98\\xf8\\xf5\\x7b\\xf5\\xe1\\x29\\x3d\\x62\\x19\\x7f\\x0e\\xf5\\x8d\\x5e\\x74\\x92\\x35\\x5a\\xda\\xae\\xe6\\x59\\xda\\x4e\\xc0\\x73\\x33\\x38\\x1a\\x25\\xcb\\x82\\x45\\x7f\\xb7\\x46\\x79\\xb1\\x2e\\x85\\xdd\\x27\\x8e\\xa1\\x7b\\x49\\xf7\\x31\\x4f\\x2a\\x33\\x52\\xa2\\xd4\\xcc\\xd0\\x68\\xaf\\x09\\x7e\\xf3\\x2b\\x6d\\xf1\\x34\\xf5\\x3f\\x2a\\x5c\\x6b\\x64\\xe1\\xa9\\x6a\\x9b\\x7e\\x54\\x9a\\xa7\\x50\\x4a\\xbd\\xb2\\x09\\x83\\xf4\\xcc\\xf0\\x58\\xb8\\x1e\\x4b\\xae\\x0c\\xdc\\xa3\\x54\\xa6\\xf4\\x5e\\xb4\\xe7\\x34\\x34\\xc7\\x72\\xf8\\xa6\\x6a\\x46\\xf9\\x5c\\x14\\x48\\xab\\xca\\xee\\xae\\x1e\\x40\\x92\\xf0\\xa3\\x06\\x69\\x4d\\x77\\xe8\\xb5\\x04\\xf6\\x18\\x92\\x9c\\x3c\\x95\\xc5\\x1f\\xba\\x77\\x80\\xad\\xc2\\xde\\xf1\\x7a\\xd9\\xab\\x69\\x84\\xa4\\x15\\x8c\\x0a\\xb4\\xb8\\x03\\x21\\x24\\xcf\\xf7\\x7b\\xf6\\x21\\x8e\\xf7\\xfb\\x57\\xee\\x40\\x38\\x36\\xb1\\x03\\x11\\x18\\xaf\\xde\\x81\\xac\\x68\\x92\\x6d\\x07\\xb2\\x5c\\xd4\\xb5\\x03\\x71\\x95\\x7e\\x8f\\x1d\\x08\\xaf\\x0f\\xd9\\x81\\xf0\\xfa\\x17\\x77\\x20\\x1c\\xcc\\x53\\xfe\\x0d\\xcb\\x9c\\xbc\\xe3\\x0e\\x84\\x57\\xf4\\x16\\x3b\\x90\\x67\\x55\\x00\\x94\\x75\\xe2\\x94\\x34\\xaf\\x8a\\xa7\\x24\\x55\\xe0\\x30\\x81\\x96\\x69\\x60\\x96\\x97\\xa9\\xe6\\xaa\\xd9\\xea\\x9e\\x25\\x7a\\x89\\xf6\\x3f\\xda\\xed\\x22\\x4d\\x7c\\x1d\\xed\\x42\\x56\\xd1\\x84\\x44\\x51\\x51\\xcc\\xab\\x68\\xfd\\x21\\xfd\\xd7\\x2b\\x81\\x43\\x59\\x66\\x51\\x78\\x9d\\x19\\x62\\xb7\\x8b\\x13\\x42\\x3f\\xb0\\x77\\xf6\\x5e\\x6b\\x86\\x60\\xd8\\x84\\x12\\x10\\x18\\xaf\\x37\\x43\\x2c\\x37\\xc9\\x6a\\x86\\x58\\x2c\\xea\\x34\\x43\\x38\\x4a\\xbf\\x8b\\x19\\x82\\xd5\\x87\\x28\\x01\\x5e\\xff\\xa2\\x12\\xe0\\x60\\xde\\xf4\\x6f\\x59\\xa5\\x19\\x89\\xdf\\x51\\x09\\x88\\xb7\\x18\\xdf\\x4c\\x09\\x80\\x98\\xd4\\x60\\x6a\\x56\\x95\\x80\\x4c\\x5a\\x9a\\xc1\\x65\\x1a\\x54\\x02\\xf2\\x69\\xc8\\xf5\\x4a\\x40\\xf4\\x12\\xdb\\x3a\\x1f\\xf2\\x84\\x3f\\x23\\xb9\\xae\\x5d\\xd6\\x97\\x28\\x15\\x25\\xc0\\xd7\\x1d\\x6f\\xa7\\x03\\xaa\\x32\\x3e\\xc4\\xc5\\x55\\x3a\\x80\\x5f\\xc4\\xd8\\x78\\xdf\\xed\\xaa\\x28\\x0d\\x0f\\xaf\\xd4\\x01\\x1c\\x9b\\xd0\\x01\\x02\\xe3\\xd5\\x3a\\x60\\x45\\x93\\x6c\\x3a\\x60\\xb9\\xa8\\x4b\\x07\\xb8\\x4a\\xbf\\x87\\x0e\\xe0\\xf5\\x21\\x3a\\x80\\xd7\\xbf\\xa8\\x03\\x38\\x98\\x37\\xfd\\x9b\\x93\\x30\\x0e\\xdf\\x73\\x21\\xc0\\x2b\\x7a\\x3b\\x1d\\xc0\\xf9\\x5f\\x55\\x01\\x22\\x45\\xd1\\x00\\x22\\x65\\x61\\xb9\\x2e\\x92\\xa0\\xf8\\xf3\\xc4\\x2b\\xa4\\x5f\\xf4\\x0f\\xe9\\x79\\x59\\x44\\x24\\x2c\\xa1\\xdc\\xda\\xdb\\x84\\xbd\\x81\\x1b\\x87\\x65\\xa8\\xca\\xbe\\x7c\\x77\\xf6\\xcd\\x84\\x3f\\xd9\\xed\\xb2\\x64\\x77\\x95\\xf0\\xa7\\xe1\\x3e\\x4e\\xc3\\x8d\\xf7\\x5d\\x12\\x94\\x51\\x12\\xbc\\x52\\xf8\\x39\\x36\\x21\\xfc\\x02\\xe3\\xd5\\xc2\\xbf\\xa2\\x49\\x36\\xe1\\x5f\\x2e\\xea\\x12\\x7e\\x57\\xe9\\xf7\\x10\\x7e\\x5e\\x1f\\x22\\xfc\\xbc\\xfe\\x45\\xe1\\xe7\\x60\\xde\\xf4\\x6f\\x94\\x67\\x24\\xca\\xdf\\x51\\xf8\\x79\\x45\\x6f\\x27\\xfc\\xe0\\x59\\x0c\\xb0\\xe9\\x56\\xc5\\x5f\\x26\\x2d\\xed\\xcd\\x65\\x1a\\xd4\\x00\\xf2\\x75\\xe6\\xf5\\x2a\\x40\\xf4\\x12\\xe9\\x7f\\x5c\\x14\\x61\\xac\\x8b\\xaf\\xa3\\x5d\\xd8\\x8b\\xd2\\x24\\x0f\\x62\\xa2\\x28\\x01\\xf6\\x02\\xf4\\x9b\\x69\\x80\\xb8\\x28\\x0f\\xfb\\xea\\x2a\\x0d\\x90\\xec\\xf6\\xa4\\xaa\\x37\\xde\\x77\\xe1\\xa1\\x48\\x77\\xf1\\x2b\\x35\\x00\\xc7\\x26\\x34\\x80\\xc0\\x78\\xb5\\x06\\x58\\xd1\\x24\\x9b\\x06\\x58\\x2e\\xea\\xd2\\x00\\xae\\xd2\\xef\\xa1\\x01\\x78\\x7d\\x88\\x06\\xe0\\xf5\\x2f\\x6a\\x00\\x0e\\xe6\\x4d\\xff\\x06\\x87\\x34\\xca\\xb2\\x77\\xd4\\x00\\xbc\\xa2\\xb7\\xd3\\x00\\xf3\\xa3\\x32\\xb3\\x7d\\x4d\\x95\\x7d\\xf6\\x7d\\xc1\\x00\\x77\\xe8\\x35\\x91\\x67\\x6f\\xa3\\xaf\\x97\\x77\\xd1\\x27\\xac\\xb7\\x65\\x9e\\x94\\x44\\x95\\x54\\x5b\\x5b\\xb0\\x47\\xd8\\xe3\\x2c\\xce\\xf7\\x40\\xd2\\xf9\\xb3\\xeb\\x6f\\x26\\xec\\x51\\x4a\\x7f\\xaf\\x12\\xf6\\x98\\xfd\\x50\\x06\\x67\\x3f\\xaf\\x14\\x76\\x8e\\x4d\\x0a\\x3b\\xc7\\x78\\xb5\\xb0\\xaf\\x68\\x92\\x4d\\xd8\\x97\\x8b\\xba\\x84\\xdd\\x55\\xfa\\x3d\\x84\\x9d\\xd7\\x87\\x09\\x3b\\xfb\\x59\\x16\\x76\\xf6\\xe3\\x4d\\xff\\x12\\xf6\\xf3\\x9e\\xc2\\xce\\x7e\\xde\\x52\\xd8\\x99\\x00\\x40\\x79\\xe7\\x49\\x40\\xe4\\x79\\x92\\xdd\\xca\\x0e\\xd3\\x74\\xd9\\x67\\xa9\\xd7\\x88\\x3f\\xef\\x25\\xd2\\xff\\x20\\xa1\\xbf\\x9a\\xf8\\x3a\\xda\\x85\\x19\\xfd\\x72\\xfa\\xcb\\x95\\x00\\x3f\\xaf\\xa0\\xe5\\xd0\\x87\\x0a\\x68\\xc6\\xec\\xc1\\x36\\xf6\\x27\\x76\\xd4\\x33\\x25\\x08\\x9f\\x28\\x76\\xfc\\x33\\x63\\xba\\xe1\\xc2\\xce\\xcf\\x88\\x9b\\xae\\xab\\x07\\x2b\\x6e\\x13\\x54\\x79\\x89\\x4b\\x79\\x80\\x6b\\x46\\xee\\x4f\\x67\\x80\\x56\\xa4\\x33\\x08\\x6c\\x7a\\x86\\x34\\x3d\\x63\\xc7\\x3f\\x1a\\x7a\\x76\\x4c\\xe7\\x46\\xcf\\xcf\\x15\\xd7\\x51\\x46\\x47\\x7f\\x6c\\xba\\xc6\\x8d\\x9d\\x1d\\xd9\\x01\\xe4\\x01\\x82\\x5c\\x39\\xe3\\x6b\\x9b\\xee\\x97\\xcd\\xf4\\x09\\xb0\\x03\\x4d\\x50\\x38\\xcf\\x19\\x88\\x13\\x3f\\x6a\\x7e\\x93\\x43\\xe4\\xa6\\xfb\\x05\\xc6\\xc0\\x50\\xeb\\xc5\\x5d\\xe1\\xf8\\x81\\xc4\\xab\\x2f\\xf1\\x4e\\x54\\x51\\x44\\x9c\\x7d\\x07\\x4e\\x20\\x84\\x24\\x49\\x4e\\x0c\\x27\\x90\\x4b\\x57\\xd5\\x03\\xf3\\x0f\\x5c\\x8a\\x60\\x6a\\xd2\\x5a\\xaf\\x50\\xc9\\x59\\xed\\x7f\\xf2\\xfc\\xc1\\x38\\x02\\x36\\x0f\\x7e\\x1d\\xf7\\xcf\\x99\\x8b\\xa2\\xf0\\x4e\\x0c\\x54\\x57\\x27\\x7e\\xe2\\xca\\x7c\\x9d\\x54\\x0f\\xc6\\x00\\x79\\x5e\\x8b\\x35\\x6c\\xec\\x4f\\x26\\x7b\\x5c\\x86\\xf6\\x87\\x8f\\xbe\\xff\\xe7\\xe6\\x78\\xf7\\xe7\\xbb\\xf6\\xdb\\xe9\\x9e\\xb6\\xe8\\xbc\\xbd\\x2f\\xdb\\x43\\xdb\\x74\\x77\\x67\\xff\\xd4\\xdd\\x7d\\xfc\\x84\\x3a\\xd1\\x4c\\x77\\x5f\\x90\\x19\\xae\\xeb\\xc5\\x27\\xed\\x29\\x16\\x76\\x9d\\x8c\\xf6\\x99\\xc5\\xae\\xd8\\xf8\\x5d\\xf9\\x75\\x7b\\x6a\\xda\\xf6\\xfc\\x45\\x28\\xbb\\x2f\\xe5\\x17\\xf3\\xc4\\xdc\\x0e\\xa5\\xd0\\x90\\x83\\xb5\\xcd\\x79\\x5c\\xc4\\x85\\x02\\xe9\\xa8\\x76\\xe5\\x20\\x15\\xb1\\x47\\xbf\\x2f\\x61\\x5d\\x84\\x07\\x15\\x80\\x28\\x17\\x5f\\xda\\xe6\\x4b\\x29\\x1e\\x41\\x34\\x71\\x23\\xa0\\x8c\\xf9\\xd6\\x81\\xaa\\x58\\x97\\x5a\\xa0\\xa2\\x75\\xc0\\xba\\x08\\xe1\\x86\\xc4\\x91\\x52\\xe5\\x59\\x77\\x17\\xd1\\x54\\x27\\x56\\x09\\xca\\x5b\\xba\\x0a\\x14\\x62\\x75\\xb7\\x00\\xa2\\x55\\x05\\xf4\\x6a\\xc1\\xe1\\x1c\\x2e\\xc4\\x47\\x72\\xfd\\x1d\\x45\\xfb\\x84\\x7b\\xa4\\x91\\x09\\xea\\x78\\x39\\x37\\x7b\\x14\\x6a\\x1b\\xce\\x97\\x32\\x29\\x24\\xbf\\x80\\x81\\x83\\xc6\\x39\\x00\\xad\\xbb\\xaf\\x75\\xdb\\x9f\\x6a\\x1c\\x38\\x0b\\x01\\xf0\\x7d\\x5d\\x0e\\x23\\x0e\\x59\\xa4\\xb0\\x05\\x63\\x39\\xe0\\x80\\x01\\x8b\\x4f\\x04\\x21\\xb7\\xf5\\xf1\\x34\\x7e\\xb3\\xc0\\xc7\\xb0\\x6f\\x97\\x73\\x6d\\xc3\\x9c\\xc2\\xae\\x1d\\x9a\\xf6\\x68\\x81\\x2c\\x60\\xbf\\xc6\\x7b\\xb1\\xaa\\xc0\\x89\\x1b\\xa4\\x1a\\xb4\\x6d\\x10\\x88\\x81\\xb5\\x39\\x5b\\xe8\\x15\\xa6\\xb0\\x5b\\xfd\\x2f\\x16\\xb8\\x1c\\x76\\x6a\\xa8\\x8f\\xfd\\x57\\x4b\\x43\\xa3\\x00\\x76\\xeb\\xd7\\xbe\\x3f\\x6e\\x9b\\xce\\x02\\x1c\\xa5\\x26\\x70\\x7f\\xb1\\x34\\x37\\x4a\\x61\\xdf\\xfa\\xc3\\xc1\\x02\\x98\\x6b\\xac\\xd8\\xdc\\x75\\x65\\x6b\\x61\\x45\\x02\\xfb\\xb6\\xef\\xef\\x2c\\x80\\x91\\x36\\x5e\\x43\\x79\\xb6\\xb1\\x77\\x02\\xbb\\x75\\xdf\\x1f\\x71\\x6a\\x11\\x8f\\x49\\x8d\\xca\\x2d\\xb6\\xf1\\xa7\\x3d\\x82\\xc0\\x63\\x63\\xc1\\xca\\xc5\\x0b\\x02\\x0f\\x7d\\x59\\x39\\xc4\\x0b\\x02\\x53\\xbd\\xd3\\xf6\\x65\\xb5\\x2d\\x5b\\x97\\xa4\\xe1\\x85\\x5c\\x12\\x07\\x4b\\x5c\\x4e\\x0e\\xf8\\xd8\\xec\\x70\\xd3\\xed\\xfa\\x47\\x97\\xd8\\x41\\x70\\xba\\x68\\xd9\\xee\\x9b\\x61\\x6f\\xa3\\x29\\x97\\x40\\x8d\\x4e\\x6c\\x65\\xe0\\x92\\x41\\x1d\\xfe\\x30\\xd4\\x36\\x3e\\xe0\\xc2\\x08\\x0b\\x50\\x69\\xb4\\xd3\\x95\\x4b\\xa4\\x56\\xa2\\xdf\\x5b\\xe5\\x32\\x33\\xa0\\x0f\\x6d\\x69\\x61\\x60\\x2e\\x99\\x10\\xfa\\xbe\\x2e\\xab\\xd3\\x7d\\xdf\\xd5\\xb8\\xe6\\x17\\x02\\x0a\\xcb\\x7c\\xed\\xdb\\xcb\\xb1\\x76\\x48\\x5f\\x6a\\xf6\\x5a\\x94\\xa1\\x3c\\xe2\\x12\\x59\\xb4\\xd0\\xe5\\xe4\\x92\\x5c\\x58\\xe4\\xef\\xc3\\xbe\\xaf\\x6c\\x52\\x11\\x99\\xfd\\xdf\\x95\\xae\\x02\\x89\\xd9\\xf9\\xd1\\x42\\x5d\\xe2\\x31\\xa9\\x53\\xe1\\x2c\\x24\\x0d\\x13\\x8a\\x14\\x00\\xef\\x7a\\x9b\\xe6\\xe5\\x92\\x6c\\x00\\x1f\\xcb\\xc1\\x52\\x80\\x4b\\x33\\x28\\x70\\x1a\\x9a\\xce\\x29\\xc6\\x00\\x7a\\x5f\\x1e\\xeb\\xa1\\x74\\x0a\\x31\\x80\\x3f\\xf4\\x36\\xe4\\x42\\x84\\xb5\\xc6\\xb7\\x36\\x81\\x4f\\x33\\x03\\xba\\x19\\xcb\\xd6\\xb6\\xda\\x10\\xc2\\x0b\\x89\\x4e\\xb7\\x12\\x7c\\xab\\xe1\\x94\\x60\\xb3\\x10\\xdb\\xce\\x38\\x85\\x18\\x94\\x61\\x3b\\x17\\xe6\\x65\\xea\\x14\\x63\\xa4\\x0c\\xbf\\xb3\\xe5\\x9a\\x66\\xb1\\x52\\x83\\xbd\\x4b\\x42\\xaa\\x91\\x42\\xff\\x75\\x39\\x8f\\xcd\\xc1\\xb2\\xa2\\x11\\x82\\x0d\\x8a\\xd9\\x17\\x0a\\x42\\xa4\\xe1\\xe0\\x74\\x55\\xdd\\x8d\\x0e\\x22\\x08\\x91\\xc6\\x0a\\x39\\xfa\\x23\\xa4\\x1a\\xf2\\x58\\xb9\\xe7\\x0f\\xbb\\x7e\\x6d\\xaa\\xba\\x77\\x4a\\x37\\xe4\\xfc\\x66\\x3f\\x5e\\x06\\xb7\\x74\\xc3\\x02\\x75\\xb7\\x6f\\xf0\\x85\\x02\\xf1\\x98\\x6c\\xcd\\x0b\\xe1\\xf2\\xb4\\xa5\\x62\\x68\\x1d\\x4c\\xd6\\x79\\x50\\xa4\\xac\\xe8\\x90\\xb8\\x04\\x1d\\x80\\x8f\\x56\\xb1\\xe5\\x42\\x0e\\x80\\xeb\\xaa\\x71\\xca\\x38\\x00\\x3e\\xdf\\x97\\x36\\xaa\\x08\\x11\\x07\\xe0\\xec\\x5e\\xb3\\x53\\xc6\\x21\\x65\\xac\\x6b\\x43\\x31\\x4b\\xc3\\xb6\\x8c\\xf5\\x69\\x4b\\xa1\\x1f\\xca\\xc1\\xa6\\x1a\\x0a\\xb3\\xbf\\x87\\xf2\\x3c\\x2e\\x14\\x13\\xc2\\x0e\\x8a\\x2d\\x94\\x88\\xcd\\xce\\xd3\\x55\\x84\\x53\\xc8\\x21\\x74\\x79\\x39\\xdb\\x56\\x70\\x39\\xd6\\xf9\\xde\\x32\\xb9\\x09\\xb1\\x86\\x7d\\xee\\x07\\x7b\\xdb\\x85\\x40\\x9b\\x44\\x72\\x97\\x4a\\xcd\\x1e\\xb3\\x11\\x71\\x97\\xca\\xcd\\x9e\\xd7\\xff\\x55\\xef\\xdd\\x22\\xad\\xf3\\xd4\\xd7\\xa1\\x77\\xe9\\x50\\x21\\xd0\\x68\\x29\\x97\\xfe\\x48\\x4c\\x3a\\x9c\\xda\\xcb\\x99\\x6d\\x02\\x6c\\x92\\x5d\\xa4\\x2a\\xff\\x36\\x9d\\x0b\\x5c\\x48\\x36\\x28\\xc2\\x37\\x44\\x8e\\x32\\x5c\\xbc\\x41\\x99\\xfe\\x17\\x07\\x3c\\x97\\x70\\x00\\xff\\xf7\\x4b\\x7d\\xa6\\x99\\x8e\\x52\\x5c\\xd4\\x41\\xa9\\xa6\\x3b\\xf4\\x8e\\x12\\x42\\xdc\\x41\\x91\\xf3\\x7e\\xa8\\xeb\\xee\\x7c\\xdf\\xbb\\xe7\\x75\\x8c\\x00\\xce\\xd5\\x76\\x8a\\xd2\\x60\\xc5\\x02\\x1d\\x14\\xd9\\x95\\x9d\\xb3\\x8c\\x90\\x7a\\x50\\xa6\\x1c\\x86\\xfe\\xc1\\x35\\x5d\\xc7\\x26\\x15\\x78\\x19\\x07\\xa3\\x09\\xf1\\x47\\x0a\\xd9\\x16\\xac\\x61\\x5e\\x58\\x4a\\x38\\xd6\\xc5\\x81\\x49\\x02\\xa6\\xbe\\xed\\x7b\\x08\\xa1\\x09\\xb4\\xf1\\x39\\x37\\xbf\\xd6\\xdb\\xc3\\xa5\\xb5\\x6c\\x83\\x85\\x22\\xc0\\x0a\\xf1\\xc3\\x08\\x97\\x22\\x00\\xa5\\xa8\\xb0\\x39\\xf5\\x80\\x29\\x6c\\x36\\x05\\x10\\x99\\xe4\\x3a\\x8f\\xf5\\xd0\\x9c\\x6d\\xab\\xe5\\xc4\\xec\\x79\\xfd\\xb8\\x6f\\xcb\\x63\\xe9\\x96\\x1c\\xe2\\x71\\x49\\x98\\x8d\\x61\\x8d\\x9d\\x57\\x68\\x15\\x10\\xba\\xad\\x4b\\xcb\\x5e\\x88\\xcb\\x3d\\x84\\x3e\\x34\\xb6\\xc9\\x97\\x4b\\x3d\\x84\\xae\\xbf\\xd5\\xdb\\xfe\\x54\\x3b\\x25\\xde\\x2c\\xb1\\x6f\\x7b\\xdb\\x3c\\x24\\x44\\x1e\\x96\\x11\\x5e\\xbc\\x2e\\x4d\\x11\\x23\\x1d\\x3f\\xb5\\x65\\xe7\\x16\\x77\\x08\\xbf\\x2f\\xdb\\xba\\xab\\xac\\x56\\xb9\\x02\\xe9\\xff\\x50\\x76\\x55\\x6f\\x31\\xa1\\x09\\x59\\xe7\\x05\\x94\\xb0\\xb7\\xb3\\x2d\\xe7\\x78\\xac\\x6d\\x8b\\x28\\x21\\xf4\\xb0\\xb6\\x63\\x79\\xd7\\xd5\\x6e\\x81\\xd7\\x7a\\x24\\x66\\x24\\xbb\\xcc\\x63\\x64\\x10\\x85\\x5c\\x62\\xcf\\x78\\x3f\\x60\\x57\\x21\\x67\\x79\\x1c\\x1f\\x6a\\x5b\\xeb\\x84\\xd4\\xc3\\x8a\\xce\\xf7\\xfd\\xe9\\xc4\\xae\\xd1\\x5a\\x6d\\xa6\\x42\\xf0\\x35\\x16\\x65\\x2f\\x45\\xbb\\xb8\\x48\\x48\\xbe\\x95\\xf4\\x02\\x83\\x9d\\x73\\x85\\x32\\xb0\\x22\\x10\\xca\\x47\\x1e\\x16\\x39\\xd7\\x08\\x3a\\x99\\x58\\xc9\\x39\\x92\\x87\\x53\\x59\\x04\\x81\\xba\\x01\\xb8\\xaf\\xf0\\x25\\x0f\\x55\\x10\\x31\\x30\\x1c\\x5c\\xda\\xf6\\xbe\\x1f\\x9c\\x4b\\x04\\xad\\x44\\x6d\\xd3\\xa2\\x42\\x49\\x00\\xe8\\x3d\\xed\\xf7\\xa1\\xd9\\x97\\xa3\\x5b\\x57\\x80\\x42\\xe3\\xfd\\xe5\\xb8\\x3b\\x5b\\x79\\x51\\x28\\x0b\\xac\\x88\\x9d\\x13\\xa5\\xba\\x00\\xa5\\xee\\xcb\\xae\\x72\\xcd\\x8d\\x52\\x59\\x98\\x85\\xec\\x93\\xb0\\x54\\x18\\x66\\x19\\x5b\\x7f\\xa4\\xbe\\x30\\x4b\\xd8\\xbb\\x23\\x55\\x06\\x24\\x36\\x5b\\x4f\\xac\\x98\\xf2\\x63\\x84\\x16\\xa0\\xf0\\xa2\\x49\\xc0\\x51\\x76\\x49\\x85\\xd8\\x4b\\x2e\\x2e\\x1f\\x60\\xd9\\xbb\\xb6\\xdf\\xd9\\xc4\\x3a\\x42\\xc8\\xf3\\x30\\xd4\\x9d\\xed\\x24\\x47\\xaa\\x0f\\xc8\\x54\\xe5\\xf9\\x17\\x9b\\x41\\x31\\x47\\xc8\\xc0\\xdd\\x6d\\xdc\\x7a\\x02\\xca\\xd2\\xd0\\xd4\\x87\\x7d\\x69\\x53\\x4e\\x52\\x2d\\xc0\\x4a\\x2e\\x6d\\xcb\\x97\\xb6\\x6e\\x7d\\x10\\x2b\\xf7\\xbb\\xef\\x58\\x3c\\xac\\x09\\x66\\x0a\\x89\\x7f\\x55\\xc8\\x1f\\xf5\\x59\\x04\\x3c\\x56\\x0f\\xf2\\x58\\x82\\x19\\x33\\xe4\\xd9\\xc7\\xe3\\x99\\xa2\\xd1\\x28\\x38\\x9c\\x12\\x20\\x17\\x84\\x3d\\x4d\\xe6\\x1e\\x8e\\x7d\\xdf\\xee\\x4a\\xf5\\x71\\x02\\x72\\xab\\xc7\\x46\\xc2\\x22\\x92\\xa9\\x85\\xbf\\xd0\\x2f\\xac\\xae\\x8d\\x91\\xac\\x34\\xc4\\xcc\\x5c\\xd1\\xbe\\x3b\\x1e\\x8d\\x7d\\x37\\x76\\xc8\\x30\\xbc\\x85\\xef\\xc6\\x5c\\x01\\x6b\\x0d\\x1a\\x7b\\x1a\\xc2\\x6d\\x7c\\x2c\\x4c\\x3c\\x7f\\x11\\x42\\xc9\\xb1\\x3f\\xfb\\x00\\xd1\\x71\\x77\\x1c\\xe3\\xce\\xbc\\x09\\xc7\\xd7\\xe1\\x46\\x6c\\x01\\x13\\x90\\x1f\\x23\\x1a\\x01\\x14\\x0c\\x40\\x47\\x58\\x5c\\x8d\\xb2\\x63\\x7f\\x62\\x39\\xee\\xf0\\x37\\x14\\x4c\\x06\\xbe\\xbd\\x75\\x95\\x84\\xc8\\x45\\xd8\\x9d\\x15\\xf8\\x39\\xa4\\x5e\\x85\\xa5\\xbc\\xd9\\x5d\\x35\\xa2\\xb1\\x23\\xd2\\x3f\\xd2\\x77\\x36\\x27\\x2c\\x77\\x7e\\x0a\\x0e\\x7c\\xeb\\x2c\\x8b\\x76\\x7f\\x4d\\x15\\x1c\\xd4\\xa8\\xc5\\x86\\xc1\\xa0\\x80\\xcf\\x38\\xe3\\xe5\\xc3\\x8e\\x07\\xdb\\x98\\x86\\x3d\\xb5\\x0f\\x7b\\xba\\x6a\\xd8\\x2d\\xf8\\x95\\x61\\x4f\\x9d\\xc3\\x9e\\x3a\\x3a\\x6d\\x19\\x7c\\x96\\x79\\x35\\x0b\\xd8\\x09\\xc1\\x07\\x27\\x75\\xb0\\x80\\x9d\\x14\\x6b\\xaa\\x50\\x59\\xc0\\x24\\x86\\x81\\xc1\\x14\\x02\\xc5\\x6b\\x4c\\xd5\\x04\\xb3\\x33\\xaa\\x92\\xaa\\x3a\\xfa\\x29\\x04\\x15\\xae\\x9f\\xe0\\x41\\x13\\x25\\x12\\xbb\\x46\\x4c\\x13\\x8b\\x4f\\x77\\x05\\x06\\xdc\\xd3\\x1c\\xa0\\x07\\x51\\xcd\\x3a\\x30\\x88\\xf4\\x91\\x1b\\x01\\xba\\x73\\x40\\x64\\x2d\\xaa\\x4e\\x20\\xa2\\x12\\x9b\\xd1\\xac\\x82\\x30\\xf9\\xb4\\xf1\\xde\\x23\\x14\\xd7\\xfb\\xd6\\xf9\\x1b\\x57\\xf7\\x59\\x8f\\x92\\xa9\\xfb\\x8e\\xe2\\x13\\x18\\x9d\\xe8\\x16\\x46\\x32\\x31\\x46\\x12\\xa0\\x67\\x91\\x4e\\x91\\xfa\\x42\\xfb\\x84\\x69\\x56\\xb8\\xd8\\x7a\\x7c\\x9a\\x66\\x9a\\x62\\xa1\\xf9\\x2c\\xa2\\xa3\\x16\\x3d\\x3e\\xd4\\x3b\\x60\\x77\\x14\\x5e\\x14\\x11\\x65\\xe1\\xea\\xf6\\xa0\\xfd\\x3f\\x2f\\x9e\\x15\\xa0\\x0b\\x8b\\x6f\\x65\\xa7\\x0d\\x8c\\x08\\x87\\x97\\x9f\\x23\\x68\\x2c\\xe2\\x11\\x31\\x32\\x2c\\x78\\xa6\\x4b\\xf8\\x8b\\x78\\xc4\\x35\\x7b\\x0b\\x1e\\x79\\x99\\x77\\x11\\x8d\\xb8\\xaf\\x6b\\x41\\x33\\x5d\\x09\\x5c\\xc4\\x23\\x2e\\xfd\\x59\\xf0\\xf0\\x4b\\x46\\x8b\\x48\\xc4\\x4d\\x22\\x2b\\x12\\x71\\x61\\x61\\x19\\x0f\\xbf\\x92\\xc0\\xf1\\x78\\xfe\\xbe\\x1c\\xea\\x51\\x0d\\xa4\\x94\\x63\\x81\\x93\\x27\\xb1\\x44\\x0a\\x18\\xf1\\xbe\\x04\\x88\\x98\\x30\\xd9\\xb2\\x81\\x9b\\x9d\\xd4\\x07\\x16\\xd8\\xfc\\x69\\x24\\xd3\\x39\\x7c\\x4e\\x54\\x23\\x68\\x71\\xa4\\x6a\\xf8\\x2d\\xbc\\xe9\\xcf\\x1f\\x18\\x0d\\xc4\\x43\\x25\\x68\\x8b\\xc4\\x14\\x6e\\xd4\\x23\\xf8\\x14\\x54\\x35\\xbd\\x86\\xaf\\xa4\\x71\\xfe\\x01\\x49\\xe2\\xdd\\x58\\xa5\\x89\\xd3\\xf3\\xd2\\x2a\\x90\\xf0\\x0b\\x06\\xad\\x11\\xb1\\xa3\\xd5\\x6b\\x24\\x58\\x90\\x4c\\x91\\xa7\\x0e\\xff\\x6c\\xb2\\xbb\\x6a\\x97\\x8c\\xa2\\xe0\\x1b\\x3f\\x18\\xee\\x8b\\x07\\x6e\\x66\\x8a\\xef\\x58\\x3e\\x6e\\x95\\xf8\\x57\\x6f\\xb6\\x1d\\x84\\xf5\\x9b\\xfb\\x42\\xb0\\x45\\x36\\x36\\x89\\xb0\\xf4\\xca\\x37\\xb1\\xc4\\x4b\\x09\\xb6\\x47\\x5d\\x64\\xb6\\x3d\\xc7\\xd1\\x82\\x15\\x0f\\x3f\\x4d\\xaf\\xaa\\xe0\\xcf\\x4c\\xcc\\xd9\\xf6\\x1c\\x7b\\x03\\xb6\\xe6\\xb6\\xc3\\x1a\\xcc\\x8f\\x3d\\x31\\x6a\\x21\\x84\\x9a\\x6d\\xcf\\x59\\x6c\\xc7\\x2a\\x72\\x08\\x8c\\x36\\x72\\xc8\\x6c\\x7b\\xce\\xf3\\x07\\xbf\\x2b\\xbf\\xe2\\x6c\\xa3\\x46\\x56\\x67\\xfe\\x80\\xe7\\xf1\\x5b\\x5b\\x4f\\x37\\x5a\\xba\\xf2\\x2b\\xf3\\x79\\xd7\\x18\\x5f\\xc9\\x91\\xab\\xf8\\xe9\\x3b\\xbf\\xf1\\xb1\\x14\\x63\\x14\\x3e\\xc9\\xa7\\xe0\\xfb\\xd2\\x1c\\xef\\x9e\\x66\\x69\\x52\\x1b\\xe2\\x9f\\x2e\\x6d\\x2b\\x8c\\xa2\\x5c\\xf4\\xa6\\x38\\xe8\\x5d\\xf9\\x95\\x39\\x10\\x2a\\x91\\xdc\\x79\\x4b\\xe5\\x25\\xab\\xe8\\xf4\\xe8\\x05\\xda\\xbb\\x83\\x81\\xf6\\xee\\xe0\\xae\\x6f\\x2b\\x33\\xca\\xb5\\x8c\\x1f\\xc1\\x7e\\xd0\\x17\\x07\\xf1\\x80\\x73\\xc9\\x27\\x0e\\x3c\\xca\\xbb\\x7a\\x37\\x97\\xd3\\xa9\\x1e\\xf6\\xe5\\x59\\x76\\xc8\\x6b\\x9b\\x1f\\xd5\\x96\\x2b\\x92\\x5c\\x4c\\xc3\\xc6\\x5d\\xa1\\xe0\\xd2\\xce\\x5c\\x9a\\xb2\\x24\\x24\\x9a\\xfa\\x74\\x8d\\x83\\x92\\x76\\xbe\\xd5\\xe1\\x21\\xd5\\x0a\\x33\\x93\\x82\\x48\\x3e\\x01\\x35\\x05\\x9f\\x5f\\xdb\\x6f\\xbd\\xe2\\x27\\x63\\x14\\x54\\x88\\xe9\\xf6\\x03\\x76\\xeb\\x44\\x61\\x2f\\x3d\\x07\\x5c\\x2d\\xba\\xea\\x3e\\x2f\\x1e\\xc3\\x8f\\xdd\\xc1\\x52\\x1a\\x86\\xc4\\xa4\\xd4\\xb2\\x90\\x98\\x94\\x9c\\x66\\x21\\xec\\xa2\\xe7\\x57\\xcd\\xd7\\x86\\xd2\\xfa\\xb3\\x32\\x47\\xc8\\x8b\\x48\\x13\\xc1\\xe9\\xa8\\x7b\\xc1\\x7c\\x75\\xe9\\x66\\x9b\\xb0\\xf6\\x53\\x82\\x51\\x2a\\x1c\\xda\\xfe\\xe1\\xe6\\xbe\\xa9\\xaa\\xba\\xc3\\x44\\x89\\xbf\\x45\\x0c\\xe6\\x46\\x35\\xd4\\xf4\\x3c\\x3f\\xd2\\x66\\x8d\\xe5\\xee\\xac\\xdc\\x18\\x7a\\x9a\\x5f\\x55\\x90\\xb9\\xd3\\xfb\\x09\\x13\\x10\\x48\\x61\\x20\\xec\\xb1\\x03\\x15\\xe2\\xda\\xc7\\x14\\x96\\x30\\xc1\\x77\\x14\\x24\\xf4\\x97\\xb6\\x51\\x6f\\x3b\\xb5\\x8d\\xfa\\x84\\x02\\x84\\x93\\x5c\\x25\\x21\\x67\\x66\\x54\\x37\\x45\\xe6\\xce\\xc9\\x18\\x4e\\xe3\\xee\\x98\\x52\\xcf\\x93\\x95\\xe8\\x55\\x55\\x69\\x0d\\xd2\\xde\\x3c\\x90\\x53\\x36\\x68\\xf2\\x93\\xba\\x47\\x53\\x2d\\x0a\\xa2\\x50\\x8e\\x45\\xe3\\x37\\x82\\x8b\\xab\\xd7\\xf6\\xde\\x73\\xb6\\x87\\x6d\\x57\\x05\\x76\\x4e\\x44\\x9f\\x06\\x67\\x3f\\xde\\xf4\\x6f\\xc5\\x7e\\x00\\x31\\x34\\xd5\\x00\\xd3\\x8c\\x9a\\x2c\\xaa\\x21\\x61\\x3f\\x58\\xac\\x31\\x75\\x35\\xa9\\x8f\\x1a\\xb6\\xc6\\x44\\x6e\\x72\\xca\\xd8\\xc5\\xa2\\xd5\\x08\\x9b\\x39\\xc6\\x50\\x7d\\x34\\xc5\\x7c\\x8f\\xdc\\x1a\\xad\\xd6\\xf2\\x3c\\x9b\\xf9\\x3a\\x9b\\xa2\\x69\\xb5\\x7b\\x81\\xe8\\x65\\x41\\x95\\xa0\\x7a\\x16\\xa6\\x6c\\x97\\x94\\xe8\\x79\\x2c\\xf7\\xbf\\xd4\\xd5\\x2c\\x9f\\xca\\x64\\xae\\x64\\x7e\\x29\\xa1\\xf2\\x04\\x8a\\x41\\x85\\xd5\\xc4\\xcc\\x0a\\xc7\\x71\\xe2\\xc3\\xfa\\xda\\x85\\xb9\\xa5\\x3e\\x75\\x45\\xf9\\xa5\\xfc\\xad\\xed\\xf6\\x6f\\x7b\\x26\\xe2\\xe8\\xa5\\xf2\\x44\\xa9\\xd1\\xc9\\xf7\\x3b\\x3c\\xf8\\xcd\\x0e\\x69\\xac\\xcc\\xa4\\xab\\x1a\\x13\\x00\\x53\\x70\\x94\\xdf\\x80\\x65\\x7a\\x12\\x2c\\xab\\x04\\x80\\xdb\\xf4\\x56\\x78\\x38\\x0e\\xda\\x99\\x28\\xec\\x8a\\xf6\\x50\\xfc\\xfb\\x6f\\x33\\x78\\x83\\xd7\\x55\\x7b\\x6d\\xc4\\x74\\xba\\x66\\xd6\\x0d\\x38\\x76\\x63\\x81\\x50\\x46\\xa8\\xb1\\x40\\xe4\\x99\\x46\\x1a\\xac\\x0a\\x3e\\xfa\\x93\\xa5\\x02\\x05\\x61\\xe3\\xef\\x6a\\x0b\\xbb\\x74\\x6f\\x69\\x0b\\xcb\\xc3\\x07\\x0d\\x76\\xd2\\x34\\xe5\\xb0\\xc6\\x70\\x2d\\x7d\\x05\\x69\\x5c\\x46\\x14\\xd8\\x90\\xab\\x51\\xcb\\xd9\\x16\\xc3\\x2e\\xf2\\xe4\\x76\\x4e\\xe2\\xc4\\x26\\x20\\x2c\\x57\\xcc\\x41\\x30\\x84\\x02\\x68\\x2d\\x6a\\xaa\\xde\\xa8\\x6c\\x69\\x87\\xf8\\xd2\\x36\\x73\\x9d\\x14\\x0c\\x6d\\x96\\x1d\\x68\\xdd\\x0c\\x29\\xb6\\x91\\x50\\x51\\x88\\xc4\\x69\\x57\\x08\\xab\\x00\\x8c\\x67\\xa9\\xdf\\x09\\xe3\\x95\\x08\\x07\\x23\\x40\\x0b\\x3c\\xbc\\xc2\\xf8\\x26\\xdf\\x6a\\x08\\xf0\\x87\\x1a\\x02\\x42\\xd8\\xe6\\x90\\x0e\\x96\\x54\\x67\\x7c\\x48\\x66\\x22\\xa3\\x79\\x98\\x76\\x9d\\x89\\x36\\x96\\xbb\\x1d\\xdd\\x69\\x28\\x9b\\x18\\x99\\x34\\x6d\\x59\\xa6\\x84\\x6b\\x77\\x28\\x5a\\x41\\xb8\\x21\\x19\\xcb\\xdd\\x56\\x14\\x7e\\x9a\\x76\\x68\\xe5\\x65\\xec\\xa7\\x5e\\xee\\xea\\xb6\\x7f\\xf8\\xa2\\x6c\\xb9\\x58\\x2a\\x9b\\xe2\\x8c\\x54\\x3a\\x23\\x7d\\xb1\\x6d\\x2a\\x88\\x56\\xdf\\x17\\xf6\\xe5\\x54\\x76\\xf5\\xc6\\xa7\\xbc\\x3d\\xa7\\xb3\\x6f\\x34\\xc3\\x78\\x2f\\x12\\x14\\x97\\x67\\xa1\\xb0\\xb0\\x38\\x50\\x35\\xcc\\x3d\\x58\\x67\\x14\\x1e\\x41\\xf6\\x3c\\x58\\x09\\x65\\xff\\x33\\xd9\\x2b\\x11\\xab\\x85\\xa5\\xa8\\xb9\\xe6\\x78\\x53\\xa3\\xa1\\xbd\\x5a\\xc0\\x9b\\x28\\x00\\x60\\x50\\xeb\\x9e\\xc1\\x94\\x29\\x17\\xad\\x94\\xc5\\xba\\x3b\\xdf\\xd9\\x3c\\x5d\\x41\\xd9\\x42\\xd3\\xb0\\x71\\x9b\\xff\\x4c\\xad\\x82\\x4c\\xc9\\x76\\xde\\x18\\x0b\\x9b\\x8b\\x7c\\xbc\\xf4\\xd4\\x1b\\xb3\\x3c\\x5d\\xca\\x34\\x9d\\xb0\\xfb\\x65\\xb1\\xbe\\x09\\xd7\\x4d\\x96\\x62\\x8d\\x84\\x49\\x8e\\xed\\xc9\\x4b\\xe6\\x9b\\xab\\x9e\\xaf\\xd8\\xd8\\x16\\x69\\xf6\\x6f\\xfe\\x2e\\xba\\xad\\x21\\x60\\xb4\\xb1\\x7c\\xd7\\x5e\\x9b\\xef\\xb1\\x3d\\x6d\\xef\\x6d\\xa9\\xce\\xd3\\x39\\xd0\\x96\\xed\\x68\\x92\\xe7\\xe4\\x3f\\xc6\\x6e\\x28\\x13\\xca\\x27\\xd1\\xc4\\x6e\\xc0\\x38\\xe3\\xc1\\x78\\x08\\x18\\x85\\xc1\\xb3\\x96\\xca\\xb8\\xf3\\x04\\x7c\\xd8\\x71\\x9e\\xfc\\x6d\\x5f\\x91\\xb7\\x36\\x04\\x10\\x19\\x05\\x58\\x63\\x64\\x31\\x8d\\x2d\\x18\\x3e\\x63\\xe4\\xad\\xf9\\xae\\x56\\xad\\x18\\xfb\\xf9\\x8f\\xaa\\x27\\x3f\\xab\\x27\\xa3\\xc6\\xd0\\xf3\\xd5\\xa1\\x88\\x30\\xf5\\xa5\\x7c\\xc2\\x16\\x51\\x2a\\x00\\x5c\\x55\\xce\\xc9\\xd7\\x1c\\x54\\x2c\\x5a\\x7e\\x76\\xe5\\x30\\xaf\\x00\\xbe\\x36\\xe7\\x86\\xae\\x2b\\xb0\\xd7\\x6b\\x4d\\xd7\\xd1\\xcf\\xfa\\x1e\\x91\\x87\\x48\\xea\\xea\\x81\\xe9\\x43\\xb1\\x18\\x89\\x89\\x6e\\xa7\\x0c\\x89\\x71\\x0c\\xc0\\x0d\\x81\\xa6\\xa1\\xab\\xa4\\xbf\\x2f\\x7b\\x21\\xf3\\x10\\xd2\\xdf\\xb7\\x7c\\x21\\x53\\x60\\x7c\\xf9\\x0b\\x99\\xf6\\x26\\x2d\\xbe\\x90\\x69\\x2d\\xba\\xea\\x85\\x4c\\xa4\\xf4\\x6f\\xfa\\x42\\x26\\xaf\\xdf\\x1a\\xaa\\x12\\xa8\\xb5\\x98\\xfe\\xbe\\xc5\\x93\\x91\\x88\\x4b\\x0f\\x3f\\x00\\x52\\x7c\\x67\\xa6\\xa3\\x15\\x92\\x22\\x6e\\x3b\\x0b\\xe0\\xeb\\x21\\xc1\\x21\\xc5\\x24\\x25\\xea\\xb1\\xc4\\x9c\\xf8\\x82\\x93\\x08\\xbd\\xb0\\x71\\xf8\\xb0\\x2b\\x07\\xfe\\xf6\\x71\\xd9\\x50\\xe9\\xe4\\x2b\\x15\\xb9\\xdc\\xa7\\x5a\\x4f\\x3e\\x71\\xed\\xcb\\x0f\\x4f\\xa2\\x0a\\x06\\x64\\xe8\\x07\\x05\\xeb\\x6e\\x28\\xbb\\x4a\\x5d\\xb8\\xe0\\xc7\\x98\\x01\\x39\\x3d\\x7a\\xec\\x1a\\x4c\\xa0\\xbf\\xdd\\xbc\\x0d\\xe1\\x7b\\x6f\\xf3\\xd7\\x07\\x79\\x4a\\x40\\xe4\\x61\\x66\\xc6\\x7e\\xd0\\x43\\xbd\\x49\\xd1\\xc2\\xa6\\x29\\x4a\\x54\\x49\\x74\\xa8\\xd0\\x99\\xa4\\x34\\xdb\\x78\\xe9\\x59\\xa5\\x7f\\xac\\x1c\\xb3\\x8a\\x96\\xcd\\xa5\\x59\\x3c\\x45\\x2d\\x53\\xcd\\x83\\x0d\\x43\\xe2\\x1d\\x8a\\xa0\\x83\\x0a\\xad\\xc5\\x61\\xdc\\xec\\x1d\\xa2\\xb6\\x43\\x1c\\xbd\\x11\\xcf\\xb1\\x66\\xe0\\x72\\x68\\x5d\\x49\\x82\\xa9\\x8a\\x53\\x6b\\xec\\x36\\xea\\x17\\xf3\\xd1\\xf4\\xd9\\x54\\x0f\\x61\\xb4\\xb2\\xe0\\xc1\\x69\\x34\\x8f\\x3f\\x30\\xbd\\x58\\x8c\\x63\\x77\\x14\\x36\\x9b\\xa8\\x8a\\x09\\x55\\x66\\xc6\\x98\\x1a\\xe2\\xc9\\x4e\\xbd\\x35\\xe9\\x64\\x69\\x2f\\x14\\x4e\\xa5\\x2c\\x26\\x9b\\x2c\\x9f\\x3f\\x18\\x0e\\xaa\\x13\\x0f\\x84\\xc3\\x34\\xfe\\xbe\\xbe\\x96\\x26\\x9f\\xcd\\xb7\\x8e\\xcc\\x75\\x55\\x58\\x9f\\xe4\\xc6\\x4f\\xea\\x21\\x7e\\x11\\x32\\x95\\x4d\\x4f\\x4a\\xec\\x44\\x03\\x60\\x7e\\xea\\xdf\\x0e\\xc3\\xfa\\x0a\\x1f\\x4e\\x8c\\xcc\\x6e\\x01\\x26\\xd8\\x60\\x59\\x82\\x83\\x74\\xf2\\x20\\x97\\x86\\x9e\\xed\\x98\\x31\\xf2\\x69\\x1c\\xca\\xbe\\xd9\\x78\\x4f\\x44\\xf3\\x33\\x17\\x52\\xe6\\xb6\\x4f\\x36\\xd0\\xa0\\x37\\xc4\\xe5\\xf9\\xfc\\xdf\\xed\\xdf\\x2f\\xf5\\xf0\\xcd\\xe0\\x6b\\xf0\\x50\\x7a\\x2c\\xb5\\xea\\xa1\\x3c\\x36\\xed\\xb7\\x9b\\x8f\\xff\\xb3\\x6e\\xbf\\xd6\\x54\\x8f\\x78\\xff\\x51\\x5f\\xea\\x8f\\x9b\\xe9\\xfb\\xe6\\x5f\\x86\\xa6\\x6c\\x37\\xe7\\xb2\\x3b\\x6f\\xcf\\xf5\\xd0\\x1c\\x54\\xdf\\x93\\x48\\x53\\xce\\x5d\\x3f\\x1c\\xcb\\x16\\x9e\\x32\\x5b\\x66\\xef\\xc0\\x72\\xfe\\x17\\x98\\x07\\x80\\x01\\x64\\xde\\xf3\\x58\\x8e\\xcd\\x9e\\x52\\x65\\xa6\\x1e\\x4f\\x73\\x50\\x68\\x2a\\xe3\\xc1\\xb5\\xe9\\x1b\\x9c\\xa4\\xb1\\xe1\\x6f\\x1e\\xeb\\x8a\\xa2\\xdf\\xc0\\x14\\xde\\x92\\xb9\\x9d\\x2c\\xf5\\x56\\x9a\\x02\\x84\\x13\\x93\\x5c\\x39\\x07\\x24\\xd2\\xcd\\x03\\x68\\x1d\\xb0\\x0b\\x9b\\xc5\\x3e\\x8a\\x66\\xf3\\x89\\x9e\\x70\\xc7\\x60\\x03\\x2f\\xaf\\xd0\\x55\\x32\\x98\\xfd\\xc1\\x56\\xb6\\xc8\\x81\\x79\\xf5\\xc3\\xa2\\xaf\\x1a\\x16\\x95\\x24\\xd3\\x8a\\x67\\x83\\x34\\xdf\\x96\\x29\\xdb\\xae\\x2f\\x97\\x8a\\x98\\x20\\x34\\xa4\\x2c\\x69\\xcc\\x31\\x2f\\x1d\\x35\\xeb\\x8a\\x95\\xad\\x9e\\x80\\xbb\\xb7\\x6d\\xb1\\x8a\\x41\\xae\\x02\\xc2\\x99\\xe3\\xc9\\x94\\x2b\\xc7\\x08\\xa3\\xed\\xdf\\xae\\xef\\x80\\x15\\x74\\x1d\\x94\\xb2\\x0c\\xe9\\xca\\xaf\\x88\\x9e\\x15\\x9c\\x87\\xf9\\xc2\\x2a\\xca\\x97\\x12\\x89\\xe8\\x8c\\xcf\\x50\\xda\\xfc\\xf8\\x50\\x2f\\x00\\x59\\x08\\xf5\\xf2\\x51\\x32\\xbf\\x94\\xaa\\xfd\\x11\\xac\\x97\\xa9\\x16\\xe4\\xeb\\x65\\x64\\xf9\\xab\\xaf\\x5b\\x9d\\x6b\\x62\\x50\\xe9\\x75\\xa7\\x74\\xa0\\xa9\\xf2\\x92\\x93\\x91\\xce\\x16\\xb3\\xa6\\x4f\\x3a\\x30\\x3f\\xac\\x89\\xa5\\x0d\\x30\\x43\\xaf\\x0f\\x33\\x59\\x5f\\xdb\\xc3\\x4c\\xcc\\x97\\x66\\xad\\x77\\x27\\x77\\x49\\x73\\x5c\\x0a\\x89\\x4e\\x8f\\x5e\\x8e\\x6c\\xf7\\x82\\xd0\\x71\\xfd\\xc3\\x59\\xe8\\x5a\\x78\\x6d\\xd1\\x2d\\x4c\\x39\\xe0\\xe4\\x44\\xe5\\x51\\xc9\\x58\\x19\\xb6\\x05\\x33\\x7c\\x27\\x93\\x99\\xe7\\x5e\\xff\\xe0\\x48\\x5d\\xd1\\xdf\\xeb\\xac\\x38\\x6c\\xa3\\xb2\\xf1\\xc4\\x48\\xbc\\xd6\\x8a\\xc3\\xcd\\x1f\\xdc\\x8a\\x23\\x30\\x5e\\x6f\\xc5\\x59\\x6e\\x92\\xd5\\x8a\\xb3\\x58\\xd4\\x69\\xc5\\x71\\x94\\x7e\\x17\\x2b\\x8e\\x34\\xd6\\xe8\\x56\\x1c\\x5e\\xff\\xe2\\x83\\x23\\x1c\\xcc\\x9b\\xfe\\xdd\\x1d\\xe8\\xef\\x3b\\x3e\\x38\\x22\\xa4\\xf5\\x0d\\x1e\\x1c\\x71\\x08\\xbc\\xed\\x96\\x5f\\x30\\xdd\\xbb\\xc2\\x72\\x49\\xe6\\x50\\x07\\xaf\\x40\\xf9\\xb6\\xd8\\x9e\\x11\\x4d\\x62\\xd8\\x4d\\xe6\\x1c\\x6d\\x0e\\x50\\x72\\xe4\\xd1\\xac\\x99\\xe5\\x3b\\xb2\\xe6\\xa7\\x58\\xcc\\xcc\\x2b\\x5e\\x64\\x11\\x6c\\x80\\xbd\\xc0\\x5a\\xd0\\x5f\\x5c\\x63\\x2e\\xb7\\x19\\xb9\\x69\\xb5\\x67\\x3f\\xe2\\x91\\x26\\xb3\\xa0\\x37\\x05\\xc6\\xc5\\x9f\\xd9\\xcf\\xe7\\x17\\x1f\\x42\\xdc\\xee\\x9d\\xd0\\x5f\\xdb\\x36\\xca\\xb2\\x8b\\x32\\x37\\x51\\x2e\\x23\\x28\\xae\\xbc\\xf1\\x45\\xa5\\x45\\xd1\\xaf\\x03\\x13\\x77\\x49\\x74\\xca\\xfc\\x38\\xd3\\xc8\\xb6\\xb9\\x9f\\x96\\x17\\xd0\\x27\\x4b\\x18\\x66\\x9e\\xa4\\xdd\\xe5\\x4f\\x7f\\xc2\\x63\\x89\\xa8\\x36\\xb0\\x0c\\x75\\x2e\\x06\\x76\\x30\\x27\\xc8\\x7c\\xc5\\x54\\xda\\xca\\xf6\\x16\\x0f\\x2d\\xc4\\x67\\x7f\\x5a\\x88\\x96\\xbb\\x73\\xdf\\x5e\\xc6\\xfa\\x96\\xf9\\x10\\x64\\xa7\\x47\\xbe\\x22\\x2d\\xd6\\x74\\x5a\\x58\\x8f\\xae\\xe8\\x73\\xba\\xdc\\x67\\x27\\x88\\xe8\\x73\\x6a\\xd8\\x07\\x2d\\xfd\\x49\\x65\\x7f\\x02\\x6c\\xa3\\xa4\\x6c\\x18\\xec\\x43\\xaa\\xf8\\x65\\xe0\\xa4\\x9e\\x3d\\x10\\xb0\\xbb\\x11\\x9a\\xdf\\x89\\xf4\\x54\\xa7\\x84\\xa6\\x28\\x15\\x83\\xf7\\xda\\x76\\x71\\xaa\\x2b\\xcd\\x32\\xa9\\x61\\xab\\x35\\x45\\x6b\\xe5\\x0b\\x70\\xc5\\x87\\xe9\\x0b\\xe2\\xe3\\x64\\x81\\x5b\\x70\\x73\\x12\\x0b\\x6b\\xd4\\xcd\\xc9\\xb4\\x25\\x63\\xae\\x54\\x46\\x1c\\x0f\\x6b\\x6b\\xe4\\x2a\\x7b\\x7d\\x01\\xd5\\xe7\\x6c\\xcd\\xbd\\x63\\xae\\xcc\\x31\\xff\\x3b\\x94\\x3a\\xeb\\xfd\\xfc\\xc4\\x1e\\x0a\\x25\\x93\\x6e\\xc4\\x5f\\x49\\xa6\\xa5\\xb1\\xb3\\xf5\\x7b\\xb1\\x9c\\x8b\\x68\\x6f\\xe0\\xc9\\xc8\\xea\\x9c\\xf7\\xb4\\x26\\xff\\x1b\\x1b\\x3d\\x98\\xad\\xee\\x87\\x99\\xe4\\x33\\x5e\\x9f\\xb6\\xc1\\xab\\xaa\\xd0\\xcc\\xec\\xcb\\x35\\x49\\x5d\\xa1\\x57\\x18\\x84\\x50\\x8d\\x3a\\x2b\\x9d\\x6f\\xed\\xac\\xab\\x93\\xeb\\x01\\xa3\\xca\\x68\\x7d\\x95\\xde\\x4b\\x29\\xab\\x7b\\x24\\x1b\\x8d\\x20\\xe4\\xfb\\x5b\\xf4\\x8a\\xe4\\xa2\\xc7\\x0f\\xbf\\xee\\xe9\\xf0\\x9f\\x86\\x00\\xae\\x3c\\xf5\\x20\\x72\\x7e\\x23\\x49\\x31\\x2b\\x1a\\x12\\x1e\\xec\\xe8\\xef\\x55\\xbb\\x42\\x7e\\xc1\\x7d\\xe3\\x7d\\x17\\xb0\\x9f\\x57\\xee\\x0a\\xc5\\xfb\\x8d\\x7c\\x57\\x28\\x30\\x5e\\xbd\\x2b\\x5c\\xd1\\x24\\xdb\\xae\\x70\\xb9\\xa8\\x6b\\x57\\xe8\\x2a\\xfd\\x1e\\xbb\\xc2\\xe9\\xb5\\x49\\x7d\\x57\\xc8\\xeb\\x5f\\x7e\\x86\\x32\\xa1\\xbf\\x18\\x9f\\xb0\\x13\\x59\\xfc\\x89\\x2d\\x66\\x1d\\x73\\xdd\\x63\\x75\\xd8\\x21\\x9e\\xf1\\x8a\\xb4\\x63\\x57\\xa3\\x3a\\x5b\\xbe\\x72\\x6e\\xec\\x28\\x8c\\xf9\\x52\\xdb\\xba\\x8c\\xfa\\xff\\x60\\x12\\xc4\\xce\\xa1\\xd7\\x00\\x23\\x26\\x3a\\x5b\\x07\\x57\\x99\\xea\\xec\\x1d\\x50\\xbc\\xf7\\x67\\xeb\\x9c\\x25\\xdb\\x41\\x71\\xc3\\xd1\\x6a\\x69\\x8f\\xc7\\x99\\xcd\\x41\\x2b\\xf5\\xd4\\x5d\\xd2\\xca\\x05\\xeb\\x68\\x1c\\x7e\\x2a\\x6f\\xa7\\x89\\x71\\x3a\\x8f\\x38\\x83\\x89\\xf6\\x63\\x2e\\x82\\x73\\xf4\\x0e\\x8c\\x50\\xab\\x97\\x6a\\xf6\\x62\\x0b\\x4b\\x36\\x77\\x7d\\x57\\x2c\\xdd\\x44\\x1f\\x57\\xf1\\xd0\\xf2\\x42\\xd8\\x05\\xff\\x7a\\xbf\\xff\\x15\\xcd\\x5a\\xbf\\xee\\x82\\x57\\x24\\x60\\x7d\\x4e\\xb9\\xbd\\x7a\\x85\\x79\\xf5\\x20\\xaf\\x2e\\xff\\xb2\\x15\\xe7\\x8b\\x29\\x6d\\x3d\\xca\\x5e\\x7e\\x6d\\x9f\\xfe\\x6a\\x73\\x8c\\xe0\\xbc\\x05\\x2b\\x9e\\x1e\\x1f\\xc9\\x6d\\x20\\x0b\\x16\\x0c\\x78\\xd7\\x63\\x7b\\xbb\\x66\\x89\\x7e\\x32\\xcd\\xdd\\xcc\\xe7\\x19\\xac\\xb9\\x46\\x62\\x6f\\x24\\xe9\\xdf\\xad\\x8a\\x12\\x1b\\x21\\xbe\\x4e\\x3b\\xb5\\xe5\\xbe\\xbe\\x67\\x71\\xaa\\x9f\\x80\\x6d\\xec\\xca\\xf1\\xbe\\xd9\\x1e\\xcf\\x5b\\xe1\\x4a\\xf1\\x56\\x28\\xa7\\x95\\xdb\\x1b\\xe3\\xb5\\xcf\\xaf\\xb6\\x22\\x3e\\x2b\\x52\\x57\\x53\\x38\\x89\\x44\\x86\\x93\\x40\\xce\\xc4\\x2c\\x47\\x78\\x4b\\xb7\\xc0\\x09\\x6e\\xea\\xe3\\x87\\x48\\x86\\x6d\\x1d\\x35\\xf5\\xd9\\x61\\x57\\x82\\x81\\xe8\\x83\\xc6\\x9a\\x67\\x3e\\xa4\\x7a\\xb3\\x93\\x25\\x52\\xd3\\xdf\\xab\\xf6\\x10\\xfc\\x75\\xee\\x8d\\xf7\\x1d\\x89\\xe9\\xef\\x2b\\xf7\\x10\\x1c\\x9b\\xd8\\x43\\x08\\x8c\\x57\\xef\\x21\\x56\\x34\\xc9\\xb6\\x87\\x58\\x2e\\xea\\xda\\x43\\xb8\\x4a\\xbf\\xc7\\x1e\\x82\\xd7\\x87\\xec\\x21\\x78\\xfd\\x8b\\x7b\\x08\\x0e\\xe6\\xcd\\xff\\xbe\\xf7\\x53\\xf6\\xbc\\xa2\\xb7\\x79\\xca\\xde\\x2e\\x0f\\xd6\\x2d\\x87\\xe5\\xc8\\x05\\x85\\x80\\xc7\\x18\\x18\\x88\\xbf\\x02\\x44\\x3f\\x8a\\xc1\\x80\\xae\\x38\\x92\\x11\\xf4\\xc3\\x28\\xcb\\x87\\xce\\xa9\\x27\\xd6\\xf7\\x09\\x0d\\x38\\x48\\x7f\\xc4\\x11\\xcd\\x6e\\xa8\\xcb\\x6a\\x3f\\x5c\\x8e\\xbb\\x49\\x05\\xe7\\x52\\x05\\x4f\\x4e\\x1f\\xc4\\x43\\x83\\x49\\x5d\\x79\\x3a\\x73\\x95\\x8b\\xfa\\xb3\\xd2\\xb2\\x2f\\x6d\\x73\\x5d\\xb4\\x37\\xb7\\x13\\x34\\x40\\xfc\\x65\\x8a\\xe3\\x33\\xbd\\xdd\\xef\\x29\\xd3\\x8f\\x98\\x04\\x95\\x22\\x92\\xae\\xc6\\xea\\xf5\\x54\\xde\\x35\\x1d\\xf3\\x9d\\x10\\xc7\\x36\\x37\\xf3\\x33\\xc0\\x73\\x9e\\x77\\xb9\\x32\\x72\\x9d\\x2b\\xc4\\x97\\xcd\\x35\\xec\\x6d\\x2e\\x03\\x84\\x98\\xcf\\xbe\\xf5\\x24\\xcc\\x06\\xbd\\x1a\\x50\\x27\\x93\\x39\\xea\\x18\\x08\\xdd\\x63\\x1b\\x69\\xe7\\x53\\xd9\\xa9\\x9e\\x45\\xc0\\xdb\\x53\\x8f\\xfc\\xc3\\x58\\x7b\\xa5\\xf7\\x8b\\x2b\\xbc\\x8c\\x12\\x61\\x46\\x09\\xff\\x68\\x0e\\x3f\\xb0\\xa5\\x20\\x39\\x42\\xa1\\xc1\\x1c\\xc5\\xa2\\x80\\x67\\xb0\\x2e\\x5b\\x05\\xd2\\x68\\xc3\\x3a\\x7c\\x90\\xc7\\xcd\\x4b\\x52\\x5a\\xd1\\xe9\\x22\\x16\\x2d\\x6c\\x20\\x9e\\xaf\\x69\\x39\\xb2\\x70\\xba\\x98\\x57\\xbc\\xb4\\x7d\\xe5\\x75\\x77\\xbb\\x74\\xa2\\xc3\\x48\\x2f\\xe6\\xa0\\x80\\x7c\\x4e\\x68\\x63\\x9c\\x11\\x53\\xf2\\xef\\x34\\xac\\xbd\\xd1\\x7b\\x35\\x32\\x09\\x42\\x1c\\x25\\x9b\\xd1\\xe6\\xff\\xa4\\x00\\xf7\\x73\\x67\\xc5\\xd3\\xaa\\x75\\xc5\\xaf\\xc6\\xf0\\x07\\x36\\x78\\x9a\\x06\\xc8\\x0f\\x7d\\x14\\xa8\\x29\\xa2\\xa1\\x02\\xc4\\x43\\xb4\\x22\\x1a\\x0c\\xe4\\x30\\x7a\\x4e\\x7e\\x8f\\xcc\\xb9\\xb3\\x80\\xf1\\x0e\\xa7\\xb7\\x17\\x70\\x0c\\x76\\xce\\xb6\\x42\\xd9\\xc6\\xf0\\x77\\x18\\xa9\\xdf\\xd2\\x5b\\x1b\\x3f\\xdb\\x80\\x56\\x71\\xf5\\xef\\x29\\x66\\xbf\\xd2\\x65\\x16\\x66\\x78\\x89\\x55\\x78\\xe8\\xe1\\x25\\x28\\x0b\\x2a\\x7d\\x2e\\xb0\\x62\\x5b\\xc3\\x78\\x91\\x9b\\xf1\\x22\\x3b\\xe3\\x45\\xab\\x18\\xcf\\x82\\x5f\\x61\\xbc\\xc8\\xc9\\x78\\x91\\x8b\\xc0\\x56\\xbe\\x53\\x29\\x62\\x05\\xc2\\x11\\x39\\xa9\\x7b\\x2d\\x0f\\xdb\\xa9\\xcb\\xb9\\x2b\\x72\\xf0\\xb0\\x9d\\xbe\\x6b\\xaa\\x50\\x79\\xd8\\xa4\\xb0\\x81\\x01\\x92\\x58\\xe9\\xb2\\x9d\\xb0\\x50\\x97\\x86\\xd2\\xd5\\x17\\x7b\\xef\\x06\\x25\\xba\\x75\\x34\\x20\\x62\\x76\\xec\\x7b\\x8b\\x3d\\xb7\\x73\\x2a\\xef\\xa6\\xc0\\xac\\x72\\x67\\xa0\\x6f\\xa8\\xcc\\xa9\\x65\\xbe\\x7f\\xc7\\xca\\x4f\\x2e\\x01\\xfc\\xdb\\xb5\\x77\\xee\\xd4\\x52\\xf0\\xb6\\x1d\\xcb\\xf1\\x6c\\x2b\\x6e\\x96\\x25\\x28\\xc0\\x3f\\xb3\\x4e\\xa3\\xfb\\x18\\x60\\xc8\\x8b\\x71\\x1f\\x3e\\x6b\\x84\\xc6\\x37\\xbb\\x1d\\x35\\x37\\x5a\\x59\\x51\\xca\\x94\\xab\\xc2\\x19\\x83\\x15\\x74\\x3d\\x78\\x7e\\x57\\x3f\\x8e\\x33\\x2d\\xf8\\x57\\x65\\xc3\\xa1\\xce\\xf6\\x34\\xff\\x34\\xd4\\x5f\\x9b\\xfe\\x72\\x56\\x8a\\x4c\\x49\\xfa\\x3e\\x65\\x2e\\xa5\\x2d\\x96\\x61\\x12\\xec\\x92\\xb1\\x38\\x36\\x33\\x90\\xc5\\x3c\\x3e\\x2a\\xe6\\x5a\\x99\\xbd\\xe0\\xd7\\x95\\x4d\\x7b\\x7e\\x32\\x6f\\x26\\xeb\\xfc\\xab\\x04\\x6b\\x9a\\x8a\\xcd\\xe1\\x9a\\xe6\\xa4\\xab\\x03\\x36\\xe9\\x45\\x21\\xf3\\x0e\\xfd\\xc3\\xf6\\xd0\\x5e\\x9a\\xca\\xb3\\x35\\x57\\xc3\\xa2\\x5d\\x3c\\x41\\x62\\x3a\\xa8\\x85\\xe5\\xdb\\x95\\x53\\x79\\x4b\\x3c\\xea\\x78\\x55\\x08\\x57\\x07\\x9f\\xbf\\xcd\\xb6\\x1d\\x33\\x41\\x93\\xc4\\xba\\x6f\\xb7\\x82\\x5f\\x81\\xd8\\x3c\\x6d\\xa1\\x7a\\x97\\xf8\\xe1\\xd9\\xab\\xcb\\x73\\xbd\\x6d\\xba\\x6d\\x7f\\x19\\x8d\\xd3\\x17\\x1c\\xa8\\x5f\\x04\\x59\\xca\\x7f\\xfe\\x50\\xce\\x83\\x25\\x84\\x45\\x4d\\xc1\\x22\\x97\\x88\\xe8\\x81\\xab\\x22\\x23\\x04\\x24\\xd9\\x78\\x61\\x10\\xbb\\x5d\\x83\\x5d\\x25\\xae\\x02\\x56\\x59\\x8f\\x85\\x52\\x87\\xec\\xa7\\x3d\\x53\\xa0\\x72\\x2e\\xf3\\x85\\x02\\x2e\\x4f\\x53\\x20\\x33\\x89\\xd0\\xf3\\xf7\\xe5\\x89\\x19\\xad\\x24\\x1b\\x17\\xb3\\xf5\\x6b\\x76\\x89\\x2b\\xdb\\x7a\\x18\\x81\\x85\\x30\\x4a\\xc4\\x15\\x9c\\x20\\x36\\xe3\\xdc\\x92\\x6b\\xc3\\x8b\\x23\\xea\\x68\\x7f\\xc8\\xeb\\x08\\x91\\x9f\\xc3\\xae\\xae\\xab\\xb7\\xb1\\x31\\x8a\\x7e\\x6d\\xf8\\x3f\\xde\\x7d\\x3c\\x1d\\x7f\\x91\\x22\\x4f\\xa2\\x09\\x80\\xe6\\x48\\x63\\xe8\\x9c\\xe8\\xf3\\x07\\x6c\\xcd\\xcb\\x74\\xcc\\xe7\\x37\\x3c\\x3d\\x0a\\x37\\xb4\\x6d\\x18\\x60\\x9a\\x41\\xe2\\x91\\xcf\\x66\\x20\\xd6\\x9b\\xea\\x70\\x20\\x55\\xae\\x99\\xfa\\xab\\xb4\\x2e\\xf6\\xa9\\x1c\\xa2\\x38\\xcd\\xf3\\x38\\x33\\x90\\x29\\x7d\\xd1\\x21\\xf8\\x4b\\x1e\\xa2\\xcf\\xdb\\x7a\\x18\\x7a\\xcc\\x07\\xed\\x10\\x56\\x75\\x55\\xeb\\xf7\\x57\\xea\\x2a\\xaa\\x32\\x59\\xf5\\xae\\x88\\xcb\\x38\\xd7\\x11\\x7b\\xf7\\x31\\xc0\\xad\\xb4\\x44\\x2f\\xd0\\x74\\x87\\x1e\\xeb\\x75\\x51\\x57\\x87\\x4c\\xab\\x7a\\xb7\\xaf\\xf3\\xc3\\xe4\\x3a\\x11\\x95\\x79\\x56\\x56\\x10\\x93\\x52\\x91\\x9e\\xcd\\x04\\x05\\x44\\x6f\\x66\\x4c\\xab\\x85\\x6f\\x0e\\x54\\x9e\\xe0\\x65\\xbe\\x9c\\x36\\xe0\\xeb\\xa5\\x35\\x6e\\x92\\xc3\\x02\\xde\\xe9\\x47\\x24\\x06\\xc4\\x5f\\x24\\xb3\\xfe\\x52\\x7f\\x3b\\x0c\\xe5\\xb1\\x3e\\x7b\\xa7\\xa1\\xbf\\x1b\\xea\\xf3\\x79\\xcb\\xaf\\xbd\\x0e\\xcd\\xa9\\x3e\\x3f\\x1d\\x06\\xcb\\x5b\\xd4\\xb1\\xb0\\x24\\x7b\\x63\\x6f\\x79\\x40\\x98\\xdc\\x3e\\x3f\\xff\\x85\\x71\\xfe\\xbb\\xd7\\x71\\x7e\\xf7\\x2a\\xfa\\x17\\xd7\\x40\\x5c\\xe8\\x65\\xf5\\xcf\\x7f\\x79\\xdf\\x0e\\xf8\\x12\\xe9\\x93\\x1e\\xe2\\x5f\\x95\\x7f\\x44\\x65\\x22\\x62\\x98\\xd1\\xdf\\xeb\\x2e\\x08\\xb2\\x05\\x2b\\xfd\\x50\\xd0\\xdf\\xd7\\x5e\\x10\\x64\\xd8\\x64\\x98\\x27\\x8e\\xf1\\xfa\\x0b\\x82\\xcb\\x4d\\xb2\\x5e\\x10\\x5c\\x2c\\xea\\xbc\\x20\\xe8\\x28\\xfd\\x2e\\x17\\x04\\x59\\x7d\\x58\\x98\\x27\\x56\\x3f\\x72\\x8c\\xbb\\xde\\x23\\x47\\x39\\xa4\\x5d\\xeb\\x76\\xa3\\x16\\xb9\\xb2\\x82\\x37\\x99\\x5d\\xa5\\x1c\\x78\\xfe\\xae\\x94\\xc1\\x02\\x94\\x57\\x32\\xe8\\x72\\x05\\x1e\\xac\\x28\\x8b\\x72\\x65\\x0f\\x1d\\xca\\xd5\\x04\\xd8\\x1a\\xbf\\xca\\x39\\xa2\\x20\\x55\\x78\\x9d\\x73\\x44\\x5c\\xec\\xaa\\x03\\x73\\x08\\xc8\\xc9\\xae\\x7e\\xad\\x73\\x04\\xc3\\x36\\x39\\x47\\x30\\x8c\\xd7\\x3b\\x47\\x2c\\x37\\xc9\\xea\\x1c\\xb1\\x58\\xd4\\xe9\\x1c\\xe1\\x28\\xfd\\x2e\\xce\\x11\\xac\\x3e\\xd4\\x39\\x82\\xd6\\x7f\\x9d\\x54\\x59\\x18\\xc5\\xe5\\xcc\\xe6\\x28\\x72\\x65\\x05\\x6a\\xb3\\x9a\\x5f\\xe9\\x52\\x7a\\xb2\\x74\\x3d\\x2a\\xd5\\x1b\\x59\\x96\\x02\\xe6\\xbe\\x8b\\xc9\\x98\\x47\\xfc\\x94\\xef\\x88\\x8c\\x2d\\x97\\x91\\xdf\\xbb\\x72\\x1d\\x59\\xba\\x74\\xff\\xc8\\x44\\x7c\\xdd\\xa3\\xa8\\xea\\xc3\\x8c\\x38\\xd5\\x64\\xfe\\x9a\\xe7\\x4e\\xaf\\xc0\\xf6\\x66\\x88\\x94\\xde\\x8b\\x45\\x43\\xc5\\x75\\x1c\\xe2\\xf3\\xcb\\x98\\xf7\\x2a\\x75\\xc1\\x35\\x05\\xfd\\x4b\\x59\\x87\\xe1\\xd9\\x9e\\xc7\\xfe\\xf4\\x03\\xd5\\x67\\x1b\\xcb\\x26\\x2a\\x48\\x3e\\x7d\\x42\\x80\\x95\\x93\\x50\\x3d\\x7b\\x31\\x77\\x75\\x45\\xd9\\xb5\\xc0\\xb0\\xde\\xb1\\xff\\x41\\x4d\\xb8\\x42\\x11\\xc6\\x49\\x55\\xdf\\x39\\xea\\xf6\\xc2\\xe4\\x7b\\x50\\x9b\\x99\\x90\\x50\\x5a\\xdb\\x11\\x2c\\x64\\x67\\x3a\\x3a\\x3d\\x01\\xeb\\x0c\\x36\\xcb\\xfc\\x3e\\x7b\\x62\\xce\\x2f\\xbf\\xcb\\x7e\\xfc\\x1e\\x3b\\x31\\xa9\\xda\\xb9\\x33\\x6c\\xb5\\xc4\\xb6\\x28\\x2c\\x20\\x13\\xd7\\x9d\\xf6\\xec\\xde\\x91\\x69\\xcf\\x51\\x54\\xdf\\xf4\\x50\\x81\\xaa\\xfa\\xcb\\xae\\x39\\x72\\x83\\x3a\\xb6\\xb5\\xf2\\xc2\\xb3\\xc7\\xa9\\xed\\x35\\xdd\\xa1\\xe9\\x9a\\x51\\xcc\\x51\\x2f\\x29\\x76\\x7e\\x49\\xa9\\xfe\\x05\\x85\\xae\\x2f\\xa1\\x4e\\x10\\xf2\\xe9\\xd4\\x5d\\x39\\x6c\\xe0\\xa4\\x29\\xb2\\x30\\x1b\\x48\\x95\\x04\\xf1\\xfe\\xaa\\x15\\x6a\\x5d\\x27\\x87\\x64\\xb7\\xf1\\xbe\\xdb\\xc7\\xd1\\x3e\\x7a\\x6d\\x60\\x18\\x8e\\x4d\\xac\\x50\\x05\\xc6\\xab\\x57\\xa8\\x2b\\x9a\\x64\\x5b\\xa1\\x2e\\x17\\x75\\xad\\x50\\x5d\\xa5\\xdf\\x63\\x85\\xca\\xeb\\x43\\x56\\xa8\\xbc\\x7e\\x64\\x85\\x6a\\x32\\x08\\xbe\\xa2\\xd8\\xe0\\xc9\\x76\\xce\\xe1\\x4d\\xf9\\x63\\xbd\\xf1\\xc7\\x7a\\xe3\\x8f\\xf5\\xc6\\x3f\\x6b\\x3f\\x7e\\x8f\\x9d\\x00\\x5b\\x1e\\xf9\\xd0\\x37\\x32\\xa5\\xd9\\x4f\\x33\\x92\\x7a\\x57\\x24\\xd7\\x5d\\x49\\x49\\xc3\\x7d\\x9c\\x86\\x1b\\xef\\xbb\\x24\\x2b\\x8b\\x24\\x7b\\xe5\\x9c\\xc6\\xb1\\x89\\x39\\x4d\\x60\\xbc\\x7a\\x4e\\x5b\\xd1\\x24\\xdb\\x9c\\xb6\\x5c\\xd4\\x35\\xa7\\xb9\\x4a\\xbf\\xc7\\x9c\\xc6\\xeb\\x43\\xe6\\x34\\x5e\\xff\\xc2\\x9c\\x26\\xd8\\xe0\\xba\\x49\\xcd\\xce\\x3b\\xbc\\x31\\x7f\\xcc\\x6a\\x7f\\xcc\\x6a\\x7f\\xcc\\x6a\\xff\\xac\\xfd\\xf8\\x3d\\x76\\x42\\x55\\x59\\xec\\x10\\x19\\x9b\\xd2\\x2c\\xe7\\xd4\\xf1\\x6e\\x17\\xec\\x31\\xcb\\x9e\\x7d\\x3e\\x4b\\x76\\x7b\\x52\\xd5\\x1b\\xef\\xbb\\x28\\x2a\\x76\\xbb\\xd7\\x9e\\xcd\\x71\\x6c\\x62\\x3e\\x13\\x18\\xaf\\x9e\\xcf\\x56\\x34\\xc9\\x36\\x9f\\x2d\\x17\\x75\\xcd\\x67\\xae\\xd2\\xef\\x31\\x9f\\xf1\\xfa\\x90\\xf9\\x8c\\xd7\\xbf\\x30\\x9f\\x51\\x1e\\xb8\\x6e\\x32\\xb3\\x70\\x0d\\x6f\\xc6\\x1f\\x33\\xd9\\x1f\\x33\\xd9\\x1f\\x33\\xd9\\x3f\\x6b\\x3f\\x7e\\x8f\\x9d\\x50\\x95\\xd5\\x43\\x39\\x74\\x4d\\x77\\x87\\x4e\\x66\\x22\\x0f\\x73\\xf9\\x2a\\xcb\\x2c\\xba\\xee\\x54\\xfc\\xb0\\xdb\\xc5\\x09\\xa1\\x1f\\xf2\\x22\\x26\\xe9\\x6b\\x7d\\x4d\\x18\\x36\\xe9\\x6b\\xc2\\x31\\x5e\\xef\\x6b\\xb2\\xdc\\x24\\xab\\xaf\\xc9\\x62\\x51\\xa7\\xaf\\x89\\xa3\\xf4\\xbb\\xf8\\x9a\\xb0\\xfa\\x30\\x5f\\x13\\x56\\xff\\xc2\\x7c\\x26\\xd8\\xe0\\xba\\x29\\xcd\\xc1\\x3b\\xac\\x31\\x7f\\xcc\\x6a\\x7f\\xcc\\x6a\\x7f\\xcc\\x6a\\xff\\xac\\xfd\\xf8\\x3d\\x76\\xe2\\xf9\\x83\\x7f\\x5f\\x0f\\xfd\\xf6\\xd2\\x35\\xb3\\xfb\\x79\\x6a\\xba\\x4f\\x46\\xda\\x65\\xae\\x1c\\x79\\x28\\x4f\\xf5\\xc0\\x8e\\xe6\\xa7\\x43\\x9a\\xee\\xbe\\x1e\\x9a\\x11\\x0b\\x9b\\xce\\x5f\\xd2\\xb5\\x46\\x08\\xb5\\xc4\\x05\\x35\\xa3\\x81\\xde\\x3e\\xcf\\xbd\\xf0\\xee\\x03\\xc3\\x87\\x78\\x6e\\x78\\x4a\\x34\\x57\\xf1\\x40\\x6b\\x65\\x5b\\x8f\\x63\\x3d\\xb0\\x87\\xb9\\x28\\x29\\xb6\\xe2\\xf5\\xa2\\x19\\x7d\\xdb\\x3c\\x19\\x1d\\x7d\\xfe\\xe0\\x1f\\xeb\\xaa\\x29\\x37\\xfc\\x9f\\xed\\xae\\xaf\\xbe\\x19\\xbe\\xa9\\x9f\\x8d\\xb7\\x0c\\xe5\\x6d\\x1e\\x58\\xda\\xe3\\xff\\xa8\\x5e\\xce\\xf2\\xd6\\x15\\xcb\\x50\\x2f\\x75\\x1a\\xef\\x7d\\xf1\\xfa\\xfb\\xdd\\x7f\\xd5\\xfb\\xd1\\x7c\\x91\\x9c\\xe7\\xde\\xd7\\x25\\x1d\\xe6\\x27\\x25\\xfc\\x88\\x8a\\xff\\x0b\\x8f\\x00\\xdb\\xd6\\x87\\x11\\x3e\\xe0\\x1c\\x10\\x13\\x8a\\x5f\\xc6\\x06\\x0f\\x07\\xab\\x50\\xdb\\xb6\\x39\\x8f\\xda\\x4d\\x21\\xfd\\x52\\xd3\\xf3\\x07\\x7f\\xec\\xfb\\x76\\x6c\\x94\\x17\\xb6\\xa6\\xf0\\xde\\xe0\\xb5\\x2a\\xd8\\x1f\\x46\\xc5\\xa6\\x6d\\xc6\\x6f\\x13\\x41\\xd5\\xdb\\x86\\xfa\\x38\\xfb\\xf1\\xf4\\xd4\\x3e\\xc1\\x9f\\xda\\xa7\\x33\\xb8\\x6c\\x8a\\xdf\\x74\\x4f\\x13\\xb8\\x9f\\xe3\\x05\\x72\\xf1\\x34\\xbf\\x28\\x32\\xf6\\xc0\\x35\\x7d\\x1b\\xcd\\x2e\\xf0\\xec\\xb6\\x1e\\x51\\x81\\x4d\\xc2\\xa9\\xe0\\xd3\\x88\\x48\\x70\\xf1\\x26\\x92\\x16\\xaf\\xde\\x8a\\x5d\\x1d\\x3c\\x7e\\x9f\\xcc\\x85\\x5d\\xbe\\x9c\\x3b\\x5d\\x74\\x09\\x89\\xf2\\x4e\\x2e\\x7b\\x90\\x07\\x89\\x9b\\x65\\x3a\\x8b\\x2e\\x5f\\xf6\\x13\\xb1\\x77\\xde\\xc6\\xfb\\x55\\xb6\\xbe\\x1c\\x86\\xfe\\x01\\xe1\\x1d\\x19\\x20\\x64\\xba\\xe9\\x06\\x6e\\x3c\\x20\\x61\\xe7\\x39\\x53\\xb2\\x6b\\x30\\xda\\xb8\\x7a\\x5a\\x65\\xf3\\x9b\\x9c\\xec\\x0d\\x1b\\xed\\x5a\\xd0\\x56\\xb9\\x37\\xc9\\x1b\\x41\\x07\\x28\\x51\\x1f\\xb2\\x56\\x22\\x18\\xce\\xf1\\x88\\x00\\x6f\\xe8\\x55\\xb2\\xdb\\x0e\\xe4\\xfb\\x5b\\x18\\xa8\\x86\\x31\\x9a\\xb5\\x3a\\x50\\x25\\x08\\xf9\\x69\\x56\\x4a\\xf1\\xda\\xea\\xd4\\x5e\\x93\\xb7\\x57\\x4a\\x64\\xb5\\xb7\\x48\\x04\\x52\\xb3\\x4e\\x19\\x01\\xdf\\xac\\x75\\x35\\x65\\x8d\\x1a\\x61\\x08\\xc8\\xb9\\xce\\x53\\x7f\\x62\\xd1\\x67\\xf1\\x27\\x04\\x90\\xe7\\xf1\\x82\\x59\\xe1\\x30\\x6e\\x56\\xc4\\x23\\x4b\\x15\\xf1\\x08\\xa0\\xf7\\x34\\x73\\xae\\xb6\\x46\\xb6\\x41\\xbc\\x8a\\xf6\\x6d\\x73\\xba\\x99\\xaf\\xca\\x98\\x7e\\x45\\x2a\\xc0\\xad\\xab\\xa0\\x79\\x97\\x6b\\x7e\\xbf\\x40\\x49\\x45\\xde\\x2f\\x78\\x83\\x29\\x18\\xbd\\xd9\\x97\\x68\\xef\\xa5\\x81\\x3a\\x8d\\x5b\\x7d\\x2e\\xe8\\xd5\\x80\\xf0\\x61\\x4d\\xf6\\x42\\xe4\\xb3\\x1c\\x7c\\x43\\x45\\xcb\\xc9\\x4a\\xe6\\xdb\\xa7\\x33\\x09\\x61\\x2a\\x62\\x1d\\xc2\\xd4\\xbd\\x1a\\xc4\\x76\\x6c\\xc6\\xb6\\x9e\\x2f\\xbc\\x81\\xb8\\x60\\x31\\x5c\\x67\\xc5\\x2b\\xde\\xbc\\xcc\\x9d\\x37\\x5b\\xc0\\x1b\\x11\\x0a\\x6b\\xd4\\x3b\\xfa\\x6b\\x19\\xf9\\x49\\x79\\xe0\\x2f\\xf3\\xab\\xd9\\xf6\\x9c\\x67\\xd8\\xe1\\x9b\\xfa\\x78\\x1a\\xbf\\xc1\\x67\\xc2\\x14\\xa2\\x88\\xfb\\xc9\\xea\\x35\\x49\\x4f\\xde\\x18\\x13\\x30\\x9e\\xcf\\x14\\xc4\\x46\\xfb\\x2e\\xee\\x2c\\x9b\\x82\\x8d\\xbd\\x80\\xf3\\xf2\\xe9\\x00\\x56\\xaa\\xbd\\x56\\x19\\x60\\x0d\\x85\\x6f\\x78\\xc8\\x3b\\xa4\\x6c\\x36\\x9d\\xee\\x62\\x2b\\x8c\\xc3\\xe6\\x19\\x8e\\x1c\\x57\\x7e\\x41\\x60\\xa8\\x39\\xd9\\x29\\x34\\x24\\xf0\\x8a\\xa7\\x4b\\x98\\xd3\\x36\\x7f\\x35\\x84\\xf7\\x01\\x69\\xcd\\xd4\\x0d\\xc9\\x42\\xb7\\x26\\x77\\xaf\\x6d\\xd5\\x1c\\x92\\x17\\x88\\x9c\\xec\\x37\\x98\\xe4\\x78\\x8b\\x80\\xb8\\x06\\xda\\xcc\\xa2\\x55\\x04\\xa6\\x38\\x85\\x00\\x6a\\x3a\\x1e\\xb0\\x1d\\x6b\\x8d\\xfa\\xf4\\x02\\xaf\\x58\\x10\\x8a\\x5c\\xd1\\x0a\\xb3\\xc3\\x72\\xd2\\x5b\\x3b\\xd2\\x94\\x7a\\x5a\\x0d\\x46\\x80\\xe7\\x75\\xef\\x01\\x25\\x9f\\x6e\\x67\\x32\\x3e\\xe3\\x0d\\x12\\x9d\\x66\\x8a\\xcd\\x35\\xd2\\x8b\\xad\\x32\\x3b\\xce\\x57\\x18\\xd8\\xca\\xc2\\x3d\\xd2\\x9c\\x9e\\x5a\\x65\\xea\\xc2\\x42\\x21\\x80\\x92\\xec\\x1e\\x68\\xa5\\x31\\xa2\\xcb\\xd3\\x9b\\xe4\\xab\\xeb\\x9d\\xa2\\xd5\\x29\\x7c\\x41\\x77\\x3e\\x7d\\x55\\xb6\\x6c\\x02\\xaf\\x06\\xf5\\xd9\\x60\\xfe\\x1c\\x2f\\x5f\\x6d\\x0c\\x93\\x0e\\x52\\x17\\x92\\xea\\xf2\\x23\\x26\\xf6\\xf5\\xf3\\xb3\\x56\\x87\\x7f\\x28\\xab\\x7a\\xde\\xaf\\x98\\x8d\\xd8\\x60\\x05\\xae\\xd9\\xe3\\xb0\\xe2\\x58\\x57\\x02\\x29\\xad\\x74\\x34\\xe7\\xd6\\x27\\x44\\xe8\\xdb\\x24\\x35\\x1f\\xdd\\xcf\\x2d\\x77\\x31\\x6d\\xc1\\xff\\xe6\\xf1\\x75\\xac\\x62\\xa2\\x4f\\xb7\\x9f\\xf1\\xa2\\xef\\xb5\\xb8\\x89\\x4e\\x8f\\x5e\\x86\\x2c\\x42\\x22\\x6c\\x6d\\xe3\\x00\\x5e\\x8d\\xf4\\x95\\x6b\\x47\\xbe\\x46\\x74\\xe4\\xc9\\x20\\xca\\x22\\x24\\x37\\x1b\\x73\\xce\\x5a\\xc8\\x4d\\x28\\xc1\\x20\\x9e\\x1f\\x49\\xef\\xec\\x8d\\xc7\\xe6\\x8c\\x48\\x04\\x8b\\xc0\\x22\\x52\\xac\\x2b\\xd4\\x5f\\x5d\\xe4\\x6a\\x78\\x16\\x41\\x20\\xf9\\x7e\\x62\\xed\\x49\\x20\\x24\\x4f\\x4f\\x22\\x74\\x5f\\x97\\x6a\\xf4\\xd2\\x42\\x06\\x6f\\xb5\\x2f\\xac\\xea\\x89\\x78\\xa2\\xb0\\x8c\\x64\\xa0\\x28\\xb8\\x50\\x55\\x15\\x02\\xea\\x3e\\x9a\\xd7\\x84\\xa8\\x89\\x89\\x8b\\x70\\x5f\\x7d\\x43\\x62\\x22\\x48\\xe3\\xd2\\xf6\\x9b\\x8c\\x4a\\xf1\\x28\\xcb\\xc7\\x60\\x37\\x3f\\xd9\\x92\\x18\\xb6\\x43\\x3f\\x1c\\xb1\\x2b\\xf7\\x32\\xb7\\x1f\\x95\\xbe\\x07\\xf1\\xf4\\x32\\x30\\xf6\\x42\\xbc\\x11\\x92\\xcf\\x1a\\xec\\x67\\x9e\\x43\\xd6\\x05\\x6e\\x21\\xee\\xb7\\x82\\x88\\xf5\\xa5\\x20\\x50\\x70\\xe9\\x85\\xcd\\x69\\x8f\\xe6\\x7c\\x34\\x73\\x56\\x53\\x0b\\x00\\x73\\xb0\\x1e\\x95\\x98\\x53\\xb8\\x1e\\x90\\x78\\x6d\\xc0\\x1e\\xa4\\x30\\x0c\\xd9\\xa3\\x02\\xb0\\xa8\\xc5\\x3f\\xd2\\x3f\\x4f\\x96\\x97\\x77\\x6d\\x23\\xcf\\xe3\\x1d\\xd3\\x21\\x3c\\x59\\x90\\x48\\xfb\\xa8\\x59\\x8a\\x2d\\xba\\x7f\\x9c\\x3f\\x9a\\xf1\\x82\\xe8\\x44\\x74\\x39\\x6d\\xa6\\xb7\\x1e\\x10\\xae\\x16\\x50\\xea\\xab\\x1f\\x9f\\x61\\x9b\\xb7\\x22\\x5e\\x99\\x06\\x36\\x05\\x70\\xee\\x4f\\x75\\x67\\xbc\\x3a\\xfd\\x04\\xc2\\xc5\\xf3\\xa7\\x25\\xd0\\x60\\x5b\\xc6\\x9e\\x41\\xbe\\xb0\\x22\\xf8\\x7c\\xec\\x4f\\x2a\\x33\\xc7\\x33\\x33\\xc3\\x00\\xe1\\x53\\x4c\\x4c\\xfb\\x9b\\x87\\x32\\x80\\x28\\x02\\x01\\xb7\\x0b\\xb2\\x2f\\x96\\xa7\\xb3\\x41\\x64\\x25\\x8d\\x36\\xec\\x15\\x2f\\xdc\\x00\\xc2\\x2e\\x8b\\x1b\\x8b\\x10\\xa2\\xd9\\x40\\xd4\\xa0\\x4e\\x4d\\x27\\xb7\\x34\\x29\\x31\\x6c\\x91\\x32\\x0e\\x9b\\xd8\\x0a\\xae\\x88\\x6c\\x6d\\x9b\\xfc\\xd7\\x9a\\x30\\x3e\\x23\\xab\\x36\\xda\\xff\\xcf\\xd8\\xd6\\x24\\x74\\x3d\\x4c\\xf6\\xfb\\xb3\\x79\\xbc\\xab\\x55\\xe9\\xd9\\xfe\\xf2\\x9e\\x5c\\xc5\\xce\\xc1\\x90\\x74\\x6e\\x9b\\xde\\x26\\x7a\\xfa\\xac\\xc4\\x50\\x92\\x96\\x8b\\x39\\x06\\x3a\\x9b\\x56\\xe9\\x68\\x89\\xef\\xdb\\xc9\\x9a\\x78\\xab\\x9f\\xa3\\x20\\xe7\\x48\\xfc\\xc5\\x46\\xeb\\x8c\\x3c\\x6f\\x45\\x40\\xdb\\xf8\\x1b\\x5f\\x78\\xac\\x31\\xba\\x0c\\x63\\x21\\x43\\x14\\xb5\\xba\\x60\\x87\\x09\\x89\\xf1\\xaa\\x06\\xb4\\x45\\x3d\\x0c\\xe5\\x09\\x6f\\x84\\x0c\\x38\\x87\\xe4\\x88\\x88\\x73\\x53\\xce\\xf9\\xb2\\x63\\xcf\\x08\\xb2\\x12\\x5f\\x4a\\x24\\x87\\x95\\xf8\\x52\\xe2\\xf1\\xf7\\x16\\xc3\\xe6\\x93\\x3c\\xd8\\x5f\\xe7\\xa3\\xc2\\x23\\x7b\\xb1\\x0f\\x59\\xb6\\x8b\\x5e\\xe9\\xa3\\xc2\\xb1\\xc9\\xc8\\x0d\\x1c\\xe3\\xd5\\x3e\\x2a\\x2b\\x9a\\x64\\xf3\\x51\\x59\\x2e\\xea\\xf2\\x51\\x71\\x95\\x7e\\x0f\\x1f\\x15\\x5e\\x1f\\x16\\xb9\\x81\\xd5\\x8f\\xfb\\xa8\\x40\\x2e\\x53\\x22\\x95\\x5b\\x32\\x70\\xee\\x74\\xbf\\x9f\\x86\\x32\\xdf\\x3c\\xeb\\xfe\\xc1\\x78\\x7f\\x30\\x1e\\x88\\xc1\\x69\\xcd\\xb2\\x30\\xdf\\x42\\xc0\\x7a\\x57\\x65\\x6b\\x31\\xae\\x3b\\xd2\\x04\\x2b\\x39\\x7d\\xc4\\xf8\\x9a\\xe9\\xf5\\x4f\\xb8\\x98\\x61\\x43\\xe9\\xb2\\xf6\\xe9\\x33\\x58\\xa8\\x3d\\xeb\\xef\\xb7\\xb1\\xd5\\x9e\\xe1\\x03\\xa0\\xbc\\x14\\xab\\x81\\x5a\\x67\\x73\\xba\\xfa\\x87\\x8f\\xb8\\xc1\\x07\\xac\\xf5\\x15\\xa9\\xb2\\x22\\xd6\\x8c\\x83\\xc8\\x0a\\xd9\\x5c\\xdc\\xd2\\xea\\xd0\\x17\\x6b\\xad\\xd5\\xc2\\x7e\\x4c\\x4f\\x5f\\xcb\\x95\\x80\\x12\\xb6\\x51\\x31\\x62\\xab\\x3c\\x22\\xe6\\xce\\x85\\x1d\\x88\\x80\\xd2\\xe9\\xa6\\x9c\\x1f\\xaa\\x55\\x4d\\x2f\\x93\\x1b\\xfb\\x25\\xdb\\x26\\x57\\xec\\x54\\xed\\xdb\\x5c\\x15\\xc0\\x95\\x87\\x34\\x5a\\x2c\\x18\\x96\\xb8\\xc3\\xa0\\xbf\\xa3\\xcf\\x2a\\x8d\\xc1\\xd9\\xb0\\xfe\\x8c\\xca\\xd6\\xbe\\xdc\\x86\\x27\\xd5\\x8e\\xa3\\x26\\x78\\x94\\x8d\\xe5\\x61\\x23\\x55\\x6a\\x3b\\x6b\\xde\\xcf\\x89\\xe5\\xbc\\x8f\\xb7\\x6a\\x50\\xe1\\x57\\x9d\\x10\\x5d\\x77\\x16\\x2e\\xde\\x7f\\xd3\\x22\\x19\\x6a\\xaf\\x27\\x13\\xe7\\x50\\x96\\xf0\\x78\\x09\\x31\\x4c\\x23\\x65\\x15\\xdf\\x1e\\xde\\x73\\x61\\xeb\\xb3\\xc3\\xe9\\x23\\x2f\\x8f\\x02\\xb4\\x23\\x0b\\xd6\\xd8\\xdf\\xe2\\xad\\x67\\x8b\\xd4\\xb3\\x57\\xf0\\x34\\x63\\x9d\\x12\\x5e\\x58\\xa6\\x0c\\x20\\x3e\\xe8\\xf8\\xed\\x54\\x97\\xb4\\xcc\\x93\\x62\\xb9\\x0e\\x6e\\x35\\x3b\\xdd\\x1b\\x45\\x42\\xdd\\xef\\xfb\\xa1\\x9a\\x5f\\x2f\\x02\\x81\\x09\\xd5\\x7c\\x6e\\x6f\\xd1\\xa1\\xd0\\x50\\xc7\\x62\\xe3\\xf3\\xc6\\x0d\\x9c\\x1c\\xc4\\xa0\\xea\\x26\\x28\\x90\\xa7\\x24\\x09\\xe3\\x0a\\xbe\\xa3\\x9a\\x5e\\xbd\\x02\\x58\\x44\\x11\\x31\\xc1\\x9d\\xfa\\x46\\x3e\\xf8\\x31\\x83\\x70\\xe7\\x24\\x9b\\xfd\\x55\\xb3\\x21\\x0a\\x8a\\x70\\xab\\x4e\\x7f\\x39\\xd7\\x2d\\xa2\\xd3\\x91\\x01\\x80\\x2e\\x81\\x4a\\x71\\x51\\xbd\\xbe\\x09\\x55\\x36\\xb3\\xe8\\x9c\\x01\\x8b\\x7f\\xf1\\x9b\\xb1\\x3e\\xc2\\xa3\\x6f\\xb3\\x18\\x62\\x64\\x9f\\xe2\\x81\\x89\\xd0\\xcb\\x1e\\x33\\xbd\\xe8\\x56\\x75\\x0b\\x54\\xbf\\x0c\\xb3\\x08\\xf0\\x8c\\xf6\\xe4\\x4b\\x73\\xbc\\xdb\\xe0\\x39\\x25\\x12\\x41\\x79\\x81\\xb8\\x5f\\xa6\\xe7\\xe1\\xf4\\xf4\\xae\\x7e\\x1c\\xcd\\xd4\\xd3\\x50\\x7f\\x35\\x67\\x2e\\x1c\\xe7\\xd3\\x6c\\x6e\\xbc\\x02\\xb9\\xcd\\x47\\x48\\x19\\x75\\x0b\\xc2\\xa7\\x79\\x19\\x80\\x40\\x30\\xe4\\x8a\\x02\\xb5\\x20\\x61\\x87\\x93\\x78\\xd3\\x84\\x87\\x8a\\xbd\\x57\\xbc\\xdb\\xdc\\x09\\xc5\\x5d\\x93\\x80\\x54\\x10\\x1a\\x90\\x74\\xa2\\x1c\\xfa\\xd6\\x42\\x8f\\x58\\x5a\\x0c\\x99\\x3c\\x72\\xda\\xb0\\x10\\x46\\xd3\\xb9\\x83\\x76\\xa8\\x1b\\x42\\x27\\xe2\\x94\\x68\\xce\\x2d\\x81\\xdd\\x89\\xd8\\xee\\x79\\x38\\x2f\\xba\\xa7\\x87\\xac\\x85\\xa2\\x8c\\x0c\\x0b\\x10\\xae\\x28\\x43\\xfc\\xd1\\x0c\\x9e\\x8e\\x24\\xcd\\x67\\xa6\\x09\\x7e\\x66\\x9a\\x30\\x4f\\x52\\x9d\\x8a\\x2a\\xa5\\xd9\\xd2\\x49\\x1c\\x38\\x0b\\x9d\\xa8\\x83\\xcb\\x6d\\x8a\\x91\\xbe\\x7e\\xbb\\x3d\\xb5\\xb3\\xc0\\xdb\\x59\\xf0\\x6d\\x99\\xc2\\x18\\x55\\xb3\\x2f\\xc7\\x7e\\x38\\xdb\\x8c\\xc4\\xc9\\x14\\x74\\x9b\\x7d\\x94\\xb3\\x66\\x72\\xab\\x1c\\x5c\\x69\\xde\\xbd\\x18\\x7a\\xf5\\x21\\x0c\\x2e\\xc0\\x8a\\x61\\x59\\xf1\\x93\\x99\\x02\\x99\\x6a\\xab\\xe8\\x44\\xba\\xdc\\xd1\\xea\\xbb\\xf1\\x66\\x5b\\x14\\x05\\x7a\\xa4\\xcc\\x8c\\xc7\\x7a\\x2a\\xee\\x30\\xcf\\x5d\\x61\\xb4\\xe5\\xa5\\x85\\x3c\\x9e\\xfd\\xf1\\x47\\xb1\\xee\\x9a\\x47\\x4d\\x46\\x7f\\x37\\x08\\x2a\\x64\\xd8\\xf0\\x04\\x00\\x07\\x75\\x2a\\x77\\x0b\\xa3\\xa2\\x92\\xa4\\x9b\\x82\\xb3\\xe4\\x13\\x56\\x39\\x0b\\x19\\x6e\\x24\\x9e\\x34\\x1e\\xc2\\x02\\xa8\\x23\\x98\\x10\\xb7\\x71\\x04\\x35\\x72\\xb0\\xf4\\x50\\xb7\\xed\\xd3\\xb1\\xe9\\x40\\x1d\\x53\\x67\\x8b\\xd5\\x11\\x9b\\xd5\\x23\\x44\\x30\\xf5\\x47\\xf4\\xf7\\x9d\\x9e\\x7e\\x50\\x8f\\xf8\\x82\\x95\\xef\\x36\\xae\\x29\\x73\\x25\\xf8\\x33\\xa3\\xa2\\xc7\\x64\\xe6\\xef\\x97\\x7e\\xac\\xb5\\x57\\x16\\x94\\x37\\x12\\x2d\\x6f\\xd2\\x72\\x0e\\xa1\\x58\\xf8\\x73\\x5c\\xf3\\x93\\x3d\\xc8\\xdb\\x6f\\x2f\\xba\\x8a\\x21\\xb0\\x9f\\x8f\\x65\\xdb\\x82\\x47\\x0f\\x70\\xe4\\x16\\xe5\\x6b\\xea\\x5e\\x71\\xd0\\xc7\\x8f\\xd2\\xd5\\x6d\\xdb\\x3c\\xa3\\x84\\xfa\\x8c\\xb2\\xeb\\xdb\\xca\\x6a\\xa4\\x17\\x06\\x08\\xd7\\x63\\xa6\\xb3\\x0a\\x0d\\x71\\x15\\x1a\\x72\\x55\\x4f\\xdb\\x34\\x29\\x6c\\xf6\\x05\\x68\\x69\\xb5\\x26\\xc3\\x22\\x0f\\x97\\xbe\\x73\\x8d\\x31\\x5e\\x63\\xcc\\x94\\xf6\\xee\\x32\\x8e\\x7d\\x27\\x5f\\x48\\x90\\x7e\\xfd\\x3a\\x32\\x45\\x55\\x98\\xbb\\x57\\xe5\\x75\\xd3\\xf2\\x74\\xaa\\xcb\\xa1\\xec\\xf6\\xf3\\x95\\x0c\\xe5\\x94\\x47\\x7f\\x77\\x47\\xdb\\x41\\xca\\x97\\x75\\xee\\x9b\\xaa\\x36\\xbc\\x3b\\xcf\\xf7\\xfd\\x83\\xb9\\x56\\x6b\\x3a\\x71\\x63\\xe3\\x49\\xb9\\xc4\\x21\\x56\\xd6\\x74\\xed\\x7f\\x38\\x34\\x8f\\xba\\xb3\\xd1\\xf3\\x07\\xdd\\xcb\\xc9\\xe1\\x94\\x42\\x19\\x5d\\xba\\x7f\\x58\\x9d\\x50\\x20\\x10\\xea\\x74\\x02\\x40\\x96\\xf2\\x9f\\x0d\\xaf\\x2a\\xbe\\xd8\\xed\\xdb\\xb6\\x3c\\xa1\\x0f\\x59\\x4c\\x86\\x06\\x7d\\x7b\\x81\\x74\\x8d\\xc3\\x7a\\xc4\\x8f\\x12\\x4b\\xec\\x61\\x04\\xa2\\x77\\xe7\\x3b\\x33\\x9f\\xa7\\x96\\xd3\\x2e\\x89\\xa6\\x0a\\xb3\\x20\\x7b\\xa5\\xe0\\x6b\\x53\\x3f\\x9c\\xfa\\x61\\x14\\x81\\xc7\\xab\\xfa\\x6b\\xb3\\xaf\\xb9\\x01\\xe4\\xf6\\xd9\\xe7\\x3d\\x81\\x0c\\x81\\x8e\\xb6\\x60\\x85\\xed\\xe9\\xbe\\xef\\x20\\x03\\x79\\xff\\xad\\x39\\xd2\\x0a\\xca\\x6e\\x54\\x01\\x99\\x7b\\xc4\\xe8\\x82\\xe4\\xc8\\xb7\\x55\\x7d\\xfe\\x65\\xec\\x4f\\x6b\\x70\\xea\\xa0\\xe2\\x3a\\x18\\x84\\xfe\\x0b\\xbf\\x9f\\xf5\\xc3\\x7c\\xf4\\x9d\\xa5\\xf9\\xe9\\xf1\\x93\\x57\\x76\\x95\\xf7\\xc3\\x7c\\x3f\\xa0\\xc8\\x8a\\xd3\\xe3\\xa7\\x27\\x5b\\x33\\x30\\xdc\\x9e\\xb5\\x25\\x5a\\xa3\\x3d\\x15\\x56\\xa3\\x04\\x8e\\x58\\xb4\\x62\\x89\\x6a\\xcf\\x53\\xef\\xa6\\x7e\\x64\\x69\\xf6\\x6e\\xfd\\x50\\x41\\xe1\\xc8\\x3b\\x7b\\xb1\\xc0\\x24\\xcf\\x33\\xce\\xa1\\xe9\\x5c\\x3c\\x22\\x7a\\xcb\\xc1\\x2c\\xa5\\xdc\\x2d\\x71\\x57\\x60\\x27\\x27\\x77\\xe0\\x5a\\x65\\xa1\\xf2\\xa0\\xe1\\x7b\\xec\\x4f\\xa8\\x29\\x7c\\x4a\\x3c\\x8f\\xe5\\xd8\\xec\\xb7\\xca\\x2d\\x07\\xe5\\x31\\x31\\x68\\x5c\\x94\\x15\\xd0\\x5d\\x45\\xd9\\x74\\xf5\\xc0\\x5f\\xf8\\x52\\xe6\\x92\\x67\\xcf\\xaf\\xda\\xed\\x7d\\x3f\\x34\\xbf\\x52\\x98\\xd6\\xab\\x80\\xcd\\x90\\x1f\\x8c\\xb3\\x8f\\xbc\\x7b\\x4c\\x35\\xe8\\x17\\x61\\x4c\\x24\\x95\\xee\\x08\\xa4\\xb4\\xe1\\x49\\xc1\\xf4\\xec\\xcd\\xef\\x8e\\x3d\\xa9\\x1b\\x6f\\x96\\xbe\\x71\\xbc\\x44\\xe6\\xa1\\x2f\\x91\\x89\\x3b\\x3c\\x10\\xf2\\xaf\\xfb\\xb6\\x3c\\x9f\\x3f\\xff\\xf4\\xf1\\x7c\\x2a\\xbb\\x8f\\x3f\\x6f\\xfc\\x4b\\x57\\x57\\x0d\\x13\\x95\\x6d\\xd3\\x9d\\x2e\\xa3\\x01\\x30\\xbf\\x85\\xa6\\x65\\xa9\\xd5\\x60\\x17\\x0f\\x0c\\x8b\\x29\\x79\\xeb\\x70\\xf5\\xcf\\x9e\\x4f\\x9b\\x12\\x84\\x6a\\x2b\\x45\\x92\\x4a\\xc1\\xb7\\xaf\\x16\\x21\\x4a\\x7f\\x38\\x9c\\xeb\\xf1\\xe3\\xcf\\xd8\\x6d\\xd5\\x79\\xa0\\x18\\x8d\\xf9\\x42\\x74\\x23\\xbe\\x3c\\xc2\\x6f\\xe2\\x2b\\x3a\\x18\\xe7\\xba\\xad\\xf7\\x46\\x2a\\x65\\xc1\\x72\\xa8\\xcb\\xc5\\xb1\\x7d\\xb2\\x0f\\xd3\\xbc\\x4b\\x89\\x88\\xbe\\x21\\x78\\x13\\x8a\\xf1\\xde\\x9d\\x86\\xfa\\x54\\x77\\x95\\xc7\\xbe\\xc9\\x2e\\xd3\\xc5\\x98\\x9e\\x06\\x00\\x8d\\x8e\\x99\\xe5\\x74\\xde\\x74\\x38\\xb7\\x49\\x61\\x13\\xe6\\x85\\xf3\\x76\\xe8\\x1f\\x74\\xde\\xfe\\x51\\xc7\\x67\\x0c\\xa4\\xd5\\x3f\\x9c\\x5b\\x57\\x27\\x2d\\xa7\\x68\\x37\\xa5\\xfa\\xf9\\xed\\x2f\\xd5\\xe9\\x58\\xdc\\xd0\\x12\\x8a\\xca\\x74\\xd3\\xe5\\x2a\\x0c\\x51\\xb4\\x71\\x4e\\xd8\\xbc\\xd5\\x95\\x5f\\xb7\\xd3\\xea\\x0b\\x2c\\xa9\\x0e\\xfd\\x70\\xe4\\x4b\\xe2\\xb6\\x1c\\xeb\\xa8\\x92\\x5b\\xa4\\x4f\\xb4\\xa6\\x53\\x79\\x57\\x4f\\x3e\\xb9\\x81\\xc7\\x37\\x32\\x76\\x8b\\xa6\\xd0\\xa4\\x9c\\xee\\xe3\\xb7\\x53\\xfd\\xd3\\xc7\\xfd\\x7d\\xbd\\xff\\x65\\xd7\\x3f\\x7e\\xfc\\x79\\xa3\\x26\\xd3\\x8d\\x4c\\xff\\xf1\\xe7\\x27\\xdc\\xc9\\xed\\xd9\\xf3\\x69\\xb3\\x54\\x65\\x29\\x07\\x65\\xdb\\x96\\xbb\\xba\\x55\\x35\\x8c\\x42\\x3c\\xf5\\xd9\\x2d\\x82\\x29\\x60\\x1b\\x56\\x44\\x71\\xda\\x1b\\xd0\\x9c\\xc7\\x27\\x58\\x13\\x06\\xce\\x12\\xca\\x3d\\xe5\\x81\\x33\\x9c\\xe3\\x02\\x73\\x8e\\x0b\\xe4\\xc8\\xf2\\x5b\\xef\\xd3\\xbe\\x62\\x03\\x52\\xd4\\x3d\\x08\\xa2\\x5c\\xb5\\x73\\x5d\\x15\\xa5\\xbc\\x06\\x0f\\x26\\x3e\\x62\\xcc\\x01\\x82\\x77\\xa7\\xab\\x7c\\x73\\x73\\xb5\\x66\\x22\\x1e\\xdd\\x93\\xf9\\x62\\x9e\\x60\\xe5\\xb9\\x9d\\xe7\\xb0\\x01\\xf1\\x79\\x5a\\xe5\\xdd\\x95\\x2b\\xca\\xa1\\x7f\\x40\\x66\\xf6\\xd9\\xd3\\x78\\xe8\\x1f\\x26\\x07\\xe3\\xf9\\x66\\xcb\\x5a\\xbf\\x62\\x4f\\x29\\xa3\\xba\\x13\\x5b\\xa6\\xba\\xc9\\x0d\\xd4\\x70\\xe7\\x53\\xdf\\xf5\\x54\\xa6\\x77\\x64\\x9d\\x82\\xe5\\x4e\\x8b\\x1d\\x7b\\xa6\\x74\\x01\\xd0\\x57\\x0e\\x19\\xb3\\x62\\x3c\\x6b\\xb3\\x1e\\x4c\\x0d\\x44\\x6a\\x9a\\x86\\x4a\\x2a\\x91\\xa9\\x52\\xdf\\xd0\\xd4\\x42\\x24\\x26\\x51\\x3e\\x27\\xe6\\x22\\x31\\x66\\xb7\\x80\\x45\\x62\\x26\\x13\\x03\\xa5\\xaa\\x54\\x24\\x46\\x89\\x52\\x53\\x22\\x12\\xc3\\x42\\xa9\\x28\\x96\\x89\\xa1\\x52\\x51\\x24\\x27\\xed\\x54\\xa9\\x68\\x9e\\xc9\\xd5\\x3e\\xc9\\xda\\x45\\x3d\\x7c\\xf2\\x0d\\x42\\xc0\\x2b\\x59\\x1a\\x83\\xdc\\x00\\xe6\\x12\\x58\\x96\\x80\\xdc\\x34\\x26\\x6a\\x6e\\x01\\x1d\\xc9\\xb3\\x5c\\xcd\\xcc\\x61\\x66\\x90\\xaa\\x99\\x19\\xc8\\x8c\\x13\\xd0\\xa4\\x14\\xc6\\x43\\x28\\x40\\x8b\\x12\\x98\\x19\\x81\\x06\\xc5\\x20\\x33\\x4c\\x41\\x83\\x22\\x98\\x49\\x40\\x83\\x20\\x8d\\x82\\x18\\xd2\\x08\\x64\\xe6\\xa2\\x3d\\xe8\\xb2\\x14\\xc8\\x20\\xcf\\x56\\x25\\x51\\xa4\\xbc\\x40\\x1e\\x41\\x49\\x20\\x95\\x8e\\xb5\\xe8\\x3f\\x6a\\x65\\x63\\x3e\\xfa\\xcb\\x69\\xee\\x67\\x69\\x18\\x47\\xa4\\x88\\x8a\\x30\\x4c\\x93\\xa0\\x88\\xbf\\x97\\x9e\\xbe\\x13\\x00\\x29\\xc2\\xa8\\x88\\xe3\\x22\\x4f\\xe3\\x3c\\xc8\\xbe\\x77\\xf6\\xcf\\xbd\\xa8\\x54\\x16\\xbf\\x2f\\x5e\\xd4\\x60\\x2d\\x86\\xa8\\xcd\\x75\\xb5\\xf0\\x70\\x2e\\x0a\\xbf\\x88\\xd3\\x9c\\xe4\\x49\\x40\\xd2\\x28\\x0f\\x0b\\xb4\\xa4\\x14\\xd9\\x22\\xf0\\xe3\\x28\\x8d\\xd3\\x98\\xe4\\x79\\x54\\x64\\x59\\x3e\\xe3\\x09\\xfc\\x28\\x8f\\xc2\\x2c\\x4c\\x8a\\x82\\x44\\x29\\xc9\\x51\\x3c\\x52\\x6f\\xe5\\xa1\\x9f\\x67\\x61\\x11\\xe6\\x41\\x96\\x66\\x45\\x92\\xcc\\x78\\x68\\x4e\\x50\\x64\\x51\\x9a\\xe6\\x59\\x1c\\x45\\xb9\\x4e\\x5b\\xa0\\xe9\\xb2\\xd8\\x57\\x3a\\x1d\\x45\\xd9\\x84\\x26\\x8b\\xfd\\x30\\x49\\x43\\x42\\xb2\\x2c\\xc9\\xa3\\x20\\x4d\\x31\\x34\\x52\\x37\\xa6\\x89\\x9f\\xc5\\x49\\x9e\\xa4\\x51\\x12\\x25\\x45\\x10\\xcc\\x68\\xd2\\xc4\\x4f\\x8b\\x30\\x4d\\xe3\\x3c\\x8d\\xc3\\xb0\\x88\\x51\\x34\\x52\\x9b\\x26\\x99\\x1f\\xe4\\x61\\x14\\x92\\x38\\x0e\\x8a\\x3c\\x2f\\x92\\x09\\x0d\\xcd\\x09\\x8b\\x20\\xcc\\x8b\\x24\\x4c\\x29\\x8d\\x30\\x34\\x52\\xff\\xc6\\xb9\\x9f\\x06\\x79\\x96\\xc7\\x49\\x44\\xa2\\x3c\\xcd\\xe2\\x09\\x4d\\x9c\\xfb\\x49\\x9a\\x24\\x45\\x44\\xe2\\x80\\x84\\x09\\x41\\x47\\x59\\x6a\\xec\\x98\\x3d\\xc7\\x1c\\xc6\\xb9\\x44\\x36\\xa3\\x21\\x3e\\x21\\x21\\x49\\xb2\\x20\\x2c\\xe2\\x30\\xcc\\x23\\x0c\\x8d\\xd4\\xf1\\x51\\xe0\\xc7\\x45\\x90\\x05\\x61\\x46\\x32\\xd6\\xbb\\x19\\x0f\\xcd\\x8a\\xf2\\x24\\x0c\\xc2\\x20\\xcb\\x43\\x92\\x86\\x18\\x9e\\x68\\x9a\\x2b\\x7c\\x65\\xb8\\x49\\x10\\x4c\\x68\\x42\\xca\\x0b\\x71\\x91\\x27\\x11\\x49\\xc3\\x20\\x8f\\x03\\x0c\\xcd\\xc4\\xba\\xb1\\xaf\\xf2\\x5f\\x31\\x61\\xa1\\x19\\x41\\x10\\xc7\\x45\\x54\\xc4\\x69\\x90\\x06\\x05\\xce\\xc8\\x72\\xa8\\x7c\\xda\\x04\\x12\\x17\\x59\\x18\\x65\\x49\\x5a\\xcc\\xad\\xa1\\xac\\x90\\x15\\x41\\x14\\xe7\\x11\\x09\\xa2\\x22\\x37\\xf8\\x18\\x9d\\xad\\x02\\x92\\xf8\\x2a\\xad\\x89\\xae\\x32\\x28\\x40\\x1c\\xe4\\x71\\x96\\xe7\\x45\\x91\\x85\\x85\\x49\\x2c\\x89\\xd7\\xaa\\x2d\\x02\\xa2\\x89\\x79\\x68\\xd4\\x11\\xfa\\x69\\x92\\x92\\x38\\x2b\\x52\\x92\\x90\\xc8\\x20\\x24\\x3a\\x95\\x16\\xa9\\x5f\\xa4\\x41\\x14\\x26\\x45\\x9a\\xe6\\x09\\xc9\\x75\\xac\\x45\\xea\\xe7\\x49\\x5c\\xc4\\x61\\x91\\xe7\\x41\\x98\\x19\\x3c\\x27\\x91\\x5a\\xdb\\x5d\\xc4\\x3e\\x17\\x07\\x12\\xb2\\xe6\\xeb\\xf8\\x63\\x9f\\x14\\x61\\x12\\x84\\x24\\xce\\x0b\\x42\\x72\\x63\\xdc\\xd0\\x29\\x3e\\xcf\\x7d\\x36\\xfe\\x44\\xf0\\xb8\\xde\\xea\\x3c\\xf7\\xc3\\x22\\x88\\x49\\x46\\xb2\\x34\\x09\\x13\\x1b\\xb5\\x89\\xb5\\xd5\\x79\\xe2\\x4b\\x75\\x90\\x92\\x30\\x0c\\x74\\xfc\\x74\\xbc\\xf3\\x22\\x4b\\x83\\x28\\x0b\\x8b\\x3c\\xb5\\xb0\\x09\\x5c\\x7a\\x64\\x85\\x9f\\x47\\x71\\x98\\xc4\\x01\\x57\\xa2\\x1a\\xce\\xac\\xf0\\xb3\\x30\\xcb\\xb3\\x20\\x48\\xe3\\x22\\x0c\\x4d\\x0e\\x16\\x38\\xad\\x6d\\xce\\x32\\x5f\\x08\\x29\\x57\\x41\\x85\\x5e\\x01\\x1d\\xea\\x24\\x8e\\x49\\x18\\x26\\x69\\x91\\xc6\\x86\\x6e\\xc5\\x96\\x44\\x59\\xe0\\x4f\\xb2\\x4f\\xe2\\x58\\x27\\x74\\x16\\xf8\\x41\\x1a\\x47\\x51\\x12\\x26\\x51\\x14\\x92\\xcc\\xd2\\xe8\\xdc\\xda\\xe8\\x34\\xf7\\x29\\xd7\\x4d\\xd3\\x41\\xae\\x55\\x90\\xe6\\x7e\\x4c\\x82\\x82\\xc4\\x51\\x10\\x93\\x22\\x0e\\x2d\\x8d\\x86\\x4b\\xb5\\x94\\x4e\\xd1\\x0a\\x29\\x74\\x4a\\xa4\\xa1\\x9f\\x12\\x92\\x15\\x45\\x14\\x07\\x59\\x90\\x27\\xb9\\x85\\xad\\x33\\x6b\\xb3\\x13\\x3a\\x6f\\xc6\\x59\\x12\\x44\\x79\\x10\\x06\\x09\\xa5\\xe5\\x67\\x2d\\x3f\\x8f\\xf2\\x28\\xcd\\x63\\x12\\xc6\\x45\\x48\\x52\\x43\\xe7\\x63\\xab\\xc8\\x24\\xf6\\x03\\x75\\x82\\xd5\\x89\\x91\\xc4\\x3e\\x89\\xb2\\x30\\x8d\\xe2\\x88\\x04\\x41\\x1a\\x65\\xc6\\x84\\x24\\xb0\\xda\\xdb\\x4d\\xe7\\x69\\xd6\\xe2\\x94\\x89\\x7d\\xaa\\xd7\\x40\\x87\\x3b\\xce\\xa3\\x30\\x2e\\x48\\x9e\\x17\\xb9\\xa5\\x82\\x44\\x5b\\x19\\xfb\\x89\\xaa\\x50\\x75\\x62\\xc4\\x89\\x1f\\x67\\x51\\x16\\x66\\x49\\x90\\x27\\x41\\x6c\\x2c\\x98\\x24\\x52\\x6b\\xab\\x63\\xba\\x2a\\x98\\xe7\\x0e\\x92\\xe8\\x15\\x84\\x7e\\x16\\x04\\x61\\x91\\x26\\x59\\x11\\xe6\\x99\\x8d\\xd8\\x70\\xe1\\x1d\\x65\\x3e\\x09\\xd2\\x64\\x9a\\xfa\\x75\\x52\\x44\\xa9\\x5f\\x04\\x24\\x28\\x82\\x94\\xa4\\x45\\x10\\x14\\x16\\x52\\xc4\\xd6\\x56\\x47\\x74\\x11\\x12\\xcf\\x03\\xaa\\x0b\\x7c\\x44\\x47\\x3b\\xcb\\x52\\x92\\xa6\\x59\\x9a\\x27\\xb1\\x85\\x09\\xb5\\x1d\\x41\\xee\\x4f\\x2b\\x03\\x12\\x45\\x81\\x4e\\x8a\\x30\\xf7\\xa3\\x38\\x4d\\x93\\x24\\x2d\\x92\\x88\\x14\\x99\\xb9\\x66\\x11\\x58\\xad\\xcd\\x0e\\xe9\\xa2\\x87\\xa4\\x24\\xcb\\xa2\\x38\\x27\\x69\\xaa\\x6b\\xec\\x90\\x8e\\x76\\x1c\\x86\\x71\\x96\\xa4\\x24\\x8f\\x42\\x9b\\x48\\x6a\\x53\\x64\\xe1\\x2b\\x93\\x00\\x31\\x16\\xd5\\x41\\xe1\\x67\\x79\\x14\\x04\\x45\\x96\\x47\\x19\\xc9\\x92\\xc8\\x86\\xd5\\x3e\\x41\\xd2\\x55\\x96\\x43\\x55\\x05\\x99\\x4f\\x42\\x92\\xe6\\x79\\x1e\\xc7\\x71\\x1e\\x10\\xdb\\xa4\\x00\\x91\\x06\\xbe\\x32\\x37\\xe6\\x99\\x4e\\x8c\\x20\\xf0\\xc3\\xa0\\x48\\xf2\\x28\\xcf\\xc2\\x80\\x24\\x91\\xb9\\xb6\\x13\\x58\\xed\\x33\\x8d\\x9f\\x38\\x67\\x1a\\x3f\\x4e\\xb2\\x20\\x09\\x8b\\x28\\xcc\\xb3\\x3c\\x27\\x6c\\x38\\xb9\\xb9\\x55\\xda\\x8e\\x11\\x63\\x31\\x7a\\x6a\\xf1\\xb2\\xbd\\x85\\x62\\x30\\x94\\x16\\x7b\\x59\\xf1\\x64\\xc1\\xd7\\xeb\\xd7\\x2c\\x1a\\x81\\x81\\x23\\xd0\\x70\\x04\\x36\\x1c\\x93\\xfd\\x23\\xce\\x75\\x1c\\x44\\xc3\\x41\\x6c\\x38\\xe4\\xae\\x23\\xc9\\x53\\x0d\\x47\\x01\\x51\\x14\\x16\\x0c\\x93\\x65\\x45\\x98\\x66\\xe6\\x9c\\x1c\\x22\\xc8\\x2d\\x08\\x26\\x2b\\x8c\\xb0\\xe2\\xcc\\x39\\x19\\x44\\x90\\x59\\x10\\x4c\\x16\\x1b\\xa2\\x93\\x32\\x85\\x08\\x52\\x0b\\x82\\xc9\\xba\\x13\\xe9\\x74\\x4c\\x20\\x82\\xc4\\x82\\x60\\xb2\\x04\\x65\\x3a\\x11\\x63\\x88\\x20\\xb6\\x20\\x98\\xac\\x46\\x81\\x4e\\xc4\\x08\\x22\\x88\\x2c\\x08\\x26\\x0b\\x53\\xa2\\x13\\x51\\xe3\\x48\\x1b\\x43\\x4a\\x7e\\x2c\\x0c\\x76\\xd4\\x38\\xc9\\xc6\\x48\\xb2\\x07\\x39\\x34\\xe5\\xcf\\x77\\xcb\\x59\\x28\\x4a\\xcc\\xf2\\x19\\xfd\\x13\\x5b\\x3e\\xa3\\xdf\\xde\\xf2\\x19\\x04\\x19\\x41\\x4c\\x9f\\x5a\\x72\\x30\\xd9\\x2b\\x40\\xb2\\x14\\xe7\\x22\\x43\\x8c\\x9f\\xb9\\x9a\\x28\\xc5\\x2e\\x53\\x13\\xa5\\x28\\xa5\\x6a\\x62\\x3a\\xed\\xe1\\x89\\x69\\xfc\\x8c\\x33\\xc4\\xf8\\x19\\xa9\\x89\\xd3\\x2e\\x57\\x4d\\x9c\\x7a\\x05\\x5a\\x2f\\x9b\\x44\\x1c\\xc6\\xcf\\x20\\x84\\x06\\xc3\\x40\\x9f\\x93\\xb4\\x6c\\xa2\\x6d\\x14\\x23\\x87\\xfd\\xb3\\x80\\x99\\x70\\xb1\\x9f\\xc3\\x4c\\xb8\\xa8\\xce\\x60\\x26\\x5c\\xb9\\xa6\\x30\\x13\\xae\\x0f\\x13\\x97\\xfd\\x33\\x86\\x99\\x91\\xcb\\x72\\x0a\\xc9\\xa4\\x53\\x09\\x52\\x41\\x66\\xfe\\x61\\x00\\xbd\\xde\\x00\\x9a\\xa4\\xcc\\xc2\\x24\\xff\\x1a\\xf6\\xcf\\x24\\x20\\x45\\x10\\x90\\x2c\\xce\\x62\\x92\\xa7\\x81\\xbe\\xc4\\xfc\\x07\\x18\\x40\\x8d\\x16\\xbf\\x9b\\xfd\\x33\\x09\\x8b\\x22\\x90\\x7f\\x81\\xfd\\xb3\\x28\\xb2\\xa2\\x28\\xd2\\x28\\x0d\\x8b\\x0c\\x35\\xf1\\xa9\\xf6\\xcf\\x82\\x24\\x45\\x1e\\x8a\\xbf\\x01\\xb0\\x7f\\x26\\x61\\x56\\x04\\x71\\x90\\xa6\\x61\\x80\\xda\\xd4\\x54\\xf3\\x67\\x92\\x17\\x59\\x2c\\xfe\\xa6\\xaa\\xf9\\x33\\x22\\x49\\x96\\x87\\x39\\xdd\\xe5\\x85\\x8b\\xe6\\xcf\\x9c\\x6e\\x6f\\x12\\xf1\\x37\\x54\\xcd\\x9f\\x59\\x92\\x67\\x59\\x1c\\x85\\x61\\x4a\\xe2\\x00\\x35\\xcd\\x29\\xe6\\xcf\\x30\\x8d\\x8b\\x24\\x93\\x7f\\x55\\xf3\\x67\\x18\\x04\\x59\\x9a\\x64\\x59\\x92\\x14\\x49\\x82\\xb6\\x46\\x31\\x7f\\x66\\x41\\x56\\xc4\\xb9\\xfc\\x9b\\xa8\\xf6\\xcf\\x34\\x8d\\xb3\\x24\\x0b\\xc3\\x3c\\xc9\\x33\\x12\\x2c\\x19\\x40\\x83\\x8c\\x14\\x31\\x91\\x7f\\x55\\x03\\x68\\x10\\x64\\x59\\x9c\\xa7\\x79\\x90\\x64\\xb9\\x69\\x07\\xd1\\x0c\\xa0\\x69\\x18\\x15\\x51\\x20\\xff\\x26\\xaa\\x01\\x34\\xc9\\x48\\x16\\x93\\x20\\x8a\\x93\\xb4\\x28\\x42\\xb4\\x3d\\xd3\\xdc\\x10\\xf9\\x24\\x4b\\x8b\\x30\\x92\\x7f\\xe7\\x06\\xd1\\xac\\x30\\xca\\xa2\\x20\\xc9\\xb3\\x24\\x0d\\x22\\x9c\\x7b\\x14\\x1b\\x28\\xe0\\xc1\\x48\\x35\\x82\\xc6\\x59\\x9a\\x85\\x11\\x89\\x49\\x92\\x84\\x79\\x88\\x5b\\xe1\\x27\\x23\\xe8\\xcc\\x80\\xf4\\x6f\\xa4\\x18\\x41\\x8b\\xb0\\xc8\\x98\\x35\\x35\\x89\\xe3\\x30\\xb7\\x59\\x12\\x4d\\x23\\x68\\x10\\xe6\\x21\\x49\\xe4\\x5f\\xc4\\x08\\x4a\\xc2\\x20\\x0f\\xc3\\x20\\x2e\\xe2\\x3c\\xc8\\xac\\x78\\x9d\\x46\\x50\\x20\\xea\\xba\\xa9\\x81\\x02\\xc4\\x49\\x96\\xd1\\x3d\\x59\\x12\\x65\\x45\\x60\\xdb\\x8f\\x19\\x56\\xd0\\x04\\x08\\x81\\x69\\x05\\x8d\\xb3\\x38\\x0f\\xa2\\x94\\x84\\x71\\x16\\x19\\x1a\\x6f\\x95\\x19\\x94\\xa8\\xfc\\x68\\xd8\\x59\\x23\\xbf\\x08\\x48\\x16\\x04\\x24\\xa2\\x1b\\xe0\\xd4\\x46\\x1b\\xc3\\x0e\\x4a\\xa2\\x38\\xc8\\x73\\xf9\\x57\\xdf\\x3d\\x66\\x7e\\x11\\x66\\x39\\x49\\x48\\x92\\xc4\\x69\\x6c\\x35\\x3b\\x3b\\x0d\\xa1\\x71\\x46\\x48\\x9e\\x88\\xbf\\x3a\\x65\\xf2\\xc4\\x8f\\xd2\\x28\\x23\\x61\\x5c\\x04\\x51\\x1a\\x12\\x0b\\x65\\x0c\\x4b\\xe8\\x2c\\xe0\\x59\\x11\\x1b\\x96\\xca\\xc2\\x8f\\x72\\x92\\x15\\x69\\x42\\xf2\\x38\\x49\\x89\\xc5\\x16\\xe0\\x30\\x85\\xa6\\xbe\\x22\\x69\\x69\\xa1\\xd3\\x25\\x4b\\xfd\\x3c\\x48\\xd3\\x22\\x2a\\xe2\\x98\\x6e\\xbe\\x2d\\x74\\xd1\\x4c\\xa1\\xc4\\x57\\xd4\\x89\\x69\\xc2\\xc8\\x88\\x9f\\x47\\x51\\x96\\x67\\x45\\x1a\\xc4\\x71\\x96\\x18\\x07\\x2b\\x2b\\x6c\\xa1\\x51\\x96\\x92\\x34\\x17\\x7f\\x0d\\xb3\\x65\\xee\\x87\\x69\\x91\\xe6\\x49\\x54\\x64\\x51\\x1c\\x17\\x6b\\x6d\\xa1\\xaa\\xfa\\x8a\\x72\\xdd\\x62\\x94\\x86\\x7e\\x98\\xa7\\x59\\x56\\xc4\\x41\\x1c\\x47\\xb9\\xcd\\xee\\xec\\xb4\\x85\\x02\\x45\\xa2\\xb3\\x76\\x52\\xf8\\x59\\x18\\x32\\x1b\\x17\\x89\\xa2\\x34\\xb6\\x10\\x5b\\x33\\x85\\x46\\x7e\\x1e\\xa7\\x41\\x12\\xc9\\xbf\\x3a\\xd2\\xc8\\xcf\\xa2\\x22\\xcb\\x48\\x9e\\x66\\x71\\x44\\x62\\x9b\\xf5\\xcc\\x69\\x0a\\x05\\xda\\xca\\x30\\xb6\\x06\\x7e\\x90\\x25\\x69\\x9a\\x47\\x24\\x8a\\xc2\\x2c\\x37\\xb5\\xb2\\xc5\\x16\\xaa\\x2a\\xe7\\xb0\\x30\\x6c\\x95\\x89\\x1f\\x14\\x61\\x96\\x32\\x23\\x55\\x18\\x58\\xa8\\xed\\xb4\\x85\\x66\\x51\\x42\\xe2\\x50\\xfe\\x35\\x6d\\xa1\\x69\\x98\\xa7\\x49\\x91\\x25\\x69\\x14\\x14\\x91\\x85\\x0b\\x35\\x5b\\x68\\xea\\x67\\x49\\x18\\x44\\xa9\\xfc\\x6b\\xda\\x42\\xd3\\x38\\xc9\\x92\\x28\\xcb\\xa2\\x38\\x88\\xa2\\xc4\\x42\\x6d\\xa7\\x31\\x54\\x51\\x53\\x71\\xa0\\xf3\\x76\\x14\\xfb\\x24\\x0f\\xd2\\x24\\x08\\x49\\x11\\x05\\x24\\xcb\\x2d\\xd4\\x36\\xac\\xa1\\xea\\x08\\x86\\xc6\\xc1\\x5b\\x98\\xfb\\xa4\\xc8\\xb3\\x38\\x09\\xc3\\x34\\x26\\xb1\\xe5\\x9c\\xc6\\x6d\\x0c\\x05\\x2b\\x4b\\x9d\\xb9\\xc3\\xc4\\x4f\\xa2\\x38\\x8d\\xc3\\x34\\x0d\\x23\\x12\\x9a\\x6b\\x00\\x8b\\x31\\x34\\x55\\xe7\\x1b\\xdd\\xf4\\x1c\\x14\\x7e\\x92\\x04\\x59\\x94\\xa6\\x59\\x11\\x15\\x29\\x9b\\xe6\\xae\\x36\\x86\\x12\\xa7\\xb2\\x0a\\x52\\xbf\\xc8\\xb3\\x34\\x8a\\x03\\x66\\x5c\\x4c\\x6d\\xe7\\x6e\\xba\\x35\\x34\\x00\\x3f\\xa6\\x35\\x94\\x90\\x38\\x0b\\xf3\\x20\\x0a\\xa3\\x9c\\x0a\\xe7\\x0b\\xac\\xa1\\x60\\xba\\xd1\\xe7\\xf7\\xdc\\x8f\\x63\\x92\\x86\\x49\\x92\\xe6\\x61\\x9e\\x04\\x5c\\x97\\xfc\\x86\\xe6\\xd0\\xe8\\xf5\\xe6\\xd0\\x20\\x48\\x74\\x13\\xda\\xf5\\xf6\\xd0\\x80\\x98\\x48\\xae\\x36\\x88\\x16\\x06\\x8e\\x2b\\x0d\\xa2\\xb9\\x81\\xe0\\x4a\\x83\\x68\\x66\\x20\\xb8\\xd2\\x20\\x9a\\x1a\\x08\\xae\\x34\\x88\\x26\\x06\\x82\\x2b\\x0d\\xa2\\xb1\\x81\\xe0\\x4a\\x83\\x68\\x64\\x20\\xb8\\xd2\\x20\\x1a\\x1a\\x08\\xae\\x34\\x88\\x22\\x0c\\x79\\x9d\\x45\\x54\\x94\\xb7\\x5d\\x73\\xd8\\x4a\\x5b\\x0c\\xbc\\xea\\x80\\x19\\x21\\x15\\x55\\x61\\xbf\\x33\\x81\\x78\\x51\\x0b\\x9f\\x53\\x70\\x5d\\x65\\xf2\\xfc\\x5d\\x75\\x2f\\xc5\\x74\\x78\\x35\\x0b\\xa2\\xd1\\x50\\x3c\\x14\\x9b\\x80\\x9c\\x5d\\xbf\\x4d\\x6c\\x53\\x0a\\x8b\\x71\\x60\\x31\\x9d\\xaa\\x20\\x4f\\x4a\\xd8\\xd2\\x19\\xa1\\xe5\\x4a\\x0a\\xb8\\x1b\\x23\\x21\\x77\\x43\\xd9\\x55\\xeb\\x7c\\x9d\\x79\\x07\\xd8\\xcd\\x69\\xe2\\x6d\\xe7\\x1a\\x67\\x27\\x75\\x68\\xde\\x52\\xb3\\xd8\\x37\\xf3\\x2a\\x0b\\x43\\x16\\x10\\x13\\x15\\xfb\\xa6\\xdd\\x7e\\xb1\\x80\\x7c\\x29\\x91\\x60\\x33\\x28\\xac\\x0c\\xe6\\xb9\\x95\\x61\\x70\\xb5\\xfb\\x9e\\x48\\x19\\x10\\x97\\x47\\x5c\\x87\\xcd\\xd8\\x0f\\xb8\\x78\\xeb\\x6e\\xdf\\x46\\x4b\\x87\\x91\\x7f\\x4a\\x33\\x38\\x8c\\x71\\x07\\x18\\xd6\\xfc\\x16\\x37\\x91\\xf5\\xb6\\xee\\xc6\\x6e\\x6a\\x47\\x2c\\x63\\xb5\\x5a\\x9e\\x6f\\x79\\x8b\\x80\\x3d\\x7a\\xfd\\x90\\x26\\x6d\\xf3\\x63\\xdb\\x78\\xab\\x07\\x56\\x0d\\x42\\x6a\\xc9\\x15\\x81\\x48\\x9d\\x03\\x81\\xa3\\xd0\\x81\\xf8\\xd5\\x68\\xe4\\x66\\x7f\\x48\\x7f\\x15\\xb1\\x6e\\xba\\xaf\\xf5\\x20\\x1a\\x61\\xe3\\x0a\\x07\\x9c\\xce\\x25\\x5a\\x88\\xc0\\xb5\\xd5\\x28\\x9d\\x5a\\x03\\x3d\\xd3\\x69\\x7d\\xd3\\xd6\\x55\\xb1\\x96\\x8e\\x7c\\x1d\\xa9\\x0f\\xb4\\xdf\\x74\\x4a\\x38\\x6f\\x55\\x99\\x26\\xea\\xd3\\x70\\x0b\\x8c\\x65\\xa8\\xf4\\x29\\x10\\x1c\\xd3\\x7c\\xec\\x13\\x72\\x57\\x43\\x7b\\x40\\x0b\\x2a\\xb0\\x00\\x36\\xc0\\x1d\\x62\\x91\\x5f\\x9d\\x61\\x08\\x2c\\x61\\xf4\\xd0\\xd0\\x79\\x7a\\xb8\\x3c\\x2c\\xc6\\x03\\x47\\xaa\\x05\\x71\\xe0\\x51\\x1f\\xb5\\xef\\x06\\x8d\\x56\\x44\\x5e\\x74\\x92\\x75\\x3a\\x29\\x71\\xc1\\xc0\\xb3\\x13\\xbc\\x21\\x96\\xe0\\xcb\\x8b\\x6a\\x9a\\xf2\\xee\\xaa\\x26\\xe1\\xb0\\x6b\\x9a\\x26\\xe7\\xe2\\x7e\\x38\\x22\\x48\\xd9\\xe1\\x68\\x5d\\x0e\\xfb\\x7b\\x75\\xc6\\x52\\xef\\xd7\\xa8\\x8f\\x0e\\xf0\\x04\\x62\\x09\\x02\\x26\\x14\\x89\\x3d\\x1e\\x34\\xcf\\x5f\\x7c\\x10\\x60\\x0a\\x14\\x23\\xff\\xf7\\x83\\x4f\\x1b\\x67\\xee\\xc2\\xdb\\x01\\x2f\\x40\\xf8\\x96\\xb8\\xd6\\xa8\\x3c\\x30\\x44\\xcb\\xa0\\x62\\xc8\\xcc\\x87\\x9e\\x84\\x12\\x42\\x9f\\x06\\x02\\x0a\\x8a\\x2d\\xa2\\x0c\\xdc\\x96\\xbb\\x5f\\xc6\\xae\\x53\\x2d\\x08\\xb9\\x6a\\x8e\\xbb\\xa0\\x07\\x57\\x50\\xcf\\x17\\xa7\\x55\\xdc\\xd8\\x6d\\xf9\\x67\\x54\\x6e\\xe7\\xa3\\x7b\\x7c\\xf9\\xe8\\x5e\\xf7\\x61\\x8e\\x0d\\x05\\x72\\x47\\x71\\x6e\\xb2\\x12\\x6d\\x41\\xbd\\x55\\xae\\xbf\\x20\\x0b\\x6f\\x9c\\x7f\\xf8\\xff\\x03\\x00\\x00\\xff\\xff\\xe8\\xcb\\x31\\x4b\\xf8\\xed\\x01\\x00\"\n\nfunc assetsClientStaticCssBootstrapMinCssBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticCssBootstrapMinCss,\n\t\t\"assets/client/static/css/bootstrap.min.css\",\n\t)\n}\n\nfunc assetsClientStaticCssBootstrapMinCss() (*asset, error) {\n\tbytes, err := assetsClientStaticCssBootstrapMinCssBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/css/bootstrap.min.css\", size: 126456, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticCssHighlightMinCss = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\x94\\x54\\xc1\\x6e\\xe3\\x38\\x0c\\xfd\\x95\\x00\\x73\\x9d\\x35\\x7a\\x19\\xa0\\xc8\\xdc\\xf7\\x37\\x02\\x5a\\xa2\\x6d\\xd5\\x94\\xa8\\x52\\x94\\x13\\xa3\\xc8\\xbf\\x2f\\x1c\\x4b\\x89\\x9d\\xa6\\x87\\x45\\x2e\\x0c\\x2d\\xf1\\x91\\xef\\x3d\\x31\\x0a\\x1e\\x0c\\x5b\\xfc\\xb2\\x2e\\x45\\x82\\xf9\\xd8\\x12\\x9b\\xf1\\x6f\\x04\\x6b\\x5d\\xe8\\x8f\\xcd\\x1f\\xf4\\x7f\\x5b\\x30\\x63\\x2f\\x9c\\x83\\x3d\\xfe\\xea\\xde\\x96\\xdf\\xb5\\x5e\\xfb\\xbd\\x04\\x4d\\xca\\x6d\\xd2\\x35\\x54\\xe8\\x0f\\x8d\\x3a\\xa5\\xf2\\x89\\x5c\\x8a\\xbb\\x84\\x21\\xfe\\xc8\\x4b\\xd0\\x66\\x47\\x7a\\x72\\x61\\x4d\\x87\\xde\\x85\\x4b\\x39\\xf8\\x65\\x98\\x58\\x8e\\x2d\\x81\\x19\\xaf\\x2b\\x80\\x8a\\x0b\\x7d\\x41\\xd8\\xd4\\xe2\\x90\\x14\\x42\\x81\\x8e\\x20\\x18\\xb6\\x6d\\x4c\\x40\\xb9\\x9c\\x94\\x4c\\x98\\x7e\\xcc\\x1c\\x9a\\x90\\x7d\\x8b\\x52\\xea\\x08\\x46\\x61\\x83\\x29\\xb1\\xd4\\xb3\\xed\\x7c\\x68\\xd2\\xec\\x5b\\xa6\\xef\\x99\\x7d\\x7b\\xd0\\xf7\\x82\\x3d\\x68\\x81\\x51\\xf4\\x91\\x40\\xf1\\xa4\\x50\\x0e\\xd8\\x0f\\x08\\x3d\\x2f\\xc8\\xe2\\xa0\\xad\\xa3\\x24\\x0f\\x44\\x0a\\x34\\x2e\\x0c\\x41\\x4a\\xa5\\x98\\xb5\\x4e\\x1d\\x17\\x8e\\x3a\\xe2\\xf3\\xef\\xca\\x07\\x82\\x5f\\xe3\\x16\\xd2\\xf0\\x5c\\x0d\\x22\\x98\\x61\\xa5\\x61\\x9f\\x30\\xad\\x80\\x19\\xb1\\xb2\\x84\\x97\\x85\\x44\\xef\\x21\\xd8\\x4d\\x26\\x45\\x34\\x0e\\xca\\xa4\\x28\\x04\\xa1\\x3f\\x09\\x46\\x3a\\x34\\x5d\\x0e\\x66\\xe9\\xe7\\xc4\\x72\\x02\\xe5\\xd2\\x81\\x07\\x19\\x2d\\x9f\\xc3\\xa1\\x19\\x10\\x2c\\x4a\\xd1\\xef\\xd7\\xfb\\xdb\\x6a\\x94\\x1b\\xc4\\x5d\\x1a\\x08\\x81\\x15\\x1e\\x53\\xdd\\x19\\xda\\x9d\\xb2\\xae\\xeb\\x6a\\xbd\\x22\\xf6\\x90\\xc3\\xf8\\x0c\\x78\\x73\\xeb\\x67\\x66\\xc5\\x3b\\xe8\\xfb\\xfb\\x0a\\xba\\x95\\xd4\\xde\\xf5\\x10\\xec\\xf1\\x12\\xab\\x37\\x15\\xa5\\xce\\xb9\\x11\\x60\\x2b\\xf4\\x56\\x97\\x01\\x4a\\xb9\\x45\\xbe\\xbd\\xf7\\xcc\\x00\\xa1\\xc7\\x6f\\xdd\\x65\\xa2\\xca\\xf5\\x23\\x4b\\x2e\\x8c\\xa7\\x2c\\x54\\x3b\\x7e\\x7b\\x2f\\x34\\x11\\xb4\\x58\\x60\\x3f\\x60\\x02\\xcb\\x66\\x67\\xb6\\x8d\\xc9\\x2c\\x1a\\x16\\xd0\\xea\\xcf\\xce\\x91\\xa2\\x1c\\x1a\\x90\\x3e\\x3f\\x28\\x24\\x36\\x40\\x13\\x48\\xf5\\x92\\x08\\xcc\\x25\\x54\\x95\\x53\\x42\\x42\\x73\\x2f\\xe1\\x7c\\x64\\xd9\\xbc\\xa5\\x84\\xd9\\x72\\x89\\x5d\\x01\\x65\\xa3\\x73\\xc4\\xda\\x01\\xe1\\x43\\x43\\x0c\\xd3\\x54\\xc9\\x49\\x03\\xb6\\x10\\x9e\\x7c\\x97\\x3e\\x77\\xc6\\x2b\\xaf\\x7d\\xbf\\x02\\x6e\\xde\\xeb\\x58\\x7c\\x26\\x78\\xe1\\x3d\\xc1\\x84\\x32\\xa1\\xad\\x8f\\x94\\x7d\\x7c\\x4d\\xed\\x86\\xc6\\x69\\xb0\\xb4\\x8e\\xeb\\xda\\xac\\xcf\\x1b\\xe8\\x39\\xcf\\x5d\\x87\\x98\\x8c\\xb8\\xa8\\x37\\x80\\x88\\xa2\\xf3\\xc3\\x57\\xff\\xae\\x2a\\x8d\\x38\\x9f\\x59\\x4a\\x1b\\xae\\xb6\\x33\\xc4\\xbb\\x5c\\x9b\\x05\\xb5\\x1f\\xf0\\x69\\x35\\x98\\x94\\x36\\x2f\\xb4\\x28\\x7e\\xff\\xbf\\xad\\x38\\x83\\x6c\\x3f\\xbd\\xde\\x15\\x67\\x17\\xb2\\x3a\\x4a\\xff\\x63\\x2b\\x2c\\x3e\\x5e\\x24\\x0d\\xe0\\xf1\\xa7\\x8d\\xf0\\x20\\x37\\xa9\\x70\\xd5\\x55\\xf0\\x33\\x63\\xdd\\xf9\\x49\\x41\\x73\\xfa\\xea\\x38\\xe8\\x3f\\x67\\x74\\xfd\\xa0\\xc7\\x96\\xc9\\x5e\\x9f\\xee\\xa3\\x8f\\x03\\x24\\x57\\x0e\\x26\\x9d\\x09\\x8f\\x4e\\x81\\x9c\\xb9\\xbe\\x32\\xc5\\xae\\x5e\\x60\\xf1\\x40\\xd7\\x17\\x3a\\x2d\\xbc\\xad\\xf1\\x83\\xc7\\xfa\\xed\\xe2\\xe9\\x27\\x6b\\x5d\\x3c\\x7d\\xbf\\x7b\\x4b\\x4e\\xed\\xb7\\x94\\xa9\\x1c\\xaf\\xff\\x2c\\x28\\x7c\\x71\\x04\\xe3\\x74\\x3e\\x36\\x7f\\xae\\xff\\x05\\x00\\x00\\xff\\xff\\x68\\xb8\\xe0\\xf6\\x44\\x07\\x00\\x00\"\n\nfunc assetsClientStaticCssHighlightMinCssBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticCssHighlightMinCss,\n\t\t\"assets/client/static/css/highlight.min.css\",\n\t)\n}\n\nfunc assetsClientStaticCssHighlightMinCss() (*asset, error) {\n\tbytes, err := assetsClientStaticCssHighlightMinCssBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/css/highlight.min.css\", size: 1860, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticImgGlyphiconsHalflingsPng = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\x8c\\xb9\\x55\\x58\\x14\\x5e\\xf4\\xfe\\x8b\\xb4\\xb4\\x34\\x48\\x29\\x5d\\x22\\x25\\x4a\\x2b\\xdd\\x0e\\x30\\x34\\x83\\x48\\x0f\\x9d\\x33\\xc0\\x00\\x22\\x02\\xd2\\xd2\\x08\\x0c\\x9d\\x33\\x74\\x77\\x37\\x08\\x08\\x33\\x74\\x23\\xd2\\x0c\\x21\\x5d\\xe7\\xf9\\xfe\\xfe\\xe7\\xe2\\xdc\\x9c\\xe7\\xff\\xbb\\x5b\\x77\\xeb\\xb3\\xdf\\xbd\\x9e\\x77\\x3f\\xef\\x5e\\x11\\x1f\\xb5\\x55\\x48\\x89\\x18\\x89\\xb0\\xb0\\xb0\\x48\\xd5\\x54\\x15\\x75\\xb1\\xb0\\x9e\\xa0\\xb1\\xb0\\xb0\\xb2\\x09\\x71\\xb1\\xb0\\xb0\\xf0\\x70\\xa3\\x7a\\xb0\\xb0\\xb0\\x18\\xbc\\x94\\x8c\\xbc\\xf4\\x5c\\x6d\\xbd\\x20\\x96\\x1e\\x36\\x58\\xef\\xad\\x5d\\x3f\\xdb\\xb0\\xa9\\x39\\x5b\\xda\\xd9\\xe8\\xda\\x58\\x5a\\xfb\\xba\\x0f\\xdb\\x48\\x63\\x61\\x09\\xe7\\xaa\\x29\\xbe\\xd7\\x87\\x2e\\x1c\\x06\\x38\\x3b\\x99\\x29\\xb5\\x14\\x19\\xd6\\xd4\\x81\\x86\\x5b\\x1a\\x14\\x39\\x60\\x2e\\x4c\\x10\\xee\\x87\\x1c\\x29\\x9f\\xa0\\xdf\\xb1\\x83\\x6f\\x63\\x9c\\x5f\\x5f\\xa7\\x39\\x4a\\xdb\\xce\\xbf\\x9d\\xff\\x52\\x4b\\x46\\x25\\x3d\\x6a\\x2f\\xca\\xf1\\x9d\\x84\\x8d\\x92\\x90\\xe4\\xb3\\x80\\xb3\\xcb\\x9f\\x9c\\x31\\xd2\\x7c\\xb6\\xa9\\xc4\\x67\\x74\\x4d\\xb3\\x94\\x1d\\xc8\\xd7\\x27\\x2b\\xac\\x9a\\x6c\\xc6\\x9f\\xde\\x78\\x72\\x33\\xcb\\xe2\\x53\\x97\\x01\\xb0\\x9f\\xb4\\x75\\x56\\x30\\x37\\x1e\\x65\\xdf\\xeb\\xdd\\x76\\x14\\xb7\\xdc\\x64\\xba\\x64\\xeb\\x9d\\x1b\\x14\\x4b\\x09\\x6b\\xb4\\xab\\x44\\x2c\\x5e\\x78\\xee\\xa1\\x4a\\xcf\\x64\\x81\\xae\\xed\\x83\\xe7\\xfa\\xc0\\x64\\x61\\xab\\x81\\x14\\xb8\\xb1\\xf7\\x4c\\x5b\\xff\\x81\\xd5\\xca\\xb5\\x25\\xd7\\x65\\x7e\\x0f\\xbb\\x82\\x80\\xdb\\x5c\\x7a\\x1f\\x25\\x75\\x93\\xac\\xe3\\x42\\x0b\\x09\\x5d\\x76\\xc3\\x4d\\x0a\\x30\\x44\\xd3\\x90\\x88\\x5c\\xd0\\x73\\xc0\\x65\\x50\\xd4\\x00\\xee\\xde\\xb6\\x1f\\xa8\\x9d\\xfe\\x90\\x8f\\x71\\x9d\\xa1\\xbf\\xb3\\xda\\x19\\xbc\\x52\\x6b\\x0d\\xd4\\xec\\xc7\\x7a\\x4e\\x93\\xef\\xff\\xb8\\x26\\xf8\\x74\\xe0\\xe6\\x44\\xf5\\x2d\\xa7\\xc5\\x0e\\x06\\xae\\x55\\xd3\\x93\\x0f\\xb9\\xf8\\xd0\\xb9\\x51\\xf3\\x46\\xc9\\xb0\\x06\\x2d\\xd0\\x97\\xe7\\x16\\xd6\\xc6\\xf0\\xb5\\x0c\\xde\\x6f\\x8c\\xfd\\x40\\x2e\\xc2\\x5f\\xce\\x63\\x5c\\xbb\\x5f\\x85\\x7d\\x2c\\x9f\\x83\\xa9\\xe6\\x5a\\x3f\\x7b\\xdf\\x2a\\x94\\xde\\x80\\x5d\\x80\\x1f\\x5b\\x2f\\xea\\x68\\xb4\\x19\\x6c\\xbf\\xf6\\x7c\\x35\\x66\\x4e\\x90\\xc1\\x32\\x06\\x83\\x60\\xad\\x9d\\x7d\\xdf\\x45\\x80\\xda\\x91\\x96\\xfd\\x78\\x95\\x1c\\xcd\\x6d\\xd6\\x9d\\x9f\\xa1\\x3e\\x2a\\xc5\\x73\\x15\\x10\\xc6\\x8e\\x95\\x01\\xf0\\xfb\\x96\\xf2\\x98\\xf4\\x25\\x5c\\x52\\xac\\xf7\\x9e\\xd3\\x59\\xce\\xc5\\x36\\xcf\\xc5\\x4b\\x83\\x8f\\xbe\\xab\\xb2\\xe6\\xaf\\xd3\\xe8\\x3b\\xf5\\xe1\\xb9\\x05\\xfe\\x5c\\xc5\\x95\\x23\\xb5\\xe2\\x7b\\x63\\x6f\\x61\\xe3\\xf8\\x92\\x32\\x13\\x50\\x66\\x0e\\x0f\\x8b\\xb9\\xb1\\xb1\\x52\\x79\\x87\\xad\\xfc\\x01\\xbc\\x8b\\x65\\x63\\x32\\xab\\xc2\\xc9\\x68\\xfd\\xc8\\xcf\\x3c\\x1c\\x38\\xeb\\x55\\xc8\\x4c\\xf1\\xb4\\x24\\xce\\xbb\\x99\\xb4\\x83\\x6b\\xfd\\x89\\xb8\\xe0\\xc7\\xf4\\x82\\x43\\xc3\\x2f\\x01\\x21\\x0f\\xf2\\x5e\\xc7\\xf1\\xb0\\x65\\x76\\xcd\\xf3\\x34\\xe3\\xa0\\x04\\x99\\xdb\\x3a\\xcf\\xe3\\xec\\xa1\\xa5\\xaf\\xac\\x65\\x03\\xd7\\x02\\x10\\x76\\x02\\xfe\\x0e\\xdd\\x93\\x24\\x7e\\x6a\\xb9\\xf8\\x81\\x28\\xcb\\x19\\xe8\\xef\\xc7\\xa7\\x46\\xbb\\xaf\\xaf\\xc8\\x5e\\x52\\x3c\\xb7\\xb1\\xe4\\x85\\x7b\\xdd\\xab\\xd0\\x91\\x2f\\xf3\\xa1\\x72\\x21\\x06\\x14\\x15\\x10\\xda\\x7d\\x03\\x10\\xa2\\x07\\xcb\\xc3\\x96\\x13\\xfa\\x01\\x97\\x87\\xd0\\x7d\\xa6\\xad\\x4d\\x4c\\x36\\x9d\\x96\\xf5\\xce\\x10\\xad\\xd2\\xc0\\xbe\\x8c\\x7b\\x12\\xeb\\x64\\xf8\\x0c\\x28\\x3d\\x19\\x3c\\x76\\xf5\\x9b\\xaa\\xd5\\x48\\xdd\\xe0\\x77\\x43\\x63\\xa2\\xd3\\x65\\x54\\x59\\x77\\x87\\xee\\x7d\\xdf\\x11\\x87\\xe3\\xbd\\xa2\\x81\\xc7\\xb4\\x5a\\x65\\x45\\xfe\\x6e\\x81\\x84\\xe4\\xb1\\x91\\x74\\x9c\\xa7\\x2c\\xa7\\xd1\\x9a\\x30\\x36\\xbc\\x43\\xbb\\x26\\x56\\xc9\\x8f\\x9c\\xf1\\xba\\x05\\x92\\x12\\x59\\x2c\\xe5\\x3b\\x75\\xf4\\x0e\\xe3\\xd7\\xf5\\xee\\x4a\\x07\\xc5\\x49\\x17\\x98\\xb2\\x99\\x1a\\x58\\xb8\\xee\\x5d\\x3a\\x32\\x9c\\x8a\\xcb\\x77\\x23\\x53\\x8d\\x40\\xf4\\x6d\\xab\\x3d\\xff\\x0d\\x8d\\xb7\\x5a\\xf7\\x0d\\xa8\\xb8\\x60\\x65\\x32\\xe6\\x79\\xc8\\xdf\\x77\\x9d\\xa1\\xa7\\x4c\\xf6\\x26\\xea\\xa9\\xd6\\xe6\\x40\\x82\\xe8\\xcb\\xc0\\xd9\\x0f\\xc4\\x47\\x15\\xad\\x8f\\xd8\\x36\\x66\\xe7\\x11\\x0e\\x46\\x87\\x27\\xf0\\xcc\\x32\\xf3\\xf9\\x4d\\x29\\x63\\xc1\\x42\\x8f\\xf0\\x0b\\xac\\xd9\\xcd\\xb2\\x67\\xbf\\x6b\\x22\\xb9\\x3a\\x82\\x65\\x5b\\x5e\\x04\\x15\\xfa\\x39\\x11\\x1a\\x0f\\x5b\\x1a\\xa8\\x1a\\x68\\xa3\\xaa\\x26\\xde\\xc9\\x84\\x47\\x99\\x47\\xb2\\xca\\x84\\xdf\\xb3\\xc6\\xa4\\x55\\x0d\\x3a\\xeb\\x56\\x8e\\x69\\xad\\xdc\\xb3\\xc4\\x3e\\x0f\\xb2\\x6e\\x65\\xac\\xd4\\x01\\x32\\x29\\x10\\x97\\xaa\\x3f\\x07\\x3a\\xe8\\xd3\\x04\\x78\\x9c\\x18\\x32\\x76\\x94\\x18\\x72\\x53\\xd2\\x64\\x2f\\x34\\x7b\\x23\\x9a\\x78\\x47\\xf2\\xbe\\xed\\xd2\\x5e\\xb2\\x8e\\x2a\\xbf\\x34\\x06\\x3e\\xb0\\x1f\\xdf\\x7d\\xdc\\x9c\\xed\\xc8\\xfe\\xb6\\xbd\\xc7\\xb5\\x14\\x7f\\x38\\x19\\x3a\\xb1\\x33\\xa6\\xbb\\xa5\\xd3\\x85\\x88\\x9a\\x83\\xf8\\xfa\\x2d\\xee\\x3a\\xe3\\x30\\x70\\x20\\x11\\xad\\x3a\\x35\\xbf\\x57\\xa9\\x1f\\x3c\\xe5\\xd8\\xd8\\xf8\\x41\\x3f\\x94\\xf5\\x17\\xbb\\xf7\\x96\\x57\\xd5\\x7e\\x28\\xad\\xbb\\x5f\\x72\\x36\\x9f\\x71\\xfd\\xcc\\x28\\xfb\\x5a\\x12\\xb8\\x4d\\x22\\x7b\\xa4\\x85\\xee\\x1e\\x0c\\x30\\xaf\\x5e\\x47\\xa5\\x6c\\x50\\xb4\\x42\\x68\\x8f\\x5a\\xdf\\x87\\x61\\x7e\\x3e\\x97\\x23\\x22\\x33\\x1d\\xbd\\xb9\\xd4\\xf6\\xb2\\xb1\\x81\\xba\\x1c\\xf1\\x6c\\xfd\\x8d\\x45\\x24\\x67\\x23\\x3f\\xb4\\x58\\x33\\xc2\\x27\\xb4\\xf4\\xe7\\xa9\\x11\\x6e\\x23\\x85\\xe9\\x2e\\xee\\x8f\\xee\\x47\\x7a\\xbb\\x72\\xe9\\x57\\x73\\x9f\\x0d\\x53\\x6e\\xdb\\x76\\x7e\\x18\\x39\\x1b\\xbe\\x39\\x89\\x19\\x87\\xf2\\xf9\\x63\\x1b\\x58\\x6c\\xb6\\x5e\\xdd\\x96\\xbe\\x30\\xe8\\x05\\x8f\\x17\\x1f\\x7b\\x6e\\xb6\\x1a\\x68\\x82\\xc0\\x98\\xf8\\x9e\\xa0\\x50\\x52\\x23\\xc7\\x09\\x00\\xb8\\x14\\xf8\\xef\\xb1\\x62\\xf2\\x4d\\x26\\xde\\xec\\xbe\\x27\\x8b\\x63\\xd2\\xf9\\x58\\xa9\\x4b\\xe0\\xbd\\xe9\\x9d\\xfb\\xe9\\x60\\xd3\\x83\\xe0\\x63\\xd1\\x27\\xd2\\x39\\x1d\\x1a\\x56\\x1c\\x06\\x86\\xf8\\x9c\\x61\\x49\\x95\\x22\\xa6\\x7f\\x43\\xd4\\xfb\\x49\\xcb\\x12\\x1b\\xe1\\xab\\x4e\\xf5\\x21\\x2f\\x1d\\x9b\\x7e\\xde\\x0f\\x06\\xfd\\xd8\\x3c\\xf4\\xd4\\xbd\\x66\\xb0\\x89\\x14\\x41\\x54\\xf8\\x30\\x9f\\x02\\xd0\\x32\\xe3\\x80\\x81\\x36\\xf5\\x09\\x60\\xb9\\xd1\\xa7\\x5c\\x66\\xbb\\xac\\x27\\x8c\\x00\\xdf\\x40\\xaa\\xa7\\x7d\\x71\\x47\\x1a\\x21\\x8d\\x43\\x55\\x4b\\x41\\x55\\x4a\\x55\\xe6\\xa8\\xff\\x23\\x60\\xeb\\xb6\\x64\\xaa\\x57\\x11\\x7c\\xde\\xba\\xc1\\x4c\\xbf\\x5d\\xc8\\x7b\\x90\\xf5\\xe4\\x32\\x63\\xe1\\x0a\\xbe\\xb9\\x2d\\xf5\\x30\\x57\\x7b\\x2d\\x59\\xa2\\x3e\\x6a\\x25\\xc8\\xc9\\x5d\\x94\\x63\\xb3\\x1d\\xf3\\x48\\xc2\\xe4\\x1e\\x9c\\x88\\x26\\xc2\\x95\\xc3\\x06\\xb7\\xbd\\x14\\xf2\\xb5\\x0f\\x0b\\x2d\\x13\\x8b\\x2d\\x7b\\x9b\\x67\\xe2\\x40\\xcb\\x98\\x7e\\xd2\\xd9\\x73\\x8d\\x9a\\x12\\x3e\\x85\\xa9\\x03\\x1f\\x8b\\x31\\xde\\xc7\\xe4\\xb2\\x79\\x1d\\x16\\x7d\\x8f\\xbf\\xb4\\xf7\\xc7\\x96\\xa5\\xec\\xa1\\x90\\x4e\\x6d\\x06\\x20\\xf1\\xb4\\x7a\\x0d\\x00\\x28\\x81\\x63\\xb6\\xdb\\x0c\\x3e\\x2b\\xfd\\xc6\\x3c\\x56\\xf1\\x59\\x3f\\x4f\\x32\\xbf\\x32\\xad\\x76\\x04\\xfb\\xc3\\xba\\xdc\\x9b\\x13\\xc2\\xff\\x46\\xad\\x3d\\x48\\xbd\\xaa\\x47\\x78\\x3c\\x92\\xf3\\xfb\\x99\\x1a\\x11\\xd0\\x58\\x90\\x55\\x2d\\x04\\x33\\xef\\x20\\xe6\\xff\\x4d\\x26\\xdb\\x63\\xb0\\x40\\xe2\\x3b\\x42\\x9e\\x57\\xf5\\xbb\\xc6\\xb6\\x3a\\x7f\\x98\\x2d\\x65\\x9a\\xd8\\x84\\x11\\xc3\\xc3\\x5b\\x85\\x59\\xeb\\x5e\\x39\\x6e\\xf0\\x1c\\x59\\x88\\xf0\\xbf\\xfe\\x3b\\xb6\\x84\\x64\\x5a\\xed\\xdf\\xa7\\xb3\\xd2\\x19\\xc4\\xa2\\x0b\\xef\\xee\\xb2\\x13\\xd0\\x4a\\xd2\\xd1\\x90\\xd5\\xb2\\xb0\\x2f\\x06\\x31\\xe1\\x97\\x7e\\xa9\\x4a\\x01\\x6b\\xf7\\x20\\x0b\\x9b\\xbf\\x88\\x3a\\x12\\xb7\\xc2\\x6d\\x04\\xab\\xd7\\x7e\\x43\\x87\\xe8\\x4d\\xe4\\x3b\\xa4\\xc0\\x26\\x62\\x5f\\xae\\xe5\\xaa\\xda\\x2e\\xc1\\xe9\\x97\\xf1\\xa5\\xce\\x4c\\x57\\x93\\xf4\\x45\\xf4\\x38\\x14\\x01\\xc5\\x46\\xc3\\xc2\\x5a\\x12\\x2c\\x69\\xe7\\x62\\xaf\\x11\\x40\\x9b\\xd4\\x50\\xc4\\xb1\\xf2\\x79\\xcd\\xf4\\x7e\\xf8\\xd3\\x33\\x61\\xda\\x05\\xa9\\xe0\\x44\\x7f\\x12\\x25\\xe5\\xe9\\xd7\\xe4\\x9f\\x82\\xf1\\x1e\\x07\\x36\\x15\\xfb\\x75\\xe3\\x8b\\xee\\xf8\\x13\\x80\\x33\\xd4\\x64\\xc6\\x0e\\x8a\\x5b\\xf3\\xab\\xbf\\xc5\\xf6\\x59\\xe4\\x22\\x8d\\x3f\\x31\\xc3\\x3e\\x04\\x87\\x77\\x78\\x8a\\x0c\\x2d\\xf9\\x3a\\xb8\\x65\\xa8\\x3d\\xba\\x6f\\xb6\\xca\\x1a\\xa2\\x5d\\xef\\x49\\x8b\\x71\\x0d\\x32\\x9b\\xd7\\xf5\\xaf\\xef\\x54\\x16\\x57\\x19\\xfd\\xec\\xd8\\xaf\\x88\\x38\\x53\\xa2\\x9e\\x4d\\x28\\xbe\\x66\\x5f\\xca\\x11\\xcd\\x42\\xa4\\x51\\x99\\x7a\\x15\\x39\\xe0\\xfc\\x9c\\xcb\\x6b\\x79\\xce\\x43\\x0c\\x9c\\x15\\xe8\\x33\\x1f\\x17\\x16\\x11\\xff\\x31\\x0f\\x3b\\xba\\xd2\\xee\\x1f\\x2b\\x7f\\x62\\x0b\\x99\\x93\\x80\\xd4\\xb2\\xfd\\x4d\\x3f\\x1c\\x20\\xbe\\xea\\xf4\\xe6\\x27\\xeb\\xe8\\x89\\xa4\\x9b\\xef\\x31\\x2f\\x51\\xac\\xff\\x6c\\xbe\\xda\\xa3\\x51\\xc4\\x96\\x39\\x0f\\xfd\\x6c\\xb8\\x47\\x8c\\xce\\x90\\x60\\x86\\x6d\\x26\\x4f\\x26\\xdc\\x84\\x1b\\x6d\\x26\\x67\\x24\\x3f\\xa9\\xb8\\xf3\\x07\\x2e\\xcf\\x0c\\xd2\\x47\\x58\\x5d\\xff\\xa4\\x57\\x49\\x9e\\x08\\xfa\\x77\\x62\\x14\\x4e\\xe8\\xd8\\x53\\xf6\\x00\\xa3\\x8a\\xe2\\x79\\xc4\\xb2\\xe7\\x55\\x03\\x8e\\x59\\xf2\\xd2\\x3e\\x3a\\xb9\\xb1\\x89\\xfe\\xb8\\x76\\xa2\\xb8\\x39\\x42\\x79\\x7f\\x04\\xde\\x99\\x2b\\x26\\x1c\\xa7\\xf2\\x96\\x0a\\x51\\x48\\x04\\x8a\\x19\\x46\\xd0\\x36\\x79\\x11\\x88\\x33\\x6c\\xb5\\xd1\\xab\\x07\\x54\\xdf\\x1a\\x74\\x12\\xec\\x5e\\x13\\x19\\x9d\\xbf\\x46\\x16\\x87\\xf9\\xfd\\x65\\x1b\\x35\\xd0\\x2a\\xed\\x1d\\x90\\x92\\xed\\x50\\x41\\xfd\\x44\\x83\\x76\\x82\\x72\\x2a\\x61\\x57\\x4d\\x76\\xca\\x92\\xe3\\x7f\\xf2\\xc1\\x96\\x26\\xbb\\xad\\x17\\x20\\x1a\\x5e\\x09\\x31\\x05\\x76\\xf0\\x11\\x03\\xc4\\x43\\x60\\xb2\\x5e\\xef\\xdc\\xe9\\xfc\\x4e\\x85\\x35\\xce\\x7b\\x4e\\x4a\\xf8\\xc7\\xee\\x98\\xcf\\x84\\xb3\\x2c\\x41\\x90\\xf4\\x6f\\xde\\x4e\\xf2\\x00\\xc4\\x29\\x52\\xba\\x7d\\xff\\xd8\\xc0\\x84\\xd8\\xdb\\x66\\x31\\x47\\x71\\x3b\\x9b\\x1f\\x8c\\xf6\\x0d\\x4f\\xd9\\xaf\\x64\\x44\\xaa\\xbf\\x31\\xf0\\x07\\x13\\xdf\\x57\\x27\\x68\\x94\\x07\\xcb\\xd6\\x85\\x99\\xe0\\x5c\\xa2\\xd7\\x01\\xe8\\x14\\x72\\xcc\\x7d\\x23\\xd7\\x83\\xb3\\x89\\x64\\x56\\xca\\x93\\x0e\\x61\\x0c\\x30\\x57\\xeb\\xc3\\x56\\x60\\xde\\xd6\\x29\\x2b\\x11\\xcb\\x80\\x25\\xfd\\x61\\x57\\x88\\xe4\\x1f\\xa1\\xf5\\xcc\\x54\\x49\\x8d\\x47\\xc3\\x2c\\x43\\x1d\\xe6\\xa9\\x1c\\xae\\xd0\\xf2\\x6c\\x44\\x8b\\x31\\x7e\\x1d\\xa2\\x42\\xc4\\xf6\\x00\\xff\\x3a\\xee\\x44\\xc2\\x6a\\x20\\x9a\\x41\\xd4\\x76\\x2c\\x4d\\xf8\\xff\\xbf\\xa8\\xde\\xb2\\x2b\\x1c\\xe2\\x63\\x14\\xb5\\x3d\\x50\\xa6\\x12\\x5f\\xd6\\xa4\\xf8\\x5c\\x17\\x5f\\x48\\xa8\\x1d\\xdb\\x2d\\xc2\\xae\\x6f\\x2b\\xa3\\xb0\\x4b\\xf1\\xe9\\x05\\x43\\x4a\\x10\\x05\\xd9\\x9d\\x89\\x4a\\x25\\xd0\\x66\\x2f\\x3f\\x3c\\xdc\\xe6\\x6b\\xbf\\x88\\x41\\x2f\\x4d\\xe9\\x84\\x74\\xa6\\xb0\\xb3\\xa3\\x5e\\xc1\\xf0\\x16\\x0e\\x4b\\xbf\\x98\\xc3\\x44\\x2a\\xdf\\xab\\x74\\x7f\\xed\\xbb\\xb7\\x46\\x3f\\x2d\\x71\\xc1\\x81\\xf8\\xb1\\xbb\\x98\\x85\\x2f\\x1b\\x2e\\xef\\xd3\\xa1\\x02\\x8f\\xa9\\xb3\\x9c\\xb6\\x4a\\x92\\xbd\\xb0\\x5d\\xe3\\x34\\x45\\x83\\x4b\\x30\\x31\\x51\\xd6\\x7e\\x59\\x4f\\xde\\x82\\x93\\xdd\\x9b\\x1e\\x1e\\x49\\xa4\\x63\\x60\\x74\\xe1\\xa5\\xd6\\x85\\xd6\\xc6\\xac\\xb8\\x5c\\x91\\xd8\\x53\\x73\\x43\\x9d\\x46\\xd9\\x96\\xab\\x9d\\xca\\x28\\xc3\\xc2\\x21\\xba\\xfc\\x54\\x13\\xd6\\x24\\x1a\\x07\\x95\\x3b\\x58\\x1a\\x60\\x54\\xe5\\x4e\\x9d\\xd6\\xa6\\x6e\\x5b\\xc3\\xd4\\xd8\\x0a\\x5d\\xdf\\xec\\xe6\\x0c\\x56\\x32\\xb3\\x15\\xea\\x18\\x8c\\x7d\\xcb\\xd5\\xa6\\x03\\x78\\x14\\xfd\\xc5\\xc6\\x10\\xb5\\x91\\x79\\x71\\xff\\x4a\\x94\\xc1\\xab\\x79\\xcf\\x4b\\x84\\xbb\\x5d\\xd0\\x60\\xed\\xed\\xea\\xf5\\x7a\\xa8\\x5b\\x88\\x51\\xbd\\x5e\\x95\\xc7\\xa0\\x31\\xbb\\xfa\\x0b\\xe4\\xed\\x09\\xe0\\xb8\\x69\\x2f\\x88\\x2d\\xe4\\x65\\x81\\x80\\xf7\\xe7\\x59\\x79\\xe5\\xf2\\x5a\\xc6\\x1b\\x6a\\x8d\\x55\\xc9\\x0e\\xef\\x25\\xd0\\xe1\\xb5\\x83\\x6f\\x29\\xc2\\x94\\xd5\\x5c\\xfa\\x95\\x02\\xa4\\x32\\x0a\\x0b\\x1e\\x52\\xc9\\x6f\\xc8\\x6a\\x16\\xc3\\xdb\\x89\\xf9\\xdc\\x86\\x80\\x13\\x39\\x56\\x7a\\x08\\xe6\\xd2\\xe1\\x6e\\x85\\x1c\\xbd\\xd2\\xca\\xc3\\xf7\\x2a\\xa0\\x5b\\xf8\\x82\\xd2\\x2a\\x89\\x77\\x1f\\x18\\xf9\\x46\\x73\\x1e\\xd7\\x55\\xf3\\x30\\xbd\\x58\\xc5\\x52\\xdc\\x18\\x53\\xc4\\xce\\x01\\x07\\x19\\x71\\x64\\xfd\\x7e\\x99\\x19\\x53\\x1c\\xd1\\xde\\x7a\\x62\\xf0\\x29\\x59\\x3f\\x52\\xec\\xe7\\x73\\x06\\xe7\\xf5\\xa9\\xc0\\x4b\\x08\\xe7\\xc7\\x7a\\x37\\xe1\\xc6\\x74\\x58\\x28\\x3f\\x17\\x10\\x8a\\x32\\xc6\\x8b\\x88\\x7c\\x8b\\xec\\xe7\\xeb\\xf1\\xa8\\x79\\x2b\\x99\\x7f\\xf0\\xb7\\x0c\\x8b\\xee\\xdf\\x9a\\xa3\\x04\\x60\\x32\\x64\\xea\\x8b\\x3e\\xa2\\x65\\x1f\\x67\\x23\\x71\\xe4\\xa6\\xe9\\x38\\x71\\x86\\xe3\\x09\\xeb\\xf7\\x45\\xec\\xc9\\xd8\\xf3\\xf1\\x81\\x9f\\x9d\\x44\\xc1\\x7a\\xb2\\x81\\xc5\\x7a\\xac\\x77\\x15\\xe7\\xf5\\xdf\\xc0\\x63\\x9e\\xeb\\xe5\\x92\\xe2\\x2b\\xee\\xaf\\x20\\x55\\x5c\\x16\\x26\\xaf\\x70\\xff\\x19\\xc9\\x24\\x23\\x22\\xee\\x24\\x57\\xbe\\x7f\\x86\\xe0\\xef\\x7f\\x4a\\xea\\x66\\x9c\\x62\\xb3\\x58\\x23\\x74\\xb4\\xfe\\xea\\xcf\\x9d\\x37\\xf2\\x7a\\x51\\x72\\xce\\x7a\\x90\\x6c\\xc9\\xf3\\x3f\\x33\\x45\\xd2\\xbb\\x23\\x63\\x98\\x3a\\x1c\\x5e\\x88\\x88\\x88\\x4d\\x5f\\x24\\xdf\\xb9\\xb8\\x47\\x98\\x25\\xbc\\xfb\\x26\\x18\\x8f\\xd0\\x00\\xd2\\xe9\\xff\\xf1\\xd4\\x03\\xb6\\x1f\\x3c\\xf7\\x36\\x20\\x77\\xa5\\x49\\x96\\x97\\x6a\\x03\\x56\\xd4\\xfa\\x2d\\xca\\x82\\x6e\\x72\\x65\\xda\\x52\\xb5\\x6b\\x16\\x2f\\x92\\xe3\\x10\\x47\\x37\\x6e\\x6d\\x6d\\xb2\\xd8\\xae\\xe7\\xa1\\x1f\\xbb\\x3b\\x75\\x42\\x07\\x17\\xe8\\x88\\x7e\\xe4\\xc8\\xab\\xdd\\x52\\xed\\xdd\\xc8\\xaf\\x3d\\xcf\\x9f\\xe5\\x56\\x49\\xfc\\x01\\x16\\x2f\\x7d\\xee\\x5a\\xc9\\x07\\xac\\x90\\xa5\\x39\\xfa\\x03\\x42\\xf2\\xc5\\xdb\\x64\\x40\\xa2\\x28\\xff\\xc8\\xfe\\x42\\x8e\\x14\\x87\\xcf\\xae\\x23\\x73\\x28\\x01\\x55\\x61\\x49\\xe2\\x24\\xbf\\xbe\\x55\\x8e\\x6c\\x87\\x49\\x73\\x6c\\xb3\\x67\\x89\\x37\\xa8\\x4f\\xcd\\xb7\\x9e\\x94\\x80\\xa7\\x2e\\xde\\xd8\\x1c\\xf1\\x1e\\x2f\\x5a\\x90\\xde\\x1f\\x5d\\xdf\\x5a\\x9b\\x57\\x4f\\x8b\\x7c\\xad\\x4a\\xf9\\x20\\xd9\\x15\\x8e\\x00\\x9d\\xf2\\xf0\\xd5\\x48\\xbe\\x55\\x1f\\xe9\\xfe\\x6d\\x4c\\x83\\xd6\\xdb\\x2d\\x0b\\xab\\x38\\x9d\\xc2\\x68\\x2c\\xa7\\x26\\xee\\x90\\x98\\x03\\xc5\\x2c\\x06\\x3c\\xc0\\x05\\x84\\xfe\\x4b\\xe7\\xeb\\xe2\\x09\\xb3\\xe1\\x9b\\x96\\x83\\xf1\\x42\\x87\\xbe\\x67\\xa9\\x06\\x70\\xec\\x47\\xb9\\xc4\\x03\\x95\\x4e\\xaf\\xc7\\x3f\\x2a\\x9d\\xb8\\xcf\\xca\\xc8\\x51\\xe7\\x11\\x9f\\xe5\\xa1\\x1f\\x81\\xd9\\x7f\\x24\\xb0\\x75\\x44\\x8b\\x61\\x88\\xdd\\x18\\xc4\\x53\\xf2\\x47\\xb5\\xaa\\x53\\x80\\xf8\\x38\\xcb\\x32\\xe0\\xae\\x56\\x05\\xd2\\xf7\\x94\\x8f\\x81\\x47\\xaa\\x16\\x92\\xc7\\x60\\xdb\\xf8\\x9a\\x6f\\xf6\\xe3\\x31\\x10\\x18\\x27\\x4d\\x61\\x5c\\x30\\x90\\xf4\\xfd\\xf1\\xa4\\xc1\\x27\\xac\\xa6\\xed\\xe1\\x73\\xee\\xb8\\x57\\xcf\\x85\\xb8\\xbf\\xc8\\x8b\\x7d\\x81\\x80\\xd2\\xc8\\xf6\\x83\\xa9\\xa2\\x94\\xb8\\x24\\x49\\x5e\\x82\\xc6\\x71\\xb0\\x88\\x8e\\xe3\\xcf\\x71\\x04\\x0d\\x55\\x02\\x37\\x05\\xc9\\x4c\\xe4\\x6b\\xb5\\x57\\xee\\x66\\x3c\\x7d\\x9c\\xae\\x60\\x00\\xeb\\x28\\x6d\\xd1\\x46\\x5f\\x0a\\x3a\\x7c\\xd3\\x52\\x7a\\xaf\\x61\\x1f\\x15\\x13\\x95\\x64\\x03\\x5d\\x7a\\x6f\\xe7\\x15\\x75\\xcb\\x9d\\x6f\\x6a\\x2d\\x35\\xdb\\xb4\\x48\\xc0\\x72\\x8d\\x44\\xdc\\x7c\\xf2\\x18\\xb2\\xb2\\x6e\\x3d\\x78\\x9e\\x55\\x94\\x02\\x26\\xcc\\x89\\xfc\\xd8\\xac\\x0c\\x5c\\xe6\\x48\\xa2\\x03\\xda\\xa8\\xb7\\xab\\xbd\\x99\\xd7\\xbf\\xab\\x1d\\xe6\\x32\\x09\\x40\\x20\\x8e\\xfc\\xa8\\x3b\\x57\\xce\\x79\\x92\\xfd\\x2e\\x49\\x7c\\x6c\\xbd\\x4b\\xfc\\x26\\xd8\\x3a\\x33\\xfc\\xf1\\x03\\x16\\x3b\\x57\\xe1\\xbf\\xb7\\x96\\xb3\\x9c\\xa0\\x89\\xe3\\xc0\\x73\\x46\\x13\\x3a\\xcc\\x4e\\x59\\xe4\\xe0\\xab\\x59\\xe3\\xad\\x9a\\xec\\xcf\\x63\\xe3\\xdb\\x34\\x41\\x9c\\xad\\x61\\xb1\\x14\\xa9\\x25\\xe4\\x2e\\x90\\xae\\x46\\xf9\\x1f\\xb3\\x83\\xa5\\x9d\\x4d\\x7a\\xef\\x56\\x66\\x60\\xfd\\x2d\\x9e\\x9c\\x0b\\xb2\\xa3\\xb4\\x16\\xe7\\xae\\xec\\xc5\\x77\\x59\\xef\\xe6\\xcc\\x0a\\x94\\x80\\x81\\x8f\\x78\\x42\\xcb\\x0b\\xc1\\x97\\x5e\\x94\\x3c\\x1e\\x70\\xd3\\x76\\x40\\x3d\\x35\\xc2\\xc4\\x1b\\xe7\\x27\\xce\\xad\\x8e\\xab\\x54\\x55\\xf6\\xe8\\x0e\\xf3\\xe2\\x0b\\x2d\\x0f\\x60\\xab\\xf9\\xe2\\xf8\\x6b\\xfd\\xe9\\x3d\\x2b\\x3c\\x37\\xc5\\xfe\\x78\\xb4\\x1c\\xd6\\xab\\xb2\\xf3\\x05\\xab\\xe7\\xe3\\x7b\\x1f\\xbd\\x0f\\xab\\x7f\\x6d\\x97\\xd1\\x2b\\x7f\\xa9\\xf9\\xf2\\xf3\\xb6\\x46\\x8a\\x3c\\xb3\\x8d\\x05\\x11\\xa9\\x69\\xd1\\x5c\\x8a\\x40\\xd6\\x46\\x5e\\xeb\\xad\\x4c\\x7f\\x0e\\x68\\xd2\\x15\\x8a\\x56\\xb7\\x18\\xdd\\x26\\xe3\\x67\\x58\\x45\\xd9\\x17\\x8a\\x70\\xd0\\x9d\\x5b\\xd6\\xe7\\x3b\\xfc\\x20\\x2e\\x07\\xa2\\xff\\x0f\\x9c\\x6c\\x67\\xcc\\xe4\\xb7\\x00\\x09\\x2a\\xc4\\x1b\\x8f\\x11\\x82\\xd2\\x7a\\x3f\\xef\\xeb\\x95\\xc3\\xeb\\xb5\\xc0\\xad\\x8c\\x76\\xb1\\xf2\\x7b\\xd7\\xbe\\x12\\x22\\x61\\xf5\\xcc\\xf2\\x2f\\xd4\\xbf\\x89\\xea\\xa3\\x41\\xd5\\x63\\x69\\x9b\\x5d\\x81\\xf9\\xf4\\x2c\\xf9\\x0e\\x2c\\x58\\x0a\\x2b\\x4d\\xc1\\xe2\\x5d\\x8f\\xe2\\xd4\\xd2\\x1f\\x31\\x0b\\x1d\\x70\\x0f\\x8c\\x50\\x9f\\x4a\\x07\\xcb\\xa3\\xf1\\xbe\\xe3\\x1a\\xb2\\x3e\\x29\\x55\\x3c\\xcf\\x59\\x83\\xe8\\x4b\\x14\\x95\\xc8\\x56\\x31\\x22\\x6b\\x1c\\x21\\x2e\\xd0\\xb3\\xba\\x22\\x77\\x22\\xcc\\xcd\\x8a\\x4d\\x3e\\x0d\\xee\\x4d\\x04\\x24\\xdd\\x74\\xb9\\xd1\\xe9\\xef\\x77\\xb4\\x1c\\x5f\\x0c\\x10\\xf1\\xb5\\x9d\\x05\\xfe\\x56\\x93\\x53\\x45\\xcf\\xc2\\x4f\\x91\\xbc\\x92\\x75\\x37\\x2d\\xf5\\x66\\xa5\\xd7\\xd7\\xb7\\x3b\\x57\\xea\\x71\\x08\\x49\\xd1\\xed\\xdf\\x75\\x74\\x40\\x15\\x1a\\x57\\x5e\\xa3\\xe3\\xbe\\x57\\x63\\xbd\\x51\\x6d\\xd5\\x7b\\x7c\\xd8\\x41\\xe0\\x28\\xb3\\xcb\\x0e\\x7a\\xb9\\x80\\xd5\\xcd\\x88\\xd8\\x7e\\x95\\xc0\\xf7\\xfe\\xc6\\xec\\x03\\x86\\xcf\\x28\\x85\\x44\\x11\\x7b\\xbb\\x65\\x0d\\x9d\\x2f\\x46\\xda\\x36\\xe3\\xae\\x64\\x56\\x31\\x0a\\x17\\x76\\xb8\\xfd\\xde\\x4f\\xf9\\x50\\x0f\\xe7\\xde\\x16\\xe7\\xc7\\x2b\\x15\\xfc\\x48\\x80\\xcd\\x7e\\x88\\x78\\x0f\\xa4\\x52\\xf2\\x6a\\x64\\x02\\xb8\\x1b\\xb6\\x37\\xaa\\x51\\x1a\\x29\\x07\\xcc\\x34\\x8c\\x7a\\x2e\\x0c\\x36\\x1b\\x1c\\xd0\\x13\\x17\\x62\\x96\\x46\\x3e\\xf1\\x93\\xf8\\x08\\x9a\\x39\\xbe\\x44\\x48\\x53\\x09\\xe8\\x15\\x50\\x77\\xd2\\x80\\xbf\\x03\\x81\\x6f\\xef\\x96\\x28\\x10\\x7b\\x3b\\x65\\x3e\\x02\\x91\\x22\\xe1\\x16\\x03\\x98\\x70\\x0b\\xda\\xd5\\x5b\\x87\\x85\\xfd\\xd6\\xc8\\x8a\\x23\\x24\\x0b\\x28\\x1b\\x51\\x38\\x43\\x40\\xa5\\x8b\\xc3\\x20\\xce\\x02\\xf2\\x29\\xb8\\xd0\\x76\\x92\\x55\\x99\\x6d\\x36\\xbf\\xb1\\x0b\\x7d\\x38\\x87\\x5c\\xb4\\x79\\x92\\x5d\\xbb\\x10\\xfb\\xe9\\x7b\\xeb\\xc8\\x44\\xca\\x09\\x91\\x27\\x4e\\x2f\\xde\\xfb\\x0d\\xd4\\x58\\xc9\\x2e\\x3c\\xe0\\x8f\\x67\\xd3\\x7f\\x6e\\x60\\x97\\x98\\x69\\xb5\\xb2\\x4b\\xf8\\xeb\\xd8\\xf9\\xb0\\x92\\xa1\\x0f\\x07\\xa6\\x62\\x83\\x7f\\x5c\\x96\\xf2\\x09\\xea\\xcb\\xd0\\x98\\x2f\\xdf\\xec\\x6c\\x7a\\x7b\\x07\\x54\\xe6\\xcb\\x2e\\x97\\x2c\\x68\\x4f\\x96\\x93\\xce\\x5f\\x91\\x31\\xc3\\x4d\\x49\\xcd\\x37\\x92\\x08\\x24\\x39\\x85\\x2c\\x32\\x48\\x2a\\xf6\\xf5\\x2e\\xfd\\xcc\\xdf\\x28\\xbe\\x42\\x39\\x57\\x84\\x87\\x94\\xf5\\x1d\\x28\\x4a\\x00\\xff\\xef\\xaf\\xd7\\xff\\xa7\\xc0\\xfb\\x7b\\x93\\x7f\\x50\\x27\\xbb\\xa2\\x4e\\x25\\x66\\xbf\\xff\\xf1\\x63\\x68\\x05\\x3f\\xb2\\xf8\\x7d\\x86\\x14\\x37\\x5c\\xc5\\xa2\\xc2\\x48\\x23\\x77\\xc1\\x59\\x13\\x19\\x9a\\x26\\xae\\xf6\\x2a\\x40\\x00\\xa2\\xac\\xec\\x5d\\xbc\\xe2\\xcc\\xa1\\x97\\x22\\x58\\xa8\\x14\\x23\\x28\\xd5\\x9b\\x4c\\xa4\\x20\\xaa\\x26\\x48\\xf3\\x89\\x60\\xe2\\xc3\\xfe\\xaa\\x2e\\x1c\\x0d\\x15\\xee\\xf8\\x3e\\x95\\xa8\\x5f\\xad\\xbe\\x9c\\x2c\\x65\\x3f\\x1e\\x99\\xf9\\x36\\x9f\\x58\\x71\\xcf\\xf8\\x0a\\xa1\\x1e\\xf3\\xf5\\x39\\x9d\\xab\\x54\\xdd\\x76\\xd7\\xc3\\xca\\x3c\\x85\\x71\\x4f\\xba\\x78\\x34\\xab\\x56\\xcd\\xaf\\xed\\x3f\\x1a\\x8d\\x65\\xc3\\x55\\x5a\\x41\\xf0\\x7a\\xa9\\x74\\x44\\x07\\xe7\\xc7\\x96\\xa4\\x58\\x2c\\xeb\\x77\\x1a\\x47\\xf6\\x49\\x57\\x5f\\x5c\\xb6\\xeb\\x14\\xe9\\x4d\\xfd\\x2a\\xfb\\xed\\x0c\\xec\\x77\\x04\\x2a\\x82\\x28\\x0b\\xb9\\x15\\x70\\x18\\x5a\\x88\\xdc\\x5e\\x80\\xb4\\x66\\x78\\x6a\\x0d\\x35\\x44\\x10\\x46\\x85\\xb2\\x40\\xc0\\xd7\\x3e\\xce\\x8d\\x8b\\x2a\\x50\\x08\\x45\\x86\\xdb\\xdb\\xa7\\xa3\\xed\\x33\\x20\\xf6\\x1f\\xe3\\x29\\x73\\xdf\\x68\\xa8\\xf9\\x5f\\xc9\\xa7\\xa2\\x4e\\xec\\xf6\\x14\\xf6\\xfc\\x38\\x87\\x93\\x18\\x71\\x05\\x3f\\x7a\\x10\\x13\\xa5\\x7c\\x6d\\xd2\\xe8\\x34\\x7a\\xfc\\x4e\\xd4\\x16\\xfa\\xb5\\xc8\\x65\\xba\\x9b\\xb6\\x51\\xb6\\xbd\\x75\\x56\\x26\\x0a\\x9d\\xb4\\xf2\\xbb\\xe4\\xb8\\xdf\\x46\\x8f\\xd6\\x47\\x37\\x75\\x96\\x26\\x3f\\x41\\x33\\xd5\\x0f\\x71\\xda\\x3e\\x23\\xce\\xf9\\x0e\\x08\\xd0\\x63\\xcb\\xcb\\xc5\\x36\\x8b\\x36\\x8c\\x47\\x23\\xe7\\x47\\x34\\xd0\\x17\\xdc\\x4b\\xf6\\x3f\\xdd\\x78\\xe9\\x7a\\xeb\\x88\\xd4\\x1b\\x93\\x3c\\xd2\\xec\\x73\\x57\\x49\\xb3\\x8e\\xe0\\x5a\\xaf\\x47\\x94\\x49\\xf2\\xc6\\x79\\x6c\\x99\\x2d\\x0a\\x74\\xc5\\x4f\\x08\\x84\\x86\\x85\\x84\\x8a\\xb1\\x55\\x30\\x7f\\xf8\\xe9\\xcf\\x10\\x51\\xe7\\x0f\\xf9\\xd5\\x64\\x0d\\xd0\\xa7\\x4c\\xc2\\x2f\\x77\\x3a\\x1f\\x6a\\x4b\\x6c\\xf4\\x8e\\x6f\\x88\\xc5\\x43\\x7f\\x10\\x95\\xcf\\x48\\xea\\x9f\\x5f\\xd8\\x06\\x75\\x1c\\xcb\\xf0\\x47\\x4a\\x50\\x0f\\x03\\x68\\x86\\x8b\\x8b\\xb1\\xcd\\xa2\\x53\\x13\\xeb\\x6b\\xf4\\x95\\xf2\\x72\\x73\\x8a\\x3d\\xef\\xd6\\xda\\xca\\x30\\x1e\\x03\\xab\\x2b\\xc6\\x15\\x9e\\x6f\\x6f\\x9e\\x27\\x33\\x71\\x85\\x39\\x1e\\x1e\\x5c\\xdf\\x36\\x3c\\x96\\x23\\xd8\\xdd\\xf4\\xd0\\x91\\xe2\\x70\\x5c\\xad\\xb5\\x5a\\x7d\\xc4\\x67\\x24\\x42\\x71\\x29\\xd2\\x54\\xdb\\x2e\\x57\\x1c\\x30\\x65\\xe6\\x39\\xc8\\x78\\x88\\x25\\xfe\\xf1\\x83\\xbc\\xe9\\x09\\xd6\\xdb\\xe1\\x92\\x78\\x03\\x61\\x04\\x35\\x22\\xaf\\xa0\\xb2\\x8c\\xeb\\xa2\\x48\\xcc\\xd0\\xd3\\x97\\xc5\\x34\\x7d\\xb0\\x83\\x28\\x1b\\x32\\x05\\xfc\\xd2\\x7e\\x22\\x52\\x63\\x90\\x82\\x68\\x38\\x3a\\x90\\xc0\\xeb\\xee\\x91\\x48\\xfa\\x02\\xc6\\xf4\\xa1\\x26\\x51\\x93\\x2b\\x11\\xd6\\xa0\\x40\\x63\\xdb\\xc6\\x43\\x85\\x52\\xa4\\xc5\\xd7\\x2e\\x7b\\x29\\xcb\\x57\\x63\\x83\\x7b\\x5c\\x61\\x5a\\x15\\x44\\x0e\\x70\\x36\\x96\\x62\\x5a\\xea\\x1e\\x60\\x0a\\xa2\\x85\\x91\\xb6\\xe5\\x09\\xc2\\xd0\\xcd\\xcf\\x13\\xe7\\x93\\xec\\xa5\\xd0\\xcc\\xcb\\x02\\x14\\xb7\\xce\\xa9\\x1a\\xfc\\x62\\x7d\\x61\\xb1\\x66\\x3b\\x8a\\xe9\\xb9\\x2f\\x5e\\x44\\x64\\xc6\\x17\\x5c\\xda\\x32\\xc9\\xe7\\x13\\x1f\\xfc\\xac\\xcf\\x7b\\x6f\\x13\\xeb\\x4f\\xf5\\x63\\xe8\\xfe\\x65\\xbb\\xf7\\xe4\\x63\\xe0\\x32\\x93\\xcd\\x91\\xe5\\x9f\\x09\\x24\\x43\\xbf\\x56\\xbd\\xbc\\x6b\\x6f\\xb9\\x76\\x46\\x0a\\x75\\x3c\\xf9\\x2d\\x28\\xf4\\x71\\x89\\xf9\\xd2\\xb0\\x5b\\x11\\x70\\x36\\x58\\xf7\\xeb\\xc7\\xc6\\xa3\\xf8\\xf0\\xd1\\x03\\xab\\x44\\xf6\\x7f\\xed\\x6e\\x10\\x74\\x37\\x4f\\x9c\\xb7\\xb0\\x3f\\xfd\\xa3\\x53\\xbd\\x2f\\x64\\xe6\\x7c\\x0f\\x5f\\x38\\x33\\xa8\\x9f\\x7a\\x31\\xac\\xda\\x86\\xca\\x98\\xed\\x2c\\xa4\\xa4\\xab\\xbf\\x94\\x27\\x7c\\x09\\xc8\\x6f\\xc0\\xf2\\xdb\\xec\\x67\\x5a\\x89\\x82\\xed\\xaf\\x26\\xe8\\xcf\\x10\\x74\\x3e\\x08\\x62\\x6a\\xf9\\x74\\x80\\xf7\\xa0\\x96\\xdb\\xa9\\xa2\\x37\\x77\\x2d\\xa5\\xe5\\xb7\\x94\\x2f\\x86\\x8e\\xa2\\x14\\x20\\xdf\\xb0\\x1d\\x7f\\xc3\\xec\\xf3\\xb8\\xf0\\x54\\xad\\xc5\\x63\\x35\\x95\\x8c\\xd7\\x7c\\x29\\xe3\\x63\\xb9\\xe7\\x07\\xf2\\x25\\xb2\\x11\\x9c\\xed\\x7c\\xd3\\xd2\\x0a\\xdc\\xf2\\xe5\\x4e\\x58\\xd1\\xdf\\x9e\\xff\\xfc\\xfc\\x02\\x82\\xa5\\xd9\\x6a\\x68\\xc8\\xc8\\x83\\xcb\\x79\\x35\\xb5\\xa8\\x40\\xb1\\xfa\\x37\\x4e\\x8c\\xba\\x32\\x84\\x2e\\x24\\xf8\\xef\\x6d\\x7e\\xb3\\xa8\\x59\\xeb\\x0d\\x75\\x22\\xf9\\xb7\\xda\\x82\\xdb\\x49\\xe8\\x7a\\xf9\\xbf\\x9b\\xc6\\xb6\\x09\\xbe\\x18\\x44\\x7b\\x6d\\x71\\x23\\x40\\xb9\\x6d\\xaa\\x84\\x31\\x54\\xfa\\x64\\xd7\\xb9\\xb8\\x31\\x94\\x35\\x96\\xb2\\x25\\x64\\x72\\x35\\x84\\xc9\\x4e\\x6e\\x35\\x62\\x8c\\xa5\\xf7\\xb6\\xa4\\xa0\\x89\\x95\\x12\\x54\\x4d\\xce\\xab\\x18\\x19\\x10\\xe6\\xbf\\x0a\\x8c\\x45\\xcc\\xa4\\x31\\xc3\\x62\\x00\\x84\\xe5\\x19\\x13\\x68\\x99\\xff\\x00\\x60\\x58\\xd1\\x0c\\xde\\xff\\x75\\x9f\\xfd\\x0a\\xa8\\x52\\xaa\\x94\\x89\\x97\\x7b\\x80\\xf2\\xcf\\x40\\x0b\\x49\\x5f\\x76\\x2c\\x3e\\xa4\\xda\\xdd\\x2f\\xff\\xd1\\x7b\\x86\\x26\\xc6\\xe8\\xa0\\xa6\\x4a\\xc0\\xfb\\x7f\\x66\\xbf\\x93\\xbe\\x42\\x75\\xdb\\xba\\x83\\x4d\\xef\\x77\\x32\\x8c\\xd7\\xf2\\xbb\\x54\\x7e\\x15\\xdc\\x2b\\xf4\\x1e\\xac\\x6f\\x7f\\x4b\\x74\\x96\\x25\\xf0\\xdf\\xb9\\x93\\xe1\\x2d\\xa7\\xae\\x1a\\x30\\xa9\\xe4\\x9c\\x87\\x77\\x16\\x7f\\x7c\\xda\\x1a\\x4d\\x70\\xc3\\xa7\\x82\\xfe\\xbb\\x64\\xbe\\x4f\\xd0\\x95\\x3c\\x84\\x25\\x94\\x8a\\xd5\\xf4\\x16\\x47\\x93\\xee\\x09\\xea\\x17\\x16\\x24\\xb8\\x85\\x43\\xee\\x6d\\xd0\\xdd\\x89\\x56\\x33\\xaf\\x59\\x5f\\x25\\xf2\\xd9\\x9f\\x7c\\x8a\\x7a\\x7a\\x21\\x76\\x84\\x04\\x30\\xdc\\xd6\\x5a\\x82\\xfb\\x4d\\x1d\\xc5\\x73\\x33\\x0a\\x7b\\x61\\x0c\\x91\\x0f\\xb6\\x5a\\x02\\xbd\\x6d\\x92\\x92\\x9a\\x47\\x5a\\xda\\xa0\\xcc\\x8f\\xa0\\x76\\xe1\\x2b\\xc8\\xc5\\x92\\xd9\\xa9\\xa1\\xc6\\x0c\\x4b\\x96\\x81\\x09\\x5e\\x9f\\x2a\\x05\\x95\\xc6\\x5d\\xa6\\xdd\\x83\\x49\\x44\\xc8\\xaf\\x5c\\x38\\x07\\xbe\\x73\\xc1\\x1f\\x68\\x63\\xd4\\xf0\\x14\\x1b\\x27\\x5e\\xe6\\x28\\x69\\xd0\\x32\\xc3\\x27\\x70\\x00\\x4a\\xdf\\x5b\\x9f\\x29\\x38\\xf8\\x02\\xa0\\x6e\\x52\\xb9\\xc3\\xa7\\x2a\\xcb\\x07\\x58\\x86\\x3a\\x6a\\x2a\\xeb\\x77\\x52\\x74\\xb1\\x62\\x56\\x7c\\xc3\\x12\\x81\\x68\\xea\\xfe\\x20\\xec\\x5c\\xc1\\x30\\xde\\xf8\\xde\\x3a\\xb2\\xcf\\x1d\\x15\\x0e\\xef\\x4b\\xe6\\xcf\\x60\\xee\\x9f\\xba\\x3b\\x95\\xcb\\xf1\\x9e\\x73\\x77\\x67\\xb3\\xa2\\xf8\\x9f\\xa6\\xad\\x6f\\x8b\\x81\\x00\\x0d\\xbe\\xc4\\x75\\xd0\\xa8\\x71\\x55\\xde\\x04\\x96\\x23\\xf6\\x3e\\x2f\\x50\\x79\\xb2\\x9c\\xbc\\x39\\x88\\xe1\\xd3\\x7b\\xb4\\xee\\x9e\\x5e\\x24\\xc2\\x9d\\xa1\\x04\\x6c\\x97\\xf5\\x41\\xb2\\xdf\\x43\\xda\\x7e\\x2c\\x6c\\x84\\x41\\x97\\xc6\\xe5\\x59\\x28\\x36\\x7a\\xc4\\x0f\\x45\\x9b\\xb4\\xfa\\x71\\xbc\\x68\\x94\\xf7\\x59\\xf1\\xa9\\x29\\x0d\\x7f\\xb2\\x0b\\xf1\\xde\\x94\\xd6\\xbc\\xd1\\x93\\x07\\xd5\\x17\\xe1\\x45\\x75\\xcd\\x41\\xaf\\xff\\xc6\\x6c\\xab\\x91\\x5f\\x06\\x47\\x24\\x79\\xe0\\x67\\x8e\\x92\\x56\\x62\\x3c\\x35\\x26\\x72\\xd1\\xc5\\xd4\\xc0\\x4d\\x5d\\x91\\xe3\\x51\\xfd\\xa7\\x46\\xf7\\x76\\x58\\x03\\x75\\x0b\\xb5\\x4a\\xf7\\x54\\xff\\x2b\\x2f\\x1e\\x70\\x89\\xed\\x06\\x37\\x77\\xd5\\x94\\x0c\\xd6\\xf9\\xd2\\x0e\\x44\\xab\\x7d\\x5f\\x80\\x02\\xee\\xdc\\x5b\\xa8\\x25\\x6c\\xb5\\x42\\x8e\\x46\\xc5\\x94\\x68\\xc7\\x94\\xb3\\xab\\x5f\\xf5\\xde\\xa4\\x8a\\x8a\\x49\\xbf\\xda\\xc6\\x77\\x48\\x5a\\x4f\\x90\\xca\\x58\\xb7\\x99\\x4c\\x70\\x48\\xaf\\xa9\\x11\\xb6\\xe2\\x7c\\x77\\xdd\\xf2\\xf7\\x48\\xe3\\xe9\\xee\\xc8\\xb3\\xa3\\xb0\\x5f\\x39\\x22\\xd4\\xc1\\x41\\xbf\\xd4\\x63\\x14\\x92\\x0e\\x5c\\x06\\xd0\\x90\\x79\\xdc\\x3b\\xf2\\x2b\\x12\\xa5\\x9e\\x82\\x6b\\xab\\x1f\\xca\\xd7\\x91\\x5f\\xeb\\xc2\\x72\\xa9\\x3e\\xc5\\xae\\x89\\xfb\\xbc\\x41\\x72\\x8e\\x76\\x9a\\x5f\\x89\\x36\\x21\\xf4\\x91\\x77\\xbe\\x07\\x7d\\x9f\\x62\\x02\\xe1\\xe9\\x25\\x96\\x79\\x35\\x35\\xa6\\xa6\\xb4\\x8b\\xea\\xac\\x48\\x59\\x0d\\x72\\xf2\\xcb\\xc5\\x46\\x27\\x69\\x11\\x8c\\xa0\\x58\\xa7\\x71\\xe4\\xb6\\xc6\\x86\\xbd\\x1d\\xa0\\xaa\\xe2\\x42\\x73\\xba\\x0f\\x9a\\x69\\x50\\x0c\\x59\\xf9\\xd8\\x70\\x10\\xf8\\x7b\\x18\\x87\\x55\\x8b\\xf4\\x7c\\xbc\\xa8\\xe3\\x47\\x5c\\x7c\\xd3\\x6b\\x27\\x36\\xd1\\xf4\\x81\\xd0\\x19\\xcb\\xfe\\x48\\x35\\xfd\\xef\\x0c\\x43\\x5f\\xec\\x21\\xea\\x65\\x54\\xce\\x6d\\x25\\x65\\x3b\\xdd\\x25\\xe5\\x3f\\xa9\\xa1\\x6a\\x5a\\x05\\xe8\\xe6\\xc2\\x26\\x18\\x1c\\x09\\x94\\x80\\x8e\\x86\\xe9\\xb5\\xd7\\x06\\x8a\\xc0\\xb1\\x57\\x93\\x99\\xe5\\x22\\x1d\\x09\\x0c\\x85\\x1d\\xc9\\x0b\\xef\\xda\\xa9\\x14\\x44\\xff\\xe7\\x8b\\xa9\\x3c\\xd9\\x45\\x6f\\xe5\\x49\\x6a\\xcb\\x54\\xfc\\x7b\\xba\\x43\\x56\\x9b\\x16\\xa3\\x11\\x63\\xbf\\xab\\xb7\\x02\\xdc\\x5f\\xa1\\x11\\xd2\\xa4\\x94\\x8e\\x12\\x1a\\x34\\xd0\\x78\\x78\\xc8\\x4a\\x8f\\xf9\\xcc\\x35\\x47\\x6d\\x21\\xb4\\x83\\x23\\xd6\\x87\\x16\\x6f\\xbf\\xce\\x2e\\x4d\\x9f\\x1d\\x72\\x9b\\x28\\xe5\\x7a\\xcc\\x3a\\x7c\\x7f\\xda\\x23\\x4f\\x4c\\x38\\xe4\\x97\\x6b\\x61\\x30\\xb9\\x70\\xe9\\xbc\\xee\\x02\\xcb\\x63\\x56\\x9d\\xa9\\xc7\\x8c\\xda\\x33\\x6f\\xcd\\x99\\xd8\\x09\\x82\\xf4\\xdf\\xbb\\x20\\x2b\\x05\\xc3\\x49\\x78\\x43\\xd6\\x52\\x2a\\xe5\\x59\\xc4\\xe0\\xa6\\x7c\\xa8\\x77\\x50\\x8d\\xcd\\xfe\\x81\\xa8\\xed\\x99\\xee\\x9a\\x1a\\x30\\x9e\\x6c\\x3f\\xe3\\x0b\\x01\\x82\\x27\\x65\\x06\\x5e\\xa3\\x92\\x36\\xd7\\x55\\x28\\xf2\\xd4\\x1e\\x77\\x4a\\x97\\xb7\\x9c\\xae\\xf6\\xd4\\x35\\x23\\xbb\\x7a\\xdf\\x78\\x44\\x76\\xcc\\x00\\xe1\\xa3\\xa0\\x5d\\x4b\\x07\\xbb\\xdd\\xf5\\x13\\xc6\\xc3\\x26\\xe5\\xd4\\x26\\xd1\\x2f\\xb5\\x3e\\xb5\\xfa\\x40\\x45\\x06\\x83\\x26\\xa7\\x04\\xc0\\xd0\\x5e\\x68\\x71\\x99\\x61\\xa1\\xd5\\xf2\\x21\\x03\\x67\\x02\\x70\\x6d\\x0b\\x61\\x13\\xeb\\x5e\\x2a\\x96\\x3d\\x05\\xef\\x69\\x11\\x3a\\xec\\x00\\x76\\x50\\x90\\x16\\x72\\x84\\x59\\xfc\\xcd\\x06\\xd0\\xbc\\xe8\\xf9\\x53\\x27\\xdb\\x56\\x7f\\xf5\\x6c\\x18\\xed\\x35\\x0b\\xdb\\x65\\x9b\\x15\\x18\\xca\\xc0\\x56\\x91\\xa6\\xf5\\x5a\\x55\\xb8\\x2c\\xec\\x36\\x45\\x41\\xf5\\x8d\\x9c\\x6d\\x61\\x07\\x38\\x8d\\xd2\\xa5\\x7d\\x3a\\x0b\\xb9\\x95\\x5a\\xfa\\xf3\\xd8\\x30\\x1e\\x88\\xe4\\xd8\\xd2\\xa6\\x85\\xd1\\x02\\x0d\\x61\\xc1\\xf4\\x03\\x58\\x02\\x52\\x55\\x57\\xeb\\x75\\xd2\\xb6\\x45\\xc5\\xd6\\x4a\\xf4\\xde\\x68\\xf5\\x57\\x11\\xc2\\x6d\\x9e\\x23\\x82\\x11\\x04\\x35\\x41\\xea\\x56\\x1f\\x5d\\x14\\xc4\\xa3\\xbb\\xf7\\xc1\\x65\\xd0\\xa4\\x23\\xea\\xbf\\x33\\x9f\\x8e\\x45\\xa9\\x65\\x9e\\x6d\\x80\\xaa\\xc9\\x4f\\x98\\x82\\x9c\\x9c\\xaa\\xf9\\x47\\x53\\x6d\\x5a\\x59\\x01\\x1b\\xcf\\xe7\\xdf\\x32\\xd9\\xbd\\x35\\x20\\x0e\\x8f\\xe7\\x7f\\x78\\xa7\\x35\\x8a\\x79\\xb2\\x2f\\x94\\x8f\\xe8\\x22\\xc8\\x8a\\xc3\\x4a\\x71\\xdd\\x11\\x16\\xf3\\x74\\x81\\x7f\\xa6\\xce\\x20\\xc9\\x65\\xd9\\xf7\\x32\\x9a\\x5f\\x8a\\xa1\\x5b\\xf4\\x8c\\xbc\\x1f\\xbe\\x9b\\xf5\\x51\\xea\\x72\\xe2\\x97\\x37\\x8b\\x4e\\xb0\\x69\\x62\\x12\\xd8\\x12\\x68\\xb4\\xfa\\x5d\\xb1\\x21\\x5d\\xcc\\x13\\xd6\\xe3\\x70\\xae\\x6a\\x60\\x8c\\xf0\\x48\\x2d\\x04\\xf4\\x12\\xeb\\xd0\\x48\\xe4\\x5b\\x2e\\x1f\\xaa\\x95\\xc6\\xcb\\x02\\x38\\xad\\xd1\\xec\\x60\\x20\\x3a\\xac\\x16\\x26\\x45\\xa2\\x5a\\x39\\x67\\xfa\\x79\\xa8\\xa7\\xfb\\xa8\\x79\\xbc\\x6c\\x90\\x7d\\x64\\x64\\x60\\x3d\\x97\\x81\\x09\\x79\\x86\\x2d\\x60\\xb8\\xeb\\x29\\xa1\\xad\\xcf\\x20\\x8c\\x1b\\xb8\\x8c\\xda\\x75\\xa6\\xe0\\x1a\\x6c\\xad\\xf1\\xe7\\x66\\x33\\x2b\\x4f\\xd9\\xcc\\xee\\x68\\x24\\x4e\\xf8\\x7c\\xf8\\x41\\x43\\x9d\\xb2\\xc3\\xf5\\xed\\x16\\x67\\xe3\\x0b\\xf2\\xb4\\xd0\\x2f\\x1c\\xc9\\x08\\x40\\x6a\\x46\\xc9\\x04\\x58\\xb2\\x34\\x5c\\xa8\\x48\\xd7\\x88\\x97\\x43\\xcf\\x17\\x41\\xbb\\x52\\x1b\\x44\\xf2\\x27\\xa6\\x78\\x9f\\x42\\xb7\\x2a\\x54\\x11\\x68\\x67\\xa1\\x78\\x1b\\xb2\\xd3\\x5a\\x34\\xa0\\x3e\\x61\\xf6\\xfb\\x7e\\x8f\\xb2\\x1e\\x01\\x5e\\xd5\\xae\\x28\\x99\\x49\\xd1\\x03\\x4a\\x05\\x36\\xca\\x35\\x5c\\xea\\x44\\xb4\\xd9\\xa7\\x79\\x7a\\xde\\xd3\\x59\\xaf\\x9f\\x0f\\xe4\\x07\\x24\\x92\\xbd\\x19\\xe7\\xd1\\x27\\x95\\xa6\\xfd\\x85\\xb6\\xc8\\x12\\x1b\\xc6\\x2c\\x51\\x7e\\x16\\xbf\\x3a\\x47\\xd1\\xce\\xb0\\xe5\\x83\\xb4\\x89\\x11\\x17\\x57\\xda\\xd1\\x9c\\x6f\\x01\\x36\\x60\\xe5\\x36\\x09\\x2f\\xd7\\xed\\x82\\x23\\x2d\\xdf\\xc5\\xe9\\xd2\\xbd\\x4f\\xbc\\x76\\x70\\xd3\\xe2\\x70\\xa1\\xa2\\xa9\\xc9\\xb1\\xc1\\xcb\\x25\\x18\\xa2\\x05\\xd3\\x2d\\x87\\x7f\\x3a\\x30\\x5d\\xaa\\xde\\xfd\\x77\\xcb\\x7b\\x49\\xa5\\xb8\\xe5\\x7e\\x53\\x13\\xb3\\x05\\x4f\\x8e\\xa5\\x5b\\x11\\x0a\\x92\\xc9\\x57\\xd0\\x5f\\xca\\xb1\\xb7\\x1e\\x71\\xb0\\x55\\x6d\\x41\\x5d\\x59\\x0d\\x66\\x05\\x5f\\xff\\x9d\\xdf\\x50\\x11\\xbb\\x88\\x16\\x68\\x3b\\xba\\x3a\\x5b\\x3f\\x8f\\xad\\xf9\\x94\\xa0\\x88\\xce\\xea\\xf5\\xe7\\x86\\xde\\xe7\\x8f\\xa8\\x58\\xb8\\x09\\x89\\x5f\\x6d\\x44\\xc8\\x3b\\xb3\\xf1\\xcf\\x72\\x80\\x0d\\x50\\xaa\\x25\\x6d\\x91\\xa2\\x68\\x4b\\xf2\\x97\\xa1\\x3f\\xf8\\xfa\\x4b\\xff\\xbb\\x82\\xdc\\x5b\\xd5\\x4e\\xf5\\xa9\\xfa\\x4a\\xf2\\xa1\\xa6\\x50\\x7d\\x10\\xc0\\x17\\x91\\xe7\\xca\\xa5\\xd6\\x1b\\x41\\x97\\xa5\\x0e\\x64\\x34\\x80\\x18\\xb2\\x16\\xdf\\xf7\\x6a\\x6e\\xdb\\x68\\x35\\x5d\\x05\\xe2\\xc4\\x9d\\xcc\\x8a\\x7a\\xe5\\xe5\\xb5\\x27\\x52\\xc4\\x31\\xd5\\xb4\\xbe\\x2f\\xdd\\x7c\\xf3\\x6f\\x7c\\xa1\\xdb\\x63\\x6c\\x19\\x32\\x5c\\x30\\xf2\\x26\\x33\\xa6\\x06\\xdd\\x79\\xd8\\xc9\\x36\\x79\\x0a\\x37\\x7b\\xad\\xda\\xa5\\xc9\\xa9\\x89\\x60\\x34\\x12\\xdf\\x4b\\xb0\\x2a\\xc9\\x1d\\xd8\\x4e\\x94\\xcf\\x51\\x55\\xed\\x0d\\xc1\\x35\\x89\\x6a\\x81\\x69\\x1b\\x2c\\x8d\\xf2\\x4b\\x18\\x6a\\x21\\x7b\\x59\\xfc\\xef\\xca\\x8b\\x4a\\x58\\xe8\\xac\\x1c\\xec\\x76\\x37\\x42\\xd7\\xf8\\xda\\xc6\\xf7\\x0a\\x86\\x9a\\x80\\xe9\\x88\\x25\\x09\\x87\\xff\\x10\\x18\\x91\\x93\\xd5\\x7e\\x91\\xdf\\x6f\\xac\\xcf\\xd9\\xf8\\xc6\\x48\\xe4\\x68\\x2a\\xed\\xbc\\xfe\\x0c\\x1a\\x9d\\xc7\\x1f\\xbe\\x3d\\x3a\\x1f\\x83\\xeb\\x94\\x56\\x19\\xfd\\x22\\x3c\\xaa\\x92\\xc4\\xfc\\x33\\x17\\xb9\\x1b\\x8e\\x31\\x9f\\x77\\x03\\x55\\x35\\xf1\\xf3\\x9f\\x0e\\xca\\x76\\x5f\\x51\\x35\\xbd\\x4f\\xda\\x59\\x34\\x58\\xc8\\x50\\x3a\\xf4\\xdf\\xf8\\xbb\\x4e\\x9c\\x88\\x5d\\xa7\\xf8\\xe1\\xd5\\x10\\x57\\x09\\x8b\\x50\\xff\\xd4\\xf8\\x54\\xef\\xa6\\xf8\\x9b\\xec\\x90\\xd2\\xf7\\x9b\\x1e\\x50\\x63\\xf6\\xa5\\x64\\xda\\x4b\\xdf\\x75\\xde\\x7f\\xf9\\x56\\x1a\\x00\\x6a\\xaf\\x21\\xc4\\x59\\x4d\\xd1\\x5a\\x60\\x39\\xd6\\xf8\\x71\\xc3\\x63\\xf9\\xde\\x79\\xf4\\x60\\xff\\x0b\\xb6\\x83\\x9f\\x52\\x0d\\x0a\\x01\\x2c\\x23\\x21\\x47\\x70\\xfa\\x21\\x2f\\x5b\\xff\\xbf\\x6f\\xb2\\x43\\x38\\xb4\\x8b\\xef\\x98\\x0c\\x3c\\xc1\\xc4\\x0f\\xcd\\x4f\\x20\\xde\\x6e\\x69\\x26\\xbc\\x7e\\xfd\\xc1\\xf7\\xb0\\x1b\\xc1\\x24\\x08\\xf9\\x81\\x1d\\xbf\\x0b\\xcb\\x8a\\x96\\x01\\x78\\x40\\x88\\xd5\\x9a\\x1f\\x18\\xd7\\x5e\\x95\\x54\\x8b\\x3b\\x12\\xf8\\xab\\xb2\\x6f\\x71\\xaf\\x9f\\xb9\\xc6\\x21\\x26\\xf5\\x4c\\xd2\\xc2\\x01\\x9a\\x9e\\x4f\\x0c\\xa9\\xdf\\xb3\\x77\\xcf\\x0e\\xf1\\x90\\x2d\\xdd\\x2d\\x0e\\x11\\xfc\\x05\\x45\\xee\\xb7\\x95\\xf1\\xb6\\xac\\x2e\\x37\\x2e\\xf8\\x4e\\x0e\\xe8\\xe2\\xca\\xbc\\x60\\x3b\\x48\\x99\\x1e\\x62\\xc6\\xef\\x2d\\x93\\xc4\\xbb\\x22\\x8b\\x54\\x17\\x72\\x1a\\xa3\\x1e\\x51\\x73\\x0c\\x47\\x91\\xf5\\x1a\\xc8\\x37\\xbb\\x6c\\x2d\\xd3\\x48\\xd0\\x61\\xc4\\x24\\xc4\\x37\\xb7\\xdf\\x22\\x4d\\xce\\xe7\\x88\\x35\\x7e\\xab\\xff\\xe5\\x79\\xc8\\x04\\x42\\xd3\\xfd\\x4e\\x62\\x84\\x21\\x70\\x5e\\xd0\\x5e\\x8e\\x59\\x36\\x2a\\x3f\\x0b\\xff\\xc2\\xef\\x7f\\x8e\\x56\\x62\\xf5\\x15\\xbf\\xa4\\x54\\xc4\\x76\\x6c\\x2e\\x66\\xc7\\x07\\xc1\\x1f\\xfe\\xe6\\x7f\\x99\\x08\\xaa\\x45\\x32\\x2a\\xb4\\x31\\x97\\xa4\\xae\\xd9\\x0a\\x29\\x70\\xb3\\xac\\xf3\\xca\\x26\\x72\\xbc\\x1c\\x65\\x61\\xf8\\x4c\\xdd\\x1c\\x69\\x09\\xd0\\xe4\\x52\\xdd\\x60\\x2c\\xdd\\xac\\x42\\xec\\xd7\\xee\\xbf\\x01\\x06\\xad\\xe2\\xcb\\xdb\\x30\\x3a\\x3b\\x77\\x06\\x61\\x3f\\x7f\\xae\\x5a\\xb8\\x31\\xfc\\x46\\x9f\\x28\\x28\\x5f\\xe0\\xf8\\x99\\xaa\\x51\\xa0\\x62\\x39\\xb1\\x77\\xb7\\x59\\x37\\xdc\\xee\\xdf\\x65\\x00\\xf4\\x41\\xb6\\x9d\\xdf\\xb8\\xba\\x0b\\x7b\\xc7\\x5a\\x7b\\x65\\xac\\x22\\x0c\\xe3\\x1a\\x4f\\xe5\\x44\\xda\\x64\\x52\\x67\\xc4\\xaf\\x5c\\x38\\x6d\\xca\\x98\\x25\\x04\\xee\\x7d\\xe4\\xd7\\x0b\\x14\\x11\\x02\\x1b\\x1c\\x9d\\x36\\xbf\\x3d\\x53\\x7f\\xde\\xea\\x01\\x2a\\x5f\\xc4\\xec\\xb0\\xd4\\xa2\\x22\\xcc\\x71\\x18\\xd4\\x03\\xd4\\xfb\\x31\\xf0\\x9c\\x5d\\xbe\\xc5\\x38\\xe9\\xfc\\x43\\x11\\x46\\x54\\x15\\x57\\xbe\\xfa\\x72\\xfe\\x7e\\x21\\x98\\x1a\\x4f\\xa7\\xfe\\x42\\x4b\\x7e\\xe3\\x77\\x25\\x2e\\xfb\\xeb\\x35\\xaa\\xb5\\x42\\x9d\\x55\\xd3\\x88\\x1b\\xbd\\x88\\x91\\xcb\\xc6\\xaa\\xf0\\x30\\xa3\\xe9\\x0f\\x20\\x7c\\x52\\x6f\\xbf\\x6b\\x9b\\x50\\x96\\x1f\\x66\\xc5\\xb3\\xdd\\xad\\x70\\xf3\\x50\\x0c\\xfc\\xde\\x9a\\xaa\\x62\\xf5\\xce\\x9a\\xea\\x55\\x55\\x61\\xaa\\xd0\\xb7\\x1c\\x14\\xd4\\x48\\x89\\x28\\xcf\\x96\\xdb\\xe7\\xf7\\xbe\\x4e\\xab\\x45\\x5d\\x51\\x22\\x73\\x94\\x6a\\x24\\x87\\xff\\x0e\\x27\\x85\\x54\\xb2\\x23\\xfd\\xb6\\x57\\x9c\\xc4\\x4a\\xf0\\xaa\\x73\\x5b\\x48\\x7f\\x3c\\xec\\xf4\\x86\\x10\\x6e\\xed\\x6f\\x99\\x8b\\xbf\\x12\\x59\\x0f\\xca\\x47\\xb1\\x86\\x0e\\x66\\xd0\\xe6\\x2d\\xc4\\x2a\\x15\\x87\\x89\\x33\\x8d\\x44\\x15\\xfd\\xfe\\xe0\\x61\\x6e\\xd8\\x78\\x53\\x26\\x53\\x62\\xd1\\x9c\\xfe\\xbb\\x57\\xef\\x7d\\x1b\\x55\\x6b\\x98\\x2d\\xcf\\xd5\\x6b\\x42\\x36\\x36\\x96\\xd0\\x79\\x57\\x16\\xe0\\xac\\xf8\\x20\\x9d\\x7b\\x10\\xb1\\x00\\xeb\\x3e\\xab\\x85\\xd9\\xac\\xd3\\x23\\xb6\\xb7\\x1f\\x7c\\x14\\xe1\\xed\\xc7\\xdc\\x76\\xfb\\x63\\xb3\\xb5\\xa6\\xe9\\x82\\x6c\\xd6\\x75\\x23\\x5d\\x86\\xc9\\xd8\\x61\\xeb\\x72\\x3c\\x10\\x46\\x5e\\xfc\\x9d\\x88\\x9c\\xf2\\x35\\x7f\\x99\\x8c\\x41\\x34\\xfa\\xb4\\xfe\\x22\\xe9\\x34\\x14\\xab\\x44\\x3d\\x75\\x0e\\x41\\x5c\\xbb\\x2c\\x54\\x83\\x9f\\xb1\\x12\\x43\\xde\\x8e\\xf2\\xd3\\x9a\\x99\\x34\\xbb\\xa4\\xf7\\x53\\xa0\\xde\\xd2\\xec\\x7d\\xac\\xee\\x35\\x05\\x9e\\x3f\\x93\\xa4\\x83\\x39\\xe2\\xf1\\x81\\xde\\xbe\\x6c\\xf8\\x61\\x66\\x38\\x9f\\x6e\\x46\\xfa\\xaa\\x04\\x63\\xa4\\x0f\\x36\\x0a\\x16\\x27\\x1e\\xd7\\x73\\x6c\\x57\\x66\\x88\\xf2\\x36\\x63\\x4e\\x12\\xde\\x0e\\x61\\x2b\\xcf\\x4a\\x75\\xe7\\x8e\\xbd\\x70\\xee\\xa4\\xec\\xcb\\x17\\x3a\\x21\\x00\\x74\\xc2\\x93\\x80\\x73\\xc9\\xf9\\x7c\\xc8\\xf7\\xc3\\xed\\x8a\\xda\\x26\\xb3\\x15\\x72\\x16\\x25\\x8c\\xa6\\xd4\\xec\\xd1\\xa4\\xa3\\x31\\x62\\x0f\\x92\\xed\\x64\\x20\\x26\\x30\\xac\\x87\\x86\\x56\\x1c\\xae\\x49\\x31\\xa2\\x72\\x5d\\x1e\\x4c\\x42\\x09\\x83\\x61\\x95\\x96\\xf7\\xf4\\x36\\xf5\\x7c\\x30\\xf4\\x7f\\x63\\xea\\x0d\\x50\\x2e\\xed\\x6c\\xc2\\xa9\\x7f\\x25\\x1c\\x59\\xc7\\xe1\\xae\\x3c\\x44\\x76\\xf8\\xae\\x6e\\x10\\x3b\\x5c\\x4d\\xd5\\x8e\\xd7\\xec\\x32\\x0d\\x4d\\xf6\\x6b\\x2d\\x4b\\xbc\\x6a\\x8f\\x55\\x56\\xa1\\x37\\x88\\x7d\\xb0\\xd7\\xfb\\xc2\\xe8\\xc9\\x92\\x49\\xee\\x2e\\xc7\\xb3\\x6c\\x76\\x3e\\xe9\\x21\\x7c\\x06\\x16\\x9c\\xd5\\x1f\\x48\\x4f\\xdd\\x61\\x9f\\x66\\x61\\x7d\\x30\\xae\\xac\\x7a\\x53\\x8b\\x33\\xfd\\x33\\x59\\xbe\\x62\\xe4\\xe6\\x00\\x7b\\x44\\x1e\\x4f\\xc5\\x2e\\xd1\\xf0\\xae\\xa9\\x72\\x91\\x7d\\x9f\\xe7\\x6c\\xe9\\xb9\\xf8\\x39\\x13\\x9a\\x0f\\x0c\\x18\\x69\\x4b\\xe1\\x4a\\x0f\\xdb\\xe1\\x9a\\xbd\\xe7\\xfa\\xb8\\xf7\\x7d\\xb3\\x75\\x3b\\x32\\x43\\xb3\\x62\\xda\\x94\\x71\\x05\\x90\\xb4\\x8e\\x10\\xe6\\xbb\\x43\\x51\\x20\\xc3\\xd9\\x2a\\xd3\\xa5\\x0a\\x18\\xb3\\xeb\\x68\\xe2\\x8c\\x02\\xa6\\xd5\\x92\\xc7\\xab\\xba\\x4c\\xf1\\x00\\xdf\\xe4\\x56\\xdc\\x29\\x4a\\x00\\xed\\x26\\xa4\\xaa\\x3b\\x2c\\x67\\xb7\\x7f\\x2e\\x97\\x7f\\x26\\xa3\\x09\\x4e\\x66\\xb2\\x0c\\x1a\\x22\\x95\\x3c\\x3f\\x24\\xe0\\xb6\\x29\\xa0\\x4c\\xde\\x75\\xec\\xaa\\xeb\\x6b\\x34\\x8c\\x12\\x23\\xf3\\xf0\\x53\\x17\\xbd\\xbc\\x83\\xe1\\x91\\x0c\\x6e\\xb9\\xc8\\xd1\\xc6\\x96\\x3d\\x62\\xa1\\x52\\x1d\\xcc\\x41\\x35\\x73\\x9d\\xc0\\x2b\\xc7\\x5c\\x0a\\xa0\\x75\\x84\\x67\\x88\\x8e\\xaa\\x96\\x1d\\xf3\\x33\\x31\\x19\\x41\\x5e\\x0c\\xff\\x5c\\xe7\\xce\\x7d\\xa2\\xbd\\x48\\x77\\x50\\xb3\\x76\\x65\\x08\\xe4\\x52\\xc8\\x03\\x66\\x38\\x03\\x70\\x91\\x69\\x24\\x53\\x51\\x03\\x5e\\x3f\\x91\\x4a\\x4c\\xe3\\x46\\x50\\xc6\\x11\\x7c\\x03\\x0b\\x94\\xa1\\x18\\x7c\\x8e\\x8f\\x6c\\x4f\\x06\\x6b\\x1f\\x26\\xf0\\x0f\\x7f\\xba\\x75\\xda\\xc4\\x95\\x95\\xdc\\x70\\x50\\x9d\\xaf\\xb5\\x0c\\x1a\\x90\\xa8\\xe8\\x33\\x19\\x9f\\x78\\x7e\\x30\\x61\\xed\\xd3\\x09\\x17\\x76\\xdb\\x06\\x4b\\xe2\\xde\\xa5\\x65\\x94\\x78\\xdc\\x55\\x33\\xc7\\xbe\\x74\\x29\\xd5\\x07\\xea\\x29\\xd8\\x65\\x66\\x32\\x7a\\x10\\x0f\\xfa\\xd8\\x14\\x87\\x15\\xbc\\x3f\\x58\\x4c\\xab\\xa6\\xff\\xd9\\x93\\xa6\\xbc\\x43\\xa9\\xc0\\x8f\\x4e\\x61\\x8f\\x32\\x55\\x4f\\x69\\x3a\\xd5\\xb7\\xb9\\xe7\\xf6\\x79\\x27\\x88\\x12\\x25\\x78\\xaa\\x78\\xe4\\x5c\\x32\\xdd\\x8a\\xf2\\xbe\\xff\\x7f\\xe7\\x8e\\xaa\\x21\\x4d\\x6e\\x7c\\xf9\\x75\\x6b\\x32\\x5b\\x92\\xeb\\xe8\\xe3\\xe5\\xd3\\xbc\\xa9\\xbd\\x4d\\x32\\x7b\\x34\\xf4\\xd9\\x31\\xd2\\x3b\\xc2\\xf8\\x7c\\x92\\x84\\x2b\\x91\\xa2\\xf1\\xa8\\x98\\x39\\xaa\\xd5\\x22\\x49\\x5c\\x6c\\x56\\xc6\\xb6\\x7e\\xb2\\xeb\\xb5\\x44\\xf8\\xa3\\xe3\\x6c\\x26\\x10\\x4d\\x70\\xfc\\x3a\\xbc\\xd1\\x9c\\x42\\x51\\x12\\x75\\xf5\\xf7\\xeb\\x9f\\x70\\xa6\\x09\\x70\\xb5\\x35\\x64\\x52\\x88\\x8e\\x85\\x3f\\x6b\\xe1\\x63\\x49\\xae\\x0a\\xd0\\xe0\\xec\\x8f\\x5e\\xec\\xb6\\xf4\\x75\\x92\\x99\\x48\\x09\\xb3\\x77\\x51\\xab\\xa5\\x57\\x9d\\x15\\x23\\x1a\\x44\\xe8\\x67\\xbc\\xa4\\x5b\\xd3\\x17\\xea\\xac\\x80\\xe2\\x47\\x4d\\x49\\xd4\\x61\\xb7\\x3d\\xb4\\xb1\\x47\\x6d\\xe2\\x0b\\xc0\\x6e\\x82\\x25\\xdb\\xfb\\x1d\\x68\\x7f\\xfe\\x8f\\x66\\x2d\\x7c\\x30\\x6a\\x90\\xe7\\xda\\x92\\xf3\\x16\\x2c\\xc9\\x48\\xf6\\x28\\x25\\x61\\x12\\x11\\x07\\xba\\x5f\\x16\\x0e\\x36\\x4b\\xa5\\x67\\x0f\\xee\\x9e\\xfe\\xd5\\x9c\\xf4\\x94\\x2b\\xad\\x20\\x8e\\xb3\\xd8\\x5f\\x40\\xa4\\xab\\x09\\xf8\\x1d\\x21\\xfb\\x9d\\x7c\\x39\\xf6\\x15\\xa1\\xd5\\xeb\\x27\\x71\\xe2\\xc1\\x7e\\x73\\xec\\x08\\x22\\xd7\\x7d\\xbb\\xd0\\x0b\\xed\\xb5\\xfc\\x59\\x1d\\xfe\\xd2\\x52\\xc0\\xc8\\x41\\x62\\x39\\x45\\x02\\x86\\xed\\x6b\\x05\\x45\\x32\\x4e\\x1e\\xfe\\xd9\\xb3\\x7e\\x81\\xf1\\xb1\\xd1\\xd4\\x7e\\x41\\x4e\\x0d\\xb3\\xeb\\xba\\xa9\\x23\\x53\\x3d\\x8b\\x4f\\xf7\\xbe\\x91\\x48\\xfe\\x8c\\x9b\\xcf\\x97\\xe5\\xcd\\x16\\xef\\x22\\xf7\\xc5\\xe0\\x2b\\x53\\xc7\\x2f\\xf3\\x81\\xa5\\xa7\\xfc\\xe1\\xdb\\xe3\\xb1\\x96\\x6e\\x09\\x01\\x35\\x6a\\xe5\\x4d\\x3b\\x3b\\x2c\\xa6\\x67\\x5a\\x02\\x1f\\x10\\x71\\xaf\\x56\\xb4\\xbd\\x9e\\x9d\\x64\\xae\\x0d\\x42\\x10\\x78\\xaa\\xa9\\xb8\\x8b\\xb8\\xe0\\xa4\\xbf\\x6d\\x65\\xa1\\x04\\x77\\x65\\x4a\\x11\\x24\\x2d\\x98\\xcc\\x1b\\xca\\xd0\\x2c\\xcd\\xa9\\x5f\\x94\\xab\\x5f\\x48\\x5e\\x2b\\x1a\\xf1\\x94\\x3a\\xc6\\x2d\\xd4\\x17\\x37\\x34\\x25\\x11\\x87\\x6a\\xbb\\xd2\\x01\\x8b\\x2f\\xfd\\xff\\xb3\\x51\\x6f\\x3f\\x22\\xdd\\x1d\\x16\\x88\\x23\\xba\\x58\\x17\\xca\\x4d\\x31\\xe3\\xcd\\x68\\xb2\\x66\\x9a\\x7e\\xc6\\x32\\xbf\\x22\\xca\\x9d\\x5d\\xe8\\xb7\\xec\\xeb\\x5b\\xd3\\x34\\x9b\\xc8\\x59\\x21\\x0d\\x0c\\x8d\\xb5\\xd7\\x36\\x6d\\x2e\\xda\\xa9\\x38\\xf7\\xf2\\xeb\\x0c\\x82\\x0a\\x6f\\xb2\\x59\\xa5\\x5a\\xdd\\x23\\xcf\\xcd\\x95\\x89\\x97\\x2b\\xd1\\x1f\\x4a\\x5e\\x9a\\x3f\\xb1\\x34\\x55\\xa7\\x6d\\x4c\\x2b\\xbb\\x51\\x44\\xb7\\x9b\\xfe\\xef\\xb2\\x47\\x34\\x83\\xa8\\x01\\x7e\\x88\\x8d\\xa7\\xbf\\x26\\x3f\\xbd\\xa8\\x81\\x2a\\x31\\xa9\\xb9\\xf1\\xc7\\x96\\xf7\\x4f\\xe3\\x64\\x6f\\x3d\\xb3\\xdb\\x8b\\x1e\\x73\\x06\\x92\\x6f\\xd6\\xee\\x44\\xc1\\xc6\\xca\\x66\\xf3\\x0b\\x9e\\x4d\\x1b\\x97\\x32\\xce\\xc2\\x08\\x26\\x2e\\xd4\\x4d\\xb4\\xc1\\x3c\\x43\\x72\\xcf\\x7b\\x96\\xe1\\x36\\x39\\x47\\x33\\x7e\\xf3\\x81\\x37\\xbe\\x64\\xe4\\x18\\x4c\\x47\\x62\\x07\\x73\\xab\\x70\\x64\\xef\\x9e\\x9d\\xd7\\xb2\\x8e\\x9a\\x21\\x9d\\xc4\\x85\\x25\\xc6\\x09\\x26\\x4c\\x88\\x3c\\x28\\x1f\\x66\\xdb\\x29\\x3d\\x1f\\x1f\\x90\\xe5\\x30\\xb7\\x21\\x81\\x4b\\x0c\\x2d\\xcc\\xc1\\x3b\\x0d\\x2b\\xd5\\x08\\xdb\\xa8\\x6d\\xe4\\x56\\x8a\\x7e\\x3f\\xd1\\x64\\x4f\\x5e\\x7b\\x94\\x65\\x86\\x0d\\x3e\\xb6\\x9f\\x11\\x1d\\xc6\\x4d\\x95\\x57\\x13\\xd6\\x91\\x99\\x2f\\x4c\\x11\\xb9\\x55\\x6b\\x89\\x6b\\x95\\x63\\x03\\x63\\xac\\xd5\\x6e\\x6a\\x72\\xde\\x08\\x1f\\xde\\xa3\\x72\\x6e\\x6d\\x58\\x06\\xdb\\x82\\x8c\\xdb\\x55\\x8e\\x8f\\x1f\\x8e\\x5a\\xed\\x0f\\x75\\x72\\x5c\\xc2\\x51\\xa2\\xdb\\xe8\\x72\\x5d\\x49\\x10\\x05\\xcd\\xac\\xa3\\x05\\xb7\\xb1\\xb7\\xb7\\x3b\\xfb\\xc1\\xfa\\xb6\\xdb\\x39\\x3b\\x11\\xc5\\x86\\x7a\\x67\\x78\\x76\\x54\\x09\\xb3\\xc8\\x0c\\xb4\\xf0\\xe7\\xc9\\xbe\\x93\\xec\\xec\\xa3\\x0e\\x18\\x51\\x81\\x37\\x3f\\x76\\x4e\\x3e\\x67\\x65\\x0c\\xaf\\xd9\\x2d\\x0a\\x29\\x83\\xbf\\x48\\x5e\\xc8\\xe5\\x3f\\xf6\\x34\\x11\\xba\\x3b\\x3c\\x58\\x99\\x25\\x56\\x8c\\x0f\\x98\\x58\\x17\\xc9\\xca\\xc1\\x7f\\xcf\\x14\\x62\\x4c\\xea\\xfc\\x33\\xa9\\x02\\xeb\\xbb\\x1b\\x65\\x85\\x15\\x39\\xfb\\x80\\x34\\x37\\xb4\\x75\\x42\\x4f\\x03\\x9a\\x92\\xfd\\x69\\xab\\x88\\xcf\\xd0\\x54\\xc0\\x06\\x16\\x1f\\xf7\\x66\\xa3\\xf1\\xc3\\xa3\\x2a\\xef\\x66\\x43\\x81\\x23\\x38\\x79\\x68\\xde\\xed\\x67\\xab\\x62\\x07\\x90\\x47\\xc4\\xdd\\x0f\\x1a\\x5e\\xf2\\x6e\\x17\\x3d\\x35\\xcc\\xe7\\xe5\\x6e\\xf9\\x53\\x48\\x60\\xef\\x19\\x11\\x09\\x25\\xb3\\x89\\x69\\x67\\xe5\\xd3\\xd7\\x13\\xb2\\xf7\\x07\\xd3\\x25\\xc5\\x33\\x99\\x74\\x34\\x67\\x41\\xd1\\xc1\\xa1\\x50\\x6d\\x5e\\x5b\\x4c\\x5f\\xc8\\x6d\\xaf\\xbc\\x3b\\xba\\x24\\xfc\\xd7\\xef\\x07\\x65\\x20\\x1a\\xde\\x99\\x0a\\x61\\xa2\\xe7\\x69\\xa4\\x6b\\xb2\\x94\\x1a\\x8d\\x62\\xa2\\x3a\\x26\\x97\\x9d\\x82\\xe9\\x87\\xd1\\x59\\xc1\\xb0\\x51\\x10\\x02\\x91\\x9c\\x81\\x4b\\xca\\x7a\\x1b\\x07\\x7d\\x73\\xbe\\xbf\\x2f\\x2c\\xcc\\x92\\x0d\\xf1\\x70\\x19\\xc8\\x55\\xfc\\x89\\xe2\\x48\\x8b\\x77\\xcc\\x83\\xcb\\x40\\x93\\x8b\\x78\\x70\\xbc\\xe5\\xd0\\xd5\\x61\\x13\\xf1\\x31\\xd4\\x61\\x93\\xd7\\x7f\\xa0\\xe3\\xae\\xc6\\xaa\\x43\\xe3\\x43\\xfb\\xab\\x41\\x96\\xbb\\xed\\x64\\x9d\\x65\\x8b\\x0f\\x0f\\x3a\\xf2\\x9d\\x32\\x87\\xc8\\x6f\\x4d\\x7d\\xc4\\xce\\xbe\\x20\\x4b\\xc7\\x3f\\x9d\\x54\\x2d\\x4d\\x27\\x4a\\x77\\xaf\\x3a\\x4a\\xa6\\xfa\\xbd\\xff\\x45\\x1d\\xf9\\xad\\x55\\x10\\x30\\x99\\xb3\\xcf\\x17\\x36\\xe7\\xd8\\x1b\\xfa\\xdc\\xf1\\xec\\x1f\\x49\\xa2\\x04\\x92\\x99\\x37\\xdf\\xb0\\x0c\\x9f\\xbf\\x4f\\xdc\\x5f\\x8d\\x50\\xdf\\xee\\x89\\xc1\\x28\\x5b\\x66\\xd2\\x6e\\xac\\x98\\x11\\x13\\x6e\\x7c\\x85\\x94\\x5e\\x19\\xce\\xfe\\x2b\\xb2\\x81\\xca\\xfa\\xe4\\x4a\\x6f\\xef\\xcb\\xc1\\xee\\xc3\\x1b\\x50\\x5c\\x0e\\x16\\xb4\\x1d\\xee\\x61\\x7e\\xfb\\x24\\x13\\xc7\\x49\\xc3\\xe6\\xc4\\x36\\x35\\xba\\x16\\x7d\\x12\\x84\\xa5\\xcf\\x60\\x5c\\x6c\\x56\\x8c\\x7c\\x71\\x8e\\x34\\x33\\x5f\\xc4\\x6c\\x51\\x27\\x43\\x02\\xea\\x6c\\x48\\x60\\xea\\xd5\\x12\\x83\\x45\\x9f\\x7d\\xe2\\x95\\x99\\x30\\xed\\xfb\\x82\\x6f\\x47\\x47\\x3b\\x8c\\xd7\\xc9\\x9d\\xd7\\xf5\\x85\\x97\\x2d\\xde\\x66\\x8d\\xf7\\x82\\x11\\x9a\\x66\\x13\\x99\\xa0\\xed\\xbd\\x40\\x4a\\xd4\\xc7\\x66\\x7b\\x8f\\xde\\xff\\x11\\xf8\\x75\\x65\\x88\\xad\\xfe\\xde\\x86\\x24\\xf9\\xaa\\x16\\xf0\\xba\\x5f\\x8a\\xd6\\x1d\\x25\\x5b\\x6f\\xe3\\x15\\xe5\\xdd\\xac\\x35\\x3f\\x61\\xdc\\x3b\\xf3\\xfe\\x99\\x6c\\x18\\x7d\\xec\\x97\\x75\\xe4\\x03\\xef\\x2b\\x6a\\x81\\xeb\\x1c\\xa9\\xe1\\x22\\x8c\\x02\\xf6\\xc2\\x67\\x66\\xc8\\x22\\x58\\x89\\x80\\xf7\\x0a\\x65\\x58\\xb5\\xd1\\xd1\\xcf\\x3a\\x41\\x1a\\x3a\\xa0\\x3c\\x8d\\x94\\x7f\\xf0\\x14\\x8b\\xc9\\xb3\\xa1\\xce\\x7b\\x03\\xfa\\x53\\x0f\\x78\\xe7\\xaa\\x16\\x20\\x36\\x04\\x95\\xbe\\x4d\\x44\\xbf\\x42\\x7f\\x90\\xcb\\x4b\\xf9\\x80\\xee\\x59\\x45\\xee\\xb3\\x7f\\x4f\\xe7\\x88\\xa7\\xd9\\x52\\x85\\x1e\\xe0\\xbf\\x82\\xbe\\x13\\x48\\x1e\\xb3\\x7c\\x51\\xa1\\x4b\\xa8\\xbf\\xe3\\x66\\x47\\x6d\\x2d\\xde\\xf2\\x18\\x51\\x78\\x79\\x03\\xfd\\xd0\\x78\\x6f\\x13\\x19\\x1b\\x77\\x87\\x5d\\xf3\\x4a\\x53\\x02\\x47\\xbe\\x90\\x0f\\x93\\x45\\x44\\xf3\\xde\\xd3\\xda\\xdb\\xcb\\x0b\\x27\\x0e\\x8f\\x45\\x6f\\x7f\\xc3\\x00\\x68\\xb9\\x16\\x45\\xa0\\x0b\\x84\\xa5\\xc4\\xa9\\x3d\\x85\\xd2\\xab\\x34\\x10\\xac\\x86\\x70\\xe8\\x57\\xdc\\xf5\\xee\\xdf\\x9f\\x94\\x67\\x97\\x65\\xf4\\x3c\\xdf\\x87\\xd3\\xb0\\x5b\\x64\\x5e\\xab\\x29\\x5f\\x6a\\xf5\\x44\\x5f\\x58\\x18\\x9d\\xcb\\xdb\\x9e\\xbb\\x5e\\xce\\xf7\\x00\\xaa\\xd4\\x14\\x7f\\xdd\\x04\\xa9\\xd5\\x74\\xa8\\xc9\\xc1\\x2e\\x39\\x63\\x3b\\x2f\\x0b\\x39\\x16\\x3d\\x98\\x82\\xf6\\xe2\\xe8\\x9e\\x16\\x66\\x35\\x33\\xf8\\x67\\x66\\x47\\xfc\\x1b\\x53\\x42\\x2d\\x6a\\xf7\\x35\\x2d\\x3d\\x87\\xac\\x24\\x9f\\xd5\\xb8\\xd3\\x33\\xbb\\xef\\xca\\xa1\\x71\\x0e\\x77\\x37\\x14\\xe1\\x73\\xed\\x01\\xe5\\x01\\x04\\xae\\xc9\\x42\\x9f\\xa6\\xf3\\x11\\x0a\\xfa\\xd5\\x0e\\x4f\\xe1\\x65\\x27\\xd2\\x80\\x7b\\x5d\\x7f\\x33\\x5f\\xe3\\xc1\\xdd\\x41\\x82\\x48\\x0c\\xb5\\x72\\x77\\xfa\\x29\\x80\\x46\\xdd\\xd1\\xfe\\x76\\xe4\\x36\\xf3\\xb0\\x12\\x24\\x07\\xf4\\x94\\x9c\\x57\\x0a\\xbf\\x87\\x31\\x9b\\x2f\\xcd\\xdc\\x19\\xe0\\x9c\\x62\\xd1\\xf0\\x9a\\xc0\\x54\\x97\\xc1\\x9e\\x86\\x17\\xeb\\xdb\\xd8\\xc4\\xf1\\xb0\\x5d\\x55\\xee\\x20\\x18\\xea\\xc8\\x35\\xfe\\xeb\\xed\\xa9\\x8c\\x35\\x2c\\x64\\xb5\\x0d\\xcc\\x16\\xc2\\xbe\\x71\\xad\\xbf\\xfd\\x48\\xb6\\xc0\\x99\\xad\\xb3\\x3e\\xf4\\xd4\\x90\\xf0\\x66\\xfd\\x45\\x8e\\x36\\x3b\\xcb\\x20\\x64\\x4c\\xd8\\xd4\\x21\\xa8\\x4d\\x95\\xa7\\xfd\\x58\\xcf\\xa0\\xfd\\x7a\\xe9\\xaf\\x67\\xd9\\x4d\\x68\\xf6\\x82\\xa9\\x0c\\x6a\\xf8\\x7b\\x64\\x70\\x29\\xfd\\xa6\\x44\\x76\\xed\\x76\\xb2\\xf0\\x23\\xc1\\x50\\x6d\\x47\\xe8\\xa3\\xbe\\xf9\\x7b\\x36\\x15\\xd4\\xdf\\xb8\\x8c\\x83\\x9a\\x7b\\xd1\\xae\\xe4\\x42\\x84\\x82\\x3e\\xfd\\x6c\\xeb\\xb5\\x93\\x6e\\xfb\\x72\\xb2\\x82\\xc1\\x3b\\xc0\\x3d\\x93\\x99\\x01\\xfb\\x52\\x46\\xce\\xb1\\x36\\xc1\\xca\\x74\\x1c\\xf8\\x6e\\x34\\x5c\\xb8\\x5e\\xe8\\xc8\\x33\\xd6\\x09\\x2b\\x4f\\x37\\x79\\x62\\x98\\x98\\x13\\xe4\\x29\\x9c\\x58\\x11\\xeb\\x02\\x44\\x83\\x07\\xc8\\x0b\\x4a\\xae\\x04\\xda\\xa1\\x01\\x8f\\xa1\\xb6\\xa9\\x75\\x41\\x86\\x17\\x30\\x75\\x6f\\x8d\\x39\\x7a\\xc8\\x43\\x56\\xb9\\x5b\\xd2\\xe1\\xfd\\xe4\\xb6\\x5e\\x7b\\xad\\xb3\\xc0\\xb1\\x74\\xe6\\x57\\x09\\x5a\\x72\\xe9\\x19\\xfc\\xb8\\xd5\\x47\\xa2\\xef\\xe1\\xb8\\x43\\xad\\x95\\x8f\\x14\\xf0\\x50\\xb4\\x29\\x41\\xaf\\xae\\x34\\x57\\xd2\\x97\\x3c\\xb7\\x7b\\x82\\x4b\\xb9\\x26\\x56\\x0c\\xfe\\x30\\xf7\\x22\\x46\\xa0\\x6a\\xf2\\x27\\x5e\\x04\\x26\\xd6\\xec\\x97\\x14\\xd9\\x01\\x66\\x0c\\x9f\\x76\\x44\\x1c\\xf1\\x59\\x95\\xe3\\x8f\\xe8\\x20\\x7b\\xd3\\x33\\x40\\xa2\\x18\\x8e\\xd9\\x41\\xd3\\x06\\xc3\\x95\\x45\\x30\\xa6\\x98\\x80\\x61\\x56\\x76\\x48\\xa8\\xd8\\x17\\xb2\\xa9\\xd3\\x42\\x5a\\xec\\xa1\\x48\\xfa\\xae\\x94\\x15\\x83\\x9b\\x4a\\x67\\x0c\\x54\\x34\\xdf\\x5b\\x4b\\x7b\\x3a\\x1e\\xd1\\x7b\\x53\\x90\\x27\\xef\\x39\\xb2\\xb5\\x63\\x3e\\xdf\\xdd\\xc9\\xcf\\x0d\\xb4\\xd4\\x0c\\x58\\xbc\\x25\\xb1\\x0f\\x49\\xf7\\x18\\x03\\x56\\xd3\\x2c\\xaf\\x6e\\x73\\x4b\\xb4\\x48\\xb6\\xb4\\x78\\x02\\x61\\x8e\\xcf\\x79\\x55\\x6f\\xbe\\xc8\\x17\\xff\\x5b\\xff\\x7e\\x62\\xbf\\xaa\\xdd\\xe1\\xce\\x9c\\xc5\\x1e\\xb4\\x93\\x31\\x51\\xdf\\xfd\\x36\\x1a\\xe3\\x5b\\x3e\\x5a\\xbe\\x66\\x54\\x33\\x38\\xd1\\x5f\\xcd\\x7e\\xd1\\x40\\x05\\xb9\\x9f\\x27\\xaa\\x13\\x7e\\x91\\x7c\\x08\\x8f\\x18\\xa0\\xd3\\xe5\\x96\\xd8\\xd8\\xb6\\x1d\\xf2\\xde\\x9c\\x4d\\x7c\\xde\\x5a\\xf3\\x3a\\xf2\\xba\\xa3\\x73\\xd9\\x8d\\xb6\\xe0\\x85\\xe1\\xf7\\x96\\xde\\x14\\x43\\x7e\\x6d\\xe7\\x79\\xb7\\x06\\xb3\\x7c\\x44\\x4e\\xba\\x60\\xb8\\x83\\xab\\x22\\xc7\\x04\\x56\\xfe\\xe6\\xa9\\xdd\\xcd\\x7c\\xce\\x68\\x28\\x27\\x9c\\x13\\xd3\\xd6\\xfb\\xe3\\xca\\x79\\xe4\\xd0\\xe0\\x8b\\x79\\xd2\\x58\\x75\\xe6\\x4f\\x8f\\x75\\x08\\x5f\\xcd\\x88\\xc9\\x4a\\x40\\xe7\\xb5\\x6f\\x06\\x3f\\x95\\x66\\x2b\\x91\\x76\\xc7\\x1f\\xd7\\x6d\\xef\\x52\\x30\\xde\\x42\\xc0\\x38\\xd4\\x2b\\xfc\\x5f\\x72\\x62\\x5e\\x08\\xaf\\x93\\x5e\\x36\\xc6\\xcb\\xdb\\xfd\\xbc\\x64\\x01\\x5a\\x7d\\x3b\\xb5\\xeb\\x9c\\xa3\\x4d\\xe0\\xab\\x31\\x06\\x44\\xe0\\xe5\\xe8\\xb8\\x28\\x7e\\x0e\\xb1\\xb7\\x0d\\xd8\\x77\\x6c\\x93\\x1d\\x7f\\xc3\\xb8\\x42\\x0e\\xf7\\xee\\xb2\\xd5\\xc7\\x70\\x3e\\xfc\\xb8\\xea\\xed\\xf2\\x0f\\xbf\\xa0\\x2e\\x62\\x93\\x3e\\xf9\\x51\\xd1\\x44\\x90\\x70\\xb3\\x48\\xe6\\x0c\\xc6\\x69\\x2b\\x50\\xfe\\xc5\\x6a\\xd5\\xe3\\x0c\\xec\\x78\\xde\\x5b\\x89\\x3c\\x20\\xcc\\xbd\\xb6\\x5a\\x3d\\x95\\xaa\\x82\\xd0\\x44\\x1e\\xbe\\xcd\\xfa\\x2a\\x6f\\xad\\xd2\\xac\\x0c\\x7c\\x5f\\x7f\\xc7\\x15\\x57\\xfa\\x95\\x6d\\x78\\x9b\\x71\\xef\\xf7\\xa8\\x8c\\xcb\\xb1\\x3b\\x5a\\xdc\\xdc\\xe1\\x63\\xdb\\x77\\xc2\\xeb\\x80\\x62\\x3f\\xb2\\x3d\\xc9\\x66\\xc7\\x8d\\xb6\\x86\\xf8\\x65\\xc1\\xb6\\xbe\\x91\\xc4\\xd6\\xa7\\xe3\\xe9\\x4e\\x7c\\xdc\\xc0\\x8c\\x38\\xbf\\x4d\\x4b\\x28\\xd2\\x30\\xb4\\x1e\\x45\\xa6\\x3c\\x63\\x6d\\xd2\\xd2\\xe4\\xa7\\x7f\\xd8\\x81\\xab\\xad\\x9b\\xe8\\xc9\\x9f\\xf0\\x9d\\x1d\\x79\\x7d\\xc5\\xc2\\x06\\xc1\\x19\\xef\\xf2\\xb3\\x73\\x90\\x6c\\xac\\xd2\\xfa\\x40\\xf0\\xad\\xcb\\xfd\\xaa\\x33\\xcb\\x2b\\xe6\\x46\\x6b\\x92\\xf4\\xce\\x89\\xfd\\x47\\x09\\x68\\x86\\x5b\\xe5\\xe7\\x6a\\x7e\\x34\\x1f\\x68\\xc1\\x6b\\xd1\\x3f\\x26\\x73\\x0e\\x2d\\x53\\xec\\xa1\\x74\\xdf\\xbc\\xa7\\x9b\\xd8\\xe2\\x02\\x27\\x03\\x5c\\x73\\x58\\x5a\\xab\\x3b\\xf5\\xbd\\x16\\xe1\\xcc\\xae\\xd0\\x5f\\x88\\x04\\x45\\x7e\\x43\\x2d\\x3f\\x91\\x9e\\x0e\\xb4\\x2b\\x96\\x9b\\xd1\\x39\\xb3\\xe5\\x03\\xce\\x82\\xce\\x06\\xe4\\xee\\x32\\x25\\xcb\\xda\\xb5\\xf3\\x22\\xb3\\x92\\x2a\\xf8\\x33\\x5c\\x1b\\x4c\\xd7\\x3e\\x76\\x00\\xa7\\x3c\\x13\\x60\\xdb\\x80\\xc4\\x56\\x5d\\x6e\\xf3\\x6d\\x83\\x33\\x46\\x41\\x4d\\x5e\\x55\\x52\\xb8\\x46\\xe7\\x9f\\x1f\\x59\\xa4\\xce\\xc6\\xa3\\x68\\x97\\x7a\\xb3\\xea\\x4e\\xb1\\x00\\xe3\\xd2\\x7d\\x83\\x69\\xc5\\x76\\xe2\\x71\\xfb\\xe1\\x5f\\x57\\xba\\xc7\\xa5\\x2d\\x7b\\x52\\x76\\x79\\x78\\x68\\xc1\\xd2\\x5b\\x6e\\x8a\\x50\\x51\\xcb\\xd9\\xdc\\xbf\\x5a\\x25\\x24\\x8a\\xe5\\xf6\\xf9\\x01\\x04\\xac\\x75\\xff\\xbb\\xb5\\xd1\\x40\\xf4\\xfd\\xa3\\x63\\x13\\xdf\\x50\\xba\\xd8\\xe1\\x27\\xcd\\xbf\\x1c\\xc1\\x9f\\xe7\\x9f\\x22\\x4e\\x33\\x67\\x80\\x7b\\x07\\x35\\xfb\\x62\\x66\\x74\\xb8\\xd6\\x5e\\x99\\xb3\\x33\\xdc\\x59\\x8f\\x15\\xb2\\xa1\\x14\\xaa\\x43\\xdf\\x60\\xe8\\x57\\x29\\x4b\\xfc\\xc6\\xfc\\x42\\xe1\\x2a\\xf0\\x6d\\xdf\\xf4\\xf1\\x33\\x91\\x7e\\x1d\\x05\\x43\\x1f\\x86\\x07\\xd6\\xe9\\xd3\\x66\\x51\\x9f\\xe7\\xcc\\x02\\x48\\x6e\\x47\\x07\\xcb\\xad\\x89\\x91\\xb9\\x21\\x92\\xf2\\x7f\\x85\\x86\\xb5\\x9d\\x11\\xd1\\xd4\\xc4\\x3a\\x6f\\x56\\x2b\\x95\\xfe\\xc9\\xa8\\xfa\\xe0\\x11\\x71\\x68\\x56\\x39\\x35\\x43\\xd5\\x3a\\x82\\x71\\x76\\x5a\\x62\\xe8\\x9e\\x0b\\x85\\xa5\\x05\\xe0\\x45\\x92\\x81\\xcc\\x77\\x16\\xae\\x7e\\xe3\\x4e\\x43\\xa3\\x7f\\x9a\\x89\\x32\\xa1\\x76\\x48\\xfe\\x0e\\x57\\x88\\x57\\x6e\\xb3\\x55\\xe1\\x17\\xe0\\x3f\\x02\\x7e\\xeb\\x33\\x73\\xa9\\x6c\\xbf\\x7b\\x8f\\xf2\\x05\\xc5\\x5e\\x35\\x54\\xde\\x3c\\x3a\\xfc\\x49\\x0e\\xd0\\x59\\x3a\\x33\\x15\\x5f\\xa9\\x1e\\x80\\xb8\\x17\\x8a\\x09\\x78\\x92\\xa8\\xab\\xcf\\xce\\xa8\\xbd\\x72\\xf6\\x55\\x42\\x81\\xf6\\xa9\\x38\\xbf\\xff\\xa2\\x4d\\xe1\\x36\\x20\\x3c\\xf9\\x10\\xd8\\x6e\\x1d\\x3c\\x5b\\x19\\x31\\x4e\\x16\\xb0\\xc9\\x47\\xfb\\x00\\xbe\\x2c\\xe7\\x0b\\x7f\\x1a\\xf8\\x73\\xc8\\x1b\\xa7\\x3b\\x4e\\x7f\\xab\\xc2\\x31\\xec\\x3c\\x97\\xc1\\xcc\\x36\\x4c\\x63\\xb2\\x6c\\x8c\\xaf\\xa1\\xc2\\xd8\\x3c\\xa3\\xeb\\x0c\\x3e\\x6f\\xe1\\xc3\\xad\\x46\\x39\\x3f\\x33\\x5a\\xf2\\xb7\\x65\\x9d\\x7a\\x3f\\xe8\\x62\\x37\\xbe\\xf4\\xcd\\x94\\x11\\x7e\\x3a\\x61\\xaa\\xeb\\xe3\\x36\\x77\\x36\\x98\\xcb\\x1b\\xff\\xd7\\xc1\\x70\\xb1\\xcb\\xa3\\x1d\\x3d\\xde\\xcd\\x8e\\x3e\\x9e\\x39\\xdc\\xf5\\x10\\xef\\xf4\\xdb\\x42\\xf4\\xc3\\xc0\\xbb\\x24\\x32\\x64\\xe9\\x99\\x19\\x5f\\x07\\xc4\\x40\\x75\\x3a\\xa5\\x13\\x46\\x31\\xf6\\xb4\\x5f\\x36\\xfa\\x41\\xf2\\x54\\x5c\\x89\\x42\\xf9\\x8a\\x5b\\x1d\\x97\\xb4\\x33\\x62\\x94\\xe9\\x7e\\x18\\xfe\\xe9\\xa8\\xa1\\x0f\\xa7\\xf4\\xc5\\xfe\\xe9\\xfb\\xa2\\xca\\xb4\\xb9\\xde\\xbd\\x0a\\xb6\\x61\\xa2\\xbe\\xf9\\x6d\\x9b\\xc0\\xae\\x41\\x0b\\x29\\xc4\\xd8\\xf1\\x33\\xf1\\xed\\xd9\\xea\\x89\\xc8\\x52\\xc6\\xdb\\xe8\\xb5\\xa6\\xdd\\xe4\\x28\\x67\\x0b\\xae\\x07\\x9d\\xcb\\xce\\x01\\x06\\xa4\\x81\\xc3\\x42\\xff\\xf2\\xbe\\x34\\x4d\\xc0\\x4b\\xe4\\x2e\\x3c\\xa6\\xe5\\xb8\\xca\\xde\\xf0\\xdd\\x8c\\x51\\xf5\\x9b\\x8b\\x49\\x0d\\x7a\\xd6\\x8f\\x03\\xf9\\xa4\\x2a\\xa1\\x2f\\xf7\\x07\\xca\\xf3\\xe5\\x9a\\xcf\\x84\\xba\\x2f\\x93\\xb6\\x74\\x2a\\x41\\x73\\x97\\xb8\\xfb\\xf6\\x41\\x0a\\x45\\xaa\\xeb\\x73\\x93\\x9a\\xb7\\xcf\\xcb\\xac\\x56\\xa9\\x90\\x74\\x65\\x0e\\x3d\\x84\\x63\\x1f\\xe9\\x0b\\x11\\xe0\\xd5\\xcd\\x47\\xde\\x80\\xdb\\xdb\\x49\\x00\\x1c\\x80\\x2e\\x8a\\x89\\x60\\xf7\\xd2\\x62\\x29\\x26\\x84\\xdb\\x75\\x54\\xbd\\x7b\\x24\\x19\\x40\\x41\\x55\\x20\\xa9\\x5f\\x31\\x23\\x2c\\xf3\\x81\\xd6\\x52\\x16\\x5b\\xea\\xfc\\xab\\xcf\\x08\\x75\\xd7\\x5b\\x6b\\x9a\\xa4\\xef\\xce\\x59\\x59\\xf6\\xa5\\x1a\\x70\\x6c\\x08\\xf2\\xa2\\x29\\x17\\x49\\x56\\x7a\\xc4\\x85\\x00\\x4f\\x3c\\x0b\\x85\\xc4\\x5b\\x6a\\xb4\\x4d\\x4f\\x71\\x86\\x5f\\x50\\xd5\\x59\\xf2\\x7f\\xd3\\x8e\\xf8\\x38\\xf1\\x99\\xff\\xee\\x77\\x4b\\xc2\\xae\\xda\\x40\\x40\\xdd\\xed\\xd4\\x9a\\x60\\x48\\xa3\\x97\\xc5\\x86\\x7b\\x22\\x3d\\x50\\x26\\x45\\x4b\\x63\\x69\\x24\\x6b\\x1e\\xdf\\x78\\x70\\x89\\xfc\\x41\\xdc\\xc5\\x35\\x6b\\x9d\\x6f\\x64\\x70\\xe1\\xc8\\x27\\x75\\xc5\\xa7\\xf1\\x73\\xec\\x48\\xa4\\xbf\\x79\\xd3\\x46\\x01\\x2c\\x89\\x24\\xf0\\xa9\\x09\\x5e\\x0c\\x3d\\x6b\\x89\\xbf\\xe0\\xce\\x63\\xdc\\xf7\\x9b\\x0e\\xca\\xa6\\xfd\\xe0\\x70\\xd0\\xf7\\xfb\\x8c\\x47\\x65\\x03\\x1f\\x87\\x89\\x7a\\xd1\\x1f\\x3f\\x8d\\x2d\\x63\\xe6\\xb1\\xa7\\xee\\xd2\\xfe\\x21\\x65\\x58\\xde\\xb8\\x44\\x97\\x5f\\x59\\xeb\\x49\\x65\\x0a\\x66\\xff\\xaa\\x03\\x49\\x55\\xb1\\x7a\\xef\\x21\\x10\\x20\\xd2\\x07\\xd8\\x71\\xa7\\xcc\\xcd\\x99\\xc5\\x10\\x84\\xbf\\xea\\xe6\\x65\\x54\\xec\\xd5\\xc8\\x9a\\x43\\xd0\\x32\\x97\\x58\\xee\\x99\\x53\\x22\\x7b\\x1d\\xe4\\x6b\\xa2\\xc3\\xe1\\xad\\x07\\xcc\\x90\\x36\\xe5\\x5f\\x78\\xa6\\x28\\xf0\\x8a\\x63\\xf1\\xfe\\xa5\\x3a\\xc1\\x41\\x60\\x7c\\xe4\\xb6\\x8e\\xbc\\x79\\x20\\x81\\x17\\xfd\\xf3\\xf1\\x0d\\x5d\\x75\\x83\\xda\\x52\\x2d\\xd5\\x4e\\x08\\x85\\xe4\\x58\\x51\\x62\\xdb\\x01\\x5a\\x5e\\xee\\x11\\xef\\x41\\x76\\x5f\\xa7\\x70\\x74\\x57\\x6e\\xc7\\xc7\\xda\\xa3\\xa5\\x86\\xd5\\x4b\\xaf\\x98\\x8f\\xe3\\x90\\x8b\\x30\\x50\\x58\\x36\\x62\\x81\\xaa\\xab\\x84\\x19\\xf9\\x67\\x66\\xd9\\x24\\x00\\x84\\x77\\x8d\\xe7\\xf2\\x4b\\x93\\xe7\\xdf\\x80\\x79\\x8f\\x2d\\x1f\\x82\\x2b\\x8b\\x6f\\x07\\x90\\x95\\x60\\xb9\\xaa\\x46\\x3d\\x32\\x78\\x3c\\xb9\\x07\\xff\\x06\\x4b\\x8a\\x16\\x45\\xf1\\x55\\xa5\\x46\\x5d\\xea\\xc4\\xe4\\xed\\xc9\\xc5\\x20\\xca\\x6e\\xb6\\xe3\\xbb\\x1f\\x3d\\x1e\\xe5\\x1a\\xf8\\x4e\\x1a\\x6a\\xc5\\xbe\\xab\\xf8\\xfa\\x99\\xfe\\x71\\x14\\xf2\\xfa\\xe3\\x98\\xfa\\x15\\x80\\x93\\x32\\x31\\x91\\x52\\x3f\\x71\\x61\\xa8\\xd0\\xa9\\x40\\x39\\xaf\\xd1\\xe2\\x28\\xb4\\x7c\\x03\\x2d\\x6e\\x13\\x9f\\x85\\x5d\\xff\\xd1\\x1b\\xe7\\xfb\\x44\\x9b\\x30\\x31\\xd1\\x3c\\x5e\\x9b\\x06\\xa8\\xc6\\x5f\\xea\\xc1\\xdd\\x28\\x52\\x62\\xe8\\x80\\xd0\\x26\\x65\\x30\\x66\\xfa\\x26\\x10\\xb9\\x12\\xc7\\xcf\\x69\\x20\\x8d\\x71\\x58\\xdd\\xf5\\xaf\\x3e\\x23\\x6e\\x36\\xa9\\x56\\x39\\xe6\\xc9\\xc7\\xcf\\x26\\x04\\x85\\x3e\\x7a\\x21\\x3c\\x99\\x4d\\xb4\\x8f\\x32\\x34\\xc6\\x99\\x16\\x01\\x1d\\xcd\\x7c\\xb2\\xc5\\x11\\xcb\\x79\\x07\\x11\\xcb\\x5b\\xc0\\x9f\\xf2\\xad\\x93\\x71\\x2f\\xd5\\x01\\x52\\x79\\x7d\\x13\\x3d\\xcd\\x5c\\x6d\\x44\\x91\\x9a\\x50\\xba\\x29\\x29\\x7e\\xfd\\x4d\\x62\\x21\\xfe\\xce\\x7f\\x0b\\x3a\\xcb\\x3b\\xf5\\xd9\\x23\\xbd\\xb4\\xb2\\x3b\\xad\\xe4\\x24\\xf8\\x3c\\xfa\\x35\\x19\\x0f\\x72\\x7d\\x8d\\x8a\\x20\\x6d\\xbe\\x52\\xee\\x1e\\xb7\\x0b\\x4c\\xe3\\x45\\xcc\\x03\\x87\\x5a\\x41\\xc3\\xb9\\xe1\\xcc\\x8f\\x73\\x3a\\x94\\x21\\x63\\xe0\\x34\\xb1\\xcc\\xdd\\x5f\\x75\\xd8\\x64\\xd0\\x13\\x94\\x45\\xc4\\x19\\x50\\xdf\\xa6\\xbb\\x4f\\x62\\xa6\\xea\\xe3\\xb3\\x4f\\x8f\\x64\\x52\\x0a\\xc6\\x60\\xc7\\x35\\x19\\xa6\\x55\\xcf\\x55\\xa0\\x29\\x72\\xcb\\x79\\xf5\\xa7\\x60\\xdb\\xcd\\x80\\x54\\x55\\x80\\x54\\xad\\x08\\xec\\xb2\\x30\\x06\\x42\\xdd\\xf0\\x85\\xc9\\x15\\xc9\\x22\\xcc\\x12\\xe2\\x16\\xff\\x9a\\x86\\xe5\\xeb\\x40\\xa0\\x6c\\xd8\\xf1\\xeb\\x45\\xd6\\xd5\\x73\\x67\\xca\\xc6\\x73\\x22\\x79\\x75\\x8c\\xc7\\x60\\xf6\\x99\\xd5\\x7c\\xa3\\x58\\x1e\\xd9\\xaf\\xcc\\x39\\xbc\\x0d\\x39\\xf7\\xa0\\x7e\\xb2\\x4b\\x33\\x34\\x03\\x10\\xb8\\xab\\x66\\x20\\x27\\x12\\xba\\x15\\xa7\\x59\\x8a\\xfb\\x95\\x49\\x68\\x80\\x7f\\xb2\\x64\\xef\\x5b\\x87\\x34\\x09\\x6d\\xfb\\x52\\x38\\x48\\xff\\x7c\\x71\\x91\\xb4\\x50\\xce\\xab\\x14\\xcc\\x6c\\x46\\x39\\xa9\\xee\\x91\\xdf\\x84\\xb3\\x34\\xf5\\x65\\x29\\xa8\\x38\\xed\\x03\\x5f\\x77\\x5a\\xed\\x43\\xac\\x8c\\xe3\\xa3\\xf3\\x5d\\x09\\x49\\xe7\\x83\\x11\\x46\\xc0\\x25\\xc0\\xb2\\x73\\xe5\\x49\\x69\\x19\\x3a\\xa1\\x59\\xcd\\xf2\\x3a\\xd7\\xfa\\xc0\\x6d\\xb6\\xf1\\x62\\xd3\\xe9\\xc4\\x89\\xd5\\xdf\\x0c\\x73\\xf3\\xc6\\xe7\\x6d\\x52\\x81\\x6e\\x3d\\x62\\x2f\\x34\\xbb\\xa5\\xb1\\xbc\\x66\\xaa\\xe6\\x27\\xe5\\x9f\\xe6\\x20\\xdb\\x42\\xe1\\x66\\xbc\\x65\\x65\\x18\\x3a\\xae\\x47\\xea\\x8f\\xcd\\x99\\x8c\\x99\\x62\\xcf\\x2a\\x23\\xb1\\x80\\x62\\xa1\\xe4\\xc4\\xf7\\xb8\\x3c\\x8f\\x93\\x34\\x28\\xe0\\x87\\xfe\\x46\\x6a\\x6c\\x02\\x1f\\xcc\\xdf\\xa5\\x21\\x42\\x8f\\xe8\\x5d\\xe0\\x9a\\xcc\\x5d\\xc0\\x74\\x72\\xc7\\xb0\\x4a\\xe0\\x33\\x4e\\xf0\\xad\\xa4\\x62\\x68\\x29\\xb8\\x5c\\x7a\\x7a\\x3d\\x0b\\x29\\x99\\x8f\\x00\\xeb\\x70\\x46\\x3f\\x1c\\x13\\x61\\x38\\xf4\\xdf\\xbe\\x00\\x3f\\x1e\\x4c\\x2f\\xfa\\x38\\x2f\\x6e\\xc1\\xb8\\x75\\x0a\\x22\\x26\\x53\\xc3\\xbb\\x7b\\x9a\\x37\\xb2\\xaa\\xfd\\xcc\\x7c\\x3c\\xd5\\x7c\\x3e\\x3d\\x0e\\x25\\x51\\x95\\x8c\\x94\\x80\\x63\\xea\\x05\\x73\\x41\\x19\\x1c\\x82\\x5f\\xc6\\x41\\x65\\x39\\x3b\\x2a\\x24\\x71\\x80\\xca\\x5c\\xff\\x45\\xe7\\xec\\xc2\\x8e\\x4f\\x31\\x53\\xfa\\xb7\\xe9\\xec\\x8b\\x56\\x51\\x33\\x59\\xe5\\x9b\\x4d\\xf0\\x6c\\x98\\xcb\\xc6\\xab\\x55\\x84\\x76\\x2c\\xc7\\xca\\x25\\x8b\\x0e\\xf1\\xe0\\x4c\\xdf\\xed\\xf0\\x33\\x64\\xba\\x3a\\xd0\\xa0\\x73\\xfd\\x60\\xa4\\x2d\\xc3\\x4b\\x80\\x65\\x75\\x37\\x6e\\xf9\\x7e\\x03\\x3c\\x60\\xd7\\x20\\x78\\x19\\xfa\\x70\\xeb\\x8c\\x29\\x0f\\x3e\\xd6\\x36\\x68\\xc8\\x3f\\x23\\xf9\\x06\\xa7\\xf5\\x1b\\x7b\\x90\\x9c\\x60\\xca\\xee\\x4a\\xe5\\x99\\x1e\\xff\\xc9\\x07\\x13\\x06\\xa2\\xa1\\x3f\\x64\\xe2\\x8c\\xab\\x67\\x1c\\xf9\\xee\\x42\\x6e\\xaf\\xbd\\x90\\xa4\\xe3\\xf4\\x5a\\xb5\\x0f\\x13\\xf8\\x97\\xda\\x43\\x5b\\xda\\xcb\\x8a\\xc0\\x09\\x7b\\x8d\\x9f\\xc8\\x53\\xb6\\xb9\\x2c\\x23\\x9e\\xad\\xef\\xdf\\x74\\x7d\\x4e\\x5e\\x04\\x55\\xb3\\x7f\\xb0\\x60\\xc1\\x4f\\x65\\x42\\x5a\\x75\\x42\\x31\\x71\\x5f\\x74\\xe1\\xc5\\x8d\\x31\\xac\\xfd\\xcd\\x11\\xd1\\x08\\xd7\\x86\\x18\\x56\\x25\\x71\\x45\\x3b\\x46\\xd9\\x1f\\x0c\\x72\\x37\\xb6\\x19\\x05\\xa5\\x38\\x46\\x80\\xf0\\x12\\xc0\\xee\\x68\\x12\\x4c\\x3e\\xea\\xe5\\x34\\x3a\\x57\\x2b\\x3e\\x35\\xff\\x60\\xc8\\xc7\\x46\\x61\\x56\\xf6\\xdf\\x94\\xf3\\x2c\\x8b\\x0e\\x87\\x2a\\xc3\\xe6\\x0a\\xbb\\xb9\\x71\\x52\\x3d\\x49\\x85\\x9a\\xcc\\x52\\x77\\x2c\\xaf\\x45\\x17\\xd3\\xfe\\xfe\\xa7\\xd2\\xf0\\x10\\xc7\\x2b\\xc2\\xd2\\x22\\x3e\\xa2\\x04\\x49\\xcb\\xb9\\x20\\xd9\\x17\\x54\\x46\\xb5\\xdb\\xa3\\x2f\\x32\\x10\\x86\\x33\\xa0\\xe5\\x7f\\x8c\\x61\\x90\\xa9\\x84\\xe7\\x99\\x0d\\x4e\\xdc\\x3b\\xd2\\x52\\x57\\x3e\\x10\\x3b\\xb5\\xae\\x69\\xaf\\x02\\x3c\\x16\\x8b\\x45\\x3c\\x39\\x75\\xfb\\xa4\\xec\\x4f\\x21\\x71\\xec\\x4a\\x92\\xb6\\xd6\\x50\\x99\\xbc\\x94\\x37\\x86\\xde\\xd2\\x21\\x61\\x53\\x53\\x0c\\x17\\x63\\x58\\x8b\\xd3\\x51\\x1b\\xd6\\x22\\x45\\xcf\\xac\\x1d\\x18\\x3a\\x66\\x69\\xb3\\x47\\xbf\\x46\\x5b\\xb1\\xdb\\x33\\xf5\\x94\\x59\\x89\\x1d\\xae\\xde\\x62\\xe1\\xa3\\x28\\xe4\\x9e\\x4b\\xd7\\x6d\\x4f\\xb2\\xa8\\xb6\\x14\\xac\\xb5\\x2a\\x1b\\xbb\\xd6\\xdd\\x1a\\xb8\\x75\\x6a\\x9f\\x64\\x91\\x49\\x7d\\x5b\\x6e\\x54\\x37\\x7b\\x76\\xdb\\xc5\\x76\\xd1\\x10\\x31\\xf1\\xc8\\x28\\xfb\\xed\\x13\\x31\\x4f\\xe4\\xf7\\x5d\\xaf\\x26\\x51\\xff\\x45\\xd9\\x8d\\xa2\\xc8\\xee\\x4d\\x29\\x29\\x5a\\xf7\\xb0\\x16\\xe5\\xea\\x88\\x70\\xe8\\xb2\\xd8\\x0f\\x63\\x2b\\x24\\xc1\\x26\\x61\\x44\\xbd\\x5e\\x27\\x07\\xa4\\xf3\\x55\\x4e\\x7b\\x68\\x68\\xaa\\xf5\\xf2\\xa4\\x25\\x9f\\x63\\x3e\\xf2\\x0c\\x96\\x7f\\x0c\\xa0\\x45\\x0b\\x74\\x1e\\xf2\\x43\\x4f\\x12\\x9a\\xef\\x3d\\x19\\x40\\x71\\x25\\x1a\\xab\\xc8\\xa9\\xbf\\x88\\x3b\\x86\\x8f\\xa0\\xa5\\xdd\\x23\\x97\\x2f\\x3a\\x33\\x15\\x38\\x9a\\xe2\\xce\\xe5\\x6a\\x8b\\x10\\x27\\x39\\xc1\\x57\\x23\\x35\\xd3\\x8b\\x53\\x97\\xea\\x6f\\x59\\x89\\x69\\x8b\\x95\\x51\\x4f\\x7a\\xf7\\x42\\xd1\\xc4\\xd4\\xf7\\x1f\\x5e\\x09\\x4a\\x8a\\x84\\x3e\\xe9\\x1a\\x4a\\x5a\\x7e\\x31\\x39\\xbe\\x37\\x86\\x27\\xf4\\x7e\\x84\\xfd\\x33\\x7a\\xd1\\xc2\\x99\\x73\\x4c\\xad\\x8f\\x27\\x93\\x3c\\x69\\x83\\x03\\xd6\\xf6\\xd1\\xc4\\xb4\\xf2\\xb2\\x30\\x47\\xb8\\x5d\\xa5\\xcc\\x1f\\xb4\\xcd\\xc0\\xce\\x58\\x5f\\x71\\x7a\\xda\\xe7\\x2a\\x3b\\x2b\\x3a\\x7b\\xee\\xbc\\x03\\x21\\x97\\xe3\\x1e\\xb4\\x82\\x96\\xe5\\x37\\x9a\\xde\\x81\\x92\\x25\\x0d\\x93\\x1d\\x85\\x52\\x59\\x3e\\x71\\xcb\\x3c\\x56\\x4d\\x06\\xce\\x14\\x0e\\xec\\xdd\\xe0\\x1b\\x4e\\xf1\\xd0\\x9c\\xdb\\x01\\xe2\\x1a\\x10\\x9f\\x6d\\xe3\\x7c\\x24\\x80\\xb1\\x7e\\xc3\\x3b\\x5a\\x0f\\xa2\\xf5\\xf1\\xa5\\x03\\xfc\\x73\\x31\\xf1\\x1a\\xdb\\x92\\x13\\xf4\\xbf\\xc5\\x60\\x2a\\x27\\xcc\\x14\\x0a\\x14\\x5e\\x88\\x6b\\xdc\\xf7\\xa3\\xfc\\x1a\\xff\\x1e\\x47\\x4a\\x6e\\x68\\xfd\\xe5\\x4b\\x47\\x26\\x07\\x52\\x88\\xab\\x4d\\x5f\\x5f\\x89\\x1f\\x1e\\xdf\\x57\\x3f\\x12\\x28\\x65\\xc0\\x9e\\xf8\\xba\\x88\\x69\\x61\\x61\\x61\\x61\\xa9\\x29\\x69\\x2b\\x56\\x7c\\xf8\\xf4\\xf5\\xff\\x09\\x00\\x00\\xff\\xff\\xeb\\x56\\x28\\x46\\xff\\x31\\x00\\x00\"\n\nfunc assetsClientStaticImgGlyphiconsHalflingsPngBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticImgGlyphiconsHalflingsPng,\n\t\t\"assets/client/static/img/glyphicons-halflings.png\",\n\t)\n}\n\nfunc assetsClientStaticImgGlyphiconsHalflingsPng() (*asset, error) {\n\tbytes, err := assetsClientStaticImgGlyphiconsHalflingsPngBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/img/glyphicons-halflings.png\", size: 12799, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticJsAngularSanitizeMinJs = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\x8c\\x57\\xdf\\x73\\xe3\\xb6\\x11\\x7e\\xd7\\x5f\\x21\\x21\\x57\\x19\\x90\\x56\\xa4\\x7c\\x49\\x3a\\x53\\xd1\\xb0\\xeb\\xdc\\x39\\xb9\\x74\\x92\\x69\\xa7\\xb9\\xa7\\x92\\x74\\x07\\x04\\x40\\x12\\x16\\x44\\xf2\\x00\\xc8\\xb2\\x23\\xaa\\x7f\\x7b\\x07\\x24\\x25\\xcb\\xee\\x65\\xa6\\x2f\\x24\\x7e\\x7e\\xfb\\x7d\\x8b\\xc5\\x72\\x19\\xce\\x46\\xe3\\xdb\\xaa\\xd8\\x6a\\x66\\xfe\\xf6\\xdb\\xf8\\xf1\\x32\\xb8\\x0c\\xbe\\x1f\\x8d\\x31\\x27\\xe3\\xf7\\xcb\\xcb\\xe5\\xe2\\xfd\\xf2\\xf2\\xfd\\xf8\\xa7\\xba\\x2e\\xb4\\x84\\xf1\\xcf\\x15\\x0f\\xc6\\xa5\\x73\\xcd\\x2a\\x0c\\x59\\xbf\\xe7\\xc1\\x06\\xb5\\x29\\x46\\xe3\\x5f\\x14\\x97\\x95\\x95\\xab\\xf1\\xaf\\x3f\\x7f\\x1e\\xcd\\xc2\\x11\\xce\\xb7\\x15\\x77\\xaa\\xae\\xf0\\xcf\\x50\\x92\\xfd\\xc5\\xd6\\xca\\xb1\\x75\\x46\\x71\\x77\\x11\\x1d\\xa7\\xc6\\x0a\\x33\\xb2\\x7f\\x64\\x66\\x2c\\xe8\\xfe\\x00\\x8c\\xb2\\xc0\\x36\\x5a\\x39\\x8c\\x00\\x11\\xe0\\x51\\x5e\\x1b\\xcc\\xe9\\x32\\xe2\\x57\\x2c\\xd0\\xb2\\x2a\\x5c\\x19\\xf1\\xf9\\x9c\\x88\\x98\\xc5\\x3c\\x4d\\xe9\\x64\\x19\\x19\\xe9\\xb6\\xa6\\x1a\\x8b\\xc3\\x09\\xf2\\x77\\xcc\\x40\\x90\\xfd\\xa9\\xcf\\x31\\x83\\x0c\\x38\\xe4\\x64\\x9f\\xd1\\x32\\xd0\\xf5\\x4e\\x1a\\xce\\xac\\xc4\\x19\\x89\\x54\\x8e\\x37\\x71\\x96\\x12\\x6f\\x27\\x92\\x81\\x66\\xd6\\x61\\x32\\x9d\\x56\\xf1\\xb1\\x9d\\x46\\xa4\\xc0\\x08\\xc1\\xb1\\x4f\\xa2\\x3a\\xce\\xd2\\xe9\\xf4\\xd8\\xa7\\x34\\x9b\\x4e\\xbb\\x15\\x19\\x89\\x70\\x4e\\x9b\\x38\\x4b\\xdb\\x76\\x32\\xc9\\x49\\xdb\\xca\\xa0\\xd9\\xda\\xd2\\x9b\\xf1\\x02\\x1f\\xe8\\xfe\\x10\\xf1\\xc0\\xc8\\x46\\x33\\x2e\\xf1\\x2d\\x9c\\xdc\\xe3\\xe9\\x09\\xe0\\x50\\x90\\xfd\\x43\\x9c\\xa5\\x74\\x8d\\x45\\xdb\\xf2\\xb6\\x2d\\xda\\x16\\x21\\x72\\x20\\x91\\x08\\xac\\x63\\xc6\\x4d\\xa7\\x43\\x03\\x67\\xf0\\x00\\x39\\x79\\x91\\x5c\\x78\\x8c\\xde\\x8f\\x9c\\x2e\\xa1\\xf0\\xba\\xde\\x6a\\x25\\xbd\\x2f\\xe5\\xe0\\xc7\\xc5\\x65\\xc4\\xaf\\xbd\\x67\\x17\\x0b\\xa2\\x72\\x2c\\x63\\x9e\\x52\\x9a\\x91\\xcc\\x48\\xb6\\xf6\\xdb\\xfd\\x24\\xd9\\xfb\\x3d\\xc5\\xf9\\x9e\\xe2\\x9a\\xf2\\xa8\\x58\\x2c\\x88\\x08\\x64\\x25\\x3c\\x23\\x59\\x09\\x2c\\xe3\\x22\\x25\\xd1\\x71\\x19\\x1d\\xf1\\xc3\\xc1\\x73\\xc9\\x20\\x07\\x49\\xe3\\x14\\x1e\\x28\\xeb\\x8e\\xb2\\xf7\\x1a\\x3d\\x29\\x27\\xfb\\xe1\\xf8\\x64\\xfc\\x62\\x23\\x3d\\x44\\x2c\\x22\\xfb\\xdc\\x9f\\xae\\xca\\xf1\\xe4\\xe8\\xea\\xb6\\x9d\\x7c\\x79\\x39\\x17\\xb2\\x57\\x39\\x66\\x81\\xaa\\x84\\x7c\\xfa\\x7b\\x8e\\xd1\\x55\\x32\\x59\\x2c\\x10\\xa1\\x94\\x2e\\x49\\x46\\xcf\\x26\\x16\\x8b\\xe4\\x1a\\x11\\xc8\\xae\\xe9\\x72\\x3a\\xc5\\x22\\xe0\\xf5\\x66\\x23\\xab\\xce\\x99\\x43\\x13\\xb3\\xc0\\x6e\\x33\\x1f\\x9a\\x55\\x81\\xbf\\x83\\x8c\\x90\\x3e\\x10\\x4f\\x63\\xd9\\xfc\\x5b\\x02\\x39\\x9d\\x5c\\x92\\x48\\x6a\\x2b\\xc7\\x2a\\xc7\\x3f\\x04\\x4e\\x5a\\x87\\x19\\xe9\\x78\\x78\\x83\\x1b\\xe6\\x78\\x89\\x0d\\x21\\x6f\\xf6\\xc6\\xcb\\x74\\x90\\x46\\xa0\\xeb\\x1c\\x23\\xc0\\x40\\xd1\\xa3\\x1e\\x8e\\xa0\\x1f\\x8e\\xa0\\xd3\\xe9\\x19\\xa4\\x25\\xff\\x3f\\xa6\\x05\\xde\\x63\\x46\\xf9\\x80\\xf1\\xe2\\x20\\xe4\\x67\\xb2\\xab\\xe5\\x0d\\x5b\\x9d\\x83\\x2d\\x21\\xf3\\x7a\\xfd\\x04\\x42\\xaf\\x66\\x32\\x02\\x22\\xe0\\x25\\x33\\xb6\\x73\\x96\\x6f\\xe0\\x35\\xce\\x09\\x21\\x3d\\x63\\x4f\\xea\\x68\\xf8\\x9f\\xb2\\xb8\\x7b\\x6a\\x30\\xc2\\xc1\\x8c\\x5c\\x25\\x89\\x9d\\x25\\x49\\xe8\\x5f\\x68\\x3e\\x3a\\x1e\\xd9\\x1c\\xc5\\xf7\\xd7\\xe9\\xec\\x1a\\x01\\x52\\x9e\\xcb\\x59\\xf8\\xfb\\x9b\\x99\\x9d\\xb0\\x3e\\x02\\x7a\\x77\\x89\\xc8\\xa9\\x7f\\xd7\\xf7\\xa3\\xaf\\x90\\xc9\\x08\\x19\\x32\\x00\\x42\\x07\\x02\\x6f\\xae\\xaa\\x8f\\x10\\x4a\\x1f\\x88\\x2b\\x4d\\xbd\\x43\\xff\\x60\\xc6\\xca\\xf1\\x9d\\x31\\xb5\\x59\\x8d\\xd1\\x9c\\x45\\x0f\\x94\\x1d\\x0a\\x7c\\x76\\x8d\\xd6\\x3e\\x19\\xe9\\x40\\x55\\x95\\x34\\x9f\\x3e\\xff\\xfa\\xcb\\x99\\xbe\\xf0\\x2a\\x2c\\x00\\x4d\\xb5\\x8b\\xd0\\xd1\\xe2\\x78\\x58\\xf9\\x59\\x3e\\xb9\\xb6\\xd5\\x81\\x93\\x4f\\xee\\x43\\x5d\\x39\\x59\\x39\\x7f\\x71\\x5f\\x60\\xfd\\x89\\x1e\\x03\\xfd\\x0c\\x71\\xda\\x21\\xb2\\x4d\\x13\\x9d\\x69\\xfd\\xf1\\xcc\\x2f\\xc7\\x4d\\x68\\xfa\\x0d\\x9a\\xb3\\x4e\\xf3\\x87\\x5a\\xc8\\x5b\\x87\\x97\\x64\\x8e\\x22\\x74\\x20\\x5f\\xa5\\xf7\\x32\\x78\\xdd\\x0d\\x16\\x7e\\xf0\\x85\\xcd\\xf6\\x25\\xe3\\x4e\\x2e\\x81\\xd3\\x32\\xc8\\x54\\x25\\x30\\x03\\xd6\\xa5\\xab\\xa3\\xba\\x7d\\x97\\x69\\x56\\xaf\\x92\\x54\\x4e\\xf6\\xec\\x55\\x56\\x61\\x24\\x9a\\x88\\xe9\\xf4\\x4b\\xcc\\x52\\x7f\\xb7\\xe8\\xd0\\x7f\\x8c\\x59\\x4a\\xe9\\x68\\xe2\\x2f\\x1c\\xef\\x23\\x8f\\x63\\x46\\xa0\\x0c\\xf2\\xda\\xdc\\x31\\x5e\\xe2\\xec\\xcd\\xf1\\xf7\\x7c\\xfe\\x37\\x39\\xff\\x14\\x8b\\x94\\xd2\\x0e\\x68\\x17\\x8b\\x74\\xe2\\xdb\\x6d\\x7b\\xbc\\x19\\x9f\\x08\\x21\\x1c\\xa3\\x71\\x87\\x9f\\xf9\\xc7\\x05\\x45\\x17\\xfe\\xdd\\xdd\\x4c\\xdf\\x47\\x17\\xe4\\xe0\\x1b\\xf9\\x0d\\x0a\\xaf\\xd1\\x0a\\x5d\\x23\\x42\\x0e\\x20\\x2b\\xb1\\x3a\\xf7\\xf3\\x57\\x55\\xf5\\x2a\\x4e\\x22\\xc2\\xa3\\x0a\\x8e\\x3b\\x94\\x88\\x51\\x2a\\x3a\\xd5\\x93\\x4b\\x72\\x80\\x2e\\x22\\x5f\\x81\\xfa\\x24\\xde\\x13\\x39\\xf4\\xe9\\xd0\\xd2\\xf0\\xfe\\x2a\\xb1\\x33\\x1c\\x27\\xbb\\xd5\\x22\\x9d\\x13\\x8c\\x6f\\x56\\x89\\x9d\\x0f\\xdd\\xae\\x33\\xa3\\x7e\\xc1\\xcd\\x0a\\xdf\\xac\\x50\\x7c\\x8f\\xd2\\x19\\x22\\x2d\\xbe\\x59\\x5d\\xc4\\xf7\\x17\\xe9\\xec\\x82\\xb4\\xf1\\xfd\\x75\\x62\\xd3\\x39\\x21\\x37\\x64\\x46\\xfc\\xd2\\x24\\xbc\\xf1\\xef\\xeb\\x10\\xcc\\x00\\x9f\\x84\\xe7\\x36\\xfa\\x3b\\x17\\xc2\\x2d\\x0d\\x5f\\xec\\xbe\\xb5\\xe4\\x89\\x78\\x6b\\x64\\x46\\x06\\x7b\\xfd\\xc8\\x85\\x1f\\xb9\\x20\\x2d\\x3e\\x99\\x25\\x37\\x61\\x01\\x1f\\xbc\\xa5\\x10\\x7e\\x38\\x19\\x0c\\xe1\\x23\\x0d\\xbb\\x0c\\x8c\\x83\\xd9\\x0d\\xf1\\x29\\x37\\x2c\\x60\\x74\\x47\\xc3\\xab\\x49\\x12\\x7f\\xf8\\x78\\xfb\\xf9\\x36\\x89\\xbb\\xa9\\x34\\xed\\xa6\\x3e\\xd1\\xf0\\x1e\\xe3\\xdc\\x35\\xad\\xaf\\x25\\xec\\x0d\\x59\\x25\\x61\\x12\\xb6\\x1b\\xa6\\xb4\\xab\\x57\\xad\\x93\\x7a\\xd5\\x7e\\x43\\x42\\xf8\\xd1\\xb3\\xbe\\x4f\\xbe\\x59\\xfc\\xa7\\x1d\\xb7\\x93\\x94\\x84\\x05\\x34\\x54\\x61\\xc4\\x8c\\x64\\x90\\x19\\xe0\\xb5\\x86\\xd2\\x80\\xda\\x14\\xb0\\xcb\\x0c\\x22\\xf0\\xe4\\x67\\x79\\xad\\x0b\\x53\\x6f\\x1b\\x10\\x02\\x84\\x03\\xad\\xa0\\x01\\x97\\xd5\\xe2\\x19\\x9c\\x00\\x97\\xd7\\xb5\\x03\\x57\\x82\\x2b\\x25\\x13\\xe0\\xfc\\xae\\x67\\xbf\\xcb\\x34\\x60\\x1c\\x22\\x50\\xd3\\x32\\x90\\x4f\\xce\\x7f\\xd7\\xf6\\x07\\x78\\x86\\x27\\x02\\x9b\\x57\\x43\\x4f\\xe0\\x19\\x08\\x61\\xa4\\xb5\\xc0\\x8c\\x53\\x5c\\x4b\\x60\\x56\\x09\\x09\\x99\\xae\\xf9\\xfa\\xcb\\xb6\\x76\\x12\\x38\\x6b\\x7c\\x24\\x00\\x97\\x95\\x93\\x06\\x84\\xd4\\x20\\x94\\x01\\xa1\\x1e\\x41\\x68\\xc8\\x55\\xb1\\x35\\xd2\\xbf\\x8e\\xeb\\x3c\\x2d\\x69\\xa0\\xbc\\x84\\xf2\\x3d\\x94\\xdf\\x42\\xf9\\x1d\\x94\\xdf\\x43\\xf9\\x67\\xf0\\x34\\xfd\\x44\\x2f\\xc9\\xab\\xad\\x2c\\x6c\\x58\\x03\\x1b\\x59\\x6d\\xa1\\x62\\x8f\\x50\\x6b\\x68\\x8c\\x04\\xcb\\x8d\\x6a\\x1c\\x58\\xd9\\x85\\x20\\x38\\x96\\x69\\x09\\x5b\\x8d\\x08\\x81\\xea\\x8d\\x26\\x2f\\x00\\x58\\x96\\x19\\x60\\xdc\\xd4\\xd5\\xf3\\x06\\x32\\xc8\\x84\\x82\\x4c\\xd4\\x90\\xa9\\xa2\\x73\\xad\\xf2\\x22\\x6a\\x21\\x7b\\xea\\x79\\x05\\x72\\x03\\x79\\x5d\\x39\\x50\\x9d\\xbf\\x3d\\x8b\\x75\\x26\\x40\\xb3\\x4c\\xea\\x9e\\x0f\\x33\\x6b\\xf8\\x02\\x66\\x9b\\x3d\\x43\\xe7\\x4c\\xb0\\x60\\xd9\\xa6\\x01\\xbb\\x61\\x5a\\x83\\x6d\\x58\\x05\\xfe\\xd3\\xb2\\x96\\xfe\\x55\\x57\\x05\\xd8\\x6d\\x06\\x76\\xdb\\x80\\x53\\x1b\\x09\\xce\\xc1\\x16\\x1e\\x99\\xf1\\x7c\\x47\\x5f\\xfc\\x89\\x1c\\x05\\xb9\\x67\\x2d\\x11\\x81\\xc7\\x57\\x22\\x1a\\xd8\\x40\\x05\\x35\\x81\\x9d\\x5f\\x9a\\x31\\xbe\\xf6\\x0e\\xaa\\x44\\x4f\\xbc\\x34\\x32\\x07\\x5d\\x57\\x85\\x90\\x96\\x83\\x35\\x1c\\xb6\\x56\\x6e\\x58\\x83\\x08\\xfc\\xf4\\x0a\\x66\\xd7\\xf9\\xa2\\xf3\\x84\\x56\\x45\\x05\\x4c\\x3b\\x60\\x4f\\xca\\x42\\x56\\xf0\\x5a\\xd7\\x06\\xb2\\xda\\x78\\xf7\\x73\\xa9\\x75\\xc3\\x84\\x50\\x55\\xd1\\xb5\\x6d\\xc3\\x78\\xd7\\xd6\\xcc\\x5a\\xe0\\x5a\\xb2\\x2e\\x1a\\xeb\\xee\\x69\\xbb\\x87\\xd7\\xcb\\xeb\\x4d\\xc3\\xb8\\x03\\x5e\\xd7\\x46\\xd8\\x2e\\x02\\x72\\xc6\\xe5\\x70\\xa8\\x16\\x4a\\xa9\\x8a\\xd2\\x75\\x74\\x35\\xab\\x0a\\x28\\x3d\\xae\\x04\\x65\\xbd\\x43\\xbb\\x11\\xff\\xd8\\xb2\\x42\\x42\\x55\\x77\\xa2\\xaa\\x7a\\x67\\x58\\x03\\x46\\x6a\\x30\\xf2\\x11\\x4c\\xbd\\xb3\\xdd\\xc3\\x5b\\x33\\x5b\\x2d\\x2d\\x58\\x5e\\x37\\x5d\\x34\\xd4\\x5a\\x7b\\x8a\\xb6\\x64\\xbe\\xdf\\xbb\\x9f\\xf9\\x63\\xd9\\x6e\\x36\\xcc\\x3c\\x83\\x63\\xa6\\x90\\x0e\\x9c\\x72\\x5a\\x82\\x7b\\x6e\\x24\\x3c\\xf6\\x4e\\x78\\x64\\x7a\\x2b\\xe1\\xb1\\xe7\\xb2\\x53\\xc2\\x95\\xfe\\x50\\x34\\x15\\x35\\xdf\\xfa\\x8a\\x29\\xe0\\x46\\x32\\x27\\xef\\xb4\\xec\\xea\\x27\\xd4\\x18\\x89\\x48\\x54\\x06\\x9b\\x5a\\x6c\\xb5\\xc4\\xa8\\x2a\\x7e\\x63\\x95\\x72\\xea\\x77\\x89\\x20\\x4e\\x49\\xd0\\xe1\\x61\\xf4\\xce\\x9e\\x46\\xcf\\x13\\x65\\x9f\\xfc\\xe3\\x34\\x1a\\xf9\\xd2\\x7d\\x8b\\xc5\\xe9\\xa3\\x3e\\x16\\xc1\\x43\\xad\\x2a\\xdc\\x97\\xc1\\x5f\\xc5\\x27\\x81\\x50\\xc6\\x47\\xfc\\x63\\x37\\xfe\\x83\\xaa\\xc4\\x27\\xb7\\xd1\\x08\\xe2\\x3f\\x32\\x37\\x40\\x9f\\x86\\x86\\xd2\\x9b\\x07\\x4c\\x88\\x0f\\xfe\\x34\\x3d\\xce\\xc2\\x7f\\x14\\x55\\x55\\x78\\x7c\\xe6\\x18\\x46\\xef\\x8e\\x03\\x50\\x04\\x2f\\x66\\x7c\\x51\\xf2\\x6e\\xd7\\x7d\\x8c\\xce\\x87\\x5f\\xec\\x75\\xa5\\x0d\\xf3\\x5f\\x33\\x1e\\x94\\x6e\\xa3\\x71\\x36\\x14\\xf5\\x87\\x43\\xfa\\x87\\x8a\\x72\\xa5\\x9d\\x34\\x18\\x69\\x55\\xad\\x9f\\xcf\\xc8\\xf7\\xae\\x62\\x34\\xfc\\x4a\\xea\\xc4\\x43\\xee\\x24\\x37\\xf1\\xed\\xe2\\x5f\\x6c\\xf1\\xfb\\x72\\xf1\\x97\\xe0\\xdf\\x7f\\x9a\\x2f\\xd2\\xf9\\x5f\\x49\\xf2\\xdb\\x2c\\xbe\\x4f\\x6c\\x12\\x24\\x51\\x02\\x09\\x4e\\x48\\xb2\\x4f\\x0e\\xc9\\x55\\x72\\x9d\\x86\\x20\\x68\\x78\\x3f\\xec\\x0d\\xa3\\xb7\\xbe\\xe9\\x3c\\xe3\\x8b\\x70\\x4e\\x86\\x29\\x1e\\x0d\\x95\\x3d\\xe5\\xc7\\xda\\x7e\\x8b\\x25\\x01\\x05\\x6b\\xd0\\xfe\\x17\\x47\\xe5\\xb8\\x0c\\x94\\xfd\\x28\\x73\\x55\\x49\\x81\\x0b\\x42\\x74\\xd0\\x07\\x1a\\x2d\\xba\\x9f\\x80\\x28\\xa3\\xf9\\xf0\\x01\\x67\\x24\\x22\\x8a\\x8e\\x7c\\x09\\x0b\\x59\\xfc\\xde\\xff\\x81\\xc4\\xdf\\xfa\\x52\\x42\\x51\\x34\\x70\\x42\\x73\\x45\\x60\\x4d\\xb3\\xbe\\x90\\x85\\x87\\xa1\\xf4\\xcb\\x87\\x3a\\x15\\x2f\\x61\\xed\\x43\\x33\\xf0\\x77\\x83\\x2a\\x78\\x18\\xfe\\x90\\x10\\x43\\xa0\\xc9\\x69\\xf9\\xab\\x22\\x59\\x00\\xf2\\xe1\\xfc\\xd0\\xfd\\xba\\x20\\xd6\\xd5\\xc5\\xf9\\x59\\xdd\\xbb\\x9e\\x9f\\x17\\xd8\\xd1\\xc9\\xe4\\x29\\x2a\\xe5\\x4b\\x54\\x1e\\xc8\\x81\\xe0\\x9d\\xaa\\x44\\xbd\\x83\\xfe\\x15\\x0c\\xbf\\xc5\\x24\\x1a\\xfd\\x37\\x00\\x00\\xff\\xff\\x06\\x38\\x8d\\x51\\x59\\x0f\\x00\\x00\"\n\nfunc assetsClientStaticJsAngularSanitizeMinJsBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticJsAngularSanitizeMinJs,\n\t\t\"assets/client/static/js/angular-sanitize.min.js\",\n\t)\n}\n\nfunc assetsClientStaticJsAngularSanitizeMinJs() (*asset, error) {\n\tbytes, err := assetsClientStaticJsAngularSanitizeMinJsBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/js/angular-sanitize.min.js\", size: 3929, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticJsAngularJs = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xac\\xbd\\xf9\\x96\\xdb\\x36\\xb2\\x38\\xfc\\x7f\\x3f\\x85\\x84\\xdb\\x3f\\x06\\x88\\xd0\\x6a\\xb5\\x93\\xd9\\x48\\x23\\xba\\xed\\x25\\xb6\\x93\\x78\\xb9\\xb1\\x3d\\x99\\x8c\\x5a\\xc9\\x01\\x49\\x90\\xa2\\x44\\x91\\x32\\x49\\xf5\\x62\\x51\\xef\\xfe\\x9d\\x2a\\x80\\x24\\x28\\xc9\\x99\\x99\\xfb\\xdd\\x73\\xfa\\xb4\\x48\\x10\\x3b\\x0a\\xb5\\xa1\\xaa\\x70\\xf9\\xf5\\xd9\\xe0\\x3a\\x8b\\xb7\\xa9\\x2c\\x7e\\x78\\x3f\\xb8\\xbd\\x1a\\x5f\\x8d\\xff\\x74\\x36\\xa0\\x01\\x1b\\x3c\\x9a\\x5c\\x4d\\x2e\\x1e\\x4d\\xae\\x1e\\x0d\\x5e\\xe4\\x79\\x9c\\x2a\\x3e\\x78\\x95\\x05\\xe3\\xc1\\xa2\\xaa\\x36\\xee\\xe5\\xa5\\xd4\\x65\\x96\\xe5\\x38\\x2f\\xe2\\xb3\\xc1\\x4f\\x49\\xa0\\xb2\\x52\\xb9\\x83\\xd7\\xaf\\x3e\\x9c\\x7d\\x7d\\x79\\x46\\xa3\\x6d\\x16\\x54\\x49\\x9e\\xd1\\xd7\\xfc\\x03\\xdf\\xb0\\xdd\\x57\\xdb\\x52\\x0d\\xca\\xaa\\x48\\x82\\xea\\x2b\\xaf\\xf9\\x38\\x48\\x03\\xca\\x76\\xb7\\xb2\\x18\\xf8\\xe2\\xf5\\xd8\\x54\\xe9\\xb5\\x4f\\x62\\x1d\\x78\\x85\\xaa\\xb6\\x45\\x36\\xf0\\xf7\\x6d\\x99\\x7f\\x48\\xea\\xb3\\x9d\\x4e\\x1f\\xfa\\x75\\x5d\\x3d\\x6c\\x54\\x1e\\x0d\\xfc\\x71\\xaa\\xb2\\xb8\\x5a\\x0c\\x85\\x20\\xd9\\x76\\xed\\xab\\x82\\x4c\\x87\\x57\\x6e\\xfb\\x75\\x21\\xcb\\xb7\\x77\\xd9\\xbb\\x22\\xdf\\xa8\\xa2\\x7a\\x18\\x0a\\xd2\\x54\\x48\\x1c\\xa7\\xcd\\x14\\xe4\\x59\\x59\\x15\\xdb\\xa0\\xca\\x0b\\x3b\\xc7\\x74\\x38\\x71\\xfd\\x41\\x92\\x95\\x95\\xcc\\x02\\xc8\\xf9\\x73\\x5d\\xc7\\xd2\\x71\\x7a\\x69\\xb1\\xac\\xeb\\xe7\\x72\\x1c\\xc8\\x34\\xa5\\x3e\\x83\\x6e\\xcc\\x72\\x7f\\xa9\\x82\\x6a\\xf0\\x16\\x7f\\xe6\\xc4\\xea\\x2b\\xe4\\x52\\x4a\\x08\\xab\\x91\\x6e\\x84\\x19\\xf5\\xb9\\xe4\\x81\\x9e\\x99\\xd0\\x4b\\x22\\xea\\xb3\\x24\\xa2\\x2f\\xa9\\xcf\\x58\\x94\\x17\\x34\\x1c\\x24\\xd9\\xc0\\x67\\xe1\\x50\\x90\\x4d\\x91\\x57\\x39\\xd4\\x4a\\x1c\\x07\\xde\\xf5\\x1c\\x98\\x97\\x4c\\xae\\x21\\xfd\\x70\\xec\\x34\\x64\\x8e\\x63\\x3a\\x1a\\x70\\x7f\\x16\\xce\\x79\\xc8\\x3c\\x95\\x96\\x6a\\x00\\x4d\\x8d\\xa3\\xbc\\x78\\x2e\\x83\\x05\\x14\\x34\\x8f\\x43\\x21\\x32\\xd6\\xbe\\x51\\xe8\\x5b\\x9b\\x1f\\x97\\x43\\x77\\x4b\\x9c\\x4d\\xbc\\xf0\\x71\\xb3\\x10\\x5e\\x38\\x1a\\xb1\\xd3\\xcd\\x58\\x83\\xf8\\xf7\\x3a\\x77\\x0c\\x05\\x9f\\x7c\\x80\\x02\\x98\\x20\\x29\\x66\\x73\\x1e\\x78\\x50\\x67\\xf0\\x85\\x3a\\x03\\xac\\x73\\xb3\\x2d\\x17\\x34\\x68\\x2b\\x93\\xe3\\x32\\x2f\\x2a\\xca\\xac\\x79\\x0f\\x9a\\x89\\x87\\xca\\x70\\xf2\\x05\\xb6\\xc3\\x95\\x98\\x78\\xea\\x71\\xd8\\x8c\\x4c\\x1d\\x8c\\x6c\\xa6\\xe6\\x73\\x0e\\xff\\xdb\\xca\\xc3\\xae\\xd6\\xc2\\xef\\xe0\\x75\\xd0\\x6e\\x0b\\x6c\\xc6\\xa7\\x01\\x97\\x6c\\xdf\\xe5\\xfd\\x5e\\xd2\\xae\\x71\\x5f\\xf8\\xd2\\xb4\\xc8\\xa5\\xe7\\x7b\\x6c\\xe7\\x5f\\x5c\\x78\\x52\\xf8\\x72\\xe6\\xcf\\xc7\\xc1\\x42\\x16\\x4f\\xf3\\x50\\x5d\\x57\\x74\\xc2\\x00\\x46\\xa4\\x10\\x7f\\xfa\\x0b\\x6b\\x66\\x0a\\xf2\\x08\\x72\\x4d\\xb8\\x2f\\xc7\\xcb\\x3c\\xc9\\x28\\x21\\x4d\\xae\\xbf\\x4d\\x98\\xf9\\x3c\\x21\\x7a\\x3d\\x7a\\x85\\xde\\x57\\x45\\x92\\xc5\\xe3\\xa8\\xc8\\xd7\\x4f\\x4d\\x1b\\x54\\x8e\\xae\\x98\\x5d\\xd3\\xde\\x97\\xe3\\x6d\\x56\\x2e\\x92\\xa8\\xa2\\x64\\x42\\x98\\x77\\xd6\\x56\\xd1\\xe5\\x69\\x47\\x55\\xfa\\x30\\xaf\\x6c\\x27\\xa7\\xfe\\xf8\\xfc\\x7c\\x21\\xcb\\xc5\\x8f\\xea\\x41\\x48\\x37\\x54\\xa9\\xaa\\xd4\\xc0\\x4a\\xec\\xca\\x54\\xdd\\xf2\\x5a\\xdf\\xbd\\x8c\\xca\\x22\\xde\\xae\\x55\\x56\\x95\\xbc\\x9b\\x4b\\xb6\\x93\\x43\\x21\\x7c\\xc7\\x81\\x79\\x3d\\x98\\xe2\\x59\\x30\\x17\\x72\\xcf\\xf6\\xcc\\x33\\xdd\\x38\\x01\\x4c\\x6f\\xac\\x15\\xda\\xc8\\xa2\\x54\\xaf\\xb2\\x8a\\xfa\\xfc\\x6a\\x62\\x0d\\xa2\\x32\\x83\\x30\\xd9\\x2a\\x9a\\xa9\\xbb\\x01\\xad\\x3a\\x44\\xc7\\x76\\x7b\\xbe\\x6b\\xf7\\xa3\\xeb\\xef\\x19\\x83\\xc5\\xed\\x20\\x16\\x72\\x74\\x6f\\x16\\x16\\xb3\\xbb\\xf2\\xfe\\x14\\xb0\\x58\\x19\\xbb\\x9c\\x4f\\xad\\x9c\\x0d\\x5e\\x11\\x82\\x6c\\xb3\\x50\\x45\\x49\\xa6\\x42\\x0b\\xa1\\x3c\\x39\\x91\\x75\\x78\\x3a\\xeb\\x4f\\x76\\xb7\\x86\\x22\\xdb\\xa6\\x69\\x87\\x1f\\x85\\x20\\x1a\\xa5\\x59\\x05\\x9e\\x9f\\xec\\xc6\\x19\\x29\\x11\\x8c\\xac\\x8c\\xbf\\xca\\xd3\\x1d\\x36\\xc8\\xda\\xda\\x30\\x76\\xc6\\xe7\\x72\\x2c\\x37\\x9b\\xf4\\x81\\xfa\\xcc\\xc2\\xa8\\xcf\\x64\\xa5\\xe6\\x56\\x91\\xef\\xff\\x65\\x89\\xeb\\xa2\\x90\\x0f\\x76\\x91\\x97\\xa7\\x7b\\x73\\x02\\x1d\\x97\\xbd\\xa5\\x02\\xb4\\x18\\xe6\\x01\\xc2\\x20\\x3c\\xa7\\x79\\x20\\x21\\x1b\\x3c\\xcb\\x54\\x15\\x98\\x58\\xaa\\xea\\x55\\x56\\xa9\\xe2\\x56\\xa6\\x5d\\x3d\\x1f\\xed\\x4e\\x52\\x9f\\x4d\\xfd\\x71\\xa1\\x36\\xa9\\x0c\\x14\\xbd\\xfc\\xed\\xa6\\xfc\\xfa\\x92\\x13\\xc2\\xba\\xa4\\x9b\\xf2\\xeb\\x73\\x4c\\x72\\x2d\\xf0\\xc8\\x83\\x7e\\x5f\\xa8\\x3f\\xce\\xf2\\x50\\xbd\\x91\\x6b\\x55\\xd7\\xfe\\xd8\\x4f\\xb2\\x10\\xf1\\x76\\x92\\x85\\x16\\xe8\\xfd\\x53\\xf6\\x28\\x8a\\x98\\xcd\\x3d\\xa0\\x31\\x2d\\x7c\\xf9\\x3c\\xe6\\x09\\xdb\\x85\\x1a\\x45\\x76\\x98\\x0d\\x93\\x61\\xeb\\x1c\\x63\\xb5\\x17\\x52\\x6f\\x07\\xa4\\x18\\x49\\x16\\xaa\\xfb\\xb7\\x51\\x8b\\x7c\\x9a\\x04\\x2a\\x99\\x77\\xd6\\xa0\\xb3\\x40\\x4c\\xbc\\xa0\\xa3\\x0e\\xc1\\x68\\xc4\\x34\\x3e\\x12\\xb0\\x47\\x9b\\xb2\\x0d\\xc5\\xbf\\xb8\\xb2\\xb6\\x9e\\x69\\x4b\\xd7\\x62\\x5a\\xf6\\x82\\xef\\xc4\\x04\\xe7\\x7a\\x93\\x26\\x81\\xa2\\x01\\xbf\\xea\\x50\\x7b\\x57\\xf6\\xef\\x6d\\x37\\x71\\x19\\xeb\\x1a\\x17\\xf0\\x5c\\xdd\\xca\\xf4\\xba\\x7c\\xc8\\x02\\x7c\\xbb\\x93\\x55\\xb0\\x60\\xd5\\xa2\\xc8\\xef\\x06\\xcf\\x8b\\x22\\x2f\\x28\\x79\\x2a\\xb3\\xaf\\xaa\\x41\\x90\\x6f\\x1e\\x06\\xbf\\x24\\x59\\x98\\xdf\\x0d\\xf2\\x62\\xf0\\x3e\\xc8\\x37\\xca\\xe0\\x51\\x3d\\x74\\x21\\x84\\xfc\\x62\\x41\\xf5\\x69\\x9b\\xdc\\xca\\x54\\x65\\xd5\\x40\\x43\\x61\\x09\\x95\\x48\\x80\\xc4\\x52\\xd7\\xf2\\x7d\\x43\\x3b\\xf5\\xd0\\x1a\\x74\\x7f\\x3c\\x53\\x86\\x7a\\xfd\\x9d\\xe2\\x5c\\x69\\x32\\xba\\x83\\x02\\x3d\\xd4\\x68\\xaf\\x68\\xc0\\x76\\x06\\xbf\\xca\\x59\\x30\\xdf\\x33\\xaf\\xa5\\x69\\x9a\\x48\\xca\\x59\\x38\\x17\\x50\\x5f\\x38\\x47\\xd4\\x08\\xe0\\xb1\\xdf\\x43\\xbd\\x54\\x0a\\x9f\\x39\\x0e\\x76\\x6e\\x2a\\x21\\x0f\\x9f\\xcd\\x99\\x8b\\xdb\\x72\\x2a\\x05\\xe0\\x3d\\xd8\\x7f\\xd4\\x1f\\xc7\\xaa\\xfa\\x90\\xac\\x15\\x65\\xcc\\x05\\xbc\\xe1\\x38\\x54\\x67\\xdf\\xed\\x19\\xeb\\x68\\x82\\xb5\\x1a\\x9b\\xa0\\x5b\\x49\\x29\\x64\\x5d\\xef\\xf6\\xff\\x06\\xe9\\x0e\\xc6\\xe5\\xd6\\x2f\\xab\\x82\\x4e\\xf8\\x23\\x64\\xac\\xce\\xcf\\x09\\xb4\\x05\\xa8\\x1d\\xe7\\xe3\\xc4\\xba\\x27\\x16\\x7c\\xe2\\x22\\x19\\x86\\x71\\xe2\\x99\\x14\\xc0\\x6c\\x75\\x2d\\xcd\\x53\\xf3\\xf9\\x0a\\x3f\\x6b\\x62\\x02\\x34\\xc5\\x2a\\xa7\\x97\\xa8\\x41\\x15\\x1c\\xf9\\xb2\\x40\\x34\\x09\\xd2\\x71\\x82\\x0e\\x3d\\xb2\\x66\\x6d\\xa1\\x7d\\x1a\\x88\\x66\\x2d\\x99\\x68\\xd7\\x58\\xd3\\xf9\\x50\\x00\\xcb\\x14\\x20\\xaf\\x94\\x44\\x74\\x08\\xdd\\x06\\x9e\\x07\\x56\\x87\\x75\\x9d\\x6a\\x3a\\xa1\\x17\\x08\\xd8\\x2e\\x5c\\x8d\\x66\\xd3\\x14\\x92\\x4a\\x06\\x90\\xdc\\x2e\\x08\\xb4\\xd3\\xbe\\x68\\x68\\x81\\x81\\x7d\\x09\\xf6\\xeb\\x5a\\x02\\x87\\x64\\x7f\\x92\\xed\\x27\\xb3\\x71\\x4a\\x68\\xa4\\xeb\\x52\\x20\\x76\\x7b\\xcf\\x62\\xe4\\xa0\\xf7\\x34\\x44\\xb6\\x04\\x59\\x12\\x01\\x44\\xe0\\x9c\\xd4\\xf5\\x4b\\x0d\\x63\\x7a\\x2e\\xbe\\x34\\xc0\\x00\\xa0\\x71\\x38\\xd9\\xb7\\x15\\x4a\\xac\\x10\\x92\\x1d\\xc7\\xaa\\x15\\x57\\x9f\\x38\\x0e\\x14\\x1f\\x0a\\xb1\\x71\\x9c\\xe1\\x4b\\xfa\\xa5\\xc9\\x6a\\x52\\x3a\\xa8\\x38\\xef\\x61\\x92\\x96\\x95\\x30\\x4b\\xf2\\xdd\\xa3\\xe9\\xca\\x20\\xbf\\x8e\\xcb\\x78\\xc4\\xdc\\xd9\\xbc\\x01\\xb0\\x97\\x38\\xcf\\x43\\x2a\\x7b\\xc2\\x80\\x8a\\x9f\\xdf\\x6f\\xd8\\x34\\x30\\xd5\\x4c\\x8f\\xe9\\xf6\\x61\\x4b\\xd3\\x96\\x46\\xf1\\x00\\x84\\x8e\\x40\\x56\\xf4\\xb8\\xe9\\x09\\x63\\xcc\\xb5\\x72\\xb2\\xbd\\xfb\\x1f\\x55\\xdd\\x7e\\x82\\x5a\\x8c\\x5c\\xb2\\x77\\xad\\x4d\\xf2\\x29\\xe8\\x4d\\x87\\x77\\xf9\\xdb\\xcd\\xf9\\xe8\\x72\\x5c\\xa9\\x12\\xd8\\xaf\\x69\\x20\\x36\\x2e\\xae\\xfa\\x34\\x10\\xe4\\xfc\\x97\\x57\\x6f\\x9e\\xbd\\xfd\\x85\\xb8\\xd2\\x71\\x3e\\xc0\\x8e\\xc2\\xc4\\x67\\x6f\\x9f\\x7e\\x7c\\xfd\\xfc\\xcd\\x07\\x4c\\xee\\x03\\xd0\\x59\\x03\\x41\\x8e\\x43\\x21\\xeb\\xfb\\xa7\\x6f\\xdf\\x3d\\x27\\xed\\x5e\\x0d\\xba\\x6e\\x2c\\x64\\x8f\\xb5\\xfa\\xe1\\xfd\\xdb\\x37\\x63\\xcd\\x3e\\x24\\x11\\x8c\\xe3\\x53\\xc0\\xe5\\x94\\x0c\\x06\\xc4\\xc5\\xad\\xda\\x15\\xdc\\xfa\\x87\\x24\\x15\\xcb\\x22\\x0b\\x47\\xfd\\x1e\\xe1\\xdc\\x22\\x11\\xc7\\x0d\\xd0\\xca\\x89\\x93\\x29\\xf5\\xc5\\x2b\\x4a\\xc8\\xc8\\x67\\xdc\\x17\\x43\\x8a\\x0c\\x00\\xa9\\x6b\\xf8\\x9d\\x98\\xdf\\x48\\xa6\\xa5\\x32\\xcf\\x59\\xde\\x3c\\x98\\xdf\\xd9\\x9c\\x30\\xe6\\xfa\\xa2\\x85\\x3a\\x9b\\x95\\xbb\\xd5\\x4d\\x8a\\x3b\\xea\\xb3\\x71\\x90\\xe6\\x19\\x6c\\xc5\\xaa\\x78\\xd8\\xf9\\xe3\\x45\\xb5\\x4e\\x91\\x47\\x0e\\x60\\x82\\x80\\x98\\xec\\xf5\\x1a\\xdc\\x51\\xf2\\x38\\x4c\\x6e\\xbf\\x23\\x0c\\x56\\x51\\x65\\x21\\x94\\xc5\\xdc\\xba\\x68\\xd3\\xca\\x6c\\x32\\x47\\xc2\\xff\\xe1\\x61\\x03\\x52\\xe4\\x37\\xd3\\x57\\x34\\x60\\x6e\\x30\\x5e\\x63\\x7d\\x97\\xbf\\xd1\\xc7\\xb3\\xdf\\xbe\\x9b\\x8f\\xbe\\x63\\x97\\x6c\\x76\\x35\\xb7\\xf8\\x8c\\xc7\\x74\\x76\\x73\\x77\\x73\\x31\\x1f\\xb1\\x4b\\x9b\\x53\\x6e\\xa7\\x91\\x3c\\x26\\xa3\\x57\\x00\\x27\\x4d\\xdf\\xc2\\x76\\x82\\xa1\\x09\\x8b\\xff\\xbc\\xb5\\x24\\x30\\x40\\xe3\\x3c\\xf4\\x32\\x4a\\xfd\\xba\\x3e\\x03\\x36\\x06\\xa8\\x72\\x45\\x89\\x43\\x98\\x45\\x94\\x70\\x01\\x10\\x1d\\x9a\\xcf\\x82\\x30\\x1e\\x8a\\x50\\x05\\x79\\xa8\\x3e\\xfe\\xfc\\xea\\x69\\xbe\\xde\\xe4\\x99\\xca\\x2a\\x1a\\xcc\\x26\\x73\\x86\\x48\\x42\\x3c\\xa1\\xc1\\xec\\x6a\\xce\\xa6\\x27\\x73\\x5d\\xcd\\x99\\x3b\\x9c\\x58\\x2c\\x8a\\x05\\xdd\\x77\\x3d\\x11\\xf1\\x90\\xe3\\x09\\xd9\\xce\\x10\\xd5\\x3b\\x49\\x43\\x3e\\x9c\\xb0\\x11\\xd2\\x85\\xe1\\x64\\x4a\\x88\\x4b\\x04\\x19\\xdd\\x01\\x58\\x0e\\x61\\x13\\x5a\\xd5\\x77\\xbb\\x4c\\xcb\\x39\\x0e\\x61\\x2e\\xb1\\x98\\x45\\x69\\x83\\x64\\x53\\x43\\x37\\xff\\xff\\xef\\xd1\\x9f\\x2f\\xe3\\x84\\x43\\x31\\x2b\\xf1\\x9b\\x67\\x98\\x28\\x7a\\x89\\x8f\\x9e\\x60\\xe2\\xc8\\x96\\xa4\\xee\\xfa\\x3b\\x45\\x65\\x47\\x53\\xe2\\xdb\\x55\\x7c\\x3b\\xc1\\x2a\\xfe\\xbb\\xdf\\xd8\\x35\\x26\\xba\\xfd\\xc6\\xbe\\xbd\\x8c\\x39\\x39\\xef\\xa7\\x3d\\xc5\\x8c\\xbc\\x9f\\x38\\xb9\\x8c\\x61\\x37\\xfe\\xbf\\x47\\x13\\xe2\\xf6\\x3b\\x57\\x00\\x36\\x39\\x93\\x6c\\xd7\\xa6\\x04\\x28\\x9a\\x01\\x02\\xd7\\x8c\\x25\\xdb\\x1b\\xfe\\xd3\\x9f\\x73\\x05\\xcc\\xa5\\x98\\x91\\x2c\\x76\\xe5\\x66\\x43\\x38\\xc9\\xe2\\x0b\\xfd\\x70\\x7f\\xd1\\x3e\\x86\\xb2\\x92\\xcd\\xdb\\x9c\\x47\\xe2\\xf2\\xa6\\xcc\\xe2\\x99\\x7b\\x73\\x31\\x97\\x9b\\x0d\\x75\\x6f\\xca\\xaf\\x11\\x9c\\xc3\\xdf\\xe7\\x23\\xe6\\x4d\\xd9\\xf4\\xa6\\xbc\\xf4\\x32\\x9a\\xf4\\x44\\xc3\\x64\\x26\\x81\\xb4\\x78\\x01\\xfd\\x00\\x24\\xf1\\x79\\xaa\\x00\\x27\\x3e\\x79\\x78\\x15\\x02\\x3d\\xf3\\xa4\\x90\\xed\\xf0\\x88\\x4b\\x38\\xb9\\xb9\\x71\\x09\\xf3\\xfc\\xf1\\xa7\\xad\\x2a\\x1e\\xde\\xab\\x54\\x05\\x55\\x5e\\x5c\\x83\\x18\\x44\\x33\\x7a\\x9c\\x4c\\xc9\\x98\\x8c\\x24\\xe3\\x01\\xe3\\x5f\\xfe\\x3c\\xd2\\xb5\\x7e\\x39\\xd3\\x0c\\x33\\xcd\\x31\\x0b\\x80\\x5b\\x46\\xc3\\xfe\\x20\\x22\\x3a\\x54\\x8d\\xaa\\x2c\\x1a\\xab\\x7b\\x15\\x50\\x32\\x20\\x23\\x39\\x0e\\x52\\x59\\x96\\xc0\\xff\\x8f\\xc8\\x00\\xfa\\x3d\\xa5\\x4a\\x48\\x1e\\x0b\\xea\\xcf\\x1e\\xcd\\xeb\\xfa\\x40\\xa4\\x18\\xc1\\x32\\x73\\x40\\x5a\\x19\\x95\\x63\\x59\\x55\\x45\\xe2\\x6f\\x2b\\x55\\xf6\\x36\\x29\\x36\\xe6\\x38\\xc9\\xcc\\x1f\\x67\\x72\\xad\\xe6\\x4c\\xd7\\xe8\\x8f\\x6f\\x65\\xba\\x55\\x7b\\xb6\\xdf\\x33\\x4f\\x39\\x8e\\xa4\\x8a\\xc7\\xd3\\x59\\x3c\\x77\\x67\\x73\\xb6\\x3f\\x6b\\x57\\xfd\\xde\\xb7\\xa9\\x8a\\x45\\xb1\\x34\\x2a\\xf4\\x90\\xf1\\x9b\\xcd\\xbd\\x4e\\x85\\x30\\x23\\xe7\\x9b\\x22\\xbf\\x4d\\x42\\x45\\xfa\\x52\\xbd\\x6e\\x91\\x92\\xf3\\x22\\xcf\\x9b\\x95\\x23\\xdc\\x67\\xfb\\x39\\xb3\\x8a\\x93\\x2c\\x26\\xcc\\xf0\\x67\\x0f\\x3e\\x08\\x1d\\xc1\\x38\\xc9\\x6e\\xf3\\x95\\x82\\x9a\\xa1\\xa8\\x66\\xdc\\xf9\\x41\\x3d\\xe4\\x3c\\xc8\\xd7\\x9b\\x24\\xc5\\x2f\\x49\\xb6\\xc4\\xe5\\x80\\x67\\x99\\x25\\x6b\\x89\\xcf\\x36\\x8a\\x04\\x14\\xc7\\x15\\xf4\\xea\\x5c\\x53\\x58\\x7b\\x68\\x63\\x00\\x55\\x6a\\x57\\x13\\x32\\x0f\\x84\\x35\\x80\\x7a\\xe6\\xa9\\xb1\\xca\\xa4\\x9f\\xaa\\x90\\x02\\xb6\\x9a\\x5b\\x54\\x90\\x87\\xe2\\xf2\\xb7\\x37\\x2f\\x7e\\x7f\\xf6\\xfc\\xfb\\xe7\\x3f\\xff\\xfe\\xe4\\xed\\xdb\\x0f\\xef\\x3f\\xfc\\x7c\\xfd\\x6e\\x78\\x09\\xfc\\xe5\\x6b\\xc7\\x19\\x86\\x9a\\x1e\\xbf\\xc6\\xb5\\x68\\x59\\xbe\\x80\\x32\\x4f\\x27\\x09\\xfd\\xd3\\xae\\x72\\x08\\x32\\xa3\\xf7\\x12\\xa0\\xba\\xdc\\xae\\xd5\\x93\\x3c\\xaf\\xca\\xaa\\x90\\x1b\\x61\\x2f\\x71\\x1f\\x19\\xb6\\xa8\\x10\\xf0\\xbe\\x17\\x50\\x1b\\xcd\\xfb\\x8d\\xf2\\x06\\x56\\x8d\\xfc\\x4e\\x5a\\x42\\xd7\\x36\\x58\\x06\\xfc\\xac\\x8f\\x58\\x75\\x16\\x1a\\x4e\\xa5\\x4b\\x08\\x1b\\xf9\\xe3\\x2a\\xff\\x29\\xbf\\x53\\xc5\\x53\\x59\\x2a\\x0a\\xa4\\xa5\\xc3\\x10\\x7e\\x23\\x99\\x02\\xd0\\xf9\\x7d\\x51\\xea\\xda\\xf0\\x2f\\x83\\xaf\\xc8\\x88\\x42\\xeb\\x53\\xc2\\x46\\xe4\\xab\\x41\\x52\\x0e\\xc8\\x88\\x06\\x75\\x4d\\x0a\\x10\\xb1\\x0a\\x15\\x12\\x76\\x4a\\xad\\x73\\xdf\\x8a\\xbd\\x81\\xe3\\x7c\\xaf\\x05\\x14\\x5f\\xf8\\xb3\\x86\\x05\\xb8\\xb8\\x9a\\x33\\x2f\\xf0\\x51\\xb1\\xca\\x25\\x27\\x59\\x5e\\x0d\\x64\\xab\\x75\\xe1\\x83\\x38\\xaf\\xa0\\x21\\xff\\x94\\x02\\x64\\xda\\x53\\x16\\xe3\\x0a\\xd4\\x35\\xd1\\x9a\\x5e\\xd2\\x6a\\x9d\\x4f\\x76\\xab\\x42\\x19\\xbe\\xa3\\x18\\x08\\x5b\\xaa\\x63\\xe8\\x66\\xfe\\xbc\\xae\\x29\\xea\\xe2\\x40\\xb4\\xda\\x37\\xe9\\x14\\x86\\x43\\x8c\\x6e\\x9c\\x70\\xdd\\x16\\xe3\\x64\\x9d\\x87\\xdb\\xd4\\xde\\x39\\x0d\\x9e\\xd8\\xed\\xbd\\x43\\x4d\\x52\\x08\\x78\\x97\\xed\\xd4\\x17\\xb4\\xc2\\xc8\\x9b\\x6b\\x81\\xa8\\xa5\\x78\\xb0\\xa4\\x76\\xdd\\x56\\xc7\\x03\\x7e\\x16\\x5a\\x3d\\xb7\\xf7\\xc3\\x0c\\xa6\\x03\\x60\\x8a\\xcc\\xe9\\x0c\\x36\\x4e\\xcb\\x8c\\x76\\xc0\\xbf\\xde\\xef\\x35\\x5e\\xeb\\xad\\xfa\\x9b\\x7c\\xa0\\x47\\xe4\\x0e\\xc8\\x28\\xd4\\xfb\\xda\\x47\\x1d\\x2f\\xfc\\x5b\\x8a\\xfe\\x2e\\x23\\x7a\\xa3\\x13\\xc6\\xd7\\x62\\xf7\\xbb\\x7e\\xf9\\x9f\\xad\\xda\\x2a\\xd7\\xe7\\xbf\\x17\\xdb\\xec\\x49\\x9a\\x07\\xab\\xd2\\x0d\\xb8\\x01\\x95\\xd2\\x55\\x1c\\x16\\xcb\\x0d\\xb9\\x41\\x39\\x85\\x0b\\x35\\xb6\\xf8\\x87\\x34\\xc9\\xc0\\xb9\\x48\\x68\\xe4\\xe1\\x20\\x83\\x49\\x25\\x8c\\x97\\xaa\\xb8\\x4d\\x02\\x75\\xf0\\xdd\\xa4\\x12\\xc6\\x11\\x7b\\x1d\\x7c\\xc5\\x34\\xc0\\xf3\\x39\\x4a\\x10\\xd5\\xc1\\xe7\\x26\\x99\\x70\\x62\\xd0\\x1b\\x61\\x5c\\xe3\\xa3\\x24\\xcf\\x30\\x73\\xfb\\xf6\\xae\\xe9\\x29\\x27\\x85\\x8a\\x93\\xb2\\xd2\\x9d\\x4e\\xd2\\xca\\x0c\\x4a\\x3f\\x9e\\xce\\x16\\xe4\\x59\\x55\\xe4\\x69\\x6a\\xb2\\x76\\xaf\\xa7\\xb3\\x87\\x49\\xa1\\x82\\x2a\\xb9\\x55\\x26\\x37\\xe2\\xcd\\x2e\\xeb\\x19\\x69\\x33\\xe8\\xba\\xa3\\x24\\x76\\x97\\xbc\\xd8\\x66\\xae\\x8d\\xd0\\x83\\x86\\x11\\x68\\x40\\xa0\\x5a\\x24\\xe5\\x7e\\xef\\xc5\\x8e\\xb3\\xa4\\xb1\\x05\\x18\\x40\\x63\\xba\\x1d\\xf3\\xaa\\xa7\\x81\\x6b\\x11\\xcf\\x36\\xe8\\xe3\\x67\\x1b\\x16\\xd5\\x34\\x1c\\x57\\xf9\\xc7\\xcd\\xa6\\xc1\\x3a\\x6e\\xb8\\xef\\x28\\xe1\\x6d\\xc0\\xc9\\xeb\\xfc\\xf3\\xf9\\x95\\xcd\\xbf\\x84\\x06\\xd3\\x59\\xec\\x8b\\xde\\x49\\xca\\xeb\\x54\\xf2\\x33\\xe8\\x31\\xc0\\xa2\\xe4\\x09\\x8f\\xf8\\x82\\x2f\\xf9\\x9a\\xaf\\xbc\\x56\\x59\\xc3\\x76\\x09\\xb0\\xb7\\x48\\x97\\x98\\x17\\x89\\x09\\x96\\x5d\\x88\\xa4\\xc9\\x10\\x3d\\x5e\\x78\\xd1\\x68\\xc4\\x76\\x4b\\x71\\x47\\x93\\x59\\x04\\x28\\x68\\xba\\x1c\\x57\\x45\\x12\\xc7\\xaa\\x78\\x29\\xb3\\x30\\x55\\x05\\x25\\xe7\\xa1\\x2a\\xab\\x22\\x7f\\x20\\xcc\\x0d\\xc4\\x30\\xf0\\xd6\\xa6\\x26\\x25\\xe8\\x4a\\x2c\\xc7\\xc1\\x22\\x49\\xc3\\x42\\x65\\x94\\xb1\\xe6\\x88\\x60\\x29\\x94\\xb7\\x7e\\xbc\\xf4\\xd6\\xa3\\x11\\xf3\\xf5\\x3c\\xc7\\x92\\xae\\x66\\xeb\\x39\\x63\\xfb\\x06\\x89\\x84\\x46\\x38\\x84\\x51\\x58\\xf2\\xa1\\xe1\\xcb\\x62\\x39\\x8e\\x32\\x60\\xce\\x42\\x11\\x8e\\xcf\\xf3\\x22\\x89\\x93\\x4c\\xa6\\x75\\x1d\\x7a\\x41\\xf7\\x2a\\x42\\xaf\\xc9\\x27\\xce\\x2c\\x29\\xee\\x67\\xc3\\x3a\\xf4\\x0f\\xca\\x5a\\x9d\\xa0\\x87\\x0a\\x02\\x68\\xb7\\xff\\x1d\\xcb\\x3c\\x47\\xe4\\xec\\xdb\\x72\\x3e\\x79\\x4c\\xfa\\x78\\xa1\\x34\\xfc\\x52\\x39\\x00\\x3c\\x9d\\xac\\x37\\x9a\\x8c\\x03\\xf2\\x6f\\xe0\\x26\\x53\\x77\\xd8\\x8d\\xbd\\xa9\\xb2\\xe1\\xfe\\x3f\\x8c\\x83\\x42\\xc9\\x4a\\x19\\xca\\x4f\\x49\\x98\\xdc\\x12\\xe0\\x20\\x92\\x2c\\x53\\xc5\\xcb\\x0f\\xaf\\x7f\\x12\\x5a\\xec\\x72\\xfe\\xeb\\xea\\xcf\\x13\\xef\\xf1\\x25\\x8a\\x60\\x23\\xdf\\x03\\x22\\xba\\xce\\x6f\\xd5\\x53\\x98\\x6e\\x2a\\xc7\\x51\\x52\\x94\\x15\\xbe\\x30\\x4f\\xf9\\x66\\x16\\xf5\\x62\\xbc\\xc9\\x43\\x55\\x32\\x0f\\x92\\x4c\\x21\\xca\\xb4\\xb6\\xa6\\xc9\\xe8\\x5b\\xb0\\x16\\xf9\\x3d\\x88\\x46\\xe9\\x10\\x6a\\x40\\xf6\\xa0\\xcd\\xf5\\x80\\x70\\xff\\x19\\xf2\\xb6\\x20\\x28\\xc5\\x84\\xfb\\xc2\\xb7\\x1a\\xd5\\xcc\\x54\\xa7\\x2f\\x94\\xa3\\x11\\x83\\x92\\x33\\x39\\xb7\\xea\\xba\\xf6\\xfb\\x3a\\xe0\\x00\\xa9\\x89\\xba\\x85\\xf5\\x27\\xcc\\xd3\\xaf\\x0b\\x04\\x3f\\x02\\x94\\xe0\\x29\\xc8\\xfd\\x7d\\x36\\x14\\x0a\\xc7\\x50\\xcd\\x59\\xc0\\x25\\xf3\\x8c\\x7a\\x31\\x44\\xf5\\xa2\\xfb\\x94\\x06\\x6c\\x4a\\x63\\xdd\\x4a\\x08\\x6d\\xf3\\x36\\x83\\x9c\\x33\\xb7\\x92\\x14\\x1e\\x90\\xbf\\x6d\\x3b\\xf5\\xd9\\x12\\xd1\\xfc\\xd9\\x0f\\xf0\\x59\\xfc\\x28\\x67\\x72\\xee\\x05\\x20\\x28\\x8e\\x75\\x7f\\xf0\\x51\\xf7\\x74\\xdc\\xec\\x0b\\xc7\\x69\\xbe\\xd2\\xdd\\x9e\\x5b\\xdb\\x85\\xc3\\x40\\x59\\xdb\\x38\\xd6\\xc6\\xb1\\x6e\\xb1\\xb1\\x19\\x8f\\x03\\x95\\xb8\\x6e\\x3d\\x84\\xd6\\xc3\\xba\\xbe\\xb8\\x9a\\x03\\xbc\\x3e\\xa1\\x01\\x63\\x61\\x5d\\x53\\x5d\\x3e\\x14\\xa3\\xd1\\x5d\\x60\\x32\\xcd\\xc5\\x6e\\xcf\\x70\\xa0\\x22\\xe8\\x9d\\xa2\\x85\\x8e\\x03\\xa9\\xd6\\xe9\\xcb\\xc9\\x99\\x07\\x7e\\x91\\x30\\xae\\x40\\xbe\\x65\\x3c\\x16\\xc0\\x71\\x3f\\xa1\\x92\\xf1\\x44\\xc4\\x8e\\x33\\xfc\\x09\\x90\\xe4\\x30\\x74\\x9c\\x61\\xe2\\x38\\x56\\x09\\x1e\\x42\\xbb\\xd0\\x39\\xc5\\xec\\xc6\\x93\\x88\\xc6\\x2c\\x89\\x68\\xc2\\xfa\\xdd\\xd0\\x5f\\x2b\\x1a\\xc2\\x8a\\xf5\\xba\\x69\\x9d\\xf9\\xf4\\xa4\\x4a\\x94\\x2b\\xfc\\x03\\xb9\\xa2\\x93\\x21\\x66\\x37\\xd9\\x4d\\x35\\xbf\\x8c\\xf9\\x19\\xa6\\x37\\x9a\\x7e\\x14\\x46\\x30\\xeb\\x77\\xb6\\xea\\xfe\\x69\\xc3\\x3d\\xe2\\xd9\\x5c\\x23\\xf6\\x0f\\x6c\\xad\\x80\\x04\\xee\\xb9\\x6d\\x4d\\x7c\\xa4\\xff\\x6e\\x07\\x7a\\xc9\\x50\\xe6\\x23\\x95\\x0c\\x32\\xe3\\x97\\x1e\\x9b\\xf9\\xec\\xdf\\xea\\x06\\x60\\x28\\x33\\x17\\xac\\xdf\\xa5\\x83\\xde\\x60\\x4b\\xbd\\x06\\x94\\xdf\\xaa\\x9b\\x25\\xeb\\xb6\\xea\\x50\\xb6\\xc7\\x33\\xb8\\xba\\x8d\\xee\\xd7\\x71\\x86\\x5a\\xb1\\x26\\x5d\\xdc\\x13\\xa8\\xf0\\x97\\xb6\\xc2\\xdf\\x60\\x70\\x39\\x0b\\xec\\x4d\\xfc\\xbc\\x7f\\x08\\xf9\\x1a\\xe1\\xe2\\xdc\\x70\\xc7\\x59\\xfc\\xb4\\x25\\xe2\\xc0\\x28\\xdb\\x6f\\x5d\\x15\\xaf\\x5b\\xc0\\x37\\xe2\\x18\\xf4\\xf6\\x40\\x9f\\xf4\\x37\\xcd\\x28\\xe3\\x31\\x12\\x25\\x8b\\x6a\\x9d\\x02\\x83\\x6d\\xd3\\xb8\\x88\\x06\\xe2\\xcc\\x08\\x3d\\xb2\\x13\\x4a\\x3c\\x28\\xb5\\x91\\x05\\x20\\xd9\\xde\\xb9\\x76\\x4f\\x24\\x7c\\x23\\x67\\xb2\\x2f\\x12\\xb4\\x0a\\xd6\\xc0\\x71\\x5e\\x00\\x83\\xde\\xcc\\xda\\xdc\\x71\\x2c\\x12\\x73\\x1f\\x9c\\x94\\x2c\\x03\\xa0\\xfb\\xa8\\x2e\\x1e\\x6f\\x0a\\xc4\\x13\\xcf\\x54\\x24\\xb7\\x69\\xc5\\x0e\\x13\\x6c\\x69\\x34\\x18\\xeb\\x36\\xff\\x0e\\x0c\\x99\\x18\\x5e\\xed\\x3d\\x5d\\x45\\x59\\xe5\\x1b\\x60\\x8a\\x65\\x8c\\x4c\\x16\\x3b\\x4a\\xe9\\x57\\x12\\x00\\x25\\x4b\\x9f\\x6c\\x7d\\x3f\\x55\\x62\\x38\\x69\\x6a\\xa9\\x64\\x11\\x2b\\xe8\\x80\\x7e\\x10\\xc1\\xb8\\x2c\\x02\\x43\\x7f\\xea\\xfa\\x03\\xe4\\x7a\\x4a\\x83\\x71\\xa8\\xfb\\xf5\\x4e\\xf7\\x52\\x85\\x86\\x64\\xc5\\xe2\\xb0\\xe7\\xde\\x1f\\x0f\\xe5\\xb0\\x1e\\x31\\x9c\\x78\\xb1\\x39\\xc7\\x63\\x7b\\xef\\x54\\x86\\xab\\x7d\\x30\\x4e\\xca\\x67\\x87\\xe9\\xc7\\x1a\\xe6\\xe3\\xc2\\x75\\x7d\\xd6\\x9f\\x3d\\x9c\\xbe\\x8c\\x4a\\xe0\\xfa\\x83\\x31\\x48\\x3f\\xf3\\x03\\x41\\x5e\\xab\\x9f\\x79\\x00\\x02\\xe6\\x3f\\x1f\\x8b\\xbf\\x4e\\xe9\\xd1\\x80\\x40\\xec\\xe0\\xc7\\xb3\\x6d\\x92\\x4f\\x74\\x15\\xe5\\x14\\x97\\x1a\\x4c\\x7f\\x58\\x1f\\x6f\\xd3\\x0f\\x6a\\xec\\x3e\\x1c\\xd7\\x89\\x73\\xa5\\x52\\xb5\\x16\\xfe\\x09\\x45\\x75\\x2a\\x3b\\x72\\xd5\\x1e\\x04\\x05\\xc6\\xac\\xa2\\x91\\x0c\\x1d\\xc7\\x1f\\x9a\\x43\\xa5\\x24\\xa2\\x3a\\x1b\\xea\\x3c\\xdb\\xa3\\x3a\\x66\\x9f\\x33\\xb3\\xde\\x27\\xeb\\xb0\\x26\\x10\\x42\\x6c\\xfa\\x5f\\xc5\\xf7\\xb2\\x61\\x2a\\x82\\xae\\x83\\x72\\x44\\x5c\\x32\\xb2\\xba\\xf9\\x59\\x36\\x22\\x3e\\x72\\x23\\x9b\\x6d\\x85\\x0f\\x16\\x12\\x78\\xd9\\xd1\\x5d\\xdd\\xff\\x53\\x27\\xe0\\x7a\\x4f\\x51\\x34\\xc0\\xd0\\x02\\x17\\x63\\x52\\x9c\\xa1\\x24\\x06\\x22\\xbd\\x36\\x14\\xa1\\x1d\\x0e\\x7e\\x08\\x38\\x01\\xee\\x5f\\x34\\x7a\\xe8\\xcf\\xa8\\xef\\x0a\\x66\\x57\\x73\\x83\\x72\\xaf\\x83\\x03\\x75\\x70\\x5b\\xf6\\x49\\xd0\\x3b\\xbc\\xb4\\xd4\\xb3\\x21\\x20\\x5a\\xc6\\xdb\\x4e\\x08\\xa9\\x67\\x00\\x8f\\x27\\xad\\xb3\\xb5\\x8b\\x2b\\x0e\\x02\\xff\\x2c\\x98\\x73\\x12\\x65\\x20\\x35\\x01\\x23\\x8e\\x67\\xc3\\x13\\xe0\\x3a\\x5c\\x54\\x07\\xc0\\x27\\x3e\\x9c\\x9c\\xd2\\x17\\x3f\\xf8\\x87\\x72\\xf9\\xb1\\x64\\xeb\\x1b\\x55\\xc5\\x4f\\xc0\\x63\\xc0\\x6b\\xe1\\xa3\\x16\\xd1\\xa6\\xac\\x52\\xc3\\xf9\\xde\\x56\\x83\\x72\\xcd\\x1b\\xbf\\xc4\\x93\\x34\\x3c\\x19\\xf4\\xc5\\x6a\\xac\\x19\\xe1\\x2a\\xc1\\xd3\\x54\\x24\\xea\\x43\\x7f\\x7c\\x0e\\x78\\xa3\\xc7\\xf9\\x36\\x62\\x96\\x21\\xb1\\xeb\\x6d\\x59\\x0d\\xb4\\xe5\\xc6\\x00\\x32\\x0f\\x8c\\x40\\x3a\\x58\\xab\\x6a\\x91\\x87\\xe3\\x8e\\x1f\\x5e\\xcf\\xe4\\x28\\x9a\\x0b\\x4b\\xf7\\x10\\xda\\xba\\x7e\\xec\\xd8\\x0e\\xaa\\x70\\xfd\\x1e\\x31\\xa3\\xb2\\x51\\x21\\xa0\\xde\\x5c\\x1e\\x51\\xc9\\xe5\\x38\\x56\\x15\\x0c\\x3c\\x89\\xe8\\x12\\x00\\x8c\\x4a\\x7e\\x36\\x9c\\x30\\xfe\\x1c\\x12\\x0d\\x7e\\xbe\\x86\\x19\\x44\\x8a\\x60\\x4e\\xb8\\x14\\x05\\xac\\xa1\\xc5\\x70\\xc6\\x9a\\xd4\\x60\\xdc\\xc9\\xe9\\xfa\\x90\\xa3\\xb3\\xbe\\x0a\\xc6\\xb6\\x48\\x0f\\x74\\x92\\x47\\xa2\\x35\\xc3\\x0a\\x1e\\x47\\x48\\x2b\\x0d\\xca\\x04\\x46\\x94\\xe7\\x62\\x85\\x7d\\x8b\\x67\\x93\\x39\\xf3\\xf2\\x59\\x3c\\xbb\\x9a\\xcf\\x8d\\xd0\\x93\\xf3\\x78\\xf6\\x68\\xce\\xf6\\xe6\\x64\\x63\\xc1\\x76\\x7a\\x9a\\x17\\xe3\\xb5\\x2a\\x4b\\x19\\x03\\xa3\\xd9\\x3e\\x8f\\x04\\x19\\x44\\x45\\xbe\\x1e\\xa0\\x76\\x77\\xe1\\x75\\x47\\xaf\\x2f\\x61\\x8c\\xfa\\x1c\\x07\\x01\\x74\\xd5\\x28\\x1b\\x81\\x27\\xd0\\x55\\xa7\\x4d\\xd5\\xa9\\x55\\x75\\x7a\\xba\\xea\\xd4\\x6b\\x6b\\xfe\\xfe\\x5f\\xd7\\x9c\\x34\\x35\\x27\\x56\\xcd\\xc9\\x89\\x9a\\xcd\\xee\\x04\\x52\\xdb\\x69\\xbb\\x18\\x4f\\x4c\\x6b\\xf7\\x92\\xca\\x56\\x75\\x64\\x1d\\x70\\x58\\xb0\\x12\\x6b\\x58\\xb1\\xc0\\x38\\xc4\\xd5\\x37\\xb8\\x22\\x1c\\x0a\\xd1\\x58\\xf9\\xf4\\xe1\\xf5\\xbd\\x56\\x80\\x0c\\x32\\xb9\\x56\\x03\\x75\\xbf\\x51\\x81\\x96\\xd2\\xce\\x00\\x51\\x1e\\xab\\x9d\\x34\\xd7\\x04\\x1c\\xb5\\x10\\xc9\\x81\\x31\\x45\\x52\\x04\\xdb\\x14\\x40\\x41\\x6d\\x54\\x16\\xaa\\x2c\\x78\\x70\\x07\\x64\\xb4\\x30\\x87\\x2f\\x83\\xc7\\x17\\x03\\x4b\\xf5\\x07\\x75\\xe8\\xd1\\x59\\x47\\x65\\x8b\\x56\\x4d\\x1c\\x9a\\x03\\xa5\\x44\\xff\\xf8\\x80\\x59\\x22\\x90\\x68\\xd3\\x87\\xdd\\xa2\\x11\\xd9\\xf7\\x07\\x7b\\x85\\x1b\\xad\\x7b\\xa4\\x95\\x4f\\x2f\\x61\\xbb\\xf3\\x98\\xe7\\x7c\\xe1\\xe5\\x46\\x24\\x8f\\xc5\\xb2\\x81\\xc8\\xfc\\x71\\xec\\xe5\\xa3\\x11\\x5b\\x88\\xe5\\x2c\\x9f\\xf3\\x48\\x2f\\xa3\\x72\\x1c\\x75\\x38\\xec\\x05\\x9b\\xaa\\xd9\\x62\\xee\\x06\\x74\\xc1\\x40\\x12\\x35\\xc8\\xad\\xae\\xa9\\x14\\x72\\x16\\xcf\\x99\\x57\\xde\\x25\\xb0\\xe0\\xfe\\xf4\\xe2\\xca\\x8d\\x5a\\xa3\\x81\\x40\\x96\\x6a\\x30\\x71\\x5b\\x54\\x03\\x92\\x5b\\xa9\\x06\\x57\\x5d\\x4a\\x84\\x90\\x8f\\xa9\\x8f\\xfa\\xa9\\x3c\\x9a\\x5d\\x35\\x9f\\xbe\\x39\\xf1\\x89\\x47\\xb0\\x3d\\xf4\\xf7\\x6f\\xbf\\xf4\\x9d\\x47\\xb3\\x6f\\x9a\\x4c\\x7f\\xfa\\xc3\\x4c\\x3c\\x9a\\x7d\\x3b\\x67\\xde\\x19\\x66\\xfd\\xf3\\xbf\\xce\\xca\\xa3\\xd9\\x9f\\x9a\\x9a\\xff\\xf2\\x6f\\x66\\xe7\\xd1\\xec\\xcf\\x4d\\x99\\xbf\\xfe\\x27\\x65\\x78\\x34\\xfb\\x4b\\x53\\xf0\\x6f\\xff\\x71\\x41\\x1e\\xcd\\xfe\\xda\\x94\\xbe\\x9a\\xfc\\xef\\x8a\\xf3\\x68\\xf6\\xb7\\x39\\x48\\xd1\\xc8\\x81\\xb4\\x75\\xb4\\xa7\\xf7\\x51\\xab\\xb5\\xd9\\x69\\x2c\\xe0\\x86\\xdc\\x22\\x18\\x6e\\xff\\xf4\\xf6\\xe8\\xb0\\x65\\xcf\\x15\\xf2\\x8c\\xc6\\x1e\\x51\\x20\\x72\\x99\\xf6\\xd0\\x81\\x2b\\x59\\x97\\xc1\\x0b\\xd0\\xb2\\x27\\xf0\\x94\\x00\\xc0\\x0f\\xb8\\xdf\\xee\\xab\\x9f\\xa8\\x62\\x53\\xe5\\x06\\x7b\\x0e\\xa4\\x22\\xe0\\x32\\xcb\\xf2\\x0a\\xba\\xf0\\xd2\\xe7\\x0b\\x59\\xba\\x36\\x45\\x6f\\x28\\xcf\\x21\\xbc\\xfb\\xa3\\xb3\\x88\\xd5\\xf5\\xd1\\xf6\\xf7\\xd9\\x7e\\x8f\\xda\\xa7\\x44\\xec\\xf6\\x3c\\x12\\xa4\\xd3\\x29\\x2e\\xf4\\x96\\x83\\x5e\\x7d\\x96\\x7c\\x2d\\x76\\x8d\\x9a\\xd4\\xdd\\x59\\xaa\\xdb\\xc0\\x56\\xd3\\x86\\xb6\\x4e\\xf6\\xd4\\xf1\\x36\\x6e\\xea\\x99\\xad\\x40\\xb6\\x49\\x5b\\xbb\\x06\\x7d\\xc2\\xbc\\x9f\\x03\\x03\\xd2\\x28\\x73\\xbf\\x58\\xed\\x7b\\x20\\xeb\\xfb\\x9e\\x66\\xb7\\x9f\\x77\\x0d\\xf2\\xba\\xef\\xa5\\xf8\\xb3\\x67\\x3c\\x54\\x41\\x5e\\xc8\\x2a\\x2f\\x4e\\xae\\xa5\\xa6\\x63\\x72\\x14\\x31\\x0e\\x84\\x10\\xc8\\xb4\\xa7\\x7f\\xc4\\x81\\xa6\\x5f\\x8a\\x6d\\x43\\x28\\x42\\xde\\x19\\x38\\xb7\\x89\\x3e\\x47\\x1e\\x7a\\x77\\x0e\\x8c\\x6f\\x0c\\x0b\\x27\\xf7\\x30\\xed\\x7b\\xbe\\x12\\xeb\\x71\\x3b\\x17\\x22\\xa6\\x6b\\x5b\\xd1\\xdf\\xc3\\xc4\\x1f\\xb3\\x55\\x96\\xdf\\x65\\x83\\x76\\xe6\\x4f\\xa0\\xe1\\x3d\\xe3\\x29\\xac\\xe2\\x56\\xa4\\x56\\xad\\x67\\x31\\x4d\\xfb\\xc2\\x80\\x35\\xb4\\xa3\\xbe\\x4a\\x1c\\x21\\x97\\xfa\\x10\\x14\\x66\\xbf\\x57\\xb6\\xcb\\x57\\xd7\\x9f\\x2c\\xb2\\xb5\\xb5\\x54\\x0e\\x9d\\x4f\\xc1\\x70\\xa2\\xf5\\x71\\x61\\x52\\x4a\\x3f\\x55\\xd7\\xdb\\x2a\\x7f\\x1f\\x80\\x48\\x9c\\x64\\x71\\xff\\x60\\x12\\xe4\\x17\\xcc\\x8a\\xf3\\x3b\\x23\\xe7\\x77\\x68\\xf4\\x47\\x38\\x39\\x6f\\x0c\\x3c\\x9b\\xe3\\x43\\x73\\x96\\x68\\xab\\xc5\\x80\\x5b\\x3d\\xc5\\x3d\\xc1\\xb4\\x1f\\xf1\\x4f\\x43\\xdf\\x71\\x5e\\xd1\\x4e\\x31\\xc0\\x84\\x10\\x44\\x12\\x14\\xb9\\xe5\\x97\\x28\\x71\\x53\\x63\\x00\\xfb\\x67\\x41\\x19\\x0f\\x3d\\x7f\\x4a\\x43\\x91\\x1c\\x1e\\x69\\xfb\\x8c\\x4d\\xc3\\x71\\x89\\xa3\\x7c\\x95\\x55\\xf9\\xdf\\x13\\x75\\x47\\x41\\x48\\x12\\x8a\\xda\\x99\\xcb\\x27\\x0f\\xd0\\x38\\xe4\\x3f\\x59\\xc0\\x87\\x5e\\x55\\xf9\\x86\\x38\\x8e\\x34\\x5f\\x3f\\xe4\\x74\\xc2\\x27\\xcc\\x3d\\x78\\x37\\xbb\\x57\\xb6\\x56\\xb1\\x9e\\xef\\x38\\xa1\\xb1\\xfd\\xa1\\xa7\\xc4\\x49\\x3d\\x84\\xbd\\x75\\x6a\\xc8\\x76\\xa1\\x65\\x3b\\x44\\x63\\x6b\\x1a\\xe2\\xbd\\xa5\\x4a\\x7b\\x85\\x2c\\xba\\xd1\\xb1\\xea\\xb3\\x09\\xd1\\xd7\\x4f\\xfa\\x63\\x83\\x0d\\xe8\\x2b\\x89\\xea\\xa0\\xeb\\xe6\\xb4\\x84\\x00\\x53\\xde\\x5f\\xe4\\x3f\\xc4\\x02\\x07\\x27\\xe2\\x68\\x6c\\x2b\\xf0\\x24\\xa2\\x57\\x29\\x62\\x34\\x9c\\xc6\\x16\\x7b\\x00\\x70\\x03\\x5e\\xb3\\x3a\\xfe\\xcc\\xb8\\x16\\x1c\\x43\\x0a\\xb0\\x2a\\x0d\\xd2\\xc7\\x6d\\x7a\\x6c\\x07\\x76\\xc5\\x3a\\x46\\x25\\x89\\x68\\x7e\\x71\\xc1\\x73\\x21\\xc4\\x04\\x15\\x4d\\xde\\xe7\\x56\\x2d\\x03\\x55\\x7d\\x1e\\x6f\\xf2\\x0d\\x65\\xb4\\xe1\\x17\\x7d\\xb6\\x0b\\xc6\\x0a\\xf7\\x30\\xa2\\xda\\x43\\xee\\x8e\\x76\\x66\\xce\\x14\\x64\\xc6\\xa2\\xbf\\x55\\x29\\xac\\xc4\\x83\\xf0\\x69\\x89\\x5b\\xd2\\xf6\\x96\\x48\\x28\\xdb\\xdd\\x0f\\x45\\x34\\xde\\x16\\x29\\x65\\x8e\\x43\\xef\\x9b\\x67\\x9e\\xd1\\xdb\\x83\\x6a\\xcc\\x17\\xb6\\x67\\x6c\\x7f\\xa6\\xf9\\x29\\xd4\\x89\\x2f\\x84\\x04\\x92\\xb9\\x14\\x9d\\x21\\x35\\x5f\\x0b\\x7f\\xbc\\x48\\x4a\\x58\\x44\\xbe\\x12\\x68\\x4c\\xfd\\x21\\x59\\xab\\x7c\\x5b\\xf1\\x14\\x84\\x89\\x54\\xc9\\xa2\\x49\\xd8\\xa2\\x15\\xe2\\x38\\x29\\x5f\\xe7\\xc1\\x4a\\x0c\\xaf\\xf0\\xb4\\x30\\x17\\x13\\xfe\\x19\\x44\\x97\\x68\\x7c\\x8e\\x47\\x55\\x20\\xee\\xbf\\xdd\\x56\\x80\\x95\\xc3\\x24\\x8b\\x7f\\x56\\x9f\\xb6\\xaa\\xac\\x84\\xc2\\x0c\\x49\\x16\\x1c\\x7f\\x7b\\x9a\\x6f\\xb3\\x1e\\x9e\\xcd\\x47\\x23\\x68\\x28\\xcb\\xab\\x24\\x7a\\xf8\\x65\\xa1\\xb2\\x37\\xf9\\x71\\xa9\\x52\\xd8\\xa3\\x3e\\x3d\\x99\\xb8\\x72\\x53\\x49\\x99\\xfb\\xb9\\xb5\\x8a\\xc1\\x5e\\x17\\x40\\xee\\x1e\\xbc\\x68\\x2c\\xc3\\xf0\\x5d\\x9e\\xa6\\xdf\\x67\\xbd\\xda\\x9e\\xd2\\x07\\xe6\\x38\\x31\\xbd\\x9a\\x4c\\xf8\\x8a\\x79\\xc5\\xe1\\x49\\x9a\\xd4\\xb5\\xdc\\x8b\\xe5\\x78\\x51\\xa8\\x88\\xff\\x22\\xa4\\xd1\\xdf\\xf9\\xb2\\x54\\x84\\x79\\xb8\\x04\\xa2\\x4f\\x69\\x5a\\x43\\xe6\\xfb\\x61\\x6b\\xea\\x3a\\xb8\\x17\\x92\\x87\\xcd\\x0a\\x4c\\xfd\\xe9\\xba\\x11\\xd2\\xdf\\x03\\xd1\\xd7\\x40\\x4a\\x08\\x97\\xcc\\xa5\\x6b\\xec\\xc5\\x61\\x3a\\xff\\x05\\x2d\\x4b\\x28\\x81\\x8e\\x90\\xfe\\x1b\\x63\\xcc\\x3d\\xf3\\xa7\\xcb\\x56\\xf0\\x97\\xcc\\xd5\\x3d\\x16\\x92\\x47\\x7b\\x5b\\x8e\\xd6\\xc9\\xb6\\xed\\xd1\\x5f\\x2e\\x63\\x4e\\xbe\\x22\\x66\\xc2\\x6e\\x61\\xc2\\xae\\x61\\xd1\\xa3\\x71\\x9e\\x7d\\x2c\\xd2\\xa7\\x0b\\x99\\xc5\\xaa\\x37\\x6b\\xd7\\x75\\x4d\\xdb\\xb1\\x38\\x0e\\x9a\\xe2\\xf9\\x38\\x2b\\x9b\\x7c\\x53\\x42\\xbf\\x09\\x4f\\x18\\x0c\\x57\\x96\\x8b\\x00\\xcb\\x4f\\xad\\x4c\\x5d\\x2a\\x64\\x73\\xad\\xb5\\xa1\\x09\\x83\\xb6\\x27\\xcc\\xbb\\x3d\\xb1\\x12\\xd1\\x18\\x26\\xfd\\x25\\x8c\\xea\\x88\\x56\\xf7\\xa7\\xa3\\x2d\\x34\\x95\\x96\\x95\\xde\\xa2\\xaa\\x36\\xe5\\xf4\\xc6\\xbd\\xb9\\xbc\\xb9\\x9c\\xfd\\x76\\x73\\x39\\xd7\\xce\\x01\\x2e\\x21\\x7a\\xe8\\x2f\\x80\\xcc\\x3e\\x13\\x84\\xf0\\x73\\xd1\\xb5\\x45\\x61\\x91\\x83\\x3c\\x5f\\x25\\xaa\\x14\\xc7\\x2c\\x45\\xc8\\x15\\x8f\\xf8\\x52\\x5b\\xaf\\x1b\\x2b\\xe8\\x0d\\x5b\\x98\\x12\\x42\\x95\\x81\\xdc\\x28\\xc4\\x99\\xc2\\xdb\\xc8\\x6a\\x21\\xc8\\xe8\\x7c\\x44\\x3c\\x75\\xbf\\x01\\x81\\x5d\\x7c\\x58\\x6c\\xf9\\x60\\x72\\x35\\xf8\\x41\\x66\\x83\\xab\\xbf\\xfd\\x65\\x32\\x98\\x4c\\x5c\\xfc\\x1b\\xbc\\x78\\xfd\\x81\\xb4\\x6a\\x2b\\x3c\\x77\\x0b\\x05\\x3d\\x51\\xef\\x19\\x11\\x64\\x64\\x5e\\x01\\x8b\\xb6\\xad\\x34\\x67\\x98\\xa3\\x2b\\x1e\\x7e\\xf7\\xed\\xe4\\x6f\\x7f\\x76\\x9c\\x60\\x7c\\x27\\x8b\\x8c\\x92\\xa7\\x58\\xc9\\xe0\\x2b\\x54\\x7d\\x7c\\x35\\xd8\\xe4\\x65\\x99\\xf8\\xe9\\x03\\x9e\\x01\\x96\\xaa\\x1a\\xe4\\xc5\\x20\\xbf\\x55\\x45\\x94\\xe6\\x77\\x2a\\x1c\\xf8\\x2a\\x90\\x5b\\x90\\xa5\\xab\\xc1\\x9d\\x2c\\x07\\x55\\x9e\\x0f\\x52\\x59\\xc4\\x6a\\x40\\xc9\\x28\\x1c\\x91\\xc1\\x77\\x03\\xa8\\x7d\\xe0\\x3f\\x54\\xaa\\x64\\x43\\xa2\\x75\\x69\\xd0\\xeb\\xa6\\xb7\\x43\\x21\\x9e\\xb1\\xdd\\x33\\xd1\\xbc\\x7b\\xa1\\x78\\xd6\\x1c\\x17\\x78\\x03\\xc2\\xbc\\x17\\x8d\\xd9\\x33\\x1e\\xed\\x76\\x2e\\x61\\xd1\\x68\\xc4\\x94\\x08\\x67\\x11\\x20\\x33\\xd5\\x1d\\x8b\\x08\\xc2\\xf8\\xf2\\xbb\\x09\\x9a\\xc6\\x6f\\x33\\x33\\x78\\x65\\x0c\\xda\\x41\\x40\\x9f\\xf0\\x25\\x63\\xfc\\x05\\xf0\\x84\\x68\\xcf\\x4c\\xf1\\xf1\\x64\\xd6\\xe5\\xe8\\x8a\\xb1\\xce\\x20\\xe4\\xc5\\x1e\\x00\\x2d\\x54\\x51\\x9f\\x08\\x36\\x0c\\x24\\x08\\xa2\\x5e\\x20\\x56\\x36\\x09\\x36\\x9a\\xcf\\xed\\x2c\\x98\\x7b\\xb0\\x24\\x7b\\xee\\xd7\\xf5\\x84\\x79\\x90\\x00\\xdc\\x52\\xab\\xf2\\x6c\\x2a\\x36\\xea\\x6d\\x71\\x82\\x3e\\x6e\\x67\\x72\\x3e\\xa5\\x6d\\x8d\\x72\\xce\\x53\\x90\\x8d\\x15\\xfd\\xc4\\xf8\\x70\\xc2\\xdc\\xe1\\x95\\x45\\x6d\\x9e\\x07\\xd4\\xd0\\x6d\\xa4\\xbd\\x67\\x07\\x1c\\x56\\x0c\\x3f\\x65\\x96\\x44\\x11\\xda\\x1d\\x9c\\x37\\xac\\x04\\xb1\\x95\\x82\\x86\\x7c\\x5a\\x67\\xbd\\x48\\x55\\x43\\x3c\\xcd\\xb0\\x89\\xed\\xf7\\xfd\\xc6\\x4e\\xd9\\xae\\xf8\\xda\\x50\\xa9\\x4f\\x8a\\x61\\x63\\x0c\\xc5\\x0a\\x1f\\x52\\xfd\\x5f\\x08\\xc9\\x52\\x21\\xc7\\x99\\xc6\\x4c\\xa9\\x90\\x5e\\x0c\\xbc\\x1b\\x97\\xe3\\x0d\\x83\\x47\\xc0\\xc5\\x2b\\x21\\xbd\\xd5\\x58\\x6b\\xaa\\x8f\\x29\\xac\\xae\\xb5\\x41\\xb6\\x72\\xbc\\x11\\xbe\\x76\\xe9\\xf4\\xc7\\x99\\x90\\x68\\x02\\xe3\\x6b\\x8b\\xf7\\x1e\\xc3\\x1d\\xc8\\x60\\xa1\\x5e\\x85\\x03\\x32\\xf2\\x47\\x64\\x50\\xc9\\x95\\xca\\x8c\\x91\\x5b\\x82\\x5a\\xb0\\x8a\\xee\\xf6\\x3c\\xe4\\xbb\\x24\\x74\\x41\\x96\\x58\\x00\\x46\\x58\\x8a\\x10\\xad\\xe5\\xe5\\x46\\x06\\x49\\xf5\\x50\\xd7\\x6f\\xd0\\xb7\\x6a\\xfc\\xfa\\xfa\\x1f\\xbf\\xff\\xfd\\xfa\\xa7\\x8f\\xcf\\x41\\x8a\\x02\\xae\\x1f\\x71\\x75\\xaa\\xf9\\x53\\xcb\\xec\\x48\\xec\\x36\\xdb\\xea\\xa4\\x30\\x02\\xa2\\x4b\\x5d\\x53\\x94\\x60\\x76\\x2b\\xf5\\x00\\x12\\x84\\xa7\\x68\\xa0\\x95\\x96\\x4f\\x2d\\x5f\\x04\\x09\\x63\\x59\\xd4\\x75\\x32\\x1a\\xf1\\x05\\x4a\\x3a\\x3c\\xf9\\x6e\\xe9\\x38\\xf6\\xc1\\x78\\x3a\\x5e\\xa9\\x07\\xc6\\xcf\\x7c\\x2d\\x51\\xda\\xc0\\xa5\\xd9\\x5c\\x68\\x47\\x4f\\x52\\x63\\xce\\x01\\x82\\x00\\x54\\xb7\\xe7\\xba\\x8e\\x3f\\x2c\\x64\\xbc\\x3e\\x56\\x0c\\xd8\\x87\\x8d\\xf1\\xf8\\x48\\x19\\x70\\x0f\\x99\\x17\\x53\\x7f\\x9c\\x71\\x1f\\xd6\\xcf\\x00\\x2f\\x16\\x34\\xcf\\x0b\\xac\\xe4\\xe2\\x62\\xdf\\x34\\x74\\x9d\\xa6\\xb6\\xd5\\x3d\\xcc\\xb3\\x97\\x88\\x89\\x07\\x33\\xe9\\xad\\x84\\x9e\\xc4\\x3d\\x37\\xe7\\xcf\\x76\\xd6\\xb5\\x88\\xc4\\x42\\xcf\\x71\\xeb\\x89\\xe3\\xcf\\xf7\\x3c\\xc9\\xa2\\xfc\\x84\\x21\\x3f\\x2e\\x68\\xc4\\x77\\x65\\xf2\\x59\\xb9\\xc9\\xbe\\x91\\x8b\\x25\\xb4\\xe3\\x8f\\xa1\\xd0\\x21\\x2d\\x41\\x0b\\xaf\\x03\\x97\\x47\\x85\\xb6\\x57\\x73\\x21\\xb1\\x04\\xed\\xc9\\x13\\x1e\\x3a\\x88\\x88\\x13\\xe2\\x3a\\x76\\xcc\\x3b\\xe1\\x64\\xf8\\xa2\\xbf\\x95\\x66\\xe4\\x1c\\xe1\\xf2\\x7b\\x63\\x02\\xc5\\x4f\\xd4\\xe5\\x53\\x52\\xa9\\xf5\\x26\\x95\\x95\\x2a\\x49\\x6f\\x5f\\xfe\\x60\\x9d\\xf6\\x9f\\xed\\xf6\\x3c\\x10\\xe4\\x59\\x6b\\x35\\x84\\x76\\x90\\x37\\xe5\\xd7\\xad\\x1d\\xd1\\x8d\\x31\\xef\\x0d\\x6f\\xee\\x6e\\x2e\\x7e\\x9f\\x8f\\xd8\\x4d\\x39\\xa2\\xe3\\xaf\\xd9\\xf9\\x25\\x57\\xe2\\x92\\xda\\x5f\\xe8\\xd4\\xbd\\x71\\xe9\\xec\\x37\\x6f\\x3e\\x62\\x6c\\xea\\x4d\\xd9\\x25\\x8f\\x05\\xf9\\x60\\x7a\\xa1\\x15\\xe6\\x0b\\x79\\xab\\x06\\xea\\x5e\\x06\\x55\\xfa\\x30\\xc8\\x33\\x35\\x00\\x59\\x6e\\xa0\\xb4\\x34\\x34\\x06\\x72\\xe1\\x0e\\x08\\x4f\\x74\\x27\\xa8\\x26\\xc0\\x75\\x54\\x6d\\xea\\xb5\\x4c\\xd2\\x2a\\xaf\\xa3\\x24\\x55\\xcc\\xbd\\x6c\\x04\\x4a\\xd3\\xc9\\x76\\x32\\x07\\x0b\\x8a\\xe6\\x47\\xcf\\x69\\xc8\\xa6\\x34\\xf0\\xa9\\xe2\\x3d\\x93\\xa8\\x13\\x7a\\x4f\\x34\\xf2\\x0b\\xe7\\xc0\\xc5\\x74\\x52\\x4b\\x38\\x0a\\xfa\\xfa\\x09\\x72\\xae\\xee\\x03\\xb5\\x81\\x36\\x8c\\x71\\x10\\x39\\x70\\xf3\\x42\\x13\\x25\\xa3\\xa9\\x9f\\x85\\xfd\\x83\\x37\\x10\\x09\\xb4\\x76\\xdc\\xef\\x74\\xc9\\x1e\\x2a\\xb1\\x63\\xc6\\x62\\xb1\\x33\\x96\\x5c\\xee\\x7b\\x10\\xba\\x5a\\x53\\x82\\x61\\x3c\\x36\\x1f\\x1c\\x27\\x1e\\xa7\\x49\\xb6\\x62\\x6d\\x8a\\x78\\x4f\\x4d\\x92\\x17\\x8f\\x37\\x45\\x92\\x17\\x49\\xf5\\x20\\xba\\xc7\\xba\\x9e\\x78\\xb1\\xb6\\x4c\\x8d\\x8d\\x5d\\x64\\xe8\\xc5\\x8d\\xe2\\x5f\\x9c\\xb5\\x8f\\x75\\x0d\\x75\\x36\\x67\\xd4\\xd0\\x10\\xe4\\xc6\\xac\\x3a\\x50\\x80\\xe8\\x1e\\xeb\\x9a\\x5c\\x13\\x4f\\x19\\xb3\\x26\\xd6\\x69\\xf0\\x03\\xba\\x40\\x7b\\xe4\\x06\\x4f\\xec\\xe7\\x4c\\xab\\x79\\x8d\\xea\\x15\\x2d\\x9d\\x43\\x5e\\xf8\\xa8\\x67\\xb5\\xad\\xce\\xf4\\x4a\\x6e\\x8b\\xf4\\xbd\\xcc\\x92\\x2a\\xf9\\x8c\\xc2\\xc7\\x2f\\x8b\\xa4\\x52\\x69\\x52\\x56\\xa7\\x28\\xde\\x13\\x2a\\xd9\\x94\\x26\\x42\\xea\\xe3\\x34\\x37\\xf9\\xa2\\x38\\x09\\xcf\\x95\\x2a\\x36\\x79\\x8a\\x1c\\xe6\\xa9\\x35\\x24\\xe7\\x00\\x63\\xf0\\xdb\\xec\\x96\\xa7\\xb0\\xb3\\x20\\x01\\xfd\\x57\\xb4\\x79\\x72\\x7b\\x82\\xcf\\x0f\\x0c\\x99\\x4f\\x52\\x48\\xb4\\x45\\xe3\\x29\\xdf\\xf2\\x9c\\x7f\\xe6\\x85\\x45\\xdf\\x1e\\xb4\\x01\\x33\\xdb\\xf5\\x3c\\x97\\xee\\x50\\xdd\\x7c\\x87\\x27\\x58\\xc7\\xee\\x83\\xbe\\x65\\x11\\xf0\\x8d\\xe3\\xe8\\x57\\x3c\\xef\\x6d\\xdc\\x4c\\x6e\\xde\\x8f\\x2e\\x59\\xe3\\x89\\x87\\x6c\\xf3\\x5d\\x21\\x37\\x94\\x3c\\x2e\\x37\\x32\\xfb\\xee\\xf1\\x25\\xfe\\x10\\xd6\\x5a\\x04\\xcc\\x26\\x73\\x40\\x48\\x67\\xfa\\x70\\xe7\\x17\\xec\\x93\\xb4\\x34\\x56\\xfd\\xf6\\xd1\\x36\\x98\\x94\\xc6\\xe7\\xb2\\x39\\x14\\x52\\x22\\x98\\x3e\\x91\\xda\\x62\\xca\\x08\\xca\\xcc\\x95\\x7c\\x29\\x26\\x3c\\x16\\xaa\\x61\\xc7\\x96\\x8f\\x63\\x6f\\xd9\\x1c\\x0d\\x2d\\x84\\x9a\\x2d\\xe7\\x1e\\x5d\\x58\\x03\\xba\\xaa\\x6b\\xfb\\xf5\\x6f\\xcc\\x71\\xd4\\x58\\x7d\\xa2\\x4b\\xd6\\x58\\x72\\xeb\\x86\\xb9\\xcf\\xf6\\xf7\\xb0\\x99\\xb3\\xf8\\xa2\\xe9\\x4a\\xe0\\x38\\x01\\x55\\xdc\\x67\\x1e\\x90\\x5b\\xea\\x73\\xc5\\x95\\x05\\x81\\x96\\xbd\\x82\\x26\\xa1\\x46\\xc4\\x0f\\xc3\\xa7\\xa9\\x2c\\x4b\\x90\\xc3\\x35\\xf8\\x06\\x6c\\x67\\x65\\xfe\\xa5\\xb1\\x31\\xef\\xb3\\x25\\x68\\x75\\x1e\\x9b\\x81\\xf0\\x04\\xd7\\x37\\xe7\\x6b\\xbe\\xd5\\x22\\x6e\\x73\\x08\\xb1\\x16\\x41\\x77\\x08\\xb1\\xc6\\x43\\x08\\x23\\x5f\\x06\\xb3\\x7c\\xce\\xbc\\xad\\xe8\\x72\\x2e\\xed\\x9c\\xdb\\xd1\\x88\\x25\\xe2\\xf3\\x6c\\x3b\\xe7\\x81\\x58\\xce\\xf2\\xd1\\x68\\xce\\x17\\xcd\\x43\\x30\\xa5\\xc1\\x18\\x87\\x3d\\xa5\\x2b\\x21\\xc7\\xe7\\x99\\xba\\xa3\\x3f\\x35\\x69\\x8c\\xf1\\x3b\\x9a\\x1c\\x4e\\xd8\\x8a\\x31\\x77\\x25\\x24\\xa7\\xa9\\x08\\xc6\\x55\\x21\\xb3\\x32\\x48\\xb7\\xa1\\x62\\x75\\x7d\\x36\\x8c\\x1d\\xc7\\x9f\\x06\\x74\\xc1\\x57\\x3c\\xb1\\xad\\x8a\\x4f\\xf8\\xbc\\xb7\\xe6\\x52\\xa6\\x55\\xe6\\x85\\xe3\\xf3\\xf3\\xae\\xbe\\xd0\\xe2\\x57\\x7d\\xd4\\x7b\\x1a\\x99\\xad\\x35\\x05\\xe3\\xe7\\x92\\x86\\x3c\\x6c\\x4d\\xc6\\x18\\xdb\\xef\\x69\\x5a\\xd7\\x3e\\x63\\x6e\\xd3\\x87\\x0d\\x8f\\x19\\x73\\x17\\x8e\\xb3\\xa0\\x92\\x27\\x96\\x51\\x1d\\x7e\\xd9\\x37\\x40\\xb7\\x04\\x24\\x1d\\x73\\x2c\\x23\\x26\\x5e\\xd2\\xd9\\xea\\x24\\x78\\xda\\x03\\xcc\\xe8\\x5a\\xf2\\x58\\xdc\\x52\\x39\\x4b\\xe6\\x7c\\x36\\xe7\\x0b\\x1e\\x02\\x57\\x46\\x63\\x11\\x37\\x3e\\x43\\xd7\\x34\\xe6\\xf8\\x79\\x81\\x7b\\x51\\x7b\\xb3\\x01\\xde\\xab\\x54\\xb1\\xd6\\x96\\x96\\x43\\xf8\\xde\\xb3\\xed\\x3b\\x4c\\x69\\x2a\\x83\\xc2\\xee\\x2f\\xf4\\xe0\\x2b\\x8f\\xa7\\xb1\\x35\\xe9\\xae\\xcf\\xf8\\xb2\\x41\\x9a\\xcd\\xd3\\x82\\xf1\\x95\\x58\\xd5\\x75\\x5c\\xd7\\x8b\\x66\\x06\\x57\\x53\\x85\\xdd\\xb1\\xdc\\xbb\\x0c\\x38\\x2e\\x3b\\x8b\\x94\\x73\\x10\\x5c\\xf9\\xa2\\x39\\x99\\x92\\xed\\xfe\\x31\\xc7\\x52\\x57\\xee\\x0b\\x60\\xab\\x25\\x5d\\xf8\\x54\\xb2\\xbe\\x85\\x0f\\xe3\\x67\\xe4\\x39\\xe1\\x4b\\xc3\\xc2\\x02\\x18\\x7b\\x0b\\x61\\xbb\\xa0\\xb4\\x3b\\x3c\\x17\\x13\\xbe\\x16\\xb0\\x26\\x87\\x10\\x9d\\x44\\x34\\x11\\x8b\\x59\\x3e\\xe7\\xc9\\xb8\\xdc\\xa8\\x20\\x89\\x12\\x15\\xb2\\x95\\x48\\x90\\x72\\xf0\\x54\\x84\\x92\\xae\\x18\\xff\\x55\\x7b\\x4c\\xc0\\xdc\\xd2\\x95\\x48\\x1b\\xef\\xe1\\x3f\\x1f\\x75\\x49\\x17\\x38\\x4c\\x8d\\x67\\xe9\\x5c\\xac\\x78\\x00\\x3f\\x89\\xf8\\x48\\xff\\xe9\\x38\\x2b\\x21\\xb4\\xbc\\x7e\\xca\\x0b\\x0d\\x15\\x7e\\xd7\\xcd\\x38\\xe8\\x8a\\x3f\\x62\\xcc\\x4d\\xb4\\xeb\\x0a\\xe3\\xdf\\xfb\\x54\\x72\\xec\\x0a\\x56\\x38\\x9c\\x30\\x5e\\xe2\\xd4\\x26\\x3c\\x65\\x1c\\x26\\x2c\\xe5\\xe4\\x1a\\x67\\x46\\x0a\\xcb\\x9d\\xc7\\x43\\x59\\x5a\\x32\\xed\\x87\\x4c\\x88\\x56\\xf6\\x2d\\x84\\xd2\\xce\\x3f\\x92\\x79\\x0c\\xbb\\xbf\\x98\\x3d\\x9a\\xb7\\xf5\\x3c\\x85\\x7a\\x9a\\xa6\\x3e\\xd2\\xc5\\xec\\x1b\\x24\\x87\\x42\\x36\\x73\\xb0\\xd0\\x92\\xe9\\x68\\x31\\x9b\\xcc\\x9b\\x33\\x45\\xcf\\x2f\\x94\\x5c\\x35\\xc7\\x82\\xef\\x40\\xd2\\xea\\x50\\x7d\\xef\\xeb\\x5f\\x5d\\x40\\x65\\x20\\x2e\\x8b\\xd0\\x74\\xc3\\xca\\xd9\\xf4\\xe7\\xaa\\xeb\\xcf\\x6b\\xc2\\xcf\\xfa\\x1d\\x7a\\x34\\x6f\\x8f\\xb2\\xb7\\x80\\xfe\\x7c\\x1d\\x85\\xe5\\xc7\\x53\\x6a\\xef\\x6b\\xdb\\xeb\\xc6\\x62\\xb4\\x3a\\xd5\\x95\\x6c\\xd9\\x8a\\xb2\\x79\\xe2\\xad\\x5a\\xad\\x91\\xb2\\x8e\\xb3\\xa8\\xce\\xdd\\xc5\\x52\\x67\\x76\\xe2\\x0e\\x0f\\x85\\xb1\\xb6\\x54\\x42\\xbb\\x84\\x6b\\xbb\\x06\\x5c\\x02\\x1a\\xc0\\x32\\x35\\x86\\xca\\x4c\\x08\\xf2\\x1b\\xa9\\xeb\\x40\\x08\\x32\\x25\\x1e\\xb3\\xe6\\xfa\\x8a\\xf1\\x00\\xbf\\x3a\\x0e\\x0d\\x05\\x49\\xb2\\x85\\x2a\\x92\\x4a\\x85\\xcf\\x1a\\xcb\\x4f\\xd5\\x16\\x0b\\x84\\x3f\\x0b\\xe7\\x94\\x9c\\xa3\\x9a\\xc3\\x36\\xdc\\xd3\\xe6\\x64\\x8e\\x73\\xc2\\x4b\\xc2\\xb2\\xe0\\x47\\x4b\\x02\\xaf\\xb1\\x8b\\x91\\x38\\xe3\\x80\\xb2\\x0e\\xcf\\x1e\\x8c\\xfd\\xbd\\x1e\\x2b\\xdb\\xb3\\x53\\xde\\xb8\\x2b\\x2a\\x39\\xba\\x89\\xf0\\x85\\x9e\\x8e\\x94\\xdf\\xf2\\x82\\x3f\\xe3\\xf7\\x5e\\x2a\\x7c\\x21\\x84\\x9a\\x06\\xee\\x26\\xa0\\x01\\xd7\\x58\\x8f\\xde\\x51\\xc5\\xb8\\xc1\\x0e\\x8c\\x79\\xb7\\x22\\x1d\\x9f\\x9f\\x1b\\xc6\\x1a\\xcf\\xfc\\x7f\\xd4\\xf5\\x3c\\x18\\xde\\x7a\\xf6\\xdf\\xc2\\x99\\x33\\x7a\\x33\\x9d\\x32\\x78\\xbd\\xb9\\xfb\\x9a\\xe9\\x58\\x17\\xa5\\x08\\xc7\\xe7\\x9a\\x57\\x00\\x9e\\x31\\xa3\\x3f\\x6a\\x3a\\xc3\\x4f\\x49\\xa4\\xd2\\x30\\x21\\x0f\\xac\\xae\\x67\\x73\\xae\\x44\\x30\\xfb\\x66\\x5e\\xd7\\x3e\\x8f\\x45\\x30\\x7b\\x34\\xc7\\x79\\xe5\\x81\\x08\\x66\\x57\\x73\\x8d\\xb7\\x91\\x7e\\x24\\x25\\xb2\\x64\\x4f\\x12\\x54\\xdb\\x96\\x20\\xf3\\x06\\x23\\xd5\\x60\\xb4\\xc0\\x20\\x32\\xf2\\xdf\\xc4\\x4d\\xc7\\xe7\\xb9\\x5f\\xaa\\xe2\\x56\\x51\\xd5\\x9b\\xc3\\x10\\x0a\\x81\\xf8\\x0b\\xc3\\x34\\x59\\x8a\\x72\\xa6\\xe6\\xe3\\x73\\x4d\\x02\\x45\\xe9\\xa5\\x33\\x35\\x87\\x55\\x87\\xac\\x4b\\x0a\\x6f\\x8c\\x96\\xac\\xb7\\x97\\x88\\x20\\x6e\\x12\\xd1\\xd8\\x71\\x86\\xf8\\x5d\\x7f\\x5a\\x89\\xad\\xce\\xee\\x25\\x62\\x35\\x96\\x65\\x99\\xc4\\x59\\x5d\\xf7\\xe4\\x4f\\xac\\x74\\x45\\xd1\\xd6\\xbc\\x03\\x88\\x1f\\xfd\\x11\\x94\\x1b\\x91\\x01\\xed\\x5c\\x35\\x06\\x64\\xf4\\x23\\xa2\\xc6\\x11\\x61\\x84\\x79\\x7b\\xcf\\x2e\\x7d\\xea\\x88\\x46\\xcb\\x66\\xf8\\x19\\xb0\\x0e\\x64\\x06\\xf6\\x6e\\x28\\xc4\\x62\\x6a\\xca\\x4a\\x37\\xa1\\x25\\x97\\x42\\xbf\\x5a\\xc6\\x17\\xfb\\xfe\\xf0\\x1c\\xe2\\xae\\xc4\\x59\\x33\\x1a\\x2c\\x7a\\x82\\xa5\\x5e\\xe9\\x83\\x05\\x53\\xb2\\x39\\x0b\\xef\\x41\\xfa\\xab\\xec\\x56\\xa6\\x49\\x38\\x30\\x4b\\x37\\xc0\\x39\\xd6\\xf6\\x4f\\x09\\x02\\x6c\\x94\\x17\\x83\\x76\\xcc\\xd6\\x90\\x9b\\x5d\\xb1\\x67\\xfb\\x4f\\x8e\\x93\\xd1\\x4f\\xfc\\x58\\x67\\xb0\\xd3\\x4b\\xe6\\x86\\xbc\\x81\\x58\\xf7\\x96\\x23\\x24\\x97\\x6e\\xca\\x2d\\x76\\xc3\\x5d\\xec\\xbd\\x7b\\xd8\\xf8\\xed\\xa6\\xf3\\xee\\x85\\x20\\xff\\x4d\\xf0\\xe0\\x23\\x9d\\x49\\xe3\\x2a\\xe9\\xdd\\x36\\xec\\x10\\x19\\x49\\xd3\\x11\\x6b\\x3f\\xf3\\x9c\\xde\\xeb\\xad\\xe7\\xc5\\x86\\x1f\\x2b\\x44\\x7b\\x82\\x13\\x3f\\x2e\\xbc\\x78\\x34\\xc2\\x83\\x9c\\x67\\xe2\\xf3\\x2c\\x9e\\xf3\\x67\\x34\\xe4\\xb7\\x3c\\xe5\\xcf\\x1a\\xe4\\xe5\\x38\\x09\\x6d\\x5f\\xf8\\x6d\\x8b\\x4d\\x5f\\x06\\x6c\\xb7\\xa6\\x2f\\x03\\x7e\\x2b\\x29\\xa4\\x4a\\xc7\\x01\\xf6\\x47\\xf5\\x79\\x9a\\x85\\xdd\\xae\\x92\\xa7\\x1b\\x56\\xf2\\x3f\\x6a\\xf9\\x07\\x68\\xf8\\x87\\xa6\\xdd\\x96\\x67\\x4a\\xc5\\xd9\\xc5\\x91\\xfe\\x09\\x78\\x56\\xae\\x30\\x64\\x57\\xa1\\xb5\\x50\\x3f\\xea\\x9f\\x5f\\xf4\\xcf\\x0f\\xc0\\x66\\x34\\x4b\\x81\\x22\\x05\\x2f\\xf9\\x35\\xff\\x95\\xbf\\xe0\\xef\\x44\\xc8\\x3f\\xf1\\x4c\\xf2\\x8a\\x3f\\x11\\x13\\xfe\\xb4\\x8d\\xa4\\xe1\\x3d\\x79\\xfc\\xd4\\x7b\\x02\\xcc\\x7e\\x29\\xe4\\xec\\xc9\\xdc\\xfb\\x55\\xa0\\xce\\x27\\xfd\\xae\\x6c\\x85\\x52\\xb3\\xbd\\x92\\x88\\x56\\xa2\\x34\\xdc\\xeb\\x5b\\x4a\\x0c\\x4c\\x85\\x03\\xc3\\xbb\\xfe\\xc8\\x4b\\xfe\\x03\\xe3\\x3f\\xd1\\x0a\\x0f\\xb4\\xe8\\x0f\\xc8\\xf7\\x9b\\x5c\\x0d\\xff\\xcf\\x7f\\x14\\x25\\xe3\\xcd\\xc7\\x26\\xb1\\x10\\x45\\x5d\\x97\\xde\\xb5\\x28\\xb5\\x18\\x6b\\x9a\\xea\\xe0\\x85\\x7d\\x12\\x9f\\x30\\xe0\\xc9\\x5b\\x4a\\xbe\\x22\\xa3\\xeb\\x11\\xf9\\x6a\\x60\\x0b\\x78\\x9f\\x66\\xd7\\x73\\xdd\\x3c\\x3c\\x89\\xb2\\xa9\\xc1\\x62\\xa1\\xdf\\x52\\xd2\\xbc\\x95\\x78\\xf8\\xf8\\x42\\x17\\x78\\x21\\x4a\\x9e\\x8a\\x6e\\xb4\\xbc\\x12\\x82\\x98\\x49\\x24\\x53\\xfa\\xab\\x9e\\xc8\\xc3\\xb9\\x6d\\xbc\\x62\\x9e\\xe6\\x6b\\xed\\x15\\x33\\xc0\\x5e\\xc1\\xb6\\x09\\x66\\xd7\\x73\\x34\\xbb\\x67\\xdc\\x17\\x3f\\xe0\\x09\\x9d\\xa4\\x8a\\xdf\\xd1\\x5f\\xd1\\x2f\\xdf\\x67\\xfc\\x9d\\x78\\xa0\\xbf\\xf2\\x90\\xa7\\x8c\\xb9\\xd8\\x00\\x7a\\xb4\\xa0\\x51\\x5f\\xa5\\xb2\\xaa\\xa4\\x8c\\x9f\\xfd\\xd0\\xc6\\x39\\x68\\xb2\\x33\\xa4\\x67\\xe5\\xb8\\x11\\x79\\x81\\xa3\\x7b\\xdb\\xe9\\x8b\\x08\\xff\\x45\\x0f\\xe8\\x17\\x51\\xf2\\x4a\\xbc\\xb4\\x73\\x4e\\xbb\\x67\\xfa\\x03\\x70\\xcf\\xdd\\x3b\\xaf\\xc4\\x4f\\x3e\\xad\\x18\\x2f\\x9b\\x23\\x14\\xb6\\xfb\\xb5\\x0b\\xa5\\x30\\xfa\\x48\\x2b\\x36\\x22\\xc6\\xab\\xc7\\xee\\xa2\\xe7\\x0b\\x18\\x10\\xf4\\xe9\\xd7\\x36\\x2c\\xc4\\x55\\x5d\\x77\\x92\\xef\\x50\\x88\\xab\\x1e\\xe1\\x8d\\x47\\x15\\xf3\\x70\\x32\\x7e\\x00\\x01\\xf0\\x5a\\xec\\x10\\x5b\\xb8\\xbb\\xfd\\x5e\\xf3\\x6f\\xda\\xa8\\xf1\\x16\\xb9\\x28\\x13\\x9a\\xe8\\xc9\\xe8\\x8a\\xb7\\x66\\x37\\xf0\\xc6\\x18\\xbf\\x66\\xcc\\x7b\\x46\\x03\\x7e\\xcd\\xbc\\x0e\\x92\\x35\\x01\\x37\\xd3\\x56\\x1d\\xcc\\xd5\\xc7\\x22\\x65\\x5f\\x9a\\xab\\x95\\x38\\xa7\\x5d\\x73\\x5d\\x63\\x4f\\x18\\x5f\\xf1\\x1f\\x78\\xc0\\x55\\x37\\x37\\xfc\\x1d\\xb3\\x37\\x4f\\xa3\\xf2\\x29\\x1b\\xfd\\x0e\\x22\\x81\\x4c\\x8a\\x36\\x01\\xa6\\x1b\\x0a\\xbd\\xa4\\x99\\x64\\xd3\\x85\\x3e\\xe8\\xcb\\x24\\x73\\x33\\x09\\x72\\x53\\x26\\xc7\\x9b\\x42\\x71\\xf8\\xc9\\xcb\\xaa\\x41\\x0a\\xaf\\x00\\x29\\xbc\\xe2\\x67\\xb7\\x92\\xfe\\xc0\\xd0\\x21\\xab\\x6c\\xc5\\x1c\\xb6\\x6a\\x1f\\xc5\\x70\\xc2\\x53\\xf1\\x5a\\x56\\x8b\\xf1\\x5a\\xde\\xd3\\x94\\x5b\\x5b\\x76\\xbf\\xd2\\x1b\\x55\\x14\\x8e\\x53\\xe8\\x47\\x6f\\x65\\x6d\\x07\\xf1\\xc2\\x71\\xde\\xb5\\x02\\x8c\\xa5\\xb3\\x44\\x2f\\xd7\\x65\\x23\\x34\\xa7\\x86\\x85\\x3b\\xd2\\xc0\\xa9\\x2e\\xf4\\xd2\\x8a\\x2b\\x81\\xca\\x51\\xaa\\x46\\x01\\x03\\x19\\x8f\\xe7\\x9d\\x32\\x21\\x79\\x9c\\xa3\\x9c\\x67\\x98\\xdf\\x95\\x50\\x20\\xc4\\xd1\\x58\\x08\\xb1\\xa9\\xeb\\xf8\\xbb\\x55\\xd7\\x67\\xc7\\x59\\xb5\\x3a\\xab\\xf6\\x10\\x68\\xc9\\x86\\xe2\\xe2\\x8a\\x99\\x28\\x08\\x2b\\x90\\x3b\\x86\\x93\\x8e\\x09\\x5e\\xd3\\x6d\\x7b\\xa6\\x63\\x09\\x60\\xcf\\x6c\\x6e\\xc7\\x37\\xc2\\x17\\x8a\\xc3\\xf8\\xa4\\x30\\xf8\\x53\\xc3\\x66\\xf5\\x18\\x3d\\xe4\\x97\\x55\\xcf\\x99\\x0e\\x03\\x26\\xf9\\x86\\x2b\\x19\\x09\\x8a\\xa1\\x27\\xcb\\xea\\x21\\x55\\xc0\\x7e\\x12\\x17\\xf6\\xfa\\x08\\xbe\\x33\\x2e\\xc7\\xe7\\x25\\x4c\\x04\\x0f\\xf9\\x70\\xc2\\x03\\x48\\xd3\\xc6\\x38\\xbd\\xf0\\x19\\x4b\\xb6\\x5b\\x0a\\x41\\x50\\x5c\\x21\\x53\\x7a\\x8f\\xfa\\x10\\x2e\\x67\\x26\\x65\\x2e\\xce\\x68\\xf7\\x32\\xed\\x1e\\x01\\xab\\x68\\xa7\\x70\\xe6\\x2e\\xbb\\x3e\\x28\\x73\\x28\\xaa\\x5f\\x79\\xff\\x95\\x8d\\x88\\x47\\xb0\\xc0\\xd1\\x98\\x86\\x47\\xab\\xba\\xd4\\x0a\\xa9\\xe5\\x5c\\xf8\\x3c\\x84\\x9f\\x60\\xb6\\x9c\\xf7\\x7c\\x75\\xce\\x3b\\xb1\\x82\\x2f\\x1b\\x26\\x37\\x01\\x92\\x84\\x7a\\x15\\x11\\x00\\xbe\\xfb\\x0c\\x7c\\xbc\\x36\\x09\\xe5\\x85\\x3e\\x6c\\xf9\\xcc\\x77\\x16\\xcb\\x8d\\xbb\\xc0\\xda\\x9b\\x26\\xa1\\x63\\x18\\xf0\\x5d\\x73\\x17\\x28\\x59\\x33\\xfe\\x59\\xbc\\xa4\\x9f\\x7b\\xfb\\x79\\xda\\x7b\\xa5\\x01\\x0f\\x99\\xdb\\x4b\\xf2\\x82\\x16\\x87\\x7a\\xda\\x6a\\x0a\\x7a\\x21\\x83\\x85\\x72\\xd3\\x3d\\x1b\\x97\\xdb\\x20\\x50\\x65\\xd9\\xb1\\x70\\xa9\\x1e\\xcd\\x8a\\x7f\\xe6\\x29\\x20\\xc5\\x14\\x91\\xc8\\x92\\xed\\x3e\\xf7\\xf0\\x61\\xfa\\x05\\x7c\\xb8\\x12\\x9f\\x0d\\x3e\\xfc\\x6c\\xe3\\xc3\\xd5\\x1f\\xe1\\xc3\\x94\\x79\\xa9\\x8d\\x05\\xcf\\x10\\x3b\\x06\\x7c\\xc5\\xbc\\x5b\\xba\\xe2\\x20\\xfc\\x7a\\xc0\\x4b\\xa4\\xc6\\x73\\x61\\x25\\xb6\\xdc\\x8c\\x2a\\xb5\\xa3\\x38\\x14\\xcc\\xcb\\x05\\x88\\x7c\\x2b\\x1e\\x02\\x9f\\xa2\\x75\\x55\\xbf\\x60\\x28\\x18\\x9b\\x89\\x59\\x30\\x2f\\xe9\\x3c\\x91\\x50\\x25\\x28\\x45\\xd2\\x2e\\x56\\xda\\x3d\\x7b\\x9f\\xad\\x67\\x6d\\x1c\\xd1\\xe5\\x7b\\x10\\x2b\\x2f\\x1d\\x0a\\xb1\\x75\\x1c\\xfa\\x20\\x22\\x1f\\xf6\\xe5\\x52\\xd2\\xcf\\xfc\\x8e\\xa6\\x8c\\x3f\\x30\\xe6\\xe5\\xbd\\x00\\x0f\\x74\\xcd\\x95\\xe4\\x0f\\x5c\\xf1\\x7b\\xb6\\xb7\\x1e\\x13\\x7d\\x00\\xc4\\x8c\\x91\\x8d\\x2d\\xaa\\x68\\x65\\x5e\\x8f\\x99\\xfd\\x5e\\x26\\xa9\\x0a\\x07\\x55\\x3e\\x48\\x73\\x19\\x0e\\x9a\\x95\\x46\\x57\\xf7\\xf1\\xb6\\x48\\x99\\xb7\\x3f\\xd6\\x86\\xca\\x06\\x58\\xd9\\x2e\\x99\\xd2\\xa4\\x09\\x64\\xca\\x93\\xc6\\x41\\xa2\\x79\\x52\\xed\\xd3\\x92\\x31\\xf7\\xa8\\xff\\x4d\\x2d\\xfb\\xee\\xa9\\xdb\\x15\\x3f\\xf6\\xec\\x19\\xfd\\x16\\xa5\\x5d\\xc8\\xf6\\xb1\\xcb\\xfc\\xb6\\x1b\\x1e\\x0a\\xd9\\xbd\\x31\\xbe\\xde\\xa6\\x55\\xb2\\x49\\x55\\xc7\\x94\\x97\\x83\\x19\\x19\\x9d\\xf9\\x86\\x1d\\xe6\\xc0\\x60\\x98\\xe7\\xf9\\x40\\x96\\xab\\x24\\x8b\\x91\\x89\\xd7\\xee\\x0d\\x79\\x06\\xb3\\x71\\x2b\\x29\\x70\\x0b\\x5d\\x93\\xef\\x6c\\x74\\xb8\\xd4\\x71\\x75\\xbc\\xa0\\x8d\\xeb\\xba\\x6b\\x3a\\xe9\\x4e\\x78\\x77\\xa6\\x71\\xc2\\x08\\xc2\\x72\\x50\\xe3\\x4a\\x84\\x0d\\xb7\\xee\\x6b\\x89\\x90\\xa0\\x34\\xd9\\x1c\\x34\\x04\\xcc\\xbb\\xa7\\x47\\x59\\xb8\\x62\\xc8\\xf9\\xb5\\x45\\xbc\\x26\\xd2\\x15\\x0d\\xfa\\x6e\\x8d\\x8d\\x57\\x9d\\x76\\x92\\xc2\\x28\\xa4\\x36\\x22\\x2a\\xbb\\x59\\xd4\\x9a\\xed\\x25\\x0d\\x70\\x58\\x18\\x9e\\xe1\\x60\\x58\\x57\\x93\\x2f\\x0d\\x4c\\xfb\\xf2\\x05\\xb6\\x34\\x5a\\xd7\\xb4\\xf7\\xde\\xfa\\x8c\\x42\\x13\\xb3\\x70\\x8e\\x61\\x8d\\x30\\xe6\\x9a\\xa2\\x92\\x71\\x0c\\xfb\\x80\\x6e\\xae\\x78\\x1c\\xc5\\x18\\x9a\\x45\\x55\\xaa\\x00\\xf2\\xdc\\xaf\\xc9\\x71\\x7a\\xaf\\xb3\\xb0\\x15\\x7b\\xeb\\x5a\\xb2\\x66\\x1e\\xd4\\x81\\xd6\\x01\\x29\\x4a\\xc8\\xcf\\x24\\x3b\\x9c\\x83\\xa5\\x6c\\x86\\xd0\\xf8\\xe1\\x4e\\xe6\\xb8\\x2e\\x7a\\x91\\x60\\xcb\\x03\\x29\\x37\\x21\\x17\\x97\\xad\\xc9\\xbd\\x3c\\xd4\\xf4\\xa3\\x0f\\xc1\\x72\\x2e\\x44\\xc8\\x76\\xf8\\x10\\x68\\xa1\\x72\\xbf\\x47\\xf3\\x7b\\xc3\\xfc\\x68\\x47\\xee\\x00\\x83\\xb3\\xcc\\xee\\xc6\\xea\\x7e\\x23\\xb3\\x30\\x9f\\x8b\\xd0\\x7a\\xf1\\xa0\\x0f\\x22\\xc0\\xd3\\xd7\\xb5\\x3c\\x30\\xad\\xd0\\x07\\x3e\\x2d\\x17\\x2d\\xcd\\x09\\x10\\x60\\x3f\\xe1\\x03\\x7b\\xbf\\xf7\\xd6\\xd2\\x32\\xbb\\xde\\x9d\\x67\\x79\\xb1\\x96\\x69\\xf2\\x59\\xb9\\xa1\\xe4\\x30\\x11\\xee\\x31\\x8e\\xd0\\xcb\\xff\\xbd\\x76\\x14\\xef\\xaa\\x87\\xb9\\x90\\x8c\\x2f\\x85\\x49\\x6e\\xa7\\x1d\\x20\\xe4\\x20\\x2f\\xb4\\xb9\\xc1\\x3e\\xf2\\x50\\x28\\xed\\x88\\xae\\xed\\x8d\\xc3\\x69\\xd7\\x47\\x48\\x09\\x5d\\x1a\\x8a\\x5e\\x12\\xab\\x6b\\x7a\\x90\\x47\\xf8\\x3e\\x95\\x9c\\x5c\\x10\\xcd\\xb2\\x2f\\x4e\\x74\\x0d\\x0d\\x57\\xaf\\x89\\xe3\\x48\\xd1\\xa8\\x47\\xd9\\xa7\\x71\\x69\\xeb\\x42\\x8d\\x05\\xd8\\x19\\x86\\x50\\xfe\\xa4\\x0d\\xd3\\x9a\\xd3\\xa3\\xa4\\x69\\x15\\x7b\\x29\\xc8\\x36\\x2b\\x65\\xa4\\x5c\\x32\\x52\\xcc\\x0b\\x86\\x42\\x0c\\xaf\\xd0\\xe2\\xb2\\x89\\xd4\\x88\\xd6\\x4a\\xd3\\x83\\x31\\x9b\\x23\\x7a\\xe0\\x15\\x42\\xe6\\x1e\\x7c\\x44\\x16\\x22\\x04\\x69\\xdb\\x5b\\x82\\xfc\\xbf\\x9c\\xc9\\xe3\\xc3\\x51\\xd9\\x3b\\x8e\\x59\\x63\\x88\\x33\\xb6\\xe7\\xcd\\x54\\x9f\\x34\\x86\\x40\\xcb\\xc5\\xf0\\x5f\\xef\\x38\\x80\\x63\\x6d\\x37\\x81\\x9e\\xda\\xb3\\x39\\x6b\\x10\\x8b\\xcf\\xbc\\xcf\\xb6\\xc1\\xab\\x85\\xa8\\x55\\xb3\\xf7\\xea\\xda\\xa7\\x01\\xfa\\xf0\\x5b\\xba\\x51\\x6d\\xfe\\xf5\\x49\\x14\\x48\\x14\\xfb\\x41\\x0d\\x50\\xa9\\x28\\xc5\\x72\\x5c\\x56\\xb2\\xa8\\xde\\x3f\\xac\\xfd\\x3c\\xa5\\x20\\xf6\\x2d\\xc7\\x2a\\x0b\\xdb\\xf7\\x9f\\x7c\\xa1\\xa4\\x10\\x64\\xb7\\x23\\x75\\xfd\\x83\\x10\\x64\\xbf\\x27\\xd3\\x4f\\xd2\\x3d\\x69\\x08\\xdf\\x85\\x8e\\xda\\xdd\\xec\\x2e\\x63\\xae\\xa4\\xe5\\x89\\xbd\\xdf\\x5f\\xc6\\xfc\\x07\\xb6\\xe7\\xbf\\x8a\\xcb\\xdf\\xb2\\x18\\x96\\x61\\x76\\x7d\\xf1\\xcf\\xf9\\x65\\xd3\\xdf\\x87\\xfd\\xdc\\x8a\\x0b\\x15\\xda\\x51\\x3c\\x5e\\x49\\xda\\x39\\xff\\xbd\\x42\\xc7\\x41\\x0b\\x2b\\xfc\\x10\\x58\\x26\\x0e\\x5c\\x8a\\xcb\\xdf\\xe8\\xcd\\xfb\\x11\\xa3\\x37\\xe5\\x48\\x96\\x37\\xe5\\x88\\xde\\xdc\\x8d\\x18\\x9b\\x9e\\x5f\\x7a\\x5f\\xb4\\x05\\x0e\\xd9\\xee\\x27\\x2a\\xd9\\xb4\\x42\\x97\\x61\\xd7\\x47\\xa8\\xfe\\x83\\x03\\xdb\\xc6\\x1c\\xa9\\x3b\\x80\\xb2\\x8c\\x8d\\xda\\x44\\xd5\\x48\\x15\\x09\\x8f\\xbc\\xe7\\x54\\x01\\xb3\\x19\\x89\\x06\\xa4\\xd1\\x7b\\x5f\\xbb\\x7f\\x08\\xf4\\xfd\\x00\\xa9\\xe2\\x80\\x3f\\x4d\\xd8\\xd4\\x9f\\x25\\x73\\x37\\xf1\\x69\\x3c\\xd6\\x98\\x93\\x27\\x80\\x8f\\xeb\\x3a\\xf1\\x69\\xa8\\x9f\\xf9\\x3d\\xf0\\x50\\xf8\\xc8\\xbc\\x44\\x04\\x3d\\x87\\x04\\xe8\\x03\\xec\\xc9\\xc8\\xf6\\xc6\\x6a\\xea\\x1a\\x5a\\x41\\x48\\x6d\\xaa\\xfc\\xd5\\x53\\x99\\xa1\\xd1\\x9c\\xba\\xdf\\xe4\\x45\\x65\\x69\\x1e\\x06\\xb2\\x1c\\x90\\xaf\\x46\\xd1\\xe8\\x2b\\x32\\x1e\\xbc\\xc9\\x8d\\x7e\\xcd\\x84\\x4d\\x36\\xe6\\xfe\\xe1\\xf0\\x2b\\xe6\\x35\\x4d\\xcc\\xa2\\xb9\\x48\\x1a\\x81\\x25\\xe9\\x99\\x39\\xff\\xf8\\x65\\x33\\xaf\\x13\\x67\\x7d\\x77\\xb4\\x0b\\xa5\\xdc\\x33\\x14\\xf9\\xe9\\xc8\\xea\\x04\\x4d\\xc4\\xfe\\xe8\\xb8\\xd0\\x18\\x7f\\x23\\x13\\x76\\x22\\x00\\x66\\xaf\\x97\\xaf\\x3b\\xe8\\x82\\x5d\\xc0\\x25\\xee\\x01\\x0d\\x1a\\xd6\\xde\\x39\\xa5\\xaf\\x94\\x53\\xea\\xb7\\xe7\\xff\\xbe\\x01\\xa7\\x76\\x77\\x9d\\x32\\xad\\xf1\\xa7\\x54\\x0a\\xdf\\x94\\x90\\x07\\x00\\xd8\\x9e\\xf4\\xff\\x81\\x8d\\xc7\\xe1\\x89\\xb0\\xe2\\x8b\\x2e\\x46\\x3c\\x9e\\xf8\\x0b\\x90\\xa1\\x67\\x73\\xbe\\x6d\\x45\\x56\\x9e\\x8b\\xe1\\x95\\x3e\\x20\\x5e\\x3d\\xde\\x7a\\x8c\\xda\\x36\\x89\\x3e\\x5f\\x31\\x94\\x48\\x1d\\x87\\xae\\xad\\x74\\xc9\\x97\\xa3\\x58\\x7f\\x99\\xd2\\xd5\\x50\\x2c\\x1d\\x27\\x35\\x7c\\xa5\\x65\\x84\\xb8\\x42\\x7b\\x45\\xf3\\x61\\x25\\x02\\x0a\\x82\\xb2\\x6d\\xa3\\x18\\xf3\\xb3\\x35\\x63\\x8c\\xaf\\x80\\xa0\\x8a\\x9c\\xaf\\xc4\\x7a\\x94\\x40\\x87\\x26\\xcc\\x85\\x6a\\xb7\\xa7\\xab\\x85\\x12\\x62\\xab\\xcf\\x3b\\xe8\\x56\\xa4\\xcd\\xe9\\x14\\x33\\x99\\x09\\x61\\x7c\\x2b\\x50\\x92\\x1f\\x2e\\xea\\x3a\\x6f\\x2c\\xc3\\x1a\\x41\\x45\\x6c\\xf9\\x4a\\x1c\\x62\\xf7\\x2e\\x6e\\xcf\\x84\\x07\\x62\\xcb\\x97\\x9e\\xff\\x38\\xf0\\xfc\\xd1\\xc8\\xda\\x3a\\x74\\x29\\xd2\\x99\\x3f\\xef\\x3b\\x65\\x2f\\xc5\\x92\\x22\\xe5\\x35\\xd4\\x67\\x09\\xc4\\x67\\x29\\x48\\x1b\\xda\\x6b\\x39\\x6c\\x9d\\x1f\\x1d\\x87\\x2e\\xc5\\x42\\x02\\xcf\\xed\\x7d\\x46\\x8d\\xff\\xbe\\xed\\x5b\\x1b\\x0c\\x5f\\x93\\x98\\x98\\xed\\x42\\x6a\\xd8\\x64\\xfc\\x19\\xdc\\x2d\\x92\\x54\\x0d\\x3a\\x6b\\x91\\x24\\x8b\\x81\\xfd\\x55\\x23\\x72\\x93\\x91\\x51\\x6c\\xb9\\x59\\x33\\xb6\\xdf\\x9b\\x49\\x55\\x7c\\x05\\xfc\\x51\\x55\\x8a\\x94\\xaf\\xf6\\x8d\\x7d\\x8f\\x59\\xfa\\xc4\\xd2\\xed\\x9c\\x06\\x67\\x2b\\x9c\\x3c\\x06\\xa6\\x3b\\x82\\xde\\x0e\\xdc\\xf7\\x96\\x61\\x8d\\xb5\\x81\\xb4\\xa7\\x74\\x77\\x4f\\x41\\x63\\x22\\x7b\\x49\\x18\\x3f\\x93\\xa2\\x0b\\x45\\x73\\x71\\xe1\\x31\\x44\\xbd\\xd2\\xd7\\x01\\x69\\xba\\xf0\\x71\\x7a\\x6a\\x2e\\xed\\xd8\\x14\\x6f\\x7a\\x61\\x22\\x96\\xbe\\x3e\\x63\\xf4\\x91\\xc1\\x3e\\x47\\x9e\\x2a\\xc8\\x53\\x3c\\xd2\\xc1\\x94\\x45\\x5e\\x56\\x78\\xec\\xa3\\xbf\\xe7\\x45\\x25\\xde\\xd0\\x60\\xf6\\x27\\xe0\\x67\\xde\\xca\\x19\\xe4\\x9b\\xd7\\x75\\xff\\x58\\xfb\\x6d\\xaf\\x89\\x77\\x07\\x4d\\xc8\\x6a\\x71\\x3a\\x1a\\xe9\\xd5\\x5c\\xe7\\x28\\x95\\x2c\\x82\\x85\\xb8\\x05\\xd2\\xfc\\x8d\\x49\\x5b\\xc8\\xf2\\x0b\\xa5\\xfe\\xa4\\x03\\x30\\x6a\\xed\\x93\\xae\\x1e\\xa3\\xe4\\xe2\\x53\\x4f\\x97\\x71\\x49\\x58\\xdb\\x01\\x72\\x49\\x46\\xcd\\x8b\\x15\\x31\\xa8\\x8d\\xdb\\x61\\x79\\xa9\\x99\\x0d\\xcd\\xd0\\xa5\\xa0\\x39\\x77\\x6c\\x83\\x4d\\xbb\\xd6\\xa9\\xde\\x53\\x69\\x5f\\xa8\\xd0\\x9a\\x27\\xff\\x97\\x65\\x81\\x2e\\x60\\xe3\\xfb\\xae\\xdf\\x45\\xdb\\xb6\\xaf\\x2f\\x58\\xf5\\x23\\x16\\xb5\\x79\\xb0\\xe2\\x71\\x2a\\xcb\\xea\\x55\\x53\\xe9\\x25\\x61\\xa3\\xb3\\x2b\\xab\\xec\\xff\\xf8\\x07\\x61\\xbf\\x09\\xe1\\x81\\xc0\\x1a\\x0d\\x3e\\xd4\\x98\\x50\\x9c\\x38\\xa0\\xd9\\x7b\\x6f\\x7c\\x64\\xbe\\x3c\\x0d\\xe7\\x91\\xc4\\x4b\\x33\\x10\\x0f\\x3c\\xa7\\x31\\xeb\\x53\\xb9\\xe6\\xb0\\x68\\x5b\\xa4\\x40\\xd4\\xe4\\xe8\\x2b\\xc2\\x07\\xeb\\xa4\\x2c\\x41\\xc6\\x84\\x09\\x1d\\x6c\\x0a\\x15\\x25\\xf7\\xf0\\x31\\x00\\x8a\\xf7\\x15\\xf3\\xde\\xfa\\x34\\x86\\xfa\\xab\\x26\\x4c\\x13\\xd6\\xdd\\xf6\\xab\\x5a\\x30\\xeb\\x19\\x56\\xa7\\xe9\\x33\\x88\\x63\\x39\\x46\\x34\\x3c\\x48\\x39\\x36\\xfa\\xbf\\x6b\\xf9\\x67\\x0d\\x41\\x8c\\xfb\\x0d\\x53\\x0f\\xe0\\x33\\x25\\xff\\x45\\x46\\xb2\\xcd\\x03\\x49\\xcc\\x25\\x6d\\x43\\xdb\\x22\\x15\\xaf\\xdb\\xaf\\xd8\\xa5\\x11\\x95\\x53\\x32\\x25\\x23\\x13\\x61\\xb1\\xc9\\x29\\xfd\\xf2\\x63\\x91\\x8a\\x60\\xd4\\x95\\xec\\x8e\\xa3\\xdb\\x6e\\x16\\xea\\xae\\x48\\x2a\\xab\\x9b\\x8d\\x08\\x02\\x23\\xa7\\x4a\\x20\\xac\\x85\\x40\\x0a\\xc4\\xa6\\x8d\\x27\\x24\\x14\\xd7\\x9f\\x24\\x57\\xfa\\xd3\\x34\\x18\\xd1\\x48\\xc2\\x7a\\x73\\xc5\\xea\\x5a\\x31\\xf7\\xcc\\x1f\\x85\\xad\\x46\\x59\\xe7\\x0e\\x0e\\x2b\\x0a\\x46\\xaa\\xcd\\x12\\x08\\x11\\x8e\\x00\\x5e\\xda\\x63\\x68\\x2b\\xd8\\x46\\x6f\\xa7\\xfe\\x11\\xb0\\x84\\x6c\\xf7\\x06\\x58\\x27\\xa4\\xb1\\x9e\\x96\\xa5\\xcc\\x10\\xea\\xda\\x74\\xc1\\xc0\\x8b\\xfa\\x63\\x78\\x09\\x11\\x5e\\xc2\\x5c\\xe9\\x20\\x63\\x88\\x3d\\x07\\x77\\x49\\xb5\\x80\\x8f\\xbe\\x81\\x17\\x25\\x94\\x1d\\xe6\\x9c\\xfc\\x17\\x99\\x9a\\x59\\x71\\xd5\\x7f\\xd2\\x4c\\x03\\x96\\xb0\\xda\\x16\\x58\\xca\\x0e\\x2c\\x95\\x19\\xd2\\x7f\\x0a\\x6f\\xc1\\x09\\x78\\x53\\xff\\x7f\\xe1\\x2d\\x40\\x78\\x0b\\x10\\xde\\xd4\\x01\\xbc\\x9d\\xf9\\x23\\xda\\x95\\x9d\\x4a\\x0b\\xfc\\x20\\xff\\x97\\x01\\x4f\\x5b\\xdd\\x23\\x0e\\x11\\xe2\\xa9\\x1d\\x4b\\x48\\x5a\\xa0\\xf0\\xb3\\x01\\x85\\xd4\\x3f\\x1d\\xbe\\xce\\x3b\\x01\\x23\\x7f\\x08\\xe3\\x3e\\x36\\x16\\xb6\\x8d\\x75\\x40\\xdb\\xc1\\x6c\\x83\\xea\\x46\\xb2\\x0f\\xb0\\x5f\\x86\\xd8\\x77\\xf2\\x0f\\x2f\\x6f\\x41\\x59\\xd7\\x9f\\x5b\\x05\\xde\\xf7\\xc3\\x39\\xd9\\xb6\\x6f\\x3a\\x3e\\x50\\xdb\\x0b\\x53\\xd6\\x33\\xbf\\x42\\xd2\\xe0\\x18\\x2c\\xfa\\x41\\x15\\x3b\\xaa\\x6a\\xb1\\xbb\\xc0\\xec\\x0e\\xaf\\x74\\x49\\x58\\xf5\\x77\\x08\\x76\\x5f\\x36\\x76\\x3d\\x66\\x76\\x17\\xd5\\x3a\\xfd\\xd3\\xeb\\x3c\\x54\\xa7\\x98\\xdd\\x27\\xd4\\x67\\xd3\\xb3\\x3f\\x60\\x78\\x7b\\x36\\xac\\x7e\\x91\\xdf\\x95\\xda\\xb6\\xd5\\xf2\\xfd\\xe8\\x85\\xe8\\xb5\\xb9\\x60\\x1d\\xba\\xd4\\x36\\xd8\\x41\\xd5\\x92\\x5f\\xe4\\x32\\x0c\\x64\\x59\\xd1\\xce\\x57\\x57\\x7b\\x82\\xbd\\xd7\\xda\\x71\\xc2\\xa3\\xb1\\x86\\x53\\x8a\\x37\\xf2\\xa0\\xfb\\x21\\x5f\\x88\\xd0\\x72\\x9c\\xe2\\x4b\\x11\\x6a\\x17\\x45\\x4f\\x4e\\xe9\\x42\\x2c\\xa6\\xcb\\xbe\\x8f\\x4e\\x47\\x32\\x2f\\x49\\xef\\x0d\\x88\\xdd\\x23\\xc6\\x46\\x0b\\x77\\xc9\\x01\\x33\\x34\\x7e\\x73\\xff\\xe3\\xbb\\x3f\\xfb\\xcc\\xa5\\x0b\\x80\\xb4\\x25\\xec\\xbf\\xd4\\x67\\x5e\\x84\\xa6\\x82\\x8a\\x2e\\x38\\xec\\x40\\x48\\x68\\xd0\\x19\\x8d\\x3a\\xa0\\x45\\x56\\x32\\x36\\xf6\\x8c\\x41\\x9a\\x04\\x2b\\x72\\x14\\x82\\x45\\x8e\\x83\\xaa\\x48\\x7f\\x54\\x0f\\x78\\x1f\\xc1\\x78\\xad\\x2a\\xf9\\xa3\\x7a\\xa8\\x6b\\x39\\xbe\\x5b\\x24\\xc1\\x42\\x88\\x47\\xcc\\x66\\xd1\\xee\\xa8\\x6c\\x62\\x52\\x79\\xaf\\xba\\x78\\x5f\\xe8\\x80\\x3c\\x44\\x07\\x64\\x0f\\x7d\\xc2\\x66\\x93\\xb9\\x10\\x22\\x9e\\x4d\\xe6\\x75\\x3d\\xa4\\x76\\x38\\x2f\\xb4\\xde\\xd5\\xeb\\x6c\\x70\\xac\\xaf\\x75\\x4e\\x46\\xf5\\xc3\\xcf\\x96\\xc2\\x1e\\x83\\x42\\x3d\\xe6\\xd0\\x37\\x47\\x39\\xba\\x71\\xc2\\x1c\\x67\\x89\\xc7\\x36\\xc7\\xb1\\x97\\xd0\\x89\\x54\\x1e\\x44\\x71\\x82\\xa5\\x19\\x36\\x6b\\x03\\xc2\\x76\\x3b\\x5f\\x4b\\x6d\\x74\\x84\\xf8\\x80\\xf1\\xf6\\xd2\\xb8\\x19\\x89\\xa2\\x8b\\x3f\\xff\\xf5\\xdb\\x47\\x93\\xbf\\x5e\\xf4\\xab\\x22\\x68\\x7d\\x87\\xd6\\xe2\\x1d\\x40\\xa0\\x98\\xa3\\xab\\xb7\\xa0\\x64\\x38\\x61\\x5e\\x68\\x3b\\x15\\x52\\x7b\\xfa\\xed\\xd2\\x12\\x83\\x13\\xfe\\x11\\x10\\x02\\x0d\\x21\\x5c\\x5a\\x40\\xc8\\x8e\\x02\\x6a\\x4d\\x0f\\x7b\\xc0\\x5c\\xa8\\xf5\\xa4\\x82\\xa8\\x89\\x01\\xde\\x64\\xb5\\x40\\x08\\xd8\\x22\\x8c\\xe1\\x0c\\x33\\x73\\xbe\\x59\\xc8\\x12\\xe3\\x71\\x9d\\x87\\x49\\xac\\xca\\x8a\\xea\\x48\\xf6\\xa8\\xd6\\x14\\x13\\x2f\\xf8\\xa2\\xfd\\x8f\\x99\\x6d\\xee\\x9b\\xf5\\x44\\x25\\x0d\\x52\\xb6\\x75\\x5d\\xcb\\xa1\\xd5\\x36\\x5b\\x8f\\x46\\xfc\\xec\\x4b\\x3d\\xfd\\x77\\xe6\\xa5\\xb7\\x35\\x8f\\xe7\\xc5\\x1e\\x9b\\x4b\\x8f\\xd6\\xc9\\x67\\x3c\\xd1\\xa1\\xf8\\x3c\\xab\\xab\\xd6\\x75\\x0c\\x6b\\xeb\\x38\\xc5\\x96\\x60\\xde\\xda\\x41\\x02\\xb8\\x44\\xda\\x68\\x5c\\x3b\\x94\\xbf\\x8d\\x9f\\xeb\\x60\\xdd\\xff\\x09\\x5e\\x3c\\x0c\\x1c\\x60\\x23\\xf3\\x4e\\x05\\x86\\x7e\\xc0\\xb6\\x09\\x3e\\x32\\x08\\x08\\xf7\\x65\\x25\\x83\\xd5\\x54\\x0a\\xd9\\x05\\xf6\\x31\\x89\\x9d\\x84\\xde\\x7c\\x62\\x02\\x99\\x75\\x2d\\x43\\xa2\\x9d\\x53\\x1b\\x01\\x08\\xe5\\x46\\x53\\xd0\\xb5\\x7e\\xf3\\x6d\\x11\\xa8\\x8f\\x3f\\xff\\x84\\x9e\\x88\\xc7\\xd9\\x9b\\xcf\\x18\\x4b\\x4c\\x8e\\xd3\\x24\\x53\\xec\\x54\\x90\\x2c\\x2b\\xba\\xc1\\x19\\x5e\\x5d\\x52\\xe6\\xa9\\x42\\xb3\\x16\\x25\\x7c\\x54\\x76\\xfa\\xe3\\x34\\x8f\\xeb\\xfa\\x53\\x2b\\x39\\x6a\\x9a\\x3d\\x3d\\x02\\x33\\xed\\xb1\\x72\\x7c\\x9d\\x5b\\x17\\x8e\\x3c\\xd4\\x11\\x35\\x0e\\x6a\\x42\\x9a\\xb9\\x3f\\xd0\\xcc\\x2a\\xfc\\x69\\x23\\xa6\\xa4\\x79\\xec\\x2a\\x4a\\xd2\\x3c\\x26\\x8c\\xdf\\xc9\\x22\\x83\\x37\\xf8\\x25\\x4c\\xfb\\x5f\\x29\\x4a\\xe0\\x97\\x30\\x8e\\x2a\\x23\\x78\\xc7\\x07\\xc2\\x38\\x42\\x80\\x7b\\xc4\\x52\\x29\\x4a\\xf0\\x0b\\x39\\x3e\\xa0\\xc3\\x7b\\x2d\\x02\\xd3\\x3b\\xd9\\x53\\x3b\\xd1\\xbe\\xea\\xe9\\x5d\\x70\\x14\\x63\\x58\\x9e\\x90\\xe8\\x0a\\xd4\\xc2\\xec\\x0f\\xe0\\x06\\x24\\xa7\\x16\\xb2\\xf3\\x51\\x17\\xf2\\x75\\xda\\x46\\xce\\xcd\\x47\\x12\\x3d\\x2f\\xfb\\xeb\\xa5\\x8b\\x90\\x09\\x79\\x0c\\xf8\\x4a\\x3e\\x16\\xe4\\x6f\\xa4\\xe7\\xa7\\xd8\\x75\\x41\\x08\\x32\\x20\\x78\\x2f\\x12\\xb9\\x29\\x9a\\x87\\xaa\\x79\\xc8\\x48\\x5d\\x9f\\xe1\\xd3\\x76\\x32\\x99\\xf8\\x4d\\xf2\\x76\\x32\\x91\\x13\\xb2\\xef\\x93\\x66\\xd3\\xa8\\xec\\x1a\\xfd\\x4c\\xd0\\x8d\\xa7\\x7d\\xff\\x27\\xc1\\x88\\xf2\\x02\\xc6\\x25\\xf1\\x62\\x1f\\x4b\\xdc\\x3d\\xe8\\xd4\\x85\\x69\\x6b\\x44\\xea\\x1a\\x3d\\x57\\x7b\\xf6\\xc0\\xa8\\x23\\x0b\\x45\\x58\\xd7\\x79\\xcf\\x2a\\x92\\xfc\\xa4\\xee\\x55\\x31\\xe8\\xb6\\xc9\\x88\\x0c\\x64\\x35\\x08\\xf2\\x74\\xbb\\xce\\xc8\\x08\\x03\\xbc\\x4e\\x49\\x39\\x20\\xa3\\x60\\x44\\x2e\\xc8\\x28\\x1f\\x91\\xc1\\x8c\\x8c\\x7c\\x8b\\xf6\\x43\\xd5\\x23\\x32\\x47\\x13\\x89\\x11\\x3c\\x0e\\x92\\x6c\\xa0\\xee\\x37\\x85\\x2a\\x4b\\x68\\x7e\\x86\\x0e\\x9a\\xf3\\x31\\xb1\\x0f\\x2b\\x97\\xd6\\x35\\x8e\\x52\\xa0\\xb4\\x9b\\x7b\\xf9\\x63\\xbf\\x7f\\x6e\\xbd\\x14\\xaf\\x68\\xb7\\x72\\xfa\\xa0\\x65\\x29\\x04\\x19\\xe3\\x18\\x97\\x8c\\xc9\\x91\\x58\\x6a\\xc7\\x6a\\x13\\xe1\\x8c\\xb6\\x79\\x14\\x71\\x9c\\x08\\xc4\\xdf\\x36\\x0f\\xb0\\xa7\\x11\\x9a\\x3f\\xc4\\x8e\\xa3\\x68\\xac\\xef\\xd1\\xd4\\x95\\x77\\x41\\x7f\\x18\\x96\\x3d\\x55\\x8a\\x0e\\xe3\\xba\\x1e\\x42\\xc1\\x93\\x25\\xcf\\x9a\\xa2\\x8b\\xce\\x24\\x53\\xdd\\x6b\\x55\\x07\\x31\\x01\\xf0\\xf4\\x81\\x5b\\x3e\\x1a\\xed\\xe5\\xd7\\xe2\\xca\\x33\\x9a\\xbb\\x1d\\x42\\xb5\\x1b\\xf0\\x4a\\xdd\\x57\\xae\\xe4\\xcb\\x32\\xcf\\xdc\\xe1\\x84\\x47\\xd9\\xa9\\xeb\\x8c\\x7a\\x81\\xbf\\xd7\\xd6\\x3c\\x06\\x30\\x8f\\xa1\\xc8\\x79\\xc4\\x97\\x7c\\xc1\\x57\\xfd\\xf9\\x5c\\x09\\x6b\\x26\\x3d\\xb4\\xd2\\xd1\\x13\\x99\\xd0\\x15\\xc8\\xa6\\x74\\xc5\\x98\\x4e\\x42\\x8d\\x7d\\xce\\x78\\x30\\x12\\x2b\\xab\\xdb\\x1e\\x74\\x1b\\xb5\\xea\\xd0\\xe0\\x52\\xe4\\xde\\xf2\\x0b\\xf5\\x2f\\xdb\\xfa\\x29\\x61\\xbb\\x85\\x68\\xaf\\x27\\x8b\\x2e\\xc2\\xd1\\x15\\xf3\\x02\\x61\\x5d\\x58\\x16\\x5d\\x84\\xcc\\xcb\\xc5\\xd2\\x1c\\x46\\x26\\x11\\x45\\x5d\\xe7\\x72\\x34\\xb2\\xa7\\x2c\\x14\\x66\\x92\\x42\\x3d\\x49\\x01\\x86\\x11\\x7d\\x76\\x64\\xdc\\x12\\x30\\x16\\x8e\\xa3\\x4c\\x84\\x63\\x98\\x44\\xf1\\x4c\\xa2\\x23\\x77\\x03\\x20\\x6b\\xf1\\x41\\xdf\\x28\\xea\\x61\\xa6\\xea\\x74\\xa8\\xa2\\xb5\\xc6\\x94\\x7c\\xa7\\xad\\x8b\\xdd\\x93\\x99\\x3e\\xfa\\x26\\x06\\x14\\x2c\\x47\\xda\\xd8\\x19\\x78\\x67\\x0b\\x8c\\x63\\x67\\x2f\\x6b\\xa4\\x7b\\x4c\\xc6\\xc4\\x2c\\xec\\xd5\\xbe\\x55\\x0f\\x37\\x59\\x46\\x57\\x3a\\xd3\\xa2\\xcb\\xc2\\x7a\\x06\\xe7\\x0d\\x8e\\xcd\\xd1\\x69\\xbd\\x8b\\xff\\x47\\x08\\x57\\x42\\xf2\\x08\\x28\\xfa\\x89\\xed\\x63\\x2f\\xb9\\x02\\x88\\xc6\\xf5\\x83\\xed\\xb1\\x25\\x53\\x0a\\xdf\\xbb\\x7d\\x9c\\x8f\\xae\\x78\\x3e\\xfa\\x13\\xe3\\xcb\\xc6\\x7b\\x6d\\x76\\x13\\xca\\x8b\\x68\\xbe\\xfb\\x76\\x7f\\x99\\xb0\\xba\\xb6\\xe0\\x7a\\x9b\\x25\\x41\\x1e\\xaa\\x81\\xf6\\xc1\\x1f\\xcc\\x6e\\x6e\\xb6\\x64\\xb4\\xd4\\xf7\\xb3\\xe4\\x23\\xf1\\x2d\\x0f\\x47\\x27\\xaf\\x49\\x6d\\xef\\x0e\\x5d\\xf2\\xab\\x3f\\x33\\x60\\xe2\\x22\\xf1\\x3f\\xc1\\x6c\\x39\\x87\\x02\\xd1\\x34\\x72\\x97\\x4c\\x8f\\xa5\\xd9\\x79\\xd0\\xd5\\x9b\\x1b\\xc2\\x22\\x31\\x9c\\xd8\\x89\\x12\\x03\\x8e\\x9c\\xde\\x40\\x8a\\xeb\\x11\\xb9\\xe1\\x1f\\xef\\xa4\\xb0\\x73\\x8b\\xd4\\x86\\x37\\x21\\xcc\\x10\\x40\\xf9\\x82\\x92\\x8f\\x99\\xb1\\xc0\\xab\\x54\\x38\\xf8\\xb4\\xcd\\x2b\\x85\\xe1\\x71\\x3a\\xdb\\xdd\\xd9\\x9c\\x6f\\x79\\x13\\x48\\x85\\x9f\\x15\\xfc\\x41\\x10\\x97\\xf4\\x17\\xa1\\x38\\xdc\\x73\\x01\\x25\\x37\\xe4\\x2b\\xc2\\xd8\\x8a\\x16\\xdd\\x0d\\xc1\\x8a\\x16\\xac\\xae\\x03\\x4a\\xc6\\xc0\\xfd\\x2b\\x1a\\x02\\x23\\xba\\xa4\\x5d\\x86\\x84\\x16\\x3a\\x08\\xe0\\x9a\\x32\\x4e\\x76\\x9c\\xb4\\x74\\xf0\\xc1\\x9c\\x53\\x7c\\x46\\xb1\\x84\\xec\\x60\\xf3\\x6e\\x45\\x3a\\x4b\\xed\\x98\\x86\\x5b\\xbd\\x19\\xb6\\x63\\x98\\x9e\\x4e\\x32\\x1b\\x13\\x06\\x4c\\x52\\x1b\\x5c\\x31\\xa0\\x84\\xb2\\xdd\\x7e\\x36\\x1f\\x73\\xcf\\x9d\\x92\\xf6\\x60\\xc1\\xcc\\x6e\\xae\\x67\\xb7\\xd0\\x93\\x4a\\xdc\\xd9\\x89\\x6e\\x04\\x94\\xec\\x66\\x44\\x0f\\x66\\x3f\\x77\\x39\\x41\\x56\\x5b\\x27\\x3a\\xce\\x67\\xcb\\x94\\x89\\x63\\x0e\\x9d\\xda\\x58\\x1c\\xe5\\xcd\\x9e\\x47\\x24\\x00\\x43\\xc6\\x08\\x0d\\x79\\x56\\x25\\xd9\\x56\\xed\\xdb\\x6d\\x7c\\x2f\\x8a\\x51\\x48\\x19\\xcf\\xc4\\xfd\\x28\\xa4\\x8f\\x18\\xbf\\x85\\x8d\\x5e\\xcc\\xf9\\x35\\xfc\\xde\\xcf\\xf9\\x0b\\xf8\\xcd\\xe6\\xde\\x8b\\x29\\x3d\\x39\\x86\\x0c\\x00\\xe2\\xc5\\x1e\\x61\\xf5\\x1b\\xe6\\x5e\\x7f\\x21\\xdb\\x3d\\x64\\xbb\\xd6\\xd9\\x1e\\x31\\xf7\\xf6\\x38\\xdb\\x99\\x99\\x92\\x28\\x73\\x6f\\xcd\\xbc\\xcc\\xb8\\x7b\\x72\\x5e\\x46\\x17\\x38\\x19\\xf9\\x48\\x5c\\x31\\x17\\x01\\xac\\x09\\xfc\\x38\\xc8\\xd4\\x7d\\x35\\x00\\x38\\x91\\x41\\xa5\\x8a\\x01\\xe1\\x39\\xcf\\x47\\x57\\x6c\\xff\\x20\\x8a\\x13\\x66\\x8f\\x3f\\x7f\\x21\\x52\\x12\\x0f\\x0e\\x4c\\xa9\\xde\\x3f\\x64\\x95\\xbc\\x6f\\x68\\xfb\\x87\\x7c\\xa5\\xb2\\xc1\\x57\\x64\\x14\\x20\\x18\\x8c\\xc8\\x57\\x87\\xe4\\x1e\\xef\\x8c\\x31\\xee\\x4f\\x57\\x40\\xc7\\xf3\\x68\\x50\\x2d\\xd4\\x09\\x5a\\xae\\xf5\\x7e\\x49\\x16\\x43\\xe1\\x43\\x76\\x40\\xd7\\xc0\\x8e\\x48\\x7e\\x4c\\x11\\x84\\xdf\\x36\\xc7\\x51\\x42\\x4c\\xd8\\x41\\x04\\xb5\\x76\\x46\\x54\\x16\\x42\\xeb\\x5d\\xcb\\xc0\\x9b\\x74\\xf1\\xf6\\xde\\xce\\x26\\xf3\\x03\\xc7\\xa4\\xd6\\xd6\\xaa\\xa9\\xff\\xbb\\x49\\x63\\x35\\xf2\\x16\\x63\\x0e\\x0a\\x85\\xe3\\x46\\x0c\\x88\\x0c\\x55\\x24\\x84\\x8f\\xff\\x03\\xfc\\x1f\\xd6\\xf5\\x50\\x82\\x38\\xee\\x38\\xe8\\x4e\\x14\\xb6\\x91\\x15\\x4e\\x5c\\x93\\x18\\xe9\\x18\\xff\\x21\\x8f\\xda\\xa0\\xf0\\xbe\\x48\\x74\\x5c\\x5e\\x1e\\x31\\x36\\xa5\\x58\\x15\\xee\\x3b\\xd8\\xd1\\x24\\xd1\\xfa\\x52\\x8d\\x3d\\x21\\x95\\x80\\x68\\xf6\\xb6\\x05\\x7d\\xbf\\xcf\\x94\\xe2\\x8d\\x77\\xc0\\xe1\\x01\\x61\\x86\\xc2\\xdb\\x76\\x6e\\xb8\\x09\\x18\\x0a\\xb3\\xdf\\x5c\\x8a\\xc5\\x13\\x6a\\xd3\\x8b\\x65\\x8f\\x52\\x59\\x54\\xce\\x3e\\xb1\\x47\\x25\\x9e\\xa6\\x73\\x6d\\x3c\\x3e\\x73\\x65\\x8f\\xcc\\xaa\\x3e\\x8f\\x61\\x0c\\x90\\x8e\\x2b\\xb4\\x2f\\x14\\x41\\x67\\x0a\\x36\\xf5\\xf1\\xc7\\x0d\\xf0\\xc7\\xae\\x5c\\xb6\\x95\\xe3\\x45\\x16\\xed\\x73\\x70\\xb2\\xd1\\xd5\\xbf\\xd7\\x28\\xb6\\xa6\\xe3\\x9b\\x7c\\xa1\\xa9\\xd3\\xd5\\xa7\\x3d\\xfe\\x73\\x36\\xf7\\x50\\xb9\\xd3\\xc1\\x8e\\xe3\\x0c\\x13\\x4a\\xf6\\x84\\x13\\x46\\x38\\xf1\\x08\\x27\\x88\\xab\\x9a\\x0b\\xf1\\xd0\\x5d\\x73\\x18\\x51\\xe2\\x11\\x2b\\xac\\x59\\x03\\xd8\\x57\\x53\\x39\\x9b\\xcc\\xad\\xa8\\x8f\\xbd\\x1b\\xd3\\xcd\\x5d\\xe9\\xd2\\xbe\\x2b\\xdd\\x44\\x50\\x95\\x33\\x35\\xf7\\x22\\xf4\\x86\\x8b\\xb0\\x54\\x6b\\xf6\\x1c\\x5a\\xea\\xca\\x6d\\xaf\\xef\\x11\\xea\\x21\\x02\\x2a\\x11\\xbc\\x19\\x0f\\xdb\\xd1\\xc0\\x37\\xe2\\x12\\xd6\\xd8\\x55\\xbf\\xa3\\xcd\\xbd\\xb8\\xe6\\x04\\xc0\\x36\\x9f\\x54\\x5d\\x9d\\x4a\\xcc\\x14\\x6c\\x98\\xe3\\xf0\\x3d\\x86\\xcd\\x99\\x45\\x73\\x44\\x37\\xd6\\x59\\x65\\x23\\xd9\\x29\\x76\\x7c\\xa5\\x52\\x77\\xe5\\x8c\\x1d\\x5e\\x2d\\x6f\\xc5\\xdc\\xcf\\x30\\x02\\x1d\\x65\\x3b\\xa2\\x04\\x08\\x0f\\x2a\\xa0\\x73\\xca\\x78\\xd0\\x0c\\xc1\\x66\\xcd\\x78\\xde\\x0c\\x64\\x00\\x42\\x69\\x83\\x33\\x5c\\xd2\\xde\\xba\\x7f\\x2c\\x95\\x7f\\xee\\xcd\\x59\\x01\\x2d\\xea\\x49\\xf2\\xa1\\x85\\xba\\x26\\x8c\\x49\\x81\\x30\\x37\\x8e\\x32\\x5e\\xd0\\xc3\\x88\\xd5\\xd6\\x25\\x7e\\x6d\\xbf\\xcf\\x1e\\xb0\\x9a\\xa6\\x12\\xc7\\x39\\x51\\xc9\\x71\\xf9\\x87\\xb6\\xfc\\x7d\\xaf\\xb8\\x10\\x84\\x93\\x21\\xfc\\x13\\xe6\\x51\\xf4\\xeb\\x7b\\x38\\x5d\\xdf\\x7d\\x53\\x9f\\x27\\x45\\x46\\xbb\\x30\\x00\\xbe\\x87\\xd5\\x8e\\x08\\xda\\xa8\\x79\\x76\\x4d\\x19\\xd5\\xa2\\x14\\x66\\x78\\x4c\\x38\\xf9\\x8e\\x70\\xf2\\x18\\x1a\\xfd\\xee\\xa0\\xcd\\xfb\\xd3\\x6d\\x66\\xbd\\xd9\\xbc\\xc5\\x71\\x60\\x65\\x5f\\x13\\x4e\\x2e\\x09\\x27\\xff\\xef\\xa0\\xc5\\xdb\\xd3\\xf5\\xdc\\xb6\\x7d\\x6f\\x60\\x06\\x3a\\xcc\\xa6\\xd7\\x94\\xb9\\x1a\\x7c\\x2f\\x08\\x63\\xd3\\x15\\x3d\\xe7\\xb2\\xa9\\xc6\\x7c\\x18\\xc2\\x87\\x25\\xed\\x92\\xaf\\xed\\xd0\\x7b\\xd7\\x6d\\xc5\\x1a\\xa8\\x28\\x0e\\xeb\\x8e\\x32\\xbe\\xa0\\xe8\\xe9\\xd7\\x49\\x76\\x64\\x86\\xdf\\x5e\\xd0\\x5e\\xe2\\x0e\\x13\\x9f\\x51\\x6b\\xc3\\xc0\\x00\\x99\\x47\\xa5\\x38\\x83\\x21\\x69\\xcc\\xac\\x2f\\x44\\xdb\\x14\\xc9\\x5a\\x16\\x0f\\x16\\xb9\\x22\\xe6\\x90\\x54\\x53\\x00\\xd6\\xe1\\x23\\x21\\xc7\\x69\\x52\\xa9\\x02\\x1d\\x3b\\x5a\\x6e\\x32\\xd0\\xb3\\x47\\x09\\x27\\x33\\xc2\\x81\\x31\\xf3\\x98\\x8f\\xfb\\x59\\xa0\\x10\\x35\\xa5\\x52\\x94\\xb8\\xe5\\x78\\x60\\x82\\xfa\\x77\\x9f\\x67\\x64\\x4a\\x03\\x21\\xb9\\x14\\x6b\\x3c\\x1e\\xb2\\x3e\\x8d\\xdb\\x4f\\x4b\\xfd\\x49\\x51\\xf2\\xea\\xf5\\xbb\\xb7\\xef\\xdf\\xbf\\x7a\\xf2\\x93\\x75\\xd5\\xac\\xb4\\x7d\\x43\\x3a\\xed\\x13\\xc7\\x00\\xa1\\xc8\\x8c\\x31\\xac\\x73\\x28\\x00\\x0d\\xee\\xc2\\xbc\\xb1\\x0e\\xa0\\xcc\\x93\\xad\\x25\\x70\\x87\\x69\\xeb\\x9a\\xfa\\x62\\x78\\xc5\\xf6\\x68\\xbc\\x01\\xf3\\xc9\\x09\\x63\\xc0\\x56\\xcf\\xbb\\x46\\x2d\\x8c\\xde\\x47\\x90\\xe8\\x01\\x77\\x8c\\x23\\x9b\\x3b\\x32\\x67\\x6a\\xae\\x71\\x63\\x77\\xe9\\x3a\\xdf\\x99\\x49\\x05\\x5e\\xbf\\xa3\\x66\\xbd\\x0b\\x4e\\xfe\\xc5\\xb8\\xf6\\xf6\\xb8\\x22\\xaa\\x83\\xf4\\x6b\\x96\\x06\\x6f\\x6c\\x00\\xd6\\xe1\\x6c\\x81\\xc8\\xc8\\xd3\\xbd\\xb4\\x06\\x8f\\x01\\x9f\\x02\\x13\\x00\\x37\\xdc\\x83\\x78\\xf9\\xaf\\xa7\\x62\\xff\\xef\\x4c\\x05\\xaa\\x0d\\xff\\x90\\x5c\\x84\\xb3\\x68\\xbc\\x52\\x0f\\x73\\x11\\x99\\xbb\\x20\\x31\\xb6\\xfe\\xbf\\x31\\x35\\x50\\xc7\\xb9\\x78\\x4f\\x27\\x8c\\xff\\xc8\\xdf\\x0a\\x54\\xbc\\x85\\x8c\\xbf\\x3b\\x3e\\x9b\\x47\\x4c\\xcc\\x43\\xd3\\x5b\\x24\\x4e\\x04\\x10\\xc5\\x94\\xca\\xd6\\x03\\x17\\xd8\\x94\\xf5\\x26\\x4d\\x54\\x39\\xd0\\x49\\x78\\x2f\\xa1\\xbf\\x3d\\xe2\\x0f\\x27\\x3c\\xec\\x38\\xc4\\x41\\x60\\x8c\\xee\\x7c\\x65\\x8a\\xa1\\xed\\x3f\\x81\\x8e\\x04\\xd8\\xae\\x35\\x31\\x16\\xef\\x62\\x9a\\x85\\xb1\\xea\\x5e\\x87\\x6c\\xcf\\x5c\\xb9\\xe7\\xa7\\xc2\\xfa\\x05\\x40\\x11\\xfb\\xab\\xcd\\x70\\xb5\\x07\\x81\\x45\\x18\\x8f\\xd6\\x87\\x9d\\xd0\\x63\\x86\\xfc\\xcc\\x22\\x94\\x26\\xe4\\xb9\\xdf\\xf0\\x3c\\x21\\x8f\\xc5\\xc4\\x8b\\x1f\\xb7\\x81\\x46\\xe2\\xd1\\x88\\x45\\x4d\\x90\\x91\\x78\\x8e\\xb9\\x98\\x17\\x0b\\xa9\\x1d\\xb0\\x98\\xa5\\x04\\x8e\\x8d\\x12\\xd8\\xfc\\xd2\\x25\\x8f\\x98\\x1b\\x7f\\x39\\x6a\\xf8\\x7e\\xcf\\x97\\xf2\\x84\\x39\\x48\\x64\\x06\\xc9\\x03\\xf1\\x41\\xc7\\x70\\x3b\\x09\\x64\\x36\\x0f\\x15\\x50\\x55\\xd7\\xb2\\x9d\\xc7\\x63\\xbd\\x47\\xd0\\xcb\\xfe\\xd1\\xa7\\x12\\x6f\\x94\\xe1\\x50\\x02\\x8d\\x81\\xd7\\xa7\\x7a\\x02\\xfb\\xe3\\x8b\\x3b\\xde\\x32\\xea\\xd6\\xa7\\xc9\\x3c\\x12\\xbe\\x7e\\x40\\x25\\xc5\\x50\\x35\\x24\\x7f\\x63\\x4c\\x2e\\xd4\\x2c\\x9a\\x63\\x0c\\x9a\\x6a\\xa1\\x32\\xb6\\x5b\\x0a\\x7d\\xe0\\x42\\xc9\\xf9\\xf9\\x2d\\x49\\xb2\\x81\\x62\\x6c\\x39\\x3e\\x3f\\xbf\\x15\\x1b\\xbe\\xc4\\x3c\\xbd\\x13\\x29\\xfd\\x09\\x63\\xb2\\x09\\x05\\xcf\\xfb\\x96\\x27\\xf9\\x57\\xe3\\xc5\\x5b\\x1c\\x15\\x9b\\xf9\\x38\\xe8\\xb9\\x08\\x71\\xc8\\x77\\xbd\\xa8\\x79\\x2d\\x2d\\x7c\\x77\\xc8\\x59\\xf4\\xe9\\xe9\\xf6\\x98\\xb1\\xf0\\xe4\\x94\\xbe\\x13\\x9f\\x79\\x29\\x96\\x80\\xc1\\x45\\xaf\\xe2\\xd3\\x92\\xc3\\x0e\\xa5\\x4e\\x9f\\x6b\\x29\\x74\\x02\\xdd\\xf9\\x51\\x5c\\x03\\x11\\xfc\\x51\\xa4\\x94\\x79\\x6f\\xad\\x1b\\xbc\\x1b\\xe9\\x43\\x66\\x96\\x0c\\x31\\xa8\\x40\\x18\\x24\\xfc\\x2d\\x46\\xc2\\xff\\xb1\\x23\\x49\\xc3\\xf6\\xd9\\xfb\\xb1\\xa3\\x59\\x90\\xdc\\xbc\\x34\\x6b\\xf9\\x63\\x87\\x5a\\x3f\\xb6\\xd7\\x77\\x75\\xf3\\xd0\\x5e\\x21\\x35\\xc6\\x0b\\xac\\x27\\x5e\\x83\\xbf\\xbe\\xbb\\xc2\\xab\\xfc\\x9b\\xb5\\x6f\\x05\\xa0\\x58\\xf8\\x80\\xcd\\xe2\\xba\\xa6\\x31\\x60\\x3d\\x8c\\xd1\\x16\\x33\\xcf\\x17\\x71\\xb3\\x54\\xfe\\xac\\xcd\\x3e\\x17\\x96\\xe5\\x56\\xd2\\xbb\\x22\\x55\\x76\\x17\\xea\\x7d\\xa9\\x3b\\x5c\\x09\\x9f\\x77\\x1e\\x12\\x26\\x62\\x4d\\x8c\\x2e\\x8c\\xa1\\xc0\\x00\\x34\\x3a\\x98\\xf1\\x19\\x55\\xc2\\x67\\xb3\\xb0\\xb5\\xca\\x03\\xc9\\xf0\\x25\\xf5\\xd9\\xf4\\x5c\\xa2\\x3f\\x9f\\x7d\\x81\\xfa\\xdf\\xfd\\x46\\x2e\\x3f\\x75\\xe3\\x67\\xcc\\x93\\x06\\x6d\\x27\\x8e\\x93\\x1c\\x47\\x79\\x9f\\x26\\x6e\\xcc\\x17\\x46\\x3c\\x35\\x46\\x95\\x91\\xb0\\xcc\\x82\\x22\\xdc\\x08\\x91\\x88\\x66\\x3e\\x6c\\x84\\xc8\\x6c\\x84\\xde\\x26\\x88\\x18\\x5b\\x88\\x88\\x2f\\xcc\\x46\\x58\\x1c\\x6f\\x84\\x45\\xbb\\x11\\x22\\x3c\\xbc\\xbc\\xc5\\x1b\\x46\\xb5\\x38\\xfc\\xc7\\xad\\xca\\xff\\xf3\\x56\\x83\\x7f\\xa3\\xd5\\xe0\\xff\\xbc\\xd5\\xf0\\x5f\\xb6\\x7a\\x16\\xc1\\x92\\xff\\x1f\\x37\\xab\\xfe\\x8d\\xc1\\xaa\\xff\\xd3\\x56\\xdb\\x63\\xdd\\x0e\\x46\\x3f\\x74\\xb7\\xb0\\xad\\x8f\\x0c\\xef\\xbb\\x10\\x95\\x6b\\x7f\\xe6\\xcf\\xbd\\xc6\\xb1\\xb6\\xb7\\x93\\x1b\\xda\\xc6\\x95\\xf6\\x38\\x52\\x22\\x7c\\xfc\\xe7\\xe9\\xdf\\x7d\\xf4\\x42\\xe4\\x18\\x4c\\x24\\x00\\x4a\\x15\\x00\\xa5\\x0a\\x80\\x52\\x9d\\xf0\\x10\\x51\\x62\\xc2\\x97\\x5e\\x98\\x0f\\x96\\x02\\x4b\\x2a\\x0c\\xa5\\xf5\\xe5\\x1f\\xa6\\xdd\\x76\\x7c\\xb1\\x01\\x56\\xd6\\x90\\x6a\\xf5\\xb8\\xa3\\x6d\\xcb\\xbd\\x7d\\x0a\\x44\\x74\\x50\\x96\\x41\\x94\\xf1\\xc1\\xc6\\xbb\\xc9\\x88\\x97\\xd1\\xe0\\x20\\x46\\x4a\\x3c\\x12\\x24\\x89\\x68\\x39\\x10\\x42\\x0c\\x60\\x51\\x06\\x75\\x3d\\xd0\\x6f\\xdb\\x4c\\xdf\\x1d\\x14\\xb2\\x06\\x4b\\x97\\xde\\x4d\\x96\\x0a\\xf8\\x5f\\x0a\\x32\\x3a\\xa3\\xfe\\x94\\x94\\xc4\\xfd\\x8a\\xd2\\x95\\xe3\\xac\\x0e\\xa7\\xd1\\x58\\xa8\\x81\\xdc\\xe2\\x96\\xec\\x2b\\x36\\xfa\\x6a\\x66\\x92\\xe6\\xde\\x4d\\x96\\x44\\x03\\x5a\\x0e\\x1c\\x67\\x50\\xea\\x65\\x1e\\xec\\x6e\\xb2\\x01\\x24\\x9a\\xb5\\x1e\\x24\\xd9\\xa0\\x64\\x3a\\x79\\x83\\x4d\\x0e\\x36\\xb0\\x9a\\x03\\xab\\x5f\\x3a\\xb1\\x0f\\x01\\xb7\\x6c\\xb0\\xc3\\x8c\\xe2\\xd6\\xdb\\x33\\xef\\x26\\xdb\\xdf\\x64\\x83\\x52\\x94\\x90\\x84\\x2f\\x5f\\xed\\x99\\x07\\x83\\x6e\\x87\\x44\\x3c\\x25\\xbe\\x6f\\x8a\\x93\\x92\\x70\\xb2\\x22\\x3c\\x66\\x9e\\x6a\\x4d\\xaa\\x4f\\xd8\\x3b\\xc7\\xed\\x45\\xa9\\x08\\x23\\x42\\x59\\xb6\\x5a\\xb6\\x4b\\x4a\\xff\\xc8\\x5f\\x5f\\xb3\\xdb\\x33\\x63\\xea\\xfb\\x25\\x1c\\xf1\\x59\\x6c\\x67\\x22\\xce\\x34\\x77\\xe9\\x34\\x81\\x67\\x8c\\x49\\xb9\\xdb\\x6a\\x1e\\x8e\\xa2\\x46\\x4e\\xfd\\x59\\x38\\x77\\xd1\\x53\\xef\\xe7\\x80\\x86\\x7c\\x78\\x05\\x58\\x79\\x1c\\x94\\x1b\\x73\\x1f\\x49\\x67\\xc5\\xee\\xb6\\xd6\\x6d\\x07\\x97\\x8c\\x7c\\xda\\xf7\\x0e\\xa5\\x3f\\x1c\\x7b\\x6d\\xf4\\xec\\xb4\\xfe\\x30\\x00\\x65\\x77\\x4c\\xfb\\x31\\xe8\\xed\\x58\\xdf\\xb6\\x0a\\x91\\x6c\\xcf\\x65\\xcf\\xc7\\xe3\\xe3\\x1f\\x9e\\x84\\x1f\\x1c\\x7d\\x37\\xce\\x26\\xd4\\x98\\x6f\\x1d\\x59\\x3c\\x22\\xaf\\xba\\xe0\\xcb\\x76\\xc7\\x88\\x5d\\xa1\\xca\\x3c\\x3d\\x08\\x14\\xab\\xbd\\x66\\x8c\\x14\\xe4\\x45\\x62\\xe3\\x2d\\x44\\xac\\x2f\\x8c\\xd7\\xfb\\xde\\x71\\x7c\\x7a\\x8a\\xf3\\xe1\\xbe\\x98\\x58\\xe8\\xc1\\xf3\\x1f\\x87\\xe8\\x46\\x20\\x45\\x30\\xf3\\xe7\\x0d\\xc2\\xc2\\x58\\xf6\\x72\\x76\\x85\\xfe\\xe6\\x7b\\x5e\\xa8\\xa5\\x0a\\xfa\\xe1\\x6d\\x97\\x63\\xd3\\x2d\\xaa\\xed\\x56\\xf8\\xa6\\xc8\\xd7\\x49\\xa9\\xdc\\x1d\\x54\\x60\\xeb\\xd4\\xda\\xb8\\x6b\\x8a\\xa2\\x57\\x91\\x05\\x3b\\x55\\xf1\\xb0\\x8b\\xdb\\x8a\\xa8\\x5f\\xd7\\x01\\xa3\\x61\\x1b\\x8f\\x45\\xb1\\x9d\\xa4\\x8a\\x71\\xc8\\x02\\x1d\\xa0\\x0a\\x3a\\x93\\xf7\\xec\\xf5\\x0e\\xaa\\x58\\xd6\\xf5\\x59\\xc8\\xd0\\xda\\xa2\\xf5\\x85\\xc3\\xab\\x55\\xda\\x3a\\x02\\xb6\\xdf\\x7b\\xd1\\xd4\\xb0\\xfb\\xb3\\x84\\xe7\\x73\\xe6\\x9a\\x61\\x27\\x3c\\xef\\xae\\x6b\\x18\\x9b\\x11\\xed\\xb9\\x4c\\xef\\xe4\\x43\\xd9\\x1b\\x7e\\xbb\\xaa\\x3e\\xb5\\x2e\\x44\\x55\\x94\\x79\\xc1\\x34\\x6c\\xbb\\x23\\x99\\x1b\\x36\\xed\\x76\\x61\\xd5\\xc3\\xb6\\x66\\x0b\\x36\\x14\\x8f\\x9a\\xc3\\x40\\x0c\\xb4\\x0b\\xe3\\x5a\\x0a\\x2a\\x71\\x4a\\x2c\\xaf\\x8b\\x56\\x9f\\x1a\\x73\\x90\\x56\\x1b\\x28\\x71\\x1c\\xcd\\x4c\\x4f\\x0f\\x79\\x6a\\xab\\x04\\x34\\xb1\\x3f\\x75\\x41\\x04\\x8c\\x01\\x2a\\x63\\xae\\xc9\\x64\\x99\\x5f\\x1e\\x13\\xb0\\x66\\x14\\x50\\x68\\x72\\xba\\xc2\\xb0\\xa9\\x10\\xef\\x66\\x89\\x4f\\xfa\\x1f\\x39\\x8e\\xd4\\x3d\\x96\\x87\\x20\\xd3\\x9b\\xce\\x1e\\x14\\x77\\x33\\x1b\\x18\\x63\\xa9\\xa3\\x29\\xdd\\xef\\xf9\\x59\\x72\\xa2\\xc1\\xc3\\x36\\x7a\\x60\\xd9\\x6f\\xa5\\x0f\\x4e\\x21\\xeb\\x37\\x15\\x5b\\x4d\\x99\\xb4\\x1d\\x46\\x18\\x77\\x55\\xb3\\x4f\\x12\\x7e\\xd7\\x6b\\x0c\\x6f\\xd7\\x66\\xe6\\x64\\x1b\\x76\\xc1\\x8a\\xa7\\x47\\x40\\x6c\\x84\\xf6\\x05\\x2e\\x78\\xeb\\xca\\x69\\x9f\\x03\\x84\\x8c\\x27\\x14\\x24\\x39\\xbe\\xfd\\x52\\x69\\xdd\\x5f\\xdb\\x11\\xb4\\x13\\x8e\\xa0\\x34\\x02\\x7f\\x7f\\xb0\\x34\\x62\\xc7\\x6b\\xbc\\xaa\\x6b\\xba\\x12\\xc3\\x09\\x5f\\xb7\\x73\\x11\\x63\\x24\\x44\\xc8\\x98\\xf2\\x2d\\x63\\x07\\x0b\\x7f\\xa2\\xc0\\x16\\xe6\\x0d\\x9d\\xa4\\x5b\\x1b\\x36\\x7b\\x4b\\xa5\\x27\\x02\\x5f\\x2b\\xd4\\xe7\\x00\\x7e\\xc2\\x3b\\x9e\\x66\\x73\\xf7\\x64\\x5c\\xe8\\x60\\x34\\xf2\\xba\\xee\\xd8\\xd5\\x84\\xc7\\xa1\\x51\\xea\\xfa\\x8c\\x86\\x18\\x48\\x9a\\x5f\\x5c\\x04\\x75\\xed\\xb7\\x1d\\x0c\\x0f\\x07\\x71\\xb2\\xb4\\xdf\\x6d\\x60\\x1c\\x4b\\x20\\x50\\x5a\\xb3\\xab\\xe9\\xd4\\xeb\\x1d\\x68\\x74\\xe2\\xc6\\x31\\xb9\\x05\\xe8\\x38\\xbc\\xed\\x65\\x26\\xe7\\xa2\\xa2\\xbb\\x42\\xa5\\xb9\\x0c\\xdf\\x66\\xef\\xd1\\xd8\\x1d\\x75\\x41\\xb2\\x54\\xaf\\xb2\\x52\\x65\\x65\\x52\\x25\\xb7\\xea\\x35\\x2c\\xac\\x3b\\xbc\\xda\\x73\\x1d\\xb2\\x5c\\xb6\\xd1\\x45\\xed\\x0b\\xb1\\x84\\x20\\x97\\xa4\\x73\\xa4\\x99\\x70\\xcb\\x6e\\xc6\\x95\\x23\\x72\\x49\\x3c\\x24\\xbc\\xbb\\x42\\xe9\\xd8\\x06\\x1f\\x72\\x57\\xee\\xed\\x7d\\x6f\\xba\\x9a\\x57\\x0b\\x55\\xdc\\x25\\x07\\x1e\\x2d\\xed\\x28\\x74\\x08\\x1d\\x79\\x2a\\x1e\\xf1\\x49\\x43\\xe9\\xfe\\x15\\x44\\xdb\\x4a\\xbd\\x93\\x85\\x5c\\x03\\x4f\\x73\\xfe\\x49\\x07\\x1b\\xee\\xfc\\x58\\xbf\\x10\\x55\\xb8\\x77\\x1a\\xa2\\xc3\\xfb\\x25\\x80\\x3b\\x7b\\x66\\x54\\x3d\\xed\\x9c\\x2f\\xce\\xc8\\x6f\\x64\\xe4\\x5b\\x37\\x2f\\x5f\\xdc\\x5c\\xde\\xdc\\xfc\\x76\\xee\\x7e\\x3d\\x9a\\x8e\\x29\\xab\\x67\\x37\\xf3\\xdd\\x1e\\x6f\\x62\\xbe\\xb9\\x39\\x77\\x08\\x1b\\x91\\x73\\xc2\\x8d\\xd1\\xc6\\x6c\\xce\\x23\\x1d\\x92\\xfe\\xf2\\xe6\\x86\\xce\\xdc\\xaf\\xe7\\x0c\\x9d\\x76\\x2f\\x63\\x68\\x59\\x4c\\x3c\\xbc\\x36\\xcf\\x38\\x5f\\x31\\x73\\x61\\xaa\\xc7\\x76\\xe1\\xa8\\xbd\\xb5\\x33\\xe1\\xb1\\x51\\xa5\\x35\\xf1\\xf9\\x62\\x20\\xad\\x86\\x53\\x72\\x89\\x1b\\x8e\\x04\\xa1\\xb3\\xdf\\x6e\\x6e\\x2e\\xe7\\x5f\\x33\\xd2\\x8b\\x3e\\xf7\\xb5\\xf9\\x3a\\xfe\\x9a\\x91\\x7d\\x13\\x36\\x1a\\x6f\\xb7\\x4b\\xc4\\xb2\\xf3\\x56\\xda\\xeb\\xe6\\xf4\\x72\\x27\\x5a\\xf5\\xb9\\x68\\x43\\x0b\\xfe\\xac\\xe2\\xe7\\xf7\\x1b\\x1a\\x02\\x7b\\x75\\x02\\x9c\\xa6\\x24\\xc1\\x50\\x36\\xcc\\x5b\\x38\\x4e\\x46\\x0f\\xc3\\x14\\x82\\x48\\x29\\x16\\x33\\x7f\\x74\\x35\\xef\\xf6\\xf2\\x62\\x1a\\x1d\\xc4\\x59\\x5d\\xb6\\x70\\xbe\\x46\\x33\\xf4\\xed\\x38\\xd8\\x16\\x85\\xca\\xf0\\x28\\xd7\\x47\\x6b\\x69\\x7f\\x7c\\xae\\x97\\x5d\\x08\\xb1\\x6c\\x9e\\x1d\\x27\\x91\\xd4\\x1f\\x6f\\x64\\xb5\\xd0\\xd0\\xc0\\x97\\xd6\\x0b\\xc3\\xf3\\xd9\\xfe\\xb6\\x70\\x9c\\x61\\xca\\x20\\x13\\x64\\xd0\\x86\\xdd\\x50\\xec\\xef\\xb4\\x49\\xe3\\x21\\x46\\xff\\xb1\\x6d\\x76\\xb1\\xa9\\x8f\\x9b\\x10\\x03\\x4e\\x9d\\x2d\\xbb\\x43\\x04\\xbf\\xae\\x97\\x2c\\x15\\xc0\\x7d\\x9e\\x28\\xd1\\x33\\xf1\\x05\\x5e\\x86\\xd3\\x76\\x5c\\x42\\x5f\\xf5\\xdf\\x6d\\x21\\xc7\\xa1\\xcf\\xa9\\x9d\\xc0\\xa6\\x01\\x0e\\x85\\xae\\x7a\\xc9\\xbc\\xe9\\x32\\x63\\x63\\xed\\xd5\\x42\\xdb\\x94\\x16\\x48\\x99\\x1b\\xa0\\x91\\xb0\\x5d\\xb0\\x3f\\x4d\\xa6\\x6e\\xc6\\x83\\xa6\\x16\\xc6\\xac\\xf2\\x8c\\x2b\\xbd\\x47\\xfd\\x43\\x44\\x69\\x62\\x9d\\x34\\xf7\\xff\\xd2\\xdd\\x9e\\xb7\\xe8\\x8c\\xf1\\xe0\\x44\\x04\\x6d\\x8c\\x8b\\xfd\\x9c\\xfa\\x6c\\x1a\\x9b\\x4b\\xa1\\xdc\\xb8\\xbd\\x94\\x8d\\xe9\\x90\\x1c\\x4f\\xf0\\x0a\\xdb\\x36\\xcc\\x19\\x7b\\x49\\x03\\x1d\\xbe\\x33\\xe8\\x46\\xd7\\x4d\\x7b\\x3f\\xf7\\xc7\\x22\\xc5\\xd3\\xc4\\x93\\x65\\x38\\xde\\x5e\\xef\\x8f\\x01\\x04\\x54\\xf8\\xa1\\x2b\\x22\\x02\\x1e\\xe8\\x8b\\xc3\\x68\\xd0\\x04\\x13\\x8a\\xf6\\x27\\xc8\\x42\\xab\\x8e\\x0e\\x65\\x05\\x92\\xf7\\xd9\\x13\\xdd\\x8e\\x1c\\xb7\\xd8\\x45\\x04\\xb6\\x75\\x2e\\x06\\xe3\\xde\\x1f\\x55\\x15\\x34\\x17\\x32\\xb4\\x30\\x60\\xa6\\x52\\x5f\\xfa\\x94\\x96\\x22\\xe0\\x7f\\x6f\\x7b\\xce\\x43\\x74\\xab\\xfc\\x12\\x4c\\x35\\x3e\\x1d\\x3e\\x86\\xaf\\xe9\\x99\\x59\\xdb\\x2d\\xa0\\x9f\\xe5\\x17\\xea\\x40\\x83\\x0c\\xac\\x01\\xef\\xa3\\xee\\x9b\\x1b\\x6a\\x76\\x3f\\x3c\\x8c\\x77\\x65\\x6e\\x18\\x0f\\xd1\\x7c\\x7a\\x41\\x5b\\x20\\x52\\xdc\\x67\\x8c\\x85\\xa2\\xf2\\xa9\\xcf\\x77\\x7a\\x04\\x2e\\xc2\\x46\\x07\\x5e\\x5c\\x32\\xde\\x01\\xa0\\x2b\\xf7\\x8c\\x87\\xed\\x96\\xf6\\x2d\\x76\\xac\\xae\\xfd\\x19\\x60\\x87\\xb9\\xe3\\x40\\x7d\\xfa\\xb9\\xad\\x75\\xb7\\xb7\\x6b\\xd9\\xed\\x8f\\xec\\x09\\xac\\xf3\\x80\\x8c\\xe2\\x95\\xf0\\x84\\x35\\xea\\x0d\\xb7\\x77\\xd7\\xbd\\x31\\x26\\x09\\x85\\x98\\xb0\\xa0\\x8d\\x97\\x6b\\x1d\\x9e\\x37\\x28\\xf0\\x12\\x91\\x36\\xa0\\xd1\\x4b\\xc6\\xcf\\x22\\xa1\\x66\\x57\\x73\\xcf\\x94\\xf0\\x67\\xd1\\x9c\\x35\\x2f\\x6a\\xf6\\xc8\\x38\\xbb\\x9a\\xbb\\x2e\\xe0\\xab\\x15\\x98\\x3f\\xe8\\x5c\\xa1\\x9b\\xa0\\x6c\\x7c\\x2b\\x76\\x38\\x07\\xa5\\xeb\\x73\\x8d\\xaa\\x6c\\x33\\xb6\\x54\\x0c\\x27\\x00\\x08\\x9d\\x10\\x09\\x0b\\x0e\\x29\\x20\\xd0\\x7f\\xc9\\xd5\\x67\\x69\\x5d\\x09\\x68\\x49\\x9b\\xbf\\xf4\\x45\\xdc\\xf7\\x74\\x67\\xcf\\xde\\x3f\\x3a\\x66\\xe3\\xaa\\xbd\\x32\\x30\\x56\\x65\\xf5\\xa1\\xea\\x47\\x01\\x68\\x2d\\xbb\\x5b\\x71\\x11\\x2f\\xed\\xb3\\xae\\xd8\\xf8\\x62\\x7c\\x89\\x53\\x37\\x00\\x18\\xf7\\xff\\x3e\\x6d\\xee\\x99\\x3d\\x35\\x9d\\x4e\\x42\\xbc\\xfb\\xbb\\x75\\x80\\x5c\\xc8\\xb2\\x71\\xe8\\xd3\\xfe\\x39\\x8d\\x77\\x1f\\xba\\x74\\xa8\\xa2\\x6c\\xde\\x33\\x75\\x5f\\xbd\\x4f\\x7c\\xbc\\xf1\\xb0\\x29\\x5c\\xa8\\xdb\\x83\\x24\\x0c\\xaf\\xf5\\x52\\xc9\\xb0\\x97\\xf0\\x41\\x26\\xe6\\x8e\\x98\\x33\\xf4\\x3b\\x23\\xf0\\x9f\\xcc\\x4d\\x1e\\xe0\\x50\\x2c\\xbf\\x89\\xf3\\x26\\xcc\\x3a\\xde\\x2d\\xdf\\xfa\\x07\\xc2\\xc2\\xe1\\xe5\\xcd\\x00\\x95\\x26\\x31\\x4d\\xca\\x4a\\x65\\x3a\\x48\\x4a\\x93\\x76\\x10\\x98\\x57\\xec\\xf6\\x07\\x06\\xea\\x78\\x49\\x93\\x19\\x79\\xcf\\xb0\\xaa\\x4d\\x1d\\x91\\x81\\x4c\\x0b\\x25\\xc3\\x87\\x41\\x82\\x17\\x55\\xc6\\x05\\x80\\x04\\xf3\\xda\\x1c\\x42\\x9e\\x8e\\xf7\\x2c\\x42\\x00\\xff\\x7b\\x49\\xed\\x5b\\x4f\\x03\\xdb\\x1e\\x8a\\xed\\x80\\x8b\\xb0\\xa3\\xfa\\xa8\\xbb\\x43\\xcd\\x82\\xbe\\x17\\xda\\x36\\xf9\\xba\\x7e\\xf7\\xea\\xe2\\xe9\\xcb\\xeb\\x37\\x2f\\x9e\\xbb\\x83\\x8f\\xa5\\x1a\\x58\\x17\\x3a\\x0c\\xaa\\x7c\\x60\\x05\\xf5\\xb0\\xe2\\x71\\x94\\x63\\x82\\x4e\\x68\\x52\\xbb\\x8a\\x01\\x7d\\x6d\\xa7\\x5a\\x3f\\x6a\\x23\\x81\\x6e\\xa7\\xec\\xb9\\x1d\\x71\\x48\\xfb\\x46\\x62\\x61\\x09\\x85\\x0d\\xe8\\x30\\x4f\\xb6\\x0b\\x28\\xd1\\x6f\\xbd\\xb7\\x0c\\xb2\\x07\\x48\\xf8\\xbd\\x05\\xa5\\x33\\x79\\x00\\x48\\xb2\\x07\\x32\\xf2\\x18\\x5e\\xe4\\x1f\\x80\\x19\\xe4\\xf2\\x0e\\xe1\\x6e\\x7a\\x04\\x77\\x87\\x09\\x87\\x5d\\x70\\xff\\x35\\xe8\\xca\\xce\\x00\\x80\\xeb\\xd1\\x1c\\x84\\x5e\\x6a\\x84\\x00\\x80\\x05\\x82\\x19\\x88\\xe5\\x28\\xdb\\x8c\\x9f\\xc7\\x62\\x17\\x65\\xae\\xcf\\x81\\x6d\\x74\\x23\\xbc\\xb2\\x28\\xe4\\xea\\x7e\\xe3\\x4a\\xae\\x3e\\xb9\\xc3\\xa1\\xb6\\xd6\\x1e\\xbe\\x04\\x4e\\xd6\\x5c\\x38\\x91\\x00\\x83\\xf4\\x89\\x93\\x66\\x8e\\x09\\xf3\\xe2\\x71\\xd4\\x13\\x5f\\xb0\\xfd\\x05\\xca\\x96\\x5d\\x18\\x17\\x29\\xac\\xb0\\x12\\xdd\\x31\\xbb\\xae\\xb6\\x10\\x50\\xc7\\xe9\\x8a\\x0a\\x7d\\x17\\x86\\x5e\\x7c\\x4c\\xf2\\x2a\\x89\\xa1\\x62\\xf6\\x5a\\x3f\\xcf\\x8e\\xc6\\x25\\x30\\xd0\\x59\\x63\\xb3\\x1a\\x9f\\x72\\x6b\\xc1\\x2a\\xce\\xa0\\x0e\\x33\\x81\\x4f\\x01\\x44\\xf1\\xeb\\x97\\x23\\x23\\x29\\x1e\\xf1\\x58\\x4c\\x78\\x82\\xdb\\x4a\\x5f\\xe3\\x9b\\x81\\x2c\\x70\\x2f\\x26\\xb6\\xc4\\x73\\xc2\\xff\\x2c\\x12\\x20\\x6c\\x7b\\x46\\xe5\\xe6\\xe1\\x45\\xfb\\x11\\xb2\\x38\\xff\\x90\\xf0\\x00\\xdb\\x4c\\x0d\\x85\\x58\\x30\\x25\\x16\\xfc\\xbe\\x8d\\x77\\x22\\x26\\x3c\\x1e\\x8d\\x3c\\x29\\xa2\\x36\\x66\\x27\\xde\\x69\\x28\\x24\\x8b\\x47\\x23\\xde\\x66\\xbb\\x17\\x12\\x8f\\xcd\\x7c\\x31\\xf1\\xfc\\xc7\\x12\\x55\\x78\\x6a\\xe6\\xcf\\x87\\x02\\xcf\\x9d\\x1c\\x87\\x62\\x76\\x0c\\x56\\x3d\\xf3\\xe7\\xe6\\x7e\\x38\\x68\\x31\\x73\\x1c\\xaa\\x44\\x33\\x0c\\x68\\x8d\\x79\\xd2\\x44\\x23\\xc3\\xeb\\xbb\\x22\\x16\\x1d\\x9f\\x38\\x00\\xb7\\x80\\xed\\x1f\\x9f\\x87\\xfd\\x51\\xb3\\x2e\\xbd\\xb7\\xdf\\xb1\\x35\\x64\\x16\\xef\\xbf\\x93\\xac\\x6d\\x11\\xcb\\xb0\\x13\\x75\\x3b\\xce\\xf0\\x74\\x5f\\xee\\x2f\\x2e\\xb8\\x21\\xcf\\xaa\\x1d\\xde\\x00\\x86\\x17\\xe1\\xf0\\x22\\x3d\\xae\\x56\\x19\\xde\\xbb\\xa1\\xd5\\xa7\\x11\\x57\\x9a\\x61\\xe2\\xc6\\xa3\\xf0\\xd0\\x49\\x4a\\x07\\x8e\\x4f\\xf8\\x56\\x1c\\xa1\\x7f\\x7d\\x23\\x8d\\xf0\\x79\\xc6\\xef\\x01\\x20\\x36\\xfc\\xd6\\x8b\\x29\\x31\\x15\\x01\\xdb\\x90\\xef\\x3e\\xe3\\x5d\\x8e\\x79\\x41\\x33\\x8d\\x84\\xb6\\xbd\\x9b\\x4d\\x33\\xcd\\x0a\\xd0\\x6d\\x73\\x4a\\xda\\xa8\\x6b\\xae\\xd9\\x2e\\xa0\\xd7\\x6c\\x1f\\xe6\\x3b\\xbc\\x20\\x22\\xb3\\x60\\x1c\\x67\\x2b\\x17\\x6d\\xc0\\xc8\\xfc\\xe2\\xc2\\x6b\\xe2\\xb8\\x4a\\x91\\xcc\\xf2\\x39\\xa7\\x80\\xc1\\x80\\x19\\xce\\x50\\x0e\\xa5\\xc0\\xfc\\xc0\\x4e\\x67\\xda\\xb1\\x56\\x7d\\x9a\\x26\\xda\\xf6\\xb3\\x09\\xfd\\x12\\x0a\\x41\\x32\\x0c\\x6c\\x4d\\x1c\\xc7\\xa4\\x29\\x3b\\x2d\\x29\\xdf\\xc8\\x37\\x34\\x64\\xcd\\x93\\x62\\x8c\\x7d\\x46\\x3f\\x43\\xac\\x58\\x60\\xa5\\x7f\\xa7\\x21\\x73\\x43\\x34\\xfc\\x82\\xda\\x85\\x10\\xd1\\x34\\x74\\x15\\xcf\\x18\\x2f\\x1e\\xff\\xc9\\x71\\xe8\\x46\\x7c\\x7b\\x51\\xf0\\xfb\\xd9\\x66\\x5e\\xd7\\x14\\x7e\\xc4\\x6c\\xce\\xf8\\xad\\x78\\x09\\x9d\\xba\\xdf\\xb0\\x29\\x89\\xd0\\x6e\\x58\\xbf\\x9a\\x9b\\x96\\xf4\\xb3\\x15\\x34\\xc6\\xc5\\x14\\x7e\\x3b\\x12\\xc4\\x1b\\x64\\xea\\xee\\xef\\x32\\xc5\\xab\\x9b\\x25\\x0d\\xd9\\x88\\x78\\x83\\x3c\\x0d\\xbb\\x24\\xc5\\xb0\\x3d\\xcd\\xd1\\x75\\x01\\xbe\\x5f\\xc0\\x04\\xbf\\xc0\\x20\\xbe\\x43\\x9a\\x88\\xb3\\xcc\\x46\\xbb\\x75\\x9d\\x0d\\x05\\xae\\x97\\xe3\\x64\\x7d\\x24\\xad\\xe3\\xeb\\x7a\\xdd\\xf7\\xa1\\x59\\x1d\\x3b\\x8f\\xc7\\x32\\x48\\xd3\\xc4\\xc7\\x98\\x11\\x65\\x22\\x41\\x70\\xff\\xec\\x38\\xc3\\xe2\\xe2\\xc2\\x10\\xd5\\x8e\\x8c\\xa3\\xfa\\x44\\xd3\\x58\\x7f\\x44\\x06\\xad\\x7f\\xeb\\x00\\x0f\\xf7\\x01\\x20\\xcb\\x41\\xa1\\x40\\xb0\\x09\\xc7\\x83\\x6b\\x3f\\x47\\x63\\xee\\xe1\\x4d\\xf6\\x8b\\x81\\x8a\\x41\\x94\\x14\\x2a\\x84\\x3d\\x54\\x2d\\xd4\\x00\\xd6\\x64\\xf0\\x27\\xab\\xac\\x99\\x8d\\x7b\\xc6\\x3c\\xd3\\xa1\\xcf\\x75\\xbd\\x6d\\xaf\\xcb\\xe8\\xf7\\x03\\x36\\xc3\\xf1\\xdd\\x6f\\x38\\x55\\x0b\\x3d\\xee\\xba\\x3e\\x64\\x90\\x58\\x2b\\x44\\x5a\\x1c\\x9c\\xa1\\x89\\xb6\\xcc\\xd2\\xdc\\x64\\xc3\\x4e\\xb0\\x58\\x93\\x26\\xaa\\x4c\\x47\\x00\\xb1\\x3a\\x26\\x4f\\x11\\x45\\x6b\\xc6\\x7b\\xe5\\x90\\x4e\\x1e\\x94\\xb3\\xc9\\xaf\\x45\\xc4\\xf1\\x2a\\x87\\xe3\\x64\\x76\\x9c\\x74\\x9a\\xed\\x3c\\xe8\\xc2\\x71\\x2a\\x3b\\x4e\\x3a\\xcd\\x46\\xd8\\x9d\\x3a\\xc5\\x03\\xff\\x9f\\xf0\\xbc\\x40\\xf2\\x00\\xdf\\x9c\\xf6\\x8f\\x02\\xca\\xd6\\x84\\x8b\\x31\\x19\\x51\\x46\\x71\\x8f\\xf4\\x7d\\x36\\x12\\x6c\\x2f\\xfc\\xe5\\xda\\x6f\\xbd\\x9f\\xbb\\xd5\\x47\\x0f\\x00\\x31\\x62\\x06\\xc2\\xb8\\xae\\x04\\x31\\x9f\\xb4\\x2f\\x75\\xc6\\xcb\\x4b\\xcc\\xa5\\xd0\\x7d\\x88\\xc4\\x43\\x90\\x45\\xe7\\xf5\\xdd\\xe9\\xc4\\xf5\\x3e\\x0a\\x68\\xc8\\x78\\xe8\\xed\\x61\\x84\\x7f\\x40\\xc7\\x6d\\x0e\\x71\\x26\\xe7\\xde\\x59\\xd0\\x46\\x89\\xec\\x7d\\x10\\x01\\x46\\x36\\x0c\\xda\\xc8\\x86\\xc7\\x6c\\x44\\x30\\x7b\\xa1\\x79\\xeb\\x79\\x37\\xb5\\xeb\\xe4\\xd4\\x4d\\x93\\xda\\x3a\\x92\\x9b\\xdb\\xa1\\x63\\x90\\x12\\x13\\xb1\\x03\\xdc\\xe6\\x4a\\xae\\x43\\x08\\xa0\\x56\\xd4\\x8d\\x78\\x59\\xe5\\x1b\\x20\\x6f\\x32\\x96\\x7d\\x7e\\x84\\xed\\x62\\x31\\x9c\\xec\\x79\\xdf\\xfb\\xbf\\xb7\\x3b\\x8f\\x1c\\xcd\\xb1\\xc0\\x61\\x22\\xea\\x8b\\x17\\x02\\x6f\\x58\\xd2\\x61\\xdd\\x4f\\xde\\xcd\\x0d\\x24\\x0d\\xc8\\x97\\x42\\xc3\\x04\\x7b\\x6a\\xea\\x3a\\xf4\\x92\\x46\\x23\\x81\\xfd\\x16\\x91\\x97\\x19\\xae\\xa1\\xe3\\x5e\\xbc\\xec\\xf1\\xbd\\x97\\xe9\\x18\\xa6\\x6a\\x96\\xcd\\x1b\\x02\\x05\\xcf\\xf6\\xcd\\xe0\\x0b\\xc6\\xe3\\xc6\\x86\\x21\\x31\\xab\\xba\\x01\\x50\\xd8\\x34\\x94\\xbc\\x09\\x01\\x9f\\xf1\\x2b\\xc6\\xb3\\x8b\\x0b\\x7e\\x7f\\x71\\xa1\\x0d\\x26\\x7a\\xf8\\xb5\\xbb\\x77\\x3f\\xd9\\xf3\\x0e\\xe3\\x9c\\x5c\\x8f\\x33\\xcd\\xd3\\xe9\\x05\\x89\\x4e\\xae\\x05\\x7e\\xfa\\xf2\\x6c\\x47\\xff\\xc1\\x6c\\xc7\\x62\\x16\\xfd\\x8b\\xd9\\x4e\\xf8\\x02\\x66\\x3b\\xc4\\xeb\\xbb\\x7b\\x73\\x1b\\x7a\\x4a\\x84\\x47\\x4b\\x30\\x9b\\xe3\\x7d\\x9d\\x30\\xe5\\x0b\\x3b\\xa6\\xbb\\xbe\\xbb\\x0b\\xa7\\x39\\xd1\\x53\\x0e\\x0f\\xf6\\x7c\\xb7\\xf7\\x0c\\x66\\x30\\xc9\\xd9\\xe1\\x24\\x27\\x30\\xc9\\xc9\\xc5\\x05\\x5f\\x5c\\x5c\\x68\\x63\\x3d\\xdd\\xbc\\x45\\x1a\\xc3\\x96\\xf4\\x85\\x27\\x49\\x63\\x68\\x91\\x46\\x5d\\xb8\\x4f\\x1a\\xc3\\xee\\x46\\x1c\\xb3\\x74\\x18\\xdb\\xb5\\x33\\x7d\\x31\\x1a\\x6b\\x94\\x14\\x5b\\x1d\\xb3\\xad\\xf8\\xf8\\xf5\\x28\\x94\\x62\\x77\\xef\\xee\\xe9\\x5b\\x76\\x1b\\x1c\\x70\\xb6\\xdb\\xf3\\x50\\xbc\\xa1\\xf4\\x52\\x66\\x61\\x91\\x27\\xe1\\x80\\xde\\x84\\x23\\x76\\xa9\\x95\\xf6\\xaf\\x28\\xf5\\xc7\\x99\\xbc\\x4d\\x62\\x59\\xe5\\x45\\x5d\\xef\\xf6\\x6c\\xbc\\x2d\\x55\\x71\\x1d\\xab\\xac\\x62\\x18\\x45\\x99\\xe1\\x4d\\x50\\x0a\\x6f\\x78\\xc7\\x08\\x01\\x31\\x5e\\xaf\\x49\\x5f\\xe7\\x9f\\xeb\\x3b\\xe5\\xaf\\x92\\xaa\\x7e\\x5b\\xaf\\x4b\\x46\\xa7\\x02\\xc3\\x86\\xb2\\x4b\\x74\\x63\\xf2\\xf3\\xf0\\xc1\\x71\\xf4\\xef\\x18\\x03\\xc0\\xf3\\x05\\xe0\\x81\\xa5\\x89\\xe3\\x1f\\x75\\x47\\x14\\x6b\\xcd\\x78\\xe3\\x85\\x54\\x89\\xee\\xd7\\x9a\\xc1\\xf6\\x5f\\xcc\\x26\\x73\\x2f\\x16\\x71\\x77\\x92\\x73\\xc5\\xc6\\x55\\xfe\\x71\\xb3\\x69\\xae\\xf9\\x1a\\xc5\\x5d\\x5c\\x2c\\xe3\\x9b\\xbb\\x10\\xc3\\xa1\\xb9\\x60\\x03\\x2f\\x96\\x41\\xc3\\xa4\\xba\\x8e\\x47\\xe4\\x43\\x3f\\x8d\\x79\\x4b\\xcc\\x2a\\xb3\\x64\\x2d\\xfb\\x39\\xaf\\x7b\\x49\\xcd\\x91\\xf0\\xce\\x04\\x85\\x71\\x87\\x74\\xd8\\xde\\x6d\\x5f\\xd7\\xdd\\x73\\x77\\x8d\\x7a\\x5d\\x87\\x8f\\xbf\\x65\\xbc\\xbb\\x78\\xdc\\x25\\x79\\x66\\x5d\\x43\\x9e\\x64\\x03\\xdf\\x71\\xe8\\x50\\xb5\\x91\\x33\\x5f\\xe7\\xa1\\xaa\\xeb\\xfe\\xfb\\x77\\x7f\\xc1\\x2a\\x9e\\xc3\\xce\\x3a\\x54\\x53\\x80\\x88\\x99\\x64\\x9b\\x6d\\x45\\x1c\\xe7\\x9f\\x42\\xfc\\x8d\\x35\\xfe\\x5f\\x9e\\x8e\\x39\\x34\\x93\\x73\\xd6\\x86\\x78\\x50\\x87\\x41\\x66\\xc3\\xe4\\x96\\x30\\x0f\\x32\\x09\\x92\\x67\\x64\\x84\\xd7\\xfd\\xfa\\xcd\\x11\\x58\\x80\\x37\\xf4\\x06\\xe5\\xc6\\x55\\xe3\\x52\\x05\\xdb\\x22\\xa9\\x1e\\xde\\xe5\\x69\\x12\\x3c\\x4c\\x0f\\x13\\xc6\\x49\\x79\\xad\\x6f\\x29\\x1a\\x5e\\xf1\\x5b\\x95\\x85\\x79\\xa1\\x83\\x11\\xb9\\x31\\xef\\xd6\\xa0\\x74\\x17\\xbc\\x9d\\xe6\\xd2\\x5d\\xf6\\xec\\x56\\xfe\\x79\\xa8\\xd4\\x7b\\x6d\\xe9\\xf4\\x7e\\xb1\\x2e\\x9b\\xdd\\x99\\x88\\xe7\\xb8\\x4b\\xdb\\x3b\\x85\\xa5\\x97\\xd1\\xd6\\xfc\\xeb\\x26\\xb3\\x15\\xa4\\x3e\\xdb\\x29\\x3b\\x4c\\x9e\\x0b\\x63\\x16\\xaf\\xe8\\x47\\x6a\\x45\\xbe\\x03\\xb6\\xde\\x0b\\x85\\x95\\xa6\\x46\\x57\\x0c\\x83\\x92\\xe3\\x8d\\x98\\x53\\xf8\\x37\\x12\\x18\\xef\\x3c\\x74\\xf1\\x2c\\x20\\xb4\\x8e\\x75\\x2d\\x5d\\xd4\\x79\\x60\\x6f\\x3c\\x19\\xb6\\x41\\x09\\x75\\xc4\\x29\\x74\\x89\\x30\\xab\\x34\\x31\\xe6\\xf9\\xbb\\x26\\x1c\\xa2\\x8b\\xf6\\x68\\x8b\\xbc\\xac\\xdc\\x60\\xf6\\xed\\x9c\\x6f\\xf2\\xa2\\x72\\xdf\\xd0\\x60\\xf6\\xe7\\x36\\x0c\\xe2\\xa3\\x26\\x0c\\x22\\x2f\\x54\\x2a\\x61\\xce\\xdf\\xd9\\x85\\xf5\\x35\\x16\\xe6\\x89\\x90\\x3d\\x3f\\xeb\\x62\\x2f\\x4a\\xc6\\x83\\x5e\\x5b\\x57\\x6d\\x5b\\xdf\\x58\\x6d\\x9d\\x0a\\xb9\\xd8\\xda\\xd3\\x8f\\xdb\\xc8\\x8d\\x22\\x68\\x9f\\xeb\\x3a\\x1c\\x1f\\xf6\\x86\\x01\\x9a\\xc4\\xa0\\x8e\\x22\\xc0\\x5f\\xc7\\x81\\xd2\\x79\\x81\\x09\\xf0\\x7b\\xaa\\x94\\xe3\\x04\\x26\\x0f\\x74\\xa0\\x6d\\x60\\x6e\\xeb\\x77\\x2d\\x58\\xf8\\x09\\x84\\x6f\\xdf\\xdd\\x1c\\xb1\\x29\\x01\\xdb\\x49\\xbc\\x0f\\x15\\x21\\xa7\\x53\\x03\\x4e\\xe5\\xec\\x15\\x0d\\x98\\x19\\x96\\x6b\\xc7\\x25\\xfb\\xd5\\x36\\xcd\\x7d\\x69\\x85\\xeb\\xd2\\xeb\\xd9\\xb7\\xcb\\xd3\\x51\\xda\\x75\\xf0\\x92\\x53\\xb7\\xdd\\xf9\\x61\\xab\\x84\\xd6\\xf7\\xa4\\xdd\\xcc\\xea\\x9b\\xdd\\xec\\xb7\\x9b\\x1d\\x60\\x46\\x29\\x2e\\x67\\x37\\xfb\\x9b\\xf9\\x5c\\x5f\\x95\\x16\\x40\\x1e\\x76\\x33\\xbf\\xd9\\x7f\\xc5\\xa7\\x37\\xd9\\x25\\x0f\\xc5\\x0e\\xef\\x99\\x52\\x59\\x75\\xf1\\xe1\\x61\\xa3\\x88\\x4b\\x80\\x92\\x25\\x5a\\x49\\x7e\\xb9\\x2c\\xf3\\xcc\\x0b\\x16\\xb2\\x28\\x55\\x25\\xb6\\x55\\x74\\xf1\\x57\\xb2\\x6f\\x34\\x5d\\x86\\x10\\x97\\xe2\\x6c\\x87\\x1b\\x2f\\xca\\x8b\\xf5\\xcf\\xaa\\xdc\\xe4\\x59\\xa9\\xdc\\x99\\x6d\\x78\\xf4\\x1c\\x85\\x5a\\x0a\\x54\\xa9\\x39\\x2f\\xc3\\xc8\\xcd\\xdc\\xd7\\x37\\x2e\\x86\\xe8\\x43\\xd8\\x3e\\xd2\\x50\\x6c\\x7d\\x1a\\x62\\x14\\x63\\xcb\\x9d\\x65\\xce\\xad\\x66\\x3e\\x6d\\x55\\x59\\x59\\xad\\x74\\xc7\\x4e\\x3f\\xe1\\x3d\\x76\\xcf\\x65\\xe3\\x7c\\x87\\x61\\xaa\\x66\\x26\\x2e\\xf1\\xf7\\x49\\xaa\\xe6\\x64\\xba\\x90\\x78\\xfb\\xeb\\x7e\\xce\\x17\\x4a\\x86\\xaa\\x28\\xdd\\x5d\\x90\\xaf\\xd7\\x79\\xe6\\xee\\xae\\x83\\x40\\x6d\\xaa\\xe3\\x59\\xe0\\x83\\x4a\\xdd\\x57\\x97\\x9b\\x54\\x26\\x19\\x1f\\x7c\\x7d\\xf9\\x35\\xd9\\xf3\\x0d\\x40\\x74\\xc8\\x37\\x5b\\xfc\\x8f\\x8a\\xc2\\x70\\xcf\\xef\\xcb\\x22\\x7a\\x9a\\xe7\\xab\\x04\\xa3\\x64\\xb9\\xe4\\x1f\\xef\\x7f\\xfe\\xfe\\xe2\\xc3\\xdb\\x1f\\x9f\\xbf\\x21\\xf8\\xed\\x25\\x36\\x69\\xbe\\x5d\\x58\\x5f\\x81\\x8d\\xc1\\x99\\xc5\\xb0\\xae\\xd0\\x8d\\x1c\\xb5\\x6d\\x3c\\xd1\\xc9\\x85\\x99\\xdc\\x57\\xfd\\xcf\\xfd\\xb3\\x83\\x45\\x55\\x6d\\x9e\\xc8\\x60\\xa5\\xb2\\xf0\\x20\\x56\\x5a\\xff\\x06\\xee\\x03\\x53\\x81\\x03\\x7b\\x80\\xbe\\x9a\\x90\\x87\\x7c\\xc5\\x53\\xeb\\x80\\x61\\x4b\\x8f\\x2c\\xf0\\x0c\\xe2\\xc7\\x23\\x2c\\xc9\\x77\\xa1\\xac\\xa4\\xfb\\xab\\x4f\\xf5\\x21\\x20\\x97\\x63\\x33\\xd1\\x3c\\x1c\\x1f\\x01\\x8b\\x05\\xd7\\x8f\\x26\\x93\\xc7\\x02\\xa3\\x0f\\x55\\xdb\\xd2\\x04\\x32\\xaa\\xb6\\xe5\\xe3\\x6f\\x26\\x93\\xa9\\xef\\xae\\x1a\\xe3\\x10\\x5f\\x9f\\x06\\x85\\x62\\x77\\x04\\x12\\x6a\\x7c\\x98\\xc4\\x8f\\xa1\\x53\\x1d\\x77\\x62\\x8f\\x76\\x07\\x5e\\x45\\x43\\x1d\\x08\\xc3\\xf4\\x57\\x44\\x5e\\x38\\x5e\\xab\\x6a\\x91\\x87\\x22\\x97\\xb4\\x79\\x66\\x5e\\x45\\x23\\xae\\x9a\\x5c\\x63\\x0d\\x3d\\x5d\\xc2\\xec\\x55\\x97\\x75\\xde\\x8d\\x1e\\x1d\\xe5\\xce\\x03\\x1d\\x90\\x8a\\xfb\\x3a\\x5e\\x16\\x9b\\xfa\\xe3\\x00\\xe1\\xa5\\xa4\\x6c\\x16\\x8e\\xfb\\xf0\\x03\\x24\\xba\\x9f\\x32\\x77\\x37\\x18\\xd1\\xcc\\x64\\xed\\xc0\\xa9\\xc9\\xda\\xa5\\xcc\\x85\\x6c\\xe2\\x9f\\xce\\x8e\\xed\\x7f\\xba\\xe5\\xf9\\x87\\x4f\\x23\\xc6\\xe5\\xd1\\xd4\\x31\\xef\\xa9\\xc9\\x02\\x38\\x56\\x6b\\x00\\xa3\\x59\\x1f\\x61\\xcc\\x35\\xfd\\x97\\xe3\\xbb\\xa4\\x5a\\x3c\\x2d\\x54\\xa8\\xb2\\x2a\\x91\\x69\\xc9\\x1c\\xe7\\x6c\\xf8\\x94\\xaa\\xa3\\x74\\x76\\x94\\x55\\x1c\\x65\\x6a\\xa3\\x15\\x21\\x00\\x36\\x36\\x53\\x01\\x3a\\x34\\x6f\\xe6\\x7c\\x29\\x56\\xfa\\xb0\\x3d\\xd4\\x9e\\x9d\\x19\\x7d\\xe8\\x99\\x16\\x51\\x7d\\xc1\\xa7\\x2a\\xab\\xba\\x6e\\x1f\\x51\\xf1\\x83\\xf7\\xe6\\x36\\xba\\xeb\\xf6\\x13\\x3f\\xc8\\xe4\\xe1\\x27\\x0d\\x18\\xba\\x06\\xfd\\xdc\\x55\\xa1\\x25\\xf2\\xf6\\x03\\x3f\\xcc\\xb3\\x67\\x5e\\xdc\\xaa\\x21\\x35\\x05\\x89\\x5b\\xaf\\x8e\\xc4\\x7a\\x5e\\x0a\\x63\\x43\\x28\\x79\\xc2\\xbc\\x65\\x73\\x35\\x8f\\xe8\\x5b\\x7f\\xf6\\x0f\\xc6\\x7d\\xb6\\x93\\xd4\\xd7\\x4b\\xe7\\x9b\\x2d\\xc2\\xfd\\x6e\\x8b\\x59\\x1b\\x6a\\xb9\\xf7\\x96\\x3a\\xba\\xf9\\xa9\\x1a\\x91\\xb8\\xff\\x2f\\xab\\x6d\\x9f\\x5a\\x3c\\x90\\xa3\\xa7\\xbf\\x1d\\x6b\\x71\\x49\\x25\\x3f\\xc3\\x73\\x86\\xcc\\x71\\xa8\\xde\\xdc\\x8e\\x23\\x71\\x3b\\x67\\xe3\\xcd\\xb6\\xa2\\x25\\x9f\\xc1\\x0a\\xff\\xe2\\x03\\xa9\\x64\\x6e\\x66\\xae\\x66\\xc0\\x5b\\x2f\\x13\\x43\\x25\\xf1\\x06\\x4e\\x13\\x95\\x2e\\x6c\\x43\\xf7\\xf5\\x8f\\xe4\\xf0\\x00\\x34\\xe8\\x6e\\x04\\x0b\\xf8\\x84\\x79\\xba\\xc5\\xc0\\x71\\x02\\x6c\\x31\\x6d\\xac\\x2e\\xdc\\xd4\\x20\\x12\\x46\\x35\\xa2\\x92\\x5c\\x8f\\xd6\\x0d\\x5a\\x82\\xf0\\x0f\\x9f\\x86\\x8c\\x07\\x79\\x16\\x25\\x71\\xdf\\x67\\x72\\xd1\\x7a\\x00\\xbe\\x90\\x74\\x3b\\xde\\x28\\x3c\\x7a\\x34\\x3b\\x06\\xe3\\x00\\xcb\\xa1\\xc0\\xf8\\x16\\x47\\x1f\\x1b\\x11\\x50\\xf2\\xab\\xe6\\x3c\\x7b\\x35\\x46\\x73\\x46\\xca\\x78\\x2e\\xd2\\xc6\\xa2\\x8d\\x67\\x7c\\xc3\\x4b\\xf1\\x99\\xfa\\x06\\x51\\x18\\xe3\\x0c\\xef\\xb8\\xc6\\x46\\x7b\\x92\\xeb\\x15\\x5d\\xe0\\x3d\\x47\\x11\\x48\\x59\\x88\\xef\\x01\\x27\\xe0\\x03\\x1a\\xcf\\xe0\\x93\\xb9\\x23\\xc3\\x6f\\xd0\\x9a\\x20\\x2f\\x9e\\x7f\\x20\\x2c\\x03\\x16\\xc7\\xe4\\x9d\\x9a\\x07\\xf7\\x27\\xda\\x14\\x9f\\x9a\\x07\\xb7\\x80\\xea\\x33\\x10\\x9e\\x36\\x22\\x43\\x05\\x78\\x89\\x27\\x2d\\xda\\xf4\\xbe\\xf5\\x4f\\x6b\\xba\\x73\\xb6\\x60\\x7c\\xe3\\x99\\x1b\\x66\\x37\\x6c\\x9a\\xd0\\x0d\\x30\\x83\\x9b\\xd9\\x64\\xce\\xff\\x4e\\x37\\x78\\xb1\\xaf\\x9b\\xd0\\x0d\\x7f\\x34\\x99\\xf0\\xdd\\xde\\x98\\xac\\x34\\xc0\\x91\\x33\\x6f\\x83\\x5e\\x78\\xa6\\xb3\\xbc\\xe4\\x01\\x5f\\xf2\\x18\\x38\\x87\\x64\\xad\\xf2\\x6d\\xc5\\xfd\\x43\\xdc\\xa1\\xad\\x6b\\x70\\x2f\\xe2\\x25\\xd3\\x2d\\x2e\\xb1\\xfd\\xde\\x9b\\xbb\\x80\\x6d\\xb6\\xbe\\xb3\\x82\\x08\\x6c\\x23\\x0e\\xcc\\x2a\\x1b\\x1f\\x15\\x89\\x5c\\x2f\\xfd\\x1e\\xa3\\x50\\x50\\x29\\x40\\xec\\x39\\xba\\x2f\\x57\\xf3\\x20\\x54\\x0a\\x64\\x34\\x5a\\x25\\xd7\\x9d\\xa4\\x3e\\x1b\\x11\\x41\\x46\\x77\\x52\\x9b\\xb9\\xda\\x7c\\xfd\\x88\\x76\\x81\\xdc\\xc8\\x54\\x47\\xa1\\x99\\x92\\x29\\x71\\x89\\x43\\xd8\\xa8\\x31\\x84\\x70\\x8c\\x25\\x44\\x21\\x02\\x6a\\xac\\xf6\\x18\\x7f\\xd0\\xb6\\x1b\\x71\\xaf\\x13\\x0f\\x2d\\x9e\\x7b\\x4e\\x25\\x9b\\xa6\\xb8\\x56\\x92\\xb9\\x69\\x63\\x4a\\x24\\xcd\\x05\\x6d\\xc9\\xc9\\x8b\\x72\\xbf\\x58\\xc8\\x7b\\x68\\xc0\\xd8\\xe7\\x13\\xbe\\x6b\\xe6\\xfa\\xd4\\x45\\x20\\x01\\x35\\x78\\x1a\\x6d\\xd6\\xcf\\x7a\\x28\\xf2\\x4b\\xf9\\x5b\\xfb\\x4f\\x74\\xa2\\x3c\\x01\\xf2\\x30\\xd6\\x9e\\xbd\\xd1\\xc9\\x68\\x80\\x92\\xed\\xb6\\x20\\x6d\\xf6\\x2d\\xab\\x1a\\x1b\\x0f\\x5a\\xd1\\x00\\x75\\x0b\\x3b\\x0d\\x57\\xae\\xe4\\xdb\\x22\\x85\\x7d\\xae\\x5b\\xa5\\x24\\x56\\x15\\xe1\\x44\\xd3\\x3c\\xc2\\x09\\xa0\\x05\\xc2\\x09\\x70\\x82\\x1b\\xc2\\xfe\\x97\\xed\\x5b\\xbe\\xba\\xd0\\x83\\xf0\\x54\\x0f\\x38\\x22\\xa4\\xa0\\xeb\\x08\\x30\\x99\\x84\\x13\\x10\\xbc\\x61\\x32\\x5a\\xae\\x5b\\x9d\\x34\\x58\\x09\\xc2\\x43\\xbd\\x8d\\xc5\\x01\\xfe\\x2b\\x15\\x8e\\x35\\x43\\x61\\x48\\x7d\\xae\\x42\\xee\\x6b\\xf4\\xc4\\x65\\x13\\x27\\x15\\x55\\x6b\\xbe\\x0c\\x56\\x25\\x47\\xdf\\x26\\x39\\x6e\\x2c\\x6a\\x5a\\x11\\xaa\\x65\\xf2\\x89\\x4b\\xf4\\x05\\x2d\\xbd\\xeb\\x5c\\xc2\\xce\\x21\\xf0\\x30\\x30\\x6f\\x07\\x7d\\x47\\x0a\\x84\\x32\\x28\\x92\\x4d\\x85\\xce\\x56\\x96\\x8e\\xd0\\xa8\\x7b\\x34\\xd1\\x30\\x97\\x34\\x31\\xcf\\x77\\x1c\\x9f\\xb2\\xbd\\x17\\x8c\\xd1\\xb2\\x81\\x20\\xe7\\xbe\\x94\\xb7\\xd2\\x54\\xe2\\x05\\xe3\\xb2\\x08\\x84\\xf4\\xfe\\x39\\x0d\\xc6\\x79\\x86\\xb6\\x1f\\x40\\x00\\x94\\x56\\x96\\xd8\\x0d\\x5c\\x6a\\x33\\xb8\\x3a\\xc8\\xd7\\x1b\\x00\\x85\\x4b\\x2d\\xa6\\x04\\x63\\x2c\\x84\\xaa\\x17\\x60\\x8d\\x28\\xdb\\xbb\\x50\\x15\\xe4\\x16\\xf0\\xa0\\x49\\x6e\\xe8\\x99\\x0e\\xca\\x0d\\x00\\x71\\xdb\\xc1\\x56\\xa6\\x39\\x14\\x26\\x15\\x5f\\x70\\xbc\\x9b\\x83\\xa7\\x7c\\xcb\\x73\\x6b\\x76\\x3e\\x53\\xb6\\xdb\\x88\\x8b\\x2b\\xaf\\x72\\x1c\\xbc\\x97\\xce\\x71\\x6e\\xc7\\xd2\\xcf\\x8b\\xca\\x26\\x85\\x85\\xb9\\x84\\xbb\\xf5\\x6e\\xa0\\x0b\\x63\\x91\\xb5\\xf4\\x59\\x5d\\xcf\\x08\\xe1\\x31\\x2a\\xd8\\xbc\\x6b\\x8c\\x01\\x23\\xb3\\x40\\xa5\\xf4\\x9a\\x79\\x95\\xb8\\xd5\\x87\\x00\\xa1\\x58\\x0a\\x41\\xa2\\x04\\x6f\\x57\\x9c\\x3e\\x9a\\x4c\\xdc\\x6f\\x27\\xdf\\xba\\xa1\\x27\\x69\\x28\\xc4\\xd5\\xa3\\x47\\xdf\\x4c\\x1f\\xc1\\x3b\\xb6\\xe1\\xf9\\x26\\x8c\\x34\\xcc\\xcc\\xdb\\x6d\\x55\\x56\\xd2\\xde\\xa9\\xf4\\x13\\xdb\\x9f\\x41\\x37\\x36\\x98\\x31\\xc9\\x82\\xe3\\x3c\\x4f\\xf3\\x6d\\x06\\xc3\\x59\\x88\\x45\\x5d\\x1b\\x86\\x18\\x08\\xcc\\x2b\\xaa\\x98\\x10\\xcd\\x7e\\x33\\xf1\\xad\\xc8\\xef\\x64\\x44\\xc3\\x71\\x00\\x65\\x54\\x31\\x1a\\xb1\\xee\\xc4\\xf2\\x9b\\x3f\\x33\\x2f\\x9c\\xdd\\xf7\\x2f\\x8b\\x86\\x04\\x64\\x67\\x84\\xd4\\x1a\\xcf\\x4a\\x24\\x74\\xd1\\x81\\xe7\\x0f\\xef\\xdf\\xbe\\xf9\\xfd\\xe9\\xf5\\x4f\\x3f\\x3d\\xb9\\x7e\\xfa\\x23\\xe1\\xe4\\x08\\xc4\\xc7\\x64\\x74\\x6f\\xa9\\x77\\xac\\x1a\\xa7\\x05\\x5d\\x23\\xc9\\x6a\\x53\\x98\\x0b\\x49\\x9b\\xba\\xbe\\x78\\xd4\\x1a\\xb3\\xc1\\xc7\\x3d\\xeb\\x42\\x74\\xdd\\x6a\\xf3\\x1a\\xef\\x76\\x9c\\x6f\\x94\\x5e\\xed\\xe1\\x04\\x50\\xf0\\xea\\x90\\xdc\\xc0\\xea\\x96\\xaa\\x32\\xb3\\xa4\\x39\\xfa\\x46\\x07\\x70\\xfb\\x2f\\x60\\x36\\x89\\xe8\\xad\\x05\\x9f\\x42\\x7c\\xdb\\x30\\x2c\\xb7\\x80\\xce\\xaf\\xd3\\xb4\\x11\\x7a\\x74\\xbd\\x25\\xc6\\xca\\x99\\x11\\x34\\xf9\\xbe\\x30\\xb7\\x4e\\x13\\xde\\xb2\\xf9\\x3f\\xc1\\xbc\\xc8\\x58\\x59\\x49\\xc8\\xf9\\x73\\xf2\\xfc\\x7e\\x93\\x14\\xaa\\x24\\x9c\\xfc\\x24\\xcb\\xea\\xe2\\x75\\x1e\\x26\\x51\\xa2\\x42\\xc2\\xcf\\xc8\\xbb\\x42\\xc6\\x6b\\x49\\xe6\\x9e\\x56\\x8e\\x10\\xc2\\xfb\\x96\\x91\\xcd\\x46\\xc7\\x2e\\xf5\\xfb\\x03\\xec\\x0c\\x2a\\xc3\\x46\\xc2\\x37\\xf7\\x0a\\x63\\xbc\\x59\\x7d\\xf1\\xbc\\x9e\\xe4\\xdb\\x86\\x3f\\xbd\\xed\\x11\\xfb\\x69\\xf7\\xea\\x5a\\x5f\\xd4\\x7d\\x05\\x53\\x87\\xf6\\x36\\x5b\\x76\\x7b\\x24\\x7f\\xe8\\x53\\xd1\\x9c\\xf5\\x2b\\x13\\xb9\\x07\\x8b\\x90\\x85\\x74\\x89\\x26\\x8a\\x7b\\xbc\\x1c\\x7a\\x82\\xec\\xfc\\xb5\\x08\\xe8\\x67\\x9e\\x1a\\x76\\x25\\x75\\x9c\\x14\\x19\\x9e\\xe6\\x97\\x7e\\xb6\\xef\\x48\\x8c\\xfa\\x48\\xf9\\xc8\\x5b\\x68\\x97\\x84\\x2e\\x51\\xd9\\xc5\\xb6\\x24\\xfc\\xcd\\xc7\\xd7\\x4f\\x9e\\xff\\xfc\\xfb\\xf7\\x6f\\x7f\\x7e\\x7d\\xfd\\xe1\\xbd\\xbb\\x7b\\xf6\\xfc\\xe9\\xab\\xd7\\xd7\\x3f\\xfd\\xfe\\xfe\\xf9\\x3b\\x0c\\x96\\xf8\\xe2\\xe7\\xb7\\x1f\\xdf\\xe9\\x37\\x4e\\xf8\\xbb\\xeb\\x0f\\x1f\\x9e\\xff\\xfc\\xe6\\xbd\\x3b\\xdb\\xad\\x93\\xec\\x55\\x56\\xb9\\x57\\x7c\\x9d\\x64\\xdf\\x17\\x32\\x70\\x27\\x7c\\x2d\\xef\\xf1\\xe9\\x1b\\xbe\\xc9\\xcb\\x77\\x85\\x72\\x09\\x81\\xa7\\xf7\\xdb\\x08\\x9e\\x32\\x15\\x63\\xda\\x05\\x3e\\x9a\\xc4\\xf8\\x7d\\xf2\\x59\\xb9\\xdf\\xf0\\xd4\\x3c\\x00\\x7d\\x3a\\xac\\xf8\\x51\\x5b\\xf1\\xa3\\xb6\\x62\\x8c\\xe5\\xfa\\x2d\\xe1\\x67\\xc7\\xf5\\xd3\\xe6\\x5b\\xd3\\x0a\\x3b\\xd1\\xcc\\x9c\\x3f\\xfd\\xf8\\xf3\\xcf\\xcf\\xdf\\x3c\\xfd\\xf5\\xf7\\xf7\\xbf\\xbe\\x76\\xc9\\x39\\xd9\\xf3\\x67\\xd7\\x1f\\x9e\\x7f\\x78\\xf5\\xfa\\x79\\x37\\x19\\xaf\\xdf\\xbe\\xf9\\xf0\\xd2\\x25\\x3f\\xc8\\x6c\\x2b\\x8b\\x07\\xfe\\xbd\\xf2\\x0b\\x7c\\x78\\x2d\\x8b\\x60\\xc1\\xaf\\x37\\x45\\x92\\xf2\\xd7\\xf2\\x81\\xff\\xb0\\xcd\\x14\\xff\\x61\\x9b\\x3e\\xf0\\xeb\\x6d\\xbc\\x2d\\x2b\\xfe\\x5e\\x6d\\x2a\\xb5\\xf6\\x55\\xc1\\xdf\\x06\\x55\\x0e\\xbf\\x6f\\xf2\\x5b\\x9d\\xf0\\x4c\\x05\\xf8\\x40\\x1a\\x95\\x2e\\x27\\x8c\\xbf\\x7f\\xf9\\xf6\\xe7\\x0f\\x5d\\x6b\\xd0\\x12\\x34\\x02\\x4d\\x34\\x0d\\x40\\xfd\\x50\\x3d\\xd4\\x0d\\xb5\\x42\\x8d\\x50\\x59\\xaf\\x9e\\x67\\xd7\\xbf\\xba\\xe4\\xfd\\x36\\x0b\\xe5\\x03\\x7f\\x9d\\xe3\\xcf\\x87\\xad\\x2a\\xe1\\xf7\\x17\\x15\\x66\\xfa\\xe9\\xc3\\x62\\x5b\\xe0\\xc3\\xf7\\x45\\x02\\x3f\\xef\\x65\\xb5\\x2d\\x42\\xf9\\x70\\xdc\\xa3\\xa6\\x3a\\xa8\\x0b\\x2a\\x82\\x4a\\xa0\\x38\\x94\\x84\\x62\\xbd\\x12\\xd7\\xaf\\xdf\\xbd\\x7e\\xef\\xce\\xc8\\xf5\\x6b\\xc2\\xc9\\xbb\\xd7\\x64\\xce\\xd7\\x2a\\x4c\\xb6\\x6b\\x97\\xbc\\x7e\\xfd\\x7a\\x10\\xf2\\xc1\\xc3\\x60\\xe1\\xae\\xd7\\x6e\\x59\\x0e\\x24\\xe1\\xa4\\x5c\\xe4\\x45\\x45\\x5c\\xf2\\xfa\\x32\\xbc\\x7c\\xd0\\x9f\\x20\\x3d\\xda\\xa6\\xe9\\x33\\x59\\x29\\x97\\x3c\\x7f\\xfe\\xfc\\x39\\xff\\xff\\x78\\x7b\\xf7\\xee\\xb4\\x71\\xad\\x71\\xf8\\x7f\\x3e\\x05\\xe8\\xc9\\x50\\x29\\x28\\x04\\x3a\\x73\\xce\\x73\\xc6\\x8e\\xca\\xc9\\xa5\\x9d\\xf6\\x4c\\xdb\\xb9\\xb4\\x73\\x39\\x25\\x6e\\x97\\x6c\\x0b\\x30\\x18\\x9b\\xd8\\x90\\x34\\xc5\\xfe\\xee\\xef\\xd2\\x96\\x64\\xcb\\x40\\xd2\\x99\\xdf\\x7a\\xd6\\xbb\\xba\\x1a\\x2c\\x59\\x96\\xb6\\xee\\xfb\\xbe\\xdb\\x6f\\xcc\\xc7\\x88\\xc6\\x69\\x32\\x55\\xaf\\xac\\xcc\\x96\\x6a\\xa4\\xca\\xd7\\xd9\\x50\\xbb\\xce\\x84\\x06\\x90\\x86\\xe6\\x7d\\xb4\\x14\\x0e\\xb2\\x00\\x81\\x92\\x75\\x6e\\x9b\\xa3\\x92\\xae\\xe2\\x4d\\xc6\\xe3\\x4b\\x6e\\x09\\x25\\xac\\xa0\\x32\\x8c\\xb1\\xe1\\x08\\xa5\\x89\\x40\\x0e\\x02\\x0b\\x1a\\x54\\xda\\x26\\x41\\xd3\\x3d\\x94\\xe8\\xa1\\x68\\x02\\x37\\x5f\\xb7\\x5a\\xdd\\xd3\\xb4\\x15\\x74\\x62\\x62\\x01\\xcf\\x59\\x50\\x11\\x73\\x4b\\x36\\xaf\\x88\\xb9\\x05\\xbb\\xc0\\x33\\xd2\\xed\\x76\\x66\\x74\\xc2\\xb8\\x2e\\x62\\x6b\\xcb\\x65\\xf7\\x96\\x81\\xa7\\xa8\\x35\\x94\\xb4\\xe1\\xa7\\xc6\\x87\\x69\\x88\\x39\\x29\\x17\\xf2\\x9a\\xac\\x68\\x60\\x3a\\x21\\x74\\x66\\x1f\\x28\\xfa\\xe2\\x99\\x8e\\x97\\xfd\\xa3\\x23\\x4d\\x22\\xbd\\x0a\\xbd\\xd2\\x6d\\xa4\\xd9\\xc4\\x9d\\x8e\\x27\\x1e\\x9b\\xbb\\x4b\\x8b\\x6c\\x34\\x76\\x63\\x3a\\x32\\xd4\\xb6\\x74\\x85\\xc6\\x10\\x0e\\x06\\x28\\x53\\x06\\x26\\x55\\x9d\\xed\\x28\\x69\\x4d\\x47\\x78\\x3a\\x6e\\xe4\\x7a\\x06\\x7e\\xa4\\x6a\\x12\\x21\\x22\\x54\\x8f\\x81\\x41\\x3f\\x1a\\x1f\\x10\\x70\\xf9\\x77\\x30\\x7c\\xd4\\x07\\x15\\x3e\\xca\\x24\\x55\\xec\\x94\\x3a\\xb4\\xd0\\x44\\xb1\\x36\\x31\\xef\\x05\\x54\\x28\\x22\\x29\\x60\\xe8\\x85\\x32\\xb2\\xde\\x09\\xf8\\xc7\\x1f\\x52\\xb8\\x3e\\x40\\x94\\x1c\\xe8\\xbb\\x52\\xfc\\xf2\\x7b\\x01\\x29\\x4b\\xcf\\xe5\\x18\\x29\\x79\\x72\\x70\\x8f\\xe8\\x91\\xa4\\xff\\x31\\x52\\x96\\x2f\\x3c\\x80\\x84\\x31\\xf4\\x9e\\x85\\x90\\x54\\xee\\x4a\\x22\\x95\\x88\\xa3\\x65\\xb4\\x7e\\x9f\\x22\\x3a\\xd7\\xe9\\xf4\\x4e\\x64\\x01\\xcf\\x05\\xa2\\x0b\\x95\\xa3\\xf5\\xc3\\xa8\\xaf\\x2a\\x4b\\xb3\\x50\\x64\\x17\\xf7\\x88\\x06\\x2a\\xbd\\x59\\xad\\xcc\\x07\\x71\\x68\\xb3\\x29\\x42\\x7c\\xa0\\x0b\\xb5\\x47\\x90\\x17\\x96\\x67\\x03\\xdf\\x35\\x4a\\x14\\x6e\\xd8\\x0f\\x66\\x22\\x68\\x86\\x44\\xb3\\xc2\\xa1\\xb9\\x7e\\xed\\xfc\\xce\\x57\\x72\\xf0\\x4e\\x38\\xf6\\xbd\\x3a\\x02\\x4b\\x67\\xe8\\xb6\\x8c\\xd0\\xa9\\x74\\x9b\\xf6\\xea\\x81\\xb1\\xc2\\x32\\xb5\\x23\\xc7\\xb6\\xbe\\xf2\\xd3\\x34\\x16\\x3c\\x41\\x8e\\x92\\x5f\\x75\\x06\\x64\\x1b\\xb0\\x83\\x7a\\x34\\x2f\\x79\\x5f\\xdc\\x6c\\x78\\x9c\\x2b\\xa7\\xc4\\x5a\\x12\\x6b\\xcc\\xd5\\x77\\x3f\\xf2\\x19\\x46\\xa8\\xe7\\x4b\\x74\\xf1\\xb5\\x1c\\x5e\\x25\\xca\\x35\\x82\\x26\\x84\\x7a\\x7c\\xe7\\x95\\x15\\x22\\xeb\\xd9\\xc9\\xb0\\xdc\\xb5\\x1d\\x37\\xcc\\x03\\xdd\\x2b\\xdf\\x56\\xbe\\xf5\\xed\\x18\\x3f\\x0c\\x75\\x4c\\xc4\\x97\\x0e\\x78\\x9a\\xaf\\x85\\xc7\\x64\\x67\\x68\\xb8\\x19\\x9a\\x6a\\x10\\x54\\x52\\xcf\\xbe\\x73\\xd0\\xce\\x3f\\x50\\x11\\xae\\xd4\\x3b\\x1d\\xbe\\xd1\\x69\\xd6\\xeb\\x9b\\x7a\\xcd\\xeb\\xe6\\xa7\\x66\\xc8\\x2a\\xdf\\x5a\\xed\\x28\\x69\\x73\\x39\\xad\\xa1\\x1d\\x68\\x4c\\x45\\x4d\\x17\\x98\\x8f\\x43\\x8f\\x56\\xeb\\xa6\\x33\\xa8\\x9c\\x80\\x6a\\x18\\x78\\x96\\xf1\\x7b\\x04\\xb5\\x85\\xac\\x35\\x70\\xc3\\xda\\x43\\x57\\xa8\\xb5\\x26\\xf6\\xea\\x70\\xab\\x3a\\x9a\\xee\\x06\\x3a\\xc3\\x72\\x77\\xfd\\xfc\\xbd\\x41\\xe2\\x6c\\x7b\\xe4\\xf0\\x72\\x67\\x78\\x4c\\x4f\\xa7\\xaa\\xa7\\x53\\xe8\\xdb\\xa8\\x89\\x3e\\xf3\\xf1\\xd4\\x33\\x5c\\xf2\\xa9\\xab\\x5d\\xac\\xd9\\x12\\x39\\x73\\x3c\\xe1\\x80\\x72\\xd0\\x88\\x05\\x97\\xfd\\xce\\xff\\x6b\\x2d\\x91\\x0f\\x6a\\x4e\\x76\\x5d\\x0d\\xb3\\xc4\\x7a\\xbb\\x84\\x95\\xd5\\x8d\\x7a\\xbf\\xe3\\xa1\\xc1\\xaf\\x9c\\xe7\\x45\\xca\\x94\\x72\\xe0\\x4e\\x6a\\xd7\\xcb\\x13\\xe3\\x62\\x68\\xc6\\xfc\\xf1\\xa4\\xda\\xeb\\x70\\x39\\xe9\\x00\\xe0\\x33\\x62\\x45\\xe8\\xac\\x05\\xcd\\xbe\\x1d\\x05\\xae\\x89\\xa2\\xee\\x09\\x44\\x7d\\xda\\x0a\\x75\\x20\\xa2\\x90\\x90\\x90\\xf1\\xbe\\x8d\\xda\\x55\\xb4\\x2f\\x88\\x34\\xfb\\x06\\x81\\x1d\\x0f\\x3d\\xca\\xfb\\x15\\x72\\x4b\\x79\\xdf\\x42\\x7c\\xe9\\x53\\x2b\\x7a\\xac\\xc4\\x26\\xcf\\xbf\\x3b\\x9d\\x82\\x97\\xad\\x5a\\x0a\\x1a\\xfc\\x2d\\x08\\x6b\\x46\\xcc\\x2e\\x1c\\x83\\xc7\\xe0\\x68\\x34\\x19\\x06\\xb6\\x67\\xa3\\x68\\x82\\x95\\xd6\\xae\\xa4\\xb3\\x3b\\x51\\xfe\\x22\\x4a\\xa2\\xb5\\xa8\\xcf\\x58\\x84\\xb4\\x20\\xc6\\x3f\\x1b\\x50\\x5f\\x31\\xaa\\xb9\\x9f\\x63\\x9f\\xd0\\x48\\x92\\x39\\x88\\x4e\\x24\\x91\\x34\\x53\\xce\\xd3\\x94\\x56\\x45\\x54\\xf3\\x03\\x05\\x22\\xc0\\x54\\x36\\x76\\xed\\x51\\x65\\x68\\x35\\xbe\\x0e\\xaf\\xfb\\x5e\\x8f\\x08\\x7c\\x32\\x22\\x4a\\xd5\\x86\\xb8\\xcb\\x6e\\x77\\x09\\x82\\x79\\x74\\x82\\xe4\\xe3\\xb7\\xde\\x33\\xd1\\x1b\\x8e\\x22\\x86\\x06\\xc8\\xc1\\x13\\x16\\xc9\\x36\\x06\\x4a\\x35\\x77\\x4e\\xb6\\x11\\xc3\\x91\\x46\\x1d\\x45\\x40\\xc6\\x43\\x65\\x92\\x65\\x96\\xcd\\xa5\\x8a\\x57\\x2b\\x34\\x77\\x3d\\x4a\\x70\\xc5\\x66\\xe7\\x7d\\x4d\\x14\\xd0\\x88\\xd0\\x16\\xef\\x6b\\xc2\\x80\\x28\\xa9\\x53\\xa4\\xbe\\x58\\xa5\\x77\\x78\\x38\\x00\\xd7\\x68\\x2a\\x23\\x4b\\x37\\x49\\x88\\xfd\\xe3\\x88\\x9c\\x46\\xb4\\x3a\\x9c\\xab\\xf6\\xe5\\x80\\xc8\\x79\\xf0\\x99\\xaf\\x41\\xa1\\x73\\x36\\xa0\\x4b\\xc6\\xfb\\x8a\\x5e\\xa0\\x0b\\xc6\\xfb\\xf0\\xa4\\x46\\x49\\xfb\\xd0\\x62\\xcb\\xde\\x82\\x54\\x11\\x4e\\x2b\\xe5\\xed\\x93\\x25\\x8d\\xd9\\xc0\\x8d\\xcf\\xe6\\x6e\\xdc\\xeb\\x11\\x3c\\x3f\\x89\\xc9\\x37\\x0b\\x65\\x57\\x1e\\x2b\\x67\\x60\\x78\\xd2\\x63\\x01\\xa1\\x93\\x1e\\x8b\\xcc\\xa9\\x17\\x2b\\xc9\\x52\\xcc\\xe6\\x6e\\x7c\\x56\\xe9\\x81\\x43\\x05\\x55\\xc5\\x31\\xf9\\x66\\xf9\\x17\\xeb\\x71\\xcd\\x26\\x3c\\x13\\x2e\\xf1\\x7b\\x72\\x1e\\x5c\\xd1\\xed\\x42\\xdc\\xdd\\x01\\x52\\x5f\\x86\\xbd\\xa6\\x96\\x48\\x39\\xd3\\x06\\xc8\\x23\\xde\\xd7\\xc4\\x14\\xef\\x2b\\x82\\x8b\\xb8\\xfa\\xdd\\xa4\\x7a\\xd2\\xa5\\x24\\x85\\x05\\xa5\\xde\\x6d\\x6a\\x75\\xbd\\x59\\x6d\\x45\\x57\\x2d\\xdf\\xa4\\x52\\x42\\x30\\x3e\\xf3\\x5d\\xff\\x6c\\x00\\xd2\\x77\\x49\\x12\\xfa\\xec\\xc4\\x27\\xda\\xe8\\x41\\xce\\x4f\\xdd\\x01\\xee\\x12\\x5f\\x02\\xdd\\xf3\\x81\\x4a\\xf7\\x59\\xcb\\xdf\\x0d\\x21\\x79\\xc2\\x2d\\xc1\\x7d\\xcf\\x52\\x56\\xf8\\xa5\\xc6\\xa1\\x03\\x16\\x14\\xc5\\x60\\x6f\\x6f\\x0a\\xb2\\x15\\x4c\\x8c\\x81\\xff\\xda\\xf3\\x3d\\xc5\\x0d\\x0a\\x9e\\x0d\\x8a\\x42\\x3c\\x3b\\x09\\x88\\xe8\\xb1\\xc0\\x15\\x6a\\xd0\\x03\\xb9\\x21\\x9e\\xc2\\xca\\x1c\\x3e\\xad\\xda\\x4b\\x7c\\x2c\\x28\\x6f\\x6e\\xd5\\x5f\\xf8\\x03\\x01\\xd3\\x6a\\x7f\\x7b\\x81\\xd5\\x24\\x9d\\xb2\\x94\\x63\\x3e\\x42\\x40\\x74\\xa1\\x9e\\xef\\xd4\\xea\\xa9\\xe1\\x78\\xea\\x8d\\x85\\x1d\\x8d\\x8d\\x07\\xbb\\x68\\xa9\\x3e\\xf4\\x95\\x33\\x59\\x63\\x12\\x19\\x54\\xda\\xdb\\x89\\xb8\\x6b\\x4b\\x52\\x08\\x0f\\x88\\x36\\x78\\x19\\xd0\\x09\\xf3\\xc7\\xff\\xf2\\x46\\xbc\\x9f\\x8b\\xf5\\x6f\\xef\\x2f\\x5f\\x6c\\xe2\\xf8\\xbf\\x82\\x67\\x0e\\x64\\x98\\x14\\x9d\\x35\\x4b\\xbd\\x4c\\x37\\x59\\xae\\x8a\\xc0\\xa3\\xeb\\x8f\\xbf\\x07\\xab\\x10\\xf6\\x16\\xcb\\xc7\\x9e\\x3f\\x1e\\x0e\\x3c\\xb9\\x9f\\xea\\xf4\\xd0\\x23\\xc4\\x9d\\x68\\x05\\x49\\x2a\\xf3\\x87\\x1e\\x81\\xdf\\xa7\\x1e\\x39\\x19\\xc2\\xd3\\xb7\\x1e\\xf8\\x63\\x94\\x8f\\xdf\\x79\\x45\\x31\\x20\\x27\\x53\\x57\\xd5\\xf1\\x0f\\x95\\x8c\\xdc\\x09\\x6b\\xc9\\xf4\\x3f\\x21\\xed\\x36\\xf6\\x35\\x58\\x27\\xbe\\x88\\x53\\xbe\\xc6\\x68\\xd0\\x47\\x3d\\xec\\x8f\\xff\\x17\\x8a\\x91\\xe3\\xe1\\xf3\\x6f\\xe5\\x7a\\xd5\\x8d\\x83\\x2b\\x01\\x89\\xbe\\x55\\x9a\\x4d\\x0a\\x67\\x3f\\xfd\\x88\\xaf\\xc3\\xed\\x77\\x25\\x39\\x19\\xe1\\xeb\\xf0\\x3a\\xac\\x7e\\xf1\\xc8\\x79\\x5f\\x3d\\x39\\xa3\\x43\\x8f\\xd7\\x7d\\x38\\x02\\xc9\\x48\\xfe\\xc3\\x1f\\x0a\\x3c\\xee\\x9d\\x78\\x44\\xbd\\x36\\xc5\\xe4\\xab\\xa3\\xd3\\x7d\\x45\\x1e\\x79\\x8c\\x6b\\x57\\x59\\x88\\xaa\\xfb\\x93\\xce\\xa8\\x60\\xa2\\x28\\x50\\x4d\\xd5\\x22\\x88\\xce\\xbd\\xcb\\x9b\\x18\\x0b\\xaf\\x28\\x84\\xfb\\xdc\\x58\\x54\\x2f\\x43\\xcd\\x28\\x26\\xa3\\xb7\\x38\\x20\\x0e\\x97\\xf3\\xef\\xfe\\x97\\x9b\\xf7\\xd5\\x1a\\x08\\x94\\x85\\x4e\\x27\\xe3\\xb6\\x1e\\x90\\x3a\\x33\\x84\\x4b\\xf0\\x8c\\x25\\x5a\\xaf\\x4b\\x10\\x32\\xc2\\x91\\x3c\\x59\\x9a\\x6a\\xae\\x33\\x50\\x6f\\x15\\x2c\\xea\\xaf\\xd2\\x15\\xb8\\x02\\xd6\\x77\\xb9\\x90\\xb9\\xa0\\x04\\xb6\\x23\\xe4\\x21\\xdb\\x09\\x4b\\xc3\\x31\\xf7\\xdc\\x29\\xc4\\x97\\x90\\xc8\\xc7\\x5e\\x8f\\x88\\x63\\x85\\x71\\xc7\\x1f\\x9f\\x14\\x4f\\x8e\\xc8\\xe9\\x94\\xb6\\xe4\\xc5\\x50\\xe5\\x3f\\x79\\x72\\x3a\\xa5\\xe8\\x09\\xb2\\x3d\\xb6\\x58\\x5b\\x23\\x3a\\x48\\x83\\x54\\x59\\x33\\xb9\\x2d\\xe5\\x35\\x64\\xb9\\x35\\x78\\x80\\x6a\\xa9\\x69\\x96\\x6e\\xb7\\xf3\\xbc\\x41\\xba\\x70\\xf6\\x16\\xab\\xc0\\xae\\x76\\x3e\\x1f\\xf1\\x67\\x6c\\x30\\x32\\x4e\\x21\\x06\\x10\\xcc\\x5d\\x27\\x24\\x22\\x6e\\x62\\xdd\\xea\\x7b\\x39\\x90\\xd3\\x1d\\x52\\xe1\\xf2\\x67\\x55\\x74\\xa4\\x3a\\x20\\xb1\\xc3\\xcf\\x4e\\xfc\\xda\\x76\\x97\\xb3\\x2a\\x45\\x5c\\xfe\\x6c\\x30\\xc2\\x21\\x1b\\x50\\xc1\\x20\\xd6\\x58\\xf5\\x51\\x8f\\xc3\\x4a\\x31\\xe5\\x94\\xe2\\xee\\x99\\x00\\x44\\xb8\\x32\\x85\\xae\\x9d\\x28\\x36\\x42\\x42\\x06\\xc1\\x03\\xc1\\xca\\xf7\\xc2\\x1b\\xd4\\xc5\\x36\\x1c\\xfb\\x64\\x74\\x50\\xde\\xa5\\xb4\\xe8\\x4b\\x87\\x97\\x6a\\x14\\xad\\x70\\x99\\xb0\\xf8\\x82\\x3a\\x59\\x87\\xcd\\x79\\x21\\x17\\x6f\\xe0\\x8c\\x03\\x8f\\x06\\xac\\xf5\\x81\\x37\\x9c\\xc5\\x19\\xf6\\x6d\\x67\\x48\\x43\\xc6\\x8b\\xe2\\x86\\xab\\x09\\xe0\\xca\\xd8\\x8e\\x37\\x22\\x9d\\xf6\\x50\\x51\\x34\\x73\\x4e\\x10\\x09\\xd8\\x6e\\x16\\x05\\x8f\\x94\\x95\\x4b\\xdc\\x21\\x71\\x43\\xe6\\x63\\x5e\\x9d\\x0f\\x02\\x1f\\x90\\x53\\xba\\xda\\x0a\\x57\\x9d\\xe2\\xa1\\xc4\\xa7\\x26\\xcc\\x90\\x9b\\x74\\x6a\\x1e\\x85\\x3b\\x61\\x6c\\x3a\\xc2\\x13\\x9b\\x56\\xc3\\x01\\x0b\\x9a\\x84\\x9f\\xfc\\xd8\\x2e\\x20\\x98\\xd8\\x2d\\x10\\xb0\\x80\\x31\\x26\\x46\\x03\\x27\\x38\\x13\\xa3\\x93\\xa1\\x33\\x24\\x92\\xe0\\x3c\\x9b\\xc2\\x73\\x3d\\x99\\x60\\xf2\\x46\\xa7\\x4a\\x7f\\x6b\\xe0\\x46\\x35\\x25\\x14\\xf5\\x7a\\xc4\\x68\\x90\\x8c\\x23\\xcf\\xf2\\x75\\x94\\xa7\\xd9\\x1a\\xef\\x76\\xb3\\x76\\x7b\\x2c\\xe9\\xa9\\xc0\\xa6\\xa7\\xaa\\xbb\\x2b\\xf4\\x14\\x39\\xa7\\xed\\x1c\\x07\\xbb\\x51\\x1a\\xda\\x83\\x92\\x86\\xc4\\xde\\x68\\x1c\\x82\\x8e\\xbe\\x54\\x06\\x7e\\x3e\\xdb\\xc6\\x51\\xb2\\x70\\xfc\\x92\\xb8\\x20\\x3d\\x5f\\x67\\x51\\xb0\\x66\\xf5\\x63\\x51\\xb4\\xd0\\xf9\\x25\\x32\\x90\\xbe\\x03\\x2b\\x92\\x8a\\xbd\\x7d\\xc0\\x25\\x9b\\x5c\\x7c\\x01\\x0b\\x46\\xe8\\x04\\xf5\\x7c\\x49\\xdd\\xc8\\x29\\x97\\x9b\\xcd\\x37\\xc2\\xba\\x98\\xe7\\x39\\xc6\\x7c\\xf4\\x2b\\x77\\xde\\x71\\xd2\\x0b\\x48\\x9f\\x87\\x61\\x95\\xfb\\x8e\\x3b\\xbf\\x42\\xae\\x56\\xf4\\xd2\\xd6\\x04\\x75\\x58\\xc9\\x7e\\x6d\\xf9\\x8c\\xd1\\x24\\xcd\\x96\\x88\\x14\\xc5\\x7b\\x6e\\x2c\\x48\\xfb\\x47\\x4a\\x02\\xb7\\x2d\\xe9\\x44\\xb1\\x35\\x8e\\x12\\xbe\\x14\\x8c\\x83\\xc1\\x9b\\x4c\\x86\\x51\\xb6\\xbe\\x97\\x88\\x76\\xd8\\x3f\\x5a\\x65\\x51\\xbe\\x8e\\x12\\xc1\\x3a\\x03\\x99\\x04\\xaf\\xb2\\xfa\\x39\\x4a\\x74\\x6a\\xe8\\x8a\\xfe\\x91\\x04\\x51\\xb5\\x8b\\x43\\x39\\x54\\x15\\xc8\\x2b\\x4e\\xdc\\x00\\xab\\xf8\\x8f\\x56\\xa9\\x26\\x1b\\xa5\\xa2\\xdd\\xb8\\x82\\xa6\\xdb\\xed\\xec\\x39\\x41\\xd2\\xaf\\x40\\x0d\\x72\\xac\\x13\\x1e\\xe3\\xa4\\x94\\x15\\xeb\\xa1\\x3b\\x50\\x77\\x55\\xa3\\xf5\\x11\\x63\\xbc\\xd2\\xda\\xaa\\xb3\\x9b\\x77\\x01\\x9c\\x12\\x61\\xff\\x28\\x17\\xeb\\xdf\\x65\\x3f\\xa3\\xf5\\x3d\\x0e\\x68\\x67\\xa0\\x24\\x4d\\x6b\\x8e\\x27\\xb4\\xa5\\x1b\\xb7\\x8a\\x34\\xcd\\x88\\xb5\\xb0\\x71\\xc1\\x22\\x79\\xa5\\x28\\x67\\x27\\xd1\\x04\\x2f\\xba\\x5d\\xbc\\xe6\\x78\\x41\\x27\\x84\\x76\\x16\\x55\\x5c\\xfe\\xed\\x54\\x9b\\x3d\\x4c\\x89\\x3c\\xe4\\xa8\\x35\\xde\\xb4\\x39\\xde\\xb2\\x3a\\xf9\\x2b\\xc7\\x95\\x72\\x22\\xc7\\xdf\\x06\\x93\\x4b\\x30\\x25\\x9a\\x07\\xe2\\xb5\\x69\\x51\\x18\\xd5\\xe7\\x05\\x34\\xff\\x83\\x6a\\xba\\x23\\x89\\x26\\xb5\\x6c\\x75\\x48\\x1f\\x59\\xeb\\x42\\x6e\\xcb\\x69\\xaf\\x47\\x03\\xdc\\x19\\x52\\x4e\\xe8\\x7e\\xdd\\x43\\x1a\\x12\\x77\\x51\\x61\\xd9\\x35\\x98\\xc3\\xc6\\xb2\\x18\\x94\\x66\\x70\\xae\\x60\\x41\\xd9\\x96\\xaf\\x8d\\xa5\\xbe\\xe2\\xd6\\x0a\\xff\\x0d\\x74\\x0c\\xcd\\x1a\\x1c\\x34\\xd7\\xe0\\x50\\xf7\\x14\\x2a\\xc4\\xd5\\xe0\\xff\\x6c\\x0a\\x3c\\xd8\\xc4\\x6f\\x76\\x13\\xab\\x46\\x13\\x7b\\xcb\\x3c\\xc1\\x13\\xba\\xb3\\x80\\xac\\x36\\x30\\x70\\x21\\x6a\\xa1\\xfd\\x9f\\xd6\\x75\\x74\\x09\\x24\\xae\\x0f\\x4a\\xdf\\xea\\x57\\x69\\xc6\\xf8\\x1d\\xc6\\x6c\\xc7\\xbf\\xbc\\x29\\xe7\\x57\\x04\\xe1\\x8e\\xe5\\xaf\\xdc\\x90\\xb7\\x5c\\xcb\\x7c\\x37\\x1c\\x07\\xfd\\x64\\xfa\\x3e\\x8b\\x96\\x45\\x81\\xde\\x23\\x42\\x04\\xfb\\x0d\\x0b\\x35\\xf6\\x11\\xd8\\xa0\\x6e\\xe4\\xe9\\x26\\x80\\xf3\\xac\\x58\\xe0\\x36\\xeb\\x5b\\x4d\\xa1\\x29\\x88\\x85\\xec\\x03\\x9c\\x88\\x7d\\x63\\xd3\\x80\\xb5\\x05\\x03\\x21\\x5c\\x47\\xc9\\x55\\x69\\x1a\\x59\\x5e\\x4c\\x26\\x4d\\x8e\\xfa\\xa4\\x28\\xf0\\x84\\x4d\\xf7\\xd9\\xf6\\x11\\x86\\xb8\\xbc\\x9b\\x38\\x2e\\x09\\x29\\x5d\\x53\\xe3\\x42\\xdc\\x87\\xe9\\x5d\\xd2\\x64\\x25\\xcb\\x9b\\x6d\\x21\\xee\\x2f\\xd3\\x50\\xb8\\x9c\\x31\\xf6\\xfd\\xb0\\x28\\x86\\xff\\x38\\x03\\x65\\xb8\\xe1\\xf7\\x45\\xf1\\xed\\xff\\x9a\\xe8\\x86\\xdf\\x0d\\x8a\\x62\\x26\\x87\\xbf\\xaa\\x50\\x5b\\x70\\x00\\x8c\\x56\\x4f\\x56\\x3c\\x5f\\x0b\\x15\\x7d\\x45\\x95\\x83\\x8c\\x76\\x20\\xbb\\x33\\x23\\x25\\x9c\\x16\\x49\\x28\\x32\\xbb\\x2f\\x6a\\xb0\\xff\\xc4\\xf6\\x80\\x92\\x11\\x42\\x4e\\x23\\xa3\\x74\\x5b\\x46\\x9c\\x91\\x4c\\x7f\\xe6\\xeb\\xb5\\xc8\\x12\\xba\\x3c\\xcc\\x88\\xfd\\x13\\x16\\x83\\x56\\xde\\xf6\\xc9\\x08\\xef\\x9c\\x25\\x68\\xa5\\xbe\\x47\\x12\\xcf\\xa3\\x3e\\x04\\x63\\x7d\\xa8\\xc0\\x90\\xd0\\x15\\x29\\xdd\\x79\\xb7\\x8b\\xb1\\x60\\x55\\xbc\\xb5\\x8f\\xd7\\xa7\\xb8\\x7f\\x4c\\xae\\x4f\\xf1\\x78\\x1a\\x2d\\xbd\\x63\\x72\\x74\\x2a\\x31\\xe1\\x39\\xd3\\x7e\\xb6\\xc4\\x78\\xe8\\x51\\x21\\xc9\\x17\\x2a\\x0e\\xf9\\x3e\\x5c\\xe2\\x39\\x9c\\x66\\x8e\\xd8\\x73\\xc7\\x1e\\x30\\xed\\x6d\\x54\\x07\\xe7\\xeb\\x04\\x45\\xd1\\x09\\xa0\\x33\\x4d\\x8f\\x1c\\xcf\\x8d\\x8b\\x70\\x88\\xe7\\xd6\\x5e\\xa7\\xe0\\x9a\\xbf\\xad\\x20\\x00\\x7f\\xfe\\x77\\x1c\\xc2\\x41\\xd6\\x52\\x14\\x88\\xa8\\x57\\xca\\x23\\x4d\\xde\\x4e\\xd0\\xc9\\xbc\\xc2\\xcb\\x95\\x79\\x56\\x6e\\x65\\x29\\x3a\\xb7\\x9f\\x4c\\xdf\\x44\\x89\\x3e\\x2a\\xf5\\xa9\\xfa\\x76\\x27\\xfb\\x60\\x2f\\x3b\\x7f\\x82\\xca\\x99\\xc1\\x31\\xce\\x16\\xfb\\x33\\xb1\\x34\\x35\\x98\\xa1\\xde\\x9f\\x0b\\xab\\x48\\x4b\\xce\\x97\\x3e\\xf9\\x77\\x40\\x75\\x0f\\xf6\\xa9\\x34\\xf0\\xf3\\xcf\\x36\\xfc\\xb1\\x81\\xbf\\xca\\xfe\\x2b\\xf0\\x3f\\x8b\\x0f\\xc0\\x6f\\x6a\\x78\\x04\\x7e\\xab\\xc8\\xdf\\x05\\xdf\\xd2\\x63\\xd5\\xee\\xa0\\x7d\\x86\\x92\\x29\\x1c\\xa6\\xa8\\xe7\\x57\\x6a\\x7a\\xbc\\xe1\\xae\\x1f\\x22\\x04\\x55\\x92\\x46\\x7d\\xf3\\xc9\\x1d\\xde\\x19\\x40\\x08\\x65\\x60\\xe0\\x7d\\xf3\\x54\\xde\\xc5\\x64\\xd6\\xed\\x76\\x22\\x79\\x2a\\x02\\xbf\\x15\\xcf\\x08\\x95\\x57\\xa5\\x3b\\x63\\xbf\\x37\\xd0\\xa9\\xa8\\xd6\\x20\\x04\\x54\\x1d\\x08\\x8e\\x0f\\xbc\\xe9\\x97\\x51\\x37\\x54\\x51\\x41\\x25\\x91\\xfd\\xb2\\x2f\\x03\\xf0\\xe9\\xc8\\x35\\xe3\\xa7\\x8d\\x88\\x63\\x07\\x3f\\x9d\\x3c\\xd8\\x46\\xeb\\x2b\\x8d\\x48\\x94\\xa2\\xbe\\x64\\x0e\\x35\\xa2\\x18\\xcc\\xab\\x3a\\x50\\xb4\\x00\\x5f\\x14\\xa0\\xe9\\x22\\xfa\\x47\\xa9\\x9f\\x8b\\xec\\x56\\x60\\x14\\xc0\\xc8\\xd2\\x9d\\x1b\\x81\\x33\\x1d\\x16\\x1a\\x3e\\x23\\xee\\x14\\x73\\x85\\x8b\\xc8\\xeb\\xa5\\x9a\\x8f\\x6e\\xb7\\xaa\\x1d\\xa9\\x31\\xb6\\x2a\\x0a\\xcd\\x75\\x33\\x63\\x61\\x77\\xe8\\xce\\x3a\\x8c\\x4d\\xbb\\xc3\\x6e\\x17\\xcf\\xe4\\x34\\x48\\x72\\xd7\\x6e\\x81\\x38\\xd1\\x4e\\x06\\x78\\x9e\\x84\\x6e\\xbc\\x3a\\x24\\xf8\\x04\\xc7\\x6c\\x7e\\x93\\x2c\\x70\\xfc\\x92\\xa6\\xfc\\xd1\\xd2\\x96\\x11\\xa1\\x2c\\xfd\\x01\\x4c\\x24\\x97\\x79\\x24\\x76\\xec\\x23\\x2b\\xe3\\xc8\\xc3\\x76\\x91\\x77\\x74\\xca\\xe9\\x82\\xb3\\xb1\\xa7\\x88\\x59\\xfa\\x07\\x3c\\xcb\\x55\\x4c\\x9f\\x73\\xf6\\x13\\x48\\x39\\x6a\\xb7\\x3e\\x95\\x86\\x14\\x5d\\x06\\xac\\x0a\\x76\\x4e\\x5f\\xf2\\x3a\\x51\\x14\\xb8\\x7a\\x66\\xad\\x6d\\x49\\xe8\\x39\\xa7\\x33\\x9f\\xfa\\x9c\\x8d\\xd1\\x00\\x51\\xfd\\xdf\\x73\\x6f\\xfa\\x5a\\x50\\x2a\\x11\\xea\\x1b\\x6e\\xa7\\x66\\x3e\\xfb\\x70\\xf6\\xfd\\xc8\\xee\\xbf\\xcf\\xfc\\x2a\\x54\\xfc\\xc8\\x77\\xfc\\xf1\\xc0\\xab\\x3d\\x77\\xe6\\x41\\xba\\x82\\x37\\xf2\\x2a\\xaf\\x12\\x1d\\x86\\x5e\\xbe\\x7f\\xf3\\x1a\\x8d\\x52\\x8e\\xad\\x6c\\x88\\x2d\\x5d\\x57\\x26\\xe9\\x78\\xf3\\x5c\\x1e\\x54\\x08\\xb0\\xda\\xad\\x1e\\x9d\\x46\\xec\\x7a\\xa5\\x0e\\x96\\x07\\xec\\x14\\x4c\\x48\\x4f\\xa7\\x74\\x15\\xb2\\xed\\x64\\x13\\xc7\\x0e\\x1a\\xf6\\x87\\xfd\\x7f\\x20\\xba\\xe4\\xf3\\x34\\x53\\x5a\\x2f\\xf0\\x1b\\xa6\\x6b\\xe7\\x1f\\x34\\x30\\xd5\\xa1\\x75\\x16\\xf1\\x64\\x1a\\x8b\\x93\\xfc\\x66\\xc3\\xb3\\x68\\xa2\\x8d\\x85\\x50\\x49\\x7f\\xe4\\xec\\x57\\xa5\\x2c\\x2d\\xc9\\x8f\\xff\\xc8\\x94\\xf8\\xbc\\xe2\\x49\\x98\\xca\\x05\\x7c\\x82\\x7a\\xd8\\x70\\x7f\\x48\\x7f\\x2a\\x40\\xd7\\x01\\x13\\x7a\\x17\\xb0\\x21\\x9d\\xca\\x49\\x32\\xca\\x99\\x72\\x9b\\xc1\\x65\\xff\\x5a\\x1b\\x26\\x8f\\x76\\xe5\\xb8\\xfe\\x5e\\x11\\xe0\\x11\\x74\\x86\\x76\\x9c\\xeb\\xba\\xec\\x7a\\xcd\\x83\\x99\\x46\\x1f\\xc0\\x08\\x13\\xec\\x29\\xa6\\x3e\\x6b\\x59\\x8d\\xaa\\x33\\xe4\\x6b\\xed\\x1e\\x28\\xf5\\x58\\xd3\\xa1\\x38\\xd8\\xf4\\x26\\x60\\xa7\\x78\\x7c\\xed\\x5c\\x9f\\x5c\\x7f\\xf2\\x7a\\xb8\\x4f\\xc8\\xe9\\x94\\xde\\x06\\xec\\xf4\\xe3\\x32\\xfd\\x82\\x8d\\x75\\xef\\x85\\x1c\\x41\\xcb\\x89\\x16\\xa8\\xb6\\x35\\x26\\xde\\x62\\xbe\\x92\\x6d\\x50\\x14\\x38\\x90\\xd4\\x84\\x8f\\x89\\x51\\x03\\xe8\\x0c\\xdd\\xf7\\x0d\\x95\\x38\\x86\\x8c\\xde\\x22\\x1a\\xe5\\x6a\\x0e\\xd2\\x0d\\x68\\x3a\\x2b\\x5f\\x05\\x0a\\xa5\\xba\\xfa\\xe9\\x8d\\xd6\\x78\\x7b\\x0d\\x6a\\xa0\\x48\\x92\\x0a\\xbf\\xe2\\x37\\x44\\xbf\\x8f\\x53\\x0e\\x79\\xa4\\xa4\\x66\\x9f\\xed\\xfa\\xb6\\xf1\\x95\\x6a\\xb6\\x32\\x83\\xb7\\xae\\x3d\\x5f\\x5d\\x3c\\x20\\x7c\\xae\\x98\\x67\\x08\\xa2\\x02\\xa9\\xd3\\x94\\xb6\\x11\\x04\\x90\\x2e\\xa9\\xb8\\x39\\xb8\\xca\\x9f\\xb1\\xc1\\xe8\\x0e\\x2a\\x06\\xdf\\x3f\\xfa\\x11\\xa0\\xd7\\x0c\\x28\\xdf\\x23\\x25\\xd5\\x1c\\xac\\x01\\x95\\xed\\x39\\x7f\\x70\\x9a\\xa7\\xd9\\xda\\x91\\xc7\\x47\\x9a\\xad\\x69\\x4b\\xa9\\x72\\x43\\x1a\\x9e\\x4a\\xfa\\x96\\x33\\xf0\\x03\\x8c\\x96\\x9b\\x78\\x1d\\xad\\x62\\x41\\x73\\x11\\xab\\x20\\x8b\\x20\\x2e\\x14\\x21\\x0d\\xa3\\x1c\\x02\\xdd\\x53\\x39\\xa4\\x3f\\x25\\xf1\\x3d\\xcd\\xc4\\xcd\\x26\\xca\\x44\\x48\\xd3\\x95\\x48\\x1a\\x6a\\x48\\x36\\xe8\\x6f\\xf9\\xf8\\x15\\xf6\\x89\\x07\\xde\\x0b\\xe5\\xe8\\xfc\\xe0\\xeb\\xb6\\x00\\x0f\\xd7\\x0d\\xd1\\x14\\xf4\\x6f\\x20\\xda\\x28\\xcf\\x04\\xa7\\xfe\\x66\\xbd\\x4e\\x13\\x2a\\x2f\\x6d\\x2a\\x57\\x52\\x14\\xe7\\x0f\\x36\\xf1\\x83\\x3f\\x96\\xa7\\x07\\xf1\\x24\\x69\\x46\\xdc\\x44\\x5b\\x78\\x5c\\xf8\\x34\\x4a\\x66\\x22\\x8b\\xd6\\x22\\xbc\\x92\\x19\\x6f\\x38\\xcd\\x95\\x47\\x88\\xfd\\xa1\\x7d\\x23\\x2f\\x69\\x74\\x04\\xef\\x11\\x29\\x69\\xcd\\x6a\\x70\\x9e\\xcb\\x7a\\x94\\xb2\\xc8\\x23\\x5f\\x56\\xfa\\x24\\xa4\\xa4\\x6a\\xa7\\x9c\\xaf\\xd7\\x99\\xd3\\x64\\x68\\x9a\\x4d\\x24\\x5f\\x45\\xfe\\x66\\x0d\\xe1\\xc9\\xe9\\x8c\\xe7\\x70\\xc5\\x39\\xaf\\x39\\x0d\\xf2\\x7c\\x6f\\x2f\\x71\\xf6\\x8a\\x6b\\x76\\xa7\\x76\\xd4\\x09\\xb6\\xee\\xe0\\x50\\xa3\\xa6\\x61\\x42\\xf7\\xc3\\x19\\xfb\\x17\\x08\\x73\\xfc\\xca\\xd9\\x81\\x2c\\x07\\x0a\\x0a\\x56\\x7a\\xcc\\x3d\\xda\\x0a\\x81\\x96\\x53\\xa2\\x1f\\xbe\\x59\\xa7\\x08\\x0c\\x94\\xc3\\xa2\\xa8\\x2b\\xaf\\xeb\\x53\\x85\\x47\\x2b\\x27\\xb4\\xf4\\x98\\x4b\\xca\\x77\\x3b\\x58\\x4b\\x96\\x5e\\x69\\x78\\xdf\\xf2\\x71\\xe8\\x11\\x03\\x78\\x30\\xc2\\xe0\\x86\\x59\\x6e\\xd4\\x7e\\x2e\\xd6\\xd6\\x30\\xd0\\x90\\x10\\x47\\xbf\\x1d\\xd2\\xfd\\x71\\x0a\\x77\\xc2\\x05\\xf9\\xe0\\xb0\\x01\\xc3\\x09\\xa7\\x8a\\xe4\\xf2\\x60\\x95\\xe7\\x74\\xf8\\x6a\\x2d\\x96\\x60\\xab\\x71\\x43\\xfa\\xf9\\x4a\\x04\\xa0\\xa0\\x3a\\x0a\\x9d\\x95\\xed\\x1b\\x15\\x86\\xb1\\x09\\x42\\x60\\xf9\\xac\\x05\\xad\\x59\\xf3\\xae\\xc2\\x86\\x58\\x33\\x1f\\x73\\xfa\\x94\\x50\\x43\\x0e\\x8f\\x56\\xf2\\x92\\x5f\\x65\\xe9\\x6a\\x6f\\x50\\xaa\\x26\\xeb\\x39\\xb3\\x3b\\x52\\xaa\\x28\\xbb\\x6b\\xdc\\xbc\\x50\\x35\\x0b\\x5c\\x5d\\x68\\xa0\\x9d\\xca\\x86\\x5a\\xca\\x5e\\x73\\x73\\xfd\\x7e\\x94\\x24\\x22\\x7b\\x2f\\x3e\\xaf\\x5d\\xeb\\x99\\x71\\xc5\\x23\\xd9\\x2b\\x2d\\xeb\\x02\\x9a\\xcf\\x6d\\x59\\x09\\xc6\\xcb\\xd2\\xd9\\x6b\\xb9\\xf9\\xa5\\x84\\x51\\x1f\\x8d\\x6e\\x23\\xc5\\x78\\x49\\xb7\\x47\\xe1\\xad\\x83\\x50\\x49\\x68\\xc3\\x11\\xce\\xe1\\x9a\\x20\\x3c\\x9b\\xab\\x7f\\xe5\\xd7\\xb3\\xf5\\xf2\\xab\\x1f\\x41\\xd7\\x24\\xae\\x60\\xf1\\xab\\x07\\x14\\x16\\xfb\\x2c\\x8a\\xc3\\xb7\\x69\\x28\\x72\\x37\\xa8\\x55\\x95\\x82\\x5e\\x8f\\xdc\\x73\\x1c\\x8e\\x03\\x8f\\xb8\\xd6\\xe7\\xb2\\xab\\x3b\\x5e\\x2c\\xac\\xab\\xa6\\x61\\xbf\\xc1\\x2b\\x59\\x21\\x9d\\x6a\\x0b\\x2b\\x13\\xd9\\xf4\\x69\\xb7\\x2b\\xb1\\xd3\\xd7\\x5c\\xfd\\x3e\\xf7\\x47\\xdc\\x09\\x09\\x04\\xb3\\x01\\x57\\x74\\x9c\\x28\\x2e\\xae\\x8a\\x59\\x67\\x9d\\xd0\\x10\\xb6\\x4e\\xf9\\xb8\\x65\\x17\\x3e\\xf1\\xd5\\x11\\x2e\\x3c\\xaa\\xbd\\xaa\\xb6\\xe5\\x57\\x5a\\x51\\xa5\\x7e\\x39\\xa5\\xa0\\x59\\xd2\\xf0\\x02\\x6e\\xe6\\xd7\\xaa\\xbc\\x1a\\x2d\\xf5\\xe1\\xc0\\x53\\x52\\x51\\x28\\x59\\x43\\xd3\\xda\\x05\\xc7\\x02\\xc2\\x0e\\x93\\x26\\x1b\\xa9\\x86\\xff\\x28\\xbc\\x2d\\xd5\\xe1\\xaa\\xb6\\x26\\x9c\\xa8\\x5f\\x7c\\x1a\\x0a\\x1e\\xa7\\x81\\x73\\xcf\\xa9\\xbc\\x1f\\x1d\\xeb\\x5a\\xd6\\xa4\\x92\\x12\\xaf\\x05\\x32\\x8d\\xc0\\x7f\\x4b\\x8e\\x08\\x8d\\x74\\xc6\\x0c\\x14\\x2e\\x11\\x71\\xa7\\x45\\xd1\\x28\\x42\\xa7\\x6c\\x5b\\x12\\x37\\x32\\xd9\\xba\\x20\\x8d\\xd8\\xe7\\x00\\x07\\x74\\x4a\\x24\\x28\\xa1\\xb9\\x11\\xda\\xf6\\x8d\\x10\\x1a\\x4a\\x60\\x3a\\x0e\\x81\\x37\\xd9\\x99\\x19\\x17\\xb6\\x68\\x99\\x6e\\x72\\x21\\x92\\xb5\\xc8\\x50\\x51\\x54\\x19\\xb1\\xe0\\xb7\\x02\\x19\\x8d\\xce\\xf7\\xca\\x7e\\x43\\xde\\x00\\x3c\\x4a\\xf2\\xa2\\xa8\\x32\\x96\\x2b\\x9e\\x89\\x2b\\x8d\\x35\\xfd\\x9c\\x2a\\xbf\\x13\\x23\\x5b\\x56\\x53\\xf9\\x8a\\xb7\\xf6\\x2c\\xfb\\x7e\\xc4\\x2b\\x5c\\x4b\\x1b\\xb7\\x38\\x9c\\x0a\\xb0\\x52\\xd4\\xcc\\x6d\\xb9\\x7a\\x2b\\x72\\x93\\x31\\x26\\x8a\\xa2\\x03\\x91\\x92\\x3a\\x58\\xd8\\x55\\x0d\\xc1\\xcf\\x81\\x01\\x6d\\x54\\x3f\\x62\\x41\\x20\\xd8\\xef\\x41\\x10\\x25\\x91\\xfd\\xc0\\x2b\\x2c\\x48\\xb7\\x05\\x11\\xe8\\x4b\\xa7\\xd9\\x11\\x49\\xdb\\x2b\\xd7\\x33\\x01\\x6b\\x80\\x49\\x94\\xaa\\x1e\\xe3\\xfb\\xea\\x5c\\xa5\\x2b\\xc7\\x5c\\xa2\\x3f\\x72\\xd2\\xb6\\xf5\\xe0\\x3a\\x6a\\xa0\\xd3\\xcd\\x1a\\xd1\\x7a\\x0e\\x4c\\xee\\xad\\xc8\\x50\\x39\\x0e\\xbd\\x03\\xc2\\x26\\xae\\x9c\\x38\\x88\\xf0\\x3d\\x78\\x11\\x72\\x81\\x5f\\x13\\xd4\\xbe\\x70\\xe6\\x0a\\xcd\\x0a\\x08\\xd0\\xd7\\xb0\\xda\\xb5\\xf3\\x9d\\x69\\x00\\x2b\\x30\\x22\\xd4\\xc0\\xa4\\x56\\x84\\x51\\xb1\\x00\\x5e\\x21\\xdd\\x24\\xb0\\x6c\\xcf\\x7d\\xaa\\x05\\x9c\\x7f\\x44\\xeb\\x99\\x73\\x60\\x4a\\xa9\\x60\\xdc\\x1e\\x85\\x7b\\xb8\\x92\\x13\\xc0\\xeb\\x7f\\xc5\\x01\\x69\\x78\\x6f\\x08\\x47\\xa2\\x1f\\x25\\xb9\\xc8\\xd6\\x17\\x62\\x92\\x66\\x42\\x42\\xd2\\xb7\\xfd\\xf5\\x38\\xc2\\x08\\x54\\xb5\\x81\\x10\\x58\\xa0\\xb3\\x40\\x82\\x04\\xc7\\x59\\x66\\x87\\xb7\\xe0\\x0d\\x77\\xcd\\xdc\\x3a\\xf0\\x76\\xf8\\xb9\\xcd\\x95\\x52\\xb9\\x6b\\xb6\\x7c\\x2b\\x2b\\xcc\\x46\\x6e\\xb1\\x43\\xc6\\x78\\x76\\xd5\\x45\\xd1\\x1a\\x7b\\x25\\x55\\x66\\x4c\\x3b\\x23\\xf2\\x40\\xb7\\x71\\x13\\x82\\xa2\\x68\\xa6\\x87\\xc0\\xed\\x69\\xda\\x45\\x95\\x10\\xd8\\x46\\x1c\\x68\\x03\\x44\\x8a\\xf6\\xe7\\xf5\\xde\\x9a\\x44\\x59\\xbe\\x86\\x1a\\x1e\\x9e\\x00\\xbe\\x37\\x01\\xc4\\xc1\\xbb\\xad\\xd3\\x90\\x05\\x2a\\x00\\xcf\\x5d\\xc6\\x57\\x07\\xa6\\x3d\\x60\\x77\\x38\\x20\\xf2\\x20\\x0d\\x9b\\xd3\\x1f\\x76\\xbb\\xe1\\x81\\x29\\x0c\\x1a\\x0d\\xf0\\x0a\\x17\\x6c\\x0c\\xb6\\x5a\\x3a\\x66\\x7d\\x5b\\x95\\xc2\\x81\\x60\\x1b\\xb6\\x41\\x2c\\xa4\\x89\\xdc\\x29\\x07\\x0f\\x99\\xdd\\x35\\x79\\x68\\x30\\x38\\xd9\\xee\\xac\\x45\\xbe\\xb3\\x16\\xdd\\x90\\x71\\x39\\x0d\\x86\\xc3\\xe3\\x5c\\xf9\\xb4\\x65\\xb1\\x95\\x9c\\x4b\\x9f\\xae\\xd3\\xe9\\x34\\xd6\\xc9\\x5d\\xd9\\xf4\\xa5\\xf1\\xe0\\xd1\\x79\\xcd\\x75\\x34\\x6c\\x1c\\x8e\\xae\\x7c\\xe7\\xd2\\x27\\x58\\x11\\x7d\\x0a\\xc6\\x03\\x2b\\x0e\\xf3\\x46\\x0f\\x60\\x81\\x98\\x39\\xef\\xc8\\x25\\x33\\xe2\\x2a\\x08\\x02\\x95\\x10\\xef\\xf9\\x27\\x82\\x7e\\xe8\\x23\\xd5\\x74\\xa7\\x5a\\xca\\xfb\\xef\\x00\\x73\\x90\\x2d\\xda\\x0e\\x06\\x79\\x07\\xb0\\xb7\\xdd\\x96\\x5d\\xb2\\x5b\\xb0\\x52\\x59\\xa1\\x93\\x68\\x6f\\xb5\\xda\\x5a\\xe2\\xba\\xd1\\xfc\\xe2\\xfe\\x3d\\x9f\\x4a\\x8c\\x54\\xae\\x73\\x1a\\xc4\\x69\\x22\\x9c\\x89\\x4f\\xd7\\x59\\x34\\x9d\\x8a\\x4c\\xdb\\x1a\\x1c\\x9c\\x59\\x1c\\xc8\\x91\\xac\\xae\\x4b\\xf0\\x99\\x35\\x0e\\xe4\\xe6\\x0f\\x1b\\xcb\\x3c\\x30\\x7a\\x35\\xdb\\x1d\\x9f\\x6a\\x37\\xa5\\x5a\\xd6\\xcd\\xca\\x6d\\x3c\\x27\\xb0\\xf0\\x9c\\x46\\xd0\\xf3\\x29\\x6d\\x29\\xe1\\xb5\\x8d\\x25\\x80\\xfc\\x9a\\xb1\\xd5\\x08\\x4f\\x19\\x57\\xd8\\x42\\xe4\\x41\\xb0\\x74\\x3a\\xed\\x30\\xb6\\x02\\x0d\\xa4\\x3b\\x3c\\x25\\x84\\x38\\xc2\\xc7\\x53\\xda\\x2c\\x54\\xcb\\xbb\\x65\\x1d\\xf2\\x8d\\x33\\x95\\xd8\\xc4\\x17\\xdb\\x1b\\xf5\\x76\\xb5\\x59\\xef\\x8c\\x06\\xd4\\x11\\xcb\\xed\\xe2\\xb1\\xa0\\x04\\x77\\xca\\x07\\x4e\\x2d\\xab\\xd4\\xc1\\xfd\\x56\\x3b\\x2a\\x1c\\x73\\xa6\\xca\\x19\\x6b\\x3d\\x95\\xe9\\x59\\xfa\\x18\\xb0\\x2f\\xbf\\x04\\xec\\xf4\\xa3\\xa9\\xe2\\x3a\\x3f\\x1e\\x7f\\xbc\\xc6\\xde\\xf1\\x35\\xbe\\xce\\x8f\\xf1\\xf8\\xe3\\x35\\xf1\\x8e\\xc9\\x35\\x39\\x5d\\xd2\\xf3\\x80\\x9d\\xd2\\x53\\x7a\\x11\\x68\\x3f\\x3c\\x9f\\x46\\x04\\x5f\\xbf\\xeb\\x8d\\xc8\\xf5\\x50\\x39\\xdf\\xb9\\x0f\\xd8\\x29\\xc6\\xd7\\xa7\\xd7\\xa7\\xfd\\xe3\\x23\\x52\\xc8\\xa7\\xe3\\xf1\\x75\\x7e\\xfd\\xce\\x3b\\x1e\\x5d\\x1f\\x5f\\x9f\\x12\\x72\\xba\\x9c\\xba\\xaf\\xfc\\x9a\\xb1\\x86\\x8e\\x56\\x59\\x7a\\x1b\\x85\\x02\\xa9\\xb8\\x83\\x37\\xe1\\x7e\\x18\\x62\\x74\\x94\\x4c\\x95\\xfb\\x30\\x23\\x18\\x06\\xa3\\x95\\x80\\x6d\\xb3\\x4d\\x92\\x44\\xc9\\xd4\\xe9\\x0c\\x76\\xfc\\xcb\\xd7\\x0e\\xc8\\x1a\\x46\\xc1\\x55\\x14\\x3a\\x65\\x21\\xa3\\x57\\x2e\\xa2\\xad\\x86\\xc5\\x8c\\xc5\\x66\\x85\\x68\\x30\\xe0\\x16\\x91\\xaf\\xd5\\x6e\\x77\\x23\\x7b\\x21\\x45\\x0d\\x57\\x10\\x73\\xba\\xa0\\xe9\\xbe\\x52\\xcb\\x92\\x66\\x74\\x65\\x15\\xfc\\x5c\\xcf\\xd2\\x80\\x72\\x65\\x86\\x6e\\x02\\x95\\x9e\\x5e\\xe7\\xc7\\xf4\\x3a\\x3f\\x3e\\x25\\x8e\\xba\\xfd\\x1a\\x47\\x9b\\xe5\\xfe\\xc1\\xd2\\x41\\x93\\xb4\\xdf\\x00\\x94\\x31\\x0e\\x78\\x68\\x5f\\x63\\xb2\\x5d\\xd6\\xec\\xec\\x1f\\x81\\x4e\\x3d\\x22\\x47\\x78\\x49\\x6f\\xe9\\xcf\\x35\\x09\\xf8\\x12\\x0b\\xb9\\x99\\x2f\\xd3\\xe5\\x6a\\xb3\\x16\\x21\\x90\\xce\\x95\\x3e\\xdf\\xb4\\x6f\\xfb\\x21\\xb3\\x9d\\xb9\\xd1\\x60\\xef\\xa5\\xe5\\x13\\x0e\\x22\\xc0\\xca\\x01\\xa8\\x3a\\x31\\x51\\xa1\\xe6\\x9a\\x34\\x9e\\x56\\x49\\xb3\\x1c\\xcc\\x49\\x8c\\x99\\xce\\xd9\\x90\\xce\\xd8\\x3e\\x58\\x78\\x02\\x47\\x84\\xec\\x88\\x35\\x0a\\xb3\\x7e\\x35\\xe9\\x57\\x1b\\xe5\\xaf\\x96\\x3c\\x1b\\x14\\x85\\x5d\\x64\\xcc\\x7b\\xc8\\xbc\\x44\\x1e\\x79\\xd6\\x1a\\x90\\x29\\xb3\\xbc\\xd5\\xd1\\x88\\x71\\x3a\\xdf\\x19\\xe4\\x57\\x89\\xfc\\x72\\xda\\x43\\xaf\\x8c\\x1f\\x5c\\x30\\xe9\\x45\\x1e\\x0c\\xbb\\x55\\x24\\x7a\\xa0\\xc8\\x9c\\xb8\\x93\\xba\\xce\\xcf\\xaa\\xb2\\x2b\\x11\\xf3\\x7b\\xe4\\x11\\xfa\\x59\\x7d\\x69\\xd2\\xc4\\x9d\\xee\\x97\\xad\\x41\\xae\\x8a\\xd7\\x59\\xf2\\x46\\xab\\xbe\\x98\\xf4\\xe6\\xc7\\x4a\\x71\\x9c\\xb8\\xa2\\x6f\\xf1\\xfd\\x6e\\x69\\x08\\xca\\x89\\x0a\\x5b\\xbc\\xb5\\x4d\\xaa\\x6f\\xb5\\x5b\\xde\\xdb\\x7e\\xb6\\x49\\x08\\xfc\\x65\\x9d\\x01\\x4d\\xf5\\xc2\\x85\\x10\\x5c\\xb5\\xd4\\xe5\\x6e\\x37\\xe3\\xc7\\x3a\\xe3\\x0a\\x76\\x89\\x62\\x49\\x9e\\x57\\x62\\x8e\\xa8\\x5f\\xed\\x5f\\x42\\xef\\xd8\\xf9\\xe8\\x35\\x3e\\x27\\xa3\\xf3\\xf1\\xdc\\x73\\xce\\x7b\\xe8\\x04\\xf5\\xe6\\x0e\\x42\\xf4\\x8a\\x85\\xb2\\xee\\x73\\x76\\xd5\\xed\\x5e\\x49\\xc8\\x37\\x2b\\x7a\\xa4\\x13\\x6b\\x9e\\xad\\xe9\\x95\\x4a\\x28\\x93\\x2a\\x39\\xf9\\x77\\x6a\\xe5\\xfc\\xc8\\xee\\x7a\\xe8\\x84\\x83\\xcb\\x3c\\xe4\\x66\\x45\\x81\\x33\\xb6\\x1a\\xad\\x2a\\x3d\\x1a\\x67\\x59\\x3d\\x2a\\x11\\xe8\\xb4\\x6f\\xb9\\xd1\\xeb\\x76\\x5b\\x9d\\xf3\\x6e\\xb7\\x73\\x24\\xbf\\xeb\\x37\\x38\\x68\\x86\\xa9\\xa2\\x4f\\x19\\xb2\\x30\\x03\\x62\\x46\\xa6\\xe6\\x46\\xfd\\xc4\\x96\\xfa\\x88\\x50\\x4b\\xf3\\x27\\xf3\\x51\\xb7\\x8b\\xf1\\x95\\xac\\x05\\x2f\\x09\\xfd\\xa9\\x1f\\xa6\\x89\\x90\\x60\\x98\\xd2\\xd4\\x3a\\xc2\\xa8\\x7c\\xe9\\xdc\\x96\\xf2\\x6d\\xb5\\x5f\\xef\\x88\\x6b\\x9a\\x95\\xb0\\x2f\\x2b\\x8a\\xbc\\x52\\x80\\xba\\xc5\\x0a\\xb9\\xfa\\x99\\xe1\\x73\\xdd\\x50\\x73\\xe6\\xd7\\x74\\xa8\\x55\\x48\\xda\\x7b\\x3d\\x28\\xed\\x10\\x2f\\x1a\\xc1\\x09\\x47\\x61\\x1f\\xb0\\x30\\xcc\\x89\\x63\\x30\\x3c\\x33\\xab\\x0b\\xb6\\x2d\\xdd\\x45\\x1f\\xe8\\x19\\x36\\xc7\\x48\\x11\\x97\\x74\\x49\\x6f\\x88\\xbb\\xe8\\x03\\xf1\\x23\\xb3\\x15\\x89\\x49\\x6f\\x76\\x10\\x76\\xed\\xfa\\x46\\x9e\\x54\\x8b\\xbe\\x7c\\x94\\x65\\xe5\\xef\\x7e\\xa8\\x0f\\x03\\x4e\\xa9\\x6a\\xce\\x67\\xe9\\x9d\\x2c\\x2c\\x7f\\x77\\x14\\x0f\\xfa\\x41\\x9e\\x63\\x14\\x46\\xf9\\x4a\\xee\\x20\\x8a\\x90\\xf9\\x66\\x16\\x85\\xd0\\x80\\xfc\\xdd\\x87\\xa5\\xf9\\x55\\x0b\\x25\\x69\\x22\\x90\\x82\\x4c\\x1d\\x08\\x62\\x27\\xa4\\xda\\x1c\\x73\\x7a\\x43\\x6f\\x88\\x44\\x6f\\xcc\\x41\\xbb\\x28\\xdd\\xa8\\x2f\\x12\\x60\\x15\\xb3\\x5d\\x74\\x6d\\x27\\x24\\x0a\\x09\\xcc\\xa2\\x60\\x1d\\x5e\\xc5\\x95\\x36\\x79\\x65\\xed\\x78\\xd6\\x2b\\xe9\\x8f\\x3e\\x43\\x6f\\xd3\\xe4\\x44\\x45\\x28\\x97\\xd5\\xb7\\x97\\x69\\x28\\xe2\\xb6\\xf8\\xbc\\xca\\x44\\x9e\\x47\\x69\\xe2\\xb4\\x91\\xfb\\x9f\\x47\\x6e\\xd2\\x57\\xa0\\x66\\xfc\\x19\\x64\\x0f\\x9f\\xbc\\x42\\xae\\x37\\xfd\\x4c\\x4e\\x23\\x3a\\xf7\\xe5\\xdb\\xf1\\x47\\xc7\\xeb\\x11\\x47\\x5e\\xd8\\xf8\\xfa\\xae\\xe7\\x6c\\x07\\x74\\x58\\x5e\\xdf\\x1d\\xff\\x9b\\x8c\\xf0\\xf5\\x76\\x34\\xbe\\xbe\\xbb\\xee\\x9f\\x78\\xc7\\xd7\\xe5\\x88\\x60\\x07\\x8f\\x07\\x27\\xdf\\x7b\\x3d\\x22\\xdf\\x9d\\x8e\\x3f\\x5e\\x8f\\xfe\\xc7\\x3b\\x96\\xcf\\x23\\x3c\\xfe\\x28\\x1f\\xc9\\x08\\xff\\x0f\\xee\\xcb\\xdf\\xa3\\x53\\xfa\\xb3\\xae\\x5f\\x95\\x7a\\xa0\\xd0\\x4f\\x9c\\x6d\\x67\\xeb\\xf5\\xca\\xf9\\xd7\\x80\\xca\\xdf\\xdc\\xf9\\xee\\xbb\\x6f\\xe9\\x64\\xbd\\x72\\x9e\\x0e\\x4b\\xf7\\x57\\xdf\\xc2\\x96\\x62\\x3b\\xf1\\x8b\\xdf\\x88\\x38\\x72\\xa4\\x09\\x13\\xa7\\x33\\xa4\\xdc\\xcf\\x7f\\xcb\\x62\\xe7\\x67\\x8e\\xd1\\xd1\\x91\\x4a\\x20\\x02\\x7e\\x47\\xf6\\xc8\\x2d\\x9b\\xdf\\xa6\\xbd\\x37\\x6f\\xb2\\x58\\x69\\x86\\x84\\xec\\xe7\\xca\\xcf\\xa3\\x1b\\x8e\\x87\\x5e\\xb7\\x0b\\x45\\x20\\xb6\\x51\\x28\\x82\\x34\\x14\\xbf\\xfd\\xfa\\x4a\\xde\\x4a\\x69\\x22\\x4f\\x16\\x59\\x44\\x9d\\x2e\\x21\\x84\\xfb\\x81\\x34\\x7c\\xa1\\x43\\x1d\\x85\\xe3\\x6f\\x75\\x14\\x20\\xc8\\x9d\\xf1\\x5c\\xe6\\xfd\\x43\\xd9\\x7e\\x04\\x4d\\x26\\x14\\xad\\xbc\\x4a\\xaa\\x6e\\x98\\x24\\x22\\xca\\xc3\\xa4\\xca\\x95\\x8f\\x88\\x28\\x4f\\x93\\xba\\x5c\\x9a\\x41\\x0e\\x5f\\xcf\\x9c\\x77\\x3e\\xe4\\xf0\\xf5\\xec\\xa0\\xc5\\x67\\x53\\x31\\xf5\\x14\\x8d\\xb8\\x83\\x4e\\x51\\x8f\\x97\\x84\\x2a\\x80\\xff\\xd2\\x70\\xa9\\xa2\\xee\\x05\\xa8\\xd1\\x1a\\xb6\\xb0\\x85\\x6a\\x56\\x45\\xc6\\xdc\\x73\\x76\\x33\\x58\\xd0\\xcc\\x52\\x78\\xd0\\xad\\x0f\\x7e\\x0b\\xab\\x30\\x28\\x72\\x84\\x2d\\x53\\x46\\x3d\\x40\\x72\\xf8\\x74\\x17\\xe5\\x23\\xa2\\x37\\x9c\\x18\\x8e\\x86\\x2d\\x9e\\xd2\\xb5\\xe8\\x37\\xac\\xd3\\x88\\xb2\\xa1\\x91\\xdf\\x2b\\xce\\xb6\\x48\\x42\\x8e\\xec\\x2f\\x8d\\xa9\\x05\\x10\\x63\\x2d\\xb4\\xce\\x36\\xe2\\xc0\\xfb\\xce\\xa0\\xa4\\x68\\xc2\\xe3\\xfc\\xe0\\xcb\\x61\\x49\\xab\\xd0\\xcd\\xce\\x0d\\x45\\x3d\\xb4\\x43\\x4c\\x4a\\x3a\\x24\\x64\\xa1\\xe6\\xc5\\x33\\xcd\\x94\\xd7\\x4d\\x5f\\xe0\\x90\\x8c\\x2e\\xb0\\x20\\xa3\\xb0\\x27\\x9c\\xd0\\x81\\x47\\xe1\\xac\\x4a\\x8a\\x4e\\xfe\\x4e\\x45\\x18\\x2a\\x0a\\x9d\\x01\\x39\\xc1\\xba\\x8e\\x01\\x29\\x29\\x3a\\x3e\\x54\\x89\\x11\\x77\\x40\\x05\\xc7\\x42\\xd3\\xb3\\xe8\\xf4\\xab\\x65\\x4f\\xab\\xb2\\xdf\\x7c\\xb5\\xec\\x37\\x55\\xd9\\x8f\\x5f\\x2d\\xfb\\xb1\\x2a\\xcb\\x90\\x1c\\x43\\xc6\\xd8\\x57\\xbf\\x61\\x8c\\x55\\x5f\\x75\\xfe\\x42\\xf9\\x8e\\x55\\x7e\\xa7\\x78\\xeb\\x70\\xfd\\x56\\xf5\\x7f\\xa1\\xf6\\xaa\\xf4\\xd9\\x57\\x0b\\x9f\\x55\\x65\\x9f\\x7d\\xb5\\xec\\xb3\\xba\\xde\\xaf\\x43\\x71\\x56\\x43\\xf1\\xec\\xeb\\xa5\\x9f\\xd5\\xa5\\xbb\\xdd\\xaf\\x96\\x06\\xb3\\x59\\x55\\xba\\x28\\xbe\\x5a\\xba\\x28\\xea\\xba\\xbf\\x5e\\x75\\x5d\\xf3\\x23\\x65\\x55\\x21\\x95\\xad\\x58\\x32\\x72\\x6a\\x76\\x3f\\xa8\\xf6\\xa5\\x2a\\x53\\x96\\xf4\\x97\\x80\\x6d\\x13\\x07\\x5d\\x27\\x88\\x4e\\x94\\x83\\x8f\\x41\\x80\\x68\\xe6\\xa0\\xeb\\x0c\\xd1\\xd6\\xda\\x41\\xd7\\x6b\\x44\\x6f\\xf5\\x1b\\x1f\\x51\\xf4\\x04\\x39\\xe8\\x09\\xa2\\x4f\\xd0\\x13\\xe7\\x09\\x7a\\x52\\xd2\\xa5\\xcf\\xb6\\x25\\xe5\\xa1\\xbc\\xeb\\xcc\\x65\\x4a\\x46\\x07\\xaf\\x53\\x73\\x97\\x92\\x51\\xe3\\x26\\xed\\x1f\\x93\\xa3\\x53\\x2a\\x42\\xf6\\xa6\\xff\\xe7\\x9b\\xd7\\x2f\\xd7\\xeb\\xd5\\xaf\\xc6\\xad\\xa3\\x7d\\x8e\\xd5\\x11\\x10\\x12\\x71\\xd7\\x56\\xee\\xa1\\xff\\x54\\x9a\\x30\\x18\\xbd\\xc9\\x3f\\x2f\\xe3\\xa7\\xf0\\xfd\\xfb\\xf7\\x3f\\xf7\\xff\\xd9\\x1f\\x20\\xcb\\xbf\\x42\\xf9\\xb7\\x3e\\xfe\\xd6\\xfa\\x38\\xf8\\x9b\\x1f\\x23\\x2b\\xa0\\x42\\xd9\\x50\\x2e\\x7c\\x3f\\x8b\\xf2\\xb6\\x76\\x43\\xd1\\x0e\\x53\\x91\\xb7\\x93\\x74\\xdd\\xce\\x37\\x2b\\x79\\x65\\xb5\\x9b\\x1d\\xef\\x23\\xe2\\x96\\xee\\x87\\x07\\x30\\x9b\\xa3\\x46\\x3e\\x04\\x49\\x94\\xd9\\x7e\\x70\\x30\\x1b\\x84\\x59\\x01\\x43\\x7d\\x44\\xd3\\x90\\x6d\\xef\\xef\\xef\\xef\\x9d\\x5f\\x30\\x32\\xd6\\x66\\x88\\x7e\\x47\\xe8\\x6e\\x56\\xeb\\x29\\x1d\\x80\\x6e\\xdd\\x4e\\xfe\\x90\\xd0\\x37\\x6f\\xde\\xbc\\x71\\x7e\\xe1\\x18\\xbd\\x49\\x93\\xf5\\x0c\\x41\\x86\\x95\\x86\\xaf\\x64\\x4e\\x95\\xf1\\x14\\xbe\\xb2\\x32\\x86\\x32\\x23\\x0c\\x65\\x8e\\xb2\\xb4\\x7a\\x4a\\xa8\\x95\\x1a\\x12\\xfa\\xf2\\xa5\\x4c\\x82\\xb1\\x1b\\xbc\\xb5\\x93\\x43\\x42\\x67\\x33\\xfb\\x35\\x3d\\x19\\x3e\\x25\\xd4\\xce\\x1a\\xaa\\xac\\xe5\\x12\\x1a\\x8d\\x92\\xcd\\x5a\\xa8\\x7a\\x9a\\x19\\x43\\x42\\xf3\\x5c\\xe6\\xbc\\x13\\x41\\x9a\\x84\\xaa\\x48\\x33\\x03\\x8a\\xe4\\xea\\xab\\x38\\x8e\\x72\\x93\\xff\\x2d\\xa1\\xcf\\x9f\\x3f\\x7f\\x0e\\xfd\\xbe\\xe2\\xf7\\x08\\x92\\x55\\x4a\\x69\\x25\\x3e\\xc2\\x2d\\x04\\x38\\x31\\x39\\x1b\\x3e\\x1d\\x05\\x7d\\x70\\xe0\\x32\\x1e\\x78\\x8e\\x79\\x1c\\x7a\\x25\\xfd\\xb0\\xc7\\xcd\\xe2\\xec\\x64\\x78\\xcc\\x8d\\x26\\xd1\\x97\\x34\\x11\\x3f\\x4d\\x26\\xb9\\x58\\x43\\x74\\x67\\x30\\x82\\x92\\x77\\x2b\\x42\\x6e\\xd0\\x63\\x89\\x0f\\xb6\\xbb\\x63\\xfe\\x6c\\x30\\x42\\x93\\x38\\x4d\\x33\\xe4\\xa0\\x40\\x44\\x31\\xf2\\x30\\x3f\\xfd\\xe7\\x80\\xd0\\xa7\\xa4\\xa7\\x0b\\x81\\x79\\x32\\xff\\x46\\x66\\xb6\\x9e\\xda\\x56\\x4a\\x34\\x09\\xd9\\x29\\xc6\\x23\\x67\\xfc\\xf1\\xfe\\x4d\\xf8\\x72\\xb6\\xcc\\xf9\\x87\\xe7\\x4f\\xbc\\x1e\\x29\\xf0\\xc8\\x79\\x02\\xf9\\x4f\\xbc\\xe2\\xc9\\x13\\x72\\xfc\\x04\\xb2\\x9e\\xf7\\x8a\\xfb\\x5e\\xf1\\xa6\\x57\\x84\\xbd\\xe2\\x65\\xaf\\x98\\xf5\\x8a\\x65\\xaf\\xc8\\x7b\\x05\\x2f\\x3e\\x10\\x15\\x23\\x92\\x2e\\xe5\\x21\\x71\\x1d\\xf6\\x8e\\x4e\\x5d\\xfe\\xf0\\x62\\x5d\\x84\\xec\\x1d\\x7e\\x45\\x68\\x2c\\x7f\\x53\\x4e\\xdc\\xa0\\x51\\x56\\x85\\x45\\x54\\x45\\x33\\x59\\x64\\x6b\\xcc\\x57\\x1c\\xf4\\x1c\\x51\\x89\\x2d\\x45\\xb1\\xd8\\x19\\x7d\\xad\\xd7\\xd0\\x09\\xfa\\xb3\\x4c\\x4c\\xba\\xdd\\x4e\\xd0\\x57\\x86\\x14\\x01\\xe8\\x96\\x62\\x24\\xb3\\x81\\x6e\\xa2\\x46\\x60\\x80\\xdf\\x6b\\xe7\\x74\\x97\\xe9\\x52\\x39\\xa7\\x7b\\xf5\\xbc\\x3d\\x89\\x3e\\x23\\xcb\\x5d\\x75\\xb3\\x91\\xc0\\xa8\\x72\\xc7\\x51\\xb0\\x68\\xa2\\x9c\\x01\\x28\\x2d\\xe8\\x66\\x40\\x95\\xba\\xc9\\xbd\\x55\\x9a\\xf8\\x25\\xa1\\x2b\\xad\\x2a\\xf3\\x96\\xd3\\x43\\x5c\\xe2\\x90\\x63\\xa5\\x5c\\x16\\x10\\x77\\x05\\xd1\\xa6\\xf7\\x50\\xae\\xed\\x2a\\x8b\\xd2\\x2c\\x5a\\xdf\\x3b\\xc3\\xc1\\x60\\x7f\\x38\\x0e\\xd9\\x9b\\xb5\\x80\\xc1\\xc7\\x8d\\xae\\x65\\xb4\\x2b\\x97\\x8b\\xd4\\x20\\x05\\xb4\\xd3\\xe1\\x3a\\x00\\x3d\\xc8\\x85\\xc7\\x28\\xcf\\x02\\x44\\xe5\\xdf\\x1c\\x1c\\x29\\x42\\xf7\\x0e\\xc9\\xf4\\x2a\\xb8\\x39\\xc0\\x1d\\x3c\\x0a\\xf7\\xf7\\xdf\\x53\\xb0\\x53\\x6a\\xf2\\x20\\xc9\\x76\\x5a\\xab\\x95\\x36\\x3d\\xa7\\x07\\xdd\\x2e\\x9e\\x2a\\x18\\xe5\\x58\\xd1\\x0f\\xdd\\x2e\\xc4\\x63\\x5c\\x61\\x4e\\xa7\\x10\\xb1\\x40\\x01\\xad\\x98\\x04\\xef\\x39\\xdb\\x5a\\xc6\\x3b\\xce\\x0d\\x6d\\x5a\\xdc\\xc8\\x0c\\x4b\\xdf\\x58\\x27\\xc1\\x4c\\x43\\x3f\\x1b\\xfb\\x09\\xe7\\xa6\\x74\\x27\\x8d\\xc5\\x29\\x0c\\x37\\x15\\x1d\\xc9\\x09\\x87\\x20\\xdc\\x4a\\xc1\\x48\\x2d\\xd8\\x3f\\xf8\\x01\\xad\\xe8\\x31\\x32\\x8e\\x71\\x50\\xa3\\x5b\\xda\\xf9\\x35\\xc4\\x54\\x51\\xc6\\x4f\\x74\\x67\\xa9\\x57\\x0a\\x4b\\x93\\xe0\\xe1\\x99\\xde\\xae\\xb2\\xc6\\x76\\x08\\x55\\x6c\\xef\\x68\\x82\\x3b\\x51\\x9f\\x43\\xae\\x11\\x9f\\xb7\\x9a\\xec\\x81\\xe6\\x1a\\x1d\\xed\\x2f\\x5a\\x30\\x1e\\x95\\x6d\\x28\\x8d\\x12\\x90\\x06\\x07\\x38\\x1c\\x0f\\x3c\\x8a\\xf2\\x8d\\xbf\\x8c\\xc0\\x4a\\xc1\\x0d\\xf5\\xc6\\xa8\\x42\\x56\\xd9\\xea\\xc0\\x41\\x23\\x72\\xbe\\xbf\\xf7\\x75\\x29\\xaf\\xa2\\xa1\\xd1\\xd5\\x9d\\xb3\\xf0\\x31\\xe3\\x30\\xba\\x64\\x91\\x0e\\x76\\x16\\xf5\\x93\\xe9\\x8b\\x34\\x5b\\xba\\x4b\\x88\\xb8\\xb0\\xf4\\xd8\\x84\\xb8\\xf3\\x6e\\xf7\\x51\\x60\\xe6\\x3b\\xd6\\x57\\x78\\x42\\xea\\xef\\x57\\xca\\x1f\\xf8\\x7b\\xb3\\x07\\x2a\\xf1\\xd0\\x68\\x8d\\x7f\\xc7\\x21\\xa1\\xf6\\x49\\x74\\x7e\\x89\\x4a\\xe2\\x84\\xa5\\x57\\xd2\\x3c\\x64\\x7f\\x70\\x4c\\xe8\\x1a\\x7e\\xe5\\xe5\\xb0\\x01\\x6c\\x69\\xb2\\x5e\\x15\\x92\\xe4\\x87\\x3f\\xf9\\x43\\x2c\\x88\\x77\\x3d\\x82\\x1d\\x8d\\x2c\\x8d\\xf0\\xf5\\x69\\x71\\x7d\\x2a\\x11\\xa9\\xff\\xe9\\x38\\xfd\\x51\\x8f\\x75\\xbf\\xf9\\x77\\xe7\\xfa\\xe4\\xfa\\xd4\\x53\\xdc\\x84\\x5b\\x59\\xf1\\xf8\\xfc\\xe4\\x03\\x3f\\xf9\\x32\\x38\\xf9\\xbe\\xff\\xe9\\x9b\\xde\\x89\\xd7\\xfb\\xb7\\x95\\x73\\xe2\\xf5\\xae\\xfb\\x3a\\xed\\x6d\\x9f\\xd2\\xef\\xca\\xa3\\x53\\xda\\xba\\x0b\\x4d\\x58\\x81\\x93\\xe2\\x1a\\xda\\x09\\x7b\\x05\\xbe\\x0e\\x8f\\xf1\\x75\\xff\\x3a\\x3c\\x26\\x84\\x28\\xe1\\xc6\\x2c\\x60\\x5b\\x50\\x5c\\xfa\\x9d\\x53\\xe5\\x8e\\x65\\x0f\\x23\\x55\\xd2\\x82\\xdf\\x79\\x23\\xed\\x8a\\x1d\\x05\\xfd\\xfd\\x23\\xe2\\x4f\\x5c\\x87\\xca\\x0d\\x8a\\xe2\\x4e\\x9b\\x56\\x73\\x32\\xc2\\x3b\\x66\\x5b\\x95\\xaf\\x24\\xb8\\x67\\x95\\xa2\\x1a\\x44\\x5f\\x08\\x46\\xdc\\x69\\xc8\\x04\\x88\\xf3\\xf0\\xb7\\xca\\x0e\\x05\\x20\\xdb\\xb5\\x13\\x38\\xc0\\x2c\\x90\\xd0\\x8d\\x90\\xbc\\x60\\x7b\\x5c\\x85\\xe6\\x0e\\xfb\\xcb\\x48\\x6f\\x9c\\x09\\xb3\\x5a\\x55\\xf9\\xf4\\xd0\\x46\\x37\\xe6\\x0f\\x67\\x93\\xfd\\x3e\\x2d\\xa3\\xa4\\xb6\\x78\\x38\\xfc\\x52\\xdb\\x3a\\xec\\x0e\\x25\\x3f\\xd8\\x07\\x0e\\xa6\\x1a\\x61\\x7f\\xc9\\x3f\\x9b\\xdd\\xdd\\x04\\x92\\x7f\\x26\\xb4\\x15\\x3e\\x02\\xe5\\xb3\\xd9\\x01\\x28\\xf9\\xe7\\x47\\xa0\\x84\\x97\\x0f\\x40\\x19\\x1e\\x84\\x32\\x24\\xe5\\x5f\\x1f\\xff\\xa2\\xf8\\x2f\\xff\\xfa\\x7a\\xf8\\x0b\\x73\\x5e\\xee\\x31\\xc3\\x1e\\x5e\\xb8\\x87\\xe6\\x51\\x43\\xb3\\x79\\x64\\x89\\x6e\\xb2\\xf8\\x61\\x78\\xd4\\x4b\\x6d\\x08\\x75\\x70\\xee\\x0e\\x4c\\x72\\x49\\xc5\\x92\\x47\\xff\\x07\\x60\\xdf\\xd6\\x60\\xb7\\xf6\\x40\\x83\\x36\\x1e\\x86\\xdc\\xbc\\xfe\\xdb\\xb0\\x67\\x3c\\x8c\\xd2\\x03\\xd4\\xeb\\x25\\x0e\\xfb\\xda\\x12\\xd6\\xe0\\x48\\x32\\x89\\xa8\\x8a\\x4a\\xfc\\x10\\x4a\\x45\\xb6\\xc1\\x78\\xe0\\xf5\\xb5\\xa6\\x32\\x84\\x73\\xdf\\xb3\\x14\\x14\\x3b\\x96\\x82\\xa1\\x52\\x3e\\x04\\xbb\\x0f\\x09\\xe3\\xbe\\xe1\\x9c\\x5d\\x27\\xd3\\xc5\\x19\\x13\\x96\\xd5\\x1c\\x58\\x1a\\x55\\xb6\\x2d\\x50\\x00\\xd1\\xaa\\x2e\\xd0\\xe4\\x11\\xc1\\xc2\\x4f\\x3f\\x1f\\xe8\\xaa\\x92\\xf0\\x85\\x60\\xfb\\xb8\\x51\\x3a\\x98\\x60\\xc3\\x9c\\x4c\\x5f\\xf0\\x38\\xd7\\x1a\\x9a\\xcf\\xf1\\x94\\x14\\x05\\x9e\\xb2\\xce\\x80\\xb8\\xcf\\x71\\x24\\x13\\x11\\xeb\\x0c\\x1f\\x1b\\x8a\\xbf\\xd2\\x79\\xbb\\x6b\\x6a\\x04\\x5a\\x5f\\x1f\\x82\\x66\\xcf\\xff\\xda\\x46\\x95\\xe7\\xf1\\xb4\\x7c\\xfc\\xc0\\xaf\\xee\\xcd\\xa9\\x13\\xc9\\xdd\\x38\\x8b\\xc2\\x50\\x24\\xce\\x8d\\x56\\x01\\x77\\x6e\\xa8\\xba\\xfe\\x9d\\x1b\\x89\\xf0\\x88\\xb5\\x73\\x53\\xd2\\x28\\xd8\\x71\\x73\\x5d\\xc9\\xb1\\x0f\\xd1\\x59\\x4d\\x9a\\x40\\xab\\xad\\x3b\\x68\\x94\\x4c\\xdf\\xa4\\xa1\\x88\\xd1\\x21\\x04\\x13\\x84\\xdc\\xdd\\x2e\\x9e\\x05\\xe3\\x57\\x78\\x0a\\x4e\\xa5\\x89\\x57\\x14\\xb3\\x00\\x14\\x5f\\x89\\x29\\x44\\xc1\\xe2\\xaf\\x2c\\x3d\\xfa\\x8e\\x83\\xa5\\x07\\x98\\x08\\x23\\xfa\\xab\\x4a\\x69\\x93\\x61\\x44\\x57\\x2a\\x6d\\xac\\x71\\x11\\xfd\\x4d\\x65\\x80\\xa9\\x2e\\xa2\\x9f\\x43\\xd9\\x9f\\xdc\\xf8\\xa7\\x3c\\x14\\x00\\xbe\\xc2\\x20\\x2d\\xac\\xf2\\x60\\x50\\xf8\\x03\\x2e\\xb6\\x1f\\x32\\xcc\\x6f\\x89\\xbf\\x6b\\x99\\xaf\\xf8\\xc7\\x20\\x79\\x51\\x58\\x9e\\xca\\xa8\\x16\\x06\\x7b\\x0b\\xa7\\x6b\\xff\\x2d\\x7f\\x5b\\xc7\\xdb\\xcc\\x85\\x1d\\xb4\\xa6\\x5e\\x36\\x75\\x9e\\xfc\\x5e\\x45\\xe7\\x7f\\x5d\\x45\\x1a\\xaf\\x5e\\xda\\x26\\xcc\\x2a\\xa7\\x32\\x70\\xd6\\x5f\\x1b\\xdb\\x7d\\x1d\\x00\\xbf\\x36\\x27\\x57\\x19\\xe0\\x05\\x40\\x9d\\x2c\\xae\\xba\\xa1\\xa7\\xf2\\xa0\\x51\\xb3\\x0f\\xce\\x34\\xfb\\x4a\\xac\\xa4\\x95\\x45\\x6d\\x4e\\xcd\\x8f\\x7e\\xaf\\x2a\\xda\\x43\\x6d\\x8c\\x7a\\xb7\\x1c\\x0b\\xd2\\x43\\xa4\\x0a\\xb5\\xaa\\xf7\\xcd\\x8d\\xab\\x50\\x52\\xb1\\x23\\x33\\x45\\xd0\\x63\\x4b\\x4f\\x43\\x39\\x2d\\x58\\xb2\\x01\\x5d\\xe8\\xe1\\x33\\x7e\\x0b\\x5c\\xd1\\xb4\\xe5\\x8e\\xc0\\xbb\\x80\\x2a\\xf3\\x80\\x29\\xbe\\x12\\x45\\x2c\\xc6\\xdc\\xeb\\x30\\xd6\\x31\\x6a\\x9b\\x26\\xaf\\xdb\\x5d\\x9e\\x9c\\xd0\\xce\\x92\\x40\\x4d\\xd4\\x1e\\xae\\x56\\x67\\x40\\x77\\xc7\\x4b\\x5b\\xcb\\x63\\x79\\xa2\\xef\\xbc\\x1b\\x34\\x3e\\xee\\x0c\\xe9\\xb2\\xd7\\x73\\x17\\xa0\\xae\\x1f\\xb8\\x91\\x52\\x7e\\x9b\\xef\\x1a\\xd4\\x07\\xf0\\x11\\x29\\xcb\\xba\\x0f\\x87\\x2c\\xda\\x0f\\x4e\\xaa\\x3d\\xeb\\xe2\\x51\\x93\\x77\\xab\\xf6\\xea\\x88\\x63\\xb6\\x36\\xf0\\xee\\x1a\\x0d\\xeb\\xa0\\xb2\\xa6\\x15\\xd2\\x80\\xc1\\x74\\xd6\\xb2\\xcf\\xa7\\xe2\\x51\\xcb\\x7e\\x3a\\xb7\\xcd\\xf7\\xb5\\xf1\\x4f\\xb5\\xf8\\x1b\\x34\\x70\\xc8\\x38\\x86\\xb8\\x2a\\x15\\x10\\xf5\\x76\\xea\\x30\\x16\\x92\\xbd\\x3d\\x16\\xd2\\x19\\x68\\xb6\\x52\\x53\\xed\\x81\\xed\\xd2\\x68\\x62\\x9d\\xdd\\x6f\\xb9\\x1d\\xcd\\x35\\xc0\\xa0\\x00\\xa1\\xad\\xbc\\xe3\\x2a\\x70\\xff\\x5e\\x54\\x75\\x85\\x7d\\x4f\\xb4\\xf5\\x46\\xbc\\x03\\x5b\\x45\\x86\\xc6\\xf6\\x36\\xa6\\x72\\x73\\x19\\x77\\x83\\x69\\xd6\\xfc\\x8a\\x05\\xae\\x38\\x39\\x71\\x49\\xc0\\xc2\\xb1\\xf0\\x70\\x60\\xea\\xb5\\x8d\\xfb\\x03\\x62\\x67\\xb0\\x80\\xc6\\x66\\x53\\x61\\x80\\xda\\xa3\\xf7\\xe1\\x01\\x16\\x81\\x39\\xc8\\xc7\\xa8\\x3a\\xc8\\xd1\\xc7\\x11\\x90\\x7e\\x9e\\x4d\\x0e\\x7f\\x0e\\x77\\x0e\\xf8\\x9d\\x4b\\x58\\x48\\x1a\\x33\\x62\\x02\\x1c\\xcf\\xbd\\xe7\\x6e\\xd4\\xf0\\xf9\\x31\\xad\\x2f\\xdb\\x83\\x44\\x62\\xb4\\x4b\\x24\\x4e\\x15\\x41\\x48\\xbf\\x68\\x76\\x94\\xbe\\x6d\\x1e\\xb8\\x6c\\x2a\\x58\\xc4\\xc1\\x69\\xdd\\xb9\\x2e\\xe1\\x7a\\x07\\x15\\x12\\x79\\x28\\xa9\\xb2\\xd0\\x1c\\xa1\\xf3\\xe0\\x91\\x21\\xb2\\xee\\xba\\xd6\\x03\\xed\\x47\\x13\\x2c\\xc8\\x36\\xec\\x1b\\xab\\x2e\\xa6\\xe3\\x07\\x4e\\x77\\xa5\\xf8\\x75\\x91\\x6e\\x17\\x2b\\x24\\x12\\x8c\\x9f\\x87\\x84\\xec\\x22\\x88\\xa6\\x20\\xe0\\x88\\x0d\\xab\\x97\\x47\\x4a\\x4a\\x64\\xf3\\x20\\x7e\\x31\\x6d\\xe0\\x11\\x26\\xd0\\xc9\\x94\\x34\\xb0\\xb0\\xba\\x22\\x9b\\x91\\x80\\x45\\xc3\\xd9\\x01\\x10\\xec\\xf4\\xfc\\xb1\\x45\\xf5\\xd5\\xf9\\x52\\x63\\x83\\x39\\x3b\\x35\\xbe\\x0a\\xb4\\x39\\xaf\\x9c\\x19\\x39\\x7f\\x84\\x74\\xbb\\xda\\x5d\\x01\\x1f\\x0f\\x3d\\x52\\x14\\xe6\\x4d\\x51\\x20\\x8a\\xfe\\x02\\x11\\x3c\\xf6\\x5c\\xde\\xed\\x26\\xd8\\xa8\\xc2\\x4d\\x9b\\x6a\\xbd\\xbc\\xd2\\xf0\\xfe\\x4d\\xc7\\x75\\xa9\\xf8\\xb5\\x7f\\x95\\x90\\x05\\x5b\\xee\\x16\\xb7\\xcc\\x0f\\x9d\\x95\\x5a\\xbd\\x17\\xc0\\x94\\x58\\x67\\x1b\\x51\\x80\\x38\\xb7\\xb8\\x0e\\x7b\\xe4\\xe8\\x94\\x5e\\x1e\\x1a\\xb4\\xc7\\x99\\x8c\\x36\\xc7\\xfb\\xc2\\xf8\\x48\\xeb\\x27\\x53\\xed\\x8a\\xa2\\x31\\xb4\\x8a\\xb1\\x07\\x4c\\x58\\x8d\\x4f\\x9b\\x05\\x3f\\xad\\xbe\\xd8\\xb1\\x54\\x90\\xdf\\x54\\x47\\x59\\x55\\xaa\\x31\\x52\\xbb\\x55\\x6a\\x16\\x92\\xec\\xe7\\x55\\xc8\\x6c\\xf3\\x7e\\xe3\\xa8\\xb0\\x3e\\xdc\\x25\\x96\\x26\\xb7\\x7f\\x94\\x4c\\x11\\x51\\x4a\\x4a\\xe8\\xc8\\x64\\x50\\x39\\xa5\\x17\\x51\\x12\\x92\\xfa\\x34\\x35\\x59\\x3b\\x2c\\x5f\\x89\\x36\\x62\\xce\\xd8\\x6a\\x84\\x90\\x03\\x4c\\x23\\x42\\x9f\\x87\\xca\\x13\\xf5\\x5a\\x64\\xab\\x34\\x06\\x81\\xc7\\x81\\x49\\xb2\\xb4\\x2b\\x61\\xe5\\x05\\xf2\\x02\\x51\\xe4\\x91\\xe8\\x03\\x5e\\xa8\\x5b\\x7c\\x2f\\x96\\x2b\\x59\\x0b\\xf8\\x05\\xf8\\x8b\\x1d\\x68\\x05\\x4d\\x0b\\xfd\\x66\\x4d\\x4d\\x78\\x42\\xdd\\x09\\x18\\x3b\\x8f\\xbe\\x08\\xad\\x08\\x73\\x0f\\x7a\\x2e\\xfb\\xdb\\x43\\xf9\\x72\\xbd\\x8c\\x7f\\x4b\\x72\\x3e\\x11\\x07\\x06\\xb5\\x7e\\xb9\\x33\\xbc\\xb3\\xf5\\x32\\xc6\\x5c\\xc5\\x6c\\x00\\xe8\\x7e\\x08\\x59\\xea\\x63\\xa4\\x0e\\x94\\x97\\x2a\\xf1\\x53\\x18\\x22\\x3a\\x20\\xf4\\x95\\x4a\\x3e\\xbf\\x15\\x09\\x88\\x75\\xfe\\x03\\x8b\\x60\\x7b\\x78\\xe5\\x1a\\xa1\\x40\\x32\\xbd\\x8c\\x53\\xbe\\x40\\x74\\x25\\xe1\\xb2\\x91\\x01\\xd9\\xaf\\x00\\xde\\xc1\\x49\\xfc\\xe3\\xa1\\x71\\xd9\\x2a\\xcb\\xd3\\xce\\xc0\\xbe\\x99\\xd0\\xbf\\x91\\x04\\xf5\\xb5\\xc2\\xfe\\xf7\\x49\\x98\\x03\\x1b\\xec\\xf9\\xb7\\x87\\x78\\xbb\\xbc\\x1f\\xe4\\x2b\\x70\\x4c\\x54\\x7a\\x74\\x11\\x68\\x03\\x5b\\x20\\x0e\\xdb\\xa1\\x1f\\xab\\x07\\xb0\\xb5\\x09\\xd3\\xbb\\x44\\x3d\\x6d\\x56\\xed\\xca\\xfa\\xa6\\x6d\\xac\\x73\\xd4\\x83\\xec\\x5a\\xbb\\x36\\xd3\\x69\\xd7\\x76\\x3c\\x6d\\xed\\xea\\x46\\xfe\\x6e\\x56\\xf2\\x2f\\x68\\x5f\\x21\\xdb\\x10\\xab\\xf5\\x38\\xc7\\x7f\\x11\\x8c\\x03\\xaf\\x96\\xdd\\x34\\xec\\xb6\\x76\\xd7\\x90\\x26\\xc4\\x14\\xd2\\x1e\\xe2\\x08\\x6c\\xf9\\xa6\\xea\\x3a\\x7e\\x85\\xf9\\xae\\x99\\xc3\\x3e\\xe5\\x3b\\xc1\\x82\\x6e\\x8f\\x80\\x4f\\xed\\xf0\\x52\\x79\\x79\\x28\\x3d\\xcd\\xfb\\x7f\\xf3\\xc0\\xde\\x57\\xb7\\xbd\\x61\\x3a\\x1f\\xa2\\xad\\xe5\\x72\\x7c\\x07\\xef\\xd5\\x46\\x7e\\x1b\\xd6\\x3a\\xd6\\x87\\x5d\\xca\\xab\\xa8\\x95\\x41\\xbc\\x09\\x85\\x83\\x2a\\x12\\xae\\x31\\xaf\\x6b\\x91\\x2d\\xa3\\x84\\xc7\\x72\\x91\\xd4\\x14\\xeb\\xf9\\x01\\x29\\x56\\x53\\xd8\\xdf\\xc8\\x9e\\x18\\xfe\\x1e\\xf8\\xee\\x23\\x74\\x4e\\x97\\xb5\\x57\\x8e\\x49\\x3f\\x99\\xbe\\x6a\\xfa\\x80\\x9a\\x4b\\x1a\\x57\\xa9\\x29\\xe2\\x39\\xa1\\x73\\xb6\\x52\\x3c\\xee\\x65\\xdf\\x60\\x3b\\x10\\xd9\\x60\\x45\\xdc\\x0d\\x57\\x4e\\x43\\x96\\x2c\\xe8\\x1f\\x25\\xe2\\x0e\\x13\\x2a\\x6c\\x45\\x66\\x59\\x19\\x6b\\x71\\x77\\xa6\\x74\\x21\\xc1\\xcc\\xc4\\x30\\xe7\\xc1\\x2c\\x4b\\x1f\\xb9\\x1e\\xfd\\x29\\x34\\x51\\x4b\\x25\\x11\\xbb\\xd6\\x67\\x0d\\x84\\xa2\\x01\\x4a\\x37\\x09\\x66\\x69\\xf6\\x2e\\x90\\x9b\\x04\\x82\\x98\\xaa\\xee\\xab\\x57\\xfb\\x23\\x5c\\xd3\\xbc\\xfb\\xd4\\xfe\\xe5\\x39\\x6a\\x0c\\xeb\\xde\\x48\\x46\\xf5\\x80\\xc1\\xe0\\x24\\x30\\x43\\x45\\x31\\xe9\\xe7\\x59\\x40\\xe7\\x6c\\xa2\\x03\\x3c\\x81\\x56\\xda\\x52\\x12\\x8a\\x9b\\x75\\x9a\\x03\\x68\\x7b\\x62\\xbf\\x09\\x8d\\xa8\\xe6\\x01\\xa7\\x6c\\x8a\\x27\\x34\\x21\\x74\\xc5\\x06\\x34\\xa3\\xcd\\xf8\\x2f\\xdd\\x2e\\xce\\xec\\xd1\\xcd\\xb4\\xc3\\xce\\x54\\x4f\\x03\\x78\\xfb\\x04\\x13\\x2d\\x4c\\x68\\x44\\x4a\\x77\\x62\\xe6\\x6f\\x56\\x77\\xbb\\x72\\x77\\xd2\\xeb\\xad\\xdc\\xe9\\x08\\xab\\xf0\\x04\\x53\\xba\\x55\\x11\\xfb\\x82\\x92\\x98\\xb0\\x92\\x8d\\x7b\\x7f\\xc6\\x94\\xb1\\x46\\xd6\\xed\\xee\\xc0\\x30\\x31\\x93\\xfa\\x00\\x18\\x94\\xb3\\x3b\\x8c\\xce\\xc2\\xe8\\xf6\\xf4\\x19\\x22\\xfa\\xbc\\x25\\x76\\x99\\x56\\x5a\\xcd\\x7c\\x24\\xd7\\x06\\x27\\x38\\x23\\xf4\\x02\\x2f\\xe5\\xaa\\xe9\\x2c\\xe5\\xa0\\xaa\\xab\\x7c\\x49\\x54\\xfc\\x2c\\x9a\\xf5\\x8f\\xc4\\x52\\x1e\\x1b\\x47\\x91\\x1a\\xf8\\xa6\\xe7\\x05\\x42\\x27\\x95\\xab\\x26\\x52\\x12\\x15\\xd3\\xd2\\xde\\xdd\\xba\\x37\\x20\\x30\\x85\\xb2\\x87\\x2a\\xd3\\x5a\\x14\\xb2\\x3e\\xe2\\x18\\xd9\\x6a\\xe9\\xd1\\x9f\\x1f\\x38\\xf4\\x1f\\x92\\x94\\xc1\\xe1\\x60\\xa3\\xdf\\xaf\\x12\\xb9\\xfd\\x41\\x50\\xfb\\x8b\\xaa\\xcb\\x5e\\x6a\\xf6\\xd6\\x2e\\x09\\xfd\\x35\\xb4\\x44\\xdb\\xf4\\xc1\\x4b\\xbf\\x16\\xee\\x9e\\x6e\\xcb\\x53\\x63\\x73\\xd4\\x10\\x25\\xed\\x62\\xa4\\x8d\\x33\\x32\\x52\\x91\\xb2\\xe8\\x8c\\x4d\\x15\\x86\\x10\\x69\\x0c\\xe1\\x6e\\x26\\x12\\xb9\\xbd\\xa3\\x7e\\x0a\\x9a\\x02\\x45\\x31\\xa0\\x4b\\x26\\x74\\x77\\x66\\x84\\x2e\\xd8\\xb6\\xa4\\x31\\x0b\\x94\\x6e\\xf9\\xbb\\xfb\\xa5\\x9f\\xc6\\x58\\x2e\\xe0\\xa0\\x2f\\x92\\xd0\\xa4\\x9b\\xb6\\x0b\\x10\\x8c\\x63\\x31\\x16\\x1e\\x6b\\x05\\xb8\\x76\\x1d\\x1b\\xd2\\xb8\\x37\\x51\\x7a\\xec\\xbd\\x15\\xd1\\x0c\\xd6\\x07\\x48\\x4d\\x4b\\x0c\\x61\\x80\\x99\\xd4\\x22\\x75\\xe5\\x5e\\x3d\\x00\\x61\\x0b\\x0e\\xda\\x51\\xd2\\x5e\\x82\\xa7\\x0f\\xde\\xaf\\xc2\\xc3\\xe0\\xe0\\x64\\x4e\\x08\\x5d\\x8c\\x03\\x0f\\x86\\xa2\\x33\\x20\\xa4\\xdc\\xc1\\xfe\\x2c\\xb4\\xa5\\xf4\\xe8\\xbb\\xd0\\xba\\x7d\\x1e\\x3a\\x53\\xfe\\x1f\\xcf\\xed\\xbd\\xd5\\xd4\\x38\\x9a\\xda\\x8d\\xec\\x3a\\x84\\x0c\\x0e\\xe9\\x4c\\x9e\\xb2\\xb3\\x7e\\x32\\xfd\\x55\\xac\\x04\\x5f\\xd3\\x05\\x5b\\xd6\\xce\\xd0\\xf2\\x63\\xdc\\xef\\x91\\xeb\\xbc\\x17\\x25\\xd7\\x79\\x0f\\xf7\\x8f\\x47\\x04\\xc4\\x73\\x79\\x6f\\x9d\\xf1\\x60\\x71\\x9d\\xf7\\xfc\\x7b\\x78\\x21\\x0b\\x1d\\x93\\xd1\\xd1\\x29\\xa1\\x31\\x5d\\xd1\\x94\\x7e\\x81\\xd3\\x67\\x7b\\x14\\x85\\x4e\\xcc\\xc1\\x40\\xa4\\xb3\\x78\\xc0\\xcd\\x99\\x69\\x5a\\x8e\\xb2\\x24\\x1d\\xda\\xe9\\xa4\\xfd\\xe4\\x53\\xb4\\x16\\xcb\\x4f\\x32\\xeb\\x53\\x20\\x71\\x16\\x80\\xfe\\xd3\\xb8\\x0d\\xed\\xb6\\xfd\\xfb\\xf6\\xa7\\x28\\xfc\\xe4\\x3d\\x01\\x77\\x68\\xd3\\x74\\xdd\\x7e\\x82\\x7a\\xad\\x65\\x0f\\x3d\\xe9\\x23\\xe2\\xce\\xd8\\x62\\x3c\\xf4\\xdc\\x94\\x2d\\xc6\\x4f\\x3d\\x17\\x2f\\xd8\\x62\\xfc\\x9d\\x47\\x46\\x38\\x66\\x1c\\x2f\\xe4\\xca\\x6a\\x6c\\x2e\\xa1\\x4e\\xc6\\xf5\\x38\\x83\\x08\\xc6\\xeb\\xf1\\x17\\x8f\\x05\\xee\\x5a\\xbb\\xd3\\xaa\\x43\\x1f\\xc6\\x38\\xa4\\xf2\\xd6\\x75\\x56\\xec\\x20\\x85\\x11\\x73\\x50\\x47\\x5f\\xb0\\x59\\x35\\x7e\\x78\\xe4\\xe0\\xf1\\xf5\\xd1\\xf5\\x9d\\xd7\\x23\\xc5\\x35\\xae\\x9e\\xb5\\x65\\x51\\x9d\\x26\\xe4\\xe8\\x94\\x1c\\x1a\\xa4\\x27\\x72\\x18\\x9e\\xc8\\x61\\x80\\x27\\xf9\\x50\\x0f\\xc7\\x93\\x76\\x3e\\x4b\\x37\\x71\\xd8\\xf6\\x45\\x3b\\x82\\xf8\\x62\\x93\\x48\\x64\\xed\\x34\\x6b\\xe3\\x85\\xb8\\xa7\\x6d\\x25\\x68\\xb0\\x87\\x68\\xa6\\x47\\xe8\\x0b\\x5b\\x80\\x16\\x34\\x8c\\x53\\xa6\\xc6\\x49\\x85\\xbd\\xdb\\x82\\x6c\\x01\\xf6\\xcc\\x65\\xd5\\x10\\x4e\\xf7\\x95\\x29\\xe8\\x8c\\x2e\\x98\\xa0\\x31\\x4d\\xe5\\xfe\\x5d\\xd3\\x1b\\x7a\\x47\\x73\\x7a\\x41\\xef\\xe9\\xa5\\xa4\\x1f\\xa3\\x09\\xfe\\x13\\xe2\\x8e\\x5e\\x30\\xae\\x8c\\x33\\x2e\\x64\\xf6\\x24\\xcd\\xf0\\x9d\\xf2\\x31\\xc0\\x77\\xbd\\x91\\xde\\x91\\x6e\\xf7\\xce\\x0e\\x04\\x02\\x71\\x40\\x2e\\x74\\x38\\x53\\xe2\\x5e\\x28\\x97\\xb5\\xa4\\x5c\\xb3\\x0b\\xc3\\xf6\\x99\\xb1\\xd6\\xa5\\x31\\xc4\\xb8\\xb0\\x79\\x41\\x01\\x1b\\xb8\\xc1\\x99\\x72\\xc6\\x10\\x4d\\xf0\\x1d\\xe3\\x8c\\xb1\\x8b\\x51\\xe0\\x5c\\x8c\\x03\\x8f\\xe6\\x8c\\x8f\\xef\\x3c\\x1a\\xb3\\x15\\x96\\x50\\x07\\x84\\x7e\\xde\\x85\\x26\\x26\\xe4\\x9e\\x7d\\x1e\\xc7\\x1e\\xd5\\x6a\\xd4\\xf0\\x9c\\x8e\\x63\\x8f\\xdd\\xd3\\x4b\\x89\\x49\\xde\\x57\\x16\\x5b\\xe9\\x81\\x8f\\xd5\\x34\\x26\\xf8\\x72\\x97\\x74\\xe6\\x7d\\xbd\\x9b\\xbb\\x5d\\xfc\\x79\\xcc\\xfb\\x51\\x08\\x2e\\x57\\x09\\xd5\\x53\\x7e\\xb5\\x51\\xc1\\xe0\\x45\\x0e\\xe3\\xd4\\xce\\x60\\x73\\x88\\xac\\xcd\\x33\\x01\\xca\\x7a\\x3c\\x8e\\xd3\\x3b\\x11\\xf6\\xdb\\xbf\\xea\\x37\\x4e\\x1b\\xf5\\x96\\x3d\\x24\\x91\\x62\\xf9\\x68\\x02\\xc5\\x01\\x90\\x5b\\xb9\\x01\\x4b\\x05\\x77\\x67\\x58\\x8f\\xff\\x67\\x39\\x2a\\x7b\\x9d\\xbe\\x53\\x9d\\xbe\\xf3\\xe8\\x5c\\x5f\\xc6\\xf7\\x06\\x5a\\x42\\xab\\xc7\\xf1\\xc0\\xeb\\x1f\\x1d\\xbd\\xfd\\xe1\\xd3\\xaf\\xcf\\xdf\\xfc\\xf4\\xfb\\xf3\\x2b\\xd6\\x19\\xd0\\x7b\\xe5\\x42\\xcb\\xba\\xda\\x5d\\x39\\x05\\xb2\\x3d\\x6b\\x66\\xcc\\x8c\\x6c\\x9b\\xf3\\xe1\\xaa\\xf9\\x70\\xef\\x99\\x84\\x59\\xae\\x9d\\xba\\xd9\\xed\\x0d\\xd3\\x75\\xbb\\x31\\x5b\\x8c\\x07\\x9e\\x1b\\xa6\\xed\\x98\\xb5\\xe2\\x86\\x89\\xec\\xdd\\x2c\\x8a\\x05\\x86\\xd0\\x78\\x36\\x64\\xc4\\xb5\\x81\\xee\\xb0\\xb8\\xdb\\x9d\\x83\\xb5\\x4b\\xdd\\x00\\x85\\xb8\\xd4\\x0b\\xe2\\x2e\\x58\\x95\\xa7\\xd8\\xd1\\x37\\x2c\\xd4\\xa8\\x89\\x7b\\x23\\x0f\\x85\\xdc\\x95\\xe7\\xc4\\x8d\\x3c\\x27\\xee\\x88\\x72\\x50\\x26\\x0f\\x88\\x40\\x3e\\x82\\x61\\x38\\x38\\x6b\\x1e\\xc8\\x64\\xcc\\x75\\x6a\\x7d\\x32\\x94\\xe9\\x65\\x14\\x86\\xb1\\x60\\x1d\\x6c\\x8a\\x16\\x85\\x2e\\x65\\x41\\x58\\x14\\x53\\xdc\\x34\\x8d\\x99\\x57\\x78\\x4d\\x0d\\x24\\x77\\xf5\\x70\\xb0\\x9b\\xfa\\x53\\xc6\\xdd\\x74\\x7c\\x0f\\x4b\\xe9\\xbe\\x24\\xe5\\x67\\x96\\x1a\\x64\\xe3\\xfd\\x57\\x09\\x84\\x3d\\x32\\x5f\\x31\\x98\\x38\\x18\\xe7\\x5a\\x8e\\xf5\\x24\\xe5\\x31\\x4b\\xef\\x9a\\x37\\xdc\\x18\\x90\\xf3\\x91\\x32\\x06\\x72\\x94\\x7d\\x8f\\x07\\x5c\\x66\\xd9\\xf8\\x6f\\xff\\x97\\x8d\\xbf\\x8c\\x42\\xd1\\x24\\xf1\\xaa\\xd6\\xa1\\x59\\x47\\x01\\x51\\xb7\\xfe\\xfb\\x41\\x2a\\xab\\x41\\xd9\\x83\\x11\\xa3\\x7d\\xfd\\x86\\x64\\x1b\\x76\\xbb\\xbc\\xc3\\x58\\xd8\\xed\\x36\\x8c\\x9e\\xb9\\x22\\xd1\\x82\\x3c\\xc7\\x21\\x58\\x36\\x81\\x7b\\x42\\x95\\xc1\\x49\\x09\\xae\\xe5\\x09\\xfd\\xe3\\xeb\\xf4\\x58\\x13\\xa5\\xb2\\xd8\\x7e\\xef\\x20\\xfc\\x50\\x43\\xa1\\xaa\\x96\\xcd\\xed\\x4a\\x2d\\x02\\x9e\\x8b\\x9c\\x6d\\x65\\x3f\\x9b\\x58\\xd9\\x8e\\x0f\\x5c\\x35\\x92\\x10\\x5c\\x60\\x2e\\x0f\\xe0\\xe6\\x7c\\x42\\x8b\\x45\\x21\\xfa\\x69\\xd2\\x74\\xd9\\x5f\\xbb\\x01\\xa7\\x31\\x9b\\x57\\x6e\\xc0\\xcf\\x62\\x70\\x05\\x3e\\x1f\\x87\\x9e\\x8d\\xc4\\x47\\xfa\\xb0\\x98\\x81\\x8b\\xf9\\x99\\x6c\\x67\\xae\\x2f\\x81\\x09\\x9b\\x2a\\x58\\xc7\\xa8\\x83\\x7a\\xdc\\x2b\\x8a\\x2a\\x3d\\x42\\x1e\\xa9\\x9c\\x21\\xf6\\x95\\xe7\\x59\\x42\\x77\\x7d\\x05\\x2b\\x30\\x5a\\x86\\xf4\\x73\\xe7\\x95\\x22\\x07\\xef\\xd7\\x28\\xd2\\x8e\\x79\\xba\\xf1\\xd7\\xa0\\xb7\\x87\\x09\\x5b\\x12\\x10\\xb0\\x11\\x93\\x5b\\x2a\\xd8\\x25\\x12\\x4b\\x83\\xa5\\xfd\\xa9\\x51\\xea\\x47\\xd1\\xaf\\x7f\\x0c\\x06\\xf5\\xd4\\x7d\\xb4\\xe7\\x6e\\x9f\\x93\\x43\\x0f\\xf0\\x17\\x74\\x40\\x0a\\xb2\\x9d\\x58\\xa3\\x13\\x54\\x53\\xf2\\xc7\\x4c\\x24\\x1e\\x7b\\xe4\\x5d\\x51\\xc8\\xcb\\xf4\\xe1\\xf7\\xaa\\xbf\\x76\\x27\\x42\\xaa\\x7b\\xe1\\x4c\\xb5\\x92\\xe7\\x7f\\xff\\xff\\xe9\\x68\\xb0\\xd3\\xd1\\x11\\xb2\\x7a\\x36\\x42\\x3b\\x5d\\x19\\xa1\\x83\\xb0\\xb7\\x0c\\xf0\\x81\\x06\\xfe\\x83\\x21\\xa2\\xec\\xbd\\x52\\x7f\\xd2\\x90\\x57\\x37\\xd1\\x35\\x8e\\x9b\\x0c\\xbc\\xda\\xaa\\x92\\x94\\x5e\\x49\\xe8\\xd1\\xe3\\x4c\\x82\\x2c\\xdd\\xac\\xbf\\xc6\\x2d\\x08\\x2c\\xdb\\xf8\\xc7\\x79\\x07\\x6a\\x6c\\xbe\\xce\\x3f\\xd8\\x97\\x05\\x2c\\x2d\\x51\\xfb\\x02\\x57\\xac\\x2a\\xe3\\x70\\xad\\xdb\\xad\\x1e\\x21\\x68\\x76\\x9c\\xd3\\x05\\x9b\\x74\\xbb\\x93\\x7e\\xd5\\x25\\xed\\xbe\\xdc\\x90\\xdd\\x81\\x4d\\x52\\x07\\xc4\\x8d\\xbb\\x5d\\x1c\\xdb\\xbb\\x3c\\xd6\\xec\\x82\\x85\\xa1\\xc7\\x9f\\x9d\\x9d\\xca\\xbf\\x86\\x28\\x5f\\xd8\\x44\\xb9\\x6b\\x68\\xf2\\x85\\xac\\x4b\\xd9\\xab\\x4e\\x25\\xf6\\xbd\\xac\\x61\\x74\\x63\\xb6\\xd4\\x77\\x19\\x37\\xdb\\x1b\\x2c\\x6b\\xeb\\xf1\\x23\\x93\\xbe\\x3a\\x01\\x59\\x2b\\xa6\\x13\\x16\\x35\\x5e\\xd2\\x09\\xa1\\x76\\xfa\\x3c\\x97\\x20\\x8f\\x9b\\x59\\x1e\\x9b\\x10\\x1a\\xf4\\x8d\\x6f\\x1b\\x5c\\xf1\\x7f\\x93\\x69\\x2d\\x1a\\xb7\\x9d\\x19\\x4c\\x88\\xbb\\xc0\\x31\\x71\\xe3\\x8a\\xac\\x07\\xf1\\x58\\x93\\x41\\x00\\x6f\\xe5\\xc1\\x95\\x10\\x57\\x60\\x6d\\xca\\xfd\\xc0\\x48\\xd2\\x87\\x46\\x12\\x54\\x49\\x63\\x9a\\xb0\\xa5\\xcd\\xec\\x49\\xd9\\x04\\x73\\xba\\x04\\x1e\\x74\\x9a\\x60\\xbd\\xe2\\x94\\xc8\\xed\\x9d\\xe2\\xac\\x20\\x40\\x05\\xb0\\x3a\\xaf\\xb8\\x90\\xeb\\x75\\x67\\x9d\\x3e\\x7e\\xef\\x7c\\x85\\x37\\xa5\\x6c\\x8f\\x55\\x3c\\x73\\x1d\\xd0\\x3c\\x99\\x9e\\x98\\x16\\x90\\x44\\x61\\x57\\x9b\\x35\\x0e\\xfb\\x51\\x08\\x71\\xd9\\x95\\x66\\x0a\\x00\\xe3\\x0b\\xf6\\xae\\xc1\\x8e\\x28\\x09\\x0d\\x00\\x40\\x6b\\x7b\\x1c\\xd0\\x1e\\xa9\\x98\\x0f\\x8a\\xe6\\x3c\\x1e\\x41\\x7c\\x9d\\xbc\\xc7\\x73\\x43\\x77\\x92\\x91\\xca\\x99\\x66\\xe9\\x66\\x55\\x13\\x9e\\xc7\\x84\\x8c\\xae\\xf3\\xde\\x24\\xcd\\x64\\xb2\\xa2\\xb7\\xe0\\xef\\x75\\xe8\\x1d\\x83\\x51\\x80\\xf6\\x9f\\xb1\\xf3\\xa6\\x49\\x85\\x35\\xf2\\xaf\\x41\\xd5\\xd4\\xa2\\x7a\\x55\\xdb\\x3b\\x44\\x2f\\x40\\x75\\x74\\x4a\\x5b\\x82\\x6d\\x1b\\x4a\\x00\\xce\\x4d\\x79\\x80\\x81\\x52\\x5f\\xf6\\x63\\xa4\\x9c\\x4f\\x22\\x5a\\xcb\\x47\\xbd\\x9d\\x7b\\xdf\\xd2\\xb6\\xa9\\xd4\\x73\\xb4\\x2a\\xce\\xee\\x99\\xab\\xf8\\x71\\xe0\\x8e\\x6a\\x2e\\x89\\xb1\\x25\\x13\\x74\\xe1\\xce\\x60\\xa1\\xfb\\xe9\\x26\\x09\\x59\\xa5\\x49\\xe2\\xce\\xfa\\x51\\x12\\xad\\xd9\\x6e\\x15\\x4b\\xc6\\xdd\\x05\\x0b\\x4b\\x77\\xd6\\xe7\\x61\\xf8\\x13\\xe8\\x00\\x31\\xfb\\x46\\x9d\\x4b\\x62\\xa2\\x33\\x70\\x97\\xb6\\xc0\\x9c\\x41\\xe4\\x6c\\xf0\\xf3\\x1e\\x10\\xba\\xa8\\x2e\\xd4\\x6e\\x77\\x51\\x19\\x98\\x13\\x59\\xa7\\x4a\\xec\\x56\\xcb\\x35\\x2e\\x23\\x89\\x90\\x95\\xce\\xe9\\x76\\xb1\\xa6\\xb7\\xe6\\x63\\xee\\xd1\\x66\\x73\\x5c\\xdb\\xfe\\x2a\\x19\\xfd\\x6f\\xc9\\x22\\x49\\xef\\x92\\xea\\x53\\xdd\\xd2\\xde\\xab\\x46\\x3f\\x02\\x86\\x46\\x92\\x46\\x92\\xc4\\x7a\\x0f\\xb5\\x47\\xc8\\x5d\\x68\\xf8\\x5d\\x50\\x2c\\x87\\xbb\\x60\\x21\\x13\\x3a\\x77\\xa1\\x54\\xf8\\x91\\xf1\\x4b\\x0a\\x72\\x1d\\xd9\\x52\\x05\\x75\\x53\\x5f\\x5d\\x5f\\x80\\xf3\\xbd\\x58\\x1b\\xa4\\x94\\xc8\\x17\\xec\\xe8\\x43\\xe2\\xfc\\xc3\\xa0\\xdf\\x80\\x16\\xc2\\x2e\\xdf\\x2d\\x52\\x71\\x80\\xab\\xf3\\x7f\\x6e\\xd9\\x9e\\x1e\\x52\\xa7\\x53\\x96\\x3b\\xb6\\xdf\\x7d\\xe5\\xdd\\xbf\\x1a\\xba\\x11\\xbe\\xb5\\x26\\xef\\xb6\\x9a\\x3c\\x1a\\xc0\\x30\\x70\\xa3\\xe0\\xdc\\xed\\xae\\x0f\\x0d\\x07\\x71\\x2e\\x61\\xea\\xd6\\x23\\x55\\x1e\\x21\\xe5\\x67\\xec\\xd0\\x2c\\x95\\xb5\\x0a\\xa1\\x8e\\x35\\xf0\\x15\\x1d\\xc2\\xc3\\x90\\xb9\\xbb\\x11\\x18\\x54\\xcb\\xda\\x9f\\x76\\x35\\x32\\x4b\\x7b\\x8f\\x08\\xf7\\x91\\xd1\\x49\\xc4\\x5d\\xfb\\x0b\\x6f\\x46\\x2b\\x70\\x13\\x1c\\xf4\\x27\\x00\\xac\\x72\\x13\\x8b\\xc8\\x8e\\x17\\x24\\x33\\x0c\\xac\\x75\\xa1\\x39\\xe1\\x81\\xd6\\xef\\x84\\x80\\x10\\x87\\x34\\x5d\\x22\\x8e\\x05\\x6d\\x34\\x53\\x14\\x58\\xb0\\xdf\\x9b\\x4d\\xd3\\xb0\\x56\\x45\\x91\\xb4\\xc6\\xdf\\x1d\\x34\\xe8\\x13\\xf8\\xad\\xf9\\x8b\\x3d\\x50\\xa7\\xba\\x44\\x92\\x2b\\x05\\xd5\\xbd\\x31\\xe6\\x3b\\xa3\\xbb\\x80\\x88\\xd4\\x4d\\xa5\\x3f\\xd3\\xf6\\x16\\x21\\x67\\xec\\x95\\x34\\x60\\x63\\x84\\x3c\\x1a\\xd2\\x19\\xbd\\xa1\\xb7\\x34\\x77\\x6f\\xd8\\xd4\\xd6\\xd3\\x71\\x6f\\xd9\\x06\\x0b\\x70\\x3a\\xae\\x3c\\x20\\xb1\\x78\\x74\\xe3\\xe3\\x5b\\xe2\\xdc\\x02\\x37\\xe9\\xdc\\xbd\\x67\\xdb\\xd2\\xcd\\x59\\x67\\x08\\xef\\x2f\\xe9\\x95\\x8a\\x9f\\x1f\\x4d\\xf0\\xba\\xdb\\x7d\\x81\\x6f\\x08\\xd9\\xe6\\x66\\xfa\\xc6\\x1e\\xd1\\x3c\\x87\\x81\\x3b\\x3b\\xbb\\xa9\\xd8\\x44\\xbd\\x1e\\xb9\\x1f\\x2f\\x3c\\x76\\x33\\x9e\\x79\\x34\\x87\\xeb\\x6b\\x8d\\x05\\xbd\\x27\\x54\\xe6\\xe8\\xfb\\xbb\\xaa\\xe5\\x46\\x55\\x72\\xce\\x06\\xee\\x05\\xfb\\xa2\\x2b\\xa1\\xe7\\x67\\x17\\xee\\x79\\xaf\\x47\\xb6\\x50\\xd3\\xed\\x38\\x1e\\xdd\\x8f\\x63\\x8f\\xb5\\xbe\\x8c\\xcf\\x3d\\xe7\\xdc\\x73\\x43\\xb6\\x84\\x2a\\xe5\\x2d\\x0e\\xbc\\x3c\\x3c\\x63\\xe0\\x85\\x96\\xa8\\x5f\\x36\\xf6\\x68\\x50\\x51\\x2f\\xe9\\x28\\x64\\xb9\\x59\\xce\\xeb\\x91\\x82\\xc6\\x49\\xe0\\x87\\x74\\xd8\\xca\\xc1\\xeb\\x11\\x0e\\xe5\\x71\\x1e\\x02\\xe0\\x34\\x64\\xb2\\x0c\\xb8\\xfa\\x54\\x85\\x89\\x13\\xb2\\x1b\\xc6\\x98\\xfa\\x86\\xe6\\x2c\\x2f\\x8a\\x90\\xb8\\x97\\x6c\\x0e\\x19\\xee\\x25\\xbb\\x64\\x5a\\xec\\x7f\\x69\\x28\\xa0\\x6d\\x14\\x3a\\x55\\x63\\xf1\\x48\\x81\\x4e\\x63\\xee\\x8b\\xd8\\xb9\\xac\\x7c\\x2f\\x3b\\x61\\x49\\xca\\xb4\\x28\\x70\\x56\\x14\\x37\\xc6\\x9b\\x00\\x97\\xf3\\x58\\x69\\xbf\\xc8\\x8a\\x10\\xd2\\x5f\\x22\\x54\\x7f\\xda\\xc9\\x4b\\xe2\\xe4\\x45\\x71\\xa0\\xf8\\xe8\\x60\\xf9\\x41\\x49\\x88\\x7b\\xaf\\x79\\x45\\x5f\\x58\\x15\\x73\\xea\\xfe\\xec\\x8b\\x7b\\x2f\\x87\\x3b\\x64\\xc1\\xf8\\xde\\x73\\xd5\\x20\\x82\\xb7\\x19\\x13\\x78\\x82\\xdd\\x93\\x1b\\xb6\\x35\\xa4\\xc1\\xf3\\x3e\\x78\\x3a\\xc3\\x44\\x6b\\x70\\x43\\x5b\\x88\\x86\\x44\\xb7\\x3a\\xeb\\xc3\\x6f\\x49\\x6f\\xd9\\xf8\\xc6\\xa3\\x77\\x6a\\x44\\x6e\\x09\\x9d\\x18\\x1a\\xe0\\xa6\\xe2\\x3a\\x55\\xac\\xbd\\x5b\\x76\\x37\\xbe\\xf7\\xe8\\x0d\\xbb\\x1d\\x0f\\x3c\\x7a\\xa3\\xaa\\xe8\\xb0\\x90\\x54\\x65\\x9b\\xad\\xb5\\x74\\x11\\x06\\x33\\x21\\x07\\xce\\x3d\\xd7\\x7d\\xbb\\x60\\x33\\xd3\\x37\\xb3\\x94\\xc0\\x39\\xe8\\x6c\\x7c\\xee\\xd1\\x9c\\xdd\\x8e\\xcf\\x7b\\x43\\x8f\\x6c\\x2f\\x59\\x5e\\xd1\\xad\\xd1\\x04\\xe7\\xa6\\x49\\x16\\xaa\\x27\\x72\\xa9\\xc4\\x0a\\xb9\\x69\\x48\\x67\\xab\\xc2\\x51\\x08\\x25\\xa3\\x90\\x5c\\xc2\\x81\\x28\\x73\\x54\\x5a\\xbe\\xbf\\x94\\xd8\\x9a\\x19\\x7a\\x28\\x68\\x12\\xe4\\x72\\xef\\x60\\xcf\\xeb\\xd3\\xcd\\x2a\\xa7\\xb6\\x8a\\xac\\x51\\xdf\\x08\\xd9\\xe8\\x8a\\x65\\x0e\\xbe\\x62\\x9f\\xcd\\xf8\\x93\\xbe\\x92\\x54\\x45\\xa1\\x99\\x8a\\xba\\x52\\xab\\x26\\xd5\\x0d\\x03\\x3e\\xbd\\xd5\\x2b\\xd4\\x4c\\xe7\\x95\\x9e\\x36\\x5d\\x80\\x46\\xa1\\x03\\x18\\x67\\xbd\\x48\\xab\\xaa\\x4a\\x42\\x2f\\x47\\x97\\xda\\x55\\xce\\x15\\x71\\xac\\xb9\\x51\\x13\\x7b\\x45\\xe8\\x25\\xbb\\x52\\x9b\\xba\\xd7\\x73\\x6f\\x4d\\xe4\\x8f\\x73\\x97\\xdc\\xaa\\x48\\x86\\xd5\\x17\\x95\\x63\\x1c\\xf0\\x40\\x6a\\x96\\xda\\xb3\\x7b\\x97\\xdc\\xa9\\x92\\x72\\x08\\xf7\\x0a\\x83\\x7a\\xe3\\xcc\\xec\\xfa\\x1b\\x2d\\x01\\x08\\x09\\x79\\x50\\xe6\\xa1\\x2e\\xc4\\xbc\\x29\\xf4\\x50\\x1d\\xfa\\xd4\\xc6\\x3c\\x6f\\x7f\\x82\\x6e\\x7f\\x22\\x23\\xf9\\xbe\\x8d\\x3f\\x2d\\xc4\\xfd\\x27\\x4a\\x46\\x9f\\xe0\\x74\\xde\\x93\\x8c\\xb4\\x71\\x2d\\x19\\x11\\x9f\\x57\\xd9\\x27\\x32\\x6a\\x08\\x47\\x6e\\x34\\xe7\\xdf\\x08\\x7e\\x66\\xe0\\x1c\\x65\\x06\\x61\\x1e\\x16\\x6c\\x06\\xb1\\x37\\x67\\xe3\\x7f\\x7a\\x34\\x66\\xb3\\xf1\\x3f\\x3c\\xba\\x84\\x32\\xda\\x53\\x0a\\x4d\\xf4\\x17\\x23\\xf9\\x81\\xb3\\x20\\x74\\x03\\x19\\xff\\xeb\\x11\\xba\\x66\\xb3\\xf1\\xbf\\xbc\\x91\\x4c\\xfe\\xcb\\x23\\xe0\\x33\\x91\\xde\\xb1\\xf1\\xb8\\x9a\\xc7\\x49\\xb5\\xe9\\x4b\\xcf\\x03\\x16\\x2a\\xc7\\x19\\xc1\\x82\\xd0\\x6c\\x4f\\x99\\x45\\x7b\\x41\\xaf\\xde\\x60\\x88\\x1f\\x0a\\xd4\\x25\\x42\\xf2\\xf1\\xc1\\x4b\\xf0\\x90\\x0e\\x06\\x5c\\x44\\x34\\xa8\\xee\\x17\\x0a\\xc7\\xe9\\x8c\\x46\\x74\\x4e\\x97\\xf4\\x86\\x66\\xea\\x22\\xd9\\x46\\xf2\\xa2\\x5c\\xea\\x5d\\x9a\\x31\\x33\\xe7\\xee\\xf2\\x2c\\x73\\x97\\xf2\\x04\\xe2\\xec\\x6e\\xbc\\xf4\\xdc\\x39\\x53\\x0c\\xf4\\x1b\\x56\\x85\\xd7\\x9b\\x9f\\xb5\\x6e\\xdc\\xb9\\xda\\xc9\\x70\\xdc\\xcf\\xab\\xc5\\x41\\xec\\xbd\\x46\\xb6\\x33\\x36\\xd3\\xd1\\xa7\\x62\\x08\\xb7\\x16\\x7b\\x6c\\xa6\\x54\\x71\\xab\\x30\\xc2\\x39\\x1b\\xb8\\x79\\x1d\\x74\\x2f\\x97\\x4d\\x83\\x1f\\x9b\\x85\\xc7\\x82\\x71\\xee\\x51\\x73\\x01\\xcc\\x88\\x8a\\x41\\xaf\\xb6\\xa2\\x7a\\x3d\\xf3\\x5c\\x1d\\x8a\\x33\\x81\\x52\\x92\\x1e\\x33\\x87\\xd8\\x8c\\x4d\\x54\\xdb\\x74\\xc6\\x18\\x1a\\x21\\x12\\xb1\\xda\\x25\\xb9\\xcc\\x92\\x39\\x70\\x56\\x99\\x4c\\x05\\xd4\\xdf\\x00\\x68\\x1b\\x31\\xd5\\xae\\x0e\\x8f\\xbf\\x03\\x1b\\xb5\\x3a\\x4d\\xab\\xa2\\xd3\\x1d\\xfc\\x22\\x52\\x36\\x21\\xd3\\x0a\\x4b\\x8b\\x6a\\x01\\x6e\\x04\\x96\\x64\\xb0\\x60\\x2b\\xf6\\xa4\\x5c\\xab\\x03\\x8f\\x6e\\x98\\xcc\\x96\\x84\\x73\\xbf\\x0a\\x23\\x70\\x03\\x6a\\x15\\x7a\\x93\\xd1\\x8c\\x75\\x86\\x74\\x4d\\x3f\\xb3\\xbb\\xca\\x9e\\x5a\\x7b\\x1c\\xac\\xf1\\x22\\x42\\x9f\\x3f\\xf0\\x1a\\x48\\x4e\\x59\\xe0\\xb6\\x3e\\xe3\\x68\\x6b\\xc6\\x06\\xf4\\x1c\\x62\\x2f\\x1b\\xce\\x02\\xfd\\x81\\x9d\\x57\\x18\\xc7\\xd9\\x0f\\x80\\x75\\x44\\x13\\x7c\\x3e\\x9e\\x79\\xc6\\x8a\\x07\\x21\\xb2\\x5d\\xb3\\x8c\\x9d\\xf7\\xc5\\x0d\\x9e\\x99\\xc1\\x8a\\x81\\x28\\xc3\\x1b\\x9a\\xd1\\x5b\\x58\\x13\\x69\\xb7\\x8b\\x27\\x95\\xba\\x6b\\x51\\x4c\\x40\\x3e\\xab\\x52\\xda\\x15\\xe0\\x55\\x83\\x8e\\xda\\x3c\\xac\\xd6\\x6a\\xd7\\xc3\\xeb\\xa8\\x47\\xa4\\x76\\x2b\\xea\\x6e\\x76\\x34\\x42\\xaf\\x88\\xcc\\xb2\\xd4\\x38\\xcd\\x35\\x7e\\x25\\xf7\\xe0\\x57\\x74\\x5e\\xaf\\xf0\\x66\\x47\\xe7\\xf5\\x66\\xb4\\x00\\xa2\\x65\\x43\\x9c\\x74\\xb4\\x34\\x8f\\x73\\xf5\\x40\\x63\\x2d\\xa9\\x08\\xc5\\xa3\\x3a\\x89\\x4a\\x6a\\xbf\\xad\\xa8\\x53\\xb0\\xca\\xa9\\xa9\\xca\\x87\\x48\\xee\\xc7\\x35\\x44\\x8d\\x02\\xf2\\x25\\x16\\x06\\x6d\\xaf\\x24\\x10\\x5a\\xe9\\x90\\x40\\x2c\\xa1\\x69\\x51\\x88\\xa6\\x2e\\x67\\xcb\\xbc\\xaf\\x42\\x86\\xda\\xa2\\x02\\x23\\xca\\xb0\\x0d\\x85\\xe9\\x92\\xcd\\x0d\\xf3\\x49\\x9d\\x0b\\x4d\\xdb\\x8c\\x79\\x6d\\x52\\xfc\\x60\\x29\\x08\\xb6\\x5e\\x13\\xf6\\xa3\\x70\\x9f\\x1c\\x1b\\x12\\x67\\xc9\\x02\\x77\\x3a\\xaa\\x75\\x53\\x77\\x58\\x2d\\x3b\\x3d\\xe1\\xc4\\xe5\\x1d\\xa0\\xe5\\x97\\x0d\\x42\\x5d\\x52\\xbf\\xcb\\x9a\\x1d\\x00\\xd8\\xbf\\x63\\x67\\x98\\x31\\x7b\\xdc\\xb2\\x7a\\xa7\\x52\\x51\\xdb\\xbf\\xc1\\xb4\\x0b\\xb1\\xe7\\x3c\\xa1\\xc1\\x3e\\x72\\xf1\\x94\\xb3\\x37\\xfd\\xf9\\x2f\\x1b\\x91\\xdd\\x93\\x11\\xbe\\x63\\x53\\x4e\\xd7\\x78\\xca\\xfb\\x93\\x84\\x6a\\xe5\\xc6\\x0b\\xae\\xd8\\x88\\x36\\x0b\\xe5\\x82\\xdb\\x9c\\xc2\\x2a\\x8e\\xc6\\x05\\xef\\x9b\\xe7\\x9d\\x20\\x1d\\xf0\\xc6\\xca\\x28\\x09\\x0d\\x7d\\xb9\\xc6\\x95\\x57\\xbc\\xce\\x40\\xa5\\xc5\\x72\\xb5\\xbe\\x47\\x84\\xb6\\x64\\x42\\xde\\x4c\\x88\\x10\\xe7\\x8e\\xfd\\xea\\xbe\\xac\\xc4\\x0d\\xec\\xce\\x6d\\xf0\\x98\\xd7\\x98\\xd3\\xad\\x9f\\xa6\\xeb\\x7c\\x9d\\xf1\\x95\\xf3\\xd9\\xa7\\x41\\xba\\xba\\x77\\x7e\\xa7\\xe2\\xf3\\x5a\\x24\\xa1\\xb3\\xa6\\xe2\\x66\\xc3\\xe3\\xdc\\x89\\x78\\xc5\\xa4\\xbf\\xa3\\x93\\x34\\x7b\\xce\\x83\\x99\\x93\\xd4\\xc0\\xdf\\xfb\\x34\\x49\\xd3\\x95\\x73\\xa3\\x5c\\xde\\x1f\\x71\\xba\\x4e\\xff\\x93\\xa7\\x89\\x33\\xe3\\x74\\x92\\xa5\\x4b\\x78\\xde\\xf8\\x54\\x29\\x03\\xac\\xef\\x9d\\x1b\\x4e\\xa3\\xfc\\xb7\\xca\\xf3\\xd5\\x25\\x8d\\xf2\\x2b\\xfd\\x7c\\x41\\xa3\\x5c\\x47\\x91\\x79\\x4e\\xa3\\xfc\\x85\\x86\\xd7\\x79\\x49\\xa3\\x5c\\x39\\x95\\x71\\x5e\\xd3\\x28\\x57\\x66\\x55\\xce\\x7f\\x65\\x45\\xc6\\x85\\x7c\\x1a\\xd0\\x28\\x3f\\xcf\\x32\\x7e\\xef\\xbc\\xa0\\xb7\\x22\\x03\\x1f\\x78\\xab\\x50\\x56\\xce\\xd7\\xc2\\xc9\\x38\\x8d\\xd3\\x3b\\x91\\x05\\x3c\\x17\\xce\\x2b\\xba\\x59\\xad\\xf4\\x73\\xca\\x69\\xc0\\xe3\\xd8\\xe7\\xc1\\x22\\x77\\xb6\\xa0\\x2f\\x24\\x32\\x67\\x50\\xd2\\x24\\xbd\\x4c\\x93\\x49\\x2c\\xe7\\x3f\\x0e\\x4a\\xe2\\x9e\\x73\\xb6\\x0e\\xf0\\x1b\\xe2\\xae\\xb3\\xfb\\xed\\x39\\xa8\\x70\\xbe\\x56\\x0a\\x4c\\x96\\x43\\x9c\\x46\\x3e\\x1d\\x7b\\xa4\\xaf\\x7d\\xd3\\x64\\xb8\\xd6\\x77\\x9a\\x84\\xa4\\x54\\x05\\x11\\x1d\\xd7\\xc5\\x3d\\x6a\\xb9\\xb2\\xd9\\xf1\\x46\\x68\\xd5\\x52\\xf1\\x2c\\xff\\xe3\\x93\\x7e\\x18\\x65\\x02\\x7c\\xee\\xe0\\x2d\\x77\\xb2\\x90\\xb6\\x20\\x8c\\x8c\\x13\\x05\\x55\\xec\\x18\\xf9\\x2c\\x0f\\x4d\\x27\\x0f\\x69\\x1e\\x64\\xd1\\x6a\\xed\\x70\\x13\\xd0\\xc6\\x09\\x04\\x85\\xf8\\x26\\x8e\\x10\\x3a\\xe6\\x8c\\x13\\x0a\\xaa\\x94\\x8b\\x9d\\xab\\x90\\xee\\xaa\\x19\\x3b\\x2f\\x4c\\x9e\\xd1\\x89\\x76\\x9e\\xcb\\x1c\\xe5\\x0a\\xfb\\x87\\xea\\xf1\\xf9\\xad\\x48\\x9c\\x57\\x55\\xf2\\xa7\\x30\\x74\\x5e\\x42\\x2a\\x5f\\x39\\xaf\\x55\\x76\\xca\\x17\\xce\\x7f\\xe0\\xb1\\xde\\x1e\\x3f\\xca\\xf4\\x0b\\x09\\xec\\x5a\\x3e\\xbd\\x8c\\x42\\xe1\\xfc\\x26\\x9f\\x5e\\x4d\\x9c\\xb7\\xf0\\xab\\x74\\xd9\\x9c\\x9f\\x54\\x22\\x5a\\x3b\\x3f\\xcb\\xa7\\xb7\\x69\\x22\\x61\\xe2\\x7e\\x2c\\x9c\\x5f\\x64\\xc6\\xcf\\xa0\\x0f\\x15\\x7d\\x11\\xce\\xaf\\x32\\xa9\\x74\\x12\\x9c\\x77\\xf2\\xf9\\xdd\\x2c\\xbd\\x73\\xde\\xc3\\x93\\x32\\xa4\\x7c\\x03\\xcf\\x30\\x0a\\xbf\\xc3\\x23\\x08\\x93\\x9c\\x3f\\xea\\xe7\\x3f\\x66\\x22\\x71\\xfe\\xac\\xd3\\xc6\\xad\\xf4\\x7f\\x65\\x96\\xbe\\xcd\\x1d\\x5f\\x8e\\x9b\\xc4\\x1a\\x9c\\x23\\x99\\xfd\\xbe\\x16\\x14\\x7d\\x90\\x69\\x60\\x74\\x3a\\xf7\\xf2\\xf1\\x75\\x94\\xaf\\x9d\\x73\\xe8\\x3a\\xa0\\x8c\\xce\\x97\\xb0\\x8a\\x1e\\xe4\\xcc\\x03\\x5a\\xdf\\xaa\\x2a\\xa5\\xb8\\xb7\\x97\\x61\\x69\\x4f\\xf7\\xaa\\x31\\xf9\\x8b\\x80\\xb8\\x2d\\x6b\\x95\\x6c\\x1b\\x82\\x20\\xe7\\x32\\xa0\\xb5\\xcb\\x63\\xe7\\x95\\x4f\\x2b\\xf1\\x8f\\x73\\x13\\x52\\x63\\x39\\xea\\x3c\\x0f\\xe8\\x11\\x28\\x4c\\xbe\\xe0\\x72\\x67\\xdf\\x3b\\x2f\\x64\\x46\\x3d\\x3d\\xff\\x09\\xe8\\x91\\x89\\xdc\\xe0\\xfc\\x18\\xd0\\x3d\\xcb\\x4c\\xe7\\x75\\x40\\x8f\\x26\\x51\\x2c\\x77\\xd0\\x07\\x9f\\xda\\xf7\\xa6\\xf3\\x26\\xa0\\x20\\xbf\\x72\\xfc\\x50\\x3d\\x5c\\xf0\\x60\\x21\\x0f\\x9a\\x20\\xa4\\xb0\\x33\\x00\\xb6\\xb7\\x81\\x4c\\x4c\\x9d\\x9f\\x02\\xaa\\x6e\\x7f\\xe7\\x5d\\x40\\x95\\xb0\\xc1\\xf9\\xdd\\x3c\\xfd\\xcc\\x33\\xbe\\xcc\\x9d\\x3f\\x20\\xad\\xdd\\x32\\x3b\\x7f\\x06\\xf4\\xe8\\xc6\\x79\\x1f\\x50\\xa3\\x3a\\xee\\xfc\\x37\\xa0\\x4d\\x09\\x84\\xf3\\x83\\xcc\\x51\\xee\\x44\\x9c\\x69\\x48\\xb5\\xe7\\x67\\xe7\\x43\\x50\\x92\\xd2\\x23\\x25\\xc1\\x2f\\x39\\x71\\xef\\xf0\\x7b\\xa2\\x22\\x65\\xd9\\x68\\x7b\\x16\\xe0\\xf7\\xf4\\xb3\\x0f\\xb8\\x20\\x56\\xdf\\x51\\x33\\x16\\xc4\\xd5\\xc1\\xe3\\xcc\\x59\\x8b\\xab\\x37\\x9a\\xcd\\x35\\x13\\x3c\\x44\\xc4\\x10\\x7e\\x4f\\xce\\x60\\xd3\\xb5\\x41\\x96\\xa1\\x44\\x19\\x41\\x9e\\xa3\\x67\\xff\\x0e\\x66\\xb2\\xcb\\xeb\\x36\\xfa\\xed\\xfd\\x8b\\x93\\x7f\\x21\\x77\\x9c\\x4c\\xaf\\xaf\\x1d\\x50\\xa6\\xf7\\xe8\\xd8\\xe8\\xd5\\x7b\\x74\\x2c\\xef\\xda\\x13\\x2b\\xfd\\xd9\\x4a\\xf4\\xcd\\x23\\xed\\xd7\\xd9\\x5b\\xed\\xc9\\xd4\\x49\\xd2\\x44\\xb8\\x25\\xd4\\x2b\\x4f\\x85\\x2a\\xdf\\x8f\\xd3\\x60\\xe1\\x96\\x67\\xa7\\x00\\xda\\xb3\\x27\\xc4\\x6d\\xfd\\x7f\\x01\\x00\\x00\\xff\\xff\\xee\\x90\\xcb\\x9f\\xe2\\x5a\\x01\\x00\"\n\nfunc assetsClientStaticJsAngularJsBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticJsAngularJs,\n\t\t\"assets/client/static/js/angular.js\",\n\t)\n}\n\nfunc assetsClientStaticJsAngularJs() (*asset, error) {\n\tbytes, err := assetsClientStaticJsAngularJsBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/js/angular.js\", size: 88802, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticJsBase64Js = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xec\\x58\\xdf\\x73\\xe2\\xba\\x15\\x7e\\xd7\\x5f\\x71\\xca\\x43\\xc6\\xdc\\x78\\x49\\xf8\\x71\\x73\\xb3\\x61\\x61\\xc6\\x01\\x13\\xdc\\x4b\\x6c\\x6a\\xcc\\xe6\\xa6\\xdd\\xce\\x8e\\xb1\\x05\\x68\\x6b\\x2c\\x6a\\xcb\\xcb\\xa6\\xf7\\xe6\\x7f\\xef\\x48\\xb2\\xb1\\xc1\\x90\\xb0\\xdd\\xf4\\xa1\\x33\\xcd\\x4b\\x40\\x3a\\xe7\\x3b\\xdf\\x39\\x47\\xfa\\x24\\x71\\xf1\\x13\\xea\\xd1\\xf5\\x53\\x44\\x16\\x4b\\x06\\x8a\\x57\\x85\\xc6\\xe5\\xe5\\x35\\x0c\\x22\\xec\\xc3\\xd8\\x0d\\x56\\x38\\x82\\x79\\x84\\xfd\\xda\\x5a\\x7c\\xfe\\xec\\xb2\\xcf\\x8b\\x95\\x4b\\x82\\x9a\\x47\\x57\\x08\\x8d\\x71\\xb4\\x22\\x71\\x4c\\x68\\x08\\x24\\x86\\x25\\x8e\\xf0\\xec\\x09\\x16\\x91\\x1b\\x32\\xec\\xab\\xdc\\x0f\\x03\\x9d\\x83\\xb7\\x74\\xa3\\x05\\x56\\x81\\x51\\x70\\xc3\\x27\\x58\\xe3\\x28\\xa6\\x21\\xa2\\x33\\xe6\\x92\\x90\\x84\\x0b\\x70\\xc1\\xa3\\xeb\\x27\\x6e\\xc9\\x96\\x24\\x86\\x98\\xce\\xd9\\xc6\\x8d\\x30\\xb8\\xa1\\x0f\\x6e\\x1c\\x53\\x8f\\xb8\\x0c\\xfb\\xe0\\x53\\x2f\\x59\\xe1\\x90\\xb9\\x8c\\xd0\\x10\\xcd\\x49\\x80\\x63\\x50\\xd8\\x12\\x43\\x65\\x92\\x7a\\x54\\xaa\\x22\\x88\\x8f\\xdd\\x00\\x48\\x08\\x7c\\x2e\\x9b\\x82\\x0d\\x61\\x4b\\x9a\\x30\\x14\\xe1\\x98\\x45\\xc4\\xe3\\x18\\x2a\\x90\\xd0\\x0b\\x12\\x9f\\x73\\x48\\xa7\\x21\\x20\\x2b\\x22\\x23\\x08\\x77\\x51\\x95\\x98\\x83\\x26\\x31\\x56\\x11\\xe7\\xa9\\xc2\\x8a\\xfa\\x64\\xce\\xff\\x63\\x91\\xd6\\x3a\\x99\\x05\\x24\\x5e\\xaa\\xe0\\x13\\x0e\\x3d\\x4b\\x18\\x56\\x21\\xe6\\x83\\x1e\\x0e\\x63\\xac\\xf2\\x3c\\x2e\\x68\\x04\\x31\\x0e\\x02\\x8e\\x40\\x70\\x2c\\x73\\xcd\\xd9\\x09\\x1b\\x1e\\x65\\xcd\\x0b\\xca\\xd2\\x12\\x89\\xb8\\x9b\\x25\\x5d\\x71\\x5b\\xb4\\xcd\\x84\\xc4\\x30\\x4f\\xa2\\x90\\xc4\\x4b\\x2c\\x7c\\x7c\\x0a\\x31\\x15\\x11\\xbf\\x60\\x8f\\xf1\\x11\\x0e\\x3d\\xa7\\x41\\x40\\x37\\x24\\x5c\\x20\\x8f\\x86\\x3e\\xe1\\x19\\xc5\\x37\\x08\\x39\\x4b\\x0c\\xee\\x8c\\x7e\\xc5\\xa2\\xe6\\xb2\\xe9\\x21\\x65\\xc4\\x93\\xe5\\x16\\x0d\\x58\\xe7\\x5d\\x4d\\xa7\\xe2\\xa5\\x1b\\x04\\x30\\xc3\\x48\\x16\\x0c\\xfb\\xbc\\xbc\\x7c\\x28\\x4b\\x27\\xe2\\xe1\\x63\\xe6\\x86\\x8c\\xb8\\x01\\xac\\x69\\x24\\xe2\\xed\\xa7\\x59\\x43\\xc8\\x19\\xea\\x30\\xb1\\x06\\xce\\x83\\x66\\xeb\\x60\\x4c\\x60\\x6c\\x5b\\x1f\\x8d\\xbe\\xde\\x87\\x8a\\x36\\x01\\x63\\x52\\x51\\xe1\\xc1\\x70\\x86\\xd6\\xd4\\x81\\x07\\xcd\\xb6\\x35\\xd3\\x79\\x04\\x6b\\x00\\x9a\\xf9\\x08\\xbf\\x1a\\x66\\x5f\\x45\\xfa\\x6f\\x63\\x5b\\x9f\\x4c\\xc0\\xb2\\xc1\\xb8\\x1f\\x8f\\x0c\\xbd\\xaf\\x82\\x61\\xf6\\x46\\xd3\\xbe\\x61\\xde\\xc1\\xed\\xd4\\x01\\xd3\\x72\\x60\\x64\\xdc\\x1b\\x8e\\xde\\x07\\xc7\\x02\\x1e\\x30\\x85\\x32\\xf4\\x09\\xb2\\x06\\x70\\xaf\\xdb\\xbd\\xa1\\x66\\x3a\\xda\\xad\\x31\\x32\\x9c\\x47\\x15\\x06\\x86\\x63\\x72\\xcc\\x81\\x65\\x83\\x06\\x63\\xcd\\x76\\x8c\\xde\\x74\\xa4\\xd9\\x30\\x9e\\xda\\x63\\x6b\\xa2\\x83\\x66\\xf6\\x91\\x69\\x99\\x86\\x39\\xb0\\x0d\\xf3\\x4e\\xbf\\xd7\\x4d\\xa7\\x06\\x86\\x09\\xa6\\x05\\xfa\\x47\\xdd\\x74\\x60\\x32\\xd4\\x46\\x23\\x11\\x4a\\x9b\\x3a\\x43\\xcb\\x16\\xfc\\x7a\\xd6\\xf8\\xd1\\x36\\xee\\x86\\x0e\\x1a\\x5a\\xa3\\xbe\\x6e\\x4f\\xe0\\x56\\x87\\x91\\xa1\\xdd\\x8e\\x74\\x19\\xca\\x7c\\x84\\xde\\x48\\x33\\xee\\x55\\xe8\\x6b\\xf7\\xda\\x9d\\x2e\\xbc\\x2c\\x67\\xa8\\xdb\\xc2\\x4c\\xb2\\x43\\x0f\\x43\\x5d\\x0c\\x19\\x26\\x68\\x26\\x68\\x3d\\xc7\\xb0\\x4c\\x5e\\x93\\x9e\\x65\\x3a\\xb6\\xd6\\x73\\x54\\x70\\x2c\\xdb\\xd9\\xba\\x3e\\x18\\x13\\x5d\\x05\\xcd\\x36\\x26\\x86\\x79\\x87\\x06\\xb6\\x75\\xaf\\x02\\x2f\\xa7\\x35\\x10\\x35\\x33\\xb9\\x9f\\xa9\\x4b\\x14\\x5e\\x6a\\xd8\\xe9\\x88\\x65\\x8b\\xef\\xd3\\x09\\xff\\x88\\x24\\x97\\xbe\\xae\\x8d\\x0c\\xf3\\x6e\\xc2\\x9d\\x8b\\xc6\\x35\\xf4\\xd3\\x05\\x9a\\x27\\xa1\\xd8\\x4b\\x30\\x61\\x11\\x09\\x17\\xb7\\xc9\\x7c\\x8e\\x23\\xa5\\x8a\\x7e\\x07\\x04\\x00\\x62\\x3d\\xd5\\x66\\x62\\x10\\x3a\\xf0\\xb7\\xbf\\xb7\\x01\\x3d\\x03\\x42\\x45\\xe3\\xda\\x3a\\xa2\\x8c\\xb2\\xa7\\x35\\xae\\xb9\\xeb\\x35\\x0e\\x7d\\xe8\\xc0\\x16\\x55\\x8e\\x28\\xb1\\xb0\\x3f\\x84\\x5a\\x5b\\x27\\xf1\\x32\\x9b\\x6f\\xcb\\xe9\\x08\\xb3\\x24\\x0a\\x85\\x15\\x8f\\xd7\\x3e\\x1e\\x90\\x51\\x39\\x51\\x0c\\x99\\x8d\\xe5\\x49\\x14\\xf0\\xb2\\xa8\\x5f\\x28\\x09\\x95\\x4a\\xa5\\x9a\\xe1\\x6f\\x48\\xe8\\xd3\\x4d\\xed\\xd6\\x8d\\xf1\\x55\\x0b\\x3a\\xe8\\x77\\xe1\\xe8\\x51\\x1f\\x7f\\x83\\x1b\\xa8\\x68\\xb7\\xbd\\xbe\\x3e\\xb8\\x1b\\x1a\\x7f\\xfe\\x75\\x74\\x6f\\x5a\\xe3\\xbf\\xd8\\x13\\x67\\xfa\\xf1\\xe1\\xb7\\xc7\\xbf\\xba\\x33\\xcf\\xc7\\xf3\\xc5\\x92\\x7c\\xf9\\x47\\xb0\\x0a\\xe9\\xfa\\x9f\\x51\\xcc\\x92\\xaf\\x9b\\x6f\\x4f\\xff\\xba\\xac\\x37\\x9a\\xad\\x9f\\xaf\\x7e\\xb9\\x7e\\x7f\\x7e\\xd1\\xa9\\xa8\\x48\\x20\\xe2\\x90\\x63\\xc2\\x4d\\x4e\\x57\\x21\\xe1\\x3a\\x61\\x55\\x31\\x2b\\xa3\\xf2\\xbf\\xaf\\x6e\\x04\\x34\\x61\\xeb\\x84\\x41\\x07\\x42\\xbc\\xd9\\x6b\\x4f\\x1b\\xed\\x58\\xe2\\x30\\x59\\xe1\\xc8\\x65\\x34\\x4a\\xad\\xa7\\x6c\\x7e\\xad\\x8b\\x50\\xfa\\x76\\x2a\\x0d\\xd4\\xde\\x7a\\x6e\\x96\\x24\\xc0\\xa0\\xe4\\xce\\xb5\\x15\\xfd\\x8a\\x4d\\xfc\\x8d\\x29\\xd5\\xea\\xd6\\x2a\\xe7\\x94\\x45\\xf3\\x96\\x51\\x1d\\x3a\\x85\\xa0\\x35\\x2f\\x89\\x22\\x1c\\xb2\\x02\\x2b\\x99\\xeb\\x01\\xe0\\xf6\\x21\\xb8\\xc6\\xdb\\xc2\\x35\\x4f\\x81\\x93\\x75\\xf3\\x78\\x26\\x22\\xa1\\x6e\\x17\\x1a\\x65\\x34\\x1c\\x7a\\x9c\\x9c\\xa2\\x08\\x9b\\x33\\x68\\x56\\xe1\\xc3\\x07\\x68\\x55\\xe1\\x0f\\x50\\x04\\xf1\\x6e\\x17\\x5a\\x07\\x58\\xe0\\xd0\\x6b\\x66\\x7e\\x0d\\x38\\x83\\xfa\\xcf\\xc2\\xb1\\x91\\x39\\x36\\xb9\\xe3\\xd5\\x61\\xc7\\x96\\xa4\\xd4\\x84\\x33\\xb8\\x6a\\xee\\xb1\\x26\\x73\\x50\\x48\\x6c\\xba\\xa6\\x00\\x2e\\xb4\\xa9\\xdc\\x2a\\x59\\x33\\x4f\\x16\\x43\\x80\\x5e\\xb5\\x76\\xe3\\x3d\\xef\\xd6\\x37\\x88\\xf1\\x2e\\x7e\\xf3\\x14\\xfc\\xc3\\xc0\\x3b\\x5f\\xe5\\x42\\x4e\\xd5\\x41\\x11\\xdb\\x50\\xec\\xac\\x1a\\xbf\\x58\\x68\\x4c\\xe1\\x6d\\xa8\\xc2\\x39\\x1c\\x9c\\x69\\x1c\\x9d\\x69\\x1e\\x9d\\x69\\x55\\x0b\\x95\\x2d\\x90\\x49\\x85\\x20\\xe5\\x93\\x0b\\x85\\x34\\x7e\\x4e\\xf7\\xa8\\x8f\\xdf\\x68\\x8f\\x96\\x0d\\x6f\\x9f\\x18\\x8e\\xa5\\x90\\xbe\\xb2\\x83\\xa5\\x12\\xf5\\xf1\\x7f\\x6d\\x0f\\xbb\\x51\\x8f\\x67\\x79\\x78\\xa7\\x94\\xbb\\x27\\x98\\x4b\\xb1\\xce\\x7c\\xab\\x07\\xd6\\xe6\\x16\\xf7\\x03\\xd4\\x1b\\xd7\\xd5\\xd2\\x82\\xd9\\x5d\\x0a\\xb2\\x60\\xb5\\x79\\x44\\x57\\xbd\\xd4\\x31\\x47\\xdf\\xdb\\x1c\\xdb\\xe5\\x99\\xc7\\xe8\\x42\\xfd\\x7d\\xbd\\x0a\\x67\\x67\\x3b\\x71\\x1b\\x8d\\xd6\\x09\\xeb\\xf6\\x55\\x2d\\xd9\\xaf\\xd4\\x31\\x8d\\x3a\\x9c\\xe1\\x81\\x72\\x35\\xf6\\xeb\\x75\\x5a\\x3d\\x0a\\xf9\\x9e\\x41\\xb3\\x2e\\x64\\xe4\\x2a\\x95\\x91\\x8c\\x19\\x17\\x8a\\xea\\x7e\\xc1\\xca\\xbb\\xfb\\x7f\\xa5\\x28\\xff\\x01\\x91\\x63\\x92\\x7f\\x32\\x91\\xe6\\x1b\\x74\\x27\\x15\\xf9\\xba\\x54\\xf9\\xfd\\xfe\\x94\\x1b\\xd7\\x7c\\xad\\x71\\x65\\xe9\\xda\\xed\\x5a\\x65\\xc6\\x13\\xa9\\xdc\\x14\\xd3\\x52\\x77\\x2d\\x18\\xfe\\xc6\\xb6\\x06\\x05\\xc9\\xcb\\x63\\xa4\\xe2\\x87\\x9e\\xdb\\x28\\xbf\\x0d\\xbe\\x70\\x81\\x48\\xef\\x46\\x42\\x78\\x3f\\x8b\\x21\\xe8\\x80\\xf8\\xdf\\xde\\x99\\xe0\\x57\\xa7\\x0e\\xbc\\xab\\x17\\x47\\x8b\\x37\\x49\\xf4\\x8c\\xd0\\xa1\\x30\\xf9\\xf5\\x2e\\xbf\\x87\\xc9\\x76\\xde\\x80\\x99\\xac\\x66\\x38\\xaa\\x99\\xae\\x99\\x6a\\x75\\xb6\\x3e\\x72\\xb1\\x56\\xf6\\x65\\x9a\\x6b\\x46\\x31\\x7a\\x2d\\xc0\\xe1\\x82\\x2d\\xa1\\x0b\\x97\\xc7\\x14\\x52\\x1e\\x2a\\x32\\x28\\x74\\x76\\xb8\\xd7\\xe2\\x25\\x99\\x97\\x96\\x63\\x76\\xc3\\x8c\\x12\\x5c\\x3c\\x78\\xb6\\x0b\\x3a\\xd3\\xae\\x62\\x6d\\xba\\x9d\\xfc\\x3b\\xef\\x4d\\x4a\\xeb\\x1d\\xd4\\x8f\\x2a\\xf7\\x1e\\xaf\\xbc\\x1a\\x07\\xd9\\xcc\\xdd\\x20\\x3e\\x4a\\xe7\\xb4\\xb3\\xa1\\xc8\\x2f\\x1b\\xd6\\x98\\x72\\x7e\\x5e\\x48\\x64\\x7f\\xe3\\x5c\\x5c\\x40\\xe5\\x53\\xf4\\x29\\xac\\xc0\\xbb\\x2e\\x54\\x3e\\x85\\x95\\xbd\\xd9\\xd2\\x99\\x91\\x6f\\xa1\\x4e\\x07\\xea\\x4d\\x29\\xe8\\x47\\x22\\x17\\x0b\\x78\\x0e\\xf5\\xaa\\x70\\xb9\\x7c\\x55\\xef\\x0b\\x29\\xd5\\x2f\\xcb\\xaa\\xb0\\x83\\xda\\xd9\\xbf\\x07\\x3e\\x7f\\xdf\\x31\\x57\\x8e\\xbe\\xd7\\xb6\\xcc\\xf9\\xa4\\xcb\\xd8\\xce\\x69\\xd7\\xf8\\xa5\\x7c\\xda\\x5d\\xb6\\xae\\x5f\\x4d\\x7f\\x8f\\x40\\x01\\xb3\\x2b\\x25\\xa9\\xfe\\xbe\\x71\\xac\\x2a\\xc5\\x67\\x5a\\x51\\xec\\xb8\\xa2\\xfd\\x21\\xb2\\xff\\xc1\\x63\\xe7\\x25\\x72\\x52\\x4a\\x1b\\x8d\\xd6\\x49\\xec\\xf6\\xf3\\x3a\\x4e\\xf2\\x47\\xd2\\x3b\\x75\\xe3\\x3f\\x73\\x81\\xdb\\x0a\\xea\\x8b\\xf7\\xb9\\xb7\\x94\\xd4\\xc3\\x81\\x5e\\x12\\xd5\\xab\\xd6\\xff\\xc5\\xb4\\xfc\\x86\\xf9\\x41\\x11\\x4d\\x9f\\x96\\xb2\\x1b\\xe9\\x03\\x45\\x50\\xb5\\xe6\\x25\\x6d\\x2b\\x29\\xea\\xe1\\x77\\x61\\xe3\\x8d\\xf1\\x9a\\x6f\\x8c\\xd7\\xfa\\x11\\xbc\\x63\\xbf\\x32\\x88\\xc7\\x61\\xfe\\x74\\x16\\x65\\x38\\xf2\\xe6\\x4e\\x7f\\x48\\x50\\xa4\\xd1\\xf6\\x3a\\xd6\\xca\\x1c\\xc5\\x9b\\xbb\\x71\\xfc\\x27\\x03\\x45\\x1a\\x65\\x8f\\x7c\\x21\\x8c\\x3c\\xad\\x3d\\x72\\x25\\x35\\x8f\\xea\\x07\\x1e\\x42\\x02\\xea\\x4f\\x7c\\x59\\x95\\x1f\\x41\\x65\\xe5\\x11\\x8f\\xf9\\xc3\\x28\\xad\\xef\\x42\\x29\\x5d\\x63\\x5f\\x16\\xa8\\x36\\xfa\\x77\\x00\\x00\\x00\\xff\\xff\\xb7\\x7b\\x18\\x5c\\x3e\\x18\\x00\\x00\"\n\nfunc assetsClientStaticJsBase64JsBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticJsBase64Js,\n\t\t\"assets/client/static/js/base64.js\",\n\t)\n}\n\nfunc assetsClientStaticJsBase64Js() (*asset, error) {\n\tbytes, err := assetsClientStaticJsBase64JsBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/js/base64.js\", size: 6206, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticJsHighlightMinJs = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xbc\\xbc\\x7f\\x7b\\xdb\\x36\\xb2\\x28\\xfc\\x55\\x10\\x36\\x8d\\x49\\x8b\\x96\\x9d\\xb3\\xcf\\xbe\\xe7\\x59\\xc9\\xb4\\x6b\\x3b\\xee\\x36\\x27\\x8e\\xbb\\x27\\x49\\xdf\\xde\\x7b\\x44\\x45\\x0b\\x91\\x90\\x84\\x9a\\x22\\x28\\x00\\xb4\\xac\\x88\\xdc\\xcf\\x7e\\x9f\\x19\\x00\\x24\\x25\\xcb\\xe9\\xde\\x7f\\x6e\\xeb\\x58\\x14\\x30\\x00\\x06\\x83\\xf9\\x8d\\xa1\\x1f\\xa9\\x24\\x8b\\xec\\x0f\\x15\\xe5\\x6c\\x4d\\x66\\x65\\x9e\\x68\\x2e\\x72\\x3f\\xd8\\xba\\x47\\x92\\xf9\\x22\\xd8\\x4a\\xa6\\x4b\\x99\\x13\\xd1\\x97\\xac\\xc8\\x68\\xc2\\xfc\\xd3\\x37\\xa7\\xf3\\x65\\xe8\\xbd\\xa1\\xcb\\x62\\xe8\\x05\\x6d\\xf3\\xb9\\x69\\xce\\xf4\\x4e\\xeb\\x85\\x69\\x9d\\x43\\x6b\\xdd\\xcc\\x3c\\xf5\\x8b\\x60\\x3b\\x13\\xd2\\x07\\x1c\\x44\\x54\\xf4\\x67\\x5c\\x2a\\x7d\\xb3\\xe0\\x59\\x3a\\x14\\x43\\x11\\x89\\x7e\\xce\\x9e\\xf4\\x67\\x3e\\xcd\\x78\\x3e\\x0f\\xb6\\x7c\\xe6\\x8b\\x7e\\x2e\\x52\\x76\\x4f\\x97\\x2c\\x8a\\xbc\\x9b\\x5f\\xdf\\xdd\\x7a\\x2d\\x6a\\x35\\x9f\\xf9\\xaf\\x2c\\xc4\\x97\\x4d\\xc1\\xa2\\xe8\\x2f\\x6f\\xde\\x98\\xaf\\xff\\x3f\\xcd\\x4a\\xd6\\x5f\\x52\\x9d\\x2c\\xfc\\xd3\\x58\\xf5\\x4e\\x83\\x20\\xd8\\x4e\\x25\\xa3\\x0f\\x75\\xdd\\xa2\\xb3\\xf0\\x8b\\xb0\\xdd\\xea\\x95\\x94\\x74\\xd3\\x2f\\xa4\\xd0\\x42\\x6f\\x0a\\x18\\x5d\\xf4\\x13\\x9a\\x65\\x7e\\xd1\\x4f\\x00\\xc3\\x7b\\x91\\x32\\x15\\x36\\x04\\x5b\\x21\\x7e\\xab\\xee\\xea\\x2d\\x6a\\x97\\xab\\x0e\\x1a\\x0d\\x51\\xe2\\xfc\\x74\\x1e\\x7a\\x5e\\x30\\xe8\\xf4\\xd6\\xcd\\x24\\x76\\x93\\xd7\\x9f\\x9a\\x2d\\x7a\\x71\\xee\\xd5\\x76\\xca\\x85\\xbf\\x0a\\x45\\x50\\x07\\xfd\\x3f\\x04\\xcf\\x7d\\xaf\\x4b\\x55\\x0a\\xb8\\x00\\x45\\x8b\\xc8\\x5f\\xf5\\x93\\x8c\\x2a\\x05\\x73\\xf5\\x3c\\xe2\\xf5\\x56\\xfd\\x82\\x4a\\x96\\x6b\\x40\\xbe\\xed\\x0a\\xfa\\xaa\\xc8\\xb8\\xb6\\xa4\\x19\\x16\\x51\\x01\\xbb\\xf5\\x9b\\xbd\\xc9\\x66\\x27\\xb2\\xc5\\xfe\\x6b\\x46\\xf3\\x79\\x49\\xe7\\xec\\xe4\\x14\\x36\\x51\\x07\\xc3\\xf6\\x24\\xcf\\x86\\xe2\\xbc\\xe8\\x67\\x2c\\x9f\\xeb\\xc5\\x50\\xf4\\x7a\\x48\\x1b\\x36\\x2a\\x46\\x62\\x3c\\xae\\x2a\\xf8\\x88\\x22\\x2f\\x17\\x27\\x0b\\x3e\\x5f\\x64\\x7c\\xbe\\xd0\\xed\\x31\\x42\\x67\\xf7\\x50\\x12\\xb7\\x1b\\x11\\x8d\\xc6\\xc3\\x06\\x27\\x52\\xf8\\x32\\x54\\x2d\\xf7\\xe8\\x48\\x76\\xb9\\x47\\x0f\\x75\\xa4\\x9f\\x71\\x8f\\xde\\x3d\\x1d\\xd5\\x8b\\x74\\xe7\\x5c\\x0c\\xba\\x35\\xcb\\x14\\x6b\\x81\\xbb\\xa7\\xa0\\x7a\\xd1\\xdb\\xbd\\x6e\\x33\\xd7\\xdb\\x60\\x2b\\xfa\\x45\\xa9\\x16\\xfe\\x96\\x3d\\xb2\\x5c\\x0f\\x3c\\xa5\\xa9\\xd4\\x5e\\x28\\x66\\x33\\xc5\\xf4\\x40\\x85\\x00\\x3b\\xd0\\x75\\x30\\x54\\x51\\xe1\\xeb\\x50\\x05\\xc3\\x67\\x03\\x44\\x71\\x00\\xbe\\xae\\x6b\\x77\\xe2\\xaa\\x0e\\xfc\\x55\\x78\\x16\\x0c\\x1b\\x7e\\x6f\\x68\\xf1\\x87\\xff\\x14\\x3e\\x86\\x6b\\x77\\xea\\x67\\x43\\xf8\\xdc\\x44\\x9e\\x87\\x0f\\x12\\x08\\xd7\\xc0\\x6a\\x1f\\x49\\xf1\\x64\\xb7\\xfb\\xe6\\xcd\\xa3\\x7d\\x32\\xcd\\xa3\\xb3\\x71\\xdf\\x60\\xf1\\x2a\\x7a\\x6c\\xbf\\xb8\\xe3\\xe9\\x02\\x9c\\x77\\xfb\\x2f\\x9f\\x06\\x8f\\x86\\x36\\x16\\x3d\\xec\\xc4\\xcd\\x45\\x91\\x25\\x07\\xc2\\xec\\x00\\x39\\x2c\\x4c\\x4f\\x83\\xa3\\xf2\\xaf\\x3a\\xfa\\xe7\\x9b\\x7f\\xdd\\x48\\x00\\xf1\\x7a\\xd7\\xcd\\xb9\\xf4\\x8e\\x22\\xef\\xa8\\x97\\xf9\\xd7\\xfd\\x47\\x38\\xc0\\xa0\\x77\\xe4\\x1d\\x59\\x6a\\x79\\xe7\\x5e\\xef\\xaa\\x05\\x7c\\x51\\x96\\xaf\\xfa\\x54\\x6b\\xc9\\xa7\\xa5\\x66\\x2a\\xfc\\xd6\\x4a\\x53\\xcf\\xbb\\xf0\\xea\\xf5\\x82\\x67\\xac\\xa1\\x54\\x55\\xb5\\x94\\x02\\xb2\\x96\\x91\\xf6\\x8d\\xe0\\x24\\xcc\\x3f\\x0b\\xdf\\x06\\xa3\\xb3\\xf1\\x70\\xd3\\x8b\\x32\\x7f\\xdd\\x57\\xe5\\x54\\x69\\xe9\\x17\\x61\\x69\\xe9\\x73\\x52\\x04\\x20\\x57\\xee\\xeb\\x90\\xcf\\xfc\\x72\\x8f\\x3a\\xc1\\x76\\xd3\\x8b\\x94\\x5f\\x22\\xd6\\xc1\\x50\\x1a\\xfe\\xb0\\x5f\\x1b\\xb6\\xeb\\x8e\\x12\\x85\\x67\\x45\\x23\\x5c\\x45\\xd2\\x89\\x5b\\x2a\\xb6\\xab\\x93\\x93\\xa1\\x88\\xe4\\x68\\x85\\x08\\xf9\\xde\\xf9\\xa9\\xd7\\x6b\\x35\\x67\\x5f\\x8b\\x3b\\xb1\\x66\\xf2\\x86\\x2a\\xe6\\xe3\\x4e\\x03\\xbb\\x55\\xf1\\x2a\\x6a\\x97\\xb7\\x3b\\x5b\\x85\\x6f\\x83\\xa1\\xe9\\x5e\\x9d\\xcb\\x86\\x02\\x88\\x2b\\xac\\x10\\x0c\\x57\\xbd\\x5e\\x87\\x4d\\x37\\xbd\\x2e\\x01\\x82\\x8e\\x5e\\x9a\\x81\\x24\\x37\\xdf\\x84\\xaf\\xc2\\x56\\xaf\\x7c\\x62\\xf3\\xdb\\xa7\\xc2\\x57\\xa1\\xb7\\xf4\\x7a\\xa0\\xb5\\xde\\x5f\\x7a\\xdc\\x1b\\xc0\\x49\\xf8\\xf2\\xd2\\x9b\\xe3\\x63\\x67\\xae\\xc2\\xdf\\x00\\xbf\\xf3\\x99\\xbf\\xe9\\x27\\x62\\x59\\xf0\\x8c\\xa5\\x6e\\xb2\\xba\\x6d\\x8a\\xb4\\x2c\\x19\\x0a\\x81\\x02\\x21\\x40\\xf0\\x07\\x43\\x33\\x19\\x6d\\xeb\\x61\\x87\\xc7\\xae\\x42\\x1d\\x6c\\xb5\\x55\\x84\\x1e\\xf1\\x82\\xfe\\x4c\\xc8\\x5b\\x9a\\x2c\\x5a\\x35\\x78\\x6d\\x46\\xde\\x44\\xd7\\x0e\\xac\\xf2\\x82\\xa1\\x1c\\xdd\\x8c\\xce\\xc6\\xe3\\x68\\x74\\x15\\xde\\x8c\\xde\\x8e\\x2f\\xef\\xcb\\xe5\\x94\\x49\\x1f\\x9e\\x83\\xc1\\xdb\\xf1\\x50\\x99\\x83\\x04\\xa0\\xa0\\x0e\\xea\\x4d\\x3f\\xfb\\x14\\x09\\x7f\\xd3\\xcf\\xaa\\x0a\\xcc\\x6e\\xff\\xfd\\xa7\\x10\\xb0\\x0c\\x00\\x3b\\x60\\x4e\\x31\\x23\\x9b\\xfe\\x03\\x1e\\xb0\\xe4\\xf9\\xdc\\x0b\\xb6\\xdf\\x7c\\xef\\x81\\x6d\\xd6\\x42\\xa6\\x5e\\x08\\xf8\\x1b\\x66\\x70\\x9a\\xef\\x89\\xf0\\x9c\\xe0\\xb6\\xc0\\xfe\\x6d\\xfa\\x0f\\xfd\\x05\\x55\\xbf\\xae\\xf3\\x7f\\x48\\x51\\x30\\xa9\\x37\\xfe\\x53\\x10\\x6c\\x13\\x91\\x6b\\x9e\\x97\\xac\\xfe\\xe6\\x3f\\xc1\\x1c\\xa3\\xa7\\x71\\x50\\xd7\\xb0\\x8e\\x04\\x8b\\xe3\\x48\\x39\\xfd\\xfd\\x43\\xb0\\xdd\\xf4\\xa7\\x91\\x17\\xc7\\x53\\xdf\\xeb\\x29\\x2b\\x10\\x15\\x48\\x44\\x10\\xc7\\xca\\xab\\x37\\xfd\\xa9\\xc1\\x7f\\x7a\\xb9\\xe9\\x4f\\x07\\x5e\\x1c\\x5f\\x57\\x71\\x3c\\xf5\\x10\\xff\\x57\\x9b\\x3e\\x7b\\xf3\\x06\\x7e\\xff\\x0e\\xf3\\xb0\\xa8\\xe9\\xae\\x71\\x7e\\x86\\xad\\x66\\x3c\\x03\\x5a\\xe8\\xdb\\x68\\xd3\\x67\\x55\\xe5\\x79\\xe6\\x70\\xd8\\xef\\x6f\\xde\\xac\\xfb\\xfa\\x16\\xe0\\xf4\\x6d\\x2f\\x82\\xa6\\x4b\\xaf\\x32\\x9c\\x00\\x1d\\xb5\\x99\\x88\\x03\\x00\\x37\\x13\\xf1\\xc0\\xb4\\xc9\\x28\\x8a\\xca\\x3c\\x65\\x33\\x9e\\x03\\x33\\x40\\xc3\\xdb\\xda\\x20\\x95\\xc0\\xd7\\x24\\x1a\\x8d\\x6b\\x47\\xb5\\x47\\xd0\\x92\\xe7\\x9b\\x7e\\xe2\\xc4\\xe6\\xd1\\x5a\\xa9\\x4d\\x3f\\x19\\x3d\\x82\\x79\\x52\\x2c\\x9b\\x79\\x38\\x0e\\xbe\\x6f\\xea\\xc2\\x76\\x85\\x1b\\xbb\\x1e\\x8a\\xad\\x0a\\xb6\\x45\\xf3\\x1c\\xae\\x83\\xda\\xa8\\x06\\xd0\\xb8\\xdf\\x5d\\xa9\\x34\\x5c\\x61\\xa6\\xec\\x4f\\xed\\x94\\xb0\\xf1\\xa6\\x47\\xdf\\x06\\xcd\\x66\\x9b\\x46\\x8e\\x54\\x8b\\x4a\\xa7\\x38\\x85\\x5f\\xb6\\x67\\x64\\x18\\x69\\xb0\\x65\\x4f\\x2c\\x19\\x34\\x6c\\xdb\\x28\\x6f\\x92\\x97\\x59\\x56\\xd7\\x75\\xe1\\xaf\\x3a\\xa2\\x94\\xfa\\xef\\xc2\\xdb\\x1d\\xc1\\x94\\xe1\\xc7\\xd6\\xb0\\xde\\x45\\x67\\xc3\\xbb\\xf3\\x8f\\x2d\\xfa\\x77\\x80\\x3e\\xf4\\x7c\\x88\\x3e\\xf6\\x93\\xd1\\xdd\\xb8\\x3f\\xfd\\xd4\\x87\\x15\\x7d\\x89\\x3c\\xf0\\xe1\\xcd\\x9b\\x0f\\x7d\\x9e\\xa7\\xec\\x29\\x8a\\xce\\x9a\\xa5\\x0d\\x68\\xbd\\xa3\\xe4\\x3f\\x80\\x02\\x80\\x11\\xc0\\x34\\x1f\\xfa\\xec\\x53\\x5f\\x33\\xa5\\x7d\\x19\\x34\\xa3\\x3e\\xd4\\xa6\\xfb\\xf7\\xa6\\x45\\xf9\\x1f\\xac\\x0b\\x13\\xca\\xa0\\x33\\x9b\\xf6\\x65\\xf8\\xa1\\x1d\\xd7\\xe7\\x88\\x45\\x33\\x63\\x0b\\xb8\\xf1\\xef\\x60\\x59\\xb3\\x81\\x9f\\x41\\xd1\\x48\\xb0\\x54\\x3b\\x3a\\x71\\x00\\x4d\\xce\\xce\\xde\\x3d\\x97\\xa8\\x0f\\xc1\\x9b\\x37\\x77\\xfd\\x87\\xd1\\x87\\x71\\x3b\\xef\\xdf\\x7d\\x37\\x69\\xe6\\xaf\\x8d\\x30\\x5c\\x81\\x50\\x36\\x3b\\x31\\x4a\\xc7\\xda\\xe4\\xfb\\xe8\\x6c\\x78\\xd5\\xcf\\x3e\\xf5\\x33\\xaa\\xf4\\x7b\\x24\\x96\\xb1\\xda\\x77\\x11\\x36\\x23\\x3d\\x3f\\x38\\xc5\\x7b\\x17\\x6c\\x65\\x2f\\xfa\\xe0\\xb4\\xea\\x7d\\x78\\x67\\x08\\x7c\\x72\\x1f\\xe0\\xa0\\x8f\\xd1\\xc6\\xbf\\x0a\\xef\\x70\\xd5\\x8f\\xc1\\xf6\\xb1\\x17\\x7d\\x1c\\xbd\\x1d\\x0f\\x65\\x2f\\x3a\\x3a\\x57\\x05\\xcd\\x09\\x7a\\x7a\\x60\\x2c\\x3f\\x8e\\xce\\xc6\\xbd\\x23\\xef\\xe2\\xa8\\x77\\x07\\x4f\\xde\\xf9\\x29\\xf4\\x5f\\x78\\xd6\\x2a\\xf7\\x22\\x68\\xae\\xef\\xa3\\x5d\\xdc\\x86\\xbb\\x58\\x39\\x55\\x2f\\x7b\\x2d\\x4a\\x1d\\x0a\\x7f\\x33\\x1e\\xc6\\x55\\x5f\\xdd\\xbd\\x79\\xf3\\x8a\\x8d\\xe0\\x61\\xdc\\x10\\x02\\xa8\\x63\\x69\\x01\\x1d\\x97\\x29\\x02\\x86\\xeb\\x60\\x30\\xb7\\x74\\xbb\\xea\\xcb\\x8b\\x33\\xdc\\x85\\xec\\x5b\\xbd\\x37\\x49\\x44\\x99\\xeb\\xe1\\x35\\x34\\x49\\xbb\\xfc\\xfe\\xd6\\x64\\xdf\\x39\\xa4\\x66\\x83\\xd2\\x78\\x05\\x9d\\x3d\\x36\\x18\\xfe\\x97\\xdf\\x7a\\xf9\\x7d\\x75\\xf7\\xaa\\xa3\\x37\\x2e\\xbf\\xf9\\xc1\\xe0\\xef\\x7e\\x67\\x3b\\xef\\xbb\\x0c\\x73\\xd7\\x4f\\xee\\x2f\\xf7\\x57\\x86\\x46\\x5c\\x73\\x60\\xd4\\xd8\\x5d\\x5f\\x5e\\x07\\xdb\\xa7\\x5e\\xf4\\x61\\xb8\\x8e\\x3c\\xaf\\xb1\\xdd\\x77\\x7d\\x66\\xda\\x33\\x5f\\x06\\xbd\\x6e\\xa7\\x85\\x95\\x75\\x7d\\x15\\xfd\\x3a\\xfd\\x83\\x25\\xba\\x9f\\x48\\x46\\x35\\xf3\\xef\\xc2\\xad\\x61\\xf7\\xc1\\x16\\xb7\\x33\\xb8\\xaa\\xeb\\x00\\x08\\x71\\xd7\\x97\\x2d\\x8e\\x37\\x46\\x96\\xd6\\x30\\x0d\\x9f\\xf9\\x7b\\x9a\\xf0\\xa9\\x17\\xfd\\x97\\xdf\\xf8\\x8d\\x67\\xb5\\xe1\\x33\\x90\\xf3\\x2b\\x24\\xf8\\x5d\\x03\\x62\\xf6\\xda\\x72\\xbe\\xbc\\xbe\\x3c\\x1b\\x38\\xa3\\x5f\\x1b\\x56\\x53\\xfe\\x55\\x28\\x1d\\xab\\x61\\xc8\\xf5\\xb1\\x2f\\x6f\\xab\\xea\\x63\\x9f\\xdd\\x06\\x88\\x83\\xac\\xed\\x74\\xa9\\x30\\x8c\\x90\\xdc\\xe3\\x0a\\xed\\x49\\x5c\\x45\\x57\\x56\\x8a\\xad\\xe7\\x71\\xf5\\x2a\\xfa\\x68\\x5b\\xcc\\xd4\\x30\\x99\\x23\\x55\\x0d\\x84\\x32\\xad\\x4e\\xe7\\xbe\\x6f\\x9e\\x31\\xf6\\x68\\x94\\x8c\\xbc\\xed\\x22\\x0c\\x16\\x15\\x77\\x19\\x6c\\xf5\\x42\\x8a\\xb5\\xf7\\x3e\\xcb\\xd8\\x9c\\x66\\x5e\\x0d\\x58\\x0e\\x9b\\x98\\xc6\\x39\\x78\\x6f\\x71\\x8b\\x3f\\x47\\x6c\\xf4\\x6e\\x3c\\x9c\\xf9\\x3f\\x1b\\xe9\\xba\\x8a\\x7e\\xc6\\xcf\\xb5\\x13\\xde\\x6b\\x2b\\xab\\x8f\\xf6\\xf3\\x09\\x3a\\xb4\\xdc\\x18\\xb7\\x30\\x5c\\x85\\xe0\\x82\\x9b\\x7d\\xa1\\x42\\xde\\x5e\\xf5\\x75\\x47\\xd0\\x8b\\x61\\x19\\x41\\x0b\\x4a\\xd3\\xad\\x51\\x15\\xa5\\x0b\\x47\\x57\\xd1\\x8d\\x7f\\xdb\\xf5\\x1f\\x8d\\xa0\\x17\\x41\\x58\\x82\\x03\\x81\\x3e\\x24\\x36\\xf5\\x56\\x75\\x17\\x32\\x70\\xa7\\xb6\\x95\\x83\\xeb\\x70\\x47\\x6c\\x06\\x8f\\xa1\\x61\\x9d\\xa7\\xd0\\x49\\xc8\\xe0\\x5d\\x5d\\x27\\x18\\x0d\\xff\\x82\\x67\\xf8\\x4b\\x14\\x35\\xb4\\x71\\xa2\\xb1\\x95\\x83\\xb3\\xbd\\x89\\xce\\xec\\x44\\x99\\x7f\\x1b\\x58\\x47\\x1e\\xe9\\x4a\\x7e\\xe9\\x2a\\xf6\\xb9\\xaf\\x5c\\xc4\\xb6\\xdd\\x1f\\x2f\\x3b\\x73\\xa8\\xa0\\x46\\xf2\\xad\\x22\\xd1\\x18\\xcb\\x02\\x9c\\x19\\x66\\xf8\\x8a\\xed\\xab\\xdd\\xa2\\xeb\\xc8\\x18\\x15\\x92\\xfa\\x05\\x04\\x53\\xad\\xec\\x47\\x05\\x0a\\xc0\\xae\\xe2\\xe8\\xc9\\xbe\\xbc\\x58\\xed\\xb5\\xad\\xfa\\x32\\xd8\\xae\\x8c\\xff\\x73\\x08\\x5e\\xec\\xb5\\x09\\x03\\x2f\\xc0\\xb3\\xae\\x4d\\x98\\xee\\x16\\x85\\xf0\\x4f\\xb1\\x44\\xe4\\xe9\\x64\\xca\\x94\\x8e\\x56\\xf5\\xf3\\x18\\x8d\\xfb\\xab\\x10\\xd3\\x0b\\x7c\\xe6\\x17\\x30\\xd1\\xaa\\x13\\x4a\\xfb\\xfe\\xf9\\xe8\\xeb\\xc5\\xb8\\x77\\x51\\xc5\\x3a\\xe8\\x05\\xa7\\xf3\\x65\\x9b\\x58\\x90\\xe1\\x63\\x58\\x86\\xad\\x11\\x7f\\xec\\x24\\x10\\xf4\\xe9\\x3c\\x2c\\xc0\\xab\\xe4\\x33\\x5f\\xec\\x4d\\x6a\\xb2\\x0b\\xe7\\x53\\x79\\xd1\\x0a\\xc8\\xaa\\xc5\\x67\\xe9\\xcb\\xb0\\x0c\\x0b\\x73\\x52\\x8f\\xd1\\xc2\\x97\\x61\\x61\\xf8\\x5d\\x47\\xd4\\x9a\\x72\\xfd\\x52\\x94\\x5e\\x1b\\x79\\xd0\\x97\\xa9\\xaf\\xc3\\x47\\x50\\xdd\\x8f\\xc1\\x50\\x47\\xeb\\x86\\x22\\x43\\x73\\xfe\\xce\\x27\\x10\\x3b\\x91\\xd3\\x2a\\x4a\\x45\\x52\\x2e\\x59\\xee\\xb4\\xdc\\x6d\\xc6\\xe0\\x9b\\xef\\x15\\x92\\x79\\xc1\\x70\\xd5\\xe7\\x79\\xce\\xe4\\x2f\\x5f\\x3e\\xde\\x45\\x6b\\xa3\\xc5\\x87\\xf6\\x33\\xfa\\xc3\\x17\\x61\\xe2\\xaf\\x82\\xf0\\x31\\xa8\\x5d\\x1b\\xf7\\xed\\x13\\x6e\\xc8\\xba\\xfb\\xb2\\x4d\\x6f\\xa0\\x84\\x29\\x9b\\xfe\\xf1\\xfc\\x38\\x56\\xd5\\xd7\\xc0\\x6f\\xd2\\x17\\xc1\\xa5\\xd7\\xd3\\x3d\\xd3\\xfe\\x3a\\xf0\\x82\\x60\\xab\\x22\\x75\\xe9\\x2b\\x4c\\x98\\xe8\\x60\\xa0\\x6b\\x79\\x00\\xa1\\xce\\xfc\\x91\\x1a\\xca\\xbe\\x64\\xaa\\xcc\\x74\\xb4\\x6d\\x44\\x4c\\x87\\x0f\\xeb\\xc1\\x7a\\x97\\x89\\x42\\xc9\\x06\\xeb\\xbe\\xac\\x01\\xa3\\x75\\x97\\x65\\x82\\xad\\xdc\\xe1\\xa0\\x76\\x9a\\x1d\\xb0\\x86\\xbe\\x66\\xee\\x6e\\xcf\\x81\\x75\\xba\\xdd\\xb2\\x2b\\xa1\\xb9\\xb1\\xd0\\x39\\xc6\\xc0\\x9d\\xc0\\xc9\\x35\\x98\\xb0\\xe9\\xc5\\xa0\\xb9\\x39\\xbd\\x39\\xd3\\xf6\\xe8\\xd4\\xf5\\xe6\\x0b\\x9d\\x03\\x31\\xec\\x21\\x86\\xd3\\xa0\\x3f\\xe3\\x99\\x66\\xd2\\xbf\\x16\\x22\\x63\\x34\\x3f\\x10\\x50\\x89\\x60\\xbb\\xf4\\x45\\x88\\x61\\x90\\xa6\\xd3\\x4f\\x86\\x75\\x81\\x9f\\x1b\\x54\\x1f\\xfc\\x60\\xbb\\xe6\\x79\\x2a\\xd6\\x7d\\x9a\\xa6\\xb7\\x10\\xfb\\xde\\x71\\xa5\\x59\\xce\\xa4\\xef\\xbd\\xfb\\xf5\\xe3\\x8d\\xc8\\x35\\xb4\\x09\\x9a\\xb2\\xd4\\x0b\\xf3\\x70\\x46\\x33\\xc5\\x82\\xe1\\x8b\\x63\\x32\\x41\\x3b\\x70\\xc8\\xc8\\x0c\\x42\\x41\\xbd\\xe0\\xaa\\x7f\\x77\\x75\\xff\\xf7\\xdf\\xae\\xfe\\x7e\\xfb\\x39\\x62\\xa6\\xa1\\x61\\xfd\\x28\\xdd\\x6b\\xb8\\x2a\\xb5\\x88\\xe6\\xa6\\x71\\xc6\\x9f\\x3e\\x52\\xf9\\x50\\x16\\x11\\xdf\\x83\\xba\\xce\\x44\\xf2\\x10\\x2d\\x4d\\x2b\\xcf\\xb9\\xfe\\xc5\\xf5\\xf0\\x7c\\x1e\\xe5\\x87\\xdb\\x7f\\xcd\\x61\\x3b\\xd1\\x83\\xe9\\x7d\\xff\\x29\\xf2\\x46\\xf4\\xe4\\xdb\\xd5\\xc9\\xff\\x8c\\xed\\xe7\\xd9\\xc9\\xdf\\x26\\xe3\\x63\\xcf\\xf4\\xff\\xd6\\x01\\x98\\x1c\\x84\\xb8\\xff\\x84\\xf1\\x5c\\x1c\\xa7\\x3d\\x3f\\x8e\\xfb\\xf0\\x19\\x5c\\xda\\xbe\\x1b\\xe8\\xf4\\xe3\\x78\\x7a\\x36\\x7a\\xfa\\x5f\\x30\\x7a\\x76\\x75\\xf2\\xf3\\xd9\\xc9\\xdf\\xc6\\xbd\\xca\\xdf\\x1d\\x73\\x1c\\x5c\\x56\\x6e\\xb4\\x3f\\x62\\xb7\\xe3\\xd1\\x49\\x6f\\x7c\\x69\\x26\\x0b\\xec\\x6c\\xd7\\x76\\x29\\xff\\x6c\\x3a\\x3a\\x7b\\x3b\\xee\\xb9\\xf6\\x4f\\x9f\\x3f\\x45\\xde\\xab\\xea\\x55\\x54\\xbd\\x8a\\xa2\\xea\\xc7\\xea\\xc7\\xa8\\x7a\\x53\\xbd\\x79\\x53\\xbd\\x89\\xaa\\x38\\x3e\\x86\\x7f\\xf0\\xd0\\x83\\x7f\\x51\\x15\\xc2\\x32\\xd5\\x49\\x75\\x12\\x55\\xa7\\xd5\\x69\\x54\\x0d\\xaa\\x61\\x75\\x5e\\x9d\\xc3\\x4f\\x54\\x9d\\x47\\x55\\x54\\x45\\xf0\\x13\\x55\\x17\\xd5\\x45\\x54\\x5d\\x5c\\x54\\x17\\xf8\\x01\\x9f\\x17\\x30\\x0d\\xa0\\x39\\xaa\\xe2\\x78\\x5b\\xc5\\xb1\\x5f\\xc5\\xf1\\x57\\xf8\\x07\\x1d\\x15\\xfc\\xc3\\x07\\x78\\xfe\\x97\\xc3\\xf9\\x36\\xda\\x62\\x1c\\x1b\\xc7\\xa3\\x38\\x56\\x71\\xfc\\x79\\xec\\x81\\x9d\\xb2\\x2c\\x71\\xf5\\xf9\\x63\\xb4\\x4d\\xee\\x07\\x2e\\x1c\\x0f\\xa7\\x03\\xef\\xc8\\x0b\\x19\\xfe\\xe6\\x30\\x2e\\xf7\\xc2\\x64\\x30\\xb2\\x73\\x8d\\x3b\\x43\\xff\\xfb\\xf9\\xd0\\x23\\xef\\x28\\x64\\xf8\\xfb\\xfb\\x43\\x6f\\xee\\x6e\\xec\\xd8\\x44\\x2c\\x41\\xc0\\x70\\xdd\\xd3\\x53\\x5c\\xf8\\xb5\\xe7\\xa0\\xae\\xef\\x6e\\xee\\x0e\\xc1\\xc5\\xf1\\x31\\x42\\xc6\\xf1\\xf1\\xa9\\x03\\xfe\\xe5\\xd0\\x8c\\x3f\\xec\\x4e\\x78\\x6f\\x41\\x72\\xcc\\x61\\x00\\x84\\x65\\xa0\\x2e\\x6a\\x2f\\x00\\xdd\\xec\\x40\\x5d\\xbf\\x00\\x75\\xbd\\x03\\xc5\\xf3\\x05\\x93\\x5c\\x47\\x6d\\x16\\xdd\\xb9\\xda\\x02\\xd3\\x33\\x5d\\xaf\\x60\\x15\\x6c\\xc5\\xa8\\x18\\x47\\xab\\x51\\x31\\x46\\x9b\\xdd\\xc6\\xa8\\xd8\\x2f\\x6d\\xbf\\x84\\xfe\\xd6\\x00\\xd7\\x7e\\x30\\x44\\x05\\xd3\\xc8\\x76\\x7f\\x4a\\xd5\\xa2\\x5d\\x92\\x9a\\x05\\xe7\\x91\\x07\\x5a\\x8f\\xa0\\x5e\\x30\\x7e\\x1e\\x8b\\x3c\\x3e\\x23\\x7a\\xc1\\x72\\x02\\xbe\\x0e\\x61\\x19\\x9f\\x91\\x19\\x27\\x33\\x21\\x09\\x7a\\x6b\\xc4\\x79\\x23\\x04\\xbd\\x3d\\xc0\\x22\\x15\\x24\\x15\\x39\\x23\\x2c\\x59\\x08\\xc2\\x9e\\xb8\\x26\\x2e\\x70\\x65\\x9a\\xa4\\x2c\\xc9\\xa8\\xb4\\xb3\\x27\\x86\\x3e\\x8f\\x54\\x72\\x3a\\xcd\\x18\\x1e\\x47\\x1c\\xbf\\xee\\x08\\xf0\\x0f\\xe3\\x9e\\x67\\x5c\\xa4\\xe9\\x61\\xd8\\xad\\x3f\\xfa\\x5a\\x8f\\x2b\\x60\\xdd\\x3a\\xe8\\xd5\\x16\\x78\\xf1\\x6f\\x31\\x1d\\xed\\x5f\\xdf\\x86\\x49\\x38\\xb5\\x5c\\x07\\x03\\xd3\\x97\\x19\\x3d\\x19\\x8c\\x40\\x48\\x8e\\x8e\\xbc\\xba\\x33\\x60\\x66\\x06\\x40\\x8c\\x3d\\x01\\x53\\xc3\\x81\\xa0\\x38\\x10\\xc7\\xe1\\xb0\\x45\\x98\\x9a\\x65\\x1e\\x06\\xdb\\x8c\\x6b\\x26\\x69\\x36\\x98\\xd7\\x66\\x0e\\xeb\\x68\\x3e\\x0c\\x9c\\x9f\\x38\\x60\\x61\\x07\\x06\\x16\\x45\\x84\\x16\\x6c\\x4a\\x2d\\x46\\xfe\\x0f\\xaf\\xe2\\xf8\\x74\\xca\\x73\\xf8\\x4d\\xd5\\x22\\xa8\\xba\\x2d\\x6a\\x11\\x80\\xec\\xbe\\x3d\\xab\\x61\\xcd\\x90\\x02\\xd3\\x87\\x80\\x01\\x75\\xac\\xe6\\xcf\\x42\\x23\\xed\\x23\\x82\\x38\\x92\\x38\\xb6\\xe2\\x1e\\x1c\\x02\\xda\\x81\\x03\\xd0\\x3a\\x18\\xd7\\xb5\\x0f\\x0c\\xf5\\x8c\\xad\\x12\\xb5\\xc3\\x54\\xcd\\xe6\\x3c\\x0a\\x2e\\x3a\\x4d\\x34\\xa1\\x8a\\x4c\\xa9\\x62\\x64\\x2a\\x44\\x66\\x39\\x68\\xba\\xd1\\x8c\\x24\\xd0\\x88\\xfe\\x38\\x49\\x16\\xc0\\x1a\\x0b\\x96\\x3c\\xb0\\xd4\\x44\\x98\\xc0\\x64\\x4a\\xb7\\xac\\x96\\xb2\\x84\\x2f\\x69\\x46\\x52\\x36\\xa3\\x65\\x06\\x4c\\x05\\x7e\\xbb\\x66\\x86\\xf5\\xca\\x69\\xc6\\x2c\\xb7\\xe6\\xe5\\x92\\x60\\xb2\\x98\\xb0\\xa7\\x22\\xe3\\x09\\x87\\x07\\xcd\\x64\\x6e\\x78\\x9c\\xcc\\x78\\x4e\\xb3\\x6c\\x43\\x66\\xfc\\x89\\xa5\\x64\\x96\\x09\\xaa\\x91\\xb5\\x67\\x42\\x32\\x9a\\x2c\\xc8\\x5c\\x68\\x41\\xf8\\x8c\\xf0\\xa5\\x1d\\xcd\\x73\\xc2\\x73\\xf8\\xd0\\x4c\\xce\\x68\\xc2\\xcc\\x53\\x4e\\x33\\xc2\\x15\\x01\\x43\\x47\\x32\\x91\\xcf\\x49\\x4e\\x97\\x4c\\x15\\xd0\\x9f\\xb3\\x35\\xe6\\x9c\\x88\\xc0\\x98\\x96\\x80\\x1f\\x4f\\xb5\\x90\\x44\\x94\\x9a\\x88\\x47\\x26\\x25\\x4f\\x19\\x29\\xa8\\xa4\\x4b\\x45\\x0a\\xc9\\x1f\\x61\\x1b\\xe0\\x70\\xb0\\x44\\xb3\\x94\\x14\\xe5\\x34\\xe3\\x09\\x91\\x8c\\xa6\\x22\\xcf\\x36\\x44\\xb2\\x59\\x23\\x4d\\x48\\x37\\xc5\\x68\\xc6\\x52\\xa2\\x16\\x42\\x6a\\xa2\\xf8\\x37\\x26\\x66\\x44\\x69\\x9a\\x3c\\xd0\\x2c\\x13\\x09\\x3c\\x6a\\x0e\\x1f\\xc0\\xcf\\xf0\\x51\\x26\\x9a\\xa8\\x35\\x07\\x3a\\x83\\xfa\\x21\\x26\\x78\\x41\\xb1\\xd7\\x72\\x43\\x6c\\xf6\\xb5\\x84\\x4d\\x96\\xb8\\x95\\x32\\x77\\x47\\x51\\xe6\\x8a\\xce\\x18\\x29\\xcd\\x5a\\xa5\\x82\\x19\\x1f\\xb9\\xd4\\x25\\xcd\\xc8\\xa3\\xc8\\xa8\\x06\\xf9\\x7f\\x14\\x3c\\xb5\\xaa\\x80\\xaa\\x84\\xe5\\x29\\x40\\xa5\\xac\\x79\\x9c\\x49\\xb1\\x24\\x73\\xa6\\xc9\\x5c\\x8a\\x12\\x94\\x96\\x16\\xe4\\x0f\\xc1\\x73\\x92\\x31\\x4d\\x84\\x4c\\x99\\x9c\\x6e\\x80\\x1c\\x9a\\xd3\\x8c\\x28\\x96\\x01\\xcd\\x40\\x6f\\xa0\\xc7\\x49\\xd0\\xe7\\x5e\\x30\\xc9\\xc8\\x86\\xb3\\x2c\\xf5\\x1a\\xf9\\xd8\\x35\\x11\\xce\\x46\\x84\\xf2\\x7a\\x00\\x5b\\x6b\\xc0\\x9e\\x96\\xd9\\x3b\\x91\\x7c\\xa1\\x73\\x07\\x58\\x9d\\xbf\\x3a\\x39\\xa9\\x4e\\x4e\\x2e\\xbc\\x3a\\x3c\\x00\\x71\\x7e\\x7a\\x89\\x53\\x5d\\x78\\xf5\\xb8\\x0e\\x29\\xda\\x24\\xf8\\x40\\xa3\\x63\\x06\\x14\\x92\\x15\\x52\\x24\\x4c\\x29\\x21\\x77\\xec\\x49\\xf8\\x30\\x00\\xdd\\xd9\\xaa\\x4d\\xa0\\xc0\\x8c\\x98\\x94\\x04\\xc1\\xdc\\x04\\x59\\x53\\x99\\x03\\x55\\x98\\x94\\x42\\x92\\x0c\\x3a\\x24\\x9b\\x83\\xd3\\xc7\\xf2\\xd4\\x3e\\x15\\x92\\xce\\x97\\xd4\\x08\\x84\\x2a\\x97\\x0e\\xd1\\x8e\\x6e\\xfb\\xa9\\x51\\x6e\\x46\\x47\\x1d\\x79\\xde\\x91\\xc1\\xf7\\xea\\x33\\xa0\\xfb\\xdf\\xf8\\xfb\\xe6\\xfe\\xe3\\x8b\\x72\\x2b\\xcb\\xe9\\xa6\\x95\\x5c\\x66\\xcc\\x01\\x7d\\xc9\\xa7\\xf2\\xe3\\xf8\\x15\\x38\\x19\\xe0\\x41\\x01\\xe0\\x1f\\x1d\\xc0\\x38\\x5e\\x1f\\x8f\\x5e\\x5d\\x46\\xe3\\xcb\\x6a\\x74\\xd2\\xfb\\xd7\\x38\\x8e\\x7f\\x02\\xbf\\xe5\\xe2\\xa2\\x8a\\xfe\\x05\\x1e\\xcb\\x65\\x75\\x1e\\x5d\\x54\\xa3\\xf3\\x8b\\x71\\x04\\x4e\\xca\\x31\\xf8\\x3e\\xa3\\x93\\xd3\\xde\\x8f\\x5f\\xdf\\x1c\\xff\\xeb\\x9f\\x15\\x68\\xf2\\x51\\x1c\\x8f\\x23\\x3b\\xf5\\xbc\\x89\\x9f\\x07\\x1e\\xcd\\x53\\x2b\\xb6\\x68\\x8f\\x6c\\x6e\\x87\\x2c\\x45\\x5a\\x1a\\xc3\\xe3\\x92\\x19\\x2c\\x45\\xa1\\xbd\\xbe\\xfd\\xfb\\xfb\\x7b\\x68\\x94\\x1b\\x20\\x27\\x0a\\x36\\x32\\xba\\x62\\xd9\\x0c\\xd8\\x28\\x27\\x39\\x7b\\xd2\\xa4\\xcc\\x35\\xcf\\x40\\x75\\x4c\\xd9\\x9c\\xe7\\xa4\\xcc\\x33\\xa6\\x14\\xb9\\xbd\\x7f\\x47\\x24\\x53\\x49\\xc9\\x48\\xce\\x33\\x73\\x8c\\x46\\x5f\\x99\\xa3\\xcb\\x85\\x26\\xaa\\x2c\\x98\\x74\\x2a\\x0a\\x14\\x98\\x64\\xab\\x92\\x3b\\xee\\x24\\x34\\xe3\\x54\\x59\\x61\\x60\\xb9\\x2a\\x25\\xaa\\x25\\x3e\\x23\\x42\\x12\\x9e\\x27\\x59\\x99\\x32\\x6b\\xaf\\xac\\x21\\xdc\\x50\\x99\\x8a\\x44\\x5b\\xe6\\xfb\\x69\\x74\\x75\\xf2\\x3f\\xf4\\xe4\\x5b\\x63\\x02\\x1f\\xa2\\xe7\\xcc\\xde\\x70\\x5b\\x32\\x18\\x25\\x63\\xcb\\x1b\\x5d\\x80\\xaf\\x71\\x1c\\xe1\\xc6\\x10\\x10\\xbe\\xb1\\x3c\\xb5\\xe0\\xd6\\x4e\\x3c\\x1f\\x33\\x99\\xdc\\xde\\xbf\\x9b\\x4c\\xac\\x03\\x95\\xbf\\xf6\\xea\\xf1\\x8e\\x79\\x2c\\xa7\\xca\\x2e\\x1f\\xc7\\x5b\\x84\\xaa\\xbd\\x30\\x1b\\xd0\\xf0\\x61\\x30\\x37\\xb8\\xf2\\x68\\xc4\\xc0\\xbc\\xa6\\x63\\x6b\\xbd\\x47\\xdf\\x31\\xac\\x1c\\xad\\xcf\\x33\\xbe\\xee\\xb0\\xf5\\x61\\x08\\xef\\xc7\\xd1\\x6a\\x0d\\x0e\\xb8\\x6f\\x31\\x0d\\x70\\xb6\\x97\\xe1\\x46\\x16\\x6e\\xfc\\x5d\\xb8\\x66\\x47\\xdf\\x81\\x39\\xb7\\x7a\\xc1\\xe2\\xf6\\xf6\\x45\\xe4\\x8c\\x2e\\x3a\\xfd\\x73\\xc0\\x1f\\x11\\xf0\\xc7\\x3f\\x07\\x3c\\x41\\xc0\\x93\\x3f\\x07\\x8c\\xe3\\xca\\xee\\xb7\\xea\\x00\\x8f\\xbb\\x1e\\x92\\x93\\x79\\x2f\\x9c\\xfe\\xfe\\xc1\\xe8\\x4a\\xb0\\xf4\\xd5\\xeb\\x6a\\x88\\x0a\\x2c\\x65\\xb3\\x56\\xc9\\x6a\\xae\\x8d\\xe3\\xf5\\x47\\x73\\xd6\\x56\\x07\\xa2\\xf9\\xb2\\x2e\\x59\\xe7\\x2c\\x1c\\xd4\\xb8\\x9f\\x88\\x3c\\xa1\\xda\\x7f\\x08\\x9c\\xd7\\xf4\\xe0\\x9a\\xa6\\xee\\xc1\\xf2\\x36\\x08\\xd3\\x2e\\x36\\x0e\\x17\\x23\\x67\\x46\\xdc\\x0f\\x20\\xe5\\x59\\x71\\x31\\x3a\\xc8\\x1f\\x0c\\xe2\\x78\\xdd\\x0b\\x40\\x59\\x81\\xa2\\x79\\x15\\x5c\\x7a\\x1d\\x1e\\xb2\\x5e\\x0e\\xcd\\x13\\x33\\xf6\\x3c\\x8e\\xd5\\x71\\x3b\\xa9\\x49\\xc3\\x1a\\x6f\\xcb\\xeb\\xb1\\xfe\\xfb\\x4f\\x3d\\x6f\\x30\\x08\\x2e\\xcd\\x73\\x3d\\xde\\xd9\\x51\\xb8\\x70\\x12\\x94\\x2b\\x4d\\xdd\\x30\\x00\\x87\\xf0\\x11\\xb0\\x72\\x18\\x05\\x97\\x41\\xaf\\x8b\\x85\\xda\\x2c\\xa7\\x22\\x43\\xf8\\x01\\x2c\\xde\\xa1\\xc5\\x74\\xf0\\x47\\x3d\\x0e\\x0e\\xc2\\xd2\\x1e\\x40\\xb7\\x3d\\x6d\\x78\\x61\\xa3\\xd8\\xb3\\x93\\xff\\x9c\\x8c\\x7b\\x01\\x46\\xaf\\x67\\x4f\\xa3\\xb3\\x93\\xbf\\x99\\x98\\xb6\\x69\\x1c\\xbd\\x3d\\xf9\\xdb\\x78\\xd4\\x28\\xf3\\xbe\\x79\\x84\\x20\\xb6\\x1a\\x9d\\x01\\xfd\\xa6\\x2f\\xcc\\x1f\\xc7\\x97\\x71\\xbc\\x76\\x26\\x68\\xc7\\x17\\xf7\\xe3\\xf8\\x75\\x1c\\xff\\x1e\\x54\\x3e\\x3c\\x55\\x71\\xfc\\x53\\x1c\\xff\\x74\\x19\\xf8\\x78\\x0a\\x01\\x0c\\x71\\xc4\\xfc\\xf4\\xf9\\x93\\xb9\\x49\\x45\\x82\\x3f\\xec\\x9e\\xbf\\x64\\x73\\xf6\\x54\\x18\\xf3\\x6c\\x24\\x07\\x4c\\xcb\\xf8\\x78\\x27\\xd0\\xb4\\x9a\\xc5\\x11\\x68\\x1c\\x04\\xc3\\xb4\\x9f\\x44\\xb3\\xe1\\xa2\\x9f\\x8c\\xde\\x8e\\xf1\\xd1\\xfa\\x9e\\x96\\x05\\xc3\\x64\\x30\\x7b\\xc9\\xf8\\xa5\\x7c\\x36\\x3b\\xe4\\xb6\\x36\\xbe\\xc5\\xa2\\xcc\\x1f\\x9c\\x2e\\x85\\x5d\\x91\\x5e\\x1c\\x9f\\x40\\xd4\\x1f\\xc2\\x2f\\xf8\\xd6\\xdb\\xf9\\x06\\x30\\xaf\\xbd\\x1d\\xe5\\xda\\x9d\\xe2\\xd8\\xfc\\x90\\xdd\\x41\\xc7\\xcd\\xcf\\x77\\x86\\x9e\\x98\\x9f\\xbd\\xa1\\x27\\xcd\\xcf\\xee\\xd0\\x05\\xa3\\xa9\\x3d\\x38\\x4c\\xbb\\x0f\\x88\\x0b\\x75\\x9f\\xf5\\x47\\xf0\\x1f\\xf6\\xe2\\xd3\\x21\\x90\\x76\\xf9\\x17\\x67\\x81\\xcd\\x6d\\xff\\x52\\xbf\\xbc\\xcc\\x57\\x24\\x15\\xfc\\xbc\\x08\\x02\\x53\\xfc\\xb5\\x76\\xa1\\xfb\\xf6\\xaf\\x75\\x03\\x44\\xd3\\x4e\\x74\\xf5\\xf5\\xd9\\x1c\\x10\\x04\\x74\\xbb\\xf7\\xd0\\x4c\\x16\\x34\\x9f\\x33\\xd7\\xf9\\xca\\x75\\xbe\\xe8\\x12\\xfd\\x41\\x1f\\xa9\\x4a\\x24\\x2f\\xf4\\xe1\\x90\\xa6\\xf5\\x4b\\x20\\x26\\x98\\xa1\\x77\\x61\\x4c\\xbd\\x0b\\x2a\\x40\\xd1\\x75\\x0b\\x0a\\xc1\\xc5\\x70\\x09\\x6c\\xf0\\x92\\x3b\\x2e\\x85\\x09\\x7c\\x38\\xea\\x8f\\x04\\x1c\\xf0\\x35\\xd7\\x0b\\xeb\\x9b\\xa3\\x63\\xe1\\x22\\x1d\\xf4\\xd1\\xc1\\x6f\\xb7\\x3e\\x7c\\x13\\x12\\x59\\xc7\\x1d\\x89\\xc0\\xd0\\x99\\x36\\x3e\\x08\\x2a\\x25\\xaf\\x09\\x29\\x3b\\x01\\xbe\\x09\\x4b\\x9a\\x3b\\x32\\x72\\x4f\\xef\\xc9\\xfb\\x7c\\xc6\\x73\\xae\\x37\\x5e\\x6d\\xe2\\xe3\\x1d\\xff\\x71\\xc7\\xf7\\x45\\x7f\\xd2\\xc9\\x34\\x35\\x32\\x5d\\xc5\\xf1\\xd4\\x07\\x74\\x2b\\xb3\\xcd\\x0a\\x37\\x10\\xc4\\xf1\\xd4\\x4a\\xfb\\x03\\xc8\\x37\\x12\\xa0\\xdd\\x9a\\x8d\\xc4\\x0f\\x78\\xd6\\x07\\x54\\xc1\\x9c\\x2f\\xf7\\x54\\x81\\xcb\\x5b\\x9d\\xa2\\x87\\x0e\\xdf\\xac\\x65\\x1e\\x7a\\xa1\\xba\\x43\\x7f\\xde\\xc5\\xeb\\xe1\\x77\\x2c\\xde\\x16\\x91\\x6b\\xfb\\x5e\\xb4\\x2e\\xaf\\x27\\xa8\\x38\\x9b\\x2f\\xc7\\xde\\x9f\\xd8\\xc0\\xe7\\xbb\\x1b\\x03\\xfe\\xa3\\xd8\\x3b\\x8a\\x63\\x7f\\x0c\\xc8\\xe1\\x76\\x46\\xd5\\x8f\\xdf\\xe1\\xc6\\x44\\xa9\\x67\\xe9\\x9a\\xe9\\x33\\x13\\x3e\\xa0\\x68\\xa9\\x9e\\xaf\\x7f\\xff\\xb1\\x1b\\x0c\\x8c\\x9b\\xb4\\x43\\xf2\\xde\\x50\\x00\\x10\\x8a\\x4e\\xab\\xa3\\xb1\\xc3\\xb7\\x73\\x0c\\x3c\\xb5\\x9b\\xfa\\xc1\\x92\\x00\\x8c\\xc5\\x09\\x38\\xa5\\xe1\\x8e\\xc5\\x06\\x90\\xfe\\x1e\\x48\\x87\\xee\\x54\\x6b\\x39\\x31\\x01\\x9d\\x70\\x92\\xde\\x71\\xc7\\x78\\x47\\x54\\x0b\\xc5\\xca\\x54\\x18\\xb3\\xe8\\x0f\\x82\\xcb\\x36\\xf8\\x88\\xe3\\x09\\xaa\\xa0\\x5e\\x1c\\xfb\\x71\\x1c\\xc4\\x71\\xec\\xc5\\xf1\\x51\\x8b\\x0b\\xd5\\x13\\x59\\xda\\x03\\xfb\\xc9\\x9f\\x89\\x5c\\x9f\\x40\\x94\\x5e\\x15\\x74\\xce\\xd0\\x1f\\xc1\\x40\\x05\\x31\\x83\\xe3\\x76\\xfd\\x04\\xfa\\x0f\\xce\\x81\\x08\\x8e\\xb6\\xc3\\xb1\\x17\\xb2\\x5b\\x43\\x2b\\x08\\xeb\\x96\\x05\\x84\\xc0\\x30\\x8a\\x2c\\x59\\xca\\x29\\xe6\\x2c\\x14\\xd3\\x48\\xbe\\xe9\\x5e\\xe0\\x05\\x71\\x97\\x99\\xda\\x7a\\xf6\\x70\\x4a\\x1d\\xca\\xc0\\x6a\\x86\\x80\\x8d\\xe3\\x09\\xe7\\xf1\\x35\\x8e\\x95\\xc9\\xcb\\x3c\\x3f\\x93\\x06\\xc1\\x06\\xea\\xba\\x61\\xe5\\xa1\\x17\\xb2\\xdf\\x77\\xc3\\xde\\xa6\\xc0\\xaf\\xe1\\x64\\x24\\x64\\x3f\\x8e\\x91\\x14\\x0c\\xdd\\x0f\\xb7\\xbf\\xce\\xda\\xe6\\x7a\\x79\\x60\\x8d\\x7d\\x56\\xb2\\x76\\x6a\\x07\\x6d\\xf7\\x7b\\xdf\\x6e\\xd7\\x6c\\xbd\\x8b\\xed\\x82\\x3d\\x25\\x22\\x6b\\x4e\\xfd\\x07\\x23\\x40\\x3f\\xb7\\xc7\\x66\\xe8\\xe9\\x5c\\xa7\\x57\\xed\\x57\\x10\\x88\\x31\\xfe\\xff\\x82\\x5c\\x3c\\x2d\\xb3\\x67\\x72\\x91\\x44\\x5e\\xcb\\x86\\x71\\xdc\\x9f\\x0c\\x60\\x97\\x2e\\x89\\xf8\\x5d\\xda\\x24\\xf6\\x58\\xa6\\x83\\xa3\\xc8\\x3b\\xea\\x50\\xd5\\x05\\xd7\\x1d\\x4a\\xd8\\x00\\xc5\\x4c\\xe7\\x94\\x4f\\x74\\xb4\\x73\\x16\\x47\\xde\\xf3\\x51\\x18\\xf8\\xec\\x8d\\x3a\\x04\\x86\\x87\\x70\\x7a\\x01\\x54\\x02\\x02\\xec\\x8b\\x6c\\xe3\\xaa\\x72\\xe7\\xc0\\x5e\\x5a\\x69\\xba\\xbc\\xd8\\xf1\\x02\\x20\\xa2\\xdc\\x14\\xd6\\xcd\\x7d\\xf5\\xee\\xd7\\x9b\\x2f\\xff\\xfb\\x1f\\xb7\\x2e\\x7a\\x01\\xb8\\x56\\x8d\\xb6\\xf2\\x58\\x1f\\x0a\\x25\\xcf\\x5f\\x9d\\xd8\\xd8\\xe3\\x64\\x77\\x89\\x24\\xa5\\x9a\\x3a\\x34\\x5e\\xc5\\xf1\\xe8\\xe6\\xdd\\xd5\\x97\\xab\\xce\\x7c\\x71\\x3c\\xde\\x1d\\xe1\\x62\\xdc\\x73\\xa5\\x37\\x19\\xf3\\x2f\\xa3\\x38\\x56\\xd5\\x45\\xf5\\x3a\\x70\\x88\\x3d\\x0c\\xb6\\xa8\\x7b\\x21\\xac\\xd9\\x64\\xcc\\x18\\xa4\\xe9\\xb8\\x61\\x49\\x36\\xf0\\xce\\x4f\\xb1\\x0b\\x26\\xb6\\xcc\\x08\\x0a\\x3f\\x51\\xca\\xab\\x9f\\xad\\x82\\x86\\xfc\\xfb\\xcb\\x20\\xc8\\xc1\\x75\\xe2\\x53\\xd3\\xb9\\xb7\\x52\\xeb\\x21\\xe0\\x82\\xb0\\x8e\\x8d\\xe1\\x2e\\x8c\\xed\\x79\\x9c\\x36\\x93\\xee\\xa2\\x63\\xb3\\x4a\\xa7\\x97\\x17\\x07\\x2d\\xcd\\x57\\x62\\x8e\\x3d\\x9c\\x7e\\x87\\xf3\\x17\\x5a\\x17\\x87\\x3c\\x13\\x34\\x26\\x9f\\xdb\\x79\\x95\\xa6\\xba\\x34\\xea\\xe5\\xeb\\x2f\\x5f\\xbe\\xfc\\xe3\\x74\\x64\\xa4\\x62\\xdc\\xeb\\x64\\x0e\\x9e\\xfb\\xf9\\xd3\\x38\\x4e\\xb7\\x7f\\xa9\\xb1\\x6e\\xd1\\xf1\\x82\\x64\\xab\\x92\\xd9\\xc0\\xff\\x2b\\xc6\\x35\\x3d\\xe2\\xf7\\x8f\\x2f\\x03\\xb2\\x3b\\xf1\\xeb\\x1d\\x19\\x78\\xdd\\xc5\\xa5\\x89\\x50\\x6d\\x4a\\xd9\\x0b\\xd9\\xf5\\x8e\\x42\\x69\\x16\\xdb\\xd5\\x59\\x5f\\x21\\xec\\x40\\x45\\x45\\x76\\x34\\x55\\x1c\\xe7\\x15\\x9c\\x69\\xb4\\xab\\xac\\xdc\\x42\\xc6\\xc7\\xab\\x6d\\x2a\\x3b\\x47\\xa7\\xc1\\xc1\\xc1\\x09\\xb5\\x92\\xf8\\x7d\\x47\\xf0\\x85\\xac\\xb6\\xf1\\xa3\\xd4\\x26\\x4f\\x16\\x52\\xe4\\xfc\\x1b\\x4b\\x31\\x3b\\xdc\\x24\\xbb\\x4d\\x42\\xd9\\x65\\x75\\x31\\xaf\\x3d\\x35\\x37\\xc1\\x2e\\x31\\x8b\\x3e\\x18\\x9f\\xd9\\x04\\x77\\x93\\xa1\\x32\\x8e\\x24\\xe6\\x5f\\x8d\\xa7\\x04\\x1b\\x4a\\xf4\\xac\\x68\\x9c\\xcb\\x36\\x45\\x6c\\x8d\\x51\\x4e\\x35\\x7f\\xb4\\xce\\xe7\\xae\\x9b\\x89\\x49\\xf0\\xd6\\xd7\\xd4\\x92\\xe6\\x8a\\xb3\\x5c\\xa3\\x73\\xfa\\xcc\\xf3\\x34\\x59\\x65\\x4c\\x6c\\x35\\x49\\x5d\\x74\\x41\\xa9\\x52\\x4c\\x6a\\x9b\\x69\\x2e\\x68\\xf2\\x00\\xd6\\xaf\\xc9\\xc0\\x9b\\xac\\xbb\\x4d\\x57\\xbf\\xec\\xa5\\xc2\\x66\\x54\\xcb\\x10\\x40\\xdb\\x54\\x24\\xcd\\x8d\\xdd\\xce\\xa5\\xdd\\x3e\\xd4\\xa1\\xbc\\x98\\x4b\\x61\\x3d\\x77\\x4f\\x5b\\x0b\\xfc\\x52\\x5e\\x61\\xdb\\xc9\\x2a\\x34\\x09\\x7d\\xb4\\xbd\\x03\\xeb\\x5a\\x3a\\xe0\\x87\\x81\\xc7\\x9e\\x34\\xcb\\x53\\x85\\x37\\x01\\xe6\\xba\\x7f\\x57\\x9f\\x39\\xe9\\xa5\\xfd\\xdf\\x30\\x41\\xe0\\x1c\\x64\\x64\\xe5\\x3c\\x17\\x70\\xdc\\x36\\x36\\xd9\\xc1\\xff\\x25\\xae\\x2b\\x16\\xc5\\x33\\xc3\\xc6\\x0e\\x5f\\x81\\xf5\\x5c\\xf2\\x35\\x7e\\xfa\\xcf\\xd9\\x49\\xfc\\x34\\x9b\\x75\\xd3\\xb5\\x6d\\xe3\\x71\\x73\\x93\\x36\\x6a\\xaf\\x79\\x0c\\xa1\\xb6\\x7c\\x80\\x85\\xb1\\xdd\\x0b\\x20\\x4b\\xbc\\xa6\\x67\\x3f\\x3b\\x37\\xed\\x66\\x9d\\x69\\xff\\xfa\\x76\\xfc\\x3c\\x0f\\x35\\xed\\xde\\x9e\\x19\\x98\\xb1\\x4d\\x78\\xc2\\xd7\\x7b\\x97\\x97\\xee\\x26\\x17\\xf7\\x48\\xb9\\x6f\\xf7\\x1e\\x4c\\x22\\xd8\\xe6\\x4f\\x27\\x22\\x4f\\x18\\xc9\\xb8\\xea\\x48\\xdd\\x3c\\x13\\x53\\x9a\\x35\\x62\\x87\\xd7\\x90\\xed\\x85\\x0d\\x55\\x4e\\xf6\\xe0\\x3c\\x0d\\x7f\\x52\\x29\\xe9\\xa6\\x91\\x45\\x96\\xa7\\x46\\xfe\\x84\\xec\\xc8\\x25\\xcb\\x53\\x77\\x2b\\x84\\xf9\\x63\\x73\\x15\\x81\\x57\\x9e\\x4a\\x31\\xed\\x58\\xbf\\x95\\x4b\\xbc\\xf9\\x74\\x43\\x8c\\x14\\x83\\x14\\xf2\\x99\\xc3\\x9d\\x4c\\x26\\x3f\\xbf\\xbf\\xbb\\x9d\\x4c\\x08\\x5b\\x16\\x7a\\xe3\\x92\\xc7\\x66\\x4b\\xa9\\x20\\x4f\\x42\\x3a\\x41\\x6e\\xb9\\x8e\\x98\\xd4\\x14\\x49\\x32\\x91\\x33\\x52\\x2a\\x98\\xe5\\xe6\\xee\\xea\\xf3\\xe7\\xc9\\x84\\x4c\\x26\\x77\\xef\\xef\\x71\\xbe\\x56\\xda\\x0b\\x09\\x1a\\x89\\x3d\\xd2\\xac\\x23\\xee\\x93\\xc9\\xc7\\xdb\\x2f\\xbf\\xfc\\xfa\\x6e\\x32\\x31\\xa2\\xcd\\x9e\\x12\\x56\\x98\\x97\\x0a\\x16\\xc5\\xa4\\x54\\x4c\\x4e\\x4c\\xe1\\x4a\\x2b\\xdf\\xbc\\x4d\\x6e\\x4f\\x26\\x3f\\xff\\x76\\x7f\\xf3\\xe5\\xfd\\xaf\\xf7\\xb0\\x54\\x9e\\xda\\x2b\\x5d\\xab\\x7a\\x5e\\x94\\x7d\\x43\\xc0\\xe6\\x16\\xc4\\x8c\\x29\\x73\\xa0\\x5d\\x37\\x28\\x6d\\x6e\\xce\\xb4\\xa4\\x5c\\xdb\\x1b\\xb8\\x56\\x3d\\xc1\\x23\\xa3\\xa9\\x98\\x91\\xc9\\xe4\\xdd\\xfb\\x4f\\xb8\\xeb\\xfb\\xab\\x8f\\xb7\\x9f\\xff\\x71\\x75\\x73\\x8b\\xdf\\x16\\x34\\xd3\\x13\\xfb\\xf6\\x83\\xdc\\x8d\\xbf\\x7e\\xb9\\xf9\\xf8\\xdc\\xab\\x39\\x3d\\xac\\x74\\x8a\\x45\\xe1\\x34\\x53\\x1c\\xab\\x5d\\x99\\xdd\\x9b\\xc4\\x99\\xb0\\xe9\\xc0\\xdb\\x5b\\xbe\\xdf\\xbb\\x6c\\xdd\\xf1\\xe7\\xe2\\x71\\x7e\\x7e\\x3e\\x3a\\x8a\\xbd\\xf1\\x65\\x1c\\xaf\\x7b\\xe6\\xe9\\xb5\\x4b\\xd3\\xaf\\x7b\\x43\\x6f\\x5f\\xb2\\x9e\\xdd\\x35\\x81\\xd7\\x57\\x2c\\x8a\\x1d\\x55\\xf4\\x0c\\x08\\x3d\\xc2\\x3a\\x64\\xff\\x37\\xf1\\x2f\\x9a\\xd6\\xd7\\x95\\x09\\x4b\\x01\\x8d\\xf4\\x4f\\xa3\\x5c\\xf3\\xb6\\x40\\xc8\\xda\\x38\\xb7\\x49\\xf1\\x06\\xee\\x29\\x09\\x5a\\xea\\x7d\\x57\\x21\\x9b\\x10\\x68\\x80\\x61\\xde\\xeb\\xf1\\x9e\\x3a\\x76\\x2e\\x7c\\xab\\x96\\x0d\\x8a\\xe3\\x3a\\x4c\\x9d\\x47\\x7d\\xe1\\xd5\\x87\\xd7\\x7f\\x49\\xdf\\x6e\\xf4\\x42\\xe4\\xcf\\x54\\xae\\xbd\\xde\\x2f\\xa4\\x58\\x16\\xd6\\xf1\\xf1\\x2f\\x2e\\x2e\\x4c\\x15\\x10\\xfc\\x04\\xa4\\xb9\\xc2\\x79\\xe6\\xe3\\xf8\\x65\\x35\\x0d\\x2e\\xe5\\xe5\\xd1\\x91\\x55\\x83\\x47\\x46\\x11\\xce\\xc6\\x87\\xd3\\xf6\\x47\\x6e\\x80\\xe7\\x59\\xdd\\xea\\x19\\xed\\xfa\\xd2\\x00\\x58\\x41\\x56\\xa5\\x0c\\x9e\\xa9\\xd9\\x97\\x17\\x40\\xf8\\x67\\xaa\\xfb\\xa5\\xf9\\xa7\\xd5\\xf4\\xc0\\xec\\x07\\x26\\x46\\xc0\\xe7\\x16\\xa1\\x39\\x83\\x6e\\x32\\x69\\x1c\\x0c\\x3b\\xe6\\x6c\\x5f\\xdf\\x77\\x4c\\xc1\\x9f\\x73\\x9b\\xb1\\xb2\\xb3\\x71\\xe7\\x80\\x5d\\xa0\\xd7\\xe5\\xac\\x81\\xe1\\xa7\\xd7\\xdb\\x68\\x18\\xc7\\xb9\\xe1\\x27\\x16\\xa6\\x76\\xdb\\x07\\x8a\\x30\\xd0\\xc6\\xe0\\xad\\x2d\\x57\\xce\\xa0\\x50\\x45\\x6c\\xaa\\x4f\\x8a\\x25\\x91\\x94\\x2b\\x66\\x2c\\x03\\x6a\\xcf\\x8e\\x67\\x86\\x15\\x02\\x2e\\x45\\xa0\\x94\\x53\\xe2\\xec\\x89\\x25\\x5d\\xd5\\x9c\\x0b\\x6d\\xf2\\x7c\\xc6\\x05\\xb1\\xfe\\x95\\x49\\xdb\\x81\\x16\\x35\\xd6\\xa5\\x53\\xf4\\x90\\x81\\x45\\x4a\\xd9\\x8c\\x64\\x74\\x39\\x4d\\x29\\xc9\\x45\\x9e\\x89\\x84\\x66\\xd5\\xdb\\x33\\x2f\\x9c\\x96\\x3c\\xd3\\x13\\x9e\\x0f\\xbc\\x7b\\xb0\\x0c\\x5f\\x40\\xa5\\xfe\\x8c\\x2a\\xf5\\x36\\xcb\\x78\\xa1\\xb8\\x22\\xf7\\x42\\xbf\\x77\\x86\\x84\\xa5\\x5e\\x0d\\x34\\xf1\\xcf\\x4f\\xab\\x93\\x0b\\xbc\\xcd\\x05\\xaa\\x24\\xcd\\x79\\xcd\\xac\\xbe\\x6c\\x1d\\x82\\xe9\\xbe\\x02\\xb1\\xf7\\x43\\x3b\\x5e\\xc3\\x74\\x47\\xba\\x1b\\x71\\x46\\x98\\xc6\\x21\\x4a\\x59\\x22\\xb0\\x0a\\xa2\\x93\\x64\\x79\\xed\\x39\\x37\\x7d\\xea\\x23\\x09\\x2b\\xa0\\x57\\x00\\xe7\\x5e\\x8f\\x5f\\x14\\x5b\\xb5\\xca\\x0e\\xa6\\xee\\xf7\\x82\\x64\\x57\\x75\\x61\\x99\\x9a\\xcd\\x79\\x5e\\x61\\x1c\\x50\\x81\\x12\\xe7\\xba\\x92\\x22\\xcb\\xa6\\x34\\x79\\xa8\\x14\\x7d\\x64\\x85\\x80\\xe5\\x33\\x91\\x3c\\x54\\x14\\xac\\x60\\x65\\x4a\\x74\\xab\\x54\\x8a\\xa2\\x92\\x0c\\x4c\\x54\\x95\\xd0\\x2c\\xab\\x4c\\xb6\\xb5\\x4a\\x45\\xb5\\xa0\\x79\\x9a\\x31\\x59\\xf1\\x1c\\x0e\\xb1\\xca\\x04\\x4d\\x2b\\x5b\\x86\\x5c\\x99\\xa4\\x57\\xa5\\x65\\x09\\x94\\x65\\x55\\x59\\xa4\\xf0\\xa1\\x98\\xae\\xd4\\x42\\xac\\x2b\\x73\\xc1\\x5f\\xcd\\x25\\xcd\\x75\\x00\\xdb\\xbf\\x7c\\x35\\x30\\x01\\x6a\\x27\\x95\\xb3\\xc3\\x9b\\x59\\xd6\\x94\\x48\\x58\\xde\\x5c\\x8a\\x1c\\x18\\xa9\\x94\\xe0\\x1c\\x4c\\x34\\x5f\\x32\\xa5\\xe9\\xb2\\xb0\\x55\\x1a\\x73\\x41\\x24\\x7b\\x14\\x0f\\x8c\\xa8\\x25\\xcd\\x32\\x53\\xc1\\x92\\xf2\\x04\\x0b\\x51\\x58\\x9e\\x9e\\x20\\x6b\\xa6\\x5c\\x25\\x22\\xcf\\x59\\xa2\\xc9\\x37\\x60\\x21\\xc3\\x9b\\x0b\\x0a\\x4e\\x15\\x93\\x96\\x3f\\xf1\\x45\\x23\\x41\\x68\\x9a\\x36\\xab\\x81\\xbf\\x40\\x4a\\x05\\xe1\\x00\\xcf\\x8b\\x52\\x13\\x64\\x4a\\x82\\xa4\\x23\\x4b\\x53\\xd2\\x23\\xb2\\x0c\\x7c\\x31\\xc9\\xc0\\x43\\x58\\xb0\\x9c\\x38\\x82\\x63\\x2d\\x88\\x64\\x34\\x25\\x2d\\xd2\\x8a\\x29\\xc5\\x45\\x6e\\x26\\x06\\x29\\x01\\xef\\x6d\\xce\\x24\\x99\\x72\\x4d\\xca\\x9c\\xaf\\x40\\x1a\\xe8\\x86\\x2c\\x79\\x5e\\x6a\\x86\\xd5\\x25\\xc4\\x10\\x1e\\x65\\x0c\\xda\\x32\\xfe\\xc0\\x08\\x87\\xdf\\xd5\\x7f\\x90\\x8c\\x3d\\xb2\\xac\\x2d\\x1a\\x92\\xa2\\x68\\xa5\\x8a\\x2b\\x0c\\x72\\x44\\x4e\\x66\\xa2\\xcc\\x53\\x5b\\x5d\\x82\\x6e\\x9f\\xa4\\x1c\\x1c\\xae\\x54\\x2c\\x29\\xcf\\x89\\xe4\\xf3\\x85\\x89\\xb2\\x04\\xb8\\x39\\x4a\\x2c\\x99\\x2b\\x3d\\xc0\\x88\\x8a\\x9a\\x1c\\xbf\\x64\\x99\\x09\\xc4\\x4c\\xe5\\x31\\x71\\x14\\x65\\x2a\\xa1\\x05\\x03\\xb7\\x0d\\x23\\x46\\xa5\\xd9\\xd2\\xec\\x6f\\x66\\x64\\x9a\\x49\\xc9\\x52\\x18\\x64\\xde\\xf8\\xa6\\x4a\\x3b\\xfa\\x12\\xb5\\xca\\xc0\\x63\\x65\\x04\\x4b\\x7a\\xe0\\x01\\xbd\\x59\\x80\\x25\\x29\\x6b\\x1a\\xf3\\x72\\xc9\\x24\\x78\\xa0\\xce\\x11\\x65\\x8a\\x49\\x88\\x08\\xc1\\xad\\xb5\\x6e\\x14\\x07\\x9e\\xc9\\x36\\x84\\xaa\\x84\\xe4\\x82\\x3c\\xb0\\x0d\\x11\\xa5\\x86\\x33\\x33\\x27\\x84\\xef\\x2e\\x60\\x61\\xce\\x74\\x03\\x94\\x16\\xb9\\x3b\\x0c\\x32\\x15\\x7a\\x41\\x32\\xc0\\xcb\\x15\\x60\\x77\\xa8\\x04\\xc3\\xcb\\x65\\x4e\\xc4\\x8c\\x18\\xe7\\x0d\\xfc\\x5e\\x3e\\xcf\\xed\\xce\\x28\\xc6\\x86\\x92\\x1b\\x87\\x3a\\xb7\\x9b\\x2c\\xf3\\x87\\x5c\\xac\\x73\\x62\\x29\\x67\\x24\\x91\\x3c\\x72\\xb6\\x06\\x3d\\x87\\x6f\\xb2\\x9b\\xfa\\x20\\x13\\x46\\x6f\\x18\\x95\\x30\\xc9\\x92\\xca\\x0d\\x10\\x28\\xa1\\x29\\x7a\\xd9\\xa8\\x7c\\x25\\x33\\x11\\x32\\xd6\\x0a\\x49\\x58\\x94\\xe5\\x09\\x53\\xc6\\x9d\\x24\\x1a\\x11\\x10\\x25\\x30\\xa4\\x28\\x58\\xde\\x14\\x16\\xf1\\x6f\\x8c\\x80\\x1b\\x0a\\x51\\xa9\\x51\\xeb\\xe0\\x3d\\x41\\x4b\\xca\\x95\\xe6\\x79\\xa2\\x49\\xc6\\x28\\x16\\x2e\\x19\\x1d\\x40\\xb0\\x0a\\x0b\\xcb\\x46\\xb0\\x1e\\x9e\\xd0\\x52\\x2f\\x84\\xe4\\xdf\\x0c\\xed\\x54\\xb2\\x60\\x4b\\x4a\\x12\\x21\\x25\\x53\\x85\\x30\\x25\\x4f\\xc2\\xb8\\xd6\\xce\\xe5\\x2d\\x24\\x4b\\x38\\x92\\x94\\x2f\\x31\\x79\\xac\\x6d\\xb5\\x1a\\x08\\x00\\x08\\xde\\xc4\\xf2\\xb5\\xa9\\x54\\xa3\\x19\\x84\\x1a\\x1b\\x98\\x08\\xf9\\xcc\\x9e\\x12\\xba\\xcc\\x7b\\xce\\x3b\\xd6\\x51\\x2d\\x44\\x29\\xf7\\xc3\\x72\\x95\\x80\\xb8\\xd9\\x1a\\xaa\\xa4\\x94\\x0a\\x79\\xce\\x24\\xa7\\x84\\x34\\xed\\x0a\\x10\\x24\\x33\\x06\\xe2\\x8a\\xfe\\x63\\x5a\\x4a\\xe6\\xee\\x93\\xda\\xd2\\x1b\\xd4\\x1d\\xca\\x8e\\x9e\\xda\\xa4\\x06\\x55\\x84\\x62\\x6d\\xdc\\x23\\x95\\xd8\\x80\\xa1\\x14\\xb0\\x46\\x06\\x78\\xd3\\x7c\\x03\\xd1\\x99\\xc8\\x60\\x57\\x5d\\x1d\\x85\\x65\\x39\\xa8\\xf7\\x30\\x5a\\xe3\\x19\\x9b\\x33\\x65\\x2a\\x73\\x12\\x29\\x94\\x32\\x45\\x4f\\x64\\x2d\\x79\\x67\\x60\\x8a\\x15\\x72\\x34\\xb5\\xe5\\x3a\\x9a\\x81\\xa5\\x05\\x9e\\x40\\x25\\x86\\xd3\\x1a\\x0d\\x0b\\xc1\\x0e\\xcd\\xc4\\x9c\\xa0\\x9c\\xa9\\x55\\x46\\x52\\x73\\x82\\x84\\xa7\\x2c\\xd7\\x5c\\x6f\\x5a\\x92\\x23\\xd5\\x72\\xaa\\x4b\\x49\\x33\\x44\\x80\\x3d\\x32\\x69\\xe4\\x0c\\x42\\xa7\\xb5\\x90\\x0f\\xa6\\x3a\\xcd\\x71\\x1e\\x49\\x39\\x9d\\xe7\\x42\\x69\\x9e\\x28\\x92\\xe3\\xa6\\x17\\xf4\\x11\\x76\\x9b\\xb1\\x99\\x26\\x60\\x1e\\x20\\x86\\xb3\\x76\\x81\\x80\\x41\\x20\\xd6\\x20\\x10\\x67\\x09\\x08\\x9a\\x20\\x53\\x36\\x08\\x96\\xc0\\x95\\x7a\\xb1\\x27\\xae\\xb4\\x22\\x2e\\x1f\\x47\\xe7\\x73\\x89\\xe5\\x8d\\x10\\x72\\x94\\xa0\\x10\\xca\\x25\\xe8\\x3e\\xb2\\xa4\\x4f\\x84\\x3e\\xce\\xbd\\xfa\\x50\\x82\\x6d\\xdf\\x69\\x0b\\x77\\x8b\\x57\\xbf\\x57\\x6c\\xd3\\xc0\\x9b\\x42\\xb2\\xc3\\xa5\\x37\\xff\\xc4\\xf9\\xff\\xd9\\x75\\x0a\\x6d\\x8d\\xd9\\x5e\\xf6\\xbf\\x1b\\x6b\\x9d\\x9c\\xfc\\xe9\\xbd\\x2b\\xcf\\xf9\\xf7\\x2c\\x7a\\xe7\\x76\\xe2\\x50\\xed\\xdf\\x70\\xf7\\xd2\\xb7\\x4d\\xaa\\x7e\\xdd\\xc9\\x6e\\xdb\\xdd\\x30\\xad\\xdd\\x76\\xbe\\x8e\\xdc\\x7d\\xc1\\x28\\x8e\\xc7\\x93\\x93\\x71\\x6f\\x44\\xe2\\x58\\x8f\\x8f\\x23\\xfb\\xb9\\x9f\\x2d\\xdd\\xbb\\x0f\\x79\\x18\\x78\\x02\\xf4\\xdf\\xac\\x1b\\xcc\\x6e\\x40\\x03\\x09\\x4b\\xa2\\xf6\\x32\\xe8\\x3b\\x59\\xdd\\x82\\xc9\\xec\\x50\\x21\\xde\\x9c\\xe9\\x62\\x0d\\xc6\\x60\\xce\\x34\\xaa\\xf5\\x5c\\x93\\x55\\x29\\x34\\x5b\\x32\\x4d\\xc9\\x52\\xcd\\x65\\xf2\\x48\\x54\\x42\\x33\\x2a\\xc9\\x03\\x07\\xde\\x9b\\x2e\\x8d\\xad\\x31\\xd5\\x6a\\x59\\x42\\x96\\x14\\xec\\x8e\\x91\\x25\\x2d\\x89\\x02\\xd9\\x2b\\x97\\x54\\x3d\\x40\\xb3\\xd1\\x8a\\x8b\\xa5\\xe9\\x7e\\x64\\x09\\x59\\x3d\\x91\\x12\\x85\\xc9\\x58\\x73\\x81\\xba\\x75\\x99\\xe8\\xcc\\x34\\x60\\x17\\xd8\\xed\\x82\\x17\\xac\\x73\\xb3\\x3d\\x13\\x72\\x49\\xad\\x45\\x57\\xe8\\xc7\\xcd\\x00\\x17\\x9c\\xbf\\x10\\x05\\xe0\\x5f\\xcc\\x65\\x81\\x66\\x1d\\x37\\x95\\xd3\\x25\\x91\\x6c\\xcd\\xf3\\x34\\xe5\\x92\\xac\\x56\\x33\\x9e\\xb1\\x5c\\x90\\xd5\\x1a\\x94\\x03\\xbe\\x79\\x03\\x7b\\x5d\\x53\\x8e\\xba\\x7d\\x21\\x94\\x86\\xef\\x53\\xac\\xd1\\x53\\xd5\\x19\\xea\\x73\\x18\\xd9\\xe6\\x19\\x30\\x45\\x93\\x31\\x56\\xc0\\x0c\\x73\\x63\\x42\\x17\\xa5\\x4e\\xc1\\xd6\\xa4\\xe5\\xb2\\x20\\xc9\\x42\\x2c\\x8b\\xc6\\x32\\x03\\x45\\x45\\xf2\\x00\\x96\\x02\\xd3\\x1c\\xf0\\x85\\xe9\\x82\\xc2\\x9c\\x48\\xc1\\x19\\x0a\\xa8\\x15\\x4a\\x7c\\xf1\\x10\\x28\\x05\\xc3\\xca\\xa9\\x4b\\x0d\\x99\\xc3\\xc1\\xca\\x43\\x34\\xd6\\x70\\x24\\x40\\x2b\\x65\\xb7\\x4b\\xa7\\xca\\x24\\x84\\xac\\xe5\\x31\\x41\\x82\\x64\\x33\\x58\\x1e\\x36\\x35\\xdd\\xd0\\x34\\x95\\xa4\\xcc\\xd5\\x82\\xcf\\x34\\x99\\x25\\x39\\x8c\\xde\\x28\\x54\\x24\\x68\\xbd\\xe7\\x4c\\xe7\\xcc\\xc1\\xa1\\xaa\\x9f\\x2f\\xf1\\x14\\xd4\\x66\\x99\\xf1\\xfc\\x01\\x8e\\x07\\x9c\\x29\\xf3\\x47\\x2b\\xc8\\x53\\x75\\x86\\x04\\x66\\x60\\x43\\xf0\\xac\\x92\\x47\\x02\\xda\\x50\\x99\\xfd\\x8a\\x02\\xac\\xb6\\x32\\x26\\x5d\\x82\\xba\\x53\\xac\\x45\\x06\\x87\\xcc\\x99\\x9e\\xc3\\x60\\xa2\\x74\\x99\\x6e\\xf0\\x68\\xb1\\x44\\x95\\xe5\\xa9\\x3b\\x07\\x74\\xda\\x80\\xa0\\x05\\x31\\xaf\\xb7\\xb9\\x29\\x2c\\xaf\\xe6\\x0c\\x9f\\x0a\\xeb\\xe9\\x35\\xe7\\x69\\xd9\\xd8\\x2e\\x24\\xc1\\xbe\\x2c\\x1f\\xe0\\x18\\x0b\\x01\\xd3\\x2d\\x45\\x4a\\x36\\xd5\\x19\\x31\\xaf\\x76\\xc2\\x82\\x6e\\x22\\xc3\\x51\\x68\\x80\\x91\\xa7\\x96\\x6a\\xae\\xf2\\x14\\xf9\\x0d\\x86\\x97\\xc8\\xf1\\x48\\x8e\\x79\\xbb\\x4f\\x5c\\x99\\x0b\\x09\\x2a\\x5f\\x9a\\x13\\x5c\\xd3\\x5c\\x9b\\xb4\\xdf\\x02\\xce\\x13\\x1d\\xb2\\x16\\x2b\\x8c\\xdd\\x58\\x9e\\x3a\\x51\\x43\\x17\\x67\\x21\\xb1\\x54\\x94\\x11\\xb9\\x44\\x4c\\xdd\\x5b\\x61\\x44\\xb3\\x2c\\xc3\\x1c\\x24\\x43\\xfe\\x07\\x65\\xbe\\x44\\x01\\x28\\x13\\xe3\\xc5\\xa8\\xce\\xce\\x99\\xb9\\x32\\x50\\x8a\\xb1\\x07\\xe2\\x10\\x9d\\xcb\\x39\\x4f\\x61\\x18\\xf0\\x0c\\xf0\\x7a\\xc1\\x53\\x52\\xe6\\x8e\\x6c\\x78\\xee\\xf6\\x14\\xc1\\xc1\\x49\\x16\\x80\\xc0\\x5c\\xb2\\x02\\x4f\\x5b\\x37\\xa9\\x39\\x7c\\x77\\x4d\\x92\\xcc\\xae\\x6b\\x2a\\x5b\\xd7\\x54\\xe6\\x36\\x98\\xb4\\x96\\xde\\xf0\\x18\\xa0\\x8d\\xf3\\x80\\x18\\x96\\x3c\\x25\\xcb\\x4d\\x73\\x46\\xd3\\x8d\\xb1\\x3e\\x5d\\x07\\x40\\x61\\xd9\\x77\\xd2\\x14\\xde\\x2a\\x3c\\x36\\x9a\\xa0\\x03\\xe6\\x2e\\x04\\x60\\x5b\\x6e\\x52\\x3b\\x11\\xe0\\xad\\xd8\\x52\\x14\\x04\\x8c\\xac\\x89\\x9f\\x10\\x0e\\x62\\xe9\\x55\\x75\\x06\\x94\\x15\\x42\\x03\\x51\\x8c\\xda\\x70\\xba\\x2e\\x17\\x24\\x91\\x1b\\x73\\x7e\\x09\\x30\\xd9\\x3a\\x27\\x6a\\x25\\xb5\\x75\\x08\\x54\\xc3\\x5e\\xaa\\x73\\xbe\\x4d\\xc6\\x15\\x44\\x99\\x23\\x83\\x80\\x54\\x2c\\x69\\x81\\x79\\x5f\\x98\\x2b\\x13\\x9d\\x3a\\x5f\\x53\\x91\\xdb\\x98\\x64\\x74\\x22\\x1e\\xd8\\xc6\\x44\\xfd\\x30\\x4b\\x6a\\xd4\\x40\\xca\\x25\\x17\\x28\\xd2\\xa8\\x1f\\x90\\xe3\\xf0\\xf8\\x30\\xb7\\x6a\\x72\\xb5\\xd8\\xc2\\xc8\\x94\\xe7\\x4b\\x91\\x22\\x82\\x8e\\x81\\x98\\x98\\x81\\xff\\x00\\x5d\\x29\\x01\\x2d\\xbd\\x24\\xa8\\x38\\xa9\\xa6\\xf9\\x7f\\x18\\x0e\\xb0\\x6f\\x29\\x18\\x0f\\xa6\\x28\\xd5\\x02\\xc6\\x9b\\xe6\\xb9\\x26\\x99\\x06\\xa7\\x38\\x67\\x64\\x59\\x9d\\xd9\\xfc\\xc1\\x9c\\x3f\\x82\\xd2\\xa6\\x1b\\x62\\xc2\\x03\\x70\\x5b\\xbc\\xc3\\x65\\xba\\xa3\\xd7\\x3f\\x8d\\x5d\\xa5\\x6e\\x1c\\xd7\\x10\\x98\\x53\\x9b\\xfb\\xf8\\xce\\xbb\\x35\\x71\\x9c\\x7a\\xae\\x9a\\xf7\\x39\\xc0\\x08\\x21\\x7e\\xc4\\x72\\xb7\\xe3\\xb1\\x1f\\xc7\\x5f\\xe3\\x78\\x1d\\xc7\\xd3\\xea\\x87\\x38\\x5e\\xf7\\xfc\\x38\\x1e\\xe0\\xcf\\xba\\x17\\x1c\\x57\\x68\\xb2\\xe3\\x78\\xbd\\x1d\\x57\\x5b\\x68\\xaa\\xab\\x5d\\x98\\xe3\\xe0\\x38\\xf0\\x5c\\x69\\xa8\\x2d\\xef\\x0b\\xa7\\x21\\x6f\\x6a\\x55\\xc1\\x77\\xb8\\x70\\x05\\x3f\\x58\\x83\\x89\\xfe\\x8c\\x2b\\x98\\xa8\\xc7\\xb5\\x2b\\x17\\x7f\\x56\\xcb\\xec\\xdb\\x62\\xe6\\x6a\\x32\\x79\\x77\\xf5\\xe5\\x6a\\x32\\x09\\xda\\xb2\\xe6\\x50\\x0e\\xfe\\xda\\xa4\\xef\\xa6\\x21\\x0f\\x19\\xe6\\x3c\\xe6\\x87\\xcb\\xa8\\xdd\\x1d\\x64\\x1c\\x47\\x49\\xa9\\x3b\\x79\\xdd\\xc5\\x33\\xef\\x68\\x35\\x5a\\xad\\x9f\\xe4\\xf8\\x32\\x8e\\xd5\\xf1\\x5e\\xea\\x6a\\x86\\x8b\\xfe\\xc9\\x88\\x9d\\x42\\xe5\\x7f\\x6b\\x44\\xe7\\x70\\xff\\xcd\\x11\\x3b\\xc5\\xc1\\xff\\xd6\\x88\\x73\\x3b\\xe2\\xe2\\x7b\\x23\\xd6\\x71\\xac\\x7a\\x2b\\x84\\x5c\\x7d\\x07\\xae\\xeb\\x9f\\xb2\\xe6\\xd5\\xbf\\xef\\xb9\\xa5\\xb3\\x3f\\x77\\x44\\xd9\\xe1\\x6b\\x28\\xc3\\x73\\xde\\xe1\\xf1\\x27\\x98\\x7d\\x37\\x1b\\x8c\\x70\\x6f\\xff\\x6f\\x4a\\x6b\\x77\\xca\\x61\\xb1\\x74\\x0e\\x75\\xb9\\xab\\x9d\\x33\\x39\\x30\\x6b\\x98\\x2b\\xd0\\xf5\\xbb\\x85\\x74\\x4e\\xf1\\x9b\\xbf\\x18\\x67\\xdd\\x09\\x6b\\xc5\\x25\\x2b\\x9a\\xc2\\xa1\\x1d\\x8e\\xee\\x94\\xd4\\xf9\\xaa\\xd2\\xb2\\xda\\x04\\xa7\\x7e\\x1c\\xc7\\x71\\xbf\\x1a\\x7d\\x3d\\x1d\\x07\\xc7\\x7b\\xdf\\x5c\\xed\\x6d\\x27\\x3b\\xdc\\x9d\\x62\\x59\\xad\\x64\\x70\\xb9\\x57\\xa7\\xbb\\x73\\x9e\\xcd\\x61\\x94\\xd3\\xdd\\x5c\\xbf\\x6f\\x25\\xa3\\x7f\\x7c\\x19\\xc7\\x41\\x70\\x39\\x1a\\x6e\\xc7\\x66\\x5f\\xe5\\xd4\\xeb\\x70\\xcc\\x4e\\xe6\\xee\\xc4\\x68\\x18\\x43\\xc1\\x31\\xd6\\xfc\\x26\\x6d\\xcd\\x6f\\xd2\\xe6\\x71\\x69\\x98\\x0c\\x92\\x17\\x2f\\xf4\\xd5\\x81\\x44\\x3f\\x8b\\xb6\\x2f\\xd5\\x48\\x7a\\x2e\\x27\\x3d\\xea\\xbe\\x4a\\xb3\\xfb\\x02\\xa3\\x89\\x05\\x06\\x5e\\x78\\xa8\\x42\\x2a\\x0d\\x1f\\x06\\xac\\xcd\\x4b\\x77\\xea\\xbc\\x0e\\x16\\x21\\x1d\\xe1\\x19\\x1b\\xbe\\x87\\xc7\\x01\\xfc\\x3a\\xda\\x2f\\x94\\x68\\x53\\xf7\\xae\\x1a\\xd2\\x16\\x36\\x24\\xae\\xa2\\xf0\\x73\\xa3\\x51\\xf7\\xab\\x7b\\xcc\\x58\\x97\\xb2\\x4d\\x90\\xd2\\xe6\\x96\\xb7\\x33\\x34\\x75\\x7f\\xfe\\x2c\\xb5\\x7f\\xb9\\x20\\x3c\\x0b\\xa7\\xe1\\xac\\xf9\\x23\\x1b\\x76\\x5f\\xcd\\x80\\x97\\x2a\\x17\\x8b\\xe7\\x17\\xd9\\xd3\\xce\\x5b\\x3d\\x6d\\x5a\\xc1\\xa4\\x79\\x8c\\xa3\\xb2\\x53\\x33\\x61\\x2e\\x2d\\xd9\\x13\\x7a\\x65\\xee\\x8d\\xb3\\xe6\\x45\\x3a\\xfb\\xd2\\x5b\\x0a\\x8e\\x06\\x4f\\x26\\x09\\x55\\xba\\x7a\\x7b\\x86\\x05\\xb1\\x10\\xf9\\x60\\x92\\xaa\\x69\\x35\\xf7\\xb9\\xf6\\x3d\\x38\\xf0\\xdd\\xcd\\x5d\\x70\\xd3\\x6f\\x72\\x5e\\xed\\x25\\x64\\x99\\x2b\\x3e\\x07\\x67\\xa7\\x53\\x8b\\xd1\\x94\\x45\\xd8\\x7b\\xe4\\xf6\\xca\\x17\\x5f\\x6a\\xd4\\x6c\\x59\\x60\\xb2\\x73\\x59\\x9a\\xbc\\x13\\x9f\\xb9\\x9c\\xdc\\x4c\\x72\\x88\\xba\\xda\\x68\\x09\\x1d\\x7b\\x5a\\x6a\\x71\\xb8\\x54\\x23\\x67\\x6b\\xf7\\xbe\\xa2\\x49\\xe4\\x9a\\xac\\x8f\\xbd\\x2e\\x58\\x9a\\xfc\\x0f\\x6c\\x94\\xbb\\x37\\x00\\x25\\xc3\\x9c\\x45\\x21\\x59\\xbb\\xe7\\xbd\\x64\\x90\\x64\\x73\\x70\\x55\\x65\\xfb\\x4a\\xa4\\xdd\\x22\\x4c\\x84\\xbe\\xd9\\x8b\\x57\\xb8\\x6b\\x38\\x8e\\x09\\xb8\\xc3\\xe8\\xe7\\x38\\xdf\\x30\\xe3\\xf3\\x5c\\xcc\\xf0\\xac\\xde\\xfe\\x7f\\x13\\x8d\\x0f\\x7f\\xf9\\x8f\\x89\\x36\\xd4\\x66\\x4f\\x85\\xc4\\xe4\\x17\\xfa\\xca\\xb9\\xb0\\x19\\x3b\\xe0\\xb7\\x42\\x37\\x07\\x60\\x6f\\x3f\\xf4\\x02\\xbc\\xa8\\x89\\x89\\x39\\x9b\\xa4\\xde\\xe4\\x1a\\x08\\x9b\\x88\\x65\\x91\\xb1\\xa7\\xee\\x55\\x87\\xd2\\xa9\\x7b\\xb7\\x31\\xe1\\x39\\x49\\x44\\xa9\\x49\\xc2\\x24\\x46\\x6e\\x73\\xdb\\xa3\\xb4\\x64\\x74\\x49\\xf8\\xce\\x37\\xb1\\xf3\\x0d\\x4e\\x60\\x02\\xc8\\xa4\\x6c\\x55\\xda\\x72\\x82\\x55\\xc9\\x4a\\x66\\x5e\\xa5\\x84\\x78\\x18\\x38\\x0d\\x7d\\x48\\xa6\\xc9\\x94\\x6b\\xf8\\x58\\x96\\x99\\xe6\\xcd\\x03\\x74\\x96\\x39\\xe6\\x88\\x58\\x3a\\x81\\xe6\\xf6\\xdb\\x6e\\x5f\\x33\\x6e\\xaf\\x09\\xa0\\x4c\\x48\\xa2\\x16\\x14\\x5a\\x0b\\x2d\\xbd\\xce\\xe5\\xd4\\x14\\x44\\xed\\xfc\\xf4\\x60\\xc1\\x74\\xa7\\xd2\\xa5\\x6b\\x63\\x41\\x99\\x5f\\xf6\\x3b\\xaf\\xea\\xf7\\xbd\\x43\\x2f\\x75\\x4c\\xfd\\x97\\xfe\\xc8\\x41\\x59\\xfd\\x56\\x65\\xd5\\x5d\\x55\\x66\\xd5\\x6f\\x77\\xd5\\xac\\xfa\\x39\\xf0\\x76\\x4a\\x5b\\x5e\\x7c\\xfb\\xb1\\xb1\\xb3\\xd9\\x04\\xd8\\x87\\xf2\\xbc\\xb3\\x1a\\x92\\xb9\\x02\\x32\\x57\\x48\\xe6\\x0a\\xc9\\x5c\\x19\\x32\\x57\\x4b\\x5a\\xe0\\xe5\\x88\\x21\\x73\\xe5\\xc8\\x55\\x39\\x22\\x55\\x3b\\x84\\xad\\x76\\x88\\x5e\\x3d\\x27\\xf3\\x7e\\x13\\x8c\\x41\\x32\\xa3\\x2d\\x3d\\x6f\\x2b\\x01\\xa7\\x4d\\x35\\xa4\\xb9\\x5c\\xec\\xa6\\x69\\xfe\\x4f\\x00\\x00\\x00\\xff\\xff\\xaf\\x0d\\x00\\x0e\\x22\\x58\\x00\\x00\"\n\nfunc assetsClientStaticJsHighlightMinJsBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticJsHighlightMinJs,\n\t\t\"assets/client/static/js/highlight.min.js\",\n\t)\n}\n\nfunc assetsClientStaticJsHighlightMinJs() (*asset, error) {\n\tbytes, err := assetsClientStaticJsHighlightMinJsBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/js/highlight.min.js\", size: 22562, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticJsJquery191MinJs = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xcc\\xbd\\x6b\\x97\\xdb\\x36\\x96\\x28\\xfa\\xfd\\xfc\\x8a\\x22\\xdb\\xc3\\x00\\x25\\x88\\x25\\xd9\\x49\\x9f\\x09\\x15\\x14\\x8f\\xe3\\x47\\xc7\\xd3\\xb1\\x9d\\x8e\\xdd\\x93\\xf4\\x50\\x74\\x16\\x25\\x42\\x2a\\xc6\\x14\\xa8\\x90\\x50\\x3d\\x22\\xb2\\x7f\\xfb\\x5d\\xd8\\x00\\x48\\x90\\xa2\\x1c\\xf7\\x9c\\xb9\\xeb\\xde\\x0f\\x55\\x22\\x41\\xbc\\xb1\\xb1\\x5f\\xd8\\x7b\\xe3\\xea\\xd2\\xb9\\xf8\\xf5\\x6f\\x07\\x56\\x3e\\x5c\\xdc\\xce\\xfd\\xaf\\xfd\\xf9\\x45\\x7d\\x81\\xd6\\xf8\\xe2\\xf1\\x6c\\xf6\\x15\\xb9\\x78\\x3c\\x9b\\x3f\\x36\\x9f\\x5f\\x16\\x07\\x9e\\x26\\x22\\x2b\\x38\\xb9\\x78\\xc5\\xd7\\xfe\\x45\\x7d\\xf1\\xeb\\x6f\\xf2\\x8b\\x5f\\x94\\xdb\\xab\\x3c\\x5b\\x33\\x5e\\xb1\\xff\\x75\\x75\\xf5\\x7f\\x2e\\xaa\\xe2\\x50\\xae\\xd9\\xeb\\x64\\xbf\\xcf\\xf8\\xf6\\xef\\x3f\\x7e\\x4f\\x75\\xbe\\x5d\\xc6\\xfd\\x5d\\xb2\\xff\\x5f\\x97\\x57\\x68\\x73\\xe0\\x6b\\x59\\x15\\x62\\x44\\xe0\\xe3\\x6d\\x52\\x5e\\x70\\x52\\x92\\x8c\\x8a\\x87\\x3d\\x2b\\x36\\x17\\x82\\x14\\x94\\xf9\\x69\\xb1\\x3e\\xec\\x18\\x17\\x24\\xa1\\xcc\\xcf\\x8b\\xb5\\x6a\\xbc\\xa2\\xcc\\x57\\x5d\\x22\\x07\\xca\\xfc\\x47\\x24\\xa7\\xc7\\x86\\xac\\x69\\x14\\x93\\x3d\\x75\\x61\\x0c\\x2e\\xd9\\xd0\\xb5\\xbf\\x2e\\xf8\\x3a\\x11\\x24\\xa5\\x6b\\x7f\\x7f\\xa8\\x6e\\xc8\\x0d\\x5d\\xfb\\x95\\xec\\x27\\xd9\\xd2\\xb5\\x9f\\xf1\\x94\\xdd\\xbf\\xdd\\x90\\x1d\\xcd\\x7d\\x51\\xbc\\x13\\x65\\xc6\\xb7\\xe4\\x81\\xe6\\xfe\\x4d\\x52\\xbd\\xbd\\xe3\\x3f\\x94\\xc5\\x9e\\x95\\xe2\\x81\\xdc\\xd2\\xbd\\x2f\\xca\\x6c\\x47\\x56\\xb4\\xdf\\xe9\\x92\\x89\\x43\\xc9\\x2f\\x38\\xbb\\xbb\\x58\\xf9\\x1b\\xee\\x67\\x3c\\x13\\xf2\\x0b\\x29\\x71\\x43\\xee\\xe9\\x55\\x34\\x99\\xc6\\x21\\x0a\\x83\\x65\\x7a\\xb9\\xf4\\x6b\\xbc\\x4c\\x27\\x28\\x0c\\x22\\xf6\\x22\\x86\\x0f\\xcb\\x74\\x52\\xe3\\x2b\\x5f\\x4d\\x15\\xb9\\xa3\\x57\\xcb\\x77\\x93\\xab\\x2d\\x79\\x4f\\xaf\\x3e\\x44\\xcb\\x6a\\x79\\x78\\xf9\\xe2\\xe5\\xcb\\xe5\\xfd\\xd3\\x59\\x3c\\xa9\\x07\\xef\\x8f\\xae\\xb6\\xe4\\x0d\\xbd\\xfa\\x80\\xc2\\x00\\x7d\\x13\\x2d\\xef\\x96\\x3f\\xc5\\x93\\x6b\\x1c\\x7d\\xb8\\x8e\\x2f\\xeb\\x3f\\xa1\\x68\\x79\\x37\\x8d\\x2f\\x31\\x7e\\x74\\x45\\x9e\\xd1\\xab\\x0f\\xdf\\xa0\\xe5\\xdd\\x04\\x2f\\xab\\xcb\\xe5\\x55\\x78\\x8d\\xc2\\xe0\\x9b\\xe5\\xd5\\x72\\x7e\\x5d\\xcb\\xcf\\x1f\\xa1\\xa9\\x98\\x04\\xc7\\x66\\x59\\xc5\\x97\\x8f\\xae\\xc8\\x0b\\x7a\\x85\\xc2\\xe0\\x43\\x1d\\xd4\\x04\\xcb\\x8e\\x57\\x97\\xcb\\x08\\xcb\\x5e\\xbd\\xa3\\x57\\xcb\\xa5\\xec\\xbd\\xbb\\x5c\\x2e\\xaf\\x56\\x1b\\x5e\\x8a\\xb8\\x3e\\x44\\xcb\\x34\\x99\\x6e\\x9e\\x4e\\x5f\\xc6\\xc7\\x2f\\x1b\\x7c\\xb5\\x25\\x4f\\xe9\\x95\\x1b\\x7d\\x90\\x79\\xca\\x25\\x8f\\x2f\\xdd\\x5a\\x94\\x07\\x56\\x6f\\x92\\xbc\\x62\\x35\\x3f\\xe4\\x79\\x3d\\x55\\xf3\\x31\\x39\\x3b\\x1f\\x5b\\xf2\\x2b\\xbd\\xfa\\x30\\xdd\\x55\\xd3\\x2b\\xf2\\x9c\\x5e\\x4d\\x11\\xb4\\xf1\\x7b\\x8c\\xaf\\xb6\\x19\\xf9\\x7e\\x7c\\x01\\x84\\x2f\\x8a\\xbf\\xef\\xf7\\xac\\x7c\\x96\\x54\\x0c\\xe1\\x86\\x7c\\x67\\xe5\\xc3\\x47\\x54\\xf8\\x49\\x9a\\xbe\\xb8\\x65\\x5c\\x7c\\x9f\\x55\\x82\\x71\\x56\\xd6\\xb5\\x9b\\x17\\x49\\xea\\x52\\x4a\\x99\\x2f\\x21\\xae\\xae\\xdd\\x75\\xb1\\xdb\\xe7\\x4c\\x30\\x99\\x58\\xf8\\x25\\x4b\\xd2\\x87\\x77\\x22\\x11\\x0c\\x7b\\x1e\\xfa\\x0d\\x61\\xb2\\x52\\x69\\x08\\xe3\\x86\\xfc\\xd6\\x35\\x80\\x8f\\xa7\\xd5\\x87\\x48\\x56\\xb0\\x2b\\x6e\\x59\\x2f\\x19\\xb9\\xcf\\xdf\\xbe\\x7e\\x56\\x70\\x21\\xd3\\x8a\\x24\\x65\\xa9\\x4b\\xbe\\x23\\xce\\x1c\\x13\\x36\\x9e\\x1d\\xfa\\xa8\\xb2\\xe0\\x00\\x15\\x7e\\xca\\x44\\xb2\\xbe\\x81\\x4c\\xc8\\x2d\\x38\\xf4\\xa7\\x92\\x7d\\x5c\\xdf\\x24\\x7c\\xcb\\x5c\\xf2\\x9d\\xac\\x6a\\x90\\x4b\\x57\\x82\\x71\\xb3\\x90\\x50\\x4a\\x57\\xfe\\xbe\\x2c\\x44\\x21\\x47\\x4d\\x8f\\x6a\\x5f\\x06\\x7b\\xb2\\x2e\\x78\\x25\\xca\\xc3\\x5a\\x14\\x65\\xb0\\x22\\x12\\x92\\x03\\x6b\\xae\\x39\\x29\\xd5\\x1e\\xcd\\x48\\xb2\\xc8\\x36\\xc8\\x61\\xd8\\xcc\\xfd\\x4d\\x56\\xc9\\x14\\xb7\\x82\\xfd\\xe3\\x52\\xb3\\x81\\x19\\x3e\\x66\\x1b\\x94\\x51\\xf7\\x1b\\x35\\xcb\\xeb\\x9b\\xa4\\x7c\\x2a\\xd0\\x0c\\x7b\\x9e\\x7b\\xdd\\x4b\\x62\\x7e\\xce\\xf8\\x56\\xdc\\x4c\\xe7\\xd8\\xf3\\xcc\\xcb\\x35\\x7d\\x12\\x46\\x12\\x64\\x08\\x23\\xf2\\x27\\x0e\\xde\\xf8\\xec\\x9e\\xad\\x11\\xc3\\xc4\\xc9\\xea\\xda\\xc9\\xa2\\x79\\xec\\x79\\x5c\\xf7\\xc3\\xe1\\x75\\xcd\\x7d\\x35\\x9a\\x10\\xf1\\xba\\x2e\\xb1\\xbf\\xc9\\x78\\x8a\\x18\\x0e\\x64\\x17\\x7d\\x6b\\x7c\\x88\\xb7\\xdf\\x64\\xcf\\x65\\x45\\xd0\\x57\\x4e\\xf9\\x45\\xc6\\x2b\\x91\\xf0\\xb5\\x1c\\xc0\\x2a\\xe4\\xd1\\x2c\\x0e\\x38\\x59\\xf9\\x3b\\x56\\x6e\\x19\\x92\\xf5\\x90\\x95\\xbf\\x4f\\xca\\x8a\\x7d\\xf7\\xfe\\xf5\\xf7\\x50\\x92\\x70\\xcf\\xe3\\x3e\\x2f\\x52\\xf6\\xfe\\x61\\xcf\\x42\\xee\\x17\\x77\\x9c\\x95\\xcf\\x35\\xde\\xaa\\x6b\\x1e\\x14\\xc4\\x99\\x61\\x4c\\x9e\\xf9\\x82\\x55\\x42\\xb5\\xe6\\x79\\x2b\\x3f\\xab\\x7e\\xc8\\x93\\x8c\\xbf\\x5d\\xfd\\xca\\xd6\\x02\\x71\\x8c\\x37\\x45\\x89\\xb2\\x8b\\x8c\\x5f\\x70\\x2c\\xbf\\xbe\\x34\\xb3\\x2f\\x9b\\x8d\\xb2\\x18\\x87\\xfa\\x01\\x71\\xf9\\xa6\\x46\\x95\\x08\\x51\\xa2\\x8c\\x40\\xca\\xc2\\x5a\\x91\\x26\\xdb\\xa0\\x84\\x16\\xfe\\x96\\x89\\x17\\x39\\x93\\x3d\\xf9\\xf6\\xe1\\x55\\x8a\\xb2\\xe8\\x71\\x8c\\x49\\xe2\\x79\\x89\\x1c\\x05\\xe3\\xe2\\x4d\\x91\\xaa\\x75\\x4a\\xfc\\x2c\\x75\\x28\\x85\\x0c\\xba\\x9e\\xb2\\x9d\\x24\\x68\\x4a\\x2d\\x0b\\x9d\\x13\\xe8\\xc6\\x2c\\xa6\\x49\\x63\\x35\\x28\\xe7\\x57\\xb0\\x7b\\x41\\x0b\\xf8\\xee\\x57\\x2c\\x67\\x72\\xae\\x29\\x83\\x77\\x93\\x95\\x75\\x33\\x85\\x7a\\xc5\\x4c\\xa5\\x2a\\x7b\\xbf\\x31\\x1c\\xf4\\xe6\\x83\\xe1\\xb0\\xd4\\x5b\\x91\\xe1\\x00\\xb1\\xb6\\x2d\\x87\\x52\\xe1\\x79\\x68\\xd0\\x7e\\xfb\\x48\\x7a\\x0d\\x32\\xf3\\x24\\x37\\xf6\\x2e\\xf9\\xc8\\x9e\\x96\\x65\\xf2\\x80\\x54\\xfb\\x72\\x8b\\x9b\\x62\\x81\\xeb\\x12\\xd5\\x9d\\x60\\x46\\xaa\\xec\\x77\\x16\\x58\\x5b\\xdf\\x9e\\x01\\x95\\xa9\\x21\\xa2\\x80\\xaa\\x46\\xb2\\xdd\\xf8\\xeb\\x24\\xcf\\xa1\\x83\\xb8\\x21\\x5b\\x66\\x6f\\xb1\\x8e\\x9a\\x1c\\xf2\\x9c\\x52\\x06\\xab\\xed\\xeb\\xba\\x10\\x0e\\x66\\xd7\\x2a\\x29\\xb2\\xda\\x9a\\xb0\\x18\\xc0\\x20\\x62\\x71\\x43\\x24\\x81\\x7b\\x27\\x92\\xf5\\xc7\\x5e\\xa5\\x72\\xcf\\x0a\\x6a\\x43\\x70\\x6f\\x27\\x60\\xc2\\x3a\\xb8\\xf1\\xf7\\x25\\xbb\\x55\\xf0\\x08\\xeb\\x41\\x44\\x6f\\x79\\xcc\\x0b\\x11\\x0d\\x61\\xc9\\xfa\\x26\\x18\\xc5\\xc5\\x2b\\x5f\\x7e\\x53\\x7b\\x45\\xa6\\x37\\x04\\x96\\x6a\\x6c\\xa4\\x1a\\xa1\\x4a\\x74\\xb4\\xcb\\x24\\xe2\\xf6\\xd3\\x82\\x33\\xb9\\xc1\\x01\\x64\\x08\\x50\\xea\\x73\\xb3\\xdd\\x0e\\x17\\xdd\\xf8\\xc9\\x7e\\x9f\\x3f\\xa8\\x26\\x93\\x72\\x0b\\x1b\\x0f\\x96\\x70\\x93\\x95\\x95\\x38\\x57\\x01\\xfb\\x0d\\xcd\\x70\\x43\\xf2\\xe4\\x93\\x59\\xa6\\x73\\xdc\\x10\\xf6\\xdb\\xc8\\x9c\\x5a\\xeb\\x40\\x38\\x9d\\xb0\\x09\\x82\\x25\\x0a\\x66\\xbd\\x8d\\x68\\xf5\\x93\\x5f\\xd3\\x99\\xe7\\x89\\x6b\\x1e\\xc2\\x1a\\x46\\x3c\\x8e\\x83\\x28\\xc6\\x0d\\xd9\\x25\\xfb\\xb1\\xe9\\x19\\x14\\x97\\x50\\xba\\x57\\x83\\x6c\\x33\\x0b\\xc2\\xdb\\xec\\x4c\\x03\\x17\\xe1\\x72\\xd6\\xe5\\xf0\\x19\\x4f\\xcf\\xce\\x5e\\xbb\\xd2\\x75\\x7d\\x8a\\x1e\\x0f\\x79\\x8e\\x15\\x40\\x05\\x29\\xa9\\x8a\\x52\\x04\\x51\\xec\\xcb\\x5f\\x52\\xed\\x61\\x4d\\xe4\\x2b\\x3c\\x35\\xa4\\x65\\x7c\\x2c\\xaa\\x22\\xd3\\xc8\\xca\\x67\\xf7\\x82\\xf1\\x14\\xde\\xcc\\xb3\\xd5\\x1d\\x39\\x8b\\x40\\x58\\x48\\x46\\x0a\\x92\\x90\\x8a\\xb6\\x6b\\x17\\xcd\\xe2\\xba\\x3e\\x36\\xe4\\x40\\xe7\\x24\\xef\\x92\\xcd\\x6c\\xaf\\xa9\\x33\\x5f\\x48\\x6c\\xe9\\xae\\x8a\\x22\\x67\\x09\\xef\\x88\\x4e\\xe5\\x79\\x68\\x4d\\xab\\x5e\\x65\\x73\\x53\\xd9\\x63\\x4c\\xdc\\x02\\x06\\x6d\\x15\\xa8\\xeb\\x1e\\x72\\xa9\\x70\\x5d\\xa3\\x8a\\x1e\\x1b\\x4c\\x72\\x4a\\xe9\\xc1\\xf3\\x50\\xa5\\x36\\xc3\\x74\\x7a\\xc0\\x8b\\xfc\\xfa\\xb0\\x38\\x4c\\x26\\x58\\x52\\x8b\\x43\\x9e\\x3b\\x14\\x15\\x56\\x4b\\x87\\xd8\\xc2\\xe2\\x05\\x66\\x54\\xa2\\x6b\\x52\\xd2\\x42\\xfe\\x54\\x0e\\xa5\\xa5\\xec\\x9e\\xe7\\xc9\\x9f\\x21\\x01\\x28\\x65\\xc3\\x92\\x38\\x67\\x95\\xda\\xf2\\x25\\xc6\\x38\\x44\\x3c\\x44\\x9c\\x3a\\x73\\xc9\\xff\\x2a\\xa2\\xa1\\xd1\\x14\\x0e\\xe5\\x2a\\xe0\\xa0\\x4d\\xb7\\xeb\\x82\\xaf\\xc7\\x86\\xc8\\xe6\\xa9\\x59\\x07\\xb4\\x26\\x09\\x29\\x31\\x0e\\x0c\\x9e\\x84\\xaf\\x25\\x6e\\xc1\\xb5\\x6a\\xda\\x35\\x43\\x47\\x5e\\x3c\\x2b\\xf8\\x26\\xcf\\xd6\\xd6\\xe6\\x10\\x16\\xac\\x3d\\xa2\\x94\\xae\\x3c\\x0f\\xc9\\xa7\\x03\\x26\\x42\\x12\\x6e\\xc5\\x92\\xb7\\x1f\\xf4\\x6b\\x85\\xc9\\xaa\\x21\\x59\\xf5\\x23\\xa0\\x01\\x67\\xae\\xf0\\xc1\\x4f\\x49\\x26\\x82\\x39\\xb9\\x29\\xf2\\xf4\\xc7\\x13\\xfc\\xc0\\x42\\x8d\\x1a\\x64\\xae\\xc9\\x24\\x30\\x9c\\x97\\x33\\x1b\\x45\\x27\\xd9\\x06\\x31\\x4a\\xa9\\x33\\x0b\\x9d\\xe9\\xd4\\x2a\\x19\\x38\\x72\\x62\\xa0\\x7a\\xc8\\xe4\\x14\\xfe\\xaa\\x48\\x1f\\x0c\\x7d\\xab\\x98\\x78\\x9f\\xed\\x58\\x71\\x10\\x48\\x17\\xc2\\x8b\\xb6\\x00\\x75\\x66\\x84\\x39\\xb2\\x52\\xcf\\xeb\\x55\\x7a\\x3d\\x93\\xeb\\xe4\\x97\\xac\\x2a\\xf2\\x5b\\xf6\\x53\\x26\\x6e\\x50\\x41\\xa2\\x55\\x8c\\xd5\\x4e\\x10\\x65\\xb6\\xdd\\xb2\\xd2\\xf3\\x56\\xa8\\xc0\\xe6\\x0d\\xb9\\x50\\xdc\\xc5\\x7e\\xb1\\xd9\\xb4\\x2f\\xb8\\x91\\xd3\\x62\\x20\\x6f\\x04\\x03\\xb8\\x26\\x49\\x72\\x4b\\x2b\\x60\\x53\\x11\\xc3\\xb2\\x90\\x22\\x30\\xf0\\xdf\\x80\\x44\\x5d\\x8f\\x54\\x90\\xc8\\x2f\\x27\\xa5\\x7f\\xca\\x78\\x5a\\xdc\\x9d\\xa3\\x3d\\x8e\\x84\\x28\\x26\\xd9\\xb3\\x3b\\xc8\\x27\\x4b\\xbc\\x39\\xec\\x58\\x99\\xad\\x47\\x8a\\x38\\x59\\xf5\\x26\\x79\\x83\\x80\\x27\\x7a\\x99\\x17\\x89\\x04\\x3e\\xec\\x79\\x59\\xf5\\x52\\xe2\\x04\\xd5\\xa2\\x6c\\xfa\\x53\\x94\\x8e\\x4d\\x5c\\x37\\x38\\xd9\\x99\\x92\\x25\\xb7\\x26\\xc0\\xa4\\x86\\x79\\xb4\\x53\\x98\\x8e\\xe1\\xb8\\xae\\x4d\\xb1\\xc0\\x7c\\x97\\xdd\\xb5\\xf6\\xc2\\x10\\x50\\x1c\\xd6\\x95\\x71\\xac\\x79\\xa9\\xeb\\x8e\\x35\\x51\\x28\\x41\\xcd\\x92\\x1c\\x8e\\x1e\\xe9\\x7c\\x21\\xca\\x07\\x00\\x36\\x1b\\x5b\\x7a\\x9e\\xf3\\xa0\\xfb\\x43\\x5c\\x2b\\xdd\\xc5\\xd6\\x17\\xbb\\x40\\x87\\x27\\x89\\x9b\\x55\\x3f\\x98\\x97\\xb7\\x1b\\xb7\\x6b\\xa9\\x59\\x27\\x62\\x7d\\x83\\x5a\\xe4\\xee\\xcc\\x1b\\x89\\x2e\\x4b\\xc0\\x7a\\xa5\\xc4\\x2e\\x1d\\xd9\\x2e\\x29\\xa5\\xa2\\xae\\xdb\\x4e\\x94\\xb0\\xc6\\x2f\\x76\\x7b\\xf1\\x30\\x32\\x05\\x40\\xbb\\xa0\\x1a\\xa1\\xaa\\x69\\x07\\xa7\\x1f\\x66\\x0d\\x61\\x65\\x59\\x94\\xbd\\x52\\xe2\\xa6\\x2c\\xee\\x2e\\x5e\\xc8\\x74\\x58\\xd1\\x96\\x05\\xee\\xf1\\x00\\x92\\x18\\x99\\x29\\xd6\\xd2\\x80\\xd3\\x49\\x03\\xd6\\xa2\\x2f\\x4e\\x11\\xb7\\x44\\x48\\x9c\\x0a\\x22\\xa8\\x14\\x87\\x84\\x1c\\x51\\xb1\\x80\\x31\\xd3\\x67\\x2d\\xdf\\x9f\\x51\\x87\\x7b\\x5e\\x14\\xb7\\x43\\x0f\\x23\\xe1\\xaf\\x4b\\x96\\x08\\xa6\\xb9\\x5c\\x54\\x4a\\xf6\\x3a\\x0e\\x50\\x49\\x57\\xfe\\xea\\x90\\xe5\\xe9\\xcb\\x32\\xd9\\xc2\\x97\\x88\\xc5\\x44\\x90\\x0c\\x93\\x4c\\x6e\\xce\\x0c\\x6b\\x89\\x0b\\x04\\x3b\\xc5\\x1d\\x45\\x31\\x29\\xfd\\xf5\\x4d\\x96\\xa7\\x92\\x2d\\x06\\x0e\\x02\\x06\\xfa\\x1f\\xef\\xde\\xbe\\xe9\\x06\\x6a\\x53\\x5c\\xf9\\x45\\x62\\x3e\\xf9\\xab\\xe4\\x82\\xd0\\x7e\\x41\\x1c\\x07\\x0a\\xc8\\x29\\x0f\\x79\\x70\\x22\\x22\\x71\\x18\\xf4\\x0a\\x94\\x0b\\x88\\x63\\x29\\x4a\\x7c\\x54\\x52\\x82\\x44\\x30\\xfb\\x3c\\x59\\x33\\xf4\\x8e\\xb8\\xff\\xc7\\xc5\\xed\\xeb\\x53\\xe2\\xc6\\xd6\\xeb\\x0b\\xe2\\xba\\x92\\x4e\\xb4\\xf4\\xcb\\xd5\\x7d\\x73\\x27\\x1c\\x23\\x1c\\xa0\\x95\\x0f\\xab\\x89\\xdc\\x57\\xfc\\x36\\xc9\\xb3\\xf4\\x02\\x06\\x03\\x9f\\x81\\x39\\x83\\x7e\\xfe\\x6c\\x2f\\x24\\x57\\x40\\x52\\x92\\x0c\\x04\\x3d\\x3e\\xb2\\x98\\xbc\\xb7\\x98\\x72\\x57\\x30\\xff\\xf9\\xdb\\xd7\\x3f\\xc8\\xba\\xca\\x10\\x65\\x94\\xb3\\xbb\\x8b\\x36\\x81\\x94\\x34\\x53\\xf3\\xf1\\xb2\\x2c\\x76\\x4a\\xcd\\x82\\x38\\x71\\x25\\x2f\\x79\\x75\\xbf\\xcb\\x5d\\x29\\xdb\\x96\\x50\\xe6\\xe9\\x5a\\x64\\xb7\\xec\\x67\\x4d\\xc6\\xdc\\xd7\\xd9\\xba\\x2c\\xaa\\x62\\x23\\xfc\\x9f\\x5f\\x7f\\xff\\xfc\\xed\\x6b\\x17\\x93\\xd2\\x4f\\xaa\\x07\\xbe\\xa6\\x2e\\xe8\\x14\\x5c\\x52\\xfa\\x52\\xbc\\xfd\\xf9\\xf5\\xf7\\x52\\x82\\xd2\\xdb\\xa6\\xc0\\xc7\\x92\\x0a\\x23\\x72\\x94\\x9e\\x57\\xb6\\x7a\\x24\\x0d\\x26\\x9e\\xe7\\x94\\x96\\x6c\\x54\\x7d\\xfb\\xf0\\x3e\\xd9\\xbe\\x49\\x76\\x0c\\xb9\\xd0\\xd1\\x12\\x26\\xcd\\xc5\\x9a\\xe3\\x90\\x08\\x61\\x30\\x8d\\x72\\xca\\xd4\\x2c\\x96\\x0d\\xe1\\x45\\xb1\\xb7\\x39\\xad\\x86\\x6c\\xf3\\x62\\x95\\xe4\\x2f\\x6e\\x93\\xbc\\x47\\x3e\\x85\\xa4\\xd5\\xb0\\xda\\x02\\x03\\x8d\\x94\\x90\\xfd\\x6e\\x5d\\x66\\x7b\\x61\\xe1\\x6f\\x81\\x8f\\xcc\\x67\\xb7\\x49\\x6e\\xb6\\xb4\\xe4\\xe7\\x90\\x5c\\xad\\x75\\xb2\\x63\\xf9\\xb3\\xa4\\x1a\\x45\\xa7\\xac\\x85\\x8a\\x5f\\x89\\xbb\\xab\\xa6\\x16\\x98\\x3c\\x27\\xdf\\x63\\xd9\\xcd\\x94\\xc9\\x41\\x8e\\x33\\xee\\x0a\\xff\\xc9\\xef\\x12\\xa2\\xcd\\xb3\\x2f\\x8a\\xef\\x8b\\x3b\\xa3\\x59\\x91\\xa8\\xa6\\x9f\\x32\\x22\\x0a\\x90\\x0e\\x82\\xe8\\x0c\\xb4\\x78\\x9a\\x6f\\x4b\\xe8\\x6b\\x2d\\x72\\x2b\\x44\\x91\\xe0\\xa3\\x44\\x44\\x8b\\xe2\\x3a\\x5b\\x64\\x8a\\xa9\\x2a\\xa9\\xd0\\xdc\\x3c\\x93\\x3c\\x93\\x9c\\x5e\\x49\\xd9\\xe7\\x78\\x55\\xb2\\xe4\\x63\\xc3\\xf2\\x8a\\x5d\\xb4\\x1c\\x16\\xfb\\xdc\\x12\\xe7\\xdb\\x52\\x13\\x2c\\x0b\\x66\\x44\\xfe\\x7c\\x5e\\x7b\\x9f\\x2e\\x65\\xb0\\x13\\x6b\\x88\\x5c\\xea\\xe0\\xd6\\xf3\\x9c\\x5b\\x55\\xc6\\x5d\\x1e\\x36\\x6c\\xb3\\x59\\x1e\\x66\\xb3\\x64\\xe6\\xe2\\xf0\\x13\\x44\\xd1\\x75\\x83\\x5b\\x43\\xe7\\x9a\\x4f\\x51\\x4f\\xd7\\x0d\\x90\\xa4\\xa0\\xdd\\x6a\\xbf\\x97\\x48\\x41\\x8a\\x15\\x5a\\xa8\\x0d\\x46\\x54\\xad\\x12\\xc1\\x76\\x88\\xb4\\xa5\\xfb\\xe8\\x35\\x6a\\x79\\x48\\x1c\\x1a\\xc4\\xc8\\xc9\\xa9\\x76\\x27\\x8c\\x58\\x1c\\x30\\x1c\\xa4\\xaa\\x93\\x9c\\x30\\x8c\\x09\\x6f\\x48\\xc6\\x4f\\xdb\\x6c\\x21\\x42\\xae\\xbd\\x80\\xb5\\xdf\\x1a\\x14\\xb2\\x35\\x62\\x0b\\x23\\x1c\\x2b\\xfa\\x46\\x45\\x27\\x57\\xf1\\x70\\x76\\xcd\\xc3\\xd7\\x89\\xb8\\xf1\\x77\\xc9\\x3d\\x9a\\x91\\x72\\x22\\x91\\x6a\\x30\\x5b\\x94\\xd7\\x7c\\xc1\\x35\\x2b\\x2e\\x57\\x47\\x78\\x9e\\x88\\x78\\x4c\\x29\\xed\\x68\\x8d\\xc6\\x01\\xd3\\x79\\x43\\x60\\x24\\x3d\\x95\\x96\\xee\\x13\\xe5\\xa6\\xb5\\xac\\x03\\xd5\\x82\\xce\\x40\\xa9\\xc5\\x0f\\xbb\\x15\\x2b\\xbb\\x61\\x97\\xc0\\xdf\\x2f\\xca\\xeb\\x62\\x51\\x4c\\x26\\x98\\x45\\xd9\\x64\\x12\\x53\\x1e\\x15\\xf1\\x02\\x60\\xe5\\xee\\x26\\xcb\\x19\\x92\\xef\\x92\\xc9\\xb6\\xbe\\x4f\\x26\\xed\\x64\\x9b\\x46\\x68\\x46\\x58\\x43\\xb6\\x25\\xdb\\x9f\\xdd\\x3e\\x51\\x2c\\x7b\\xa2\\x94\\xdf\\x50\\x06\\x26\\x88\\x53\\xc7\\xe1\\x8b\\x44\\xf7\\xa1\\xa4\\x8e\\x23\\x10\\x8b\\x8a\\x98\\x14\\x98\\x70\\x25\\x65\\x64\\x20\\x38\\x42\\x6a\\xcb\\x28\\x64\\x43\\x49\\xf3\\x0f\\xb7\\x2a\\xa9\\x68\\x14\\x2f\\x60\\xf7\\xf4\\x36\\x4f\\x49\\x85\\x01\\x7f\\x49\\xb5\\x00\\x78\\x4a\\x90\\x28\\x8c\\x8c\\x26\\x05\\x8b\\xc5\\x70\\xf7\\x7c\\x66\\x31\\xdd\\xdd\\x8d\\xde\\xd6\\x51\\x4c\\x40\\x5b\\x72\\xc8\\xd2\\x60\\x4e\\xf6\\x65\\x71\\xff\\x30\\xb6\\x8c\\x52\\x8a\\xd4\\x45\\x47\\xe9\\x6c\\x41\\x59\\xc4\\x63\\xc2\\x29\\x23\\x8c\\x16\\x92\\xe8\\xf7\\x55\\x4a\\xa8\\xa4\\x5a\\x3d\\xd3\\xca\\x73\\xe4\\xb1\\x64\\x39\\x4e\\x25\\x68\\xa6\\x7b\\xc6\\x95\\xec\\x2c\\x99\\x06\\x38\\x67\\x40\\xc3\\x0a\\xb0\\x64\\x21\\x32\\x5f\\x76\\x9d\\x32\\xfb\\x47\\x12\\x14\\xf9\\x3b\\x99\\x90\\x0c\\x07\\xa2\\x21\\xc9\\x7a\\xcd\\xaa\\x6a\\xa0\\x71\\x35\\x82\\xb1\\x1a\\xe1\\x81\\xce\\x48\\xde\\xad\\xd0\\x9a\\x2a\\x04\\x00\\x7b\\xaa\\x63\\x9e\\x0d\\x47\\x5b\\x62\\x7c\\x2c\\xa8\\x33\\x03\\x80\\x39\\xc8\\xf9\\x2f\\xf1\\xca\\x57\\xcd\\x40\\xed\\x07\\x52\\x46\\x87\\x98\\x38\\x33\\x68\\xa1\\xc5\\x93\\x99\\x16\\x0e\\x65\\xd9\\xfe\\x1c\\x65\\x4a\\x32\\x76\\x66\\x98\\xac\\xe5\\xa2\\x85\\x88\\x1b\\xfa\\x94\\x61\\xb9\\x53\\x0f\\x79\\x8e\\x03\\xb4\\xa6\\x9c\\x70\\x3a\\x04\\x32\\x3d\\x73\\x6b\\x55\\x62\\x25\\x61\\x8b\\xe3\\x46\\x62\\x0c\\x25\\x31\\xb7\\x82\\x35\\x47\\x4c\\x76\\xab\\x24\\x55\\x98\\x05\\x99\\xc1\\xb4\\x87\\x98\\x1c\\x88\\xf9\\x84\\x3b\\x91\\xb5\\x08\\x59\\xb0\\x0e\\x4d\\x3f\\x70\\x90\\x87\\x32\\xd3\\x4c\\x66\\x0a\\x12\\x49\\xf0\\xee\\x4e\\x15\\x20\\x08\\x98\\x93\\x44\\x30\\x2c\\x39\\x00\\x29\\x01\\x22\\xdc\\x34\\xad\\x7a\\xdf\\x68\\xa3\\xa8\\x4d\\x8e\\x81\\x11\\x02\\x4c\\x43\\x57\\xfe\\x73\\xb6\\x61\\x65\\xc9\\x52\\x84\\xc9\\xf9\\x33\\x83\\x31\\xe1\\xd2\\xcc\\xf1\\xe9\\x79\\x01\\x3e\\x4d\\xfa\\xd4\\x59\\xc1\\x69\\x5e\\xeb\\xa0\\x00\\x9a\\x39\\x16\\x7e\\x22\\x3e\\xe7\\xac\\x60\\x90\\xcb\\x9c\\x15\\x68\\xd6\\x5b\\xcb\\x3c\\xa5\\x86\\x35\\xe6\\x6f\\xca\\x64\\xc7\\x5a\\x26\\xaa\\x18\\xf2\\x55\\x9a\\x01\\xcb\\xf0\\xb1\\xd1\\x6c\\xd7\\xbb\\x75\\x59\\xe4\\xb9\\xe7\\x99\\xd9\\xbc\\x48\\x90\\x9a\\x4e\\x4b\\x34\\x87\\x26\\xda\\xbc\\xc8\\xcd\\xd9\\x46\\xb8\\x86\\x99\\xeb\\x08\\x9e\\x35\\xa5\\x09\\xf9\\x6a\\x86\\x9b\\xde\\xa1\\x4c\\xd3\\x20\\x6c\\x58\\x3e\\xde\\xaa\\x14\\x25\\xd3\\xa4\\x35\\x92\\xee\\xb7\\x4a\\xe6\\xb8\\x78\\x03\\x38\\xfd\\x42\\x31\\xa2\\x17\\x06\\xbe\\x2f\\x80\\x6c\\x01\\x60\\x5c\\xfc\\xc8\\xb6\\x2f\\xee\\xf7\\x17\\x8a\\x12\\x2a\\xb1\\xc7\\x05\\x85\\x97\\x40\\xee\\x85\\x8b\\x49\\x9f\\x9e\\xe6\\x91\\x1b\\xa9\\xfd\\x77\\xe1\\x4e\\xc4\\xc4\\x8d\\xdd\\xf8\\x84\\x4b\\xc2\\x8b\\x76\\x02\\x5e\\x77\\x2a\\x44\\xd6\\xd1\\xb9\\x56\\x10\\x5d\\xb4\\xca\\x51\\x4b\\x04\\x0d\\x9d\\x79\\x30\\x87\\x23\\x13\\x23\\xa3\\x7a\\x9e\\x08\\x9d\\x59\\xd0\\x49\\xf8\\xdc\\x16\\x97\\x1d\\x4a\\x25\\xce\\x9b\\x29\\xd1\\xf0\\x84\\x8a\\x49\\x52\\x79\\x3d\\xf3\\x3c\\x31\\x9d\\x2b\\xcc\\xdc\\x94\\x74\\x85\\x0a\\xb5\\xea\\xbf\\xd0\\x63\\xd3\\xf5\\xf6\\x65\\xd7\\xdb\\x5f\\x22\\x16\\xcb\\x6f\\x7d\\x45\\x2f\\xf3\\x77\\xb0\\x4e\\x77\\x58\\x32\\x14\\xa4\\x8f\\x99\\x81\\x20\\x3b\\xb3\\x06\\x13\\xd1\\xac\\xfc\\x67\\x49\\x9e\\xaf\\x92\\xf5\\xc7\\xaa\\x77\\x3a\\xc7\\xe8\\x08\\x73\\x21\\xdb\\xaa\\x6b\\xd9\\x78\\xd0\\xe9\\xa4\\x1a\\xc2\\x54\\x17\\x2d\\xdc\\x48\\x0e\\x92\\x48\\xe6\\xd4\\x61\\x7e\\xc1\\xd7\\x4c\\x4a\\x87\\x64\\xdd\\xdb\\xbb\\x8a\\xa5\\x60\\xfe\\x8e\\xed\\x8a\\xf2\\xc1\\xf3\\x84\\x14\\x23\\x25\\x4d\\xad\\xea\\x7a\\x46\\x2a\\xa0\\x7b\\x87\\x6e\\x21\\x9c\\xd9\\xe2\\xe0\\x79\\xc5\\x75\\xb2\\x48\\x14\\x73\\x71\\x88\\x92\\xd8\\x68\\x98\\x25\\x6a\\x11\\x52\\xc2\\x04\\x76\\x4f\\xf2\\xc9\\x95\\x28\\xf6\\x6f\\xf9\\x4b\\x29\\x8c\\x48\\xa9\\xc3\\x99\\x2f\\x14\\xe7\\x08\\x4a\\xbb\\x83\\xe7\\xa1\\x3c\\xcc\\x75\\xe5\\x9e\\xb7\\x46\\xb9\\x5f\\xdd\\x64\\x1b\\x81\\x30\\x0e\\xca\\x50\\x76\\x3d\\xd8\\xfb\\x69\\x56\\x25\\xab\\x9c\\xc1\\xb9\\xe2\\x9e\\x1e\\x93\\xb4\\xa7\\xb5\\x95\\x3d\\x30\\x2b\\x60\\xba\\xb9\\x68\\x0f\\xcf\\x2f\\x32\\x39\\x44\\xa3\\x73\\x1f\\x28\\x86\\xd5\\x1e\\xd6\\x90\\xc5\\xf1\\xa2\\xa7\\x4f\\x2a\\x43\\xe6\\x1f\\x78\\xf6\\xdb\\x81\\x79\\xde\\xde\\xbf\\x49\\x2a\\xc4\\x71\\x5d\\x1f\\x14\\xdf\\x20\\x59\\x2c\\xcf\\xe3\\x6d\\xc7\\x3b\\x09\\x10\\x98\\x0b\\x24\\x71\\x77\\x83\\x2d\\x42\\x47\\x78\\xd8\\xcd\\x62\\x50\\x2a\\xad\\x29\\x59\\x4b\\x32\\x64\\x9f\\x12\\x35\\x44\\x09\\xdd\\x23\\x6a\\xe9\\x83\\x14\\x8d\\x60\\x18\\x1d\\xfd\\x3d\\xe5\\x5b\\xcb\\x85\\xe2\\xb0\\x40\\xbe\\xd7\\xac\\x26\\x12\\x92\\x98\\x61\\x7c\\x3d\\x9d\\xe3\\x83\\xd6\\x4b\\xa3\\x92\\xcc\\x41\\x9e\\x46\\xc5\\xb5\\xec\\x72\\x31\\x9d\\x92\\x04\\x9e\\x92\\xe9\\x14\\x37\\xe6\\x84\\xe1\\x26\\xa9\\x46\\x25\\xa9\\xb0\\xab\\x9c\\x91\\x83\\xac\\x39\\x70\\x90\\x73\\xa8\\x6b\\xc7\\x8c\\x51\\x0a\\x3e\\xbb\\xbd\\x18\\x3b\\xe5\\x01\\x88\\x54\\xf5\\xeb\\xa5\\x1d\\xcd\\x94\\xd3\\x92\\x8a\\x7e\\xbe\\x11\\x75\\xbd\\x73\\x68\\x48\\x5e\\xd8\\x87\\x3a\\x6d\\x15\\x39\\x15\\xa4\\xac\\x6b\\x0b\\x80\\x74\\x6d\\x32\\xff\\x68\\x5d\\x39\\x1c\\x89\\x80\\xd2\\x72\\x5c\\x06\\x14\\x4a\\x2c\\x20\\x82\\x46\\x8c\\x08\\x65\\x2a\\x11\\xea\\x5f\\x84\\x03\\x11\\x13\\x39\\x09\\x99\\xe7\\x39\\x79\\x5d\\x23\\x1e\\xe6\\x0a\\x5c\\x04\\x0e\\xd6\\x48\\x60\\xd3\\xbe\\x6c\\x63\\xa4\\xbf\\x7b\\xdf\\x34\\x3e\\x3c\\xaa\\xb1\\xca\\x8d\\x75\\xdb\\xc9\\x9a\\x16\\xeb\\xec\\x6d\\x25\\xb5\\xa1\\xc4\\x23\\xa7\\x33\\x51\\xe4\\x6a\\x15\\xad\\x4b\\xdc\\xb4\\xe0\\xcc\\x25\\x16\\x02\\x92\\xa4\\x6e\\xcd\\x2e\\x14\\x4a\\x70\\x31\\x31\\x79\\x53\\x37\\x26\\xb2\\x20\\x30\\x53\\xc4\\xdd\\x24\\x59\\xfe\\x47\\xe5\\x64\\x56\\x5d\\x8e\\x17\\x22\\xdb\\x3c\\xb8\\xc4\\xdd\\x97\\xc5\\xb6\\x64\\x55\\x35\\x28\\x6b\\x8a\\xc5\\x92\\x0d\\x75\\xf7\\x8c\\xa7\\x72\\x4f\\x91\\x92\\x1e\\x81\\x2e\\x8f\\x4c\\x19\\x6f\\x48\\x92\\xdf\\x25\\x0f\\xd5\\xc8\\xb7\\x4c\\x9d\\x96\\x75\\xb3\\xe8\\xcb\\xee\\xa2\\x93\\x59\\x15\\x37\\x8c\\x07\\xc3\\x73\\x97\\xee\\xd0\\xa2\\x43\\xe7\\x2d\\x5f\\x63\\xab\\x82\\xc6\\x50\\x4b\\xa1\\x2a\\x49\\x68\\x21\\xf1\\x61\\x45\\xfb\\xac\\x74\\x24\\x62\\xec\\x79\\xf2\\x67\\x91\\x45\\x45\\x34\\x8f\\x63\\x74\\xd2\\x7a\\xe5\\x79\\xd5\\xf8\\xa9\\xdd\\x42\\x1f\\x67\\x74\\xf5\\x19\\x5a\\x8e\\x43\\x36\\x3c\\x29\\x6c\\xd5\\xf0\\x7a\\xec\\xf2\\x5d\\xae\\x07\\xf6\\xcd\\x0a\\x20\\xee\\xab\\x55\\xc1\\x01\\x8f\\x92\\x89\\x2b\\xa1\\xcf\\x8d\\xa1\\x51\\xc0\\x81\\x1d\\xa7\\xa0\\x0e\\xd4\\x49\\x05\\x72\\x6d\\xd7\\x1f\\x89\\xe7\\x08\\x03\\xfe\\xa7\\xc1\\x5d\\xe6\\x86\\xe8\\xc7\\x4f\\x68\\xd1\\xc3\\x16\\x50\\x99\\xe4\\x47\\xcb\\xa6\\x21\\x99\\x45\\x3f\\x4b\\x7f\\x9f\\xed\\x19\\x2d\\x7d\\xb9\\x40\\xe4\\x74\\x9e\\x99\\x3d\\xcf\\x8f\\xe5\\x3c\\x17\\xd1\\x93\\x78\\x51\\xaa\\x39\\xa5\\x89\\xe4\\x02\\x49\\xe5\\x79\\xf0\\x60\\x4f\\x31\\xa7\\x72\\xd5\\xa3\\xf9\\x07\\x16\\x47\\x8f\\x63\\x83\\x1d\\x88\\x88\\x1e\\xc3\\xbb\\xc4\\x0e\\x98\\xc8\\xa5\\x99\\xc5\\xf1\\x88\\x74\\xa3\\xbe\\x0c\\xa7\\x2a\\x0b\\xcb\\x60\\x7c\\xd7\\xf6\\xf3\\xd3\\xa4\\xdd\\xe5\\x0d\\x26\\x65\\x3b\\x63\\x19\\x26\\xa0\\x57\\x02\\x4e\\x3d\\x03\\x35\\x6c\\x43\\xee\\x7a\\xa0\\xd9\\xee\\xdd\\x19\\xe1\\x27\\xb2\\x18\\x26\\x3d\\x41\\x7d\\x2e\\x29\\x51\\x5d\\x7f\\x02\\x58\\xca\\x40\\x12\\xf6\\x39\\x74\\x9d\\x05\\x3d\\xae\\x3d\\x39\\x27\\x9e\\xb4\\xc9\\xa5\\x64\\x5d\\x58\\xac\\x0e\\xfe\\xb8\\x7c\\x1a\\x1e\\x42\\x5e\\xcf\\xc3\\x93\\x2e\\x06\\x25\\xe1\\x94\\xd2\\x2a\\x2c\\x34\\xd0\\x29\\x5c\\x47\\x38\\x0e\\xa6\\xd3\\xac\\xae\\x8b\\xde\\xa9\\x91\\x4c\\x6f\\x1a\\xc9\\xc1\\x90\\x5c\\xca\\x70\\xe5\\xf5\\x1c\\x44\\xa1\\x8a\\x9a\\xf3\\x3f\\x72\\xe8\\x1e\\xf3\\xf6\\x71\\x51\\x5e\\x8b\\x85\\x90\\xa2\\x52\\x24\\xe2\\xc1\\xf8\\x65\\x52\\x37\\x05\\xf6\\x9b\\xd9\\x32\\x09\\x12\\x24\\x97\\x52\\x97\\xda\\x31\\xc5\\xe9\\x8e\\x49\\x80\\x9e\\x56\\x18\\x3a\\xdd\\xea\\x0e\\x86\\xbd\\x97\\x75\\x90\\xc2\\xda\\x10\\x20\\x41\\x55\\x87\\xfd\\xbe\\x28\\xc5\\xf0\\x98\\x57\\x80\\x34\\x9b\\xa8\\xb1\\x92\\x35\\xd9\\x93\\x0d\\x49\\x69\\x31\\x50\\xdd\\xbb\\x69\\x76\\xeb\\x82\\x7a\\x30\\xf5\\x2b\\x26\\x9e\\x0a\\x51\\x66\\xab\\x83\\x60\\xc8\\x5d\\xe7\\x49\\x55\\xbd\\x49\\x76\\x12\\x97\\x0b\\x17\\x93\\xd4\\xcf\\x38\\x67\\xe5\\x77\\xef\\x5f\\x7f\\x4f\\xdd\\x8b\\x8b\\x6f\\xf2\\x8c\\x7f\\xbc\\xba\\xfe\\x46\\x48\\x38\\xbf\\xfe\\xe6\\x4a\\xff\\x26\\x17\\x37\\x25\\xdb\\xd0\\x2f\\xae\\x92\\x2f\\xae\\x93\\x6f\\xae\\x92\\xeb\\x6f\\x32\\xbe\\x3f\\x88\\x0b\\x38\\xa2\\xfe\\x62\\x7d\\xc3\\xd6\\x1f\\x57\\xc5\\xfd\\x17\\x57\\xd7\\x2e\\xe1\\x34\\x3d\\xa3\\x0e\\xbe\\x74\\x25\\xe4\\x9d\\xfb\\x9a\\xb8\\x58\\xa2\\x40\\x87\\xd7\\xb5\\x53\\xd6\\xb5\\x63\\x20\\x54\\x2b\\xa0\\x8e\\xcd\\xa2\\x3a\\x1d\\xa6\\x32\\x2c\\x71\\xe5\\x9a\\x02\\x12\\x64\\x3c\\x7d\\x76\\x93\\xe5\\x29\\x3a\\xc9\\x59\\xec\\x81\\x5b\\xc3\\x12\\x64\\xcf\\x75\\x01\\xc6\\xa4\\xba\\x51\\xfa\\x95\\x78\\xc8\\x99\\xbf\\xae\\xaa\\xf7\\xec\\x5e\\x50\\x57\\x14\\xfb\\x60\\xbe\\xbf\\x5f\\x6c\\xf2\\x22\\x11\\x81\\x14\\xab\\x16\\xc5\\x3e\\x59\\x67\\xe2\\x21\\xf0\\xbf\\x72\\x89\\xa0\\xc7\\x2d\\x13\\xef\\xac\\xa9\\x0e\\x5c\\x38\\x15\\x4b\\xfd\\x76\\xc6\\x49\\xce\\x12\\x49\\xa6\\x7e\\xba\\xc9\\x04\\xab\\xf6\\xc9\\x9a\\x05\\x4f\\xa8\\xcc\\x01\\xb6\\x15\\xd0\\xef\\x56\\x26\\x21\\x62\\x55\\xa4\\x0f\\x81\\x73\\xae\\xab\\xf0\\xb9\\x55\\xaa\\x93\\x1b\\xb1\\xcb\\xdf\\xb1\\x32\\x4b\\xf2\\xec\\x77\\x16\\x38\\x67\\x8b\\xc9\\xd5\\xed\\x4a\\xc1\\x10\\x83\\x2b\\x51\\xec\\xaf\\xd4\\x51\\x09\\x28\\xf2\\x2d\\x60\\x81\\x0c\\x72\\xce\\xe4\\xea\\xbf\\x29\\xca\\x1d\\xd4\\x9f\\x06\\xee\\x55\\x02\\x7c\\xef\\x20\\xbb\\xcc\\xe5\\x62\\x62\\xe6\\xe5\\xea\\xc3\\xcc\\xff\\xaa\\xad\\x59\\xcd\\xa7\\xfe\\x86\\xc9\\xba\\xaa\\xe0\\x8c\\x33\\x70\\x1c\\x6b\\xae\\x21\\x89\\x00\\x3c\\xbd\\xe5\\x81\\xe3\\x24\\xfe\\x6d\\x92\\x1f\\x18\\x29\\xf6\\xe2\\x1d\\x2c\\x35\\x4b\\x83\\x5c\\x5b\\x21\\xb1\\x94\\x30\\xbe\\x86\\x03\\x51\\xc7\\x39\\x59\\xef\\x4d\\x51\\xee\\x5c\\xec\\xeb\\x1c\\x30\\x41\\x5f\\x3d\\xcb\\x0b\\xce\\x02\\xf7\\x9b\\x80\\x27\\xb7\\xd7\\xdf\\x5c\\xc1\\x8f\\x5c\\xa3\\x93\\xc2\\x3c\\xb9\\x75\\xb1\\xbf\\x96\\xd9\\xdf\\x14\\x29\\x43\\xce\\x0c\\xfb\\xc5\\x41\\xa8\\x6d\\x42\\x56\\xc5\\xfd\\xeb\\x22\\x65\\x79\\xe0\\x3e\\x7b\\xf7\\x6e\\xfe\\xac\\xd8\\xed\\x13\\xa1\\x94\\x16\\x6b\\x78\\x96\\x1f\\x49\\xca\\x72\\x26\\xd8\\x8b\\xfb\\x7d\\xc2\\xd3\\x22\\x70\\x66\\x84\\x17\\xd0\\x3c\\xa8\\x07\\xe4\\x7b\\xc6\\xf3\\x8c\\xb3\\x6f\\x25\\x09\\x79\\xc3\\x58\\x5a\\x7d\\x9f\\x3c\\x14\\x07\\x11\\x38\\x73\\x52\\xdd\\x94\\x19\\xff\\xf8\\x53\\x99\\xec\\xe1\\x6b\\xa5\\x0e\\xfa\\xf3\\x4c\\x6e\\xc5\\xd7\\x49\\xb9\\xcd\\xf8\\x8f\\xd9\\xf6\\x06\\x2a\\x59\\x15\\xf7\\xef\\xb2\\xdf\\x33\\xbe\\xfd\\x51\\x7f\\x97\\x89\\xfb\\xec\\x9e\\xe5\\x3f\\x14\\x55\\x06\\x67\\xe1\\xce\\xbc\\x21\\x89\\x0f\\x53\\xca\\x52\\x29\\xad\\x09\\x5f\\x77\\xe5\\x99\\x4e\\x4b\\x06\\x23\\xd5\\x79\\x49\\x65\\xe8\\x9d\\x2e\\x56\\xec\\xc5\\xf3\\x36\\x21\\x6f\\x3f\\x82\\x5a\\x43\\x0d\\xf7\\x22\\x85\\xd5\\xd6\\xea\\x86\\x1b\\x7c\\x14\\x7e\\x6f\\x1e\\xa8\\x33\\x6f\\x92\\xd3\\xe9\\xd6\\xfb\\x8e\\x24\\x03\\x5c\\x05\\x6b\\xef\\x12\\xd7\\xc5\\x44\\xf8\\x90\\x89\\xba\\x72\\xa2\\x93\\x01\\xdc\\xa9\\x7c\\xb2\\x3c\\x3c\\x51\\x57\\xb8\\x27\\x75\\x49\\x28\\x70\\x89\\x5b\\x26\\x69\\x56\\x40\\x7d\\xf0\\xf4\\x9f\\x26\\x3f\\xd4\\xaa\\x60\\x6d\\x58\\x52\\x4f\\x87\\xc6\\x97\\xc3\\xaf\\xbc\\x43\\xa5\\x87\\x76\\x64\\xc6\\x64\\xb1\\x3d\\x30\\xc5\\xe4\\xd0\\x43\\x4f\\x89\\xec\\x81\\x49\\x68\\x57\\x41\\xcf\\xbb\\x50\\x4f\\xb0\\x46\\xf4\\x30\\x5c\\x9c\\xde\\x5b\\x9e\\x18\\xc4\\x61\\x0a\\xa7\\xb6\\x1a\\xca\\xf3\\x50\\x3a\\x54\\x4b\\xad\\xf3\\x6c\\xfd\\xd1\\x25\\x16\\x59\\x69\\x01\\x02\\xf2\\xc8\\x35\\x92\\x64\\x61\\xd8\\x6c\\xb6\\xfe\\x88\\xb0\\x3a\\x55\\xd8\\x5c\\x64\\xfc\\x58\\x1d\\x56\\xbb\\x0c\\x80\\x50\\x29\\xc1\\xe4\\xd3\\xa6\\x58\\x1f\\xaa\\x8c\\x07\\xce\\xac\\xc1\\x03\\xc2\\xb3\\xa6\\x6e\\xc1\\xdd\\xc9\\x46\\x4d\\x95\\x88\\x36\\x13\\xf7\\xdb\\xc3\\x6a\\x95\\xb3\\xca\\x8d\\xe9\\x1a\\x54\\x27\\x75\\x0d\\x9d\\x55\\x05\\xaa\\x68\\x1d\\xfb\\x4c\\x83\\x0d\\xa5\\xed\\xa1\\xfa\\x45\\xaa\\xb1\\x85\\x14\\x04\\xb6\\x65\\x71\\xe0\\xe9\\xb3\\x3c\\xdb\\x53\\x77\\xad\\xf4\\x7b\\xd3\\x55\\x71\\xef\\x9e\\x74\\x7f\\xbc\\x88\\x2b\\xa7\\x3a\\x67\\x49\\x09\\xa3\\x7f\\x27\\xf3\\xf4\\xeb\\x01\\xec\\x3c\\x56\\x96\\xac\\x86\\x8c\\xb8\\xa6\\xca\\xd4\\xdd\\x27\\xa9\\x44\\xf2\\xc1\\x6c\\xb1\\x83\\xbd\\x1a\\xcc\\x16\\xab\\xa2\\x4c\\x59\\x19\\xcc\\x16\\x69\\x56\\xed\\xf3\\xe4\\x21\\x58\\xc9\\x7d\\xbd\\x58\\x15\\xf7\\xd3\\x0a\\x76\\x6f\\x60\\x35\\xba\\x98\\xee\\x8a\\xdf\\xa7\\xe7\\xbe\\xdd\\xb1\\xd5\\xc7\\x4c\\x9c\\xfb\\xec\\x02\\x0c\\x8e\\xa3\\x7e\\x45\\x30\\xa2\\x59\\xbc\\x38\\xc0\\x51\\xf9\\x38\\xcb\\x40\\xf8\\x90\\xf0\\xb5\\x9d\\xbf\\xcb\\x52\\x71\\x13\\xcc\\x16\\x37\\x0c\\xb0\\xcf\\x6c\\xb1\\x37\\x28\\x26\\x59\\x55\\x45\\x7e\\x10\\x6c\\x21\\x89\\xe4\\x6c\\x21\\x89\\x63\\x30\\xfd\\xfa\\xeb\\xaf\\xbf\\xde\\xdf\\xeb\\x49\\x98\\x6a\\xf2\\xe9\\x0e\\xf6\\x01\\xc7\\xbd\\xd7\\x74\\xc0\\x8f\\x18\\x36\\x44\\x94\\xd7\\xdf\\x88\\x54\\xb2\\x23\\x29\\x3c\\x08\\xf5\\x74\\x25\\xd3\\x35\\x8b\\xe2\\x7e\\x82\\xae\\x8b\\x54\\x6e\\xdc\\x68\\x16\\x0f\\xc7\\xf6\\x39\\x6b\\xc5\\x41\\xe0\\xdd\\xd3\\x99\\x44\\x11\\xb2\\x8e\\x62\\xb3\\xa9\\x98\\xf8\\x0e\\x66\\xc1\\xae\\x55\\x17\\x90\\x60\\x95\\x44\\xf3\\x93\\x54\\x55\\x8f\\xf0\\x0d\\x26\\xff\\x2e\\x4b\\x53\\xc6\\xdf\\x42\\x65\\x15\\xdd\\x7b\\xde\\x78\\x03\\xbd\\xf9\\x90\\x80\\x7d\\xb2\\x3c\\x2d\\x24\\xa8\\xae\\x8f\\xc2\\x90\\xfd\\xe9\\x14\\x84\\xac\\xaf\\x66\\x46\\x24\\xab\\xa3\\xa7\\x42\\x3e\\xf6\\x01\\x57\\x41\\xc2\\x97\\x83\\xd5\\xfd\\xb7\\x33\\x00\\x31\\xff\\xb7\\x85\\x1c\\x77\\x4b\\xaa\\xe8\\x97\\xb0\\xad\\xd4\\x28\\x7f\\x92\\x55\\x11\\xe1\\xa7\\x05\\xab\\xde\\x14\\xe2\\x15\\x5f\\xe7\\x87\\x54\\x53\\xb9\\x57\\xfc\\xdb\\x22\\x7d\\x50\\x33\\x04\\x52\\xca\\x41\\x17\\x7a\\x5f\\xec\\x09\\x93\\x6b\\x2d\\x69\\xef\\x41\\xb0\\x14\\xb6\\xae\\xe7\\x21\\xe1\\xf7\\x68\\x1f\\x75\\xe7\\xff\\x26\\xe9\\x3b\\x3a\\xcd\\x8c\\x52\\x38\\x34\\xc3\\x75\\x7d\\x6c\\xb0\\x2f\\x8a\\xbd\\xdd\\x43\\x43\\x4c\\xa9\\xfb\\xe5\\x1e\\x90\\xc0\\xa7\\x2b\\x50\\xd3\\x01\\x79\\x1b\\xec\\xc3\\x1b\\xf0\\xb9\\x9f\\xe4\\x47\\x61\\xb7\\xe1\\x13\\x3e\\x73\\xb8\\xbe\\x55\\x9b\\x63\\xd7\\x51\\x7e\\x6a\\xd2\\xa0\\x2d\\xea\\xce\\x3a\\xb8\\xd0\\x29\\xb0\\xd5\\x3a\\x58\\xb3\\xb8\\x06\\xea\\x58\\xf6\\x65\\x63\\xe3\\x2a\\xed\\x89\\xb1\\x1a\\xc5\\x98\\x68\\x95\\xb2\\x69\\xeb\\xf7\\xa2\\xd8\\x39\\x94\\x66\\x40\\x65\\x3e\\x09\\xa5\\xd5\\xc4\\x55\\x93\\x24\\x61\\xc9\\x06\\x31\\x03\\x57\\x8a\\x19\\x5a\\xc8\\x1a\\x83\\xb9\\x0b\\xd4\\x7e\\x8c\\x3b\\xa2\\x4f\\x4e\\x40\\x27\\x1d\\xee\\x33\\x00\\x51\\x77\\x80\\x47\\xd2\\x4c\\x32\\x7c\\xf2\\xbf\\xfc\\x62\\xf1\\xdb\\xbd\\x59\\xfb\\x4a\\xcd\\xda\\x90\\xff\\xa2\\x4f\\x9c\\x53\\x80\\x1d\\xef\\xa0\\xe7\\xa1\\x83\\x35\\x3b\\x74\\x8e\\x25\\xe5\\x57\\x8a\\x5a\\x83\\xf1\\xa4\\x84\\x44\\x13\\xaa\\x0e\\x82\\x70\\x23\\xdf\\x2b\\xaa\\x74\\x98\\x09\\xa4\\x11\\xd1\\x20\\xa5\\x9c\\x7f\\x0b\\x2e\\x44\\xcb\\x63\\xb4\\xac\\x96\\xef\\xe2\\xcb\\x65\\x53\\x2f\\x23\\xf3\\x1c\\xe3\\x47\\x57\\xe4\\x5b\\x7a\\x85\\xa2\\xa7\\xd3\\xff\\x8a\\xf1\\xd5\\xb6\\x3b\\x68\\xf8\\xc1\\x9c\\x79\\x82\\xca\\x5b\\x1d\\x55\\xee\\xc5\\xf3\\x44\\x24\\x88\\x61\\x45\\xae\\x94\\x95\\xf0\\xca\\x50\\x58\\x72\\x38\\x3d\\x39\\xe0\\x70\\x44\\xda\\x0a\\x24\\x7b\\x9a\\x87\\x2b\\x7f\\x9d\\xac\\x6f\\x58\\xc0\\xc8\\x86\\xe6\\x21\\x8b\\xaa\\x38\\x90\\xff\\x3c\\x0f\\xdc\\x56\\x36\\x9e\\xb7\\x8f\\x36\\xb1\\xe7\\xa1\\xac\\xae\\xe5\\x93\\x9f\\x26\\x22\\xc1\\x75\\xed\\x1c\\xea\\x1a\\x2c\\x65\\x8d\\x31\\xc1\\xa6\\xae\\x91\\x2a\\x4f\\x37\\x74\\xed\\xef\\x8b\\x3d\\xc2\\xdd\\x39\\x6e\\xb0\\xa1\\x15\\x26\\xb2\\x82\\xba\\x46\\xf2\\x87\\x1e\\x1b\\x92\\xeb\\x67\\x5f\\x14\\xff\\xf1\\xee\\xed\\x1b\\xba\\xf2\\x79\\x51\\xec\\x31\\x26\\xe8\\xc4\\xda\\x91\\x8f\\x5a\\x3b\\x72\\x2c\\x3b\\x16\\x42\\x7d\\xad\\x36\\x49\\xbe\\x11\\x8e\\x83\\xb6\\xb7\\xfd\\x4f\\x90\\x24\\x25\\x7c\\x52\\x50\\xc8\\x9a\\xd5\\x35\\x2a\\x20\\xb5\\x7d\\x00\\xfb\\xe6\\x82\\xaa\\x17\\x4c\\x8c\\x45\\x70\\x11\\xc9\\xc9\\xd2\\x26\\x46\\x88\\xe3\\x98\\x96\\x98\\x1c\\x42\\x94\\xd0\\x02\\xce\\xce\\xe1\\x10\\x30\\xf1\\x3c\\x48\\x18\\x64\\xc5\\x38\\x48\\x68\\x41\\x92\\xa6\\x69\\x97\\xf4\\x47\\xcb\\x28\\x70\\x74\\x41\\xf5\\x29\\x8e\\xbd\\x62\\x15\\x4d\\xac\\x15\\x3b\\xd0\\x24\\x64\\x51\\xbb\\xe2\\x71\\xd0\\x3e\\xca\\xb5\\x03\\x83\\x6b\\x59\\xb9\\x3a\\xb0\\xe6\\xa1\\x4c\\x08\\xe4\\x3f\\x35\\x2e\\x7c\\xec\\x0c\\xa6\\x05\\x0e\\x05\\x15\\xe6\\xa0\\x5e\\xdb\\xd2\\x13\\x6b\\x0c\\x18\\x07\\x60\\x11\\x59\\x84\\x82\\x46\\x22\\x0e\\x90\\xa0\\xf6\\x08\\x05\\x18\\x25\\xaa\\x0c\\xf2\\xb3\\xb0\\xce\\x03\\x8d\\xd9\\xca\\x8c\\x64\\xad\\xe9\\xca\\x22\\xbb\\x2e\\x17\\xe5\\x64\\x82\\xb5\\x90\\x51\\x44\\x22\\x2a\\x63\\x30\\xa6\\x70\\x10\\x0f\\x1f\\x81\\x4b\\x8b\\x65\\xa4\\x89\\x51\\x61\\xcc\\x3f\\x1b\\xc4\\xeb\\x1a\\xe9\\x72\\xed\\x68\\xc8\\x23\\x35\\x5e\\x2c\\x41\\x02\\xe6\\x28\\x67\\x09\\x87\\xe9\\x8c\\x58\\x4c\\x9c\\x19\\x0e\\x5a\\xfd\\x4b\\x5f\\x80\\xa9\\xeb\\xca\\xa1\\x95\\xb6\\xe6\\x0d\\xad\\x7a\\x61\\xaa\\xf4\\x8e\\x6e\\x9a\\x4e\\xad\\xae\\x66\\xff\\xd8\\x10\\x3d\\xd7\\x81\\xab\\x4c\\xb9\\xdd\\x09\\xda\\x4f\\xc0\\x14\\xa7\\x94\\xc9\\x3b\\x84\\x3b\\x9b\\xa3\\xab\\xe5\\xf3\\xab\\x2d\\x48\\x3d\\xbc\\x90\\x9d\\x0a\\x8e\\x6c\\xb7\\x62\\xa9\\x64\\xb0\\x15\\xa8\\x07\\xee\\x3a\\xaf\\xb2\\x34\\x78\\xfe\\xf8\\x7f\\x3f\\x7b\\xfe\\xed\\x9f\\x5f\\x4c\\x9f\\xbe\\xf8\\xf3\\xf3\\xe9\\x7c\\xbe\\xde\\x4c\\xbf\\xfe\\xf3\\xb7\\xff\\x3e\\xfd\\xf2\\xcb\\x2f\\xbf\\xfa\\xea\\xc9\\x57\\x5f\\xce\\x66\\xb3\\x99\\x4b\\x92\\xfd\\x3e\\x67\\x92\\x51\\x87\\x33\\x1a\\xa8\\x70\\xec\\x9c\\xc6\\x82\\x1c\\x03\\x35\\x91\\x0d\\x2f\\x72\\xab\\x77\\x6f\\xc4\\x71\\x98\\xe7\\x39\\x8f\\xc0\\x84\\x35\\xed\\xd7\\xd9\\xd3\\x03\\xfe\\xa0\\xdf\\xcd\\x71\\xd5\\xf3\\x61\\xde\\x36\\xe7\\x8f\\xca\\x3a\\x8f\\xfc\\xf2\\x19\\xd5\\x11\\x30\\x5f\\xff\\xe5\\xb3\\xaa\\x54\\x79\\xbb\\x2d\\x73\\x62\\xef\\x6e\\x1d\\x04\\x4b\\x2e\\xc3\\x7e\\xff\\xba\\xf7\\xde\\x19\\xf8\\x9a\\x33\\xe7\\xce\\xcc\\x4f\\xe2\\x23\\x59\\x7b\\x74\\xce\\xde\\xcf\\xd8\\x2c\\x39\\xa2\\xae\\x85\\xb6\\x86\\x67\\x03\\x41\\x16\\x54\\x45\\x59\\xea\\x82\\x71\\xa0\\x52\\x03\\xb6\\xfe\\x1e\\xe8\\x38\\x9c\\x17\\xdb\\x5c\\xc7\\x38\\x7d\\x91\\x84\\xce\\x48\\x05\\x80\\xb8\\xd0\\xb6\\xfc\\xca\\xe6\\xc2\\x72\\xb1\\x81\\x13\\xc5\\x15\\xec\\x04\\x54\\x60\\x32\\x07\\xd5\\x45\\x37\\x66\\x67\\xe5\\xff\\xa2\\xbe\\x11\\x65\\xc1\\x99\\xca\\x1e\\x56\\x2e\\xc6\\xe6\\x00\\xb8\\xb0\\xc4\\xb4\\x45\\x69\\xb4\\xb8\\xfa\\x94\\x97\\x96\\x51\\x12\\xfb\\x52\\x2c\\x26\\x99\\x71\\x0b\\x46\\xae\\xac\\x70\\xea\\xe2\\xba\\x46\\x59\\x0f\\x17\\x64\\xfa\\x40\\xec\\x2b\\x8c\\xc9\\x4f\\xa8\\x20\\x19\\x38\\x5a\\x60\\xbc\\x38\\xd3\\x09\\x58\\xcc\\xd6\\xc9\\x42\\xdb\\x28\\x9d\\x98\\xbb\\x2b\\x87\\x2f\\x38\\x05\\xb0\\xc4\\x34\\x3d\\x64\\xe5\\x4e\\x85\\x1b\\xb9\\xc9\\xb5\\x11\\x4f\\xdf\\x13\\xa8\\x83\\x36\\x2e\\xa7\\x2f\\x2c\\x42\\xd9\\x33\\x46\\xcc\\x94\\x11\\x89\\xe0\\xe4\\x0c\\x07\\xe8\\x8f\\xdb\\x01\\xdb\\x1c\\x80\\x6b\\x20\\xed\\x9c\\x9c\\x6a\\xbf\\xd5\\x17\\xed\\x90\\x31\\x02\\xd0\\x03\\x47\\xaa\\x93\\xd6\\xba\\x42\\xdd\\xd8\\x1a\\xdb\\x4c\\xe2\\x27\\xe3\\x75\\x0a\\x36\\x97\\x40\\x9f\\xfa\\x16\\x10\\xda\\x1f\\x95\\xea\\x65\\x9a\\x74\\x26\\xd3\\xdf\\x12\\x77\\xfa\\x68\\xee\\xe2\\x3e\\x2c\\x83\\x8e\\x9d\\x0e\\xa0\\x37\\xc3\\xa7\\xa6\\x8d\\xa5\\xb6\\x48\\xa1\\xae\\x28\\x0f\\x4c\\x9d\\x95\\x3b\\xb3\\x40\\x5b\\x1c\\xab\\xd7\\x79\\xe0\\xca\\x09\\x50\\x6f\\x30\\xad\\x93\\x72\\xe2\\xaa\\xd7\\x49\\x19\\xbc\\xd5\\x0a\\x44\\x1c\\x6a\\x77\\x51\\x49\\xfe\\x11\\x1c\\x02\\xb5\\x26\\xca\\x8d\\x9e\\x72\\x35\\x4c\\x65\\x80\\x65\\x9b\\x2d\\x77\\x74\\xf4\\xd1\\xa8\\xe1\\x7e\\xb6\\x41\\x0a\\x44\\xa5\\xb4\\x20\\xea\\xda\\x19\\x50\\x14\\x75\\x12\\x87\\x3d\\xcf\\x55\\xdc\\x87\\x6b\\x31\\x33\\xb6\\xb9\\x7f\\x87\\xf7\\x7f\\x3b\\xb0\\x03\\x1b\\xf7\\xfa\\x6d\\x6d\\x17\\x43\\xc4\\x29\\x02\\x66\\xe5\\xde\\xc5\\x13\\x17\\x8a\\xb8\\x44\\xee\\x8f\\x5f\\xcc\\x68\\x30\\x29\\x3d\\x0f\\x39\\x99\\x72\\xa3\\x30\\xc7\\x16\\x61\\x2f\\x4f\\xcf\\xe7\\xb2\\xc4\\x38\\xd0\\x06\\x8b\\x25\\xc6\\x92\\x5f\\x89\\x62\\xb0\\x8a\\x4b\\xd9\\x49\\x97\\x04\\x3e\\xc2\\x21\\xb5\\x6c\\x5f\\xd9\\x82\\xd0\\x95\\x0f\\xb9\\xe0\\x63\\xff\\x94\\x88\\x1b\\x6b\\x0b\\x52\\xc8\\xc6\\x21\\xdb\\x77\\x45\\xf1\\xb1\\x52\\x79\\x13\\xda\\xdf\\x00\\xac\\xab\\xa7\\x59\\xb8\\x19\\x6f\\x8f\\x71\\xa9\\x12\\x18\\xec\\x0a\\xcb\\xe9\\x14\\x93\\xc2\\x5f\\x1f\\x4a\\x9a\\x11\\xf9\\x51\\x76\\x48\\x81\\x29\\xf7\\x0f\\x5c\\x65\\xb3\\xeb\\xc0\\xc4\\x70\\x02\\x60\\x33\\x42\\x8c\\x6d\\x1b\\x49\\x48\\x81\\x31\\x71\\x4a\\xcf\\x2b\\x3c\\xaf\\xf0\\xc1\\xaa\\x00\\xce\\xd0\\x90\\xa4\\x16\\x5d\\x9f\\xc7\\xad\\x78\\xf5\\x12\\x40\\x0e\\xb7\\x3b\\xcb\\xed\\x16\\x43\\xae\\x42\\x37\\xed\\x47\\x65\\xb4\\x70\\xfe\\x48\\x7b\\x78\\x98\\xb8\\xf2\\x2d\\x82\\x25\\x5b\\x36\\x6b\\x2e\\xf1\\x7c\\xff\\x93\\x32\\x0a\\x39\\xa1\\x00\\xa7\\x50\\x65\\x2c\\x53\\x1e\\x0f\\xec\\x35\\x3b\\x67\\x11\\x50\\xf6\\x30\\xc2\\xa8\\x9c\\x55\\x35\\xd7\\xe5\\xf5\\x10\\x09\\x85\\x66\\xe1\\x0d\\x19\\x61\\x38\\x50\\xc8\\x4f\\x26\\x04\\xa3\\x88\\xc7\\xb8\\xc3\\x76\\x05\\x95\\xdd\\x71\\x1f\\x3a\\x34\\x46\\x22\\x7a\\x4d\\x99\\xe7\\xd9\\x2b\\x29\\xf7\\x51\\x34\\x83\\xa3\\x37\\x03\\x32\\x1d\\x0a\\x1b\\x81\\xd9\\x3f\\x42\\x85\\xa3\\x95\\xe4\\x27\\x66\\xdb\\x2d\\xcf\\xb3\\xf2\\x37\\xf7\\xa1\\xfc\\xe7\\x57\\x7b\\x29\\xc5\\x81\\xa9\\x94\\xe4\\x96\\xdb\\x8d\\xa1\\x3c\\x9d\\x75\\xad\\xa3\\x46\\x41\\x96\\x2d\\x9d\\x20\\x0c\\x2f\\x38\\x00\\xa5\\xbd\\x1f\\x40\\xc7\\x68\\xf2\\x94\\x72\\x59\\x1b\\x02\\x69\\x7f\\xfb\\xe4\\xf0\\xf4\\x16\\xd2\\xfd\\x00\\xf7\\xd6\\xd3\\x93\\x72\\xdb\\xec\\x78\\x0e\\x7b\\xb3\\x77\\x3a\\xab\\x0e\\xe2\\x7b\\x0e\\xb6\\x07\\xbb\\x6b\\x23\\x87\\xa9\\x09\\x89\\x92\\x58\\xee\\xda\\xf3\\xa0\\x24\\x30\\x61\\x54\\x77\\x4c\\x5b\\x11\\x55\\xd3\\x29\\x2e\\x5b\\xb4\\x94\\x44\\x55\\x4c\\x58\\x6f\\x43\\x01\\x2a\\x2b\\xd5\\x9e\\x94\\x08\\x60\\x32\\x21\\xfa\\x0d\\xf6\\xc9\\xa1\\xb3\\x44\\x3d\\x20\\xfb\\x38\\x94\\x03\\x2d\\x93\\x43\\x7c\\x45\\x7e\\x27\\x3f\\xd3\\xab\\x68\\x29\\x20\\x22\\xc6\\xd5\\x96\\xfc\\x9d\\x5e\\x2d\\xcb\\xab\\x2d\\xf9\\x4f\\x15\\xc0\\x03\\x8e\\x08\\x6a\\x75\\x3a\\x54\\x0b\\x76\\x2f\\x92\\x92\\x25\\xf5\\xea\\x20\\x44\\xc1\\x6b\\xc5\\x24\\xe0\\x47\\x57\\x19\\xf9\\x87\\xca\\x9e\\xd4\\xf2\\x3b\\xa4\\xfc\\x87\\x4a\\xd1\\x4a\\xf4\\xda\\x1c\\x30\\xd5\\xc9\\x41\\x14\\xa0\\xd4\\x86\\xa7\\x7d\\x9e\\x3c\\xd4\\xe0\\x33\\x53\\xaf\\x0b\\x2e\\xca\\x22\\xaf\\xea\\x54\\xce\\x76\\x6d\\xce\\x42\\xea\\x1b\\xd0\\xea\\xd5\\x79\\x51\\xec\\xeb\\xdd\\x21\\x17\\xd9\\x3e\\x67\\x75\\xb1\\x67\\xbc\\x2e\\x59\\x92\\x16\\x3c\\x7f\\xa8\\x4b\\xf6\\xdb\\x21\\x2b\\x65\\x2b\\xeb\\x62\\xcf\\x52\\x68\\xff\\x2f\\xe3\\xed\\xc3\\xb7\\xbf\\xd1\\x4e\\x18\\x19\\x9c\\x31\\x92\\xbf\\x5a\\xdf\\x60\\xf4\\x8b\\x1e\\xbe\\x90\\x6c\\xda\\x39\\xd7\\x72\\x9b\\xf5\\x59\\x01\\x43\\x47\\x24\\xb3\\x7c\\xca\\x9e\\xb4\\x6c\\xc9\\xd3\\x7e\\x6d\\x9f\\xc7\\x96\\xc8\\x42\\xf6\\x76\\xdc\\x97\\xc5\\xfe\\xf3\\xba\\x24\\x73\\xfe\\x51\\x97\\x7e\\xe8\\xd7\\xd6\\xdb\\xd9\\xb2\\xfc\\xcb\\xec\\x5e\\x6d\\x69\\x32\\xda\\x49\\xc9\\x9b\\x68\\xa7\\x7f\\x2a\\x0c\\x51\\x31\\x51\\x00\\x5a\\xbf\\x41\\xd8\\xaf\\x49\\x9a\\x3e\\x93\\xdc\\xf9\\xa9\\x8d\\x45\\x67\\x5e\\x0e\\xac\\x77\\x7f\\xab\\x9d\\xda\\x63\\x7a\\x1e\\x5b\\x80\\x10\\xdf\\xb3\\x99\\xc7\\xe7\\xe7\\x52\\xe0\\xe3\\x4a\\xc5\\x39\\xf0\\x4d\\x27\\x10\\xeb\\xa2\\x1f\\x10\\xa1\\x83\\x31\\x98\\x63\\x66\\x8c\\x1b\\x60\\xd0\\x0e\\x60\\x02\\x21\\x28\\x60\\x10\\x17\\xf7\\x6c\\x4b\\x17\\x55\\x67\\x94\\xc9\\x95\\xec\\x90\\xc4\\xa4\\x04\\x1b\\x0f\\x6e\\xc9\\x02\\x88\\x77\\xf5\\x86\\x52\\x40\\x9f\\x58\\x09\\x13\\x29\\xb0\\xb7\\x9c\\xe2\\xcf\\x44\\xbe\\x06\\x20\\xc4\\x1f\\x0b\\x3a\\xd3\\x78\\x21\\xa3\\x02\\x3c\\x36\\xf0\\xec\\xba\\xec\\xc4\\x81\\x0b\\x77\\x92\\x41\\x71\\xcf\\x43\\xe5\\x84\\xaa\\xe7\\x85\\x55\\xb7\\xf1\\xe4\\x2b\\x47\\x6d\\x1e\\xff\\x3b\\x2b\\x01\\xea\\xf5\\x01\\x24\\x75\\xfe\\x78\\xff\\x33\\xeb\\x63\\xf5\\xee\\xff\\xcf\\x4b\\x74\\x66\\x85\\xd4\\xeb\\xd8\\x2a\\x5d\\xd3\\x19\\x2e\\x69\\xd9\\x56\\xd4\\x7e\\x21\\x27\\xeb\\xc6\\xc2\\x76\\xe5\\x02\\xd7\\xed\\x2f\\x9e\\x28\\xb6\\xdb\\xfc\\x64\\xf1\\x2c\\x0e\\x4c\\x2f\\x01\\x29\\xe9\\x88\\x57\\xab\\x6d\\xcd\\x6d\\x7b\\x9b\\x8c\\x2c\\x09\\xef\\x96\\xc4\\x6a\\xb3\\xb7\\x24\\x7c\\xb0\\x24\\x92\\x89\\x15\\x52\\x28\\x1c\\x45\\x14\\xbd\\xa0\\x3c\\x94\\xb7\\x3a\\x54\\x80\\x33\\xdd\\x14\\x39\\x50\\x01\\x2a\\xd3\\xde\\x2a\\xaa\\x49\\x2d\\x68\\x1e\\x25\\x72\\x8e\\x0f\\xb4\\x0c\\x0f\\x81\\x53\\xf9\\x37\\x49\\xa5\\x3a\\x55\\x60\\x52\\x45\\x87\\xd0\\x35\\x7b\\xdb\\x0d\\x5c\\x0b\\x8c\\xdc\\x18\\x15\\x4a\\xa0\\x41\\x92\\x1f\\xcb\\xea\\xda\\x9a\\x19\\x0a\\x3a\\xcd\\xfe\\x38\\x24\\x2b\\xf5\\x4b\\x27\\x7f\\xba\\xbf\\xfc\\xd2\\x7e\\xfa\\xe5\\x17\\x77\\x08\\x87\\x83\\x77\\xda\\x7f\\xad\\x6b\\x88\\x05\\x30\\x0f\\x5d\\x37\\xf8\\x54\\xad\\x18\\xa0\\x57\\x62\\x49\\x33\\xaa\\x11\\x4b\\x34\\x09\\x33\\x00\\x8f\\x84\\xd3\\x19\\x29\\xed\\xdd\\xb9\\xd0\\x8e\\x60\\xad\\x13\\x9a\\x84\\x71\\x1d\\xd7\\xc3\\x86\\x74\\x59\\x85\\x49\\xfe\\x24\\x88\\xb7\\x20\\x2c\\x14\\xe8\\x6a\\xf9\\x6c\\xd1\\x7a\\x80\\x93\\x9e\\x37\\x29\\xb3\\x62\\xa6\\x75\\xaa\\x94\\x05\\xf8\\x55\\x0e\\x30\\x86\\xc1\\x03\\xd9\\xc0\\x52\\x13\\x8f\\x11\\x18\\x0b\\x4e\\x34\\x8c\\x2c\\xcc\\xc8\\xec\\x61\\x15\\x34\\x0b\\xfb\\xa0\\x09\\xa6\\x08\\x08\\xe3\\x80\\x69\\x45\\x71\\x11\\x16\\xd4\\x75\\x83\\x13\\xef\\x83\\x22\\x2c\\x26\\x14\\x56\\xc7\\x48\\x87\\x05\\x86\\x1a\\x95\\x56\\xb6\\x20\\x9f\\x76\\x76\\x64\\x13\\xd7\\x6d\\xb0\\x94\\xf4\\x56\\xb2\\x45\\x60\\xd4\\x54\\x50\\x1c\\x59\\x7f\\x2c\\xe5\\x9d\\x7e\\xf2\\x19\\xd5\\x96\\x64\\xed\\xdc\\x8a\\x09\\x37\\xd3\\x3e\\xc2\\x15\\x13\\x6a\\x2c\\x05\\x31\\xd6\\x19\\x4a\\xb2\\x56\\xd0\\xaa\\xcc\\x34\\x0a\\x83\\x06\\x8b\\x36\\x4c\\x92\\xdd\\x8f\\x62\\xa4\\x13\\xc5\\x27\\x7b\\xb0\\x6d\\x7b\\x80\\xb8\\x32\\x4e\\x42\\x5d\\xfb\\xd0\\x81\\x90\\x07\\x70\\xf4\\xad\\x2c\\x3d\\x4e\\x8f\\x3c\\xc2\\x4e\\xf3\\xf1\\x77\\xe2\\xba\\xc6\\xe5\\x9c\\xcb\\xc9\\x92\\x8c\\x28\\x08\\x64\\x86\\xbb\\x32\\xbd\\x0a\\x8e\\xca\\xb8\\x2c\\x38\\x0e\\xc3\\x10\\x19\\x35\\x61\\xa7\\x2e\\x53\\x2d\\xdb\\xaa\\x40\\x29\\x79\\xac\\xb3\\x4d\\xc6\\xd2\\x90\\xa9\\xaf\\x01\\xf3\\x25\\xf3\\xda\\x98\\xb8\\x49\\x67\\xea\\x95\\xd4\\x8e\\x32\\x5f\\xb5\\x5d\\x81\\xc7\\xa5\\xe1\\x1b\\x5f\\x49\\xf0\\x27\\x05\\xd5\\xf6\\x71\\xd3\\x82\\x33\\x3b\\x3c\\xdb\\xec\\x3a\\x23\\x09\\x2d\\x94\\xb2\\x25\\x02\\x73\\xd8\\x30\\x9b\\xcc\\x83\\xd2\\xa2\\x96\\xd7\\x59\\x58\\x05\\x45\\x98\\x05\\xca\\xed\\x6d\\x51\\x59\\xd1\\x5a\\xa8\\x72\\x77\\x43\\x0e\\x6f\\x5b\\xf4\\xbc\\x83\\x03\\xe8\\x09\\x75\\x0c\\xa9\\x65\\x2f\\x14\\xf2\\xd6\\x5c\\x28\\x50\\x26\\xbd\\x94\\x0f\\x74\\x9f\\xe6\\xbb\\x8b\\x71\\x5d\\x73\\x2b\\xa6\\x56\\x5b\\x52\\x29\\x59\\xd5\\xf2\\x23\\x3b\\x07\\x71\\x8b\\xbd\\xd8\\x96\\xc5\\x61\\x0f\\x4a\\xca\\x6c\\x83\\x04\\x5d\\x21\\x8e\\xd5\\x2e\\x22\\x2d\\x78\\x89\\x45\\x62\\x8c\\xec\\x0d\\x61\\x4a\\xe4\\x24\\x8b\\x51\\x6a\\x64\\xab\\x55\\x44\\xe7\\x4b\\x84\\x98\\x8e\\x78\\xd6\\x9a\\x14\\x9e\\xb2\\x95\\x5d\\xd4\\x2c\\x96\\x5a\\xce\\x15\\x86\\x26\\xa9\\x6e\\x71\\x89\\x9b\\x1a\\x4c\\x78\\xcb\\x8c\\xa0\\xc1\\x0a\\xd2\\xe9\\x1c\\x13\\xde\\x34\\x0d\\x19\\x32\\xf2\\xad\\x36\\xc9\\x38\\xee\\x74\\xba\\x3c\\x50\\xfb\\x7a\\xde\\x13\\x07\\x22\\xee\\xfc\\xbb\\xfa\\x79\\x2c\\x7f\\xda\\x69\\xd0\\x64\\xb6\\xb7\\x00\\x60\\xdc\\xab\\x98\\x66\\x5d\\x7f\\x80\\x12\\x75\\xea\\xae\\xf5\\x61\\x3f\\xbf\\xfe\\xfe\\x79\\x01\\xb1\\x23\\x12\\xd8\\x60\\xbc\\xbf\\x05\\x41\\xf6\\x94\\xfd\\x54\\x3b\\x95\\xc7\\x75\\x8d\\xfe\\x43\\x47\\x60\\xc0\\xe1\\xef\\xc1\\x2b\\xac\\x5c\\xbb\\x45\\x58\\x78\\x5e\\xd2\\xed\\xd6\\xc2\\xf3\\x34\\x44\\xa0\\x4a\\x19\\xaf\\x80\\x50\\x8b\\xc3\\x2a\\x40\\xa3\\x3d\\xd5\\x47\\xce\\xd5\\x50\\xff\\xc8\\x31\\xd6\\xd8\\xb2\\x0a\\x45\\x50\\x61\\x03\\x68\\xa5\\x69\\xb0\\x6a\\x1b\\x84\\x96\\x2a\\x68\\xa9\\x94\\x6d\\x01\\x6a\\xa8\\x54\\xfc\\x33\\xbb\\x46\\x52\\x4e\\x5c\\x29\\xb8\\x42\\xf0\\x07\\x4b\\x9e\\x01\\xcd\\x9c\\xc0\\xe7\\x24\\xa3\\x7e\\x10\\xce\\x99\\x24\\x29\\x9e\\x27\\x5a\\xbe\\x00\\x50\\xde\\x89\\x0a\\x56\\xbb\\x3b\\xd3\\x02\\xfc\\x9c\\x41\\x96\\x36\\x12\\x8c\\x9c\\x4b\\x4e\\xba\\xc9\\x74\\xfe\\xe6\\x79\\x7f\\x69\\xdf\\x58\\xef\\xf8\\xd0\\x4d\\xd9\\x26\\x39\\xe4\\x62\\xea\\x4e\\x38\\x8e\\x29\\x8b\\xca\\x98\\x3a\\xf3\\xc0\\xfc\\xaa\\x25\\x82\\x15\\x96\\x23\\x63\\xd6\\xa8\\xd4\\x98\\xff\\x16\\xf2\\xa0\\xc4\\x0a\\xe2\\x34\\x76\\x03\\x13\\xcb\\xe3\\xe9\\x36\\x51\\xae\\x87\\x66\\xb7\\x77\\xf6\\x74\\x9e\\xa7\\xcd\\xec\\x94\\x0e\\xcf\\xda\\xb4\\x8c\\x18\\x5b\\x3f\\xb3\\xc9\\x58\\x0f\\x21\\x5e\\xb0\\x51\\xab\\x3d\\xa1\\xdc\\x8f\\x74\\x5e\\x2a\\xe7\\xbe\\x91\\xbb\\x42\\xcf\\x4f\\x70\\x14\\xc9\\x0a\\x28\\x7e\\xe0\\x8a\\x64\\x05\\x5b\\xc7\\x25\\x46\\xde\\x0e\\x20\\x46\\xd0\\x5b\\x9e\\x3f\\xb8\\xc4\\xdd\\x14\\xa5\\x1b\\xb8\\x37\\x62\\x97\\xbf\\x2c\\x4a\\x97\\xa8\\x03\\x17\\x37\\xb0\\xad\\xa2\\x77\\xc9\\xbd\\x76\\xbd\\x72\\x77\\xc9\\xfd\\xf7\\xf0\\xe8\\x92\\x35\\xcb\\xf3\\x6a\\x9f\\xac\\x33\\xbe\\x0d\\x5c\\xf9\\xf2\\x4e\\xbd\\xa8\\x2f\\xc6\\xa4\\x01\\xbe\\xfc\\xa0\\x5e\\x5c\\x52\\x16\\x77\\xd5\\x3e\\xe1\\x81\\x5b\\x16\\x77\\xef\\xf6\\x09\\x77\\xc9\\xba\\xc8\\x55\\xca\\xba\\xc8\\x55\\xca\\xa1\\x62\\xbb\\x64\\x1f\\xb8\\x87\\x8a\\xbd\\x4e\\xf6\\x2e\\x01\\xa7\\x50\\x6d\\x78\\xe3\\xc2\\xcb\\xb7\\xf0\\x22\\xcb\\x82\\x9d\\x17\\x4b\\x33\\x30\\x78\\x0a\\x8c\\xa1\\xda\\x0b\\x9d\\xe0\\x9e\\xca\\xd6\\x56\\xa4\\x49\\x75\\xde\\x3f\\x8a\\x25\\x2a\\x85\\x25\\x2a\\x85\\x25\\x2a\\x83\\x25\\xd4\\xe6\\xaf\\xce\\x6c\\xfe\\x21\\x70\\x16\\x3a\\xc5\\x6c\\x7e\\x7d\\x10\\x2e\\xb7\\x9e\\xbd\\xef\\xb2\\x91\\x7d\\x97\\x05\\x2c\\xe2\\x31\\x2d\\x83\\x62\\x14\\x29\\x64\\x3d\\xa4\\xa0\\x32\\xab\\xa1\\x1a\\xf0\\xd4\\x4b\\x3e\\x4e\\x26\\xf9\\x00\\x4d\\x80\\x49\\xa0\\x6b\\x00\\xc6\\x6d\\xf1\\x3a\\xf8\\xe8\\x75\\xa4\\x18\\x4e\\x1a\\x5e\\x71\\x81\\xb8\\xe6\\x15\\xe6\\x33\\x1c\\xfc\\xa7\\xda\\x73\\xdd\\x09\\x1f\\xae\\xeb\\x7f\\x9c\\xa4\\x79\\x1e\\xf3\\x6f\\x4a\\xb6\\x09\\x67\\x01\\x80\\x29\\x26\\xbf\\xd3\\x41\\xd7\\x6c\\x8f\\x42\\x83\\x71\\x31\\xc9\\x46\\xa4\\x9e\\xf2\\xe4\\x90\\x90\\x4b\\x4c\\x3b\\x92\\x31\\xfc\\xab\\xe7\\xfd\\x2d\\x54\\xb3\\x96\\x05\\x9f\\x87\\x1e\\x02\\xc7\\xc9\\x82\\x91\\xf9\\xe1\\x9d\\x57\\xb8\\xe7\\x69\\x6e\\xc9\\x01\\x49\\x60\\x80\\xf4\\x03\\x71\\x4a\\x3f\\xad\\xd3\\x5a\\xa1\\xc4\\x87\\x13\\xdc\\x19\\xc8\\xbe\\xd6\\xb5\\x63\\xf5\\xb2\\xbf\\xf1\\x25\\x86\\x1b\\x82\\x18\\xc7\\xc1\\x1f\\xa0\\x3a\\x70\\x90\\x95\\x04\\x93\\xa8\\xfa\\x91\\x45\\x90\\x34\\xee\\x38\\xbb\\x10\\x9f\\x9c\\x85\\x51\\x14\\x16\\x32\\x5f\\x77\\x00\\xb0\\x5e\\xa0\\x18\\xdf\\x16\\x82\\x4a\\xcd\\xcc\\x9d\\xce\\x10\\x6c\\xcb\\x4f\\xd6\\x8c\\xfa\\x55\\x53\\x4e\\x04\\x0e\\x5e\\x79\\xde\\x2b\\xbd\\x79\\xe0\\x94\\xab\\xc1\\x44\\x8e\\xf1\\x95\\xc5\\x33\\xfb\\x4a\\xd7\\xf9\\xdf\\x1c\\xa5\\xe4\\x9b\\xdd\\x2c\\x35\\x1e\\xd0\\x60\\xd9\\xac\\x9f\\xd7\\x45\\x51\\xa6\\x70\\x78\\x23\\x59\\x61\\x49\\x54\\xf5\\xe8\\xac\\x11\\xe3\\x3f\\x1a\\xb2\\x3a\\x63\\x1c\\xe9\\x42\\x17\\xa8\\x22\\xab\\xeb\\x3e\\x24\\xc0\\x77\\x59\\xa8\\x17\\x0a\\x56\\x1b\\xd3\\x75\\xf0\\x02\\x67\\x5d\\x86\\x3c\\x48\\x89\\xc8\\xb0\\xfd\\x14\\x7c\\x9b\\x38\\x90\\xda\\xde\\x36\\x2a\\x71\\xc8\\xe5\\xfe\\x24\\x36\\x8c\\x0c\\x70\\xac\\x9a\\xc7\\x57\\xb2\\xe0\\x28\\x94\\x9b\\xe5\\x80\\xc3\\x4a\\x11\\x3a\\xf3\\x40\\x3b\\x22\\x69\\x0f\\xb4\\x48\\x59\\xbd\\xb9\\xc4\\x55\\x36\\xb3\\xee\\xd0\\xa7\\xbb\\xcf\\x30\\x75\\xb6\\x47\\xfd\\x74\\x32\\xa4\\xbd\\x2d\\xf8\\xe8\\x53\\xd2\\x53\\xbe\\xc5\\x4d\\x0e\\xa2\\x50\\x9c\\x8b\\x68\\x1a\\x88\\x0e\\xd1\\x51\\xea\\xbe\\x33\\x07\\x6c\\x13\\xdd\\x5d\\x70\\xe0\\x20\\x6e\\x55\\xae\\x5d\\xf2\\x3f\\xd5\\xf7\\x31\\xa4\\x7c\\x72\\x76\\xcc\\xc9\\x63\\xbc\\xe8\\xc9\\xa7\\x65\\x28\\x82\\x12\\xba\\x4e\\xc6\\xba\\x17\\x0f\\x1c\\x9a\\x6d\\xea\\x23\\xe2\\xe1\\x06\\xb0\\xc2\\x8d\\xf4\\x9a\\x15\\xe4\\x4b\\x10\\xea\\xec\\xd9\\x01\\xeb\\xbd\\x01\\xee\\x80\\xb4\\x4f\\x54\\xda\\xb3\\x76\\xac\\xeb\\x11\\xa4\\x78\\x2e\\x33\\x15\\x52\\x04\\xb7\\x1d\\xbe\\x7c\\xcb\\xd7\\x05\\xba\\xd1\\x0e\\xcc\\x16\\x29\\xda\\xc9\\x3e\\xfd\\x3a\\x3e\\xe5\\x52\\x0c\\xed\\x24\\xa6\\x36\\xac\\x2a\\x18\\xcd\\xf6\\xc5\\x46\\x61\\xe5\\x93\\x6c\\xab\\x25\\x89\\xf5\\x32\\x2a\\x6e\\x7b\\x30\\x7b\\xda\\xdf\\xa6\\xed\\xf8\\xcb\\xec\\xde\\xa4\\x51\\x97\\xf1\\x75\\x01\\xac\\x91\\x5d\\x42\\x3b\\xfb\\x40\\x5c\\x30\\xb5\\xcc\\x8a\\x79\\x24\\xae\\x71\\x2b\\xb3\\x17\\x5b\\xae\\x74\\x4f\\x25\\x71\\x7e\\xad\\x75\\xb4\\xb8\\xa1\\x8d\\x8d\\x56\\x07\\x84\\x6e\\xc1\\xdd\\x40\\xb3\\x94\\x46\\xb0\\xff\\x6f\\xb5\\x6f\\x2d\\x46\\xff\\xcb\\xc9\\xbe\\xe5\\x16\\xda\\x37\\xfa\\x1a\\xa0\\x7d\\xc6\\x3b\\xc7\\x16\\x15\\x59\\x4f\\x4e\\xd4\\xdb\\x18\\xce\\xc1\\xfe\\xeb\\x13\\xa7\\x5d\\x70\\x62\\xc4\\x04\\xbd\\xfa\\xf0\\x91\\x3d\\x5c\\x11\\x21\\x54\\xde\\x5d\\x71\\xa8\\x58\\xad\\x83\\x0e\\xef\\x18\\x3f\\xe0\\x1a\\x3c\\x3a\\xae\\x08\\xd7\\x39\\xb4\\xeb\\x86\\x3a\\xec\\x82\\xff\\xc5\\x41\\xac\\xf2\\x43\\x89\\x1f\\x5d\\x91\\x12\\x32\\x45\\x1f\\xfc\\xf8\\x12\\x42\\xd9\\xfb\\xc8\\x9f\\xe0\\x1a\\x3f\\xba\\xea\\x6c\\x4c\\x32\\xd1\\x39\\x99\\xcf\\x3a\\x7b\\x8b\\xc2\\x4a\\x9e\\x37\\x2b\\x9f\\x81\\x8b\\xc9\\x51\\xc5\\x74\\x0b\\x8e\\x70\\xae\\x32\\x0c\\xd5\\x53\\x90\\x44\\xc1\\x6c\\xcf\\xc7\\x91\\xdc\\x90\\x2d\\xd9\\x91\\x07\\x72\\xdb\\x19\\x3f\\x80\\x28\\x75\\x8b\\x8f\\xa5\\x7f\\x93\\xf0\\x34\\x67\\x10\\x13\\x96\\x96\\xa4\\xa4\\x6b\\x93\\x42\\x12\\xba\\x6e\\xc3\\x56\\x63\\x52\\xea\\x98\\x41\\x48\\x3d\\x50\\x63\\x73\\x8a\\x09\\x3a\\xd0\\x5b\\xd5\\x3d\\x88\\x5b\\xdb\\xbd\\x81\\x81\\x27\\xda\\xd0\\x5b\\x5d\\xa5\\xfc\\xda\\xbd\\xd1\\xb1\\x03\\x31\\xc5\\x92\\xad\\x94\\xc2\\x16\\x54\\xb2\\x50\\x95\\x89\\x61\\xca\\xd2\\x56\\x19\\x13\\x8a\\xc0\\x7c\\x4c\\xb3\\x6a\\x2f\\x25\\x44\\xed\\xcc\\xbd\\xf1\\x59\\xce\\x76\\x96\\x8f\\x70\\x43\\x54\\x12\\x65\\x98\\x68\\xc3\\x91\\xfe\\x91\\x81\\xeb\\xc6\\x24\\x6f\\x6d\\x36\\xb4\\xe6\\x39\\x9f\\x4e\\x71\\x45\\xe5\\xce\\xbc\\x67\\x6b\\xc4\\xa3\\x3c\\x56\\xc1\\x45\\xb6\\xf4\\x81\\x56\\xd1\\x3c\\x26\\x3b\\x8a\\xaa\\xe8\\x71\\xac\\x6a\\xd3\\x86\\x98\\xbe\\x7c\\x2c\\x4a\\x81\\x30\\xd9\\x53\\xd3\\x3f\\x20\\xf4\\x49\\x1e\\x6d\\x55\\x0c\\xe0\\x2d\\x45\\x49\\xb8\\x07\\xf3\\xc8\\x6d\\x22\\x40\\xa8\\x08\\xf6\\xbe\\x64\\xab\\x41\\x9c\\xad\\xeb\\xed\\xf9\\xb2\\x16\\x06\\x53\\xd2\\xe5\\x96\\x14\\x65\\xb6\\x85\\x3a\\x1e\\x94\\x39\\x61\\x41\\xf4\\x02\\x06\\xa5\\x8a\\x57\\xa5\\x16\\xac\\x0b\\x25\\x9e\\x10\\xce\\x58\\x5a\\x3d\\x53\\x30\\x1d\\x24\\x30\\xcb\\xf7\\xfb\\x52\\xcd\\x88\\x6f\\x7f\\x54\\x5c\\x66\\x82\\x89\\x64\\x69\\x94\\xe3\\xe5\\xce\\xff\\xb5\\xc8\\x38\\x8c\\xb4\\x21\\x6b\\x4c\\xd0\\x0d\\x3d\\x44\\x5b\\x39\\x37\\xfa\\x89\\x46\\x31\\xb9\\x69\\x47\\xf7\\xac\\x38\\x70\\x41\\x67\\x64\\x2f\\x09\\xed\\x61\\xef\\x79\\xfa\\xc1\\x18\\x9e\\x14\\x64\\x47\\x36\\x18\\x58\\x64\\x50\\xe3\\x9c\\x5c\\x62\\x30\\x12\\x68\\x68\\x4b\\x36\\xc4\\x99\\xe3\\x80\\xf5\\x3d\\xb6\\x4e\\xe2\\x08\\xb9\\x93\\x2d\\xd9\\x60\\x8c\\xc9\\x5e\\xd6\\xe1\\x79\\x08\\x7e\\x4d\\xcb\\xe0\\x32\\xa3\\xa7\\xca\\xc0\\x76\\x3f\\x81\\xaa\\x1f\\x8c\\x49\\x12\\xde\\x98\\x98\\x1e\\x83\\xa1\\x4d\\x26\\x64\\x46\\x52\\x1c\\xdc\\x28\\xfd\\x58\\x0a\\xd8\\x10\\x56\\x4e\\xed\\x54\\x39\\x21\\xce\\x6c\\xa1\\x9d\\xf7\\x4f\\x43\\x8f\\x28\\xa3\\x4c\\xb0\\x38\\xb7\\xb4\\x52\\xc3\\xcd\\x4b\\x57\\xbe\\xb6\\x40\\x45\\x0c\\x77\\x07\\x15\\x6a\\x1b\\xef\\x60\\xef\\xee\\xcc\\x16\\xc4\\x47\\x41\\x91\\x38\\x03\\xe3\\xe2\\x14\\xc6\\xb3\\x0d\\xea\\xc0\\x5c\\xb4\\x60\\x9e\\xd2\\xad\\x02\\xf3\\x9b\\x4f\\x83\\x79\\x8a\\x8f\\xa7\\xd0\\x9a\\x1a\\x68\\x45\\xe5\\x27\\x21\\x3d\\x25\\x1b\\xba\\x86\\xdc\\xa0\\x4c\\x95\\xed\\x78\\x9e\\x0a\\x7c\\x84\\x5c\\xf4\\xa1\\x5e\\x2e\\x7d\\xec\\x4e\\x6e\\x34\\xc8\\x2d\\x97\\x3e\\x0a\\x03\\xff\\x72\\xb9\\xf4\\x6b\\xec\\xe2\\x89\\x8b\\xe4\\xd3\\x23\\xac\\x3c\\x08\\xe9\\xa6\\x3f\\xb6\\x62\\x3a\\xc5\\x09\\xdd\\x44\\x45\\x4c\\x9c\\xcc\\xf3\\xb6\\x0e\\xa5\\x89\\x6f\\x36\\x4b\\x5d\\x83\\xd8\\x2a\\x97\\x17\\xd2\\xd5\\xfa\\x57\\x9e\\xe7\\x54\\x1a\\xe6\\xfd\\x16\\xe4\\x71\\x5d\\x4b\\x09\\x05\\xf2\\x99\\x4d\\x24\\x19\\xfe\\xcb\\x4b\\x57\\x05\\x00\\x70\\xba\\x74\\x40\\x71\\x06\\x54\\x0a\\x32\\x57\\x6e\\x8f\\xa6\\xcc\\xa6\\x0f\\x3b\\xd3\\x29\\xd9\\x6b\\x01\\x4f\\xee\\x0b\\xf5\\xd4\\x5a\\x64\\x61\\xbc\\x38\\x78\\x9e\\xb3\\xe9\\x6c\\x4f\\xf7\\xbe\\x60\\x49\\x99\\x16\\x77\\x5c\\x66\\x37\\xcf\\xa6\\xc0\\x0d\\xd9\\x19\\x3c\\xab\\xb7\\xd3\\xca\\xbe\\xcf\\x43\\x42\\x7c\\x97\\xc3\\x1c\\xd9\\xcb\\xc9\\xc7\\x5d\\x84\\xc9\\xf4\\x22\\xe3\\x17\\x6b\\x6c\\x96\\x53\\x07\\xa7\\x65\\x24\\x9d\\x48\\xc0\\x00\\x40\\x75\\x66\\x2a\\x40\\xb5\\x6d\\xe4\\xb7\\xc6\\x9e\\x67\\x6c\\xc5\\x4d\\x13\\x27\\x96\\x59\\xae\\x82\\x4f\\x15\\x72\\x5a\\xe3\\x73\\x2b\\xe0\\x2b\\x1c\\x21\\x8d\\x93\\x2f\\x1a\\x65\\x75\\x5d\\x00\\xe6\\x35\\x71\\x1e\\x95\\x7e\\x0b\\x4b\\xa9\\x5a\\x02\\x15\\x27\\x3b\\xeb\\x5b\\xbb\\x72\\x90\\xa1\\x7d\\xb3\\x80\\x37\\x50\\x11\\x05\\x73\\xba\\xa1\\x99\\xa4\\x34\\x05\\x79\\xe2\\x50\\x9a\\x59\\x67\\x4b\\xff\\x3e\\x78\\x77\\xb8\\x46\\x86\\xdb\\xc9\\x09\\x4d\\x92\\xa3\\xdf\\x76\\x87\\xbf\\x3e\\x1c\\xfb\\x7a\\x1e\\xda\\xd1\\xad\\xd5\\x26\\xd9\\xd2\\x5d\\x6b\\xb9\\xb7\\xd3\\xdb\\x07\\xc3\\x89\\x81\\x55\\x38\\x70\\xb1\\xe7\\x69\\xdc\\xc5\\x29\\xb7\\x0c\\xc7\\x43\\x1e\\xa8\\x3b\\x7e\\xd4\\x72\\x6e\\x4f\\xc3\\xc8\\x4b\\x90\\xc6\\x84\\xfb\\x59\\xf5\\x5e\\x75\\x0d\\x84\\xfa\\x6e\\x02\\xa8\\x85\\xbb\\xed\\xf4\\x5f\\x4a\\x46\\xad\\xd7\\xf0\\x64\\x03\\xee\\xfe\\x70\\x03\\x06\\xca\\x46\\xd7\\x2f\\x59\\x75\\xc8\\x05\\x15\\x84\\xfb\\x22\\x29\\xb7\\x4c\\x40\\x9c\\x72\\xf5\\x48\\x33\\xb0\\x8c\\xd4\\x42\\x4a\\xc4\\xe3\\xa0\\x67\\x7f\\x49\\x40\\xf9\\x75\\x96\\xf2\\x25\\x75\\xed\\xec\\xcd\\x9c\\xd7\\x75\\xfb\\xa8\\x89\\x7e\\x46\\x4a\\x05\\xf6\\xea\\x18\\xc3\\x49\\x3c\\xcf\\xd9\\xfb\\xbc\\x50\\xae\\xb2\\x60\\x9b\\xdd\\x86\\x32\\xcb\\xb4\\x3d\\xf6\\x9a\\xf6\\x71\\x93\\xa4\\xbc\\x66\\x99\\xd7\\x93\\xad\\xdc\\xcb\\x39\\xcd\\xed\\x4b\\x4a\\x16\\xf9\\x62\\x90\\xa2\\xf1\\x7e\\x8e\\xc9\\x86\\xe6\\x8b\\x0d\\xa5\\x14\\x65\\xc3\\xdb\\x57\\x0a\\xec\\x79\\x3a\\xdf\\xa6\\x55\\x4f\\x64\\xec\\xae\\xae\\x37\\xba\\x2a\\xd5\\xb1\\xba\\x66\\xb8\\x49\\x5b\\xf3\\x02\\x94\\xd3\\x9b\\x28\\x9d\\x4c\\x62\\x2c\\xc1\\xcf\\x87\\x30\\xdd\\xfb\\x64\\x0b\\xb7\\x4f\\xbd\\x13\\xc5\\x7e\\xcf\\x52\\x84\\xb1\\xda\\x01\\x34\\xbd\\x9e\\x87\\x6b\\x0b\\xb9\\xca\\xb1\\x54\\x14\\x19\\x4a\\x91\\x77\\xdb\\x0f\\xfc\\xd3\\x22\\x55\\x2c\\xee\\x68\\x49\\x4e\\x5c\\xb5\\x71\\x5d\\x4c\\xac\\xc8\\x38\\x39\\x29\\x31\\xa9\\xe8\\xc1\\xf3\\xf2\\xe8\\x10\\xcb\\x2f\\x3d\\x27\\x9a\\x1c\\xb7\\x59\\xfb\\x65\\x74\\x6c\\x32\\x0e\\x97\\x3c\\x30\\x2e\\x9e\\xab\\x61\\x2b\\x0b\\x68\\xdd\\xe7\\x2d\\x71\\x50\\x52\\xd7\\x72\\x68\\xfa\\xf3\\x0f\\x2a\\xb3\\x1c\\x98\\x5c\\xe2\\x5f\\xf4\\x64\\x49\\x74\\x67\\x9e\\xcd\\x7a\\xf7\\x27\\xd9\\xac\\x7e\\x5d\\xbb\\xca\\x4d\\x9b\\x52\\xba\\xed\\x69\\xd0\\x33\\xe2\\x26\\x72\\xf0\\x4e\\xaf\\xff\\x99\\x76\\xb2\\x72\\x32\\x80\\xb3\\x3e\\x90\\xe0\\xe3\\x86\\x66\\x72\\xd4\\x1b\\xcf\\x43\\x59\\xeb\\xa6\\x42\\x4e\\x99\\xd2\\xad\\x8a\\xca\\x1e\\x6d\\x63\\x64\\x42\\x06\\xde\\x82\\x71\\xf5\\x30\\xa3\\xe8\\xea\\xda\\x58\\x91\\x02\\xd5\\xb6\\x69\\x20\\x06\\x17\\xb0\\xb2\\xfd\\x9b\\x08\\xda\\x3d\\xb1\\xc9\\xee\\xd1\\x69\\xf8\\x39\\xc9\\x71\\x1d\\x46\\x82\\xd5\\xe4\\xdd\\xfa\\x2b\\xe3\\x83\\x3e\\x08\\x30\\x73\\x4c\\x0c\\xd1\\xea\\x86\\xdb\\xae\\xfd\\x7a\\x6c\\xc0\\xe0\\x46\\xdd\\x8b\\xc3\\xba\\x0d\\xa3\\xf6\\x34\\x54\\xec\\xac\\xe5\\x32\\x3f\\xd7\\x7d\\xaf\\xeb\\xde\\xab\\x75\\x3e\\xaf\\x29\\x13\\x3e\\x56\\x6d\\x73\\x9a\\xdf\\xaa\\xec\\x5c\\x24\\x97\\x7c\\x7a\\xbb\\x0d\\x0a\\x5a\\x45\\x5c\\x6f\\x03\\x76\\x6e\\x1b\\x1c\\x99\\xbf\\x3e\\x94\\x72\\x2f\\xe9\\x8e\\x15\\x5a\\x0a\\xe8\\xea\\xc9\\x68\\xd1\\x36\\xa7\\x6c\\x4a\\x74\\x85\\xaf\\x76\\x3b\\x96\\x66\\x89\\x60\\xa3\\x35\\x23\\x87\\xf5\\x50\\x25\\x04\\xe9\\xb7\\xde\\xf5\\x8d\\x4a\\x16\\xbf\\xa0\\xa2\\x6a\\xab\\xa6\\xde\\xae\\x7e\\xa5\\x99\\x9c\\xb6\\x44\\x24\\x34\\x53\\x4e\\x54\\x25\\x45\\x68\\x38\\xdd\\x59\\xcb\\x9a\\xc4\\xca\\x81\\x54\\x15\\xaf\\xeb\\xcc\\xf4\\x19\\x6b\\xc8\\xd7\\x03\\x3b\\x74\\x1e\\x73\\xcc\\xa0\\xdd\\x76\\xdb\\x41\\x0c\\xa2\\xfe\\xbe\\x23\\x2a\\x4c\\xa0\\x35\\x44\\x84\\xbb\\xb8\\x78\\x6b\\x7f\\x5f\\x54\\xc2\\x2c\\x99\\xe7\\xf5\\xdf\\x7b\\x4b\\x48\\x58\\x07\\xae\\x66\\x3a\\xcf\\x39\\xd7\\x74\\xd0\\xc9\\xfb\\xac\\x0f\\x98\\xfb\\x28\\xb2\\x00\\xd0\\xe5\\x79\\xb9\\x6d\\xd8\\xe1\\x30\\xad\\x90\\x6d\\xf7\\xb3\\x63\\xe4\\x3e\\x13\\xaa\\xd5\\x01\\xd0\\x1b\\xa0\\x63\\x15\\x0b\\xd7\\x18\\xc2\\xf4\\xaa\\xec\\xc2\\x6e\\x80\\x0b\\xd1\\x58\\xc5\\x40\\x14\\x0a\\xd9\\x5f\\x09\\x35\\x87\\xd6\\x2f\\x87\\x2b\\xfb\\xb1\\xac\\xe5\\xe4\\xc0\\x18\\xa7\\x88\\xca\\x98\\x1a\\x97\\xc5\\x32\\x96\\xdc\\x82\\x25\\x39\\x85\\x2b\\xa4\\xee\\x7a\\xd2\\x26\\x35\\x28\\x07\\x65\\xc4\\x4a\\x9d\\x80\\xab\\x4f\\xca\\x7d\\x45\\x72\\xdc\\xc6\\x46\\x06\\x2a\\xf5\\xbc\\x42\\x11\\x8b\\x0c\\x2f\\x8a\\x96\\xfb\\x53\\xb7\\xf0\\xa0\\xa3\\x5c\\xfc\\x20\\xef\\x66\\xbe\\x68\\x2c\\x3c\\xa2\\xcd\\x3c\\x0f\\x83\\xec\\xd0\\x58\\x5b\\x82\\x6b\\xcf\\xa1\\x03\\x6e\\x30\\x81\\x88\\x77\\xf7\\x27\\x9e\\x5d\\x16\\xdf\\x61\\x8e\\xb5\\xd8\\xc2\\x32\\x15\\xd4\\x73\\x46\\x12\\xca\\x8c\\xbd\\xe0\\x26\\xbb\\x57\\x2a\\x9c\\x2c\\x5e\\x54\\xc6\\x5e\\xc5\\x4a\\xa4\\x15\\x15\\x9a\\xb8\\x66\\xda\\xf6\\x0c\\x94\\x2b\\xea\\x30\\x8a\\x0d\\x3e\\x7d\\x64\\x0f\\xfa\\x94\\xaa\\x91\\x5c\\x43\\x05\\x3a\\xb1\\x2a\\xd4\\xf7\\x06\\x15\\xfb\\xca\\x78\\x51\\xea\\x57\\x6d\\x7e\\x06\\xcf\\x84\\x51\\x9b\\x53\\x4a\\x30\\x11\\xb4\\xec\\x0b\\x07\\x62\\x3a\\xc5\\x9c\\x96\\x91\\x88\\x09\\x9c\\x7e\\x24\\x11\\xb7\\x42\\x63\\xb7\\xac\\x8b\\x79\\x94\\x9c\\x7f\\xb9\\xd6\\x2e\\xe8\\x92\\xa0\\x93\\x27\\x4a\\x11\\x01\\x5f\\x6d\\x30\\x6b\\x4b\\xb4\\x1f\\x2d\\x66\\x81\\x30\\x7f\\xc7\\x44\\xf2\\x57\\xf6\\x40\\x1d\\xa7\\x7d\\x26\\x72\\x9a\\x72\\xc1\\xca\\xd0\\x3c\\x00\\xfb\\x1f\\x30\\x75\\x58\\x57\\x05\\x6e\\x92\\x8b\\xbf\\xb2\\x87\\x8b\\x95\\x0a\\xfb\\x71\\xb1\\x4e\\xf8\\x9a\\xe5\\x12\\x96\\x2f\\xd6\\xa2\\xcc\\xe5\\xa7\\x1e\\xee\\xbb\\x80\\x9d\\xff\\xc3\\x4d\\x52\\xb1\\x0b\\xdd\\xc6\\x45\\xc9\\xf2\\x44\\xb0\\x54\\x67\\x00\\x36\\x54\\x26\\xab\\x3e\\x5e\\x88\\x6c\\xc7\\xde\\x89\\x64\\xb7\\xbf\\xb8\\xcd\\xd8\\xdd\\xc5\\xdd\\x4d\\xb6\\xbe\\xe9\\x07\\x9b\\xd5\\xeb\\x18\\x1c\\x1b\\xd2\\x2d\\x8d\\xee\\xde\\xfa\\x26\\x29\\x2f\\xe4\\xbf\\x67\\x45\\xca\\x2e\\x3e\\xb2\\x07\\xf9\\x27\\x9f\\x07\\x55\\xc8\\xa1\\x8d\\xeb\\x76\\x4d\\x64\\x5f\\x68\\x18\\x66\\x11\\x9e\\xa8\\x3a\\x94\\x13\\xbe\\xa9\\x3c\\xec\\x1e\\x03\\xe1\\xeb\\x56\\x30\\x61\\x4d\\x43\\x2c\\x58\\x32\\xfd\\x52\\x28\\xe4\\x42\\xfd\\x54\\x17\\xeb\\x3c\\x63\\x5c\\xfc\\xac\\x7f\\xff\\x71\\xb1\\x29\\x8b\\x9d\\x5e\\xd2\\x0b\\xe5\\xa2\\xfe\\xb3\\xfe\\xfd\\xc7\\xc5\\x3e\\xd9\\xb2\\x9f\\xe1\\xff\\x3f\\x2e\\xaa\\x75\\xc9\\x18\\xff\\x59\\xff\\xfe\\xe3\\x42\\x14\\xba\\xd4\\x1f\\x0c\\xcf\\x42\\x84\\x12\\x0d\\x72\\x8d\\xd2\\x00\\x19\\x5a\\x6d\\x2f\\x06\\x73\\x00\\x4d\\x9b\\x53\\x5c\\xee\\xeb\\x5e\\xc3\\x11\\x70\\x0b\\x53\\x43\\x06\\x93\\x00\\x6d\\xe9\\x87\\x41\\x06\\x8c\\xb5\\x2a\\xd2\\x07\\xa2\\xeb\\xec\\x2a\\x9b\\x20\\xb8\\x7d\\xaf\\x82\\x50\\xc7\\xdf\\xb3\\x8d\\x50\\x12\\x6e\\x2f\\x61\\x86\\xa7\\x2a\\x97\\x2a\\x63\\xe5\\xb2\\x13\\x66\\x58\\xd7\\xfe\\x8f\\xb6\\xf6\\x7f\\xf4\\x6a\\x7f\\x5f\\xec\\x7b\\x95\\xc3\\xfb\\xa0\\xee\\x2e\\x8f\\xf5\\x3e\\xc3\\x98\\x38\\x92\\xd4\\x58\\x70\\xeb\\x79\\x07\\x4d\\xee\\xac\\x44\\x7a\\xb0\\xb6\\x22\\x1c\\xb3\\xea\\x09\\x08\\x0e\\xb2\\x73\\x00\\x48\\x75\\x5d\\xa9\\x28\\xc4\\x2d\\x64\\xcd\\xbd\\x2a\\x9c\\x07\\x8f\\xbd\\x2a\\x7c\\x12\\x7c\\xe9\\x55\\xe1\\xe3\\x60\\xa6\\xe0\\x48\\x13\\xe4\\xe0\\x98\\x17\\x49\\x1a\\x1c\\x8d\\x04\\x01\\x5e\\xc0\\x40\\x31\\x82\\xe3\\x89\\xf0\\x3a\\x76\\x28\\xa9\\x38\\x2e\\x7d\\x2e\\xe9\\x79\\x9d\\x4e\\xdc\\xd8\\x31\\x0a\\x15\\x40\\x59\\xd9\\x8d\\x66\\xeb\\x8f\\xe6\\x2e\\x42\\x15\\x2f\\x08\\x14\\x5c\\x92\\xc4\\x82\\x46\\x79\\xb4\\x4d\\xed\\x9b\\x0a\\x61\\xb8\\x12\\xb8\\xb3\\xa4\\x8d\\x89\\xad\\x70\\xaf\\x2c\\x89\\xc1\\x8b\\xd0\\x32\\xc1\\x86\\x54\\xa8\\xbf\\x8b\\x6d\\xdd\\x80\\xb3\\x4f\\xa7\\xa3\\x71\\xb5\\x4e\\xdb\\x6d\\xc8\\x2a\\x3f\\x94\\x9f\\x1a\\xb1\\x8e\\xcc\\x38\\xde\\x03\\x59\\x58\\x0f\\x4b\\x3e\\xb6\\xa3\\x1a\\x6b\\xad\\x38\\x08\\xd9\\x1c\\xdb\\x14\\x25\\x3b\\x70\\x35\\xf9\\x36\\x0f\\xd2\\xe7\\x88\\x35\\x0b\\xd2\\x32\\x40\\x92\\x79\\xca\\x78\\x92\\xbf\\xd0\\x7a\\x0b\\xd9\\x37\\x75\\x02\\x6c\\xb2\\xe2\\x46\\x2e\\x6e\\xb6\\x3b\\xe4\\xbd\\x28\\xa7\\x5a\\xff\\x66\\xce\\x58\\x5b\\xed\\xaa\\x45\\x40\\x08\\x27\\x4a\\xd7\\xca\\x48\\x56\\xbd\\xd3\\x35\\x28\\xa7\\x72\\xbb\\xd5\\xe0\\xd8\\x34\\x78\\x51\\x86\\x03\\xa6\\x1f\\x65\\x8a\\xcc\\x0b\\x7c\\xaa\\xaf\\xd6\\x97\\x4e\\x64\\x98\\x64\\xa3\\x32\\xd0\\x98\\xfc\\x04\\x87\\xa4\\x96\\x5e\\x87\\x8e\\x5e\\xf2\\x1a\\x0e\\x4f\\x5c\\x47\\xef\\x76\\xf5\\xbc\\xf1\\x2b\\x5f\\xc1\\x4f\\x7c\\xde\\xbb\\xf1\\xc3\\xba\\xa6\\x41\\xc5\\xa3\\x12\\x8b\\xde\\x1d\\xaf\\x9e\\xd7\\xda\\x9c\\x29\\xbe\\x28\\x93\\xeb\\x22\\x1f\\x95\\xcc\\xd4\\xbf\\x10\\x16\\x6c\\x58\\xe4\\x40\\xd4\\x10\\x46\\x4f\\x7a\\x24\\xd8\\xf4\\x6e\\x42\\x55\\x99\\x43\\x04\\x21\\x3c\\x45\\x77\\x7b\\x67\\x6f\\x15\\xcc\\xdd\\x9d\\x20\\x60\\x6a\\x26\\x05\\x12\\x4e\\xe7\\x97\\xb6\\xb6\\x02\\x6d\\x92\\xe4\\xed\\x6d\\xe0\\x51\\x22\\x25\\x1c\\x84\\xfd\\xd0\\x5b\\x07\\x6d\\x5c\\xf2\\xc3\\x60\\x71\\xc2\\x4c\\x04\\x85\\xd0\\xbc\\x88\\xea\\x02\\xe1\\x4a\\xbf\\x0e\\x50\\xa5\\xb8\\x3e\\x6d\\xf2\\xdc\\x12\\x5d\\xaa\\x46\\x64\\x5e\\xa5\\x18\\xca\\x8b\\x3b\\x1d\\x49\\xd9\\xe2\\xc4\\x20\\x98\\x1c\\xee\\x69\\x81\\xc0\\xe1\\xd1\\xcc\\xa3\\x7d\\xa5\\xee\\xe9\\x70\\x83\\x42\\x90\\x31\\xe1\\x49\\xa5\\x7f\\x42\\x06\\x92\\x19\\xfa\\x50\\x78\\x1a\\xc9\\xf7\\x74\\x21\\x16\\xe7\\x66\\x3d\\x13\\x84\\x8d\\x48\\x28\\xe1\\xa9\\xc8\\x12\\xf4\\x17\\x43\\x42\\x24\\x19\\xc8\\x30\\xff\\x4a\\x4f\\x4e\\x47\\xd6\\xf5\\x65\\x50\\xad\\x09\\xaa\\xde\\x93\\x96\\x08\\xf3\\x15\\xe7\\xa5\\x28\\x02\\x05\\xbf\\x73\\x99\\x6b\\x6c\\xee\\x82\\xa1\\x55\\xeb\\x27\\xa7\\x58\\x76\\x44\\xd9\\xbe\\x0e\\x1b\\xed\\x6c\\x22\\x8e\\xc0\\xe1\\xc8\\x39\\x2c\\x03\\x17\\x9e\\x8b\\x5b\\x56\\xba\\x8a\\xf1\\xc9\\x59\\x72\\xcb\\x4c\\x32\\x60\\xd2\\xe1\\x29\\xff\\x40\\xba\\x8f\\xe9\\xb1\\x87\\x84\\x05\\x31\\x9a\\xa3\\x40\\x68\\x51\\x61\\xcc\\xcc\\x5f\\xc9\\xfb\\x19\\x1d\\xd0\\x60\\xb8\\xb5\\xa5\\x15\\x78\\x17\\xff\\x4b\\x5f\\x72\\xe1\\x64\\x75\\x9d\\xa9\\x70\\xed\\xce\\x0a\\x6c\\x44\\x92\\x8c\\x57\\xa8\\x24\\x99\\x96\\x91\\x01\\x56\\x8b\\x56\\xf4\\x25\\xbc\\x13\\xd1\\xc7\\x23\\x33\\x13\\x5d\\x46\\x28\\xf3\\xde\\x9e\\xf9\\x01\\x84\\xd5\\xd3\\xa1\\xf1\\x94\\x6d\\x86\\x3d\\x64\\xfd\\x9d\\x1e\\xe1\\xf8\\xe9\\x73\\x68\\xb7\\x0a\\x84\\x19\\x3a\\xf3\\xa0\\xad\\x2b\\x49\\xf5\\x1e\\x56\\xc2\\xa3\\xff\\x8b\\xaa\\x54\\xf2\\xbb\\xfb\\x92\\x55\\x95\\x49\\x70\\xc9\\x98\\x35\\x9d\\x62\\x51\\xc0\\x67\\xa0\\xb3\\xc6\\x6e\\x79\\x04\\xb5\\xed\\xbb\\x64\\xc5\\x2d\\x82\\x0a\\x5b\\xf6\\x24\\x10\\x8b\\xd2\\x0a\\x31\\x51\\x12\\xb7\\x37\\x60\\x70\\x08\\xb3\\xbb\\xd9\\x66\\x18\\xef\\x13\\x33\\xc9\\xbf\\xac\\x0c\\x34\\xc3\\x6c\\x9e\\xa9\\x1d\\x6e\\x8f\\xd6\\xe1\\x18\\x3e\\x41\\x95\\xfb\\x75\\x76\\x87\\x02\\xc3\\x2f\\x0a\\xd8\\x6d\\x6b\\x09\\x50\\xc4\\xbc\\x6f\\xef\\xad\\x34\\x6b\\xa7\\xa9\\x2d\\x72\\xcd\\x18\\x06\\x05\\x09\\x53\\x3d\\x23\\xe6\\x34\\xe4\\xbf\\xb9\\xb0\\xfa\\xa4\\x43\\x7d\\x6f\\x67\\x0c\\xc6\\xdb\\xf4\\x6d\\x2e\\x12\\xbe\\x65\\xe7\\x81\\x4c\\x7d\\x3f\\x0f\\x64\\xff\\xa5\\xa4\\xdc\\x9e\\x4b\\x08\\x0e\\x11\\x1a\\x67\\x0f\\xeb\\xda\\xb2\\x07\\x36\\x89\\xc3\\x85\\x56\\x7d\\x96\\x22\\x0f\\x2b\\xc5\\x83\\xea\\x80\\xff\\x8b\\xb9\\x5f\\xc5\\x5e\\x9f\\x36\\x20\\x27\\x30\\xcc\\x7d\\x96\\xc9\\x94\\x57\\x9e\\x50\\xaa\\x83\\xbf\\xfc\\x7a\\xa8\\x84\\xae\\x29\\x05\\x74\\xd7\\xe9\\x3e\\x4f\\x76\\xc2\\x58\\x83\\xa7\\xb5\\x0c\\x17\\x7a\\xb4\\xa1\\x79\\xd7\\x4c\\x07\\x00\\xa6\\x7e\\xad\\x22\\x84\\xde\\x28\\x7e\\x72\\x64\\x36\\x14\\x1b\\x09\\x2c\\x69\\x22\\xce\\xcc\\x86\\xb1\\xed\\xd1\\x5a\\x28\\xb3\\x32\\xb6\\x39\\x6a\\xbb\\xdb\\x04\\x71\\x7b\\x2b\\x7f\\xb2\\xdb\\xda\\x0c\\xe3\\x6d\\x39\\x03\\xb0\\x95\\x3c\\x85\\xc5\\x4b\\xaa\\xd7\\xf7\\xe6\\x6c\\xe3\\xd3\\x83\\x3f\\x81\\x7e\\x6b\\xdf\\x9e\\xf4\\xd3\\xde\\xb7\\xe7\\xb0\\x7a\\x37\\x07\\x16\\xe7\\xe5\\x80\\xf9\\xe2\\xa7\\x7a\\xa9\\x41\\x13\\x1c\\x52\\x94\\x2c\\xd3\\x01\\x71\\x9b\\x18\\x5a\\x64\\xe1\\xd3\\x98\\x5d\\x8a\\x05\\x9f\\xdc\\xc4\\xa3\\x1b\\x55\\x4f\\x0c\\x26\\xce\\xe8\\xce\\xea\\x6f\\x5e\\x2d\\xd5\\xb4\\xbb\\xd7\\x10\\x56\\x25\\x62\\xb5\\x42\\x8f\\x92\\x79\\x6c\\xa9\\x64\\xcc\\xc9\\x65\\x46\\xca\\x9e\\x05\\xcb\\xc9\\xa2\\x09\\xd2\\x62\\xfc\\xbe\\xfa\\x1e\\xd6\\x6c\\x31\\xa4\\xc8\\x22\\x1e\\xc1\\x1a\\x33\\x4a\\x29\\x9f\\x4c\\x3c\\x6f\\xe4\\x6a\\x26\\xa6\\x0e\\x63\\xc7\\x67\\x4d\\x16\\x9c\\x4e\\xb9\\x2c\\x38\\xc6\\xe0\\x9b\\xb2\\x27\\x71\\x32\\x7a\\x57\\x00\\x1b\\xaf\\x60\\x7d\\x03\\x00\\xa9\\xfa\\xb7\\x7c\\xb5\\x97\\xaa\\x1e\\x4f\\xef\\xe6\\xf4\\x3c\\x54\\x82\\xfd\\x28\\xe1\\x54\\xa8\\xd0\\x64\\x89\\x8a\\x18\\xa3\\xf8\\x33\\x8e\\x12\\xa8\\x9d\\x45\\x49\\x4c\\x8a\\xde\\x65\\xe5\\x8d\\xbe\\xd6\\x1a\\xd8\\x06\\xf5\\x90\\xc1\\x75\\x9e\\xa4\\xa4\\xb2\\x32\\xed\\x59\\x06\\xe1\\x4e\\x4e\\xdd\\xd0\\x50\\x06\\x56\\x4c\\x02\\x07\\xfa\\x49\\xf5\\x00\\x93\\x4c\\x5d\\x8e\\x98\\xd1\\x42\\xb4\\x77\\x60\\x39\\x99\\xed\\x9d\\x6c\\x3a\\x01\\x61\\x9d\\xc0\\xd5\\x25\\xb3\\x6f\\x5e\\xb3\\xae\\x8c\\x47\\xea\\x0e\\x65\\x86\\xc9\\x99\\x0b\\x24\\xda\\x0b\\xd7\\x2a\\x63\\x59\\x52\\x0d\\xac\\xa6\\x46\\xdd\\x1e\\x3b\\x28\\x6a\\x51\\x19\\x23\\x19\\x58\\xfc\\x37\\xb8\\x21\\x05\\x1f\\x13\\x5c\\x6d\\xe1\\xde\\x32\\x28\\x91\\xcc\\x72\\xb1\\xd9\\x9c\\xf3\\x6a\\xd0\\x6e\\x0c\\x43\\xa6\\x1b\\x4c\\xf0\\xcd\\x86\\xed\\x5c\\x36\\xad\\x44\\xb2\\x42\\xc3\\x43\\x20\\x35\\x1b\\xd6\\x09\\x48\\xd8\\x9d\\x66\\x4c\\x5c\\xdf\\x9d\\x58\\x9f\\x82\\xee\\x13\\xe9\\x14\\xea\\xa4\\x3b\\xe5\\x80\\x79\\x39\\x07\\x68\\xa0\\xa0\\xb7\\xe1\\x68\\xb3\\x41\\x05\\xe1\\xa4\\x77\\xc5\\x20\\x00\\x91\\xb9\\x66\\x4d\\x8b\\x70\\xe7\\xc2\\x1a\\x1a\\xf8\\xd0\\x77\\x67\\x42\\x4a\\x21\\xfe\\x60\\x71\\x6c\\x1c\\xc4\\xda\\xd5\\x91\\xfc\\xf3\\x59\\x73\\xfe\\x76\\x71\\x94\\x2e\\x00\\xa4\\xb6\\x03\\x3f\\x29\\x32\\x28\\x20\\x61\\xcc\\x68\\x0f\\x3a\\xa5\\xc9\\x1f\\xc3\\x00\\xdc\\x63\\x09\\x77\\x30\\x1f\\xf8\\x99\\x52\\x6d\\x99\\xf9\\x88\\x77\\x7f\\x68\\x35\\xef\\x5e\\x5e\\xba\\x5a\\xa0\\x95\\x09\\x82\\x48\\xae\\xe4\\xf2\\xd2\\x85\\x21\\x9c\\xe8\\x85\\x4e\\xc6\\x70\\x6e\\x0e\\x8d\\x76\\x84\\x69\\x17\\x7f\\x98\\x42\\x9d\\xf8\\x9d\\xb6\\x5f\\x1b\\xb3\\xc3\\x37\\x2e\\xc6\\xc6\\xf2\\xfe\\x44\\xdd\\xc2\\x8c\\x95\\x0a\\x18\\x7e\\x8e\\xa1\\x6e\\xfb\\xde\\xae\\x31\\x2b\\x49\\x72\\x4f\\xdd\\x2a\\xfb\\xfd\\xf7\\x9c\\xb9\\x93\\xa9\\xb9\\xa7\\x8f\\xdc\\x51\\xd6\\x6a\\x58\\xc9\\x7b\\x7a\\x6c\\xc8\\x1b\\x3a\\x23\\xcf\\xe8\\x8c\\x7c\\xa4\\x99\\x40\\x98\\xbc\\x50\\x3f\\xef\\xd4\\xcf\\xd3\\xd6\\xfb\\x9e\\xfc\\x4a\\xe7\\xdf\\x7c\\xf3\\x64\\x4e\\x9e\\xd3\\x28\\x26\\xdf\\xd3\\xe7\\xfe\\xbe\\xd8\\x93\\xef\\xe4\\xef\\xa1\\xba\\x21\\xbf\\xd1\\xe7\\xea\\x3c\\x86\\xbc\\xa6\\xcf\\x8d\\x1d\\x48\\xff\\x1e\\xf5\\xee\\x42\\x92\\x13\\xd7\\x6f\\xae\\xaf\\xe1\\xd0\\xba\\x40\\x49\\x45\\xac\\xab\\x47\\x0d\\x45\\x9f\\xce\\x1b\\xf2\\x0b\\x75\\xa3\\xe5\\xf2\\xfe\\xf1\\x6c\\xb9\\x14\\xcb\\x65\\xb9\\x5c\\xf2\\xe5\\x72\\x13\\xbb\\xe4\\x25\\x75\\x51\\x18\\x2c\\x97\\xcb\\xa5\\x5f\\x47\\xcb\\xe5\\xdd\\x34\\xae\\xa3\\x0f\\xcb\\xe5\\xfd\\x6c\\x36\\x5d\\x2e\\xef\\x93\\x59\\x8c\\x27\\x2e\\x79\\x4b\\x5f\\x76\\x21\\x0c\\xee\\x5c\\xe2\\xde\\xfd\\xc9\\xc5\\xe4\\x5b\\xea\\xa2\\xe8\\xf2\\xc3\\xa3\\xda\\xf9\\x67\\x1c\\x52\\xec\\x92\\x1f\\xa8\\xbb\\x5c\\x46\\xee\\xe4\\x97\\x89\\x7b\\x89\\xdc\\xc9\\xcb\\x89\\x8b\\xf5\\x4b\\x18\\xb8\\x93\\x6f\\xcd\\x23\\x8a\\xbe\\x58\\xba\\x31\\x46\\x5d\\xbb\\x1f\\xe4\\x6f\\x8c\\x2f\\x43\\xbc\\x5c\\x3e\\xa9\\x91\\x3b\\x79\\x3b\\x71\\x71\\x8d\\x6b\\x5d\\x7c\\xb9\\x8c\\x5d\\xf2\\x23\\x75\\x03\\x5d\\x29\\x14\\x44\\xe8\\x0f\\xeb\\x19\\x7c\\x40\\x38\\x5a\\x2e\\xe3\\xb8\\x76\\x27\\x3f\\xb4\\xa3\\x79\\x42\\xfe\\x1d\\x4f\\x5c\\x7c\\x89\\x6b\\xff\\x12\\x2f\\x97\\xb2\\x49\\xf2\\x13\\x35\\x16\\x30\\x1f\\xa0\\xfd\\x09\\xd4\\xf4\\xa1\\xad\\xde\\x54\\x8b\\x2f\\x55\\xff\\x26\\x8f\\x5c\\xe2\\x6e\\x5d\\x4c\\x1e\\x0d\\x0a\\x5e\\x12\\xf5\\xe3\\x62\\xf2\\x6a\\xf8\\x09\\x9d\\xae\\xc6\\xf5\\xe4\\x9f\\x31\\x6e\\x4b\\xfc\\x6e\\x4a\\xfc\\x88\\xc9\\xcf\\x76\\xe9\\xb7\\x13\\xf7\\x91\\x8b\\xc9\\xdf\\xe9\\xf1\\xd5\\xf3\\xa0\\x4d\\xff\\x93\\x99\\x70\\x4c\\x9e\\x7d\\xff\\xf4\\xdd\\xbb\\xee\\xcb\\x72\\xe9\\x77\\xdf\\xde\\x3c\\x7d\\xfd\\xc2\\xfe\\x14\\x49\\xcc\\x4c\\x61\\x22\\x43\\x9d\\x4b\\xbd\\xc8\\x39\\xc7\\xe4\\xfd\\xd3\\xbf\\x74\\xb9\\xe5\\xf7\\x01\\x18\\x5c\\xba\\x58\\xd5\\xfb\\xf4\\xfd\\xfb\\x1f\\x03\\xab\\x93\\x3f\\x60\\xf2\\xc3\\xbb\\x17\\x7f\\x7f\\xfe\\xd6\\x4e\\xfc\\x11\\x93\\x67\\xdf\\xbd\\xfa\\xde\\xea\\x75\\x80\\x20\\xb2\\x0f\\xc4\\x15\\xae\\xf3\\xa4\\x12\\x35\\x17\\x37\\xf2\\x6f\\x2a\\x5f\\xf0\\x14\\xc1\\x4d\\xe8\\x75\\xb1\\x99\\x82\\xe8\\xa3\\x16\\x5e\\x4f\\xa0\\xdc\\xf7\\x75\\x91\\xa6\\x35\\x42\\xd1\\x64\\x1a\\xd7\\x18\\x2d\\x97\\xe9\\x25\\xe6\\x75\\x07\\x74\\xfa\\x83\\x7e\\x5f\\x2e\\xd3\\x09\\xae\\x71\\x0b\\x54\\xb0\\xd8\\x6e\\xe6\\xe2\\xbe\\x41\\xec\\x60\\xa1\\x22\\xb9\\x2c\\x75\\xd0\\x35\\xc7\\x7e\\xab\\xb7\\xa2\\xce\\x55\\x57\\xbb\\x9e\\xf7\\x3b\\x87\\xc2\\x60\\xba\\x5c\\xa6\\x38\\x84\\x3e\\x59\\x2d\\xa2\\x90\\x46\\x1f\\xa6\\x71\\xfd\\x48\\xb7\\xdd\\x90\\xff\\xa4\\x57\\x11\\x80\\x02\\x44\\x67\\x5a\\x6e\\xe2\\xcb\\x68\\xf2\\xcf\\xf8\\x0a\\x82\\x2d\\x45\\x1f\\x8e\\xf1\\x64\\x79\\x5c\\x56\\x97\\x72\\xa5\\x44\\x76\\xcb\\x2e\\xd6\\x45\\xca\\xae\\x4c\\xdc\\xa5\\x3f\\xa1\\x48\\x6e\\xd9\\x09\\xae\\xd1\\xf2\\x6e\\x82\\xeb\\xa5\\x6f\\x12\\xf0\\xa3\\x2b\\x13\\x1c\\xe9\\x53\\xd1\\x9d\\x74\\xa0\\xa4\\xab\\x0f\\x37\\xcb\\x54\\x3e\\xfe\\x95\\x5e\\x7d\\x51\\x2f\\x97\\x57\\x5b\\xf2\\x5f\\xf4\\x6a\\x49\\x07\\x1d\\x43\\xd1\\x87\\x2f\\xdc\\x65\\x1c\\x5f\\xe2\\xc1\\x87\\x65\\x7c\\xb5\\x05\\xeb\\xf9\\xe5\\x12\\x45\\xcb\\x34\\x99\\x6e\\x9e\\x4e\\x5f\\xc6\\xc7\\x39\\xf9\\x73\\xd3\\xcf\\x19\\xd6\\x3e\\xbe\\xda\\x12\\xd1\\x53\\xfa\\xb6\\x4c\\xb5\\x3b\\xbb\\x77\\x27\\x62\\xfa\\xe7\\xaf\\xbe\\x7a\\xf2\\xe7\\xf6\\x5c\\x4c\\x0a\\x13\\xa1\\x08\\x66\\xd7\\x3c\\x54\\xd7\\x65\\xc2\\xe9\\xd9\\x33\\x7d\\x0e\\x88\\xf8\\x04\\xb2\\xe3\\x60\\xec\\xe3\\x57\\x5f\\x3d\\xfe\\xfa\\xcf\\x35\\xbf\\xbe\\x9e\\xcf\\xc8\\x57\\x7f\\x7e\\xf2\\x78\\x56\\xcf\\x67\\x8f\\x9f\\x78\\x1c\\x37\\x60\\xb1\\xf3\\x9b\\x52\\xc1\\xdf\\x0d\\xcf\\xce\\xac\\x0b\\xf8\\xc9\\x0c\\x47\\xb3\\x2e\\x98\\x86\\x09\\x6e\\x24\\xf0\\xf1\\x37\\x3a\\x12\\x59\\x80\\xb6\\x91\\x4b\\x94\\x6d\\x4c\\xc4\\x26\\x93\\x18\\x73\\xe3\\x3d\\xdf\\x0e\\xca\\x8a\\x50\\x5c\\x0a\\x8b\\xb7\\x34\\x5e\\x91\\x13\\xd7\\xc5\\x4d\\xdf\\x47\\x00\\xf4\\x9b\\x44\\xd0\\xee\\xc6\\x6c\\xcb\\x86\\xbe\\xc7\\x06\\xe8\\xfb\\x13\\x27\\x14\\x42\\xd0\\x64\\x2a\\x26\\xed\\xf7\\xda\\x90\\xc0\\xa8\\x64\\x22\\x61\\xac\\x11\\xf5\\x19\\x78\\xd9\\xf4\\xbc\\x0f\\x2c\\x37\\x9d\\xe8\\x1e\\x74\\xcf\\xac\\xfb\\x9e\\x88\\x8e\\x30\\xed\\xc7\\xaf\\x50\\xb2\\x0e\\x9e\\xe0\\x0a\\xd4\\x36\\x2a\\x54\\xeb\\xd4\\xb0\\xc9\\x78\\x92\\xe7\\x0f\\x47\\xa1\\x8d\\xa3\\xdb\\xda\\xe5\\x04\\xf4\\xce\\x65\\x2c\\x72\\xbd\\x01\\x32\\x7d\\x2b\\x39\\x44\\x24\\xc2\\x93\\xa3\\x50\\x11\\xdc\\x61\\x87\\xd2\\xbd\\xe7\\xad\\x75\\xb8\\xe4\\xba\\xde\\x13\\x2e\\x85\\xd9\\x28\\x26\\x0e\\xeb\\x02\\x17\\x75\\xd1\\xd9\\xda\\x9b\\xba\\x65\\xa5\\x73\\xe5\\x4f\\xdf\\x1d\\xea\\x63\\x15\\xcc\\xd6\\xb8\\xf7\\x2a\\xcb\\x51\\x27\\xf5\\x3c\\x47\\xc5\\x05\\xcd\\xe8\\x7f\\x28\\xdb\\x69\\x86\\x25\\x19\\x4e\\x68\\x16\\xcd\\x55\\x44\\xe8\\xaf\\xa9\\x2c\\x26\\x9f\\x0a\\x2a\\xac\\x1b\\x16\\xbe\\x7d\\x78\\x05\\x17\\x99\\x38\\x45\\x5d\\x3b\\x85\\x6d\\x20\\x60\\x77\\xa4\\xf0\\xb3\\x54\\xf2\\x66\\x6d\\xa2\\x5a\\xd5\\x02\\x13\\xde\\x5e\\x94\\x3c\\x18\\x3e\\x04\\x30\\x19\\xa4\\x9d\\xb6\\x8b\\x3d\\xef\\x01\\x2e\\xd0\\x93\\xd2\\xe1\\xa7\\xdb\\x80\\xf1\\x45\\x8f\\x5b\\x1b\\x90\\xef\\xcc\\xa5\\xd3\\x44\\xef\\x1c\\x31\\x7e\\x71\\x04\\xc3\\x64\\x86\\x31\\x81\\x71\\xc0\\x8c\\x3c\\x89\\xb1\\xe7\\xbd\\x97\\x99\\xbf\\x7d\\x78\\xd6\\x45\\xdc\\x19\\x14\\x6f\\xbf\\x7c\\x6e\\x7b\\x6d\\x01\\x39\\x9d\\xd0\\xa2\\x94\\x1e\\xdf\\xfb\\xbf\\x55\\x89\\xe7\\x39\\x37\\x7a\\x2f\\x29\\x93\\xd0\\x8d\\x04\\xe1\\x2d\\xbd\\x27\\x3b\\x2a\\xc8\\x2d\\x85\\xc5\\xf1\\x3c\\x06\\x51\\x7c\\x2b\\xcf\\x33\\xe2\\x86\\x43\\xa9\\x38\\x13\\x2b\\x05\\x1f\\x73\\xba\\x91\\xf5\\x11\\xb4\\x51\\x0b\\x6a\\x79\\x47\\x65\\xa9\\x8b\\x71\\xb8\\xa5\\x9b\\x96\\x42\\xfe\\x95\\xb8\\xcb\\xe5\\x23\\x4f\\x72\\xcf\\x03\\xe7\\xfc\\x2c\\x75\\xc9\\x16\\x93\\x2d\\x75\\xa3\\x2c\\xa5\\x5f\\xb8\\x93\\xed\\xc4\\xfd\\x22\\xbe\\x70\\xc9\\x81\\xe6\\x7d\\x3b\\x95\\xc3\\x74\\x8a\\xf3\\xe8\\x10\\xd3\\xed\\x24\\x15\\x48\\x3e\\xe1\\xc5\\x8e\\x1a\\x77\\x6a\\xdc\\xf7\\x32\\xab\\x6b\\x39\\xb0\\x5c\\x1b\\xeb\\x12\\x17\\x37\\xe0\\xe4\\x63\\x6d\\xc4\\x93\\xf9\\xdc\\xf9\\xbf\\x1d\\x58\\xf9\\xf0\\x4e\\xcb\\x61\\x4f\\xf3\\x1c\\xdd\\x9a\\x99\\x54\\x1b\\x76\\x85\\x8f\\xed\\x46\\xdd\\xd4\\xb5\\x38\\x89\\x7b\\x00\\x23\\x6f\\x1a\\x63\\x84\\x74\\x27\\xe0\\x80\\x5e\\x4d\\xc1\\x4f\\xc4\\x7d\\x34\\x77\\xb1\\xde\\xcb\\x4d\\x42\\x2b\\xa1\\x5c\\xe2\\x4f\\x51\\x27\\x55\\x07\\x31\\x83\\xed\\xcc\\xf0\\x10\\x35\\xb7\\x52\\x5e\\xe8\\x7e\\xf7\\xfe\\xf5\\xf7\\xfd\\xf5\\x82\\x3b\\x9b\\xd6\\xb2\\x95\\x8a\\x09\\x53\\xcb\\x49\\x5b\\x9c\\xb2\\xf0\\xb4\\xa5\\xe0\\xce\\xa6\\x38\\x7b\\xcf\\xfb\\x7a\\x10\\x2f\\x8c\\x0f\\xbb\\x12\\xa2\\x3d\\xe5\\x64\\x43\\x4f\\x3e\\x90\\x94\\x26\\x88\\x63\\xf2\\xde\\x17\\x6a\\x43\\xbc\\x29\\x9e\\x15\\x3b\\x80\\x59\\x9a\\x08\\x34\\xea\\x09\\xd9\\xbb\\xdc\\x45\\x63\\x54\\x5d\\x08\\xb9\\xae\\x32\\x86\\x38\\x7b\\x3b\\x9c\\x06\\x9a\\x46\\x36\\xd9\\x85\\xcc\\x19\\xb6\\xc5\\x7a\\x37\\x3b\\x28\\x7e\\xe0\\xfa\\x9b\\x2b\\xfd\\xe0\\xea\\xd8\\xdc\\x6d\\xe8\\x90\\xee\\x8a\\xa4\\x3e\\xa4\\x9b\\xe8\\x8c\\x6d\\x08\\x80\\xd6\\xa7\\x5e\\x1d\\xc7\\x5b\\xf7\\xf4\\x0a\\xe8\\x51\\x7f\\xd7\\x9f\\x9d\\x81\\xc1\\xb5\\x13\\x17\\x10\\x5a\\x82\\x7e\\xa1\\x02\\x43\\x5e\\xb0\\x2f\\xf4\\x3d\\x14\\xa7\\xdf\\xbe\\x68\\x6f\\xa8\\x60\\x67\\xd0\\x83\\x3e\\xae\\x1d\\x43\\x1c\\x2e\\x6b\\xa7\\x2f\\x44\\xf6\\xa0\\xbb\\xd8\\x5e\\x2e\\x73\\xc9\\x63\\xe3\\x10\\xf9\\x07\\x75\\xe0\\x00\\x6e\\x81\\xd2\\x83\\x1e\\x1b\\x2f\\x93\\x38\\xf7\\x7e\\x32\\x23\\xfd\\x11\\x27\\x17\\xc0\\x89\\x7f\\xe1\\x4e\\xee\\x27\\xae\\x1c\\x51\\xa2\\x46\\x3a\\x48\\x55\\xe3\\xdc\\xf8\\x19\\xaf\\x58\\x29\\xbe\\x05\\x3d\\x37\\x62\\x64\\x63\\x5d\\xcd\\x81\\xf5\\x42\\xf2\\x7e\\x77\\xd5\\x3c\\x8c\\x24\\xa2\\x7b\\xd3\\x79\\x4a\\xe9\\xe3\\xc9\\x68\\x8e\\xc9\\xcc\\xe4\\x31\\x9b\\x04\\x46\\xf8\\x2a\\x7d\\x53\\x08\\x18\\xa4\\xc3\\x87\\x84\\xe6\\x1e\\x93\\x4d\\xef\\x02\\x0f\\x86\\x89\\x84\\x87\\x4c\\xb9\\x07\\x2b\\x1f\\xc0\\xcf\\x81\\x05\\x73\\x85\\xe2\\x9f\\xd4\\xac\\xc8\\x55\\xee\\x06\\xeb\\x79\\x2d\\xbc\\x5a\\x97\\x93\\x0c\\xa2\\xde\\x3c\\xf5\\x3c\\xf7\\x4f\\xea\\xd4\\xe3\\x4c\\x26\\x73\\x05\\x5f\\x83\\xc3\\x63\\x13\\x1c\\xe5\\xcb\\x67\\x78\\x41\\x6b\\xbf\\xea\\xc7\\xb8\\x81\\x1b\\x5e\\x3e\\xa7\\x84\\xf2\\x5b\\x69\\x1a\\xd2\\x9f\\xbf\\x10\\x65\\x60\\x19\\xea\\xbf\\x7a\\x4e\\x4f\\x62\\xc5\\x18\\x4d\\xc2\\x60\\x86\\xd5\\xc0\\x9c\\xb4\\x0d\\x02\\x38\\x5c\\x01\\xd6\\x8f\\xd1\\xd1\\x11\\x0a\\x70\\xbe\\x88\\xe2\\xa6\\x21\\x99\\xb6\\x38\\xec\\xb7\\xdb\\x1d\\x8e\\x18\\x44\\xce\\x04\\x11\\x1d\\xf7\\xfa\\x19\\xe3\\xb4\\x62\\xf1\\x07\\xe3\\x63\\xe3\\xf6\\xd8\\x86\\xd0\\xd3\\x1f\\x5b\\x49\\x4f\\xa0\\xab\\x1b\\x5b\\x19\\x96\\x8a\\x8b\\x91\\xf4\\x4f\\x87\\xf4\\x38\\x89\\x94\\xa0\\xea\\x3b\\x4d\\x57\\x1d\\xd5\\xf1\\x0f\\x28\\x65\\x61\\x54\\xc6\\x81\\xf8\\x9f\\x9a\\x9b\\x7e\\x70\\xc6\\x33\\x9d\\x1a\\x8b\\xb2\\x22\\x3b\\xd5\\x5b\\x3b\\xd3\\x41\\xd0\\x69\\xe9\\xe9\\x7c\\xff\\xf4\\x2f\\x74\\x84\\xc2\\x84\\xe3\\xd6\\x34\\xa7\\xf3\\xdc\\xd1\\x10\\xd9\\x91\\x70\\xfc\\x13\\x62\\x38\\x10\\xcd\\x78\\x88\\x26\\x1a\\xc5\\x26\\x4a\\xd3\\xb9\\xb2\\xa0\\xc8\\xbd\\x84\\xad\\x87\\x8f\\x83\\x40\\x4d\\xc3\\x78\\x9c\\xa5\\xb9\\xf6\\xbd\\x5d\\x59\\xc3\\x53\\x14\\x8d\\x19\\xf3\\x9b\\xa7\\xaf\\x5f\\x50\\x0b\\xb9\\x7a\\xde\\xbf\\x30\\xda\\x73\\x43\\x55\\x27\\xee\\x92\\xed\\x0c\\x44\\xdb\\x12\\x28\\x51\\xe8\\x29\\xcb\\xfa\\x2f\\xb4\\xd7\\x91\\x3c\\x4a\\x9f\\xd6\\x75\\x1a\\x8a\\xe0\\x5c\\x0e\\xb8\\x0d\\x64\\x0b\\xae\\xb3\\x34\\x72\\x95\\x4f\\xb9\\x1b\\x13\\xc5\\xca\\xd2\\x52\\x20\\x7e\\xc2\\xa8\\xa9\\x3b\\x58\\x3e\\x87\\xc2\\xab\\x70\\x6b\\x17\\x6d\\x10\\x84\\x2f\\x24\\x22\\x55\\x89\\x16\\xf9\\x27\\xec\\x94\\x17\\x74\\x23\\x53\\x28\\x6e\\x29\\x5c\\x5d\\x6b\\x5f\\x26\\x4b\\xd7\\xd7\\x05\\x60\\x6e\\xe3\\x39\\x67\\xd5\\x2e\\xb1\\x22\\x39\\xb7\\x41\\x9c\\xdb\\x08\\xd1\\x00\\xd2\\x18\\x42\\x69\\x9d\\xb6\\x6b\\xea\\x1b\\x69\\xb5\\xfb\\xd4\\x60\\xf2\\xc9\\xf1\\xdb\\x37\\xed\\x6a\\x4e\\xe1\\x22\\xa3\\x5f\\xc0\\x65\\xbb\\xa3\\x83\\xcd\\x3e\\xd0\\x2f\\xbe\\xe8\\x46\\xda\\x7a\\x6d\\xb9\\xd1\\xe5\\x87\\x47\\x31\\x6d\\x07\\xbb\\x74\\x97\\x6e\\xfd\\xc5\\x17\\x67\\x3b\\xcf\\xb8\\x0e\\xc8\\x77\\xda\\x79\\xf3\\x89\\xb8\\x41\\x17\\xb7\\x6f\\xb4\\x96\\x4b\\x12\\xdc\\xbb\\x98\\x98\\x92\\xc4\\xbf\\x0c\\x5c\\x38\\xf3\\x46\\xef\\x95\\x5f\\x2f\\xab\\x4c\\x7e\\x09\\x20\\x3b\\xba\\x19\\x26\\xd7\\xf5\\xc6\\xdf\\x15\\xbf\\xbf\\x3e\\x4d\\x55\\x37\\xd9\\x8d\\x7c\\x28\\x46\\xd2\\x76\\xd5\\x20\\x51\\x42\\xde\\x60\\xe2\\xdf\\xfb\\x69\\x56\\xad\\x0b\\xce\\x61\\x6d\\x21\\x3f\\xdd\\x19\\xcf\\x54\\x7d\\x41\\x62\\xf7\\x1e\\x55\\x8e\\x9c\\x68\\x18\\xdf\\x56\\x8f\\xcf\\xa1\\x2e\\xf9\\x51\\x2e\\xe9\\x8d\\xd1\\x75\\x1a\\xb7\\xdf\\x5a\\x72\\xbf\\x5b\\x93\\xba\\xb5\\x53\\x1f\\xe4\\xc8\\x37\\xad\\x65\\x11\\x96\\xdd\\x85\\xab\\x64\\xcb\\xf6\\x26\\x51\\x73\\xa5\\x5d\\x38\\xa6\\x6f\\xfa\\xba\\x17\\x49\\x2e\\x64\\x43\\x46\\x3e\\x60\\xa4\\x54\\x21\\xe8\\x4e\\x23\\x80\\x30\\x15\\x21\\xc7\\x41\\x4e\\x59\\xd7\\x70\\x15\\x78\\x5b\\x91\\x4c\\xe5\\x6d\\xaf\\x42\\x6e\\x99\\x3e\\xe1\\x80\\x9d\\xeb\\xa1\\xe7\\xcd\\xff\\xec\\x9d\\xfd\\x8a\\x4a\\x8c\\xf1\\x10\\x11\\x4b\\x02\\x8a\\x5b\\x75\\x93\\xad\\x49\\x80\\x50\\x8e\\xdd\\x51\\x40\\x3f\\x84\\x2b\\xfd\\x57\\x66\\xa9\\xb4\\x07\\x2c\\x42\\x74\\x90\\x72\\xf4\\x0c\\x07\\xa8\\x84\\xab\\xac\\xce\\x0c\\xe5\\x13\\xa3\\x3c\\x3f\\x44\\x81\\x71\\x38\\xf7\\xca\\xba\\x66\\x3d\\xdb\\xa0\\xb9\\x0a\\xf8\\x67\\x85\\x53\\xe9\\x56\\x4c\\x85\\x59\\x7a\\x40\\x77\\x84\\xe1\\x70\\x3a\\x0f\\x44\\x97\\x20\\x70\\x38\\x0f\\x66\\xc1\\x97\\x5e\\x29\\x3f\\xcc\\xcf\\x4f\\x3c\\x7c\\x1e\\xa3\\x71\\x26\\x08\\xa1\\xdd\\x36\\x49\\x7a\\x13\\x4d\\x2a\\x1a\\xb1\\x98\\xe4\\x34\\x12\\x71\\x77\\x6f\\x90\\x89\\xc7\\x0f\\x53\\x05\\xfa\\xa2\\xa2\\xae\\x9d\\x56\\xcd\\x02\\xbd\\x6e\\x7b\\x1b\\xce\\x83\\x42\\xbe\\x24\\xb2\\xbb\\xa0\\xf9\\xb1\\x55\\x32\\x07\\xd0\\x85\\xe1\\x45\\x49\\x99\\xd6\\x09\\x94\\xb4\\xb4\\x57\\xba\\x6a\\x6f\\xfa\\x28\\x65\\x2e\\x31\\x9e\\x2b\\xb7\\x73\\xe9\\x8b\\x07\\xa2\\x2c\\xa6\\x94\\xe6\\x51\\x16\\xe3\\x6c\\x32\\x69\\x23\\x49\\x85\\x07\\x01\\xdf\\x08\\x7c\\x09\\x74\\xb6\\x3b\\xd9\\xc5\\xdc\\x3c\\xcf\\x83\\x59\\x43\\x0e\\xd4\\x99\\x93\\x68\\x46\\x66\\xb1\\xf2\\x66\\xbe\\x95\\x72\\x4f\\xca\\x04\\x5b\\x8b\\xe7\\x87\\x7d\\x9e\\xad\\x13\\x29\\x84\\x1e\\xc8\\x1e\\x07\\xfb\\x86\\x54\\xc2\\xe0\\x27\\x3a\\x7a\\x5c\\x08\\x4a\\x3f\\xe5\\x46\\x6c\\x4e\\x3c\\xbb\\x22\\x2d\\xa6\\x3b\\x81\\xff\\x31\\x9d\\x81\\x51\\x00\\x32\\x50\\x00\\xb6\\x8c\\xda\\x7f\\x11\\x97\\x7e\\xf1\\x68\\x2e\\x31\\x3c\\x71\\x90\\x73\\x82\\x46\\xeb\\x3a\\xad\\xeb\\xad\\xe7\\x6d\\xb5\\x29\\x09\\x96\\x78\\x5b\\x3f\\x62\\x50\\xa3\\x28\\xac\\xd1\\x22\\x32\\xa1\\xbc\\x59\\xeb\\x7a\\x04\\xfd\\x49\\x20\\x4e\\x5b\\xbd\\xdc\\x5c\\xdd\\x8f\\x65\\x12\\x86\\x17\\x63\\x5d\\x18\\x6d\\x4b\\x89\\x8f\\x4d\\x37\\x1f\\x82\\xec\\xb5\\x8f\\x18\\x6b\\x7d\\xc4\\xae\\x67\\x30\\x2f\\x06\\xa3\\x8c\\xce\\xe5\\x1f\\xcc\\xc9\\x83\\xbe\\x2f\\xac\\x12\\x20\\x8a\\x8d\\x69\\xe2\\x17\\x9f\\x55\\x51\\x5a\\xd7\\x80\\x77\\xfa\\x5a\\x32\\x82\\x38\\xb5\\x85\\xbc\\x48\\xc4\\x38\\x94\\x54\\x22\\x48\\xe5\\x4c\\x75\\xfa\\x89\\x70\\x18\\x54\\x0a\\x07\\x08\\x8d\\x86\\x1d\\x14\\x18\\x6b\\x33\\x6c\\x3b\\x37\\xf6\\x3c\\xa6\\x4e\\x3c\\x9d\\x99\\xe4\\xad\\xfa\\x81\\x08\\x35\\xd3\\x0c\\xe6\\x22\\x30\\x56\\x56\\x96\\x45\\xdf\\x66\\x47\\xdc\\x94\\xc5\\xdd\\xc5\\x0b\\x99\\x8e\\xdc\\x77\\x0f\\x5c\\x24\\xf7\\x17\\x90\\x8b\\x5c\\x1c\\x78\\xc9\\xd6\\xc5\\x96\\x67\\xbf\\xb3\\xf4\\x82\\xdd\\x83\\x75\\x67\\x56\\xf0\\xe0\\xc2\\x9d\\x30\\x35\\x75\\x07\\x9e\\xfd\\x76\\x60\\xef\\x8a\\xf2\\x54\\xc1\\xa4\\xce\\x01\\x48\\x49\\xe7\\x12\\x81\\x80\\x83\\x23\\x75\\x4e\\xb7\\x06\\x61\\xed\\xbe\\x39\\x28\\xdb\\x86\\x85\\x80\\xb8\\xa3\\x70\\x67\\x1f\\xa0\\xef\\xa8\\x9c\\xce\\x63\\x7d\\xeb\\x8f\\xb9\\x9b\\xc8\\x44\\x9f\\x9f\\x4e\\x31\\x33\\xa1\\x26\\xb8\\xdc\\xaf\\xf3\\xd6\\x13\\x90\\x35\\x5d\\x7c\\x21\\x8d\\x40\\x8c\\x30\\xe2\\x79\\x92\\xa6\\x71\\xcf\\x43\\xff\\x14\\x7e\\x55\\x1c\\xca\\x35\\x83\\xa0\\x54\\x75\\xfd\\x2b\\x9e\\xa2\\x7f\\xb2\\x61\\x1a\\xdc\\x58\\xd5\\x86\\x99\\x06\\x78\\x6f\\x23\\xae\\x72\\x9f\\xb3\\x7b\\xf1\\x2e\\x5b\\xe5\\x19\\xdf\\xaa\\x00\\xc7\\x1d\\xf6\\x9b\\xce\\xbb\\xfb\\x9a\\xe6\\xc1\\x74\\xde\\xa9\\xf7\\x73\\xfb\\x70\\xa1\\x9d\\xbb\\xae\\x8b\\x67\\xd4\\xaf\\x46\\xdb\\xa4\\xec\\x65\\x25\\xe6\\x94\\x84\\x19\\xd8\\x3b\\x4a\\x99\\x75\\x7c\\xb0\\xfe\\xbf\\xaa\\x1f\\x59\\x0d\\xd4\\xb5\\x31\\xc3\\xd5\\x31\\xe3\\x47\\xdb\\xdb\\xdb\\xed\\x15\\xa2\\x77\\xc1\\x41\\x1b\\xcf\\x71\\x22\\x88\\xfd\\xc9\\x3e\\xdb\\xa0\\x0c\\x45\\x71\\x1b\\xcd\\x58\\x5d\\x0a\\x55\\xf4\\xf5\\xc0\\xc9\\x74\\x8a\\x79\\x94\\xd1\\x22\\x4a\\x62\\x09\\x0f\\x72\\xbd\\xa9\\x83\\x4a\\xf9\\xc3\\xe1\\xde\\x37\\xb8\\xf6\\xa8\\xa0\\x15\\x88\\x62\\x10\\x20\\x6d\\x0c\\x2a\\x5d\\x97\\xa8\\x2b\\x22\\xfb\\x01\\x4d\\xd5\\x7d\\xa7\\x73\\x15\\x76\\xe9\\x6b\\xf5\\x03\\x54\\x37\\x1b\\x44\\xf0\\x6f\\x65\\x59\\xc1\\xee\\xc5\\x33\\x15\\xf4\\x0f\\x77\\x7e\\x93\\x5d\\x22\\x98\\x27\\xb0\\x9e\\xc2\\x65\\xc1\\x16\\x70\\x57\\xa2\\x05\\x32\\x7c\\x42\\x0b\\x29\\xfa\\x98\\xf3\\x8c\\x27\\xaa\\xe9\\x2f\\xa1\\xe5\\xb6\\x5a\\xd9\\x53\\x70\\x01\\xe8\\x02\\x95\\xd8\\x1b\\x05\\x2a\\xb1\\x8f\\xd6\\x48\\xa6\\x34\\xc0\\x0a\\xab\\x57\\xf4\\x68\\x9d\\x7f\\x05\\x5f\\xcd\\x88\\x52\\xae\\xfe\\x50\\xb1\\x43\\x5a\\x04\\x85\\x20\\x40\\x06\\x82\\xbf\\x13\\x29\\xf7\\x05\\xc7\\x86\\x80\\x69\\x7b\\x76\\xcb\\x82\\xa3\\x7b\\xed\\x06\\xc7\\x34\\x2b\\x03\\xb7\\x23\\xa5\\x2e\\x81\\x21\\x81\\x43\\x98\\x7b\\x31\\xf2\\xbd\\x21\\xee\\xa4\\x4d\\x2e\\xd9\\x6d\\x56\\x1c\\x2a\\x3d\\xe0\\x5e\\xd9\\x7f\\x9e\\xcb\\x04\\x01\\x7a\\xd9\\x4b\\xe5\\x50\\x78\\x84\\x93\\xf5\\x31\\x8d\\x4b\\x34\\x8f\\xa9\\xfc\\x37\\x50\\x44\\x10\\x16\\x3d\\x89\\x29\\x62\\xd1\\x97\\x71\\x5d\\xb3\\xe8\\x2b\\x1d\\xb9\\x67\\x90\\xc9\\xfd\\x27\\x05\\xa9\\x1c\\x22\\xee\\x20\\x28\\x02\\xf7\\x0c\\x44\\x4f\\x62\\xb8\\x17\\x40\\xe2\\x26\\xc0\\x2c\\x33\\xf2\\x25\\x6e\\xf4\\xb1\\xfd\\x27\\x7b\\xd1\\x8f\\x69\\xed\\x72\\x71\\xa3\\x1a\\x98\\xc7\\x6d\\x4d\\x4f\\x70\\x08\\x4d\\xd5\\xb5\\x41\\xc7\\x88\\x45\\xb3\\x58\\x76\\xf9\\xcb\\x98\\x4e\\xa0\\xcf\\xa1\\xec\\xb2\\x7c\\xfc\\x73\\x5c\\xd7\\x73\\x1c\\x3c\\xbe\\x44\\x10\\xb7\\x40\\x55\\x26\\xcb\\xba\\x45\\x9a\\x9a\\x37\\x2c\\xcb\\x7e\\xa5\\xca\\xfe\\xef\\x78\\xc2\\xa2\\x7f\\x3f\\xc9\\x10\\xc8\\x1f\\xcf\\x1b\\xb6\\xd8\\x18\\xfb\\x84\\xb1\\x6d\\xe2\\xc8\\x4a\\x25\\x75\\x79\\xdc\\x9e\\xb5\\xfe\\xdd\\x87\\x39\\xd0\\x27\\x2f\\xb2\\x0e\\x15\\x05\\xde\\x74\\xfa\\xb1\\x9c\\x86\\x2f\\x63\\x49\\x85\\x7e\\x37\\xc1\\x59\\x3d\\x0f\\x09\\xba\\x11\\x08\\x6e\\xdd\\x54\\x6f\\xbc\\x0b\\xf5\\x82\\xdd\\x76\\xcf\\x4f\\x05\\x9e\\x9a\\x67\\xf0\\x8c\\x80\\x68\\x0b\\x70\\x43\\xba\\x9e\\x3a\\x58\\xd7\\xc7\\x31\\xe5\\x56\\x8a\\xbd\\x48\\x4f\\x20\\xac\\x8e\\x76\\x42\\x3d\\xbe\\x7f\\xfa\\x97\\x91\\xc5\\xd2\\x8a\\x98\\xf0\\xc4\\xba\\xd6\\x99\\x35\\x01\\x62\\x27\\x2a\\xad\\xc1\\x92\\x8e\\xa1\\x35\\xeb\\x1e\\xcf\\x73\\x68\\x15\\x90\\xa5\\x04\\x21\\xb0\\x4a\\x39\\x55\\xa4\\x7d\\x8c\\xe0\\x26\\x8a\\x76\\xa2\\xe1\\xae\\x03\\x6a\\xc5\\xa0\\x01\\xb1\\x1b\\xc3\\x1d\\x18\\xca\\xba\\x02\\x22\\xce\\x60\\xcf\\xfb\\x88\\xd8\\xd8\\x35\\x0d\\xc2\\x04\\x16\\xb6\\xae\\xe3\\x38\\x17\\x0f\\xfd\\x44\\xff\\xa6\\xaf\\x12\\xb5\\x6e\\xe6\\x18\\xec\\xbf\\x9e\\xf1\\x5c\\x9b\\xdc\\x3a\\x10\\x6a\\x9e\\x0a\\x95\\x84\\x0d\\xe2\\x72\\x66\\xa1\\x94\\x71\\x25\\x81\\x0c\\x44\\x88\\x32\\x15\\x6b\\x55\\x25\\x84\\x99\\x24\\x2f\\x81\\xf9\\x1e\\x66\\x0e\\xbc\\x7e\\xd0\\xaf\\x5c\\x5d\\x71\\xdf\\x5d\\x0a\\xca\\x71\\xe0\\x5e\\x76\\x1f\\xed\\x0f\\xd7\\xd3\\x79\\xe0\\x3e\\xb2\\xbf\\x29\\x08\\xe9\\xc0\\x4b\\x35\\xf5\\x4f\\x9d\\xc5\\xba\\xab\\x66\\x58\\x4b\\x6d\\x77\\xae\\xae\\xb3\\x16\\xd6\\x4c\\x55\\x93\\x39\\x54\\x36\\x71\\xa7\\x6e\\xe0\\xcc\\xb1\\xc4\\x6a\\xa7\\x98\\x62\\x10\\xdf\\x8c\\x02\\x62\\x00\\x66\\xb8\\x03\\x5d\\x92\\x50\\x37\\x4f\\x2a\\x61\\xa7\\x4f\\xbf\\xc4\\xa4\\xa2\\xae\\xb6\\xfc\\x81\\x9e\\xd8\\x06\\xba\\xa5\\x9e\\x93\\xf0\\x14\\x00\\x1c\\xc7\\x96\\xd7\\x2c\\xb9\\x4e\\xf6\\xe4\\xa0\\xfa\\xd1\\x33\\xfb\\xa3\\x85\\x43\\x69\\x12\\xba\\x16\\x65\\x72\\x47\\x50\\xf7\\xae\\x2f\\xf8\\x3d\\xd0\\xea\\x3c\\xd0\\x93\\x5b\\xea\\x1c\\x3c\\xcf\\x01\\x4b\\xd6\\x9d\\xb2\\x01\\x30\\x0a\\xd0\\x2d\\x3e\\xee\\x5b\\x31\\x6d\\x4f\\xf7\\xd1\\x36\\x86\\x20\\x6c\\xe1\\xfe\\xfc\\x0e\\x7a\\x08\\xe4\\xa0\\xf7\\x23\\x17\\xea\\xde\\xd0\\x2d\\x75\\x0b\\x9e\\x3f\\xe8\\x4b\\x02\\x9d\\x1b\\xcf\\xeb\\x8d\\xa4\\x69\\xf7\\x78\\xb6\\x41\\x37\\x34\\x4a\\xc2\\x9d\\x45\\x94\\x83\\x5d\\x77\\xe4\\x15\\x93\\xc4\\xf3\\x6e\\xf1\\x71\\x4d\\x77\\xd1\\x7d\\x5c\\xd7\\x48\\xfe\\x40\\x10\\xc7\\x9c\\xae\\x23\\x1d\\x29\\x26\\xa5\\xb9\\x44\\x4e\\x94\\xbe\\xf1\\xbc\\x3c\\x9a\\xc7\\x64\\xd3\\x4b\\x78\\x1c\\x93\\x3d\\x4d\\x3d\\x6f\\x67\\x99\\xd0\\x44\\x69\\xdc\\x8e\\x76\\x32\\x49\\x3d\\x6f\\xef\\x79\\x7b\\x88\\xb7\\x83\\x36\\x34\\xa5\\x33\\x90\\xb3\\xe0\\x2a\\x73\\x13\\xb9\\x63\\x6f\\xa9\\x85\\x27\\x93\\x8d\\xe7\\xed\\xd5\\x75\\xbc\\xb2\\x17\\x34\\x7a\\x43\\x52\\xb2\\x89\\x17\\xab\\x92\\x25\\x1f\\x9b\\x96\\x77\\xb8\\xf5\\x3c\\x94\\x53\\x24\\x54\\xd7\\x85\\xee\\x3a\\x96\\xa2\\x93\\xec\\x98\\xea\\x22\\x96\\xbd\\x9d\\xc7\\xca\\x02\\xfc\\xf3\\xfb\\xf4\\x2f\\x2e\\x8e\\xee\\x34\\x74\\x09\\xed\\x55\\x87\\xf6\\x56\\x87\\xe4\\x10\\x36\\x10\\xec\\x4a\\x8e\\x0a\\xc3\\x40\\xda\\xf3\\x83\\x29\\xcd\\xc8\\x46\\xe9\\x96\\x24\\x84\\x6f\\xfe\\xad\\xf4\\xbc\\xcd\\x55\\x79\\x4d\\x67\\x4d\\x33\\x42\\xb4\\x6c\\x7d\\x7c\\xe6\\xef\\x81\\xa9\\x51\\xb7\\x31\\x66\\x7e\\xc5\\x84\\xe2\\x22\\xaa\\x68\\x78\\xed\\x8b\\x45\\x82\\xdd\\x03\\xd7\\x1e\\x12\\x2c\\xbd\\x50\\x15\\x28\\x31\\xa7\\xd5\\xc3\\x47\\xf7\\x71\\x58\\x4a\\xf1\\xac\\xbd\\xb2\\x78\\x1e\\x22\\x4e\\x23\\x46\\x18\\x71\\x5d\\x22\\x62\\x62\\xb7\\xe5\\xdf\\x24\\xd5\\xdb\\x3b\\xfe\\x83\\xf6\\x28\\x42\\x43\\x2b\\x8a\\xd0\\xe6\\x83\\x5b\\xd3\\x5e\\xc9\\x07\\x97\\xe6\\x4a\\xd4\\x11\\xee\\x37\\xa3\\xaf\\xdb\\x98\\x91\\x51\\x02\\x3c\\x03\\xb0\\xc0\\xc0\\x09\\x43\\x4a\\x83\\xc7\\x18\\x14\\x59\\xe7\\x0c\\x4c\\xb4\\x83\\x52\\x32\\x56\\x6a\\x82\\x82\\x23\\x2f\\x44\\x50\\xf4\\x95\\x98\\x8a\\x1e\\x49\\x56\\x5c\\x49\\x6f\\xd5\\xa9\\x25\\x43\\x7f\\x4e\\xfa\\x03\\x91\\xe8\\xa5\\x0b\\xe3\\x08\\x83\\x01\\xe1\\x3d\\x23\\x51\\x8c\\xe1\\x0e\\x81\\xde\\xa0\\xaa\\xe9\\x14\\xa3\\x82\\x26\\x51\\x15\\x2b\\x92\\x5f\\xc9\\xe1\\x08\\xf9\\x03\\xf7\\xfb\\xd8\\x6b\\x0c\\x4e\\x18\\x86\\xbc\\xa9\\x48\\x4c\\xe0\\xa5\\x2d\\xab\\x2f\\x08\\xc7\\xc4\\xe1\\x0a\\x58\\x9b\\x06\\x93\\x9b\\xa4\\x1a\\x8e\\x6c\\x44\\x16\\xb2\\xb5\\x2e\\xc2\\x52\\x2e\\x34\\x98\\x18\\xdd\\xc2\\x67\\xd7\\x82\\x84\\xcd\\xfa\\xd7\\xb5\\x50\\x6a\\x78\\x15\\xd3\\x59\\xf2\\xe6\\x1d\\x6d\\x61\\x92\\xb6\\xc8\\x46\\xf2\\x84\\x6f\\xcf\\x34\\xf0\\xb3\\x26\\xe0\\x40\\x82\\xcf\\x01\\x2a\\x94\\x07\\x30\\x25\\xff\\x12\\xe7\\xa2\\xd4\\x1b\\x69\\x71\\x01\\xe2\\x6a\\x1a\\x0e\\xed\\x78\\xee\\x77\\x79\\x20\\xeb\\x96\\x2d\\x0f\\xbf\\xa9\\xf4\\x40\\xf8\\xf2\\xa1\\x55\\xdd\\x9c\\xdc\\xe7\\xc2\\xd5\\x61\\x24\\x38\\xef\\x74\\x03\\x97\\x64\\xd2\\xc8\\xee\\x43\\x6d\\xad\\xba\\xd3\\xc4\\x52\\x0b\\x75\\xda\\xda\\x06\\x13\\xe5\\x45\\x14\\x9c\\x4a\\xb2\\xcc\\xcf\\x8b\\x75\\xeb\\xb0\\x6c\\x9e\\xe5\\xfe\\xbb\\xe9\\xdf\\xce\\x00\\x14\\x15\\xa8\\xb5\\xf0\\xb3\\xb4\\x21\\x65\\x51\\x8c\\x07\\xe4\\x96\\x08\\xc7\\xc4\\x9c\\x38\\xf3\\x7d\\x3f\\x0c\\xf5\\x80\\x9c\\xbd\\x6c\\xf2\\x25\\x04\\x40\\xae\\xbb\\x67\\x24\\x79\\x34\\xc7\\x41\\xe6\\xf2\\x24\\x75\\xb9\\x43\\x5d\\xff\\x93\\xf9\\xe6\\xe6\\x09\\xdc\\x10\\x7d\\x20\\x32\\x7e\\x76\\x6e\\x8e\\x48\\xc0\\x39\\x03\\xa2\\xa3\\x7d\\x66\\xe6\\x59\\x43\\xf4\\x31\\xd1\\x68\\x3c\\xef\\xcf\\x54\\x30\\x08\\xd9\\xff\\x36\\xc8\\xb4\\x14\\x2c\\xf6\\xda\\x87\\xc4\\x7c\\x32\\xa7\\x59\\xe6\\xc6\\xa9\\x73\\x7d\\xb3\\xd5\\xd9\\xec\\x6c\\x60\\x70\\xd2\\xbd\\xeb\\x41\\xa8\\x9b\\x92\\xed\\x2a\\x3f\\x4b\\xae\\x6e\\x2f\\xe7\\x97\\x83\\xbc\\x76\\xff\\x8f\\x5b\\xd7\\x4f\\x7a\\x47\\x1d\\x4a\\xc6\\x1e\\xbb\\xa0\\xbf\\xe5\\x16\\x88\\xea\\xe5\\xc8\\x78\\x9c\\x96\\xce\\xa8\\x6b\\x68\\xe1\\xf0\\xf2\\x86\\x25\\x29\\x1b\\xbd\\xe5\\xf4\\x6f\\x27\\x17\\x7d\\x34\\x04\\xa6\\x78\\x2c\\xf3\\x5f\\x46\\x32\\x2b\\x15\\xcc\\xff\\xe5\\x42\\x5a\\x8a\\x1c\\x03\\x90\\x56\\x12\\x38\\x1f\\xde\\x8f\\x04\\x7f\\x3f\\xa9\\xea\\x5c\\x9b\\x9e\\xe7\\xca\\x1a\\xba\\xfa\\x3d\\x4f\\xbb\\xb1\\x21\\x71\\x12\\x4a\\x5d\\x59\\x81\\x00\\x86\\x39\\x91\\x95\\x94\\x93\\x6f\\xa3\\x35\\x05\\x7b\\x81\\x4e\\xc4\\xb5\\x68\\x16\\x03\\x02\\x1d\\x7c\\xb6\\x14\\xc0\\x91\\x98\\xce\\x65\\x1e\\xf6\\xdb\\x30\\x47\\x27\\xbc\\x44\\xb3\\x6b\\x1e\\xf2\\x89\\x08\\x38\\xe4\\xbc\\x65\\xfc\\xb4\\x36\\xed\\xea\\xa8\\x7c\\x4d\\x04\\x5c\\x33\\x48\\x1f\\x63\\x36\\x3c\\xa8\\x67\\x0d\\x26\\x45\\x9a\\x9e\\x2b\\x3f\\xff\\x9c\\xf2\\xf9\\xc9\\x60\\x3a\\xa7\\x9f\\xb6\\xa7\\xaa\\xa2\\xe9\\x54\\x72\\x43\\x0b\\x53\\x4f\\xd9\\xab\\x67\\xfb\\xf9\\xf5\\x88\\xeb\\xc9\\xa4\\x1c\\xaf\\xa6\\x69\\x20\\x0b\\xbf\\xc8\\xf8\\x11\\xfc\\x5c\\x03\\x67\\x46\\x8c\\x7b\\xab\\x7c\\xde\\x64\\x10\\x13\\x88\\xec\\x93\\xaa\\xba\\x2b\\x4a\\x08\\x07\\x93\\xed\\x92\\x2d\\x04\\x0a\\xc2\\x1d\\x23\\xc6\\x63\\x9a\\x0b\\x39\\xd4\\xb6\\x3a\\xe5\\x5b\\x2e\\xf3\\x97\\xac\\x62\\xe2\\x34\\xff\\x5a\\xe5\\x37\\xda\\xc5\\x8d\\xe8\\xfb\\x2e\\x59\\x9e\\x4b\\xf4\\x85\\x91\\x9d\\xb3\\x0d\\x5a\\xb7\\x5e\\x3f\\xe1\\x2c\\x58\\x1b\\xe9\\x0a\\x2f\\x2a\\xca\\xc8\\x41\\x32\\x34\\xb9\\xe4\\x0f\\x8d\\x5e\\xc9\\x30\\x21\\xf8\\x88\\x1c\\x5e\\xd7\\xa8\\xa4\\x8f\\x94\\x15\\x73\\x85\\x41\\x53\\x51\\x82\\x03\\x64\\xa5\\xab\\x29\\xa3\\x59\\x6c\\xe4\\xc7\\xba\\xae\\x30\\x39\\x68\\x43\\x61\\x1a\\xc5\\x58\\x12\\x3c\\x67\\x4e\\x50\\x49\\x5f\\xb5\\x55\\xe8\\x8b\\x04\\xdb\\x9b\\xef\\x75\\x34\\x3a\\xad\\x91\\x57\\xd6\\x52\\x50\\xa9\\xc5\\x5f\\x5d\\xc0\\x89\\x7e\\xd7\\x68\\x2b\\xb1\\x5a\\xfe\\xa3\\xc6\\x26\\x07\\x3b\\xa8\\xa4\\x7f\\x8f\\x92\\xb8\\x6d\\xb1\\xae\\xf3\\x28\\x89\\x3d\\x4f\\x7e\\x90\\x4f\\xa8\\x94\\x69\\x7f\\xdc\\x8b\\x84\\xe8\\x53\\xa0\\xa0\\x3c\\xd7\\x7a\\xb6\\x41\\x0e\\x57\\x5c\\x7a\\x7b\\x2d\\x6b\\x68\\xfc\\xb0\\x82\\x2a\\xec\\x54\\x4b\\x38\\x78\\x81\\x18\\x39\\xe0\\x76\\xf6\\x3b\\x25\\x71\\x2a\\xfa\\xae\\x5c\\x86\\x1b\\x24\\x25\\x75\\xdd\\xbe\\x33\\x57\\x39\\xa1\\x2c\\x12\\x71\\xff\\x82\\xaf\\xb2\\xab\\xea\\x46\\xd8\\x60\\x9d\\x51\\xe1\\xa7\\x59\\x49\\x0a\\xca\\x3d\\xcf\\xd6\\x43\\x4a\\xf1\\x98\\x24\\xf4\\x59\\x77\\xb4\\x27\\x14\\xd5\\x08\\x7b\\x12\\x71\\x69\\xe4\\x52\\x41\\x05\\x1c\\x05\\xea\\x5b\\x44\\x2d\\x5a\\xd1\\xde\\x03\\xc8\\x74\\x89\\x81\\x50\\x5d\\xa9\\x9e\\x68\\x6f\\x3a\\xfa\\x46\\xc2\\xe4\\x24\\x91\\xf3\\x56\\x9d\\x56\\x3e\\x52\\xbb\\xe7\\x31\\x5d\\x4f\\x7b\\x5c\\xdd\\x58\\x12\\xda\\xa7\\x3a\\x26\\x01\\x9f\\x0e\\x64\\x3e\\x82\\xa4\\xbc\\x9a\\x59\\x72\\xdf\\x5e\\x1d\\x15\\x1e\\x40\\xf8\\x83\\x20\\x99\\xb3\\xba\\x3e\\x48\\x21\\xab\\x3b\\xaa\\x05\\x82\\x6b\\x84\\x49\\x55\\x01\\x8d\\xf6\\x31\\xc9\\x41\\xc3\\xa9\\xfb\\x57\\xd7\\xa5\\x4a\\x90\\xb9\\xbb\\xce\\x76\\x6b\\xb3\\xed\\x39\\x4e\\x74\\xe2\\xd2\\x70\\xca\\xcd\\x95\\x3e\\x3d\\x91\\x20\\x53\\xe1\\xd8\\x1d\\x29\\xda\\xe8\\x8c\\x23\\x84\\x39\\x60\\x92\\x00\\xb4\\x2d\\xee\\xc4\\x48\\x10\\x79\\x0a\\xf1\\xd4\\x67\\x70\\xbf\\xa1\\x86\\xb3\\xdc\\x44\\xd3\\x53\\xc0\\x76\\xb8\\xae\\x16\\xd5\\x64\\x22\\x45\\x10\\xa6\\x45\\x10\\x89\\x08\\x38\\x2a\\x88\\x89\\xcf\\x92\\xb4\\xde\\x00\\x39\\x98\\x40\\xc8\\x97\\xaa\\x13\\x81\\x92\\xae\\x0f\\x0f\\x56\\x1f\\x2c\\x51\\xa5\\xf4\\x3c\\x47\\x0a\\x4a\\xe0\\x56\\xfb\\x20\\xd4\\x65\\x43\\x9e\\xe7\\x64\\x2a\\x2d\\x93\\x69\\x32\\x3f\\xee\\x1d\\x8d\\x68\\x04\\xd7\\x53\\xd4\\x50\\xd0\\x3c\\x80\\x79\\x54\\x62\\x06\\xb4\\xa5\\x45\\x5d\\xdf\\x0b\\x88\\x75\\x7f\\xe9\\x92\\xee\\x66\\xd8\\x30\\xaa\\xe2\\xa0\\x02\\xa9\\x6b\\x47\\x1d\\x56\\xd7\\x4e\\xe1\\x79\\x22\\xdc\\x06\\x3b\\x01\\x77\\x07\\x30\\xa8\\x9e\\x3c\\x50\\x1e\\x66\\x75\\x8d\\x8a\\x90\\x05\\x37\\x75\\x5d\\xe2\\x30\\x8a\\x83\\x24\\xd8\\xc1\\x19\\x97\\xe7\\x71\\xb4\\x23\\x0f\\x2a\\x67\\x89\\x8f\\x39\\xdd\\x09\\xf4\\x40\\x52\\x4c\\x4a\\x94\\x13\\x39\\xbb\\xf2\\xc3\\x7a\\x68\\xaf\\xbf\\x96\\x42\\xdd\\x9e\\xe6\\xd1\\x1a\\x66\\xf4\\x21\\x4a\\xa3\\x75\\x2c\\xe5\\xba\\x9d\\x7e\\xda\\x63\\xb0\\xca\\x2f\\x94\\xeb\\x48\\x5d\\xab\\x78\\x9b\\x99\\x6c\\x00\\xc2\\xf0\\x3e\\x8c\\xd6\\xf7\\xa0\\xea\\xcb\\xd5\\x1a\\xec\\xa2\\xb5\\xac\\x68\\x91\\x01\\x83\\x41\\x1e\\x00\\xb9\\x93\\x03\\x6e\\xfe\\xa0\\x38\\xca\\x69\\x16\\x6a\\x29\\xba\\x20\\x7b\\x1c\\x6c\\x64\\xfa\\xf5\\x74\\x0e\\x21\\x4c\\x73\\xd9\\xcd\\x44\\xfe\\xc8\\x3e\\xaa\\x9d\\xf0\\x00\\xa3\\xa6\\x94\\x26\\xe1\\x43\\x7b\\x01\\x02\\x79\\x68\\x6d\\x9d\\x1f\\x30\\xc9\\x42\\xdd\\x8d\\x84\\x3c\\x90\\x03\\x0e\\x8c\\x8b\\x41\\x42\\x1e\\x70\\x63\\xe1\\xbf\\x5b\\xd1\\xbf\\x6d\\xbc\\xe8\\x20\\x33\\xa1\\x99\\x6f\\xce\\x5c\\x22\\xd0\\x7a\\x43\\xe8\\x61\\x52\\xd1\\xa4\\xae\\xad\\x4f\\x92\\xd2\\x91\\x03\\x05\\x3b\\x09\\xb2\\xa6\\x37\\xe3\\xb6\\xc3\\x8a\\x9b\\xab\\x88\\x33\\xc3\\x64\\x7f\\x26\\xd3\\x6b\\x13\\x7a\\x4d\\x89\\xa3\\x3a\\xf7\\x86\\x46\\x43\\x6f\\x79\\xbd\\xe9\\x12\\x09\\xc1\\x75\\xcd\\x1d\\x4a\\x73\\x49\\x55\\x90\\xa0\\x1c\\x77\\xf0\\xb6\\x36\\x17\\x7f\\x9a\\x1b\\x40\\x71\\x13\\xab\\x5d\\x56\\xd8\\x97\\xbf\\xf6\\x46\\x79\\xd0\\xa3\\xc4\\x1b\\x1a\\xdd\\x08\\xb4\\x15\\x68\\x83\\x09\\xc7\\x4a\\x35\\x75\\xd4\\xf9\\x15\\xb1\\xb3\\x72\\x1b\\xff\\x0d\\x39\\xe1\\x90\\xaa\\x89\\x17\\x26\\x3c\\xba\\x8f\\x95\\x74\\x50\\xd2\\xc9\\xe4\\xb0\\x28\\xae\\x4b\\x38\\x1d\\x93\\xd0\\x65\\xb7\\x5b\\x9a\\x76\\x7b\\x5a\\xa7\\x07\\x81\\x0e\\xd7\\x73\\xcf\\x53\\xdd\\x80\\x47\\x49\\xb0\\x5a\\x1d\\xed\\x61\\x3a\\xc7\\xf8\\xc4\\xad\\x83\\x93\\xf2\\xfa\\xe0\\x79\\xb7\\x5d\\xce\\x83\\x1c\\x3c\\x29\\xae\\x4b\\x95\\xda\\x6a\\x73\\xdb\\x54\\x20\\x83\\xb8\\xd9\\x18\\x16\\xd0\\x10\\x54\\x68\\xb8\\x83\\x96\\x95\\xe8\\xc7\\xda\\x28\\xda\\x9b\\x2b\\xae\\x67\\x24\\x69\\x41\\xe7\\x7a\\x46\\x2c\\x0b\\x08\\xc9\\x15\\xad\\xc9\\x86\\x68\\xab\\x61\\xed\\xd0\\x2d\\x77\\xc7\\x2d\\x9d\\x91\\x15\\x75\\x67\\x2e\\xb9\\xa7\\x95\\xe7\\x45\\x31\\xb9\\xd3\\xd8\\x30\\x25\\xef\\x69\\x4e\\x9e\\xd1\\xaa\\xae\\x13\\xcf\\xeb\\x2c\\x6b\\x91\\x44\\x29\\xa9\\xe7\\x1d\\x7a\\xfe\\x35\\x07\\x4c\\x3e\\xd2\\x37\\x13\\x1d\\xc4\\xfe\\x7d\\x38\\x0f\\x5e\\x27\\xe2\\xc6\\x2f\\x13\\x9e\\x16\\x3b\\x84\\xeb\\xda\\x57\\xbc\\xee\\x1d\\x6c\\xb6\\x83\\x32\\x95\\x38\\x90\\x92\\x72\\xbc\\x50\\xed\\xa1\\x1b\\xfa\\x2c\\x5a\\xc5\\x78\\xb1\\x9a\\x4c\\x60\\xeb\\x27\\x9e\\x77\\x83\\x8f\\xdb\\x36\\x4c\\xf5\\x8e\\xb2\\x68\\x3b\\x99\\x00\\xb9\\xdb\\xa1\\x1b\\x39\\x24\\x8c\\x8f\\x7a\\xbe\\x6e\\xb0\\xd6\\x7a\\xca\\x06\\xde\\xd0\\x8f\\x44\\xae\\x35\\xc7\\x4d\\xe1\\x79\\x08\\xdd\\x50\\x67\\x27\\x2b\\xf3\\xbc\\xdb\\xe9\\x94\\x54\\x9e\\x77\\x6f\\x0a\\x29\\x47\\xa0\\x09\\x5d\\x91\\xc2\\xf3\\x56\\x0e\\xa5\\xb7\\xfd\\x16\\x85\\x6a\\x71\\x87\\xee\\xe5\\x1e\\x26\\x6b\\xac\\x49\\xb7\\x2c\\x75\\x3d\\xd3\\xc7\\xfd\\xab\\xe9\\x14\\xdf\\x47\\xab\\xb8\\xae\\x1f\\xe0\\x3f\\x92\\x3f\\xf4\\x7b\\xb5\\x93\\x36\\x18\\x2f\\x14\\xb2\\xc0\\x8d\\xc1\\x00\\x1b\\xf2\\x80\\xc9\\x9d\\xe7\\x39\\x95\\xe7\\x3d\\xb4\\x0b\\xe6\\x79\\xb7\\x93\\x76\\x2d\\xe7\\x70\\x2e\\xd7\\x59\\x52\\xa0\\x2e\\x28\\xba\\x19\\x61\\x4e\\xdf\\x63\\x72\\xdf\\xb4\\xd7\\x2a\\x86\\x85\\x40\\x15\\x0e\\xaa\\xa6\\xa2\\x95\\xb2\\x3f\\xcb\\x7a\\x77\\x09\\x9d\\xd8\\x27\\x47\\x31\\x29\\xe8\\x3b\\x8b\\x51\\x76\\x0a\\x7c\\x54\\x87\\x4c\\xe0\\xcc\\x25\\xd9\\xd7\\xc1\\xb5\\x28\\x7c\\x3a\\xc5\\x05\\xbd\\x15\\x48\\xc0\\x9d\\x04\\x05\\xe8\\x3f\\x0d\\x31\\x0c\\x32\\xf3\\xb4\\x28\\xe8\\x3b\\xc4\\xc8\\x4a\\xc0\\xed\\x03\\xb8\\xb3\\x56\\xee\\x98\\xf7\\x7b\\x31\\x90\\x40\\x48\\xd6\\x35\\x06\\x18\\x22\\xd3\\xfb\\x54\\x29\\xe2\\xa2\\x32\\x26\\xdc\\x3a\\xca\\x6e\\x2b\\xba\\x1b\\xb8\\x44\\x4a\\x22\\x69\\xf8\\x2d\\x18\\x06\\x8c\\xac\\x54\\x8a\\xa4\\xbd\\x41\\xd0\\x00\\x60\\x74\\x2f\\x99\\xa0\\xbd\\x75\\x9a\\x88\\x89\\x21\\xa2\\xd7\\x8f\\x3d\\xcf\\x7d\\xf5\\x5c\\xf2\\x8a\\xe8\\x40\\x93\\x68\\x16\\x63\\x2d\\xbc\\x7e\\xdd\\x63\\xb5\\x3c\\xcf\\x49\\xe5\\xf6\\x68\\x11\\x49\\x02\\x47\\xbe\\x80\\x48\\xd4\\xb5\\xd1\\xad\\x8d\\x3f\\x3a\\x18\\xa4\\x64\\xf3\\xf7\\xfa\\xd8\\x59\\xe0\\x68\\x16\\x13\\x47\\x74\\x9e\\x8e\\x1d\\x8e\\x48\\x0c\\xa3\\xae\\x18\\x5f\\x33\\x86\\xa6\\xa0\\x7f\\x1f\\xb9\\x94\\x88\\xe1\\x70\\x16\\x24\\xa7\\x57\\xbe\\x1c\\xc1\\xda\\x26\\x89\\x8a\\x98\\x58\\xdd\\xcd\\xe9\\xa1\\x87\\xf6\\x24\\x37\\xb8\\xd6\\x7d\\x8e\\xf2\\x58\\x85\\x02\\x59\\x7f\\xb2\\xeb\\xda\\xe9\\x2e\\x31\\xf4\\xe9\\xd4\\xf9\\x4e\\x5f\\xa1\\x9d\\xf4\\xee\\x7f\\x61\\x6d\\xe8\\x69\\x40\\x7e\\x09\\x26\\xce\\x79\\xf7\\xc6\\x52\\xbb\\x4d\\xea\\xa3\\x8d\\xd6\\x14\\x0c\\x31\\xb2\\xc7\\xa8\\x24\\x82\\xa4\\x84\\x93\\xd6\\xfd\\x0f\\xfc\\x1d\\x5b\\x5d\\x0c\\x17\\x37\\xd4\\xd2\\xcc\\xfc\\xd6\\x41\\xe1\\x7b\\x81\\xf0\\xb1\\x31\\xe4\\xa4\\xa2\\xef\\xed\\x50\\x91\\x6d\\x91\\x9e\\x12\\x1f\\x22\\x68\\xbf\\x17\\x64\\x8d\\x70\\x6b\\x27\\xa6\\x2e\\xf6\\x23\\x2a\\x86\\x39\\xad\\x20\\xae\\xd1\\xfd\\xbe\\xec\\x19\\x5b\\xe8\\xb4\\xc8\\x0d\\x5c\\x75\\xc1\\xdb\\xbe\\x6c\\xeb\\x5f\\xe9\\x9d\\x4e\\x7b\\x7b\\x9e\\xac\\x40\\x79\\x6c\\x59\\xae\\x90\\xee\\xde\\xdc\\xd6\\x61\\x90\\x74\\xf1\\x03\\xa9\\x65\\xfe\\xd6\\x98\\xeb\\x10\\x12\\x41\\xaf\\xfe\\xce\\x45\\x96\\x3f\\xba\\x22\\x95\\xbe\\x99\\x4d\\x2d\\x4e\\x55\\xef\\x4b\\x76\\x8b\\xc2\\x00\\x3e\\xd7\\x60\\x39\\x7f\\x45\\x0e\\x32\\x8f\\x1f\\x7d\\x08\\xfe\\xb4\\x8c\\x96\\x3e\\x89\\x2f\\x1f\\x5d\\x91\\x5c\\xd0\\xb3\\x37\\x61\\x91\\xb5\\xa0\\x47\\x38\\xd2\\x2a\\x19\\x07\\x65\\x80\\x52\\x76\\x57\\xf2\\x99\\xb3\\x7b\\x10\\xe8\\x65\\x43\\x52\\x9e\\x5f\\xf4\\x62\\x2a\\x6d\\xfa\\x51\\x5e\\x6c\\x26\\x28\\xeb\\x45\\xf4\\xb0\\x2c\\x6d\\x4e\\x9d\\x93\\x75\\xe8\\x45\\x15\\x01\\xec\\x50\\xdd\\xbc\\x13\\xc9\\xfa\\x23\\xd2\\x97\\xaa\\x43\\xd0\\x70\\x4b\\x4f\\x24\\x31\\x8b\\xa0\\xb3\\x45\\xd6\\x85\\x07\\xb1\\xe3\\x2f\\x46\\x22\\x56\\x41\\x57\\x3a\\x09\\x46\\x0b\\xd9\\x70\\xf2\\x61\\x97\\xd4\\x01\\xeb\\x55\\xc4\\x3e\\x59\\xce\\xc2\\x4e\\x74\\xd0\\x99\\xec\\x7a\\x1e\\x9a\\x35\\x46\\x1c\\x07\\x70\\x19\\x8d\\x81\\x0c\\x8a\\xac\\xcb\\xdd\\x8b\\x32\\xec\\xbd\\x49\\xdc\\x1c\\xb8\\x2e\\x9e\\x30\\xc2\\x1b\\x38\\xc0\\x18\\xb3\\xca\\x58\\xe9\\x6e\\xc0\\x35\\x32\\x03\\x77\\x34\\x1d\\x6d\\xfe\\xdc\\x44\\x94\\xa3\\x13\\xa1\\xc2\\xb1\\x46\\x22\\xb6\\x27\\xa2\\x21\\x7c\\x5c\\x39\\x3e\\x18\\xed\\x46\\x98\\x08\\x40\\xce\\x1c\\xe3\\xe6\\x34\\x00\\xf8\\x67\\x14\\x84\\xd0\\x85\\xd9\\x98\\xaa\\xdd\\x71\\xd8\\x58\\x80\\x2b\\x16\\xe6\\x1d\\xfe\\x33\\xf3\\xe1\\xeb\\xeb\\x09\\xcd\\x55\\x03\\x3a\\x46\\x4e\\x7b\\xe1\\x80\\x0e\\x29\\xaf\\x6e\\x23\\x30\\x74\\x38\\xb0\\x67\\x8c\\x75\\xe9\\xb8\\x21\\xeb\\xbc\\xa8\\x58\\x35\\x7a\\xb7\\xbf\\xb6\\x1e\\xb3\\xa0\\x96\\xe8\\x0b\\x13\\xba\\x7e\\x8d\\xb9\\xd8\\xab\\xbe\\xaa\\xeb\\x19\\xda\\xee\\x06\\xb3\\x3e\\x09\\x3c\\x2a\\x88\\x8a\\x4a\\x73\\x5c\\x0c\\x87\\x17\\x03\\x0f\\x77\\xae\\x9c\\x4c\\xc1\\xa0\\xb6\\xf3\\x1e\\x52\\x88\\x37\\x4c\\xf4\\x0c\\x28\\x0b\\x06\\x05\\xbb\\x43\\x2b\\x5f\\xc4\\x09\\xc3\\xf8\\x58\\xb4\\x4a\\x48\\x85\\x6c\\x39\\xb5\\x3d\\xe4\\x5a\\xd4\\x3b\\x58\\xbb\\xa2\\x93\\xe8\\x5b\\x48\\x2f\\x70\\x50\\x80\\x4a\\x3b\\x65\\xf7\\xa3\\xda\\xff\\x70\\x64\\x19\\xbb\\x0b\\x2b\\xf5\\x6a\\x11\\xb9\\x95\\x71\\xd0\\xa5\\x33\\xff\\x57\\x70\\x0a\\x09\\xa5\\x44\\x14\\xe8\\xe5\\x0b\\x74\\x6e\\x15\\x60\\x5b\\x92\\x22\\xcb\\xab\\x4f\\xaf\\x68\\x59\\x49\\x1a\\x2a\\x71\\xd1\\xd3\\x3c\\x47\\x66\\x65\\x03\\x29\\xe7\\x0c\\xee\\x8c\\xec\\xe2\\x6e\\x8c\\x74\\x10\\xbe\\xf7\\xae\\x68\\x82\\xb3\\x8b\\x4e\\xc8\\x66\\x71\\xc0\\x30\\x44\\x33\\xdd\\xb1\\x72\\xab\\xe2\\x61\\xc1\\x85\\xe3\\xd8\\x42\\x12\\x43\\x7c\\x65\\x26\\x4d\\xf2\\x4b\\xb2\\x3b\\xdf\\x26\\xeb\\x8f\\x67\\xf7\\x4c\\x92\\xa6\\x5a\\x87\\xce\\xcc\\xcd\\x0f\\xec\\x56\\xdd\\x39\\x16\\x0c\\xde\\x3b\\x48\\xc6\\x6d\\x50\\xbb\\x84\\xa7\\xef\\x58\\xbe\\xa1\\xea\\x45\\xb5\\xb5\\xe8\\x59\\x6d\\xca\\x19\\x48\\x8b\\x0b\\x06\\xfa\\x36\\x0d\\x74\\xcc\\xf3\\x94\\xb1\\xf6\\xf0\\x30\\xee\\x82\\x35\\x26\\x62\\xe0\\xc8\\xd1\\xc8\\x27\\xaf\\x8a\\x05\\x68\\xed\\xb8\\xa9\\x50\\x68\\xab\\x64\\x4d\\xa1\\xc6\\x26\\x60\\xe5\\xa7\\x99\\xdc\\xb5\\xb6\\x46\\x0f\\xb7\\x25\\x80\\x96\\x9d\\xb3\\x4a\\x1a\\x2b\\x0a\\xe1\\xba\\xf8\\xf0\\x88\\x43\\x17\\x80\\xa9\\xe8\\x19\\x8d\\xe0\\x46\\x11\\xb3\\xb3\\x99\\x87\\xd6\\x31\\xba\\xf6\\xa7\\x79\\xfe\\xc9\\xc1\\x8c\\xb4\\xf1\\x47\\x45\\xce\\xb4\\xf4\\x79\\x33\\x60\\xb7\\x07\\x53\\x20\\x6b\\xfb\\xcc\\xc9\\x1b\\xda\\xff\\xc8\\xe2\\x95\\x7a\\x39\\xb3\\x62\\xfa\\x2b\\x42\\xac\\xc7\\x18\\x1e\\x1b\\x6c\\x1d\\xd7\\x11\\x26\\x51\\xac\\xe1\\x24\\x3e\\x59\\x8f\\x7d\\xca\\x27\\x0b\\x19\\x96\\x63\\xb4\\x50\\xef\\x3a\\xf4\\x4d\\x99\\xec\\x18\\xdc\\xb4\\xae\\x0b\\x59\\x16\\xfc\\x26\\x49\\x5d\\x74\\xd5\\xfa\\x24\\x04\\x66\\x1f\\x47\\x31\\x61\\x96\\xf5\\x0e\\xd8\\x15\\xf6\\x70\\x86\\xdc\\x4f\\x11\\x8b\\xe9\\x88\\x31\\xb3\\x44\\x06\\xc9\\x5e\\xd1\\x37\\x61\\xa1\\x81\\xc4\\xa2\\x0e\\x48\\x8a\\xc3\\xa4\\xec\\x02\\x05\\xd8\\x77\\xf6\\x23\\x59\\x85\\xde\\xcb\\xa0\\x87\\xec\\x53\\x1b\\x29\\x31\\x3a\\x6b\\x11\\xb1\\xb8\\xc3\\xbf\\x19\\x0e\\x32\\x32\\xc8\\x53\\x89\\x2e\\x44\\x06\\xca\\x40\\xf3\\x72\\xcb\\x4a\\xe5\\x9e\\x30\\xe4\\x5a\\x34\\xc2\\xe8\\xd8\\xb5\\x93\\x7b\\x4a\\x2c\\xf0\\xe0\\x9e\\x87\\x18\\x75\\x03\\x5e\\x08\\x04\\x26\\x89\\xd8\\xc5\\x44\\xa9\\xa5\\x75\\x10\\x81\\x33\\x54\\x47\\x48\\x1c\\xcf\\x70\\x18\\xc9\\x87\\x38\\x88\\xe2\\x01\\x79\\xd2\\x3e\\x19\\x69\\x56\\x9e\\xb9\\xfe\\x1d\\xe4\\x58\\x16\\x71\\x83\\xa7\\x0a\\x15\\x97\\xa6\\xb0\\x6f\\x9f\\x29\\xd5\\x2d\\x17\\xf3\\x5e\\x7a\\x5d\\x3b\\x2b\\x54\\x60\\x3f\\xab\\xc0\\x87\\x0c\\xc2\\x5b\\x5a\\x85\\x5a\\x71\\x96\\x14\\xb4\\xb0\\xae\\xc1\\xc9\\x5a\\x68\\x1f\\x25\\x19\\x91\\xd6\\x70\\x9d\\x1e\\x3e\\xcf\\x7b\\x27\\xcb\\x9e\\xc7\\x14\\xc5\\xd6\\x0e\\x0c\\xcc\\x8e\\x81\\x74\\x72\\xcc\\x65\\xbc\\xc2\\xe5\\x28\\x66\\x20\\x07\\xbc\\xec\\xac\\x1e\\x70\\x0b\\xeb\\xdb\\x92\\xed\\x7b\\xc6\\x9f\\xdd\\x34\\x39\\x8e\\x30\\x76\\x42\\xb6\\x0d\\x26\\x18\\x31\\x36\\x20\\x25\\x9f\\x7a\\xdf\\x8c\\x54\\xd8\\xd7\\x27\\x76\\x85\\x4f\\x60\\xd6\\xb8\\x8a\\xd1\\x4f\\x55\\xd2\\x9f\\x12\\x55\\xd3\\x41\\xb4\\xbe\\x45\\x6d\\x37\\x34\\xe0\\x0b\\x52\\x12\\x87\\xe3\\x85\\xa0\\x76\\x52\\xab\\x60\\xf8\\x54\\x4b\\x16\\xff\\x40\\x84\\xe4\\x00\\x55\\xd7\\xc7\\xcf\\xa1\\x6e\\x84\\xb9\\xc1\\xa6\\x76\\x31\\x9c\\x49\\x29\\xd3\\x78\\x83\\x2c\\x5e\\x96\\xc9\\x16\\x02\\x90\\xe8\\x5b\\xfb\\x7a\\x71\\x9e\\x8c\\xdf\\xa1\\x91\\xd3\\x07\\x9f\\x91\\xd0\\xe6\\x73\\xdd\\x72\\x83\\x52\\x4e\\x50\\x37\\x59\\xad\\xca\\x3a\\x29\\x45\\xb6\\xce\\x59\\x9d\\x54\\x59\\xca\\xea\\xe4\\x90\\x66\\x45\\xbd\\x4a\\xb3\\x7a\\x9d\\xf0\\xdb\\xa4\\xaa\\xd3\\x44\\x24\\xf0\\x2f\\xcf\\x2a\\x51\\xa7\\x4c\\x24\\x59\\x5e\\xd5\\x9b\\x6c\\xbb\\x4e\\xc0\\x06\\x43\\x3e\\x1e\\x4a\\x56\\x6f\\x8a\\x42\\xb0\\xb2\\x56\\xd6\\x07\\xf5\\xcd\\xb6\\x2c\\x0e\\xfb\\x7a\\x97\\x94\\x1f\\xeb\\x1d\\x93\\x1f\\x78\\x72\\x5b\\x17\\x07\\xb1\\x3f\\x88\\x7a\\x5f\\x16\\xdb\\x92\\x55\\x55\\x5d\\x31\\x98\\x8a\\xba\\x3a\\xec\\x76\\x49\\xf9\\x50\\x8b\\x6c\\xc7\\xea\\xdb\\x2c\\x65\\x85\\x4b\\xb6\\x82\\x5e\\x5d\\xfc\\xfa\\x37\\xc9\\x78\\x2d\\xd3\\x09\\xc4\\x46\\x94\\xa4\\xba\\x5e\\xa6\\x13\\xec\\x5e\\x6d\\xc9\\xae\\x33\\x4d\\xfe\\x06\\xa2\\x1a\\xde\\x88\\x89\\x8b\\xa3\\xe5\\xb2\\xba\\xba\\x8e\\x75\\x34\\xb9\\x07\\x29\\x5b\\x2e\\xab\\xc9\\x15\\xb9\\x15\\xf4\\xea\\x1b\\x14\\x3a\\x2a\\xe0\\x5a\\x59\\xaf\\x8b\\xbc\\x66\\xbb\\x15\\x4b\\xeb\\x9b\\xb2\\xce\\x76\\xdb\\x5a\\x85\\x66\\xcb\\x33\\x0e\\xfd\\x4d\\xea\\x7d\\x52\\x26\\x3b\\x8c\\x50\\xb4\\xbc\\x0b\\xe2\\x09\\x8e\\x3e\\x5c\\xc7\\x97\\x78\\x79\\x75\\x7d\\xb5\\xcd\\xc8\\x0a\\x2a\\xd3\\x5f\\xae\\xc8\\xbd\\x7c\\x15\\xab\\x22\\x7d\\xb8\\xca\\xc8\\x9d\\x7c\\xa9\\xbd\\x3f\\x85\\xcb\\xbb\\xc9\\xe2\\x8a\\xbc\\x57\\xed\\x06\\xd5\\xba\\xcc\\xf6\\xa2\\x56\\x37\\xf3\\xcb\\x56\\xf0\\x55\\x46\\xde\\x68\\xf1\\xd8\\x1c\\x67\\xd7\\x70\\xc0\\x0d\\x81\\xe0\\x9e\\x09\\x7a\\xa5\\xad\\x5d\\x96\\xd5\\x25\\x0a\\x83\\xe8\\x03\\x8d\\x6b\\xba\\xac\\x2e\\x8d\\x11\\x8c\\x2f\\x6b\\xf8\\x28\\x6b\\x78\\x54\\x2f\\xaf\\x50\\x18\\xfc\\x9a\\xdc\\x26\\x35\\x5b\\xef\\x12\\xac\\x1a\\xbb\\xca\\xc8\\x0b\\xf9\\x59\\x94\\x07\\xb6\\xbc\\x42\\xfe\\x25\\xbe\\x22\\xef\\xd4\\x84\\x5c\\x7e\\xe3\\xa0\\x30\\x58\\x46\\xcf\\x9e\\x3f\\x7d\\xff\\x74\\x19\\xd5\\xd3\\x29\\xae\\x65\\x42\\xbc\\x8c\\xe5\\xf3\\xf5\\xb2\\xba\\x7c\\x74\\xb5\\x25\\x4f\\x05\\x3d\\x2a\\x43\\x9b\\x20\\x9a\\x13\\xe3\\xc6\\x7e\\x61\\x5c\\xc9\\xe9\\x17\\xe6\\xe9\\x8b\\x6b\\x97\\xb8\\x9d\\x03\\x7b\\x4c\\x72\\xb6\\x65\\x3c\\x55\\xa5\\x36\\x19\\xcb\\xd3\\x8a\\x09\\x95\\xa7\\x7b\\x8b\\x89\\x5c\\x0c\\x95\\x67\\x97\\xec\\xd5\\x67\\x78\\x88\\x09\\xcc\\xbe\\xfa\\xa4\\xa2\\x41\\xa9\\xaf\\xe6\\x59\\x0a\\xcd\\x2c\\xd1\\xf5\\x8b\\x64\\x95\\x33\\xf5\\x5d\\x3f\\xc6\\x44\\x94\\x41\\xf4\\xb8\\xfd\\xa6\\x16\\x47\\x67\\x81\\x47\\x2b\\xeb\\xba\\xc8\\x47\\xf2\\xb6\\x19\\xd7\\x45\\x0e\\xa0\\xac\\x4a\\xb7\\x6f\\x76\\x5b\\x69\\x10\\x3d\\x39\\x29\\x2f\\x4a\\xdd\\x5e\\x79\\x3d\\xd2\\xa8\\xb9\\x43\\x33\\xe8\\x62\\x62\\xdf\\x88\\x5d\\xfe\\x8e\\x95\\x59\\x92\\x67\\xbf\\xb3\\x30\\x9a\\x11\\xd7\\x25\\xae\\x1b\\xc3\\x18\\x7f\\xfe\\x46\\x45\\x9b\\x71\\x75\\xd8\\x99\\xb8\\x21\\xbf\\x0a\\x9a\\x0a\\x49\\x2b\\x9e\\x0b\\xfa\\xab\\xe8\\x05\\x2d\\x2a\\x46\\xc3\\xc0\\xe1\\xc5\\x53\\xe1\\x17\\x7b\\x01\\xfd\\xa7\\xea\\x39\\x2b\\x38\\x79\\x2a\\x7c\\xe8\\x9e\\x4c\\x12\\x72\\x13\\xcb\\x07\\x33\\x4e\\x78\\x56\\xfb\\x1c\\xbe\\xcb\\x59\\x87\\x12\\x37\\xf0\\x9a\\xf6\\x63\\x56\\x9f\\x18\\xee\\xb4\\xa8\\x30\\x59\\xaf\\x59\\xa5\\xc5\\xfc\\x73\\xa8\\x3d\\x54\\xea\\x27\\xd4\\x89\\x57\\xda\\xa8\\x09\\xeb\\xd1\\x21\\x74\\x22\\x73\\x9d\\xdc\\xef\\xaa\\x87\\xfe\\x9e\\xdd\\x03\\xcb\\x07\\x52\\x88\\xb2\\xce\\x64\\x64\\x18\\x5c\\x17\\x37\\xe4\\xae\\x4c\\xf6\\x43\\xb6\\x17\\x34\\x13\\x16\\xb9\\x63\\xd8\\x8e\\x4d\\x3d\\x88\\xa3\\x2b\\x99\\x30\\xd5\\x63\\x5f\\xd7\\x85\\x98\\x75\\x49\\xa3\\xc0\\x58\\x93\\x3a\\xad\\x09\\xd0\\xf8\\xde\\x28\\x0c\\x4e\\xc6\\x80\\x7d\\xf6\\x1b\\x9a\\x61\\x7f\\x9d\\x17\\x9c\\x21\\x67\\x86\\x17\\xa7\\xe2\\xa5\\xe7\\x89\\x7e\\xd4\\x21\\x53\\x39\\x11\\xc0\\xf3\\x59\\x5a\\x97\\xee\\x26\\x16\\x23\\x53\\xf5\\x22\\xf6\\xcc\\x87\\x91\\x78\\x5a\\x7a\\x3c\\x30\\x6c\\xeb\\xec\\x71\\xcc\\x5a\\xa8\\x50\\xc1\\xd6\\xc4\\xa8\\xc9\\x7c\\xc5\\xf9\\xb8\\xea\\x65\\x30\\xa5\\xe1\\x1f\\xcf\\x25\\x54\\x75\\x3a\\x9b\\xc1\\x68\\x34\\x63\\x33\\xad\\x4a\\x2b\\xc5\\xa9\\x30\\xbc\\x75\\x85\\xf0\\xc2\\xa8\\xa8\\x42\\xde\\x2d\\x12\\x0e\\xcc\\xa6\\x41\\x0c\\xbc\\x4b\\xe4\\x97\\x11\\x39\\x72\\xd0\\xef\\xc5\\x79\\x50\\xe0\\xa7\\xa0\\x20\\x42\\xbb\\xfb\\x1c\\x07\\xaa\\xa9\\x03\\xef\\x37\\x36\\xd0\\x4f\\xc1\\x42\\x23\\x3c\\x12\\xb1\\x79\\x70\\x7d\\x86\\xdc\\xb6\\x70\\x5d\\x89\\x6e\\x56\\xeb\\xc9\\x7f\\xca\\xc4\\x8d\\xbe\\xc2\\xcc\\x92\\x1d\\xb0\\x2f\\xc7\\x2a\\x65\\x7d\\x18\\xf5\\xb9\\xd6\\xd3\\x62\\xf7\\x3a\\xe1\\xd9\\xbe\\xbb\\xbe\\x96\\x38\\xb3\\xde\\x9e\\x55\\xb6\\x1f\\x26\\xba\\xbf\\xe2\\x6b\\xe7\\x23\\x69\\x5f\\x0f\\x93\\xb0\\xbe\\x8c\\xcc\\xc6\\x55\\x6a\\x42\\xf6\\x25\\xfb\\xff\\xb8\\x4f\\x83\\x28\\x5e\\x9d\\x02\\x47\\x8b\\x7c\\xd8\\xdc\\x88\\xf6\\xaf\\xf4\\x71\\x7e\\x7a\\x07\\x47\\x6f\\x17\\xf7\\x13\\xc6\\xfa\\x00\\x0d\\x27\\x1b\\x71\\xf6\\xc6\\xb7\\xff\\x97\\xda\\xed\\x89\\x11\\xb2\\x0f\\x2a\\x7c\\xd8\\x39\\x45\\xa4\\xb6\\x9a\\x52\\xe7\\xaa\\xad\\xee\\x10\\x83\\x2e\\x11\\x39\\xac\\xae\\x2d\\xe5\\x67\\xc4\\x2d\\x0f\\x7a\\x70\\xc5\\x53\\x62\\x12\\xb7\\x96\\x69\\xe5\\xaf\\x73\\x96\\x70\\xb8\\x18\\xfa\\xad\\x40\\x1c\\x63\\xc2\\x7b\\x43\\x40\\xc2\\xf3\\x2c\\xf5\\xf1\\x40\\x37\\x49\\x38\\xf6\\xbc\\xd7\\x02\\x8a\\x12\\x57\\x71\\x43\\xee\\xa0\\x8e\\x5e\\x40\\x34\\x8e\\x71\\x3f\\x68\\xfd\\xd0\\xdc\\xb7\\x8b\\xf9\\xda\\x1f\\xab\\xc2\\xad\\x91\\x88\\x31\\x28\\xb5\\x8f\\x43\\x89\\x6b\\x30\\x10\\xa5\\xa1\\x1e\\x41\\xc5\\xb8\\xdf\\x9f\\xde\\xa7\\x05\\xd3\\xa4\\xba\\xea\\x5d\\xa3\\xcd\\x88\\xab\\xf8\\x2d\\x57\\xdd\\xe0\\xa4\\xf3\\x98\\x00\\x72\\xb3\\x01\\x72\\x06\\x82\\x32\\x1e\\x1e\\x9e\\x51\\xa3\\xda\\x73\\xe6\\x81\\x1c\\xa3\\x7a\\xfd\\x7f\\x48\\x7b\\xff\\xee\\xb6\\x6d\\x64\\x6f\\xfc\\xff\\xef\\xab\\xb0\\x70\\x73\\x79\\x89\\x08\\x96\\xa5\\xb4\\xf7\\x7b\\xee\\x43\\x2d\\xc2\\xd3\\xba\\x3f\\x77\\x1b\\x27\\x6d\\xdc\\x6d\\xba\\x0c\\xb7\\x87\\x96\\x20\\x9b\\x0d\\x05\\xa8\\x24\\x18\\xdb\\x15\\xf5\\xde\\x9f\\x83\\x19\\x00\\x04\\x29\\x39\\x7b\\xf7\\x3c\\x7f\\x58\\x26\\x41\\x10\\x04\\x06\\xbf\\x66\\x06\\x33\\x9f\\xd1\\xa9\\x48\\x6c\\x30\\xac\\xd1\\xae\\xe2\\x97\\x74\\xdc\\xa5\\xac\\x0e\\x5d\\xc3\\x40\\x31\\x6c\\xcc\\xbf\\xc7\\x03\\x58\\x5f\\x70\\xdc\\xc3\\x20\\xc2\\xfc\\x91\\x6a\\xfb\\x08\\xcf\\x63\\x88\\x58\\x95\\xca\\x1e\\x6d\\xc8\\x1f\\x16\\xde\\x6a\\x46\\x08\\x4d\\x20\\xaa\\xf1\\xe4\\xc4\\x71\\x4e\\xd7\\x5d\\x07\\xaa\\x90\\xc9\\x13\\x8c\\x58\\x14\\x6d\\x4f\\xe7\\xaa\\x44\\xb1\\x2e\\xe5\\xed\\x2f\\x77\\xa5\\xc6\\x78\\x0a\\x51\\xf4\\x18\\xe4\\xfc\\x42\\x67\\xf1\\x8d\\x76\\x70\\xb4\\x5d\\x97\\x21\\x37\\x47\\x8f\\xfc\\x73\\x73\\x4a\\xf7\\xa1\\xdb\\xc4\\x47\\xcd\\xc8\\x5f\\x9e\\x2d\\x5e\\xfe\\xe5\\xe2\\xd9\\x8b\\x97\\x16\\xbc\\x77\\xa0\\x9b\\xf7\\xd3\\x0b\\x48\\x35\\x86\\xee\\x8a\\xc7\\x53\\x07\\x46\\x1c\\x0b\\x08\\xc4\\x05\\x5d\\x4a\\x3e\\xb7\\x30\\x17\\x8a\\xee\\x0f\\x07\\x69\\xd7\\x84\\x11\\xbb\\x25\\x3e\\xc9\\x3a\\x05\\x9b\\xcd\\xbf\\xb1\\x6d\\xf6\\x47\\x12\\x3c\\xe8\\x89\\x58\\x70\\x38\\x3f\\x93\\xca\\xb2\\x7f\\x36\\x46\\xa1\\x57\\x12\\xf9\\x55\\x2e\\x13\\xf9\\x78\\xed\\xb7\\x60\\x99\\xa3\\x55\\xcb\\x61\\xf4\\x07\\x5a\\x60\\x69\\xc8\\xe3\\xb7\\x4a\\x88\\x1c\\x81\\x94\\x19\\x2e\\x7f\\xe0\\xc1\\xcf\\xb0\\x02\\x4f\\x2a\\xc4\\xed\\xfb\\x18\\xf6\\x87\\xb9\\xea\\x1d\\x29\\x8c\\x04\\xdf\\xd8\\x93\\xe5\\x2c\\x67\\xf6\\x80\\x74\\x10\\xf2\\x80\\xcf\\xd9\\x6e\\x70\\x88\\xb3\\xc6\\xd3\\xc5\\x3b\\xbe\\x3b\\x5f\\xb0\\x5b\\x70\\x3d\\x66\\xdb\\x21\\x39\\x6f\\x81\\xa3\\xdc\\x76\\xdd\\x24\\x5e\\xbc\\xe4\\xbb\\x13\\xa7\\x3c\\xb7\\x66\\x09\\xed\\x23\\x65\\x89\\xd5\\x87\\x4b\\x33\\x53\\x69\\x14\\x5d\\xda\\x31\\x7a\\xfb\\x29\\xa6\\xd6\\xbb\\x88\\xae\\x0d\\x37\\x5a\\xd2\\xe5\\xd6\\x79\\x42\\xdf\\x06\\xec\\x4c\\xc9\\x64\\xaa\\x60\\xb6\\xc4\\x34\\xd1\\x94\\x32\\xd5\\x77\\x93\\x8d\\x7a\\x01\\x15\\xdd\\x81\\x09\\xce\\xcd\\xec\\xa6\\x2d\\xab\\xb5\\x57\\x64\\x3c\\xc1\\xff\\x9a\\xcd\\x0b\\x79\\xb8\\x92\\x57\\xa1\\xae\\x16\\xc3\\x88\\xf7\\x0c\\x8d\\x3f\\xca\\x8f\\x2b\\x5e\\x52\\x56\\xda\\xa0\\xe1\\x92\\xcb\\xc1\\x2a\\x59\\x32\\xa2\\x6b\\x42\\x59\\x63\\xf5\\xa1\\xaf\\x75\\x5c\\xf5\\x5b\\x02\\xfb\\x0e\\x9c\\xdc\\xfc\\x32\\xb3\\x7b\\xb9\\x5a\\xae\\xa6\\x53\\xaa\\x78\\xc5\\x56\\x13\\xce\\xef\\x00\\xc7\\xd9\\xad\\x73\\xca\\x8c\\xbc\\xc9\\x9c\\xb2\\xc2\\x7c\\x02\\x55\\xb4\\x0d\\x7b\\xad\\x63\\x15\\x6c\\x32\\x94\\xd5\\x48\\xa3\\x61\\x3d\\xa0\\xb1\\xab\\x9c\\x11\\x10\\x01\\x09\\x4d\\x7f\\xd0\\x41\\x1a\\x32\\x72\\x89\\x4b\\x50\\xd6\\xf0\\xa7\\x80\\x08\\xeb\\x2d\\x6f\\x32\\x57\\xc3\\xf3\\xc5\\x98\\x5e\\xd8\\xac\\x86\\xfd\\xa1\\xa9\\x19\\x4d\\xcb\\xc2\\x37\\x01\\x8a\\xfa\\x60\\xfb\\x5b\\x39\\x4f\\x0b\\x12\\x46\\xd3\\x52\\x8c\\xdc\\x56\\xea\\xa6\\xa8\\xbe\\xfe\\x58\\x54\\xe6\\x49\\xb0\\xa7\\xb6\\x80\\x4b\\x1d\\xab\\x59\\x53\\xaf\\xd2\\x9b\\x59\\xf1\\x7b\\xf1\\x10\\xef\\xdb\\xba\\x4a\\x20\\x05\\x4d\\xb6\\xc9\\xb7\\x5f\\x5f\\x13\\x66\\x8a\\xc2\\xf8\\xb1\\x96\\x0a\\xac\\x68\\x1e\\xe5\\x2a\\x99\\x2c\\x18\\x96\\x6e\\xae\\x08\\x40\\xbc\\x34\\x04\\xac\\xec\\x93\\x9b\\x59\\xff\\xdd\\xd8\\x54\\x0e\\x1d\\xd4\\x86\\xce\\x6b\\xaa\\x5f\\xb4\\x86\\xc8\\x09\\x6f\\x61\\x69\\xa7\\x74\\x59\\xf1\\x12\\x11\\xcb\\xc3\\xad\\x2e\\xd4\\x65\\xfe\\xa0\\x87\\x3b\\xdd\\x69\\x74\\x44\\xb0\\x85\\xe9\\xba\\x21\\xf4\\xef\\x08\\x70\\x67\\xac\\x53\\xa3\\x81\\x26\\xef\\x3b\\x1d\\x9e\\x3b\\x1d\\x83\\x48\\xa2\\x93\\x49\\x10\\xd5\\xfc\\x71\\x27\\x78\\x0c\\x68\\x66\\x1e\\x25\\x87\\x4e\\xc9\\x05\\x99\\xda\\x38\\xa9\\x01\\xbe\\xfb\\x1f\\x41\\xd9\\x5f\\xbb\\x0d\\x05\\xcd\\x5e\\x7a\\x00\\x66\\x17\\x8b\\x31\\x5b\\xe4\\x89\\x38\\xc6\\x85\\xc6\\xef\\x87\\xa5\\xbe\\xd2\\x9f\\xe6\\xe0\\x84\\x67\\xdf\\xdc\\x50\\x91\\x83\\xa1\\xc2\\x26\\xda\\x2c\\x31\\x36\\xd6\\x59\\x56\\xe7\\xc3\\x81\\x14\\xd0\\xe6\\x37\\xed\\x01\\xa2\\x16\\x23\\x43\\xa6\\x9b\\xd9\\x5d\\xd1\\xc0\\x46\\x25\\xe8\\x20\\x22\\x0c\\x77\\x25\\x0b\\x33\\x3b\\xfb\\x90\\x6a\\xca\\xcc\\x63\\x85\\x61\\x66\\x1a\\x6b\\x19\\x67\\x41\\xf4\\x0b\\x1b\\xb6\\x88\\x15\\xf6\\x31\\xdf\\xf7\\x8e\\x23\\x67\\x0d\\x45\\x73\\x4c\\xc3\\x56\\x34\\x99\\xcc\\x3d\\x5b\\x61\\xf7\\xd4\\x61\\x00\\x39\\xc9\\x4c\\x1e\\x43\\x81\\x43\\x31\\x33\\x9f\\x06\\x0b\\x6c\\x73\\xd1\\x47\\x25\\xde\\x1f\\x18\\x26\\x51\\x1a\\xd8\\x9c\\x7f\\x33\\xf2\\x10\\x29\\x97\\x47\\xcd\\xa6\\x68\\x51\\xfa\\xa4\\xbb\\x7a\\xc0\\x62\\x48\\x05\\xab\\xb6\\x8d\\xea\\xab\\x83\\xf8\\xb3\\x74\\x5f\\xf6\\x64\\x41\\x7b\\x91\\x1a\\x9d\\x32\\xb0\\xf1\\x74\\x10\\x98\\x18\\xb4\\xd8\\x2e\\xae\\x13\\x5d\\x1e\\x03\\x87\\xfb\\x82\\xe9\\xc1\\x4d\\x61\\x0f\\xea\\x23\\x1e\\x34\\x9c\\xc1\\x9a\\x8b\\x34\\xfe\\xce\\x8c\\x7c\\xb4\\x12\\xc2\\x24\\xf6\\x07\\xcc\\x85\\xa4\\x8f\\x11\\xc5\\x65\\x1a\\xeb\\x11\\xb3\\x3e\\x53\\xad\\x76\\xdc\\x47\\x7f\\x1d\\x46\\x84\\x33\\xdb\\xc8\\x7f\\x43\\x73\\xa3\\x28\\xc0\\x8e\\x84\\xb5\\x4a\\xd7\\xe5\\x36\\xd6\\x7d\\x22\\x08\\x0d\\x21\\x43\\x13\\x3c\\xa2\\xc9\\x00\\x95\\xe8\\xca\\x43\\x50\\xc0\\x8c\\x31\\x35\\xb3\\x9a\\xb7\\x4b\\xd4\\xa2\\x72\\xed\\xf4\\xa9\\xdc\\xbb\\x17\\x32\\x8d\\x76\\x6f\\xd0\\x6e\\xb8\\x82\\x0f\\x7e\\xb4\\x51\\xac\\x11\\x2e\\xd3\\x34\\xd9\\xfb\\x20\\xca\\xd4\\x97\\xfb\\xd6\\xb9\\x0d\\xea\\xde\\x83\\x50\\x8c\\x1f\\x26\\x23\\x68\\x23\\x17\\x0a\\xc4\\x81\\x1b\\xf5\\xd5\\x74\\xa1\\xb3\\xc3\\x5b\\x7a\\xf0\\xc7\\xdf\\xb8\\x60\\x5d\\xab\\x84\\xe0\\x15\\x71\\xa2\\xb4\\x49\\xb2\\x97\\x84\\x85\\x1c\\x4e\\x62\\x43\\x32\\xba\\xd4\\x2f\\x40\\xb8\\x24\\x20\\x63\\x12\\xc7\\xd4\\x7d\\x51\\x55\\x09\\x09\\x18\\xbc\\x13\\x51\\x6c\\x47\\x07\\x8f\\x62\\x68\\x96\\x02\\x47\\x64\\x37\\x38\\x7f\\x95\\xdf\\xbb\\x70\\x91\\x29\\x5e\\x72\\xc7\\xc9\\xd6\\x60\\xd0\\x6e\\x56\\x6d\\xd4\\xea\\x78\\xad\\x17\\xbb\\x89\\x95\\x99\\x80\\x99\\xce\\x63\\x49\\xd9\\xda\\x32\\x51\\x25\\x93\\x68\\xd7\\xf0\\x94\\x55\\x03\\x1c\\x21\\xf6\\xcb\\xff\\x6b\\x1d\\x46\\xff\\x57\\xac\\xe0\\x73\\xd6\\x0c\\x60\\x80\\x4f\\x21\\xf0\\x96\\xe9\\x13\\xfb\\x84\\x04\\xff\\x06\\x9a\\xf8\\x02\\xc6\\x58\\xa1\\xf6\\xe5\\x23\\x08\\x51\\xff\\x22\\x08\\x23\\xb8\\x1a\\x35\\xe8\\xda\\x1e\\x1e\\xf0\\x76\\x9d\\x70\\x4b\\xb0\\xe2\\x75\\x56\\xe4\\x74\\x59\\x4c\\xa7\\x74\\x22\\x07\\x11\\x69\\x15\\x93\\x34\\x6d\\xbc\\x11\\xec\\x88\\x13\\x91\\xc1\\x39\\x0f\\x9e\\x41\\xca\\x91\\xd8\\x28\\x69\\xea\\x0f\\x98\\x45\\xce\\xc0\\x84\\xd7\\x53\\xec\\x4b\\xd8\\x6e\\x46\\xd3\\x06\\xe4\\xcb\\xd1\\xbc\\xf1\\xb3\\x85\\x1e\\xfa\\x45\\xf1\\x58\\xc8\\xec\\xa9\\xef\\xd9\\x5e\\x1e\\x30\\x19\\xa3\\x4d\\x96\\xa1\\xf5\\xec\\xa9\\x65\\xc1\\x90\\xc0\\xd9\\x22\\xa2\\x2c\\xe6\\x04\\x33\\xf2\\x17\\xb3\\x6f\\xba\\x06\\x4e\\xc9\\x4b\\x42\\x53\\x65\\xea\\x67\\x5e\\x83\\x0d\\x78\\x32\\xa7\\x49\\xfc\\xd5\\x70\\xc9\\xf0\\xab\\x10\\xfb\\x4a\\x0f\\x64\\x6f\\xc5\\xbf\\xd2\\xa1\\xf8\\x4d\\xd9\\x24\\x7e\\x6a\\x4d\\x3e\\x4a\\xbf\\x74\\x0e\\xca\\x43\\xc3\\x15\\x0f\\x3b\\x18\\xaa\\x38\\x82\\xd6\\x50\\xbb\\x3f\\xbd\\x06\\x8d\\x7e\\x63\\xfe\\xc3\\xd4\\x99\\xbb\\xe1\\x60\\xb6\\x2d\\x33\\x1c\\xa6\\xd3\\x82\\xd6\\xe0\\x5d\\xf7\\x0d\\xd8\\x3a\\x43\\x22\\x60\\x8f\\x02\\x1c\\x1c\\x8e\\xab\\xa6\\xeb\\xb0\\x00\\x08\\xfc\\x88\\x65\\x9e\\x28\\xcb\\x0c\\xad\\xdf\\xfa\\x52\\xc0\\xcd\\x04\\x76\\xeb\\x3e\\x0a\\x24\\xd6\\x28\\xe0\\x97\\xeb\\xc0\\x7a\\xfc\\x95\\x8e\\x6b\\x36\\x69\\xa3\\x08\\x66\\x59\\xa0\\x66\\xa9\\x79\\x63\\xf9\\x32\\xa6\\x0e\\x6c\\xc0\\xf6\\x3f\\x15\\xee\\x7f\\x18\\x05\\xae\\x77\\x48\\xd9\\xf0\\xb5\\xd9\\x5f\\x9c\\xc7\\x91\\x65\\x53\\x76\\x2f\\xef\\x96\\x77\\x68\\x43\\xa8\\xb8\\xc8\\xee\\x72\\xa6\\xd0\\xc9\\x1f\\xbc\\xd0\\x82\\xad\\xe8\\x06\\xc6\\x6f\\xac\\x28\\x75\\x23\\x7e\\xcd\\x54\\x60\\x38\\xa5\\xf2\\x44\\x51\\x1f\\x84\\xf2\\xde\\xf1\\xca\\x94\\xee\\x81\\x8a\\x9b\\x01\\x43\\x38\\x66\\x01\\xed\\xb1\\x0a\\x6b\\xb9\\x97\\xf4\\xd5\\xa7\\x24\\x7d\\xb6\\xe2\\x5f\\xe8\\xac\\xcd\\xbb\\xee\\x0b\\x3d\\x73\\x07\\x40\\xac\\x09\\x46\\xe5\\x2a\\x5b\\xe4\\x53\\xf5\\x94\\x2a\\x60\\xba\\xca\\x5e\\xe4\\xac\\xe4\\xab\\x6c\\x9e\\x07\\x6e\\x6a\\x8d\\x11\\x5f\\x1c\\x70\\x0c\\xac\\x2f\\xff\\x2b\\x25\\x85\\x61\\xee\\xd7\\x36\\x18\\xd2\\xf8\\xd0\\xe4\\xd1\\x37\\x27\\x9b\\xe7\\x74\\xc0\\x93\\x80\\xa8\\x42\\xf7\\x8a\\x5b\\x41\\x66\\xc2\\x79\\xdb\\x75\\x0f\\xbe\\xd0\\xd4\\x9f\\xc7\\x4d\\x38\\xb4\\x67\\xf0\\x70\\x9e\\x34\\x49\\xa8\\x57\\x65\\x25\\x57\\x51\\xa4\\x8e\\xc5\\xba\\xa0\\x7d\\xc1\\xda\\x55\\xf1\\x30\\x6b\\x56\\xf6\\xa2\\x53\\x14\\x4d\\x4e\\x0a\\x87\\x6a\\x30\\xb5\\x2b\\xfa\\xff\\x1d\\xfa\\x81\\x30\\x50\\x8f\\xb3\\x26\\x94\\x3d\\x38\\x21\\xce\\x2d\\x37\\x5c\\x0a\\x9a\\x41\\x69\\x83\\x47\\xcb\\x86\\x6f\\xfa\\x6e\\x40\\x9f\\xad\\xa7\\xc8\\xab\\x28\\x5d\\x36\\x51\\x34\\x8c\\xc9\\xd0\\x84\\xdc\\x90\\x1b\\x76\\x76\\x31\\xb1\\x66\\x06\\xaf\\x75\\xbc\\xf6\\x41\\xca\\xd9\\x97\\x9a\\xc2\\x8c\\xb0\\x36\\x28\\x7c\\x9d\\xdd\\x59\\x67\\x15\\xc0\\x41\\x3e\\x5f\\xc0\\xf8\\x77\\x36\\x08\\x8a\\xd5\\xe8\\x49\\x18\\xae\\xbe\\x6a\\xb4\\xfa\\xba\\xb5\\x67\\x38\\xee\\x15\\x0d\\x16\\x80\\x02\\xe6\\x7d\\x43\\xcd\\x3e\\xb3\\x2f\\x83\\xcf\\x37\\x08\\x25\\x7f\\x52\\xde\\xf4\\xc1\\x8c\\xbc\\x19\\x3d\\xae\\x0e\\x9b\\x03\\xf3\\xca\\xaa\\xd3\\xaa\\x65\\x5c\\x17\\xc0\\x7d\\xd2\\x33\\xa9\\xac\\x32\\x6d\\x28\\x56\\x77\\x82\\xed\\x78\\x4f\\x33\\x14\\x04\\xbe\\xb6\\x79\\x36\\x7c\\x14\\xd6\\xf7\\x48\\xc0\\x69\\x72\\x0a\\x6e\\x97\\x10\\xbe\\xca\\xd0\\xb8\\x58\\xad\\xc4\\x4e\\x83\\x3c\\x22\\x81\\x56\\x8a\\xcb\\xac\\xcd\\x0d\\x07\\x13\\x45\\x55\\xa6\\x72\\xe7\\x54\\x60\\x79\\x6c\\xcf\\x75\\xf7\\x29\\x59\\x9d\\xa7\\xa3\\xd8\\xa4\\xe0\\x8d\\x36\\x64\\xc7\\x4d\\xbb\\x0a\\xcf\\x8e\\x9b\\x92\\xfb\\xf8\\xec\\xe6\\x8e\\xed\\x52\\x7b\\x67\\xbe\\x9f\\x78\\x48\\xfb\\x11\\xdb\\x0e\\xcc\\xc6\\x51\\x6a\\xdc\\xd2\\xc4\\xbc\\x86\\x14\\x5e\\x39\\xca\\x43\\x84\\x61\\x50\\x3f\\xbd\\xd1\\xec\\x27\\xcd\\x7e\\xd1\\xec\\x99\\xe6\\x17\\x45\\xb5\\xbb\\x2b\\xde\\xc7\\xd9\\x3f\\x69\\xfe\\xfc\\x3d\\xbd\\x28\\xd9\\xf7\\x9a\\x5f\\xa8\\x5d\\xb1\\x2a\\xf5\\xe3\\xfb\\xe6\\x39\\x7f\\xdf\\x3c\\xc7\\x87\\xf4\\x82\\xfd\\x09\\xd6\\x0a\\x5a\\xed\\xba\\xba\\xbc\\xbd\\xd3\\xdd\\x8d\\xd2\\x5a\\x6d\\xbb\\x4a\\x6c\\x34\\x7d\\x76\\xc1\\xde\\xc1\\x63\\x69\\xb6\\x6a\\x58\\x01\\xe2\\x74\\x72\\xbe\\xca\\x44\\x91\\xd3\\xd9\\x94\\x5e\\xb0\\x9f\\xcd\\xe3\\x6d\\x51\\xdf\\x96\\xf2\\x82\\xfd\\xbd\\xb7\\xdd\\xf8\\x67\\x0c\\x11\\x55\\x68\\x3c\\x7b\\x4e\\x9f\\x59\\xb3\\x8d\\x5f\\x4f\\x3c\\x4e\\x27\\xbb\\x07\\x9a\\x15\\xe7\\x7f\\xfe\\x67\\x3e\\x75\\xf9\\xfe\\x1a\\xe6\\xcb\\xa6\\xe7\\x39\\xe5\\x36\\xbb\\xcd\\xf0\\xad\\xe6\\xfb\\x2f\\x5f\\x7f\\xf5\\x6b\\x42\\x6e\\x2a\\xb5\\xfa\\x40\\x0e\\xec\\x47\\xcd\\xf7\\x3b\\x8b\\x36\\x9d\\x90\\xe2\\xa6\\x51\\x55\\xab\\x05\\x61\\x1f\\xcb\\xa6\\xbc\\x29\\xab\\x52\\x3f\\x26\\x04\\x11\\xea\\x09\\x5b\\x97\\xcd\\xae\\x2a\\x1e\\xfb\\x97\\xff\\xa6\\xf9\\xbe\\x12\\x5a\\x8b\\xfa\\xad\\x21\\x91\\xbc\\x4d\\xe6\\x6c\\xa3\\xa4\\xfe\\x45\\x18\\x82\\x24\\x9f\\xcf\\xe7\\x07\\xf6\\x0f\\xcd\\x33\\x72\\xad\\x76\\x84\\x91\\x9f\\x4c\\x2a\\x61\\xe4\\x4b\\x20\\x14\\x61\\xe4\\x07\\xb1\\xd1\\x24\\x67\\x42\\xf2\\x8c\\xfc\\x02\\xc0\\xef\\x84\\x91\\xd7\\x84\\x91\\x57\\xea\\x4f\\xc2\\xc8\\xb6\\x21\\x79\\xcf\\xbb\\xea\\x00\\x59\\x1c\\x03\\xed\\x3a\\x96\\x77\\xe9\\xd0\\x53\\x57\\x77\\x45\\xfd\\x85\\x8e\\xe7\\x74\\xa6\\xd5\\xcf\\xbb\\x9d\\xdb\\x68\\xa6\\xda\\xe3\\xcc\\xb0\\x9a\\x6b\\x56\\x72\\x21\\x4f\\xba\\x37\\x6b\\x2e\\x64\\x56\\xe6\\x53\\xc9\\xc6\\x5f\\x38\\x76\\x75\\x97\\xe3\\x33\\x03\\xdd\\x75\\x82\\x11\\xd3\\xdf\\xb8\\xd3\\xae\\x9a\\x06\\x11\\xe6\\x81\\x68\\x04\\xb5\\xe5\\x9f\\x60\\xf4\\x82\\xb0\\x7b\\xc7\\x31\\x61\\xd1\\x92\\x7d\\x1e\\x62\\x35\\xc1\\xfc\\x6d\\x5e\\x16\\xc0\\xb7\\xd4\\x1c\\xe2\\x55\\xd7\\x33\\x30\\xa8\\x01\\xaf\\xd9\\x22\\xf7\\x22\\x71\\xcd\\x88\\xaa\\xd6\\xbe\\x26\\x0c\\xa0\\x07\\x4c\\xc6\\x99\\x4d\\x63\\x3a\\x85\\x37\\xba\\x0e\\x1b\\x80\\x31\\xd6\\xe3\\x51\\x2e\\x4e\\x08\\x65\\xc4\\xb4\\x6e\\xf4\\x20\\x8a\\xa4\\x8c\\x6b\\xfa\\xe9\\xcf\\xb2\\x56\\xc6\\x75\\x0f\\x9e\\x42\\x29\\x4d\\xf0\\x93\\x71\\xc9\\xe1\\x75\\x16\\xcb\\x28\\x0a\\xbf\\x3f\\x29\\x41\\x03\\x77\\xb2\\xb0\\x32\\x95\\x09\\xd2\\xb8\\x0e\\x68\\x4c\\x1d\\x22\\x03\\x9f\\x3f\\x4d\\x1a\\x1d\\x7c\\xe5\\xa8\\x21\\xe4\\x44\\xea\\x09\\x4a\\xe8\\xd4\\x92\\x8b\\x24\\x58\\x16\\x1d\\xd8\\x62\\x07\\x36\\x20\\xab\\xa6\\x19\\x85\\x0b\\xfe\\x17\\x07\\x40\\x23\\x2e\\x90\\xef\\x0f\\x66\\xc1\\x5f\\x5a\\x2b\\x0c\\xdc\\xbd\\xa4\\xd5\\xee\\x2a\\xfe\\x13\\x30\\xb6\\x65\\xef\\x75\\x52\\x5a\\xef\\xf9\\x22\\x93\\x59\\x93\\xe7\\x7e\\x20\\x9a\\x3b\\x36\\x59\\x04\\xcc\\x6c\\xe1\\x76\\x9f\\x7a\\x82\\xd6\\x26\\xd0\\x44\\xe7\\x30\\xec\\xdf\\xa3\\x07\\x88\\xd9\\x3c\\x3e\\xf1\\x78\\xb9\\xa0\\x07\\xd6\\xdc\\xa9\\xfb\\x13\\x07\\xb1\\xb5\\xc4\\x46\\xc1\\x59\\xc0\\x5d\\xb9\\x3e\\x75\\x48\\x6c\\xf3\\xd0\\x03\\xd3\\xea\\xf6\\xf6\\x44\\xf4\\x7f\\xcd\\x7d\\xf4\\xae\\xfe\\x68\\xe4\\x13\\xe6\\x06\\x74\\x1f\\xeb\\x54\\x24\\xd2\\x96\\x4b\\x53\\x77\\xb4\\x61\\x2a\\x19\\xd3\\xc4\\xdd\\x9a\\xfa\\xc4\\xf4\\x30\\xb2\\xad\\x5d\\x35\\xcd\\x77\\x4a\\x7d\\x68\\x92\\xbd\\x5d\\xed\\x93\\xfd\\x00\\xd9\\xaa\\x0f\\x6a\\x60\\xcf\\xe7\\x7e\\x01\\x26\\xdf\\x66\\xee\\x03\\x8e\\xa1\\xf6\\x83\\x2c\\x48\\x22\\x0f\\x87\\xc3\\x81\\xad\\x9a\\xe6\\xaa\\xdd\\xde\\x88\\x3a\\xd9\\xaf\\x54\\xd5\\x6e\\xe5\\xa5\\x6a\\xa5\\xb6\\x38\\x2d\\xd5\\x6b\\xfb\\xad\\xc9\\x60\\xdd\\x9c\\xcc\\x59\\x55\\x4a\\xf1\\x9d\\xbf\\x53\\x7d\\x36\\x55\\xef\\xee\\x0a\\x09\\xbe\\x5d\\xf7\\xe5\\x5a\\xdd\\xc3\\xd5\\x9f\\x80\\xd1\\x04\\x57\\x4a\\x6d\\x01\\xc3\\x77\\xd5\\x34\\x6f\\x6a\\xb5\\x6b\\x92\\x3d\\xd9\\x54\\xaa\\xd0\\x24\\xb0\\xac\\x5a\\x35\\xcd\\x37\\x26\\x2d\\x25\\xee\\x8a\\x24\\x04\\x3a\\x1f\\x6f\\x0e\\x0c\\x6e\\x8e\\xe2\\xed\\x03\\x01\\x44\\x14\\x7d\\x36\\x92\\xe5\\xfe\\x67\\x74\\x2f\\x70\\x24\\xf5\\xee\\xa0\\x56\\xc8\\x2d\\xb6\\xa2\\x82\\x15\\x59\\x52\\x56\\x71\\x9b\\x0b\\xec\\x37\\x71\\x94\\x42\\x85\\x41\\x20\\x88\\x07\\xf7\\x5c\\xcb\\xb8\\x62\\x2d\\xc5\\x53\\x0b\\xd7\\x53\\x99\\xcc\\xe1\\x60\\xdc\\xdd\\xb6\\x39\\x84\\x4a\\xf7\\x47\\xa2\\x4d\\x14\\x91\\x5b\\xa1\\x49\\x09\\x97\\x86\\x23\\x03\\x55\\x89\\x30\\x93\\xa0\\xa4\\x14\\xc6\\xbc\\x4a\\xaa\\x4c\\x82\\xeb\\x6d\\xe1\\x2d\\xbd\\x59\\x7f\\x20\\xc7\\x0b\\x78\\xf1\\xaf\\x96\\xfd\\x47\\x8e\\xb1\\xe6\\xb1\\x32\\x72\\xc9\\x82\\x3e\\x57\\xd9\\x8b\\x7c\\xba\\x2b\\xea\\x06\\x09\\x17\\xf7\\x73\\x06\\x80\\x43\\x25\\x74\\x3c\\x40\\xfa\\xe3\\x09\\x72\\x6d\\xd6\\x57\\x4c\\xc4\\xc2\\xcb\\xe6\\xaa\\xb8\\x8a\\x6b\\xda\\x75\\xb1\\x7b\\x30\\xe1\\xbc\\xb0\\xed\\xc2\\x81\\x83\\x04\\xa9\\xa7\\x9c\\xec\\x1e\\x48\\xc8\\x14\\x1b\\x56\\xb1\\x06\\x29\\xfb\\x2d\\x58\\x51\\x76\\xb8\\x76\\x75\\xdd\\x7c\\x12\\xc2\\xbb\\x91\\x9b\\x62\\xf5\\xe1\\xb6\\x56\\xad\\x5c\\x9b\\x4d\\x28\\x36\\x2d\\xe6\\xa4\\x94\\x77\\xa2\\x2e\\x0d\\x07\\x6b\\xe8\\xd4\\xf4\\x74\\xaa\\x79\\x33\\x6b\\x80\\x4e\\x60\\xe4\\x8e\\x38\\x90\\x10\\x62\\xa0\\xc2\\x50\\xac\\x78\\x4e\\xba\\xa2\\x7b\\x3b\\xbc\\x4f\\x0c\\x93\\xa7\\xfb\\xbd\\x57\\xc5\\xfc\\xcb\\x1e\\xb7\\xe3\\xe3\\x7f\\xd3\\xef\\xa3\\xae\\x2e\\xfa\\xae\\x9e\\x83\\xd7\\x7f\\x81\\x40\\x5b\\x71\\x81\\xb3\\x56\\x82\\xf5\\x3e\\x91\\xaa\\xde\\x16\\x95\\xed\\x09\\x50\\x8b\\xff\\x0d\\x33\\xfd\\x0d\\x9d\\xab\\x71\\xa7\\xeb\\xba\\x3a\\x8d\\x15\\x0f\\x7a\\xb9\\xb0\\x31\\xf9\\xe7\\xa8\\xb4\\xb8\\x6a\\xb7\\xa2\\x2e\\x8d\\x70\\x98\\x1a\\xa9\\x3b\\x29\\x68\\x52\\x1c\\x58\\x73\\x3f\\xb0\\x9e\\x3a\\x12\\xee\\x9d\\x3a\\x5e\\x99\\xef\\x6a\\x5a\\x64\\x2a\\x77\\x33\\xc2\\x70\\xbc\\xfd\\x25\\xd7\\x99\\xca\\x97\\x66\\x81\\x47\\x95\\x9f\\x60\\x75\\xd7\\x65\\x39\\x0d\\xdf\\x0e\\x72\\x9b\\x82\\x7a\\x3b\\xf9\\x03\\xc5\\xc0\\x83\\x97\\x6a\\xbb\\x6b\\xb5\\x58\\xc3\\x40\\x49\\xe3\\x9f\\x02\\x08\\xf6\\xd1\\x61\\xd0\\x20\\xa7\\x05\\x72\\xa4\\x07\\xf6\\xcb\\x20\\x2a\\xf2\\x58\\x4f\\x61\\xa8\\x84\\x1b\\x51\\xcb\\x9b\\x14\\x88\\xef\\x30\\x36\\x41\\x41\\x1b\\x4b\\xda\\x75\\xa6\\xe3\\x12\\x1d\\x4c\\xfc\\x7e\\x9e\\xc6\\xc4\\xca\\xcd\\x9f\\x64\\x90\\xba\\x2e\\x36\\xc3\\xc9\\xef\\x52\\xd4\\x30\\xc6\\x28\\x5d\\xb5\\x34\\x8a\\x7e\\xd6\\x01\\xb8\\x75\\xc9\\xab\\xd9\\x7d\\xb9\\x06\\x27\\xc0\\x6a\\xb6\\x2d\\xe5\\x2f\\x70\\x53\\x98\\x9b\\xe2\\x01\\x6f\\xfa\\xf4\\x20\\xd5\\xbd\\xc7\\x5b\\xd3\\x16\\x5b\\x86\\x4b\\x2b\\xc3\\x77\\x14\\x0b\\xde\\x2a\\x28\\x65\\xed\\x81\\x26\\xea\\x38\\x5e\\x73\\x5b\\xd7\\x42\\xea\\xb7\\x96\\xf9\\xf8\\x69\\x88\\x7e\\xef\\x49\\x1f\\x66\\xfb\\x37\\xc9\\xfd\\x04\\x5d\\x71\\xc9\\x69\\xa3\\xa8\\x32\\xd2\\x9a\\x34\\x32\\x55\\xcb\\x2b\\x18\\xd9\\x21\\xd9\\x26\\x7f\\x8e\\xe9\\x66\\x04\\x18\\x00\\x41\\xa9\\x5b\\xa9\\xcb\\x2d\\xae\\x2e\\x28\\xf5\\x29\\x7c\\x08\\xcb\\x22\\x5c\\xf2\\x61\\xcd\\x21\\x8d\\x32\\x2c\\x83\\x13\\xb3\\xa7\\xbd\\x2d\\xff\\x14\\x6e\\x53\\x14\\x5b\\x92\\xb4\\x10\\x4a\\x76\\x57\\x3e\\x88\\xca\\xb0\\xff\\x53\\xb3\\xaa\\xb9\\x17\\xca\\xb0\\x64\\x43\\x52\\x98\\x82\\x6d\\x4a\\x8a\\x56\\x2b\\x92\\xb4\\xa1\\x2a\\x7b\\x8c\\xa0\\xf6\\x77\\xbb\\x48\\xeb\\x20\\xfc\\x1e\\x40\\x60\\x6c\\x8b\\x87\\x78\\xce\\xea\\x6c\\x91\\x9f\\xc7\\xb2\\xeb\\xe6\\x94\\x4e\\xe3\\x3a\\x7b\\x61\\x98\\x37\\xb3\\xa0\\x26\\x3a\\x88\\x1d\\x7d\\x02\\x15\\x5a\\x72\\xce\\xe3\\x3a\\x25\\x37\\xaa\\x5e\\x8b\\x9a\\x24\\xc4\\xda\\x51\\x12\\x9a\\x7e\\x9e\\x10\\x18\\x17\\x08\\x46\\xbd\\x48\\xe6\\xa0\\x55\\x04\\xbe\\xfc\\xf3\\x97\\x6a\\xa9\\xa6\\xfc\\x05\\x25\\x28\\xe2\\xd9\\xe3\\x97\\xb8\\x98\\xf6\\x0c\\xd9\\xf4\\x1f\\x66\\x6a\\x9b\\x35\\xca\\x2c\\x47\\x75\\x1a\\xfb\\xa2\\x5d\\xe6\\xf3\\x5e\\x8c\\xd8\\x15\\xeb\\xb5\\xd9\\x94\\x86\\x2f\\xb9\\xd2\\x27\\xc7\\x2f\\xd8\\xfa\\x62\\xfe\\x29\\x81\\x61\\x4a\\xec\\x7b\\x34\\x09\\x2b\\x72\\xb2\\xec\\x3e\\x75\\x72\\x54\\xf3\\x4f\\x97\\x7d\\x02\\x84\\xa9\\x19\\xf5\\x95\\xc9\\xc9\\x43\\xda\\x89\\x99\\xda\\x6c\\x1a\\xa1\\xa1\\xa4\\xc4\\xdd\\x21\\x03\\xc4\\x1c\\x93\\x5b\\x04\\xca\\x8d\\x1b\\xf5\\xf0\\xb6\\xfc\\xb3\\x94\\xb7\\x51\\x64\\x6b\\x73\\x7e\\xa3\\x1e\\x06\\x82\\x97\\xcf\\x42\\x2c\\xdb\\x5b\\x6e\\xe2\\xf9\\x4b\\x5e\\x76\\x9d\\x45\\x3d\\xb7\\x31\\xb2\\x7f\\x41\\xf7\\x1e\\x45\\x59\\x3c\\x7f\\x19\\x3c\\x85\\xd9\\xe0\\x56\\x56\\x1d\\xcc\\x9a\\xd2\\x9b\\x8a\\x94\\xcb\\x1a\\x58\\x84\\x13\\xf5\\xfa\\x49\\x54\\xa5\\x91\\xfa\\xbb\\xae\\x04\\x13\\xb8\\xbe\\x98\\x32\\xdc\\x4b\\x4a\\xda\\x75\\x73\\xc7\\x87\\x97\\x53\\x37\\x00\\xbb\\x2e\\x2e\\x4e\\x0d\\x39\\x56\\x33\\x45\\x61\\xca\\xf4\\xc4\\x6d\\x03\\x8e\\x59\\x31\\xc9\\xbf\\xd5\\x99\\xf0\\x5b\\x80\\x04\\xa0\\xb9\\x0a\\xf9\\x57\\xd6\\x0b\\x57\\x51\\x64\\x9e\\xbc\\xd1\\x3c\\x7e\\xa3\\xbb\\xee\\x26\\x26\\x7f\\x41\\xc7\\xbc\\x33\\xf8\\xc5\\x0f\\xf3\\xff\\x9a\\xff\\xd7\\x19\\x2e\\x7c\\xe6\\xea\\x0e\\x7a\\xc3\\x5c\\x5e\\xbc\\x24\\x14\\xa8\\x6c\\xf8\\xc7\\x6b\\xf1\\x60\\xa4\\x76\\xa7\\x1b\\x00\\xd5\\xc0\\xd9\\xa4\\xdc\\x1a\\x72\\x14\\xa6\\xce\\xce\\x7c\\xea\\x5a\\xc5\\x7a\\xbc\\x3a\\x52\\x06\\x35\\xc8\\xe6\\xf9\\xd0\\xf5\\xaf\\xeb\\x06\\x89\\xbd\\x31\\xb8\\x7b\\x9f\\xe9\\xd9\\x7d\\x5d\\x6a\\x11\\x93\\xbf\\x4c\\xd6\\x6a\\x65\\x78\\xb7\\xb3\\x3b\\xbd\\xad\\x5e\\xfe\\x05\\x7f\\xd1\\xbf\\x81\\x32\\xc3\\x25\\x29\\x0b\\x7d\\xeb\\xa8\\xf0\\x46\\x07\\xd6\\x54\\x40\\x2d\\x2e\\x29\\x0b\\x10\\x4d\\xaa\\x81\\x3b\\xd9\\xcd\\x91\\xa2\\x5b\\x0c\\xdb\\x04\\x1a\\x60\\xf0\\x36\\x36\\x34\\x91\\xd9\\x3c\\x0f\\x24\\x52\\xdf\\x11\\xbd\\x85\\x55\\xed\\x4e\\x2b\\x33\\x82\\x34\\x25\\xcc\\xce\\x85\\x9c\\x0d\\x25\\xc5\\x01\\xd3\\xc3\\xc7\\x02\\x09\\x2c\\x52\\x7e\\xad\\x9b\\xc3\\x30\\x0b\\xa6\\x51\\x14\\xbd\\xb3\\x03\\xf6\\x58\\x17\\x41\\x8d\\xb4\\x77\\x5f\\xec\\x62\\xc1\\x7e\\xd4\\xec\\x58\\x38\\x6b\\xa4\\x65\\x93\\x0e\\x34\\xf1\\xd7\\x89\\x3e\\xb0\\x66\\x24\\x13\\xf5\\xde\\x6d\\x75\\x14\\xc1\\x34\\xf5\\x70\\x38\\xf6\\x79\\x5a\\x38\\xc6\\xf0\\xff\\x61\\xf6\\x82\\x41\\x53\\x32\\x07\\xa5\\x5d\\x50\\x8e\\x95\\x8b\\x1c\\xf7\\x08\\x94\\x72\\x89\\x47\\xe4\\xea\\x19\\x9d\\xef\\x2d\\x5d\\x62\\x0d\\x21\\xdf\\x82\\xfd\\x2b\\x1d\\x6d\\x67\\xd6\\xe3\\xd2\\x4e\\x5f\\x87\\xf0\\x08\\x5a\\xdc\\x74\\x36\\x5f\\x3c\\x0f\\x66\\x32\\x2a\\xde\\x66\\xcf\\x16\\x74\\x4a\\x48\\xa2\\x41\\x04\\x24\\xe4\\x98\\x62\\x3d\\x42\\x32\\xb2\\xb7\\xf5\\x68\\x0b\\x65\\x25\\x0f\\xb9\\x4a\\x4d\\x53\\x02\\x4a\\xc9\\xd8\\xb5\\x8b\\x4c\\x17\\xf3\\xf9\\x73\\x3d\\x25\\xd4\\x7c\\x80\\x29\\x43\\xf9\\xda\\x56\\xad\\xeb\\xa4\\xbf\\x22\\x64\\x29\\x67\\x46\\x1e\\xe4\\x0b\\x16\\xeb\\x97\\x7c\\x61\\x92\\x80\\x9d\\x8f\\x22\\x62\\x0f\\x83\\xea\\x72\\x1b\\xf7\\xe7\\x2b\\xcf\\xd0\\x8c\\x28\\x8a\\x8e\\x94\\xa8\\x51\\x14\\x1f\\x2b\\x56\\x09\\x7e\\xc9\\xe9\\x84\\x74\\xd7\\x01\\xaa\\x5e\\x4f\\xa5\\xd8\\x55\\x86\\x3f\\xeb\\x8f\\x3c\\x06\\x9f\\x2b\\x69\\xa2\\x00\\x92\\xd1\\xba\\xba\\x0e\\xad\\xfb\\x5d\\x37\\xd7\\x76\\x2d\\x7d\\x05\\x9b\\x1d\\x68\\x11\\x87\\x5d\\xbe\\xed\\x1f\\x1c\\x75\\x7b\\xe0\\x20\\xdb\\x0f\\xfa\\xbd\\x57\\x65\\x96\\xd2\\x88\\xda\\xe7\\x4e\\xa3\\xf9\\x8b\\x66\\x99\\x70\\xdb\\x2a\\xea\\x2b\\x73\\x33\\xf0\\x0f\\x83\\x43\\x1f\\xe0\\x5e\\xfa\\xb0\\x81\\xa0\\xef\\xd9\\x05\\xb7\\x76\\x76\\x6b\\xd0\\x7a\\x56\\xa8\\xe4\\xfc\\xb7\\x66\\x76\\x30\\xaf\\xe3\\xda\\x0a\\x2d\\xfd\\x06\\x54\\x03\\xc0\\x06\\xf5\\x9f\\x8c\\x69\\x26\\x73\\xd8\\x15\\x92\\x1a\\x2a\\x7b\\xa0\\x56\\xb7\\xb1\\xab\\xa1\\x3a\\x0f\\x3b\\xd7\\x2b\\x0d\\xec\\x56\\x61\\xc2\\x0c\\xb5\\xbb\\xa7\\xb8\\xd2\\xf9\\xcb\\xf1\\x8a\\x12\\xa4\\xe0\\xe6\\x3c\\x30\\x01\\x76\\xfd\\xf4\\x1d\\x94\\xf8\\x1a\\xb2\\x35\\x4e\\xd9\\x66\\xd8\\x28\\xe1\\x74\\x70\\x62\\xac\\x60\\x3b\\xb1\\x44\\x1d\\xd8\\xa8\\xa2\\xa0\\x92\\x1e\\x20\\x6a\\x79\\x48\\x92\\x93\\x4d\\x02\\x5f\\x0a\\xe6\\x2c\\x43\\xb0\\x4b\\xcd\\x8c\\xb1\\x8c\\x8d\\xb9\\xc4\\xc5\\x27\\xb1\\x1c\\xcc\\xb1\\x51\\x87\\xef\\x24\\x31\\xd5\\x39\\xdf\\xe3\\x81\\x4b\\x12\\x7a\\xb8\\xf4\\xe0\\x59\\xfb\\x03\\x53\\xc7\\x70\\x15\\x32\\x95\\xce\\x93\\xf5\\x8c\\xd0\\x24\\x93\\xb9\\x63\\x10\\x2d\\x08\\x5e\\x26\\x0c\\x1b\\x55\\xe7\\xe6\\x03\\x0a\\xac\\x98\\x55\\x56\\x9f\\xbf\\x80\\xff\\xf3\\x50\\x94\\x63\\x3f\\x87\\x9e\\xea\\xa3\\xba\\x19\\x91\\x9d\\x2b\\x49\\xed\\x99\\xc6\\x4a\\xf2\\x8b\\xff\\x7c\\x31\\xbf\\xb8\\x65\\x3b\\xc9\\x2f\\xde\\x67\\xef\\xf3\\x67\\x17\\x6c\\x63\\x2e\\xeb\\xf4\\xbd\\xbc\\xb8\\x65\\x6b\\x89\\x9e\\x96\\x08\\xf9\\xdb\\x21\\xdc\\x74\\x07\\x30\\xc1\\x1d\\x80\\xff\\x76\\x9b\\xb2\\x12\\xe0\\x79\\x79\\x67\\xb3\\xa2\\x43\\x28\\xda\\xf0\\x74\\xce\\x40\\xa7\\xfb\\x20\\x1e\\x6f\\x85\\xa4\\x17\\xe5\\x10\\x59\\xa8\\x71\\xf6\\xe2\\x27\\x34\\x7f\\x37\\x33\\xf0\\x66\\x74\\xa8\\x3b\\x36\\x23\\x2a\\x36\\x4d\\xb7\\x0f\\x93\\x9e\\xf2\\xf3\\x38\\xe9\\xd8\\x75\\x33\\xdb\\xd5\\xca\\x3a\\xf9\\x13\\x61\\xed\\x55\\x02\\x4b\\xc3\\x74\\x00\\x1a\\x82\\x06\\xa6\\x87\\x53\\x30\\x45\\xbd\\x9f\\x18\\x9c\\xdb\\x0d\\xd4\\x8e\\x12\\x82\\x0a\\x4d\\x9c\\x3e\\xb1\\x6c\\xe2\\x30\\x62\\x6e\\x14\\xdd\\x49\\xeb\\x3e\\xed\\xfc\\x6a\\x40\\xdf\\x1d\\x45\\x93\\xb5\\x0c\\x5c\\xff\\xad\\x3f\\x92\\x3d\\xd1\\x9c\\x78\\x0b\\x13\\x4a\\x0f\\x74\\xd8\\xb8\\x21\\x2f\\x02\\xdf\\xfc\\x58\\x54\\xf1\\x28\\x88\\x8f\\xc4\\xa0\\x4f\\xa1\\x8e\\x38\\x45\\x5b\\x58\\x79\\xc2\\xc3\\x70\\x6f\\x1a\\x91\\x68\\x68\\x0b\\x43\\xd4\\xe1\\xde\\xe4\\x7e\\x23\\x19\\x79\\x5f\\xbf\\x97\\xc4\\x2c\\xca\\xc9\\x89\\xac\\xf2\\x74\\x56\\x34\\x45\\xc2\\x2d\\x1a\\xba\\x78\\x14\\x54\\xdd\\x05\\x2e\\x05\\x63\\xa8\\x61\\xf3\\x46\\x06\\xf2\\x9a\\xa6\\x3a\\xa6\\x89\\xf3\\xbb\\x30\\x1b\\x2a\\x2b\\xb3\\xd2\\xaa\\x9e\\x73\\x2e\\xe4\\x4a\\xad\\xc5\\xcf\\x3f\\x7d\\x7f\\xa9\\xb6\\x3b\\x25\\x91\\x29\\x9b\\x12\\x4e\\xa6\\x27\\x9e\\x68\\x7a\\x58\\xba\\x08\\x80\\x80\\xfe\\x8c\\xc6\\xbb\\x6f\\x85\\xd6\\xa5\\xbc\\x05\\x27\\x92\\xf0\\x7e\\xa6\\xeb\\x62\\x0d\\xeb\\x6a\\x51\\x51\\xd6\\xd3\\x53\\x40\\xa0\\x47\\x44\\xbe\\x01\\x33\\xbc\\xb2\\x79\\x53\\x15\\xa5\\x44\\x94\\x17\\xd3\\x71\\x76\\xa9\\x11\\x21\\x43\\xa5\\x62\\x3f\\x66\\xd0\\x72\\x1f\\xad\\xe5\\x0e\\xd6\\xca\\xc2\\x9f\\x99\\x0a\\x7a\\x2b\\xe3\\x9a\\x09\\x80\\xd9\\x0b\\x94\\xf4\\xa5\\x0d\\x2a\\x1c\\x05\\xe6\\xbe\\x2b\\xc9\\xc8\\x94\\xd0\\x00\\xcc\\xef\\x76\\xac\\x62\\x1a\\x1e\\x17\\x68\\x5f\\xb7\\x80\\xd9\\x33\\xbb\\xef\\x5e\\x76\\xdd\\xce\\x8f\\xca\\xb4\\x8e\\x85\\xd9\\x92\\x4d\\x69\\x53\\x92\\x91\\x69\\x60\\x3a\\x62\\x97\\xb3\\x32\\xd5\\x80\\x86\\x45\\x72\\xc2\\x4a\\x67\\xd3\\xee\\xec\\x45\\x64\\xd7\\xb9\\x17\\x26\\xde\\xd6\\x44\\x53\\x8a\\xc1\\x53\\xfa\\x06\\x97\\xa8\\xb5\\xf2\\x9f\\x29\\xa1\\x38\\x9d\\x95\\x39\\x96\\x68\\xeb\\x4a\\x6e\\xaa\\xb6\\x3e\\x83\\x88\\x0f\\xf8\\x5b\\x4a\\xfc\\xaf\\x5a\\x7d\\x56\\xa9\\x62\\x7d\\x56\\x8b\\xa6\\xfc\\x53\\x9c\\x35\\xab\\x5a\\x55\\xd5\\x59\\x2b\\x21\\x71\\x55\\x95\\xab\\x0f\\x67\\xeb\\x9b\\x0a\\x2f\\xb6\\xaa\\x6d\\xc4\\x5a\\xdd\\x4b\\xbc\\x6a\\x77\\xf8\\xdf\\xb0\\x32\\x78\\xa5\\x3e\\x8a\\xda\\x5e\\xb5\\x1a\\x2f\\x84\\xd4\\x2e\\xad\\x12\\xc5\\x47\\x71\\xb6\\xba\\x2b\\xe4\\xad\\xb0\\x71\\xca\\xcf\\x70\\xd1\\x3c\\xfb\\x20\\x1e\\xa1\\xdc\\x0f\\xe2\\x11\\x82\\x70\\x9a\\x8b\\x76\\x87\\x61\\x3a\\xcf\\x2c\\x92\\xd4\\x56\\xc8\\x96\\x04\\x1b\\xc0\\x29\\xb3\\x41\\x9d\\xf3\\x93\\xfc\\xca\\xd1\\x89\\xcb\\x1c\\x9d\\x44\\x11\\xaa\\x19\\xfd\\x50\\xa4\\x75\\xff\\xd4\\x75\\x79\\x7b\\x2b\\x6a\\x33\\xd6\\x1d\\xc6\\xd0\\x9d\\x69\\xd8\\xe9\\x80\\xb6\\xb8\\x80\\xfa\\x96\\x1a\\x5e\\xa2\\x6f\\x6c\\x0c\\xb1\\x54\\x0f\\xb0\\x8f\\x6c\\x25\\x7b\\x94\\xec\\xa3\\x99\\x32\\x52\\xdd\\xc7\\x94\\xdd\\x98\\x3d\\x24\\xbd\\x60\\x0f\\x92\\x5f\\xfc\\xc7\\xec\\xf9\\xb3\\x0b\\x76\\x2f\\xf9\\x45\\x9c\\xa5\\x51\\x4e\\x7f\\xe3\\xd9\\x3f\\xa3\\xfc\\xf9\\x05\\xbb\\x86\\x1d\\x63\\xf6\\x3c\\xa5\\x49\\x76\\xf6\\x5e\\xe7\\xcf\\xe3\\xec\\x9f\\x66\\x91\\xc8\\x9f\\xd3\\xf7\\x75\\xfa\\xec\\xe2\\x76\\xcb\\xae\\xec\\xa6\\x52\\xdc\\xa8\\x56\\x77\\xc5\\x6e\\x67\\xfe\\xce\\x1b\\xad\\x6a\\xb3\\x03\\xcd\\xa6\\xe7\\xb0\\x91\\x34\\x08\\xa7\\x00\\x41\\xda\\x9b\\xee\\xbe\\x5c\\xdf\\x0a\\x4d\\x93\\x67\\x17\\xec\\xd2\\xbe\\xfe\\xed\\xd7\\xd7\\xdd\\x77\\x5f\\x7f\\xf1\\x15\\x7d\\x76\\xc1\\x3e\\x98\\xb4\\xf7\\x17\\xef\\x2f\\x2e\\xd8\\xd7\\xf0\\x38\\x7b\\x7f\\x3f\\x9b\\x9e\\xe7\\xd3\\x84\\xc6\\x69\\x62\\x1e\\x98\\x6a\\x5c\\xa4\\xff\\x91\\xe4\\xcf\\x4d\\x4a\\x12\\xbf\\x5f\\x4f\\x69\\x47\\x3b\\x7a\\xc1\\xde\\x4a\\x84\\x62\\x32\\x03\\x88\\x7d\\x21\\xcd\\x5e\\xfe\\x3b\\xfc\\x7e\\x25\\x39\\x79\\x7e\\x41\\x8c\\x20\\xba\\x2a\\x74\\x4c\\x9e\\x5b\\x0f\\xa4\\x47\\xc9\\x0b\\x08\\x1a\\x62\\xd5\\xe1\\x3f\\x48\\x6a\\xd2\\x8e\\x3c\\xcd\\x0b\\x42\\xd9\\xa3\\x84\\x9c\\x9c\\x10\\xf6\\x28\\xb9\\xbd\\x3b\\x6c\\x25\\xff\\x5a\\xa2\\xca\\xea\\x71\\x14\\xa6\\x85\\x76\\x5d\\x16\\x1c\\x7c\\x7f\\x77\\x3a\\xc4\\x8d\\x19\\x29\\x47\\x8e\\x2e\\xb8\\xc0\\x69\\xa6\\x39\\x54\\x35\\x0c\\x15\\x3d\\x0a\\xe8\\x80\\xe8\\x2e\\xf1\\x3d\\x7e\\x6c\\xec\\xe3\\x2d\\x29\\x75\\xc1\\x9a\\x15\\x1a\\xb2\\x90\\x29\\xa8\\xc3\\xb3\\x79\\x9e\\x42\\x04\\x67\\x77\\xa2\\x8e\\x10\\xd7\\xb1\\x59\\xb8\\xc0\\x4a\\x1e\\x94\\xd3\\x3e\\xa4\\xb3\\xa4\\x34\\x19\\x3f\\x73\\xf8\\xba\\x81\\x4d\\xff\\xf8\\xec\\xc0\\x90\\xbe\\xe0\\x82\\x73\\xfe\\xbb\\xec\\x09\\xd1\\xc4\\x0e\\x7a\\xdb\\x0b\\x99\\x59\\x9b\\xf3\\xc9\\xdc\\x31\\x79\\x02\\x8e\\x12\\xb2\\x01\\xb3\\x6d\\x5f\\x59\\xf1\\x36\\xc6\\x2f\\xb8\\x93\\xba\\x31\\xe9\\x56\\x5d\\x57\\x18\\xa6\\x6b\\x95\\xa7\\x45\\x3a\\x89\\x2b\\xbe\\xa2\\x89\\x4e\\x62\\x39\\x73\\xee\\x1c\\x7d\\x38\\xeb\\x15\\x65\\x8d\\xf9\\x99\\x2c\\x0c\\x87\\x59\\xf5\\x60\\x98\\x41\\xe6\\x6c\\x9e\\xd3\\xae\\x9b\\xa8\\x8c\\x3c\\x27\\x79\\x14\\x35\\x30\\x76\\x02\\x87\\x83\\xe1\\x9e\\x08\\x36\\xfe\\x83\\x5d\\x68\\x53\\x15\\xfa\\x35\\xba\\x30\\x76\\x9d\\x3d\\x2c\\x80\\x85\\x53\\x52\\x99\\x95\\x39\\x22\\xd7\\xc4\\xb1\\xca\\xca\\x3c\\x15\\x49\\x0d\\xe0\\x45\\x10\\xc4\\xcb\\xc5\\x5d\\x5d\\xf6\\x50\\xe7\\xfe\\x98\\x73\\x32\\x67\\x46\\xba\\x60\\xf6\\x8c\\xda\\x0c\\xf7\\x23\\x45\\xf3\\x49\\xac\\xc7\\x28\\x7a\\x2b\\x9d\\xd6\\xeb\\xad\\x3b\\x8a\\x00\\x36\\xcb\\xaf\\x52\\x03\\x67\\x2e\\x74\\xda\\x6a\\xc1\\x14\\xdd\\x1e\\x43\\x9d\\xf5\\x7c\\x58\\xfb\\x92\\xcf\\x9d\\x7a\\xcd\\x82\\x33\\x7b\\x50\\x55\\x26\\x82\\x00\\x7c\\x2d\\xa5\\x6c\\x34\\x2e\\xcd\\xe8\\x93\\x4c\\x72\\x4d\\x13\\x19\\x45\\x47\\x1b\\x14\\xa8\\x2a\\x39\\x79\\xf3\\xfa\\xed\\x35\\xa1\\xac\\x09\\xcc\\x33\\x43\\x97\\x1d\\xe1\\x22\\x2c\\xf4\\xae\\x3a\\x77\\x7a\\x5b\\xa1\\xeb\\x4e\\x22\\x0f\\x74\\xb6\\x56\\x52\\x0c\\xf0\\xb9\\x15\\xef\\x1d\\x8a\\x1b\\xf4\\xf2\\x2a\\xd3\\x9b\\x98\\x20\\x12\\x85\\xf7\\x11\\x04\\xce\\xa7\\x11\\xdf\\x5d\\xbf\\xfa\\x01\\xf4\\x44\\x80\\x51\\x59\\xa2\\xa3\\x3b\\x60\\x02\\x57\\x42\\x8b\\xb8\\x8e\\xa2\\xe1\\xc2\\x6c\\x0f\\xb3\\x6b\\xa6\\xba\\x2e\\x33\\x9c\\x58\\xb3\\x53\\xb2\\x01\\x13\\x39\\xa6\\x99\\xc8\\xcd\\x38\\x43\\xbf\\x55\\x2f\\x5d\\xc2\\x68\\xd1\\x45\\xad\\x09\\xb3\\xd7\\x20\\x6e\\x9a\\xcb\\x4b\\xfb\\x1d\\x7b\\x0b\\x61\\xa4\\x5d\\xae\\x16\\x8c\\x0e\\xdc\\x9d\\x90\\xeb\\xa1\\x6c\\x7a\\x72\\x53\\x1a\\x6e\\x1c\\xb0\\xf8\\x08\\x77\\x7e\\x8e\\x95\\xb9\\x15\\xa6\\x1a\\x3b\\xd5\\x9c\\x10\\x75\\x8d\\x84\\x3b\\x54\\x5b\\x05\\x40\\xfc\\x83\\xde\\x45\\x13\\x12\\xae\\xba\\xae\\x64\\x25\\xaf\\x59\\xcd\\xb5\\xf9\\xc6\\x51\\xbf\\xc9\\xbe\\xdf\\x14\\x76\\x59\\xcd\\x1a\\x6c\\x58\\x52\\x8e\\x4f\\xf6\\x31\\x26\\x54\\x32\\x87\\xb0\\x34\\xaf\\xd4\\x1a\\xbc\\x8b\\x92\\xfd\\x81\\x09\\x5d\\xdc\\x9a\\xff\\xe1\\xb4\\x4b\\xe0\\x33\\x8f\\x32\\x74\\xe7\\x2a\\x9b\\x1f\\xd4\\xaa\\xa8\\x92\\x2b\\xcb\\x28\\x6d\\x65\\xb6\\xc8\\xa9\\x77\\xe5\\x9a\\xb3\\x5d\\xad\\xcc\\xa7\\xc1\\x6a\\x6f\\x32\\x77\\xce\\x5e\\x1e\\x88\\x15\\xc7\\x97\\x99\\x32\\x25\\x86\\xc1\\xba\\x78\\x38\\xbf\\xbf\\xbf\\x3f\\xdf\\xa8\\x7a\\x7b\\xde\\xd6\\x15\\xb2\\xac\\xeb\\xa5\\xe1\\x32\\x6a\\x23\\xc7\\xfd\\x7c\\xfd\\xcd\\xf9\\xff\\x10\\x86\\xf6\\x77\\x4d\\xb2\\x27\\xcf\\x49\\xf2\\x95\\xc4\\x30\\x40\\xe0\\x1a\\x71\\xb1\\x33\\x8c\\x27\\x41\\xdf\\x62\\x4c\\xc1\\xe1\\xfb\\x60\\xee\\x07\\x5f\\xda\\x56\\xec\\x0c\\x32\\x3c\\x98\\xe7\\xbf\\x37\\x60\\xe5\\x15\\x64\\x30\\x29\\x36\\xc7\\xef\\xc5\\xc7\\xc2\\xda\\x35\\x06\\x88\\x6e\\x7b\\x53\\xa6\\x79\\xfb\\x02\\x3f\\x07\\x5f\\xba\\xc0\\x92\\xe0\\xed\\x8b\\x03\\x73\\xc3\\xf5\\x1b\\xc0\\xb2\\xc1\\x57\\x88\\x4b\\x7c\\xf7\\xea\\x07\\x62\\xeb\\x1e\\x0e\\x6b\\xfc\\xc6\\x47\\x51\\x1b\\x89\\xdd\\xb4\\x11\\x2a\\x41\\x12\\x31\\x7b\\x0b\\x8b\\x0f\\x83\\x76\\x81\\x52\\x97\\x18\\x62\\xe2\\xad\\xf9\\x20\\x49\\xec\\x24\\xfb\\xeb\\xdb\\xd7\\x57\\x36\\xdd\\xb4\\xce\\x25\\xbf\\x7b\\xf5\\xc3\\x81\\x05\\xcb\\x27\\xf6\\xa9\\xeb\\x0f\\xc0\\xc3\\x3d\\xf8\\x5e\\x6f\\x77\\xa7\\x75\\x84\\x3a\\x7d\\x25\\x63\\x58\\xa4\\x87\\xeb\\x32\\x65\\x9a\\x26\\xaf\\x64\\x3c\\x4c\\x05\\xe4\\x3c\\x93\\xf0\\xa6\\x16\\x56\\x67\\xf8\\x9d\\x8c\\xbf\\x90\\x14\\x12\\xaf\\xeb\\x42\\x36\\x3b\\x55\\x6b\\x93\\xf8\\xbb\\x4d\\x1c\\xe9\\xa8\\x8e\\x16\\x32\\xd0\\xb9\\x71\\xc1\\x84\\x99\\x03\\x92\\x4b\\xd8\\x04\\x46\\x9e\\x03\\xd6\\x3a\\xdc\\xd7\\xa5\\xdd\\xc5\\xfb\\x03\\x93\\x94\\x6d\\xf8\\xce\\x61\\x99\\x76\\xdd\\x8e\\xad\\xfb\\xdb\\x28\\x8a\\x37\\x81\\xd5\\xfd\\xc6\\x0a\\x34\\x34\\xbd\\x89\\x37\\x34\\xb1\\xb6\\x9a\\xec\\x8e\\xdf\\xcc\\xbe\\x12\\x1b\\x51\\xd7\\x62\\x1d\\x53\\x76\\xcb\\x6f\\x66\\x97\\x45\\x55\\xdd\\x14\\xab\\x0f\\x4d\\x4c\\x94\\x5c\\x89\\xb3\\xad\\xd8\\xaa\\xfa\\x91\\x50\\xb6\\xe5\\xbb\\x59\\xa3\\x0b\\xdd\\x36\\x97\\x16\\x53\\x90\\x3d\\x9a\\xfd\\xfb\\xa3\\xf9\\x79\\xe0\\x73\\x76\\xcd\\xc9\\xaa\\x90\\x2b\\x61\\xc4\\x63\\x76\\xc5\\xf7\\xb5\\x28\\xd6\\x8f\\x6f\\x75\\xa1\\xcd\\xa4\\xbc\\x15\\xfa\\x27\\x3b\\x2a\\xbe\\x3b\\x8e\\xd3\\x85\\x81\\xae\\xca\\x4d\\xfc\\x82\\x73\\xfe\\x00\\x7b\\xd3\\x64\\x45\\xf7\\x2b\\xbe\\x3f\\x2c\\x5d\\x04\\x96\\x6b\\xcb\\x45\\x15\\x94\\xae\\x32\\x7d\\xec\\x4f\\xce\\x75\\xf6\\x22\\x3f\\x68\\xbe\\x3a\\x8a\\x34\\x79\\x18\\x08\\xd0\\x1a\\x05\\x68\\x7d\\x30\\x75\\xfa\\xa2\\xaa\\x86\\xd5\\x6a\\x4e\\xe8\\x21\\xa0\\x52\\x69\\xe1\\xe2\\xf8\\x9b\\x96\\xfc\\xd1\\x8a\\x46\\x1f\\x35\\x24\\xd4\\xfa\\x9e\\x0a\\x07\\x76\\xf6\\x00\\x2e\\xdf\\x1f\\xcd\\x4a\\xf9\\x11\\xec\\x1b\\x04\\x7b\\xcc\\x44\\x6e\\xba\\x1e\\x57\\x7d\\xc3\\xcb\\xd7\\xe5\\x5a\\xbc\\x2a\\xb7\\xd0\\x73\\xa7\\xfc\\xb0\\x4d\\x21\\xbb\\xd9\\xd6\\xe6\\xe0\\xc2\\xbd\\xdb\\x77\\xce\\x69\\xda\\x0a\\x6a\\x08\\xfc\\xf2\\x01\\x0c\\x78\\xad\\xe1\\xe3\\xd6\\x6c\\x00\\x99\\xf9\\x65\\x22\\xd3\\xb9\\x0d\\x4b\\x7a\\x35\\x2b\\xaa\\xfb\\xe2\\xb1\\x89\\x45\\x76\\x65\\xfb\\x3c\\x1f\\xe1\\x44\\x14\\x37\\x66\\x9c\\x1f\\xdb\\x72\\x89\\xae\\xbb\\x76\\x39\\xab\\x28\\xaa\\x66\\x90\\x31\\xd6\\x94\\x7d\\xc0\\x18\\xd2\\xe8\\xaa\\x6a\\xea\\x73\\x37\\xdb\\xd5\\x6a\\x5b\\x36\\x22\\xbe\\xea\\xb7\\x4c\\x7e\\x3b\\x2b\\xd6\\x6b\\x76\\x35\\xb3\\xeb\\x3c\\xbf\\x82\\x2d\\x9a\\x5d\\x61\\x80\\x23\\x7e\\x35\\xdb\\x14\\x65\\xc5\\x76\\xb3\\xb6\\xae\\x78\\x1c\\x8b\\xae\\x83\\xcb\\xae\\x7b\\x94\\x74\\x1a\\xfa\\xca\\x3e\\x48\\x16\\xde\\x7e\\x90\\x0c\\xd6\\xf3\\x29\\xb9\\xb8\\x20\\x94\\xed\\xd0\\x71\\x54\\xce\\xb6\\x42\\xdf\\xa9\\x75\\xd7\\x49\\x6b\\xb7\\xbd\\xf3\\x29\\x98\\x85\\xed\\x7a\\x56\\xcf\\x69\\xd2\\xfb\\x24\\x74\\x6f\\x7a\\x9a\\xe1\\x26\\x24\\x67\\x38\\xea\\x76\\xb3\\x55\\xad\\x9a\\xe6\\x2b\\xb5\\x2d\\x4a\\x09\\xe6\\x37\\x4e\\x2a\\x80\\xfa\\x8f\\x04\\x03\\x36\\xc8\\xce\\x27\\x60\\xd9\\x5e\\x63\\xd4\\x1f\\x68\\x46\\x14\\xd5\\xd9\\x0b\\x7b\\x07\\xf1\\xd3\\x6b\\x08\\x4c\\x1e\\x93\\x3b\\xad\\x77\\x09\\x72\\xf0\\x8b\\x3c\\xfd\\x9f\\x79\\xf2\\xf9\\xe7\\x9f\\x51\\xca\\xb9\\xd9\\xcd\\x46\\x39\\xa0\\x20\\x9f\\x05\\x3e\\x8a\\x4e\\x9f\\xbb\\x59\\xb0\\xd3\\xf5\\x20\\x99\\x9e\\x4b\\x74\\xf9\\x2c\\x21\\xb8\\x53\\xf4\\xe1\\xad\\xa1\\x6d\\xa0\\x59\\xa1\\xec\\x0f\\xb3\\x42\\xb2\\x1d\\x93\\xec\\x8a\\x32\\x9c\\xe0\\x76\\x80\\x5c\\x2d\\x5b\\xbe\\xb3\\x1e\\xd1\\xac\\xc5\\x78\\xca\\x37\\x36\\xb8\\xe3\\x74\\x0a\\xfc\\x2c\\x98\\x94\\x3b\\xa9\\x37\\xe0\\x85\\x7c\\x17\\xe2\\xbf\\xa1\\x21\\x30\\x83\\x10\\x90\\xce\\xa7\\x61\\x72\\x69\\x37\\x74\\xcc\\x4a\\x99\\xe2\\x40\\xf3\\x41\\x2e\\x98\\x53\\xb6\\x59\\xf6\\xf9\\x94\\xc7\\x37\\xb2\\xf7\\xef\\x88\\x48\\x42\\x52\\x42\\xa7\\xb6\\x95\\xd6\\x52\\x1d\\xef\\xa0\\xc3\\x8a\\xd5\\x9d\\x80\\x30\\x91\\x40\\x19\\x33\\x3e\\xef\\xe5\\x89\\xe3\\x90\\x7b\\xc9\\xc8\\xb3\\xc5\\x6f\\x9c\\x4c\\x3f\\xca\\xe9\\x94\\x26\\x6a\\x7a\\xf2\\x33\\xc4\\xe7\\x30\\x85\\x97\\x1b\\xc7\\xd1\\x80\\x62\\x3f\\x64\\x71\\xc0\\x8c\\xfe\\x6a\\x36\\x5e\\x96\\x62\\xf2\\xfd\\xe6\\xdc\\xe5\\x39\\x7f\\x5b\\xca\\x95\\x20\\xec\\xe8\\x4d\\x60\\xa0\\x74\\x71\\xfb\\xa9\\x42\\xae\\x94\\x14\\xe7\\xaf\\xcc\\xa0\\x26\\x7d\\x6e\\x4a\\x59\\xdc\\x8f\\x97\\x9e\\x8e\\xe6\\x2e\\xe0\\x87\\x26\\x86\\x1e\\x66\\x76\\x05\\x69\\xf4\\xf4\\x97\\x6c\\x01\\xe7\\x26\\x0b\\x61\\x83\\x52\\x28\\x3b\\xf5\\xc2\\x17\\xc0\\x37\\x91\\x70\\x86\\x02\\x46\\xda\\xce\\x7a\\x34\\x34\\xd9\\xf0\\x49\\x9e\\x3e\\xf9\\x64\\x6a\\xa4\\xb6\\x89\\x99\\xa5\\x61\\x72\\x4a\\xd8\\x19\\x99\\x7e\\x25\\xa7\\x64\\x79\\xf6\\x07\\x9f\\xcf\\xe6\\x70\\xd4\\x47\\x93\\xbe\\x18\\x23\\xf3\\xd1\\x5e\\x64\\xdb\\xcd\\x10\\x05\\xb2\\xa1\\x27\\xea\\x5b\\x32\\xff\\x18\\xc4\\xb6\\x72\\x13\\xef\\x66\\xe8\\x93\\x6a\\xd8\\x73\\x18\\x34\\xfd\\xad\\x0d\\x6a\\xc2\\xae\\xd8\\x0e\\xa2\\x85\\x2d\\xba\\x0e\\xa7\\x8e\\x9f\\x3b\\x76\\x65\\xa5\\xcb\\x6b\\x4e\\xe0\\x92\\xf8\\x8a\\xec\\x1d\\x93\\xbc\\x60\\xb0\\x6a\\x26\\x0b\\xe6\\xd6\\xd7\\x64\\x71\\xa0\\x57\\x59\\x99\\xc7\\x3b\\x57\\x89\\x8a\\xff\\x61\\xb8\\x15\\x3b\\x41\\xe9\\xfe\\x6a\\xd6\\x6f\\xdc\\x7c\\x61\\xa6\\xe5\\x7a\\x34\\x01\\xc1\\xb7\\x36\\xbb\\x62\\xbb\\xdc\\x0c\\x4d\\x60\\x83\\x0d\\xd5\\x75\\xb9\\x15\\xaa\\xd5\\x46\\x06\\x8b\\x1b\\xde\\x08\\x7d\\x8d\\x09\\xa1\\xbe\\xdd\\xd5\\x9a\\xd8\\xcc\\x00\\xc1\\xec\\xde\\xa4\\xa8\\x73\\x79\\xe0\\x0b\\x56\\xcd\\x1a\\xc3\\xd4\\x3f\\xb2\\x0f\\xd4\\x6a\\x5e\\x2e\\x91\\x2b\\x80\\x0d\\x8c\\x02\\xa6\\xc2\\xd9\\xe5\\xf2\\x43\\x7c\\xbe\\x60\\x97\\x2e\\x56\\x14\\xdc\\x91\\x2b\\x75\\xe6\\x19\\x31\\x12\\x18\\x12\\x7d\\x18\\xea\\x1e\\x56\\xec\\x91\\x7d\\x64\\xf7\\xec\\x9a\\x5d\\x72\\xb9\\x7c\\x31\\xe1\\xfc\\x21\\x8a\\xe2\\x07\\xfe\\x82\\x35\\x51\\x04\\x26\\x97\\xae\\xfa\\x0d\\x65\\x15\\xd7\\xac\\xe0\\x65\\xd7\\x11\\xc2\\x06\\xf4\\x11\\x2f\\xe7\\xe9\\xe7\\xc9\\x9c\\xd5\\x51\\x14\\xdf\\xf3\\xdf\\x64\\xbc\\x63\\x57\\x60\\x8a\\x28\\x5e\\xf2\\x17\\xf3\\x79\\x14\\x7d\\x36\\x9f\\xbf\\x14\\x5d\\xf7\\xd9\\x1c\\xa2\\x9d\\xa6\\xf1\\x68\\x2a\\x5f\\xf3\\xab\\xd9\\x11\\x6b\\x14\\x93\\x1f\\x8a\\x46\\xfb\\xc9\\x4b\\x28\\xbb\\x3e\\x35\\xeb\\xf9\\x35\\x65\\x4f\\xbc\\x6f\\x26\\xa9\\x7f\\xcd\\xce\\x58\\x7e\\x4d\\x29\\x7b\\xe1\\xea\\xb1\\xe2\\x93\\x39\\xbb\\xe4\\x44\\x2a\\x6f\\x74\\x92\\x7c\\x76\\xfc\\x50\\x6f\\x7d\\x25\\x92\\x78\\xc5\\xbf\\x31\\x0d\\xbc\\xa7\\xec\\x92\\xaf\\x80\\x2f\\x10\\xec\\x91\\xaf\\x70\\x3d\\xfc\\xc8\\x57\\xb8\\x45\\xb3\\x15\\x9f\\x7c\\xa4\\x34\\x89\\x3f\\xf2\\x4b\\x66\\x36\\xe8\\xc9\\xa5\\x11\\xf7\\x2e\\x39\\x11\\x28\\x9f\\xce\\x5f\\x0a\\x80\\x30\\x9e\\x9b\\x3d\\xc7\\xf1\\x17\\x5c\\xf8\\x4b\\x23\\x35\\xf0\\x58\\x76\\xdd\\xa5\\xd9\\xd1\\xd9\\x2a\\xbd\\x33\\x72\\xb2\\xaa\\x3e\\x22\\xc0\\xdb\\x86\\x65\\x8f\\xec\\x92\\x5d\\xe5\\x34\\x31\\x0f\\x0c\\x37\\xed\\xd2\\xaf\\xd8\\x25\\xfb\\x98\\xf7\\x85\\x1a\\x5e\\x28\\xde\\x1a\\xd6\\x55\\x0f\\xc7\\xf1\\x2a\\x1d\\x08\\xc9\\x49\\x28\\x3e\\x9b\\x81\\xcd\\x56\\xe9\\x63\\x62\\x4a\\xba\\x9d\\x6d\\xca\\x5a\\x04\\xe5\\xe7\\xd4\\x94\\x14\\x8f\\xa6\\x44\\x2f\\x88\\xdb\\x69\\x71\\x7e\\xee\\xf6\\xb1\\xae\\x7b\\x62\\x17\\x53\\x3b\\x42\\xfb\\x90\\x3d\\x57\\xc0\\x8e\\xbe\\x05\\xb1\\xec\\x29\\x3f\\x02\\xb4\\x75\\xd5\\x2c\\xc0\\xf6\\x82\\xb7\\x8c\\x7c\\xf4\\x34\\x98\\x78\\xf0\\x16\\x48\\x55\\x43\\x4f\\xf1\\xdf\\x4e\\x19\\x1e\\x82\\x42\\xc7\\x49\\x86\\x60\\x71\\xe8\\x97\\x45\\xb6\\xe2\\xbd\\xda\\x02\\xe5\\x40\\x58\\x76\\x1a\\xb3\\xfe\\xad\\x28\\xfc\\x33\\x93\\x41\\x66\\x2b\\x70\\x4b\\xa8\\xc1\\xdf\\x0c\\x79\\x78\\xf2\\xdc\\xb0\\x1d\\x55\\x36\\xcf\\x69\\xd5\\x87\\xc4\\xb4\\xc7\\x35\\x8a\\x0b\\xcf\\xd3\\x9a\\x0d\\xe3\\xc4\\xa8\\x1e\\xec\\x10\\x18\\x15\\x53\\x51\\xff\\xf1\\xd6\\xb0\\xb7\\x6d\\xd6\\xe4\\x51\\x64\\x7e\\x7b\\x97\\xd6\\xca\\xeb\\xf3\\x1a\\x17\\x6a\\xc1\\x2c\\x7b\\xd9\\x3c\\x37\\x75\\xa5\\x05\\xd4\\x08\\x83\\x9e\\xf9\\xc2\\x50\\x3f\\x36\\xa9\\x2c\\x3e\\x4a\\x2f\\xc1\\x66\\x0d\\xd8\\x31\\x98\\x07\\x39\\xdd\\x17\\xbc\\x71\\x25\\x82\\x7f\\x4b\\x43\\x0f\\x05\\x84\\x8c\\x73\\xdd\\x5a\\xa4\\x71\\x31\\xc1\\x36\\x1b\\x66\\xd8\\x55\\xa4\\xa0\\xe8\\x7c\\x1c\\x1a\\x25\\x7e\\x73\\xec\\x0d\\xe4\\xbd\\x42\\xa0\\x43\\x7a\\xfd\\x24\\xaa\\xcd\\xcc\\xb2\\xd4\\x9a\\xaa\\x43\\xac\\x65\\xf3\\x14\\x23\\xe7\\x44\\x11\\xc4\\xfb\\xed\\x13\\x62\\xcd\\xfa\\xb7\\x29\\x65\\x6d\\xb6\\xc8\\xa9\\xdf\\xb4\\xc2\\xd6\\xd1\\x22\\x2b\\xc7\\x62\\xd5\\xa0\\xf5\\xa5\\x3d\\xd6\\xae\\x79\\x9b\\x4d\\xa7\\x4d\\xbe\\x04\\xc7\\x63\\xd8\\x3b\\xad\\x4a\\x11\\xae\\x0d\\xe7\\xef\\x93\\x4a\\x5e\\x64\\x15\\x50\\xad\\xce\\xbb\\xae\\xc8\\xc8\\x73\\xb8\\x64\\x93\\x92\\x7a\\xa0\\x92\\x02\\x7d\\x9a\\xc3\\x33\\x74\\xa6\\x90\\xdf\\x45\\x48\\x76\\x57\\x84\\x32\\x84\\xf7\\xa5\\xc0\\x1d\\x38\\x64\\x72\\x3e\\x99\\xa7\\x26\\x9b\\xcc\\x13\\xf3\\x63\\x18\\x8f\\x39\\xf0\\xd9\\x26\\x0f\\x6b\\x5d\\x44\\xa4\\xe6\\xfc\\x9c\\x81\\xb1\\x78\\x3f\\x12\\x4a\\xc8\\x0b\\x61\\xea\\xa2\\x48\\x64\\x0e\\xb0\\x27\\xa7\\x9a\\x97\\xb1\\x3b\\xcf\\x32\\x1b\\x13\\xde\\xf7\\x86\\xf1\\xf6\\x88\\x15\\x16\\xc2\\x84\\x80\\x4e\\xa2\\xb6\\x6b\\x1c\\x6e\\xbb\\x65\\xba\\x4a\\xcc\\x7e\\x84\\x04\\x6c\\x00\\x64\\xbc\\x56\\x5b\\x33\\x7e\\xa6\\xe4\\x4c\\x2b\\x43\\x87\\xc3\\xe1\\x50\\xf1\\xfa\\x30\\x2c\\xab\\x71\\xda\\x3b\\x50\\x7a\\xe9\\xc3\\x61\\x20\\xfa\\x7b\\x85\\x11\\xae\\x02\\x56\\x33\\xd4\\xab\\x75\\xd8\\xd9\\x40\\xf3\\xf3\\x44\\xba\\x58\\x6d\\x4f\\xa6\\x3f\\x9c\\xf7\\x4f\\x06\\x0a\\x22\\xfb\\xb5\\x93\\x90\\xcb\\x23\\x25\\x0f\\xe8\\x6a\\x6c\\x11\\xa7\\x41\\xf1\\x02\\x18\\x24\\x41\\x99\\xb0\\x06\\x5f\\x03\\xd5\\x4a\\xec\\x61\\x95\\xc2\\x12\\x84\\x67\\xb4\\x35\\xc0\\x33\\xe0\\xdd\\x64\\x41\\x99\\x18\\x89\\x58\\x16\\x1c\\x08\\x95\\x7b\\xc2\\x7e\\x91\\xa3\\x2e\\x1f\\x3f\\xe5\\xf9\\x84\\xd3\\x9f\\x82\\x79\\x15\\x94\\xd9\\x43\\x7d\\x28\\xe0\\xe4\\xc0\\xa0\\xd2\\x5c\\x10\\xc4\\x51\\x3a\\x32\\x0a\\x5f\\xba\\x5e\\x1d\\x60\\x7c\\xe2\\x81\\xec\\xf1\\x19\\x92\\xf7\\x35\\x96\\xc8\\x53\\x99\\x4d\\x58\\xcc\\x30\\xf5\\x12\\x55\\x86\\x60\\x9f\\xe5\\xd4\\x87\\xa3\\x67\\x10\\xea\\xa8\\x36\\xcb\\xb3\\x91\\x6d\\xe4\\x4c\\xc1\\x31\\x29\\x37\\x17\\xc0\\xb0\\xc0\\xd0\\xc2\\x03\\xce\\xd1\\x69\\x61\\xac\\xbb\\x6e\\x22\\x03\\xb6\\xa6\\xeb\\x2e\\xcc\\xbb\\x62\\xdd\\x39\\xb6\\xf1\\xc2\\xda\\x8e\\x07\\x99\\x30\\xc4\\xf2\\x27\\x3f\\x03\\x87\\x97\\x43\\x00\\xcb\\x4f\\x40\\x51\\x32\\x89\\x2f\\xe8\\xae\\x2b\\xe3\\x17\\xf3\\x39\\xf3\\xd3\\x80\\xd2\\x03\\xab\\x87\\x78\\x75\\x92\\xd5\\xc3\\xd0\\x14\\x23\\x85\\x04\\xdd\\x63\\xe8\\x1e\\xa8\\x5d\\xac\\xc1\\x45\\xcd\\xbb\\x02\\xbf\\x86\\x20\\x53\\x5f\\x4a\\x7e\\x11\\x73\\xfa\\x3e\\x8d\\x53\\x1e\\x75\\xcf\\x68\\xf7\\x3e\\x7d\\x9f\\x5e\\x2c\\x07\\x53\\xcd\\xec\\x98\\xbb\\x84\\xac\\xac\\x52\\x0c\\x35\\xab\\x3b\\xa7\\x23\\x3b\\xc2\\xc9\\xe4\\xaf\\x25\\x62\\xce\\xc3\\xae\\x8f\\x2e\\xd9\\x53\\xf2\\x1b\\x0a\\x72\\xa1\\x02\\x25\\x13\\x70\\x9e\\x25\\x4e\\x0e\\x7b\\xf3\\x0d\\xd0\\x80\\xee\\x82\\xf1\\x78\\xc2\\xe5\\x46\\xce\\x20\\xd3\\xc4\\xca\\x9c\\x5f\\x4a\\xd7\\x49\\x6d\\x5d\\xd1\\x94\\xb4\\x75\\x05\\xfe\\x5e\\x23\\x43\\x25\\x2b\\xb4\\x4d\\xe2\\x81\\x50\\x86\\x40\\x63\\xfe\\x10\\xe7\\x5f\\x6a\\xb1\\x09\\x8d\\xa2\\xfe\\x83\\x20\\x03\\x47\\x11\\x31\\xff\\x83\\xe3\\x9f\\xae\\x23\\xd8\\x0c\\x00\\x6b\\x1c\\x88\\x56\\xb0\\xd8\\x0f\\x88\\x39\\xb4\\x0c\\x19\\x3d\\xa4\\xe9\\x28\\x21\\xa6\\xc9\\x28\\x85\\xb5\\x29\\xfa\\x7f\\x67\\x6d\\x1f\\x39\\xef\\x4b\\x10\\xb6\\xc9\\x54\\xf9\\xec\\x8e\\x5a\\x72\\x24\\xe2\\x3b\\xaa\\x39\\xf9\\xdb\\x66\\x07\\x63\\x13\\x65\\xe6\\x56\\xb0\\x0b\\xda\\xa9\\x8a\\x5a\\xea\\xe0\\xd0\\xa3\\xb7\\xab\\x85\\xfe\\x87\\x88\\xdc\\x6a\\x4a\\xce\\xee\\x8b\\xe6\\x4c\\x2a\\x7d\\x66\\x86\\x11\\xf0\\xf3\\x86\\x04\\x07\\x36\\x24\\x09\\x47\\xf6\\x8c\\x15\\x1c\\x3d\\x83\\x0c\\xcb\\x1e\\x94\\xdc\\xf4\\xe7\\x52\\x07\\x56\\x3a\\x05\\x5d\\x90\\x01\\xdd\\x82\\x98\\x44\\xb7\\xfa\\x31\\x71\\xeb\\x11\\xb1\\x5e\\x7b\\x6c\\x02\\xf0\\x0c\\x1b\\xd0\\xde\\x74\\x65\\x11\\x23\\xb2\\x76\\xc3\\x0b\\xae\\x0f\\x01\\x12\\x42\\xa2\\x9d\\x3f\\xbd\\x64\\x3f\\x49\\xf6\\x8b\\xe4\\x73\\xf6\\x4c\\x72\\x31\\xfb\\x02\\xd8\\xdd\\x77\\x68\\x26\\x13\\x9c\\x7b\\xd9\\xa9\\x01\\x7c\\x83\\x30\\x7b\\xfd\\x1b\\x49\\xdf\\xc8\\x4c\\xe4\\x76\\x56\\xf6\\xbc\\xe8\\xf7\\x26\\xb3\\xd9\\x68\\x9d\\xbe\\x56\\xdc\\x9f\\x89\\xd9\\xbb\\x57\\x3f\\x7c\\xa7\\xf5\\xce\\x0a\\xd3\\x76\\xf7\\xd5\\x74\\x1f\\x9c\\x2b\\xff\\x79\\xf2\\xc5\\x41\\x85\\x62\\xf2\\xaa\\x34\\x4b\\xb9\\xda\\x68\\x28\\xf1\\xfa\\xfa\\x0d\\xa1\\x61\\x61\\xa3\\x63\\xd9\\x87\\xbb\\x7a\\xdc\\xa6\\xf4\\xa8\\x9f\\x27\\x08\\xa1\\x8c\\xe7\\x46\\x51\\x64\\xea\\xdf\\x75\\xa6\\x32\\x87\\xe4\\x7b\\x43\\x9d\\xf1\\x59\\xef\\xc3\\x5d\\x1d\\x0f\\x3c\\xfb\\x54\\xdd\\xf0\\xc9\\xe4\\x27\\x19\\x45\\xe4\\xbe\\xd4\\x77\\x97\\xb5\\x58\\x0b\\xa9\\xcb\\xa2\\x6a\\x48\\x29\\xcf\\x7e\\xb2\\x65\\x78\\x74\\x8c\\xdf\\x8b\\x07\\xc8\\xce\\x7e\\x92\\xee\\x9c\\xb3\\xdf\\xc2\\x42\\x6b\\x45\\x88\\x17\\x1f\\x6e\\x5d\\x03\\x5c\\x4c\\x55\\xdb\\x70\\xe9\\xf5\\xe9\\x0d\\x0a\\xce\\xed\\x20\\xa4\\xa1\\x5d\\x66\\xa0\\xde\\x18\\x80\\xa3\\x6d\\x44\\x2d\\x8b\\xad\\x48\\xdb\\x99\\xda\\x09\\x33\\x4f\\x41\\x4b\\x2a\\xed\\xa6\\x03\\x1b\\x17\\xeb\\xb3\\xc1\\xea\\xdf\\x34\\xf7\\xaa\\x5e\\xd3\\xe4\\x13\\xaf\\x98\\x09\\xf6\\x70\\x57\\xa3\\x40\\xd1\\xf3\\xf4\\x61\\xa2\\x61\\xea\\x79\\x90\\x90\\x35\\xf9\\x52\\x7a\\x91\\x21\\x8a\\xda\\xd9\\x58\\x79\\x7e\\x2a\\x2d\\xee\\x5f\\x81\\x49\\x1d\\x92\\xa8\\xcc\\xc8\\xbb\\x73\\x3b\\xce\\xc4\\xfa\\x1c\\x00\\xc0\\xc0\\x6f\\xfd\\x54\\x3a\\x27\\xc3\\x81\\x19\\x40\\xd6\\x42\\xd5\\x4b\\xda\\x1e\\xeb\\x80\\x1a\\x56\\x1a\\x79\\xc8\\x8e\\xbb\\x8a\\xee\\x0f\\x2d\\x2a\\x3a\\xe4\\x40\\x85\\x86\\x0b\\x03\\xba\\xa8\\x50\\x36\\x30\\xee\\xb1\\x5b\\x40\\x83\\x47\\x42\\xf0\\xc9\\x72\\x13\\x03\\x8f\\xdc\\x75\\x46\\x7c\\x6f\\x07\\x5b\\xb4\\x79\\xc6\\xd1\\x91\\xab\\x3d\\xb5\\x43\\xdf\\xcc\\xa4\\x52\\x3b\\xf6\\x4c\\x46\\x91\\x55\\x68\\xbe\\x91\\x46\\x30\\x61\\x25\\xfd\\x7c\\x32\\x2c\\xcc\\x50\\xd3\\xa9\\x9c\\x40\\x58\\xda\\xa1\\x70\\xd2\\x5a\\x61\\xdb\\x48\\x23\\xb3\\x93\\x47\\x2a\\x31\\x65\\x47\\xdb\\x50\\x3b\\x38\\xfb\\x06\\xe5\\x17\\xa0\\xeb\\x0d\\xd3\\x91\\xa6\\x2b\\xff\\x0d\\x93\\x66\\x89\\xb7\\xa1\\xfb\\x15\\x27\\xe4\\xd0\\x00\\xef\\x62\\xe7\\x20\\x68\\x1a\\xfb\\x2e\\x4d\\x17\\x2f\\x5e\\x7c\\xc6\\x39\\x6f\\x40\\x23\\xf5\\x62\\xfe\\x39\\x4d\\x1a\\x8e\\x1f\\x4a\\x5f\\xcc\\xe7\\xc9\\xe7\\xf3\\xcf\\x0f\\xb6\\xb8\\x35\\xdd\\x97\\x5d\\xa7\\xe2\\xf3\\x05\\x5b\\xd3\\xc3\\x2e\\x8a\\x54\\xdc\\x40\\xe0\\xf7\\x8a\\x1e\\xdc\\x20\\x4d\\xc7\\xf4\\x4d\\x03\\x25\\x57\\x4d\\x93\\xb8\\xe0\\xd3\\xe9\\x2f\\x12\\xa8\\x19\\xbf\\x01\\xc7\\x1b\\x30\\x2e\\x02\\x23\\x6e\\xb4\\x5a\\x8b\\x9f\\x49\\x4a\\x19\\xd0\\x98\\xd7\\x94\\x9d\\xec\\x93\\x9a\\x26\\x75\\x7c\\x8a\\xa3\\xa9\\xa3\\xa8\\x1e\\xb3\\x32\\xef\\x24\\xfb\\x59\\xb2\\xbf\\x5b\\x3b\\x29\\x74\\xb1\\xef\\x9a\\x3b\\x75\\xdf\\xdd\\x95\\x6b\\x41\\x9f\\x5d\\xb0\\x5f\\x65\\x00\\x16\\x92\\x26\\x16\\x2f\\xa4\\xa3\\x0e\\x60\\x04\\xb1\\x45\\x7a\\x10\\x92\\xbf\\x4a\\x7e\\xf1\\x47\\x2b\\x5a\\x01\\x56\\xc7\\xcf\\x2e\\xd8\\xb7\\x92\\x67\\xb2\\xce\\xd9\\x8f\\x92\\xc3\\x11\\x75\\x76\\x1a\\xb1\\xc6\\x02\\x57\\x5b\\xcc\\x9f\\x7b\\x21\\xac\\x1b\\x8e\\xe2\\xbf\\x4a\\xe7\\xb2\\x07\\x81\\xd6\\x57\\xad\\x59\\x05\\x1b\\x3e\\x2d\\xba\\xce\\x48\\xb6\\x0b\\x56\\xf1\\x17\\xf3\\xa5\\x8f\\x49\\x2f\\xf9\\x54\\x65\\x2f\\x72\\xc3\\x66\\xe3\\x91\\x45\\xe8\\x24\\x2d\\xf2\\x94\\x90\\x04\\x5d\\xa4\\xcd\\xef\\x04\\x04\\xc4\\xc6\\xec\\x8f\\x68\\x5b\\x5e\\xce\\x44\\x25\\xb6\\x18\\xda\\xb2\\xeb\\x64\\xd7\\x2d\\x96\\x6b\\x75\\xd6\\x72\\xc3\\x8c\\xcc\\xfe\\x9b\\xb0\\xe6\\x82\\xb7\\xcc\\x79\\x97\\xfa\\xcc\\xcd\\xb4\\x76\\x5a\\x8a\\x76\\x02\\x91\\x88\\x6d\\x3d\\x2f\\xcc\\x66\\xb8\\x98\\x80\\x83\\xe5\\xf9\\x79\\x45\\x0f\\xe5\\xac\\x95\\xa5\\xe6\\x35\\x2b\\xcd\\x98\\xac\\x35\\x6f\\x58\\x39\\x13\\x72\\xcd\\x8d\\xb8\\x9a\\x36\\x53\\xef\\x34\\x2e\\x13\\xe9\\x1d\\xbe\\x0e\\x79\\xb0\\xcd\\xfd\\x2d\\x64\\x14\\x4e\\x6a\\x49\\xdf\\x49\\xd8\\x73\\xdf\\x79\\x7b\\xbc\\x7e\\xab\\xfb\\x87\\x37\\xde\\x38\\xb6\\xf3\\xf4\\x66\\xea\\xf1\\x8f\\x32\\xd3\\xd6\\x0a\\xcb\\x5a\\xb4\\xfd\\x28\\x51\\x59\\x6d\\x8d\\xc4\\xea\\x01\\xba\\x88\\x7a\\x59\\x2e\\x4b\\x84\\x04\\xaa\\xb3\\x32\\x77\\xd1\\xab\\x4c\\x89\\x56\\xdd\\x1c\\xc6\\x6f\\xc2\\x50\\x9e\\x43\\xa3\\xa6\\x39\\x2b\\xf8\\xb7\\x0e\\x9b\\x02\\xdc\\xb8\\xfb\\x63\\xe5\\x13\\xbc\\x8a\\x5d\\x6b\\x5a\\x20\\xff\\x81\\xb2\\x36\\xe4\\x74\\x8c\\x20\\xee\\xa2\\xa1\\x2e\\x96\\x78\\xac\\xf8\\x4e\\x76\\x9d\\xa1\\x1b\\x93\\x3c\\x70\\xf6\\xac\\xb0\\x0b\\x0c\\x05\\xa7\\xd5\\x6c\\xdd\\xd6\\xc0\\xb0\\x9e\\x6b\\x08\\xcf\\x7a\\xd1\\xa7\\x98\\x71\\xa6\\xf8\\xe2\\xbc\\x06\\x6c\\x95\\x96\\x57\\x33\\x6d\\xc6\\x67\\x33\\x20\\x42\\x6b\\x71\\x44\\xdc\\xc3\\xac\\xc8\\x67\\x75\\x2b\\xe3\\xde\\x46\\xb7\\x99\\x49\\xa5\\xcb\\xcd\\x23\\xa8\\x03\\x05\\xcb\\x2a\\xa6\\x98\\xcc\\x29\\x5b\\xbc\\x54\\x51\\xd4\\xa6\\x32\\x89\\x9b\\x81\\xa6\\xd2\\x64\\xc9\\xd1\\x7a\\x8c\\x55\\xbc\\xf1\\xc7\\x9d\\x7b\\xd3\\xea\\x44\\xb0\\x1d\\x00\\x37\\x84\\xd0\\xaa\\x66\\xba\\x18\\xc9\\x3e\\x34\\xe4\\xda\\x5b\\x20\\xa7\\xaf\\x8b\\xa6\\x94\\xb7\\xc9\\xfe\\x00\\x27\\xff\\xaa\\x2e\\x6f\\x4b\\x59\\x54\\xd6\\xff\\xba\\x14\\x4d\\xa2\\x7d\\xa2\\x33\\x88\\x90\\xcc\\xd3\\x27\\xf1\\x14\\x74\\x44\\x49\\xa4\\xa7\\x0f\\xc3\\x16\\x27\\x59\\xce\\x82\\xe9\\x9b\\x9c\\x1a\\x5a\\x37\\x33\\x37\\xb5\\xab\\x99\\xa9\\x2a\\x28\\x16\\xf1\\x72\\x36\\xa8\\x28\\x0c\\x40\\xfb\\x40\\x40\\x8a\\xa7\\xa3\\x27\\x3f\\x70\\xa0\\x35\\x65\\xf5\\x81\\x35\\x5a\\x05\\x16\\x1a\\x41\\xdc\\xfd\\x9a\\xeb\\x74\\xd4\\x5f\\x09\\x2c\\x16\\x65\\x08\\xe4\\x8d\\x47\\x1f\\x7c\\x32\\x5f\\xd6\\x2f\\xe5\\x52\\x86\\xdd\\x28\\xb1\\x1b\\x17\\x01\\x6c\\xf0\\x71\\x37\\x31\\x9d\\xd3\\xa4\\x09\\xd5\\xc9\\x2e\\xd5\\x1e\\x58\\x53\\xb6\\xe2\\x15\\x78\\x1d\\xe0\\xb7\\x74\\x1d\\xaf\\x4e\\xb6\\x9b\\x2e\\x0b\\xf0\\x09\\xc6\\xd9\\xc4\\xbf\\x35\\xfc\\x38\\x4e\\xa8\\x8a\\x09\\xe6\\xde\\xf1\\xc7\\x38\\x8e\\x05\\x33\\x13\\xbb\\x62\\xab\\x91\\x19\\x9c\\xfb\\x80\\xe9\\x45\\x1a\\x45\\xe1\\xad\\x9b\\xa4\\x60\\xbb\\xbe\\x79\\x80\\x33\\x94\\x3a\\xf6\\x03\\xa7\\x65\\x6e\\x94\\x15\\xb2\\xdc\\x26\\x15\\x83\\x25\\x3d\\xb1\\x25\\xc0\\xcd\\x81\\x52\\x06\\x4d\\x82\\x98\\x64\\xee\\x5b\\xee\\xde\\x9a\\xc6\\xd9\\x54\\x38\\x83\\xb7\\xd7\\x4e\\x27\\x40\\xe1\\x28\\xde\\xe5\\x30\\xd7\\x7e\\xaa\\xdb\\x34\\xbc\\x0b\\x96\\x0e\\x5d\\x9f\\xd0\\x71\\xf6\\xe7\\x67\\x02\\x69\\x16\\x42\\x49\\x94\\x66\\x03\\xc1\\xa0\\xf4\\x5c\\x64\\x65\\xce\\x42\\xc7\\x07\\x8b\\x55\\xb6\\x70\\x0f\\xb9\\x04\\x99\\xa5\\xc4\\x4d\\x01\\xed\\x51\\xa5\\x3b\\xa9\\x35\\x19\\xd0\\xb9\\xd8\\x7b\\xd4\\xd4\\xb9\\xe1\\x8c\\x08\\x0a\\xea\\x04\\xd4\\x90\\x7b\\xc9\\x0b\\x2b\\xb9\\x03\\x00\\xab\\x7b\\xb7\\xce\\x43\\xcb\\x4c\\xac\\x6d\\xd7\\xc5\\xc2\\x99\\x61\\x82\\x59\\x3b\\x57\\x14\\x4f\\xa2\\x4c\\x85\\xb9\\x3a\\xdc\\xcc\\xbe\\x90\\xe5\\x16\\xa6\\x58\\x8f\\xa0\\x2c\\x6a\\xb6\\x87\\xa1\\x79\\x64\\x3a\\x32\\x0e\\x15\\x14\\x6b\\xb0\\x0b\\xc2\\x85\\x3b\\x01\\x7b\\x49\\xaf\\x1d\\x5d\\x86\\xa8\\xb3\\xe2\\x64\\x3c\\x7f\\x44\\xb3\\x66\\x3f\\xca\\x4c\\xe6\\x1c\\x7e\\xc1\\x66\\x16\\xae\\xbc\\x26\\x5a\\x63\\x14\\x9a\\x13\\x21\\x27\\xe9\\x5e\\xa7\\xdf\\x4a\\x9f\\x51\\xd0\\xe4\\x5b\\x1f\\x40\\x71\\x70\\x84\\x20\\x8f\\xf7\\x83\\xd0\\x6c\\x89\\x6d\\xd0\\x48\\x74\\xed\\x5d\\x21\\xef\\x0c\\x53\\x74\\xcb\\xb3\\x9c\\x6d\\x07\\x78\\x32\\x12\\x22\\x26\\x48\\x1c\\x9d\\x5d\\x17\\xaf\\xf8\\xcd\\xec\\xb7\\x9e\\x15\\x89\\x05\\x23\\x1b\\xb3\\xef\\xa3\\x45\\xc5\\x6a\\xd6\\x4a\\x78\\xb8\\x8e\\xa2\\xb8\\xbf\\x81\\xc0\\x02\\x2b\\x0c\\xe9\\x00\\x87\\x37\\x2c\\xbc\\x09\\xf7\\x99\\xfe\\x9d\\xae\\xdb\\xc5\\xd4\\x4c\\x71\\x9f\\x32\\x9d\\xb2\\xcd\\x89\\x7d\\xeb\\x54\\x5a\\xff\\xd2\\xf9\\x39\\xbb\\xc1\\xca\\xbb\\xaa\\xda\\x7e\\xe9\\xba\\xb0\\x0e\\x00\\x4a\\x44\\x31\\x66\\x67\\xd8\\xfc\\xd8\\xb9\\x09\\x97\\x18\\x2f\\x02\\x7d\\x85\\xc1\\x85\\x02\\x35\\x6d\\x1f\\x45\\xbd\\xa9\\xd4\\x3d\\xcf\\xd6\\xfe\\x9a\\xf5\\x97\\xef\\x82\\xeb\\x5f\\x73\\x66\\x3d\\x1e\\x4f\\x63\\x94\\x05\\xce\\x7a\\xfe\\x21\\xc2\\x07\\xd1\\x81\\x9b\\x3b\\x96\\xf1\\x65\\xa5\\x56\\x1f\\xae\\x84\\x58\\x37\\x3f\\x14\\x8f\\xaa\\xd5\\x51\\xe4\\x0a\\x37\\x7c\\x91\\x8c\\x7b\\x10\\x5a\\x9a\\xae\\xad\\x2b\\x6a\\xb2\\xee\\xd1\\xc4\\x06\\xbe\\x97\\x10\\x94\\xc3\\xd5\\x13\\x4e\\xd2\\x7c\\xbb\\x3c\\x00\\x5d\\x5f\\x81\\xe6\\xae\\x2e\\xe5\\x87\\x5f\\xea\\x62\\x07\\x95\\x40\\x6c\\xd2\\x63\\x76\\xa2\\x2f\\xa3\\x2f\\x3b\\x9b\\xe7\\x21\\x75\\xc2\\x27\\x8b\\xf0\\xc9\\xaf\\xe1\\x93\\x17\\xb9\\x8b\\x43\\x6f\\x9d\\x57\\x10\\x32\\xc8\\x4c\\xf0\\xbf\\xf7\\xf6\\x67\\x86\\x45\\xb1\\x2b\\x03\\x3c\\x42\\xee\\x12\\x99\\x6f\\xc0\\x99\\x01\\x24\\x9a\\x78\\x9b\\x9a\\x16\\x09\\x92\\x10\\xc3\\x90\\x13\\x4a\\x57\\x4a\\xea\\x52\\xb6\\x62\\x79\\x8b\\x13\\xa9\\xa4\\x07\\x38\\xf6\\xb8\\x75\\x46\\xd1\\xc0\\xc5\\x5a\\x08\\x78\\x33\\x82\\xf0\\xbd\\x1e\\x71\\xbe\\x4f\\x64\\xfb\\x03\\x65\\x8e\\x60\\x16\\x0f\\x67\\xcb\\x9d\\x4b\\x24\\x1e\\x52\\x7a\\x9f\\xcf\\xc9\\x96\\xb2\\x2d\\xfa\\x92\\x5a\\x90\\xac\\xcd\\xc8\\xf0\\x99\\xee\\xe1\\xa9\\xc3\\xcc\\x62\\xc7\\xcf\\xd1\\x8c\\xec\\x66\\xf6\\x1b\\x2a\\x6d\\xbf\\x1a\\xd5\\x71\\xe9\\x8d\\xca\\xee\\x68\\x8f\\xdd\\xa2\\xd9\\x5d\\xa6\\x73\\x7a\\xb0\\x24\\xe5\\x73\\xcf\\x6a\\xd6\\xfc\\xd6\\x50\\xae\\xe2\\x9b\\x81\\xc4\\x50\\xb3\\x6d\\x6a\\xd6\\xe5\\x64\\x4e\\xd9\\x9d\\x59\\x44\\x31\\xe0\\x4b\\x5f\\xa2\\xe1\\x16\\x00\\xd9\\xbe\\xeb\\x62\\xf3\\x8c\\x5b\\x1e\\x90\\x6d\\xa3\\x28\\xae\\x80\\x11\\x77\\x29\\xf6\\x7f\\x00\\x40\\x51\\x77\\x9d\\x9b\\x63\\xe6\\x2e\\x5d\\x24\\xf3\\x01\\x8c\\x7d\\x5d\\x87\\xb8\\x20\\x81\\x32\\xa9\\xae\\xcd\\xbe\\xa8\\x15\\x98\\x1a\\x95\\xb2\\xd4\\x41\\xbe\\x83\\x65\\x89\\x78\\x5d\\xb3\\x30\\x1f\\xdf\\xaf\\x94\\x6c\\x74\\xdd\\xae\\xb4\\xaa\\x93\\xba\\x66\\xe6\\xbd\\x23\\xa8\\x20\\x34\\x92\\x46\\x98\\xb3\\x4a\\x6c\\xb9\\xf5\\x1e\\x33\\x8c\\x06\\x97\\xcc\\xc2\\x9f\\x19\\xbe\\x02\\xac\\x0f\\x9a\\x7b\\xf0\\x94\\x47\\xf3\\x6c\\x64\\xf2\\xb8\\x0d\\x55\\x84\\x6d\\xb5\\xbe\\x88\\xf7\\x56\\x16\\x03\\x49\\x0b\\x0b\\x91\\x6b\\x5e\\xe3\\x25\\xc8\\x2f\\x6a\\x24\\x57\\xc9\\x5e\\xae\\x3a\\xb0\\x55\\x5b\\x1f\\xab\\xb6\\xb1\\x6d\\x3b\\xdc\\x39\\x7d\\x25\\xbd\\xe7\\x2a\\x78\\xfb\\xde\\x0a\\x8d\\x18\\xe2\\x36\\x98\\x61\\xf8\\x8e\\x87\\xfe\\xed\\x9f\\x1f\\x58\\xdd\\xca\\x63\\x23\\x42\\x26\\xff\\xd5\\xc7\\x30\\x45\\x35\\xdc\\xb6\\xd8\\xc5\\x80\\x72\\x0c\\x6d\\x7a\\x63\\xa9\\x96\\x05\\x14\\xcc\\x5d\\x8c\\xaf\\x71\\xee\\xe7\\x82\\xcd\\xd9\\xe2\\xf4\\x33\\x9a\\xb8\\xc0\\x60\\xea\\x9e\\xc7\\x8e\\x94\\xe7\\x3d\\xc9\\xe9\\x73\\x3d\\xed\\xef\\x86\\x85\\x34\\x5a\\xec\\x6c\\x88\\xa1\\x30\\xa9\\x8f\\x25\\x83\\xe2\\xa7\\x2b\\xdf\\x06\\x80\\x81\\x83\\x8b\\x46\\xe8\\x14\\x7e\\x3f\\x49\\x49\\xff\\xdc\\x72\\xa9\\xec\\x68\\xa0\\x06\\xe3\\x31\\x7c\\xc6\\xc2\\xf2\\xf8\\xde\\x87\\xe5\\x1c\\x79\\xa8\\xbb\\x69\\x3f\\x30\\xa0\\x15\\x50\\xeb\\x4c\\x60\\x97\\x74\\x1d\\xde\\x3b\\x97\\x6f\\x44\\x9a\\x0d\\xd3\\x5c\\x4e\\xc3\\xcf\\xd8\\xdd\\xc6\\x8a\\xdd\\x90\\xce\\x08\\xa1\\xcc\\xec\\x29\\x00\\xfe\\x03\\x70\\x6d\\x3a\\x99\\xd3\\x64\\xf8\\x99\\x31\\xc0\\x02\\xb8\\x2f\\x3c\\x00\\x39\\x7d\\xf9\\x47\\x29\\x86\\x69\\x19\\xd6\\x2e\\x3e\\x51\\xbd\\x00\\x91\\xcc\\xbe\\x37\\x04\\x1e\\xb3\\x89\\xb4\\x47\\x4e\\x1c\\x54\\xdf\\xec\\x7e\\xf7\\x53\\x01\\xd3\\x6a\\x5c\\x6b\\xd8\\xdf\\xef\\x0f\\xbe\\x63\\x6c\\xff\\xa1\\x23\\xe3\\xb5\\xda\\xf1\\x13\\xc9\\x3f\\x88\\x8d\\xe6\\xfb\\x71\\x6b\\x6d\\x8d\\x43\\xf0\\x3d\\x48\\x18\\xc4\\x9b\\x38\\xf5\\x71\\x7a\\x08\\x7c\\x49\\xec\\x16\\xc5\\x70\\x43\\x62\\xb8\\x3d\\x8d\\xfd\\x42\\xac\\x0b\\x32\\x7a\\x87\\x2c\\x4f\\xb8\\x2e\\x0e\\x56\\x47\\x1c\\x12\\x5d\\x77\\x02\\xc4\\x31\\x7d\\xc2\\x81\\x08\\x5d\\x19\\x0b\\x60\\x8d\\x45\\x5c\\x5a\\x9d\\x16\\xc3\\x82\\xbd\\x5f\\xa3\\x8f\\x86\\x5e\\xac\\xc5\\xb5\\x3a\\x81\\xb1\\x16\\xae\\x05\\xf6\\xe8\\x4c\\x4a\\x0b\\x58\\xe3\\xf0\\x1a\\xd9\\xdc\\x6d\\x79\\x18\\x05\\xd2\\x7f\\xd5\\xc3\\x3f\\x6a\\x84\\xbd\\xac\\xe9\\x81\\xd9\\x67\\x4f\\xc1\\xb9\\xc1\\x01\\xd5\\xd7\\x86\\x8d\\xf3\\xae\\xc0\\xe0\\xce\\xd5\\xec\\x84\\xc0\\xf0\\x29\\xb5\\x91\\x2f\\xc6\\x7b\\x26\\x17\\x35\\x12\\x20\\x14\\xf4\\xcd\\xab\\x74\\x59\\xcc\\x36\\xa5\\x2c\\x9b\\xbb\\xf0\\x1d\\x3d\\x33\\xa2\\x70\\x0c\\x90\\x9a\\x71\\x19\\x04\\x9b\\x01\\x5f\\x77\\xcc\\x0f\\xe0\\x1d\\x41\\x46\\x0f\\xc5\\xe4\\xca\\x2b\\x58\\xd9\\x75\\x0a\\x79\\x51\\xb0\\x1e\\x0c\\xc2\\x8e\\x16\\x96\\xfe\\xc8\\xa8\\xda\\x4c\\xac\\xa0\\x63\\x19\\x7c\\x10\\xfa\\xfd\\x84\\xa1\\x37\\x7c\\x7e\\xe9\\x04\\x24\\xb8\\x63\\x3a\\xae\\x7d\\x6d\\x4e\\x39\\x97\\x59\\x9f\\x2e\\xe7\\xed\\x80\\x91\\xd9\\x27\\x0b\\xbb\\x46\\x5a\\xd6\\xb9\\xeb\\x0c\\xef\\xcc\\xb2\\xdc\\x6d\\x5d\\x27\\x43\\x9e\\x4e\\xe6\\xf6\\xbc\\x78\\xc2\\xcd\\x6c\\x98\\x92\\x5e\\x50\\x20\\xd0\\x2d\\x20\\x10\\x37\\x61\\x1c\\x1d\\xb3\\x50\\xc2\\x29\\x06\\x2d\\x00\\x27\\xcd\\xfc\\x42\\xbd\\xa3\\xa8\\x8c\\xcd\\x4d\\xe0\\xbb\\x6c\\xad\\x52\\x8e\\x32\\xfe\\x55\\xf6\\x28\\x6a\\xee\\x25\\x8c\\xbf\\xe5\\xc2\\x7d\\x2c\\xe5\\xf9\\xf9\\x92\\x2a\\xf3\\x8a\\x99\\x8d\\x13\\x0c\\xbc\\x89\\xca\\x7c\\xa8\\x2b\\x3c\\x82\\xda\\x4e\\x60\\xe6\\xc4\\x90\\x60\\x06\\x1f\\xf6\\x68\\x4d\\x99\\xe6\\x93\\x05\\x53\\xce\\x66\\x45\\xb2\\x05\\xa5\\x4b\\x38\\xa5\\xaf\\x01\\x29\\x77\\x2d\\x90\\x54\\x18\\x80\\x10\\xc2\\xb6\\x61\\xc7\\x9f\\xb2\\xb5\\x70\\x24\\x8e\\x05\\xb7\\xa4\\xfd\\x14\\x5d\\x99\\x1c\\xd2\\x8b\\xd5\\x5c\\x66\\x8e\\xba\\x24\\x67\\x65\\x70\\x8b\\xc4\\xce\\x87\\xd4\\xae\\xd3\\xba\\x57\\xd3\\x00\\x65\\xdc\\xa0\\x04\\xff\\xcd\\xb0\\xe2\\xd0\\xc5\\x65\\x14\\x81\\xaa\\xd5\\xfe\\xb3\\x99\\x87\\x77\\xfd\\x86\\x69\\x48\\xe3\\x09\\xad\\x91\\xd0\\x1a\\x09\\x6d\\x23\\x9c\\x1a\\xfa\\xea\\xdc\\x0f\\x7d\\xc4\\x48\\xd6\\x21\\x7d\\xcd\\x5a\\xe3\\x69\\xab\\x81\\xb6\\xc0\\xbc\\x42\\x10\\x31\\x0d\\xf1\\x2c\\xeb\\x4c\\x83\\x89\\xbd\\xce\\x7d\\x7d\\x82\\x9b\\xa0\\x3a\\x6e\\xfc\\xbb\\x46\\x1e\\x86\\xa2\\x71\\x39\\xd4\\x77\\xf0\\x3d\\x72\\x9f\\x89\\x38\\xb0\\xd2\\x42\\xc8\\x69\\x84\\x94\\x5b\\x7e\\x0e\\x8c\\x31\\x7f\\x71\\xae\\xa9\\xe4\\xff\\x00\\xb1\\xa2\\xce\\x1c\\xee\\xdb\\x54\\xe6\\xbc\\xce\\x7a\\x00\\x37\\x99\\xf3\\x1e\\xab\\xc2\\x4c\\x2b\\x8f\\x86\\x54\\x5b\\x08\\x43\\x11\\xe0\\x4f\\xed\\x9b\\xaa\\x5c\\x8b\\xaf\\xd4\\xbd\\x4c\\xca\\x3a\\xb6\\xc2\\x08\\x83\\xc4\\x9f\\x77\\x90\\x04\\xfb\\x80\\x4d\\xba\\x46\\x98\\x5e\\x93\\x6c\\xb7\\x0b\\xca\\xcc\\x1a\\xfc\\xbd\\xec\\x31\\x73\\xb1\\x8c\\x03\\xa4\\xbf\\x6e\\x75\\xf0\\x00\\x4a\\xc2\\x07\\xb6\\xa0\\xfe\\x99\\x2d\\xee\\xf0\\xaf\\x83\\xea\\x1c\\x2f\\xf0\\x6e\\xdd\\xd6\\x6e\\xb5\\x46\\x80\\x28\\xb3\\xf4\\xf2\\xb1\\xe9\\x23\\x6a\\x2a\\xc5\\x09\\xaf\\x51\\x91\\x0e\\x17\\xe1\\x64\\xef\\xed\\xa2\\x65\\xd7\\x4d\\x64\\x14\\x69\\x04\\xfb\\x0c\\xd4\\x30\\x51\\x24\\x7a\\x9d\\xa9\\x60\\xc8\\x4b\\x26\\x98\\x55\\x5b\\x80\\x88\\x00\\xd0\\x22\\x8a\\xb4\\x5f\\x8f\\x6b\\xcf\\x46\\x72\\xe0\\x4d\\xd4\\x66\\x93\\xce\\x93\\x1e\\x1a\\xd6\\x41\\xd1\\xf6\\x7c\\x6b\\x7f\\x99\\xf4\\x97\\x66\\x29\\x42\\xde\\xc6\\x34\\xb7\\x49\\x83\\xeb\\xac\\xcf\\x95\\x27\\x41\\x7a\\x1f\\x67\\xc3\\x41\\xd2\\x3a\\xad\\x4a\\xdd\\xef\\x0a\\x10\\x85\\xd6\\xdd\\xe3\\xc2\\x50\\xcf\\x54\\xb5\\xe6\\xb5\\xd7\\xf1\\xb1\\xfe\\x92\\x0f\\x30\\x9b\\x42\\x6f\\x4e\\xf3\\x0e\\x8d\\x22\\xf8\\x1f\\x4e\\x55\\x5b\\xf4\\xd1\\x8a\\x65\\xd3\\x0d\\xfb\\x8f\\xbc\\x09\\xc8\\x37\\xfb\\xaa\\x94\\xa2\\x38\\x19\\x43\\x5b\\x1c\\x18\\x48\\x3e\\x27\\x9e\\xcd\\xfe\\xfb\\x1c\\x0e\\x04\\x56\\xaa\\x89\\xc5\\x73\\xb8\\x7c\\xf3\\x3d\\xbd\\x78\\x01\\x5c\\x0f\\x2e\\x4a\\x3c\\xcb\\x41\\x45\\xca\\x8f\\x98\\x63\\xa7\\x39\\x5d\\x7d\\x18\\xef\\xda\\x02\\xd6\\x41\\xbb\\xa8\\xb9\\x30\\x71\\xfd\\x79\\x8c\\x8f\\xac\\x6d\\x55\\x6d\\x82\\xcb\\xac\\xce\\x99\\x88\\x69\\xd7\\x99\\x2b\\x5c\\xd8\\xa5\\x5b\\x64\\xea\\xf3\\x73\\xb6\\xe8\\x5f\\x82\\xb0\\xc0\\x0f\\xb8\\x18\\xc1\\x29\\x8f\\x3e\\x04\\x3a\\xdc\\xc1\\x5e\\x2b\\x62\\x58\\xf0\\xb1\\x22\\x4e\\xfb\\x06\\x48\\x54\\x0f\\x28\\x70\\xc4\\xd4\\xbe\\x5b\\x4a\\x2d\\xea\\x8f\\x45\\xc5\\x17\\x9f\\xb1\\xfe\\x71\\xd8\\xae\\x9f\\x65\\xd7\\xc5\\x3f\\x4b\\xde\\x08\\xfd\\xbd\\xcd\\x1c\\x7b\\x02\\x0c\\x0b\\xa1\\xae\\x54\\x53\\xc7\\x81\\xce\\xac\\x12\\x45\\xed\\xdf\\xfe\\x59\\x52\\xf6\\x33\\xee\\xc2\\x2e\\x3f\\x8c\\x3e\\xbe\\x6f\\x2a\\x75\\x9f\\xfc\\xff\\xf3\\x39\\xdb\\x14\\x8d\\x4e\\x5e\\xcc\\xe7\\x7d\\xe4\\x7f\\x88\\x16\\xe0\\x59\\x75\\x38\\x1f\\xfd\\x5f\\x22\\x58\\xd9\\x35\\x60\\x7d\\xca\\x63\\xd9\\x86\\x0a\\xf1\\x7d\\x16\\x1e\\x25\\x78\\xe8\\x7e\\xce\\xb5\\x3d\\x71\\xb2\\x3d\\xe1\\x78\\x4d\\x84\\xba\\xe2\\x23\\xe3\\xbf\\xa3\\xe0\\xaf\\x61\\x41\\x41\\xf4\\xae\\xe3\\x68\\xee\\xb6\\x40\\x23\\x9f\\x21\\x3c\\x56\\x18\\x2b\\x78\\xe9\\x63\\x7c\\xf0\\xbd\\xe1\\xb8\\xe6\\xac\\x12\\x1b\\x9d\\xcc\\x0f\\xac\\x70\\xd1\\x80\\x59\\xc3\\x8b\\x28\\x2a\\x86\\xd0\\xb8\\x18\\xf8\\xcf\\x03\\x2b\\x37\\x63\\x6b\\x43\\x16\\x06\\x86\\x66\\x05\\x4d\\x63\\xbb\\xbe\\x14\\x46\\xe2\\xfe\\x52\\xb5\\xd2\\x6c\\x1e\\x97\\x55\\x29\\xa4\\xfe\\x49\\xac\\xf4\\x84\\xf3\\x12\\x34\\xe8\\x4f\\x3c\\x8f\\x21\\xa4\\x91\\xaa\\xe3\\x86\\x32\\xa8\\xa8\\x9a\\x69\\xb5\\x9b\\xc6\\xf5\\x6c\\x57\\xdc\\x8a\\x5f\\xb1\\x61\\x30\\xca\\x9d\\x38\\x43\\xcf\\x63\\x39\\x5b\\x41\\x01\\xd7\\x6a\\xd7\\x75\\x73\\x8a\\x4d\\x43\\xa4\\x57\\xf7\\xe6\\xbb\\xf1\\x9b\\x46\\xe2\\x09\\x5e\\x35\\xb7\\xe6\\xdd\\x03\\x4d\\x94\\x19\\x1c\\xb6\\x73\\xf6\\x9e\\x98\\xa7\\x03\\x6d\\x05\\x38\\xa7\\x16\\x2f\\x8d\\xd0\\x25\\x69\\x74\\xa1\\xcb\\x15\\xb1\\x76\\xc4\\x0e\\x8f\\xcc\\xe5\\xe0\\xa4\\x16\\x55\\xa1\\xcb\\x8f\\xc2\\x6a\\xd4\\x4b\\x0c\\xde\\xa6\\x78\\x69\\x3f\\x1b\\xfb\\x23\\x03\\x53\\x32\\x18\\xed\\x3b\\x94\\x6a\\x93\\x00\\xa0\\x6f\\x10\\x0a\\xa9\\x8f\\xa9\\x61\\x15\\x4d\\x9b\\xf2\\x41\\xac\\xe1\\x06\\x26\\xac\\x0b\\x48\\x83\\x62\\x2e\\xcb\\x0a\\xd6\\xe4\\xf4\\xe5\\xf9\\x82\\x55\\x66\\x0a\\xac\\xcc\\xcf\\x8e\\x6d\\x96\\x6d\\x1a\\xaf\\x78\\x19\\x40\\xbe\\x81\\x36\\xdb\\xf0\\xd6\\x1b\\xbe\\x42\\xd8\\xdd\\x24\\xde\\x0d\\x61\\xaa\\xbb\\x6e\\xce\\x36\\x61\\x52\\x43\\x81\\xf6\\x47\\x3b\\x93\\x61\\x36\\xdc\\xb9\\x91\\x64\\x8a\\xa2\\x2a\\x7d\\x02\\x90\\x21\\x10\\xad\\xd6\\xfc\\xc7\\xbb\\x73\\xec\\xec\\x5d\\x9f\\xc5\\x7c\\x1b\\xf2\\x00\\x6a\\x2f\\xde\\x9f\\xdb\\x9e\\xdd\\x50\\x46\\x5a\\xb3\\x8a\\x83\\xba\\x3a\\xd5\\x33\\xb8\\xe9\\x8f\\xa8\\x92\\x12\\x08\\x56\\xa1\\x30\\x1a\\x08\\x77\\x3e\\x24\\xc9\\xf0\\xfc\\xd7\\x4e\\x03\\x1f\\x7d\\x9c\\xc9\\xf1\\x54\\xa9\\xdd\\x54\\x71\\xd2\\x86\\x27\\xb7\\x8f\\x16\\xd1\\x0f\\x83\\x54\\xf3\\xfa\\xa9\\x31\\x9e\\xd8\\x58\\xe6\\xb6\\xbf\\xdf\\x80\\x3c\\x1d\\x1b\\x3e\\x33\\x48\\x05\\xab\\xad\\x3e\\x94\\x1c\\x40\\x7f\\x82\\xc7\\x3a\\xa0\\x1f\\x7a\\xac\\xbc\\x18\\x94\\xdb\\x86\\x6e\\x6e\\x84\\x40\\x4e\\x44\\x9f\\xbb\\x56\\x3b\\x0f\\xa0\\x6b\\xb2\\x01\\xe1\\x4e\\xe4\\x33\\xc3\\xbf\\xcf\\x68\\xa7\\x1e\\xf6\\x09\\x94\\x7d\\xee\\x1b\\x88\\xcc\\x21\\xc4\\x5c\\x99\\xb8\\xa9\\x66\\xfb\\x05\\x8b\\x1f\\x67\\x85\\x38\\x2c\\xd6\\x7e\\x84\\x85\\xed\\xfd\\xb7\\xc0\\xd7\\x8e\\xa8\\x75\\xca\\xf2\\xd9\\x86\\x7a\\x07\\xfe\\x28\\x0c\\xdd\\x8e\\x54\\x03\\xa7\\x52\\x37\\x31\\x4f\\xcc\\x5b\\x2a\\x3c\\x4d\\xf1\\x13\\x5e\\xcb\\x78\\xe2\\x5b\\x87\\x10\\xa2\\x62\\xdf\\x2f\\x29\\x09\\x09\\x56\\x1b\\xc2\\xfc\\x2a\\x85\\xe9\\x76\\xfd\\x1a\\x82\\x01\\xfa\\xb5\\xe4\\xe2\\x57\\x67\\xf1\\x4c\\x97\\x47\\xec\\x69\\xf9\\xaf\\x63\\x7b\\xf4\\x26\\x74\\x66\\x01\\x0d\\xd0\\x52\\x61\\xeb\\x28\\x52\\x14\\x2f\\x53\\x74\\x57\\xf0\\x0d\\x1a\\xb7\\x2c\\x2b\\xf3\\x44\\x98\\x9f\\xb8\\x48\\x0b\\xbf\\xcc\\xc6\\x75\\x7a\\x13\\x17\\x34\\x58\\x3c\\x63\\x9a\\x28\\x56\\xa7\\x2a\\x09\\xd2\\xaf\\x0d\\x73\\x41\\xe1\\x75\\xae\\xcc\\xbe\\xc3\\x4c\\xad\\xc6\\x5b\\x9a\\xc5\\x7d\\x1f\\x00\\x6e\\xd7\\x83\\x6d\\xb5\\x6c\\x10\\xaa\\x37\\x16\\x34\\x15\\xc9\\xff\\x19\\x9c\\x59\\xa5\\x7d\\x7c\\xce\\x52\\xdc\\x77\\x9d\\xb0\\xea\\x28\\x7c\\x23\\x99\\x2c\\xbc\\x04\\x62\\x63\\x5c\\x78\\x20\\x5c\\x04\\x80\\xb6\\x9a\\xf9\\x71\\x17\\xb8\\x97\\x3c\\x80\\x23\\x44\\x8a\\x23\\x53\\xe1\\x9c\\x11\\x12\\xc9\\x08\\x49\\x08\\x84\\x32\\x24\\x53\\x11\\xbc\\x0f\\xaa\\x29\\xe8\\xb0\\x32\\xec\\xb0\\xbe\\x37\\xc6\\x04\\x30\\x1c\\x70\\xa0\\xbc\\xf2\\xca\\x8a\\x92\\x22\\xfe\\x7a\\x5c\\xda\\x10\\x00\\x0a\\x5d\\x4c\\x9c\\x44\\x96\\x38\\xd4\\x66\\xdf\\xb5\\x4f\\x8c\\x85\\xd0\\x6e\\x7b\\x79\\x4c\\x55\\x49\\x53\\xf9\\x74\\xff\\x13\\xdc\\x11\\xc9\\x54\\xe4\\x40\\xfa\\x20\\xf4\\x3f\\x18\\x50\\x8f\\x39\\x00\\x6f\\x1b\\x23\\x01\\xad\\x18\\x0c\\x95\\x55\\x55\\x99\\xf7\\x99\\x1a\\xdc\\xb9\\x0c\\x38\\xc9\\x5c\\x86\\xe1\\x5d\\xff\\x71\\x4a\\x93\\x92\\x63\\xf0\\x18\\xc0\\x3e\\x66\\x35\\x6b\\x68\\xe2\\xf4\\xa1\\x78\\x8c\\xd1\\xd0\\x03\\x93\\xac\\x48\\xcb\\x44\\xb3\\xc2\\x8f\\x2b\\x88\\x4c\\xf0\\xfb\\x8f\\xad\\xa8\\x1f\\xb9\\x98\\x3d\\xe3\\x37\\x8c\\x38\\xd2\\xf4\\x02\\xd0\\x5a\\x6c\\x4a\\x29\\xa2\\x08\\xff\\xcf\\x8a\\xed\\x3a\\xbc\\xb6\\xaf\\xbb\\xa4\\x98\\x20\\x94\\x05\\x61\\x21\\x00\\x54\\x3f\\x62\\xcd\\x37\\xe3\\x7b\\xa0\\x2e\\x5d\\xfe\\xdf\\x00\\x00\\x00\\xff\\xff\\x90\\xb4\\x76\\x84\\xd5\\x69\\x01\\x00\"\n\nfunc assetsClientStaticJsJquery191MinJsBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticJsJquery191MinJs,\n\t\t\"assets/client/static/js/jquery-1.9.1.min.js\",\n\t)\n}\n\nfunc assetsClientStaticJsJquery191MinJs() (*asset, error) {\n\tbytes, err := assetsClientStaticJsJquery191MinJsBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/js/jquery-1.9.1.min.js\", size: 92629, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticJsJqueryTimeagoJs = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\x94\\x18\\x69\\x73\\xdb\\x36\\xf6\\xbb\\x7e\\xc5\\x0b\\xc7\\x89\\x48\\x47\\x26\\xe9\\x23\\x9e\\xae\\x64\\x35\\xed\\xe6\\xd8\\xcd\\x4c\\x9c\\xce\\xb6\\xee\\xec\\xcc\\xda\\x9e\\x2d\\x4c\\x3e\\x51\\x48\\x48\\x80\\x01\\x40\\xc9\\x6a\\xeb\\xff\\xbe\\x83\\x83\\x24\\xa8\\x63\\xdb\\x7e\\x12\\xf5\\xee\\x1b\\x0f\\x48\\x8e\\x8f\\x47\\x70\\x0c\\x37\\xb4\\x42\\x52\\x70\\xa0\\x12\\x08\\x7c\\xfe\\x57\\x83\\x62\\x03\\x75\\xd9\\x14\\x94\\x81\\x5a\\x12\\x05\\x15\\xf9\\x82\\x12\\xa8\\x02\\x24\\x72\\x03\\x8a\\x83\\x6c\\xea\\x9a\\x0b\\x05\\xa4\\x51\\xbc\\x22\\x8a\\x66\\xa4\\x2c\\x37\\x5a\\x52\\x53\\xe7\\x44\\x51\\x56\\xc0\\xa2\\xf9\\xf5\\xd7\\x0d\\x28\\x5a\\xa1\\x54\\xa4\\xaa\\x25\\x84\\x18\\x17\\x31\\x04\\x17\\x50\\x51\\xd6\\x28\\x94\\x40\\x0a\\x1e\\x00\\x17\\x10\\x90\\x07\\xde\\x28\\x38\\x85\\x9c\\x6c\\x0c\\x30\\x8a\\x47\\x60\\xcc\\xfa\\x8e\\x91\\x0a\\x8d\\x0c\\x52\\x70\\x03\\x58\\xa1\\x90\\x94\\x33\\x38\\x8d\\xcf\\xe3\\xd4\\x40\\x04\\x7e\\x6d\\xa8\\x40\\xd9\\x9a\\xbd\\x3a\\x8d\\xcf\\xe2\\xf3\\x97\\x06\\x47\\x1a\\xb5\\xe4\\x02\\x7e\\xdc\\x10\\x06\\xd7\\xd9\\x3f\\x90\\x08\\x63\\xe3\\x77\\x25\\xcd\\x90\\x49\\x84\\xeb\\x0f\\x37\\xf0\\xd1\\x7d\\x9f\\xc0\\x52\\xa9\\x7a\\x9a\\x24\\xeb\\xf5\\x3a\\xe6\\x35\\x32\\xc9\\x1b\\x91\\x61\\xcc\\x45\\x91\\x38\\x7a\\x99\\x54\\x54\\x9d\\xb8\\x3f\\x71\\xbd\\xac\\x9d\\x99\\xef\\xb9\\x80\\x46\\x92\\x02\\x81\\xb0\\x1c\\xf0\\x91\\x54\\x75\\x89\\x72\\x02\\x2b\\x2a\\xa9\\x9a\\x6a\\x0a\\x27\\xda\\x79\\x12\\x6f\\x88\\xa8\\xe3\\x8c\\x57\\x89\\x13\\xf0\\x86\\xd7\\x1b\\x41\\x8b\\xa5\\x82\\x30\\x8b\\xe0\\x2c\\x4d\\xbf\\x39\\x39\\x4b\\x4f\\xcf\\x27\\x03\\xcb\\x21\\x14\\xfa\\xdf\\xc9\\x2d\\x51\\xf7\\x27\\x50\\x65\\x85\\x01\\xde\\x1e\\xe7\\x5c\\x1d\\xdf\\x03\\x17\\x45\\x34\\x82\\xe3\\x64\\x34\\x0a\\x17\\x0d\\xcb\\x94\\x0e\\x52\\xb8\\x20\\x99\\xe2\\x62\\x13\\xc1\\x6f\\x23\\x00\\xba\\x80\\x50\\x6d\\x6a\\xe4\\x0b\\xc8\\x71\\x41\\x19\\xc2\\x7c\\x3e\\x87\\x71\\x4b\\x3d\\x86\\x17\\x2f\\x1c\\x22\\x26\\x55\\x6e\\x79\\x00\\x92\\x04\\xbe\\xbf\\x7e\\x1b\\xc3\\x8f\\x58\\x50\\xa9\\x50\\x00\\x91\\x40\\x18\\x10\\xc6\\xd9\\xa6\\xe2\\x8d\\x84\\x8a\\xe7\\x4d\\x89\\xb1\\x21\\xb6\\xec\\xe1\\xed\\xf8\\xf3\\x57\\x9d\\x8b\\xf1\\xfd\\x04\\x5a\\x13\\x66\\x23\\x80\\x27\\xc0\\x52\\x62\\x2f\\xf8\\xef\\x82\\xaf\\x25\\x0a\\x28\\x4a\\xfe\\x40\\x4a\\x69\\xc0\\x8e\\x3e\\xb4\\xd9\\xb4\\x6c\\xa3\\x27\\xcf\\xa7\\x23\\x6b\\xd9\\x51\\xec\\x82\\x09\\x73\\x68\\x91\\x61\\x57\\x6d\\xad\\xf5\\xc6\\xe7\\x16\\x08\\x94\\x49\\x45\\x58\\xa6\\x23\\xf0\\x96\\x28\\x6c\\x89\\x00\\x04\\xaa\\x46\\x30\\xa0\\xec\\xdf\\x5c\\xe4\\xd2\\x13\\x33\\x33\\x04\\xce\\x6e\\x2f\\x80\\xbd\\x4c\\x1d\\xc3\\x40\\x2a\\x41\\x59\\x11\\x1c\\x14\\xd8\\x19\\x1b\\xd7\\x44\\x48\\xf4\\x14\\xfc\\x59\\x0d\\xac\\xa9\\x1e\\x50\\x1c\\xd6\\xc0\\x70\\x6d\\x7c\\x3a\\x28\\xfa\\x0f\\x2d\\xcb\\x89\\x42\\xfd\\xbd\\x47\\x82\\xce\\x81\\xfe\\x5c\\x11\\x01\\x47\\x0a\\xe6\\x7d\\xf0\\x67\\x23\\x93\\x0a\\x7c\\x54\\xc8\\xf2\\x5e\\xd8\\xc4\\xa9\\x93\\xa8\\xf4\\x2c\\x90\\x53\\x4f\\xfd\\x42\\xa0\\x5c\\x5e\\xd3\\xb2\\xa4\\x72\\x0a\\x97\\x69\\x9a\\xa6\\x13\\x87\\x23\\x65\\xc9\\xd7\\xef\\x1b\\xd5\\x08\\x9c\\xc2\\x82\\x94\\x12\\x5b\\x4c\\xc9\\x33\\x52\\xe2\\x0d\\x55\\xe5\\x36\\x26\\x6b\\x14\\x5f\\x2c\\xa6\\xd0\\x09\\xb1\\xa9\\xf0\\x34\\x02\\xd4\\x02\\x17\\xf4\\xf1\\xfb\\x82\\x4f\\x81\\x35\\x65\\x39\\xd9\\x42\\xbc\\x17\\xbc\\xfa\\xc4\\xd7\\xdb\\x48\\xd9\\x2c\\x5a\\xae\\x40\\x0f\\xa5\\x6d\\x4c\\xc7\\x16\\x2c\\x04\\xaf\\x80\\xf1\\xb5\\x4f\\x82\\x19\\x67\\xb9\\x9c\\x42\\x50\\xa2\\x94\\x7a\\x86\\x32\\x20\\x6e\\xf0\\x79\\x64\\x16\\x30\\x6d\\x27\\xe0\\x41\\x0a\\x2d\\xe8\\x79\\xde\\xfe\\xf1\\xd0\\x4b\\xde\\x88\\x9e\\x9d\\x99\\xff\\x5b\\x68\\xd9\\xe1\\x9f\\xe7\\x16\\xe0\\x11\\xe4\\x64\\xa3\\xd1\\xfa\\x77\\x08\\x75\\x1a\\xf5\\x97\\x6f\\x0d\\x67\\x6a\\xe9\\x9b\\xab\\xff\\x6f\\xe3\\x5b\\x63\\xcd\\xb7\\x87\\xdc\\x20\\xf1\\x6c\\x35\\x7f\\xb7\\xb0\\x8e\\xd3\\x7c\\x7a\\xa8\\x35\\x17\\xf9\\x4f\\x58\\x13\\x41\\x14\\xd7\\x12\\xc0\\xc3\\xd9\\xbe\\x90\\x53\\xb8\\xbd\\x77\\xb0\\x27\\x5b\\xb3\\x96\\xc4\\x95\\xf9\\xb4\\x1f\\x11\\x39\\xb5\\x33\\xc0\\x56\\x60\\xdf\\x4f\\xa6\\xb6\\x4b\\x98\\x83\\x5a\\x52\\x19\\xb7\\x85\\x1b\\xbb\\x72\\x9a\\x79\\x54\\xb6\\x6a\\x74\\x17\\x94\\x71\\x57\\x5a\\x3e\\x81\\xad\\x0f\\x4b\\xd0\\x55\\x51\\x4b\\x60\\x5a\\x7c\\xa0\\xc2\\x2b\\xfb\\xc8\\xab\\x5a\\x4d\\x38\\x34\\x16\\xae\\x20\\xf5\\x29\\x60\\x8f\\x29\\xae\\x2a\\x67\\x1e\\xd1\\xae\\x39\\x3b\\x44\\x4f\\x5d\\xec\\x7c\\x37\\x6c\\x0d\\xc3\\x1c\\xae\\x89\\x5a\\xc6\\xe4\\x41\\xee\\x04\\x2f\\x81\\xd3\\x34\\x4d\\x7d\\xdf\\xdb\\xb3\\x7d\\xde\\xb1\\x27\\x70\\x39\\xa0\\x30\\x25\\x08\\xf3\\x8e\\x72\\x1b\\xaf\\x4b\\x0e\\xe6\\x8e\\x2c\\x81\\xb3\\x0b\\x1f\\x69\\x4a\\x03\\xe6\\x96\\x28\\x81\\xf3\\xcb\\x57\\xb3\\xd6\\xe4\\xee\\x84\\x90\\xcd\\x83\\x54\\x54\\x35\\x0a\\x43\\x9b\\xbd\\x1f\\xc4\\x7b\\x87\\x9b\\xb8\\x7a\\xf1\\xa3\\x68\\x5c\\x35\\x74\\x66\\xb0\\x51\\xd9\\x12\\xef\\x70\\x47\\xf0\\x1a\\xb6\\x61\\xa1\\x15\\x38\\x81\\xed\\xd0\\x4c\\x77\\x48\\x67\\x03\\x95\\x2b\\x52\\x36\\x08\\x73\\x08\\x8f\\xca\\xd8\\x15\\xb1\\x3e\\x80\\xfb\\x7f\\xb7\\xf6\\xf7\\x3e\\x82\\xdf\\x7f\\x77\\x66\\xf7\\x12\\xdc\\x14\\xb7\\x2a\\x62\\x81\\x75\\x49\\x32\\x0c\\x93\\xe7\\x79\\x42\\x27\\x56\\x74\\x34\\xdb\\x97\\x53\\xdd\\x4a\\x7e\\x72\\xae\\xe0\\xe2\\x95\\x56\\xeb\\xc5\\x4c\\x57\\x89\\xc5\\x4e\\x6c\\xe2\\x05\\x6f\\x58\\x1e\\x3a\\x58\\xa4\\xcd\\xd9\\x1e\\x73\\x70\\x05\\x7f\\x4b\\x77\\xc5\\xd8\\x0c\\x4f\\xe0\\x74\\xc0\\xd3\\xe6\\x7d\\xbf\\x6a\\x87\\x1d\\xa8\\x76\\xb0\\xe8\\x80\\x98\\x7d\\xaa\\x75\\xf5\\x6c\\x2b\\xb6\\x15\\x75\\x05\\x67\\x17\\xfb\\xe9\\x87\\x4a\\x0d\\x24\\xda\\x2b\\xe0\\xe2\\x6c\\x57\\x40\\x4e\\x36\\xdb\\xfa\\x4c\\x8d\\x5e\\xc1\\xf9\\x1e\\xf3\\x34\\x6a\\xa0\\x4d\\x03\\xa2\\x7d\\xdc\\x7b\\x63\\xa4\\x27\\xeb\\x21\\x6d\\x97\\x87\\x18\\x76\\x15\\xea\\x06\\x4a\\x87\\x5a\\x6d\\x7f\\x5d\\xc1\\x69\\xbc\\x47\\x8c\\x46\\x6e\\xab\\xdd\\xa5\\x18\\xea\\x31\\x10\\xbd\\x48\\x0c\\x06\\x8b\\x9b\\xe5\\x76\\x26\\x0d\\xc6\\xbb\\x2e\\xf6\\x20\\xf0\\x87\\xe5\\x0e\\x85\\xde\\x87\\x1a\\x66\\x57\\x4d\\xbd\\xa6\\x0e\\xe4\\x05\\x10\\xcc\\xba\\x71\\xe6\\xba\\xe4\\x28\\x56\\x82\\x56\\xe1\\xad\\x9d\\x90\\x13\\xdb\\x04\\x13\\x37\\x17\\xef\\xe3\\xcf\\x9c\\xb2\\xb0\\x93\\xd1\\x2d\\x3d\\xf6\\x00\\x31\\xfb\\x9a\\x77\\x7c\\x50\\xc9\\xbf\\xb9\\x4c\\x4f\\x87\\xe7\\x86\\xb4\\x2b\\x91\\x56\\xd2\\xe2\\x5b\\x0f\\x4c\\xb3\\xf5\\x0d\\x7a\\x17\\xdf\\xe5\\x2f\\x93\\x49\\x10\\x44\\x33\\xbd\\x00\\x0b\\xac\\xf8\\x0a\\xa1\\x32\\x33\\xc3\\xf6\\xd2\\x7e\\xbe\\x93\\x64\\x12\\x24\\x41\\xb4\\x03\\x38\\xa0\\xe6\\x26\\x99\\x04\\xe0\\x93\\xff\\x47\\x03\\x7e\\xbe\\x79\\x73\\x90\\x23\\xbc\\xbd\\x7b\\x79\\x77\\x72\\x7f\\x97\\xdf\\xe5\\xd1\\xdd\\xf4\\x75\\x68\\x3e\\x34\\xd3\\xd1\\xe9\\xd1\\x99\\xb3\\xf6\\x24\\xbd\\x98\\xa6\\x29\\x9c\\x7c\\xab\\xbf\\xd2\\x74\\x18\\xe4\\x6e\\x01\\x95\\xc3\\x00\\xb6\\x6b\\xa5\\x17\\x43\\x2c\\xb1\\x1a\\x06\\xd0\\x45\\x4d\\x87\\x51\\xc5\\x54\\xea\\xdb\\xa8\\xa3\\x7a\\x0d\\x47\\xf6\\x2b\\x26\\x4a\\x89\\x30\\x68\\xc5\\x05\\x7a\\xc2\\x0e\\x51\\x4a\\xaf\\x87\\xbd\\x83\\x6d\\xf2\\x95\\xdb\\xb9\\x87\\x99\\x69\\xf7\\x03\\xa3\\xeb\\xa0\\x6d\\x49\\xe2\\x6e\\x95\\x63\\x09\\xbf\\x50\\x19\\x46\\xbf\\x40\\xce\\x51\\xb2\\xb1\\x82\\xba\\x24\\x1b\\x58\\x63\\x59\\xc2\\x9a\\xaa\\x25\\xfc\\xf3\\xe6\\xfa\\xe3\\x2b\\xa0\\x0c\\x3e\\xbc\\xdb\\xd2\\xef\\x6c\\x2c\\x50\\x85\\x69\\x14\\x2b\\x52\\x7c\\x22\\x15\\xc6\\x8a\\x7f\\xe4\\x6b\\x14\\x6f\\x88\\xc4\\x30\\xb2\\x2b\\xbe\\x71\\xcb\\x04\\xba\\xe5\\xa1\\x32\\xb4\\x50\\x7f\\x11\\xb7\\xbd\\x94\\x24\\x9d\\xcd\\xd2\\x5e\\xd1\\x33\\xc2\\xe0\\x01\\x41\\x5f\\xc4\\x31\\x87\\x15\\x25\\x46\\x4c\\xd4\\xae\\xe4\\xe1\\x98\\xd8\\x6b\\x5e\\x64\\xb9\\x29\\xa3\\x4a\\x5f\\xf7\\x73\\x5c\\x90\\xa6\\x54\\xb0\\x5e\\x22\\x03\\xc6\\xc1\\x52\\x69\\x4c\\x41\\x57\\xc8\\xb6\\x55\\x11\\xd1\\xa9\\x30\\x7e\\x67\\x9c\\x29\\x7c\\x54\\xc0\\x17\\x40\\x40\\x52\\x56\\x94\\x08\\xda\\x78\\x64\\xca\\x5d\\x18\\x7a\\xde\\x79\\x7b\\x29\\x63\\x54\\x79\\x21\\x8f\\xfc\\x4a\\x70\\xf7\\x83\\xff\\x62\\x69\\x7a\\xaa\\x16\\xfc\\x71\\x13\\x3a\\xe0\\xc4\\xec\\x66\\x5e\\x82\\x5b\\xd2\\x30\\xf2\\x77\\x84\\x23\\x69\\xeb\\xa8\\x5d\\xb0\\x06\\xc3\\x44\\x97\\xbc\\x77\\x03\\x81\\x6f\\x87\\x2b\\x95\\x44\\xf5\\x81\\x29\\x14\\x2b\\x52\\x86\\xbd\\xfc\\x09\\x6c\\xf3\\x79\\xa7\\xab\\x57\\x4d\\xe6\\xed\\xc3\\xaf\\x26\\x1d\\xfb\\xce\\xbd\\x23\\xb3\\xf7\\x45\\xfa\\xa2\\x45\\xc2\\xb1\\x4b\\xcb\\x78\\x02\\xbf\\x79\\x3d\\xd2\\x55\\xab\\xe1\\x34\\xc9\\x1e\\x38\\x1b\\x93\\xba\\x2e\\x37\\xa1\\x17\\x87\\x81\\x6a\\xbd\\xd8\\xbd\\xfd\\xe1\\x7a\\x5f\\x70\\xff\\x92\\x76\\xaf\\x0d\\x0d\\x97\\x69\\x43\\xcb\\xbf\\xb7\\x0d\\x7d\\x94\\x6b\\x43\\xf8\\x73\\xd6\\xdb\\xab\\xa5\\xb9\\x44\\x2e\\xd8\\xbe\\x2b\\x3d\\x71\\x8b\\x1b\\xaf\\x4d\\x11\\xb5\\xc9\\x32\\x95\\xc5\\x60\\xde\\xd6\\xeb\\xeb\\xbe\\xce\\x6e\\x2d\\xe8\\x1e\\xfa\\x30\\xc8\\x58\\xd7\\xdc\\xcc\\x3d\\x09\\x84\\xcf\\x16\\xac\\x8b\\x8b\\x5a\\x0a\\xbe\\x36\\xd3\\xeb\\x9d\\x10\\x5c\\x84\\xc1\\xcf\\xec\\x0b\\xe3\\x6b\\xd6\\xef\\x93\\xe6\\x0d\\x6a\\x1c\\xbc\\x6c\\x55\\xbd\\x0c\\xc6\\xb0\\xe0\\xa2\\x7d\\x96\\xf2\\x9b\\xd3\\x34\\x0b\\x92\\x6c\\x09\\x7c\\x85\\x02\\xf8\\xc3\\x67\\xcc\\x94\\x84\\x25\\x0a\\xfb\\x34\\xa4\\x3b\\x07\\xd4\\x12\\x41\\xe0\\xd7\\x06\\xa5\\xc2\\xbc\\x53\\x33\\xb2\\xc6\\x50\\x19\\x6b\\xfe\\x70\\x37\\x81\\x0b\\x16\\x6b\\x76\\x13\\xbd\\x3e\\x1c\\x4e\\xb7\\xfb\\x75\\x33\\x47\\x93\\xcc\\xba\\xc8\\x76\\x8e\\xb8\\x2c\\x84\\x7e\\x0c\\x75\\x39\\xc0\\x5c\\x5f\\x24\\x6a\\x22\\xf0\\xad\\x2e\\x0e\\x2f\\x3d\\xfb\\xdb\\xa9\\x7b\\x59\\x79\\x46\\xe5\\x27\\xf2\\x29\\xd4\\x32\\xba\\xe7\\x83\\xa8\\x6f\\x27\\x4d\\xa2\\x3b\\xc7\\xde\\xd1\\x61\\x3e\\x87\\x54\\x1f\\xef\\xed\\xa6\\xbc\\xc5\\x07\\x57\\x3d\\xad\\xdf\\x92\\x6d\\x75\\xe9\\x31\\x13\\xb6\\xcf\\x16\\x5b\\x2a\\xb7\\xba\\x71\\x6f\\x2c\\x06\\xa1\\xf0\\xfd\\x75\\xe3\\xaa\\xd5\\xe9\\xfe\\x6a\\xa7\\x3b\\xd4\\xac\\x77\\xd9\\x81\\x6c\\x1f\\x05\\x5d\\x0d\\xf4\\x16\\xef\\x27\\xd8\\x69\\xb4\\xee\\xb9\\xa5\\x53\\xff\\x34\\x98\\x62\\x66\\xaa\\x76\\x6b\\x45\\x2b\\xd4\\x04\\xa1\\xf7\\xd7\\x8c\\xb4\\x3e\\x35\\xb1\\xf7\\x4e\\xe2\\x87\\xb0\\xe5\\xf6\\x1b\\x74\\x32\\x34\\xb4\\x9b\\x08\\x51\\x67\\x99\\x39\\xa3\\xb4\\xbc\\x9f\\xcc\\x2d\\xc3\\x53\\xeb\\xbf\\x56\\xe1\\xa3\\x8a\\x4b\\x64\\x85\\x5a\\xea\\x59\\xaa\\x97\\xc6\\x67\\xe1\\xf0\\x10\\x37\\xce\\xbd\\x78\\xb1\\xd7\\x8a\\x28\\xfa\\x63\\x3b\\xb5\\x8a\\xff\\x97\\xe1\\x03\\x19\\xd9\\x4d\\xba\\x57\\x3c\\x5d\\x78\\xfa\\x2d\\xa1\\xc3\\x7a\\xe5\\xe9\\x4a\\x6b\\x28\\x66\\x48\\x30\\x94\\xd3\\xbf\\xc3\\x99\\x13\\xdf\\xc4\\x20\\x82\\x13\\x93\\xfa\\x1e\\xd0\\x0b\\xd5\\x67\\x2b\\x7d\\x34\\xe3\\xe4\\xc3\\xbb\\x4b\\x90\\x4d\\xf6\\x85\\x14\\x38\\x02\\xc8\\x79\\xd6\\x18\\xaf\\x32\\x81\\x44\\xe1\\x3b\\xeb\\x63\\x18\\x90\\x87\\x07\\x61\\x7d\\x3b\\x44\\xd1\\x2e\\x0c\\x4f\\x5a\\xcd\\xff\\x02\\x00\\x00\\xff\\xff\\xb0\\xf7\\xfe\\x51\\xdf\\x17\\x00\\x00\"\n\nfunc assetsClientStaticJsJqueryTimeagoJsBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticJsJqueryTimeagoJs,\n\t\t\"assets/client/static/js/jquery.timeago.js\",\n\t)\n}\n\nfunc assetsClientStaticJsJqueryTimeagoJs() (*asset, error) {\n\tbytes, err := assetsClientStaticJsJqueryTimeagoJsBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/js/jquery.timeago.js\", size: 6111, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticJsNgrokJs = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xb4\\x5a\\x5b\\x73\\xe3\\xb6\\x15\\x7e\\xdf\\x5f\\x71\\xc4\\x71\\x2d\\x2a\\x96\\x48\\xed\\x26\\xdd\\x66\\x74\\xf1\\xb4\\xbb\\x49\\xa6\\xdb\\xa6\\xbb\\x19\\x5b\\x6d\\x1e\\xbc\\x9e\\x0e\\x48\\x42\\x22\\x6c\\x0a\\xe0\\x02\\xa0\\x2e\\x75\\xf4\\xdf\\x3b\\x00\\x2f\\x02\\x41\\x52\\xb2\\xd3\\x2d\\x1f\\x92\\x15\\x70\\xee\\xe7\\x3b\\x07\\x37\\x6f\\x10\\x07\\xba\\xe2\\xec\\x11\\xe6\\x80\\xe8\\x2a\\x4b\\x10\\xf7\\xd6\\x2c\\xca\\x12\\xec\\x3a\\x7a\\xdc\\x19\\xc2\\x9d\\x43\\x57\\xb7\\x88\\x12\\x49\\xfe\\x83\\x9d\\xfb\\xc1\\xf4\\xd5\\x2b\\xc5\\x15\\xe3\\xdd\\x0d\\x4e\\x39\\xcc\\x61\\x99\\xd1\\x50\\x12\\x46\\xdd\\x60\\x2f\\xb1\\x18\\xc0\\xd3\\x2b\\x00\\x00\\x45\\x13\\x64\\x4b\\x98\\xc3\\xdd\\xfd\\xb4\\x1a\\x41\\x22\\x24\\xc4\\x18\\x5b\\x32\\x0e\\xae\\x9a\\x20\\xf3\\xf1\\x14\\xc8\\x4c\\x8b\\xf0\\x12\\x4c\\x57\\x32\\x9e\\xc2\\xd5\\x15\\x29\\xc5\\x55\\x22\\x61\\x0e\\x9a\\xe8\\x8e\\xdc\\x4f\\x5f\\x55\\x53\\x64\\x09\\x6e\\xcf\\x25\\x7f\\xf8\\x7e\\x00\\x97\\x97\\x40\\x7a\\xf3\\xb1\\xc9\\xa8\\xbe\\x20\\x5b\\x7a\\x69\\x26\\x62\\xd7\\xf9\\x2c\\x9d\\xc1\\xb4\\x75\\xce\\x43\\x69\\x9a\\xec\\xdd\\x20\\x5b\\x0e\\x73\\x4b\\x07\\xed\\x22\\xfa\\x9f\\x69\\xdf\\x12\\x61\\x3b\\xa6\\xbe\\x43\\xdd\\xbe\\x00\\x66\\xf0\\xfa\\x6d\\xb7\\x5d\\x63\\xd3\\xac\\x16\\xde\\xf1\\xee\\xcd\\x18\\x7e\\xfb\\x0d\\x02\\xb8\\x86\\xf1\\xee\\x4f\\xd8\\x96\\xa4\\x4d\\x28\\x0c\\xf4\\x4c\\xfb\\x0e\\x80\\x13\\x81\\xbb\\xa9\\x6f\\x25\\x27\\x74\\xe5\\x2d\\x39\\x5b\\xbf\\x8f\\x11\\x7f\\xcf\\x22\\xec\\x06\\x83\\x76\\x63\\x2a\\x73\\x03\\x4f\\xb2\\x9c\\xd1\\x7d\\xfd\\xd6\\x24\\x3e\\x3a\\x04\\xa6\\x43\\x86\\xbe\\xe3\\x44\\x21\\x58\\x79\\x98\\xcf\\xe7\\x99\\x57\\x0e\\xda\\x89\\x0f\\x63\\xc4\\xc5\\xcf\\x78\\x29\\x61\\x0e\\xdf\\xc3\\xc8\\x62\\xf0\\xe1\\x8d\\xa1\\x4b\\xa3\\xaa\\x40\\x54\\xc5\\xd7\\x80\\x93\\x65\\x2c\\x40\\x3d\\xfe\\x4d\\x92\\x3a\\x70\\xba\\x41\\x53\\xf3\\x8d\\x63\\x99\\x71\\xaa\\xa9\\x1f\\x18\\xa1\\xae\\xa3\\x64\\x1c\\x5e\\xbd\\xd2\\xd5\\xe5\\x2d\\x51\\x28\\x19\\xdf\\xbb\\x8e\\xdc\\xd1\\xdb\\x4d\\xe8\\x0c\\x8f\\xd5\\x64\\x16\\x52\\xca\\x59\\x88\\x85\\x78\\xc7\\xa2\\x7d\\xad\\xe0\\x58\\xb4\\x1f\\x42\\x40\\x28\\xe2\\x7b\\xd3\\x33\\x35\\xee\\xe5\\xc3\\xaa\\x5c\\xf4\\x3f\\xa6\\xf5\\x59\\x22\\x7e\\x62\\x7c\\xad\\x66\\xd5\\xaf\\xf7\\x8c\\x4a\\x4c\\xe5\\x62\\x9f\\x62\\x98\\xcf\\xc1\\x51\\x2e\\x91\\x10\\x29\\x25\\xfe\\x6e\\xb4\\xdd\\x6e\\x47\\x4b\\xc6\\xd7\\xa3\\x8c\\x27\\x98\\x86\\x2c\\xc2\\x91\\x63\\x89\\xc3\\x3b\\x22\\xa4\\x28\\xc5\\xfd\\x5c\\x65\\xd1\\x22\\x8b\\x91\\xf8\\x91\\x73\\xa6\\xba\\x46\\xaf\\xa7\\x47\\xf4\\x4f\\xa3\\x90\\x95\\xb7\\x62\\x4f\\x25\\xda\\xbd\\x4f\\x90\\x50\\x12\\xeb\\x09\\x73\\x24\\xde\\x49\\x7f\\xb7\\x4e\\x9c\\x09\\xd4\\x3f\\x47\\x0d\\x0e\\xeb\\xc4\\x35\\x3f\\x4c\\x9e\\x36\\x62\\x2d\\x39\\x96\\x4d\\xd1\\x9d\\xc4\\xa1\\x10\\x4d\\x33\\xd4\\xe0\\x09\\x33\\x1e\\x04\\xa3\\x15\\x93\\xa3\\x7f\\xb5\\x89\\x7e\\x40\\x1b\\x24\\x42\\x4e\\x52\\x69\\x18\\x6d\\x0c\\x9e\\xd2\\x60\\xb2\\xb6\\xf3\\x1c\\xee\\xec\\xb4\\x9b\\xcd\\xd4\\xf7\\x21\\xc2\\x2a\\xcd\\x3a\\x69\\xf5\\x3e\\xd4\\xc0\\x1a\\x94\\xb9\\x5d\\xe0\\x9d\\xaa\\x4d\\xc7\\x39\\xd3\\x78\\x4c\\xe2\\x77\\x48\\xe0\\xb7\\xdf\\x79\\xb9\\x36\\xb7\\x9a\\x19\\x78\\x2a\\x06\\xad\\xfd\\xc7\\xf7\\x21\\xe5\\x58\\x4a\\xb2\\xdc\\xd7\\x30\\x23\\x39\\xa2\\x62\\x99\\x43\\xda\\x42\\x4c\\x9e\\xf8\\xb6\\x24\\x16\\xb9\\xc8\\xff\\x6f\\x04\\xc7\\x00\\x60\\x63\\x91\\xa9\\xe3\\xf8\\xf2\\x12\\x7a\\xbd\\x4a\\xb7\\x1d\\x17\\xc9\\xf7\\xd6\\x48\\xe1\\xc2\\xe6\\x31\\xc0\\x28\\x53\\x4e\\x40\\xc4\\xb0\\x80\\x94\\x31\\x9e\\xec\\x01\\x49\\xd5\\xba\\xd6\\x48\\x4a\\x42\\x57\\xa0\\xa0\\xd8\\x60\\xd6\\x49\\xb0\\x4b\\xb6\\x37\\x37\\xd1\\x6b\\x5b\\xd1\\x16\\xf8\\xa3\\x01\\x77\\x95\\xf5\\xf7\\x46\\x02\\xa6\\x0d\\x09\\x87\\xda\\xc8\\x01\\x42\\x24\\xc3\\x18\\xdc\\xc6\\x2a\\x74\\xe8\\x5a\\xc2\\x7a\\x3d\\x23\\xac\\xa7\\x10\\x14\\x27\\x0f\\xc2\\x8b\\xc9\\x2a\\x4e\\xc8\\x2a\\x96\\xae\\xc1\\x35\\x04\\x03\\x22\\x1b\\x94\\x64\\xf8\\x0c\\xd6\\x7c\\x1f\\x2a\\x41\\xde\\x83\\xd0\\xc1\\xa6\\x7d\\x09\\x31\\xda\\x60\\x40\\xd0\\x4f\\x13\\x44\\xa8\\x8a\\x5c\\xbf\\x68\\x3a\\x43\\x10\\x0c\\xb6\\xb8\\x9f\\x24\\xf0\\x90\\x09\\x09\\x21\\x4b\\xf7\\x40\\xa4\\x00\\x2c\\x42\\x94\\xaa\\xac\\x94\\xcd\\xd7\\xeb\\xb4\\xbf\\xfa\\xb7\\xc7\\x71\\x9a\\xa0\\x10\\xbb\\xfe\\xa5\\xbf\\x5a\\x0f\\xa1\\x7f\\x89\\xd6\\xe9\\xb4\\x3f\\x38\\x8e\\xcf\\x8a\\xf1\\x44\\xd6\\x86\\xaf\\x8b\\xe1\\x95\\x1a\\xb6\\xd7\\xa4\\x43\\x81\\x48\\x63\\x5d\\xb8\\xc1\\x5f\\xcc\\x65\\x81\\xe3\\x2f\\x66\\x7c\\x75\\xf0\\x39\\xfe\\xe2\\xdd\\xa0\\xed\\x3b\\x73\\x8b\\x56\\x7e\\x4a\\x52\\x5e\\x82\\x51\\xa3\\x26\\x0b\\x3e\\x0b\\x10\\xa6\\x34\\x95\\xb1\\x7c\\x2f\\xe8\\x16\\x42\\xbc\\x7c\\x23\\x68\\x54\\x4e\\xcd\\x8c\\x77\\xad\\x3d\\xc4\\x10\\x5b\\xc4\\xb1\\x94\\x56\\xef\\x05\\x9d\\x18\\x33\\xd6\\x48\\x6d\\xf5\\x3b\\xbd\\x38\\x1a\\x0a\\xa7\\xdd\\xe1\\x13\\x69\\x3d\\x7e\\x22\\x35\\xcd\\x53\\xbf\\x3d\\x21\\x91\\xcc\\x44\\xfb\\xa2\\xd4\\x7f\\xd3\\x9f\\xe4\\x15\\x38\\x22\\x74\\xc9\\xac\\x36\\xd3\\xff\\x56\\xcd\\xae\\x33\\x89\\x23\\x7b\\xe6\\xbb\\x8a\\x6f\\x8b\\x38\\x25\\x74\\x65\\x13\\xfc\\xb1\\x22\\xc0\\xaa\\xdf\\x98\\x4d\\x4a\\x5b\\x75\\xab\\xad\\xba\\x1b\\xdf\\x37\\xfa\\x94\\x9e\\xfe\\x7d\\x19\\xcf\\x19\\x1b\\x29\\x37\\xe4\\xbd\\x30\\xe7\\x22\\x3d\\x99\\xf4\\x5c\\xf0\\xd7\\xc8\\xba\\x52\\x54\\xa4\\xfd\\xa8\\xb3\\x33\\xef\\x8b\\x1d\\x35\\xd3\\x2e\\x77\\xd4\\xb4\\xef\\x58\\x5b\\x6a\\xc6\\xbb\\xc1\\x5f\\x8c\\x88\\x18\\xc8\\x29\\x66\\x45\\xda\\xaa\\x08\\x3f\\x4b\\x97\\x5e\\xc1\\xd8\\x4f\\x64\\xa7\\xf3\\x51\\x51\\xe9\\x16\\x37\\x54\\x52\\x42\\x22\\x08\\xa3\\x6d\\x69\\x4c\\xd9\\x16\\xab\\xfd\\xd4\\x3f\\x90\\x8c\\xbd\\x94\\x6d\\xdd\\xd7\\x63\\x83\\x43\\x9d\\x17\\xc6\\x8d\\x4c\\xea\\x1d\\x69\\xb1\\x79\\xd7\\x7c\\x9c\\x65\\x34\\xca\\xd5\\xc1\\x37\\xb9\\xc8\\x01\\xf8\\xc5\\x3f\\xda\\x36\\xc5\\x6a\\x19\\x46\\x5c\\x60\\xa0\\x88\\x32\\x81\\x43\\x46\\x23\\x08\\x59\\x46\\x65\\xcd\\x25\\xaa\\x80\\xa2\\xc2\\xf3\\x43\\xc6\\xf5\\xde\\x64\\x5a\\x9b\\x5e\\xab\\x69\\x2a\\xc0\\x07\\xf7\\xf5\\x78\\x3c\\x86\\x6f\\x40\\xfd\\xcf\\xd0\\x67\\xb2\\xc2\\x1c\\xd6\\x62\\x5a\\xc3\\xf8\\x5a\\xc0\\x75\\xce\\x62\\xaf\\xbb\\x75\\xbe\\x22\\xb2\\x8a\\xde\\xd7\\xf4\\x43\\x78\\x33\\x80\\x2b\\x70\\xc4\\xb9\\xbd\\x4a\\xa7\\xa0\\x52\\xc2\\xba\\x26\\xa2\\xca\\xff\\xf1\\xbc\\x1b\\x4a\\xb2\\xc1\\xc7\\xf3\\xaf\\xdc\\xe9\\x98\\x6c\\x09\\x8d\\xd8\\xd6\\x8b\\x90\\x44\\xde\\x62\\x47\\x0b\\xbf\\xd4\\xa4\\xb7\\x64\\xfc\\x47\\x14\\xc6\\xee\\x11\\x2a\\x75\\x50\\x1a\\x80\\x72\\xcb\\x75\\xfa\\x30\\x98\\x5a\\x2a\\x91\\xc4\\x27\\xe0\\xa6\\xcb\\x52\\xf9\\x56\\xc8\\xc2\\x91\\x1d\\x41\\x53\\xc9\\x8e\\x5a\\x00\\xaa\\x71\\xaa\\xb0\\xf0\\xda\\x42\\x7c\\x3c\\xf2\\x69\\xe7\\x73\\x08\\x34\\xce\\x7b\\xda\\xd9\\xf6\\xe3\\x5e\\xe9\\x81\\xa6\\xb9\\x1b\\xdf\\xb7\\x1e\\xa8\\x0c\\xf2\\x28\\x9a\\xd4\\x5c\\xfd\\x01\\x49\\xd4\\x02\\x09\\xe1\\x65\\x54\\xc4\\x64\\x29\\xdd\\xbf\\xdd\\x7e\\xfa\\xe8\\x69\\xfc\\x56\\xe4\\x96\\x8b\\x56\\x9c\\x6b\\x76\\xd4\\xa2\\x98\\xfb\\xd8\\xd6\\xd7\\x3a\\xbc\\x68\\x86\\xe9\\x70\\xec\\xf9\\x28\\x49\\x26\\xcd\\x13\\x60\\xf9\\x15\\x9e\\xcb\\x0a\\x30\\x36\\xb7\\xb6\\x65\\xd2\\x99\\x76\\x30\\x52\\xdf\\xde\\x89\\xb5\\x7c\\x13\\xb3\\x95\\x96\\xb6\\xea\\xb0\\xbd\\x7c\\x8e\\x87\\x44\\xfc\\xe5\\x19\\x56\\x16\\x96\\xf4\\x8a\\xf0\\xaa\\x6d\\xb6\\x02\\xdd\\x87\\x48\\x9d\\x4e\\xf3\\x31\\xef\\x43\\xd4\\x52\\x79\\xba\\x12\\xf2\\xa3\\x75\\x44\\x38\\xd6\\x94\\x6e\\x2e\\xdb\\x79\\xc4\\xfb\\x0d\\x52\\x47\\x81\\xd6\\x00\\x37\\x60\\xa5\\x3e\\x11\\xb2\\x14\\x4f\\x5a\\xdc\\x96\\x44\\x26\\x78\\x02\\xce\\x9f\\xad\\x05\\x5b\\xcf\\x65\\x69\\x82\\xc5\\x04\\x9c\\xb9\\x35\\x79\\x18\\x5a\\x4e\\xea\\xed\\xde\\x44\\xd7\\x8f\\x3d\\x25\\x24\\x27\\xa1\\x9c\\x80\\xf3\\xa3\\x25\\x44\\xe2\\x75\\x9a\\x20\\xa9\\x94\\x3b\\x70\\x55\\xdf\\x2d\\xcc\\x22\\xb2\\x01\\xba\\x1a\\x89\\x98\\x6d\\xe7\\x4e\\x8c\\xc4\\xdf\\xf1\\x5e\\xb8\\x03\\xe7\\xba\\x6f\\x51\\xe6\\xd4\\xf1\\xdb\\xeb\\xa7\\x27\\xed\\xc9\\xe1\\x30\\xf3\\xe3\\xb7\\x1d\\x64\\x12\\x05\\x09\\x86\\x50\\xed\\x7c\\xe6\\x4e\\xfe\\x23\\x45\\x1c\\xad\\x45\\xbb\\xdc\\x82\\x89\\x2b\\x43\\x38\\x4e\\x31\\x92\\x73\\xc7\\x7d\\xc4\\xfb\\x21\\xe8\\xf5\\x65\\x00\\x84\\x16\\x21\\xea\\xe6\\x2f\\x64\\xc4\\xd7\\x4f\\x4f\\xf0\\x88\\xf7\\xa0\\xec\\x93\\xf1\\x39\\xf2\\x48\\x91\\xe7\\x8b\\x98\\x66\\x88\\x4e\\xd8\\xe7\\x4b\\xde\\xe1\\xae\\xaf\\x5d\\x6c\\x4c\\xf6\\x67\\x7e\\x44\\x36\\xd7\\xfd\\x7a\\x36\\x12\\x42\\x1f\\x0d\\x40\\x5d\\x68\\xc0\\xb4\\xd5\\x56\\x3e\\xe3\\x15\\x39\\x31\\x7b\\x73\\xd7\\x71\\x4d\\x5f\\x62\\x29\\xe7\\x09\\x2d\\xb9\\xf3\\xb0\\x0d\\xe0\\xa9\\x6a\\x05\\xaa\\xf3\\x5a\\x47\\xb3\\xf2\\x2b\\x48\\x96\\x28\\x11\\xb8\\xe5\\x38\\xd7\\x59\\xab\\x45\\xb3\\x1d\\xe6\\xdd\\x56\\x25\\x5c\\x7c\\x9d\\x9a\\x29\\x45\\xb5\\x16\\x8d\\x13\\x48\\xda\\x39\\xc7\\x68\\x20\\x69\\x98\\x90\\xf0\\x51\\x91\\x5c\\x3a\\xbf\\xb3\\xaa\\x8e\\xa5\\xd3\\x6f\\x66\\x37\\x4b\\x4a\\x88\\x53\\xb4\\x01\\x8a\\x36\\xa3\\x94\\x24\\x49\\x07\\x46\\xfb\\xb3\\x84\\x98\\xf8\\x96\\x28\\xd0\\xb0\\x46\\xc1\\x47\\xb4\\xc6\\xc2\\x51\\x73\\x85\\xb4\\xa7\\xcf\\xfd\\xbc\\x61\\x7d\\xee\\x4f\\x80\\x88\\x05\\x0a\\x5c\\x89\\x82\\xc1\\xe1\\x54\\xf1\\x20\\x88\\x39\\x5e\\xce\\x9d\\x42\\x0e\\x09\\x1f\\xe7\\x8e\\xc0\\xb2\\xe4\\x75\\x54\\xd9\\xa2\\x40\\x61\\x1c\\x75\\x81\\x38\\x21\\x27\\x0d\\xcf\\x3b\\x44\\xaf\\xa7\\xa2\\x5e\\xfa\\x9d\\x66\\x49\\x32\\xe2\\xea\\xa8\\xec\\x5c\\xc3\\x2c\\xc8\\xa4\\x64\\xb4\\x9c\\x0b\\x24\\x85\\x40\\xd2\\x51\\xca\\xc9\\x1a\\xf1\\xbd\\x69\\xd8\\x31\\x39\\xae\\xb6\\x2c\\x90\\x54\\x59\\x96\\xf3\\x5f\\xb7\\x5a\\xd2\\x9f\\xf9\\x59\\x72\\xba\\x94\\x20\\x65\\x42\\xfe\\x4c\\xe8\\xa3\\xab\\xf1\\x34\\x04\\x9c\\xe0\\x35\\xa6\\x72\\x08\\x48\\x4a\\xde\\x38\\xd0\\x40\\x09\\x3c\\xaf\\xcc\\x01\\xcc\\x73\\x4a\\x35\\x20\\x3c\\x91\\x26\\x44\\xba\\xce\\xd0\\xbe\\xf9\\x3f\\xf2\\xe5\\x49\\x5a\\xa0\\x00\\xe6\\x96\\xa4\\xbb\\xf1\\x7d\\x17\\x53\\x9e\\x94\\xda\\x4e\\xab\\xab\\x9c\\x9b\\x5a\\xe4\\xd9\\xaa\\x3c\\xf2\\x5d\\xa4\\x88\\x63\\x2a\\x3d\\x0d\\xa0\\xca\\xc2\\xf2\\xd7\\x79\\xed\\x65\\xbf\\x50\\xeb\\xa7\\x65\\xc9\\xf9\\xde\\x30\\xec\\x6c\\x0e\\x01\\x8b\\xf6\\x5f\\xa9\\x39\\x14\\xa2\\x1a\\x8b\\x66\\x3e\\xa9\\x4f\\x72\\xf9\\xf4\\xa9\\xe2\\x3f\\x59\\xe1\\xf1\\xdb\\x23\\xf2\\x8d\\x4b\\xeb\\x8e\\x0a\\x7f\\x7a\\xaa\\xdd\\x65\\x1f\\x0e\\xf9\\xb3\\x13\\x9c\\x24\\xbe\\x41\\x5b\\xf3\\x5e\\xee\\x70\\x68\\x41\\x7e\\xb1\\xce\\xb6\\x18\\x58\\x5b\\xbd\\x7b\\xe6\\x35\\xfd\\xe5\\x25\\xf4\\x8c\\x4b\\xfd\\xae\\xa6\\x94\\x72\\xdc\\xe1\\xe2\\x4c\\x5f\\xe7\\xd2\\xd5\\x28\\x20\\x34\\x1a\\xc5\\x72\\x9d\\x14\\x04\\xea\\xd4\\xed\\x5c\\xcf\\x7c\\x35\\x7f\\x3d\\xf3\\x53\\xde\\xbd\\xf2\\x3d\\xc3\\x68\\xc3\\xe6\\x2e\\x1b\\xf3\\x5d\\x58\\xbe\\x81\\x9a\\x3b\\xda\\xbb\\x5f\\xf2\\xdd\\x44\\xb1\\x2b\\x28\\xa4\\xb4\\xcb\\x30\\x6c\\x39\\x67\\x46\\x79\\x47\\x5b\\xf5\\x37\\x94\\x60\\x2e\\xcf\\x64\\x3b\\xbf\\xd5\\x6d\\xcd\\x5b\\xb1\\xfa\\x9f\\x5f\\xfe\\x87\\x70\\xa1\\x9a\\xd5\\x89\\x5d\\xc0\\xc5\\x16\\x49\\xf3\\x88\\x67\\xac\\xe8\\x05\\x85\\x32\\x66\\x0a\\x87\\x96\\xe7\\x20\\xfb\\x53\\x1b\\x7a\\x83\\x49\\x41\\xc5\\xf8\\x99\\x3b\\xf4\\x69\\xb9\\x14\\x58\\xc2\\x35\\x8c\\x5e\\x77\\x89\\x81\\xe2\\xf4\\xc8\\x72\\xd2\\x79\\x97\\x10\\xeb\\x82\\xc7\\xfc\\xaa\\xd6\\x2d\\xf1\\x4e\\x7e\\x64\\x11\\x16\\x2e\\x65\\x51\\xeb\\x6e\\xc8\\xd6\\x5a\\x71\\x14\\x2f\\xa8\\x27\\x19\\x2a\\x3d\\x2b\\x2c\\x17\\x2f\\x52\\x55\\xc6\\x4b\\xd1\\x7a\\xea\\x3f\\xe5\\x83\\xd7\\xb7\\xcf\\xe1\\x04\\xdd\\x60\\x0a\\x7d\\xf9\\x93\\xa0\\x56\\xda\\x6c\\xa0\\xf6\\xd7\\x79\\x7a\\x6a\\x75\\xaf\\x7a\\x12\\x87\\x39\\x8c\\x87\\x90\\x60\\x0a\\x73\\xd0\\x26\\x87\\x31\\x49\\xa2\\x5c\\x7d\\xf9\\x44\\x4e\\x60\\xa6\\x28\\x5a\\x1f\\x37\\x4f\\x7d\\x8d\\xd8\\x19\\xc2\\xef\\x88\\x7d\\x58\\xed\\x74\\xec\\xbc\\xeb\\x27\\x29\\x0e\\xa7\\x33\\xdd\\x4c\\xf0\\x69\\xb3\\xca\\x55\\xae\\xe4\\xe9\\xa6\\x3e\\xa1\\x58\\xe3\\xb1\\x04\\xe3\\x11\\xca\\xba\\xa6\\xbd\\x25\\xa1\\x91\\xeb\\xa8\\x66\\xe9\\x0c\\xbc\\x15\\x96\\xee\\xd8\\xbe\\x39\\x30\\x3f\\xfb\\xaf\\x1b\\xa4\\x95\\xbb\\xab\\xab\\x73\\x29\\x2b\\xca\\x71\\x34\\x2f\\x4c\\xba\\x23\\xf7\\x1a\\xb8\\xff\\x52\\xa7\\x9c\\x52\\xd0\\x49\\x09\\x0a\\xef\\x85\\x94\\x19\\x34\\x6e\\xca\\xda\\xbe\\x0b\\xb7\\xd2\\x35\\xf0\\xf2\\x7d\\x87\\x3b\\xf0\\x42\\x21\\x5c\\x27\\x40\\xe1\\xe3\\x4a\\x5f\\x16\\x8e\\x42\\x96\\x30\\xee\\x0c\\xc1\\x61\\x1c\\xd1\\x15\\x6e\\xdb\\x58\\xd9\\x5f\\xc0\\x31\\x7a\\x3c\\x4d\\xd6\\x0d\\x97\\xf6\\x99\\xe6\\xe8\\xa1\\xfb\\x16\\xa2\\xbc\\x46\\x32\\x2e\\x09\\x42\\x46\\x25\\x67\\x49\\x82\\x79\\x79\\x4b\\xf0\\x57\\x29\\xd3\\xc5\\x8e\\xd6\\xce\\x3c\\x65\\x5f\\xcf\\x1f\\xe9\\xcd\\x18\\x56\\x07\\x33\\x4a\\x71\\x62\\xdf\\xec\\xfd\\x93\\xdc\\x4a\\x24\\xb1\\xb7\\xc8\\x67\\xa7\\x0d\\xae\\x5d\\x79\\x41\\x7a\\xbb\\x09\\x3d\\x94\\x24\\xee\\xc0\\xbe\\xc5\\xef\\x15\\xf2\\x7e\\xc5\\xc1\\x2d\\x0b\\x1f\\x71\\x63\\x83\\xa7\\xd0\\xb5\\xd5\\xf7\\xa8\\x78\\x0b\\x15\\x95\\xeb\\x6c\\xc5\\xc4\\xf7\\x1d\\xb8\\x82\\x84\\xe5\\xcf\\xc2\\x5e\\xcc\\x84\\x84\\x2b\\x70\\xfc\\x7f\\x6f\\x85\\x9d\\xad\\xad\\xf0\\x18\\x65\\x29\\xa6\\xe7\\x0e\\xa6\\x21\\xa3\\x82\\x25\\xd8\\x4b\\xd8\\x4a\\x95\\x01\\xa5\\x38\\x94\\x38\\x82\\x2d\\x0e\\x84\\x56\\xac\\x21\\xcf\\x31\\x4a\\x46\\x92\\xac\\x31\\x64\\x69\\x84\\x24\\x6e\\xa8\\x3b\\x58\\x1d\\x5e\\xab\\x5f\\x63\\x21\\xd0\\xaa\\x76\\x6d\\x59\\x0c\\x9d\\x5a\\x49\\xf3\\x3f\\xbe\\x38\\xbb\\x4a\\x96\\x31\\x8e\\xa2\\x52\\xa8\\x4e\\x51\\xdb\\x3b\\xe7\\x73\\x6c\\xc5\\xc5\\x1f\\x31\\x54\\x7a\\x31\\xe7\\x67\\xc3\\xf5\\x2b\\x0e\\xa0\\x88\\x92\\xe6\\x9f\\x38\\x83\\x93\\x0c\\x4a\\xe6\\x33\\x6c\\x09\\x13\\x26\\x6a\\x51\\x0b\\x93\\xd6\\xe3\\x51\\x97\\x2d\\x9a\\x3f\\x9a\\x28\\xac\\x28\\xce\\x86\\xc6\\xea\\x9f\\xf5\\xad\\xbf\\xaa\\x93\\x1b\\xfc\\x25\\xc3\\x42\\xbe\\xa8\\x54\\xf4\\xf9\\x7c\\x7f\\x0a\\x67\\x17\\x1e\\x7a\\x40\\x3b\\xb7\\xe5\\xd2\\x6d\\xaf\\xce\\x0e\\xce\\x2f\\x9f\\x6e\\x17\\x2d\\x87\\x84\\x8c\\x27\\x13\\x70\\xfc\\x58\\xca\\xd4\\x27\\xd4\\xcf\\xf5\\xb4\\xd0\\xa9\\xbc\\x4f\\xe0\\x49\\x59\\x48\\xa2\\x49\\x85\\x8c\\xfc\\xaa\\x70\\xe0\\x7d\\x88\\xec\\xa7\\xee\\xd6\\x07\\x10\\xfd\\x77\\x2a\\x58\\x5a\\x2f\\xaf\\x6d\\xd5\\x29\\xf5\\xcb\\x8f\\xa5\\xa6\\xe5\\x26\\xb9\\xa7\\x08\\x8b\\x8b\\xce\\x9b\\xfa\\x0b\\xae\\x15\\xc2\\x5c\\xa9\\x6d\\xf8\\x0d\\xfe\\xf2\\xcc\\x3b\\xdb\\x9a\\x18\\x9a\\x25\\xc9\\x99\\x8e\\x09\\xcf\\xda\\xb9\\x5a\\xf6\\xa8\\xcd\\x6b\\x1e\\xa0\\xc1\\xb4\\x0d\\x39\\x22\\x65\\x54\\xe0\\x36\\xe8\\x5c\\x54\\x47\\xfd\\x26\\x88\\xaa\\xb0\\xd7\\x5f\\x6c\\xbf\\x5e\\xdc\\xeb\\x2f\\xbf\\x8d\\x88\\x69\\xb5\\xcd\\xc8\\x8b\\xf4\\xa5\\xa1\\xd7\\x82\\xfe\\xef\\xb1\\x3f\\x3e\\x4a\\x96\\xc1\\x5f\\xec\\xe8\\x47\\xb4\\xf9\\x20\\xf1\\xfa\\x45\\x55\\x5b\\x5e\\xdb\\x5b\\x41\\xb7\\xf4\\x97\\x54\\xee\\x71\\x81\\x1b\\x98\\xd7\\x93\\xc5\\xf0\\x1a\\x3d\\xe2\\x56\\x71\\xf5\\xb3\\x7c\\xcd\\x27\\x53\\x62\\xe7\\x75\\x44\\xb1\\x76\\x77\\x7b\\x36\\x84\\x0b\\xb5\\x2e\\xb1\\x4c\\xb6\\x80\\xca\\x7a\\xa2\\x6d\\xb4\\xa5\\xdc\\x82\\xc5\\x69\\x58\\x99\\x2d\\xba\\xe0\\xf8\\x70\\xfb\\xe9\\xfb\\xb7\\xe3\\xd7\\xb5\\x7b\\x9a\\x46\\x87\\x2e\\xa0\\xd8\\xda\\xb9\\x8b\\x20\\xab\\x15\\xfe\\x07\\xfd\\xd4\\x22\\xca\\xa7\\x52\\x4f\\xb2\\x0f\\xb7\\x9f\\x8a\\x97\\xdc\\x53\\x1b\\x1f\\xdb\\xa6\\x05\\x59\\xe3\\x9f\\xf4\\x9f\\x1a\\xfd\\xcf\\x66\\x5d\\x78\\x2a\\xa4\\x68\\xc5\\xdc\\xba\\xbf\\x4a\\xda\\x4b\\x4c\\x7a\\x31\\xbc\\x17\\x1a\\x0b\\x95\\x18\\xdf\\x07\\x19\\x13\\x01\\x21\\xca\\x04\\x16\\xe5\\x5f\\x33\\x83\\x64\\xc5\\x2e\\x04\\x64\\x8c\\x41\\x99\\x2a\\x24\\x5a\\xa7\\xa2\\xe2\\x13\\x58\\x7e\\xa0\\x12\\xf3\\x0d\\x4a\\xea\\xca\\xbb\\xb7\\x18\\x87\\x81\\x3e\\x9b\\x7f\\x3b\\x3e\\x3e\\x57\\x1f\\x86\\x7a\\x5b\\xf9\\xdf\\x00\\x00\\x00\\xff\\xff\\xb8\\xd2\\x0f\\x52\\x50\\x2d\\x00\\x00\"\n\nfunc assetsClientStaticJsNgrokJsBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticJsNgrokJs,\n\t\t\"assets/client/static/js/ngrok.js\",\n\t)\n}\n\nfunc assetsClientStaticJsNgrokJs() (*asset, error) {\n\tbytes, err := assetsClientStaticJsNgrokJsBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/js/ngrok.js\", size: 11600, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientStaticJsVkbeautifyJs = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\xbc\\x59\\xfb\\x73\\xda\\xb8\\xf6\\xff\\x99\\xcc\\xe4\\x7f\\x38\\x65\\xe6\\x5b\\x6c\\x82\\xad\\xa4\\xdf\\xbd\\x8f\\x85\\x90\\x6e\\x9a\\xb0\\x2d\\xbb\\x69\\xd2\\x0d\\x69\\x77\\x77\\x30\\xed\\x38\\x44\\x80\\x5b\\x23\\x13\\x49\\xe4\\x71\\x53\\xf6\\x6f\\xbf\\x23\\xc9\\xf2\\x53\\x26\\xa4\\xb7\\xf7\\xa6\\x53\\xb0\\x75\\x3e\\xe7\\xe8\\xe8\\xbc\\x74\\x24\\x50\\xb3\\xb9\\xbd\\xd5\\x84\\x9b\\x2f\\xaf\\xb0\\xbf\\xe4\\xc1\\xe4\\x1e\\x1c\\xf8\\xec\\xdf\\xf8\\x6c\\x4c\\x83\\x05\\x87\\x45\\xb8\\x9c\\x06\\x04\\x78\\x04\\x0b\\x8a\\x39\\xbf\\x77\\x16\\x34\\x20\\x1c\\x22\\x0a\\xf3\\x80\\x08\\x34\\xc7\\x77\\x1c\\x02\\x02\\x7f\\xbc\\x3d\\x69\\xc1\\x2f\\x83\\xb3\\xd3\\x16\\x1c\\x0d\\x06\\xe0\\x93\\x2b\\x18\\xfc\\x76\\x02\\x93\\x88\\xce\\x7d\\xce\\x5c\\x31\\x07\\x88\\x8f\\x0f\\x98\\xb2\\x20\\x22\\xe0\\xc0\\xae\\xfb\\xe3\\x8f\\xee\\xee\\xae\\x7b\\x89\\xb9\\x2f\\x49\\x47\\xd1\\xe2\\x9e\\x06\\xd3\\x19\\x07\\x6b\\x6c\\xc3\\x8b\\xdd\\xbd\\x17\\xf0\\xc1\\xbf\\x0a\\xe6\\xf0\\x6b\\x40\\xef\\x97\\x5f\\x66\\x01\\x51\\x9a\\xea\\x37\\xf8\\x09\\xa6\\x73\\x3f\\x08\\xdd\\x71\\x34\\x17\\x94\\x19\\xe7\\x8b\\x36\\x42\\xb7\\xb7\\xb7\\x2e\\x66\\x61\\x40\\x18\\xa7\\xcb\\x31\\x8f\\xa8\\x4b\\x30\\x47\\x37\\x5f\\x2e\\xe3\\x05\\x22\\x81\\x15\\xff\\x8f\\x97\\x7e\\x08\\x61\\x30\\xc6\\x84\\xe1\\x2b\\x58\\x92\\x2b\\x4c\\x81\\xcf\\x30\\xbc\\xed\\x5f\\x48\\xfd\\x5f\\xbf\\x3b\\xd1\\x64\\xd6\\x96\\x0b\\xc8\\x4e\\x11\\x2d\\x30\\x61\\xd1\\x92\\x8e\\xb1\\x1b\\xd1\\x29\\xd2\\x40\\x34\\x0f\\xb8\\x13\\xbf\\xb8\\x8b\\xd9\\xa2\\xc4\\x37\\x25\\xcb\\x3c\\xc3\\x74\\x11\\xba\\x33\\x3e\\x0f\\xb7\\xb7\\x9a\\x0a\\xfc\\x4e\\x5a\\x1a\\xa4\\xa5\\x93\\x41\\xf9\\x97\\x2e\\xc2\\xbd\\x9b\\x87\\x96\\xb4\\xfd\\xb0\\x15\\x90\\x2b\\x4c\\xf8\\xa7\\x85\\xcf\\x39\\xa6\\x64\\x64\\x77\\xcc\\x1c\\x9f\\x59\\x44\\x9e\\xc8\\x32\\x66\\xec\\x89\\x1c\\xec\\x7a\\xad\\x5a\\x19\\xa6\\x9f\\x24\\xcc\\x81\\x01\\xa7\\x01\\x99\\x76\\x54\\x20\\xf1\\x08\\x2e\\xb1\\xcf\\x97\\x93\\xfb\\xac\\xfc\\x9f\\xf2\\xa2\\xc0\\x81\\x3e\\xe1\\x78\\x8a\\x29\\x7c\\xd5\\xec\\x19\\xb4\\xfe\\x8b\\x31\\x6d\\x00\\xb2\\x9c\\x5f\\x62\\x0a\\xd1\\x04\\x6e\\x67\\x01\\xc7\\xc0\\x16\\xfe\\x18\\x33\\x13\\x8f\\x92\\xd6\\x06\\x80\\xf1\\xcc\\xa7\\xfe\\x98\\x63\\x0a\\x4c\\x8e\\x09\\xd5\\x6e\\x02\\xb6\\xf4\\xc3\\xe0\\x5f\\x18\\x94\\x42\\x3e\\x17\\x91\\x6c\\xc1\\xd8\\x27\\xe0\\x87\\x4c\\xe8\\x0e\\x3e\\x30\\xcc\\x8b\\x53\\x81\\xad\\xe6\\x7a\\x2b\\x73\\x66\\x9d\\x4f\\xe7\\x41\\xe2\\xa3\\x05\\xc5\\x0c\\xd3\\x1b\\xfc\\x69\\x1c\\xcd\\xe7\\x98\\x70\\xb6\\xd6\\xb3\\x9a\\x71\\x8d\\x2b\\xbf\\x49\\x36\\xbb\\x0e\\x73\\xa2\\x37\\xf0\\xa0\\xaa\\x0c\\x39\\x07\\x96\\xe6\\x03\\x07\\x5e\\x45\\x51\\xd8\\x81\\x61\\xb4\\x10\\x56\\xf4\\xc3\\x91\\xd1\\x1f\\x98\\x03\\x9f\\x05\\x0c\\x26\\xa1\\x2f\\x5d\\xc0\\xe9\\x12\\xc7\\xd5\\xe8\\x06\\x13\\x0e\\x14\\xcf\\xa3\\x1b\\xe1\\x9e\\x44\\xf0\\x84\\x46\\xf3\\x58\\x35\\x4b\\xa8\\x72\\x37\\x0f\\x65\\x36\\xcf\\x03\\x32\\x66\\x0c\\x26\\x4b\\x32\\x16\\x13\\x32\\x88\\x48\\x78\\xef\\x4a\\xcf\\xa8\\x89\\x7b\\x77\\xfe\\x7c\\x11\\x26\\xa9\\x5e\\x95\\x70\\x76\\x07\\x10\\x8a\\xab\\xa1\\xca\\x51\\x51\\xfb\\x1e\\x49\\xb9\\x16\\xfc\\x00\\x06\\x46\\x51\\x2f\\xd7\\x67\\x5e\\x0b\\x1a\\x2e\\xc8\\x7f\\x0d\\x03\\xff\\xd1\\x60\\xb0\\x3e\\x0d\\x5b\\xd0\\x70\\x1c\\xc7\\x31\\xf1\\x0e\\x7e\\x3b\\xd9\\x24\\x10\\x5b\\xd2\\xe4\\x76\\x07\\x21\\x5d\\xf1\\x65\\xa5\\xd7\\x0e\\x4d\\xec\\xbe\\x49\\x64\\xa6\\x32\\xd6\\x2e\\xdc\\xc4\\x70\\x34\\x18\\xb4\\x94\\xb3\\xd3\\x29\\xc1\\x82\\x2b\\x3c\\xf1\\x97\\x21\\xd7\\xf9\\xb5\\x36\\x78\\x53\\x61\\xc9\\xd2\\xd1\\xf6\\xd6\\xf6\\x96\\xa5\\x43\\xc2\\xb2\\xe1\\x41\\x0c\\xe8\\x77\\x18\\x53\\xec\\x73\\x3c\\x98\\x05\\x13\\x7e\\x48\\xa9\\xc5\\x38\\x5e\\xc4\\x90\\xda\\x8d\\x4f\\x55\\x6e\\x43\\x17\\x1a\\x62\\xd6\\x46\\x67\\x7b\\xab\\xb6\\xbd\\x55\\x0b\\x26\\x60\\x41\\xc0\\x4e\\xfd\\x53\\x6b\\xe1\\x53\\x86\\xfb\\x84\\x2b\\x46\\x1b\\x6c\\x78\\x00\\xe1\\x06\\x9f\\x4e\\x97\\x62\\x01\\x10\\xb0\\xb8\\xb8\\x6c\\x6f\\xd5\\x6a\\x5a\\x9a\\x00\\x0b\\x59\\x2b\\xc0\\x21\\xc3\\xf0\\x50\\xe4\\x08\\x54\\x59\\x93\\x2c\\xb7\\x01\\x1f\\xcf\\x52\\xbd\\x6a\\xb5\\xda\\xd8\\x67\\x18\\xf6\\xda\\x19\\xdd\\x1a\\x1d\\xb8\\xa4\\xd8\\xff\\xd2\\x49\\xe9\\x2f\\xb2\\x74\\x13\\xe0\\xff\\x73\\x00\\x13\\xe2\\x87\\x76\\x71\\xf9\\x25\\xc8\\xdf\\x0a\\x10\\x13\\xe6\\xef\\x45\\x8c\\x09\\xf4\\x8f\\x12\\xc8\\x84\\xfa\\x67\\x19\\x65\\x82\\xfd\\x68\\x80\\x99\\x70\\x7b\\xbb\\x26\\xa0\\x11\\xb9\\x67\\x44\\x1a\\xa1\\x2f\\xcc\\xd0\\x3c\\x76\\x25\\xbc\\x9f\\x46\\x99\\x08\\x3f\\xe8\\xc2\\xb0\\xe1\\x91\\xc6\\xa8\\xa3\\xc2\\x81\\xfa\\xf7\\x62\\x8f\\x91\\x34\\xb6\\xbd\\x55\\x9b\\x44\\xd4\\x0a\\xee\\xba\\xbb\\x9d\\xe0\\x6e\\x7f\\x6f\\x57\\x7c\\xed\\xec\\xd8\\x32\\x22\\x24\\xc4\\x5d\\x2c\\xd9\\xcc\\x92\\x8f\\xc3\\xe0\\x6e\\xb4\\x23\\x75\\xb0\\x3b\\xa0\\x26\\xaa\\x51\\xcc\\x97\\x94\\x28\\x69\\x9d\\xed\\xad\\x55\\x2e\\x09\\xd2\\x74\\xb2\\xa4\\x44\\x51\\x8e\\x5d\\x11\\x72\\x19\\xd7\\x23\\x04\\x3f\\xc4\\x5b\\x5d\\x82\\x88\\xd5\\x2e\\xe4\\x50\\xc2\\x2d\\x36\\x93\\x55\\x47\\xcc\\x94\\xc9\\xd7\\x05\\x8d\\x78\\xc4\\xef\\x17\\x58\\x54\\x20\\xe8\\x26\\xc5\\x5a\\x55\\xa2\\x62\\xfe\\xf9\\x14\\xba\\x72\\xd3\\x71\\x29\\x5e\\x84\\xfe\\x18\\x5b\\xe8\\xc0\\x63\\x0f\\xbb\\xad\\xd5\\x3e\\x9a\\xb6\\xea\\x07\\xfb\\x75\\x5b\\x9a\\xbe\\x06\\x29\\x40\\x52\\xfe\\x6a\\xb7\\xff\\x32\\x11\\x3d\\xd6\\xbc\\x9b\\x87\\x84\\x79\\x6d\\x8d\\x92\\xaf\\xed\\x75\\xd0\\x6e\\x0e\\xda\\x4d\\xa1\\x6c\\x11\\x06\\xdc\\x6a\\x08\\x52\\xc3\\x6e\\x89\\xd1\\x10\\x13\\xe8\\x82\\x4f\\xdd\\x10\\x93\\x29\\x9f\\xc9\\xb1\\x80\\x1c\\xa9\\x6a\\x26\\x56\\xeb\\x87\\x0c\\xcb\\xd1\\x2b\\x2c\\xcd\\xbb\\x2b\\x5f\\x18\\x17\\xeb\\x6c\\x34\\x14\\xfe\\x2e\\x1d\\x8f\\x2d\\x2c\\x7d\\xf1\\xd2\\x5c\\xac\\xda\\x90\\x3a\\x43\\x1a\\xbb\\x96\\x0b\\x95\\x10\\x13\\x15\\x2a\\x71\\xf5\\x40\\x08\\x18\\xf7\\x29\\xd7\\x25\\x56\\xf4\\xf9\\xfb\\xcf\\x86\\x47\\xc7\\x87\\x17\\x87\\x43\\xd7\\x75\\x47\\xa3\\x03\\x35\\x74\\x7c\\x76\\x74\\xf1\\xe7\\xbb\\x1e\\x20\\x24\\xf9\\x82\\x89\\xe5\\x53\\x11\\x59\\x2e\\xc3\\x3e\\x1d\\xcf\\x2c\\xb4\\xff\\x0c\\xd9\\x70\\x00\\xce\\x9e\\x28\\x7a\\xca\\x24\\x62\\x1d\\x3b\\x5d\\x15\\x65\\x43\\xb1\\xc2\\xd1\\x8e\\x62\\x52\\x09\\x92\\x33\\x85\\xd8\\x73\\x3a\\x31\\x1f\\x42\\x80\\xc9\\x55\\xa2\\x92\\x49\\xa7\\x58\\x0d\\x83\\x1e\\x8e\\x73\\x10\\x2b\\x02\\x5f\\xbf\\x42\\x81\\xe8\\x8d\\xd6\\x10\\xf5\\x1a\\x35\\x22\\x5d\\x48\\xd9\\x69\\x5a\\xd5\\x95\\xfc\\x8a\\x2b\\xb7\\xb6\\xe8\\x86\\xca\\x7f\\xb3\\xee\\x25\\x0b\\x57\\x5a\\x35\\xab\\x6b\\x41\\xc9\\x7d\\x1c\\xce\\x0f\\xf6\\x91\\xf8\\xcc\\x28\\x04\\xe8\\xe3\\xbe\\x77\\x8b\\x5c\\x7c\\x87\\xc7\\x4a\\x3b\\x67\\x6f\\x64\\xc3\\xf3\\xe7\\x92\\x80\\xf2\\x24\\x49\\x88\\x5d\\xf6\\x71\\x7f\\xe8\\xdd\\xb6\\x3d\\xc7\\x73\\xbd\\xd6\\x68\\xa7\\x24\\xa0\\xdb\\x55\\x02\\xaa\\x40\\x23\\x7b\\xb8\\x3b\\x4a\\x92\\xad\\x81\\x1a\\xad\\x46\\xc3\\x7e\\x64\\x9d\\x13\\xeb\\x59\\xb2\\x56\\x1b\\x44\\x7c\\x39\\x4e\\x27\\xb3\\x54\\xf9\\x08\\x7a\\xa9\\x6b\\x22\\xd7\\xbb\\xd5\\x56\\x7f\\xfe\\xbc\\x68\\xf5\\x7d\\x0f\\x21\\xa9\\xbe\\x91\\xea\\xa1\\x83\\x84\\xaa\\x53\\x2a\\x4e\\xdf\\x54\\x37\\x78\\x09\\xa5\\x4c\\xd8\\xd9\\xd1\\xb9\\x00\\x6d\\x30\\xac\\x2e\\xeb\\xac\\x64\\x09\\xae\\xeb\\x96\\x1c\\xf6\\xf4\\xb5\\xc4\\x11\\xb4\\xb9\\xae\\x9b\\x6b\\x2a\\x14\\x7d\\x54\\x41\\x64\\x8c\\xe2\\x75\\x4a\\x38\\xce\\xd3\\xd5\\xc0\\xe1\\x1c\\xad\\x51\\x43\\x39\\xae\\x90\\xe6\\xdf\\xdf\\x18\\x2f\\x41\\x6c\\x6b\\xae\\xeb\\xc2\\xcb\\xb5\\x36\\x79\\xf9\\xd4\\xda\\x59\\x98\\x48\\x6e\\x45\\xd9\\x34\\x2e\\xcc\\xa0\\x37\\xb9\\x78\\xc9\\x86\\xea\\xa2\\xf7\\xb6\\x27\\xeb\\x21\\xbf\\xe4\\x87\\xea\\x5e\\x2b\\x13\\x76\\xa5\\x3b\\x9d\\x5a\\xda\\x80\\x80\\xc5\\x38\\x1d\\xee\\x8e\\x44\\x0a\\x89\\x6e\\xc7\\x56\\x26\\x77\\x59\\x18\\x8c\\xb1\\xb5\\x67\\x2b\\x2b\\xeb\\x0e\\xc5\\xd8\\x37\\x88\\x03\\xc7\\xa3\\x8d\\x43\\xdc\\xbd\\xc4\\x1b\\xa7\\xfc\\xd2\\x1b\\x65\\xdc\\x7c\\xc7\\x8d\\xbc\\x10\\x19\\x4d\\xe4\\x69\\x05\\xba\\x42\\xa9\\x25\\xb9\\xc2\\x93\\x80\\xe0\\xab\\x06\\xd8\\x10\\x6b\\x2d\\xa6\\x90\\x45\\x55\\x77\\xff\\x31\\x97\\x3c\\x82\\x0a\\xae\\xba\\x6a\\xf2\\xeb\\x29\\x8b\\x10\\xe8\\xaa\\x51\\xd1\\x57\\xc9\\x57\\x79\\x5a\\x50\\x47\\x95\\x16\\x90\\x65\\x18\\xb6\\x40\\xf7\\x49\\x15\\x62\\xa3\\xcb\\xcf\\x78\\xcc\\xab\\xc5\\xaa\\xe3\\x5b\\x41\\x54\\xc6\\xdc\\x4a\\x71\\x84\\xe2\\x3b\\x3c\\x06\\x24\\xe2\\xfa\\xb6\\x83\\x44\\x14\\x94\\xfc\\x75\\xd6\\x16\\x07\\xea\\xa2\\xb1\\x61\\x83\\x36\\xcd\\x63\\x0f\\x7b\\xad\\x15\\x9a\\xb6\\x1a\\xd0\\x88\\x1b\\xa6\\x0c\\xf1\\x41\\xb4\\x54\\x0f\\xa2\\x71\\xaa\\x97\\x89\\x2b\\xdd\\x6f\\xad\\x2a\\x00\\x1d\\x01\\xe8\\x54\\x10\\x91\\xd7\\xd4\\xfc\\xa8\\x69\\xa0\\x37\\x3d\\x24\\xe8\\x4d\\x64\\xe6\\x17\\xa3\\xaa\\xc3\\x94\\x12\\x62\\x49\\x09\\x6e\\xb3\\x96\\xef\\xbf\\xd5\\xdc\\xa9\\xbc\\xab\\x6c\\xef\\xd2\\x3d\\xdd\\x7b\\xc8\\xef\\xb5\\x36\\x54\\xe7\\x77\\xba\\x33\\x95\\x2b\\x8d\\x12\\xb6\\xda\\x4c\\x58\\xbe\\x6a\\x97\\x36\\x66\\x25\\xab\\xe9\\x79\\x9b\\xab\\x56\\x90\\x55\\x55\\x74\\xd6\\x32\\xc8\\x0f\\x7d\\xfc\\xe1\\x34\\xf5\\xf4\\x47\\x8f\\xc8\\x10\\x15\\x8d\\x87\\x2e\\x38\\x08\\x39\\xdf\\xf1\\x2f\\x77\\xc8\\x0a\\xd8\\x60\\x79\\x79\\xbd\\xc4\\xf4\\x5e\\x94\\xc0\\x16\\x2c\\x7c\\x8a\\x09\\x9f\\x61\\x16\\xb0\\x13\\x7c\\x83\\x43\\xb5\\x43\\xeb\\x32\\x59\\xa4\\x82\\x23\\x2b\\x67\\x26\\x8e\\x2d\\x91\\x5b\\x0d\\x3b\\x0e\\x3b\\x70\\xf2\\x8b\\xf3\\xec\\x3c\\xd9\\x2e\\x9e\\xf9\\x64\\x20\\x7f\\x62\\xd7\\xa1\\xd2\\x86\\xfb\\x97\\x3a\\x84\\x4c\\xb6\\x4a\\xb2\\xb9\\x0e\\x22\\x15\\x8a\\x49\\x03\\x87\\xa7\\xc7\\x80\\x02\\x9d\\x2c\\x3b\\xdc\\xbf\\x94\\xff\\xeb\\x62\\xbc\\x9c\\x63\\xf0\\xaa\\x77\\xf1\\x7b\\xaf\\x77\\x5a\\x64\\xa9\\xeb\\x71\\x03\\xcb\\xd1\\xe1\\xa0\\x57\\xc2\\xcb\\x41\\x03\\xb8\\x77\\x62\\x00\\xcb\\x41\\x13\\xb8\\xac\\x7b\\xbd\\x67\\xd6\\xfb\\xe7\\xf3\\xb3\\xb7\\x29\\x56\\xbe\\x19\\x50\\xaf\\xcf\\xcf\\xde\\xbf\\x53\\x16\\x7b\\xf5\\x67\\x82\\x96\\xa3\\xf0\\xea\\x4f\\x13\\xc7\\x9b\\xc3\\x0f\\xfd\\xd3\\xd7\\xa9\\xe4\\xf8\\x5d\\x23\\x11\\xca\\x60\\x07\\xbd\\x0b\\x05\\x14\\x4f\\xe6\\x1a\\x06\\xfd\\xd8\\xb4\\xe2\\x41\\x93\\x4b\\xa0\\x5f\\xce\\xfa\\x19\\x0f\\xc8\\x37\\x93\\xdd\\xcf\\xcf\\x06\\x03\\x01\\x10\\xcb\\xc9\\xb3\\x48\\x12\\x54\\x31\\xf6\\x4f\\x4f\\x7b\\xe7\\x66\\x46\\x49\\xaa\\x64\\x3c\\xe9\\xfd\\x7c\\x61\\xe6\\x13\\x94\\x4a\\xb6\\xf3\\xfe\\xeb\\x37\\x15\\x7c\\x92\\x94\\x67\\x2c\\xb1\\x9f\\x95\\xa3\\xf1\\xcc\\x38\\xcf\\xd9\\xb9\\x31\\xd2\\xcf\\xce\\xcd\\xe0\\xe3\\xde\\x79\\x29\\x14\\xe4\\x68\\x45\\x28\\x9c\\x7d\\xe8\\x95\\x26\\xa8\\xcb\\x41\\x53\\xe2\\x79\\x96\\xda\\xab\\x06\\xbd\\x93\\xde\\xd1\\x45\\xca\\x67\\xc5\\x03\\x86\\xfd\\xcf\\x2e\\x73\\xd8\\x82\\xa5\\xc0\\x51\\x52\\xec\\xe2\\x8d\\x4e\\x58\\xf9\\x98\\xd1\\xce\\xb0\\x8a\\xf7\\xa7\\xfd\\xac\\x41\\xe5\\x6b\\x45\\xac\\xbe\\x1f\\xe4\\x42\\x5f\\xbd\\x1a\\x70\\xbf\\xbf\\x31\\x14\\x0c\\x39\\x68\\x06\\x9f\\x67\\x2a\\x80\\x7a\\x35\\xe1\\xfa\\x17\\x6f\\x32\\x30\\xf1\\x96\\x37\\x40\\x36\\xf5\\xbc\\x96\\x32\\x9d\\x67\\x49\\x8e\\x96\\x34\\xb4\\x31\\x49\\xbd\\x56\\x8a\\xc8\\xc4\\x88\\xb9\\x74\\x9e\\x9c\\xc4\\x66\\x15\\x4f\\x06\\x1d\\x0f\\x07\\x9a\\x3e\\x30\\x93\\x8f\\x12\\xfa\\x11\\xd4\\xed\\xb2\\xe7\\x8e\\x7b\\x09\\x44\\x3e\\x1a\\x31\\xfd\\xc1\\x45\\xff\\x54\\x07\\x44\\xfa\\x6a\\xaa\\x97\\x7f\\xf4\\x07\\x17\\x5a\\xa7\\xf8\\xc5\\x00\\x3b\\x3d\\xd3\\xc2\\xc4\\x93\\x09\\xf0\\x3e\\x59\\xb9\\x7c\\x34\\x95\\x82\\xfe\\xaf\\xb1\\x17\\xd5\\xa3\\x21\\x9c\\x4b\\xc1\\x5c\\x1d\\xf9\\x12\\xfa\\xfe\\xdd\\xf1\\xe1\\x45\\x2c\\x34\\x7e\\x36\\x4c\\x9c\\x2b\\xb2\\x09\\xc0\\x90\\x16\\xba\\xe0\\xac\\x6f\\x14\\xd7\\x9e\\x67\\xd8\\xf5\\x26\\xf7\\xa0\\x9f\\x2e\\xef\\x3f\\x5d\\x2f\\x23\\x8e\\xab\\x3b\\xed\\x7a\\x56\\xd1\\x0c\\xbd\\x91\\x04\\xb8\\xd7\\xc8\\x22\\xaa\\x7b\\xd9\\x64\\xb2\\x6c\\x53\\x2b\\x9b\\xfc\\xe1\\xa8\\xdc\\xe0\\x72\\xff\\x52\\x28\\xa5\\x0f\\x57\\x2d\\x84\\x76\\xd2\\x97\\xed\\xad\\xf2\\xb5\\x5f\\x3c\\xf8\\x5b\\xbc\\x9c\\xf4\\x52\\xb4\\xd4\\xf5\\x7c\\xf7\\x1e\\x7a\\x83\\x1b\\xd2\\x60\\x62\\x05\\x77\\xff\\xf7\\x22\\xb9\\x31\\x91\\xeb\\xf6\\xa9\\x3b\\x8e\\xc8\\xd8\\xe7\\x56\\xc6\\x3a\\xb2\\x7f\\xcd\\x35\\xcd\\x66\\x96\\xb4\\xd7\\x2a\\x30\\xc7\\x7d\\x97\\x6d\\x38\\x2f\\x17\\xcf\\x15\\x9d\\xc7\\xd4\\x96\\x1f\\x06\\x03\\x66\\xfa\\x4e\\xd5\\x1b\\x1b\\x5a\\xcf\\x4e\\x2a\\x41\\x75\\xe9\\xaa\\xce\\x65\\x72\\x4b\\x3d\\x57\\x76\\xee\\xf1\\x15\\x89\\x3e\\xff\\xe7\\x2a\\xa1\\x28\\x84\\x1e\\x29\\x94\\xc1\\xc2\\x4d\\x82\\x61\\xd6\\xff\\xe5\\x94\\xd6\\x13\\x96\\xaa\\x8e\\x4c\\x9d\\x27\\x5f\\xda\\xa8\\xf9\\x1a\\x85\\xeb\\xd4\\x8c\\xe0\\x60\\x62\\x15\\x1d\\xb3\\x2f\\x2f\\xf5\\x84\\xdc\\x24\\x1a\\x6b\\xd9\\x6b\\xcf\\xf8\\x48\\x54\\x79\\xf9\\xa2\\x0e\\x4b\\x9b\\x5f\\xcf\\x7f\\xb3\\x06\\xb1\\x61\\x45\\xa9\\xfa\\xbc\\x24\\x5f\\x44\\x7e\\xea\\xdf\\xb9\\xd2\\xf4\\xad\\x3c\\x7d\\x65\\x7c\\x47\\x74\\x2d\\xf3\\x48\\x5d\\x85\\x65\\x7a\\x1c\\xd1\\x55\\xb4\\xfa\\xf7\\xa4\\x79\\x50\\xbe\\x19\\x4a\\x7e\\xc7\\x8e\\x6b\\x10\\xcb\\x5f\\x13\\x09\\xc5\\x8a\\x08\\x78\\x29\\x4b\\x6c\\x52\\x29\\x01\\x44\\x11\\xc9\\x17\\xdd\\xfd\\x67\\x43\\xf0\\xa8\\x47\\x3c\\x3e\\x6a\\x5a\\x8e\\x63\\x0d\\x3f\\x7a\\xce\\xe8\\xeb\\x50\\x0c\\x8d\\xbe\\x3a\\xf2\\xcd\\x6e\\x3a\\x4e\\x0a\\xb2\\xbd\\x03\\xb1\\xae\\x4c\\x01\\xce\\xfd\\xda\\x94\\x00\\x85\\x01\\xe4\\xdd\\x1c\\x9a\\xb6\\xa0\\xa1\\x2e\\xfa\\xe4\\x0e\\x92\\x9c\\x0d\\x73\\x76\\x2c\\xfe\\x1c\\xd6\\x81\\xc7\\xee\\xce\\x0c\\x46\\xd2\\x26\\xf9\\xa6\\x0b\\xb1\\xa7\\x5d\\x78\\xed\\xda\\xfa\\x97\\x94\\x47\\x6e\\x9d\\x36\\xf7\\x65\\xed\\x3f\\x76\\x26\\xf2\\x9a\\xd6\\xf0\\x63\\x33\\xf1\\x9f\\xe5\\x35\\x77\\xc4\\x00\\xd2\\x23\\xb6\\x6d\\x37\\xbd\\xe6\\x8e\\xba\\x3a\\xaa\\xdb\\xd0\\x79\\xfc\\xa4\\x9c\\xdc\\x7b\\x41\\xf6\\x37\\xc5\\x87\\x74\\xb7\\x7e\\xa8\\x1b\\xe8\\xab\\x94\\xbe\\x32\\xd1\\x3b\\x29\\xbd\\x63\\xa2\\x23\\xaf\\x99\\x22\\x92\\xfb\\xaf\\x1c\\xa4\\xe9\\x65\\x5a\\x86\\x26\\xaa\\x3f\\xda\\x9d\\x54\\x05\\x4c\\xf6\\x92\\xb1\\xa2\\x1d\\x29\\x0e\\x7b\\x16\\x6a\\xd5\\x2d\\xc3\\xb8\\x8d\\x5a\\x75\\x3b\\x55\\xe5\\x36\\x20\\x57\\xd1\\xad\\x9b\\x6a\\x04\\x5d\\x20\\xf8\\x36\\xf7\\x4b\\xb5\\xf4\\xc1\\xca\\x8e\\x1f\\xfe\\x1d\\x00\\x00\\xff\\xff\\x00\\x98\\x2e\\x65\\xe5\\x28\\x00\\x00\"\n\nfunc assetsClientStaticJsVkbeautifyJsBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientStaticJsVkbeautifyJs,\n\t\t\"assets/client/static/js/vkbeautify.js\",\n\t)\n}\n\nfunc assetsClientStaticJsVkbeautifyJs() (*asset, error) {\n\tbytes, err := assetsClientStaticJsVkbeautifyJsBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/static/js/vkbeautify.js\", size: 10469, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientTlsNgrokrootCrt = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\x6c\\xd3\\xb7\\xd6\\xaa\\x58\\x00\\xc5\\xf1\\x9e\\xa7\\x98\\xde\\x35\\x8b\\xac\\x52\\xdc\\xe2\\x24\\x90\\x0f\\x01\\x0f\\x1c\\x92\\x1d\\x20\\x41\\x30\\x20\\x41\\xc2\\xd3\\xcf\\x9a\\x5b\\x4c\\x33\\x77\\x97\\xff\\x7a\\xff\\xfe\\xfe\\x77\\x90\\x18\\xa6\\xf3\\x17\\x22\\x1e\\x33\\x75\\x13\\x01\\x46\\x7e\\x57\\xce\\x36\\x4d\\xd4\\x35\\x08\\x81\\x44\\x41\\x88\\xe2\\xf3\\xdd\\x99\\xad\\xd4\\x57\\x2f\\xed\\x06\\x1c\\x58\\xb5\\x9f\\xba\\xbd\\x1b\\xda\\x2c\\x40\\x40\\x07\\x1d\\x60\\x10\\xda\\x9e\\x3d\\x13\\x9a\\xe0\\x90\\x52\\x8c\\x41\\xd7\\x70\\xd9\\xf3\\xb6\\x66\\xd2\\x30\\x25\\x92\\x36\\xda\\x50\\x89\\x31\\x23\\x8a\\x8d\\xdb\\xd9\\xd9\\x80\\x6a\\x33\\x22\\x38\\xe2\\x3b\\xc6\\xcc\\x5e\\x6d\\x1c\\x2c\\x4e\\xf3\\x5f\\x9b\\x75\\x46\\x98\\x0d\\x89\\xc1\\x01\\x31\\x20\\x60\\x9e\\xad\\x44\\x52\\x5f\\xf9\\x53\\xeb\\xcf\\x4f\\xe7\\x9b\\x31\\x84\\x80\\x6f\\xce\\x98\\x26\\x3f\\xd6\\xfb\\x6a\\xd6\\xdf\\xdc\\x01\\x94\\x40\\x48\\x01\\xae\\x2a\\x72\\x01\\x18\\x21\\x40\\xdf\\xa8\\xaa\\x08\\xe4\\x80\\x6d\\x0c\\x03\\xef\\x4e\\xaa\\x15\\xd3\\xdd\\x4b\\x16\\x23\\x73\\xf1\\x7a\\x16\\x34\\xd6\\x7e\\x4c\\x1f\\x9e\\xd5\\xda\\xf0\\x21\\x26\\x67\\x74\\x86\\x0b\\xef\\x49\\xd1\\x51\\x19\\x4d\\x90\\x86\\x93\\x2f\\x96\\x83\\xa2\\x38\\xef\\xa8\\xe4\\xdc\\x69\\x5f\\x7c\\x61\\x6e\\xf0\\xd1\\x91\\xbd\\xc5\\xa2\\x28\\x75\\x81\\x59\\x6a\\xf5\\xca\\x68\\xb6\\x17\\x6a\\xeb\\xae\\xe1\\xae\\x36\\x9c\\x35\\x68\\xa3\\x68\\xec\\x2a\\xcc\\xb4\\xec\\x12\\x59\\xbd\\x69\\x89\\xd7\\x9a\\xe6\\xf0\\x33\\x72\\x81\\x1b\\xd1\\x6f\\x7d\\x24\\xc4\\x7b\\x3d\\x71\\x37\\x1d\\xde\\x52\\xc9\\x5f\\x72\\x36\\xda\\x6c\\x74\\x6f\\x27\\xe6\\x68\\xd2\\xe3\\xaa\\xd2\\x4a\\x83\\x6e\\x8f\\x3d\\x27\\xdb\\x47\\x72\\xa1\\x82\\xbe\\x52\\xa0\\xb8\\xeb\\x78\\x5f\\xa0\\x9c\\x31\\x54\\x4d\\x24\\xb7\\xbb\\xf2\\x3d\\x18\\xbb\\x64\\xe2\\x7f\\x48\\x6d\\x0b\\xce\\x59\\xcd\\xac\\x06\\x8b\\x61\\x35\\xaf\\x46\\x11\\xdf\\xc6\\x31\\xab\\xac\\x6a\\x05\\xc2\\xcb\\xa6\\x8f\\x41\\xba\\xfd\\x98\\xd2\\xe9\\xeb\\xf3\\x52\\x5a\\x37\\xdc\\x29\\xed\\x2f\\xf2\\x81\\xfa\\xfb\\xe0\\x63\\x3e\\x79\\x33\\x77\\x44\\xe0\\xdf\\x73\\x9d\\xd7\\x35\\x61\\x78\\xf5\\x9b\\x5f\\x04\\xee\\x4a\\xf4\\x0d\\xae\\xef\\xa7\\x48\\x50\\xb7\\xa6\\x8a\\x69\\x3f\\x67\\x74\\x03\\xd8\\x0c\\xe3\\xf1\\x2b\\x73\\x76\\xb8\\x28\\x2f\\xdf\\x7b\\x99\\xa3\\x7f\\x2f\\xe9\\xd9\\xb3\\x46\\x6b\\x49\\x41\\x8e\\xc0\\x4c\\x00\\x60\\x7f\\xf8\\x02\\x70\\x11\\xa0\\x04\\xf4\\x60\\x9f\\xa6\\x5e\\x39\\x71\\x4a\\x04\\xbe\\xae\\x42\\x6b\\xbf\\xd1\\xf7\\xbc\\x77\\xd8\\x07\\x8f\\xd7\\xd3\\x1c\\x01\\xec\\xcb\\x60\\x27\\x59\\x0f\\x76\\x6d\\x8a\\xfd\\xf3\\x14\\xf6\\xd4\\xf4\\x5b\\x93\\xd9\\xc6\\xfa\\x49\\x97\\xc5\\x4f\\x4a\\xd2\\xde\\x8b\\xaa\\xf3\\x3e\\x5c\\x9f\\xb5\\x56\\xd1\\xf1\\xe4\\x44\\xed\\x51\\x8b\\x50\\x12\\x34\\xc9\\xf0\\xbd\\x79\\xed\\x7d\\x25\\x95\\x1e\\x0a\\xf7\\x03\\x5f\\x4f\\x40\\xf1\\x06\\xc7\\x52\\xdb\\x4f\\x72\\x55\\x66\\xd7\\xd1\\x08\\xbc\\xbc\\x3a\\xb2\\x7d\\x9c\\xb8\\x3f\\x73\\xb1\\xcc\\xa6\\x27\\x5d\\x63\\xba\\x95\\x07\\xfd\\x7e\\xf9\\x99\\xf9\\x50\\xd5\\x8a\\xf5\\xf2\\x2d\\x8e\\x7b\\x08\\xac\\x50\\x12\\x85\\xb5\\x10\\xea\\x42\\x0f\\xb5\\xb6\\xed\\x45\\x66\\xca\\xc3\\xf5\\xa4\\x76\\x7c\\xf7\\x99\\xc8\\xfb\\x2d\\x53\\x8e\\xa0\\x60\\x19\\x13\\xf1\\xf1\\x49\\x16\\x7f\\xd8\\x6d\\x93\\x97\\x0e\\xd0\\xc3\\x38\\x8e\\x1f\\xb3\\xb0\\x55\\xca\\x49\\x3e\\xf8\\x9e\\x92\\x8c\\x67\\x65\\x55\\xf2\\xe4\\xf4\\x33\\xf1\\x9b\\xad\\x25\\x34\\x69\\x0e\\xb5\\xa4\\x25\\x3b\\x6a\\x71\\xd7\\x79\\x9f\\xd3\\x4b\\xf7\\x80\\x2a\\x42\\x5f\\x89\\xe4\\x75\\xb2\\xec\\x88\\x25\\x6a\\xa8\\xd1\\x48\\xd0\\xdc\\x3e\\x99\\xec\\xce\\xf6\\x26\\x8b\\x62\\x20\\xc1\\xf8\\x72\\x24\\x47\\x77\\xe1\\x51\\x16\\xe8\\x0f\\x6d\\xda\\x62\\xe6\\x0b\\xdc\\x8e\\x06\\x85\\xb0\\x2b\\x7d\\xd9\\xa8\\x6e\\xc9\\xfc\\xeb\\x17\\xf7\\x1b\\x29\\x71\\xf0\\xff\\xe1\\xfe\\x13\\x00\\x00\\xff\\xff\\x4b\\xe5\\xa3\\xef\\xd5\\x03\\x00\\x00\"\n\nfunc assetsClientTlsNgrokrootCrtBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientTlsNgrokrootCrt,\n\t\t\"assets/client/tls/ngrokroot.crt\",\n\t)\n}\n\nfunc assetsClientTlsNgrokrootCrt() (*asset, error) {\n\tbytes, err := assetsClientTlsNgrokrootCrtBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/tls/ngrokroot.crt\", size: 981, mode: os.FileMode(420), modTime: time.Unix(1536311514, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsClientTlsSnakeoilcaCrt = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\x6c\\x95\\xc9\\x0e\\xab\\x4c\\x92\\x85\\xf7\\x3c\\x45\\xef\\x51\\x0b\\x0c\\xb6\\x81\\x45\\x2f\\x92\\x24\\x99\\xc1\\x24\\xa3\\x61\\x67\\x8c\\x0d\\x66\\x9e\\xa7\\xa7\\x6f\\xfd\\xf7\\x4a\\x2d\\x75\\x55\\xc5\\xf2\\x3b\\xa1\\xd0\\x51\\x28\\x42\\xe7\\xbf\\xff\\x29\\x11\\x29\\x9a\\xfd\\x5f\\x10\\xb9\\xbe\\x26\\x6b\\x10\\xf8\\xe8\\x0f\\x25\\x2c\\x4d\\x93\\x65\\x09\\x42\\xb0\\x6e\\x10\\x62\\x58\\xa5\\x36\\xed\\x2a\\x54\\x77\\xb9\\x49\\xc0\\x16\\xf3\\x6a\\x28\\xaa\\x9f\\x22\\x6c\\xb4\\x08\\x70\\x20\\x03\\x49\\xb4\\x2c\\x3c\\x6d\\x10\\xc7\\x52\\x88\\xb1\\x82\\x36\\x3d\\x24\\x82\\x13\\xf9\\x96\\x88\\x14\\x70\\x09\\x10\\x14\\x2d\\x03\\x33\\xf2\\xf4\\x8a\\x92\\xf5\\xdd\\xdc\\xfa\\xd8\\x47\\x9e\\x25\\x82\\xbf\\x5a\\x61\\xe9\\x69\\x93\\x1d\\x29\\x33\\x2d\\x31\\x23\\xcc\\x96\\x8b\\x37\\x94\\xc7\\x12\\x11\\x62\\x2c\\xc9\\x60\\x1a\\xcc\\xe6\\xd6\\xbe\\x1b\\x61\\x34\\x1b\\x7b\\x4d\\x7d\\xf0\\x91\\x37\\x7a\\xb7\\x4e\\xc0\\x58\\x92\\xb5\\x59\\x67\\xb0\\xdb\\x7e\\xf2\\x92\\x37\\xfa\\xf8\\xcb\\xd0\\xff\\x31\\xc2\\x42\\xdb\\x0e\\x4f\\xa0\\x8b\\xb9\\x1d\\x8a\\x20\\xf6\\x41\\x1d\\xfa\\x96\\x6b\\x6d\\xe8\\xaf\\x4d\\x0d\\x6d\\xbd\\x14\\x47\\x7b\\x9f\\x34\\xc2\\x91\\x36\\x75\\x61\\xb9\\xda\\x86\\xc0\\x1f\\xcd\\x40\\x5b\\xbd\\x10\\x09\\xab\\xaf\\xaf\\xe3\\x56\\xa6\\x0c\\xbd\\xcb\\x12\\xf0\\xfe\\x0e\\xb2\\x02\\x78\\x74\\xcb\\xff\\xb3\\xac\\x69\\x50\\x2b\\xff\\x75\\x2f\\x48\\x26\\x00\\x78\\x40\\x90\\xf3\\xe0\\x9f\\x06\\x98\\x1b\\x10\\xe4\\x08\\xdc\\xf1\\x78\\x3c\\x3f\\x46\\xcd\\x83\\x28\\x7a\\x09\\x8b\\xc2\\x04\\xa9\\xf7\\xe8\\xbb\\x4e\\xe5\\xae\\xa7\\x59\\x3d\\x27\\x56\\x4e\\xbe\\x95\\x90\\x1b\\xeb\\x50\\xfd\\x88\\xf3\\xf9\\xc4\\xd0\\x6d\\xe6\\xe0\\x2e\\x1d\\x2d\\x4d\\x3e\\x16\\x8f\\x9d\\x10\\x35\\xba\\x4d\\x02\\x26\\xaf\\xac\\xb0\\x42\\xc5\\xd2\\x9c\\x21\\xca\\xcb\\xcd\\x6b\\x16\\xde\\xbd\\x3b\\x33\\xfc\\x70\\x9b\\x3b\\x5d\\x55\\xba\\x74\\xe0\\x15\\x84\\x03\\xaf\\xea\\x96\\xf2\\x7e\\x69\\x09\\xd1\\x0d\\x66\\x64\\xb7\\x85\\xa7\\x85\\xe9\\xb5\\xa6\\x41\\x5c\\xe0\\x8a\\x8f\\xdf\\x14\\xbd\\x3e\\xc9\\x53\\x7a\\x6c\\x8d\\x1b\\x29\\xa5\\x6d\\x38\\xc3\\x95\\x61\\x96\\x49\\x16\\xa0\\x2e\\xbf\\x29\\x82\\xc7\\x31\\xf9\\x90\\x74\\x49\\x5d\\x5a\\x3e\\x0c\\x41\\x35\\xb0\\xcf\\xef\\xdb\\x79\\xe6\\xc7\\xac\\x6a\\xc3\\xbe\\x7a\\x7a\\x1b\\xe7\\x52\\xb7\\xc8\\x10\\x90\\x8a\\x3f\\x19\\x3d\\x75\\xbf\\x79\\xb7\\xf7\\x2f\\xf7\\x6a\\x6d\\xc4\\x49\\xaa\\x12\\x1c\\x77\\x7b\\xfb\\x51\\x01\\xcb\\x35\\x6e\\x87\\x7b\\x7e\\x1e\\x63\\xc5\\xba\\x3f\\x25\\x4b\\x2f\\x9a\\xb2\\x68\\xfa\\x77\\xb6\\xf4\\x7d\\xd1\\x0f\\x3d\\x4c\\xbf\\xbe\\x3c\\x0f\\xb9\\xa5\\xf8\\x4d\\xa9\\x26\\xfb\\xcf\\x5c\\x2d\\x2e\\x3b\\x39\\xa2\\xa4\\xd2\\x66\\x3c\\xaf\\xce\\xda\\x16\\x29\\xf6\\x92\\xc4\\x2c\\xa6\\xd5\\xb9\\x74\\x7c\\xb3\\xb7\\x9d\\x6d\\xf5\\x1d\\xe5\\x77\\xb7\\x59\\xed\\x29\\x7f\\xba\\xa7\\x37\\x19\\xdb\\x26\\x27\\xab\\x7d\\xf3\\x08\\x4d\\xd0\\x61\\x56\\xce\\x9e\\x44\\x38\\x1e\\x7e\\xd9\\x79\\xe5\\x0f\\xb1\\xba\\x29\\x29\\x89\\x66\\x63\\xc1\\x92\\x91\\x93\\x3b\\xa7\\xcb\\x37\\xe3\\x39\\xc8\\x1d\\x75\\xff\\x70\\x8b\\x78\\x05\\x71\\x6d\\x74\\xb8\\xa3\\x2f\\xc6\\xb9\\x93\\x71\\x13\\x6e\\xae\\x81\\xe6\\x91\\x08\\xa1\\xef\\x26\\xee\\xbb\\xbe\\xdf\\xc9\\xdc\\xaa\\xde\\x4f\\x7a\\x3c\\xba\\xb0\\xcd\\xf3\\x52\\x8b\\xa2\\xe5\\x9a\\xf1\\x0b\\x28\\xd8\\xf2\\x4b\\x92\\x46\\x46\\x4b\\x65\\x4a\\xd5\\x9c\\x04\\x9d\\x1e\\xe5\\x9e\\xbe\\x25\\xb1\\x5f\\x42\\x93\\x48\\xee\\xde\\xfe\\x13\\x37\\x7c\\xed\\x84\\x0c\\xe1\\x57\\x66\\x29\\x79\\xc5\\xce\\xb5\\x24\\x43\\x71\\x1a\\xd5\\x6e\\xe0\\xec\\xe3\\x5c\\x9f\\xaa\\x43\\x8b\\x32\\xa3\\x1a\\x29\\x6f\\xb8\\x48\\x44\\x06\\xd4\\x16\\x5c\\x0a\\x2e\\x2c\\x22\\x22\\xa7\\xb9\\xb3\\x79\\xf4\\x65\\x9b\\x47\\x13\\x0d\\x9f\\xaf\\xb8\\x3e\\x48\\x5f\\x72\\xc8\\x9b\\x94\\x40\\x4b\\x91\\x84\\xaa\\x79\\x56\\x38\\x16\\x06\\xea\\x1c\\x86\\xd5\\x9a\\x49\\x9f\\xa4\\x7c\\xd1\\x10\\xea\\x2d\\x98\\xba\\x1f\\x13\\xbc\\x89\\x55\\x60\\x37\\x8f\\xf4\\xed\\x85\\xbe\\xbf\\xdc\\xae\\x1f\\x9c\\x4e\\x88\\x93\\x91\\xe5\\xab\\x17\\xbb\\x1b\\xce\\xef\\x21\\xdc\\xaf\\x7d\\xc5\\x88\\x9d\\x6c\\xdf\\xb8\\x9c\\xbb\\x73\\x0a\\x5f\\x09\\x7e\\x5a\\x54\\xe2\\xfe\\x9b\\x57\\x39\\x80\\x04\\xd8\\x10\\x00\\xfe\\x7f\\xf8\\xfd\\x3f\\x27\\x8e\\x80\\xfb\\xa5\\x8a\\x30\\x6e\\xe7\\x33\\xd8\\xe4\\x20\\xc7\\x63\\x24\\xd1\\x35\\x15\\xbc\\xa0\\x98\\x8f\\xf5\\xba\\x87\\x90\\x38\\x82\\x17\\xaf\\x4d\\x25\\xbb\\x7e\\x4e\\x50\\xc8\\xde\\x91\\xb4\\x33\\x32\\x49\\x64\\xca\\x2b\\xbf\\xae\\x38\\x9d\\x45\\x45\\x55\\xa9\\x19\\xb6\\xdc\\x3d\\x5a\\x86\\x72\\x7b\\x94\\xa1\\xc9\\xb0\\xc7\\x5e\\xbd\\xf4\\x69\\x6c\\x5d\\x81\\x24\\x7c\\xd7\\x96\\xdb\\xf0\\x23\\xf2\\x97\\x1b\\x47\\x6a\\xf2\\x5d\\x35\\x4e\\x13\\x9a\\x94\\xaa\\x81\\x1f\\xa6\\xab\\x8d\\x62\\x1e\\x9e\\x29\\xd1\\x75\\xd2\\x82\\x2a\\x67\\xae\\x80\\xa6\\x04\\x4f\\x7d\\xf7\\xda\\x4d\\x01\\x74\\x54\\xfb\\x05\\x22\\xae\\xca\\x90\\xbf\\x83\\x9f\\x2d\\x34\\x64\\x63\\xf2\\x65\\xa4\\xb0\\x79\\x49\\x7a\\x4f\\xc8\\x69\\xef\\xd0\\x63\\x57\\xb0\\x7a\\x17\\x9d\\x33\\x4e\\xda\\x3e\\xfd\\xe2\\x92\\xc5\\x15\\xb6\\x23\\xbd\\x7e\\x2d\\x0f\\x06\\xb7\\xc2\\xcd\\x17\\x04\\xa2\\xaf\\x2b\\xc7\\x29\\x78\\xee\\x48\\x1e\\xc2\\x4b\\x48\\xf7\\xfe\\x29\\x38\\x81\\x5e\\xf9\\xfa\\xf9\\xd8\\x82\\x2a\\xd1\\x3c\\x37\\x41\\xa9\\x0f\\x68\\xf8\\x9d\\xfa\\xa0\\x1f\\xa8\\xbe\\x38\\x17\\x3f\\xfc\\x1d\\x5c\\xc7\\x7c\\x47\\xd2\\xef\\x88\\x3d\\x0c\\x5f\\xcc\\xcb\\xf0\\x85\\x0b\\xb3\\xd6\\xf8\\x95\\x45\\xdb\\xad\\x1b\\x90\\xc1\\xed\\xc7\\xee\\x0f\\x53\\xbc\\x85\\x1c\\x0c\\xea\\x72\\x86\\x6d\\xd1\\x7b\\xdc\\xf6\\x48\\x8a\\xed\\xd4\\xd8\\x21\\xa8\\x04\\xd5\\x50\\x69\\x77\\x16\\x08\\x4a\\xc5\\x13\\xb0\\x17\\xef\\x57\\x25\\xdd\\x64\\xaf\\x99\\xc5\\x52\\xc5\\xca\\xbe\\x6f\\x92\\x1b\\x3c\\x36\\xe3\\x67\\x64\\x69\\x9e\\xc0\\x63\\xc0\\x5f\\xfe\\xe9\\x7d\\x74\\xd7\\xba\\xfc\\xf0\\xfa\\x56\\x3b\\x3e\\xe0\\x2b\\xa4\\x23\\x34\\x13\\x59\\xf3\\x9d\\x5b\\x92\\xce\\x55\\xd6\\x75\\xa6\\x90\\x66\\x78\\x92\\x7b\\x4a\\xf7\\x6d\\x7c\\x0d\\xdf\\x37\\x97\\x9d\\xf6\\x69\\xb6\\x03\\x33\\x4a\\xa6\\x07\\xbe\\x0a\\xeb\\x73\\x7d\\x4f\\xb7\\x17\\x41\\x3f\\x82\\xdf\\x27\\x9a\\x7c\\xf7\\x7a\\x23\\x7a\\xe5\\xbd\\xd9\\xfd\\x53\\xaa\\xc8\\xed\\x33\\x60\\xa3\\x6a\\xb7\\xd4\\xee\\x8a\\x17\\xdb\\xdd\\x2e\\xcf\\x81\\xba\\xb4\\x85\\x3b\\x0f\\x63\\xe0\\x68\\x28\\x7f\\xb4\\x62\\x24\\xc2\\x90\\x5f\\xab\\xe2\\x69\\x15\\x42\\x98\\x7e\\xc8\\x0e\\x34\\x84\\xd9\\x6c\\x1f\\xfb\\x62\\x8d\\x77\\xab\\x1c\\xd5\\x28\\xcb\\xc2\\x96\\xd4\\x95\\xb7\\x78\\xeb\\x49\\x60\\x45\\x23\\x7f\\x22\\x32\\x2d\\x7a\\x07\\x82\\x76\\xe9\\x65\\x57\\xe0\\x4f\\xf6\\x9b\\x3e\\xea\\x8f\\x05\\xa3\\xe1\\x8e\\xc9\\xc2\\x72\\x08\\x2b\\xf0\\x8b\\x41\\x77\\x1f\\xea\\xab\\x51\\x5d\\x4d\\x67\\xb5\\x93\\xdf\\x0a\\x6d\\x2c\\x39\\x64\\x54\\x92\\x68\\x98\\xe8\\x8b\\x2e\\x68\\xf7\\x58\\x51\\x08\\x31\\x19\\x67\\xea\\x71\\x9f\\xca\\xcf\\x9e\\x35\\x50\\xc3\\x39\\xaa\\x87\\x2b\\x71\\xf5\\xac\\x25\\xa6\\xf4\\x2a\\xa9\\xbb\\xff\\x21\\xfe\\xa4\\x1d\\xb2\\xa5\\x7f\\x4f\\xc0\\xff\\x0d\\x00\\x00\\xff\\xff\\x92\\x24\\xb8\\x34\\x1e\\x07\\x00\\x00\"\n\nfunc assetsClientTlsSnakeoilcaCrtBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsClientTlsSnakeoilcaCrt,\n\t\t\"assets/client/tls/snakeoilca.crt\",\n\t)\n}\n\nfunc assetsClientTlsSnakeoilcaCrt() (*asset, error) {\n\tbytes, err := assetsClientTlsSnakeoilcaCrtBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/client/tls/snakeoilca.crt\", size: 1822, mode: os.FileMode(420), modTime: time.Unix(1536311328, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\n// Asset loads and returns the asset for the given name.\n// It returns an error if the asset could not be found or\n// could not be loaded.\nfunc Asset(name string) ([]byte, error) {\n\tcannonicalName := strings.Replace(name, \"\\\\\", \"/\", -1)\n\tif f, ok := _bindata[cannonicalName]; ok {\n\t\ta, err := f()\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"Asset %s can't read by error: %v\", name, err)\n\t\t}\n\t\treturn a.bytes, nil\n\t}\n\treturn nil, fmt.Errorf(\"Asset %s not found\", name)\n}\n\n// MustAsset is like Asset but panics when Asset would return an error.\n// It simplifies safe initialization of global variables.\nfunc MustAsset(name string) []byte {\n\ta, err := Asset(name)\n\tif err != nil {\n\t\tpanic(\"asset: Asset(\" + name + \"): \" + err.Error())\n\t}\n\n\treturn a\n}\n\n// AssetInfo loads and returns the asset info for the given name.\n// It returns an error if the asset could not be found or\n// could not be loaded.\nfunc AssetInfo(name string) (os.FileInfo, error) {\n\tcannonicalName := strings.Replace(name, \"\\\\\", \"/\", -1)\n\tif f, ok := _bindata[cannonicalName]; ok {\n\t\ta, err := f()\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"AssetInfo %s can't read by error: %v\", name, err)\n\t\t}\n\t\treturn a.info, nil\n\t}\n\treturn nil, fmt.Errorf(\"AssetInfo %s not found\", name)\n}\n\n// AssetNames returns the names of the assets.\nfunc AssetNames() []string {\n\tnames := make([]string, 0, len(_bindata))\n\tfor name := range _bindata {\n\t\tnames = append(names, name)\n\t}\n\treturn names\n}\n\n// _bindata is a table, holding each asset generator, mapped to its name.\nvar _bindata = map[string]func() (*asset, error){\n\t\"assets/client/page.html\":                           assetsClientPageHtml,\n\t\"assets/client/static/css/bootstrap.min.css\":        assetsClientStaticCssBootstrapMinCss,\n\t\"assets/client/static/css/highlight.min.css\":        assetsClientStaticCssHighlightMinCss,\n\t\"assets/client/static/img/glyphicons-halflings.png\": assetsClientStaticImgGlyphiconsHalflingsPng,\n\t\"assets/client/static/js/angular-sanitize.min.js\":   assetsClientStaticJsAngularSanitizeMinJs,\n\t\"assets/client/static/js/angular.js\":                assetsClientStaticJsAngularJs,\n\t\"assets/client/static/js/base64.js\":                 assetsClientStaticJsBase64Js,\n\t\"assets/client/static/js/highlight.min.js\":          assetsClientStaticJsHighlightMinJs,\n\t\"assets/client/static/js/jquery-1.9.1.min.js\":       assetsClientStaticJsJquery191MinJs,\n\t\"assets/client/static/js/jquery.timeago.js\":         assetsClientStaticJsJqueryTimeagoJs,\n\t\"assets/client/static/js/ngrok.js\":                  assetsClientStaticJsNgrokJs,\n\t\"assets/client/static/js/vkbeautify.js\":             assetsClientStaticJsVkbeautifyJs,\n\t\"assets/client/tls/ngrokroot.crt\":                   assetsClientTlsNgrokrootCrt,\n\t\"assets/client/tls/snakeoilca.crt\":                  assetsClientTlsSnakeoilcaCrt,\n}\n\n// AssetDir returns the file names below a certain\n// directory embedded in the file by go-bindata.\n// For example if you run go-bindata on data/... and data contains the\n// following hierarchy:\n//     data/\n//       foo.txt\n//       img/\n//         a.png\n//         b.png\n// then AssetDir(\"data\") would return []string{\"foo.txt\", \"img\"}\n// AssetDir(\"data/img\") would return []string{\"a.png\", \"b.png\"}\n// AssetDir(\"foo.txt\") and AssetDir(\"notexist\") would return an error\n// AssetDir(\"\") will return []string{\"data\"}.\nfunc AssetDir(name string) ([]string, error) {\n\tnode := _bintree\n\tif len(name) != 0 {\n\t\tcannonicalName := strings.Replace(name, \"\\\\\", \"/\", -1)\n\t\tpathList := strings.Split(cannonicalName, \"/\")\n\t\tfor _, p := range pathList {\n\t\t\tnode = node.Children[p]\n\t\t\tif node == nil {\n\t\t\t\treturn nil, fmt.Errorf(\"Asset %s not found\", name)\n\t\t\t}\n\t\t}\n\t}\n\tif node.Func != nil {\n\t\treturn nil, fmt.Errorf(\"Asset %s not found\", name)\n\t}\n\trv := make([]string, 0, len(node.Children))\n\tfor childName := range node.Children {\n\t\trv = append(rv, childName)\n\t}\n\treturn rv, nil\n}\n\ntype bintree struct {\n\tFunc     func() (*asset, error)\n\tChildren map[string]*bintree\n}\n\nvar _bintree = &bintree{nil, map[string]*bintree{\n\t\"assets\": &bintree{nil, map[string]*bintree{\n\t\t\"client\": &bintree{nil, map[string]*bintree{\n\t\t\t\"page.html\": &bintree{assetsClientPageHtml, map[string]*bintree{}},\n\t\t\t\"static\": &bintree{nil, map[string]*bintree{\n\t\t\t\t\"css\": &bintree{nil, map[string]*bintree{\n\t\t\t\t\t\"bootstrap.min.css\": &bintree{assetsClientStaticCssBootstrapMinCss, map[string]*bintree{}},\n\t\t\t\t\t\"highlight.min.css\": &bintree{assetsClientStaticCssHighlightMinCss, map[string]*bintree{}},\n\t\t\t\t}},\n\t\t\t\t\"img\": &bintree{nil, map[string]*bintree{\n\t\t\t\t\t\"glyphicons-halflings.png\": &bintree{assetsClientStaticImgGlyphiconsHalflingsPng, map[string]*bintree{}},\n\t\t\t\t}},\n\t\t\t\t\"js\": &bintree{nil, map[string]*bintree{\n\t\t\t\t\t\"angular-sanitize.min.js\": &bintree{assetsClientStaticJsAngularSanitizeMinJs, map[string]*bintree{}},\n\t\t\t\t\t\"angular.js\":              &bintree{assetsClientStaticJsAngularJs, map[string]*bintree{}},\n\t\t\t\t\t\"base64.js\":               &bintree{assetsClientStaticJsBase64Js, map[string]*bintree{}},\n\t\t\t\t\t\"highlight.min.js\":        &bintree{assetsClientStaticJsHighlightMinJs, map[string]*bintree{}},\n\t\t\t\t\t\"jquery-1.9.1.min.js\":     &bintree{assetsClientStaticJsJquery191MinJs, map[string]*bintree{}},\n\t\t\t\t\t\"jquery.timeago.js\":       &bintree{assetsClientStaticJsJqueryTimeagoJs, map[string]*bintree{}},\n\t\t\t\t\t\"ngrok.js\":                &bintree{assetsClientStaticJsNgrokJs, map[string]*bintree{}},\n\t\t\t\t\t\"vkbeautify.js\":           &bintree{assetsClientStaticJsVkbeautifyJs, map[string]*bintree{}},\n\t\t\t\t}},\n\t\t\t}},\n\t\t\t\"tls\": &bintree{nil, map[string]*bintree{\n\t\t\t\t\"ngrokroot.crt\":  &bintree{assetsClientTlsNgrokrootCrt, map[string]*bintree{}},\n\t\t\t\t\"snakeoilca.crt\": &bintree{assetsClientTlsSnakeoilcaCrt, map[string]*bintree{}},\n\t\t\t}},\n\t\t}},\n\t}},\n}}\n\n// RestoreAsset restores an asset under the given directory\nfunc RestoreAsset(dir, name string) error {\n\tdata, err := Asset(name)\n\tif err != nil {\n\t\treturn err\n\t}\n\tinfo, err := AssetInfo(name)\n\tif err != nil {\n\t\treturn err\n\t}\n\terr = os.MkdirAll(_filePath(dir, filepath.Dir(name)), os.FileMode(0755))\n\tif err != nil {\n\t\treturn err\n\t}\n\terr = ioutil.WriteFile(_filePath(dir, name), data, info.Mode())\n\tif err != nil {\n\t\treturn err\n\t}\n\terr = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())\n\tif err != nil {\n\t\treturn err\n\t}\n\treturn nil\n}\n\n// RestoreAssets restores an asset under the given directory recursively\nfunc RestoreAssets(dir, name string) error {\n\tchildren, err := AssetDir(name)\n\t// File\n\tif err != nil {\n\t\treturn RestoreAsset(dir, name)\n\t}\n\t// Dir\n\tfor _, child := range children {\n\t\terr = RestoreAssets(dir, filepath.Join(name, child))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t}\n\treturn nil\n}\n\nfunc _filePath(dir, name string) string {\n\tcannonicalName := strings.Replace(name, \"\\\\\", \"/\", -1)\n\treturn filepath.Join(append([]string{dir}, strings.Split(cannonicalName, \"/\")...)...)\n}\n"
  },
  {
    "path": "client/cli.go",
    "content": "package client\n\nimport (\n\t\"cngrok/version\"\n\t\"flag\"\n\t\"fmt\"\n\t\"os\"\n)\n\nconst usage1 string = `Usage: %s [OPTIONS] <本地端口或地址>\nOptions:\n`\n\nconst usage2 string = `\n示例:\n\tngrok clientid 5b9bc\n\n\tngrok -log-level=INFO -log=log.cngrok.log clientid 5b9bc\n\t\n\n\nAdvanced usage: ngrok [OPTIONS] <command> [command args] [...]\n命令:\n\tngrok clientid 5b9bc    \t通过配置隧道Id 启动隧道\n\tngork clientid 5b9bc,5b9bc  \t通过配置多条隧道Id 用英文逗号分割 启动隧道\n\tngrok help                    \t显示帮助\n\tngrok version                 \t显示ngrok版本\n\n示例:\n\tngrok clientid 5b9bbba\n\tngrok -log=stdout clientid 5b9bb,5b9bc\n\tngrok help\n\tngrok version\n\n`\n\ntype Options struct {\n\tconfig    string\n\tlogto     string\n\tloglevel  string\n\tauthtoken string\n\thttpauth  string\n\thostname  string\n\tprotocol  string\n\tsubdomain string\n\tcommand   string\n\targs      []string\n}\n\nfunc ParseArgs() (opts *Options, err error) {\n\tflag.Usage = func() {\n\t\tfmt.Fprintf(os.Stderr, usage1, os.Args[0])\n\t\tflag.PrintDefaults()\n\t\tfmt.Fprintf(os.Stderr, usage2)\n\t}\n\n\t// ServerAddr := flag.String(\n\t// \t\"server_addr\",\n\t// \t\"\",\n\t// \t\"ngrok服务器地址:端口. \")\n\n\t//config := flag.String(\n\t//\t\"config\",\n\t//\t\"\",\n\t//\t\"ngrok配置文件的路径. (default: $HOME/.ngrok)\")\n\n\tlogto := flag.String(\n\t\t\"log\",\n\t\t\"none\",\n\t\t\"将日志消息写入此文件. 'stdout' 和 'none' 有特殊意义\")\n\n\tloglevel := flag.String(\n\t\t\"log-level\",\n\t\t\"ERROR\",\n\t\t\"要记录的消息级别. 其中之一: DEBUG, INFO, WARNING, ERROR\")\n\n\t//authtoken := flag.String(\n\t//\t\"authtoken\",\n\t//\t\"\",\n\t//\t\"用于标识帐户的身份验证令牌\")\n\n\t//httpauth := flag.String(\n\t//\t\"httpauth\",\n\t//\t\"\",\n\t//\t\"username:password 保护公共隧道端点的HTTP基本认证信任\")\n\n\t//subdomain := flag.String(\n\t//\t\"subdomain\",\n\t//\t\"\",\n\t//\t\"从ngrok服务器请求自定义子域. （仅限HTTP和HTTS模式）\")\n\t//\n\t//hostname := flag.String(\n\t//\t\"hostname\",\n\t//\t\"\",\n\t//\t\"从ngrok服务器请求自定义域名. （仅限HTTP和HTTPS）（需要自定义域名CNAME解析至ngrok服务器）\")\n\t//\n\t//protocol := flag.String(\n\t//\t\"proto\",\n\t//\t\"http+https\",\n\t//\t\"通过隧道的流量的协议 {'http', 'https', 'tcp'} (default: 'http+https')\")\n\n\tflag.Parse()\n\n\topts = &Options{\n\t\t//config:    *config,\n\t\tlogto:    *logto,\n\t\tloglevel: *loglevel,\n\t\t//httpauth:  *httpauth,\n\t\t//subdomain: *subdomain,\n\t\t//protocol:  *protocol,\n\t\t//authtoken: *authtoken,\n\t\t//hostname:  *hostname,\n\t\tcommand: flag.Arg(0),\n\t}\n\n\tswitch opts.command {\n\t// case \"list\":\n\t// \topts.args = flag.Args()[1:]\n\t// case \"start\":\n\t// \topts.args = flag.Args()[1:]\n\tcase \"clientid\":\n\t\topts.args = flag.Args()[1:]\n\tcase \"version\":\n\t\tfmt.Println(version.MajorMinor())\n\t\tos.Exit(0)\n\tcase \"help\":\n\t\tflag.Usage()\n\t\tos.Exit(0)\n\tcase \"\":\n\t\terr = fmt.Errorf(\"错误: 请到 http://www.cngrok.com 查看使用教程\")\n\t\treturn\n\n\tdefault:\n\t\tif len(flag.Args()) > 1 {\n\t\t\terr = fmt.Errorf(\"您可以在命令行上指定一个端口以便隧道到达 %d: %v\",\n\t\t\t\tlen(flag.Args()),\n\t\t\t\tflag.Args())\n\t\t\treturn\n\t\t}\n\n\t\topts.command = \"default\"\n\t\topts.args = flag.Args()\n\t}\n\n\treturn\n}\n"
  },
  {
    "path": "client/config.go",
    "content": "package client\n\nimport (\n\t\"cngrok/log\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"gopkg.in/yaml.v1\"\n\t\"io/ioutil\"\n\t\"net\"\n\t\"net/http\"\n\t\"net/url\"\n\t\"os\"\n\t\"os/user\"\n\t\"path\"\n\t\"regexp\"\n\t\"strconv\"\n\t\"strings\"\n)\n\ntype Province struct {\n\tData []struct {\n\t\tHost              string `json:\"host\"`\n\t\tId                string `json:\"_id\"`\n\t\tLocation          string `json:\"location\"`\n\t\tHttpauth_username string `json:\"httpauth_username\"`\n\t\tHttpauth_passwd   string `json:\"httpauth_passwd\"`\n\t\tProtocol          string `json:\"protocol\"`\n\t\tHostname          string `json:\"hostname\"`\n\t\tRemote            uint16 `json:\"remote\"`\n\t\tProduct           struct {\n\t\t\tDomain string `json:\"domain\"`\n\t\t\tType   int    `json:\"type\"`\n\t\t} `json:\"product\"`\n\t} `json:\"data\"`\n\tMessage string `json:\"err\"`\n\tSuccess bool   `json:\"success\"`\n}\n\ntype Configuration struct {\n\tHttpProxy          string                          `yaml:\"http_proxy,omitempty\"`\n\tServerAddr         string                          `yaml:\"server_addr,omitempty\"`\n\tInspectAddr        string                          `yaml:\"inspect_addr,omitempty\"`\n\tTrustHostRootCerts bool                            `yaml:\"trust_host_root_certs,omitempty\"`\n\tAuthToken          string                          `yaml:\"auth_token,omitempty\"`\n\tTunnels            map[string]*TunnelConfiguration `yaml:\"tunnels,omitempty\"`\n\tLogTo              string                          `yaml:\"-\"`\n\tPath               string                          `yaml:\"-\"`\n}\n\ntype TunnelConfiguration struct {\n\tReqId      string            `yaml:\"ReqId,omitempty\"`\n\tSubdomain  string            `yaml:\"subdomain,omitempty\"`\n\tHostname   string            `yaml:\"hostname,omitempty\"`\n\tProtocols  map[string]string `yaml:\"proto,omitempty\"`\n\tHttpAuth   string            `yaml:\"auth,omitempty\"`\n\tRemotePort uint16            `yaml:\"remote_port,omitempty\"`\n}\n\nfunc LoadConfiguration(opts *Options) (config *Configuration, err error) {\n\tconfig = new(Configuration)\n\t// set configuration defaults\n\tif config.ServerAddr == \"\" {\n\t\tconfig.ServerAddr = defaultServerAddr\n\t}\n\n\tif config.InspectAddr == \"\" {\n\t\tconfig.InspectAddr = \"127.0.0.1:4040\"\n\t}\n\n\tif config.HttpProxy == \"\" {\n\t\tconfig.HttpProxy = os.Getenv(\"http_proxy\")\n\t}\n\n\t// validate and normalize configuration\n\tif config.InspectAddr != \"disabled\" {\n\t\tif config.InspectAddr, err = normalizeAddress(config.InspectAddr, \"inspect_addr\"); err != nil {\n\t\t\treturn\n\t\t}\n\t}\n\n\tif config.ServerAddr, err = normalizeAddress(config.ServerAddr, \"server_addr\"); err != nil {\n\t\treturn\n\t}\n\n\tif config.HttpProxy != \"\" {\n\t\tvar proxyUrl *url.URL\n\t\tif proxyUrl, err = url.Parse(config.HttpProxy); err != nil {\n\t\t\treturn\n\t\t} else {\n\t\t\tif proxyUrl.Scheme != \"http\" && proxyUrl.Scheme != \"https\" {\n\t\t\t\terr = fmt.Errorf(\"Proxy url scheme must be 'http' or 'https', got %v\", proxyUrl.Scheme)\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\t}\n\t// override configuration with command-line options\n\tconfig.LogTo = opts.logto\n\t//config.Path = configPath\n\tif opts.authtoken != \"\" {\n\t\tconfig.AuthToken = opts.authtoken\n\t}\n\n\tswitch opts.command {\n\t// start a single tunnel, the default, simple ngrok behavior\n\tcase \"default\":\n\t\tfmt.Print(\"请到 http://www.cngrok.com 查看使用教程\\n\")\n\t\tos.Exit(0)\n\t\tconfig.Tunnels = make(map[string]*TunnelConfiguration)\n\t\tconfig.Tunnels[\"default\"] = &TunnelConfiguration{\n\t\t\tSubdomain: opts.subdomain,\n\t\t\tHostname:  opts.hostname,\n\t\t\tHttpAuth:  opts.httpauth,\n\t\t\tProtocols: make(map[string]string),\n\t\t}\n\n\t\tfor _, proto := range strings.Split(opts.protocol, \"+\") {\n\t\t\tif err = validateProtocol(proto, \"default\"); err != nil {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif config.Tunnels[\"default\"].Protocols[proto], err = normalizeAddress(opts.args[0], \"\"); err != nil {\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\tcase \"clientid\":\n\t\ttunnelid := opts.args[0]\n\t\tif len(opts.args) == 0 {\n\t\t\tfmt.Print(\"请到 http://www.cngrok.com 查看使用教程\\n\")\n\t\t\tos.Exit(0)\n\t\t}\n\t\tfor _, id := range strings.Split(opts.args[0], \",\") {\n\t\t\tif isOk, _ := regexp.MatchString(\"^[0-9a-fA-F]{24}$\", id); isOk {\n\t\t\t\t// 多通道使用\n\t\t\t\treq, _ := http.NewRequest(\"GET\", \"https://www.cngrok.com/public/tunnels/\"+tunnelid, nil)\n\t\t\t\treq.Header.Add(\"accept\", \"application/json\")\n\t\t\t\treq.Header.Add(\"content-type\", \"application/json\")\n\t\t\t\tres, _ := http.DefaultClient.Do(req)\n\t\t\t\tdefer res.Body.Close()\n\t\t\t\tbody, _ := ioutil.ReadAll(res.Body)\n\t\t\t\t//fmt.Println(string(body))\n\t\t\t\tvar provinces Province\n\t\t\t\tif err := json.Unmarshal(body, &provinces); err != nil || len(provinces.Data) == 0 {\n\t\t\t\t\tfmt.Printf(\"参数错误, 请到 http://www.cngrok.com 查看使用教程\\n\")\n\t\t\t\t\tos.Exit(0)\n\t\t\t\t}\n\t\t\t\tif !provinces.Success {\n\t\t\t\t\tfmt.Print(provinces.Message)\n\t\t\t\t\tos.Exit(0)\n\t\t\t\t}\n\n\t\t\t\tconfig.TrustHostRootCerts = true\n\n\t\t\t\tconfig.Tunnels = make(map[string]*TunnelConfiguration)\n\t\t\t\tfor _, clientInfo := range provinces.Data {\n\t\t\t\t\tif clientInfo.Product.Type == 1 {\n\t\t\t\t\t\tconfig.ServerAddr = clientInfo.Product.Domain + \":4443\"\n\t\t\t\t\t\tif config.ServerAddr, err = normalizeAddress(config.ServerAddr, \"server_addr\"); err != nil {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif clientInfo.Location, err = normalizeAddress(clientInfo.Location, \"client_addr\"); err != nil {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif err = validateProtocol(clientInfo.Protocol, clientInfo.Id); err != nil {\n\t\t\t\t\t\t\treturn\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tHttpAuth := clientInfo.Httpauth_username + \":\" + clientInfo.Httpauth_passwd\n\t\t\t\t\t\tif clientInfo.Httpauth_username == \"\" && clientInfo.Httpauth_passwd == \"\" {\n\t\t\t\t\t\t\tHttpAuth = \"\"\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconfig.Tunnels[clientInfo.Id] = &TunnelConfiguration{\n\t\t\t\t\t\t\tReqId:     clientInfo.Id,\n\t\t\t\t\t\t\tSubdomain: clientInfo.Host,\n\t\t\t\t\t\t\tHostname:  clientInfo.Hostname,\n\t\t\t\t\t\t\tHttpAuth:  HttpAuth,\n\t\t\t\t\t\t\tProtocols: make(map[string]string),\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconfig.Tunnels[clientInfo.Id].Protocols[clientInfo.Protocol] = clientInfo.Location\n\n\t\t\t\t\t\tconfig.Tunnels[clientInfo.Id].RemotePort = clientInfo.Remote\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t} else {\n\t\t\t\tfmt.Print(\"隧道ID 格式错误 ,请到 http://www.cngrok.com 查看使用教程\\n\")\n\t\t\t\tos.Exit(0)\n\t\t\t}\n\t\t}\n\n\tcase \"list\":\n\t\tfmt.Print(\"请到 http://www.cngrok.com 查看使用教程\\n\")\n\t\tos.Exit(0)\n\n\t\tfor name, _ := range config.Tunnels {\n\t\t\tfmt.Println(name)\n\t\t}\n\t\tos.Exit(0)\n\n\t// start tunnels\n\tcase \"start\":\n\t\tfmt.Print(\"请到 http://www.cngrok.com 查看使用教程\\n\")\n\t\tos.Exit(0)\n\n\t\tif len(opts.args) == 0 {\n\t\t\terr = fmt.Errorf(\"您必须至少指定一个隧道才能启动\")\n\t\t\treturn\n\t\t}\n\n\t\trequestedTunnels := make(map[string]bool)\n\t\tfor _, arg := range opts.args {\n\t\t\trequestedTunnels[arg] = true\n\t\t\tfmt.Println(config.Tunnels)\n\t\t\tif _, ok := config.Tunnels[arg]; !ok {\n\t\t\t\terr = fmt.Errorf(\"请求启动的隧道 %s 未在配置文件中定义.\", arg)\n\t\t\t\treturn\n\t\t\t}\n\t\t}\n\n\t\tfor name, _ := range config.Tunnels {\n\t\t\tif !requestedTunnels[name] {\n\t\t\t\tdelete(config.Tunnels, name)\n\t\t\t}\n\t\t}\n\n\tdefault:\n\t\terr = fmt.Errorf(\"未知的命令: %s\", opts.command)\n\t\treturn\n\t}\n\n\treturn\n}\n\nfunc defaultPath() string {\n\tuser, err := user.Current()\n\n\t// user.Current() does not work on linux when cross compiling because\n\t// it requires CGO; use os.Getenv(\"HOME\") hack until we compile natively\n\thomeDir := os.Getenv(\"HOME\")\n\tif err != nil {\n\t\tlog.Warn(\"无法获取用户的主目录: %s. Using $HOME: %s\", err.Error(), homeDir)\n\t} else {\n\t\thomeDir = user.HomeDir\n\t}\n\n\treturn path.Join(homeDir, \".ngrok\")\n}\n\nfunc normalizeAddress(addr string, propName string) (string, error) {\n\t// normalize port to address\n\tif _, err := strconv.Atoi(addr); err == nil {\n\t\taddr = \":\" + addr\n\t}\n\n\thost, port, err := net.SplitHostPort(addr)\n\tif err != nil {\n\t\treturn \"\", fmt.Errorf(\"无效地址 %s '%s': %s\", propName, addr, err.Error())\n\t}\n\n\tif host == \"\" {\n\t\thost = \"127.0.0.1\"\n\t}\n\n\treturn fmt.Sprintf(\"%s:%s\", host, port), nil\n}\n\nfunc validateProtocol(proto, propName string) (err error) {\n\tswitch proto {\n\tcase \"http\", \"https\", \"http+https\", \"tcp\":\n\tdefault:\n\t\terr = fmt.Errorf(\"协议无效 %s: %s\", propName, proto)\n\t}\n\n\treturn\n}\n\nfunc SaveAuthToken(configPath, authtoken string) (err error) {\n\t// empty configuration by default for the case that we can't read it\n\tc := new(Configuration)\n\n\t// read the configuration\n\toldConfigBytes, err := ioutil.ReadFile(configPath)\n\tif err == nil {\n\t\t// unmarshal if we successfully read the configuration file\n\t\tif err = yaml.Unmarshal(oldConfigBytes, c); err != nil {\n\t\t\treturn\n\t\t}\n\t}\n\n\t// no need to save, the authtoken is already the correct value\n\tif c.AuthToken == authtoken {\n\t\treturn\n\t}\n\n\t// update auth token\n\tc.AuthToken = authtoken\n\n\t// rewrite configuration\n\tnewConfigBytes, err := yaml.Marshal(c)\n\tif err != nil {\n\t\treturn\n\t}\n\n\terr = ioutil.WriteFile(configPath, newConfigBytes, 0600)\n\treturn\n}\n"
  },
  {
    "path": "client/controller.go",
    "content": "package client\r\n\r\nimport (\r\n\t\"cngrok/client/mvc\"\r\n\t\"cngrok/client/views/term\"\r\n\t\"cngrok/client/views/web\"\r\n\t\"cngrok/log\"\r\n\t\"cngrok/proto\"\r\n\t\"cngrok/util\"\r\n\t\"fmt\"\r\n\t\"sync\"\r\n)\r\n\r\ntype command interface{}\r\n\r\ntype cmdQuit struct {\r\n\t// display this message after quit\r\n\tmessage string\r\n}\r\n\r\ntype cmdPlayRequest struct {\r\n\t// the tunnel to play this request over\r\n\ttunnel mvc.Tunnel\r\n\r\n\t// the bytes of the request to issue\r\n\tpayload []byte\r\n}\r\n\r\n// The MVC Controller\r\ntype Controller struct {\r\n\t// Controller logger\r\n\tlog.Logger\r\n\r\n\t// the model sends updates through this broadcast channel\r\n\tupdates *util.Broadcast\r\n\r\n\t// the model\r\n\tmodel mvc.Model\r\n\r\n\t// the views\r\n\tviews []mvc.View\r\n\r\n\t// internal structure to issue commands to the controller\r\n\tcmds chan command\r\n\r\n\t// internal structure to synchronize access to State object\r\n\tstate chan mvc.State\r\n\r\n\t// options\r\n\tconfig *Configuration\r\n}\r\n\r\n// public interface\r\nfunc NewController() *Controller {\r\n\tctl := &Controller{\r\n\t\tLogger:  log.NewPrefixLogger(\"controller\"),\r\n\t\tupdates: util.NewBroadcast(),\r\n\t\tcmds:    make(chan command),\r\n\t\tviews:   make([]mvc.View, 0),\r\n\t\tstate:   make(chan mvc.State),\r\n\t}\r\n\r\n\treturn ctl\r\n}\r\n\r\nfunc (ctl *Controller) State() mvc.State {\r\n\treturn <-ctl.state\r\n}\r\n\r\nfunc (ctl *Controller) Update(state mvc.State) {\r\n\tctl.updates.In() <- state\r\n}\r\n\r\nfunc (ctl *Controller) Updates() *util.Broadcast {\r\n\treturn ctl.updates\r\n}\r\n\r\nfunc (ctl *Controller) Shutdown(message string) {\r\n\tctl.cmds <- cmdQuit{message: message}\r\n}\r\n\r\nfunc (ctl *Controller) PlayRequest(tunnel mvc.Tunnel, payload []byte) {\r\n\tctl.cmds <- cmdPlayRequest{tunnel: tunnel, payload: payload}\r\n}\r\n\r\nfunc (ctl *Controller) Go(fn func()) {\r\n\tgo func() {\r\n\t\tdefer func() {\r\n\t\t\tif r := recover(); r != nil {\r\n\t\t\t\terr := util.MakePanicTrace(r)\r\n\t\t\t\tctl.Error(err)\r\n\t\t\t\tctl.Shutdown(err)\r\n\t\t\t}\r\n\t\t}()\r\n\r\n\t\tfn()\r\n\t}()\r\n}\r\n\r\n// private functions\r\nfunc (ctl *Controller) doShutdown() {\r\n\tctl.Info(\"Shutting down\")\r\n\r\n\tvar wg sync.WaitGroup\r\n\r\n\t// wait for all of the views, plus the model\r\n\twg.Add(len(ctl.views) + 1)\r\n\r\n\tfor _, v := range ctl.views {\r\n\t\tvClosure := v\r\n\t\tctl.Go(func() {\r\n\t\t\tvClosure.Shutdown()\r\n\t\t\twg.Done()\r\n\t\t})\r\n\t}\r\n\r\n\tctl.Go(func() {\r\n\t\tctl.model.Shutdown()\r\n\t\twg.Done()\r\n\t})\r\n\r\n\twg.Wait()\r\n}\r\n\r\nfunc (ctl *Controller) AddView(v mvc.View) {\r\n\tctl.views = append(ctl.views, v)\r\n}\r\n\r\nfunc (ctl *Controller) GetWebInspectAddr() string {\r\n\treturn ctl.config.InspectAddr\r\n}\r\n\r\nfunc (ctl *Controller) SetupModel(config *Configuration) *ClientModel {\r\n\tmodel := newClientModel(config, ctl)\r\n\tctl.model = model\r\n\treturn model\r\n}\r\n\r\nfunc (ctl *Controller) GetModel() *ClientModel {\r\n\treturn ctl.model.(*ClientModel)\r\n}\r\n\r\nfunc (ctl *Controller) Run(config *Configuration) {\r\n\t// Save the configuration\r\n\tctl.config = config\r\n\r\n\tvar model *ClientModel\r\n\r\n\tif ctl.model == nil {\r\n\t\tmodel = ctl.SetupModel(config)\r\n\t} else {\r\n\t\tmodel = ctl.model.(*ClientModel)\r\n\t}\r\n\r\n\t// init the model\r\n\tvar state mvc.State = model\r\n\r\n\t// init web ui\r\n\tvar webView *web.WebView\r\n\tif config.InspectAddr != \"disabled\" {\r\n\t\twebView = web.NewWebView(ctl, config.InspectAddr)\r\n\t\tctl.AddView(webView)\r\n\t}\r\n\r\n\t// init term ui\r\n\tvar termView *term.TermView\r\n\tif config.LogTo != \"stdout\" {\r\n\t\ttermView = term.NewTermView(ctl)\r\n\t\tctl.AddView(termView)\r\n\t}\r\n\r\n\tfor _, protocol := range model.GetProtocols() {\r\n\t\tswitch p := protocol.(type) {\r\n\t\tcase *proto.Http:\r\n\t\t\tif termView != nil {\r\n\t\t\t\tctl.AddView(termView.NewHttpView(p))\r\n\t\t\t}\r\n\r\n\t\t\tif webView != nil {\r\n\t\t\t\tctl.AddView(webView.NewHttpView(p))\r\n\t\t\t}\r\n\t\tdefault:\r\n\t\t}\r\n\t}\r\n\r\n\tctl.Go(func() { autoUpdate(state, config.AuthToken) })\r\n\tctl.Go(ctl.model.Run)\r\n\r\n\tupdates := ctl.updates.Reg()\r\n\tdefer ctl.updates.UnReg(updates)\r\n\r\n\tdone := make(chan int)\r\n\tfor {\r\n\t\tselect {\r\n\t\tcase obj := <-ctl.cmds:\r\n\t\t\tswitch cmd := obj.(type) {\r\n\t\t\tcase cmdQuit:\r\n\t\t\t\tmsg := cmd.message\r\n\t\t\t\tgo func() {\r\n\t\t\t\t\tctl.doShutdown()\r\n\t\t\t\t\tfmt.Println(msg)\r\n\t\t\t\t\tdone <- 1\r\n\t\t\t\t}()\r\n\r\n\t\t\tcase cmdPlayRequest:\r\n\t\t\t\tctl.Go(func() { ctl.model.PlayRequest(cmd.tunnel, cmd.payload) })\r\n\t\t\t}\r\n\r\n\t\tcase obj := <-updates:\r\n\t\t\tstate = obj.(mvc.State)\r\n\r\n\t\tcase ctl.state <- state:\r\n\t\tcase <-done:\r\n\t\t\treturn\r\n\t\t}\r\n\t}\r\n}\r\n"
  },
  {
    "path": "client/main.go",
    "content": "package client\r\n\r\nimport (\r\n\t\"cngrok/log\"\r\n\t\"cngrok/util\"\r\n\t\"fmt\"\r\n\t\"github.com/inconshreveable/mousetrap\"\r\n\t\"math/rand\"\r\n\t\"os\"\r\n\t\"runtime\"\r\n\t\"time\"\r\n)\r\n\r\nfunc init() {\r\n\tif runtime.GOOS == \"windows\" {\r\n\t\tif mousetrap.StartedByExplorer() {\r\n\t\t\tfmt.Println(\"请不要直接双击运行ngrok!\")\r\n\t\t\tfmt.Println(\"你需要打开cmd.exe并从命令行中运行!\")\r\n\t\t\ttime.Sleep(5 * time.Second)\r\n\t\t\tos.Exit(1)\r\n\r\n\t\t}\r\n\r\n\t}\r\n}\r\nfunc Main() {\r\n\t// parse options\r\n\topts, err := ParseArgs()\r\n\tif err != nil {\r\n\t\tfmt.Println(err)\r\n\t\tos.Exit(1)\r\n\t}\r\n\r\n\t// set up logging\r\n\tlog.LogTo(opts.logto, opts.loglevel)\r\n\r\n\t// read configuration file\r\n\tconfig, err := LoadConfiguration(opts)\r\n\tif err != nil {\r\n\t\tfmt.Println(err)\r\n\t\tos.Exit(1)\r\n\t}\r\n\r\n\t// seed random number generator\r\n\tseed, err := util.RandomSeed()\r\n\tif err != nil {\r\n\t\tfmt.Printf(\"无法安全地生成随机数生成器！\")\r\n\t\tos.Exit(1)\r\n\t}\r\n\trand.Seed(seed)\r\n\r\n\tNewController().Run(config)\r\n}\r\n"
  },
  {
    "path": "client/metrics.go",
    "content": "package client\r\n\r\nimport (\r\n\tmetrics \"github.com/rcrowley/go-metrics\"\r\n)\r\n\r\nconst (\r\n\tsampleSize  int     = 1028\r\n\tsampleAlpha float64 = 0.015\r\n)\r\n\r\ntype ClientMetrics struct {\r\n\t// metrics\r\n\tconnGauge       metrics.Gauge\r\n\tconnMeter       metrics.Meter\r\n\tconnTimer       metrics.Timer\r\n\tproxySetupTimer metrics.Timer\r\n\tbytesIn         metrics.Histogram\r\n\tbytesOut        metrics.Histogram\r\n\tbytesInCount    metrics.Counter\r\n\tbytesOutCount   metrics.Counter\r\n}\r\n\r\nfunc NewClientMetrics() *ClientMetrics {\r\n\treturn &ClientMetrics{\r\n\t\tconnGauge:       metrics.NewGauge(),\r\n\t\tconnMeter:       metrics.NewMeter(),\r\n\t\tconnTimer:       metrics.NewTimer(),\r\n\t\tproxySetupTimer: metrics.NewTimer(),\r\n\t\tbytesIn:         metrics.NewHistogram(metrics.NewExpDecaySample(sampleSize, sampleAlpha)),\r\n\t\tbytesOut:        metrics.NewHistogram(metrics.NewExpDecaySample(sampleSize, sampleAlpha)),\r\n\t\tbytesInCount:    metrics.NewCounter(),\r\n\t\tbytesOutCount:   metrics.NewCounter(),\r\n\t}\r\n}\r\n"
  },
  {
    "path": "client/model.go",
    "content": "package client\n\nimport (\n\t\"cngrok/client/mvc\"\n\t\"cngrok/conn\"\n\t\"cngrok/log\"\n\t\"cngrok/msg\"\n\t\"cngrok/proto\"\n\t// \"cngrok/util\"\n\t\"cngrok/version\"\n\t\"crypto/tls\"\n\t\"fmt\"\n\t\"github.com/rcrowley/go-metrics\"\n\t\"io/ioutil\"\n\t\"math\"\n\t\"runtime\"\n\t\"strings\"\n\t\"sync/atomic\"\n\t\"time\"\n)\n\nconst (\n\tdefaultServerAddr   = \"free.cngrok.com:443\"\n\tpingInterval        = 20 * time.Second\n\tmaxPongLatency      = 15 * time.Second\n\tupdateCheckInterval = 6 * time.Hour\n\tBadGateway          = `<html>\n<body style=\"background-color: #97a8b9\">\n    <div style=\"margin:auto; width:400px;padding: 20px 60px; background-color: #D3D3D3; border: 5px solid maroon;\">\n        <h2>Tunnel %s unavailable</h2>\n        <p>Unable to initiate connection to <strong>%s</strong>. A web server must be running on port <strong>%s</strong> to complete the tunnel.</p>\n`\n)\n\ntype ClientModel struct {\n\tlog.Logger\n\n\tid            string\n\ttunnels       map[string]mvc.Tunnel\n\tserverVersion string\n\tmetrics       *ClientMetrics\n\tupdateStatus  mvc.UpdateStatus\n\tconnStatus    mvc.ConnStatus\n\tprotoMap      map[string]proto.Protocol\n\tprotocols     []proto.Protocol\n\tctl           mvc.Controller\n\tserverAddr    string\n\tproxyUrl      string\n\tauthToken     string\n\ttlsConfig     *tls.Config\n\ttunnelConfig  map[string]*TunnelConfiguration\n\tconfigPath    string\n}\n\nfunc newClientModel(config *Configuration, ctl mvc.Controller) *ClientModel {\n\tprotoMap := make(map[string]proto.Protocol)\n\tprotoMap[\"http\"] = proto.NewHttp()\n\tprotoMap[\"https\"] = protoMap[\"http\"]\n\tprotoMap[\"tcp\"] = proto.NewTcp()\n\tprotocols := []proto.Protocol{protoMap[\"http\"], protoMap[\"tcp\"]}\n\n\tm := &ClientModel{\n\t\tLogger: log.NewPrefixLogger(\"client\"),\n\n\t\t// server address\n\t\tserverAddr: config.ServerAddr,\n\n\t\t// proxy address\n\t\tproxyUrl: config.HttpProxy,\n\n\t\t// auth token\n\t\tauthToken: config.AuthToken,\n\n\t\t// connection status\n\t\tconnStatus: mvc.ConnConnecting,\n\n\t\t// update status\n\t\tupdateStatus: mvc.UpdateNone,\n\n\t\t// metrics\n\t\tmetrics: NewClientMetrics(),\n\n\t\t// protocols\n\t\tprotoMap: protoMap,\n\n\t\t// protocol list\n\t\tprotocols: protocols,\n\n\t\t// open tunnels\n\t\ttunnels: make(map[string]mvc.Tunnel),\n\n\t\t// controller\n\t\tctl: ctl,\n\n\t\t// tunnel configuration\n\t\ttunnelConfig: config.Tunnels,\n\n\t\t// config path\n\t\tconfigPath: config.Path,\n\t}\n\n\t// configure TLS\n\tif config.TrustHostRootCerts {\n\t\tm.Info(\"信任主机的根证书\")\n\t\tm.tlsConfig = &tls.Config{}\n\t} else {\n\t\tm.Info(\"信任的根CA: %v\", rootCrtPaths)\n\t\tvar err error\n\t\tif m.tlsConfig, err = LoadTLSConfig(rootCrtPaths); err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t}\n\n\t// configure TLS SNI\n\tm.tlsConfig.ServerName = serverName(m.serverAddr)\n\n\treturn m\n}\n\n// mvc.State interface\nfunc (c ClientModel) GetProtocols() []proto.Protocol { return c.protocols }\nfunc (c ClientModel) GetClientVersion() string       { return version.MajorMinor() }\nfunc (c ClientModel) GetServerVersion() string       { return c.serverVersion }\nfunc (c ClientModel) GetTunnels() []mvc.Tunnel {\n\ttunnels := make([]mvc.Tunnel, 0)\n\tfor _, t := range c.tunnels {\n\t\ttunnels = append(tunnels, t)\n\t}\n\treturn tunnels\n}\nfunc (c ClientModel) GetConnStatus() mvc.ConnStatus     { return c.connStatus }\nfunc (c ClientModel) GetUpdateStatus() mvc.UpdateStatus { return c.updateStatus }\n\nfunc (c ClientModel) GetConnectionMetrics() (metrics.Meter, metrics.Timer) {\n\treturn c.metrics.connMeter, c.metrics.connTimer\n}\n\nfunc (c ClientModel) GetBytesInMetrics() (metrics.Counter, metrics.Histogram) {\n\treturn c.metrics.bytesInCount, c.metrics.bytesIn\n}\n\nfunc (c ClientModel) GetBytesOutMetrics() (metrics.Counter, metrics.Histogram) {\n\treturn c.metrics.bytesOutCount, c.metrics.bytesOut\n}\nfunc (c ClientModel) SetUpdateStatus(updateStatus mvc.UpdateStatus) {\n\tc.updateStatus = updateStatus\n\tc.update()\n}\n\n// mvc.Model interface\nfunc (c *ClientModel) PlayRequest(tunnel mvc.Tunnel, payload []byte) {\n\tvar localConn conn.Conn\n\tlocalConn, err := conn.Dial(tunnel.LocalAddr, \"prv\", nil)\n\tif err != nil {\n\t\tc.Warn(\"Failed to open private leg to %s: %v\", tunnel.LocalAddr, err)\n\t\treturn\n\t}\n\n\tdefer localConn.Close()\n\tlocalConn = tunnel.Protocol.WrapConn(localConn, mvc.ConnectionContext{Tunnel: tunnel, ClientAddr: \"127.0.0.1\"})\n\tlocalConn.Write(payload)\n\tioutil.ReadAll(localConn)\n}\n\nfunc (c *ClientModel) Shutdown() {\n}\n\nfunc (c *ClientModel) update() {\n\tc.ctl.Update(c)\n}\n\nfunc (c *ClientModel) Run() {\n\t// how long we should wait before we reconnect\n\tmaxWait := 30 * time.Second\n\twait := 1 * time.Second\n\n\tfor {\n\t\t// run the control channel\n\t\tc.control()\n\n\t\t// control only returns when a failure has occurred, so we're going to try to reconnect\n\t\tif c.connStatus == mvc.ConnOnline {\n\t\t\twait = 1 * time.Second\n\t\t}\n\n\t\tlog.Info(\"等待 %d 秒后重新连接\", int(wait.Seconds()))\n\t\ttime.Sleep(wait)\n\t\t// exponentially increase wait time\n\t\twait = 2 * wait\n\t\twait = time.Duration(math.Min(float64(wait), float64(maxWait)))\n\t\tc.connStatus = mvc.ConnReconnecting\n\t\tc.update()\n\t}\n}\n\n// Establishes and manages a tunnel control connection with the server\nfunc (c *ClientModel) control() {\n\tdefer func() {\n\t\tif r := recover(); r != nil {\n\t\t\tlog.Error(\"控制恢复从故障 %v\", r)\n\t\t}\n\t}()\n\n\t// establish control channel\n\tvar (\n\t\tctlConn conn.Conn\n\t\terr     error\n\t)\n\tif c.proxyUrl == \"\" {\n\t\t// simple non-proxied case, just connect to the server\n\t\tctlConn, err = conn.Dial(c.serverAddr, \"ctl\", c.tlsConfig)\n\t} else {\n\t\tctlConn, err = conn.DialHttpProxy(c.proxyUrl, c.serverAddr, \"ctl\", c.tlsConfig)\n\t}\n\tif err != nil {\n\t\tpanic(err)\n\t}\n\tdefer ctlConn.Close()\n\n\t// authenticate with the server\n\tauth := &msg.Auth{\n\t\tClientId:  c.id,\n\t\tOS:        runtime.GOOS,\n\t\tArch:      runtime.GOARCH,\n\t\tVersion:   version.Proto,\n\t\tMmVersion: version.MajorMinor(),\n\t\tUser:      c.authToken,\n\t}\n\n\tif err = msg.WriteMsg(ctlConn, auth); err != nil {\n\t\tpanic(err)\n\t}\n\n\t// wait for the server to authenticate us\n\tvar authResp msg.AuthResp\n\tif err = msg.ReadMsgInto(ctlConn, &authResp); err != nil {\n\t\tpanic(err)\n\t}\n\n\tif authResp.Error != \"\" {\n\t\temsg := fmt.Sprintf(\"无法进行身份验证对服务器: %s\", authResp.Error)\n\t\tc.ctl.Shutdown(emsg)\n\t\treturn\n\t}\n\n\tc.id = authResp.ClientId\n\tc.serverVersion = authResp.MmVersion\n\tc.Info(\"Authenticated with server, client id: %v\", c.id)\n\tc.update()\n\tif err = SaveAuthToken(c.configPath, c.authToken); err != nil {\n\t\tc.Error(\"未能保存认证令牌: %v\", err)\n\t}\n\n\t// request tunnels\n\treqIdToTunnelConfig := make(map[string]*TunnelConfiguration)\n\tfor _, config := range c.tunnelConfig {\n\t\t// create the protocol list to ask for\n\t\tvar protocols []string\n\t\tfor proto, _ := range config.Protocols {\n\t\t\tprotocols = append(protocols, proto)\n\t\t}\n\n\t\treqTunnel := &msg.ReqTunnel{\n\t\t\tReqId: config.ReqId,\n\t\t\t// ReqId:      util.RandId(8),\n\t\t\tProtocol:   strings.Join(protocols, \"+\"),\n\t\t\tHostname:   config.Hostname,\n\t\t\tSubdomain:  config.Subdomain,\n\t\t\tHttpAuth:   config.HttpAuth,\n\t\t\tRemotePort: config.RemotePort,\n\t\t}\n\n\t\t// send the tunnel request\n\t\tif err = msg.WriteMsg(ctlConn, reqTunnel); err != nil {\n\t\t\tpanic(err)\n\t\t}\n\n\t\t// save request id association so we know which local address\n\t\t// to proxy to later\n\t\treqIdToTunnelConfig[reqTunnel.ReqId] = config\n\t}\n\n\t// start the heartbeat\n\tlastPong := time.Now().UnixNano()\n\tc.ctl.Go(func() { c.heartbeat(&lastPong, ctlConn) })\n\n\t// main control loop\n\tfor {\n\t\tvar rawMsg msg.Message\n\t\tif rawMsg, err = msg.ReadMsg(ctlConn); err != nil {\n\t\t\tpanic(err)\n\t\t}\n\n\t\tswitch m := rawMsg.(type) {\n\t\tcase *msg.ReqProxy:\n\t\t\tc.ctl.Go(c.proxy)\n\n\t\tcase *msg.Pong:\n\t\t\tatomic.StoreInt64(&lastPong, time.Now().UnixNano())\n\n\t\tcase *msg.NewTunnel:\n\t\t\tif m.Error != \"\" {\n\t\t\t\temsg := fmt.Sprintf(\"服务器无法分配隧道: %s\", m.Error)\n\t\t\t\tc.Error(emsg)\n\t\t\t\tc.ctl.Shutdown(emsg)\n\t\t\t\tcontinue\n\t\t\t}\n\n\t\t\ttunnel := mvc.Tunnel{\n\t\t\t\tPublicUrl: m.Url,\n\t\t\t\tLocalAddr: reqIdToTunnelConfig[m.ReqId].Protocols[m.Protocol],\n\t\t\t\tProtocol:  c.protoMap[m.Protocol],\n\t\t\t}\n\n\t\t\tc.tunnels[tunnel.PublicUrl] = tunnel\n\t\t\tc.connStatus = mvc.ConnOnline\n\n\t\t\tc.Info(\"建立隧道 %v\", tunnel.PublicUrl)\n\t\t\tc.update()\n\n\t\tdefault:\n\t\t\tctlConn.Warn(\"忽略未知控制消息 %v \", m)\n\t\t}\n\t}\n}\n\n// Establishes and manages a tunnel proxy connection with the server\nfunc (c *ClientModel) proxy() {\n\tvar (\n\t\tremoteConn conn.Conn\n\t\terr        error\n\t)\n\n\tif c.proxyUrl == \"\" {\n\t\tremoteConn, err = conn.Dial(c.serverAddr, \"pxy\", c.tlsConfig)\n\t} else {\n\t\tremoteConn, err = conn.DialHttpProxy(c.proxyUrl, c.serverAddr, \"pxy\", c.tlsConfig)\n\t}\n\n\tif err != nil {\n\t\tlog.Error(\"Failed to establish proxy connection: %v\", err)\n\t\treturn\n\t}\n\tdefer remoteConn.Close()\n\n\terr = msg.WriteMsg(remoteConn, &msg.RegProxy{ClientId: c.id})\n\tif err != nil {\n\t\tremoteConn.Error(\"Failed to write RegProxy: %v\", err)\n\t\treturn\n\t}\n\n\t// wait for the server to ack our register\n\tvar startPxy msg.StartProxy\n\tif err = msg.ReadMsgInto(remoteConn, &startPxy); err != nil {\n\t\tremoteConn.Error(\"Server failed to write StartProxy: %v\", err)\n\t\treturn\n\t}\n\n\ttunnel, ok := c.tunnels[startPxy.Url]\n\tif !ok {\n\t\tremoteConn.Error(\"Couldn't find tunnel for proxy: %s\", startPxy.Url)\n\t\treturn\n\t}\n\n\t// start up the private connection\n\tstart := time.Now()\n\tlocalConn, err := conn.Dial(tunnel.LocalAddr, \"prv\", nil)\n\tif err != nil {\n\t\tremoteConn.Warn(\"Failed to open private leg %s: %v\", tunnel.LocalAddr, err)\n\n\t\tif tunnel.Protocol.GetName() == \"http\" {\n\t\t\t// try to be helpful when you're in HTTP mode and a human might see the output\n\t\t\tbadGatewayBody := fmt.Sprintf(BadGateway, tunnel.PublicUrl, tunnel.LocalAddr, tunnel.LocalAddr)\n\t\t\tremoteConn.Write([]byte(fmt.Sprintf(`HTTP/1.0 502 Bad Gateway\nContent-Type: text/html\nContent-Length: %d\n\n%s`, len(badGatewayBody), badGatewayBody)))\n\t\t}\n\t\treturn\n\t}\n\tdefer localConn.Close()\n\n\tm := c.metrics\n\tm.proxySetupTimer.Update(time.Since(start))\n\tm.connMeter.Mark(1)\n\tc.update()\n\tm.connTimer.Time(func() {\n\t\tlocalConn := tunnel.Protocol.WrapConn(localConn, mvc.ConnectionContext{Tunnel: tunnel, ClientAddr: startPxy.ClientAddr})\n\t\tbytesIn, bytesOut := conn.Join(localConn, remoteConn)\n\t\tm.bytesIn.Update(bytesIn)\n\t\tm.bytesOut.Update(bytesOut)\n\t\tm.bytesInCount.Inc(bytesIn)\n\t\tm.bytesOutCount.Inc(bytesOut)\n\t})\n\tc.update()\n}\n\n// Hearbeating to ensure our connection ngrokd is still live\nfunc (c *ClientModel) heartbeat(lastPongAddr *int64, conn conn.Conn) {\n\tlastPing := time.Unix(atomic.LoadInt64(lastPongAddr)-1, 0)\n\tping := time.NewTicker(pingInterval)\n\tpongCheck := time.NewTicker(time.Second)\n\n\tdefer func() {\n\t\tconn.Close()\n\t\tping.Stop()\n\t\tpongCheck.Stop()\n\t}()\n\n\tfor {\n\t\tselect {\n\t\tcase <-pongCheck.C:\n\t\t\tlastPong := time.Unix(0, atomic.LoadInt64(lastPongAddr))\n\t\t\tneedPong := lastPong.Sub(lastPing) < 0\n\t\t\tpongLatency := time.Since(lastPing)\n\n\t\t\tif needPong && pongLatency > maxPongLatency {\n\t\t\t\tc.Info(\"Last ping: %v, Last pong: %v\", lastPing, lastPong)\n\t\t\t\tc.Info(\"Connection stale, haven't gotten PongMsg in %d seconds\", int(pongLatency.Seconds()))\n\t\t\t\treturn\n\t\t\t}\n\n\t\tcase <-ping.C:\n\t\t\terr := msg.WriteMsg(conn, &msg.Ping{})\n\t\t\tif err != nil {\n\t\t\t\tconn.Debug(\"Got error %v when writing PingMsg\", err)\n\t\t\t\treturn\n\t\t\t}\n\t\t\tlastPing = time.Now()\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "client/mvc/controller.go",
    "content": "package mvc\r\n\r\nimport (\r\n\t\"cngrok/util\"\r\n)\r\n\r\ntype Controller interface {\r\n\t// how the model communicates that it has changed state\r\n\tUpdate(State)\r\n\r\n\t// instructs the controller to shut the app down\r\n\tShutdown(message string)\r\n\r\n\t// PlayRequest instructs the model to play requests\r\n\tPlayRequest(tunnel Tunnel, payload []byte)\r\n\r\n\t// A channel of updates\r\n\tUpdates() *util.Broadcast\r\n\r\n\t// returns the current state\r\n\tState() State\r\n\r\n\t// safe wrapper for running go-routines\r\n\tGo(fn func())\r\n\r\n\t// the address where the web inspection interface is running\r\n\tGetWebInspectAddr() string\r\n}\r\n"
  },
  {
    "path": "client/mvc/model.go",
    "content": "package mvc\r\n\r\ntype Model interface {\r\n\tRun()\r\n\r\n\tShutdown()\r\n\r\n\tPlayRequest(tunnel Tunnel, payload []byte)\r\n}\r\n"
  },
  {
    "path": "client/mvc/state.go",
    "content": "package mvc\r\n\r\nimport (\r\n\t\"cngrok/proto\"\r\n\tmetrics \"github.com/rcrowley/go-metrics\"\r\n)\r\n\r\ntype UpdateStatus int\r\n\r\nconst (\r\n\tUpdateNone = -1 * iota\r\n\tUpdateInstalling\r\n\tUpdateReady\r\n\tUpdateAvailable\r\n)\r\n\r\ntype ConnStatus int\r\n\r\nconst (\r\n\tConnConnecting = iota\r\n\tConnReconnecting\r\n\tConnOnline\r\n)\r\n\r\ntype Tunnel struct {\r\n\tPublicUrl string\r\n\tProtocol  proto.Protocol\r\n\tLocalAddr string\r\n}\r\n\r\ntype ConnectionContext struct {\r\n\tTunnel     Tunnel\r\n\tClientAddr string\r\n}\r\n\r\ntype State interface {\r\n\tGetClientVersion() string\r\n\tGetServerVersion() string\r\n\tGetTunnels() []Tunnel\r\n\tGetProtocols() []proto.Protocol\r\n\tGetUpdateStatus() UpdateStatus\r\n\tGetConnStatus() ConnStatus\r\n\tGetConnectionMetrics() (metrics.Meter, metrics.Timer)\r\n\tGetBytesInMetrics() (metrics.Counter, metrics.Histogram)\r\n\tGetBytesOutMetrics() (metrics.Counter, metrics.Histogram)\r\n\tSetUpdateStatus(UpdateStatus)\r\n}\r\n"
  },
  {
    "path": "client/mvc/view.go",
    "content": "package mvc\r\n\r\ntype View interface {\r\n\tShutdown()\r\n}\r\n"
  },
  {
    "path": "client/release.go",
    "content": "package client\r\n\r\nimport \"net\"\r\n\r\nvar (\r\n\trootCrtPaths = []string{\"assets/client/tls/ngrokroot.crt\"}\r\n)\r\n\r\n// server name in release builds is the host part of the server address\r\nfunc serverName(addr string) string {\r\n\thost, _, err := net.SplitHostPort(addr)\r\n\r\n\t// should never panic because the config parser calls SplitHostPort first\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\r\n\treturn host\r\n}\r\n"
  },
  {
    "path": "client/tls.go",
    "content": "package client\n\nimport (\n\t\"cngrok/client/assets\"\n\t_ \"crypto/sha512\"\n\t\"crypto/tls\"\n\t\"crypto/x509\"\n\t\"encoding/pem\"\n\t\"fmt\"\n)\n\nfunc LoadTLSConfig(rootCertPaths []string) (*tls.Config, error) {\n\tpool := x509.NewCertPool()\n\n\tfor _, certPath := range rootCertPaths {\n\n\t\trootCrt, err := assets.Asset(certPath)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\n\t\tpemBlock, _ := pem.Decode(rootCrt)\n\t\tif pemBlock == nil {\n\t\t\treturn nil, fmt.Errorf(\"Bad PEM data\")\n\t\t}\n\n\t\tcerts, err := x509.ParseCertificates(pemBlock.Bytes)\n\t\tif err != nil {\n\t\t\treturn nil, err\n\t\t}\n\n\t\tpool.AddCert(certs[0])\n\t}\n\n\treturn &tls.Config{RootCAs: pool}, nil\n}\n"
  },
  {
    "path": "client/update.go",
    "content": "// +build !release,!autoupdate\r\n\r\npackage client\r\n\r\nimport (\r\n\t\"cngrok/client/mvc\"\r\n)\r\n\r\n// no auto-updating in debug mode\r\nfunc autoUpdate(state mvc.State, token string) {\r\n}\r\n"
  },
  {
    "path": "client/views/term/area.go",
    "content": "// shared internal functions for handling output to the terminal\r\npackage term\r\n\r\nimport (\r\n\t\"fmt\"\r\n\ttermbox \"github.com/nsf/termbox-go\"\r\n)\r\n\r\nconst (\r\n\tfgColor = termbox.ColorWhite\r\n\tbgColor = termbox.ColorDefault\r\n)\r\n\r\ntype area struct {\r\n\t// top-left corner\r\n\tx, y int\r\n\r\n\t// size of the area\r\n\tw, h int\r\n\r\n\t// default colors\r\n\tfgColor, bgColor termbox.Attribute\r\n}\r\n\r\nfunc NewArea(x, y, w, h int) *area {\r\n\treturn &area{x, y, w, h, fgColor, bgColor}\r\n}\r\n\r\nfunc (a *area) Clear() {\r\n\tfor i := 0; i < a.w; i++ {\r\n\t\tfor j := 0; j < a.h; j++ {\r\n\t\t\ttermbox.SetCell(a.x+i, a.y+j, ' ', a.fgColor, a.bgColor)\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunc (a *area) APrintf(fg termbox.Attribute, x, y int, arg0 string, args ...interface{}) {\r\n\ts := fmt.Sprintf(arg0, args...)\r\n\tfor i, ch := range s {\r\n\t\ttermbox.SetCell(a.x+x+i, a.y+y, ch, fg, bgColor)\r\n\t}\r\n}\r\n\r\nfunc (a *area) Printf(x, y int, arg0 string, args ...interface{}) {\r\n\ta.APrintf(a.fgColor, x, y, arg0, args...)\r\n}\r\n"
  },
  {
    "path": "client/views/term/http.go",
    "content": "package term\r\n\r\nimport (\r\n\t\"cngrok/client/mvc\"\r\n\t\"cngrok/log\"\r\n\t\"cngrok/proto\"\r\n\t\"cngrok/util\"\r\n\ttermbox \"github.com/nsf/termbox-go\"\r\n\t\"unicode/utf8\"\r\n)\r\n\r\nconst (\r\n\tsize          = 10\r\n\tpathMaxLength = 25\r\n)\r\n\r\ntype HttpView struct {\r\n\tlog.Logger\r\n\t*area\r\n\r\n\thttpProto    *proto.Http\r\n\tHttpRequests *util.Ring\r\n\tshutdown     chan int\r\n\ttermView     *TermView\r\n}\r\n\r\nfunc colorFor(status string) termbox.Attribute {\r\n\tswitch status[0] {\r\n\tcase '3':\r\n\t\treturn termbox.ColorCyan\r\n\tcase '4':\r\n\t\treturn termbox.ColorYellow\r\n\tcase '5':\r\n\t\treturn termbox.ColorRed\r\n\tdefault:\r\n\t}\r\n\treturn termbox.ColorWhite\r\n}\r\n\r\nfunc newTermHttpView(ctl mvc.Controller, termView *TermView, proto *proto.Http, x, y int) *HttpView {\r\n\tv := &HttpView{\r\n\t\thttpProto:    proto,\r\n\t\tHttpRequests: util.NewRing(size),\r\n\t\tarea:         NewArea(x, y, 70, size+5),\r\n\t\tshutdown:     make(chan int),\r\n\t\ttermView:     termView,\r\n\t\tLogger:       log.NewPrefixLogger(\"view\", \"term\", \"http\"),\r\n\t}\r\n\tctl.Go(v.Run)\r\n\treturn v\r\n}\r\n\r\nfunc (v *HttpView) Run() {\r\n\tupdates := v.httpProto.Txns.Reg()\r\n\r\n\tfor {\r\n\t\tselect {\r\n\t\tcase txn := <-updates:\r\n\t\t\tv.Debug(\"有HTTP更新\")\r\n\t\t\tif txn.(*proto.HttpTxn).Resp == nil {\r\n\t\t\t\tv.HttpRequests.Add(txn)\r\n\t\t\t}\r\n\t\t\tv.Render()\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunc (v *HttpView) Render() {\r\n\tv.Clear()\r\n\tv.Printf(0, 0, \"网页请求\")\r\n\tv.Printf(0, 1, \"-------------\")\r\n\tfor i, obj := range v.HttpRequests.Slice() {\r\n\t\ttxn := obj.(*proto.HttpTxn)\r\n\t\tpath := truncatePath(txn.Req.URL.Path)\r\n\t\tv.Printf(0, 3+i, \"%s %v\", txn.Req.Method, path)\r\n\t\tif txn.Resp != nil {\r\n\t\t\tv.APrintf(colorFor(txn.Resp.Status), 30, 3+i, \"%s\", txn.Resp.Status)\r\n\t\t}\r\n\t}\r\n\tv.termView.Flush()\r\n}\r\n\r\nfunc (v *HttpView) Shutdown() {\r\n\tclose(v.shutdown)\r\n}\r\n\r\nfunc truncatePath(path string) string {\r\n\t// Truncate all long strings based on rune count\r\n\tif utf8.RuneCountInString(path) > pathMaxLength {\r\n\t\tpath = string([]rune(path)[:pathMaxLength])\r\n\t}\r\n\r\n\t// By this point, len(path) should be < pathMaxLength if we're dealing with single-byte runes.\r\n\t// Otherwise, we have a multi-byte string and need to calculate the size of each rune and\r\n\t// truncate manually.\r\n\t//\r\n\t// This is a workaround for a bug in termbox-go. Remove it when this issue is fixed:\r\n\t// https://github.com/nsf/termbox-go/pull/21\r\n\tif len(path) > pathMaxLength {\r\n\t\tout := make([]byte, pathMaxLength, pathMaxLength)\r\n\t\tlength := 0\r\n\t\tfor {\r\n\t\t\tr, size := utf8.DecodeRuneInString(path[length:])\r\n\t\t\tif r == utf8.RuneError && size == 1 {\r\n\t\t\t\tbreak\r\n\t\t\t}\r\n\r\n\t\t\t// utf8.EncodeRune expects there to be enough room to store the full size of the rune\r\n\t\t\tif length+size <= pathMaxLength {\r\n\t\t\t\tutf8.EncodeRune(out[length:], r)\r\n\t\t\t\tlength += size\r\n\t\t\t} else {\r\n\t\t\t\tbreak\r\n\t\t\t}\r\n\t\t}\r\n\t\tpath = string(out[:length])\r\n\t}\r\n\treturn path\r\n}\r\n"
  },
  {
    "path": "client/views/term/view.go",
    "content": "// interactive terminal interface for local clients\r\npackage term\r\n\r\nimport (\r\n\t\"cngrok/client/mvc\"\r\n\t\"cngrok/log\"\r\n\t\"cngrok/proto\"\r\n\t\"cngrok/util\"\r\n\ttermbox \"github.com/nsf/termbox-go\"\r\n\t\"time\"\r\n)\r\n\r\ntype TermView struct {\r\n\tctl      mvc.Controller\r\n\tupdates  chan interface{}\r\n\tflush    chan int\r\n\tshutdown chan int\r\n\tredraw   *util.Broadcast\r\n\tsubviews []mvc.View\r\n\tlog.Logger\r\n\t*area\r\n}\r\n\r\nfunc NewTermView(ctl mvc.Controller) *TermView {\r\n\t// initialize terminal display\r\n\ttermbox.Init()\r\n\r\n\tw, _ := termbox.Size()\r\n\r\n\tv := &TermView{\r\n\t\tctl:      ctl,\r\n\t\tupdates:  ctl.Updates().Reg(),\r\n\t\tredraw:   util.NewBroadcast(),\r\n\t\tflush:    make(chan int),\r\n\t\tshutdown: make(chan int),\r\n\t\tLogger:   log.NewPrefixLogger(\"view\", \"term\"),\r\n\t\tarea:     NewArea(0, 0, w, 10),\r\n\t}\r\n\r\n\tctl.Go(v.run)\r\n\tctl.Go(v.input)\r\n\r\n\treturn v\r\n}\r\n\r\nfunc connStatusRepr(status mvc.ConnStatus) (string, termbox.Attribute) {\r\n\tswitch status {\r\n\tcase mvc.ConnConnecting:\r\n\t\treturn \"正在连接\", termbox.ColorCyan\r\n\tcase mvc.ConnReconnecting:\r\n\t\treturn \"正在重连\", termbox.ColorRed\r\n\tcase mvc.ConnOnline:\r\n\t\treturn \"在线\", termbox.ColorGreen\r\n\t}\r\n\treturn \"未知\", termbox.ColorWhite\r\n}\r\n\r\nfunc (v *TermView) draw() {\r\n\tstate := v.ctl.State()\r\n\r\n\tv.Clear()\r\n\r\n\t// quit instructions\r\n\tquitMsg := \"(Ctrl+C to quit)\"\r\n\tv.Printf(v.w-len(quitMsg), 0, quitMsg)\r\n\r\n\t// new version message\r\n\tupdateStatus := state.GetUpdateStatus()\r\n\tvar updateMsg string\r\n\tswitch updateStatus {\r\n\tcase mvc.UpdateNone:\r\n\t\tupdateMsg = \"\"\r\n\tcase mvc.UpdateInstalling:\r\n\t\tupdateMsg = \"ngrok正在更新\"\r\n\tcase mvc.UpdateReady:\r\n\t\tupdateMsg = \"ngrok已经更新，请重启新版本ngrok\"\r\n\tcase mvc.UpdateAvailable:\r\n\t\tupdateMsg = \"新版本在 http://ngrok.chengang.win\"\r\n\tdefault:\r\n\t\tpct := float64(updateStatus) / 100.0\r\n\t\tconst barLength = 25\r\n\t\tfull := int(barLength * pct)\r\n\t\tbar := make([]byte, barLength+2)\r\n\t\tbar[0] = '['\r\n\t\tbar[barLength+1] = ']'\r\n\t\tfor i := 0; i < 25; i++ {\r\n\t\t\tif i <= full {\r\n\t\t\t\tbar[i+1] = '#'\r\n\t\t\t} else {\r\n\t\t\t\tbar[i+1] = ' '\r\n\t\t\t}\r\n\t\t}\r\n\t\tupdateMsg = \"正在下载更新: \" + string(bar)\r\n\t}\r\n\r\n\tif updateMsg != \"\" {\r\n\t\tv.APrintf(termbox.ColorYellow, 30, 0, updateMsg)\r\n\t}\r\n\r\n\tv.APrintf(termbox.ColorBlue|termbox.AttrBold, 0, 0, \"www.cngrok.com\")\r\n\tstatusStr, statusColor := connStatusRepr(state.GetConnStatus())\r\n\tv.APrintf(statusColor, 0, 2, \"%-30s%s\", \"隧道状态\", statusStr)\r\n\r\n\tv.Printf(0, 3, \"%-15s%s/%s\", \"版本信息\", state.GetClientVersion(), state.GetServerVersion())\r\n\tvar i int = 4\r\n\tfor _, t := range state.GetTunnels() {\r\n\t\tv.Printf(0, i, \"%-15s%s -> %s\", \"转发详情\", t.PublicUrl, t.LocalAddr)\r\n\t\ti++\r\n\t}\r\n\tv.Printf(0, i+0, \"%-15s%s\", \"状态界面\", v.ctl.GetWebInspectAddr())\r\n\r\n\tconnMeter, connTimer := state.GetConnectionMetrics()\r\n\tv.Printf(0, i+1, \"%-15s%d\", \"连接次数\", connMeter.Count())\r\n\r\n\tmsec := float64(time.Millisecond)\r\n\tv.Printf(0, i+2, \"%-15s%.2fms\", \"平均时间\", connTimer.Mean()/msec)\r\n\r\n\ttermbox.Flush()\r\n}\r\n\r\nfunc (v *TermView) run() {\r\n\tdefer close(v.shutdown)\r\n\tdefer termbox.Close()\r\n\r\n\tredraw := v.redraw.Reg()\r\n\tdefer v.redraw.UnReg(redraw)\r\n\r\n\tv.draw()\r\n\tfor {\r\n\t\tv.Debug(\"等待更新\")\r\n\t\tselect {\r\n\t\tcase <-v.flush:\r\n\t\t\ttermbox.Flush()\r\n\r\n\t\tcase <-v.updates:\r\n\t\t\tv.draw()\r\n\r\n\t\tcase <-redraw:\r\n\t\t\tv.draw()\r\n\r\n\t\tcase <-v.shutdown:\r\n\t\t\treturn\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunc (v *TermView) Shutdown() {\r\n\tv.shutdown <- 1\r\n\t<-v.shutdown\r\n}\r\n\r\nfunc (v *TermView) Flush() {\r\n\tv.flush <- 1\r\n}\r\n\r\nfunc (v *TermView) NewHttpView(p *proto.Http) *HttpView {\r\n\treturn newTermHttpView(v.ctl, v, p, 0, 12)\r\n}\r\n\r\nfunc (v *TermView) input() {\r\n\tfor {\r\n\t\tev := termbox.PollEvent()\r\n\t\tswitch ev.Type {\r\n\t\tcase termbox.EventKey:\r\n\t\t\tswitch ev.Key {\r\n\t\t\tcase termbox.KeyCtrlC:\r\n\t\t\t\tv.Info(\"有退出命令\")\r\n\t\t\t\tv.ctl.Shutdown(\"\")\r\n\t\t\t}\r\n\r\n\t\tcase termbox.EventResize:\r\n\t\t\tv.Info(\"重新调整大小\")\r\n\t\t\tv.redraw.In() <- 1\r\n\r\n\t\tcase termbox.EventError:\r\n\t\t\tpanic(ev.Err)\r\n\t\t}\r\n\t}\r\n}\r\n"
  },
  {
    "path": "client/views/web/http.go",
    "content": "// interactive web user interface\r\npackage web\r\n\r\nimport (\r\n\t\"cngrok/client/mvc\"\r\n\t\"cngrok/log\"\r\n\t\"cngrok/proto\"\r\n\t\"cngrok/util\"\r\n\t\"encoding/base64\"\r\n\t\"encoding/json\"\r\n\t\"encoding/xml\"\r\n\t\"html/template\"\r\n\t\"io/ioutil\"\r\n\t\"net/http\"\r\n\t\"net/http/httputil\"\r\n\t\"net/url\"\r\n\t\"strings\"\r\n\t\"unicode/utf8\"\r\n)\r\n\r\ntype SerializedTxn struct {\r\n\tId             string\r\n\tDuration       int64\r\n\tStart          int64\r\n\tConnCtx        mvc.ConnectionContext\r\n\t*proto.HttpTxn `json:\"-\"`\r\n\tReq            SerializedRequest\r\n\tResp           SerializedResponse\r\n}\r\n\r\ntype SerializedBody struct {\r\n\tRawContentType string\r\n\tContentType    string\r\n\tText           string\r\n\tLength         int\r\n\tError          string\r\n\tErrorOffset    int\r\n\tForm           url.Values\r\n}\r\n\r\ntype SerializedRequest struct {\r\n\tRaw        string\r\n\tMethodPath string\r\n\tParams     url.Values\r\n\tHeader     http.Header\r\n\tBody       SerializedBody\r\n\tBinary     bool\r\n}\r\n\r\ntype SerializedResponse struct {\r\n\tRaw    string\r\n\tStatus string\r\n\tHeader http.Header\r\n\tBody   SerializedBody\r\n\tBinary bool\r\n}\r\n\r\ntype WebHttpView struct {\r\n\tlog.Logger\r\n\r\n\twebview      *WebView\r\n\tctl          mvc.Controller\r\n\thttpProto    *proto.Http\r\n\tstate        chan SerializedUiState\r\n\tHttpRequests *util.Ring\r\n\tidToTxn      map[string]*SerializedTxn\r\n}\r\n\r\ntype SerializedUiState struct {\r\n\tTunnels []mvc.Tunnel\r\n}\r\n\r\ntype SerializedPayload struct {\r\n\tTxns    []interface{}\r\n\tUiState SerializedUiState\r\n}\r\n\r\nfunc newWebHttpView(ctl mvc.Controller, wv *WebView, proto *proto.Http) *WebHttpView {\r\n\twhv := &WebHttpView{\r\n\t\tLogger:       log.NewPrefixLogger(\"view\", \"web\", \"http\"),\r\n\t\twebview:      wv,\r\n\t\tctl:          ctl,\r\n\t\thttpProto:    proto,\r\n\t\tidToTxn:      make(map[string]*SerializedTxn),\r\n\t\tHttpRequests: util.NewRing(20),\r\n\t}\r\n\tctl.Go(whv.updateHttp)\r\n\twhv.register()\r\n\treturn whv\r\n}\r\n\r\ntype XMLDoc struct {\r\n\tdata []byte `xml:\",innerxml\"`\r\n}\r\n\r\nfunc makeBody(h http.Header, body []byte) SerializedBody {\r\n\tb := SerializedBody{\r\n\t\tLength:      len(body),\r\n\t\tText:        base64.StdEncoding.EncodeToString(body),\r\n\t\tErrorOffset: -1,\r\n\t}\r\n\r\n\t// some errors like XML errors only give a line number\r\n\t// and not an exact offset\r\n\toffsetForLine := func(line int) int {\r\n\t\tlines := strings.SplitAfterN(b.Text, \"\\n\", line)\r\n\t\treturn b.Length - len(lines[len(lines)-1])\r\n\t}\r\n\r\n\tvar err error\r\n\tb.RawContentType = h.Get(\"Content-Type\")\r\n\tif b.RawContentType != \"\" {\r\n\t\tb.ContentType = strings.TrimSpace(strings.Split(b.RawContentType, \";\")[0])\r\n\t\tswitch b.ContentType {\r\n\t\tcase \"application/xml\", \"text/xml\":\r\n\t\t\terr = xml.Unmarshal(body, new(XMLDoc))\r\n\t\t\tif err != nil {\r\n\t\t\t\tif syntaxError, ok := err.(*xml.SyntaxError); ok {\r\n\t\t\t\t\t// xml syntax errors only give us a line number, so we\r\n\t\t\t\t\t// count to find an offset\r\n\t\t\t\t\tb.ErrorOffset = offsetForLine(syntaxError.Line)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\tcase \"application/json\":\r\n\t\t\terr = json.Unmarshal(body, new(json.RawMessage))\r\n\t\t\tif err != nil {\r\n\t\t\t\tif syntaxError, ok := err.(*json.SyntaxError); ok {\r\n\t\t\t\t\tb.ErrorOffset = int(syntaxError.Offset)\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\tcase \"application/x-www-form-urlencoded\":\r\n\t\t\tb.Form, err = url.ParseQuery(string(body))\r\n\t\t}\r\n\t}\r\n\r\n\tif err != nil {\r\n\t\tb.Error = err.Error()\r\n\t}\r\n\r\n\treturn b\r\n}\r\n\r\nfunc (whv *WebHttpView) updateHttp() {\r\n\t// open channels for incoming http state changes\r\n\t// and broadcasts\r\n\ttxnUpdates := whv.httpProto.Txns.Reg()\r\n\tfor txn := range txnUpdates {\r\n\t\t// XXX: it's not safe for proto.Http and this code\r\n\t\t// to be accessing txn and txn.(req/resp) without synchronization\r\n\t\thtxn := txn.(*proto.HttpTxn)\r\n\r\n\t\t// we haven't processed this transaction yet if we haven't set the\r\n\t\t// user data\r\n\t\tif htxn.UserCtx == nil {\r\n\t\t\trawReq, err := proto.DumpRequestOut(htxn.Req.Request, true)\r\n\t\t\tif err != nil {\r\n\t\t\t\twhv.Error(\"转储请求失败: %v\", err)\r\n\t\t\t\tcontinue\r\n\t\t\t}\r\n\r\n\t\t\tbody := makeBody(htxn.Req.Header, htxn.Req.BodyBytes)\r\n\t\t\twhtxn := &SerializedTxn{\r\n\t\t\t\tId:      util.RandId(8),\r\n\t\t\t\tHttpTxn: htxn,\r\n\t\t\t\tReq: SerializedRequest{\r\n\t\t\t\t\tMethodPath: htxn.Req.Method + \" \" + htxn.Req.URL.Path,\r\n\t\t\t\t\tRaw:        base64.StdEncoding.EncodeToString(rawReq),\r\n\t\t\t\t\tParams:     htxn.Req.URL.Query(),\r\n\t\t\t\t\tHeader:     htxn.Req.Header,\r\n\t\t\t\t\tBody:       body,\r\n\t\t\t\t\tBinary:     !utf8.Valid(rawReq),\r\n\t\t\t\t},\r\n\t\t\t\tStart:   htxn.Start.Unix(),\r\n\t\t\t\tConnCtx: htxn.ConnUserCtx.(mvc.ConnectionContext),\r\n\t\t\t}\r\n\r\n\t\t\thtxn.UserCtx = whtxn\r\n\t\t\t// XXX: unsafe map access from multiple go routines\r\n\t\t\twhv.idToTxn[whtxn.Id] = whtxn\r\n\t\t\t// XXX: use return value to delete from map so we don't leak memory\r\n\t\t\twhv.HttpRequests.Add(whtxn)\r\n\t\t} else {\r\n\t\t\trawResp, err := httputil.DumpResponse(htxn.Resp.Response, true)\r\n\t\t\tif err != nil {\r\n\t\t\t\twhv.Error(\"转储响应失败: %v\", err)\r\n\t\t\t\tcontinue\r\n\t\t\t}\r\n\r\n\t\t\ttxn := htxn.UserCtx.(*SerializedTxn)\r\n\t\t\tbody := makeBody(htxn.Resp.Header, htxn.Resp.BodyBytes)\r\n\t\t\ttxn.Duration = htxn.Duration.Nanoseconds()\r\n\t\t\ttxn.Resp = SerializedResponse{\r\n\t\t\t\tStatus: htxn.Resp.Status,\r\n\t\t\t\tRaw:    base64.StdEncoding.EncodeToString(rawResp),\r\n\t\t\t\tHeader: htxn.Resp.Header,\r\n\t\t\t\tBody:   body,\r\n\t\t\t\tBinary: !utf8.Valid(rawResp),\r\n\t\t\t}\r\n\r\n\t\t\tpayload, err := json.Marshal(txn)\r\n\t\t\tif err != nil {\r\n\t\t\t\twhv.Error(\"未能序列化以及有效载荷的WebSocket: %v\", err)\r\n\t\t\t}\r\n\t\t\twhv.webview.wsMessages.In() <- payload\r\n\t\t}\r\n\t}\r\n}\r\n\r\nfunc (whv *WebHttpView) register() {\r\n\thttp.HandleFunc(\"/http/in/replay\", func(w http.ResponseWriter, r *http.Request) {\r\n\t\tdefer func() {\r\n\t\t\tif r := recover(); r != nil {\r\n\t\t\t\terr := util.MakePanicTrace(r)\r\n\t\t\t\twhv.Error(\"重试失败: %v\", err)\r\n\t\t\t\thttp.Error(w, err, 500)\r\n\t\t\t}\r\n\t\t}()\r\n\r\n\t\tr.ParseForm()\r\n\t\ttxnid := r.Form.Get(\"txnid\")\r\n\t\tif txn, ok := whv.idToTxn[txnid]; ok {\r\n\t\t\treqBytes, err := base64.StdEncoding.DecodeString(txn.Req.Raw)\r\n\t\t\tif err != nil {\r\n\t\t\t\tpanic(err)\r\n\t\t\t}\r\n\t\t\twhv.ctl.PlayRequest(txn.ConnCtx.Tunnel, reqBytes)\r\n\t\t\tw.Write([]byte(http.StatusText(200)))\r\n\t\t} else {\r\n\t\t\thttp.Error(w, http.StatusText(400), 400)\r\n\t\t}\r\n\t})\r\n\r\n\thttp.HandleFunc(\"/http/in\", func(w http.ResponseWriter, r *http.Request) {\r\n\t\tdefer func() {\r\n\t\t\tif r := recover(); r != nil {\r\n\t\t\t\terr := util.MakePanicTrace(r)\r\n\t\t\t\twhv.Error(\"HTTP Web视图失败: %v\", err)\r\n\t\t\t\thttp.Error(w, err, 500)\r\n\t\t\t}\r\n\t\t}()\r\n\r\n\t\tpageTmpl, err := ioutil.ReadFile(\"page.html\")\r\n\t\tif err != nil {\r\n\t\t\tpanic(err)\r\n\t\t}\r\n\r\n\t\ttmpl := template.Must(template.New(\"page.html\").Delims(\"{%\", \"%}\").Parse(string(pageTmpl)))\r\n\r\n\t\tpayloadData := SerializedPayload{\r\n\t\t\tTxns:    whv.HttpRequests.Slice(),\r\n\t\t\tUiState: SerializedUiState{Tunnels: whv.ctl.State().GetTunnels()},\r\n\t\t}\r\n\r\n\t\tpayload, err := json.Marshal(payloadData)\r\n\t\tif err != nil {\r\n\t\t\tpanic(err)\r\n\t\t}\r\n\r\n\t\t// write the response\r\n\t\tif err := tmpl.Execute(w, string(payload)); err != nil {\r\n\t\t\tpanic(err)\r\n\t\t}\r\n\t})\r\n}\r\n\r\nfunc (whv *WebHttpView) Shutdown() {\r\n}\r\n"
  },
  {
    "path": "client/views/web/view.go",
    "content": "// interactive web user interface\r\npackage web\r\n\r\nimport (\r\n\t\"cngrok/client/mvc\"\r\n\t\"cngrok/log\"\r\n\t\"cngrok/proto\"\r\n\t\"cngrok/util\"\r\n\t\"github.com/gorilla/websocket\"\r\n\t\"io/ioutil\"\r\n\t\"net/http\"\r\n\t\"path\"\r\n)\r\n\r\ntype WebView struct {\r\n\tlog.Logger\r\n\r\n\tctl mvc.Controller\r\n\r\n\t// messages sent over this broadcast are sent to all websocket connections\r\n\twsMessages *util.Broadcast\r\n}\r\n\r\nfunc NewWebView(ctl mvc.Controller, addr string) *WebView {\r\n\twv := &WebView{\r\n\t\tLogger:     log.NewPrefixLogger(\"view\", \"web\"),\r\n\t\twsMessages: util.NewBroadcast(),\r\n\t\tctl:        ctl,\r\n\t}\r\n\r\n\t// for now, always redirect to the http view\r\n\thttp.HandleFunc(\"/\", func(w http.ResponseWriter, r *http.Request) {\r\n\t\thttp.Redirect(w, r, \"/http/in\", 302)\r\n\t})\r\n\r\n\t// handle web socket connections\r\n\thttp.HandleFunc(\"/_ws\", func(w http.ResponseWriter, r *http.Request) {\r\n\t\tconn, err := websocket.Upgrade(w, r, nil, 1024, 1024)\r\n\r\n\t\tif err != nil {\r\n\t\t\thttp.Error(w, \"WebSocket升级失败\", 400)\r\n\t\t\twv.Warn(\"WebSocket升级失败: %v\", err)\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\tmsgs := wv.wsMessages.Reg()\r\n\t\tdefer wv.wsMessages.UnReg(msgs)\r\n\t\tfor m := range msgs {\r\n\t\t\terr := conn.WriteMessage(websocket.TextMessage, m.([]byte))\r\n\t\t\tif err != nil {\r\n\t\t\t\t// connection is closed\r\n\t\t\t\tbreak\r\n\t\t\t}\r\n\t\t}\r\n\t})\r\n\r\n\t// serve static assets\r\n\thttp.HandleFunc(\"/static/\", func(w http.ResponseWriter, r *http.Request) {\r\n\t\tbuf, err := ioutil.ReadFile(path.Join(r.URL.Path[1:]))\r\n\t\tif err != nil {\r\n\t\t\twv.Warn(\"服务静态文件的错误: %s\", err.Error())\r\n\t\t\thttp.NotFound(w, r)\r\n\t\t\treturn\r\n\t\t}\r\n\t\tw.Write(buf)\r\n\t})\r\n\r\n\twv.Info(\"Web服务接口 %s\", addr)\r\n\twv.ctl.Go(func() { http.ListenAndServe(addr, nil) })\r\n\treturn wv\r\n}\r\n\r\nfunc (wv *WebView) NewHttpView(proto *proto.Http) *WebHttpView {\r\n\treturn newWebHttpView(wv.ctl, wv, proto)\r\n}\r\n\r\nfunc (wv *WebView) Shutdown() {\r\n}\r\n"
  },
  {
    "path": "conn/conn.go",
    "content": "package conn\r\n\r\nimport (\r\n\t\"bufio\"\r\n\t\"cngrok/log\"\r\n\t\"crypto/tls\"\r\n\t\"encoding/base64\"\r\n\t\"fmt\"\r\n\tvhost \"github.com/inconshreveable/go-vhost\"\r\n\t\"io\"\r\n\t\"math/rand\"\r\n\t\"net\"\r\n\t\"net/http\"\r\n\t\"net/url\"\r\n\t\"sync\"\r\n)\r\n\r\ntype Conn interface {\r\n\tnet.Conn\r\n\tlog.Logger\r\n\tId() string\r\n\tSetType(string)\r\n\tCloseRead() error\r\n}\r\n\r\ntype loggedConn struct {\r\n\ttcp *net.TCPConn\r\n\tnet.Conn\r\n\tlog.Logger\r\n\tid  int32\r\n\ttyp string\r\n}\r\n\r\ntype Listener struct {\r\n\tnet.Addr\r\n\tConns chan *loggedConn\r\n}\r\n\r\nfunc wrapConn(conn net.Conn, typ string) *loggedConn {\r\n\tswitch c := conn.(type) {\r\n\tcase *vhost.HTTPConn:\r\n\t\twrapped := c.Conn.(*loggedConn)\r\n\t\treturn &loggedConn{wrapped.tcp, conn, wrapped.Logger, wrapped.id, wrapped.typ}\r\n\tcase *loggedConn:\r\n\t\treturn c\r\n\tcase *net.TCPConn:\r\n\t\twrapped := &loggedConn{c, conn, log.NewPrefixLogger(), rand.Int31(), typ}\r\n\t\twrapped.AddLogPrefix(wrapped.Id())\r\n\t\treturn wrapped\r\n\t}\r\n\r\n\treturn nil\r\n}\r\n\r\nfunc Listen(addr, typ string, tlsCfg *tls.Config) (l *Listener, err error) {\r\n\t// listen for incoming connections\r\n\tlistener, err := net.Listen(\"tcp\", addr)\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tl = &Listener{\r\n\t\tAddr:  listener.Addr(),\r\n\t\tConns: make(chan *loggedConn),\r\n\t}\r\n\r\n\tgo func() {\r\n\t\tfor {\r\n\t\t\trawConn, err := listener.Accept()\r\n\t\t\tif err != nil {\r\n\t\t\t\tlog.Error(\"Failed to accept new TCP connection of type %s: %v\", typ, err)\r\n\t\t\t\tcontinue\r\n\t\t\t}\r\n\r\n\t\t\tc := wrapConn(rawConn, typ)\r\n\t\t\tif tlsCfg != nil {\r\n\t\t\t\tc.Conn = tls.Server(c.Conn, tlsCfg)\r\n\t\t\t}\r\n\t\t\tc.Info(\"New connection from %v\", c.RemoteAddr())\r\n\t\t\tl.Conns <- c\r\n\t\t}\r\n\t}()\r\n\treturn\r\n}\r\n\r\nfunc Wrap(conn net.Conn, typ string) *loggedConn {\r\n\treturn wrapConn(conn, typ)\r\n}\r\n\r\nfunc Dial(addr, typ string, tlsCfg *tls.Config) (conn *loggedConn, err error) {\r\n\tvar rawConn net.Conn\r\n\tif rawConn, err = net.Dial(\"tcp\", addr); err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tconn = wrapConn(rawConn, typ)\r\n\tconn.Debug(\"New connection to: %v\", rawConn.RemoteAddr())\r\n\r\n\tif tlsCfg != nil {\r\n\t\tconn.StartTLS(tlsCfg)\r\n\t}\r\n\r\n\treturn\r\n}\r\n\r\nfunc DialHttpProxy(proxyUrl, addr, typ string, tlsCfg *tls.Config) (conn *loggedConn, err error) {\r\n\t// parse the proxy address\r\n\tvar parsedUrl *url.URL\r\n\tif parsedUrl, err = url.Parse(proxyUrl); err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tvar proxyAuth string\r\n\tif parsedUrl.User != nil {\r\n\t\tproxyAuth = \"Basic \" + base64.StdEncoding.EncodeToString([]byte(parsedUrl.User.String()))\r\n\t}\r\n\r\n\tvar proxyTlsConfig *tls.Config\r\n\tswitch parsedUrl.Scheme {\r\n\tcase \"http\":\r\n\t\tproxyTlsConfig = nil\r\n\tcase \"https\":\r\n\t\tproxyTlsConfig = new(tls.Config)\r\n\tdefault:\r\n\t\terr = fmt.Errorf(\"Proxy URL scheme must be http or https, got: %s\", parsedUrl.Scheme)\r\n\t\treturn\r\n\t}\r\n\r\n\t// dial the proxy\r\n\tif conn, err = Dial(parsedUrl.Host, typ, proxyTlsConfig); err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\t// send an HTTP proxy CONNECT message\r\n\treq, err := http.NewRequest(\"CONNECT\", \"https://\"+addr, nil)\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tif proxyAuth != \"\" {\r\n\t\treq.Header.Set(\"Proxy-Authorization\", proxyAuth)\r\n\t}\r\n\treq.Header.Set(\"User-Agent\", \"Mozilla/5.0 (compatible; ngrok)\")\r\n\treq.Write(conn)\r\n\r\n\t// read the proxy's response\r\n\tresp, err := http.ReadResponse(bufio.NewReader(conn), req)\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\tresp.Body.Close()\r\n\r\n\tif resp.StatusCode != 200 {\r\n\t\terr = fmt.Errorf(\"Non-200 response from proxy server: %s\", resp.Status)\r\n\t\treturn\r\n\t}\r\n\r\n\t// upgrade to TLS\r\n\tconn.StartTLS(tlsCfg)\r\n\r\n\treturn\r\n}\r\n\r\nfunc (c *loggedConn) StartTLS(tlsCfg *tls.Config) {\r\n\tc.Conn = tls.Client(c.Conn, tlsCfg)\r\n}\r\n\r\nfunc (c *loggedConn) Close() (err error) {\r\n\tif err := c.Conn.Close(); err == nil {\r\n\t\tc.Debug(\"Closing\")\r\n\t}\r\n\treturn\r\n}\r\n\r\nfunc (c *loggedConn) Id() string {\r\n\treturn fmt.Sprintf(\"%s:%x\", c.typ, c.id)\r\n}\r\n\r\nfunc (c *loggedConn) SetType(typ string) {\r\n\toldId := c.Id()\r\n\tc.typ = typ\r\n\tc.ClearLogPrefixes()\r\n\tc.AddLogPrefix(c.Id())\r\n\tc.Info(\"Renamed connection %s\", oldId)\r\n}\r\n\r\nfunc (c *loggedConn) CloseRead() error {\r\n\t// XXX: use CloseRead() in Conn.Join() and in Control.shutdown() for cleaner\r\n\t// connection termination. Unfortunately, when I've tried that, I've observed\r\n\t// failures where the connection was closed *before* flushing its write buffer,\r\n\t// set with SetLinger() set properly (which it is by default).\r\n\treturn c.tcp.CloseRead()\r\n}\r\n\r\nfunc Join(c Conn, c2 Conn) (int64, int64) {\r\n\tvar wait sync.WaitGroup\r\n\r\n\tpipe := func(to Conn, from Conn, bytesCopied *int64) {\r\n\t\tdefer to.Close()\r\n\t\tdefer from.Close()\r\n\t\tdefer wait.Done()\r\n\r\n\t\tvar err error\r\n\t\t*bytesCopied, err = io.Copy(to, from)\r\n\t\tif err != nil {\r\n\t\t\tfrom.Warn(\"Copied %d bytes to %s before failing with error %v\", *bytesCopied, to.Id(), err)\r\n\t\t} else {\r\n\t\t\tfrom.Debug(\"Copied %d bytes to %s\", *bytesCopied, to.Id())\r\n\t\t}\r\n\t}\r\n\r\n\twait.Add(2)\r\n\tvar fromBytes, toBytes int64\r\n\tgo pipe(c, c2, &fromBytes)\r\n\tgo pipe(c2, c, &toBytes)\r\n\tc.Info(\"Joined with connection %s\", c2.Id())\r\n\twait.Wait()\r\n\treturn fromBytes, toBytes\r\n}\r\n"
  },
  {
    "path": "conn/tee.go",
    "content": "package conn\r\n\r\nimport (\r\n\t\"bufio\"\r\n\t\"io\"\r\n)\r\n\r\n// conn.Tee is a wraps a conn.Conn\r\n// causing all writes/reads to be tee'd just\r\n// like the unix command such that all data that\r\n// is read and written to the connection through its\r\n// interfaces will also be copied into two dedicated pipes\r\n// used for consuming a copy of the data stream\r\n//\r\n// this is useful for introspecting the traffic flowing\r\n// over a connection without having to tamper with the actual\r\n// code that reads and writes over the connection\r\n//\r\n// NB: the data is Tee'd into a shared-memory io.Pipe which\r\n// has a limited (and small) buffer. If you are not consuming from\r\n// the ReadBuffer() and WriteBuffer(), you are going to block\r\n// your application's real traffic from flowing over the connection\r\n\r\ntype Tee struct {\r\n\trd       io.Reader\r\n\twr       io.Writer\r\n\treadPipe struct {\r\n\t\trd *io.PipeReader\r\n\t\twr *io.PipeWriter\r\n\t}\r\n\twritePipe struct {\r\n\t\trd *io.PipeReader\r\n\t\twr *io.PipeWriter\r\n\t}\r\n\tConn\r\n}\r\n\r\nfunc NewTee(conn Conn) *Tee {\r\n\tc := &Tee{\r\n\t\trd:   nil,\r\n\t\twr:   nil,\r\n\t\tConn: conn,\r\n\t}\r\n\r\n\tc.readPipe.rd, c.readPipe.wr = io.Pipe()\r\n\tc.writePipe.rd, c.writePipe.wr = io.Pipe()\r\n\r\n\tc.rd = io.TeeReader(c.Conn, c.readPipe.wr)\r\n\tc.wr = io.MultiWriter(c.Conn, c.writePipe.wr)\r\n\treturn c\r\n}\r\n\r\nfunc (c *Tee) ReadBuffer() *bufio.Reader {\r\n\treturn bufio.NewReader(c.readPipe.rd)\r\n}\r\n\r\nfunc (c *Tee) WriteBuffer() *bufio.Reader {\r\n\treturn bufio.NewReader(c.writePipe.rd)\r\n}\r\n\r\nfunc (c *Tee) Read(b []byte) (n int, err error) {\r\n\tn, err = c.rd.Read(b)\r\n\tif err != nil {\r\n\t\tc.readPipe.wr.Close()\r\n\t}\r\n\treturn\r\n}\r\n\r\nfunc (c *Tee) ReadFrom(r io.Reader) (n int64, err error) {\r\n\tn, err = io.Copy(c.wr, r)\r\n\tif err != nil {\r\n\t\tc.writePipe.wr.Close()\r\n\t}\r\n\treturn\r\n}\r\n\r\nfunc (c *Tee) Write(b []byte) (n int, err error) {\r\n\tn, err = c.wr.Write(b)\r\n\tif err != nil {\r\n\t\tc.writePipe.wr.Close()\r\n\t}\r\n\treturn\r\n}\r\n"
  },
  {
    "path": "log/logger.go",
    "content": "package log\r\n\r\nimport (\r\n\t\"fmt\"\r\n\tlog \"github.com/alecthomas/log4go\"\r\n)\r\n\r\nvar root log.Logger = make(log.Logger)\r\n\r\nfunc LogTo(target string, level_name string) {\r\n\tvar writer log.LogWriter = nil\r\n\r\n\tswitch target {\r\n\tcase \"stdout\":\r\n\t\twriter = log.NewConsoleLogWriter()\r\n\tcase \"none\":\r\n\t\t// no logging\r\n\tdefault:\r\n\t\twriter = log.NewFileLogWriter(target, true)\r\n\t}\r\n\r\n\tif writer != nil {\r\n\t\tvar level = log.DEBUG\r\n\r\n\t\tswitch level_name {\r\n\t\tcase \"FINEST\":\r\n\t\t\tlevel = log.FINEST\r\n\t\tcase \"FINE\":\r\n\t\t\tlevel = log.FINE\r\n\t\tcase \"DEBUG\":\r\n\t\t\tlevel = log.DEBUG\r\n\t\tcase \"TRACE\":\r\n\t\t\tlevel = log.TRACE\r\n\t\tcase \"INFO\":\r\n\t\t\tlevel = log.INFO\r\n\t\tcase \"WARNING\":\r\n\t\t\tlevel = log.WARNING\r\n\t\tcase \"ERROR\":\r\n\t\t\tlevel = log.ERROR\r\n\t\tcase \"CRITICAL\":\r\n\t\t\tlevel = log.CRITICAL\r\n\t\tdefault:\r\n\t\t\tlevel = log.DEBUG\r\n\t\t}\r\n\r\n\t\troot.AddFilter(\"log\", level, writer)\r\n\t}\r\n}\r\n\r\ntype Logger interface {\r\n\tAddLogPrefix(string)\r\n\tClearLogPrefixes()\r\n\tDebug(string, ...interface{})\r\n\tInfo(string, ...interface{})\r\n\tWarn(string, ...interface{}) error\r\n\tError(string, ...interface{}) error\r\n}\r\n\r\ntype PrefixLogger struct {\r\n\t*log.Logger\r\n\tprefix string\r\n}\r\n\r\nfunc NewPrefixLogger(prefixes ...string) Logger {\r\n\tlogger := &PrefixLogger{Logger: &root}\r\n\r\n\tfor _, p := range prefixes {\r\n\t\tlogger.AddLogPrefix(p)\r\n\t}\r\n\r\n\treturn logger\r\n}\r\n\r\nfunc (pl *PrefixLogger) pfx(fmtstr string) interface{} {\r\n\treturn fmt.Sprintf(\"%s %s\", pl.prefix, fmtstr)\r\n}\r\n\r\nfunc (pl *PrefixLogger) Debug(arg0 string, args ...interface{}) {\r\n\tpl.Logger.Debug(pl.pfx(arg0), args...)\r\n}\r\n\r\nfunc (pl *PrefixLogger) Info(arg0 string, args ...interface{}) {\r\n\tpl.Logger.Info(pl.pfx(arg0), args...)\r\n}\r\n\r\nfunc (pl *PrefixLogger) Warn(arg0 string, args ...interface{}) error {\r\n\treturn pl.Logger.Warn(pl.pfx(arg0), args...)\r\n}\r\n\r\nfunc (pl *PrefixLogger) Error(arg0 string, args ...interface{}) error {\r\n\treturn pl.Logger.Error(pl.pfx(arg0), args...)\r\n}\r\n\r\nfunc (pl *PrefixLogger) AddLogPrefix(prefix string) {\r\n\tif len(pl.prefix) > 0 {\r\n\t\tpl.prefix += \" \"\r\n\t}\r\n\r\n\tpl.prefix += \"[\" + prefix + \"]\"\r\n}\r\n\r\nfunc (pl *PrefixLogger) ClearLogPrefixes() {\r\n\tpl.prefix = \"\"\r\n}\r\n\r\n// we should never really use these . . . always prefer logging through a prefix logger\r\nfunc Debug(arg0 string, args ...interface{}) {\r\n\troot.Debug(arg0, args...)\r\n}\r\n\r\nfunc Info(arg0 string, args ...interface{}) {\r\n\troot.Info(arg0, args...)\r\n}\r\n\r\nfunc Warn(arg0 string, args ...interface{}) error {\r\n\treturn root.Warn(arg0, args...)\r\n}\r\n\r\nfunc Error(arg0 string, args ...interface{}) error {\r\n\treturn root.Error(arg0, args...)\r\n}\r\n"
  },
  {
    "path": "main/device.crt",
    "content": "-----BEGIN CERTIFICATE-----\nMIICpjCCAY4CCQC3ZsXK+JGnLjANBgkqhkiG9w0BAQUFADAVMRMwEQYDVQQDDApj\nbmdyb2suY29tMB4XDTE4MDgzMDEzNDg1NloXDTMyMDUwODEzNDg1NlowFTETMBEG\nA1UEAwwKY25ncm9rLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nANucjNvJ0lu9NPlpUOpljGR9iRh52Owj/gEWU3wt4MDiGD4MS7wqyFxOHmGMG4yb\nO2/zHI3Tm/he6EqQCZRftMVSHiKKLPmKHCO1VnxTvEb8CG+8Hie+FuNs9UqUsvI+\nt2plDVd1OHEJBICnRaPazdSfQx5/8z9I1dpvjhQVXzHtFvbRpUR9ScQ7y8RH3Y0V\neEWt7wWX+SjXkOGA1Pf0KT2tKfpor1Vy8CZrlfypV8CsOCS/+mOLo3KPSOtKPhSZ\nGWMLSNlkrJL+zZ3M+NCF8es6STr7uxUEL76QeE2LOQJD6CzlkMFFdSgsSi4rp1yV\ne+Y5qgIDP0DqAuYIbW1qd88CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAyl1e21sQ\nkViuKhwmGbDCJxBvXVUPAZ+0GHV6NQFo4jrrSzV34TGLy2BK5Keq3KmYqgDxnLIG\nu+swvMr4pReYr8NzKzf8FoZierk8lol2uYwdOgl5R06Sq1oujP/4hH2mcJW1iCNM\nFoOtGmJRDAAoC/usUPuhFUz4idUA9tf5O1hyjScmAK0PL3mhjdXve/8WfUYdWZjh\nvT955vDsgM9Y0SnIbr79HgNN3BSo9OsVhxqRDTbwcP413bMqGG2e5O6azG3YKO7v\nivHe7PoQKpo86atlfMUL0Q643NRkreywqixg1FQIvaAHV8symb0V7Bkxbbi5ym95\n6wtq6EdxLwoLBw==\n-----END CERTIFICATE-----\n"
  },
  {
    "path": "main/device.csr",
    "content": "-----BEGIN CERTIFICATE REQUEST-----\nMIICWjCCAUICAQAwFTETMBEGA1UEAwwKY25ncm9rLmNvbTCCASIwDQYJKoZIhvcN\nAQEBBQADggEPADCCAQoCggEBANucjNvJ0lu9NPlpUOpljGR9iRh52Owj/gEWU3wt\n4MDiGD4MS7wqyFxOHmGMG4ybO2/zHI3Tm/he6EqQCZRftMVSHiKKLPmKHCO1VnxT\nvEb8CG+8Hie+FuNs9UqUsvI+t2plDVd1OHEJBICnRaPazdSfQx5/8z9I1dpvjhQV\nXzHtFvbRpUR9ScQ7y8RH3Y0VeEWt7wWX+SjXkOGA1Pf0KT2tKfpor1Vy8CZrlfyp\nV8CsOCS/+mOLo3KPSOtKPhSZGWMLSNlkrJL+zZ3M+NCF8es6STr7uxUEL76QeE2L\nOQJD6CzlkMFFdSgsSi4rp1yVe+Y5qgIDP0DqAuYIbW1qd88CAwEAAaAAMA0GCSqG\nSIb3DQEBCwUAA4IBAQBMCeEd7TtQhbSoV912BO8Y8/TTj1//nEMic/7wWAi1SP49\nbJxYtLklPD3cxQaHByFJS8A9V2c4GIVsYdypL/KoLdFsiUVAPNyuBVXuSsp3Y08o\nAaahotREeUCbi41cQ2jUoZCql0ZpPrhAh0+N3OSEy5LGM5Mq/8+FIxgmqEER4I4x\n5WVCU3DrvktTxoFooMUJLJ/S+JslwyM/LLCCX/bDfD9uQZNu1ViMb2gzvYR+84EA\nwf0Pt5SlIQJDDRI6lhK1RbpBAMzZUQ5HRfzwAjFPAzPRmF0lOe2HG9bBuOesnqRN\nd2I2IpTOusr5U9PEZg4c689XFRF1Tx6ozJIr+/bR\n-----END CERTIFICATE REQUEST-----\n"
  },
  {
    "path": "main/device.key",
    "content": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEA25yM28nSW700+WlQ6mWMZH2JGHnY7CP+ARZTfC3gwOIYPgxL\nvCrIXE4eYYwbjJs7b/McjdOb+F7oSpAJlF+0xVIeIoos+YocI7VWfFO8RvwIb7we\nJ74W42z1SpSy8j63amUNV3U4cQkEgKdFo9rN1J9DHn/zP0jV2m+OFBVfMe0W9tGl\nRH1JxDvLxEfdjRV4Ra3vBZf5KNeQ4YDU9/QpPa0p+mivVXLwJmuV/KlXwKw4JL/6\nY4ujco9I60o+FJkZYwtI2WSskv7Nncz40IXx6zpJOvu7FQQvvpB4TYs5AkPoLOWQ\nwUV1KCxKLiunXJV75jmqAgM/QOoC5ghtbWp3zwIDAQABAoIBAGMl5qJEF+i7H3OL\nDLEGb7/evUqDmF/kUAUFo2NpAxOSAAfjXT3ywsqJqkW4D6gHXWpJhBaz9rLHhnBD\nX0/RdbewP1Kwt2Vh6RpmAEnZNCOIHfb0I1kmBQdgZc3qHHApyH0Mal2V2omN3K6I\n1nQHkO3xiUf31EY6B/K6cpa2n2fWH9YP+4FA3Lem9VgwVa5yomwtzOqKtnVzCLVr\n4YZEy98NHaOmx/aoHUAfG4EDtfasBqUJ38NxdAq/NZraNOrQIo3EDdKszMI1g1/Q\ne5mNC8orYw0q8DVfW/tvMOHcpos++TbDOYEpVZq7t0BKYfpUMbFXAwMdGl7+1BjY\n8VB1iEECgYEA/7w1xhP3RTDoQ/jY769WFIT03AFAfsWtc8Ia+0De6UHdaTK5UrYp\nRNgu4IKknCBcA22L44LU2r3BRFVG9bG0hHlpuUi1GvQON2QHnTOtIffKu5dBnz77\naJy+g1D0zlgRex/9cll8aGxrokkm54KUo68gCuTFlcK4X3AMOC70s4cCgYEA29bD\nujeC4tPfymOXySgwIxRevH4QPq+i+6b0aZlnQP0VYS8yHdRpTWAyKBCSoxpKn17G\nIX3B5dhR1tDHp3KG4mKH9DfSodxiku0mDza+8rRrqqMEgWAFyjAnv7/e6xBQW8QE\nZEbh8as7mmWt5ZGeLNrK8/2kZvlswgXp2MHyu3kCgYEAlbW6zTCXCxxsfI5LgVVl\n0TFcnwbkmNJkjmXNodUCKg9y7MjTEQau9iyQlMImV3fiJeeVgyTuMvfvEm/R0Let\nc/gX2m4kB5lkUSzwAClma4JCXrtXoUAfschBB2L3TWzlHu1FVBHq8L637BNjARjC\np2g4G+h9ewS5JrXTkXh7rDUCgYEA02+joB5zzCVrQAS5n8b/RT36P+AfT6stXkwd\nFtNr8512SppR4U7CWKEEnHQUFLrcups0hFGng6CiVbFH1UzZXjLV/5URCIwmYpmj\n2U4WKOhOBTf0xVnNN8FI+atYg0yVfSzx7GAgP4cpND5HGl0LfKiSOkjhLgkHCTUW\nzFr9UkECgYEA/o/FI1UV0o1KhDWVMtV5CRiYRT6XEZ6tRGgbgVSTnMN4yY3nXisf\no4mO1D0BqmgY/iBZF8HJIf2d34b+EYfSTlPWbfjllW6rUdHVLFSUkkd44jk33UqS\nv8+SsvGIq/6PVqRDbSHbT6SVfBCikejLX29pi/Ppl2RROVUS/9+5G0w=\n-----END RSA PRIVATE KEY-----\n"
  },
  {
    "path": "main/ngrok/httpbin.yml",
    "content": "tunnels:\n  httpbin:\n    proto: http\n    addr: 8000\n    subdomain: alan-httpbin\n  demo:\n    proto: http\n    addr: 9090\n    hostname: demo.inconshreveable.com\n    inspect: false\n    auth: \"demo:secret\""
  },
  {
    "path": "main/ngrok/ngrok.cfg",
    "content": "server_addr: \"cngrok.com:4443\"\r\ntrust_host_root_certs: false"
  },
  {
    "path": "main/ngrok/ngrok.go",
    "content": "package main\r\n\r\nimport (\r\n\t\"cngrok/client\"\r\n)\r\n\r\nfunc main() {\r\n\tclient.Main()\r\n}\r\n"
  },
  {
    "path": "main/ngrok/page.html",
    "content": "<html>\r\n    <head>\r\n        <title>ngrok</title>\r\n        <link href=\"/static/css/highlight.min.css\" rel=\"stylesheet\">\r\n        <link href=\"/static/css/bootstrap.min.css\" rel=\"stylesheet\">\r\n        <script src=\"/static/js/highlight.min.js\"></script>\r\n        <script src=\"/static/js/vkbeautify.js\"></script>\r\n        <script src=\"/static/js/jquery-1.9.1.min.js\"></script>\r\n        <script src=\"/static/js/jquery.timeago.js\"></script>\r\n        <script src=\"/static/js/angular.js\"></script>\r\n        <script src=\"/static/js/angular-sanitize.min.js\"></script>\r\n        <script src=\"/static/js/base64.js\"></script>\r\n        <script src=\"/static/js/ngrok.js\"></script>\r\n        <script type=\"text/javascript\">\r\n            window.data = JSON.parse({% . %});\r\n        </script>\r\n        <style type=\"text/css\">\r\n            body { margin-top: 50px; }\r\n            table.params { font-size: 12px; font-family: Courier, monospace; }\r\n            .txn-selector tr { cursor: pointer; }\r\n            .txn-selector tr:hover { background-color: #ddd; }\r\n            tr.selected, tr.selected:hover {\r\n                background-color: #ff9999;\r\n                background-color: #000000;\r\n                color:white;\r\n            }\r\n            .path {\r\n              width: 100%;\r\n            }\r\n            .wrapped {\r\n              word-wrap: break-word;\r\n              word-break: break-word;\r\n              overflow: hidden;\r\n            }\r\n        </style>\r\n    </head>\r\n\r\n    <body ng-app=\"ngrok\">\r\n        <div class=\"container\" ng-controller=\"HttpTxns\">\r\n            <div class=\"navbar navbar-inverse navbar-fixed-top\">\r\n                <div class=\"navbar-inner\">\r\n                    <div class=\"container\">\r\n                        <a class=\"brand\" href=\"http://cngrok.com\">cngrok</a>\r\n                        <ul class=\"nav\">\r\n                            <li class=\"active\"><a href=\"#\">入站请求</a></li>\r\n                            <!--\r\n                            <li><a href=\"#\">Outbound Requests</a></li>\r\n                            <li><a href=\"#\">Configuration</a></li>\r\n                            -->\r\n                        </ul>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n            <div ng-show=\"txns.length==0\" class=\"row\">\r\n                <div class=\"span6 offset3\">\r\n                    <div class=\"well\" style=\"padding: 20px 50px;\">\r\n                        <h4>没有要显示的要求</h4>\r\n            <hr />\r\n                        <h5>要开始使用，请向您的某个隧道网址发出请求:</h5>\r\n                            <ul>\r\n                                <li ng-repeat=\"t in tunnels\"><p class=\"lead\"><a target=\"_blank\" href=\"{{ t.PublicUrl }}\">{{ t.PublicUrl }}</a></p></li>\r\n                            </ul>\r\n                        </p>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n            <div ng-show=\"txns.length>0\" class=\"row\">\r\n                <div class=\"span6\">\r\n                    <h4>所有请求</h4>\r\n                    <table class=\"table txn-selector\">\r\n                        <tr ng-controller=\"TxnNavItem\" ng-class=\"{'selected':isActive()}\" ng-repeat=\"txn in txns\" ng-click=\"makeActive()\">\r\n                            <td class=\"wrapped\"><div class=\"path\">{{ txn.Req.MethodPath }}</div></td>\r\n                            <td>{{ txn.Resp.Status }}</td>\r\n                            <td><span class=\"pull-right\">{{ txn.Duration }}</span></td>\r\n                        </tr>\r\n                    </table>\r\n                </div>\r\n                <div class=\"span6\" ng-controller=\"HttpTxn\" ng-show=\"!!Txn\">\r\n                    <div class=\"row-fluid\">\r\n                        <div class=\"span4\">\r\n                            <span title=\"{{ISO8601(Txn.Start)}}\" class=\"muted\">\r\n                                {{TimeFormat(Txn.Start)}}\r\n                            </span>\r\n                        </div>\r\n                        <div class=\"span4\">\r\n                            <i class=\"icon-time\"></i> 持续时间\r\n                            <span style=\"margin-left: 8px;\" class=\"muted\">{{Txn.Duration}}</span>\r\n                        </div>\r\n                        <div  class=\"span4\">\r\n                            <i class=\"icon-user\"></i> IP\r\n                            <span style=\"margin-left: 8px;\" class=\"muted\">{{Txn.ConnCtx.ClientAddr.split(\":\")[0]}}</span>\r\n                        </div>\r\n                    </div>\r\n                    <hr />\r\n                    <div ng-show=\"!!Req\" ng-controller=\"HttpRequest\">\r\n                        <h3 class=\"wrapped\">{{ Req.MethodPath }}</h3>\r\n                        <div onbtnclick=\"replay()\" btn=\"Replay\" tabs=\"Summary,Headers,Raw,Binary\">\r\n                        </div>\r\n\r\n                        <div ng-show=\"isTab('Summary')\">\r\n                            <keyval title=\"Query Params\" tuples=\"Req.Params\"></keyval>\r\n                            <div body=\"Req.Body\" binary=\"Req.Binary\"></div>\r\n                        </div>\r\n\r\n                        <div ng-show=\"isTab('Headers')\">\r\n                            <keyval title=\"Headers\" tuples=\"Req.Header\"></keyval>\r\n                        </div>\r\n\r\n                        <div ng-show=\"isTab('Raw')\">\r\n                            <pre><code class=\"http\">{{ Req.RawText }}</code></pre>\r\n                        </div>\r\n\r\n                        <div ng-show=\"isTab('Binary')\">\r\n                            <pre><code>{{ Req.RawBytes }}</code></pre>\r\n                        </div>\r\n\r\n                    </div>\r\n\r\n                    <hr style=\"margin: 40px 0 20px\" />\r\n\r\n                    <div ng-show=\"!!Resp\" ng-controller=\"HttpResponse\">\r\n                        <h3 ng-class=\"Resp.statusClass\">{{ Resp.Status }}</h3>\r\n\r\n                        <div tabs=\"Summary,Headers,Raw,Binary\"></div>\r\n                        <div ng-show=\"isTab('Summary')\">\r\n                            <div body=\"Resp.Body\" binary=\"Resp.Binary\"></div>\r\n                        </div>\r\n\r\n                        <div ng-show=\"isTab('Headers')\">\r\n                            <keyval title=\"Headers\" tuples=\"Resp.Header\"></keyval>\r\n                        </div>\r\n\r\n                        <div ng-show=\"isTab('Raw')\">\r\n                            <pre><code class=\"http\">{{ Resp.RawText }}</code></pre>\r\n                        </div>\r\n\r\n                        <div ng-show=\"isTab('Binary')\">\r\n                            <pre><code>{{ Resp.RawBytes }}</code></pre>\r\n                        </div>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n        </div>\r\n        <!-- UserVoice JavaScript SDK (only needed once on a page) -->\r\n        <script>(function(){var uv=document.createElement('script');uv.type='text/javascript';uv.async=true;uv.src='//widget.uservoice.com/4KUmdF6WZd302MfwoayMw.js';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(uv,s)})()</script>\r\n\r\n        <!-- A tab to launch the Classic Widget -->\r\n        <script>\r\n        UserVoice = window.UserVoice || [];\r\n        UserVoice.push(['showTab', 'classic_widget', {\r\n          mode: 'feedback',\r\n          primary_color: '#cc6d00',\r\n          link_color: '#007dbf',\r\n          forum_id: 211925,\r\n          tab_label: 'Feedback',\r\n          tab_color: '#cc6d00',\r\n          tab_position: 'middle-left',\r\n          tab_inverted: false\r\n        }]);\r\n        </script>\r\n    </body>\r\n</html>\r\n"
  },
  {
    "path": "main/ngrok/run.bat",
    "content": "ngrok.exe -log ngrok.ssh.log -config ngrok.cfg -proto tcp 22"
  },
  {
    "path": "main/ngrok/run.sh",
    "content": "nohup /home/pi/workspace/go/src/ngrok/main/ngrok/ngrok -log /home/pi/workspace/go/src/ngrok/main/ngrok/ngrok.ssh.log -config /home/pi/workspace/go/src/ngrok/m $"
  },
  {
    "path": "main/ngrok/static/js/angular.js",
    "content": "/*\r\n AngularJS v1.1.5\r\n (c) 2010-2012 Google, Inc. http://angularjs.org\r\n License: MIT\r\n*/\r\n(function(M,T,p){'use strict';function lc(){var b=M.angular;M.angular=mc;return b}function Xa(b){return!b||typeof b.length!==\"number\"?!1:typeof b.hasOwnProperty!=\"function\"&&typeof b.constructor!=\"function\"?!0:b instanceof R||ga&&b instanceof ga||Ea.call(b)!==\"[object Object]\"||typeof b.callee===\"function\"}function n(b,a,c){var d;if(b)if(H(b))for(d in b)d!=\"prototype\"&&d!=\"length\"&&d!=\"name\"&&b.hasOwnProperty(d)&&a.call(c,b[d],d);else if(b.forEach&&b.forEach!==n)b.forEach(a,c);else if(Xa(b))for(d=\r\n0;d<b.length;d++)a.call(c,b[d],d);else for(d in b)b.hasOwnProperty(d)&&a.call(c,b[d],d);return b}function qb(b){var a=[],c;for(c in b)b.hasOwnProperty(c)&&a.push(c);return a.sort()}function nc(b,a,c){for(var d=qb(b),e=0;e<d.length;e++)a.call(c,b[d[e]],d[e]);return d}function rb(b){return function(a,c){b(c,a)}}function Fa(){for(var b=ba.length,a;b;){b--;a=ba[b].charCodeAt(0);if(a==57)return ba[b]=\"A\",ba.join(\"\");if(a==90)ba[b]=\"0\";else return ba[b]=String.fromCharCode(a+1),ba.join(\"\")}ba.unshift(\"0\");\r\nreturn ba.join(\"\")}function sb(b,a){a?b.$$hashKey=a:delete b.$$hashKey}function t(b){var a=b.$$hashKey;n(arguments,function(a){a!==b&&n(a,function(a,c){b[c]=a})});sb(b,a);return b}function N(b){return parseInt(b,10)}function tb(b,a){return t(new (t(function(){},{prototype:b})),a)}function q(){}function qa(b){return b}function S(b){return function(){return b}}function C(b){return typeof b==\"undefined\"}function B(b){return typeof b!=\"undefined\"}function L(b){return b!=null&&typeof b==\"object\"}function E(b){return typeof b==\r\n\"string\"}function Ya(b){return typeof b==\"number\"}function ra(b){return Ea.apply(b)==\"[object Date]\"}function F(b){return Ea.apply(b)==\"[object Array]\"}function H(b){return typeof b==\"function\"}function sa(b){return b&&b.document&&b.location&&b.alert&&b.setInterval}function U(b){return E(b)?b.replace(/^\\s*/,\"\").replace(/\\s*$/,\"\"):b}function oc(b){return b&&(b.nodeName||b.bind&&b.find)}function Za(b,a,c){var d=[];n(b,function(b,g,i){d.push(a.call(c,b,g,i))});return d}function Ga(b,a){if(b.indexOf)return b.indexOf(a);\r\nfor(var c=0;c<b.length;c++)if(a===b[c])return c;return-1}function ta(b,a){var c=Ga(b,a);c>=0&&b.splice(c,1);return a}function V(b,a){if(sa(b)||b&&b.$evalAsync&&b.$watch)throw Error(\"Can't copy Window or Scope\");if(a){if(b===a)throw Error(\"Can't copy equivalent objects or arrays\");if(F(b))for(var c=a.length=0;c<b.length;c++)a.push(V(b[c]));else{c=a.$$hashKey;n(a,function(b,c){delete a[c]});for(var d in b)a[d]=V(b[d]);sb(a,c)}}else(a=b)&&(F(b)?a=V(b,[]):ra(b)?a=new Date(b.getTime()):L(b)&&(a=V(b,{})));\r\nreturn a}function pc(b,a){var a=a||{},c;for(c in b)b.hasOwnProperty(c)&&c.substr(0,2)!==\"$$\"&&(a[c]=b[c]);return a}function ia(b,a){if(b===a)return!0;if(b===null||a===null)return!1;if(b!==b&&a!==a)return!0;var c=typeof b,d;if(c==typeof a&&c==\"object\")if(F(b)){if((c=b.length)==a.length){for(d=0;d<c;d++)if(!ia(b[d],a[d]))return!1;return!0}}else if(ra(b))return ra(a)&&b.getTime()==a.getTime();else{if(b&&b.$evalAsync&&b.$watch||a&&a.$evalAsync&&a.$watch||sa(b)||sa(a))return!1;c={};for(d in b)if(!(d.charAt(0)===\r\n\"$\"||H(b[d]))){if(!ia(b[d],a[d]))return!1;c[d]=!0}for(d in a)if(!c[d]&&d.charAt(0)!==\"$\"&&a[d]!==p&&!H(a[d]))return!1;return!0}return!1}function $a(b,a){var c=arguments.length>2?ka.call(arguments,2):[];return H(a)&&!(a instanceof RegExp)?c.length?function(){return arguments.length?a.apply(b,c.concat(ka.call(arguments,0))):a.apply(b,c)}:function(){return arguments.length?a.apply(b,arguments):a.call(b)}:a}function qc(b,a){var c=a;/^\\$+/.test(b)?c=p:sa(a)?c=\"$WINDOW\":a&&T===a?c=\"$DOCUMENT\":a&&a.$evalAsync&&\r\na.$watch&&(c=\"$SCOPE\");return c}function ha(b,a){return JSON.stringify(b,qc,a?\"  \":null)}function ub(b){return E(b)?JSON.parse(b):b}function ua(b){b&&b.length!==0?(b=I(\"\"+b),b=!(b==\"f\"||b==\"0\"||b==\"false\"||b==\"no\"||b==\"n\"||b==\"[]\")):b=!1;return b}function va(b){b=w(b).clone();try{b.html(\"\")}catch(a){}var c=w(\"<div>\").append(b).html();try{return b[0].nodeType===3?I(c):c.match(/^(<[^>]+>)/)[1].replace(/^<([\\w\\-]+)/,function(a,b){return\"<\"+I(b)})}catch(d){return I(c)}}function vb(b){var a={},c,d;n((b||\r\n\"\").split(\"&\"),function(b){b&&(c=b.split(\"=\"),d=decodeURIComponent(c[0]),a[d]=B(c[1])?decodeURIComponent(c[1]):!0)});return a}function wb(b){var a=[];n(b,function(b,d){a.push(wa(d,!0)+(b===!0?\"\":\"=\"+wa(b,!0)))});return a.length?a.join(\"&\"):\"\"}function ab(b){return wa(b,!0).replace(/%26/gi,\"&\").replace(/%3D/gi,\"=\").replace(/%2B/gi,\"+\")}function wa(b,a){return encodeURIComponent(b).replace(/%40/gi,\"@\").replace(/%3A/gi,\":\").replace(/%24/g,\"$\").replace(/%2C/gi,\",\").replace(/%20/g,a?\"%20\":\"+\")}function rc(b,\r\na){function c(a){a&&d.push(a)}var d=[b],e,g,i=[\"ng:app\",\"ng-app\",\"x-ng-app\",\"data-ng-app\"],f=/\\sng[:\\-]app(:\\s*([\\w\\d_]+);?)?\\s/;n(i,function(a){i[a]=!0;c(T.getElementById(a));a=a.replace(\":\",\"\\\\:\");b.querySelectorAll&&(n(b.querySelectorAll(\".\"+a),c),n(b.querySelectorAll(\".\"+a+\"\\\\:\"),c),n(b.querySelectorAll(\"[\"+a+\"]\"),c))});n(d,function(a){if(!e){var b=f.exec(\" \"+a.className+\" \");b?(e=a,g=(b[2]||\"\").replace(/\\s+/g,\",\")):n(a.attributes,function(b){if(!e&&i[b.name])e=a,g=b.value})}});e&&a(e,g?[g]:[])}\r\nfunction xb(b,a){var c=function(){b=w(b);a=a||[];a.unshift([\"$provide\",function(a){a.value(\"$rootElement\",b)}]);a.unshift(\"ng\");var c=yb(a);c.invoke([\"$rootScope\",\"$rootElement\",\"$compile\",\"$injector\",\"$animator\",function(a,b,c,d,e){a.$apply(function(){b.data(\"$injector\",d);c(b)(a)});e.enabled(!0)}]);return c},d=/^NG_DEFER_BOOTSTRAP!/;if(M&&!d.test(M.name))return c();M.name=M.name.replace(d,\"\");Ha.resumeBootstrap=function(b){n(b,function(b){a.push(b)});c()}}function bb(b,a){a=a||\"_\";return b.replace(sc,\r\nfunction(b,d){return(d?a:\"\")+b.toLowerCase()})}function cb(b,a,c){if(!b)throw Error(\"Argument '\"+(a||\"?\")+\"' is \"+(c||\"required\"));return b}function xa(b,a,c){c&&F(b)&&(b=b[b.length-1]);cb(H(b),a,\"not a function, got \"+(b&&typeof b==\"object\"?b.constructor.name||\"Object\":typeof b));return b}function tc(b){function a(a,b,e){return a[b]||(a[b]=e())}return a(a(b,\"angular\",Object),\"module\",function(){var b={};return function(d,e,g){e&&b.hasOwnProperty(d)&&(b[d]=null);return a(b,d,function(){function a(c,\r\nd,e){return function(){b[e||\"push\"]([c,d,arguments]);return m}}if(!e)throw Error(\"No module: \"+d);var b=[],c=[],j=a(\"$injector\",\"invoke\"),m={_invokeQueue:b,_runBlocks:c,requires:e,name:d,provider:a(\"$provide\",\"provider\"),factory:a(\"$provide\",\"factory\"),service:a(\"$provide\",\"service\"),value:a(\"$provide\",\"value\"),constant:a(\"$provide\",\"constant\",\"unshift\"),animation:a(\"$animationProvider\",\"register\"),filter:a(\"$filterProvider\",\"register\"),controller:a(\"$controllerProvider\",\"register\"),directive:a(\"$compileProvider\",\r\n\"directive\"),config:j,run:function(a){c.push(a);return this}};g&&j(g);return m})}})}function Ia(b){return b.replace(uc,function(a,b,d,e){return e?d.toUpperCase():d}).replace(vc,\"Moz$1\")}function db(b,a){function c(){var e;for(var b=[this],c=a,i,f,h,j,m,k;b.length;){i=b.shift();f=0;for(h=i.length;f<h;f++){j=w(i[f]);c?j.triggerHandler(\"$destroy\"):c=!c;m=0;for(e=(k=j.children()).length,j=e;m<j;m++)b.push(ga(k[m]))}}return d.apply(this,arguments)}var d=ga.fn[b],d=d.$original||d;c.$original=d;ga.fn[b]=\r\nc}function R(b){if(b instanceof R)return b;if(!(this instanceof R)){if(E(b)&&b.charAt(0)!=\"<\")throw Error(\"selectors not implemented\");return new R(b)}if(E(b)){var a=T.createElement(\"div\");a.innerHTML=\"<div>&#160;</div>\"+b;a.removeChild(a.firstChild);eb(this,a.childNodes);this.remove()}else eb(this,b)}function fb(b){return b.cloneNode(!0)}function ya(b){zb(b);for(var a=0,b=b.childNodes||[];a<b.length;a++)ya(b[a])}function Ab(b,a,c){var d=ca(b,\"events\");ca(b,\"handle\")&&(C(a)?n(d,function(a,c){gb(b,\r\nc,a);delete d[c]}):C(c)?(gb(b,a,d[a]),delete d[a]):ta(d[a],c))}function zb(b){var a=b[Ja],c=Ka[a];c&&(c.handle&&(c.events.$destroy&&c.handle({},\"$destroy\"),Ab(b)),delete Ka[a],b[Ja]=p)}function ca(b,a,c){var d=b[Ja],d=Ka[d||-1];if(B(c))d||(b[Ja]=d=++wc,d=Ka[d]={}),d[a]=c;else return d&&d[a]}function Bb(b,a,c){var d=ca(b,\"data\"),e=B(c),g=!e&&B(a),i=g&&!L(a);!d&&!i&&ca(b,\"data\",d={});if(e)d[a]=c;else if(g)if(i)return d&&d[a];else t(d,a);else return d}function La(b,a){return(\" \"+b.className+\" \").replace(/[\\n\\t]/g,\r\n\" \").indexOf(\" \"+a+\" \")>-1}function Cb(b,a){a&&n(a.split(\" \"),function(a){b.className=U((\" \"+b.className+\" \").replace(/[\\n\\t]/g,\" \").replace(\" \"+U(a)+\" \",\" \"))})}function Db(b,a){a&&n(a.split(\" \"),function(a){if(!La(b,a))b.className=U(b.className+\" \"+U(a))})}function eb(b,a){if(a)for(var a=!a.nodeName&&B(a.length)&&!sa(a)?a:[a],c=0;c<a.length;c++)b.push(a[c])}function Eb(b,a){return Ma(b,\"$\"+(a||\"ngController\")+\"Controller\")}function Ma(b,a,c){b=w(b);for(b[0].nodeType==9&&(b=b.find(\"html\"));b.length;){if(c=\r\nb.data(a))return c;b=b.parent()}}function Fb(b,a){var c=Na[a.toLowerCase()];return c&&Gb[b.nodeName]&&c}function xc(b,a){var c=function(c,e){if(!c.preventDefault)c.preventDefault=function(){c.returnValue=!1};if(!c.stopPropagation)c.stopPropagation=function(){c.cancelBubble=!0};if(!c.target)c.target=c.srcElement||T;if(C(c.defaultPrevented)){var g=c.preventDefault;c.preventDefault=function(){c.defaultPrevented=!0;g.call(c)};c.defaultPrevented=!1}c.isDefaultPrevented=function(){return c.defaultPrevented||\r\nc.returnValue==!1};n(a[e||c.type],function(a){a.call(b,c)});Z<=8?(c.preventDefault=null,c.stopPropagation=null,c.isDefaultPrevented=null):(delete c.preventDefault,delete c.stopPropagation,delete c.isDefaultPrevented)};c.elem=b;return c}function la(b){var a=typeof b,c;if(a==\"object\"&&b!==null)if(typeof(c=b.$$hashKey)==\"function\")c=b.$$hashKey();else{if(c===p)c=b.$$hashKey=Fa()}else c=b;return a+\":\"+c}function za(b){n(b,this.put,this)}function Hb(b){var a,c;if(typeof b==\"function\"){if(!(a=b.$inject))a=\r\n[],c=b.toString().replace(yc,\"\"),c=c.match(zc),n(c[1].split(Ac),function(b){b.replace(Bc,function(b,c,d){a.push(d)})}),b.$inject=a}else F(b)?(c=b.length-1,xa(b[c],\"fn\"),a=b.slice(0,c)):xa(b,\"fn\",!0);return a}function yb(b){function a(a){return function(b,c){if(L(b))n(b,rb(a));else return a(b,c)}}function c(a,b){if(H(b)||F(b))b=k.instantiate(b);if(!b.$get)throw Error(\"Provider \"+a+\" must define $get factory method.\");return m[a+f]=b}function d(a,b){return c(a,{$get:b})}function e(a){var b=[];n(a,function(a){if(!j.get(a))if(j.put(a,\r\n!0),E(a)){var c=Aa(a);b=b.concat(e(c.requires)).concat(c._runBlocks);try{for(var d=c._invokeQueue,c=0,f=d.length;c<f;c++){var g=d[c],o=k.get(g[0]);o[g[1]].apply(o,g[2])}}catch(h){throw h.message&&(h.message+=\" from \"+a),h;}}else if(H(a))try{b.push(k.invoke(a))}catch(l){throw l.message&&(l.message+=\" from \"+a),l;}else if(F(a))try{b.push(k.invoke(a))}catch(i){throw i.message&&(i.message+=\" from \"+String(a[a.length-1])),i;}else xa(a,\"module\")});return b}function g(a,b){function c(d){if(typeof d!==\"string\")throw Error(\"Service name expected\");\r\nif(a.hasOwnProperty(d)){if(a[d]===i)throw Error(\"Circular dependency: \"+h.join(\" <- \"));return a[d]}else try{return h.unshift(d),a[d]=i,a[d]=b(d)}finally{h.shift()}}function d(a,b,e){var f=[],j=Hb(a),g,o,h;o=0;for(g=j.length;o<g;o++)h=j[o],f.push(e&&e.hasOwnProperty(h)?e[h]:c(h));a.$inject||(a=a[g]);switch(b?-1:f.length){case 0:return a();case 1:return a(f[0]);case 2:return a(f[0],f[1]);case 3:return a(f[0],f[1],f[2]);case 4:return a(f[0],f[1],f[2],f[3]);case 5:return a(f[0],f[1],f[2],f[3],f[4]);\r\ncase 6:return a(f[0],f[1],f[2],f[3],f[4],f[5]);case 7:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6]);case 8:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7]);case 9:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8]);case 10:return a(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8],f[9]);default:return a.apply(b,f)}}return{invoke:d,instantiate:function(a,b){var c=function(){},e;c.prototype=(F(a)?a[a.length-1]:a).prototype;c=new c;e=d(a,c,b);return L(e)?e:c},get:c,annotate:Hb,has:function(b){return m.hasOwnProperty(b+\r\nf)||a.hasOwnProperty(b)}}}var i={},f=\"Provider\",h=[],j=new za,m={$provide:{provider:a(c),factory:a(d),service:a(function(a,b){return d(a,[\"$injector\",function(a){return a.instantiate(b)}])}),value:a(function(a,b){return d(a,S(b))}),constant:a(function(a,b){m[a]=b;l[a]=b}),decorator:function(a,b){var c=k.get(a+f),d=c.$get;c.$get=function(){var a=u.invoke(d,c);return u.invoke(b,null,{$delegate:a})}}}},k=m.$injector=g(m,function(){throw Error(\"Unknown provider: \"+h.join(\" <- \"));}),l={},u=l.$injector=\r\ng(l,function(a){a=k.get(a+f);return u.invoke(a.$get,a)});n(e(b),function(a){u.invoke(a||q)});return u}function Cc(){var b=!0;this.disableAutoScrolling=function(){b=!1};this.$get=[\"$window\",\"$location\",\"$rootScope\",function(a,c,d){function e(a){var b=null;n(a,function(a){!b&&I(a.nodeName)===\"a\"&&(b=a)});return b}function g(){var b=c.hash(),d;b?(d=i.getElementById(b))?d.scrollIntoView():(d=e(i.getElementsByName(b)))?d.scrollIntoView():b===\"top\"&&a.scrollTo(0,0):a.scrollTo(0,0)}var i=a.document;b&&d.$watch(function(){return c.hash()},\r\nfunction(){d.$evalAsync(g)});return g}]}function Ib(b){this.register=function(a,c){b.factory(Ia(a)+\"Animation\",c)};this.$get=[\"$injector\",function(a){return function(b){if(b&&(b=Ia(b)+\"Animation\",a.has(b)))return a.get(b)}}]}function Dc(b,a,c,d){function e(a){try{a.apply(null,ka.call(arguments,1))}finally{if(o--,o===0)for(;z.length;)try{z.pop()()}catch(b){c.error(b)}}}function g(a,b){(function s(){n(r,function(a){a()});y=b(s,a)})()}function i(){x!=f.url()&&(x=f.url(),n(v,function(a){a(f.url())}))}\r\nvar f=this,h=a[0],j=b.location,m=b.history,k=b.setTimeout,l=b.clearTimeout,u={};f.isMock=!1;var o=0,z=[];f.$$completeOutstandingRequest=e;f.$$incOutstandingRequestCount=function(){o++};f.notifyWhenNoOutstandingRequests=function(a){n(r,function(a){a()});o===0?a():z.push(a)};var r=[],y;f.addPollFn=function(a){C(y)&&g(100,k);r.push(a);return a};var x=j.href,W=a.find(\"base\");f.url=function(a,b){if(a){if(x!=a)return x=a,d.history?b?m.replaceState(null,\"\",a):(m.pushState(null,\"\",a),W.attr(\"href\",W.attr(\"href\"))):\r\nb?j.replace(a):j.href=a,f}else return j.href.replace(/%27/g,\"'\")};var v=[],A=!1;f.onUrlChange=function(a){A||(d.history&&w(b).bind(\"popstate\",i),d.hashchange?w(b).bind(\"hashchange\",i):f.addPollFn(i),A=!0);v.push(a);return a};f.baseHref=function(){var a=W.attr(\"href\");return a?a.replace(/^https?\\:\\/\\/[^\\/]*/,\"\"):\"\"};var G={},D=\"\",$=f.baseHref();f.cookies=function(a,b){var d,e,f,j;if(a)if(b===p)h.cookie=escape(a)+\"=;path=\"+$+\";expires=Thu, 01 Jan 1970 00:00:00 GMT\";else{if(E(b))d=(h.cookie=escape(a)+\r\n\"=\"+escape(b)+\";path=\"+$).length+1,d>4096&&c.warn(\"Cookie '\"+a+\"' possibly not set or overflowed because it was too large (\"+d+\" > 4096 bytes)!\")}else{if(h.cookie!==D){D=h.cookie;d=D.split(\"; \");G={};for(f=0;f<d.length;f++)e=d[f],j=e.indexOf(\"=\"),j>0&&(a=unescape(e.substring(0,j)),G[a]===p&&(G[a]=unescape(e.substring(j+1))))}return G}};f.defer=function(a,b){var c;o++;c=k(function(){delete u[c];e(a)},b||0);u[c]=!0;return c};f.defer.cancel=function(a){return u[a]?(delete u[a],l(a),e(q),!0):!1}}function Ec(){this.$get=\r\n[\"$window\",\"$log\",\"$sniffer\",\"$document\",function(b,a,c,d){return new Dc(b,d,a,c)}]}function Fc(){this.$get=function(){function b(b,d){function e(a){if(a!=k){if(l){if(l==a)l=a.n}else l=a;g(a.n,a.p);g(a,k);k=a;k.n=null}}function g(a,b){if(a!=b){if(a)a.p=b;if(b)b.n=a}}if(b in a)throw Error(\"cacheId \"+b+\" taken\");var i=0,f=t({},d,{id:b}),h={},j=d&&d.capacity||Number.MAX_VALUE,m={},k=null,l=null;return a[b]={put:function(a,b){var c=m[a]||(m[a]={key:a});e(c);if(!C(b))return a in h||i++,h[a]=b,i>j&&this.remove(l.key),\r\nb},get:function(a){var b=m[a];if(b)return e(b),h[a]},remove:function(a){var b=m[a];if(b){if(b==k)k=b.p;if(b==l)l=b.n;g(b.n,b.p);delete m[a];delete h[a];i--}},removeAll:function(){h={};i=0;m={};k=l=null},destroy:function(){m=f=h=null;delete a[b]},info:function(){return t({},f,{size:i})}}}var a={};b.info=function(){var b={};n(a,function(a,e){b[e]=a.info()});return b};b.get=function(b){return a[b]};return b}}function Gc(){this.$get=[\"$cacheFactory\",function(b){return b(\"templates\")}]}function Jb(b){var a=\r\n{},c=\"Directive\",d=/^\\s*directive\\:\\s*([\\d\\w\\-_]+)\\s+(.*)$/,e=/(([\\d\\w\\-_]+)(?:\\:([^;]+))?;?)/,g=\"Template must have exactly one root element. was: \",i=/^\\s*(https?|ftp|mailto|file):/;this.directive=function h(d,e){E(d)?(cb(e,\"directive\"),a.hasOwnProperty(d)||(a[d]=[],b.factory(d+c,[\"$injector\",\"$exceptionHandler\",function(b,c){var e=[];n(a[d],function(a){try{var g=b.invoke(a);if(H(g))g={compile:S(g)};else if(!g.compile&&g.link)g.compile=S(g.link);g.priority=g.priority||0;g.name=g.name||d;g.require=\r\ng.require||g.controller&&g.name;g.restrict=g.restrict||\"A\";e.push(g)}catch(h){c(h)}});return e}])),a[d].push(e)):n(d,rb(h));return this};this.urlSanitizationWhitelist=function(a){return B(a)?(i=a,this):i};this.$get=[\"$injector\",\"$interpolate\",\"$exceptionHandler\",\"$http\",\"$templateCache\",\"$parse\",\"$controller\",\"$rootScope\",\"$document\",function(b,j,m,k,l,u,o,z,r){function y(a,b,c){a instanceof w||(a=w(a));n(a,function(b,c){b.nodeType==3&&b.nodeValue.match(/\\S+/)&&(a[c]=w(b).wrap(\"<span></span>\").parent()[0])});\r\nvar d=W(a,b,a,c);return function(b,c){cb(b,\"scope\");for(var e=c?Ba.clone.call(a):a,j=0,g=e.length;j<g;j++){var h=e[j];(h.nodeType==1||h.nodeType==9)&&e.eq(j).data(\"$scope\",b)}x(e,\"ng-scope\");c&&c(e,b);d&&d(b,e,e);return e}}function x(a,b){try{a.addClass(b)}catch(c){}}function W(a,b,c,d){function e(a,c,d,g){var h,i,k,l,o,m,u,z=[];o=0;for(m=c.length;o<m;o++)z.push(c[o]);u=o=0;for(m=j.length;o<m;u++)i=z[u],c=j[o++],h=j[o++],c?(c.scope?(k=a.$new(L(c.scope)),w(i).data(\"$scope\",k)):k=a,(l=c.transclude)||\r\n!g&&b?c(h,k,i,d,function(b){return function(c){var d=a.$new();d.$$transcluded=!0;return b(d,c).bind(\"$destroy\",$a(d,d.$destroy))}}(l||b)):c(h,k,i,p,g)):h&&h(a,i.childNodes,p,g)}for(var j=[],g,h,k,i=0;i<a.length;i++)h=new ma,g=v(a[i],[],h,d),h=(g=g.length?A(g,a[i],h,b,c):null)&&g.terminal||!a[i].childNodes||!a[i].childNodes.length?null:W(a[i].childNodes,g?g.transclude:b),j.push(g),j.push(h),k=k||g||h;return k?e:null}function v(a,b,c,j){var g=c.$attr,h;switch(a.nodeType){case 1:G(b,da(hb(a).toLowerCase()),\r\n\"E\",j);var i,k,l;h=a.attributes;for(var o=0,m=h&&h.length;o<m;o++)if(i=h[o],i.specified)k=i.name,l=da(k),Y.test(l)&&(k=l.substr(6).toLowerCase()),l=da(k.toLowerCase()),g[l]=k,c[l]=i=U(Z&&k==\"href\"?decodeURIComponent(a.getAttribute(k,2)):i.value),Fb(a,l)&&(c[l]=!0),s(a,b,i,l),G(b,l,\"A\",j);a=a.className;if(E(a)&&a!==\"\")for(;h=e.exec(a);)l=da(h[2]),G(b,l,\"C\",j)&&(c[l]=U(h[3])),a=a.substr(h.index+h[0].length);break;case 3:P(b,a.nodeValue);break;case 8:try{if(h=d.exec(a.nodeValue))l=da(h[1]),G(b,l,\"M\",\r\nj)&&(c[l]=U(h[2]))}catch(u){}}b.sort(K);return b}function A(a,b,c,d,e){function h(a,b){if(a)a.require=s.require,z.push(a);if(b)b.require=s.require,ea.push(b)}function i(a,b){var c,d=\"data\",e=!1;if(E(a)){for(;(c=a.charAt(0))==\"^\"||c==\"?\";)a=a.substr(1),c==\"^\"&&(d=\"inheritedData\"),e=e||c==\"?\";c=b[d](\"$\"+a+\"Controller\");if(!c&&!e)throw Error(\"No controller: \"+a);}else F(a)&&(c=[],n(a,function(a){c.push(i(a,b))}));return c}function k(a,d,e,g,h){var l,v,r,D,x;l=b===e?c:pc(c,new ma(w(e),c.$attr));v=l.$$element;\r\nif(K){var y=/^\\s*([@=&])(\\??)\\s*(\\w*)\\s*$/,s=d.$parent||d;n(K.scope,function(a,b){var c=a.match(y)||[],e=c[3]||b,g=c[2]==\"?\",c=c[1],h,k,i;d.$$isolateBindings[b]=c+e;switch(c){case \"@\":l.$observe(e,function(a){d[b]=a});l.$$observers[e].$$scope=s;l[e]&&(d[b]=j(l[e])(s));break;case \"=\":if(g&&!l[e])break;k=u(l[e]);i=k.assign||function(){h=d[b]=k(s);throw Error(Kb+l[e]+\" (directive: \"+K.name+\")\");};h=d[b]=k(s);d.$watch(function(){var a=k(s);a!==d[b]&&(a!==h?h=d[b]=a:i(s,a=h=d[b]));return a});break;case \"&\":k=\r\nu(l[e]);d[b]=function(a){return k(s,a)};break;default:throw Error(\"Invalid isolate scope definition for directive \"+K.name+\": \"+a);}})}q&&n(q,function(a){var b={$scope:d,$element:v,$attrs:l,$transclude:h};x=a.controller;x==\"@\"&&(x=l[a.name]);v.data(\"$\"+a.name+\"Controller\",o(x,b))});g=0;for(r=z.length;g<r;g++)try{D=z[g],D(d,v,l,D.require&&i(D.require,v))}catch(Hc){m(Hc,va(v))}a&&a(d,e.childNodes,p,h);g=0;for(r=ea.length;g<r;g++)try{D=ea[g],D(d,v,l,D.require&&i(D.require,v))}catch(J){m(J,va(v))}}for(var l=\r\n-Number.MAX_VALUE,z=[],ea=[],r=null,K=null,W=null,J=c.$$element=w(b),s,A,Y,G,P=d,q,na,t,B=0,C=a.length;B<C;B++){s=a[B];Y=p;if(l>s.priority)break;if(t=s.scope)O(\"isolated scope\",K,s,J),L(t)&&(x(J,\"ng-isolate-scope\"),K=s),x(J,\"ng-scope\"),r=r||s;A=s.name;if(t=s.controller)q=q||{},O(\"'\"+A+\"' controller\",q[A],s,J),q[A]=s;if(t=s.transclude)O(\"transclusion\",G,s,J),G=s,l=s.priority,t==\"element\"?(Y=w(b),J=c.$$element=w(T.createComment(\" \"+A+\": \"+c[A]+\" \")),b=J[0],ja(e,w(Y[0]),b),P=y(Y,d,l)):(Y=w(fb(b)).contents(),\r\nJ.html(\"\"),P=y(Y,d));if(s.template)if(O(\"template\",W,s,J),W=s,t=H(s.template)?s.template(J,c):s.template,t=Lb(t),s.replace){Y=w(\"<div>\"+U(t)+\"</div>\").contents();b=Y[0];if(Y.length!=1||b.nodeType!==1)throw Error(g+t);ja(e,J,b);A={$attr:{}};a=a.concat(v(b,a.splice(B+1,a.length-(B+1)),A));D(c,A);C=a.length}else J.html(t);if(s.templateUrl)O(\"template\",W,s,J),W=s,k=$(a.splice(B,a.length-B),k,J,c,e,s.replace,P),C=a.length;else if(s.compile)try{na=s.compile(J,c,P),H(na)?h(null,na):na&&h(na.pre,na.post)}catch(I){m(I,\r\nva(J))}if(s.terminal)k.terminal=!0,l=Math.max(l,s.priority)}k.scope=r&&r.scope;k.transclude=G&&P;return k}function G(d,e,j,g){var l=!1;if(a.hasOwnProperty(e))for(var k,e=b.get(e+c),i=0,o=e.length;i<o;i++)try{if(k=e[i],(g===p||g>k.priority)&&k.restrict.indexOf(j)!=-1)d.push(k),l=!0}catch(u){m(u)}return l}function D(a,b){var c=b.$attr,d=a.$attr,e=a.$$element;n(a,function(d,e){e.charAt(0)!=\"$\"&&(b[e]&&(d+=(e===\"style\"?\";\":\" \")+b[e]),a.$set(e,d,!0,c[e]))});n(b,function(b,j){j==\"class\"?(x(e,b),a[\"class\"]=\r\n(a[\"class\"]?a[\"class\"]+\" \":\"\")+b):j==\"style\"?e.attr(\"style\",e.attr(\"style\")+\";\"+b):j.charAt(0)!=\"$\"&&!a.hasOwnProperty(j)&&(a[j]=b,d[j]=c[j])})}function $(a,b,c,d,e,j,h){var i=[],o,m,u=c[0],z=a.shift(),r=t({},z,{controller:null,templateUrl:null,transclude:null,scope:null}),z=H(z.templateUrl)?z.templateUrl(c,d):z.templateUrl;c.html(\"\");k.get(z,{cache:l}).success(function(l){var k,z,l=Lb(l);if(j){z=w(\"<div>\"+U(l)+\"</div>\").contents();k=z[0];if(z.length!=1||k.nodeType!==1)throw Error(g+l);l={$attr:{}};\r\nja(e,c,k);v(k,a,l);D(d,l)}else k=u,c.html(l);a.unshift(r);o=A(a,k,d,h);for(m=W(c[0].childNodes,h);i.length;){var ea=i.shift(),l=i.shift();z=i.shift();var x=i.shift(),y=k;l!==u&&(y=fb(k),ja(z,w(l),y));o(function(){b(m,ea,y,e,x)},ea,y,e,x)}i=null}).error(function(a,b,c,d){throw Error(\"Failed to load template: \"+d.url);});return function(a,c,d,e,j){i?(i.push(c),i.push(d),i.push(e),i.push(j)):o(function(){b(m,c,d,e,j)},c,d,e,j)}}function K(a,b){return b.priority-a.priority}function O(a,b,c,d){if(b)throw Error(\"Multiple directives [\"+\r\nb.name+\", \"+c.name+\"] asking for \"+a+\" on: \"+va(d));}function P(a,b){var c=j(b,!0);c&&a.push({priority:0,compile:S(function(a,b){var d=b.parent(),e=d.data(\"$binding\")||[];e.push(c);x(d.data(\"$binding\",e),\"ng-binding\");a.$watch(c,function(a){b[0].nodeValue=a})})})}function s(a,b,c,d){var e=j(c,!0);e&&b.push({priority:100,compile:S(function(a,b,c){b=c.$$observers||(c.$$observers={});if(e=j(c[d],!0))c[d]=e(a),(b[d]||(b[d]=[])).$$inter=!0,(c.$$observers&&c.$$observers[d].$$scope||a).$watch(e,function(a){c.$set(d,\r\na)})})})}function ja(a,b,c){var d=b[0],e=d.parentNode,j,g;if(a){j=0;for(g=a.length;j<g;j++)if(a[j]==d){a[j]=c;break}}e&&e.replaceChild(c,d);c[w.expando]=d[w.expando];b[0]=c}var ma=function(a,b){this.$$element=a;this.$attr=b||{}};ma.prototype={$normalize:da,$set:function(a,b,c,d){var e=Fb(this.$$element[0],a),j=this.$$observers;e&&(this.$$element.prop(a,b),d=e);this[a]=b;d?this.$attr[a]=d:(d=this.$attr[a])||(this.$attr[a]=d=bb(a,\"-\"));if(hb(this.$$element[0])===\"A\"&&a===\"href\")q.setAttribute(\"href\",\r\nb),e=q.href,e.match(i)||(this[a]=b=\"unsafe:\"+e);c!==!1&&(b===null||b===p?this.$$element.removeAttr(d):this.$$element.attr(d,b));j&&n(j[a],function(a){try{a(b)}catch(c){m(c)}})},$observe:function(a,b){var c=this,d=c.$$observers||(c.$$observers={}),e=d[a]||(d[a]=[]);e.push(b);z.$evalAsync(function(){e.$$inter||b(c[a])});return b}};var q=r[0].createElement(\"a\"),ea=j.startSymbol(),J=j.endSymbol(),Lb=ea==\"{{\"||J==\"}}\"?qa:function(a){return a.replace(/\\{\\{/g,ea).replace(/}}/g,J)},Y=/^ngAttr[A-Z]/;return y}]}\r\nfunction da(b){return Ia(b.replace(Ic,\"\"))}function Jc(){var b={},a=/^(\\S+)(\\s+as\\s+(\\w+))?$/;this.register=function(a,d){L(a)?t(b,a):b[a]=d};this.$get=[\"$injector\",\"$window\",function(c,d){return function(e,g){var i,f;E(e)&&(f=e.match(a),i=f[1],f=f[3],e=b.hasOwnProperty(i)?b[i]:ib(g.$scope,i,!0)||ib(d,i,!0),xa(e,i,!0));i=c.instantiate(e,g);if(f){if(typeof g.$scope!==\"object\")throw Error('Can not export controller as \"'+f+'\". No scope object provided!');g.$scope[f]=i}return i}}]}function Kc(){this.$get=\r\n[\"$window\",function(b){return w(b.document)}]}function Lc(){this.$get=[\"$log\",function(b){return function(a,c){b.error.apply(b,arguments)}}]}function Mc(){var b=\"{{\",a=\"}}\";this.startSymbol=function(a){return a?(b=a,this):b};this.endSymbol=function(b){return b?(a=b,this):a};this.$get=[\"$parse\",\"$exceptionHandler\",function(c,d){function e(e,h){for(var j,m,k=0,l=[],u=e.length,o=!1,z=[];k<u;)(j=e.indexOf(b,k))!=-1&&(m=e.indexOf(a,j+g))!=-1?(k!=j&&l.push(e.substring(k,j)),l.push(k=c(o=e.substring(j+g,\r\nm))),k.exp=o,k=m+i,o=!0):(k!=u&&l.push(e.substring(k)),k=u);if(!(u=l.length))l.push(\"\"),u=1;if(!h||o)return z.length=u,k=function(a){try{for(var b=0,c=u,j;b<c;b++){if(typeof(j=l[b])==\"function\")j=j(a),j==null||j==p?j=\"\":typeof j!=\"string\"&&(j=ha(j));z[b]=j}return z.join(\"\")}catch(g){d(Error(\"Error while interpolating: \"+e+\"\\n\"+g.toString()))}},k.exp=e,k.parts=l,k}var g=b.length,i=a.length;e.startSymbol=function(){return b};e.endSymbol=function(){return a};return e}]}function Mb(b){for(var b=b.split(\"/\"),\r\na=b.length;a--;)b[a]=ab(b[a]);return b.join(\"/\")}function Nb(b,a){var c=jb.exec(b);a.$$protocol=c[1];a.$$host=c[3];a.$$port=N(c[5])||Oa[c[1]]||null}function Ob(b,a){var c=Pb.exec(b);a.$$path=decodeURIComponent(c[1]);a.$$search=vb(c[3]);a.$$hash=decodeURIComponent(c[5]||\"\");if(a.$$path&&a.$$path.charAt(0)!=\"/\")a.$$path=\"/\"+a.$$path}function fa(b,a,c){return a.indexOf(b)==0?a.substr(b.length):c}function Ca(b){var a=b.indexOf(\"#\");return a==-1?b:b.substr(0,a)}function kb(b){return b.substr(0,Ca(b).lastIndexOf(\"/\")+\r\n1)}function Qb(b,a){var a=a||\"\",c=kb(b);this.$$parse=function(a){var b={};Nb(a,b);var g=fa(c,a);if(!E(g))throw Error('Invalid url \"'+a+'\", missing path prefix \"'+c+'\".');Ob(g,b);t(this,b);if(!this.$$path)this.$$path=\"/\";this.$$compose()};this.$$compose=function(){var a=wb(this.$$search),b=this.$$hash?\"#\"+ab(this.$$hash):\"\";this.$$url=Mb(this.$$path)+(a?\"?\"+a:\"\")+b;this.$$absUrl=c+this.$$url.substr(1)};this.$$rewrite=function(d){var e;if((e=fa(b,d))!==p)return d=e,(e=fa(a,e))!==p?c+(fa(\"/\",e)||e):\r\nb+d;else if((e=fa(c,d))!==p)return c+e;else if(c==d+\"/\")return c}}function lb(b,a){var c=kb(b);this.$$parse=function(d){Nb(d,this);var e=fa(b,d)||fa(c,d);if(!E(e))throw Error('Invalid url \"'+d+'\", does not start with \"'+b+'\".');e=e.charAt(0)==\"#\"?fa(a,e):e;if(!E(e))throw Error('Invalid url \"'+d+'\", missing hash prefix \"'+a+'\".');Ob(e,this);this.$$compose()};this.$$compose=function(){var c=wb(this.$$search),e=this.$$hash?\"#\"+ab(this.$$hash):\"\";this.$$url=Mb(this.$$path)+(c?\"?\"+c:\"\")+e;this.$$absUrl=\r\nb+(this.$$url?a+this.$$url:\"\")};this.$$rewrite=function(a){if(Ca(b)==Ca(a))return a}}function Rb(b,a){lb.apply(this,arguments);var c=kb(b);this.$$rewrite=function(d){var e;if(b==Ca(d))return d;else if(e=fa(c,d))return b+a+e;else if(c===d+\"/\")return c}}function Pa(b){return function(){return this[b]}}function Sb(b,a){return function(c){if(C(c))return this[b];this[b]=a(c);this.$$compose();return this}}function Nc(){var b=\"\",a=!1;this.hashPrefix=function(a){return B(a)?(b=a,this):b};this.html5Mode=function(b){return B(b)?\r\n(a=b,this):a};this.$get=[\"$rootScope\",\"$browser\",\"$sniffer\",\"$rootElement\",function(c,d,e,g){function i(a){c.$broadcast(\"$locationChangeSuccess\",f.absUrl(),a)}var f,h=d.baseHref(),j=d.url();a?(h=h?j.substring(0,j.indexOf(\"/\",j.indexOf(\"//\")+2))+h:j,e=e.history?Qb:Rb):(h=Ca(j),e=lb);f=new e(h,\"#\"+b);f.$$parse(f.$$rewrite(j));g.bind(\"click\",function(a){if(!a.ctrlKey&&!(a.metaKey||a.which==2)){for(var b=w(a.target);I(b[0].nodeName)!==\"a\";)if(b[0]===g[0]||!(b=b.parent())[0])return;var e=b.prop(\"href\"),\r\nj=f.$$rewrite(e);e&&!b.attr(\"target\")&&j&&!a.isDefaultPrevented()&&(a.preventDefault(),j!=d.url()&&(f.$$parse(j),c.$apply(),M.angular[\"ff-684208-preventDefault\"]=!0))}});f.absUrl()!=j&&d.url(f.absUrl(),!0);d.onUrlChange(function(a){f.absUrl()!=a&&(c.$broadcast(\"$locationChangeStart\",a,f.absUrl()).defaultPrevented?d.url(f.absUrl()):(c.$evalAsync(function(){var b=f.absUrl();f.$$parse(a);i(b)}),c.$$phase||c.$digest()))});var m=0;c.$watch(function(){var a=d.url(),b=f.$$replace;if(!m||a!=f.absUrl())m++,\r\nc.$evalAsync(function(){c.$broadcast(\"$locationChangeStart\",f.absUrl(),a).defaultPrevented?f.$$parse(a):(d.url(f.absUrl(),b),i(a))});f.$$replace=!1;return m});return f}]}function Oc(){var b=!0,a=this;this.debugEnabled=function(a){return B(a)?(b=a,this):b};this.$get=[\"$window\",function(c){function d(a){a instanceof Error&&(a.stack?a=a.message&&a.stack.indexOf(a.message)===-1?\"Error: \"+a.message+\"\\n\"+a.stack:a.stack:a.sourceURL&&(a=a.message+\"\\n\"+a.sourceURL+\":\"+a.line));return a}function e(a){var b=\r\nc.console||{},e=b[a]||b.log||q;return e.apply?function(){var a=[];n(arguments,function(b){a.push(d(b))});return e.apply(b,a)}:function(a,b){e(a,b)}}return{log:e(\"log\"),warn:e(\"warn\"),info:e(\"info\"),error:e(\"error\"),debug:function(){var c=e(\"debug\");return function(){b&&c.apply(a,arguments)}}()}}]}function Pc(b,a){function c(a){return a.indexOf(r)!=-1}function d(a){a=a||1;return o+a<b.length?b.charAt(o+a):!1}function e(a){return\"0\"<=a&&a<=\"9\"}function g(a){return a==\" \"||a==\"\\r\"||a==\"\\t\"||a==\"\\n\"||\r\na==\"\\u000b\"||a==\"\\u00a0\"}function i(a){return\"a\"<=a&&a<=\"z\"||\"A\"<=a&&a<=\"Z\"||\"_\"==a||a==\"$\"}function f(a){return a==\"-\"||a==\"+\"||e(a)}function h(a,c,d){d=d||o;throw Error(\"Lexer Error: \"+a+\" at column\"+(B(c)?\"s \"+c+\"-\"+o+\" [\"+b.substring(c,d)+\"]\":\" \"+d)+\" in expression [\"+b+\"].\");}function j(){for(var a=\"\",c=o;o<b.length;){var j=I(b.charAt(o));if(j==\".\"||e(j))a+=j;else{var g=d();if(j==\"e\"&&f(g))a+=j;else if(f(j)&&g&&e(g)&&a.charAt(a.length-1)==\"e\")a+=j;else if(f(j)&&(!g||!e(g))&&a.charAt(a.length-\r\n1)==\"e\")h(\"Invalid exponent\");else break}o++}a*=1;l.push({index:c,text:a,json:!0,fn:function(){return a}})}function m(){for(var c=\"\",d=o,f,j,h,k;o<b.length;){k=b.charAt(o);if(k==\".\"||i(k)||e(k))k==\".\"&&(f=o),c+=k;else break;o++}if(f)for(j=o;j<b.length;){k=b.charAt(j);if(k==\"(\"){h=c.substr(f-d+1);c=c.substr(0,f-d);o=j;break}if(g(k))j++;else break}d={index:d,text:c};if(Da.hasOwnProperty(c))d.fn=d.json=Da[c];else{var m=Tb(c,a);d.fn=t(function(a,b){return m(a,b)},{assign:function(a,b){return Ub(a,c,b)}})}l.push(d);\r\nh&&(l.push({index:f,text:\".\",json:!1}),l.push({index:f+1,text:h,json:!1}))}function k(a){var c=o;o++;for(var d=\"\",e=a,f=!1;o<b.length;){var j=b.charAt(o);e+=j;if(f)j==\"u\"?(j=b.substring(o+1,o+5),j.match(/[\\da-f]{4}/i)||h(\"Invalid unicode escape [\\\\u\"+j+\"]\"),o+=4,d+=String.fromCharCode(parseInt(j,16))):(f=Qc[j],d+=f?f:j),f=!1;else if(j==\"\\\\\")f=!0;else if(j==a){o++;l.push({index:c,text:e,string:d,json:!0,fn:function(){return d}});return}else d+=j;o++}h(\"Unterminated quote\",c)}for(var l=[],u,o=0,z=[],\r\nr,y=\":\";o<b.length;){r=b.charAt(o);if(c(\"\\\"'\"))k(r);else if(e(r)||c(\".\")&&e(d()))j();else if(i(r)){if(m(),\"{,\".indexOf(y)!=-1&&z[0]==\"{\"&&(u=l[l.length-1]))u.json=u.text.indexOf(\".\")==-1}else if(c(\"(){}[].,;:?\"))l.push({index:o,text:r,json:\":[,\".indexOf(y)!=-1&&c(\"{[\")||c(\"}]:,\")}),c(\"{[\")&&z.unshift(r),c(\"}]\")&&z.shift(),o++;else if(g(r)){o++;continue}else{var x=r+d(),n=x+d(2),v=Da[r],A=Da[x],G=Da[n];G?(l.push({index:o,text:n,fn:G}),o+=3):A?(l.push({index:o,text:x,fn:A}),o+=2):v?(l.push({index:o,\r\ntext:r,fn:v,json:\"[,:\".indexOf(y)!=-1&&c(\"+-\")}),o+=1):h(\"Unexpected next character \",o,o+1)}y=r}return l}function Rc(b,a,c,d){function e(a,c){throw Error(\"Syntax Error: Token '\"+c.text+\"' \"+a+\" at column \"+(c.index+1)+\" of the expression [\"+b+\"] starting at [\"+b.substring(c.index)+\"].\");}function g(){if(O.length===0)throw Error(\"Unexpected end of expression: \"+b);return O[0]}function i(a,b,c,d){if(O.length>0){var e=O[0],f=e.text;if(f==a||f==b||f==c||f==d||!a&&!b&&!c&&!d)return e}return!1}function f(b,\r\nc,d,f){return(b=i(b,c,d,f))?(a&&!b.json&&e(\"is not valid json\",b),O.shift(),b):!1}function h(a){f(a)||e(\"is unexpected, expecting [\"+a+\"]\",i())}function j(a,b){return t(function(c,d){return a(c,d,b)},{constant:b.constant})}function m(a,b,c){return t(function(d,e){return a(d,e)?b(d,e):c(d,e)},{constant:a.constant&&b.constant&&c.constant})}function k(a,b,c){return t(function(d,e){return b(d,e,a,c)},{constant:a.constant&&c.constant})}function l(){for(var a=[];;)if(O.length>0&&!i(\"}\",\")\",\";\",\"]\")&&a.push(w()),\r\n!f(\";\"))return a.length==1?a[0]:function(b,c){for(var d,e=0;e<a.length;e++){var f=a[e];f&&(d=f(b,c))}return d}}function u(){for(var a=f(),b=c(a.text),d=[];;)if(a=f(\":\"))d.push(P());else{var e=function(a,c,e){for(var e=[e],f=0;f<d.length;f++)e.push(d[f](a,c));return b.apply(a,e)};return function(){return e}}}function o(){var a=z(),b,c;if(f(\"?\"))if(b=o(),c=f(\":\"))return m(a,b,o());else e(\"expected :\",c);else return a}function z(){for(var a=r(),b;;)if(b=f(\"||\"))a=k(a,b.fn,r());else return a}function r(){var a=\r\ny(),b;if(b=f(\"&&\"))a=k(a,b.fn,r());return a}function y(){var a=x(),b;if(b=f(\"==\",\"!=\",\"===\",\"!==\"))a=k(a,b.fn,y());return a}function x(){var a;a=n();for(var b;b=f(\"+\",\"-\");)a=k(a,b.fn,n());if(b=f(\"<\",\">\",\"<=\",\">=\"))a=k(a,b.fn,x());return a}function n(){for(var a=v(),b;b=f(\"*\",\"/\",\"%\");)a=k(a,b.fn,v());return a}function v(){var a;return f(\"+\")?A():(a=f(\"-\"))?k($,a.fn,v()):(a=f(\"!\"))?j(a.fn,v()):A()}function A(){var a;if(f(\"(\"))a=w(),h(\")\");else if(f(\"[\"))a=G();else if(f(\"{\"))a=D();else{var b=f();(a=\r\nb.fn)||e(\"not a primary expression\",b);if(b.json)a.constant=a.literal=!0}for(var c;b=f(\"(\",\"[\",\".\");)b.text===\"(\"?(a=s(a,c),c=null):b.text===\"[\"?(c=a,a=ma(a)):b.text===\".\"?(c=a,a=ja(a)):e(\"IMPOSSIBLE\");return a}function G(){var a=[],b=!0;if(g().text!=\"]\"){do{var c=P();a.push(c);c.constant||(b=!1)}while(f(\",\"))}h(\"]\");return t(function(b,c){for(var d=[],e=0;e<a.length;e++)d.push(a[e](b,c));return d},{literal:!0,constant:b})}function D(){var a=[],b=!0;if(g().text!=\"}\"){do{var c=f(),c=c.string||c.text;\r\nh(\":\");var d=P();a.push({key:c,value:d});d.constant||(b=!1)}while(f(\",\"))}h(\"}\");return t(function(b,c){for(var d={},e=0;e<a.length;e++){var f=a[e];d[f.key]=f.value(b,c)}return d},{literal:!0,constant:b})}var $=S(0),K,O=Pc(b,d),P=function(){var a=o(),c,d;return(d=f(\"=\"))?(a.assign||e(\"implies assignment but [\"+b.substring(0,d.index)+\"] can not be assigned to\",d),c=o(),function(b,d){return a.assign(b,c(b,d),d)}):a},s=function(a,b){var c=[];if(g().text!=\")\"){do c.push(P());while(f(\",\"))}h(\")\");return function(d,\r\ne){for(var f=[],j=b?b(d,e):d,g=0;g<c.length;g++)f.push(c[g](d,e));g=a(d,e,j)||q;return g.apply?g.apply(j,f):g(f[0],f[1],f[2],f[3],f[4])}},ja=function(a){var b=f().text,c=Tb(b,d);return t(function(b,d,e){return c(e||a(b,d),d)},{assign:function(c,d,e){return Ub(a(c,e),b,d)}})},ma=function(a){var b=P();h(\"]\");return t(function(c,d){var e=a(c,d),f=b(c,d),j;if(!e)return p;if((e=e[f])&&e.then){j=e;if(!(\"$$v\"in e))j.$$v=p,j.then(function(a){j.$$v=a});e=e.$$v}return e},{assign:function(c,d,e){return a(c,\r\ne)[b(c,e)]=d}})},w=function(){for(var a=P(),b;;)if(b=f(\"|\"))a=k(a,b.fn,u());else return a};a?(P=z,s=ja=ma=w=function(){e(\"is not valid json\",{text:b,index:0})},K=A()):K=l();O.length!==0&&e(\"is an unexpected token\",O[0]);K.literal=!!K.literal;K.constant=!!K.constant;return K}function Ub(b,a,c){for(var a=a.split(\".\"),d=0;a.length>1;d++){var e=a.shift(),g=b[e];g||(g={},b[e]=g);b=g}return b[a.shift()]=c}function ib(b,a,c){if(!a)return b;for(var a=a.split(\".\"),d,e=b,g=a.length,i=0;i<g;i++)d=a[i],b&&(b=\r\n(e=b)[d]);return!c&&H(b)?$a(e,b):b}function Vb(b,a,c,d,e){return function(g,i){var f=i&&i.hasOwnProperty(b)?i:g,h;if(f===null||f===p)return f;if((f=f[b])&&f.then){if(!(\"$$v\"in f))h=f,h.$$v=p,h.then(function(a){h.$$v=a});f=f.$$v}if(!a||f===null||f===p)return f;if((f=f[a])&&f.then){if(!(\"$$v\"in f))h=f,h.$$v=p,h.then(function(a){h.$$v=a});f=f.$$v}if(!c||f===null||f===p)return f;if((f=f[c])&&f.then){if(!(\"$$v\"in f))h=f,h.$$v=p,h.then(function(a){h.$$v=a});f=f.$$v}if(!d||f===null||f===p)return f;if((f=\r\nf[d])&&f.then){if(!(\"$$v\"in f))h=f,h.$$v=p,h.then(function(a){h.$$v=a});f=f.$$v}if(!e||f===null||f===p)return f;if((f=f[e])&&f.then){if(!(\"$$v\"in f))h=f,h.$$v=p,h.then(function(a){h.$$v=a});f=f.$$v}return f}}function Tb(b,a){if(mb.hasOwnProperty(b))return mb[b];var c=b.split(\".\"),d=c.length,e;if(a)e=d<6?Vb(c[0],c[1],c[2],c[3],c[4]):function(a,b){var e=0,j;do j=Vb(c[e++],c[e++],c[e++],c[e++],c[e++])(a,b),b=p,a=j;while(e<d);return j};else{var g=\"var l, fn, p;\\n\";n(c,function(a,b){g+=\"if(s === null || s === undefined) return s;\\nl=s;\\ns=\"+\r\n(b?\"s\":'((k&&k.hasOwnProperty(\"'+a+'\"))?k:s)')+'[\"'+a+'\"];\\nif (s && s.then) {\\n if (!(\"$$v\" in s)) {\\n p=s;\\n p.$$v = undefined;\\n p.then(function(v) {p.$$v=v;});\\n}\\n s=s.$$v\\n}\\n'});g+=\"return s;\";e=Function(\"s\",\"k\",g);e.toString=function(){return g}}return mb[b]=e}function Sc(){var b={};this.$get=[\"$filter\",\"$sniffer\",function(a,c){return function(d){switch(typeof d){case \"string\":return b.hasOwnProperty(d)?b[d]:b[d]=Rc(d,!1,a,c.csp);case \"function\":return d;default:return q}}}]}function Tc(){this.$get=\r\n[\"$rootScope\",\"$exceptionHandler\",function(b,a){return Uc(function(a){b.$evalAsync(a)},a)}]}function Uc(b,a){function c(a){return a}function d(a){return i(a)}var e=function(){var f=[],h,j;return j={resolve:function(a){if(f){var c=f;f=p;h=g(a);c.length&&b(function(){for(var a,b=0,d=c.length;b<d;b++)a=c[b],h.then(a[0],a[1])})}},reject:function(a){j.resolve(i(a))},promise:{then:function(b,j){var g=e(),i=function(d){try{g.resolve((b||c)(d))}catch(e){a(e),g.reject(e)}},o=function(b){try{g.resolve((j||\r\nd)(b))}catch(c){a(c),g.reject(c)}};f?f.push([i,o]):h.then(i,o);return g.promise},always:function(a){function b(a,c){var d=e();c?d.resolve(a):d.reject(a);return d.promise}function d(e,f){var j=null;try{j=(a||c)()}catch(g){return b(g,!1)}return j&&j.then?j.then(function(){return b(e,f)},function(a){return b(a,!1)}):b(e,f)}return this.then(function(a){return d(a,!0)},function(a){return d(a,!1)})}}}},g=function(a){return a&&a.then?a:{then:function(c){var d=e();b(function(){d.resolve(c(a))});return d.promise}}},\r\ni=function(a){return{then:function(c,j){var g=e();b(function(){g.resolve((j||d)(a))});return g.promise}}};return{defer:e,reject:i,when:function(f,h,j){var m=e(),k,l=function(b){try{return(h||c)(b)}catch(d){return a(d),i(d)}},u=function(b){try{return(j||d)(b)}catch(c){return a(c),i(c)}};b(function(){g(f).then(function(a){k||(k=!0,m.resolve(g(a).then(l,u)))},function(a){k||(k=!0,m.resolve(u(a)))})});return m.promise},all:function(a){var b=e(),c=0,d=F(a)?[]:{};n(a,function(a,e){c++;g(a).then(function(a){d.hasOwnProperty(e)||\r\n(d[e]=a,--c||b.resolve(d))},function(a){d.hasOwnProperty(e)||b.reject(a)})});c===0&&b.resolve(d);return b.promise}}}function Vc(){var b={};this.when=function(a,c){b[a]=t({reloadOnSearch:!0,caseInsensitiveMatch:!1},c);if(a){var d=a[a.length-1]==\"/\"?a.substr(0,a.length-1):a+\"/\";b[d]={redirectTo:a}}return this};this.otherwise=function(a){this.when(null,a);return this};this.$get=[\"$rootScope\",\"$location\",\"$routeParams\",\"$q\",\"$injector\",\"$http\",\"$templateCache\",function(a,c,d,e,g,i,f){function h(a,b,c){for(var b=\r\n\"^\"+b.replace(/[-\\/\\\\^$:*+?.()|[\\]{}]/g,\"\\\\$&\")+\"$\",d=\"\",e=[],f={},j=/\\\\([:*])(\\w+)/g,g,i=0;(g=j.exec(b))!==null;){d+=b.slice(i,g.index);switch(g[1]){case \":\":d+=\"([^\\\\/]*)\";break;case \"*\":d+=\"(.*)\"}e.push(g[2]);i=j.lastIndex}d+=b.substr(i);var h=a.match(RegExp(d,c.caseInsensitiveMatch?\"i\":\"\"));h&&n(e,function(a,b){f[a]=h[b+1]});return h?f:null}function j(){var b=m(),j=u.current;if(b&&j&&b.$$route===j.$$route&&ia(b.pathParams,j.pathParams)&&!b.reloadOnSearch&&!l)j.params=b.params,V(j.params,d),a.$broadcast(\"$routeUpdate\",\r\nj);else if(b||j)l=!1,a.$broadcast(\"$routeChangeStart\",b,j),(u.current=b)&&b.redirectTo&&(E(b.redirectTo)?c.path(k(b.redirectTo,b.params)).search(b.params).replace():c.url(b.redirectTo(b.pathParams,c.path(),c.search())).replace()),e.when(b).then(function(){if(b){var a=t({},b.resolve),c;n(a,function(b,c){a[c]=E(b)?g.get(b):g.invoke(b)});if(B(c=b.template))H(c)&&(c=c(b.params));else if(B(c=b.templateUrl))if(H(c)&&(c=c(b.params)),B(c))b.loadedTemplateUrl=c,c=i.get(c,{cache:f}).then(function(a){return a.data});\r\nB(c)&&(a.$template=c);return e.all(a)}}).then(function(c){if(b==u.current){if(b)b.locals=c,V(b.params,d);a.$broadcast(\"$routeChangeSuccess\",b,j)}},function(c){b==u.current&&a.$broadcast(\"$routeChangeError\",b,j,c)})}function m(){var a,d;n(b,function(b,e){if(!d&&(a=h(c.path(),e,b)))d=tb(b,{params:t({},c.search(),a),pathParams:a}),d.$$route=b});return d||b[null]&&tb(b[null],{params:{},pathParams:{}})}function k(a,b){var c=[];n((a||\"\").split(\":\"),function(a,d){if(d==0)c.push(a);else{var e=a.match(/(\\w+)(.*)/),\r\nf=e[1];c.push(b[f]);c.push(e[2]||\"\");delete b[f]}});return c.join(\"\")}var l=!1,u={routes:b,reload:function(){l=!0;a.$evalAsync(j)}};a.$on(\"$locationChangeSuccess\",j);return u}]}function Wc(){this.$get=S({})}function Xc(){var b=10;this.digestTtl=function(a){arguments.length&&(b=a);return b};this.$get=[\"$injector\",\"$exceptionHandler\",\"$parse\",function(a,c,d){function e(){this.$id=Fa();this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;\r\nthis[\"this\"]=this.$root=this;this.$$destroyed=!1;this.$$asyncQueue=[];this.$$listeners={};this.$$isolateBindings={}}function g(a){if(h.$$phase)throw Error(h.$$phase+\" already in progress\");h.$$phase=a}function i(a,b){var c=d(a);xa(c,b);return c}function f(){}e.prototype={$new:function(a){if(H(a))throw Error(\"API-CHANGE: Use $controller to instantiate controllers.\");a?(a=new e,a.$root=this.$root):(a=function(){},a.prototype=this,a=new a,a.$id=Fa());a[\"this\"]=a;a.$$listeners={};a.$parent=this;a.$$watchers=\r\na.$$nextSibling=a.$$childHead=a.$$childTail=null;a.$$prevSibling=this.$$childTail;this.$$childHead?this.$$childTail=this.$$childTail.$$nextSibling=a:this.$$childHead=this.$$childTail=a;return a},$watch:function(a,b,c){var d=i(a,\"watch\"),e=this.$$watchers,g={fn:b,last:f,get:d,exp:a,eq:!!c};if(!H(b)){var h=i(b||q,\"listener\");g.fn=function(a,b,c){h(c)}}if(typeof a==\"string\"&&d.constant){var r=g.fn;g.fn=function(a,b,c){r.call(this,a,b,c);ta(e,g)}}if(!e)e=this.$$watchers=[];e.unshift(g);return function(){ta(e,\r\ng)}},$watchCollection:function(a,b){var c=this,e,f,g=0,i=d(a),h=[],n={},x=0;return this.$watch(function(){f=i(c);var a,b;if(L(f))if(Xa(f)){if(e!==h)e=h,x=e.length=0,g++;a=f.length;if(x!==a)g++,e.length=x=a;for(b=0;b<a;b++)e[b]!==f[b]&&(g++,e[b]=f[b])}else{e!==n&&(e=n={},x=0,g++);a=0;for(b in f)f.hasOwnProperty(b)&&(a++,e.hasOwnProperty(b)?e[b]!==f[b]&&(g++,e[b]=f[b]):(x++,e[b]=f[b],g++));if(x>a)for(b in g++,e)e.hasOwnProperty(b)&&!f.hasOwnProperty(b)&&(x--,delete e[b])}else e!==f&&(e=f,g++);return g},\r\nfunction(){b(f,e,c)})},$digest:function(){var a,d,e,i,u=this.$$asyncQueue,o,z,r=b,n,x=[],p,v;g(\"$digest\");do{z=!1;for(n=this;u.length;)try{n.$eval(u.shift())}catch(A){c(A)}do{if(i=n.$$watchers)for(o=i.length;o--;)try{if(a=i[o],(d=a.get(n))!==(e=a.last)&&!(a.eq?ia(d,e):typeof d==\"number\"&&typeof e==\"number\"&&isNaN(d)&&isNaN(e)))z=!0,a.last=a.eq?V(d):d,a.fn(d,e===f?d:e,n),r<5&&(p=4-r,x[p]||(x[p]=[]),v=H(a.exp)?\"fn: \"+(a.exp.name||a.exp.toString()):a.exp,v+=\"; newVal: \"+ha(d)+\"; oldVal: \"+ha(e),x[p].push(v))}catch(G){c(G)}if(!(i=\r\nn.$$childHead||n!==this&&n.$$nextSibling))for(;n!==this&&!(i=n.$$nextSibling);)n=n.$parent}while(n=i);if(z&&!r--)throw h.$$phase=null,Error(b+\" $digest() iterations reached. Aborting!\\nWatchers fired in the last 5 iterations: \"+ha(x));}while(z||u.length);h.$$phase=null},$destroy:function(){if(!(h==this||this.$$destroyed)){var a=this.$parent;this.$broadcast(\"$destroy\");this.$$destroyed=!0;if(a.$$childHead==this)a.$$childHead=this.$$nextSibling;if(a.$$childTail==this)a.$$childTail=this.$$prevSibling;\r\nif(this.$$prevSibling)this.$$prevSibling.$$nextSibling=this.$$nextSibling;if(this.$$nextSibling)this.$$nextSibling.$$prevSibling=this.$$prevSibling;this.$parent=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null}},$eval:function(a,b){return d(a)(this,b)},$evalAsync:function(a){this.$$asyncQueue.push(a)},$apply:function(a){try{return g(\"$apply\"),this.$eval(a)}catch(b){c(b)}finally{h.$$phase=null;try{h.$digest()}catch(d){throw c(d),d;}}},$on:function(a,b){var c=this.$$listeners[a];\r\nc||(this.$$listeners[a]=c=[]);c.push(b);return function(){c[Ga(c,b)]=null}},$emit:function(a,b){var d=[],e,f=this,g=!1,i={name:a,targetScope:f,stopPropagation:function(){g=!0},preventDefault:function(){i.defaultPrevented=!0},defaultPrevented:!1},h=[i].concat(ka.call(arguments,1)),n,x;do{e=f.$$listeners[a]||d;i.currentScope=f;n=0;for(x=e.length;n<x;n++)if(e[n])try{if(e[n].apply(null,h),g)return i}catch(p){c(p)}else e.splice(n,1),n--,x--;f=f.$parent}while(f);return i},$broadcast:function(a,b){var d=\r\nthis,e=this,f={name:a,targetScope:this,preventDefault:function(){f.defaultPrevented=!0},defaultPrevented:!1},g=[f].concat(ka.call(arguments,1)),i,h;do{d=e;f.currentScope=d;e=d.$$listeners[a]||[];i=0;for(h=e.length;i<h;i++)if(e[i])try{e[i].apply(null,g)}catch(n){c(n)}else e.splice(i,1),i--,h--;if(!(e=d.$$childHead||d!==this&&d.$$nextSibling))for(;d!==this&&!(e=d.$$nextSibling);)d=d.$parent}while(d=e);return f}};var h=new e;return h}]}function Yc(){this.$get=[\"$window\",\"$document\",function(b,a){var c=\r\n{},d=N((/android (\\d+)/.exec(I((b.navigator||{}).userAgent))||[])[1]),e=a[0]||{},g,i=/^(Moz|webkit|O|ms)(?=[A-Z])/,f=e.body&&e.body.style,h=!1,j=!1;if(f){for(var m in f)if(h=i.exec(m)){g=h[0];g=g.substr(0,1).toUpperCase()+g.substr(1);break}h=!!(\"transition\"in f||g+\"Transition\"in f);j=!!(\"animation\"in f||g+\"Animation\"in f)}return{history:!(!b.history||!b.history.pushState||d<4),hashchange:\"onhashchange\"in b&&(!e.documentMode||e.documentMode>7),hasEvent:function(a){if(a==\"input\"&&Z==9)return!1;if(C(c[a])){var b=\r\ne.createElement(\"div\");c[a]=\"on\"+a in b}return c[a]},csp:e.securityPolicy?e.securityPolicy.isActive:!1,vendorPrefix:g,transitions:h,animations:j}}]}function Zc(){this.$get=S(M)}function Wb(b){var a={},c,d,e;if(!b)return a;n(b.split(\"\\n\"),function(b){e=b.indexOf(\":\");c=I(U(b.substr(0,e)));d=U(b.substr(e+1));c&&(a[c]?a[c]+=\", \"+d:a[c]=d)});return a}function $c(b,a){var c=ad.exec(b);if(c==null)return!0;var d={protocol:c[2],host:c[4],port:N(c[6])||Oa[c[2]]||null,relativeProtocol:c[2]===p||c[2]===\"\"},\r\nc=jb.exec(a),c={protocol:c[1],host:c[3],port:N(c[5])||Oa[c[1]]||null};return(d.protocol==c.protocol||d.relativeProtocol)&&d.host==c.host&&(d.port==c.port||d.relativeProtocol&&c.port==Oa[c.protocol])}function Xb(b){var a=L(b)?b:p;return function(c){a||(a=Wb(b));return c?a[I(c)]||null:a}}function Yb(b,a,c){if(H(c))return c(b,a);n(c,function(c){b=c(b,a)});return b}function bd(){var b=/^\\s*(\\[|\\{[^\\{])/,a=/[\\}\\]]\\s*$/,c=/^\\)\\]\\}',?\\n/,d={\"Content-Type\":\"application/json;charset=utf-8\"},e=this.defaults=\r\n{transformResponse:[function(d){E(d)&&(d=d.replace(c,\"\"),b.test(d)&&a.test(d)&&(d=ub(d,!0)));return d}],transformRequest:[function(a){return L(a)&&Ea.apply(a)!==\"[object File]\"?ha(a):a}],headers:{common:{Accept:\"application/json, text/plain, */*\"},post:d,put:d,patch:d},xsrfCookieName:\"XSRF-TOKEN\",xsrfHeaderName:\"X-XSRF-TOKEN\"},g=this.interceptors=[],i=this.responseInterceptors=[];this.$get=[\"$httpBackend\",\"$browser\",\"$cacheFactory\",\"$rootScope\",\"$q\",\"$injector\",function(a,b,c,d,k,l){function u(a){function c(a){var b=\r\nt({},a,{data:Yb(a.data,a.headers,d.transformResponse)});return 200<=a.status&&a.status<300?b:k.reject(b)}var d={transformRequest:e.transformRequest,transformResponse:e.transformResponse},f={};t(d,a);d.headers=f;d.method=oa(d.method);t(f,e.headers.common,e.headers[I(d.method)],a.headers);(a=$c(d.url,b.url())?b.cookies()[d.xsrfCookieName||e.xsrfCookieName]:p)&&(f[d.xsrfHeaderName||e.xsrfHeaderName]=a);var g=[function(a){var b=Yb(a.data,Xb(f),a.transformRequest);C(a.data)&&delete f[\"Content-Type\"];if(C(a.withCredentials)&&\r\n!C(e.withCredentials))a.withCredentials=e.withCredentials;return o(a,b,f).then(c,c)},p],j=k.when(d);for(n(y,function(a){(a.request||a.requestError)&&g.unshift(a.request,a.requestError);(a.response||a.responseError)&&g.push(a.response,a.responseError)});g.length;)var a=g.shift(),i=g.shift(),j=j.then(a,i);j.success=function(a){j.then(function(b){a(b.data,b.status,b.headers,d)});return j};j.error=function(a){j.then(null,function(b){a(b.data,b.status,b.headers,d)});return j};return j}function o(b,c,g){function j(a,\r\nb,c){n&&(200<=a&&a<300?n.put(s,[a,b,Wb(c)]):n.remove(s));i(b,a,c);d.$$phase||d.$apply()}function i(a,c,d){c=Math.max(c,0);(200<=c&&c<300?l.resolve:l.reject)({data:a,status:c,headers:Xb(d),config:b})}function h(){var a=Ga(u.pendingRequests,b);a!==-1&&u.pendingRequests.splice(a,1)}var l=k.defer(),o=l.promise,n,p,s=z(b.url,b.params);u.pendingRequests.push(b);o.then(h,h);if((b.cache||e.cache)&&b.cache!==!1&&b.method==\"GET\")n=L(b.cache)?b.cache:L(e.cache)?e.cache:r;if(n)if(p=n.get(s))if(p.then)return p.then(h,\r\nh),p;else F(p)?i(p[1],p[0],V(p[2])):i(p,200,{});else n.put(s,o);p||a(b.method,s,c,j,g,b.timeout,b.withCredentials,b.responseType);return o}function z(a,b){if(!b)return a;var c=[];nc(b,function(a,b){a==null||a==p||(F(a)||(a=[a]),n(a,function(a){L(a)&&(a=ha(a));c.push(wa(b)+\"=\"+wa(a))}))});return a+(a.indexOf(\"?\")==-1?\"?\":\"&\")+c.join(\"&\")}var r=c(\"$http\"),y=[];n(g,function(a){y.unshift(E(a)?l.get(a):l.invoke(a))});n(i,function(a,b){var c=E(a)?l.get(a):l.invoke(a);y.splice(b,0,{response:function(a){return c(k.when(a))},\r\nresponseError:function(a){return c(k.reject(a))}})});u.pendingRequests=[];(function(a){n(arguments,function(a){u[a]=function(b,c){return u(t(c||{},{method:a,url:b}))}})})(\"get\",\"delete\",\"head\",\"jsonp\");(function(a){n(arguments,function(a){u[a]=function(b,c,d){return u(t(d||{},{method:a,url:b,data:c}))}})})(\"post\",\"put\");u.defaults=e;return u}]}function cd(){this.$get=[\"$browser\",\"$window\",\"$document\",function(b,a,c){return dd(b,ed,b.defer,a.angular.callbacks,c[0],a.location.protocol.replace(\":\",\"\"))}]}\r\nfunction dd(b,a,c,d,e,g){function i(a,b){var c=e.createElement(\"script\"),d=function(){e.body.removeChild(c);b&&b()};c.type=\"text/javascript\";c.src=a;Z?c.onreadystatechange=function(){/loaded|complete/.test(c.readyState)&&d()}:c.onload=c.onerror=d;e.body.appendChild(c);return d}return function(e,h,j,m,k,l,u,o){function z(){p=-1;t&&t();v&&v.abort()}function r(a,d,e,f){var j=(h.match(jb)||[\"\",g])[1];A&&c.cancel(A);t=v=null;d=j==\"file\"?e?200:404:d;a(d==1223?204:d,e,f);b.$$completeOutstandingRequest(q)}\r\nvar p;b.$$incOutstandingRequestCount();h=h||b.url();if(I(e)==\"jsonp\"){var x=\"_\"+(d.counter++).toString(36);d[x]=function(a){d[x].data=a};var t=i(h.replace(\"JSON_CALLBACK\",\"angular.callbacks.\"+x),function(){d[x].data?r(m,200,d[x].data):r(m,p||-2);delete d[x]})}else{var v=new a;v.open(e,h,!0);n(k,function(a,b){a&&v.setRequestHeader(b,a)});v.onreadystatechange=function(){if(v.readyState==4){var a=v.getAllResponseHeaders(),b=[\"Cache-Control\",\"Content-Language\",\"Content-Type\",\"Expires\",\"Last-Modified\",\r\n\"Pragma\"];a||(a=\"\",n(b,function(b){var c=v.getResponseHeader(b);c&&(a+=b+\": \"+c+\"\\n\")}));r(m,p||v.status,v.responseType?v.response:v.responseText,a)}};if(u)v.withCredentials=!0;if(o)v.responseType=o;v.send(j||\"\")}if(l>0)var A=c(z,l);else l&&l.then&&l.then(z)}}function fd(){this.$get=function(){return{id:\"en-us\",NUMBER_FORMATS:{DECIMAL_SEP:\".\",GROUP_SEP:\",\",PATTERNS:[{minInt:1,minFrac:0,maxFrac:3,posPre:\"\",posSuf:\"\",negPre:\"-\",negSuf:\"\",gSize:3,lgSize:3},{minInt:1,minFrac:2,maxFrac:2,posPre:\"\\u00a4\",\r\nposSuf:\"\",negPre:\"(\\u00a4\",negSuf:\")\",gSize:3,lgSize:3}],CURRENCY_SYM:\"$\"},DATETIME_FORMATS:{MONTH:\"January,February,March,April,May,June,July,August,September,October,November,December\".split(\",\"),SHORTMONTH:\"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec\".split(\",\"),DAY:\"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday\".split(\",\"),SHORTDAY:\"Sun,Mon,Tue,Wed,Thu,Fri,Sat\".split(\",\"),AMPMS:[\"AM\",\"PM\"],medium:\"MMM d, y h:mm:ss a\",\"short\":\"M/d/yy h:mm a\",fullDate:\"EEEE, MMMM d, y\",longDate:\"MMMM d, y\",\r\nmediumDate:\"MMM d, y\",shortDate:\"M/d/yy\",mediumTime:\"h:mm:ss a\",shortTime:\"h:mm a\"},pluralCat:function(b){return b===1?\"one\":\"other\"}}}}function gd(){this.$get=[\"$rootScope\",\"$browser\",\"$q\",\"$exceptionHandler\",function(b,a,c,d){function e(e,f,h){var j=c.defer(),m=j.promise,k=B(h)&&!h,f=a.defer(function(){try{j.resolve(e())}catch(a){j.reject(a),d(a)}k||b.$apply()},f),h=function(){delete g[m.$$timeoutId]};m.$$timeoutId=f;g[f]=j;m.then(h,h);return m}var g={};e.cancel=function(b){return b&&b.$$timeoutId in\r\ng?(g[b.$$timeoutId].reject(\"canceled\"),a.defer.cancel(b.$$timeoutId)):!1};return e}]}function Zb(b){function a(a,e){return b.factory(a+c,e)}var c=\"Filter\";this.register=a;this.$get=[\"$injector\",function(a){return function(b){return a.get(b+c)}}];a(\"currency\",$b);a(\"date\",ac);a(\"filter\",hd);a(\"json\",id);a(\"limitTo\",jd);a(\"lowercase\",kd);a(\"number\",bc);a(\"orderBy\",cc);a(\"uppercase\",ld)}function hd(){return function(b,a,c){if(!F(b))return b;var d=[];d.check=function(a){for(var b=0;b<d.length;b++)if(!d[b](a))return!1;\r\nreturn!0};switch(typeof c){case \"function\":break;case \"boolean\":if(c==!0){c=function(a,b){return Ha.equals(a,b)};break}default:c=function(a,b){b=(\"\"+b).toLowerCase();return(\"\"+a).toLowerCase().indexOf(b)>-1}}var e=function(a,b){if(typeof b==\"string\"&&b.charAt(0)===\"!\")return!e(a,b.substr(1));switch(typeof a){case \"boolean\":case \"number\":case \"string\":return c(a,b);case \"object\":switch(typeof b){case \"object\":return c(a,b);default:for(var d in a)if(d.charAt(0)!==\"$\"&&e(a[d],b))return!0}return!1;case \"array\":for(d=\r\n0;d<a.length;d++)if(e(a[d],b))return!0;return!1;default:return!1}};switch(typeof a){case \"boolean\":case \"number\":case \"string\":a={$:a};case \"object\":for(var g in a)g==\"$\"?function(){if(a[g]){var b=g;d.push(function(c){return e(c,a[b])})}}():function(){if(a[g]){var b=g;d.push(function(c){return e(ib(c,b),a[b])})}}();break;case \"function\":d.push(a);break;default:return b}for(var i=[],f=0;f<b.length;f++){var h=b[f];d.check(h)&&i.push(h)}return i}}function $b(b){var a=b.NUMBER_FORMATS;return function(b,\r\nd){if(C(d))d=a.CURRENCY_SYM;return dc(b,a.PATTERNS[1],a.GROUP_SEP,a.DECIMAL_SEP,2).replace(/\\u00A4/g,d)}}function bc(b){var a=b.NUMBER_FORMATS;return function(b,d){return dc(b,a.PATTERNS[0],a.GROUP_SEP,a.DECIMAL_SEP,d)}}function dc(b,a,c,d,e){if(isNaN(b)||!isFinite(b))return\"\";var g=b<0,b=Math.abs(b),i=b+\"\",f=\"\",h=[],j=!1;if(i.indexOf(\"e\")!==-1){var m=i.match(/([\\d\\.]+)e(-?)(\\d+)/);m&&m[2]==\"-\"&&m[3]>e+1?i=\"0\":(f=i,j=!0)}if(!j){i=(i.split(ec)[1]||\"\").length;C(e)&&(e=Math.min(Math.max(a.minFrac,i),\r\na.maxFrac));var i=Math.pow(10,e),b=Math.round(b*i)/i,b=(\"\"+b).split(ec),i=b[0],b=b[1]||\"\",j=0,m=a.lgSize,k=a.gSize;if(i.length>=m+k)for(var j=i.length-m,l=0;l<j;l++)(j-l)%k===0&&l!==0&&(f+=c),f+=i.charAt(l);for(l=j;l<i.length;l++)(i.length-l)%m===0&&l!==0&&(f+=c),f+=i.charAt(l);for(;b.length<e;)b+=\"0\";e&&e!==\"0\"&&(f+=d+b.substr(0,e))}h.push(g?a.negPre:a.posPre);h.push(f);h.push(g?a.negSuf:a.posSuf);return h.join(\"\")}function nb(b,a,c){var d=\"\";b<0&&(d=\"-\",b=-b);for(b=\"\"+b;b.length<a;)b=\"0\"+b;c&&(b=\r\nb.substr(b.length-a));return d+b}function Q(b,a,c,d){c=c||0;return function(e){e=e[\"get\"+b]();if(c>0||e>-c)e+=c;e===0&&c==-12&&(e=12);return nb(e,a,d)}}function Qa(b,a){return function(c,d){var e=c[\"get\"+b](),g=oa(a?\"SHORT\"+b:b);return d[g][e]}}function ac(b){function a(a){var b;if(b=a.match(c)){var a=new Date(0),g=0,i=0,f=b[8]?a.setUTCFullYear:a.setFullYear,h=b[8]?a.setUTCHours:a.setHours;b[9]&&(g=N(b[9]+b[10]),i=N(b[9]+b[11]));f.call(a,N(b[1]),N(b[2])-1,N(b[3]));g=N(b[4]||0)-g;i=N(b[5]||0)-i;f=\r\nN(b[6]||0);b=Math.round(parseFloat(\"0.\"+(b[7]||0))*1E3);h.call(a,g,i,f,b)}return a}var c=/^(\\d{4})-?(\\d\\d)-?(\\d\\d)(?:T(\\d\\d)(?::?(\\d\\d)(?::?(\\d\\d)(?:\\.(\\d+))?)?)?(Z|([+-])(\\d\\d):?(\\d\\d))?)?$/;return function(c,e){var g=\"\",i=[],f,h,e=e||\"mediumDate\",e=b.DATETIME_FORMATS[e]||e;E(c)&&(c=md.test(c)?N(c):a(c));Ya(c)&&(c=new Date(c));if(!ra(c))return c;for(;e;)(h=nd.exec(e))?(i=i.concat(ka.call(h,1)),e=i.pop()):(i.push(e),e=null);n(i,function(a){f=od[a];g+=f?f(c,b.DATETIME_FORMATS):a.replace(/(^'|'$)/g,\r\n\"\").replace(/''/g,\"'\")});return g}}function id(){return function(b){return ha(b,!0)}}function jd(){return function(b,a){if(!F(b)&&!E(b))return b;a=N(a);if(E(b))return a?a>=0?b.slice(0,a):b.slice(a,b.length):\"\";var c=[],d,e;a>b.length?a=b.length:a<-b.length&&(a=-b.length);a>0?(d=0,e=a):(d=b.length+a,e=b.length);for(;d<e;d++)c.push(b[d]);return c}}function cc(b){return function(a,c,d){function e(a,b){return ua(b)?function(b,c){return a(c,b)}:a}if(!F(a))return a;if(!c)return a;for(var c=F(c)?c:[c],c=\r\nZa(c,function(a){var c=!1,d=a||qa;if(E(a)){if(a.charAt(0)==\"+\"||a.charAt(0)==\"-\")c=a.charAt(0)==\"-\",a=a.substring(1);d=b(a)}return e(function(a,b){var c;c=d(a);var e=d(b),f=typeof c,g=typeof e;f==g?(f==\"string\"&&(c=c.toLowerCase()),f==\"string\"&&(e=e.toLowerCase()),c=c===e?0:c<e?-1:1):c=f<g?-1:1;return c},c)}),g=[],i=0;i<a.length;i++)g.push(a[i]);return g.sort(e(function(a,b){for(var d=0;d<c.length;d++){var e=c[d](a,b);if(e!==0)return e}return 0},d))}}function aa(b){H(b)&&(b={link:b});b.restrict=b.restrict||\r\n\"AC\";return S(b)}function fc(b,a){function c(a,c){c=c?\"-\"+bb(c,\"-\"):\"\";b.removeClass((a?Ra:Sa)+c).addClass((a?Sa:Ra)+c)}var d=this,e=b.parent().controller(\"form\")||Ta,g=0,i=d.$error={},f=[];d.$name=a.name;d.$dirty=!1;d.$pristine=!0;d.$valid=!0;d.$invalid=!1;e.$addControl(d);b.addClass(pa);c(!0);d.$addControl=function(a){f.push(a);a.$name&&!d.hasOwnProperty(a.$name)&&(d[a.$name]=a)};d.$removeControl=function(a){a.$name&&d[a.$name]===a&&delete d[a.$name];n(i,function(b,c){d.$setValidity(c,!0,a)});ta(f,\r\na)};d.$setValidity=function(a,b,f){var k=i[a];if(b){if(k&&(ta(k,f),!k.length)){g--;if(!g)c(b),d.$valid=!0,d.$invalid=!1;i[a]=!1;c(!0,a);e.$setValidity(a,!0,d)}}else{g||c(b);if(k){if(Ga(k,f)!=-1)return}else i[a]=k=[],g++,c(!1,a),e.$setValidity(a,!1,d);k.push(f);d.$valid=!1;d.$invalid=!0}};d.$setDirty=function(){b.removeClass(pa).addClass(Ua);d.$dirty=!0;d.$pristine=!1;e.$setDirty()};d.$setPristine=function(){b.removeClass(Ua).addClass(pa);d.$dirty=!1;d.$pristine=!0;n(f,function(a){a.$setPristine()})}}\r\nfunction X(b){return C(b)||b===\"\"||b===null||b!==b}function Va(b,a,c,d,e,g){var i=function(){var e=a.val();if(ua(c.ngTrim||\"T\"))e=U(e);d.$viewValue!==e&&b.$apply(function(){d.$setViewValue(e)})};if(e.hasEvent(\"input\"))a.bind(\"input\",i);else{var f,h=function(){f||(f=g.defer(function(){i();f=null}))};a.bind(\"keydown\",function(a){a=a.keyCode;a===91||15<a&&a<19||37<=a&&a<=40||h()});a.bind(\"change\",i);e.hasEvent(\"paste\")&&a.bind(\"paste cut\",h)}d.$render=function(){a.val(X(d.$viewValue)?\"\":d.$viewValue)};\r\nvar j=c.ngPattern,m=function(a,b){return X(b)||a.test(b)?(d.$setValidity(\"pattern\",!0),b):(d.$setValidity(\"pattern\",!1),p)};j&&((e=j.match(/^\\/(.*)\\/([gim]*)$/))?(j=RegExp(e[1],e[2]),e=function(a){return m(j,a)}):e=function(a){var c=b.$eval(j);if(!c||!c.test)throw Error(\"Expected \"+j+\" to be a RegExp but was \"+c);return m(c,a)},d.$formatters.push(e),d.$parsers.push(e));if(c.ngMinlength){var k=N(c.ngMinlength),e=function(a){return!X(a)&&a.length<k?(d.$setValidity(\"minlength\",!1),p):(d.$setValidity(\"minlength\",\r\n!0),a)};d.$parsers.push(e);d.$formatters.push(e)}if(c.ngMaxlength){var l=N(c.ngMaxlength),e=function(a){return!X(a)&&a.length>l?(d.$setValidity(\"maxlength\",!1),p):(d.$setValidity(\"maxlength\",!0),a)};d.$parsers.push(e);d.$formatters.push(e)}}function ob(b,a){b=\"ngClass\"+b;return aa(function(c,d,e){function g(b){if(a===!0||c.$index%2===a)h&&!ia(b,h)&&i(h),f(b);h=V(b)}function i(a){L(a)&&!F(a)&&(a=Za(a,function(a,b){if(a)return b}));d.removeClass(F(a)?a.join(\" \"):a)}function f(a){L(a)&&!F(a)&&(a=Za(a,\r\nfunction(a,b){if(a)return b}));a&&d.addClass(F(a)?a.join(\" \"):a)}var h=p;c.$watch(e[b],g,!0);e.$observe(\"class\",function(){var a=c.$eval(e[b]);g(a,a)});b!==\"ngClass\"&&c.$watch(\"$index\",function(d,g){var h=d&1;h!==g&1&&(h===a?f(c.$eval(e[b])):i(c.$eval(e[b])))})})}var I=function(b){return E(b)?b.toLowerCase():b},oa=function(b){return E(b)?b.toUpperCase():b},Z=N((/msie (\\d+)/.exec(I(navigator.userAgent))||[])[1]),w,ga,ka=[].slice,Wa=[].push,Ea=Object.prototype.toString,mc=M.angular,Ha=M.angular||(M.angular=\r\n{}),Aa,hb,ba=[\"0\",\"0\",\"0\"];q.$inject=[];qa.$inject=[];hb=Z<9?function(b){b=b.nodeName?b:b[0];return b.scopeName&&b.scopeName!=\"HTML\"?oa(b.scopeName+\":\"+b.nodeName):b.nodeName}:function(b){return b.nodeName?b.nodeName:b[0].nodeName};var sc=/[A-Z]/g,pd={full:\"1.1.5\",major:1,minor:1,dot:5,codeName:\"triangle-squarification\"},Ka=R.cache={},Ja=R.expando=\"ng-\"+(new Date).getTime(),wc=1,gc=M.document.addEventListener?function(b,a,c){b.addEventListener(a,c,!1)}:function(b,a,c){b.attachEvent(\"on\"+a,c)},gb=\r\nM.document.removeEventListener?function(b,a,c){b.removeEventListener(a,c,!1)}:function(b,a,c){b.detachEvent(\"on\"+a,c)},uc=/([\\:\\-\\_]+(.))/g,vc=/^moz([A-Z])/,Ba=R.prototype={ready:function(b){function a(){c||(c=!0,b())}var c=!1;T.readyState===\"complete\"?setTimeout(a):(this.bind(\"DOMContentLoaded\",a),R(M).bind(\"load\",a))},toString:function(){var b=[];n(this,function(a){b.push(\"\"+a)});return\"[\"+b.join(\", \")+\"]\"},eq:function(b){return b>=0?w(this[b]):w(this[this.length+b])},length:0,push:Wa,sort:[].sort,\r\nsplice:[].splice},Na={};n(\"multiple,selected,checked,disabled,readOnly,required,open\".split(\",\"),function(b){Na[I(b)]=b});var Gb={};n(\"input,select,option,textarea,button,form,details\".split(\",\"),function(b){Gb[oa(b)]=!0});n({data:Bb,inheritedData:Ma,scope:function(b){return Ma(b,\"$scope\")},controller:Eb,injector:function(b){return Ma(b,\"$injector\")},removeAttr:function(b,a){b.removeAttribute(a)},hasClass:La,css:function(b,a,c){a=Ia(a);if(B(c))b.style[a]=c;else{var d;Z<=8&&(d=b.currentStyle&&b.currentStyle[a],\r\nd===\"\"&&(d=\"auto\"));d=d||b.style[a];Z<=8&&(d=d===\"\"?p:d);return d}},attr:function(b,a,c){var d=I(a);if(Na[d])if(B(c))c?(b[a]=!0,b.setAttribute(a,d)):(b[a]=!1,b.removeAttribute(d));else return b[a]||(b.attributes.getNamedItem(a)||q).specified?d:p;else if(B(c))b.setAttribute(a,c);else if(b.getAttribute)return b=b.getAttribute(a,2),b===null?p:b},prop:function(b,a,c){if(B(c))b[a]=c;else return b[a]},text:t(Z<9?function(b,a){if(b.nodeType==1){if(C(a))return b.innerText;b.innerText=a}else{if(C(a))return b.nodeValue;\r\nb.nodeValue=a}}:function(b,a){if(C(a))return b.textContent;b.textContent=a},{$dv:\"\"}),val:function(b,a){if(C(a))return b.value;b.value=a},html:function(b,a){if(C(a))return b.innerHTML;for(var c=0,d=b.childNodes;c<d.length;c++)ya(d[c]);b.innerHTML=a}},function(b,a){R.prototype[a]=function(a,d){var e,g;if((b.length==2&&b!==La&&b!==Eb?a:d)===p)if(L(a)){for(e=0;e<this.length;e++)if(b===Bb)b(this[e],a);else for(g in a)b(this[e],g,a[g]);return this}else{if(this.length)return b(this[0],a,d)}else{for(e=0;e<\r\nthis.length;e++)b(this[e],a,d);return this}return b.$dv}});n({removeData:zb,dealoc:ya,bind:function a(c,d,e){var g=ca(c,\"events\"),i=ca(c,\"handle\");g||ca(c,\"events\",g={});i||ca(c,\"handle\",i=xc(c,g));n(d.split(\" \"),function(d){var h=g[d];if(!h){if(d==\"mouseenter\"||d==\"mouseleave\"){var j=T.body.contains||T.body.compareDocumentPosition?function(a,c){var d=a.nodeType===9?a.documentElement:a,e=c&&c.parentNode;return a===e||!(!e||!(e.nodeType===1&&(d.contains?d.contains(e):a.compareDocumentPosition&&a.compareDocumentPosition(e)&\r\n16)))}:function(a,c){if(c)for(;c=c.parentNode;)if(c===a)return!0;return!1};g[d]=[];a(c,{mouseleave:\"mouseout\",mouseenter:\"mouseover\"}[d],function(a){var c=a.relatedTarget;(!c||c!==this&&!j(this,c))&&i(a,d)})}else gc(c,d,i),g[d]=[];h=g[d]}h.push(e)})},unbind:Ab,replaceWith:function(a,c){var d,e=a.parentNode;ya(a);n(new R(c),function(c){d?e.insertBefore(c,d.nextSibling):e.replaceChild(c,a);d=c})},children:function(a){var c=[];n(a.childNodes,function(a){a.nodeType===1&&c.push(a)});return c},contents:function(a){return a.childNodes||\r\n[]},append:function(a,c){n(new R(c),function(c){(a.nodeType===1||a.nodeType===11)&&a.appendChild(c)})},prepend:function(a,c){if(a.nodeType===1){var d=a.firstChild;n(new R(c),function(c){d?a.insertBefore(c,d):(a.appendChild(c),d=c)})}},wrap:function(a,c){var c=w(c)[0],d=a.parentNode;d&&d.replaceChild(c,a);c.appendChild(a)},remove:function(a){ya(a);var c=a.parentNode;c&&c.removeChild(a)},after:function(a,c){var d=a,e=a.parentNode;n(new R(c),function(a){e.insertBefore(a,d.nextSibling);d=a})},addClass:Db,\r\nremoveClass:Cb,toggleClass:function(a,c,d){C(d)&&(d=!La(a,c));(d?Db:Cb)(a,c)},parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},next:function(a){if(a.nextElementSibling)return a.nextElementSibling;for(a=a.nextSibling;a!=null&&a.nodeType!==1;)a=a.nextSibling;return a},find:function(a,c){return a.getElementsByTagName(c)},clone:fb,triggerHandler:function(a,c){var d=(ca(a,\"events\")||{})[c];n(d,function(c){c.call(a,{preventDefault:q})})}},function(a,c){R.prototype[c]=function(c,e){for(var g,\r\ni=0;i<this.length;i++)g==p?(g=a(this[i],c,e),g!==p&&(g=w(g))):eb(g,a(this[i],c,e));return g==p?this:g}});za.prototype={put:function(a,c){this[la(a)]=c},get:function(a){return this[la(a)]},remove:function(a){var c=this[a=la(a)];delete this[a];return c}};var zc=/^function\\s*[^\\(]*\\(\\s*([^\\)]*)\\)/m,Ac=/,/,Bc=/^\\s*(_?)(\\S+?)\\1\\s*$/,yc=/((\\/\\/.*$)|(\\/\\*[\\s\\S]*?\\*\\/))/mg;Ib.$inject=[\"$provide\"];var qd=function(){var a=\"$ngAnimateController\",c={running:!0};this.$get=[\"$animation\",\"$window\",\"$sniffer\",\"$rootElement\",\r\n\"$rootScope\",function(d,e,g,i){i.data(a,c);i=function(c,i){function j(j,k,o){return function(m,r,p){function x(a){var c=0,a=E(a)?a.split(/\\s*,\\s*/):[];n(a,function(a){c=Math.max(parseFloat(a)||0,c)});return c}function t(){m.addClass(K);if($)$(m,v,P);else if(H(e.getComputedStyle)){var a=g.vendorPrefix+\"Animation\",c=g.vendorPrefix+\"Transition\",d=0;n(m,function(f){if(f.nodeType==1){var g=\"transition\",i=c,j=1,h=e.getComputedStyle(f)||{};if(parseFloat(h.animationDuration)>0||parseFloat(h[a+\"Duration\"])>\r\n0)g=\"animation\",i=a,j=Math.max(parseInt(h[g+\"IterationCount\"])||0,parseInt(h[i+\"IterationCount\"])||0,j);f=Math.max(x(h[g+\"Delay\"]),x(h[i+\"Delay\"]));g=Math.max(x(h[g+\"Duration\"]),x(h[i+\"Duration\"]));d=Math.max(f+j*g,d)}});e.setTimeout(v,d*1E3)}else v()}function v(){if(!v.run)v.run=!0,o(m,r,p),m.removeClass(w),m.removeClass(K),m.removeData(a)}var A=c.$eval(i.ngAnimate),w=A?L(A)?A[j]:A+\"-\"+j:\"\",D=d(w),A=D&&D.setup,$=D&&D.start,D=D&&D.cancel;if(w){var K=w+\"-active\";r||(r=p?p.parent():m.parent());if(!g.transitions&&\r\n!A&&!$||(r.inheritedData(a)||q).running)k(m,r,p),o(m,r,p);else{var O=m.data(a)||{};O.running&&((D||q)(m),O.done());m.data(a,{running:!0,done:v});m.addClass(w);k(m,r,p);if(m.length==0)return v();var P=(A||q)(m);e.setTimeout(t,1)}}else k(m,r,p),o(m,r,p)}}function m(a,c,d){d?d.after(a):c.append(a)}var k={};k.enter=j(\"enter\",m,q);k.leave=j(\"leave\",q,function(a){a.remove()});k.move=j(\"move\",function(a,c,d){m(a,c,d)},q);k.show=j(\"show\",function(a){a.css(\"display\",\"\")},q);k.hide=j(\"hide\",q,function(a){a.css(\"display\",\r\n\"none\")});k.animate=function(a,c){j(a,q,q)(c)};return k};i.enabled=function(a){if(arguments.length)c.running=!a;return!c.running};return i}]},Kb=\"Non-assignable model expression: \";Jb.$inject=[\"$provide\"];var Ic=/^(x[\\:\\-_]|data[\\:\\-_])/i,jb=/^([^:]+):\\/\\/(\\w+:{0,1}\\w*@)?(\\{?[\\w\\.-]*\\}?)(:([0-9]+))?(\\/[^\\?#]*)?(\\?([^#]*))?(#(.*))?$/,Pb=/^([^\\?#]*)(\\?([^#]*))?(#(.*))?$/,Oa={http:80,https:443,ftp:21};Rb.prototype=lb.prototype=Qb.prototype={$$replace:!1,absUrl:Pa(\"$$absUrl\"),url:function(a,c){if(C(a))return this.$$url;\r\nvar d=Pb.exec(a);d[1]&&this.path(decodeURIComponent(d[1]));if(d[2]||d[1])this.search(d[3]||\"\");this.hash(d[5]||\"\",c);return this},protocol:Pa(\"$$protocol\"),host:Pa(\"$$host\"),port:Pa(\"$$port\"),path:Sb(\"$$path\",function(a){return a.charAt(0)==\"/\"?a:\"/\"+a}),search:function(a,c){if(C(a))return this.$$search;B(c)?c===null?delete this.$$search[a]:this.$$search[a]=c:this.$$search=E(a)?vb(a):a;this.$$compose();return this},hash:Sb(\"$$hash\",qa),replace:function(){this.$$replace=!0;return this}};var Da={\"null\":function(){return null},\r\n\"true\":function(){return!0},\"false\":function(){return!1},undefined:q,\"+\":function(a,c,d,e){d=d(a,c);e=e(a,c);return B(d)?B(e)?d+e:d:B(e)?e:p},\"-\":function(a,c,d,e){d=d(a,c);e=e(a,c);return(B(d)?d:0)-(B(e)?e:0)},\"*\":function(a,c,d,e){return d(a,c)*e(a,c)},\"/\":function(a,c,d,e){return d(a,c)/e(a,c)},\"%\":function(a,c,d,e){return d(a,c)%e(a,c)},\"^\":function(a,c,d,e){return d(a,c)^e(a,c)},\"=\":q,\"===\":function(a,c,d,e){return d(a,c)===e(a,c)},\"!==\":function(a,c,d,e){return d(a,c)!==e(a,c)},\"==\":function(a,\r\nc,d,e){return d(a,c)==e(a,c)},\"!=\":function(a,c,d,e){return d(a,c)!=e(a,c)},\"<\":function(a,c,d,e){return d(a,c)<e(a,c)},\">\":function(a,c,d,e){return d(a,c)>e(a,c)},\"<=\":function(a,c,d,e){return d(a,c)<=e(a,c)},\">=\":function(a,c,d,e){return d(a,c)>=e(a,c)},\"&&\":function(a,c,d,e){return d(a,c)&&e(a,c)},\"||\":function(a,c,d,e){return d(a,c)||e(a,c)},\"&\":function(a,c,d,e){return d(a,c)&e(a,c)},\"|\":function(a,c,d,e){return e(a,c)(a,c,d(a,c))},\"!\":function(a,c,d){return!d(a,c)}},Qc={n:\"\\n\",f:\"\\u000c\",r:\"\\r\",\r\nt:\"\\t\",v:\"\\u000b\",\"'\":\"'\",'\"':'\"'},mb={},ad=/^(([^:]+):)?\\/\\/(\\w+:{0,1}\\w*@)?([\\w\\.-]*)?(:([0-9]+))?(.*)$/,ed=M.XMLHttpRequest||function(){try{return new ActiveXObject(\"Msxml2.XMLHTTP.6.0\")}catch(a){}try{return new ActiveXObject(\"Msxml2.XMLHTTP.3.0\")}catch(c){}try{return new ActiveXObject(\"Msxml2.XMLHTTP\")}catch(d){}throw Error(\"This browser does not support XMLHttpRequest.\");};Zb.$inject=[\"$provide\"];$b.$inject=[\"$locale\"];bc.$inject=[\"$locale\"];var ec=\".\",od={yyyy:Q(\"FullYear\",4),yy:Q(\"FullYear\",\r\n2,0,!0),y:Q(\"FullYear\",1),MMMM:Qa(\"Month\"),MMM:Qa(\"Month\",!0),MM:Q(\"Month\",2,1),M:Q(\"Month\",1,1),dd:Q(\"Date\",2),d:Q(\"Date\",1),HH:Q(\"Hours\",2),H:Q(\"Hours\",1),hh:Q(\"Hours\",2,-12),h:Q(\"Hours\",1,-12),mm:Q(\"Minutes\",2),m:Q(\"Minutes\",1),ss:Q(\"Seconds\",2),s:Q(\"Seconds\",1),sss:Q(\"Milliseconds\",3),EEEE:Qa(\"Day\"),EEE:Qa(\"Day\",!0),a:function(a,c){return a.getHours()<12?c.AMPMS[0]:c.AMPMS[1]},Z:function(a){var a=-1*a.getTimezoneOffset(),c=a>=0?\"+\":\"\";c+=nb(Math[a>0?\"floor\":\"ceil\"](a/60),2)+nb(Math.abs(a%60),\r\n2);return c}},nd=/((?:[^yMdHhmsaZE']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|d+|H+|h+|m+|s+|a|Z))(.*)/,md=/^\\d+$/;ac.$inject=[\"$locale\"];var kd=S(I),ld=S(oa);cc.$inject=[\"$parse\"];var rd=S({restrict:\"E\",compile:function(a,c){Z<=8&&(!c.href&&!c.name&&c.$set(\"href\",\"\"),a.append(T.createComment(\"IE fix\")));return function(a,c){c.bind(\"click\",function(a){c.attr(\"href\")||a.preventDefault()})}}}),pb={};n(Na,function(a,c){var d=da(\"ng-\"+c);pb[d]=function(){return{priority:100,compile:function(){return function(a,\r\ng,i){a.$watch(i[d],function(a){i.$set(c,!!a)})}}}}});n([\"src\",\"srcset\",\"href\"],function(a){var c=da(\"ng-\"+a);pb[c]=function(){return{priority:99,link:function(d,e,g){g.$observe(c,function(c){c&&(g.$set(a,c),Z&&e.prop(a,g[a]))})}}}});var Ta={$addControl:q,$removeControl:q,$setValidity:q,$setDirty:q,$setPristine:q};fc.$inject=[\"$element\",\"$attrs\",\"$scope\"];var Wa=function(a){return[\"$timeout\",function(c){var d={name:\"form\",restrict:\"E\",controller:fc,compile:function(){return{pre:function(a,d,i,f){if(!i.action){var h=\r\nfunction(a){a.preventDefault?a.preventDefault():a.returnValue=!1};gc(d[0],\"submit\",h);d.bind(\"$destroy\",function(){c(function(){gb(d[0],\"submit\",h)},0,!1)})}var j=d.parent().controller(\"form\"),m=i.name||i.ngForm;m&&(a[m]=f);j&&d.bind(\"$destroy\",function(){j.$removeControl(f);m&&(a[m]=p);t(f,Ta)})}}}};return a?t(V(d),{restrict:\"EAC\"}):d}]},sd=Wa(),td=Wa(!0),ud=/^(ftp|http|https):\\/\\/(\\w+:{0,1}\\w*@)?(\\S+)(:[0-9]+)?(\\/|\\/([\\w#!:.?+=&%@!\\-\\/]))?$/,vd=/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}$/,\r\nwd=/^\\s*(\\-|\\+)?(\\d+|(\\d*(\\.\\d*)))\\s*$/,hc={text:Va,number:function(a,c,d,e,g,i){Va(a,c,d,e,g,i);e.$parsers.push(function(a){var c=X(a);return c||wd.test(a)?(e.$setValidity(\"number\",!0),a===\"\"?null:c?a:parseFloat(a)):(e.$setValidity(\"number\",!1),p)});e.$formatters.push(function(a){return X(a)?\"\":\"\"+a});if(d.min){var f=parseFloat(d.min),a=function(a){return!X(a)&&a<f?(e.$setValidity(\"min\",!1),p):(e.$setValidity(\"min\",!0),a)};e.$parsers.push(a);e.$formatters.push(a)}if(d.max){var h=parseFloat(d.max),\r\nd=function(a){return!X(a)&&a>h?(e.$setValidity(\"max\",!1),p):(e.$setValidity(\"max\",!0),a)};e.$parsers.push(d);e.$formatters.push(d)}e.$formatters.push(function(a){return X(a)||Ya(a)?(e.$setValidity(\"number\",!0),a):(e.$setValidity(\"number\",!1),p)})},url:function(a,c,d,e,g,i){Va(a,c,d,e,g,i);a=function(a){return X(a)||ud.test(a)?(e.$setValidity(\"url\",!0),a):(e.$setValidity(\"url\",!1),p)};e.$formatters.push(a);e.$parsers.push(a)},email:function(a,c,d,e,g,i){Va(a,c,d,e,g,i);a=function(a){return X(a)||vd.test(a)?\r\n(e.$setValidity(\"email\",!0),a):(e.$setValidity(\"email\",!1),p)};e.$formatters.push(a);e.$parsers.push(a)},radio:function(a,c,d,e){C(d.name)&&c.attr(\"name\",Fa());c.bind(\"click\",function(){c[0].checked&&a.$apply(function(){e.$setViewValue(d.value)})});e.$render=function(){c[0].checked=d.value==e.$viewValue};d.$observe(\"value\",e.$render)},checkbox:function(a,c,d,e){var g=d.ngTrueValue,i=d.ngFalseValue;E(g)||(g=!0);E(i)||(i=!1);c.bind(\"click\",function(){a.$apply(function(){e.$setViewValue(c[0].checked)})});\r\ne.$render=function(){c[0].checked=e.$viewValue};e.$formatters.push(function(a){return a===g});e.$parsers.push(function(a){return a?g:i})},hidden:q,button:q,submit:q,reset:q},ic=[\"$browser\",\"$sniffer\",function(a,c){return{restrict:\"E\",require:\"?ngModel\",link:function(d,e,g,i){i&&(hc[I(g.type)]||hc.text)(d,e,g,i,c,a)}}}],Sa=\"ng-valid\",Ra=\"ng-invalid\",pa=\"ng-pristine\",Ua=\"ng-dirty\",xd=[\"$scope\",\"$exceptionHandler\",\"$attrs\",\"$element\",\"$parse\",function(a,c,d,e,g){function i(a,c){c=c?\"-\"+bb(c,\"-\"):\"\";\r\ne.removeClass((a?Ra:Sa)+c).addClass((a?Sa:Ra)+c)}this.$modelValue=this.$viewValue=Number.NaN;this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$pristine=!0;this.$dirty=!1;this.$valid=!0;this.$invalid=!1;this.$name=d.name;var f=g(d.ngModel),h=f.assign;if(!h)throw Error(Kb+d.ngModel+\" (\"+va(e)+\")\");this.$render=q;var j=e.inheritedData(\"$formController\")||Ta,m=0,k=this.$error={};e.addClass(pa);i(!0);this.$setValidity=function(a,c){if(k[a]!==!c){if(c){if(k[a]&&m--,!m)i(!0),this.$valid=\r\n!0,this.$invalid=!1}else i(!1),this.$invalid=!0,this.$valid=!1,m++;k[a]=!c;i(c,a);j.$setValidity(a,c,this)}};this.$setPristine=function(){this.$dirty=!1;this.$pristine=!0;e.removeClass(Ua).addClass(pa)};this.$setViewValue=function(d){this.$viewValue=d;if(this.$pristine)this.$dirty=!0,this.$pristine=!1,e.removeClass(pa).addClass(Ua),j.$setDirty();n(this.$parsers,function(a){d=a(d)});if(this.$modelValue!==d)this.$modelValue=d,h(a,d),n(this.$viewChangeListeners,function(a){try{a()}catch(d){c(d)}})};\r\nvar l=this;a.$watch(function(){var c=f(a);if(l.$modelValue!==c){var d=l.$formatters,e=d.length;for(l.$modelValue=c;e--;)c=d[e](c);if(l.$viewValue!==c)l.$viewValue=c,l.$render()}})}],yd=function(){return{require:[\"ngModel\",\"^?form\"],controller:xd,link:function(a,c,d,e){var g=e[0],i=e[1]||Ta;i.$addControl(g);c.bind(\"$destroy\",function(){i.$removeControl(g)})}}},zd=S({require:\"ngModel\",link:function(a,c,d,e){e.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),jc=function(){return{require:\"?ngModel\",\r\nlink:function(a,c,d,e){if(e){d.required=!0;var g=function(a){if(d.required&&(X(a)||a===!1))e.$setValidity(\"required\",!1);else return e.$setValidity(\"required\",!0),a};e.$formatters.push(g);e.$parsers.unshift(g);d.$observe(\"required\",function(){g(e.$viewValue)})}}}},Ad=function(){return{require:\"ngModel\",link:function(a,c,d,e){var g=(a=/\\/(.*)\\//.exec(d.ngList))&&RegExp(a[1])||d.ngList||\",\";e.$parsers.push(function(a){var c=[];a&&n(a.split(g),function(a){a&&c.push(U(a))});return c});e.$formatters.push(function(a){return F(a)?\r\na.join(\", \"):p})}}},Bd=/^(true|false|\\d+)$/,Cd=function(){return{priority:100,compile:function(a,c){return Bd.test(c.ngValue)?function(a,c,g){g.$set(\"value\",a.$eval(g.ngValue))}:function(a,c,g){a.$watch(g.ngValue,function(a){g.$set(\"value\",a,!1)})}}}},Dd=aa(function(a,c,d){c.addClass(\"ng-binding\").data(\"$binding\",d.ngBind);a.$watch(d.ngBind,function(a){c.text(a==p?\"\":a)})}),Ed=[\"$interpolate\",function(a){return function(c,d,e){c=a(d.attr(e.$attr.ngBindTemplate));d.addClass(\"ng-binding\").data(\"$binding\",\r\nc);e.$observe(\"ngBindTemplate\",function(a){d.text(a)})}}],Fd=[function(){return function(a,c,d){c.addClass(\"ng-binding\").data(\"$binding\",d.ngBindHtmlUnsafe);a.$watch(d.ngBindHtmlUnsafe,function(a){c.html(a||\"\")})}}],Gd=ob(\"\",!0),Hd=ob(\"Odd\",0),Id=ob(\"Even\",1),Jd=aa({compile:function(a,c){c.$set(\"ngCloak\",p);a.removeClass(\"ng-cloak\")}}),Kd=[function(){return{scope:!0,controller:\"@\"}}],Ld=[\"$sniffer\",function(a){return{priority:1E3,compile:function(){a.csp=!0}}}],kc={};n(\"click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress\".split(\" \"),\r\nfunction(a){var c=da(\"ng-\"+a);kc[c]=[\"$parse\",function(d){return function(e,g,i){var f=d(i[c]);g.bind(I(a),function(a){e.$apply(function(){f(e,{$event:a})})})}}]});var Md=aa(function(a,c,d){c.bind(\"submit\",function(){a.$apply(d.ngSubmit)})}),Nd=[\"$animator\",function(a){return{transclude:\"element\",priority:1E3,terminal:!0,restrict:\"A\",compile:function(c,d,e){return function(c,d,f){var h=a(c,f),j,m;c.$watch(f.ngIf,function(a){j&&(h.leave(j),j=p);m&&(m.$destroy(),m=p);ua(a)&&(m=c.$new(),e(m,function(a){j=\r\na;h.enter(a,d.parent(),d)}))})}}}}],Od=[\"$http\",\"$templateCache\",\"$anchorScroll\",\"$compile\",\"$animator\",function(a,c,d,e,g){return{restrict:\"ECA\",terminal:!0,compile:function(i,f){var h=f.ngInclude||f.src,j=f.onload||\"\",m=f.autoscroll;return function(f,i,n){var o=g(f,n),p=0,r,t=function(){r&&(r.$destroy(),r=null);o.leave(i.contents(),i)};f.$watch(h,function(g){var h=++p;g?(a.get(g,{cache:c}).success(function(a){h===p&&(r&&r.$destroy(),r=f.$new(),o.leave(i.contents(),i),a=w(\"<div/>\").html(a).contents(),\r\no.enter(a,i),e(a)(r),B(m)&&(!m||f.$eval(m))&&d(),r.$emit(\"$includeContentLoaded\"),f.$eval(j))}).error(function(){h===p&&t()}),f.$emit(\"$includeContentRequested\")):t()})}}}}],Pd=aa({compile:function(){return{pre:function(a,c,d){a.$eval(d.ngInit)}}}}),Qd=aa({terminal:!0,priority:1E3}),Rd=[\"$locale\",\"$interpolate\",function(a,c){var d=/{}/g;return{restrict:\"EA\",link:function(e,g,i){var f=i.count,h=g.attr(i.$attr.when),j=i.offset||0,m=e.$eval(h),k={},l=c.startSymbol(),p=c.endSymbol();n(m,function(a,e){k[e]=\r\nc(a.replace(d,l+f+\"-\"+j+p))});e.$watch(function(){var c=parseFloat(e.$eval(f));return isNaN(c)?\"\":(c in m||(c=a.pluralCat(c-j)),k[c](e,g,!0))},function(a){g.text(a)})}}}],Sd=[\"$parse\",\"$animator\",function(a,c){return{transclude:\"element\",priority:1E3,terminal:!0,compile:function(d,e,g){return function(d,e,h){var j=c(d,h),m=h.ngRepeat,k=m.match(/^\\s*(.+)\\s+in\\s+(.*?)\\s*(\\s+track\\s+by\\s+(.+)\\s*)?$/),l,p,o,z,r,t={$id:la};if(!k)throw Error(\"Expected ngRepeat in form of '_item_ in _collection_[ track by _id_]' but got '\"+\r\nm+\"'.\");h=k[1];o=k[2];(k=k[4])?(l=a(k),p=function(a,c,e){r&&(t[r]=a);t[z]=c;t.$index=e;return l(d,t)}):p=function(a,c){return la(c)};k=h.match(/^(?:([\\$\\w]+)|\\(([\\$\\w]+)\\s*,\\s*([\\$\\w]+)\\))$/);if(!k)throw Error(\"'item' in 'item in collection' should be identifier or (key, value) but got '\"+h+\"'.\");z=k[3]||k[1];r=k[2];var x={};d.$watchCollection(o,function(a){var c,h,k=e,l,o={},t,q,w,s,B,y,C=[];if(Xa(a))B=a;else{B=[];for(w in a)a.hasOwnProperty(w)&&w.charAt(0)!=\"$\"&&B.push(w);B.sort()}t=B.length;h=\r\nC.length=B.length;for(c=0;c<h;c++)if(w=a===B?c:B[c],s=a[w],l=p(w,s,c),x.hasOwnProperty(l))y=x[l],delete x[l],o[l]=y,C[c]=y;else if(o.hasOwnProperty(l))throw n(C,function(a){a&&a.element&&(x[a.id]=a)}),Error(\"Duplicates in a repeater are not allowed. Repeater: \"+m+\" key: \"+l);else C[c]={id:l},o[l]=!1;for(w in x)if(x.hasOwnProperty(w))y=x[w],j.leave(y.element),y.element[0].$$NG_REMOVED=!0,y.scope.$destroy();c=0;for(h=B.length;c<h;c++){w=a===B?c:B[c];s=a[w];y=C[c];if(y.element){q=y.scope;l=k[0];do l=\r\nl.nextSibling;while(l&&l.$$NG_REMOVED);y.element[0]!=l&&j.move(y.element,null,k);k=y.element}else q=d.$new();q[z]=s;r&&(q[r]=w);q.$index=c;q.$first=c===0;q.$last=c===t-1;q.$middle=!(q.$first||q.$last);y.element||g(q,function(a){j.enter(a,null,k);k=a;y.scope=q;y.element=a;o[y.id]=y})}x=o})}}}}],Td=[\"$animator\",function(a){return function(c,d,e){var g=a(c,e);c.$watch(e.ngShow,function(a){g[ua(a)?\"show\":\"hide\"](d)})}}],Ud=[\"$animator\",function(a){return function(c,d,e){var g=a(c,e);c.$watch(e.ngHide,\r\nfunction(a){g[ua(a)?\"hide\":\"show\"](d)})}}],Vd=aa(function(a,c,d){a.$watch(d.ngStyle,function(a,d){d&&a!==d&&n(d,function(a,d){c.css(d,\"\")});a&&c.css(a)},!0)}),Wd=[\"$animator\",function(a){return{restrict:\"EA\",require:\"ngSwitch\",controller:[\"$scope\",function(){this.cases={}}],link:function(c,d,e,g){var i=a(c,e),f,h,j=[];c.$watch(e.ngSwitch||e.on,function(a){for(var d=0,l=j.length;d<l;d++)j[d].$destroy(),i.leave(h[d]);h=[];j=[];if(f=g.cases[\"!\"+a]||g.cases[\"?\"])c.$eval(e.change),n(f,function(a){var d=\r\nc.$new();j.push(d);a.transclude(d,function(c){var d=a.element;h.push(c);i.enter(c,d.parent(),d)})})})}}}],Xd=aa({transclude:\"element\",priority:500,require:\"^ngSwitch\",compile:function(a,c,d){return function(a,g,i,f){f.cases[\"!\"+c.ngSwitchWhen]=f.cases[\"!\"+c.ngSwitchWhen]||[];f.cases[\"!\"+c.ngSwitchWhen].push({transclude:d,element:g})}}}),Yd=aa({transclude:\"element\",priority:500,require:\"^ngSwitch\",compile:function(a,c,d){return function(a,c,i,f){f.cases[\"?\"]=f.cases[\"?\"]||[];f.cases[\"?\"].push({transclude:d,\r\nelement:c})}}}),Zd=aa({controller:[\"$transclude\",\"$element\",function(a,c){a(function(a){c.append(a)})}]}),$d=[\"$http\",\"$templateCache\",\"$route\",\"$anchorScroll\",\"$compile\",\"$controller\",\"$animator\",function(a,c,d,e,g,i,f){return{restrict:\"ECA\",terminal:!0,link:function(a,c,m){function k(){var f=d.current&&d.current.locals,k=f&&f.$template;if(k){o.leave(c.contents(),c);l&&(l.$destroy(),l=null);k=w(\"<div></div>\").html(k).contents();o.enter(k,c);var k=g(k),m=d.current;l=m.scope=a.$new();if(m.controller)f.$scope=\r\nl,f=i(m.controller,f),m.controllerAs&&(l[m.controllerAs]=f),c.children().data(\"$ngControllerController\",f);k(l);l.$emit(\"$viewContentLoaded\");l.$eval(n);e()}else o.leave(c.contents(),c),l&&(l.$destroy(),l=null)}var l,n=m.onload||\"\",o=f(a,m);a.$on(\"$routeChangeSuccess\",k);k()}}}],ae=[\"$templateCache\",function(a){return{restrict:\"E\",terminal:!0,compile:function(c,d){d.type==\"text/ng-template\"&&a.put(d.id,c[0].text)}}}],be=S({terminal:!0}),ce=[\"$compile\",\"$parse\",function(a,c){var d=/^\\s*(.*?)(?:\\s+as\\s+(.*?))?(?:\\s+group\\s+by\\s+(.*))?\\s+for\\s+(?:([\\$\\w][\\$\\w\\d]*)|(?:\\(\\s*([\\$\\w][\\$\\w\\d]*)\\s*,\\s*([\\$\\w][\\$\\w\\d]*)\\s*\\)))\\s+in\\s+(.*?)(?:\\s+track\\s+by\\s+(.*?))?$/,\r\ne={$setViewValue:q};return{restrict:\"E\",require:[\"select\",\"?ngModel\"],controller:[\"$element\",\"$scope\",\"$attrs\",function(a,c,d){var h=this,j={},m=e,k;h.databound=d.ngModel;h.init=function(a,c,d){m=a;k=d};h.addOption=function(c){j[c]=!0;m.$viewValue==c&&(a.val(c),k.parent()&&k.remove())};h.removeOption=function(a){this.hasOption(a)&&(delete j[a],m.$viewValue==a&&this.renderUnknownOption(a))};h.renderUnknownOption=function(c){c=\"? \"+la(c)+\" ?\";k.val(c);a.prepend(k);a.val(c);k.prop(\"selected\",!0)};h.hasOption=\r\nfunction(a){return j.hasOwnProperty(a)};c.$on(\"$destroy\",function(){h.renderUnknownOption=q})}],link:function(e,i,f,h){function j(a,c,d,e){d.$render=function(){var a=d.$viewValue;e.hasOption(a)?(v.parent()&&v.remove(),c.val(a),a===\"\"&&t.prop(\"selected\",!0)):C(a)&&t?c.val(\"\"):e.renderUnknownOption(a)};c.bind(\"change\",function(){a.$apply(function(){v.parent()&&v.remove();d.$setViewValue(c.val())})})}function m(a,c,d){var e;d.$render=function(){var a=new za(d.$viewValue);n(c.find(\"option\"),function(c){c.selected=\r\nB(a.get(c.value))})};a.$watch(function(){ia(e,d.$viewValue)||(e=V(d.$viewValue),d.$render())});c.bind(\"change\",function(){a.$apply(function(){var a=[];n(c.find(\"option\"),function(c){c.selected&&a.push(c.value)});d.$setViewValue(a)})})}function k(e,f,g){function i(){var a={\"\":[]},c=[\"\"],d,h,q,v,s;q=g.$modelValue;v=u(e)||[];var z=l?qb(v):v,B,y,A;y={};s=!1;var C,D;if(o)if(t&&F(q)){s=new za([]);for(h=0;h<q.length;h++)y[k]=q[h],s.put(t(e,y),q[h])}else s=new za(q);for(A=0;B=z.length,A<B;A++){y[k]=v[l?y[l]=\r\nz[A]:A];d=m(e,y)||\"\";if(!(h=a[d]))h=a[d]=[],c.push(d);o?d=s.remove(t?t(e,y):n(e,y))!=p:(t?(d={},d[k]=q,d=t(e,d)===t(e,y)):d=q===n(e,y),s=s||d);C=j(e,y);C=C===p?\"\":C;h.push({id:t?t(e,y):l?z[A]:A,label:C,selected:d})}o||(r||q===null?a[\"\"].unshift({id:\"\",label:\"\",selected:!s}):s||a[\"\"].unshift({id:\"?\",label:\"\",selected:!0}));y=0;for(z=c.length;y<z;y++){d=c[y];h=a[d];if(w.length<=y)q={element:E.clone().attr(\"label\",d),label:h.label},v=[q],w.push(v),f.append(q.element);else if(v=w[y],q=v[0],q.label!=d)q.element.attr(\"label\",\r\nq.label=d);C=null;A=0;for(B=h.length;A<B;A++)if(d=h[A],s=v[A+1]){C=s.element;if(s.label!==d.label)C.text(s.label=d.label);if(s.id!==d.id)C.val(s.id=d.id);if(C[0].selected!==d.selected)C.prop(\"selected\",s.selected=d.selected)}else d.id===\"\"&&r?D=r:(D=x.clone()).val(d.id).attr(\"selected\",d.selected).text(d.label),v.push({element:D,label:d.label,id:d.id,selected:d.selected}),C?C.after(D):q.element.append(D),C=D;for(A++;v.length>A;)v.pop().element.remove()}for(;w.length>y;)w.pop()[0].element.remove()}\r\nvar h;if(!(h=q.match(d)))throw Error(\"Expected ngOptions in form of '_select_ (as _label_)? for (_key_,)?_value_ in _collection_ (track by _expr_)?' but got '\"+q+\"'.\");var j=c(h[2]||h[1]),k=h[4]||h[6],l=h[5],m=c(h[3]||\"\"),n=c(h[2]?h[1]:k),u=c(h[7]),t=h[8]?c(h[8]):null,w=[[{element:f,label:\"\"}]];r&&(a(r)(e),r.removeClass(\"ng-scope\"),r.remove());f.html(\"\");f.bind(\"change\",function(){e.$apply(function(){var a,c=u(e)||[],d={},h,i,j,m,q,r;if(o){i=[];m=0;for(r=w.length;m<r;m++){a=w[m];j=1;for(q=a.length;j<\r\nq;j++)if((h=a[j].element)[0].selected){h=h.val();l&&(d[l]=h);if(t)for(var s=0;s<c.length;s++){if(d[k]=c[s],t(e,d)==h)break}else d[k]=c[h];i.push(n(e,d))}}}else if(h=f.val(),h==\"?\")i=p;else if(h==\"\")i=null;else if(t)for(s=0;s<c.length;s++){if(d[k]=c[s],t(e,d)==h){i=n(e,d);break}}else d[k]=c[h],l&&(d[l]=h),i=n(e,d);g.$setViewValue(i)})});g.$render=i;e.$watch(i)}if(h[1]){for(var l=h[0],u=h[1],o=f.multiple,q=f.ngOptions,r=!1,t,x=w(T.createElement(\"option\")),E=w(T.createElement(\"optgroup\")),v=x.clone(),\r\nh=0,A=i.children(),G=A.length;h<G;h++)if(A[h].value==\"\"){t=r=A.eq(h);break}l.init(u,r,v);if(o&&(f.required||f.ngRequired)){var D=function(a){u.$setValidity(\"required\",!f.required||a&&a.length);return a};u.$parsers.push(D);u.$formatters.unshift(D);f.$observe(\"required\",function(){D(u.$viewValue)})}q?k(e,i,u):o?m(e,i,u):j(e,i,u,l)}}}}],de=[\"$interpolate\",function(a){var c={addOption:q,removeOption:q};return{restrict:\"E\",priority:100,compile:function(d,e){if(C(e.value)){var g=a(d.text(),!0);g||e.$set(\"value\",\r\nd.text())}return function(a,d,e){var j=d.parent(),m=j.data(\"$selectController\")||j.parent().data(\"$selectController\");m&&m.databound?d.prop(\"selected\",!1):m=c;g?a.$watch(g,function(a,c){e.$set(\"value\",a);a!==c&&m.removeOption(c);m.addOption(a)}):m.addOption(e.value);d.bind(\"$destroy\",function(){m.removeOption(e.value)})}}}}],ee=S({restrict:\"E\",terminal:!0});(ga=M.jQuery)?(w=ga,t(ga.fn,{scope:Ba.scope,controller:Ba.controller,injector:Ba.injector,inheritedData:Ba.inheritedData}),db(\"remove\",!0),db(\"empty\"),\r\ndb(\"html\")):w=R;Ha.element=w;(function(a){t(a,{bootstrap:xb,copy:V,extend:t,equals:ia,element:w,forEach:n,injector:yb,noop:q,bind:$a,toJson:ha,fromJson:ub,identity:qa,isUndefined:C,isDefined:B,isString:E,isFunction:H,isObject:L,isNumber:Ya,isElement:oc,isArray:F,version:pd,isDate:ra,lowercase:I,uppercase:oa,callbacks:{counter:0},noConflict:lc});Aa=tc(M);try{Aa(\"ngLocale\")}catch(c){Aa(\"ngLocale\",[]).provider(\"$locale\",fd)}Aa(\"ng\",[\"ngLocale\"],[\"$provide\",function(a){a.provider(\"$compile\",Jb).directive({a:rd,\r\ninput:ic,textarea:ic,form:sd,script:ae,select:ce,style:ee,option:de,ngBind:Dd,ngBindHtmlUnsafe:Fd,ngBindTemplate:Ed,ngClass:Gd,ngClassEven:Id,ngClassOdd:Hd,ngCsp:Ld,ngCloak:Jd,ngController:Kd,ngForm:td,ngHide:Ud,ngIf:Nd,ngInclude:Od,ngInit:Pd,ngNonBindable:Qd,ngPluralize:Rd,ngRepeat:Sd,ngShow:Td,ngSubmit:Md,ngStyle:Vd,ngSwitch:Wd,ngSwitchWhen:Xd,ngSwitchDefault:Yd,ngOptions:be,ngView:$d,ngTransclude:Zd,ngModel:yd,ngList:Ad,ngChange:zd,required:jc,ngRequired:jc,ngValue:Cd}).directive(pb).directive(kc);\r\na.provider({$anchorScroll:Cc,$animation:Ib,$animator:qd,$browser:Ec,$cacheFactory:Fc,$controller:Jc,$document:Kc,$exceptionHandler:Lc,$filter:Zb,$interpolate:Mc,$http:bd,$httpBackend:cd,$location:Nc,$log:Oc,$parse:Sc,$route:Vc,$routeParams:Wc,$rootScope:Xc,$q:Tc,$sniffer:Yc,$templateCache:Gc,$timeout:gd,$window:Zc})}])})(Ha);w(T).ready(function(){rc(T,xb)})})(window,document);angular.element(document).find(\"head\").append('<style type=\"text/css\">@charset \"UTF-8\";[ng\\\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak{display:none;}ng\\\\:form{display:block;}</style>');\r\n"
  },
  {
    "path": "main/ngrok/static/js/base64.js",
    "content": "/*\r\nCopyright (c) 2008 Fred Palmer fred.palmer_at_gmail.com\r\n\r\nPermission is hereby granted, free of charge, to any person\r\nobtaining a copy of this software and associated documentation\r\nfiles (the \"Software\"), to deal in the Software without\r\nrestriction, including without limitation the rights to use,\r\ncopy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the\r\nSoftware is furnished to do so, subject to the following\r\nconditions:\r\n\r\nThe above copyright notice and this permission notice shall be\r\nincluded in all copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\r\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\r\nOF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\r\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\r\nHOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\r\nWHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\r\nFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\r\nOTHER DEALINGS IN THE SOFTWARE.\r\n*/\r\nfunction StringBuffer()\r\n{ \r\n    this.buffer = []; \r\n} \r\n\r\nStringBuffer.prototype.append = function append(string)\r\n{ \r\n    this.buffer.push(string); \r\n    return this; \r\n}; \r\n\r\nStringBuffer.prototype.toString = function toString()\r\n{ \r\n    return this.buffer.join(\"\"); \r\n}; \r\n\r\nwindow.Base64 =\r\n{\r\n    codex : \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\",\r\n\r\n    encode : function (input)\r\n    {\r\n        var output = new StringBuffer();\r\n\r\n        var enumerator = new Utf8EncodeEnumerator(input);\r\n        while (enumerator.moveNext())\r\n        {\r\n            var chr1 = enumerator.current;\r\n\r\n            enumerator.moveNext();\r\n            var chr2 = enumerator.current;\r\n\r\n            enumerator.moveNext();\r\n            var chr3 = enumerator.current;\r\n\r\n            var enc1 = chr1 >> 2;\r\n            var enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\r\n            var enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\r\n            var enc4 = chr3 & 63;\r\n\r\n            if (isNaN(chr2))\r\n            {\r\n                enc3 = enc4 = 64;\r\n            }\r\n            else if (isNaN(chr3))\r\n            {\r\n                enc4 = 64;\r\n            }\r\n\r\n            output.append(this.codex.charAt(enc1) + this.codex.charAt(enc2) + this.codex.charAt(enc3) + this.codex.charAt(enc4));\r\n        }\r\n\r\n        return output.toString();\r\n    },\r\n\r\n    decode : function (input)\r\n    {\r\n        var output = new StringBuffer();\r\n        var outputBytes = [];\r\n\r\n        var enumerator = new Base64DecodeEnumerator(input);\r\n        while (enumerator.moveNext())\r\n        {\r\n            var charCode = enumerator.current;\r\n            outputBytes.push(charCode);\r\n\r\n            if (charCode < 128)\r\n                output.append(String.fromCharCode(charCode));\r\n            else if ((charCode > 191) && (charCode < 224))\r\n            {\r\n                enumerator.moveNext();\r\n                var charCode2 = enumerator.current;\r\n                outputBytes.push(charCode2);\r\n\r\n                output.append(String.fromCharCode(((charCode & 31) << 6) | (charCode2 & 63)));\r\n            }\r\n            else\r\n            {\r\n                enumerator.moveNext();\r\n                var charCode2 = enumerator.current;\r\n                outputBytes.push(charCode2);\r\n\r\n                enumerator.moveNext();\r\n                var charCode3 = enumerator.current;\r\n                outputBytes.push(charCode3);\r\n\r\n                output.append(String.fromCharCode(((charCode & 15) << 12) | ((charCode2 & 63) << 6) | (charCode3 & 63)));\r\n            }\r\n        }\r\n\r\n        return {\r\n            \"bytes\": outputBytes,\r\n            \"text\": output.toString()\r\n        };\r\n    }\r\n};\r\n\r\nfunction Utf8EncodeEnumerator(input)\r\n{\r\n    this._input = input;\r\n    this._index = -1;\r\n    this._buffer = [];\r\n}\r\n\r\nUtf8EncodeEnumerator.prototype =\r\n{\r\n    current: Number.NaN,\r\n\r\n    moveNext: function()\r\n    {\r\n        if (this._buffer.length > 0)\r\n        {\r\n            this.current = this._buffer.shift();\r\n            return true;\r\n        }\r\n        else if (this._index >= (this._input.length - 1))\r\n        {\r\n            this.current = Number.NaN;\r\n            return false;\r\n        }\r\n        else\r\n        {\r\n            var charCode = this._input.charCodeAt(++this._index);\r\n\r\n            // \"\\r\\n\" -> \"\\n\"\r\n            //\r\n            if ((charCode == 13) && (this._input.charCodeAt(this._index + 1) == 10))\r\n            {\r\n                charCode = 10;\r\n                this._index += 2;\r\n            }\r\n\r\n            if (charCode < 128)\r\n            {\r\n                this.current = charCode;\r\n            }\r\n            else if ((charCode > 127) && (charCode < 2048))\r\n            {\r\n                this.current = (charCode >> 6) | 192;\r\n                this._buffer.push((charCode & 63) | 128);\r\n            }\r\n            else\r\n            {\r\n                this.current = (charCode >> 12) | 224;\r\n                this._buffer.push(((charCode >> 6) & 63) | 128);\r\n                this._buffer.push((charCode & 63) | 128);\r\n            }\r\n\r\n            return true;\r\n        }\r\n    }\r\n}\r\n\r\nfunction Base64DecodeEnumerator(input)\r\n{\r\n    this._input = input;\r\n    this._index = -1;\r\n    this._buffer = [];\r\n}\r\n\r\nBase64DecodeEnumerator.prototype =\r\n{\r\n    current: 64,\r\n\r\n    moveNext: function()\r\n    {\r\n        if (this._buffer.length > 0)\r\n        {\r\n            this.current = this._buffer.shift();\r\n            return true;\r\n        }\r\n        else if (this._index >= (this._input.length - 1))\r\n        {\r\n            this.current = 64;\r\n            return false;\r\n        }\r\n        else\r\n        {\r\n            var enc1 = Base64.codex.indexOf(this._input.charAt(++this._index));\r\n            var enc2 = Base64.codex.indexOf(this._input.charAt(++this._index));\r\n            var enc3 = Base64.codex.indexOf(this._input.charAt(++this._index));\r\n            var enc4 = Base64.codex.indexOf(this._input.charAt(++this._index));\r\n\r\n            var chr1 = (enc1 << 2) | (enc2 >> 4);\r\n            var chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);\r\n            var chr3 = ((enc3 & 3) << 6) | enc4;\r\n\r\n            this.current = chr1;\r\n\r\n            if (enc3 != 64)\r\n                this._buffer.push(chr2);\r\n\r\n            if (enc4 != 64)\r\n                this._buffer.push(chr3);\r\n\r\n            return true;\r\n        }\r\n    }\r\n};\r\n"
  },
  {
    "path": "main/ngrok/static/js/jquery.timeago.js",
    "content": "/**\r\n * Timeago is a jQuery plugin that makes it easy to support automatically\r\n * updating fuzzy timestamps (e.g. \"4 minutes ago\" or \"about 1 day ago\").\r\n *\r\n * @name timeago\r\n * @version 1.3.0\r\n * @requires jQuery v1.2.3+\r\n * @author Ryan McGeary\r\n * @license MIT License - http://www.opensource.org/licenses/mit-license.php\r\n *\r\n * For usage and examples, visit:\r\n * http://timeago.yarp.com/\r\n *\r\n * Copyright (c) 2008-2013, Ryan McGeary (ryan -[at]- mcgeary [*dot*] org)\r\n */\r\n\r\n(function (factory) {\r\n  if (typeof define === 'function' && define.amd) {\r\n    // AMD. Register as an anonymous module.\r\n    define(['jquery'], factory);\r\n  } else {\r\n    // Browser globals\r\n    factory(jQuery);\r\n  }\r\n}(function ($) {\r\n  $.timeago = function(timestamp) {\r\n    if (timestamp instanceof Date) {\r\n      return inWords(timestamp);\r\n    } else if (typeof timestamp === \"string\") {\r\n      return inWords($.timeago.parse(timestamp));\r\n    } else if (typeof timestamp === \"number\") {\r\n      return inWords(new Date(timestamp));\r\n    } else {\r\n      return inWords($.timeago.datetime(timestamp));\r\n    }\r\n  };\r\n  var $t = $.timeago;\r\n\r\n  $.extend($.timeago, {\r\n    settings: {\r\n      refreshMillis: 60000,\r\n      allowFuture: false,\r\n      localeTitle: false,\r\n      cutoff: 0,\r\n      strings: {\r\n        prefixAgo: null,\r\n        prefixFromNow: null,\r\n        suffixAgo: \"ago\",\r\n        suffixFromNow: \"from now\",\r\n        seconds: \"less than a minute\",\r\n        minute: \"about a minute\",\r\n        minutes: \"%d minutes\",\r\n        hour: \"about an hour\",\r\n        hours: \"about %d hours\",\r\n        day: \"a day\",\r\n        days: \"%d days\",\r\n        month: \"about a month\",\r\n        months: \"%d months\",\r\n        year: \"about a year\",\r\n        years: \"%d years\",\r\n        wordSeparator: \" \",\r\n        numbers: []\r\n      }\r\n    },\r\n    inWords: function(distanceMillis) {\r\n      var $l = this.settings.strings;\r\n      var prefix = $l.prefixAgo;\r\n      var suffix = $l.suffixAgo;\r\n      if (this.settings.allowFuture) {\r\n        if (distanceMillis < 0) {\r\n          prefix = $l.prefixFromNow;\r\n          suffix = $l.suffixFromNow;\r\n        }\r\n      }\r\n\r\n      var seconds = Math.abs(distanceMillis) / 1000;\r\n      var minutes = seconds / 60;\r\n      var hours = minutes / 60;\r\n      var days = hours / 24;\r\n      var years = days / 365;\r\n\r\n      function substitute(stringOrFunction, number) {\r\n        var string = $.isFunction(stringOrFunction) ? stringOrFunction(number, distanceMillis) : stringOrFunction;\r\n        var value = ($l.numbers && $l.numbers[number]) || number;\r\n        return string.replace(/%d/i, value);\r\n      }\r\n\r\n      var words = seconds < 45 && substitute($l.seconds, Math.round(seconds)) ||\r\n        seconds < 90 && substitute($l.minute, 1) ||\r\n        minutes < 45 && substitute($l.minutes, Math.round(minutes)) ||\r\n        minutes < 90 && substitute($l.hour, 1) ||\r\n        hours < 24 && substitute($l.hours, Math.round(hours)) ||\r\n        hours < 42 && substitute($l.day, 1) ||\r\n        days < 30 && substitute($l.days, Math.round(days)) ||\r\n        days < 45 && substitute($l.month, 1) ||\r\n        days < 365 && substitute($l.months, Math.round(days / 30)) ||\r\n        years < 1.5 && substitute($l.year, 1) ||\r\n        substitute($l.years, Math.round(years));\r\n\r\n      var separator = $l.wordSeparator || \"\";\r\n      if ($l.wordSeparator === undefined) { separator = \" \"; }\r\n      return $.trim([prefix, words, suffix].join(separator));\r\n    },\r\n    parse: function(iso8601) {\r\n      var s = $.trim(iso8601);\r\n      s = s.replace(/\\.\\d+/,\"\"); // remove milliseconds\r\n      s = s.replace(/-/,\"/\").replace(/-/,\"/\");\r\n      s = s.replace(/T/,\" \").replace(/Z/,\" UTC\");\r\n      s = s.replace(/([\\+\\-]\\d\\d)\\:?(\\d\\d)/,\" $1$2\"); // -04:00 -> -0400\r\n      return new Date(s);\r\n    },\r\n    datetime: function(elem) {\r\n      var iso8601 = $t.isTime(elem) ? $(elem).attr(\"datetime\") : $(elem).attr(\"title\");\r\n      return $t.parse(iso8601);\r\n    },\r\n    isTime: function(elem) {\r\n      // jQuery's `is()` doesn't play well with HTML5 in IE\r\n      return $(elem).get(0).tagName.toLowerCase() === \"time\"; // $(elem).is(\"time\");\r\n    }\r\n  });\r\n\r\n  // functions that can be called via $(el).timeago('action')\r\n  // init is default when no action is given\r\n  // functions are called with context of a single element\r\n  var functions = {\r\n    init: function(){\r\n      var refresh_el = $.proxy(refresh, this);\r\n      refresh_el();\r\n      var $s = $t.settings;\r\n      if ($s.refreshMillis > 0) {\r\n        setInterval(refresh_el, $s.refreshMillis);\r\n      }\r\n    },\r\n    update: function(time){\r\n      $(this).data('timeago', { datetime: $t.parse(time) });\r\n      refresh.apply(this);\r\n    },\r\n    updateFromDOM: function(){\r\n      $(this).data('timeago', { datetime: $t.parse( $t.isTime(this) ? $(this).attr(\"datetime\") : $(this).attr(\"title\") ) });\r\n      refresh.apply(this);\r\n    }\r\n  };\r\n\r\n  $.fn.timeago = function(action, options) {\r\n    var fn = action ? functions[action] : functions.init;\r\n    if(!fn){\r\n      throw new Error(\"Unknown function name '\"+ action +\"' for timeago\");\r\n    }\r\n    // each over objects here and call the requested function\r\n    this.each(function(){\r\n      fn.call(this, options);\r\n    });\r\n    return this;\r\n  };\r\n\r\n  function refresh() {\r\n    var data = prepareData(this);\r\n    var $s = $t.settings;\r\n\r\n    if (!isNaN(data.datetime)) {\r\n      if ( $s.cutoff == 0 || distance(data.datetime) < $s.cutoff) {\r\n        $(this).text(inWords(data.datetime));\r\n      }\r\n    }\r\n    return this;\r\n  }\r\n\r\n  function prepareData(element) {\r\n    element = $(element);\r\n    if (!element.data(\"timeago\")) {\r\n      element.data(\"timeago\", { datetime: $t.datetime(element) });\r\n      var text = $.trim(element.text());\r\n      if ($t.settings.localeTitle) {\r\n        element.attr(\"title\", element.data('timeago').datetime.toLocaleString());\r\n      } else if (text.length > 0 && !($t.isTime(element) && element.attr(\"title\"))) {\r\n        element.attr(\"title\", text);\r\n      }\r\n    }\r\n    return element.data(\"timeago\");\r\n  }\r\n\r\n  function inWords(date) {\r\n    return $t.inWords(distance(date));\r\n  }\r\n\r\n  function distance(date) {\r\n    return (new Date().getTime() - date.getTime());\r\n  }\r\n\r\n  // fix for IE6 suckage\r\n  document.createElement(\"abbr\");\r\n  document.createElement(\"time\");\r\n}));\r\n"
  },
  {
    "path": "main/ngrok/static/js/ngrok.js",
    "content": "var ngrok = angular.module(\"ngrok\", [\"ngSanitize\"]);\r\n\r\nvar hexRepr = function(bytes) {\r\n    var buf = [];\r\n    var ascii = [];\r\n    for (var i=0; i<bytes.length; ++i) {\r\n        var b = bytes[i];\r\n\r\n        if (!(i%8) && i!=0) {\r\n            buf.push(\"\\t\");\r\n            buf.push.apply(buf, ascii)\r\n            buf.push('\\n');\r\n            ascii = [];\r\n        }\r\n\r\n        if (b < 16) {\r\n            buf.push(\"0\");\r\n        }\r\n\r\n        if (b < 0x20 || b > 0x7e) {\r\n            ascii.push('.');\r\n        } else {\r\n            ascii.push(String.fromCharCode(b));\r\n        }\r\n\r\n        buf.push(b.toString(16));\r\n        buf.push(\" \");\r\n        ascii.push(\" \");\r\n    }\r\n\r\n    if (ascii.length > 0) {\r\n        var charsLeft = 8 - (ascii.length / 2);\r\n        for (i=0; i<charsLeft; ++i) {\r\n            buf.push(\"   \");\r\n        }\r\n        buf.push(\"\\t\");\r\n        buf.push.apply(buf, ascii);\r\n    }\r\n\r\n    return buf.join(\"\");\r\n}\r\n\r\nngrok.factory(\"txnSvc\", function() {\r\n    var processBody = function(body, binary) {\r\n        body.binary = binary;\r\n        body.isForm = body.ContentType == \"application/x-www-form-urlencoded\";\r\n        body.exists = body.Length > 0;\r\n        body.hasError = !!body.Error;\r\n\r\n        var syntaxClass = {\r\n            \"text/xml\":               \"xml\",\r\n            \"application/xml\":        \"xml\",\r\n            \"text/html\":              \"xml\",\r\n            \"text/css\":               \"css\",\r\n            \"application/json\":       \"json\",\r\n            \"text/javascript\":        \"javascript\",\r\n            \"application/javascript\": \"javascript\",\r\n        }[body.ContentType];\r\n\r\n        // decode body\r\n        if (binary) {\r\n            body.Text = \"\";\r\n        } else {\r\n            body.Text = Base64.decode(body.Text).text;\r\n        }\r\n\r\n        // prettify\r\n        var transform = {\r\n            \"xml\": \"xml\",\r\n            \"json\": \"json\"\r\n        }[syntaxClass];\r\n\r\n        if (!body.hasError && !!transform) {\r\n            try {\r\n                // vkbeautify does poorly at formatting html\r\n                if (body.ContentType != \"text/html\") {\r\n                    body.Text = vkbeautify[transform](body.Text);\r\n                }\r\n            } catch (e) {\r\n            }\r\n        }\r\n\r\n        if (!!syntaxClass) {\r\n            body.Text = hljs.highlight(syntaxClass, body.Text).value;\r\n        } else {\r\n            // highlight.js doesn't have a 'plaintext' syntax, so we'll just copy its escaping function.\r\n            body.Text = body.Text.replace(/&/gm, '&amp;').replace(/</gm, '&lt;').replace(/>/gm, '&gt;');\r\n        }\r\n    };\r\n\r\n    var processReq = function(req) {\r\n        if (!req.RawBytes) {\r\n            var decoded = Base64.decode(req.Raw);\r\n            req.RawBytes = hexRepr(decoded.bytes);\r\n\r\n            if (!req.Binary) {\r\n                req.RawText = decoded.text;\r\n            }\r\n        }\r\n\r\n        processBody(req.Body, req.Binary);\r\n    };\r\n\r\n    var processResp = function(resp) {\r\n        resp.statusClass = {\r\n            '2': \"text-info\",\r\n            '3': \"muted\",\r\n            '4': \"text-warning\",\r\n            '5': \"text-error\"\r\n        }[resp.Status[0]];\r\n\r\n        if (!resp.RawBytes) {\r\n            var decoded = Base64.decode(resp.Raw);\r\n            resp.RawBytes = hexRepr(decoded.bytes);\r\n\r\n            if (!resp.Binary) {\r\n                resp.RawText = decoded.text;\r\n            }\r\n        }\r\n\r\n        processBody(resp.Body, resp.Binary);\r\n    };\r\n\r\n    var processTxn = function(txn) {\r\n        processReq(txn.Req);\r\n        processResp(txn.Resp);\r\n    };\r\n\r\n    var preprocessTxn = function(txn) {\r\n        var toFixed = function(value, precision) {\r\n            var power = Math.pow(10, precision || 0);\r\n            return String(Math.round(value * power) / power);\r\n        }\r\n        // parse nanosecond count\r\n        var ns = txn.Duration;\r\n        var ms = ns / (1000 * 1000);\r\n        txn.Duration = ms;\r\n        if (ms > 1000) {\r\n            txn.Duration = toFixed(ms / 1000, 2) + \"s\";\r\n        } else {\r\n            txn.Duration = toFixed(ms, 2) + \"ms\";\r\n        }\r\n    };\r\n\r\n\r\n    var active;\r\n    var txns = window.data.Txns;\r\n    txns.forEach(function(t) {\r\n        preprocessTxn(t);\r\n    });\r\n\r\n    var activate = function(txn) {\r\n        if (!txn.processed) {\r\n            processTxn(txn);\r\n            txn.processed = true;\r\n        }\r\n        active = txn;\r\n    }\r\n\r\n    if (txns.length > 0) {\r\n        activate(txns[0]);\r\n    }\r\n\r\n    return {\r\n        add: function(txnData) {\r\n            txns.unshift(JSON.parse(txnData));\r\n            preprocessTxn(txns[0]);\r\n            if (!active) {\r\n                activate(txns[0]);\r\n            }\r\n        },\r\n        all: function() {\r\n            return txns;\r\n        },\r\n        active: function(txn) {\r\n            if (!txn) {\r\n                return active;\r\n            } else {\r\n                activate(txn);\r\n            }\r\n        },\r\n        isActive: function(txn) {\r\n            return !!active && txn.Id == active.Id;\r\n        }\r\n    };\r\n});\r\n\r\nngrok.directive({\r\n    \"keyval\": function() {\r\n        return {\r\n            scope: {\r\n                title: \"@\",\r\n                tuples: \"=\",\r\n            },\r\n            replace: true,\r\n            restrict: \"E\",\r\n            template: \"\" +\r\n            '<div ng-show=\"hasKeys()\">' +\r\n                '<h6>{{title}}</h6>' +\r\n                '<table class=\"table params\">' +\r\n                    '<tr ng-repeat=\"(key, value) in tuples\">' +\r\n                        '<th>{{ key }}</th>' +\r\n                        '<td>{{ value }}</td>' +\r\n                    '</tr>' +\r\n                '</table>' +\r\n            '</div>',\r\n            link: function($scope) {\r\n                $scope.hasKeys = function() {\r\n                    for (key in $scope.tuples) { return true; }\r\n                    return false;\r\n                };\r\n            }\r\n        };\r\n    },\r\n\r\n    \"tabs\": function() {\r\n        return {\r\n            scope: {\r\n                \"tabs\": \"@\",\r\n                \"btn\": \"@\",\r\n                \"onbtnclick\": \"&\"\r\n            },\r\n            replace: true,\r\n            template: '' +\r\n            '<ul class=\"nav nav-pills\">' +\r\n                '<li ng-repeat=\"tab in tabNames\" ng-class=\"{\\'active\\': isTab(tab)}\">' +\r\n                    '<a href=\"\" ng-click=\"setTab(tab)\">{{tab}}</a>' +\r\n                '</li>' +\r\n                '<li ng-show=\"!!btn\" class=\"pull-right\"> <button class=\"btn btn-primary\" ng-click=\"onbtnclick()\">{{btn}}</button></li>' +\r\n            '</ul>',\r\n            link: function postLink(scope, element, attrs) {\r\n                scope.tabNames = attrs.tabs.split(\",\");\r\n                scope.activeTab = scope.tabNames[0];\r\n                scope.setTab = function(t) {\r\n                    scope.activeTab = t;\r\n                };\r\n                scope.$parent.isTab = scope.isTab = function(t) {\r\n                    return t == scope.activeTab;\r\n                };\r\n            },\r\n        };\r\n    },\r\n\r\n    \"body\": function() {\r\n        return {\r\n            scope: {\r\n                \"body\": \"=\",\r\n                \"binary\": \"=\"\r\n            },\r\n            template: '' +\r\n            '<h6 ng-show=\"body.exists\">' +\r\n                '{{ body.Length }} bytes ' +\r\n                '{{ body.RawContentType }}' +\r\n            '</h6>' +\r\n'' +\r\n            '<div ng-show=\"!body.isForm && !body.binary\">' +\r\n                '<pre ng-show=\"body.exists\"><code ng-bind-html=\"body.Text\"></code></pre>' +\r\n            '</div>' +\r\n'' +\r\n            '<div ng-show=\"body.isForm\">' +\r\n                '<keyval title=\"Form Params\" tuples=\"body.Form\">' +\r\n            '</div>' +\r\n            '<div ng-show=\"body.hasError\" class=\"alert\">' +\r\n                '{{ body.Error }}' +\r\n            '</div>',\r\n\r\n            link: function($scope, $elem) {\r\n                $scope.$watch(function() { return $scope.body; }, function() {\r\n                    if ($scope.body && $scope.body.ErrorOffset > -1) {\r\n                        var offset = $scope.body.ErrorOffset;\r\n\r\n                        function textNodes(node) {\r\n                            var textNodes = [];\r\n\r\n                            function getTextNodes(node) {\r\n                                if (node.nodeType == 3) {\r\n                                    textNodes.push(node);\r\n                                } else {\r\n                                    for (var i = 0, len = node.childNodes.length; i < len; ++i) {\r\n                                        getTextNodes(node.childNodes[i]);\r\n                                    }\r\n                                }\r\n                            }\r\n\r\n                            getTextNodes(node);\r\n                            return textNodes;\r\n                        }\r\n\r\n                        var tNodes = textNodes($elem.find(\"code\").get(0));\r\n                        for (var i=0; i<tNodes.length; i++) {\r\n                            offset -= tNodes[i].nodeValue.length;\r\n                            if (offset < 0) {\r\n                                $(tNodes[i]).parent().css(\"background-color\", \"orange\");\r\n                                break;\r\n                            }\r\n                        }\r\n                    }\r\n                });\r\n            }\r\n        };\r\n    }\r\n});\r\n\r\nngrok.controller({\r\n    \"HttpTxns\": function($scope, txnSvc) {\r\n        $scope.tunnels = window.data.UiState.Tunnels;\r\n        $scope.txns = txnSvc.all();\r\n\r\n        if (!!window.WebSocket) {\r\n            var ws = new WebSocket(\"ws://\" + location.host + \"/_ws\");\r\n            ws.onopen = function() {\r\n                console.log(\"connected websocket for real-time updates\");\r\n            };\r\n\r\n            ws.onmessage = function(message) {\r\n                $scope.$apply(function() {\r\n                    txnSvc.add(message.data);\r\n                });\r\n            };\r\n\r\n            ws.onerror = function(err) {\r\n                console.log(\"Web socket error:\")\r\n                console.log(err);\r\n            };\r\n\r\n            ws.onclose = function(cls) {\r\n                console.log(\"Web socket closed:\" + cls);\r\n            };\r\n        }\r\n    },\r\n\r\n    \"HttpRequest\": function($scope, txnSvc) {\r\n        $scope.replay = function() {\r\n            $.ajax({\r\n                type: \"POST\",\r\n                url: \"/http/in/replay\",\r\n                data: { txnid: txnSvc.active().Id }\r\n            });\r\n        }\r\n        var setReq = function() {\r\n            var txn = txnSvc.active();\r\n            if (!!txn && txn.Req) {\r\n                $scope.Req = txnSvc.active().Req;\r\n            } else {\r\n                $scope.Req = null;\r\n            }\r\n        };\r\n        $scope.$watch(function() { return txnSvc.active() }, setReq);\r\n    },\r\n\r\n    \"HttpResponse\": function($scope, $element, txnSvc) {\r\n        var setResp = function() {\r\n            var txn = txnSvc.active();\r\n            if (!!txn && txn.Resp) {\r\n                $scope.Resp = txnSvc.active().Resp;\r\n            } else {\r\n                $scope.Resp = null;\r\n            }\r\n        };\r\n        $scope.$watch(function() { return txnSvc.active() }, setResp);\r\n    },\r\n\r\n    \"TxnNavItem\": function($scope, txnSvc) {\r\n        $scope.isActive = function() { return txnSvc.isActive($scope.txn); }\r\n        $scope.makeActive = function() {\r\n            txnSvc.active($scope.txn);\r\n        };\r\n    },\r\n\r\n    \"HttpTxn\": function($scope, txnSvc, $timeout) {\r\n        var setTxn = function() {\r\n            $scope.Txn = txnSvc.active();\r\n        };\r\n\r\n        $scope.ISO8601 = function(ts) {\r\n            if (!!ts) {\r\n                return new Date(ts * 1000).toISOString();\r\n            }\r\n        };\r\n\r\n        $scope.TimeFormat = function(ts) {\r\n            if (!!ts) {\r\n                return $.timeago($scope.ISO8601(ts));\r\n            }\r\n        };\r\n\r\n        $scope.$watch(function() { return txnSvc.active() }, setTxn);\r\n\r\n        // this causes angular to update the timestamps\r\n        setInterval(function() { $scope.$apply(function() {}); }, 30000);\r\n    },\r\n});\r\n"
  },
  {
    "path": "main/ngrok/static/js/vkbeautify.js",
    "content": "/**\r\n* vkBeautify - javascript plugin to pretty-print or minify text in XML, JSON, CSS and SQL formats.\r\n*  \r\n* Version - 0.99.00.beta \r\n* Copyright (c) 2012 Vadim Kiryukhin\r\n* vkiryukhin @ gmail.com\r\n* http://www.eslinstructor.net/vkbeautify/\r\n* \r\n* Dual licensed under the MIT and GPL licenses:\r\n*   http://www.opensource.org/licenses/mit-license.php\r\n*   http://www.gnu.org/licenses/gpl.html\r\n*\r\n*   Pretty print\r\n*\r\n*        vkbeautify.xml(text [,indent_pattern]);\r\n*        vkbeautify.json(text [,indent_pattern]);\r\n*        vkbeautify.css(text [,indent_pattern]);\r\n*        vkbeautify.sql(text [,indent_pattern]);\r\n*\r\n*        @text - String; text to beatufy;\r\n*        @indent_pattern - Integer | String;\r\n*                Integer:  number of white spaces;\r\n*                String:   character string to visualize indentation ( can also be a set of white spaces )\r\n*   Minify\r\n*\r\n*        vkbeautify.xmlmin(text [,preserve_comments]);\r\n*        vkbeautify.jsonmin(text);\r\n*        vkbeautify.cssmin(text [,preserve_comments]);\r\n*        vkbeautify.sqlmin(text);\r\n*\r\n*        @text - String; text to minify;\r\n*        @preserve_comments - Bool; [optional];\r\n*                Set this flag to true to prevent removing comments from @text ( minxml and mincss functions only. )\r\n*\r\n*   Examples:\r\n*        vkbeautify.xml(text); // pretty print XML\r\n*        vkbeautify.json(text, 4 ); // pretty print JSON\r\n*        vkbeautify.css(text, '. . . .'); // pretty print CSS\r\n*        vkbeautify.sql(text, '----'); // pretty print SQL\r\n*\r\n*        vkbeautify.xmlmin(text, true);// minify XML, preserve comments\r\n*        vkbeautify.jsonmin(text);// minify JSON\r\n*        vkbeautify.cssmin(text);// minify CSS, remove comments ( default )\r\n*        vkbeautify.sqlmin(text);// minify SQL\r\n*\r\n*/\r\n\r\n(function() {\r\n\r\nfunction createShiftArr(step) {\r\n\r\n\tvar space = '    ';\r\n\t\r\n\tif ( isNaN(parseInt(step)) ) {  // argument is string\r\n\t\tspace = step;\r\n\t} else { // argument is integer\r\n\t\tswitch(step) {\r\n\t\t\tcase 1: space = ' '; break;\r\n\t\t\tcase 2: space = '  '; break;\r\n\t\t\tcase 3: space = '   '; break;\r\n\t\t\tcase 4: space = '    '; break;\r\n\t\t\tcase 5: space = '     '; break;\r\n\t\t\tcase 6: space = '      '; break;\r\n\t\t\tcase 7: space = '       '; break;\r\n\t\t\tcase 8: space = '        '; break;\r\n\t\t\tcase 9: space = '         '; break;\r\n\t\t\tcase 10: space = '          '; break;\r\n\t\t\tcase 11: space = '           '; break;\r\n\t\t\tcase 12: space = '            '; break;\r\n\t\t}\r\n\t}\r\n\r\n\tvar shift = ['\\n']; // array of shifts\r\n\tfor(ix=0;ix<100;ix++){\r\n\t\tshift.push(shift[ix]+space); \r\n\t}\r\n\treturn shift;\r\n}\r\n\r\nfunction vkbeautify(){\r\n\tthis.step = '    '; // 4 spaces\r\n\tthis.shift = createShiftArr(this.step);\r\n};\r\n\r\nvkbeautify.prototype.xml = function(text,step) {\r\n\r\n\tvar ar = text.replace(/>\\s{0,}</g,\"><\")\r\n\t\t\t\t .replace(/</g,\"~::~<\")\r\n\t\t\t\t .replace(/\\s*xmlns\\:/g,\"~::~xmlns:\")\r\n\t\t\t\t .replace(/\\s*xmlns\\=/g,\"~::~xmlns=\")\r\n\t\t\t\t .split('~::~'),\r\n\t\tlen = ar.length,\r\n\t\tinComment = false,\r\n\t\tdeep = 0,\r\n\t\tstr = '',\r\n\t\tix = 0,\r\n\t\tshift = step ? createShiftArr(step) : this.shift;\r\n\r\n\t\tfor(ix=0;ix<len;ix++) {\r\n\t\t\t// start comment or <![CDATA[...]]> or <!DOCTYPE //\r\n\t\t\tif(ar[ix].search(/<!/) > -1) { \r\n\t\t\t\tstr += shift[deep]+ar[ix];\r\n\t\t\t\tinComment = true; \r\n\t\t\t\t// end comment  or <![CDATA[...]]> //\r\n\t\t\t\tif(ar[ix].search(/-->/) > -1 || ar[ix].search(/\\]>/) > -1 || ar[ix].search(/!DOCTYPE/) > -1 ) { \r\n\t\t\t\t\tinComment = false; \r\n\t\t\t\t}\r\n\t\t\t} else \r\n\t\t\t// end comment  or <![CDATA[...]]> //\r\n\t\t\tif(ar[ix].search(/-->/) > -1 || ar[ix].search(/\\]>/) > -1) { \r\n\t\t\t\tstr += ar[ix];\r\n\t\t\t\tinComment = false; \r\n\t\t\t} else \r\n\t\t\t// <elm></elm> //\r\n\t\t\tif( /^<\\w/.exec(ar[ix-1]) && /^<\\/\\w/.exec(ar[ix]) &&\r\n\t\t\t\t/^<[\\w:\\-\\.\\,]+/.exec(ar[ix-1]) == /^<\\/[\\w:\\-\\.\\,]+/.exec(ar[ix])[0].replace('/','')) { \r\n\t\t\t\tstr += ar[ix];\r\n\t\t\t\tif(!inComment) deep--;\r\n\t\t\t} else\r\n\t\t\t // <elm> //\r\n\t\t\tif(ar[ix].search(/<\\w/) > -1 && ar[ix].search(/<\\//) == -1 && ar[ix].search(/\\/>/) == -1 ) {\r\n\t\t\t\tstr = !inComment ? str += shift[deep++]+ar[ix] : str += ar[ix];\r\n\t\t\t} else \r\n\t\t\t // <elm>...</elm> //\r\n\t\t\tif(ar[ix].search(/<\\w/) > -1 && ar[ix].search(/<\\//) > -1) {\r\n\t\t\t\tstr = !inComment ? str += shift[deep]+ar[ix] : str += ar[ix];\r\n\t\t\t} else \r\n\t\t\t// </elm> //\r\n\t\t\tif(ar[ix].search(/<\\//) > -1) { \r\n\t\t\t\tstr = !inComment ? str += shift[--deep]+ar[ix] : str += ar[ix];\r\n\t\t\t} else \r\n\t\t\t// <elm/> //\r\n\t\t\tif(ar[ix].search(/\\/>/) > -1 ) { \r\n\t\t\t\tstr = !inComment ? str += shift[deep]+ar[ix] : str += ar[ix];\r\n\t\t\t} else \r\n\t\t\t// <? xml ... ?> //\r\n\t\t\tif(ar[ix].search(/<\\?/) > -1) { \r\n\t\t\t\tstr += shift[deep]+ar[ix];\r\n\t\t\t} else \r\n\t\t\t// xmlns //\r\n\t\t\tif( ar[ix].search(/xmlns\\:/) > -1  || ar[ix].search(/xmlns\\=/) > -1) { \r\n\t\t\t\tstr += shift[deep]+ar[ix];\r\n\t\t\t} \r\n\t\t\t\r\n\t\t\telse {\r\n\t\t\t\tstr += ar[ix];\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\treturn  (str[0] == '\\n') ? str.slice(1) : str;\r\n}\r\n\r\nvkbeautify.prototype.json = function(text,step) {\r\n\r\n\tvar step = step ? step : this.step;\r\n\t\r\n\tif (typeof JSON === 'undefined' ) return text; \r\n\t\r\n\tif ( typeof text === \"string\" ) return JSON.stringify(JSON.parse(text), null, step);\r\n\tif ( typeof text === \"object\" ) return JSON.stringify(text, null, step);\r\n\t\t\r\n\treturn text; // text is not string nor object\r\n}\r\n\r\nvkbeautify.prototype.css = function(text, step) {\r\n\r\n\tvar ar = text.replace(/\\s{1,}/g,' ')\r\n\t\t\t\t.replace(/\\{/g,\"{~::~\")\r\n\t\t\t\t.replace(/\\}/g,\"~::~}~::~\")\r\n\t\t\t\t.replace(/\\;/g,\";~::~\")\r\n\t\t\t\t.replace(/\\/\\*/g,\"~::~/*\")\r\n\t\t\t\t.replace(/\\*\\//g,\"*/~::~\")\r\n\t\t\t\t.replace(/~::~\\s{0,}~::~/g,\"~::~\")\r\n\t\t\t\t.split('~::~'),\r\n\t\tlen = ar.length,\r\n\t\tdeep = 0,\r\n\t\tstr = '',\r\n\t\tix = 0,\r\n\t\tshift = step ? createShiftArr(step) : this.shift;\r\n\t\t\r\n\t\tfor(ix=0;ix<len;ix++) {\r\n\r\n\t\t\tif( /\\{/.exec(ar[ix]))  { \r\n\t\t\t\tstr += shift[deep++]+ar[ix];\r\n\t\t\t} else \r\n\t\t\tif( /\\}/.exec(ar[ix]))  { \r\n\t\t\t\tstr += shift[--deep]+ar[ix];\r\n\t\t\t} else\r\n\t\t\tif( /\\*\\\\/.exec(ar[ix]))  { \r\n\t\t\t\tstr += shift[deep]+ar[ix];\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tstr += shift[deep]+ar[ix];\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn str.replace(/^\\n{1,}/,'');\r\n}\r\n\r\n//----------------------------------------------------------------------------\r\n\r\nfunction isSubquery(str, parenthesisLevel) {\r\n\treturn  parenthesisLevel - (str.replace(/\\(/g,'').length - str.replace(/\\)/g,'').length )\r\n}\r\n\r\nfunction split_sql(str, tab) {\r\n\r\n\treturn str.replace(/\\s{1,}/g,\" \")\r\n\r\n\t\t\t\t.replace(/ AND /ig,\"~::~\"+tab+tab+\"AND \")\r\n\t\t\t\t.replace(/ BETWEEN /ig,\"~::~\"+tab+\"BETWEEN \")\r\n\t\t\t\t.replace(/ CASE /ig,\"~::~\"+tab+\"CASE \")\r\n\t\t\t\t.replace(/ ELSE /ig,\"~::~\"+tab+\"ELSE \")\r\n\t\t\t\t.replace(/ END /ig,\"~::~\"+tab+\"END \")\r\n\t\t\t\t.replace(/ FROM /ig,\"~::~FROM \")\r\n\t\t\t\t.replace(/ GROUP\\s{1,}BY/ig,\"~::~GROUP BY \")\r\n\t\t\t\t.replace(/ HAVING /ig,\"~::~HAVING \")\r\n\t\t\t\t//.replace(/ SET /ig,\" SET~::~\")\r\n\t\t\t\t.replace(/ IN /ig,\" IN \")\r\n\t\t\t\t\r\n\t\t\t\t.replace(/ JOIN /ig,\"~::~JOIN \")\r\n\t\t\t\t.replace(/ CROSS~::~{1,}JOIN /ig,\"~::~CROSS JOIN \")\r\n\t\t\t\t.replace(/ INNER~::~{1,}JOIN /ig,\"~::~INNER JOIN \")\r\n\t\t\t\t.replace(/ LEFT~::~{1,}JOIN /ig,\"~::~LEFT JOIN \")\r\n\t\t\t\t.replace(/ RIGHT~::~{1,}JOIN /ig,\"~::~RIGHT JOIN \")\r\n\t\t\t\t\r\n\t\t\t\t.replace(/ ON /ig,\"~::~\"+tab+\"ON \")\r\n\t\t\t\t.replace(/ OR /ig,\"~::~\"+tab+tab+\"OR \")\r\n\t\t\t\t.replace(/ ORDER\\s{1,}BY/ig,\"~::~ORDER BY \")\r\n\t\t\t\t.replace(/ OVER /ig,\"~::~\"+tab+\"OVER \")\r\n\r\n\t\t\t\t.replace(/\\(\\s{0,}SELECT /ig,\"~::~(SELECT \")\r\n\t\t\t\t.replace(/\\)\\s{0,}SELECT /ig,\")~::~SELECT \")\r\n\t\t\t\t\r\n\t\t\t\t.replace(/ THEN /ig,\" THEN~::~\"+tab+\"\")\r\n\t\t\t\t.replace(/ UNION /ig,\"~::~UNION~::~\")\r\n\t\t\t\t.replace(/ USING /ig,\"~::~USING \")\r\n\t\t\t\t.replace(/ WHEN /ig,\"~::~\"+tab+\"WHEN \")\r\n\t\t\t\t.replace(/ WHERE /ig,\"~::~WHERE \")\r\n\t\t\t\t.replace(/ WITH /ig,\"~::~WITH \")\r\n\t\t\t\t\r\n\t\t\t\t//.replace(/\\,\\s{0,}\\(/ig,\",~::~( \")\r\n\t\t\t\t//.replace(/\\,/ig,\",~::~\"+tab+tab+\"\")\r\n\r\n\t\t\t\t.replace(/ ALL /ig,\" ALL \")\r\n\t\t\t\t.replace(/ AS /ig,\" AS \")\r\n\t\t\t\t.replace(/ ASC /ig,\" ASC \")\t\r\n\t\t\t\t.replace(/ DESC /ig,\" DESC \")\t\r\n\t\t\t\t.replace(/ DISTINCT /ig,\" DISTINCT \")\r\n\t\t\t\t.replace(/ EXISTS /ig,\" EXISTS \")\r\n\t\t\t\t.replace(/ NOT /ig,\" NOT \")\r\n\t\t\t\t.replace(/ NULL /ig,\" NULL \")\r\n\t\t\t\t.replace(/ LIKE /ig,\" LIKE \")\r\n\t\t\t\t.replace(/\\s{0,}SELECT /ig,\"SELECT \")\r\n\t\t\t\t.replace(/\\s{0,}UPDATE /ig,\"UPDATE \")\r\n\t\t\t\t.replace(/ SET /ig,\" SET \")\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t.replace(/~::~{1,}/g,\"~::~\")\r\n\t\t\t\t.split('~::~');\r\n}\r\n\r\nvkbeautify.prototype.sql = function(text,step) {\r\n\r\n\tvar ar_by_quote = text.replace(/\\s{1,}/g,\" \")\r\n\t\t\t\t\t\t\t.replace(/\\'/ig,\"~::~\\'\")\r\n\t\t\t\t\t\t\t.split('~::~'),\r\n\t\tlen = ar_by_quote.length,\r\n\t\tar = [],\r\n\t\tdeep = 0,\r\n\t\ttab = this.step,//+this.step,\r\n\t\tinComment = true,\r\n\t\tinQuote = false,\r\n\t\tparenthesisLevel = 0,\r\n\t\tstr = '',\r\n\t\tix = 0,\r\n\t\tshift = step ? createShiftArr(step) : this.shift;;\r\n\r\n\t\tfor(ix=0;ix<len;ix++) {\r\n\t\t\tif(ix%2) {\r\n\t\t\t\tar = ar.concat(ar_by_quote[ix]);\r\n\t\t\t} else {\r\n\t\t\t\tar = ar.concat(split_sql(ar_by_quote[ix], tab) );\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\tlen = ar.length;\r\n\t\tfor(ix=0;ix<len;ix++) {\r\n\t\t\t\r\n\t\t\tparenthesisLevel = isSubquery(ar[ix], parenthesisLevel);\r\n\t\t\t\r\n\t\t\tif( /\\s{0,}\\s{0,}SELECT\\s{0,}/.exec(ar[ix]))  { \r\n\t\t\t\tar[ix] = ar[ix].replace(/\\,/g,\",\\n\"+tab+tab+\"\")\r\n\t\t\t} \r\n\t\t\t\r\n\t\t\tif( /\\s{0,}\\s{0,}SET\\s{0,}/.exec(ar[ix]))  { \r\n\t\t\t\tar[ix] = ar[ix].replace(/\\,/g,\",\\n\"+tab+tab+\"\")\r\n\t\t\t} \r\n\t\t\t\r\n\t\t\tif( /\\s{0,}\\(\\s{0,}SELECT\\s{0,}/.exec(ar[ix]))  { \r\n\t\t\t\tdeep++;\r\n\t\t\t\tstr += shift[deep]+ar[ix];\r\n\t\t\t} else \r\n\t\t\tif( /\\'/.exec(ar[ix]) )  { \r\n\t\t\t\tif(parenthesisLevel<1 && deep) {\r\n\t\t\t\t\tdeep--;\r\n\t\t\t\t}\r\n\t\t\t\tstr += ar[ix];\r\n\t\t\t}\r\n\t\t\telse  { \r\n\t\t\t\tstr += shift[deep]+ar[ix];\r\n\t\t\t\tif(parenthesisLevel<1 && deep) {\r\n\t\t\t\t\tdeep--;\r\n\t\t\t\t}\r\n\t\t\t} \r\n\t\t\tvar junk = 0;\r\n\t\t}\r\n\r\n\t\tstr = str.replace(/^\\n{1,}/,'').replace(/\\n{1,}/g,\"\\n\");\r\n\t\treturn str;\r\n}\r\n\r\n\r\nvkbeautify.prototype.xmlmin = function(text, preserveComments) {\r\n\r\n\tvar str = preserveComments ? text\r\n\t\t\t\t\t\t\t   : text.replace(/\\<![ \\r\\n\\t]*(--([^\\-]|[\\r\\n]|-[^\\-])*--[ \\r\\n\\t]*)\\>/g,\"\")\r\n\t\t\t\t\t\t\t\t\t .replace(/[ \\r\\n\\t]{1,}xmlns/g, ' xmlns');\r\n\treturn  str.replace(/>\\s{0,}</g,\"><\"); \r\n}\r\n\r\nvkbeautify.prototype.jsonmin = function(text) {\r\n\r\n\tif (typeof JSON === 'undefined' ) return text; \r\n\t\r\n\treturn JSON.stringify(JSON.parse(text), null, 0); \r\n\t\t\t\t\r\n}\r\n\r\nvkbeautify.prototype.cssmin = function(text, preserveComments) {\r\n\t\r\n\tvar str = preserveComments ? text\r\n\t\t\t\t\t\t\t   : text.replace(/\\/\\*([^*]|[\\r\\n]|(\\*+([^*/]|[\\r\\n])))*\\*+\\//g,\"\") ;\r\n\r\n\treturn str.replace(/\\s{1,}/g,' ')\r\n\t\t\t  .replace(/\\{\\s{1,}/g,\"{\")\r\n\t\t\t  .replace(/\\}\\s{1,}/g,\"}\")\r\n\t\t\t  .replace(/\\;\\s{1,}/g,\";\")\r\n\t\t\t  .replace(/\\/\\*\\s{1,}/g,\"/*\")\r\n\t\t\t  .replace(/\\*\\/\\s{1,}/g,\"*/\");\r\n}\r\n\r\nvkbeautify.prototype.sqlmin = function(text) {\r\n\treturn text.replace(/\\s{1,}/g,\" \").replace(/\\s{1,}\\(/,\"(\").replace(/\\s{1,}\\)/,\")\");\r\n}\r\n\r\nwindow.vkbeautify = new vkbeautify();\r\n\r\n})();\r\n\r\n"
  },
  {
    "path": "main/ngrokd/ngrokd.go",
    "content": "package main\r\n\r\nimport (\r\n\t\"cngrok/server\"\r\n)\r\n\r\nfunc main() {\r\n\tserver.Main()\r\n}\r\n"
  },
  {
    "path": "main/ngrokd/run.bat",
    "content": "ngrokd.exe -domain=\"hexcode.cn\" -httpAddr=\":8081\" -httpsAddr=\":8082\" -log ./ngrokd.log &"
  },
  {
    "path": "main/ngrokd/snakeoil.crt",
    "content": "-----BEGIN CERTIFICATE-----\nMIICpjCCAY4CCQC3ZsXK+JGnLjANBgkqhkiG9w0BAQUFADAVMRMwEQYDVQQDDApj\nbmdyb2suY29tMB4XDTE4MDgzMDEzNDg1NloXDTMyMDUwODEzNDg1NlowFTETMBEG\nA1UEAwwKY25ncm9rLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nANucjNvJ0lu9NPlpUOpljGR9iRh52Owj/gEWU3wt4MDiGD4MS7wqyFxOHmGMG4yb\nO2/zHI3Tm/he6EqQCZRftMVSHiKKLPmKHCO1VnxTvEb8CG+8Hie+FuNs9UqUsvI+\nt2plDVd1OHEJBICnRaPazdSfQx5/8z9I1dpvjhQVXzHtFvbRpUR9ScQ7y8RH3Y0V\neEWt7wWX+SjXkOGA1Pf0KT2tKfpor1Vy8CZrlfypV8CsOCS/+mOLo3KPSOtKPhSZ\nGWMLSNlkrJL+zZ3M+NCF8es6STr7uxUEL76QeE2LOQJD6CzlkMFFdSgsSi4rp1yV\ne+Y5qgIDP0DqAuYIbW1qd88CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAyl1e21sQ\nkViuKhwmGbDCJxBvXVUPAZ+0GHV6NQFo4jrrSzV34TGLy2BK5Keq3KmYqgDxnLIG\nu+swvMr4pReYr8NzKzf8FoZierk8lol2uYwdOgl5R06Sq1oujP/4hH2mcJW1iCNM\nFoOtGmJRDAAoC/usUPuhFUz4idUA9tf5O1hyjScmAK0PL3mhjdXve/8WfUYdWZjh\nvT955vDsgM9Y0SnIbr79HgNN3BSo9OsVhxqRDTbwcP413bMqGG2e5O6azG3YKO7v\nivHe7PoQKpo86atlfMUL0Q643NRkreywqixg1FQIvaAHV8symb0V7Bkxbbi5ym95\n6wtq6EdxLwoLBw==\n-----END CERTIFICATE-----\n"
  },
  {
    "path": "main/ngrokd/snakeoil.key",
    "content": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEA25yM28nSW700+WlQ6mWMZH2JGHnY7CP+ARZTfC3gwOIYPgxL\nvCrIXE4eYYwbjJs7b/McjdOb+F7oSpAJlF+0xVIeIoos+YocI7VWfFO8RvwIb7we\nJ74W42z1SpSy8j63amUNV3U4cQkEgKdFo9rN1J9DHn/zP0jV2m+OFBVfMe0W9tGl\nRH1JxDvLxEfdjRV4Ra3vBZf5KNeQ4YDU9/QpPa0p+mivVXLwJmuV/KlXwKw4JL/6\nY4ujco9I60o+FJkZYwtI2WSskv7Nncz40IXx6zpJOvu7FQQvvpB4TYs5AkPoLOWQ\nwUV1KCxKLiunXJV75jmqAgM/QOoC5ghtbWp3zwIDAQABAoIBAGMl5qJEF+i7H3OL\nDLEGb7/evUqDmF/kUAUFo2NpAxOSAAfjXT3ywsqJqkW4D6gHXWpJhBaz9rLHhnBD\nX0/RdbewP1Kwt2Vh6RpmAEnZNCOIHfb0I1kmBQdgZc3qHHApyH0Mal2V2omN3K6I\n1nQHkO3xiUf31EY6B/K6cpa2n2fWH9YP+4FA3Lem9VgwVa5yomwtzOqKtnVzCLVr\n4YZEy98NHaOmx/aoHUAfG4EDtfasBqUJ38NxdAq/NZraNOrQIo3EDdKszMI1g1/Q\ne5mNC8orYw0q8DVfW/tvMOHcpos++TbDOYEpVZq7t0BKYfpUMbFXAwMdGl7+1BjY\n8VB1iEECgYEA/7w1xhP3RTDoQ/jY769WFIT03AFAfsWtc8Ia+0De6UHdaTK5UrYp\nRNgu4IKknCBcA22L44LU2r3BRFVG9bG0hHlpuUi1GvQON2QHnTOtIffKu5dBnz77\naJy+g1D0zlgRex/9cll8aGxrokkm54KUo68gCuTFlcK4X3AMOC70s4cCgYEA29bD\nujeC4tPfymOXySgwIxRevH4QPq+i+6b0aZlnQP0VYS8yHdRpTWAyKBCSoxpKn17G\nIX3B5dhR1tDHp3KG4mKH9DfSodxiku0mDza+8rRrqqMEgWAFyjAnv7/e6xBQW8QE\nZEbh8as7mmWt5ZGeLNrK8/2kZvlswgXp2MHyu3kCgYEAlbW6zTCXCxxsfI5LgVVl\n0TFcnwbkmNJkjmXNodUCKg9y7MjTEQau9iyQlMImV3fiJeeVgyTuMvfvEm/R0Let\nc/gX2m4kB5lkUSzwAClma4JCXrtXoUAfschBB2L3TWzlHu1FVBHq8L637BNjARjC\np2g4G+h9ewS5JrXTkXh7rDUCgYEA02+joB5zzCVrQAS5n8b/RT36P+AfT6stXkwd\nFtNr8512SppR4U7CWKEEnHQUFLrcups0hFGng6CiVbFH1UzZXjLV/5URCIwmYpmj\n2U4WKOhOBTf0xVnNN8FI+atYg0yVfSzx7GAgP4cpND5HGl0LfKiSOkjhLgkHCTUW\nzFr9UkECgYEA/o/FI1UV0o1KhDWVMtV5CRiYRT6XEZ6tRGgbgVSTnMN4yY3nXisf\no4mO1D0BqmgY/iBZF8HJIf2d34b+EYfSTlPWbfjllW6rUdHVLFSUkkd44jk33UqS\nv8+SsvGIq/6PVqRDbSHbT6SVfBCikejLX29pi/Ppl2RROVUS/9+5G0w=\n-----END RSA PRIVATE KEY-----\n"
  },
  {
    "path": "main/rootCA.key",
    "content": "-----BEGIN RSA PRIVATE KEY-----\nMIIEpQIBAAKCAQEA8uCdZUACe+bsNLUAfgX7Ys4gBNAi1T4L/gBX1FQ9xpOs04C2\nruSfGWDwLalh4lL4UAvIB3vMnc47a8rlGoCFl5AXfEb511ckpFHQba//4LtLnM1f\nswKQeymyYh9lbE2OvKcitmzQE/bXaRwcBW9NAxOIY9R/bZSWV1mW+VvnONJ/JoCX\nIZHrOOpA5xH/7/YWLIwYH/tqXGlvwiql+k3XSVGlX+PBRZiBwLRTEEz0KuYDdN0h\nIlA0LknaAPtl0uK+HowyFzA4iAEGTX9B2cg3m0Mrgis9zvuhtIl0y9mQLDQqi5/B\nJftxGfp/CFK9vUibsYM7Jir+MVt4bl3OEp6KbQIDAQABAoIBAQDk67cOtt1ggVCD\ngVL8dZDzGQtu3ernCPtupk4iUGCFqa1NENWfVNdsqUTYFP2wv7lSYThhbVt4Jek1\n+WAlsZu5NlQcjB1yza04v/BvYmMQJBjpq12XMUSTAcMj3ynOge+WewYp4bfiCVgR\nty/mI3j3/FIiniiZVWK65DN7xxbSIycs/GIrS73klbbZOvs1dT3jK+p69VZxEnGr\nTr4paBu6V5QX3mmjArkuqMZT0trNpN3jyqMSfrLOogd3P29EQ19ZiHdatVwwDrgb\nGTyR0Zth7M/sKsnOQXD5+VrOqGcq1TVbOyF7GH777ss/3D9CGvj8++3jFURoL5Ud\n4mA2ToEVAoGBAPn/QrGOxBghUA1xRThY7J7JqCQY0QaAQTT7hprma092nXiRk/h8\n6nEBl+fhIzCQhYhY6o8rGO9j3Mc38jJ05Yx3gtapNSn5SgEWRt3vOC5nzOKywN4e\nIgX4iZwcDCDjfOB7cE8NwOwed8i5XXo+NmOOFrjcmaUhYGEvvNixwZn3AoGBAPi1\nltiZTo0Wu9FvL663ze1mFzdMp4wnWS8AviNjQ7K8X3JDX+22XVdW8XZxIcmrFHaU\nsNEQDcp5Ky6fJkZz/Rq45TChWuhXPkp7FijQSFvXUfStEpSI/R7G08KF0tbzF6T4\nvSEhQDvy+nMcAWf08Ypw5PPHsio2gsNGNOpJCMW7AoGBAIClr+9pNVXphqV0PZey\ngwlvYnw43Q/IXkXijbEWk/BPbNeHqqq7tXUzybUEsTQjmuPARewo1GsUa5+FFbiL\nWTkAoy7N4lLYOxH2Ib/Bg5q1xcR/Eir7PKzv6fiQolkmV7O5MeEshbO8Ng3v/b+T\nVi/DBcRZmSNV2qAIjdjBGIyfAoGAPFbyDgLDx/8n+hvbmawGTf5iy4vRanNxc7He\nb395wTdqgLJP58BCzRnO40l3RRI4mLxiWZZngiP7kggSpS0mzwDkufOrtorUFgXe\nznAZ3g5TV+VViKvjnT/nyF3nVTcNGX0vhYYnq2O714mH3czTfR7+rRZZ51vqRa4W\n0HB/rFkCgYEAq8RCJIBAH16g7LoCORWI0QKuLa2BfnT1+Dz4w1KHLPC/iBRsyuFU\ngFMo/dQv4p/qfidwyhysIBeScu7ocBuPGM08cn6UGPYVmRIjgR4N+Qw+VGKHS7DG\nlu84YzY31dUFxzIIr1PskFuqa/U6CMsMuIYFEEWb+u3dcv+0Kg1Cmtw=\n-----END RSA PRIVATE KEY-----\n"
  },
  {
    "path": "main/rootCA.pem",
    "content": "-----BEGIN CERTIFICATE-----\nMIICpjCCAY4CCQDy+nhdPw9uMTANBgkqhkiG9w0BAQsFADAVMRMwEQYDVQQDDApj\nbmdyb2suY29tMB4XDTE4MDgzMDEzNDg1M1oXDTMyMDUwODEzNDg1M1owFTETMBEG\nA1UEAwwKY25ncm9rLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB\nAPLgnWVAAnvm7DS1AH4F+2LOIATQItU+C/4AV9RUPcaTrNOAtq7knxlg8C2pYeJS\n+FALyAd7zJ3OO2vK5RqAhZeQF3xG+ddXJKRR0G2v/+C7S5zNX7MCkHspsmIfZWxN\njrynIrZs0BP212kcHAVvTQMTiGPUf22UlldZlvlb5zjSfyaAlyGR6zjqQOcR/+/2\nFiyMGB/7alxpb8IqpfpN10lRpV/jwUWYgcC0UxBM9CrmA3TdISJQNC5J2gD7ZdLi\nvh6MMhcwOIgBBk1/QdnIN5tDK4IrPc77obSJdMvZkCw0KoufwSX7cRn6fwhSvb1I\nm7GDOyYq/jFbeG5dzhKeim0CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEA04XIzn+b\n2V3g8otGISALIOCr/W8bKYaxa3dJbw72qTr4t6awRhI2qRQsz61nFso2X0IYxR7d\nbwPTN3Zix/VG57hmljKkeQ4P+NmPfqVePxrl4qGVr/hJsi3/7t4sTeIt5DmUNFm7\n0u0pzdz9bh4sQ0OgkBkSfxF1DjgjzWXANA50A7egMoD2bfEoGXXG/oP8kpMZq/ME\nbGCwuJtWaqxSfUgD2ZnSCOVO10NISDYC33CusUda8SQn5j1+xPs0pBJWFIuKDy2C\ngMFdqvI1I4rr2EJs4GzTh44oi9lX8tOB1MFLOyMrkP9R7A8Gir1ioWouaQbmxtub\nw8myJg1NsaXATg==\n-----END CERTIFICATE-----\n"
  },
  {
    "path": "main/rootCA.srl",
    "content": "B766C5CAF891A72E\n"
  },
  {
    "path": "msg/conn.go",
    "content": "package msg\r\n\r\nimport (\r\n\t\"cngrok/conn\"\r\n\t\"encoding/binary\"\r\n\t\"errors\"\r\n\t\"fmt\"\r\n)\r\n\r\nfunc readMsgShared(c conn.Conn) (buffer []byte, err error) {\r\n\tc.Debug(\"Waiting to read message\")\r\n\r\n\tvar sz int64\r\n\terr = binary.Read(c, binary.LittleEndian, &sz)\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\tc.Debug(\"Reading message with length: %d\", sz)\r\n\r\n\tbuffer = make([]byte, sz)\r\n\tn, err := c.Read(buffer)\r\n\tc.Debug(\"Read message %s\", buffer)\r\n\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tif int64(n) != sz {\r\n\t\terr = errors.New(fmt.Sprintf(\"Expected to read %d bytes, but only read %d\", sz, n))\r\n\t\treturn\r\n\t}\r\n\r\n\treturn\r\n}\r\n\r\nfunc ReadMsg(c conn.Conn) (msg Message, err error) {\r\n\tbuffer, err := readMsgShared(c)\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\treturn Unpack(buffer)\r\n}\r\n\r\nfunc ReadMsgInto(c conn.Conn, msg Message) (err error) {\r\n\tbuffer, err := readMsgShared(c)\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\treturn UnpackInto(buffer, msg)\r\n}\r\n\r\nfunc WriteMsg(c conn.Conn, msg interface{}) (err error) {\r\n\tbuffer, err := Pack(msg)\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tc.Debug(\"Writing message: %s\", string(buffer))\r\n\terr = binary.Write(c, binary.LittleEndian, int64(len(buffer)))\r\n\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tif _, err = c.Write(buffer); err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\treturn nil\r\n}\r\n"
  },
  {
    "path": "msg/msg.go",
    "content": "package msg\r\n\r\nimport (\r\n\t\"encoding/json\"\r\n\t\"reflect\"\r\n)\r\n\r\nvar TypeMap map[string]reflect.Type\r\n\r\nfunc init() {\r\n\tTypeMap = make(map[string]reflect.Type)\r\n\r\n\tt := func(obj interface{}) reflect.Type { return reflect.TypeOf(obj).Elem() }\r\n\tTypeMap[\"Auth\"] = t((*Auth)(nil))\r\n\tTypeMap[\"AuthResp\"] = t((*AuthResp)(nil))\r\n\tTypeMap[\"ReqTunnel\"] = t((*ReqTunnel)(nil))\r\n\tTypeMap[\"NewTunnel\"] = t((*NewTunnel)(nil))\r\n\tTypeMap[\"RegProxy\"] = t((*RegProxy)(nil))\r\n\tTypeMap[\"ReqProxy\"] = t((*ReqProxy)(nil))\r\n\tTypeMap[\"StartProxy\"] = t((*StartProxy)(nil))\r\n\tTypeMap[\"Ping\"] = t((*Ping)(nil))\r\n\tTypeMap[\"Pong\"] = t((*Pong)(nil))\r\n}\r\n\r\ntype Message interface{}\r\n\r\ntype Envelope struct {\r\n\tType    string\r\n\tPayload json.RawMessage\r\n}\r\n\r\n// When a client opens a new control channel to the server\r\n// it must start by sending an Auth message.\r\ntype Auth struct {\r\n\tVersion   string // protocol version\r\n\tMmVersion string // major/minor software version (informational only)\r\n\tUser      string\r\n\tPassword  string\r\n\tOS        string\r\n\tArch      string\r\n\tClientId  string // empty for new sessions\r\n}\r\n\r\n// A server responds to an Auth message with an\r\n// AuthResp message over the control channel.\r\n//\r\n// If Error is not the empty string\r\n// the server has indicated it will not accept\r\n// the new session and will close the connection.\r\n//\r\n// The server response includes a unique ClientId\r\n// that is used to associate and authenticate future\r\n// proxy connections via the same field in RegProxy messages.\r\ntype AuthResp struct {\r\n\tVersion   string\r\n\tMmVersion string\r\n\tClientId  string\r\n\tError     string\r\n}\r\n\r\n// A client sends this message to the server over the control channel\r\n// to request a new tunnel be opened on the client's behalf.\r\n// ReqId is a random number set by the client that it can pull\r\n// from future NewTunnel's to correlate then to the requesting ReqTunnel.\r\ntype ReqTunnel struct {\r\n\tReqId    string\r\n\tProtocol string\r\n\r\n\t// http only\r\n\tHostname  string\r\n\tSubdomain string\r\n\tHttpAuth  string\r\n\r\n\t// tcp only\r\n\tRemotePort uint16\r\n}\r\n\r\n// When the server opens a new tunnel on behalf of\r\n// a client, it sends a NewTunnel message to notify the client.\r\n// ReqId is the ReqId from the corresponding ReqTunnel message.\r\n//\r\n// A client may receive *multiple* NewTunnel messages from a single\r\n// ReqTunnel. (ex. A client opens an https tunnel and the server\r\n// chooses to open an http tunnel of the same name as well)\r\ntype NewTunnel struct {\r\n\tReqId    string\r\n\tUrl      string\r\n\tProtocol string\r\n\tError    string\r\n}\r\n\r\n// When the server wants to initiate a new tunneled connection, it sends\r\n// this message over the control channel to the client. When a client receives\r\n// this message, it must initiate a new proxy connection to the server.\r\ntype ReqProxy struct {\r\n}\r\n\r\n// After a client receives a ReqProxy message, it opens a new\r\n// connection to the server and sends a RegProxy message.\r\ntype RegProxy struct {\r\n\tClientId string\r\n}\r\n\r\n// This message is sent by the server to the client over a *proxy* connection before it\r\n// begins to send the bytes of the proxied request.\r\ntype StartProxy struct {\r\n\tUrl        string // URL of the tunnel this connection connection is being proxied for\r\n\tClientAddr string // Network address of the client initiating the connection to the tunnel\r\n}\r\n\r\n// A client or server may send this message periodically over\r\n// the control channel to request that the remote side acknowledge\r\n// its connection is still alive. The remote side must respond with a Pong.\r\ntype Ping struct {\r\n}\r\n\r\n// Sent by a client or server over the control channel to indicate\r\n// it received a Ping.\r\ntype Pong struct {\r\n}\r\n"
  },
  {
    "path": "msg/pack.go",
    "content": "package msg\r\n\r\nimport (\r\n\t\"encoding/json\"\r\n\t\"errors\"\r\n\t\"fmt\"\r\n\t\"reflect\"\r\n)\r\n\r\nfunc unpack(buffer []byte, msgIn Message) (msg Message, err error) {\r\n\tvar env Envelope\r\n\tif err = json.Unmarshal(buffer, &env); err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tif msgIn == nil {\r\n\t\tt, ok := TypeMap[env.Type]\r\n\r\n\t\tif !ok {\r\n\t\t\terr = errors.New(fmt.Sprintf(\"Unsupported message type %s\", env.Type))\r\n\t\t\treturn\r\n\t\t}\r\n\r\n\t\t// guess type\r\n\t\tmsg = reflect.New(t).Interface().(Message)\r\n\t} else {\r\n\t\tmsg = msgIn\r\n\t}\r\n\r\n\terr = json.Unmarshal(env.Payload, &msg)\r\n\treturn\r\n}\r\n\r\nfunc UnpackInto(buffer []byte, msg Message) (err error) {\r\n\t_, err = unpack(buffer, msg)\r\n\treturn\r\n}\r\n\r\nfunc Unpack(buffer []byte) (msg Message, err error) {\r\n\treturn unpack(buffer, nil)\r\n}\r\n\r\nfunc Pack(payload interface{}) ([]byte, error) {\r\n\treturn json.Marshal(struct {\r\n\t\tType    string\r\n\t\tPayload interface{}\r\n\t}{\r\n\t\tType:    reflect.TypeOf(payload).Elem().Name(),\r\n\t\tPayload: payload,\r\n\t})\r\n}\r\n"
  },
  {
    "path": "proto/http.go",
    "content": "package proto\r\n\r\nimport (\r\n\t\"bufio\"\r\n\t\"bytes\"\r\n\t\"cngrok/conn\"\r\n\t\"cngrok/util\"\r\n\t\"io\"\r\n\t\"io/ioutil\"\r\n\t\"net\"\r\n\t\"net/http\"\r\n\t\"net/http/httputil\"\r\n\t\"net/url\"\r\n\t\"strings\"\r\n\t\"sync\"\r\n\t\"time\"\r\n\r\n\tmetrics \"github.com/rcrowley/go-metrics\"\r\n)\r\n\r\ntype HttpRequest struct {\r\n\t*http.Request\r\n\tBodyBytes []byte\r\n}\r\n\r\ntype HttpResponse struct {\r\n\t*http.Response\r\n\tBodyBytes []byte\r\n}\r\n\r\ntype HttpTxn struct {\r\n\tReq         *HttpRequest\r\n\tResp        *HttpResponse\r\n\tStart       time.Time\r\n\tDuration    time.Duration\r\n\tUserCtx     interface{}\r\n\tConnUserCtx interface{}\r\n}\r\n\r\ntype Http struct {\r\n\tTxns     *util.Broadcast\r\n\treqGauge metrics.Gauge\r\n\treqMeter metrics.Meter\r\n\treqTimer metrics.Timer\r\n}\r\n\r\nfunc NewHttp() *Http {\r\n\treturn &Http{\r\n\t\tTxns:     util.NewBroadcast(),\r\n\t\treqGauge: metrics.NewGauge(),\r\n\t\treqMeter: metrics.NewMeter(),\r\n\t\treqTimer: metrics.NewTimer(),\r\n\t}\r\n}\r\n\r\nfunc extractBody(r io.Reader) ([]byte, io.ReadCloser, error) {\r\n\tbuf := new(bytes.Buffer)\r\n\t_, err := buf.ReadFrom(r)\r\n\treturn buf.Bytes(), ioutil.NopCloser(buf), err\r\n}\r\n\r\nfunc (h *Http) GetName() string { return \"http\" }\r\n\r\nfunc (h *Http) WrapConn(c conn.Conn, ctx interface{}) conn.Conn {\r\n\ttee := conn.NewTee(c)\r\n\tlastTxn := make(chan *HttpTxn)\r\n\tgo h.readRequests(tee, lastTxn, ctx)\r\n\tgo h.readResponses(tee, lastTxn)\r\n\treturn tee\r\n}\r\n\r\nfunc (h *Http) readRequests(tee *conn.Tee, lastTxn chan *HttpTxn, connCtx interface{}) {\r\n\tdefer close(lastTxn)\r\n\r\n\tfor {\r\n\t\treq, err := http.ReadRequest(tee.WriteBuffer())\r\n\t\tif err != nil {\r\n\t\t\t// no more requests to be read, we're done\r\n\t\t\tbreak\r\n\t\t}\r\n\r\n\t\t// make sure we read the body of the request so that\r\n\t\t// we don't block the writer\r\n\t\t_, err = httputil.DumpRequest(req, true)\r\n\r\n\t\th.reqMeter.Mark(1)\r\n\t\tif err != nil {\r\n\t\t\ttee.Warn(\"Failed to extract request body: %v\", err)\r\n\t\t}\r\n\r\n\t\t// golang's ReadRequest/DumpRequestOut is broken. Fix up the request so it works later\r\n\t\treq.URL.Scheme = \"http\"\r\n\t\treq.URL.Host = req.Host\r\n\r\n\t\ttxn := &HttpTxn{Start: time.Now(), ConnUserCtx: connCtx}\r\n\t\ttxn.Req = &HttpRequest{Request: req}\r\n\t\tif req.Body != nil {\r\n\t\t\ttxn.Req.BodyBytes, txn.Req.Body, err = extractBody(req.Body)\r\n\t\t\tif err != nil {\r\n\t\t\t\ttee.Warn(\"Failed to extract request body: %v\", err)\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tlastTxn <- txn\r\n\t\th.Txns.In() <- txn\r\n\t}\r\n}\r\n\r\nfunc (h *Http) readResponses(tee *conn.Tee, lastTxn chan *HttpTxn) {\r\n\tfor txn := range lastTxn {\r\n\t\tresp, err := http.ReadResponse(tee.ReadBuffer(), txn.Req.Request)\r\n\t\ttxn.Duration = time.Since(txn.Start)\r\n\t\th.reqTimer.Update(txn.Duration)\r\n\t\tif err != nil {\r\n\t\t\ttee.Warn(\"Error reading response from server: %v\", err)\r\n\t\t\t// no more responses to be read, we're done\r\n\t\t\tbreak\r\n\t\t}\r\n\t\t// make sure we read the body of the response so that\r\n\t\t// we don't block the reader\r\n\t\t_, _ = httputil.DumpResponse(resp, true)\r\n\r\n\t\ttxn.Resp = &HttpResponse{Response: resp}\r\n\t\t// apparently, Body can be nil in some cases\r\n\t\tif resp.Body != nil {\r\n\t\t\ttxn.Resp.BodyBytes, txn.Resp.Body, err = extractBody(resp.Body)\r\n\t\t\tif err != nil {\r\n\t\t\t\ttee.Warn(\"Failed to extract response body: %v\", err)\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\th.Txns.In() <- txn\r\n\r\n\t\t// XXX: remove web socket shim in favor of a real websocket protocol analyzer\r\n\t\tif txn.Req.Header.Get(\"Upgrade\") == \"websocket\" {\r\n\t\t\ttee.Info(\"Upgrading to websocket\")\r\n\t\t\tvar wg sync.WaitGroup\r\n\r\n\t\t\t// shim for websockets\r\n\t\t\t// in order for websockets to work, we need to continue reading all of the\r\n\t\t\t// the bytes in the analyzer so that the joined connections will continue\r\n\t\t\t// sending bytes to each other\r\n\t\t\twg.Add(2)\r\n\t\t\tgo func() {\r\n\t\t\t\tioutil.ReadAll(tee.WriteBuffer())\r\n\t\t\t\twg.Done()\r\n\t\t\t}()\r\n\r\n\t\t\tgo func() {\r\n\t\t\t\tioutil.ReadAll(tee.ReadBuffer())\r\n\t\t\t\twg.Done()\r\n\t\t\t}()\r\n\r\n\t\t\twg.Wait()\r\n\t\t\tbreak\r\n\t\t}\r\n\t}\r\n}\r\n\r\n// we have to vendor DumpRequestOut because it's broken and the fix won't be in until at least 1.4\r\n// XXX: remove this all in favor of actually parsing the HTTP traffic ourselves for more transparent\r\n// replay and inspection, regardless of when it gets fixed in stdlib\r\n\r\n// Copyright 2009 The Go Authors. All rights reserved.\r\n// Use of this source code is governed by a BSD-style\r\n// license that can be found in the LICENSE file.\r\n\r\n// One of the copies, say from b to r2, could be avoided by using a more\r\n// elaborate trick where the other copy is made during Request/Response.Write.\r\n// This would complicate things too much, given that these functions are for\r\n// debugging only.\r\nfunc drainBody(b io.ReadCloser) (r1, r2 io.ReadCloser, err error) {\r\n\tvar buf bytes.Buffer\r\n\tif _, err = buf.ReadFrom(b); err != nil {\r\n\t\treturn nil, nil, err\r\n\t}\r\n\tif err = b.Close(); err != nil {\r\n\t\treturn nil, nil, err\r\n\t}\r\n\treturn ioutil.NopCloser(&buf), ioutil.NopCloser(bytes.NewReader(buf.Bytes())), nil\r\n}\r\n\r\n// dumpConn is a net.Conn which writes to Writer and reads from Reader\r\ntype dumpConn struct {\r\n\tio.Writer\r\n\tio.Reader\r\n}\r\n\r\nfunc (c *dumpConn) Close() error                       { return nil }\r\nfunc (c *dumpConn) LocalAddr() net.Addr                { return nil }\r\nfunc (c *dumpConn) RemoteAddr() net.Addr               { return nil }\r\nfunc (c *dumpConn) SetDeadline(t time.Time) error      { return nil }\r\nfunc (c *dumpConn) SetReadDeadline(t time.Time) error  { return nil }\r\nfunc (c *dumpConn) SetWriteDeadline(t time.Time) error { return nil }\r\n\r\ntype neverEnding byte\r\n\r\nfunc (b neverEnding) Read(p []byte) (n int, err error) {\r\n\tfor i := range p {\r\n\t\tp[i] = byte(b)\r\n\t}\r\n\treturn len(p), nil\r\n}\r\n\r\n// DumpRequestOut is like DumpRequest but includes\r\n// headers that the standard http.Transport adds,\r\n// such as User-Agent.\r\nfunc DumpRequestOut(req *http.Request, body bool) ([]byte, error) {\r\n\tsave := req.Body\r\n\tdummyBody := false\r\n\tif !body || req.Body == nil {\r\n\t\treq.Body = nil\r\n\t\tif req.ContentLength != 0 {\r\n\t\t\treq.Body = ioutil.NopCloser(io.LimitReader(neverEnding('x'), req.ContentLength))\r\n\t\t\tdummyBody = true\r\n\t\t}\r\n\t} else {\r\n\t\tvar err error\r\n\t\tsave, req.Body, err = drainBody(req.Body)\r\n\t\tif err != nil {\r\n\t\t\treturn nil, err\r\n\t\t}\r\n\t}\r\n\r\n\t// Since we're using the actual Transport code to write the request,\r\n\t// switch to http so the Transport doesn't try to do an SSL\r\n\t// negotiation with our dumpConn and its bytes.Buffer & pipe.\r\n\t// The wire format for https and http are the same, anyway.\r\n\treqSend := req\r\n\tif req.URL.Scheme == \"https\" {\r\n\t\treqSend = new(http.Request)\r\n\t\t*reqSend = *req\r\n\t\treqSend.URL = new(url.URL)\r\n\t\t*reqSend.URL = *req.URL\r\n\t\treqSend.URL.Scheme = \"http\"\r\n\t}\r\n\r\n\t// Use the actual Transport code to record what we would send\r\n\t// on the wire, but not using TCP.  Use a Transport with a\r\n\t// custom dialer that returns a fake net.Conn that waits\r\n\t// for the full input (and recording it), and then responds\r\n\t// with a dummy response.\r\n\tvar buf bytes.Buffer // records the output\r\n\tpr, pw := io.Pipe()\r\n\tdr := &delegateReader{c: make(chan io.Reader)}\r\n\t// Wait for the request before replying with a dummy response:\r\n\tgo func() {\r\n\t\treq, _ := http.ReadRequest(bufio.NewReader(pr))\r\n\t\t// THIS IS THE PART THAT'S BROKEN IN THE STDLIB (as of Go 1.3)\r\n\t\tif req != nil && req.Body != nil {\r\n\t\t\tioutil.ReadAll(req.Body)\r\n\t\t}\r\n\t\tdr.c <- strings.NewReader(\"HTTP/1.1 204 No Content\\r\\n\\r\\n\")\r\n\t}()\r\n\r\n\tt := &http.Transport{\r\n\t\tDial: func(net, addr string) (net.Conn, error) {\r\n\t\t\treturn &dumpConn{io.MultiWriter(&buf, pw), dr}, nil\r\n\t\t},\r\n\t}\r\n\tdefer t.CloseIdleConnections()\r\n\r\n\t_, err := t.RoundTrip(reqSend)\r\n\r\n\treq.Body = save\r\n\tif err != nil {\r\n\t\treturn nil, err\r\n\t}\r\n\tdump := buf.Bytes()\r\n\r\n\t// If we used a dummy body above, remove it now.\r\n\t// TODO: if the req.ContentLength is large, we allocate memory\r\n\t// unnecessarily just to slice it off here.  But this is just\r\n\t// a debug function, so this is acceptable for now. We could\r\n\t// discard the body earlier if this matters.\r\n\tif dummyBody {\r\n\t\tif i := bytes.Index(dump, []byte(\"\\r\\n\\r\\n\")); i >= 0 {\r\n\t\t\tdump = dump[:i+4]\r\n\t\t}\r\n\t}\r\n\treturn dump, nil\r\n}\r\n\r\n// delegateReader is a reader that delegates to another reader,\r\n// once it arrives on a channel.\r\ntype delegateReader struct {\r\n\tc chan io.Reader\r\n\tr io.Reader // nil until received from c\r\n}\r\n\r\nfunc (r *delegateReader) Read(p []byte) (int, error) {\r\n\tif r.r == nil {\r\n\t\tr.r = <-r.c\r\n\t}\r\n\treturn r.r.Read(p)\r\n}\r\n\r\n// Return value if nonempty, def otherwise.\r\nfunc valueOrDefault(value, def string) string {\r\n\tif value != \"\" {\r\n\t\treturn value\r\n\t}\r\n\treturn def\r\n}\r\n\r\nvar reqWriteExcludeHeaderDump = map[string]bool{\r\n\t\"Host\":              true, // not in Header map anyway\r\n\t\"Content-Length\":    true,\r\n\t\"Transfer-Encoding\": true,\r\n\t\"Trailer\":           true,\r\n}\r\n"
  },
  {
    "path": "proto/interface.go",
    "content": "package proto\r\n\r\nimport (\r\n\t\"cngrok/conn\"\r\n)\r\n\r\ntype Protocol interface {\r\n\tGetName() string\r\n\tWrapConn(conn.Conn, interface{}) conn.Conn\r\n}\r\n"
  },
  {
    "path": "proto/tcp.go",
    "content": "package proto\r\n\r\nimport (\r\n\t\"cngrok/conn\"\r\n)\r\n\r\ntype Tcp struct{}\r\n\r\nfunc NewTcp() *Tcp {\r\n\treturn new(Tcp)\r\n}\r\n\r\nfunc (h *Tcp) GetName() string { return \"tcp\" }\r\n\r\nfunc (h *Tcp) WrapConn(c conn.Conn, ctx interface{}) conn.Conn {\r\n\treturn c\r\n}\r\n"
  },
  {
    "path": "server/assets/assets_release.go",
    "content": "package assets\n\nimport (\n\t\"bytes\"\n\t\"compress/gzip\"\n\t\"fmt\"\n\t\"io\"\n\t\"io/ioutil\"\n\t\"os\"\n\t\"path/filepath\"\n\t\"strings\"\n\t\"time\"\n)\n\nfunc bindataRead(data, name string) ([]byte, error) {\n\tgz, err := gzip.NewReader(strings.NewReader(data))\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"Read %q: %v\", name, err)\n\t}\n\n\tvar buf bytes.Buffer\n\t_, err = io.Copy(&buf, gz)\n\tclErr := gz.Close()\n\n\tif err != nil {\n\t\treturn nil, fmt.Errorf(\"Read %q: %v\", name, err)\n\t}\n\tif clErr != nil {\n\t\treturn nil, err\n\t}\n\n\treturn buf.Bytes(), nil\n}\n\ntype asset struct {\n\tbytes []byte\n\tinfo  os.FileInfo\n}\n\ntype bindataFileInfo struct {\n\tname    string\n\tsize    int64\n\tmode    os.FileMode\n\tmodTime time.Time\n}\n\nfunc (fi bindataFileInfo) Name() string {\n\treturn fi.name\n}\nfunc (fi bindataFileInfo) Size() int64 {\n\treturn fi.size\n}\nfunc (fi bindataFileInfo) Mode() os.FileMode {\n\treturn fi.mode\n}\nfunc (fi bindataFileInfo) ModTime() time.Time {\n\treturn fi.modTime\n}\nfunc (fi bindataFileInfo) IsDir() bool {\n\treturn false\n}\nfunc (fi bindataFileInfo) Sys() interface{} {\n\treturn nil\n}\n\nvar _assetsServerTlsSnakeoilCrt = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\x6c\\xd3\\xb9\\xb6\\xaa\\x48\\x00\\x85\\xe1\\x9c\\xa7\\xe8\\x9c\\xd5\\x4b\\xe4\\x88\\x48\\x70\\x83\\x9a\\x98\\x0b\\x2c\\x86\\x23\\x90\\x01\\x0a\\xca\\x78\\x14\\xa1\\x84\\xa7\\xef\\xd5\\x37\\xe8\\xa4\\xef\\x0e\\xff\\x78\\x7f\\x7f\\xff\\x3b\\x48\\x0c\\xcb\\xfb\\x0b\\x91\\x20\\xb2\\x74\\x0b\\x81\\x88\\xfc\\xae\\x02\\xb5\\x2c\\xf4\\xd3\\x20\\x04\\xd2\\x03\\x42\\x0c\\xf7\\x7d\\x01\\xc6\\xd2\\xc9\\x16\\x39\\x02\\x1e\\xac\\xdb\\xe7\\xbd\\x7d\\x18\\x1a\\x97\\x20\\x60\\xb1\\x0e\\x30\\xf8\\xa6\\x01\\xe5\\x84\\xa5\\xf8\\x9b\\x31\\x8c\\xc1\\x4f\\x23\\x14\\xfd\\x75\\x2d\\xe4\\x69\\x4e\\x65\\xed\\x4d\\xe1\\x21\\xc1\\x11\\x39\\x50\\xdc\\x72\\x6f\\x03\\x0a\\x8d\\x88\\xe4\\xeb\\x63\\x82\\x23\\xba\\x52\\x1c\\x7f\\xbc\\xe6\\xbf\\xc6\\xf5\\x88\\x44\\x14\\x12\\x43\\x00\\xfb\\x98\\x00\\xce\\x9d\\x54\\x56\\x86\\xb2\\xd7\\x5e\\x6e\\xef\\x2d\\x45\\x84\\x10\\x08\\x2d\\x8e\\x59\\x6a\\x3b\\x63\\x66\\xdd\\x97\\xd2\\x03\\x8c\\x40\\xc8\\x00\\xae\\x6b\\x72\\x06\\x18\\x21\\xc0\\x46\\x54\\xd7\\x04\\x0a\\x80\\x16\\x13\\x46\\x62\\xb5\\xc5\\x8d\\x39\\xc8\\xaf\\xd1\\xd8\\x64\\xdc\\xdb\\xbb\\xac\\x81\\x4a\\x71\\x2b\\xaf\\xc1\\x29\\xea\\x2e\\xe7\\xb5\\x51\\x0d\\xcd\\xe0\\x53\\xb0\\x6f\\x57\\x28\\xf6\\x71\\x96\\x2a\\x2a\\xcd\\xbd\\xc4\\xdb\\x4e\\xc2\\xe6\\xaf\\x6d\\x5d\\x67\\x83\\xb6\\x9c\\xa0\\xaa\\x3c\\x0f\\xe7\\xc7\\xa9\\xcf\\xf7\\xc7\\xf7\\xf3\\x4c\\xf5\\x64\\x67\\x9f\\x2f\\xdd\\x4f\\x07\\xce\\xa7\\xb4\\x75\\xf3\\x8f\\x6d\\x2a\\xa9\\xa5\\x69\\x52\\xf8\\x05\\x25\\x57\\x39\\xcc\\x93\\x58\\x4d\\xc2\\xbd\\x98\\x95\\x0d\\x2c\\x01\\x7a\\x88\\x7c\\xfa\\x64\\x69\\xf0\\xc9\\x59\\xe1\\x27\\xee\\x2c\\xc1\\x29\\xc2\\x51\\x56\\x43\\xfd\\x66\\x06\\x6e\\xda\\x3a\\x45\\x81\\x8f\\xf4\\x55\\x0e\\x7a\\x92\\x29\\x53\\x13\\xeb\\xf5\\x2b\\x88\\xdc\\x4e\\xe8\\xd2\\x84\\x6c\\x92\\xaa\\xc4\\xfd\\x19\\x4d\\xec\\x7c\\xe5\\x72\\x3c\\x8b\\xa1\\x92\\x44\\xc6\\xf7\\xc4\\xc2\\xca\\x6e\\xa4\\x4f\\x2b\\xa6\\x8b\\xa5\\x3d\\x5a\\x60\\xb4\\xa3\\xab\\xef\\xee\\xd1\\x65\\x07\\x16\\xa2\\x79\\x1f\\xfd\\x68\\xce\\x82\\x6e\\x17\\xe5\\x71\\xf5\\x87\\x3b\\x6d\\x0e\\xb2\\x79\\x50\\x1f\\x57\\x6a\\xba\\xe9\\x7e\\xc3\\x85\\x51\\x9d\\xea\\x2a\\xe7\\x74\\xd2\\x2e\\xae\\x3b\\x96\\xec\\x3a\\x85\\xe9\\x20\\x79\\x9d\\x37\\xaa\\x47\\x83\\x6a\\x5c\\xec\\xb7\\xeb\\xdd\\x12\\x88\\x19\\xec\\x33\\xac\\xae\\xef\\xba\\x7a\\xa0\\x2c\\x2f\\xec\\x8b\\x08\\xdd\\xac\\x44\\x80\\x13\\x00\\xfe\\xf4\\x05\\xe0\\x23\\xc0\\x08\\x70\\x92\\x5e\\xde\\x68\\x77\\x15\\x9c\\x43\\x1b\\x56\\x56\\x8e\\x7a\\x3d\\xe9\\x82\\x46\\xca\\xc2\\xd0\\x3a\\x6a\\x0a\\xdd\\x7f\\x08\\x3a\\x74\\xe1\\xd3\\xbe\\x4b\\x80\\xdd\\x96\\x6a\\xb9\\xb4\\xe7\\x3c\\x3d\\xbe\\x36\\x6a\\xaa\\x2a\\xe0\\x59\\x73\\x4b\\xbf\\x5e\\x25\\xcc\\x81\\xe0\\xc7\\xd4\\x28\\x67\\xad\\x2f\\x4b\\x85\\x4f\\x43\\xfe\\xfd\\xce\\x54\\xc9\\x94\\x70\\xb3\\x32\\x51\\xbe\\x26\\xf7\\xf9\\xf9\\x55\\x27\\xa7\\x19\\x25\\x06\\xd3\\x8c\\x71\\xbf\\xad\\xf4\\x41\\xd4\\xda\\x63\\x1f\\xd6\\x2a\\xf6\\xee\\xa0\\xcd\\xc2\\x37\\xbc\\xd2\\x1b\\xe4\\x13\\x68\\x76\\x5c\\x35\\x5e\\x86\\xbf\\xe1\\xb1\\x97\\xf6\\x9b\\xf7\\x50\\xde\\x6a\\x91\\x7c\\xa9\\xe6\\xa0\\x47\\x3d\\xad\\xa6\\xef\\x30\\x9b\\x8b\\x62\\x22\\x66\\x5f\\x34\\x9a\\xbb\\x81\\xf1\\xa1\\x29\\xa8\\xea\\x05\\x8e\\xf2\\x80\\x59\\xc3\\xed\\x86\\xf7\\x7e\\x5c\\x85\\x85\\x1f\\xaf\\xe6\\x6b\\x74\\x7e\\xde\\x27\\xbb\\xd9\\x5c\\x51\\x3c\\xc6\\x96\\xc6\\x9e\\x17\\xbe\\x8e\\x55\\x2a\\xef\\x9c\\xd0\\xbf\\xcc\\xbd\\x34\\x41\\xd4\\x25\\x7e\\xe0\\x3a\\x65\\x21\\xc4\\x5b\\x98\\x38\\x49\\xbe\\x62\\xf9\\x7d\\x85\\x21\\x5a\\x33\\x73\\xa9\\x96\\xeb\\xc5\\xdd\\x99\\xa9\\x33\\xc4\\xf3\\x33\\x84\\xf9\\x59\\x7c\\x52\\x47\\xd6\\x12\\xc9\\x5d\\x24\\x2f\\x7d\\x64\\xe2\\xfb\\xe8\\x18\\x16\\x58\\x7d\\x36\\xdb\\xb6\\x90\\x89\\xde\\xa0\\xf3\\x5b\\x77\\x27\\x2d\\xa0\\xfc\\xd7\\x2f\\xe1\\x37\\x52\\xe2\\xe1\\xff\\xc3\\xfd\\x27\\x00\\x00\\xff\\xff\\x6b\\x58\\x05\\x15\\xd5\\x03\\x00\\x00\"\n\nfunc assetsServerTlsSnakeoilCrtBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsServerTlsSnakeoilCrt,\n\t\t\"assets/server/tls/snakeoil.crt\",\n\t)\n}\n\nfunc assetsServerTlsSnakeoilCrt() (*asset, error) {\n\tbytes, err := assetsServerTlsSnakeoilCrtBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/server/tls/snakeoil.crt\", size: 981, mode: os.FileMode(420), modTime: time.Unix(1536311514, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\nvar _assetsServerTlsSnakeoilKey = \"\\x1f\\x8b\\x08\\x00\\x00\\x00\\x00\\x00\\x00\\xff\\x6c\\xd5\\x25\\x12\\xe4\\x00\\x02\\x85\\x61\\x9f\\x53\\x8c\\x4f\\x6d\\x85\\x49\\x8c\\x08\\x33\\xa7\\x43\\x2e\\xcc\\x1d\\xec\\xd0\\xe9\\xb7\\x76\\xf4\\x3e\\xfb\\xcc\\xef\\xbe\\xff\\xfc\\x6f\\x9c\\x28\\xab\\xd6\\x1f\\xcf\\x67\\xff\\x38\\x9e\\x1a\\xb2\\x81\\xf8\\x47\\x17\\x93\\x7f\\x0f\\x60\\xaa\\xaa\\xb8\\xb0\\x2a\\xc7\\xb2\\x3a\\xcf\\xba\\x22\\x7b\\xff\\x2e\\xd3\\x20\\x20\\xcb\\x37\\xab\\x3a\\xfb\\x35\\xb9\\x93\\xd8\\xc9\\x97\\x99\\x4c\\x65\\x3c\\x88\\x1b\\x51\\x6e\\x3b\\x4c\\x20\\xdd\\xd9\\x73\\x38\\xe7\\x6f\\x25\\x0a\\x54\\x40\\x21\\x53\\x6f\\xec\\xbf\\xfb\\x3d\\x23\\x05\\xe6\\xbc\\x26\\xa5\\xfb\\x3c\\x37\\xd5\\x28\\x74\\x29\\xe7\\xb4\\x35\\xa0\\xf1\\xa4\\x5b\\xbc\\xa2\\x33\\x7d\\x85\\x35\\x3d\\x30\\x59\\x34\\x7d\\x58\\xe8\\xee\\xdc\\x63\\x13\\x87\\x7a\\x6c\\x7a\\x00\\xc3\\x3c\\xa3\\x50\\xdc\\xf3\\xdb\\x91\\x2f\\x01\\x3e\\xd2\\x8f\\xfa\\x9a\\x3c\\x23\\xea\\x06\\xc5\\xbf\\xd2\\xd8\\x2a\\xd2\\xc2\\xed\\x44\\xf1\\xa3\\x5c\\xf9\\x36\\x2d\\x6b\\x62\\xc5\\x10\\x2f\\xc5\\xa3\\x73\\x97\\x63\\x77\\xe6\\xe7\\x78\\x80\\x22\\x2c\\xbf\\xd3\\x63\\xb9\\x11\\x7f\\x48\\xe6\\x2f\\x0a\\xdb\\x22\\x70\\x82\\x73\\xf4\\x13\\x5a\\xbf\\x59\\x06\\x13\\x52\\x9f\\x22\\x8c\\xb1\\x34\\xd3\\xe8\\xe6\\x34\\x7a\\x72\\x02\\x39\\x20\\x3a\\xba\\x47\\x75\\x97\\xcd\\xfc\\x66\\x8f\\x01\\x50\\xb2\\x72\\x9a\\xa7\\x03\\x18\\x13\\xe3\\xb9\\xc2\\x3f\\xe3\\xf1\\x6e\\x2a\\x59\\x89\\x8f\\xd3\\x27\\x75\\xff\\xd3\\xe0\\xab\\x38\\xfa\\xd8\\xb4\\xf6\\x14\\x7a\\x38\\x66\\x63\\x9f\\x17\\x49\\xf6\\x5f\\x7b\\x73\\xe8\\xad\\x75\\xb5\\x8b\\x02\\x1f\\xb4\\x3f\\xe7\\xe4\\xc5\\x04\\x32\\xb7\\x50\\xb1\\x71\\x4b\\x25\\x1c\\x9c\\x53\\x47\\x39\\x50\\xd5\\xc6\\x65\\x1f\\x73\\x5c\\x3c\\xc6\\x4b\\x15\\x58\\x97\\xe5\\xd8\\x59\\xe5\\x58\\x97\\xb7\\xee\\xd3\\xbe\\xda\\x92\\xfe\\xd4\\x93\\x91\\x03\\x72\\xc4\\xb0\\xe8\\xda\\x3a\\x61\\xd3\\xd9\\xea\\xb7\\xcb\\xe3\\x24\\x9e\\xf2\\xb2\\x21\\xd3\\x87\\xae\\x8e\\x27\\x1b\\x93\\x19\\x49\\xcc\\xf8\\xc6\\x49\\xc8\\x2d\\x42\\xb0\\x8f\\x58\\x93\\x45\\xe8\\x52\\xf3\\xd7\\x79\\xcb\\xa6\\x96\\xef\\x80\\x98\\xdc\\xf8\\x56\\x9c\\xe4\\x86\\xb0\\x47\\xb1\\x97\\xab\\x40\\x79\\x84\\xdc\\x89\\x23\\xf4\\x0d\\xd3\\xc4\\xbc\\x30\\x54\\x27\\xd4\\x03\\xf5\\xa5\\x0f\\x38\\x7f\\xea\\xa6\\x3f\\xef\\x96\\xf0\\x21\\xf1\\x87\\xeb\\x52\\x79\\xb9\\xdd\\xca\\x03\\x9e\\xfa\\xa2\\x6e\\x8b\\x52\\xc5\\x55\\x85\\x92\\xb7\\x0b\\x23\\x34\\x21\\xe9\\xeb\\x8f\\x13\\x2b\\x7a\\xfe\\x68\\x16\\x1d\\x21\\x0e\\xf8\\xd2\\x3b\\x59\\xc7\\x6e\\xb0\\x57\\x7d\\xf6\\x4e\\x2e\\x3d\\x61\\xc1\\x77\\xdf\\xf0\\x61\\x33\\x96\\x01\\xc9\\x69\\xd0\\xa5\\x9d\\x7e\\x58\\xe1\\xad\\x2a\\x4c\\x15\\x7e\\x30\\x74\\x67\\xe4\\xa1\\x33\\x73\\xcb\\xc9\\xf9\\xd9\\x93\\xcc\\x68\\x1a\\x81\\x39\\x13\\x57\\x77\\x64\\xfb\\xa4\\x9b\\xdb\\x83\\xce\\x2b\\xc6\\x83\\x64\\x1a\\xcd\\xf1\\x08\\x01\\x25\\xe5\\xe2\\x8e\\x3c\\xe6\\x5a\\xec\\xa6\\xc5\\x8e\\x11\\x5b\\x59\\x8a\\xae\\x8e\\x68\\x3e\\x94\\xd5\\x44\\x1f\\x97\\xad\\x8d\\xe6\\x89\\x9a\\x6b\\xde\\x14\\x13\\xd9\\x15\\xcc\\xd7\\xd5\\xc0\\xbc\\xbe\\x09\\xd0\\x8a\\xeb\\xe9\\xbb\\xfb\\xc0\\x7d\\x5b\\x52\\xbd\\x5e\\x37\\x3b\\xcb\\x1c\\x6b\\xdb\\x52\\x39\\x6f\\x25\\x84\\xc9\\x07\\x92\\x41\\x03\\xb4\\xb7\\x5f\\x52\\xe6\\x83\\x19\\x2b\\x68\\xfa\\x43\\x72\\x20\\xf5\\x45\\xd1\\xb5\\xf4\\xcd\\x17\\xc3\\x72\\xb3\\x5e\\xf6\\x88\\x0a\\x81\\xc1\\x25\\x69\\xfc\\xa7\\xb0\\xa5\\x34\\xcc\\x97\\x46\\xbc\\x4b\\x6a\\x7a\\x36\\xbd\\x31\\x65\\x53\\xc1\\xb3\\x02\\x5b\\xb5\\x81\\x98\\xf6\\xaf\\xda\\x53\\x92\\x51\\x84\\x3e\\x15\\xa3\\xf5\\x36\\x64\\x8b\\x01\\x73\\x66\\x6d\\xc8\\xaa\\x21\\x81\\xc5\\x7b\\x0e\\x68\\x68\\x36\\xe6\\xdd\\xed\\xfc\\x89\\x6e\\xd2\\xb3\\x62\\x44\\xf5\\x5f\\xb0\\xef\\x40\\x84\\xc2\\xd8\\x06\\x55\\x5f\\xe7\\xdb\\x76\\xad\\xc1\\xdd\\x19\\xe5\\x77\\xb9\\x2b\\x1d\\x6f\\xe7\\x21\\xff\\x8a\\x2d\\xc8\\x07\\x74\\x58\\xe2\\x85\\x89\\xde\\xc2\\x6d\\x0e\\xb0\\xb5\\x5a\\xb0\\xcc\\x64\\x39\\x0b\\x67\\x18\\x24\\x42\\x6c\\x82\\x09\\x7b\\x5c\\x67\\x5c\\x8a\\xbc\\x09\\xc3\\x42\\x7f\\xd6\\x47\\x92\\x6a\\xe8\\xc3\\xe8\\x6f\\x09\\x7e\\x60\\x8f\\x79\\x40\\x0b\\x60\\x33\\xa4\\xd0\\x38\\x0c\\xc2\\xe7\\x74\\x95\\x63\\x84\\x21\\xe6\\x43\\x6b\\x95\\x6c\\x97\\x75\\x53\\xdb\\x93\\x63\\xd3\\xe7\\x57\\x30\\xfc\\x5c\\xfd\\xf2\\xd8\\x4f\\xaf\\x1a\\xa5\\x59\\x14\\xc9\\x41\\x8b\\xf6\\x09\\xbe\\x90\\xf3\\xd8\\x06\\xf0\\x1a\\xe0\\x4b\\x1b\\xa8\\xf8\\x49\\x7a\\x81\\x4c\\x75\\xe6\\xe8\\xe5\\xdc\\xed\\x55\\x03\\xce\\xce\\x06\\xbf\\x89\\x34\\x54\\xb8\\x76\\x1d\\xdb\\x9c\\x9d\\x65\\x36\\x84\\x3f\\x97\\xe1\\x41\\x3f\\x2e\\x5e\\x49\\x6f\\xac\\x18\\x72\\x83\\x59\\xa0\\x41\\xb6\\x4a\\xd8\\x7c\\x67\\x58\\x40\\x49\\xb5\\xa2\\x5b\\xf2\\x44\\x77\\x5a\\x67\\x2c\\x48\\x68\\x98\\xad\\xa4\\x31\\xd6\\x9c\\x40\\xff\\x75\\xa9\\x2d\\x2a\\x46\\xa1\\x9c\\x4a\\x6d\\x9d\\x61\\x9a\\x20\\x8a\\xba\\x4d\\x02\\x94\\xdb\\x09\\xb0\\xbd\\x07\\x6e\\x19\\x83\\xbe\\x88\\x94\\xc1\\xee\\x0a\\x17\\x54\\x43\\xe2\\x21\\x8a\\x6c\\x16\\x6e\\x6e\\x29\\x6b\\x66\\xac\\xac\\xbc\\xc3\\x2e\\xc1\\xac\\x7b\\xb2\\x5f\\x9b\\x48\\x75\\x2d\\x1e\\x95\\x29\\x26\\x77\\xa2\\xf6\\xa3\\x60\\x19\\xd0\\x85\\xb5\\xdf\\xb3\\x48\\x4d\\x40\\x84\\x29\\x0d\\x95\\xbd\\xca\\xc8\\x6e\\xd7\\x81\\x6f\\x12\\x0e\\x99\\x3d\\xb7\\x19\\x6c\\x25\\xd7\\x02\\x41\\x0d\\xf4\\x42\\x63\\xed\\x99\\x39\\xe1\\xd8\\xd9\\xe1\\x63\\xc6\\x1c\\x14\\x7a\\xd4\\x57\\x07\\xde\\xc1\\xda\\xc2\\xfe\\x45\\x71\\x8d\\x09\\x1d\\x07\\xd7\\xb0\\x30\\x0f\\xa1\\xb7\\x90\\xea\\x60\\x9d\\x30\\x68\\x72\\xb7\\xe2\\xe0\\x5a\\xa7\\x67\\x92\\xa4\\xf2\\x20\\xac\\xd1\\xbe\\xad\\xde\\x31\\xa0\\x54\\x21\\xfd\\x52\\x68\\x13\\xe3\\x00\\xd1\\xa7\\xe5\\x3b\\x13\\x1f\\xf8\\x38\\x41\\xcf\\xcd\\x3e\\xea\\xad\\xd6\\x77\\xdb\\xa1\\x7e\\xed\\xbb\\xdc\\x0b\\x67\\xd1\\x50\\xcf\\xd3\\x51\\xf6\\x29\\x83\\xf9\\x48\\xe9\\x17\\x97\\xde\\x33\\x27\\x70\\x4e\\x08\\xe8\\xec\\xc8\\x13\\x46\\x06\\x14\\x0b\\xff\\x60\\x97\\xce\\x35\\xae\\xc0\\x0b\\xcf\\xfb\\x65\\xa2\\xd2\\x79\\xe1\\xfd\\x77\\x0d\\x4c\\xa6\\xa1\\xf2\\x51\\xa0\\xfa\\x0b\\x46\\x05\\x09\\x5e\\xee\\xd5\\xb6\\x0f\\x46\\x18\\x23\\xe3\\xc5\\xfd\\xb9\\xa9\\x09\\x47\\x30\\x6a\\x0e\\xd0\\x05\\xff\\xe5\\x86\\x1c\\xd3\\x68\\x8a\\x9b\\x45\\x6b\\x4f\\xcc\\xf2\\xad\\xd6\\xa9\\x3b\\x1e\\x56\\xdc\\xbf\\x60\\x3b\\xf8\\x18\\x7a\\xad\\x82\\xcb\\xaa\\xe4\\x6e\\x59\\x41\\x4a\\xe7\\xb0\\xdf\\xeb\\xa6\\x16\\xa3\\xd8\\x37\\x23\\x27\\x1c\\x88\\x22\\x86\\xba\\x5f\\xa7\\xa2\\x7a\\x4d\\xbe\\xaf\\x8f\\xb6\\x9e\\x24\\x96\\x67\\xd5\\x50\\xd0\\x61\\x32\\x0d\\xb6\\x94\\xea\\x09\\x96\\xfd\\x74\\x23\\xd7\\x79\\xf4\\xae\\x23\\x4a\\x78\\xf5\\xa8\\x60\\xff\\xfe\\x05\\xfe\\xb1\\x22\\x5a\\xc2\\xff\\xe7\\xe6\\xbf\\x01\\x00\\x00\\xff\\xff\\xa9\\x7a\\x60\\x54\\x8f\\x06\\x00\\x00\"\n\nfunc assetsServerTlsSnakeoilKeyBytes() ([]byte, error) {\n\treturn bindataRead(\n\t\t_assetsServerTlsSnakeoilKey,\n\t\t\"assets/server/tls/snakeoil.key\",\n\t)\n}\n\nfunc assetsServerTlsSnakeoilKey() (*asset, error) {\n\tbytes, err := assetsServerTlsSnakeoilKeyBytes()\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\n\tinfo := bindataFileInfo{name: \"assets/server/tls/snakeoil.key\", size: 1679, mode: os.FileMode(420), modTime: time.Unix(1536311514, 0)}\n\ta := &asset{bytes: bytes, info: info}\n\treturn a, nil\n}\n\n// Asset loads and returns the asset for the given name.\n// It returns an error if the asset could not be found or\n// could not be loaded.\nfunc Asset(name string) ([]byte, error) {\n\tcannonicalName := strings.Replace(name, \"\\\\\", \"/\", -1)\n\tif f, ok := _bindata[cannonicalName]; ok {\n\t\ta, err := f()\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"Asset %s can't read by error: %v\", name, err)\n\t\t}\n\t\treturn a.bytes, nil\n\t}\n\treturn nil, fmt.Errorf(\"Asset %s not found\", name)\n}\n\n// MustAsset is like Asset but panics when Asset would return an error.\n// It simplifies safe initialization of global variables.\nfunc MustAsset(name string) []byte {\n\ta, err := Asset(name)\n\tif err != nil {\n\t\tpanic(\"asset: Asset(\" + name + \"): \" + err.Error())\n\t}\n\n\treturn a\n}\n\n// AssetInfo loads and returns the asset info for the given name.\n// It returns an error if the asset could not be found or\n// could not be loaded.\nfunc AssetInfo(name string) (os.FileInfo, error) {\n\tcannonicalName := strings.Replace(name, \"\\\\\", \"/\", -1)\n\tif f, ok := _bindata[cannonicalName]; ok {\n\t\ta, err := f()\n\t\tif err != nil {\n\t\t\treturn nil, fmt.Errorf(\"AssetInfo %s can't read by error: %v\", name, err)\n\t\t}\n\t\treturn a.info, nil\n\t}\n\treturn nil, fmt.Errorf(\"AssetInfo %s not found\", name)\n}\n\n// AssetNames returns the names of the assets.\nfunc AssetNames() []string {\n\tnames := make([]string, 0, len(_bindata))\n\tfor name := range _bindata {\n\t\tnames = append(names, name)\n\t}\n\treturn names\n}\n\n// _bindata is a table, holding each asset generator, mapped to its name.\nvar _bindata = map[string]func() (*asset, error){\n\t\"assets/server/tls/snakeoil.crt\": assetsServerTlsSnakeoilCrt,\n\t\"assets/server/tls/snakeoil.key\": assetsServerTlsSnakeoilKey,\n}\n\n// AssetDir returns the file names below a certain\n// directory embedded in the file by go-bindata.\n// For example if you run go-bindata on data/... and data contains the\n// following hierarchy:\n//     data/\n//       foo.txt\n//       img/\n//         a.png\n//         b.png\n// then AssetDir(\"data\") would return []string{\"foo.txt\", \"img\"}\n// AssetDir(\"data/img\") would return []string{\"a.png\", \"b.png\"}\n// AssetDir(\"foo.txt\") and AssetDir(\"notexist\") would return an error\n// AssetDir(\"\") will return []string{\"data\"}.\nfunc AssetDir(name string) ([]string, error) {\n\tnode := _bintree\n\tif len(name) != 0 {\n\t\tcannonicalName := strings.Replace(name, \"\\\\\", \"/\", -1)\n\t\tpathList := strings.Split(cannonicalName, \"/\")\n\t\tfor _, p := range pathList {\n\t\t\tnode = node.Children[p]\n\t\t\tif node == nil {\n\t\t\t\treturn nil, fmt.Errorf(\"Asset %s not found\", name)\n\t\t\t}\n\t\t}\n\t}\n\tif node.Func != nil {\n\t\treturn nil, fmt.Errorf(\"Asset %s not found\", name)\n\t}\n\trv := make([]string, 0, len(node.Children))\n\tfor childName := range node.Children {\n\t\trv = append(rv, childName)\n\t}\n\treturn rv, nil\n}\n\ntype bintree struct {\n\tFunc     func() (*asset, error)\n\tChildren map[string]*bintree\n}\n\nvar _bintree = &bintree{nil, map[string]*bintree{\n\t\"assets\": &bintree{nil, map[string]*bintree{\n\t\t\"server\": &bintree{nil, map[string]*bintree{\n\t\t\t\"tls\": &bintree{nil, map[string]*bintree{\n\t\t\t\t\"snakeoil.crt\": &bintree{assetsServerTlsSnakeoilCrt, map[string]*bintree{}},\n\t\t\t\t\"snakeoil.key\": &bintree{assetsServerTlsSnakeoilKey, map[string]*bintree{}},\n\t\t\t}},\n\t\t}},\n\t}},\n}}\n\n// RestoreAsset restores an asset under the given directory\nfunc RestoreAsset(dir, name string) error {\n\tdata, err := Asset(name)\n\tif err != nil {\n\t\treturn err\n\t}\n\tinfo, err := AssetInfo(name)\n\tif err != nil {\n\t\treturn err\n\t}\n\terr = os.MkdirAll(_filePath(dir, filepath.Dir(name)), os.FileMode(0755))\n\tif err != nil {\n\t\treturn err\n\t}\n\terr = ioutil.WriteFile(_filePath(dir, name), data, info.Mode())\n\tif err != nil {\n\t\treturn err\n\t}\n\terr = os.Chtimes(_filePath(dir, name), info.ModTime(), info.ModTime())\n\tif err != nil {\n\t\treturn err\n\t}\n\treturn nil\n}\n\n// RestoreAssets restores an asset under the given directory recursively\nfunc RestoreAssets(dir, name string) error {\n\tchildren, err := AssetDir(name)\n\t// File\n\tif err != nil {\n\t\treturn RestoreAsset(dir, name)\n\t}\n\t// Dir\n\tfor _, child := range children {\n\t\terr = RestoreAssets(dir, filepath.Join(name, child))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t}\n\treturn nil\n}\n\nfunc _filePath(dir, name string) string {\n\tcannonicalName := strings.Replace(name, \"\\\\\", \"/\", -1)\n\treturn filepath.Join(append([]string{dir}, strings.Split(cannonicalName, \"/\")...)...)\n}\n"
  },
  {
    "path": "server/cli.go",
    "content": "package server\r\n\r\nimport (\r\n\t\"flag\"\r\n)\r\n\r\ntype Options struct {\r\n\thttpAddr   string\r\n\thttpsAddr  string\r\n\ttunnelAddr string\r\n\tdomain     string\r\n\ttlsCrt     string\r\n\ttlsKey     string\r\n\tlogto      string\r\n\tloglevel   string\r\n}\r\n\r\nfunc parseArgs() *Options {\r\n\thttpAddr := flag.String(\"httpAddr\", \":80\", \"HTTP连接端口，禁用空字符串\")\r\n\thttpsAddr := flag.String(\"httpsAddr\", \":443\", \"HTTPS连接端口，禁用空字符串\")\r\n\ttunnelAddr := flag.String(\"tunnelAddr\", \":4443\", \"ngrok客户端连接端口，禁用空字符串\")\r\n\tdomain := flag.String(\"domain\", \"yilu.ml\", \"承载隧道的域名\")\r\n\ttlsCrt := flag.String(\"tlsCrt\", \"\", \"TLS证书文件的路径\")\r\n\ttlsKey := flag.String(\"tlsKey\", \"\", \"TLS密钥文件的路径\")\r\n\tlogto := flag.String(\"log\", \"stdout\", \"将日志消息写入此文件。 'stdout'和'none'有特殊意义\")\r\n\tloglevel := flag.String(\"log-level\", \"INFO\", \"要记录的消息级别。 其中之一: DEBUG, INFO, WARNING, ERROR\")\r\n\tflag.Parse()\r\n\r\n\treturn &Options{\r\n\t\thttpAddr:   *httpAddr,\r\n\t\thttpsAddr:  *httpsAddr,\r\n\t\ttunnelAddr: *tunnelAddr,\r\n\t\tdomain:     *domain,\r\n\t\ttlsCrt:     *tlsCrt,\r\n\t\ttlsKey:     *tlsKey,\r\n\t\tlogto:      *logto,\r\n\t\tloglevel:   *loglevel,\r\n\t}\r\n}\r\n"
  },
  {
    "path": "server/control.go",
    "content": "package server\n\nimport (\n\t\"cngrok/conn\"\n\t\"cngrok/msg\"\n\t\"cngrok/util\"\n\t\"cngrok/version\"\n\t\"fmt\"\n\t\"io\"\n\t\"runtime/debug\"\n\t\"strings\"\n\t\"time\"\n)\n\nconst (\n\tpingTimeoutInterval = 30 * time.Second\n\tconnReapInterval    = 10 * time.Second\n\tcontrolWriteTimeout = 10 * time.Second\n\tproxyStaleDuration  = 60 * time.Second\n\tproxyMaxPoolSize    = 10\n)\n\ntype Control struct {\n\t// auth message\n\tauth *msg.Auth\n\n\t// actual connection\n\tconn conn.Conn\n\n\t// put a message in this channel to send it over\n\t// conn to the client\n\tout chan (msg.Message)\n\n\t// read from this channel to get the next message sent\n\t// to us over conn by the client\n\tin chan (msg.Message)\n\n\t// the last time we received a ping from the client - for heartbeats\n\tlastPing time.Time\n\n\t// all of the tunnels this control connection handles\n\ttunnels []*Tunnel\n\n\t// proxy connections\n\tproxies chan conn.Conn\n\n\t// identifier\n\tid string\n\n\t// synchronizer for controlled shutdown of writer()\n\twriterShutdown *util.Shutdown\n\n\t// synchronizer for controlled shutdown of reader()\n\treaderShutdown *util.Shutdown\n\n\t// synchronizer for controlled shutdown of manager()\n\tmanagerShutdown *util.Shutdown\n\n\t// synchronizer for controller shutdown of entire Control\n\tshutdown *util.Shutdown\n}\n\nfunc NewControl(ctlConn conn.Conn, authMsg *msg.Auth) {\n\tvar err error\n\n\t// create the object\n\tc := &Control{\n\t\tauth:            authMsg,\n\t\tconn:            ctlConn,\n\t\tout:             make(chan msg.Message),\n\t\tin:              make(chan msg.Message),\n\t\tproxies:         make(chan conn.Conn, 10),\n\t\tlastPing:        time.Now(),\n\t\twriterShutdown:  util.NewShutdown(),\n\t\treaderShutdown:  util.NewShutdown(),\n\t\tmanagerShutdown: util.NewShutdown(),\n\t\tshutdown:        util.NewShutdown(),\n\t}\n\n\tfailAuth := func(e error) {\n\t\t_ = msg.WriteMsg(ctlConn, &msg.AuthResp{Error: e.Error()})\n\t\tctlConn.Close()\n\t}\n\n\t// register the clientid\n\tc.id = authMsg.ClientId\n\tif c.id == \"\" {\n\t\t// it's a new session, assign an ID\n\t\tif c.id, err = util.SecureRandId(16); err != nil {\n\t\t\tfailAuth(err)\n\t\t\treturn\n\t\t}\n\t}\n\n\t// set logging prefix\n\tctlConn.SetType(\"ctl\")\n\tctlConn.AddLogPrefix(c.id)\n\n\tif authMsg.Version != version.Proto {\n\t\tfailAuth(fmt.Errorf(\"不兼容的版本。 服务器 %s, 客户端 %s. 下载新版本 联系 http://cngrok.com\", version.MajorMinor(), authMsg.Version))\n\t\treturn\n\t}\n\n\t// register the control\n\tif replaced := controlRegistry.Add(c.id, c); replaced != nil {\n\t\treplaced.shutdown.WaitComplete()\n\t}\n\n\t// start the writer first so that the following messages get sent\n\tgo c.writer()\n\n\t// Respond to authentication\n\tc.out <- &msg.AuthResp{\n\t\tVersion:   version.Proto,\n\t\tMmVersion: version.MajorMinor(),\n\t\tClientId:  c.id,\n\t}\n\n\t// As a performance optimization, ask for a proxy connection up front\n\tc.out <- &msg.ReqProxy{}\n\n\t// manage the connection\n\tgo c.manager()\n\tgo c.reader()\n\tgo c.stopper()\n}\n\n// Register a new tunnel on this control connection\nfunc (c *Control) registerTunnel(rawTunnelReq *msg.ReqTunnel) {\n\tfor _, proto := range strings.Split(rawTunnelReq.Protocol, \"+\") {\n\t\ttunnelReq := *rawTunnelReq\n\t\ttunnelReq.Protocol = proto\n\n\t\tc.conn.Debug(\"注册新隧道\")\n\t\tt, err := NewTunnel(&tunnelReq, c)\n\t\tif err != nil {\n\t\t\tc.out <- &msg.NewTunnel{Error: err.Error()}\n\t\t\tif len(c.tunnels) == 0 {\n\t\t\t\tc.shutdown.Begin()\n\t\t\t}\n\n\t\t\t// we're done\n\t\t\treturn\n\t\t}\n\n\t\t// add it to the list of tunnels\n\t\tc.tunnels = append(c.tunnels, t)\n\n\t\t// acknowledge success\n\t\tc.out <- &msg.NewTunnel{\n\t\t\tUrl:      t.url,\n\t\t\tProtocol: proto,\n\t\t\tReqId:    rawTunnelReq.ReqId,\n\t\t}\n\n\t\trawTunnelReq.Hostname = strings.Replace(t.url, proto+\"://\", \"\", 1)\n\t}\n}\n\nfunc (c *Control) manager() {\n\t// don't crash on panics\n\tdefer func() {\n\t\tif err := recover(); err != nil {\n\t\t\tc.conn.Info(\"Control::管理器失败，出现错误 %v: %s\", err, debug.Stack())\n\t\t}\n\t}()\n\n\t// kill everything if the control manager stops\n\tdefer c.shutdown.Begin()\n\n\t// notify that manager() has shutdown\n\tdefer c.managerShutdown.Complete()\n\n\t// reaping timer for detecting heartbeat failure\n\treap := time.NewTicker(connReapInterval)\n\tdefer reap.Stop()\n\n\tfor {\n\t\tselect {\n\t\tcase <-reap.C:\n\t\t\tif time.Since(c.lastPing) > pingTimeoutInterval {\n\t\t\t\tc.conn.Info(\"失去心跳\")\n\t\t\t\tc.shutdown.Begin()\n\t\t\t}\n\n\t\tcase mRaw, ok := <-c.in:\n\t\t\t// c.in closes to indicate shutdown\n\t\t\tif !ok {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tswitch m := mRaw.(type) {\n\t\t\tcase *msg.ReqTunnel:\n\t\t\t\tc.registerTunnel(m)\n\n\t\t\tcase *msg.Ping:\n\t\t\t\tc.lastPing = time.Now()\n\t\t\t\tc.out <- &msg.Pong{}\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunc (c *Control) writer() {\n\tdefer func() {\n\t\tif err := recover(); err != nil {\n\t\t\tc.conn.Info(\"Control::写入失败，出现错误 %v: %s\", err, debug.Stack())\n\t\t}\n\t}()\n\n\t// kill everything if the writer() stops\n\tdefer c.shutdown.Begin()\n\n\t// notify that we've flushed all messages\n\tdefer c.writerShutdown.Complete()\n\n\t// write messages to the control channel\n\tfor m := range c.out {\n\t\tc.conn.SetWriteDeadline(time.Now().Add(controlWriteTimeout))\n\t\tif err := msg.WriteMsg(c.conn, m); err != nil {\n\t\t\tpanic(err)\n\t\t}\n\t}\n}\n\nfunc (c *Control) reader() {\n\tdefer func() {\n\t\tif err := recover(); err != nil {\n\t\t\tc.conn.Warn(\"Control::读取失败，出现错误 %v: %s\", err, debug.Stack())\n\t\t}\n\t}()\n\n\t// kill everything if the reader stops\n\tdefer c.shutdown.Begin()\n\n\t// notify that we're done\n\tdefer c.readerShutdown.Complete()\n\n\t// read messages from the control channel\n\tfor {\n\t\tif msg, err := msg.ReadMsg(c.conn); err != nil {\n\t\t\tif err == io.EOF {\n\t\t\t\tc.conn.Info(\"EOF\")\n\t\t\t\treturn\n\t\t\t} else {\n\t\t\t\tpanic(err)\n\t\t\t}\n\t\t} else {\n\t\t\t// this can also panic during shutdown\n\t\t\tc.in <- msg\n\t\t}\n\t}\n}\n\nfunc (c *Control) stopper() {\n\tdefer func() {\n\t\tif r := recover(); r != nil {\n\t\t\tc.conn.Error(\"无法关闭控制: %v\", r)\n\t\t}\n\t}()\n\n\t// wait until we're instructed to shutdown\n\tc.shutdown.WaitBegin()\n\n\t// remove ourself from the control registry\n\tcontrolRegistry.Del(c.id)\n\n\t// shutdown manager() so that we have no more work to do\n\tclose(c.in)\n\tc.managerShutdown.WaitComplete()\n\n\t// shutdown writer()\n\tclose(c.out)\n\tc.writerShutdown.WaitComplete()\n\n\t// close connection fully\n\tc.conn.Close()\n\n\t// shutdown all of the tunnels\n\tfor _, t := range c.tunnels {\n\t\tt.Shutdown()\n\t}\n\n\t// shutdown all of the proxy connections\n\tclose(c.proxies)\n\tfor p := range c.proxies {\n\t\tp.Close()\n\t}\n\n\tc.shutdown.Complete()\n\tc.conn.Info(\"Shutdown complete\")\n}\n\nfunc (c *Control) RegisterProxy(conn conn.Conn) {\n\tconn.AddLogPrefix(c.id)\n\n\tconn.SetDeadline(time.Now().Add(proxyStaleDuration))\n\tselect {\n\tcase c.proxies <- conn:\n\t\tconn.Info(\"已注册\")\n\tdefault:\n\t\tconn.Info(\"代理缓冲区已满，丢弃。\")\n\t\tconn.Close()\n\t}\n}\n\n// Remove a proxy connection from the pool and return it\n// If not proxy connections are in the pool, request one\n// and wait until it is available\n// Returns an error if we couldn't get a proxy because it took too long\n// or the tunnel is closing\nfunc (c *Control) GetProxy() (proxyConn conn.Conn, err error) {\n\tvar ok bool\n\n\t// get a proxy connection from the pool\n\tselect {\n\tcase proxyConn, ok = <-c.proxies:\n\t\tif !ok {\n\t\t\terr = fmt.Errorf(\"没有可用的代理连接，控制正在关闭\")\n\t\t\treturn\n\t\t}\n\tdefault:\n\t\t// no proxy available in the pool, ask for one over the control channel\n\t\tc.conn.Debug(\"池中没有代理，正在请求代理控制 . . .\")\n\n\t\tif err = util.PanicToError(func() { c.out <- &msg.ReqProxy{} }); err != nil {\n\t\t\treturn\n\t\t}\n\n\t\tselect {\n\t\tcase proxyConn, ok = <-c.proxies:\n\t\t\tif !ok {\n\t\t\t\terr = fmt.Errorf(\"没有可用的代理连接，控制正在关闭\")\n\t\t\t\treturn\n\t\t\t}\n\n\t\tcase <-time.After(pingTimeoutInterval):\n\t\t\terr = fmt.Errorf(\"尝试获取代理连接时超时\")\n\t\t\treturn\n\t\t}\n\t}\n\treturn\n}\n\n// Called when this control is replaced by another control\n// this can happen if the network drops out and the client reconnects\n// before the old tunnel has lost its heartbeat\nfunc (c *Control) Replaced(replacement *Control) {\n\tc.conn.Info(\"替换为控制: %s\", replacement.conn.Id())\n\t// set the control id to empty string so that when stopper()\n\t// calls registry.Del it won't delete the replacement\n\tc.id = \"\"\n\n\t// tell the old one to shutdown\n\tc.shutdown.Begin()\n}\n"
  },
  {
    "path": "server/http.go",
    "content": "package server\r\n\r\nimport (\r\n\t\"crypto/tls\"\r\n\t\"fmt\"\r\n\tvhost \"github.com/inconshreveable/go-vhost\"\r\n\t//\"net\"\r\n\t\"cngrok/conn\"\r\n\t\"cngrok/log\"\r\n\t\"strings\"\r\n\t\"time\"\r\n)\r\n\r\nconst (\r\n\tNotAuthorized = `HTTP/1.0 401 Not Authorized\r\nWWW-Authenticate: Basic realm=\"cngrok\"\r\nContent-Length: 23\r\n\r\nAuthorization required\r\n`\r\n\r\n\tNotFound = `HTTP/1.0 404 Not Found\r\nContent-Length: %d\r\n\r\nTunnel %s not found\r\n`\r\n\r\n\tBadRequest = `HTTP/1.0 400 Bad Request\r\nContent-Length: 12\r\n\r\nBad Request\r\n`\r\n)\r\n\r\n// Listens for new http(s) connections from the public internet\r\nfunc startHttpListener(addr string, tlsCfg *tls.Config) (listener *conn.Listener) {\r\n\t// bind/listen for incoming connections\r\n\tvar err error\r\n\tif listener, err = conn.Listen(addr, \"pub\", tlsCfg); err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\r\n\tproto := \"http\"\r\n\tif tlsCfg != nil {\r\n\t\tproto = \"https\"\r\n\t}\r\n\r\n\tlog.Info(\"监听公共 %s 连接 %v\", proto, listener.Addr.String())\r\n\tgo func() {\r\n\t\tfor conn := range listener.Conns {\r\n\t\t\tgo httpHandler(conn, proto)\r\n\t\t}\r\n\t}()\r\n\r\n\treturn\r\n}\r\n\r\n// Handles a new http connection from the public internet\r\nfunc httpHandler(c conn.Conn, proto string) {\r\n\tdefer c.Close()\r\n\tdefer func() {\r\n\t\t// recover from failures\r\n\t\tif r := recover(); r != nil {\r\n\t\t\tc.Warn(\"http处理失败，出现错误 %v\", r)\r\n\t\t}\r\n\t}()\r\n\r\n\t// Make sure we detect dead connections while we decide how to multiplex\r\n\tc.SetDeadline(time.Now().Add(connReadTimeout))\r\n\r\n\t// multiplex by extracting the Host header, the vhost library\r\n\tvhostConn, err := vhost.HTTP(c)\r\n\tif err != nil {\r\n\t\tc.Warn(\"无法读取有效的 %s 请求: %v\", proto, err)\r\n\t\tc.Write([]byte(BadRequest))\r\n\t\treturn\r\n\t}\r\n\r\n\t// read out the Host header and auth from the request\r\n\thost := strings.ToLower(vhostConn.Host())\r\n\tauth := vhostConn.Request.Header.Get(\"Authorization\")\r\n\r\n\t// done reading mux data, free up the request memory\r\n\tvhostConn.Free()\r\n\r\n\t// We need to read from the vhost conn now since it mucked around reading the stream\r\n\tc = conn.Wrap(vhostConn, \"pub\")\r\n\r\n\t// multiplex to find the right backend host\r\n\tc.Debug(\"在请求中找到hostname %s \", host)\r\n\ttunnel := tunnelRegistry.Get(fmt.Sprintf(\"%s://%s\", proto, host))\r\n\tif tunnel == nil {\r\n\t\tc.Info(\"No tunnel found for hostname %s\", host)\r\n\t\tc.Write([]byte(fmt.Sprintf(NotFound, len(host)+18, host)))\r\n\t\treturn\r\n\t}\r\n\r\n\t// If the client specified http auth and it doesn't match this request's auth\r\n\t// then fail the request with 401 Not Authorized and request the client reissue the\r\n\t// request with basic authdeny the request\r\n\tif tunnel.req.HttpAuth != \"\" && auth != tunnel.req.HttpAuth {\r\n\t\tc.Info(\"验证失败: %s\", auth)\r\n\t\tc.Write([]byte(NotAuthorized))\r\n\t\treturn\r\n\t}\r\n\r\n\t// dead connections will now be handled by tunnel heartbeating and the client\r\n\tc.SetDeadline(time.Time{})\r\n\r\n\t// let the tunnel handle the connection now\r\n\ttunnel.HandlePublicConnection(c)\r\n}\r\n"
  },
  {
    "path": "server/main.go",
    "content": "package server\r\n\r\nimport (\r\n\t\"cngrok/conn\"\r\n\tlog \"cngrok/log\"\r\n\t\"cngrok/msg\"\r\n\t\"cngrok/util\"\r\n\t\"crypto/tls\"\r\n\t\"math/rand\"\r\n\t\"os\"\r\n\t\"runtime/debug\"\r\n\t\"time\"\r\n)\r\n\r\nconst (\r\n\tregistryCacheSize uint64        = 1024 * 1024 // 1 MB\r\n\tconnReadTimeout   time.Duration = 10 * time.Second\r\n)\r\n\r\n// GLOBALS\r\nvar (\r\n\ttunnelRegistry  *TunnelRegistry\r\n\tcontrolRegistry *ControlRegistry\r\n\r\n\t// XXX: kill these global variables - they're only used in tunnel.go for constructing forwarding URLs\r\n\topts      *Options\r\n\tlisteners map[string]*conn.Listener\r\n)\r\n\r\nfunc NewProxy(pxyConn conn.Conn, regPxy *msg.RegProxy) {\r\n\t// fail gracefully if the proxy connection fails to register\r\n\tdefer func() {\r\n\t\tif r := recover(); r != nil {\r\n\t\t\tpxyConn.Warn(\"失败，出现错误: %v\", r)\r\n\t\t\tpxyConn.Close()\r\n\t\t}\r\n\t}()\r\n\r\n\t// set logging prefix\r\n\tpxyConn.SetType(\"pxy\")\r\n\r\n\t// look up the control connection for this proxy\r\n\tpxyConn.Info(\"正在注册新代理 %s\", regPxy.ClientId)\r\n\tctl := controlRegistry.Get(regPxy.ClientId)\r\n\r\n\tif ctl == nil {\r\n\t\tpanic(\"找不到客户端标识符: \" + regPxy.ClientId)\r\n\t}\r\n\r\n\tctl.RegisterProxy(pxyConn)\r\n}\r\n\r\n// Listen for incoming control and proxy connections\r\n// We listen for incoming control and proxy connections on the same port\r\n// for ease of deployment. The hope is that by running on port 443, using\r\n// TLS and running all connections over the same port, we can bust through\r\n// restrictive firewalls.\r\nfunc tunnelListener(addr string, tlsConfig *tls.Config) {\r\n\t// listen for incoming connections\r\n\tlistener, err := conn.Listen(addr, \"tun\", tlsConfig)\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\r\n\tlog.Info(\"监听控制和代理连接端口 %s\", listener.Addr.String())\r\n\tfor c := range listener.Conns {\r\n\t\tgo func(tunnelConn conn.Conn) {\r\n\t\t\t// don't crash on panics\r\n\t\t\tdefer func() {\r\n\t\t\t\tif r := recover(); r != nil {\r\n\t\t\t\t\ttunnelConn.Info(\"隧道侦听失败，出现错误 %v: %s\", r, debug.Stack())\r\n\t\t\t\t}\r\n\t\t\t}()\r\n\r\n\t\t\ttunnelConn.SetReadDeadline(time.Now().Add(connReadTimeout))\r\n\t\t\tvar rawMsg msg.Message\r\n\t\t\tif rawMsg, err = msg.ReadMsg(tunnelConn); err != nil {\r\n\t\t\t\ttunnelConn.Warn(\"无法读取信息: %v\", err)\r\n\r\n\t\t\t\ttunnelConn.Close()\r\n\t\t\t\treturn\r\n\t\t\t}\r\n\r\n\t\t\t// don't timeout after the initial read, tunnel heartbeating will kill\r\n\t\t\t// dead connections\r\n\t\t\ttunnelConn.SetReadDeadline(time.Time{})\r\n\r\n\t\t\tswitch m := rawMsg.(type) {\r\n\t\t\tcase *msg.Auth:\r\n\t\t\t\tNewControl(tunnelConn, m)\r\n\r\n\t\t\tcase *msg.RegProxy:\r\n\t\t\t\tNewProxy(tunnelConn, m)\r\n\r\n\t\t\tdefault:\r\n\t\t\t\ttunnelConn.Close()\r\n\t\t\t}\r\n\t\t}(c)\r\n\t}\r\n}\r\n\r\nfunc Main() {\r\n\t// parse options\r\n\topts = parseArgs()\r\n\r\n\t// init logging\r\n\tlog.LogTo(opts.logto, opts.loglevel)\r\n\r\n\t// seed random number generator\r\n\tseed, err := util.RandomSeed()\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\trand.Seed(seed)\r\n\r\n\t// init tunnel/control registry\r\n\tregistryCacheFile := os.Getenv(\"REGISTRY_CACHE_FILE\")\r\n\ttunnelRegistry = NewTunnelRegistry(registryCacheSize, registryCacheFile)\r\n\tcontrolRegistry = NewControlRegistry()\r\n\r\n\t// start listeners\r\n\tlisteners = make(map[string]*conn.Listener)\r\n\r\n\t// load tls configuration\r\n\ttlsConfig, err := LoadTLSConfig(opts.tlsCrt, opts.tlsKey)\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\r\n\t// listen for http\r\n\tif opts.httpAddr != \"\" {\r\n\t\tlisteners[\"http\"] = startHttpListener(opts.httpAddr, nil)\r\n\t}\r\n\r\n\t// listen for https\r\n\tif opts.httpsAddr != \"\" {\r\n\t\tlisteners[\"https\"] = startHttpListener(opts.httpsAddr, tlsConfig)\r\n\t}\r\n\r\n\t// ngrok clients\r\n\ttunnelListener(opts.tunnelAddr, tlsConfig)\r\n}\r\n"
  },
  {
    "path": "server/metrics.go",
    "content": "package server\r\n\r\nimport (\r\n\t\"bytes\"\r\n\t\"cngrok/conn\"\r\n\t\"cngrok/log\"\r\n\t\"encoding/json\"\r\n\t\"fmt\"\r\n\tgometrics \"github.com/rcrowley/go-metrics\"\r\n\t\"io/ioutil\"\r\n\t\"net/http\"\r\n\t\"os\"\r\n\t\"time\"\r\n)\r\n\r\nvar metrics Metrics\r\n\r\nfunc init() {\r\n\tkeenApiKey := os.Getenv(\"KEEN_API_KEY\")\r\n\r\n\tif keenApiKey != \"\" {\r\n\t\tmetrics = NewKeenIoMetrics(60 * time.Second)\r\n\t} else {\r\n\t\tmetrics = NewLocalMetrics(30 * time.Second)\r\n\t}\r\n}\r\n\r\ntype Metrics interface {\r\n\tlog.Logger\r\n\tOpenConnection(*Tunnel, conn.Conn)\r\n\tCloseConnection(*Tunnel, conn.Conn, time.Time, int64, int64)\r\n\tOpenTunnel(*Tunnel)\r\n\tCloseTunnel(*Tunnel)\r\n}\r\n\r\ntype LocalMetrics struct {\r\n\tlog.Logger\r\n\treportInterval time.Duration\r\n\twindowsCounter gometrics.Counter\r\n\tlinuxCounter   gometrics.Counter\r\n\tosxCounter     gometrics.Counter\r\n\totherCounter   gometrics.Counter\r\n\r\n\ttunnelMeter        gometrics.Meter\r\n\ttcpTunnelMeter     gometrics.Meter\r\n\thttpTunnelMeter    gometrics.Meter\r\n\tconnMeter          gometrics.Meter\r\n\tlostHeartbeatMeter gometrics.Meter\r\n\r\n\tconnTimer gometrics.Timer\r\n\r\n\tbytesInCount  gometrics.Counter\r\n\tbytesOutCount gometrics.Counter\r\n\r\n\t/*\r\n\t   tunnelGauge gometrics.Gauge\r\n\t   tcpTunnelGauge gometrics.Gauge\r\n\t   connGauge gometrics.Gauge\r\n\t*/\r\n}\r\n\r\nfunc NewLocalMetrics(reportInterval time.Duration) *LocalMetrics {\r\n\tmetrics := LocalMetrics{\r\n\t\tLogger:         log.NewPrefixLogger(\"metrics\"),\r\n\t\treportInterval: reportInterval,\r\n\t\twindowsCounter: gometrics.NewCounter(),\r\n\t\tlinuxCounter:   gometrics.NewCounter(),\r\n\t\tosxCounter:     gometrics.NewCounter(),\r\n\t\totherCounter:   gometrics.NewCounter(),\r\n\r\n\t\ttunnelMeter:        gometrics.NewMeter(),\r\n\t\ttcpTunnelMeter:     gometrics.NewMeter(),\r\n\t\thttpTunnelMeter:    gometrics.NewMeter(),\r\n\t\tconnMeter:          gometrics.NewMeter(),\r\n\t\tlostHeartbeatMeter: gometrics.NewMeter(),\r\n\r\n\t\tconnTimer: gometrics.NewTimer(),\r\n\r\n\t\tbytesInCount:  gometrics.NewCounter(),\r\n\t\tbytesOutCount: gometrics.NewCounter(),\r\n\r\n\t\t/*\r\n\t\t   metrics.tunnelGauge = gometrics.NewGauge(),\r\n\t\t   metrics.tcpTunnelGauge = gometrics.NewGauge(),\r\n\t\t   metrics.connGauge = gometrics.NewGauge(),\r\n\t\t*/\r\n\t}\r\n\r\n\tgo metrics.Report()\r\n\r\n\treturn &metrics\r\n}\r\n\r\nfunc (m *LocalMetrics) OpenTunnel(t *Tunnel) {\r\n\tm.tunnelMeter.Mark(1)\r\n\r\n\tswitch t.ctl.auth.OS {\r\n\tcase \"windows\":\r\n\t\tm.windowsCounter.Inc(1)\r\n\tcase \"linux\":\r\n\t\tm.linuxCounter.Inc(1)\r\n\tcase \"darwin\":\r\n\t\tm.osxCounter.Inc(1)\r\n\tdefault:\r\n\t\tm.otherCounter.Inc(1)\r\n\t}\r\n\r\n\tswitch t.req.Protocol {\r\n\tcase \"tcp\":\r\n\t\tm.tcpTunnelMeter.Mark(1)\r\n\tcase \"http\":\r\n\t\tm.httpTunnelMeter.Mark(1)\r\n\t}\r\n}\r\n\r\nfunc (m *LocalMetrics) CloseTunnel(t *Tunnel) {\r\n}\r\n\r\nfunc (m *LocalMetrics) OpenConnection(t *Tunnel, c conn.Conn) {\r\n\tm.connMeter.Mark(1)\r\n}\r\n\r\nfunc (m *LocalMetrics) CloseConnection(t *Tunnel, c conn.Conn, start time.Time, bytesIn, bytesOut int64) {\r\n\tm.bytesInCount.Inc(bytesIn)\r\n\tm.bytesOutCount.Inc(bytesOut)\r\n}\r\n\r\nfunc (m *LocalMetrics) Report() {\r\n\tm.Info(\"每 %d 秒报告一次\", int(m.reportInterval.Seconds()))\r\n\r\n\tfor {\r\n\t\ttime.Sleep(m.reportInterval)\r\n\t\tbuffer, err := json.Marshal(map[string]interface{}{\r\n\t\t\t\"windows\": m.windowsCounter.Count(),\r\n\t\t\t\"linux\":   m.linuxCounter.Count(),\r\n\t\t\t\"osx\":     m.osxCounter.Count(),\r\n\t\t\t\"other\":   m.otherCounter.Count(),\r\n\t\t\t\"http隧道数\": m.httpTunnelMeter.Count(),\r\n\t\t\t\"tcp隧道数\":  m.tcpTunnelMeter.Count(),\r\n\t\t\t\"隧道总数\":    m.tunnelMeter.Count(),\r\n\t\t\t\"隧道率\":     m.tunnelMeter.Rate1(),\r\n\t\t\t\"连接数\":     m.connMeter.Count(),\r\n\t\t\t\"连接率\":     m.connMeter.Rate1(),\r\n\t\t\t\"接收字节数\":   m.bytesInCount.Count(),\r\n\t\t\t\"发送字节数\":   m.bytesOutCount.Count(),\r\n\t\t})\r\n\r\n\t\tif err != nil {\r\n\t\t\tm.Error(\"无法序列化指标: %v\", err)\r\n\t\t\tcontinue\r\n\t\t}\r\n\r\n\t\tm.Info(\"报告: %s\", buffer)\r\n\t}\r\n}\r\n\r\ntype KeenIoMetric struct {\r\n\tCollection string\r\n\tEvent      interface{}\r\n}\r\n\r\ntype KeenIoMetrics struct {\r\n\tlog.Logger\r\n\tApiKey       string\r\n\tProjectToken string\r\n\tHttpClient   http.Client\r\n\tMetrics      chan *KeenIoMetric\r\n}\r\n\r\nfunc NewKeenIoMetrics(batchInterval time.Duration) *KeenIoMetrics {\r\n\tk := &KeenIoMetrics{\r\n\t\tLogger:       log.NewPrefixLogger(\"metrics\"),\r\n\t\tApiKey:       os.Getenv(\"KEEN_API_KEY\"),\r\n\t\tProjectToken: os.Getenv(\"KEEN_PROJECT_TOKEN\"),\r\n\t\tMetrics:      make(chan *KeenIoMetric, 1000),\r\n\t}\r\n\r\n\tgo func() {\r\n\t\tdefer func() {\r\n\t\t\tif r := recover(); r != nil {\r\n\t\t\t\tk.Error(\"KeenIoMetrics failed: %v\", r)\r\n\t\t\t}\r\n\t\t}()\r\n\r\n\t\tbatch := make(map[string][]interface{})\r\n\t\tbatchTimer := time.Tick(batchInterval)\r\n\r\n\t\tfor {\r\n\t\t\tselect {\r\n\t\t\tcase m := <-k.Metrics:\r\n\t\t\t\tlist, ok := batch[m.Collection]\r\n\t\t\t\tif !ok {\r\n\t\t\t\t\tlist = make([]interface{}, 0)\r\n\t\t\t\t}\r\n\t\t\t\tbatch[m.Collection] = append(list, m.Event)\r\n\r\n\t\t\tcase <-batchTimer:\r\n\t\t\t\t// no metrics to report\r\n\t\t\t\tif len(batch) == 0 {\r\n\t\t\t\t\tcontinue\r\n\t\t\t\t}\r\n\r\n\t\t\t\tpayload, err := json.Marshal(batch)\r\n\t\t\t\tif err != nil {\r\n\t\t\t\t\tk.Error(\"Failed to serialize metrics payload: %v, %v\", batch, err)\r\n\t\t\t\t} else {\r\n\t\t\t\t\tfor key, val := range batch {\r\n\t\t\t\t\t\tk.Debug(\"Reporting %d metrics for %s\", len(val), key)\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tk.AuthedRequest(\"POST\", \"/events\", bytes.NewReader(payload))\r\n\t\t\t\t}\r\n\t\t\t\tbatch = make(map[string][]interface{})\r\n\t\t\t}\r\n\t\t}\r\n\t}()\r\n\r\n\treturn k\r\n}\r\n\r\nfunc (k *KeenIoMetrics) AuthedRequest(method, path string, body *bytes.Reader) (resp *http.Response, err error) {\r\n\tpath = fmt.Sprintf(\"https://api.keen.io/3.0/projects/%s%s\", k.ProjectToken, path)\r\n\treq, err := http.NewRequest(method, path, body)\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\treq.Header.Add(\"Authorization\", k.ApiKey)\r\n\r\n\tif body != nil {\r\n\t\treq.Header.Add(\"Content-Type\", \"application/json\")\r\n\t\treq.ContentLength = int64(body.Len())\r\n\t}\r\n\r\n\trequestStartAt := time.Now()\r\n\tresp, err = k.HttpClient.Do(req)\r\n\r\n\tif err != nil {\r\n\t\tk.Error(\"无法将指标事件发送到 keen.io %v\", err)\r\n\t} else {\r\n\t\tk.Info(\"keen.io 处理的请求 %f 秒\", time.Since(requestStartAt).Seconds())\r\n\t\tdefer resp.Body.Close()\r\n\t\tif resp.StatusCode != 200 {\r\n\t\t\tbytes, _ := ioutil.ReadAll(resp.Body)\r\n\t\t\tk.Error(\"获得 %v 响应， 从 keen.io: %s\", resp.StatusCode, bytes)\r\n\t\t}\r\n\t}\r\n\r\n\treturn\r\n}\r\n\r\nfunc (k *KeenIoMetrics) OpenConnection(t *Tunnel, c conn.Conn) {\r\n}\r\n\r\nfunc (k *KeenIoMetrics) CloseConnection(t *Tunnel, c conn.Conn, start time.Time, in, out int64) {\r\n\tevent := struct {\r\n\t\tKeen               KeenStruct `json:\"keen\"`\r\n\t\tOS                 string\r\n\t\tClientId           string\r\n\t\tProtocol           string\r\n\t\tUrl                string\r\n\t\tUser               string\r\n\t\tVersion            string\r\n\t\tReason             string\r\n\t\tHttpAuth           bool\r\n\t\tSubdomain          bool\r\n\t\tTunnelDuration     float64\r\n\t\tConnectionDuration float64\r\n\t\tBytesIn            int64\r\n\t\tBytesOut           int64\r\n\t}{\r\n\t\tKeen: KeenStruct{\r\n\t\t\tTimestamp: start.UTC().Format(\"2006-01-02T15:04:05.000Z\"),\r\n\t\t},\r\n\t\tOS:                 t.ctl.auth.OS,\r\n\t\tClientId:           t.ctl.id,\r\n\t\tProtocol:           t.req.Protocol,\r\n\t\tUrl:                t.url,\r\n\t\tUser:               t.ctl.auth.User,\r\n\t\tVersion:            t.ctl.auth.MmVersion,\r\n\t\tHttpAuth:           t.req.HttpAuth != \"\",\r\n\t\tSubdomain:          t.req.Subdomain != \"\",\r\n\t\tTunnelDuration:     time.Since(t.start).Seconds(),\r\n\t\tConnectionDuration: time.Since(start).Seconds(),\r\n\t\tBytesIn:            in,\r\n\t\tBytesOut:           out,\r\n\t}\r\n\r\n\tk.Metrics <- &KeenIoMetric{Collection: \"CloseConnection\", Event: event}\r\n}\r\n\r\nfunc (k *KeenIoMetrics) OpenTunnel(t *Tunnel) {\r\n}\r\n\r\ntype KeenStruct struct {\r\n\tTimestamp string `json:\"timestamp\"`\r\n}\r\n\r\nfunc (k *KeenIoMetrics) CloseTunnel(t *Tunnel) {\r\n\tevent := struct {\r\n\t\tKeen      KeenStruct `json:\"keen\"`\r\n\t\tOS        string\r\n\t\tClientId  string\r\n\t\tProtocol  string\r\n\t\tUrl       string\r\n\t\tUser      string\r\n\t\tVersion   string\r\n\t\tReason    string\r\n\t\tDuration  float64\r\n\t\tHttpAuth  bool\r\n\t\tSubdomain bool\r\n\t}{\r\n\t\tKeen: KeenStruct{\r\n\t\t\tTimestamp: t.start.UTC().Format(\"2006-01-02T15:04:05.000Z\"),\r\n\t\t},\r\n\t\tOS:       t.ctl.auth.OS,\r\n\t\tClientId: t.ctl.id,\r\n\t\tProtocol: t.req.Protocol,\r\n\t\tUrl:      t.url,\r\n\t\tUser:     t.ctl.auth.User,\r\n\t\tVersion:  t.ctl.auth.MmVersion,\r\n\t\t//Reason: reason,\r\n\t\tDuration:  time.Since(t.start).Seconds(),\r\n\t\tHttpAuth:  t.req.HttpAuth != \"\",\r\n\t\tSubdomain: t.req.Subdomain != \"\",\r\n\t}\r\n\r\n\tk.Metrics <- &KeenIoMetric{Collection: \"CloseTunnel\", Event: event}\r\n}\r\n"
  },
  {
    "path": "server/registry.go",
    "content": "package server\r\n\r\nimport (\r\n\t\"cngrok/cache\"\r\n\t\"cngrok/log\"\r\n\t\"encoding/gob\"\r\n\t\"fmt\"\r\n\t\"net\"\r\n\t\"sync\"\r\n\t\"time\"\r\n)\r\n\r\nconst (\r\n\tcacheSaveInterval time.Duration = 10 * time.Minute\r\n)\r\n\r\ntype cacheUrl string\r\n\r\nfunc (url cacheUrl) Size() int {\r\n\treturn len(url)\r\n}\r\n\r\n// TunnelRegistry maps a tunnel URL to Tunnel structures\r\ntype TunnelRegistry struct {\r\n\ttunnels  map[string]*Tunnel\r\n\taffinity *cache.LRUCache\r\n\tlog.Logger\r\n\tsync.RWMutex\r\n}\r\n\r\nfunc NewTunnelRegistry(cacheSize uint64, cacheFile string) *TunnelRegistry {\r\n\tregistry := &TunnelRegistry{\r\n\t\ttunnels:  make(map[string]*Tunnel),\r\n\t\taffinity: cache.NewLRUCache(cacheSize),\r\n\t\tLogger:   log.NewPrefixLogger(\"registry\", \"tun\"),\r\n\t}\r\n\r\n\t// LRUCache uses Gob encoding. Unfortunately, Gob is fickle and will fail\r\n\t// to encode or decode any non-primitive types that haven't been \"registered\"\r\n\t// with it. Since we store cacheUrl objects, we need to register them here first\r\n\t// for the encoding/decoding to work\r\n\tvar urlobj cacheUrl\r\n\tgob.Register(urlobj)\r\n\r\n\t// try to load and then periodically save the affinity cache to file, if specified\r\n\tif cacheFile != \"\" {\r\n\t\terr := registry.affinity.LoadItemsFromFile(cacheFile)\r\n\t\tif err != nil {\r\n\t\t\tregistry.Error(\"无法加载关联缓存 %s: %v\", cacheFile, err)\r\n\t\t}\r\n\r\n\t\tregistry.SaveCacheThread(cacheFile, cacheSaveInterval)\r\n\t} else {\r\n\t\tregistry.Info(\"未指定关联缓存\")\r\n\t}\r\n\r\n\treturn registry\r\n}\r\n\r\n// Spawns a goroutine the periodically saves the cache to a file.\r\nfunc (r *TunnelRegistry) SaveCacheThread(path string, interval time.Duration) {\r\n\tgo func() {\r\n\t\tr.Info(\"将关联性缓存保存到 %s 每 %s\", path, interval.String())\r\n\t\tfor {\r\n\t\t\ttime.Sleep(interval)\r\n\r\n\t\t\tr.Debug(\"保存关联缓存\")\r\n\t\t\terr := r.affinity.SaveItemsToFile(path)\r\n\t\t\tif err != nil {\r\n\t\t\t\tr.Error(\"无法保存关联缓存: %v\", err)\r\n\t\t\t} else {\r\n\t\t\t\tr.Info(\"保存的关联缓存\")\r\n\t\t\t}\r\n\t\t}\r\n\t}()\r\n}\r\n\r\n// Register a tunnel with a specific url, returns an error\r\n// if a tunnel is already registered at that url\r\nfunc (r *TunnelRegistry) Register(url string, t *Tunnel) error {\r\n\tr.Lock()\r\n\tdefer r.Unlock()\r\n\r\n\tif r.tunnels[url] != nil {\r\n\t\treturn fmt.Errorf(\"隧道 %s 已注册.\", url)\r\n\t}\r\n\r\n\tr.tunnels[url] = t\r\n\r\n\treturn nil\r\n}\r\n\r\nfunc (r *TunnelRegistry) cacheKeys(t *Tunnel) (ip string, id string) {\r\n\tclientIp := t.ctl.conn.RemoteAddr().(*net.TCPAddr).IP.String()\r\n\tclientId := t.ctl.id\r\n\r\n\tipKey := fmt.Sprintf(\"客户端-ip-%s:%s\", t.req.Protocol, clientIp)\r\n\tidKey := fmt.Sprintf(\"客户端-id-%s:%s\", t.req.Protocol, clientId)\r\n\treturn ipKey, idKey\r\n}\r\n\r\nfunc (r *TunnelRegistry) GetCachedRegistration(t *Tunnel) (url string) {\r\n\tipCacheKey, idCacheKey := r.cacheKeys(t)\r\n\r\n\t// check cache for ID first, because we prefer that over IP which might\r\n\t// not be specific to a user because of NATs\r\n\tif v, ok := r.affinity.Get(idCacheKey); ok {\r\n\t\turl = string(v.(cacheUrl))\r\n\t\tt.Debug(\"找到注册表关联性 %s 为 %s\", url, idCacheKey)\r\n\t} else if v, ok := r.affinity.Get(ipCacheKey); ok {\r\n\t\turl = string(v.(cacheUrl))\r\n\t\tt.Debug(\"找到注册表关联性 %s 为 %s\", url, ipCacheKey)\r\n\t}\r\n\treturn\r\n}\r\n\r\nfunc (r *TunnelRegistry) RegisterAndCache(url string, t *Tunnel) (err error) {\r\n\tif err = r.Register(url, t); err == nil {\r\n\t\t// we successfully assigned a url, cache it\r\n\t\tipCacheKey, idCacheKey := r.cacheKeys(t)\r\n\t\tr.affinity.Set(ipCacheKey, cacheUrl(url))\r\n\t\tr.affinity.Set(idCacheKey, cacheUrl(url))\r\n\t}\r\n\treturn\r\n\r\n}\r\n\r\n// Register a tunnel with the following process:\r\n// Consult the affinity cache to try to assign a previously used tunnel url if possible\r\n// Generate new urls repeatedly with the urlFn and register until one is available.\r\nfunc (r *TunnelRegistry) RegisterRepeat(urlFn func() string, t *Tunnel) (string, error) {\r\n\turl := r.GetCachedRegistration(t)\r\n\tif url == \"\" {\r\n\t\turl = urlFn()\r\n\t}\r\n\r\n\tmaxAttempts := 5\r\n\tfor i := 0; i < maxAttempts; i++ {\r\n\t\tif err := r.RegisterAndCache(url, t); err != nil {\r\n\t\t\t// pick a new url and try again\r\n\t\t\turl = urlFn()\r\n\t\t} else {\r\n\t\t\t// we successfully assigned a url, we're done\r\n\t\t\treturn url, nil\r\n\t\t}\r\n\t}\r\n\r\n\treturn \"\", fmt.Errorf(\"在 %d 次尝试后无法分配网址！\", maxAttempts)\r\n}\r\n\r\nfunc (r *TunnelRegistry) Del(url string) {\r\n\tr.Lock()\r\n\tdefer r.Unlock()\r\n\tdelete(r.tunnels, url)\r\n}\r\n\r\nfunc (r *TunnelRegistry) Get(url string) *Tunnel {\r\n\tr.RLock()\r\n\tdefer r.RUnlock()\r\n\treturn r.tunnels[url]\r\n}\r\n\r\n// ControlRegistry maps a client ID to Control structures\r\ntype ControlRegistry struct {\r\n\tcontrols map[string]*Control\r\n\tlog.Logger\r\n\tsync.RWMutex\r\n}\r\n\r\nfunc NewControlRegistry() *ControlRegistry {\r\n\treturn &ControlRegistry{\r\n\t\tcontrols: make(map[string]*Control),\r\n\t\tLogger:   log.NewPrefixLogger(\"registry\", \"ctl\"),\r\n\t}\r\n}\r\n\r\nfunc (r *ControlRegistry) Get(clientId string) *Control {\r\n\tr.RLock()\r\n\tdefer r.RUnlock()\r\n\treturn r.controls[clientId]\r\n}\r\n\r\nfunc (r *ControlRegistry) Add(clientId string, ctl *Control) (oldCtl *Control) {\r\n\tr.Lock()\r\n\tdefer r.Unlock()\r\n\r\n\toldCtl = r.controls[clientId]\r\n\tif oldCtl != nil {\r\n\t\toldCtl.Replaced(ctl)\r\n\t}\r\n\r\n\tr.controls[clientId] = ctl\r\n\tr.Info(\"注册控制ID %s\", clientId)\r\n\treturn\r\n}\r\n\r\nfunc (r *ControlRegistry) Del(clientId string) error {\r\n\tr.Lock()\r\n\tdefer r.Unlock()\r\n\tif r.controls[clientId] == nil {\r\n\t\treturn fmt.Errorf(\"找不到客户端ID: %s 的控制\", clientId)\r\n\t} else {\r\n\t\tr.Info(\"注册ID %s 已移除控制\", clientId)\r\n\t\tdelete(r.controls, clientId)\r\n\t\treturn nil\r\n\t}\r\n}\r\n"
  },
  {
    "path": "server/tls.go",
    "content": "package server\r\n\r\nimport (\r\n\t\"cngrok/server/assets\"\r\n\t\"crypto/tls\"\r\n\t\"io/ioutil\"\r\n)\r\n\r\nfunc LoadTLSConfig(crtPath string, keyPath string) (tlsConfig *tls.Config, err error) {\r\n\tfileOrAsset := func(path string, default_path string) ([]byte, error) {\r\n\t\tloadFn := ioutil.ReadFile\r\n\t\tif path == \"\" {\r\n\t\t\tloadFn = assets.Asset\r\n\t\t\tpath = default_path\r\n\t\t}\r\n\r\n\t\treturn loadFn(path)\r\n\t}\r\n\r\n\tvar (\r\n\t\tcrt  []byte\r\n\t\tkey  []byte\r\n\t\tcert tls.Certificate\r\n\t)\r\n\r\n\tif crt, err = fileOrAsset(crtPath, \"assets/server/tls/snakeoil.crt\"); err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tif key, err = fileOrAsset(keyPath, \"assets/server/tls/snakeoil.key\"); err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tif cert, err = tls.X509KeyPair(crt, key); err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\ttlsConfig = &tls.Config{\r\n\t\tCertificates: []tls.Certificate{cert},\r\n\t}\r\n\r\n\treturn\r\n}\r\n"
  },
  {
    "path": "server/tunnel.go",
    "content": "package server\n\nimport (\n\t\"cngrok/conn\"\n\t\"cngrok/log\"\n\t\"cngrok/msg\"\n\t\"cngrok/util\"\n\t\"encoding/base64\"\n\t\"encoding/json\"\n\t\"fmt\"\n\t\"io/ioutil\"\n\t\"math/rand\"\n\t\"net\"\n\t\"net/http\"\n\t\"os\"\n\t\"strconv\"\n\t\"strings\"\n\t\"sync/atomic\"\n\t\"time\"\n)\n\nvar defaultPortMap = map[string]int{\n\t\"http\":  80,\n\t\"https\": 443,\n\t\"smtp\":  25,\n}\n\ntype Province struct {\n\tData []struct {\n\t\tHost              string `json:\"host\"`\n\t\tId                string `json:\"_id\"`\n\t\tLocation          string `json:\"location\"`\n\t\tHttpauth_username string `json:\"httpauth_username\"`\n\t\tHttpauth_passwd   string `json:\"httpauth_passwd\"`\n\t\tProtocol          string `json:\"protocol\"`\n\t\tHostname          string `json:\"hostname\"`\n\t\tRemote            uint16 `json:\"remote\"`\n\t\tProduct           struct {\n\t\t\tDomain string `json:\"domain\"`\n\t\t\tType   int    `json:\"type\"`\n\t\t} `json:\"product\"`\n\t} `json:\"data\"`\n\tMessage string `json:\"err\"`\n\tSuccess bool   `json:\"success\"`\n}\n\n/**\n * Tunnel: A control connection, metadata and proxy connections which\n *         route public traffic to a firewalled endpoint.\n */\ntype Tunnel struct {\n\t// request that opened the tunnel\n\treq *msg.ReqTunnel\n\n\t// time when the tunnel was opened\n\tstart time.Time\n\n\t// public url\n\turl string\n\n\t// tcp listener\n\tlistener *net.TCPListener\n\n\t// control connection\n\tctl *Control\n\n\t// logger\n\tlog.Logger\n\n\t// closing\n\tclosing int32\n}\n\n// Common functionality for registering virtually hosted protocols\nfunc registerVhost(t *Tunnel, protocol string, servingPort int) (err error) {\n\tvhost := os.Getenv(\"VHOST\")\n\tif vhost == \"\" {\n\t\tvhost = fmt.Sprintf(\"%s:%d\", opts.domain, servingPort)\n\t}\n\n\t// Canonicalize virtual host by removing default port (e.g. :80 on HTTP)\n\tdefaultPort, ok := defaultPortMap[protocol]\n\tif !ok {\n\t\treturn fmt.Errorf(\"无法找到协议的默认端口 %s\", protocol)\n\t}\n\n\tdefaultPortSuffix := fmt.Sprintf(\":%d\", defaultPort)\n\tif strings.HasSuffix(vhost, defaultPortSuffix) {\n\t\tvhost = vhost[0 : len(vhost)-len(defaultPortSuffix)]\n\t}\n\n\t// Canonicalize by always using lower-case\n\tvhost = strings.ToLower(vhost)\n\n\t// Register for specific hostname\n\thostname := strings.ToLower(strings.TrimSpace(t.req.Hostname))\n\tif hostname != \"\" {\n\t\tt.url = fmt.Sprintf(\"%s://%s\", protocol, hostname)\n\t\treturn tunnelRegistry.Register(t.url, t)\n\t}\n\n\t// Register for specific subdomain\n\tsubdomain := strings.ToLower(strings.TrimSpace(t.req.Subdomain))\n\tif subdomain != \"\" {\n\t\tt.url = fmt.Sprintf(\"%s://%s.%s\", protocol, subdomain, vhost)\n\t\treturn tunnelRegistry.Register(t.url, t)\n\t}\n\n\t// Register for random URL\n\tt.url, err = tunnelRegistry.RegisterRepeat(func() string {\n\t\treturn fmt.Sprintf(\"%s://%x.%s\", protocol, rand.Int31(), vhost)\n\t}, t)\n\n\treturn\n}\n\n// Create a new tunnel from a registration message received\n// on a control channel\nfunc NewTunnel(m *msg.ReqTunnel, ctl *Control) (t *Tunnel, err error) {\n\tt = &Tunnel{\n\t\treq:    m,\n\t\tstart:  time.Now(),\n\t\tctl:    ctl,\n\t\tLogger: log.NewPrefixLogger(),\n\t}\n\n\tproto := t.req.Protocol\n\tswitch proto {\n\n\tcase \"tcp\":\n\t\tbindTcp := func(port int) error {\n\t\t\tif t.listener, err = net.ListenTCP(\"tcp\", &net.TCPAddr{IP: net.ParseIP(\"0.0.0.0\"), Port: port}); err != nil {\n\t\t\t\terr = t.ctl.conn.Error(\"Error binding TCP listener: %v\", err)\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\t// create the url\n\t\t\taddr := t.listener.Addr().(*net.TCPAddr)\n\t\t\tt.url = fmt.Sprintf(\"tcp://%s:%d\", opts.domain, addr.Port)\n\n\t\t\t// register it\n\t\t\tif err = tunnelRegistry.RegisterAndCache(t.url, t); err != nil {\n\t\t\t\t// This should never be possible because the OS will\n\t\t\t\t// only assign available ports to us.\n\t\t\t\tt.listener.Close()\n\t\t\t\terr = fmt.Errorf(\"TCP侦听绑定，但未能注册 %s\", t.url)\n\t\t\t\treturn err\n\t\t\t}\n\n\t\t\tgo t.listenTcp(t.listener)\n\t\t\treturn nil\n\t\t}\n\n\t\t// use the custom remote port you asked for\n\t\tif t.req.RemotePort != 0 {\n\t\t\tbindTcp(int(t.req.RemotePort))\n\t\t\treturn\n\t\t}\n\n\t\t// try to return to you the same port you had before\n\t\tcachedUrl := tunnelRegistry.GetCachedRegistration(t)\n\t\tif cachedUrl != \"\" {\n\t\t\tvar port int\n\t\t\tparts := strings.Split(cachedUrl, \":\")\n\t\t\tportPart := parts[len(parts)-1]\n\t\t\tport, err = strconv.Atoi(portPart)\n\t\t\tif err != nil {\n\t\t\t\tt.ctl.conn.Error(\"无法将缓存网址端口解析为整数: %s\", portPart)\n\t\t\t} else {\n\t\t\t\t// we have a valid, cached port, let's try to bind with it\n\t\t\t\tif bindTcp(port) != nil {\n\t\t\t\t\tt.ctl.conn.Warn(\"无法获取自定义端口 %d: %v, 尝试一个随机的\", port, err)\n\t\t\t\t} else {\n\t\t\t\t\t// success, we're done\n\t\t\t\t\treturn\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Bind for TCP connections\n\t\tbindTcp(0)\n\t\treturn\n\n\tcase \"http\", \"https\":\n\t\tl, ok := listeners[proto]\n\t\tif !ok {\n\t\t\terr = fmt.Errorf(\"不侦听 %s 连接\", proto)\n\t\t\treturn\n\t\t}\n\n\t\tif err = registerVhost(t, proto, l.Addr.(*net.TCPAddr).Port); err != nil {\n\t\t\treturn\n\t\t}\n\n\tdefault:\n\t\terr = fmt.Errorf(\"协议 %s 不支持\", proto)\n\t\treturn\n\t}\n\n\t// pre-encode the http basic auth for fast comparisons later\n\tif m.HttpAuth != \"\" {\n\t\tm.HttpAuth = \"Basic \" + base64.StdEncoding.EncodeToString([]byte(m.HttpAuth))\n\t}\n\n\tt.AddLogPrefix(t.Id())\n\tt.Info(\"注册新的隧道: %s\", t.ctl.conn.Id())\n\n\tmetrics.OpenTunnel(t)\n\treturn\n}\n\nfunc (t *Tunnel) Shutdown() {\n\tt.Info(\"正在关闭\")\n\n\t// mark that we're shutting down\n\tatomic.StoreInt32(&t.closing, 1)\n\n\t// if we have a public listener (this is a raw TCP tunnel), shut it down\n\tif t.listener != nil {\n\t\tt.listener.Close()\n\t}\n\n\t// remove ourselves from the tunnel registry\n\ttunnelRegistry.Del(t.url)\n\n\t// let the control connection know we're shutting down\n\t// currently, only the control connection shuts down tunnels,\n\t// so it doesn't need to know about it\n\t// t.ctl.stoptunnel <- t\n\n\tmetrics.CloseTunnel(t)\n}\n\nfunc (t *Tunnel) Id() string {\n\treturn t.url\n}\n\n// Listens for new public tcp connections from the internet.\nfunc (t *Tunnel) listenTcp(listener *net.TCPListener) {\n\tfor {\n\t\tdefer func() {\n\t\t\tif r := recover(); r != nil {\n\t\t\t\tlog.Warn(\"侦听Tcp失败，出现错误 %v\", r)\n\t\t\t}\n\t\t}()\n\n\t\t// accept public connections\n\t\ttcpConn, err := listener.AcceptTCP()\n\n\t\tif err != nil {\n\t\t\t// not an error, we're shutting down this tunnel\n\t\t\tif atomic.LoadInt32(&t.closing) == 1 {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tt.Error(\"无法接受新的TCP连接: %v\", err)\n\t\t\tcontinue\n\t\t}\n\n\t\tconn := conn.Wrap(tcpConn, \"pub\")\n\t\tconn.AddLogPrefix(t.Id())\n\t\tconn.Info(\"新连接来自 %v\", conn.RemoteAddr())\n\n\t\tgo t.HandlePublicConnection(conn)\n\t}\n}\n\nfunc (t *Tunnel) HandlePublicConnection(publicConn conn.Conn) {\n\tdefer publicConn.Close()\n\tdefer func() {\n\t\tif r := recover(); r != nil {\n\t\t\tpublicConn.Warn(\"处理公共连接失败，出现错误 %v\", r)\n\t\t}\n\t}()\n\n\tstartTime := time.Now()\n\tmetrics.OpenConnection(t, publicConn)\n\n\tvar proxyConn conn.Conn\n\tvar err error\n\tfor i := 0; i < (2 * proxyMaxPoolSize); i++ {\n\t\t// get a proxy connection\n\t\tif proxyConn, err = t.ctl.GetProxy(); err != nil {\n\t\t\tt.Warn(\"无法获取代理连接: %v\", err)\n\t\t\treturn\n\t\t}\n\t\tdefer proxyConn.Close()\n\t\tt.Info(\"获得代理连接 %s\", proxyConn.Id())\n\t\tproxyConn.AddLogPrefix(t.Id())\n\n\t\t// tell the client we're going to start using this proxy connection\n\t\tstartPxyMsg := &msg.StartProxy{\n\t\t\tUrl:        t.url,\n\t\t\tClientAddr: publicConn.RemoteAddr().String(),\n\t\t}\n\n\t\tif err = msg.WriteMsg(proxyConn, startPxyMsg); err != nil {\n\t\t\tproxyConn.Warn(\"无法写入启动代理消息: %v, 尝试 %d\", err, i)\n\t\t\tproxyConn.Close()\n\t\t} else {\n\t\t\t// success\n\t\t\tbreak\n\t\t}\n\t}\n\n\tif err != nil {\n\t\t// give up\n\t\tpublicConn.Error(\"启动代理连接的故障太多\")\n\t\treturn\n\t}\n\n\t// To reduce latency handling tunnel connections, we employ the following curde heuristic:\n\t// Whenever we take a proxy connection from the pool, replace it with a new one\n\tutil.PanicToError(func() { t.ctl.out <- &msg.ReqProxy{} })\n\n\t// no timeouts while connections are joined\n\tproxyConn.SetDeadline(time.Time{})\n\n\t// join the public and proxy connections\n\tbytesIn, bytesOut := conn.Join(publicConn, proxyConn)\n\tmetrics.CloseConnection(t, publicConn, startTime, bytesIn, bytesOut)\n}\n"
  },
  {
    "path": "util/broadcast.go",
    "content": "package util\r\n\r\ntype Broadcast struct {\r\n\tlisteners []chan interface{}\r\n\treg       chan (chan interface{})\r\n\tunreg     chan (chan interface{})\r\n\tin        chan interface{}\r\n}\r\n\r\nfunc NewBroadcast() *Broadcast {\r\n\tb := &Broadcast{\r\n\t\tlisteners: make([]chan interface{}, 0),\r\n\t\treg:       make(chan (chan interface{})),\r\n\t\tunreg:     make(chan (chan interface{})),\r\n\t\tin:        make(chan interface{}),\r\n\t}\r\n\r\n\tgo func() {\r\n\t\tfor {\r\n\t\t\tselect {\r\n\t\t\tcase l := <-b.unreg:\r\n\t\t\t\t// remove L from b.listeners\r\n\t\t\t\t// this operation is slow: O(n) but not used frequently\r\n\t\t\t\t// unlike iterating over listeners\r\n\t\t\t\toldListeners := b.listeners\r\n\t\t\t\tb.listeners = make([]chan interface{}, 0, len(oldListeners))\r\n\t\t\t\tfor _, oldL := range oldListeners {\r\n\t\t\t\t\tif l != oldL {\r\n\t\t\t\t\t\tb.listeners = append(b.listeners, oldL)\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\tcase l := <-b.reg:\r\n\t\t\t\tb.listeners = append(b.listeners, l)\r\n\r\n\t\t\tcase item := <-b.in:\r\n\t\t\t\tfor _, l := range b.listeners {\r\n\t\t\t\t\tl <- item\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}()\r\n\r\n\treturn b\r\n}\r\n\r\nfunc (b *Broadcast) In() chan interface{} {\r\n\treturn b.in\r\n}\r\n\r\nfunc (b *Broadcast) Reg() chan interface{} {\r\n\tlistener := make(chan interface{})\r\n\tb.reg <- listener\r\n\treturn listener\r\n}\r\n\r\nfunc (b *Broadcast) UnReg(listener chan interface{}) {\r\n\tb.unreg <- listener\r\n}\r\n"
  },
  {
    "path": "util/errors.go",
    "content": "package util\r\n\r\nimport (\r\n\t\"fmt\"\r\n\t\"runtime\"\r\n)\r\n\r\nconst crashMessage = `panic: %v\r\n\r\n%s\r\n\r\nOh noes! ngrok crashed!\r\n\r\nPlease submit the stack trace and any relevant information to:\r\ngithub.com/inconshreveable/ngrok/issues`\r\n\r\nfunc MakePanicTrace(err interface{}) string {\r\n\tstackBuf := make([]byte, 4096)\r\n\tn := runtime.Stack(stackBuf, false)\r\n\treturn fmt.Sprintf(crashMessage, err, stackBuf[:n])\r\n}\r\n\r\n// Runs the given function and converts any panic encountered while doing so\r\n// into an error. Useful for sending to channels that will close\r\nfunc PanicToError(fn func()) (err error) {\r\n\tdefer func() {\r\n\t\tif r := recover(); r != nil {\r\n\t\t\terr = fmt.Errorf(\"Panic: %v\", r)\r\n\t\t}\r\n\t}()\r\n\tfn()\r\n\treturn\r\n}\r\n"
  },
  {
    "path": "util/id.go",
    "content": "package util\r\n\r\nimport (\r\n\t\"crypto/rand\"\r\n\t\"encoding/binary\"\r\n\t\"fmt\"\r\n\tmrand \"math/rand\"\r\n)\r\n\r\nfunc RandomSeed() (seed int64, err error) {\r\n\terr = binary.Read(rand.Reader, binary.LittleEndian, &seed)\r\n\treturn\r\n}\r\n\r\n// creates a random identifier of the specified length\r\nfunc RandId(idlen int) string {\r\n\tb := make([]byte, idlen)\r\n\tvar randVal uint32\r\n\tfor i := 0; i < idlen; i++ {\r\n\t\tbyteIdx := i % 4\r\n\t\tif byteIdx == 0 {\r\n\t\t\trandVal = mrand.Uint32()\r\n\t\t}\r\n\t\tb[i] = byte((randVal >> (8 * uint(byteIdx))) & 0xFF)\r\n\t}\r\n\treturn fmt.Sprintf(\"%x\", b)\r\n}\r\n\r\n// like RandId, but uses a crypto/rand for secure random identifiers\r\nfunc SecureRandId(idlen int) (id string, err error) {\r\n\tb := make([]byte, idlen)\r\n\tn, err := rand.Read(b)\r\n\r\n\tif n != idlen {\r\n\t\terr = fmt.Errorf(\"Only generated %d random bytes, %d requested\", n, idlen)\r\n\t\treturn\r\n\t}\r\n\r\n\tif err != nil {\r\n\t\treturn\r\n\t}\r\n\r\n\tid = fmt.Sprintf(\"%x\", b)\r\n\treturn\r\n}\r\n\r\nfunc SecureRandIdOrPanic(idlen int) string {\r\n\tid, err := SecureRandId(idlen)\r\n\tif err != nil {\r\n\t\tpanic(err)\r\n\t}\r\n\treturn id\r\n}\r\n"
  },
  {
    "path": "util/ring.go",
    "content": "package util\r\n\r\nimport (\r\n\t\"container/list\"\r\n\t\"sync\"\r\n)\r\n\r\ntype Ring struct {\r\n\tsync.Mutex\r\n\t*list.List\r\n\tcapacity int\r\n}\r\n\r\nfunc NewRing(capacity int) *Ring {\r\n\treturn &Ring{capacity: capacity, List: list.New()}\r\n}\r\n\r\nfunc (r *Ring) Add(item interface{}) interface{} {\r\n\tr.Lock()\r\n\tdefer r.Unlock()\r\n\r\n\t// add new item\r\n\tr.PushFront(item)\r\n\r\n\t// remove old item if at capacity\r\n\tvar old interface{}\r\n\tif r.Len() >= r.capacity {\r\n\t\told = r.Remove(r.Back())\r\n\t}\r\n\r\n\treturn old\r\n}\r\n\r\nfunc (r *Ring) Slice() []interface{} {\r\n\tr.Lock()\r\n\tdefer r.Unlock()\r\n\r\n\ti := 0\r\n\titems := make([]interface{}, r.Len())\r\n\tfor e := r.Front(); e != nil; e = e.Next() {\r\n\t\titems[i] = e.Value\r\n\t\ti++\r\n\t}\r\n\r\n\treturn items\r\n}\r\n"
  },
  {
    "path": "util/shutdown.go",
    "content": "package util\r\n\r\nimport (\r\n\t\"sync\"\r\n)\r\n\r\n// A small utility class for managing controlled shutdowns\r\ntype Shutdown struct {\r\n\tsync.Mutex\r\n\tinProgress bool\r\n\tbegin      chan int // closed when the shutdown begins\r\n\tcomplete   chan int // closed when the shutdown completes\r\n}\r\n\r\nfunc NewShutdown() *Shutdown {\r\n\treturn &Shutdown{\r\n\t\tbegin:    make(chan int),\r\n\t\tcomplete: make(chan int),\r\n\t}\r\n}\r\n\r\nfunc (s *Shutdown) Begin() {\r\n\ts.Lock()\r\n\tdefer s.Unlock()\r\n\tif s.inProgress == true {\r\n\t\treturn\r\n\t} else {\r\n\t\ts.inProgress = true\r\n\t\tclose(s.begin)\r\n\t}\r\n}\r\n\r\nfunc (s *Shutdown) WaitBegin() {\r\n\t<-s.begin\r\n}\r\n\r\nfunc (s *Shutdown) Complete() {\r\n\tclose(s.complete)\r\n}\r\n\r\nfunc (s *Shutdown) WaitComplete() {\r\n\t<-s.complete\r\n}\r\n"
  },
  {
    "path": "version/version.go",
    "content": "package version\r\n\r\nimport (\r\n\t\"fmt\"\r\n)\r\n\r\nconst (\r\n\tProto = \"2\"\r\n\tMajor = \"2\"\r\n\tMinor = \"0\"\r\n)\r\n\r\nfunc MajorMinor() string {\r\n\treturn fmt.Sprintf(\"%s.%s\", Major, Minor)\r\n}\r\n\r\nfunc Full() string {\r\n\treturn fmt.Sprintf(\"%s-%s.%s\", Proto, Major, Minor)\r\n}\r\n\r\nfunc Compat(client string, server string) bool {\r\n\treturn client == server\r\n}\r\n"
  }
]