{"remainingRequest":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js!D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\babel-loader\\lib\\index.js!D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-eslint\\node_modules\\eslint-loader\\index.js??ref--13-0!D:\\jenkins\\workspace\\dataShare-fvue\\src\\components\\eipControl\\bus\\CustomQuery.js","dependencies":[{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\src\\components\\eipControl\\bus\\CustomQuery.js","mtime":1733309211938},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\babel.config.js","mtime":1733906004399},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-babel\\node_modules\\thread-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\babel-loader\\lib\\index.js","mtime":456789000000},{"path":"D:\\jenkins\\workspace\\dataShare-fvue\\node_modules\\@vue\\cli-plugin-eslint\\node_modules\\eslint-loader\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF9vYmplY3RTcHJlYWQgZnJvbSAiRDovamVua2lucy93b3Jrc3BhY2UvZGF0YVNoYXJlLWZ2dWUvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL29iamVjdFNwcmVhZDIuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5jb25jYXQuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5hcnJheS5qb2luLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkucHVzaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLml0ZXJhdG9yLmNvbnN0cnVjdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuaXRlcmF0b3IuZm9yLWVhY2guanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3Qua2V5cy5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy93ZWIuZG9tLWNvbGxlY3Rpb25zLmZvci1lYWNoLmpzIjsKaW1wb3J0IHN0b3JlIGZyb20gIkAvc3RvcmUuanMiOwppbXBvcnQgdXRpbHMgZnJvbSAiQC9ob3RlbnQtdWktdXRpbC5qcyI7CmltcG9ydCByZXEgZnJvbSAiQC9yZXF1ZXN0LmpzIjsKaW1wb3J0IHsgTWVzc2FnZSB9IGZyb20gImVsZW1lbnQtdWkiOwp2YXIgQ3VzdG9tUXVlcnkgPSB7CiAgLyoqDQogICAqIOmAmui/h+WIq+WQjeiOt+WPluWFs+iBlOafpeivouWumuS5iQ0KICAgKi8KICBnZXQ6IGZ1bmN0aW9uIGdldChhbGlhcykgewogICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHsKICAgICAgaWYgKCFhbGlhcykgewogICAgICAgIHJlamVjdCgiYWxpYXMgY2FuIG5vdCBiZSBudWxsLiIpOwogICAgICB9CiAgICAgIHZhciBfcXVlcnkgPSBudWxsOwogICAgICAvLyDpgJrov4d2dWV45Yqg6L295YWz6IGU5p+l6K+i5a+56LGhCiAgICAgIHZhciB1bndhdGNoTWV0aG9kID0gc3RvcmUud2F0Y2goZnVuY3Rpb24gKHN0YXRlKSB7CiAgICAgICAgcmV0dXJuIHN0YXRlLmZvcm0uY3VzdG9tUXVlcnlEYXRhOwogICAgICB9LCBmdW5jdGlvbiAodmFsKSB7CiAgICAgICAgaWYgKHZhbCkgewogICAgICAgICAgX3F1ZXJ5ID0gdmFsW2FsaWFzXTsKICAgICAgICB9CiAgICAgICAgaWYgKF9xdWVyeSkgewogICAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICAgIC8vIOiOt+WPluWIsOaMh+WumuWIq+WQjeeahOWFs+iBlOafpeivouWQjuWNs+enu+mZpHdhdGNoCiAgICAgICAgICAgIHVud2F0Y2hNZXRob2QgJiYgdW53YXRjaE1ldGhvZCgpOwogICAgICAgICAgfSwgMTApOwogICAgICAgICAgcmVzb2x2ZShfcXVlcnkpOwogICAgICAgIH0KICAgICAgfSwgewogICAgICAgIGRlZXA6IHRydWUsCiAgICAgICAgaW1tZWRpYXRlOiB0cnVlCiAgICAgIH0pOwogICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgICAvLyB2dWV457yT5a2Y55qE5pWw5o2u5Lit5rKh5om+5Yiw5YWz6IGU5p+l6K+i5pe277yM5p+l6K+i5ZCO5Y+wCiAgICAgICAgIV9xdWVyeSAmJiBzdG9yZS5kaXNwYXRjaCgiZm9ybS9nZXRDdXN0b21RdWVyeSIsIGFsaWFzKTsKICAgICAgICAvLyAxNeenkuWQjuacquaJvuWIsOWFs+iBlOafpeivouaXtu+8jOenu+mZpHdhdGNo5bm25pi+56S66ZSZ6K+v5L+h5oGv44CCCiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgICBpZiAoIV9xdWVyeSkgewogICAgICAgICAgICB1bndhdGNoTWV0aG9kKCk7CiAgICAgICAgICAgIHJlamVjdCgpOwogICAgICAgICAgICBDdXN0b21RdWVyeS5fdGhyb3dFeGNlcHRpb24oIlx1NjcyQVx1NjI3RVx1NTIzMFx1NTIyQlx1NTQwRFx1NEUzQSIuY29uY2F0KGFsaWFzLCAiXHU3Njg0XHU1MTczXHU4MDU0XHU2N0U1XHU4QkUyIikpOwogICAgICAgICAgfQogICAgICAgIH0sIDE1MDAwKTsKICAgICAgfSwgMTApOwogICAgfSk7CiAgfSwKICAvKioNCiAgKiDpgJrov4fliKvlkI3ojrflj5blr7nor53moYYNCiAgKi8KICBnZXREaWFsb2c6IGZ1bmN0aW9uIGdldERpYWxvZyhhbGlhcykgewogICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHsKICAgICAgaWYgKCFhbGlhcykgewogICAgICAgIHJlamVjdCgiYWxpYXMgY2FuIG5vdCBiZSBudWxsLiIpOwogICAgICB9CiAgICAgIHZhciBfcXVlcnkgPSBudWxsOwogICAgICAvLyDpgJrov4d2dWV45Yqg6L295YWz6IGU5p+l6K+i5a+56LGhCiAgICAgIHZhciB1bndhdGNoTWV0aG9kID0gc3RvcmUud2F0Y2goZnVuY3Rpb24gKHN0YXRlKSB7CiAgICAgICAgcmV0dXJuIHN0YXRlLmZvcm0uY3VzdG9tRGlhbG9nRGF0YTsKICAgICAgfSwgZnVuY3Rpb24gKHZhbCkgewogICAgICAgIGlmICh2YWwpIHsKICAgICAgICAgIF9xdWVyeSA9IHZhbFthbGlhc107CiAgICAgICAgfQogICAgICAgIGlmIChfcXVlcnkpIHsKICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkgewogICAgICAgICAgICAvLyDojrflj5bliLDmjIflrprliKvlkI3nmoTlhbPogZTmn6Xor6LlkI7ljbPnp7vpmaR3YXRjaAogICAgICAgICAgICB1bndhdGNoTWV0aG9kICYmIHVud2F0Y2hNZXRob2QoKTsKICAgICAgICAgIH0sIDEwKTsKICAgICAgICAgIHJlc29sdmUoX3F1ZXJ5KTsKICAgICAgICB9CiAgICAgIH0sIHsKICAgICAgICBkZWVwOiB0cnVlLAogICAgICAgIGltbWVkaWF0ZTogdHJ1ZQogICAgICB9KTsKICAgICAgc2V0VGltZW91dChmdW5jdGlvbiAoKSB7CiAgICAgICAgLy8gdnVleOe8k+WtmOeahOaVsOaNruS4reayoeaJvuWIsOWFs+iBlOafpeivouaXtu+8jOafpeivouWQjuWPsAogICAgICAgICFfcXVlcnkgJiYgc3RvcmUuZGlzcGF0Y2goImZvcm0vZ2V0Q3VzdG9tRGlhbG9nIiwgYWxpYXMpOwogICAgICAgIC8vIDE156eS5ZCO5pyq5om+5Yiw5YWz6IGU5p+l6K+i5pe277yM56e76Zmkd2F0Y2jlubbmmL7npLrplJnor6/kv6Hmga/jgIIKICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uICgpIHsKICAgICAgICAgIGlmICghX3F1ZXJ5KSB7CiAgICAgICAgICAgIHVud2F0Y2hNZXRob2QoKTsKICAgICAgICAgICAgcmVqZWN0KCk7CiAgICAgICAgICAgIEN1c3RvbVF1ZXJ5Ll90aHJvd0V4Y2VwdGlvbigiXHU2NzJBXHU2MjdFXHU1MjMwXHU1MjJCXHU1NDBEXHU0RTNBIi5jb25jYXQoYWxpYXMsICJcdTc2ODRcdTUxNzNcdTgwNTRcdTY3RTVcdThCRTIiKSk7CiAgICAgICAgICB9CiAgICAgICAgfSwgMTUwMDApOwogICAgICB9LCAxMCk7CiAgICB9KTsKICB9LAogIC8qKg0KICAgKiDkvKDlhaXlhbPogZTmn6Xor6LliKvlkI3lkozmn6Xor6Llj4LmlbDvvIzov5Tlm57mn6Xor6LliLDnmoTmlbDmja4NCiAgICovCiAgbG9hZDogZnVuY3Rpb24gbG9hZChhbGlhcywgcGFyYW1zKSB7CiAgICByZXR1cm4gbmV3IFByb21pc2UoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkgewogICAgICBDdXN0b21RdWVyeS5nZXQoYWxpYXMpLnRoZW4oZnVuY3Rpb24gKHF1ZXJ5KSB7CiAgICAgICAgLy8g5omn6KGM5YWz6IGU5p+l6K+iCiAgICAgICAgQ3VzdG9tUXVlcnkuX2RvUXVlcnkocXVlcnksIHBhcmFtcywgJzEnLCBmdW5jdGlvbiAoZGF0YSkgewogICAgICAgICAgcmVzb2x2ZShkYXRhKTsKICAgICAgICB9KTsKICAgICAgfSwgZnVuY3Rpb24gKCkgewogICAgICAgIHJlamVjdCgpOwogICAgICB9KTsKICAgIH0pOwogIH0sCiAgLyoqDQogICAqIOS8oOWFpeWvueivneahhuWIq+WQjeWSjOafpeivouWPguaVsO+8jOi/lOWbnuafpeivouWIsOeahOaVsOaNrg0KICAgKi8KICBsb2FkRGlhbG9nOiBmdW5jdGlvbiBsb2FkRGlhbG9nKGFsaWFzLCBwYXJhbXMpIHsKICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgIEN1c3RvbVF1ZXJ5LmdldERpYWxvZyhhbGlhcykudGhlbihmdW5jdGlvbiAocXVlcnkpIHsKICAgICAgICAvLyDmiafooYzlhbPogZTmn6Xor6IKICAgICAgICBDdXN0b21RdWVyeS5fZG9RdWVyeShxdWVyeSwgcGFyYW1zLCAnMicsIGZ1bmN0aW9uIChkYXRhKSB7CiAgICAgICAgICByZXNvbHZlKGRhdGEpOwogICAgICAgIH0pOwogICAgICB9LCBmdW5jdGlvbiAoKSB7CiAgICAgICAgcmVqZWN0KCk7CiAgICAgIH0pOwogICAgfSk7CiAgfSwKICBfdGhyb3dFeGNlcHRpb246IGZ1bmN0aW9uIF90aHJvd0V4Y2VwdGlvbihtc2cpIHsKICAgIE1lc3NhZ2UuZXJyb3IobXNnKTsKICAgIHRocm93IG1zZzsKICB9LAogIC8vIOWkhOeQhlBPU1Tor7fmsYLml7bnmoTlj4LmlbAKICBfaGFuZGxlUG9zdERhdGE6IGZ1bmN0aW9uIF9oYW5kbGVQb3N0RGF0YShxdWVyeSwgcXVlcnlQYXJhbXMpIHsKICAgIGlmICghcXVlcnkuZGF0YVBhcmFtIHx8IHF1ZXJ5LmRhdGFQYXJhbS5jb25zdHJ1Y3RvciAhPSBTdHJpbmcpIHsKICAgICAgcmV0dXJuIHF1ZXJ5UGFyYW1zOwogICAgfQogICAgLy8g5p6E5bu65LiK5LiL5paH5pWw5o2u5a+56LGhCiAgICB2YXIgY3R4ID0ge307CiAgICBxdWVyeVBhcmFtcyAmJiBxdWVyeVBhcmFtcy5mb3JFYWNoKGZ1bmN0aW9uIChlbGVtZW50KSB7CiAgICAgIGN0eFtlbGVtZW50LmtleV0gPSBlbGVtZW50LnZhbHVlOwogICAgfSk7CiAgICB2YXIgZXhwID0gdXRpbHMucGFyc2VFeHAocXVlcnkuZGF0YVBhcmFtLCBjdHgpOwogICAgdHJ5IHsKICAgICAgcmV0dXJuIEpTT04ucGFyc2UoZXhwKTsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgQ3VzdG9tUXVlcnkuX3Rocm93RXhjZXB0aW9uKCJQT1NUXHU1M0MyXHU2NTcwXHU0RTBEXHU2NjJGXHU2NzA5XHU2NTQ4XHU3Njg0SlNPTlx1NjgzQ1x1NUYwRiIuY29uY2F0KHF1ZXJ5LmRhdGFQYXJhbSkpOwogICAgfQogIH0sCiAgLy8g5aSE55CGR0VU6K+35rGC55qEVVJM77yIR0VU6K+35rGC55qE5p+l6K+i5Y+C5pWw6L+95Yqg5YiwVVJM5ZCO6Z2i77yJCiAgX2hhbmRsZUdldFVybDogZnVuY3Rpb24gX2hhbmRsZUdldFVybCh1cmwsIHF1ZXJ5UGFyYW1zKSB7CiAgICBpZiAoIXVybCkgewogICAgICBDdXN0b21RdWVyeS5fdGhyb3dFeGNlcHRpb24oJ1Jlc3RmdWznsbvlnovnmoR1cmzlnLDlnYDkuLrnqbonKTsKICAgIH0KICAgIHZhciB1cmxQYXJhbXNBcnkgPSBbXTsKICAgIHF1ZXJ5UGFyYW1zICYmIHF1ZXJ5UGFyYW1zLmZvckVhY2goZnVuY3Rpb24gKHEpIHsKICAgICAgdXJsUGFyYW1zQXJ5LnB1c2goIiIuY29uY2F0KHEua2V5LCAiPSIpLmNvbmNhdChxLnZhbHVlKSk7CiAgICB9KTsKICAgIHZhciBsaW5rV29yZCA9IHVybC5pbmRleE9mKCI/IikgPT0gLTEgPyAiPyIgOiAiJiI7CiAgICByZXR1cm4gIiIuY29uY2F0KHVybCkuY29uY2F0KGxpbmtXb3JkKS5jb25jYXQodXJsUGFyYW1zQXJ5LmpvaW4oIiYiKSk7CiAgfSwKICBfZG9RdWVyeTogZnVuY3Rpb24gX2RvUXVlcnkocXVlcnksIHBhcmFtcywgdHlwZSwgY2IpIHsKICAgIHBhcmFtcyA9IHBhcmFtcyB8fCB7fTsKICAgIC8vIOWkjeWItuS4gOS7veWFs+iBlOafpeivouWvueixoQogICAgcXVlcnkgPSBfb2JqZWN0U3ByZWFkKHt9LCBxdWVyeSk7CiAgICAvLyDlhbPogZTmlbDmja7lp4vnu4jmn6Xor6LnrKzkuIDpobUKICAgIHZhciBwYWdlID0gMTsKICAgIC8vIOWFs+iBlOaVsOaNruafpeivouWPguaVsAogICAgdmFyIHF1ZXJ5UGFyYW1zID0gW107CiAgICBpZiAocXVlcnkuY29uZGl0aW9uZmllbGQpIHsKICAgICAgdHJ5IHsKICAgICAgICB2YXIgY29uZGl0aW9uRmllbGRzID0gSlNPTi5wYXJzZShxdWVyeS5jb25kaXRpb25maWVsZCk7CiAgICAgICAgLy8g5p6E5bu65p+l6K+i5Y+C5pWwCiAgICAgICAgaWYgKGNvbmRpdGlvbkZpZWxkcyAmJiBjb25kaXRpb25GaWVsZHMuY29uc3RydWN0b3IgPT0gQXJyYXkgJiYgY29uZGl0aW9uRmllbGRzLmxlbmd0aCA+IDApIHsKICAgICAgICAgIGNvbmRpdGlvbkZpZWxkcy5mb3JFYWNoKGZ1bmN0aW9uIChjKSB7CiAgICAgICAgICAgIC8vIOm7mOiupOaMieeFp+WbuuWumuWAvOaehOW7uuafpeivouWPguaVsAogICAgICAgICAgICB2YXIgb2JqID0gewogICAgICAgICAgICAgIGtleTogYy5maWVsZCwKICAgICAgICAgICAgICB2YWx1ZTogYy5kZWZhdWx0VmFsdWUKICAgICAgICAgICAgfTsKICAgICAgICAgICAgLy8g5Y+C5pWw5Lyg5YWl5pe26I635Y+W5Lyg5YWl55qEcGFyYW1z5Lit55qE5ZCM5ZCN5Y+C5pWw5YC8CiAgICAgICAgICAgIGlmIChjLmRlZmF1bHRUeXBlID09ICIxIikgewogICAgICAgICAgICAgIGlmIChwYXJhbXMuaGFzT3duUHJvcGVydHkoYy5maWVsZCkpIHsKICAgICAgICAgICAgICAgIG9iai52YWx1ZSA9IHBhcmFtc1tjLmZpZWxkXTsKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcXVlcnlQYXJhbXMucHVzaChvYmopOwogICAgICAgICAgfSk7CiAgICAgICAgfQogICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgQ3VzdG9tUXVlcnkuX3Rocm93RXhjZXB0aW9uKCJcdTY3NjFcdTRFRjZcdTVCNTdcdTZCQjVcdTc2ODRKU09OXHU2ODNDXHU1RjBGXHU5NTE5XHU4QkVGXHVGRjFBIi5jb25jYXQoZSkpOwogICAgICB9CiAgICB9CiAgICBpZiAocXVlcnkuZHNUeXBlICE9ICJkYXRhU291cmNlIikgewogICAgICAvLyBQT1NU6K+35rGC77yM5YiZ5aSE55CGcXVlcnlQYXJhbXPlj4LmlbAKICAgICAgaWYgKHF1ZXJ5LnJlcXVlc3RUeXBlID09ICJQT1NUIikgewogICAgICAgIHF1ZXJ5UGFyYW1zID0gQ3VzdG9tUXVlcnkuX2hhbmRsZVBvc3REYXRhKHF1ZXJ5LCBxdWVyeVBhcmFtcyk7CiAgICAgIH0KICAgICAgLy8gR0VU6K+35rGC77yM5YiZ5aSE55CGdXJs5Zyw5Z2ACiAgICAgIGVsc2UgaWYgKHF1ZXJ5LnJlcXVlc3RUeXBlID09ICJHRVQiKSB7CiAgICAgICAgcXVlcnkudXJsID0gQ3VzdG9tUXVlcnkuX2hhbmRsZUdldFVybChxdWVyeS51cmwsIHF1ZXJ5UGFyYW1zKTsKICAgICAgfQogICAgfQogICAgLy8g5p6E5bu65p+l6K+i5Zyw5Z2ACiAgICB2YXIgcXVlcnlVcmwgPSBxdWVyeS5kc1R5cGUgPT0gImRhdGFTb3VyY2UiID8gIiR7Zm9ybX0vZm9ybS9jdXN0b21RdWVyeS92MS9kb1F1ZXJ5P2FsaWFzPSIgKyBxdWVyeS5hbGlhcyArICImcGFnZT0iICsgcGFnZSA6IHF1ZXJ5LnVybDsKCiAgICAvLyDlpITnkIZ1cmzlnLDlnYDkuK3nmoQke+acjeWKoeWQjX0KICAgIHF1ZXJ5VXJsID0gdXRpbHMucGFyc2VVcmwocXVlcnlVcmwpOwogICAgdmFyIHJlcXVlc3RNZXRob2QgPSAiUE9TVCI7CiAgICAvL+WmguaenOWFs+iBlOaVsOaNruWIl+ihqOafpeivouaVsOaNruS4jeaYr+aVsOaNrua6kOWImeivt+axguaWueazleS4unJlc3RmdWzphY3nva7nmoTor7fmsYLmlrnlvI8KICAgIGlmIChxdWVyeS5kc1R5cGUgIT0gImRhdGFTb3VyY2UiKSB7CiAgICAgIHJlcXVlc3RNZXRob2QgPSBxdWVyeS5yZXF1ZXN0VHlwZTsKICAgIH0KICAgIC8v5p+l6K+i5pWw5o2uCiAgICB2YXIgcmVzcG9uc2UgPSByZXEucmVxdWVzdCh7CiAgICAgIHVybDogcXVlcnlVcmwsCiAgICAgIG1ldGhvZDogcmVxdWVzdE1ldGhvZCwKICAgICAgZGF0YTogcXVlcnlQYXJhbXMsCiAgICAgIGhlYWRlcnM6IHF1ZXJ5LmhlYWRlcgogICAgfSkudGhlbihmdW5jdGlvbiAocmVzcG9uc2UpIHsKICAgICAgLy/oh6rlrprkuYnlr7nor53moYblm6DkuLropoHmmL7npLrliIbpobXkv6Hmga/vvIzlubbkuJTmmL7npLrlrZfmrrXnmoRrZXnmmK/lsI/lhpnvvIzmlYXmraTlpITnm7TmjqXov5Tlm57vvIznlLHoh6rlrprkuYnlr7nor53moYbnu4Tku7bmnKzouqvlpITnkIbmlbDmja4KICAgICAgaWYgKHR5cGUgPT0gJzInKSB7CiAgICAgICAgdmFyIGRhdGEgPSBDdXN0b21RdWVyeS5faGFuZGxlRGlhbG9nUmVzcG9uc2UocmVzcG9uc2UuZGF0YSwgcXVlcnkpOwogICAgICAgIGNiKGRhdGEpOwogICAgICB9IGVsc2UgewogICAgICAgIC8v5aaC5p6c5pWw5o2u5p2l5rqQ5piv5pWw5o2u5rqQCiAgICAgICAgaWYgKHF1ZXJ5LmRzVHlwZSA9PSAiZGF0YVNvdXJjZSIpIHsKICAgICAgICAgIGNiKHJlc3BvbnNlLmRhdGEucm93cyk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIC8vIOWmguaenOaVsOaNruadpea6kOaYr1JFU1TmjqXlj6MKICAgICAgICAgIHZhciBfZGF0YSA9IEN1c3RvbVF1ZXJ5Ll9oYW5kbGVSZXNwb25zZShyZXNwb25zZS5kYXRhLCBxdWVyeS5saXN0S2V5KTsKICAgICAgICAgIGNiKF9kYXRhKTsKICAgICAgICB9CiAgICAgIH0KICAgIH0sIGZ1bmN0aW9uIChyZWFzb24pIHsKICAgICAgY2IoW10pOwogICAgICBDdXN0b21RdWVyeS5fdGhyb3dFeGNlcHRpb24ocmVhc29uKTsKICAgIH0pOwogIH0sCiAgX2hhbmRsZURpYWxvZ1Jlc3BvbnNlOiBmdW5jdGlvbiBfaGFuZGxlRGlhbG9nUmVzcG9uc2UoZGF0YSwgcXVlcnkpIHsKICAgIGlmICghZGF0YSkgewogICAgICBNZXNzYWdlLmVycm9yKCLov5Tlm57nmoTmlbDmja7kuLrnqboiKTsKICAgICAgcmV0dXJuIFtdOwogICAgfQogICAgaWYgKGRhdGEuY29uc3RydWN0b3IgPT0gU3RyaW5nKSB7CiAgICAgIHRyeSB7CiAgICAgICAgZGF0YSA9IEpTT04ucGFyc2UoZGF0YSk7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICBDdXN0b21RdWVyeS5fdGhyb3dFeGNlcHRpb24oIlx1NUMwNlx1OEZENFx1NTZERVx1NTAzQ1x1ODlFM1x1Njc5MFx1NEUzQUpTT05cdTVCRjlcdThDNjFcdTY1RjZcdTUxRkFcdTk1MTlcdTRFODZcdUZGMUEiLmNvbmNhdChlKSk7CiAgICAgIH0KICAgIH0KICAgIHZhciByZXN1bHQgPSB7CiAgICAgIHJvd3M6IFtdCiAgICB9OwogICAgaWYgKGRhdGEuY29uc3RydWN0b3IgPT0gT2JqZWN0KSB7CiAgICAgIGlmIChxdWVyeS5kc1R5cGUgPT0gImRhdGFTb3VyY2UiKSB7CiAgICAgICAgaWYgKGRhdGEgJiYgZGF0YS5yb3dzKSB7CiAgICAgICAgICByZXN1bHQucm93cyA9IGRhdGEucm93czsKICAgICAgICAgIC8v5aaC5p6c5pyJ5YiG6aG1CiAgICAgICAgICBpZiAoZGF0YS5wYWdlKSB7CiAgICAgICAgICAgIHJlc3VsdC5wYWdlUmVzdWx0ID0gewogICAgICAgICAgICAgIHBhZ2U6IGRhdGEucGFnZSwKICAgICAgICAgICAgICBwYWdlU2l6ZTogZGF0YS5wYWdlU2l6ZSwKICAgICAgICAgICAgICB0b3RhbDogZGF0YS50b3RhbAogICAgICAgICAgICB9OwogICAgICAgICAgfQogICAgICAgIH0KICAgICAgfSBlbHNlIHsKICAgICAgICAvLyDlpoLmnpzmsqHmnInmjIflrprmj5Dlj5ZrZXnvvIzliJnlsIbov5Tlm57lgLzljIXoo4XkuLrliJfooagKICAgICAgICBpZiAoIXF1ZXJ5Lmxpc3RLZXkpIHsKICAgICAgICAgIHJlc3VsdC5yb3dzID0gW2RhdGFdOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICB0cnkgewogICAgICAgICAgICByZXN1bHQucm93cyA9IHV0aWxzLmdldFZhbHVlQnlQYXRoKGRhdGEsIHF1ZXJ5Lmxpc3RLZXkpIHx8IFtdOwogICAgICAgICAgICAvL+WmguaenOacieWIhumhtQogICAgICAgICAgICBpZiAocXVlcnkucGFnZUtleSAmJiBkYXRhW3F1ZXJ5LnBhZ2VLZXldKSB7CiAgICAgICAgICAgICAgcmVzdWx0LnBhZ2VSZXN1bHQgPSB7CiAgICAgICAgICAgICAgICBwYWdlOiBkYXRhW3F1ZXJ5LnBhZ2VLZXldLAogICAgICAgICAgICAgICAgcGFnZVNpemU6IGRhdGFbcXVlcnkucGFnZVNpemVLZXldLAogICAgICAgICAgICAgICAgdG90YWw6IGRhdGFbcXVlcnkudG90YWxLZXldCiAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfQogICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICBDdXN0b21RdWVyeS5fdGhyb3dFeGNlcHRpb24oIlx1NEVDRVx1OEZENFx1NTZERVx1NzY4NFx1NjU3MFx1NjM2RVx1NEUyRFx1NjNEMFx1NTNENlx1NjU3MFx1N0VDNFx1NjVGNlx1NTFGQVx1OTUxOVx1NEU4Nlx1RkYxQSIuY29uY2F0KGUpKTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgIH0gZWxzZSBpZiAoZGF0YS5jb25zdHJ1Y3RvciA9PSBBcnJheSkgewogICAgICAvLyDlt7Lnu4/mmK/mlbDnu4Tnsbvlnovml7bvvIzkuI3lho3pgJrov4dyb3dzS2V55o+Q5Y+WCiAgICAgIHJlc3VsdC5yb3dzID0gZGF0YTsKICAgIH0gZWxzZSB7CiAgICAgIEN1c3RvbVF1ZXJ5Ll90aHJvd0V4Y2VwdGlvbigiXHU4RkQ0XHU1NkRFXHU3Njg0XHU2NTcwXHU2MzZFXHU2NUUwXHU2Q0Q1XHU4OUUzXHU2NzkwOiIuY29uY2F0KGRhdGEpKTsKICAgIH0KICAgIHJlc3VsdC5yb3dzID0gQ3VzdG9tUXVlcnkuX2xpc3RLZXlUb0xvd2VyKHJlc3VsdC5yb3dzKTsKICAgIHJldHVybiByZXN1bHQ7CiAgfSwKICBfaGFuZGxlUmVzcG9uc2U6IGZ1bmN0aW9uIF9oYW5kbGVSZXNwb25zZShkYXRhLCByb3dzS2V5KSB7CiAgICBpZiAoIWRhdGEpIHsKICAgICAgTWVzc2FnZS5lcnJvcigi6L+U5Zue55qE5pWw5o2u5Li656m6Iik7CiAgICAgIHJldHVybiBbXTsKICAgIH0KICAgIGlmIChkYXRhLmNvbnN0cnVjdG9yID09IFN0cmluZykgewogICAgICB0cnkgewogICAgICAgIGRhdGEgPSBKU09OLnBhcnNlKGRhdGEpOwogICAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgQ3VzdG9tUXVlcnkuX3Rocm93RXhjZXB0aW9uKCJcdTVDMDZcdThGRDRcdTU2REVcdTUwM0NcdTg5RTNcdTY3OTBcdTRFM0FKU09OXHU1QkY5XHU4QzYxXHU2NUY2XHU1MUZBXHU5NTE5XHU0RTg2XHVGRjFBIi5jb25jYXQoZSkpOwogICAgICB9CiAgICB9CiAgICBpZiAoZGF0YS5jb25zdHJ1Y3RvciA9PSBPYmplY3QpIHsKICAgICAgLy8g5aaC5p6c5rKh5pyJ5oyH5a6a5o+Q5Y+Wa2V577yM5YiZ5bCG6L+U5Zue5YC85YyF6KOF5Li65YiX6KGoCiAgICAgIGlmICghcm93c0tleSkgewogICAgICAgIHJldHVybiBbZGF0YV07CiAgICAgIH0KICAgICAgdHJ5IHsKICAgICAgICByZXR1cm4gdXRpbHMuZ2V0VmFsdWVCeVBhdGgoZGF0YSwgcm93c0tleSk7CiAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICBDdXN0b21RdWVyeS5fdGhyb3dFeGNlcHRpb24oIlx1NEVDRVx1OEZENFx1NTZERVx1NzY4NFx1NjU3MFx1NjM2RVx1NEUyRFx1NjNEMFx1NTNENlx1NjU3MFx1N0VDNFx1NjVGNlx1NTFGQVx1OTUxOVx1NEU4Nlx1RkYxQSIuY29uY2F0KGUpKTsKICAgICAgfQogICAgfSBlbHNlIGlmIChkYXRhLmNvbnN0cnVjdG9yID09IEFycmF5KSB7CiAgICAgIC8vIOW3sue7j+aYr+aVsOe7hOexu+Wei+aXtu+8jOS4jeWGjemAmui/h3Jvd3NLZXnmj5Dlj5YKICAgICAgcmV0dXJuIGRhdGE7CiAgICB9IGVsc2UgewogICAgICBDdXN0b21RdWVyeS5fdGhyb3dFeGNlcHRpb24oIlx1OEZENFx1NTZERVx1NzY4NFx1NjU3MFx1NjM2RVx1NjVFMFx1NkNENVx1ODlFM1x1Njc5MDoiLmNvbmNhdChkYXRhKSk7CiAgICB9CiAgfSwKICBfbGlzdEtleVRvTG93ZXI6IGZ1bmN0aW9uIF9saXN0S2V5VG9Mb3dlcihsaXN0KSB7CiAgICB2YXIgbmV3Um93cyA9IFtdOwogICAgLy/kuI3nn6XpgZPkuLrku4DkuYg3MjTnmoTmn5DkuKrniYjmnKzoh6rlrprkuYnlr7nor53moYbnmoTmmL7npLrlrZfmrrVrZXnlkI7lj7DooqvovazlsI/lhpnkuobvvIzmiYDku6XmraTlpITmiorov5Tlm57lgLzkuZ/ovazlsI/lhpkKICAgIHZhciBfbG9vcCA9IGZ1bmN0aW9uIF9sb29wKCkgewogICAgICB2YXIgZGF0YSA9IGxpc3RbaV07CiAgICAgIHZhciBrZXlzID0gT2JqZWN0LmtleXMoZGF0YSk7CiAgICAgIHZhciBvYmpSb3dzID0ge307CiAgICAgIGtleXMuZm9yRWFjaChmdW5jdGlvbiAoa2V5KSB7CiAgICAgICAgb2JqUm93c1trZXkudG9Mb3dlckNhc2UoKV0gPSBkYXRhW2tleV07CiAgICAgIH0pOwogICAgICBuZXdSb3dzLnB1c2gob2JqUm93cyk7CiAgICB9OwogICAgZm9yICh2YXIgaSA9IDA7IGkgPCBsaXN0Lmxlbmd0aDsgaSsrKSB7CiAgICAgIF9sb29wKCk7CiAgICB9CiAgICByZXR1cm4gbmV3Um93czsKICB9Cn07CmV4cG9ydCBkZWZhdWx0IEN1c3RvbVF1ZXJ5Ow=="},null]}