{"remainingRequest":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\featuresArithmetic\\referDataManager\\enumDicData\\dictDialog.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\featuresArithmetic\\referDataManager\\enumDicData\\dictDialog.vue","mtime":1737312942170},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\babel.config.js","mtime":1733906004399},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9yZWdlbmVyYXRvclJ1bnRpbWUgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3JlZ2VuZXJhdG9yUnVudGltZS5qcyI7CmltcG9ydCBfYXN5bmNUb0dlbmVyYXRvciBmcm9tICJEOi9qZW5raW5zL3dvcmtzcGFjZS9kYXRhU2hhcmUtZnZ1ZS9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvci5qcyI7CmltcG9ydCBfdG9Db25zdW1hYmxlQXJyYXkgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL3RvQ29uc3VtYWJsZUFycmF5LmpzIjsKaW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL29iamVjdFNwcmVhZDIuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5lcnJvci5jYXVzZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmNvbmNhdC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmZpbHRlci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmluY2x1ZGVzLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuam9pbi5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5Lm1hcC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LnB1c2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5zb3J0LmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuc3BsaWNlLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuZnVuY3Rpb24ubmFtZS5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5yZWdleHAudG8tc3RyaW5nLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXNuZXh0Lml0ZXJhdG9yLmNvbnN0cnVjdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXNuZXh0Lml0ZXJhdG9yLmZpbHRlci5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5mb3ItZWFjaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzbmV4dC5pdGVyYXRvci5tYXAuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy93ZWIuZG9tLWNvbGxlY3Rpb25zLmZvci1lYWNoLmpzIjsKLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCB1dGlscyBmcm9tICdAL3V0aWxzLmpzJzsKaW1wb3J0IGRpYWxvZ01peGluIGZyb20gJ0AvbWl4aW5zL2RpYWxvZy5qcyc7CmltcG9ydCBBUEkgZnJvbSAnQC9hcGkvYnVzaW5lc3MvZGljdC5qcyc7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAnZGljdERpYWxvZycsCiAgbWl4aW5zOiBbZGlhbG9nTWl4aW5dLAogIHByb3BzOiB7CiAgICBzZWxlY3RlZFJvd3M6IHsKICAgICAgdHlwZTogQXJyYXksCiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkgewogICAgICAgIHJldHVybiBbXTsKICAgICAgfQogICAgfSwKICAgIHBhcmVudDogewogICAgICB0eXBlOiBPYmplY3QsCiAgICAgIGRlZmF1bHQ6IGZ1bmN0aW9uIF9kZWZhdWx0KCkgewogICAgICAgIHJldHVybiB7fTsKICAgICAgfQogICAgfQogIH0sCiAgZGF0YTogZnVuY3Rpb24gZGF0YSgpIHsKICAgIHZhciBfdGhpcyA9IHRoaXM7CiAgICB2YXIgY2hlY1ZhbHVlID0gZnVuY3Rpb24gY2hlY1ZhbHVlKHJ1bGUsIHZhbHVlLCBjYWxsYmFjaykgewogICAgICBpZiAoIXZhbHVlKSB7CiAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG5ldyBFcnJvcign5oiQ5ZGY5YC85LiN6IO95Li656m6JykpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChfdGhpcy5mb3JtLmRldGFpbHMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICByZXR1cm4gaXRlbS52YWx1ZSA9PT0gdmFsdWU7CiAgICAgICAgfSkubGVuZ3RoID4gMSkgewogICAgICAgICAgY2FsbGJhY2sobmV3IEVycm9yKCfmiJDlkZjlgLzkuI3og73ph43lpI0hJykpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjYWxsYmFjaygpOwogICAgICAgIH0KICAgICAgfQogICAgfTsKICAgIHZhciBjaGVjTmFtZSA9IGZ1bmN0aW9uIGNoZWNOYW1lKHJ1bGUsIHZhbHVlLCBjYWxsYmFjaykgewogICAgICBpZiAoIXZhbHVlKSB7CiAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG5ldyBFcnJvcign5oiQ5ZGY5ZCN56ew5LiN6IO95Li656m6JykpOwogICAgICB9IGVsc2UgewogICAgICAgIGlmIChfdGhpcy5mb3JtLmRldGFpbHMuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICByZXR1cm4gaXRlbS5uYW1lID09PSB2YWx1ZTsKICAgICAgICB9KS5sZW5ndGggPiAxKSB7CiAgICAgICAgICBjYWxsYmFjayhuZXcgRXJyb3IoJ+aIkOWRmOWQjeensOS4jeiDvemHjeWkjSEnKSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGNhbGxiYWNrKCk7CiAgICAgICAgfQogICAgICB9CiAgICB9OwogICAgcmV0dXJuIHsKICAgICAgZm9ybTogewogICAgICAgIG5hbWU6ICcnLAogICAgICAgIGNvZGU6ICcnLAogICAgICAgIHRyZWVJZDogJycsCiAgICAgICAgZGV0YWlsczogW10KICAgICAgfSwKICAgICAgcnVsZXM6IHsKICAgICAgICBuYW1lOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn5a2X5YW46aG55ZCN56ew5LiN6IO95Li656m6JwogICAgICAgIH1dLAogICAgICAgIGNvZGU6IFt7CiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwKICAgICAgICAgIG1lc3NhZ2U6ICflrZflhbjpobnnvJbnoIHkuI3og73kuLrnqbonCiAgICAgICAgfV0KICAgICAgfSwKICAgICAgZXhjbGVUZXh0OiAnJywKICAgICAgdGFibGVIZWlnaHQ6ICczMDBweCcsCiAgICAgIGxvYWRpbmc6IGZhbHNlLAogICAgICBzbkNoYW5nZTogbnVsbCwKICAgICAgbXVsdGlwbGVTZWxlY3Rpb246IFtdLAogICAgICBmb3JtUnVsZXM6IHsKICAgICAgICBuYW1lOiBbewogICAgICAgICAgcmVxdWlyZWQ6IHRydWUsCiAgICAgICAgICBtZXNzYWdlOiAn5oiQ5ZGY5ZCN56ew5LiN6IO95Li656m6JywKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH0sIHsKICAgICAgICAgIHZhbGlkYXRvcjogY2hlY05hbWUsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9XSwKICAgICAgICB2YWx1ZTogW3sKICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLAogICAgICAgICAgbWVzc2FnZTogJ+aIkOWRmOWAvOS4jeiDveS4uuepuicsCiAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicKICAgICAgICB9LCB7CiAgICAgICAgICB2YWxpZGF0b3I6IGNoZWNWYWx1ZSwKICAgICAgICAgIHRyaWdnZXI6ICdibHVyJwogICAgICAgIH1dCiAgICAgIH0KICAgIH07CiAgfSwKICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkge30sCiAgbWV0aG9kczogewogICAgLyoqDQogICAgICogQGRlc2NyaXB0aW9uOiBkaWFsb2fmr4/mrKHmmL7npLrml7bop6blj5HnmoRpbml05pa55rOVDQogICAgICogQHBhcmFtIHsqfSBkYXRhIOS8oOWFpWRhdGENCiAgICAgKiBAcmV0dXJuIHsqfQ0KICAgICAqLwogICAgaW5pdERhdGE6IGZ1bmN0aW9uIGluaXREYXRhKGRhdGEpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CiAgICAgIHZhciBvcmdGb3JtID0gdGhpcy4kb3B0aW9ucy5kYXRhKCkuZm9ybTsKICAgICAgdGhpcy5mb3JtID0gX29iamVjdFNwcmVhZChfb2JqZWN0U3ByZWFkKHt9LCBvcmdGb3JtKSwgZGF0YSk7CiAgICAgIGlmICh0aGlzLmZvcm0uaWQpIHsKICAgICAgICB0aGlzLmxvYWREaWN0SXRlbSgpOwogICAgICB9CiAgICAgIHRoaXMuJG5leHRUaWNrKGZ1bmN0aW9uICgpIHsKICAgICAgICBfdGhpczIuJHJlZnMuZm9ybS5jbGVhclZhbGlkYXRlKCk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vIOiOt+WPluWtl+WFuOWtkOihqCAtLeWtl+WFuOmhuQogICAgbG9hZERpY3RJdGVtOiBmdW5jdGlvbiBsb2FkRGljdEl0ZW0oKSB7CiAgICAgIHZhciBfdGhpczMgPSB0aGlzOwogICAgICB2YXIgZGF0YSA9IHRoaXMucXMuc3RyaW5naWZ5KHsKICAgICAgICBpZDogdGhpcy5mb3JtLmlkCiAgICAgIH0pOwogICAgICBBUEkubG9hZERpY3Rpb25hcnlCeUlkKGRhdGEpLnRoZW4oZnVuY3Rpb24gKHJlc3ApIHsKICAgICAgICBfdGhpczMuZm9ybSA9IHJlc3A7CiAgICAgICAgaWYgKF90aGlzMy5mb3JtLmRldGFpbHMubGVuZ3RoKSB7CiAgICAgICAgICBfdGhpczMuZm9ybS5kZXRhaWxzLnNvcnQoZnVuY3Rpb24gKGEsIGIpIHsKICAgICAgICAgICAgcmV0dXJuIGEuc24gLSBiLnNuOwogICAgICAgICAgfSk7CiAgICAgICAgICBfdGhpczMuZm9ybS5kZXRhaWxzLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7CiAgICAgICAgICAgIGl0ZW0ua2V5ID0gdXRpbHMudXVpZCgpOwogICAgICAgICAgfSk7CiAgICAgICAgICBfdGhpczMuZm9ybS5kZXRhaWxzID0gX3RvQ29uc3VtYWJsZUFycmF5KF90aGlzMy5mb3JtLmRldGFpbHMpOwogICAgICAgIH0KICAgICAgfSwgZnVuY3Rpb24gKGVycm9yKSB7CiAgICAgICAgcmVqZWN0KGVycm9yKTsKICAgICAgfSk7CiAgICB9LAogICAgYW5hbHlzaXNUZXh0OiBmdW5jdGlvbiBhbmFseXNpc1RleHQoKSB7CiAgICAgIGlmICghdGhpcy5leGNsZVRleHQpIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+aaguaXoOWPr+ino+aekOeahOaVsOaNru+8jOivt+WwhuaVsOaNruWkjeWItuWIsOaWh+acrOahhuS4re+8jOWGjemHjeivle+8gScpOwogICAgICB9IGVsc2UgewogICAgICAgIHRoaXMuYW5hbHlzaXModGhpcy5leGNsZVRleHQpOwogICAgICB9CiAgICB9LAogICAgYW5hbHlzaXM6IGZ1bmN0aW9uIGFuYWx5c2lzKGRhdGEpIHsKICAgICAgdmFyIF90aGlzJGZvcm0kZGV0YWlsczsKICAgICAgdmFyIGRpY3Rpb25hcnlJZCA9ICcnOwogICAgICBpZiAodGhpcy5mb3JtICYmIHRoaXMuZm9ybS5pZCkgewogICAgICAgIGZvcm0gPSB0aGlzLmZvcm0uaWQ7CiAgICAgIH0KICAgICAgdmFyIHN0ciA9IGRhdGEudG9TdHJpbmcoKTsKICAgICAgdmFyIHRlbXBBcnIgPSBzdHIuc3BsaXQoJ1xuJyk7CiAgICAgIHZhciBhZGREYXRhID0gdGVtcEFyci5tYXAoZnVuY3Rpb24gKGl0ZW0sIGluZGV4KSB7CiAgICAgICAgdmFyIGxpbmUgPSBpdGVtLnNwbGl0KCdcdCcpOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICBkaWN0aW9uYXJ5SWQ6IGRpY3Rpb25hcnlJZCwKICAgICAgICAgIG5hbWU6IGxpbmVbMF0sCiAgICAgICAgICB2YWx1ZTogbGluZVsxXSwKICAgICAgICAgIHNuOiBsaW5lWzJdLAogICAgICAgICAgZmxhZzogLTEsCiAgICAgICAgICBrZXk6IG5ldyBEYXRlKCkuZ2V0VGltZSgpICsgaW5kZXgKICAgICAgICB9OwogICAgICB9KTsKICAgICAgYWRkRGF0YSA9IGFkZERhdGEuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgaWYgKGl0ZW0ubmFtZSB8fCBpdGVtLnZhbHVlIHx8IGl0ZW0uc24pIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgICB9KTsKICAgICAgKF90aGlzJGZvcm0kZGV0YWlscyA9IHRoaXMuZm9ybS5kZXRhaWxzKS5zcGxpY2UuYXBwbHkoX3RoaXMkZm9ybSRkZXRhaWxzLCBbMCwgYWRkRGF0YS5sZW5ndGhdLmNvbmNhdChfdG9Db25zdW1hYmxlQXJyYXkoYWRkRGF0YSkpKTsKICAgICAgY29uc29sZS5sb2coYWRkRGF0YSwgJ3RlbXBBcnInKTsKICAgIH0sCiAgICBoYW5kbGVBZGQ6IGZ1bmN0aW9uIGhhbmRsZUFkZCgpIHsKICAgICAgdmFyIGxlbmd0aCA9IHRoaXMuZm9ybS5kZXRhaWxzLmxlbmd0aDsKICAgICAgdmFyIGRpY3Rpb25hcnlJZCA9ICcnOwogICAgICBpZiAodGhpcy5mb3JtICYmIHRoaXMuZm9ybS5pZCkgewogICAgICAgIGRpY3Rpb25hcnlJZCA9IHRoaXMuZm9ybS5pZDsKICAgICAgfQogICAgICB0aGlzLmZvcm0uZGV0YWlscy5wdXNoKHsKICAgICAgICBkaWN0aW9uYXJ5SWQ6IGRpY3Rpb25hcnlJZCwKICAgICAgICBuYW1lOiAnJywKICAgICAgICB2YWx1ZTogJycsCiAgICAgICAgc246IGxlbmd0aCArIDEsCiAgICAgICAgZmxhZzogLTEsCiAgICAgICAga2V5OiB1dGlscy51dWlkKCkKICAgICAgfSk7CiAgICB9LAogICAgaGFuZGxlRGljdEl0ZW1EZWw6IGZ1bmN0aW9uIGhhbmRsZURpY3RJdGVtRGVsKCkgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKICAgICAgLy8g6Z2e6I2J56i/54q25oCB5LiN5Y+v5Yig6ZmkCiAgICAgIC8vIOWMuuWIq+aciWlkIOayoeW+l2lkCiAgICAgIGlmICghdGhpcy5tdWx0aXBsZVNlbGVjdGlvbi5sZW5ndGgpIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+ivt+mAieaLqeimgeWIoOmZpOW+l+aVsOaNricpOwogICAgICAgIHJldHVybjsKICAgICAgfSBlbHNlIHsKICAgICAgICAvLyDov4fmu6Tlh7rojYnnqL/nirbmgIHlvpfmlbDmja4KICAgICAgICB2YXIgaW5pdERpY3RJdGVtID0gdGhpcy5tdWx0aXBsZVNlbGVjdGlvbi5maWx0ZXIoZnVuY3Rpb24gKGl0ZW0pIHsKICAgICAgICAgIHJldHVybiBpdGVtLmZsYWcgPT0gLTE7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKCFpbml0RGljdEl0ZW0ubGVuZ3RoKSB7CiAgICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+WQr+eUqOaIluemgeeUqOeKtuaAgeeahOaVsOaNru+8jOS4jeWPr+WIoOmZpO+8gScpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB2YXIgbXNnID0gJ+WmguWtmOWcqOacquS/neWtmOeahOWtl+WFuOaIkOWRmCzor7flhYjkv53lrZjvvIHlpoLnu6fnu63mraTmk43kvZzmnKrkv53lrZjnmoTnvJbovpHlsIbooqvliKDpmaQs5piv5ZCm57un57utPyc7CiAgICAgICAgICB0aGlzLiRjb25maXJtKG1zZywgJ+aPkOekuicsIHsKICAgICAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLAogICAgICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywKICAgICAgICAgICAgdHlwZTogJ3dhcm5pbmcnCiAgICAgICAgICB9KS50aGVuKGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgLy8g5pS26ZuG5bey5o+Q5Lqk55qE5pWw5o2uaWQKICAgICAgICAgICAgdmFyIGlkcyA9IFtdLAogICAgICAgICAgICAgIGtleXMgPSBbXTsKICAgICAgICAgICAgaW5pdERpY3RJdGVtLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHsKICAgICAgICAgICAgICBrZXlzLnB1c2goaXRlbS5rZXkpOwogICAgICAgICAgICAgIGlmIChpdGVtLmlkKSB7CiAgICAgICAgICAgICAgICBpZHMucHVzaChpdGVtLmlkKTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICAvLyDmnKzlnLDliKDpmaTojYnnqL/nmoTmlbDmja4KICAgICAgICAgICAgdmFyIGRhdGFTb3VyY2UgPSBfdG9Db25zdW1hYmxlQXJyYXkoX3RoaXM0LmZvcm0uZGV0YWlscyk7CiAgICAgICAgICAgIHZhciBkYXRhVGVtcCA9IGRhdGFTb3VyY2UuZmlsdGVyKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICAgICAgcmV0dXJuICFrZXlzLmluY2x1ZGVzKGl0ZW0ua2V5KTsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIF90aGlzNC5mb3JtLmRldGFpbHMgPSBkYXRhVGVtcDsKICAgICAgICAgICAgaWYgKGlkcy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgLy8g5o+Q5Lqk5pWw5o2uCiAgICAgICAgICAgICAgdmFyIHBhcmFtcyA9IF90aGlzNC5xcy5zdHJpbmdpZnkoewogICAgICAgICAgICAgICAgaWRzOiBpZHMuam9pbignLCcpCiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgQVBJLmRlbGV0ZURpY3RJdGVtKHBhcmFtcykudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgICAgICBfdGhpczQubG9hZERpY3RJdGVtKCk7CiAgICAgICAgICAgICAgICBfdGhpczQuJG1lc3NhZ2Uuc3VjY2Vzcygn5Yig6Zmk5oiQ5YqfJyk7CiAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uICgpIHsKICAgICAgICAgICAgX3RoaXM0LiRtZXNzYWdlKHsKICAgICAgICAgICAgICB0eXBlOiAnaW5mbycsCiAgICAgICAgICAgICAgbWVzc2FnZTogIlx1NURGMlx1NTNENlx1NkQ4OFx1NTIyMFx1OTY2NCIKICAgICAgICAgICAgfSk7CiAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgIH0KICAgIH0sCiAgICBoYW5kbGVEaWN0SXRlbUZsYWc6IGZ1bmN0aW9uIGhhbmRsZURpY3RJdGVtRmxhZyhzdGF0dXMpIHsKICAgICAgdmFyIF90aGlzNSA9IHRoaXM7CiAgICAgIHZhciBoYXNOb1NhdmUgPSBmYWxzZTsKICAgICAgaWYgKHRoaXMubXVsdGlwbGVTZWxlY3Rpb24ubGVuZ3RoIDw9IDApIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+ivt+mAieaLqeiHs+WwkeS4gOadoeaVsOaNru+8gScpOwogICAgICAgIHJldHVybjsKICAgICAgfSBlbHNlIHsKICAgICAgICB2YXIgaWRzID0gW107CiAgICAgICAgdGhpcy5tdWx0aXBsZVNlbGVjdGlvbi5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICBpZiAoIWl0ZW0uaWQpIHsKICAgICAgICAgICAgaGFzTm9TYXZlID0gdHJ1ZTsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgICAgfQogICAgICAgICAgaWRzLnB1c2goaXRlbS5pZCk7CiAgICAgICAgfSk7CiAgICAgICAgaWYgKGlkcy5sZW5ndGggPD0gMCkgewogICAgICAgICAgdGhpcy4kbWVzc2FnZS53YXJuaW5nKCfmiYDpgInmlbDmja7mnKrkv53lrZjvvIzkuI3og73ov5vooYzor6Xmk43kvZzvvIEnKTsKICAgICAgICAgIHJldHVybjsKICAgICAgICB9CiAgICAgICAgdmFyIHF1ZXJ5ID0gewogICAgICAgICAgaWRzOiBpZHMuam9pbignLCcpLAogICAgICAgICAgc3RhdHVzOiBzdGF0dXMKICAgICAgICB9OwogICAgICAgIHZhciBwYXJhbSA9IHRoaXMucXMuc3RyaW5naWZ5KHF1ZXJ5LCB7CiAgICAgICAgICBpbmRpY2VzOiBmYWxzZQogICAgICAgIH0pOwogICAgICAgIHZhciB0YWcgPSBzdGF0dXMgPyAn5ZCvJyA6ICfnpoEnOwogICAgICAgIHZhciBtc2c7CiAgICAgICAgaWYgKGhhc05vU2F2ZSkgewogICAgICAgICAgbXNnID0gJ+WtmOWcqOacquS/neWtmOeahOWtl+auteaIkOWRmCzor7flhYjkv53lrZjvvIHlpoLnu6fnu63mraTmk43kvZzmnKrkv53lrZjnmoTnvJbovpHlsIbooqvmuIXpmaQs5piv5ZCm57un57utPyc7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIG1zZyA9ICJcdTc4NkVcdTVCOUEiLmNvbmNhdCh0YWcsICJcdTc1MjhcdTkwMDlcdTRFMkRcdTY1NzBcdTYzNkUsXHU2NjJGXHU1NDI2XHU3RUU3XHU3RUVEPyIpOwogICAgICAgIH0KICAgICAgICB0aGlzLiRjb25maXJtKG1zZywgJ+aPkOekuicsIHsKICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywKICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICflj5bmtognLAogICAgICAgICAgdHlwZTogJ3dhcm5pbmcnCiAgICAgICAgfSkudGhlbihmdW5jdGlvbiAoKSB7CiAgICAgICAgICAvLyDosIPnlKjmjqXlj6Mg5o+Q5Lqk5pWw5o2uCiAgICAgICAgICBBUEkudXBkYXRlRGljdEl0ZW1TdGF0dXMocGFyYW0pLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgICAgICBfdGhpczUubG9hZERpY3RJdGVtKCk7CiAgICAgICAgICAgIF90aGlzNS4kbWVzc2FnZS5zdWNjZXNzKCIiLmNvbmNhdChzdGF0dXMgPyAn5ZCv55SoJyA6ICfnpoHnlKgnLCAiXHU2MjEwXHU1MjlGIikpOwogICAgICAgICAgfSk7CiAgICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKGVycikgewogICAgICAgICAgY29uc29sZS5sb2coZXJyKTsKICAgICAgICAgIF90aGlzNS4kbWVzc2FnZSh7CiAgICAgICAgICAgIHR5cGU6ICdpbmZvJywKICAgICAgICAgICAgbWVzc2FnZTogIlx1NURGMlx1NTNENlx1NkQ4OCIuY29uY2F0KHN0YXR1cyA/ICflkK/nlKgnIDogJ+emgeeUqCcpCiAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgfQogICAgfSwKICAgIGhhbmRsZUluZGV4OiBmdW5jdGlvbiBoYW5kbGVJbmRleCgpIHsKICAgICAgdmFyIF90aGlzNiA9IHRoaXM7CiAgICAgIGlmICh0aGlzLnNuQ2hhbmdlID09IG51bGwpIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+Wtl+WFuOmhueaOkuW6j+WPt+aXoOabtOaUuScpOwogICAgICB9IGVsc2UgewogICAgICAgIEFQSS51cGRhdGVEaWN0SXRlbVNlcXVlbmNlKHRoaXMuc25DaGFuZ2UpLnRoZW4oZnVuY3Rpb24gKCkgewogICAgICAgICAgX3RoaXM2LmxvYWREaWN0SXRlbSgpOwogICAgICAgICAgX3RoaXM2LiRtZXNzYWdlLnN1Y2Nlc3MoJ+aOkuW6j+WPt+abtOaWsOaIkOWKnyEnKTsKICAgICAgICB9KTsKICAgICAgfQogICAgfSwKICAgIGhhbmRsZVNlbGVjdGlvbkNoYW5nZTogZnVuY3Rpb24gaGFuZGxlU2VsZWN0aW9uQ2hhbmdlKHZhbCkgewogICAgICB0aGlzLm11bHRpcGxlU2VsZWN0aW9uID0gdmFsOwogICAgfSwKICAgIC8vIOWtkOihqOaUueWPmOaOkuW6j+WPtwogICAgY2hhbmdlU046IGZ1bmN0aW9uIGNoYW5nZVNOKHJvdykgewogICAgICBpZiAodGhpcy5zbkNoYW5nZSA9PSBudWxsKSB7CiAgICAgICAgdGhpcy5zbkNoYW5nZSA9IHt9OwogICAgICAgIHRoaXMuc25DaGFuZ2Vbcm93LmlkXSA9IHJvdy5zbjsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLnNuQ2hhbmdlW3Jvdy5pZF0gPSByb3cuc247CiAgICAgIH0KICAgICAgY29uc29sZS5sb2codGhpcy5zbkNoYW5nZSk7CiAgICB9LAogICAgb25DYW5jZWw6IGZ1bmN0aW9uIG9uQ2FuY2VsKCkgewogICAgICB0aGlzLmZvcm0gPSB7CiAgICAgICAga2luZElkOiAxLAogICAgICAgIG5hbWU6ICcnLAogICAgICAgIGNvZGU6ICcnLAogICAgICAgIG1lbW86ICcnLAogICAgICAgIGRldGFpbHM6IFtdLAogICAgICAgIHRyZWVJZDogJycKICAgICAgfTsKICAgICAgdGhpcy5leGNsZVRleHQgPSAnJzsKICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7CiAgICB9LAogICAgb25Db25maXJtOiBmdW5jdGlvbiBvbkNvbmZpcm0oKSB7CiAgICAgIHZhciBfdGhpczcgPSB0aGlzOwogICAgICB0aGlzLiRyZWZzLmZvcm0udmFsaWRhdGUoLyojX19QVVJFX18qL2Z1bmN0aW9uICgpIHsKICAgICAgICB2YXIgX3JlZiA9IF9hc3luY1RvR2VuZXJhdG9yKC8qI19fUFVSRV9fKi9fcmVnZW5lcmF0b3JSdW50aW1lKCkubWFyayhmdW5jdGlvbiBfY2FsbGVlKHZhbGlkKSB7CiAgICAgICAgICB2YXIgVGVtcEFyciwgX3lpZWxkJEFQSSRzYXZlRW51bURpLCBzdGF0ZSwgbWVzc2FnZTsKICAgICAgICAgIHJldHVybiBfcmVnZW5lcmF0b3JSdW50aW1lKCkud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkgewogICAgICAgICAgICB3aGlsZSAoMSkgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAgIGlmICghdmFsaWQpIHsKICAgICAgICAgICAgICAgICAgX2NvbnRleHQubmV4dCA9IDE5OwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGlmIChfdGhpczcuZm9ybS5kZXRhaWxzLmxlbmd0aCkgewogICAgICAgICAgICAgICAgICBUZW1wQXJyID0gX3RvQ29uc3VtYWJsZUFycmF5KF90aGlzNy5mb3JtLmRldGFpbHMpOwogICAgICAgICAgICAgICAgICBUZW1wQXJyLmZvckVhY2goZnVuY3Rpb24gKGl0ZW0pIHsKICAgICAgICAgICAgICAgICAgICBkZWxldGUgaXRlbS5rZXk7CiAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICBfdGhpczcuZm9ybS5kZXRhaWxzID0gVGVtcEFycjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIF90aGlzNy5mb3JtLmtpbmRJZCA9IDE7CiAgICAgICAgICAgICAgICBfdGhpczcubG9hZGluZyA9IHRydWU7CiAgICAgICAgICAgICAgICBfY29udGV4dC5wcmV2ID0gNDsKICAgICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSA3OwogICAgICAgICAgICAgICAgcmV0dXJuIEFQSS5zYXZlRW51bURpY3QoX3RoaXM3LmZvcm0pOwogICAgICAgICAgICAgIGNhc2UgNzoKICAgICAgICAgICAgICAgIF95aWVsZCRBUEkkc2F2ZUVudW1EaSA9IF9jb250ZXh0LnNlbnQ7CiAgICAgICAgICAgICAgICBzdGF0ZSA9IF95aWVsZCRBUEkkc2F2ZUVudW1EaS5zdGF0ZTsKICAgICAgICAgICAgICAgIG1lc3NhZ2UgPSBfeWllbGQkQVBJJHNhdmVFbnVtRGkubWVzc2FnZTsKICAgICAgICAgICAgICAgIGlmIChzdGF0ZSkgewogICAgICAgICAgICAgICAgICBfdGhpczcuJG1lc3NhZ2Uuc3VjY2Vzcygn5L+d5a2Y5oiQ5YqfJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBfY29udGV4dC5uZXh0ID0gMTY7CiAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICBjYXNlIDEzOgogICAgICAgICAgICAgICAgX2NvbnRleHQucHJldiA9IDEzOwogICAgICAgICAgICAgICAgX2NvbnRleHQudDAgPSBfY29udGV4dFsiY2F0Y2giXSg0KTsKICAgICAgICAgICAgICAgIF90aGlzNy4kbWVzc2FnZS53YXJuaW5nKF9jb250ZXh0LnQwIHx8ICfkv53lrZjlrZflhbjlgLzlpLHotKXvvIEnKTsKICAgICAgICAgICAgICBjYXNlIDE2OgogICAgICAgICAgICAgICAgX2NvbnRleHQucHJldiA9IDE2OwogICAgICAgICAgICAgICAgX3RoaXM3LmxvYWRpbmcgPSBmYWxzZTsKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5maW5pc2goMTYpOwogICAgICAgICAgICAgIGNhc2UgMTk6CiAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5zdG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0sIF9jYWxsZWUsIG51bGwsIFtbNCwgMTMsIDE2LCAxOV1dKTsKICAgICAgICB9KSk7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uIChfeCkgewogICAgICAgICAgcmV0dXJuIF9yZWYuYXBwbHkodGhpcywgYXJndW1lbnRzKTsKICAgICAgICB9OwogICAgICB9KCkpOwogICAgfQogIH0KfTs="},null]}