From 41160d343bacbcca48b5e9adb3b4fb152d61d2ad Mon Sep 17 00:00:00 2001 From: kaisky Date: Fri, 28 Feb 2025 05:17:07 +0000 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20js/KTV=E6=AD=8C=E5=8E=85?= =?UTF-8?q?=5F=E5=90=AC=5F.js?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- js/KTV歌厅_听_.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/KTV歌厅_听_.js b/js/KTV歌厅_听_.js index b354cf6..0b18dc1 100644 --- a/js/KTV歌厅_听_.js +++ b/js/KTV歌厅_听_.js @@ -1 +1 @@ -Z2xvYmFsVGhpcy5wb3N0MiA9IGZ1bmN0aW9uIChfdXJsLCBfZGF0YSkgewogICAgLy8gbGV0IGRhdGEgPSBidWlsZFVybChfdXJsLF9kYXRhKS5zcGxpdCgnPycpWzFdOwogICAgLy8gcmV0dXJuIHBvc3QoX3VybCx7Ym9keTplbmNvZGVVUklDb21wb25lbnQoZGF0YSksaGVhZGVyczpydWxlLmhlYWRlcnN9KTsKICAgIHJldHVybiBwb3N0KF91cmwsIHtkYXRhOiBfZGF0YSwgaGVhZGVyczogcnVsZS5oZWFkZXJzfSk7Cn0KdmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflkKzmrYwnLC8v5b2x6KeGfOWQrOS5pnzmvKvnlLt85bCP6K+0CiAgICB0aXRsZTogJ0tUVuatjOWOhVvlkKxdJywKICAgIC8vIGhvc3Q6ICdodHRwczovL3Zwc2RuLmxldXNlLnRvcCcsCiAgICBob3N0OiAnaHR0cHM6Ly9hcGkuY2xvdWRmbGFyZS5jb20nLAogICAgcm9vdDogJ2h0dHBzOi8vYXBpLmNsb3VkZmxhcmUuY29tL2NsaWVudC92NC9hY2NvdW50cy8xZWNjNGE5NDdjNWE1MTg0MjcxNDFmNGE2OGM4NmVhMS9kMS9kYXRhYmFzZS80ZjEzODVhYi1mOTUyLTQwNGEtODcwYS1lNGNmZWY0YmQ5ZmQvcXVlcnknLAogICAgbWt0dlVybDogJ2h0dHA6Ly9lbS4yMWR0di5jb20vc29uZ3MvJywKICAgIHVybDogJy9zZWFyY2htdj90YWJsZT1meWNsYXNzJnBnPWZ5cGFnZSNmeWZpbHRlcicsCiAgICBzZWFyY2hVcmw6ICcvc2VhcmNobXY/a2V5d29yZHM9KiomcGc9ZnlwYWdlJywKICAgIHBpYzogJ2h0dHBzOi8vYXBpLnBhdWdyYW0uY29tL3dhbGxwYXBlci8/c291cmNlPXNpbmEmY2F0ZWdvcnk9dXMnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGZpbHRlcjogJ0g0c0lBQUFBQUFBQUE1MlNUVS9DTUJqSHYwdlBIQVRmdWVyRmt3ZVBoZ09IU1JaaG1JRW1oSkJnQkxJSUJFZ0kwL0JxQWdGRXdnWVJEYmp3Wld6cHZvVXIydEdsWE9UVy9wK243YSsvTmc0aW9oUVFaT0M5aklOcklRYThRQllDWWxnQ0xpRDVRNEkxaHpVTjVtYldYSlRFcURXM1JuZis0SzJ3V2lLUmhuVFBmT2lSbUZRVHJ2aHE0Q1k3a0dxN2F6NW43Tmp6RjZQUEVTeG9kcnhMdTZzR2JGZEF3a2NLdnp4WFlUbTBwbG5xYzZnTXRxWlpsajg0Rk5pWmNCekxlUW9XRmNMaGM0RklXQW93Z29KK3hnNGVEWEV2dWVieC9CTUlxd1ZyQzU2cGFyQXh4VEtiZlRiZW96TFZEaHZ2MDI3VmdIbVZyUnpRVTdNNkd4L1NXNC9iYkh4RVlkTFQ3M25Gam8vcDl2MDNWSGNjN042aFFCUE5rZHVmSWE5QjdjdFJvamZHMDBjS3l6eCtOSFlqT0IrL2tkMzY4ZEg3UFg3SjhhNkxDaXpybkd1VVRDSzF5N21HcVFVYTVualg5VDRzR1p4b3BKWFliaW9hS3cxVUhmT2lLelU0eTNDaThlTFZIRHh0c0t5MlVMNTVlblp4Y3I1QnRhSGpibWIxZ3hNLzhzaTlUT1lEQUFBPScsCiAgICBmaWx0ZXJfdXJsOiAne3tmbH19JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnLAogICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsCiAgICAgICAgJ0F1dGhvcml6YXRpb24nOiAnQmVhcmVyIEx1ZU5yeWNXLTZqa3M3eEJqUHFYOW1qRnEyQTJNNUt1bDZJZzNEOHonLAogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBjbGFzc19uYW1lOiAn5q2M5pifJuabsuW6kycsCiAgICBjbGFzc191cmw6ICdzaW5nZXImc29uZycsCiAgICDkuIDnuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICAvLyBsZXQgX3VybCA9IGlucHV0LnNwbGl0KCcjJylbMF07CiAgICAgICAgbGV0IF91cmwgPSBydWxlLnJvb3Q7CiAgICAgICAgbGV0IHBhcmFtcyA9IFtdOwogICAgICAgIGxldCBzcWwgPSAnJzsKICAgICAgICBsZXQgc2l6ZSA9IDIwOwogICAgICAgIGxldCBwZyA9IE1ZX1BBR0U7CiAgICAgICAgaWYgKE1ZX0NBVEUgPT09ICdzaW5nZXInKSB7CiAgICAgICAgICAgIHNxbCA9ICdzZWxlY3QgbmFtZSwgaWQgZnJvbSBzaW5nZXIgd2hlcmUgMT0xJzsKICAgICAgICAgICAgaWYgKE1ZX0ZMLnJlZ2lvbikgewogICAgICAgICAgICAgICAgcGFyYW1zLnB1c2goTVlfRkwucmVnaW9uKTsKICAgICAgICAgICAgICAgIHNxbCArPSAnIGFuZCByZWdpb25faWQgPSA/JzsKICAgICAgICAgICAgICAgIC8vIF91cmwgKz0gJyZ3aGVyZT1yZWdpb25faWQma2V5d29yZHM9JyArIE1ZX0ZMLnJlZ2lvbiArICcmc2l6ZT0yMSc7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoTVlfRkwuZm9ybSkgewogICAgICAgICAgICAgICAgcGFyYW1zLnB1c2goTVlfRkwuZm9ybSk7CiAgICAgICAgICAgICAgICBzcWwgKz0gJyBhbmQgZm9ybV9pZCA9ID8nOwogICAgICAgICAgICAgICAgLy8gX3VybCArPSAnJndoZXJlPWZvcm1faWQma2V5d29yZHM9JyArIE1ZX0ZMLmZvcm0gKyAnJnNpemU9MjEnOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHNxbCArPSBgIG9yZGVyIGJ5IGlkIGxpbWl0ICR7KHBnIC0gMSkgKiBzaXplfSwke3NpemV9O2A7CiAgICAgICAgICAgIGxldCBodG1sID0gcG9zdDIoX3VybCwge3BhcmFtczogcGFyYW1zLCBzcWw6IHNxbH0pOwogICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgIGQgPSBqc29uLnJlc3VsdFswXS5yZXN1bHRzLm1hcChpdGVtID0+IHsKICAgICAgICAgICAgICAgIGxldCBwaWMgPSBydWxlLm1rdHZVcmwgKyBpdGVtLmlkICsgJy5qcGcnOwogICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICB2b2RfaWQ6IGl0ZW0ubmFtZSArICdAQCcgKyBpdGVtLm5hbWUgKyAnQEAnICsgcGljLAogICAgICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBpdGVtLm5hbWUsCiAgICAgICAgICAgICAgICAgICAgdm9kX3BpYzogcGljLAogICAgICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiAnJywKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIGlmIChNWV9DQVRFID09PSAnc29uZycpIHsKICAgICAgICAgICAgc3FsID0gJ3NlbGVjdCBudW1iZXIsIG5hbWUgZnJvbSBzb25nIHdoZXJlIDE9MSc7CiAgICAgICAgICAgIGlmIChNWV9GTC5sYW4pIHsKICAgICAgICAgICAgICAgIHBhcmFtcy5wdXNoKE1ZX0ZMLmxhbik7CiAgICAgICAgICAgICAgICBzcWwgKz0gJyBhbmQgbGFuZ3VhZ2VfaWQgPSA/JzsKICAgICAgICAgICAgICAgIC8vIF91cmwgKz0gJyZ3aGVyZT1sYW5ndWFnZV9pZCZrZXl3b3Jkcz0nICsgTVlfRkwubGFuICsgJyZzaXplPTIxJzsKICAgICAgICAgICAgfSBlbHNlIGlmIChNWV9GTC50eXBlKSB7CiAgICAgICAgICAgICAgICBwYXJhbXMucHVzaChNWV9GTC50eXBlKTsKICAgICAgICAgICAgICAgIHNxbCArPSAnIGFuZCB0eXBlX2lkID0gPyc7CiAgICAgICAgICAgICAgICAvLyBfdXJsICs9ICcmd2hlcmU9dHlwZV9pZCZrZXl3b3Jkcz0nICsgTVlfRkwudHlwZSArICcmc2l6ZT0yMSc7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgc3FsICs9IGAgb3JkZXIgYnkgbnVtYmVyIGxpbWl0ICR7KHBnIC0gMSkgKiBzaXplfSwke3NpemV9O2A7CiAgICAgICAgICAgIGxldCBodG1sID0gcG9zdDIoX3VybCwge3BhcmFtczogcGFyYW1zLCBzcWw6IHNxbH0pOwogICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgIGQgPSBqc29uLnJlc3VsdFswXS5yZXN1bHRzLm1hcChpdGVtID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgdm9kX2lkOiBydWxlLm1rdHZVcmwgKyBpdGVtLm51bWJlciArICcubWt2JyArICdAQCcgKyBpdGVtLm5hbWUgKyAnQEAnICsgJycsCiAgICAgICAgICAgICAgICAgICAgdm9kX25hbWU6IGl0ZW0ubmFtZSwKICAgICAgICAgICAgICAgICAgICB2b2RfcGljOiBydWxlLnBpYywKICAgICAgICAgICAgICAgICAgICB2b2RfcmVtYXJrczogJycsCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBWT0RTID0gZDsKICAgIH0pLAogICAg5LqM57qnOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBfdXJsID0gcnVsZS5yb290OwogICAgICAgIGxldCBpZCA9IG9ySWQuc3BsaXQoJ0BAJylbMF07CiAgICAgICAgbGV0IG5hbWUgPSBvcklkLnNwbGl0KCdAQCcpWzFdOwogICAgICAgIGlmIChpZC5lbmRzV2l0aCgnLm1rdicpKSB7CiAgICAgICAgICAgIFZPRCA9IHsKICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBuYW1lLAogICAgICAgICAgICAgICAgdm9kX3BsYXlfZnJvbTogJ+a1t+e/lOS6jOasoUpT6Kej5a+GLVNC5LiN6KaB5Lmx5LygJywKICAgICAgICAgICAgICAgIHZvZF9jb250ZW50OiAn5rW357+U5LqM5qyhSlPop6Plr4bop6Plr4YtU0LkuI3opoHkubHkvKAnLAogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgVk9EID0gewogICAgICAgICAgICAgICAgdm9kX25hbWU6IGlkLAogICAgICAgICAgICAgICAgdm9kX3BsYXlfZnJvbTogJ+a1t+e/lOS6jOasoUpT6Kej5a+G6Kej5a+GLVNC5LiN6KaB5Lmx5LygJywKICAgICAgICAgICAgICAgIHZvZF9jb250ZW50OiAn5rW357+U5LqM5qyhSlPop6Plr4bop6Plr4YtU0LkuI3opoHkubHkvKAnLAogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmIChpZC5lbmRzV2l0aCgnLm1rdicpKSB7CiAgICAgICAgICAgIFZPRC52b2RfcGxheV91cmwgPSAn5ZeF5o6i5pKt5pS+JCcgKyBpZDsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBsZXQgcGFyYW1zID0gW2lkXTsKICAgICAgICAgICAgbGV0IHNxbCA9ICdzZWxlY3QgbnVtYmVyLG5hbWUgZnJvbSBzb25nIHdoZXJlIHNpbmdlcl9uYW1lcyA9ID8gb3JkZXIgYnkgbnVtYmVyIGxpbWl0IDAsOTk5JzsKICAgICAgICAgICAgbGV0IGh0bWwgPSBwb3N0MihfdXJsLCB7cGFyYW1zOiBwYXJhbXMsIHNxbDogc3FsfSk7CiAgICAgICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICAgICAgbGV0IGRhdGEgPSBqc29uLnJlc3VsdFswXS5yZXN1bHRzOwoKICAgICAgICAgICAgVk9ELnZvZF9wbGF5X3VybCA9IChkYXRhLm1hcChpdGVtID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiBpdGVtLm5hbWUgKyAnJCcgKyBydWxlLm1rdHZVcmwgKyBpdGVtLm51bWJlciArICcubWt2JzsKICAgICAgICAgICAgfSkpLmpvaW4oJyMnKTsKICAgICAgICB9CiAgICB9KSwKICAgIOaQnOe0ojogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgX3VybCA9IHJ1bGUucm9vdDsKICAgICAgICBsZXQgd2QgPSBLRVk7CiAgICAgICAgbGV0IHNxbCA9ICJzZWxlY3QgbnVtYmVyLG5hbWUgZnJvbSBzb25nIHdoZXJlIG5hbWUgbGlrZSAnJSIgKyB3ZCArICIlJyBvciBzaW5nZXJfbmFtZXMgbGlrZSAnJSIgKyB3ZCArICIlJyI7CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICBsZXQgaHRtbCA9IHBvc3QyKF91cmwsIHtzcWw6IHNxbH0pOwogICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICBkID0ganNvbi5yZXN1bHRbMF0ucmVzdWx0cy5tYXAoaXRlbSA9PiB7CiAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICB2b2RfaWQ6IHJ1bGUubWt0dlVybCArIGl0ZW0ubnVtYmVyICsgJy5ta3YnICsgJ0BAJyArIGl0ZW0ubmFtZSArICdAQCcgKyAnJywKICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBpdGVtLm5hbWUsCiAgICAgICAgICAgICAgICB2b2RfcGljOiBydWxlLnBpYywKICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBpdGVtLnNpbmdlcl9uYW1lcywKICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIFZPRFMgPSBkOwogICAgfSksCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBpbnB1dCA9IHtwYXJzZTogMCwgdXJsOiBpbnB1dH07CiAgICB9KSwKfQ== \ No newline at end of file +Z2xvYmFsVGhpcy5wb3N0MiA9IGZ1bmN0aW9uIChfdXJsLCBfZGF0YSkgewogICAgLy8gbGV0IGRhdGEgPSBidWlsZFVybChfdXJsLF9kYXRhKS5zcGxpdCgnPycpWzFdOwogICAgLy8gcmV0dXJuIHBvc3QoX3VybCx7Ym9keTplbmNvZGVVUklDb21wb25lbnQoZGF0YSksaGVhZGVyczpydWxlLmhlYWRlcnN9KTsKICAgIHJldHVybiBwb3N0KF91cmwsIHtkYXRhOiBfZGF0YSwgaGVhZGVyczogcnVsZS5oZWFkZXJzfSk7Cn0KdmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflkKzmrYwnLC8v5b2x6KeGfOWQrOS5pnzmvKvnlLt85bCP6K+0CiAgICB0aXRsZTogJ0tUVuatjOWOhVvlkKxdJywKICAgIC8vIGhvc3Q6ICdodHRwczovL3Zwc2RuLmxldXNlLnRvcCcsCiAgICBob3N0OiAnaHR0cHM6Ly9hcGkuY2xvdWRmbGFyZS5jb20nLAogICAgcm9vdDogJ2h0dHBzOi8vYXBpLmNsb3VkZmxhcmUuY29tL2NsaWVudC92NC9hY2NvdW50cy8xZWNjNGE5NDdjNWE1MTg0MjcxNDFmNGE2OGM4NmVhMS9kMS9kYXRhYmFzZS80ZjEzODVhYi1mOTUyLTQwNGEtODcwYS1lNGNmZWY0YmQ5ZmQvcXVlcnknLAogICAgbWt0dlVybDogJ2h0dHA6Ly9lbS4yMWR0di5jb20vc29uZ3MvJywKICAgIHVybDogJy9zZWFyY2htdj90YWJsZT1meWNsYXNzJnBnPWZ5cGFnZSNmeWZpbHRlcicsCiAgICBzZWFyY2hVcmw6ICcvc2VhcmNobXY/a2V5d29yZHM9KiomcGc9ZnlwYWdlJywKICAgIHBpYzogJ2h0dHBzOi8vYXBpLnBhdWdyYW0uY29tL3dhbGxwYXBlci8/c291cmNlPXNpbmEmY2F0ZWdvcnk9dXMnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGZpbHRlcjogJ0g0c0lBQUFBQUFBQUE1MlNUVS9DTUJqSHYwdlBIQVRmdWVyRmt3ZVBoZ09IU1JaaG1JRW1oSkJnQkxJSUJFZ0kwL0JxQWdGRXdnWVJEYmp3Wld6cHZvVXIydEdsWE9UVy9wK243YSsvTmc0aW9oUVFaT0M5aklOcklRYThRQllDWWxnQ0xpRDVRNEkxaHpVTjVtYldYSlRFcURXM1JuZis0SzJ3V2lLUmhuVFBmT2lSbUZRVHJ2aHE0Q1k3a0dxN2F6NW43Tmp6RjZQUEVTeG9kcnhMdTZzR2JGZEF3a2NLdnp4WFlUbTBwbG5xYzZnTXRxWlpsajg0Rk5pWmNCekxlUW9XRmNMaGM0RklXQW93Z29KK3hnNGVEWEV2dWVieC9CTUlxd1ZyQzU2cGFyQXh4VEtiZlRiZW96TFZEaHZ2MDI3VmdIbVZyUnpRVTdNNkd4L1NXNC9iYkh4RVlkTFQ3M25Gam8vcDl2MDNWSGNjN042aFFCUE5rZHVmSWE5QjdjdFJvamZHMDBjS3l6eCtOSFlqT0IrL2tkMzY4ZEg3UFg3SjhhNkxDaXpybkd1VVRDSzF5N21HcVFVYTVualg5VDRzR1p4b3BKWFliaW9hS3cxVUhmT2lLelU0eTNDaThlTFZIRHh0c0t5MlVMNTVlblp4Y3I1QnRhSGpibWIxZ3hNLzhzaTlUT1lEQUFBPScsCiAgICBmaWx0ZXJfdXJsOiAne3tmbH19JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnLAogICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsCiAgICAgICAgJ0F1dGhvcml6YXRpb24nOiAnQmVhcmVyIEx1ZU5yeWNXLTZqa3M3eEJqUHFYOW1qRnEyQTJNNUt1bDZJZzNEOHonLAogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBjbGFzc19uYW1lOiAn5q2M5pifJuabsuW6kycsCiAgICBjbGFzc191cmw6ICdzaW5nZXImc29uZycsCiAgICDkuIDnuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICAvLyBsZXQgX3VybCA9IGlucHV0LnNwbGl0KCcjJylbMF07CiAgICAgICAgbGV0IF91cmwgPSBydWxlLnJvb3Q7CiAgICAgICAgbGV0IHBhcmFtcyA9IFtdOwogICAgICAgIGxldCBzcWwgPSAnJzsKICAgICAgICBsZXQgc2l6ZSA9IDIwOwogICAgICAgIGxldCBwZyA9IE1ZX1BBR0U7CiAgICAgICAgaWYgKE1ZX0NBVEUgPT09ICdzaW5nZXInKSB7CiAgICAgICAgICAgIHNxbCA9ICdzZWxlY3QgbmFtZSwgaWQgZnJvbSBzaW5nZXIgd2hlcmUgMT0xJzsKICAgICAgICAgICAgaWYgKE1ZX0ZMLnJlZ2lvbikgewogICAgICAgICAgICAgICAgcGFyYW1zLnB1c2goTVlfRkwucmVnaW9uKTsKICAgICAgICAgICAgICAgIHNxbCArPSAnIGFuZCByZWdpb25faWQgPSA/JzsKICAgICAgICAgICAgICAgIC8vIF91cmwgKz0gJyZ3aGVyZT1yZWdpb25faWQma2V5d29yZHM9JyArIE1ZX0ZMLnJlZ2lvbiArICcmc2l6ZT0yMSc7CiAgICAgICAgICAgIH0gZWxzZSBpZiAoTVlfRkwuZm9ybSkgewogICAgICAgICAgICAgICAgcGFyYW1zLnB1c2goTVlfRkwuZm9ybSk7CiAgICAgICAgICAgICAgICBzcWwgKz0gJyBhbmQgZm9ybV9pZCA9ID8nOwogICAgICAgICAgICAgICAgLy8gX3VybCArPSAnJndoZXJlPWZvcm1faWQma2V5d29yZHM9JyArIE1ZX0ZMLmZvcm0gKyAnJnNpemU9MjEnOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHNxbCArPSBgIG9yZGVyIGJ5IGlkIGxpbWl0ICR7KHBnIC0gMSkgKiBzaXplfSwke3NpemV9O2A7CiAgICAgICAgICAgIGxldCBodG1sID0gcG9zdDIoX3VybCwge3BhcmFtczogcGFyYW1zLCBzcWw6IHNxbH0pOwogICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgIGQgPSBqc29uLnJlc3VsdFswXS5yZXN1bHRzLm1hcChpdGVtID0+IHsKICAgICAgICAgICAgICAgIGxldCBwaWMgPSBydWxlLm1rdHZVcmwgKyBpdGVtLmlkICsgJy5qcGcnOwogICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICB2b2RfaWQ6IGl0ZW0ubmFtZSArICdAQCcgKyBpdGVtLm5hbWUgKyAnQEAnICsgcGljLAogICAgICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBpdGVtLm5hbWUsCiAgICAgICAgICAgICAgICAgICAgdm9kX3BpYzogcGljLAogICAgICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiAnJywKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfSBlbHNlIGlmIChNWV9DQVRFID09PSAnc29uZycpIHsKICAgICAgICAgICAgc3FsID0gJ3NlbGVjdCBudW1iZXIsIG5hbWUgZnJvbSBzb25nIHdoZXJlIDE9MSc7CiAgICAgICAgICAgIGlmIChNWV9GTC5sYW4pIHsKICAgICAgICAgICAgICAgIHBhcmFtcy5wdXNoKE1ZX0ZMLmxhbik7CiAgICAgICAgICAgICAgICBzcWwgKz0gJyBhbmQgbGFuZ3VhZ2VfaWQgPSA/JzsKICAgICAgICAgICAgICAgIC8vIF91cmwgKz0gJyZ3aGVyZT1sYW5ndWFnZV9pZCZrZXl3b3Jkcz0nICsgTVlfRkwubGFuICsgJyZzaXplPTIxJzsKICAgICAgICAgICAgfSBlbHNlIGlmIChNWV9GTC50eXBlKSB7CiAgICAgICAgICAgICAgICBwYXJhbXMucHVzaChNWV9GTC50eXBlKTsKICAgICAgICAgICAgICAgIHNxbCArPSAnIGFuZCB0eXBlX2lkID0gPyc7CiAgICAgICAgICAgICAgICAvLyBfdXJsICs9ICcmd2hlcmU9dHlwZV9pZCZrZXl3b3Jkcz0nICsgTVlfRkwudHlwZSArICcmc2l6ZT0yMSc7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgc3FsICs9IGAgb3JkZXIgYnkgbnVtYmVyIGxpbWl0ICR7KHBnIC0gMSkgKiBzaXplfSwke3NpemV9O2A7CiAgICAgICAgICAgIGxldCBodG1sID0gcG9zdDIoX3VybCwge3BhcmFtczogcGFyYW1zLCBzcWw6IHNxbH0pOwogICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgIGQgPSBqc29uLnJlc3VsdFswXS5yZXN1bHRzLm1hcChpdGVtID0+IHsKICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgdm9kX2lkOiBydWxlLm1rdHZVcmwgKyBpdGVtLm51bWJlciArICcubWt2JyArICdAQCcgKyBpdGVtLm5hbWUgKyAnQEAnICsgJycsCiAgICAgICAgICAgICAgICAgICAgdm9kX25hbWU6IGl0ZW0ubmFtZSwKICAgICAgICAgICAgICAgICAgICB2b2RfcGljOiBydWxlLnBpYywKICAgICAgICAgICAgICAgICAgICB2b2RfcmVtYXJrczogJycsCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBWT0RTID0gZDsKICAgIH0pLAogICAg5LqM57qnOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBfdXJsID0gcnVsZS5yb290OwogICAgICAgIGxldCBpZCA9IG9ySWQuc3BsaXQoJ0BAJylbMF07CiAgICAgICAgbGV0IG5hbWUgPSBvcklkLnNwbGl0KCdAQCcpWzFdOwogICAgICAgIGlmIChpZC5lbmRzV2l0aCgnLm1rdicpKSB7CiAgICAgICAgICAgIFZPRCA9IHsKICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBuYW1lLAogICAgICAgICAgICAgICAgdm9kX3BsYXlfZnJvbTogJ+a1t+e/lOS6jOasoUpT6Kej5a+GLeS4jeimgeS5seS8oO+8gScsCiAgICAgICAgICAgICAgICB2b2RfY29udGVudDogJ+a1t+e/lOS6jOasoUpT6Kej5a+GLeS4jeimgeS5seS8oO+8gScsCiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgewogICAgICAgICAgICBWT0QgPSB7CiAgICAgICAgICAgICAgICB2b2RfbmFtZTogaWQsCiAgICAgICAgICAgICAgICB2b2RfcGxheV9mcm9tOiAn5rW357+U5LqM5qyhSlPop6Plr4Yt5LiN6KaB5Lmx5Lyg77yBJywKICAgICAgICAgICAgICAgIHZvZF9jb250ZW50OiAn5rW357+U5LqM5qyhSlPop6Plr4Yt5LiN6KaB5Lmx5Lyg77yBJywKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpZiAoaWQuZW5kc1dpdGgoJy5ta3YnKSkgewogICAgICAgICAgICBWT0Qudm9kX3BsYXlfdXJsID0gJ+WXheaOouaSreaUviQnICsgaWQ7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgbGV0IHBhcmFtcyA9IFtpZF07CiAgICAgICAgICAgIGxldCBzcWwgPSAnc2VsZWN0IG51bWJlcixuYW1lIGZyb20gc29uZyB3aGVyZSBzaW5nZXJfbmFtZXMgPSA/IG9yZGVyIGJ5IG51bWJlciBsaW1pdCAwLDk5OSc7CiAgICAgICAgICAgIGxldCBodG1sID0gcG9zdDIoX3VybCwge3BhcmFtczogcGFyYW1zLCBzcWw6IHNxbH0pOwogICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgIGxldCBkYXRhID0ganNvbi5yZXN1bHRbMF0ucmVzdWx0czsKCiAgICAgICAgICAgIFZPRC52b2RfcGxheV91cmwgPSAoZGF0YS5tYXAoaXRlbSA9PiB7CiAgICAgICAgICAgICAgICByZXR1cm4gaXRlbS5uYW1lICsgJyQnICsgcnVsZS5ta3R2VXJsICsgaXRlbS5udW1iZXIgKyAnLm1rdic7CiAgICAgICAgICAgIH0pKS5qb2luKCcjJyk7CiAgICAgICAgfQogICAgfSksCiAgICDmkJzntKI6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgbGV0IF91cmwgPSBydWxlLnJvb3Q7CiAgICAgICAgbGV0IHdkID0gS0VZOwogICAgICAgIGxldCBzcWwgPSAic2VsZWN0IG51bWJlcixuYW1lIGZyb20gc29uZyB3aGVyZSBuYW1lIGxpa2UgJyUiICsgd2QgKyAiJScgb3Igc2luZ2VyX25hbWVzIGxpa2UgJyUiICsgd2QgKyAiJSciOwogICAgICAgIGxldCBkID0gW107CiAgICAgICAgbGV0IGh0bWwgPSBwb3N0MihfdXJsLCB7c3FsOiBzcWx9KTsKICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgZCA9IGpzb24ucmVzdWx0WzBdLnJlc3VsdHMubWFwKGl0ZW0gPT4gewogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgdm9kX2lkOiBydWxlLm1rdHZVcmwgKyBpdGVtLm51bWJlciArICcubWt2JyArICdAQCcgKyBpdGVtLm5hbWUgKyAnQEAnICsgJycsCiAgICAgICAgICAgICAgICB2b2RfbmFtZTogaXRlbS5uYW1lLAogICAgICAgICAgICAgICAgdm9kX3BpYzogcnVsZS5waWMsCiAgICAgICAgICAgICAgICB2b2RfcmVtYXJrczogaXRlbS5zaW5nZXJfbmFtZXMsCiAgICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgICBWT0RTID0gZDsKICAgIH0pLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgaW5wdXQgPSB7cGFyc2U6IDAsIHVybDogaW5wdXR9OwogICAgfSksCn0= \ No newline at end of file