{"remainingRequest":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xcjy-fvue\\src\\views\\patrolAndRescue\\operationalMonitoring\\shiftInformationManagement\\components\\workGroupContent.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\src\\views\\patrolAndRescue\\operationalMonitoring\\shiftInformationManagement\\components\\workGroupContent.vue","mtime":1743538141496},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\babel.config.js","mtime":1741314102158},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UveGNqeS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9vYmplY3RTcHJlYWQyLmpzIjsKaW1wb3J0IF90eXBlb2YgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UveGNqeS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS90eXBlb2YuanMiOwppbXBvcnQgX3JlZ2VuZXJhdG9yUnVudGltZSBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS94Y2p5LWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3JlZ2VuZXJhdG9yUnVudGltZS5qcyI7CmltcG9ydCBfYXN5bmNUb0dlbmVyYXRvciBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS94Y2p5LWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2FzeW5jVG9HZW5lcmF0b3IuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5maWx0ZXIuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5qb2luLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkucHVzaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLmNvbnN0cnVjdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuaXRlcmF0b3IuZmlsdGVyLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LmtleXMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nLmpzIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCB7IFRhYmxlTWl4aW4gfSBmcm9tICdAL21peGlucy90YWJsZU1peGluJzsKaW1wb3J0IHRyZWVTaWRlIGZyb20gJ0AvY29tcG9uZW50cy90cmVlU2lkZS9pbmRleC52dWUnOwppbXBvcnQgcGFnaW5hdGlvbiBmcm9tICdAL2NvbXBvbmVudHMvU3VwZXJQYWdpbmF0aW9uL2luZGV4LnZ1ZSc7CmltcG9ydCBTZWFyY2hDb21tb24gZnJvbSAnQC9jb21wb25lbnRzL1NlYXJjaENvbW1vbi9pbmRleC52dWUnOwppbXBvcnQgeyBvcmdUcmVlLCB0YWJsZUFkZCwgdGFibGVEYXRhLCB0YWJsZURlbGV0ZSwgdGFibGVFZGl0IH0gZnJvbSAnLi4vYXBpL3dvcmtHcm91cENvbnRlbnQnOwppbXBvcnQgeyByZWZpbmVSZXF1ZXN0Qm9keSwgc2V0UXVlcnlWYWx1ZSB9IGZyb20gJ0AvdXRpbHMvcmVxdWVzdFdyYXBwZXJzJzsKaW1wb3J0IFB1YlN1YiBmcm9tICdwdWJzdWItanMnOwovLyBpbXBvcnQge2RyYWdDb250cm9sbGVyfSBmcm9tICdAL2Fzc2V0cy9qcy9kcmFnQ29udHJvbGxlcicKLy8gaW1wb3J0IHdvcmtHcm91cENvbnRlbnQgZnJvbSAnQC9hcGkvQmFzaWNEYXRhTWFuYWdlbWVudC93b3JrR3JvdXAuanMnCi8vIGltcG9ydCB0b2xsU3RhdGlvbk1hbmFnZW1lbnQgZnJvbSAnQC9hcGkvQmFzaWNEYXRhTWFuYWdlbWVudC90b2xsU3RhdGlvbk1hbmFnZW1lbnQuanMnCgpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogJ3dvcmtHcm91cENvbnRlbnQnLAogIGNvbXBvbmVudHM6IHsKICAgIFNlYXJjaENvbW1vbjogU2VhcmNoQ29tbW9uLAogICAgcGFnaW5hdGlvbjogcGFnaW5hdGlvbiwKICAgIHRyZWVTaWRlOiB0cmVlU2lkZQogIH0sCiAgbWl4aW5zOiBbVGFibGVNaXhpbl0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIHRyZWVMb2FkaW5nOiB0cnVlLAogICAgICB0cmVlRGF0YTogW10sCiAgICAgIGRlZmF1bHRQcm9wczogewogICAgICAgIGlkOiAnaWQnLAogICAgICAgIGNoaWxkcmVuOiAnY2hpbGRyZW4nLAogICAgICAgIGxhYmVsOiAnbmFtZScKICAgICAgfSwKICAgICAgc3JlYWNoVHJlZTogJycsCiAgICAgIGRpc2FibGVkRGV0aWxzOiBmYWxzZSwKICAgICAgY3VycmVudFBhZ2U6IDEsCiAgICAgIHRhYmxlTWF4SGVpZ2h0OiA0MDAsCiAgICAgIGxvYWRpbmc6IGZhbHNlLAogICAgICB0YWJsZUxvYWRpbmc6IGZhbHNlLAogICAgICB0YWJsZURhdGE6IFtdLAogICAgICBtdWx0aXBsZVNlbGVjdGlvbjogW10sCiAgICAgIHBhcmFtczogewogICAgICAgIHBhZ2VCZWFuOiB7CiAgICAgICAgICBwYWdlOiAxLAogICAgICAgICAgcGFnZVNpemU6IDIwLAogICAgICAgICAgdG90YWw6IDAKICAgICAgICB9LAogICAgICAgIHF1ZXJ5czogW10KICAgICAgfSwKICAgICAgc2VhcmNoRm9ybToge30sCiAgICAgIC8vIOmhtumDqOaQnOe0ouWvueixoQogICAgICBkZWxldGVJZHM6ICcnLAogICAgICAvLyDmmK/lkKbpgInkuK3liJfooajop6PplIHliKDpmaTmjInpkq4KICAgICAgZGlhbG9nOiB7CiAgICAgICAgdGl0bGU6ICfmt7vliqAnLAogICAgICAgIHZpc2libGU6IGZhbHNlCiAgICAgIH0sCiAgICAgIGRpYWxvZ0Zvcm06IHt9LAogICAgICBkaXNhYmxlZDogZmFsc2UsCiAgICAgIC8vIOaYr+WQpuemgeatoui+k+WFpei+k+WFpQogICAgICBlZGl0OiBmYWxzZSwKICAgICAgLy8g5piv5ZCm5piv5L+u5pS55Yqf6IO9CiAgICAgIGN1cnJlbnREYXRhRGVsOiBbXSwKICAgICAgLy8g5Yig6Zmk5pe25o6S5p+l5piv5ZCm5pyJ5Zyo5a6h5qC455qE5pWw5o2uCiAgICAgIHJ1bGVzOiB7CiAgICAgICAgbmFtZTogewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn6K+36L6T5YWl54+t56eNJywKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH0sCiAgICAgICAgcmVzdEVuZFRpbWU6IHsKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+ivt+mAieaLqeS8keaBr+e7k+adn+aXtumXtCcsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9LAogICAgICAgIHJlc3RTdGFydFRpbWU6IHsKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+ivt+mAieaLqeS8keaBr+W8gOWni+aXtumXtCcsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9LAogICAgICAgIHdvcmtFbmRUaW1lOiB7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICfor7fpgInmi6nkuIvnj63ml7bpl7QnLAogICAgICAgICAgdHJpZ2dlcjogJ2JsdXInCiAgICAgICAgfSwKICAgICAgICB3b3JrU3RhcnRUaW1lOiB7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICfor7fpgInmi6nkuIrnj63ml7bpl7QnLAogICAgICAgICAgdHJpZ2dlcjogJ2JsdXInCiAgICAgICAgfQogICAgICB9LAogICAgICBhbGxEYXRhOiB7CiAgICAgICAgcGFnZUJlYW46IHsKICAgICAgICAgIHBhZ2U6IDEsCiAgICAgICAgICBwYWdlU2l6ZTogLTEsCiAgICAgICAgICB0b3RhbDogMAogICAgICAgIH0KICAgICAgfSwKICAgICAgY3VycmVudE5vZGVrZXk6ICcnLAogICAgICB0b2xsU3RhdGlvbklkOiAnJywKICAgICAgb3JnSWQ6ICcnCiAgICB9OwogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICB0aGlzLmN1cnJlbnROb2Rla2V5ID0gc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbSgnb3JnSWQnKTsKICAgIHRoaXMubG9hZFRvbGxTdGF0aW9uKCk7CiAgICAvLyDojrflj5bmoJHlvaLnm67lvZUtCiAgICB0aGlzLmdldE9yZ1RyZWVEYXRhKGZ1bmN0aW9uICh0cmVlRGF0YSkgewogICAgICB2YXIgX3RoaXMkdHJlZUl0ZW07CiAgICAgIC8vIOWbnuiwg+S4rem7mOiupOmAieS4reesrOS4gOmhueW5tuWwhuWFtmlk5L2c5Li65Y+C5pWw6K+35rGC6KGo5qC8CiAgICAgIF90aGlzLnRyZWVJdGVtID0gdHJlZURhdGFbMF0gfHwge307CiAgICAgIF90aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoXykgewogICAgICAgIHZhciBfdGhpcyQkcmVmcyR0cmVlU2lkZSwgX3RyZWVEYXRhJCwgX3RoaXMkJHJlZnMkdHJlZVNpZGUyOwogICAgICAgIChfdGhpcyQkcmVmcyR0cmVlU2lkZSA9IF90aGlzLiRyZWZzLnRyZWVTaWRlKSA9PT0gbnVsbCB8fCBfdGhpcyQkcmVmcyR0cmVlU2lkZSA9PT0gdm9pZCAwIHx8IF90aGlzJCRyZWZzJHRyZWVTaWRlLnNldEN1cnJlbnRLZXkoKF90cmVlRGF0YSQgPSB0cmVlRGF0YVswXSkgPT09IG51bGwgfHwgX3RyZWVEYXRhJCA9PT0gdm9pZCAwID8gdm9pZCAwIDogX3RyZWVEYXRhJC5pZCk7IC8v6YCa6L+HICRyZWZzIOiOt+WPlnRyZWVTaWRl57uE5Lu25byV55So77yM5bm26LCD55SoIHNldEN1cnJlbnRLZXnmlrnms5Xorr7nva7lvZPliY3pgInkuK3nmoTmoJHoioLngrnjgIIKICAgICAgICAoX3RoaXMkJHJlZnMkdHJlZVNpZGUyID0gX3RoaXMuJHJlZnMudHJlZVNpZGUpID09PSBudWxsIHx8IF90aGlzJCRyZWZzJHRyZWVTaWRlMiA9PT0gdm9pZCAwIHx8IF90aGlzJCRyZWZzJHRyZWVTaWRlMi5leHBhbmRIYW5kbGUodHJ1ZSwgMik7CiAgICAgIH0pOwogICAgICBzZXRRdWVyeVZhbHVlKF90aGlzLnBhcmFtcywgJ29yZ19GdWxsX0lkXycsICgoX3RoaXMkdHJlZUl0ZW0gPSBfdGhpcy50cmVlSXRlbSkgPT09IG51bGwgfHwgX3RoaXMkdHJlZUl0ZW0gPT09IHZvaWQgMCA/IHZvaWQgMCA6IF90aGlzJHRyZWVJdGVtLmlkKSB8fCAnJyk7IC8v5bCG6YCJ5Lit55qE5qCR6IqC54K555qEIHBhdGgg6K6+572u5Li65p+l6K+i5Y+C5pWw55qE5LiA6YOo5YiG77yM55So5LqO5ZCO57ut55qE6KGo5qC85pWw5o2u6K+35rGC44CCCiAgICAgIHZhciBxdWVyeXMgPSBbXTsKICAgICAgcXVlcnlzLnB1c2goewogICAgICAgIGdyb3VwOiAnbWFpbicsCiAgICAgICAgb3BlcmF0aW9uOiAnTElLRScsCiAgICAgICAgcGFyZW50R3JvdXA6ICcnLAogICAgICAgIHByb3BlcnR5OiAnb3JnSWQnLAogICAgICAgIHJlbGF0aW9uOiAnQU5EJywKICAgICAgICB2YWx1ZTogX3RoaXMudHJlZUl0ZW0uaWQKICAgICAgfSk7CiAgICAgIF90aGlzLnBhcmFtcy5xdWVyeXMgPSBxdWVyeXM7CiAgICAgIF90aGlzLmxvYWREYXRhKCk7IC8v5Yqg6L296KGo5qC85pWw5o2uCiAgICB9KTsKICB9LAogIG1vdW50ZWQ6IGZ1bmN0aW9uIG1vdW50ZWQoKSB7CiAgICAvLyBkcmFnQ29udHJvbGxlcigpCiAgfSwKICBtZXRob2RzOiB7CiAgICBoYW5kbGVOb2RlQ2xpY2s6IGZ1bmN0aW9uIGhhbmRsZU5vZGVDbGljayhkYXRhKSB7CiAgICAgIHRoaXMuY3VycmVudE5vZGVrZXkgPSBkYXRhLmlkOwogICAgICB0aGlzLmxvYWRJZERhdGEoKTsKICAgICAgdGhpcy5oYW5kbGVTZWFyY2goKTsKICAgIH0sCiAgICAvLyDojrflj5blhazlj7jmoJEt5byC5q2l5pa55rOV77yM55So5LqO5LuO5ZCO56uv6I635Y+W5qCR5b2i5pWw5o2uCiAgICBnZXRPcmdUcmVlRGF0YTogZnVuY3Rpb24gZ2V0T3JnVHJlZURhdGEoY2FsbGJhY2spIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHsKICAgICAgICB2YXIgdmFsdWU7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUkKF9jb250ZXh0KSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX2NvbnRleHQucHJldiA9IDA7CiAgICAgICAgICAgICAgX3RoaXMyLnRyZWVMb2FkaW5nID0gdHJ1ZTsgLy/lvIDlp4vliqDovb3ml7bmmL7npLrliqDovb3nirbmgIEKICAgICAgICAgICAgICBfY29udGV4dC5uZXh0ID0gNDsKICAgICAgICAgICAgICByZXR1cm4gb3JnVHJlZSgpOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgdmFsdWUgPSBfY29udGV4dC5zZW50OwogICAgICAgICAgICAgIC8vIOiwg+eUqCBBUEkg6I635Y+W5qCR5b2i5pWw5o2uCiAgICAgICAgICAgICAgX3RoaXMyLnRyZWVEYXRhID0gdmFsdWUucm93czsKICAgICAgICAgICAgY2FzZSA2OgogICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSA2OwogICAgICAgICAgICAgIF90aGlzMi50cmVlTG9hZGluZyA9IGZhbHNlOyAvLyDml6DorrrmiJDlip/miJblpLHotKXvvIzpg73lhbPpl63liqDovb3nirbmgIEKICAgICAgICAgICAgICBjYWxsYmFjayAmJiBjYWxsYmFjayhfdGhpczIudHJlZURhdGEpOyAvLyDlpoLmnpzmj5Dkvpvkuoblm57osIPlh73mlbDvvIzliJnosIPnlKjlroPlubbkvKDlhaXmoJHlvaLmlbDmja4KICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuZmluaXNoKDYpOwogICAgICAgICAgICBjYXNlIDEwOgogICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZSwgbnVsbCwgW1swLCwgNiwgMTBdXSk7CiAgICAgIH0pKSgpOwogICAgfSwKICAgIGN1cnJlbnRDaGFuZ2U6IGZ1bmN0aW9uIGN1cnJlbnRDaGFuZ2Uobm9kZUl0ZW0pIHsKICAgICAgLy8g5L+u5pS55a+55bqU55qE5a2X5q615YC8LS3ph43ngrkt54K55Ye76YCJ5oup5LygaWQKICAgICAgc2V0UXVlcnlWYWx1ZSh0aGlzLnBhcmFtcywgJ29yZ19GdWxsX0lkXycsIChub2RlSXRlbSA9PT0gbnVsbCB8fCBub2RlSXRlbSA9PT0gdm9pZCAwID8gdm9pZCAwIDogbm9kZUl0ZW0uaWQpIHx8ICcnKTsgLy/lsIbpgInkuK3nmoTmoJHoioLngrnnmoQgaWQg6K6+572u5Li65p+l6K+i5Y+C5pWw55qE5LiA6YOo5YiG44CCCiAgICAgIHRoaXMudHJlZUl0ZW0gPSBub2RlSXRlbSB8fCB7fTsKICAgICAgY29uc29sZS5sb2codGhpcy50cmVlSXRlbS5pZCwgJy9pZOagkeeahGlkJyk7CiAgICAgIHRoaXMuY2FsY1RhYmxlSGVpZ2h0KDUwMCk7CiAgICAgIC8vIOinpuWPkSBUcmVlSXRlbVNlbGVjdGVkIOS6i+S7tu+8jOW5tuS8oOmAkuiKgueCueaVsOaNrgogICAgICBQdWJTdWIucHVibGlzaCgnVHJlZUl0ZW1TZWxlY3RlZCcsIG5vZGVJdGVtKTsKICAgICAgdGhpcy5wYXJhbXMucGFnZUJlYW4ucGFnZSA9IDE7CiAgICAgIHZhciBxdWVyeXMgPSBbXTsKICAgICAgcXVlcnlzLnB1c2goewogICAgICAgIGdyb3VwOiAnbWFpbicsCiAgICAgICAgb3BlcmF0aW9uOiAnTElLRScsCiAgICAgICAgcGFyZW50R3JvdXA6ICcnLAogICAgICAgIHByb3BlcnR5OiAnb3JnSWQnLAogICAgICAgIHJlbGF0aW9uOiAnQU5EJywKICAgICAgICB2YWx1ZTogdGhpcy50cmVlSXRlbS5pZAogICAgICB9KTsKICAgICAgdGhpcy5wYXJhbXMucXVlcnlzID0gcXVlcnlzOwogICAgICB0aGlzLmxvYWREYXRhKCk7CiAgICB9LAogICAgLy8g6YCa6L+H5pS26LS556uZaWTljLnphY3mlbDmja4KICAgIGxvYWRJZERhdGE6IGZ1bmN0aW9uIGxvYWRJZERhdGEoKSB7CiAgICAgIHRoaXMubG9hZERhdGEoMSk7CiAgICB9LAogICAgLy8g6I635Y+W5pS26LS556uZ5pWw5o2uCiAgICBsb2FkVG9sbFN0YXRpb246IGZ1bmN0aW9uIGxvYWRUb2xsU3RhdGlvbigpIHsKICAgICAgLy8gdG9sbFN0YXRpb25NYW5hZ2VtZW50LnF1ZXJ5VG9sbFN0YXRpb24odGhpcy5hbGxEYXRhKS50aGVuKChyZXMpID0+IHsKICAgICAgLy8gICBsZXQgb2JqID0gW10KICAgICAgLy8gICBmb3IgKGxldCBpID0gMDsgaSA8IHJlcy5kYXRhLnJvd3MubGVuZ3RoOyBpKyspIHsKICAgICAgLy8gICAgIG9iaiA9IHsKICAgICAgLy8gICAgICAgaWQ6IHJlcy5kYXRhLnJvd3NbaV0uaWQsCiAgICAgIC8vICAgICAgIGxhYmVsOiByZXMuZGF0YS5yb3dzW2ldLm5hbWUKICAgICAgLy8gICAgIH0KICAgICAgLy8gICAgIHRoaXMudHJlZURhdGEucHVzaChvYmopCiAgICAgIC8vICAgfQogICAgICAvLyAgIC8vIHRoaXMuY3VycmVudE5vZGVrZXkgPSByZXMuZGF0YS5yb3dzWzBdLmlkCiAgICAgIC8vICAgdGhpcy5sb2FkSWREYXRhKCkKICAgICAgLy8gICB0aGlzLiRuZXh0VGljaygoKSA9PiB7CiAgICAgIC8vICAgICB0aGlzLiRyZWZzLm15VHJlZS5zZXRDdXJyZW50S2V5KHRoaXMuY3VycmVudE5vZGVrZXkpIC8v5LiA5a6a6KaB5Yqg6L+Z5Liq6YCJ5Lit5LqG5ZCm5YiZ5qC35byP5rKh5pyJ5Ye65p2lCiAgICAgIC8vICAgfSkKICAgICAgLy8gfSkKICAgIH0sCiAgICAvL+iOt+WPluaVsOaNrgogICAgbG9hZERhdGE6IGZ1bmN0aW9uIGxvYWREYXRhKHBhZ2UpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTIoKSB7CiAgICAgICAgdmFyIF95aWVsZCR0YWJsZURhdGEsIF95aWVsZCR0YWJsZURhdGEkdG90YSwgdG90YWwsIF95aWVsZCR0YWJsZURhdGEkcm93cywgcm93czsKICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTIkKF9jb250ZXh0MikgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQyLnByZXYgPSBfY29udGV4dDIubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgaWYgKHBhZ2UpIF90aGlzMy5wYXJhbXMucGFnZUJlYW4ucGFnZSA9IHBhZ2U7CiAgICAgICAgICAgICAgX3RoaXMzLnRhYmxlTG9hZGluZyA9IHRydWU7CiAgICAgICAgICAgICAgX2NvbnRleHQyLm5leHQgPSA0OwogICAgICAgICAgICAgIHJldHVybiB0YWJsZURhdGEocmVmaW5lUmVxdWVzdEJvZHkoX3RoaXMzLnBhcmFtcykpOwogICAgICAgICAgICBjYXNlIDQ6CiAgICAgICAgICAgICAgX3lpZWxkJHRhYmxlRGF0YSA9IF9jb250ZXh0Mi5zZW50OwogICAgICAgICAgICAgIF95aWVsZCR0YWJsZURhdGEkdG90YSA9IF95aWVsZCR0YWJsZURhdGEudG90YWw7CiAgICAgICAgICAgICAgdG90YWwgPSBfeWllbGQkdGFibGVEYXRhJHRvdGEgPT09IHZvaWQgMCA/IDAgOiBfeWllbGQkdGFibGVEYXRhJHRvdGE7CiAgICAgICAgICAgICAgX3lpZWxkJHRhYmxlRGF0YSRyb3dzID0gX3lpZWxkJHRhYmxlRGF0YS5yb3dzOwogICAgICAgICAgICAgIHJvd3MgPSBfeWllbGQkdGFibGVEYXRhJHJvd3MgPT09IHZvaWQgMCA/IFtdIDogX3lpZWxkJHRhYmxlRGF0YSRyb3dzOwogICAgICAgICAgICAgIF90aGlzMy5wYXJhbXMucGFnZUJlYW4udG90YWwgPSB0b3RhbDsKICAgICAgICAgICAgICBfdGhpczMudGFibGVEYXRhID0gcm93czsKICAgICAgICAgICAgICBfdGhpczMudGFibGVMb2FkaW5nID0gZmFsc2U7CiAgICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7CiAgICAgICAgICB9CiAgICAgICAgfSwgX2NhbGxlZTIpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICAvL+a3u+WKoAogICAgaGFuZGxlQWRkOiBmdW5jdGlvbiBoYW5kbGVBZGQoKSB7CiAgICAgIHRoaXMuZWRpdCA9IGZhbHNlOwogICAgICB0aGlzLmRpc2FibGVkRGV0aWxzID0gZmFsc2U7CiAgICAgIHRoaXMuZGlhbG9nRm9ybSA9IHsKICAgICAgICBvcmdJZDogdGhpcy50cmVlSXRlbS5pZAogICAgICB9OwogICAgICB0aGlzLmRpYWxvZy50aXRsZSA9ICfmt7vliqAnOwogICAgICB0aGlzLmRpYWxvZy52aXNpYmxlID0gdHJ1ZTsKICAgIH0sCiAgICAvLyDnvJbovpEKICAgIGhhbmRsZUVkaXQ6IGZ1bmN0aW9uIGhhbmRsZUVkaXQocm93KSB7CiAgICAgIHZhciBfdGhpczQgPSB0aGlzOwogICAgICAvLyDlhYjph43nva7ooajljZXpqozor4HnirbmgIEKICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkgewogICAgICAgIGlmIChfdGhpczQuJHJlZnMuZm9ybSkgewogICAgICAgICAgX3RoaXM0LiRyZWZzLmZvcm0uY2xlYXJWYWxpZGF0ZSgpOwogICAgICAgIH0KICAgICAgfSk7CgogICAgICAvLyDnoa7kv51kaWFsb2dGb3Jt5piv5ZON5bqU5byP5a+56LGhCiAgICAgIGlmICghdGhpcy5kaWFsb2dGb3JtIHx8IF90eXBlb2YodGhpcy5kaWFsb2dGb3JtKSAhPT0gJ29iamVjdCcpIHsKICAgICAgICB0aGlzLmRpYWxvZ0Zvcm0gPSB7fTsKICAgICAgfQoKICAgICAgLy8g5aSN5Yi26KGM5pWw5o2u5YiwZGlhbG9nRm9ybQogICAgICB0aGlzLmRpYWxvZ0Zvcm0gPSBfb2JqZWN0U3ByZWFkKF9vYmplY3RTcHJlYWQoe30sIHJvdyksIHt9LCB7CiAgICAgICAgb3JnSWQ6IHJvdy5vcmdJZCB8fCB0aGlzLnRyZWVJdGVtLmlkIC8vIOehruS/nW9yZ0lk5pyJ5YC8CiAgICAgIH0pOwogICAgICB0aGlzLmVkaXQgPSB0cnVlOwogICAgICB0aGlzLmRpc2FibGVkRGV0aWxzID0gZmFsc2U7CiAgICAgIHRoaXMuZGlhbG9nLnRpdGxlID0gJ+e8lui+kSc7CiAgICAgIHRoaXMuZGlhbG9nLnZpc2libGUgPSB0cnVlOwogICAgfSwKICAgIC8vIOW8ueWxguWFs+mXrQogICAgaGFuZGxlRGlhbG9nQ2xvc2U6IGZ1bmN0aW9uIGhhbmRsZURpYWxvZ0Nsb3NlKCkgewogICAgICB0aGlzLmRpYWxvZy52aXNpYmxlID0gZmFsc2U7CiAgICB9LAogICAgLy8g6KGo5Y2V5o+Q5Lqk5L+d5a2YCiAgICBzdWJtaXQ6IGZ1bmN0aW9uIHN1Ym1pdCgpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHRoaXMuJHJlZnMuZm9ybS52YWxpZGF0ZSgvKiNfX1BVUkVfXyovZnVuY3Rpb24gKCkgewogICAgICAgIHZhciBfcmVmID0gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUzKHZhbGlkLCBvYmplY3QpIHsKICAgICAgICAgIHZhciBhcGlNZXRob2QsIF95aWVsZCRhcGlNZXRob2QsIHN0YXRlLCBtZXNzYWdlLCBhY3Rpb247CiAgICAgICAgICByZXR1cm4gX3JlZ2VuZXJhdG9yUnVudGltZSgpLndyYXAoZnVuY3Rpb24gX2NhbGxlZTMkKF9jb250ZXh0MykgewogICAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dDMucHJldiA9IF9jb250ZXh0My5uZXh0KSB7CiAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgaWYgKHZhbGlkKSB7CiAgICAgICAgICAgICAgICAgIF9jb250ZXh0My5uZXh0ID0gNDsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBfdGhpczUuJG1lc3NhZ2Uud2FybmluZygiXHU2NzA5Ii5jb25jYXQoT2JqZWN0LmtleXMob2JqZWN0KS5sZW5ndGgsICJcdTRFMkFcdTVCNTdcdTZCQjVcdTY3MkFcdTkwMUFcdThGQzdcdTY4MjFcdTlBOENcdUZGMENcdThCRjdcdTZCNjNcdTc4NkVcdTU4NkJcdTUxOTlcdTg4NjhcdTUzNTVcdTUxODVcdTVCQjlcdTMwMDIiKSk7CiAgICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDE4OwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgY2FzZSA0OgogICAgICAgICAgICAgICAgX3RoaXM1LnNhdmVMb2FkaW5nID0gdHJ1ZTsKICAgICAgICAgICAgICAgIGFwaU1ldGhvZCA9IF90aGlzNS5lZGl0ID8gdGFibGVFZGl0IDogdGFibGVBZGQ7CiAgICAgICAgICAgICAgICBfY29udGV4dDMucHJldiA9IDY7CiAgICAgICAgICAgICAgICBfY29udGV4dDMubmV4dCA9IDk7CiAgICAgICAgICAgICAgICByZXR1cm4gYXBpTWV0aG9kKF90aGlzNS5kaWFsb2dGb3JtKTsKICAgICAgICAgICAgICBjYXNlIDk6CiAgICAgICAgICAgICAgICBfeWllbGQkYXBpTWV0aG9kID0gX2NvbnRleHQzLnNlbnQ7CiAgICAgICAgICAgICAgICBzdGF0ZSA9IF95aWVsZCRhcGlNZXRob2Quc3RhdGU7CiAgICAgICAgICAgICAgICBtZXNzYWdlID0gX3lpZWxkJGFwaU1ldGhvZC5tZXNzYWdlOwogICAgICAgICAgICAgICAgaWYgKHN0YXRlKSB7CiAgICAgICAgICAgICAgICAgIGFjdGlvbiA9IF90aGlzNS5lZGl0ID8gJ+S/ruaUuScgOiAn5paw5aKeJzsKICAgICAgICAgICAgICAgICAgX3RoaXM1LiRtZXNzYWdlLnN1Y2Nlc3MoIlx1NjM5Mlx1NzI0OFx1NEZFMVx1NjA2RiIuY29uY2F0KGFjdGlvbiwgIlx1NjIxMFx1NTI5RiIpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF90aGlzNS5kaWFsb2cudmlzaWJsZSA9IGZhbHNlOwogICAgICAgICAgICAgICAgX3RoaXM1LmxvYWREYXRhKCk7CiAgICAgICAgICAgICAgY2FzZSAxNToKICAgICAgICAgICAgICAgIF9jb250ZXh0My5wcmV2ID0gMTU7CiAgICAgICAgICAgICAgICBfdGhpczUuc2F2ZUxvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDMuZmluaXNoKDE1KTsKICAgICAgICAgICAgICBjYXNlIDE4OgogICAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQzLnN0b3AoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfSwgX2NhbGxlZTMsIG51bGwsIFtbNiwsIDE1LCAxOF1dKTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChfeCwgX3gyKSB7CiAgICAgICAgICByZXR1cm4gX3JlZi5hcHBseSh0aGlzLCBhcmd1bWVudHMpOwogICAgICAgIH07CiAgICAgIH0oKSk7CiAgICB9LAogICAgLy8g5Yig6ZmkCiAgICBoYW5kbGVEZWxldGU6IGZ1bmN0aW9uIGhhbmRsZURlbGV0ZShyb3cpIHsKICAgICAgdmFyIF90aGlzNiA9IHRoaXM7CiAgICAgIHRoaXMuY2xpY2tUaW1lciA9IHRydWU7CiAgICAgIHRoaXMuJGNvbmZpcm0oJ+ehruWumuWIoOmZpOmAieS4reePree7hOWQl++8nycsICfmj5DnpLonLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7orqQnLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLAogICAgICAgIHR5cGU6ICd3YXJuaW5nJwogICAgICB9KS50aGVuKC8qI19fUFVSRV9fKi9fYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZTQoKSB7CiAgICAgICAgdmFyIGlkcywgZm9ybURhdGEsIF95aWVsZCR0YWJsZURlbGV0ZSwgc3RhdGUsIG1lc3NhZ2UsIF90aGlzNiRwYXJhbXMkcGFnZUJlYSwgcGFnZSwgcGFnZVNpemUsIHRvdGFsLCB0b3RhbFBhZ2VzOwogICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlNCQoX2NvbnRleHQ0KSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dDQucHJldiA9IF9jb250ZXh0NC5uZXh0KSB7CiAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAvLyBsZXQgaWRzID0gcm93ID8gcm93LmlkIDogdGhpcy5jdXJyZW50RGF0YURlbC5qb2luKCkKICAgICAgICAgICAgICBpZHMgPSByb3cgPyBbcm93LmlkXSA6IF90aGlzNi5jdXJyZW50RGF0YURlbDsgLy8g5Yib5bu6IEZvcm1EYXRhIOWvueixoQogICAgICAgICAgICAgIGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7CiAgICAgICAgICAgICAgZm9ybURhdGEuYXBwZW5kKCdpZHMnLCBpZHMuam9pbignLCcpKTsKICAgICAgICAgICAgICBfY29udGV4dDQubmV4dCA9IDU7CiAgICAgICAgICAgICAgcmV0dXJuIHRhYmxlRGVsZXRlKGZvcm1EYXRhKTsKICAgICAgICAgICAgY2FzZSA1OgogICAgICAgICAgICAgIF95aWVsZCR0YWJsZURlbGV0ZSA9IF9jb250ZXh0NC5zZW50OwogICAgICAgICAgICAgIHN0YXRlID0gX3lpZWxkJHRhYmxlRGVsZXRlLnN0YXRlOwogICAgICAgICAgICAgIG1lc3NhZ2UgPSBfeWllbGQkdGFibGVEZWxldGUubWVzc2FnZTsKICAgICAgICAgICAgICBpZiAoIXN0YXRlKSB7CiAgICAgICAgICAgICAgICBfY29udGV4dDQubmV4dCA9IDE3OwogICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF90aGlzNi4kbWVzc2FnZS5zdWNjZXNzKCJcdTczRURcdTdFQzRcdTUyMjBcdTk2NjRcdTYyMTBcdTUyOUYiKTsKICAgICAgICAgICAgICBfdGhpczYkcGFyYW1zJHBhZ2VCZWEgPSBfdGhpczYucGFyYW1zLnBhZ2VCZWFuLCBwYWdlID0gX3RoaXM2JHBhcmFtcyRwYWdlQmVhLnBhZ2UsIHBhZ2VTaXplID0gX3RoaXM2JHBhcmFtcyRwYWdlQmVhLnBhZ2VTaXplLCB0b3RhbCA9IF90aGlzNiRwYXJhbXMkcGFnZUJlYS50b3RhbDsKICAgICAgICAgICAgICB0b3RhbFBhZ2VzID0gTWF0aC5jZWlsKHRvdGFsIC8gcGFnZVNpemUpOyAvLyDorqHnrpfmgLvpobXmlbAKICAgICAgICAgICAgICBpZiAodG90YWxQYWdlcyA+IDEgJiYgcGFnZSA9PT0gdG90YWxQYWdlcykgewogICAgICAgICAgICAgICAgaWYgKF90aGlzNi50YWJsZURhdGEubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgICAgICAgIC8vIOW9k+WJjemhteWPquacieS4gOadoeaVsOaNrgogICAgICAgICAgICAgICAgICBfdGhpczYucGFyYW1zLnBhZ2VCZWFuLnBhZ2UgLT0gMTsgLy8g6L+U5Zue5YmN5LiA6aG1CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gMTU7CiAgICAgICAgICAgICAgcmV0dXJuIF90aGlzNi5sb2FkRGF0YSgpOwogICAgICAgICAgICBjYXNlIDE1OgogICAgICAgICAgICAgIF9jb250ZXh0NC5uZXh0ID0gMTg7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgIGNhc2UgMTc6CiAgICAgICAgICAgICAgX3RoaXM2LiRtZXNzYWdlLmVycm9yKG1lc3NhZ2UpOwogICAgICAgICAgICBjYXNlIDE4OgogICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDQuc3RvcCgpOwogICAgICAgICAgfQogICAgICAgIH0sIF9jYWxsZWU0KTsKICAgICAgfSkpKS5jYXRjaChmdW5jdGlvbiAoXykgewogICAgICAgIHJldHVybiBfOwogICAgICB9KTsKICAgIH0sCiAgICAvLyDpobbpg6jmkJzntKIKICAgIGhhbmRsZVNlYXJjaDogZnVuY3Rpb24gaGFuZGxlU2VhcmNoKCkgewogICAgICB2YXIgcXVlcnlzID0gW107CiAgICAgIGZvciAodmFyIGkgaW4gdGhpcy5zZWFyY2hGb3JtKSB7CiAgICAgICAgY29uc29sZS5sb2codGhpcy5zZWFyY2hGb3JtKTsKICAgICAgICBpZiAodGhpcy5zZWFyY2hGb3JtW2ldKSB7CiAgICAgICAgICBpZiAoaSA9PSAnbmFtZScpIHsKICAgICAgICAgICAgcXVlcnlzLnB1c2goewogICAgICAgICAgICAgIGdyb3VwOiAnbWFpbicsCiAgICAgICAgICAgICAgb3BlcmF0aW9uOiAnTElLRScsCiAgICAgICAgICAgICAgcGFyZW50R3JvdXA6ICcnLAogICAgICAgICAgICAgIHByb3BlcnR5OiBpLAogICAgICAgICAgICAgIHJlbGF0aW9uOiAnQU5EJywKICAgICAgICAgICAgICB2YWx1ZTogdGhpcy5zZWFyY2hGb3JtW2ldCiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfQogICAgICBxdWVyeXMucHVzaCh7CiAgICAgICAgZ3JvdXA6ICdtYWluJywKICAgICAgICBvcGVyYXRpb246ICdMSUtFJywKICAgICAgICBwYXJlbnRHcm91cDogJycsCiAgICAgICAgcHJvcGVydHk6ICd0b2xsU3RhdGlvbklkJywKICAgICAgICByZWxhdGlvbjogJ0FORCcsCiAgICAgICAgdmFsdWU6IHRoaXMuY3VycmVudE5vZGVrZXkKICAgICAgfSk7CiAgICAgIHRoaXMucGFyYW1zLnF1ZXJ5cyA9IHF1ZXJ5czsKICAgICAgdGhpcy5sb2FkRGF0YSgxKTsKICAgIH0sCiAgICAvLyDkvqfovrnmoI/mkJzntKIKICAgIGZpbHRlck5vZGU6IGZ1bmN0aW9uIGZpbHRlck5vZGUodmFsdWUsIHRyZWVEYXRhKSB7CiAgICAgIGlmICghdmFsdWUpIHJldHVybiB0cnVlOwogICAgICByZXR1cm4gdHJlZURhdGEubGFiZWwuaW5kZXhPZih2YWx1ZSkgIT09IC0xOwogICAgfSAvLyBoYW5kbGVDaGFuZ2VUb2xsU3RhdGlvbihkYXRhKSB7CiAgICAvLyAgIGxldCB0YXJnZXQgPSB0aGlzLnRyZWVEYXRhLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5pZCA9PSBkYXRhKVswXQogICAgLy8gICB0aGlzLmRpYWxvZ0Zvcm0ucm9hZFNlZ21lbnROYW1lID0gdGFyZ2V0LmxhYmVsCiAgICAvLyB9LAogIH0sCiAgd2F0Y2g6IHsKICAgIHNyZWFjaFRyZWU6IGZ1bmN0aW9uIHNyZWFjaFRyZWUodmFsKSB7CiAgICAgIHRoaXMuJHJlZnMubXlUcmVlLmZpbHRlcih2YWwpOwogICAgfQogIH0sCiAgY29tcHV0ZWQ6IHsKICAgIFNlYXJjaFBhbmVsOiBmdW5jdGlvbiBTZWFyY2hQYW5lbCgpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICAnLS1zZWFyY2hQYW5lbCc6IHRoaXMuc2VhcmNoUGFuZWwgKyAncHgnCiAgICAgIH07CiAgICB9CiAgfQp9Ow=="},null]}