{"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/src/api/appServerApi.js","dependencies":[{"path":"/data/jenkins/workspace/badp-bcxin-web-5.x-vuechat/src/api/appServerApi.js","mtime":1702016964279},{"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}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuYXJyYXkuaW5kZXgtb2YiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5vYmplY3QudG8tc3RyaW5nIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvZXMuc3RyaW5nLml0ZXJhdG9yIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvd2ViLmRvbS1jb2xsZWN0aW9ucy5pdGVyYXRvciI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL3dlYi51cmwiOwppbXBvcnQgInJlZ2VuZXJhdG9yLXJ1bnRpbWUvcnVudGltZSI7CmltcG9ydCBfYXN5bmNUb0dlbmVyYXRvciBmcm9tICIvZGF0YS9qZW5raW5zL3dvcmtzcGFjZS9iYWRwLWJjeGluLXdlYi01LngtdnVlY2hhdC9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vYXN5bmNUb0dlbmVyYXRvciI7CmltcG9ydCBfY2xhc3NDYWxsQ2hlY2sgZnJvbSAiL2RhdGEvamVua2lucy93b3Jrc3BhY2UvYmFkcC1iY3hpbi13ZWItNS54LXZ1ZWNoYXQvbm9kZV9tb2R1bGVzL0BiYWJlbC9ydW50aW1lL2hlbHBlcnMvZXNtL2NsYXNzQ2FsbENoZWNrIjsKaW1wb3J0IF9jcmVhdGVDbGFzcyBmcm9tICIvZGF0YS9qZW5raW5zL3dvcmtzcGFjZS9iYWRwLWJjeGluLXdlYi01LngtdnVlY2hhdC9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vY3JlYXRlQ2xhc3MiOwppbXBvcnQgYXhpb3MgZnJvbSAiYXhpb3MiOwppbXBvcnQgeyBnZXRJdGVtLCBzZXRJdGVtIH0gZnJvbSAiLi4vdWkvdXRpbC9zdG9yYWdlSGVscGVyIjsKaW1wb3J0IENvbmZpZyBmcm9tICIuLi9jb25maWciOwppbXBvcnQgRmF2SXRlbSBmcm9tICIuLi93ZmMvbW9kZWwvZmF2SXRlbSI7CmltcG9ydCB7IHN0cmluZ1ZhbHVlIH0gZnJvbSAiLi4vd2ZjL3V0aWwvbG9uZ1V0aWwiOwppbXBvcnQgQXBwU2VydmVyRXJyb3IgZnJvbSAiLi9hcHBTZXJ2ZXJFcnJvciI7CmltcG9ydCB3ZmMgZnJvbSAiLi4vd2ZjL2NsaWVudC93ZmMiOwpleHBvcnQgdmFyIEFwcFNlcnZlckFwaSA9IC8qI19fUFVSRV9fKi9mdW5jdGlvbiAoKSB7CiAgZnVuY3Rpb24gQXBwU2VydmVyQXBpKCkgewogICAgX2NsYXNzQ2FsbENoZWNrKHRoaXMsIEFwcFNlcnZlckFwaSk7CiAgfQoKICBfY3JlYXRlQ2xhc3MoQXBwU2VydmVyQXBpLCBbewogICAga2V5OiAicmVxdWVzdEF1dGhDb2RlIiwKICAgIHZhbHVlOiBmdW5jdGlvbiByZXF1ZXN0QXV0aENvZGUobW9iaWxlKSB7CiAgICAgIHJldHVybiB0aGlzLl9wb3N0KCcvc2VuZF9jb2RlJywgewogICAgICAgIG1vYmlsZTogbW9iaWxlCiAgICAgIH0pOwogICAgfQogIH0sIHsKICAgIGtleTogImxvaW5XaXRoUGFzc3dvcmQiLAogICAgdmFsdWU6IGZ1bmN0aW9uIGxvaW5XaXRoUGFzc3dvcmQobW9iaWxlLCBwYXNzd29yZCkgewogICAgICB2YXIgX3RoaXMgPSB0aGlzOwoKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICB2YXIgcmVzcG9uc2VQcm9taXNlID0gX3RoaXMuX3Bvc3QoJy9sb2dpbl9wd2QnLCB7CiAgICAgICAgICBtb2JpbGU6IG1vYmlsZSwKICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwKICAgICAgICAgIHBsYXRmb3JtOiBDb25maWcuZ2V0V0ZDUGxhdGZvcm0oKSwKICAgICAgICAgIGNsaWVudElkOiB3ZmMuZ2V0Q2xpZW50SWQoKQogICAgICAgIH0sIHRydWUpOwoKICAgICAgICBfdGhpcy5faW50ZXJjZXB0TG9naW5SZXNwb25zZShyZXNwb25zZVByb21pc2UsIHJlc29sdmUsIHJlamVjdCk7CiAgICAgIH0pOwogICAgfQogIH0sIHsKICAgIGtleTogImxvZ2luV2l0aEF1dGhDb2RlIiwKICAgIHZhbHVlOiBmdW5jdGlvbiBsb2dpbldpdGhBdXRoQ29kZShtb2JpbGUsIGF1dGhDb2RlKSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwoKICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHsKICAgICAgICB2YXIgcmVzcG9uc2VQcm9taXNlID0gX3RoaXMyLl9wb3N0KCcvbG9naW4nLCB7CiAgICAgICAgICBtb2JpbGU6IG1vYmlsZSwKICAgICAgICAgIGNvZGU6IGF1dGhDb2RlLAogICAgICAgICAgcGxhdGZvcm06IENvbmZpZy5nZXRXRkNQbGF0Zm9ybSgpLAogICAgICAgICAgY2xpZW50SWQ6IHdmYy5nZXRDbGllbnRJZCgpCiAgICAgICAgfSwgdHJ1ZSk7CgogICAgICAgIF90aGlzMi5faW50ZXJjZXB0TG9naW5SZXNwb25zZShyZXNwb25zZVByb21pc2UsIHJlc29sdmUsIHJlamVjdCk7CiAgICAgIH0pOwogICAgfQogIH0sIHsKICAgIGtleTogImNyZWF0ZVBDU2Vzc2lvbiIsCiAgICB2YWx1ZTogZnVuY3Rpb24gY3JlYXRlUENTZXNzaW9uKHVzZXJJZCkgewogICAgICByZXR1cm4gdGhpcy5fcG9zdCgnL3BjX3Nlc3Npb24nLCB7CiAgICAgICAgZmxhZzogMSwKICAgICAgICBkZXZpY2VfbmFtZTogJ3BjJywKICAgICAgICB1c2VySWQ6IHVzZXJJZCwKICAgICAgICBjbGllbnRJZDogd2ZjLmdldENsaWVudElkKCksCiAgICAgICAgcGxhdGZvcm06IENvbmZpZy5nZXRXRkNQbGF0Zm9ybSgpCiAgICAgIH0pOwogICAgfSAvLyDmiavnoIHnmbvlvZUKCiAgfSwgewogICAga2V5OiAibG9naW5XaXRoUENTZXNzaW9uIiwKICAgIHZhbHVlOiBmdW5jdGlvbiBsb2dpbldpdGhQQ1Nlc3Npb24oYXBwVG9rZW4pIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CgogICAgICB2YXIgX2ludGVyY2VwdFBDU2Vzc2lvbkxvZ2luUmVzcG9uc2UgPSBmdW5jdGlvbiBfaW50ZXJjZXB0UENTZXNzaW9uTG9naW5SZXNwb25zZShyZXNwb25zZVByb21pc2UsIHJlc29sdmUsIHJlamVjdCkgewogICAgICAgIHJlc3BvbnNlUHJvbWlzZS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgICAgaWYgKHJlc3BvbnNlLmRhdGEuY29kZSA9PT0gMCkgewogICAgICAgICAgICB2YXIgYXBwQXV0aFRva2VuID0gcmVzcG9uc2UuaGVhZGVyc1snYXV0aHRva2VuJ107CgogICAgICAgICAgICBpZiAoIWFwcEF1dGhUb2tlbikgewogICAgICAgICAgICAgIGFwcEF1dGhUb2tlbiA9IHJlc3BvbnNlLmhlYWRlcnNbJ2F1dGhUb2tlbiddOwogICAgICAgICAgICB9CgogICAgICAgICAgICBpZiAoYXBwQXV0aFRva2VuKSB7CiAgICAgICAgICAgICAgc2V0SXRlbSgnYXV0aFRva2VuLScgKyBuZXcgVVJMKHJlc3BvbnNlLmNvbmZpZy51cmwpLmhvc3QsIGFwcEF1dGhUb2tlbik7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UuZGF0YSk7CiAgICAgICAgICB9IGVsc2UgaWYgKFs5LCAxOF0uaW5kZXhPZihyZXNwb25zZS5kYXRhLmNvZGUpID4gLTEpIHsKICAgICAgICAgICAgcmVzb2x2ZShyZXNwb25zZS5kYXRhKTsKICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJlamVjdChuZXcgQXBwU2VydmVyRXJyb3IocmVzcG9uc2UuZGF0YS5jb2RlLCByZXNwb25zZS5kYXRhLm1lc3NhZ2UpKTsKICAgICAgICAgIH0KICAgICAgICB9KS5jYXRjaChmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgICByZWplY3QoZXJyKTsKICAgICAgICB9KTsKICAgICAgfTsKCiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgICAgdmFyIHJlc3BvbnNlUHJvbWlzZSA9IF90aGlzMy5fcG9zdCgiL3Nlc3Npb25fbG9naW4vIi5jb25jYXQoYXBwVG9rZW4pLCBudWxsLCB0cnVlKTsKCiAgICAgICAgX2ludGVyY2VwdFBDU2Vzc2lvbkxvZ2luUmVzcG9uc2UocmVzcG9uc2VQcm9taXNlLCByZXNvbHZlLCByZWplY3QpOwogICAgICB9KTsKICAgIH0KICB9LCB7CiAgICBrZXk6ICJjaGFuZ2VQYXNzd29yZCIsCiAgICB2YWx1ZTogZnVuY3Rpb24gY2hhbmdlUGFzc3dvcmQob2xkUGFzc3dvcmQsIG5ld1Bhc3N3b3JkKSB7CiAgICAgIHJldHVybiB0aGlzLl9wb3N0KCcvY2hhbmdlX3B3ZCcsIHsKICAgICAgICBvbGRQYXNzd29yZDogb2xkUGFzc3dvcmQsCiAgICAgICAgbmV3UGFzc3dvcmQ6IG5ld1Bhc3N3b3JkCiAgICAgIH0pOwogICAgfQogIH0sIHsKICAgIGtleTogInJlcXVlc3RSZXNldFBhc3N3b3JkQXV0aENvZGUiLAogICAgdmFsdWU6IGZ1bmN0aW9uIHJlcXVlc3RSZXNldFBhc3N3b3JkQXV0aENvZGUoKSB7CiAgICAgIHJldHVybiB0aGlzLl9wb3N0KCcvc2VuZF9yZXNldF9jb2RlJyk7CiAgICB9CiAgfSwgewogICAga2V5OiAicmVzZXRQYXNzd29yZCIsCiAgICB2YWx1ZTogZnVuY3Rpb24gcmVzZXRQYXNzd29yZChyZXNldFBhc3N3b3JkQXV0aENvZGUsIG5ld1Bhc3N3b3JkKSB7CiAgICAgIHJldHVybiB0aGlzLl9wb3N0KCcvcmVzZXRfcHdkJywgewogICAgICAgIHJlc2V0Q29kZTogcmVzZXRQYXNzd29yZEF1dGhDb2RlLAogICAgICAgIG5ld1Bhc3N3b3JkOiBuZXdQYXNzd29yZAogICAgICB9KTsKICAgIH0KICB9LCB7CiAgICBrZXk6ICJnZXRHcm91cEFubm91bmNlbWVudCIsCiAgICB2YWx1ZTogZnVuY3Rpb24gZ2V0R3JvdXBBbm5vdW5jZW1lbnQoZ3JvdXBJZCkgewogICAgICByZXR1cm4gdGhpcy5fcG9zdCgnL2dldF9ncm91cF9hbm5vdW5jZW1lbnQnLCB7CiAgICAgICAgZ3JvdXBJZDogZ3JvdXBJZAogICAgICB9KTsKICAgIH0KICB9LCB7CiAgICBrZXk6ICJ1cGRhdGVHcm91cEFubm91bmNlbWVudCIsCiAgICB2YWx1ZTogZnVuY3Rpb24gdXBkYXRlR3JvdXBBbm5vdW5jZW1lbnQoYXV0aG9yLCBncm91cElkLCBhbm5vdW5jZW1lbnQpIHsKICAgICAgcmV0dXJuIHRoaXMuX3Bvc3QoJy9wdXRfZ3JvdXBfYW5ub3VuY2VtZW50JywgewogICAgICAgIGF1dGhvcjogYXV0aG9yLAogICAgICAgIGdyb3VwSWQ6IGdyb3VwSWQsCiAgICAgICAgdGV4dDogYW5ub3VuY2VtZW50CiAgICAgIH0pOwogICAgfQogIH0sIHsKICAgIGtleTogImZhdk1lc3NhZ2UiLAogICAgdmFsdWU6IGZ1bmN0aW9uIGZhdk1lc3NhZ2UobWVzc2FnZSkgewogICAgICB2YXIgZmF2SXRlbSA9IEZhdkl0ZW0uZnJvbU1lc3NhZ2UobWVzc2FnZSk7CiAgICAgIHJldHVybiB0aGlzLl9wb3N0KCcvZmF2L2FkZCcsIHsKICAgICAgICBtZXNzYWdlVWlkOiBzdHJpbmdWYWx1ZShmYXZJdGVtLm1lc3NhZ2VVaWQpLAogICAgICAgIHR5cGU6IGZhdkl0ZW0uZmF2VHlwZSwKICAgICAgICBjb252VHlwZTogZmF2SXRlbS5jb252ZXJzYXRpb24udHlwZSwKICAgICAgICBjb252VGFyZ2V0OiBmYXZJdGVtLmNvbnZlcnNhdGlvbi50YXJnZXQsCiAgICAgICAgY29udkxpbmU6IGZhdkl0ZW0uY29udmVyc2F0aW9uLmxpbmUsCiAgICAgICAgb3JpZ2luOiBmYXZJdGVtLm9yaWdpbiwKICAgICAgICBzZW5kZXI6IGZhdkl0ZW0uc2VuZGVyLAogICAgICAgIHRpdGxlOiBmYXZJdGVtLnRpdGxlLAogICAgICAgIHVybDogZmF2SXRlbS51cmwsCiAgICAgICAgdGh1bWJVcmw6IGZhdkl0ZW0udGh1bWJVcmwsCiAgICAgICAgZGF0YTogZmF2SXRlbS5kYXRhCiAgICAgIH0pOwogICAgfQogIH0sIHsKICAgIGtleTogImdldEZhdkxpc3QiLAogICAgdmFsdWU6IGZ1bmN0aW9uIGdldEZhdkxpc3Qoc3RhcnRJZCkgewogICAgICB2YXIgY291bnQgPSBhcmd1bWVudHMubGVuZ3RoID4gMSAmJiBhcmd1bWVudHNbMV0gIT09IHVuZGVmaW5lZCA/IGFyZ3VtZW50c1sxXSA6IDIwOwogICAgICByZXR1cm4gdGhpcy5fcG9zdCgnL2Zhdi9saXN0JywgewogICAgICAgIGlkOiBzdGFydElkLAogICAgICAgIGNvdW50OiBjb3VudAogICAgICB9LCBmYWxzZSwgdHJ1ZSk7CiAgICB9CiAgfSwgewogICAga2V5OiAiZGVsRmF2IiwKICAgIHZhbHVlOiBmdW5jdGlvbiBkZWxGYXYoZmF2SXRlbUlkKSB7CiAgICAgIHJldHVybiB0aGlzLl9wb3N0KCcvZmF2L2RlbC8nICsgZmF2SXRlbUlkLCAnJyk7CiAgICB9CiAgfSwgewogICAga2V5OiAiX2ludGVyY2VwdExvZ2luUmVzcG9uc2UiLAogICAgdmFsdWU6IGZ1bmN0aW9uIF9pbnRlcmNlcHRMb2dpblJlc3BvbnNlKHJlc3BvbnNlUHJvbWlzZSwgcmVzb2x2ZSwgcmVqZWN0KSB7CiAgICAgIHJlc3BvbnNlUHJvbWlzZS50aGVuKGZ1bmN0aW9uIChyZXNwb25zZSkgewogICAgICAgIGlmIChyZXNwb25zZS5kYXRhLmNvZGUgPT09IDApIHsKICAgICAgICAgIHZhciBhcHBBdXRoVG9rZW4gPSByZXNwb25zZS5oZWFkZXJzWydhdXRodG9rZW4nXTsKCiAgICAgICAgICBpZiAoIWFwcEF1dGhUb2tlbikgewogICAgICAgICAgICBhcHBBdXRoVG9rZW4gPSByZXNwb25zZS5oZWFkZXJzWydhdXRoVG9rZW4nXTsKICAgICAgICAgIH0KCiAgICAgICAgICBpZiAoYXBwQXV0aFRva2VuKSB7CiAgICAgICAgICAgIHNldEl0ZW0oJ2F1dGhUb2tlbi0nICsgbmV3IFVSTChyZXNwb25zZS5jb25maWcudXJsKS5ob3N0LCBhcHBBdXRoVG9rZW4pOwogICAgICAgICAgfQoKICAgICAgICAgIHJlc29sdmUocmVzcG9uc2UuZGF0YS5yZXN1bHQpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICByZWplY3QobmV3IEFwcFNlcnZlckVycm9yKHJlc3BvbnNlLmRhdGEuY29kZSwgcmVzcG9uc2UuZGF0YS5tZXNzYWdlKSk7CiAgICAgICAgfQogICAgICB9KS5jYXRjaChmdW5jdGlvbiAoZXJyKSB7CiAgICAgICAgcmVqZWN0KGVycik7CiAgICAgIH0pOwogICAgfQogICAgLyoqCiAgICAgKgogICAgICogQHBhcmFtIHBhdGgKICAgICAqIEBwYXJhbSBkYXRhCiAgICAgKiBAcGFyYW0gcmF3UmVzcG9uc2UKICAgICAqIEBwYXJhbSByYXdSZXNwb25zZURhdGEKICAgICAqIEByZXR1cm4ge1Byb21pc2U8c3RyaW5nIHwgQXhpb3NSZXNwb25zZTxhbnk+fCp8VD59CiAgICAgKiBAcHJpdmF0ZQogICAgICovCgogIH0sIHsKICAgIGtleTogIl9wb3N0IiwKICAgIHZhbHVlOiBmdW5jdGlvbiAoKSB7CiAgICAgIHZhciBfcG9zdDIgPSBfYXN5bmNUb0dlbmVyYXRvciggLyojX19QVVJFX18qL3JlZ2VuZXJhdG9yUnVudGltZS5tYXJrKGZ1bmN0aW9uIF9jYWxsZWUocGF0aCkgewogICAgICAgIHZhciBkYXRhLAogICAgICAgICAgICByYXdSZXNwb25zZSwKICAgICAgICAgICAgcmF3UmVzcG9uc2VEYXRhLAogICAgICAgICAgICByZXNwb25zZSwKICAgICAgICAgICAgX2FyZ3MgPSBhcmd1bWVudHM7CiAgICAgICAgcmV0dXJuIHJlZ2VuZXJhdG9yUnVudGltZS53cmFwKGZ1bmN0aW9uIF9jYWxsZWUkKF9jb250ZXh0KSB7CiAgICAgICAgICB3aGlsZSAoMSkgewogICAgICAgICAgICBzd2l0Y2ggKF9jb250ZXh0LnByZXYgPSBfY29udGV4dC5uZXh0KSB7CiAgICAgICAgICAgICAgY2FzZSAwOgogICAgICAgICAgICAgICAgZGF0YSA9IF9hcmdzLmxlbmd0aCA+IDEgJiYgX2FyZ3NbMV0gIT09IHVuZGVmaW5lZCA/IF9hcmdzWzFdIDoge307CiAgICAgICAgICAgICAgICByYXdSZXNwb25zZSA9IF9hcmdzLmxlbmd0aCA+IDIgJiYgX2FyZ3NbMl0gIT09IHVuZGVmaW5lZCA/IF9hcmdzWzJdIDogZmFsc2U7CiAgICAgICAgICAgICAgICByYXdSZXNwb25zZURhdGEgPSBfYXJncy5sZW5ndGggPiAzICYmIF9hcmdzWzNdICE9PSB1bmRlZmluZWQgPyBfYXJnc1szXSA6IGZhbHNlOwogICAgICAgICAgICAgICAgcGF0aCA9IENvbmZpZy5BUFBfU0VSVkVSICsgcGF0aDsKICAgICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSA2OwogICAgICAgICAgICAgICAgcmV0dXJuIGF4aW9zLnBvc3QocGF0aCwgZGF0YSwgewogICAgICAgICAgICAgICAgICB0cmFuc2Zvcm1SZXNwb25zZTogcmF3UmVzcG9uc2VEYXRhID8gW2Z1bmN0aW9uIChkYXRhKSB7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGRhdGE7CiAgICAgICAgICAgICAgICAgIH1dIDogYXhpb3MuZGVmYXVsdHMudHJhbnNmb3JtUmVzcG9uc2UsCiAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgICAgICAgICAgICAnYXV0aFRva2VuJzogZ2V0SXRlbSgnYXV0aFRva2VuLScgKyBuZXcgVVJMKHBhdGgpLmhvc3QpCiAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZQogICAgICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAgIGNhc2UgNjoKICAgICAgICAgICAgICAgIHJlc3BvbnNlID0gX2NvbnRleHQuc2VudDsKCiAgICAgICAgICAgICAgICBpZiAoIXJhd1Jlc3BvbnNlKSB7CiAgICAgICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSA5OwogICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICByZXR1cm4gX2NvbnRleHQuYWJydXB0KCJyZXR1cm4iLCByZXNwb25zZSk7CgogICAgICAgICAgICAgIGNhc2UgOToKICAgICAgICAgICAgICAgIGlmICghcmVzcG9uc2UuZGF0YSkgewogICAgICAgICAgICAgICAgICBfY29udGV4dC5uZXh0ID0gMTk7CiAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmICghcmF3UmVzcG9uc2VEYXRhKSB7CiAgICAgICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAxMjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LmFicnVwdCgicmV0dXJuIiwgcmVzcG9uc2UuZGF0YSk7CgogICAgICAgICAgICAgIGNhc2UgMTI6CiAgICAgICAgICAgICAgICBpZiAoIShyZXNwb25zZS5kYXRhLmNvZGUgPT09IDApKSB7CiAgICAgICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAxNjsKICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgcmV0dXJuIF9jb250ZXh0LmFicnVwdCgicmV0dXJuIiwgcmVzcG9uc2UuZGF0YS5yZXN1bHQpOwoKICAgICAgICAgICAgICBjYXNlIDE2OgogICAgICAgICAgICAgICAgdGhyb3cgbmV3IEFwcFNlcnZlckVycm9yKHJlc3BvbnNlLmRhdGEuY29kZSwgcmVzcG9uc2UuZGF0YS5tZXNzYWdlKTsKCiAgICAgICAgICAgICAgY2FzZSAxNzoKICAgICAgICAgICAgICAgIF9jb250ZXh0Lm5leHQgPSAyMDsKICAgICAgICAgICAgICAgIGJyZWFrOwoKICAgICAgICAgICAgICBjYXNlIDE5OgogICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdyZXF1ZXN0IGVycm9yLCBzdGF0dXMgY29kZTogJyArIHJlc3BvbnNlLnN0YXR1cyk7CgogICAgICAgICAgICAgIGNhc2UgMjA6CiAgICAgICAgICAgICAgY2FzZSAiZW5kIjoKICAgICAgICAgICAgICAgIHJldHVybiBfY29udGV4dC5zdG9wKCk7CiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9LCBfY2FsbGVlKTsKICAgICAgfSkpOwoKICAgICAgZnVuY3Rpb24gX3Bvc3QoX3gpIHsKICAgICAgICByZXR1cm4gX3Bvc3QyLmFwcGx5KHRoaXMsIGFyZ3VtZW50cyk7CiAgICAgIH0KCiAgICAgIHJldHVybiBfcG9zdDsKICAgIH0oKQogIH1dKTsKCiAgcmV0dXJuIEFwcFNlcnZlckFwaTsKfSgpOwp2YXIgYXBwU2VydmVyQXBpID0gbmV3IEFwcFNlcnZlckFwaSgpOwpleHBvcnQgZGVmYXVsdCBhcHBTZXJ2ZXJBcGk7"},null]}