Files
uan7-home/wbh.py
2024-04-25 17:03:04 +08:00

10 lines
14 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Author: MK版权所有
# Update:2023-12-29
# 文博大会答题
# TG偷撸群https://t.me/mktljb
# 添加账号说明(青龙/本地)二选一
# 青龙: 青龙变量wbtoken 值{"uuid":"xxx","sign":"xxx"} 一行一个(回车分割)
# 本地: 脚本内置ck方法ck_token = [{"uuid":"xxx","sign":"xxx"},{"ck":"xxxxtokenxxxx","uuid":"xxx","sign":"xxx"}]
# 软件版本
import marshal,base64
exec(marshal.loads(base64.b64decode('8/8pAAAjIEF1dGhvcjogTUsKIyBVcGRhdGU6MjAyMy0xMi0yOQojIOaWh+WNmuWkp+S8muetlOmimAojIOa0u+WKqOWFpeWPo++8mlRH5YaF6YOo576kCiMg5re75Yqg6LSm5Y+36K+05piOKOmdkum+mS/mnKzlnLAp5LqM6YCJ5LiACiMgICDpnZLpvpk6IOmdkum+meWPmOmHj3didG9rZW4g5YC8eyJ1dWlkIjoieHh4Iiwic2lnbiI6Inh4eCJ9IOS4gOihjOS4gOS4qijlm57ovabliIblibIpCiMgICDmnKzlnLA6IOiEmuacrOWGhee9rmNr5pa55rOVY2tfdG9rZW4gPSBbeyJ1dWlkIjoieHh4Iiwic2lnbiI6Inh4eCJ9LHsiY2siOiJ4eHh4dG9rZW54eHh4IiwidXVpZCI6Inh4eCIsInNpZ24iOiJ4eHgifV0KIyDova/ku7bniYjmnKwKdmVyc2lvbiA9IjYuMCIjbGluZToxCm5hbWUgPSJNS+aWh+WNmuWkp+S8muetlOmimCIjbGluZToyCmxpbnhpX3Rva2VuID0id2J0b2tlbiIjbGluZTozCmxpbnhpX3RpcHMgPSd7InV1aWQiOiJ4eHgiLCJzaWduIjoieHh4In0nI2xpbmU6NAppbXBvcnQgcmVxdWVzdHMgI2xpbmU6NQppbXBvcnQganNvbiAjbGluZTo2CmltcG9ydCBvcyAjbGluZTo3CmltcG9ydCByZSAjbGluZTo4CmltcG9ydCB0aW1lICNsaW5lOjkKZnJvbSByYW5kb20gaW1wb3J0IHJhbmRpbnQgLGNob2ljZSAjbGluZToxMApmcm9tIG11bHRpcHJvY2Vzc2luZyBpbXBvcnQgUG9vbCAjbGluZToxMQpCdHlwZSA9Iumdkum+mSIjbGluZToxNApkb21haW4gPSdodHRwczovL3diZGguamlpaW1vLmNuL2FwaScjbGluZToxNgp0dXJsID0iaHR0cDovL2R0LmxpZXJlbi5saW5rIiNsaW5lOjE3CnNzID1yZXF1ZXN0cyAuc2Vzc2lvbiAoKSNsaW5lOjE5CmhlYWRlcnMgPXsnVXNlci1BZ2VudCc6J01vemlsbGEvNS4wIChpUGhvbmU7IENQVSBpUGhvbmUgT1MgMTZfNiBsaWtlIE1hYyBPUyBYKSBBcHBsZVdlYktpdC82MDUuMS4xNSAoS0hUTUwsIGxpa2UgR2Vja28pIE1vYmlsZS8xNUUxNDggTWljcm9NZXNzZW5nZXIvOC4wLjM5ICgweDE4MDAyNzMzKSBOZXRUeXBlL1dJRkkgTGFuZ3VhZ2UvemhfQ04nLCdDb250ZW50LVR5cGUnOidhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9VVRGLTgnfSNsaW5lOjIzCmRlZiB1c2VyX2luZm8gKE8wME8wT08wT09PTzAwMDAwICxPTzAwMDBPME9PT09PT08wTyApOiNsaW5lOjI1CiAgICBPMDBPTzAwMDBPT09PMDBPTyA9c3MgLnBvc3QgKGRvbWFpbiArIi91c2VyL2luZm8iLGhlYWRlcnMgPWhlYWRlcnMgLGRhdGEgPXsidXVpZCI6T08wMDAwTzBPT09PT09PME8gWyd1dWlkJ10sInNpZ24iOk9PMDAwME8wT09PT09PTzBPIFsnc2lnbiddfSkuanNvbiAoKSNsaW5lOjI2CiAgICBpZiBPMDBPTzAwMDBPT09PMDBPTyBbJ2NvZGUnXT09MCA6I2xpbmU6MjcKICAgICAgICBwcmludCAoZiLotKblj7fjgJB7TzAwTzBPTzBPT09PMDAwMDArMX3jgJHnlKjmiLc6e08wME9PMDAwME9PT08wME9PWydkYXRhJ11bJ25pY2tuYW1lJ119IOS9meminTp7TzAwT08wMDAwT09PTzAwT09bJ2RhdGEnXVsnYmFsYW5jZSddfeWFgyDnp6/liIY6e08wME9PMDAwME9PT08wME9PWydkYXRhJ11bJ3BvaW50J119IOetvuWIsDp7TzAwT08wMDAwT09PTzAwT09bJ2RhdGEnXVsnZGF5cyddfeWkqSIpI2xpbmU6MjgKICAgIGVsc2UgOiNsaW5lOjI5CiAgICAgICAgcHJpbnQgKGYi6LSm5Y+344CQe08wME8wT08wT09PTzAwMDAwKzF944CR6K+35qOA5p+l5L2g55qEQ0vmmK/lkKbmraPnoa4hIikjbGluZTozMApkZWYgZG9fcmVhZCAoT08wT08wMDAwMDBPME9PTzAgLE8wTzAwMDAwT08wT08wME8wICk6I2xpbmU6MzQKICAgIE8wTzBPMDAwME9PMDBPTzAwID1zcyAucG9zdCAoZG9tYWluICsiL2hvbWUvY2hlY2tpbiIsaGVhZGVycyA9aGVhZGVycyAsZGF0YSA9eyJ1dWlkIjpPME8wMDAwME9PME9PMDBPMCBbJ3V1aWQnXSwic2lnbiI6TzBPMDAwMDBPTzBPTzAwTzAgWydzaWduJ119KS5qc29uICgpI2xpbmU6MzUKICAgIGlmIE8wTzBPMDAwME9PMDBPTzAwIFsnY29kZSddPT0wIDojbGluZTozNgogICAgICAgIHByaW50IChmIui0puWPt+OAkHtPTzBPTzAwMDAwME8wT09PMCsxfeOAkeS7iuaXpeetvuWIsDoge08wTzBPMDAwME9PMDBPTzAwfSIpI2xpbmU6MzcKICAgIGVsc2UgOiNsaW5lOjM4CiAgICAgICAgcHJpbnQgKGYi6LSm5Y+344CQe09PME9PMDAwMDAwTzBPT08wKzF944CR5LuK5pel562+5YiwOiB7TzBPME8wMDAwT08wME9PMDBbJ21zZyddfSIpI2xpbmU6MzkKICAgIE8wTzBPMDAwME9PMDBPTzAwID1zcyAucG9zdCAoZG9tYWluICsiL2hvbWUvcXVlc3Rpb24iLGhlYWRlcnMgPWhlYWRlcnMgLGRhdGEgPXsidXVpZCI6TzBPMDAwMDBPTzBPTzAwTzAgWyd1dWlkJ10sInNpZ24iOk8wTzAwMDAwT08wT08wME8wIFsnc2lnbiddfSkuanNvbiAoKSNsaW5lOjQwCiAgICBpZiBPME8wTzAwMDBPTzAwT08wMCBbJ2NvZGUnXT09MCA6I2xpbmU6NDEKICAgICAgICBPME8wME8wT09PMDAwT09PMCA9TzBPME8wMDAwT08wME9PMDAgWydkYXRhJ11bJ2lkJ10jbGluZTo0MgogICAgICAgIE9PTzAwMDBPME9PME9PMDAwID1PME8wTzAwMDBPTzAwT08wMCBbJ2RhdGEnXVsnbWlkJ10jbGluZTo0MwogICAgICAgIHdoaWxlIFRydWUgOiNsaW5lOjQ0CiAgICAgICAgICAgIE8wTzBPMDAwME9PMDBPTzAwID1zcyAucG9zdCAoZG9tYWluICsiL3F1ZXN0aW9uL2dldCIsaGVhZGVycyA9aGVhZGVycyAsZGF0YSA9eyJxaWQiOk8wTzAwTzBPT08wMDBPT08wICwibWlkIjpPT08wMDAwTzBPTzBPTzAwMCAsInV1aWQiOk8wTzAwMDAwT08wT08wME8wIFsndXVpZCddLCJzaWduIjpPME8wMDAwME9PME9PMDBPMCBbJ3NpZ24nXX0pLmpzb24gKCkjbGluZTo0NQogICAgICAgICAgICBPME8wME8wT09PMDAwT09PMCA9IiIjbGluZTo0NgogICAgICAgICAgICBpZiBPME8wTzAwMDBPTzAwT08wMCBbJ2NvZGUnXT09MCA6I2xpbmU6NDcKICAgICAgICAgICAgICAgIE8wT08wMDBPT09PT08wME9PID1PME8wTzAwMDBPTzAwT08wMCBbJ2RhdGEnXVsndGl0bGUnXSNsaW5lOjQ4CiAgICAgICAgICAgICAgICBPTzBPTzBPT08wT09PMDAwMCA9TzBPME8wMDAwT08wME9PMDAgWydkYXRhJ11bJ29wdGlvbnMnXSNsaW5lOjQ5CiAgICAgICAgICAgICAgICBPME9PMDAwT09PME8wT09PTyA9TzBPME8wMDAwT08wME9PMDAgWydkYXRhJ11bJ251bWJlciddI2xpbmU6NTAKICAgICAgICAgICAgICAgIE8wME8wMDAwTzAwME8wT09PID1PME8wTzAwMDBPTzAwT08wMCBbJ2RhdGEnXVsndG90YWxOdW1iZXInXSNsaW5lOjUxCiAgICAgICAgICAgICAgICBwcmludCAoZiLotKblj7fjgJB7T08wT08wMDAwMDBPME9PTzArMX3jgJHojrflj5bpopjnm67miJDlip9be08wT08wMDBPT08wTzBPT09PfS97TzAwTzAwMDBPMDAwTzBPT099XTog6aKY55uuOntPME9PMDAwT09PT09PMDBPT31cbuetlOahiDp7bGlzdChPTzBPTzBPT08wT09PMDAwMC52YWx1ZXMoKSl9IikjbGluZTo1MgogICAgICAgICAgICAgICAgTzAwMDBPME9PME9PMDBPT08gPU8wTzBPMDAwME9PMDBPTzAwIFsnZGF0YSddWydpZCddI2xpbmU6NTMKICAgICAgICAgICAgICAgIE9PT08wMDBPMDAwMDBPMDAwID1PME8wTzAwMDBPTzAwT08wMCBbJ2RhdGEnXVsnd3l5J10jbGluZTo1NAogICAgICAgICAgICAgICAgTzBPT08wTzAwTzBPMDAwTzAgPU8wTzBPMDAwME9PMDBPTzAwIFsnZGF0YSddWyd3eXlfcG9pbnQnXSNsaW5lOjU1CiAgICAgICAgICAgICAgICBPTzBPMDAwME9PMDBPME8wTyA9WyJBIiwiQiIsIkMiLCJEIl0jbGluZTo1NgogICAgICAgICAgICAgICAgT08wT08wME8wT09PME9PTzAgPXNlYXJjaCAoTzBPTzAwME9PT09PTzAwT08gLGxpc3QgKE9PME9PME9PTzBPT08wMDAwIC52YWx1ZXMgKCkpKSNsaW5lOjU3CiAgICAgICAgICAgICAgICBpZiBPTzBPTzAwTzBPT08wT09PMCA9PTQgOiNsaW5lOjU4CiAgICAgICAgICAgICAgICAgICAgTzBPME9PME8wTzAwMDBPMDAgPWNob2ljZSAoT08wTzAwMDBPTzAwTzBPME8gKSNsaW5lOjU5CiAgICAgICAgICAgICAgICBlbGlmIE9PME9PMDBPME9PTzBPT08wIGluIE9PME8wMDAwT08wME8wTzBPIDojbGluZTo2MAogICAgICAgICAgICAgICAgICAgIE8wTzBPTzBPME8wMDAwTzAwID1PTzBPTzAwTzBPT08wT09PMCAjbGluZTo2MQogICAgICAgICAgICAgICAgICAgIE9PME9PMDBPME9PTzBPT08wID1PTzBPMDAwME9PMDBPME8wTyAuaW5kZXggKE8wTzBPTzBPME8wMDAwTzAwICkjbGluZTo2MgogICAgICAgICAgICAgICAgZWxzZSA6I2xpbmU6NjMKICAgICAgICAgICAgICAgICAgICBPME8wT08wTzBPMDAwME8wMCA9T08wTzAwMDBPTzAwTzBPME8gW09PME9PMDBPME9PTzBPT08wIF0jbGluZTo2NAogICAgICAgICAgICAgICAgTzBPME8wMDAwT08wME9PMDAgPXNzIC5wb3N0IChkb21haW4gKyIvcXVlc3Rpb24vcG9zdCIsaGVhZGVycyA9aGVhZGVycyAsZGF0YSA9eyJpZCI6TzAwMDBPME9PME9PMDBPT08gLCJzZWxlY3QiOk8wTzBPTzBPME8wMDAwTzAwICwid3l5IjpPT09PMDAwTzAwMDAwTzAwMCAsInd5eV9wb2ludCI6TzBPT08wTzAwTzBPMDAwTzAgLCJ1dWlkIjpPME8wMDAwME9PME9PMDBPMCBbJ3V1aWQnXSwic2lnbiI6TzBPMDAwMDBPTzBPTzAwTzAgWydzaWduJ119KS5qc29uICgpI2xpbmU6NjUKICAgICAgICAgICAgICAgIGlmIE8wTzBPMDAwME9PMDBPTzAwIFsnY29kZSddPT0wIDojbGluZTo2NgogICAgICAgICAgICAgICAgICAgIGlmIE9PME9PMDBPME9PTzBPT08wID09NCA6I2xpbmU6NjcKICAgICAgICAgICAgICAgICAgICAgICAgdXBsb2FkIChPME9PMDAwT09PT09PMDBPTyAsT08wT08wT09PME9PTzAwMDAgW2xpc3QgKE8wTzBPMDAwME9PMDBPTzAwIFsnZGF0YSddWydhbnN3ZXInXS5rZXlzICgpKVswIF1dLEZhbHNlICkjbGluZTo2OAogICAgICAgICAgICAgICAgICAgIGlmIE8wTzBPTzBPME8wMDAwTzAwID09bGlzdCAoTzBPME8wMDAwT08wME9PMDAgWydkYXRhJ11bJ2Fuc3dlciddLmtleXMgKCkpWzAgXTojbGluZTo2OQogICAgICAgICAgICAgICAgICAgICAgICBpZiBPTzBPTzAwTzBPT08wT09PMCAhPTQgOiNsaW5lOjcwCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludCAoZiLotKblj7fjgJB7T08wT08wMDAwMDBPME9PTzArMX3jgJHlm57nrZTmraPnoa4sKOmimOW6kzp7TzBPME9PME8wTzAwMDBPMDB9KeetlOahiOS4ujoge09PME9PME9PTzBPT08wMDAwW08wTzBPTzBPME8wMDAwTzAwXX0iKSNsaW5lOjcxCiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgOiNsaW5lOjcyCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmludCAoZiLotKblj7fjgJB7T08wT08wMDAwMDBPME9PTzArMX3jgJHlm57nrZTmraPnoa4sKOmaj+acujp7TzBPME9PME8wTzAwMDBPMDB9KeetlOahiOS4ujoge09PME9PME9PTzBPT08wMDAwW08wTzBPTzBPME8wMDAwTzAwXX0iKSNsaW5lOjczCiAgICAgICAgICAgICAgICAgICAgICAgIGlmIE8wT08wMDBPT08wTzBPT09PID09MTIgOiNsaW5lOjc0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhayAjbGluZTo3NQogICAgICAgICAgICAgICAgICAgIGVsc2UgOiNsaW5lOjc2CiAgICAgICAgICAgICAgICAgICAgICAgIHByaW50IChmIui0puWPt+OAkHtPTzBPTzAwMDAwME8wT09PMCsxfeOAkeWbnuetlOmUmeivryznrZTmoYjkuLo6IHtPTzBPTzBPT08wT09PMDAwMFtPME8wT08wTzBPMDAwME8wMF19IikjbGluZTo3NwogICAgICAgICAgICAgICAgICAgICAgICBpZiBPTzBPTzAwTzBPT08wT09PMCAhPTQgOiNsaW5lOjc4CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGxvYWQgKE8wT08wMDBPT09PT08wME9PICxPTzBPTzBPT08wT09PMDAwMCBbbGlzdCAoTzBPME8wMDAwT08wME9PMDAgWydkYXRhJ11bJ2Fuc3dlciddLmtleXMgKCkpWzAgXV0sVHJ1ZSApI2xpbmU6NzkKICAgICAgICAgICAgICAgICAgICB0aW1lIC5zbGVlcCAoMiApI2xpbmU6ODAKICAgICAgICAgICAgICAgIGVsc2UgOiNsaW5lOjgxCiAgICAgICAgICAgICAgICAgICAgcHJpbnQgKGYi6LSm5Y+344CQe09PME9PMDAwMDAwTzBPT08wKzF944CR5Zue562U5byC5bi4OiB7TzBPME8wMDAwT08wME9PMDB9IikjbGluZTo4MgogICAgICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZSAjbGluZTo4MwogICAgICAgICAgICBlbHNlIDojbGluZTo4NAogICAgICAgICAgICAgICAgcHJpbnQgKGYi6LSm5Y+344CQe09PME9PMDAwMDAwTzBPT08wKzF944CR6I635Y+W6aKY55uu5aSx6LSlOiB7TzBPME8wMDAwT08wME9PMDBbJ21zZyddfSIpI2xpbmU6ODUKICAgICAgICAgICAgICAgIHJldHVybiBGYWxzZSAjbGluZTo4NgogICAgICAgIE8wTzBPMDAwME9PMDBPTzAwID1zcyAucG9zdCAoZG9tYWluICsiL3ByaXplL2dldCIsaGVhZGVycyA9aGVhZGVycyAsZGF0YSA9eydtaWQnOk9PTzAwMDBPME9PME9PMDAwICwidXVpZCI6TzBPMDAwMDBPTzBPTzAwTzAgWyd1dWlkJ10sInNpZ24iOiJlM2Q3ODhmODRjZjdlZmVlZThlY2QxNWQ2OWMxNTFlMmMyZTA3NGY5In0pLmpzb24gKCkjbGluZTo4NwogICAgICAgIHByaW50IChmIui0puWPt+OAkHtPTzBPTzAwMDAwME8wT09PMCsxfeOAkeaPkOS6pOe7k+aenDoge08wTzBPMDAwME9PMDBPTzAwWydtc2cnXX0s6I635b6Xe08wTzBPMDAwME9PMDBPTzAwfSIpI2xpbmU6ODgKICAgICAgICBPME8wTzAwMDBPTzAwT08wMCA9c3MgLnBvc3QgKGRvbWFpbiArIi91c2VyL3RpeGlhbiIsaGVhZGVycyA9aGVhZGVycyAsZGF0YSA9eyJ1dWlkIjpPME8wMDAwME9PME9PMDBPMCBbJ3V1aWQnXSwic2lnbiI6TzBPMDAwMDBPTzBPTzAwTzAgWydzaWduJ119KS5qc29uICgpI2xpbmU6ODkKICAgICAgICBpZiBPME8wTzAwMDBPTzAwT08wMCBbJ2NvZGUnXT09MCA6I2xpbmU6OTAKICAgICAgICAgICAgcHJpbnQgKGYi6LSm5Y+344CQe09PME9PMDAwMDAwTzBPT08wKzF944CR5o+Q546w5oiQ5YqfOiB7TzBPME8wMDAwT08wME9PMDBbJ21zZyddfSzojrflvpd7TzBPME8wMDAwT08wME9PMDB9IikjbGluZTo5MQogICAgICAgIGVsc2UgOiNsaW5lOjkyCiAgICAgICAgICAgIHByaW50IChmIui0puWPt+OAkHtPTzBPTzAwMDAwME8wT09PMCsxfeOAkeaPkOeOsOWksei0pToge08wTzBPMDAwME9PMDBPTzAwWydtc2cnXX0iKSNsaW5lOjkzCiAgICBlbHNlIDojbGluZTo5NAogICAgICAgIHByaW50IChmIui0puWPt+OAkHtPTzBPTzAwMDAwME8wT09PMCsxfeOAkeiOt+WPlummlumhtemimOebruWksei0pToge08wTzBPMDAwME9PMDBPTzAwfSIpI2xpbmU6OTUKZGVmIHNlYXJjaCAoTzAwT09PMDBPME9PME8wTzAgLE8wMDAwTzAwTzBPTzAwT08wICk6I2xpbmU6OTcKICAgIGZvciBPME9PMDBPMDAwME9PME9PTyBpbiByYW5nZSAoNCApOiNsaW5lOjk4CiAgICAgICAgdHJ5IDojbGluZTo5OQogICAgICAgICAgICBPME9PME9PME8wT09PT08wMCA9c3MgLmdldCAodHVybCArIi9zZWFyY2g/cXVlc3Rpb249IitPMDBPT08wME8wT08wTzBPMCApLmpzb24gKCkjbGluZToxMDAKICAgICAgICAgICAgaWYgTzBPTzBPTzBPME9PT09PMDAgWyJzdGF0dXMiXT09JzIwMCc6I2xpbmU6MTAxCiAgICAgICAgICAgICAgICB0cnkgOiNsaW5lOjEwMgogICAgICAgICAgICAgICAgICAgIHJldHVybiBPMDAwME8wME8wT08wME9PMCAuaW5kZXggKE8wT08wT08wTzBPT09PTzAwIFsiY29udGVudCJdKSNsaW5lOjEwMwogICAgICAgICAgICAgICAgZXhjZXB0IDojbGluZToxMDQKICAgICAgICAgICAgICAgICAgICByZXR1cm4gNCAjbGluZToxMDUKICAgICAgICAgICAgZWxpZiBPME9PME9PME8wT09PT08wMCBbInN0YXR1cyJdPT0nMjAxJzojbGluZToxMDYKICAgICAgICAgICAgICAgIHRyeSA6I2xpbmU6MTA3CiAgICAgICAgICAgICAgICAgICAgTzBPTzBPTzAwTzAwME9PME8gPVsiQSIsIkIiLCJDIiwiRCJdI2xpbmU6MTA4CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE8wT08wT08wME8wMDBPTzBPIC5pbmRleCAoTzBPTzBPTzBPME9PT09PMDAgWyJjb250ZW50Il0pI2xpbmU6MTA5CiAgICAgICAgICAgICAgICBleGNlcHQgOiNsaW5lOjExMAogICAgICAgICAgICAgICAgICAgIHJldHVybiA0ICNsaW5lOjExMQogICAgICAgICAgICBlbHNlIDojbGluZToxMTIKICAgICAgICAgICAgICAgIHJldHVybiA0ICNsaW5lOjExMwogICAgICAgIGV4Y2VwdCA6I2xpbmU6MTE0CiAgICAgICAgICAgIHByaW50IChmIlvpopjlupPmnI3liqHlmajlvILluLhdOiDmkJzntKLpopjnm67lpLHotKXvvIzljbPlsIboh6rliqjlsJ3or5XlvZPliY17TzBPTzAwTzAwMDBPTzBPT08rMX3mrKEhIikjbGluZToxMTUKICAgICAgICAgICAgdGltZSAuc2xlZXAgKDEgKSNsaW5lOjExNgogICAgcmV0dXJuIDQgI2xpbmU6MTE3CmRlZiB1cGxvYWQgKE9PTzBPTzAwME8wT09PME9PICxPME8wT08wMDBPMDBPME9PMCAsTzBPT09PMDAwTzAwTzAwMDAgKTojbGluZToxMTkKICAgIGZvciBPTzAwME9PTzAwTzAwMDBPTyBpbiByYW5nZSAoNCApOiNsaW5lOjEyMAogICAgICAgIHRyeSA6I2xpbmU6MTIxCiAgICAgICAgICAgIGlmIE8wT09PTzAwME8wME8wMDAwIDojbGluZToxMjIKICAgICAgICAgICAgICAgIE8wMDBPME8wTzBPME8wTzBPID1zcyAuZ2V0ICh0dXJsICsiL3VwbG9hZD9xdWVzdGlvbj0iK09PTzBPTzAwME8wT09PME9PICtmIiZhbnN3ZXI9e08wTzBPTzAwME8wME8wT08wfSZ1cGRhdGU9e08wT09PTzAwME8wME8wMDAwfSIpLmpzb24gKCkjbGluZToxMjMKICAgICAgICAgICAgICAgIHByaW50IChmIuS4iuS8oOmimOW6k+acjeWKoeWZqCjmm7TmlrDnrZTmoYgpOntPMDAwTzBPME8wTzBPME8wT1snbXNnJ119IikjbGluZToxMjQKICAgICAgICAgICAgZWxzZSA6I2xpbmU6MTI1CiAgICAgICAgICAgICAgICBPMDAwTzBPME8wTzBPME8wTyA9c3MgLmdldCAodHVybCArIi91cGxvYWQ/cXVlc3Rpb249IitPT08wT08wMDBPME9PTzBPTyArZiImYW5zd2VyPXtPME8wT08wMDBPMDBPME9PMH0iKS5qc29uICgpI2xpbmU6MTI2CiAgICAgICAgICAgICAgICBwcmludCAoZiLkuIrkvKDpopjlupPmnI3liqHlmago5paw5aKe6aKY55uuKTp7TzAwME8wTzBPME8wTzBPME9bJ21zZyddfSIpI2xpbmU6MTI3CiAgICAgICAgICAgIHJldHVybiBUcnVlICNsaW5lOjEyOAogICAgICAgIGV4Y2VwdCA6I2xpbmU6MTI5CiAgICAgICAgICAgIHByaW50IChmIlvkuIrkvKDpopjlupPmnI3liqHlmajlvILluLhdOiDkuIrkvKDpopjnm67miJbpopjnm67mm7TmlrDlpLHotKXvvIzljbPlsIboh6rliqjlsJ3or5XlvZPliY17T08wMDBPT08wME8wMDAwT08rMX3mrKEhIikjbGluZToxMzAKICAgICAgICAgICAgdGltZSAuc2xlZXAgKDEgKSNsaW5lOjEzMQogICAgcmV0dXJuIEZhbHNlICNsaW5lOjEzMgppZiBfX25hbWVfXyA9PSJfX21haW5fXyI6I2xpbmU6MTM0CiAgICBwcmludCAoZiIiIkJZ77yaTUvmlofljZrkvJrnrZTpopgKIiIiKSNsaW5lOjE0MwogICAgaWYgQnR5cGUgPT0i6Z2S6b6ZIjojbGluZToxNDQKICAgICAgICBpZiBvcyAuZ2V0ZW52IChsaW54aV90b2tlbiApPT1Ob25lIDojbGluZToxNDUKICAgICAgICAgICAgcHJpbnQgKGYn6Z2S6b6Z5Y+Y6YeP5byC5bi4OiDor7fmt7vliqB7bGlueGlfdG9rZW595Y+Y6YeP56S65L6LOntsaW54aV90aXBzfSDnoa7kv53kuIDooYzkuIDkuKonKSNsaW5lOjE0NgogICAgICAgICAgICBleGl0ICgpI2xpbmU6MTQ3CiAgICAgICAgY2tfdG9rZW4gPVtqc29uIC5sb2FkcyAoT09PMDBPTzAwTzAwMDBPT08gKWlmICImImluIE9PME9PTzAwMDBPTzAwMDAwIGVsc2UganNvbiAubG9hZHMgKE9PME9PTzAwMDBPTzAwMDAwIClmb3IgT08wT09PMDAwME9PMDAwMDAgaW4gb3MgLmdldGVudiAobGlueGlfdG9rZW4gKS5zcGxpdGxpbmVzICgpZm9yIE9PTzAwT08wME8wMDAwT09PIGluIHJlIC5maW5kYWxsIChyJ3suKj99JyxPTzBPT08wMDAwT08wMDAwMCApXSNsaW5lOjE1MAogICAgZWxzZSA6I2xpbmU6MTUxCiAgICAgICAgY2tfdG9rZW4gPVtdI2xpbmU6MTU1CiAgICAgICAgaWYgY2tfdG9rZW4gPT1bXTojbGluZToxNTYKICAgICAgICAgICAgcHJpbnQgKGYn5pys5Zyw5Y+Y6YeP5byC5bi4OiDor7fmt7vliqDmnKzlnLBja190b2tlbuekuuS+izp7bGlueGlfdGlwc30nKSNsaW5lOjE1NwogICAgd2l0aCBQb29sICgxMClhcyBwb29sIDojbGluZToxNjAKICAgICAgICBwcmludCAoIj09PT09PT09PT09PT09PT09PeiOt+WPlui0puWPt+S/oeaBrz09PT09PT09PT09PT09PT09IikjbGluZToxNjIKICAgICAgICBwb29sIC5zdGFybWFwICh1c2VyX2luZm8gLGxpc3QgKGVudW1lcmF0ZSAoY2tfdG9rZW4gKSkpI2xpbmU6MTYzCiAgICAgICAgcHJpbnQgKCI9PT09PT09PT09PT09PT09PT3lvIDlp4vmiafooYzku7vliqE9PT09PT09PT09PT09PT09PSIpI2xpbmU6MTY0CiAgICAgICAgcG9vbCAuc3Rhcm1hcCAoZG9fcmVhZCAsbGlzdCAoZW51bWVyYXRlIChja190b2tlbiApKSkjbGluZToxNjUKICAgICAgICBwcmludCAoIj09PT09PT09PT09PT09PT09PeiOt+WPlui0puWPt+S/oeaBrz09PT09PT09PT09PT09PT09IikjbGluZToxNjYKICAgICAgICBwb29sIC5zdGFybWFwICh1c2VyX2luZm8gLGxpc3QgKGVudW1lcmF0ZSAoY2tfdG9rZW4gKSkpI2xpbmU6MTY3CiAgICAgICAgcG9vbCAuY2xvc2UgKCkjbGluZToxNzEKICAgICAgICBwb29sIC5qb2luICgpI2xpbmU6MTczCiAgICAgICAgc3MgLmNsb3NlICNsaW5lOjE3NgogICAgICAgIHByaW50IChmIj09PT09PT09PT09PT09PT1be25hbWV9Vnt2ZXJzaW9ufV09PT09PT09PT09PT09PT0iKQ==')))