{"remainingRequest":"/data/jenkins/workspace/badp-bcxin-web-5.x-dispatch-mobile/node_modules/vue-loader/lib/index.js??vue-loader-options!/data/jenkins/workspace/badp-bcxin-web-5.x-dispatch-mobile/src/views/StationEmployees.vue?vue&type=script&lang=js&","dependencies":[{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-dispatch-mobile/src/views/StationEmployees.vue","mtime":1735821445610},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-dispatch-mobile/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-dispatch-mobile/node_modules/babel-loader/lib/index.js","mtime":456789000000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-dispatch-mobile/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-dispatch-mobile/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CmltcG9ydCB7IFNlYXJjaCwgTGlzdCwgRW1wdHksIEJ1dHRvbiwgQ2hlY2tib3hHcm91cCwgQ2hlY2tib3gsIFRvYXN0LCBOb3RpZnksIEFjdGlvblNoZWV0LCBDZWxsIH0gZnJvbSAidmFudCI7CmltcG9ydCBBdmF0YXIgZnJvbSAiQGNvbXBvbmVudHMvYXZhdGFyLnZ1ZSI7CmltcG9ydCB7IHRleHRTbGljZSB9IGZyb20gIkAvYXBpL2NvbW1vbiI7CmltcG9ydCB7IGdldEVtcGxveWVlcyB9IGZyb20gIkAvYXBpL2VtcGxveWVlLWNvbnRyb2xsZXIiOwppbXBvcnQgQ3VycmVudENvbnZlcnNhdGlvbiBmcm9tICJAL2NvbXBvbmVudHMvdGltQXBwL2NvbnZlcnNhdGlvbi9jdXJyZW50LWNvbnZlcnNhdGlvbi52dWUiOwppbXBvcnQgQ2FsbExheWVyIGZyb20gIkAvY29tcG9uZW50cy90aW1BcHAvdHJ0Yy9jYWxsaW5nLWluZGV4LnZ1ZSI7CmltcG9ydCBDYWxsaW5nTWVtYmVycyBmcm9tICJAL2NvbXBvbmVudHMvdGltQXBwL3RydGMvY2FsbGluZy1tZW1iZXJzLnZ1ZSI7CmltcG9ydCB0aW0gZnJvbSAiQC90aW0iOwppbXBvcnQgX3dlYlNvY2tldCBmcm9tICJAL3V0aWxzL3dlYnNvY2tldCI7CmltcG9ydCB7IG1hcFN0YXRlLCBtYXBBY3Rpb25zIH0gZnJvbSAidnVleCI7CmltcG9ydCBCbG9ja0NoZWNrYm94IGZyb20gIkAvY29tcG9uZW50cy9ibG9ja0NoZWNrYm94L2luZGV4LnZ1ZSI7CgpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogIlN0YXRpb25FbXBsb3llZXMiLAogIGNvbXBvbmVudHM6IHsKICAgIENhbGxpbmdNZW1iZXJzLAogICAgQ2FsbExheWVyLAogICAgQ3VycmVudENvbnZlcnNhdGlvbiwKICAgIFtTZWFyY2gubmFtZV06IFNlYXJjaCwKICAgIFtMaXN0Lm5hbWVdOiBMaXN0LAogICAgW0VtcHR5Lm5hbWVdOiBFbXB0eSwKICAgIFtDaGVja2JveC5uYW1lXTogQ2hlY2tib3gsCiAgICBbQ2hlY2tib3hHcm91cC5uYW1lXTogQ2hlY2tib3hHcm91cCwKICAgIFtCdXR0b24ubmFtZV06IEJ1dHRvbiwKICAgIFtUb2FzdC5uYW1lXTogVG9hc3QsCiAgICBbTm90aWZ5Lm5hbWVdOiBOb3RpZnksCiAgICBbQWN0aW9uU2hlZXQubmFtZV06IEFjdGlvblNoZWV0LAogICAgW0NlbGwubmFtZV06IENlbGwsCiAgICBBdmF0YXIsCiAgICBCbG9ja0NoZWNrYm94LAogIH0sCiAgZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIGtleXdvcmQ6ICIiLAogICAgICBlbXBsb3llZUxpc3Q6IFtdLAogICAgICBjaGVja2VkOiBmYWxzZSwKICAgICAgbWVtYmVyTGlzdDogW10sCiAgICAgIGxvYWRpbmc6IGZhbHNlLAogICAgICBmaW5pc2hlZDogZmFsc2UsCiAgICAgIHBhZ2VJbmRleDogMSwKICAgICAgc2hvd0NvbnZlcnNhdGlvbjogZmFsc2UsCiAgICAgIGNhbGxUeXBlOiAidmlkZW8iLAogICAgICBncm91cENhbGw6IGZhbHNlLAogICAgICAvL+iwg+W6puexu+Wei++8mjHop4bpopHosIPluqYgMiDop4bpopHkuIrmi4nvvJrpmaTkuobop4bpopHkuIrmi4nkvKAy77yM5YW25LuW6Z+z6aKR6LCD5bqm5LiO6KeG6aKR6LCD5bqm6YO95LygMQogICAgICB5YXJkbWFuVHlwZTogIjEiLAogICAgICBzdHJlYW06IHsKICAgICAgICBhdWRpbzogdHJ1ZSwKICAgICAgICB2aWRlbzogdHJ1ZSwKICAgICAgfSwKICAgICAgY2FsbGluZ01lbWJlcnNWaXNpYmxlOiBmYWxzZSwKICAgICAgc2hvd0ZpbHRlcjogZmFsc2UsCiAgICAgIHJlc3VsdDogW10sCiAgICAgIG9uRHV0eTogW10sCiAgICAgIHN0YXRpb25UeXBlczogW10sCiAgICB9OwogIH0sCiAgY29tcHV0ZWQ6IHsKICAgIC4uLm1hcFN0YXRlKHsKICAgICAgcm9vbUlkOiAoc3RhdGUpID0+IHN0YXRlLnRydGMucm9vbUlkLAogICAgICBhbGxTdGF0aW9uVHlwZXM6IChzdGF0ZSkgPT4gc3RhdGUuYXBwLnN0YXRpb25UeXBlcywKICAgICAgc3lzVXNlckluZm86IChzdGF0ZSkgPT4gc3RhdGUudXNlci5zeXNVc2VySW5mbywKICAgIH0pLAogICAgc3RhdGlvbklkKCkgewogICAgICByZXR1cm4gdGhpcy4kcm91dGUucXVlcnkuc3RhdGlvbklkOwogICAgfSwKICAgIHNlbGVjdGVkQ291bnQoKSB7CiAgICAgIHJldHVybiB0aGlzLmVtcGxveWVlTGlzdC5maWx0ZXIoKHgpID0+IHguY2hlY2tlZCkubGVuZ3RoOwogICAgfSwKICAgIHNob3dBbGxTZWxlY3QoKSB7CiAgICAgIHJldHVybiB0aGlzLmVtcGxveWVlTGlzdC5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uZHV0eVN0YXR1cyA9PT0gIlNpZ25JbiIpLmxlbmd0aCA+IDA7CiAgICB9LAogICAgc3RhdGlvblR5cGUoKSB7CiAgICAgIHJldHVybiB0aGlzLiRyb3V0ZS5xdWVyeS5zdGF0aW9uVHlwZTsKICAgIH0sCiAgfSwKICBtZXRob2RzOiB7CiAgICAuLi5tYXBBY3Rpb25zKFsic2V0QWxsU3RhdGlvblR5cGVzIl0pLAogICAgLy93c+WIneWni+WMlgogICAgaW5pdFdzKCkgewogICAgICBjb25zdCBkaXNwYXRjaFRva2VuID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oImRpc3BhdGNoVG9rZW4iKTsKICAgICAgaWYgKCFkaXNwYXRjaFRva2VuKSByZXR1cm4gZmFsc2U7CiAgICAgIHRoaXMud2ViU29ja2V0VXJsID0gYC93ZWJzb2NrZXQvcG9saWNlX2luY2lkZW50cz9kaXNwYXRjaFRva2VuPSR7ZGlzcGF0Y2hUb2tlbn1gOwogICAgICB0aGlzLndzID0gX3dlYlNvY2tldCh7CiAgICAgICAgdXJsOiB0aGlzLndlYlNvY2tldFVybCwKICAgICAgICBvbk1lc3NhZ2U6IHRoaXMub25NZXNzYWdlLAogICAgICAgIGhlYXJ0OiB7CiAgICAgICAgICB0aW1lcjogNTAwMCwKICAgICAgICAgIG1lc3NhZ2U6ICJrZWVwIGFsaXZlIiwKICAgICAgICB9LAogICAgICAgIGlzUmVjb25uZWN0OiB0cnVlLAogICAgICAgIC8vb25DbG9zZTogdGhpcy5vbkNsb3NlLAogICAgICB9KTsKICAgIH0sCiAgICBvbkNsb3NlKCkgewogICAgICB0aGlzLmluaXRXcygpOwogICAgfSwKICAgIG9uTWVzc2FnZShldnQpIHsKICAgICAgLy8gY29uc29sZS5sb2coIndzIGRhdGEgPT09IiwgZXZ0KTsKICAgICAgaWYgKGV2dCkgewogICAgICAgIGlmIChldnQuZGF0YS5pbmNsdWRlcygia2VlcCBhbGl2ZSIpKSB7CiAgICAgICAgICAvL+W/g+i3swogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShldnQuZGF0YSk7CiAgICAgICAgICBjb25zb2xlLmxvZygid3MgZGF0YSA9PT0iLCBkYXRhKTsKICAgICAgICAgIGNvbnN0IHsgdHlwZSwgbWVzc2FnZSB9ID0gZGF0YTsKICAgICAgICAgIGlmICh0eXBlID09PSAiUG9saWNlSW5jaWRlbnRzIikgewogICAgICAgICAgICBjb25zdCBjb250ZW50ID0gbWVzc2FnZS5jb250ZW50c1swXTsKICAgICAgICAgICAgaWYgKGNvbnRlbnQuY2F0ZWdvcnkgPT09ICJTb3MiKSB7CiAgICAgICAgICAgICAgLy8gVE9ETyDlpITnkIZTT1MKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAvLyBUT0RPIOWkhOeQhuitpuaDheS4iuaKpQogICAgICAgICAgICB9CiAgICAgICAgICB9IGVsc2UgaWYgKHR5cGUgPT09ICJUUlRDIikgewogICAgICAgICAgICBjb25zdCBjb250ZW50ID0gbWVzc2FnZS5jb250ZW50c1swXTsKICAgICAgICAgICAgY29uc29sZS5sb2coY29udGVudCk7CiAgICAgICAgICAgIGNvbnN0IHsgYWN0aW9uLCB0ZW5jZW50VXNlcklkLCByb29tSWQgfSA9IGNvbnRlbnQ7CiAgICAgICAgICAgIC8vIOWmguaenOS4jeaYr+acrOS6uueahOaIv+mXtOebtOaOpeW/veeVpQogICAgICAgICAgICBpZiAodGhpcy5yb29tSWQgJiYgcm9vbUlkLnRvU3RyaW5nKCkgPT09IHRoaXMucm9vbUlkLnRvU3RyaW5nKCkpIHsKICAgICAgICAgICAgICBpZiAoYWN0aW9uID09PSAiaGFuZFVwIiB8fCBhY3Rpb24gPT09ICJjaGVlc2UiKSB7CiAgICAgICAgICAgICAgICAvLyB0aGlzLiRtZXNzYWdlLmluZm8oIuaciTHkurrkuL7miYsiKTsKICAgICAgICAgICAgICAgIFRvYXN0KHsKICAgICAgICAgICAgICAgICAgbWVzc2FnZTogIuaciTHkurrkuL7miYsiLAogICAgICAgICAgICAgICAgICBwb3NpdGlvbjogInRvcCIsCiAgICAgICAgICAgICAgICAgIGljb246IHJlcXVpcmUoIkAvYXNzZXRzL2ltYWdlcy9jb252ZXJzYXRpb24v56e75Yqo56uv5Li+5omLLnBuZyIpLAogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIHRoaXMubWVtYmVyTGlzdC5mb3JFYWNoKChtZW1iZXIpID0+IHsKICAgICAgICAgICAgICAgIGlmIChtZW1iZXIudGVuY2VudFVzZXJJZCA9PT0gdGVuY2VudFVzZXJJZCkgewogICAgICAgICAgICAgICAgICBtZW1iZXIuYWN0aW9uID0gYWN0aW9uOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgIGNvbnNvbGUubG9nKHRoaXMubWVtYmVyTGlzdCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0sCiAgICBvblNlYXJjaCgpIHsKICAgICAgdGhpcy5pbml0TG9hZGluZygpOwogICAgICB0aGlzLm9uTG9hZCgpOwogICAgfSwKICAgIGluaXRMb2FkaW5nKCkgewogICAgICB0aGlzLnBhZ2VJbmRleCA9IDE7CiAgICAgIHRoaXMuZW1wbG95ZWVMaXN0ID0gW107CiAgICAgIHRoaXMuZmluaXNoZWQgPSBmYWxzZTsKICAgIH0sCiAgICBnZXRTdGF0aW9uSWRzKCkgewogICAgICBpZiAodGhpcy5zdGF0aW9uSWQpIHsKICAgICAgICByZXR1cm4gdGhpcy5zdGF0aW9uSWQuc3BsaXQoIiwiKTsKICAgICAgfQogICAgfSwKICAgIG9uTG9hZCgpIHsKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgbGV0IHJlc3BvbnNpYmxlT2ZTdGF0aW9uSWRzOwogICAgICBpZiAodGhpcy5zeXNVc2VySW5mby5vcmdJbnN0aXR1dGlvbmFsID09PSAiMDIwMSIgJiYgdGhpcy5yZXN1bHQubGVuZ3RoID4gMCkgewogICAgICAgIHJlc3BvbnNpYmxlT2ZTdGF0aW9uSWRzID0gdGhpcy5yZXN1bHQuaW5jbHVkZXMoImEiKSA/IG51bGwgOiBbLi4udGhpcy5nZXRTdGF0aW9uSWRzKCldOwogICAgICB9IGVsc2UgewogICAgICAgIHJlc3BvbnNpYmxlT2ZTdGF0aW9uSWRzID0gbnVsbDsKICAgICAgfQogICAgICBsZXQgb25EdXR5VmFsdWUgPSBudWxsOwogICAgICBpZiAodGhpcy5vbkR1dHlbMF0gPT09IHRydWUgJiYgdGhpcy5vbkR1dHlbMV0gPT09IGZhbHNlKSB7CiAgICAgICAgb25EdXR5VmFsdWUgPSBudWxsOwogICAgICB9IGVsc2UgaWYgKHRoaXMub25EdXR5WzBdID09PSB0cnVlKSB7CiAgICAgICAgb25EdXR5VmFsdWUgPSB0cnVlOwogICAgICB9IGVsc2UgaWYgKHRoaXMub25EdXR5WzBdID09PSBmYWxzZSkgewogICAgICAgIG9uRHV0eVZhbHVlID0gZmFsc2U7CiAgICAgIH0KICAgICAgZ2V0RW1wbG95ZWVzKHsKICAgICAgICBwYWdlSW5kZXg6IHRoaXMucGFnZUluZGV4LAogICAgICAgIHBhZ2VTaXplOiAxMCwKICAgICAgICBzZWFyY2hNb2RlbDogIlNlY3VyaXR5U3RhdGlvbiIsCiAgICAgICAgc2VjdXJpdHlTdGF0aW9uSWRzOiBbLi4udGhpcy5nZXRTdGF0aW9uSWRzKCldLAogICAgICAgIGtleXdvcmQ6IHRoaXMua2V5d29yZCwKICAgICAgICBkZXNrVHlwZXM6IHRoaXMuJHJvdXRlLnF1ZXJ5LnN0YXRpb25UeXBlID09PSAiVGVtcG9yYXJ5U2VjdXJpdHkiID8gWyJUZW1wb3JhcnlTZWN1cml0eSJdIDogWyJOb3JtYWwiLCAiUHJvcHJpZXRvciJdLAogICAgICAgIG9uRHV0eTogb25EdXR5VmFsdWUsCiAgICAgICAgc3RhdGlvblR5cGVzOiB0aGlzLnN0YXRpb25UeXBlcywKICAgICAgICByZXNwb25zaWJsZU9mU3RhdGlvbklkczogcmVzcG9uc2libGVPZlN0YXRpb25JZHMsCiAgICAgIH0pCiAgICAgICAgLnRoZW4oKHJlcykgPT4gewogICAgICAgICAgdGhpcy5lbXBsb3llZUxpc3QgPSBbLi4udGhpcy5lbXBsb3llZUxpc3QsIC4uLnRoaXMucmVzZXRFbXBsb3llZUxpc3QocmVzKV0ubWFwKCh4KSA9PiB7CiAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgZHV0eVN0YXR1czogIiIsCiAgICAgICAgICAgICAgZHV0eVN0YXR1c1RleHQ6ICIiLAogICAgICAgICAgICAgIGlzU2VjdXJpdHk6IHgucnRzLmluY2x1ZGVzKCJTZWN1cml0eSIpLAogICAgICAgICAgICAgIGlzVGVtcG9yYXJ5U2VjdXJpdHk6IHgucnRzLmluY2x1ZGVzKCJTZWN1cml0eSIpICYmIHgucnRzLmluY2x1ZGVzKCJUZW1wb3JhcnlTZWN1cml0eSIpLAogICAgICAgICAgICAgIC4uLngsCiAgICAgICAgICAgIH07CiAgICAgICAgICB9KTsKICAgICAgICAgIC8vIOWKoOi9veeKtuaAgee7k+adnwogICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7CiAgICAgICAgICAvLyDmlbDmja7lhajpg6jliqDovb3lrozmiJAKICAgICAgICAgIGlmIChbLi4ucmVzXS5sZW5ndGggPD0gMCkgewogICAgICAgICAgICB0aGlzLmZpbmlzaGVkID0gdHJ1ZTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHRoaXMucGFnZUluZGV4Kys7CiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgICAuY2F0Y2goKGVycikgPT4gewogICAgICAgICAgY29uc29sZS5sb2coZXJyKTsKICAgICAgICB9KQogICAgICAgIC5maW5hbGx5KCgpID0+IHsKICAgICAgICAgIGlmICh0aGlzLmVtcGxveWVlTGlzdC5sZW5ndGggPiA1KSB7CiAgICAgICAgICAgIHRoaXMuJG5leHRUaWNrKCgpID0+IHsKICAgICAgICAgICAgICB0aGlzLnNjcm9sbFRvQm90dG9tKCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgfQogICAgICAgIH0pOwogICAgfSwKICAgIHNjcm9sbFRvQm90dG9tKCkgewogICAgICBjb25zdCBjb250YWluZXIgPSB0aGlzLiRyZWZzLnJlc3VsdHMuJGVsOwogICAgICBjb25zb2xlLmxvZyhjb250YWluZXIpOwogICAgICBjb250YWluZXIuc2Nyb2xsVG9wID0gY29udGFpbmVyLnNjcm9sbEhlaWdodDsKICAgIH0sCiAgICAvLyDph43nva7lrZfmrrUKICAgIHJlc2V0RW1wbG95ZWVMaXN0KGxpc3QpIHsKICAgICAgcmV0dXJuIGxpc3QubWFwKChpdGVtKSA9PiB7CiAgICAgICAgaXRlbS5hY3RpdmUgPSBmYWxzZTsKICAgICAgICBpdGVtWyJuYW1lU2xpY2UiXSA9IGl0ZW0ubmFtZS5zbGljZSgtMik7CiAgICAgICAgaXRlbVsiaWRDYXJkTm9IaWRlIl0gPSB0aGlzLnBhcnNlU3RyaW5nVG9TdGFyKGl0ZW0uaWRDYXJkTm8pOwogICAgICAgIGl0ZW1bImlkVmlzaWJsZSJdID0gZmFsc2U7CiAgICAgICAgaXRlbVsiY29udGFjdEhpZGUiXSA9IHRoaXMucGFyc2VTdHJpbmdUb1N0YXIoaXRlbS5jb250YWN0KTsKICAgICAgICBpdGVtWyJjb25jYXRWaXNpYmxlIl0gPSBmYWxzZTsKICAgICAgICBpdGVtWyJjb21wYW55TmFtZVNsaWNlIl0gPSB0ZXh0U2xpY2UoaXRlbS5jb21wYW55TmFtZSk7CiAgICAgICAgaXRlbVsic2VjdXJpdHlTdGF0aW9uTmFtZVNsaWNlIl0gPSB0ZXh0U2xpY2UoaXRlbS5zZWN1cml0eVN0YXRpb25OYW1lKTsKICAgICAgICBpdGVtWyJ0eXBlIl0gPSAiZW1wbG95ZWUiOwogICAgICAgIGl0ZW1bImlzUGhvbmUiXSA9IGZhbHNlOwogICAgICAgIGl0ZW1bImlzSWRDYXJkTm8iXSA9IGZhbHNlOwogICAgICAgIGl0ZW1bImNoZWNrZWQiXSA9IGZhbHNlOwogICAgICAgIHJldHVybiBpdGVtOwogICAgICB9KTsKICAgIH0sCiAgICBwYXJzZVN0cmluZ1RvU3RhcigpIHsKICAgICAgcmV0dXJuICIqKioqKioqKioqKioqKiI7CiAgICAgIC8vIHJldHVybiBzdHIubGVuZ3RoID4gMiA/IHN0ci5zdWJzdHIoMCwgMikgKyBuZXcgQXJyYXkoc3RyLmxlbmd0aCAtIDIpLmpvaW4oIioiKSArIHN0ci5zdWJzdHIoLTIpIDogc3RyOwogICAgfSwKICAgIHNlbGVjdChpdGVtKSB7CiAgICAgIGNvbnN0IHsgZHV0eVN0YXR1cywgY2hlY2tlZCB9ID0gaXRlbTsKICAgICAgaWYgKGR1dHlTdGF0dXMgPT09ICJTaWduSW4iKSB7CiAgICAgICAgaXRlbS5jaGVja2VkID0gIWNoZWNrZWQ7CiAgICAgIH0KICAgIH0sCiAgICBoYW5kbGVDaGVja0FsbCh2YWx1ZSkgewogICAgICBjb25zb2xlLmxvZyh2YWx1ZSk7CiAgICAgIC8vICB0aGlzLnJlc1Jlc3VsdC5mb3JFYWNoKChpdGVtKSA9PiAoaXRlbS5jaGVja2VkID0gdmFsdWUpKTsKICAgICAgdGhpcy5lbXBsb3llZUxpc3QuZm9yRWFjaCgoZW1wbG95ZWUpID0+IHsKICAgICAgICBjb25zdCB7IGR1dHlTdGF0dXMgfSA9IGVtcGxveWVlOwogICAgICAgIGlmIChkdXR5U3RhdHVzID09PSAiU2lnbkluIikgewogICAgICAgICAgZW1wbG95ZWUuY2hlY2tlZCA9IHZhbHVlOwogICAgICAgIH0KICAgICAgfSk7CiAgICB9LAogICAgdG9FbXBsb3llZShpdGVtKSB7CiAgICAgIHRoaXMuJHJvdXRlci5wdXNoKHsKICAgICAgICBwYXRoOiAiL2VtcGxveWVlSW5mbyIsCiAgICAgICAgcXVlcnk6IHsKICAgICAgICAgIHF1ZXJ5SWQ6IGl0ZW0uaWQsCiAgICAgICAgfSwKICAgICAgfSk7CiAgICB9LAogICAgZGlzcGF0Y2godHlwZSkgewogICAgICBjb25zb2xlLmxvZyh0eXBlKTsKICAgICAgY29uc3QgbWVtYmVyTGlzdCA9IHRoaXMuZW1wbG95ZWVMaXN0LmZpbHRlcigoeCkgPT4geC5jaGVja2VkKTsKICAgICAgdGhpcy5vbkRpc3BhdGNoKHsgdHlwZSwgbWVtYmVyTGlzdCB9KTsKICAgIH0sCiAgICBpbml0Q2FsbGluZyhncm91cENhbGwpIHsKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7CiAgICAgICAgdGhpcy5ncm91cENhbGwgPSBncm91cENhbGw7CiAgICAgICAgcmVzb2x2ZSgpOwogICAgICB9KTsKICAgIH0sCiAgICAvKioKICAgICAqIEDosIPluqbliY3lj4LmlbDorr7nva4KICAgICAqIEBwYXJhbSB0eXBlCiAgICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn0KICAgICAqLwogICAgc2V0Q2FsbFByb3BzKHR5cGUpIHsKICAgICAgaWYgKHR5cGUgPT09ICJ2aWRlbyIpIHsKICAgICAgICB0aGlzLnN0cmVhbS52aWRlbyA9IHRydWU7CiAgICAgICAgdGhpcy5zdHJlYW0uYXVkaW8gPSB0cnVlOwogICAgICAgIHRoaXMuY2FsbFR5cGUgPSAidmlkZW8iOwogICAgICAgIHRoaXMueWFyZG1hblR5cGUgPSAiMSI7CiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gImF1ZGlvIikgewogICAgICAgIHRoaXMuc3RyZWFtLnZpZGVvID0gZmFsc2U7CiAgICAgICAgdGhpcy5zdHJlYW0uYXVkaW8gPSB0cnVlOwogICAgICAgIHRoaXMuY2FsbFR5cGUgPSAiYXVkaW8iOwogICAgICAgIHRoaXMueWFyZG1hblR5cGUgPSAiMSI7CiAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gInZpZGVvTG9jYWxNdXRlIikgewogICAgICAgIHRoaXMuc3RyZWFtLnZpZGVvID0gZmFsc2U7CiAgICAgICAgdGhpcy5zdHJlYW0uYXVkaW8gPSB0cnVlOwogICAgICAgIHRoaXMuY2FsbFR5cGUgPSAidmlkZW8iOwogICAgICAgIHRoaXMueWFyZG1hblR5cGUgPSAiMiI7CiAgICAgIH0KICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOwogICAgfSwKICAgIC8qKgogICAgICogQOWkmuS6uuiwg+W6pgogICAgICogQHBhcmFtIHR5cGUKICAgICAqIEBwYXJhbSBtZW1iZXJMaXN0CiAgICAgKi8KICAgIG9uRGlzcGF0Y2goeyB0eXBlLCBtZW1iZXJMaXN0IH0pIHsKICAgICAgdGhpcy5tZW1iZXJMaXN0ID0gWy4uLm1lbWJlckxpc3RdOwogICAgICB0aGlzLm1lbWJlckxpc3QuZm9yRWFjaCgobWVtYmVyKSA9PiB7CiAgICAgICAgbWVtYmVyLnN0YXRlID0gIkNPTk5FQ1RJTkciOwogICAgICAgIG1lbWJlci5hY3Rpb24gPSAiIjsKICAgICAgfSk7CiAgICAgIGlmICh0aGlzLm1lbWJlckxpc3QubGVuZ3RoID4gMCkgewogICAgICAgIHRoaXMuc2V0Q2FsbFByb3BzKHR5cGUpLnRoZW4oKCkgPT4gewogICAgICAgICAgdGhpcy5zdGFydFZpZGVvRGlzcGF0Y2godGhpcy5tZW1iZXJMaXN0Lmxlbmd0aCA+IDEpOwogICAgICAgIH0pOwogICAgICB9IGVsc2UgewogICAgICAgIFRvYXN0LmZhaWwoIuiHs+WwkemAieaLqeS4gOWQjeiiq+iwg+W6puS6uiIpOwogICAgICB9CiAgICB9LAogICAgc3RhcnRWaWRlb0Rpc3BhdGNoKGdyb3VwQ2FsbCkgewogICAgICAvLyB0aGlzLiRidXMuJGVtaXQoInZpZGVvLWNhbGwiKTsKICAgICAgdGhpcy5pbml0Q2FsbGluZyhncm91cENhbGwpLnRoZW4oKCkgPT4gewogICAgICAgIC8vIHRoaXMuJHJlZnMuY2FsbExheWVyLnNob3dDYWxsaW5nID0gdHJ1ZTsKICAgICAgICB0aGlzLiRidXMuJGVtaXQoInZpZGVvLWNhbGwiKTsKICAgICAgfSk7CiAgICB9LAogICAgdmlkZW9Mb2NhbE11dGVDYWxsKCkgewogICAgICB0aGlzLm1lbWJlckxpc3QgPSBbdGhpcy5lbXBsb3llZV07CiAgICAgIHRoaXMuYWxsTWVtYmVycyA9IFtdOwogICAgICB0aGlzLm1lbWJlckxpc3QuZm9yRWFjaCgobWVtYmVyKSA9PiB7CiAgICAgICAgbWVtYmVyLnN0YXRlID0gIkNPTk5FQ1RJTkciOwogICAgICAgIG1lbWJlci5hY3Rpb24gPSAiIjsKICAgICAgICAvLyBtZW1iZXIuaWQgPSBtZW1iZXIuZW1wbG95ZWVJZAogICAgICB9KTsKICAgICAgdGhpcy5zdHJlYW0udmlkZW8gPSBmYWxzZTsKICAgICAgdGhpcy5zdHJlYW0uYXVkaW8gPSB0cnVlOwogICAgICB0aGlzLnlhcmRtYW5UeXBlID0gIjIiOwogICAgICB0aGlzLmNhbGxUeXBlID0gInZpZGVvIjsKICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOwogICAgfSwKICAgIHZpZGVvTG9jYWxNdXRlKCkgewogICAgICBjb25zb2xlLmxvZygi5LiK5ouJIiwgdGhpcy5pbmZvKTsKICAgICAgdGhpcy52aWRlb0xvY2FsTXV0ZUNhbGwoKS50aGVuKCgpID0+IHsKICAgICAgICB0aGlzLiRidXMuJGVtaXQoInZpZGVvLWNhbGwiKTsKICAgICAgfSk7CiAgICB9LAogICAgLyoqCiAgICAgKiBA6KeG6aKR6LCD5bqmMXYxCiAgICAgKi8KICAgIGRpc3BhdGNoT25lVmlkZW8oKSB7CiAgICAgIHRoaXMubWVtYmVyTGlzdCA9IFt0aGlzLmVtcGxveWVlXTsKICAgICAgdGhpcy5tZW1iZXJMaXN0LmZvckVhY2goKG1lbWJlcikgPT4gewogICAgICAgIG1lbWJlci5zdGF0ZSA9ICJDT05ORUNUSU5HIjsKICAgICAgICBtZW1iZXIuYWN0aW9uID0gIiI7CiAgICAgIH0pOwogICAgICB0aGlzLnNldENhbGxQcm9wcygidmlkZW8iKS50aGVuKCgpID0+IHsKICAgICAgICB0aGlzLnN0YXJ0VmlkZW9EaXNwYXRjaChmYWxzZSk7CiAgICAgIH0pOwogICAgfSwKICAgIC8qKgogICAgICogQOivremfs+iwg+W6pjF2MQogICAgICovCiAgICBkaXNwYXRjaE9uZUF1ZGlvKCkgewogICAgICB0aGlzLm1lbWJlckxpc3QgPSBbdGhpcy5lbXBsb3llZV07CiAgICAgIHRoaXMubWVtYmVyTGlzdC5mb3JFYWNoKChtZW1iZXIpID0+IHsKICAgICAgICBtZW1iZXIuc3RhdGUgPSAiQ09OTkVDVElORyI7CiAgICAgICAgbWVtYmVyLmFjdGlvbiA9ICIiOwogICAgICB9KTsKICAgICAgdGhpcy5zZXRDYWxsUHJvcHMoImF1ZGlvIikudGhlbigoKSA9PiB7CiAgICAgICAgdGhpcy5zdGFydFZpZGVvRGlzcGF0Y2goZmFsc2UpOwogICAgICB9KTsKICAgIH0sCiAgICBvcGVuR3JvdXBGb3JtRGlhbG9nKCkgewogICAgICBjb25zb2xlLmxvZyh0aGlzLmVtcGxveWVlTGlzdCk7CiAgICAgIGNvbnN0IG1lbWJlcnMgPSB0aGlzLmVtcGxveWVlTGlzdC5maWx0ZXIoKHgpID0+IHguY2hlY2tlZCk7CiAgICAgIGlmIChtZW1iZXJzLmxlbmd0aCA+IDApIHsKICAgICAgICBpZiAobWVtYmVycy5sZW5ndGggPiAxKSB7CiAgICAgICAgICAvLyDnvqTogYoKICAgICAgICAgIHRoaXMuY3JlYXRlR3JvdXBDb252ZXJzYXRpb24obWVtYmVycyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIC8vIOWNleS6uuiBiuWkqQogICAgICAgICAgdGhpcy5jaGFyYWN0ZXIobWVtYmVyc1swXSk7CiAgICAgICAgfQogICAgICB9IGVsc2UgewogICAgICAgIFRvYXN0LmZhaWwoIuiHs+WwkemAieaLqeS4gOWQjeiiq+iwg+W6puS6uiIpOwogICAgICB9CiAgICB9LAogICAgLyoqCiAgICAgKiBA5paH5a2X6LCD5bqm5LqL5Lu2LeWNleS6ugogICAgICovCiAgICBjaGFyYWN0ZXIoaW5mbykgewogICAgICBjb25zdCB7IHRlbmFudEltVXNlcklkIH0gPSBpbmZvOwogICAgICB0aW0uZ2V0Q29udmVyc2F0aW9uUHJvZmlsZShgQzJDJHt0ZW5hbnRJbVVzZXJJZH1gKS50aGVuKCh7IGRhdGEgfSkgPT4gewogICAgICAgIGNvbnNvbGUubG9nKCJnZXRDb252ZXJzYXRpb25Qcm9maWxlLS0tIiwgZGF0YSk7CiAgICAgICAgdGhpcy4kc3RvcmUuY29tbWl0KCJ1cGRhdGVDdXJyZW50Q29udmVyc2F0aW9uIiwgewogICAgICAgICAgLi4uZGF0YS5jb252ZXJzYXRpb24sCiAgICAgICAgICAuLi57CiAgICAgICAgICAgIGluZm8sCiAgICAgICAgICB9LAogICAgICAgIH0pOwogICAgICAgIGNvbnN0IHsgY29udmVyc2F0aW9uSUQgfSA9IGRhdGEuY29udmVyc2F0aW9uOwogICAgICAgIHRoaXMuJHN0b3JlLmRpc3BhdGNoKCJnZXRNZXNzYWdlTGlzdCIsIGNvbnZlcnNhdGlvbklEKTsKICAgICAgICB0aGlzLnNob3dDb252ZXJzYXRpb24gPSB0cnVlOwogICAgICB9KTsKICAgIH0sCiAgICAvKioKICAgICAqIEDorr7nva7nvqTogYrliJvlu7rmnaHku7YKICAgICAqIEBwYXJhbSBtZW1iZXJzCiAgICAgKiBAcmV0dXJucyB7e21lbWJlckxpc3Q6ICp9fQogICAgICovCiAgICBnZXRPcHRpb25zKG1lbWJlcnMpIHsKICAgICAgcmV0dXJuIHsKICAgICAgICB0eXBlOiB0aGlzLlRJTS5UWVBFUy5HUlBfV09SSywKICAgICAgICBuYW1lOiAi5oyH5oyl6LCD5bqmIiwKICAgICAgICBtZW1iZXJMaXN0OiBtZW1iZXJzLm1hcCgoeyB0ZW5hbnRJbVVzZXJJZCB9KSA9PiB7CiAgICAgICAgICByZXR1cm4geyB1c2VySUQ6IHRlbmFudEltVXNlcklkICsgIiIgfTsKICAgICAgICB9KSwKICAgICAgfTsKICAgIH0sCiAgICAvKioKICAgICAqIEDliJvlu7pJTeaWh+Wtl+e+pOiBigogICAgICogQHBhcmFtIG1lbWJlcnMKICAgICAqLwogICAgY3JlYXRlR3JvdXBDb252ZXJzYXRpb24obWVtYmVycykgewogICAgICBjb25zb2xlLmxvZyhtZW1iZXJzKTsKICAgICAgY29uc3QgZ3JvdXBPcHRpb25zID0gdGhpcy5nZXRPcHRpb25zKG1lbWJlcnMpOwogICAgICB0aW0KICAgICAgICAuY3JlYXRlR3JvdXAoeyAuLi5ncm91cE9wdGlvbnMgfSkKICAgICAgICAudGhlbigoaW1SZXNwb25zZSkgPT4gewogICAgICAgICAgVG9hc3Quc3VjY2Vzcyhg576k57uE77ya44CQJHtpbVJlc3BvbnNlLmRhdGEuZ3JvdXAubmFtZX3jgJHliJvlu7rmiJDlip9gKTsKICAgICAgICAgIHRoaXMuc2hvd0dyb3VwQ29udmVyc2F0aW9uKGltUmVzcG9uc2UuZGF0YSk7CiAgICAgICAgfSkKICAgICAgICAuY2F0Y2goKGVycm9yKSA9PiB7CiAgICAgICAgICBUb2FzdC5mYWlsKGVycm9yLm1lc3NhZ2UpOwogICAgICAgIH0pOwogICAgfSwKICAgIC8qKgogICAgICogQOaJk+W8gOe+pOiBiuW8ueahhgogICAgICogQHBhcmFtIGdyb3VwCiAgICAgKi8KICAgIHNob3dHcm91cENvbnZlcnNhdGlvbih7IGdyb3VwIH0pIHsKICAgICAgY29uc29sZS5sb2coImdyb3VwIGRhdGEgPT09IiwgZ3JvdXApOwogICAgICB0aW0uZ2V0Q29udmVyc2F0aW9uUHJvZmlsZShgR1JPVVAke2dyb3VwLmdyb3VwSUR9YCkudGhlbigoeyBkYXRhIH0pID0+IHsKICAgICAgICBjb25zb2xlLmxvZyhkYXRhKTsKICAgICAgICB0aGlzLiRzdG9yZS5jb21taXQoInVwZGF0ZUN1cnJlbnRDb252ZXJzYXRpb24iLCBkYXRhLmNvbnZlcnNhdGlvbik7CiAgICAgICAgY29uc3QgeyBjb252ZXJzYXRpb25JRCB9ID0gZGF0YS5jb252ZXJzYXRpb247CiAgICAgICAgdGhpcy4kc3RvcmUuZGlzcGF0Y2goImdldE1lc3NhZ2VMaXN0IiwgY29udmVyc2F0aW9uSUQpOwogICAgICAgIGNvbnNvbGUubG9nKHRoaXMuY3VycmVudENvbnZlcnNhdGlvbik7CiAgICAgICAgdGhpcy5zaG93Q29udmVyc2F0aW9uID0gdHJ1ZTsKICAgICAgfSk7CiAgICB9LAogICAgc2hvd01lbWJlcnMoKSB7CiAgICAgIC8vIOWPr+mAieaLqeeahOS6uuWwseaYr+iwg+W6puW8ueahhuWGheeahOS6uu+8jGNoZWNrZWTnmoTkurrmmK/lt7Lnu4/lnKjosIPluqbnmoTkurrvvIxhY3RpdmXnmoTkurrlsLHmmK/opoHliqDlhaXosIPluqbnmoTkuroKICAgICAgY29uc29sZS5sb2codGhpcy5lbXBsb3llZUxpc3QpOwogICAgICB0aGlzLmNhbGxpbmdNZW1iZXJzVmlzaWJsZSA9IHRydWU7CiAgICB9LAogICAgc2VuZFZpZGVvUm9vbU1zZyhyb29tSWQsIG1lbWJlckxpc3QsIFVzZUxpc3QpIHsKICAgICAgdGhpcy5jYWxsaW5nTWVtYmVyc1Zpc2libGUgPSBmYWxzZTsKICAgICAgdGhpcy4kcmVmcy5jYWxsTGF5ZXIuc2VuZFJvb21NZXNzYWdlKHJvb21JZCwgbWVtYmVyTGlzdCwgVXNlTGlzdCk7CiAgICB9LAogICAgb25DbG9zZUNhbGxpbmcoKSB7CiAgICAgIHRoaXMuY2FsbGluZ01lbWJlcnNWaXNpYmxlID0gZmFsc2U7CiAgICB9LAogICAgaGFuZGxlQ2xvc2UoKSB7CiAgICAgIHRoaXMub25TZWFyY2goKTsKICAgIH0sCiAgICBnZXRTdGF0aW9uVHlwZXNOYW1lKHN0YXRpb25UeXBlKSB7CiAgICAgIGlmICghc3RhdGlvblR5cGUpIHJldHVybiAiIjsKICAgICAgaWYgKHRoaXMuYWxsU3RhdGlvblR5cGVzLmxlbmd0aCA8PSAwKSByZXR1cm4gIiI7CiAgICAgIGxldCBzdGF0aW9uVHlwZXNOYW1lID0gIiI7CiAgICAgIGNvbnN0IHR5cGUgPSB0aGlzLmFsbFN0YXRpb25UeXBlcy5maWx0ZXIoKGl0ZW0pID0+IGl0ZW0uY29kZSA9PT0gc3RhdGlvblR5cGUpOwogICAgICBpZiAodHlwZSAmJiB0eXBlLmxlbmd0aCA+IDApIHsKICAgICAgICBzdGF0aW9uVHlwZXNOYW1lID0gdHlwZVswXS5uYW1lOwogICAgICB9CiAgICAgIHJldHVybiBzdGF0aW9uVHlwZXNOYW1lOwogICAgfSwKICB9LAogIGNyZWF0ZWQoKSB7CiAgICB0aGlzLnNldEFsbFN0YXRpb25UeXBlcygpOwogICAgdGhpcy5vbkxvYWQoKTsKICAgIHRoaXMuaW5pdFdzKCk7CiAgfSwKfTsK"},null]}