{"remainingRequest":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\dataResource\\dataManage\\dataDWCatalog\\fieldsManage.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\views\\dataResource\\dataManage\\dataDWCatalog\\fieldsManage.vue","mtime":1746730556257},{"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:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgZGlhbG9nTWl4aW4gZnJvbSAnQC9taXhpbnMvZGlhbG9nLmpzJzsNCmltcG9ydCB1dGlscyBmcm9tICdAL2hvdGVudC11aS11dGlsLmpzJzsNCmltcG9ydCBlbnVtRGljdERpYWxvZyBmcm9tICcuL2VudW1EaWN0RGlhbG9nLnZ1ZSc7DQppbXBvcnQgbXVsdGlEaWN0RGlhbG9nIGZyb20gJy4vbXVsdGlEaWN0RGlhbG9nLnZ1ZSc7DQppbXBvcnQgeyBnZXREaWN0aW9uYXJ5QnlDb2RlIH0gZnJvbSAnQC91dGlscy9kaWN0aW9uYXJ5LmpzJzsNCmltcG9ydCBBUEkgZnJvbSAnQC9hcGkvYnVzaW5lc3MvZGF0YURXQ2F0YWxvZyc7DQppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOw0KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICdGaWVsZHNNYW5hZ2UnLA0KICBjb21wb25lbnRzOiB7DQogICAgZW51bURpY3REaWFsb2csDQogICAgbXVsdGlEaWN0RGlhbG9nLA0KICB9LA0KICBtaXhpbnM6IFtkaWFsb2dNaXhpbl0sDQogIHByb3BzOiBbXSwNCiAgZGF0YSgpIHsNCiAgICB2YXIgY2hlY2tleSA9IChydWxlLCB2YWx1ZSwgY2FsbGJhY2spID0+IHsNCiAgICAgIGlmICghdmFsdWUpIHsNCiAgICAgICAgcmV0dXJuIGNhbGxiYWNrKG5ldyBFcnJvcign5a2X5q6157yW56CB5LiN6IO95Li656m6JykpOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgaWYgKHRoaXMuZm9ybS5hdHRyRGF0YS5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uY29kZSA9PT0gdmFsdWUpLmxlbmd0aCA+IDEpIHsNCiAgICAgICAgICBjYWxsYmFjayhuZXcgRXJyb3IoJ+Wtl+autee8lueggeS4jeiDvemHjeWkjSEnKSk7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgY2FsbGJhY2soKTsNCiAgICAgICAgfQ0KICAgICAgfQ0KICAgIH07DQogICAgcmV0dXJuIHsNCiAgICAgIGZpZWxkc1J1bGVzOiB7DQogICAgICAgIG5hbWU6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICflrZfmrrXlkI3np7DkuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2JsdXInLA0KICAgICAgICAgIH0sDQogICAgICAgIF0sDQogICAgICAgIGNvZGU6IFsNCiAgICAgICAgICB7DQogICAgICAgICAgICByZXF1aXJlZDogdHJ1ZSwNCiAgICAgICAgICAgIG1lc3NhZ2U6ICflrZfmrrXnvJbnoIHkuI3og73kuLrnqbonLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2JsdXInLA0KICAgICAgICAgIH0sDQogICAgICAgICAgew0KICAgICAgICAgICAgcGF0dGVybjogL15bYS16QS1aXVthLXpBLVowLTlfXSokLywNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfku6XlrZfmr43lvIDlpLTnmoTlrZfmr43jgIHmlbDlrZfjgIHkuIvliJLnur/nu4TlkIgnLA0KICAgICAgICAgICAgdHJpZ2dlcjogWydjaGFuZ2UnLCAnYmx1ciddLA0KICAgICAgICAgIH0sDQogICAgICAgICAgeyB2YWxpZGF0b3I6IGNoZWNrZXksIHRyaWdnZXI6ICdibHVyJyB9LA0KICAgICAgICBdLA0KICAgICAgfSwNCiAgICAgIGZvcm06IHsgYXR0ckRhdGE6IFtdIH0sDQogICAgICBpbXBvcnREYXRhOiB7IHRhYmxlSWQ6ICcnIH0sDQogICAgICBkaWFsb2dWaXNpYmxlRW51bTogZmFsc2UsDQogICAgICBkaWFsb2dWaXNpYmxlTXVsdGk6IGZhbHNlLA0KICAgICAgY3VycmVudFJvdzogbnVsbCwNCiAgICAgIGluZGV4OiBudWxsLA0KICAgICAgdGFiZWxEYXRhOiBudWxsLA0KICAgICAgdGFibGVMb2FkaW5nOiBmYWxzZSwNCiAgICAgIHVwbG9hZExvYWRpbmc6IGZhbHNlLA0KICAgICAgdXBsb2FkVmlzaWJsZTogZmFsc2UsDQogICAgICBwdWJsaXNoZWQ6IGZhbHNlLA0KICAgIH07DQogIH0sDQogIG1vdW50ZWQoKSB7DQogICAgZG9jdW1lbnQub25rZXlkb3duID0gKCkgPT4gew0KICAgICAgaWYgKHRoaXMuZm9ybS5hdHRyRGF0YSkgew0KICAgICAgICBjb25zdCBrZXkgPSB3aW5kb3cuZXZlbnQua2V5Q29kZTsNCiAgICAgICAgaWYgKGtleSA9PSAxMTMpIHsNCiAgICAgICAgICAvLyA9PSA4MyAmJiBldmVudC5jdHJsS2V5DQogICAgICAgICAgdGhpcy5hZGRBdHRyUm93cygpOw0KICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gew0KICAgICAgICAgICAgdGhpcy4kcmVmcy5hdHRyVGFibGVTY3JvbGxiYXJIZWlnaHQuYm9keVdyYXBwZXIuc2Nyb2xsVG9wID0gdGhpcy4kcmVmcy5hdHRyVGFibGVTY3JvbGxiYXJIZWlnaHQuYm9keVdyYXBwZXIuc2Nyb2xsSGVpZ2h0Ow0KICAgICAgICAgIH0sIDUwMCk7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9Ow0KICB9LA0KICBjb21wdXRlZDogew0KICAgIGFjdGlvblVybDogKF8pID0+IGAke3dpbmRvdy5jb250ZXh0LnBvcnRhbH0vYml6L2RhdGFSZXNvdXJjZS9kd0ZpZWxkL3YxL2ltcG9ydEZpbGVgLA0KICAgIC4uLm1hcFN0YXRlKHsNCiAgICAgIGhlYWRlcnM6IChzdGF0ZSkgPT4gKHsNCiAgICAgICAgQXV0aG9yaXphdGlvbjogYEJlYXJlciAke3N0YXRlLmxvZ2luLmN1cnJlbnRVc2VyLnRva2VufWAsDQogICAgICB9KSwNCiAgICB9KSwNCiAgfSwNCg0KICBiZWZvcmVEZXN0cm95KCkge30sDQogIG1ldGhvZHM6IHsNCiAgICBpbml0RGF0YShkYXRhKSB7DQogICAgICB0aGlzLnRhYmVsRGF0YSA9IGRhdGE7DQogICAgICB0aGlzLmltcG9ydERhdGEudGFibGVJZCA9IGRhdGEuaWQ7DQogICAgICB0aGlzLnB1Ymxpc2hlZCA9IHRoaXMudGFiZWxEYXRhLmRlcGxveWVkID09PSAnMSc7DQogICAgICB0aGlzLmdldEZpZWxkc0J5VGFibGUoKTsNCiAgICB9LA0KICAgIGFzeW5jIGdldEZpZWxkc0J5VGFibGUoKSB7DQogICAgICB0aGlzLnRhYmxlTG9hZGluZyA9IHRydWU7DQogICAgICB0cnkgew0KICAgICAgICBjb25zdCB7IGZpZWxkTGlzdCA9IFtdIH0gPSBhd2FpdCBBUEkucXVlcnlGaWVsZHNCeVRhYmxlSWQodGhpcy50YWJlbERhdGEuaWQpOw0KICAgICAgICBpZiAoZmllbGRMaXN0Lmxlbmd0aCkgew0KICAgICAgICAgIGZpZWxkTGlzdC5mb3JFYWNoKChpdGVtKSA9PiB7DQogICAgICAgICAgICBpZiAoaXRlbS5maWVsZFZhbHVlVHlwZSkgew0KICAgICAgICAgICAgICBpdGVtLmZpZWxkVmFsdWVUeXBlID0gaXRlbS5maWVsZFZhbHVlVHlwZS50b1N0cmluZygpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pOw0KICAgICAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YSA9IGZpZWxkTGlzdC5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uZmllbGRUeXBlID09PSAnMicpOw0KICAgICAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YS5zb3J0KChhLCBiKSA9PiBhLnNuIC0gYi5zbik7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgdGhpcy5mb3JtLmF0dHJEYXRhID0gW107DQogICAgICAgIH0NCiAgICAgIH0gY2F0Y2ggKGVycikgew0KICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoZXJyIHx8ICfotYTmupDpobnlrZfmrrXmn6Xor6LlpLHotKXvvIEnKTsNCiAgICAgIH0gZmluYWxseSB7DQogICAgICAgIHRoaXMudGFibGVMb2FkaW5nID0gZmFsc2U7DQogICAgICB9DQogICAgfSwNCiAgICBnZXREaWN0aW9uYXJ5QnlDb2RlLA0KICAgIGNoYW5nZURpY3QoZGF0YSwga2V5KSB7DQogICAgICB0aGlzLmN1cnJlbnRSb3cuZGltZW5zaW9uSWQgPSBkYXRhW2tleV07DQogICAgICB0aGlzLmZvcm0uYXR0ckRhdGEuc3BsaWNlKHRoaXMuaW5kZXgsIDEsIHRoaXMuY3VycmVudFJvdyk7DQogICAgfSwNCiAgICAvLyDmlrDlop7lrZfmrrUNCiAgICBhZGRBdHRyUm93cygpIHsNCiAgICAgIGNvbnN0IGxhc3QgPSB0aGlzLmZvcm0uYXR0ckRhdGFbdGhpcy5mb3JtLmF0dHJEYXRhLmxlbmd0aCAtIDFdOw0KICAgICAgY29uc3Qgc24gPSBsYXN0ICYmIGxhc3Quc24gPyBsYXN0LnNuICsgMSA6IDE7DQogICAgICBjb25zdCByb3cgPSB7DQogICAgICAgIHRhYmxlSWQ6IHRoaXMudGFiZWxEYXRhLmlkLA0KICAgICAgICBjb2RlOiAnJywNCiAgICAgICAgbmFtZTogJycsDQogICAgICAgIGRlc2M6ICcnLA0KICAgICAgICBmaWVsZFR5cGU6ICcyJywNCiAgICAgICAgaXNJbml0RmlsZWQ6ICdOJywNCiAgICAgICAgaXNQazogJzAnLA0KICAgICAgICBpc1JlcXVpcmVkOiAnMCcsDQogICAgICAgIHVpQ29tQ29kZTogJ2lucHV0JywNCiAgICAgICAgZGF0YVR5cGU6ICd2YXJjaGFyJywNCiAgICAgICAgZGVmYXVsdFZhbHVlOiAnJywNCiAgICAgICAgZm9ybWF0OiAnJywNCiAgICAgICAgZmllbGRWYWx1ZVR5cGU6ICcxJywNCiAgICAgICAgZGltZW5zaW9uSWQ6ICcnLA0KICAgICAgICB1bml0OiAnJywNCiAgICAgICAgYXR0ckxlbmd0aDogMjAwLA0KICAgICAgICBkZWNpbWFsTGVuOiAwLA0KICAgICAgICBpc0VuY3J5cHQ6ICcwJywNCiAgICAgICAgaXNFZGl0OiAnMCcsDQogICAgICAgIGlzRGVzZW5zaXRpemU6ICcwJywNCiAgICAgICAgaW5kZXg6IHRoaXMuZm9ybS5hdHRyRGF0YS5sZW5ndGggKyAxLA0KICAgICAgfTsNCiAgICAgIHNuID8gKHJvdy5zbiA9IHNuKSA6IG51bGw7DQogICAgICB0aGlzLmZvcm0uYXR0ckRhdGEuc3BsaWNlKHRoaXMuZm9ybS5hdHRyRGF0YS5sZW5ndGgsIDAsIHJvdyk7DQogICAgfSwNCg0KICAgIGNoYW5nZUZpZWxkVmFsdWVUeXBlKHZhbCwgcm93LCBpbmRleCkgew0KICAgICAgcm93LmRpbWVuc2lvbklkID0gJyc7DQogICAgICByb3cuZmllbGRWYWx1ZVR5cGUgPSB2YWw7DQogICAgICB0aGlzLmZvcm0uYXR0ckRhdGEuc3BsaWNlKGluZGV4LCAxLCByb3cpOw0KICAgIH0sDQoNCiAgICAvLyBVSeexu+Wei+WIh+aNouiuvue9rum7mOiupOWAvA0KICAgIGNoYW5nZVVJVHlwZSh2YWwsIHJvdywgaW5kZXgpIHsNCiAgICAgIGlmICghdGhpcy5wdWJsaXNoZWQgJiYgIXJvdy5pZCkgew0KICAgICAgICByb3cuZGF0YVR5cGUgPSAndmFyY2hhcic7DQogICAgICB9DQogICAgICByb3cuZm9ybWF0ID0gJyc7DQogICAgICByb3cuZmllbGRWYWx1ZVR5cGUgPSAnMSc7DQogICAgICBpZiAodmFsID09PSAnZGF0ZScpIHsNCiAgICAgICAgaWYgKCF0aGlzLnB1Ymxpc2hlZCAmJiAhcm93LmlkKSB7DQogICAgICAgICAgcm93LmRhdGFUeXBlID0gJ2RhdGUnOyAvLyDlj5HluIPlkI5VSeWSjOaVsOaNruexu+Wei+S4jeWFs+iBlA0KICAgICAgICB9DQogICAgICAgIHJvdy5mb3JtYXQgPSAneXl5eS1NTS1kZCc7DQogICAgICB9IGVsc2UgaWYgKHZhbCA9PT0gJ2RhdGV0aW1lJykgew0KICAgICAgICBpZiAoIXRoaXMucHVibGlzaGVkICYmICFyb3cuaWQpIHsNCiAgICAgICAgICByb3cuZGF0YVR5cGUgPSAnZGF0ZXRpbWUnOyAvLyDlj5HluIPlkI5VSeWSjOaVsOaNruexu+Wei+S4jeWFs+iBlA0KICAgICAgICB9DQogICAgICAgIHJvdy5mb3JtYXQgPSAneXl5eS1NTS1kZCBISDptbTpzcyc7DQogICAgICB9IGVsc2UgaWYgKHZhbCA9PT0gJ3NlbGVjdCcgfHwgdmFsID09PSAnY2hlY2tib3gnIHx8IHZhbCA9PT0gJ3JhZGlvJykgew0KICAgICAgICByb3cuZmllbGRWYWx1ZVR5cGUgPSAnMic7DQogICAgICB9DQogICAgICB0aGlzLmZvcm0uYXR0ckRhdGEuc3BsaWNlKGluZGV4LCAxLCByb3cpOw0KICAgIH0sDQoNCiAgICAvLyDmlbDmja7nsbvlnovliIfmjaLorr7nva7pu5jorqTlgLwNCiAgICBjaGFuZ2VEYXRhVHlwZSh2YWwsIHJvdywgaW5kZXgpIHsNCiAgICAgIHJvdy5hdHRyTGVuZ3RoID0gMDsNCiAgICAgIHJvdy5kZWNpbWFsTGVuID0gMDsNCiAgICAgIHJvdy5mb3JtYXQgPSAnJzsNCiAgICAgIHJvdy5maWVsZFZhbHVlVHlwZSA9ICcxJzsNCiAgICAgIHJvdy5kaW1lbnNpb25JZCA9ICcnOw0KICAgICAgaWYgKHZhbCA9PT0gJ2RhdGUnKSB7DQogICAgICAgIHJvdy5mb3JtYXQgPSAneXl5eS1NTS1kZCc7DQogICAgICB9IGVsc2UgaWYgKHZhbCA9PT0gJ2RhdGV0aW1lJykgew0KICAgICAgICByb3cuZm9ybWF0ID0gJ3l5eXktTU0tZGQgSEg6bW06c3MnOw0KICAgICAgfSBlbHNlIGlmICh2YWwgPT09ICd2YXJjaGFyJykgew0KICAgICAgICByb3cuYXR0ckxlbmd0aCA9IDIwMDsNCiAgICAgIH0gZWxzZSBpZiAodmFsID09PSAnbnVtYmVyJykgew0KICAgICAgICByb3cuYXR0ckxlbmd0aCA9IDEwOw0KICAgICAgICByb3cuZGVjaW1hbExlbiA9IDI7DQogICAgICB9DQogICAgICB0aGlzLmZvcm0uYXR0ckRhdGEuc3BsaWNlKGluZGV4LCAxLCByb3cpOw0KICAgIH0sDQoNCiAgICAvLyDpgInmi6nlrZflhbgNCiAgICBoYW5kbGVTZWFyY2hEaWN0KHJvdywgJGluZGV4KSB7DQogICAgICAvLyBpZiAodGhpcy5wdWJsaXNoZWQgJiYgcm93LmlkKSB7DQogICAgICAvLyAgIHJldHVybjsNCiAgICAgIC8vIH0NCiAgICAgIHRoaXMuY3VycmVudFJvdyA9IHJvdzsNCiAgICAgIHRoaXMuaW5kZXggPSAkaW5kZXg7DQogICAgICBpZiAocm93LmZpZWxkVmFsdWVUeXBlID09PSAnMicpIHsNCiAgICAgICAgdGhpcy5kaWFsb2dWaXNpYmxlRW51bSA9IHRydWU7DQogICAgICB9IGVsc2UgaWYgKHJvdy5maWVsZFZhbHVlVHlwZSA9PT0gJzMnKSB7DQogICAgICAgIHRoaXMuZGlhbG9nVmlzaWJsZU11bHRpID0gdHJ1ZTsNCiAgICAgIH0NCiAgICB9LA0KDQogICAgaGFuZGxlRGVsZXRlKHBhcmFtLCBkZXBsb3llZCkgew0KICAgICAgaWYgKGRlcGxveWVkICYmIHBhcmFtLnJvdy5pZCkgcmV0dXJuOw0KICAgICAgdGhpcy5oYW5kbGVDb21tYW5kKHBhcmFtKTsNCiAgICB9LA0KDQogICAgaGFuZGxlQ29tbWFuZChwYXJhbSkgew0KICAgICAgc3dpdGNoIChwYXJhbS5jb21tYW5kKSB7DQogICAgICAgIGNhc2UgJ2RlbCc6DQogICAgICAgICAgdGhpcy5kZWxldGVBdHRyUm93cyhwYXJhbS5yb3csIHBhcmFtLmluZGV4KTsNCiAgICAgICAgICBicmVhazsNCiAgICAgICAgY2FzZSAndXAnOg0KICAgICAgICAgIHRoaXMuYXR0clVwKHBhcmFtLnJvdywgcGFyYW0uaW5kZXgpOw0KICAgICAgICAgIGJyZWFrOw0KICAgICAgICBjYXNlICdkb3duJzoNCiAgICAgICAgICB0aGlzLmF0dHJEb3duKHBhcmFtLnJvdywgcGFyYW0uaW5kZXgpOw0KICAgICAgICAgIGJyZWFrOw0KICAgICAgICBkZWZhdWx0Og0KICAgICAgICAgIGJyZWFrOw0KICAgICAgfQ0KICAgIH0sDQoNCiAgICBhc3luYyBpc0RlbChyb3csIGluZGV4KSB7DQogICAgICB0cnkgew0KICAgICAgICBjb25zdCB7IHN0YXRlLCBtZXNzYWdlIH0gPSBhd2FpdCBBUEkuZGVsZXRlRmllbGQocm93LmlkKTsNCiAgICAgICAgaWYgKHN0YXRlKSB7DQogICAgICAgICAgdGhpcy5mb3JtLmF0dHJEYXRhLnNwbGljZShpbmRleCwgMSk7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCflrZfmrrXliKDpmaTmiJDlip8nKTsNCiAgICAgICAgfQ0KICAgICAgfSBjYXRjaCAoZXJyKSB7DQogICAgICAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZyhlcnIgfHwgJ+aTjeS9nOWksei0pScpOw0KICAgICAgfSBmaW5hbGx5IHsNCiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7DQogICAgICB9DQogICAgfSwNCg0KICAgIC8vIOWIoOmZpOWtl+autQ0KICAgIGRlbGV0ZUF0dHJSb3dzKHJvdywgaW5kZXgpIHsNCiAgICAgIGlmICh0aGlzLnB1Ymxpc2hlZCAmJiByb3cuaWQpIHsNCiAgICAgICAgcmV0dXJuOw0KICAgICAgfQ0KDQogICAgICBpZiAocm93LmlzSW5pdEZpbGVkID09PSAnWScpIHsNCiAgICAgICAgdGhpcy4kbWVzc2FnZS53YXJuaW5nKCfor6XlrZfmrrXkuLrliJ3lp4vlrZfmrrXvvIzkuI3lj6/liKDpmaTvvIEnKTsNCiAgICAgICAgcmV0dXJuOw0KICAgICAgfQ0KDQogICAgICB0aGlzLiRjb25maXJtKGDmraTmk43kvZzlsIbliKDpmaTlrZfmrrXvvIgke3Jvdy5uYW1lfe+8iSwg5piv5ZCm57un57utP2AsICfmj5DnpLonLCB7DQogICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu5a6aJywNCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsDQogICAgICAgIHR5cGU6ICd3YXJuaW5nJywNCiAgICAgIH0pDQogICAgICAgIC50aGVuKGFzeW5jICgpID0+IHsNCiAgICAgICAgICBpZiAocm93LmlkKSB7DQogICAgICAgICAgICB0aGlzLmlzRGVsKHJvdywgaW5kZXgpOw0KICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICB0aGlzLmZvcm0uYXR0ckRhdGEuc3BsaWNlKGluZGV4LCAxKTsNCiAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2Vzcygn5a2X5q615Yig6Zmk5oiQ5YqfJyk7DQogICAgICAgICAgfQ0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKCkgPT4ge30pOw0KICAgIH0sDQoNCiAgICBhdHRyVXAocm93LCBpbmRleCkgew0KICAgICAgLy8gaWYgKHRoaXMucHVibGlzaGVkICYmIHJvdy5pZCkgew0KICAgICAgLy8gICByZXR1cm47DQogICAgICAvLyB9DQoNCiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleF0uaW5kZXggPSB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXhdLmluZGV4IC0gMTsNCiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleF0uc24gPSB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXggLSAxXS5zbjsNCiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleCAtIDFdLmluZGV4ID0gdGhpcy5mb3JtLmF0dHJEYXRhW2luZGV4IC0gMV0uaW5kZXggKyAxOw0KICAgICAgdGhpcy5mb3JtLmF0dHJEYXRhW2luZGV4IC0gMV0uc24gPSB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXggLSAxXS5zbiArIDE7DQogICAgICB0aGlzLmZvcm0uYXR0ckRhdGEgPSB1dGlscy5hcnJheU1vdmUodGhpcy5mb3JtLmF0dHJEYXRhLCByb3csICd1cCcpOw0KICAgIH0sDQogICAgYXR0ckRvd24ocm93LCBpbmRleCkgew0KICAgICAgLy8gaWYgKHRoaXMucHVibGlzaGVkICYmIHJvdy5pZCkgew0KICAgICAgLy8gICByZXR1cm47DQogICAgICAvLyB9DQoNCiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleF0uaW5kZXggPSB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXhdLmluZGV4ICsgMTsNCiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleF0uc24gPSB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXhdLnNuICsgMTsNCiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YVtpbmRleCArIDFdLmluZGV4ID0gdGhpcy5mb3JtLmF0dHJEYXRhW2luZGV4ICsgMV0uaW5kZXggLSAxOw0KICAgICAgdGhpcy5mb3JtLmF0dHJEYXRhW2luZGV4ICsgMV0uc24gPSB0aGlzLmZvcm0uYXR0ckRhdGFbaW5kZXhdLnNuIC0gMTsNCiAgICAgIHRoaXMuZm9ybS5hdHRyRGF0YSA9IHV0aWxzLmFycmF5TW92ZSh0aGlzLmZvcm0uYXR0ckRhdGEsIHJvdywgJ2Rvd24nKTsNCiAgICB9LA0KDQogICAgb25DYW5jZWwoKSB7DQogICAgICB0aGlzLnZpc2libGUgPSBmYWxzZTsNCiAgICB9LA0KICAgIG9uQ29uZmlybSgpIHsNCiAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7DQogICAgICB0aGlzLiRyZWZzLmZvcm0udmFsaWRhdGUoYXN5bmMgKHZhbGlkLCBvYmplY3QpID0+IHsNCiAgICAgICAgaWYgKHZhbGlkKSB7DQogICAgICAgICAgY29uc29sZS5sb2codGhpcy5mb3JtLmF0dHJEYXRhKTsNCiAgICAgICAgICB0cnkgew0KICAgICAgICAgICAgbGV0IFFVRVJZQVBJOw0KICAgICAgICAgICAgaWYgKHRoaXMucHVibGlzaGVkKSB7DQogICAgICAgICAgICAgIFFVRVJZQVBJID0gQVBJLnNhdmVPclVwZGF0ZUZpZWxkczsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgIFFVRVJZQVBJID0gQVBJLnNhdmVGaWVsZHM7DQogICAgICAgICAgICB9DQogICAgICAgICAgICBjb25zdCB7IHN0YXRlLCBtZXNzYWdlIH0gPSBhd2FpdCBRVUVSWUFQSSh0aGlzLmZvcm0uYXR0ckRhdGEpOw0KICAgICAgICAgICAgaWYgKHN0YXRlKSB7DQogICAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2Vzcygn5a2X5q615L+d5a2Y5oiQ5YqfJyk7DQogICAgICAgICAgICAgIHRoaXMuJGVtaXQoJ2NvbmZpcm0nKTsNCiAgICAgICAgICAgICAgdGhpcy52aXNpYmxlID0gZmFsc2U7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcobWVzc2FnZSB8fCAn5pON5L2c5aSx6LSlJyk7DQogICAgICAgICAgICB9DQogICAgICAgICAgfSBjYXRjaCAoZXJyKSB7DQogICAgICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoZXJyIHx8ICfmk43kvZzlpLHotKUnKTsNCiAgICAgICAgICB9IGZpbmFsbHkgew0KICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7DQogICAgICAgICAgfQ0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZyhg5pyJJHtPYmplY3Qua2V5cyhvYmplY3QpLmxlbmd0aH3kuKrlrZfmrrXmnKrpgJrov4fmoKHpqozvvIzor7fmraPnoa7loavlhpnooajljZXjgIJgKTsNCiAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgfQ0KICAgICAgfSk7DQogICAgfSwNCiAgICBkb3dubG9hZCgpIHsNCiAgICAgIGNvbnN0IGZpbGVUeXBlMiA9ICfmlbDmja7mmI7nu4blsYLliqjmgIHooajlrZfmrrXmuIXljZUueGxzeCc7DQogICAgICBjb25zdCBmaWxlVHlwZTEgPSAn5pWw5o2u5piO57uG5bGC54mp55CG6KGo5a2X5q615riF5Y2VLnhsc3gnOw0KICAgICAgbGV0IGZpbGVUeXBlOw0KDQogICAgICBpZiAodGhpcy50YWJlbERhdGEudGFibGVDbGFzcyA9PT0gJzEnKSB7DQogICAgICAgIGZpbGVUeXBlID0gZmlsZVR5cGUxOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgZmlsZVR5cGUgPSBmaWxlVHlwZTI7DQogICAgICB9DQogICAgICB2YXIgYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTsNCiAgICAgIGEuaHJlZiA9IHdpbmRvdy5jb250ZXh0LmRvd25sb2FkICsgZmlsZVR5cGU7DQogICAgICBhLmRvd25sb2FkID0gZmlsZVR5cGU7IC8vIOiuvue9ruS4i+i9veaWh+S7tuaWh+S7tuWQjQ0KICAgICAgYS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOw0KICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChhKTsNCiAgICAgIGEuY2xpY2soKTsNCiAgICAgIGEucmVtb3ZlKCk7DQogICAgfSwNCiAgICAvLyAg5a+85YWl5paH5Lu25LiK5Lyg5YmNDQogICAgYmVmb3JlVXBsb2FkKGZpbGUpIHsNCiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7DQogICAgICAgIHRoaXMudXBsb2FkTG9hZGluZyA9IHRydWU7DQogICAgICAgIGNvbnN0IHsgc2l6ZSwgbmFtZSB9ID0gZmlsZTsNCiAgICAgICAgdGhpcy4kY29uZmlybShg6K+356Gu6K6k5piv5ZCm5a+85YWlIOKAnCR7bmFtZX3igJ0g77yfYCwgJ+aPkOekuicsIHsNCiAgICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogJ+ehruiupCcsDQogICAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsDQogICAgICAgICAgdHlwZTogJ3dhcm5pbmcnLA0KICAgICAgICB9KQ0KICAgICAgICAgIC50aGVuKChfKSA9PiB7DQogICAgICAgICAgICBsZXQgcGFzc2VkT3JOb3QgPSB0cnVlOyAvLyDmmK/lkKbpgJrov4fpqozor4ENCiAgICAgICAgICAgIGNvbnN0IHR5cGVSZWd1bGFyID0gL1wuKHhsc3x4bHN4KSQvaTsNCiAgICAgICAgICAgIGNvbnN0IHZlcmlmaWNhdGlvbiA9IFsNCiAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIGNvbmRpdGlvbjogIXR5cGVSZWd1bGFyLnRlc3QobmFtZSksDQogICAgICAgICAgICAgICAgcmVzdWx0OiAoKSA9PiB0aGlzLiRtZXNzYWdlLmVycm9yKCflj6rog73kuIrkvKB4bHPmiJZ4bHN45paH5Lu257G75Z6LJyksDQogICAgICAgICAgICAgIH0sDQogICAgICAgICAgICBdOw0KICAgICAgICAgICAgdmVyaWZpY2F0aW9uLmZvckVhY2goKGl0ZW0pID0+IHsNCiAgICAgICAgICAgICAgaWYgKGl0ZW0uY29uZGl0aW9uKSB7DQogICAgICAgICAgICAgICAgaXRlbS5yZXN1bHQoKTsNCiAgICAgICAgICAgICAgICBwYXNzZWRPck5vdCA9IGZhbHNlOw0KICAgICAgICAgICAgICAgIHRoaXMudXBsb2FkTG9hZGluZyA9IGZhbHNlOw0KICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9KTsNCg0KICAgICAgICAgICAgcGFzc2VkT3JOb3QgPyByZXNvbHZlKCkgOiByZWplY3QoKTsNCiAgICAgICAgICB9KQ0KICAgICAgICAgIC5jYXRjaCgoXykgPT4gew0KICAgICAgICAgICAgcmVqZWN0KCk7DQogICAgICAgICAgICB0aGlzLnVwbG9hZExvYWRpbmcgPSBmYWxzZTsNCiAgICAgICAgICAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZygn5bey5Y+W5raI5LiK5LygJyk7DQogICAgICAgICAgfSk7DQogICAgICB9KTsNCiAgICB9LA0KDQogICAgLy8g5a+85YWl5paH5Lu25LiK5Lyg5oiQ5YqfDQogICAgYXN5bmMgaGFuZGxlU3VjY2VzcyhyZXMpIHsNCiAgICAgIGlmIChyZXMuc3RhdGUpIHsNCiAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCflr7zlhaXmiJDlip8nKTsNCiAgICAgICAgdGhpcy51cGxvYWRMb2FkaW5nID0gZmFsc2U7DQogICAgICAgIGF3YWl0IHRoaXMuZ2V0RmllbGRzQnlUYWJsZSgpOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubWVzc2FnZSk7DQogICAgICB9DQogICAgfSwNCg0KICAgIC8vIOWvvOWFpeaWh+S7tuS4iuS8oOWksei0pQ0KICAgIGhhbmRsZUVycm9yKGVycikgew0KICAgICAgaWYgKGVycikgew0KICAgICAgICBsZXQgZXJyRGF0YSA9IGVyci50b1N0cmluZygpLnJlcGxhY2UoJ0Vycm9yOicsICcnKTsNCiAgICAgICAgZXJyRGF0YSA9IEpTT04ucGFyc2UoZXJyRGF0YSk7DQogICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoZXJyRGF0YS5tZXNzYWdlIHx8ICflr7zlhaXlpLHotKXvvIzor7fph43or5UnKTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMuJG1lc3NhZ2UuZXJyb3IoJ+WvvOWFpeWksei0pe+8jOivt+mHjeivlScpOw0KICAgICAgfQ0KICAgICAgdGhpcy51cGxvYWRMb2FkaW5nID0gZmFsc2U7DQogICAgfSwNCiAgfSwNCn07DQo="},null]}