{"remainingRequest":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\dataShare-fvue\\src\\components\\appComponents\\AppSyncTree.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\components\\appComponents\\AppSyncTree.vue","mtime":1736016922496},{"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:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQpleHBvcnQgZGVmYXVsdCB7DQogIHByb3BzOiB7DQogICAgLy8g5by556qX5a695bqmDQogICAgZGlhbG9nV2lkdGg6IHsNCiAgICAgIHR5cGU6IFN0cmluZywNCiAgICAgIGRlZmF1bHQ6ICc0ODBweCcsDQogICAgfSwNCiAgICAvLyDooajljZXlrr3luqYNCiAgICBmb3JtV2lkdGg6IHsNCiAgICAgIHR5cGU6IFN0cmluZywNCiAgICAgIGRlZmF1bHQ6ICcnLA0KICAgIH0sDQogICAgLy8g6KGo5Y2V6aqM6K+B6KeE5YiZDQogICAgZm9ybVJ1bGVzOiB7DQogICAgICB0eXBlOiBPYmplY3QsDQogICAgICBkZWZhdWx0OiBudWxsLA0KICAgIH0sDQogICAgLy8g5qCH6aKYDQogICAgdGl0bGU6IHsNCiAgICAgIHR5cGU6IFN0cmluZywNCiAgICAgIGRlZmF1bHQ6ICcnLA0KICAgIH0sDQogICAgLy8g5piv5ZCm5oeS5Yqg6L29DQogICAgbGF6eTogew0KICAgICAgdHlwZTogQm9vbGVhbiwNCiAgICAgIGRlZmF1bHQ6IGZhbHNlLA0KICAgIH0sDQogICAgLy8g6buY6K6k5qC56IqC54K5DQogICAgcm9vdE5vZGU6IHsNCiAgICAgIHR5cGU6IE9iamVjdCwNCiAgICAgIGRlZmF1bHQ6IG51bGwsDQogICAgfSwNCiAgICAvLyDpu5jorqTlsZXlvIDoioLngrnpm4blkIgNCiAgICBkZWZhdWx0RXhwYW5kZWRLZXlzOiB7DQogICAgICB0eXBlOiBBcnJheSwNCiAgICAgIGRlZmF1bHQ6IG51bGwsDQogICAgfSwNCiAgICAvLyDor7fmsYLlh73mlbANCiAgICByZXF1ZXN0TWV0aG9kOiB7DQogICAgICB0eXBlOiBGdW5jdGlvbiwNCiAgICAgIGRlZmF1bHQ6IG51bGwsDQogICAgfSwNCiAgICAvLyBlbCB0cmVlIHBvcnBzDQogICAgcHJvcHM6IHsNCiAgICAgIHR5cGU6IE9iamVjdCwNCiAgICAgIGRlZmF1bHQ6IG51bGwsDQogICAgfSwNCiAgICBhY3Rpb25zOiB7DQogICAgICB0eXBlOiBbQXJyYXksIEZ1bmN0aW9uXSwNCiAgICAgIGRlZmF1bHQ6IG51bGwsDQogICAgfSwNCiAgICAvLyDmoJHlvaLmlbDmja7vvIjkuI3kvKByZXF1ZXN0TWV0aG9k5oOF5Ya15LiL5L2/55So77yJDQogICAgdHJlZU9wdGlvbnM6IHsNCiAgICAgIHR5cGU6IEFycmF5LA0KICAgICAgZGVmYXVsdDogKCkgPT4gW10sDQogICAgfSwNCiAgICBmaWVsZHM6IHsNCiAgICAgIHR5cGU6IEFycmF5LA0KICAgICAgZGVmYXVsdDogKCkgPT4gW10sDQogICAgfSwNCiAgICBkZWZGaWVsZHM6IHsNCiAgICAgIHR5cGU6IFtBcnJheSwgRnVuY3Rpb25dLA0KICAgICAgZGVmYXVsdDogKCkgPT4gW10sDQogICAgfSwNCiAgICBkZWZhdWx0RGF0YTogew0KICAgICAgdHlwZTogT2JqZWN0LA0KICAgICAgZGVmYXVsdDogKCkgPT4gKHt9KSwNCiAgICB9LA0KICAgIHJlbG9hZDogew0KICAgICAgdHlwZTogRnVuY3Rpb24sDQogICAgICBkZWZhdWx0OiBudWxsLA0KICAgIH0sDQogICAgaGlkZVRvcGJhcjogew0KICAgICAgdHlwZTogQm9vbGVhbiwNCiAgICAgIGRlZmF1bHQ6IGZhbHNlLA0KICAgIH0sDQogICAgLyoqDQogICAgICogQGRlc2NyaXB0aW9uOiDlvILmraXpu5jorqRmYWxzZQ0KICAgICAqLw0KICAgIGV4cGFuZEFsbDogew0KICAgICAgdHlwZTogQm9vbGVhbiwNCiAgICAgIGRlZmF1bHQ6IGZhbHNlLA0KICAgIH0sDQogICAgLyoqDQogICAgICogQGRlc2NyaXB0aW9uOiDmmK/lkKboh6rlrprkuYnlpITnkIboioLngrnlvLnlsYLkuovku7YNCiAgICAgKi8NCiAgICBjdXN0b21BY3Rpb25zOiB7DQogICAgICB0eXBlOiBCb29sZWFuLA0KICAgICAgZGVmYXVsdDogZmFsc2UsDQogICAgfSwNCiAgICAvKioNCiAgICAgKiBAZGVzY3JpcHRpb246IOWPjOWHu+WxleW8gOiKgueCuQ0KICAgICAqLw0KICAgIGRiQ2xpY2tFeHBhbmRBbGxvdzogew0KICAgICAgdHlwZTogQm9vbGVhbiwNCiAgICAgIGRlZmF1bHQ6IGZhbHNlLA0KICAgIH0sDQogICAgZWRpdDogew0KICAgICAgdHlwZTogQm9vbGVhbiwNCiAgICAgIGRlZmF1bHQ6IHRydWUsDQogICAgfSwNCiAgICAvKioNCiAgICAgKiBAZGVzY3JpcHRpb246IOmrmOS6ruesrOS4gOS4quiKgueCuQ0KICAgICAqLw0KICAgIGhpZ2hsaWdodEZpcnN0OiB7DQogICAgICB0eXBlOiBCb29sZWFuLA0KICAgICAgZGVmYXVsdDogZmFsc2UsDQogICAgfSwNCiAgfSwNCiAgZGF0YSgpIHsNCiAgICByZXR1cm4gew0KICAgICAgZGVmRXhwYW5kZWRLZXlzOiB0aGlzLmRlZmF1bHRFeHBhbmRlZEtleXMgfHwgW10sDQogICAgICAvLyB0cmVlDQogICAgICB0cmVlRGF0YTogW10sDQogICAgICAvLyBkaWFsb2cNCiAgICAgIGRpYWxvZ1Zpc2libGU6IGZhbHNlLA0KICAgICAgZGlhbG9nVGl0bGU6ICcnLA0KICAgICAgZGlhbG9nTG9hZGluZzogZmFsc2UsDQogICAgICBkaWFsb2dGb3JtOiB7fSwNCiAgICAgIGRlZmF1bHRQcm9wczogew0KICAgICAgICB2YWx1ZTogJ2lkJywNCiAgICAgICAgbGFiZWw6ICdsYWJlbCcsDQogICAgICAgIC4uLnRoaXMucHJvcHMsDQogICAgICB9LA0KICAgICAgbGF6eVRyZWU6IHRoaXMubGF6eSwNCiAgICAgIGN1ck5vZGU6IG51bGwsDQogICAgfTsNCiAgfSwNCiAgd2F0Y2g6IHsNCiAgICBsYXp5KHZhbCkgew0KICAgICAgdGhpcy5sYXp5VHJlZSA9IHZhbDsNCiAgICB9LA0KICAgIGRlZmF1bHRFeHBhbmRlZEtleXMoYXJyKSB7DQogICAgICBpZiAoYXJyICYmIEFycmF5LmlzQXJyYXkoYXJyKSkgew0KICAgICAgICB0aGlzLmRlZkV4cGFuZGVkS2V5cyA9IGFycjsNCiAgICAgIH0NCiAgICB9LA0KICAgIHRyZWVPcHRpb25zKHRyZWVfZGF0YSkgew0KICAgICAgaWYgKHRyZWVfZGF0YT8ubGVuZ3RoKSB7DQogICAgICAgIHRoaXMuaGFuZGxlVHJlZURhdGEodHJlZV9kYXRhKTsNCiAgICAgICAgLy8gdGhpcy4kcmVmcy5hcHBUcmVlLmVsVHJlZS5zZXRDdXJyZW50S2V5KHRyZWVfZGF0YVswXVt0aGlzLmRlZmF1bHRQcm9wcy52YWx1ZV0pOw0KICAgICAgICB0aGlzLm9uTm9kZUNsaWNrKHRyZWVfZGF0YVswXSk7DQogICAgICB9DQogICAgfSwNCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICBpZiAoIXRoaXMubGF6eVRyZWUgJiYgdGhpcy5yZXF1ZXN0TWV0aG9kKSB7DQogICAgICB0aGlzLmdldFRyZWVEYXRhKCk7DQogICAgfQ0KICB9LA0KICBtZXRob2RzOiB7DQogICAgZ2V0RWxUcmVlKCkgew0KICAgICAgcmV0dXJuIHRoaXMuJHJlZnMuYXBwVHJlZS4kcmVmcy5lbFRyZWU7DQogICAgfSwNCiAgICBhc3luYyBnZXRUcmVlRGF0YSgpIHsNCiAgICAgIGlmICh0eXBlb2YgdGhpcy5yZXF1ZXN0TWV0aG9kID09PSAnZnVuY3Rpb24nKSB7DQogICAgICAgIGNvbnN0IHsgZGF0YSB9ID0gYXdhaXQgdGhpcy5yZXF1ZXN0TWV0aG9kKCk7DQogICAgICAgIHRoaXMuaGFuZGxlVHJlZURhdGEoZGF0YSk7DQogICAgICB9IGVsc2Ugew0KICAgICAgICB0aGlzLnRyZWVEYXRhID0gdGhpcy5yb290Tm9kZSA/IFt0aGlzLnJvb3ROb2RlXSA6IFtdOw0KICAgICAgfQ0KICAgICAgaWYgKHRoaXMudHJlZURhdGE/Lmxlbmd0aCkgew0KICAgICAgICB0aGlzLm9uTm9kZUNsaWNrKHRoaXMudHJlZURhdGFbMF0pOw0KICAgICAgfQ0KICAgICAgaWYgKCF0aGlzLmxhenlUcmVlICYmIHRoaXMubGF6eSkgdGhpcy5sYXp5VHJlZSA9IHRydWU7DQogICAgICAvLyDpq5jkuq7nrKzkuIDkuKroioLngrkNCiAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHsNCiAgICAgICAgaWYgKHRoaXMuaGlnaGxpZ2h0Rmlyc3QpIHRoaXMuJHJlZnMuYXBwVHJlZS4kcmVmcy5lbFRyZWUuc2V0Q3VycmVudEtleSh0aGlzLnRyZWVEYXRhWzBdW3RoaXMucHJvcHMudmFsdWVdKTsNCiAgICAgIH0pOw0KICAgIH0sDQogICAgaGFuZGxlVHJlZURhdGEoZGF0YSkgew0KICAgICAgaWYgKEFycmF5LmlzQXJyYXkoZGF0YSkgJiYgZGF0YS5sZW5ndGggPiAwKSB7DQogICAgICAgIHRoaXMudHJlZURhdGEgPSBkYXRhOw0KICAgICAgfSBlbHNlIGlmIChkYXRhPy5pZCkgew0KICAgICAgICBpZiAodGhpcy5kZWZFeHBhbmRlZEtleXM/Lmxlbmd0aCA8PSAxKSB7DQogICAgICAgICAgdGhpcy5kZWZFeHBhbmRlZEtleXMgPSBbZGF0YS5pZF07DQogICAgICAgIH0NCiAgICAgICAgdGhpcy50cmVlRGF0YSA9IFtkYXRhXTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMudHJlZURhdGEgPSB0aGlzLnJvb3ROb2RlID8gW3RoaXMucm9vdE5vZGVdIDogW107DQogICAgICB9DQogICAgfSwNCiAgICAvLyDpgInmi6nmoJHoioLngrkNCiAgICBvbk5vZGVDbGljayhkYXRhKSB7DQogICAgICB0aGlzLiRlbWl0KCdzZWxlY3QnLCBkYXRhKTsNCiAgICB9LA0KICAgIGhhbmRsZVBhcmFtcygpIHsNCiAgICAgIGNvbnN0IHBhcmFtcyA9IHsNCiAgICAgICAgLi4udGhpcy5kaWFsb2dGb3JtLA0KICAgICAgfTsNCiAgICAgIGlmICh0aGlzLmN1ckFjdGlvbi50eXBlID09PSAnYWRkJykgew0KICAgICAgICBwYXJhbXMucGFyZW50SWQgPSB0aGlzLmN1ck5vZGU/LmlkOw0KICAgICAgfSBlbHNlIGlmICh0aGlzLmN1ckFjdGlvbi50eXBlID09PSAnZWRpdCcpIHsNCiAgICAgICAgcGFyYW1zLmlkID0gdGhpcy5jdXJOb2RlPy5pZDsNCiAgICAgICAgcGFyYW1zLnBhcmVudElkID0gdGhpcy5jdXJOb2RlLnBhcmVudElkOw0KICAgICAgfQ0KICAgICAgcmV0dXJuIHBhcmFtczsNCiAgICB9LA0KICAgIC8vIOa3u+WKoOagkeiKgueCuQ0KICAgIG9uRGlhbG9nQ29uZmlybSgpIHsNCiAgICAgIHRoaXMuJHJlZnMuZGlhbG9nRm9ybS52YWxpZGF0ZShhc3luYyAodmFsaWQpID0+IHsNCiAgICAgICAgaWYgKHZhbGlkKSB7DQogICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIHRoaXMuZGlhbG9nTG9hZGluZyA9IHRydWU7DQogICAgICAgICAgICBjb25zdCBwYXJhbXMgPSB0aGlzLmhhbmRsZVBhcmFtcygpOw0KICAgICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmN1ckFjdGlvbi5tZXRob2QgPT09ICdmdW5jdGlvbicpIHsNCiAgICAgICAgICAgICAgYXdhaXQgdGhpcy5jdXJBY3Rpb24ubWV0aG9kKHBhcmFtcywgdGhpcy5jdXJOb2RlKTsNCiAgICAgICAgICAgICAgdGhpcy5kaWFsb2dWaXNpYmxlID0gZmFsc2U7DQogICAgICAgICAgICAgIC8vIGlmICh0aGlzLmxhenkpIHsNCiAgICAgICAgICAgICAgLy8gICAvLyDliLfmlrDniLboioLngrkNCiAgICAgICAgICAgICAgLy8gICB0aGlzLmN1ckFjdGlvbi50eXBlID09PSAnZWRpdCcgJiYgdGhpcy5yZWZyZXNoTm9kZXModGhpcy5jdXJOb2RlPy5wYXJlbnRJZCk7DQogICAgICAgICAgICAgIC8vICAgdGhpcy5jdXJBY3Rpb24udHlwZSA9PT0gJ2FkZCcgJiYgdGhpcy5yZWZyZXNoTm9kZXModGhpcy5jdXJOb2RlPy5pZCk7DQogICAgICAgICAgICAgIC8vIH0gZWxzZSB7DQogICAgICAgICAgICAgIC8vICAgdGhpcy5yZXF1ZXN0TWV0aG9kICYmIHRoaXMuZ2V0VHJlZURhdGEoKTsNCiAgICAgICAgICAgICAgLy8gfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0gZmluYWxseSB7DQogICAgICAgICAgICB0aGlzLmRpYWxvZ0xvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgIH0pOw0KICAgIH0sDQogICAgLy8g6IqC54K55bGV5byA6K6w5b2V5LiL5p2lDQogICAgb25Ob2RlRXhwYW5kKGRhdGEpIHsNCiAgICAgIHRoaXMuZGVmRXhwYW5kZWRLZXlzLnB1c2goZGF0YS5pZCk7DQogICAgfSwNCiAgICBvbk5vZGVDb2xsYXBzZShkYXRhKSB7DQogICAgICBjb25zdCBpbmRleCA9IHRoaXMuZGVmRXhwYW5kZWRLZXlzLmluZGV4T2YoZGF0YS5pZCk7DQogICAgICBpZiAoaW5kZXggPiAtMSkgew0KICAgICAgICB0aGlzLmRlZkV4cGFuZGVkS2V5cy5zcGxpY2UoaW5kZXgsIDEpOw0KICAgICAgfQ0KICAgIH0sDQogICAgLyoqDQogICAgICogQGRlc2NyaXB0aW9uOg0KICAgICAqIEBwYXJhbSB7Kn0gdmFsDQogICAgICogQHBhcmFtIHsqfSBmb3JtYXQgbm9TcGVjaWFsDQogICAgICogQHJldHVybiB7Kn0NCiAgICAgKi8NCiAgICBmb3JtYXRJbnB1dCh2YWwsIHsgZm9ybWF0LCBwcm9wIH0pIHsNCiAgICAgIGlmIChmb3JtYXQpIHsNCiAgICAgICAgdGhpcy5kaWFsb2dGb3JtW3Byb3BdID0gdGhpcy5mb3JtYXRCeVJ1bGUodmFsLCBmb3JtYXQpOw0KICAgICAgfQ0KICAgIH0sDQogICAgZm9ybWF0QnlSdWxlKHZhbCwgdHlwZSkgew0KICAgICAgY29uc3QgcnVsZXMgPSB7DQogICAgICAgIG5vU3BlY2lhbDogL1teXHU0RTAwLVx1OUZBNUEtWmEtejAtOV0vZywNCiAgICAgIH07DQogICAgICBpZiAocnVsZXNbdHlwZV0gJiYgdmFsKSB7DQogICAgICAgIHJldHVybiB2YWwucmVwbGFjZShydWxlc1t0eXBlXSwgJycpOw0KICAgICAgfQ0KICAgICAgcmV0dXJuIHZhbDsNCiAgICB9LA0KICAgIGdldEFjdGlvbnMoeyBkYXRhIH0sIGFjdGlvbnMpIHsNCiAgICAgIGlmICh0eXBlb2YgdGhpcy5hY3Rpb25zID09PSAnZnVuY3Rpb24nKSB7DQogICAgICAgIHJldHVybiB0aGlzLmFjdGlvbnMoZGF0YSwgYWN0aW9ucyk7DQogICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5hY3Rpb25zKSkgew0KICAgICAgICByZXR1cm4gdGhpcy5hY3Rpb25zOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgcmV0dXJuIGFjdGlvbnM7DQogICAgICB9DQogICAgfSwNCiAgICBhZGROb2RlKCkgew0KICAgICAgLy8gb3JkZXJOdW06IERFRl9PUkRFUl9OVU0sDQogICAgICB0aGlzLmRpYWxvZ0Zvcm0gPSB7IC4uLnRoaXMuZGVmYXVsdERhdGEgfTsNCiAgICAgIHRoaXMuZGlhbG9nVGl0bGUgPSAn5paw5aKe6IqC54K5JzsNCiAgICAgIHRoaXMuZGlhbG9nVmlzaWJsZSA9IHRydWU7DQogICAgfSwNCiAgICBlZGl0Tm9kZShkYXRhKSB7DQogICAgICB0aGlzLmRpYWxvZ0Zvcm0gPSB7IC4uLmRhdGEgfTsNCiAgICAgIHRoaXMuZGlhbG9nVGl0bGUgPSAn57yW6L6R6IqC54K5JzsNCiAgICAgIHRoaXMuZGlhbG9nVmlzaWJsZSA9IHRydWU7DQogICAgfSwNCiAgICBkZWxldGVOb2RlKGRhdGEpIHsNCiAgICAgIHRoaXMuJGNvbmZpcm0oYOehruiupOWIoOmZpCR7ZGF0YVt0aGlzLmRlZmF1bHRQcm9wcy5sYWJlbF0gKyAodGhpcy5jdXJBY3Rpb24udGlwcyA/IHRoaXMuY3VyQWN0aW9uLnRpcHMgOiAnJyl95ZCX77yfYCwgJ+aPkOekuicsIHsNCiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICfnoa7lrponLA0KICAgICAgICBjYW5jZWxCdXR0b25UZXh0OiAn5Y+W5raIJywNCiAgICAgICAgdHlwZTogJ3dhcm5pbmcnLA0KICAgICAgfSkNCiAgICAgICAgLnRoZW4oYXN5bmMgKCkgPT4gew0KICAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5jdXJBY3Rpb24ubWV0aG9kID09PSAnZnVuY3Rpb24nKSB7DQogICAgICAgICAgICBhd2FpdCB0aGlzLmN1ckFjdGlvbi5tZXRob2QoW2RhdGEuaWRdLCBkYXRhKTsNCiAgICAgICAgICAgIGlmICh0aGlzLmxhenkpIHsNCiAgICAgICAgICAgICAgdGhpcy5yZWZyZXNoTm9kZXModGhpcy5jdXJOb2RlLnBhcmVudElkKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgIGlmICh0aGlzLnJlcXVlc3RNZXRob2QpIHsNCiAgICAgICAgICAgICAgICB0aGlzLmdldFRyZWVEYXRhKCk7DQogICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgdGhpcy4kcmVmcy5hcHBUcmVlLmVsVHJlZS5yZW1vdmUoZGF0YSk7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICB9DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgoKSA9PiB7fSk7DQogICAgfSwNCiAgICBvbk5vZGVBY3Rpb25DbGljayhlKSB7DQogICAgICBjb25zdCB7IHR5cGUsIGRhdGEgfSA9IGU7DQogICAgICB0aGlzLiRlbWl0KCdiZWZvcmVBY3Rpb25zQ2xpY2snLCBlKTsNCiAgICAgIGlmICh0aGlzLmN1c3RvbUFjdGlvbnMpIHsNCiAgICAgICAgcmV0dXJuOw0KICAgICAgfQ0KICAgICAgdGhpcy5jdXJOb2RlID0gZGF0YTsNCiAgICAgIHRoaXMuY3VyQWN0aW9uID0gZTsNCiAgICAgIGNvbnN0IG1hcCA9IHsNCiAgICAgICAgYWRkOiB0aGlzLmFkZE5vZGUsDQogICAgICAgIGVkaXQ6IHRoaXMuZWRpdE5vZGUsDQogICAgICAgIGRlbGV0ZTogdGhpcy5kZWxldGVOb2RlLA0KICAgICAgfTsNCiAgICAgIG1hcFt0eXBlXSAmJiBtYXBbdHlwZV0oZGF0YSk7DQogICAgfSwNCiAgICByZWZyZXNoTm9kZXMoaWQgPSB0aGlzLmN1ck5vZGU/LmlkKSB7DQogICAgICBjb25zdCBub2RlID0gdGhpcy4kcmVmcy5hcHBUcmVlLmVsVHJlZS5nZXROb2RlKGlkKTsNCiAgICAgIG5vZGUubG9hZGVkID0gZmFsc2U7DQogICAgICBub2RlLmV4cGFuZCgpOw0KICAgIH0sDQogICAgYXN5bmMgbG9hZE5vZGUobm9kZSwgcmVzb2x2ZSkgew0KICAgICAgY29uc3QgY2IgPSAoZGF0YSkgPT4gew0KICAgICAgICByZXR1cm4gcmVzb2x2ZShkYXRhKTsNCiAgICAgIH07DQogICAgICB0aGlzLnJlcXVlc3RNZXRob2Qobm9kZSwgY2IpOw0KICAgIH0sDQogICAgLy8gbGF6eSBzZWFyY2gNCiAgICBzZWFyY2hSZWxvYWQodmFsKSB7DQogICAgICB0aGlzLmxhenlUcmVlID0gdmFsPy5sZW5ndGggPT09IDA7DQogICAgICB0eXBlb2YgdGhpcy5yZWxvYWQgPT09ICdmdW5jdGlvbicgJiYgdGhpcy5yZWxvYWQodmFsKTsNCiAgICB9LA0KICAgIHJlbG9hZFRyZWUoKSB7DQogICAgICB0aGlzLiRyZWZzLmFwcFRyZWUucmVsb2FkVHJlZSgpOw0KICAgICAgLy8g5byC5q2l5pCc57Si5p+l6K+i5qCR6LCD55So5o6l5Y+j5p+l6K+i5YWo6YOo6IqC54K5DQogICAgICBpZiAodGhpcy5sYXp5ICYmICF0aGlzLmxhenlUcmVlICYmIHRoaXMucmVxdWVzdE1ldGhvZCkgew0KICAgICAgICB0aGlzLmdldFRyZWVEYXRhKCk7DQogICAgICB9DQogICAgfSwNCiAgICAvLyDlj4zlh7vlsZXlvIDoioLngrkNCiAgICBvbk5vZGVEQkNsaWNrKGUsIHNjb3BlKSB7DQogICAgICBpZiAodGhpcy5kYkNsaWNrRXhwYW5kQWxsb3cpIHsNCiAgICAgICAgdGhpcy4kcmVmcy5hcHBUcmVlLmVsVHJlZS5zdG9yZS5ub2Rlc01hcFtzY29wZS5kYXRhLmlkXS5leHBhbmRlZCA9ICFzY29wZS5ub2RlLmV4cGFuZGVkOw0KICAgICAgfQ0KICAgIH0sDQogIH0sDQp9Ow0K"},null]}