{"remainingRequest":"D:\\jenkins\\workspace\\xcjy-fvue\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\jenkins\\workspace\\xcjy-fvue\\src\\views\\patrolAndRescue\\infoMgmtPatrolsRescues\\electronicFence\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\jenkins\\workspace\\xcjy-fvue\\src\\views\\patrolAndRescue\\infoMgmtPatrolsRescues\\electronicFence\\index.vue","mtime":1751451388948},{"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:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQppbXBvcnQge2xhenlBTWFwQXBpTG9hZGVySW5zdGFuY2V9IGZyb20gJ3Z1ZS1hbWFwJw0KaW1wb3J0IHsNCiAgZWRpdFBvaW50U2F2aW5nLA0KICBnZXRGZW5lYywNCiAgZ2V0VHJlZSwNCiAgcG9pbnRTYXZpbmcsDQogIHRhYmxlRGVsZXRlDQp9IGZyb20gJ0AvYXBpL3BhdHJvbEFuZFJlc2N1ZS9pbmZvTWdtdFBhdHJvbHNSZXNjdWVzL2VsZWN0cm9uaWNGZW5jZScNCmltcG9ydCB0cmVlU2lkZSBmcm9tICdAL2NvbXBvbmVudHMvdHJlZVNpZGUvaW5kZXgudnVlJw0KDQp3aW5kb3cuX0FNYXBTZWN1cml0eUNvbmZpZyA9IHsNCiAgc2VjdXJpdHlKc0NvZGU6ICczMzAzNWU5M2Y3ZjA3ZDQ0ZWM1MmM3MWYzYmQ2NGIyOScgLy/kvaDnmoTnp5jpkqUNCn0NCmV4cG9ydCBkZWZhdWx0IHsNCiAgbmFtZTogJ1RhYmxlUGFnZScsDQogIGNvbXBvbmVudHM6IHsNCiAgICB0cmVlU2lkZQ0KICB9LA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBtYXBMb2FkaW5nOiBmYWxzZSwNCiAgICAgIHJvYWRJZDogJycsDQogICAgICByb2FkTGlzdDogW10sDQogICAgICB0cmVlTG9hZGluZzogZmFsc2UsDQogICAgICB0cmVlRGF0YTogW10sIC8v5bem6L655qCRDQogICAgICBkZWZhdWx0UHJvcHM6IHsNCiAgICAgICAgY2hpbGRyZW46ICdjaGlsZHJlbicsDQogICAgICAgIGxhYmVsOiAnbmFtZScNCiAgICAgIH0sDQogICAgICBjZW50ZXI6IFsxMDYuNTQ3ODc2NywgMjkuNTY0NzM5OF0sIC8vIOWcsOWbvuS4reW/g+eCuQ0KICAgICAgem9vbTogMTEsDQogICAgICBtYXA6IHVuZGVmaW5lZCwNCiAgICAgIHBvbHlnb246IG51bGwsDQogICAgICAvL+W9k+WJjeeahOe7mOWItuWbvuWxgg0KICAgICAgY3VycmVudE92ZXJsYXk6IHVuZGVmaW5lZCwNCiAgICAgIC8v5o6n5Yi257uY5Yi25ZyG5b2i55qE5Y+Y6YePDQogICAgICBpc0NpcmNsZTogdHJ1ZSwNCiAgICAgIC8v5o6n5Yi257uY5Yi25aSa5Y+Y5Z6L55qE5Y+Y6YePDQogICAgICBpc1BvbHlnb246IHRydWUsDQogICAgICBhY3RpdmVFZGl0b3I6IHVuZGVmaW5lZCwNCiAgICAgIGVkaXRvck9wdGlvbnM6IHVuZGVmaW5lZCwNCiAgICAgIHBhdGg6IFtdLA0KICAgICAgaXNwbG90OiBmYWxzZSwNCiAgICAgIGlzRWRpdDogZmFsc2UsDQogICAgICBtYXBBZGRyZXNzOiAnJywNCiAgICAgIHBvaUxpc3REYXRhOiBbXSwNCiAgICAgIGF1dG9Db21wbGV0ZUNvbXBvbmVudDogdW5kZWZpbmVkLA0KICAgICAgcGxhY2VTZWFyY2hDb21wb25lbnQ6IHVuZGVmaW5lZCwNCiAgICAgIHNob3dzZWFyY2hSZXN1bHQ6IGZhbHNlLA0KICAgICAgc2hvd0luZm86IGZhbHNlLA0KICAgICAgaW5mb1dpbmRvd1Bvc2l0aW9uOiB7fSwNCiAgICAgIGluZm9XaW5kb3dDb250ZW50OiAn54K55Ye75Y+z6ZSu5L+d5a2YJywNCiAgICAgIGxuZ2xhdDogJycsDQogICAgICBpc0ZpcnN0OiBmYWxzZQ0KICAgIH0NCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICAvLyDojrflj5bmoJHlvaLnm67lvZUNCiAgICB0aGlzLmdldE9yZ1RyZWVEYXRhKCh0cmVlRGF0YSkgPT4gew0KICAgICAgLy8g5Zue6LCD5Lit6buY6K6k6YCJ5Lit56ys5LiA6aG55bm25bCG5YW2aWTkvZzkuLrlj4LmlbDor7fmsYLooajmoLwNCiAgICAgIHRoaXMudHJlZUl0ZW0gPSB0cmVlRGF0YVswXSB8fCB7fQ0KICAgICAgaWYgKHRoaXMudHJlZUl0ZW0uY2hpbGRyZW4ubGVuZ3RoID4gMCkgew0KICAgICAgICB0aGlzLmlzcGxvdCA9IGZhbHNlDQogICAgICAgIHRoaXMucm9hZExpc3QgPSB0aGlzLmV4dHJhY3RJZHModGhpcy50cmVlSXRlbSkNCiAgICAgIH0NCiAgICAgIHRoaXMuZHJhd1NhdmVkUG9seWdvbigpDQogICAgICB0aGlzLiRuZXh0VGljaygoXykgPT4gew0KICAgICAgICB0aGlzLiRyZWZzLnRyZWVTaWRlPy5zZXRDdXJyZW50S2V5KHRyZWVEYXRhWzBdPy5pZCkNCiAgICAgICAgdGhpcy4kcmVmcy50cmVlU2lkZT8uZXhwYW5kSGFuZGxlKHRydWUsIDIpDQogICAgICAgIHRoaXMuaXNGaXJzdCA9IHRydWUNCiAgICAgIH0pDQogICAgfSkNCiAgfSwNCiAgbW91bnRlZCgpIHsNCiAgICBsYXp5QU1hcEFwaUxvYWRlckluc3RhbmNlLmxvYWQoKS50aGVuKChyZXNwb25zZSkgPT4gew0KICAgICAgdGhpcy5pbml0TWFwKCkNCiAgICB9KQ0KICB9LA0KICBtZXRob2RzOiB7DQogICAgY2xlYXJMbmdsYXQoKSB7DQogICAgICB0aGlzLm1hcC5jbGVhck1hcCgpIC8vIOa4hemZpOaJgOacieimhueblueJqe+8iOeCueagh+W/l++8iQ0KICAgIH0sDQogICAgZXh0cmFjdElkcyhub2RlKSB7DQogICAgICBsZXQgaWRzID0gW10NCiAgICAgIC8vIOWmguaenOW9k+WJjeiKgueCueaciSBjaGlsZHJlbu+8jOWImemAkuW9kuaPkOWPlg0KICAgICAgaWYgKG5vZGUuY2hpbGRyZW4pIHsNCiAgICAgICAgaWRzID0gbm9kZS5jaGlsZHJlbi5tYXAoY2hpbGQgPT4gY2hpbGQuaWQpIC8vIOaPkOWPluW9k+WJjeiKgueCueeahCBpZA0KICAgICAgICAvLyDpgJLlvZLmj5Dlj5blrZDoioLngrnnmoQgaWQNCiAgICAgICAgbm9kZS5jaGlsZHJlbi5mb3JFYWNoKGNoaWxkID0+IHsNCiAgICAgICAgICBpZHMgPSBpZHMuY29uY2F0KHRoaXMuZXh0cmFjdElkcyhjaGlsZCkpDQogICAgICAgIH0pDQogICAgICB9DQogICAgICByZXR1cm4gaWRzDQogICAgfSwNCiAgICBjaGFuZ2VMbmdMYXQoKSB7DQogICAgICBpZiAoIXRoaXMubG5nbGF0KSByZXR1cm4NCiAgICAgIGNvbnN0IFtsbmcsIGxhdF0gPSB0aGlzLmxuZ2xhdC5zcGxpdCgnLCcpDQogICAgICBBTWFwLmNvbnZlcnRGcm9tKFtOdW1iZXIobG5nKSwgTnVtYmVyKGxhdCldLCAnR1BTJywgKHN0YXR1cywgcmVzdWx0KSA9PiB7DQogICAgICAgIGNvbnNvbGUubG9nKCfovazmjaLmiJDlip8nLCByZXN1bHQpDQogICAgICAgIGlmIChyZXN1bHQuaW5mbyA9PT0gJ29rJykgew0KICAgICAgICAgIGNvbnN0IHJlc0xuZ2xhdCA9IHJlc3VsdC5sb2NhdGlvbnNbMF0NCiAgICAgICAgICB0aGlzLm1hcmtlclJlc3VsdCgNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgbmFtZTogJ+mrmOW+t+WdkOagh++8micgKyByZXNMbmdsYXQubG5nICsgJywnICsgcmVzTG5nbGF0LmxhdCwNCiAgICAgICAgICAgICAgbG9jYXRpb246IHsNCiAgICAgICAgICAgICAgICBsbmc6IHJlc0xuZ2xhdC5sbmcsDQogICAgICAgICAgICAgICAgbGF0OiByZXNMbmdsYXQubGF0DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICAnZ3BzVHJhbnNmb3JtJw0KICAgICAgICAgICkNCiAgICAgICAgfQ0KICAgICAgfSkNCiAgICB9LA0KICAgIC8qKiDliJ3lp4vljJbmkJzntKIgKi8NCiAgICBtYXBTZWFyY2hJbml0KCkgew0KICAgICAgbGV0IGF1dG9PcHRpb25zID0gew0KICAgICAgICBpbnB1dDogJ3RpcElucHV0Jw0KICAgICAgfQ0KICAgICAgdGhpcy5hdXRvQ29tcGxldGVDb21wb25lbnQgPSBuZXcgQU1hcC5BdXRvY29tcGxldGUoYXV0b09wdGlvbnMpDQogICAgICAvLyDms6jlhoxwbGFjZVNlYXJjaOe7hOS7tg0KICAgICAgdGhpcy5wbGFjZVNlYXJjaENvbXBvbmVudCA9IG5ldyBBTWFwLlBsYWNlU2VhcmNoKHsNCiAgICAgICAgY2l0eTogJ+mHjeW6hicgLy/ln47luIINCiAgICAgIH0pDQogICAgfSwNCiAgICBzZWFyY2hLZXlXb3JkKCkgew0KICAgICAgaWYgKHRoaXMubWFwQWRkcmVzcyAhPT0gJycpIHsNCiAgICAgICAgdGhpcy5wbGFjZVNlYXJjaENvbXBvbmVudC5zZWFyY2godGhpcy5tYXBBZGRyZXNzLCAoc3RhdHVzLCByZXN1bHQpID0+IHsNCiAgICAgICAgICBpZiAoc3RhdHVzID09PSAnY29tcGxldGUnICYmIHJlc3VsdC5pbmZvID09PSAnT0snKSB7DQogICAgICAgICAgICB0aGlzLnNob3dzZWFyY2hSZXN1bHQgPSB0cnVlDQogICAgICAgICAgICB0aGlzLnBvaUxpc3REYXRhID0gcmVzdWx0LnBvaUxpc3QucG9pcw0KICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICB0aGlzLnNob3dzZWFyY2hSZXN1bHQgPSBmYWxzZQ0KICAgICAgICAgICAgdGhpcy5wb2lMaXN0RGF0YSA9IFtdDQogICAgICAgICAgICB0aGlzLiRtZXNzYWdlKHsNCiAgICAgICAgICAgICAgbWVzc2FnZTogJ+ayoeacieafpeWIsOe7k+aenCcsDQogICAgICAgICAgICAgIHR5cGU6ICd3YXJuaW5nJw0KICAgICAgICAgICAgfSkNCiAgICAgICAgICB9DQogICAgICAgIH0pDQogICAgICB9IGVsc2Ugew0KICAgICAgICB0aGlzLnBvaUxpc3REYXRhID0gW10NCiAgICAgICAgdGhpcy5zaG93c2VhcmNoUmVzdWx0ID0gZmFsc2UNCiAgICAgICAgdGhpcy5tYXAuY2xlYXJNYXAoKQ0KICAgICAgfQ0KICAgIH0sDQogICAgbWFya2VyUmVzdWx0KGRhdGEsIHR5cGUpIHsNCiAgICAgIHRoaXMuc2hvd3NlYXJjaFJlc3VsdCA9IGZhbHNlDQogICAgICB0aGlzLmFkZHJlc3MgPSBkYXRhLm5hbWUNCiAgICAgIHZhciBtYXJrZXIgPSBuZXcgQU1hcC5NYXJrZXIoew0KICAgICAgICBwb3NpdGlvbjogW051bWJlcihkYXRhLmxvY2F0aW9uLmxuZyksIE51bWJlcihkYXRhLmxvY2F0aW9uLmxhdCldDQogICAgICB9KQ0KICAgICAgdGhpcy5tYXAuY2xlYXJNYXAoKSAvLyDmuIXpmaTmiYDmnInopobnm5bnianvvIjngrnmoIflv5fvvIkNCiAgICAgIHRoaXMubWFwLmFkZChtYXJrZXIpIC8vIOa3u+WKoOeCueagh+W/lw0KICAgICAgdGhpcy5zaG93SW5mb1dpbmRvdyhtYXJrZXIsIHR5cGUpDQogICAgICBzZXRUaW1lb3V0KCgpID0+IHsNCiAgICAgICAgdGhpcy5tYXAuc2V0Q2VudGVyKGRhdGEubG9jYXRpb24pDQogICAgICAgIHRoaXMubWFwLnNldFpvb20oMTUpDQogICAgICB9LCA1MCkNCiAgICAgIGxldCB0aGlzUG9zaXRpb24gPSB7DQogICAgICAgIGFkZHJlc3M6IHRoaXMuYWRkcmVzcywNCiAgICAgICAgbG5nOiBkYXRhLmxvY2F0aW9uLmxuZywNCiAgICAgICAgbGF0OiBkYXRhLmxvY2F0aW9uLmxhdA0KICAgICAgfQ0KICAgICAgdGhpcy4kZW1pdCgnc2VsZWN0JywgdGhpc1Bvc2l0aW9uKQ0KICAgIH0sDQogICAgc2hvd0luZm9XaW5kb3cobWFya2VyLCB0eXBlKSB7DQogICAgICBsZXQgaW5mb1dpbmRvdyA9IG5ldyBBTWFwLkluZm9XaW5kb3coew0KICAgICAgICBpc0N1c3RvbTogdHJ1ZSwgLy/mmK/lkKboh6rlrprkuYnkv6Hmga/nqpfkvZMNCiAgICAgICAgY29udGVudDogYDxkaXYgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6IHdoaXRlO2NvbG9yOiMwMDAwMDA7IHBhZGRpbmc6IDEwcHg7IGJvcmRlci1yYWRpdXM6IDVweDtib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjOyI+ICR7DQogICAgICAgICAgdHlwZSA9PT0gJ2dwc1RyYW5zZm9ybScgPyAnJyA6ICflnLDlnYDvvJonDQogICAgICAgIH0ke3RoaXMuYWRkcmVzc308L2Rpdj5gLA0KICAgICAgICBjbG9zZVdoZW5DbGlja01hcDogdHJ1ZSwNCiAgICAgICAgekluZGV4OiA5OTksDQogICAgICAgIG9mZnNldDogbmV3IEFNYXAuUGl4ZWwoMTYsIC0zNSkNCiAgICAgIH0pDQogICAgICBpbmZvV2luZG93Lm9wZW4odGhpcy5tYXAsIG1hcmtlci5nZXRQb3NpdGlvbigpKQ0KICAgIH0sDQogICAgLy8g6I635Y+W6Lev5q615qCRDQogICAgYXN5bmMgZ2V0T3JnVHJlZURhdGEoY2FsbGJhY2spIHsNCiAgICAgIHRyeSB7DQogICAgICAgIHRoaXMudHJlZUxvYWRpbmcgPSB0cnVlDQogICAgICAgIGxldCB7dmFsdWV9ID0gYXdhaXQgZ2V0VHJlZSgpDQogICAgICAgIHRoaXMudHJlZURhdGEgPSBbdGhpcy50cmFuc2Zvcm1UcmVlRGF0YSh2YWx1ZSldDQogICAgICB9IGZpbmFsbHkgew0KICAgICAgICB0aGlzLnRyZWVMb2FkaW5nID0gZmFsc2UNCiAgICAgICAgY2FsbGJhY2sgJiYgY2FsbGJhY2sodGhpcy50cmVlRGF0YSkNCiAgICAgIH0NCiAgICB9LA0KICAgIHRyYW5zZm9ybVRyZWVEYXRhKGRhdGEpIHsNCiAgICAgIHJldHVybiB7DQogICAgICAgIG5hbWU6IGRhdGEubmFtZSwNCiAgICAgICAgaWQ6IGRhdGEuaWQsDQogICAgICAgIGNoaWxkcmVuOiBkYXRhLmNoaWxkcmVuLnJlZHVjZSgoYWNjLCBjaGlsZCkgPT4gew0KICAgICAgICAgIGFjYy5wdXNoKHsNCiAgICAgICAgICAgIGlkOiBjaGlsZC5pZCwNCiAgICAgICAgICAgIG5hbWU6IGNoaWxkLm5hbWUsDQogICAgICAgICAgICBjaGlsZHJlbjogY2hpbGQudGVhbUxpc3QubWFwKHJvYWQgPT4gKHsNCiAgICAgICAgICAgICAgaWQ6IHJvYWQuaWQsDQogICAgICAgICAgICAgIGlzRHJhdzogcm9hZC5pc0RyYXcsDQogICAgICAgICAgICAgIG5hbWU6DQogICAgICAgICAgICAgICAgcm9hZC5uYW1lICsgJygnICsgKHJvYWQuaXNEcmF3ID09PSAnMScgPyAn5bey57uY5Zu+JyA6ICfmnKrnu5jlm74nKSArICcpJw0KICAgICAgICAgICAgfSkpDQogICAgICAgICAgfSkNCiAgICAgICAgICByZXR1cm4gYWNjDQogICAgICAgIH0sIFtdKQ0KICAgICAgfQ0KDQoNCiAgICAgIC8vIHJldHVybiBkYXRhLm1hcCgoaXRlbSkgPT4gKHsNCiAgICAgIC8vICAgaWQ6IGl0ZW0uaWQsDQogICAgICAvLyAgIG5hbWU6IGl0ZW0ubmFtZSwgLy8g5LiA57qn55uu5b2V55qEIGxhYmVsDQogICAgICAvLyAgIGNoaWxkcmVuOiBpdGVtLnRlYW1MaXN0Lm1hcCgoZ3JpZCkgPT4gKHsNCiAgICAgIC8vICAgICBpZDogZ3JpZC5pZCwNCiAgICAgIC8vICAgICBpc0RyYXc6IGdyaWQuaXNEcmF3LA0KICAgICAgLy8gICAgIG5hbWU6DQogICAgICAvLyAgICAgICBncmlkLm5hbWUgKyAnKCcgKyAoZ3JpZC5pc0RyYXcgPT09ICcxJyA/ICflt7Lnu5jlm74nIDogJ+acque7mOWbvicpICsgJyknIC8vIOS6jOe6p+ebruW9leeahCBsYWJlbA0KICAgICAgLy8gICB9KSkNCiAgICAgIC8vIH0pKQ0KICAgIH0sDQogICAgY3VycmVudENoYW5nZShub2RlSXRlbSkgew0KICAgICAgaWYgKG5vZGVJdGVtLmlkID09PSAnMTc2NjAxNzQ2ODQ0NDQ1MDgxNicpIHsNCiAgICAgICAgdGhpcy5pc3Bsb3QgPSBmYWxzZQ0KICAgICAgICB0aGlzLnJvYWRJZCA9ICcnDQogICAgICAgIHRoaXMucm9hZExpc3QgPSB0aGlzLmV4dHJhY3RJZHMobm9kZUl0ZW0pDQogICAgICB9IGVsc2UgaWYgKG5vZGVJdGVtLmNoaWxkcmVuICYmIG5vZGVJdGVtLmNoaWxkcmVuLmxlbmd0aCA+IDApIHsNCiAgICAgICAgdGhpcy5pc3Bsb3QgPSBmYWxzZQ0KICAgICAgICB0aGlzLnJvYWRJZCA9ICcnDQogICAgICAgIHRoaXMucm9hZExpc3QgPSBub2RlSXRlbS5jaGlsZHJlbi5tYXAoaXRlbSA9PiBpdGVtLmlkKQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGhpcy5pc3Bsb3QgPSB0cnVlDQogICAgICAgIHRoaXMuaXNFZGl0ID0gbm9kZUl0ZW0uaXNEcmF3ID09PSAnMScNCiAgICAgICAgdGhpcy5yb2FkTGlzdCA9IFtdDQogICAgICAgIHRoaXMucm9hZElkID0gbm9kZUl0ZW0/LmlkDQogICAgICB9DQoNCg0KICAgICAgLy8gaWYgKG5vZGVJdGVtLmNoaWxkcmVuICYmIG5vZGVJdGVtLmNoaWxkcmVuLmxlbmd0aCA+IDApIHsNCiAgICAgIC8vICAgdGhpcy5pc3Bsb3QgPSBmYWxzZQ0KICAgICAgLy8gICB0aGlzLnJvYWRJZCA9ICcnDQogICAgICAvLyAgIHRoaXMucm9hZExpc3QgPSBub2RlSXRlbS5jaGlsZHJlbi5tYXAoKGl0ZW0pID0+IGl0ZW0uaWQpDQogICAgICAvLyB9IGVsc2Ugew0KICAgICAgLy8gICB0aGlzLmlzcGxvdCA9IHRydWUNCiAgICAgIC8vICAgdGhpcy5pc0VkaXQgPSBub2RlSXRlbS5pc0RyYXcgPT09ICcxJw0KICAgICAgLy8gICB0aGlzLnJvYWRMaXN0ID0gW10NCiAgICAgIC8vICAgdGhpcy5yb2FkSWQgPSBub2RlSXRlbT8uaWQNCiAgICAgIC8vIH0NCiAgICAgIHRoaXMuaXNQb2x5Z29uID0gdHJ1ZQ0KICAgICAgdGhpcy5jbGVhckFsbERyYXdpbmdzKCkNCiAgICAgIHRoaXMuY2xlYXJQb2x5Z29ucygpDQogICAgICB0aGlzLmRyYXdTYXZlZFBvbHlnb24oKQ0KICAgIH0sDQogICAgLy/lnLDlm77liJ3lp4vljJYNCiAgICBpbml0TWFwKCkgew0KICAgICAgdGhpcy5tYXAgPSBuZXcgQU1hcC5NYXAoJ21hcENvbnRhaW5lcicsIHsNCiAgICAgICAgY2VudGVyOiB0aGlzLmNlbnRlciwNCiAgICAgICAgem9vbTogdGhpcy56b29tLA0KICAgICAgICBsYXllcnM6IFsNCiAgICAgICAgICBuZXcgQU1hcC5UaWxlTGF5ZXIoKSAvLyDpu5jorqTmma7pgJrlnLDlm77lm77lsYINCiAgICAgICAgXQ0KICAgICAgfSkNCiAgICAgIC8vIOaQnOe0og0KICAgICAgdGhpcy5tYXBTZWFyY2hJbml0KCkNCiAgICAgIC8vIOWbnuaYviAg5Yik5pat56ys5LiA5qyh6LWwY3JlYXRlZOmHjOmdoiDkuYvlkI7otbDov5kNCiAgICAgIGlmICh0aGlzLmlzRmlyc3QpIHsNCiAgICAgICAgdGhpcy5kcmF3U2F2ZWRQb2x5Z29uKCkNCiAgICAgIH0NCiAgICAgIC8vIOWIneWni+WMliBNb3VzZVRvb2wNCiAgICAgIEFNYXAucGx1Z2luKCdBTWFwLk1vdXNlVG9vbCcsICgpID0+IHsNCiAgICAgICAgdGhpcy5kcmF3aW5nTWFuYWdlciA9IG5ldyBBTWFwLk1vdXNlVG9vbCh0aGlzLm1hcCkgLy8g5Yid5aeL5YyWIE1vdXNlVG9vbA0KICAgICAgfSkNCiAgICAgIC8vIC8vZWRpdG9yT3B0aW9ucyDmmK/kuIDkuKrphY3nva7lr7nosaHvvIzkuJPpl6jnlKjkuo7mjqfliLblnLDlm77kuIrnvJbovpHlip/og73nmoTmoLflvI/lkozooYzkuLrvvIzlsKTlhbbmmK/kuI4gTW91c2VUb29sIOmFjeWQiOS9v+eUqOaXtu+8jOiDveWkn+Wvuee7mOWItueahOWbvuW9oui/m+ihjOe8lui+ke+8iOS+i+Wmguenu+WKqOagh+iusOeCueOAgeS/ruaUueWkmui+ueW9ouiKgueCueetie+8ieOAgg0KICAgICAgdGhpcy5lZGl0b3JPcHRpb25zID0gew0KICAgICAgICBlZGl0TWFya2VyT3B0aW9uczogew0KICAgICAgICAgIGljb246IG5ldyBBTWFwLkljb24oew0KICAgICAgICAgICAgc2l6ZTogbmV3IEFNYXAuU2l6ZSgxNiwgMTYpLCAvLyDlm77moIflpKflsI8NCiAgICAgICAgICAgIGltYWdlOiAnaHR0cHM6Ly93ZWJhcGkuYW1hcC5jb20vdGhlbWUvdjEuMy9tYXJrZXJzL24vbWFya19iLnBuZycNCiAgICAgICAgICB9KSwNCiAgICAgICAgICBvZmZzZXQ6IG5ldyBBTWFwLlBpeGVsKC04LCAtOCkgLy8g5Zu+5qCH5YGP56e76YePDQogICAgICAgIH0sDQogICAgICAgIC8vIOmFjee9ruWPr+enu+WKqOeahOagh+iusOeCueeahOagt+W8jw0KICAgICAgICBtb3ZlTWFya2VyT3B0aW9uczogew0KICAgICAgICAgIGljb246IG5ldyBBTWFwLkljb24oew0KICAgICAgICAgICAgc2l6ZTogbmV3IEFNYXAuU2l6ZSgyMCwgMjApLA0KICAgICAgICAgICAgaW1hZ2U6ICdodHRwczovL3dlYmFwaS5hbWFwLmNvbS90aGVtZS92MS4zL21hcmtlcnMvbi9tYXJrX3IucG5nJw0KICAgICAgICAgIH0pLA0KICAgICAgICAgIG9mZnNldDogbmV3IEFNYXAuUGl4ZWwoLTEwLCAtMTApDQogICAgICAgIH0sDQogICAgICAgIC8vIOmFjee9ruWkmui+ueW9oi/nur/mnaHkuK3pl7ToioLngrnnmoTmoLflvI8NCiAgICAgICAgbWlkTWFya2VyT3B0aW9uczogew0KICAgICAgICAgIGljb246IG5ldyBBTWFwLkljb24oew0KICAgICAgICAgICAgc2l6ZTogbmV3IEFNYXAuU2l6ZSgxNCwgMTQpLA0KICAgICAgICAgICAgaW1hZ2U6ICdodHRwczovL3dlYmFwaS5hbWFwLmNvbS90aGVtZS92MS4zL21hcmtlcnMvbi9tYXJrX3IucG5nJw0KICAgICAgICAgIH0pLA0KICAgICAgICAgIG9mZnNldDogbmV3IEFNYXAuUGl4ZWwoLTcsIC03KQ0KICAgICAgICB9DQogICAgICB9DQogICAgICAvLyDnm5HlkKzlnIblvaLnu5jliLblrozmiJDkuovku7YNCiAgICAgIHRoaXMuZHJhd2luZ01hbmFnZXIub24oJ2RyYXcnLCAoZXZlbnQpID0+IHsNCiAgICAgICAgaWYgKHRoaXMuY3VycmVudE92ZXJsYXkpIHsNCiAgICAgICAgICB0aGlzLm1hcC5yZW1vdmUodGhpcy5jdXJyZW50T3ZlcmxheSkNCiAgICAgICAgfQ0KDQogICAgICAgIHRoaXMuY3VycmVudE92ZXJsYXkgPSBldmVudC5vYmoNCiAgICAgICAgY29uc3Qgc2hhcGUgPSBldmVudC5vYmogLy8g6I635Y+W57uY5Yi255qE5Zu+5b2i5a+56LGhDQoNCiAgICAgICAgaWYgKHNoYXBlIGluc3RhbmNlb2YgQU1hcC5Qb2x5Z29uKSB7DQogICAgICAgICAgc2hhcGUuc2V0T3B0aW9ucyh7ZHJhZ2dhYmxlOiB0cnVlfSkNCiAgICAgICAgICBzaGFwZS5vbignZHJhZ2VuZCcsIGZ1bmN0aW9uKCkgew0KICAgICAgICAgICAgY29uc3QgbmV3UGF0aCA9IHNoYXBlLmdldFBhdGgoKSAvLyDojrflj5bmi5bmi73lkI7nmoTot6/lvoQNCiAgICAgICAgICAgIGNvbnNvbGUubG9nKCfmi5bmi73lkI7nmoTlpJrovrnlvaInLCBuZXdQYXRoKQ0KICAgICAgICAgIH0pDQogICAgICAgICAgdGhpcy5wYXRoID0gc2hhcGUuZ2V0UGF0aCgpIC8vIOiOt+WPluWkmui+ueW9oueahOi3r+W+hOeCuQ0KICAgICAgICAgIGNvbnNvbGUubG9nKCfnu5jliLblrozmiJDnmoTlm77lvaLnsbvlnos6IOWkmui+ueW9ouaIluefqeW9oicpDQogICAgICAgICAgY29uc29sZS5sb2coJ+mhtueCuee7j+e6rOW6puaVsOe7hDonLCB0aGlzLnBhdGgpDQogICAgICAgICAgLy8gdGhpcy5kcmF3aW5nTWFuYWdlci5jbG9zZSgpOw0KICAgICAgICAgIHRoaXMuZHJhd1BvbHlnb24oKQ0KICAgICAgICB9DQogICAgICB9KQ0KICAgIH0sDQogICAgLy/lpJrovrnlvaLnu5jliLblvIDlkK8NCiAgICBwb2x5Z29uQ2xpY2soKSB7DQogICAgICB0aGlzLmRyYXdpbmdNYW5hZ2VyLmNsb3NlKCkNCiAgICAgIHRoaXMuaXNQb2x5Z29uID0gIXRoaXMuaXNQb2x5Z29uDQogICAgICBpZiAodGhpcy5pc1BvbHlnb24pIHsNCiAgICAgICAgdGhpcy5kcmF3aW5nTWFuYWdlci5jbG9zZSgpIC8vIOWFs+mXree7mOWbvuaooeW8jw0KICAgICAgICB0aGlzLmVuYWJsZUVkaXRpbmcoKQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgLy8gaWYgKHRoaXMuY3VycmVudE92ZXJsYXkpIHsNCiAgICAgICAgLy8gICB0aGlzLmNsZWFyQWxsRHJhd2luZ3MoKTsNCiAgICAgICAgLy8gfQ0KICAgICAgICB0aGlzLmRyYXdQb2x5Z29uKCkNCiAgICAgIH0NCiAgICB9LA0KICAgIC8v5byA5ZCv57uY5Yi25Zu+5b2i57yW6L6R5qih5byPDQogICAgZW5hYmxlRWRpdGluZygpIHsNCiAgICAgIGlmICghdGhpcy5jdXJyZW50T3ZlcmxheSkgew0KICAgICAgICBhbGVydCgn6K+35YWI57uY5Yi25Zu+5b2i77yBJykNCiAgICAgICAgcmV0dXJuDQogICAgICB9DQogICAgICBpZiAodGhpcy5jdXJyZW50T3ZlcmxheSBpbnN0YW5jZW9mIEFNYXAuUG9seWdvbikgew0KICAgICAgICBpZiAodGhpcy5hY3RpdmVFZGl0b3IpIHsNCiAgICAgICAgICB0aGlzLmFjdGl2ZUVkaXRvci5jbG9zZSgpIC8vIOWFs+mXreS5i+WJjeeahOe8lui+keWZqA0KICAgICAgICB9DQogICAgICAgIHRoaXMuYWN0aXZlRWRpdG9yID0gbmV3IEFNYXAuUG9seUVkaXRvcigNCiAgICAgICAgICB0aGlzLm1hcCwNCiAgICAgICAgICB0aGlzLmN1cnJlbnRPdmVybGF5LA0KICAgICAgICAgIHRoaXMuZWRpdG9yT3B0aW9ucw0KICAgICAgICApDQogICAgICAgIHRoaXMuYWN0aXZlRWRpdG9yLm9wZW4oKQ0KICAgICAgfQ0KICAgIH0sDQogICAgLy/muIXnqbrmiYDmnInnu5jliLblm77lvaINCiAgICBjbGVhckFsbEFwaSgpIHsNCiAgICAgIHRoaXMuJGNvbmZpcm0oJ+ehruWumuWIoOmZpOivpeWMuuWfn+WQl++8nycsICfmj5DnpLonLCB7DQogICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAn56Gu6K6kJywNCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogJ+WPlua2iCcsDQogICAgICAgIHR5cGU6ICd3YXJuaW5nJw0KICAgICAgfSkNCiAgICAgICAgLnRoZW4oYXN5bmMgKCkgPT4gew0KICAgICAgICAgIGNvbnN0IHtzdGF0ZX0gPSBhd2FpdCB0YWJsZURlbGV0ZSh0aGlzLnJvYWRJZCkNCiAgICAgICAgICBpZiAoc3RhdGUpIHsNCiAgICAgICAgICAgIHRoaXMuaXNQb2x5Z29uID0gdHJ1ZQ0KICAgICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKGDliKDpmaTmiJDlip9gKQ0KICAgICAgICAgICAgYXdhaXQgdGhpcy5nZXRPcmdUcmVlRGF0YSgodHJlZURhdGEpID0+IHsNCiAgICAgICAgICAgICAgdGhpcy5kcmF3U2F2ZWRQb2x5Z29uKCkNCiAgICAgICAgICAgICAgdGhpcy5pc0VkaXQgPSBmYWxzZQ0KICAgICAgICAgICAgICB0aGlzLiRuZXh0VGljaygoXykgPT4gew0KICAgICAgICAgICAgICAgIHRoaXMuJHJlZnMudHJlZVNpZGU/LnNldEN1cnJlbnRLZXkodGhpcy5yb2FkSWQpDQogICAgICAgICAgICAgICAgdGhpcy4kcmVmcy50cmVlU2lkZT8uZXhwYW5kSGFuZGxlKHRydWUsIDIpDQogICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9KQ0KICAgICAgICAgICAgdGhpcy5jbGVhckFsbERyYXdpbmdzKCkNCiAgICAgICAgICAgIHRoaXMuY2xlYXJQb2x5Z29ucygpDQogICAgICAgICAgfQ0KICAgICAgICB9KQ0KICAgICAgICAuY2F0Y2goKF8pID0+IF8pDQogICAgfSwNCiAgICBjbGVhckFsbCgpIHsNCiAgICAgIHRoaXMuaXNQb2x5Z29uID0gZmFsc2UNCiAgICAgIHRoaXMuaXNFZGl0ID0gZmFsc2UNCiAgICAgIHRoaXMuZW5hYmxlRWRpdGluZygpDQogICAgICB0aGlzLmNsZWFyQWxsRHJhd2luZ3MoKQ0KICAgICAgdGhpcy5jbGVhclBvbHlnb25zKCkNCiAgICB9LA0KICAgIC8v55So5p2l5riF56m65omA5pyJ55qE57uY5Yi25Zu+5b2iDQogICAgY2xlYXJBbGxEcmF3aW5ncygpIHsNCiAgICAgIHRoaXMubWFwLmNsZWFyTWFwKCkNCiAgICB9LA0KICAgIC8v55So5p2l5riF56m657uY5Yi25aSa6L655b2i5Zu+5b2iDQogICAgY2xlYXJQb2x5Z29ucygpIHsNCiAgICAgIHRoaXMubWFwLmNsZWFyTWFwKCkNCiAgICB9LA0KICAgIC8v5aSa6L655b2i5Zue5pi+DQogICAgZHJhd1BvbHlnb24oKSB7DQogICAgICB0aGlzLmRyYXdpbmdNYW5hZ2VyLnBvbHlnb24oew0KICAgICAgICBzdHJva2VDb2xvcjogJ3JlZCcsIC8vIOaPj+i+ueminOiJsg0KICAgICAgICBzdHJva2VPcGFjaXR5OiAxLCAvLyDmj4/ovrnpgI/mmI7luqYNCiAgICAgICAgc3Ryb2tlV2VpZ2h0OiAzLCAvLyDmj4/ovrnlrr3luqYNCiAgICAgICAgZmlsbENvbG9yOiAncmVkJywgLy8g5aGr5YWF6aKc6ImyDQogICAgICAgIGZpbGxPcGFjaXR5OiAwLjUgLy8g5aGr5YWF6YCP5piO5bqmDQogICAgICB9KQ0KICAgIH0sDQogICAgLy8g5L+d5a2YDQogICAgYXN5bmMgcHJlc2VydmF0aW9uKCkgew0KICAgICAgbGV0IHBhcmFtID0gew0KICAgICAgICBpZDogdGhpcy5pc0VkaXQgPyB0aGlzLmlkIDogJycsDQogICAgICAgIHRlYW1JZDogdGhpcy5yb2FkSWQsDQogICAgICAgIGNvb3JkaW5hdGU6IEpTT04uc3RyaW5naWZ5KHRoaXMucGF0aCkNCiAgICAgIH0NCiAgICAgIGNvbnN0IHtzdGF0ZX0gPSB0aGlzLmlzRWRpdA0KICAgICAgICA/IGF3YWl0IGVkaXRQb2ludFNhdmluZyhwYXJhbSkNCiAgICAgICAgOiBhd2FpdCBwb2ludFNhdmluZyhwYXJhbSkNCiAgICAgIGlmIChzdGF0ZSkgew0KICAgICAgICB0aGlzLmlzUG9seWdvbiA9IHRydWUNCiAgICAgICAgdGhpcy5jbGVhckFsbERyYXdpbmdzKCkNCiAgICAgICAgdGhpcy5jbGVhclBvbHlnb25zKCkNCiAgICAgICAgYXdhaXQgdGhpcy5nZXRPcmdUcmVlRGF0YSgodHJlZURhdGEpID0+IHsNCiAgICAgICAgICB0aGlzLmRyYXdTYXZlZFBvbHlnb24oKQ0KICAgICAgICAgIHRoaXMuZHJhd2luZ01hbmFnZXIuY2xvc2UoKQ0KICAgICAgICAgIHRoaXMuaXNFZGl0ID0gdHJ1ZQ0KICAgICAgICAgIHRoaXMuJG5leHRUaWNrKChfKSA9PiB7DQogICAgICAgICAgICB0aGlzLiRyZWZzLnRyZWVTaWRlPy5zZXRDdXJyZW50S2V5KHRoaXMucm9hZElkKQ0KICAgICAgICAgICAgdGhpcy4kcmVmcy50cmVlU2lkZT8uZXhwYW5kSGFuZGxlKHRydWUsIDIpDQogICAgICAgICAgfSkNCiAgICAgICAgfSkNCiAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCfkv53lrZjmiJDlip8nKQ0KICAgICAgfQ0KICAgIH0sDQogICAgLy8g5Zue5pi+IOivpuaDhQ0KICAgIGFzeW5jIGRyYXdTYXZlZFBvbHlnb24oKSB7DQogICAgICB0aGlzLm1hcExvYWRpbmcgPSB0cnVlDQogICAgICBsZXQgdGVhbUlkcyA9IFtdDQogICAgICBsZXQgZGVhbFBvbHlnb25BcnIgPSBbXQ0KICAgICAgaWYgKHRoaXMucm9hZExpc3QubGVuZ3RoID4gMCkgew0KICAgICAgICB0ZWFtSWRzID0gdGhpcy5yb2FkTGlzdA0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgdGVhbUlkcy5wdXNoKHRoaXMucm9hZElkKQ0KICAgICAgfQ0KICAgICAgY29uc3Qge3N0YXRlLCB2YWx1ZX0gPSBhd2FpdCBnZXRGZW5lYyh0ZWFtSWRzKQ0KICAgICAgaWYgKHN0YXRlKSB7DQogICAgICAgIHRoaXMubWFwTG9hZGluZyA9IGZhbHNlDQogICAgICAgIC8vIOWIpOaWreWmguaenOaYr+e8lui+keaXtg0KICAgICAgICBpZiAodGhpcy5pc0VkaXQpIHsNCiAgICAgICAgICB0aGlzLmlkID0gdmFsdWVbMF0uaWQNCiAgICAgICAgfQ0KICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHZhbHVlLmxlbmd0aDsgaSsrKSB7DQogICAgICAgICAgbGV0IGFycmF5ID0gSlNPTi5wYXJzZSh2YWx1ZVtpXT8uY29vcmRpbmF0ZSkNCiAgICAgICAgICBjb25zdCBwYXRoID0gYXJyYXkubWFwKA0KICAgICAgICAgICAgKGNvb3JkKSA9PiBuZXcgQU1hcC5MbmdMYXQoY29vcmQubG5nLCBjb29yZC5sYXQpDQogICAgICAgICAgKQ0KICAgICAgICAgIHRoaXMucG9seWdvbiA9IG5ldyBBTWFwLlBvbHlnb24oew0KICAgICAgICAgICAgcGF0aDogcGF0aCwgLy8g5L2/55So5L+d5a2Y55qE6aG254K55Z2Q5qCH5pWw57uE5p2l57uY5Yi25aSa6L655b2iDQogICAgICAgICAgICBzdHJva2VDb2xvcjogJ3JlZCcsIC8vIOaPj+i+ueminOiJsg0KICAgICAgICAgICAgc3Ryb2tlT3BhY2l0eTogMSwgLy8g5o+P6L656YCP5piO5bqmDQogICAgICAgICAgICBzdHJva2VXZWlnaHQ6IDMsIC8vIOaPj+i+ueWuveW6pg0KICAgICAgICAgICAgZmlsbENvbG9yOiAncmVkJywgLy8g5aGr5YWF6aKc6ImyDQogICAgICAgICAgICBmaWxsT3BhY2l0eTogMC41DQogICAgICAgICAgfSkNCiAgICAgICAgICBkZWFsUG9seWdvbkFyci5wdXNoKHRoaXMucG9seWdvbikNCiAgICAgICAgICB0aGlzLnBvbHlnb24uc2V0TWFwKHRoaXMubWFwKQ0KICAgICAgICAgIHRoaXMubWFwLmFkZChkZWFsUG9seWdvbkFycikNCiAgICAgICAgICB0aGlzLm1hcC5zZXRGaXRWaWV3KGRlYWxQb2x5Z29uQXJyKQ0KICAgICAgICAgIHRoaXMuY3VycmVudE92ZXJsYXkgPSB0aGlzLnBvbHlnb24NCiAgICAgICAgfQ0KICAgICAgfQ0KICAgIH0NCiAgfQ0KfQ0K"},null]}