{"remainingRequest":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\bzzgj-fvue\\src\\components\\ImportExportData\\DataTemplateSetting.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\src\\components\\ImportExportData\\DataTemplateSetting.vue","mtime":1705895419236},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\bzzgj-fvue\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQgdXRpbHMgZnJvbSAnQC9ob3RlbnQtdWktdXRpbCcNCmltcG9ydCBwb3J0YWwgZnJvbSAnQC9hcGkvcG9ydGFsJw0KaW1wb3J0IEFkZEZpZWxkcyBmcm9tICdAL2NvbXBvbmVudHMvSW1wb3J0RXhwb3J0RGF0YS9BZGRGaWVsZHMnDQppbXBvcnQgRm9ybWF0SnNvbiBmcm9tICdAL2NvbXBvbmVudHMvSW1wb3J0RXhwb3J0RGF0YS9Gb3JtYXRKc29uJw0KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICdEYXRhVGVtcGxhdGVTZXR0aW5nJywNCiAgY29tcG9uZW50czoge0FkZEZpZWxkcywgRm9ybWF0SnNvbn0sDQogIHByb3BzOiB7DQogICAgLy8g6aG16Z2i57uE5Lu25Yir5ZCNDQogICAgYml6Q29kZTogew0KICAgICAgdHlwZTogU3RyaW5nLA0KICAgICAgZGVmYXVsdDogJycsDQogICAgICByZXF1aXJlZDogdHJ1ZQ0KICAgIH0sDQogICAgLy8g5qih5p2/5paH5Lu25ZCN56ewDQogICAgdGVtcEZpbGVzOiB7DQogICAgICB0eXBlOiBTdHJpbmcsDQogICAgICBkZWZhdWx0OiAnJywNCiAgICAgIHJlcXVpcmVkOiB0cnVlDQogICAgfSwNCiAgICB0eXBlOiB7DQogICAgICB0eXBlOiBTdHJpbmcsDQogICAgICBkZWZhdWx0OiAnaW1wb3J0JywNCiAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgdmFsaWRhdG9yOiAodHlwZSkgPT4gew0KICAgICAgICBpZiAodHlwZSA9PSAnaW1wb3J0JyB8fCAnZXhwb3J0Jykgew0KICAgICAgICAgIHJldHVybiB0cnVlDQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgcmV0dXJuIGZhbHNlDQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9LA0KICAgIG9yaWdpbkFQSU9wdGlvbnM6IHsNCiAgICAgIHR5cGU6IE9iamVjdCwNCiAgICAgIGRlZmF1bHQ6ICgpID0+IHsNCiAgICAgIH0sDQogICAgICByZXF1aXJlZDogdHJ1ZQ0KICAgIH0sDQogICAgZGF0YUJhc2VPcHRpb25zOiB7DQogICAgICB0eXBlOiBPYmplY3QsDQogICAgICBkZWZhdWx0OiAoKSA9PiB7DQogICAgICB9LA0KICAgICAgcmVxdWlyZWQ6IHRydWUNCiAgICB9DQogIH0sDQogIGNvbXB1dGVkOiB7DQogICAgdGl0bGUoKSB7DQogICAgICBpZiAodGhpcy50eXBlID09ICdpbXBvcnQnKSB7DQogICAgICAgIHJldHVybiAn5a+85YWl5qih5p2/6YWN572uJw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgcmV0dXJuICflr7zlh7rmqKHmnb/phY3nva4nDQogICAgICB9DQogICAgfQ0KICB9LA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBkaWFsb2dTaG93OiBmYWxzZSwNCiAgICAgIHRhYmxlSGVpZ2h0OiAzMDAsDQogICAgICB0ZW1wSWQ6ICcnLA0KICAgICAgdGVtcERhdGE6IHt9LCAvLyDmqKHmnb/ln7rnoYDmlbDmja4NCiAgICAgIGRhdGE6IFtdLA0KICAgICAgbG9hZGluZzogZmFsc2UNCiAgICB9DQogIH0sDQogIG1vdW50ZWQoKSB7DQogICAgdGhpcy5jYWxjVGFibGVIZWlnaHQoKQ0KICAgIHRoaXMuJHJvb3QuJG9uKCdyZXNpemUnLCAoKSA9PiB7DQogICAgICB0aGlzLmNhbGNUYWJsZUhlaWdodCg1MDApDQogICAgfSkNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIGNoYW5nZVZpZXdUeXBlKGluZGV4LCByb3cpIHsNCiAgICAgIGxldCB0ZW1wUm93ID0gdXRpbHMuZGVlcENsb25lKHJvdykNCiAgICAgIHRlbXBSb3cuZmllbGREYXRhSnNvbiA9ICcnDQogICAgICB0aGlzLmRhdGEuc3BsaWNlKGluZGV4LCAxLCB0ZW1wUm93KQ0KICAgIH0sDQogICAgY2hlY2tOdW1iZXIoaW5kZXgsIHJvdywgbnVtKSB7DQogICAgICBsZXQgbnVtYmVyDQogICAgICBpZiAoIW51bSkgew0KICAgICAgICBudW1iZXIgPSAwDQogICAgICB9IGVsc2Ugew0KICAgICAgICBudW1iZXIgPSBwYXJzZUludChudW0pDQogICAgICAgIGlmIChudW1iZXIgPCAwKSB7DQogICAgICAgICAgbnVtYmVyID0gMA0KICAgICAgICB9DQogICAgICB9DQogICAgICByb3cub3JkZXJJbmRleCA9IG51bWJlcg0KICAgICAgdGhpcy5kYXRhLnNwbGljZShpbmRleCwgMSwgcm93KQ0KICAgIH0sDQogICAgc29ydERhdGEoKSB7DQogICAgICB0aGlzLmRhdGEuc29ydCgoYSwgYikgPT4gew0KICAgICAgICBjb25zdCBuYW1lQSA9IGEub3JkZXJJbmRleA0KICAgICAgICBjb25zdCBuYW1lQiA9IGIub3JkZXJJbmRleA0KICAgICAgICBpZiAobmFtZUEgPCBuYW1lQikgew0KICAgICAgICAgIHJldHVybiAtMQ0KICAgICAgICB9DQogICAgICAgIGlmIChuYW1lQSA+IG5hbWVCKSB7DQogICAgICAgICAgcmV0dXJuIDENCiAgICAgICAgfQ0KICAgICAgICByZXR1cm4gMA0KICAgICAgfSkNCiAgICB9LA0KICAgIGt2SnNvbihqc29uKSB7DQogICAgICBsZXQga3ZKc29uID0ge30NCiAgICAgIGlmIChqc29uKSB7DQogICAgICAgIGxldCB0ZW1wID0gSlNPTi5wYXJzZShqc29uKQ0KICAgICAgICB0ZW1wLmZvckVhY2goKGl0ZW0pID0+IHsNCiAgICAgICAgICBrdkpzb25baXRlbS52YWx1ZV0gPSBpdGVtLmxhYmVsDQogICAgICAgIH0pDQogICAgICAgIGt2SnNvbiA9IEpTT04uc3RyaW5naWZ5KGt2SnNvbikNCiAgICAgIH0NCiAgICAgIHJldHVybiBrdkpzb24NCiAgICB9LA0KICAgIC8vIOS/neWtmOmFjee9rg0KICAgIGhhbmRsZVNhdmUoKSB7DQogICAgICBpZiAoIXRoaXMuZGF0YS5sZW5ndGgpIHsNCiAgICAgICAgdGhpcy4kbWVzc2FnZS53YXJuaW5nKCfor7fphY3nva7mqKHmnb/vvIEnKQ0KICAgICAgICByZXR1cm4NCiAgICAgIH0NCiAgICAgIGxldCBkYXRhUGFyYW1zID0gdXRpbHMuZGVlcENsb25lKHRoaXMuZGF0YSkNCiAgICAgIGRhdGFQYXJhbXMuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHsNCiAgICAgICAgaWYgKHRoaXMudGVtcElkKSB7DQogICAgICAgICAgaXRlbS50ZW1wSWQgPSB0aGlzLnRlbXBJZA0KICAgICAgICB9DQoNCiAgICAgICAgaXRlbS50eXBlID0gdGhpcy50eXBlID09ICdpbXBvcnQnID8gMiA6IDENCiAgICAgICAgaXRlbS5maWVsZFR5cGUgPSAxDQogICAgICAgIGRlbGV0ZSBpdGVtLmRhdGFUeXBlDQogICAgICAgIGRlbGV0ZSBpdGVtLmZpZWxkRGVzYw0KICAgICAgICBkZWxldGUgaXRlbS5rZXkNCiAgICAgICAgZGVsZXRlIGl0ZW0udGFibGVOYW1lDQogICAgICAgIGRlbGV0ZSBpdGVtLmNvbHVtbkNvbW1lbnQNCiAgICAgICAgZGVsZXRlIGl0ZW0uY29sdW1uTmFtZQ0KICAgICAgfSkNCiAgICAgIGxldCBkYXRhID0gew0KICAgICAgICBleGNlbFRlbXA6IHsNCiAgICAgICAgICBpZDogdGhpcy50ZW1wRGF0YS5pZCwNCiAgICAgICAgICB0ZW1wRmlsZXM6IHRoaXMudGVtcEZpbGVzLA0KICAgICAgICAgIGJpekNvZGU6IHRoaXMuYml6Q29kZSwNCiAgICAgICAgICBkYkRhdGFCYXNlOiB0aGlzLmRhdGFCYXNlT3B0aW9ucy50YWJsZVNjaGVtYSwNCiAgICAgICAgICBkYlNvdXJjZUlkOiB0aGlzLmRhdGFCYXNlT3B0aW9ucy5kYXRhQmFzZUlkLA0KICAgICAgICAgIGRiVGFibGU6IHRoaXMuZGF0YUJhc2VPcHRpb25zLnRhYmxlTmFtZSwNCiAgICAgICAgICB0eXBlOg0KICAgICAgICAgICAgdGhpcy50eXBlID09ICdpbXBvcnQnDQogICAgICAgICAgICAgID8gMg0KICAgICAgICAgICAgICA6IHRoaXMudHlwZSA9PSAnZXhwb3J0Jw0KICAgICAgICAgICAgICAgID8gMQ0KICAgICAgICAgICAgICAgIDogJ251bGwnIC8vIOexu+Wei+S4jeWvueaKpemUmSDnsbvlnovvvIgx77ya5a+85Ye6IDLvvJrlr7zlhaXvvIkNCiAgICAgICAgfSwNCiAgICAgICAgZmllbGRzOiBkYXRhUGFyYW1zDQogICAgICB9DQogICAgICBwb3J0YWwuc2F2ZVRlbXBsYXRlKGRhdGEpLnRoZW4oKHJlcykgPT4gew0KICAgICAgICBjb25zb2xlLmxvZyhyZXMpDQogICAgICAgIGlmIChyZXMuc3RhdGUpIHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoJ+S/neWtmOaIkOWKnycpDQogICAgICAgICAgdGhpcy5jbG9zZURpYWxvZygpDQogICAgICAgICAgdGhpcy4kZW1pdCgncmVsb2FkJykNCiAgICAgICAgfQ0KICAgICAgfSkNCiAgICB9LA0KICAgIC8vIOi/lOWbnmpzb27otYvlgLwNCiAgICBoYW5kbGVHZXRKU29uKGpzb24sIHNjb3BlKSB7DQogICAgICBsZXQgdGVtcFJvdyA9IHV0aWxzLmRlZXBDbG9uZShzY29wZS5yb3cpDQogICAgICB0ZW1wUm93LmZpZWxkRGF0YUpzb24gPSBqc29uDQogICAgICB0aGlzLmRhdGEuc3BsaWNlKHNjb3BlLiRpbmRleCwgMSwgdGVtcFJvdykNCiAgICB9LA0KICAgIC8vIOe8lui+kWpzb24NCiAgICBvcGVuU2V0SnNvbihzY29wZSkgew0KICAgICAgdGhpcy4kcmVmcy5zZXRKc29uLm9wZW5EaWFsb2coc2NvcGUpDQogICAgfSwNCiAgICAvLyDmiZPlvIDphY3nva4NCiAgICBvcGVuRGlhbG9nKHRlbXBJZCkgew0KICAgICAgdGhpcy50ZW1wSWQgPSB0ZW1wSWQNCiAgICAgIHRoaXMuZGlhbG9nU2hvdyA9IHRydWUNCiAgICAgIGlmICh0ZW1wSWQpIHsNCiAgICAgICAgdGhpcy5sb2FkVGVtcERhdGEodGVtcElkKQ0KICAgICAgfQ0KDQogICAgICAvLyDlj5bmtojmi5bmi73mjpLluo8NCiAgICAgIC8vIHRoaXMuJG5leHRUaWNrKCgpID0+IHsNCiAgICAgIC8vICAgICB0aGlzLnNldERyYWdnYWJsZSgpDQogICAgICAvLyB9KQ0KICAgIH0sDQogICAgLy8g5p+l6K+i5bey5pyJ6YWN572uDQogICAgbG9hZFRlbXBEYXRhKGlkKSB7DQogICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlDQogICAgICBwb3J0YWwubG9hZFRlbXBEYXRhKGlkKS50aGVuKChyZXMpID0+IHsNCiAgICAgICAgdGhpcy50ZW1wRGF0YSA9IHJlcy5leGNlbFRlbXANCiAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5mb3JtYXREYXRhKHJlcy5maWVsZHMpDQogICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlDQogICAgICB9KQ0KICAgIH0sDQogICAgLy8g5qC85byP5YyW5Zue5aGr5pWw5o2uDQogICAgZm9ybWF0RGF0YShkYXRhKSB7DQogICAgICBkYXRhLmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7DQogICAgICAgIGl0ZW0ua2V5ID0gaW5kZXgNCiAgICAgICAgaXRlbS5maWVsZFZpZXdUeXBlID0gcGFyc2VJbnQoaXRlbS5maWVsZFZpZXdUeXBlKQ0KICAgICAgfSkNCiAgICAgIHJldHVybiBkYXRhDQogICAgfSwNCiAgICAvLyDlhbPpl63pobXpnaLph43nva7mlbDmja4NCiAgICBjbG9zZURpYWxvZygpIHsNCiAgICAgIHRoaXMuZGF0YSA9IFtdDQogICAgICB0aGlzLmRpYWxvZ1Nob3cgPSBmYWxzZQ0KICAgIH0sDQogICAgLy8g5omT5byA5re75Yqg5a2X5q615by556qXDQogICAgb3BlbkFkZEZpZWxkc0RpYWxvZygpIHsNCiAgICAgIHRoaXMuJHJlZnMuQWRkRmllbGRzLm9wZW5EaWFsb2coKQ0KICAgIH0sDQogICAgLy8g5a+56LGh5pWw57uE5Y676YeNDQogICAgdW5pcXVlKGFycikgew0KICAgICAgY29uc3QgcmVzID0gbmV3IE1hcCgpDQogICAgICByZXR1cm4gYXJyLmZpbHRlcigNCiAgICAgICAgKGFycikgPT4gIXJlcy5oYXMoYXJyLmZpZWxkTmFtZSkgJiYgcmVzLnNldChhcnIuZmllbGROYW1lLCAxKQ0KICAgICAgKQ0KICAgIH0sDQogICAgLy8g5re75Yqg5a2X5q61DQogICAgaGFuZGxlQWRkRmllbGRzKHJvdykgew0KICAgICAgY29uc3QgYWRkRmllbGRzID0gdXRpbHMuZGVlcENsb25lKHJvdykNCiAgICAgIGNvbnN0IG9yaWdpbkZpZWxkcyA9IHV0aWxzLmRlZXBDbG9uZSh0aGlzLmRhdGEpDQogICAgICBsZXQgbmV3VGFyZ2V0ID0gb3JpZ2luRmllbGRzLmNvbmNhdChhZGRGaWVsZHMpDQogICAgICBpZiAodGhpcy50eXBlID09ICdleHBvcnQnKSB7DQogICAgICAgIG5ld1RhcmdldC5zb3J0KChhLCBiKSA9PiB7DQogICAgICAgICAgY29uc3QgbmFtZUEgPSBhLmZpZWxkTmFtZS50b1VwcGVyQ2FzZSgpDQogICAgICAgICAgY29uc3QgbmFtZUIgPSBiLmZpZWxkTmFtZS50b1VwcGVyQ2FzZSgpDQogICAgICAgICAgaWYgKG5hbWVBIDwgbmFtZUIpIHsNCiAgICAgICAgICAgIHJldHVybiAtMQ0KICAgICAgICAgIH0NCiAgICAgICAgICBpZiAobmFtZUEgPiBuYW1lQikgew0KICAgICAgICAgICAgcmV0dXJuIDENCiAgICAgICAgICB9DQogICAgICAgICAgcmV0dXJuIDANCiAgICAgICAgfSkNCiAgICAgIH0gZWxzZSBpZiAodGhpcy50eXBlID09ICdpbXBvcnQnKSB7DQogICAgICAgIG5ld1RhcmdldCA9IHRoaXMudW5pcXVlKG5ld1RhcmdldCkNCiAgICAgIH0NCiAgICAgIG5ld1RhcmdldC5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4gew0KICAgICAgICBpdGVtLmtleSA9IGluZGV4DQogICAgICAgIGl0ZW0uZmllbGRWaWV3VHlwZSA9IDENCiAgICAgICAgaXRlbS5vcmRlckluZGV4ID0gaW5kZXgNCiAgICAgIH0pDQogICAgICB0aGlzLmRhdGEgPSBuZXdUYXJnZXQNCiAgICAgIGNvbnNvbGUubG9nKHRoaXMuZGF0YSwgJ3RoaXMuZGF0YScpDQogICAgICB0aGlzLiRmb3JjZVVwZGF0ZSgpDQogICAgfSwNCiAgICBoYW5kbGVVcChyb3csIGluZGV4KSB7DQogICAgICBpZiAoaW5kZXggIT09IDApIHsNCiAgICAgICAgbGV0IHRhcmdldEl0ZW0gPSByb3cgLy8g5b2T5YmNSXRlbQ0KICAgICAgICBsZXQgdXBJdGVtID0gdGhpcy5kYXRhW2luZGV4IC0gMV0gLy8g5YmN5LiA5LiqSXRlbQ0KICAgICAgICBsZXQgdGFyZ2V0SW5kZXggPSB0aGlzLmRhdGFbaW5kZXhdLm9yZGVySW5kZXggLy8g5b2T5YmNSXRlbUluZGV4DQogICAgICAgIGxldCB1cEluZGV4ID0gdGhpcy5kYXRhW2luZGV4IC0gMV0ub3JkZXJJbmRleCAvLyDliY3kuIDkuKpJdGVtSW5kZXgNCiAgICAgICAgLy8g5Lqk5o2ib3JkZXJJbmRleA0KICAgICAgICB0YXJnZXRJdGVtLm9yZGVySW5kZXggPSB1cEluZGV4DQogICAgICAgIHVwSXRlbS5vcmRlckluZGV4ID0gdGFyZ2V0SW5kZXgNCiAgICAgICAgdGhpcy5kYXRhLnNwbGljZShpbmRleCAtIDEsIDIsIHRhcmdldEl0ZW0sIHVwSXRlbSkNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZygn5bey57uP5aSE5LqO572u6aG277yM5peg5rOV5LiK56e7JykNCiAgICAgIH0NCiAgICB9LA0KICAgIGhhbmRsZURvd24ocm93LCBpbmRleCkgew0KICAgICAgaWYgKGluZGV4ICE9PSB0aGlzLmRhdGEubGVuZ3RoIC0gMSkgew0KICAgICAgICBsZXQgdGFyZ2V0SXRlbSA9IHJvdyAvLyDlvZPliY1JdGVtDQogICAgICAgIGxldCBkb3duSXRlbSA9IHRoaXMuZGF0YVtpbmRleCArIDFdIC8vIOWJjeS4gOS4qkl0ZW0NCiAgICAgICAgbGV0IHRhcmdldEluZGV4ID0gdGhpcy5kYXRhW2luZGV4XS5vcmRlckluZGV4IC8vIOW9k+WJjUl0ZW1JbmRleA0KICAgICAgICBsZXQgZG93bkluZGV4ID0gdGhpcy5kYXRhW2luZGV4ICsgMV0ub3JkZXJJbmRleCAvLyDliY3kuIDkuKpJdGVtSW5kZXgNCiAgICAgICAgLy8g5Lqk5o2ib3JkZXJJbmRleA0KICAgICAgICB0YXJnZXRJdGVtLm9yZGVySW5kZXggPSBkb3duSW5kZXgNCiAgICAgICAgZG93bkl0ZW0ub3JkZXJJbmRleCA9IHRhcmdldEluZGV4DQogICAgICAgIHRoaXMuZGF0YS5zcGxpY2UoaW5kZXgsIDIsIGRvd25JdGVtLCB0YXJnZXRJdGVtKQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy4kbWVzc2FnZS53YXJuaW5nKCflt7Lnu4/lpITkuo7nva7lupXvvIzml6Dms5XkuIvnp7snKQ0KICAgICAgfQ0KICAgIH0sDQogICAgLy8g5Yig6Zmk5a2X5q61DQogICAgaGFuZGxlRGVsRmllbGRzKHJvdykgew0KICAgICAgaWYgKHJvdy5pZCkgew0KICAgICAgICBwb3J0YWwuRGVsZXRlRXhwb3J0RmllbGRzKHJvdy5pZCkudGhlbigocmVzKSA9PiB7DQogICAgICAgICAgaWYgKHJlcy5zdGF0ZSkgew0KICAgICAgICAgICAgbGV0IGRhdGEgPSB1dGlscy5kZWVwQ2xvbmUodGhpcy5kYXRhKQ0KICAgICAgICAgICAgbGV0IHRhcmdldCA9IGRhdGEuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmtleSAhPSByb3cua2V5KQ0KICAgICAgICAgICAgdGhpcy5kYXRhID0gdGFyZ2V0DQogICAgICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoJ+WIoOmZpOaIkOWKnycpDQogICAgICAgICAgfQ0KICAgICAgICB9KQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgbGV0IGRhdGEgPSB1dGlscy5kZWVwQ2xvbmUodGhpcy5kYXRhKQ0KICAgICAgICBsZXQgdGFyZ2V0ID0gZGF0YS5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0ua2V5ICE9IHJvdy5rZXkpDQogICAgICAgIHRoaXMuZGF0YSA9IHRhcmdldA0KICAgICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoJ+WIoOmZpOaIkOWKnycpDQogICAgICB9DQogICAgfSwNCiAgICBkZWJvdW5jZShmbiwgZGVsYXkpIHsNCiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnRpbWVyKQ0KICAgICAgdGhpcy50aW1lciA9IHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7DQogICAgICAgIGZuKCkNCiAgICAgIH0sIGRlbGF5KQ0KICAgIH0sDQogICAgLy8g6K6+572u6KGo5qC85ouW5ou9DQogICAgc2V0RHJhZ2dhYmxlKCkgew0KICAgICAgY29uc3QgdGFibGUgPSB0aGlzLiRyZWZzLkRUVGFibGUNCiAgICAgIGNvbnN0ICRkYXRhID0gdGFibGUuZGF0YQ0KICAgICAgY29uc3QgdGJvZHkgPSB0YWJsZS4kZWwucXVlcnlTZWxlY3RvcigNCiAgICAgICAgJy5lbC10YWJsZV9fYm9keS13cmFwcGVyIHRib2R5Jw0KICAgICAgKQ0KICAgICAgY29uc3QgJHRoaXMgPSB0aGlzDQogICAgICBjb25zdCB0ckFyciA9IHRib2R5LnF1ZXJ5U2VsZWN0b3JBbGwoJ3RyJykNCiAgICAgIGxldCBkcmFnU3RhcnRZID0gMA0KICAgICAgaWYgKHRyQXJyKSB7DQogICAgICAgIHRyQXJyLmZvckVhY2goKGl0ZW0sIGluZGV4KSA9PiB7DQogICAgICAgICAgaXRlbS5zZXRBdHRyaWJ1dGUoJ2RyYWdnYWJsZScsIHRydWUpDQogICAgICAgICAgaXRlbS5zZXRBdHRyaWJ1dGUoJ2RhdGEtaW5kZXgnLCBpbmRleCkNCiAgICAgICAgfSkNCiAgICAgIH0NCg0KICAgICAgLy8g5byA5aeL5ouW5ou9DQogICAgICBmdW5jdGlvbiBkcmFnc3RhcnQoZSkgew0KICAgICAgICBjb25zb2xlLmxvZyhlLCAnZGZzZicpDQogICAgICAgICR0aGlzLmRlYm91bmNlKCgpID0+IHsNCiAgICAgICAgICBkcmFnU3RhcnRZID0gZS55DQogICAgICAgIH0sIDUwKQ0KICAgICAgfQ0KDQogICAgICAvLyDnu5PmnZ/mi5bmi70NCiAgICAgIGZ1bmN0aW9uIGRyYWdlbmQoZSkgew0KICAgICAgICBpZiAoIWUudGFyZ2V0KSByZXR1cm4NCiAgICAgICAgY29uc3QgaW5kZXggPSBOdW1iZXIoZS50YXJnZXQuZGF0YXNldC5pbmRleCwgMTApDQogICAgICAgIGNvbnN0IHRySGVpZ2h0ID0gZS50YXJnZXQub2Zmc2V0SGVpZ2h0IHx8IDQ1DQogICAgICAgICR0aGlzLmRlYm91bmNlKGFzeW5jICgpID0+IHsNCiAgICAgICAgICBjb25zdCBkVmFsID0gZS55IC0gZHJhZ1N0YXJ0WQ0KICAgICAgICAgIGNvbnN0IGFic1ZhbCA9IE1hdGguYWJzKGRWYWwpDQogICAgICAgICAgbGV0IHN0ZXAgPSAwDQogICAgICAgICAgaWYgKGFic1ZhbCA+PSB0ckhlaWdodCkgew0KICAgICAgICAgICAgaWYgKGRWYWwgPiAwKSB7DQogICAgICAgICAgICAgIHN0ZXAgPSBNYXRoLmZsb29yKGRWYWwgLyB0ckhlaWdodCkNCiAgICAgICAgICAgICAgaWYgKHN0ZXAgPj0gJGRhdGEubGVuZ3RoIC0gaW5kZXgpIHsNCiAgICAgICAgICAgICAgICBzdGVwID0gJGRhdGEubGVuZ3RoIC0gaW5kZXggLSAxDQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgIHN0ZXAgPSBNYXRoLmNlaWwoZFZhbCAvIHRySGVpZ2h0KQ0KICAgICAgICAgICAgICBpZiAoTWF0aC5hYnMoc3RlcCkgPiBpbmRleCkgew0KICAgICAgICAgICAgICAgIHN0ZXAgPSBpbmRleCAqIC0xDQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGlmIChpbmRleCA9PT0gMCAmJiBzdGVwIDw9IDApIHsNCiAgICAgICAgICAgICAgcmV0dXJuDQogICAgICAgICAgICB9DQogICAgICAgICAgICBpZiAoaW5kZXggPT09ICRkYXRhLmxlbmd0aCAtIDEgJiYgc3RlcCA+PSAwKSB7DQogICAgICAgICAgICAgIHJldHVybg0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgLy8gY29uc3QgcGFyYW1zID0gew0KICAgICAgICAgICAgLy8gICAgIGlkOiAkZGF0YVtpbmRleF0uaWQsDQogICAgICAgICAgICAvLyAgICAgc3RlcDogc3RlcCAqIC0xLA0KICAgICAgICAgICAgLy8gfQ0KICAgICAgICAgICAgY29uc3QgcGFyYW1zID0gew0KICAgICAgICAgICAgICBpbmRleCwNCiAgICAgICAgICAgICAgc3RlcDogc3RlcCAqIC0xDQogICAgICAgICAgICB9DQogICAgICAgICAgICBjb25zb2xlLmxvZyhwYXJhbXMsICdwYXJhbXMnKQ0KICAgICAgICAgICAgJHRoaXMuY2hhbmdlU29ydChwYXJhbXMpDQogICAgICAgICAgICAvLyAkdGhpcy5sb2FkaW5nID0gdHJ1ZQ0KICAgICAgICAgICAgLy8gLy8g5ZCO56uv5o6l5Y+jDQogICAgICAgICAgICAvLyBhd2FpdCAkdGhpcy4kYXBpLnVybC5zZXRDb250ZW50U29ydChwYXJhbXMpDQogICAgICAgICAgICAvLyAvLyDph43mlrDojrflj5bmlbDmja4NCiAgICAgICAgICAgIC8vICR0aGlzLnJlbG9hZERhdGEoKQ0KICAgICAgICAgIH0NCiAgICAgICAgfSwgNTApDQogICAgICB9DQoNCiAgICAgIHRib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2RyYWdzdGFydCcsIGRyYWdzdGFydCkNCiAgICAgIHRib2R5LmFkZEV2ZW50TGlzdGVuZXIoJ2RyYWdlbmQnLCBkcmFnZW5kKQ0KICAgIH0sDQogICAgLy8g5ouW5ou957uT5p2f6YeN5paw5o6S5bqPDQogICAgY2hhbmdlU29ydChwYXJhbXMpIHsNCiAgICAgIGxldCBkYXRhID0gdXRpbHMuZGVlcENsb25lKHRoaXMuZGF0YSkNCiAgICAgIGNvbnN0IHRhcmdldEluZGV4ID0gcGFyYW1zLmluZGV4IC0gcGFyYW1zLnN0ZXANCiAgICAgIGxldCB0YXJnZXRJdGVtID0gZGF0YS5zcGxpY2UocGFyYW1zLmluZGV4LCAxKQ0KICAgICAgZGF0YS5zcGxpY2UodGFyZ2V0SW5kZXgsIDAsIHRhcmdldEl0ZW1bMF0pDQogICAgICB0aGlzLmRhdGEgPSBkYXRhDQogICAgICB0aGlzLiRmb3JjZVVwZGF0ZSgpDQogICAgfSwNCiAgICAvLyDliqjmgIHorqHnrpfooajmoLznmoTpq5jluqbvvIzoh6rpgILlupTlvZPliY3lrrnlmagNCiAgICBjYWxjVGFibGVIZWlnaHQoZGVsYXkpIHsNCiAgICAgIHNldFRpbWVvdXQoKCkgPT4gew0KICAgICAgICB0aGlzLnRhYmxlSGVpZ2h0ID0NCiAgICAgICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0ICogMC45IC0gMjAwDQogICAgICB9LCBkZWxheSB8fCAwKQ0KICAgIH0NCiAgfQ0KfQ0K"},null]}