{"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\\roadWatch\\InspectionStats\\components\\DetailPage\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\src\\views\\patrolAndRescue\\roadWatch\\InspectionStats\\components\\DetailPage\\index.vue","mtime":1741314105784},{"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:aW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UveGNqeS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9yZWdlbmVyYXRvclJ1bnRpbWUuanMiOwppbXBvcnQgX29iamVjdFNwcmVhZCBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS94Y2p5LWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL29iamVjdFNwcmVhZDIuanMiOwppbXBvcnQgX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzIGZyb20gIkQ6L2plbmtpbnMvd29ya3NwYWNlL3hjanktZnZ1ZS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vb2JqZWN0V2l0aG91dFByb3BlcnRpZXMuanMiOwppbXBvcnQgX2FzeW5jVG9HZW5lcmF0b3IgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UveGNqeS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9hc3luY1RvR2VuZXJhdG9yLmpzIjsKdmFyIF9leGNsdWRlZCA9IFsicm9hZENvZGUiLCAic3RhcnRUaW1lIiwgImVuZFRpbWUiLCAiaW5zcGVjdFVzZXJzTmFtZSIsICJyZXN1bHREZXRhaWxzIiwgInBsYW5JZCJdOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5jb25jYXQuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5maWx0ZXIuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5mbGF0LW1hcC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5Lm1hcC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnB1c2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS51bnNjb3BhYmxlcy5mbGF0LW1hcC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmZ1bmN0aW9uLm5hbWUuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5pdGVyYXRvci5jb25zdHJ1Y3Rvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLmZpbHRlci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLmZsYXQtbWFwLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuaXRlcmF0b3IuZm9yLWVhY2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5pdGVyYXRvci5tYXAuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvd2ViLmRvbS1jb2xsZWN0aW9ucy5mb3ItZWFjaC5qcyI7Ci8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCgppbXBvcnQgeyB0YWJsZURldGFpbCB9IGZyb20gJ0AvYXBpL3BhdHJvbEFuZFJlc2N1ZS9yb2FkV2F0Y2gvaW5zcGVjdGlvblJlc3VsdHMnOwppbXBvcnQgUHViU3ViIGZyb20gJ3B1YnN1Yi1qcyc7CmltcG9ydCB7IGRpY3Rpb25hcnlFc2NhcGUgfSBmcm9tICdAL3V0aWxzL2RpY3Rpb25hcnknOwppbXBvcnQgTWluZU1hcCBmcm9tICdAL2NvbXBvbmVudHMvTWluZU1hcC9pbmRleC52dWUnOwppbXBvcnQgeyBnZXRDZW50ZXJQb2ludCB9IGZyb20gJ0AvdXRpbHMvZ2lzSGVscGVycyc7CmltcG9ydCB7IHRhYmxlRGV0YWlsIGFzIHBsYW5EZXRhaWwgfSBmcm9tICdAL2FwaS9wYXRyb2xBbmRSZXNjdWUvcm9hZFdhdGNoL2luc3BlY3Rpb25QbGFuJzsKaW1wb3J0IHN0eWxlcyBmcm9tICdAL2Fzc2V0cy9jc3MvZWxlbWVudC12YXJpYWJsZXMuc2Nzcyc7IC8vIOW8leWFpeWvvOWHuueahCBTQ1NTIOWPmOmHjwoKZXhwb3J0IGRlZmF1bHQgewogIG5hbWU6ICdEZXRhaWxQYWdlJywKICBwcm9wczogewogICAgY29tcG9uZW50TmFtZTogewogICAgICBkZWZhdWx0OiAnVGFibGVQYWdlJywKICAgICAgdHlwZTogU3RyaW5nCiAgICB9CiAgfSwKICBjb21wb25lbnRzOiB7CiAgICBNaW5lTWFwOiBNaW5lTWFwCiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgZGV0YWlsRm9ybToge30sCiAgICAgIGZvcm1Mb2FkaW5nOiB0cnVlLAogICAgICBtYXBMb2FkaW5nOiB0cnVlLAogICAgICAvLyDlnLDlm77liqDovb1sb2FkaW5nCiAgICAgIG1hcERlZmF1bHRPcHRpb25zOiB7CiAgICAgICAgY2VudGVyOiBbMTA2LjU1MDcsIDI5LjU2NDddIC8q5Zyw5Zu+5Lit5b+D54K5Ki8sCiAgICAgICAgem9vbTogNyAvKuWcsOWbvum7mOiupOe8qeaUvuetiee6pyovCiAgICAgIH0sCiAgICAgIG1hcmtlcnM6IFtdLAogICAgICAvLyDlnLDlm77ngrnkvY3mlbDnu4QKICAgICAgcGxhblBhdHJvbERldGFpbHM6IFtdLAogICAgICAvLyDlt6Hmo4DorqHliJLor6bmg4UKICAgICAgcmVzdWx0QWN0aXZlSWQ6ICcnLAogICAgICBjZW50ZXJDb29yZHM6IG51bGwsCiAgICAgIC8vIOS4reW/g+eCuQogICAgICBwdWJTdWI6IG51bGwKICAgIH07CiAgfSwKICBjb21wdXRlZDogewogICAgcHJldmlld1VybDogZnVuY3Rpb24gcHJldmlld1VybChfKSB7CiAgICAgIHJldHVybiB3aW5kb3cuY29udGV4dC5wb3J0YWwgKyAnL2ZpbGUvb25saW5lUHJldmlld0NvbnRyb2xsZXIvdjEvZ2V0RmlsZUJ5SWRfJzsKICAgIH0KICB9LAogIHdhdGNoOiB7CiAgICBjb21wb25lbnROYW1lOiB7CiAgICAgIGhhbmRsZXI6IGZ1bmN0aW9uIGhhbmRsZXIobmV3VmFsKSB7CiAgICAgICAgaWYgKG5ld1ZhbCA9PT0gdGhpcy4kb3B0aW9ucy5uYW1lKSB7CiAgICAgICAgICB0aGlzLm9wZW5QYWdlKCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIHRoaXMuY2xvc2VQYWdlKCk7CiAgICAgICAgfQogICAgICB9CiAgICB9CiAgfSwKICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkgewogICAgdmFyIF90aGlzID0gdGhpczsKICAgIHRoaXMucHViU3ViID0gUHViU3ViLnN1YnNjcmliZSgnRGV0YWlsUGFnZScsIGZ1bmN0aW9uIChfLCBkYXRhKSB7CiAgICAgIGlmIChkYXRhLmlkKSB7CiAgICAgICAgX3RoaXMuZ2V0RGV0YWlsKGRhdGEuaWQpOwogICAgICB9CiAgICB9KTsKICB9LAogIG1ldGhvZHM6IHsKICAgIC8vIOiOt+WPluivpuaDhQogICAgZ2V0RGV0YWlsOiBmdW5jdGlvbiBnZXREZXRhaWwoaWQpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHsKICAgICAgICB2YXIgX3lpZWxkJHRhYmxlRGV0YWlsLCBfeWllbGQkdGFibGVEZXRhaWwkcm8sIHJvYWRDb2RlLCBfeWllbGQkdGFibGVEZXRhaWwkc3QsIHN0YXJ0VGltZSwgX3lpZWxkJHRhYmxlRGV0YWlsJGVuLCBlbmRUaW1lLCBfeWllbGQkdGFibGVEZXRhaWwkaW4sIGluc3BlY3RVc2Vyc05hbWUsIF95aWVsZCR0YWJsZURldGFpbCRyZSwgcmVzdWx0RGV0YWlscywgX3lpZWxkJHRhYmxlRGV0YWlsJHBsLCBwbGFuSWQsIGRldGFpbEZvcm07CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUkKF9jb250ZXh0KSB7CiAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgX2NvbnRleHQucHJldiA9IDA7CiAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDM7CiAgICAgICAgICAgICAgcmV0dXJuIHRhYmxlRGV0YWlsKGlkKTsKICAgICAgICAgICAgY2FzZSAzOgogICAgICAgICAgICAgIF95aWVsZCR0YWJsZURldGFpbCA9IF9jb250ZXh0LnNlbnQ7CiAgICAgICAgICAgICAgX3lpZWxkJHRhYmxlRGV0YWlsJHJvID0gX3lpZWxkJHRhYmxlRGV0YWlsLnJvYWRDb2RlOwogICAgICAgICAgICAgIHJvYWRDb2RlID0gX3lpZWxkJHRhYmxlRGV0YWlsJHJvID09PSB2b2lkIDAgPyAnJyA6IF95aWVsZCR0YWJsZURldGFpbCRybzsKICAgICAgICAgICAgICBfeWllbGQkdGFibGVEZXRhaWwkc3QgPSBfeWllbGQkdGFibGVEZXRhaWwuc3RhcnRUaW1lOwogICAgICAgICAgICAgIHN0YXJ0VGltZSA9IF95aWVsZCR0YWJsZURldGFpbCRzdCA9PT0gdm9pZCAwID8gJycgOiBfeWllbGQkdGFibGVEZXRhaWwkc3Q7CiAgICAgICAgICAgICAgX3lpZWxkJHRhYmxlRGV0YWlsJGVuID0gX3lpZWxkJHRhYmxlRGV0YWlsLmVuZFRpbWU7CiAgICAgICAgICAgICAgZW5kVGltZSA9IF95aWVsZCR0YWJsZURldGFpbCRlbiA9PT0gdm9pZCAwID8gJycgOiBfeWllbGQkdGFibGVEZXRhaWwkZW47CiAgICAgICAgICAgICAgX3lpZWxkJHRhYmxlRGV0YWlsJGluID0gX3lpZWxkJHRhYmxlRGV0YWlsLmluc3BlY3RVc2Vyc05hbWU7CiAgICAgICAgICAgICAgaW5zcGVjdFVzZXJzTmFtZSA9IF95aWVsZCR0YWJsZURldGFpbCRpbiA9PT0gdm9pZCAwID8gJycgOiBfeWllbGQkdGFibGVEZXRhaWwkaW47CiAgICAgICAgICAgICAgX3lpZWxkJHRhYmxlRGV0YWlsJHJlID0gX3lpZWxkJHRhYmxlRGV0YWlsLnJlc3VsdERldGFpbHM7CiAgICAgICAgICAgICAgcmVzdWx0RGV0YWlscyA9IF95aWVsZCR0YWJsZURldGFpbCRyZSA9PT0gdm9pZCAwID8gW10gOiBfeWllbGQkdGFibGVEZXRhaWwkcmU7CiAgICAgICAgICAgICAgX3lpZWxkJHRhYmxlRGV0YWlsJHBsID0gX3lpZWxkJHRhYmxlRGV0YWlsLnBsYW5JZDsKICAgICAgICAgICAgICBwbGFuSWQgPSBfeWllbGQkdGFibGVEZXRhaWwkcGwgPT09IHZvaWQgMCA/ICcnIDogX3lpZWxkJHRhYmxlRGV0YWlsJHBsOwogICAgICAgICAgICAgIGRldGFpbEZvcm0gPSBfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMoX3lpZWxkJHRhYmxlRGV0YWlsLCBfZXhjbHVkZWQpOwogICAgICAgICAgICAgIHJlc3VsdERldGFpbHMgPSByZXN1bHREZXRhaWxzLm1hcChmdW5jdGlvbiAoaSkgewogICAgICAgICAgICAgICAgcmV0dXJuIF9vYmplY3RTcHJlYWQoX29iamVjdFNwcmVhZCh7fSwgaSksIHt9LCB7CiAgICAgICAgICAgICAgICAgIGljb246ICdlbC1pY29uLWxvY2F0aW9uJywKICAgICAgICAgICAgICAgICAgLy8gc2Nzc+WPmOmHj+minOiJsgogICAgICAgICAgICAgICAgICBtYXJrQ29sb3I6IHN0eWxlc1siY29sb3JfIi5jb25jYXQoaS5pbnNwZWNldFN0YXR1cyA9PT0gJzEnID8gJ3N1Y2Nlc3MnIDogJ2RhbmdlcicpXSwKICAgICAgICAgICAgICAgICAgbWFya1R5cGU6IGkuaW5zcGVjZXRTdGF0dXMgPT09ICcxJyA/ICdzdWNjZXNzJyA6ICdkYW5nZXInLAogICAgICAgICAgICAgICAgICBmaWxlVXJsQXJyOiBpLmZpbGVVcmwuc3BsaXQoJywnKS5mbGF0TWFwKGZ1bmN0aW9uIChmaWxlVXJsKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZpbGVVcmwgPyBfdGhpczIucHJldmlld1VybCArIGZpbGVVcmwgOiBbXTsKICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIGlmIChzdGFydFRpbWUpIHsKICAgICAgICAgICAgICAgIHJlc3VsdERldGFpbHMudW5zaGlmdCh7CiAgICAgICAgICAgICAgICAgIGluc3BlY2V0VGltZTogc3RhcnRUaW1lLAogICAgICAgICAgICAgICAgICBpY29uOiAnZWwtaWNvbi10cnVjaycKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgICBpZiAoZW5kVGltZSkgewogICAgICAgICAgICAgICAgcmVzdWx0RGV0YWlscy5wdXNoKHsKICAgICAgICAgICAgICAgICAgaW5zcGVjZXRUaW1lOiBlbmRUaW1lLAogICAgICAgICAgICAgICAgICBpY29uOiAnZWwtaWNvbi1zdWNjZXNzJwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIF90aGlzMi5kZXRhaWxGb3JtID0gX29iamVjdFNwcmVhZCh7CiAgICAgICAgICAgICAgICByb2FkQ29kZTogcm9hZENvZGUuc3BsaXQoJywnKS5maWx0ZXIoZnVuY3Rpb24gKGkpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgIHN0YXJ0VGltZTogc3RhcnRUaW1lLAogICAgICAgICAgICAgICAgZW5kVGltZTogZW5kVGltZSwKICAgICAgICAgICAgICAgIGluc3BlY3RVc2Vyc05hbWU6IGluc3BlY3RVc2Vyc05hbWUuc3BsaXQoJywnKS5maWx0ZXIoZnVuY3Rpb24gKGkpIHsKICAgICAgICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICAgICAgICB9KSwKICAgICAgICAgICAgICAgIHJlc3VsdERldGFpbHM6IHJlc3VsdERldGFpbHMKICAgICAgICAgICAgICB9LCBkZXRhaWxGb3JtKTsKCiAgICAgICAgICAgICAgLy8g6I635Y+W5beh5qOA6K6h5YiS5YaF5a6577yM5bm257uY5Yi26K6h5YiS5beh5p+l54K55L2NCiAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDIzOwogICAgICAgICAgICAgIHJldHVybiBfdGhpczIuZ2V0UGxhbkRldGFpbChwbGFuSWQpOwogICAgICAgICAgICBjYXNlIDIzOgogICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSAyMzsKICAgICAgICAgICAgICBfdGhpczIuZm9ybUxvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuZmluaXNoKDIzKTsKICAgICAgICAgICAgY2FzZSAyNjoKICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuc3RvcCgpOwogICAgICAgICAgfQogICAgICAgIH0sIF9jYWxsZWUsIG51bGwsIFtbMCwsIDIzLCAyNl1dKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgLy8g6I635Y+W5beh5qOA6K6h5YiS5YaF5a6577yM5bm257uY5Yi26K6h5YiS5beh5p+l54K55L2NCiAgICBnZXRQbGFuRGV0YWlsOiBmdW5jdGlvbiBnZXRQbGFuRGV0YWlsKHBsYW5JZCkgewogICAgICB2YXIgX3RoaXMzID0gdGhpczsKICAgICAgcmV0dXJuIF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlMigpIHsKICAgICAgICB2YXIgX3lpZWxkJHBsYW5EZXRhaWwsIF95aWVsZCRwbGFuRGV0YWlsJHBsYSwgcGxhblBhdHJvbERldGFpbHM7CiAgICAgICAgcmV0dXJuIF9yZWdlbmVyYXRvclJ1bnRpbWUoKS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUyJChfY29udGV4dDIpIHsKICAgICAgICAgIHdoaWxlICgxKSBzd2l0Y2ggKF9jb250ZXh0Mi5wcmV2ID0gX2NvbnRleHQyLm5leHQpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIF9jb250ZXh0Mi5uZXh0ID0gMjsKICAgICAgICAgICAgICByZXR1cm4gcGxhbkRldGFpbChwbGFuSWQpOwogICAgICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICAgX3lpZWxkJHBsYW5EZXRhaWwgPSBfY29udGV4dDIuc2VudDsKICAgICAgICAgICAgICBfeWllbGQkcGxhbkRldGFpbCRwbGEgPSBfeWllbGQkcGxhbkRldGFpbC5wbGFuUGF0cm9sRGV0YWlsczsKICAgICAgICAgICAgICBwbGFuUGF0cm9sRGV0YWlscyA9IF95aWVsZCRwbGFuRGV0YWlsJHBsYSA9PT0gdm9pZCAwID8gW10gOiBfeWllbGQkcGxhbkRldGFpbCRwbGE7CiAgICAgICAgICAgICAgX3RoaXMzLnBsYW5QYXRyb2xEZXRhaWxzID0gcGxhblBhdHJvbERldGFpbHM7CiAgICAgICAgICAgICAgX3RoaXMzLiRuZXh0VGljayhmdW5jdGlvbiAoXykgewogICAgICAgICAgICAgICAgcGxhblBhdHJvbERldGFpbHMuZm9yRWFjaChmdW5jdGlvbiAoaXRlbSkgewogICAgICAgICAgICAgICAgICAvLyDliJvlu7rkuIDkuKpkb23lhYPntKDvvIzmqKHniYjlrZfnrKbkuLLpnIDmnInkuIDkuKrmoLnlhYPntKDljbPlj68KICAgICAgICAgICAgICAgICAgdmFyIGVsID0gbmV3IERPTVBhcnNlcigpLnBhcnNlRnJvbVN0cmluZygiXG4gICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgIGNsYXNzPVwicGxhbi1tYXJrXCJcbiAgICAgICAgICAgICAgc3JjPVwiIi5jb25jYXQocmVxdWlyZSgnQC9hc3NldHMvaW1nL3BhdHJvbEFuZFJlc2N1ZS9pbnNwZWN0aW9uLXBvaW50cy1pY29uLnBuZycpLCAiXCIgYWx0PVwiXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgIiksICd0ZXh0L2h0bWwnKS5ib2R5LmZpcnN0Q2hpbGQ7CiAgICAgICAgICAgICAgICAgIHZhciBtYXJrZXIgPSBuZXcgX3RoaXMzLiRyZWZzLm1pbmVNYXAubWluZU1hcC5NYXJrZXIoZWwsIHsKICAgICAgICAgICAgICAgICAgICBhbmNob3I6ICdsZWZ0JywKICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IFstMjAsIC0yMF0gLy8gb2Zmc2V05Y+C5pWw5Li65qCH5rOo54K555u45a+55LqO5YW25bem5LiK6KeS5YGP56e75YOP57Sg5aSn5bCPCiAgICAgICAgICAgICAgICAgIH0pLnNldExuZ0xhdChbaXRlbS5sbmcsIGl0ZW0ubGF0XSkuYWRkVG8oX3RoaXMzLiRyZWZzLm1pbmVNYXAubWFwKS5zZXRQb3B1cChuZXcgX3RoaXMzLiRyZWZzLm1pbmVNYXAubWluZU1hcC5Qb3B1cCh7CiAgICAgICAgICAgICAgICAgICAgY2xvc2VPbkNsaWNrOiB0cnVlLAogICAgICAgICAgICAgICAgICAgIGNsb3NlQnV0dG9uOiBmYWxzZSwKICAgICAgICAgICAgICAgICAgICBvZmZzZXQ6IFswLCAtNDBdLAogICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZTogJ3BsYW4tbWFyay1wb3B1cCcKICAgICAgICAgICAgICAgICAgfSkuc2V0VGV4dChpdGVtLm5hbWUpKS50b2dnbGVQb3B1cCgpOwogICAgICAgICAgICAgICAgICBtYXJrZXIuaWQgPSBpdGVtLmlkOyAvLyDkv53lrZjngrnkvY3llK/kuIDmoIfor4bnrKYKICAgICAgICAgICAgICAgICAgX3RoaXMzLm1hcmtlcnMucHVzaChtYXJrZXIpOyAvLyDkv53lrZjngrnkvY3lrp7kvosKICAgICAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgICAgIC8vIOS4reW/g+WdkOaghwogICAgICAgICAgICAgICAgX3RoaXMzLmNlbnRlckNvb3JkcyA9IGdldENlbnRlclBvaW50KHBsYW5QYXRyb2xEZXRhaWxzKTsKCiAgICAgICAgICAgICAgICAvLyDlrprkvY3liLDorqHliJLkuK3lv4PngrkKICAgICAgICAgICAgICAgIGlmIChfdGhpczMuY2VudGVyQ29vcmRzKSB7CiAgICAgICAgICAgICAgICAgIF90aGlzMy4kcmVmcy5taW5lTWFwLm1hcC5zZXRDZW50ZXIoX3RoaXMzLmNlbnRlckNvb3Jkcyk7CiAgICAgICAgICAgICAgICAgIF90aGlzMy4kcmVmcy5taW5lTWFwLm1hcC5mbHlUbyh7CiAgICAgICAgICAgICAgICAgICAgY2VudGVyOiBfdGhpczMuY2VudGVyQ29vcmRzLAogICAgICAgICAgICAgICAgICAgIGR1cmF0aW9uOiAyMDAwLAogICAgICAgICAgICAgICAgICAgIC8vIOWKqOeUu+i/h+a4oeaXtumXtAogICAgICAgICAgICAgICAgICAgIHpvb206IDEwLjUKICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQyLnN0b3AoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlMik7CiAgICAgIH0pKSgpOwogICAgfSwKICAgIC8vIOaJk+W8gOmhtemdouaJp+ihjAogICAgb3BlblBhZ2U6IGZ1bmN0aW9uIG9wZW5QYWdlKCkgewogICAgICB2YXIgX3RoaXMkJHJlZnMkbWluZU1hcDsKICAgICAgKF90aGlzJCRyZWZzJG1pbmVNYXAgPSB0aGlzLiRyZWZzLm1pbmVNYXApID09PSBudWxsIHx8IF90aGlzJCRyZWZzJG1pbmVNYXAgPT09IHZvaWQgMCB8fCAoX3RoaXMkJHJlZnMkbWluZU1hcCA9IF90aGlzJCRyZWZzJG1pbmVNYXAubWFwKSA9PT0gbnVsbCB8fCBfdGhpcyQkcmVmcyRtaW5lTWFwID09PSB2b2lkIDAgfHwgX3RoaXMkJHJlZnMkbWluZU1hcC5yZXNpemUoKTsgLy8g5qC55o2u5Zyw5Zu+55qEIGNvbnRhaW5lciDlhYPntKDnmoTlsLrlr7josIPmlbTlnLDlm77nmoTlpKflsI/jgIIKICAgIH0sCiAgICAvLyDlhbPpl63pobXpnaLmiafooYwKICAgIGNsb3NlUGFnZTogZnVuY3Rpb24gY2xvc2VQYWdlKCkgewogICAgICB2YXIgX3RoaXMkJHJlZnMkbWluZU1hcDIsCiAgICAgICAgX3RoaXM0ID0gdGhpczsKICAgICAgdmFyIHB1YlN1YiA9IHRoaXMucHViU3ViOwogICAgICAvLyDph43nva7nu4Tku7bmlbDmja4KICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLiRkYXRhLCB0aGlzLiRvcHRpb25zLmRhdGEuY2FsbCh0aGlzKSwgewogICAgICAgIHB1YlN1YjogcHViU3ViCiAgICAgIH0pOwogICAgICAoX3RoaXMkJHJlZnMkbWluZU1hcDIgPSB0aGlzLiRyZWZzLm1pbmVNYXApID09PSBudWxsIHx8IF90aGlzJCRyZWZzJG1pbmVNYXAyID09PSB2b2lkIDAgfHwgX3RoaXMkJHJlZnMkbWluZU1hcDIucmVzZXRNYXAoZnVuY3Rpb24gKF8pIHsKICAgICAgICByZXR1cm4gX3RoaXM0Lm1hcExvYWRpbmcgPSBmYWxzZTsKICAgICAgfSk7IC8vIOmHjee9ruWcsOWbvgoKICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKF8pIHsKICAgICAgICBfdGhpczQuJHJlZnMuZm9ybUluZm8uJGVsLnNjcm9sbFRvcCA9IDA7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOaXtumXtOi9tOeCueWHuwogICAgdGltZXN0YW1wQ2xpY2s6IGZ1bmN0aW9uIHRpbWVzdGFtcENsaWNrKGl0ZW0pIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHRoaXMubWFya2VycyA9IHRoaXMubWFya2Vycy5maWx0ZXIoZnVuY3Rpb24gKG1hcmtlcikgewogICAgICAgIHZhciBfbWFya2VyJGdldFBvcHVwOwogICAgICAgIC8vIOWFs+mXrSBQb3B1cAogICAgICAgIChfbWFya2VyJGdldFBvcHVwID0gbWFya2VyLmdldFBvcHVwKCkpID09PSBudWxsIHx8IF9tYXJrZXIkZ2V0UG9wdXAgPT09IHZvaWQgMCB8fCBfbWFya2VyJGdldFBvcHVwLnJlbW92ZSgpOwogICAgICAgIGlmIChtYXJrZXIuaWQgPT09IF90aGlzNS5yZXN1bHRBY3RpdmVJZCkgewogICAgICAgICAgbWFya2VyLnJlbW92ZSgpOwogICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBpZiAoX3RoaXM1LnJlc3VsdEFjdGl2ZUlkID09PSBpdGVtLmlkKSBtYXJrZXIudG9nZ2xlUG9wdXAoKTsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgIGlmICh0aGlzLnJlc3VsdEFjdGl2ZUlkID09PSBpdGVtLmlkKSB7CiAgICAgICAgLy8g5a6a5L2N5Yiw6K6h5YiS5Lit5b+D54K5CiAgICAgICAgaWYgKHRoaXMuY2VudGVyQ29vcmRzKSB7CiAgICAgICAgICB0aGlzLiRyZWZzLm1pbmVNYXAubWFwLmZseVRvKHsKICAgICAgICAgICAgY2VudGVyOiB0aGlzLmNlbnRlckNvb3JkcywKICAgICAgICAgICAgem9vbTogMTAuNQogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICAgIHRoaXMucmVzdWx0QWN0aXZlSWQgPSAnJzsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLnJlc3VsdEFjdGl2ZUlkID0gaXRlbS5pZDsKICAgICAgICB2YXIgbWFya2VyID0gbmV3IHRoaXMuJHJlZnMubWluZU1hcC5taW5lTWFwLk1hcmtlcih7CiAgICAgICAgICBjb2xvcjogaXRlbS5tYXJrQ29sb3IsCiAgICAgICAgICBvZmZzZXQ6IFstMTMsIC00MF0KICAgICAgICB9KS5zZXRMbmdMYXQoW2l0ZW0ubG5nLCBpdGVtLmxhdF0pLmFkZFRvKHRoaXMuJHJlZnMubWluZU1hcC5tYXApLnNldFBvcHVwKG5ldyB0aGlzLiRyZWZzLm1pbmVNYXAubWluZU1hcC5Qb3B1cCh7CiAgICAgICAgICBjbG9zZU9uQ2xpY2s6IGZhbHNlLAogICAgICAgICAgY2xvc2VCdXR0b246IGZhbHNlLAogICAgICAgICAgb2Zmc2V0OiBbMCwgLTQ1XSwKICAgICAgICAgIGNsYXNzTmFtZTogInBsYW4tbWFyay1wb3B1cCAiLmNvbmNhdChpdGVtLm1hcmtUeXBlKSwKICAgICAgICAgIG1heFdpZHRoOiA1MDAKICAgICAgICB9KS5zZXRUZXh0KCJcbiAgICAgICAgICAiLmNvbmNhdChpdGVtLmluc3BlY2V0VGltZSwgIlx1RkYwOFx1NzJCNlx1NjAwMVx1RkYxQSIpLmNvbmNhdChkaWN0aW9uYXJ5RXNjYXBlKCd4Y2R3enQnLCBpdGVtLmluc3BlY2V0U3RhdHVzKSwgIlx1RkYwOVxuICAgICAgICAiKSkpLnRvZ2dsZVBvcHVwKCk7CiAgICAgICAgbWFya2VyLmlkID0gaXRlbS5pZDsgLy8g5L+d5a2Y54K55L2N5ZSv5LiA5qCH6K+G56ymCgogICAgICAgIC8vIOWumuS9jeWIsOaWsOeahOeCueS9jQogICAgICAgIHRoaXMuJHJlZnMubWluZU1hcC5tYXAuZmx5VG8oewogICAgICAgICAgY2VudGVyOiBtYXJrZXIuZ2V0TG5nTGF0KCkKICAgICAgICB9KTsKICAgICAgICB0aGlzLm1hcmtlcnMucHVzaChtYXJrZXIpOyAvLyDkv53lrZjngrnkvY3lrp7kvosKICAgICAgfQogICAgfSwKICAgIC8vIOWcsOWbvuaMgui9veWQjgogICAgbWFwTG9hZDogZnVuY3Rpb24gbWFwTG9hZChtYXApIHsKICAgICAgdGhpcy5tYXBMb2FkaW5nID0gZmFsc2U7CiAgICB9LAogICAgZGljdGlvbmFyeUVzY2FwZTogZGljdGlvbmFyeUVzY2FwZQogIH0sCiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHsKICAgIC8vIOWcqOe7hOS7tumUgOavgeS5i+WJjSDmuIXpmaTorqLpmIXmtojmga8KICAgIFB1YlN1Yi51bnN1YnNjcmliZSh0aGlzLnB1YlN1Yik7CiAgfQp9Ow=="},null]}