{"remainingRequest":"/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/thread-loader/dist/cjs.js!/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/babel-loader/lib/index.js!/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/cache-loader/dist/cjs.js??ref--0-0!/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/vue-loader/lib/index.js??vue-loader-options!/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/src/ui/main/conversation/GroupConversationInfoView.vue?vue&type=script&lang=js&","dependencies":[{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/src/ui/main/conversation/GroupConversationInfoView.vue","mtime":1702016964384},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/cache-loader/dist/cjs.js","mtime":1702017034107},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/thread-loader/dist/cjs.js","mtime":1702017030024},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/babel-loader/lib/index.js","mtime":1702017034360},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/cache-loader/dist/cjs.js","mtime":1702017034107},{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/node_modules/vue-loader/lib/index.js","mtime":1702017029242}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuaW5kZXgtb2YiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5tYXAiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5mdW5jdGlvbi5uYW1lIjsKaW1wb3J0ICJyZWdlbmVyYXRvci1ydW50aW1lL3J1bnRpbWUiOwppbXBvcnQgX2FzeW5jVG9HZW5lcmF0b3IgZnJvbSAiL2RhdGEvamVua2lucy93b3Jrc3BhY2UvYmFkcC1iY3hpbi13ZWItNS54LXZ1ZWNoYXQvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2FzeW5jVG9HZW5lcmF0b3IiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwppbXBvcnQgVXNlckxpc3RWaWV3IGZyb20gIi4uL3VzZXIvVXNlckxpc3RWaWV3LnZ1ZSI7CmltcG9ydCBDb252ZXJzYXRpb25JbmZvIGZyb20gIi4uLy4uLy4uL3dmYy9tb2RlbC9jb252ZXJzYXRpb25JbmZvIjsKaW1wb3J0IHN0b3JlIGZyb20gIi4uLy4uLy4uL3N0b3JlIjsKaW1wb3J0IHdmYyBmcm9tICIuLi8uLi8uLi93ZmMvY2xpZW50L3dmYyI7CmltcG9ydCBHcm91cE1lbWJlclR5cGUgZnJvbSAiLi4vLi4vLi4vd2ZjL21vZGVsL2dyb3VwTWVtYmVyVHlwZSI7CmltcG9ydCBHcm91cFR5cGUgZnJvbSAiLi4vLi4vLi4vd2ZjL21vZGVsL2dyb3VwVHlwZSI7CmltcG9ydCBNb2RpZnlHcm91cEluZm9UeXBlIGZyb20gIi4uLy4uLy4uL3dmYy9tb2RlbC9tb2RpZnlHcm91cEluZm9UeXBlIjsKaW1wb3J0IEV2ZW50VHlwZSBmcm9tICIuLi8uLi8uLi93ZmMvY2xpZW50L3dmY0V2ZW50IjsKaW1wb3J0IGFwcFNlcnZlckFwaSBmcm9tICIuLi8uLi8uLi9hcGkvYXBwU2VydmVyQXBpIjsKaW1wb3J0IE1lc3NhZ2VDb250ZW50TWVkaWFUeXBlIGZyb20gIi4uLy4uLy4uL3dmYy9tZXNzYWdlcy9tZXNzYWdlQ29udGVudE1lZGlhVHlwZSI7CmV4cG9ydCBkZWZhdWx0IHsKICBuYW1lOiAiR3JvdXBDb252ZXJzYXRpb25JbmZvVmlldyIsCiAgcHJvcHM6IHsKICAgIGNvbnZlcnNhdGlvbkluZm86IHsKICAgICAgdHlwZTogQ29udmVyc2F0aW9uSW5mbywKICAgICAgcmVxdWlyZWQ6IHRydWUKICAgIH0KICB9LAogIGRhdGE6IGZ1bmN0aW9uIGRhdGEoKSB7CiAgICByZXR1cm4gewogICAgICBncm91cE1lbWJlclVzZXJJbmZvczogc3RvcmUuZ2V0Q29udmVyc2F0aW9uTWVtYmVyVXNySW5mb3ModGhpcy5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbiksCiAgICAgIGZpbHRlclF1ZXJ5OiAnJywKICAgICAgc2hhcmVkQ29udGFjdFN0YXRlOiBzdG9yZS5zdGF0ZS5jb250YWN0LAogICAgICBzaGFyZWRNaXNjU3RhdGU6IHN0b3JlLnN0YXRlLm1pc2MsCiAgICAgIGdyb3VwQW5ub3VuY2VtZW50OiAnJywKICAgICAgbmV3R3JvdXBOYW1lOiAnJywKICAgICAgbmV3R3JvdXBBbm5vdW5jZW1lbnQ6ICcnLAogICAgICBuZXdHcm91cEFsaWFzOiAnJywKICAgICAgZ3JvdXBBbGlhczogJycKICAgIH07CiAgfSwKICBtb3VudGVkOiBmdW5jdGlvbiBtb3VudGVkKCkgewogICAgd2ZjLmV2ZW50RW1pdHRlci5vbihFdmVudFR5cGUuVXNlckluZm9zVXBkYXRlLCB0aGlzLm9uVXNlckluZm9zVXBkYXRlKTsKICAgIHdmYy5ldmVudEVtaXR0ZXIub24oRXZlbnRUeXBlLkdyb3VwTWVtYmVyc1VwZGF0ZSwgdGhpcy5vblVzZXJJbmZvc1VwZGF0ZSk7CiAgICB3ZmMuZ2V0R3JvdXBNZW1iZXJzKHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24udGFyZ2V0LCB0cnVlKTsKICAgIHZhciB1c2VySW5mbyA9IHdmYy5nZXRVc2VySW5mbyh3ZmMuZ2V0VXNlcklkKCksIGZhbHNlLCB0aGlzLmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLnRhcmdldCk7CiAgICB0aGlzLmdyb3VwQWxpYXMgPSB1c2VySW5mby5ncm91cEFsaWFzID8gdXNlckluZm8uZ3JvdXBBbGlhcyA6IHVzZXJJbmZvLmRpc3BsYXlOYW1lOwogIH0sCiAgYmVmb3JlRGVzdHJveTogZnVuY3Rpb24gYmVmb3JlRGVzdHJveSgpIHsKICAgIHdmYy5ldmVudEVtaXR0ZXIucmVtb3ZlTGlzdGVuZXIoRXZlbnRUeXBlLlVzZXJJbmZvc1VwZGF0ZSwgdGhpcy5vblVzZXJJbmZvc1VwZGF0ZSk7CiAgICB3ZmMuZXZlbnRFbWl0dGVyLnJlbW92ZUxpc3RlbmVyKEV2ZW50VHlwZS5Hcm91cE1lbWJlcnNVcGRhdGUsIHRoaXMub25Vc2VySW5mb3NVcGRhdGUpOwogIH0sCiAgY29tcG9uZW50czogewogICAgVXNlckxpc3RWaWV3OiBVc2VyTGlzdFZpZXcKICB9LAogIG1ldGhvZHM6IHsKICAgIG9uVXNlckluZm9zVXBkYXRlOiBmdW5jdGlvbiBvblVzZXJJbmZvc1VwZGF0ZSgpIHsKICAgICAgdGhpcy5ncm91cE1lbWJlclVzZXJJbmZvcyA9IHN0b3JlLmdldENvbnZlcnNhdGlvbk1lbWJlclVzckluZm9zKHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24pOwogICAgfSwKICAgIHNob3dDcmVhdGVDb252ZXJzYXRpb25Nb2RhbDogZnVuY3Rpb24gc2hvd0NyZWF0ZUNvbnZlcnNhdGlvbk1vZGFsKCkgewogICAgICB2YXIgX3RoaXMgPSB0aGlzOwoKICAgICAgdmFyIHN1Y2Nlc3NDQiA9IGZ1bmN0aW9uIHN1Y2Nlc3NDQih1c2VycykgewogICAgICAgIHZhciBpZHMgPSB1c2Vycy5tYXAoZnVuY3Rpb24gKHUpIHsKICAgICAgICAgIHJldHVybiB1LnVpZDsKICAgICAgICB9KTsKICAgICAgICB3ZmMuYWRkR3JvdXBNZW1iZXJzKF90aGlzLmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLnRhcmdldCwgaWRzLCBudWxsLCBbMF0pOwogICAgICB9OwoKICAgICAgdmFyIGdyb3VwTWVtYmVyVXNlckluZm9zID0gc3RvcmUuZ2V0R3JvdXBNZW1iZXJVc2VySW5mb3ModGhpcy5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbi50YXJnZXQsIGZhbHNlKTsKICAgICAgdGhpcy4kcGlja0NvbnRhY3QoewogICAgICAgIHN1Y2Nlc3NDQjogc3VjY2Vzc0NCLAogICAgICAgIGluaXRpYWxDaGVja2VkVXNlcnM6IGdyb3VwTWVtYmVyVXNlckluZm9zLAogICAgICAgIHVuY2hlY2thYmxlVXNlcnM6IGdyb3VwTWVtYmVyVXNlckluZm9zLAogICAgICAgIGNvbmZpcm1UaXRsZTogdGhpcy4kdCgnY29tbW9uLmFkZCcpCiAgICAgIH0pOwogICAgfSwKICAgIHNob3dSZW1vdmVHcm91cE1lbWJlck1vZGFsOiBmdW5jdGlvbiBzaG93UmVtb3ZlR3JvdXBNZW1iZXJNb2RhbCgpIHsKICAgICAgdmFyIF90aGlzMiA9IHRoaXM7CgogICAgICB2YXIgc3VjY2Vzc0NCID0gZnVuY3Rpb24gc3VjY2Vzc0NCKHVzZXJzKSB7CiAgICAgICAgdmFyIGlkcyA9IHVzZXJzLm1hcChmdW5jdGlvbiAodSkgewogICAgICAgICAgcmV0dXJuIHUudWlkOwogICAgICAgIH0pOwogICAgICAgIHdmYy5raWNrb2ZmR3JvdXBNZW1iZXJzKF90aGlzMi5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbi50YXJnZXQsIGlkcywgWzBdKTsKICAgICAgfTsKCiAgICAgIHZhciBncm91cE1lbWJlclVzZXJJbmZvcyA9IHN0b3JlLmdldEdyb3VwTWVtYmVyVXNlckluZm9zKHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24udGFyZ2V0LCBmYWxzZSwgZmFsc2UpOwogICAgICB0aGlzLiRwaWNrQ29udGFjdCh7CiAgICAgICAgc3VjY2Vzc0NCOiBzdWNjZXNzQ0IsCiAgICAgICAgdXNlcnM6IGdyb3VwTWVtYmVyVXNlckluZm9zCiAgICAgIH0pOwogICAgfSwKICAgIHNob3dVc2VySW5mbzogZnVuY3Rpb24gc2hvd1VzZXJJbmZvKHVzZXIpIHsKICAgICAgY29uc29sZS5sb2coJ3RvZG8gc2hvdyB1c2VySW5mbycsIHVzZXIpOwogICAgfSwKICAgIGdldEdyb3VwQW5ub3VuY2VtZW50OiBmdW5jdGlvbiBnZXRHcm91cEFubm91bmNlbWVudCgpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CgogICAgICByZXR1cm4gX2FzeW5jVG9HZW5lcmF0b3IoIC8qI19fUFVSRV9fKi9yZWdlbmVyYXRvclJ1bnRpbWUubWFyayhmdW5jdGlvbiBfY2FsbGVlKCkgewogICAgICAgIHJldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlJChfY29udGV4dCkgewogICAgICAgICAgd2hpbGUgKDEpIHsKICAgICAgICAgICAgc3dpdGNoIChfY29udGV4dC5wcmV2ID0gX2NvbnRleHQubmV4dCkgewogICAgICAgICAgICAgIGNhc2UgMDoKICAgICAgICAgICAgICAgIGFwcFNlcnZlckFwaS5nZXRHcm91cEFubm91bmNlbWVudChfdGhpczMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24udGFyZ2V0KS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2UudGV4dCkgewogICAgICAgICAgICAgICAgICAgIF90aGlzMy5ncm91cEFubm91bmNlbWVudCA9IHJlc3BvbnNlLnRleHQ7CiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICAgICAgICAgICAgY29uc29sZS5sb2coJ2dldEdyb3VwQW5ub3VuY2VtZW50JywgZXJyKTsKCiAgICAgICAgICAgICAgICAgIGlmIChfdGhpczMuZW5hYmxlRWRpdEdyb3VwTmFtZU9yQW5ub3VuY2VtZW50KSB7CiAgICAgICAgICAgICAgICAgICAgX3RoaXMzLmdyb3VwQW5ub3VuY2VtZW50ID0gX3RoaXMzLiR0KCdjb252ZXJzYXRpb24uY2xpY2tfdG9fZWRpdF9ncm91cF9hbm5vdW5jZW1lbnQnKTsKICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgIGNhc2UgMToKICAgICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LnN0b3AoKTsKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0sIF9jYWxsZWUpOwogICAgICB9KSkoKTsKICAgIH0sCiAgICB1cGRhdGVHcm91cE5hbWU6IGZ1bmN0aW9uIHVwZGF0ZUdyb3VwTmFtZSgpIHsKICAgICAgdmFyIF90aGlzNCA9IHRoaXM7CgogICAgICB2YXIgZ3JvdXBJZCA9IHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24udGFyZ2V0OwoKICAgICAgaWYgKCF0aGlzLm5ld0dyb3VwTmFtZSB8fCB0aGlzLm5ld0dyb3VwTmFtZSA9PT0gdGhpcy5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbi5fdGFyZ2V0Ll9kaXNwbGF5TmFtZSkgewogICAgICAgIHJldHVybjsKICAgICAgfQoKICAgICAgd2ZjLm1vZGlmeUdyb3VwSW5mbyhncm91cElkLCBNb2RpZnlHcm91cEluZm9UeXBlLk1vZGlmeV9Hcm91cF9OYW1lLCB0aGlzLm5ld0dyb3VwTmFtZSwgWzBdLCBudWxsLCBmdW5jdGlvbiAoKSB7CiAgICAgICAgX3RoaXM0LmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLl90YXJnZXQuX2Rpc3BsYXlOYW1lID0gX3RoaXM0Lm5ld0dyb3VwTmFtZTsKCiAgICAgICAgX3RoaXM0LiRyZWZzLmdyb3VwTmFtZUlucHV0LmJsdXIoKTsKICAgICAgfSwgZnVuY3Rpb24gKGVycikgey8vIGRvIG5vdGhpbmcKICAgICAgfSk7CiAgICB9LAogICAgdXBkYXRlR3JvdXBBbm5vdW5jZW1lbnQ6IGZ1bmN0aW9uIHVwZGF0ZUdyb3VwQW5ub3VuY2VtZW50KCkgewogICAgICB2YXIgX3RoaXM1ID0gdGhpczsKCiAgICAgIHJldHVybiBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUyKCkgewogICAgICAgIHJldHVybiByZWdlbmVyYXRvclJ1bnRpbWUud3JhcChmdW5jdGlvbiBfY2FsbGVlMiQoX2NvbnRleHQyKSB7CiAgICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0Mi5wcmV2ID0gX2NvbnRleHQyLm5leHQpIHsKICAgICAgICAgICAgICBjYXNlIDA6CiAgICAgICAgICAgICAgICBpZiAoISghX3RoaXM1Lm5ld0dyb3VwQW5ub3VuY2VtZW50IHx8IF90aGlzNS5uZXdHcm91cEFubm91bmNlbWVudCA9PT0gX3RoaXM1Lmdyb3VwQW5ub3VuY2VtZW50KSkgewogICAgICAgICAgICAgICAgICBfY29udGV4dDIubmV4dCA9IDI7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dDIuYWJydXB0KCJyZXR1cm4iKTsKCiAgICAgICAgICAgICAgY2FzZSAyOgogICAgICAgICAgICAgICAgX2NvbnRleHQyLm5leHQgPSA0OwogICAgICAgICAgICAgICAgcmV0dXJuIGFwcFNlcnZlckFwaS51cGRhdGVHcm91cEFubm91bmNlbWVudCh3ZmMuZ2V0VXNlcklkKCksIF90aGlzNS5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbi50YXJnZXQsIF90aGlzNS5uZXdHcm91cEFubm91bmNlbWVudCk7CgogICAgICAgICAgICAgIGNhc2UgNDoKICAgICAgICAgICAgICAgIF90aGlzNS5ncm91cEFubm91bmNlbWVudCA9IF90aGlzNS5uZXdHcm91cEFubm91bmNlbWVudDsKCiAgICAgICAgICAgICAgICBfdGhpczUuJHJlZnMuZ3JvdXBBbm5vdW5jZW1lbnRJbnB1dC5ibHVyKCk7CgogICAgICAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgICBjYXNlICJlbmQiOgogICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0Mi5zdG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlMik7CiAgICAgIH0pKSgpOwogICAgfSwKICAgIHVwZGF0ZUdyb3VwQWxpYXM6IGZ1bmN0aW9uIHVwZGF0ZUdyb3VwQWxpYXMoKSB7CiAgICAgIHZhciBfdGhpczYgPSB0aGlzOwoKICAgICAgaWYgKHRoaXMubmV3R3JvdXBBbGlhcyAmJiB0aGlzLm5ld0dyb3VwQWxpYXMgIT09IHRoaXMuZ3JvdXBBbGlhcykgewogICAgICAgIHdmYy5tb2RpZnlHcm91cEFsaWFzKHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24udGFyZ2V0LCB0aGlzLm5ld0dyb3VwQWxpYXMsIFswXSwgbnVsbCwgZnVuY3Rpb24gKCkgewogICAgICAgICAgX3RoaXM2Lmdyb3VwQWxpYXMgPSBfdGhpczYubmV3R3JvdXBBbGlhczsKICAgICAgICB9LCBudWxsKTsKICAgICAgfQogICAgfSwKICAgIHF1aXRHcm91cDogZnVuY3Rpb24gcXVpdEdyb3VwKCkgewogICAgICB2YXIgX3RoaXM3ID0gdGhpczsKCiAgICAgIHRoaXMuJGFsZXJ0KHsKICAgICAgICB0aXRsZTogJ+mAgOWHuue+pOe7hCcsCiAgICAgICAgY29udGVudDogJ+ehruWumumAgOWHuue+pOe7hO+8nycsCiAgICAgICAgY29uZmlybVRleHQ6ICfnoa7lrponLAogICAgICAgIGNhbmNlbFRleHQ6ICflj5bmtognLAogICAgICAgIGNhbmNlbENhbGxiYWNrOiBmdW5jdGlvbiBjYW5jZWxDYWxsYmFjaygpIHsvLyBkbyBub3RoaW5nCiAgICAgICAgfSwKICAgICAgICBjb25maXJtQ2FsbGJhY2s6IGZ1bmN0aW9uIGNvbmZpcm1DYWxsYmFjaygpIHsKICAgICAgICAgIHN0b3JlLnF1aXRHcm91cChfdGhpczcuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24udGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfSwKICAgIGRpc21pc3NHcm91cDogZnVuY3Rpb24gZGlzbWlzc0dyb3VwKCkgewogICAgICB2YXIgX3RoaXM4ID0gdGhpczsKCiAgICAgIHRoaXMuJGFsZXJ0KHsKICAgICAgICB0aXRsZTogJ+ino+aVo+e+pOe7hCcsCiAgICAgICAgY29udGVudDogJ+ehruWumuino+aVo+e+pOe7hO+8nycsCiAgICAgICAgY29uZmlybVRleHQ6ICfnoa7lrponLAogICAgICAgIGNhbmNlbFRleHQ6ICflj5bmtognLAogICAgICAgIGNhbmNlbENhbGxiYWNrOiBmdW5jdGlvbiBjYW5jZWxDYWxsYmFjaygpIHsvLyBkbyBub3RoaW5nCiAgICAgICAgfSwKICAgICAgICBjb25maXJtQ2FsbGJhY2s6IGZ1bmN0aW9uIGNvbmZpcm1DYWxsYmFjaygpIHsKICAgICAgICAgIHN0b3JlLmRpc21pc3NHcm91cChfdGhpczguY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24udGFyZ2V0KTsKICAgICAgICB9CiAgICAgIH0pOwogICAgfSwKICAgIHNldEZhdkdyb3VwOiBmdW5jdGlvbiBzZXRGYXZHcm91cChncm91cElkLCBmYXYpIHsKICAgICAgdmFyIF90aGlzOSA9IHRoaXM7CgogICAgICB3ZmMuc2V0RmF2R3JvdXAoZ3JvdXBJZCwgZmF2LCBmdW5jdGlvbiAoKSB7CiAgICAgICAgX3RoaXM5LmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLl90YXJnZXQuX2lzRmF2ID0gZmF2OwogICAgICAgIHN0b3JlLnJlbG9hZEZhdkdyb3VwTGlzdCgpOwogICAgICB9LCBmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgY29uc29sZS5sb2coJ3NldEZhdkdyb3VwIGVycm9yJywgZXJyKTsKICAgICAgfSk7CiAgICB9LAogICAgcGlja0ZpbGU6IGZ1bmN0aW9uIHBpY2tGaWxlKCkgewogICAgICBpZiAoIXRoaXMuZW5hYmxlRWRpdEdyb3VwTmFtZU9yQW5ub3VuY2VtZW50KSB7CiAgICAgICAgdGhpcy4kbm90aWZ5KHsKICAgICAgICAgIHRleHQ6ICfnvqTkuLvmiJbnrqHnkIblkZjvvIzmiY3og73mm7TmlrDlpLTlg48nLAogICAgICAgICAgdHlwZTogJ3dhcm4nCiAgICAgICAgfSk7CiAgICAgICAgcmV0dXJuOwogICAgICB9CgogICAgICB0aGlzLiRyZWZzWydmaWxlSW5wdXQnXS5jbGljaygpOwogICAgfSwKICAgIG9uUGlja0ZpbGU6IGZ1bmN0aW9uIG9uUGlja0ZpbGUoZXZlbnQpIHsKICAgICAgdmFyIF90aGlzMTAgPSB0aGlzOwoKICAgICAgdmFyIGZpbGUgPSBldmVudC50YXJnZXQuZmlsZXNbMF07CiAgICAgIHdmYy51cGxvYWRNZWRpYShmaWxlLm5hbWUsIGZpbGUsIE1lc3NhZ2VDb250ZW50TWVkaWFUeXBlLlBvcnRyYWl0LCBmdW5jdGlvbiAodXJsKSB7CiAgICAgICAgd2ZjLm1vZGlmeUdyb3VwSW5mbyhfdGhpczEwLmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLnRhcmdldCwgTW9kaWZ5R3JvdXBJbmZvVHlwZS5Nb2RpZnlfR3JvdXBfUG9ydHJhaXQsIHVybCwgW10sIG51bGwsIGZ1bmN0aW9uICgpIHsKICAgICAgICAgIGNvbnNvbGUubG9nKCdtb2RpZnkgZ3JvdXAgcG9ydHJhaXQgc3VjY2VzcycsIHVybCk7CiAgICAgICAgfSwgZnVuY3Rpb24gKGVycikgewogICAgICAgICAgY29uc29sZS5sb2coJ2VycicsIGVycik7CiAgICAgICAgfSk7CiAgICAgIH0sIGZ1bmN0aW9uIChlcnIpIHsKICAgICAgICBjb25zb2xlLmxvZygndXBkYXRlIG1lZGlhIGVycm9yJywgZXJyKTsKICAgICAgfSwgZnVuY3Rpb24gKHAsIHQpIHt9KTsKICAgIH0sCiAgICBjbGVhckNvbnZlcnNhdGlvbkhpc3Rvcnk6IGZ1bmN0aW9uIGNsZWFyQ29udmVyc2F0aW9uSGlzdG9yeSgpIHsKICAgICAgd2ZjLmNsZWFyTWVzc2FnZXModGhpcy5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbik7CiAgICB9LAogICAgY2xlYXJSZW1vdGVDb252ZXJzYXRpb25IaXN0b3J5OiBmdW5jdGlvbiBjbGVhclJlbW90ZUNvbnZlcnNhdGlvbkhpc3RvcnkoKSB7CiAgICAgIHdmYy5jbGVhclJlbW90ZUNvbnZlcnNhdGlvbk1lc3NhZ2VzKHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24pOwogICAgfQogIH0sCiAgY3JlYXRlZDogZnVuY3Rpb24gY3JlYXRlZCgpIHsKICAgIHRoaXMuZ2V0R3JvdXBBbm5vdW5jZW1lbnQoKTsKICB9LAogIGNvbXB1dGVkOiB7CiAgICBlbmFibGVRdWl0R3JvdXA6IGZ1bmN0aW9uIGVuYWJsZVF1aXRHcm91cCgpIHsKICAgICAgdmFyIGdyb3VwSW5mbyA9IHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24uX3RhcmdldDsKCiAgICAgIGlmIChncm91cEluZm8udHlwZSA9PT0gR3JvdXBUeXBlLk9yZ2FuaXphdGlvbikgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQoKICAgICAgcmV0dXJuIHRydWU7CiAgICB9LAogICAgY2xpY2tHcm91cE1lbWJlckl0ZW1GdW5jOiBmdW5jdGlvbiBjbGlja0dyb3VwTWVtYmVySXRlbUZ1bmMoKSB7CiAgICAgIHZhciBncm91cEluZm8gPSB0aGlzLmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLl90YXJnZXQ7CiAgICAgIHZhciBncm91cE1lbWJlciA9IHdmYy5nZXRHcm91cE1lbWJlcih0aGlzLmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLnRhcmdldCwgd2ZjLmdldFVzZXJJZCgpKTsKCiAgICAgIGlmIChncm91cEluZm8ucHJpdmF0ZUNoYXQgPT09IDEgJiYgW0dyb3VwTWVtYmVyVHlwZS5NYW5hZ2VyLCBHcm91cE1lbWJlclR5cGUuT3duZXJdLmluZGV4T2YoZ3JvdXBNZW1iZXIudHlwZSkgPT09IC0xKSB7CiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uICgpIHsvLyDnvqTph4zpnaLvvIznpoHmraLlj5Hotbfnp4HogYoKICAgICAgICB9OwogICAgICB9CgogICAgICByZXR1cm4gbnVsbDsKICAgIH0sCiAgICBlbmFibGVEaXNtaXNzR3JvdXA6IGZ1bmN0aW9uIGVuYWJsZURpc21pc3NHcm91cCgpIHsKICAgICAgdmFyIGdyb3VwSW5mbyA9IHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24uX3RhcmdldDsKCiAgICAgIGlmIChncm91cEluZm8udHlwZSA9PT0gR3JvdXBUeXBlLk9yZ2FuaXphdGlvbikgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQoKICAgICAgaWYgKGdyb3VwSW5mby5vd25lciA9PT0gd2ZjLmdldFVzZXJJZCgpKSB7CiAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgIH0KCiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0sCiAgICBlbmFibGVBZGRHcm91cE1lbWJlcjogZnVuY3Rpb24gZW5hYmxlQWRkR3JvdXBNZW1iZXIoKSB7CiAgICAgIHZhciBzZWxmVWlkID0gd2ZjLmdldFVzZXJJZCgpOwogICAgICB2YXIgZ3JvdXBJbmZvID0gdGhpcy5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbi5fdGFyZ2V0OwoKICAgICAgaWYgKGdyb3VwSW5mby50eXBlID09PSBHcm91cFR5cGUuT3JnYW5pemF0aW9uKSB7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICB9IC8v5ZyoZ3JvdXAgdHlwZeS4ulJlc3RyaWN0ZWTml7bvvIwwIOW8gOaUvuWKoOWFpeadg+mZkO+8iOe+pOaIkOWRmOWPr+S7peaLieS6uu+8jOeUqOaIt+S5n+WPr+S7peS4u+WKqOWKoOWFpe+8ie+8mzEg5Y+q6IO9576k5oiQ5ZGY5ouJ5Lq65YWl576k77ybMiDlj6rog73nvqTnrqHnkIbmi4nkurrlhaXnvqQKCgogICAgICBpZiAoZ3JvdXBJbmZvLnR5cGUgPT09IEdyb3VwVHlwZS5SZXN0cmljdGVkKSB7CiAgICAgICAgaWYgKGdyb3VwSW5mby5qb2luVHlwZSA9PT0gMCB8fCBncm91cEluZm8uam9pblR5cGUgPT09IDEpIHsKICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgIH0gZWxzZSBpZiAoZ3JvdXBJbmZvLmpvaW5UeXBlID09PSAyKSB7CiAgICAgICAgICB2YXIgZ3JvdXBNZW1iZXIgPSB3ZmMuZ2V0R3JvdXBNZW1iZXIodGhpcy5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbi50YXJnZXQsIHNlbGZVaWQpOwogICAgICAgICAgcmV0dXJuIFtHcm91cE1lbWJlclR5cGUuTWFuYWdlciwgR3JvdXBNZW1iZXJUeXBlLk93bmVyXS5pbmRleE9mKGdyb3VwTWVtYmVyLnR5cGUpID49IDA7CiAgICAgICAgfQogICAgICB9CgogICAgICByZXR1cm4gdHJ1ZTsKICAgIH0sCiAgICBlbmFibGVSZW1vdmVHcm91cE1lbWJlcjogZnVuY3Rpb24gZW5hYmxlUmVtb3ZlR3JvdXBNZW1iZXIoKSB7CiAgICAgIHZhciBncm91cEluZm8gPSB0aGlzLmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLl90YXJnZXQ7CgogICAgICBpZiAoZ3JvdXBJbmZvLnR5cGUgPT09IEdyb3VwVHlwZS5Pcmdhbml6YXRpb24pIHsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIH0KCiAgICAgIHZhciBzZWxmVWlkID0gd2ZjLmdldFVzZXJJZCgpOwogICAgICB2YXIgZ3JvdXBNZW1iZXIgPSB3ZmMuZ2V0R3JvdXBNZW1iZXIodGhpcy5jb252ZXJzYXRpb25JbmZvLmNvbnZlcnNhdGlvbi50YXJnZXQsIHNlbGZVaWQpOwoKICAgICAgaWYgKGdyb3VwTWVtYmVyKSB7CiAgICAgICAgcmV0dXJuIFtHcm91cE1lbWJlclR5cGUuTWFuYWdlciwgR3JvdXBNZW1iZXJUeXBlLk93bmVyXS5pbmRleE9mKGdyb3VwTWVtYmVyLnR5cGUpID49IDA7CiAgICAgIH0KCiAgICAgIHJldHVybiBmYWxzZTsKICAgIH0sCiAgICBlbmFibGVFZGl0R3JvdXBOYW1lT3JBbm5vdW5jZW1lbnQ6IGZ1bmN0aW9uIGVuYWJsZUVkaXRHcm91cE5hbWVPckFubm91bmNlbWVudCgpIHsKICAgICAgdmFyIGdyb3VwSW5mbyA9IHRoaXMuY29udmVyc2F0aW9uSW5mby5jb252ZXJzYXRpb24uX3RhcmdldDsKCiAgICAgIGlmIChncm91cEluZm8udHlwZSA9PT0gR3JvdXBUeXBlLk9yZ2FuaXphdGlvbikgewogICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgfQoKICAgICAgdmFyIHNlbGZVaWQgPSB3ZmMuZ2V0VXNlcklkKCk7CiAgICAgIHZhciBncm91cE1lbWJlciA9IHdmYy5nZXRHcm91cE1lbWJlcih0aGlzLmNvbnZlcnNhdGlvbkluZm8uY29udmVyc2F0aW9uLnRhcmdldCwgc2VsZlVpZCk7CgogICAgICBpZiAoZ3JvdXBNZW1iZXIpIHsKICAgICAgICByZXR1cm4gW0dyb3VwTWVtYmVyVHlwZS5NYW5hZ2VyLCBHcm91cE1lbWJlclR5cGUuT3duZXJdLmluZGV4T2YoZ3JvdXBNZW1iZXIudHlwZSkgPj0gMDsKICAgICAgfQoKICAgICAgcmV0dXJuIGZhbHNlOwogICAgfSwKICAgIHVzZXJzOiBmdW5jdGlvbiB1c2VycygpIHsKICAgICAgaWYgKHRoaXMuZmlsdGVyUXVlcnkpIHsKICAgICAgICByZXR1cm4gc3RvcmUuZmlsdGVyVXNlcnModGhpcy5ncm91cE1lbWJlclVzZXJJbmZvcywgdGhpcy5maWx0ZXJRdWVyeSk7CiAgICAgIH0gZWxzZSB7CiAgICAgICAgcmV0dXJuIHRoaXMuZ3JvdXBNZW1iZXJVc2VySW5mb3M7CiAgICAgIH0KICAgIH0KICB9Cn07"},null]}