{"remainingRequest":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/vue-loader/lib/index.js??vue-loader-options!/data/jenkins/workspace/badp-bcxin-web-5.x-staff/src/views/DepartAdmin/components/SelectDepartment.vue?vue&type=script&lang=js","dependencies":[{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/src/views/DepartAdmin/components/SelectDepartment.vue","mtime":1725944942462},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/thread-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/babel-loader/lib/index.js","mtime":456789000000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-staff/node_modules/vue-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:CmltcG9ydCB7Z2V0RW1wbG95ZWVJZGRlcGFydEFkbWluc0FwaSxTdGFmZkRlcGFydG1lbnRMaXN0QXBpIH0gZnJvbSAiQC9hcGkvc3RhZmZBcGkuanMiCnZhciBoYXNMb2NhbExvYWRlZERlcGFydG1lbnRzID0gZmFsc2U7CnZhciBsb2NhbERlcGFydG1lbnRzRm9yU2VsZWN0TGlzdCA9IFtdOwp2YXIgbG9jYWxEZXBhcnRtZW50c0ZsYXRGb3JTZWxlY3RMaXN0ID0gW107CmV4cG9ydCBkZWZhdWx0IHsKICAgIHByb3BzOiB7CiAgICAgICAgbG9hZGluZ0RlcGFydG1lbnQ6IHsKICAgICAgICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgICAgICAgZGVmYXVsdDogZmFsc2UKICAgICAgICB9LAogICAgICAgIHNlbGVjdGVkRGVwYXJ0SWRzOiB7CiAgICAgICAgICAgIHR5cGU6IEFycmF5LAogICAgICAgICAgICBkZWZhdWx0OiBbXQogICAgICAgIH0KICAgIH0sCiAgICBlbWl0czogWyJhcHBseS1zZWxlY3RlZC1kZXBhcnRtZW50LWhhbmRsZXIiLCAiY2FuY2VsLXNlbGVjdGVkLWRlcGFydG1lbnQtaGFuZGxlciJdLAogICAgZGF0YSgpIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgICBrZXl3b3JkOiAiIiwKICAgICAgICAgICAgLyoqCiAgICAgICAgICAgICAqIOWunumZheeUqOWIsOeahOaVsOaNrgogICAgICAgICAgICAgKi8KICAgICAgICAgICAgZGVwYXJ0bWVudHM6IFtdLAogICAgICAgICAgICBmaWx0ZXJlZERlcGFydG1lbnRzOiBbXSwKICAgICAgICAgICAgc2VsZWN0ZWREZXBhcnRtZW50czoge30KICAgICAgICB9CiAgICB9LAogICAgd2F0Y2g6IHsKICAgICAgICBzZWxlY3RlZERlcGFydElkcyhuVmFsdWUsIG9WYWx1ZSkgeyAKICAgICAgICAgICAgY29uc29sZS5sb2coIuebkeWQrOWIsOWPmOWMljoiLCBuVmFsdWUsIG9WYWx1ZSwgYXJndW1lbnRzLCB0aGlzLnNlbGVjdGVkRGVwYXJ0SWRzLCBsb2NhbERlcGFydG1lbnRzRm9yU2VsZWN0TGlzdCk7CiAgICAgICAgICAgIHRoaXMuc3dpdGNoRGVwYXJ0bWVudHNTZWxlY3RlZChsb2NhbERlcGFydG1lbnRzRm9yU2VsZWN0TGlzdCwgblZhbHVlLG9WYWx1ZSk7CiAgICAgICAgfSwKICAgICAgICBrZXl3b3JkKG5WYWx1ZSwgb1ZhbHVlKSB7CiAgICAgICAgICAgIGNvbnNvbGUubG9nKCLmiafooYzliLfmlrDmk43kvZxrZXl3b3JkPT09IixuVmFsdWUpOwogICAgICAgICAgICB0aGlzLnNlYXJjaEZpbHRlckRlcGFydG1lbnQoblZhbHVlKTsKICAgICAgICB9LAogICAgICAgIGZpbHRlcmVkRGVwYXJ0bWVudHMobiwgbykgewogICAgICAgICAgICAvL2NvbnNvbGUubG9nKCLmlbDmja7lj5HnlJ/lj5jmm7QiLCBuLCBvKTsKCiAgICAgICAgfSwKICAgICAgICBsb2FkaW5nRGVwYXJ0bWVudChuVmFsdWUsIG9WYWx1ZSkgewogICAgICAgICAgICBjb25zb2xlLmxvZygibG9hZGluZ0RlcGFydG1lbnTnmoTmiafooYzliqjkvZwiLCBuVmFsdWUsIG9WYWx1ZSwgdGhpcy5zZWxlY3RlZERlcGFydElkcyk7CiAgICAgICAgfQogICAgfSwKICAgIG1vdW50ZWQoKSB7CiAgICAgICAgdmFyIHNlbGYgPSB0aGlzOwogICAgICAgIGNvbnNvbGUubG9nKCJtb3VudGVkIOWKoOi9vemDqOmXqOS/oeaBry4uLi4iLGhhc0xvY2FsTG9hZGVkRGVwYXJ0bWVudHMsbG9jYWxEZXBhcnRtZW50c0ZvclNlbGVjdExpc3QsIHNlbGYuc2VsZWN0ZWREZXBhcnRJZHMpOwoKICAgICAgICBpZiAoIWhhc0xvY2FsTG9hZGVkRGVwYXJ0bWVudHMpIHsKICAgICAgICAgICAgLy/ooajmoLzliJfooagKICAgICAgICAgICAgbGV0IG9iaiA9IHsgZG9tYWluSWQ6IHNlbGYuJHJvdXRlLnF1ZXJ5LmRvbWFpbklkIH07IC8v6I635Y+WdXJs5Z+fZG9tYWluSWQKICAgICAgICAgICAgU3RhZmZEZXBhcnRtZW50TGlzdEFwaShvYmopLnRoZW4oKHJlc3BvbnNlKSA9PiB7CiAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UuZGF0YSkgewogICAgICAgICAgICAgICAgICAgIHZhciBkcHMgPSByZXNwb25zZS5kYXRhOwogICAgICAgICAgICAgICAgICAgIHZhciBydCA9IFtdOwogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZHBzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBydEl0ZW0gPSBzZWxmLmJ1aWxkQmluZERlcGF0bWVudHMoZHBzW2ldLCBzZWxmLnNlbGVjdGVkRGVwYXJ0SWRzKTsKICAgICAgICAgICAgICAgICAgICAgICAgcnQucHVzaChydEl0ZW0pOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBzZWxmLnNvcnRUYWJsZURhdGEocnQpOwogICAgICAgICAgICAgICAgICAgIGxvY2FsRGVwYXJ0bWVudHNGb3JTZWxlY3RMaXN0ID0gcnQ7CiAgICAgICAgICAgICAgICAgICAgc2VsZi5zZWFyY2hGaWx0ZXJEZXBhcnRtZW50KCIiKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBoYXNMb2NhbExvYWRlZERlcGFydG1lbnRzID0gdHJ1ZTsKICAgICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdGhpcy5zd2l0Y2hEZXBhcnRtZW50c1NlbGVjdGVkKGxvY2FsRGVwYXJ0bWVudHNGb3JTZWxlY3RMaXN0LCBzZWxmLnNlbGVjdGVkRGVwYXJ0SWRzLG51bGwsdHJ1ZSk7CiAgICAgICAgICAgIHNlbGYuc2VhcmNoRmlsdGVyRGVwYXJ0bWVudCgiIik7CiAgICAgICAgfQogICAgfSwKICAgIG1ldGhvZHM6IHsKICAgICAgICBzd2l0Y2hEZXBhcnRtZW50c1NlbGVjdGVkKGRlcGFydG1lbnRzLCBzdGVkRGVwdElkcywgdW5zdGVkRGVwYXJ0SWRzLCBpc0Zyb21Qb3B1cExvYWRlZCkgewogICAgICAgICAgICB2YXIgc2VsZiA9IHRoaXM7CiAgICAgICAgICAgIGlmICghc3RlZERlcHRJZHMpIHsKICAgICAgICAgICAgICAgIHN0ZWREZXB0SWRzID0gW107CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmICghdW5zdGVkRGVwYXJ0SWRzKSB7CiAgICAgICAgICAgICAgICB1bnN0ZWREZXBhcnRJZHMgPSBbXTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHVuU2VsZWN0ZWRJZHMgPSBbXTsKICAgICAgICAgICAgaWYgKCFpc0Zyb21Qb3B1cExvYWRlZCkgewogICAgICAgICAgICAgICAgdW5TZWxlY3RlZElkcyA9IHVuc3RlZERlcGFydElkcy5maWx0ZXIoaWkgPT4gc3RlZERlcHRJZHMuZmlsdGVyKHVpaSA9PiB1aWkgPT0gaWkpLmxlbmd0aCA9PSAwKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgY29uc29sZS5sb2coIuW+heWIh+aNoueahOeKtuaAgSIsIHN0ZWREZXB0SWRzLCBzdGVkRGVwdElkcy5sZW5ndGgsIHVuU2VsZWN0ZWRJZHMsaXNGcm9tUG9wdXBMb2FkZWQpOwogICAgICAgICAgICB2YXIgZXhlY3V0ZVN3aXRjaENoZWNrZWQgPSBmdW5jdGlvbiAoZHRwcywgZHB0SWRzLCBzZWxlY3RlZEZsYWcpIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZHB0SWRzLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHN0aWQgPSBkcHRJZHNbaV07CiAgICAgICAgICAgICAgICAgICAgLyoKICAgICAgICAgICAgICAgICAgICB2YXIgZmlsdGVyZWREcHRzID0gZHRwcy5maWx0ZXIoaWkgPT4gaWkuaWQgPT0gZHB0SWRzW2ldKTsKICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpYyA9IDA7IGljIDwgZmlsdGVyZWREcHRzLmxlbmd0aDsgaWMrKykgewogICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJlZERwdHNbaWNdLnNlbGVjdGVkID0gc2VsZWN0ZWRGbGFnOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgKi8KICAgICAgICAgICAgICAgICAgICB2YXIgaXRlbSA9IGR0cHNbc3RpZF07CiAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0pIHsKICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5zZWxlY3RlZCA9IHNlbGVjdGVkRmxhZzsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIGlmIChpdGVtLnNlbGVjdGVkKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuc2VsZWN0ZWREZXBhcnRtZW50c1tpdGVtLmlkXSA9IGl0ZW07CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygi6YGN5Y6G55qE5pWw5o2udnZ25Li6OiIsIGR0cHMsIGl0ZW0sIGRwdElkcywgc2VsZWN0ZWRGbGFnKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgZXhlY3V0ZVN3aXRjaENoZWNrZWQobG9jYWxEZXBhcnRtZW50c0ZsYXRGb3JTZWxlY3RMaXN0LCBzdGVkRGVwdElkcywgdHJ1ZSk7CiAgICAgICAgICAgIGlmICghaXNGcm9tUG9wdXBMb2FkZWQpIHsKICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCLpgInkuK3nmoTmlbDmja7kuLp2Mi4uLjoiLCBzZWxmLnNlbGVjdGVkRGVwYXJ0bWVudHMsIHN0ZWREZXB0SWRzLCBzdGVkRGVwdElkcy5sZW5ndGgpOwogICAgICAgICAgICAgICAgaWYgKHNlbGYuc2VsZWN0ZWREZXBhcnRtZW50cyAmJiBzdGVkRGVwdElkcy5sZW5ndGggPT0gMCkgewogICAgICAgICAgICAgICAgICAgIGZvciAodmFyIGlkIGluIHRoaXMuc2VsZWN0ZWREZXBhcnRtZW50cykgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgaXRlbSA9IHRoaXMuc2VsZWN0ZWREZXBhcnRtZW50c1tpZF07CiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uc2VsZWN0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHNlbGYuc2VsZWN0ZWREZXBhcnRtZW50c1tpZF07CgogICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygi5Y+W5raI6YCJ5Lit55qE5pWw5o2u5Li6OiIsIGl0ZW0sIHNlbGYuc2VsZWN0ZWREZXBhcnRtZW50cyk7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZXhlY3V0ZVN3aXRjaENoZWNrZWQobG9jYWxEZXBhcnRtZW50c0ZsYXRGb3JTZWxlY3RMaXN0LCB1blNlbGVjdGVkSWRzLCBmYWxzZSk7CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygi5Y2z5bCG6L+b5YWl5b6q546vLi4uIik7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBrZXkgaW4gbG9jYWxEZXBhcnRtZW50c0ZsYXRGb3JTZWxlY3RMaXN0KSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGl0ZW0gPSBsb2NhbERlcGFydG1lbnRzRmxhdEZvclNlbGVjdExpc3Rba2V5XTsKICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbS5zZWxlY3RlZCkgewogICAgICAgICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygi55uu5YmN5bey57uP6YCJ5Lit55qE5pWw5o2u5Li6eHjvvJoiLCBpdGVtKTsKICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5zZWxlY3RlZCA9IHN0ZWREZXB0SWRzLmZpbHRlcihpaSA9PiBpaSA9PSBpdGVtLmlkKS5sZW5ndGggPiAwOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgc2VsZWN0QWxsRmlsdGVyZWREZXBhcnRtZW50SGFuZGxlcih0cGFyYW0pIHsKICAgICAgICAgICAgdmFyIHNlbGYgPSB0aGlzOwogICAgICAgICAgICB2YXIgc2VsZWN0ZWRBbGwgPSB0cGFyYW0ubGVuZ3RoID4gMDsKICAgICAgICAgICAgbG9jYWxEZXBhcnRtZW50c0ZvclNlbGVjdExpc3QuZm9yRWFjaCgoaXRlbSwgaW5kZXgpID0+IHsKICAgICAgICAgICAgICAgIGl0ZW0uc2VsZWN0ZWQgPSBzZWxlY3RlZEFsbDsKICAgICAgICAgICAgICAgIHNlbGYuZGVwYXJ0Um93Q2hlY2tDaGFuZ2VkKGl0ZW0pOwogICAgICAgICAgICAgICAgY29uc29sZS5sb2coIuinpuWPkeWIsD09c2VsZWN0QWxsRmlsdGVyZWREZXBhcnRtZW50SGFuZGxlciDnmoTlip/og70iLCBpdGVtKTsKICAgICAgICAgICAgICAgIC8vIOWkhOeQhiBpdGVtIOWvueixoQogICAgICAgICAgICB9KTsKICAgICAgICB9LAogICAgICAgIHNlYXJjaEZpbHRlckRlcGFydG1lbnQoa2V5d29yZCkgewogICAgICAgICAgICBsZXQgc2VhcmNoVmFsdWUgPSBrZXl3b3JkOwogICAgICAgICAgICBpZiAoc2VhcmNoVmFsdWUpIHsKICAgICAgICAgICAgICAgIGxldCB0cmVlRGF0YSA9IGxvY2FsRGVwYXJ0bWVudHNGb3JTZWxlY3RMaXN0CiAgICAgICAgICAgICAgICB0cmVlRGF0YSA9IHRoaXMuaGFuZGxlVHJlZURhdGEodHJlZURhdGEsIHNlYXJjaFZhbHVlKQogICAgICAgICAgICAgICAgdGhpcy5maWx0ZXJlZERlcGFydG1lbnRzID0gdHJlZURhdGEgIC8v5Yy56YWN6L+U5Zue6L+H5ruk5p+l6K+i5Yiw55qE54i25a2Q5qCR5pWw5o2uCiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygi5bGV56S65pWw5o2u5LmL5YmN55qEc2VhcmNoRmlsdGVyRGVwYXJ0bWVudOWAvOS4uiIsIGxvY2FsRGVwYXJ0bWVudHNGbGF0Rm9yU2VsZWN0TGlzdCk7CiAgICAgICAgICAgICAgICB0aGlzLmZpbHRlcmVkRGVwYXJ0bWVudHMgPSBsb2NhbERlcGFydG1lbnRzRm9yU2VsZWN0TGlzdDsKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgaGFuZGxlVHJlZURhdGEodHJlZURhdGEsIHNlYXJjaFZhbHVlKSB7CiAgICAgICAgICAgIC8vIGRlYnVnZ2VyCiAgICAgICAgICAgIGlmICghdHJlZURhdGEgfHwgdHJlZURhdGEubGVuZ3RoID09IDApIHJldHVybiBbXTsKICAgICAgICAgICAgY29uc3QgYXJyYXkgPSBbXTsKICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0cmVlRGF0YS5sZW5ndGg7IGkrKykgewogICAgICAgICAgICAgICAgbGV0IG1hdGNoID0gZmFsc2U7CiAgICAgICAgICAgICAgICBmb3IgKGxldCBwcm8gaW4gdHJlZURhdGFbaV0pIHsKICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mICh0cmVlRGF0YVtpXVtwcm9dKSA9PSAnc3RyaW5nJykgewogICAgICAgICAgICAgICAgICAgICAgICBtYXRjaCB8PSB0cmVlRGF0YVtpXVtwcm9dLmluY2x1ZGVzKHNlYXJjaFZhbHVlKTsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKG1hdGNoKSBicmVhazsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAodGhpcy5oYW5kbGVUcmVlRGF0YSh0cmVlRGF0YVtpXS5jaGlsZHJlbiwgc2VhcmNoVmFsdWUpLmxlbmd0aCA+IDAgfHwgbWF0Y2gpIHsKICAgICAgICAgICAgICAgICAgICBhcnJheS5wdXNoKHsgLi4udHJlZURhdGFbaV0sIGNoaWxkcmVuOiB0aGlzLmhhbmRsZVRyZWVEYXRhKHRyZWVEYXRhW2ldLmNoaWxkcmVuLCBzZWFyY2hWYWx1ZSkgfSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gYXJyYXk7CiAgICAgICAgfSwKICAgICAgICBkZXBhcnRSb3dDaGVja0NoYW5nZWQocm93KSB7CiAgICAgICAgICAgIHZhciBzZWxmID0gdGhpczsKICAgICAgICAgICAgaWYgKHJvdz8uY2hpbGRyZW4pIHsKICAgICAgICAgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgcm93LmNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGl0ZW0gPSByb3cuY2hpbGRyZW5baV07CiAgICAgICAgICAgICAgICAgICAgaXRlbS5uYW1lID0gaXRlbS5uYW1lOwogICAgICAgICAgICAgICAgICAgIGl0ZW0uc2VsZWN0ZWQgPSByb3cuc2VsZWN0ZWQ7CiAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0uc2VsZWN0ZWQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5zZWxlY3RlZERlcGFydG1lbnRzW2l0ZW0uaWRdID0gaXRlbTsKICAgICAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgc2VsZi5zZWxlY3RlZERlcGFydG1lbnRzW2l0ZW0uaWRdOwogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgc2VsZi5kZXBhcnRSb3dDaGVja0NoYW5nZWQoaXRlbSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmIChyb3cuc2VsZWN0ZWQpIHsKICAgICAgICAgICAgICAgIHNlbGYuc2VsZWN0ZWREZXBhcnRtZW50c1tyb3cuaWRdID0gcm93OwogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgZGVsZXRlIHNlbGYuc2VsZWN0ZWREZXBhcnRtZW50c1tyb3cuaWRdOwogICAgICAgICAgICB9CiAgICAgICAgfSwKICAgICAgICBhcHBseVNlbGVjdGVkRGVwYXJ0bWVudCgpIHsKICAgICAgICAgICAgdmFyIHNlbGYgPSB0aGlzOwoKICAgICAgICAgICAgdmFyIHNlbGVjdGVkRGVwYXJ0cyA9IFtdOwogICAgICAgICAgICBmb3IgKHZhciBpZCBpbiBzZWxmLnNlbGVjdGVkRGVwYXJ0bWVudHMpIHsKICAgICAgICAgICAgICAgIHZhciBpdGVtID0gc2VsZi5zZWxlY3RlZERlcGFydG1lbnRzW2lkXTsKICAgICAgICAgICAgICAgIHNlbGVjdGVkRGVwYXJ0cy5wdXNoKHsKICAgICAgICAgICAgICAgICAgICBpZDogaXRlbS5pZCwKICAgICAgICAgICAgICAgICAgICBuYW1lOiBpdGVtLm5hbWUKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBzZWxmLmRlcGFydG1lbnRzID0gc2VsZWN0ZWREZXBhcnRzOwoKICAgICAgICAgICAgY29uc29sZS5sb2coIumAieS4reeahOaVsOaNrnZ2dnYiLCBzZWxmLmRlcGFydG1lbnRzKTsKCiAgICAgICAgICAgIHRoaXMuJGVtaXQoImFwcGx5LXNlbGVjdGVkLWRlcGFydG1lbnQtaGFuZGxlciIsIHNlbGYuZGVwYXJ0bWVudHMpOwogICAgICAgIH0sCiAgICAgICAgY2xvc2VTZWxlY3REZXBhcnRtZW50KCkgewogICAgICAgICAgICB0aGlzLiRlbWl0KCJjYW5jZWwtc2VsZWN0ZWQtZGVwYXJ0bWVudC1oYW5kbGVyIik7CiAgICAgICAgfSwKICAgICAgICBidWlsZEJpbmREZXBhdG1lbnRzKGRlcHRPbmUsIHNlbGVjdGVkRHB0SWRzKSB7CiAgICAgICAgICAgIHZhciBzZWxmID0gdGhpczsKICAgICAgICAgICAgdmFyIGR0byA9IHsKICAgICAgICAgICAgICAgIGlkOiBkZXB0T25lLmlkLAogICAgICAgICAgICAgICAgbmFtZTogZGVwdE9uZS5uYW1lLAogICAgICAgICAgICAgICAgcGVybWlzc2lvblR5cGU6IGRlcHRPbmUucGVybWlzc2lvblR5cGUsCiAgICAgICAgICAgICAgICBzZWxlY3RlZDogc2VsZWN0ZWREcHRJZHMuZmlsdGVyKGlpID0+IGlpID09IGRlcHRPbmUuaWQpLmxlbmd0aCA+IDAsCiAgICAgICAgICAgICAgICBjaGlsZHJlbjogW10KICAgICAgICAgICAgfQoKICAgICAgICAgICAgaWYgKGR0by5zZWxlY3RlZCkgewogICAgICAgICAgICAgICAgc2VsZi5zZWxlY3RlZERlcGFydG1lbnRzW2R0by5pZF0gPSBkdG87CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBkZWxldGUgc2VsZi5zZWxlY3RlZERlcGFydG1lbnRzW2R0by5pZF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKGRlcHRPbmU/LmNoaWxkcmVuKSB7CiAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGRlcHRPbmUuY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgICAgICAgICB2YXIgY2hpbGQgPSBzZWxmLmJ1aWxkQmluZERlcGF0bWVudHMoZGVwdE9uZS5jaGlsZHJlbltpXSwgc2VsZWN0ZWREcHRJZHMpOwoKICAgICAgICAgICAgICAgICAgICBkdG8uY2hpbGRyZW4ucHVzaChjaGlsZCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGxvY2FsRGVwYXJ0bWVudHNGbGF0Rm9yU2VsZWN0TGlzdFtkdG8uaWRdID0gZHRvOwoKICAgICAgICAgICAgcmV0dXJuIGR0bzsKICAgICAgICB9LAogICAgICAgIHNvcnRUYWJsZURhdGEoYXJyKSB7CiAgICAgICAgICAgIC8v6YCS5b2S5o6S5bqPCiAgICAgICAgICAgIGlmIChhcnIubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICBhcnIuZm9yRWFjaCgoaXRlbSkgPT4gewogICAgICAgICAgICAgICAgICAgIGl0ZW0uZGlzcGxheU9yZGVyTnVtYmVyID0gaXRlbS5kaXNwbGF5T3JkZXI7CiAgICAgICAgICAgICAgICAgICAgbGV0IGFsbG93ZWREZXBhcnRzU3RyID0gW107CiAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0uYWxsb3dlZERlcGFydHMgJiYgaXRlbS5hbGxvd2VkRGVwYXJ0cy5sZW5ndGgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5hbGxvd2VkRGVwYXJ0cy5mb3JFYWNoKChpdHMpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsbG93ZWREZXBhcnRzU3RyLnB1c2goaXRzLm5hbWUpOwogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5hbGxvd2VkRGVwYXJ0c1N0ciA9IGFsbG93ZWREZXBhcnRzU3RyLmpvaW4oIiwiKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgaWYgKGl0ZW0uY2hpbGRyZW4ubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuc29ydFRhYmxlRGF0YShpdGVtLmNoaWxkcmVuKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQogICAgICAgIH0sCiAgICB9Cn0K"},null]}