{"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\\commandDispatch\\EventRegistration\\components\\TrafficControl\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\src\\views\\patrolAndRescue\\commandDispatch\\EventRegistration\\components\\TrafficControl\\index.vue","mtime":1753387735938},{"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:aW1wb3J0IF90b0NvbnN1bWFibGVBcnJheSBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS94Y2p5LWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3RvQ29uc3VtYWJsZUFycmF5LmpzIjsKaW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UveGNqeS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9yZWdlbmVyYXRvclJ1bnRpbWUuanMiOwppbXBvcnQgX2FzeW5jVG9HZW5lcmF0b3IgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UveGNqeS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9hc3luY1RvR2VuZXJhdG9yLmpzIjsKaW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UveGNqeS1mdnVlL25vZGVfbW9kdWxlcy9AYmFiZWwvcnVudGltZS9oZWxwZXJzL2VzbS9vYmplY3RTcHJlYWQyLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuY29uY2F0LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuZmluZC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmluY2x1ZGVzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuam9pbi5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5Lm1hcC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnB1c2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5yZWR1Y2UuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zbGljZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnNwbGljZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmZ1bmN0aW9uLm5hbWUuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5pdGVyYXRvci5jb25zdHJ1Y3Rvci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLmZpbmQuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5pdGVyYXRvci5mb3ItZWFjaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLm1hcC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLnJlZHVjZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmpzb24uc3RyaW5naWZ5LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMub2JqZWN0LmtleXMuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvd2ViLmRvbS1jb2xsZWN0aW9ucy5mb3ItZWFjaC5qcyI7Ci8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCi8vCgppbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7CmltcG9ydCBQdWJTdWIgZnJvbSAncHVic3ViLWpzJzsKaW1wb3J0IHsgdGFibGVEZXRhaWwgfSBmcm9tICdAL2FwaS9wYXRyb2xBbmRSZXNjdWUvY29tbWFuZERpc3BhdGNoL2V2ZW50UmVnaXN0cmF0aW9uJzsKaW1wb3J0IHsgZGljdGlvbmFyeUVzY2FwZSwgZ2V0RGljdGlvbmFyeUJ5Q29kZSB9IGZyb20gJ0AvdXRpbHMvZGljdGlvbmFyeSc7CmltcG9ydCBTY29wZUNsYXNzaWZ5IGZyb20gJy4uL1Njb3BlQ2xhc3NpZnknOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogJ1RyYWZmaWNDb250cm9sJywKICBjb21wb25lbnRzOiB7CiAgICBTY29wZUNsYXNzaWZ5OiBTY29wZUNsYXNzaWZ5CiAgfSwKICBwcm9wczogewogICAgcm9hZE9wdGlvbnM6IHsKICAgICAgZGVmYXVsdDogZnVuY3Rpb24gX2RlZmF1bHQoKSB7CiAgICAgICAgcmV0dXJuIFtdOwogICAgICB9LAogICAgICB0eXBlOiBBcnJheQogICAgfQogIH0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIGFkZEVkaXRGb3JtOiB7CiAgICAgICAgc3RhcnRUaW1lOiAnJywKICAgICAgICBjb250cm9sVGltZTogJycsCiAgICAgICAgZGlyZWN0aW9uOiAnJywKICAgICAgICBldmVudFBsYWNlOiAnMScsCiAgICAgICAgbWVhc3VyZVR5cGU6ICcxJywKICAgICAgICBtZWFzdXJlQ29udGVudDogW10KICAgICAgfSwKICAgICAgYWRkRWRpdFJ1bGVzOiB7CiAgICAgICAgZXZlbnRUZWw6IFt7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICfmiqXmoYjnlLXor53kuI3og73kuLrnqbonLAogICAgICAgICAgdHJpZ2dlcjogWydjaGFuZ2UnLCAnYmx1ciddCiAgICAgICAgfV0sCiAgICAgICAgcm9hZElkOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn6Lev5q615L+h5oGv5LiN6IO95Li656m6JywKICAgICAgICAgIHRyaWdnZXI6IFsnY2hhbmdlJ10KICAgICAgICB9XSwKICAgICAgICB0ZWFtSWQ6IFt7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICflpITnva7pmJ/kvI3kuI3og73kuLrnqbonLAogICAgICAgICAgdHJpZ2dlcjogWydjaGFuZ2UnXQogICAgICAgIH1dLAogICAgICAgIGV2ZW50VGltZTogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+S6i+S7tuWPkeeUn+aXtumXtOS4jeiDveS4uuepuicsCiAgICAgICAgICB0cmlnZ2VyOiBbJ2NoYW5nZSddCiAgICAgICAgfV0KICAgICAgfSwKICAgICAgaWQ6ICcnLAogICAgICAvLyBpZOagh+ivhuespgogICAgICB0cmFmZmljQ29udHJvbHM6IFtdLAogICAgICAvLyDnrqHliLbmjqrmlr3or6bmg4UKICAgICAgZ3pjc3hxT3B0aW9uczogW10sCiAgICAgIHBpbGVOdW1iZXJSYW5nZTogJycsCiAgICAgIGZvcm1UeXBlOiAnYWRkJywKICAgICAgZWRpdEluZGV4OiAwLAogICAgICB3aGVyZVRoZVJvYWRHb2VzOiBbXSwKICAgICAgcmVndWxhdG9yeU1lYXN1cmVzOiBbXQogICAgfTsKICB9LAogIHdhdGNoOiB7CiAgICByb2FkT3B0aW9uczogewogICAgICBoYW5kbGVyOiBmdW5jdGlvbiBoYW5kbGVyKG5ld1ZhbCwgb2xkVmFsKSB7CiAgICAgICAgdmFyIF90aGlzID0gdGhpczsKICAgICAgICBpZiAobmV3VmFsLmxlbmd0aCkgewogICAgICAgICAgdGhpcy4kc2V0KHRoaXMuYWRkRWRpdEZvcm0sICdyb2FkSWQnLCB0aGlzLnJvYWRPcHRpb25zWzBdLmlkKTsKICAgICAgICAgIHZhciByb2FkSW5mbyA9IHRoaXMucm9hZE9wdGlvbnMuZmluZChmdW5jdGlvbiAoaXRlbSkgewogICAgICAgICAgICByZXR1cm4gaXRlbS5pZCA9PT0gX3RoaXMucm9hZE9wdGlvbnNbMF0uaWQ7CiAgICAgICAgICB9KTsKICAgICAgICAgIGlmIChyb2FkSW5mby5zdGFydFBlZ0sgJiYgcm9hZEluZm8uZW5kUGVnSykgewogICAgICAgICAgICB0aGlzLnBpbGVOdW1iZXJSYW5nZSA9IHJvYWRJbmZvLnN0YXJ0UGVnSyArICd+JyArIHJvYWRJbmZvLmVuZFBlZ0s7CiAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICB0aGlzLnBpbGVOdW1iZXJSYW5nZSA9ICcnOwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSwKICAgICAgZGVlcDogdHJ1ZQogICAgfQogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHRoaXMuZ2V0Q29udHJvbENoYW5nZSgpOwogICAgdGhpcy5ldmVudFBsYWNlQ2hhbmdlKCcxJyk7CiAgICB0aGlzLmdldE9wdGlvbnMoJzEnKTsKICAgIHRoaXMuYWRkRWRpdEZvcm0uc3RhcnRUaW1lID0gbW9tZW50KCkuZm9ybWF0KCdZWVlZLU1NLUREIEhIOm1tOnNzJyk7CiAgfSwKICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkgewogICAgdmFyIF90aGlzMiA9IHRoaXM7CiAgICB0aGlzLiRidXMuJG9uKCdzeW5jaHJvbm91c0RhdGEnLCBmdW5jdGlvbiAoZGF0YSkgewogICAgICBfdGhpczIuJHNldChfdGhpczIuYWRkRWRpdEZvcm0sICdyb2FkSWQnLCBkYXRhLnJvYWRJZCk7CiAgICAgIF90aGlzMi5waWxlTnVtYmVyUmFuZ2UgPSBkYXRhLnBpbGVOdW1iZXJSYW5nZTsKICAgICAgX3RoaXMyLmFkZEVkaXRGb3JtLmV2ZW50UGxhY2UgPSBkYXRhLmV2ZW50UGxhY2U7CiAgICAgIF90aGlzMi5hZGRFZGl0Rm9ybS5yb2FkTmFtZSA9IGRhdGEucm9hZE5hbWU7CiAgICAgIF90aGlzMi5hZGRFZGl0Rm9ybS5yb2FkQ29kZSA9IGRhdGEucm9hZENvZGU7CiAgICAgIF90aGlzMi5ldmVudFBsYWNlQ2hhbmdlKGRhdGEuZXZlbnRQbGFjZSk7CiAgICAgIGlmIChfdGhpczIuJHJlZnMuc2NvcGVDbGFzc2lmeSkgewogICAgICAgIF90aGlzMi4kcmVmcy5zY29wZUNsYXNzaWZ5LmdldERldGFpbChfb2JqZWN0U3ByZWFkKF9vYmplY3RTcHJlYWQoe30sIGRhdGEpLCB7fSwgewogICAgICAgICAgcGxhY2VEZXRhaWw6IGRhdGEucGxhY2VEZXRhaWwgPyBkYXRhLnBsYWNlRGV0YWlsIDogW10KICAgICAgICB9KSk7CiAgICAgIH0KICAgIH0pOwogIH0sCiAgbWV0aG9kczogewogICAgZGljdGlvbmFyeUVzY2FwZTogZGljdGlvbmFyeUVzY2FwZSwKICAgIGdldERpY3Rpb25hcnlCeUNvZGU6IGdldERpY3Rpb25hcnlCeUNvZGUsCiAgICBkaWN0aW9uQ2hhbmdlOiBmdW5jdGlvbiBkaWN0aW9uQ2hhbmdlKHZhbHVlLCBldmVudFBsYWNlKSB7CiAgICAgIHZhciBfcGxhY2VJdGVtJGxvd2VyRGljOwogICAgICBpZiAoIXZhbHVlIHx8ICFldmVudFBsYWNlKSByZXR1cm4gJy0nOwogICAgICB2YXIgcGxhY2VJdGVtID0gdGhpcy5nZXREaWN0aW9uYXJ5QnlDb2RlKCdzamZzcXknKS5maW5kKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgcmV0dXJuIGl0ZW0udmFsdWUgPT09IGV2ZW50UGxhY2U7CiAgICAgIH0pOwogICAgICBpZiAoIShwbGFjZUl0ZW0gIT09IG51bGwgJiYgcGxhY2VJdGVtICE9PSB2b2lkIDAgJiYgKF9wbGFjZUl0ZW0kbG93ZXJEaWMgPSBwbGFjZUl0ZW0ubG93ZXJEaWMpICE9PSBudWxsICYmIF9wbGFjZUl0ZW0kbG93ZXJEaWMgIT09IHZvaWQgMCAmJiBfcGxhY2VJdGVtJGxvd2VyRGljWydqdGd6LWZ4J10pKSByZXR1cm4gJy0nOwogICAgICB2YXIgbWF0Y2hlZEl0ZW0gPSBwbGFjZUl0ZW0ubG93ZXJEaWNbJ2p0Z3otZngnXS5maW5kKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgcmV0dXJuIGl0ZW0udmFsdWUgPT09IHZhbHVlOwogICAgICB9KTsKICAgICAgcmV0dXJuIChtYXRjaGVkSXRlbSA9PT0gbnVsbCB8fCBtYXRjaGVkSXRlbSA9PT0gdm9pZCAwID8gdm9pZCAwIDogbWF0Y2hlZEl0ZW0ubmFtZSkgfHwgJy0nOwogICAgICAvLyBsZXQgZGF0YSA9IHRoaXMuZ2V0RGljdGlvbmFyeUJ5Q29kZSgnc2pmc3F5JykKICAgICAgLy8gbGV0IGFycmF5ID0gZGF0YS5maWx0ZXIoaXRlbSA9PiBpdGVtLnZhbHVlID09PSBldmVudFBsYWNlKVswXS5sb3dlckRpY1snanRnei1meCddCiAgICAgIC8vIGlmIChhcnJheS5maWx0ZXIoaXRlbSA9PiBpdGVtLnZhbHVlID09PSB2YWx1ZSkubGVuZ3RoID4gMCkgewogICAgICAvLyAgIHJldHVybiBhcnJheS5maWx0ZXIoaXRlbSA9PiBpdGVtLnZhbHVlID09PSB2YWx1ZSlbMF0ubmFtZQogICAgICAvLyB9IGVsc2UgewogICAgICAvLyAgIHJldHVybiAnLScKICAgICAgLy8gfQogICAgfSwKICAgIGdldENvbnRyb2xDaGFuZ2U6IGZ1bmN0aW9uIGdldENvbnRyb2xDaGFuZ2UoKSB7CiAgICAgIHZhciBhcnJheSA9IGdldERpY3Rpb25hcnlCeUNvZGUoJ2d6Y3MnKTsKICAgICAgdmFyIF9hcnJheSRyZWR1Y2UgPSBhcnJheS5yZWR1Y2UoZnVuY3Rpb24gKGFjYywgaXRlbSkgewogICAgICAgICAgaWYgKFsnMicsICc2JywgJzcnLCAnOCddLmluY2x1ZGVzKGl0ZW0udmFsdWUpKSB7CiAgICAgICAgICAgIGFjYy5hcnJheTEucHVzaChpdGVtKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGFjYy5hcnJheTIucHVzaChpdGVtKTsKICAgICAgICAgIH0KICAgICAgICAgIGlmIChpdGVtLnZhbHVlID09PSAnMicpIHsKICAgICAgICAgICAgYWNjLmFycmF5Mi5wdXNoKGl0ZW0pOwogICAgICAgICAgfQogICAgICAgICAgcmV0dXJuIGFjYzsKICAgICAgICB9LCB7CiAgICAgICAgICBhcnJheTE6IFtdLAogICAgICAgICAgYXJyYXkyOiBbXQogICAgICAgIH0pLAogICAgICAgIGFycmF5MSA9IF9hcnJheSRyZWR1Y2UuYXJyYXkxLAogICAgICAgIGFycmF5MiA9IF9hcnJheSRyZWR1Y2UuYXJyYXkyOwogICAgICBpZiAodGhpcy5hZGRFZGl0Rm9ybS5ldmVudFBsYWNlID09PSAnMicpIHsKICAgICAgICB0aGlzLnJlZ3VsYXRvcnlNZWFzdXJlcyA9IGFycmF5MTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLnJlZ3VsYXRvcnlNZWFzdXJlcyA9IGFycmF5MjsKICAgICAgfQogICAgfSwKICAgIGV2ZW50UGxhY2VDaGFuZ2U6IGZ1bmN0aW9uIGV2ZW50UGxhY2VDaGFuZ2UodmFsKSB7CiAgICAgIHZhciBfdGhpczMgPSB0aGlzOwogICAgICB2YXIgZGF0YSA9IHRoaXMuZ2V0RGljdGlvbmFyeUJ5Q29kZSgnc2pmc3F5Jyk7CiAgICAgIGRhdGEuZm9yRWFjaChmdW5jdGlvbiAoaXRlbSkgewogICAgICAgIGlmIChpdGVtLnZhbHVlID09IHZhbCkgewogICAgICAgICAgX3RoaXMzLndoZXJlVGhlUm9hZEdvZXMgPSBpdGVtLmxvd2VyRGljID8gaXRlbS5sb3dlckRpY1snanRnei1meCddIDogW107CiAgICAgICAgfQogICAgICB9KTsKICAgICAgdGhpcy5nZXRDb250cm9sQ2hhbmdlKCk7CiAgICAgIGlmICh2YWwgPT09ICcyJyB8fCB2YWwgPT09ICc2JyB8fCB2YWwgPT09ICc3JyB8fCB2YWwgPT09ICc4JykgewogICAgICAgIHRoaXMuYWRkRWRpdEZvcm0ubWVhc3VyZVR5cGUgPSAnMic7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy5hZGRFZGl0Rm9ybS5tZWFzdXJlVHlwZSA9ICcxJzsKICAgICAgfQogICAgICB0aGlzLmFkZEVkaXRGb3JtLm1lYXN1cmVDb250ZW50ID0gW107CiAgICAgIHRoaXMuZ2V0T3B0aW9ucyh2YWwpOwogICAgfSwKICAgIGNsaWNraXRlbTogZnVuY3Rpb24gY2xpY2tpdGVtKGUpIHsKICAgICAgaWYgKGUgPT09IHRoaXMuYWRkRWRpdEZvcm0uZGlyZWN0aW9uKSB7CiAgICAgICAgdGhpcy5hZGRFZGl0Rm9ybS5kaXJlY3Rpb24gPSAnJzsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLmFkZEVkaXRGb3JtLmRpcmVjdGlvbiA9IGU7CiAgICAgIH0KICAgIH0sCiAgICByb2FkQ2hhbmdlOiBmdW5jdGlvbiByb2FkQ2hhbmdlKGUpIHsKICAgICAgdmFyIHJvYWRJbmZvID0gdGhpcy5yb2FkT3B0aW9ucy5maW5kKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgcmV0dXJuIGl0ZW0uaWQgPT09IGU7CiAgICAgIH0pOwogICAgICBpZiAocm9hZEluZm8uc3RhcnRQZWdLICYmIHJvYWRJbmZvLmVuZFBlZ0spIHsKICAgICAgICB0aGlzLnBpbGVOdW1iZXJSYW5nZSA9IHJvYWRJbmZvLnN0YXJ0UGVnSyArICd+JyArIHJvYWRJbmZvLmVuZFBlZ0s7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy5waWxlTnVtYmVyUmFuZ2UgPSAnJzsKICAgICAgfQogICAgfSwKICAgIC8vIOiOt+WPluivpuaDhQogICAgZ2V0RGV0YWlsOiBmdW5jdGlvbiBnZXREZXRhaWwoaWQpIHsKICAgICAgdmFyIF90aGlzNCA9IHRoaXM7CiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvcigvKiNfX1BVUkVfXyovX3JlZ2VuZXJhdG9yUnVudGltZSgpLm1hcmsoZnVuY3Rpb24gX2NhbGxlZSgpIHsKICAgICAgICB2YXIgX3RoaXM0JGFkZEVkaXRGb3JtLCBfdGhpczQkYWRkRWRpdEZvcm0kcm8sIHJvYWRJZCwgX3RoaXM0JGFkZEVkaXRGb3JtJHBlLCBwZWdTVmFsLCBfdGhpczQkYWRkRWRpdEZvcm0kcGUyLCBwZWdFVmFsLCBzdGFydFBlZ0FyciwgZW5kUGVnQXJyOwogICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkgewogICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQucHJldiA9IF9jb250ZXh0Lm5leHQpIHsKICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSAwOwogICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAzOwogICAgICAgICAgICAgIHJldHVybiB0YWJsZURldGFpbChpZCk7CiAgICAgICAgICAgIGNhc2UgMzoKICAgICAgICAgICAgICBfdGhpczQuYWRkRWRpdEZvcm0gPSBfY29udGV4dC5zZW50OwogICAgICAgICAgICAgIF90aGlzNCRhZGRFZGl0Rm9ybSA9IF90aGlzNC5hZGRFZGl0Rm9ybSwgX3RoaXM0JGFkZEVkaXRGb3JtJHJvID0gX3RoaXM0JGFkZEVkaXRGb3JtLnJvYWRJZCwgcm9hZElkID0gX3RoaXM0JGFkZEVkaXRGb3JtJHJvID09PSB2b2lkIDAgPyAnJyA6IF90aGlzNCRhZGRFZGl0Rm9ybSRybywgX3RoaXM0JGFkZEVkaXRGb3JtJHBlID0gX3RoaXM0JGFkZEVkaXRGb3JtLnBlZ1NWYWwsIHBlZ1NWYWwgPSBfdGhpczQkYWRkRWRpdEZvcm0kcGUgPT09IHZvaWQgMCA/ICcnIDogX3RoaXM0JGFkZEVkaXRGb3JtJHBlLCBfdGhpczQkYWRkRWRpdEZvcm0kcGUyID0gX3RoaXM0JGFkZEVkaXRGb3JtLnBlZ0VWYWwsIHBlZ0VWYWwgPSBfdGhpczQkYWRkRWRpdEZvcm0kcGUyID09PSB2b2lkIDAgPyAnJyA6IF90aGlzNCRhZGRFZGl0Rm9ybSRwZTI7CiAgICAgICAgICAgICAgaWYgKHBlZ1NWYWwpIHsKICAgICAgICAgICAgICAgIHN0YXJ0UGVnQXJyID0gcGVnU1ZhbC5zcGxpdCgnKycpOwogICAgICAgICAgICAgICAgX3RoaXM0LmFkZEVkaXRGb3JtLnN0YXJ0UGVnID0gc3RhcnRQZWdBcnJbMF0uc2xpY2UoMSk7CiAgICAgICAgICAgICAgICBfdGhpczQuYWRkRWRpdEZvcm0uc3RhcnRQZWdBZGQgPSBzdGFydFBlZ0FyclsxXTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgaWYgKHBlZ0VWYWwpIHsKICAgICAgICAgICAgICAgIGVuZFBlZ0FyciA9IHBlZ0VWYWwuc3BsaXQoJysnKTsKICAgICAgICAgICAgICAgIF90aGlzNC5hZGRFZGl0Rm9ybS5lbmRQZWcgPSBlbmRQZWdBcnJbMF0uc2xpY2UoMSk7CiAgICAgICAgICAgICAgICBfdGhpczQuYWRkRWRpdEZvcm0uZW5kUGVnQWRkID0gZW5kUGVnQXJyWzFdOwogICAgICAgICAgICAgIH0KICAgICAgICAgICAgY2FzZSA3OgogICAgICAgICAgICAgIF9jb250ZXh0LnByZXYgPSA3OwogICAgICAgICAgICAgIF90aGlzNC5mb3JtTG9hZGluZyA9IGZhbHNlOwogICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5maW5pc2goNyk7CiAgICAgICAgICAgIGNhc2UgMTA6CiAgICAgICAgICAgIGNhc2UgImVuZCI6CiAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTsKICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlLCBudWxsLCBbWzAsLCA3LCAxMF1dKTsKICAgICAgfSkpKCk7CiAgICB9LAogICAgLy8g6I635Y+W566h5Yi25o6q5pa96K+m5oOFCiAgICBnZXRPcHRpb25zOiBmdW5jdGlvbiBnZXRPcHRpb25zKHZhbCkgewogICAgICB2YXIgX3RoaXM1ID0gdGhpczsKICAgICAgdmFyIGRhdGEgPSB0aGlzLmdldERpY3Rpb25hcnlCeUNvZGUoJ2d6Y3MnKTsKICAgICAgZGF0YS5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgaWYgKGl0ZW0udmFsdWUgPT0gdmFsKSB7CiAgICAgICAgICBfdGhpczUuZ3pjc3hxT3B0aW9ucyA9IGl0ZW0ubG93ZXJEaWMgPyBpdGVtLmxvd2VyRGljLmd6Y3N4cSA6IFtdOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgLy8g5L+d5a2YCiAgICBoYW5kbGVTYXZlOiBmdW5jdGlvbiBoYW5kbGVTYXZlKCkgewogICAgICB2YXIgX3RoaXM2ID0gdGhpczsKICAgICAgdGhpcy4kY29uZmlybSgn56Gu6K6k5paw5aKe5Lqk6YCa566h5Yi25L+h5oGv5pWw5o2u5ZCXPycsICfmj5DnpLonLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLAogICAgICAgIHR5cGU6ICd3YXJuaW5nJwogICAgICB9KS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICBfdGhpczYuJHJlZnMuYWRkRWRpdEZvcm0udmFsaWRhdGUoLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHsKICAgICAgICAgIHZhciBfcmVmID0gX2FzeW5jVG9HZW5lcmF0b3IoLyojX19QVVJFX18qL19yZWdlbmVyYXRvclJ1bnRpbWUoKS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUyKHZhbGlkLCBvYmplY3QpIHsKICAgICAgICAgICAgdmFyIGRhdGEsIHJvYWRJbmZvLCByb2FkRGF0YSwgYXJyYXk7CiAgICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlMiQoX2NvbnRleHQyKSB7CiAgICAgICAgICAgICAgd2hpbGUgKDEpIHN3aXRjaCAoX2NvbnRleHQyLnByZXYgPSBfY29udGV4dDIubmV4dCkgewogICAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgICBpZiAoIXZhbGlkKSB7CiAgICAgICAgICAgICAgICAgICAgX3RoaXM2LiRtZXNzYWdlLndhcm5pbmcoIlx1NjcwOSIuY29uY2F0KE9iamVjdC5rZXlzKG9iamVjdCkubGVuZ3RoLCAiXHU0RTJBXHU1QjU3XHU2QkI1XHU2NzJBXHU5MDFBXHU4RkM3XHU2ODIxXHU5QThDXHVGRjBDXHU4QkY3XHU2QjYzXHU3ODZFXHU1ODZCXHU1MTk5XHU4ODY4XHU1MzU1XHU1MTg1XHU1QkI5XHUzMDAyIikpOwogICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIF90aGlzNi5zYXZlTG9hZGluZyA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgZGF0YSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoX3RoaXM2LmFkZEVkaXRGb3JtKSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEuc3RhcnRUaW1lKSB7CiAgICAgICAgICAgICAgICAgICAgICBkYXRhLnN0YXJ0VGltZSA9IG1vbWVudChkYXRhLnN0YXJ0VGltZSkuZm9ybWF0KCdZWVlZLU1NLUREIEhIOm1tOnNzJyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmIChkYXRhLmNvbnRyb2xUaW1lKSB7CiAgICAgICAgICAgICAgICAgICAgICBkYXRhLmNvbnRyb2xUaW1lID0gbW9tZW50KGRhdGEuY29udHJvbFRpbWUpLmZvcm1hdCgnWVlZWS1NTS1ERCBISDptbTpzcycpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICByb2FkSW5mbyA9IF90aGlzNi5yb2FkT3B0aW9ucy5maW5kKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gaXRlbS5pZCA9PT0gZGF0YS5yb2FkSWQ7CiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgZGF0YS5yb2FkTmFtZSA9IHJvYWRJbmZvLm5hbWU7CiAgICAgICAgICAgICAgICAgICAgZGF0YS5yb2FkQ29kZSA9IHJvYWRJbmZvLmNvZGU7CiAgICAgICAgICAgICAgICAgICAgaWYgKGRhdGEubWVhc3VyZUNvbnRlbnQubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICBkYXRhLm1lYXN1cmVDb250ZW50ID0gZGF0YS5tZWFzdXJlQ29udGVudC5qb2luKCcsJyk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgIGRhdGEubWVhc3VyZUNvbnRlbnQgPSAnJzsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgcm9hZERhdGEgPSBfdGhpczYuJHJlZnMuc2NvcGVDbGFzc2lmeS5zZW5kRGF0YSgpOwogICAgICAgICAgICAgICAgICAgIF90aGlzNi4kcmVmcy5zY29wZUNsYXNzaWZ5LmNsZWFyQ2hhbmdlKCk7CiAgICAgICAgICAgICAgICAgICAgaWYgKF90aGlzNi5hZGRFZGl0Rm9ybS5ldmVudFBsYWNlICE9PSAnMScpIHsKICAgICAgICAgICAgICAgICAgICAgIGFycmF5ID0gcm9hZERhdGEubWFwKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBfb2JqZWN0U3ByZWFkKF9vYmplY3RTcHJlYWQoX29iamVjdFNwcmVhZCh7fSwgZGF0YSksIGl0ZW0pLCB7fSwgewogICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1czogJzAnCiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICBfdGhpczYudHJhZmZpY0NvbnRyb2xzID0gW10uY29uY2F0KF90b0NvbnN1bWFibGVBcnJheShfdGhpczYudHJhZmZpY0NvbnRyb2xzKSwgX3RvQ29uc3VtYWJsZUFycmF5KGFycmF5KSk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBfb2JqZWN0U3ByZWFkKF9vYmplY3RTcHJlYWQoe30sIGRhdGEpLCByb2FkRGF0YSk7CiAgICAgICAgICAgICAgICAgICAgICBkYXRhLnN0YXR1cyA9ICcwJzsKICAgICAgICAgICAgICAgICAgICAgIGRhdGEucGxhY2VOYW1lID0gZGF0YS5zdGFydFBhdHJvbE5hbWUgJiYgZGF0YS5lbmRQYXRyb2xOYW1lID8gIiIuY29uY2F0KGRhdGEuc3RhcnRQYXRyb2xOYW1lLCAiLSIpLmNvbmNhdChkYXRhLmVuZFBhdHJvbE5hbWUpIDogZGF0YS5zdGFydFBhdHJvbE5hbWUgfHwgZGF0YS5lbmRQYXRyb2xOYW1lID8gZGF0YS5zdGFydFBhdHJvbE5hbWUgfHwgZGF0YS5lbmRQYXRyb2xOYW1lIDogJyc7CiAgICAgICAgICAgICAgICAgICAgICBfdGhpczYudHJhZmZpY0NvbnRyb2xzLnB1c2goZGF0YSk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIF90aGlzNi5hZGRFZGl0Rm9ybS5ldmVudFBsYWNlID0gJzEnOwogICAgICAgICAgICAgICAgICAgIF90aGlzNi5ldmVudFBsYWNlQ2hhbmdlKCcxJyk7CiAgICAgICAgICAgICAgICAgICAgX3RoaXM2LiRlbWl0KCdzZW5kVHJhZmZpY0RhdGEnLCBfdGhpczYudHJhZmZpY0NvbnRyb2xzKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2FzZSAxOgogICAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LCBfY2FsbGVlMik7CiAgICAgICAgICB9KSk7CiAgICAgICAgICByZXR1cm4gZnVuY3Rpb24gKF94LCBfeDIpIHsKICAgICAgICAgICAgcmV0dXJuIF9yZWYuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgICAgICAgIH07CiAgICAgICAgfSgpKTsKICAgICAgfSk7CiAgICB9LAogICAgaGFuZGxlRWRpdDogZnVuY3Rpb24gaGFuZGxlRWRpdChyb3csIGluZGV4KSB7CiAgICAgIHRoaXMuZm9ybVR5cGUgPSAnZWRpdCc7CiAgICAgIHRoaXMuZWRpdEluZGV4ID0gaW5kZXg7CiAgICAgIHRoaXMuYWRkRWRpdEZvcm0gPSByb3c7CiAgICAgIHRoaXMuJHJlZnMuc2NvcGVDbGFzc2lmeS5nZXREZXRhaWwocm93KTsKICAgIH0sCiAgICBoYW5kbGVEZWxldGU6IGZ1bmN0aW9uIGhhbmRsZURlbGV0ZShyb3csIGluZGV4KSB7CiAgICAgIHZhciBfdGhpczcgPSB0aGlzOwogICAgICB0aGlzLiRjb25maXJtKCfnoa7orqTliKDpmaTov5nmnaHmlbDmja7lkJc/JywgJ+aPkOekuicsIHsKICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ+ehruWumicsCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsCiAgICAgICAgdHlwZTogJ3dhcm5pbmcnCiAgICAgIH0pLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgIF90aGlzNy50cmFmZmljQ29udHJvbHMuc3BsaWNlKGluZGV4LCAxKTsKICAgICAgICBfdGhpczcuJGVtaXQoJ3NlbmRUcmFmZmljRGF0YScsIF90aGlzNy50cmFmZmljQ29udHJvbHMpOwogICAgICB9KTsKICAgIH0KICB9LAogIGJlZm9yZURlc3Ryb3k6IGZ1bmN0aW9uIGJlZm9yZURlc3Ryb3koKSB7CiAgICAvLyDlnKjnu4Tku7bplIDmr4HkuYvliY0g5riF6Zmk6K6i6ZiF5raI5oGvCiAgICBQdWJTdWIudW5zdWJzY3JpYmUodGhpcy5wdWJTdWIpOwogIH0KfTs="},null]}