1 |
- {"remainingRequest":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\thread-loader\\dist\\cjs.js!E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\babel-loader\\lib\\index.js!E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\src\\views\\Customer\\CustomerAdmin\\CustomerList.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\src\\views\\Customer\\CustomerAdmin\\CustomerList.vue","mtime":1655374732000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\babel.config.js","mtime":1655374732000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\千鸟\\千鸟云商前端源代码\\源点计划\\jindouyunNewFront\\node_modules\\vue-loader\\lib\\index.js","mtime":1655715099000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuaW5jbHVkZXMuanMiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwppbXBvcnQgc3RhZmZMaXN0TW9kYWwgZnJvbSAiQC9jb21wb25lbnQvY29tbW9uL3N0YWZmTGlzdE1vZGFsIjsKaW1wb3J0IERlcGFydG1lbnRTZWwgZnJvbSAiQC9jb21wb25lbnQvY29tbW9uL0RlcGFydG1lbnRTZWwiOwppbXBvcnQgUmVnaW9uU2VsZWN0IGZyb20gIkAvY29tcG9uZW50L2NvbW1vbi9SZWdpb25TZWxlY3RKU09OIjsKaW1wb3J0IEVkaXRDdXN0b21lciBmcm9tICIuL0FkZEN1c3RvbWVyIjsKaW1wb3J0IFNlbGVjdFNob3AgZnJvbSAiQC9jb21wb25lbnQvZ29vZHMvU2VsZWN0U2hvcC52dWUiOyAvLyBpbXBvcnQgU2VsTWVtYmVyc2hpcCBmcm9tICJAL2NvbXBvbmVudC9nb29kcy9TZWxNZW1iZXJzaGlwLnZ1ZSI7CgppbXBvcnQgeyBnZXRBbGxTdGFmZiB9IGZyb20gIkAvYXBpL0RlcGFydG1lbnQiOwppbXBvcnQgeyBiYXRjaEVkaXRDdXN0b21lciwgdXBkYXRlQ3VzdG9tZXJTdGF0dXMsIHVwZGF0ZUN1c3RvbWVyQ2hlY2tTdGF0dXMsIGdldEFsbEN1c3RvbWVyLCBjdXN0b21lckV4cG9ydCwgLy8gc2VhcmNoQ3VzdG9tZXIsCmRlbEN1c3RvbWVyLCBnZXRBbGxDdXN0b21lckNvbW11bmljYXRpb24sIGFkZEN1c3RvbWVyQ29tbXVuaWNhdGlvbiwgZGVsQ3VzdG9tZXJDb21tdW5pY2F0aW9uLCB1cGRhdGVDdXN0b21lckNvbW11bmljYXRpb24sIHVwZGF0ZUN1c3RvbWVySW50ZWdyYWwsIHJlY2hhcmdlTWVtYmVyQmFsYW5jZSwgc2V0Q3VzdG9tZXJUeXBlIH0gZnJvbSAiQC9hcGkvQ3VzdG9tZXIiOwppbXBvcnQgeyBnZXRDdXN0b21lclNvdXJjZUxpc3QgfSBmcm9tICJAL2FwaS9TeXN0ZW0iOwppbXBvcnQgeyBtYXBHZXR0ZXJzIH0gZnJvbSAidnVleCI7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAiQ3VzdG9tZXJMaXN0IiwKICBjb21wb25lbnRzOiB7CiAgICBEZXBhcnRtZW50U2VsLAogICAgUmVnaW9uU2VsZWN0LAogICAgRWRpdEN1c3RvbWVyLAogICAgU2VsZWN0U2hvcCwKICAgIHN0YWZmTGlzdE1vZGFsIC8vIFNlbE1lbWJlcnNoaXAsCgogIH0sCgogIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICB0eXBlX29wdGlvbnM6IFt7CiAgICAgICAgdHlwZTogNSwKICAgICAgICBsYWJlbDogIuWKoCIKICAgICAgfSwgewogICAgICAgIHR5cGU6IDQsCiAgICAgICAgbGFiZWw6ICLlh48iCiAgICAgIH1dLAogICAgICBiYWxhbmNlX3R5cGU6IDUsCiAgICAgIC8vIOenr+WIhgogICAgICBpbnRlZ3JhbF90eXBlOiA1LAogICAgICAvLyDkvZnpop0KICAgICAgaW50ZWdyYWxfbnVtOiAwLAogICAgICAvLyDnp6/liIYKICAgICAgbWVtYmVyX2JhbGFuY2U6IDAsCiAgICAgIC8v5L2Z6aKdCiAgICAgIGZvbGxvd0xpc3Q6IFtdLAogICAgICBvcmRlcl9pZDogIiIsCiAgICAgIHN0YWZmX3Nob3c6IGZhbHNlLAogICAgICBjaGVja2VkQWxsOiBmYWxzZSwKICAgICAgY3VzdG9tZXJfaWQ6IDAsCiAgICAgIGRyYXdlcl90aXQ6ICIiLAogICAgICBkcmF3ZXI6IGZhbHNlLAogICAgICBjb250YWN0OiBbXSwKICAgICAgZGVwYXJ0bWVudDogW10sCiAgICAgIHJlZ2lvbjogW10sCiAgICAgIHNlYXJjaF9mb3JtOiB7CiAgICAgICAgcGhvbmU6ICIiLAogICAgICAgIHBhZ2U6IHRoaXMucGFnZSwKICAgICAgICBwYWdlU2l6ZTogdGhpcy5wYWdlU2l6ZSwKICAgICAgICBrZXl3b3JkOiAiIiwKICAgICAgICB0eXBlOiAiIiwKICAgICAgICBwcm92aW5jZUNvZGU6ICIiLAogICAgICAgIGNpdHlDb2RlOiAiIiwKICAgICAgICBkaXN0cmljdENvZGU6ICIiLAogICAgICAgIGVuYWJsZVN0YXR1czogIiIsCiAgICAgICAgZGVwYXJ0bWVudElkOiAiIiwKICAgICAgICBzaG9wSWQ6ICIiLAogICAgICAgIC8vIOWVhumTuklkCiAgICAgICAgLy8gbWVtYmVyc2hpcElkOiAiIiwgLy/kvJrlkZjljaFpZAogICAgICAgIHRpbWU6ICIiLAogICAgICAgIGNvbnRlbnQ6ICIiLAogICAgICAgIHNhbGVzTWFuSWQ6ICIiLAogICAgICAgIHNvdXJjZTogIiIsCiAgICAgICAgdGFnOiAiIgogICAgICB9LAogICAgICBVc2VyVHlwZTogW3sKICAgICAgICB2YWx1ZTogIjEiLAogICAgICAgIGxhYmVsOiAi5a6i5oi357G75Z6LIgogICAgICB9XSwKICAgICAgY3VzdG9tZXJMYWJlbDogW3sKICAgICAgICB2YWx1ZTogIumAiemhuTEiLAogICAgICAgIGxhYmVsOiAi5a6i5oi35qCH562+IgogICAgICB9XSwKICAgICAgY3VzdG9tZXJTdGF0dXM6IFt7CiAgICAgICAgdmFsdWU6ICI1IiwKICAgICAgICBsYWJlbDogIuW3suWQr+eUqCIKICAgICAgfSwgewogICAgICAgIHZhbHVlOiAiNCIsCiAgICAgICAgbGFiZWw6ICLlt7LlgZznlKgiCiAgICAgIH1dLAogICAgICB2YWx1ZTogIiIsCiAgICAgIGZvcm1MYWJlbFdpZHRoOiAiMTAwcHgiLAogICAgICBjaGVja2VkOiBmYWxzZSwKICAgICAgZm9ybTogewogICAgICAgIGtleTogIiIsCiAgICAgICAgdHlwZTogIiIsCiAgICAgICAgY2xhc3NpZnk6IFtdLAogICAgICAgIGJyYW5kOiAiIgogICAgICB9LAogICAgICB0b3RhbDogMCwKICAgICAgcGFnZTogMSwKICAgICAgcGFnZVNpemU6IDEwLAogICAgICByb2xlSWQ6ICIiLAogICAgICBzZWFyY2hfa2V5OiAiIiwKICAgICAgZGVwYXJ0bWVudFBpZFBhdGg6IFtdLAogICAgICB0YWJsZURhdGE6IFtdLAogICAgICB0b3RhbF9jb3VudDogMCwKICAgICAgYmF0Y2hTZXR0aW5nVmlzaWJsZTogZmFsc2UsCiAgICAgIC8vIOaJuemHj+iuvue9ruS4muWKoeWRmOaYvuekuuaOp+WItgogICAgICBiYXRjaFNldHRpbmdUeXBlOiBmYWxzZSwKICAgICAgLy8g5om56YeP6K6+572u5a6i5oi357G75Z6L5pi+56S65o6n5Yi2CiAgICAgIGJhdGNoU2V0dGluZzogewogICAgICAgIHJlZ2lvbjogIiIsCiAgICAgICAgdHlwZTogIiIKICAgICAgfSwKICAgICAgYmF0Y2hTZXR0aW5nV2lkdGg6ICI4MHB4IiwKICAgICAgLy8g5om56YeP6K6+572u5Lia5Yqh5ZGY5LitIumDqOmXqO+8miLnmoTplb/luqYKICAgICAgb3B0aW9uczogW10sCiAgICAgIC8vIOS4muWKoeWRmOWIl+ihqOaVsOe7hAogICAgICBpZHM6IFtdLAogICAgICAvLyDlrqLmiLdpZOaVsOe7hAogICAgICB1c2VyQ2VudGVySWRzOiBbXSwKICAgICAgLy8g5a6i5oi3aWTmlbDnu4QKICAgICAgZGVwYXJ0bWVudElkOiAiIiwKICAgICAgLy8g6YOo6ZeoaWQKICAgICAgc2FsZW1hbjogIiIsCiAgICAgIC8vIOS4muWKoeWRmGlkCiAgICAgIHNlbGVjdGlvbjogW10sCiAgICAgIC8vIOWuouaIt+WIl+ihqOmAieS4reaVsOe7hAogICAgICBjaGVja0xpc3Q6IFsi5a6i5oi357G75Z6LIiwgIuWVhumTuiIsICLkuJrliqHlkZgiLCAi5a6h5qC454q25oCBIiwgIuazqOWGjOaXtumXtCIsICLluJDlj7fnirbmgIEiXSwKICAgICAgY29sdW1uczogW3sKICAgICAgICBsYWJlbDogIuWuouaIt+exu+WeiyIKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAi5ZWG6ZO6IgogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICLkuJrliqHlkZgiCiAgICAgIH0sIHsKICAgICAgICBsYWJlbDogIuWuoeaguOeKtuaAgSIKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAi5rOo5YaM5pe26Ze0IgogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICLluJDlj7fnirbmgIEiCiAgICAgIH1dLAogICAgICB0eXBlRmxhZzogdHJ1ZSwKICAgICAgc2hvcEZsYWc6IHRydWUsCiAgICAgIHNhbGVzbWFuRmxhZzogdHJ1ZSwKICAgICAgYXVkaXRTdGF0dXNGbGFnOiB0cnVlLAogICAgICB0aW1lRmxhZzogdHJ1ZSwKICAgICAgYWNjb3VudFN0YXR1c0ZsYWc6IHRydWUsCiAgICAgIGZvbGxvd1VwUmVjb3Jkc0ZsYWc6IGZhbHNlLAogICAgICBjb3JlRmxhZzogZmFsc2UsCiAgICAgIGlzc2VyY2g6IHRydWUsCiAgICAgIHNlYXJjaERhdGU6IHt9LAogICAgICBjdXN0b21lcklkOiAiIiwKICAgICAgZm9sbG93UGFnZTogMSwKICAgICAgZm9sbG93UGFnZVNpemU6IDEwLAogICAgICBmb2xsb3dUb3RhbDogMCwKICAgICAgdXBkYXRlRm9sbG93VmFsdWU6IHt9LAogICAgICB1cGRhdGVGb2xsb3dMaXN0OiAiIiwKICAgICAgc291cmNlX2xpc3Q6IFt7CiAgICAgICAgbGFiZWw6ICJpb3MiLAogICAgICAgIHRhZzogImlvcyIsCiAgICAgICAgdmFsdWU6IDEKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAi5a6J5Y2TQVBQIiwKICAgICAgICB0YWc6ICJhbmRyb2lkIiwKICAgICAgICB2YWx1ZTogMgogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICLlsI/nqIvluo8iLAogICAgICAgIHRhZzogIm1pbmlQcm9ncmFtIiwKICAgICAgICB2YWx1ZTogMwogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICLlkI7lj7DliJvlu7oiLAogICAgICAgIHRhZzogIm1hbmFnZSIsCiAgICAgICAgdmFsdWU6IDQKICAgICAgfSwgewogICAgICAgIGxhYmVsOiAiSDXpobXpnaIiLAogICAgICAgIHRhZzogIkg1IiwKICAgICAgICB2YWx1ZTogNQogICAgICB9LCB7CiAgICAgICAgbGFiZWw6ICJQY+mhtemdoiIsCiAgICAgICAgdGFnOiAiUGMiLAogICAgICAgIHZhbHVlOiA2CiAgICAgIH1dLAogICAgICBjdXN0b21lclR5cGU6IFtdCiAgICB9OwogIH0sCgogIGNvbXB1dGVkOiB7IC4uLm1hcEdldHRlcnMoewogICAgICBzdG9yZURhdGE6ICJNVXNlci9zdG9yZURhdGEiCiAgICB9KQogIH0sCgogIGFzeW5jIG1vdW50ZWQoKSB7CiAgICBpZiAoWzIsIDNdLmluY2x1ZGVzKHRoaXMuc3lzdGVtVHlwZSkpIHsvLyB0aGlzLnNlYXJjaF9mb3JtLnNob3BJZCA9IHRoaXMuc3RvcmVEYXRhLmlkOwogICAgfSAvLyDliLDmnJ/mj5DnpLoKCgogICAgYXdhaXQgdGhpcy5lbnRlckV4cGlyZVRpbWUoKTsKICAgIGF3YWl0IHRoaXMuZ2V0VXNlckxpc3QoKTsKICB9LAoKICBhY3RpdmF0ZWQoKSB7CiAgICBpZiAodGhpcy4kX2lzSW5pdCgpKSByZXR1cm47CiAgICB0aGlzLmdldFVzZXJMaXN0KCk7CiAgfSwKCiAgY3JlYXRlZCgpIHsKICAgIHRoaXMuZ2V0QWxsU3RhZmYoKTsKICAgIHRoaXMuZ2V0Q3VzdG9tZXJTb3VyY2VMaXN0KCk7CiAgfSwKCiAgbWV0aG9kczogewogICAgc2hvd1NldEludGVncmFsKGluZGV4KSB7CiAgICAgIHRoaXMudGFibGVEYXRhLmZvckVhY2goaXRlbSA9PiBpdGVtLmludGVncmFsX2ZhbHNlX3Zpc2libGUgPSBmYWxzZSk7CiAgICAgIHRoaXMuaW50ZWdyYWxfbnVtID0gdGhpcy50YWJsZURhdGFbaW5kZXhdLmludGVncmFsOwogICAgICB0aGlzLnRhYmxlRGF0YVtpbmRleF0uaW50ZWdyYWxfZmFsc2VfdmlzaWJsZSA9IHRydWU7CiAgICB9LAoKICAgIHNob3dTZXRCYWxhbmNlKGluZGV4KSB7CiAgICAgIHRoaXMudGFibGVEYXRhLmZvckVhY2goaXRlbSA9PiBpdGVtLmJhbGFuY2VfZmFsc2VfdmlzaWJsZSA9IGZhbHNlKTsKICAgICAgdGhpcy5tZW1iZXJfYmFsYW5jZSA9IHRoaXMudGFibGVEYXRhW2luZGV4XS5tZW1iZXJCYWxhbmNlOwogICAgICB0aGlzLnRhYmxlRGF0YVtpbmRleF0uYmFsYW5jZV9mYWxzZV92aXNpYmxlID0gdHJ1ZTsKICAgIH0sCgogICAgLy8g5L+u5pS556ev5YiGCiAgICBhc3luYyB1cGRhdGVDdXN0b21lckludGVncmFsKGluZGV4KSB7CiAgICAgIGlmICh0aGlzLmludGVncmFsX251bSA8PSAwKSB7CiAgICAgICAgdGhpcy4kbWVzc2FnZS53YXJuaW5nKCLor7fovpPlhaXlpKfkuo4w55qE5YC8Iik7CiAgICAgICAgcmV0dXJuOwogICAgICB9CgogICAgICBjb25zdCBkYXRhID0gYXdhaXQgdXBkYXRlQ3VzdG9tZXJJbnRlZ3JhbCh7CiAgICAgICAgY3VzdG9tZXJJZDogdGhpcy50YWJsZURhdGFbaW5kZXhdLmlkLAogICAgICAgIGludGVncmFsOiB0aGlzLmludGVncmFsX251bSwKICAgICAgICB0eXBlOiB0aGlzLmludGVncmFsX3R5cGUsCiAgICAgICAgZGVzYzogIuezu+e7n+WFheWAvCIKICAgICAgfSk7CiAgICAgIHRoaXMuJG1lc3NhZ2Uuc3VjY2Vzcygi5L+u5pS55oiQ5YqfIik7CiAgICAgIHRoaXMudGFibGVEYXRhW2luZGV4XS5pbnRlZ3JhbF9mYWxzZV92aXNpYmxlID0gZmFsc2U7CiAgICAgIHRoaXMuZ2V0VXNlckxpc3QoKTsKICAgIH0sCgogICAgLy8g5L+u5pS55L2Z6aKdCiAgICBhc3luYyByZWNoYXJnZU1lbWJlckJhbGFuY2UoaW5kZXgpIHsKICAgICAgaWYgKHRoaXMubWVtYmVyX2JhbGFuY2UgPD0gMCkgewogICAgICAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZygi6K+36L6T5YWl5aSn5LqOMOeahOWAvCIpOwogICAgICAgIHJldHVybjsKICAgICAgfQoKICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHJlY2hhcmdlTWVtYmVyQmFsYW5jZSh7CiAgICAgICAgY3VzdG9tZXJJZDogdGhpcy50YWJsZURhdGFbaW5kZXhdLmlkLAogICAgICAgIG1vbmV5OiB0aGlzLm1lbWJlcl9iYWxhbmNlLAogICAgICAgIHR5cGU6IHRoaXMuYmFsYW5jZV90eXBlLAogICAgICAgIHB1cnBvc2U6ICLns7vnu5/lhYXlgLwiCiAgICAgIH0pOwogICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoIuS/ruaUueaIkOWKnyIpOwogICAgICB0aGlzLnRhYmxlRGF0YVtpbmRleF0uYmFsYW5jZV9mYWxzZV92aXNpYmxlID0gZmFsc2U7CiAgICAgIHRoaXMuZ2V0VXNlckxpc3QoKTsKICAgIH0sCgogICAgLy8g5om56YeP6K6+572u5Lia5Yqh5ZGY56Gu5a6aCiAgICBkZXBhcnRtZW50Q2hhbmdlKHZhbCkgewogICAgICBpZiAodmFsLmxlbmd0aCkgewogICAgICAgIHRoaXMuZGVwYXJ0bWVudElkID0gdmFsOwogICAgICAgIHRoaXMuZ2V0QWxsU3RhZmYodmFsW3ZhbC5sZW5ndGggLSAxXSk7CiAgICAgIH0KICAgIH0sCgogICAgLy8gIOiOt+WPluWIl+ihqAogICAgYXN5bmMgZ2V0QWxsU3RhZmYoZGVwYXJ0bWVudElkKSB7CiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBnZXRBbGxTdGFmZih7CiAgICAgICAgcGFnZTogMSwKICAgICAgICBwYWdlU2l6ZTogNTAsCiAgICAgICAgZGVwYXJ0bWVudElkOiBkZXBhcnRtZW50SWQKICAgICAgfSk7CiAgICAgIHRoaXMub3B0aW9ucyA9IGRhdGEuZGF0YTsKICAgIH0sCgogICAgLy8g5YiX6KGo5Y+M5Ye75LqL5Lu2CiAgICAvLyBnb0RldGFpbChyb3cpIHsKICAgIC8vICAgaWYgKCF0aGlzLiRhY2Nlc3NDaGVjayh0aGlzLiRBY2Nlc3MuQ3VzdG9tZXJMaXN0R2V0Q3VzdG9tZXJJbmZvKSkgewogICAgLy8gICAgIHJldHVybjsKICAgIC8vICAgfQogICAgLy8gICB0aGlzLiRyb3V0ZXIucHVzaChgL0N1c3RvbWVyL0N1c3RvbWVyQWRtaW4vQ3VzdG9tZXJEZXRhaWwvJHtyb3cuaWR9YCk7CiAgICAvLyB9LAogICAgLy8g5a+85Ye65pe25LqL5Lu2CiAgICBhc3luYyBleHBvcnREYXRhKCkgewogICAgICBjb25zdCBwYXJhbXMgPSB7CiAgICAgICAgcGFnZTogdGhpcy5wYWdlLAogICAgICAgIHBhZ2VTaXplOiB0aGlzLnBhZ2VTaXplLAogICAgICAgIGtleXdvcmQ6IHRoaXMuc2VhcmNoX2Zvcm0ua2V5d29yZCwKICAgICAgICB0eXBlOiB0aGlzLnNlYXJjaF9mb3JtLnR5cGUsCiAgICAgICAgcHJvdmluY2VDb2RlOiB0aGlzLnNlYXJjaF9mb3JtLnByb3ZpbmNlQ29kZSwKICAgICAgICBjaXR5Q29kZTogdGhpcy5zZWFyY2hfZm9ybS5jaXR5Q29kZSwKICAgICAgICBkaXN0cmljdENvZGU6IHRoaXMuc2VhcmNoX2Zvcm0uZGlzdHJpY3RDb2RlLAogICAgICAgIHN0YXR1czogMiwKICAgICAgICBlbmFibGVTdGF0dXM6IHRoaXMuc2VhcmNoX2Zvcm0uZW5hYmxlU3RhdHVzLAogICAgICAgIC8vIOemgeeUqOWQr+eUqAogICAgICAgIGRlcGFydG1lbnRJZDogdGhpcy5zZWFyY2hfZm9ybS5kZXBhcnRtZW50SWQsCiAgICAgICAgc2hvcElkOiB0aGlzLnNlYXJjaF9mb3JtLnNob3BJZCwKICAgICAgICBzYWxlc01hbklkOiAiIiwKICAgICAgICBzdGFydDogIiIsCiAgICAgICAgZW5kOiAiIgogICAgICB9OwogICAgICBjb25zdCB0YXJnZXQgPSBhd2FpdCBjdXN0b21lckV4cG9ydChwYXJhbXMpOwogICAgfSwKCiAgICAvLyDmsqHmnInnlKjliLDkuovku7YKICAgIGFzeW5jIHVwZGF0ZUF1ZGl0U3RhdHVzKHJvdykgewogICAgICB0aGlzLiRjb25maXJtKCLnoa7lrpropoHlrqHmoLjmraTnlKjmiLflkJc/IiwgIuaPkOekuiIsIHsKICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogIuehruWumiIsCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogIuWPlua2iCIsCiAgICAgICAgdHlwZTogIndhcm5pbmciCiAgICAgIH0pLnRoZW4oYXN5bmMgKCkgPT4gewogICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCB1cGRhdGVDdXN0b21lckNoZWNrU3RhdHVzKHsKICAgICAgICAgIGlkOiByb3cuaWQsCiAgICAgICAgICBzdGF0dXM6IDIKICAgICAgICB9KTsKICAgICAgICB0aGlzLmdldFVzZXJMaXN0KCk7CiAgICAgICAgdGhpcy4kbWVzc2FnZSh7CiAgICAgICAgICB0eXBlOiAic3VjY2VzcyIsCiAgICAgICAgICBtZXNzYWdlOiAi5a6h5qC45oiQ5YqfIgogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0sCgogICAgLy8g5p+l55yL57uE5Lu25a2Q5Lyg54i2CiAgICBzdWJTdWNjZXNzKCkgewogICAgICB0aGlzLmRyYXdlciA9IGZhbHNlOwogICAgICB0aGlzLnBhZ2VDaGFuZ2UoMSk7CiAgICB9LAoKICAgIC8vIOafpeeci+S6i+S7tgogICAgZWRpdERhdGEocm93KSB7CiAgICAgIHRoaXMuY3VzdG9tZXJfaWQgPSByb3cuaWQ7CiAgICAgIHRoaXMuZHJhd2VyX3RpdCA9IHJvdy5uYW1lOwogICAgICB0aGlzLmRyYXdlciA9IHRydWU7CiAgICB9LAoKICAgIC8vIOmAieaLqeWVhumTugogICAgc2VsU2hvcCh2YWwsIHJvdykgewogICAgICB0aGlzLnBhZ2VDaGFuZ2UoMSk7CiAgICB9LAoKICAgIC8v6YCJ5oup5Lya5ZGY5Y2hCiAgICAvLyBzZWxNZW1iZXJzaGlwSWQoKSB7CiAgICAvLyAgIHRoaXMucGFnZUNoYW5nZSgxKTsKICAgIC8vIH0sCiAgICBzaG9wQ2xlYXIoKSB7CiAgICAgIHRoaXMuc2VhcmNoX2Zvcm0uc2hvcElkID0gIiI7CiAgICAgIHRoaXMucGFnZUNoYW5nZSgxKTsKICAgIH0sCgogICAgLy8gbWVtYmVyc2hpcENsZWFyKCkgewogICAgLy8gICB0aGlzLnNlYXJjaF9mb3JtLm1lbWJlcnNoaXBJZCA9ICIiOwogICAgLy8gICB0aGlzLnBhZ2VDaGFuZ2UoMSk7CiAgICAvLyB9LAogICAgLy8g6YCJ5oup6YOo6ZeoCiAgICBzZWxCcmFuY2godmFsKSB7CiAgICAgIHRoaXMuc2VhcmNoX2Zvcm0uZGVwYXJ0bWVudElkID0gdmFsW3ZhbC5sZW5ndGggLSAxXTsKICAgICAgdGhpcy5wYWdlQ2hhbmdlKDEpOwogICAgfSwKCiAgICAvLyDpgInmi6nljLrln58KICAgIHJlZ2lvbkNoYW5nZSh2YWwpIHsKICAgICAgdGhpcy5zZWFyY2hfZm9ybS5wcm92aW5jZUNvZGUgPSB2YWxbMF07CiAgICAgIHRoaXMuc2VhcmNoX2Zvcm0uY2l0eUNvZGUgPSB2YWxbMV07CiAgICAgIHRoaXMuc2VhcmNoX2Zvcm0uZGlzdHJpY3RDb2RlID0gdmFsWzJdOwogICAgICB0aGlzLnBhZ2VDaGFuZ2UoMSk7CiAgICB9LAoKICAgIC8vICDlrqLmiLfnirbmgIEKICAgIGN1c3RvbWVyQ2hhbmdlKHZhbCkgewogICAgICB0aGlzLnNlYXJjaF9mb3JtLmVuYWJsZVN0YXR1cyA9IHZhbDsKICAgICAgdGhpcy5wYWdlQ2hhbmdlKDEpOwogICAgfSwKCiAgICAvLyDojrflj5blrqLmiLfliJfooaggIGdldEFsbEN1c3RvbWVyCiAgICBhc3luYyBnZXRBbGxDdXN0b21lcigpIHsKICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IGdldEFsbEN1c3RvbWVyKHsKICAgICAgICBwYWdlOiB0aGlzLnBhZ2UsCiAgICAgICAgcGFnZVNpemU6IHRoaXMucGFnZVNpemUsCiAgICAgICAgc3RhdHVzOiAyLAogICAgICAgIHNob3BJZDogdGhpcy5zZWFyY2hfZm9ybS5zaG9wSWQsCiAgICAgICAga2V5d29yZDogdGhpcy5zZWFyY2hfZm9ybS5rZXl3b3JkLAogICAgICAgIGVuYWJsZVN0YXR1czogdGhpcy5zZWFyY2hfZm9ybS5lbmFibGVTdGF0dXMsCiAgICAgICAgLy8g56aB55So5ZCv55SoCiAgICAgICAgc2FsZXNNYW5JZDogdGhpcy5zZWFyY2hfZm9ybS5zYWxlc01hbklkLAogICAgICAgIHNvdXJjZTogdGhpcy5zZWFyY2hfZm9ybS5zb3VyY2UsCiAgICAgICAgdGFnOiB0aGlzLnNlYXJjaF9mb3JtLnRhZywKICAgICAgICBwcm92aW5jZUNvZGU6IHRoaXMuc2VhcmNoX2Zvcm0ucHJvdmluY2VDb2RlLAogICAgICAgIGNpdHlDb2RlOiB0aGlzLnNlYXJjaF9mb3JtLmNpdHlDb2RlLAogICAgICAgIGRpc3RyaWN0Q29kZTogdGhpcy5zZWFyY2hfZm9ybS5kaXN0cmljdENvZGUKICAgICAgfSk7CiAgICAgIHRoaXMudGFibGVEYXRhID0gZGF0YS5kYXRhLm1hcChpdGVtID0+IHsKICAgICAgICByZXR1cm4geyAuLi5pdGVtLAogICAgICAgICAgaW50ZWdyYWxfZmFsc2VfdmlzaWJsZTogZmFsc2UsCiAgICAgICAgICBiYWxhbmNlX2ZhbHNlX3Zpc2libGU6IGZhbHNlCiAgICAgICAgfTsKICAgICAgfSk7CiAgICAgIHRoaXMuY29udGFjdCA9IGRhdGEuZGF0YS5jb250YWN0OwogICAgICB0aGlzLnRvdGFsID0gZGF0YS5wYWdlVG90YWw7CiAgICB9LAoKICAgIC8vICDliKTmlq0KICAgIGdldFVzZXJMaXN0KCkgewogICAgICB0aGlzLmdldEFsbEN1c3RvbWVyKCk7CiAgICB9LAoKICAgIC8vICDliKDpmaTmjqXlj6MKICAgIC8vIGRlbEN1c3RvbWVyKGlkKSB7CiAgICAvLyAgIHRoaXMuJGNvbmZpcm0oIuS9oOehruWumuWIoOmZpOivpeeUqOaItyIsIHsKICAgIC8vICAgICBjb25maXJtQnV0dG9uVGV4dDogIuehruWumiIsCiAgICAvLyAgICAgY2FuY2VsQnV0dG9uVGV4dDogIuWPlua2iCIsCiAgICAvLyAgICAgdHlwZTogIndhcm5pbmciLAogICAgLy8gICB9KS50aGVuKGFzeW5jICgpID0+IHsKICAgIC8vICAgICBjb25zdCBkYXRhID0gYXdhaXQgZGVsQ3VzdG9tZXIoaWQpOwogICAgLy8KICAgIC8vICAgICB0aGlzLmdldFVzZXJMaXN0KCk7CiAgICAvLyAgICAgdGhpcy4kbWVzc2FnZSh7CiAgICAvLyAgICAgICB0eXBlOiAic3VjY2VzcyIsCiAgICAvLyAgICAgICBtZXNzYWdlOiAi5Yig6Zmk5oiQ5YqfISIsCiAgICAvLyAgICAgfSk7CiAgICAvLyAgIH0pOwogICAgLy8gfSwKICAgIC8vIOemgeeUqOWQr+eUqAogICAgYXN5bmMgdXBkYXRlRW5hYmxlU3RhdHVzKHZhbCwgcm93KSB7CiAgICAgIHRyeSB7CiAgICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHVwZGF0ZUN1c3RvbWVyU3RhdHVzKHsKICAgICAgICAgIGlkOiByb3cuaWQsCiAgICAgICAgICBlbmFibGVTdGF0dXM6IHZhbAogICAgICAgIH0pOwogICAgICAgIHRoaXMuJG1lc3NhZ2UoewogICAgICAgICAgdHlwZTogInN1Y2Nlc3MiLAogICAgICAgICAgbWVzc2FnZTogIuaTjeS9nOaIkOWKnyEiCiAgICAgICAgfSk7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICB0aGlzLmdldFVzZXJMaXN0KCk7CiAgICAgIH0KICAgIH0sCgogICAgLy8g5YiH6aG1CiAgICBwYWdlQ2hhbmdlKHZhbCkgewogICAgICB0aGlzLnBhZ2UgPSB2YWw7CiAgICAgIHRoaXMuZ2V0VXNlckxpc3QoKTsKICAgIH0sCgogICAgLy8g5q+P6aG15pWw5o2u5aSn5bCP5pS55Y+YCiAgICBzaXplQ2hhbmdlKHZhbCkgewogICAgICB0aGlzLnBhZ2VTaXplID0gdmFsOwogICAgICB0aGlzLnBhZ2VDaGFuZ2UoMSk7CiAgICB9LAoKICAgIC8vIOeCueWHuy3mibnph4/orr7nva7kuJrliqHlkZgKICAgIGNsaWNrQmF0Y2hTZXR0aW5nKCkgewogICAgICBpZiAodGhpcy5zZWxlY3Rpb24ubGVuZ3RoID4gMCkgewogICAgICAgIHRoaXMuYmF0Y2hTZXR0aW5nVmlzaWJsZSA9IHRydWU7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy4kbWVzc2FnZSh7CiAgICAgICAgICB0eXBlOiAid2FybmluZyIsCiAgICAgICAgICBtZXNzYWdlOiAi6K+36YCJ5oup6KaB5pON5L2c55qE5a6i5oi3IgogICAgICAgIH0pOwogICAgICB9CiAgICB9LAoKICAgIC8v5om56YeP6K6+572u5a6i5oi357G75Z6LCiAgICBjbGlja1NldHRpbmdUeXBlKCkgewogICAgICBpZiAodGhpcy5zZWxlY3Rpb24ubGVuZ3RoID4gMCkgewogICAgICAgIHRoaXMuYmF0Y2hTZXR0aW5nVHlwZSA9IHRydWU7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy4kbWVzc2FnZSh7CiAgICAgICAgICB0eXBlOiAid2FybmluZyIsCiAgICAgICAgICBtZXNzYWdlOiAi6K+36YCJ5oup6KaB5pON5L2c55qE5a6i5oi3IgogICAgICAgIH0pOwogICAgICB9CiAgICB9LAoKICAgIC8vIOaJuemHj+WIoOmZpOWuouaItwogICAgYmF0Y2hEZWxDdXN0b21lcigpIHsKICAgICAgaWYgKHRoaXMuc2VsZWN0aW9uLmxlbmd0aCA+IDApIHsKICAgICAgICB0aGlzLiRjb25maXJtKCLnoa7lrpropoHliKDpmaTov5nkupvlrqLmiLflkJc/IiwgIuaPkOekuiIsIHsKICAgICAgICAgIGNvbmZpcm1CdXR0b25UZXh0OiAi56Gu5a6aIiwKICAgICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICLlj5bmtogiLAogICAgICAgICAgdHlwZTogIndhcm5pbmciCiAgICAgICAgfSkudGhlbihhc3luYyAoKSA9PiB7CiAgICAgICAgICB0aGlzLnVzZXJDZW50ZXJJZHMgPSB0aGlzLnNlbGVjdGlvbi5tYXAoaXRlbSA9PiBpdGVtLnVzZXJDZW50ZXJJZCk7CiAgICAgICAgICBjb25zdCB7CiAgICAgICAgICAgIGRhdGEKICAgICAgICAgIH0gPSBhd2FpdCBkZWxDdXN0b21lcih0aGlzLnVzZXJDZW50ZXJJZHMpOwogICAgICAgICAgdGhpcy4kbWVzc2FnZSh7CiAgICAgICAgICAgIHR5cGU6ICJzdWNjZXNzIiwKICAgICAgICAgICAgbWVzc2FnZTogIuWIoOmZpOaIkOWKnyEiCiAgICAgICAgICB9KTsKICAgICAgICAgIHRoaXMucGFnZUNoYW5nZSgxKTsKICAgICAgICB9KTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLiRtZXNzYWdlKHsKICAgICAgICAgIHR5cGU6ICJ3YXJuaW5nIiwKICAgICAgICAgIG1lc3NhZ2U6ICLor7fpgInmi6nopoHmk43kvZznmoTlrqLmiLciCiAgICAgICAgfSk7CiAgICAgIH0KICAgIH0sCgogICAgLy8g5Yig6Zmk5a6i5oi3CiAgICBkZWxDdXN0b21lcihpZCkgewogICAgICB0aGlzLiRjb25maXJtKCLnoa7lrpropoHliKDpmaTor6XlrqLmiLflkJc/IiwgIuaPkOekuiIsIHsKICAgICAgICBjb25maXJtQnV0dG9uVGV4dDogIuehruWumiIsCiAgICAgICAgY2FuY2VsQnV0dG9uVGV4dDogIuWPlua2iCIsCiAgICAgICAgdHlwZTogIndhcm5pbmciCiAgICAgIH0pLnRoZW4oYXN5bmMgKCkgPT4gewogICAgICAgIGNvbnN0IHsKICAgICAgICAgIGRhdGEKICAgICAgICB9ID0gYXdhaXQgZGVsQ3VzdG9tZXIoW2lkXSk7CiAgICAgICAgdGhpcy4kbWVzc2FnZSh7CiAgICAgICAgICB0eXBlOiAic3VjY2VzcyIsCiAgICAgICAgICBtZXNzYWdlOiAi5Yig6Zmk5oiQ5YqfISIKICAgICAgICB9KTsKICAgICAgICB0aGlzLnBhZ2VDaGFuZ2UoMSk7CiAgICAgIH0pOwogICAgfSwKCiAgICAvL+aJuemHj+iuvue9ruWuouaIt+exu+Wei+WFs+mXrQogICAgY2xvc2VTZXR0aW5nVHlwZSgpIHsKICAgICAgdGhpcy5iYXRjaFNldHRpbmcudHlwZSA9ICIiOwogICAgICB0aGlzLmJhdGNoU2V0dGluZ1R5cGUgPSBmYWxzZTsKICAgIH0sCgogICAgLy8g6K+35rGCLeaJuemHj+iuvue9ruS4muWKoeWRmAogICAgYXN5bmMgYmF0Y2hFZGl0Q3VzdG9tZXIoKSB7CiAgICAgIHRoaXMuaWRzID0gdGhpcy5zZWxlY3Rpb24ubWFwKGl0ZW0gPT4gaXRlbS5pZCk7CiAgICAgIGNvbnN0IHBhcmFtcyA9IHsKICAgICAgICBpZHM6IHRoaXMuaWRzLAogICAgICAgIGRlcGFydG1lbnRJZDogdGhpcy5kZXBhcnRtZW50SWRbMF0sCiAgICAgICAgc2FsZXNNYW5JZDogdGhpcy5zYWxlbWFuCiAgICAgIH07CiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBiYXRjaEVkaXRDdXN0b21lcihwYXJhbXMpOwogICAgICB0aGlzLmdldFVzZXJMaXN0KCk7CiAgICB9LAoKICAgIC8vIOehruiupC3mibnph4/kv67mlLnkuJrliqHlkZgKICAgIGJhdGNoU2V0dGluZ0NvbigpIHsKICAgICAgaWYgKHRoaXMuZGVwYXJ0bWVudElkID09PSAiIiB8fCB0aGlzLnNhbGVtYW4gPT09ICIiKSB7CiAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcigi6K+35aGr5YaZ5a6M5pW05L+h5oGvIik7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy5iYXRjaFNldHRpbmdWaXNpYmxlID0gZmFsc2U7CiAgICAgICAgdGhpcy5iYXRjaEVkaXRDdXN0b21lcigpOwogICAgICB9CiAgICB9LAoKICAgIC8vIOehruiupC3mibnph4/kv67mlLnlrqLmiLfnsbvlnosKICAgIGFzeW5jIHNldEN1c3RvbWVyVHlwZSgpIHsKICAgICAgdGhpcy5pZHMgPSB0aGlzLnNlbGVjdGlvbi5tYXAoaXRlbSA9PiBpdGVtLmlkKTsKICAgICAgY29uc3QgcGFyYW1zID0gewogICAgICAgIGN1c3RvbWVySWRzOiB0aGlzLmlkcywKICAgICAgICB0eXBlOiB0aGlzLmJhdGNoU2V0dGluZy50eXBlCiAgICAgIH07CiAgICAgIGNvbnN0IHsKICAgICAgICBkYXRhCiAgICAgIH0gPSBhd2FpdCBzZXRDdXN0b21lclR5cGUocGFyYW1zKTsKICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCLkv67mlLnmiJDlip8iKTsKICAgICAgYXdhaXQgdGhpcy5jbG9zZVNldHRpbmdUeXBlKCk7CiAgICAgIHRoaXMuZ2V0VXNlckxpc3QoKTsKICAgIH0sCgogICAgaGFuZGxlU2VsZWN0aW9uQ2hhbmdlKHZhbCkgewogICAgICB0aGlzLmNoZWNrZWRBbGwgPSB2YWwubGVuZ3RoID09PSB0aGlzLnRhYmxlRGF0YS5sZW5ndGg7CiAgICAgIHRoaXMuc2VsZWN0aW9uID0gdmFsOwogICAgfSwKCiAgICBjaGVja0FsbENoYW5nZSgpIHsKICAgICAgdGhpcy4kcmVmcy5jdXN0b21lclRhYmxlLnRvZ2dsZUFsbFNlbGVjdGlvbigpOwogICAgfSwKCiAgICBjaGFuZ2UoKSB7CiAgICAgIHRoaXMudHlwZUZsYWcgPSB0aGlzLmNoZWNrTGlzdC5zb21lKGl0ZW0gPT4gaXRlbSA9PT0gIuWuouaIt+exu+WeiyIpOwogICAgICB0aGlzLnNob3BGbGFnID0gdGhpcy5jaGVja0xpc3Quc29tZShpdGVtID0+IGl0ZW0gPT09ICLllYbpk7oiKTsKICAgICAgdGhpcy5zYWxlc21hbkZsYWcgPSB0aGlzLmNoZWNrTGlzdC5zb21lKGl0ZW0gPT4gaXRlbSA9PT0gIuS4muWKoeWRmCIpOwogICAgICB0aGlzLmF1ZGl0U3RhdHVzRmxhZyA9IHRoaXMuY2hlY2tMaXN0LnNvbWUoaXRlbSA9PiBpdGVtID09PSAi5a6h5qC454q25oCBIik7CiAgICAgIHRoaXMudGltZUZsYWcgPSB0aGlzLmNoZWNrTGlzdC5zb21lKGl0ZW0gPT4gaXRlbSA9PT0gIuazqOWGjOaXtumXtCIpOwogICAgICB0aGlzLmFjY291bnRTdGF0dXNGbGFnID0gdGhpcy5jaGVja0xpc3Quc29tZShpdGVtID0+IGl0ZW0gPT09ICLluJDlj7fnirbmgIEiKTsKICAgIH0sCgogICAgLy8g6Lef6L+b6K6w5b2V56ys5LiA5qyh5riy5p+T5YiX6KGoCiAgICBvcGVuRm9sbG93VXBSZWNvcmRzKGlkKSB7CiAgICAgIHRoaXMuZm9sbG93UGFnZSA9IDE7CiAgICAgIHRoaXMuZm9sbG93VXBSZWNvcmRzRmxhZyA9IHRydWU7CiAgICAgIHRoaXMuY3VzdG9tZXJJZCA9IGlkOwogICAgICB0aGlzLmZvbGxvd1VwUmVjb3JkcygpOwogICAgfSwKCiAgICAvLyDot5/ov5vorrDlvZXliJfooagKICAgIGFzeW5jIGZvbGxvd1VwUmVjb3JkcygpIHsKICAgICAgY29uc3QgewogICAgICAgIGRhdGEsCiAgICAgICAgcGFnZVRvdGFsCiAgICAgIH0gPSBhd2FpdCBnZXRBbGxDdXN0b21lckNvbW11bmljYXRpb24oewogICAgICAgIC8vIHN0YWZmSWQ6ICIiLAogICAgICAgIGN1c3RvbWVySWQ6IHRoaXMuY3VzdG9tZXJJZCwKICAgICAgICAvLyBzdGFyOiAiIiwKICAgICAgICAvLyBlbmQ6ICIiLAogICAgICAgIHBhZ2U6IHRoaXMuZm9sbG93UGFnZSwKICAgICAgICBwYWdlU2l6ZTogdGhpcy5mb2xsb3dQYWdlU2l6ZQogICAgICB9KTsKICAgICAgdGhpcy5mb2xsb3dMaXN0ID0gZGF0YTsKICAgICAgdGhpcy5mb2xsb3dUb3RhbCA9IHBhZ2VUb3RhbDsKICAgIH0sCgogICAgLy8g5riF6Zmk5ZGY5bel6L6T5YWl5qGGCiAgICBzdGFmZkNsZWFyKCkgewogICAgICB0aGlzLnNlYXJjaERhdGUuc2FsZXNNYW5JZCA9ICIiOwogICAgICB0aGlzLnNlYXJjaF9mb3JtLnN0YWZmID0gIiI7CiAgICAgIHRoaXMucGFnZUNoYW5nZSgxKTsKICAgIH0sCgogICAgLy8g6YCJ5oup5ZGY5belCiAgICBzdGFmZlNlbCh2YWwpIHsKICAgICAgY29uc3Qgcm93ID0gdmFsWzBdOwogICAgICB0aGlzLnNlYXJjaERhdGUuc2FsZXNNYW5JZCA9IHJvdy5pZDsKICAgICAgdGhpcy5zZWFyY2hfZm9ybS5zdGFmZiA9IHJvdy5zdGFmZk5hbWU7CiAgICAgIHRoaXMuaGFuZGxlQ3VycmVudENoYW5nZSgxKTsKICAgIH0sCgogICAgYXN5bmMgc2FsZUZuKGlzc2VyY2gsIGlkKSB7CiAgICAgIHRoaXMuc3RhZmZfc2hvdyA9IHRydWU7CiAgICAgIHRoaXMuaXNzZXJjaCA9IGlzc2VyY2g7CgogICAgICBpZiAoaWQpIHsKICAgICAgICB0aGlzLm9yZGVyX2lkID0gaWQ7CiAgICAgIH0KICAgIH0sCgogICAgLy8g6Lef6L+b6K6w5b2V5YiX6KGo5YiH6aG1CiAgICBhc3luYyBoYW5kbGVDdXJyZW50Q2hhbmdlKHZhbCkgewogICAgICB0aGlzLmZvbGxvd1BhZ2UgPSB2YWw7CiAgICAgIGF3YWl0IHRoaXMuZm9sbG93VXBSZWNvcmRzKCk7CiAgICB9LAoKICAgIC8vIOi3n+i/m+iusOW9leWIl+ihqOa3u+WKoAogICAgYXN5bmMgYWRkQ3VzdG9tZXJDb21tdW5pY2F0aW9uKCkgewogICAgICBpZiAoIXRoaXMuc2VhcmNoX2Zvcm0uY29udGVudC50cmltKCkpIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoIui3n+i/m+WGheWuueS4jeiDveS4uuepuiIpOwogICAgICAgIHJldHVybjsKICAgICAgfQoKICAgICAgY29uc3QgdGltZSA9IG5ldyBEYXRlKHRoaXMuc2VhcmNoX2Zvcm0udGltZSkuZ2V0VGltZSgpIC8gMTAwMDsKCiAgICAgIGlmICh0aGlzLnNlYXJjaERhdGUuc2FsZXNNYW5JZCAmJiB0aW1lICYmIHRoaXMuc2VhcmNoX2Zvcm0uY29udGVudCkgewogICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBhZGRDdXN0b21lckNvbW11bmljYXRpb24oewogICAgICAgICAgY3VzdG9tZXJJZDogdGhpcy5jdXN0b21lcklkLAogICAgICAgICAgc3RhZmZJZDogdGhpcy5zZWFyY2hEYXRlLnNhbGVzTWFuSWQsCiAgICAgICAgICBjb250ZW50OiB0aGlzLnNlYXJjaF9mb3JtLmNvbnRlbnQsCiAgICAgICAgICB0aW1lOiB0aW1lCiAgICAgICAgfSk7CiAgICAgICAgYXdhaXQgdGhpcy5mb2xsb3dVcFJlY29yZHMoKTsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoIuW/hemhu+Whq+WGmeWGheWuuei3n+i/m+S6uuWSjOaXtumXtCIpOwogICAgICB9CiAgICB9LAoKICAgIC8vIOi3n+i/m+iusOW9leWIoOmZpAogICAgZGVsQ3VzdG9tZXJDb21tdW5pY2F0aW9uKGlkKSB7CiAgICAgIHRoaXMuJGNvbmZpcm0oIuatpOaTjeS9nOWwhuawuOS5heWIoOmZpOivpeaWh+S7tiwg5piv5ZCm57un57utPyIsICLmj5DnpLoiLCB7CiAgICAgICAgY29uZmlybUJ1dHRvblRleHQ6ICLnoa7lrpoiLAogICAgICAgIGNhbmNlbEJ1dHRvblRleHQ6ICLlj5bmtogiLAogICAgICAgIHR5cGU6ICJ3YXJuaW5nIgogICAgICB9KS50aGVuKGFzeW5jICgpID0+IHsKICAgICAgICBjb25zdCB7CiAgICAgICAgICBkYXRhCiAgICAgICAgfSA9IGF3YWl0IGRlbEN1c3RvbWVyQ29tbXVuaWNhdGlvbihpZCk7CiAgICAgICAgYXdhaXQgdGhpcy5mb2xsb3dVcFJlY29yZHMoKTsKICAgICAgICB0aGlzLiRtZXNzYWdlKHsKICAgICAgICAgIHR5cGU6ICJzdWNjZXNzIiwKICAgICAgICAgIG1lc3NhZ2U6ICLliKDpmaTmiJDlip8hIgogICAgICAgIH0pOwogICAgICB9KS5jYXRjaCgoKSA9PiB7CiAgICAgICAgdGhpcy4kbWVzc2FnZSh7CiAgICAgICAgICB0eXBlOiAiaW5mbyIsCiAgICAgICAgICBtZXNzYWdlOiAi5bey5Y+W5raI5Yig6ZmkIgogICAgICAgIH0pOwogICAgICB9KTsKICAgIH0sCgogICAgLy8g6Lef6L+b6K6w5b2V5L+u5pS56I635Y+WCiAgICB1cGRhdGVGb2xsb3codmFsdWUpIHsKICAgICAgdGhpcy5jb3JlRmxhZyA9IHRydWU7CiAgICAgIHRoaXMudXBkYXRlRm9sbG93VmFsdWUgPSB2YWx1ZTsKICAgICAgdGhpcy51cGRhdGVGb2xsb3dMaXN0ID0gdmFsdWUuY29udGVudDsKICAgIH0sCgogICAgLy8g6Lef6L+b6K6w5b2V5L+u5pS556Gu6K6kCiAgICBhc3luYyBwdXRVcGRhdGVGb2xsb3coKSB7CiAgICAgIHRoaXMuY29yZUZsYWcgPSBmYWxzZTsKICAgICAgY29uc3QgewogICAgICAgIGRhdGEKICAgICAgfSA9IGF3YWl0IHVwZGF0ZUN1c3RvbWVyQ29tbXVuaWNhdGlvbih0aGlzLnVwZGF0ZUZvbGxvd1ZhbHVlLmlkLCB7CiAgICAgICAgY3VzdG9tZXJJZDogdGhpcy51cGRhdGVGb2xsb3dWYWx1ZS5jdXN0b21lcklkLAogICAgICAgIHN0YWZmSWQ6IHRoaXMudXBkYXRlRm9sbG93VmFsdWUuc3RhZmZJZCwKICAgICAgICBjb250ZW50OiB0aGlzLnVwZGF0ZUZvbGxvd0xpc3QsCiAgICAgICAgdGltZTogdGhpcy51cGRhdGVGb2xsb3dWYWx1ZS50aW1lCiAgICAgIH0pOwogICAgICB0aGlzLiRtZXNzYWdlLnN1Y2Nlc3MoIuS/ruaUueaIkOWKnyIpOwogICAgICBhd2FpdCB0aGlzLmZvbGxvd1VwUmVjb3JkcygpOwogICAgfSwKCiAgICBhc3luYyBnZXRDdXN0b21lclNvdXJjZUxpc3QoKSB7CiAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBnZXRDdXN0b21lclNvdXJjZUxpc3QoKTsKCiAgICAgIGlmIChkYXRhLmRhdGEubGVuZ3RoKSB7CiAgICAgICAgdGhpcy5jdXN0b21lclR5cGUgPSBkYXRhLmRhdGE7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgdGhpcy5jdXN0b21lclR5cGUgPSBbXTsKICAgICAgfQogICAgfQoKICB9Cn07"},null]}
|